{"version":3,"sources":["webpack:///./src/views/Settings/App.vue?edb8","webpack:///./src/views/Settings/App.vue","webpack:///./src/views/Settings/App.vue?3094","webpack:///./src/views/Settings/App.vue?8146","webpack:///./src/assets/login.png","webpack:///./node_modules/core-js/modules/web.dom-collections.for-each.js","webpack:///./node_modules/core-js/internals/array-for-each.js","webpack:///./src/assets/rss.svg","webpack:///./node_modules/core-js/modules/es.array.for-each.js","webpack:///./src/components/RowSelector.vue?26a9","webpack:///./src/components/RowSelector.vue","webpack:///./src/components/RowSelector.vue?c29c","webpack:///./src/components/RowSelector.vue?8b1f","webpack:///./src/services/socket.ts","webpack:///./node_modules/core-js/modules/es.array.find.js","webpack:///./src/services/settingService.ts","webpack:///./node_modules/core-js/modules/es.number.constructor.js","webpack:///./src/components/TextRowEditor.vue?cc4a","webpack:///src/components/TextRowEditor.vue","webpack:///./src/components/TextRowEditor.vue?c1ae","webpack:///./src/components/TextRowEditor.vue","webpack:///./src/views/Home/RssFeedForm.vue?248f","webpack:///./src/views/Home/RssFeedForm.vue","webpack:///./src/views/Home/RssFeedForm.vue?0575","webpack:///./src/views/Home/RssFeedForm.vue?30b1","webpack:///./node_modules/core-js/modules/es.object.keys.js"],"names":["render","_vm","this","_h","$createElement","_c","_self","staticClass","_v","attrs","staticStyle","on","$event","showAddFeedDialog","_l","rss","index","key","FeedIcon","_s","FeedName","Link","deleteRss","editingFeed","saveNewFeedLink","ref","gateway","required","message","$t","trigger","model","value","callback","$$v","$set","expression","submitGateway","updateSysSetting","sysSettings","updateUserSetting","userSettings","notBot","submitNotBot","updateIbRotationSettings","ibRotation","_n","ibRotationAva","updateFutuRotationSettings","futuRotation","futuRotationAva","1","2","3","4","5","start","step","end","minTime","FlexRefreshStart","staticRenderFns","Host","Port","rssList","SymbolId","FreebieLimit","CurrencyLimit","WatchlistLimit","CaptureLimit","AlertLimit","StockDataSource","PortfolioDataSource","Token","NameOfBot","DataPointsPerMinute","AlertDataSource","FreebieDataSource","FlexRefreshEnd","FlexTryInterval","keys","Object","settingService","readUserSettingsByNamesAsync","usRes","Error","$alert","Result","forEach","p","Value","Name","field","toString","addOrUpdateUserSettingAsync","ValueType","res","localStorage","setItem","socket","Local","stopAutoConnect","close","showMessage","item","utility","removeArrayItem","saveSysSettings","name","valueType","addOrUpdateSysSettingAsync","JSON","stringify","$refs","gateWayForm","validate","valid","notBotForm","push","loadRotation","readSysSettingByNamesAsync","notBotItem","find","notBotObj","parse","gatewayObj","dppm","parseInt","ads","fds","frs","fre","fti","loadUserSettings","rotationObj","$message","type","components","rowEditor","RssFeedForm","rowSelector","component","module","exports","global","DOMIterables","createNonEnumerableProperty","COLLECTION_NAME","Collection","CollectionPrototype","prototype","error","$forEach","arrayMethodIsStrict","arrayMethodUsesToLength","STRICT_METHOD","USES_TO_LENGTH","callbackfn","arguments","length","undefined","$","target","proto","forced","formValue","nativeOn","preventDefault","submit","rules","handleChange","inputValue","$emit","v","textForm","ClientSocket","dataSource","DataSource","TryTimes","Messages","OnMessage","OnOpen","OnError","isConnecting","timeoutInterval","autoConnect","context","state","user","jwt","ws","location","protocol","url","uid","window","host","startsWith","WebSocket","Socket","readyState","getWsUrl","onopen","sendMessages","onerror","err","reconnect","onmessage","msg","data","Action","sendDirectMsg","i","onclose","e","clearInterval","setTimeout","init","action","content","send","MsgId","Content","shift","console","log","source","server","local","Server","GetSocketServer","getItem","InitAll","addMessageCallBack","SendAll","sendContext","RemoveAll","removeMessageCallBack","$find","addToUnscopables","FIND","SKIPS_HOLES","Array","names","tryPostResult","settings","tryPostBooleanResult","testPop3","testSmtp","DESCRIPTORS","isForced","redefine","has","classof","inheritIfRequired","toPrimitive","fails","create","getOwnPropertyNames","f","getOwnPropertyDescriptor","defineProperty","trim","NUMBER","NativeNumber","NumberPrototype","BROKEN_CLASSOF","toNumber","argument","first","third","radix","maxCode","digits","code","it","charCodeAt","NaN","slice","NumberWrapper","dummy","valueOf","call","split","j","constructor","buttonText","mounted","isLoading","watch","handler","val","props","default","String","Number","methods","checkValidation","fun","requiredRule","modelForm","toObject","nativeKeys","FAILS_ON_PRIMITIVES","stat"],"mappings":"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","file":"js/chunk-06fe76ce.js","sourcesContent":["var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"m-auto\"},[_c('h4',[_vm._v(\"App Settings\")]),_c('el-row',{staticClass:\"p-2\",attrs:{\"gutter\":20}},[_c('el-col',{attrs:{\"md\":12,\"sm\":24}},[_c('div',{staticClass:\"border p-2 mb-4 bg-light\"},[_c('div',{staticClass:\"border-bottom d-flex align-items-center pb-3 pt-2\"},[_c('img',{staticClass:\"icon-size-24\",attrs:{\"src\":require(\"../../assets/rss.svg\"),\"alt\":\"login icon\"}}),_c('span',{staticClass:\"font-weight-bold ml-2\"},[_vm._v(\"Rss\")])]),_c('div',{staticClass:\"pt-2 pl-2 pr-2\"},[_c('div',{staticClass:\"position-relative mb-4\"},[_c('div',{staticClass:\"f-20 color-999\"},[_vm._v(\"Feeds\")]),_c('i',{staticClass:\"abs-right el-icon-circle-plus font-weight-bold action-color f-20 pointer\",staticStyle:{\"top\":\"6px\"},on:{\"click\":function($event){_vm.showAddFeedDialog=true}}}),_vm._l((_vm.rssList),function(rss,index){return _c('div',{key:index,staticClass:\"d-flex align-items-center p-2\",staticStyle:{\"max-width\":\"500px\",\"word-break\":\"break-all\"}},[_c('img',{staticClass:\"mr-2\",staticStyle:{\"max-height\":\"30px\"},attrs:{\"src\":rss.FeedIcon}}),_vm._v(\" \"+_vm._s(rss.FeedName)+\" \"+_vm._s(rss.Link)+\" \"),_c('i',{staticClass:\"el-icon-delete pointer ml-2\",on:{\"click\":function($event){return _vm.deleteRss(rss)}}})])}),_c('el-dialog',{attrs:{\"title\":\"Please enter the rss link:\",\"close-on-click-modal\":false,\"visible\":_vm.showAddFeedDialog,\"append-to-body\":\"\",\"show-close\":true,\"width\":\"40%\"},on:{\"update:visible\":function($event){_vm.showAddFeedDialog=$event}}},[_c('RssFeedForm',{attrs:{\"icon\":_vm.editingFeed.FeedIcon,\"title\":_vm.editingFeed.FeedName,\"url\":_vm.editingFeed.Link},on:{\"submit\":_vm.saveNewFeedLink}})],1)],2)])]),_c('div',{staticClass:\"border p-2 mb-4 bg-light\"},[_c('div',{staticClass:\"border-bottom d-flex align-items-center pb-3 pt-2\"},[_c('img',{staticClass:\"icon-size-24\",attrs:{\"src\":require(\"../../assets/login.png\"),\"alt\":\"login icon\"}}),_c('span',{staticClass:\"font-weight-bold ml-2\"},[_vm._v(\"Gateway\")])]),_c('div',{staticClass:\"pt-2 pl-2 pr-2\"},[_c('div',{staticClass:\"position-relative mb-4\"},[_c('el-form',{ref:\"gateWayForm\",attrs:{\"model\":_vm.gateway}},[_c('el-form-item',{staticClass:\"login-label\",attrs:{\"label\":\"Host\",\"prop\":\"Host\",\"rules\":[{required: true, message: _vm.$t('val.required'), trigger: 'blur'}]}},[_c('el-input',{staticClass:\"form-input\",attrs:{\"type\":\"text\",\"autocomplete\":\"off\"},model:{value:(_vm.gateway.Host),callback:function ($$v) {_vm.$set(_vm.gateway, \"Host\", $$v)},expression:\"gateway.Host\"}})],1),_c('el-form-item',{staticClass:\"login-label\",attrs:{\"label\":\"Port\",\"prop\":\"Port\",\"rules\":[{required: true, message: _vm.$t('val.required'), trigger: 'blur'}]}},[_c('el-input',{staticClass:\"form-input\",attrs:{\"type\":\"text\",\"autocomplete\":\"off\"},model:{value:(_vm.gateway.Port),callback:function ($$v) {_vm.$set(_vm.gateway, \"Port\", $$v)},expression:\"gateway.Port\"}})],1),_c('el-form-item',[_c('el-button',{attrs:{\"type\":\"primary\"},on:{\"click\":function($event){return _vm.submitGateway()}}},[_vm._v(_vm._s(_vm.$t('button.save'))+\" \")])],1)],1)],1)])]),_c('div',{staticClass:\"border p-2 mb-4 bg-light\"},[_c('div',{staticClass:\"border-bottom d-flex align-items-center pb-3 pt-2\"},[_c('i',{staticClass:\"el-icon-setting f-20\"}),_c('span',{staticClass:\"font-weight-bold ml-2\"},[_vm._v(\"Data Source for Server Functions\")])]),_c('div',{staticClass:\"pt-2 pl-2 pr-2\"},[_c('div',{staticClass:\"position-relative mb-4 d-flex align-items-center\"},[_c('div',{staticClass:\"f-20 color-999\"},[_vm._v(\"Stock Price Alerts\")]),_c('div',{staticClass:\"flex-fill text-right\"},[_c('el-radio',{attrs:{\"label\":\"IBKR\"},on:{\"change\":function($event){return _vm.updateSysSetting('AlertDataSource')}},model:{value:(_vm.sysSettings.AlertDataSource),callback:function ($$v) {_vm.$set(_vm.sysSettings, \"AlertDataSource\", $$v)},expression:\"sysSettings.AlertDataSource\"}},[_vm._v(\" IBKR \")]),_c('el-radio',{attrs:{\"label\":\"FUTU\"},on:{\"change\":function($event){return _vm.updateSysSetting('AlertDataSource')}},model:{value:(_vm.sysSettings.AlertDataSource),callback:function ($$v) {_vm.$set(_vm.sysSettings, \"AlertDataSource\", $$v)},expression:\"sysSettings.AlertDataSource\"}},[_vm._v(\" FUTU \")])],1)]),_c('div',{staticClass:\"position-relative mb-4 d-flex align-items-center\"},[_c('div',{staticClass:\"f-20 color-999\"},[_vm._v(\"Freebie Detector\")]),_c('div',{staticClass:\"flex-fill text-right\"},[_c('el-radio',{attrs:{\"label\":\"IBKR\"},on:{\"change\":function($event){return _vm.updateSysSetting('FreebieDataSource')}},model:{value:(_vm.sysSettings.FreebieDataSource),callback:function ($$v) {_vm.$set(_vm.sysSettings, \"FreebieDataSource\", $$v)},expression:\"sysSettings.FreebieDataSource\"}},[_vm._v(\" IBKR \")]),_c('el-radio',{attrs:{\"label\":\"FUTU\"},on:{\"change\":function($event){return _vm.updateSysSetting('FreebieDataSource')}},model:{value:(_vm.sysSettings.FreebieDataSource),callback:function ($$v) {_vm.$set(_vm.sysSettings, \"FreebieDataSource\", $$v)},expression:\"sysSettings.FreebieDataSource\"}},[_vm._v(\" FUTU \")])],1)])])]),_c('div',{staticClass:\"border p-2 mb-4 bg-light\"},[_c('div',{staticClass:\"border-bottom d-flex align-items-center pb-3 pt-2\"},[_c('i',{staticClass:\"el-icon-setting f-20\"}),_c('span',{staticClass:\"font-weight-bold ml-2\"},[_vm._v(\"Data Source for User Functions\")])]),_c('div',{staticClass:\"pt-2 pl-2 pr-2\"},[_c('div',{staticClass:\"position-relative mb-4 d-flex align-items-center\"},[_c('div',{staticClass:\"f-20 color-999\"},[_vm._v(\"Market Data\")]),_c('div',{staticClass:\"flex-fill text-right\"},[_c('el-radio',{attrs:{\"label\":\"IBKR\"},on:{\"change\":function($event){return _vm.updateUserSetting('StockDataSource')}},model:{value:(_vm.userSettings.StockDataSource),callback:function ($$v) {_vm.$set(_vm.userSettings, \"StockDataSource\", $$v)},expression:\"userSettings.StockDataSource\"}},[_vm._v(\" Server IBKR \")]),_c('el-radio',{attrs:{\"label\":\"FUTU\"},on:{\"change\":function($event){return _vm.updateUserSetting('StockDataSource')}},model:{value:(_vm.userSettings.StockDataSource),callback:function ($$v) {_vm.$set(_vm.userSettings, \"StockDataSource\", $$v)},expression:\"userSettings.StockDataSource\"}},[_vm._v(\" Server FUTU \")]),_c('el-radio',{attrs:{\"label\":\"Local\"},on:{\"change\":function($event){return _vm.updateUserSetting('StockDataSource')}},model:{value:(_vm.userSettings.StockDataSource),callback:function ($$v) {_vm.$set(_vm.userSettings, \"StockDataSource\", $$v)},expression:\"userSettings.StockDataSource\"}},[_vm._v(\" Local \")])],1)])]),_c('div',{staticClass:\"pt-2 pl-2 pr-2\"},[_c('div',{staticClass:\"position-relative mb-4 d-flex align-items-center\"},[_c('div',{staticClass:\"f-20 color-999\"},[_vm._v(\"Portfolio Data\")]),_c('div',{staticClass:\"flex-fill text-right\"},[_c('el-radio',{attrs:{\"label\":\"Server\"},on:{\"change\":function($event){return _vm.updateUserSetting('PortfolioDataSource')}},model:{value:(_vm.userSettings.PortfolioDataSource),callback:function ($$v) {_vm.$set(_vm.userSettings, \"PortfolioDataSource\", $$v)},expression:\"userSettings.PortfolioDataSource\"}},[_vm._v(\" Server \")]),_c('el-radio',{attrs:{\"label\":\"Local\"},on:{\"change\":function($event){return _vm.updateUserSetting('PortfolioDataSource')}},model:{value:(_vm.userSettings.PortfolioDataSource),callback:function ($$v) {_vm.$set(_vm.userSettings, \"PortfolioDataSource\", $$v)},expression:\"userSettings.PortfolioDataSource\"}},[_vm._v(\" Local \")])],1)])])])]),_c('el-col',{attrs:{\"md\":12,\"sm\":24}},[_c('div',{staticClass:\"border p-2 mb-4 bg-light\"},[_c('div',{staticClass:\"border-bottom d-flex align-items-center pb-3 pt-2\"},[_c('img',{staticClass:\"icon-size-24\",attrs:{\"src\":require(\"../../assets/login.png\"),\"alt\":\"login icon\"}}),_c('span',{staticClass:\"font-weight-bold ml-2\"},[_vm._v(\"Notification Bot\")])]),_c('div',{staticClass:\"pt-2 pl-2 pr-2\"},[_c('div',{staticClass:\"position-relative mb-4\"},[_c('el-form',{ref:\"notBotForm\",attrs:{\"model\":_vm.notBot}},[_c('el-form-item',{staticClass:\"login-label\",attrs:{\"label\":\"Bot Token\",\"prop\":\"Token\",\"rules\":[{required: true, message: _vm.$t('val.required'), trigger: 'blur'}]}},[_c('el-input',{staticClass:\"form-input\",attrs:{\"type\":\"text\",\"autocomplete\":\"off\"},model:{value:(_vm.notBot.Token),callback:function ($$v) {_vm.$set(_vm.notBot, \"Token\", $$v)},expression:\"notBot.Token\"}})],1),_c('el-form-item',{staticClass:\"login-label\",attrs:{\"label\":\"Name of bot\",\"prop\":\"NameOfBot\",\"rules\":[{required: true, message: _vm.$t('val.required'), trigger: 'blur'}]}},[_c('el-input',{staticClass:\"form-input\",attrs:{\"type\":\"text\",\"autocomplete\":\"off\"},model:{value:(_vm.notBot.NameOfBot),callback:function ($$v) {_vm.$set(_vm.notBot, \"NameOfBot\", $$v)},expression:\"notBot.NameOfBot\"}})],1),_c('el-form-item',[_c('el-button',{attrs:{\"type\":\"primary\"},on:{\"click\":function($event){return _vm.submitNotBot()}}},[_vm._v(_vm._s(_vm.$t('button.save'))+\" \")])],1)],1)],1)])]),_c('div',{staticClass:\"border p-2 mb-4 bg-light\"},[_c('div',{staticClass:\"border-bottom d-flex align-items-center pb-3 pt-2\"},[_c('img',{staticClass:\"icon-size-24\",attrs:{\"src\":require(\"../../assets/login.png\"),\"alt\":\"login icon\"}}),_c('span',{staticClass:\"font-weight-bold ml-2\"},[_vm._v(\"Priority Pipe Allocation\")])]),_c('table',{staticClass:\"text-center w-100\",staticStyle:{\"border-collapse\":\"collapse\"}},[_c('thead',[_c('tr',[_c('th'),_c('th',{staticClass:\"pb-3 pt-3\"},[_vm._v(\"Exchange Rates\")]),_c('th',{staticClass:\"pb-3 pt-3\"},[_vm._v(\"Stock Price Alert\")]),_c('th',{staticClass:\"pb-3 pt-3\"},[_vm._v(\"Watchlist\")]),_c('th',{staticClass:\"pb-3 pt-3\"},[_vm._v(\"Freebie Detector\")]),_c('th',{staticClass:\"pb-3 pt-3\"},[_vm._v(\"Capture\")]),_c('th',{staticClass:\"pb-3 pt-3\"},[_vm._v(\"Available\")])])]),_c('tbody',[_c('tr',[_c('td',[_vm._v(\"IBKR\")]),_c('td',{staticClass:\"border pt-2 pb-2\"},[_c('el-input',{staticClass:\"form-input\",staticStyle:{\"max-width\":\"100px\"},attrs:{\"type\":\"number\",\"autocomplete\":\"off\"},on:{\"change\":function($event){return _vm.updateIbRotationSettings($event)}},model:{value:(_vm.ibRotation.CurrencyLimit),callback:function ($$v) {_vm.$set(_vm.ibRotation, \"CurrencyLimit\", _vm._n($$v))},expression:\"ibRotation.CurrencyLimit\"}})],1),_c('td',{staticClass:\"border pt-2 pb-2\"},[_c('el-input',{staticClass:\"form-input\",staticStyle:{\"max-width\":\"100px\"},attrs:{\"type\":\"number\",\"autocomplete\":\"off\"},on:{\"change\":function($event){return _vm.updateIbRotationSettings($event)}},model:{value:(_vm.ibRotation.AlertLimit),callback:function ($$v) {_vm.$set(_vm.ibRotation, \"AlertLimit\", $$v)},expression:\"ibRotation.AlertLimit\"}})],1),_c('td',{staticClass:\"border pt-2 pb-2\"},[_c('el-input',{staticClass:\"form-input\",staticStyle:{\"max-width\":\"100px\"},attrs:{\"type\":\"number\",\"autocomplete\":\"off\"},on:{\"change\":function($event){return _vm.updateIbRotationSettings($event)}},model:{value:(_vm.ibRotation.WatchlistLimit),callback:function ($$v) {_vm.$set(_vm.ibRotation, \"WatchlistLimit\", _vm._n($$v))},expression:\"ibRotation.WatchlistLimit\"}})],1),_c('td',{staticClass:\"border pt-2 pb-2\"},[_c('el-input',{staticClass:\"form-input\",staticStyle:{\"max-width\":\"100px\"},attrs:{\"type\":\"number\",\"autocomplete\":\"off\"},on:{\"change\":function($event){return _vm.updateIbRotationSettings($event)}},model:{value:(_vm.ibRotation.CaptureLimit),callback:function ($$v) {_vm.$set(_vm.ibRotation, \"CaptureLimit\", _vm._n($$v))},expression:\"ibRotation.CaptureLimit\"}})],1),_c('td',{staticClass:\"border pt-2 pb-2\"},[_c('el-input',{staticClass:\"form-input\",staticStyle:{\"max-width\":\"100px\"},attrs:{\"type\":\"number\",\"autocomplete\":\"off\"},on:{\"change\":function($event){return _vm.updateIbRotationSettings($event)}},model:{value:(_vm.ibRotation.FreebieLimit),callback:function ($$v) {_vm.$set(_vm.ibRotation, \"FreebieLimit\", $$v)},expression:\"ibRotation.FreebieLimit\"}})],1),_c('td',{staticClass:\"border pt-2 pb-2\"},[_vm._v(_vm._s(_vm.ibRotationAva))])]),_c('tr',[_c('td',[_vm._v(\"FUTU\")]),_c('td',{staticClass:\"border pt-2 pb-2\"},[_vm._v(\" Unsupported \")]),_c('td',{staticClass:\"border pt-2 pb-2\"},[_c('el-input',{staticClass:\"form-input\",staticStyle:{\"max-width\":\"100px\"},attrs:{\"type\":\"number\",\"autocomplete\":\"off\"},on:{\"change\":function($event){return _vm.updateFutuRotationSettings($event)}},model:{value:(_vm.futuRotation.AlertLimit),callback:function ($$v) {_vm.$set(_vm.futuRotation, \"AlertLimit\", $$v)},expression:\"futuRotation.AlertLimit\"}})],1),_c('td',{staticClass:\"border pt-2 pb-2\"},[_c('el-input',{staticClass:\"form-input\",staticStyle:{\"max-width\":\"100px\"},attrs:{\"type\":\"number\",\"autocomplete\":\"off\"},on:{\"change\":function($event){return _vm.updateFutuRotationSettings($event)}},model:{value:(_vm.futuRotation.WatchlistLimit),callback:function ($$v) {_vm.$set(_vm.futuRotation, \"WatchlistLimit\", $$v)},expression:\"futuRotation.WatchlistLimit\"}})],1),_c('td',{staticClass:\"border pt-2 pb-2\"},[_c('el-input',{staticClass:\"form-input\",staticStyle:{\"max-width\":\"100px\"},attrs:{\"type\":\"number\",\"autocomplete\":\"off\"},on:{\"change\":function($event){return _vm.updateFutuRotationSettings($event)}},model:{value:(_vm.futuRotation.CaptureLimit),callback:function ($$v) {_vm.$set(_vm.futuRotation, \"CaptureLimit\", $$v)},expression:\"futuRotation.CaptureLimit\"}})],1),_c('td',{staticClass:\"border pt-2 pb-2\"},[_c('el-input',{staticClass:\"form-input\",staticStyle:{\"max-width\":\"100px\"},attrs:{\"type\":\"number\",\"autocomplete\":\"off\"},on:{\"change\":function($event){return _vm.updateFutuRotationSettings($event)}},model:{value:(_vm.futuRotation.FreebieLimit),callback:function ($$v) {_vm.$set(_vm.futuRotation, \"FreebieLimit\", $$v)},expression:\"futuRotation.FreebieLimit\"}})],1),_c('td',{staticClass:\"border pt-3\"},[_vm._v(_vm._s(_vm.futuRotationAva))])])])])]),_c('div',{staticClass:\"border p-2 mb-4 bg-light\"},[_c('div',{staticClass:\"border-bottom d-flex align-items-center pb-3 pt-2\"},[_c('i',{staticClass:\"el-icon-setting f-20\"}),_c('span',{staticClass:\"font-weight-bold ml-2\"},[_vm._v(\"Option Data Capture\")])]),_c('div',{staticClass:\"pt-2 pl-2 pr-2\"},[_c('div',{staticClass:\"position-relative mb-4 d-flex align-items-center\"},[_c('div',{staticClass:\"f-20 color-999\"},[_vm._v(\"Data Points Per Minute\")]),_c('div',{staticClass:\"flex-fill text-right pl-5 pr-5\"},[_c('el-slider',{attrs:{\"min\":1,\"max\":5,\"show-stops\":\"\",\"marks\":{ 1 : '1',2 : '2',3 : '3',4 : '4',5 : 'All' },\"show-tooltip\":false},on:{\"change\":function($event){return _vm.updateSysSetting('DataPointsPerMinute')}},model:{value:(_vm.sysSettings.DataPointsPerMinute),callback:function ($$v) {_vm.$set(_vm.sysSettings, \"DataPointsPerMinute\", $$v)},expression:\"sysSettings.DataPointsPerMinute\"}})],1)])])]),_c('div',{staticClass:\"border p-2 mb-4 bg-light\"},[_c('div',{staticClass:\"border-bottom d-flex align-items-center pb-3 pt-2\"},[_c('i',{staticClass:\"el-icon-setting f-20\"}),_c('span',{staticClass:\"font-weight-bold ml-2\"},[_vm._v(\"IBKR Flex Service\")])]),_c('div',{staticClass:\"pt-2 pl-2 pr-2\"},[_c('div',{staticClass:\"position-relative mb-4 d-flex align-items-center\"},[_c('div',{staticClass:\"f-20 color-999\"},[_vm._v(\"Update Start Time\")]),_c('div',{staticClass:\"flex-fill text-right\"},[_c('el-time-select',{attrs:{\"picker-options\":{\n start: '00:00', step: '00:01', end: '23:59'\n }},on:{\"change\":function($event){return _vm.updateSysSetting('FlexRefreshStart')}},model:{value:(_vm.sysSettings.FlexRefreshStart),callback:function ($$v) {_vm.$set(_vm.sysSettings, \"FlexRefreshStart\", $$v)},expression:\"sysSettings.FlexRefreshStart\"}})],1)]),_c('div',{staticClass:\"position-relative mb-4 d-flex align-items-center\"},[_c('div',{staticClass:\"f-20 color-999\"},[_vm._v(\"Update End Time\")]),_c('div',{staticClass:\"flex-fill text-right\"},[_c('el-time-select',{attrs:{\"picker-options\":{\n start: '00:00', step: '00:30', end: '23:30', minTime: _vm.userSettings.FlexRefreshStart\n }},on:{\"change\":function($event){return _vm.updateSysSetting('FlexRefreshEnd')}},model:{value:(_vm.sysSettings.FlexRefreshEnd),callback:function ($$v) {_vm.$set(_vm.sysSettings, \"FlexRefreshEnd\", $$v)},expression:\"sysSettings.FlexRefreshEnd\"}})],1)]),_c('div',{staticClass:\"position-relative mb-4 d-flex align-items-center\"},[_c('div',{staticClass:\"f-20 color-999\"},[_vm._v(\"Interval Between Retries (Minutes)\")]),_c('div',{staticClass:\"flex-fill text-right\"},[_c('el-input-number',{attrs:{\"max\":59},on:{\"change\":function($event){return _vm.updateSysSetting('FlexTryInterval')}},model:{value:(_vm.sysSettings.FlexTryInterval),callback:function ($$v) {_vm.$set(_vm.sysSettings, \"FlexTryInterval\", $$v)},expression:\"sysSettings.FlexTryInterval\"}})],1)])])])])],1)],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\r\nimport { Component, Vue } from 'vue-property-decorator'\r\nimport rowEditor from '../../components/TextRowEditor.vue'\r\nimport rowSelector from '../../components/RowSelector.vue'\r\nimport { ApiBooleanResult } from '@/services/data'\r\nimport RssFeedForm from '@/views/Home/RssFeedForm.vue'\r\nimport { RssFeeds } from '@/services/symbolService'\r\nimport settingService from '@/services/settingService'\r\nimport { ElForm } from 'element-ui/types/form'\r\nimport utility from '@/common/utility'\r\nimport socket from '@/services/socket'\r\n\r\n@Component({\r\n components: {\r\n rowEditor,\r\n RssFeedForm,\r\n rowSelector\r\n }\r\n})\r\nexport default class UserSettings extends Vue {\r\n $refs: {\r\n gateWayForm: ElForm;\r\n notBotForm: ElForm;\r\n }\r\n\r\n showAddFeedDialog = false\r\n gateway = {\r\n Host: '',\r\n Port: ''\r\n }\r\n\r\n rssList: RssFeeds[] = []\r\n\r\n editingFeed: RssFeeds = {\r\n SymbolId: null,\r\n FeedIcon: '',\r\n FeedName: '',\r\n Link: ''\r\n }\r\n\r\n ibRotation: Record = {\r\n FreebieLimit: null,\r\n CurrencyLimit: null,\r\n WatchlistLimit: null,\r\n CaptureLimit: null,\r\n AlertLimit: null\r\n }\r\n\r\n get ibRotationAva () {\r\n return 100 - this.ibRotation.FreebieLimit - this.ibRotation.CurrencyLimit - this.ibRotation.WatchlistLimit - this.ibRotation.AlertLimit - this.ibRotation.CaptureLimit\r\n }\r\n\r\n futuRotation: Record = {\r\n FreebieLimit: null,\r\n CurrencyLimit: null,\r\n WatchlistLimit: null,\r\n CaptureLimit: null,\r\n AlertLimit: null\r\n }\r\n\r\n get futuRotationAva () {\r\n return 300 - this.futuRotation.FreebieLimit - this.futuRotation.CurrencyLimit - this.futuRotation.WatchlistLimit - this.futuRotation.AlertLimit - this.futuRotation.CaptureLimit\r\n }\r\n\r\n userSettings: Record = {\r\n StockDataSource: '',\r\n PortfolioDataSource: ''\r\n }\r\n\r\n notBot = {\r\n Token: '',\r\n NameOfBot: ''\r\n }\r\n\r\n sysSettings: Record = {\r\n DataPointsPerMinute: 'All',\r\n AlertDataSource: '',\r\n FreebieDataSource: '',\r\n FlexRefreshStart: '',\r\n FlexRefreshEnd: '',\r\n FlexTryInterval: 30\r\n }\r\n\r\n async loadUserSettings () {\r\n const keys = Object.keys(this.userSettings)\r\n const usRes = await settingService.readUserSettingsByNamesAsync(keys)\r\n if (usRes.Error) {\r\n await this.$alert(usRes.Error)\r\n }\r\n if (usRes.Result) {\r\n usRes.Result.forEach(p => {\r\n if (p.Value === 'true') this.userSettings[p.Name] = true\r\n else if (p.Value === 'false') this.userSettings[p.Name] = false\r\n else {\r\n this.userSettings[p.Name] = p.Value\r\n }\r\n })\r\n }\r\n }\r\n\r\n async updateUserSetting (field: string) {\r\n const value = this.userSettings[field].toString()\r\n const res = await settingService.addOrUpdateUserSettingAsync([{\r\n Name: field,\r\n Value: value,\r\n ValueType: 'Number'\r\n }])\r\n if (res.Result === true && field === 'StockDataSource') {\r\n localStorage.setItem('StockDataSource', value)\r\n if (value === 'Server') {\r\n socket.Local.stopAutoConnect()\r\n socket.Local.close()\r\n }\r\n }\r\n this.showMessage(res)\r\n }\r\n\r\n async deleteRss (item: RssFeeds) {\r\n utility.removeArrayItem(this.rssList, item)\r\n await this.saveSysSettings('Rss', this.rssList)\r\n }\r\n\r\n async saveSysSettings (name: string, value: any, valueType = 'json') {\r\n const res = await settingService.addOrUpdateSysSettingAsync([\r\n {\r\n Name: name,\r\n Value: valueType === 'json' ? JSON.stringify(value) : value.toString(),\r\n ValueType: 'Json'\r\n }\r\n ])\r\n this.showMessage(res)\r\n }\r\n\r\n submitGateway () {\r\n this.$refs.gateWayForm.validate(async (valid: boolean) => {\r\n await this.saveSysSettings('Gateway', this.gateway)\r\n })\r\n }\r\n\r\n submitNotBot () {\r\n this.$refs.notBotForm.validate(async (valid: boolean) => {\r\n if (valid) {\r\n await this.saveSysSettings('NotBot', this.notBot)\r\n }\r\n })\r\n }\r\n\r\n async saveNewFeedLink (model: RssFeeds) {\r\n this.rssList.push(model)\r\n await this.saveSysSettings('Rss', this.rssList)\r\n }\r\n\r\n async updateSysSetting (key: string) {\r\n await this.saveSysSettings(key, this.sysSettings[key], 'string')\r\n }\r\n\r\n async updateIbRotationSettings () {\r\n if (this.ibRotationAva < 0) {\r\n await this.$alert('Total pipe limit should <= 100')\r\n await this.loadRotation()\r\n return\r\n }\r\n await this.saveSysSettings('Rotation', this.ibRotation)\r\n }\r\n\r\n async updateFutuRotationSettings () {\r\n if (this.futuRotationAva < 0) {\r\n await this.$alert('Total pipe limit should <= 300')\r\n await this.loadRotation()\r\n return\r\n }\r\n await this.saveSysSettings('FutuRotation', this.futuRotation)\r\n }\r\n\r\n async mounted () {\r\n const res = await settingService.readSysSettingByNamesAsync(['NotBot', 'Rss', 'Gateway', 'DataPointsPerMinute', 'AlertDataSource', 'FreebieDataSource', 'FlexRefreshStart', 'FlexRefreshEnd', 'FlexTryInterval'])\r\n const notBotItem = res.Result.find(p => p.Name === 'NotBot')\r\n if (notBotItem) {\r\n const notBotObj = JSON.parse(notBotItem.Value)\r\n this.notBot.Token = notBotObj.Token\r\n this.notBot.NameOfBot = notBotObj.NameOfBot\r\n }\r\n const rss = res.Result.find(p => p.Name === 'Rss')\r\n if (rss) {\r\n this.rssList = JSON.parse(rss.Value) as RssFeeds[]\r\n }\r\n const gateway = res.Result.find(p => p.Name === 'Gateway')\r\n if (gateway) {\r\n const gatewayObj = JSON.parse(gateway.Value)\r\n this.gateway.Host = gatewayObj.Host\r\n this.gateway.Port = gatewayObj.Port\r\n }\r\n const dppm = res.Result.find(p => p.Name === 'DataPointsPerMinute')\r\n if (dppm) {\r\n this.sysSettings.DataPointsPerMinute = parseInt(dppm.Value)\r\n }\r\n const ads = res.Result.find(p => p.Name === 'AlertDataSource')\r\n if (ads) {\r\n this.sysSettings.AlertDataSource = ads.Value\r\n }\r\n const fds = res.Result.find(p => p.Name === 'FreebieDataSource')\r\n if (fds) {\r\n this.sysSettings.FreebieDataSource = fds.Value\r\n }\r\n const frs = res.Result.find(p => p.Name === 'FlexRefreshStart')\r\n if (frs) {\r\n this.sysSettings.FlexRefreshStart = frs.Value\r\n }\r\n const fre = res.Result.find(p => p.Name === 'FlexRefreshEnd')\r\n if (fre) {\r\n this.sysSettings.FlexRefreshEnd = fre.Value\r\n }\r\n const fti = res.Result.find(p => p.Name === 'FlexTryInterval')\r\n if (fti) {\r\n this.sysSettings.FlexTryInterval = fti.Value\r\n }\r\n await this.loadRotation()\r\n await this.loadUserSettings()\r\n }\r\n\r\n async loadRotation () {\r\n const res = await settingService.readSysSettingByNamesAsync(['Rotation', 'FutuRotation'])\r\n const ibRotation = res.Result.find(p => p.Name === 'Rotation')\r\n if (ibRotation) {\r\n const rotationObj = JSON.parse(ibRotation.Value)\r\n this.ibRotation.CurrencyLimit = rotationObj.CurrencyLimit\r\n this.ibRotation.FreebieLimit = rotationObj.FreebieLimit\r\n this.ibRotation.WatchlistLimit = rotationObj.WatchlistLimit\r\n this.ibRotation.CaptureLimit = rotationObj.CaptureLimit\r\n this.ibRotation.AlertLimit = rotationObj.AlertLimit\r\n }\r\n const futuRotation = res.Result.find(p => p.Name === 'FutuRotation')\r\n if (futuRotation) {\r\n const rotationObj = JSON.parse(futuRotation.Value)\r\n this.futuRotation.FreebieLimit = rotationObj.FreebieLimit\r\n this.futuRotation.WatchlistLimit = rotationObj.WatchlistLimit\r\n this.futuRotation.AlertLimit = rotationObj.AlertLimit\r\n this.futuRotation.CaptureLimit = rotationObj.CaptureLimit\r\n }\r\n }\r\n\r\n private showMessage (res: ApiBooleanResult) {\r\n if (res.Error) {\r\n this.$message({ message: this.$t('msg.' + (res.Error || 'unableToSave')) as string, type: 'error' })\r\n } else {\r\n this.$message({ message: this.$t('msg.dataSaved') as string, type: 'success' })\r\n }\r\n }\r\n}\r\n","import mod from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--14-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/ts-loader/index.js??ref--14-3!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./App.vue?vue&type=script&lang=ts&\"; export default mod; export * from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--14-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/ts-loader/index.js??ref--14-3!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./App.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./App.vue?vue&type=template&id=726545f2&\"\nimport script from \"./App.vue?vue&type=script&lang=ts&\"\nexport * from \"./App.vue?vue&type=script&lang=ts&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","module.exports = \"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAEAAAABACAYAAACqaXHeAAADSUlEQVR4Xu2bPWgUQRTH39ssSAo7QdAm2ChaWAlioRZaRMjdzq2LhYWKIGghWoiCiEFEUCwUCwVBxCJo1ps3J0gKBRUEEa1SaKeVgthZ5SDZkZELXCbJLbs7c87lZtvbefP+v3sfuzM7CJYuxtg0AOwFgI2Wpihr9icAfCaiujKAZa30GscYkzbsmrZJRGgcAGOsBQA1085aspfaAPADADZZcti02V82AOjh/1ZK+U4IMWna+yL2oig6jojHAGB/9zjrAKSUJ4QQj4s4a+veKIomEfFqXwGoQmNLUBm7eoE27pw+gQfgI8CngPE0K5P7i2N8DdCeUo3/O74IaoR9F/BdwHcB43XGd4EKBHwbdLENRlE0FgSBekt7xTmfqvAH5w51MgIYY98BYKzj/TQRHclVUvIG5wDEcbwty7Kv3XqklFNCiKMlNfYcZh1AGacZYx8AYLc29gkRqRUco5eTAOr1+vYgCNQy+g5N7SMiOmmSgJMAlMAeEB4S0SlTEJwF0AsCIt7nnJ8xAcFpAL0gSCnvCSHOVoXgPIAcCHeEEOerQBgIADk14TYRXSgLYWAA5EC4SUSXykBYBqCzWXB4hRZUxn4/x9wgostFJ1wGgDH2Rt8uKmr0P95/jYiW7PTk+bKmACDidc75lTzR3b+vmRRAxFuc84tFxKt7B6oIdhzmym9N6F0iOldU/EABGB8fXzc6OsqllIc0oQ+I6HQZ8QMDoFarrQ+CgCPiAdMvR86nwMTExIYwDJ8DwL5u8abWCJwGkCTJ5oWFhWkp5Z5u8YjY5JwnAFD54ytnAcRxvCXLsqcAsEsL+5dzc3PxzMxMu2ze92yDJoxWtZEkydb5+flnALBTC/vX7XZbif9TdY7F8U5GwCpLYu/DMGykafrblPi+dIGiu8MrLYoCwKcwDFmapuqTO6OX9QgoCkC1vJGRkdnFZXFEnEVE1mw2vxlV3jHmHADlV6PRUMtdB6WUH7Mse9Fqtb7YEO9kCtgSuppdJyOgnxA8ABc3R30E9JGATwGfAktPsxj/fqfog1Afo//fVD4FfAr4FFiyqOJrgOki5IugVmSG/tAUAAzdsbmhPzg53EdnV3raMl1oTdmzcni6a/l5II7P/wVuaOcwGaNrGwAAAABJRU5ErkJggg==\"","var global = require('../internals/global');\nvar DOMIterables = require('../internals/dom-iterables');\nvar forEach = require('../internals/array-for-each');\nvar createNonEnumerableProperty = require('../internals/create-non-enumerable-property');\n\nfor (var COLLECTION_NAME in DOMIterables) {\n var Collection = global[COLLECTION_NAME];\n var CollectionPrototype = Collection && Collection.prototype;\n // some Chrome versions have non-configurable methods on DOMTokenList\n if (CollectionPrototype && CollectionPrototype.forEach !== forEach) try {\n createNonEnumerableProperty(CollectionPrototype, 'forEach', forEach);\n } catch (error) {\n CollectionPrototype.forEach = forEach;\n }\n}\n","'use strict';\nvar $forEach = require('../internals/array-iteration').forEach;\nvar arrayMethodIsStrict = require('../internals/array-method-is-strict');\nvar arrayMethodUsesToLength = require('../internals/array-method-uses-to-length');\n\nvar STRICT_METHOD = arrayMethodIsStrict('forEach');\nvar USES_TO_LENGTH = arrayMethodUsesToLength('forEach');\n\n// `Array.prototype.forEach` method implementation\n// https://tc39.es/ecma262/#sec-array.prototype.foreach\nmodule.exports = (!STRICT_METHOD || !USES_TO_LENGTH) ? function forEach(callbackfn /* , thisArg */) {\n return $forEach(this, callbackfn, arguments.length > 1 ? arguments[1] : undefined);\n} : [].forEach;\n","module.exports = __webpack_public_path__ + \"img/rss.svg\";","'use strict';\nvar $ = require('../internals/export');\nvar forEach = require('../internals/array-for-each');\n\n// `Array.prototype.forEach` method\n// https://tc39.es/ecma262/#sec-array.prototype.foreach\n$({ target: 'Array', proto: true, forced: [].forEach != forEach }, {\n forEach: forEach\n});\n","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('el-form',{ref:\"textForm\",attrs:{\"model\":_vm.formValue},nativeOn:{\"submit\":function($event){$event.preventDefault();return _vm.submit()}}},[_c('el-form-item',{attrs:{\"rules\":_vm.rules,\"prop\":\"inputValue\"}},[_c('div',{staticClass:\"d-flex pt-3 input-group\"},[_c('el-select',{staticClass:\"form-input\",attrs:{\"autocomplete\":\"off\",\"placeholder\":\"Select\"},on:{\"change\":_vm.handleChange},model:{value:(_vm.formValue.inputValue),callback:function ($$v) {_vm.$set(_vm.formValue, \"inputValue\", $$v)},expression:\"formValue.inputValue\"}},_vm._l((_vm.items),function(item){return _c('el-option',{key:item,attrs:{\"label\":item,\"value\":item}})}),1),_c('el-button',{attrs:{\"type\":\"primary\"},on:{\"click\":function($event){return _vm.submit()}}},[_vm._v(_vm._s(_vm.$t('button.save')))])],1)])],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\n\n\n\n\n\n\n\n\n\r\nimport { Component, Vue, Prop, Model, Watch } from 'vue-property-decorator'\r\nimport { MessageText } from '@/services/data'\r\nimport { ElForm } from 'element-ui/types/form'\r\n\r\n@Component\r\nexport default class NumberRowSelector extends Vue {\r\n $refs: {\r\n textForm: ElForm;\r\n }\r\n\r\n mounted () {\r\n this.formValue.inputValue = this.value\r\n }\r\n\r\n formValue: { inputValue: any } = { inputValue: null }\r\n message: MessageText = null\r\n @Model('input') value: any\r\n // do not put default value to prop value\r\n @Prop() rules: any\r\n @Prop() items: Array | number\r\n\r\n // @Emit('input')\r\n handleChange () {\r\n this.$emit('input', this.formValue.inputValue)\r\n }\r\n\r\n @Watch('value')\r\n onValueChanged (v: any) {\r\n this.formValue.inputValue = v\r\n }\r\n\r\n @Watch('formValue.inputValue')\r\n onInputValueChanged (v: any) {\r\n this.$emit('input', v)\r\n }\r\n\r\n // if use @Emit,do not use this.$emit again, @Emit will return the function value to parent\r\n submit () {\r\n this.$refs.textForm.validate((valid: boolean) => {\r\n if (valid) {\r\n this.$emit('change')\r\n }\r\n })\r\n }\r\n}\r\n","import mod from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--14-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/ts-loader/index.js??ref--14-3!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./RowSelector.vue?vue&type=script&lang=ts&\"; export default mod; export * from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--14-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/ts-loader/index.js??ref--14-3!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./RowSelector.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./RowSelector.vue?vue&type=template&id=5b0be1ad&\"\nimport script from \"./RowSelector.vue?vue&type=script&lang=ts&\"\nexport * from \"./RowSelector.vue?vue&type=script&lang=ts&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","import store from '../store'\r\nimport utility from '@/common/utility'\r\n\r\nexport interface SocketMsg {\r\n MsgId: number;\r\n Action: string;\r\n Content?: any;\r\n}\r\n\r\nexport class ClientSocket {\r\n Socket: WebSocket\r\n DataSource = 'Server'\r\n TryTimes = 0\r\n Messages: Array = []\r\n OnMessage: Array<(msg: SocketMsg) => void> = []\r\n OnOpen: () => void = null\r\n OnError: (err: Event) => void = null\r\n isConnecting = false\r\n timeoutInterval = 0\r\n autoConnect = true\r\n context: object = null\r\n\r\n constructor (dataSource: string) {\r\n this.DataSource = dataSource\r\n }\r\n\r\n private getWsUrl () {\r\n if (store.state.user == null) {\r\n return null\r\n }\r\n const jwt = store.state.user.jwt\r\n const ws = location.protocol === 'https:' ? 'wss' : 'ws'\r\n let url: string = null\r\n if (this.DataSource === 'Local') {\r\n url = `ws://localhost:12479/ws?jwt=${jwt}&uid=${store.state.user.uid}`\r\n } else {\r\n url = `${ws}://${window.location.host}/api/ws?jwt=${jwt}&uid=${store.state.user.uid}`\r\n if (window.location.host.startsWith('localhost') || window.location.host.startsWith('192.168')) {\r\n url = `${ws}://localhost:5000/api/ws?jwt=${jwt}&uid=${store.state.user.uid}`\r\n }\r\n }\r\n return url\r\n }\r\n\r\n public init () {\r\n this.autoConnect = true\r\n if (typeof (WebSocket) !== 'undefined') {\r\n if (this.Socket && this.Socket.readyState < 2) {\r\n return\r\n }\r\n const url = this.getWsUrl()\r\n if (!url) {\r\n return\r\n }\r\n try {\r\n // console.log('Connecting to: ' + url)\r\n this.Socket = new WebSocket(url)\r\n // 监听socket连接\r\n this.Socket.onopen = () => {\r\n // the connection maybe connecting,but not connected here.\r\n this.sendMessages()\r\n if (this.OnOpen) {\r\n this.OnOpen()\r\n }\r\n }\r\n // 监听socket错误信息\r\n this.Socket.onerror = err => {\r\n // the connection maybe connecting,but not connected here.\r\n if (this.OnError) {\r\n this.OnError(err)\r\n }\r\n this.reconnect()\r\n }\r\n // 监听socket消息\r\n this.Socket.onmessage = msg => {\r\n const message = JSON.parse(msg.data) as SocketMsg\r\n if (message.Action === 'resAcc') this.sendDirectMsg('sendContext', this.context)\r\n if (this.OnMessage.length > 0) {\r\n for (let i = 0; i < this.OnMessage.length; i++) {\r\n this.OnMessage[i](message)\r\n }\r\n }\r\n }\r\n // on Close\r\n this.Socket.onclose = () => {\r\n this.reconnect()\r\n }\r\n } catch (e) {\r\n // console.log(e)\r\n }\r\n }\r\n }\r\n\r\n public sendContext (context: object) {\r\n this.context = context\r\n // console.log('sending', this.DataSource, context)\r\n this.sendDirectMsg('sendContext', context)\r\n }\r\n\r\n private reconnect () {\r\n if (!this.autoConnect) return\r\n if (this.isConnecting) {\r\n return\r\n }\r\n if (this.timeoutInterval) {\r\n clearInterval(this.timeoutInterval)\r\n }\r\n this.isConnecting = true\r\n this.timeoutInterval = setTimeout(() => {\r\n this.init()\r\n this.isConnecting = false\r\n }, 4000)\r\n }\r\n\r\n stopAutoConnect () {\r\n this.autoConnect = false\r\n }\r\n\r\n public sendDirectMsg (action: string, content: any) {\r\n if (this.Socket != null && this.Socket.readyState === 1) {\r\n try {\r\n // console.log('sendDirectMsg', this.DataSource, content)\r\n this.Socket.send(JSON.stringify({ MsgId: 0, Action: action, Content: content }))\r\n } catch (e) {\r\n }\r\n }\r\n }\r\n\r\n private sendMessages () {\r\n if (this.TryTimes > 3) {\r\n this.TryTimes = 0\r\n return\r\n }\r\n if (this.Socket != null && this.Socket.readyState === 1) {\r\n this.sendDirectMsg('sendContext', this.context)\r\n while (this.Messages.length > 0) {\r\n const msg = this.Messages.shift()\r\n console.log('sent delay message', this.DataSource, msg)\r\n try {\r\n this.Socket.send(JSON.stringify(msg))\r\n } catch (e) {\r\n console.log(e)\r\n }\r\n }\r\n this.TryTimes = 0\r\n } else {\r\n this.TryTimes++\r\n setTimeout(() => {\r\n this.sendMessages()\r\n }, 200)\r\n }\r\n }\r\n\r\n public addMessageCallBack (callback: (msg: SocketMsg) => void) {\r\n this.OnMessage.push(callback)\r\n }\r\n\r\n public removeMessageCallBack (callback: (msg: SocketMsg) => void) {\r\n utility.removeArrayItem(this.OnMessage, callback)\r\n }\r\n\r\n public sendMsg (msg: SocketMsg) {\r\n if (this.Socket == null || this.Socket.readyState !== 1) {\r\n if (msg.Action !== 'sendContext') { this.Messages.push(msg) }\r\n return\r\n }\r\n console.log('send msg', this.DataSource, msg)\r\n try {\r\n this.Socket.send(JSON.stringify(msg))\r\n } catch (e) {\r\n }\r\n }\r\n\r\n changeSource (source: string) {\r\n if (this.DataSource !== source) {\r\n this.DataSource = source\r\n this.close()\r\n }\r\n }\r\n\r\n close () {\r\n this.autoConnect = false\r\n if (this.Socket) {\r\n this.Socket.close()\r\n this.Socket = null\r\n }\r\n }\r\n}\r\n\r\nconst server = new ClientSocket('Server')\r\nconst local = new ClientSocket('Local')\r\n\r\nexport default {\r\n Server: server,\r\n Local: local,\r\n GetSocketServer (): ClientSocket {\r\n const dataSource = localStorage.getItem('StockDataSource')\r\n if (dataSource === 'Local') return local\r\n return server\r\n },\r\n InitAll (callback: (msg: SocketMsg) => void) {\r\n server.init()\r\n server.addMessageCallBack(callback)\r\n local.init()\r\n local.addMessageCallBack(callback)\r\n },\r\n SendAll (context: Record) {\r\n if (localStorage.getItem('StockDataSource') === 'Local') {\r\n server.sendContext(null)\r\n local.sendContext(context)\r\n } else {\r\n server.sendContext(context)\r\n local.sendContext(null)\r\n }\r\n },\r\n RemoveAll (callback: (msg: SocketMsg) => void) {\r\n server.removeMessageCallBack(callback)\r\n local.removeMessageCallBack(callback)\r\n }\r\n}\r\n","'use strict';\nvar $ = require('../internals/export');\nvar $find = require('../internals/array-iteration').find;\nvar addToUnscopables = require('../internals/add-to-unscopables');\nvar arrayMethodUsesToLength = require('../internals/array-method-uses-to-length');\n\nvar FIND = 'find';\nvar SKIPS_HOLES = true;\n\nvar USES_TO_LENGTH = arrayMethodUsesToLength(FIND);\n\n// Shouldn't skip holes\nif (FIND in []) Array(1)[FIND](function () { SKIPS_HOLES = false; });\n\n// `Array.prototype.find` method\n// https://tc39.es/ecma262/#sec-array.prototype.find\n$({ target: 'Array', proto: true, forced: SKIPS_HOLES || !USES_TO_LENGTH }, {\n find: function find(callbackfn /* , that = undefined */) {\n return $find(this, callbackfn, arguments.length > 1 ? arguments[1] : undefined);\n }\n});\n\n// https://tc39.es/ecma262/#sec-array.prototype-@@unscopables\naddToUnscopables(FIND);\n","import serviceBase from '@/services/serviceBase'\r\nimport { ApiBooleanResult, ApiResult } from '@/services/data'\r\n\r\nexport interface Pop3OrSmtpModel {\r\n Server: string;\r\n Port: number;\r\n Ssl: boolean;\r\n}\r\n\r\nexport interface EmailModel {\r\n Reg: string;\r\n RegPwd: string;\r\n Statement: string;\r\n StatementPwd: string;\r\n TradeConfirm: string;\r\n TradeConfirmPwd: string;\r\n}\r\n\r\nexport interface SettingValueModel {\r\n Name: string;\r\n Value: string;\r\n ValueType: string;\r\n}\r\n\r\nexport default {\r\n async readSysSettingByNamesAsync (names: Array): Promise> {\r\n return await serviceBase.tryPostResult('/Setting/readSysSettingByNames', names)\r\n },\r\n async addOrUpdateSysSettingAsync (settings: SettingValueModel[]): Promise {\r\n return await serviceBase.tryPostBooleanResult('/Setting/addOrUpdateSysSetting', settings)\r\n },\r\n async readUserSettingsByNamesAsync (names: Array): Promise> {\r\n return await serviceBase.tryPostResult('/Setting/readUserSettingsByNames', names)\r\n },\r\n async addOrUpdateUserSettingAsync (settings: SettingValueModel[]): Promise {\r\n return await serviceBase.tryPostBooleanResult('/Setting/addOrUpdateUserSetting', settings)\r\n },\r\n async testPop3 (data: Pop3OrSmtpModel): Promise {\r\n return await serviceBase.tryPostBooleanResult('/Setting/testPop', data)\r\n },\r\n async testSmtp (data: Pop3OrSmtpModel): Promise {\r\n return await serviceBase.tryPostBooleanResult('/Setting/testSmtp', data)\r\n }\r\n}\r\n","'use strict';\nvar DESCRIPTORS = require('../internals/descriptors');\nvar global = require('../internals/global');\nvar isForced = require('../internals/is-forced');\nvar redefine = require('../internals/redefine');\nvar has = require('../internals/has');\nvar classof = require('../internals/classof-raw');\nvar inheritIfRequired = require('../internals/inherit-if-required');\nvar toPrimitive = require('../internals/to-primitive');\nvar fails = require('../internals/fails');\nvar create = require('../internals/object-create');\nvar getOwnPropertyNames = require('../internals/object-get-own-property-names').f;\nvar getOwnPropertyDescriptor = require('../internals/object-get-own-property-descriptor').f;\nvar defineProperty = require('../internals/object-define-property').f;\nvar trim = require('../internals/string-trim').trim;\n\nvar NUMBER = 'Number';\nvar NativeNumber = global[NUMBER];\nvar NumberPrototype = NativeNumber.prototype;\n\n// Opera ~12 has broken Object#toString\nvar BROKEN_CLASSOF = classof(create(NumberPrototype)) == NUMBER;\n\n// `ToNumber` abstract operation\n// https://tc39.es/ecma262/#sec-tonumber\nvar toNumber = function (argument) {\n var it = toPrimitive(argument, false);\n var first, third, radix, maxCode, digits, length, index, code;\n if (typeof it == 'string' && it.length > 2) {\n it = trim(it);\n first = it.charCodeAt(0);\n if (first === 43 || first === 45) {\n third = it.charCodeAt(2);\n if (third === 88 || third === 120) return NaN; // Number('+0x1') should be NaN, old V8 fix\n } else if (first === 48) {\n switch (it.charCodeAt(1)) {\n case 66: case 98: radix = 2; maxCode = 49; break; // fast equal of /^0b[01]+$/i\n case 79: case 111: radix = 8; maxCode = 55; break; // fast equal of /^0o[0-7]+$/i\n default: return +it;\n }\n digits = it.slice(2);\n length = digits.length;\n for (index = 0; index < length; index++) {\n code = digits.charCodeAt(index);\n // parseInt parses a string to a first unavailable symbol\n // but ToNumber should return NaN if a string contains unavailable symbols\n if (code < 48 || code > maxCode) return NaN;\n } return parseInt(digits, radix);\n }\n } return +it;\n};\n\n// `Number` constructor\n// https://tc39.es/ecma262/#sec-number-constructor\nif (isForced(NUMBER, !NativeNumber(' 0o1') || !NativeNumber('0b1') || NativeNumber('+0x1'))) {\n var NumberWrapper = function Number(value) {\n var it = arguments.length < 1 ? 0 : value;\n var dummy = this;\n return dummy instanceof NumberWrapper\n // check on 1..constructor(foo) case\n && (BROKEN_CLASSOF ? fails(function () { NumberPrototype.valueOf.call(dummy); }) : classof(dummy) != NUMBER)\n ? inheritIfRequired(new NativeNumber(toNumber(it)), dummy, NumberWrapper) : toNumber(it);\n };\n for (var keys = DESCRIPTORS ? getOwnPropertyNames(NativeNumber) : (\n // ES3:\n 'MAX_VALUE,MIN_VALUE,NaN,NEGATIVE_INFINITY,POSITIVE_INFINITY,' +\n // ES2015 (in case, if modules with ES2015 Number statics required before):\n 'EPSILON,isFinite,isInteger,isNaN,isSafeInteger,MAX_SAFE_INTEGER,' +\n 'MIN_SAFE_INTEGER,parseFloat,parseInt,isInteger,' +\n // ESNext\n 'fromString,range'\n ).split(','), j = 0, key; keys.length > j; j++) {\n if (has(NativeNumber, key = keys[j]) && !has(NumberWrapper, key)) {\n defineProperty(NumberWrapper, key, getOwnPropertyDescriptor(NativeNumber, key));\n }\n }\n NumberWrapper.prototype = NumberPrototype;\n NumberPrototype.constructor = NumberWrapper;\n redefine(global, NUMBER, NumberWrapper);\n}\n","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('el-form',{ref:\"textForm\",attrs:{\"model\":_vm.model},nativeOn:{\"submit\":function($event){$event.preventDefault();return _vm.submit()}}},[_c('el-form-item',{attrs:{\"prop\":\"value\",\"rules\":_vm.rules}},[_c('div',{staticClass:\"d-flex pt-3 input-group\"},[_c('el-input',{staticClass:\"form-input\",attrs:{\"type\":\"text\",\"autocomplete\":\"off\"},model:{value:(_vm.model.value),callback:function ($$v) {_vm.$set(_vm.model, \"value\", $$v)},expression:\"model.value\"}}),_c('el-button',{attrs:{\"type\":\"primary\"},on:{\"click\":function($event){return _vm.submit()}}},[_vm._v(_vm._s(_vm.buttonText || _vm.$t('button.save')))])],1)])],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\r\n\r\n","import mod from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./TextRowEditor.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./TextRowEditor.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./TextRowEditor.vue?vue&type=template&id=7aade3f1&\"\nimport script from \"./TextRowEditor.vue?vue&type=script&lang=js&\"\nexport * from \"./TextRowEditor.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('el-form',{ref:\"modelForm\",attrs:{\"model\":_vm.model,\"status-icon\":\"\",\"rules\":_vm.rules,\"label-width\":\"100px\"}},[_c('el-form-item',{attrs:{\"label\":\"Name\",\"prop\":\"FeedName\"}},[_c('el-input',{attrs:{\"type\":\"text\",\"autocomplete\":\"off\"},model:{value:(_vm.model.FeedName),callback:function ($$v) {_vm.$set(_vm.model, \"FeedName\", $$v)},expression:\"model.FeedName\"}})],1),_c('el-form-item',{attrs:{\"label\":\"Url\",\"prop\":\"Link\"}},[_c('el-input',{model:{value:(_vm.model.Link),callback:function ($$v) {_vm.$set(_vm.model, \"Link\", $$v)},expression:\"model.Link\"}})],1),_c('el-form-item',[_c('el-button',{attrs:{\"type\":\"primary\"},on:{\"click\":function($event){return _vm.submit()}}},[_vm._v(_vm._s(_vm.$t('save')))])],1)],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\n\n\n\n\n\n\n\n\n\n\r\nimport { Component, Vue, Prop, Watch } from 'vue-property-decorator'\r\nimport { ElForm } from 'element-ui/types/form'\r\nimport validation from '@/common/element-val'\r\nimport { RssFeeds } from '@/services/symbolService'\r\n\r\n@Component\r\nexport default class RssFeedForm extends Vue {\r\n $refs: {\r\n modelForm: ElForm;\r\n }\r\n\r\n @Prop() FeedName: string\r\n @Prop() Link: string\r\n\r\n model: RssFeeds = {\r\n SymbolId: null,\r\n FeedName: '',\r\n Link: ''\r\n }\r\n\r\n rules = {\r\n FeedName: validation.requiredRule(),\r\n Link: validation.requiredRule()\r\n }\r\n\r\n mounted () {\r\n this.model.FeedName = this.FeedName\r\n this.model.Link = this.Link\r\n }\r\n\r\n @Watch('FeedName')\r\n onTitleChanged (v: string) {\r\n this.model.FeedName = v\r\n }\r\n\r\n @Watch('Link')\r\n onUrlChanged (v: string) {\r\n this.model.Link = v\r\n }\r\n\r\n // if use @Emit,do not use this.$emit again, @Emit will return the function value to parent\r\n submit () {\r\n this.$refs.modelForm.validate((valid: boolean) => {\r\n if (valid) {\r\n this.$emit('submit', this.model)\r\n }\r\n })\r\n }\r\n}\r\n","import mod from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--14-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/ts-loader/index.js??ref--14-3!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./RssFeedForm.vue?vue&type=script&lang=ts&\"; export default mod; export * from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--14-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/ts-loader/index.js??ref--14-3!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./RssFeedForm.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./RssFeedForm.vue?vue&type=template&id=671a7a9a&\"\nimport script from \"./RssFeedForm.vue?vue&type=script&lang=ts&\"\nexport * from \"./RssFeedForm.vue?vue&type=script&lang=ts&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var $ = require('../internals/export');\nvar toObject = require('../internals/to-object');\nvar nativeKeys = require('../internals/object-keys');\nvar fails = require('../internals/fails');\n\nvar FAILS_ON_PRIMITIVES = fails(function () { nativeKeys(1); });\n\n// `Object.keys` method\n// https://tc39.es/ecma262/#sec-object.keys\n$({ target: 'Object', stat: true, forced: FAILS_ON_PRIMITIVES }, {\n keys: function keys(it) {\n return nativeKeys(toObject(it));\n }\n});\n"],"sourceRoot":""}