@maketribe/ms-app 3.0.19 → 3.0.21

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 (33) hide show
  1. package/dist/cjs/components/material-list/material-list.vue2.js +4 -16
  2. package/dist/cjs/components/material-list/material-list.vue2.js.map +1 -1
  3. package/dist/cjs/components/upload-file/ui/upload-image/upload-image-options.d.ts +2 -2
  4. package/dist/cjs/components/upload-file/ui/upload-image/upload-image-options.js +17 -2
  5. package/dist/cjs/components/upload-file/ui/upload-image/upload-image-options.js.map +1 -1
  6. package/dist/cjs/core/MSAppClient.js +1 -5
  7. package/dist/cjs/core/MSAppClient.js.map +1 -1
  8. package/dist/cjs/dataview/member/MemberTable.js +1 -2
  9. package/dist/cjs/dataview/member/MemberTable.js.map +1 -1
  10. package/dist/cjs/layouts/components/bar/index.js +5 -4
  11. package/dist/cjs/layouts/components/bar/index.js.map +1 -1
  12. package/dist/cjs/page/login/index.vue2.js +2 -0
  13. package/dist/cjs/page/login/index.vue2.js.map +1 -1
  14. package/dist/esm/components/material-list/material-list.vue2.js +4 -16
  15. package/dist/esm/components/material-list/material-list.vue2.js.map +1 -1
  16. package/dist/esm/components/upload-file/ui/upload-image/upload-image-options.d.ts +2 -2
  17. package/dist/esm/components/upload-file/ui/upload-image/upload-image-options.js +17 -2
  18. package/dist/esm/components/upload-file/ui/upload-image/upload-image-options.js.map +1 -1
  19. package/dist/esm/core/MSAppClient.js +1 -5
  20. package/dist/esm/core/MSAppClient.js.map +1 -1
  21. package/dist/esm/dataview/member/MemberTable.js +1 -2
  22. package/dist/esm/dataview/member/MemberTable.js.map +1 -1
  23. package/dist/esm/layouts/components/bar/index.js +5 -4
  24. package/dist/esm/layouts/components/bar/index.js.map +1 -1
  25. package/dist/esm/page/login/index.vue2.js +2 -0
  26. package/dist/esm/page/login/index.vue2.js.map +1 -1
  27. package/package.json +1 -1
  28. package/src/components/material-list/material-list.vue +2 -1
  29. package/src/components/upload-file/ui/upload-image/upload-image-options.ts +5 -3
  30. package/src/core/MSAppClient.ts +6 -5
  31. package/src/dataview/member/MemberTable.tsx +1 -6
  32. package/src/layouts/components/bar/index.tsx +10 -6
  33. package/src/page/login/index.vue +2 -0
@@ -2,20 +2,6 @@
2
2
 
3
3
  var vue = require('vue');
4
4
  var elementPlus = require('element-plus');
5
- var uploadFile = require('../upload-file/upload-file.js');
6
- require('@maketribe/request');
7
- require('@maketribe/dm');
8
- require('@maketribe/utils');
9
- require('../../core/DataModelDefines.js');
10
- require('vue-router');
11
- require('@maketribe/locale');
12
- require('../material-select/index.js');
13
- require('../upload-file/context/material-upload-context.js');
14
- require('../upload-file/context/material-upload-context-options.js');
15
- var webFileUploadContext = require('../upload-file/context/web-file-upload-context.js');
16
- require('../upload-file/context/web-file-upload-context-options.js');
17
- require('../upload-file/ui/upload-image/index.js');
18
- require('../upload-file/upload-file-options.js');
19
5
  var materialGroup = require('./material-group.vue.js');
20
6
  var materialItem = require('./material-item.vue.js');
21
7
  var materialListOptions = require('./material-list-options.js');
