@funcho/ui 1.1.28 → 1.1.30

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (38) hide show
  1. package/README.md +1 -0
  2. package/dist/cjs/business/DataTable/DataTable.vue.js +91 -102
  3. package/dist/cjs/business/ProForm/ProForm.vue.js +37 -2
  4. package/dist/cjs/business/VerticalLayout/VerticalLayout.vue.js +99 -0
  5. package/dist/cjs/business/VerticalLayout/VerticalLayout.vue3.js +10 -0
  6. package/dist/cjs/business/VerticalLayout/index.js +12 -0
  7. package/dist/cjs/business/index.js +2 -0
  8. package/dist/cjs/components/DatePicker/BzDatePicker.vue.js +6 -2
  9. package/dist/cjs/components/DotStatus/DotStatus.vue.js +3 -7
  10. package/dist/cjs/components/DotStatus/DotStatus.vue2.js +52 -0
  11. package/dist/cjs/index.js +8 -6
  12. package/dist/cjs/packages/ui/package.json.js +1 -1
  13. package/dist/esm/business/DataTable/DataTable.vue.mjs +94 -105
  14. package/dist/esm/business/ProForm/ProForm.vue.mjs +38 -3
  15. package/dist/esm/business/VerticalLayout/VerticalLayout.vue.mjs +95 -0
  16. package/dist/esm/business/VerticalLayout/VerticalLayout.vue3.mjs +6 -0
  17. package/dist/esm/business/VerticalLayout/index.mjs +7 -0
  18. package/dist/esm/business/index.mjs +1 -0
  19. package/dist/esm/components/DatePicker/BzDatePicker.vue.mjs +7 -3
  20. package/dist/esm/components/DotStatus/DotStatus.vue.mjs +3 -7
  21. package/dist/esm/components/DotStatus/DotStatus.vue2.mjs +48 -0
  22. package/dist/esm/index.mjs +1 -0
  23. package/dist/esm/packages/ui/package.json.mjs +1 -1
  24. package/dist/style.css +81 -6
  25. package/dist/types/business/DataTable/DataTable.vue.d.ts +0 -6
  26. package/dist/types/business/DataTable/index.d.ts +0 -3
  27. package/dist/types/business/ProForm/ProForm.types.d.ts +2 -0
  28. package/dist/types/business/ProForm/ProForm.vue.d.ts +2 -2
  29. package/dist/types/business/VerticalLayout/VerticalLayout.types.d.ts +1 -0
  30. package/dist/types/business/VerticalLayout/VerticalLayout.vue.d.ts +41 -0
  31. package/dist/types/business/index.d.ts +1 -0
  32. package/dist/types/components/DatePicker/BzDatePicker.vue.d.ts +11 -7
  33. package/dist/types/components/DatePicker/DatePickerRanger.vue.d.ts +14 -1
  34. package/dist/types/components/DatePicker/DateTimePickerRanger.vue.d.ts +14 -1
  35. package/dist/types/components/DatePicker/index.d.ts +51 -6
  36. package/dist/types/components/DotStatus/DotStatus.vue.d.ts +35 -1
  37. package/dist/types/components/DotStatus/index.d.ts +61 -3
  38. package/package.json +1 -1
package/README.md CHANGED
@@ -179,3 +179,4 @@ const open = ref(false);
179
179
  | 6 | `FcProEditFormCard` |
180
180
  | 7 | `FcProFormDialog` |
181
181
  | 8 | `FcProQueryForm` |
182
+ | 9 | `FcProVerticalLayout` |
@@ -81,7 +81,6 @@ require('../../components/CodeEditor/index.js');
81
81
  require('../../components/RichEditor/index.js');
82
82
  require('../../components/LovText/index.js');
83
83
  require('../../components/DotStatus/index.js');
84
- const core = require('@vueuse/core');
85
84
  const index_vue_vue_type_script_lang = require('../../components/VNodeRenderer/index.vue.js');
86
85
  const QueryForm_vue_vue_type_script_setup_true_lang = require('../QueryForm/QueryForm.vue.js');
87
86
  ;/* empty css */
