@maketribe/ms-app 3.2.16 → 3.2.17
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.
- package/dist/cjs/components/basic/data-table-select/data-table-select.js +3 -0
- package/dist/cjs/components/basic/data-table-select/data-table-select.js.map +1 -1
- package/dist/cjs/components/basic/doc-editor/editor.vue.js +16 -3
- package/dist/cjs/components/basic/doc-editor/editor.vue.js.map +1 -1
- package/dist/cjs/components/business/resource-manager/resource-manager.vue.js +40 -29
- package/dist/cjs/components/business/resource-manager/resource-manager.vue.js.map +1 -1
- package/dist/cjs/components/business/verify-dialog/index.js +4 -5
- package/dist/cjs/components/business/verify-dialog/index.js.map +1 -1
- package/dist/cjs/components/business/verify-dialog/verify-dialog-api.js +28 -0
- package/dist/cjs/components/business/verify-dialog/verify-dialog-api.js.map +1 -0
- package/dist/cjs/components/business/verify-dialog/verify-dialog-option.js +0 -4
- package/dist/cjs/components/business/verify-dialog/verify-dialog-option.js.map +1 -1
- package/dist/cjs/components/business/verify-dialog/{verify-dialog.js → verify-panel.js} +46 -55
- package/dist/cjs/components/business/verify-dialog/verify-panel.js.map +1 -0
- package/dist/cjs/components/data-model/data-form/components/form-detail/form-detail.js +5 -3
- package/dist/cjs/components/data-model/data-form/components/form-detail/form-detail.js.map +1 -1
- package/dist/cjs/components/data-model/data-form/views/form/form.js +1 -0
- package/dist/cjs/components/data-model/data-form/views/form/form.js.map +1 -1
- package/dist/cjs/index.js +1 -1
- package/dist/cjs/installer.js +28 -19
- package/dist/cjs/installer.js.map +1 -1
- package/dist/cjs/layouts/components/bar/index.js +4 -4
- package/dist/cjs/layouts/components/header/tools.js +15 -24
- package/dist/cjs/layouts/components/header/tools.js.map +1 -1
- package/dist/cjs/layouts/components/menu/menu-item.js +5 -5
- package/dist/cjs/layouts/container/default.js +6 -6
- package/dist/cjs/layouts/container/default.js.map +1 -1
- package/dist/cjs/message-impl/DialogerImpl.js +4 -2
- package/dist/cjs/message-impl/DialogerImpl.js.map +1 -1
- package/dist/cjs/modules/cms/components/part-tree/index.vue.js +2 -2
- package/dist/cjs/modules/cms/dataviews/cms-ad-contents/CmsAdContentsForm.js +1 -1
- package/dist/cjs/modules/cms/dataviews/cms-articles/CmsArticlesForm.js +1 -1
- package/dist/cjs/modules/cms/dataviews/cms-articles/cms-article-atlas/CmsArticleAtlasForm.js +1 -1
- package/dist/cjs/modules/cms/pages/cms-ad/index.vue2.js +1 -1
- package/dist/cjs/modules/cms/pages/cms-contents/article-edit-add-page.vue2.js +5 -5
- package/dist/cjs/modules/cms/pages/cms-contents/components/article-atlas.vue.js +4 -1
- package/dist/cjs/modules/cms/pages/cms-contents/components/article-atlas.vue.js.map +1 -1
- package/dist/cjs/modules/cms/pages/cms-contents/components/article-list.vue.js +4 -4
- package/dist/cjs/modules/cms/pages/cms-contents/components/part-info.vue.js +5 -2
- package/dist/cjs/modules/cms/pages/cms-contents/components/part-info.vue.js.map +1 -1
- package/dist/cjs/modules/cms/pages/cms-contents/index.vue2.js +5 -5
- package/dist/cjs/modules/cms/pages/cms-resource/index.vue2.js +9 -6
- package/dist/cjs/modules/cms/pages/cms-resource/index.vue2.js.map +1 -1
- package/dist/cjs/modules/ms/components/material-list/material-list-options.js +1 -1
- package/dist/cjs/modules/ms/components/material-list/material-list.js +1 -1
- package/dist/cjs/modules/ms/components/material-select/material-select-api.js +1 -1
- package/dist/cjs/modules/ms/dataviews/log/local-log/LocalLogTree.js +29 -38
- package/dist/cjs/modules/ms/dataviews/log/local-log/LocalLogTree.js.map +1 -1
- package/dist/cjs/modules/ms/dataviews/ms-config/MsConfigTable.js +1 -1
- package/dist/cjs/modules/ms/dataviews/ms-config/MsConfigTable.js.map +1 -1
- package/dist/cjs/modules/ms/dataviews/ms-member/components/MemberRolesColumn.js +5 -2
- package/dist/cjs/modules/ms/dataviews/ms-member/components/MemberRolesColumn.js.map +1 -1
- package/dist/cjs/modules/ms/pages/icons/index.vue2.js +5 -2
- package/dist/cjs/modules/ms/pages/icons/index.vue2.js.map +1 -1
- package/dist/cjs/modules/ms/pages/local-log/index.vue2.js +1 -1
- package/dist/cjs/modules/ms/pages/ms-material/index.vue2.js +5 -5
- package/dist/cjs/modules/ms/pages/ms-menu/index.vue2.js +2 -2
- package/dist/cjs/modules/ms/pages/ms-role/components/aside.vue.js +4 -4
- package/dist/cjs/modules/ms/pages/ms-role/components/role-permission-config/role-permission-config-options.js +1 -1
- package/dist/cjs/modules/ms/pages/ms-role/index.vue2.js +4 -4
- package/dist/cjs/page/index/dv/default/edit.vue2.js +1 -1
- package/dist/cjs/page/index/dv/default/single/list/dialog.vue2.js +4 -4
- package/dist/cjs/page/index/dv/default/single/list/normal.vue2.js +4 -4
- package/dist/cjs/page/index/dv/default/single/table-tree/dialog.vue2.js +2 -2
- package/dist/cjs/page/index/dv/default/single/table-tree/normal.vue2.js +2 -2
- package/dist/cjs/page/index/dv/default/single/tree/dialog.vue2.js +4 -4
- package/dist/cjs/page/index/dv/default/table.vue2.js +1 -1
- package/dist/cjs/page/login/index.vue2.js +123 -140
- package/dist/cjs/page/login/index.vue2.js.map +1 -1
- package/dist/cjs/page/signup/index.vue2.js +112 -139
- package/dist/cjs/page/signup/index.vue2.js.map +1 -1
- package/dist/esm/components/basic/data-table-select/data-table-select.js +3 -0
- package/dist/esm/components/basic/data-table-select/data-table-select.js.map +1 -1
- package/dist/esm/components/basic/doc-editor/editor.vue.js +16 -3
- package/dist/esm/components/basic/doc-editor/editor.vue.js.map +1 -1
- package/dist/esm/components/business/resource-manager/resource-manager.vue.js +41 -30
- package/dist/esm/components/business/resource-manager/resource-manager.vue.js.map +1 -1
- package/dist/esm/components/business/verify-dialog/index.js +4 -5
- package/dist/esm/components/business/verify-dialog/index.js.map +1 -1
- package/dist/esm/components/business/verify-dialog/verify-dialog-api.js +29 -0
- package/dist/esm/components/business/verify-dialog/verify-dialog-api.js.map +1 -0
- package/dist/esm/components/business/verify-dialog/verify-dialog-option.js +0 -4
- package/dist/esm/components/business/verify-dialog/verify-dialog-option.js.map +1 -1
- package/dist/esm/components/business/verify-dialog/{verify-dialog.js → verify-panel.js} +47 -56
- package/dist/esm/components/business/verify-dialog/verify-panel.js.map +1 -0
- package/dist/esm/components/data-model/data-form/components/form-detail/form-detail.js +5 -3
- package/dist/esm/components/data-model/data-form/components/form-detail/form-detail.js.map +1 -1
- package/dist/esm/components/data-model/data-form/views/form/form.js +1 -0
- package/dist/esm/components/data-model/data-form/views/form/form.js.map +1 -1
- package/dist/esm/index.js +2 -2
- package/dist/esm/installer.js +12 -3
- package/dist/esm/installer.js.map +1 -1
- package/dist/esm/layouts/components/bar/index.js +4 -4
- package/dist/esm/layouts/components/header/tools.js +11 -20
- package/dist/esm/layouts/components/header/tools.js.map +1 -1
- package/dist/esm/layouts/components/menu/menu-item.js +5 -5
- package/dist/esm/layouts/container/default.js +6 -6
- package/dist/esm/layouts/container/default.js.map +1 -1
- package/dist/esm/message-impl/DialogerImpl.js +4 -2
- package/dist/esm/message-impl/DialogerImpl.js.map +1 -1
- package/dist/esm/modules/cms/components/part-tree/index.vue.js +2 -2
- package/dist/esm/modules/cms/dataviews/cms-ad-contents/CmsAdContentsForm.js +1 -1
- package/dist/esm/modules/cms/dataviews/cms-articles/CmsArticlesForm.js +1 -1
- package/dist/esm/modules/cms/dataviews/cms-articles/cms-article-atlas/CmsArticleAtlasForm.js +1 -1
- package/dist/esm/modules/cms/pages/cms-ad/index.vue2.js +1 -1
- package/dist/esm/modules/cms/pages/cms-contents/article-edit-add-page.vue2.js +5 -5
- package/dist/esm/modules/cms/pages/cms-contents/components/article-atlas.vue.js +4 -1
- package/dist/esm/modules/cms/pages/cms-contents/components/article-atlas.vue.js.map +1 -1
- package/dist/esm/modules/cms/pages/cms-contents/components/article-list.vue.js +4 -4
- package/dist/esm/modules/cms/pages/cms-contents/components/part-info.vue.js +5 -2
- package/dist/esm/modules/cms/pages/cms-contents/components/part-info.vue.js.map +1 -1
- package/dist/esm/modules/cms/pages/cms-contents/index.vue2.js +5 -5
- package/dist/esm/modules/cms/pages/cms-resource/index.vue2.js +9 -6
- package/dist/esm/modules/cms/pages/cms-resource/index.vue2.js.map +1 -1
- package/dist/esm/modules/ms/components/material-list/material-list-options.js +1 -1
- package/dist/esm/modules/ms/components/material-list/material-list.js +1 -1
- package/dist/esm/modules/ms/components/material-select/material-select-api.js +1 -1
- package/dist/esm/modules/ms/dataviews/log/local-log/LocalLogTree.js +30 -39
- package/dist/esm/modules/ms/dataviews/log/local-log/LocalLogTree.js.map +1 -1
- package/dist/esm/modules/ms/dataviews/ms-config/MsConfigTable.js +1 -1
- package/dist/esm/modules/ms/dataviews/ms-config/MsConfigTable.js.map +1 -1
- package/dist/esm/modules/ms/dataviews/ms-member/components/MemberRolesColumn.js +5 -2
- package/dist/esm/modules/ms/dataviews/ms-member/components/MemberRolesColumn.js.map +1 -1
- package/dist/esm/modules/ms/pages/icons/index.vue2.js +5 -2
- package/dist/esm/modules/ms/pages/icons/index.vue2.js.map +1 -1
- package/dist/esm/modules/ms/pages/local-log/index.vue2.js +1 -1
- package/dist/esm/modules/ms/pages/ms-material/index.vue2.js +5 -5
- package/dist/esm/modules/ms/pages/ms-menu/index.vue2.js +2 -2
- package/dist/esm/modules/ms/pages/ms-role/components/aside.vue.js +4 -4
- package/dist/esm/modules/ms/pages/ms-role/components/role-permission-config/role-permission-config-options.js +1 -1
- package/dist/esm/modules/ms/pages/ms-role/index.vue2.js +4 -4
- package/dist/esm/page/index/dv/default/edit.vue2.js +1 -1
- package/dist/esm/page/index/dv/default/single/list/dialog.vue2.js +4 -4
- package/dist/esm/page/index/dv/default/single/list/normal.vue2.js +4 -4
- package/dist/esm/page/index/dv/default/single/table-tree/dialog.vue2.js +2 -2
- package/dist/esm/page/index/dv/default/single/table-tree/normal.vue2.js +2 -2
- package/dist/esm/page/index/dv/default/single/tree/dialog.vue2.js +4 -4
- package/dist/esm/page/index/dv/default/table.vue2.js +1 -1
- package/dist/esm/page/login/index.vue2.js +125 -142
- package/dist/esm/page/login/index.vue2.js.map +1 -1
- package/dist/esm/page/signup/index.vue2.js +114 -141
- package/dist/esm/page/signup/index.vue2.js.map +1 -1
- package/dist/style/index.css +1 -1
- package/dist/style/modules/cms/index.css +1 -1
- package/dist/style/modules/cms/pages/cms-contents/index.css +1 -1
- package/dist/style/modules/cms/resource-manager.css +1 -1
- package/dist/style/src/modules/cms/pages/cms-contents/index.scss +1 -1
- package/dist/style/src/modules/cms/resource-manager.scss +1 -1
- package/dist/types/components/basic/doc-editor/editor.vue.d.ts +18 -0
- package/dist/types/components/basic/doc-editor/index.d.ts +38 -0
- package/dist/types/components/business/resource-manager/index.d.ts +25 -3
- package/dist/types/components/business/resource-manager/resource-manager.vue.d.ts +11 -1
- package/dist/types/components/business/verify-dialog/index.d.ts +3 -38
- package/dist/types/components/business/verify-dialog/verify-dialog-api.d.ts +7 -0
- package/dist/types/components/business/verify-dialog/verify-dialog-option.d.ts +0 -6
- package/dist/types/components/business/verify-dialog/{verify-dialog.d.ts → verify-panel.d.ts} +0 -12
- package/dist/types/modules/ms/dataviews/log/local-log/LocalLogTree.d.ts +1 -2
- package/package.json +4 -4
- package/dist/cjs/components/business/verify-dialog/verify-dialog.js.map +0 -1
- package/dist/esm/components/business/verify-dialog/verify-dialog.js.map +0 -1
|
@@ -1,8 +1,7 @@
|
|
|
1
|
-
import
|
|
2
|
-
|
|
3
|
-
const MKVerifyDialog = withInstall(VerifyDialog);
|
|
1
|
+
import OpenVerifyCode from "./verify-dialog-api.js";
|
|
2
|
+
const MKOpenVerifyCode = OpenVerifyCode;
|
|
4
3
|
export {
|
|
5
|
-
|
|
6
|
-
|
|
4
|
+
MKOpenVerifyCode,
|
|
5
|
+
MKOpenVerifyCode as default
|
|
7
6
|
};
|
|
8
7
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sources":["../../../../../src/components/business/verify-dialog/index.ts"],"sourcesContent":["import
|
|
1
|
+
{"version":3,"file":"index.js","sources":["../../../../../src/components/business/verify-dialog/index.ts"],"sourcesContent":["import OpenVerifyCode from \"./verify-dialog-api\"\r\n\r\nexport const MKOpenVerifyCode = OpenVerifyCode;\r\nexport default MKOpenVerifyCode;\r\n"],"names":[],"mappings":";AAEO,MAAM,mBAAmB;"}
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
import { createVNode } from "vue";
|
|
2
|
+
import { Dialoger } from "@maketribe/dm";
|
|
3
|
+
import VerifyPanel from "./verify-panel.js";
|
|
4
|
+
async function OpenVerifyCode(options) {
|
|
5
|
+
return new Promise((resolve) => {
|
|
6
|
+
const dialogInstance = Dialoger.customRender({
|
|
7
|
+
width: options.width ?? "300px",
|
|
8
|
+
title: options.title ?? "选择文件",
|
|
9
|
+
class: "mk-verify-dialog",
|
|
10
|
+
body: () => createVNode(VerifyPanel, {
|
|
11
|
+
"scene": options.sence,
|
|
12
|
+
"onConfirm": (result) => {
|
|
13
|
+
dialogInstance.destroy();
|
|
14
|
+
resolve(result);
|
|
15
|
+
}
|
|
16
|
+
}, null),
|
|
17
|
+
footer: () => "",
|
|
18
|
+
onClose: () => {
|
|
19
|
+
setTimeout(() => {
|
|
20
|
+
dialogInstance.destroy();
|
|
21
|
+
}, 100);
|
|
22
|
+
}
|
|
23
|
+
});
|
|
24
|
+
});
|
|
25
|
+
}
|
|
26
|
+
export {
|
|
27
|
+
OpenVerifyCode as default
|
|
28
|
+
};
|
|
29
|
+
//# sourceMappingURL=verify-dialog-api.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"verify-dialog-api.js","sources":["../../../../../src/components/business/verify-dialog/verify-dialog-api.tsx"],"sourcesContent":["import { Fragment, reactive } from \"vue\";\r\nimport { Dialoger } from \"@maketribe/dm\";\r\nimport VerifyPanel from \"./verify-panel\";\r\nimport { ElButton } from \"element-plus\";\r\n\r\ntype VerifyCodeOptions = { sence:string,title:string,width:string }\r\n\r\nasync function OpenVerifyCode(options: VerifyCodeOptions): Promise<any> {\r\n return new Promise((resolve) => {\r\n \r\n const dialogInstance = Dialoger.customRender({\r\n width: options.width ?? \"300px\",\r\n title: options.title ?? \"选择文件\",\r\n class: \"mk-verify-dialog\",\r\n body: () => (\r\n <VerifyPanel scene={options.sence} onConfirm={\r\n result=>{\r\n dialogInstance.destroy();\r\n resolve(result)\r\n }\r\n }></VerifyPanel>\r\n ),\r\n footer: () => \"\",\r\n onClose: () => {\r\n setTimeout(() => {\r\n dialogInstance.destroy();\r\n }, 100);\r\n },\r\n });\r\n });\r\n}\r\n\r\nexport default OpenVerifyCode;\r\n"],"names":["OpenVerifyCode","options","Promise","resolve","dialogInstance","Dialoger","customRender","width","title","class","body","_createVNode","VerifyPanel","sence","result","destroy","footer","onClose","setTimeout"],"mappings":";;;AAOA,eAAeA,eAAeC,SAA0C;AACtE,SAAO,IAAIC,QAASC,aAAY;AAE9B,UAAMC,iBAAiBC,SAASC,aAAa;AAAA,MAC3CC,OAAON,QAAQM,SAAS;AAAA,MACxBC,OAAOP,QAAQO,SAAS;AAAA,MACxBC,OAAO;AAAA,MACPC,MAAMA,MAAAC,YAAAC,aAAA;AAAA,QAAA,SACgBX,QAAQY;AAAAA,QAAK,aAC/BC,YAAQ;AACNV,yBAAeW,QAAO;AACtBZ,kBAAQW,MAAM;AAAA,QAChB;AAAA,MAEH,GAAA,IAAA;AAAA,MACDE,QAAQA,MAAM;AAAA,MACdC,SAASA,MAAM;AACbC,mBAAW,MAAM;AACfd,yBAAeW,QAAO;AAAA,QACvB,GAAE,GAAG;AAAA,MACR;AAAA,IACF,CAAC;AAAA,EACH,CAAC;AACH;"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"verify-dialog-option.js","sources":["../../../../../src/components/business/verify-dialog/verify-dialog-option.ts"],"sourcesContent":["import { ExtractPropTypes } from \"vue\";\r\nimport { buildProps } from \"@maketribe/utils\";\r\n\r\nexport const verifyDialogProps = buildProps({\r\n
|
|
1
|
+
{"version":3,"file":"verify-dialog-option.js","sources":["../../../../../src/components/business/verify-dialog/verify-dialog-option.ts"],"sourcesContent":["import { ExtractPropTypes } from \"vue\";\r\nimport { buildProps } from \"@maketribe/utils\";\r\n\r\nexport const verifyDialogProps = buildProps({\r\n scene: {\r\n type: String,\r\n required: true,\r\n },\r\n width: {\r\n type: String,\r\n default: \"300px\",\r\n },\r\n} as const);\r\n\r\nexport const verifyDialogEmits = {\r\n \"update:visible\": (modelValue: any) => true,\r\n\r\n confirm: (modelValue: any) => true,\r\n};\r\nexport type VerifyDialogProps = ExtractPropTypes<typeof verifyDialogEmits>;\r\n"],"names":[],"mappings":";AAGO,MAAM,oBAAoB,WAAW;AAAA,EAC1C,OAAO;AAAA,IACL,MAAM;AAAA,IACN,UAAU;AAAA,EACZ;AAAA,EACA,OAAO;AAAA,IACL,MAAM;AAAA,IACN,SAAS;AAAA,EACX;AACF,CAAU;AAEH,MAAM,oBAAoB;AAAA,EAC/B,kBAAkB,CAAC,eAAoB;AAAA,EAEvC,SAAS,CAAC,eAAoB;AAChC;"}
|
|
@@ -1,5 +1,4 @@
|
|
|
1
|
-
import { defineComponent, ref, computed, unref, onMounted,
|
|
2
|
-
import { ElDialog } from "element-plus";
|
|
1
|
+
import { defineComponent, ref, computed, unref, onMounted, onUnmounted, createVNode, Fragment, withDirectives, resolveDirective } from "vue";
|
|
3
2
|
import "@maketribe/dm";
|
|
4
3
|
import "../../basic/config-provider/index.js";
|
|
5
4
|
import "vue-router";
|
|
@@ -7,13 +6,13 @@ import "@maketribe/request";
|
|
|
7
6
|
import "@maketribe/locale";
|
|
8
7
|
import { Disposable, createDisposable } from "@maketribe/utils";
|
|
9
8
|
import "../../../core/DataModelDefines.js";
|
|
9
|
+
import "element-plus";
|
|
10
10
|
import { useHttpRequest } from "../../../composables/use-http-request.js";
|
|
11
11
|
import { verifyDialogProps, verifyDialogEmits } from "./verify-dialog-option.js";
|
|
12
|
-
const
|
|
13
|
-
name: "
|
|
12
|
+
const VerifyPanel = /* @__PURE__ */ defineComponent({
|
|
13
|
+
name: "VerifyPanel",
|
|
14
14
|
props: verifyDialogProps,
|
|
15
15
|
emits: verifyDialogEmits,
|
|
16
|
-
// expose: ["fail"],
|
|
17
16
|
setup(props, {
|
|
18
17
|
emit,
|
|
19
18
|
expose
|
|
@@ -24,26 +23,24 @@ const VerifyDialog = /* @__PURE__ */ defineComponent({
|
|
|
24
23
|
let slideWidth = 48;
|
|
25
24
|
const isError = ref(false);
|
|
26
25
|
const deg = ref(0);
|
|
27
|
-
const httpRequest = useHttpRequest();
|
|
28
26
|
const imageUrl = ref("");
|
|
27
|
+
const loading = ref(false);
|
|
29
28
|
const imageStyle = computed(() => {
|
|
30
29
|
return {
|
|
31
30
|
backgroundImage: `url(${unref(imageUrl)})`,
|
|
32
31
|
transform: `rotate(-${unref(deg)}deg)`
|
|
33
32
|
};
|
|
34
33
|
});
|
|
35
|
-
const visible = computed({
|
|
36
|
-
get: () => props.visible,
|
|
37
|
-
set: (v) => emit("update:visible", v)
|
|
38
|
-
});
|
|
39
34
|
const getImage = async () => {
|
|
35
|
+
loading.value = true;
|
|
40
36
|
const params = {
|
|
41
37
|
scene: props.scene
|
|
42
38
|
};
|
|
43
|
-
const response = await
|
|
39
|
+
const response = await useHttpRequest().get("/ms/app/captcha/rotation/image", {
|
|
44
40
|
params,
|
|
45
41
|
responseType: "blob"
|
|
46
42
|
});
|
|
43
|
+
loading.value = false;
|
|
47
44
|
return response.data ?? null;
|
|
48
45
|
};
|
|
49
46
|
const handleSwitchConfirm = () => {
|
|
@@ -56,7 +53,9 @@ const VerifyDialog = /* @__PURE__ */ defineComponent({
|
|
|
56
53
|
const disposable = new Disposable();
|
|
57
54
|
const totalWidth = unref(wrapperEl).getBoundingClientRect().width;
|
|
58
55
|
const handleMouseMove = (event) => {
|
|
59
|
-
|
|
56
|
+
const x = event instanceof MouseEvent ? event.clientX : event.touches[0].clientX;
|
|
57
|
+
const y = event instanceof MouseEvent ? event.clientY : event.touches[0].clientY;
|
|
58
|
+
slideWidth = Math.min(Math.max(x - y + 48, 48), totalWidth);
|
|
60
59
|
deg.value = Math.floor((slideWidth - 48) / (totalWidth - 48) * 360);
|
|
61
60
|
unref(grandEl).style.width = `${slideWidth}px`;
|
|
62
61
|
unref(buttonEl).style.transform = `translateX(${slideWidth - 48}px)`;
|
|
@@ -68,10 +67,16 @@ const VerifyDialog = /* @__PURE__ */ defineComponent({
|
|
|
68
67
|
disposable.dispose();
|
|
69
68
|
};
|
|
70
69
|
document.addEventListener("mousemove", handleMouseMove);
|
|
70
|
+
document.addEventListener("touchmove", handleMouseMove);
|
|
71
71
|
document.addEventListener("mouseup", handleMouseUp);
|
|
72
|
+
document.addEventListener("touchend", handleMouseUp);
|
|
73
|
+
document.addEventListener("touchcancel", handleMouseUp);
|
|
72
74
|
disposable.register(createDisposable(() => {
|
|
73
75
|
document.removeEventListener("mousemove", handleMouseMove);
|
|
76
|
+
document.removeEventListener("touchmove", handleMouseMove);
|
|
74
77
|
document.removeEventListener("mouseup", handleMouseUp);
|
|
78
|
+
document.removeEventListener("touchend", handleMouseUp);
|
|
79
|
+
document.removeEventListener("touchcancel", handleMouseUp);
|
|
75
80
|
}));
|
|
76
81
|
};
|
|
77
82
|
const reset = () => {
|
|
@@ -87,55 +92,41 @@ const VerifyDialog = /* @__PURE__ */ defineComponent({
|
|
|
87
92
|
}, 1e3);
|
|
88
93
|
}
|
|
89
94
|
});
|
|
90
|
-
onMounted(() => {
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
onCleanup(() => {
|
|
97
|
-
URL.revokeObjectURL(url);
|
|
98
|
-
});
|
|
99
|
-
}
|
|
100
|
-
}, {
|
|
101
|
-
immediate: true
|
|
95
|
+
onMounted(async () => {
|
|
96
|
+
const blob = await getImage();
|
|
97
|
+
const url = URL.createObjectURL(blob);
|
|
98
|
+
imageUrl.value = url;
|
|
99
|
+
onUnmounted(() => {
|
|
100
|
+
URL.revokeObjectURL(url);
|
|
102
101
|
});
|
|
103
102
|
});
|
|
104
103
|
return () => {
|
|
105
|
-
return createVNode(
|
|
106
|
-
"
|
|
107
|
-
|
|
108
|
-
"
|
|
109
|
-
"
|
|
110
|
-
"
|
|
111
|
-
|
|
112
|
-
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
|
|
117
|
-
|
|
118
|
-
|
|
119
|
-
|
|
120
|
-
|
|
121
|
-
|
|
122
|
-
|
|
123
|
-
|
|
124
|
-
|
|
125
|
-
|
|
126
|
-
|
|
127
|
-
"class": "mk-verify-switch__button-grand",
|
|
128
|
-
"ref": (el) => grandEl.value = el
|
|
129
|
-
}, null), createVNode("div", {
|
|
130
|
-
"class": "mk-verify-switch__button",
|
|
131
|
-
"ref": (el) => buttonEl.value = el,
|
|
132
|
-
"onMousedown": handleMouseDown
|
|
133
|
-
}, null)])])]
|
|
134
|
-
});
|
|
104
|
+
return createVNode(Fragment, null, [withDirectives(createVNode("div", {
|
|
105
|
+
"class": "mk-verify-dialog__wrapper"
|
|
106
|
+
}, [createVNode("div", {
|
|
107
|
+
"class": "mk-verify-dialog__image",
|
|
108
|
+
"ref": "imageEl",
|
|
109
|
+
"style": imageStyle.value
|
|
110
|
+
}, null), createVNode("div", {
|
|
111
|
+
"class": "mk-verify-dialog__coordinate"
|
|
112
|
+
}, null)]), [[resolveDirective("loading"), unref(loading)]]), createVNode("div", {
|
|
113
|
+
"class": ["mk-verify-switch", unref(isError) ? "is-error" : ""]
|
|
114
|
+
}, [createVNode("div", {
|
|
115
|
+
"class": "mk-verify-switch__wrapper",
|
|
116
|
+
"ref": (el) => wrapperEl.value = el
|
|
117
|
+
}, [createVNode("div", {
|
|
118
|
+
"class": "mk-verify-switch__button-grand",
|
|
119
|
+
"ref": (el) => grandEl.value = el
|
|
120
|
+
}, null), createVNode("div", {
|
|
121
|
+
"class": "mk-verify-switch__button",
|
|
122
|
+
"ref": (el) => buttonEl.value = el,
|
|
123
|
+
"onMousedown": handleMouseDown,
|
|
124
|
+
"onTouchstart": handleMouseDown
|
|
125
|
+
}, null)])])]);
|
|
135
126
|
};
|
|
136
127
|
}
|
|
137
128
|
});
|
|
138
129
|
export {
|
|
139
|
-
|
|
130
|
+
VerifyPanel as default
|
|
140
131
|
};
|
|
141
|
-
//# sourceMappingURL=verify-
|
|
132
|
+
//# sourceMappingURL=verify-panel.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"verify-panel.js","sources":["../../../../../src/components/business/verify-dialog/verify-panel.tsx"],"sourcesContent":["import {\r\n computed,\r\n defineComponent,\r\n unref,\r\n ref,\r\n onMounted,\r\n onUnmounted,\r\n Ref,\r\n Fragment\r\n} from \"vue\";\r\nimport { useHttpRequest } from \"../../../composables\";\r\nimport { verifyDialogProps, verifyDialogEmits } from \"./verify-dialog-option\";\r\nimport { Disposable, createDisposable } from \"@maketribe/utils\";\r\n\r\nexport default defineComponent({\r\n name: \"VerifyPanel\",\r\n props: verifyDialogProps,\r\n emits: verifyDialogEmits,\r\n setup(props, { emit, expose }) {\r\n \r\n const wrapperEl: Ref<HTMLElement | null> = ref(null);\r\n const buttonEl: Ref<HTMLElement | null> = ref(null);\r\n const grandEl: Ref<HTMLElement | null> = ref(null);\r\n\r\n // 样式默认宽度是48px\r\n let slideWidth: number = 48;\r\n\r\n const isError = ref(false);\r\n\r\n const deg = ref(0);\r\n\r\n const imageUrl = ref(\"\");\r\n const loading = ref(false);\r\n const imageStyle = computed(() => {\r\n return {\r\n backgroundImage: `url(${unref(imageUrl)})`,\r\n transform: `rotate(-${unref(deg)}deg)`,\r\n };\r\n });\r\n\r\n const getImage = async () => {\r\n\r\n loading.value = true;\r\n\r\n const params = { scene: props.scene };\r\n\r\n const response = await useHttpRequest()!.get<Blob>(\"/ms/app/captcha/rotation/image\",{\r\n params,\r\n responseType: \"blob\",\r\n });\r\n\r\n loading.value = false;\r\n return response.data ?? null;\r\n };\r\n\r\n const handleSwitchConfirm = () => {\r\n emit(\"confirm\", unref(deg));\r\n };\r\n\r\n const handleMouseDown = (mouseDownEvent: MouseEvent|TouchEvent) => {\r\n if (unref(isError)) {\r\n return;\r\n }\r\n\r\n const disposable = new Disposable();\r\n\r\n const totalWidth = unref(wrapperEl)!.getBoundingClientRect().width;\r\n\r\n const handleMouseMove = (event: MouseEvent|TouchEvent) => {\r\n \r\n const x = event instanceof MouseEvent ? event.clientX : event.touches[0].clientX;\r\n const y = event instanceof MouseEvent ? event.clientY : event.touches[0].clientY;\r\n\r\n // 限定宽度范围\r\n slideWidth = Math.min(Math.max(x - y + 48, 48),totalWidth);\r\n\r\n deg.value = Math.floor(((slideWidth - 48) / (totalWidth - 48)) * 360);\r\n\r\n unref(grandEl)!.style.width = `${slideWidth}px`;\r\n unref(buttonEl)!.style.transform = `translateX(${slideWidth - 48}px)`;\r\n };\r\n\r\n const handleMouseUp = (event: MouseEvent|TouchEvent) => {\r\n if (deg.value !== 0) {\r\n handleSwitchConfirm();\r\n }\r\n\r\n disposable.dispose();\r\n };\r\n\r\n document.addEventListener(\"mousemove\", handleMouseMove);\r\n document.addEventListener(\"touchmove\", handleMouseMove);\r\n document.addEventListener(\"mouseup\", handleMouseUp);\r\n document.addEventListener(\"touchend\", handleMouseUp);\r\n document.addEventListener(\"touchcancel\", handleMouseUp);\r\n\r\n disposable.register(\r\n createDisposable(() => {\r\n document.removeEventListener(\"mousemove\", handleMouseMove);\r\n document.removeEventListener(\"touchmove\", handleMouseMove);\r\n document.removeEventListener(\"mouseup\", handleMouseUp);\r\n document.removeEventListener(\"touchend\", handleMouseUp);\r\n document.removeEventListener(\"touchcancel\", handleMouseUp);\r\n })\r\n );\r\n };\r\n\r\n const reset = () => {\r\n unref(grandEl)!.style.width = ``;\r\n unref(buttonEl)!.style.transform = ``;\r\n };\r\n\r\n expose({\r\n fail: () => {\r\n isError.value = true;\r\n\r\n setTimeout(() => {\r\n isError.value = false;\r\n\r\n reset();\r\n }, 1000);\r\n },\r\n });\r\n\r\n onMounted(async () => {\r\n\r\n const blob = await getImage();\r\n const url = URL.createObjectURL(blob);\r\n\r\n imageUrl.value = url;\r\n\r\n onUnmounted(()=>{\r\n URL.revokeObjectURL(url);\r\n })\r\n \r\n });\r\n return () => {\r\n return (\r\n <Fragment>\r\n <div class=\"mk-verify-dialog__wrapper\" v-loading={unref(loading)}>\r\n <div\r\n class=\"mk-verify-dialog__image\"\r\n ref=\"imageEl\"\r\n style={imageStyle.value}\r\n />\r\n <div class=\"mk-verify-dialog__coordinate\" />\r\n </div>\r\n <div class={[\"mk-verify-switch\", unref(isError) ? \"is-error\" : \"\"]}>\r\n <div\r\n class=\"mk-verify-switch__wrapper\"\r\n ref={((el: HTMLDivElement) => (wrapperEl.value = el)) as any}\r\n >\r\n <div\r\n class=\"mk-verify-switch__button-grand\"\r\n ref={((el: HTMLDivElement) => (grandEl.value = el)) as any}\r\n />\r\n <div\r\n class=\"mk-verify-switch__button\"\r\n ref={((el: HTMLDivElement) => (buttonEl.value = el)) as any}\r\n onMousedown={handleMouseDown}\r\n onTouchstart={handleMouseDown}\r\n />\r\n </div>\r\n </div>\r\n </Fragment>\r\n );\r\n };\r\n },\r\n});\r\n"],"names":["defineComponent","name","props","verifyDialogProps","emits","verifyDialogEmits","setup","emit","expose","wrapperEl","ref","buttonEl","grandEl","slideWidth","isError","deg","imageUrl","loading","imageStyle","computed","backgroundImage","unref","transform","getImage","value","params","scene","response","useHttpRequest","get","responseType","data","handleSwitchConfirm","handleMouseDown","mouseDownEvent","disposable","Disposable","totalWidth","getBoundingClientRect","width","handleMouseMove","event","x","MouseEvent","clientX","touches","y","clientY","Math","min","max","floor","style","handleMouseUp","dispose","document","addEventListener","register","createDisposable","removeEventListener","reset","fail","setTimeout","onMounted","blob","url","URL","createObjectURL","onUnmounted","revokeObjectURL","_createVNode","_Fragment","_withDirectives","_resolveDirective","el"],"mappings":"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"}
|
|
@@ -26,14 +26,16 @@ const FormDetail = /* @__PURE__ */ defineComponent({
|
|
|
26
26
|
});
|
|
27
27
|
const isShowDataForm = ref(false);
|
|
28
28
|
watch(detailTable, (dataTable, _, onCleanup) => {
|
|
29
|
-
const addRecordDisposable = dataTable.addRecordEvent.on(async (
|
|
29
|
+
const addRecordDisposable = dataTable.addRecordEvent.on(async ({
|
|
30
|
+
item
|
|
31
|
+
}) => {
|
|
30
32
|
const _dataForm = unref(detailForm);
|
|
31
33
|
if (!_dataForm) {
|
|
32
34
|
console.warn(`没有对应的 (${dataTable.name}) DataForm 实现`);
|
|
33
35
|
return;
|
|
34
36
|
}
|
|
35
37
|
isShowDataForm.value = true;
|
|
36
|
-
_dataForm.addRecord();
|
|
38
|
+
_dataForm.addRecord(item);
|
|
37
39
|
});
|
|
38
40
|
const editRecordDisposable = dataTable.editRecordEvent.on(async ({
|
|
39
41
|
item
|
|
@@ -45,7 +47,7 @@ const FormDetail = /* @__PURE__ */ defineComponent({
|
|
|
45
47
|
}
|
|
46
48
|
isShowDataForm.value = true;
|
|
47
49
|
try {
|
|
48
|
-
const response = await _dataForm.editRecord(item
|
|
50
|
+
const response = await _dataForm.editRecord(item);
|
|
49
51
|
if (response.data.code !== 200) {
|
|
50
52
|
Messager.error({
|
|
51
53
|
message: response.data.msg
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"form-detail.js","sources":["../../../../../../../src/components/data-model/data-form/components/form-detail/form-detail.tsx"],"sourcesContent":["import { computed, defineComponent, ref, unref, watch } from \"vue\";\nimport { MKPageContainer } from \"../../../../basic/page-container\";\nimport { MKDataTable } from \"../../../data-table\";\nimport DataForm from \"../../data-form\";\nimport { formDetailEmits, formDetailProps } from \"./form-detail-options\";\nimport { useFormItem } from \"../../composables\";\nimport { ElDrawer, ElEmpty } from \"element-plus\";\nimport { Messager } from \"@maketribe/dm\";\n\nexport default defineComponent({\n name: \"MKFormDetail\",\n props: formDetailProps,\n emits: formDetailEmits,\n setup(props) {\n const detailTable = computed(() => props.column.detailTable);\n const detailForm = computed(() => props.column.detailForm!);\n\n const { value } = useFormItem();\n\n watch(\n computed(() => unref(value)),\n (value) => {\n const _detailTable = unref(detailTable);\n\n value = Array.isArray(value) ? value : [];\n\n _detailTable.setList(\n value.map((item: any) => _detailTable.formatItem(item))\n );\n }\n );\n\n const isShowDataForm = ref(false);\n\n watch(\n detailTable,\n (dataTable, _, onCleanup) => {\n const addRecordDisposable = dataTable.addRecordEvent.on(async () => {\n const _dataForm = unref(detailForm);\n\n if (!_dataForm) {\n console.warn(`没有对应的 (${dataTable.name}) DataForm 实现`);\n return;\n }\n\n isShowDataForm.value = true;\n\n _dataForm.addRecord();\n });\n\n const editRecordDisposable = dataTable.editRecordEvent.on(\n async ({ item }) => {\n const _dataForm = unref(detailForm);\n\n if (!_dataForm) {\n console.warn(`没有对应的 (${dataTable.name}) DataForm 实现`);\n return;\n }\n\n isShowDataForm.value = true;\n\n try {\n const response = await _dataForm.editRecord(
|
|
1
|
+
{"version":3,"file":"form-detail.js","sources":["../../../../../../../src/components/data-model/data-form/components/form-detail/form-detail.tsx"],"sourcesContent":["import { computed, defineComponent, ref, unref, watch } from \"vue\";\nimport { MKPageContainer } from \"../../../../basic/page-container\";\nimport { MKDataTable } from \"../../../data-table\";\nimport DataForm from \"../../data-form\";\nimport { formDetailEmits, formDetailProps } from \"./form-detail-options\";\nimport { useFormItem } from \"../../composables\";\nimport { ElDrawer, ElEmpty } from \"element-plus\";\nimport { Messager } from \"@maketribe/dm\";\n\nexport default defineComponent({\n name: \"MKFormDetail\",\n props: formDetailProps,\n emits: formDetailEmits,\n setup(props) {\n const detailTable = computed(() => props.column.detailTable);\n const detailForm = computed(() => props.column.detailForm!);\n\n const { value } = useFormItem();\n\n watch(\n computed(() => unref(value)),\n (value) => {\n const _detailTable = unref(detailTable);\n\n value = Array.isArray(value) ? value : [];\n\n _detailTable.setList(\n value.map((item: any) => _detailTable.formatItem(item))\n );\n }\n );\n\n const isShowDataForm = ref(false);\n\n watch(\n detailTable,\n (dataTable, _, onCleanup) => {\n const addRecordDisposable = dataTable.addRecordEvent.on(async ({ item }) => {\n const _dataForm = unref(detailForm);\n\n if (!_dataForm) {\n console.warn(`没有对应的 (${dataTable.name}) DataForm 实现`);\n return;\n }\n\n isShowDataForm.value = true;\n\n _dataForm.addRecord(item);\n });\n\n const editRecordDisposable = dataTable.editRecordEvent.on(\n async ({ item }) => {\n const _dataForm = unref(detailForm);\n\n if (!_dataForm) {\n console.warn(`没有对应的 (${dataTable.name}) DataForm 实现`);\n return;\n }\n\n isShowDataForm.value = true;\n\n try {\n const response = await _dataForm.editRecord(item);\n\n if (response.data.code !== 200) {\n Messager.error({ message: response.data.msg });\n isShowDataForm.value = false;\n return;\n }\n } catch (e) {\n console.error(e);\n isShowDataForm.value = false;\n }\n }\n );\n\n onCleanup(() => {\n addRecordDisposable.dispose();\n editRecordDisposable.dispose();\n });\n },\n { immediate: true }\n );\n\n watch(\n detailForm,\n (dataForm, _, onCleanup) => {\n const submittedDisposable = dataForm.submittedEvent.on(() => {\n isShowDataForm.value = false;\n\n unref(detailTable)?.load();\n });\n\n const cancelDisposable = dataForm.cancelEvent.on(() => {\n isShowDataForm.value = false;\n });\n\n onCleanup(() => {\n submittedDisposable.dispose();\n cancelDisposable.dispose();\n });\n },\n { immediate: true }\n );\n\n return () => {\n const dataForm = unref(isShowDataForm) ? (\n <MKPageContainer>\n <DataForm dataForm={unref(detailForm)} autoLoad={false} />\n </MKPageContainer>\n ) : null;\n\n return (\n <div class=\"mk-form-detail\">\n <MKDataTable\n dataTable={unref(detailTable)}\n autoLoad={false}\n v-slots={{ empty: () => <ElEmpty image-size={100} /> }}\n />\n <ElDrawer\n class=\"mk-form-detail__drawer\"\n modelValue={unref(isShowDataForm)}\n onUpdate:modelValue={(v) => (isShowDataForm.value = v)}\n appendToBody\n withHeader={false}\n width=\"50%\"\n >\n {dataForm}\n </ElDrawer>\n </div>\n );\n };\n },\n});\n"],"names":["_isSlot","s","Object","prototype","toString","call","_isVNode","defineComponent","name","props","formDetailProps","emits","formDetailEmits","setup","detailTable","computed","column","detailForm","value","useFormItem","watch","unref","_detailTable","Array","isArray","setList","map","item","formatItem","isShowDataForm","ref","dataTable","_","onCleanup","addRecordDisposable","addRecordEvent","on","_dataForm","console","warn","addRecord","editRecordDisposable","editRecordEvent","response","editRecord","data","code","Messager","error","message","msg","e","dispose","immediate","dataForm","submittedDisposable","submittedEvent","load","cancelDisposable","cancelEvent","_createVNode","MKPageContainer","default","DataForm","MKDataTable","empty","ElEmpty","ElDrawer","v"],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"form.js","sources":["../../../../../../../src/components/data-model/data-form/views/form/form.tsx"],"sourcesContent":["import {\n Fragment,\n computed,\n defineComponent,\n inject,\n nextTick,\n onMounted,\n ref,\n unref,\n watch,\n} from \"vue\";\nimport {\n ElDivider,\n ElForm,\n FormItemRule,\n FormRules,\n FormContext,\n} from \"element-plus\";\nimport { formProps } from \"./form-options\";\nimport { DataFormType, FormColumn } from \"@maketribe/dm\";\nimport MKDataFormItem from \"../../data-form-item\";\nimport { DATA_FORM_CONTEXT_KEY } from \"../../token\";\n\nlet uid = 0;\n\nexport default defineComponent({\n props: formProps,\n setup(props, { slots }) {\n const formUID = uid++;\n\n const dataFormContext = inject(DATA_FORM_CONTEXT_KEY);\n\n const formEl = ref<FormContext | null>(null);\n\n const dataForm = computed(\n () => props.dataForm ?? dataFormContext!.dataForm\n );\n\n const data = computed(() => unref(dataForm).data as any);\n\n const columns = computed(() =>\n unref(dataForm)\n .getColumns()\n .filter((column) => column.visible)\n );\n\n const rules = computed(() => {\n const rules: FormRules = {};\n\n for (const column of unref(columns)) {\n if (column.required && !column.rules.find((rule) => rule.required)) {\n rules[column.name] = [\n {\n required: column.required,\n message: `请录入${column.label}.`,\n },\n ];\n }\n let componentRules: FormItemRule[] = props.rules?.[column.name] || [];\n\n if (!Array.isArray(componentRules)) {\n componentRules = [componentRules];\n }\n\n if (column.rules.length) {\n rules[column.name] = [\n ...((rules[column.name] as FormItemRule[]) || []),\n ...column.rules,\n ...componentRules,\n ];\n }\n }\n\n return rules;\n });\n\n const labelWidth = computed(() => {\n return (\n props.labelWidth ||\n Math.max.apply(\n null,\n columns.value\n .filter((column) => column.visible)\n .filter((column) => column.componentInfo !== \"MKFormDetail\")\n .map((item: FormColumn) => {\n // + 8 像素只是预留 必填 * 号的宽度位置 12 像素是label的padding\n return item.label.length * 16 + 8 + 12;\n })\n )\n );\n });\n\n const disabled = computed(() => unref(dataForm).disabled);\n\n onMounted(() => {\n watch(\n dataForm,\n (dataForm, _, onCleanup) => {\n unref(dataForm).formModels.push({\n id: formUID,\n validate: async () => {\n return unref(formEl)?.validateField() ?? false;\n },\n reset: () => {\n unref(formEl)?.resetFields();\n },\n clearValidate: () => {\n unref(formEl)?.clearValidate();\n },\n });\n\n const disposable = dataForm.dataFormTypeChangeEvent.on(\n async ({ dataFormType }) => {\n if (dataFormType !== DataFormType.NONE) {\n // 测试下来 需要两次nextTick才能清除验证\n await nextTick();\n await nextTick();\n\n dataForm.clearValidate();\n }\n }\n );\n\n onCleanup(() => {\n const index = dataForm.formModels.findIndex(\n (formModel) => formModel.id === formUID\n );\n\n if (index === -1) {\n return;\n }\n\n dataForm.formModels.splice(index, 1);\n\n disposable.dispose();\n });\n },\n { immediate: true }\n );\n });\n\n return () => {\n if (!unref(dataForm).initd) {\n return null;\n }\n\n let children: any = slots.default?.();\n\n const detailColumns = unref(columns).filter(\n (column) => column.componentInfo === \"MKFormDetail\"\n );\n\n if (!children) {\n children = unref(columns)\n .filter(\n (column) => !detailColumns.find((item) => item.name === column.name)\n )\n .map((column) => {\n if (!column.name) {\n return null;\n }\n\n return (\n slots[`col-${column.name}`]?.() || (\n <MKDataFormItem\n key={column.name}\n name={column.name}\n v-slots={{ default: slots[`col-${column.name}-content`] }}\n />\n )\n );\n });\n\n children.push(\n detailColumns.map((column) => {\n if (!column.name) {\n return null;\n }\n\n return (\n <Fragment>\n <ElDivider contentPosition=\"left\">{column.label}</ElDivider>\n <MKDataFormItem\n label=\"\"\n labelWidth=\"0px\"\n key={column.name}\n name={column.name}\n />\n </Fragment>\n );\n })\n );\n }\n\n if (!unref(data)) {\n return null;\n }\n\n return (\n <ElForm\n validateOnRuleChange={false}\n {...props}\n ref={formEl}\n model={unref(data)}\n rules={unref(rules)}\n disabled={unref(disabled)}\n labelWidth={unref(labelWidth)}\n >\n {children}\n </ElForm>\n );\n };\n },\n});\n"],"names":["_isSlot","s","Object","prototype","toString","call","_isVNode","uid","defineComponent","props","formProps","setup","slots","formUID","dataFormContext","inject","DATA_FORM_CONTEXT_KEY","formEl","ref","dataForm","computed","data","unref","columns","getColumns","filter","column","visible","rules","required","find","rule","name","message","label","componentRules","Array","isArray","length","labelWidth","Math","max","apply","value","componentInfo","map","item","disabled","onMounted","watch","_","onCleanup","formModels","push","id","validate","validateField","reset","resetFields","clearValidate","disposable","dataFormTypeChangeEvent","on","dataFormType","DataFormType","NONE","nextTick","index","findIndex","formModel","splice","dispose","immediate","initd","children","default","detailColumns","_createVNode","MKDataFormItem","_Fragment","ElDivider","ElForm","_mergeProps"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"form.js","sources":["../../../../../../../src/components/data-model/data-form/views/form/form.tsx"],"sourcesContent":["import {\n Fragment,\n computed,\n defineComponent,\n inject,\n nextTick,\n onMounted,\n ref,\n unref,\n watch,\n} from \"vue\";\nimport {\n ElDivider,\n ElForm,\n FormItemRule,\n FormRules,\n FormContext,\n} from \"element-plus\";\nimport { formProps } from \"./form-options\";\nimport { DataFormType, FormColumn } from \"@maketribe/dm\";\nimport MKDataFormItem from \"../../data-form-item\";\nimport { DATA_FORM_CONTEXT_KEY } from \"../../token\";\n\nlet uid = 0;\n\nexport default defineComponent({\n name: \"MKForm\",\n props: formProps,\n setup(props, { slots }) {\n const formUID = uid++;\n\n const dataFormContext = inject(DATA_FORM_CONTEXT_KEY);\n\n const formEl = ref<FormContext | null>(null);\n\n const dataForm = computed(\n () => props.dataForm ?? dataFormContext!.dataForm\n );\n\n const data = computed(() => unref(dataForm).data as any);\n\n const columns = computed(() =>\n unref(dataForm)\n .getColumns()\n .filter((column) => column.visible)\n );\n\n const rules = computed(() => {\n const rules: FormRules = {};\n\n for (const column of unref(columns)) {\n if (column.required && !column.rules.find((rule) => rule.required)) {\n rules[column.name] = [\n {\n required: column.required,\n message: `请录入${column.label}.`,\n },\n ];\n }\n let componentRules: FormItemRule[] = props.rules?.[column.name] || [];\n\n if (!Array.isArray(componentRules)) {\n componentRules = [componentRules];\n }\n\n if (column.rules.length) {\n rules[column.name] = [\n ...((rules[column.name] as FormItemRule[]) || []),\n ...column.rules,\n ...componentRules,\n ];\n }\n }\n\n return rules;\n });\n\n const labelWidth = computed(() => {\n return (\n props.labelWidth ||\n Math.max.apply(\n null,\n columns.value\n .filter((column) => column.visible)\n .filter((column) => column.componentInfo !== \"MKFormDetail\")\n .map((item: FormColumn) => {\n // + 8 像素只是预留 必填 * 号的宽度位置 12 像素是label的padding\n return item.label.length * 16 + 8 + 12;\n })\n )\n );\n });\n\n const disabled = computed(() => unref(dataForm).disabled);\n\n onMounted(() => {\n watch(\n dataForm,\n (dataForm, _, onCleanup) => {\n unref(dataForm).formModels.push({\n id: formUID,\n validate: async () => {\n return unref(formEl)?.validateField() ?? false;\n },\n reset: () => {\n unref(formEl)?.resetFields();\n },\n clearValidate: () => {\n unref(formEl)?.clearValidate();\n },\n });\n\n const disposable = dataForm.dataFormTypeChangeEvent.on(\n async ({ dataFormType }) => {\n if (dataFormType !== DataFormType.NONE) {\n // 测试下来 需要两次nextTick才能清除验证\n await nextTick();\n await nextTick();\n\n dataForm.clearValidate();\n }\n }\n );\n\n onCleanup(() => {\n const index = dataForm.formModels.findIndex(\n (formModel) => formModel.id === formUID\n );\n\n if (index === -1) {\n return;\n }\n\n dataForm.formModels.splice(index, 1);\n\n disposable.dispose();\n });\n },\n { immediate: true }\n );\n });\n\n return () => {\n if (!unref(dataForm).initd) {\n return null;\n }\n\n let children: any = slots.default?.();\n\n const detailColumns = unref(columns).filter(\n (column) => column.componentInfo === \"MKFormDetail\"\n );\n\n if (!children) {\n children = unref(columns)\n .filter(\n (column) => !detailColumns.find((item) => item.name === column.name)\n )\n .map((column) => {\n if (!column.name) {\n return null;\n }\n\n return (\n slots[`col-${column.name}`]?.() || (\n <MKDataFormItem\n key={column.name}\n name={column.name}\n v-slots={{ default: slots[`col-${column.name}-content`] }}\n />\n )\n );\n });\n\n children.push(\n detailColumns.map((column) => {\n if (!column.name) {\n return null;\n }\n\n return (\n <Fragment>\n <ElDivider contentPosition=\"left\">{column.label}</ElDivider>\n <MKDataFormItem\n label=\"\"\n labelWidth=\"0px\"\n key={column.name}\n name={column.name}\n />\n </Fragment>\n );\n })\n );\n }\n\n if (!unref(data)) {\n return null;\n }\n\n return (\n <ElForm\n validateOnRuleChange={false}\n {...props}\n ref={formEl}\n model={unref(data)}\n rules={unref(rules)}\n disabled={unref(disabled)}\n labelWidth={unref(labelWidth)}\n >\n {children}\n </ElForm>\n );\n };\n },\n});\n"],"names":["_isSlot","s","Object","prototype","toString","call","_isVNode","uid","defineComponent","name","props","formProps","setup","slots","formUID","dataFormContext","inject","DATA_FORM_CONTEXT_KEY","formEl","ref","dataForm","computed","data","unref","columns","getColumns","filter","column","visible","rules","required","find","rule","message","label","componentRules","Array","isArray","length","labelWidth","Math","max","apply","value","componentInfo","map","item","disabled","onMounted","watch","_","onCleanup","formModels","push","id","validate","validateField","reset","resetFields","clearValidate","disposable","dataFormTypeChangeEvent","on","dataFormType","DataFormType","NONE","nextTick","index","findIndex","formModel","splice","dispose","immediate","initd","children","default","detailColumns","_createVNode","MKDataFormItem","_Fragment","ElDivider","ElForm","_mergeProps"],"mappings":"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"}
|
package/dist/esm/index.js
CHANGED
|
@@ -63,7 +63,7 @@ import { MKImageCropperContent } from "./components/basic/image-cropper/index.js
|
|
|
63
63
|
import { MKDataForm } from "./components/data-model/data-form/index.js";
|
|
64
64
|
import { MKDataTable } from "./components/data-model/data-table/index.js";
|
|
65
65
|
import { MKDataTablePagination } from "./components/data-model/data-table-pagination/index.js";
|
|
66
|
-
import {
|
|
66
|
+
import { MKOpenVerifyCode } from "./components/business/verify-dialog/index.js";
|
|
67
67
|
import { MKResourceList } from "./components/business/resource-list/index.js";
|
|
68
68
|
import { MKResourceManager } from "./components/business/resource-manager/index.js";
|
|
69
69
|
import { MKResourceSelect } from "./components/business/resource-select/index.js";
|
|
@@ -227,6 +227,7 @@ export {
|
|
|
227
227
|
MKMaterialList,
|
|
228
228
|
MKMaterialSelect,
|
|
229
229
|
MKMaterialUploadContext,
|
|
230
|
+
MKOpenVerifyCode,
|
|
230
231
|
MKPageContainer,
|
|
231
232
|
MKPagination,
|
|
232
233
|
MKResourceList,
|
|
@@ -246,7 +247,6 @@ export {
|
|
|
246
247
|
MKTreeView,
|
|
247
248
|
MKUploadFile,
|
|
248
249
|
MKUploadImage,
|
|
249
|
-
MKVerifyDialog,
|
|
250
250
|
MKWebFileUploadContext,
|
|
251
251
|
MSAPPCLIENT_CONTEXT_KEY,
|
|
252
252
|
MSAppClient,
|
package/dist/esm/installer.js
CHANGED
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import { createVNode, render } from "vue";
|
|
1
2
|
import { makeInstaller } from "@maketribe/utils";
|
|
2
3
|
import { Messager, Dialoger, Notificationer } from "@maketribe/dm";
|
|
3
4
|
import { MessagerImpl } from "./message-impl/MessagerImpl.js";
|
|
@@ -5,7 +6,6 @@ import { NotificationerImpl } from "./message-impl/NotificationerImpl.js";
|
|
|
5
6
|
import { DialogerImpl } from "./message-impl/DialogerImpl.js";
|
|
6
7
|
import "./components/abstract/abstract-select/abstract-select.js";
|
|
7
8
|
import "./components/abstract/abstract-select/abstract-select-options.js";
|
|
8
|
-
import "vue";
|
|
9
9
|
import "element-plus";
|
|
10
10
|
import { MKSvgIcon } from "./components/basic/svg-icon/index.js";
|
|
11
11
|
import "./components/basic/button/button-options.js";
|
|
@@ -31,9 +31,13 @@ import { MKImageCropperContent } from "./components/basic/image-cropper/index.js
|
|
|
31
31
|
import { MKDataForm } from "./components/data-model/data-form/index.js";
|
|
32
32
|
import { MKDataTable } from "./components/data-model/data-table/index.js";
|
|
33
33
|
import { MKDataTablePagination } from "./components/data-model/data-table-pagination/index.js";
|
|
34
|
-
import
|
|
34
|
+
import "vue-router";
|
|
35
|
+
import "@maketribe/locale";
|
|
36
|
+
import "./core/DataModelDefines.js";
|
|
37
|
+
import "./components/business/verify-dialog/verify-dialog-option.js";
|
|
35
38
|
import "./components/business/resource-list/index.js";
|
|
36
39
|
import "./components/business/resource-manager/index.js";
|
|
40
|
+
import { MKDialogs } from "./layouts/components/dialogs/index.js";
|
|
37
41
|
import { provideGlobalConfig } from "./components/basic/config-provider/use-global-config.js";
|
|
38
42
|
import { MKTableHeaderItem } from "./components/data-model/data-table/views/table-view/header/index.js";
|
|
39
43
|
import { MKTable } from "./components/data-model/data-table/views/table/index.js";
|
|
@@ -49,7 +53,6 @@ const components = [
|
|
|
49
53
|
MKPagination,
|
|
50
54
|
MKDataTablePagination,
|
|
51
55
|
MKSystemProvider,
|
|
52
|
-
MKVerifyDialog,
|
|
53
56
|
MKUploadFile,
|
|
54
57
|
MKUploadImage,
|
|
55
58
|
MKWebFileUploadContext,
|
|
@@ -71,6 +74,12 @@ const installer = makeInstaller(
|
|
|
71
74
|
Messager.implInstance = new MessagerImpl();
|
|
72
75
|
Dialoger.implInstance = new DialogerImpl();
|
|
73
76
|
Notificationer.implInstance = new NotificationerImpl();
|
|
77
|
+
const dialogContainer = document.createElement("div");
|
|
78
|
+
const appContext = app._context;
|
|
79
|
+
const vnode = createVNode(MKDialogs);
|
|
80
|
+
vnode.appContext = appContext;
|
|
81
|
+
render(vnode, dialogContainer);
|
|
82
|
+
document.body.appendChild(dialogContainer);
|
|
74
83
|
}
|
|
75
84
|
);
|
|
76
85
|
export {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"installer.js","sources":["../../src/installer.ts"],"sourcesContent":["import { Plugin } from \"vue\";\nimport { makeInstaller } from \"@maketribe/utils\";\nimport { Dialoger, Messager, Notificationer } from \"@maketribe/dm\";\nimport { DialogerImpl, MessagerImpl, NotificationerImpl } from \"./message-impl\";\nimport {\n ConfigProviderContext,\n MKConfigProvider,\n MKDataForm,\n MKDataTable,\n MKSvgIcon,\n provideGlobalConfig,\n MKDataTableSelect,\n MKPagination,\n MKDataTablePagination,\n MKSystemProvider,\n
|
|
1
|
+
{"version":3,"file":"installer.js","sources":["../../src/installer.ts"],"sourcesContent":["import { Plugin,createVNode,render } from \"vue\";\r\nimport { makeInstaller } from \"@maketribe/utils\";\r\nimport { Dialoger, Messager, Notificationer } from \"@maketribe/dm\";\r\nimport { DialogerImpl, MessagerImpl, NotificationerImpl } from \"./message-impl\";\r\nimport {\r\n ConfigProviderContext,\r\n MKConfigProvider,\r\n MKDataForm,\r\n MKDataTable,\r\n MKSvgIcon,\r\n provideGlobalConfig,\r\n MKDataTableSelect,\r\n MKPagination,\r\n MKDataTablePagination,\r\n MKSystemProvider,\r\n MKUploadFile,\r\n MKUploadImage,\r\n MKWebFileUploadContext,\r\n MKPageContainer,\r\n MKTableHeaderItem,\r\n MKTable,\r\n MKTableView,\r\n MKForm,\r\n MKFormView,\r\n MKImageCropperContent\r\n} from \"./components\";\r\n\r\nconst components: Plugin[] = [\r\n MKConfigProvider,\r\n MKDataForm,\r\n MKDataTable,\r\n MKSvgIcon,\r\n MKDataTableSelect,\r\n MKPagination,\r\n MKDataTablePagination,\r\n MKSystemProvider,\r\n MKUploadFile,\r\n MKUploadImage,\r\n MKWebFileUploadContext,\r\n MKPageContainer,\r\n MKTableHeaderItem,\r\n MKTable,\r\n MKTableView,\r\n MKForm,\r\n MKFormView,\r\n MKImageCropperContent\r\n];\r\n\r\nimport { MKDialogs } from \"./layouts/components\"\r\n\r\nexport const installer = makeInstaller<ConfigProviderContext>(\r\n components,\r\n \"1.0.0-dev\",\r\n (app, version, options) => {\r\n if (options) {\r\n provideGlobalConfig(options, app, true);\r\n }\r\n\r\n Messager.implInstance = new MessagerImpl();\r\n Dialoger.implInstance = new DialogerImpl();\r\n Notificationer.implInstance = new NotificationerImpl();\r\n\r\n // 注册通用的 dialog\r\n const dialogContainer = document.createElement('div');\r\n const appContext = app._context;\r\n const vnode = createVNode(MKDialogs);\r\n vnode.appContext = appContext;\r\n \r\n //渲染\r\n render(vnode, dialogContainer);\r\n document.body.appendChild(dialogContainer);\r\n }\r\n);\r\n"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AA2BA,MAAM,aAAuB;AAAA,EAC3B;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AACF;AAIO,MAAM,YAAY;AAAA,EACvB;AAAA,EACA;AAAA,EACA,CAAC,KAAK,SAAS,YAAY;AACzB,QAAI,SAAS;AACS,0BAAA,SAAS,KAAK,IAAI;AAAA,IACxC;AAES,aAAA,eAAe,IAAI;AACnB,aAAA,eAAe,IAAI;AACb,mBAAA,eAAe,IAAI;AAG5B,UAAA,kBAAkB,SAAS,cAAc,KAAK;AACpD,UAAM,aAAa,IAAI;AACjB,UAAA,QAAQ,YAAY,SAAS;AACnC,UAAM,aAAa;AAGnB,WAAO,OAAO,eAAe;AACpB,aAAA,KAAK,YAAY,eAAe;AAAA,EAC3C;AACF;"}
|
|
@@ -27,14 +27,14 @@ import "../../../components/basic/image-cropper/index.js";
|
|
|
27
27
|
import "../../../components/data-model/data-form/index.js";
|
|
28
28
|
import "../../../components/data-model/data-table/index.js";
|
|
29
29
|
import "../../../components/data-model/data-table-pagination/index.js";
|
|
30
|
-
import "../../../components/business/verify-dialog/index.js";
|
|
31
|
-
import "../../../components/business/resource-list/index.js";
|
|
32
|
-
import "../../../components/business/resource-manager/index.js";
|
|
33
30
|
import "@maketribe/dm";
|
|
31
|
+
import { MSAppClient } from "../../../core/MSAppClient.js";
|
|
34
32
|
import { MenuNode } from "../../../core/menu/MenuNode.js";
|
|
35
33
|
import "../../../core/DataModelDefines.js";
|
|
36
|
-
import { MSAppClient } from "../../../core/MSAppClient.js";
|
|
37
34
|
import { MenuType } from "../../../constants/menu.js";
|
|
35
|
+
import "../../../components/business/verify-dialog/verify-dialog-option.js";
|
|
36
|
+
import "../../../components/business/resource-list/index.js";
|
|
37
|
+
import "../../../components/business/resource-manager/index.js";
|
|
38
38
|
const MKBar = /* @__PURE__ */ defineComponent({
|
|
39
39
|
name: "MKBar",
|
|
40
40
|
props: {
|
|
@@ -30,7 +30,7 @@ import "../../../components/basic/image-cropper/index.js";
|
|
|
30
30
|
import "../../../components/data-model/data-form/index.js";
|
|
31
31
|
import "../../../components/data-model/data-table/index.js";
|
|
32
32
|
import "../../../components/data-model/data-table-pagination/index.js";
|
|
33
|
-
import {
|
|
33
|
+
import { MKOpenVerifyCode } from "../../../components/business/verify-dialog/index.js";
|
|
34
34
|
import "../../../components/business/resource-list/index.js";
|
|
35
35
|
import "../../../components/business/resource-manager/index.js";
|
|
36
36
|
const MKHeaderTools = /* @__PURE__ */ defineComponent({
|
|
@@ -81,11 +81,16 @@ const MKHeaderTools = /* @__PURE__ */ defineComponent({
|
|
|
81
81
|
callback();
|
|
82
82
|
}
|
|
83
83
|
};
|
|
84
|
-
const submitChangePassword = async (
|
|
84
|
+
const submitChangePassword = async () => {
|
|
85
|
+
if (!await formRef.value.validate()) {
|
|
86
|
+
return;
|
|
87
|
+
}
|
|
85
88
|
try {
|
|
86
|
-
isVisibleVerify.value = false;
|
|
87
89
|
btnLoading.value = true;
|
|
88
|
-
|
|
90
|
+
const vCode = await MKOpenVerifyCode({
|
|
91
|
+
sence: "ModifyPassword"
|
|
92
|
+
}) + "";
|
|
93
|
+
const result = await msAppClient.changePassword(form.password, form.newPassword, vCode);
|
|
89
94
|
if (result.data.code != 200) {
|
|
90
95
|
Messager.error({
|
|
91
96
|
message: result.data.msg || "修改密码失败"
|
|
@@ -100,24 +105,10 @@ const MKHeaderTools = /* @__PURE__ */ defineComponent({
|
|
|
100
105
|
btnLoading.value = false;
|
|
101
106
|
}
|
|
102
107
|
};
|
|
103
|
-
const isVisibleVerify = ref(false);
|
|
104
|
-
const handleUnlock = async () => {
|
|
105
|
-
const isPass = await formRef.value.validate();
|
|
106
|
-
if (!isPass) {
|
|
107
|
-
return;
|
|
108
|
-
}
|
|
109
|
-
isVisibleVerify.value = true;
|
|
110
|
-
};
|
|
111
108
|
return () => {
|
|
112
|
-
const verifyDialogVNode = unref(isVisibleVerify) ? createVNode(MKVerifyDialog, {
|
|
113
|
-
"scene": "ModifyPassword",
|
|
114
|
-
"visible": unref(isVisibleVerify),
|
|
115
|
-
"onUpdate:visible": (v) => isVisibleVerify.value = v,
|
|
116
|
-
"onConfirm": submitChangePassword
|
|
117
|
-
}, null) : null;
|
|
118
109
|
return createVNode("div", {
|
|
119
110
|
"class": "mk-header-tools"
|
|
120
|
-
}, [
|
|
111
|
+
}, [createVNode("div", {
|
|
121
112
|
"class": "mk-header-tools__item"
|
|
122
113
|
}, [createVNode(ElDropdown, {
|
|
123
114
|
"class": "mk-header-tools__user",
|
|
@@ -238,7 +229,7 @@ const MKHeaderTools = /* @__PURE__ */ defineComponent({
|
|
|
238
229
|
"type": "primary",
|
|
239
230
|
"loading": btnLoading.value,
|
|
240
231
|
"onClick": () => {
|
|
241
|
-
|
|
232
|
+
submitChangePassword();
|
|
242
233
|
}
|
|
243
234
|
}, {
|
|
244
235
|
default: () => [createTextVNode("确定")]
|