@wfrog/vc-ui 1.7.0 → 1.9.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/dist/es/components/drawer/drawer.d.ts +7 -0
- package/dist/es/components/drawer/drawer.mjs +71 -23
- package/dist/es/components/drawer/drawer.vue.d.ts +9 -3
- package/dist/es/components/drawer/index.css +39 -18
- package/dist/es/components/explorer-filter/explorer-filter.mjs +2 -2
- package/dist/es/components/explorer-footer/explorer-footer.mjs +2 -2
- package/dist/es/components/explorer-form/explorer-form.mjs +2 -2
- package/dist/es/components/explorer-list/explorer-list.mjs +2 -2
- package/dist/es/components/{explorer-dialog-form/explorer-dialog-form.d.ts → explorer-modal-form/explorer-modal-form.d.ts} +5 -4
- package/dist/es/components/{explorer-dialog-form/explorer-dialog-form.mjs → explorer-modal-form/explorer-modal-form.mjs} +24 -20
- package/dist/es/components/{explorer-dialog-form/explorer-dialog-form.vue.d.ts → explorer-modal-form/explorer-modal-form.vue.d.ts} +6 -6
- package/dist/es/components/explorer-modal-form/index.css +5 -0
- package/dist/es/components/{explorer-dialog-form → explorer-modal-form}/index.d.ts +1 -1
- package/dist/es/components/{explorer-dialog-form → explorer-modal-form}/index.mjs +1 -1
- package/dist/es/components/explorer-panel/explorer-panel.mjs +3 -3
- package/dist/es/components/explorer-panel/index.css +6 -3
- package/dist/es/components/explorer-query/explorer-query.mjs +3 -3
- package/dist/es/components/explorer-query/index.css +2 -2
- package/dist/es/components/explorer-tools/explorer-tools.mjs +6 -6
- package/dist/es/components/explorer-tools/index.css +8 -8
- package/dist/es/components/transfer/index.css +38 -0
- package/dist/es/components/transfer/index.d.ts +4 -0
- package/dist/es/components/transfer/index.mjs +6 -0
- package/dist/es/components/transfer/transfer.d.ts +12 -0
- package/dist/es/components/transfer/transfer.mjs +122 -0
- package/dist/es/components/transfer/transfer.vue.d.ts +12 -0
- package/dist/es/components/transfer-panel/components/transfer-child-panel.d.ts +19 -0
- package/dist/es/components/transfer-panel/components/transfer-child-panel.vue.d.ts +31 -0
- package/dist/es/components/transfer-panel/index.css +100 -0
- package/dist/es/components/transfer-panel/index.d.ts +4 -0
- package/dist/es/components/transfer-panel/index.mjs +6 -0
- package/dist/es/components/transfer-panel/transfer-panel.d.ts +13 -0
- package/dist/es/components/transfer-panel/transfer-panel.mjs +289 -0
- package/dist/es/components/transfer-panel/transfer-panel.vue.d.ts +14 -0
- package/dist/es/components/tree-picker/index.css +2 -2
- package/dist/es/components/tree-picker/tree-picker.mjs +4 -4
- package/dist/es/components/upload-file/upload-file.mjs +2 -2
- package/dist/es/index.d.ts +3 -1
- package/dist/es/index.mjs +14 -10
- package/dist/global.d.ts +3 -1
- package/dist/index.css +200 -39
- package/package.json +1 -1
- package/dist/es/components/explorer-dialog-form/index.css +0 -6
|
@@ -4,4 +4,11 @@ export interface IDrawerProps {
|
|
|
4
4
|
lazy?: boolean;
|
|
5
5
|
showDefaultFooter?: boolean;
|
|
6
6
|
boxPadding?: boolean;
|
|
7
|
+
fullscreen?: boolean;
|
|
8
|
+
showFullscreen?: boolean;
|
|
9
|
+
size?: number | string;
|
|
10
|
+
}
|
|
11
|
+
export interface IDrawerEmits {
|
|
12
|
+
(e: 'update:modelValue', value: boolean): void;
|
|
13
|
+
(e: 'closed'): void;
|
|
7
14
|
}
|
|
@@ -2,10 +2,11 @@ import './index.css'
|
|
|
2
2
|
import { b as buildProps, u as useNamespace } from '../../chunk/By7FMB3I.mjs';
|
|
3
3
|
import { d as dialogEmits, a as dialogProps, u as useDialog, E as ElOverlay } from '../../chunk/CFYABm3t.mjs';
|
|
4
4
|
import { E as ElScrollbar } from '../../chunk/Dh_zpmSz.mjs';
|
|
5
|
+
import { E as ElButton } from '../../chunk/CSZw6Ko2.mjs';
|
|
5
6
|
import { computed, ref, watch, onBeforeUnmount, defineComponent, useSlots, createBlock, openBlock, unref, withCtx, createVNode, Transition, withDirectives, createElementVNode, mergeProps, withModifiers, createElementBlock, createCommentVNode, normalizeClass, renderSlot, toDisplayString, normalizeStyle, vShow, useCssVars, isRef, createTextVNode } from 'vue';
|
|
7
|
+
import { Close, CopyDocument, FullScreen } from '@element-plus/icons-vue';
|
|
6
8
|
import { C as Component$1 } from '../button/button.mjs';
|
|
7
|
-
import { useWindowSize, clamp, useEventListener, useVModel } from '@vueuse/core';
|
|
8
|
-
import { Close } from '@element-plus/icons-vue';
|
|
9
|
+
import { useWindowSize, clamp, useEventListener, useVModel, useToggle } from '@vueuse/core';
|
|
9
10
|
import { b as ElTeleport, d as ElFocusTrap } from '../../chunk/D1Ki7NcP.mjs';
|
|
10
11
|
import { E as ElIcon } from '../../chunk/C6xZotC7.mjs';
|
|
11
12
|
import { a as addUnit } from '../../chunk/UUVoNfr4.mjs';
|
|
@@ -351,10 +352,7 @@ var Drawer = /* @__PURE__ */ _export_sfc(_sfc_main$1, [["__file", "/home/runner/
|
|
|
351
352
|
|
|
352
353
|
const ElDrawer = withInstall(Drawer);
|
|
353
354
|
|
|
354
|
-
const _hoisted_1 =
|
|
355
|
-
key: 0,
|
|
356
|
-
class: "drawer-footer"
|
|
357
|
-
};
|
|
355
|
+
const _hoisted_1 = ["id"];
|
|
358
356
|
const _sfc_main = /* @__PURE__ */ defineComponent({
|
|
359
357
|
__name: "drawer",
|
|
360
358
|
props: {
|
|
@@ -362,19 +360,27 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
|
|
|
362
360
|
title: { default: "对话框" },
|
|
363
361
|
lazy: { type: Boolean, default: true },
|
|
364
362
|
showDefaultFooter: { type: Boolean, default: false },
|
|
365
|
-
boxPadding: { type: Boolean, default: true }
|
|
363
|
+
boxPadding: { type: Boolean, default: true },
|
|
364
|
+
fullscreen: { type: Boolean, default: false },
|
|
365
|
+
showFullscreen: { type: Boolean, default: true },
|
|
366
|
+
size: { default: "500px" }
|
|
366
367
|
},
|
|
367
368
|
emits: ["update:modelValue", "closed"],
|
|
368
369
|
setup(__props, { emit: __emit }) {
|
|
369
370
|
useCssVars((_ctx) => ({
|
|
370
|
-
"
|
|
371
|
+
"v4dbd7b6a": _ctx.boxPadding ? "block" : "none"
|
|
371
372
|
}));
|
|
372
373
|
const props = __props;
|
|
373
374
|
const emits = __emit;
|
|
374
375
|
const drawerVisible = useVModel(props, "modelValue", emits);
|
|
375
376
|
const visible = ref(false);
|
|
377
|
+
const isFullscreen = ref(false);
|
|
378
|
+
const toggleFullscreen = useToggle(isFullscreen);
|
|
379
|
+
const Icon = computed(() => isFullscreen.value ? CopyDocument : FullScreen);
|
|
380
|
+
const mySize = computed(() => isFullscreen.value ? "100%" : props.size);
|
|
376
381
|
watch(drawerVisible, (val) => {
|
|
377
382
|
if (val) {
|
|
383
|
+
isFullscreen.value = props.fullscreen;
|
|
378
384
|
visible.value = true;
|
|
379
385
|
}
|
|
380
386
|
});
|
|
@@ -383,27 +389,57 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
|
|
|
383
389
|
emits("closed");
|
|
384
390
|
}
|
|
385
391
|
return (_ctx, _cache) => {
|
|
392
|
+
const _component_ElButton = ElButton;
|
|
386
393
|
const _component_ElScrollbar = ElScrollbar;
|
|
387
394
|
const _component_ElDrawer = ElDrawer;
|
|
388
395
|
return unref(visible) || !__props.lazy ? (openBlock(), createBlock(_component_ElDrawer, mergeProps({
|
|
389
396
|
key: 0,
|
|
390
397
|
modelValue: unref(drawerVisible),
|
|
391
|
-
"onUpdate:modelValue": _cache[
|
|
398
|
+
"onUpdate:modelValue": _cache[2] || (_cache[2] = ($event) => isRef(drawerVisible) ? drawerVisible.value = $event : null)
|
|
392
399
|
}, _ctx.$attrs, {
|
|
393
400
|
"close-on-click-modal": false,
|
|
401
|
+
"show-close": false,
|
|
394
402
|
class: _ctx.$style.main,
|
|
403
|
+
"append-to-body": "",
|
|
404
|
+
size: unref(mySize),
|
|
395
405
|
onClosed: handleClosed
|
|
396
406
|
}), {
|
|
397
|
-
header: withCtx(() => [
|
|
398
|
-
createElementVNode("div",
|
|
399
|
-
|
|
400
|
-
|
|
401
|
-
|
|
402
|
-
|
|
407
|
+
header: withCtx(({ close, titleId, titleClass }) => [
|
|
408
|
+
createElementVNode("div", {
|
|
409
|
+
class: normalizeClass(_ctx.$style.header)
|
|
410
|
+
}, [
|
|
411
|
+
createElementVNode("span", {
|
|
412
|
+
id: titleId,
|
|
413
|
+
class: normalizeClass([titleClass, _ctx.$style.title])
|
|
414
|
+
}, [
|
|
415
|
+
renderSlot(_ctx.$slots, "title", { close }, () => [
|
|
416
|
+
createTextVNode(toDisplayString(__props.title), 1)
|
|
417
|
+
])
|
|
418
|
+
], 10, _hoisted_1),
|
|
419
|
+
createElementVNode("span", {
|
|
420
|
+
class: normalizeClass(_ctx.$style.buttons)
|
|
421
|
+
}, [
|
|
422
|
+
renderSlot(_ctx.$slots, "header-action"),
|
|
423
|
+
withDirectives(createVNode(_component_ElButton, {
|
|
424
|
+
class: normalizeClass(_ctx.$style["icon-button"]),
|
|
425
|
+
icon: unref(Icon),
|
|
426
|
+
plain: "",
|
|
427
|
+
onClick: _cache[0] || (_cache[0] = () => unref(toggleFullscreen)())
|
|
428
|
+
}, null, 8, ["class", "icon"]), [
|
|
429
|
+
[vShow, __props.showFullscreen]
|
|
430
|
+
]),
|
|
431
|
+
createVNode(_component_ElButton, {
|
|
432
|
+
class: normalizeClass(_ctx.$style["icon-button"]),
|
|
433
|
+
icon: unref(Close),
|
|
434
|
+
plain: "",
|
|
435
|
+
onClick: close
|
|
436
|
+
}, null, 8, ["class", "icon", "onClick"])
|
|
437
|
+
], 2)
|
|
438
|
+
], 2)
|
|
403
439
|
]),
|
|
404
440
|
default: withCtx(() => [
|
|
405
441
|
createVNode(_component_ElScrollbar, {
|
|
406
|
-
class: "drawer-scrollbar",
|
|
442
|
+
class: "vc-drawer-scrollbar",
|
|
407
443
|
always: ""
|
|
408
444
|
}, {
|
|
409
445
|
default: withCtx(() => [
|
|
@@ -415,29 +451,41 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
|
|
|
415
451
|
]),
|
|
416
452
|
_: 3
|
|
417
453
|
}),
|
|
418
|
-
__props.showDefaultFooter || _ctx.$slots.footer ? (openBlock(), createElementBlock("div",
|
|
454
|
+
__props.showDefaultFooter || _ctx.$slots.footer ? (openBlock(), createElementBlock("div", {
|
|
455
|
+
key: 0,
|
|
456
|
+
class: normalizeClass(_ctx.$style.footer)
|
|
457
|
+
}, [
|
|
419
458
|
renderSlot(_ctx.$slots, "footer", {}, () => [
|
|
420
459
|
createVNode(Component$1, {
|
|
421
|
-
onClick: _cache[
|
|
460
|
+
onClick: _cache[1] || (_cache[1] = ($event) => drawerVisible.value = false)
|
|
422
461
|
}, {
|
|
423
|
-
default: withCtx(() => [..._cache[
|
|
462
|
+
default: withCtx(() => [..._cache[3] || (_cache[3] = [
|
|
424
463
|
createTextVNode("关闭", -1)
|
|
425
464
|
])]),
|
|
426
465
|
_: 1
|
|
427
466
|
})
|
|
428
467
|
])
|
|
429
|
-
])) : createCommentVNode("", true)
|
|
468
|
+
], 2)) : createCommentVNode("", true)
|
|
430
469
|
]),
|
|
431
470
|
_: 3
|
|
432
|
-
}, 16, ["modelValue", "class"])) : createCommentVNode("", true);
|
|
471
|
+
}, 16, ["modelValue", "class", "size"])) : createCommentVNode("", true);
|
|
433
472
|
};
|
|
434
473
|
}
|
|
435
474
|
});
|
|
436
475
|
|
|
437
|
-
/* unplugin-vue-components disabled */const main = "
|
|
476
|
+
/* unplugin-vue-components disabled */const main = "_main_2r9ln_1";
|
|
477
|
+
const header = "_header_2r9ln_46";
|
|
478
|
+
const title = "_title_2r9ln_56";
|
|
479
|
+
const buttons = "_buttons_2r9ln_61";
|
|
480
|
+
const footer = "_footer_2r9ln_76";
|
|
438
481
|
const style0 = {
|
|
439
482
|
main: main,
|
|
440
|
-
|
|
483
|
+
header: header,
|
|
484
|
+
title: title,
|
|
485
|
+
buttons: buttons,
|
|
486
|
+
"icon-button": "_icon-button_2r9ln_65",
|
|
487
|
+
"body-container": "_body-container_2r9ln_72",
|
|
488
|
+
footer: footer
|
|
441
489
|
};
|
|
442
490
|
|
|
443
491
|
const cssModules = {
|
|
@@ -2,7 +2,10 @@ import { IDrawerProps } from './drawer';
|
|
|
2
2
|
declare function __VLS_template(): {
|
|
3
3
|
attrs: Partial<{}>;
|
|
4
4
|
slots: {
|
|
5
|
-
|
|
5
|
+
title?(_: {
|
|
6
|
+
close: () => void;
|
|
7
|
+
}): any;
|
|
8
|
+
'header-action'?(_: {}): any;
|
|
6
9
|
default?(_: {}): any;
|
|
7
10
|
footer?(_: {}): any;
|
|
8
11
|
};
|
|
@@ -11,15 +14,18 @@ declare function __VLS_template(): {
|
|
|
11
14
|
};
|
|
12
15
|
type __VLS_TemplateResult = ReturnType<typeof __VLS_template>;
|
|
13
16
|
declare const __VLS_component: import('vue').DefineComponent<IDrawerProps, {}, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {} & {
|
|
14
|
-
"update:modelValue": (
|
|
17
|
+
"update:modelValue": (value: boolean) => any;
|
|
15
18
|
closed: () => any;
|
|
16
19
|
}, string, import('vue').PublicProps, Readonly<IDrawerProps> & Readonly<{
|
|
17
|
-
"onUpdate:modelValue"?: ((
|
|
20
|
+
"onUpdate:modelValue"?: ((value: boolean) => any) | undefined;
|
|
18
21
|
onClosed?: (() => any) | undefined;
|
|
19
22
|
}>, {
|
|
23
|
+
size: number | string;
|
|
20
24
|
title: string;
|
|
25
|
+
showFullscreen: boolean;
|
|
21
26
|
showDefaultFooter: boolean;
|
|
22
27
|
lazy: boolean;
|
|
28
|
+
fullscreen: boolean;
|
|
23
29
|
boxPadding: boolean;
|
|
24
30
|
}, {}, {}, {}, string, import('vue').ComponentProvideOptions, false, {}, any>;
|
|
25
31
|
declare const _default: __VLS_WithTemplateSlots<typeof __VLS_component, __VLS_TemplateResult["slots"]>;
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
/* source: src/components/drawer/drawer.vue */
|
|
2
|
-
.el-overlay.is-drawer{overflow:hidden}.el-drawer{--el-drawer-bg-color:var(--el-dialog-bg-color,var(--el-bg-color));--el-drawer-padding-primary:var(--el-dialog-padding-primary,20px);--el-drawer-dragger-size:8px;background-color:var(--el-drawer-bg-color);box-shadow:var(--el-box-shadow-dark);box-sizing:border-box;display:flex;flex-direction:column;position:absolute;transition:all var(--el-transition-duration)}.el-drawer .btt,.el-drawer .ltr,.el-drawer .rtl,.el-drawer .ttb{transform:translate(0)}.el-drawer__sr-focus:focus{outline:none!important}.el-drawer__header{align-items:center;color:var(--el-text-color-primary);display:flex;margin-bottom:32px;overflow:hidden;padding:var(--el-drawer-padding-primary);padding-bottom:0}.el-drawer__header>:first-child{flex:1}.el-drawer__title{flex:1;font-size:16px;line-height:inherit;margin:0}.el-drawer__footer{overflow:hidden;padding:var(--el-drawer-padding-primary);padding-top:10px;text-align:right}.el-drawer__close-btn{background-color:transparent;border:none;color:inherit;cursor:pointer;display:inline-flex;font-size:var(--el-font-size-extra-large);outline:none}.el-drawer__close-btn:focus i,.el-drawer__close-btn:hover i{color:var(--el-color-primary)}.el-drawer__body{flex:1;overflow:auto;padding:var(--el-drawer-padding-primary)}.el-drawer__body>*{box-sizing:border-box}.el-drawer.is-dragging{transition:none}.el-drawer__dragger{-webkit-user-select:none;-moz-user-select:none;user-select:none}.el-drawer__dragger,.el-drawer__dragger:before{background-color:transparent;position:absolute;transition:all .2s}.el-drawer__dragger:before{content:""}.el-drawer__dragger:hover:before{background-color:var(--el-color-primary)}.el-drawer.ltr,.el-drawer.rtl{bottom:0;height:100%;top:0}.el-drawer.ltr>.el-drawer__dragger,.el-drawer.rtl>.el-drawer__dragger{bottom:0;cursor:ew-resize;height:100%;top:0;width:var(--el-drawer-dragger-size)}.el-drawer.ltr>.el-drawer__dragger:before,.el-drawer.rtl>.el-drawer__dragger:before{bottom:0;top:0;width:3px}.el-drawer.btt,.el-drawer.ttb{left:0;right:0;width:100%}.el-drawer.btt>.el-drawer__dragger,.el-drawer.ttb>.el-drawer__dragger{cursor:ns-resize;height:var(--el-drawer-dragger-size);left:0;right:0;width:100%}.el-drawer.btt>.el-drawer__dragger:before,.el-drawer.ttb>.el-drawer__dragger:before{height:3px;left:0;right:0}.el-drawer.ltr{left:0}.el-drawer.ltr>.el-drawer__dragger{right:0}.el-drawer.ltr>.el-drawer__dragger:before{right:-2px}.el-drawer.rtl{right:0}.el-drawer.rtl>.el-drawer__dragger{left:0}.el-drawer.rtl>.el-drawer__dragger:before{left:-2px}.el-drawer.ttb{top:0}.el-drawer.ttb>.el-drawer__dragger{bottom:0}.el-drawer.ttb>.el-drawer__dragger:before{bottom:-2px}.el-drawer.btt{bottom:0}.el-drawer.btt>.el-drawer__dragger{top:0}.el-drawer.btt>.el-drawer__dragger:before{top:-2px}.el-modal-drawer.is-penetrable{pointer-events:none}.el-modal-drawer.is-penetrable .el-drawer{pointer-events:auto}.el-drawer-fade-enter-active,.el-drawer-fade-leave-active{transition:all var(--el-transition-duration)}.el-drawer-fade-enter-active,.el-drawer-fade-enter-from,.el-drawer-fade-enter-to,.el-drawer-fade-leave-active,.el-drawer-fade-leave-from,.el-drawer-fade-leave-to{overflow:hidden!important}.el-drawer-fade-enter-from,.el-drawer-fade-leave-to{background-color:transparent!important}.el-drawer-fade-enter-from .rtl,.el-drawer-fade-leave-to .rtl{transform:translateX(100%)}.el-drawer-fade-enter-from .ltr,.el-drawer-fade-leave-to .ltr{transform:translateX(-100%)}.el-drawer-fade-enter-from .ttb,.el-drawer-fade-leave-to .ttb{transform:translateY(-100%)}.el-drawer-fade-enter-from .btt,.el-drawer-fade-leave-to .btt{transform:translateY(100%)}.
|
|
2
|
+
.el-overlay.is-drawer{overflow:hidden}.el-drawer{--el-drawer-bg-color:var(--el-dialog-bg-color,var(--el-bg-color));--el-drawer-padding-primary:var(--el-dialog-padding-primary,20px);--el-drawer-dragger-size:8px;background-color:var(--el-drawer-bg-color);box-shadow:var(--el-box-shadow-dark);box-sizing:border-box;display:flex;flex-direction:column;position:absolute;transition:all var(--el-transition-duration)}.el-drawer .btt,.el-drawer .ltr,.el-drawer .rtl,.el-drawer .ttb{transform:translate(0)}.el-drawer__sr-focus:focus{outline:none!important}.el-drawer__header{align-items:center;color:var(--el-text-color-primary);display:flex;margin-bottom:32px;overflow:hidden;padding:var(--el-drawer-padding-primary);padding-bottom:0}.el-drawer__header>:first-child{flex:1}.el-drawer__title{flex:1;font-size:16px;line-height:inherit;margin:0}.el-drawer__footer{overflow:hidden;padding:var(--el-drawer-padding-primary);padding-top:10px;text-align:right}.el-drawer__close-btn{background-color:transparent;border:none;color:inherit;cursor:pointer;display:inline-flex;font-size:var(--el-font-size-extra-large);outline:none}.el-drawer__close-btn:focus i,.el-drawer__close-btn:hover i{color:var(--el-color-primary)}.el-drawer__body{flex:1;overflow:auto;padding:var(--el-drawer-padding-primary)}.el-drawer__body>*{box-sizing:border-box}.el-drawer.is-dragging{transition:none}.el-drawer__dragger{-webkit-user-select:none;-moz-user-select:none;user-select:none}.el-drawer__dragger,.el-drawer__dragger:before{background-color:transparent;position:absolute;transition:all .2s}.el-drawer__dragger:before{content:""}.el-drawer__dragger:hover:before{background-color:var(--el-color-primary)}.el-drawer.ltr,.el-drawer.rtl{bottom:0;height:100%;top:0}.el-drawer.ltr>.el-drawer__dragger,.el-drawer.rtl>.el-drawer__dragger{bottom:0;cursor:ew-resize;height:100%;top:0;width:var(--el-drawer-dragger-size)}.el-drawer.ltr>.el-drawer__dragger:before,.el-drawer.rtl>.el-drawer__dragger:before{bottom:0;top:0;width:3px}.el-drawer.btt,.el-drawer.ttb{left:0;right:0;width:100%}.el-drawer.btt>.el-drawer__dragger,.el-drawer.ttb>.el-drawer__dragger{cursor:ns-resize;height:var(--el-drawer-dragger-size);left:0;right:0;width:100%}.el-drawer.btt>.el-drawer__dragger:before,.el-drawer.ttb>.el-drawer__dragger:before{height:3px;left:0;right:0}.el-drawer.ltr{left:0}.el-drawer.ltr>.el-drawer__dragger{right:0}.el-drawer.ltr>.el-drawer__dragger:before{right:-2px}.el-drawer.rtl{right:0}.el-drawer.rtl>.el-drawer__dragger{left:0}.el-drawer.rtl>.el-drawer__dragger:before{left:-2px}.el-drawer.ttb{top:0}.el-drawer.ttb>.el-drawer__dragger{bottom:0}.el-drawer.ttb>.el-drawer__dragger:before{bottom:-2px}.el-drawer.btt{bottom:0}.el-drawer.btt>.el-drawer__dragger{top:0}.el-drawer.btt>.el-drawer__dragger:before{top:-2px}.el-modal-drawer.is-penetrable{pointer-events:none}.el-modal-drawer.is-penetrable .el-drawer{pointer-events:auto}.el-drawer-fade-enter-active,.el-drawer-fade-leave-active{transition:all var(--el-transition-duration)}.el-drawer-fade-enter-active,.el-drawer-fade-enter-from,.el-drawer-fade-enter-to,.el-drawer-fade-leave-active,.el-drawer-fade-leave-from,.el-drawer-fade-leave-to{overflow:hidden!important}.el-drawer-fade-enter-from,.el-drawer-fade-leave-to{background-color:transparent!important}.el-drawer-fade-enter-from .rtl,.el-drawer-fade-leave-to .rtl{transform:translateX(100%)}.el-drawer-fade-enter-from .ltr,.el-drawer-fade-leave-to .ltr{transform:translateX(-100%)}.el-drawer-fade-enter-from .ttb,.el-drawer-fade-leave-to .ttb{transform:translateY(-100%)}.el-drawer-fade-enter-from .btt,.el-drawer-fade-leave-to .btt{transform:translateY(100%)}._main_2r9ln_1 {
|
|
3
3
|
height: 100%;
|
|
4
4
|
}
|
|
5
|
-
.
|
|
5
|
+
._main_2r9ln_1 .el-drawer__header {
|
|
6
6
|
box-sizing: border-box;
|
|
7
7
|
flex: 0 0 auto;
|
|
8
8
|
padding: 8px 16px;
|
|
@@ -10,25 +10,16 @@
|
|
|
10
10
|
border-bottom: 1px solid var(--el-border-color-light);
|
|
11
11
|
font-size: var(--el-font-size-large);
|
|
12
12
|
}
|
|
13
|
-
.
|
|
13
|
+
._main_2r9ln_1 .el-drawer__body {
|
|
14
14
|
display: flex;
|
|
15
15
|
flex-direction: column;
|
|
16
16
|
padding: 0;
|
|
17
17
|
overflow: hidden;
|
|
18
18
|
}
|
|
19
|
-
.
|
|
20
|
-
display: flex;
|
|
21
|
-
flex: 0 0 auto;
|
|
22
|
-
padding: 8px 16px;
|
|
23
|
-
border-top: 1px solid var(--el-border-color-light);
|
|
24
|
-
}
|
|
25
|
-
._main_1ond6_1 .drawer-footer .el-button {
|
|
26
|
-
flex-grow: 1;
|
|
27
|
-
}
|
|
28
|
-
._main_1ond6_1 > .el-drawer__body > .el-scrollbar {
|
|
19
|
+
._main_2r9ln_1 > .el-drawer__body > .el-scrollbar {
|
|
29
20
|
position: relative;
|
|
30
21
|
}
|
|
31
|
-
.
|
|
22
|
+
._main_2r9ln_1 > .el-drawer__body > .el-scrollbar::before {
|
|
32
23
|
content: "";
|
|
33
24
|
position: absolute;
|
|
34
25
|
top: 0;
|
|
@@ -38,9 +29,9 @@
|
|
|
38
29
|
background: var(--el-bg-color);
|
|
39
30
|
height: 16px;
|
|
40
31
|
z-index: 3;
|
|
41
|
-
display: var(--
|
|
32
|
+
display: var(--v4dbd7b6a);
|
|
42
33
|
}
|
|
43
|
-
.
|
|
34
|
+
._main_2r9ln_1 > .el-drawer__body > .el-scrollbar::after {
|
|
44
35
|
content: "";
|
|
45
36
|
position: absolute;
|
|
46
37
|
bottom: 0;
|
|
@@ -50,8 +41,38 @@
|
|
|
50
41
|
background: var(--el-bg-color);
|
|
51
42
|
height: 16px;
|
|
52
43
|
z-index: 3;
|
|
53
|
-
display: var(--
|
|
44
|
+
display: var(--v4dbd7b6a);
|
|
45
|
+
}
|
|
46
|
+
._header_2r9ln_46 {
|
|
47
|
+
display: flex;
|
|
48
|
+
flex-direction: row;
|
|
49
|
+
justify-content: space-between;
|
|
50
|
+
}
|
|
51
|
+
._header_2r9ln_46 h4 {
|
|
52
|
+
padding: 0;
|
|
53
|
+
margin: 0 !important;
|
|
54
54
|
}
|
|
55
|
-
.
|
|
55
|
+
._title_2r9ln_56 {
|
|
56
|
+
display: flex;
|
|
57
|
+
align-items: center;
|
|
58
|
+
}
|
|
59
|
+
._buttons_2r9ln_61 {
|
|
60
|
+
display: flex;
|
|
61
|
+
column-gap: 8px;
|
|
62
|
+
}
|
|
63
|
+
._buttons_2r9ln_61 button._icon-button_2r9ln_65 {
|
|
64
|
+
padding: 8px;
|
|
65
|
+
font-size: 1.2em;
|
|
66
|
+
border: 0;
|
|
67
|
+
margin-left: 0;
|
|
68
|
+
}
|
|
69
|
+
._body-container_2r9ln_72 {
|
|
56
70
|
padding: 16px;
|
|
71
|
+
}
|
|
72
|
+
._footer_2r9ln_76 {
|
|
73
|
+
display: flex;
|
|
74
|
+
flex: 0 0 auto;
|
|
75
|
+
padding: 8px 16px;
|
|
76
|
+
border-top: 1px solid var(--el-border-color-light);
|
|
77
|
+
justify-content: flex-end;
|
|
57
78
|
}
|
|
@@ -73,9 +73,9 @@ const cssModules = {
|
|
|
73
73
|
};
|
|
74
74
|
const Component = /* @__PURE__ */ _export_sfc(_sfc_main, [["__cssModules", cssModules]]);
|
|
75
75
|
|
|
76
|
-
const
|
|
76
|
+
const __vite_glob_0_22 = /*#__PURE__*/Object.freeze(/*#__PURE__*/Object.defineProperty({
|
|
77
77
|
__proto__: null,
|
|
78
78
|
default: Component
|
|
79
79
|
}, Symbol.toStringTag, { value: 'Module' }));
|
|
80
80
|
|
|
81
|
-
export { Component as C,
|
|
81
|
+
export { Component as C, __vite_glob_0_22 as _ };
|
|
@@ -97,9 +97,9 @@ const cssModules = {
|
|
|
97
97
|
};
|
|
98
98
|
const Component = /* @__PURE__ */ _export_sfc(_sfc_main, [["__cssModules", cssModules]]);
|
|
99
99
|
|
|
100
|
-
const
|
|
100
|
+
const __vite_glob_0_23 = /*#__PURE__*/Object.freeze(/*#__PURE__*/Object.defineProperty({
|
|
101
101
|
__proto__: null,
|
|
102
102
|
default: Component
|
|
103
103
|
}, Symbol.toStringTag, { value: 'Module' }));
|
|
104
104
|
|
|
105
|
-
export { Component as C,
|
|
105
|
+
export { Component as C, __vite_glob_0_23 as _ };
|
|
@@ -152,9 +152,9 @@ const cssModules = {
|
|
|
152
152
|
};
|
|
153
153
|
const Component = /* @__PURE__ */ _export_sfc(_sfc_main, [["__cssModules", cssModules]]);
|
|
154
154
|
|
|
155
|
-
const
|
|
155
|
+
const __vite_glob_0_24 = /*#__PURE__*/Object.freeze(/*#__PURE__*/Object.defineProperty({
|
|
156
156
|
__proto__: null,
|
|
157
157
|
default: Component
|
|
158
158
|
}, Symbol.toStringTag, { value: 'Module' }));
|
|
159
159
|
|
|
160
|
-
export { Component as C,
|
|
160
|
+
export { Component as C, __vite_glob_0_24 as _ };
|
|
@@ -158,9 +158,9 @@ const cssModules = {
|
|
|
158
158
|
};
|
|
159
159
|
const Component = /* @__PURE__ */ _export_sfc(_sfc_main, [["__cssModules", cssModules]]);
|
|
160
160
|
|
|
161
|
-
const
|
|
161
|
+
const __vite_glob_0_25 = /*#__PURE__*/Object.freeze(/*#__PURE__*/Object.defineProperty({
|
|
162
162
|
__proto__: null,
|
|
163
163
|
default: Component
|
|
164
164
|
}, Symbol.toStringTag, { value: 'Module' }));
|
|
165
165
|
|
|
166
|
-
export { Component as C,
|
|
166
|
+
export { Component as C, __vite_glob_0_25 as _ };
|
|
@@ -1,9 +1,10 @@
|
|
|
1
1
|
import { FormProps } from 'element-plus';
|
|
2
2
|
import { Reactive } from 'vue';
|
|
3
|
-
export interface
|
|
3
|
+
export interface IExplorerModalFormProps {
|
|
4
|
+
modelValue: boolean;
|
|
5
|
+
type: 'dialog' | 'drawer';
|
|
4
6
|
title?: string;
|
|
5
7
|
icon?: string;
|
|
6
|
-
visible: boolean;
|
|
7
8
|
disabled?: boolean;
|
|
8
9
|
editable?: boolean;
|
|
9
10
|
editing?: boolean;
|
|
@@ -15,8 +16,8 @@ export interface IExplorerDialogFormProps {
|
|
|
15
16
|
formProps?: Partial<FormProps>;
|
|
16
17
|
labelPosition?: FormProps['labelPosition'];
|
|
17
18
|
}
|
|
18
|
-
export interface
|
|
19
|
-
(e: 'update:
|
|
19
|
+
export interface IExplorerModalFormEmits {
|
|
20
|
+
(e: 'update:modelValue', value: boolean): void;
|
|
20
21
|
(e: 'cancel'): void;
|
|
21
22
|
(e: 'edit'): void;
|
|
22
23
|
(e: 'save', data: Record<string, any>): void;
|
|
@@ -2,19 +2,21 @@ import './index.css'
|
|
|
2
2
|
import '../../chunk/By7FMB3I.mjs';
|
|
3
3
|
import { v as vLoading } from '../../chunk/CaA5lDme.mjs';
|
|
4
4
|
import { E as ElForm } from '../../chunk/Cb0n0U19.mjs';
|
|
5
|
-
import { defineComponent, useTemplateRef, ref, watch, onUnmounted, createBlock, openBlock,
|
|
6
|
-
import { C as Component$
|
|
5
|
+
import { defineComponent, useTemplateRef, ref, computed, watch, onUnmounted, createBlock, openBlock, resolveDynamicComponent, unref, mergeProps, isRef, withCtx, withDirectives, renderSlot, createCommentVNode, createTextVNode, createElementVNode, normalizeClass, toDisplayString } from 'vue';
|
|
6
|
+
import { C as Component$3 } from '../button/button.mjs';
|
|
7
7
|
import { C as Component$1 } from '../dialog/dialog.mjs';
|
|
8
|
-
import { C as Component$
|
|
8
|
+
import { C as Component$2 } from '../drawer/drawer.mjs';
|
|
9
|
+
import { C as Component$4 } from '../iconify-icon/iconify-icon.mjs';
|
|
9
10
|
import { useVModel } from '@vueuse/core';
|
|
10
11
|
import { _ as _export_sfc } from '../../chunk/pcqpp-6-.mjs';
|
|
11
12
|
|
|
12
13
|
const _sfc_main = /* @__PURE__ */ defineComponent({
|
|
13
|
-
__name: "explorer-
|
|
14
|
+
__name: "explorer-modal-form",
|
|
14
15
|
props: {
|
|
16
|
+
modelValue: { type: Boolean },
|
|
17
|
+
type: {},
|
|
15
18
|
title: {},
|
|
16
19
|
icon: { default: "fluent:form-48-regular" },
|
|
17
|
-
visible: { type: Boolean },
|
|
18
20
|
disabled: { type: Boolean },
|
|
19
21
|
editable: { type: Boolean, default: true },
|
|
20
22
|
editing: { type: Boolean, default: true },
|
|
@@ -23,15 +25,17 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
|
|
|
23
25
|
formProps: {},
|
|
24
26
|
labelPosition: { default: "top" }
|
|
25
27
|
},
|
|
26
|
-
emits: ["update:
|
|
28
|
+
emits: ["update:modelValue", "cancel", "edit", "save"],
|
|
27
29
|
setup(__props, { expose: __expose, emit: __emit }) {
|
|
28
30
|
const props = __props;
|
|
29
31
|
const emits = __emit;
|
|
30
|
-
const
|
|
32
|
+
const modalVisible = useVModel(props, "modelValue", emits);
|
|
31
33
|
const formRef = useTemplateRef("formRef");
|
|
32
34
|
const isEditing = ref(false);
|
|
35
|
+
const component = computed(() => props.type === "dialog" ? Component$1 : Component$2);
|
|
36
|
+
const modalTitle = computed(() => props.title || (props.form.fields.id ? "编辑" : "新增"));
|
|
33
37
|
function handleCancel() {
|
|
34
|
-
|
|
38
|
+
modalVisible.value = false;
|
|
35
39
|
emits("cancel");
|
|
36
40
|
}
|
|
37
41
|
async function handleSave() {
|
|
@@ -45,7 +49,7 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
|
|
|
45
49
|
isEditing.value = true;
|
|
46
50
|
emits("edit");
|
|
47
51
|
}
|
|
48
|
-
const visibleWatch = watch(
|
|
52
|
+
const visibleWatch = watch(modalVisible, (val) => {
|
|
49
53
|
if (!val) {
|
|
50
54
|
return;
|
|
51
55
|
}
|
|
@@ -58,27 +62,27 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
|
|
|
58
62
|
return (_ctx, _cache) => {
|
|
59
63
|
const _component_ElForm = ElForm;
|
|
60
64
|
const _directive_loading = vLoading;
|
|
61
|
-
return openBlock(), createBlock(
|
|
62
|
-
modelValue: unref(
|
|
63
|
-
"onUpdate:modelValue": _cache[0] || (_cache[0] = ($event) => isRef(
|
|
65
|
+
return openBlock(), createBlock(resolveDynamicComponent(unref(component)), mergeProps({
|
|
66
|
+
modelValue: unref(modalVisible),
|
|
67
|
+
"onUpdate:modelValue": _cache[0] || (_cache[0] = ($event) => isRef(modalVisible) ? modalVisible.value = $event : null)
|
|
64
68
|
}, _ctx.$attrs), {
|
|
65
69
|
title: withCtx(({ close }) => [
|
|
66
70
|
createElementVNode("div", {
|
|
67
71
|
class: normalizeClass(_ctx.$style["header-container"])
|
|
68
72
|
}, [
|
|
69
|
-
__props.icon ? (openBlock(), createBlock(Component$
|
|
73
|
+
__props.icon ? (openBlock(), createBlock(Component$4, {
|
|
70
74
|
key: 0,
|
|
71
75
|
name: __props.icon,
|
|
72
76
|
class: normalizeClass(_ctx.$style.icon)
|
|
73
77
|
}, null, 8, ["name", "class"])) : createCommentVNode("", true),
|
|
74
78
|
renderSlot(_ctx.$slots, "title", { close }, () => [
|
|
75
|
-
createTextVNode(toDisplayString(
|
|
79
|
+
createTextVNode(toDisplayString(unref(modalTitle)), 1)
|
|
76
80
|
])
|
|
77
81
|
], 2)
|
|
78
82
|
]),
|
|
79
83
|
footer: withCtx(() => [
|
|
80
84
|
renderSlot(_ctx.$slots, "action"),
|
|
81
|
-
unref(isEditing) ? (openBlock(), createBlock(Component$
|
|
85
|
+
unref(isEditing) ? (openBlock(), createBlock(Component$3, {
|
|
82
86
|
key: 0,
|
|
83
87
|
loading: __props.loading,
|
|
84
88
|
icon: { name: "Close" },
|
|
@@ -89,7 +93,7 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
|
|
|
89
93
|
])]),
|
|
90
94
|
_: 1
|
|
91
95
|
}, 8, ["loading"])) : createCommentVNode("", true),
|
|
92
|
-
unref(isEditing) ? (openBlock(), createBlock(Component$
|
|
96
|
+
unref(isEditing) ? (openBlock(), createBlock(Component$3, {
|
|
93
97
|
key: 1,
|
|
94
98
|
loading: __props.loading,
|
|
95
99
|
icon: { name: "Check" },
|
|
@@ -101,7 +105,7 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
|
|
|
101
105
|
])]),
|
|
102
106
|
_: 1
|
|
103
107
|
}, 8, ["loading"])) : createCommentVNode("", true),
|
|
104
|
-
__props.editable && !unref(isEditing) ? (openBlock(), createBlock(Component$
|
|
108
|
+
__props.editable && !unref(isEditing) ? (openBlock(), createBlock(Component$3, {
|
|
105
109
|
key: 2,
|
|
106
110
|
loading: __props.loading,
|
|
107
111
|
icon: { name: "EditPen" },
|
|
@@ -139,7 +143,7 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
|
|
|
139
143
|
}
|
|
140
144
|
});
|
|
141
145
|
|
|
142
|
-
/* unplugin-vue-components disabled */const icon = "
|
|
146
|
+
/* unplugin-vue-components disabled */const icon = "_icon_ygryy_1";
|
|
143
147
|
const style0 = {
|
|
144
148
|
icon: icon
|
|
145
149
|
};
|
|
@@ -149,9 +153,9 @@ const cssModules = {
|
|
|
149
153
|
};
|
|
150
154
|
const Component = /* @__PURE__ */ _export_sfc(_sfc_main, [["__cssModules", cssModules]]);
|
|
151
155
|
|
|
152
|
-
const
|
|
156
|
+
const __vite_glob_0_26 = /*#__PURE__*/Object.freeze(/*#__PURE__*/Object.defineProperty({
|
|
153
157
|
__proto__: null,
|
|
154
158
|
default: Component
|
|
155
159
|
}, Symbol.toStringTag, { value: 'Module' }));
|
|
156
160
|
|
|
157
|
-
export { Component as C,
|
|
161
|
+
export { Component as C, __vite_glob_0_26 as _ };
|
|
@@ -1,10 +1,10 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { IExplorerModalFormProps } from './explorer-modal-form';
|
|
2
2
|
declare function __VLS_template(): {
|
|
3
3
|
attrs: Partial<{}>;
|
|
4
4
|
slots: {
|
|
5
5
|
default?(_: {}): any;
|
|
6
6
|
title?(_: {
|
|
7
|
-
close: () => void;
|
|
7
|
+
close: (() => void) | (() => void);
|
|
8
8
|
}): any;
|
|
9
9
|
action?(_: {}): any;
|
|
10
10
|
};
|
|
@@ -194,7 +194,7 @@ declare function __VLS_template(): {
|
|
|
194
194
|
rootEl: any;
|
|
195
195
|
};
|
|
196
196
|
type __VLS_TemplateResult = ReturnType<typeof __VLS_template>;
|
|
197
|
-
declare const __VLS_component: import('vue').DefineComponent<
|
|
197
|
+
declare const __VLS_component: import('vue').DefineComponent<IExplorerModalFormProps, {
|
|
198
198
|
formRef: Readonly<globalThis.ShallowRef<({
|
|
199
199
|
$: import('vue').ComponentInternalInstance;
|
|
200
200
|
$data: {};
|
|
@@ -378,12 +378,12 @@ declare const __VLS_component: import('vue').DefineComponent<IExplorerDialogForm
|
|
|
378
378
|
}) | null>>;
|
|
379
379
|
}, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {} & {
|
|
380
380
|
cancel: () => any;
|
|
381
|
-
"update:
|
|
381
|
+
"update:modelValue": (value: boolean) => any;
|
|
382
382
|
save: (data: Record<string, any>) => any;
|
|
383
383
|
edit: () => any;
|
|
384
|
-
}, string, import('vue').PublicProps, Readonly<
|
|
384
|
+
}, string, import('vue').PublicProps, Readonly<IExplorerModalFormProps> & Readonly<{
|
|
385
385
|
onCancel?: (() => any) | undefined;
|
|
386
|
-
"onUpdate:
|
|
386
|
+
"onUpdate:modelValue"?: ((value: boolean) => any) | undefined;
|
|
387
387
|
onSave?: ((data: Record<string, any>) => any) | undefined;
|
|
388
388
|
onEdit?: (() => any) | undefined;
|
|
389
389
|
}>, {
|
|
@@ -1,4 +1,4 @@
|
|
|
1
1
|
import { SFCWithInstall } from '../../utils/typescript';
|
|
2
|
-
import { default as Component } from './explorer-
|
|
2
|
+
import { default as Component } from './explorer-modal-form.vue';
|
|
3
3
|
export declare const VcExplorerDialogForm: SFCWithInstall<typeof Component>;
|
|
4
4
|
export default VcExplorerDialogForm;
|
|
@@ -15,7 +15,7 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
|
|
|
15
15
|
},
|
|
16
16
|
setup(__props) {
|
|
17
17
|
useCssVars((_ctx) => ({
|
|
18
|
-
"
|
|
18
|
+
"v661a71b4": `${_ctx.padding}px`
|
|
19
19
|
}));
|
|
20
20
|
const panelRef = useTemplateRef("panelRef");
|
|
21
21
|
const fullscreenTarget = ref();
|
|
@@ -57,8 +57,8 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
|
|
|
57
57
|
}
|
|
58
58
|
});
|
|
59
59
|
|
|
60
|
-
/* unplugin-vue-components disabled */const panel = "
|
|
61
|
-
const container = "
|
|
60
|
+
/* unplugin-vue-components disabled */const panel = "_panel_1egb6_1";
|
|
61
|
+
const container = "_container_1egb6_9";
|
|
62
62
|
const style0 = {
|
|
63
63
|
panel: panel,
|
|
64
64
|
container: container
|
|
@@ -1,12 +1,15 @@
|
|
|
1
1
|
/* source: src/components/explorer-panel/explorer-panel.vue */
|
|
2
|
-
.
|
|
2
|
+
._panel_1egb6_1 {
|
|
3
3
|
display: flex;
|
|
4
4
|
flex-direction: column;
|
|
5
5
|
}
|
|
6
|
-
.
|
|
6
|
+
._panel_1egb6_1 .vc-explorer-query + .vc-explorer-tools {
|
|
7
|
+
padding-top: 8px;
|
|
8
|
+
}
|
|
9
|
+
._container_1egb6_9 {
|
|
7
10
|
display: flex;
|
|
8
11
|
flex-direction: column;
|
|
9
|
-
padding: var(--
|
|
12
|
+
padding: var(--v661a71b4);
|
|
10
13
|
flex-grow: 1;
|
|
11
14
|
height: 100px;
|
|
12
15
|
}
|
|
@@ -53,8 +53,8 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
|
|
|
53
53
|
emits: ["search"],
|
|
54
54
|
setup(__props, { emit: __emit }) {
|
|
55
55
|
useCssVars((_ctx) => ({
|
|
56
|
-
"
|
|
57
|
-
"
|
|
56
|
+
"v4fedc6d4": `${_ctx.paddingBottom}px`,
|
|
57
|
+
"v2a8bf085": `${_ctx.height}px`
|
|
58
58
|
}));
|
|
59
59
|
const props = __props;
|
|
60
60
|
const emits = __emit;
|
|
@@ -97,7 +97,7 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
|
|
|
97
97
|
return openBlock(), createElementBlock("div", {
|
|
98
98
|
ref_key: "queryRef",
|
|
99
99
|
ref: queryRef,
|
|
100
|
-
class: normalizeClass(_ctx.$style["explorer-query"])
|
|
100
|
+
class: normalizeClass([_ctx.$style["explorer-query"], "vc-explorer-query"])
|
|
101
101
|
}, [
|
|
102
102
|
createElementVNode("div", {
|
|
103
103
|
ref_key: "formContainerRef",
|