From 207f6d2044c4a91b3d2cc5dd08a473524d3e59a9 Mon Sep 17 00:00:00 2001 From: hilezir Date: Fri, 19 Jun 2020 10:58:17 +0800 Subject: [PATCH] Release v0.15.0 --- package.json | 2 +- src_dist/etoro.bundle.js | 44 +++++++++++++++++++++++++++++++--------- 2 files changed, 35 insertions(+), 11 deletions(-) diff --git a/package.json b/package.json index e81b1b0..827525d 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "tampermonkey-etoro-better-ui", - "version": "0.14.0", + "version": "0.15.0", "description": "", "main": "index.js", "scripts": { diff --git a/src_dist/etoro.bundle.js b/src_dist/etoro.bundle.js index 5bd5116..15d56ef 100644 --- a/src_dist/etoro.bundle.js +++ b/src_dist/etoro.bundle.js @@ -5,7 +5,7 @@ * // ==UserScript== * // @name Better etoro UI for Taiwan * // @description 提供你更好的 etoro 新台幣介面增強懶人包 - * // @version 0.14.0 + * // @version 0.15.0 * // @author hilezir * // @grant GM_xmlhttpRequest * // @grant GM_addStyle @@ -31,7 +31,7 @@ * * window.GM_xmlhttpRequest({ * // url: 'http://127.0.0.1:8080/etoro.bundle.js', // 開發模式 - * url: 'https://cdn.jsdelivr.net/gh/hilezir/etoro-better-ui@v0.14.0/src_dist/etoro.bundle.js', + * url: 'https://cdn.jsdelivr.net/gh/hilezir/etoro-better-ui@v0.15.0/src_dist/etoro.bundle.js', * onload: event => { * eval(event.responseText) * }, @@ -14196,6 +14196,18 @@ eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export (binding) * /***/ }), +/***/ "./src/actions/fetchExtraCurrency.ts": +/*!*******************************************!*\ + !*** ./src/actions/fetchExtraCurrency.ts ***! + \*******************************************/ +/*! exports provided: fetchExtraCurrency */ +/***/ (function(module, __webpack_exports__, __webpack_require__) { + +"use strict"; +eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"fetchExtraCurrency\", function() { return fetchExtraCurrency; });\n/* harmony import */ var _reduxjs_toolkit__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @reduxjs/toolkit */ \"./node_modules/@reduxjs/toolkit/dist/index.js\");\n/* harmony import */ var _reduxjs_toolkit__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_reduxjs_toolkit__WEBPACK_IMPORTED_MODULE_0__);\n/* harmony import */ var _exchange__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @/exchange */ \"./src/exchange.ts\");\nfunction asyncGeneratorStep(gen, resolve, reject, _next, _throw, key, arg) { try { var info = gen[key](arg); var value = info.value; } catch (error) { reject(error); return; } if (info.done) { resolve(value); } else { Promise.resolve(value).then(_next, _throw); } }\n\nfunction _asyncToGenerator(fn) { return function () { var self = this, args = arguments; return new Promise(function (resolve, reject) { var gen = fn.apply(self, args); function _next(value) { asyncGeneratorStep(gen, resolve, reject, _next, _throw, \"next\", value); } function _throw(err) { asyncGeneratorStep(gen, resolve, reject, _next, _throw, \"throw\", err); } _next(undefined); }); }; }\n\n\n\nvar fetchExtraCurrency = Object(_reduxjs_toolkit__WEBPACK_IMPORTED_MODULE_0__[\"createAsyncThunk\"])('fetchExtraCurrency', /*#__PURE__*/function () {\n var _fetchExtraCurrencyThunk = _asyncToGenerator( /*#__PURE__*/regeneratorRuntime.mark(function _callee(props, thunkAPI) {\n return regeneratorRuntime.wrap(function _callee$(_context) {\n while (1) {\n switch (_context.prev = _context.next) {\n case 0:\n _context.next = 2;\n return Promise.all([Object(_exchange__WEBPACK_IMPORTED_MODULE_1__[\"getNTD\"])(), Object(_exchange__WEBPACK_IMPORTED_MODULE_1__[\"getMYR\"])()]).then(function (gets) {\n var ntd = gets[0];\n var myr = gets[1];\n var exchange = {\n NTD: ntd,\n MYR: myr\n };\n return exchange;\n });\n\n case 2:\n return _context.abrupt(\"return\", _context.sent);\n\n case 3:\n case \"end\":\n return _context.stop();\n }\n }\n }, _callee);\n }));\n\n function fetchExtraCurrencyThunk(_x, _x2) {\n return _fetchExtraCurrencyThunk.apply(this, arguments);\n }\n\n return fetchExtraCurrencyThunk;\n}());//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiLi9zcmMvYWN0aW9ucy9mZXRjaEV4dHJhQ3VycmVuY3kudHMuanMiLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly8vLi9zcmMvYWN0aW9ucy9mZXRjaEV4dHJhQ3VycmVuY3kudHM/OTkzYyJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBjcmVhdGVBc3luY1RodW5rIH0gZnJvbSAnQHJlZHV4anMvdG9vbGtpdCdcbmltcG9ydCB7IGdldE5URCwgZ2V0TVlSIH0gZnJvbSAnQC9leGNoYW5nZSdcbmltcG9ydCB7IGVtaXR0ZXIsIEV2ZW50cyB9IGZyb20gJ0AvZW1pdHRlcidcbmltcG9ydCB7IHN0b3JhZ2UgfSBmcm9tICdAL3N0b3JhZ2UnXG5pbXBvcnQgc3RvcmUgZnJvbSAnQC9zdG9yZS9fc3RvcmUnXG5cbmV4cG9ydCBjb25zdCBmZXRjaEV4dHJhQ3VycmVuY3kgPSBjcmVhdGVBc3luY1RodW5rPHtcbiAgTVlSOiB7XG4gICAgYnV5OiBudW1iZXJcbiAgICBzZWxsOiBudW1iZXJcbiAgfVxuICBOVEQ6IHtcbiAgICBidXk6IG51bWJlclxuICAgIHNlbGw6IG51bWJlclxuICB9XG59PignZmV0Y2hFeHRyYUN1cnJlbmN5JywgYXN5bmMgZnVuY3Rpb24gZmV0Y2hFeHRyYUN1cnJlbmN5VGh1bmsoXG4gIHByb3BzLFxuICB0aHVua0FQSSxcbikge1xuICByZXR1cm4gYXdhaXQgUHJvbWlzZS5hbGwoW2dldE5URCgpLCBnZXRNWVIoKV0pLnRoZW4oZ2V0cyA9PiB7XG4gICAgY29uc3QgbnRkID0gZ2V0c1swXVxuICAgIGNvbnN0IG15ciA9IGdldHNbMV1cblxuICAgIGNvbnN0IGV4Y2hhbmdlID0ge1xuICAgICAgTlREOiBudGQsXG4gICAgICBNWVI6IG15cixcbiAgICB9XG5cbiAgICByZXR1cm4gZXhjaGFuZ2VcbiAgfSlcbn0pXG4iXSwibWFwcGluZ3MiOiI7Ozs7Ozs7OztBQUFBO0FBQ0E7QUFLQTtBQUFBO0FBU0E7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBS0E7QUFDQTtBQUVBO0FBQ0E7QUFDQTtBQUZBO0FBS0E7QUFDQTtBQUNBO0FBZkE7QUFBQTtBQUNBO0FBREE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFDQTtBQVZBO0FBQUE7QUFBQTtBQUNBO0FBREE7QUFBQSIsInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///./src/actions/fetchExtraCurrency.ts\n"); + +/***/ }), + /***/ "./src/actions/setBetterEtoroUIConfig.ts": /*!***********************************************!*\ !*** ./src/actions/setBetterEtoroUIConfig.ts ***! @@ -14300,7 +14312,7 @@ eval("__webpack_require__.r(__webpack_exports__);\n/* harmony import */ var reac /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; -eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"renderFooterUnitValues\", function() { return renderFooterUnitValues; });\n/* harmony import */ var _debugAPI__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @/debugAPI */ \"./src/debugAPI.ts\");\n/* harmony import */ var _storage__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @/storage */ \"./src/storage.ts\");\n/* harmony import */ var _exchange__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! @/exchange */ \"./src/exchange.ts\");\n/* harmony import */ var _toCurrency__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! @/toCurrency */ \"./src/toCurrency.ts\");\nfunction _typeof(obj) { \"@babel/helpers - typeof\"; if (typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\") { _typeof = function _typeof(obj) { return typeof obj; }; } else { _typeof = function _typeof(obj) { return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj; }; } return _typeof(obj); }\n\nfunction _wrapRegExp(re, groups) { _wrapRegExp = function _wrapRegExp(re, groups) { return new BabelRegExp(re, undefined, groups); }; var _RegExp = _wrapNativeSuper(RegExp); var _super = RegExp.prototype; var _groups = new WeakMap(); function BabelRegExp(re, flags, groups) { var _this = _RegExp.call(this, re, flags); _groups.set(_this, groups || _groups.get(re)); return _this; } _inherits(BabelRegExp, _RegExp); BabelRegExp.prototype.exec = function (str) { var result = _super.exec.call(this, str); if (result) result.groups = buildGroups(result, this); return result; }; BabelRegExp.prototype[Symbol.replace] = function (str, substitution) { if (typeof substitution === \"string\") { var groups = _groups.get(this); return _super[Symbol.replace].call(this, str, substitution.replace(/\\$<([^>]+)>/g, function (_, name) { return \"$\" + groups[name]; })); } else if (typeof substitution === \"function\") { var _this = this; return _super[Symbol.replace].call(this, str, function () { var args = []; args.push.apply(args, arguments); if (_typeof(args[args.length - 1]) !== \"object\") { args.push(buildGroups(args, _this)); } return substitution.apply(this, args); }); } else { return _super[Symbol.replace].call(this, str, substitution); } }; function buildGroups(result, re) { var g = _groups.get(re); return Object.keys(g).reduce(function (groups, name) { groups[name] = result[g[name]]; return groups; }, Object.create(null)); } return _wrapRegExp.apply(this, arguments); }\n\nfunction _inherits(subClass, superClass) { if (typeof superClass !== \"function\" && superClass !== null) { throw new TypeError(\"Super expression must either be null or a function\"); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, writable: true, configurable: true } }); if (superClass) _setPrototypeOf(subClass, superClass); }\n\nfunction _possibleConstructorReturn(self, call) { if (call && (_typeof(call) === \"object\" || typeof call === \"function\")) { return call; } return _assertThisInitialized(self); }\n\nfunction _assertThisInitialized(self) { if (self === void 0) { throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\"); } return self; }\n\nfunction _wrapNativeSuper(Class) { var _cache = typeof Map === \"function\" ? new Map() : undefined; _wrapNativeSuper = function _wrapNativeSuper(Class) { if (Class === null || !_isNativeFunction(Class)) return Class; if (typeof Class !== \"function\") { throw new TypeError(\"Super expression must either be null or a function\"); } if (typeof _cache !== \"undefined\") { if (_cache.has(Class)) return _cache.get(Class); _cache.set(Class, Wrapper); } function Wrapper() { return _construct(Class, arguments, _getPrototypeOf(this).constructor); } Wrapper.prototype = Object.create(Class.prototype, { constructor: { value: Wrapper, enumerable: false, writable: true, configurable: true } }); return _setPrototypeOf(Wrapper, Class); }; return _wrapNativeSuper(Class); }\n\nfunction _construct(Parent, args, Class) { if (_isNativeReflectConstruct()) { _construct = Reflect.construct; } else { _construct = function _construct(Parent, args, Class) { var a = [null]; a.push.apply(a, args); var Constructor = Function.bind.apply(Parent, a); var instance = new Constructor(); if (Class) _setPrototypeOf(instance, Class.prototype); return instance; }; } return _construct.apply(null, arguments); }\n\nfunction _isNativeReflectConstruct() { if (typeof Reflect === \"undefined\" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === \"function\") return true; try { Date.prototype.toString.call(Reflect.construct(Date, [], function () {})); return true; } catch (e) { return false; } }\n\nfunction _isNativeFunction(fn) { return Function.toString.call(fn).indexOf(\"[native code]\") !== -1; }\n\nfunction _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); }\n\nfunction _getPrototypeOf(o) { _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; return _getPrototypeOf(o); }\n\n\n\n\n\nvar renderFooterUnitValues = function renderFooterUnitValues() {\n var log = _debugAPI__WEBPACK_IMPORTED_MODULE_0__[\"debugAPI\"].log.extend(\"\\u63D0\\u4F9B\\u5E95\\u90E8\\u50F9\\u503C\\u7684\\u532F\\u7387\");\n log('處理中...');\n var exchangeSelected = _storage__WEBPACK_IMPORTED_MODULE_1__[\"storage\"].findConfig().selectedExchange;\n var unitValues = Array.from(document.querySelectorAll('.footer-unit-value'));\n unitValues.forEach(function (element) {\n var twdBox;\n twdBox = $(element).parent().find('.footer-unit-value-exchange');\n\n if (!twdBox.length) {\n $(element).prepend().append(\"\");\n }\n\n twdBox = $(element).parent().find('.footer-unit-value-exchange');\n\n if (twdBox.length) {\n var _$exec, _$exec$groups;\n\n var USD = Number(((_$exec = /*#__PURE__*/_wrapRegExp(/\\$([,\\.0-9]+)?/, {\n USD: 1\n }).exec(element.innerHTML)) === null || _$exec === void 0 ? void 0 : (_$exec$groups = _$exec.groups) === null || _$exec$groups === void 0 ? void 0 : _$exec$groups.USD.replace(/,/g, '')) || 0);\n var currencyValue = USD * _exchange__WEBPACK_IMPORTED_MODULE_2__[\"exchange\"][exchangeSelected].buy;\n var displayCurrency = exchangeSelected === 'MYR' ? Object(_toCurrency__WEBPACK_IMPORTED_MODULE_3__[\"toCurrency\"])(currencyValue) : Object(_toCurrency__WEBPACK_IMPORTED_MODULE_3__[\"toCurrency\"])(Math.ceil(currencyValue));\n\n if (displayCurrency[1]) {\n twdBox.html(\"\".concat(exchangeSelected, \" \").concat(displayCurrency[0], \".\").concat(displayCurrency[1], \"\"));\n } else {\n twdBox.html(\"\".concat(exchangeSelected, \" \").concat(displayCurrency[0], \"\"));\n }\n }\n });\n};//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiLi9zcmMvY29tcG9uZW50cy9Gb290ZXIvRm9vdGVyVW5pdFZhbHVlcy50cy5qcyIsInNvdXJjZXMiOlsid2VicGFjazovLy8uL3NyYy9jb21wb25lbnRzL0Zvb3Rlci9Gb290ZXJVbml0VmFsdWVzLnRzP2Y0M2IiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgZGVidWdBUEkgfSBmcm9tICdAL2RlYnVnQVBJJ1xuaW1wb3J0IHsgc3RvcmFnZSB9IGZyb20gJ0Avc3RvcmFnZSdcbmltcG9ydCB7IGV4Y2hhbmdlIH0gZnJvbSAnQC9leGNoYW5nZSdcbmltcG9ydCB7IHRvQ3VycmVuY3kgfSBmcm9tICdAL3RvQ3VycmVuY3knXG5cbmV4cG9ydCBjb25zdCByZW5kZXJGb290ZXJVbml0VmFsdWVzID0gKCkgPT4ge1xuICBjb25zdCBsb2cgPSBkZWJ1Z0FQSS5sb2cuZXh0ZW5kKGDmj5DkvpvlupXpg6jlg7nlgLznmoTljK/njodgKVxuXG4gIGxvZygn6JmV55CG5LitLi4uJylcbiAgY29uc3QgZXhjaGFuZ2VTZWxlY3RlZCA9IHN0b3JhZ2UuZmluZENvbmZpZygpLnNlbGVjdGVkRXhjaGFuZ2VcblxuICBjb25zdCB1bml0VmFsdWVzID0gQXJyYXkuZnJvbShkb2N1bWVudC5xdWVyeVNlbGVjdG9yQWxsKCcuZm9vdGVyLXVuaXQtdmFsdWUnKSlcblxuICB1bml0VmFsdWVzLmZvckVhY2goZWxlbWVudCA9PiB7XG4gICAgbGV0IHR3ZEJveDogSlF1ZXJ5PEhUTUxTcGFuRWxlbWVudD5cblxuICAgIHR3ZEJveCA9ICQoZWxlbWVudCkucGFyZW50KCkuZmluZCgnLmZvb3Rlci11bml0LXZhbHVlLWV4Y2hhbmdlJykgYXMgSlF1ZXJ5PFxuICAgICAgSFRNTFNwYW5FbGVtZW50XG4gICAgPlxuXG4gICAgaWYgKCF0d2RCb3gubGVuZ3RoKSB7XG4gICAgICAkKGVsZW1lbnQpXG4gICAgICAgIC5wcmVwZW5kKClcbiAgICAgICAgLmFwcGVuZChgPHNwYW4gY2xhc3M9J2Zvb3Rlci11bml0LXZhbHVlLWV4Y2hhbmdlJz48L3NwYW4+YClcbiAgICB9XG5cbiAgICB0d2RCb3ggPSAkKGVsZW1lbnQpLnBhcmVudCgpLmZpbmQoJy5mb290ZXItdW5pdC12YWx1ZS1leGNoYW5nZScpIGFzIEpRdWVyeTxcbiAgICAgIEhUTUxTcGFuRWxlbWVudFxuICAgID5cblxuICAgIGlmICh0d2RCb3gubGVuZ3RoKSB7XG4gICAgICBjb25zdCBVU0QgPSBOdW1iZXIoXG4gICAgICAgIC9cXCQoPzxVU0Q+W1xcZCwuXSspPy9cbiAgICAgICAgICAuZXhlYyhlbGVtZW50LmlubmVySFRNTClcbiAgICAgICAgICA/Lmdyb3Vwcz8uVVNELnJlcGxhY2UoLywvZywgJycpIHx8IDAsXG4gICAgICApXG5cbiAgICAgIGNvbnN0IGN1cnJlbmN5VmFsdWUgPSBVU0QgKiBleGNoYW5nZVtleGNoYW5nZVNlbGVjdGVkXS5idXlcbiAgICAgIGNvbnN0IGRpc3BsYXlDdXJyZW5jeSA9XG4gICAgICAgIGV4Y2hhbmdlU2VsZWN0ZWQgPT09ICdNWVInXG4gICAgICAgICAgPyB0b0N1cnJlbmN5KGN1cnJlbmN5VmFsdWUpXG4gICAgICAgICAgOiB0b0N1cnJlbmN5KE1hdGguY2VpbChjdXJyZW5jeVZhbHVlKSlcblxuICAgICAgaWYgKGRpc3BsYXlDdXJyZW5jeVsxXSkge1xuICAgICAgICB0d2RCb3guaHRtbChcbiAgICAgICAgICBgJHtleGNoYW5nZVNlbGVjdGVkfSA8c3BhbiBjbGFzcz1cImZvb3Rlci11bml0LXZhbHVlLWV4Y2hhbmdlLW1haW5cIj4ke2Rpc3BsYXlDdXJyZW5jeVswXX08L3NwYW4+LjxzcGFuIGNsYXNzPVwiZm9vdGVyLXVuaXQtdmFsdWUtZXhjaGFuZ2Utc21hbGxcIj4ke2Rpc3BsYXlDdXJyZW5jeVsxXX08L3NwYW4+YCxcbiAgICAgICAgKVxuICAgICAgfSBlbHNlIHtcbiAgICAgICAgdHdkQm94Lmh0bWwoXG4gICAgICAgICAgYCR7ZXhjaGFuZ2VTZWxlY3RlZH0gPHNwYW4gY2xhc3M9XCJmb290ZXItdW5pdC12YWx1ZS1leGNoYW5nZS1tYWluXCI+JHtkaXNwbGF5Q3VycmVuY3lbMF19PC9zcGFuPmAsXG4gICAgICAgIClcbiAgICAgIH1cbiAgICB9XG4gIH0pXG59XG4iXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFBQTtBQUNBO0FBQ0E7QUFDQTtBQUVBO0FBQ0E7QUFFQTtBQUNBO0FBRUE7QUFFQTtBQUNBO0FBRUE7QUFDQTtBQUdBO0FBQ0E7QUFHQTtBQUNBO0FBQ0E7QUFDQTtBQUdBO0FBQUE7QUFDQTtBQUFBO0FBQ0E7QUFBQTtBQUtBO0FBQ0E7QUFDQTtBQUlBO0FBQ0E7QUFHQTtBQUNBO0FBR0E7QUFDQTtBQUNBO0FBQ0EiLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///./src/components/Footer/FooterUnitValues.ts\n"); +eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"renderFooterUnitValues\", function() { return renderFooterUnitValues; });\n/* harmony import */ var _debugAPI__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @/debugAPI */ \"./src/debugAPI.ts\");\n/* harmony import */ var _storage__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @/storage */ \"./src/storage.ts\");\n/* harmony import */ var _exchange__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! @/exchange */ \"./src/exchange.ts\");\n/* harmony import */ var _toCurrency__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! @/toCurrency */ \"./src/toCurrency.ts\");\nfunction _typeof(obj) { \"@babel/helpers - typeof\"; if (typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\") { _typeof = function _typeof(obj) { return typeof obj; }; } else { _typeof = function _typeof(obj) { return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj; }; } return _typeof(obj); }\n\nfunction _wrapRegExp(re, groups) { _wrapRegExp = function _wrapRegExp(re, groups) { return new BabelRegExp(re, undefined, groups); }; var _RegExp = _wrapNativeSuper(RegExp); var _super = RegExp.prototype; var _groups = new WeakMap(); function BabelRegExp(re, flags, groups) { var _this = _RegExp.call(this, re, flags); _groups.set(_this, groups || _groups.get(re)); return _this; } _inherits(BabelRegExp, _RegExp); BabelRegExp.prototype.exec = function (str) { var result = _super.exec.call(this, str); if (result) result.groups = buildGroups(result, this); return result; }; BabelRegExp.prototype[Symbol.replace] = function (str, substitution) { if (typeof substitution === \"string\") { var groups = _groups.get(this); return _super[Symbol.replace].call(this, str, substitution.replace(/\\$<([^>]+)>/g, function (_, name) { return \"$\" + groups[name]; })); } else if (typeof substitution === \"function\") { var _this = this; return _super[Symbol.replace].call(this, str, function () { var args = []; args.push.apply(args, arguments); if (_typeof(args[args.length - 1]) !== \"object\") { args.push(buildGroups(args, _this)); } return substitution.apply(this, args); }); } else { return _super[Symbol.replace].call(this, str, substitution); } }; function buildGroups(result, re) { var g = _groups.get(re); return Object.keys(g).reduce(function (groups, name) { groups[name] = result[g[name]]; return groups; }, Object.create(null)); } return _wrapRegExp.apply(this, arguments); }\n\nfunction _inherits(subClass, superClass) { if (typeof superClass !== \"function\" && superClass !== null) { throw new TypeError(\"Super expression must either be null or a function\"); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, writable: true, configurable: true } }); if (superClass) _setPrototypeOf(subClass, superClass); }\n\nfunction _possibleConstructorReturn(self, call) { if (call && (_typeof(call) === \"object\" || typeof call === \"function\")) { return call; } return _assertThisInitialized(self); }\n\nfunction _assertThisInitialized(self) { if (self === void 0) { throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\"); } return self; }\n\nfunction _wrapNativeSuper(Class) { var _cache = typeof Map === \"function\" ? new Map() : undefined; _wrapNativeSuper = function _wrapNativeSuper(Class) { if (Class === null || !_isNativeFunction(Class)) return Class; if (typeof Class !== \"function\") { throw new TypeError(\"Super expression must either be null or a function\"); } if (typeof _cache !== \"undefined\") { if (_cache.has(Class)) return _cache.get(Class); _cache.set(Class, Wrapper); } function Wrapper() { return _construct(Class, arguments, _getPrototypeOf(this).constructor); } Wrapper.prototype = Object.create(Class.prototype, { constructor: { value: Wrapper, enumerable: false, writable: true, configurable: true } }); return _setPrototypeOf(Wrapper, Class); }; return _wrapNativeSuper(Class); }\n\nfunction _construct(Parent, args, Class) { if (_isNativeReflectConstruct()) { _construct = Reflect.construct; } else { _construct = function _construct(Parent, args, Class) { var a = [null]; a.push.apply(a, args); var Constructor = Function.bind.apply(Parent, a); var instance = new Constructor(); if (Class) _setPrototypeOf(instance, Class.prototype); return instance; }; } return _construct.apply(null, arguments); }\n\nfunction _isNativeReflectConstruct() { if (typeof Reflect === \"undefined\" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === \"function\") return true; try { Date.prototype.toString.call(Reflect.construct(Date, [], function () {})); return true; } catch (e) { return false; } }\n\nfunction _isNativeFunction(fn) { return Function.toString.call(fn).indexOf(\"[native code]\") !== -1; }\n\nfunction _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); }\n\nfunction _getPrototypeOf(o) { _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; return _getPrototypeOf(o); }\n\n\n\n\n\nvar renderFooterUnitValues = function renderFooterUnitValues() {\n var log = _debugAPI__WEBPACK_IMPORTED_MODULE_0__[\"debugAPI\"].log.extend(\"\\u63D0\\u4F9B\\u5E95\\u90E8\\u50F9\\u503C\\u7684\\u532F\\u7387\");\n log('處理中...');\n var exchangeSelected = _storage__WEBPACK_IMPORTED_MODULE_1__[\"storage\"].findConfig().selectedExchange;\n var unitValues = Array.from(document.querySelectorAll(\"\\n .footer-unit-value,\\n [data-etoro-automation-id=\\\"detailed-view-header-details-profit-value\\\"]\\n \"));\n unitValues.forEach(function (element) {\n var twdBox;\n twdBox = $(element).parent().find('.footer-unit-value-exchange');\n\n if (!twdBox.length) {\n $(element).prepend().append(\"\");\n }\n\n twdBox = $(element).parent().find('.footer-unit-value-exchange');\n\n if (twdBox.length) {\n var _$exec, _$exec$groups;\n\n var USD = Number(((_$exec = /*#__PURE__*/_wrapRegExp(/\\$([,\\.0-9]+)?/, {\n USD: 1\n }).exec(element.innerHTML)) === null || _$exec === void 0 ? void 0 : (_$exec$groups = _$exec.groups) === null || _$exec$groups === void 0 ? void 0 : _$exec$groups.USD.replace(/,/g, '')) || 0);\n var currencyValue = USD * _exchange__WEBPACK_IMPORTED_MODULE_2__[\"exchange\"][exchangeSelected].buy;\n var displayCurrency = exchangeSelected === 'MYR' ? Object(_toCurrency__WEBPACK_IMPORTED_MODULE_3__[\"toCurrency\"])(currencyValue) : Object(_toCurrency__WEBPACK_IMPORTED_MODULE_3__[\"toCurrency\"])(Math.ceil(currencyValue));\n\n if (displayCurrency[1]) {\n twdBox.html(\"\".concat(exchangeSelected, \" \").concat(displayCurrency[0], \".\").concat(displayCurrency[1], \"\"));\n } else {\n twdBox.html(\"\".concat(exchangeSelected, \" \").concat(displayCurrency[0], \"\"));\n }\n }\n });\n};//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiLi9zcmMvY29tcG9uZW50cy9Gb290ZXIvRm9vdGVyVW5pdFZhbHVlcy50cy5qcyIsInNvdXJjZXMiOlsid2VicGFjazovLy8uL3NyYy9jb21wb25lbnRzL0Zvb3Rlci9Gb290ZXJVbml0VmFsdWVzLnRzP2Y0M2IiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgZGVidWdBUEkgfSBmcm9tICdAL2RlYnVnQVBJJ1xuaW1wb3J0IHsgc3RvcmFnZSB9IGZyb20gJ0Avc3RvcmFnZSdcbmltcG9ydCB7IGV4Y2hhbmdlIH0gZnJvbSAnQC9leGNoYW5nZSdcbmltcG9ydCB7IHRvQ3VycmVuY3kgfSBmcm9tICdAL3RvQ3VycmVuY3knXG5cbmV4cG9ydCBjb25zdCByZW5kZXJGb290ZXJVbml0VmFsdWVzID0gKCkgPT4ge1xuICBjb25zdCBsb2cgPSBkZWJ1Z0FQSS5sb2cuZXh0ZW5kKGDmj5DkvpvlupXpg6jlg7nlgLznmoTljK/njodgKVxuXG4gIGxvZygn6JmV55CG5LitLi4uJylcbiAgY29uc3QgZXhjaGFuZ2VTZWxlY3RlZCA9IHN0b3JhZ2UuZmluZENvbmZpZygpLnNlbGVjdGVkRXhjaGFuZ2VcblxuICBjb25zdCB1bml0VmFsdWVzID0gQXJyYXkuZnJvbShcbiAgICBkb2N1bWVudC5xdWVyeVNlbGVjdG9yQWxsKFxuICAgICAgYFxuICAgICAgICAuZm9vdGVyLXVuaXQtdmFsdWUsXG4gICAgICAgIFtkYXRhLWV0b3JvLWF1dG9tYXRpb24taWQ9XCJkZXRhaWxlZC12aWV3LWhlYWRlci1kZXRhaWxzLXByb2ZpdC12YWx1ZVwiXVxuICAgICAgYCxcbiAgICApLFxuICApXG5cbiAgdW5pdFZhbHVlcy5mb3JFYWNoKGVsZW1lbnQgPT4ge1xuICAgIGxldCB0d2RCb3g6IEpRdWVyeTxIVE1MU3BhbkVsZW1lbnQ+XG5cbiAgICB0d2RCb3ggPSAkKGVsZW1lbnQpLnBhcmVudCgpLmZpbmQoJy5mb290ZXItdW5pdC12YWx1ZS1leGNoYW5nZScpIGFzIEpRdWVyeTxcbiAgICAgIEhUTUxTcGFuRWxlbWVudFxuICAgID5cblxuICAgIGlmICghdHdkQm94Lmxlbmd0aCkge1xuICAgICAgJChlbGVtZW50KVxuICAgICAgICAucHJlcGVuZCgpXG4gICAgICAgIC5hcHBlbmQoYDxzcGFuIGNsYXNzPSdmb290ZXItdW5pdC12YWx1ZS1leGNoYW5nZSc+PC9zcGFuPmApXG4gICAgfVxuXG4gICAgdHdkQm94ID0gJChlbGVtZW50KS5wYXJlbnQoKS5maW5kKCcuZm9vdGVyLXVuaXQtdmFsdWUtZXhjaGFuZ2UnKSBhcyBKUXVlcnk8XG4gICAgICBIVE1MU3BhbkVsZW1lbnRcbiAgICA+XG5cbiAgICBpZiAodHdkQm94Lmxlbmd0aCkge1xuICAgICAgY29uc3QgVVNEID0gTnVtYmVyKFxuICAgICAgICAvXFwkKD88VVNEPltcXGQsLl0rKT8vXG4gICAgICAgICAgLmV4ZWMoZWxlbWVudC5pbm5lckhUTUwpXG4gICAgICAgICAgPy5ncm91cHM/LlVTRC5yZXBsYWNlKC8sL2csICcnKSB8fCAwLFxuICAgICAgKVxuXG4gICAgICBjb25zdCBjdXJyZW5jeVZhbHVlID0gVVNEICogZXhjaGFuZ2VbZXhjaGFuZ2VTZWxlY3RlZF0uYnV5XG4gICAgICBjb25zdCBkaXNwbGF5Q3VycmVuY3kgPVxuICAgICAgICBleGNoYW5nZVNlbGVjdGVkID09PSAnTVlSJ1xuICAgICAgICAgID8gdG9DdXJyZW5jeShjdXJyZW5jeVZhbHVlKVxuICAgICAgICAgIDogdG9DdXJyZW5jeShNYXRoLmNlaWwoY3VycmVuY3lWYWx1ZSkpXG5cbiAgICAgIGlmIChkaXNwbGF5Q3VycmVuY3lbMV0pIHtcbiAgICAgICAgdHdkQm94Lmh0bWwoXG4gICAgICAgICAgYCR7ZXhjaGFuZ2VTZWxlY3RlZH0gPHNwYW4gY2xhc3M9XCJmb290ZXItdW5pdC12YWx1ZS1leGNoYW5nZS1tYWluXCI+JHtkaXNwbGF5Q3VycmVuY3lbMF19PC9zcGFuPi48c3BhbiBjbGFzcz1cImZvb3Rlci11bml0LXZhbHVlLWV4Y2hhbmdlLXNtYWxsXCI+JHtkaXNwbGF5Q3VycmVuY3lbMV19PC9zcGFuPmAsXG4gICAgICAgIClcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIHR3ZEJveC5odG1sKFxuICAgICAgICAgIGAke2V4Y2hhbmdlU2VsZWN0ZWR9IDxzcGFuIGNsYXNzPVwiZm9vdGVyLXVuaXQtdmFsdWUtZXhjaGFuZ2UtbWFpblwiPiR7ZGlzcGxheUN1cnJlbmN5WzBdfTwvc3Bhbj5gLFxuICAgICAgICApXG4gICAgICB9XG4gICAgfVxuICB9KVxufVxuIl0sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBQUE7QUFDQTtBQUNBO0FBQ0E7QUFFQTtBQUNBO0FBRUE7QUFDQTtBQUVBO0FBU0E7QUFDQTtBQUVBO0FBQ0E7QUFHQTtBQUNBO0FBR0E7QUFDQTtBQUNBO0FBQ0E7QUFHQTtBQUFBO0FBQ0E7QUFBQTtBQUNBO0FBQUE7QUFLQTtBQUNBO0FBQ0E7QUFJQTtBQUNBO0FBR0E7QUFDQTtBQUdBO0FBQ0E7QUFDQTtBQUNBIiwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///./src/components/Footer/FooterUnitValues.ts\n"); /***/ }), @@ -14324,7 +14336,19 @@ eval("__webpack_require__.r(__webpack_exports__);\n/* harmony import */ var reac /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; -eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"PortfolioHeaderExtraButtons\", function() { return PortfolioHeaderExtraButtons; });\n/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! react */ \"./node_modules/react/index.js\");\n/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_0__);\n/* harmony import */ var react_dom__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! react-dom */ \"./node_modules/react-dom/index.js\");\n/* harmony import */ var react_dom__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(react_dom__WEBPACK_IMPORTED_MODULE_1__);\n/* harmony import */ var _store_store__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! @/store/_store */ \"./src/store/_store.ts\");\n/* harmony import */ var react_redux__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! react-redux */ \"./node_modules/react-redux/lib/index.js\");\n/* harmony import */ var react_redux__WEBPACK_IMPORTED_MODULE_3___default = /*#__PURE__*/__webpack_require__.n(react_redux__WEBPACK_IMPORTED_MODULE_3__);\n/* harmony import */ var _fluentui_react__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! @fluentui/react */ \"./node_modules/@fluentui/react/lib-commonjs/index.js\");\n/* harmony import */ var _fluentui_react__WEBPACK_IMPORTED_MODULE_4___default = /*#__PURE__*/__webpack_require__.n(_fluentui_react__WEBPACK_IMPORTED_MODULE_4__);\n/* harmony import */ var _i18n__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! @/i18n */ \"./src/i18n.tsx\");\n/* harmony import */ var _GM__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! @/GM */ \"./src/GM.ts\");\nfunction _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest(); }\n\nfunction _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.\"); }\n\nfunction _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); }\n\nfunction _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; }\n\nfunction _iterableToArrayLimit(arr, i) { if (typeof Symbol === \"undefined\" || !(Symbol.iterator in Object(arr))) return; var _arr = []; var _n = true; var _d = false; var _e = undefined; try { for (var _i = arr[Symbol.iterator](), _s; !(_n = (_s = _i.next()).done); _n = true) { _arr.push(_s.value); if (i && _arr.length === i) break; } } catch (err) { _d = true; _e = err; } finally { try { if (!_n && _i[\"return\"] != null) _i[\"return\"](); } finally { if (_d) throw _e; } } return _arr; }\n\nfunction _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }\n\n\n\n\n\n\n\n\nvar ELEMENT_ID = 'portfolio-header-extra-buttons';\n\nvar showMeBy = function showMeBy() {\n var filterText = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : '';\n\n if (filterText) {\n $('.ui-table-row').hide();\n $('.table-first-name, .table-last-name').each(function (index, element) {\n var didMatch = element.innerHTML.trim().toLowerCase().includes(filterText.toLowerCase().trim());\n\n if (didMatch) {\n $(element).closest('.ui-table-row').show();\n }\n });\n } else {\n $('.ui-table-row').show();\n }\n};\n\nvar PortfolioHeaderExtraButtons = function PortfolioHeaderExtraButtons() {\n var _React$useState = react__WEBPACK_IMPORTED_MODULE_0___default.a.useState(''),\n _React$useState2 = _slicedToArray(_React$useState, 2),\n filterText = _React$useState2[0],\n filterTextSet = _React$useState2[1];\n\n var searchBoxRef = react__WEBPACK_IMPORTED_MODULE_0___default.a.createRef();\n return react__WEBPACK_IMPORTED_MODULE_0___default.a.createElement(\"span\", {\n id: ELEMENT_ID\n }, react__WEBPACK_IMPORTED_MODULE_0___default.a.createElement(_fluentui_react__WEBPACK_IMPORTED_MODULE_4__[\"TextField\"], {\n componentRef: searchBoxRef,\n placeholder: _i18n__WEBPACK_IMPORTED_MODULE_5__[\"i18n\"].輸入以過濾(),\n iconProps: {\n iconName: filterText ? 'FilterSolid' : 'Filter'\n },\n onChange: function onChange(event, newValue) {\n filterTextSet(newValue);\n showMeBy(newValue);\n },\n onMouseEnter: function onMouseEnter() {\n // setTimeout 避免 polyfills-es5 報錯 Cannot assign to read only property 'event' of object '[object Object]'\n globalThis.setTimeout(function () {\n var _searchBoxRef$current;\n\n (_searchBoxRef$current = searchBoxRef.current) === null || _searchBoxRef$current === void 0 ? void 0 : _searchBoxRef$current.focus();\n });\n }\n }));\n};\n\nPortfolioHeaderExtraButtons.hasRendered = function () {\n return !!$(\"#\".concat(ELEMENT_ID)).length;\n};\n\nPortfolioHeaderExtraButtons.getContainer = function () {\n return $(\"#\".concat(ELEMENT_ID, \"-container\"));\n};\n\nPortfolioHeaderExtraButtons.render = function () {\n if (PortfolioHeaderExtraButtons.hasRendered()) {\n return;\n }\n\n var containerLocation = $('.p-portfolio-header .inner-header');\n\n if (containerLocation.length && !PortfolioHeaderExtraButtons.getContainer().length) {\n $(\"\")).appendTo(containerLocation);\n }\n\n $(\"#\".concat(ELEMENT_ID, \"-container\")).length && react_dom__WEBPACK_IMPORTED_MODULE_1___default.a.render(react__WEBPACK_IMPORTED_MODULE_0___default.a.createElement(react_redux__WEBPACK_IMPORTED_MODULE_3__[\"Provider\"], {\n store: _store_store__WEBPACK_IMPORTED_MODULE_2__[\"default\"]\n }, react__WEBPACK_IMPORTED_MODULE_0___default.a.createElement(PortfolioHeaderExtraButtons, null)), $(\"#\".concat(ELEMENT_ID, \"-container\")).html('').get(0));\n};\n\n_GM__WEBPACK_IMPORTED_MODULE_6__[\"GM\"].addStyle(\"\\n #\".concat(ELEMENT_ID, \" {\\n display: inline-block;\\n margin-left: 16px;\\n margin-top: 12px;\\n }\\n\"));//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiLi9zcmMvY29tcG9uZW50cy9Qb3J0Zm9saW8vUG9ydGZvbGlvSGVhZGVyRXh0cmFCdXR0b25zLnRzeC5qcyIsInNvdXJjZXMiOlsid2VicGFjazovLy8uL3NyYy9jb21wb25lbnRzL1BvcnRmb2xpby9Qb3J0Zm9saW9IZWFkZXJFeHRyYUJ1dHRvbnMudHN4P2NiMjQiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IFJlYWN0IGZyb20gJ3JlYWN0J1xuaW1wb3J0IFJlYWN0RG9tIGZyb20gJ3JlYWN0LWRvbSdcbmltcG9ydCBzdG9yZSBmcm9tICdAL3N0b3JlL19zdG9yZSdcbmltcG9ydCB7IFByb3ZpZGVyIH0gZnJvbSAncmVhY3QtcmVkdXgnXG5pbXBvcnQgeyBTZWFyY2hCb3gsIFRleHRGaWVsZCwgVGV4dEZpZWxkQmFzZSB9IGZyb20gJ0BmbHVlbnR1aS9yZWFjdCdcbmltcG9ydCB7IGkxOG4gfSBmcm9tICdAL2kxOG4nXG5pbXBvcnQgeyBkZWJ1Z0FQSSB9IGZyb20gJ0AvZGVidWdBUEknXG5pbXBvcnQgeyBHTSB9IGZyb20gJ0AvR00nXG5pbXBvcnQgeyB0aHJvdHRsZSB9IGZyb20gJ2xvZGFzaCdcblxuY29uc3QgRUxFTUVOVF9JRCA9ICdwb3J0Zm9saW8taGVhZGVyLWV4dHJhLWJ1dHRvbnMnXG5cbmNvbnN0IHNob3dNZUJ5ID0gKGZpbHRlclRleHQgPSAnJykgPT4ge1xuICBpZiAoZmlsdGVyVGV4dCkge1xuICAgICQoJy51aS10YWJsZS1yb3cnKS5oaWRlKClcblxuICAgICQoJy50YWJsZS1maXJzdC1uYW1lLCAudGFibGUtbGFzdC1uYW1lJykuZWFjaCgoaW5kZXgsIGVsZW1lbnQpID0+IHtcbiAgICAgIGNvbnN0IGRpZE1hdGNoID0gZWxlbWVudC5pbm5lckhUTUxcbiAgICAgICAgLnRyaW0oKVxuICAgICAgICAudG9Mb3dlckNhc2UoKVxuICAgICAgICAuaW5jbHVkZXMoZmlsdGVyVGV4dC50b0xvd2VyQ2FzZSgpLnRyaW0oKSlcblxuICAgICAgaWYgKGRpZE1hdGNoKSB7XG4gICAgICAgICQoZWxlbWVudCkuY2xvc2VzdCgnLnVpLXRhYmxlLXJvdycpLnNob3coKVxuICAgICAgfVxuICAgIH0pXG4gIH0gZWxzZSB7XG4gICAgJCgnLnVpLXRhYmxlLXJvdycpLnNob3coKVxuICB9XG59XG5cbmV4cG9ydCBjb25zdCBQb3J0Zm9saW9IZWFkZXJFeHRyYUJ1dHRvbnMgPSAoKSA9PiB7XG4gIGNvbnN0IFtmaWx0ZXJUZXh0LCBmaWx0ZXJUZXh0U2V0XSA9IFJlYWN0LnVzZVN0YXRlPHN0cmluZyB8IHVuZGVmaW5lZD4oJycpXG4gIGNvbnN0IHNlYXJjaEJveFJlZiA9IFJlYWN0LmNyZWF0ZVJlZjxUZXh0RmllbGRCYXNlPigpXG5cbiAgcmV0dXJuIChcbiAgICA8c3BhbiBpZD17RUxFTUVOVF9JRH0+XG4gICAgICA8VGV4dEZpZWxkXG4gICAgICAgIGNvbXBvbmVudFJlZj17c2VhcmNoQm94UmVmfVxuICAgICAgICBwbGFjZWhvbGRlcj17aTE4bi7ovLjlhaXku6XpgY7mv74oKX1cbiAgICAgICAgaWNvblByb3BzPXt7IGljb25OYW1lOiBmaWx0ZXJUZXh0ID8gJ0ZpbHRlclNvbGlkJyA6ICdGaWx0ZXInIH19XG4gICAgICAgIG9uQ2hhbmdlPXsoZXZlbnQsIG5ld1ZhbHVlKSA9PiB7XG4gICAgICAgICAgZmlsdGVyVGV4dFNldChuZXdWYWx1ZSlcbiAgICAgICAgICBzaG93TWVCeShuZXdWYWx1ZSlcbiAgICAgICAgfX1cbiAgICAgICAgb25Nb3VzZUVudGVyPXsoKSA9PiB7XG4gICAgICAgICAgLy8gc2V0VGltZW91dCDpgb/lhY0gcG9seWZpbGxzLWVzNSDloLHpjK8gQ2Fubm90IGFzc2lnbiB0byByZWFkIG9ubHkgcHJvcGVydHkgJ2V2ZW50JyBvZiBvYmplY3QgJ1tvYmplY3QgT2JqZWN0XSdcbiAgICAgICAgICBnbG9iYWxUaGlzLnNldFRpbWVvdXQoKCkgPT4ge1xuICAgICAgICAgICAgc2VhcmNoQm94UmVmLmN1cnJlbnQ/LmZvY3VzKClcbiAgICAgICAgICB9KVxuICAgICAgICB9fVxuICAgICAgLz5cbiAgICA8L3NwYW4+XG4gIClcbn1cblxuUG9ydGZvbGlvSGVhZGVyRXh0cmFCdXR0b25zLmhhc1JlbmRlcmVkID0gKCkgPT4gISEkKGAjJHtFTEVNRU5UX0lEfWApLmxlbmd0aFxuXG5Qb3J0Zm9saW9IZWFkZXJFeHRyYUJ1dHRvbnMuZ2V0Q29udGFpbmVyID0gKCkgPT4gJChgIyR7RUxFTUVOVF9JRH0tY29udGFpbmVyYClcblxuUG9ydGZvbGlvSGVhZGVyRXh0cmFCdXR0b25zLnJlbmRlciA9ICgpID0+IHtcbiAgaWYgKFBvcnRmb2xpb0hlYWRlckV4dHJhQnV0dG9ucy5oYXNSZW5kZXJlZCgpKSB7XG4gICAgcmV0dXJuXG4gIH1cblxuICBjb25zdCBjb250YWluZXJMb2NhdGlvbiA9ICQoJy5wLXBvcnRmb2xpby1oZWFkZXIgLmlubmVyLWhlYWRlcicpXG5cbiAgaWYgKFxuICAgIGNvbnRhaW5lckxvY2F0aW9uLmxlbmd0aCAmJlxuICAgICFQb3J0Zm9saW9IZWFkZXJFeHRyYUJ1dHRvbnMuZ2V0Q29udGFpbmVyKCkubGVuZ3RoXG4gICkge1xuICAgICQoYDxzcGFuIGlkPVwiJHtFTEVNRU5UX0lEfS1jb250YWluZXJcIj48L3NwYW4+YCkuYXBwZW5kVG8oY29udGFpbmVyTG9jYXRpb24pXG4gIH1cblxuICAkKGAjJHtFTEVNRU5UX0lEfS1jb250YWluZXJgKS5sZW5ndGggJiZcbiAgICBSZWFjdERvbS5yZW5kZXIoXG4gICAgICA8UHJvdmlkZXIgc3RvcmU9e3N0b3JlfT5cbiAgICAgICAgPFBvcnRmb2xpb0hlYWRlckV4dHJhQnV0dG9ucyAvPlxuICAgICAgPC9Qcm92aWRlcj4sXG4gICAgICAkKGAjJHtFTEVNRU5UX0lEfS1jb250YWluZXJgKS5odG1sKCcnKS5nZXQoMCksXG4gICAgKVxufVxuXG5HTS5hZGRTdHlsZShgXG4gICMke0VMRU1FTlRfSUR9IHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgbWFyZ2luLWxlZnQ6IDE2cHg7XG4gICAgbWFyZ2luLXRvcDogMTJweDtcbiAgfVxuYClcbiJdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQUFBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUVBO0FBR0E7QUFDQTtBQUNBO0FBQUE7QUFDQTtBQUFBO0FBQ0E7QUFFQTtBQUNBO0FBQ0E7QUFJQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQ0E7QUFDQTtBQUVBO0FBQ0E7QUFBQTtBQUVBO0FBQ0E7QUFDQTtBQUFBO0FBQUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUFBO0FBQ0E7QUFBQTtBQUNBO0FBQ0E7QUFiQTtBQWlCQTtBQUNBO0FBQ0E7QUFBQTtBQUFBO0FBQ0E7QUFDQTtBQUFBO0FBQUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFJQTtBQUNBO0FBQ0E7QUFDQTtBQUVBO0FBQUE7QUFLQTtBQUNBO0FBQ0EiLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///./src/components/Portfolio/PortfolioHeaderExtraButtons.tsx\n"); +eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"PortfolioHeaderExtraButtons\", function() { return PortfolioHeaderExtraButtons; });\n/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! react */ \"./node_modules/react/index.js\");\n/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_0__);\n/* harmony import */ var react_dom__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! react-dom */ \"./node_modules/react-dom/index.js\");\n/* harmony import */ var react_dom__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(react_dom__WEBPACK_IMPORTED_MODULE_1__);\n/* harmony import */ var _store_store__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! @/store/_store */ \"./src/store/_store.ts\");\n/* harmony import */ var react_redux__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! react-redux */ \"./node_modules/react-redux/lib/index.js\");\n/* harmony import */ var react_redux__WEBPACK_IMPORTED_MODULE_3___default = /*#__PURE__*/__webpack_require__.n(react_redux__WEBPACK_IMPORTED_MODULE_3__);\n/* harmony import */ var _fluentui_react__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! @fluentui/react */ \"./node_modules/@fluentui/react/lib-commonjs/index.js\");\n/* harmony import */ var _fluentui_react__WEBPACK_IMPORTED_MODULE_4___default = /*#__PURE__*/__webpack_require__.n(_fluentui_react__WEBPACK_IMPORTED_MODULE_4__);\n/* harmony import */ var _i18n__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! @/i18n */ \"./src/i18n.tsx\");\n/* harmony import */ var _GM__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! @/GM */ \"./src/GM.ts\");\nfunction _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest(); }\n\nfunction _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.\"); }\n\nfunction _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); }\n\nfunction _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; }\n\nfunction _iterableToArrayLimit(arr, i) { if (typeof Symbol === \"undefined\" || !(Symbol.iterator in Object(arr))) return; var _arr = []; var _n = true; var _d = false; var _e = undefined; try { for (var _i = arr[Symbol.iterator](), _s; !(_n = (_s = _i.next()).done); _n = true) { _arr.push(_s.value); if (i && _arr.length === i) break; } } catch (err) { _d = true; _e = err; } finally { try { if (!_n && _i[\"return\"] != null) _i[\"return\"](); } finally { if (_d) throw _e; } } return _arr; }\n\nfunction _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }\n\n\n\n\n\n\n\n\nvar ELEMENT_ID = 'portfolio-header-extra-buttons';\n\nvar showMeBy = function showMeBy() {\n var filterText = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : '';\n\n if (filterText) {\n $('.ui-table-row').hide();\n $('.table-first-name, .table-last-name, .i-portfolio-table-name-symbol').each(function (index, element) {\n var didMatch = element.innerHTML.trim().toLowerCase().includes(filterText.toLowerCase().trim());\n\n if (didMatch) {\n $(element).closest('.ui-table-row').show();\n }\n });\n } else {\n $('.ui-table-row').show();\n }\n};\n\nvar PortfolioHeaderExtraButtons = function PortfolioHeaderExtraButtons() {\n var _React$useState = react__WEBPACK_IMPORTED_MODULE_0___default.a.useState(''),\n _React$useState2 = _slicedToArray(_React$useState, 2),\n filterText = _React$useState2[0],\n filterTextSet = _React$useState2[1];\n\n var searchBoxRef = react__WEBPACK_IMPORTED_MODULE_0___default.a.createRef();\n return react__WEBPACK_IMPORTED_MODULE_0___default.a.createElement(\"span\", {\n id: ELEMENT_ID\n }, react__WEBPACK_IMPORTED_MODULE_0___default.a.createElement(_fluentui_react__WEBPACK_IMPORTED_MODULE_4__[\"TextField\"], {\n componentRef: searchBoxRef,\n placeholder: _i18n__WEBPACK_IMPORTED_MODULE_5__[\"i18n\"].輸入以過濾(),\n iconProps: {\n iconName: filterText ? 'FilterSolid' : 'Filter'\n },\n onChange: function onChange(event, newValue) {\n filterTextSet(newValue);\n showMeBy(newValue);\n },\n onMouseEnter: function onMouseEnter() {\n // setTimeout 避免 polyfills-es5 報錯 Cannot assign to read only property 'event' of object '[object Object]'\n globalThis.setTimeout(function () {\n var _searchBoxRef$current;\n\n (_searchBoxRef$current = searchBoxRef.current) === null || _searchBoxRef$current === void 0 ? void 0 : _searchBoxRef$current.focus();\n });\n }\n }));\n};\n\nPortfolioHeaderExtraButtons.hasRendered = function () {\n return !!$(\"#\".concat(ELEMENT_ID)).length;\n};\n\nPortfolioHeaderExtraButtons.getContainer = function () {\n return $(\"#\".concat(ELEMENT_ID, \"-container\"));\n};\n\nPortfolioHeaderExtraButtons.render = function () {\n if (PortfolioHeaderExtraButtons.hasRendered()) {\n return;\n }\n\n var containerLocation = $('.p-portfolio-header .inner-header');\n\n if (containerLocation.length && !PortfolioHeaderExtraButtons.getContainer().length) {\n $(\"\")).appendTo(containerLocation);\n }\n\n $(\"#\".concat(ELEMENT_ID, \"-container\")).length && react_dom__WEBPACK_IMPORTED_MODULE_1___default.a.render(react__WEBPACK_IMPORTED_MODULE_0___default.a.createElement(react_redux__WEBPACK_IMPORTED_MODULE_3__[\"Provider\"], {\n store: _store_store__WEBPACK_IMPORTED_MODULE_2__[\"default\"]\n }, react__WEBPACK_IMPORTED_MODULE_0___default.a.createElement(PortfolioHeaderExtraButtons, null)), $(\"#\".concat(ELEMENT_ID, \"-container\")).html('').get(0));\n};\n\n_GM__WEBPACK_IMPORTED_MODULE_6__[\"GM\"].addStyle(\"\\n #\".concat(ELEMENT_ID, \" {\\n display: inline-block;\\n margin-left: 16px;\\n margin-top: 12px;\\n }\\n\"));//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiLi9zcmMvY29tcG9uZW50cy9Qb3J0Zm9saW8vUG9ydGZvbGlvSGVhZGVyRXh0cmFCdXR0b25zLnRzeC5qcyIsInNvdXJjZXMiOlsid2VicGFjazovLy8uL3NyYy9jb21wb25lbnRzL1BvcnRmb2xpby9Qb3J0Zm9saW9IZWFkZXJFeHRyYUJ1dHRvbnMudHN4P2NiMjQiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IFJlYWN0IGZyb20gJ3JlYWN0J1xuaW1wb3J0IFJlYWN0RG9tIGZyb20gJ3JlYWN0LWRvbSdcbmltcG9ydCBzdG9yZSBmcm9tICdAL3N0b3JlL19zdG9yZSdcbmltcG9ydCB7IFByb3ZpZGVyIH0gZnJvbSAncmVhY3QtcmVkdXgnXG5pbXBvcnQgeyBTZWFyY2hCb3gsIFRleHRGaWVsZCwgVGV4dEZpZWxkQmFzZSB9IGZyb20gJ0BmbHVlbnR1aS9yZWFjdCdcbmltcG9ydCB7IGkxOG4gfSBmcm9tICdAL2kxOG4nXG5pbXBvcnQgeyBkZWJ1Z0FQSSB9IGZyb20gJ0AvZGVidWdBUEknXG5pbXBvcnQgeyBHTSB9IGZyb20gJ0AvR00nXG5pbXBvcnQgeyB0aHJvdHRsZSB9IGZyb20gJ2xvZGFzaCdcblxuY29uc3QgRUxFTUVOVF9JRCA9ICdwb3J0Zm9saW8taGVhZGVyLWV4dHJhLWJ1dHRvbnMnXG5cbmNvbnN0IHNob3dNZUJ5ID0gKGZpbHRlclRleHQgPSAnJykgPT4ge1xuICBpZiAoZmlsdGVyVGV4dCkge1xuICAgICQoJy51aS10YWJsZS1yb3cnKS5oaWRlKClcblxuICAgICQoXG4gICAgICAnLnRhYmxlLWZpcnN0LW5hbWUsIC50YWJsZS1sYXN0LW5hbWUsIC5pLXBvcnRmb2xpby10YWJsZS1uYW1lLXN5bWJvbCcsXG4gICAgKS5lYWNoKChpbmRleCwgZWxlbWVudCkgPT4ge1xuICAgICAgY29uc3QgZGlkTWF0Y2ggPSBlbGVtZW50LmlubmVySFRNTFxuICAgICAgICAudHJpbSgpXG4gICAgICAgIC50b0xvd2VyQ2FzZSgpXG4gICAgICAgIC5pbmNsdWRlcyhmaWx0ZXJUZXh0LnRvTG93ZXJDYXNlKCkudHJpbSgpKVxuXG4gICAgICBpZiAoZGlkTWF0Y2gpIHtcbiAgICAgICAgJChlbGVtZW50KS5jbG9zZXN0KCcudWktdGFibGUtcm93Jykuc2hvdygpXG4gICAgICB9XG4gICAgfSlcbiAgfSBlbHNlIHtcbiAgICAkKCcudWktdGFibGUtcm93Jykuc2hvdygpXG4gIH1cbn1cblxuZXhwb3J0IGNvbnN0IFBvcnRmb2xpb0hlYWRlckV4dHJhQnV0dG9ucyA9ICgpID0+IHtcbiAgY29uc3QgW2ZpbHRlclRleHQsIGZpbHRlclRleHRTZXRdID0gUmVhY3QudXNlU3RhdGU8c3RyaW5nIHwgdW5kZWZpbmVkPignJylcbiAgY29uc3Qgc2VhcmNoQm94UmVmID0gUmVhY3QuY3JlYXRlUmVmPFRleHRGaWVsZEJhc2U+KClcblxuICByZXR1cm4gKFxuICAgIDxzcGFuIGlkPXtFTEVNRU5UX0lEfT5cbiAgICAgIDxUZXh0RmllbGRcbiAgICAgICAgY29tcG9uZW50UmVmPXtzZWFyY2hCb3hSZWZ9XG4gICAgICAgIHBsYWNlaG9sZGVyPXtpMThuLui8uOWFpeS7pemBjua/vigpfVxuICAgICAgICBpY29uUHJvcHM9e3sgaWNvbk5hbWU6IGZpbHRlclRleHQgPyAnRmlsdGVyU29saWQnIDogJ0ZpbHRlcicgfX1cbiAgICAgICAgb25DaGFuZ2U9eyhldmVudCwgbmV3VmFsdWUpID0+IHtcbiAgICAgICAgICBmaWx0ZXJUZXh0U2V0KG5ld1ZhbHVlKVxuICAgICAgICAgIHNob3dNZUJ5KG5ld1ZhbHVlKVxuICAgICAgICB9fVxuICAgICAgICBvbk1vdXNlRW50ZXI9eygpID0+IHtcbiAgICAgICAgICAvLyBzZXRUaW1lb3V0IOmBv+WFjSBwb2x5ZmlsbHMtZXM1IOWgsemMryBDYW5ub3QgYXNzaWduIHRvIHJlYWQgb25seSBwcm9wZXJ0eSAnZXZlbnQnIG9mIG9iamVjdCAnW29iamVjdCBPYmplY3RdJ1xuICAgICAgICAgIGdsb2JhbFRoaXMuc2V0VGltZW91dCgoKSA9PiB7XG4gICAgICAgICAgICBzZWFyY2hCb3hSZWYuY3VycmVudD8uZm9jdXMoKVxuICAgICAgICAgIH0pXG4gICAgICAgIH19XG4gICAgICAvPlxuICAgIDwvc3Bhbj5cbiAgKVxufVxuXG5Qb3J0Zm9saW9IZWFkZXJFeHRyYUJ1dHRvbnMuaGFzUmVuZGVyZWQgPSAoKSA9PiAhISQoYCMke0VMRU1FTlRfSUR9YCkubGVuZ3RoXG5cblBvcnRmb2xpb0hlYWRlckV4dHJhQnV0dG9ucy5nZXRDb250YWluZXIgPSAoKSA9PiAkKGAjJHtFTEVNRU5UX0lEfS1jb250YWluZXJgKVxuXG5Qb3J0Zm9saW9IZWFkZXJFeHRyYUJ1dHRvbnMucmVuZGVyID0gKCkgPT4ge1xuICBpZiAoUG9ydGZvbGlvSGVhZGVyRXh0cmFCdXR0b25zLmhhc1JlbmRlcmVkKCkpIHtcbiAgICByZXR1cm5cbiAgfVxuXG4gIGNvbnN0IGNvbnRhaW5lckxvY2F0aW9uID0gJCgnLnAtcG9ydGZvbGlvLWhlYWRlciAuaW5uZXItaGVhZGVyJylcblxuICBpZiAoXG4gICAgY29udGFpbmVyTG9jYXRpb24ubGVuZ3RoICYmXG4gICAgIVBvcnRmb2xpb0hlYWRlckV4dHJhQnV0dG9ucy5nZXRDb250YWluZXIoKS5sZW5ndGhcbiAgKSB7XG4gICAgJChgPHNwYW4gaWQ9XCIke0VMRU1FTlRfSUR9LWNvbnRhaW5lclwiPjwvc3Bhbj5gKS5hcHBlbmRUbyhjb250YWluZXJMb2NhdGlvbilcbiAgfVxuXG4gICQoYCMke0VMRU1FTlRfSUR9LWNvbnRhaW5lcmApLmxlbmd0aCAmJlxuICAgIFJlYWN0RG9tLnJlbmRlcihcbiAgICAgIDxQcm92aWRlciBzdG9yZT17c3RvcmV9PlxuICAgICAgICA8UG9ydGZvbGlvSGVhZGVyRXh0cmFCdXR0b25zIC8+XG4gICAgICA8L1Byb3ZpZGVyPixcbiAgICAgICQoYCMke0VMRU1FTlRfSUR9LWNvbnRhaW5lcmApLmh0bWwoJycpLmdldCgwKSxcbiAgICApXG59XG5cbkdNLmFkZFN0eWxlKGBcbiAgIyR7RUxFTUVOVF9JRH0ge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBtYXJnaW4tbGVmdDogMTZweDtcbiAgICBtYXJnaW4tdG9wOiAxMnB4O1xuICB9XG5gKVxuIl0sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBQUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBRUE7QUFHQTtBQUNBO0FBQ0E7QUFBQTtBQUNBO0FBQUE7QUFDQTtBQUVBO0FBR0E7QUFDQTtBQUlBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFDQTtBQUNBO0FBRUE7QUFDQTtBQUFBO0FBRUE7QUFDQTtBQUNBO0FBQUE7QUFBQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQUE7QUFDQTtBQUFBO0FBQ0E7QUFDQTtBQWJBO0FBaUJBO0FBQ0E7QUFDQTtBQUFBO0FBQUE7QUFDQTtBQUNBO0FBQUE7QUFBQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUlBO0FBQ0E7QUFDQTtBQUNBO0FBRUE7QUFBQTtBQUtBO0FBQ0E7QUFDQSIsInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///./src/components/Portfolio/PortfolioHeaderExtraButtons.tsx\n"); + +/***/ }), + +/***/ "./src/components/Portfolio/PortfolioHistoryHeaderExtraButtons.tsx": +/*!*************************************************************************!*\ + !*** ./src/components/Portfolio/PortfolioHistoryHeaderExtraButtons.tsx ***! + \*************************************************************************/ +/*! exports provided: PortfolioHistoryHeaderExtraButtons */ +/***/ (function(module, __webpack_exports__, __webpack_require__) { + +"use strict"; +eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"PortfolioHistoryHeaderExtraButtons\", function() { return PortfolioHistoryHeaderExtraButtons; });\n/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! react */ \"./node_modules/react/index.js\");\n/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_0__);\n/* harmony import */ var react_dom__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! react-dom */ \"./node_modules/react-dom/index.js\");\n/* harmony import */ var react_dom__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(react_dom__WEBPACK_IMPORTED_MODULE_1__);\n/* harmony import */ var _store_store__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! @/store/_store */ \"./src/store/_store.ts\");\n/* harmony import */ var react_redux__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! react-redux */ \"./node_modules/react-redux/lib/index.js\");\n/* harmony import */ var react_redux__WEBPACK_IMPORTED_MODULE_3___default = /*#__PURE__*/__webpack_require__.n(react_redux__WEBPACK_IMPORTED_MODULE_3__);\n/* harmony import */ var _fluentui_react__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! @fluentui/react */ \"./node_modules/@fluentui/react/lib-commonjs/index.js\");\n/* harmony import */ var _fluentui_react__WEBPACK_IMPORTED_MODULE_4___default = /*#__PURE__*/__webpack_require__.n(_fluentui_react__WEBPACK_IMPORTED_MODULE_4__);\n/* harmony import */ var _GM__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! @/GM */ \"./src/GM.ts\");\n/* harmony import */ var _i18n__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! @/i18n */ \"./src/i18n.tsx\");\n/* harmony import */ var lodash__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! lodash */ \"./node_modules/lodash/lodash.js\");\n/* harmony import */ var lodash__WEBPACK_IMPORTED_MODULE_7___default = /*#__PURE__*/__webpack_require__.n(lodash__WEBPACK_IMPORTED_MODULE_7__);\nfunction _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest(); }\n\nfunction _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.\"); }\n\nfunction _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); }\n\nfunction _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; }\n\nfunction _iterableToArrayLimit(arr, i) { if (typeof Symbol === \"undefined\" || !(Symbol.iterator in Object(arr))) return; var _arr = []; var _n = true; var _d = false; var _e = undefined; try { for (var _i = arr[Symbol.iterator](), _s; !(_n = (_s = _i.next()).done); _n = true) { _arr.push(_s.value); if (i && _arr.length === i) break; } } catch (err) { _d = true; _e = err; } finally { try { if (!_n && _i[\"return\"] != null) _i[\"return\"](); } finally { if (_d) throw _e; } } return _arr; }\n\nfunction _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }\n\n\n\n\n\n\n\n\n\nvar ELEMENT_ID = 'portfolio-history-header-extra-buttons';\n\nvar showMeBy = function showMeBy() {\n var filterText = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : '';\n\n if (filterText) {\n $('.ui-table-row').hide();\n $('.i-portfolio-table-inner-name-symbol, .ui-table-row').each(function (index, element) {\n var didMatch = element.innerText.trim().toLowerCase().replace(/[\\s]*/gi, '').includes(filterText.toLowerCase());\n\n if (didMatch) {\n $(element).closest('.ui-table-row').show();\n }\n });\n } else {\n $('.ui-table-row').show();\n }\n};\n\nvar PortfolioHistoryHeaderExtraButtons = function PortfolioHistoryHeaderExtraButtons() {\n var searchBoxRef = react__WEBPACK_IMPORTED_MODULE_0___default.a.createRef();\n\n var _React$useState = react__WEBPACK_IMPORTED_MODULE_0___default.a.useState(''),\n _React$useState2 = _slicedToArray(_React$useState, 2),\n filterText = _React$useState2[0],\n filterTextSet = _React$useState2[1];\n\n return react__WEBPACK_IMPORTED_MODULE_0___default.a.createElement(_fluentui_react__WEBPACK_IMPORTED_MODULE_4__[\"Stack\"], {\n horizontal: true,\n horizontalAlign: 'center',\n id: ELEMENT_ID\n }, react__WEBPACK_IMPORTED_MODULE_0___default.a.createElement(_fluentui_react__WEBPACK_IMPORTED_MODULE_4__[\"TextField\"], {\n componentRef: searchBoxRef,\n placeholder: _i18n__WEBPACK_IMPORTED_MODULE_6__[\"i18n\"].輸入以過濾(),\n iconProps: {\n iconName: filterText ? 'FilterSolid' : 'Filter'\n },\n onChange: Object(lodash__WEBPACK_IMPORTED_MODULE_7__[\"debounce\"])(function (event, newValue) {\n filterTextSet(newValue);\n showMeBy(newValue);\n }, 250),\n onMouseEnter: function onMouseEnter() {\n // setTimeout 避免 polyfills-es5 報錯 Cannot assign to read only property 'event' of object '[object Object]'\n globalThis.setTimeout(function () {\n var _searchBoxRef$current;\n\n (_searchBoxRef$current = searchBoxRef.current) === null || _searchBoxRef$current === void 0 ? void 0 : _searchBoxRef$current.focus();\n });\n }\n }));\n};\n\nPortfolioHistoryHeaderExtraButtons.hasRendered = function () {\n return !!$(\"#\".concat(ELEMENT_ID)).length;\n};\n\nPortfolioHistoryHeaderExtraButtons.construct = function () {\n if (PortfolioHistoryHeaderExtraButtons.hasRendered()) {\n return;\n }\n\n if (!$(\"#\".concat(ELEMENT_ID, \"-container\")).length) {\n $(\"\")).insertBefore($('.p-portfolio.history .inner-header .inner-header-buttons'));\n }\n\n $(\"#\".concat(ELEMENT_ID, \"-container\")).length && react_dom__WEBPACK_IMPORTED_MODULE_1___default.a.render(react__WEBPACK_IMPORTED_MODULE_0___default.a.createElement(react_redux__WEBPACK_IMPORTED_MODULE_3__[\"Provider\"], {\n store: _store_store__WEBPACK_IMPORTED_MODULE_2__[\"default\"]\n }, react__WEBPACK_IMPORTED_MODULE_0___default.a.createElement(PortfolioHistoryHeaderExtraButtons, null)), $(\"#\".concat(ELEMENT_ID, \"-container\")).get(0));\n};\n\n_GM__WEBPACK_IMPORTED_MODULE_5__[\"GM\"].addStyle(\"\\n #\".concat(ELEMENT_ID, \"-container {\\n display: inline-block;\\n margin-left: 16px;\\n }\\n\"));//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiLi9zcmMvY29tcG9uZW50cy9Qb3J0Zm9saW8vUG9ydGZvbGlvSGlzdG9yeUhlYWRlckV4dHJhQnV0dG9ucy50c3guanMiLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly8vLi9zcmMvY29tcG9uZW50cy9Qb3J0Zm9saW8vUG9ydGZvbGlvSGlzdG9yeUhlYWRlckV4dHJhQnV0dG9ucy50c3g/OWY4NSJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgUmVhY3QgZnJvbSAncmVhY3QnXG5pbXBvcnQgUmVhY3RET00gZnJvbSAncmVhY3QtZG9tJ1xuaW1wb3J0IHN0b3JlIGZyb20gJ0Avc3RvcmUvX3N0b3JlJ1xuaW1wb3J0IHsgUHJvdmlkZXIgfSBmcm9tICdyZWFjdC1yZWR1eCdcbmltcG9ydCB7IFN0YWNrLCBUZXh0RmllbGQsIFRleHRGaWVsZEJhc2UgfSBmcm9tICdAZmx1ZW50dWkvcmVhY3QnXG5pbXBvcnQgeyBHTSB9IGZyb20gJ0AvR00nXG5pbXBvcnQgeyBpMThuIH0gZnJvbSAnQC9pMThuJ1xuaW1wb3J0IHsgZGVib3VuY2UgfSBmcm9tICdsb2Rhc2gnXG5cbmNvbnN0IEVMRU1FTlRfSUQgPSAncG9ydGZvbGlvLWhpc3RvcnktaGVhZGVyLWV4dHJhLWJ1dHRvbnMnXG5cbmNvbnN0IHNob3dNZUJ5ID0gKGZpbHRlclRleHQgPSAnJykgPT4ge1xuICBpZiAoZmlsdGVyVGV4dCkge1xuICAgICQoJy51aS10YWJsZS1yb3cnKS5oaWRlKClcblxuICAgICQoJy5pLXBvcnRmb2xpby10YWJsZS1pbm5lci1uYW1lLXN5bWJvbCwgLnVpLXRhYmxlLXJvdycpLmVhY2goXG4gICAgICAoaW5kZXgsIGVsZW1lbnQpID0+IHtcbiAgICAgICAgY29uc3QgZGlkTWF0Y2ggPSBlbGVtZW50LmlubmVyVGV4dFxuICAgICAgICAgIC50cmltKClcbiAgICAgICAgICAudG9Mb3dlckNhc2UoKVxuICAgICAgICAgIC5yZXBsYWNlKC9bXFxzXSovZ2ksICcnKVxuICAgICAgICAgIC5pbmNsdWRlcyhmaWx0ZXJUZXh0LnRvTG93ZXJDYXNlKCkpXG5cbiAgICAgICAgaWYgKGRpZE1hdGNoKSB7XG4gICAgICAgICAgJChlbGVtZW50KS5jbG9zZXN0KCcudWktdGFibGUtcm93Jykuc2hvdygpXG4gICAgICAgIH1cbiAgICAgIH0sXG4gICAgKVxuICB9IGVsc2Uge1xuICAgICQoJy51aS10YWJsZS1yb3cnKS5zaG93KClcbiAgfVxufVxuXG5leHBvcnQgY29uc3QgUG9ydGZvbGlvSGlzdG9yeUhlYWRlckV4dHJhQnV0dG9ucyA9ICgpID0+IHtcbiAgY29uc3Qgc2VhcmNoQm94UmVmID0gUmVhY3QuY3JlYXRlUmVmPFRleHRGaWVsZEJhc2U+KClcbiAgY29uc3QgW2ZpbHRlclRleHQsIGZpbHRlclRleHRTZXRdID0gUmVhY3QudXNlU3RhdGU8c3RyaW5nIHwgdW5kZWZpbmVkPignJylcblxuICByZXR1cm4gKFxuICAgIDxTdGFjayBob3Jpem9udGFsIGhvcml6b250YWxBbGlnbj0nY2VudGVyJyBpZD17RUxFTUVOVF9JRH0+XG4gICAgICA8VGV4dEZpZWxkXG4gICAgICAgIGNvbXBvbmVudFJlZj17c2VhcmNoQm94UmVmfVxuICAgICAgICBwbGFjZWhvbGRlcj17aTE4bi7ovLjlhaXku6XpgY7mv74oKX1cbiAgICAgICAgaWNvblByb3BzPXt7IGljb25OYW1lOiBmaWx0ZXJUZXh0ID8gJ0ZpbHRlclNvbGlkJyA6ICdGaWx0ZXInIH19XG4gICAgICAgIG9uQ2hhbmdlPXtkZWJvdW5jZSgoZXZlbnQsIG5ld1ZhbHVlKSA9PiB7XG4gICAgICAgICAgZmlsdGVyVGV4dFNldChuZXdWYWx1ZSlcbiAgICAgICAgICBzaG93TWVCeShuZXdWYWx1ZSlcbiAgICAgICAgfSwgMjUwKX1cbiAgICAgICAgb25Nb3VzZUVudGVyPXsoKSA9PiB7XG4gICAgICAgICAgLy8gc2V0VGltZW91dCDpgb/lhY0gcG9seWZpbGxzLWVzNSDloLHpjK8gQ2Fubm90IGFzc2lnbiB0byByZWFkIG9ubHkgcHJvcGVydHkgJ2V2ZW50JyBvZiBvYmplY3QgJ1tvYmplY3QgT2JqZWN0XSdcbiAgICAgICAgICBnbG9iYWxUaGlzLnNldFRpbWVvdXQoKCkgPT4ge1xuICAgICAgICAgICAgc2VhcmNoQm94UmVmLmN1cnJlbnQ/LmZvY3VzKClcbiAgICAgICAgICB9KVxuICAgICAgICB9fVxuICAgICAgLz5cbiAgICA8L1N0YWNrPlxuICApXG59XG5cblBvcnRmb2xpb0hpc3RvcnlIZWFkZXJFeHRyYUJ1dHRvbnMuaGFzUmVuZGVyZWQgPSAoKSA9PlxuICAhISQoYCMke0VMRU1FTlRfSUR9YCkubGVuZ3RoXG5cblBvcnRmb2xpb0hpc3RvcnlIZWFkZXJFeHRyYUJ1dHRvbnMuY29uc3RydWN0ID0gKCkgPT4ge1xuICBpZiAoUG9ydGZvbGlvSGlzdG9yeUhlYWRlckV4dHJhQnV0dG9ucy5oYXNSZW5kZXJlZCgpKSB7XG4gICAgcmV0dXJuXG4gIH1cblxuICBpZiAoISQoYCMke0VMRU1FTlRfSUR9LWNvbnRhaW5lcmApLmxlbmd0aCkge1xuICAgICQoYDxzcGFuIGlkPScke0VMRU1FTlRfSUR9LWNvbnRhaW5lcic+PC9zcGFuPmApLmluc2VydEJlZm9yZShcbiAgICAgICQoJy5wLXBvcnRmb2xpby5oaXN0b3J5IC5pbm5lci1oZWFkZXIgLmlubmVyLWhlYWRlci1idXR0b25zJyksXG4gICAgKVxuICB9XG5cbiAgJChgIyR7RUxFTUVOVF9JRH0tY29udGFpbmVyYCkubGVuZ3RoICYmXG4gICAgUmVhY3RET00ucmVuZGVyKFxuICAgICAgPFByb3ZpZGVyIHN0b3JlPXtzdG9yZX0+XG4gICAgICAgIDxQb3J0Zm9saW9IaXN0b3J5SGVhZGVyRXh0cmFCdXR0b25zPjwvUG9ydGZvbGlvSGlzdG9yeUhlYWRlckV4dHJhQnV0dG9ucz5cbiAgICAgIDwvUHJvdmlkZXI+LFxuICAgICAgJChgIyR7RUxFTUVOVF9JRH0tY29udGFpbmVyYCkuZ2V0KDApLFxuICAgIClcbn1cblxuR00uYWRkU3R5bGUoYFxuICAjJHtFTEVNRU5UX0lEfS1jb250YWluZXIge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBtYXJnaW4tbGVmdDogMTZweDtcbiAgfVxuYClcbiJdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBQUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUVBO0FBQ0E7QUFDQTtBQUFBO0FBQ0E7QUFBQTtBQUNBO0FBRUE7QUFFQTtBQUNBO0FBS0E7QUFDQTtBQUNBO0FBQ0E7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBRkE7QUFBQTtBQUFBO0FBQUE7QUFDQTtBQUdBO0FBQ0E7QUFBQTtBQUFBO0FBQUE7QUFFQTtBQUNBO0FBQ0E7QUFBQTtBQUFBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFBQTtBQUNBO0FBQUE7QUFDQTtBQUNBO0FBYkE7QUFpQkE7QUFDQTtBQUNBO0FBQUE7QUFBQTtBQUNBO0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFHQTtBQUNBO0FBQ0E7QUFFQTtBQUFBO0FBS0E7QUFDQTtBQUNBIiwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///./src/components/Portfolio/PortfolioHistoryHeaderExtraButtons.tsx\n"); /***/ }), @@ -14360,7 +14384,7 @@ eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export (binding) * /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; -eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"WatchlistHeader\", function() { return WatchlistHeader; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"watchlistHeaderHasReady\", function() { return watchlistHeaderHasReady; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"watchlistHeaderConstructor\", function() { return watchlistHeaderConstructor; });\n/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! react */ \"./node_modules/react/index.js\");\n/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_0__);\n/* harmony import */ var react_dom__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! react-dom */ \"./node_modules/react-dom/index.js\");\n/* harmony import */ var react_dom__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(react_dom__WEBPACK_IMPORTED_MODULE_1__);\n/* harmony import */ var react_redux__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! react-redux */ \"./node_modules/react-redux/lib/index.js\");\n/* harmony import */ var react_redux__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(react_redux__WEBPACK_IMPORTED_MODULE_2__);\n/* harmony import */ var _store_store__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! @/store/_store */ \"./src/store/_store.ts\");\n/* harmony import */ var _i18n__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! @/i18n */ \"./src/i18n.tsx\");\n/* harmony import */ var _GM__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! @/GM */ \"./src/GM.ts\");\n/* harmony import */ var _storage__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! @/storage */ \"./src/storage.ts\");\n/* harmony import */ var _hooks_useAppSelector__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! @/hooks/useAppSelector */ \"./src/hooks/useAppSelector.ts\");\n/* harmony import */ var _hooks_useAppDispatch__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! @/hooks/useAppDispatch */ \"./src/hooks/useAppDispatch.ts\");\n/* harmony import */ var _actions_setListCompact__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(/*! @/actions/setListCompact */ \"./src/actions/setListCompact.ts\");\n/* harmony import */ var react_use__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(/*! react-use */ \"./node_modules/react-use/lib/index.js\");\n/* harmony import */ var react_use__WEBPACK_IMPORTED_MODULE_10___default = /*#__PURE__*/__webpack_require__.n(react_use__WEBPACK_IMPORTED_MODULE_10__);\n/* harmony import */ var _fluentui_react__WEBPACK_IMPORTED_MODULE_11__ = __webpack_require__(/*! @fluentui/react */ \"./node_modules/@fluentui/react/lib-commonjs/index.js\");\n/* harmony import */ var _fluentui_react__WEBPACK_IMPORTED_MODULE_11___default = /*#__PURE__*/__webpack_require__.n(_fluentui_react__WEBPACK_IMPORTED_MODULE_11__);\nfunction _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest(); }\n\nfunction _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.\"); }\n\nfunction _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); }\n\nfunction _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; }\n\nfunction _iterableToArrayLimit(arr, i) { if (typeof Symbol === \"undefined\" || !(Symbol.iterator in Object(arr))) return; var _arr = []; var _n = true; var _d = false; var _e = undefined; try { for (var _i = arr[Symbol.iterator](), _s; !(_n = (_s = _i.next()).done); _n = true) { _arr.push(_s.value); if (i && _arr.length === i) break; } } catch (err) { _d = true; _e = err; } finally { try { if (!_n && _i[\"return\"] != null) _i[\"return\"](); } finally { if (_d) throw _e; } } return _arr; }\n\nfunction _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }\n\n\n\n\n\n\n\n\n\n\n\n\n\nvar NAME_HAS_FLAG = 'etoro-better-ui-WatchlistHeader-is-ready';\n\nvar showMeBy = function showMeBy() {\n var filterText = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : '';\n\n if (filterText) {\n $('et-user-row, et-user-card, et-instrument-row, et-instrument-card').hide();\n $('[automation-id=trade-item-name], [automation-id=\"trade-item-full-name\"]').each(function (index, element) {\n var didMatch = element.innerText.trim().toUpperCase().includes(filterText.trim().toUpperCase());\n\n if (didMatch) {\n $(element).closest('et-user-row, et-user-card, et-instrument-row, et-instrument-card').show();\n }\n });\n } else {\n $('et-user-row, et-user-card, et-instrument-row, et-instrument-card').show();\n }\n};\n\nvar toggleListCompact = function toggleListCompact(onOff) {\n $(\"\\n [automation-id=\\\"watchlist-item-list-instrument-chart\\\"],\\n [automation-id=\\\"watchlist-item-list-instrument-sentiment\\\"],\\n et-fifty-two-weeks,\\n [automation-id=\\\"watchlist-item-list-user-wrapp-investors\\\"]\\n \").toggle(!onOff);\n};\n\nvar WatchlistHeader = function WatchlistHeader() {\n var listCompactOn = Object(_hooks_useAppSelector__WEBPACK_IMPORTED_MODULE_7__[\"useAppSelector\"])(function (state) {\n return state.settings.betterEtoroUIConfig.listCompactOn;\n });\n var dispatch = Object(_hooks_useAppDispatch__WEBPACK_IMPORTED_MODULE_8__[\"useAppDispatch\"])();\n\n var _React$useState = react__WEBPACK_IMPORTED_MODULE_0___default.a.useState(''),\n _React$useState2 = _slicedToArray(_React$useState, 2),\n filterText = _React$useState2[0],\n filterTextSet = _React$useState2[1];\n\n var searchBoxRef = react__WEBPACK_IMPORTED_MODULE_0___default.a.createRef();\n Object(react_use__WEBPACK_IMPORTED_MODULE_10__[\"useMount\"])(function () {\n toggleListCompact(listCompactOn);\n });\n return react__WEBPACK_IMPORTED_MODULE_0___default.a.createElement(_fluentui_react__WEBPACK_IMPORTED_MODULE_11__[\"Stack\"], {\n horizontal: true,\n tokens: {\n childrenGap: 16\n },\n className: NAME_HAS_FLAG\n }, react__WEBPACK_IMPORTED_MODULE_0___default.a.createElement(_fluentui_react__WEBPACK_IMPORTED_MODULE_11__[\"Stack\"].Item, null, react__WEBPACK_IMPORTED_MODULE_0___default.a.createElement(_fluentui_react__WEBPACK_IMPORTED_MODULE_11__[\"TextField\"], {\n componentRef: searchBoxRef,\n placeholder: _i18n__WEBPACK_IMPORTED_MODULE_4__[\"i18n\"].輸入以過濾(),\n iconProps: {\n iconName: filterText ? 'FilterSolid' : 'Filter'\n },\n onChange: function onChange(event, newValue) {\n filterTextSet(newValue);\n showMeBy(newValue);\n },\n onMouseEnter: function onMouseEnter() {\n // setTimeout 避免 polyfills-es5 報錯 Cannot assign to read only property 'event' of object '[object Object]'\n globalThis.setTimeout(function () {\n var _searchBoxRef$current;\n\n (_searchBoxRef$current = searchBoxRef.current) === null || _searchBoxRef$current === void 0 ? void 0 : _searchBoxRef$current.focus();\n });\n }\n })), react__WEBPACK_IMPORTED_MODULE_0___default.a.createElement(_fluentui_react__WEBPACK_IMPORTED_MODULE_11__[\"Stack\"].Item, null, react__WEBPACK_IMPORTED_MODULE_0___default.a.createElement(_fluentui_react__WEBPACK_IMPORTED_MODULE_11__[\"Toggle\"], {\n label: _i18n__WEBPACK_IMPORTED_MODULE_4__[\"i18n\"].使緊湊(),\n inlineLabel: true,\n checked: listCompactOn,\n onClick: function onClick() {\n _storage__WEBPACK_IMPORTED_MODULE_6__[\"storage\"].saveConfig({\n listCompactOn: !listCompactOn\n });\n toggleListCompact(!listCompactOn);\n dispatch(Object(_actions_setListCompact__WEBPACK_IMPORTED_MODULE_9__[\"setListCompact\"])(!listCompactOn));\n }\n })));\n};\nvar watchlistHeaderHasReady = function watchlistHeaderHasReady() {\n return !!$(\".\".concat(NAME_HAS_FLAG)).length;\n};\nvar watchlistHeaderConstructor = function watchlistHeaderConstructor() {\n if (watchlistHeaderHasReady()) {\n return;\n }\n\n var headerWrap = $('.watchlist-header');\n var buttonWarp = headerWrap.find('.watch-list-buttons');\n\n if (buttonWarp.length && !$(\"#\".concat(watchlistHeaderConstructor.name)).length) {\n buttonWarp.prepend(\"\"));\n }\n\n globalThis.document.querySelector(\"#\".concat(watchlistHeaderConstructor.name)) && react_dom__WEBPACK_IMPORTED_MODULE_1___default.a.render(react__WEBPACK_IMPORTED_MODULE_0___default.a.createElement(react_redux__WEBPACK_IMPORTED_MODULE_2__[\"Provider\"], {\n store: _store_store__WEBPACK_IMPORTED_MODULE_3__[\"default\"]\n }, react__WEBPACK_IMPORTED_MODULE_0___default.a.createElement(WatchlistHeader, null)), globalThis.document.querySelector(\"#\".concat(watchlistHeaderConstructor.name)));\n};\n_GM__WEBPACK_IMPORTED_MODULE_5__[\"GM\"].addStyle(\"\\n #\".concat(watchlistHeaderConstructor.name, \" {\\n margin-top: 18px;\\n }\\n\"));//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiLi9zcmMvY29tcG9uZW50cy9XYXRjaGxpc3RIZWFkZXIvV2F0Y2hsaXN0SGVhZGVyLnRzeC5qcyIsInNvdXJjZXMiOlsid2VicGFjazovLy8uL3NyYy9jb21wb25lbnRzL1dhdGNobGlzdEhlYWRlci9XYXRjaGxpc3RIZWFkZXIudHN4PzBhYTYiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IFJlYWN0IGZyb20gJ3JlYWN0J1xuaW1wb3J0IFJlYWN0RE9NIGZyb20gJ3JlYWN0LWRvbSdcbmltcG9ydCB7IFByb3ZpZGVyIH0gZnJvbSAncmVhY3QtcmVkdXgnXG5pbXBvcnQgc3RvcmUgZnJvbSAnQC9zdG9yZS9fc3RvcmUnXG5pbXBvcnQgeyBpMThuIH0gZnJvbSAnQC9pMThuJ1xuaW1wb3J0IHsgR00gfSBmcm9tICdAL0dNJ1xuaW1wb3J0IHsgSW5wdXRHcm91cCwgQnV0dG9uLCBDb250cm9sR3JvdXAgfSBmcm9tICdAYmx1ZXByaW50anMvY29yZSdcbmltcG9ydCB7IHN0b3JhZ2UgfSBmcm9tICdAL3N0b3JhZ2UnXG5pbXBvcnQgeyB1c2VBcHBTZWxlY3RvciB9IGZyb20gJ0AvaG9va3MvdXNlQXBwU2VsZWN0b3InXG5pbXBvcnQgeyB1c2VBcHBEaXNwYXRjaCB9IGZyb20gJ0AvaG9va3MvdXNlQXBwRGlzcGF0Y2gnXG5pbXBvcnQgeyBzZXRMaXN0Q29tcGFjdCB9IGZyb20gJ0AvYWN0aW9ucy9zZXRMaXN0Q29tcGFjdCdcbmltcG9ydCB7IHVzZU1vdW50IH0gZnJvbSAncmVhY3QtdXNlJ1xuaW1wb3J0IHsgVG9nZ2xlLCBUZXh0RmllbGQsIFN0YWNrLCBUZXh0RmllbGRCYXNlIH0gZnJvbSAnQGZsdWVudHVpL3JlYWN0J1xuXG5jb25zdCBOQU1FX0hBU19GTEFHID0gJ2V0b3JvLWJldHRlci11aS1XYXRjaGxpc3RIZWFkZXItaXMtcmVhZHknXG5cbmNvbnN0IHNob3dNZUJ5ID0gKGZpbHRlclRleHQgPSAnJykgPT4ge1xuICBpZiAoZmlsdGVyVGV4dCkge1xuICAgICQoJ2V0LXVzZXItcm93LCBldC11c2VyLWNhcmQsIGV0LWluc3RydW1lbnQtcm93LCBldC1pbnN0cnVtZW50LWNhcmQnKS5oaWRlKClcblxuICAgICQoXG4gICAgICAnW2F1dG9tYXRpb24taWQ9dHJhZGUtaXRlbS1uYW1lXSwgW2F1dG9tYXRpb24taWQ9XCJ0cmFkZS1pdGVtLWZ1bGwtbmFtZVwiXScsXG4gICAgKS5lYWNoKChpbmRleCwgZWxlbWVudCkgPT4ge1xuICAgICAgY29uc3QgZGlkTWF0Y2ggPSBlbGVtZW50LmlubmVyVGV4dFxuICAgICAgICAudHJpbSgpXG4gICAgICAgIC50b1VwcGVyQ2FzZSgpXG4gICAgICAgIC5pbmNsdWRlcyhmaWx0ZXJUZXh0LnRyaW0oKS50b1VwcGVyQ2FzZSgpKVxuXG4gICAgICBpZiAoZGlkTWF0Y2gpIHtcbiAgICAgICAgJChlbGVtZW50KVxuICAgICAgICAgIC5jbG9zZXN0KFxuICAgICAgICAgICAgJ2V0LXVzZXItcm93LCBldC11c2VyLWNhcmQsIGV0LWluc3RydW1lbnQtcm93LCBldC1pbnN0cnVtZW50LWNhcmQnLFxuICAgICAgICAgIClcbiAgICAgICAgICAuc2hvdygpXG4gICAgICB9XG4gICAgfSlcbiAgfSBlbHNlIHtcbiAgICAkKCdldC11c2VyLXJvdywgZXQtdXNlci1jYXJkLCBldC1pbnN0cnVtZW50LXJvdywgZXQtaW5zdHJ1bWVudC1jYXJkJykuc2hvdygpXG4gIH1cbn1cblxuY29uc3QgdG9nZ2xlTGlzdENvbXBhY3QgPSAob25PZmY6IGJvb2xlYW4pID0+IHtcbiAgJChcbiAgICBgXG4gICAgW2F1dG9tYXRpb24taWQ9XCJ3YXRjaGxpc3QtaXRlbS1saXN0LWluc3RydW1lbnQtY2hhcnRcIl0sXG4gICAgW2F1dG9tYXRpb24taWQ9XCJ3YXRjaGxpc3QtaXRlbS1saXN0LWluc3RydW1lbnQtc2VudGltZW50XCJdLFxuICAgIGV0LWZpZnR5LXR3by13ZWVrcyxcbiAgICBbYXV0b21hdGlvbi1pZD1cIndhdGNobGlzdC1pdGVtLWxpc3QtdXNlci13cmFwcC1pbnZlc3RvcnNcIl1cbiAgICBgLFxuICApLnRvZ2dsZSghb25PZmYpXG59XG5cbmV4cG9ydCBjb25zdCBXYXRjaGxpc3RIZWFkZXI6IFJlYWN0LkZDID0gKCkgPT4ge1xuICBjb25zdCBsaXN0Q29tcGFjdE9uID0gdXNlQXBwU2VsZWN0b3IoXG4gICAgc3RhdGUgPT4gc3RhdGUuc2V0dGluZ3MuYmV0dGVyRXRvcm9VSUNvbmZpZy5saXN0Q29tcGFjdE9uLFxuICApXG4gIGNvbnN0IGRpc3BhdGNoID0gdXNlQXBwRGlzcGF0Y2goKVxuICBjb25zdCBbZmlsdGVyVGV4dCwgZmlsdGVyVGV4dFNldF0gPSBSZWFjdC51c2VTdGF0ZTxzdHJpbmcgfCB1bmRlZmluZWQ+KCcnKVxuICBjb25zdCBzZWFyY2hCb3hSZWYgPSBSZWFjdC5jcmVhdGVSZWY8VGV4dEZpZWxkQmFzZT4oKVxuXG4gIHVzZU1vdW50KCgpID0+IHtcbiAgICB0b2dnbGVMaXN0Q29tcGFjdChsaXN0Q29tcGFjdE9uKVxuICB9KVxuXG4gIHJldHVybiAoXG4gICAgPFN0YWNrIGhvcml6b250YWwgdG9rZW5zPXt7IGNoaWxkcmVuR2FwOiAxNiB9fSBjbGFzc05hbWU9e05BTUVfSEFTX0ZMQUd9PlxuICAgICAgPFN0YWNrLkl0ZW0+XG4gICAgICAgIDxUZXh0RmllbGRcbiAgICAgICAgICBjb21wb25lbnRSZWY9e3NlYXJjaEJveFJlZn1cbiAgICAgICAgICBwbGFjZWhvbGRlcj17aTE4bi7ovLjlhaXku6XpgY7mv74oKX1cbiAgICAgICAgICBpY29uUHJvcHM9e3sgaWNvbk5hbWU6IGZpbHRlclRleHQgPyAnRmlsdGVyU29saWQnIDogJ0ZpbHRlcicgfX1cbiAgICAgICAgICBvbkNoYW5nZT17KGV2ZW50LCBuZXdWYWx1ZSkgPT4ge1xuICAgICAgICAgICAgZmlsdGVyVGV4dFNldChuZXdWYWx1ZSlcbiAgICAgICAgICAgIHNob3dNZUJ5KG5ld1ZhbHVlKVxuICAgICAgICAgIH19XG4gICAgICAgICAgb25Nb3VzZUVudGVyPXsoKSA9PiB7XG4gICAgICAgICAgICAvLyBzZXRUaW1lb3V0IOmBv+WFjSBwb2x5ZmlsbHMtZXM1IOWgsemMryBDYW5ub3QgYXNzaWduIHRvIHJlYWQgb25seSBwcm9wZXJ0eSAnZXZlbnQnIG9mIG9iamVjdCAnW29iamVjdCBPYmplY3RdJ1xuICAgICAgICAgICAgZ2xvYmFsVGhpcy5zZXRUaW1lb3V0KCgpID0+IHtcbiAgICAgICAgICAgICAgc2VhcmNoQm94UmVmLmN1cnJlbnQ/LmZvY3VzKClcbiAgICAgICAgICAgIH0pXG4gICAgICAgICAgfX1cbiAgICAgICAgLz5cbiAgICAgIDwvU3RhY2suSXRlbT5cbiAgICAgIDxTdGFjay5JdGVtPlxuICAgICAgICA8VG9nZ2xlXG4gICAgICAgICAgbGFiZWw9e2kxOG4u5L2/57eK5rmKKCl9XG4gICAgICAgICAgaW5saW5lTGFiZWxcbiAgICAgICAgICBjaGVja2VkPXtsaXN0Q29tcGFjdE9ufVxuICAgICAgICAgIG9uQ2xpY2s9eygpID0+IHtcbiAgICAgICAgICAgIHN0b3JhZ2Uuc2F2ZUNvbmZpZyh7IGxpc3RDb21wYWN0T246ICFsaXN0Q29tcGFjdE9uIH0pXG4gICAgICAgICAgICB0b2dnbGVMaXN0Q29tcGFjdCghbGlzdENvbXBhY3RPbilcbiAgICAgICAgICAgIGRpc3BhdGNoKHNldExpc3RDb21wYWN0KCFsaXN0Q29tcGFjdE9uKSlcbiAgICAgICAgICB9fVxuICAgICAgICAvPlxuICAgICAgPC9TdGFjay5JdGVtPlxuICAgIDwvU3RhY2s+XG4gIClcbn1cblxuZXhwb3J0IGNvbnN0IHdhdGNobGlzdEhlYWRlckhhc1JlYWR5ID0gKCkgPT4gISEkKGAuJHtOQU1FX0hBU19GTEFHfWApLmxlbmd0aFxuXG5leHBvcnQgY29uc3Qgd2F0Y2hsaXN0SGVhZGVyQ29uc3RydWN0b3IgPSAoKSA9PiB7XG4gIGlmICh3YXRjaGxpc3RIZWFkZXJIYXNSZWFkeSgpKSB7XG4gICAgcmV0dXJuXG4gIH1cblxuICBjb25zdCBoZWFkZXJXcmFwID0gJCgnLndhdGNobGlzdC1oZWFkZXInKVxuICBjb25zdCBidXR0b25XYXJwID0gaGVhZGVyV3JhcC5maW5kKCcud2F0Y2gtbGlzdC1idXR0b25zJylcblxuICBpZiAoYnV0dG9uV2FycC5sZW5ndGggJiYgISQoYCMke3dhdGNobGlzdEhlYWRlckNvbnN0cnVjdG9yLm5hbWV9YCkubGVuZ3RoKSB7XG4gICAgYnV0dG9uV2FycC5wcmVwZW5kKGA8c3BhbiBpZD0nJHt3YXRjaGxpc3RIZWFkZXJDb25zdHJ1Y3Rvci5uYW1lfSc+PC9zcGFuPmApXG4gIH1cblxuICBnbG9iYWxUaGlzLmRvY3VtZW50LnF1ZXJ5U2VsZWN0b3IoYCMke3dhdGNobGlzdEhlYWRlckNvbnN0cnVjdG9yLm5hbWV9YCkgJiZcbiAgICBSZWFjdERPTS5yZW5kZXIoXG4gICAgICA8UHJvdmlkZXIgc3RvcmU9e3N0b3JlfT5cbiAgICAgICAgPFdhdGNobGlzdEhlYWRlcj48L1dhdGNobGlzdEhlYWRlcj5cbiAgICAgIDwvUHJvdmlkZXI+LFxuICAgICAgZ2xvYmFsVGhpcy5kb2N1bWVudC5xdWVyeVNlbGVjdG9yKGAjJHt3YXRjaGxpc3RIZWFkZXJDb25zdHJ1Y3Rvci5uYW1lfWApLFxuICAgIClcbn1cblxuR00uYWRkU3R5bGUoYFxuICAjJHt3YXRjaGxpc3RIZWFkZXJDb25zdHJ1Y3Rvci5uYW1lfSB7XG4gICAgbWFyZ2luLXRvcDogMThweDtcbiAgfVxuYClcbiJdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBQUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBRUE7QUFDQTtBQUNBO0FBQUE7QUFDQTtBQUFBO0FBQ0E7QUFFQTtBQUdBO0FBQ0E7QUFJQTtBQUNBO0FBS0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBUUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUFBO0FBRUE7QUFDQTtBQUxBO0FBQUE7QUFBQTtBQUFBO0FBQ0E7QUFLQTtBQUVBO0FBQ0E7QUFDQTtBQUVBO0FBQ0E7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBR0E7QUFDQTtBQUNBO0FBQUE7QUFBQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQUE7QUFDQTtBQUFBO0FBQ0E7QUFDQTtBQWJBO0FBa0JBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFBQTtBQUFBO0FBQ0E7QUFDQTtBQUNBO0FBUkE7QUFhQTtBQUVBO0FBQUE7QUFBQTtBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBRUE7QUFBQTtBQUtBO0FBRUEiLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///./src/components/WatchlistHeader/WatchlistHeader.tsx\n"); +eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"WatchlistHeader\", function() { return WatchlistHeader; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"watchlistHeaderHasReady\", function() { return watchlistHeaderHasReady; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"watchlistHeaderConstructor\", function() { return watchlistHeaderConstructor; });\n/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! react */ \"./node_modules/react/index.js\");\n/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_0__);\n/* harmony import */ var react_dom__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! react-dom */ \"./node_modules/react-dom/index.js\");\n/* harmony import */ var react_dom__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(react_dom__WEBPACK_IMPORTED_MODULE_1__);\n/* harmony import */ var react_redux__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! react-redux */ \"./node_modules/react-redux/lib/index.js\");\n/* harmony import */ var react_redux__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(react_redux__WEBPACK_IMPORTED_MODULE_2__);\n/* harmony import */ var _store_store__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! @/store/_store */ \"./src/store/_store.ts\");\n/* harmony import */ var _i18n__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! @/i18n */ \"./src/i18n.tsx\");\n/* harmony import */ var _GM__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! @/GM */ \"./src/GM.ts\");\n/* harmony import */ var _storage__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! @/storage */ \"./src/storage.ts\");\n/* harmony import */ var _hooks_useAppSelector__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! @/hooks/useAppSelector */ \"./src/hooks/useAppSelector.ts\");\n/* harmony import */ var _hooks_useAppDispatch__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! @/hooks/useAppDispatch */ \"./src/hooks/useAppDispatch.ts\");\n/* harmony import */ var _actions_setListCompact__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(/*! @/actions/setListCompact */ \"./src/actions/setListCompact.ts\");\n/* harmony import */ var react_use__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(/*! react-use */ \"./node_modules/react-use/lib/index.js\");\n/* harmony import */ var react_use__WEBPACK_IMPORTED_MODULE_10___default = /*#__PURE__*/__webpack_require__.n(react_use__WEBPACK_IMPORTED_MODULE_10__);\n/* harmony import */ var _fluentui_react__WEBPACK_IMPORTED_MODULE_11__ = __webpack_require__(/*! @fluentui/react */ \"./node_modules/@fluentui/react/lib-commonjs/index.js\");\n/* harmony import */ var _fluentui_react__WEBPACK_IMPORTED_MODULE_11___default = /*#__PURE__*/__webpack_require__.n(_fluentui_react__WEBPACK_IMPORTED_MODULE_11__);\n/* harmony import */ var _actions_setBetterEtoroUIConfig__WEBPACK_IMPORTED_MODULE_12__ = __webpack_require__(/*! @/actions/setBetterEtoroUIConfig */ \"./src/actions/setBetterEtoroUIConfig.ts\");\nfunction _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest(); }\n\nfunction _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.\"); }\n\nfunction _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); }\n\nfunction _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; }\n\nfunction _iterableToArrayLimit(arr, i) { if (typeof Symbol === \"undefined\" || !(Symbol.iterator in Object(arr))) return; var _arr = []; var _n = true; var _d = false; var _e = undefined; try { for (var _i = arr[Symbol.iterator](), _s; !(_n = (_s = _i.next()).done); _n = true) { _arr.push(_s.value); if (i && _arr.length === i) break; } } catch (err) { _d = true; _e = err; } finally { try { if (!_n && _i[\"return\"] != null) _i[\"return\"](); } finally { if (_d) throw _e; } } return _arr; }\n\nfunction _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nvar NAME_HAS_FLAG = 'etoro-better-ui-WatchlistHeader-is-ready';\n\nvar showMeBy = function showMeBy() {\n var filterText = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : '';\n\n if (filterText) {\n $('et-user-row, et-user-card, et-instrument-row, et-instrument-card').hide();\n $('[automation-id=trade-item-name], [automation-id=\"trade-item-full-name\"]').each(function (index, element) {\n var didMatch = element.innerText.trim().toUpperCase().includes(filterText.trim().toUpperCase());\n\n if (didMatch) {\n $(element).closest('et-user-row, et-user-card, et-instrument-row, et-instrument-card').show();\n }\n });\n } else {\n $('et-user-row, et-user-card, et-instrument-row, et-instrument-card').show();\n }\n};\n\nvar toggleListInvested = function toggleListInvested(onOff) {\n if (onOff) {\n $('et-instrument-row, et-user-row').hide();\n $('.instrument-list-pie-link').closest('et-instrument-row, et-user-row').show();\n } else {\n $('et-instrument-row, et-user-row').show();\n }\n};\n\nvar toggleListCompact = function toggleListCompact(onOff) {\n $(\"\\n [automation-id=\\\"watchlist-item-list-instrument-chart\\\"],\\n [automation-id=\\\"watchlist-item-list-instrument-sentiment\\\"],\\n et-fifty-two-weeks,\\n [automation-id=\\\"watchlist-item-list-user-wrapp-investors\\\"]\\n \").toggle(!onOff);\n};\n\nvar WatchlistHeader = function WatchlistHeader() {\n var listCompactOn = Object(_hooks_useAppSelector__WEBPACK_IMPORTED_MODULE_7__[\"useAppSelector\"])(function (state) {\n return state.settings.betterEtoroUIConfig.listCompactOn;\n });\n var shouldShowInvested = Object(_store_store__WEBPACK_IMPORTED_MODULE_3__[\"useTypedSelector\"])(function (state) {\n return state.settings.betterEtoroUIConfig.showInvested;\n });\n var dispatch = Object(_hooks_useAppDispatch__WEBPACK_IMPORTED_MODULE_8__[\"useAppDispatch\"])();\n\n var _React$useState = react__WEBPACK_IMPORTED_MODULE_0___default.a.useState(''),\n _React$useState2 = _slicedToArray(_React$useState, 2),\n filterText = _React$useState2[0],\n filterTextSet = _React$useState2[1];\n\n var searchBoxRef = react__WEBPACK_IMPORTED_MODULE_0___default.a.createRef();\n Object(react_use__WEBPACK_IMPORTED_MODULE_10__[\"useMount\"])(function () {\n toggleListCompact(listCompactOn);\n toggleListInvested(shouldShowInvested);\n });\n return react__WEBPACK_IMPORTED_MODULE_0___default.a.createElement(_fluentui_react__WEBPACK_IMPORTED_MODULE_11__[\"Stack\"], {\n horizontal: true,\n tokens: {\n childrenGap: 16\n },\n className: NAME_HAS_FLAG\n }, react__WEBPACK_IMPORTED_MODULE_0___default.a.createElement(_fluentui_react__WEBPACK_IMPORTED_MODULE_11__[\"Stack\"].Item, null, react__WEBPACK_IMPORTED_MODULE_0___default.a.createElement(_fluentui_react__WEBPACK_IMPORTED_MODULE_11__[\"TextField\"], {\n componentRef: searchBoxRef,\n placeholder: _i18n__WEBPACK_IMPORTED_MODULE_4__[\"i18n\"].輸入以過濾(),\n iconProps: {\n iconName: filterText ? 'FilterSolid' : 'Filter'\n },\n onChange: function onChange(event, newValue) {\n filterTextSet(newValue);\n showMeBy(newValue);\n\n if (!newValue) {\n toggleListInvested(shouldShowInvested);\n }\n },\n onMouseEnter: function onMouseEnter() {\n // setTimeout 避免 polyfills-es5 報錯 Cannot assign to read only property 'event' of object '[object Object]'\n globalThis.setTimeout(function () {\n var _searchBoxRef$current;\n\n (_searchBoxRef$current = searchBoxRef.current) === null || _searchBoxRef$current === void 0 ? void 0 : _searchBoxRef$current.focus();\n });\n },\n onKeyDown: function onKeyDown(event) {\n if (event.key.toLowerCase() === 'enter') {\n $('[automation-id=\"buy-sell-button-container-buy\"]:visible').eq(0).click();\n }\n }\n })), react__WEBPACK_IMPORTED_MODULE_0___default.a.createElement(_fluentui_react__WEBPACK_IMPORTED_MODULE_11__[\"Stack\"].Item, null, react__WEBPACK_IMPORTED_MODULE_0___default.a.createElement(_fluentui_react__WEBPACK_IMPORTED_MODULE_11__[\"Toggle\"], {\n label: _i18n__WEBPACK_IMPORTED_MODULE_4__[\"i18n\"].使緊湊(),\n inlineLabel: true,\n checked: listCompactOn,\n onClick: function onClick() {\n _storage__WEBPACK_IMPORTED_MODULE_6__[\"storage\"].saveConfig({\n listCompactOn: !listCompactOn\n });\n toggleListCompact(!listCompactOn);\n dispatch(Object(_actions_setListCompact__WEBPACK_IMPORTED_MODULE_9__[\"setListCompact\"])(!listCompactOn));\n }\n })), react__WEBPACK_IMPORTED_MODULE_0___default.a.createElement(_fluentui_react__WEBPACK_IMPORTED_MODULE_11__[\"Stack\"].Item, null, react__WEBPACK_IMPORTED_MODULE_0___default.a.createElement(_fluentui_react__WEBPACK_IMPORTED_MODULE_11__[\"Toggle\"], {\n label: _i18n__WEBPACK_IMPORTED_MODULE_4__[\"i18n\"].使已投資顯示(),\n inlineLabel: true,\n checked: shouldShowInvested,\n onClick: function onClick() {\n toggleListInvested(!shouldShowInvested);\n dispatch(Object(_actions_setBetterEtoroUIConfig__WEBPACK_IMPORTED_MODULE_12__[\"setBetterEtoroUIConfig\"])({\n showInvested: !shouldShowInvested\n }));\n }\n })));\n};\nvar watchlistHeaderHasReady = function watchlistHeaderHasReady() {\n return !!$(\".\".concat(NAME_HAS_FLAG)).length;\n};\nvar watchlistHeaderConstructor = function watchlistHeaderConstructor() {\n if (watchlistHeaderHasReady()) {\n return;\n }\n\n var headerWrap = $('.watchlist-header');\n var buttonWarp = headerWrap.find('.watch-list-buttons');\n\n if (buttonWarp.length && !$(\"#\".concat(watchlistHeaderConstructor.name)).length) {\n buttonWarp.prepend(\"\"));\n }\n\n globalThis.document.querySelector(\"#\".concat(watchlistHeaderConstructor.name)) && react_dom__WEBPACK_IMPORTED_MODULE_1___default.a.render(react__WEBPACK_IMPORTED_MODULE_0___default.a.createElement(react_redux__WEBPACK_IMPORTED_MODULE_2__[\"Provider\"], {\n store: _store_store__WEBPACK_IMPORTED_MODULE_3__[\"default\"]\n }, react__WEBPACK_IMPORTED_MODULE_0___default.a.createElement(WatchlistHeader, null)), globalThis.document.querySelector(\"#\".concat(watchlistHeaderConstructor.name)));\n};\n_GM__WEBPACK_IMPORTED_MODULE_5__[\"GM\"].addStyle(\"\\n #\".concat(watchlistHeaderConstructor.name, \" {\\n margin-top: 18px;\\n }\\n\"));//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiLi9zcmMvY29tcG9uZW50cy9XYXRjaGxpc3RIZWFkZXIvV2F0Y2hsaXN0SGVhZGVyLnRzeC5qcyIsInNvdXJjZXMiOlsid2VicGFjazovLy8uL3NyYy9jb21wb25lbnRzL1dhdGNobGlzdEhlYWRlci9XYXRjaGxpc3RIZWFkZXIudHN4PzBhYTYiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IFJlYWN0IGZyb20gJ3JlYWN0J1xuaW1wb3J0IFJlYWN0RE9NIGZyb20gJ3JlYWN0LWRvbSdcbmltcG9ydCB7IFByb3ZpZGVyIH0gZnJvbSAncmVhY3QtcmVkdXgnXG5pbXBvcnQgc3RvcmUsIHsgdXNlVHlwZWRTZWxlY3RvciB9IGZyb20gJ0Avc3RvcmUvX3N0b3JlJ1xuaW1wb3J0IHsgaTE4biB9IGZyb20gJ0AvaTE4bidcbmltcG9ydCB7IEdNIH0gZnJvbSAnQC9HTSdcbmltcG9ydCB7IElucHV0R3JvdXAsIEJ1dHRvbiwgQ29udHJvbEdyb3VwIH0gZnJvbSAnQGJsdWVwcmludGpzL2NvcmUnXG5pbXBvcnQgeyBzdG9yYWdlIH0gZnJvbSAnQC9zdG9yYWdlJ1xuaW1wb3J0IHsgdXNlQXBwU2VsZWN0b3IgfSBmcm9tICdAL2hvb2tzL3VzZUFwcFNlbGVjdG9yJ1xuaW1wb3J0IHsgdXNlQXBwRGlzcGF0Y2ggfSBmcm9tICdAL2hvb2tzL3VzZUFwcERpc3BhdGNoJ1xuaW1wb3J0IHsgc2V0TGlzdENvbXBhY3QgfSBmcm9tICdAL2FjdGlvbnMvc2V0TGlzdENvbXBhY3QnXG5pbXBvcnQgeyB1c2VNb3VudCB9IGZyb20gJ3JlYWN0LXVzZSdcbmltcG9ydCB7IFRvZ2dsZSwgVGV4dEZpZWxkLCBTdGFjaywgVGV4dEZpZWxkQmFzZSB9IGZyb20gJ0BmbHVlbnR1aS9yZWFjdCdcbmltcG9ydCB7IHNldEJldHRlckV0b3JvVUlDb25maWcgfSBmcm9tICdAL2FjdGlvbnMvc2V0QmV0dGVyRXRvcm9VSUNvbmZpZydcblxuY29uc3QgTkFNRV9IQVNfRkxBRyA9ICdldG9yby1iZXR0ZXItdWktV2F0Y2hsaXN0SGVhZGVyLWlzLXJlYWR5J1xuXG5jb25zdCBzaG93TWVCeSA9IChmaWx0ZXJUZXh0ID0gJycpID0+IHtcbiAgaWYgKGZpbHRlclRleHQpIHtcbiAgICAkKCdldC11c2VyLXJvdywgZXQtdXNlci1jYXJkLCBldC1pbnN0cnVtZW50LXJvdywgZXQtaW5zdHJ1bWVudC1jYXJkJykuaGlkZSgpXG5cbiAgICAkKFxuICAgICAgJ1thdXRvbWF0aW9uLWlkPXRyYWRlLWl0ZW0tbmFtZV0sIFthdXRvbWF0aW9uLWlkPVwidHJhZGUtaXRlbS1mdWxsLW5hbWVcIl0nLFxuICAgICkuZWFjaCgoaW5kZXgsIGVsZW1lbnQpID0+IHtcbiAgICAgIGNvbnN0IGRpZE1hdGNoID0gZWxlbWVudC5pbm5lclRleHRcbiAgICAgICAgLnRyaW0oKVxuICAgICAgICAudG9VcHBlckNhc2UoKVxuICAgICAgICAuaW5jbHVkZXMoZmlsdGVyVGV4dC50cmltKCkudG9VcHBlckNhc2UoKSlcblxuICAgICAgaWYgKGRpZE1hdGNoKSB7XG4gICAgICAgICQoZWxlbWVudClcbiAgICAgICAgICAuY2xvc2VzdChcbiAgICAgICAgICAgICdldC11c2VyLXJvdywgZXQtdXNlci1jYXJkLCBldC1pbnN0cnVtZW50LXJvdywgZXQtaW5zdHJ1bWVudC1jYXJkJyxcbiAgICAgICAgICApXG4gICAgICAgICAgLnNob3coKVxuICAgICAgfVxuICAgIH0pXG4gIH0gZWxzZSB7XG4gICAgJCgnZXQtdXNlci1yb3csIGV0LXVzZXItY2FyZCwgZXQtaW5zdHJ1bWVudC1yb3csIGV0LWluc3RydW1lbnQtY2FyZCcpLnNob3coKVxuICB9XG59XG5cbmNvbnN0IHRvZ2dsZUxpc3RJbnZlc3RlZCA9IChvbk9mZjogYm9vbGVhbikgPT4ge1xuICBpZiAob25PZmYpIHtcbiAgICAkKCdldC1pbnN0cnVtZW50LXJvdywgZXQtdXNlci1yb3cnKS5oaWRlKClcbiAgICAkKCcuaW5zdHJ1bWVudC1saXN0LXBpZS1saW5rJylcbiAgICAgIC5jbG9zZXN0KCdldC1pbnN0cnVtZW50LXJvdywgZXQtdXNlci1yb3cnKVxuICAgICAgLnNob3coKVxuICB9IGVsc2Uge1xuICAgICQoJ2V0LWluc3RydW1lbnQtcm93LCBldC11c2VyLXJvdycpLnNob3coKVxuICB9XG59XG5cbmNvbnN0IHRvZ2dsZUxpc3RDb21wYWN0ID0gKG9uT2ZmOiBib29sZWFuKSA9PiB7XG4gICQoXG4gICAgYFxuICAgIFthdXRvbWF0aW9uLWlkPVwid2F0Y2hsaXN0LWl0ZW0tbGlzdC1pbnN0cnVtZW50LWNoYXJ0XCJdLFxuICAgIFthdXRvbWF0aW9uLWlkPVwid2F0Y2hsaXN0LWl0ZW0tbGlzdC1pbnN0cnVtZW50LXNlbnRpbWVudFwiXSxcbiAgICBldC1maWZ0eS10d28td2Vla3MsXG4gICAgW2F1dG9tYXRpb24taWQ9XCJ3YXRjaGxpc3QtaXRlbS1saXN0LXVzZXItd3JhcHAtaW52ZXN0b3JzXCJdXG4gICAgYCxcbiAgKS50b2dnbGUoIW9uT2ZmKVxufVxuXG5leHBvcnQgY29uc3QgV2F0Y2hsaXN0SGVhZGVyOiBSZWFjdC5GQyA9ICgpID0+IHtcbiAgY29uc3QgbGlzdENvbXBhY3RPbiA9IHVzZUFwcFNlbGVjdG9yKFxuICAgIHN0YXRlID0+IHN0YXRlLnNldHRpbmdzLmJldHRlckV0b3JvVUlDb25maWcubGlzdENvbXBhY3RPbixcbiAgKVxuICBjb25zdCBzaG91bGRTaG93SW52ZXN0ZWQgPSB1c2VUeXBlZFNlbGVjdG9yKFxuICAgIHN0YXRlID0+IHN0YXRlLnNldHRpbmdzLmJldHRlckV0b3JvVUlDb25maWcuc2hvd0ludmVzdGVkLFxuICApXG4gIGNvbnN0IGRpc3BhdGNoID0gdXNlQXBwRGlzcGF0Y2goKVxuICBjb25zdCBbZmlsdGVyVGV4dCwgZmlsdGVyVGV4dFNldF0gPSBSZWFjdC51c2VTdGF0ZTxzdHJpbmcgfCB1bmRlZmluZWQ+KCcnKVxuICBjb25zdCBzZWFyY2hCb3hSZWYgPSBSZWFjdC5jcmVhdGVSZWY8VGV4dEZpZWxkQmFzZT4oKVxuXG4gIHVzZU1vdW50KCgpID0+IHtcbiAgICB0b2dnbGVMaXN0Q29tcGFjdChsaXN0Q29tcGFjdE9uKVxuICAgIHRvZ2dsZUxpc3RJbnZlc3RlZChzaG91bGRTaG93SW52ZXN0ZWQpXG4gIH0pXG5cbiAgcmV0dXJuIChcbiAgICA8U3RhY2sgaG9yaXpvbnRhbCB0b2tlbnM9e3sgY2hpbGRyZW5HYXA6IDE2IH19IGNsYXNzTmFtZT17TkFNRV9IQVNfRkxBR30+XG4gICAgICA8U3RhY2suSXRlbT5cbiAgICAgICAgPFRleHRGaWVsZFxuICAgICAgICAgIGNvbXBvbmVudFJlZj17c2VhcmNoQm94UmVmfVxuICAgICAgICAgIHBsYWNlaG9sZGVyPXtpMThuLui8uOWFpeS7pemBjua/vigpfVxuICAgICAgICAgIGljb25Qcm9wcz17eyBpY29uTmFtZTogZmlsdGVyVGV4dCA/ICdGaWx0ZXJTb2xpZCcgOiAnRmlsdGVyJyB9fVxuICAgICAgICAgIG9uQ2hhbmdlPXsoZXZlbnQsIG5ld1ZhbHVlKSA9PiB7XG4gICAgICAgICAgICBmaWx0ZXJUZXh0U2V0KG5ld1ZhbHVlKVxuICAgICAgICAgICAgc2hvd01lQnkobmV3VmFsdWUpXG5cbiAgICAgICAgICAgIGlmICghbmV3VmFsdWUpIHtcbiAgICAgICAgICAgICAgdG9nZ2xlTGlzdEludmVzdGVkKHNob3VsZFNob3dJbnZlc3RlZClcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9fVxuICAgICAgICAgIG9uTW91c2VFbnRlcj17KCkgPT4ge1xuICAgICAgICAgICAgLy8gc2V0VGltZW91dCDpgb/lhY0gcG9seWZpbGxzLWVzNSDloLHpjK8gQ2Fubm90IGFzc2lnbiB0byByZWFkIG9ubHkgcHJvcGVydHkgJ2V2ZW50JyBvZiBvYmplY3QgJ1tvYmplY3QgT2JqZWN0XSdcbiAgICAgICAgICAgIGdsb2JhbFRoaXMuc2V0VGltZW91dCgoKSA9PiB7XG4gICAgICAgICAgICAgIHNlYXJjaEJveFJlZi5jdXJyZW50Py5mb2N1cygpXG4gICAgICAgICAgICB9KVxuICAgICAgICAgIH19XG4gICAgICAgICAgb25LZXlEb3duPXtldmVudCA9PiB7XG4gICAgICAgICAgICBpZiAoZXZlbnQua2V5LnRvTG93ZXJDYXNlKCkgPT09ICdlbnRlcicpIHtcbiAgICAgICAgICAgICAgJCgnW2F1dG9tYXRpb24taWQ9XCJidXktc2VsbC1idXR0b24tY29udGFpbmVyLWJ1eVwiXTp2aXNpYmxlJylcbiAgICAgICAgICAgICAgICAuZXEoMClcbiAgICAgICAgICAgICAgICAuY2xpY2soKVxuICAgICAgICAgICAgfVxuICAgICAgICAgIH19XG4gICAgICAgIC8+XG4gICAgICA8L1N0YWNrLkl0ZW0+XG5cbiAgICAgIDxTdGFjay5JdGVtPlxuICAgICAgICA8VG9nZ2xlXG4gICAgICAgICAgbGFiZWw9e2kxOG4u5L2/57eK5rmKKCl9XG4gICAgICAgICAgaW5saW5lTGFiZWxcbiAgICAgICAgICBjaGVja2VkPXtsaXN0Q29tcGFjdE9ufVxuICAgICAgICAgIG9uQ2xpY2s9eygpID0+IHtcbiAgICAgICAgICAgIHN0b3JhZ2Uuc2F2ZUNvbmZpZyh7IGxpc3RDb21wYWN0T246ICFsaXN0Q29tcGFjdE9uIH0pXG4gICAgICAgICAgICB0b2dnbGVMaXN0Q29tcGFjdCghbGlzdENvbXBhY3RPbilcbiAgICAgICAgICAgIGRpc3BhdGNoKHNldExpc3RDb21wYWN0KCFsaXN0Q29tcGFjdE9uKSlcbiAgICAgICAgICB9fVxuICAgICAgICAvPlxuICAgICAgPC9TdGFjay5JdGVtPlxuXG4gICAgICA8U3RhY2suSXRlbT5cbiAgICAgICAgPFRvZ2dsZVxuICAgICAgICAgIGxhYmVsPXtpMThuLuS9v+W3suaKleizh+mhr+ekuigpfVxuICAgICAgICAgIGlubGluZUxhYmVsXG4gICAgICAgICAgY2hlY2tlZD17c2hvdWxkU2hvd0ludmVzdGVkfVxuICAgICAgICAgIG9uQ2xpY2s9eygpID0+IHtcbiAgICAgICAgICAgIHRvZ2dsZUxpc3RJbnZlc3RlZCghc2hvdWxkU2hvd0ludmVzdGVkKVxuICAgICAgICAgICAgZGlzcGF0Y2goXG4gICAgICAgICAgICAgIHNldEJldHRlckV0b3JvVUlDb25maWcoeyBzaG93SW52ZXN0ZWQ6ICFzaG91bGRTaG93SW52ZXN0ZWQgfSksXG4gICAgICAgICAgICApXG4gICAgICAgICAgfX1cbiAgICAgICAgLz5cbiAgICAgIDwvU3RhY2suSXRlbT5cbiAgICA8L1N0YWNrPlxuICApXG59XG5cbmV4cG9ydCBjb25zdCB3YXRjaGxpc3RIZWFkZXJIYXNSZWFkeSA9ICgpID0+ICEhJChgLiR7TkFNRV9IQVNfRkxBR31gKS5sZW5ndGhcblxuZXhwb3J0IGNvbnN0IHdhdGNobGlzdEhlYWRlckNvbnN0cnVjdG9yID0gKCkgPT4ge1xuICBpZiAod2F0Y2hsaXN0SGVhZGVySGFzUmVhZHkoKSkge1xuICAgIHJldHVyblxuICB9XG5cbiAgY29uc3QgaGVhZGVyV3JhcCA9ICQoJy53YXRjaGxpc3QtaGVhZGVyJylcbiAgY29uc3QgYnV0dG9uV2FycCA9IGhlYWRlcldyYXAuZmluZCgnLndhdGNoLWxpc3QtYnV0dG9ucycpXG5cbiAgaWYgKGJ1dHRvbldhcnAubGVuZ3RoICYmICEkKGAjJHt3YXRjaGxpc3RIZWFkZXJDb25zdHJ1Y3Rvci5uYW1lfWApLmxlbmd0aCkge1xuICAgIGJ1dHRvbldhcnAucHJlcGVuZChgPHNwYW4gaWQ9JyR7d2F0Y2hsaXN0SGVhZGVyQ29uc3RydWN0b3IubmFtZX0nPjwvc3Bhbj5gKVxuICB9XG5cbiAgZ2xvYmFsVGhpcy5kb2N1bWVudC5xdWVyeVNlbGVjdG9yKGAjJHt3YXRjaGxpc3RIZWFkZXJDb25zdHJ1Y3Rvci5uYW1lfWApICYmXG4gICAgUmVhY3RET00ucmVuZGVyKFxuICAgICAgPFByb3ZpZGVyIHN0b3JlPXtzdG9yZX0+XG4gICAgICAgIDxXYXRjaGxpc3RIZWFkZXI+PC9XYXRjaGxpc3RIZWFkZXI+XG4gICAgICA8L1Byb3ZpZGVyPixcbiAgICAgIGdsb2JhbFRoaXMuZG9jdW1lbnQucXVlcnlTZWxlY3RvcihgIyR7d2F0Y2hsaXN0SGVhZGVyQ29uc3RydWN0b3IubmFtZX1gKSxcbiAgICApXG59XG5cbkdNLmFkZFN0eWxlKGBcbiAgIyR7d2F0Y2hsaXN0SGVhZGVyQ29uc3RydWN0b3IubmFtZX0ge1xuICAgIG1hcmdpbi10b3A6IDE4cHg7XG4gIH1cbmApXG4iXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFBQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUVBO0FBQ0E7QUFDQTtBQUFBO0FBQ0E7QUFBQTtBQUNBO0FBRUE7QUFHQTtBQUNBO0FBSUE7QUFDQTtBQUtBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFHQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQVFBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFBQTtBQUVBO0FBQ0E7QUFBQTtBQUVBO0FBQ0E7QUFSQTtBQUFBO0FBQUE7QUFBQTtBQUNBO0FBUUE7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUVBO0FBQ0E7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBR0E7QUFDQTtBQUNBO0FBQUE7QUFBQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFBQTtBQUNBO0FBQUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBR0E7QUFDQTtBQXhCQTtBQThCQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQUE7QUFBQTtBQUNBO0FBQ0E7QUFDQTtBQVJBO0FBY0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFBQTtBQUVBO0FBVEE7QUFjQTtBQUVBO0FBQUE7QUFBQTtBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBRUE7QUFBQTtBQUtBO0FBRUEiLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///./src/components/WatchlistHeader/WatchlistHeader.tsx\n"); /***/ }), @@ -14396,7 +14420,7 @@ eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export (binding) * /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; -eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"Events\", function() { return Events; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"emitter\", function() { return emitter; });\n/* harmony import */ var emittery__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! emittery */ \"./node_modules/emittery/index.js\");\n/* harmony import */ var emittery__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(emittery__WEBPACK_IMPORTED_MODULE_0__);\n/* harmony import */ var _debugAPI__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @/debugAPI */ \"./src/debugAPI.ts\");\n/* eslint-disable @typescript-eslint/no-unsafe-return */\n\n\nvar Events;\n\n(function (Events) {\n Events[\"ready\"] = \"ready\";\n Events[\"onPing\"] = \"onPing\";\n Events[\"settingChange\"] = \"settingChange\";\n Events[\"onWatchlistPageHover\"] = \"onWatchlistPageHover\";\n Events[\"onPortfolioPageHover\"] = \"onPortfolioPageHover\";\n Events[\"onSidebarHover\"] = \"onSidebarHover\";\n Events[\"onDialogHover\"] = \"onDialogHover\";\n})(Events || (Events = {}));\n\nvar emitter = new emittery__WEBPACK_IMPORTED_MODULE_0___default.a.Typed(); // 使每個 emitter 之 events 的接受端\b受到 emit 觸發時,皆會記錄在 console\n\nemitter.on = new Proxy(emitter.on.bind(emitter), {\n apply: function apply(target, key, receiver) {\n if (typeof receiver[1] === 'function') {\n receiver[1] = new Proxy(receiver[1], {\n apply: function apply(listenserTarget, listenserKey, listenserReceiver) {\n _debugAPI__WEBPACK_IMPORTED_MODULE_1__[\"debugAPI\"].events(receiver[0], receiver[1].name);\n return Reflect.apply(listenserTarget, listenserKey, listenserReceiver);\n }\n });\n }\n\n return Reflect.apply(target, key, receiver);\n }\n});//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiLi9zcmMvZW1pdHRlci50cy5qcyIsInNvdXJjZXMiOlsid2VicGFjazovLy8uL3NyYy9lbWl0dGVyLnRzP2Y5NDQiXSwic291cmNlc0NvbnRlbnQiOlsiLyogZXNsaW50LWRpc2FibGUgQHR5cGVzY3JpcHQtZXNsaW50L25vLXVuc2FmZS1yZXR1cm4gKi9cbmltcG9ydCBFbWl0dGVyeSBmcm9tICdlbWl0dGVyeSdcbmltcG9ydCB7IGRlYnVnQVBJIH0gZnJvbSAnQC9kZWJ1Z0FQSSdcblxuZXhwb3J0IGVudW0gRXZlbnRzIHtcbiAgcmVhZHkgPSAncmVhZHknLFxuICBvblBpbmcgPSAnb25QaW5nJyxcbiAgc2V0dGluZ0NoYW5nZSA9ICdzZXR0aW5nQ2hhbmdlJyxcbiAgb25XYXRjaGxpc3RQYWdlSG92ZXIgPSAnb25XYXRjaGxpc3RQYWdlSG92ZXInLFxuICBvblBvcnRmb2xpb1BhZ2VIb3ZlciA9ICdvblBvcnRmb2xpb1BhZ2VIb3ZlcicsXG4gIG9uU2lkZWJhckhvdmVyID0gJ29uU2lkZWJhckhvdmVyJyxcbiAgb25EaWFsb2dIb3ZlciA9ICdvbkRpYWxvZ0hvdmVyJyxcbn1cblxuZXhwb3J0IGNvbnN0IGVtaXR0ZXIgPSBuZXcgRW1pdHRlcnkuVHlwZWQ8XG4gIFJlY29yZDxzdHJpbmcsIGFueT4sXG4gIGtleW9mIHR5cGVvZiBFdmVudHNcbj4oKVxuXG4vLyDkvb/mr4/lgIsgZW1pdHRlciDkuYsgZXZlbnRzIOeahOaOpeWPl+err1xi5Y+X5YiwIGVtaXQg6Ke455m85pmC77yM55qG5pyD6KiY6YyE5ZyoIGNvbnNvbGVcbmVtaXR0ZXIub24gPSBuZXcgUHJveHkoZW1pdHRlci5vbi5iaW5kKGVtaXR0ZXIpLCB7XG4gIGFwcGx5KHRhcmdldCwga2V5LCByZWNlaXZlcjogW0V2ZW50cywgKC4uLmFyZ3MpID0+IGFueV0pIHtcbiAgICBpZiAodHlwZW9mIHJlY2VpdmVyWzFdID09PSAnZnVuY3Rpb24nKSB7XG4gICAgICByZWNlaXZlclsxXSA9IG5ldyBQcm94eShyZWNlaXZlclsxXSwge1xuICAgICAgICBhcHBseShsaXN0ZW5zZXJUYXJnZXQsIGxpc3RlbnNlcktleSwgbGlzdGVuc2VyUmVjZWl2ZXIpIHtcbiAgICAgICAgICBkZWJ1Z0FQSS5ldmVudHMocmVjZWl2ZXJbMF0sIHJlY2VpdmVyWzFdLm5hbWUpXG4gICAgICAgICAgcmV0dXJuIFJlZmxlY3QuYXBwbHkobGlzdGVuc2VyVGFyZ2V0LCBsaXN0ZW5zZXJLZXksIGxpc3RlbnNlclJlY2VpdmVyKVxuICAgICAgICB9LFxuICAgICAgfSlcbiAgICB9XG5cbiAgICByZXR1cm4gUmVmbGVjdC5hcHBseSh0YXJnZXQsIGtleSwgcmVjZWl2ZXIpXG4gIH0sXG59KVxuIl0sIm1hcHBpbmdzIjoiQUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUNBO0FBQ0E7QUFFQTtBQUNBO0FBREE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBS0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUpBO0FBTUE7QUFDQTtBQUNBO0FBQ0E7QUFaQSIsInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///./src/emitter.ts\n"); +eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"Events\", function() { return Events; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"emitter\", function() { return emitter; });\n/* harmony import */ var emittery__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! emittery */ \"./node_modules/emittery/index.js\");\n/* harmony import */ var emittery__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(emittery__WEBPACK_IMPORTED_MODULE_0__);\n/* harmony import */ var _debugAPI__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @/debugAPI */ \"./src/debugAPI.ts\");\n/* eslint-disable @typescript-eslint/no-unsafe-return */\n\n\nvar Events;\n\n(function (Events) {\n Events[\"ready\"] = \"ready\";\n Events[\"onPing\"] = \"onPing\";\n Events[\"settingChange\"] = \"settingChange\";\n Events[\"onWatchlistPageHover\"] = \"onWatchlistPageHover\";\n Events[\"onPortfolioPageHover\"] = \"onPortfolioPageHover\";\n Events[\"onPortfolioHistoryPageHover\"] = \"onPortfolioHistoryPageHover\";\n Events[\"onSidebarHover\"] = \"onSidebarHover\";\n Events[\"onDialogHover\"] = \"onDialogHover\";\n Events[\"onMoreInfoButtonHover\"] = \"onMoreInfoButtonHover\";\n})(Events || (Events = {}));\n\nvar emitter = new emittery__WEBPACK_IMPORTED_MODULE_0___default.a.Typed(); // 使每個 emitter 之 events 的接受端\b受到 emit 觸發時,皆會記錄在 console\n\nemitter.on = new Proxy(emitter.on.bind(emitter), {\n apply: function apply(target, key, receiver) {\n if (typeof receiver[1] === 'function') {\n receiver[1] = new Proxy(receiver[1], {\n apply: function apply(listenserTarget, listenserKey, listenserReceiver) {\n _debugAPI__WEBPACK_IMPORTED_MODULE_1__[\"debugAPI\"].events(receiver[0], receiver[1].name);\n return Reflect.apply(listenserTarget, listenserKey, listenserReceiver);\n }\n });\n }\n\n return Reflect.apply(target, key, receiver);\n }\n});//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiLi9zcmMvZW1pdHRlci50cy5qcyIsInNvdXJjZXMiOlsid2VicGFjazovLy8uL3NyYy9lbWl0dGVyLnRzP2Y5NDQiXSwic291cmNlc0NvbnRlbnQiOlsiLyogZXNsaW50LWRpc2FibGUgQHR5cGVzY3JpcHQtZXNsaW50L25vLXVuc2FmZS1yZXR1cm4gKi9cbmltcG9ydCBFbWl0dGVyeSBmcm9tICdlbWl0dGVyeSdcbmltcG9ydCB7IGRlYnVnQVBJIH0gZnJvbSAnQC9kZWJ1Z0FQSSdcblxuZXhwb3J0IGVudW0gRXZlbnRzIHtcbiAgcmVhZHkgPSAncmVhZHknLFxuICBvblBpbmcgPSAnb25QaW5nJyxcbiAgc2V0dGluZ0NoYW5nZSA9ICdzZXR0aW5nQ2hhbmdlJyxcbiAgb25XYXRjaGxpc3RQYWdlSG92ZXIgPSAnb25XYXRjaGxpc3RQYWdlSG92ZXInLFxuICBvblBvcnRmb2xpb1BhZ2VIb3ZlciA9ICdvblBvcnRmb2xpb1BhZ2VIb3ZlcicsXG4gIG9uUG9ydGZvbGlvSGlzdG9yeVBhZ2VIb3ZlciA9ICdvblBvcnRmb2xpb0hpc3RvcnlQYWdlSG92ZXInLFxuICBvblNpZGViYXJIb3ZlciA9ICdvblNpZGViYXJIb3ZlcicsXG4gIG9uRGlhbG9nSG92ZXIgPSAnb25EaWFsb2dIb3ZlcicsXG4gIG9uTW9yZUluZm9CdXR0b25Ib3ZlciA9ICdvbk1vcmVJbmZvQnV0dG9uSG92ZXInLFxufVxuXG5leHBvcnQgY29uc3QgZW1pdHRlciA9IG5ldyBFbWl0dGVyeS5UeXBlZDxcbiAgUmVjb3JkPHN0cmluZywgYW55PixcbiAga2V5b2YgdHlwZW9mIEV2ZW50c1xuPigpXG5cbi8vIOS9v+avj+WAiyBlbWl0dGVyIOS5iyBldmVudHMg55qE5o6l5Y+X56uvXGLlj5fliLAgZW1pdCDop7jnmbzmmYLvvIznmobmnIPoqJjpjITlnKggY29uc29sZVxuZW1pdHRlci5vbiA9IG5ldyBQcm94eShlbWl0dGVyLm9uLmJpbmQoZW1pdHRlciksIHtcbiAgYXBwbHkodGFyZ2V0LCBrZXksIHJlY2VpdmVyOiBbRXZlbnRzLCAoLi4uYXJncykgPT4gYW55XSkge1xuICAgIGlmICh0eXBlb2YgcmVjZWl2ZXJbMV0gPT09ICdmdW5jdGlvbicpIHtcbiAgICAgIHJlY2VpdmVyWzFdID0gbmV3IFByb3h5KHJlY2VpdmVyWzFdLCB7XG4gICAgICAgIGFwcGx5KGxpc3RlbnNlclRhcmdldCwgbGlzdGVuc2VyS2V5LCBsaXN0ZW5zZXJSZWNlaXZlcikge1xuICAgICAgICAgIGRlYnVnQVBJLmV2ZW50cyhyZWNlaXZlclswXSwgcmVjZWl2ZXJbMV0ubmFtZSlcbiAgICAgICAgICByZXR1cm4gUmVmbGVjdC5hcHBseShsaXN0ZW5zZXJUYXJnZXQsIGxpc3RlbnNlcktleSwgbGlzdGVuc2VyUmVjZWl2ZXIpXG4gICAgICAgIH0sXG4gICAgICB9KVxuICAgIH1cblxuICAgIHJldHVybiBSZWZsZWN0LmFwcGx5KHRhcmdldCwga2V5LCByZWNlaXZlcilcbiAgfSxcbn0pXG4iXSwibWFwcGluZ3MiOiJBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQ0E7QUFDQTtBQUVBO0FBQ0E7QUFEQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBS0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUpBO0FBTUE7QUFDQTtBQUNBO0FBQ0E7QUFaQSIsInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///./src/emitter.ts\n"); /***/ }), @@ -14408,7 +14432,7 @@ eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export (binding) * /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; -eval("__webpack_require__.r(__webpack_exports__);\n/* harmony import */ var _blueprintjs_core_lib_css_blueprint_css__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @blueprintjs/core/lib/css/blueprint.css */ \"./node_modules/@blueprintjs/core/lib/css/blueprint.css\");\n/* harmony import */ var _blueprintjs_core_lib_css_blueprint_css__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_blueprintjs_core_lib_css_blueprint_css__WEBPACK_IMPORTED_MODULE_0__);\n/* harmony import */ var _components_ExecutionDialog__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./components/ExecutionDialog */ \"./src/components/ExecutionDialog/index.tsx\");\n/* harmony import */ var _debugAPI__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./debugAPI */ \"./src/debugAPI.ts\");\n/* harmony import */ var _emitter__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./emitter */ \"./src/emitter.ts\");\n/* harmony import */ var _exchange__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ./exchange */ \"./src/exchange.ts\");\n/* harmony import */ var _GM__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ./GM */ \"./src/GM.ts\");\n/* harmony import */ var _storage__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ./storage */ \"./src/storage.ts\");\n/* harmony import */ var _components_Sidebar_sidebarConstructor__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! @/components/Sidebar/sidebarConstructor */ \"./src/components/Sidebar/sidebarConstructor.tsx\");\n/* harmony import */ var _components_WatchlistHeader_WatchlistHeader__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! @/components/WatchlistHeader/WatchlistHeader */ \"./src/components/WatchlistHeader/WatchlistHeader.tsx\");\n/* harmony import */ var _components_WatchlistUserControls_WatchlistUserControls__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(/*! @/components/WatchlistUserControls/WatchlistUserControls */ \"./src/components/WatchlistUserControls/WatchlistUserControls.tsx\");\n/* harmony import */ var _i18n__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(/*! @/i18n */ \"./src/i18n.tsx\");\n/* harmony import */ var _store_store__WEBPACK_IMPORTED_MODULE_11__ = __webpack_require__(/*! @/store/_store */ \"./src/store/_store.ts\");\n/* harmony import */ var cogo_toast__WEBPACK_IMPORTED_MODULE_12__ = __webpack_require__(/*! cogo-toast */ \"./node_modules/cogo-toast/dist/index.js\");\n/* harmony import */ var cogo_toast__WEBPACK_IMPORTED_MODULE_12___default = /*#__PURE__*/__webpack_require__.n(cogo_toast__WEBPACK_IMPORTED_MODULE_12__);\n/* harmony import */ var lodash__WEBPACK_IMPORTED_MODULE_13__ = __webpack_require__(/*! lodash */ \"./node_modules/lodash/lodash.js\");\n/* harmony import */ var lodash__WEBPACK_IMPORTED_MODULE_13___default = /*#__PURE__*/__webpack_require__.n(lodash__WEBPACK_IMPORTED_MODULE_13__);\n/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_14__ = __webpack_require__(/*! react */ \"./node_modules/react/index.js\");\n/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_14___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_14__);\n/* harmony import */ var react_dom__WEBPACK_IMPORTED_MODULE_15__ = __webpack_require__(/*! react-dom */ \"./node_modules/react-dom/index.js\");\n/* harmony import */ var react_dom__WEBPACK_IMPORTED_MODULE_15___default = /*#__PURE__*/__webpack_require__.n(react_dom__WEBPACK_IMPORTED_MODULE_15__);\n/* harmony import */ var react_redux__WEBPACK_IMPORTED_MODULE_16__ = __webpack_require__(/*! react-redux */ \"./node_modules/react-redux/lib/index.js\");\n/* harmony import */ var react_redux__WEBPACK_IMPORTED_MODULE_16___default = /*#__PURE__*/__webpack_require__.n(react_redux__WEBPACK_IMPORTED_MODULE_16__);\n/* harmony import */ var _components_Portfolio_PortfolioHeaderExtraButtons__WEBPACK_IMPORTED_MODULE_17__ = __webpack_require__(/*! @/components/Portfolio/PortfolioHeaderExtraButtons */ \"./src/components/Portfolio/PortfolioHeaderExtraButtons.tsx\");\n/* harmony import */ var _fluentui_react__WEBPACK_IMPORTED_MODULE_18__ = __webpack_require__(/*! @fluentui/react */ \"./node_modules/@fluentui/react/lib-commonjs/index.js\");\n/* harmony import */ var _fluentui_react__WEBPACK_IMPORTED_MODULE_18___default = /*#__PURE__*/__webpack_require__.n(_fluentui_react__WEBPACK_IMPORTED_MODULE_18__);\n/* harmony import */ var _components_Footer_FooterUnitValues__WEBPACK_IMPORTED_MODULE_19__ = __webpack_require__(/*! @/components/Footer/FooterUnitValues */ \"./src/components/Footer/FooterUnitValues.ts\");\nfunction _typeof(obj) { \"@babel/helpers - typeof\"; if (typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\") { _typeof = function _typeof(obj) { return typeof obj; }; } else { _typeof = function _typeof(obj) { return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj; }; } return _typeof(obj); }\n\nfunction _wrapRegExp(re, groups) { _wrapRegExp = function _wrapRegExp(re, groups) { return new BabelRegExp(re, undefined, groups); }; var _RegExp = _wrapNativeSuper(RegExp); var _super = RegExp.prototype; var _groups = new WeakMap(); function BabelRegExp(re, flags, groups) { var _this = _RegExp.call(this, re, flags); _groups.set(_this, groups || _groups.get(re)); return _this; } _inherits(BabelRegExp, _RegExp); BabelRegExp.prototype.exec = function (str) { var result = _super.exec.call(this, str); if (result) result.groups = buildGroups(result, this); return result; }; BabelRegExp.prototype[Symbol.replace] = function (str, substitution) { if (typeof substitution === \"string\") { var groups = _groups.get(this); return _super[Symbol.replace].call(this, str, substitution.replace(/\\$<([^>]+)>/g, function (_, name) { return \"$\" + groups[name]; })); } else if (typeof substitution === \"function\") { var _this = this; return _super[Symbol.replace].call(this, str, function () { var args = []; args.push.apply(args, arguments); if (_typeof(args[args.length - 1]) !== \"object\") { args.push(buildGroups(args, _this)); } return substitution.apply(this, args); }); } else { return _super[Symbol.replace].call(this, str, substitution); } }; function buildGroups(result, re) { var g = _groups.get(re); return Object.keys(g).reduce(function (groups, name) { groups[name] = result[g[name]]; return groups; }, Object.create(null)); } return _wrapRegExp.apply(this, arguments); }\n\nfunction _inherits(subClass, superClass) { if (typeof superClass !== \"function\" && superClass !== null) { throw new TypeError(\"Super expression must either be null or a function\"); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, writable: true, configurable: true } }); if (superClass) _setPrototypeOf(subClass, superClass); }\n\nfunction _possibleConstructorReturn(self, call) { if (call && (_typeof(call) === \"object\" || typeof call === \"function\")) { return call; } return _assertThisInitialized(self); }\n\nfunction _assertThisInitialized(self) { if (self === void 0) { throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\"); } return self; }\n\nfunction _wrapNativeSuper(Class) { var _cache = typeof Map === \"function\" ? new Map() : undefined; _wrapNativeSuper = function _wrapNativeSuper(Class) { if (Class === null || !_isNativeFunction(Class)) return Class; if (typeof Class !== \"function\") { throw new TypeError(\"Super expression must either be null or a function\"); } if (typeof _cache !== \"undefined\") { if (_cache.has(Class)) return _cache.get(Class); _cache.set(Class, Wrapper); } function Wrapper() { return _construct(Class, arguments, _getPrototypeOf(this).constructor); } Wrapper.prototype = Object.create(Class.prototype, { constructor: { value: Wrapper, enumerable: false, writable: true, configurable: true } }); return _setPrototypeOf(Wrapper, Class); }; return _wrapNativeSuper(Class); }\n\nfunction _construct(Parent, args, Class) { if (_isNativeReflectConstruct()) { _construct = Reflect.construct; } else { _construct = function _construct(Parent, args, Class) { var a = [null]; a.push.apply(a, args); var Constructor = Function.bind.apply(Parent, a); var instance = new Constructor(); if (Class) _setPrototypeOf(instance, Class.prototype); return instance; }; } return _construct.apply(null, arguments); }\n\nfunction _isNativeReflectConstruct() { if (typeof Reflect === \"undefined\" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === \"function\") return true; try { Date.prototype.toString.call(Reflect.construct(Date, [], function () {})); return true; } catch (e) { return false; } }\n\nfunction _isNativeFunction(fn) { return Function.toString.call(fn).indexOf(\"[native code]\") !== -1; }\n\nfunction _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); }\n\nfunction _getPrototypeOf(o) { _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; return _getPrototypeOf(o); }\n\nfunction asyncGeneratorStep(gen, resolve, reject, _next, _throw, key, arg) { try { var info = gen[key](arg); var value = info.value; } catch (error) { reject(error); return; } if (info.done) { resolve(value); } else { Promise.resolve(value).then(_next, _throw); } }\n\nfunction _asyncToGenerator(fn) { return function () { var self = this, args = arguments; return new Promise(function (resolve, reject) { var gen = fn.apply(self, args); function _next(value) { asyncGeneratorStep(gen, resolve, reject, _next, _throw, \"next\", value); } function _throw(err) { asyncGeneratorStep(gen, resolve, reject, _next, _throw, \"throw\", err); } _next(undefined); }); }; }\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nglobalThis.localStorage.setItem('debug', \"\".concat(_debugAPI__WEBPACK_IMPORTED_MODULE_2__[\"debugAPI\"].log.namespace, \":*\"));\n/** 計算啟動時間 */\n\nvar bootstrapStartAt = new Date();\n/**\n * 開始運作腳本的時機點是在 etoro 頁面有出現的情況,\n * 因為才能夠開始將「本腳本」部件透過 jQuery 掛載上去\n */\n\n$('body').delegate('.main-app-view', 'mouseover', Object(lodash__WEBPACK_IMPORTED_MODULE_13__[\"throttle\"])(function () {\n _debugAPI__WEBPACK_IMPORTED_MODULE_2__[\"debugAPI\"].log.extend('log')('頁面加載完成');\n _emitter__WEBPACK_IMPORTED_MODULE_3__[\"emitter\"].emit(_emitter__WEBPACK_IMPORTED_MODULE_3__[\"Events\"].ready);\n}, 1000));\n/**\n * 以事件驅動分別在各頁面中,渲染「本腳本」的各個部件到 etoro 頁面上\n *\n * 然而,「本腳本」介面會因 etoro 換頁而導致消失\n *\n * 因此嘗試以低開銷的方式,不斷地(或使用戶感覺不出來)觸發介面渲染是必要的\n */\n\nvar unbindConstructTriggerDelegate = _emitter__WEBPACK_IMPORTED_MODULE_3__[\"emitter\"].on(_emitter__WEBPACK_IMPORTED_MODULE_3__[\"Events\"].ready, function constructTriggerDelegate() {\n $('body').undelegate('.main-app-view', 'mouseover');\n Object(_fluentui_react__WEBPACK_IMPORTED_MODULE_18__[\"initializeIcons\"])(); // Sidebar 不常因換頁而導致 UI 消失,因此可配置較長的觸發時間(throttle)\n\n $('body').delegate(\"[automation-id=\\\"menu-layout\\\"]\", 'mouseover', Object(lodash__WEBPACK_IMPORTED_MODULE_13__[\"throttle\"])(function () {\n _emitter__WEBPACK_IMPORTED_MODULE_3__[\"emitter\"].emit(_emitter__WEBPACK_IMPORTED_MODULE_3__[\"Events\"].onSidebarHover);\n }, 30000)); // A按鈕大多屬換頁性質,使A按鈕切換後,盡可能快地將「本腳本UI」掛載至 etoro 頁面\n\n $('body').delegate('a[href]', 'click', function () {\n globalThis.setTimeout(function () {\n if (globalThis.location.pathname.includes('watchlists')) {\n _emitter__WEBPACK_IMPORTED_MODULE_3__[\"emitter\"].emit(_emitter__WEBPACK_IMPORTED_MODULE_3__[\"Events\"].onWatchlistPageHover);\n }\n\n if (globalThis.location.pathname.includes('portfolio')) {\n _emitter__WEBPACK_IMPORTED_MODULE_3__[\"emitter\"].emit(_emitter__WEBPACK_IMPORTED_MODULE_3__[\"Events\"].onPortfolioPageHover);\n }\n }, 500);\n }); // 避免「本腳本UI」被 etoro 重新 render 而消失,配置較短的再觸發時間(throttle)\n\n $('body').delegate('.main-app-view', 'mouseover', Object(lodash__WEBPACK_IMPORTED_MODULE_13__[\"throttle\"])(function (event) {\n if (globalThis.location.pathname.includes('watchlists')) {\n _emitter__WEBPACK_IMPORTED_MODULE_3__[\"emitter\"].emit(_emitter__WEBPACK_IMPORTED_MODULE_3__[\"Events\"].onWatchlistPageHover);\n }\n\n if (globalThis.location.pathname.includes('portfolio')) {\n _emitter__WEBPACK_IMPORTED_MODULE_3__[\"emitter\"].emit(_emitter__WEBPACK_IMPORTED_MODULE_3__[\"Events\"].onPortfolioPageHover);\n }\n }, 5000)); // 彈出視窗畫面,此框用於下單\b,為實現加速下單的設計本意,使用較短的觸發時間(throttle)\n\n $('body').delegate('.execution-main', 'mouseover', Object(lodash__WEBPACK_IMPORTED_MODULE_13__[\"throttle\"])(function (event) {\n _emitter__WEBPACK_IMPORTED_MODULE_3__[\"emitter\"].emit(_emitter__WEBPACK_IMPORTED_MODULE_3__[\"Events\"].onDialogHover);\n }, 1000));\n unbindConstructTriggerDelegate();\n});\n/**\n * 我的關注列表\n */\n\n_emitter__WEBPACK_IMPORTED_MODULE_3__[\"emitter\"].on(_emitter__WEBPACK_IMPORTED_MODULE_3__[\"Events\"].onWatchlistPageHover, _components_WatchlistHeader_WatchlistHeader__WEBPACK_IMPORTED_MODULE_8__[\"watchlistHeaderConstructor\"]);\n/**\n * 我的投資組合\n */\n\n_emitter__WEBPACK_IMPORTED_MODULE_3__[\"emitter\"].on(_emitter__WEBPACK_IMPORTED_MODULE_3__[\"Events\"].onPortfolioPageHover, function constructPortfolioHeaderExtra() {\n _components_Portfolio_PortfolioHeaderExtraButtons__WEBPACK_IMPORTED_MODULE_17__[\"PortfolioHeaderExtraButtons\"].render();\n});\n/**\n * 下單框框增強介面\n */\n\n_emitter__WEBPACK_IMPORTED_MODULE_3__[\"emitter\"].on(_emitter__WEBPACK_IMPORTED_MODULE_3__[\"Events\"].onDialogHover, function constructDialogMacro() {\n if (!_storage__WEBPACK_IMPORTED_MODULE_6__[\"storage\"].findConfig().executionMacroEnabled) {\n return;\n }\n\n if (_components_ExecutionDialog__WEBPACK_IMPORTED_MODULE_1__[\"default\"].isConstructed) {\n return;\n }\n\n if (_components_ExecutionDialog__WEBPACK_IMPORTED_MODULE_1__[\"default\"].isParentConstructed && !_components_ExecutionDialog__WEBPACK_IMPORTED_MODULE_1__[\"default\"].isConstructed) {\n _components_ExecutionDialog__WEBPACK_IMPORTED_MODULE_1__[\"default\"].construct();\n return;\n }\n});\n/**\n * 歡迎訊息\n */\n\nvar unbindWelcomeMessage = _emitter__WEBPACK_IMPORTED_MODULE_3__[\"emitter\"].on(_emitter__WEBPACK_IMPORTED_MODULE_3__[\"Events\"].ready, function welcomeMessage() {\n cogo_toast__WEBPACK_IMPORTED_MODULE_12___default.a.success(_i18n__WEBPACK_IMPORTED_MODULE_10__[\"i18n\"].感謝使用提示語(function () {\n return react__WEBPACK_IMPORTED_MODULE_14__[\"createElement\"](\"a\", {\n style: {\n color: 'blue'\n },\n href: 'https://www.notion.so/hilezi/4fe69cd704434ff1b82f0cd48dd219c3',\n target: '_blank'\n }, \"better-etoro-ui\");\n }), {\n position: 'bottom-center',\n hideAfter: 3\n });\n var bootstrapEndedAt = new Date();\n var bootstrapUsedTime = bootstrapEndedAt.getTime() - bootstrapStartAt.getTime();\n _debugAPI__WEBPACK_IMPORTED_MODULE_2__[\"debugAPI\"].log.extend('log')(\"\\u8D77\\u52D5\\u6642\\u9593 = \".concat(bootstrapUsedTime, \"ms\"));\n unbindWelcomeMessage();\n});\n_emitter__WEBPACK_IMPORTED_MODULE_3__[\"emitter\"].on(_emitter__WEBPACK_IMPORTED_MODULE_3__[\"Events\"].onWatchlistPageHover, /*#__PURE__*/function () {\n var _constructPeopleExtra = _asyncToGenerator( /*#__PURE__*/regeneratorRuntime.mark(function _callee() {\n return regeneratorRuntime.wrap(function _callee$(_context) {\n while (1) {\n switch (_context.prev = _context.next) {\n case 0:\n $('et-user-row').each(function (index, element) {\n var _$exec, _$exec$groups;\n\n var userFinder = $(element);\n var hasAppended = !!userFinder.find('.user-meta').length;\n\n if (hasAppended) {\n return;\n }\n /**\n * tests https://regexr.com/52ft5\n *\n * [PASS] https://etoro-cdn.etorostatic.com/avatars/150X150/1724726/3.jpg\n * [PASS] https://etoro-cdn.etorostatic.com/avatars/150X150/1724726.jpg\n * [PASS] https://etoro-cdn.etorostatic.com/avatars/150X150/6441059/21.jpg\n */\n\n\n var cid = (_$exec = /*#__PURE__*/_wrapRegExp(/avatars\\/[0-9]+[Xx][0-9]+\\/([0-9]+)\\/?/, {\n cid: 1\n }).exec($(element).find('[automation-id=\"trade-item-avatar\"]').attr('src') || '')) === null || _$exec === void 0 ? void 0 : (_$exec$groups = _$exec.groups) === null || _$exec$groups === void 0 ? void 0 : _$exec$groups.cid;\n var traderName = $(element).find('[automation-id=\"trade-item-name\"]').html();\n\n if (cid && !hasAppended) {\n userFinder.prepend($(\"\")));\n react_dom__WEBPACK_IMPORTED_MODULE_15__[\"render\"](react__WEBPACK_IMPORTED_MODULE_14__[\"createElement\"](react_redux__WEBPACK_IMPORTED_MODULE_16__[\"Provider\"], {\n store: _store_store__WEBPACK_IMPORTED_MODULE_11__[\"default\"]\n }, react__WEBPACK_IMPORTED_MODULE_14__[\"createElement\"](_components_WatchlistUserControls_WatchlistUserControls__WEBPACK_IMPORTED_MODULE_9__[\"WatchlistUserControls\"], {\n cid: cid,\n traderName: traderName\n })), globalThis.document.querySelector(\"#user-meta-\".concat(cid)));\n }\n });\n\n case 1:\n case \"end\":\n return _context.stop();\n }\n }\n }, _callee);\n }));\n\n function constructPeopleExtra() {\n return _constructPeopleExtra.apply(this, arguments);\n }\n\n return constructPeopleExtra;\n}());\n/**\n * 提供左側欄入金按鈕,匯率換算結果顯示\n */\n\nvar constructDepositButton = /*#__PURE__*/function () {\n var _ref = _asyncToGenerator( /*#__PURE__*/regeneratorRuntime.mark(function _callee2() {\n var target;\n return regeneratorRuntime.wrap(function _callee2$(_context2) {\n while (1) {\n switch (_context2.prev = _context2.next) {\n case 0:\n target = $('.w-menu-footer .e-btn-big-2');\n\n if (target.length) {\n target.html(_i18n__WEBPACK_IMPORTED_MODULE_10__[\"i18n\"].左下入金按鈕(_exchange__WEBPACK_IMPORTED_MODULE_4__[\"exchange\"][_storage__WEBPACK_IMPORTED_MODULE_6__[\"storage\"].findConfig().selectedExchange].sell));\n }\n\n case 2:\n case \"end\":\n return _context2.stop();\n }\n }\n }, _callee2);\n }));\n\n return function constructDepositButton() {\n return _ref.apply(this, arguments);\n };\n}();\n\n_emitter__WEBPACK_IMPORTED_MODULE_3__[\"emitter\"].on(_emitter__WEBPACK_IMPORTED_MODULE_3__[\"Events\"].onSidebarHover, constructDepositButton);\n_emitter__WEBPACK_IMPORTED_MODULE_3__[\"emitter\"].on(_emitter__WEBPACK_IMPORTED_MODULE_3__[\"Events\"].settingChange, constructDepositButton);\n/**\n * 提供 etoro 頁面底部的「可用、配額、利潤、價值」匯率換算\n */\n\n_emitter__WEBPACK_IMPORTED_MODULE_3__[\"emitter\"].on(_emitter__WEBPACK_IMPORTED_MODULE_3__[\"Events\"].settingChange, _components_Footer_FooterUnitValues__WEBPACK_IMPORTED_MODULE_19__[\"renderFooterUnitValues\"]);\n_emitter__WEBPACK_IMPORTED_MODULE_3__[\"emitter\"].on(_emitter__WEBPACK_IMPORTED_MODULE_3__[\"Events\"].ready, function constructFooterUnitValues() {\n globalThis.setInterval(_components_Footer_FooterUnitValues__WEBPACK_IMPORTED_MODULE_19__[\"renderFooterUnitValues\"], 5000);\n});\n/**\n * 左側欄連結項目與設定\n */\n\n_emitter__WEBPACK_IMPORTED_MODULE_3__[\"emitter\"].on(_emitter__WEBPACK_IMPORTED_MODULE_3__[\"Events\"].settingChange, _components_Sidebar_sidebarConstructor__WEBPACK_IMPORTED_MODULE_7__[\"sidebarConstructor\"]);\n_emitter__WEBPACK_IMPORTED_MODULE_3__[\"emitter\"].on(_emitter__WEBPACK_IMPORTED_MODULE_3__[\"Events\"].onSidebarHover, _components_Sidebar_sidebarConstructor__WEBPACK_IMPORTED_MODULE_7__[\"sidebarConstructor\"]);\n/**\n * 取得匯率\n */\n\nvar fetchExtraCurrencySettingsUnbind = _emitter__WEBPACK_IMPORTED_MODULE_3__[\"emitter\"].on(_emitter__WEBPACK_IMPORTED_MODULE_3__[\"Events\"].ready, /*#__PURE__*/function () {\n var _fetchExtraCurrencySettings = _asyncToGenerator( /*#__PURE__*/regeneratorRuntime.mark(function _callee3() {\n return regeneratorRuntime.wrap(function _callee3$(_context3) {\n while (1) {\n switch (_context3.prev = _context3.next) {\n case 0:\n _context3.next = 2;\n return Promise.all([Object(_exchange__WEBPACK_IMPORTED_MODULE_4__[\"getNTD\"])(), Object(_exchange__WEBPACK_IMPORTED_MODULE_4__[\"getMYR\"])()]).then(function (gets) {\n var ntd = gets[0];\n var myr = gets[1];\n _exchange__WEBPACK_IMPORTED_MODULE_4__[\"exchange\"].NTD = ntd;\n _exchange__WEBPACK_IMPORTED_MODULE_4__[\"exchange\"].MYR = myr;\n _emitter__WEBPACK_IMPORTED_MODULE_3__[\"emitter\"].emit(_emitter__WEBPACK_IMPORTED_MODULE_3__[\"Events\"].settingChange);\n fetchExtraCurrencySettingsUnbind();\n });\n\n case 2:\n case \"end\":\n return _context3.stop();\n }\n }\n }, _callee3);\n }));\n\n function fetchExtraCurrencySettings() {\n return _fetchExtraCurrencySettings.apply(this, arguments);\n }\n\n return fetchExtraCurrencySettings;\n}()); // 盡可能不拖慢 etoro 程式啟動時間,將 CSS 統一在 ready 後加載\n\nvar constructCssUnbind = _emitter__WEBPACK_IMPORTED_MODULE_3__[\"emitter\"].on(_emitter__WEBPACK_IMPORTED_MODULE_3__[\"Events\"].ready, function constructCSS() {\n /**\n * 提供 etoro 頁面底部的「可用、配額、利潤、價值」匯率換算\n */\n _GM__WEBPACK_IMPORTED_MODULE_5__[\"GM\"].addStyle(\"\\n .footer-unit[_ngcontent-qlo-c4] {\\n height: 100px;\\n }\\n\\n .footer-unit-value-exchange {\\n font-size: 12pt;\\n margin-left: 4px;\\n }\\n\\n .footer-unit-value-exchange-main {\\n font-weight: bold;\\n }\\n\\n .footer-unit-value-exchange-small {\\n font-size: 8pt;\\n }\\n \");\n /**\n * 修正「添加到列表」被其它元素蓋住的問題\n *\n * e.g. https://www.etoro.com/people/olivierdanvel/portfolio\n */\n\n _GM__WEBPACK_IMPORTED_MODULE_5__[\"GM\"].addStyle(\"\\n body .inner-header {\\n z-index: 1\\n }\\n \");\n /**\n * 使「買入與賣出按鈕」更加立體明確\n *\n * 大多數使用者在看到買入與賣出時,時常分不清「目前勾選」項目,導致經常發生明明要買入,卻不小心賣空的狀況。\n */\n\n _GM__WEBPACK_IMPORTED_MODULE_5__[\"GM\"].addStyle(\"\\n .execution-head .execution-head-button.active:after {\\n content: \\\"\\u2705\\\";\\n }\\n \");\n /**\n * 確保 toast 不會被蓋住\n */\n\n _GM__WEBPACK_IMPORTED_MODULE_5__[\"GM\"].addStyle(\"\\n #ct-container {\\n z-index: 1000000\\n }\\n \");\n /**\n * blueprintjs 的 tooltip \b之 z-index 需要高於「下單 dialog」才好正確提示資訊\n */\n\n _GM__WEBPACK_IMPORTED_MODULE_5__[\"GM\"].addStyle(\"\\n .bp3-transition-container {\\n z-index: 10001\\n }\\n \");\n /**\n * 關注的使用者們的餘額\n */\n\n _GM__WEBPACK_IMPORTED_MODULE_5__[\"GM\"].addStyle(\"\\n .user-meta {\\n margin-right: 8px;\\n }\\n \");\n constructCssUnbind();\n});//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiLi9zcmMvZXRvcm8udHN4LmpzIiwic291cmNlcyI6WyJ3ZWJwYWNrOi8vLy4vc3JjL2V0b3JvLnRzeD85ODI1Il0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCAnQGJsdWVwcmludGpzL2NvcmUvbGliL2Nzcy9ibHVlcHJpbnQuY3NzJ1xuaW1wb3J0IEV4ZWN1dGlvbkRpYWxvZyBmcm9tICcuL2NvbXBvbmVudHMvRXhlY3V0aW9uRGlhbG9nJ1xuaW1wb3J0IHsgZGVidWdBUEkgfSBmcm9tICcuL2RlYnVnQVBJJ1xuaW1wb3J0IHsgZW1pdHRlciwgRXZlbnRzIH0gZnJvbSAnLi9lbWl0dGVyJ1xuaW1wb3J0IHsgZXhjaGFuZ2UsIGdldE1ZUiwgZ2V0TlREIH0gZnJvbSAnLi9leGNoYW5nZSdcbmltcG9ydCB7IEdNIH0gZnJvbSAnLi9HTSdcbmltcG9ydCB7IHN0b3JhZ2UgfSBmcm9tICcuL3N0b3JhZ2UnXG5pbXBvcnQgeyB0b0N1cnJlbmN5IH0gZnJvbSAnLi90b0N1cnJlbmN5J1xuaW1wb3J0IHsgc2lkZWJhckNvbnN0cnVjdG9yIH0gZnJvbSAnQC9jb21wb25lbnRzL1NpZGViYXIvc2lkZWJhckNvbnN0cnVjdG9yJ1xuaW1wb3J0IHsgd2F0Y2hsaXN0SGVhZGVyQ29uc3RydWN0b3IgfSBmcm9tICdAL2NvbXBvbmVudHMvV2F0Y2hsaXN0SGVhZGVyL1dhdGNobGlzdEhlYWRlcidcbmltcG9ydCB7IFdhdGNobGlzdFVzZXJDb250cm9scyB9IGZyb20gJ0AvY29tcG9uZW50cy9XYXRjaGxpc3RVc2VyQ29udHJvbHMvV2F0Y2hsaXN0VXNlckNvbnRyb2xzJ1xuaW1wb3J0IHsgaTE4biB9IGZyb20gJ0AvaTE4bidcbmltcG9ydCBzdG9yZSBmcm9tICdAL3N0b3JlL19zdG9yZSdcbmltcG9ydCB0b2FzdCBmcm9tICdjb2dvLXRvYXN0J1xuaW1wb3J0IHsgdGhyb3R0bGUgfSBmcm9tICdsb2Rhc2gnXG5pbXBvcnQgKiBhcyBSZWFjdCBmcm9tICdyZWFjdCdcbmltcG9ydCAqIGFzIFJlYWN0RE9NIGZyb20gJ3JlYWN0LWRvbSdcbmltcG9ydCB7IFByb3ZpZGVyIH0gZnJvbSAncmVhY3QtcmVkdXgnXG5pbXBvcnQgeyBQb3J0Zm9saW9IZWFkZXJFeHRyYUJ1dHRvbnMgfSBmcm9tICdAL2NvbXBvbmVudHMvUG9ydGZvbGlvL1BvcnRmb2xpb0hlYWRlckV4dHJhQnV0dG9ucydcbmltcG9ydCB7IGluaXRpYWxpemVJY29ucyB9IGZyb20gJ0BmbHVlbnR1aS9yZWFjdCdcbmltcG9ydCB7IHJlbmRlckZvb3RlclVuaXRWYWx1ZXMgfSBmcm9tICdAL2NvbXBvbmVudHMvRm9vdGVyL0Zvb3RlclVuaXRWYWx1ZXMnXG5cbnR5cGUgJCA9IEpRdWVyeVN0YXRpY1xuZ2xvYmFsVGhpcy5sb2NhbFN0b3JhZ2Uuc2V0SXRlbSgnZGVidWcnLCBgJHtkZWJ1Z0FQSS5sb2cubmFtZXNwYWNlfToqYClcblxuLyoqIOioiOeul+WVn+WLleaZgumWkyAqL1xuY29uc3QgYm9vdHN0cmFwU3RhcnRBdCA9IG5ldyBEYXRlKClcblxuLyoqXG4gKiDplovlp4vpgYvkvZzohbPmnKznmoTmmYLmqZ/pu57mmK/lnKggZXRvcm8g6aCB6Z2i5pyJ5Ye654++55qE5oOF5rOB77yMXG4gKiDlm6DngrrmiY3og73lpKDplovlp4vlsIfjgIzmnKzohbPmnKzjgI3pg6jku7bpgI/pgY4galF1ZXJ5IOaOm+i8ieS4iuWOu1xuICovXG4kKCdib2R5JykuZGVsZWdhdGUoXG4gICcubWFpbi1hcHAtdmlldycsXG4gICdtb3VzZW92ZXInLFxuICB0aHJvdHRsZSgoKSA9PiB7XG4gICAgZGVidWdBUEkubG9nLmV4dGVuZCgnbG9nJykoJ+mggemdouWKoOi8ieWujOaIkCcpXG4gICAgZW1pdHRlci5lbWl0KEV2ZW50cy5yZWFkeSlcbiAgfSwgMTAwMCksXG4pXG5cbi8qKlxuICog5Lul5LqL5Lu26amF5YuV5YiG5Yil5Zyo5ZCE6aCB6Z2i5Lit77yM5riy5p+T44CM5pys6IWz5pys44CN55qE5ZCE5YCL6YOo5Lu25YiwIGV0b3JvIOmggemdouS4ilxuICpcbiAqIOeEtuiAjO+8jOOAjOacrOiFs+acrOOAjeS7i+mdouacg+WboCBldG9ybyDmj5vpoIHogIzlsI7oh7TmtojlpLFcbiAqXG4gKiDlm6DmraTlmJfoqabku6XkvY7plovpirfnmoTmlrnlvI/vvIzkuI3mlrflnLDvvIjmiJbkvb/nlKjmiLbmhJ/oprrkuI3lh7rkvobvvInop7jnmbzku4vpnaLmuLLmn5PmmK/lv4XopoHnmoRcbiAqL1xuY29uc3QgdW5iaW5kQ29uc3RydWN0VHJpZ2dlckRlbGVnYXRlID0gZW1pdHRlci5vbihcbiAgRXZlbnRzLnJlYWR5LFxuICBmdW5jdGlvbiBjb25zdHJ1Y3RUcmlnZ2VyRGVsZWdhdGUoKSB7XG4gICAgJCgnYm9keScpLnVuZGVsZWdhdGUoJy5tYWluLWFwcC12aWV3JywgJ21vdXNlb3ZlcicpXG5cbiAgICBpbml0aWFsaXplSWNvbnMoKVxuXG4gICAgLy8gU2lkZWJhciDkuI3luLjlm6Dmj5vpoIHogIzlsI7oh7QgVUkg5raI5aSx77yM5Zug5q2k5Y+v6YWN572u6LyD6ZW355qE6Ke455m85pmC6ZaTKHRocm90dGxlKVxuICAgICQoJ2JvZHknKS5kZWxlZ2F0ZShcbiAgICAgIGBbYXV0b21hdGlvbi1pZD1cIm1lbnUtbGF5b3V0XCJdYCxcbiAgICAgICdtb3VzZW92ZXInLFxuICAgICAgdGhyb3R0bGUoKCkgPT4ge1xuICAgICAgICBlbWl0dGVyLmVtaXQoRXZlbnRzLm9uU2lkZWJhckhvdmVyKVxuICAgICAgfSwgMzAwMDApLFxuICAgIClcblxuICAgIC8vIEHmjInpiJXlpKflpJrlsazmj5vpoIHmgKfos6rvvIzkvb9B5oyJ6YiV5YiH5o+b5b6M77yM55uh5Y+v6IO95b+r5Zyw5bCH44CM5pys6IWz5pysVUnjgI3mjpvovInoh7MgZXRvcm8g6aCB6Z2iXG4gICAgJCgnYm9keScpLmRlbGVnYXRlKCdhW2hyZWZdJywgJ2NsaWNrJywgKCkgPT4ge1xuICAgICAgZ2xvYmFsVGhpcy5zZXRUaW1lb3V0KCgpID0+IHtcbiAgICAgICAgaWYgKGdsb2JhbFRoaXMubG9jYXRpb24ucGF0aG5hbWUuaW5jbHVkZXMoJ3dhdGNobGlzdHMnKSkge1xuICAgICAgICAgIGVtaXR0ZXIuZW1pdChFdmVudHMub25XYXRjaGxpc3RQYWdlSG92ZXIpXG4gICAgICAgIH1cbiAgICAgICAgaWYgKGdsb2JhbFRoaXMubG9jYXRpb24ucGF0aG5hbWUuaW5jbHVkZXMoJ3BvcnRmb2xpbycpKSB7XG4gICAgICAgICAgZW1pdHRlci5lbWl0KEV2ZW50cy5vblBvcnRmb2xpb1BhZ2VIb3ZlcilcbiAgICAgICAgfVxuICAgICAgfSwgNTAwKVxuICAgIH0pXG5cbiAgICAvLyDpgb/lhY3jgIzmnKzohbPmnKxVSeOAjeiiqyBldG9ybyDph43mlrAgcmVuZGVyIOiAjOa2iOWkse+8jOmFjee9rui8g+efreeahOWGjeinuOeZvOaZgumWkyh0aHJvdHRsZSlcbiAgICAkKCdib2R5JykuZGVsZWdhdGUoXG4gICAgICAnLm1haW4tYXBwLXZpZXcnLFxuICAgICAgJ21vdXNlb3ZlcicsXG4gICAgICB0aHJvdHRsZShldmVudCA9PiB7XG4gICAgICAgIGlmIChnbG9iYWxUaGlzLmxvY2F0aW9uLnBhdGhuYW1lLmluY2x1ZGVzKCd3YXRjaGxpc3RzJykpIHtcbiAgICAgICAgICBlbWl0dGVyLmVtaXQoRXZlbnRzLm9uV2F0Y2hsaXN0UGFnZUhvdmVyKVxuICAgICAgICB9XG4gICAgICAgIGlmIChnbG9iYWxUaGlzLmxvY2F0aW9uLnBhdGhuYW1lLmluY2x1ZGVzKCdwb3J0Zm9saW8nKSkge1xuICAgICAgICAgIGVtaXR0ZXIuZW1pdChFdmVudHMub25Qb3J0Zm9saW9QYWdlSG92ZXIpXG4gICAgICAgIH1cbiAgICAgIH0sIDUwMDApLFxuICAgIClcblxuICAgIC8vIOW9iOWHuuimlueql+eVq+mdou+8jOatpOahhueUqOaWvOS4i+WWrlxi77yM54K65a+m54++5Yqg6YCf5LiL5Zau55qE6Kit6KiI5pys5oSP77yM5L2/55So6LyD55+t55qE6Ke455m85pmC6ZaTKHRocm90dGxlKVxuICAgICQoJ2JvZHknKS5kZWxlZ2F0ZShcbiAgICAgICcuZXhlY3V0aW9uLW1haW4nLFxuICAgICAgJ21vdXNlb3ZlcicsXG4gICAgICB0aHJvdHRsZShldmVudCA9PiB7XG4gICAgICAgIGVtaXR0ZXIuZW1pdChFdmVudHMub25EaWFsb2dIb3ZlcilcbiAgICAgIH0sIDEwMDApLFxuICAgIClcblxuICAgIHVuYmluZENvbnN0cnVjdFRyaWdnZXJEZWxlZ2F0ZSgpXG4gIH0sXG4pXG5cbi8qKlxuICog5oiR55qE6Zec5rOo5YiX6KGoXG4gKi9cbmVtaXR0ZXIub24oRXZlbnRzLm9uV2F0Y2hsaXN0UGFnZUhvdmVyLCB3YXRjaGxpc3RIZWFkZXJDb25zdHJ1Y3RvcilcblxuLyoqXG4gKiDmiJHnmoTmipXos4fntYTlkIhcbiAqL1xuZW1pdHRlci5vbihcbiAgRXZlbnRzLm9uUG9ydGZvbGlvUGFnZUhvdmVyLFxuICBmdW5jdGlvbiBjb25zdHJ1Y3RQb3J0Zm9saW9IZWFkZXJFeHRyYSgpIHtcbiAgICBQb3J0Zm9saW9IZWFkZXJFeHRyYUJ1dHRvbnMucmVuZGVyKClcbiAgfSxcbilcblxuLyoqXG4gKiDkuIvllq7moYbmoYblop7lvLfku4vpnaJcbiAqL1xuZW1pdHRlci5vbihFdmVudHMub25EaWFsb2dIb3ZlciwgZnVuY3Rpb24gY29uc3RydWN0RGlhbG9nTWFjcm8oKSB7XG4gIGlmICghc3RvcmFnZS5maW5kQ29uZmlnKCkuZXhlY3V0aW9uTWFjcm9FbmFibGVkKSB7XG4gICAgcmV0dXJuXG4gIH1cblxuICBpZiAoRXhlY3V0aW9uRGlhbG9nLmlzQ29uc3RydWN0ZWQpIHtcbiAgICByZXR1cm5cbiAgfVxuXG4gIGlmIChFeGVjdXRpb25EaWFsb2cuaXNQYXJlbnRDb25zdHJ1Y3RlZCAmJiAhRXhlY3V0aW9uRGlhbG9nLmlzQ29uc3RydWN0ZWQpIHtcbiAgICBFeGVjdXRpb25EaWFsb2cuY29uc3RydWN0KClcbiAgICByZXR1cm5cbiAgfVxufSlcblxuLyoqXG4gKiDmraHov47oqIrmga9cbiAqL1xuY29uc3QgdW5iaW5kV2VsY29tZU1lc3NhZ2UgPSBlbWl0dGVyLm9uKFxuICBFdmVudHMucmVhZHksXG4gIGZ1bmN0aW9uIHdlbGNvbWVNZXNzYWdlKCkge1xuICAgIHRvYXN0LnN1Y2Nlc3MoXG4gICAgICBpMThuLuaEn+isneS9v+eUqOaPkOekuuiqnigoKSA9PiAoXG4gICAgICAgIDxhXG4gICAgICAgICAgc3R5bGU9e3tcbiAgICAgICAgICAgIGNvbG9yOiAnYmx1ZScsXG4gICAgICAgICAgfX1cbiAgICAgICAgICBocmVmPSdodHRwczovL3d3dy5ub3Rpb24uc28vaGlsZXppLzRmZTY5Y2Q3MDQ0MzRmZjFiODJmMGNkNDhkZDIxOWMzJ1xuICAgICAgICAgIHRhcmdldD0nX2JsYW5rJ1xuICAgICAgICA+XG4gICAgICAgICAgYmV0dGVyLWV0b3JvLXVpXG4gICAgICAgIDwvYT5cbiAgICAgICkpLFxuICAgICAgeyBwb3NpdGlvbjogJ2JvdHRvbS1jZW50ZXInLCBoaWRlQWZ0ZXI6IDMgfSxcbiAgICApXG5cbiAgICBjb25zdCBib290c3RyYXBFbmRlZEF0ID0gbmV3IERhdGUoKVxuICAgIGNvbnN0IGJvb3RzdHJhcFVzZWRUaW1lID1cbiAgICAgIGJvb3RzdHJhcEVuZGVkQXQuZ2V0VGltZSgpIC0gYm9vdHN0cmFwU3RhcnRBdC5nZXRUaW1lKClcbiAgICBkZWJ1Z0FQSS5sb2cuZXh0ZW5kKCdsb2cnKShg6LW35YuV5pmC6ZaTID0gJHtib290c3RyYXBVc2VkVGltZX1tc2ApXG4gICAgdW5iaW5kV2VsY29tZU1lc3NhZ2UoKVxuICB9LFxuKVxuXG5lbWl0dGVyLm9uKEV2ZW50cy5vbldhdGNobGlzdFBhZ2VIb3ZlciwgYXN5bmMgZnVuY3Rpb24gY29uc3RydWN0UGVvcGxlRXh0cmEoKSB7XG4gICQoJ2V0LXVzZXItcm93JykuZWFjaCgoaW5kZXgsIGVsZW1lbnQpID0+IHtcbiAgICBjb25zdCB1c2VyRmluZGVyID0gJChlbGVtZW50KVxuICAgIGNvbnN0IGhhc0FwcGVuZGVkID0gISF1c2VyRmluZGVyLmZpbmQoJy51c2VyLW1ldGEnKS5sZW5ndGhcblxuICAgIGlmIChoYXNBcHBlbmRlZCkge1xuICAgICAgcmV0dXJuXG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogdGVzdHMgaHR0cHM6Ly9yZWdleHIuY29tLzUyZnQ1XG4gICAgICpcbiAgICAgKiBbUEFTU10gaHR0cHM6Ly9ldG9yby1jZG4uZXRvcm9zdGF0aWMuY29tL2F2YXRhcnMvMTUwWDE1MC8xNzI0NzI2LzMuanBnXG4gICAgICogW1BBU1NdIGh0dHBzOi8vZXRvcm8tY2RuLmV0b3Jvc3RhdGljLmNvbS9hdmF0YXJzLzE1MFgxNTAvMTcyNDcyNi5qcGdcbiAgICAgKiBbUEFTU10gaHR0cHM6Ly9ldG9yby1jZG4uZXRvcm9zdGF0aWMuY29tL2F2YXRhcnMvMTUwWDE1MC82NDQxMDU5LzIxLmpwZ1xuICAgICAqL1xuICAgIGNvbnN0IGNpZCA9IC9hdmF0YXJzXFwvW1xcZF0rW3hYXVtcXGRdK1xcLyg/PGNpZD5bXFxkXSspXFwvPy8uZXhlYyhcbiAgICAgICQoZWxlbWVudCkuZmluZCgnW2F1dG9tYXRpb24taWQ9XCJ0cmFkZS1pdGVtLWF2YXRhclwiXScpLmF0dHIoJ3NyYycpIHx8ICcnLFxuICAgICk/Lmdyb3Vwcz8uY2lkXG5cbiAgICBjb25zdCB0cmFkZXJOYW1lID0gJChlbGVtZW50KVxuICAgICAgLmZpbmQoJ1thdXRvbWF0aW9uLWlkPVwidHJhZGUtaXRlbS1uYW1lXCJdJylcbiAgICAgIC5odG1sKClcblxuICAgIGlmIChjaWQgJiYgIWhhc0FwcGVuZGVkKSB7XG4gICAgICB1c2VyRmluZGVyLnByZXBlbmQoXG4gICAgICAgICQoYDxzcGFuIGNsYXNzPVwidXNlci1tZXRhXCIgaWQ9XCJ1c2VyLW1ldGEtJHtjaWR9XCI+PC9zcGFuPmApLFxuICAgICAgKVxuXG4gICAgICBSZWFjdERPTS5yZW5kZXIoXG4gICAgICAgIDxQcm92aWRlciBzdG9yZT17c3RvcmV9PlxuICAgICAgICAgIDxXYXRjaGxpc3RVc2VyQ29udHJvbHMgY2lkPXtjaWR9IHRyYWRlck5hbWU9e3RyYWRlck5hbWV9IC8+XG4gICAgICAgIDwvUHJvdmlkZXI+LFxuICAgICAgICBnbG9iYWxUaGlzLmRvY3VtZW50LnF1ZXJ5U2VsZWN0b3IoYCN1c2VyLW1ldGEtJHtjaWR9YCksXG4gICAgICApXG4gICAgfVxuICB9KVxufSlcblxuLyoqXG4gKiDmj5Dkvpvlt6blgbTmrITlhaXph5HmjInpiJXvvIzljK/njofmj5vnrpfntZDmnpzpoa/npLpcbiAqL1xuY29uc3QgY29uc3RydWN0RGVwb3NpdEJ1dHRvbiA9IGFzeW5jICgpID0+IHtcbiAgY29uc3QgdGFyZ2V0ID0gJCgnLnctbWVudS1mb290ZXIgLmUtYnRuLWJpZy0yJylcblxuICBpZiAodGFyZ2V0Lmxlbmd0aCkge1xuICAgIHRhcmdldC5odG1sKFxuICAgICAgaTE4bi7lt6bkuIvlhaXph5HmjInpiJUoZXhjaGFuZ2Vbc3RvcmFnZS5maW5kQ29uZmlnKCkuc2VsZWN0ZWRFeGNoYW5nZV0uc2VsbCksXG4gICAgKVxuICB9XG59XG5lbWl0dGVyLm9uKEV2ZW50cy5vblNpZGViYXJIb3ZlciwgY29uc3RydWN0RGVwb3NpdEJ1dHRvbilcbmVtaXR0ZXIub24oRXZlbnRzLnNldHRpbmdDaGFuZ2UsIGNvbnN0cnVjdERlcG9zaXRCdXR0b24pXG5cbi8qKlxuICog5o+Q5L6bIGV0b3JvIOmggemdouW6lemDqOeahOOAjOWPr+eUqOOAgemFjemhjeOAgeWIqea9pOOAgeWDueWAvOOAjeWMr+eOh+aPm+eul1xuICovXG5lbWl0dGVyLm9uKEV2ZW50cy5zZXR0aW5nQ2hhbmdlLCByZW5kZXJGb290ZXJVbml0VmFsdWVzKVxuZW1pdHRlci5vbihFdmVudHMucmVhZHksIGZ1bmN0aW9uIGNvbnN0cnVjdEZvb3RlclVuaXRWYWx1ZXMoKSB7XG4gIGdsb2JhbFRoaXMuc2V0SW50ZXJ2YWwocmVuZGVyRm9vdGVyVW5pdFZhbHVlcywgNTAwMClcbn0pXG5cbi8qKlxuICog5bem5YG05qyE6YCj57WQ6aCF55uu6IiH6Kit5a6aXG4gKi9cbmVtaXR0ZXIub24oRXZlbnRzLnNldHRpbmdDaGFuZ2UsIHNpZGViYXJDb25zdHJ1Y3RvcilcbmVtaXR0ZXIub24oRXZlbnRzLm9uU2lkZWJhckhvdmVyLCBzaWRlYmFyQ29uc3RydWN0b3IpXG5cbi8qKlxuICog5Y+W5b6X5Yyv546HXG4gKi9cbmNvbnN0IGZldGNoRXh0cmFDdXJyZW5jeVNldHRpbmdzVW5iaW5kID0gZW1pdHRlci5vbihcbiAgRXZlbnRzLnJlYWR5LFxuICBhc3luYyBmdW5jdGlvbiBmZXRjaEV4dHJhQ3VycmVuY3lTZXR0aW5ncygpIHtcbiAgICBhd2FpdCBQcm9taXNlLmFsbChbZ2V0TlREKCksIGdldE1ZUigpXSkudGhlbihnZXRzID0+IHtcbiAgICAgIGNvbnN0IG50ZCA9IGdldHNbMF1cbiAgICAgIGNvbnN0IG15ciA9IGdldHNbMV1cblxuICAgICAgZXhjaGFuZ2UuTlREID0gbnRkXG4gICAgICBleGNoYW5nZS5NWVIgPSBteXJcblxuICAgICAgZW1pdHRlci5lbWl0KEV2ZW50cy5zZXR0aW5nQ2hhbmdlKVxuXG4gICAgICBmZXRjaEV4dHJhQ3VycmVuY3lTZXR0aW5nc1VuYmluZCgpXG4gICAgfSlcbiAgfSxcbilcblxuLy8g55uh5Y+v6IO95LiN5ouW5oWiIGV0b3JvIOeoi+W8j+WVn+WLleaZgumWk++8jOWwhyBDU1Mg57Wx5LiA5ZyoIHJlYWR5IOW+jOWKoOi8iVxuY29uc3QgY29uc3RydWN0Q3NzVW5iaW5kID0gZW1pdHRlci5vbihFdmVudHMucmVhZHksIGZ1bmN0aW9uIGNvbnN0cnVjdENTUygpIHtcbiAgLyoqXG4gICAqIOaPkOS+myBldG9ybyDpoIHpnaLlupXpg6jnmoTjgIzlj6/nlKjjgIHphY3poY3jgIHliKnmvaTjgIHlg7nlgLzjgI3ljK/njofmj5vnrpdcbiAgICovXG4gIEdNLmFkZFN0eWxlKGBcbiAgICAuZm9vdGVyLXVuaXRbX25nY29udGVudC1xbG8tYzRdIHtcbiAgICAgIGhlaWdodDogMTAwcHg7XG4gICAgfVxuXG4gICAgLmZvb3Rlci11bml0LXZhbHVlLWV4Y2hhbmdlIHtcbiAgICAgIGZvbnQtc2l6ZTogMTJwdDtcbiAgICAgIG1hcmdpbi1sZWZ0OiA0cHg7XG4gICAgfVxuXG4gICAgLmZvb3Rlci11bml0LXZhbHVlLWV4Y2hhbmdlLW1haW4ge1xuICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgfVxuXG4gICAgLmZvb3Rlci11bml0LXZhbHVlLWV4Y2hhbmdlLXNtYWxsIHtcbiAgICAgIGZvbnQtc2l6ZTogOHB0O1xuICAgIH1cbiAgYClcblxuICAvKipcbiAgICog5L+u5q2j44CM5re75Yqg5Yiw5YiX6KGo44CN6KKr5YW25a6D5YWD57Sg6JOL5L2P55qE5ZWP6aGMXG4gICAqXG4gICAqIGUuZy4gaHR0cHM6Ly93d3cuZXRvcm8uY29tL3Blb3BsZS9vbGl2aWVyZGFudmVsL3BvcnRmb2xpb1xuICAgKi9cbiAgR00uYWRkU3R5bGUoYFxuICAgIGJvZHkgLmlubmVyLWhlYWRlciB7XG4gICAgICB6LWluZGV4OiAxXG4gICAgfVxuICBgKVxuXG4gIC8qKlxuICAgKiDkvb/jgIzosrflhaXoiIfos6Plh7rmjInpiJXjgI3mm7TliqDnq4vpq5TmmI7norpcbiAgICpcbiAgICog5aSn5aSa5pW45L2/55So6ICF5Zyo55yL5Yiw6LK35YWl6IiH6LOj5Ye65pmC77yM5pmC5bi45YiG5LiN5riF44CM55uu5YmN5Yu+6YG444CN6aCF55uu77yM5bCO6Ie057aT5bi455m855Sf5piO5piO6KaB6LK35YWl77yM5Y275LiN5bCP5b+D6LOj56m655qE54uA5rOB44CCXG4gICAqL1xuICBHTS5hZGRTdHlsZShgXG4gICAgLmV4ZWN1dGlvbi1oZWFkIC5leGVjdXRpb24taGVhZC1idXR0b24uYWN0aXZlOmFmdGVyIHtcbiAgICAgIGNvbnRlbnQ6IFwi4pyFXCI7XG4gICAgfVxuICBgKVxuXG4gIC8qKlxuICAgKiDnorrkv50gdG9hc3Qg5LiN5pyD6KKr6JOL5L2PXG4gICAqL1xuICBHTS5hZGRTdHlsZShgXG4gICAgI2N0LWNvbnRhaW5lciB7XG4gICAgICB6LWluZGV4OiAxMDAwMDAwXG4gICAgfVxuICBgKVxuXG4gIC8qKlxuICAgKiBibHVlcHJpbnRqcyDnmoQgdG9vbHRpcCBcYuS5iyB6LWluZGV4IOmcgOimgemrmOaWvOOAjOS4i+WWriBkaWFsb2fjgI3miY3lpb3mraPnorrmj5DnpLros4foqIpcbiAgICovXG4gIEdNLmFkZFN0eWxlKGBcbiAgICAuYnAzLXRyYW5zaXRpb24tY29udGFpbmVyIHtcbiAgICAgIHotaW5kZXg6IDEwMDAxXG4gICAgfVxuICBgKVxuXG4gIC8qKlxuICAgKiDpl5zms6jnmoTkvb/nlKjogIXlgJHnmoTppJjpoY1cbiAgICovXG4gIEdNLmFkZFN0eWxlKGBcbiAgICAudXNlci1tZXRhIHtcbiAgICAgIG1hcmdpbi1yaWdodDogOHB4O1xuICAgIH1cbiAgYClcblxuICBjb25zdHJ1Y3RDc3NVbmJpbmQoKVxufSlcbiJdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBQUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUdBO0FBRUE7QUFDQTtBQUFBO0FBRUE7Ozs7O0FBSUE7QUFJQTtBQUNBO0FBQ0E7QUFHQTs7Ozs7Ozs7QUFPQTtBQUdBO0FBRUE7QUFDQTtBQUVBO0FBSUE7QUFDQTtBQUNBO0FBR0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBRUE7QUFJQTtBQUNBO0FBQ0E7QUFDQTtBQUFBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFHQTtBQUlBO0FBQ0E7QUFHQTtBQUNBO0FBR0E7Ozs7QUFHQTtBQUVBOzs7O0FBR0E7QUFHQTtBQUNBO0FBR0E7Ozs7QUFHQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBRUE7Ozs7QUFHQTtBQUdBO0FBQ0E7QUFFQTtBQUNBO0FBREE7QUFHQTtBQUNBO0FBTEE7QUFEQTtBQVdBO0FBQUE7QUFBQTtBQUdBO0FBQ0E7QUFFQTtBQUNBO0FBQ0E7QUFHQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFDQTtBQUFBO0FBQ0E7QUFBQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFFQTs7Ozs7Ozs7O0FBT0E7QUFBQTtBQUFBO0FBSUE7QUFDQTtBQUdBO0FBQ0E7QUFJQTtBQUNBO0FBQUE7QUFDQTtBQUFBO0FBQUE7QUFJQTtBQUNBO0FBQ0E7QUFyQ0E7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFDQTtBQURBO0FBQUE7QUFBQTtBQUNBO0FBREE7QUFBQTtBQXVDQTs7OztBQUdBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFHQTtBQUNBO0FBUkE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFDQTtBQURBO0FBQUE7QUFBQTtBQUFBO0FBQ0E7QUFRQTtBQUNBO0FBRUE7Ozs7QUFHQTtBQUNBO0FBQ0E7QUFDQTtBQUVBOzs7O0FBR0E7QUFDQTtBQUVBOzs7O0FBR0E7QUFBQTtBQUVBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUVBO0FBQ0E7QUFFQTtBQUNBO0FBRUE7QUFFQTtBQUNBO0FBQ0E7QUFaQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUNBO0FBSEE7QUFBQTtBQUFBO0FBQ0E7QUFEQTtBQUFBO0FBQ0E7QUFpQkE7QUFDQTs7O0FBR0E7QUFtQkE7Ozs7OztBQUtBO0FBTUE7Ozs7OztBQUtBO0FBTUE7Ozs7QUFHQTtBQU1BOzs7O0FBR0E7QUFNQTs7OztBQUdBO0FBTUE7QUFDQSIsInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///./src/etoro.tsx\n"); +eval("__webpack_require__.r(__webpack_exports__);\n/* harmony import */ var _blueprintjs_core_lib_css_blueprint_css__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @blueprintjs/core/lib/css/blueprint.css */ \"./node_modules/@blueprintjs/core/lib/css/blueprint.css\");\n/* harmony import */ var _blueprintjs_core_lib_css_blueprint_css__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_blueprintjs_core_lib_css_blueprint_css__WEBPACK_IMPORTED_MODULE_0__);\n/* harmony import */ var _components_ExecutionDialog__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./components/ExecutionDialog */ \"./src/components/ExecutionDialog/index.tsx\");\n/* harmony import */ var _debugAPI__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./debugAPI */ \"./src/debugAPI.ts\");\n/* harmony import */ var _emitter__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./emitter */ \"./src/emitter.ts\");\n/* harmony import */ var _GM__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ./GM */ \"./src/GM.ts\");\n/* harmony import */ var _storage__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ./storage */ \"./src/storage.ts\");\n/* harmony import */ var _components_Sidebar_sidebarConstructor__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! @/components/Sidebar/sidebarConstructor */ \"./src/components/Sidebar/sidebarConstructor.tsx\");\n/* harmony import */ var _components_WatchlistHeader_WatchlistHeader__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! @/components/WatchlistHeader/WatchlistHeader */ \"./src/components/WatchlistHeader/WatchlistHeader.tsx\");\n/* harmony import */ var _components_WatchlistUserControls_WatchlistUserControls__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! @/components/WatchlistUserControls/WatchlistUserControls */ \"./src/components/WatchlistUserControls/WatchlistUserControls.tsx\");\n/* harmony import */ var _i18n__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(/*! @/i18n */ \"./src/i18n.tsx\");\n/* harmony import */ var _store_store__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(/*! @/store/_store */ \"./src/store/_store.ts\");\n/* harmony import */ var cogo_toast__WEBPACK_IMPORTED_MODULE_11__ = __webpack_require__(/*! cogo-toast */ \"./node_modules/cogo-toast/dist/index.js\");\n/* harmony import */ var cogo_toast__WEBPACK_IMPORTED_MODULE_11___default = /*#__PURE__*/__webpack_require__.n(cogo_toast__WEBPACK_IMPORTED_MODULE_11__);\n/* harmony import */ var lodash__WEBPACK_IMPORTED_MODULE_12__ = __webpack_require__(/*! lodash */ \"./node_modules/lodash/lodash.js\");\n/* harmony import */ var lodash__WEBPACK_IMPORTED_MODULE_12___default = /*#__PURE__*/__webpack_require__.n(lodash__WEBPACK_IMPORTED_MODULE_12__);\n/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_13__ = __webpack_require__(/*! react */ \"./node_modules/react/index.js\");\n/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_13___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_13__);\n/* harmony import */ var react_dom__WEBPACK_IMPORTED_MODULE_14__ = __webpack_require__(/*! react-dom */ \"./node_modules/react-dom/index.js\");\n/* harmony import */ var react_dom__WEBPACK_IMPORTED_MODULE_14___default = /*#__PURE__*/__webpack_require__.n(react_dom__WEBPACK_IMPORTED_MODULE_14__);\n/* harmony import */ var react_redux__WEBPACK_IMPORTED_MODULE_15__ = __webpack_require__(/*! react-redux */ \"./node_modules/react-redux/lib/index.js\");\n/* harmony import */ var react_redux__WEBPACK_IMPORTED_MODULE_15___default = /*#__PURE__*/__webpack_require__.n(react_redux__WEBPACK_IMPORTED_MODULE_15__);\n/* harmony import */ var _components_Portfolio_PortfolioHeaderExtraButtons__WEBPACK_IMPORTED_MODULE_16__ = __webpack_require__(/*! @/components/Portfolio/PortfolioHeaderExtraButtons */ \"./src/components/Portfolio/PortfolioHeaderExtraButtons.tsx\");\n/* harmony import */ var _fluentui_react__WEBPACK_IMPORTED_MODULE_17__ = __webpack_require__(/*! @fluentui/react */ \"./node_modules/@fluentui/react/lib-commonjs/index.js\");\n/* harmony import */ var _fluentui_react__WEBPACK_IMPORTED_MODULE_17___default = /*#__PURE__*/__webpack_require__.n(_fluentui_react__WEBPACK_IMPORTED_MODULE_17__);\n/* harmony import */ var _components_Footer_FooterUnitValues__WEBPACK_IMPORTED_MODULE_18__ = __webpack_require__(/*! @/components/Footer/FooterUnitValues */ \"./src/components/Footer/FooterUnitValues.ts\");\n/* harmony import */ var _components_Portfolio_PortfolioHistoryHeaderExtraButtons__WEBPACK_IMPORTED_MODULE_19__ = __webpack_require__(/*! @/components/Portfolio/PortfolioHistoryHeaderExtraButtons */ \"./src/components/Portfolio/PortfolioHistoryHeaderExtraButtons.tsx\");\n/* harmony import */ var _actions_fetchExtraCurrency__WEBPACK_IMPORTED_MODULE_20__ = __webpack_require__(/*! @/actions/fetchExtraCurrency */ \"./src/actions/fetchExtraCurrency.ts\");\nfunction _typeof(obj) { \"@babel/helpers - typeof\"; if (typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\") { _typeof = function _typeof(obj) { return typeof obj; }; } else { _typeof = function _typeof(obj) { return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj; }; } return _typeof(obj); }\n\nfunction _wrapRegExp(re, groups) { _wrapRegExp = function _wrapRegExp(re, groups) { return new BabelRegExp(re, undefined, groups); }; var _RegExp = _wrapNativeSuper(RegExp); var _super = RegExp.prototype; var _groups = new WeakMap(); function BabelRegExp(re, flags, groups) { var _this = _RegExp.call(this, re, flags); _groups.set(_this, groups || _groups.get(re)); return _this; } _inherits(BabelRegExp, _RegExp); BabelRegExp.prototype.exec = function (str) { var result = _super.exec.call(this, str); if (result) result.groups = buildGroups(result, this); return result; }; BabelRegExp.prototype[Symbol.replace] = function (str, substitution) { if (typeof substitution === \"string\") { var groups = _groups.get(this); return _super[Symbol.replace].call(this, str, substitution.replace(/\\$<([^>]+)>/g, function (_, name) { return \"$\" + groups[name]; })); } else if (typeof substitution === \"function\") { var _this = this; return _super[Symbol.replace].call(this, str, function () { var args = []; args.push.apply(args, arguments); if (_typeof(args[args.length - 1]) !== \"object\") { args.push(buildGroups(args, _this)); } return substitution.apply(this, args); }); } else { return _super[Symbol.replace].call(this, str, substitution); } }; function buildGroups(result, re) { var g = _groups.get(re); return Object.keys(g).reduce(function (groups, name) { groups[name] = result[g[name]]; return groups; }, Object.create(null)); } return _wrapRegExp.apply(this, arguments); }\n\nfunction _inherits(subClass, superClass) { if (typeof superClass !== \"function\" && superClass !== null) { throw new TypeError(\"Super expression must either be null or a function\"); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, writable: true, configurable: true } }); if (superClass) _setPrototypeOf(subClass, superClass); }\n\nfunction _possibleConstructorReturn(self, call) { if (call && (_typeof(call) === \"object\" || typeof call === \"function\")) { return call; } return _assertThisInitialized(self); }\n\nfunction _assertThisInitialized(self) { if (self === void 0) { throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\"); } return self; }\n\nfunction _wrapNativeSuper(Class) { var _cache = typeof Map === \"function\" ? new Map() : undefined; _wrapNativeSuper = function _wrapNativeSuper(Class) { if (Class === null || !_isNativeFunction(Class)) return Class; if (typeof Class !== \"function\") { throw new TypeError(\"Super expression must either be null or a function\"); } if (typeof _cache !== \"undefined\") { if (_cache.has(Class)) return _cache.get(Class); _cache.set(Class, Wrapper); } function Wrapper() { return _construct(Class, arguments, _getPrototypeOf(this).constructor); } Wrapper.prototype = Object.create(Class.prototype, { constructor: { value: Wrapper, enumerable: false, writable: true, configurable: true } }); return _setPrototypeOf(Wrapper, Class); }; return _wrapNativeSuper(Class); }\n\nfunction _construct(Parent, args, Class) { if (_isNativeReflectConstruct()) { _construct = Reflect.construct; } else { _construct = function _construct(Parent, args, Class) { var a = [null]; a.push.apply(a, args); var Constructor = Function.bind.apply(Parent, a); var instance = new Constructor(); if (Class) _setPrototypeOf(instance, Class.prototype); return instance; }; } return _construct.apply(null, arguments); }\n\nfunction _isNativeReflectConstruct() { if (typeof Reflect === \"undefined\" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === \"function\") return true; try { Date.prototype.toString.call(Reflect.construct(Date, [], function () {})); return true; } catch (e) { return false; } }\n\nfunction _isNativeFunction(fn) { return Function.toString.call(fn).indexOf(\"[native code]\") !== -1; }\n\nfunction _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); }\n\nfunction _getPrototypeOf(o) { _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; return _getPrototypeOf(o); }\n\nfunction asyncGeneratorStep(gen, resolve, reject, _next, _throw, key, arg) { try { var info = gen[key](arg); var value = info.value; } catch (error) { reject(error); return; } if (info.done) { resolve(value); } else { Promise.resolve(value).then(_next, _throw); } }\n\nfunction _asyncToGenerator(fn) { return function () { var self = this, args = arguments; return new Promise(function (resolve, reject) { var gen = fn.apply(self, args); function _next(value) { asyncGeneratorStep(gen, resolve, reject, _next, _throw, \"next\", value); } function _throw(err) { asyncGeneratorStep(gen, resolve, reject, _next, _throw, \"throw\", err); } _next(undefined); }); }; }\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nglobalThis.localStorage.setItem('debug', \"\".concat(_debugAPI__WEBPACK_IMPORTED_MODULE_2__[\"debugAPI\"].log.namespace, \":*\"));\n/** 計算啟動時間 */\n\nvar bootstrapStartAt = new Date();\n/**\n * 開始運作腳本的時機點是在 etoro 頁面有出現的情況,\n * 因為才能夠開始將「本腳本」部件透過 jQuery 掛載上去\n */\n\n$('body').delegate('.main-app-view', 'mouseover', Object(lodash__WEBPACK_IMPORTED_MODULE_12__[\"throttle\"])(function () {\n _debugAPI__WEBPACK_IMPORTED_MODULE_2__[\"debugAPI\"].log.extend('log')('頁面加載完成');\n _emitter__WEBPACK_IMPORTED_MODULE_3__[\"emitter\"].emit(_emitter__WEBPACK_IMPORTED_MODULE_3__[\"Events\"].ready);\n}, 1000));\n/**\n * 以事件驅動分別在各頁面中,渲染「本腳本」的各個部件到 etoro 頁面上\n *\n * 然而,「本腳本」介面會因 etoro 換頁而導致消失\n *\n * 因此嘗試以低開銷的方式,不斷地(或使用戶感覺不出來)觸發介面渲染是必要的\n */\n\nvar unbindConstructTriggerDelegate = _emitter__WEBPACK_IMPORTED_MODULE_3__[\"emitter\"].on(_emitter__WEBPACK_IMPORTED_MODULE_3__[\"Events\"].ready, function constructTriggerDelegate() {\n $('body').undelegate('.main-app-view', 'mouseover');\n Object(_fluentui_react__WEBPACK_IMPORTED_MODULE_17__[\"initializeIcons\"])(); // Sidebar 不常因換頁而導致 UI 消失,因此可配置較長的觸發時間(throttle)\n\n $('body').delegate(\"[automation-id=\\\"menu-layout\\\"]\", 'mouseover', Object(lodash__WEBPACK_IMPORTED_MODULE_12__[\"throttle\"])(function () {\n _emitter__WEBPACK_IMPORTED_MODULE_3__[\"emitter\"].emit(_emitter__WEBPACK_IMPORTED_MODULE_3__[\"Events\"].onSidebarHover);\n }, 30000)); // A按鈕大多屬換頁性質,使A按鈕切換後,盡可能快地將「本腳本UI」掛載至 etoro 頁面\n\n $('body').delegate('a[href], a[ng-click]', 'click', function () {\n globalThis.setTimeout(function () {\n if (globalThis.location.pathname.includes('watchlists')) {\n _emitter__WEBPACK_IMPORTED_MODULE_3__[\"emitter\"].emit(_emitter__WEBPACK_IMPORTED_MODULE_3__[\"Events\"].onWatchlistPageHover);\n } else if (globalThis.location.pathname.includes('portfolio/history')) {\n _emitter__WEBPACK_IMPORTED_MODULE_3__[\"emitter\"].emit(_emitter__WEBPACK_IMPORTED_MODULE_3__[\"Events\"].onPortfolioHistoryPageHover);\n } else if (globalThis.location.pathname.includes('portfolio')) {\n _emitter__WEBPACK_IMPORTED_MODULE_3__[\"emitter\"].emit(_emitter__WEBPACK_IMPORTED_MODULE_3__[\"Events\"].onPortfolioPageHover);\n }\n }, 500);\n }); // 避免「本腳本UI」被 etoro 重新 render 而消失,配置較短的再觸發時間(throttle)\n\n $('body').delegate('.main-app-view', 'mouseover', Object(lodash__WEBPACK_IMPORTED_MODULE_12__[\"throttle\"])(function (event) {\n if (globalThis.location.pathname.includes('watchlists')) {\n _emitter__WEBPACK_IMPORTED_MODULE_3__[\"emitter\"].emit(_emitter__WEBPACK_IMPORTED_MODULE_3__[\"Events\"].onWatchlistPageHover);\n } else if (globalThis.location.pathname.includes('portfolio/history')) {\n _emitter__WEBPACK_IMPORTED_MODULE_3__[\"emitter\"].emit(_emitter__WEBPACK_IMPORTED_MODULE_3__[\"Events\"].onPortfolioHistoryPageHover);\n } else if (globalThis.location.pathname.includes('portfolio')) {\n _emitter__WEBPACK_IMPORTED_MODULE_3__[\"emitter\"].emit(_emitter__WEBPACK_IMPORTED_MODULE_3__[\"Events\"].onPortfolioPageHover);\n }\n }, 5000)); // 彈出視窗畫面,此框用於下單\b,為實現加速下單的設計本意,使用較短的觸發時間(throttle)\n\n $('body').delegate('.execution-main', 'mouseover', Object(lodash__WEBPACK_IMPORTED_MODULE_12__[\"throttle\"])(function (event) {\n _emitter__WEBPACK_IMPORTED_MODULE_3__[\"emitter\"].emit(_emitter__WEBPACK_IMPORTED_MODULE_3__[\"Events\"].onDialogHover);\n }, 1000));\n $('body').delegate('.more-info-button', 'mouseover', Object(lodash__WEBPACK_IMPORTED_MODULE_12__[\"throttle\"])(function () {\n _emitter__WEBPACK_IMPORTED_MODULE_3__[\"emitter\"].emit(_emitter__WEBPACK_IMPORTED_MODULE_3__[\"Events\"].onMoreInfoButtonHover);\n }, 50));\n unbindConstructTriggerDelegate();\n});\n/**\n * 查看更多按鈕\n */\n\n_emitter__WEBPACK_IMPORTED_MODULE_3__[\"emitter\"].on(_emitter__WEBPACK_IMPORTED_MODULE_3__[\"Events\"].onMoreInfoButtonHover, function autoTriggerMore() {\n $('.more-info-button').click();\n});\n/**\n * 我的歷史記錄\n */\n\n_emitter__WEBPACK_IMPORTED_MODULE_3__[\"emitter\"].on(_emitter__WEBPACK_IMPORTED_MODULE_3__[\"Events\"].onPortfolioHistoryPageHover, function constructPortfolioHistoryPage() {\n _components_Portfolio_PortfolioHistoryHeaderExtraButtons__WEBPACK_IMPORTED_MODULE_19__[\"PortfolioHistoryHeaderExtraButtons\"].construct();\n});\n/**\n * 我的關注列表\n */\n\n_emitter__WEBPACK_IMPORTED_MODULE_3__[\"emitter\"].on(_emitter__WEBPACK_IMPORTED_MODULE_3__[\"Events\"].onWatchlistPageHover, _components_WatchlistHeader_WatchlistHeader__WEBPACK_IMPORTED_MODULE_7__[\"watchlistHeaderConstructor\"]);\n/**\n * 我的投資組合\n */\n\n_emitter__WEBPACK_IMPORTED_MODULE_3__[\"emitter\"].on(_emitter__WEBPACK_IMPORTED_MODULE_3__[\"Events\"].onPortfolioPageHover, function constructPortfolioHeaderExtra() {\n _components_Portfolio_PortfolioHeaderExtraButtons__WEBPACK_IMPORTED_MODULE_16__[\"PortfolioHeaderExtraButtons\"].render();\n});\n/**\n * 下單框框增強介面\n */\n\n_emitter__WEBPACK_IMPORTED_MODULE_3__[\"emitter\"].on(_emitter__WEBPACK_IMPORTED_MODULE_3__[\"Events\"].onDialogHover, function constructDialogMacro() {\n if (!_storage__WEBPACK_IMPORTED_MODULE_5__[\"storage\"].findConfig().executionMacroEnabled) {\n return;\n }\n\n if (_components_ExecutionDialog__WEBPACK_IMPORTED_MODULE_1__[\"default\"].isConstructed) {\n return;\n }\n\n if (_components_ExecutionDialog__WEBPACK_IMPORTED_MODULE_1__[\"default\"].isParentConstructed && !_components_ExecutionDialog__WEBPACK_IMPORTED_MODULE_1__[\"default\"].isConstructed) {\n _components_ExecutionDialog__WEBPACK_IMPORTED_MODULE_1__[\"default\"].construct();\n return;\n }\n});\n/**\n * 歡迎訊息\n */\n\nvar unbindWelcomeMessage = _emitter__WEBPACK_IMPORTED_MODULE_3__[\"emitter\"].on(_emitter__WEBPACK_IMPORTED_MODULE_3__[\"Events\"].ready, function welcomeMessage() {\n cogo_toast__WEBPACK_IMPORTED_MODULE_11___default.a.success(_i18n__WEBPACK_IMPORTED_MODULE_9__[\"i18n\"].感謝使用提示語(function () {\n return react__WEBPACK_IMPORTED_MODULE_13__[\"createElement\"](\"a\", {\n style: {\n color: 'blue'\n },\n href: 'https://www.notion.so/hilezi/4fe69cd704434ff1b82f0cd48dd219c3',\n target: '_blank'\n }, \"better-etoro-ui\");\n }), {\n position: 'bottom-center',\n hideAfter: 3\n });\n var bootstrapEndedAt = new Date();\n var bootstrapUsedTime = bootstrapEndedAt.getTime() - bootstrapStartAt.getTime();\n _debugAPI__WEBPACK_IMPORTED_MODULE_2__[\"debugAPI\"].log.extend('log')(\"\\u8D77\\u52D5\\u6642\\u9593 = \".concat(bootstrapUsedTime, \"ms\"));\n unbindWelcomeMessage();\n});\n_emitter__WEBPACK_IMPORTED_MODULE_3__[\"emitter\"].on(_emitter__WEBPACK_IMPORTED_MODULE_3__[\"Events\"].onWatchlistPageHover, /*#__PURE__*/function () {\n var _constructPeopleExtra = _asyncToGenerator( /*#__PURE__*/regeneratorRuntime.mark(function _callee() {\n return regeneratorRuntime.wrap(function _callee$(_context) {\n while (1) {\n switch (_context.prev = _context.next) {\n case 0:\n $('et-user-row').each(function (index, element) {\n var _$exec, _$exec$groups;\n\n var userFinder = $(element);\n var hasAppended = !!userFinder.find('.user-meta').length;\n\n if (hasAppended) {\n return;\n }\n /**\n * tests https://regexr.com/52ft5\n *\n * [PASS] https://etoro-cdn.etorostatic.com/avatars/150X150/1724726/3.jpg\n * [PASS] https://etoro-cdn.etorostatic.com/avatars/150X150/1724726.jpg\n * [PASS] https://etoro-cdn.etorostatic.com/avatars/150X150/6441059/21.jpg\n */\n\n\n var cid = (_$exec = /*#__PURE__*/_wrapRegExp(/avatars\\/[0-9]+[Xx][0-9]+\\/([0-9]+)\\/?/, {\n cid: 1\n }).exec($(element).find('[automation-id=\"trade-item-avatar\"]').attr('src') || '')) === null || _$exec === void 0 ? void 0 : (_$exec$groups = _$exec.groups) === null || _$exec$groups === void 0 ? void 0 : _$exec$groups.cid;\n var traderName = $(element).find('[automation-id=\"trade-item-name\"]').html();\n\n if (cid && !hasAppended) {\n userFinder.prepend($(\"\")));\n react_dom__WEBPACK_IMPORTED_MODULE_14__[\"render\"](react__WEBPACK_IMPORTED_MODULE_13__[\"createElement\"](react_redux__WEBPACK_IMPORTED_MODULE_15__[\"Provider\"], {\n store: _store_store__WEBPACK_IMPORTED_MODULE_10__[\"default\"]\n }, react__WEBPACK_IMPORTED_MODULE_13__[\"createElement\"](_components_WatchlistUserControls_WatchlistUserControls__WEBPACK_IMPORTED_MODULE_8__[\"WatchlistUserControls\"], {\n cid: cid,\n traderName: traderName\n })), globalThis.document.querySelector(\"#user-meta-\".concat(cid)));\n }\n });\n\n case 1:\n case \"end\":\n return _context.stop();\n }\n }\n }, _callee);\n }));\n\n function constructPeopleExtra() {\n return _constructPeopleExtra.apply(this, arguments);\n }\n\n return constructPeopleExtra;\n}());\n/**\n * 提供左側欄入金按鈕,匯率換算結果顯示\n */\n\nvar constructDepositButton = /*#__PURE__*/function () {\n var _ref = _asyncToGenerator( /*#__PURE__*/regeneratorRuntime.mark(function _callee2() {\n var target, state;\n return regeneratorRuntime.wrap(function _callee2$(_context2) {\n while (1) {\n switch (_context2.prev = _context2.next) {\n case 0:\n target = $('.w-menu-footer .e-btn-big-2');\n state = _store_store__WEBPACK_IMPORTED_MODULE_10__[\"default\"].getState();\n\n if (target.length) {\n target.html(_i18n__WEBPACK_IMPORTED_MODULE_9__[\"i18n\"].左下入金按鈕(state.settings.exchange[state.settings.exchange.selected].sell));\n }\n\n case 3:\n case \"end\":\n return _context2.stop();\n }\n }\n }, _callee2);\n }));\n\n return function constructDepositButton() {\n return _ref.apply(this, arguments);\n };\n}();\n\n_emitter__WEBPACK_IMPORTED_MODULE_3__[\"emitter\"].on(_emitter__WEBPACK_IMPORTED_MODULE_3__[\"Events\"].onSidebarHover, constructDepositButton);\n_emitter__WEBPACK_IMPORTED_MODULE_3__[\"emitter\"].on(_emitter__WEBPACK_IMPORTED_MODULE_3__[\"Events\"].settingChange, constructDepositButton);\n/**\n * 提供 etoro 頁面底部的「可用、配額、利潤、價值」匯率換算\n */\n\n_emitter__WEBPACK_IMPORTED_MODULE_3__[\"emitter\"].on(_emitter__WEBPACK_IMPORTED_MODULE_3__[\"Events\"].settingChange, _components_Footer_FooterUnitValues__WEBPACK_IMPORTED_MODULE_18__[\"renderFooterUnitValues\"]);\nvar constructFooterUnitValuesUnbind = _emitter__WEBPACK_IMPORTED_MODULE_3__[\"emitter\"].on(_emitter__WEBPACK_IMPORTED_MODULE_3__[\"Events\"].ready, function constructFooterUnitValues() {\n globalThis.setInterval(_components_Footer_FooterUnitValues__WEBPACK_IMPORTED_MODULE_18__[\"renderFooterUnitValues\"], 5000);\n constructFooterUnitValuesUnbind();\n});\n/**\n * 左側欄連結項目與設定\n */\n\n_emitter__WEBPACK_IMPORTED_MODULE_3__[\"emitter\"].on(_emitter__WEBPACK_IMPORTED_MODULE_3__[\"Events\"].settingChange, _components_Sidebar_sidebarConstructor__WEBPACK_IMPORTED_MODULE_6__[\"sidebarConstructor\"]);\n_emitter__WEBPACK_IMPORTED_MODULE_3__[\"emitter\"].on(_emitter__WEBPACK_IMPORTED_MODULE_3__[\"Events\"].onSidebarHover, _components_Sidebar_sidebarConstructor__WEBPACK_IMPORTED_MODULE_6__[\"sidebarConstructor\"]);\n/**\n * 取得外部銀行買賣匯率\n */\n\nvar fetchExtraCurrencySettingsUnbind = _emitter__WEBPACK_IMPORTED_MODULE_3__[\"emitter\"].on(_emitter__WEBPACK_IMPORTED_MODULE_3__[\"Events\"].ready, /*#__PURE__*/function () {\n var _fetchExtraCurrencySettings = _asyncToGenerator( /*#__PURE__*/regeneratorRuntime.mark(function _callee3() {\n return regeneratorRuntime.wrap(function _callee3$(_context3) {\n while (1) {\n switch (_context3.prev = _context3.next) {\n case 0:\n _context3.next = 2;\n return _store_store__WEBPACK_IMPORTED_MODULE_10__[\"default\"].dispatch(Object(_actions_fetchExtraCurrency__WEBPACK_IMPORTED_MODULE_20__[\"fetchExtraCurrency\"])());\n\n case 2:\n _emitter__WEBPACK_IMPORTED_MODULE_3__[\"emitter\"].emit(_emitter__WEBPACK_IMPORTED_MODULE_3__[\"Events\"].settingChange);\n fetchExtraCurrencySettingsUnbind();\n\n case 4:\n case \"end\":\n return _context3.stop();\n }\n }\n }, _callee3);\n }));\n\n function fetchExtraCurrencySettings() {\n return _fetchExtraCurrencySettings.apply(this, arguments);\n }\n\n return fetchExtraCurrencySettings;\n}()); // 盡可能不拖慢 etoro 程式啟動時間,將 CSS 統一在 ready 後加載\n\nvar constructCssUnbind = _emitter__WEBPACK_IMPORTED_MODULE_3__[\"emitter\"].on(_emitter__WEBPACK_IMPORTED_MODULE_3__[\"Events\"].ready, function constructCSS() {\n /**\n * 提供 etoro 頁面底部的「可用、配額、利潤、價值」匯率換算\n */\n _GM__WEBPACK_IMPORTED_MODULE_4__[\"GM\"].addStyle(\"\\n .footer-unit[_ngcontent-qlo-c4] {\\n height: 100px;\\n }\\n\\n .footer-unit-value-exchange {\\n font-size: 10pt;\\n margin-left: 4px;\\n opacity: 0.65;\\n }\\n\\n .footer-unit-value-exchange-main {\\n font-weight: bold;\\n }\\n\\n .footer-unit-value-exchange-small {\\n font-size: 8pt;\\n }\\n \");\n /**\n * 修正「添加到列表」被其它元素蓋住的問題\n *\n * e.g. https://www.etoro.com/people/olivierdanvel/portfolio\n */\n\n _GM__WEBPACK_IMPORTED_MODULE_4__[\"GM\"].addStyle(\"\\n body .inner-header {\\n z-index: 1\\n }\\n \");\n /**\n * 使「買入與賣出按鈕」更加立體明確\n *\n * 大多數使用者在看到買入與賣出時,時常分不清「目前勾選」項目,導致經常發生明明要買入,卻不小心賣空的狀況。\n */\n\n _GM__WEBPACK_IMPORTED_MODULE_4__[\"GM\"].addStyle(\"\\n .execution-head .execution-head-button.active:after {\\n content: \\\"\\u2705\\\";\\n }\\n \");\n /**\n * 確保 toast 不會被蓋住\n */\n\n _GM__WEBPACK_IMPORTED_MODULE_4__[\"GM\"].addStyle(\"\\n #ct-container {\\n z-index: 1000000\\n }\\n \");\n /**\n * blueprintjs 的 tooltip \b之 z-index 需要高於「下單 dialog」才好正確提示資訊\n */\n\n _GM__WEBPACK_IMPORTED_MODULE_4__[\"GM\"].addStyle(\"\\n .bp3-transition-container {\\n z-index: 10001\\n }\\n \");\n /**\n * 關注的使用者們的餘額\n */\n\n _GM__WEBPACK_IMPORTED_MODULE_4__[\"GM\"].addStyle(\"\\n .user-meta {\\n margin-right: 8px;\\n }\\n \");\n /**\n * 為關注列表頁面增加一點 style 質感\n */\n\n _GM__WEBPACK_IMPORTED_MODULE_4__[\"GM\"].addStyle(\"\\n et-instrument-trading-row:hover,\\n et-user-row:hover {\\n box-shadow: 1px 1px 5px #42424294;\\n text-shadow: 2px 2px 1px #d2d2d2;\\n }\\n \");\n /** 使顯眼賣出或買入文字 */\n\n _GM__WEBPACK_IMPORTED_MODULE_4__[\"GM\"].addStyle(\"\\n [data-etoro-automation-id=\\\"open-trades-table-body-cell-action-sell\\\"] {\\n color: #ff7171;\\n }\\n [data-etoro-automation-id=\\\"open-trades-table-body-cell-action-sell\\\"]:after {\\n content: \\\"\\uD83D\\uDCC9\\\";\\n }\\n\\n [data-etoro-automation-id=\\\"open-trades-table-body-cell-action-buy\\\"] {\\n color: #20ae20;\\n }\\n [data-etoro-automation-id=\\\"open-trades-table-body-cell-action-buy\\\"]:after {\\n content: \\\"\\uD83D\\uDCC8\\\";\\n }\\n \");\n constructCssUnbind();\n});//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiLi9zcmMvZXRvcm8udHN4LmpzIiwic291cmNlcyI6WyJ3ZWJwYWNrOi8vLy4vc3JjL2V0b3JvLnRzeD85ODI1Il0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCAnQGJsdWVwcmludGpzL2NvcmUvbGliL2Nzcy9ibHVlcHJpbnQuY3NzJ1xuaW1wb3J0IEV4ZWN1dGlvbkRpYWxvZyBmcm9tICcuL2NvbXBvbmVudHMvRXhlY3V0aW9uRGlhbG9nJ1xuaW1wb3J0IHsgZGVidWdBUEkgfSBmcm9tICcuL2RlYnVnQVBJJ1xuaW1wb3J0IHsgZW1pdHRlciwgRXZlbnRzIH0gZnJvbSAnLi9lbWl0dGVyJ1xuaW1wb3J0IHsgZXhjaGFuZ2UsIGdldE1ZUiwgZ2V0TlREIH0gZnJvbSAnLi9leGNoYW5nZSdcbmltcG9ydCB7IEdNIH0gZnJvbSAnLi9HTSdcbmltcG9ydCB7IHN0b3JhZ2UgfSBmcm9tICcuL3N0b3JhZ2UnXG5pbXBvcnQgeyB0b0N1cnJlbmN5IH0gZnJvbSAnLi90b0N1cnJlbmN5J1xuaW1wb3J0IHsgc2lkZWJhckNvbnN0cnVjdG9yIH0gZnJvbSAnQC9jb21wb25lbnRzL1NpZGViYXIvc2lkZWJhckNvbnN0cnVjdG9yJ1xuaW1wb3J0IHsgd2F0Y2hsaXN0SGVhZGVyQ29uc3RydWN0b3IgfSBmcm9tICdAL2NvbXBvbmVudHMvV2F0Y2hsaXN0SGVhZGVyL1dhdGNobGlzdEhlYWRlcidcbmltcG9ydCB7IFdhdGNobGlzdFVzZXJDb250cm9scyB9IGZyb20gJ0AvY29tcG9uZW50cy9XYXRjaGxpc3RVc2VyQ29udHJvbHMvV2F0Y2hsaXN0VXNlckNvbnRyb2xzJ1xuaW1wb3J0IHsgaTE4biB9IGZyb20gJ0AvaTE4bidcbmltcG9ydCBzdG9yZSBmcm9tICdAL3N0b3JlL19zdG9yZSdcbmltcG9ydCB0b2FzdCBmcm9tICdjb2dvLXRvYXN0J1xuaW1wb3J0IHsgdGhyb3R0bGUgfSBmcm9tICdsb2Rhc2gnXG5pbXBvcnQgKiBhcyBSZWFjdCBmcm9tICdyZWFjdCdcbmltcG9ydCAqIGFzIFJlYWN0RE9NIGZyb20gJ3JlYWN0LWRvbSdcbmltcG9ydCB7IFByb3ZpZGVyIH0gZnJvbSAncmVhY3QtcmVkdXgnXG5pbXBvcnQgeyBQb3J0Zm9saW9IZWFkZXJFeHRyYUJ1dHRvbnMgfSBmcm9tICdAL2NvbXBvbmVudHMvUG9ydGZvbGlvL1BvcnRmb2xpb0hlYWRlckV4dHJhQnV0dG9ucydcbmltcG9ydCB7IGluaXRpYWxpemVJY29ucyB9IGZyb20gJ0BmbHVlbnR1aS9yZWFjdCdcbmltcG9ydCB7IHJlbmRlckZvb3RlclVuaXRWYWx1ZXMgfSBmcm9tICdAL2NvbXBvbmVudHMvRm9vdGVyL0Zvb3RlclVuaXRWYWx1ZXMnXG5pbXBvcnQgeyBQb3J0Zm9saW9IaXN0b3J5SGVhZGVyRXh0cmFCdXR0b25zIH0gZnJvbSAnQC9jb21wb25lbnRzL1BvcnRmb2xpby9Qb3J0Zm9saW9IaXN0b3J5SGVhZGVyRXh0cmFCdXR0b25zJ1xuaW1wb3J0IHsgZmV0Y2hFeHRyYUN1cnJlbmN5IH0gZnJvbSAnQC9hY3Rpb25zL2ZldGNoRXh0cmFDdXJyZW5jeSdcblxudHlwZSAkID0gSlF1ZXJ5U3RhdGljXG5nbG9iYWxUaGlzLmxvY2FsU3RvcmFnZS5zZXRJdGVtKCdkZWJ1ZycsIGAke2RlYnVnQVBJLmxvZy5uYW1lc3BhY2V9OipgKVxuXG4vKiog6KiI566X5ZWf5YuV5pmC6ZaTICovXG5jb25zdCBib290c3RyYXBTdGFydEF0ID0gbmV3IERhdGUoKVxuXG4vKipcbiAqIOmWi+Wni+mBi+S9nOiFs+acrOeahOaZguapn+m7nuaYr+WcqCBldG9ybyDpoIHpnaLmnInlh7rnj77nmoTmg4Xms4HvvIxcbiAqIOWboOeCuuaJjeiDveWkoOmWi+Wni+Wwh+OAjOacrOiFs+acrOOAjemDqOS7tumAj+mBjiBqUXVlcnkg5o6b6LyJ5LiK5Y67XG4gKi9cbiQoJ2JvZHknKS5kZWxlZ2F0ZShcbiAgJy5tYWluLWFwcC12aWV3JyxcbiAgJ21vdXNlb3ZlcicsXG4gIHRocm90dGxlKCgpID0+IHtcbiAgICBkZWJ1Z0FQSS5sb2cuZXh0ZW5kKCdsb2cnKSgn6aCB6Z2i5Yqg6LyJ5a6M5oiQJylcbiAgICBlbWl0dGVyLmVtaXQoRXZlbnRzLnJlYWR5KVxuICB9LCAxMDAwKSxcbilcblxuLyoqXG4gKiDku6Xkuovku7bpqYXli5XliIbliKXlnKjlkITpoIHpnaLkuK3vvIzmuLLmn5PjgIzmnKzohbPmnKzjgI3nmoTlkITlgIvpg6jku7bliLAgZXRvcm8g6aCB6Z2i5LiKXG4gKlxuICog54S26ICM77yM44CM5pys6IWz5pys44CN5LuL6Z2i5pyD5ZugIGV0b3JvIOaPm+mggeiAjOWwjuiHtOa2iOWksVxuICpcbiAqIOWboOatpOWYl+ippuS7peS9jumWi+mKt+eahOaWueW8j++8jOS4jeaWt+WcsO+8iOaIluS9v+eUqOaItuaEn+imuuS4jeWHuuS+hu+8ieinuOeZvOS7i+mdoua4suafk+aYr+W/heimgeeahFxuICovXG5jb25zdCB1bmJpbmRDb25zdHJ1Y3RUcmlnZ2VyRGVsZWdhdGUgPSBlbWl0dGVyLm9uKFxuICBFdmVudHMucmVhZHksXG4gIGZ1bmN0aW9uIGNvbnN0cnVjdFRyaWdnZXJEZWxlZ2F0ZSgpIHtcbiAgICAkKCdib2R5JykudW5kZWxlZ2F0ZSgnLm1haW4tYXBwLXZpZXcnLCAnbW91c2VvdmVyJylcblxuICAgIGluaXRpYWxpemVJY29ucygpXG5cbiAgICAvLyBTaWRlYmFyIOS4jeW4uOWboOaPm+mggeiAjOWwjuiHtCBVSSDmtojlpLHvvIzlm6DmraTlj6/phY3nva7ovIPplbfnmoTop7jnmbzmmYLplpModGhyb3R0bGUpXG4gICAgJCgnYm9keScpLmRlbGVnYXRlKFxuICAgICAgYFthdXRvbWF0aW9uLWlkPVwibWVudS1sYXlvdXRcIl1gLFxuICAgICAgJ21vdXNlb3ZlcicsXG4gICAgICB0aHJvdHRsZSgoKSA9PiB7XG4gICAgICAgIGVtaXR0ZXIuZW1pdChFdmVudHMub25TaWRlYmFySG92ZXIpXG4gICAgICB9LCAzMDAwMCksXG4gICAgKVxuXG4gICAgLy8gQeaMiemIleWkp+WkmuWxrOaPm+mggeaAp+izqu+8jOS9v0HmjInpiJXliIfmj5vlvozvvIznm6Hlj6/og73lv6vlnLDlsIfjgIzmnKzohbPmnKxVSeOAjeaOm+i8ieiHsyBldG9ybyDpoIHpnaJcbiAgICAkKCdib2R5JykuZGVsZWdhdGUoJ2FbaHJlZl0sIGFbbmctY2xpY2tdJywgJ2NsaWNrJywgKCkgPT4ge1xuICAgICAgZ2xvYmFsVGhpcy5zZXRUaW1lb3V0KCgpID0+IHtcbiAgICAgICAgaWYgKGdsb2JhbFRoaXMubG9jYXRpb24ucGF0aG5hbWUuaW5jbHVkZXMoJ3dhdGNobGlzdHMnKSkge1xuICAgICAgICAgIGVtaXR0ZXIuZW1pdChFdmVudHMub25XYXRjaGxpc3RQYWdlSG92ZXIpXG4gICAgICAgIH0gZWxzZSBpZiAoZ2xvYmFsVGhpcy5sb2NhdGlvbi5wYXRobmFtZS5pbmNsdWRlcygncG9ydGZvbGlvL2hpc3RvcnknKSkge1xuICAgICAgICAgIGVtaXR0ZXIuZW1pdChFdmVudHMub25Qb3J0Zm9saW9IaXN0b3J5UGFnZUhvdmVyKVxuICAgICAgICB9IGVsc2UgaWYgKGdsb2JhbFRoaXMubG9jYXRpb24ucGF0aG5hbWUuaW5jbHVkZXMoJ3BvcnRmb2xpbycpKSB7XG4gICAgICAgICAgZW1pdHRlci5lbWl0KEV2ZW50cy5vblBvcnRmb2xpb1BhZ2VIb3ZlcilcbiAgICAgICAgfVxuICAgICAgfSwgNTAwKVxuICAgIH0pXG5cbiAgICAvLyDpgb/lhY3jgIzmnKzohbPmnKxVSeOAjeiiqyBldG9ybyDph43mlrAgcmVuZGVyIOiAjOa2iOWkse+8jOmFjee9rui8g+efreeahOWGjeinuOeZvOaZgumWkyh0aHJvdHRsZSlcbiAgICAkKCdib2R5JykuZGVsZWdhdGUoXG4gICAgICAnLm1haW4tYXBwLXZpZXcnLFxuICAgICAgJ21vdXNlb3ZlcicsXG4gICAgICB0aHJvdHRsZShldmVudCA9PiB7XG4gICAgICAgIGlmIChnbG9iYWxUaGlzLmxvY2F0aW9uLnBhdGhuYW1lLmluY2x1ZGVzKCd3YXRjaGxpc3RzJykpIHtcbiAgICAgICAgICBlbWl0dGVyLmVtaXQoRXZlbnRzLm9uV2F0Y2hsaXN0UGFnZUhvdmVyKVxuICAgICAgICB9IGVsc2UgaWYgKGdsb2JhbFRoaXMubG9jYXRpb24ucGF0aG5hbWUuaW5jbHVkZXMoJ3BvcnRmb2xpby9oaXN0b3J5JykpIHtcbiAgICAgICAgICBlbWl0dGVyLmVtaXQoRXZlbnRzLm9uUG9ydGZvbGlvSGlzdG9yeVBhZ2VIb3ZlcilcbiAgICAgICAgfSBlbHNlIGlmIChnbG9iYWxUaGlzLmxvY2F0aW9uLnBhdGhuYW1lLmluY2x1ZGVzKCdwb3J0Zm9saW8nKSkge1xuICAgICAgICAgIGVtaXR0ZXIuZW1pdChFdmVudHMub25Qb3J0Zm9saW9QYWdlSG92ZXIpXG4gICAgICAgIH1cbiAgICAgIH0sIDUwMDApLFxuICAgIClcblxuICAgIC8vIOW9iOWHuuimlueql+eVq+mdou+8jOatpOahhueUqOaWvOS4i+WWrlxi77yM54K65a+m54++5Yqg6YCf5LiL5Zau55qE6Kit6KiI5pys5oSP77yM5L2/55So6LyD55+t55qE6Ke455m85pmC6ZaTKHRocm90dGxlKVxuICAgICQoJ2JvZHknKS5kZWxlZ2F0ZShcbiAgICAgICcuZXhlY3V0aW9uLW1haW4nLFxuICAgICAgJ21vdXNlb3ZlcicsXG4gICAgICB0aHJvdHRsZShldmVudCA9PiB7XG4gICAgICAgIGVtaXR0ZXIuZW1pdChFdmVudHMub25EaWFsb2dIb3ZlcilcbiAgICAgIH0sIDEwMDApLFxuICAgIClcblxuICAgICQoJ2JvZHknKS5kZWxlZ2F0ZShcbiAgICAgICcubW9yZS1pbmZvLWJ1dHRvbicsXG4gICAgICAnbW91c2VvdmVyJyxcbiAgICAgIHRocm90dGxlKCgpID0+IHtcbiAgICAgICAgZW1pdHRlci5lbWl0KEV2ZW50cy5vbk1vcmVJbmZvQnV0dG9uSG92ZXIpXG4gICAgICB9LCA1MCksXG4gICAgKVxuXG4gICAgdW5iaW5kQ29uc3RydWN0VHJpZ2dlckRlbGVnYXRlKClcbiAgfSxcbilcblxuLyoqXG4gKiDmn6XnnIvmm7TlpJrmjInpiJVcbiAqL1xuZW1pdHRlci5vbihFdmVudHMub25Nb3JlSW5mb0J1dHRvbkhvdmVyLCBmdW5jdGlvbiBhdXRvVHJpZ2dlck1vcmUoKSB7XG4gICQoJy5tb3JlLWluZm8tYnV0dG9uJykuY2xpY2soKVxufSlcblxuLyoqXG4gKiDmiJHnmoTmrbflj7LoqJjpjIRcbiAqL1xuZW1pdHRlci5vbihcbiAgRXZlbnRzLm9uUG9ydGZvbGlvSGlzdG9yeVBhZ2VIb3ZlcixcbiAgZnVuY3Rpb24gY29uc3RydWN0UG9ydGZvbGlvSGlzdG9yeVBhZ2UoKSB7XG4gICAgUG9ydGZvbGlvSGlzdG9yeUhlYWRlckV4dHJhQnV0dG9ucy5jb25zdHJ1Y3QoKVxuICB9LFxuKVxuXG4vKipcbiAqIOaIkeeahOmXnOazqOWIl+ihqFxuICovXG5lbWl0dGVyLm9uKEV2ZW50cy5vbldhdGNobGlzdFBhZ2VIb3Zlciwgd2F0Y2hsaXN0SGVhZGVyQ29uc3RydWN0b3IpXG5cbi8qKlxuICog5oiR55qE5oqV6LOH57WE5ZCIXG4gKi9cbmVtaXR0ZXIub24oXG4gIEV2ZW50cy5vblBvcnRmb2xpb1BhZ2VIb3ZlcixcbiAgZnVuY3Rpb24gY29uc3RydWN0UG9ydGZvbGlvSGVhZGVyRXh0cmEoKSB7XG4gICAgUG9ydGZvbGlvSGVhZGVyRXh0cmFCdXR0b25zLnJlbmRlcigpXG4gIH0sXG4pXG5cbi8qKlxuICog5LiL5Zau5qGG5qGG5aKe5by35LuL6Z2iXG4gKi9cbmVtaXR0ZXIub24oRXZlbnRzLm9uRGlhbG9nSG92ZXIsIGZ1bmN0aW9uIGNvbnN0cnVjdERpYWxvZ01hY3JvKCkge1xuICBpZiAoIXN0b3JhZ2UuZmluZENvbmZpZygpLmV4ZWN1dGlvbk1hY3JvRW5hYmxlZCkge1xuICAgIHJldHVyblxuICB9XG5cbiAgaWYgKEV4ZWN1dGlvbkRpYWxvZy5pc0NvbnN0cnVjdGVkKSB7XG4gICAgcmV0dXJuXG4gIH1cblxuICBpZiAoRXhlY3V0aW9uRGlhbG9nLmlzUGFyZW50Q29uc3RydWN0ZWQgJiYgIUV4ZWN1dGlvbkRpYWxvZy5pc0NvbnN0cnVjdGVkKSB7XG4gICAgRXhlY3V0aW9uRGlhbG9nLmNvbnN0cnVjdCgpXG4gICAgcmV0dXJuXG4gIH1cbn0pXG5cbi8qKlxuICog5q2h6L+O6KiK5oGvXG4gKi9cbmNvbnN0IHVuYmluZFdlbGNvbWVNZXNzYWdlID0gZW1pdHRlci5vbihcbiAgRXZlbnRzLnJlYWR5LFxuICBmdW5jdGlvbiB3ZWxjb21lTWVzc2FnZSgpIHtcbiAgICB0b2FzdC5zdWNjZXNzKFxuICAgICAgaTE4bi7mhJ/orJ3kvb/nlKjmj5DnpLroqp4oKCkgPT4gKFxuICAgICAgICA8YVxuICAgICAgICAgIHN0eWxlPXt7XG4gICAgICAgICAgICBjb2xvcjogJ2JsdWUnLFxuICAgICAgICAgIH19XG4gICAgICAgICAgaHJlZj0naHR0cHM6Ly93d3cubm90aW9uLnNvL2hpbGV6aS80ZmU2OWNkNzA0NDM0ZmYxYjgyZjBjZDQ4ZGQyMTljMydcbiAgICAgICAgICB0YXJnZXQ9J19ibGFuaydcbiAgICAgICAgPlxuICAgICAgICAgIGJldHRlci1ldG9yby11aVxuICAgICAgICA8L2E+XG4gICAgICApKSxcbiAgICAgIHsgcG9zaXRpb246ICdib3R0b20tY2VudGVyJywgaGlkZUFmdGVyOiAzIH0sXG4gICAgKVxuXG4gICAgY29uc3QgYm9vdHN0cmFwRW5kZWRBdCA9IG5ldyBEYXRlKClcbiAgICBjb25zdCBib290c3RyYXBVc2VkVGltZSA9XG4gICAgICBib290c3RyYXBFbmRlZEF0LmdldFRpbWUoKSAtIGJvb3RzdHJhcFN0YXJ0QXQuZ2V0VGltZSgpXG4gICAgZGVidWdBUEkubG9nLmV4dGVuZCgnbG9nJykoYOi1t+WLleaZgumWkyA9ICR7Ym9vdHN0cmFwVXNlZFRpbWV9bXNgKVxuICAgIHVuYmluZFdlbGNvbWVNZXNzYWdlKClcbiAgfSxcbilcblxuZW1pdHRlci5vbihFdmVudHMub25XYXRjaGxpc3RQYWdlSG92ZXIsIGFzeW5jIGZ1bmN0aW9uIGNvbnN0cnVjdFBlb3BsZUV4dHJhKCkge1xuICAkKCdldC11c2VyLXJvdycpLmVhY2goKGluZGV4LCBlbGVtZW50KSA9PiB7XG4gICAgY29uc3QgdXNlckZpbmRlciA9ICQoZWxlbWVudClcbiAgICBjb25zdCBoYXNBcHBlbmRlZCA9ICEhdXNlckZpbmRlci5maW5kKCcudXNlci1tZXRhJykubGVuZ3RoXG5cbiAgICBpZiAoaGFzQXBwZW5kZWQpIHtcbiAgICAgIHJldHVyblxuICAgIH1cblxuICAgIC8qKlxuICAgICAqIHRlc3RzIGh0dHBzOi8vcmVnZXhyLmNvbS81MmZ0NVxuICAgICAqXG4gICAgICogW1BBU1NdIGh0dHBzOi8vZXRvcm8tY2RuLmV0b3Jvc3RhdGljLmNvbS9hdmF0YXJzLzE1MFgxNTAvMTcyNDcyNi8zLmpwZ1xuICAgICAqIFtQQVNTXSBodHRwczovL2V0b3JvLWNkbi5ldG9yb3N0YXRpYy5jb20vYXZhdGFycy8xNTBYMTUwLzE3MjQ3MjYuanBnXG4gICAgICogW1BBU1NdIGh0dHBzOi8vZXRvcm8tY2RuLmV0b3Jvc3RhdGljLmNvbS9hdmF0YXJzLzE1MFgxNTAvNjQ0MTA1OS8yMS5qcGdcbiAgICAgKi9cbiAgICBjb25zdCBjaWQgPSAvYXZhdGFyc1xcL1tcXGRdK1t4WF1bXFxkXStcXC8oPzxjaWQ+W1xcZF0rKVxcLz8vLmV4ZWMoXG4gICAgICAkKGVsZW1lbnQpLmZpbmQoJ1thdXRvbWF0aW9uLWlkPVwidHJhZGUtaXRlbS1hdmF0YXJcIl0nKS5hdHRyKCdzcmMnKSB8fCAnJyxcbiAgICApPy5ncm91cHM/LmNpZFxuXG4gICAgY29uc3QgdHJhZGVyTmFtZSA9ICQoZWxlbWVudClcbiAgICAgIC5maW5kKCdbYXV0b21hdGlvbi1pZD1cInRyYWRlLWl0ZW0tbmFtZVwiXScpXG4gICAgICAuaHRtbCgpXG5cbiAgICBpZiAoY2lkICYmICFoYXNBcHBlbmRlZCkge1xuICAgICAgdXNlckZpbmRlci5wcmVwZW5kKFxuICAgICAgICAkKGA8c3BhbiBjbGFzcz1cInVzZXItbWV0YVwiIGlkPVwidXNlci1tZXRhLSR7Y2lkfVwiPjwvc3Bhbj5gKSxcbiAgICAgIClcblxuICAgICAgUmVhY3RET00ucmVuZGVyKFxuICAgICAgICA8UHJvdmlkZXIgc3RvcmU9e3N0b3JlfT5cbiAgICAgICAgICA8V2F0Y2hsaXN0VXNlckNvbnRyb2xzIGNpZD17Y2lkfSB0cmFkZXJOYW1lPXt0cmFkZXJOYW1lfSAvPlxuICAgICAgICA8L1Byb3ZpZGVyPixcbiAgICAgICAgZ2xvYmFsVGhpcy5kb2N1bWVudC5xdWVyeVNlbGVjdG9yKGAjdXNlci1tZXRhLSR7Y2lkfWApLFxuICAgICAgKVxuICAgIH1cbiAgfSlcbn0pXG5cbi8qKlxuICog5o+Q5L6b5bem5YG05qyE5YWl6YeR5oyJ6YiV77yM5Yyv546H5o+b566X57WQ5p6c6aGv56S6XG4gKi9cbmNvbnN0IGNvbnN0cnVjdERlcG9zaXRCdXR0b24gPSBhc3luYyAoKSA9PiB7XG4gIGNvbnN0IHRhcmdldCA9ICQoJy53LW1lbnUtZm9vdGVyIC5lLWJ0bi1iaWctMicpXG4gIGNvbnN0IHN0YXRlID0gc3RvcmUuZ2V0U3RhdGUoKVxuXG4gIGlmICh0YXJnZXQubGVuZ3RoKSB7XG4gICAgdGFyZ2V0Lmh0bWwoXG4gICAgICBpMThuLuW3puS4i+WFpemHkeaMiemIlShcbiAgICAgICAgc3RhdGUuc2V0dGluZ3MuZXhjaGFuZ2Vbc3RhdGUuc2V0dGluZ3MuZXhjaGFuZ2Uuc2VsZWN0ZWRdLnNlbGwsXG4gICAgICApLFxuICAgIClcbiAgfVxufVxuZW1pdHRlci5vbihFdmVudHMub25TaWRlYmFySG92ZXIsIGNvbnN0cnVjdERlcG9zaXRCdXR0b24pXG5lbWl0dGVyLm9uKEV2ZW50cy5zZXR0aW5nQ2hhbmdlLCBjb25zdHJ1Y3REZXBvc2l0QnV0dG9uKVxuXG4vKipcbiAqIOaPkOS+myBldG9ybyDpoIHpnaLlupXpg6jnmoTjgIzlj6/nlKjjgIHphY3poY3jgIHliKnmvaTjgIHlg7nlgLzjgI3ljK/njofmj5vnrpdcbiAqL1xuZW1pdHRlci5vbihFdmVudHMuc2V0dGluZ0NoYW5nZSwgcmVuZGVyRm9vdGVyVW5pdFZhbHVlcylcbmNvbnN0IGNvbnN0cnVjdEZvb3RlclVuaXRWYWx1ZXNVbmJpbmQgPSBlbWl0dGVyLm9uKFxuICBFdmVudHMucmVhZHksXG4gIGZ1bmN0aW9uIGNvbnN0cnVjdEZvb3RlclVuaXRWYWx1ZXMoKSB7XG4gICAgZ2xvYmFsVGhpcy5zZXRJbnRlcnZhbChyZW5kZXJGb290ZXJVbml0VmFsdWVzLCA1MDAwKVxuICAgIGNvbnN0cnVjdEZvb3RlclVuaXRWYWx1ZXNVbmJpbmQoKVxuICB9LFxuKVxuXG4vKipcbiAqIOW3puWBtOashOmAo+e1kOmgheebruiIh+ioreWumlxuICovXG5lbWl0dGVyLm9uKEV2ZW50cy5zZXR0aW5nQ2hhbmdlLCBzaWRlYmFyQ29uc3RydWN0b3IpXG5lbWl0dGVyLm9uKEV2ZW50cy5vblNpZGViYXJIb3Zlciwgc2lkZWJhckNvbnN0cnVjdG9yKVxuXG4vKipcbiAqIOWPluW+l+WklumDqOmKgOihjOiyt+izo+WMr+eOh1xuICovXG5jb25zdCBmZXRjaEV4dHJhQ3VycmVuY3lTZXR0aW5nc1VuYmluZCA9IGVtaXR0ZXIub24oXG4gIEV2ZW50cy5yZWFkeSxcbiAgYXN5bmMgZnVuY3Rpb24gZmV0Y2hFeHRyYUN1cnJlbmN5U2V0dGluZ3MoKSB7XG4gICAgYXdhaXQgc3RvcmUuZGlzcGF0Y2goZmV0Y2hFeHRyYUN1cnJlbmN5KCkpXG4gICAgZW1pdHRlci5lbWl0KEV2ZW50cy5zZXR0aW5nQ2hhbmdlKVxuICAgIGZldGNoRXh0cmFDdXJyZW5jeVNldHRpbmdzVW5iaW5kKClcbiAgfSxcbilcblxuLy8g55uh5Y+v6IO95LiN5ouW5oWiIGV0b3JvIOeoi+W8j+WVn+WLleaZgumWk++8jOWwhyBDU1Mg57Wx5LiA5ZyoIHJlYWR5IOW+jOWKoOi8iVxuY29uc3QgY29uc3RydWN0Q3NzVW5iaW5kID0gZW1pdHRlci5vbihFdmVudHMucmVhZHksIGZ1bmN0aW9uIGNvbnN0cnVjdENTUygpIHtcbiAgLyoqXG4gICAqIOaPkOS+myBldG9ybyDpoIHpnaLlupXpg6jnmoTjgIzlj6/nlKjjgIHphY3poY3jgIHliKnmvaTjgIHlg7nlgLzjgI3ljK/njofmj5vnrpdcbiAgICovXG4gIEdNLmFkZFN0eWxlKGBcbiAgICAuZm9vdGVyLXVuaXRbX25nY29udGVudC1xbG8tYzRdIHtcbiAgICAgIGhlaWdodDogMTAwcHg7XG4gICAgfVxuXG4gICAgLmZvb3Rlci11bml0LXZhbHVlLWV4Y2hhbmdlIHtcbiAgICAgIGZvbnQtc2l6ZTogMTBwdDtcbiAgICAgIG1hcmdpbi1sZWZ0OiA0cHg7XG4gICAgICBvcGFjaXR5OiAwLjY1O1xuICAgIH1cblxuICAgIC5mb290ZXItdW5pdC12YWx1ZS1leGNoYW5nZS1tYWluIHtcbiAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgIH1cblxuICAgIC5mb290ZXItdW5pdC12YWx1ZS1leGNoYW5nZS1zbWFsbCB7XG4gICAgICBmb250LXNpemU6IDhwdDtcbiAgICB9XG4gIGApXG5cbiAgLyoqXG4gICAqIOS/ruato+OAjOa3u+WKoOWIsOWIl+ihqOOAjeiiq+WFtuWug+WFg+e0oOiTi+S9j+eahOWVj+mhjFxuICAgKlxuICAgKiBlLmcuIGh0dHBzOi8vd3d3LmV0b3JvLmNvbS9wZW9wbGUvb2xpdmllcmRhbnZlbC9wb3J0Zm9saW9cbiAgICovXG4gIEdNLmFkZFN0eWxlKGBcbiAgICBib2R5IC5pbm5lci1oZWFkZXIge1xuICAgICAgei1pbmRleDogMVxuICAgIH1cbiAgYClcblxuICAvKipcbiAgICog5L2/44CM6LK35YWl6IiH6LOj5Ye65oyJ6YiV44CN5pu05Yqg56uL6auU5piO56K6XG4gICAqXG4gICAqIOWkp+WkmuaVuOS9v+eUqOiAheWcqOeci+WIsOiyt+WFpeiIh+izo+WHuuaZgu+8jOaZguW4uOWIhuS4jea4heOAjOebruWJjeWLvumBuOOAjemgheebru+8jOWwjuiHtOe2k+W4uOeZvOeUn+aYjuaYjuimgeiyt+WFpe+8jOWNu+S4jeWwj+W/g+izo+epuueahOeLgOazgeOAglxuICAgKi9cbiAgR00uYWRkU3R5bGUoYFxuICAgIC5leGVjdXRpb24taGVhZCAuZXhlY3V0aW9uLWhlYWQtYnV0dG9uLmFjdGl2ZTphZnRlciB7XG4gICAgICBjb250ZW50OiBcIuKchVwiO1xuICAgIH1cbiAgYClcblxuICAvKipcbiAgICog56K65L+dIHRvYXN0IOS4jeacg+iiq+iTi+S9j1xuICAgKi9cbiAgR00uYWRkU3R5bGUoYFxuICAgICNjdC1jb250YWluZXIge1xuICAgICAgei1pbmRleDogMTAwMDAwMFxuICAgIH1cbiAgYClcblxuICAvKipcbiAgICogYmx1ZXByaW50anMg55qEIHRvb2x0aXAgXGLkuYsgei1pbmRleCDpnIDopoHpq5jmlrzjgIzkuIvllq4gZGlhbG9n44CN5omN5aW95q2j56K65o+Q56S66LOH6KiKXG4gICAqL1xuICBHTS5hZGRTdHlsZShgXG4gICAgLmJwMy10cmFuc2l0aW9uLWNvbnRhaW5lciB7XG4gICAgICB6LWluZGV4OiAxMDAwMVxuICAgIH1cbiAgYClcblxuICAvKipcbiAgICog6Zec5rOo55qE5L2/55So6ICF5YCR55qE6aSY6aGNXG4gICAqL1xuICBHTS5hZGRTdHlsZShgXG4gICAgLnVzZXItbWV0YSB7XG4gICAgICBtYXJnaW4tcmlnaHQ6IDhweDtcbiAgICB9XG4gIGApXG5cbiAgLyoqXG4gICAqIOeCuumXnOazqOWIl+ihqOmggemdouWinuWKoOS4gOm7niBzdHlsZSDos6rmhJ9cbiAgICovXG4gIEdNLmFkZFN0eWxlKGBcbiAgICBldC1pbnN0cnVtZW50LXRyYWRpbmctcm93OmhvdmVyLFxuICAgIGV0LXVzZXItcm93OmhvdmVyIHtcbiAgICAgIGJveC1zaGFkb3c6IDFweCAxcHggNXB4ICM0MjQyNDI5NDtcbiAgICAgIHRleHQtc2hhZG93OiAycHggMnB4IDFweCAjZDJkMmQyO1xuICAgIH1cbiAgYClcblxuICAvKiog5L2/6aGv55y86LOj5Ye65oiW6LK35YWl5paH5a2XICovXG4gIEdNLmFkZFN0eWxlKGBcbiAgICBbZGF0YS1ldG9yby1hdXRvbWF0aW9uLWlkPVwib3Blbi10cmFkZXMtdGFibGUtYm9keS1jZWxsLWFjdGlvbi1zZWxsXCJdIHtcbiAgICAgIGNvbG9yOiAjZmY3MTcxO1xuICAgIH1cbiAgICBbZGF0YS1ldG9yby1hdXRvbWF0aW9uLWlkPVwib3Blbi10cmFkZXMtdGFibGUtYm9keS1jZWxsLWFjdGlvbi1zZWxsXCJdOmFmdGVyIHtcbiAgICAgIGNvbnRlbnQ6IFwi8J+TiVwiO1xuICAgIH1cblxuICAgIFtkYXRhLWV0b3JvLWF1dG9tYXRpb24taWQ9XCJvcGVuLXRyYWRlcy10YWJsZS1ib2R5LWNlbGwtYWN0aW9uLWJ1eVwiXSB7XG4gICAgICBjb2xvcjogIzIwYWUyMDtcbiAgICB9XG4gICAgW2RhdGEtZXRvcm8tYXV0b21hdGlvbi1pZD1cIm9wZW4tdHJhZGVzLXRhYmxlLWJvZHktY2VsbC1hY3Rpb24tYnV5XCJdOmFmdGVyIHtcbiAgICAgIGNvbnRlbnQ6IFwi8J+TiFwiO1xuICAgIH1cbiAgYClcblxuICBjb25zdHJ1Y3RDc3NVbmJpbmQoKVxufSlcbiJdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQUFBO0FBQ0E7QUFDQTtBQUNBO0FBRUE7QUFDQTtBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUdBO0FBRUE7QUFDQTtBQUFBO0FBRUE7Ozs7O0FBSUE7QUFJQTtBQUNBO0FBQ0E7QUFHQTs7Ozs7Ozs7QUFPQTtBQUdBO0FBRUE7QUFDQTtBQUVBO0FBSUE7QUFDQTtBQUNBO0FBR0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBRUE7QUFJQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFHQTtBQUlBO0FBQ0E7QUFHQTtBQUlBO0FBQ0E7QUFHQTtBQUNBO0FBR0E7Ozs7QUFHQTtBQUNBO0FBQ0E7QUFFQTs7OztBQUdBO0FBR0E7QUFDQTtBQUdBOzs7O0FBR0E7QUFFQTs7OztBQUdBO0FBR0E7QUFDQTtBQUdBOzs7O0FBR0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUVBOzs7O0FBR0E7QUFHQTtBQUNBO0FBRUE7QUFDQTtBQURBO0FBR0E7QUFDQTtBQUxBO0FBREE7QUFXQTtBQUFBO0FBQUE7QUFHQTtBQUNBO0FBRUE7QUFDQTtBQUNBO0FBR0E7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQ0E7QUFBQTtBQUNBO0FBQUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBRUE7Ozs7Ozs7OztBQU9BO0FBQUE7QUFBQTtBQUlBO0FBQ0E7QUFHQTtBQUNBO0FBSUE7QUFDQTtBQUFBO0FBQ0E7QUFBQTtBQUFBO0FBSUE7QUFDQTtBQUNBO0FBckNBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQ0E7QUFEQTtBQUFBO0FBQUE7QUFDQTtBQURBO0FBQUE7QUF1Q0E7Ozs7QUFHQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFLQTtBQUNBO0FBWEE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFDQTtBQURBO0FBQUE7QUFBQTtBQUFBO0FBQ0E7QUFXQTtBQUNBO0FBRUE7Ozs7QUFHQTtBQUNBO0FBR0E7QUFDQTtBQUNBO0FBR0E7Ozs7QUFHQTtBQUNBO0FBRUE7Ozs7QUFHQTtBQUFBO0FBRUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQ0E7QUFEQTtBQUVBO0FBQ0E7QUFDQTtBQUpBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQ0E7QUFIQTtBQUFBO0FBQUE7QUFDQTtBQURBO0FBQUE7QUFDQTtBQVNBO0FBQ0E7OztBQUdBO0FBb0JBOzs7Ozs7QUFLQTtBQU1BOzs7Ozs7QUFLQTtBQU1BOzs7O0FBR0E7QUFNQTs7OztBQUdBO0FBTUE7Ozs7QUFHQTtBQU1BOzs7O0FBR0E7QUFRQTtBQUNBO0FBQUE7QUFnQkE7QUFDQSIsInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///./src/etoro.tsx\n"); /***/ }), @@ -14456,7 +14480,7 @@ eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export (binding) * /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; -eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"i18n\", function() { return i18n; });\n/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! react */ \"./node_modules/react/index.js\");\n/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_0__);\nvar _$exec, _$exec$groups;\n\nfunction _typeof(obj) { \"@babel/helpers - typeof\"; if (typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\") { _typeof = function _typeof(obj) { return typeof obj; }; } else { _typeof = function _typeof(obj) { return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj; }; } return _typeof(obj); }\n\nfunction _wrapRegExp(re, groups) { _wrapRegExp = function _wrapRegExp(re, groups) { return new BabelRegExp(re, undefined, groups); }; var _RegExp = _wrapNativeSuper(RegExp); var _super = RegExp.prototype; var _groups = new WeakMap(); function BabelRegExp(re, flags, groups) { var _this = _RegExp.call(this, re, flags); _groups.set(_this, groups || _groups.get(re)); return _this; } _inherits(BabelRegExp, _RegExp); BabelRegExp.prototype.exec = function (str) { var result = _super.exec.call(this, str); if (result) result.groups = buildGroups(result, this); return result; }; BabelRegExp.prototype[Symbol.replace] = function (str, substitution) { if (typeof substitution === \"string\") { var groups = _groups.get(this); return _super[Symbol.replace].call(this, str, substitution.replace(/\\$<([^>]+)>/g, function (_, name) { return \"$\" + groups[name]; })); } else if (typeof substitution === \"function\") { var _this = this; return _super[Symbol.replace].call(this, str, function () { var args = []; args.push.apply(args, arguments); if (_typeof(args[args.length - 1]) !== \"object\") { args.push(buildGroups(args, _this)); } return substitution.apply(this, args); }); } else { return _super[Symbol.replace].call(this, str, substitution); } }; function buildGroups(result, re) { var g = _groups.get(re); return Object.keys(g).reduce(function (groups, name) { groups[name] = result[g[name]]; return groups; }, Object.create(null)); } return _wrapRegExp.apply(this, arguments); }\n\nfunction _inherits(subClass, superClass) { if (typeof superClass !== \"function\" && superClass !== null) { throw new TypeError(\"Super expression must either be null or a function\"); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, writable: true, configurable: true } }); if (superClass) _setPrototypeOf(subClass, superClass); }\n\nfunction _possibleConstructorReturn(self, call) { if (call && (_typeof(call) === \"object\" || typeof call === \"function\")) { return call; } return _assertThisInitialized(self); }\n\nfunction _assertThisInitialized(self) { if (self === void 0) { throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\"); } return self; }\n\nfunction _wrapNativeSuper(Class) { var _cache = typeof Map === \"function\" ? new Map() : undefined; _wrapNativeSuper = function _wrapNativeSuper(Class) { if (Class === null || !_isNativeFunction(Class)) return Class; if (typeof Class !== \"function\") { throw new TypeError(\"Super expression must either be null or a function\"); } if (typeof _cache !== \"undefined\") { if (_cache.has(Class)) return _cache.get(Class); _cache.set(Class, Wrapper); } function Wrapper() { return _construct(Class, arguments, _getPrototypeOf(this).constructor); } Wrapper.prototype = Object.create(Class.prototype, { constructor: { value: Wrapper, enumerable: false, writable: true, configurable: true } }); return _setPrototypeOf(Wrapper, Class); }; return _wrapNativeSuper(Class); }\n\nfunction _construct(Parent, args, Class) { if (_isNativeReflectConstruct()) { _construct = Reflect.construct; } else { _construct = function _construct(Parent, args, Class) { var a = [null]; a.push.apply(a, args); var Constructor = Function.bind.apply(Parent, a); var instance = new Constructor(); if (Class) _setPrototypeOf(instance, Class.prototype); return instance; }; } return _construct.apply(null, arguments); }\n\nfunction _isNativeReflectConstruct() { if (typeof Reflect === \"undefined\" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === \"function\") return true; try { Date.prototype.toString.call(Reflect.construct(Date, [], function () {})); return true; } catch (e) { return false; } }\n\nfunction _isNativeFunction(fn) { return Function.toString.call(fn).indexOf(\"[native code]\") !== -1; }\n\nfunction _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); }\n\nfunction _getPrototypeOf(o) { _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; return _getPrototypeOf(o); }\n\n\nvar zh = {\n 左下入金按鈕: function _(value) {\n return \"\\u5165\\u91D1\\uFF08\".concat(value, \"\\uFF09\\u9280\\u884C\\u8CE3\\u51FA\");\n },\n 使鎖定下單重複一致: function _() {\n return '自動上次';\n },\n 使鎖定下單重複一致否定: function _() {\n return '自動上次?';\n },\n 使鎖定下單重複一致之說明: function _() {\n return '始終以你上一次點擊巨集為基準,同步每次下單金額與槓桿';\n },\n 使緊湊: function _() {\n return '緊湊';\n },\n 輸入以過濾: function _() {\n return '過濾...';\n },\n 腳本標題: function _() {\n return 'eToro better UI';\n },\n 功能提供者述敘: function _(Link) {\n return react__WEBPACK_IMPORTED_MODULE_0__[\"createElement\"](\"span\", null, \"\\u672C\\u529F\\u80FD\\u7531 \", react__WEBPACK_IMPORTED_MODULE_0__[\"createElement\"](Link, null), \" \\u63D0\\u4F9B\");\n },\n 腳本官網: function _() {\n return '腳本官網';\n },\n 聯絡作者: function _() {\n return '聯絡作者';\n },\n 風險說明書: function _() {\n return '風險說明書';\n },\n 感謝使用提示語: function _(Link) {\n return react__WEBPACK_IMPORTED_MODULE_0__[\"createElement\"](react__WEBPACK_IMPORTED_MODULE_0__[\"Fragment\"], null, react__WEBPACK_IMPORTED_MODULE_0__[\"createElement\"](\"span\", null, \"\\uD83D\\uDE4F \\u611F\\u8B1D\\u60A8\\u4F7F\\u7528 \", zh.腳本標題(), \" \\u66F4\\u591A\\u8CC7\\u8A0A\\u8ACB\\u6070\\u8A62\\uFF1A\"), react__WEBPACK_IMPORTED_MODULE_0__[\"createElement\"](Link, null), \" \", zh.腳本官網());\n },\n 設定幣別: function _(selectedText) {\n return \"\\u8A2D\\u5B9A\\u5E63\\u5225\\uFF08\\u7576\\u524D\\uFF1A\".concat(selectedText, \"\\uFF09\");\n },\n 下單巨集: function _(enabled) {\n return \"\\u4E0B\\u55AE\\u5DE8\\u96C6\\uFF08\\u7576\\u524D\\uFF1A\".concat(enabled ? '啟用' : '停用', \"\\uFF09\");\n },\n 巨集金額設定: function _() {\n return '巨集金額設定';\n },\n 大概延遲: function _(msValue) {\n return \"\\u5927\\u6982\\u5EF6\\u9072\\uFF1A\".concat(msValue, \"ms\");\n },\n 槓桿: function _() {\n return '槓桿';\n },\n 金額: function _() {\n return '金額';\n },\n 設定: function _() {\n return '設定';\n },\n 餘額: function _() {\n return '餘額';\n },\n 確保同意下單巨集風險: function _(Link) {\n return react__WEBPACK_IMPORTED_MODULE_0__[\"createElement\"](\"span\", null, \"\\u5728\\u4F7F\\u7528 better-etoro-ui \\u6240\\u63D0\\u4F9B\\u7684\\u4E0B\\u55AE\\u5DE8\\u96C6\\u4E4B\\u524D\\uFF0C\\u8ACB\\u60A8\\u78BA\\u4FDD\\u60A8\\u5DF2\\u95B1\\u8B80 \", react__WEBPACK_IMPORTED_MODULE_0__[\"createElement\"](Link, null), \"\\uFF0C\\u4E26\\u4F60\\u4E5F\\u8868\\u793A\\u540C\\u610F\\u3002\");\n },\n 投資組合: function _() {\n return '投資組合';\n },\n 動作沒有執行: function _() {\n return '動作沒有執行,因為發現可能的出錯';\n },\n 設定已變更: function _(PostComponent) {\n return react__WEBPACK_IMPORTED_MODULE_0__[\"createElement\"](\"span\", null, \"\\u8A2D\\u5B9A\\u5DF2\\u8B8A\\u66F4\\uFF1A\", react__WEBPACK_IMPORTED_MODULE_0__[\"createElement\"](PostComponent, null));\n }\n};\nvar en = {\n 左下入金按鈕: function _(value) {\n return \"Deposit\\uFF08\".concat(value, \"\\uFF09Sold\");\n },\n 使鎖定下單重複一致: function _() {\n return 'Same Order';\n },\n 使鎖定下單重複一致否定: function _() {\n return 'Same Order?';\n },\n 使鎖定下單重複一致之說明: function _() {\n return 'Always use the last Amount and Lever which you last click in macro buttons.';\n },\n 使緊湊: function _() {\n return 'compact';\n },\n 輸入以過濾: function _() {\n return 'Filter...';\n },\n 腳本標題: function _() {\n return 'eToro better UI';\n },\n 功能提供者述敘: function _(Link) {\n return react__WEBPACK_IMPORTED_MODULE_0__[\"createElement\"](\"span\", null, \"Support By \", react__WEBPACK_IMPORTED_MODULE_0__[\"createElement\"](Link, null));\n },\n 腳本官網: function _() {\n return 'Website';\n },\n 聯絡作者: function _() {\n return 'Contact Developer';\n },\n 風險說明書: function _() {\n return 'Risk Agreement';\n },\n 感謝使用提示語: function _(Link) {\n return react__WEBPACK_IMPORTED_MODULE_0__[\"createElement\"](react__WEBPACK_IMPORTED_MODULE_0__[\"Fragment\"], null, react__WEBPACK_IMPORTED_MODULE_0__[\"createElement\"](\"span\", null, \"\\uD83D\\uDE4F Thanks for install \", en.腳本標題(), \", for more information in\", ' '), react__WEBPACK_IMPORTED_MODULE_0__[\"createElement\"](Link, null), \" \", en.腳本官網());\n },\n 設定幣別: function _(selectedText) {\n return \"Currency\\uFF08Now\\uFF1A\".concat(selectedText, \"\\uFF09\");\n },\n 下單巨集: function _(enabled) {\n return \"Macro\\uFF08Now\\uFF1A\".concat(enabled ? 'enabled' : 'disabled', \"\\uFF09\");\n },\n 巨集金額設定: function _() {\n return 'Order Macro Setting';\n },\n 大概延遲: function _(msValue) {\n return \"Infer Delay\\uFF1A\".concat(msValue, \"ms\");\n },\n 槓桿: function _() {\n return 'Lever';\n },\n 金額: function _() {\n return 'Amount';\n },\n 設定: function _() {\n return 'Setting';\n },\n 餘額: function _() {\n return 'Balance';\n },\n 確保同意下單巨集風險: function _(Link) {\n return react__WEBPACK_IMPORTED_MODULE_0__[\"createElement\"](\"span\", null, \"Before use the Macro support by \", this.腳本標題(), \", Make sure you understand \", react__WEBPACK_IMPORTED_MODULE_0__[\"createElement\"](Link, null), \", and you must agree the possible risk.\");\n },\n 投資組合: function _() {\n return 'portfolio';\n },\n 動作沒有執行: function _() {\n return 'No Action Execution, Seems Somethings broken.';\n },\n 設定已變更: function _(PostComponent) {\n return react__WEBPACK_IMPORTED_MODULE_0__[\"createElement\"](\"span\", null, \"Setting Changed\\uFF1A\", react__WEBPACK_IMPORTED_MODULE_0__[\"createElement\"](PostComponent, null));\n }\n};\nvar eToroLocale = ((_$exec = /*#__PURE__*/_wrapRegExp(/eToroLocale=([\\0-\\uFFFF]+?);/i, {\n eToroLocale: 1\n}).exec(globalThis.document.cookie)) === null || _$exec === void 0 ? void 0 : (_$exec$groups = _$exec.groups) === null || _$exec$groups === void 0 ? void 0 : _$exec$groups.eToroLocale) || 'zh-tw';\nvar i18n = eToroLocale.includes('zh') && zh || en;//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiLi9zcmMvaTE4bi50c3guanMiLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly8vLi9zcmMvaTE4bi50c3g/NWUyMyJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgKiBhcyBSZWFjdCBmcm9tICdyZWFjdCdcblxuY29uc3QgemggPSB7XG4gIOW3puS4i+WFpemHkeaMiemIlTogKHZhbHVlOiBudW1iZXIpID0+IGDlhaXph5HvvIgke3ZhbHVlfe+8iemKgOihjOizo+WHumAsXG4gIOS9v+mOluWumuS4i+WWrumHjeikh+S4gOiHtDogKCkgPT4gJ+iHquWLleS4iuasoScsXG4gIOS9v+mOluWumuS4i+WWrumHjeikh+S4gOiHtOWQpuWumjogKCkgPT4gJ+iHquWLleS4iuasoT8nLFxuICDkvb/pjpblrprkuIvllq7ph43opIfkuIDoh7TkuYvoqqrmmI46ICgpID0+XG4gICAgJ+Wni+e1guS7peS9oOS4iuS4gOasoem7nuaTiuW3qOmbhueCuuWfuua6lu+8jOWQjOatpeavj+asoeS4i+WWrumHkemhjeiIh+ank+ahvycsXG4gIOS9v+e3iua5ijogKCkgPT4gJ+e3iua5iicsXG4gIOi8uOWFpeS7pemBjua/vjogKCkgPT4gJ+mBjua/vi4uLicsXG4gIOiFs+acrOaomemhjDogKCkgPT4gJ2VUb3JvIGJldHRlciBVSScsXG4gIOWKn+iDveaPkOS+m+iAhei/sOaVmDogKExpbms6IFJlYWN0LkZDKSA9PiB7XG4gICAgcmV0dXJuIChcbiAgICAgIDxzcGFuPlxuICAgICAgICDmnKzlip/og73nlLEgPExpbmsgLz4g5o+Q5L6bXG4gICAgICA8L3NwYW4+XG4gICAgKVxuICB9LFxuICDohbPmnKzlrpjntrI6ICgpID0+ICfohbPmnKzlrpjntrInLFxuICDoga/ntaHkvZzogIU6ICgpID0+ICfoga/ntaHkvZzogIUnLFxuICDpoqjpmqroqqrmmI7mm7g6ICgpID0+ICfpoqjpmqroqqrmmI7mm7gnLFxuICDmhJ/orJ3kvb/nlKjmj5DnpLroqp46IChMaW5rOiBSZWFjdC5GQykgPT4ge1xuICAgIHJldHVybiAoXG4gICAgICA8UmVhY3QuRnJhZ21lbnQ+XG4gICAgICAgIDxzcGFuPvCfmY8g5oSf6Kyd5oKo5L2/55SoIHt6aC7ohbPmnKzmqJnpoYwoKX0g5pu05aSa6LOH6KiK6KuL5oGw6Kmi77yaPC9zcGFuPlxuICAgICAgICA8TGluayAvPiB7emgu6IWz5pys5a6Y57ayKCl9XG4gICAgICA8L1JlYWN0LkZyYWdtZW50PlxuICAgIClcbiAgfSxcbiAg6Kit5a6a5bmj5YilOiAoc2VsZWN0ZWRUZXh0OiBzdHJpbmcpID0+IGDoqK3lrprluaPliKXvvIjnlbbliY3vvJoke3NlbGVjdGVkVGV4dH3vvIlgLFxuICDkuIvllq7lt6jpm4Y6IGVuYWJsZWQgPT4gYOS4i+WWruW3qOmbhu+8iOeVtuWJje+8miR7ZW5hYmxlZCA/ICfllZ/nlKgnIDogJ+WBnOeUqCd977yJYCxcbiAg5beo6ZuG6YeR6aGN6Kit5a6aOiAoKSA9PiAn5beo6ZuG6YeR6aGN6Kit5a6aJyxcbiAg5aSn5qaC5bu26YGyOiAobXNWYWx1ZTogbnVtYmVyKSA9PiBg5aSn5qaC5bu26YGy77yaJHttc1ZhbHVlfW1zYCxcbiAg5qeT5qG/OiAoKSA9PiAn5qeT5qG/JyxcbiAg6YeR6aGNOiAoKSA9PiAn6YeR6aGNJyxcbiAg6Kit5a6aOiAoKSA9PiAn6Kit5a6aJyxcbiAg6aSY6aGNOiAoKSA9PiAn6aSY6aGNJyxcbiAg56K65L+d5ZCM5oSP5LiL5Zau5beo6ZuG6aKo6ZqqOiAoTGluazogUmVhY3QuRkMpID0+IHtcbiAgICByZXR1cm4gKFxuICAgICAgPHNwYW4+XG4gICAgICAgIOWcqOS9v+eUqCBiZXR0ZXItZXRvcm8tdWkg5omA5o+Q5L6b55qE5LiL5Zau5beo6ZuG5LmL5YmN77yM6KuL5oKo56K65L+d5oKo5bey6Zax6K6AIDxMaW5rIC8+XG4gICAgICAgIO+8jOS4puS9oOS5n+ihqOekuuWQjOaEj+OAglxuICAgICAgPC9zcGFuPlxuICAgIClcbiAgfSxcbiAg5oqV6LOH57WE5ZCIOiAoKSA9PiAn5oqV6LOH57WE5ZCIJyxcbiAg5YuV5L2c5rKS5pyJ5Z+36KGMOiAoKSA9PiAn5YuV5L2c5rKS5pyJ5Z+36KGM77yM5Zug54K655m854++5Y+v6IO955qE5Ye66YyvJyxcbiAg6Kit5a6a5bey6K6K5pu0OiAoUG9zdENvbXBvbmVudDogUmVhY3QuRkMpID0+IHtcbiAgICByZXR1cm4gKFxuICAgICAgPHNwYW4+XG4gICAgICAgIOioreWumuW3suiuiuabtO+8mlxuICAgICAgICA8UG9zdENvbXBvbmVudCAvPlxuICAgICAgPC9zcGFuPlxuICAgIClcbiAgfSxcbn1cblxuY29uc3QgZW46IHR5cGVvZiB6aCA9IHtcbiAg5bem5LiL5YWl6YeR5oyJ6YiVOiAodmFsdWU6IG51bWJlcikgPT4gYERlcG9zaXTvvIgke3ZhbHVlfe+8iVNvbGRgLFxuICDkvb/pjpblrprkuIvllq7ph43opIfkuIDoh7Q6ICgpID0+ICdTYW1lIE9yZGVyJyxcbiAg5L2/6Y6W5a6a5LiL5Zau6YeN6KSH5LiA6Ie05ZCm5a6aOiAoKSA9PiAnU2FtZSBPcmRlcj8nLFxuICDkvb/pjpblrprkuIvllq7ph43opIfkuIDoh7TkuYvoqqrmmI46ICgpID0+XG4gICAgJ0Fsd2F5cyB1c2UgdGhlIGxhc3QgQW1vdW50IGFuZCBMZXZlciB3aGljaCB5b3UgbGFzdCBjbGljayBpbiBtYWNybyBidXR0b25zLicsXG4gIOS9v+e3iua5ijogKCkgPT4gJ2NvbXBhY3QnLFxuICDovLjlhaXku6XpgY7mv746ICgpID0+ICdGaWx0ZXIuLi4nLFxuICDohbPmnKzmqJnpoYw6ICgpID0+ICdlVG9ybyBiZXR0ZXIgVUknLFxuICDlip/og73mj5DkvpvogIXov7DmlZg6IChMaW5rOiBSZWFjdC5GQykgPT4ge1xuICAgIHJldHVybiAoXG4gICAgICA8c3Bhbj5cbiAgICAgICAgU3VwcG9ydCBCeSA8TGluayAvPlxuICAgICAgPC9zcGFuPlxuICAgIClcbiAgfSxcbiAg6IWz5pys5a6Y57ayOiAoKSA9PiAnV2Vic2l0ZScsXG4gIOiBr+e1oeS9nOiAhTogKCkgPT4gJ0NvbnRhY3QgRGV2ZWxvcGVyJyxcbiAg6aKo6Zqq6Kqq5piO5pu4OiAoKSA9PiAnUmlzayBBZ3JlZW1lbnQnLFxuICDmhJ/orJ3kvb/nlKjmj5DnpLroqp46IChMaW5rOiBSZWFjdC5GQykgPT4ge1xuICAgIHJldHVybiAoXG4gICAgICA8UmVhY3QuRnJhZ21lbnQ+XG4gICAgICAgIDxzcGFuPlxuICAgICAgICAgIPCfmY8gVGhhbmtzIGZvciBpbnN0YWxsIHtlbi7ohbPmnKzmqJnpoYwoKX0sIGZvciBtb3JlIGluZm9ybWF0aW9uIGlueycgJ31cbiAgICAgICAgPC9zcGFuPlxuICAgICAgICA8TGluayAvPiB7ZW4u6IWz5pys5a6Y57ayKCl9XG4gICAgICA8L1JlYWN0LkZyYWdtZW50PlxuICAgIClcbiAgfSxcbiAg6Kit5a6a5bmj5YilOiAoc2VsZWN0ZWRUZXh0OiBzdHJpbmcpID0+IGBDdXJyZW5jee+8iE5vd++8miR7c2VsZWN0ZWRUZXh0fe+8iWAsXG4gIOS4i+WWruW3qOmbhjogZW5hYmxlZCA9PiBgTWFjcm/vvIhOb3fvvJoke2VuYWJsZWQgPyAnZW5hYmxlZCcgOiAnZGlzYWJsZWQnfe+8iWAsXG4gIOW3qOmbhumHkemhjeioreWumjogKCkgPT4gJ09yZGVyIE1hY3JvIFNldHRpbmcnLFxuICDlpKfmpoLlu7bpgbI6IChtc1ZhbHVlOiBudW1iZXIpID0+IGBJbmZlciBEZWxhee+8miR7bXNWYWx1ZX1tc2AsXG4gIOank+ahvzogKCkgPT4gJ0xldmVyJyxcbiAg6YeR6aGNOiAoKSA9PiAnQW1vdW50JyxcbiAg6Kit5a6aOiAoKSA9PiAnU2V0dGluZycsXG4gIOmkmOmhjTogKCkgPT4gJ0JhbGFuY2UnLFxuICDnorrkv53lkIzmhI/kuIvllq7lt6jpm4bpoqjpmqooTGluazogUmVhY3QuRkMpIHtcbiAgICByZXR1cm4gKFxuICAgICAgPHNwYW4+XG4gICAgICAgIEJlZm9yZSB1c2UgdGhlIE1hY3JvIHN1cHBvcnQgYnkge3RoaXMu6IWz5pys5qiZ6aGMKCl9LCBNYWtlIHN1cmUgeW91XG4gICAgICAgIHVuZGVyc3RhbmQgPExpbmsgLz4sIGFuZCB5b3UgbXVzdCBhZ3JlZSB0aGUgcG9zc2libGUgcmlzay5cbiAgICAgIDwvc3Bhbj5cbiAgICApXG4gIH0sXG4gIOaKleizh+e1hOWQiDogKCkgPT4gJ3BvcnRmb2xpbycsXG4gIOWLleS9nOaykuacieWft+ihjDogKCkgPT4gJ05vIEFjdGlvbiBFeGVjdXRpb24sIFNlZW1zIFNvbWV0aGluZ3MgYnJva2VuLicsXG4gIOioreWumuW3suiuiuabtDogKFBvc3RDb21wb25lbnQ6IFJlYWN0LkZDKSA9PiB7XG4gICAgcmV0dXJuIChcbiAgICAgIDxzcGFuPlxuICAgICAgICBTZXR0aW5nIENoYW5nZWTvvJpcbiAgICAgICAgPFBvc3RDb21wb25lbnQgLz5cbiAgICAgIDwvc3Bhbj5cbiAgICApXG4gIH0sXG59XG5cbnR5cGUgRXRvcm9Mb2NhbGUgPSAnZW4tZ2InIHwgJ3poLWNuJyB8ICd6aC10dydcblxuY29uc3QgZVRvcm9Mb2NhbGU6IEV0b3JvTG9jYWxlID1cbiAgKC9lVG9yb0xvY2FsZT0oPzxlVG9yb0xvY2FsZT5bXFxzXFxTXSs/KTsvaS5leGVjKGdsb2JhbFRoaXMuZG9jdW1lbnQuY29va2llKVxuICAgID8uZ3JvdXBzPy5lVG9yb0xvY2FsZSBhcyBFdG9yb0xvY2FsZSkgfHwgJ3poLXR3J1xuXG5leHBvcnQgY29uc3QgaTE4biA9IChlVG9yb0xvY2FsZS5pbmNsdWRlcygnemgnKSAmJiB6aCkgfHwgZW5cbiJdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQUFBO0FBRUE7QUFDQTtBQUFBO0FBQUE7QUFDQTtBQUFBO0FBQUE7QUFDQTtBQUFBO0FBQUE7QUFDQTtBQUFBO0FBQUE7QUFFQTtBQUFBO0FBQUE7QUFDQTtBQUFBO0FBQUE7QUFDQTtBQUFBO0FBQUE7QUFDQTtBQUNBO0FBS0E7QUFDQTtBQUFBO0FBQUE7QUFDQTtBQUFBO0FBQUE7QUFDQTtBQUFBO0FBQUE7QUFDQTtBQUNBO0FBTUE7QUFDQTtBQUFBO0FBQUE7QUFDQTtBQUFBO0FBQUE7QUFDQTtBQUFBO0FBQUE7QUFDQTtBQUFBO0FBQUE7QUFDQTtBQUFBO0FBQUE7QUFDQTtBQUFBO0FBQUE7QUFDQTtBQUFBO0FBQUE7QUFDQTtBQUFBO0FBQUE7QUFDQTtBQUNBO0FBTUE7QUFDQTtBQUFBO0FBQUE7QUFDQTtBQUFBO0FBQUE7QUFDQTtBQUNBO0FBTUE7QUFwREE7QUF1REE7QUFDQTtBQUFBO0FBQUE7QUFDQTtBQUFBO0FBQUE7QUFDQTtBQUFBO0FBQUE7QUFDQTtBQUFBO0FBQUE7QUFFQTtBQUFBO0FBQUE7QUFDQTtBQUFBO0FBQUE7QUFDQTtBQUFBO0FBQUE7QUFDQTtBQUNBO0FBS0E7QUFDQTtBQUFBO0FBQUE7QUFDQTtBQUFBO0FBQUE7QUFDQTtBQUFBO0FBQUE7QUFDQTtBQUNBO0FBUUE7QUFDQTtBQUFBO0FBQUE7QUFDQTtBQUFBO0FBQUE7QUFDQTtBQUFBO0FBQUE7QUFDQTtBQUFBO0FBQUE7QUFDQTtBQUFBO0FBQUE7QUFDQTtBQUFBO0FBQUE7QUFDQTtBQUFBO0FBQUE7QUFDQTtBQUFBO0FBQUE7QUFDQTtBQUNBO0FBTUE7QUFDQTtBQUFBO0FBQUE7QUFDQTtBQUFBO0FBQUE7QUFDQTtBQUNBO0FBTUE7QUF0REE7QUEyREE7QUFDQTtBQUFBO0FBR0EiLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///./src/i18n.tsx\n"); +eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"i18n\", function() { return i18n; });\n/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! react */ \"./node_modules/react/index.js\");\n/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_0__);\nvar _$exec, _$exec$groups;\n\nfunction _typeof(obj) { \"@babel/helpers - typeof\"; if (typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\") { _typeof = function _typeof(obj) { return typeof obj; }; } else { _typeof = function _typeof(obj) { return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj; }; } return _typeof(obj); }\n\nfunction _wrapRegExp(re, groups) { _wrapRegExp = function _wrapRegExp(re, groups) { return new BabelRegExp(re, undefined, groups); }; var _RegExp = _wrapNativeSuper(RegExp); var _super = RegExp.prototype; var _groups = new WeakMap(); function BabelRegExp(re, flags, groups) { var _this = _RegExp.call(this, re, flags); _groups.set(_this, groups || _groups.get(re)); return _this; } _inherits(BabelRegExp, _RegExp); BabelRegExp.prototype.exec = function (str) { var result = _super.exec.call(this, str); if (result) result.groups = buildGroups(result, this); return result; }; BabelRegExp.prototype[Symbol.replace] = function (str, substitution) { if (typeof substitution === \"string\") { var groups = _groups.get(this); return _super[Symbol.replace].call(this, str, substitution.replace(/\\$<([^>]+)>/g, function (_, name) { return \"$\" + groups[name]; })); } else if (typeof substitution === \"function\") { var _this = this; return _super[Symbol.replace].call(this, str, function () { var args = []; args.push.apply(args, arguments); if (_typeof(args[args.length - 1]) !== \"object\") { args.push(buildGroups(args, _this)); } return substitution.apply(this, args); }); } else { return _super[Symbol.replace].call(this, str, substitution); } }; function buildGroups(result, re) { var g = _groups.get(re); return Object.keys(g).reduce(function (groups, name) { groups[name] = result[g[name]]; return groups; }, Object.create(null)); } return _wrapRegExp.apply(this, arguments); }\n\nfunction _inherits(subClass, superClass) { if (typeof superClass !== \"function\" && superClass !== null) { throw new TypeError(\"Super expression must either be null or a function\"); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, writable: true, configurable: true } }); if (superClass) _setPrototypeOf(subClass, superClass); }\n\nfunction _possibleConstructorReturn(self, call) { if (call && (_typeof(call) === \"object\" || typeof call === \"function\")) { return call; } return _assertThisInitialized(self); }\n\nfunction _assertThisInitialized(self) { if (self === void 0) { throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\"); } return self; }\n\nfunction _wrapNativeSuper(Class) { var _cache = typeof Map === \"function\" ? new Map() : undefined; _wrapNativeSuper = function _wrapNativeSuper(Class) { if (Class === null || !_isNativeFunction(Class)) return Class; if (typeof Class !== \"function\") { throw new TypeError(\"Super expression must either be null or a function\"); } if (typeof _cache !== \"undefined\") { if (_cache.has(Class)) return _cache.get(Class); _cache.set(Class, Wrapper); } function Wrapper() { return _construct(Class, arguments, _getPrototypeOf(this).constructor); } Wrapper.prototype = Object.create(Class.prototype, { constructor: { value: Wrapper, enumerable: false, writable: true, configurable: true } }); return _setPrototypeOf(Wrapper, Class); }; return _wrapNativeSuper(Class); }\n\nfunction _construct(Parent, args, Class) { if (_isNativeReflectConstruct()) { _construct = Reflect.construct; } else { _construct = function _construct(Parent, args, Class) { var a = [null]; a.push.apply(a, args); var Constructor = Function.bind.apply(Parent, a); var instance = new Constructor(); if (Class) _setPrototypeOf(instance, Class.prototype); return instance; }; } return _construct.apply(null, arguments); }\n\nfunction _isNativeReflectConstruct() { if (typeof Reflect === \"undefined\" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === \"function\") return true; try { Date.prototype.toString.call(Reflect.construct(Date, [], function () {})); return true; } catch (e) { return false; } }\n\nfunction _isNativeFunction(fn) { return Function.toString.call(fn).indexOf(\"[native code]\") !== -1; }\n\nfunction _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); }\n\nfunction _getPrototypeOf(o) { _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; return _getPrototypeOf(o); }\n\n\nvar zh = {\n 使已投資顯示: function _() {\n return '已投資';\n },\n 左下入金按鈕: function _(value) {\n return \"\\u5165\\u91D1\\uFF08\".concat(value, \"\\uFF09\\u9280\\u884C\\u8CE3\\u51FA\");\n },\n 使鎖定下單重複一致: function _() {\n return '自動上次';\n },\n 使鎖定下單重複一致否定: function _() {\n return '自動上次?';\n },\n 使鎖定下單重複一致之說明: function _() {\n return '始終以你上一次點擊巨集為基準,同步每次下單金額與槓桿';\n },\n 使緊湊: function _() {\n return '緊湊';\n },\n 輸入以過濾: function _() {\n return '過濾...';\n },\n 腳本標題: function _() {\n return 'eToro better UI';\n },\n 功能提供者述敘: function _(Link) {\n return react__WEBPACK_IMPORTED_MODULE_0__[\"createElement\"](\"span\", null, \"\\u672C\\u529F\\u80FD\\u7531 \", react__WEBPACK_IMPORTED_MODULE_0__[\"createElement\"](Link, null), \" \\u63D0\\u4F9B\");\n },\n 腳本官網: function _() {\n return '腳本官網';\n },\n 聯絡作者: function _() {\n return '聯絡作者';\n },\n 風險說明書: function _() {\n return '風險說明書';\n },\n 感謝使用提示語: function _(Link) {\n return react__WEBPACK_IMPORTED_MODULE_0__[\"createElement\"](react__WEBPACK_IMPORTED_MODULE_0__[\"Fragment\"], null, react__WEBPACK_IMPORTED_MODULE_0__[\"createElement\"](\"span\", null, \"\\uD83D\\uDE4F \\u611F\\u8B1D\\u60A8\\u4F7F\\u7528 \", zh.腳本標題(), \" \\u66F4\\u591A\\u8CC7\\u8A0A\\u8ACB\\u6070\\u8A62\\uFF1A\"), react__WEBPACK_IMPORTED_MODULE_0__[\"createElement\"](Link, null), \" \", zh.腳本官網());\n },\n 設定幣別: function _(selectedText) {\n return \"\\u8A2D\\u5B9A\\u5E63\\u5225\\uFF08\\u7576\\u524D\\uFF1A\".concat(selectedText, \"\\uFF09\");\n },\n 下單巨集: function _(enabled) {\n return \"\\u4E0B\\u55AE\\u5DE8\\u96C6\\uFF08\\u7576\\u524D\\uFF1A\".concat(enabled ? '啟用' : '停用', \"\\uFF09\");\n },\n 巨集金額設定: function _() {\n return '巨集金額設定';\n },\n 大概延遲: function _(msValue) {\n return \"\\u5927\\u6982\\u5EF6\\u9072\\uFF1A\".concat(msValue, \"ms\");\n },\n 槓桿: function _() {\n return '槓桿';\n },\n 金額: function _() {\n return '金額';\n },\n 設定: function _() {\n return '設定';\n },\n 餘額: function _() {\n return '餘額';\n },\n 確保同意下單巨集風險: function _(Link) {\n return react__WEBPACK_IMPORTED_MODULE_0__[\"createElement\"](\"span\", null, \"\\u5728\\u4F7F\\u7528 better-etoro-ui \\u6240\\u63D0\\u4F9B\\u7684\\u4E0B\\u55AE\\u5DE8\\u96C6\\u4E4B\\u524D\\uFF0C\\u8ACB\\u60A8\\u78BA\\u4FDD\\u60A8\\u5DF2\\u95B1\\u8B80 \", react__WEBPACK_IMPORTED_MODULE_0__[\"createElement\"](Link, null), \"\\uFF0C\\u4E26\\u4F60\\u4E5F\\u8868\\u793A\\u540C\\u610F\\u3002\");\n },\n 投資組合: function _() {\n return '投資組合';\n },\n 動作沒有執行: function _() {\n return '動作沒有執行,因為發現可能的出錯';\n },\n 設定已變更: function _(PostComponent) {\n return react__WEBPACK_IMPORTED_MODULE_0__[\"createElement\"](\"span\", null, \"\\u8A2D\\u5B9A\\u5DF2\\u8B8A\\u66F4\\uFF1A\", react__WEBPACK_IMPORTED_MODULE_0__[\"createElement\"](PostComponent, null));\n }\n};\nvar en = {\n 使已投資顯示: function _() {\n return 'Invested';\n },\n 左下入金按鈕: function _(value) {\n return \"Deposit\\uFF08\".concat(value, \"\\uFF09Sold\");\n },\n 使鎖定下單重複一致: function _() {\n return 'Same Order';\n },\n 使鎖定下單重複一致否定: function _() {\n return 'Same Order?';\n },\n 使鎖定下單重複一致之說明: function _() {\n return 'Always use the last Amount and Lever which you last click in macro buttons.';\n },\n 使緊湊: function _() {\n return 'compact';\n },\n 輸入以過濾: function _() {\n return 'Filter...';\n },\n 腳本標題: function _() {\n return 'eToro better UI';\n },\n 功能提供者述敘: function _(Link) {\n return react__WEBPACK_IMPORTED_MODULE_0__[\"createElement\"](\"span\", null, \"Support By \", react__WEBPACK_IMPORTED_MODULE_0__[\"createElement\"](Link, null));\n },\n 腳本官網: function _() {\n return 'Website';\n },\n 聯絡作者: function _() {\n return 'Contact Developer';\n },\n 風險說明書: function _() {\n return 'Risk Agreement';\n },\n 感謝使用提示語: function _(Link) {\n return react__WEBPACK_IMPORTED_MODULE_0__[\"createElement\"](react__WEBPACK_IMPORTED_MODULE_0__[\"Fragment\"], null, react__WEBPACK_IMPORTED_MODULE_0__[\"createElement\"](\"span\", null, \"\\uD83D\\uDE4F Thanks for install \", en.腳本標題(), \", for more information in\", ' '), react__WEBPACK_IMPORTED_MODULE_0__[\"createElement\"](Link, null), \" \", en.腳本官網());\n },\n 設定幣別: function _(selectedText) {\n return \"Currency\\uFF08Now\\uFF1A\".concat(selectedText, \"\\uFF09\");\n },\n 下單巨集: function _(enabled) {\n return \"Macro\\uFF08Now\\uFF1A\".concat(enabled ? 'enabled' : 'disabled', \"\\uFF09\");\n },\n 巨集金額設定: function _() {\n return 'Order Macro Setting';\n },\n 大概延遲: function _(msValue) {\n return \"Infer Delay\\uFF1A\".concat(msValue, \"ms\");\n },\n 槓桿: function _() {\n return 'Lever';\n },\n 金額: function _() {\n return 'Amount';\n },\n 設定: function _() {\n return 'Setting';\n },\n 餘額: function _() {\n return 'Balance';\n },\n 確保同意下單巨集風險: function _(Link) {\n return react__WEBPACK_IMPORTED_MODULE_0__[\"createElement\"](\"span\", null, \"Before use the Macro support by \", this.腳本標題(), \", Make sure you understand \", react__WEBPACK_IMPORTED_MODULE_0__[\"createElement\"](Link, null), \", and you must agree the possible risk.\");\n },\n 投資組合: function _() {\n return 'portfolio';\n },\n 動作沒有執行: function _() {\n return 'No Action Execution, Seems Somethings broken.';\n },\n 設定已變更: function _(PostComponent) {\n return react__WEBPACK_IMPORTED_MODULE_0__[\"createElement\"](\"span\", null, \"Setting Changed\\uFF1A\", react__WEBPACK_IMPORTED_MODULE_0__[\"createElement\"](PostComponent, null));\n }\n};\nvar eToroLocale = ((_$exec = /*#__PURE__*/_wrapRegExp(/eToroLocale=([\\0-\\uFFFF]+?);/i, {\n eToroLocale: 1\n}).exec(globalThis.document.cookie)) === null || _$exec === void 0 ? void 0 : (_$exec$groups = _$exec.groups) === null || _$exec$groups === void 0 ? void 0 : _$exec$groups.eToroLocale) || 'zh-tw';\nvar i18n = eToroLocale.includes('zh') && zh || en;//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiLi9zcmMvaTE4bi50c3guanMiLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly8vLi9zcmMvaTE4bi50c3g/NWUyMyJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgKiBhcyBSZWFjdCBmcm9tICdyZWFjdCdcblxuY29uc3QgemggPSB7XG4gIOS9v+W3suaKleizh+mhr+ekujogKCkgPT4gJ+W3suaKleizhycsXG4gIOW3puS4i+WFpemHkeaMiemIlTogKHZhbHVlOiBudW1iZXIpID0+IGDlhaXph5HvvIgke3ZhbHVlfe+8iemKgOihjOizo+WHumAsXG4gIOS9v+mOluWumuS4i+WWrumHjeikh+S4gOiHtDogKCkgPT4gJ+iHquWLleS4iuasoScsXG4gIOS9v+mOluWumuS4i+WWrumHjeikh+S4gOiHtOWQpuWumjogKCkgPT4gJ+iHquWLleS4iuasoT8nLFxuICDkvb/pjpblrprkuIvllq7ph43opIfkuIDoh7TkuYvoqqrmmI46ICgpID0+XG4gICAgJ+Wni+e1guS7peS9oOS4iuS4gOasoem7nuaTiuW3qOmbhueCuuWfuua6lu+8jOWQjOatpeavj+asoeS4i+WWrumHkemhjeiIh+ank+ahvycsXG4gIOS9v+e3iua5ijogKCkgPT4gJ+e3iua5iicsXG4gIOi8uOWFpeS7pemBjua/vjogKCkgPT4gJ+mBjua/vi4uLicsXG4gIOiFs+acrOaomemhjDogKCkgPT4gJ2VUb3JvIGJldHRlciBVSScsXG4gIOWKn+iDveaPkOS+m+iAhei/sOaVmDogKExpbms6IFJlYWN0LkZDKSA9PiB7XG4gICAgcmV0dXJuIChcbiAgICAgIDxzcGFuPlxuICAgICAgICDmnKzlip/og73nlLEgPExpbmsgLz4g5o+Q5L6bXG4gICAgICA8L3NwYW4+XG4gICAgKVxuICB9LFxuICDohbPmnKzlrpjntrI6ICgpID0+ICfohbPmnKzlrpjntrInLFxuICDoga/ntaHkvZzogIU6ICgpID0+ICfoga/ntaHkvZzogIUnLFxuICDpoqjpmqroqqrmmI7mm7g6ICgpID0+ICfpoqjpmqroqqrmmI7mm7gnLFxuICDmhJ/orJ3kvb/nlKjmj5DnpLroqp46IChMaW5rOiBSZWFjdC5GQykgPT4ge1xuICAgIHJldHVybiAoXG4gICAgICA8UmVhY3QuRnJhZ21lbnQ+XG4gICAgICAgIDxzcGFuPvCfmY8g5oSf6Kyd5oKo5L2/55SoIHt6aC7ohbPmnKzmqJnpoYwoKX0g5pu05aSa6LOH6KiK6KuL5oGw6Kmi77yaPC9zcGFuPlxuICAgICAgICA8TGluayAvPiB7emgu6IWz5pys5a6Y57ayKCl9XG4gICAgICA8L1JlYWN0LkZyYWdtZW50PlxuICAgIClcbiAgfSxcbiAg6Kit5a6a5bmj5YilOiAoc2VsZWN0ZWRUZXh0OiBzdHJpbmcpID0+IGDoqK3lrprluaPliKXvvIjnlbbliY3vvJoke3NlbGVjdGVkVGV4dH3vvIlgLFxuICDkuIvllq7lt6jpm4Y6IGVuYWJsZWQgPT4gYOS4i+WWruW3qOmbhu+8iOeVtuWJje+8miR7ZW5hYmxlZCA/ICfllZ/nlKgnIDogJ+WBnOeUqCd977yJYCxcbiAg5beo6ZuG6YeR6aGN6Kit5a6aOiAoKSA9PiAn5beo6ZuG6YeR6aGN6Kit5a6aJyxcbiAg5aSn5qaC5bu26YGyOiAobXNWYWx1ZTogbnVtYmVyKSA9PiBg5aSn5qaC5bu26YGy77yaJHttc1ZhbHVlfW1zYCxcbiAg5qeT5qG/OiAoKSA9PiAn5qeT5qG/JyxcbiAg6YeR6aGNOiAoKSA9PiAn6YeR6aGNJyxcbiAg6Kit5a6aOiAoKSA9PiAn6Kit5a6aJyxcbiAg6aSY6aGNOiAoKSA9PiAn6aSY6aGNJyxcbiAg56K65L+d5ZCM5oSP5LiL5Zau5beo6ZuG6aKo6ZqqOiAoTGluazogUmVhY3QuRkMpID0+IHtcbiAgICByZXR1cm4gKFxuICAgICAgPHNwYW4+XG4gICAgICAgIOWcqOS9v+eUqCBiZXR0ZXItZXRvcm8tdWkg5omA5o+Q5L6b55qE5LiL5Zau5beo6ZuG5LmL5YmN77yM6KuL5oKo56K65L+d5oKo5bey6Zax6K6AIDxMaW5rIC8+XG4gICAgICAgIO+8jOS4puS9oOS5n+ihqOekuuWQjOaEj+OAglxuICAgICAgPC9zcGFuPlxuICAgIClcbiAgfSxcbiAg5oqV6LOH57WE5ZCIOiAoKSA9PiAn5oqV6LOH57WE5ZCIJyxcbiAg5YuV5L2c5rKS5pyJ5Z+36KGMOiAoKSA9PiAn5YuV5L2c5rKS5pyJ5Z+36KGM77yM5Zug54K655m854++5Y+v6IO955qE5Ye66YyvJyxcbiAg6Kit5a6a5bey6K6K5pu0OiAoUG9zdENvbXBvbmVudDogUmVhY3QuRkMpID0+IHtcbiAgICByZXR1cm4gKFxuICAgICAgPHNwYW4+XG4gICAgICAgIOioreWumuW3suiuiuabtO+8mlxuICAgICAgICA8UG9zdENvbXBvbmVudCAvPlxuICAgICAgPC9zcGFuPlxuICAgIClcbiAgfSxcbn1cblxuY29uc3QgZW46IHR5cGVvZiB6aCA9IHtcbiAg5L2/5bey5oqV6LOH6aGv56S6OiAoKSA9PiAnSW52ZXN0ZWQnLFxuICDlt6bkuIvlhaXph5HmjInpiJU6ICh2YWx1ZTogbnVtYmVyKSA9PiBgRGVwb3NpdO+8iCR7dmFsdWV977yJU29sZGAsXG4gIOS9v+mOluWumuS4i+WWrumHjeikh+S4gOiHtDogKCkgPT4gJ1NhbWUgT3JkZXInLFxuICDkvb/pjpblrprkuIvllq7ph43opIfkuIDoh7TlkKblrpo6ICgpID0+ICdTYW1lIE9yZGVyPycsXG4gIOS9v+mOluWumuS4i+WWrumHjeikh+S4gOiHtOS5i+iqquaYjjogKCkgPT5cbiAgICAnQWx3YXlzIHVzZSB0aGUgbGFzdCBBbW91bnQgYW5kIExldmVyIHdoaWNoIHlvdSBsYXN0IGNsaWNrIGluIG1hY3JvIGJ1dHRvbnMuJyxcbiAg5L2/57eK5rmKOiAoKSA9PiAnY29tcGFjdCcsXG4gIOi8uOWFpeS7pemBjua/vjogKCkgPT4gJ0ZpbHRlci4uLicsXG4gIOiFs+acrOaomemhjDogKCkgPT4gJ2VUb3JvIGJldHRlciBVSScsXG4gIOWKn+iDveaPkOS+m+iAhei/sOaVmDogKExpbms6IFJlYWN0LkZDKSA9PiB7XG4gICAgcmV0dXJuIChcbiAgICAgIDxzcGFuPlxuICAgICAgICBTdXBwb3J0IEJ5IDxMaW5rIC8+XG4gICAgICA8L3NwYW4+XG4gICAgKVxuICB9LFxuICDohbPmnKzlrpjntrI6ICgpID0+ICdXZWJzaXRlJyxcbiAg6IGv57Wh5L2c6ICFOiAoKSA9PiAnQ29udGFjdCBEZXZlbG9wZXInLFxuICDpoqjpmqroqqrmmI7mm7g6ICgpID0+ICdSaXNrIEFncmVlbWVudCcsXG4gIOaEn+isneS9v+eUqOaPkOekuuiqnjogKExpbms6IFJlYWN0LkZDKSA9PiB7XG4gICAgcmV0dXJuIChcbiAgICAgIDxSZWFjdC5GcmFnbWVudD5cbiAgICAgICAgPHNwYW4+XG4gICAgICAgICAg8J+ZjyBUaGFua3MgZm9yIGluc3RhbGwge2VuLuiFs+acrOaomemhjCgpfSwgZm9yIG1vcmUgaW5mb3JtYXRpb24gaW57JyAnfVxuICAgICAgICA8L3NwYW4+XG4gICAgICAgIDxMaW5rIC8+IHtlbi7ohbPmnKzlrpjntrIoKX1cbiAgICAgIDwvUmVhY3QuRnJhZ21lbnQ+XG4gICAgKVxuICB9LFxuICDoqK3lrprluaPliKU6IChzZWxlY3RlZFRleHQ6IHN0cmluZykgPT4gYEN1cnJlbmN577yITm9377yaJHtzZWxlY3RlZFRleHR977yJYCxcbiAg5LiL5Zau5beo6ZuGOiBlbmFibGVkID0+IGBNYWNyb++8iE5vd++8miR7ZW5hYmxlZCA/ICdlbmFibGVkJyA6ICdkaXNhYmxlZCd977yJYCxcbiAg5beo6ZuG6YeR6aGN6Kit5a6aOiAoKSA9PiAnT3JkZXIgTWFjcm8gU2V0dGluZycsXG4gIOWkp+amguW7tumBsjogKG1zVmFsdWU6IG51bWJlcikgPT4gYEluZmVyIERlbGF577yaJHttc1ZhbHVlfW1zYCxcbiAg5qeT5qG/OiAoKSA9PiAnTGV2ZXInLFxuICDph5HpoY06ICgpID0+ICdBbW91bnQnLFxuICDoqK3lrpo6ICgpID0+ICdTZXR0aW5nJyxcbiAg6aSY6aGNOiAoKSA9PiAnQmFsYW5jZScsXG4gIOeiuuS/neWQjOaEj+S4i+WWruW3qOmbhumiqOmaqihMaW5rOiBSZWFjdC5GQykge1xuICAgIHJldHVybiAoXG4gICAgICA8c3Bhbj5cbiAgICAgICAgQmVmb3JlIHVzZSB0aGUgTWFjcm8gc3VwcG9ydCBieSB7dGhpcy7ohbPmnKzmqJnpoYwoKX0sIE1ha2Ugc3VyZSB5b3VcbiAgICAgICAgdW5kZXJzdGFuZCA8TGluayAvPiwgYW5kIHlvdSBtdXN0IGFncmVlIHRoZSBwb3NzaWJsZSByaXNrLlxuICAgICAgPC9zcGFuPlxuICAgIClcbiAgfSxcbiAg5oqV6LOH57WE5ZCIOiAoKSA9PiAncG9ydGZvbGlvJyxcbiAg5YuV5L2c5rKS5pyJ5Z+36KGMOiAoKSA9PiAnTm8gQWN0aW9uIEV4ZWN1dGlvbiwgU2VlbXMgU29tZXRoaW5ncyBicm9rZW4uJyxcbiAg6Kit5a6a5bey6K6K5pu0OiAoUG9zdENvbXBvbmVudDogUmVhY3QuRkMpID0+IHtcbiAgICByZXR1cm4gKFxuICAgICAgPHNwYW4+XG4gICAgICAgIFNldHRpbmcgQ2hhbmdlZO+8mlxuICAgICAgICA8UG9zdENvbXBvbmVudCAvPlxuICAgICAgPC9zcGFuPlxuICAgIClcbiAgfSxcbn1cblxudHlwZSBFdG9yb0xvY2FsZSA9ICdlbi1nYicgfCAnemgtY24nIHwgJ3poLXR3J1xuXG5jb25zdCBlVG9yb0xvY2FsZTogRXRvcm9Mb2NhbGUgPVxuICAoL2VUb3JvTG9jYWxlPSg/PGVUb3JvTG9jYWxlPltcXHNcXFNdKz8pOy9pLmV4ZWMoZ2xvYmFsVGhpcy5kb2N1bWVudC5jb29raWUpXG4gICAgPy5ncm91cHM/LmVUb3JvTG9jYWxlIGFzIEV0b3JvTG9jYWxlKSB8fCAnemgtdHcnXG5cbmV4cG9ydCBjb25zdCBpMThuID0gKGVUb3JvTG9jYWxlLmluY2x1ZGVzKCd6aCcpICYmIHpoKSB8fCBlblxuIl0sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBQUE7QUFFQTtBQUNBO0FBQUE7QUFBQTtBQUNBO0FBQUE7QUFBQTtBQUNBO0FBQUE7QUFBQTtBQUNBO0FBQUE7QUFBQTtBQUNBO0FBQUE7QUFBQTtBQUVBO0FBQUE7QUFBQTtBQUNBO0FBQUE7QUFBQTtBQUNBO0FBQUE7QUFBQTtBQUNBO0FBQ0E7QUFLQTtBQUNBO0FBQUE7QUFBQTtBQUNBO0FBQUE7QUFBQTtBQUNBO0FBQUE7QUFBQTtBQUNBO0FBQ0E7QUFNQTtBQUNBO0FBQUE7QUFBQTtBQUNBO0FBQUE7QUFBQTtBQUNBO0FBQUE7QUFBQTtBQUNBO0FBQUE7QUFBQTtBQUNBO0FBQUE7QUFBQTtBQUNBO0FBQUE7QUFBQTtBQUNBO0FBQUE7QUFBQTtBQUNBO0FBQUE7QUFBQTtBQUNBO0FBQ0E7QUFNQTtBQUNBO0FBQUE7QUFBQTtBQUNBO0FBQUE7QUFBQTtBQUNBO0FBQ0E7QUFNQTtBQXJEQTtBQXdEQTtBQUNBO0FBQUE7QUFBQTtBQUNBO0FBQUE7QUFBQTtBQUNBO0FBQUE7QUFBQTtBQUNBO0FBQUE7QUFBQTtBQUNBO0FBQUE7QUFBQTtBQUVBO0FBQUE7QUFBQTtBQUNBO0FBQUE7QUFBQTtBQUNBO0FBQUE7QUFBQTtBQUNBO0FBQ0E7QUFLQTtBQUNBO0FBQUE7QUFBQTtBQUNBO0FBQUE7QUFBQTtBQUNBO0FBQUE7QUFBQTtBQUNBO0FBQ0E7QUFRQTtBQUNBO0FBQUE7QUFBQTtBQUNBO0FBQUE7QUFBQTtBQUNBO0FBQUE7QUFBQTtBQUNBO0FBQUE7QUFBQTtBQUNBO0FBQUE7QUFBQTtBQUNBO0FBQUE7QUFBQTtBQUNBO0FBQUE7QUFBQTtBQUNBO0FBQUE7QUFBQTtBQUNBO0FBQ0E7QUFNQTtBQUNBO0FBQUE7QUFBQTtBQUNBO0FBQUE7QUFBQTtBQUNBO0FBQ0E7QUFNQTtBQXZEQTtBQTREQTtBQUNBO0FBQUE7QUFHQSIsInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///./src/i18n.tsx\n"); /***/ }), @@ -14468,7 +14492,7 @@ eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export (binding) * /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; -eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"storage\", function() { return storage; });\n/* harmony import */ var cogo_toast__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! cogo-toast */ \"./node_modules/cogo-toast/dist/index.js\");\n/* harmony import */ var cogo_toast__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(cogo_toast__WEBPACK_IMPORTED_MODULE_0__);\nvar _findLegacyConfig$exe, _findLegacyConfig$sel;\n\nfunction ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); keys.push.apply(keys, symbols); } return keys; }\n\nfunction _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { ownKeys(Object(source), true).forEach(function (key) { _defineProperty(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; }\n\nfunction _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\n\n\n\nvar findLegacyConfig = function findLegacyConfig() {\n var rawEtoroBetterUiExecutionMacroEnabled = globalThis.localStorage.getItem('etoro_better_ui_execution_macro_enabled');\n var rawSelectedExchange = globalThis.localStorage.getItem('selected_exchange');\n var config = {\n executionMacroEnabled: JSON.parse(rawEtoroBetterUiExecutionMacroEnabled || 'false'),\n selectedExchange: rawSelectedExchange || 'NTD'\n };\n return config;\n};\n\nvar DEFAULT_CONFIG = {\n listCompactOn: false,\n executionMacroEnabled: (_findLegacyConfig$exe = findLegacyConfig().executionMacroEnabled) !== null && _findLegacyConfig$exe !== void 0 ? _findLegacyConfig$exe : false,\n executionAmount: [50, 100, 200, 300, 500],\n executionLever: [1, 2, 5, 10, 20],\n executionAmountLast: 200,\n executionLeverLast: 1,\n selectedExchange: (_findLegacyConfig$sel = findLegacyConfig().selectedExchange) !== null && _findLegacyConfig$sel !== void 0 ? _findLegacyConfig$sel : 'NTD',\n executionUseApplyLast: false\n};\nvar CONFIG_STORAGE_KEY = 'better_etoro_ui_config';\nvar storage = {\n findConfig: function findConfig() {\n var _config = globalThis.localStorage.getItem(CONFIG_STORAGE_KEY);\n\n try {\n if (_config) {\n return _objectSpread(_objectSpread({}, DEFAULT_CONFIG), JSON.parse(_config));\n } else {\n return DEFAULT_CONFIG;\n }\n } catch (error) {\n error instanceof Error && cogo_toast__WEBPACK_IMPORTED_MODULE_0___default.a.error(error.message, {\n position: 'bottom-left'\n });\n return DEFAULT_CONFIG;\n }\n },\n saveConfig: function saveConfig(config) {\n var _config = JSON.stringify(_objectSpread(_objectSpread({}, storage.findConfig()), config));\n\n try {\n // remove legacies\n globalThis.localStorage.removeItem('etoro_better_ui_execution_macro_enabled');\n globalThis.localStorage.removeItem('selected_exchange'); //\n\n globalThis.localStorage.setItem(CONFIG_STORAGE_KEY, _config);\n return true;\n } catch (error) {\n error instanceof Error && cogo_toast__WEBPACK_IMPORTED_MODULE_0___default.a.error(error.message, {\n position: 'bottom-left'\n });\n return false;\n }\n }\n};//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiLi9zcmMvc3RvcmFnZS50cy5qcyIsInNvdXJjZXMiOlsid2VicGFjazovLy8uL3NyYy9zdG9yYWdlLnRzPzRkYWEiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgZXhjaGFuZ2UgfSBmcm9tICcuL2V4Y2hhbmdlJ1xuaW1wb3J0IHRvYXN0IGZyb20gJ2NvZ28tdG9hc3QnXG5cbmV4cG9ydCB0eXBlIEJldHRlckV0b3JvVUlDb25maWcgPSB7XG4gIGxpc3RDb21wYWN0T246IGJvb2xlYW5cbiAgZXhlY3V0aW9uTWFjcm9FbmFibGVkOiBib29sZWFuXG4gIGV4ZWN1dGlvbkFtb3VudDogbnVtYmVyW11cbiAgZXhlY3V0aW9uTGV2ZXI6IG51bWJlcltdXG4gIGV4ZWN1dGlvbkFtb3VudExhc3Q6IG51bWJlclxuICBleGVjdXRpb25MZXZlckxhc3Q6IG51bWJlclxuICBzZWxlY3RlZEV4Y2hhbmdlOiAnTlREJyB8ICdNWVInXG4gIGV4ZWN1dGlvblVzZUFwcGx5TGFzdDogYm9vbGVhblxufVxuXG5jb25zdCBmaW5kTGVnYWN5Q29uZmlnID0gKCkgPT4ge1xuICBjb25zdCByYXdFdG9yb0JldHRlclVpRXhlY3V0aW9uTWFjcm9FbmFibGVkID0gZ2xvYmFsVGhpcy5sb2NhbFN0b3JhZ2UuZ2V0SXRlbShcbiAgICAnZXRvcm9fYmV0dGVyX3VpX2V4ZWN1dGlvbl9tYWNyb19lbmFibGVkJyxcbiAgKSBhcyAnZmFsc2UnIHwgJ3RydWUnIHwgbnVsbFxuICBjb25zdCByYXdTZWxlY3RlZEV4Y2hhbmdlID0gZ2xvYmFsVGhpcy5sb2NhbFN0b3JhZ2UuZ2V0SXRlbShcbiAgICAnc2VsZWN0ZWRfZXhjaGFuZ2UnLFxuICApIGFzICdOVEQnIHwgJ01ZUicgfCBudWxsXG5cbiAgY29uc3QgY29uZmlnID0ge1xuICAgIGV4ZWN1dGlvbk1hY3JvRW5hYmxlZDogSlNPTi5wYXJzZShcbiAgICAgIHJhd0V0b3JvQmV0dGVyVWlFeGVjdXRpb25NYWNyb0VuYWJsZWQgfHwgJ2ZhbHNlJyxcbiAgICApIGFzIGJvb2xlYW4sXG4gICAgc2VsZWN0ZWRFeGNoYW5nZTogcmF3U2VsZWN0ZWRFeGNoYW5nZSB8fCAnTlREJyxcbiAgfVxuXG4gIHJldHVybiBjb25maWdcbn1cblxuY29uc3QgREVGQVVMVF9DT05GSUc6IEJldHRlckV0b3JvVUlDb25maWcgPSB7XG4gIGxpc3RDb21wYWN0T246IGZhbHNlLFxuICBleGVjdXRpb25NYWNyb0VuYWJsZWQ6IGZpbmRMZWdhY3lDb25maWcoKS5leGVjdXRpb25NYWNyb0VuYWJsZWQgPz8gZmFsc2UsXG4gIGV4ZWN1dGlvbkFtb3VudDogWzUwLCAxMDAsIDIwMCwgMzAwLCA1MDBdLFxuICBleGVjdXRpb25MZXZlcjogWzEsIDIsIDUsIDEwLCAyMF0sXG4gIGV4ZWN1dGlvbkFtb3VudExhc3Q6IDIwMCxcbiAgZXhlY3V0aW9uTGV2ZXJMYXN0OiAxLFxuICBzZWxlY3RlZEV4Y2hhbmdlOiBmaW5kTGVnYWN5Q29uZmlnKCkuc2VsZWN0ZWRFeGNoYW5nZSA/PyAnTlREJyxcbiAgZXhlY3V0aW9uVXNlQXBwbHlMYXN0OiBmYWxzZSxcbn1cblxuY29uc3QgQ09ORklHX1NUT1JBR0VfS0VZID0gJ2JldHRlcl9ldG9yb191aV9jb25maWcnXG5cbmV4cG9ydCBjb25zdCBzdG9yYWdlID0ge1xuICBmaW5kQ29uZmlnOiAoKTogdHlwZW9mIERFRkFVTFRfQ09ORklHID0+IHtcbiAgICBjb25zdCBfY29uZmlnID0gZ2xvYmFsVGhpcy5sb2NhbFN0b3JhZ2UuZ2V0SXRlbShDT05GSUdfU1RPUkFHRV9LRVkpXG5cbiAgICB0cnkge1xuICAgICAgaWYgKF9jb25maWcpIHtcbiAgICAgICAgcmV0dXJuIHtcbiAgICAgICAgICAuLi5ERUZBVUxUX0NPTkZJRyxcbiAgICAgICAgICAuLi5KU09OLnBhcnNlKF9jb25maWcpLFxuICAgICAgICB9IGFzIEJldHRlckV0b3JvVUlDb25maWdcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIHJldHVybiBERUZBVUxUX0NPTkZJR1xuICAgICAgfVxuICAgIH0gY2F0Y2ggKGVycm9yKSB7XG4gICAgICBlcnJvciBpbnN0YW5jZW9mIEVycm9yICYmXG4gICAgICAgIHRvYXN0LmVycm9yKGVycm9yLm1lc3NhZ2UsIHtcbiAgICAgICAgICBwb3NpdGlvbjogJ2JvdHRvbS1sZWZ0JyxcbiAgICAgICAgfSlcbiAgICAgIHJldHVybiBERUZBVUxUX0NPTkZJR1xuICAgIH1cbiAgfSxcbiAgc2F2ZUNvbmZpZzogKGNvbmZpZzogUGFydGlhbDxCZXR0ZXJFdG9yb1VJQ29uZmlnPik6IGJvb2xlYW4gPT4ge1xuICAgIGNvbnN0IF9jb25maWcgPSBKU09OLnN0cmluZ2lmeSh7XG4gICAgICAuLi5zdG9yYWdlLmZpbmRDb25maWcoKSxcbiAgICAgIC4uLmNvbmZpZyxcbiAgICB9KVxuXG4gICAgdHJ5IHtcbiAgICAgIC8vIHJlbW92ZSBsZWdhY2llc1xuICAgICAgZ2xvYmFsVGhpcy5sb2NhbFN0b3JhZ2UucmVtb3ZlSXRlbShcbiAgICAgICAgJ2V0b3JvX2JldHRlcl91aV9leGVjdXRpb25fbWFjcm9fZW5hYmxlZCcsXG4gICAgICApXG4gICAgICBnbG9iYWxUaGlzLmxvY2FsU3RvcmFnZS5yZW1vdmVJdGVtKCdzZWxlY3RlZF9leGNoYW5nZScpXG4gICAgICAvL1xuXG4gICAgICBnbG9iYWxUaGlzLmxvY2FsU3RvcmFnZS5zZXRJdGVtKENPTkZJR19TVE9SQUdFX0tFWSwgX2NvbmZpZylcbiAgICAgIHJldHVybiB0cnVlXG4gICAgfSBjYXRjaCAoZXJyb3IpIHtcbiAgICAgIGVycm9yIGluc3RhbmNlb2YgRXJyb3IgJiZcbiAgICAgICAgdG9hc3QuZXJyb3IoZXJyb3IubWVzc2FnZSwge1xuICAgICAgICAgIHBvc2l0aW9uOiAnYm90dG9tLWxlZnQnLFxuICAgICAgICB9KVxuICAgICAgcmV0dXJuIGZhbHNlXG4gICAgfVxuICB9LFxufVxuIl0sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7QUFDQTtBQUNBO0FBWUE7QUFDQTtBQUdBO0FBSUE7QUFDQTtBQUdBO0FBSkE7QUFPQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFSQTtBQVdBO0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFJQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBRUE7QUFEQTtBQUdBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUlBO0FBQ0E7QUFDQTtBQUdBO0FBQ0E7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUVBO0FBREE7QUFHQTtBQUNBO0FBQ0E7QUE1Q0EiLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///./src/storage.ts\n"); +eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"storage\", function() { return storage; });\n/* harmony import */ var cogo_toast__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! cogo-toast */ \"./node_modules/cogo-toast/dist/index.js\");\n/* harmony import */ var cogo_toast__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(cogo_toast__WEBPACK_IMPORTED_MODULE_0__);\nvar _findLegacyConfig$exe, _findLegacyConfig$sel;\n\nfunction ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); keys.push.apply(keys, symbols); } return keys; }\n\nfunction _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { ownKeys(Object(source), true).forEach(function (key) { _defineProperty(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; }\n\nfunction _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\n\n\n\nvar findLegacyConfig = function findLegacyConfig() {\n var rawEtoroBetterUiExecutionMacroEnabled = globalThis.localStorage.getItem('etoro_better_ui_execution_macro_enabled');\n var rawSelectedExchange = globalThis.localStorage.getItem('selected_exchange');\n var config = {\n executionMacroEnabled: JSON.parse(rawEtoroBetterUiExecutionMacroEnabled || 'false'),\n selectedExchange: rawSelectedExchange || 'NTD'\n };\n return config;\n};\n\nvar DEFAULT_CONFIG = {\n listCompactOn: false,\n executionMacroEnabled: (_findLegacyConfig$exe = findLegacyConfig().executionMacroEnabled) !== null && _findLegacyConfig$exe !== void 0 ? _findLegacyConfig$exe : false,\n executionAmount: [50, 100, 200, 300, 500],\n executionLever: [1, 2, 5, 10, 20],\n executionAmountLast: 200,\n executionLeverLast: 1,\n selectedExchange: (_findLegacyConfig$sel = findLegacyConfig().selectedExchange) !== null && _findLegacyConfig$sel !== void 0 ? _findLegacyConfig$sel : 'NTD',\n executionUseApplyLast: false,\n showInvested: false\n};\nvar CONFIG_STORAGE_KEY = 'better_etoro_ui_config';\nvar storage = {\n findConfig: function findConfig() {\n var _config = globalThis.localStorage.getItem(CONFIG_STORAGE_KEY);\n\n try {\n if (_config) {\n return _objectSpread(_objectSpread({}, DEFAULT_CONFIG), JSON.parse(_config));\n } else {\n return DEFAULT_CONFIG;\n }\n } catch (error) {\n error instanceof Error && cogo_toast__WEBPACK_IMPORTED_MODULE_0___default.a.error(error.message, {\n position: 'bottom-left'\n });\n return DEFAULT_CONFIG;\n }\n },\n saveConfig: function saveConfig(config) {\n var _config = JSON.stringify(_objectSpread(_objectSpread({}, storage.findConfig()), config));\n\n try {\n // remove legacies\n globalThis.localStorage.removeItem('etoro_better_ui_execution_macro_enabled');\n globalThis.localStorage.removeItem('selected_exchange'); //\n\n globalThis.localStorage.setItem(CONFIG_STORAGE_KEY, _config);\n return true;\n } catch (error) {\n error instanceof Error && cogo_toast__WEBPACK_IMPORTED_MODULE_0___default.a.error(error.message, {\n position: 'bottom-left'\n });\n return false;\n }\n }\n};//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiLi9zcmMvc3RvcmFnZS50cy5qcyIsInNvdXJjZXMiOlsid2VicGFjazovLy8uL3NyYy9zdG9yYWdlLnRzPzRkYWEiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgZXhjaGFuZ2UgfSBmcm9tICcuL2V4Y2hhbmdlJ1xuaW1wb3J0IHRvYXN0IGZyb20gJ2NvZ28tdG9hc3QnXG5cbmV4cG9ydCB0eXBlIEJldHRlckV0b3JvVUlDb25maWcgPSB7XG4gIGxpc3RDb21wYWN0T246IGJvb2xlYW5cbiAgZXhlY3V0aW9uTWFjcm9FbmFibGVkOiBib29sZWFuXG4gIGV4ZWN1dGlvbkFtb3VudDogbnVtYmVyW11cbiAgZXhlY3V0aW9uTGV2ZXI6IG51bWJlcltdXG4gIGV4ZWN1dGlvbkFtb3VudExhc3Q6IG51bWJlclxuICBleGVjdXRpb25MZXZlckxhc3Q6IG51bWJlclxuICBzZWxlY3RlZEV4Y2hhbmdlOiAnTlREJyB8ICdNWVInXG4gIGV4ZWN1dGlvblVzZUFwcGx5TGFzdDogYm9vbGVhblxuICBzaG93SW52ZXN0ZWQ6IGJvb2xlYW5cbn1cblxuY29uc3QgZmluZExlZ2FjeUNvbmZpZyA9ICgpID0+IHtcbiAgY29uc3QgcmF3RXRvcm9CZXR0ZXJVaUV4ZWN1dGlvbk1hY3JvRW5hYmxlZCA9IGdsb2JhbFRoaXMubG9jYWxTdG9yYWdlLmdldEl0ZW0oXG4gICAgJ2V0b3JvX2JldHRlcl91aV9leGVjdXRpb25fbWFjcm9fZW5hYmxlZCcsXG4gICkgYXMgJ2ZhbHNlJyB8ICd0cnVlJyB8IG51bGxcbiAgY29uc3QgcmF3U2VsZWN0ZWRFeGNoYW5nZSA9IGdsb2JhbFRoaXMubG9jYWxTdG9yYWdlLmdldEl0ZW0oXG4gICAgJ3NlbGVjdGVkX2V4Y2hhbmdlJyxcbiAgKSBhcyAnTlREJyB8ICdNWVInIHwgbnVsbFxuXG4gIGNvbnN0IGNvbmZpZyA9IHtcbiAgICBleGVjdXRpb25NYWNyb0VuYWJsZWQ6IEpTT04ucGFyc2UoXG4gICAgICByYXdFdG9yb0JldHRlclVpRXhlY3V0aW9uTWFjcm9FbmFibGVkIHx8ICdmYWxzZScsXG4gICAgKSBhcyBib29sZWFuLFxuICAgIHNlbGVjdGVkRXhjaGFuZ2U6IHJhd1NlbGVjdGVkRXhjaGFuZ2UgfHwgJ05URCcsXG4gIH1cblxuICByZXR1cm4gY29uZmlnXG59XG5cbmNvbnN0IERFRkFVTFRfQ09ORklHOiBCZXR0ZXJFdG9yb1VJQ29uZmlnID0ge1xuICBsaXN0Q29tcGFjdE9uOiBmYWxzZSxcbiAgZXhlY3V0aW9uTWFjcm9FbmFibGVkOiBmaW5kTGVnYWN5Q29uZmlnKCkuZXhlY3V0aW9uTWFjcm9FbmFibGVkID8/IGZhbHNlLFxuICBleGVjdXRpb25BbW91bnQ6IFs1MCwgMTAwLCAyMDAsIDMwMCwgNTAwXSxcbiAgZXhlY3V0aW9uTGV2ZXI6IFsxLCAyLCA1LCAxMCwgMjBdLFxuICBleGVjdXRpb25BbW91bnRMYXN0OiAyMDAsXG4gIGV4ZWN1dGlvbkxldmVyTGFzdDogMSxcbiAgc2VsZWN0ZWRFeGNoYW5nZTogZmluZExlZ2FjeUNvbmZpZygpLnNlbGVjdGVkRXhjaGFuZ2UgPz8gJ05URCcsXG4gIGV4ZWN1dGlvblVzZUFwcGx5TGFzdDogZmFsc2UsXG4gIHNob3dJbnZlc3RlZDogZmFsc2UsXG59XG5cbmNvbnN0IENPTkZJR19TVE9SQUdFX0tFWSA9ICdiZXR0ZXJfZXRvcm9fdWlfY29uZmlnJ1xuXG5leHBvcnQgY29uc3Qgc3RvcmFnZSA9IHtcbiAgZmluZENvbmZpZzogKCk6IHR5cGVvZiBERUZBVUxUX0NPTkZJRyA9PiB7XG4gICAgY29uc3QgX2NvbmZpZyA9IGdsb2JhbFRoaXMubG9jYWxTdG9yYWdlLmdldEl0ZW0oQ09ORklHX1NUT1JBR0VfS0VZKVxuXG4gICAgdHJ5IHtcbiAgICAgIGlmIChfY29uZmlnKSB7XG4gICAgICAgIHJldHVybiB7XG4gICAgICAgICAgLi4uREVGQVVMVF9DT05GSUcsXG4gICAgICAgICAgLi4uSlNPTi5wYXJzZShfY29uZmlnKSxcbiAgICAgICAgfSBhcyBCZXR0ZXJFdG9yb1VJQ29uZmlnXG4gICAgICB9IGVsc2Uge1xuICAgICAgICByZXR1cm4gREVGQVVMVF9DT05GSUdcbiAgICAgIH1cbiAgICB9IGNhdGNoIChlcnJvcikge1xuICAgICAgZXJyb3IgaW5zdGFuY2VvZiBFcnJvciAmJlxuICAgICAgICB0b2FzdC5lcnJvcihlcnJvci5tZXNzYWdlLCB7XG4gICAgICAgICAgcG9zaXRpb246ICdib3R0b20tbGVmdCcsXG4gICAgICAgIH0pXG4gICAgICByZXR1cm4gREVGQVVMVF9DT05GSUdcbiAgICB9XG4gIH0sXG4gIHNhdmVDb25maWc6IChjb25maWc6IFBhcnRpYWw8QmV0dGVyRXRvcm9VSUNvbmZpZz4pOiBib29sZWFuID0+IHtcbiAgICBjb25zdCBfY29uZmlnID0gSlNPTi5zdHJpbmdpZnkoe1xuICAgICAgLi4uc3RvcmFnZS5maW5kQ29uZmlnKCksXG4gICAgICAuLi5jb25maWcsXG4gICAgfSlcblxuICAgIHRyeSB7XG4gICAgICAvLyByZW1vdmUgbGVnYWNpZXNcbiAgICAgIGdsb2JhbFRoaXMubG9jYWxTdG9yYWdlLnJlbW92ZUl0ZW0oXG4gICAgICAgICdldG9yb19iZXR0ZXJfdWlfZXhlY3V0aW9uX21hY3JvX2VuYWJsZWQnLFxuICAgICAgKVxuICAgICAgZ2xvYmFsVGhpcy5sb2NhbFN0b3JhZ2UucmVtb3ZlSXRlbSgnc2VsZWN0ZWRfZXhjaGFuZ2UnKVxuICAgICAgLy9cblxuICAgICAgZ2xvYmFsVGhpcy5sb2NhbFN0b3JhZ2Uuc2V0SXRlbShDT05GSUdfU1RPUkFHRV9LRVksIF9jb25maWcpXG4gICAgICByZXR1cm4gdHJ1ZVxuICAgIH0gY2F0Y2ggKGVycm9yKSB7XG4gICAgICBlcnJvciBpbnN0YW5jZW9mIEVycm9yICYmXG4gICAgICAgIHRvYXN0LmVycm9yKGVycm9yLm1lc3NhZ2UsIHtcbiAgICAgICAgICBwb3NpdGlvbjogJ2JvdHRvbS1sZWZ0JyxcbiAgICAgICAgfSlcbiAgICAgIHJldHVybiBmYWxzZVxuICAgIH1cbiAgfSxcbn1cbiJdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7O0FBQ0E7QUFDQTtBQWFBO0FBQ0E7QUFHQTtBQUlBO0FBQ0E7QUFHQTtBQUpBO0FBT0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFUQTtBQVlBO0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFJQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBRUE7QUFEQTtBQUdBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUlBO0FBQ0E7QUFDQTtBQUdBO0FBQ0E7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUVBO0FBREE7QUFHQTtBQUNBO0FBQ0E7QUE1Q0EiLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///./src/storage.ts\n"); /***/ }), @@ -14480,7 +14504,7 @@ eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export (binding) * /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; -eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"useTypedSelector\", function() { return useTypedSelector; });\n/* harmony import */ var _reduxjs_toolkit__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @reduxjs/toolkit */ \"./node_modules/@reduxjs/toolkit/dist/index.js\");\n/* harmony import */ var _reduxjs_toolkit__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_reduxjs_toolkit__WEBPACK_IMPORTED_MODULE_0__);\n/* harmony import */ var immer__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! immer */ \"./node_modules/immer/dist/index.js\");\n/* harmony import */ var immer__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(immer__WEBPACK_IMPORTED_MODULE_1__);\n/* harmony import */ var _actions_setExchangeSelected__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! @/actions/setExchangeSelected */ \"./src/actions/setExchangeSelected.ts\");\n/* harmony import */ var _actions_setMacroEnabled__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! @/actions/setMacroEnabled */ \"./src/actions/setMacroEnabled.ts\");\n/* harmony import */ var _actions_setMacroAmount__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! @/actions/setMacroAmount */ \"./src/actions/setMacroAmount.ts\");\n/* harmony import */ var _actions_setMacroLever__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! @/actions/setMacroLever */ \"./src/actions/setMacroLever.ts\");\n/* harmony import */ var _storage__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! @/storage */ \"./src/storage.ts\");\n/* harmony import */ var react_redux__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! react-redux */ \"./node_modules/react-redux/lib/index.js\");\n/* harmony import */ var react_redux__WEBPACK_IMPORTED_MODULE_7___default = /*#__PURE__*/__webpack_require__.n(react_redux__WEBPACK_IMPORTED_MODULE_7__);\n/* harmony import */ var _actions_setListCompact__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! @/actions/setListCompact */ \"./src/actions/setListCompact.ts\");\n/* harmony import */ var _actions_setBetterEtoroUIConfig__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(/*! @/actions/setBetterEtoroUIConfig */ \"./src/actions/setBetterEtoroUIConfig.ts\");\nfunction _toConsumableArray(arr) { return _arrayWithoutHoles(arr) || _iterableToArray(arr) || _unsupportedIterableToArray(arr) || _nonIterableSpread(); }\n\nfunction _nonIterableSpread() { throw new TypeError(\"Invalid attempt to spread non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.\"); }\n\nfunction _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); }\n\nfunction _iterableToArray(iter) { if (typeof Symbol !== \"undefined\" && Symbol.iterator in Object(iter)) return Array.from(iter); }\n\nfunction _arrayWithoutHoles(arr) { if (Array.isArray(arr)) return _arrayLikeToArray(arr); }\n\nfunction _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; }\n\n\n\n\n\n\n\n\n\n\n\nvar settings = Object(_reduxjs_toolkit__WEBPACK_IMPORTED_MODULE_0__[\"createReducer\"])({\n betterEtoroUIConfig: _storage__WEBPACK_IMPORTED_MODULE_6__[\"storage\"].findConfig(),\n isMacroEnabled: _storage__WEBPACK_IMPORTED_MODULE_6__[\"storage\"].findConfig().executionMacroEnabled,\n exchange: {\n selected: _storage__WEBPACK_IMPORTED_MODULE_6__[\"storage\"].findConfig().selectedExchange,\n NTD: {\n buy: 30,\n sell: 30\n },\n MYR: {\n buy: 4.25,\n sell: 4.25\n }\n }\n}, function (builder) {\n return builder.addCase(_actions_setBetterEtoroUIConfig__WEBPACK_IMPORTED_MODULE_9__[\"setBetterEtoroUIConfig\"].fulfilled, function (state, action) {\n return Object(immer__WEBPACK_IMPORTED_MODULE_1__[\"produce\"])(state, function () {\n state.betterEtoroUIConfig = action.payload;\n return state;\n });\n }).addCase(_actions_setExchangeSelected__WEBPACK_IMPORTED_MODULE_2__[\"setExchangeSelected\"], function (state, action) {\n return Object(immer__WEBPACK_IMPORTED_MODULE_1__[\"produce\"])(state, function () {\n state.exchange.selected = action.payload;\n return state;\n });\n }).addCase(_actions_setMacroEnabled__WEBPACK_IMPORTED_MODULE_3__[\"setMacroEnabled\"], function (state, action) {\n return Object(immer__WEBPACK_IMPORTED_MODULE_1__[\"produce\"])(state, function () {\n state.isMacroEnabled = action.payload;\n return state;\n });\n }).addCase(_actions_setMacroAmount__WEBPACK_IMPORTED_MODULE_4__[\"setMacroAmount\"].fulfilled, function (state, action) {\n return Object(immer__WEBPACK_IMPORTED_MODULE_1__[\"produce\"])(state, function () {\n state.betterEtoroUIConfig.executionAmount = _toConsumableArray(action.payload);\n return state;\n });\n }).addCase(_actions_setMacroLever__WEBPACK_IMPORTED_MODULE_5__[\"setMacroLever\"], function (state, action) {\n return Object(immer__WEBPACK_IMPORTED_MODULE_1__[\"produce\"])(state, function () {\n state.betterEtoroUIConfig.executionLever = _toConsumableArray(action.payload);\n return state;\n });\n }).addCase(_actions_setListCompact__WEBPACK_IMPORTED_MODULE_8__[\"setListCompact\"], function (state, action) {\n return Object(immer__WEBPACK_IMPORTED_MODULE_1__[\"produce\"])(state, function () {\n state.betterEtoroUIConfig.listCompactOn = action.payload;\n return state;\n });\n });\n});\nvar rootReducers = Object(_reduxjs_toolkit__WEBPACK_IMPORTED_MODULE_0__[\"combineReducers\"])({\n settings: settings\n});\nvar store = Object(_reduxjs_toolkit__WEBPACK_IMPORTED_MODULE_0__[\"configureStore\"])({\n reducer: rootReducers\n});\nvar useTypedSelector = react_redux__WEBPACK_IMPORTED_MODULE_7__[\"useSelector\"];\n/* harmony default export */ __webpack_exports__[\"default\"] = (store);//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiLi9zcmMvc3RvcmUvX3N0b3JlLnRzLmpzIiwic291cmNlcyI6WyJ3ZWJwYWNrOi8vLy4vc3JjL3N0b3JlL19zdG9yZS50cz8wNTY2Il0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gIGNvbmZpZ3VyZVN0b3JlLFxuICBjcmVhdGVBY3Rpb24sXG4gIGNyZWF0ZVJlZHVjZXIsXG4gIGNvbWJpbmVSZWR1Y2VycyxcbiAgY3JlYXRlQXN5bmNUaHVuayxcbn0gZnJvbSAnQHJlZHV4anMvdG9vbGtpdCdcbmltcG9ydCB7IHByb2R1Y2UgfSBmcm9tICdpbW1lcidcbmltcG9ydCB7IHNldEV4Y2hhbmdlU2VsZWN0ZWQgfSBmcm9tICdAL2FjdGlvbnMvc2V0RXhjaGFuZ2VTZWxlY3RlZCdcbmltcG9ydCB7IHNldE1hY3JvRW5hYmxlZCB9IGZyb20gJ0AvYWN0aW9ucy9zZXRNYWNyb0VuYWJsZWQnXG5pbXBvcnQgeyBzZXRNYWNyb0Ftb3VudCB9IGZyb20gJ0AvYWN0aW9ucy9zZXRNYWNyb0Ftb3VudCdcbmltcG9ydCB7IHNldE1hY3JvTGV2ZXIgfSBmcm9tICdAL2FjdGlvbnMvc2V0TWFjcm9MZXZlcidcbmltcG9ydCB7IHN0b3JhZ2UsIEJldHRlckV0b3JvVUlDb25maWcgfSBmcm9tICdAL3N0b3JhZ2UnXG5pbXBvcnQgeyBUeXBlZFVzZVNlbGVjdG9ySG9vaywgdXNlU2VsZWN0b3IgfSBmcm9tICdyZWFjdC1yZWR1eCdcbmltcG9ydCB7IHNldExpc3RDb21wYWN0IH0gZnJvbSAnQC9hY3Rpb25zL3NldExpc3RDb21wYWN0J1xuaW1wb3J0IHsgc2V0QmV0dGVyRXRvcm9VSUNvbmZpZyB9IGZyb20gJ0AvYWN0aW9ucy9zZXRCZXR0ZXJFdG9yb1VJQ29uZmlnJ1xuXG5jb25zdCBzZXR0aW5ncyA9IGNyZWF0ZVJlZHVjZXI8e1xuICBiZXR0ZXJFdG9yb1VJQ29uZmlnOiBCZXR0ZXJFdG9yb1VJQ29uZmlnXG4gIGlzTWFjcm9FbmFibGVkOiBib29sZWFuXG4gIGV4Y2hhbmdlOiB7XG4gICAgc2VsZWN0ZWQ6ICdOVEQnIHwgJ01ZUidcbiAgICBOVEQ6IHtcbiAgICAgIGJ1eTogbnVtYmVyXG4gICAgICBzZWxsOiBudW1iZXJcbiAgICB9XG4gICAgTVlSOiB7XG4gICAgICBidXk6IG51bWJlclxuICAgICAgc2VsbDogbnVtYmVyXG4gICAgfVxuICB9XG59PihcbiAge1xuICAgIGJldHRlckV0b3JvVUlDb25maWc6IHN0b3JhZ2UuZmluZENvbmZpZygpLFxuICAgIGlzTWFjcm9FbmFibGVkOiBzdG9yYWdlLmZpbmRDb25maWcoKS5leGVjdXRpb25NYWNyb0VuYWJsZWQsXG4gICAgZXhjaGFuZ2U6IHtcbiAgICAgIHNlbGVjdGVkOiBzdG9yYWdlLmZpbmRDb25maWcoKS5zZWxlY3RlZEV4Y2hhbmdlLFxuICAgICAgTlREOiB7XG4gICAgICAgIGJ1eTogMzAsXG4gICAgICAgIHNlbGw6IDMwLFxuICAgICAgfSxcbiAgICAgIE1ZUjoge1xuICAgICAgICBidXk6IDQuMjUsXG4gICAgICAgIHNlbGw6IDQuMjUsXG4gICAgICB9LFxuICAgIH0sXG4gIH0sXG4gIGJ1aWxkZXIgPT5cbiAgICBidWlsZGVyXG4gICAgICAuYWRkQ2FzZShzZXRCZXR0ZXJFdG9yb1VJQ29uZmlnLmZ1bGZpbGxlZCwgKHN0YXRlLCBhY3Rpb24pID0+XG4gICAgICAgIHByb2R1Y2Uoc3RhdGUsICgpID0+IHtcbiAgICAgICAgICBzdGF0ZS5iZXR0ZXJFdG9yb1VJQ29uZmlnID0gYWN0aW9uLnBheWxvYWRcbiAgICAgICAgICByZXR1cm4gc3RhdGVcbiAgICAgICAgfSksXG4gICAgICApXG4gICAgICAuYWRkQ2FzZShzZXRFeGNoYW5nZVNlbGVjdGVkLCAoc3RhdGUsIGFjdGlvbikgPT5cbiAgICAgICAgcHJvZHVjZShzdGF0ZSwgKCkgPT4ge1xuICAgICAgICAgIHN0YXRlLmV4Y2hhbmdlLnNlbGVjdGVkID0gYWN0aW9uLnBheWxvYWRcbiAgICAgICAgICByZXR1cm4gc3RhdGVcbiAgICAgICAgfSksXG4gICAgICApXG4gICAgICAuYWRkQ2FzZShzZXRNYWNyb0VuYWJsZWQsIChzdGF0ZSwgYWN0aW9uKSA9PlxuICAgICAgICBwcm9kdWNlKHN0YXRlLCAoKSA9PiB7XG4gICAgICAgICAgc3RhdGUuaXNNYWNyb0VuYWJsZWQgPSBhY3Rpb24ucGF5bG9hZFxuICAgICAgICAgIHJldHVybiBzdGF0ZVxuICAgICAgICB9KSxcbiAgICAgIClcbiAgICAgIC5hZGRDYXNlKHNldE1hY3JvQW1vdW50LmZ1bGZpbGxlZCwgKHN0YXRlLCBhY3Rpb24pID0+XG4gICAgICAgIHByb2R1Y2Uoc3RhdGUsICgpID0+IHtcbiAgICAgICAgICBzdGF0ZS5iZXR0ZXJFdG9yb1VJQ29uZmlnLmV4ZWN1dGlvbkFtb3VudCA9IFsuLi5hY3Rpb24ucGF5bG9hZF1cbiAgICAgICAgICByZXR1cm4gc3RhdGVcbiAgICAgICAgfSksXG4gICAgICApXG4gICAgICAuYWRkQ2FzZShzZXRNYWNyb0xldmVyLCAoc3RhdGUsIGFjdGlvbikgPT5cbiAgICAgICAgcHJvZHVjZShzdGF0ZSwgKCkgPT4ge1xuICAgICAgICAgIHN0YXRlLmJldHRlckV0b3JvVUlDb25maWcuZXhlY3V0aW9uTGV2ZXIgPSBbLi4uYWN0aW9uLnBheWxvYWRdXG4gICAgICAgICAgcmV0dXJuIHN0YXRlXG4gICAgICAgIH0pLFxuICAgICAgKVxuICAgICAgLmFkZENhc2Uoc2V0TGlzdENvbXBhY3QsIChzdGF0ZSwgYWN0aW9uKSA9PlxuICAgICAgICBwcm9kdWNlKHN0YXRlLCAoKSA9PiB7XG4gICAgICAgICAgc3RhdGUuYmV0dGVyRXRvcm9VSUNvbmZpZy5saXN0Q29tcGFjdE9uID0gYWN0aW9uLnBheWxvYWRcbiAgICAgICAgICByZXR1cm4gc3RhdGVcbiAgICAgICAgfSksXG4gICAgICApLFxuKVxuXG5jb25zdCByb290UmVkdWNlcnMgPSBjb21iaW5lUmVkdWNlcnMoeyBzZXR0aW5ncyB9KVxuXG5jb25zdCBzdG9yZSA9IGNvbmZpZ3VyZVN0b3JlKHtcbiAgcmVkdWNlcjogcm9vdFJlZHVjZXJzLFxufSlcblxuZXhwb3J0IHR5cGUgUm9vdFN0YXRlID0gUmV0dXJuVHlwZTx0eXBlb2Ygcm9vdFJlZHVjZXJzPlxuZXhwb3J0IHR5cGUgQXBwRGlzcGF0Y2ggPSB0eXBlb2Ygc3RvcmUuZGlzcGF0Y2hcbmV4cG9ydCBjb25zdCB1c2VUeXBlZFNlbGVjdG9yOiBUeXBlZFVzZVNlbGVjdG9ySG9vazxSb290U3RhdGU+ID0gdXNlU2VsZWN0b3JcblxuZXhwb3J0IGRlZmF1bHQgc3RvcmVcbiJdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBQUE7QUFPQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFFQTtBQWdCQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUZBO0FBSUE7QUFDQTtBQUNBO0FBRkE7QUFOQTtBQUhBO0FBZUE7QUFFQTtBQUVBO0FBQ0E7QUFDQTtBQUpBO0FBTUE7QUFFQTtBQUNBO0FBQ0E7QUFKQTtBQU1BO0FBRUE7QUFDQTtBQUNBO0FBSkE7QUFNQTtBQUVBO0FBQ0E7QUFDQTtBQUpBO0FBTUE7QUFFQTtBQUNBO0FBQ0E7QUFKQTtBQU1BO0FBRUE7QUFDQTtBQUNBO0FBSkE7QUFoQ0E7QUF3Q0E7QUFBQTtBQUFBO0FBRUE7QUFDQTtBQURBO0FBTUE7QUFFQSIsInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///./src/store/_store.ts\n"); +eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"useTypedSelector\", function() { return useTypedSelector; });\n/* harmony import */ var _reduxjs_toolkit__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @reduxjs/toolkit */ \"./node_modules/@reduxjs/toolkit/dist/index.js\");\n/* harmony import */ var _reduxjs_toolkit__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_reduxjs_toolkit__WEBPACK_IMPORTED_MODULE_0__);\n/* harmony import */ var immer__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! immer */ \"./node_modules/immer/dist/index.js\");\n/* harmony import */ var immer__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(immer__WEBPACK_IMPORTED_MODULE_1__);\n/* harmony import */ var _actions_setExchangeSelected__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! @/actions/setExchangeSelected */ \"./src/actions/setExchangeSelected.ts\");\n/* harmony import */ var _actions_setMacroEnabled__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! @/actions/setMacroEnabled */ \"./src/actions/setMacroEnabled.ts\");\n/* harmony import */ var _actions_setMacroAmount__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! @/actions/setMacroAmount */ \"./src/actions/setMacroAmount.ts\");\n/* harmony import */ var _actions_setMacroLever__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! @/actions/setMacroLever */ \"./src/actions/setMacroLever.ts\");\n/* harmony import */ var _storage__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! @/storage */ \"./src/storage.ts\");\n/* harmony import */ var react_redux__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! react-redux */ \"./node_modules/react-redux/lib/index.js\");\n/* harmony import */ var react_redux__WEBPACK_IMPORTED_MODULE_7___default = /*#__PURE__*/__webpack_require__.n(react_redux__WEBPACK_IMPORTED_MODULE_7__);\n/* harmony import */ var _actions_setListCompact__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! @/actions/setListCompact */ \"./src/actions/setListCompact.ts\");\n/* harmony import */ var _actions_setBetterEtoroUIConfig__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(/*! @/actions/setBetterEtoroUIConfig */ \"./src/actions/setBetterEtoroUIConfig.ts\");\n/* harmony import */ var _actions_fetchExtraCurrency__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(/*! @/actions/fetchExtraCurrency */ \"./src/actions/fetchExtraCurrency.ts\");\nfunction _toConsumableArray(arr) { return _arrayWithoutHoles(arr) || _iterableToArray(arr) || _unsupportedIterableToArray(arr) || _nonIterableSpread(); }\n\nfunction _nonIterableSpread() { throw new TypeError(\"Invalid attempt to spread non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.\"); }\n\nfunction _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); }\n\nfunction _iterableToArray(iter) { if (typeof Symbol !== \"undefined\" && Symbol.iterator in Object(iter)) return Array.from(iter); }\n\nfunction _arrayWithoutHoles(arr) { if (Array.isArray(arr)) return _arrayLikeToArray(arr); }\n\nfunction _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; }\n\n\n\n\n\n\n\n\n\n\n\n\nvar settings = Object(_reduxjs_toolkit__WEBPACK_IMPORTED_MODULE_0__[\"createReducer\"])({\n betterEtoroUIConfig: _storage__WEBPACK_IMPORTED_MODULE_6__[\"storage\"].findConfig(),\n isMacroEnabled: _storage__WEBPACK_IMPORTED_MODULE_6__[\"storage\"].findConfig().executionMacroEnabled,\n exchange: {\n selected: _storage__WEBPACK_IMPORTED_MODULE_6__[\"storage\"].findConfig().selectedExchange,\n NTD: {\n buy: 30,\n sell: 30\n },\n MYR: {\n buy: 4.25,\n sell: 4.25\n }\n }\n}, function (builder) {\n return builder.addCase(_actions_fetchExtraCurrency__WEBPACK_IMPORTED_MODULE_10__[\"fetchExtraCurrency\"].fulfilled, function (state, action) {\n return Object(immer__WEBPACK_IMPORTED_MODULE_1__[\"produce\"])(state, function () {\n state.exchange.MYR = action.payload.MYR;\n state.exchange.NTD = action.payload.NTD;\n return state;\n });\n }).addCase(_actions_setBetterEtoroUIConfig__WEBPACK_IMPORTED_MODULE_9__[\"setBetterEtoroUIConfig\"].fulfilled, function (state, action) {\n return Object(immer__WEBPACK_IMPORTED_MODULE_1__[\"produce\"])(state, function () {\n state.betterEtoroUIConfig = action.payload;\n return state;\n });\n }).addCase(_actions_setExchangeSelected__WEBPACK_IMPORTED_MODULE_2__[\"setExchangeSelected\"], function (state, action) {\n return Object(immer__WEBPACK_IMPORTED_MODULE_1__[\"produce\"])(state, function () {\n state.exchange.selected = action.payload;\n return state;\n });\n }).addCase(_actions_setMacroEnabled__WEBPACK_IMPORTED_MODULE_3__[\"setMacroEnabled\"], function (state, action) {\n return Object(immer__WEBPACK_IMPORTED_MODULE_1__[\"produce\"])(state, function () {\n state.isMacroEnabled = action.payload;\n return state;\n });\n }).addCase(_actions_setMacroAmount__WEBPACK_IMPORTED_MODULE_4__[\"setMacroAmount\"].fulfilled, function (state, action) {\n return Object(immer__WEBPACK_IMPORTED_MODULE_1__[\"produce\"])(state, function () {\n state.betterEtoroUIConfig.executionAmount = _toConsumableArray(action.payload);\n return state;\n });\n }).addCase(_actions_setMacroLever__WEBPACK_IMPORTED_MODULE_5__[\"setMacroLever\"], function (state, action) {\n return Object(immer__WEBPACK_IMPORTED_MODULE_1__[\"produce\"])(state, function () {\n state.betterEtoroUIConfig.executionLever = _toConsumableArray(action.payload);\n return state;\n });\n }).addCase(_actions_setListCompact__WEBPACK_IMPORTED_MODULE_8__[\"setListCompact\"], function (state, action) {\n return Object(immer__WEBPACK_IMPORTED_MODULE_1__[\"produce\"])(state, function () {\n state.betterEtoroUIConfig.listCompactOn = action.payload;\n return state;\n });\n });\n});\nvar rootReducers = Object(_reduxjs_toolkit__WEBPACK_IMPORTED_MODULE_0__[\"combineReducers\"])({\n settings: settings\n});\nvar store = Object(_reduxjs_toolkit__WEBPACK_IMPORTED_MODULE_0__[\"configureStore\"])({\n reducer: rootReducers\n});\nvar useTypedSelector = react_redux__WEBPACK_IMPORTED_MODULE_7__[\"useSelector\"];\n/* harmony default export */ __webpack_exports__[\"default\"] = (store);//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiLi9zcmMvc3RvcmUvX3N0b3JlLnRzLmpzIiwic291cmNlcyI6WyJ3ZWJwYWNrOi8vLy4vc3JjL3N0b3JlL19zdG9yZS50cz8wNTY2Il0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gIGNvbmZpZ3VyZVN0b3JlLFxuICBjcmVhdGVBY3Rpb24sXG4gIGNyZWF0ZVJlZHVjZXIsXG4gIGNvbWJpbmVSZWR1Y2VycyxcbiAgY3JlYXRlQXN5bmNUaHVuayxcbn0gZnJvbSAnQHJlZHV4anMvdG9vbGtpdCdcbmltcG9ydCB7IHByb2R1Y2UgfSBmcm9tICdpbW1lcidcbmltcG9ydCB7IHNldEV4Y2hhbmdlU2VsZWN0ZWQgfSBmcm9tICdAL2FjdGlvbnMvc2V0RXhjaGFuZ2VTZWxlY3RlZCdcbmltcG9ydCB7IHNldE1hY3JvRW5hYmxlZCB9IGZyb20gJ0AvYWN0aW9ucy9zZXRNYWNyb0VuYWJsZWQnXG5pbXBvcnQgeyBzZXRNYWNyb0Ftb3VudCB9IGZyb20gJ0AvYWN0aW9ucy9zZXRNYWNyb0Ftb3VudCdcbmltcG9ydCB7IHNldE1hY3JvTGV2ZXIgfSBmcm9tICdAL2FjdGlvbnMvc2V0TWFjcm9MZXZlcidcbmltcG9ydCB7IHN0b3JhZ2UsIEJldHRlckV0b3JvVUlDb25maWcgfSBmcm9tICdAL3N0b3JhZ2UnXG5pbXBvcnQgeyBUeXBlZFVzZVNlbGVjdG9ySG9vaywgdXNlU2VsZWN0b3IgfSBmcm9tICdyZWFjdC1yZWR1eCdcbmltcG9ydCB7IHNldExpc3RDb21wYWN0IH0gZnJvbSAnQC9hY3Rpb25zL3NldExpc3RDb21wYWN0J1xuaW1wb3J0IHsgc2V0QmV0dGVyRXRvcm9VSUNvbmZpZyB9IGZyb20gJ0AvYWN0aW9ucy9zZXRCZXR0ZXJFdG9yb1VJQ29uZmlnJ1xuaW1wb3J0IHsgZmV0Y2hFeHRyYUN1cnJlbmN5IH0gZnJvbSAnQC9hY3Rpb25zL2ZldGNoRXh0cmFDdXJyZW5jeSdcblxuY29uc3Qgc2V0dGluZ3MgPSBjcmVhdGVSZWR1Y2VyPHtcbiAgYmV0dGVyRXRvcm9VSUNvbmZpZzogQmV0dGVyRXRvcm9VSUNvbmZpZ1xuICBpc01hY3JvRW5hYmxlZDogYm9vbGVhblxuICBleGNoYW5nZToge1xuICAgIHNlbGVjdGVkOiAnTlREJyB8ICdNWVInXG4gICAgTlREOiB7XG4gICAgICBidXk6IG51bWJlclxuICAgICAgc2VsbDogbnVtYmVyXG4gICAgfVxuICAgIE1ZUjoge1xuICAgICAgYnV5OiBudW1iZXJcbiAgICAgIHNlbGw6IG51bWJlclxuICAgIH1cbiAgfVxufT4oXG4gIHtcbiAgICBiZXR0ZXJFdG9yb1VJQ29uZmlnOiBzdG9yYWdlLmZpbmRDb25maWcoKSxcbiAgICBpc01hY3JvRW5hYmxlZDogc3RvcmFnZS5maW5kQ29uZmlnKCkuZXhlY3V0aW9uTWFjcm9FbmFibGVkLFxuICAgIGV4Y2hhbmdlOiB7XG4gICAgICBzZWxlY3RlZDogc3RvcmFnZS5maW5kQ29uZmlnKCkuc2VsZWN0ZWRFeGNoYW5nZSxcbiAgICAgIE5URDoge1xuICAgICAgICBidXk6IDMwLFxuICAgICAgICBzZWxsOiAzMCxcbiAgICAgIH0sXG4gICAgICBNWVI6IHtcbiAgICAgICAgYnV5OiA0LjI1LFxuICAgICAgICBzZWxsOiA0LjI1LFxuICAgICAgfSxcbiAgICB9LFxuICB9LFxuICBidWlsZGVyID0+XG4gICAgYnVpbGRlclxuICAgICAgLmFkZENhc2UoZmV0Y2hFeHRyYUN1cnJlbmN5LmZ1bGZpbGxlZCwgKHN0YXRlLCBhY3Rpb24pID0+XG4gICAgICAgIHByb2R1Y2Uoc3RhdGUsICgpID0+IHtcbiAgICAgICAgICBzdGF0ZS5leGNoYW5nZS5NWVIgPSBhY3Rpb24ucGF5bG9hZC5NWVJcbiAgICAgICAgICBzdGF0ZS5leGNoYW5nZS5OVEQgPSBhY3Rpb24ucGF5bG9hZC5OVERcbiAgICAgICAgICByZXR1cm4gc3RhdGVcbiAgICAgICAgfSksXG4gICAgICApXG4gICAgICAuYWRkQ2FzZShzZXRCZXR0ZXJFdG9yb1VJQ29uZmlnLmZ1bGZpbGxlZCwgKHN0YXRlLCBhY3Rpb24pID0+XG4gICAgICAgIHByb2R1Y2Uoc3RhdGUsICgpID0+IHtcbiAgICAgICAgICBzdGF0ZS5iZXR0ZXJFdG9yb1VJQ29uZmlnID0gYWN0aW9uLnBheWxvYWRcbiAgICAgICAgICByZXR1cm4gc3RhdGVcbiAgICAgICAgfSksXG4gICAgICApXG4gICAgICAuYWRkQ2FzZShzZXRFeGNoYW5nZVNlbGVjdGVkLCAoc3RhdGUsIGFjdGlvbikgPT5cbiAgICAgICAgcHJvZHVjZShzdGF0ZSwgKCkgPT4ge1xuICAgICAgICAgIHN0YXRlLmV4Y2hhbmdlLnNlbGVjdGVkID0gYWN0aW9uLnBheWxvYWRcbiAgICAgICAgICByZXR1cm4gc3RhdGVcbiAgICAgICAgfSksXG4gICAgICApXG4gICAgICAuYWRkQ2FzZShzZXRNYWNyb0VuYWJsZWQsIChzdGF0ZSwgYWN0aW9uKSA9PlxuICAgICAgICBwcm9kdWNlKHN0YXRlLCAoKSA9PiB7XG4gICAgICAgICAgc3RhdGUuaXNNYWNyb0VuYWJsZWQgPSBhY3Rpb24ucGF5bG9hZFxuICAgICAgICAgIHJldHVybiBzdGF0ZVxuICAgICAgICB9KSxcbiAgICAgIClcbiAgICAgIC5hZGRDYXNlKHNldE1hY3JvQW1vdW50LmZ1bGZpbGxlZCwgKHN0YXRlLCBhY3Rpb24pID0+XG4gICAgICAgIHByb2R1Y2Uoc3RhdGUsICgpID0+IHtcbiAgICAgICAgICBzdGF0ZS5iZXR0ZXJFdG9yb1VJQ29uZmlnLmV4ZWN1dGlvbkFtb3VudCA9IFsuLi5hY3Rpb24ucGF5bG9hZF1cbiAgICAgICAgICByZXR1cm4gc3RhdGVcbiAgICAgICAgfSksXG4gICAgICApXG4gICAgICAuYWRkQ2FzZShzZXRNYWNyb0xldmVyLCAoc3RhdGUsIGFjdGlvbikgPT5cbiAgICAgICAgcHJvZHVjZShzdGF0ZSwgKCkgPT4ge1xuICAgICAgICAgIHN0YXRlLmJldHRlckV0b3JvVUlDb25maWcuZXhlY3V0aW9uTGV2ZXIgPSBbLi4uYWN0aW9uLnBheWxvYWRdXG4gICAgICAgICAgcmV0dXJuIHN0YXRlXG4gICAgICAgIH0pLFxuICAgICAgKVxuICAgICAgLmFkZENhc2Uoc2V0TGlzdENvbXBhY3QsIChzdGF0ZSwgYWN0aW9uKSA9PlxuICAgICAgICBwcm9kdWNlKHN0YXRlLCAoKSA9PiB7XG4gICAgICAgICAgc3RhdGUuYmV0dGVyRXRvcm9VSUNvbmZpZy5saXN0Q29tcGFjdE9uID0gYWN0aW9uLnBheWxvYWRcbiAgICAgICAgICByZXR1cm4gc3RhdGVcbiAgICAgICAgfSksXG4gICAgICApLFxuKVxuXG5jb25zdCByb290UmVkdWNlcnMgPSBjb21iaW5lUmVkdWNlcnMoeyBzZXR0aW5ncyB9KVxuXG5jb25zdCBzdG9yZSA9IGNvbmZpZ3VyZVN0b3JlKHtcbiAgcmVkdWNlcjogcm9vdFJlZHVjZXJzLFxufSlcblxuZXhwb3J0IHR5cGUgUm9vdFN0YXRlID0gUmV0dXJuVHlwZTx0eXBlb2Ygcm9vdFJlZHVjZXJzPlxuZXhwb3J0IHR5cGUgQXBwRGlzcGF0Y2ggPSB0eXBlb2Ygc3RvcmUuZGlzcGF0Y2hcbmV4cG9ydCBjb25zdCB1c2VUeXBlZFNlbGVjdG9yOiBUeXBlZFVzZVNlbGVjdG9ySG9vazxSb290U3RhdGU+ID0gdXNlU2VsZWN0b3JcblxuZXhwb3J0IGRlZmF1bHQgc3RvcmVcbiJdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQUFBO0FBT0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFFQTtBQWdCQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUZBO0FBSUE7QUFDQTtBQUNBO0FBRkE7QUFOQTtBQUhBO0FBZUE7QUFFQTtBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBTEE7QUFPQTtBQUVBO0FBQ0E7QUFDQTtBQUpBO0FBTUE7QUFFQTtBQUNBO0FBQ0E7QUFKQTtBQU1BO0FBRUE7QUFDQTtBQUNBO0FBSkE7QUFNQTtBQUVBO0FBQ0E7QUFDQTtBQUpBO0FBTUE7QUFFQTtBQUNBO0FBQ0E7QUFKQTtBQU1BO0FBRUE7QUFDQTtBQUNBO0FBSkE7QUF2Q0E7QUErQ0E7QUFBQTtBQUFBO0FBRUE7QUFDQTtBQURBO0FBTUE7QUFFQSIsInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///./src/store/_store.ts\n"); /***/ }),