@maketribe/ms-app 3.0.41 → 3.0.43

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (43) hide show
  1. package/dist/cjs/core/MSAppClient.d.ts +1 -0
  2. package/dist/cjs/core/MSAppClient.js +14 -0
  3. package/dist/cjs/core/MSAppClient.js.map +1 -1
  4. package/dist/cjs/dataview/config/ConfigTable.js +8 -0
  5. package/dist/cjs/dataview/config/ConfigTable.js.map +1 -1
  6. package/dist/cjs/dataview/deny-ip-access-list/DenyIPAccessListTable.js +8 -0
  7. package/dist/cjs/dataview/deny-ip-access-list/DenyIPAccessListTable.js.map +1 -1
  8. package/dist/cjs/dataview/ip-white-list/IPWhitelistTable.js +8 -0
  9. package/dist/cjs/dataview/ip-white-list/IPWhitelistTable.js.map +1 -1
  10. package/dist/cjs/dataview/member/MemberTable.js +41 -30
  11. package/dist/cjs/dataview/member/MemberTable.js.map +1 -1
  12. package/dist/cjs/dataview/menu/MenuTable.js +8 -0
  13. package/dist/cjs/dataview/menu/MenuTable.js.map +1 -1
  14. package/dist/cjs/dataview/role/RoleTable.js +7 -0
  15. package/dist/cjs/dataview/role/RoleTable.js.map +1 -1
  16. package/dist/cjs/layouts/components/header/tools.js +152 -2
  17. package/dist/cjs/layouts/components/header/tools.js.map +1 -1
  18. package/dist/cjs/page/index/dv/ms-member/index.vue2.js +1 -1
  19. package/dist/cjs/page/index/dv/ms-member/index.vue2.js.map +1 -1
  20. package/dist/esm/core/MSAppClient.d.ts +1 -0
  21. package/dist/esm/core/MSAppClient.js +14 -0
  22. package/dist/esm/core/MSAppClient.js.map +1 -1
  23. package/dist/esm/dataview/config/ConfigTable.js +8 -0
  24. package/dist/esm/dataview/config/ConfigTable.js.map +1 -1
  25. package/dist/esm/dataview/deny-ip-access-list/DenyIPAccessListTable.js +8 -0
  26. package/dist/esm/dataview/deny-ip-access-list/DenyIPAccessListTable.js.map +1 -1
  27. package/dist/esm/dataview/ip-white-list/IPWhitelistTable.js +8 -0
  28. package/dist/esm/dataview/ip-white-list/IPWhitelistTable.js.map +1 -1
  29. package/dist/esm/dataview/member/MemberTable.js +41 -30
  30. package/dist/esm/dataview/member/MemberTable.js.map +1 -1
  31. package/dist/esm/dataview/menu/MenuTable.js +8 -0
  32. package/dist/esm/dataview/menu/MenuTable.js.map +1 -1
  33. package/dist/esm/dataview/role/RoleTable.js +7 -0
  34. package/dist/esm/dataview/role/RoleTable.js.map +1 -1
  35. package/dist/esm/layouts/components/header/tools.js +154 -4
  36. package/dist/esm/layouts/components/header/tools.js.map +1 -1
  37. package/dist/esm/page/index/dv/ms-member/index.vue2.js +1 -1
  38. package/dist/esm/page/index/dv/ms-member/index.vue2.js.map +1 -1
  39. package/dist/style/components/data-filter.css +1 -1
  40. package/dist/style/components/index.css +1 -1
  41. package/dist/style/index.css +1 -1
  42. package/dist/style/src/components/data-filter.scss +10 -5
  43. package/package.json +3 -3
@@ -2,7 +2,7 @@
2
2
 
3
3
  var vue = require('vue');
4
4
  var elementPlus = require('element-plus');
5
- require('@maketribe/dm');
5
+ var dm = require('@maketribe/dm');
6
6
  require('@maketribe/utils');
7
7
  require('../../../core/DataModelDefines.js');
8
8
  var MSAppClient = require('../../../core/MSAppClient.js');
@@ -73,6 +73,62 @@ const MKHeaderTools = /* @__PURE__ */ vue.defineComponent({
73
73
  const userSession = msAppClient.userSession;
74
74
  const userInfo = vue.computed(() => userSession.userInfo);
75
75
  const avatar = vue.computed(() => vue.unref(userInfo).avatar);
76
+ const showDialog = vue.ref(false);
77
+ const form = vue.reactive({
78
+ password: "",
79
+ newPassword: "",
80
+ repeatPassword: ""
81
+ });
82
+ const formRef = vue.ref();
83
+ vue.watch(showDialog, async () => {
84
+ if (vue.unref(showDialog)) {
85
+ form.password = "";
86
+ form.newPassword = "";
87
+ form.repeatPassword = "";
88
+ }
89
+ });
90
+ const reg = /^([a-zA-Z]+[0-9]+[,._!@#$%^&*]+)|([a-zA-Z]+[,._!@#$%^&*]+[0-9]+)|([0-9]+[,._!@#$%^&*]+[a-zA-Z]+)|([0-9]+[a-zA-Z]+[,._!@#$%^&*]+)|([,._!@#$%^&*]+[a-zA-Z]+[0-9]+)|([,._!@#$%^&*]+[0-9]+[a-zA-Z]+)$/;
91
+ const validateCode1 = (rule, value, callback) => {
92
+ if (value == "") {
93
+ callback(new Error("\u8BF7\u8F93\u5165\u5BC6\u7801"));
94
+ }
95
+ if (value.length < 8) {
96
+ callback(new Error("\u5BC6\u7801\u7801\u957F\u5EA6\u4E0D\u80FD\u5C0F\u4E8E8\u4F4D"));
97
+ }
98
+ if (value != form.newPassword) {
99
+ callback(new Error("\u4E24\u6B21\u8F93\u5165\u4E0D\u4E00\u81F4"));
100
+ }
101
+ if (!reg.test(value)) {
102
+ callback(new Error("\u5BC6\u7801\u5FC5\u987B\u5305\u542B\u6570\u5B57\uFF0C\u5B57\u6BCD\u548C\u7279\u6B8A\u7B26\u53F7"));
103
+ } else {
104
+ callback();
105
+ }
106
+ };
107
+ const validateCode = (rule, value, callback) => {
108
+ if (value == "") {
109
+ callback(new Error("\u8BF7\u8F93\u5165\u5BC6\u7801\u7801"));
110
+ }
111
+ if (value == form.password) {
112
+ callback(new Error("\u65B0\u5BC6\u7801\u4E0D\u80FD\u4E0E\u65E7\u5BC6\u7801\u76F8\u540C"));
113
+ }
114
+ if (!reg.test(value)) {
115
+ callback(new Error("\u5BC6\u7801\u5FC5\u987B\u5305\u542B\u6570\u5B57\uFF0C\u5B57\u6BCD\u548C\u7279\u6B8A\u7B26\u53F7"));
116
+ } else {
117
+ callback();
118
+ }
119
+ };
120
+ const submitChangePassword = async () => {
121
+ const isPass = await formRef.value.validate();
122
+ if (!isPass) {
123
+ return;
124
+ }
125
+ let result = await msAppClient.changePassword(form.password, form.newPassword);
126
+ if (result.data.code != 200) {
127
+ dm.Messager.instance.error(result.data.msg || "\u4FEE\u6539\u5BC6\u7801\u5931\u8D25");
128
+ return;
129
+ }
130
+ msAppClient.logout();
131
+ };
76
132
  return () => {
77
133
  return vue.createVNode("div", {
78
134
  "class": "mk-header-tools"
@@ -102,9 +158,103 @@ const MKHeaderTools = /* @__PURE__ */ vue.defineComponent({
102
158
  default: () => [vue.createVNode(index.MKSvgIcon, {
103
159
  "iconClass": "SwitchButton"
104
160
  }, null), vue.createTextVNode("\u9000\u51FA\u767B\u5F55")]
161
+ }), vue.createVNode(elementPlus.ElDropdownItem, {
162
+ "onClick": () => {
163
+ showDialog.value = true;
164
+ }
165
+ }, {
166
+ default: () => [vue.createVNode(index.MKSvgIcon, {
167
+ "iconClass": "SwitchButton"
168
+ }, null), vue.createTextVNode("\u4FEE\u6539\u5BC6\u7801")]
105
169
  })]
106
170
  })
107
- })])]);
171
+ })]), vue.createVNode(elementPlus.ElDialog, {
172
+ "model-value": showDialog.value,
173
+ "onUpdate:modelValue": (v) => {
174
+ showDialog.value = v;
175
+ },
176
+ "title": "\u4FEE\u6539\u5BC6\u7801",
177
+ "width": "30%"
178
+ }, {
179
+ default: () => [vue.createVNode(elementPlus.ElForm, {
180
+ "ref": formRef,
181
+ "model": form,
182
+ "label-width": "80px"
183
+ }, {
184
+ default: () => [vue.createVNode(elementPlus.ElFormItem, {
185
+ "label": "\u65E7\u5BC6\u7801",
186
+ "required": true,
187
+ "prop": "password",
188
+ "rules": [{
189
+ required: true,
190
+ message: "\u8BF7\u8F93\u5165\u65E7\u5BC6\u7801",
191
+ trigger: "change"
192
+ }]
193
+ }, {
194
+ default: () => [vue.createVNode(elementPlus.ElInput, {
195
+ "model-value": form.password,
196
+ "onUpdate:modelValue": (v) => {
197
+ form.password = v;
198
+ },
199
+ "type": "password"
200
+ }, null)]
201
+ }), vue.createVNode(elementPlus.ElFormItem, {
202
+ "label": "\u65B0\u5BC6\u7801",
203
+ "required": true,
204
+ "prop": "newPassword",
205
+ "rules": [{
206
+ required: true,
207
+ message: "\u8BF7\u8F93\u5165\u65B0\u5BC6\u7801",
208
+ trigger: "change"
209
+ }, {
210
+ validator: validateCode,
211
+ trigger: "change"
212
+ }]
213
+ }, {
214
+ default: () => [vue.createVNode(elementPlus.ElInput, {
215
+ "model-value": form.newPassword,
216
+ "onUpdate:modelValue": (v) => {
217
+ form.newPassword = v;
218
+ },
219
+ "type": "password"
220
+ }, null)]
221
+ }), vue.createVNode(elementPlus.ElFormItem, {
222
+ "label": "\u91CD\u590D\u5BC6\u7801",
223
+ "required": true,
224
+ "prop": "repeatPassword",
225
+ "rules": [{
226
+ required: true,
227
+ message: "\u8BF7\u518D\u6B21\u8F93\u5165\u5BC6\u7801",
228
+ trigger: "change"
229
+ }, {
230
+ validator: validateCode1,
231
+ trigger: "change"
232
+ }]
233
+ }, {
234
+ default: () => [vue.createVNode(elementPlus.ElInput, {
235
+ "model-value": form.repeatPassword,
236
+ "onUpdate:modelValue": (v) => {
237
+ form.repeatPassword = v;
238
+ },
239
+ "type": "password"
240
+ }, null)]
241
+ })]
242
+ })],
243
+ footer: () => vue.createVNode("div", null, [vue.createVNode(elementPlus.ElButton, {
244
+ "onClick": () => {
245
+ showDialog.value = false;
246
+ }
247
+ }, {
248
+ default: () => [vue.createTextVNode("\u53D6\u6D88")]
249
+ }), vue.createVNode(elementPlus.ElButton, {
250
+ "type": "primary",
251
+ "onClick": () => {
252
+ submitChangePassword();
253
+ }
254
+ }, {
255
+ default: () => [vue.createTextVNode("\u786E\u5B9A")]
256
+ })])
257
+ })]);
108
258
  };