@@ -138,19 +137,6 @@ const _sfc_main = /* @__PURE__ */ vue.defineComponent({
138
137
  };
139
138
  const queryBoxRef = vue.ref();
140
139
  const queryBoxHeight = vue.ref(0);
141
- const paginationBoxRef = vue.ref(null);
142
- const splitLineRef = vue.ref(null);
143
- const { height: splitLineHeight } = core.useElementSize(splitLineRef, void 0, {
144
- box: "border-box"
145
- });
146
- const { height: paginationBoxHeight } = core.useElementSize(paginationBoxRef, void 0, {
147
- box: "border-box"
148
- });
149
- const containerRef = vue.ref(null);
150
- const { height: containerHeight } = core.useElementSize(containerRef);
151
- const maxTableHeight = vue.computed(() => {
152
- return (props.height || containerHeight.value) - ((queryBoxHeight.value > 0 ? queryBoxHeight.value + splitLineHeight.value : 0) + paginationBoxHeight.value);
153
- });
154
140
  const pagination = vue.ref({
155
141
  currentPage: 1,
156
142
  pageSize: 20,
@@ -211,99 +197,102 @@ const _sfc_main = /* @__PURE__ */ vue.defineComponent({
211
197
  // 清空表单,回到第一页刷新
212
198
  });
213
199
  return (_ctx, _cache) => {
200
+ const _component_FcProVerticalLayout = vue.resolveComponent("FcProVerticalLayout");
214
201
  const _directive_loading = vue.resolveDirective("loading");
215
- return vue.openBlock(), vue.createElementBlock("div", {
216
- ref_key: "containerRef",
217
- ref: containerRef,
218
- class: vue.normalizeClass(vue.unref(ns).b())
202
+ return vue.openBlock(), vue.createBlock(_component_FcProVerticalLayout, {
203
+ class: vue.normalizeClass(vue.unref(ns).b()),
204
+ gap: 8
205
+ }, vue.createSlots({
206
+ body: vue.withCtx(({ height: bodyHeight }) => [
207
+ vue.withDirectives((vue.openBlock(), vue.createBlock(vue.unref(index.FcTable), vue.mergeProps(_ctx.$attrs, {
208
+ data: tableData.value,
209
+ border: "",
210
+ "max-height": bodyHeight
211
+ }), {
212
+ default: vue.withCtx(() => [
213
+ __props.hasIndex ? (vue.openBlock(), vue.createBlock(vue.unref(index$1.FcTableColumn), {
214
+ key: "index",
215
+ label: "序号",
216
+ align: "center",
217
+ fixed: "left",
218
+ type: "index",
219
+ width: 60,
220
+ index: getIndex,
221
+ "show-overflow-tooltip": false
222
+ })) : vue.createCommentVNode("", true),
223
+ (vue.openBlock(true), vue.createElementBlock(vue.Fragment, null, vue.renderList(__props.columns, (item) => {
224
+ return vue.openBlock(), vue.createBlock(vue.unref(index$1.FcTableColumn), vue.mergeProps({
225
+ key: item.prop
226
+ }, { ref_for: true }, item, {
227
+ "show-overflow-tooltip": item.showOverflowTooltip || true
228
+ }), vue.createSlots({ _: 2 }, [
229
+ item.render ? {
230
+ name: "default",
231
+ fn: vue.withCtx(({ row, $index }) => [
232
+ (vue.openBlock(), vue.createBlock(vue.resolveDynamicComponent(item.render(row, $index))))
233
+ ]),
234
+ key: "0"
235
+ } : void 0
236
+ ]), 1040, ["show-overflow-tooltip"]);
237
+ }), 128)),
238
+ props.actions && props.actions.length > 0 ? (vue.openBlock(), vue.createBlock(vue.unref(index$1.FcTableColumn), {
239
+ key: "actions",
240
+ label: "操作",
241
+ align: "right",
242
+ fixed: "right",
243
+ width: __props.actionsWidth || void 0
244
+ }, {
245
+ default: vue.withCtx(({ row, $index }) => [
246
+ vue.createVNode(index_vue_vue_type_script_lang.default, {
247
+ content: () => renderActions(props.actions, row, $index)
248
+ }, null, 8, ["content"])
249
+ ]),
250
+ _: 1
251
+ }, 8, ["width"])) : vue.createCommentVNode("", true)
252
+ ]),
253
+ _: 1
254
+ }, 16, ["data", "max-height"])), [
255
+ [_directive_loading, tableLoading.value]
256
+ ])
257
+ ]),
258
+ _: 2
219
259
  }, [
220
- vue.createVNode(QueryForm_vue_vue_type_script_setup_true_lang.default, {
221
- ref_key: "queryBoxRef",
222
- ref: queryBoxRef,
223
- fields: __props.fields,
224
- tools: __props.tools,
225
- "btn-disabled": tableLoading.value,
226
- onSearch: handleSearchClick,
227
- onReset: handleResetClick,
228
- onResize: _cache[0] || (_cache[0] = (e) => queryBoxHeight.value = e.height)
229
- }, {
230
- default: vue.withCtx(() => [
231
- !_ctx.$slots.tools ? vue.renderSlot(_ctx.$slots, "tools", { key: 0 }) : vue.createCommentVNode("", true)
232
- ]),
233
- _: 3
234
- }, 8, ["fields", "tools", "btn-disabled"]),
235
- __props.fields && __props.fields.length > 0 ? (vue.openBlock(), vue.createElementBlock("div", {
236
- key: 0,
237
- ref_key: "splitLineRef",
238
- ref: splitLineRef,
239
- class: vue.normalizeClass(vue.unref(ns).e("split-line"))
240
- }, null, 2)) : vue.createCommentVNode("", true),
241
- vue.withDirectives((vue.openBlock(), vue.createBlock(vue.unref(index.FcTable), vue.mergeProps(_ctx.$attrs, {
242
- data: tableData.value,
243
- border: "",
244
- "max-height": maxTableHeight.value
245
- }), {
246
- default: vue.withCtx(() => [
247
- __props.hasIndex ? (vue.openBlock(), vue.createBlock(vue.unref(index$1.FcTableColumn), {
248
- key: "index",
249
- label: "序号",
250
- align: "center",
251
- fixed: "left",
252
- type: "index",
253
- width: 60,
254
- index: getIndex,
255
- "show-overflow-tooltip": false
256
- })) : vue.createCommentVNode("", true),
257
- (vue.openBlock(true), vue.createElementBlock(vue.Fragment, null, vue.renderList(__props.columns, (item) => {
258
- return vue.openBlock(), vue.createBlock(vue.unref(index$1.FcTableColumn), vue.mergeProps({
259
- key: item.prop
260
- }, { ref_for: true }, item, {
261
- "show-overflow-tooltip": item.showOverflowTooltip || true
262
- }), vue.createSlots({ _: 2 }, [
263
- item.render ? {
264
- name: "default",
265
- fn: vue.withCtx(({ row, $index }) => [
266
- (vue.openBlock(), vue.createBlock(vue.resolveDynamicComponent(item.render(row, $index))))
267
- ]),
268
- key: "0"
269
- } : void 0
270
- ]), 1040, ["show-overflow-tooltip"]);
271
- }), 128)),
272
- props.actions && props.actions.length > 0 ? (vue.openBlock(), vue.createBlock(vue.unref(index$1.FcTableColumn), {
273
- key: "actions",
274
- label: "操作",
275
- align: "right",
276
- fixed: "right",
277
- width: __props.actionsWidth || void 0
260
+ __props.fields && __props.fields.length > 0 ? {
261
+ name: "header",
262
+ fn: vue.withCtx(() => [
263
+ vue.createVNode(QueryForm_vue_vue_type_script_setup_true_lang.default, {
264
+ ref_key: "queryBoxRef",
265
+ ref: queryBoxRef,
266
+ fields: __props.fields,
267
+ tools: __props.tools,
268
+ "btn-disabled": tableLoading.value,
269
+ onSearch: handleSearchClick,
270
+ onReset: handleResetClick,
271
+ onResize: _cache[0] || (_cache[0] = (e) => queryBoxHeight.value = e.height)
278
272
  }, {
279
- default: vue.withCtx(({ row, $index }) => [
280
- vue.createVNode(index_vue_vue_type_script_lang.default, {
281
- content: () => renderActions(props.actions, row, $index)
282
- }, null, 8, ["content"])
273
+ default: vue.withCtx(() => [
274
+ !_ctx.$slots.tools ? vue.renderSlot(_ctx.$slots, "tools", { key: 0 }) : vue.createCommentVNode("", true)
283
275
  ]),
284
- _: 1
285
- }, 8, ["width"])) : vue.createCommentVNode("", true)
276
+ _: 3
277
+ }, 8, ["fields", "tools", "btn-disabled"])
286
278
  ]),
287
- _: 1
288
- }, 16, ["data", "max-height"])), [
289
- [_directive_loading, tableLoading.value]
290
- ]),
291
- __props.isPagination ? (vue.openBlock(), vue.createElementBlock("div", {
292
- key: 1,
293
- ref_key: "paginationBoxRef",
294
- ref: paginationBoxRef,
295
- class: vue.normalizeClass(vue.unref(ns).e("pagination-box"))
296
- }, [
297
- vue.createVNode(vue.unref(index$2.FcPagination), {
298
- "page-size": pagination.value.pageSize,
299
- "onUpdate:pageSize": _cache[1] || (_cache[1] = ($event) => pagination.value.pageSize = $event),
300
- "current-page": pagination.value.currentPage,
301
- "onUpdate:currentPage": _cache[2] || (_cache[2] = ($event) => pagination.value.currentPage = $event),
302
- total: pagination.value.total,
303
- onChange: handlePaginationChange
304
- }, null, 8, ["page-size", "current-page", "total"])
305
- ], 2)) : vue.createCommentVNode("", true)
306
- ], 2);
279
+ key: "0"
280
+ } : void 0,
281
+ __props.isPagination ? {
282
+ name: "footer",
283
+ fn: vue.withCtx(() => [
284
+ vue.createVNode(vue.unref(index$2.FcPagination), {
285
+ "page-size": pagination.value.pageSize,
286
+ "onUpdate:pageSize": _cache[1] || (_cache[1] = ($event) => pagination.value.pageSize = $event),
287
+ "current-page": pagination.value.currentPage,
288
+ "onUpdate:currentPage": _cache[2] || (_cache[2] = ($event) => pagination.value.currentPage = $event),
289
+ total: pagination.value.total,
290
+ onChange: handlePaginationChange
291
+ }, null, 8, ["page-size", "current-page", "total"])
292
+ ]),
293
+ key: "1"
294
+ } : void 0
295
+ ]), 1032, ["class"]);
307
296
  };
308
297
  }
309
298
  });
@@ -82,8 +82,8 @@ require('../../components/RichEditor/index.js');
82
82
  require('../../components/LovText/index.js');
83
83
  require('../../components/DotStatus/index.js');
84
84
  const componentsMap = require('./componentsMap.js');
85
- const isPlainObject = require('../../node_modules/.pnpm/lodash-es@4.17.23/node_modules/lodash-es/isPlainObject.js');
86
85
  const cloneDeep = require('../../node_modules/.pnpm/lodash-es@4.17.23/node_modules/lodash-es/cloneDeep.js');
86
+ const isPlainObject = require('../../node_modules/.pnpm/lodash-es@4.17.23/node_modules/lodash-es/isPlainObject.js');
87
87
 
88
88
  const _sfc_main = /* @__PURE__ */ vue.defineComponent({
89
89
  ...{
@@ -100,7 +100,27 @@ const _sfc_main = /* @__PURE__ */ vue.defineComponent({
100
100
  },
101
101
  setup(__props, { expose: __expose }) {
102
102
  const ns = useNamespace.useNamespace("pro-form");
103
+ const props = __props;
103
104
  const formModel = vue.ref({});
105
+ const initialModelSnapshot = vue.ref({});
106
+ vue.watch(
107
+ () => props.fields,
108
+ (newFields) => {
109
+ const snapshot = {};
110
+ const newModel = { ...formModel.value };
111
+ newFields.forEach((field) => {
112
+ if (field.initialValue !== void 0) {
113
+ snapshot[field.prop] = cloneDeep.default(field.initialValue);
114
+ if (newModel[field.prop] === void 0) {
115
+ newModel[field.prop] = cloneDeep.default(field.initialValue);
116
+ }
117
+ }
118
+ });
119
+ initialModelSnapshot.value = snapshot;
120
+ formModel.value = newModel;
121
+ },
122
+ { immediate: true }
123
+ );
104
124
  const setValues = (data) => {
105
125
  if (isPlainObject.default(data)) {
106
126
  formModel.value = cloneDeep.default(data || {});
@@ -132,6 +152,18 @@ const _sfc_main = /* @__PURE__ */ vue.defineComponent({
132
152
  item.attrs.onRef(el, item);
133
153
  }
134
154
  };
155
+ const resetFields = () => {
156
+ if (!formRef.value) return;
157
+ formRef.value.resetFields();
158
+ props.fields.forEach((field) => {
159
+ const prop = field.prop;
160
+ const initialValue = initialModelSnapshot.value[prop];
161
+ const hasInitialValue = initialValue !== void 0;
162
+ if (hasInitialValue && field.clearInitialValueOnReset) {
163
+ formModel.value[prop] = void 0;
164
+ }
165
+ });
166
+ };
135
167
  __expose(
136
168
  new Proxy(
137
169
  {},
@@ -140,13 +172,16 @@ const _sfc_main = /* @__PURE__ */ vue.defineComponent({
140
172
  if (key === "setValues") {
141
173
  return setValues;
142
174
  }
175
+ if (key === "resetFields") {
176
+ return resetFields;
177
+ }
143
178
  if (key === "model") {
144
179
  return formModel.value;
145
180
  }
146
181
  return formRef.value?.[key];
147
182
  },
148
183
  has(_, key) {
149
- if (key === "setValues" || key === "model") {
184
+ if (key === "setValues" || key === "resetFields" || key === "model") {
150
185
  return true;
151
186
  }
152
187
  if (!formRef.value) return false;
@@ -0,0 +1,99 @@
1
+ 'use strict';
2
+
3
+ Object.defineProperties(exports, { __esModule: { value: true }, [Symbol.toStringTag]: { value: 'Module' } });
4
+
5
+ const vue = require('vue');
6
+ const useNamespace = require('../../hooks/use-namespace.js');
7
+ const core = require('@vueuse/core');
8
+
9
+ const _sfc_main = /* @__PURE__ */ vue.defineComponent({
10
+ ...{
11
+ name: "FcProVerticalLayout"
12
+ },
13
+ __name: "VerticalLayout",
14
+ props: {
15
+ gap: { default: 8 },
16
+ full: { type: Boolean, default: false }
17
+ },
18
+ setup(__props) {
19
+ const ns = useNamespace.useNamespace("pro-vertical-layout");
20
+ const props = __props;
21
+ const headerRef = vue.ref(null);
22
+ const bodyRef = vue.ref(null);
23
+ const footerRef = vue.ref(null);
24
+ const ghostBodyRef = vue.ref(null);
25
+ const { height: headerHeight } = core.useElementSize(headerRef);
26
+ const { height: footerHeight } = core.useElementSize(footerRef);
27
+ const { width: bodyWidth } = core.useElementSize(bodyRef);
28
+ const { height: ghostBodyHeight } = core.useElementSize(ghostBodyRef);
29
+ const layoutStyle = vue.computed(() => {
30
+ const gapValue = typeof props.gap === "number" ? `${props.gap}px` : props.gap;
31
+ return {
32
+ gap: gapValue
33
+ };
34
+ });
35
+ return (_ctx, _cache) => {
36
+ return vue.openBlock(), vue.createElementBlock("div", {
37
+ ref: "layoutRef",
38
+ class: vue.normalizeClass(vue.unref(ns).b())
39
+ }, [
40
+ vue.createElementVNode("div", {
41
+ class: vue.normalizeClass(vue.unref(ns).e("actual")),
42
+ style: vue.normalizeStyle(layoutStyle.value)
43
+ }, [
44
+ _ctx.$slots.header ? (vue.openBlock(), vue.createElementBlock("div", {
45
+ key: 0,
46
+ ref_key: "headerRef",
47
+ ref: headerRef,
48
+ class: vue.normalizeClass(vue.unref(ns).e("header"))
49
+ }, [
50
+ vue.renderSlot(_ctx.$slots, "header")
51
+ ], 2)) : vue.createCommentVNode("", true),
52
+ _ctx.$slots.body ? (vue.openBlock(), vue.createElementBlock("div", {
53
+ key: 1,
54
+ ref_key: "bodyRef",
55
+ ref: bodyRef,
56
+ class: vue.normalizeClass(vue.unref(ns).e("body")),
57
+ style: vue.normalizeStyle(__props.full ? "flex: 1;" : `max-height: ${vue.unref(ghostBodyHeight)}px;`)
58
+ }, [
59
+ vue.renderSlot(_ctx.$slots, "body", {
60
+ width: vue.unref(bodyWidth),
61
+ height: vue.unref(ghostBodyHeight)
62
+ })
63
+ ], 6)) : vue.createCommentVNode("", true),
64
+ _ctx.$slots.footer ? (vue.openBlock(), vue.createElementBlock("div", {
65
+ key: 2,
66
+ ref_key: "footerRef",
67
+ ref: footerRef,
68
+ class: vue.normalizeClass(vue.unref(ns).e("footer"))
69
+ }, [
70
+ vue.renderSlot(_ctx.$slots, "footer")
71
+ ], 2)) : vue.createCommentVNode("", true)
72
+ ], 6),
73
+ vue.createElementVNode("div", {
74
+ class: vue.normalizeClass(vue.unref(ns).e("ghost-wrapper")),
75
+ "aria-hidden": "true",
76
+ style: vue.normalizeStyle(layoutStyle.value)
77
+ }, [
78
+ _ctx.$slots.header ? (vue.openBlock(), vue.createElementBlock("div", {
79
+ key: 0,
80
+ class: vue.normalizeClass(vue.unref(ns).e("ghost-header")),
81
+ style: vue.normalizeStyle({ height: `${vue.unref(headerHeight)}px` })
82
+ }, null, 6)) : vue.createCommentVNode("", true),
83
+ vue.createElementVNode("div", {
84
+ ref_key: "ghostBodyRef",
85
+ ref: ghostBodyRef,
86
+ class: vue.normalizeClass(vue.unref(ns).e("ghost-body"))
87
+ }, null, 2),
88
+ _ctx.$slots.footer ? (vue.openBlock(), vue.createElementBlock("div", {
89
+ key: 1,
90
+ class: vue.normalizeClass(vue.unref(ns).e("ghost-footer")),
91
+ style: vue.normalizeStyle({ height: `${vue.unref(footerHeight)}px` })
92
+ }, null, 6)) : vue.createCommentVNode("", true)
93
+ ], 6)
94
+ ], 2);
95
+ };
96
+ }
97
+ });
98
+
99
+ exports.default = _sfc_main;
@@ -0,0 +1,10 @@
1
+ 'use strict';
2
+
3
+ Object.defineProperties(exports, { __esModule: { value: true }, [Symbol.toStringTag]: { value: 'Module' } });
4
+
5
+ const VerticalLayout_vue_vue_type_script_setup_true_lang = require('./VerticalLayout.vue.js');
6
+ ;/* empty css */
7
+
8
+
9
+
10
+ exports.default = VerticalLayout_vue_vue_type_script_setup_true_lang.default;
@@ -0,0 +1,12 @@
1
+ 'use strict';
2
+
3
+ Object.defineProperties(exports, { __esModule: { value: true }, [Symbol.toStringTag]: { value: 'Module' } });
4
+
5
+ const VerticalLayout_vue_vue_type_script_setup_true_lang = require('./VerticalLayout.vue.js');
6
+ ;/* empty css */
7
+ const withInstall = require('../../_utils/with-install.js');
8
+
9
+ const FcProVerticalLayout = withInstall.withInstall(VerticalLayout_vue_vue_type_script_setup_true_lang.default);
10
+
11
+ exports.FcProVerticalLayout = FcProVerticalLayout;
12
+ exports.default = FcProVerticalLayout;
@@ -10,6 +10,7 @@ const index$4 = require('./TreeTransfer/index.js');
10
10
  const index$5 = require('./EditFormCard/index.js');
11
11
  const index$6 = require('./FormDialog/index.js');
12
12
  const index$7 = require('./QueryForm/index.js');
13
+ const index$8 = require('./VerticalLayout/index.js');
13
14
 
14
15
 
15
16
 
@@ -21,3 +22,4 @@ exports.FcProTreeTransfer = index$4.FcProTreeTransfer;
21
22
  exports.FcProEditFormCard = index$5.FcProEditFormCard;
22
23
  exports.FcProFormDialog = index$6.FcProFormDialog;
23
24
  exports.FcProQueryForm = index$7.FcProQueryForm;
25
+ exports.FcProVerticalLayout = index$8.FcProVerticalLayout;
@@ -33,8 +33,8 @@ const _sfc_main = /* @__PURE__ */ vue.defineComponent({
33
33
  },
34
34
  "modelModifiers": {}
35
35
  }),
36
- emits: ["update:modelValue"],
37
- setup(__props) {
36
+ emits: /* @__PURE__ */ vue.mergeModels(["change"], ["update:modelValue"]),
37
+ setup(__props, { emit: __emit }) {
38
38
  const ns = useNamespace.useNamespace("bz-date-picker");
39
39
  const props = __props;
40
40
  const isRange = vue.computed(() => {
@@ -107,6 +107,7 @@ const _sfc_main = /* @__PURE__ */ vue.defineComponent({
107
107
  );
108
108
  }
109
109
  });
110
+ const emits = __emit;
110
111
  const handleConfirm = () => {
111
112
  if (date1.value && date2.value && isRange.value) {
112
113
  dateRange.value = [date1.value, date2.value];
@@ -114,6 +115,9 @@ const _sfc_main = /* @__PURE__ */ vue.defineComponent({
114
115
  dateRange.value = isRange.value ? [] : "";
115
116
  }
116
117
  tooltipRef.value?.hide();
118
+ vue.nextTick(() => {
119
+ emits("change", dateRange.value);
120
+ });
117
121
  };
118
122
  const todayClick = () => {
119
123
  const start = /* @__PURE__ */ new Date();
@@ -2,14 +2,10 @@
2
2
 
3
3
  Object.defineProperties(exports, { __esModule: { value: true }, [Symbol.toStringTag]: { value: 'Module' } });
4
4
 
5
- const vue = require('vue');
5
+ const DotStatus_vue_vue_type_script_setup_true_lang = require('./DotStatus.vue2.js');
6
+ ;/* empty css */
6
7
  const _pluginVue_exportHelper = require('../../_virtual/_plugin-vue_export-helper.js');
7
8
 
8
- const _sfc_main = { };
9
-
10
- function _sfc_render(_ctx, _cache) {
11
- return (vue.openBlock(), vue.createElementBlock("div", null, "1"))
12
- }
13
- const DotStatus = /*#__PURE__*/_pluginVue_exportHelper.default(_sfc_main, [['render',_sfc_render]]);
9
+ const DotStatus = /* @__PURE__ */ _pluginVue_exportHelper.default(DotStatus_vue_vue_type_script_setup_true_lang.default, [["__scopeId", "data-v-a9f6e8d5"]]);
14
10
 
15
11
  exports.default = DotStatus;
@@ -0,0 +1,52 @@
1
+ 'use strict';
2
+
3
+ Object.defineProperties(exports, { __esModule: { value: true }, [Symbol.toStringTag]: { value: 'Module' } });
4
+
5
+ const vue = require('vue');
6
+ const useNamespace = require('../../hooks/use-namespace.js');
7
+ const LovText_vue_vue_type_script_setup_true_lang = require('../LovText/LovText.vue.js');
8
+ ;/* empty css */
9
+
10
+ const _sfc_main = /* @__PURE__ */ vue.defineComponent({
11
+ ...{
12
+ name: "FcDotStatus"
13
+ },
14
+ __name: "DotStatus",
15
+ props: {
16
+ type: { default: "info" },
17
+ size: { default: "medium" },
18
+ color: { default: "" },
19
+ label: { default: "" },
20
+ lovId: { default: "" },
21
+ value: { default: null },
22
+ isSql: { type: Boolean, default: false },
23
+ isUpdateLovOptions: { type: Boolean, default: false }
24
+ },
25
+ setup(__props) {
26
+ const ns = useNamespace.useNamespace("dot-status");
27
+ return (_ctx, _cache) => {
28
+ return vue.openBlock(), vue.createElementBlock("div", {
29
+ class: vue.normalizeClass({
30
+ [vue.unref(ns).b()]: true,
31
+ [vue.unref(ns).b(__props.type)]: true,
32
+ [vue.unref(ns).b(__props.size)]: true
33
+ }),
34
+ style: vue.normalizeStyle({ "--fc-ui-dot-bg-color": __props.color })
35
+ }, [
36
+ !_ctx.$slots.default ? (vue.openBlock(), vue.createElementBlock(vue.Fragment, { key: 0 }, [
37
+ __props.lovId && __props.value ? (vue.openBlock(), vue.createBlock(LovText_vue_vue_type_script_setup_true_lang.default, {
38
+ key: 0,
39
+ "lov-id": __props.lovId,
40
+ value: __props.value,
41
+ "is-sql": __props.isSql,
42
+ "is-update-lov-options": __props.isUpdateLovOptions
43
+ }, null, 8, ["lov-id", "value", "is-sql", "is-update-lov-options"])) : (vue.openBlock(), vue.createElementBlock(vue.Fragment, { key: 1 }, [
44
+ vue.createTextVNode(vue.toDisplayString(__props.label), 1)
45
+ ], 64))
46
+ ], 64)) : vue.renderSlot(_ctx.$slots, "default", { key: 1 }, void 0, true)
47
+ ], 6);
48
+ };
49
+ }
50
+ });
51
+
52
+ exports.default = _sfc_main;
package/dist/cjs/index.js CHANGED
@@ -7,8 +7,8 @@ const directive = require('./node_modules/.pnpm/element-plus@2.13.5_patch_hash_4
7
7
  const dayjs_min = require('./_virtual/dayjs.min.js');
8
8
  ;/* empty css */
9
9
  const lovIdRequestProvide = require('./config/lovId-request-provide.js');
10
- const index$1p = require('./components/index.js');
11
- const index$1q = require('./business/index.js');
10
+ const index$1q = require('./components/index.js');
11
+ const index$1r = require('./business/index.js');
12
12
  const version = require('./version.js');
13
13
  const index$1 = require('./components/Button/index.js');
14
14
  const index$2 = require('./components/Dialog/index.js');
@@ -98,13 +98,14 @@ const index$1l = require('./business/TreeTransfer/index.js');
98
98
  const index$1m = require('./business/EditFormCard/index.js');
99
99
  const index$1n = require('./business/FormDialog/index.js');
100
100
  const index$1o = require('./business/QueryForm/index.js');
101
+ const index$1p = require('./business/VerticalLayout/index.js');
101
102
 
102
- const components = Object.keys(index$1p).map((key) => {
103
- return index$1p[key];
104
- });
105
- const proComponents = Object.keys(index$1q).map((key) => {
103
+ const components = Object.keys(index$1q).map((key) => {
106
104
  return index$1q[key];
107
105
  });
106
+ const proComponents = Object.keys(index$1r).map((key) => {
107
+ return index$1r[key];
108
+ });
108
109
  const installComponents = [...components, ...proComponents].filter((comp) => {
109
110
  return typeof comp === "object" && comp.name && typeof comp.install === "function";
110
111
  });
@@ -238,5 +239,6 @@ exports.FcProTreeTransfer = index$1l.FcProTreeTransfer;
238
239
  exports.FcProEditFormCard = index$1m.FcProEditFormCard;
239
240
  exports.FcProFormDialog = index$1n.FcProFormDialog;
240
241
  exports.FcProQueryForm = index$1o.FcProQueryForm;
242
+ exports.FcProVerticalLayout = index$1p.FcProVerticalLayout;
241
243
  exports.default = index;
242
244
  exports.install = install;
@@ -2,6 +2,6 @@
2
2
 
3
3
  Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });
4
4
 
5
- const version = "1.1.28";
5
+ const version = "1.1.30";
6
6
 
7
7
  exports.version = version;