{"version":3,"sources":["webpack:///./node_modules/core-js/modules/web.dom-collections.for-each.js","webpack:///./node_modules/core-js/internals/array-for-each.js","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/views/Settings/Trading.vue?cd1a","webpack:///./src/views/Settings/Trading.vue","webpack:///./src/views/Settings/Trading.vue?03c2","webpack:///./src/views/Settings/Trading.vue?6068","webpack:///./src/services/settingService.ts"],"names":["global","DOMIterables","forEach","createNonEnumerableProperty","COLLECTION_NAME","Collection","CollectionPrototype","prototype","error","$forEach","arrayMethodIsStrict","arrayMethodUsesToLength","STRICT_METHOD","USES_TO_LENGTH","module","exports","callbackfn","this","arguments","length","undefined","$","target","proto","forced","render","_vm","_h","$createElement","_c","_self","ref","attrs","formValue","nativeOn","$event","preventDefault","submit","rules","staticClass","on","handleChange","model","value","callback","$$v","$set","expression","_l","item","key","_v","_s","$t","staticRenderFns","inputValue","message","$emit","v","$refs","textForm","validate","valid","component","staticStyle","editing","required","trigger","updateUserSetting","userSettings","_e","StrikeProxPercent","settingService","readUserSettingsByNamesAsync","usRes","Error","$alert","Result","p","Name","Value","field","toString","addOrUpdateUserSettingAsync","ValueType","res","showMessage","$message","type","components","RowSelector","readSysSettingByNamesAsync","names","tryPostResult","addOrUpdateSysSettingAsync","settings","tryPostBooleanResult","testPop3","data","testSmtp"],"mappings":"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","file":"js/chunk-6870c2bc.js","sourcesContent":["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","'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","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(\"Trading 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('i',{staticClass:\"el-icon-setting f-20\"}),_c('span',{staticClass:\"font-weight-bold ml-2\"},[_vm._v(\"Parameters\")])]),_c('div',{staticClass:\"pt-4 pl-2 pr-2\"},[_c('div',{staticClass:\"position-relative mb-4\"},[_c('div',{staticClass:\"f-20 color-999\"},[_vm._v(\"Definition of Near-The-Money\")]),_c('i',{staticClass:\"abs-right el-icon-setting font-weight-bold action-color f-20 pointer\",staticStyle:{\"top\":\"6px\"},on:{\"click\":function($event){_vm.editing = 'tradingParams'}}}),_c('transition',{attrs:{\"name\":\"draw\"}},[( _vm.editing === 'tradingParams' )?_c('div',[_c('RowSelector',{attrs:{\"items\":100,\"rules\":[{required: true, message: _vm.$t('val.required'), trigger: 'blur'}]},on:{\"change\":function($event){return _vm.updateUserSetting('StrikeProxPercent')}},model:{value:(_vm.userSettings.StrikeProxPercent),callback:function ($$v) {_vm.$set(_vm.userSettings, \"StrikeProxPercent\", $$v)},expression:\"userSettings.StrikeProxPercent\"}})],1):_vm._e()])],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\r\nimport { Component, Vue } from 'vue-property-decorator'\r\nimport RowSelector from '../../components/RowSelector.vue'\r\nimport settingService from '@/services/settingService'\r\nimport { ApiBooleanResult } from '@/services/data'\r\n\r\n@Component({\r\n components: {\r\n RowSelector\r\n }\r\n})\r\nexport default class UserSettings extends Vue {\r\n editing: string = null\r\n\r\n userSettings: Record = {\r\n StrikeProxPercent: ''\r\n }\r\n\r\n async mounted () {\r\n const usRes = await settingService.readUserSettingsByNamesAsync(['StrikeProxPercent', 'StockDataSource'])\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 this.userSettings[p.Name] = p.Value\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 this.showMessage(res)\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!./Trading.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!./Trading.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./Trading.vue?vue&type=template&id=192d7c54&\"\nimport script from \"./Trading.vue?vue&type=script&lang=ts&\"\nexport * from \"./Trading.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 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"],"sourceRoot":""}