workdesktop-ai 1.0.1 → 1.1.0
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/CHANGELOG.md +155 -61
- package/README.md +123 -25
- package/dist/api-button/index.mjs +7 -0
- package/dist/api-button/index.mjs.map +1 -0
- package/dist/assets/Select-CNzSyvlZ.css +1 -0
- package/dist/auto-complete/index.mjs +7 -0
- package/dist/auto-complete/index.mjs.map +1 -0
- package/dist/auto-complete/style.css +1 -0
- package/dist/base.css +1 -0
- package/dist/checkbox-list/index.mjs +7 -0
- package/dist/checkbox-list/index.mjs.map +1 -0
- package/dist/checkbox-list/style.css +1 -0
- package/dist/chunks/ApiButton.vue_vue_type_script_setup_true_lang-CweWFfDE.mjs +80 -0
- package/dist/chunks/ApiButton.vue_vue_type_script_setup_true_lang-CweWFfDE.mjs.map +1 -0
- package/dist/chunks/AutoComplete-B_L169hU.mjs +80 -0
- package/dist/chunks/AutoComplete-B_L169hU.mjs.map +1 -0
- package/dist/chunks/CheckboxList-bPqpbd8d.mjs +129 -0
- package/dist/chunks/CheckboxList-bPqpbd8d.mjs.map +1 -0
- package/dist/chunks/ConfirmButton.vue_vue_type_script_setup_true_lang-DpdMPkka.mjs +99 -0
- package/dist/chunks/ConfirmButton.vue_vue_type_script_setup_true_lang-DpdMPkka.mjs.map +1 -0
- package/dist/chunks/DataForm-C6UW92Ds.mjs +305 -0
- package/dist/chunks/DataForm-C6UW92Ds.mjs.map +1 -0
- package/dist/chunks/DataGrid-BhgND4G_.mjs +1124 -0
- package/dist/chunks/DataGrid-BhgND4G_.mjs.map +1 -0
- package/dist/chunks/DialogButton.vue_vue_type_script_setup_true_lang-CTXP79zc.mjs +117 -0
- package/dist/chunks/DialogButton.vue_vue_type_script_setup_true_lang-CTXP79zc.mjs.map +1 -0
- package/dist/chunks/Drawer-ucXKUecL.mjs +259 -0
- package/dist/chunks/Drawer-ucXKUecL.mjs.map +1 -0
- package/dist/chunks/DrawerButton.vue_vue_type_script_setup_true_lang-DUda4p7_.mjs +125 -0
- package/dist/chunks/DrawerButton.vue_vue_type_script_setup_true_lang-DUda4p7_.mjs.map +1 -0
- package/dist/chunks/EditableGrid-Cx7ScWkW.mjs +1783 -0
- package/dist/chunks/EditableGrid-Cx7ScWkW.mjs.map +1 -0
- package/dist/chunks/FormItem-C1q0opnk.mjs +79 -0
- package/dist/chunks/FormItem-C1q0opnk.mjs.map +1 -0
- package/dist/chunks/Iframe-CeSiMnvR.mjs +65 -0
- package/dist/chunks/Iframe-CeSiMnvR.mjs.map +1 -0
- package/dist/chunks/ImageUpload-D3JGJjVO.mjs +193 -0
- package/dist/chunks/ImageUpload-D3JGJjVO.mjs.map +1 -0
- package/dist/chunks/Panel-d4chdlTA.mjs +113 -0
- package/dist/chunks/Panel-d4chdlTA.mjs.map +1 -0
- package/dist/chunks/PromptButton.vue_vue_type_script_setup_true_lang-BqoNAUoo.mjs +118 -0
- package/dist/chunks/PromptButton.vue_vue_type_script_setup_true_lang-BqoNAUoo.mjs.map +1 -0
- package/dist/chunks/RadioList-DT-8WSN2.mjs +129 -0
- package/dist/chunks/RadioList-DT-8WSN2.mjs.map +1 -0
- package/dist/chunks/Requester.vue_vue_type_script_setup_true_lang-5B1V-53c.mjs +80 -0
- package/dist/chunks/Requester.vue_vue_type_script_setup_true_lang-5B1V-53c.mjs.map +1 -0
- package/dist/chunks/RouteButton.vue_vue_type_script_setup_true_lang-Da0D3tKA.mjs +73 -0
- package/dist/chunks/RouteButton.vue_vue_type_script_setup_true_lang-Da0D3tKA.mjs.map +1 -0
- package/dist/chunks/SearchItem-pFO57lEO.mjs +79 -0
- package/dist/chunks/SearchItem-pFO57lEO.mjs.map +1 -0
- package/dist/chunks/SearchPanel-xQ1hPaNq.mjs +158 -0
- package/dist/chunks/SearchPanel-xQ1hPaNq.mjs.map +1 -0
- package/dist/chunks/Select-CMw-tWYm.mjs +114 -0
- package/dist/chunks/Select-CMw-tWYm.mjs.map +1 -0
- package/dist/chunks/Station-BF_QlQ8c.mjs +796 -0
- package/dist/chunks/Station-BF_QlQ8c.mjs.map +1 -0
- package/dist/chunks/Switch.vue_vue_type_script_setup_true_lang-CCU_d3jW.mjs +71 -0
- package/dist/chunks/Switch.vue_vue_type_script_setup_true_lang-CCU_d3jW.mjs.map +1 -0
- package/dist/chunks/Tips-IWCZcR1K.mjs +63 -0
- package/dist/chunks/Tips-IWCZcR1K.mjs.map +1 -0
- package/dist/chunks/TipsButton.vue_vue_type_script_setup_true_lang-DvcpRSV1.mjs +51 -0
- package/dist/chunks/TipsButton.vue_vue_type_script_setup_true_lang-DvcpRSV1.mjs.map +1 -0
- package/dist/chunks/Upload.vue_vue_type_script_setup_true_lang-CkxGO85H.mjs +200 -0
- package/dist/chunks/Upload.vue_vue_type_script_setup_true_lang-CkxGO85H.mjs.map +1 -0
- package/dist/chunks/Viewer-COLbtcgF.mjs +381 -0
- package/dist/chunks/Viewer-COLbtcgF.mjs.map +1 -0
- package/dist/chunks/_plugin-vue_export-helper-CHgC5LLL.mjs +10 -0
- package/dist/chunks/_plugin-vue_export-helper-CHgC5LLL.mjs.map +1 -0
- package/dist/chunks/containerContext-BgphFDeH.mjs +13 -0
- package/dist/chunks/containerContext-BgphFDeH.mjs.map +1 -0
- package/dist/chunks/http-DUPsbs2K.mjs +2951 -0
- package/dist/chunks/http-DUPsbs2K.mjs.map +1 -0
- package/dist/chunks/linkage-FbL1mcz3.mjs +66 -0
- package/dist/chunks/linkage-FbL1mcz3.mjs.map +1 -0
- package/dist/chunks/props-DAytpx7D.mjs +65 -0
- package/dist/chunks/props-DAytpx7D.mjs.map +1 -0
- package/dist/chunks/useApiAction-C1CdKGjt.mjs +30 -0
- package/dist/chunks/useApiAction-C1CdKGjt.mjs.map +1 -0
- package/dist/chunks/useColumnSettings-BDtF5-8R.mjs +216 -0
- package/dist/chunks/useColumnSettings-BDtF5-8R.mjs.map +1 -0
- package/dist/chunks/useOptionsLoader-D0RTB_ar.mjs +64 -0
- package/dist/chunks/useOptionsLoader-D0RTB_ar.mjs.map +1 -0
- package/dist/confirm-button/index.mjs +7 -0
- package/dist/confirm-button/index.mjs.map +1 -0
- package/dist/data-form/index.mjs +7 -0
- package/dist/data-form/index.mjs.map +1 -0
- package/dist/data-form/style.css +1 -0
- package/dist/data-grid/index.mjs +7 -0
- package/dist/data-grid/index.mjs.map +1 -0
- package/dist/data-grid/style.css +1 -0
- package/dist/dialog-button/index.mjs +7 -0
- package/dist/dialog-button/index.mjs.map +1 -0
- package/dist/drawer/index.mjs +7 -0
- package/dist/drawer/index.mjs.map +1 -0
- package/dist/drawer/style.css +1 -0
- package/dist/drawer-button/index.mjs +7 -0
- package/dist/drawer-button/index.mjs.map +1 -0
- package/dist/editable-grid/index.mjs +7 -0
- package/dist/editable-grid/index.mjs.map +1 -0
- package/dist/editable-grid/style.css +1 -0
- package/dist/form-item/index.mjs +7 -0
- package/dist/form-item/index.mjs.map +1 -0
- package/dist/form-item/style.css +1 -0
- package/dist/iframe/index.mjs +7 -0
- package/dist/iframe/index.mjs.map +1 -0
- package/dist/iframe/style.css +1 -0
- package/dist/image-upload/index.mjs +7 -0
- package/dist/image-upload/index.mjs.map +1 -0
- package/dist/image-upload/style.css +1 -0
- package/dist/index.esm.js +318 -6474
- package/dist/index.esm.js.map +1 -1
- package/dist/index.umd.js +20 -9
- package/dist/index.umd.js.map +1 -1
- package/dist/panel/index.mjs +7 -0
- package/dist/panel/index.mjs.map +1 -0
- package/dist/panel/style.css +1 -0
- package/dist/prompt-button/index.mjs +7 -0
- package/dist/prompt-button/index.mjs.map +1 -0
- package/dist/radio-list/index.mjs +7 -0
- package/dist/radio-list/index.mjs.map +1 -0
- package/dist/radio-list/style.css +1 -0
- package/dist/requester/index.mjs +7 -0
- package/dist/requester/index.mjs.map +1 -0
- package/dist/route-button/index.mjs +7 -0
- package/dist/route-button/index.mjs.map +1 -0
- package/dist/search-item/index.mjs +7 -0
- package/dist/search-item/index.mjs.map +1 -0
- package/dist/search-item/style.css +1 -0
- package/dist/search-panel/index.mjs +7 -0
- package/dist/search-panel/index.mjs.map +1 -0
- package/dist/search-panel/style.css +1 -0
- package/dist/select/index.mjs +7 -0
- package/dist/select/index.mjs.map +1 -0
- package/dist/station/index.mjs +7 -0
- package/dist/station/index.mjs.map +1 -0
- package/dist/station/style.css +1 -0
- package/dist/style.css +1 -1
- package/dist/switch/index.mjs +7 -0
- package/dist/switch/index.mjs.map +1 -0
- package/dist/tips/index.mjs +7 -0
- package/dist/tips/index.mjs.map +1 -0
- package/dist/tips/style.css +1 -0
- package/dist/tips-button/index.mjs +7 -0
- package/dist/tips-button/index.mjs.map +1 -0
- package/dist/types/src/components/buttons/ApiButton.vue.d.ts +41 -3
- package/dist/types/src/components/buttons/ConfirmButton.vue.d.ts +43 -5
- package/dist/types/src/components/buttons/DialogButton.vue.d.ts +89 -29
- package/dist/types/src/components/buttons/DrawerButton.vue.d.ts +99 -31
- package/dist/types/src/components/buttons/PopconfirmButton.vue.d.ts +317 -0
- package/dist/types/src/components/buttons/PromptButton.vue.d.ts +51 -11
- package/dist/types/src/components/buttons/RouteButton.vue.d.ts +40 -2
- package/dist/types/src/components/buttons/TipsButton.vue.d.ts +14 -12
- package/dist/types/src/components/common/props.d.ts +37 -0
- package/dist/types/src/components/containers/Drawer.vue.d.ts +61 -8
- package/dist/types/src/components/containers/Iframe.vue.d.ts +39 -2
- package/dist/types/src/components/containers/containerContext.d.ts +1 -1
- package/dist/types/src/components/containers/useContainerController.d.ts +5 -0
- package/dist/types/src/components/containers/useIframeContainer.d.ts +20 -0
- package/dist/types/src/components/core/Requester.vue.d.ts +41 -0
- package/dist/types/src/components/data/datagrid/DataGrid.vue.d.ts +212 -5
- package/dist/types/src/components/data/datagrid/useColumnSettings.d.ts +14 -0
- package/dist/types/src/components/data/editable-grid/EditableGrid.vue.d.ts +586 -0
- package/dist/types/src/components/data/viewer/Viewer.vue.d.ts +187 -0
- package/dist/types/src/components/form/FormItem.vue.d.ts +62 -0
- package/dist/types/src/components/form/SearchItem.vue.d.ts +62 -0
- package/dist/types/src/components/{containers → form}/SearchPanel.vue.d.ts +17 -2
- package/dist/types/src/components/form/data-form/DataForm.vue.d.ts +6 -6
- package/dist/types/src/components/index.d.ts +10 -6
- package/dist/types/src/components/inputs/AutoComplete.vue.d.ts +12 -3
- package/dist/types/src/components/inputs/CheckboxList.vue.d.ts +28 -3
- package/dist/types/src/components/inputs/RadioList.vue.d.ts +28 -3
- package/dist/types/src/components/inputs/Select.vue.d.ts +11 -1
- package/dist/types/src/components/inputs/Switch.vue.d.ts +2 -2
- package/dist/types/src/components/inputs/useOptionsLoader.d.ts +3 -0
- package/dist/types/src/components/layout/Station.vue.d.ts +302 -0
- package/dist/types/src/components/layout/StationMenuNode.vue.d.ts +20 -0
- package/dist/types/src/components/layout/types.d.ts +54 -0
- package/dist/types/src/components/styles/Panel.vue.d.ts +47 -5
- package/dist/types/src/components/upload/ImageUpload.vue.d.ts +9 -9
- package/dist/types/src/components/upload/Upload.vue.d.ts +1 -1
- package/dist/types/src/entries/api-button.d.ts +9 -0
- package/dist/types/src/entries/auto-complete.d.ts +9 -0
- package/dist/types/src/entries/checkbox-list.d.ts +9 -0
- package/dist/types/src/entries/components-map.d.ts +8 -0
- package/dist/types/src/entries/confirm-button.d.ts +9 -0
- package/dist/types/src/entries/data-form.d.ts +9 -0
- package/dist/types/src/entries/data-grid.d.ts +9 -0
- package/dist/types/src/entries/dialog-button.d.ts +9 -0
- package/dist/types/src/entries/drawer-button.d.ts +9 -0
- package/dist/types/src/entries/drawer.d.ts +9 -0
- package/dist/types/src/entries/editable-grid.d.ts +9 -0
- package/dist/types/src/entries/form-item.d.ts +9 -0
- package/dist/types/src/entries/iframe.d.ts +9 -0
- package/dist/types/src/entries/image-upload.d.ts +9 -0
- package/dist/types/src/entries/panel.d.ts +9 -0
- package/dist/types/src/entries/prompt-button.d.ts +9 -0
- package/dist/types/src/entries/radio-list.d.ts +9 -0
- package/dist/types/src/entries/requester.d.ts +9 -0
- package/dist/types/src/entries/route-button.d.ts +9 -0
- package/dist/types/src/entries/search-item.d.ts +9 -0
- package/dist/types/src/entries/search-panel.d.ts +9 -0
- package/dist/types/src/entries/select.d.ts +9 -0
- package/dist/types/src/entries/station.d.ts +9 -0
- package/dist/types/src/entries/switch.d.ts +9 -0
- package/dist/types/src/entries/tips-button.d.ts +9 -0
- package/dist/types/src/entries/tips.d.ts +9 -0
- package/dist/types/src/entries/upload.d.ts +9 -0
- package/dist/types/src/entries/viewer.d.ts +9 -0
- package/dist/types/src/index.d.ts +2 -1
- package/dist/types/src/lib/composables/useConfig.d.ts +1 -1
- package/dist/types/src/lib/composables/useDataGrid.d.ts +15 -0
- package/dist/types/src/lib/core/http.d.ts +21 -4
- package/dist/types/src/lib/core/station-linkage.d.ts +41 -0
- package/dist/types/src/types/config.d.ts +21 -4
- package/dist/types/vite.config.d.ts +6 -1
- package/dist/upload/index.mjs +7 -0
- package/dist/upload/index.mjs.map +1 -0
- package/dist/viewer/index.mjs +7 -0
- package/dist/viewer/index.mjs.map +1 -0
- package/dist/viewer/style.css +1 -0
- package/package.json +199 -68
- package/dist/types/src/components/containers/Dialog.vue.d.ts +0 -112
- package/dist/types/src/components/data/editable-table/EditableTable.vue.d.ts +0 -306
- package/dist/types/src/components/utils/Viewer.vue.d.ts +0 -131
|
@@ -0,0 +1,125 @@
|
|
|
1
|
+
import { defineComponent as C, ref as c, resolveComponent as p, openBlock as n, createElementBlock as P, Fragment as V, createBlock as d, withCtx as o, createVNode as $, mergeProps as y, renderSlot as l, createTextVNode as g, toDisplayString as b, createSlots as w, normalizeProps as B, guardReactiveProps as D, createCommentVNode as O, nextTick as N } from "vue";
|
|
2
|
+
import { W as R } from "./Drawer-ucXKUecL.mjs";
|
|
3
|
+
import { t as T, h as W, f as j } from "./props-DAytpx7D.mjs";
|
|
4
|
+
const U = /* @__PURE__ */ C({
|
|
5
|
+
name: "WdDrawerButton",
|
|
6
|
+
inheritAttrs: !1,
|
|
7
|
+
__name: "DrawerButton",
|
|
8
|
+
props: {
|
|
9
|
+
...j,
|
|
10
|
+
...W,
|
|
11
|
+
...T,
|
|
12
|
+
/** 按钮文案(也可用 #button 插槽;el-button 原生 text 走 $attrs 透传) */
|
|
13
|
+
label: { type: String, default: "" },
|
|
14
|
+
/**
|
|
15
|
+
* 按钮尺寸(el-button size)。
|
|
16
|
+
* 注意:DrawerButton 的 size 被「弹层尺寸」占用,按钮尺寸请用 buttonSize,否则两属性冲突。
|
|
17
|
+
*/
|
|
18
|
+
buttonSize: {
|
|
19
|
+
type: String,
|
|
20
|
+
default: ""
|
|
21
|
+
},
|
|
22
|
+
/** 弹出层形式:drawer 抽屉 / dialog 对话框 */
|
|
23
|
+
mode: { type: String, default: "drawer" },
|
|
24
|
+
/** 弹出层标题 */
|
|
25
|
+
title: { type: String, default: "" },
|
|
26
|
+
/** iframe 地址(设置后弹层内以 iframe 加载,否则渲染默认插槽) */
|
|
27
|
+
url: { type: String, default: "" },
|
|
28
|
+
/** 传给内部表单/iframe 的数据 */
|
|
29
|
+
data: { type: Object, default: () => ({}) },
|
|
30
|
+
/** 弹出层尺寸(抽屉宽度/高度,对话框宽度) */
|
|
31
|
+
size: { type: [String, Number], default: "50%" },
|
|
32
|
+
/** 抽屉弹出方向(仅 mode=drawer 生效) */
|
|
33
|
+
direction: { type: String, default: "rtl" },
|
|
34
|
+
/** 每次打开弹层时重新加载 iframe 内容(url 模式生效) */
|
|
35
|
+
reloadOnOpen: { type: Boolean, default: !1 }
|
|
36
|
+
},
|
|
37
|
+
emits: ["open", "close", "confirm"],
|
|
38
|
+
setup(t, { emit: S }) {
|
|
39
|
+
const r = S, s = c(!1), a = c(!1);
|
|
40
|
+
async function f() {
|
|
41
|
+
s.value = !0, await N(), a.value = !0, r("open");
|
|
42
|
+
}
|
|
43
|
+
function z() {
|
|
44
|
+
a.value = !1;
|
|
45
|
+
}
|
|
46
|
+
function v() {
|
|
47
|
+
r("close");
|
|
48
|
+
}
|
|
49
|
+
function h(e) {
|
|
50
|
+
r("confirm", e);
|
|
51
|
+
}
|
|
52
|
+
return (e, u) => {
|
|
53
|
+
const m = p("el-button"), k = p("el-tooltip");
|
|
54
|
+
return n(), P(V, null, [
|
|
55
|
+
e.tips ? (n(), d(k, {
|
|
56
|
+
key: 0,
|
|
57
|
+
content: e.tips,
|
|
58
|
+
effect: e.tipsType,
|
|
59
|
+
placement: e.placement
|
|
60
|
+
}, {
|
|
61
|
+
default: o(() => [
|
|
62
|
+
$(m, y(e.$attrs, {
|
|
63
|
+
size: t.buttonSize || void 0,
|
|
64
|
+
onClick: f
|
|
65
|
+
}), {
|
|
66
|
+
default: o(() => [
|
|
67
|
+
l(e.$slots, "button", {}, () => [
|
|
68
|
+
g(b(t.label), 1)
|
|
69
|
+
])
|
|
70
|
+
]),
|
|
71
|
+
_: 3
|
|
72
|
+
}, 16, ["size"])
|
|
73
|
+
]),
|
|
74
|
+
_: 3
|
|
75
|
+
}, 8, ["content", "effect", "placement"])) : (n(), d(m, y({ key: 1 }, e.$attrs, {
|
|
76
|
+
size: t.buttonSize || void 0,
|
|
77
|
+
onClick: f
|
|
78
|
+
}), {
|
|
79
|
+
default: o(() => [
|
|
80
|
+
l(e.$slots, "button", {}, () => [
|
|
81
|
+
g(b(t.label), 1)
|
|
82
|
+
])
|
|
83
|
+
]),
|
|
84
|
+
_: 3
|
|
85
|
+
}, 16, ["size"])),
|
|
86
|
+
s.value ? (n(), d(R, {
|
|
87
|
+
key: 2,
|
|
88
|
+
modelValue: a.value,
|
|
89
|
+
"onUpdate:modelValue": u[0] || (u[0] = (i) => a.value = i),
|
|
90
|
+
mode: t.mode,
|
|
91
|
+
title: t.title,
|
|
92
|
+
size: t.size,
|
|
93
|
+
direction: t.direction,
|
|
94
|
+
url: t.url,
|
|
95
|
+
data: t.data,
|
|
96
|
+
filter: e.filter,
|
|
97
|
+
"head-refresh-datagrid": e.headRefreshDatagrid,
|
|
98
|
+
"reload-on-open": t.reloadOnOpen,
|
|
99
|
+
onClose: v,
|
|
100
|
+
onConfirm: h
|
|
101
|
+
}, w({
|
|
102
|
+
default: o(() => [
|
|
103
|
+
l(e.$slots, "default", {
|
|
104
|
+
data: t.data,
|
|
105
|
+
close: z
|
|
106
|
+
})
|
|
107
|
+
]),
|
|
108
|
+
_: 2
|
|
109
|
+
}, [
|
|
110
|
+
e.$slots.footer ? {
|
|
111
|
+
name: "footer",
|
|
112
|
+
fn: o((i) => [
|
|
113
|
+
l(e.$slots, "footer", B(D(i)))
|
|
114
|
+
]),
|
|
115
|
+
key: "0"
|
|
116
|
+
} : void 0
|
|
117
|
+
]), 1032, ["modelValue", "mode", "title", "size", "direction", "url", "data", "filter", "head-refresh-datagrid", "reload-on-open"])) : O("", !0)
|
|
118
|
+
], 64);
|
|
119
|
+
};
|
|
120
|
+
}
|
|
121
|
+
});
|
|
122
|
+
export {
|
|
123
|
+
U as _
|
|
124
|
+
};
|
|
125
|
+
//# sourceMappingURL=DrawerButton.vue_vue_type_script_setup_true_lang-DUda4p7_.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"DrawerButton.vue_vue_type_script_setup_true_lang-DUda4p7_.mjs","sources":["../../src/components/buttons/DrawerButton.vue"],"sourcesContent":["<template>\r\n <el-tooltip\r\n v-if=\"tips\"\r\n :content=\"tips\"\r\n :effect=\"tipsType\"\r\n :placement=\"placement\"\r\n >\r\n <el-button v-bind=\"$attrs\" :size=\"buttonSize || undefined\" @click=\"openPanel\">\r\n <slot name=\"button\">{{ label }}</slot>\r\n </el-button>\r\n </el-tooltip>\r\n <el-button v-else v-bind=\"$attrs\" :size=\"buttonSize || undefined\" @click=\"openPanel\">\r\n <slot name=\"button\">{{ label }}</slot>\r\n </el-button>\r\n\r\n <wd-drawer\r\n v-if=\"rendered\"\r\n v-model=\"panelVisible\"\r\n :mode=\"mode\"\r\n :title=\"title\"\r\n :size=\"size\"\r\n :direction=\"direction\"\r\n :url=\"url\"\r\n :data=\"data\"\r\n :filter=\"filter\"\r\n :head-refresh-datagrid=\"headRefreshDatagrid\"\r\n :reload-on-open=\"reloadOnOpen\"\r\n @close=\"onClose\"\r\n @confirm=\"onConfirm\"\r\n >\r\n <slot :data=\"data\" :close=\"closePanel\" />\r\n <template v-if=\"$slots.footer\" #footer=\"footerProps\">\r\n <slot name=\"footer\" v-bind=\"footerProps\" />\r\n </template>\r\n </wd-drawer>\r\n</template>\r\n\r\n<script setup lang=\"ts\">\r\nimport { ref, nextTick, type PropType } from 'vue'\r\nimport WdDrawer from '../containers/Drawer.vue'\r\nimport { filterProp, headRefreshDatagridProp, tipsProp } from '../common/props'\r\n\r\ndefineOptions({ name: 'WdDrawerButton', inheritAttrs: false })\r\n\r\ndefineProps({\r\n ...filterProp,\r\n ...headRefreshDatagridProp,\r\n ...tipsProp,\r\n /** 按钮文案(也可用 #button 插槽;el-button 原生 text 走 $attrs 透传) */\r\n label: { type: String, default: '' },\r\n /**\r\n * 按钮尺寸(el-button size)。\r\n * 注意:DrawerButton 的 size 被「弹层尺寸」占用,按钮尺寸请用 buttonSize,否则两属性冲突。\r\n */\r\n buttonSize: {\r\n type: String as PropType<'large' | 'default' | 'small' | ''>,\r\n default: ''\r\n },\r\n /** 弹出层形式:drawer 抽屉 / dialog 对话框 */\r\n mode: { type: String as PropType<'drawer' | 'dialog'>, default: 'drawer' },\r\n /** 弹出层标题 */\r\n title: { type: String, default: '' },\r\n /** iframe 地址(设置后弹层内以 iframe 加载,否则渲染默认插槽) */\r\n url: { type: String, default: '' },\r\n /** 传给内部表单/iframe 的数据 */\r\n data: { type: Object as PropType<Record<string, any>>, default: () => ({}) },\r\n /** 弹出层尺寸(抽屉宽度/高度,对话框宽度) */\r\n size: { type: [String, Number], default: '50%' },\r\n /** 抽屉弹出方向(仅 mode=drawer 生效) */\r\n direction: { type: String as PropType<'rtl' | 'ltr' | 'ttb' | 'btt'>, default: 'rtl' },\r\n /** 每次打开弹层时重新加载 iframe 内容(url 模式生效) */\r\n reloadOnOpen: { type: Boolean, default: false }\r\n})\r\n\r\nconst emit = defineEmits(['open', 'close', 'confirm'])\r\n\r\n/** 内容懒挂载:首次打开才渲染弹层内容,避免内部 DataForm 提前请求 */\r\nconst rendered = ref(false)\r\nconst panelVisible = ref(false)\r\n\r\nasync function openPanel() {\r\n rendered.value = true\r\n await nextTick()\r\n panelVisible.value = true\r\n emit('open')\r\n}\r\n\r\nfunction closePanel() {\r\n panelVisible.value = false\r\n}\r\n\r\nfunction onClose() {\r\n emit('close')\r\n}\r\n\r\nfunction onConfirm(payload: any) {\r\n emit('confirm', payload)\r\n}\r\n</script>\r\n"],"names":["emit","__emit","rendered","ref","panelVisible","openPanel","nextTick","closePanel","onClose","onConfirm","payload","tips","_createBlock","_component_el_tooltip","tipsType","placement","_createVNode","_component_el_button","_mergeProps","_ctx","__props","_renderSlot","$attrs","WdDrawer","$event","filter","headRefreshDatagrid","$slots","_withCtx","footerProps"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AA0EA,UAAMA,IAAOC,GAGPC,IAAWC,EAAI,EAAK,GACpBC,IAAeD,EAAI,EAAK;AAE9B,mBAAeE,IAAY;AACzB,MAAAH,EAAS,QAAQ,IACjB,MAAMI,EAAA,GACNF,EAAa,QAAQ,IACrBJ,EAAK,MAAM;AAAA,IACb;AAEA,aAASO,IAAa;AACpB,MAAAH,EAAa,QAAQ;AAAA,IACvB;AAEA,aAASI,IAAU;AACjB,MAAAR,EAAK,OAAO;AAAA,IACd;AAEA,aAASS,EAAUC,GAAc;AAC/B,MAAAV,EAAK,WAAWU,CAAO;AAAA,IACzB;;;;QA/FUC,EAAAA,aADRC,EASaC,GAAA;AAAA;UAPV,SAASF,EAAAA;AAAAA,UACT,QAAQG,EAAAA;AAAAA,UACR,WAAWC,EAAAA;AAAAA,QAAAA;qBAEZ,MAEY;AAAA,YAFZC,EAEYC,GAFZC,EAEYC,EAAA,QAFa;AAAA,cAAG,MAAMC,EAAA,cAAc;AAAA,cAAY,SAAOf;AAAA,YAAA;yBACjE,MAAsC;AAAA,gBAAtCgB,EAAsCF,wBAAtC,MAAsC;AAAA,sBAAfC,EAAA,KAAK,GAAA,CAAA;AAAA,gBAAA;;;;;;2DAGhCR,EAEYK,GAFZC,EAEY,EAAA,KAAA,EAAA,GAFcI,EAAAA,QAAM;AAAA,UAAG,MAAMF,EAAA,cAAc;AAAA,UAAY,SAAOf;AAAA,QAAA;qBACxE,MAAsC;AAAA,YAAtCgB,EAAsCF,wBAAtC,MAAsC;AAAA,kBAAfC,EAAA,KAAK,GAAA,CAAA;AAAA,YAAA;;;;QAItBlB,EAAA,cADRU,EAmBYW,GAAA;AAAA;sBAjBDnB,EAAA;AAAA,wDAAAA,EAAY,QAAAoB;AAAA,UACpB,MAAMJ,EAAA;AAAA,UACN,OAAOA,EAAA;AAAA,UACP,MAAMA,EAAA;AAAA,UACN,WAAWA,EAAA;AAAA,UACX,KAAKA,EAAA;AAAA,UACL,MAAMA,EAAA;AAAA,UACN,QAAQK,EAAAA;AAAAA,UACR,yBAAuBC,EAAAA;AAAAA,UACvB,kBAAgBN,EAAA;AAAA,UAChB,SAAAZ;AAAA,UACA,WAAAC;AAAA,QAAA;qBAED,MAAyC;AAAA,YAAzCY,EAAyCF,EAAA,QAAA,WAAA;AAAA,cAAlC,MAAMC,EAAA;AAAA,cAAO,OAAOb;AAAA,YAAA;;;;UACXoB,EAAAA,OAAO;kBAAS;AAAA,YAC9B,IAAAC,EAAA,CADsCC,MAAW;AAAA,cACjDR,EAA2CF,wBAAfU,CAAW,CAAA,CAAA;AAAA,YAAA;;;;;;;;"}
|