@ditari/bsui 1.1.34 → 1.1.36

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 CHANGED
@@ -1,5 +1,17 @@
1
1
  # @ditari/bsui
2
2
 
3
+ ## 1.1.36
4
+
5
+ ### Patch Changes
6
+
7
+ - 日期控件,回写初始数据
8
+
9
+ ## 1.1.35
10
+
11
+ ### Patch Changes
12
+
13
+ - 修复表格
14
+
3
15
  ## 1.1.34
4
16
 
5
17
  ### Patch Changes
@@ -28,7 +28,6 @@ var RangePicker = /* @__PURE__ */ vue.defineComponent({
28
28
  attrs
29
29
  }) {
30
30
  const dates = vue.ref([]);
31
- const modelValue = vue.ref(props.value);
32
31
  const internalModel = vue.ref((props == null ? void 0 : props.value) || {});
33
32
  const onChange = (dates2) => {
34
33
  if (!dates2) {
@@ -43,11 +42,22 @@ var RangePicker = /* @__PURE__ */ vue.defineComponent({
43
42
  emit("update:value", internalModel.value);
44
43
  };
45
44
  vue.watchEffect(() => {
45
+ const value = props.value;
46
46
  props.field.forEach((key, index) => {
47
- if (modelValue[key] === "") {
47
+ if (value[key] === "") {
48
48
  dates.value && (dates.value[index] = "");
49
49
  } else {
50
- dates.value && (dates.value[index] = modelValue.value[key]);
50
+ dates.value && (dates.value[index] = value[key]);
51
+ }
52
+ });
53
+ });
54
+ vue.watchEffect(() => {
55
+ const value = props.value;
56
+ props.field.forEach((key, index) => {
57
+ if (value[key] === "") {
58
+ dates.value && (dates.value[index] = "");
59
+ } else {
60
+ dates.value && (dates.value[index] = value[key]);
51
61
  }
52
62
  });
53
63
  });
@@ -1 +1 @@
1
- {"version":3,"file":"RangePicker.cjs","sources":["../../../src/date/RangePicker.tsx"],"sourcesContent":["import { defineComponent, ref, watchEffect } from \"vue\";\nimport type { PropType } from \"vue\";\nimport { RangePicker } from \"ant-design-vue\";\n\n/**\n * 日期范围控件\n */\nexport default defineComponent({\n name: \"DRangePicker\",\n props: {\n value: {\n type: Object as PropType<{ [name: string]: unknown }>\n },\n field: {\n required: true,\n default: [] as string[]\n },\n format: {\n default: \"YYYY-MM-DD\"\n },\n valueFormat: {\n default: \"YYYY-MM-DD\"\n }\n },\n emits: [\"update:value\"],\n setup(props, { emit, attrs }) {\n const dates = ref<string[]>([]);\n const modelValue: any = ref(props.value);\n\n //内部model\n const internalModel = ref<{ [name: string]: unknown }>(props?.value || {});\n\n // 监听日期变化\n const onChange = (dates: [any, any]) => {\n if (!dates) {\n props.field.forEach((key) => {\n internalModel.value[key] = \"\";\n });\n } else {\n props.field.forEach((key, index) => {\n internalModel.value[key] = dates[index];\n });\n }\n emit(\"update:value\", internalModel.value);\n };\n\n watchEffect(() => {\n props.field.forEach((key, index) => {\n if (modelValue[key] === \"\") {\n dates.value && (dates.value[index] = \"\");\n } else {\n dates.value && (dates.value[index] = modelValue.value[key]);\n }\n });\n });\n\n return () => (\n <div>\n <RangePicker\n {...attrs}\n v-model:value={dates.value}\n onChange={onChange}\n format={props.format}\n valueFormat={props.valueFormat}\n style={{ width: \"100%\" }}\n ></RangePicker>\n </div>\n );\n }\n});\n"],"names":["defineComponent","name","props","value","type","Object","field","required","default","format","valueFormat","emits","setup","emit","attrs","dates","ref","modelValue","internalModel","onChange","forEach","key","index","watchEffect","_createVNode","RangePicker","_mergeProps","$event","width"],"mappings":"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"}
1
+ {"version":3,"file":"RangePicker.cjs","sources":["../../../src/date/RangePicker.tsx"],"sourcesContent":["import { defineComponent, ref, watchEffect } from \"vue\";\nimport type { PropType } from \"vue\";\nimport { RangePicker } from \"ant-design-vue\";\n\n/**\n * 日期范围控件\n */\nexport default defineComponent({\n name: \"DRangePicker\",\n props: {\n value: {\n type: Object as PropType<{ [name: string]: unknown }>\n },\n field: {\n required: true,\n default: [] as string[]\n },\n format: {\n default: \"YYYY-MM-DD\"\n },\n valueFormat: {\n default: \"YYYY-MM-DD\"\n }\n },\n emits: [\"update:value\"],\n setup(props, { emit, attrs }) {\n const dates = ref<string[]>([]);\n\n //内部model\n const internalModel = ref<{ [name: string]: unknown }>(props?.value || {});\n\n // 监听日期变化\n const onChange = (dates: [any, any]) => {\n if (!dates) {\n props.field.forEach((key) => {\n internalModel.value[key] = \"\";\n });\n } else {\n props.field.forEach((key, index) => {\n internalModel.value[key] = dates[index];\n });\n }\n emit(\"update:value\", internalModel.value);\n };\n\n watchEffect(() => {\n const value: any = props.value;\n props.field.forEach((key, index) => {\n if (value[key] === \"\") {\n dates.value && (dates.value[index] = \"\");\n } else {\n dates.value && (dates.value[index] = value[key]);\n }\n });\n });\n\n watchEffect(() => {\n const value: any = props.value;\n props.field.forEach((key, index) => {\n if (value[key] === \"\") {\n dates.value && (dates.value[index] = \"\");\n } else {\n dates.value && (dates.value[index] = value[key]);\n }\n });\n });\n\n return () => (\n <div>\n <RangePicker\n {...attrs}\n v-model:value={dates.value}\n onChange={onChange}\n format={props.format}\n valueFormat={props.valueFormat}\n style={{ width: \"100%\" }}\n ></RangePicker>\n </div>\n );\n }\n});\n"],"names":["defineComponent","name","props","value","type","Object","field","required","default","format","valueFormat","emits","setup","emit","attrs","dates","ref","internalModel","onChange","forEach","key","index","watchEffect","_createVNode","RangePicker","_mergeProps","$event","width"],"mappings":"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"}
@@ -72,14 +72,15 @@ var _sfc_main = /* @__PURE__ */ vue.defineComponent({
72
72
  () => formHeight.value,
73
73
  () => {
74
74
  calcHeight();
75
- }
76
- );
77
- window.addEventListener(
78
- "resize",
79
- core.useDebounceFn(() => {
80
- calcHeight();
81
- })
75
+ },
76
+ { immediate: true }
82
77
  );
78
+ vue.watchEffect(() => {
79
+ calcHeight();
80
+ });
81
+ core.useResizeObserver(document.body, () => {
82
+ calcHeight();
83
+ });
83
84
  function calcHeight() {
84
85
  show.value = false;
85
86
  vue.nextTick(() => {
@@ -1 +1 @@
1
- {"version":3,"file":"List.vue2.cjs","sources":["../../../src/layout/List.vue"],"sourcesContent":["<script lang=\"ts\">\nconst marginBottom = 16\n</script>\n<script setup lang=\"ts\">\nimport {\n useSlots,\n ref,\n onActivated,\n watch,\n onDeactivated,\n onUnmounted,\n WatchStopHandle,\n inject,\n nextTick\n} from \"vue\";\nimport { useDebounceFn, useElementSize } from \"@vueuse/core\";\nimport { useSettingsStore } from \"@ditari/store\";\nimport { storeToRefs } from \"pinia\";\nimport { useRoute } from \"vue-router\";\n\nconst emits = defineEmits([\"refresh\"]);\n\nconst slots = useSlots();\nconst store = useSettingsStore();\nconst route = useRoute();\nconst configProvider = inject(\"configProvider\") as any;\n\nconst { refresh } = storeToRefs(store);\n\nconst toolsRef = ref();\nconst tableRef = ref();\n\nconst show = ref(false);\nconst height = ref(0);\n\nlet stopHandleWatch: WatchStopHandle;\n\nwatch(\n () => configProvider?.componentSize,\n () => {\n calcHeight();\n }\n);\n\nuseReload();\n// 处理标签重载\nfunction useReload() {\n // !route.meta.keepAlive\n if (!route.name) {\n stopHandleWatch = useWatch();\n // 卸载未缓存的组件\n onUnmounted(() => {\n stopHandleWatch();\n });\n } else {\n // 激活缓存页面\n onActivated(() => {\n if (refresh.value) {\n refresh.value = false;\n emits(\"refresh\");\n }\n stopHandleWatch = useWatch();\n });\n // 离开缓存页面\n onDeactivated(() => {\n stopHandleWatch();\n });\n }\n}\n\nfunction useWatch() {\n //点击了标签重载图标\n return watch(\n () => refresh.value,\n (val) => {\n if (val) {\n // 发送刷新事件到列表页面\n emits(\"refresh\");\n }\n }\n );\n}\n\n// 监听表单高度变化\n// 然后再获取表格高度\nconst formRef = ref(null);\nconst { height: formHeight } = useElementSize(formRef);\nwatch(\n () => formHeight.value,\n () => {\n calcHeight();\n }\n);\n\nwindow.addEventListener(\n \"resize\",\n useDebounceFn(() => {\n calcHeight();\n })\n);\n\n// 动态计算高度\nfunction calcHeight() {\n show.value = false;\n nextTick(() => {\n height.value = tableRef?.value?.offsetHeight;\n show.value = true;\n });\n}\n\n// nextTick(() => {\n// calcHeight();\n// });\n</script>\n<template>\n <div class=\"ditari-list-layout\">\n <div ref=\"contentRef\" class=\"wrapper\">\n <a-card\n ref=\"formRef\"\n :bordered=\"false\"\n :class=\"{ 'ditari-list-form': slots.form }\"\n :style=\"{ 'margin-bottom': slots.form ? marginBottom + 'px' : 0 }\"\n >\n <slot name=\"form\" />\n </a-card>\n <a-card class=\"ditari-list-table\" :bordered=\"false\">\n <div\n ref=\"toolsRef\"\n class=\"xi-tools\"\n :style=\"{ 'margin-bottom': slots.tools ? marginBottom + 'px' : 0 }\"\n >\n <a-space>\n <slot name=\"tools\"></slot>\n </a-space>\n </div>\n <div ref=\"tableRef\" style=\"flex: 1\">\n <div v-show=\"show\" style=\"height: 100%\">\n <slot name=\"table\" :height=\"height\" />\n </div>\n </div>\n </a-card>\n </div>\n <div class=\"ditari-content-extra\">\n <slot></slot>\n </div>\n </div>\n</template>\n<style></style>\n"],"names":["useSlots","store","useSettingsStore","useRoute","inject","storeToRefs","ref","watch","onUnmounted","onActivated","onDeactivated","useElementSize","useDebounceFn","nextTick"],"mappings":"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"}
1
+ {"version":3,"file":"List.vue2.cjs","sources":["../../../src/layout/List.vue"],"sourcesContent":["<script lang=\"ts\">\nconst marginBottom = 16\n</script>\n<script setup lang=\"ts\">\nimport {\n useSlots,\n ref,\n onActivated,\n watch,\n onDeactivated,\n onUnmounted,\n WatchStopHandle,\n inject,\n nextTick,\n watchEffect\n} from \"vue\";\nimport { useElementSize, useResizeObserver } from \"@vueuse/core\";\nimport { useSettingsStore } from \"@ditari/store\";\nimport { storeToRefs } from \"pinia\";\nimport { useRoute } from \"vue-router\";\n\nconst emits = defineEmits([\"refresh\"]);\n\nconst slots = useSlots();\nconst store = useSettingsStore();\nconst route = useRoute();\nconst configProvider = inject(\"configProvider\") as any;\n\nconst { refresh } = storeToRefs(store);\n\nconst toolsRef = ref();\nconst tableRef = ref();\n\nconst show = ref(false);\nconst height = ref(0);\n\nlet stopHandleWatch: WatchStopHandle;\n\nwatch(\n () => configProvider?.componentSize,\n () => {\n calcHeight();\n }\n);\n\nuseReload();\n// 处理标签重载\nfunction useReload() {\n // !route.meta.keepAlive\n if (!route.name) {\n stopHandleWatch = useWatch();\n // 卸载未缓存的组件\n onUnmounted(() => {\n stopHandleWatch();\n });\n } else {\n // 激活缓存页面\n onActivated(() => {\n if (refresh.value) {\n refresh.value = false;\n emits(\"refresh\");\n }\n stopHandleWatch = useWatch();\n });\n // 离开缓存页面\n onDeactivated(() => {\n stopHandleWatch();\n });\n }\n}\n\nfunction useWatch() {\n //点击了标签重载图标\n return watch(\n () => refresh.value,\n (val) => {\n if (val) {\n // 发送刷新事件到列表页面\n emits(\"refresh\");\n }\n }\n );\n}\n\n// 监听表单高度变化\n// 然后再获取表格高度\nconst formRef = ref(null);\nconst { height: formHeight } = useElementSize(formRef);\nwatch(\n () => formHeight.value,\n () => {\n calcHeight();\n },\n { immediate: true }\n);\n\nwatchEffect(() => {\n calcHeight();\n});\n\nuseResizeObserver(document.body, () => {\n calcHeight();\n});\n\n// 动态计算高度\nfunction calcHeight() {\n show.value = false;\n nextTick(() => {\n height.value = tableRef?.value?.offsetHeight;\n show.value = true;\n });\n}\n</script>\n<template>\n <div class=\"ditari-list-layout\">\n <div ref=\"contentRef\" class=\"wrapper\">\n <a-card\n ref=\"formRef\"\n :bordered=\"false\"\n :class=\"{ 'ditari-list-form': slots.form }\"\n :style=\"{ 'margin-bottom': slots.form ? marginBottom + 'px' : 0 }\"\n >\n <slot name=\"form\" />\n </a-card>\n <a-card class=\"ditari-list-table\" :bordered=\"false\">\n <div\n ref=\"toolsRef\"\n class=\"xi-tools\"\n :style=\"{ 'margin-bottom': slots.tools ? marginBottom + 'px' : 0 }\"\n >\n <a-space>\n <slot name=\"tools\"></slot>\n </a-space>\n </div>\n <div ref=\"tableRef\" style=\"flex: 1\">\n <div v-show=\"show\" style=\"height: 100%\">\n <slot name=\"table\" :height=\"height\" />\n </div>\n </div>\n </a-card>\n </div>\n <div class=\"ditari-content-extra\">\n <slot></slot>\n </div>\n </div>\n</template>\n<style></style>\n"],"names":["useSlots","store","useSettingsStore","useRoute","inject","storeToRefs","ref","watch","onUnmounted","onActivated","onDeactivated","useElementSize","watchEffect","useResizeObserver","nextTick"],"mappings":"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"}
@@ -26,7 +26,7 @@ declare const _default: import("vue").DefineComponent<{
26
26
  };
27
27
  }, {
28
28
  props: any;
29
- emits: (event: "select" | "change" | "update:value", ...args: any[]) => void;
29
+ emits: (event: "select" | "update:value" | "change", ...args: any[]) => void;
30
30
  getDicByKey: (key: string) => any;
31
31
  modelValue: any;
32
32
  data: any;
@@ -40,7 +40,7 @@ declare const _default: import("vue").DefineComponent<{
40
40
  onChange: () => void;
41
41
  };
42
42
  onFilterOption: (inputValue: any, options: any) => any;
43
- }, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, ("select" | "change" | "update:value")[], "select" | "change" | "update:value", import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{
43
+ }, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, ("select" | "update:value" | "change")[], "select" | "update:value" | "change", import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{
44
44
  value: {
45
45
  type: null;
46
46
  required: true;
@@ -24,7 +24,6 @@ var RangePicker = /* @__PURE__ */ defineComponent({
24
24
  attrs
25
25
  }) {
26
26
  const dates = ref([]);
27
- const modelValue = ref(props.value);
28
27
  const internalModel = ref((props == null ? void 0 : props.value) || {});
29
28
  const onChange = (dates2) => {
30
29
  if (!dates2) {
@@ -39,11 +38,22 @@ var RangePicker = /* @__PURE__ */ defineComponent({
39
38
  emit("update:value", internalModel.value);
40
39
  };
41
40
  watchEffect(() => {
41
+ const value = props.value;
42
42
  props.field.forEach((key, index) => {
43
- if (modelValue[key] === "") {
43
+ if (value[key] === "") {
44
44
  dates.value && (dates.value[index] = "");
45
45
  } else {
46
- dates.value && (dates.value[index] = modelValue.value[key]);
46
+ dates.value && (dates.value[index] = value[key]);
47
+ }
48
+ });
49
+ });
50
+ watchEffect(() => {
51
+ const value = props.value;
52
+ props.field.forEach((key, index) => {
53
+ if (value[key] === "") {
54
+ dates.value && (dates.value[index] = "");
55
+ } else {
56
+ dates.value && (dates.value[index] = value[key]);
47
57
  }
48
58
  });
49
59
  });
@@ -1 +1 @@
1
- {"version":3,"file":"RangePicker.mjs","sources":["../../../src/date/RangePicker.tsx"],"sourcesContent":["import { defineComponent, ref, watchEffect } from \"vue\";\nimport type { PropType } from \"vue\";\nimport { RangePicker } from \"ant-design-vue\";\n\n/**\n * 日期范围控件\n */\nexport default defineComponent({\n name: \"DRangePicker\",\n props: {\n value: {\n type: Object as PropType<{ [name: string]: unknown }>\n },\n field: {\n required: true,\n default: [] as string[]\n },\n format: {\n default: \"YYYY-MM-DD\"\n },\n valueFormat: {\n default: \"YYYY-MM-DD\"\n }\n },\n emits: [\"update:value\"],\n setup(props, { emit, attrs }) {\n const dates = ref<string[]>([]);\n const modelValue: any = ref(props.value);\n\n //内部model\n const internalModel = ref<{ [name: string]: unknown }>(props?.value || {});\n\n // 监听日期变化\n const onChange = (dates: [any, any]) => {\n if (!dates) {\n props.field.forEach((key) => {\n internalModel.value[key] = \"\";\n });\n } else {\n props.field.forEach((key, index) => {\n internalModel.value[key] = dates[index];\n });\n }\n emit(\"update:value\", internalModel.value);\n };\n\n watchEffect(() => {\n props.field.forEach((key, index) => {\n if (modelValue[key] === \"\") {\n dates.value && (dates.value[index] = \"\");\n } else {\n dates.value && (dates.value[index] = modelValue.value[key]);\n }\n });\n });\n\n return () => (\n <div>\n <RangePicker\n {...attrs}\n v-model:value={dates.value}\n onChange={onChange}\n format={props.format}\n valueFormat={props.valueFormat}\n style={{ width: \"100%\" }}\n ></RangePicker>\n </div>\n );\n }\n});\n"],"names":["name","props","value","type","Object","field","required","default","format","valueFormat","emits","setup","emit","attrs","dates","ref","modelValue","internalModel","onChange","forEach","key","index","watchEffect","_createVNode","RangePicker","_mergeProps","$event","width"],"mappings":"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"}
1
+ {"version":3,"file":"RangePicker.mjs","sources":["../../../src/date/RangePicker.tsx"],"sourcesContent":["import { defineComponent, ref, watchEffect } from \"vue\";\nimport type { PropType } from \"vue\";\nimport { RangePicker } from \"ant-design-vue\";\n\n/**\n * 日期范围控件\n */\nexport default defineComponent({\n name: \"DRangePicker\",\n props: {\n value: {\n type: Object as PropType<{ [name: string]: unknown }>\n },\n field: {\n required: true,\n default: [] as string[]\n },\n format: {\n default: \"YYYY-MM-DD\"\n },\n valueFormat: {\n default: \"YYYY-MM-DD\"\n }\n },\n emits: [\"update:value\"],\n setup(props, { emit, attrs }) {\n const dates = ref<string[]>([]);\n\n //内部model\n const internalModel = ref<{ [name: string]: unknown }>(props?.value || {});\n\n // 监听日期变化\n const onChange = (dates: [any, any]) => {\n if (!dates) {\n props.field.forEach((key) => {\n internalModel.value[key] = \"\";\n });\n } else {\n props.field.forEach((key, index) => {\n internalModel.value[key] = dates[index];\n });\n }\n emit(\"update:value\", internalModel.value);\n };\n\n watchEffect(() => {\n const value: any = props.value;\n props.field.forEach((key, index) => {\n if (value[key] === \"\") {\n dates.value && (dates.value[index] = \"\");\n } else {\n dates.value && (dates.value[index] = value[key]);\n }\n });\n });\n\n watchEffect(() => {\n const value: any = props.value;\n props.field.forEach((key, index) => {\n if (value[key] === \"\") {\n dates.value && (dates.value[index] = \"\");\n } else {\n dates.value && (dates.value[index] = value[key]);\n }\n });\n });\n\n return () => (\n <div>\n <RangePicker\n {...attrs}\n v-model:value={dates.value}\n onChange={onChange}\n format={props.format}\n valueFormat={props.valueFormat}\n style={{ width: \"100%\" }}\n ></RangePicker>\n </div>\n );\n }\n});\n"],"names":["name","props","value","type","Object","field","required","default","format","valueFormat","emits","setup","emit","attrs","dates","ref","internalModel","onChange","forEach","key","index","watchEffect","_createVNode","RangePicker","_mergeProps","$event","width"],"mappings":"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"}
@@ -1,5 +1,5 @@
1
- import { defineComponent, useSlots, inject, ref, watch, onUnmounted, onActivated, onDeactivated, nextTick, resolveComponent, openBlock, createElementBlock, createElementVNode, createVNode, normalizeClass, unref, normalizeStyle, withCtx, renderSlot, withDirectives, vShow } from 'vue';
2
- import { useElementSize, useDebounceFn } from '@vueuse/core';
1
+ import { defineComponent, useSlots, inject, ref, watch, onUnmounted, onActivated, onDeactivated, watchEffect, nextTick, resolveComponent, openBlock, createElementBlock, createElementVNode, createVNode, normalizeClass, unref, normalizeStyle, withCtx, renderSlot, withDirectives, vShow } from 'vue';
2
+ import { useElementSize, useResizeObserver } from '@vueuse/core';
3
3
  import { useSettingsStore } from '@ditari/store';
4
4
  import { storeToRefs } from 'pinia';
5
5
  import { useRoute } from 'vue-router';
@@ -68,14 +68,15 @@ var _sfc_main = /* @__PURE__ */ defineComponent({
68
68
  () => formHeight.value,
69
69
  () => {
70
70
  calcHeight();
71
- }
72
- );
73
- window.addEventListener(
74
- "resize",
75
- useDebounceFn(() => {
76
- calcHeight();
77
- })
71
+ },
72
+ { immediate: true }
78
73
  );
74
+ watchEffect(() => {
75
+ calcHeight();
76
+ });
77
+ useResizeObserver(document.body, () => {
78
+ calcHeight();
79
+ });
79
80
  function calcHeight() {
80
81
  show.value = false;
81
82
  nextTick(() => {
@@ -1 +1 @@
1
- {"version":3,"file":"List.vue2.mjs","sources":["../../../src/layout/List.vue"],"sourcesContent":["<script lang=\"ts\">\nconst marginBottom = 16\n</script>\n<script setup lang=\"ts\">\nimport {\n useSlots,\n ref,\n onActivated,\n watch,\n onDeactivated,\n onUnmounted,\n WatchStopHandle,\n inject,\n nextTick\n} from \"vue\";\nimport { useDebounceFn, useElementSize } from \"@vueuse/core\";\nimport { useSettingsStore } from \"@ditari/store\";\nimport { storeToRefs } from \"pinia\";\nimport { useRoute } from \"vue-router\";\n\nconst emits = defineEmits([\"refresh\"]);\n\nconst slots = useSlots();\nconst store = useSettingsStore();\nconst route = useRoute();\nconst configProvider = inject(\"configProvider\") as any;\n\nconst { refresh } = storeToRefs(store);\n\nconst toolsRef = ref();\nconst tableRef = ref();\n\nconst show = ref(false);\nconst height = ref(0);\n\nlet stopHandleWatch: WatchStopHandle;\n\nwatch(\n () => configProvider?.componentSize,\n () => {\n calcHeight();\n }\n);\n\nuseReload();\n// 处理标签重载\nfunction useReload() {\n // !route.meta.keepAlive\n if (!route.name) {\n stopHandleWatch = useWatch();\n // 卸载未缓存的组件\n onUnmounted(() => {\n stopHandleWatch();\n });\n } else {\n // 激活缓存页面\n onActivated(() => {\n if (refresh.value) {\n refresh.value = false;\n emits(\"refresh\");\n }\n stopHandleWatch = useWatch();\n });\n // 离开缓存页面\n onDeactivated(() => {\n stopHandleWatch();\n });\n }\n}\n\nfunction useWatch() {\n //点击了标签重载图标\n return watch(\n () => refresh.value,\n (val) => {\n if (val) {\n // 发送刷新事件到列表页面\n emits(\"refresh\");\n }\n }\n );\n}\n\n// 监听表单高度变化\n// 然后再获取表格高度\nconst formRef = ref(null);\nconst { height: formHeight } = useElementSize(formRef);\nwatch(\n () => formHeight.value,\n () => {\n calcHeight();\n }\n);\n\nwindow.addEventListener(\n \"resize\",\n useDebounceFn(() => {\n calcHeight();\n })\n);\n\n// 动态计算高度\nfunction calcHeight() {\n show.value = false;\n nextTick(() => {\n height.value = tableRef?.value?.offsetHeight;\n show.value = true;\n });\n}\n\n// nextTick(() => {\n// calcHeight();\n// });\n</script>\n<template>\n <div class=\"ditari-list-layout\">\n <div ref=\"contentRef\" class=\"wrapper\">\n <a-card\n ref=\"formRef\"\n :bordered=\"false\"\n :class=\"{ 'ditari-list-form': slots.form }\"\n :style=\"{ 'margin-bottom': slots.form ? marginBottom + 'px' : 0 }\"\n >\n <slot name=\"form\" />\n </a-card>\n <a-card class=\"ditari-list-table\" :bordered=\"false\">\n <div\n ref=\"toolsRef\"\n class=\"xi-tools\"\n :style=\"{ 'margin-bottom': slots.tools ? marginBottom + 'px' : 0 }\"\n >\n <a-space>\n <slot name=\"tools\"></slot>\n </a-space>\n </div>\n <div ref=\"tableRef\" style=\"flex: 1\">\n <div v-show=\"show\" style=\"height: 100%\">\n <slot name=\"table\" :height=\"height\" />\n </div>\n </div>\n </a-card>\n </div>\n <div class=\"ditari-content-extra\">\n <slot></slot>\n </div>\n </div>\n</template>\n<style></style>\n"],"names":[],"mappings":";;;;;;;;;;;;;AACA,MAAM,YAAe,GAAA,EAAA,CAAA;;;;;AAqBrB,IAAA,MAAM,QAAQ,QAAS,EAAA,CAAA;AACvB,IAAA,MAAM,QAAQ,gBAAiB,EAAA,CAAA;AAC/B,IAAA,MAAM,QAAQ,QAAS,EAAA,CAAA;AACvB,IAAM,MAAA,cAAA,GAAiB,OAAO,gBAAgB,CAAA,CAAA;AAE9C,IAAA,MAAM,EAAE,OAAA,EAAY,GAAA,WAAA,CAAY,KAAK,CAAA,CAAA;AAErC,IAAA,MAAM,WAAW,GAAI,EAAA,CAAA;AACrB,IAAA,MAAM,WAAW,GAAI,EAAA,CAAA;AAErB,IAAM,MAAA,IAAA,GAAO,IAAI,KAAK,CAAA,CAAA;AACtB,IAAM,MAAA,MAAA,GAAS,IAAI,CAAC,CAAA,CAAA;AAEpB,IAAI,IAAA,eAAA,CAAA;AAEJ,IAAA,KAAA;AAAA,MACE,MAAM,cAAgB,IAAA,IAAA,GAAA,KAAA,CAAA,GAAA,cAAA,CAAA,aAAA;AAAA,MACtB,MAAM;AACJ,QAAW,UAAA,EAAA,CAAA;AAAA,OACb;AAAA,KACF,CAAA;AAEA,IAAU,SAAA,EAAA,CAAA;AAEV,IAAA,SAAS,SAAY,GAAA;AAEnB,MAAI,IAAA,CAAC,MAAM,IAAM,EAAA;AACf,QAAA,eAAA,GAAkB,QAAS,EAAA,CAAA;AAE3B,QAAA,WAAA,CAAY,MAAM;AAChB,UAAgB,eAAA,EAAA,CAAA;AAAA,SACjB,CAAA,CAAA;AAAA,OACI,MAAA;AAEL,QAAA,WAAA,CAAY,MAAM;AAChB,UAAA,IAAI,QAAQ,KAAO,EAAA;AACjB,YAAA,OAAA,CAAQ,KAAQ,GAAA,KAAA,CAAA;AAChB,YAAA,KAAA,CAAM,SAAS,CAAA,CAAA;AAAA,WACjB;AACA,UAAA,eAAA,GAAkB,QAAS,EAAA,CAAA;AAAA,SAC5B,CAAA,CAAA;AAED,QAAA,aAAA,CAAc,MAAM;AAClB,UAAgB,eAAA,EAAA,CAAA;AAAA,SACjB,CAAA,CAAA;AAAA,OACH;AAAA,KACF;AAEA,IAAA,SAAS,QAAW,GAAA;AAElB,MAAO,OAAA,KAAA;AAAA,QACL,MAAM,OAAQ,CAAA,KAAA;AAAA,QACd,CAAC,GAAQ,KAAA;AACP,UAAA,IAAI,GAAK,EAAA;AAEP,YAAA,KAAA,CAAM,SAAS,CAAA,CAAA;AAAA,WACjB;AAAA,SACF;AAAA,OACF,CAAA;AAAA,KACF;AAIA,IAAM,MAAA,OAAA,GAAU,IAAI,IAAI,CAAA,CAAA;AACxB,IAAA,MAAM,EAAE,MAAA,EAAQ,UAAW,EAAA,GAAI,eAAe,OAAO,CAAA,CAAA;AACrD,IAAA,KAAA;AAAA,MACE,MAAM,UAAW,CAAA,KAAA;AAAA,MACjB,MAAM;AACJ,QAAW,UAAA,EAAA,CAAA;AAAA,OACb;AAAA,KACF,CAAA;AAEA,IAAO,MAAA,CAAA,gBAAA;AAAA,MACL,QAAA;AAAA,MACA,cAAc,MAAM;AAClB,QAAW,UAAA,EAAA,CAAA;AAAA,OACZ,CAAA;AAAA,KACH,CAAA;AAGA,IAAA,SAAS,UAAa,GAAA;AACpB,MAAA,IAAA,CAAK,KAAQ,GAAA,KAAA,CAAA;AACb,MAAA,QAAA,CAAS,MAAM;;AACb,QAAO,MAAA,CAAA,KAAA,GAAA,CAAQ,EAAU,GAAA,QAAA,IAAA,IAAA,GAAA,KAAA,CAAA,GAAA,QAAA,CAAA,KAAA,KAAV,IAAiB,GAAA,KAAA,CAAA,GAAA,EAAA,CAAA,YAAA,CAAA;AAChC,QAAA,IAAA,CAAK,KAAQ,GAAA,IAAA,CAAA;AAAA,OACd,CAAA,CAAA;AAAA,KACH;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
1
+ {"version":3,"file":"List.vue2.mjs","sources":["../../../src/layout/List.vue"],"sourcesContent":["<script lang=\"ts\">\nconst marginBottom = 16\n</script>\n<script setup lang=\"ts\">\nimport {\n useSlots,\n ref,\n onActivated,\n watch,\n onDeactivated,\n onUnmounted,\n WatchStopHandle,\n inject,\n nextTick,\n watchEffect\n} from \"vue\";\nimport { useElementSize, useResizeObserver } from \"@vueuse/core\";\nimport { useSettingsStore } from \"@ditari/store\";\nimport { storeToRefs } from \"pinia\";\nimport { useRoute } from \"vue-router\";\n\nconst emits = defineEmits([\"refresh\"]);\n\nconst slots = useSlots();\nconst store = useSettingsStore();\nconst route = useRoute();\nconst configProvider = inject(\"configProvider\") as any;\n\nconst { refresh } = storeToRefs(store);\n\nconst toolsRef = ref();\nconst tableRef = ref();\n\nconst show = ref(false);\nconst height = ref(0);\n\nlet stopHandleWatch: WatchStopHandle;\n\nwatch(\n () => configProvider?.componentSize,\n () => {\n calcHeight();\n }\n);\n\nuseReload();\n// 处理标签重载\nfunction useReload() {\n // !route.meta.keepAlive\n if (!route.name) {\n stopHandleWatch = useWatch();\n // 卸载未缓存的组件\n onUnmounted(() => {\n stopHandleWatch();\n });\n } else {\n // 激活缓存页面\n onActivated(() => {\n if (refresh.value) {\n refresh.value = false;\n emits(\"refresh\");\n }\n stopHandleWatch = useWatch();\n });\n // 离开缓存页面\n onDeactivated(() => {\n stopHandleWatch();\n });\n }\n}\n\nfunction useWatch() {\n //点击了标签重载图标\n return watch(\n () => refresh.value,\n (val) => {\n if (val) {\n // 发送刷新事件到列表页面\n emits(\"refresh\");\n }\n }\n );\n}\n\n// 监听表单高度变化\n// 然后再获取表格高度\nconst formRef = ref(null);\nconst { height: formHeight } = useElementSize(formRef);\nwatch(\n () => formHeight.value,\n () => {\n calcHeight();\n },\n { immediate: true }\n);\n\nwatchEffect(() => {\n calcHeight();\n});\n\nuseResizeObserver(document.body, () => {\n calcHeight();\n});\n\n// 动态计算高度\nfunction calcHeight() {\n show.value = false;\n nextTick(() => {\n height.value = tableRef?.value?.offsetHeight;\n show.value = true;\n });\n}\n</script>\n<template>\n <div class=\"ditari-list-layout\">\n <div ref=\"contentRef\" class=\"wrapper\">\n <a-card\n ref=\"formRef\"\n :bordered=\"false\"\n :class=\"{ 'ditari-list-form': slots.form }\"\n :style=\"{ 'margin-bottom': slots.form ? marginBottom + 'px' : 0 }\"\n >\n <slot name=\"form\" />\n </a-card>\n <a-card class=\"ditari-list-table\" :bordered=\"false\">\n <div\n ref=\"toolsRef\"\n class=\"xi-tools\"\n :style=\"{ 'margin-bottom': slots.tools ? marginBottom + 'px' : 0 }\"\n >\n <a-space>\n <slot name=\"tools\"></slot>\n </a-space>\n </div>\n <div ref=\"tableRef\" style=\"flex: 1\">\n <div v-show=\"show\" style=\"height: 100%\">\n <slot name=\"table\" :height=\"height\" />\n </div>\n </div>\n </a-card>\n </div>\n <div class=\"ditari-content-extra\">\n <slot></slot>\n </div>\n </div>\n</template>\n<style></style>\n"],"names":[],"mappings":"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"}
@@ -26,7 +26,7 @@ declare const _default: import("vue").DefineComponent<{
26
26
  };
27
27
  }, {
28
28
  props: any;
29
- emits: (event: "select" | "change" | "update:value", ...args: any[]) => void;
29
+ emits: (event: "select" | "update:value" | "change", ...args: any[]) => void;
30
30
  getDicByKey: (key: string) => any;
31
31
  modelValue: any;
32
32
  data: any;
@@ -40,7 +40,7 @@ declare const _default: import("vue").DefineComponent<{
40
40
  onChange: () => void;
41
41
  };
42
42
  onFilterOption: (inputValue: any, options: any) => any;
43
- }, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, ("select" | "change" | "update:value")[], "select" | "change" | "update:value", import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{
43
+ }, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, ("select" | "update:value" | "change")[], "select" | "update:value" | "change", import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{
44
44
  value: {
45
45
  type: null;
46
46
  required: true;
@@ -263,10 +263,10 @@ const onQuery = () => {
263
263
 
264
264
  const queryParams = ref({ from: "", to: "" });
265
265
 
266
- const format = ref("YYYY-MM-DD");
267
266
  setTimeout(() => {
268
- format.value = "YYYY";
269
- }, 5000);
267
+ queryParams.value.from = "2023-02-04";
268
+ queryParams.value.to = "2023-05-06";
269
+ }, 3000);
270
270
  </script>
271
271
  <script lang="ts">
272
272
  export default {
@@ -279,13 +279,7 @@ export default {
279
279
  <d-query-form :value="formState" :scheme="scheme" @query="onQuery">
280
280
  </d-query-form>
281
281
  {{ queryParams }}
282
- <d-range-picker
283
- v-model:value="queryParams"
284
- :format="format"
285
- :value-format="format"
286
- :field="['from', 'to']"
287
- picker="year"
288
- />
282
+ <d-range-picker v-model:value="queryParams" :field="['from', 'to']" />
289
283
  </template>
290
284
  <template #table="{ height }">
291
285
  <d-table
@@ -295,25 +289,7 @@ export default {
295
289
  :expanded-row-keys="['1', '2']"
296
290
  :data="data"
297
291
  :config="config"
298
- :height="height - 200"
299
- @change="
300
- () => {
301
- console.log('change');
302
- }
303
- "
304
- >
305
- <template #action>
306
- <a-button>ok</a-button>
307
- </template>
308
- </d-table>
309
- <d-table
310
- v-model:keys="selectedRowKeys"
311
- row-key="id"
312
- :loading="loading"
313
- :expanded-row-keys="['1', '2']"
314
- :data="data"
315
- :config="config"
316
- :height="200"
292
+ :height="height"
317
293
  @change="
318
294
  () => {
319
295
  console.log('change');
@@ -324,6 +300,24 @@ export default {
324
300
  <a-button>ok</a-button>
325
301
  </template>
326
302
  </d-table>
303
+ <!-- <d-table-->
304
+ <!-- v-model:keys="selectedRowKeys"-->
305
+ <!-- row-key="id"-->
306
+ <!-- :loading="loading"-->
307
+ <!-- :expanded-row-keys="['1', '2']"-->
308
+ <!-- :data="data"-->
309
+ <!-- :config="config"-->
310
+ <!-- :height="200"-->
311
+ <!-- @change="-->
312
+ <!-- () => {-->
313
+ <!-- console.log('change');-->
314
+ <!-- }-->
315
+ <!-- "-->
316
+ <!-- >-->
317
+ <!-- <template #action>-->
318
+ <!-- <a-button>ok</a-button>-->
319
+ <!-- </template>-->
320
+ <!-- </d-table>-->
327
321
  </template>
328
322
  <!-- <TestModal v-model:visible="visible" />-->
329
323
  </d-list-layout>
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@ditari/bsui",
3
- "version": "1.1.34",
3
+ "version": "1.1.36",
4
4
  "description": "",
5
5
  "keywords": [],
6
6
  "author": "",
@@ -25,7 +25,6 @@ export default defineComponent({
25
25
  emits: ["update:value"],
26
26
  setup(props, { emit, attrs }) {
27
27
  const dates = ref<string[]>([]);
28
- const modelValue: any = ref(props.value);
29
28
 
30
29
  //内部model
31
30
  const internalModel = ref<{ [name: string]: unknown }>(props?.value || {});
@@ -45,11 +44,23 @@ export default defineComponent({
45
44
  };
46
45
 
47
46
  watchEffect(() => {
47
+ const value: any = props.value;
48
48
  props.field.forEach((key, index) => {
49
- if (modelValue[key] === "") {
49
+ if (value[key] === "") {
50
50
  dates.value && (dates.value[index] = "");
51
51
  } else {
52
- dates.value && (dates.value[index] = modelValue.value[key]);
52
+ dates.value && (dates.value[index] = value[key]);
53
+ }
54
+ });
55
+ });
56
+
57
+ watchEffect(() => {
58
+ const value: any = props.value;
59
+ props.field.forEach((key, index) => {
60
+ if (value[key] === "") {
61
+ dates.value && (dates.value[index] = "");
62
+ } else {
63
+ dates.value && (dates.value[index] = value[key]);
53
64
  }
54
65
  });
55
66
  });
@@ -8,9 +8,10 @@ import {
8
8
  onUnmounted,
9
9
  WatchStopHandle,
10
10
  inject,
11
- nextTick
11
+ nextTick,
12
+ watchEffect
12
13
  } from "vue";
13
- import { useDebounceFn, useElementSize } from "@vueuse/core";
14
+ import { useElementSize, useResizeObserver } from "@vueuse/core";
14
15
  import { useSettingsStore } from "@ditari/store";
15
16
  import { storeToRefs } from "pinia";
16
17
  import { useRoute } from "vue-router";
@@ -86,15 +87,17 @@ watch(
86
87
  () => formHeight.value,
87
88
  () => {
88
89
  calcHeight();
89
- }
90
+ },
91
+ { immediate: true }
90
92
  );
91
93
 
92
- window.addEventListener(
93
- "resize",
94
- useDebounceFn(() => {
95
- calcHeight();
96
- })
97
- );
94
+ watchEffect(() => {
95
+ calcHeight();
96
+ });
97
+
98
+ useResizeObserver(document.body, () => {
99
+ calcHeight();
100
+ });
98
101
 
99
102
  // 动态计算高度
100
103
  function calcHeight() {
@@ -104,10 +107,6 @@ function calcHeight() {
104
107
  show.value = true;
105
108
  });
106
109
  }
107
-
108
- // nextTick(() => {
109
- // calcHeight();
110
- // });
111
110
  </script>
112
111
  <template>
113
112
  <div class="ditari-list-layout">