@@ -93,6 +79,8 @@ var _sfc_main = /* @__PURE__ */ vue.defineComponent({
93
79
  };
94
80
  return (_ctx, _cache) => {
95
81
  const _component_ElButton = vue.resolveComponent("ElButton");
82
+ const _component_MKUploadFile = vue.resolveComponent("MKUploadFile");
83
+ const _component_MKWebFileUploadContext = vue.resolveComponent("MKWebFileUploadContext");
96
84
  const _component_ElScrollbar = vue.resolveComponent("ElScrollbar");
97
85
  const _directive_loading = vue.resolveDirective("loading");
98
86
  return vue.openBlock(), vue.createElementBlock("div", _hoisted_1, [
@@ -129,12 +117,12 @@ var _sfc_main = /* @__PURE__ */ vue.defineComponent({
129
117
  1
130
118
  /* TEXT */
131
119
  ),
132
- vue.createVNode(vue.unref(webFileUploadContext.MKWebFileUploadContext), {
120
+ vue.createVNode(_component_MKWebFileUploadContext, {
133
121
  "web-file-upload": _ctx.materialMan.upload,
134
122
  accept: currentMaterialType.value.accept
135
123
  }, {
136
124
  default: vue.withCtx(() => [
137
- vue.createVNode(vue.unref(uploadFile.MKUploadFile), null, {
125
+ vue.createVNode(_component_MKUploadFile, null, {
138
126
  default: vue.withCtx(() => [
139
127
  vue.createVNode(_component_ElButton, { type: "primary" }, {
140
128
  default: vue.withCtx(() => [
@@ -1 +1 @@
1
- {"version":3,"file":"material-list.vue2.js","sources":["../../../../src/components/material-list/material-list.vue"],"sourcesContent":["<template>\n <div class=\"mk-material-list\">\n <MaterialGroup :material-man=\"materialMan\" />\n <div class=\"mk-material-list__main\" v-loading=\"loading\">\n <div class=\"mk-material-list__header\">\n <div class=\"mk-material-list__header-left\">\n <div class=\"mk-material-list__types\">\n <div\n v-for=\"item of materialTypes\"\n :key=\"item.value\"\n :class=\"[\n 'mk-material-list__type',\n currentMaterialTypeId === item.value ? 'is-active' : '',\n ]\"\n @click=\"handleMaterialTypeClick(item)\"\n >\n {{ item.label }}\n </div>\n </div>\n </div>\n <div class=\"mk-material-list__header-right\">\n <template v-if=\"currentMaterialType\">\n {{ currentMaterialType.label }}大小不超过\n {{ currentMaterialType.limit }} M\n <MKWebFileUploadContext\n :web-file-upload=\"materialMan.upload\"\n :accept=\"currentMaterialType.accept\"\n >\n <MKUploadFile>\n <ElButton type=\"primary\">\n 选择{{ currentMaterialType.label }}\n </ElButton>\n </MKUploadFile>\n </MKWebFileUploadContext>\n </template>\n </div>\n </div>\n\n <div class=\"mk-material-list__body\">\n <ElScrollbar height=\"100%\">\n <div class=\"mk-material-list__wrapper\">\n <MaterialItem\n v-for=\"material of materialList\"\n :key=\"material.id\"\n :class=\"[\n 'mk-material-list__item',\n value === material.path ? 'is-current' : '',\n ]\"\n :material-table=\"materialTable\"\n :material=\"material\"\n @click.capture=\"handleMaterialItemClick($event, material)\"\n />\n </div>\n </ElScrollbar>\n <div class=\"mk-material-list__footer\">\n <ElPagination\n class=\"mk-data-table-pagination\"\n :background=\"true\"\n :pageSizes=\"unref(pageSizes)\"\n :currentPage=\"unref(currentPage)\"\n :pageSize=\"unref(pageSize)\"\n :total=\"unref(totalRecCount)\"\n layout=\"prev, pager, next\"\n @current-change=\"changeCurrentPage\"\n @size-change=\"changePageSize\"\n />\n </div>\n </div>\n </div>\n </div>\n</template>\n\n<script setup lang=\"ts\">\nimport { computed, unref } from \"vue\";\nimport { ElPagination } from \"element-plus\";\nimport { MKUploadFile, MKWebFileUploadContext } from \"../upload-file\";\nimport { MaterialType, Material } from \"../../dataview\";\nimport MaterialGroup from \"./material-group.vue\";\nimport MaterialItem from \"./material-item.vue\";\nimport { materialListProps, materialListEmits } from \"./material-list-options\";\n\ndefineOptions({ name: \"MKMaterialList\" });\n\nconst props = defineProps(materialListProps);\n\nconst emit = defineEmits(materialListEmits);\n\nprops.materialMan.init();\n\nconst loading = computed(() => props.materialMan.materialTable.loading);\n\nconst value = computed({\n get: () => {\n return props.selectable ? props.selectedPath ?? null : null;\n },\n set: (v) => {\n emit(\"update:selected-path\", v);\n },\n});\n\nconst materialTable = computed(() => props.materialMan.materialTable);\nconst pageSizes = computed(() => unref(materialTable).pageSizes);\nconst currentPage = computed({\n get: () => unref(materialTable).currentPage,\n set: (v) => {\n unref(materialTable).pageTo(v);\n },\n});\nconst pageSize = computed({\n get: () => unref(materialTable).pageSize,\n set: (v) => {\n unref(materialTable).setPageSize(v);\n },\n});\nconst totalRecCount = computed(() => unref(materialTable).totalRecCount);\nconst changeCurrentPage = (v: number) => {\n currentPage.value = v;\n};\nconst changePageSize = (v: number) => {\n pageSize.value = v;\n};\n\nconst materialList = computed(() => unref(materialTable).getList());\nconst materialTypes = computed(() => props.materialMan.getMaterialType());\nconst currentMaterialTypeId = computed(\n () => props.materialMan.currentMaterialTypeId\n);\n\nconst currentMaterialType = computed(\n () => props.materialMan.currentMaterialType\n);\n\nconst handleMaterialTypeClick = (materialType: MaterialType) => {\n if (materialType.value === unref(currentMaterialTypeId)) {\n return;\n }\n\n props.materialMan.setCurrentMaterialTypeId(materialType.value);\n};\n\nconst handleMaterialItemClick = (event: MouseEvent, material: Material) => {\n if (!props.selectable) {\n return;\n }\n\n event.preventDefault();\n event.stopPropagation();\n\n value.value = material.path;\n emit(\"selectedChange\", material);\n};\n</script>\n"],"names":["computed","unref"],"mappings":"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"}
1
+ {"version":3,"file":"material-list.vue2.js","sources":["../../../../src/components/material-list/material-list.vue"],"sourcesContent":["<template>\n <div class=\"mk-material-list\">\n <MaterialGroup :material-man=\"materialMan\" />\n <div class=\"mk-material-list__main\" v-loading=\"loading\">\n <div class=\"mk-material-list__header\">\n <div class=\"mk-material-list__header-left\">\n <div class=\"mk-material-list__types\">\n <div\n v-for=\"item of materialTypes\"\n :key=\"item.value\"\n :class=\"[\n 'mk-material-list__type',\n currentMaterialTypeId === item.value ? 'is-active' : '',\n ]\"\n @click=\"handleMaterialTypeClick(item)\"\n >\n {{ item.label }}\n </div>\n </div>\n </div>\n <div class=\"mk-material-list__header-right\">\n <template v-if=\"currentMaterialType\">\n {{ currentMaterialType.label }}大小不超过\n {{ currentMaterialType.limit }} M\n <MKWebFileUploadContext\n :web-file-upload=\"materialMan.upload\"\n :accept=\"currentMaterialType.accept\"\n >\n <MKUploadFile>\n <ElButton type=\"primary\">\n 选择{{ currentMaterialType.label }}\n </ElButton>\n </MKUploadFile>\n </MKWebFileUploadContext>\n </template>\n </div>\n </div>\n\n <div class=\"mk-material-list__body\">\n <ElScrollbar height=\"100%\">\n <div class=\"mk-material-list__wrapper\">\n <MaterialItem\n v-for=\"material of materialList\"\n :key=\"material.id\"\n :class=\"[\n 'mk-material-list__item',\n value === material.path ? 'is-current' : '',\n ]\"\n :material-table=\"materialTable\"\n :material=\"material\"\n @click.capture=\"handleMaterialItemClick($event, material)\"\n />\n </div>\n </ElScrollbar>\n <div class=\"mk-material-list__footer\">\n <ElPagination\n class=\"mk-data-table-pagination\"\n :background=\"true\"\n :pageSizes=\"unref(pageSizes)\"\n :currentPage=\"unref(currentPage)\"\n :pageSize=\"unref(pageSize)\"\n :total=\"unref(totalRecCount)\"\n layout=\"prev, pager, next\"\n @current-change=\"changeCurrentPage\"\n @size-change=\"changePageSize\"\n />\n </div>\n </div>\n </div>\n </div>\n</template>\n\n<script setup lang=\"ts\">\nimport { computed, unref } from \"vue\";\nimport { ElPagination } from \"element-plus\";\n// import { MKUploadFile } from \"../upload-file/upload-file\";\n// import { MKWebFileUploadContext } from \"../upload-file/context/web-file-upload-context\";\nimport { MaterialType, Material } from \"../../dataview\";\nimport MaterialGroup from \"./material-group.vue\";\nimport MaterialItem from \"./material-item.vue\";\nimport { materialListProps, materialListEmits } from \"./material-list-options\";\n\ndefineOptions({ name: \"MKMaterialList\" });\n\nconst props = defineProps(materialListProps);\n\nconst emit = defineEmits(materialListEmits);\n\nprops.materialMan.init();\n\nconst loading = computed(() => props.materialMan.materialTable.loading);\n\nconst value = computed({\n get: () => {\n return props.selectable ? props.selectedPath ?? null : null;\n },\n set: (v) => {\n emit(\"update:selected-path\", v);\n },\n});\n\nconst materialTable = computed(() => props.materialMan.materialTable);\nconst pageSizes = computed(() => unref(materialTable).pageSizes);\nconst currentPage = computed({\n get: () => unref(materialTable).currentPage,\n set: (v) => {\n unref(materialTable).pageTo(v);\n },\n});\nconst pageSize = computed({\n get: () => unref(materialTable).pageSize,\n set: (v) => {\n unref(materialTable).setPageSize(v);\n },\n});\nconst totalRecCount = computed(() => unref(materialTable).totalRecCount);\nconst changeCurrentPage = (v: number) => {\n currentPage.value = v;\n};\nconst changePageSize = (v: number) => {\n pageSize.value = v;\n};\n\nconst materialList = computed(() => unref(materialTable).getList());\nconst materialTypes = computed(() => props.materialMan.getMaterialType());\nconst currentMaterialTypeId = computed(\n () => props.materialMan.currentMaterialTypeId\n);\n\nconst currentMaterialType = computed(\n () => props.materialMan.currentMaterialType\n);\n\nconst handleMaterialTypeClick = (materialType: MaterialType) => {\n if (materialType.value === unref(currentMaterialTypeId)) {\n return;\n }\n\n props.materialMan.setCurrentMaterialTypeId(materialType.value);\n};\n\nconst handleMaterialItemClick = (event: MouseEvent, material: Material) => {\n if (!props.selectable) {\n return;\n }\n\n event.preventDefault();\n event.stopPropagation();\n\n value.value = material.path;\n emit(\"selectedChange\", material);\n};\n</script>\n"],"names":["computed","unref"],"mappings":"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"}
@@ -1,7 +1,7 @@
1
1
  import { ExtractPropTypes } from "vue";
2
- import { UploadContext } from "../../context";
2
+ import { MaterialUploadContext, UploadContext } from "../../context";
3
3
  export declare const uploadImageProps: {
4
- readonly uploadContext: import("@maketribe/utils").PropFinalized<typeof UploadContext, unknown, unknown, () => import("../../context").MaterialUploadContext, boolean>;
4
+ readonly uploadContext: import("@maketribe/utils").PropFinalized<typeof UploadContext, unknown, unknown, () => MaterialUploadContext, boolean>;
5
5
  readonly modelValue: {
6
6
  readonly type: import("vue").PropType<import("@maketribe/utils").PropMergeType<readonly [StringConstructor, {
7
7
  (arrayLength: number): String[];
@@ -1,10 +1,25 @@
1
1
  'use strict';
2
2
 
3
3
  var utils = require('@maketribe/utils');
4
- var uploadFileOptions = require('../../upload-file-options.js');
4
+ var UploadContext = require('../../context/UploadContext.js');
5
+ require('@maketribe/request');
6
+ require('vue');
7
+ require('@maketribe/dm');
8
+ require('element-plus');
9
+ require('../../../../core/DataModelDefines.js');
10
+ require('vue-router');
11
+ require('@maketribe/locale');
12
+ var MaterialUploadContext = require('../../context/MaterialUploadContext.js');
13
+ require('../../context/material-upload-context.js');
14
+ require('../../context/material-upload-context-options.js');
15
+ require('../../context/web-file-upload-context.js');
16
+ require('../../context/web-file-upload-context-options.js');
5
17
 
6
18
  const uploadImageProps = utils.buildProps({
7
- uploadContext: uploadFileOptions.uploadFileProps.uploadContext,
19
+ uploadContext: {
20
+ type: UploadContext.UploadContext,
21
+ default: () => new MaterialUploadContext.MaterialUploadContext()
22
+ },
8
23
  modelValue: {
9
24
  type: [String, Array]
10
25
  },
@@ -1 +1 @@
1
- {"version":3,"file":"upload-image-options.js","sources":["../../../../../../src/components/upload-file/ui/upload-image/upload-image-options.ts"],"sourcesContent":["import { ExtractPropTypes } from \"vue\";\nimport { buildProps } from \"@maketribe/utils\";\nimport { uploadFileEmits, uploadFileProps } from \"../../upload-file-options\";\nimport { UploadContext } from \"../../context\";\n\nexport const uploadImageProps = buildProps({\n uploadContext: uploadFileProps.uploadContext,\n modelValue: {\n type: [String, Array<String>],\n },\n multiple: {\n type: Boolean,\n default: false,\n },\n} as const);\n\nexport type UploadImageProps = ExtractPropTypes<typeof uploadImageProps>;\n\nexport const uploadImageEmits = {\n \"update:modelValue\": (path: string | string[]) => true,\n};\n\nexport type UploadImageEmits = typeof uploadImageEmits;\n"],"names":["buildProps","uploadFileProps"],"mappings":";;;;;AAKO,MAAM,mBAAmBA,gBAAW,CAAA;AAAA,EACzC,eAAeC,iCAAgB,CAAA,aAAA;AAAA,EAC/B,UAAY,EAAA;AAAA,IACV,IAAA,EAAM,CAAC,MAAA,EAAQ,KAAa,CAAA;AAAA,GAC9B;AAAA,EACA,QAAU,EAAA;AAAA,IACR,IAAM,EAAA,OAAA;AAAA,IACN,OAAS,EAAA,KAAA;AAAA,GACX;AACF,CAAU,EAAA;AAIH,MAAM,gBAAmB,GAAA;AAAA,EAC9B,mBAAA,EAAqB,CAAC,IAA4B,KAAA,IAAA;AACpD;;;;;"}
1
+ {"version":3,"file":"upload-image-options.js","sources":["../../../../../../src/components/upload-file/ui/upload-image/upload-image-options.ts"],"sourcesContent":["import { ExtractPropTypes } from \"vue\";\nimport { buildProps } from \"@maketribe/utils\";\nimport { MaterialUploadContext, UploadContext } from \"../../context\";\n\nexport const uploadImageProps = buildProps({\n uploadContext: {\n type: UploadContext,\n default: () => new MaterialUploadContext(),\n },\n modelValue: {\n type: [String, Array<String>],\n },\n multiple: {\n type: Boolean,\n default: false,\n },\n} as const);\n\nexport type UploadImageProps = ExtractPropTypes<typeof uploadImageProps>;\n\nexport const uploadImageEmits = {\n \"update:modelValue\": (path: string | string[]) => true,\n};\n\nexport type UploadImageEmits = typeof uploadImageEmits;\n"],"names":["buildProps","UploadContext","MaterialUploadContext"],"mappings":";;;;;;;;;;;;;;;;;AAIO,MAAM,mBAAmBA,gBAAW,CAAA;AAAA,EACzC,aAAe,EAAA;AAAA,IACb,IAAM,EAAAC,2BAAA;AAAA,IACN,OAAA,EAAS,MAAM,IAAIC,2CAAsB,EAAA;AAAA,GAC3C;AAAA,EACA,UAAY,EAAA;AAAA,IACV,IAAA,EAAM,CAAC,MAAA,EAAQ,KAAa,CAAA;AAAA,GAC9B;AAAA,EACA,QAAU,EAAA;AAAA,IACR,IAAM,EAAA,OAAA;AAAA,IACN,OAAS,EAAA,KAAA;AAAA,GACX;AACF,CAAU,EAAA;AAIH,MAAM,gBAAmB,GAAA;AAAA,EAC9B,mBAAA,EAAqB,CAAC,IAA4B,KAAA,IAAA;AACpD;;;;;"}
@@ -119,11 +119,7 @@ class MSAppClient {
119
119
  this.pageManager.setMSAppCLient(this);
120
120
  this.httpRequest.getInterceptors().response.use((config) => {
121
121
  if (config.data.code === 401) {
122
- if (this.userSession) {
123
- this.userSession.lock();
124
- } else {
125
- this.vueRouter.push({ name: "login" });
126
- }
122
+ this.vueRouter.push({ name: "login" });
127
123
  }
128
124
  return config;
129
125
  });
@@ -1 +1 @@
1
- {"version":3,"file":"MSAppClient.js","sources":["../../../src/core/MSAppClient.ts"],"sourcesContent":["import {\n createRouter,\n createWebHashHistory,\n Router as VueRouter,\n} from \"vue-router\";\nimport {\n DataViewRequest,\n DVQueryable,\n HttpRequest,\n R,\n WebHttpRequest,\n} from \"@maketribe/request\";\nimport { IComponents, DataModel, Components } from \"@maketribe/dm\";\nimport { I18n } from \"@maketribe/locale\";\n\nimport { Event, md5 } from \"@maketribe/utils\";\nimport { UserSession } from \"./UserSession\";\nimport { authBeforeEach } from \"../router-middleware\";\nimport { PageManager } from \"./PageManager\";\nimport { ACCESS_TOKEN_HEADER, X_ACCESS_TOKEN_HEADER } from \"../constants\";\n\nexport type LoginResult = {\n account: string;\n email: string;\n nickName: string;\n avatarPath: string;\n};\n\nexport interface MSAppClientOptions {\n pageManager?: PageManager;\n projectName: string;\n httpRequest?: HttpRequest;\n origin: string;\n appID: string;\n logo?: string;\n locale?: string;\n vueRouter?: VueRouter;\n dataTableComponents?: IComponents;\n dataFormComponents?: IComponents;\n dataFilterComponents?: IComponents;\n whereFilterComponents?: IComponents;\n}\n\nexport class MSAppClient {\n static instance: MSAppClient | null = null;\n\n origin: string = \"\";\n\n private _options: Required<MSAppClientOptions>;\n\n projectName: string;\n\n logo: string;\n\n appID: string;\n\n userSession: UserSession | null = null;\n\n httpRequest: HttpRequest;\n\n ready: boolean = false;\n\n initd: boolean = false;\n\n pageManager: PageManager;\n\n /**\n * @deprecated\n * @description 使用 MSAppClient.instance.userSession.userInfo\n */\n get userInfo() {\n return this.userSession?.userInfo ?? null;\n }\n\n i18n: I18n;\n\n dataTableComponents: IComponents;\n dataFormComponents: IComponents;\n dataFilterComponents: IComponents;\n whereFilterComponents: IComponents;\n\n vueRouter: VueRouter;\n\n beforeInitUserSessionEvent: Event<{ userSession: UserSession }> = new Event();\n\n userSessionChangeEvent: Event<{ userSession: UserSession | null }> =\n new Event();\n\n constructor(options: MSAppClientOptions) {\n this._options = this._normalizeOptions(options);\n\n this.appID = this._options.appID;\n\n this.logo = this._options.logo;\n\n this.projectName = options.projectName;\n\n this.i18n = I18n.instance;\n this.i18n.setCurrentLanguageName(this._options.locale);\n\n this.dataTableComponents = this._options.dataTableComponents;\n this.dataFormComponents = this._options.dataFormComponents;\n this.dataFilterComponents = this._options.dataFilterComponents;\n this.whereFilterComponents = this._options.whereFilterComponents;\n\n this.vueRouter = this._options.vueRouter;\n\n this.pageManager = this._options.pageManager;\n\n HttpRequest.appID = this.appID;\n\n this.httpRequest = this._options.httpRequest;\n\n DataModel.setHttpRequest(this.httpRequest);\n DVQueryable.setDefaultDataViewRequest(\n new DataViewRequest({ httpRequest: this.httpRequest })\n );\n }\n\n setUserSession(userSession: UserSession | null) {\n if (this.userSession) {\n this.userSession.dispose();\n }\n\n this.userSession = userSession;\n\n this.userSessionChangeEvent.emit({ userSession });\n }\n\n private _normalizeOptions(\n options: MSAppClientOptions\n ): Required<MSAppClientOptions> {\n return {\n appID: options.appID,\n projectName: options.projectName,\n httpRequest: options.httpRequest ?? new WebHttpRequest(),\n origin: options.origin,\n logo: options.logo || \"\",\n locale: options.locale || \"zh-cn\",\n vueRouter:\n options.vueRouter ??\n createRouter({\n history: createWebHashHistory(),\n routes: [],\n }),\n pageManager: options.pageManager ?? new PageManager(),\n dataTableComponents: options.dataTableComponents ?? new Components(),\n dataFormComponents: options.dataFormComponents ?? new Components(),\n dataFilterComponents: options.dataFilterComponents ?? new Components(),\n whereFilterComponents: options.whereFilterComponents ?? new Components(),\n };\n }\n getI18n() {\n return this.i18n;\n }\n\n getOptions() {\n return this._options;\n }\n\n async loadCurrentUserSession(options?: {\n accessToken: string;\n xAccessToken: string;\n }) {\n const userSession = (this.userSession = new UserSession({\n msAppClient: this,\n ...options,\n }));\n this.userSession = null;\n\n this.beforeInitUserSessionEvent.emit({ userSession });\n const userSessionInitResult = await userSession.init();\n\n if (userSessionInitResult?.data.code !== 200) {\n userSession.dispose();\n return userSessionInitResult!;\n }\n\n this.setUserSession(userSession);\n }\n\n async init() {\n if (this.initd) {\n return;\n }\n\n this.vueRouter.beforeEach(async (to, from, next) => {\n const route = await authBeforeEach(this, to, from);\n\n if (route) {\n next(route);\n return;\n }\n\n next();\n });\n\n this.pageManager.init();\n this.pageManager.setMSAppCLient(this);\n\n this.httpRequest.getInterceptors().response.use((config) => {\n if (config.data.code === 401) {\n if (this.userSession) {\n this.userSession.lock();\n } else {\n this.vueRouter.push({ name: \"login\" });\n }\n }\n return config;\n });\n\n this.initd = true;\n }\n\n async login(account: string, password: string, code: string) {\n const response = await this.httpRequest.request<R<LoginResult>>({\n url: \"/api/ms-login/login\",\n method: \"POST\",\n data: { account, password: md5(`mkbl#${password}`), vCode: code },\n });\n\n if (response.data.code === 200) {\n await this.loadCurrentUserSession({\n accessToken: response.headers[ACCESS_TOKEN_HEADER],\n xAccessToken: response.headers[X_ACCESS_TOKEN_HEADER],\n });\n }\n\n return response;\n }\n\n formatURL(url: string) {\n return url;\n }\n\n async modifyPassword(account: string, code: string) {\n type LoginResult = {\n account: string;\n email: string;\n nickName: string;\n avatarPath: string;\n };\n\n const response = await this.httpRequest.request<R<LoginResult>>({\n url: \"/api/ms-login/modify-password\",\n method: \"POST\",\n data: { account, vCode: code },\n });\n\n return response;\n }\n\n async logout() {\n this.userSession?.dispose();\n this.setUserSession(null);\n\n return this.httpRequest.get(\"/api/ms-login/logout\");\n }\n}\n"],"names":["Event","I18n","HttpRequest","DataModel","DVQueryable","DataViewRequest","WebHttpRequest","createRouter","createWebHashHistory","PageManager","Components","UserSession","authBeforeEach","md5","ACCESS_TOKEN_HEADER","X_ACCESS_TOKEN_HEADER"],"mappings":"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"}
1
+ {"version":3,"file":"MSAppClient.js","sources":["../../../src/core/MSAppClient.ts"],"sourcesContent":["import {\n createRouter,\n createWebHashHistory,\n Router as VueRouter,\n} from \"vue-router\";\nimport {\n DataViewRequest,\n DVQueryable,\n HttpRequest,\n R,\n WebHttpRequest,\n} from \"@maketribe/request\";\nimport { IComponents, DataModel, Components } from \"@maketribe/dm\";\nimport { I18n } from \"@maketribe/locale\";\n\nimport { Event, md5 } from \"@maketribe/utils\";\nimport { UserSession } from \"./UserSession\";\nimport { authBeforeEach } from \"../router-middleware\";\nimport { PageManager } from \"./PageManager\";\nimport { ACCESS_TOKEN_HEADER, X_ACCESS_TOKEN_HEADER } from \"../constants\";\n\nexport type LoginResult = {\n account: string;\n email: string;\n nickName: string;\n avatarPath: string;\n};\n\nexport interface MSAppClientOptions {\n pageManager?: PageManager;\n projectName: string;\n httpRequest?: HttpRequest;\n origin: string;\n appID: string;\n logo?: string;\n locale?: string;\n vueRouter?: VueRouter;\n dataTableComponents?: IComponents;\n dataFormComponents?: IComponents;\n dataFilterComponents?: IComponents;\n whereFilterComponents?: IComponents;\n}\n\nexport class MSAppClient {\n static instance: MSAppClient | null = null;\n\n origin: string = \"\";\n\n private _options: Required<MSAppClientOptions>;\n\n projectName: string;\n\n logo: string;\n\n appID: string;\n\n userSession: UserSession | null = null;\n\n httpRequest: HttpRequest;\n\n ready: boolean = false;\n\n initd: boolean = false;\n\n pageManager: PageManager;\n\n /**\n * @deprecated\n * @description 使用 MSAppClient.instance.userSession.userInfo\n */\n get userInfo() {\n return this.userSession?.userInfo ?? null;\n }\n\n i18n: I18n;\n\n dataTableComponents: IComponents;\n dataFormComponents: IComponents;\n dataFilterComponents: IComponents;\n whereFilterComponents: IComponents;\n\n vueRouter: VueRouter;\n\n beforeInitUserSessionEvent: Event<{ userSession: UserSession }> = new Event();\n\n userSessionChangeEvent: Event<{ userSession: UserSession | null }> =\n new Event();\n\n constructor(options: MSAppClientOptions) {\n this._options = this._normalizeOptions(options);\n\n this.appID = this._options.appID;\n\n this.logo = this._options.logo;\n\n this.projectName = options.projectName;\n\n this.i18n = I18n.instance;\n this.i18n.setCurrentLanguageName(this._options.locale);\n\n this.dataTableComponents = this._options.dataTableComponents;\n this.dataFormComponents = this._options.dataFormComponents;\n this.dataFilterComponents = this._options.dataFilterComponents;\n this.whereFilterComponents = this._options.whereFilterComponents;\n\n this.vueRouter = this._options.vueRouter;\n\n this.pageManager = this._options.pageManager;\n\n HttpRequest.appID = this.appID;\n\n this.httpRequest = this._options.httpRequest;\n\n DataModel.setHttpRequest(this.httpRequest);\n DVQueryable.setDefaultDataViewRequest(\n new DataViewRequest({ httpRequest: this.httpRequest })\n );\n }\n\n setUserSession(userSession: UserSession | null) {\n if (this.userSession) {\n this.userSession.dispose();\n }\n\n this.userSession = userSession;\n\n this.userSessionChangeEvent.emit({ userSession });\n }\n\n private _normalizeOptions(\n options: MSAppClientOptions\n ): Required<MSAppClientOptions> {\n return {\n appID: options.appID,\n projectName: options.projectName,\n httpRequest: options.httpRequest ?? new WebHttpRequest(),\n origin: options.origin,\n logo: options.logo || \"\",\n locale: options.locale || \"zh-cn\",\n vueRouter:\n options.vueRouter ??\n createRouter({\n history: createWebHashHistory(),\n routes: [],\n }),\n pageManager: options.pageManager ?? new PageManager(),\n dataTableComponents: options.dataTableComponents ?? new Components(),\n dataFormComponents: options.dataFormComponents ?? new Components(),\n dataFilterComponents: options.dataFilterComponents ?? new Components(),\n whereFilterComponents: options.whereFilterComponents ?? new Components(),\n };\n }\n getI18n() {\n return this.i18n;\n }\n\n getOptions() {\n return this._options;\n }\n\n async loadCurrentUserSession(options?: {\n accessToken: string;\n xAccessToken: string;\n }) {\n const userSession = (this.userSession = new UserSession({\n msAppClient: this,\n ...options,\n }));\n this.userSession = null;\n\n this.beforeInitUserSessionEvent.emit({ userSession });\n const userSessionInitResult = await userSession.init();\n\n if (userSessionInitResult?.data.code !== 200) {\n userSession.dispose();\n return userSessionInitResult!;\n }\n\n this.setUserSession(userSession);\n }\n\n async init() {\n if (this.initd) {\n return;\n }\n\n this.vueRouter.beforeEach(async (to, from, next) => {\n const route = await authBeforeEach(this, to, from);\n\n if (route) {\n next(route);\n return;\n }\n\n next();\n });\n\n this.pageManager.init();\n this.pageManager.setMSAppCLient(this);\n\n this.httpRequest.getInterceptors().response.use((config) => {\n if (config.data.code === 401) {\n this.vueRouter.push({ name: \"login\" });\n // if (this.userSession) {\n // this.userSession.lock();\n // } else {\n // this.vueRouter.push({ name: \"login\" });\n // }\n }\n return config;\n });\n\n this.initd = true;\n }\n\n async login(account: string, password: string, code: string) {\n const response = await this.httpRequest.request<R<LoginResult>>({\n url: \"/api/ms-login/login\",\n method: \"POST\",\n data: { account, password: md5(`mkbl#${password}`), vCode: code },\n });\n\n if (response.data.code === 200) {\n await this.loadCurrentUserSession({\n accessToken: response.headers[ACCESS_TOKEN_HEADER],\n xAccessToken: response.headers[X_ACCESS_TOKEN_HEADER],\n });\n }\n\n return response;\n }\n\n formatURL(url: string) {\n return url;\n }\n\n async modifyPassword(account: string, code: string) {\n type LoginResult = {\n account: string;\n email: string;\n nickName: string;\n avatarPath: string;\n };\n\n const response = await this.httpRequest.request<R<LoginResult>>({\n url: \"/api/ms-login/modify-password\",\n method: \"POST\",\n data: { account, vCode: code },\n });\n\n return response;\n }\n\n async logout() {\n this.userSession?.dispose();\n this.setUserSession(null);\n\n return this.httpRequest.get(\"/api/ms-login/logout\");\n }\n}\n"],"names":["Event","I18n","HttpRequest","DataModel","DVQueryable","DataViewRequest","WebHttpRequest","createRouter","createWebHashHistory","PageManager","Components","UserSession","authBeforeEach","md5","ACCESS_TOKEN_HEADER","X_ACCESS_TOKEN_HEADER"],"mappings":"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"}
@@ -50,8 +50,7 @@ class MemberTable extends dm.DataTable {
50
50
  }), new dm.TableColumn({
51
51
  name: "name",
52
52
  label: "\u59D3\u540D",
53
- minWidth: "150px",
54
- sortable: true
53
+ minWidth: "150px"
55
54
  }), new dm.TableColumn({
56
55
  name: "nickName",
57
56
  label: "\u6635\u79F0",
@@ -1 +1 @@
1
- {"version":3,"file":"MemberTable.js","sources":["../../../../src/dataview/member/MemberTable.tsx"],"sourcesContent":["import { R } from \"@maketribe/request\";\nimport {\n TableColumn,\n DataTable,\n DataTableOptions,\n FilterColumn,\n TableActionColumn,\n ActionButton,\n DeleteButton,\n EditButton,\n Messager,\n Dialoger,\n FormColumn,\n} from \"@maketribe/dm\";\nimport { defineDataTable } from \"../../define-data-table\";\nimport { Member, MemberForm, MemberResult } from \"./MemberForm\";\n\nexport type MemberTableItem = Omit<Member, \"password\" | \"confirmPassword\">;\n\nexport class MemberTable extends DataTable<MemberResult, MemberTableItem> {\n activeMemberForm: MemberForm;\n\n isShowActiveMemberForm: boolean;\n\n constructor(options: DataTableOptions = {}) {\n super({ name: \"ms-member\", ...options });\n\n this.activeMemberForm = new MemberForm();\n\n this.isShowActiveMemberForm = false;\n }\n\n protected async initialize() {\n await super.initialize();\n\n await this.initActiveMemberForm();\n\n this.dataFilter.setColumns([\n new FilterColumn({\n name: \"name\",\n label: \"姓名\",\n componentInfo: \"MKConditionInput\",\n }),\n new FilterColumn({\n name: \"wechatNo\",\n label: \"微信号\",\n componentInfo: \"MKConditionInput\",\n }),\n new FilterColumn({\n name: \"nickName\",\n label: \"昵称\",\n componentInfo: \"MKConditionInput\",\n }),\n new FilterColumn({\n name: \"email\",\n label: \"邮箱\",\n componentInfo: \"MKConditionInput\",\n }),\n new FilterColumn({\n name: \"phone\",\n label: \"手机号\",\n componentInfo: \"MKConditionInput\",\n }),\n new FilterColumn({\n name: \"account\",\n label: \"账号\",\n componentInfo: \"MKConditionInput\",\n }),\n ]);\n\n this.setColumns([\n new TableColumn({\n name: \"id\",\n label: \"编号\",\n width: \"190px\",\n visible: false,\n }),\n new TableColumn({\n name: \"name\",\n label: \"姓名\",\n minWidth: \"150px\",\n sortable: true,\n }),\n new TableColumn({ name: \"nickName\", label: \"昵称\", minWidth: \"150px\" }),\n new TableColumn({\n name: \"avatar\",\n label: \"头像\",\n componentInfo: \"MKColumnImage\",\n width: \"80px\",\n }),\n new TableColumn({ name: \"account\", label: \"账号\", minWidth: \"150px\" }),\n new TableColumn({ name: \"email\", label: \"邮箱\", minWidth: \"200px\" }),\n new TableColumn({ name: \"phone\", label: \"手机号\", minWidth: \"120px\" }),\n new TableColumn({ name: \"wechatNo\", label: \"微信号\", minWidth: \"140px\" }),\n new TableColumn({\n name: \"valid\",\n label: \"微信号\",\n minWidth: \"140px\",\n visible: false,\n }),\n new TableActionColumn({\n width: \"200px\",\n buttons: [\n new ActionButton({\n label: \"激活用户\",\n handler: async (row) => {\n const response = await this.activeMemberForm.editRecord(row.id);\n\n if (response.data.code !== 200) {\n Messager.instance.error({ message: response.data.msg });\n return;\n }\n\n this.isShowActiveMemberForm = true;\n },\n predicate: (member: MemberTableItem) => member.valid === 0,\n }),\n new ActionButton({\n label: \"重置密码\",\n handler: async (row) => {\n const isConfirm = await Dialoger.instance.confirm({\n title: \"重置密码\",\n message: \"是否重置密码\",\n type: \"warning\",\n cancelButtonText: \"取消\",\n confirmButtonText: \"确定\",\n });\n if (!isConfirm) {\n return;\n }\n this.loadingManager.startLoading();\n\n const response = await this.dataViewRequest.callDVRequest<\n R<string>\n >({\n action: `${row.id}/password/reset`,\n });\n\n this.loadingManager.completeLoading();\n if (response.data.code !== 200) {\n Messager.instance.error({\n message: response.data.msg || \"重置密码失败\",\n });\n return;\n }\n\n const res = await Dialoger.instance.confirm({\n title: \"重置密码成功\",\n message: (\n <p>\n <span>你的新密码为{response.data.data}</span>\n </p>\n ),\n type: \"warning\",\n cancelButtonText: \"取消\",\n confirmButtonText: \"复制\",\n });\n if (!res) {\n return;\n }\n\n navigator.clipboard.writeText(response.data.data);\n Messager.instance.success({ message: \"复制成功\" });\n },\n predicate: (member: MemberTableItem) => member.valid === 1,\n }),\n new EditButton({\n predicate: (member: MemberTableItem) => member.valid === 1,\n }),\n new DeleteButton(),\n ],\n }),\n ]);\n }\n\n protected async initActiveMemberForm() {\n const activeMemberForm = this.activeMemberForm;\n\n await activeMemberForm.init();\n\n activeMemberForm.setColumns([\n activeMemberForm.getColumn(\"id\")!,\n new FormColumn({\n name: \"approveResult\",\n label: \"是否通过\",\n defaultValue: \"0\",\n componentInfo: \"MKFormRadioBox\",\n required: true,\n componentProps: {\n options: [\n { label: \"通过\", value: \"1\" },\n { label: \"不通过\", value: \"0\" },\n ],\n },\n }),\n activeMemberForm.getColumn(\"roles\")!,\n activeMemberForm.getColumn(\"depts\")!,\n activeMemberForm.getColumn(\"memo\")!,\n ]);\n }\n\n async approveMember() {\n try {\n this.activeMemberForm.getLoadingManager().startLoading();\n const result = await this.activeMemberForm.httpRequest?.post(\n \"/api/dv/ms-member/apply/account/approve\",\n {\n ...this.activeMemberForm.formatSubmitData(this.activeMemberForm.data),\n }\n );\n this.activeMemberForm.getLoadingManager().completeLoading();\n\n if (result?.data.code != 200) {\n Messager.instance.error(result?.data.msg || \"请求失败\");\n return;\n }\n\n Messager.instance.success({\n message: \"激活通过,密码已发送到邮箱\",\n });\n\n this.load();\n } catch (e) {\n console.error(e);\n Messager.instance.error({ message: \"网络异常\" });\n }\n }\n\n formatItem(item: MemberResult): MemberTableItem {\n let avatar: string | null;\n try {\n avatar = item.avatar ? new URL(item.avatar).toString() : null;\n } catch (e) {\n avatar = null;\n }\n\n return {\n id: item.id,\n name: item.name || \"\",\n wechatNo: item.wechatNo || \"\",\n nickName: item.nickName || \"\",\n email: item.email || \"\",\n phone: item.phone || \"\",\n account: item.account || \"\",\n avatar,\n roles: item.roles?.map((role) => ({\n id: role.id,\n name: role.name || \"\",\n desc: role.desc || \"\",\n })),\n depts: item.depts?.map((department) => ({\n id: department.id,\n name: department.name || \"\",\n // memberID: department.memberID || null,\n pid: department.pid || null,\n })),\n valid: item.valid,\n };\n }\n}\n\ndefineDataTable(MemberTable);\n"],"names":["MemberTable","DataTable","constructor","options","name","activeMemberForm","MemberForm","isShowActiveMemberForm","initialize","initActiveMemberForm","dataFilter","setColumns","FilterColumn","label","componentInfo","TableColumn","width","visible","minWidth","sortable","TableActionColumn","buttons","ActionButton","handler","row","response","editRecord","id","data","code","Messager","instance","error","message","msg","predicate","member","valid","isConfirm","Dialoger","confirm","title","type","cancelButtonText","confirmButtonText","loadingManager","startLoading","dataViewRequest","callDVRequest","action","completeLoading","res","_createVNode","_createTextVNode","navigator","clipboard","writeText","success","EditButton","DeleteButton","init","getColumn","FormColumn","defaultValue","required","componentProps","value","approveMember","getLoadingManager","result","httpRequest","post","formatSubmitData","load","e","console","formatItem","item","avatar","URL","toString","wechatNo","nickName","email","phone","account","roles","map","role","desc","depts","department","pid","defineDataTable"],"mappings":"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"}
1
+ {"version":3,"file":"MemberTable.js","sources":["../../../../src/dataview/member/MemberTable.tsx"],"sourcesContent":["import { R } from \"@maketribe/request\";\nimport {\n TableColumn,\n DataTable,\n DataTableOptions,\n FilterColumn,\n TableActionColumn,\n ActionButton,\n DeleteButton,\n EditButton,\n Messager,\n Dialoger,\n FormColumn,\n} from \"@maketribe/dm\";\nimport { defineDataTable } from \"../../define-data-table\";\nimport { Member, MemberForm, MemberResult } from \"./MemberForm\";\n\nexport type MemberTableItem = Omit<Member, \"password\" | \"confirmPassword\">;\n\nexport class MemberTable extends DataTable<MemberResult, MemberTableItem> {\n activeMemberForm: MemberForm;\n\n isShowActiveMemberForm: boolean;\n\n constructor(options: DataTableOptions = {}) {\n super({ name: \"ms-member\", ...options });\n\n this.activeMemberForm = new MemberForm();\n\n this.isShowActiveMemberForm = false;\n }\n\n protected async initialize() {\n await super.initialize();\n\n await this.initActiveMemberForm();\n\n this.dataFilter.setColumns([\n new FilterColumn({\n name: \"name\",\n label: \"姓名\",\n componentInfo: \"MKConditionInput\",\n }),\n new FilterColumn({\n name: \"wechatNo\",\n label: \"微信号\",\n componentInfo: \"MKConditionInput\",\n }),\n new FilterColumn({\n name: \"nickName\",\n label: \"昵称\",\n componentInfo: \"MKConditionInput\",\n }),\n new FilterColumn({\n name: \"email\",\n label: \"邮箱\",\n componentInfo: \"MKConditionInput\",\n }),\n new FilterColumn({\n name: \"phone\",\n label: \"手机号\",\n componentInfo: \"MKConditionInput\",\n }),\n new FilterColumn({\n name: \"account\",\n label: \"账号\",\n componentInfo: \"MKConditionInput\",\n }),\n ]);\n\n this.setColumns([\n new TableColumn({\n name: \"id\",\n label: \"编号\",\n width: \"190px\",\n visible: false,\n }),\n new TableColumn({ name: \"name\", label: \"姓名\", minWidth: \"150px\" }),\n new TableColumn({ name: \"nickName\", label: \"昵称\", minWidth: \"150px\" }),\n new TableColumn({\n name: \"avatar\",\n label: \"头像\",\n componentInfo: \"MKColumnImage\",\n width: \"80px\",\n }),\n new TableColumn({ name: \"account\", label: \"账号\", minWidth: \"150px\" }),\n new TableColumn({ name: \"email\", label: \"邮箱\", minWidth: \"200px\" }),\n new TableColumn({ name: \"phone\", label: \"手机号\", minWidth: \"120px\" }),\n new TableColumn({ name: \"wechatNo\", label: \"微信号\", minWidth: \"140px\" }),\n new TableColumn({\n name: \"valid\",\n label: \"微信号\",\n minWidth: \"140px\",\n visible: false,\n }),\n new TableActionColumn({\n width: \"200px\",\n buttons: [\n new ActionButton({\n label: \"激活用户\",\n handler: async (row) => {\n const response = await this.activeMemberForm.editRecord(row.id);\n\n if (response.data.code !== 200) {\n Messager.instance.error({ message: response.data.msg });\n return;\n }\n\n this.isShowActiveMemberForm = true;\n },\n predicate: (member: MemberTableItem) => member.valid === 0,\n }),\n new ActionButton({\n label: \"重置密码\",\n handler: async (row) => {\n const isConfirm = await Dialoger.instance.confirm({\n title: \"重置密码\",\n message: \"是否重置密码\",\n type: \"warning\",\n cancelButtonText: \"取消\",\n confirmButtonText: \"确定\",\n });\n if (!isConfirm) {\n return;\n }\n this.loadingManager.startLoading();\n\n const response = await this.dataViewRequest.callDVRequest<\n R<string>\n >({\n action: `${row.id}/password/reset`,\n });\n\n this.loadingManager.completeLoading();\n if (response.data.code !== 200) {\n Messager.instance.error({\n message: response.data.msg || \"重置密码失败\",\n });\n return;\n }\n\n const res = await Dialoger.instance.confirm({\n title: \"重置密码成功\",\n message: (\n <p>\n <span>你的新密码为{response.data.data}</span>\n </p>\n ),\n type: \"warning\",\n cancelButtonText: \"取消\",\n confirmButtonText: \"复制\",\n });\n if (!res) {\n return;\n }\n\n navigator.clipboard.writeText(response.data.data);\n Messager.instance.success({ message: \"复制成功\" });\n },\n predicate: (member: MemberTableItem) => member.valid === 1,\n }),\n new EditButton({\n predicate: (member: MemberTableItem) => member.valid === 1,\n }),\n new DeleteButton(),\n ],\n }),\n ]);\n }\n\n protected async initActiveMemberForm() {\n const activeMemberForm = this.activeMemberForm;\n\n await activeMemberForm.init();\n\n activeMemberForm.setColumns([\n activeMemberForm.getColumn(\"id\")!,\n new FormColumn({\n name: \"approveResult\",\n label: \"是否通过\",\n defaultValue: \"0\",\n componentInfo: \"MKFormRadioBox\",\n required: true,\n componentProps: {\n options: [\n { label: \"通过\", value: \"1\" },\n { label: \"不通过\", value: \"0\" },\n ],\n },\n }),\n activeMemberForm.getColumn(\"roles\")!,\n activeMemberForm.getColumn(\"depts\")!,\n activeMemberForm.getColumn(\"memo\")!,\n ]);\n }\n\n async approveMember() {\n try {\n this.activeMemberForm.getLoadingManager().startLoading();\n const result = await this.activeMemberForm.httpRequest?.post(\n \"/api/dv/ms-member/apply/account/approve\",\n {\n ...this.activeMemberForm.formatSubmitData(this.activeMemberForm.data),\n }\n );\n this.activeMemberForm.getLoadingManager().completeLoading();\n\n if (result?.data.code != 200) {\n Messager.instance.error(result?.data.msg || \"请求失败\");\n return;\n }\n\n Messager.instance.success({\n message: \"激活通过,密码已发送到邮箱\",\n });\n\n this.load();\n } catch (e) {\n console.error(e);\n Messager.instance.error({ message: \"网络异常\" });\n }\n }\n\n formatItem(item: MemberResult): MemberTableItem {\n let avatar: string | null;\n try {\n avatar = item.avatar ? new URL(item.avatar).toString() : null;\n } catch (e) {\n avatar = null;\n }\n\n return {\n id: item.id,\n name: item.name || \"\",\n wechatNo: item.wechatNo || \"\",\n nickName: item.nickName || \"\",\n email: item.email || \"\",\n phone: item.phone || \"\",\n account: item.account || \"\",\n avatar,\n roles: item.roles?.map((role) => ({\n id: role.id,\n name: role.name || \"\",\n desc: role.desc || \"\",\n })),\n depts: item.depts?.map((department) => ({\n id: department.id,\n name: department.name || \"\",\n // memberID: department.memberID || null,\n pid: department.pid || null,\n })),\n valid: item.valid,\n };\n }\n}\n\ndefineDataTable(MemberTable);\n"],"names":["MemberTable","DataTable","constructor","options","name","activeMemberForm","MemberForm","isShowActiveMemberForm","initialize","initActiveMemberForm","dataFilter","setColumns","FilterColumn","label","componentInfo","TableColumn","width","visible","minWidth","TableActionColumn","buttons","ActionButton","handler","row","response","editRecord","id","data","code","Messager","instance","error","message","msg","predicate","member","valid","isConfirm","Dialoger","confirm","title","type","cancelButtonText","confirmButtonText","loadingManager","startLoading","dataViewRequest","callDVRequest","action","completeLoading","res","_createVNode","_createTextVNode","navigator","clipboard","writeText","success","EditButton","DeleteButton","init","getColumn","FormColumn","defaultValue","required","componentProps","value","approveMember","getLoadingManager","result","httpRequest","post","formatSubmitData","load","e","console","formatItem","item","avatar","URL","toString","wechatNo","nickName","email","phone","account","roles","map","role","desc","depts","department","pid","defineDataTable"],"mappings":"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"}
@@ -118,16 +118,17 @@ const MKBar = /* @__PURE__ */ vue.defineComponent({
118
118
  }, null)]), vue.createVNode("div", {
119
119
  "class": "mk-bar__item-title"
120
120
  }, [systemSettingNode.title, vue.createTextVNode(" ")])])]) : null;
121
- return vue.createVNode("div", {
122
- "class": "mk-bar"
123
- }, [vue.createVNode("div", {
121
+ const logo = msAppClient.logo ? vue.createVNode("div", {
124
122
  "class": "mk-bar__logo"
125
123
  }, [vue.createVNode("div", {
126
124
  "class": "mk-logo",
127
125
  "style": {
128
126
  backgroundImage: `url(${msAppClient.logo})`
129
127
  }
130
- }, null)]), vue.createVNode("div", {
128
+ }, null)]) : null;
129
+ return vue.createVNode("div", {
130
+ "class": "mk-bar"
131
+ }, [logo, vue.createVNode("div", {
131
132
  "class": "mk-bar__items"
132
133
  }, [barItems]), footer]);
133
134
  };
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sources":["../../../../../src/layouts/components/bar/index.tsx"],"sourcesContent":["import { computed, defineComponent, unref } from \"vue\";\nimport { MKSvgIcon } from \"../../../components\";\nimport { MSAppClient, MenuNode } from \"../../../core\";\nimport { MenuType } from \"../../../constants\";\n\nexport const MKBar = defineComponent({\n name: \"MKBar\",\n props: {\n barItem: {\n type: MenuNode,\n },\n },\n setup(props) {\n const msAppClient = MSAppClient.instance!;\n const userSession = msAppClient.userSession!;\n const menu = userSession.menu;\n const vueRouter = msAppClient.vueRouter;\n // const router = userSession.router;\n\n const currentBarItem = computed(() => props.barItem);\n\n const handleBarItemClick = (barItem: MenuNode) => {\n let target: MenuNode | null = barItem;\n\n if (barItem.children.length) {\n target = menu.getFirstLeafMenuNode(barItem.children);\n }\n\n if (!target) {\n return;\n }\n\n if (target?.route) {\n vueRouter.push({ name: target.route.name });\n }\n };\n\n return () => {\n const barItems = menu.rootMenus\n .filter((rootMenu) => rootMenu.type !== \"3\")\n .map((rootMenu) => (\n <div\n class={[\n \"mk-bar__item\",\n rootMenu.children.length ? \"has-children\" : \"\",\n unref(currentBarItem)?.id === rootMenu.id ? \"is-active\" : \"\",\n ]}\n onClick={() => handleBarItemClick(rootMenu)}\n >\n <div class=\"mk-bar__item-button\">\n <MKSvgIcon iconClass={rootMenu.iconName} />\n </div>\n <div class=\"mk-bar__item-title\">{rootMenu.title} </div>\n </div>\n ));\n\n const systemSettingNode = menu.rootMenus.find(\n (rootMenu) => rootMenu.type === MenuType.SystemSettings\n );\n\n const footer = systemSettingNode?.children.length ? (\n <div class=\"mk-bar__footer\">\n <div\n class={[\n \"mk-bar__item\",\n \"mk-bar__settings\",\n systemSettingNode.children.length ? \"has-children\" : \"\",\n unref(currentBarItem)?.id === systemSettingNode.id\n ? \"is-active\"\n : \"\",\n ]}\n onClick={() => handleBarItemClick(systemSettingNode)}\n >\n <div class=\"mk-bar__item-button\">\n <MKSvgIcon iconClass={systemSettingNode.iconName} />\n </div>\n <div class=\"mk-bar__item-title\">{systemSettingNode.title} </div>\n </div>\n </div>\n ) : null;\n\n return (\n <div class=\"mk-bar\">\n <div class=\"mk-bar__logo\">\n <div\n class=\"mk-logo\"\n style={{ backgroundImage: `url(${msAppClient.logo})` }}\n />\n </div>\n\n <div class=\"mk-bar__items\">{barItems}</div>\n\n {footer}\n </div>\n );\n };\n },\n});\n"],"names":["MKBar","defineComponent","name","props","barItem","type","MenuNode","setup","msAppClient","MSAppClient","instance","userSession","menu","vueRouter","currentBarItem","computed","handleBarItemClick","target","children","length","getFirstLeafMenuNode","route","push","barItems","rootMenus","filter","rootMenu","map","_createVNode","unref","id","onClick","MKSvgIcon","iconName","title","_createTextVNode","systemSettingNode","find","MenuType","SystemSettings","footer","backgroundImage","logo"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAKO,MAAMA,wBAAwBC,mBAAA,CAAA;AAAA,EACnCC,IAAM,EAAA,OAAA;AAAA,EACNC,KAAO,EAAA;AAAA,IACLC,OAAS,EAAA;AAAA,MACPC,IAAMC,EAAAA,iBAAAA;AAAAA,KACR;AAAA,GACF;AAAA,EACAC,MAAMJ,KAAO,EAAA;AACX,IAAA,MAAMK,cAAcC,uBAAYC,CAAAA,QAAAA,CAAAA;AAChC,IAAA,MAAMC,cAAcH,WAAYG,CAAAA,WAAAA,CAAAA;AAChC,IAAA,MAAMC,SAAOD,WAAYC,CAAAA,IAAAA,CAAAA;AACzB,IAAA,MAAMC,YAAYL,WAAYK,CAAAA,SAAAA,CAAAA;AAG9B,IAAA,MAAMC,cAAiBC,GAAAA,YAAAA,CAAS,MAAMZ,KAAAA,CAAMC,OAAO,CAAA,CAAA;AAEnD,IAAA,MAAMY,qBAAsBZ,CAAsB,OAAA,KAAA;AAChD,MAAA,IAAIa,MAA0Bb,GAAAA,OAAAA,CAAAA;AAE9B,MAAIA,IAAAA,OAAAA,CAAQc,SAASC,MAAQ,EAAA;AAC3BF,QAASL,MAAAA,GAAAA,MAAAA,CAAKQ,oBAAqBhB,CAAAA,OAAAA,CAAQc,QAAQ,CAAA,CAAA;AAAA,OACrD;AAEA,MAAA,IAAI,CAACD,MAAQ,EAAA;AACX,QAAA,OAAA;AAAA,OACF;AAEA,MAAA,IAAIA,QAAQI,KAAO,EAAA;AACjBR,QAAAA,SAAAA,CAAUS,IAAK,CAAA;AAAA,UAAEpB,IAAAA,EAAMe,OAAOI,KAAMnB,CAAAA,IAAAA;AAAAA,SAAM,CAAA,CAAA;AAAA,OAC5C;AAAA,KACF,CAAA;AAEA,IAAA,OAAO,MAAM;AACX,MAAA,MAAMqB,QAAWX,GAAAA,MAAAA,CAAKY,SACnBC,CAAAA,MAAAA,CAAQC,CAAaA,QAAAA,KAAAA,QAAAA,CAASrB,IAAS,KAAA,GAAG,CAC1CsB,CAAAA,GAAAA,CAAKD,CAAQE,QAAAA,KAAAA,eAAAA,CAAA,KAAA,EAAA;AAAA,QAAA,OAEH,EAAA,CACL,cACAF,EAAAA,QAAAA,CAASR,SAASC,MAAS,GAAA,cAAA,GAAiB,EAC5CU,EAAAA,SAAAA,CAAMf,cAAc,CAAGgB,EAAAA,EAAAA,KAAOJ,QAASI,CAAAA,EAAAA,GAAK,cAAc,EAAE,CAAA;AAAA,QAC7D,SAAA,EACQC,MAAMf,kBAAAA,CAAmBU,QAAQ,CAAA;AAAA,OAAC,EAAA,CAAAE,eAAAA,CAAA,KAAA,EAAA;AAAA,QAAA,OAAA,EAAA,qBAAA;AAAA,OAAA,EAAAA,CAAAA,eAAAA,CAAAI,eAAA,EAAA;AAAA,QAAA,aAGnBN,QAASO,CAAAA,QAAAA;AAAAA,SAAQ,IAAA,CAAA,CAAA,CAAA,EAAAL,gBAAA,KAAA,EAAA;AAAA,QAAA,OAAA,EAAA,oBAAA;AAAA,OAAA,EAAA,CAERF,QAAAA,CAASQ,KAAKC,EAAAA,mBAAAA,SAElD,CAAA,CAAA;AAEH,MAAMC,MAAAA,iBAAAA,GAAoBxB,OAAKY,SAAUa,CAAAA,IAAAA,CACtCX,cAAaA,QAASrB,CAAAA,IAAAA,KAASiC,cAASC,cAC3C,CAAA,CAAA;AAEA,MAAA,MAAMC,MAASJ,GAAAA,iBAAAA,EAAmBlB,QAASC,CAAAA,MAAAA,GAAMS,gBAAA,KAAA,EAAA;AAAA,QAAA,OAAA,EAAA,gBAAA;AAAA,OAAA,EAAA,CAAAA,eAAAA,CAAA,KAAA,EAAA;AAAA,QAAA,SAGpC,CACL,cAAA,EACA,kBACAQ,EAAAA,iBAAAA,CAAkBlB,SAASC,MAAS,GAAA,cAAA,GAAiB,EACrDU,EAAAA,SAAAA,CAAMf,cAAc,CAAGgB,EAAAA,EAAAA,KAAOM,iBAAkBN,CAAAA,EAAAA,GAC5C,cACA,EAAE,CAAA;AAAA,QACP,SAAA,EACQC,MAAMf,kBAAAA,CAAmBoB,iBAAiB,CAAA;AAAA,OAAC,EAAA,CAAAR,eAAAA,CAAA,KAAA,EAAA;AAAA,QAAA,OAAA,EAAA,qBAAA;AAAA,OAAA,EAAAA,CAAAA,eAAAA,CAAAI,eAAA,EAAA;AAAA,QAAA,aAG5BI,iBAAkBH,CAAAA,QAAAA;AAAAA,SAAQ,IAAA,CAAA,CAAA,CAAA,EAAAL,gBAAA,KAAA,EAAA;AAAA,QAAA,OAAA,EAAA,oBAAA;AAAA,OAAA,EAAA,CAEjBQ,iBAAkBF,CAAAA,KAAAA,EAAKC,8BAG1D,GAAA,IAAA,CAAA;AAEJ,MAAA,OAAAP,gBAAA,KAAA,EAAA;AAAA,QAAA,OAAA,EAAA,QAAA;AAAA,OAAA,EAAA,CAAAA,eAAAA,CAAA,KAAA,EAAA;AAAA,QAAA,OAAA,EAAA,cAAA;AAAA,OAAA,EAAA,CAAAA,eAAAA,CAAA,KAAA,EAAA;AAAA,QAAA,OAAA,EAAA,SAAA;AAAA,QAAA,OAKe,EAAA;AAAA,UAAEa,eAAAA,EAAkB,CAAMjC,IAAAA,EAAAA,WAAAA,CAAYkC,IAAK,CAAA,CAAA,CAAA;AAAA,SAAG;AAAA,SAAC,IAAA,CAAA,CAAA,CAAA,EAAAd,gBAAA,KAAA,EAAA;AAAA,QAAA,OAAA,EAAA,eAAA;AAAA,SAI9BL,CAAAA,QAAQ,IAEnCiB,MAAM,CAAA,CAAA,CAAA;AAAA,KAGb,CAAA;AAAA,GACF;AACF,CAAC;;;;"}
1
+ {"version":3,"file":"index.js","sources":["../../../../../src/layouts/components/bar/index.tsx"],"sourcesContent":["import { computed, defineComponent, unref } from \"vue\";\nimport { MKSvgIcon } from \"../../../components\";\nimport { MSAppClient, MenuNode } from \"../../../core\";\nimport { MenuType } from \"../../../constants\";\n\nexport const MKBar = defineComponent({\n name: \"MKBar\",\n props: {\n barItem: {\n type: MenuNode,\n },\n },\n setup(props) {\n const msAppClient = MSAppClient.instance!;\n const userSession = msAppClient.userSession!;\n const menu = userSession.menu;\n const vueRouter = msAppClient.vueRouter;\n // const router = userSession.router;\n\n const currentBarItem = computed(() => props.barItem);\n\n const handleBarItemClick = (barItem: MenuNode) => {\n let target: MenuNode | null = barItem;\n\n if (barItem.children.length) {\n target = menu.getFirstLeafMenuNode(barItem.children);\n }\n\n if (!target) {\n return;\n }\n\n if (target?.route) {\n vueRouter.push({ name: target.route.name });\n }\n };\n\n return () => {\n const barItems = menu.rootMenus\n .filter((rootMenu) => rootMenu.type !== \"3\")\n .map((rootMenu) => (\n <div\n class={[\n \"mk-bar__item\",\n rootMenu.children.length ? \"has-children\" : \"\",\n unref(currentBarItem)?.id === rootMenu.id ? \"is-active\" : \"\",\n ]}\n onClick={() => handleBarItemClick(rootMenu)}\n >\n <div class=\"mk-bar__item-button\">\n <MKSvgIcon iconClass={rootMenu.iconName} />\n </div>\n <div class=\"mk-bar__item-title\">{rootMenu.title} </div>\n </div>\n ));\n\n const systemSettingNode = menu.rootMenus.find(\n (rootMenu) => rootMenu.type === MenuType.SystemSettings\n );\n\n const footer = systemSettingNode?.children.length ? (\n <div class=\"mk-bar__footer\">\n <div\n class={[\n \"mk-bar__item\",\n \"mk-bar__settings\",\n systemSettingNode.children.length ? \"has-children\" : \"\",\n unref(currentBarItem)?.id === systemSettingNode.id\n ? \"is-active\"\n : \"\",\n ]}\n onClick={() => handleBarItemClick(systemSettingNode)}\n >\n <div class=\"mk-bar__item-button\">\n <MKSvgIcon iconClass={systemSettingNode.iconName} />\n </div>\n <div class=\"mk-bar__item-title\">{systemSettingNode.title} </div>\n </div>\n </div>\n ) : null;\n\n const logo = msAppClient.logo ? (\n <div class=\"mk-bar__logo\">\n <div\n class=\"mk-logo\"\n style={{ backgroundImage: `url(${msAppClient.logo})` }}\n />\n </div>\n ) : null;\n\n return (\n <div class=\"mk-bar\">\n {logo}\n\n <div class=\"mk-bar__items\">{barItems}</div>\n\n {footer}\n </div>\n );\n };\n },\n});\n"],"names":["MKBar","defineComponent","name","props","barItem","type","MenuNode","setup","msAppClient","MSAppClient","instance","userSession","menu","vueRouter","currentBarItem","computed","handleBarItemClick","target","children","length","getFirstLeafMenuNode","route","push","barItems","rootMenus","filter","rootMenu","map","_createVNode","unref","id","onClick","MKSvgIcon","iconName","title","_createTextVNode","systemSettingNode","find","MenuType","SystemSettings","footer","logo","backgroundImage"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAKO,MAAMA,wBAAwBC,mBAAA,CAAA;AAAA,EACnCC,IAAM,EAAA,OAAA;AAAA,EACNC,KAAO,EAAA;AAAA,IACLC,OAAS,EAAA;AAAA,MACPC,IAAMC,EAAAA,iBAAAA;AAAAA,KACR;AAAA,GACF;AAAA,EACAC,MAAMJ,KAAO,EAAA;AACX,IAAA,MAAMK,cAAcC,uBAAYC,CAAAA,QAAAA,CAAAA;AAChC,IAAA,MAAMC,cAAcH,WAAYG,CAAAA,WAAAA,CAAAA;AAChC,IAAA,MAAMC,SAAOD,WAAYC,CAAAA,IAAAA,CAAAA;AACzB,IAAA,MAAMC,YAAYL,WAAYK,CAAAA,SAAAA,CAAAA;AAG9B,IAAA,MAAMC,cAAiBC,GAAAA,YAAAA,CAAS,MAAMZ,KAAAA,CAAMC,OAAO,CAAA,CAAA;AAEnD,IAAA,MAAMY,qBAAsBZ,CAAsB,OAAA,KAAA;AAChD,MAAA,IAAIa,MAA0Bb,GAAAA,OAAAA,CAAAA;AAE9B,MAAIA,IAAAA,OAAAA,CAAQc,SAASC,MAAQ,EAAA;AAC3BF,QAASL,MAAAA,GAAAA,MAAAA,CAAKQ,oBAAqBhB,CAAAA,OAAAA,CAAQc,QAAQ,CAAA,CAAA;AAAA,OACrD;AAEA,MAAA,IAAI,CAACD,MAAQ,EAAA;AACX,QAAA,OAAA;AAAA,OACF;AAEA,MAAA,IAAIA,QAAQI,KAAO,EAAA;AACjBR,QAAAA,SAAAA,CAAUS,IAAK,CAAA;AAAA,UAAEpB,IAAAA,EAAMe,OAAOI,KAAMnB,CAAAA,IAAAA;AAAAA,SAAM,CAAA,CAAA;AAAA,OAC5C;AAAA,KACF,CAAA;AAEA,IAAA,OAAO,MAAM;AACX,MAAA,MAAMqB,QAAWX,GAAAA,MAAAA,CAAKY,SACnBC,CAAAA,MAAAA,CAAQC,CAAaA,QAAAA,KAAAA,QAAAA,CAASrB,IAAS,KAAA,GAAG,CAC1CsB,CAAAA,GAAAA,CAAKD,CAAQE,QAAAA,KAAAA,eAAAA,CAAA,KAAA,EAAA;AAAA,QAAA,OAEH,EAAA,CACL,cACAF,EAAAA,QAAAA,CAASR,SAASC,MAAS,GAAA,cAAA,GAAiB,EAC5CU,EAAAA,SAAAA,CAAMf,cAAc,CAAGgB,EAAAA,EAAAA,KAAOJ,QAASI,CAAAA,EAAAA,GAAK,cAAc,EAAE,CAAA;AAAA,QAC7D,SAAA,EACQC,MAAMf,kBAAAA,CAAmBU,QAAQ,CAAA;AAAA,OAAC,EAAA,CAAAE,eAAAA,CAAA,KAAA,EAAA;AAAA,QAAA,OAAA,EAAA,qBAAA;AAAA,OAAA,EAAAA,CAAAA,eAAAA,CAAAI,eAAA,EAAA;AAAA,QAAA,aAGnBN,QAASO,CAAAA,QAAAA;AAAAA,SAAQ,IAAA,CAAA,CAAA,CAAA,EAAAL,gBAAA,KAAA,EAAA;AAAA,QAAA,OAAA,EAAA,oBAAA;AAAA,OAAA,EAAA,CAERF,QAAAA,CAASQ,KAAKC,EAAAA,mBAAAA,SAElD,CAAA,CAAA;AAEH,MAAMC,MAAAA,iBAAAA,GAAoBxB,OAAKY,SAAUa,CAAAA,IAAAA,CACtCX,cAAaA,QAASrB,CAAAA,IAAAA,KAASiC,cAASC,cAC3C,CAAA,CAAA;AAEA,MAAA,MAAMC,MAASJ,GAAAA,iBAAAA,EAAmBlB,QAASC,CAAAA,MAAAA,GAAMS,gBAAA,KAAA,EAAA;AAAA,QAAA,OAAA,EAAA,gBAAA;AAAA,OAAA,EAAA,CAAAA,eAAAA,CAAA,KAAA,EAAA;AAAA,QAAA,SAGpC,CACL,cAAA,EACA,kBACAQ,EAAAA,iBAAAA,CAAkBlB,SAASC,MAAS,GAAA,cAAA,GAAiB,EACrDU,EAAAA,SAAAA,CAAMf,cAAc,CAAGgB,EAAAA,EAAAA,KAAOM,iBAAkBN,CAAAA,EAAAA,GAC5C,cACA,EAAE,CAAA;AAAA,QACP,SAAA,EACQC,MAAMf,kBAAAA,CAAmBoB,iBAAiB,CAAA;AAAA,OAAC,EAAA,CAAAR,eAAAA,CAAA,KAAA,EAAA;AAAA,QAAA,OAAA,EAAA,qBAAA;AAAA,OAAA,EAAAA,CAAAA,eAAAA,CAAAI,eAAA,EAAA;AAAA,QAAA,aAG5BI,iBAAkBH,CAAAA,QAAAA;AAAAA,SAAQ,IAAA,CAAA,CAAA,CAAA,EAAAL,gBAAA,KAAA,EAAA;AAAA,QAAA,OAAA,EAAA,oBAAA;AAAA,OAAA,EAAA,CAEjBQ,iBAAkBF,CAAAA,KAAAA,EAAKC,8BAG1D,GAAA,IAAA,CAAA;AAEJ,MAAA,MAAMM,IAAOjC,GAAAA,WAAAA,CAAYiC,IAAIb,GAAAA,eAAAA,CAAA,KAAA,EAAA;AAAA,QAAA,OAAA,EAAA,cAAA;AAAA,OAAA,EAAA,CAAAA,eAAAA,CAAA,KAAA,EAAA;AAAA,QAAA,OAAA,EAAA,SAAA;AAAA,QAAA,OAIhB,EAAA;AAAA,UAAEc,eAAAA,EAAkB,CAAMlC,IAAAA,EAAAA,WAAAA,CAAYiC,IAAK,CAAA,CAAA,CAAA;AAAA,SAAG;AAAA,OAAC,EAAA,IAAA,CAAA,CAAA,CAGxD,GAAA,IAAA,CAAA;AAEJ,MAAA,OAAAb,gBAAA,KAAA,EAAA;AAAA,QAAA,OAAA,EAAA,QAAA;AAAA,OAEKa,EAAAA,CAAAA,IAAIb,EAAAA,eAAAA,CAAA,KAAA,EAAA;AAAA,QAAA,OAAA,EAAA,eAAA;AAAA,SAEuBL,CAAAA,QAAQ,IAEnCiB,MAAM,CAAA,CAAA,CAAA;AAAA,KAGb,CAAA;AAAA,GACF;AACF,CAAC;;;;"}
@@ -162,6 +162,8 @@ var _sfc_main = /* @__PURE__ */ vue.defineComponent({
162
162
  verifyVisible.value = false;
163
163
  router.push({ path: "/" });
164
164
  }
165
+ } catch (e) {
166
+ elementPlus.ElMessage.error("\u767B\u5F55\u5931\u8D25");
165
167
  } finally {
166
168
  verifyVisible.value = false;
167
169
  loading.value = false;
@@ -1 +1 @@
1
- {"version":3,"file":"index.vue2.js","sources":["../../../../src/page/login/index.vue"],"sourcesContent":["<template>\n <div class=\"login-wrap\">\n <div class=\"login-bg\">\n <div class=\"login-bg-block\"></div>\n <div class=\"login-bg-block\"></div>\n </div>\n <div class=\"login-root\">\n <div class=\"login-main\">\n <div class=\"form-container\">\n <div class=\"form-wrap\">\n <div class=\"form-title\" v-if=\"!forgotPassword\">\n 账号登录\n <span class=\"notify\">\n 没有账号?<ElButton\n link\n class=\"operaBtn\"\n @click=\"router.push('/signup')\"\n >\n 申请使用\n </ElButton>\n </span>\n </div>\n <div class=\"form-title\" v-else>账号重置</div>\n <ElForm\n :model=\"loginFormData\"\n :rules=\"rules\"\n size=\"large\"\n ref=\"formEl\"\n @submit.native.prevent\n >\n <ElFormItem prop=\"account\">\n <ElInput\n v-model=\"loginFormData.account\"\n placeholder=\"帐号\"\n @keyup.enter.native.prevent=\"verifyHandle\"\n />\n </ElFormItem>\n <ElFormItem prop=\"password\" v-if=\"!forgotPassword\">\n <ElInput\n v-model=\"loginFormData.password\"\n type=\"password\"\n placeholder=\"密码\"\n @keyup.enter.native.prevent=\"verifyHandle\"\n />\n </ElFormItem>\n <ElFormItem>\n <ElRow style=\"width: 100%\">\n <ElCol :span=\"12\">\n <ElButton\n link\n class=\"operaBtn\"\n @click=\"forgotPassword = !forgotPassword\"\n >{{\n forgotPassword ? \"返回登陆\" : \"忘记密码?\"\n }}</ElButton\n >\n </ElCol>\n </ElRow>\n </ElFormItem>\n <ElFormItem>\n <ElButton\n type=\"primary\"\n style=\"width: 100%\"\n :loading=\"loading\"\n @click=\"verifyHandle\"\n :disabled=\"loginDisabled\"\n v-if=\"!forgotPassword\"\n >\n 登陆\n </ElButton>\n <ElButton\n type=\"primary\"\n style=\"width: 100%\"\n :loading=\"loading\"\n @click=\"verifyHandle\"\n :disabled=\"resetDisabled\"\n v-else\n >\n 重置\n </ElButton>\n </ElFormItem>\n </ElForm>\n <ElDivider></ElDivider>\n </div>\n </div>\n </div>\n </div>\n </div>\n\n <MKVerifyDialog\n ref=\"verifyDialog\"\n :scene=\"scene\"\n v-model:visible=\"verifyVisible\"\n v-if=\"verifyVisible\"\n @confirm=\"handleLogin\"\n />\n</template>\n\n<script setup lang=\"ts\">\nimport { ElMessage, ElForm, ElFormItem } from \"element-plus\";\nimport { useMSAppClient } from \"../../composables\";\nimport { MKVerifyDialog } from \"../../components\";\nimport { Ref, computed, reactive, ref } from \"vue\";\nimport { useRouter } from \"vue-router\";\n\ndefineOptions({\n mkRoute: {\n name: \"login\",\n path: \"/login\",\n meta: {\n isAuthorization: false,\n },\n },\n});\n\nconst verifyDialog: Ref<{ fail: () => void } | null> = ref(null);\n\n// 记住登陆状态\nconst rememberLoginState = ref(false);\n\nconst formEl: Ref<any> = ref(null);\n\nconst system = useMSAppClient()!;\n\nconst router = useRouter();\n\nconst loading = ref(false);\n\nconst loginDisabled = computed(\n () => !loginFormData.account || !loginFormData.password\n);\nconst resetDisabled = computed(() => !loginFormData.account);\n\nconst forgotPassword = ref(false);\nconst scene = computed(() =>\n forgotPassword.value ? \"ModifyPassword\" : \"Login\"\n);\n\nconst rules = {\n account: [{ required: true, message: \"账号必填\" }],\n password: [{ required: true, message: \"密码必填\" }],\n};\n\nconst loginFormData = reactive({\n account: \"\",\n password: \"\",\n vCode: \"code\",\n});\nconst verifyVisible = ref(false);\n\nconst verifyHandle = async () => {\n const result = await formEl.value?.validate();\n if (!result) {\n return;\n }\n verifyVisible.value = true;\n};\n\nconst handleLogin = async (v: string) => {\n loginFormData.vCode = v;\n try {\n loading.value = true;\n if (forgotPassword.value) {\n const { data } = await system.modifyPassword(\n loginFormData.account,\n loginFormData.vCode\n );\n if (data.code !== 200) {\n ElMessage.error(data.msg || \"重置邮箱失败!\");\n return;\n }\n ElMessage.success(\"重置密码邮件已发送到邮箱\");\n forgotPassword.value = false;\n } else {\n const { data } = await system.login(\n loginFormData.account,\n loginFormData.password,\n loginFormData.vCode\n );\n\n if (data.code !== 200) {\n ElMessage.error(data.msg || \"登录失败!\");\n return;\n }\n verifyVisible.value = false;\n\n router.push({ path: \"/\" });\n }\n } finally {\n verifyVisible.value = false;\n loading.value = false;\n }\n};\n</script>\n"],"names":["ref","useMSAppClient","useRouter","computed","reactive","ElMessage"],"mappings":"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"}
1
+ {"version":3,"file":"index.vue2.js","sources":["../../../../src/page/login/index.vue"],"sourcesContent":["<template>\n <div class=\"login-wrap\">\n <div class=\"login-bg\">\n <div class=\"login-bg-block\"></div>\n <div class=\"login-bg-block\"></div>\n </div>\n <div class=\"login-root\">\n <div class=\"login-main\">\n <div class=\"form-container\">\n <div class=\"form-wrap\">\n <div class=\"form-title\" v-if=\"!forgotPassword\">\n 账号登录\n <span class=\"notify\">\n 没有账号?<ElButton\n link\n class=\"operaBtn\"\n @click=\"router.push('/signup')\"\n >\n 申请使用\n </ElButton>\n </span>\n </div>\n <div class=\"form-title\" v-else>账号重置</div>\n <ElForm\n :model=\"loginFormData\"\n :rules=\"rules\"\n size=\"large\"\n ref=\"formEl\"\n @submit.native.prevent\n >\n <ElFormItem prop=\"account\">\n <ElInput\n v-model=\"loginFormData.account\"\n placeholder=\"帐号\"\n @keyup.enter.native.prevent=\"verifyHandle\"\n />\n </ElFormItem>\n <ElFormItem prop=\"password\" v-if=\"!forgotPassword\">\n <ElInput\n v-model=\"loginFormData.password\"\n type=\"password\"\n placeholder=\"密码\"\n @keyup.enter.native.prevent=\"verifyHandle\"\n />\n </ElFormItem>\n <ElFormItem>\n <ElRow style=\"width: 100%\">\n <ElCol :span=\"12\">\n <ElButton\n link\n class=\"operaBtn\"\n @click=\"forgotPassword = !forgotPassword\"\n >{{\n forgotPassword ? \"返回登陆\" : \"忘记密码?\"\n }}</ElButton\n >\n </ElCol>\n </ElRow>\n </ElFormItem>\n <ElFormItem>\n <ElButton\n type=\"primary\"\n style=\"width: 100%\"\n :loading=\"loading\"\n @click=\"verifyHandle\"\n :disabled=\"loginDisabled\"\n v-if=\"!forgotPassword\"\n >\n 登陆\n </ElButton>\n <ElButton\n type=\"primary\"\n style=\"width: 100%\"\n :loading=\"loading\"\n @click=\"verifyHandle\"\n :disabled=\"resetDisabled\"\n v-else\n >\n 重置\n </ElButton>\n </ElFormItem>\n </ElForm>\n <ElDivider></ElDivider>\n </div>\n </div>\n </div>\n </div>\n </div>\n\n <MKVerifyDialog\n ref=\"verifyDialog\"\n :scene=\"scene\"\n v-model:visible=\"verifyVisible\"\n v-if=\"verifyVisible\"\n @confirm=\"handleLogin\"\n />\n</template>\n\n<script setup lang=\"ts\">\nimport { ElMessage, ElForm, ElFormItem } from \"element-plus\";\nimport { useMSAppClient } from \"../../composables\";\nimport { MKVerifyDialog } from \"../../components\";\nimport { Ref, computed, reactive, ref } from \"vue\";\nimport { useRouter } from \"vue-router\";\n\ndefineOptions({\n mkRoute: {\n name: \"login\",\n path: \"/login\",\n meta: {\n isAuthorization: false,\n },\n },\n});\n\nconst verifyDialog: Ref<{ fail: () => void } | null> = ref(null);\n\n// 记住登陆状态\nconst rememberLoginState = ref(false);\n\nconst formEl: Ref<any> = ref(null);\n\nconst system = useMSAppClient()!;\n\nconst router = useRouter();\n\nconst loading = ref(false);\n\nconst loginDisabled = computed(\n () => !loginFormData.account || !loginFormData.password\n);\nconst resetDisabled = computed(() => !loginFormData.account);\n\nconst forgotPassword = ref(false);\nconst scene = computed(() =>\n forgotPassword.value ? \"ModifyPassword\" : \"Login\"\n);\n\nconst rules = {\n account: [{ required: true, message: \"账号必填\" }],\n password: [{ required: true, message: \"密码必填\" }],\n};\n\nconst loginFormData = reactive({\n account: \"\",\n password: \"\",\n vCode: \"code\",\n});\nconst verifyVisible = ref(false);\n\nconst verifyHandle = async () => {\n const result = await formEl.value?.validate();\n if (!result) {\n return;\n }\n verifyVisible.value = true;\n};\n\nconst handleLogin = async (v: string) => {\n loginFormData.vCode = v;\n try {\n loading.value = true;\n if (forgotPassword.value) {\n const { data } = await system.modifyPassword(\n loginFormData.account,\n loginFormData.vCode\n );\n if (data.code !== 200) {\n ElMessage.error(data.msg || \"重置邮箱失败!\");\n return;\n }\n ElMessage.success(\"重置密码邮件已发送到邮箱\");\n forgotPassword.value = false;\n } else {\n const { data } = await system.login(\n loginFormData.account,\n loginFormData.password,\n loginFormData.vCode\n );\n\n if (data.code !== 200) {\n ElMessage.error(data.msg || \"登录失败!\");\n return;\n }\n verifyVisible.value = false;\n\n router.push({ path: \"/\" });\n }\n } catch (e) {\n ElMessage.error(\"登录失败\");\n } finally {\n verifyVisible.value = false;\n loading.value = false;\n }\n};\n</script>\n"],"names":["ref","useMSAppClient","useRouter","computed","reactive","ElMessage"],"mappings":"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"}
@@ -1,19 +1,5 @@
1
1
  import { defineComponent, computed, unref, resolveComponent, resolveDirective, openBlock, createElementBlock, createVNode, withDirectives, createElementVNode, Fragment, renderList, normalizeClass, toDisplayString, createTextVNode, withCtx, createCommentVNode, createBlock } from 'vue';
2
2
  import { ElPagination } from 'element-plus';
3
- import { MKUploadFile } from '../upload-file/upload-file.js';
4
- import '@maketribe/request';
5
- import '@maketribe/dm';
6
- import '@maketribe/utils';
7
- import '../../core/DataModelDefines.js';
8
- import 'vue-router';
9
- import '@maketribe/locale';
10
- import '../material-select/index.js';
11
- import '../upload-file/context/material-upload-context.js';
12
- import '../upload-file/context/material-upload-context-options.js';
13
- import { MKWebFileUploadContext } from '../upload-file/context/web-file-upload-context.js';
14
- import '../upload-file/context/web-file-upload-context-options.js';
15
- import '../upload-file/ui/upload-image/index.js';
16
- import '../upload-file/upload-file-options.js';
17
3
  import MaterialGroup from './material-group.vue.js';
18
4
  import MaterialItem from './material-item.vue.js';
19
5
  import { materialListProps, materialListEmits } from './material-list-options.js';
@@ -91,6 +77,8 @@ var _sfc_main = /* @__PURE__ */ defineComponent({
91
77
  };
92
78
  return (_ctx, _cache) => {
93
79
  const _component_ElButton = resolveComponent("ElButton");
80
+ const _component_MKUploadFile = resolveComponent("MKUploadFile");
81
+ const _component_MKWebFileUploadContext = resolveComponent("MKWebFileUploadContext");
94
82
  const _component_ElScrollbar = resolveComponent("ElScrollbar");
95
83
  const _directive_loading = resolveDirective("loading");
96
84
  return openBlock(), createElementBlock("div", _hoisted_1, [
@@ -127,12 +115,12 @@ var _sfc_main = /* @__PURE__ */ defineComponent({
127
115
  1
128
116
  /* TEXT */
129
117
  ),
130
- createVNode(unref(MKWebFileUploadContext), {
118
+ createVNode(_component_MKWebFileUploadContext, {
131
119
  "web-file-upload": _ctx.materialMan.upload,
132
120
  accept: currentMaterialType.value.accept
133
121
  }, {
134
122
  default: withCtx(() => [
135
- createVNode(unref(MKUploadFile), null, {
123
+ createVNode(_component_MKUploadFile, null, {
136
124
  default: withCtx(() => [
137
125
  createVNode(_component_ElButton, { type: "primary" }, {
138
126
  default: withCtx(() => [
@@ -1 +1 @@
1
- {"version":3,"file":"material-list.vue2.js","sources":["../../../../src/components/material-list/material-list.vue"],"sourcesContent":["<template>\n <div class=\"mk-material-list\">\n <MaterialGroup :material-man=\"materialMan\" />\n <div class=\"mk-material-list__main\" v-loading=\"loading\">\n <div class=\"mk-material-list__header\">\n <div class=\"mk-material-list__header-left\">\n <div class=\"mk-material-list__types\">\n <div\n v-for=\"item of materialTypes\"\n :key=\"item.value\"\n :class=\"[\n 'mk-material-list__type',\n currentMaterialTypeId === item.value ? 'is-active' : '',\n ]\"\n @click=\"handleMaterialTypeClick(item)\"\n >\n {{ item.label }}\n </div>\n </div>\n </div>\n <div class=\"mk-material-list__header-right\">\n <template v-if=\"currentMaterialType\">\n {{ currentMaterialType.label }}大小不超过\n {{ currentMaterialType.limit }} M\n <MKWebFileUploadContext\n :web-file-upload=\"materialMan.upload\"\n :accept=\"currentMaterialType.accept\"\n >\n <MKUploadFile>\n <ElButton type=\"primary\">\n 选择{{ currentMaterialType.label }}\n </ElButton>\n </MKUploadFile>\n </MKWebFileUploadContext>\n </template>\n </div>\n </div>\n\n <div class=\"mk-material-list__body\">\n <ElScrollbar height=\"100%\">\n <div class=\"mk-material-list__wrapper\">\n <MaterialItem\n v-for=\"material of materialList\"\n :key=\"material.id\"\n :class=\"[\n 'mk-material-list__item',\n value === material.path ? 'is-current' : '',\n ]\"\n :material-table=\"materialTable\"\n :material=\"material\"\n @click.capture=\"handleMaterialItemClick($event, material)\"\n />\n </div>\n </ElScrollbar>\n <div class=\"mk-material-list__footer\">\n <ElPagination\n class=\"mk-data-table-pagination\"\n :background=\"true\"\n :pageSizes=\"unref(pageSizes)\"\n :currentPage=\"unref(currentPage)\"\n :pageSize=\"unref(pageSize)\"\n :total=\"unref(totalRecCount)\"\n layout=\"prev, pager, next\"\n @current-change=\"changeCurrentPage\"\n @size-change=\"changePageSize\"\n />\n </div>\n </div>\n </div>\n </div>\n</template>\n\n<script setup lang=\"ts\">\nimport { computed, unref } from \"vue\";\nimport { ElPagination } from \"element-plus\";\nimport { MKUploadFile, MKWebFileUploadContext } from \"../upload-file\";\nimport { MaterialType, Material } from \"../../dataview\";\nimport MaterialGroup from \"./material-group.vue\";\nimport MaterialItem from \"./material-item.vue\";\nimport { materialListProps, materialListEmits } from \"./material-list-options\";\n\ndefineOptions({ name: \"MKMaterialList\" });\n\nconst props = defineProps(materialListProps);\n\nconst emit = defineEmits(materialListEmits);\n\nprops.materialMan.init();\n\nconst loading = computed(() => props.materialMan.materialTable.loading);\n\nconst value = computed({\n get: () => {\n return props.selectable ? props.selectedPath ?? null : null;\n },\n set: (v) => {\n emit(\"update:selected-path\", v);\n },\n});\n\nconst materialTable = computed(() => props.materialMan.materialTable);\nconst pageSizes = computed(() => unref(materialTable).pageSizes);\nconst currentPage = computed({\n get: () => unref(materialTable).currentPage,\n set: (v) => {\n unref(materialTable).pageTo(v);\n },\n});\nconst pageSize = computed({\n get: () => unref(materialTable).pageSize,\n set: (v) => {\n unref(materialTable).setPageSize(v);\n },\n});\nconst totalRecCount = computed(() => unref(materialTable).totalRecCount);\nconst changeCurrentPage = (v: number) => {\n currentPage.value = v;\n};\nconst changePageSize = (v: number) => {\n pageSize.value = v;\n};\n\nconst materialList = computed(() => unref(materialTable).getList());\nconst materialTypes = computed(() => props.materialMan.getMaterialType());\nconst currentMaterialTypeId = computed(\n () => props.materialMan.currentMaterialTypeId\n);\n\nconst currentMaterialType = computed(\n () => props.materialMan.currentMaterialType\n);\n\nconst handleMaterialTypeClick = (materialType: MaterialType) => {\n if (materialType.value === unref(currentMaterialTypeId)) {\n return;\n }\n\n props.materialMan.setCurrentMaterialTypeId(materialType.value);\n};\n\nconst handleMaterialItemClick = (event: MouseEvent, material: Material) => {\n if (!props.selectable) {\n return;\n }\n\n event.preventDefault();\n event.stopPropagation();\n\n value.value = material.path;\n emit(\"selectedChange\", material);\n};\n</script>\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"material-list.vue2.js","sources":["../../../../src/components/material-list/material-list.vue"],"sourcesContent":["<template>\n <div class=\"mk-material-list\">\n <MaterialGroup :material-man=\"materialMan\" />\n <div class=\"mk-material-list__main\" v-loading=\"loading\">\n <div class=\"mk-material-list__header\">\n <div class=\"mk-material-list__header-left\">\n <div class=\"mk-material-list__types\">\n <div\n v-for=\"item of materialTypes\"\n :key=\"item.value\"\n :class=\"[\n 'mk-material-list__type',\n currentMaterialTypeId === item.value ? 'is-active' : '',\n ]\"\n @click=\"handleMaterialTypeClick(item)\"\n >\n {{ item.label }}\n </div>\n </div>\n </div>\n <div class=\"mk-material-list__header-right\">\n <template v-if=\"currentMaterialType\">\n {{ currentMaterialType.label }}大小不超过\n {{ currentMaterialType.limit }} M\n <MKWebFileUploadContext\n :web-file-upload=\"materialMan.upload\"\n :accept=\"currentMaterialType.accept\"\n >\n <MKUploadFile>\n <ElButton type=\"primary\">\n 选择{{ currentMaterialType.label }}\n </ElButton>\n </MKUploadFile>\n </MKWebFileUploadContext>\n </template>\n </div>\n </div>\n\n <div class=\"mk-material-list__body\">\n <ElScrollbar height=\"100%\">\n <div class=\"mk-material-list__wrapper\">\n <MaterialItem\n v-for=\"material of materialList\"\n :key=\"material.id\"\n :class=\"[\n 'mk-material-list__item',\n value === material.path ? 'is-current' : '',\n ]\"\n :material-table=\"materialTable\"\n :material=\"material\"\n @click.capture=\"handleMaterialItemClick($event, material)\"\n />\n </div>\n </ElScrollbar>\n <div class=\"mk-material-list__footer\">\n <ElPagination\n class=\"mk-data-table-pagination\"\n :background=\"true\"\n :pageSizes=\"unref(pageSizes)\"\n :currentPage=\"unref(currentPage)\"\n :pageSize=\"unref(pageSize)\"\n :total=\"unref(totalRecCount)\"\n layout=\"prev, pager, next\"\n @current-change=\"changeCurrentPage\"\n @size-change=\"changePageSize\"\n />\n </div>\n </div>\n </div>\n </div>\n</template>\n\n<script setup lang=\"ts\">\nimport { computed, unref } from \"vue\";\nimport { ElPagination } from \"element-plus\";\n// import { MKUploadFile } from \"../upload-file/upload-file\";\n// import { MKWebFileUploadContext } from \"../upload-file/context/web-file-upload-context\";\nimport { MaterialType, Material } from \"../../dataview\";\nimport MaterialGroup from \"./material-group.vue\";\nimport MaterialItem from \"./material-item.vue\";\nimport { materialListProps, materialListEmits } from \"./material-list-options\";\n\ndefineOptions({ name: \"MKMaterialList\" });\n\nconst props = defineProps(materialListProps);\n\nconst emit = defineEmits(materialListEmits);\n\nprops.materialMan.init();\n\nconst loading = computed(() => props.materialMan.materialTable.loading);\n\nconst value = computed({\n get: () => {\n return props.selectable ? props.selectedPath ?? null : null;\n },\n set: (v) => {\n emit(\"update:selected-path\", v);\n },\n});\n\nconst materialTable = computed(() => props.materialMan.materialTable);\nconst pageSizes = computed(() => unref(materialTable).pageSizes);\nconst currentPage = computed({\n get: () => unref(materialTable).currentPage,\n set: (v) => {\n unref(materialTable).pageTo(v);\n },\n});\nconst pageSize = computed({\n get: () => unref(materialTable).pageSize,\n set: (v) => {\n unref(materialTable).setPageSize(v);\n },\n});\nconst totalRecCount = computed(() => unref(materialTable).totalRecCount);\nconst changeCurrentPage = (v: number) => {\n currentPage.value = v;\n};\nconst changePageSize = (v: number) => {\n pageSize.value = v;\n};\n\nconst materialList = computed(() => unref(materialTable).getList());\nconst materialTypes = computed(() => props.materialMan.getMaterialType());\nconst currentMaterialTypeId = computed(\n () => props.materialMan.currentMaterialTypeId\n);\n\nconst currentMaterialType = computed(\n () => props.materialMan.currentMaterialType\n);\n\nconst handleMaterialTypeClick = (materialType: MaterialType) => {\n if (materialType.value === unref(currentMaterialTypeId)) {\n return;\n }\n\n props.materialMan.setCurrentMaterialTypeId(materialType.value);\n};\n\nconst handleMaterialItemClick = (event: MouseEvent, material: Material) => {\n if (!props.selectable) {\n return;\n }\n\n event.preventDefault();\n event.stopPropagation();\n\n value.value = material.path;\n emit(\"selectedChange\", material);\n};\n</script>\n"],"names":[],"mappings":"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"}
@@ -1,7 +1,7 @@
1
1
  import { ExtractPropTypes } from "vue";
2
- import { UploadContext } from "../../context";
2
+ import { MaterialUploadContext, UploadContext } from "../../context";
3
3
  export declare const uploadImageProps: {
4
- readonly uploadContext: import("@maketribe/utils").PropFinalized<typeof UploadContext, unknown, unknown, () => import("../../context").MaterialUploadContext, boolean>;
4
+ readonly uploadContext: import("@maketribe/utils").PropFinalized<typeof UploadContext, unknown, unknown, () => MaterialUploadContext, boolean>;
5
5
  readonly modelValue: {
6
6
  readonly type: import("vue").PropType<import("@maketribe/utils").PropMergeType<readonly [StringConstructor, {
7
7
  (arrayLength: number): String[];
@@ -1,8 +1,23 @@
1
1
  import { buildProps } from '@maketribe/utils';
2
- import { uploadFileProps } from '../../upload-file-options.js';
2
+ import { UploadContext } from '../../context/UploadContext.js';
3
+ import '@maketribe/request';
4
+ import 'vue';
5
+ import '@maketribe/dm';
6
+ import 'element-plus';
7
+ import '../../../../core/DataModelDefines.js';
8
+ import 'vue-router';
9
+ import '@maketribe/locale';
10
+ import { MaterialUploadContext } from '../../context/MaterialUploadContext.js';
11
+ import '../../context/material-upload-context.js';
12
+ import '../../context/material-upload-context-options.js';
13
+ import '../../context/web-file-upload-context.js';
14
+ import '../../context/web-file-upload-context-options.js';
3
15
 
4
16
  const uploadImageProps = buildProps({
5
- uploadContext: uploadFileProps.uploadContext,
17
+ uploadContext: {
18
+ type: UploadContext,
19
+ default: () => new MaterialUploadContext()
20
+ },
6
21
  modelValue: {
7
22
  type: [String, Array]
8
23
  },
@@ -1 +1 @@
1
- {"version":3,"file":"upload-image-options.js","sources":["../../../../../../src/components/upload-file/ui/upload-image/upload-image-options.ts"],"sourcesContent":["import { ExtractPropTypes } from \"vue\";\nimport { buildProps } from \"@maketribe/utils\";\nimport { uploadFileEmits, uploadFileProps } from \"../../upload-file-options\";\nimport { UploadContext } from \"../../context\";\n\nexport const uploadImageProps = buildProps({\n uploadContext: uploadFileProps.uploadContext,\n modelValue: {\n type: [String, Array<String>],\n },\n multiple: {\n type: Boolean,\n default: false,\n },\n} as const);\n\nexport type UploadImageProps = ExtractPropTypes<typeof uploadImageProps>;\n\nexport const uploadImageEmits = {\n \"update:modelValue\": (path: string | string[]) => true,\n};\n\nexport type UploadImageEmits = typeof uploadImageEmits;\n"],"names":[],"mappings":";;;AAKO,MAAM,mBAAmB,UAAW,CAAA;AAAA,EACzC,eAAe,eAAgB,CAAA,aAAA;AAAA,EAC/B,UAAY,EAAA;AAAA,IACV,IAAA,EAAM,CAAC,MAAA,EAAQ,KAAa,CAAA;AAAA,GAC9B;AAAA,EACA,QAAU,EAAA;AAAA,IACR,IAAM,EAAA,OAAA;AAAA,IACN,OAAS,EAAA,KAAA;AAAA,GACX;AACF,CAAU,EAAA;AAIH,MAAM,gBAAmB,GAAA;AAAA,EAC9B,mBAAA,EAAqB,CAAC,IAA4B,KAAA,IAAA;AACpD;;;;"}
1
+ {"version":3,"file":"upload-image-options.js","sources":["../../../../../../src/components/upload-file/ui/upload-image/upload-image-options.ts"],"sourcesContent":["import { ExtractPropTypes } from \"vue\";\nimport { buildProps } from \"@maketribe/utils\";\nimport { MaterialUploadContext, UploadContext } from \"../../context\";\n\nexport const uploadImageProps = buildProps({\n uploadContext: {\n type: UploadContext,\n default: () => new MaterialUploadContext(),\n },\n modelValue: {\n type: [String, Array<String>],\n },\n multiple: {\n type: Boolean,\n default: false,\n },\n} as const);\n\nexport type UploadImageProps = ExtractPropTypes<typeof uploadImageProps>;\n\nexport const uploadImageEmits = {\n \"update:modelValue\": (path: string | string[]) => true,\n};\n\nexport type UploadImageEmits = typeof uploadImageEmits;\n"],"names":[],"mappings":";;;;;;;;;;;;;;;AAIO,MAAM,mBAAmB,UAAW,CAAA;AAAA,EACzC,aAAe,EAAA;AAAA,IACb,IAAM,EAAA,aAAA;AAAA,IACN,OAAA,EAAS,MAAM,IAAI,qBAAsB,EAAA;AAAA,GAC3C;AAAA,EACA,UAAY,EAAA;AAAA,IACV,IAAA,EAAM,CAAC,MAAA,EAAQ,KAAa,CAAA;AAAA,GAC9B;AAAA,EACA,QAAU,EAAA;AAAA,IACR,IAAM,EAAA,OAAA;AAAA,IACN,OAAS,EAAA,KAAA;AAAA,GACX;AACF,CAAU,EAAA;AAIH,MAAM,gBAAmB,GAAA;AAAA,EAC9B,mBAAA,EAAqB,CAAC,IAA4B,KAAA,IAAA;AACpD;;;;"}
@@ -117,11 +117,7 @@ class MSAppClient {
117
117
  this.pageManager.setMSAppCLient(this);
118
118
  this.httpRequest.getInterceptors().response.use((config) => {
119
119
  if (config.data.code === 401) {
120
- if (this.userSession) {
121
- this.userSession.lock();
122
- } else {
123
- this.vueRouter.push({ name: "login" });
124
- }
120
+ this.vueRouter.push({ name: "login" });
125
121
  }
126
122
  return config;
127
123
  });
@@ -1 +1 @@
1
- {"version":3,"file":"MSAppClient.js","sources":["../../../src/core/MSAppClient.ts"],"sourcesContent":["import {\n createRouter,\n createWebHashHistory,\n Router as VueRouter,\n} from \"vue-router\";\nimport {\n DataViewRequest,\n DVQueryable,\n HttpRequest,\n R,\n WebHttpRequest,\n} from \"@maketribe/request\";\nimport { IComponents, DataModel, Components } from \"@maketribe/dm\";\nimport { I18n } from \"@maketribe/locale\";\n\nimport { Event, md5 } from \"@maketribe/utils\";\nimport { UserSession } from \"./UserSession\";\nimport { authBeforeEach } from \"../router-middleware\";\nimport { PageManager } from \"./PageManager\";\nimport { ACCESS_TOKEN_HEADER, X_ACCESS_TOKEN_HEADER } from \"../constants\";\n\nexport type LoginResult = {\n account: string;\n email: string;\n nickName: string;\n avatarPath: string;\n};\n\nexport interface MSAppClientOptions {\n pageManager?: PageManager;\n projectName: string;\n httpRequest?: HttpRequest;\n origin: string;\n appID: string;\n logo?: string;\n locale?: string;\n vueRouter?: VueRouter;\n dataTableComponents?: IComponents;\n dataFormComponents?: IComponents;\n dataFilterComponents?: IComponents;\n whereFilterComponents?: IComponents;\n}\n\nexport class MSAppClient {\n static instance: MSAppClient | null = null;\n\n origin: string = \"\";\n\n private _options: Required<MSAppClientOptions>;\n\n projectName: string;\n\n logo: string;\n\n appID: string;\n\n userSession: UserSession | null = null;\n\n httpRequest: HttpRequest;\n\n ready: boolean = false;\n\n initd: boolean = false;\n\n pageManager: PageManager;\n\n /**\n * @deprecated\n * @description 使用 MSAppClient.instance.userSession.userInfo\n */\n get userInfo() {\n return this.userSession?.userInfo ?? null;\n }\n\n i18n: I18n;\n\n dataTableComponents: IComponents;\n dataFormComponents: IComponents;\n dataFilterComponents: IComponents;\n whereFilterComponents: IComponents;\n\n vueRouter: VueRouter;\n\n beforeInitUserSessionEvent: Event<{ userSession: UserSession }> = new Event();\n\n userSessionChangeEvent: Event<{ userSession: UserSession | null }> =\n new Event();\n\n constructor(options: MSAppClientOptions) {\n this._options = this._normalizeOptions(options);\n\n this.appID = this._options.appID;\n\n this.logo = this._options.logo;\n\n this.projectName = options.projectName;\n\n this.i18n = I18n.instance;\n this.i18n.setCurrentLanguageName(this._options.locale);\n\n this.dataTableComponents = this._options.dataTableComponents;\n this.dataFormComponents = this._options.dataFormComponents;\n this.dataFilterComponents = this._options.dataFilterComponents;\n this.whereFilterComponents = this._options.whereFilterComponents;\n\n this.vueRouter = this._options.vueRouter;\n\n this.pageManager = this._options.pageManager;\n\n HttpRequest.appID = this.appID;\n\n this.httpRequest = this._options.httpRequest;\n\n DataModel.setHttpRequest(this.httpRequest);\n DVQueryable.setDefaultDataViewRequest(\n new DataViewRequest({ httpRequest: this.httpRequest })\n );\n }\n\n setUserSession(userSession: UserSession | null) {\n if (this.userSession) {\n this.userSession.dispose();\n }\n\n this.userSession = userSession;\n\n this.userSessionChangeEvent.emit({ userSession });\n }\n\n private _normalizeOptions(\n options: MSAppClientOptions\n ): Required<MSAppClientOptions> {\n return {\n appID: options.appID,\n projectName: options.projectName,\n httpRequest: options.httpRequest ?? new WebHttpRequest(),\n origin: options.origin,\n logo: options.logo || \"\",\n locale: options.locale || \"zh-cn\",\n vueRouter:\n options.vueRouter ??\n createRouter({\n history: createWebHashHistory(),\n routes: [],\n }),\n pageManager: options.pageManager ?? new PageManager(),\n dataTableComponents: options.dataTableComponents ?? new Components(),\n dataFormComponents: options.dataFormComponents ?? new Components(),\n dataFilterComponents: options.dataFilterComponents ?? new Components(),\n whereFilterComponents: options.whereFilterComponents ?? new Components(),\n };\n }\n getI18n() {\n return this.i18n;\n }\n\n getOptions() {\n return this._options;\n }\n\n async loadCurrentUserSession(options?: {\n accessToken: string;\n xAccessToken: string;\n }) {\n const userSession = (this.userSession = new UserSession({\n msAppClient: this,\n ...options,\n }));\n this.userSession = null;\n\n this.beforeInitUserSessionEvent.emit({ userSession });\n const userSessionInitResult = await userSession.init();\n\n if (userSessionInitResult?.data.code !== 200) {\n userSession.dispose();\n return userSessionInitResult!;\n }\n\n this.setUserSession(userSession);\n }\n\n async init() {\n if (this.initd) {\n return;\n }\n\n this.vueRouter.beforeEach(async (to, from, next) => {\n const route = await authBeforeEach(this, to, from);\n\n if (route) {\n next(route);\n return;\n }\n\n next();\n });\n\n this.pageManager.init();\n this.pageManager.setMSAppCLient(this);\n\n this.httpRequest.getInterceptors().response.use((config) => {\n if (config.data.code === 401) {\n if (this.userSession) {\n this.userSession.lock();\n } else {\n this.vueRouter.push({ name: \"login\" });\n }\n }\n return config;\n });\n\n this.initd = true;\n }\n\n async login(account: string, password: string, code: string) {\n const response = await this.httpRequest.request<R<LoginResult>>({\n url: \"/api/ms-login/login\",\n method: \"POST\",\n data: { account, password: md5(`mkbl#${password}`), vCode: code },\n });\n\n if (response.data.code === 200) {\n await this.loadCurrentUserSession({\n accessToken: response.headers[ACCESS_TOKEN_HEADER],\n xAccessToken: response.headers[X_ACCESS_TOKEN_HEADER],\n });\n }\n\n return response;\n }\n\n formatURL(url: string) {\n return url;\n }\n\n async modifyPassword(account: string, code: string) {\n type LoginResult = {\n account: string;\n email: string;\n nickName: string;\n avatarPath: string;\n };\n\n const response = await this.httpRequest.request<R<LoginResult>>({\n url: \"/api/ms-login/modify-password\",\n method: \"POST\",\n data: { account, vCode: code },\n });\n\n return response;\n }\n\n async logout() {\n this.userSession?.dispose();\n this.setUserSession(null);\n\n return this.httpRequest.get(\"/api/ms-login/logout\");\n }\n}\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"MSAppClient.js","sources":["../../../src/core/MSAppClient.ts"],"sourcesContent":["import {\n createRouter,\n createWebHashHistory,\n Router as VueRouter,\n} from \"vue-router\";\nimport {\n DataViewRequest,\n DVQueryable,\n HttpRequest,\n R,\n WebHttpRequest,\n} from \"@maketribe/request\";\nimport { IComponents, DataModel, Components } from \"@maketribe/dm\";\nimport { I18n } from \"@maketribe/locale\";\n\nimport { Event, md5 } from \"@maketribe/utils\";\nimport { UserSession } from \"./UserSession\";\nimport { authBeforeEach } from \"../router-middleware\";\nimport { PageManager } from \"./PageManager\";\nimport { ACCESS_TOKEN_HEADER, X_ACCESS_TOKEN_HEADER } from \"../constants\";\n\nexport type LoginResult = {\n account: string;\n email: string;\n nickName: string;\n avatarPath: string;\n};\n\nexport interface MSAppClientOptions {\n pageManager?: PageManager;\n projectName: string;\n httpRequest?: HttpRequest;\n origin: string;\n appID: string;\n logo?: string;\n locale?: string;\n vueRouter?: VueRouter;\n dataTableComponents?: IComponents;\n dataFormComponents?: IComponents;\n dataFilterComponents?: IComponents;\n whereFilterComponents?: IComponents;\n}\n\nexport class MSAppClient {\n static instance: MSAppClient | null = null;\n\n origin: string = \"\";\n\n private _options: Required<MSAppClientOptions>;\n\n projectName: string;\n\n logo: string;\n\n appID: string;\n\n userSession: UserSession | null = null;\n\n httpRequest: HttpRequest;\n\n ready: boolean = false;\n\n initd: boolean = false;\n\n pageManager: PageManager;\n\n /**\n * @deprecated\n * @description 使用 MSAppClient.instance.userSession.userInfo\n */\n get userInfo() {\n return this.userSession?.userInfo ?? null;\n }\n\n i18n: I18n;\n\n dataTableComponents: IComponents;\n dataFormComponents: IComponents;\n dataFilterComponents: IComponents;\n whereFilterComponents: IComponents;\n\n vueRouter: VueRouter;\n\n beforeInitUserSessionEvent: Event<{ userSession: UserSession }> = new Event();\n\n userSessionChangeEvent: Event<{ userSession: UserSession | null }> =\n new Event();\n\n constructor(options: MSAppClientOptions) {\n this._options = this._normalizeOptions(options);\n\n this.appID = this._options.appID;\n\n this.logo = this._options.logo;\n\n this.projectName = options.projectName;\n\n this.i18n = I18n.instance;\n this.i18n.setCurrentLanguageName(this._options.locale);\n\n this.dataTableComponents = this._options.dataTableComponents;\n this.dataFormComponents = this._options.dataFormComponents;\n this.dataFilterComponents = this._options.dataFilterComponents;\n this.whereFilterComponents = this._options.whereFilterComponents;\n\n this.vueRouter = this._options.vueRouter;\n\n this.pageManager = this._options.pageManager;\n\n HttpRequest.appID = this.appID;\n\n this.httpRequest = this._options.httpRequest;\n\n DataModel.setHttpRequest(this.httpRequest);\n DVQueryable.setDefaultDataViewRequest(\n new DataViewRequest({ httpRequest: this.httpRequest })\n );\n }\n\n setUserSession(userSession: UserSession | null) {\n if (this.userSession) {\n this.userSession.dispose();\n }\n\n this.userSession = userSession;\n\n this.userSessionChangeEvent.emit({ userSession });\n }\n\n private _normalizeOptions(\n options: MSAppClientOptions\n ): Required<MSAppClientOptions> {\n return {\n appID: options.appID,\n projectName: options.projectName,\n httpRequest: options.httpRequest ?? new WebHttpRequest(),\n origin: options.origin,\n logo: options.logo || \"\",\n locale: options.locale || \"zh-cn\",\n vueRouter:\n options.vueRouter ??\n createRouter({\n history: createWebHashHistory(),\n routes: [],\n }),\n pageManager: options.pageManager ?? new PageManager(),\n dataTableComponents: options.dataTableComponents ?? new Components(),\n dataFormComponents: options.dataFormComponents ?? new Components(),\n dataFilterComponents: options.dataFilterComponents ?? new Components(),\n whereFilterComponents: options.whereFilterComponents ?? new Components(),\n };\n }\n getI18n() {\n return this.i18n;\n }\n\n getOptions() {\n return this._options;\n }\n\n async loadCurrentUserSession(options?: {\n accessToken: string;\n xAccessToken: string;\n }) {\n const userSession = (this.userSession = new UserSession({\n msAppClient: this,\n ...options,\n }));\n this.userSession = null;\n\n this.beforeInitUserSessionEvent.emit({ userSession });\n const userSessionInitResult = await userSession.init();\n\n if (userSessionInitResult?.data.code !== 200) {\n userSession.dispose();\n return userSessionInitResult!;\n }\n\n this.setUserSession(userSession);\n }\n\n async init() {\n if (this.initd) {\n return;\n }\n\n this.vueRouter.beforeEach(async (to, from, next) => {\n const route = await authBeforeEach(this, to, from);\n\n if (route) {\n next(route);\n return;\n }\n\n next();\n });\n\n this.pageManager.init();\n this.pageManager.setMSAppCLient(this);\n\n this.httpRequest.getInterceptors().response.use((config) => {\n if (config.data.code === 401) {\n this.vueRouter.push({ name: \"login\" });\n // if (this.userSession) {\n // this.userSession.lock();\n // } else {\n // this.vueRouter.push({ name: \"login\" });\n // }\n }\n return config;\n });\n\n this.initd = true;\n }\n\n async login(account: string, password: string, code: string) {\n const response = await this.httpRequest.request<R<LoginResult>>({\n url: \"/api/ms-login/login\",\n method: \"POST\",\n data: { account, password: md5(`mkbl#${password}`), vCode: code },\n });\n\n if (response.data.code === 200) {\n await this.loadCurrentUserSession({\n accessToken: response.headers[ACCESS_TOKEN_HEADER],\n xAccessToken: response.headers[X_ACCESS_TOKEN_HEADER],\n });\n }\n\n return response;\n }\n\n formatURL(url: string) {\n return url;\n }\n\n async modifyPassword(account: string, code: string) {\n type LoginResult = {\n account: string;\n email: string;\n nickName: string;\n avatarPath: string;\n };\n\n const response = await this.httpRequest.request<R<LoginResult>>({\n url: \"/api/ms-login/modify-password\",\n method: \"POST\",\n data: { account, vCode: code },\n });\n\n return response;\n }\n\n async logout() {\n this.userSession?.dispose();\n this.setUserSession(null);\n\n return this.httpRequest.get(\"/api/ms-login/logout\");\n }\n}\n"],"names":[],"mappings":"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"}
@@ -48,8 +48,7 @@ class MemberTable extends DataTable {
48
48
  }), new TableColumn({
49
49
  name: "name",
50
50
  label: "\u59D3\u540D",
51
- minWidth: "150px",
52
- sortable: true
51
+ minWidth: "150px"
53
52
  }), new TableColumn({
54
53
  name: "nickName",
55
54
  label: "\u6635\u79F0",
@@ -1 +1 @@
1
- {"version":3,"file":"MemberTable.js","sources":["../../../../src/dataview/member/MemberTable.tsx"],"sourcesContent":["import { R } from \"@maketribe/request\";\nimport {\n TableColumn,\n DataTable,\n DataTableOptions,\n FilterColumn,\n TableActionColumn,\n ActionButton,\n DeleteButton,\n EditButton,\n Messager,\n Dialoger,\n FormColumn,\n} from \"@maketribe/dm\";\nimport { defineDataTable } from \"../../define-data-table\";\nimport { Member, MemberForm, MemberResult } from \"./MemberForm\";\n\nexport type MemberTableItem = Omit<Member, \"password\" | \"confirmPassword\">;\n\nexport class MemberTable extends DataTable<MemberResult, MemberTableItem> {\n activeMemberForm: MemberForm;\n\n isShowActiveMemberForm: boolean;\n\n constructor(options: DataTableOptions = {}) {\n super({ name: \"ms-member\", ...options });\n\n this.activeMemberForm = new MemberForm();\n\n this.isShowActiveMemberForm = false;\n }\n\n protected async initialize() {\n await super.initialize();\n\n await this.initActiveMemberForm();\n\n this.dataFilter.setColumns([\n new FilterColumn({\n name: \"name\",\n label: \"姓名\",\n componentInfo: \"MKConditionInput\",\n }),\n new FilterColumn({\n name: \"wechatNo\",\n label: \"微信号\",\n componentInfo: \"MKConditionInput\",\n }),\n new FilterColumn({\n name: \"nickName\",\n label: \"昵称\",\n componentInfo: \"MKConditionInput\",\n }),\n new FilterColumn({\n name: \"email\",\n label: \"邮箱\",\n componentInfo: \"MKConditionInput\",\n }),\n new FilterColumn({\n name: \"phone\",\n label: \"手机号\",\n componentInfo: \"MKConditionInput\",\n }),\n new FilterColumn({\n name: \"account\",\n label: \"账号\",\n componentInfo: \"MKConditionInput\",\n }),\n ]);\n\n this.setColumns([\n new TableColumn({\n name: \"id\",\n label: \"编号\",\n width: \"190px\",\n visible: false,\n }),\n new TableColumn({\n name: \"name\",\n label: \"姓名\",\n minWidth: \"150px\",\n sortable: true,\n }),\n new TableColumn({ name: \"nickName\", label: \"昵称\", minWidth: \"150px\" }),\n new TableColumn({\n name: \"avatar\",\n label: \"头像\",\n componentInfo: \"MKColumnImage\",\n width: \"80px\",\n }),\n new TableColumn({ name: \"account\", label: \"账号\", minWidth: \"150px\" }),\n new TableColumn({ name: \"email\", label: \"邮箱\", minWidth: \"200px\" }),\n new TableColumn({ name: \"phone\", label: \"手机号\", minWidth: \"120px\" }),\n new TableColumn({ name: \"wechatNo\", label: \"微信号\", minWidth: \"140px\" }),\n new TableColumn({\n name: \"valid\",\n label: \"微信号\",\n minWidth: \"140px\",\n visible: false,\n }),\n new TableActionColumn({\n width: \"200px\",\n buttons: [\n new ActionButton({\n label: \"激活用户\",\n handler: async (row) => {\n const response = await this.activeMemberForm.editRecord(row.id);\n\n if (response.data.code !== 200) {\n Messager.instance.error({ message: response.data.msg });\n return;\n }\n\n this.isShowActiveMemberForm = true;\n },\n predicate: (member: MemberTableItem) => member.valid === 0,\n }),\n new ActionButton({\n label: \"重置密码\",\n handler: async (row) => {\n const isConfirm = await Dialoger.instance.confirm({\n title: \"重置密码\",\n message: \"是否重置密码\",\n type: \"warning\",\n cancelButtonText: \"取消\",\n confirmButtonText: \"确定\",\n });\n if (!isConfirm) {\n return;\n }\n this.loadingManager.startLoading();\n\n const response = await this.dataViewRequest.callDVRequest<\n R<string>\n >({\n action: `${row.id}/password/reset`,\n });\n\n this.loadingManager.completeLoading();\n if (response.data.code !== 200) {\n Messager.instance.error({\n message: response.data.msg || \"重置密码失败\",\n });\n return;\n }\n\n const res = await Dialoger.instance.confirm({\n title: \"重置密码成功\",\n message: (\n <p>\n <span>你的新密码为{response.data.data}</span>\n </p>\n ),\n type: \"warning\",\n cancelButtonText: \"取消\",\n confirmButtonText: \"复制\",\n });\n if (!res) {\n return;\n }\n\n navigator.clipboard.writeText(response.data.data);\n Messager.instance.success({ message: \"复制成功\" });\n },\n predicate: (member: MemberTableItem) => member.valid === 1,\n }),\n new EditButton({\n predicate: (member: MemberTableItem) => member.valid === 1,\n }),\n new DeleteButton(),\n ],\n }),\n ]);\n }\n\n protected async initActiveMemberForm() {\n const activeMemberForm = this.activeMemberForm;\n\n await activeMemberForm.init();\n\n activeMemberForm.setColumns([\n activeMemberForm.getColumn(\"id\")!,\n new FormColumn({\n name: \"approveResult\",\n label: \"是否通过\",\n defaultValue: \"0\",\n componentInfo: \"MKFormRadioBox\",\n required: true,\n componentProps: {\n options: [\n { label: \"通过\", value: \"1\" },\n { label: \"不通过\", value: \"0\" },\n ],\n },\n }),\n activeMemberForm.getColumn(\"roles\")!,\n activeMemberForm.getColumn(\"depts\")!,\n activeMemberForm.getColumn(\"memo\")!,\n ]);\n }\n\n async approveMember() {\n try {\n this.activeMemberForm.getLoadingManager().startLoading();\n const result = await this.activeMemberForm.httpRequest?.post(\n \"/api/dv/ms-member/apply/account/approve\",\n {\n ...this.activeMemberForm.formatSubmitData(this.activeMemberForm.data),\n }\n );\n this.activeMemberForm.getLoadingManager().completeLoading();\n\n if (result?.data.code != 200) {\n Messager.instance.error(result?.data.msg || \"请求失败\");\n return;\n }\n\n Messager.instance.success({\n message: \"激活通过,密码已发送到邮箱\",\n });\n\n this.load();\n } catch (e) {\n console.error(e);\n Messager.instance.error({ message: \"网络异常\" });\n }\n }\n\n formatItem(item: MemberResult): MemberTableItem {\n let avatar: string | null;\n try {\n avatar = item.avatar ? new URL(item.avatar).toString() : null;\n } catch (e) {\n avatar = null;\n }\n\n return {\n id: item.id,\n name: item.name || \"\",\n wechatNo: item.wechatNo || \"\",\n nickName: item.nickName || \"\",\n email: item.email || \"\",\n phone: item.phone || \"\",\n account: item.account || \"\",\n avatar,\n roles: item.roles?.map((role) => ({\n id: role.id,\n name: role.name || \"\",\n desc: role.desc || \"\",\n })),\n depts: item.depts?.map((department) => ({\n id: department.id,\n name: department.name || \"\",\n // memberID: department.memberID || null,\n pid: department.pid || null,\n })),\n valid: item.valid,\n };\n }\n}\n\ndefineDataTable(MemberTable);\n"],"names":["MemberTable","DataTable","constructor","options","name","activeMemberForm","MemberForm","isShowActiveMemberForm","initialize","initActiveMemberForm","dataFilter","setColumns","FilterColumn","label","componentInfo","TableColumn","width","visible","minWidth","sortable","TableActionColumn","buttons","ActionButton","handler","row","response","editRecord","id","data","code","Messager","instance","error","message","msg","predicate","member","valid","isConfirm","Dialoger","confirm","title","type","cancelButtonText","confirmButtonText","loadingManager","startLoading","dataViewRequest","callDVRequest","action","completeLoading","res","_createVNode","_createTextVNode","navigator","clipboard","writeText","success","EditButton","DeleteButton","init","getColumn","FormColumn","defaultValue","required","componentProps","value","approveMember","getLoadingManager","result","httpRequest","post","formatSubmitData","load","e","console","formatItem","item","avatar","URL","toString","wechatNo","nickName","email","phone","account","roles","map","role","desc","depts","department","pid","defineDataTable"],"mappings":"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"}
1
+ {"version":3,"file":"MemberTable.js","sources":["../../../../src/dataview/member/MemberTable.tsx"],"sourcesContent":["import { R } from \"@maketribe/request\";\nimport {\n TableColumn,\n DataTable,\n DataTableOptions,\n FilterColumn,\n TableActionColumn,\n ActionButton,\n DeleteButton,\n EditButton,\n Messager,\n Dialoger,\n FormColumn,\n} from \"@maketribe/dm\";\nimport { defineDataTable } from \"../../define-data-table\";\nimport { Member, MemberForm, MemberResult } from \"./MemberForm\";\n\nexport type MemberTableItem = Omit<Member, \"password\" | \"confirmPassword\">;\n\nexport class MemberTable extends DataTable<MemberResult, MemberTableItem> {\n activeMemberForm: MemberForm;\n\n isShowActiveMemberForm: boolean;\n\n constructor(options: DataTableOptions = {}) {\n super({ name: \"ms-member\", ...options });\n\n this.activeMemberForm = new MemberForm();\n\n this.isShowActiveMemberForm = false;\n }\n\n protected async initialize() {\n await super.initialize();\n\n await this.initActiveMemberForm();\n\n this.dataFilter.setColumns([\n new FilterColumn({\n name: \"name\",\n label: \"姓名\",\n componentInfo: \"MKConditionInput\",\n }),\n new FilterColumn({\n name: \"wechatNo\",\n label: \"微信号\",\n componentInfo: \"MKConditionInput\",\n }),\n new FilterColumn({\n name: \"nickName\",\n label: \"昵称\",\n componentInfo: \"MKConditionInput\",\n }),\n new FilterColumn({\n name: \"email\",\n label: \"邮箱\",\n componentInfo: \"MKConditionInput\",\n }),\n new FilterColumn({\n name: \"phone\",\n label: \"手机号\",\n componentInfo: \"MKConditionInput\",\n }),\n new FilterColumn({\n name: \"account\",\n label: \"账号\",\n componentInfo: \"MKConditionInput\",\n }),\n ]);\n\n this.setColumns([\n new TableColumn({\n name: \"id\",\n label: \"编号\",\n width: \"190px\",\n visible: false,\n }),\n new TableColumn({ name: \"name\", label: \"姓名\", minWidth: \"150px\" }),\n new TableColumn({ name: \"nickName\", label: \"昵称\", minWidth: \"150px\" }),\n new TableColumn({\n name: \"avatar\",\n label: \"头像\",\n componentInfo: \"MKColumnImage\",\n width: \"80px\",\n }),\n new TableColumn({ name: \"account\", label: \"账号\", minWidth: \"150px\" }),\n new TableColumn({ name: \"email\", label: \"邮箱\", minWidth: \"200px\" }),\n new TableColumn({ name: \"phone\", label: \"手机号\", minWidth: \"120px\" }),\n new TableColumn({ name: \"wechatNo\", label: \"微信号\", minWidth: \"140px\" }),\n new TableColumn({\n name: \"valid\",\n label: \"微信号\",\n minWidth: \"140px\",\n visible: false,\n }),\n new TableActionColumn({\n width: \"200px\",\n buttons: [\n new ActionButton({\n label: \"激活用户\",\n handler: async (row) => {\n const response = await this.activeMemberForm.editRecord(row.id);\n\n if (response.data.code !== 200) {\n Messager.instance.error({ message: response.data.msg });\n return;\n }\n\n this.isShowActiveMemberForm = true;\n },\n predicate: (member: MemberTableItem) => member.valid === 0,\n }),\n new ActionButton({\n label: \"重置密码\",\n handler: async (row) => {\n const isConfirm = await Dialoger.instance.confirm({\n title: \"重置密码\",\n message: \"是否重置密码\",\n type: \"warning\",\n cancelButtonText: \"取消\",\n confirmButtonText: \"确定\",\n });\n if (!isConfirm) {\n return;\n }\n this.loadingManager.startLoading();\n\n const response = await this.dataViewRequest.callDVRequest<\n R<string>\n >({\n action: `${row.id}/password/reset`,\n });\n\n this.loadingManager.completeLoading();\n if (response.data.code !== 200) {\n Messager.instance.error({\n message: response.data.msg || \"重置密码失败\",\n });\n return;\n }\n\n const res = await Dialoger.instance.confirm({\n title: \"重置密码成功\",\n message: (\n <p>\n <span>你的新密码为{response.data.data}</span>\n </p>\n ),\n type: \"warning\",\n cancelButtonText: \"取消\",\n confirmButtonText: \"复制\",\n });\n if (!res) {\n return;\n }\n\n navigator.clipboard.writeText(response.data.data);\n Messager.instance.success({ message: \"复制成功\" });\n },\n predicate: (member: MemberTableItem) => member.valid === 1,\n }),\n new EditButton({\n predicate: (member: MemberTableItem) => member.valid === 1,\n }),\n new DeleteButton(),\n ],\n }),\n ]);\n }\n\n protected async initActiveMemberForm() {\n const activeMemberForm = this.activeMemberForm;\n\n await activeMemberForm.init();\n\n activeMemberForm.setColumns([\n activeMemberForm.getColumn(\"id\")!,\n new FormColumn({\n name: \"approveResult\",\n label: \"是否通过\",\n defaultValue: \"0\",\n componentInfo: \"MKFormRadioBox\",\n required: true,\n componentProps: {\n options: [\n { label: \"通过\", value: \"1\" },\n { label: \"不通过\", value: \"0\" },\n ],\n },\n }),\n activeMemberForm.getColumn(\"roles\")!,\n activeMemberForm.getColumn(\"depts\")!,\n activeMemberForm.getColumn(\"memo\")!,\n ]);\n }\n\n async approveMember() {\n try {\n this.activeMemberForm.getLoadingManager().startLoading();\n const result = await this.activeMemberForm.httpRequest?.post(\n \"/api/dv/ms-member/apply/account/approve\",\n {\n ...this.activeMemberForm.formatSubmitData(this.activeMemberForm.data),\n }\n );\n this.activeMemberForm.getLoadingManager().completeLoading();\n\n if (result?.data.code != 200) {\n Messager.instance.error(result?.data.msg || \"请求失败\");\n return;\n }\n\n Messager.instance.success({\n message: \"激活通过,密码已发送到邮箱\",\n });\n\n this.load();\n } catch (e) {\n console.error(e);\n Messager.instance.error({ message: \"网络异常\" });\n }\n }\n\n formatItem(item: MemberResult): MemberTableItem {\n let avatar: string | null;\n try {\n avatar = item.avatar ? new URL(item.avatar).toString() : null;\n } catch (e) {\n avatar = null;\n }\n\n return {\n id: item.id,\n name: item.name || \"\",\n wechatNo: item.wechatNo || \"\",\n nickName: item.nickName || \"\",\n email: item.email || \"\",\n phone: item.phone || \"\",\n account: item.account || \"\",\n avatar,\n roles: item.roles?.map((role) => ({\n id: role.id,\n name: role.name || \"\",\n desc: role.desc || \"\",\n })),\n depts: item.depts?.map((department) => ({\n id: department.id,\n name: department.name || \"\",\n // memberID: department.memberID || null,\n pid: department.pid || null,\n })),\n valid: item.valid,\n };\n }\n}\n\ndefineDataTable(MemberTable);\n"],"names":["MemberTable","DataTable","constructor","options","name","activeMemberForm","MemberForm","isShowActiveMemberForm","initialize","initActiveMemberForm","dataFilter","setColumns","FilterColumn","label","componentInfo","TableColumn","width","visible","minWidth","TableActionColumn","buttons","ActionButton","handler","row","response","editRecord","id","data","code","Messager","instance","error","message","msg","predicate","member","valid","isConfirm","Dialoger","confirm","title","type","cancelButtonText","confirmButtonText","loadingManager","startLoading","dataViewRequest","callDVRequest","action","completeLoading","res","_createVNode","_createTextVNode","navigator","clipboard","writeText","success","EditButton","DeleteButton","init","getColumn","FormColumn","defaultValue","required","componentProps","value","approveMember","getLoadingManager","result","httpRequest","post","formatSubmitData","load","e","console","formatItem","item","avatar","URL","toString","wechatNo","nickName","email","phone","account","roles","map","role","desc","depts","department","pid","defineDataTable"],"mappings":"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"}
@@ -116,16 +116,17 @@ const MKBar = /* @__PURE__ */ defineComponent({
116
116
  }, null)]), createVNode("div", {
117
117
  "class": "mk-bar__item-title"
118
118
  }, [systemSettingNode.title, createTextVNode(" ")])])]) : null;
119
- return createVNode("div", {
120
- "class": "mk-bar"
121
- }, [createVNode("div", {
119
+ const logo = msAppClient.logo ? createVNode("div", {
122
120
  "class": "mk-bar__logo"
123
121
  }, [createVNode("div", {
124
122
  "class": "mk-logo",
125
123
  "style": {
126
124
  backgroundImage: `url(${msAppClient.logo})`
127
125
  }
128
- }, null)]), createVNode("div", {
126
+ }, null)]) : null;
127
+ return createVNode("div", {
128
+ "class": "mk-bar"
129
+ }, [logo, createVNode("div", {
129
130
  "class": "mk-bar__items"
130
131
  }, [barItems]), footer]);
131
132
  };
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sources":["../../../../../src/layouts/components/bar/index.tsx"],"sourcesContent":["import { computed, defineComponent, unref } from \"vue\";\nimport { MKSvgIcon } from \"../../../components\";\nimport { MSAppClient, MenuNode } from \"../../../core\";\nimport { MenuType } from \"../../../constants\";\n\nexport const MKBar = defineComponent({\n name: \"MKBar\",\n props: {\n barItem: {\n type: MenuNode,\n },\n },\n setup(props) {\n const msAppClient = MSAppClient.instance!;\n const userSession = msAppClient.userSession!;\n const menu = userSession.menu;\n const vueRouter = msAppClient.vueRouter;\n // const router = userSession.router;\n\n const currentBarItem = computed(() => props.barItem);\n\n const handleBarItemClick = (barItem: MenuNode) => {\n let target: MenuNode | null = barItem;\n\n if (barItem.children.length) {\n target = menu.getFirstLeafMenuNode(barItem.children);\n }\n\n if (!target) {\n return;\n }\n\n if (target?.route) {\n vueRouter.push({ name: target.route.name });\n }\n };\n\n return () => {\n const barItems = menu.rootMenus\n .filter((rootMenu) => rootMenu.type !== \"3\")\n .map((rootMenu) => (\n <div\n class={[\n \"mk-bar__item\",\n rootMenu.children.length ? \"has-children\" : \"\",\n unref(currentBarItem)?.id === rootMenu.id ? \"is-active\" : \"\",\n ]}\n onClick={() => handleBarItemClick(rootMenu)}\n >\n <div class=\"mk-bar__item-button\">\n <MKSvgIcon iconClass={rootMenu.iconName} />\n </div>\n <div class=\"mk-bar__item-title\">{rootMenu.title} </div>\n </div>\n ));\n\n const systemSettingNode = menu.rootMenus.find(\n (rootMenu) => rootMenu.type === MenuType.SystemSettings\n );\n\n const footer = systemSettingNode?.children.length ? (\n <div class=\"mk-bar__footer\">\n <div\n class={[\n \"mk-bar__item\",\n \"mk-bar__settings\",\n systemSettingNode.children.length ? \"has-children\" : \"\",\n unref(currentBarItem)?.id === systemSettingNode.id\n ? \"is-active\"\n : \"\",\n ]}\n onClick={() => handleBarItemClick(systemSettingNode)}\n >\n <div class=\"mk-bar__item-button\">\n <MKSvgIcon iconClass={systemSettingNode.iconName} />\n </div>\n <div class=\"mk-bar__item-title\">{systemSettingNode.title} </div>\n </div>\n </div>\n ) : null;\n\n return (\n <div class=\"mk-bar\">\n <div class=\"mk-bar__logo\">\n <div\n class=\"mk-logo\"\n style={{ backgroundImage: `url(${msAppClient.logo})` }}\n />\n </div>\n\n <div class=\"mk-bar__items\">{barItems}</div>\n\n {footer}\n </div>\n );\n };\n },\n});\n"],"names":["MKBar","name","props","barItem","type","MenuNode","setup","msAppClient","MSAppClient","instance","userSession","menu","vueRouter","currentBarItem","computed","handleBarItemClick","target","children","length","getFirstLeafMenuNode","route","push","barItems","rootMenus","filter","rootMenu","map","_createVNode","unref","id","onClick","MKSvgIcon","iconName","title","_createTextVNode","systemSettingNode","find","MenuType","SystemSettings","footer","backgroundImage","logo"],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sources":["../../../../../src/layouts/components/bar/index.tsx"],"sourcesContent":["import { computed, defineComponent, unref } from \"vue\";\nimport { MKSvgIcon } from \"../../../components\";\nimport { MSAppClient, MenuNode } from \"../../../core\";\nimport { MenuType } from \"../../../constants\";\n\nexport const MKBar = defineComponent({\n name: \"MKBar\",\n props: {\n barItem: {\n type: MenuNode,\n },\n },\n setup(props) {\n const msAppClient = MSAppClient.instance!;\n const userSession = msAppClient.userSession!;\n const menu = userSession.menu;\n const vueRouter = msAppClient.vueRouter;\n // const router = userSession.router;\n\n const currentBarItem = computed(() => props.barItem);\n\n const handleBarItemClick = (barItem: MenuNode) => {\n let target: MenuNode | null = barItem;\n\n if (barItem.children.length) {\n target = menu.getFirstLeafMenuNode(barItem.children);\n }\n\n if (!target) {\n return;\n }\n\n if (target?.route) {\n vueRouter.push({ name: target.route.name });\n }\n };\n\n return () => {\n const barItems = menu.rootMenus\n .filter((rootMenu) => rootMenu.type !== \"3\")\n .map((rootMenu) => (\n <div\n class={[\n \"mk-bar__item\",\n rootMenu.children.length ? \"has-children\" : \"\",\n unref(currentBarItem)?.id === rootMenu.id ? \"is-active\" : \"\",\n ]}\n onClick={() => handleBarItemClick(rootMenu)}\n >\n <div class=\"mk-bar__item-button\">\n <MKSvgIcon iconClass={rootMenu.iconName} />\n </div>\n <div class=\"mk-bar__item-title\">{rootMenu.title} </div>\n </div>\n ));\n\n const systemSettingNode = menu.rootMenus.find(\n (rootMenu) => rootMenu.type === MenuType.SystemSettings\n );\n\n const footer = systemSettingNode?.children.length ? (\n <div class=\"mk-bar__footer\">\n <div\n class={[\n \"mk-bar__item\",\n \"mk-bar__settings\",\n systemSettingNode.children.length ? \"has-children\" : \"\",\n unref(currentBarItem)?.id === systemSettingNode.id\n ? \"is-active\"\n : \"\",\n ]}\n onClick={() => handleBarItemClick(systemSettingNode)}\n >\n <div class=\"mk-bar__item-button\">\n <MKSvgIcon iconClass={systemSettingNode.iconName} />\n </div>\n <div class=\"mk-bar__item-title\">{systemSettingNode.title} </div>\n </div>\n </div>\n ) : null;\n\n const logo = msAppClient.logo ? (\n <div class=\"mk-bar__logo\">\n <div\n class=\"mk-logo\"\n style={{ backgroundImage: `url(${msAppClient.logo})` }}\n />\n </div>\n ) : null;\n\n return (\n <div class=\"mk-bar\">\n {logo}\n\n <div class=\"mk-bar__items\">{barItems}</div>\n\n {footer}\n </div>\n );\n };\n },\n});\n"],"names":["MKBar","name","props","barItem","type","MenuNode","setup","msAppClient","MSAppClient","instance","userSession","menu","vueRouter","currentBarItem","computed","handleBarItemClick","target","children","length","getFirstLeafMenuNode","route","push","barItems","rootMenus","filter","rootMenu","map","_createVNode","unref","id","onClick","MKSvgIcon","iconName","title","_createTextVNode","systemSettingNode","find","MenuType","SystemSettings","footer","logo","backgroundImage"],"mappings":"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"}
@@ -160,6 +160,8 @@ var _sfc_main = /* @__PURE__ */ defineComponent({
160
160
  verifyVisible.value = false;
161
161
  router.push({ path: "/" });
162
162
  }
163
+ } catch (e) {
164
+ ElMessage.error("\u767B\u5F55\u5931\u8D25");
163
165
  } finally {
164
166
  verifyVisible.value = false;
165
167
  loading.value = false;
@@ -1 +1 @@
1
- {"version":3,"file":"index.vue2.js","sources":["../../../../src/page/login/index.vue"],"sourcesContent":["<template>\n <div class=\"login-wrap\">\n <div class=\"login-bg\">\n <div class=\"login-bg-block\"></div>\n <div class=\"login-bg-block\"></div>\n </div>\n <div class=\"login-root\">\n <div class=\"login-main\">\n <div class=\"form-container\">\n <div class=\"form-wrap\">\n <div class=\"form-title\" v-if=\"!forgotPassword\">\n 账号登录\n <span class=\"notify\">\n 没有账号?<ElButton\n link\n class=\"operaBtn\"\n @click=\"router.push('/signup')\"\n >\n 申请使用\n </ElButton>\n </span>\n </div>\n <div class=\"form-title\" v-else>账号重置</div>\n <ElForm\n :model=\"loginFormData\"\n :rules=\"rules\"\n size=\"large\"\n ref=\"formEl\"\n @submit.native.prevent\n >\n <ElFormItem prop=\"account\">\n <ElInput\n v-model=\"loginFormData.account\"\n placeholder=\"帐号\"\n @keyup.enter.native.prevent=\"verifyHandle\"\n />\n </ElFormItem>\n <ElFormItem prop=\"password\" v-if=\"!forgotPassword\">\n <ElInput\n v-model=\"loginFormData.password\"\n type=\"password\"\n placeholder=\"密码\"\n @keyup.enter.native.prevent=\"verifyHandle\"\n />\n </ElFormItem>\n <ElFormItem>\n <ElRow style=\"width: 100%\">\n <ElCol :span=\"12\">\n <ElButton\n link\n class=\"operaBtn\"\n @click=\"forgotPassword = !forgotPassword\"\n >{{\n forgotPassword ? \"返回登陆\" : \"忘记密码?\"\n }}</ElButton\n >\n </ElCol>\n </ElRow>\n </ElFormItem>\n <ElFormItem>\n <ElButton\n type=\"primary\"\n style=\"width: 100%\"\n :loading=\"loading\"\n @click=\"verifyHandle\"\n :disabled=\"loginDisabled\"\n v-if=\"!forgotPassword\"\n >\n 登陆\n </ElButton>\n <ElButton\n type=\"primary\"\n style=\"width: 100%\"\n :loading=\"loading\"\n @click=\"verifyHandle\"\n :disabled=\"resetDisabled\"\n v-else\n >\n 重置\n </ElButton>\n </ElFormItem>\n </ElForm>\n <ElDivider></ElDivider>\n </div>\n </div>\n </div>\n </div>\n </div>\n\n <MKVerifyDialog\n ref=\"verifyDialog\"\n :scene=\"scene\"\n v-model:visible=\"verifyVisible\"\n v-if=\"verifyVisible\"\n @confirm=\"handleLogin\"\n />\n</template>\n\n<script setup lang=\"ts\">\nimport { ElMessage, ElForm, ElFormItem } from \"element-plus\";\nimport { useMSAppClient } from \"../../composables\";\nimport { MKVerifyDialog } from \"../../components\";\nimport { Ref, computed, reactive, ref } from \"vue\";\nimport { useRouter } from \"vue-router\";\n\ndefineOptions({\n mkRoute: {\n name: \"login\",\n path: \"/login\",\n meta: {\n isAuthorization: false,\n },\n },\n});\n\nconst verifyDialog: Ref<{ fail: () => void } | null> = ref(null);\n\n// 记住登陆状态\nconst rememberLoginState = ref(false);\n\nconst formEl: Ref<any> = ref(null);\n\nconst system = useMSAppClient()!;\n\nconst router = useRouter();\n\nconst loading = ref(false);\n\nconst loginDisabled = computed(\n () => !loginFormData.account || !loginFormData.password\n);\nconst resetDisabled = computed(() => !loginFormData.account);\n\nconst forgotPassword = ref(false);\nconst scene = computed(() =>\n forgotPassword.value ? \"ModifyPassword\" : \"Login\"\n);\n\nconst rules = {\n account: [{ required: true, message: \"账号必填\" }],\n password: [{ required: true, message: \"密码必填\" }],\n};\n\nconst loginFormData = reactive({\n account: \"\",\n password: \"\",\n vCode: \"code\",\n});\nconst verifyVisible = ref(false);\n\nconst verifyHandle = async () => {\n const result = await formEl.value?.validate();\n if (!result) {\n return;\n }\n verifyVisible.value = true;\n};\n\nconst handleLogin = async (v: string) => {\n loginFormData.vCode = v;\n try {\n loading.value = true;\n if (forgotPassword.value) {\n const { data } = await system.modifyPassword(\n loginFormData.account,\n loginFormData.vCode\n );\n if (data.code !== 200) {\n ElMessage.error(data.msg || \"重置邮箱失败!\");\n return;\n }\n ElMessage.success(\"重置密码邮件已发送到邮箱\");\n forgotPassword.value = false;\n } else {\n const { data } = await system.login(\n loginFormData.account,\n loginFormData.password,\n loginFormData.vCode\n );\n\n if (data.code !== 200) {\n ElMessage.error(data.msg || \"登录失败!\");\n return;\n }\n verifyVisible.value = false;\n\n router.push({ path: \"/\" });\n }\n } finally {\n verifyVisible.value = false;\n loading.value = false;\n }\n};\n</script>\n"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAmHA,IAAM,MAAA,YAAA,GAAiD,IAAI,IAAI,CAAA,CAAA;AAG/D,IAA2B,IAAI,KAAK,EAAA;AAEpC,IAAM,MAAA,MAAA,GAAmB,IAAI,IAAI,CAAA,CAAA;AAEjC,IAAA,MAAM,SAAS,cAAe,EAAA,CAAA;AAE9B,IAAA,MAAM,SAAS,SAAU,EAAA,CAAA;AAEzB,IAAM,MAAA,OAAA,GAAU,IAAI,KAAK,CAAA,CAAA;AAEzB,IAAA,MAAM,aAAgB,GAAA,QAAA;AAAA,MACpB,MAAM,CAAC,aAAc,CAAA,OAAA,IAAW,CAAC,aAAc,CAAA,QAAA;AAAA,KACjD,CAAA;AACA,IAAA,MAAM,aAAgB,GAAA,QAAA,CAAS,MAAM,CAAC,cAAc,OAAO,CAAA,CAAA;AAE3D,IAAM,MAAA,cAAA,GAAiB,IAAI,KAAK,CAAA,CAAA;AAChC,IAAA,MAAM,KAAQ,GAAA,QAAA;AAAA,MAAS,MACrB,cAAe,CAAA,KAAA,GAAQ,gBAAmB,GAAA,OAAA;AAAA,KAC5C,CAAA;AAEA,IAAA,MAAM,KAAQ,GAAA;AAAA,MACZ,SAAS,CAAC,EAAE,UAAU,IAAM,EAAA,OAAA,EAAS,4BAAQ,CAAA;AAAA,MAC7C,UAAU,CAAC,EAAE,UAAU,IAAM,EAAA,OAAA,EAAS,4BAAQ,CAAA;AAAA,KAChD,CAAA;AAEA,IAAA,MAAM,gBAAgB,QAAS,CAAA;AAAA,MAC7B,OAAS,EAAA,EAAA;AAAA,MACT,QAAU,EAAA,EAAA;AAAA,MACV,KAAO,EAAA,MAAA;AAAA,KACR,CAAA,CAAA;AACD,IAAM,MAAA,aAAA,GAAgB,IAAI,KAAK,CAAA,CAAA;AAE/B,IAAA,MAAM,eAAe,YAAY;AAC/B,MAAA,MAAM,MAAS,GAAA,MAAM,MAAO,CAAA,KAAA,EAAO,QAAS,EAAA,CAAA;AAC5C,MAAA,IAAI,CAAC,MAAQ,EAAA;AACX,QAAA,OAAA;AAAA,OACF;AACA,MAAA,aAAA,CAAc,KAAQ,GAAA,IAAA,CAAA;AAAA,KACxB,CAAA;AAEA,IAAM,MAAA,WAAA,GAAc,OAAO,CAAc,KAAA;AACvC,MAAA,aAAA,CAAc,KAAQ,GAAA,CAAA,CAAA;AACtB,MAAI,IAAA;AACF,QAAA,OAAA,CAAQ,KAAQ,GAAA,IAAA,CAAA;AAChB,QAAA,IAAI,eAAe,KAAO,EAAA;AACxB,UAAA,MAAM,EAAE,IAAA,EAAS,GAAA,MAAM,MAAO,CAAA,cAAA;AAAA,YAC5B,aAAc,CAAA,OAAA;AAAA,YACd,aAAc,CAAA,KAAA;AAAA,WAChB,CAAA;AACA,UAAI,IAAA,IAAA,CAAK,SAAS,GAAK,EAAA;AACrB,YAAU,SAAA,CAAA,KAAA,CAAM,IAAK,CAAA,GAAA,IAAO,4CAAS,CAAA,CAAA;AACrC,YAAA,OAAA;AAAA,WACF;AACA,UAAA,SAAA,CAAU,QAAQ,0EAAc,CAAA,CAAA;AAChC,UAAA,cAAA,CAAe,KAAQ,GAAA,KAAA,CAAA;AAAA,SAClB,MAAA;AACL,UAAA,MAAM,EAAE,IAAA,EAAS,GAAA,MAAM,MAAO,CAAA,KAAA;AAAA,YAC5B,aAAc,CAAA,OAAA;AAAA,YACd,aAAc,CAAA,QAAA;AAAA,YACd,aAAc,CAAA,KAAA;AAAA,WAChB,CAAA;AAEA,UAAI,IAAA,IAAA,CAAK,SAAS,GAAK,EAAA;AACrB,YAAU,SAAA,CAAA,KAAA,CAAM,IAAK,CAAA,GAAA,IAAO,2BAAO,CAAA,CAAA;AACnC,YAAA,OAAA;AAAA,WACF;AACA,UAAA,aAAA,CAAc,KAAQ,GAAA,KAAA,CAAA;AAEtB,UAAA,MAAA,CAAO,IAAK,CAAA,EAAE,IAAM,EAAA,GAAA,EAAK,CAAA,CAAA;AAAA,SAC3B;AAAA,OACA,SAAA;AACA,QAAA,aAAA,CAAc,KAAQ,GAAA,KAAA,CAAA;AACtB,QAAA,OAAA,CAAQ,KAAQ,GAAA,KAAA,CAAA;AAAA,OAClB;AAAA,KACF,CAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
1
+ {"version":3,"file":"index.vue2.js","sources":["../../../../src/page/login/index.vue"],"sourcesContent":["<template>\n <div class=\"login-wrap\">\n <div class=\"login-bg\">\n <div class=\"login-bg-block\"></div>\n <div class=\"login-bg-block\"></div>\n </div>\n <div class=\"login-root\">\n <div class=\"login-main\">\n <div class=\"form-container\">\n <div class=\"form-wrap\">\n <div class=\"form-title\" v-if=\"!forgotPassword\">\n 账号登录\n <span class=\"notify\">\n 没有账号?<ElButton\n link\n class=\"operaBtn\"\n @click=\"router.push('/signup')\"\n >\n 申请使用\n </ElButton>\n </span>\n </div>\n <div class=\"form-title\" v-else>账号重置</div>\n <ElForm\n :model=\"loginFormData\"\n :rules=\"rules\"\n size=\"large\"\n ref=\"formEl\"\n @submit.native.prevent\n >\n <ElFormItem prop=\"account\">\n <ElInput\n v-model=\"loginFormData.account\"\n placeholder=\"帐号\"\n @keyup.enter.native.prevent=\"verifyHandle\"\n />\n </ElFormItem>\n <ElFormItem prop=\"password\" v-if=\"!forgotPassword\">\n <ElInput\n v-model=\"loginFormData.password\"\n type=\"password\"\n placeholder=\"密码\"\n @keyup.enter.native.prevent=\"verifyHandle\"\n />\n </ElFormItem>\n <ElFormItem>\n <ElRow style=\"width: 100%\">\n <ElCol :span=\"12\">\n <ElButton\n link\n class=\"operaBtn\"\n @click=\"forgotPassword = !forgotPassword\"\n >{{\n forgotPassword ? \"返回登陆\" : \"忘记密码?\"\n }}</ElButton\n >\n </ElCol>\n </ElRow>\n </ElFormItem>\n <ElFormItem>\n <ElButton\n type=\"primary\"\n style=\"width: 100%\"\n :loading=\"loading\"\n @click=\"verifyHandle\"\n :disabled=\"loginDisabled\"\n v-if=\"!forgotPassword\"\n >\n 登陆\n </ElButton>\n <ElButton\n type=\"primary\"\n style=\"width: 100%\"\n :loading=\"loading\"\n @click=\"verifyHandle\"\n :disabled=\"resetDisabled\"\n v-else\n >\n 重置\n </ElButton>\n </ElFormItem>\n </ElForm>\n <ElDivider></ElDivider>\n </div>\n </div>\n </div>\n </div>\n </div>\n\n <MKVerifyDialog\n ref=\"verifyDialog\"\n :scene=\"scene\"\n v-model:visible=\"verifyVisible\"\n v-if=\"verifyVisible\"\n @confirm=\"handleLogin\"\n />\n</template>\n\n<script setup lang=\"ts\">\nimport { ElMessage, ElForm, ElFormItem } from \"element-plus\";\nimport { useMSAppClient } from \"../../composables\";\nimport { MKVerifyDialog } from \"../../components\";\nimport { Ref, computed, reactive, ref } from \"vue\";\nimport { useRouter } from \"vue-router\";\n\ndefineOptions({\n mkRoute: {\n name: \"login\",\n path: \"/login\",\n meta: {\n isAuthorization: false,\n },\n },\n});\n\nconst verifyDialog: Ref<{ fail: () => void } | null> = ref(null);\n\n// 记住登陆状态\nconst rememberLoginState = ref(false);\n\nconst formEl: Ref<any> = ref(null);\n\nconst system = useMSAppClient()!;\n\nconst router = useRouter();\n\nconst loading = ref(false);\n\nconst loginDisabled = computed(\n () => !loginFormData.account || !loginFormData.password\n);\nconst resetDisabled = computed(() => !loginFormData.account);\n\nconst forgotPassword = ref(false);\nconst scene = computed(() =>\n forgotPassword.value ? \"ModifyPassword\" : \"Login\"\n);\n\nconst rules = {\n account: [{ required: true, message: \"账号必填\" }],\n password: [{ required: true, message: \"密码必填\" }],\n};\n\nconst loginFormData = reactive({\n account: \"\",\n password: \"\",\n vCode: \"code\",\n});\nconst verifyVisible = ref(false);\n\nconst verifyHandle = async () => {\n const result = await formEl.value?.validate();\n if (!result) {\n return;\n }\n verifyVisible.value = true;\n};\n\nconst handleLogin = async (v: string) => {\n loginFormData.vCode = v;\n try {\n loading.value = true;\n if (forgotPassword.value) {\n const { data } = await system.modifyPassword(\n loginFormData.account,\n loginFormData.vCode\n );\n if (data.code !== 200) {\n ElMessage.error(data.msg || \"重置邮箱失败!\");\n return;\n }\n ElMessage.success(\"重置密码邮件已发送到邮箱\");\n forgotPassword.value = false;\n } else {\n const { data } = await system.login(\n loginFormData.account,\n loginFormData.password,\n loginFormData.vCode\n );\n\n if (data.code !== 200) {\n ElMessage.error(data.msg || \"登录失败!\");\n return;\n }\n verifyVisible.value = false;\n\n router.push({ path: \"/\" });\n }\n } catch (e) {\n ElMessage.error(\"登录失败\");\n } finally {\n verifyVisible.value = false;\n loading.value = false;\n }\n};\n</script>\n"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@maketribe/ms-app",
3
- "version": "3.0.19",
3
+ "version": "3.0.21",
4
4
  "description": "",
5
5
  "main": "dist/cjs",
6
6
  "files": [
@@ -73,7 +73,8 @@
73
73
  <script setup lang="ts">
74
74
  import { computed, unref } from "vue";
75
75
  import { ElPagination } from "element-plus";
76
- import { MKUploadFile, MKWebFileUploadContext } from "../upload-file";
76
+ // import { MKUploadFile } from "../upload-file/upload-file";
77
+ // import { MKWebFileUploadContext } from "../upload-file/context/web-file-upload-context";
77
78
  import { MaterialType, Material } from "../../dataview";
78
79
  import MaterialGroup from "./material-group.vue";
79
80
  import MaterialItem from "./material-item.vue";
@@ -1,10 +1,12 @@
1
1
  import { ExtractPropTypes } from "vue";
2
2
  import { buildProps } from "@maketribe/utils";
3
- import { uploadFileEmits, uploadFileProps } from "../../upload-file-options";
4
- import { UploadContext } from "../../context";
3
+ import { MaterialUploadContext, UploadContext } from "../../context";
5
4
 
6
5
  export const uploadImageProps = buildProps({
7
- uploadContext: uploadFileProps.uploadContext,
6
+ uploadContext: {
7
+ type: UploadContext,
8
+ default: () => new MaterialUploadContext(),
9
+ },
8
10
  modelValue: {
9
11
  type: [String, Array<String>],
10
12
  },
@@ -200,11 +200,12 @@ export class MSAppClient {
200
200
 
201
201
  this.httpRequest.getInterceptors().response.use((config) => {
202
202
  if (config.data.code === 401) {
203
- if (this.userSession) {
204
- this.userSession.lock();
205
- } else {
206
- this.vueRouter.push({ name: "login" });
207
- }
203
+ this.vueRouter.push({ name: "login" });
204
+ // if (this.userSession) {
205
+ // this.userSession.lock();
206
+ // } else {
207
+ // this.vueRouter.push({ name: "login" });
208
+ // }
208
209
  }
209
210
  return config;
210
211
  });
@@ -75,12 +75,7 @@ export class MemberTable extends DataTable<MemberResult, MemberTableItem> {
75
75
  width: "190px",
76
76
  visible: false,
77
77
  }),
78
- new TableColumn({
79
- name: "name",
80
- label: "姓名",
81
- minWidth: "150px",
82
- sortable: true,
83
- }),
78
+ new TableColumn({ name: "name", label: "姓名", minWidth: "150px" }),
84
79
  new TableColumn({ name: "nickName", label: "昵称", minWidth: "150px" }),
85
80
  new TableColumn({
86
81
  name: "avatar",
@@ -79,14 +79,18 @@ export const MKBar = defineComponent({
79
79
  </div>
80
80
  ) : null;
81
81
 
82
+ const logo = msAppClient.logo ? (
83
+ <div class="mk-bar__logo">
84
+ <div
85
+ class="mk-logo"
86
+ style={{ backgroundImage: `url(${msAppClient.logo})` }}
87
+ />
88
+ </div>
89
+ ) : null;
90
+
82
91
  return (
83
92
  <div class="mk-bar">
84
- <div class="mk-bar__logo">
85
- <div
86
- class="mk-logo"
87
- style={{ backgroundImage: `url(${msAppClient.logo})` }}
88
- />
89
- </div>
93
+ {logo}
90
94
 
91
95
  <div class="mk-bar__items">{barItems}</div>
92
96
 
@@ -186,6 +186,8 @@ const handleLogin = async (v: string) => {
186
186
 
187
187
  router.push({ path: "/" });
188
188
  }
189
+ } catch (e) {
190
+ ElMessage.error("登录失败");
189
191
  } finally {
190
192
  verifyVisible.value = false;
191
193
  loading.value = false;