109
259
  }
110
260
  });
@@ -1 +1 @@
1
- {"version":3,"file":"tools.js","sources":["../../../../../src/layouts/components/header/tools.tsx"],"sourcesContent":["import { computed, defineComponent, unref } from \"vue\";\r\nimport {\r\n ElDropdown,\r\n ElDropdownItem,\r\n ElDropdownMenu,\r\n ElImage,\r\n} from \"element-plus\";\r\nimport { MSAppClient } from \"../../../core\";\r\nimport { MKSvgIcon } from \"../../../components\";\r\n\r\nexport const MKHeaderTools = defineComponent({\r\n name: \"MKHeaderTools\",\r\n setup(props) {\r\n const msAppClient = MSAppClient.instance!;\r\n const userSession = msAppClient.userSession!;\r\n\r\n const userInfo = computed(() => userSession.userInfo!);\r\n\r\n const avatar = computed(() => unref(userInfo).avatar);\r\n\r\n return () => {\r\n return (\r\n <div class=\"mk-header-tools\">\r\n <div class=\"mk-header-tools__item\">\r\n <ElDropdown\r\n class=\"mk-header-tools__user\"\r\n trigger=\"click\"\r\n v-slots={{\r\n default: () => (\r\n <div class=\"mk-header-tools__user-info\">\r\n <ElImage\r\n class=\"mk-header-tools__avatar\"\r\n src={unref(avatar)}\r\n v-slots={{\r\n error: () => (\r\n <MKSvgIcon iconClass=\"Avatar\" class=\" mk-header-tools__default-avatar\" />\r\n ),\r\n }}\r\n />\r\n <span class=\"mk-header-tools__nickName\">\r\n {unref(userInfo).nickName}\r\n </span>\r\n </div>\r\n ),\r\n dropdown: () => (\r\n <ElDropdownMenu>\r\n <ElDropdownItem onClick={() => msAppClient.logout()}>\r\n <MKSvgIcon iconClass=\"SwitchButton\" />\r\n 退出登录\r\n </ElDropdownItem>\r\n </ElDropdownMenu>\r\n ),\r\n }}\r\n />\r\n </div>\r\n </div>\r\n );\r\n };\r\n },\r\n});\r\n"],"names":["MKHeaderTools","defineComponent","name","setup","props","msAppClient","MSAppClient","instance","userSession","userInfo","computed","avatar","unref","_createVNode","ElDropdown","default","ElImage","error","MKSvgIcon","nickName","dropdown","ElDropdownMenu","ElDropdownItem","onClick","logout","_createTextVNode"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAUO,MAAMA,gCAAgCC,mBAAA,CAAA;AAAA,EAC3CC,IAAM,EAAA,eAAA;AAAA,EACNC,MAAMC,KAAO,EAAA;AACX,IAAA,MAAMC,cAAcC,uBAAYC,CAAAA,QAAAA,CAAAA;AAChC,IAAA,MAAMC,cAAcH,WAAYG,CAAAA,WAAAA,CAAAA;AAEhC,IAAA,MAAMC,QAAWC,GAAAA,YAAAA,CAAS,MAAMF,WAAAA,CAAYC,QAAS,CAAA,CAAA;AAErD,IAAA,MAAME,SAASD,YAAS,CAAA,MAAME,SAAMH,CAAAA,QAAQ,EAAEE,MAAM,CAAA,CAAA;AAEpD,IAAA,OAAO,MAAM;AACX,MAAA,OAAAE,gBAAA,KAAA,EAAA;AAAA,QAAA,OAAA,EAAA,iBAAA;AAAA,OAAA,EAAA,CAAAA,eAAAA,CAAA,KAAA,EAAA;AAAA,QAAA,OAAA,EAAA,uBAAA;AAAA,OAAA,EAAAA,CAAAA,eAAAA,CAAAC,sBAAA,EAAA;AAAA,QAAA,OAAA,EAAA,uBAAA;AAAA,QAAA,SAAA,EAAA,OAAA;AAAA,OAMiB,EAAA;AAAA,QACPC,OAAAA,EAASA,MAAAF,eAAAA,CAAA,KAAA,EAAA;AAAA,UAAA,OAAA,EAAA,4BAAA;AAAA,SAAA,EAAAA,CAAAA,eAAAA,CAAAG,mBAAA,EAAA;AAAA,UAAA,OAAA,EAAA,yBAAA;AAAA,UAAA,KAAA,EAIEJ,UAAMD,MAAM,CAAA;AAAA,SACR,EAAA;AAAA,UACPM,KAAAA,EAAOA,MAAAJ,eAAAA,CAAAK,eAAA,EAAA;AAAA,YAAA,WAAA,EAAA,QAAA;AAAA,YAAA,OAAA,EAAA,kCAAA;AAAA,aAAA,IAAA,CAAA;AAAA,SAGR,CAAAL,EAAAA,eAAAA,CAAA,MAAA,EAAA;AAAA,UAAA,OAAA,EAAA,2BAAA;AAAA,SAAA,EAAA,CAGAD,SAAMH,CAAAA,QAAQ,EAAEU,QAAQ,CAG9B,CAAA,CAAA,CAAA;AAAA,QACDC,QAAUA,EAAAA,MAAAP,eAAAQ,CAAAA,0BAAAA,EAAA,IAAA,EAAA;AAAA,UAAAN,OAAAA,EAAAA,MAAAF,CAAAA,eAAAA,CAAAS,0BAAA,EAAA;AAAA,YAAA,SAAA,EAEmBC,MAAMlB,WAAAA,CAAYmB,MAAO,EAAA;AAAA,WAAC,EAAA;AAAA,YAAAT,OAAAA,EAAAA,MAAAF,CAAAA,eAAAA,CAAAK,eAAA,EAAA;AAAA,cAAA,WAAA,EAAA,cAAA;AAAA,aAAA,EAAA,IAAA,CAAAO,EAAAA,mBAAAA,CAAA,0BAAA,CAAA,CAAA;AAAA,WAAA,CAAA,CAAA;AAAA,SAAA,CAAA;AAAA,OAMxD,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;AAAA,KAKX,CAAA;AAAA,GACF;AACF,CAAC;;;;"}
1
+ {"version":3,"file":"tools.js","sources":["../../../../../src/layouts/components/header/tools.tsx"],"sourcesContent":["import { computed, defineComponent, unref, ref, reactive, watch, nextTick } from \"vue\";\r\nimport {\r\n ElDropdown,\r\n ElDropdownItem,\r\n ElDropdownMenu,\r\n ElImage,\r\n ElDialog,\r\n ElForm,\r\n ElFormItem,\r\n ElInput,\r\n ElButton\r\n} from \"element-plus\";\r\nimport { MSAppClient } from \"../../../core\";\r\nimport { MKSvgIcon } from \"../../../components\";\r\nimport { Messager } from \"@maketribe/dm\";\r\n\r\nexport const MKHeaderTools = defineComponent({\r\n name: \"MKHeaderTools\",\r\n setup(props) {\r\n const msAppClient = MSAppClient.instance!;\r\n const userSession = msAppClient.userSession!;\r\n\r\n const userInfo = computed(() => userSession.userInfo!);\r\n\r\n const avatar = computed(() => unref(userInfo).avatar);\r\n const showDialog = ref(false);\r\n const form = reactive({\r\n password: \"\",\r\n newPassword: \"\",\r\n repeatPassword: \"\",\r\n });\r\n const formRef = ref();\r\n\r\n watch(showDialog, async () => {\r\n if (unref(showDialog)) {\r\n form.password = \"\";\r\n form.newPassword = \"\";\r\n form.repeatPassword = \"\";\r\n }\r\n })\r\n\r\n const reg = /^([a-zA-Z]+[0-9]+[,._!@#$%^&*]+)|([a-zA-Z]+[,._!@#$%^&*]+[0-9]+)|([0-9]+[,._!@#$%^&*]+[a-zA-Z]+)|([0-9]+[a-zA-Z]+[,._!@#$%^&*]+)|([,._!@#$%^&*]+[a-zA-Z]+[0-9]+)|([,._!@#$%^&*]+[0-9]+[a-zA-Z]+)$/\r\n\r\n const validateCode1 = (rule: any, value: any, callback: any) => {\r\n if (value == \"\") {\r\n callback(new Error(\"请输入密码\"));\r\n }\r\n\r\n if (value.length < 8) {\r\n callback(new Error(\"密码码长度不能小于8位\"));\r\n }\r\n\r\n if (value != form.newPassword) {\r\n callback(new Error(\"两次输入不一致\"));\r\n }\r\n\r\n if (!reg.test(value)) {\r\n callback(new Error(\"密码必须包含数字,字母和特殊符号\"))\r\n } else {\r\n callback()\r\n }\r\n }\r\n\r\n const validateCode = (rule: any, value: any, callback: any) => {\r\n if (value == \"\") {\r\n callback(new Error(\"请输入密码码\"));\r\n }\r\n\r\n if (value == form.password) {\r\n callback(new Error(\"新密码不能与旧密码相同\"));\r\n }\r\n\r\n if (!reg.test(value)) {\r\n callback(new Error(\"密码必须包含数字,字母和特殊符号\"))\r\n } else {\r\n callback()\r\n }\r\n }\r\n\r\n const submitChangePassword = async () => {\r\n const isPass = await formRef.value.validate()\r\n if (!isPass) {\r\n return;\r\n }\r\n let result = await msAppClient.changePassword(form.password, form.newPassword)\r\n if (result.data.code != 200) {\r\n Messager.instance.error(result.data.msg || \"修改密码失败\")\r\n return;\r\n }\r\n msAppClient.logout()\r\n }\r\n\r\n return () => {\r\n return (\r\n <div class=\"mk-header-tools\">\r\n <div class=\"mk-header-tools__item\">\r\n <ElDropdown\r\n class=\"mk-header-tools__user\"\r\n trigger=\"click\"\r\n v-slots={{\r\n default: () => (\r\n <div class=\"mk-header-tools__user-info\">\r\n <ElImage\r\n class=\"mk-header-tools__avatar\"\r\n src={unref(avatar)}\r\n v-slots={{\r\n error: () => (\r\n <MKSvgIcon iconClass=\"Avatar\" class=\" mk-header-tools__default-avatar\" />\r\n ),\r\n }}\r\n />\r\n <span class=\"mk-header-tools__nickName\">\r\n {unref(userInfo).nickName}\r\n </span>\r\n </div>\r\n ),\r\n dropdown: () => (\r\n <ElDropdownMenu>\r\n <ElDropdownItem onClick={() => msAppClient.logout()}>\r\n <MKSvgIcon iconClass=\"SwitchButton\" />\r\n 退出登录\r\n </ElDropdownItem>\r\n <ElDropdownItem onClick={() => { showDialog.value = true }}>\r\n <MKSvgIcon iconClass=\"SwitchButton\" />\r\n 修改密码\r\n </ElDropdownItem>\r\n </ElDropdownMenu>\r\n ),\r\n }}\r\n />\r\n </div>\r\n <ElDialog model-value={showDialog.value} onUpdate:modelValue={(v) => { showDialog.value = v }} title={'修改密码'} width={'30%'} v-slots={{\r\n footer: () => (\r\n <div>\r\n <ElButton onClick={() => { showDialog.value = false }}>取消</ElButton>\r\n <ElButton type={\"primary\"} onClick={() => { submitChangePassword() }}>确定</ElButton>\r\n </div>\r\n )\r\n }}>\r\n <ElForm ref={formRef} model={form} label-width={'80px'}>\r\n <ElFormItem label={'旧密码'} required={true} prop={'password'} rules={[{ required: true, message: '请输入旧密码', trigger: 'change' }]}>\r\n <ElInput model-value={form.password} onUpdate:modelValue={(v) => { form.password = v }} type={'password'} />\r\n </ElFormItem>\r\n <ElFormItem label={'新密码'} required={true} prop={'newPassword'} rules={[{ required: true, message: '请输入新密码', trigger: 'change' }, { validator: validateCode, trigger: 'change' }]} >\r\n <ElInput model-value={form.newPassword} onUpdate:modelValue={(v) => { form.newPassword = v }} type={'password'} />\r\n </ElFormItem>\r\n <ElFormItem label={'重复密码'} required={true} prop={'repeatPassword'} rules={[{ required: true, message: '请再次输入密码', trigger: 'change' }, { validator: validateCode1, trigger: 'change' }]} >\r\n <ElInput model-value={form.repeatPassword} onUpdate:modelValue={(v) => { form.repeatPassword = v }} type={'password'} />\r\n </ElFormItem>\r\n </ElForm>\r\n </ElDialog>\r\n </div >\r\n );\r\n };\r\n },\r\n});\r\n"],"names":["MKHeaderTools","defineComponent","name","setup","props","msAppClient","MSAppClient","instance","userSession","userInfo","computed","avatar","unref","showDialog","ref","form","reactive","password","newPassword","repeatPassword","formRef","watch","reg","validateCode1","rule","value","callback","Error","length","test","validateCode","submitChangePassword","isPass","validate","result","changePassword","data","code","Messager","error","msg","logout","_createVNode","ElDropdown","default","ElImage","MKSvgIcon","nickName","dropdown","ElDropdownMenu","ElDropdownItem","onClick","_createTextVNode","ElDialog","v","ElForm","ElFormItem","required","message","trigger","ElInput","validator","footer","ElButton"],"mappings":"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"}
@@ -165,7 +165,7 @@ var _sfc_main = /* @__PURE__ */ vue.defineComponent({
165
165
  {
166
166
  default: vue.withCtx(() => [
167
167
  vue.createTextVNode(
168
- vue.toDisplayString(role.name),
168
+ vue.toDisplayString(role.desc),
169
169
  1
170
170
  /* TEXT */
171
171
  )
@@ -1 +1 @@
1
- {"version":3,"file":"index.vue2.js","sources":["../../../../../../src/page/index/dv/ms-member/index.vue"],"sourcesContent":["<template>\r\n <!-- <DefaultSingleListPage :data-table=\"memberTable\" /> -->\r\n <MKDataTablePage :data-table=\"memberTable\">\r\n <MKTableView :data-table=\"memberTable\">\r\n <MKTable :data-table=\"memberTable\">\r\n <template #col-name-content=\"{ row }\">\r\n <div class=\"member-info\">\r\n <ElImage :src=\"row.avatar\" class=\"member-info-img\">\r\n <template #error>\r\n <MKSvgIcon icon-class=\"User\" class=\"member-info-img__icon\"></MKSvgIcon>\r\n </template>\r\n </ElImage>\r\n <div class=\"member-info-text\">\r\n <span class=\"member-info-text__name\">{{ row.name }}</span>\r\n <span class=\"member-info-text__email\">{{ row.email }}</span>\r\n </div>\r\n </div>\r\n </template>\r\n <template #col-roles-content=\"{ row }\">\r\n <div class=\"roles-Info\">\r\n <ElTag v-for=\"role in row.roles\" :key=\"role.id\" size=\"large\" type=\"info\" class=\"roles-Info-tag\">\r\n {{ role.name }}</ElTag>\r\n </div>\r\n </template>\r\n <template #col-type-content=\"{ row }\">\r\n <ElTag v-if=\"row.valid == 0\">待激活</ElTag>\r\n <ElTag v-else-if=\"row.isLock == 1\" type=\"danger\">已锁定</ElTag>\r\n <ElTag v-else type=\"success\">正常</ElTag>\r\n </template>\r\n </MKTable>\r\n </MKTableView>\r\n </MKDataTablePage>\r\n <ElDialog v-model=\"memberTable.isShowActiveMemberForm\" class=\"dialogClass\" title=\"激活成员\" append-to-body>\r\n <MKDataForm :data-form=\"activeMemberForm\">\r\n <MKForm :data-form=\"activeMemberForm\">\r\n </MKForm>\r\n </MKDataForm>\r\n <template #footer>\r\n <ElButton @click=\"handleActiveMemberConfirm\" type=\"primary\" :loading=\"activeMemberForm.loading\">\r\n 确定\r\n </ElButton>\r\n </template>\r\n </ElDialog>\r\n</template>\r\n\r\n<script setup lang=\"ts\">\r\nimport { computed, reactive, ref } from \"vue\";\r\nimport { useRouter } from \"vue-router\";\r\nimport { ElButton, ElDialog, ElImage, ElTag } from \"element-plus\";\r\nimport { DataModelDefines } from \"../../../../core\";\r\nimport { MKDataForm, MKDataTablePage, MKTableView, MKTable, MKSvgIcon, MKForm } from \"../../../../components\";\r\nimport { MemberTable } from \"../../../../dataview\";\r\nimport DefaultSingleListPage from \"../default/single/list/normal.vue\";\r\nimport { MKUploadImage } from \"../../../../components/upload-file\";\r\n\r\ndefineOptions({\r\n mkRoute: {\r\n name: \"dv/ms-member/list\",\r\n }\r\n})\r\nconst memberTable = reactive(\r\n DataModelDefines.instance.getDataTable(\"ms-member\")!\r\n) as MemberTable;\r\nconst activeMemberForm = computed(() => memberTable.activeMemberForm);\r\nconst router = useRouter();\r\nconst handleActiveMemberConfirm = async () => {\r\n memberTable.approveMember();\r\n};\r\n\r\nmemberTable.addRecordEvent.on(() => {\r\n router.push({\r\n name: \"dv/ms-member/add\",\r\n });\r\n});\r\n\r\nmemberTable.editRecordEvent.on(({ item }) => {\r\n router.push({\r\n name: \"dv/ms-member/edit\",\r\n params: {\r\n id: item.id,\r\n },\r\n });\r\n});\r\n\r\n</script>\r\n<style lang=\"scss\"></style>\r\n"],"names":["reactive","DataModelDefines","computed","useRouter"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AA4DA,IAAA,MAAM,WAAc,GAAAA,YAAA;AAAA,MAClBC,iCAAA,CAAiB,QAAS,CAAA,YAAA,CAAa,WAAW,CAAA;AAAA,KACpD,CAAA;AACA,IAAA,MAAM,gBAAmB,GAAAC,YAAA,CAAS,MAAM,WAAA,CAAY,gBAAgB,CAAA,CAAA;AACpE,IAAA,MAAM,SAASC,mBAAU,EAAA,CAAA;AACzB,IAAA,MAAM,4BAA4B,YAAY;AAC5C,MAAA,WAAA,CAAY,aAAc,EAAA,CAAA;AAAA,KAC5B,CAAA;AAEA,IAAY,WAAA,CAAA,cAAA,CAAe,GAAG,MAAM;AAClC,MAAA,MAAA,CAAO,IAAK,CAAA;AAAA,QACV,IAAM,EAAA,kBAAA;AAAA,OACP,CAAA,CAAA;AAAA,KACF,CAAA,CAAA;AAED,IAAA,WAAA,CAAY,eAAgB,CAAA,EAAA,CAAG,CAAC,EAAE,MAAW,KAAA;AAC3C,MAAA,MAAA,CAAO,IAAK,CAAA;AAAA,QACV,IAAM,EAAA,mBAAA;AAAA,QACN,MAAQ,EAAA;AAAA,UACN,IAAI,IAAK,CAAA,EAAA;AAAA,SACX;AAAA,OACD,CAAA,CAAA;AAAA,KACF,CAAA,CAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
1
+ {"version":3,"file":"index.vue2.js","sources":["../../../../../../src/page/index/dv/ms-member/index.vue"],"sourcesContent":["<template>\r\n <!-- <DefaultSingleListPage :data-table=\"memberTable\" /> -->\r\n <MKDataTablePage :data-table=\"memberTable\">\r\n <MKTableView :data-table=\"memberTable\">\r\n <MKTable :data-table=\"memberTable\">\r\n <template #col-name-content=\"{ row }\">\r\n <div class=\"member-info\">\r\n <ElImage :src=\"row.avatar\" class=\"member-info-img\">\r\n <template #error>\r\n <MKSvgIcon icon-class=\"User\" class=\"member-info-img__icon\"></MKSvgIcon>\r\n </template>\r\n </ElImage>\r\n <div class=\"member-info-text\">\r\n <span class=\"member-info-text__name\">{{ row.name }}</span>\r\n <span class=\"member-info-text__email\">{{ row.email }}</span>\r\n </div>\r\n </div>\r\n </template>\r\n <template #col-roles-content=\"{ row }\">\r\n <div class=\"roles-Info\">\r\n <ElTag v-for=\"role in row.roles\" :key=\"role.id\" size=\"large\" type=\"info\" class=\"roles-Info-tag\">\r\n {{ role.desc }}</ElTag>\r\n </div>\r\n </template>\r\n <template #col-type-content=\"{ row }\">\r\n <ElTag v-if=\"row.valid == 0\">待激活</ElTag>\r\n <ElTag v-else-if=\"row.isLock == 1\" type=\"danger\">已锁定</ElTag>\r\n <ElTag v-else type=\"success\">正常</ElTag>\r\n </template>\r\n </MKTable>\r\n </MKTableView>\r\n </MKDataTablePage>\r\n <ElDialog v-model=\"memberTable.isShowActiveMemberForm\" class=\"dialogClass\" title=\"激活成员\" append-to-body>\r\n <MKDataForm :data-form=\"activeMemberForm\">\r\n <MKForm :data-form=\"activeMemberForm\">\r\n </MKForm>\r\n </MKDataForm>\r\n <template #footer>\r\n <ElButton @click=\"handleActiveMemberConfirm\" type=\"primary\" :loading=\"activeMemberForm.loading\">\r\n 确定\r\n </ElButton>\r\n </template>\r\n </ElDialog>\r\n</template>\r\n\r\n<script setup lang=\"ts\">\r\nimport { computed, reactive, ref } from \"vue\";\r\nimport { useRouter } from \"vue-router\";\r\nimport { ElButton, ElDialog, ElImage, ElTag } from \"element-plus\";\r\nimport { DataModelDefines } from \"../../../../core\";\r\nimport { MKDataForm, MKDataTablePage, MKTableView, MKTable, MKSvgIcon, MKForm } from \"../../../../components\";\r\nimport { MemberTable } from \"../../../../dataview\";\r\nimport DefaultSingleListPage from \"../default/single/list/normal.vue\";\r\nimport { MKUploadImage } from \"../../../../components/upload-file\";\r\n\r\ndefineOptions({\r\n mkRoute: {\r\n name: \"dv/ms-member/list\",\r\n }\r\n})\r\nconst memberTable = reactive(\r\n DataModelDefines.instance.getDataTable(\"ms-member\")!\r\n) as MemberTable;\r\nconst activeMemberForm = computed(() => memberTable.activeMemberForm);\r\nconst router = useRouter();\r\nconst handleActiveMemberConfirm = async () => {\r\n memberTable.approveMember();\r\n};\r\n\r\nmemberTable.addRecordEvent.on(() => {\r\n router.push({\r\n name: \"dv/ms-member/add\",\r\n });\r\n});\r\n\r\nmemberTable.editRecordEvent.on(({ item }) => {\r\n router.push({\r\n name: \"dv/ms-member/edit\",\r\n params: {\r\n id: item.id,\r\n },\r\n });\r\n});\r\n\r\n</script>\r\n<style lang=\"scss\"></style>\r\n"],"names":["reactive","DataModelDefines","computed","useRouter"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AA4DA,IAAA,MAAM,WAAc,GAAAA,YAAA;AAAA,MAClBC,iCAAA,CAAiB,QAAS,CAAA,YAAA,CAAa,WAAW,CAAA;AAAA,KACpD,CAAA;AACA,IAAA,MAAM,gBAAmB,GAAAC,YAAA,CAAS,MAAM,WAAA,CAAY,gBAAgB,CAAA,CAAA;AACpE,IAAA,MAAM,SAASC,mBAAU,EAAA,CAAA;AACzB,IAAA,MAAM,4BAA4B,YAAY;AAC5C,MAAA,WAAA,CAAY,aAAc,EAAA,CAAA;AAAA,KAC5B,CAAA;AAEA,IAAY,WAAA,CAAA,cAAA,CAAe,GAAG,MAAM;AAClC,MAAA,MAAA,CAAO,IAAK,CAAA;AAAA,QACV,IAAM,EAAA,kBAAA;AAAA,OACP,CAAA,CAAA;AAAA,KACF,CAAA,CAAA;AAED,IAAA,WAAA,CAAY,eAAgB,CAAA,EAAA,CAAG,CAAC,EAAE,MAAW,KAAA;AAC3C,MAAA,MAAA,CAAO,IAAK,CAAA;AAAA,QACV,IAAM,EAAA,mBAAA;AAAA,QACN,MAAQ,EAAA;AAAA,UACN,IAAI,IAAK,CAAA,EAAA;AAAA,SACX;AAAA,OACD,CAAA,CAAA;AAAA,KACF,CAAA,CAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
@@ -79,4 +79,5 @@ export declare class MSAppClient {
79
79
  avatarPath: string;
80
80
  }>, any>>;
81
81
  logout(): Promise<import("@maketribe/request").ResponseConfig<any, any>>;
82
+ changePassword(password: string, newPassword: string): Promise<import("@maketribe/request").ResponseConfig<any, any>>;
82
83
  }
@@ -153,6 +153,20 @@ class MSAppClient {
153
153
  this.setUserSession(null);
154
154
  return this.httpRequest.get("/api/ms-login/logout");
155
155
  }
156
+ async changePassword(password, newPassword) {
157
+ console.log(454);
158
+ const response = await this.httpRequest.request({
159
+ url: "/api/dv/ms-member/modify/password",
160
+ method: "POST",
161
+ data: { password: md5(`mkbl#${password}`), newPassword: md5(`mkbl#${newPassword}`) }
162
+ });
163
+ if (response.data.code == 200) {
164
+ this.userSession?.dispose();
165
+ this.setUserSession(null);
166
+ return this.httpRequest.get("/api/ms-login/logout");
167
+ }
168
+ return response;
169
+ }
156
170
  }
157
171
 
158
172
  export { MSAppClient };
@@ -1 +1 @@
1
- {"version":3,"file":"MSAppClient.js","sources":["../../../src/core/MSAppClient.ts"],"sourcesContent":["import {\r\n createRouter,\r\n createWebHashHistory,\r\n Router as VueRouter,\r\n} from \"vue-router\";\r\nimport {\r\n DataViewRequest,\r\n DVQueryable,\r\n HttpRequest,\r\n R,\r\n WebHttpRequest,\r\n} from \"@maketribe/request\";\r\nimport { IComponents, DataModel, Components } from \"@maketribe/dm\";\r\nimport { I18n } from \"@maketribe/locale\";\r\n\r\nimport { Event, md5 } from \"@maketribe/utils\";\r\nimport { UserSession } from \"./UserSession\";\r\nimport { authBeforeEach } from \"../router-middleware\";\r\nimport { PageManager } from \"./PageManager\";\r\nimport { ACCESS_TOKEN_HEADER, X_ACCESS_TOKEN_HEADER } from \"../constants\";\r\n\r\nexport type LoginResult = {\r\n account: string;\r\n email: string;\r\n nickName: string;\r\n avatarPath: string;\r\n};\r\n\r\nexport interface MSAppClientOptions {\r\n pageManager?: PageManager;\r\n projectName: string;\r\n httpRequest?: HttpRequest;\r\n origin: string;\r\n appID: string;\r\n logo?: string;\r\n locale?: string;\r\n vueRouter?: VueRouter;\r\n dataTableComponents?: IComponents;\r\n dataFormComponents?: IComponents;\r\n dataFilterComponents?: IComponents;\r\n whereFilterComponents?: IComponents;\r\n}\r\n\r\nexport class MSAppClient {\r\n static instance: MSAppClient | null = null;\r\n\r\n origin: string = \"\";\r\n\r\n private _options: Required<MSAppClientOptions>;\r\n\r\n projectName: string;\r\n\r\n logo: string;\r\n\r\n appID: string;\r\n\r\n userSession: UserSession | null = null;\r\n\r\n httpRequest: HttpRequest;\r\n\r\n ready: boolean = false;\r\n\r\n initd: boolean = false;\r\n\r\n pageManager: PageManager;\r\n\r\n /**\r\n * @deprecated\r\n * @description 使用 MSAppClient.instance.userSession.userInfo\r\n */\r\n get userInfo() {\r\n return this.userSession?.userInfo ?? null;\r\n }\r\n\r\n i18n: I18n;\r\n\r\n dataTableComponents: IComponents;\r\n dataFormComponents: IComponents;\r\n dataFilterComponents: IComponents;\r\n whereFilterComponents: IComponents;\r\n\r\n vueRouter: VueRouter;\r\n\r\n beforeInitUserSessionEvent: Event<{ userSession: UserSession }> = new Event();\r\n\r\n userSessionChangeEvent: Event<{ userSession: UserSession | null }> =\r\n new Event();\r\n\r\n constructor(options: MSAppClientOptions) {\r\n this._options = this._normalizeOptions(options);\r\n\r\n this.appID = this._options.appID;\r\n\r\n this.logo = this._options.logo;\r\n\r\n this.projectName = options.projectName;\r\n\r\n this.i18n = I18n.instance;\r\n this.i18n.setCurrentLanguageName(this._options.locale);\r\n\r\n this.dataTableComponents = this._options.dataTableComponents;\r\n this.dataFormComponents = this._options.dataFormComponents;\r\n this.dataFilterComponents = this._options.dataFilterComponents;\r\n this.whereFilterComponents = this._options.whereFilterComponents;\r\n\r\n this.vueRouter = this._options.vueRouter;\r\n\r\n this.pageManager = this._options.pageManager;\r\n\r\n HttpRequest.appID = this.appID;\r\n\r\n this.httpRequest = this._options.httpRequest;\r\n\r\n DataModel.setHttpRequest(this.httpRequest);\r\n DVQueryable.setDefaultDataViewRequest(\r\n new DataViewRequest({ httpRequest: this.httpRequest })\r\n );\r\n }\r\n\r\n setUserSession(userSession: UserSession | null) {\r\n if (this.userSession) {\r\n this.userSession.dispose();\r\n }\r\n\r\n this.userSession = userSession;\r\n\r\n this.userSessionChangeEvent.emit({ userSession });\r\n }\r\n\r\n private _normalizeOptions(\r\n options: MSAppClientOptions\r\n ): Required<MSAppClientOptions> {\r\n return {\r\n appID: options.appID,\r\n projectName: options.projectName,\r\n httpRequest: options.httpRequest ?? new WebHttpRequest(),\r\n origin: options.origin,\r\n logo: options.logo || \"\",\r\n locale: options.locale || \"zh-cn\",\r\n vueRouter:\r\n options.vueRouter ??\r\n createRouter({\r\n history: createWebHashHistory(),\r\n routes: [],\r\n }),\r\n pageManager: options.pageManager ?? new PageManager(),\r\n dataTableComponents: options.dataTableComponents ?? new Components(),\r\n dataFormComponents: options.dataFormComponents ?? new Components(),\r\n dataFilterComponents: options.dataFilterComponents ?? new Components(),\r\n whereFilterComponents: options.whereFilterComponents ?? new Components(),\r\n };\r\n }\r\n getI18n() {\r\n return this.i18n;\r\n }\r\n\r\n getOptions() {\r\n return this._options;\r\n }\r\n\r\n async loadCurrentUserSession(options?: {\r\n accessToken: string;\r\n xAccessToken: string;\r\n }) {\r\n const userSession = (this.userSession = new UserSession({\r\n msAppClient: this,\r\n ...options,\r\n }));\r\n this.userSession = null;\r\n\r\n this.beforeInitUserSessionEvent.emit({ userSession });\r\n const userSessionInitResult = await userSession.init();\r\n\r\n if (userSessionInitResult?.data.code !== 200) {\r\n userSession.dispose();\r\n return userSessionInitResult!;\r\n }\r\n\r\n this.setUserSession(userSession);\r\n }\r\n\r\n async init() {\r\n if (this.initd) {\r\n return;\r\n }\r\n\r\n this.vueRouter.beforeEach(async (to, from, next) => {\r\n const route = await authBeforeEach(this, to, from);\r\n\r\n if (route) {\r\n next(route);\r\n return;\r\n }\r\n\r\n next();\r\n });\r\n\r\n this.pageManager.init();\r\n this.pageManager.setMSAppCLient(this);\r\n\r\n this.httpRequest.getInterceptors().response.use((config) => {\r\n if (config.data.code === 401) {\r\n this.vueRouter.push({ name: \"login\" });\r\n // if (this.userSession) {\r\n // this.userSession.lock();\r\n // } else {\r\n // this.vueRouter.push({ name: \"login\" });\r\n // }\r\n }\r\n return config;\r\n });\r\n\r\n this.initd = true;\r\n }\r\n\r\n async login(account: string, password: string, code: string) {\r\n const response = await this.httpRequest.request<R<LoginResult>>({\r\n url: \"/api/ms-login/login\",\r\n method: \"POST\",\r\n data: { account, password: md5(`mkbl#${password}`), vCode: code },\r\n });\r\n\r\n if (response.data.code === 200) {\r\n await this.loadCurrentUserSession({\r\n accessToken: response.headers[ACCESS_TOKEN_HEADER],\r\n xAccessToken: response.headers[X_ACCESS_TOKEN_HEADER],\r\n });\r\n }\r\n\r\n return response;\r\n }\r\n\r\n formatURL(url: string) {\r\n return url;\r\n }\r\n\r\n async modifyPassword(account: string, code: string) {\r\n type LoginResult = {\r\n account: string;\r\n email: string;\r\n nickName: string;\r\n avatarPath: string;\r\n };\r\n\r\n const response = await this.httpRequest.request<R<LoginResult>>({\r\n url: \"/api/ms-login/modify-password\",\r\n method: \"POST\",\r\n data: { account, vCode: code },\r\n });\r\n\r\n return response;\r\n }\r\n\r\n async logout() {\r\n this.userSession?.dispose();\r\n this.setUserSession(null);\r\n\r\n return this.httpRequest.get(\"/api/ms-login/logout\");\r\n }\r\n}\r\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"MSAppClient.js","sources":["../../../src/core/MSAppClient.ts"],"sourcesContent":["import {\r\n createRouter,\r\n createWebHashHistory,\r\n Router as VueRouter,\r\n} from \"vue-router\";\r\nimport {\r\n DataViewRequest,\r\n DVQueryable,\r\n HttpRequest,\r\n R,\r\n WebHttpRequest,\r\n} from \"@maketribe/request\";\r\nimport { IComponents, DataModel, Components, Messager } from \"@maketribe/dm\";\r\nimport { I18n } from \"@maketribe/locale\";\r\n\r\nimport { Event, md5 } from \"@maketribe/utils\";\r\nimport { UserSession } from \"./UserSession\";\r\nimport { authBeforeEach } from \"../router-middleware\";\r\nimport { PageManager } from \"./PageManager\";\r\nimport { ACCESS_TOKEN_HEADER, X_ACCESS_TOKEN_HEADER } from \"../constants\";\r\n\r\nexport type LoginResult = {\r\n account: string;\r\n email: string;\r\n nickName: string;\r\n avatarPath: string;\r\n};\r\n\r\nexport interface MSAppClientOptions {\r\n pageManager?: PageManager;\r\n projectName: string;\r\n httpRequest?: HttpRequest;\r\n origin: string;\r\n appID: string;\r\n logo?: string;\r\n locale?: string;\r\n vueRouter?: VueRouter;\r\n dataTableComponents?: IComponents;\r\n dataFormComponents?: IComponents;\r\n dataFilterComponents?: IComponents;\r\n whereFilterComponents?: IComponents;\r\n}\r\n\r\nexport class MSAppClient {\r\n static instance: MSAppClient | null = null;\r\n\r\n origin: string = \"\";\r\n\r\n private _options: Required<MSAppClientOptions>;\r\n\r\n projectName: string;\r\n\r\n logo: string;\r\n\r\n appID: string;\r\n\r\n userSession: UserSession | null = null;\r\n\r\n httpRequest: HttpRequest;\r\n\r\n ready: boolean = false;\r\n\r\n initd: boolean = false;\r\n\r\n pageManager: PageManager;\r\n\r\n /**\r\n * @deprecated\r\n * @description 使用 MSAppClient.instance.userSession.userInfo\r\n */\r\n get userInfo() {\r\n return this.userSession?.userInfo ?? null;\r\n }\r\n\r\n i18n: I18n;\r\n\r\n dataTableComponents: IComponents;\r\n dataFormComponents: IComponents;\r\n dataFilterComponents: IComponents;\r\n whereFilterComponents: IComponents;\r\n\r\n vueRouter: VueRouter;\r\n\r\n beforeInitUserSessionEvent: Event<{ userSession: UserSession }> = new Event();\r\n\r\n userSessionChangeEvent: Event<{ userSession: UserSession | null }> =\r\n new Event();\r\n\r\n constructor(options: MSAppClientOptions) {\r\n this._options = this._normalizeOptions(options);\r\n\r\n this.appID = this._options.appID;\r\n\r\n this.logo = this._options.logo;\r\n\r\n this.projectName = options.projectName;\r\n\r\n this.i18n = I18n.instance;\r\n this.i18n.setCurrentLanguageName(this._options.locale);\r\n\r\n this.dataTableComponents = this._options.dataTableComponents;\r\n this.dataFormComponents = this._options.dataFormComponents;\r\n this.dataFilterComponents = this._options.dataFilterComponents;\r\n this.whereFilterComponents = this._options.whereFilterComponents;\r\n\r\n this.vueRouter = this._options.vueRouter;\r\n\r\n this.pageManager = this._options.pageManager;\r\n\r\n HttpRequest.appID = this.appID;\r\n\r\n this.httpRequest = this._options.httpRequest;\r\n\r\n DataModel.setHttpRequest(this.httpRequest);\r\n DVQueryable.setDefaultDataViewRequest(\r\n new DataViewRequest({ httpRequest: this.httpRequest })\r\n );\r\n }\r\n\r\n setUserSession(userSession: UserSession | null) {\r\n if (this.userSession) {\r\n this.userSession.dispose();\r\n }\r\n\r\n this.userSession = userSession;\r\n\r\n this.userSessionChangeEvent.emit({ userSession });\r\n }\r\n\r\n private _normalizeOptions(\r\n options: MSAppClientOptions\r\n ): Required<MSAppClientOptions> {\r\n return {\r\n appID: options.appID,\r\n projectName: options.projectName,\r\n httpRequest: options.httpRequest ?? new WebHttpRequest(),\r\n origin: options.origin,\r\n logo: options.logo || \"\",\r\n locale: options.locale || \"zh-cn\",\r\n vueRouter:\r\n options.vueRouter ??\r\n createRouter({\r\n history: createWebHashHistory(),\r\n routes: [],\r\n }),\r\n pageManager: options.pageManager ?? new PageManager(),\r\n dataTableComponents: options.dataTableComponents ?? new Components(),\r\n dataFormComponents: options.dataFormComponents ?? new Components(),\r\n dataFilterComponents: options.dataFilterComponents ?? new Components(),\r\n whereFilterComponents: options.whereFilterComponents ?? new Components(),\r\n };\r\n }\r\n getI18n() {\r\n return this.i18n;\r\n }\r\n\r\n getOptions() {\r\n return this._options;\r\n }\r\n\r\n async loadCurrentUserSession(options?: {\r\n accessToken: string;\r\n xAccessToken: string;\r\n }) {\r\n const userSession = (this.userSession = new UserSession({\r\n msAppClient: this,\r\n ...options,\r\n }));\r\n this.userSession = null;\r\n\r\n this.beforeInitUserSessionEvent.emit({ userSession });\r\n const userSessionInitResult = await userSession.init();\r\n\r\n if (userSessionInitResult?.data.code !== 200) {\r\n userSession.dispose();\r\n return userSessionInitResult!;\r\n }\r\n\r\n this.setUserSession(userSession);\r\n }\r\n\r\n async init() {\r\n if (this.initd) {\r\n return;\r\n }\r\n\r\n this.vueRouter.beforeEach(async (to, from, next) => {\r\n const route = await authBeforeEach(this, to, from);\r\n\r\n if (route) {\r\n next(route);\r\n return;\r\n }\r\n\r\n next();\r\n });\r\n\r\n this.pageManager.init();\r\n this.pageManager.setMSAppCLient(this);\r\n\r\n this.httpRequest.getInterceptors().response.use((config) => {\r\n if (config.data.code === 401) {\r\n this.vueRouter.push({ name: \"login\" });\r\n // if (this.userSession) {\r\n // this.userSession.lock();\r\n // } else {\r\n // this.vueRouter.push({ name: \"login\" });\r\n // }\r\n }\r\n return config;\r\n });\r\n\r\n this.initd = true;\r\n }\r\n\r\n async login(account: string, password: string, code: string) {\r\n const response = await this.httpRequest.request<R<LoginResult>>({\r\n url: \"/api/ms-login/login\",\r\n method: \"POST\",\r\n data: { account, password: md5(`mkbl#${password}`), vCode: code },\r\n });\r\n\r\n if (response.data.code === 200) {\r\n await this.loadCurrentUserSession({\r\n accessToken: response.headers[ACCESS_TOKEN_HEADER],\r\n xAccessToken: response.headers[X_ACCESS_TOKEN_HEADER],\r\n });\r\n }\r\n\r\n return response;\r\n }\r\n\r\n formatURL(url: string) {\r\n return url;\r\n }\r\n\r\n async modifyPassword(account: string, code: string) {\r\n type LoginResult = {\r\n account: string;\r\n email: string;\r\n nickName: string;\r\n avatarPath: string;\r\n };\r\n\r\n const response = await this.httpRequest.request<R<LoginResult>>({\r\n url: \"/api/ms-login/modify-password\",\r\n method: \"POST\",\r\n data: { account, vCode: code },\r\n });\r\n\r\n return response;\r\n }\r\n\r\n async logout() {\r\n this.userSession?.dispose();\r\n this.setUserSession(null);\r\n\r\n return this.httpRequest.get(\"/api/ms-login/logout\");\r\n }\r\n async changePassword(password: string, newPassword: string) {\r\n console.log(454);\r\n type LoginResult = {\r\n account: string;\r\n email: string;\r\n nickName: string;\r\n avatarPath: string;\r\n };\r\n\r\n const response = await this.httpRequest.request<R<LoginResult>>({\r\n url: \"/api/dv/ms-member/modify/password\",\r\n method: \"POST\",\r\n data: { password: md5(`mkbl#${password}`), newPassword: md5(`mkbl#${newPassword}`) },\r\n });\r\n if (response.data.code == 200) {\r\n this.userSession?.dispose();\r\n this.setUserSession(null);\r\n\r\n return this.httpRequest.get(\"/api/ms-login/logout\");\r\n }\r\n return response;\r\n }\r\n}\r\n"],"names":[],"mappings":"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"}
@@ -1,6 +1,11 @@
1
1
  import { Where } from '@maketribe/request';
2
2
  import { DataTable, TableColumn, TableActionColumn } from '@maketribe/dm';
3
3
  import { defineDataTable } from '../../define-data-table.js';
4
+ import 'vue';
5
+ import 'element-plus';
6
+ import '@maketribe/utils';
7
+ import '../../core/DataModelDefines.js';
8
+ import { MSAppClient } from '../../core/MSAppClient.js';
4
9
 
5
10
  class ConfigTable extends DataTable {
6
11
  static _instance = null;
@@ -16,6 +21,9 @@ class ConfigTable extends DataTable {
16
21
  }
17
22
  async initialize() {
18
23
  await super.initialize();
24
+ if (!MSAppClient.instance?.userSession?.userInfo?.isSuper) {
25
+ this.buttonTools.splice(2, 1);
26
+ }
19
27
  this.setColumns([
20
28
  new TableColumn({ name: "key", label: "\u914D\u7F6E\u952E" }),
21
29
  new TableColumn({ name: "memo", label: "\u5907\u6CE8" }),
@@ -1 +1 @@
1
- {"version":3,"file":"ConfigTable.js","sources":["../../../../src/dataview/config/ConfigTable.ts"],"sourcesContent":["import { Where } from \"@maketribe/request\";\r\nimport {\r\n DataTable,\r\n DataTableOptions,\r\n TableColumn,\r\n TableActionColumn,\r\n} from \"@maketribe/dm\";\r\nimport { Config } from \"./ConfigForm\";\r\nimport { R, ResponseConfig } from \"@maketribe/request\";\r\nimport { defineDataTable } from \"../../define-data-table\";\r\n\r\nexport class ConfigTable extends DataTable<Config> {\r\n private static _instance: ConfigTable | null = null;\r\n\r\n static get instance(): ConfigTable {\r\n if (!ConfigTable._instance) {\r\n ConfigTable._instance = new ConfigTable();\r\n ConfigTable._instance.dataFilter.setReady();\r\n }\r\n\r\n return ConfigTable._instance;\r\n }\r\n\r\n constructor(options: DataTableOptions = {}) {\r\n super({ name: \"ms-cfg\", ...options });\r\n }\r\n\r\n protected async initialize() {\r\n await super.initialize();\r\n\r\n this.setColumns([\r\n new TableColumn({ name: \"key\", label: \"配置键\" }),\r\n new TableColumn({ name: \"memo\", label: \"备注\" }),\r\n new TableActionColumn(),\r\n ]);\r\n }\r\n\r\n formatItem(item: Config): Config {\r\n let value = item.value;\r\n\r\n try {\r\n value = JSON.parse(value);\r\n } catch (e) {}\r\n\r\n return { ...item, value };\r\n }\r\n\r\n static async loadConfig<T = any>(\r\n key: string\r\n ): Promise<ResponseConfig<R<Config<T>>>> {\r\n const where = new Where();\r\n\r\n where.addCondition(\"key\", \"=\", key);\r\n\r\n const dataViewRequest = ConfigTable.instance.dataViewRequest;\r\n const response = await dataViewRequest.allList({\r\n data: { condition: where },\r\n });\r\n\r\n return {\r\n ...response,\r\n data: {\r\n ...response.data,\r\n data: response.data.data?.[0] ?? null,\r\n },\r\n };\r\n }\r\n}\r\n\r\n(window as any).ConfigTable = ConfigTable;\r\n\r\ndefineDataTable(ConfigTable);\r\n"],"names":[],"mappings":";;;;AAWO,MAAM,oBAAoB,SAAkB,CAAA;AAAA,EACjD,OAAe,SAAgC,GAAA,IAAA,CAAA;AAAA,EAE/C,WAAW,QAAwB,GAAA;AACjC,IAAI,IAAA,CAAC,YAAY,SAAW,EAAA;AAC1B,MAAY,WAAA,CAAA,SAAA,GAAY,IAAI,WAAY,EAAA,CAAA;AACxC,MAAY,WAAA,CAAA,SAAA,CAAU,WAAW,QAAS,EAAA,CAAA;AAAA,KAC5C;AAEA,IAAA,OAAO,WAAY,CAAA,SAAA,CAAA;AAAA,GACrB;AAAA,EAEA,WAAA,CAAY,OAA4B,GAAA,EAAI,EAAA;AAC1C,IAAA,KAAA,CAAM,EAAE,IAAA,EAAM,QAAU,EAAA,GAAG,SAAS,CAAA,CAAA;AAAA,GACtC;AAAA,EAEA,MAAgB,UAAa,GAAA;AAC3B,IAAA,MAAM,MAAM,UAAW,EAAA,CAAA;AAEvB,IAAA,IAAA,CAAK,UAAW,CAAA;AAAA,MACd,IAAI,WAAY,CAAA,EAAE,MAAM,KAAO,EAAA,KAAA,EAAO,sBAAO,CAAA;AAAA,MAC7C,IAAI,WAAY,CAAA,EAAE,MAAM,MAAQ,EAAA,KAAA,EAAO,gBAAM,CAAA;AAAA,MAC7C,IAAI,iBAAkB,EAAA;AAAA,KACvB,CAAA,CAAA;AAAA,GACH;AAAA,EAEA,WAAW,IAAsB,EAAA;AAC/B,IAAA,IAAI,QAAQ,IAAK,CAAA,KAAA,CAAA;AAEjB,IAAI,IAAA;AACF,MAAQ,KAAA,GAAA,IAAA,CAAK,MAAM,KAAK,CAAA,CAAA;AAAA,aACjB,CAAG,EAAA;AAAA,KAAC;AAEb,IAAO,OAAA,EAAE,GAAG,IAAA,EAAM,KAAM,EAAA,CAAA;AAAA,GAC1B;AAAA,EAEA,aAAa,WACX,GACuC,EAAA;AACvC,IAAM,MAAA,KAAA,GAAQ,IAAI,KAAM,EAAA,CAAA;AAExB,IAAM,KAAA,CAAA,YAAA,CAAa,KAAO,EAAA,GAAA,EAAK,GAAG,CAAA,CAAA;AAElC,IAAM,MAAA,eAAA,GAAkB,YAAY,QAAS,CAAA,eAAA,CAAA;AAC7C,IAAM,MAAA,QAAA,GAAW,MAAM,eAAA,CAAgB,OAAQ,CAAA;AAAA,MAC7C,IAAA,EAAM,EAAE,SAAA,EAAW,KAAM,EAAA;AAAA,KAC1B,CAAA,CAAA;AAED,IAAO,OAAA;AAAA,MACL,GAAG,QAAA;AAAA,MACH,IAAM,EAAA;AAAA,QACJ,GAAG,QAAS,CAAA,IAAA;AAAA,QACZ,IAAM,EAAA,QAAA,CAAS,IAAK,CAAA,IAAA,GAAO,CAAC,CAAK,IAAA,IAAA;AAAA,OACnC;AAAA,KACF,CAAA;AAAA,GACF;AACF,CAAA;AAEC,MAAA,CAAe,WAAc,GAAA,WAAA,CAAA;AAE9B,eAAA,CAAgB,WAAW,CAAA;;;;"}
1
+ {"version":3,"file":"ConfigTable.js","sources":["../../../../src/dataview/config/ConfigTable.ts"],"sourcesContent":["import { Where } from \"@maketribe/request\";\r\nimport {\r\n DataTable,\r\n DataTableOptions,\r\n TableColumn,\r\n TableActionColumn,\r\n} from \"@maketribe/dm\";\r\nimport { Config } from \"./ConfigForm\";\r\nimport { R, ResponseConfig } from \"@maketribe/request\";\r\nimport { defineDataTable } from \"../../define-data-table\";\r\nimport { MSAppClient } from \"../../core\";\r\n\r\nexport class ConfigTable extends DataTable<Config> {\r\n private static _instance: ConfigTable | null = null;\r\n\r\n static get instance(): ConfigTable {\r\n if (!ConfigTable._instance) {\r\n ConfigTable._instance = new ConfigTable();\r\n ConfigTable._instance.dataFilter.setReady();\r\n }\r\n\r\n return ConfigTable._instance;\r\n }\r\n\r\n constructor(options: DataTableOptions = {}) {\r\n super({ name: \"ms-cfg\", ...options });\r\n }\r\n\r\n protected async initialize() {\r\n await super.initialize();\r\n if (!MSAppClient.instance?.userSession?.userInfo?.isSuper) {\r\n this.buttonTools.splice(2, 1)\r\n }\r\n this.setColumns([\r\n new TableColumn({ name: \"key\", label: \"配置键\" }),\r\n new TableColumn({ name: \"memo\", label: \"备注\" }),\r\n new TableActionColumn(),\r\n ]);\r\n }\r\n\r\n formatItem(item: Config): Config {\r\n let value = item.value;\r\n\r\n try {\r\n value = JSON.parse(value);\r\n } catch (e) { }\r\n\r\n return { ...item, value };\r\n }\r\n\r\n static async loadConfig<T = any>(\r\n key: string\r\n ): Promise<ResponseConfig<R<Config<T>>>> {\r\n const where = new Where();\r\n\r\n where.addCondition(\"key\", \"=\", key);\r\n\r\n const dataViewRequest = ConfigTable.instance.dataViewRequest;\r\n const response = await dataViewRequest.allList({\r\n data: { condition: where },\r\n });\r\n\r\n return {\r\n ...response,\r\n data: {\r\n ...response.data,\r\n data: response.data.data?.[0] ?? null,\r\n },\r\n };\r\n }\r\n}\r\n\r\n(window as any).ConfigTable = ConfigTable;\r\n\r\ndefineDataTable(ConfigTable);\r\n"],"names":[],"mappings":";;;;;;;;;AAYO,MAAM,oBAAoB,SAAkB,CAAA;AAAA,EACjD,OAAe,SAAgC,GAAA,IAAA,CAAA;AAAA,EAE/C,WAAW,QAAwB,GAAA;AACjC,IAAI,IAAA,CAAC,YAAY,SAAW,EAAA;AAC1B,MAAY,WAAA,CAAA,SAAA,GAAY,IAAI,WAAY,EAAA,CAAA;AACxC,MAAY,WAAA,CAAA,SAAA,CAAU,WAAW,QAAS,EAAA,CAAA;AAAA,KAC5C;AAEA,IAAA,OAAO,WAAY,CAAA,SAAA,CAAA;AAAA,GACrB;AAAA,EAEA,WAAA,CAAY,OAA4B,GAAA,EAAI,EAAA;AAC1C,IAAA,KAAA,CAAM,EAAE,IAAA,EAAM,QAAU,EAAA,GAAG,SAAS,CAAA,CAAA;AAAA,GACtC;AAAA,EAEA,MAAgB,UAAa,GAAA;AAC3B,IAAA,MAAM,MAAM,UAAW,EAAA,CAAA;AACvB,IAAA,IAAI,CAAC,WAAA,CAAY,QAAU,EAAA,WAAA,EAAa,UAAU,OAAS,EAAA;AACzD,MAAK,IAAA,CAAA,WAAA,CAAY,MAAO,CAAA,CAAA,EAAG,CAAC,CAAA,CAAA;AAAA,KAC9B;AACA,IAAA,IAAA,CAAK,UAAW,CAAA;AAAA,MACd,IAAI,WAAY,CAAA,EAAE,MAAM,KAAO,EAAA,KAAA,EAAO,sBAAO,CAAA;AAAA,MAC7C,IAAI,WAAY,CAAA,EAAE,MAAM,MAAQ,EAAA,KAAA,EAAO,gBAAM,CAAA;AAAA,MAC7C,IAAI,iBAAkB,EAAA;AAAA,KACvB,CAAA,CAAA;AAAA,GACH;AAAA,EAEA,WAAW,IAAsB,EAAA;AAC/B,IAAA,IAAI,QAAQ,IAAK,CAAA,KAAA,CAAA;AAEjB,IAAI,IAAA;AACF,MAAQ,KAAA,GAAA,IAAA,CAAK,MAAM,KAAK,CAAA,CAAA;AAAA,aACjB,CAAG,EAAA;AAAA,KAAE;AAEd,IAAO,OAAA,EAAE,GAAG,IAAA,EAAM,KAAM,EAAA,CAAA;AAAA,GAC1B;AAAA,EAEA,aAAa,WACX,GACuC,EAAA;AACvC,IAAM,MAAA,KAAA,GAAQ,IAAI,KAAM,EAAA,CAAA;AAExB,IAAM,KAAA,CAAA,YAAA,CAAa,KAAO,EAAA,GAAA,EAAK,GAAG,CAAA,CAAA;AAElC,IAAM,MAAA,eAAA,GAAkB,YAAY,QAAS,CAAA,eAAA,CAAA;AAC7C,IAAM,MAAA,QAAA,GAAW,MAAM,eAAA,CAAgB,OAAQ,CAAA;AAAA,MAC7C,IAAA,EAAM,EAAE,SAAA,EAAW,KAAM,EAAA;AAAA,KAC1B,CAAA,CAAA;AAED,IAAO,OAAA;AAAA,MACL,GAAG,QAAA;AAAA,MACH,IAAM,EAAA;AAAA,QACJ,GAAG,QAAS,CAAA,IAAA;AAAA,QACZ,IAAM,EAAA,QAAA,CAAS,IAAK,CAAA,IAAA,GAAO,CAAC,CAAK,IAAA,IAAA;AAAA,OACnC;AAAA,KACF,CAAA;AAAA,GACF;AACF,CAAA;AAEC,MAAA,CAAe,WAAc,GAAA,WAAA,CAAA;AAE9B,eAAA,CAAgB,WAAW,CAAA;;;;"}
@@ -1,5 +1,10 @@
1
1
  import { DataTable, TableColumn, TableActionColumn, EditButton, DeleteButton, ActionButton, Messager } from '@maketribe/dm';
2
2
  import { defineDataTable } from '../../define-data-table.js';
3
+ import 'vue';
4
+ import 'element-plus';
5
+ import '@maketribe/utils';
6
+ import '../../core/DataModelDefines.js';
7
+ import { MSAppClient } from '../../core/MSAppClient.js';
3
8
 
4
9
  class DenyIPAccessListTable extends DataTable {
5
10
  constructor(options = {}) {
@@ -7,6 +12,9 @@ class DenyIPAccessListTable extends DataTable {
7
12
  }
8
13
  async initialize() {
9
14
  await super.initialize();
15
+ if (!MSAppClient.instance?.userSession?.userInfo?.isSuper) {
16
+ this.buttonTools.splice(2, 1);
17
+ }
10
18
  this.setColumns([
11
19
  new TableColumn({ name: "ipAddress", label: "IP\u5730\u5740" }),
12
20
  new TableColumn({ name: "createdAt", label: "\u521B\u5EFA\u65F6\u95F4" }),
@@ -1 +1 @@
1
- {"version":3,"file":"DenyIPAccessListTable.js","sources":["../../../../src/dataview/deny-ip-access-list/DenyIPAccessListTable.ts"],"sourcesContent":["import {\r\n ActionButton,\r\n DataTable,\r\n DeleteButton,\r\n EditButton,\r\n TableActionColumn,\r\n TableColumn,\r\n Messager,\r\n} from \"@maketribe/dm\";\r\nimport { defineDataTable } from \"../../define-data-table\";\r\nimport { DenyIPAccessList } from \"./DenyIPAccessListForm\";\r\n\r\nexport class DenyIPAccessListTable<\r\n T = DenyIPAccessList,\r\n F = T\r\n> extends DataTable<T, F> {\r\n constructor(options = {}) {\r\n super({ name: \"ms-deny-access-ip-list\", ...options });\r\n }\r\n\r\n async initialize() {\r\n await super.initialize();\r\n\r\n this.setColumns([\r\n new TableColumn({ name: \"ipAddress\", label: \"IP地址\" }),\r\n new TableColumn({ name: \"createdAt\", label: \"创建时间\" }),\r\n new TableActionColumn({\r\n width: \"180px\",\r\n buttons: [\r\n new EditButton(),\r\n new DeleteButton({ label: \"移除\" }),\r\n new ActionButton({\r\n label: \"禁用\",\r\n type: \"danger\",\r\n handler: async (row) => {\r\n this.loadingManager.startLoading();\r\n\r\n const result = await this.dataViewRequest.callDVRequest({\r\n action: `disable/${row.id}`,\r\n });\r\n\r\n this.loadingManager.completeLoading();\r\n if (result.data.code !== 200) {\r\n Messager.instance.error({\r\n message: result.data.msg || \"禁用失败\",\r\n });\r\n return;\r\n }\r\n Messager.instance.success({ message: \"禁用成功\" });\r\n\r\n this.load();\r\n },\r\n predicate: (row) => row.valid === 1,\r\n }),\r\n new ActionButton({\r\n label: \"启用\",\r\n type: \"success\",\r\n handler: async (row) => {\r\n this.loadingManager.startLoading();\r\n\r\n const result = await this.dataViewRequest.callDVRequest({\r\n action: `enable/${row.id}`,\r\n });\r\n\r\n this.loadingManager.completeLoading();\r\n if (result.data.code !== 200) {\r\n Messager.instance.error({\r\n message: result.data.msg || \"启用失败\",\r\n });\r\n return;\r\n }\r\n Messager.instance.success({ message: \"启用成功\" });\r\n\r\n this.load();\r\n },\r\n predicate: (row) => row.valid === 0,\r\n }),\r\n ],\r\n }),\r\n ]);\r\n }\r\n}\r\n\r\ndefineDataTable(DenyIPAccessListTable);\r\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"DenyIPAccessListTable.js","sources":["../../../../src/dataview/deny-ip-access-list/DenyIPAccessListTable.ts"],"sourcesContent":["import {\r\n ActionButton,\r\n DataTable,\r\n DeleteButton,\r\n EditButton,\r\n TableActionColumn,\r\n TableColumn,\r\n Messager,\r\n} from \"@maketribe/dm\";\r\nimport { defineDataTable } from \"../../define-data-table\";\r\nimport { DenyIPAccessList } from \"./DenyIPAccessListForm\";\r\nimport { MSAppClient } from \"../../core\";\r\n\r\nexport class DenyIPAccessListTable<\r\n T = DenyIPAccessList,\r\n F = T\r\n> extends DataTable<T, F> {\r\n constructor(options = {}) {\r\n super({ name: \"ms-deny-access-ip-list\", ...options });\r\n }\r\n\r\n async initialize() {\r\n await super.initialize();\r\n if (!MSAppClient.instance?.userSession?.userInfo?.isSuper) {\r\n this.buttonTools.splice(2, 1)\r\n }\r\n this.setColumns([\r\n new TableColumn({ name: \"ipAddress\", label: \"IP地址\" }),\r\n new TableColumn({ name: \"createdAt\", label: \"创建时间\" }),\r\n new TableActionColumn({\r\n width: \"180px\",\r\n buttons: [\r\n new EditButton(),\r\n new DeleteButton({ label: \"移除\" }),\r\n new ActionButton({\r\n label: \"禁用\",\r\n type: \"danger\",\r\n handler: async (row) => {\r\n this.loadingManager.startLoading();\r\n\r\n const result = await this.dataViewRequest.callDVRequest({\r\n action: `disable/${row.id}`,\r\n });\r\n\r\n this.loadingManager.completeLoading();\r\n if (result.data.code !== 200) {\r\n Messager.instance.error({\r\n message: result.data.msg || \"禁用失败\",\r\n });\r\n return;\r\n }\r\n Messager.instance.success({ message: \"禁用成功\" });\r\n\r\n this.load();\r\n },\r\n predicate: (row) => row.valid === 1,\r\n }),\r\n new ActionButton({\r\n label: \"启用\",\r\n type: \"success\",\r\n handler: async (row) => {\r\n this.loadingManager.startLoading();\r\n\r\n const result = await this.dataViewRequest.callDVRequest({\r\n action: `enable/${row.id}`,\r\n });\r\n\r\n this.loadingManager.completeLoading();\r\n if (result.data.code !== 200) {\r\n Messager.instance.error({\r\n message: result.data.msg || \"启用失败\",\r\n });\r\n return;\r\n }\r\n Messager.instance.success({ message: \"启用成功\" });\r\n\r\n this.load();\r\n },\r\n predicate: (row) => row.valid === 0,\r\n }),\r\n ],\r\n }),\r\n ]);\r\n }\r\n}\r\n\r\ndefineDataTable(DenyIPAccessListTable);\r\n"],"names":[],"mappings":"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"}
@@ -1,5 +1,10 @@
1
1
  import { DataTable, TableColumn, TableActionColumn, EditButton, DeleteButton, ActionButton, Messager } from '@maketribe/dm';
2
2
  import { defineDataTable } from '../../define-data-table.js';
3
+ import 'vue';
4
+ import 'element-plus';
5
+ import '@maketribe/utils';
6
+ import '../../core/DataModelDefines.js';
7
+ import { MSAppClient } from '../../core/MSAppClient.js';
3
8
 
4
9
  class IPWhitelistTable extends DataTable {
5
10
  constructor(options = {}) {
@@ -7,6 +12,9 @@ class IPWhitelistTable extends DataTable {
7
12
  }
8
13
  async initialize() {
9
14
  await super.initialize();
15
+ if (!MSAppClient.instance?.userSession?.userInfo?.isSuper) {
16
+ this.buttonTools.splice(2, 1);
17
+ }
10
18
  this.setColumns([
11
19
  new TableColumn({ name: "ipAddress", label: "IP\u5730\u5740" }),
12
20
  new TableColumn({ name: "createdAt", label: "\u521B\u5EFA\u65F6\u95F4" }),
@@ -1 +1 @@
1
- {"version":3,"file":"IPWhitelistTable.js","sources":["../../../../src/dataview/ip-white-list/IPWhitelistTable.ts"],"sourcesContent":["import {\r\n ActionButton,\r\n DataTable,\r\n DeleteButton,\r\n EditButton,\r\n TableActionColumn,\r\n TableColumn,\r\n Messager,\r\n} from \"@maketribe/dm\";\r\nimport { defineDataTable } from \"../../define-data-table\";\r\nimport { IPWhitelist } from \"./IPWhitelistForm\";\r\n\r\nexport class IPWhitelistTable<T = IPWhitelist, F = T> extends DataTable<T, F> {\r\n constructor(options = {}) {\r\n super({ name: \"ms-access-ip-whitelist\", ...options });\r\n }\r\n\r\n async initialize() {\r\n await super.initialize();\r\n\r\n this.setColumns([\r\n new TableColumn({ name: \"ipAddress\", label: \"IP地址\" }),\r\n new TableColumn({ name: \"createdAt\", label: \"创建时间\" }),\r\n new TableActionColumn({\r\n width: \"180px\",\r\n buttons: [\r\n new EditButton(),\r\n new DeleteButton({ label: \"移除\" }),\r\n new ActionButton({\r\n label: \"禁用\",\r\n type: \"danger\",\r\n handler: async (row) => {\r\n this.loadingManager.startLoading();\r\n\r\n const result = await this.dataViewRequest.callDVRequest({\r\n action: `disable/${row.id}`,\r\n });\r\n\r\n this.loadingManager.completeLoading();\r\n if (result.data.code !== 200) {\r\n Messager.instance.error({\r\n message: result.data.msg || \"禁用失败\",\r\n });\r\n return;\r\n }\r\n Messager.instance.success({ message: \"禁用成功\" });\r\n\r\n this.load();\r\n },\r\n predicate: (row) => row.valid === 1,\r\n }),\r\n new ActionButton({\r\n label: \"启用\",\r\n type: \"success\",\r\n handler: async (row) => {\r\n this.loadingManager.startLoading();\r\n\r\n const result = await this.dataViewRequest.callDVRequest({\r\n action: `enable/${row.id}`,\r\n });\r\n\r\n this.loadingManager.completeLoading();\r\n if (result.data.code !== 200) {\r\n Messager.instance.error({\r\n message: result.data.msg || \"启用失败\",\r\n });\r\n return;\r\n }\r\n Messager.instance.success({ message: \"启用成功\" });\r\n\r\n this.load();\r\n },\r\n predicate: (row) => row.valid === 0,\r\n }),\r\n ],\r\n }),\r\n ]);\r\n }\r\n}\r\n\r\ndefineDataTable(IPWhitelistTable);\r\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"IPWhitelistTable.js","sources":["../../../../src/dataview/ip-white-list/IPWhitelistTable.ts"],"sourcesContent":["import {\r\n ActionButton,\r\n DataTable,\r\n DeleteButton,\r\n EditButton,\r\n TableActionColumn,\r\n TableColumn,\r\n Messager,\r\n} from \"@maketribe/dm\";\r\nimport { defineDataTable } from \"../../define-data-table\";\r\nimport { IPWhitelist } from \"./IPWhitelistForm\";\r\nimport { MSAppClient } from \"../../core\";\r\n\r\nexport class IPWhitelistTable<T = IPWhitelist, F = T> extends DataTable<T, F> {\r\n constructor(options = {}) {\r\n super({ name: \"ms-access-ip-whitelist\", ...options });\r\n }\r\n\r\n async initialize() {\r\n await super.initialize();\r\n if (!MSAppClient.instance?.userSession?.userInfo?.isSuper) {\r\n this.buttonTools.splice(2, 1)\r\n }\r\n this.setColumns([\r\n new TableColumn({ name: \"ipAddress\", label: \"IP地址\" }),\r\n new TableColumn({ name: \"createdAt\", label: \"创建时间\" }),\r\n new TableActionColumn({\r\n width: \"180px\",\r\n buttons: [\r\n new EditButton(),\r\n new DeleteButton({ label: \"移除\" }),\r\n new ActionButton({\r\n label: \"禁用\",\r\n type: \"danger\",\r\n handler: async (row) => {\r\n this.loadingManager.startLoading();\r\n\r\n const result = await this.dataViewRequest.callDVRequest({\r\n action: `disable/${row.id}`,\r\n });\r\n\r\n this.loadingManager.completeLoading();\r\n if (result.data.code !== 200) {\r\n Messager.instance.error({\r\n message: result.data.msg || \"禁用失败\",\r\n });\r\n return;\r\n }\r\n Messager.instance.success({ message: \"禁用成功\" });\r\n\r\n this.load();\r\n },\r\n predicate: (row) => row.valid === 1,\r\n }),\r\n new ActionButton({\r\n label: \"启用\",\r\n type: \"success\",\r\n handler: async (row) => {\r\n this.loadingManager.startLoading();\r\n\r\n const result = await this.dataViewRequest.callDVRequest({\r\n action: `enable/${row.id}`,\r\n });\r\n\r\n this.loadingManager.completeLoading();\r\n if (result.data.code !== 200) {\r\n Messager.instance.error({\r\n message: result.data.msg || \"启用失败\",\r\n });\r\n return;\r\n }\r\n Messager.instance.success({ message: \"启用成功\" });\r\n\r\n this.load();\r\n },\r\n predicate: (row) => row.valid === 0,\r\n }),\r\n ],\r\n }),\r\n ]);\r\n }\r\n}\r\n\r\ndefineDataTable(IPWhitelistTable);\r\n"],"names":[],"mappings":"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"}
@@ -19,39 +19,50 @@ class MemberTable extends DataTable {
19
19
  async initialize() {
20
20
  await super.initialize();
21
21
  await this.initActiveMemberForm();
22
+ if (!MSAppClient.instance?.userSession?.userInfo?.isSuper) {
23
+ this.buttonTools.splice(2, 1);
24
+ }
22
25
  if (!MSAppClient.instance?.userSession?.userInfo?.isSuper) {
23
26
  this.dataFilter.getDefaultGroup().addCondition("isSuper", "!=", 1);
24
27
  }
25
- this.dataFilter.setColumns([new FilterColumn({
26
- name: "createdAt",
27
- label: "\u521B\u5EFA\u65F6\u95F4",
28
- componentInfo: "MKConditionDate",
29
- defaultValue: ["2024-01-20 00:00:00", "2024-01-21 00:00:00"]
30
- }), new FilterColumn({
31
- name: "name",
32
- label: "\u59D3\u540D",
33
- componentInfo: "MKConditionInput"
34
- }), new FilterColumn({
35
- name: "wechatNo",
36
- label: "\u5FAE\u4FE1\u53F7",
37
- componentInfo: "MKConditionInput"
38
- }), new FilterColumn({
39
- name: "nickName",
40
- label: "\u6635\u79F0",
41
- componentInfo: "MKConditionInput"
42
- }), new FilterColumn({
43
- name: "email",
44
- label: "\u90AE\u7BB1",
45
- componentInfo: "MKConditionInput"
46
- }), new FilterColumn({
47
- name: "phone",
48
- label: "\u624B\u673A\u53F7",
49
- componentInfo: "MKConditionInput"
50
- }), new FilterColumn({
51
- name: "account",
52
- label: "\u8D26\u53F7",
53
- componentInfo: "MKConditionInput"
54
- })]);
28
+ this.dataFilter.setColumns([
29
+ // new FilterColumn({
30
+ // name: "createdAt",
31
+ // label: "创建时间",
32
+ // componentInfo: "MKConditionDate",
33
+ // defaultValue: ["2024-01-20 00:00:00", "2024-01-21 00:00:00"]
34
+ // }),
35
+ new FilterColumn({
36
+ name: "name",
37
+ label: "\u59D3\u540D",
38
+ componentInfo: "MKConditionInput"
39
+ }),
40
+ new FilterColumn({
41
+ name: "wechatNo",
42
+ label: "\u5FAE\u4FE1\u53F7",
43
+ componentInfo: "MKConditionInput"
44
+ }),
45
+ new FilterColumn({
46
+ name: "nickName",
47
+ label: "\u6635\u79F0",
48
+ componentInfo: "MKConditionInput"
49
+ }),
50
+ new FilterColumn({
51
+ name: "email",
52
+ label: "\u90AE\u7BB1",
53
+ componentInfo: "MKConditionInput"
54
+ }),
55
+ new FilterColumn({
56
+ name: "phone",
57
+ label: "\u624B\u673A\u53F7",
58
+ componentInfo: "MKConditionInput"
59
+ }),
60
+ new FilterColumn({
61
+ name: "account",
62
+ label: "\u8D26\u53F7",
63
+ componentInfo: "MKConditionInput"
64
+ })
65
+ ]);
55
66
  this.setColumns([
56
67
  new TableColumn({
57
68
  name: "id",