@ditari/bsui 1.1.26 → 1.1.28

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.28
4
+
5
+ ### Patch Changes
6
+
7
+ - upgrade version
8
+
9
+ ## 1.1.27
10
+
11
+ ### Patch Changes
12
+
13
+ - 1. 改为只见他 form 表单元素获取焦点时候的回车事件
14
+
3
15
  ## 1.1.26
4
16
 
5
17
  ### Patch Changes
@@ -3,11 +3,8 @@
3
3
  Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
5
  var vue = require('vue');
6
- var core = require('@vueuse/core');
7
6
  var antDesignVue = require('ant-design-vue');
8
7
  var iconsVue = require('@ant-design/icons-vue');
9
- var store = require('@ditari/store');
10
- var vueRouter = require('vue-router');
11
8
  var JsonSchemeRender = require('../json-scheme-render/JsonSchemeRender.cjs');
12
9
 
13
10
  var QueryForm = /* @__PURE__ */ vue.defineComponent({
@@ -35,14 +32,13 @@ var QueryForm = /* @__PURE__ */ vue.defineComponent({
35
32
  slots,
36
33
  emit
37
34
  }) {
38
- const keepStore = store.useKeepAliveStore();
39
- const route = vueRouter.useRoute();
40
35
  const {
41
36
  loading,
42
37
  modelValue,
43
38
  formRef,
44
39
  onQuery,
45
- onReset
40
+ onReset,
41
+ onKeyup
46
42
  } = useForm();
47
43
  const {
48
44
  rowRef,
@@ -58,22 +54,12 @@ var QueryForm = /* @__PURE__ */ vue.defineComponent({
58
54
  const loading2 = vue.ref(false);
59
55
  const formRef2 = vue.ref(null);
60
56
  const modelValue2 = vue.ref({});
61
- const keys = core.useMagicKeys();
62
- const enterKey = keys["enter"];
63
57
  vue.watchEffect(() => {
64
58
  modelValue2.value = props.model;
65
59
  });
66
60
  vue.watch(() => props.loading, (val) => {
67
61
  loading2.value = val;
68
62
  });
69
- vue.watch(enterKey, (v) => {
70
- if (v) {
71
- const isActive = keepStore.list.some((name) => name === route.name);
72
- if (!loading2.value && isActive) {
73
- emit("query", modelValue2.value);
74
- }
75
- }
76
- });
77
63
  const onQuery2 = () => {
78
64
  emit("query", modelValue2.value);
79
65
  };
@@ -82,12 +68,20 @@ var QueryForm = /* @__PURE__ */ vue.defineComponent({
82
68
  (_a = formRef2.value) == null ? void 0 : _a.resetFields();
83
69
  emit("reset");
84
70
  };
71
+ const onKeyup2 = (event) => {
72
+ if (event.keyCode === 13) {
73
+ if (!loading2.value) {
74
+ emit("query", modelValue2.value);
75
+ }
76
+ }
77
+ };
85
78
  return {
86
79
  loading: loading2,
87
80
  modelValue: modelValue2,
88
81
  formRef: formRef2,
89
82
  onQuery: onQuery2,
90
- onReset: onReset2
83
+ onReset: onReset2,
84
+ onKeyup: onKeyup2
91
85
  };
92
86
  }
93
87
  function useRender() {
@@ -171,7 +165,9 @@ var QueryForm = /* @__PURE__ */ vue.defineComponent({
171
165
  isExpend: isExpend2
172
166
  };
173
167
  }
174
- return () => vue.createVNode(vue.Fragment, null, [vue.createVNode(antDesignVue.Form, {
168
+ return () => vue.createVNode("div", {
169
+ "onKeyup": onKeyup
170
+ }, [vue.createVNode(antDesignVue.Form, {
175
171
  "ref": formRef,
176
172
  "colon": false,
177
173
  "labelCol": {
@@ -1 +1 @@
1
- {"version":3,"file":"DQueryForm.cjs","sources":["../../../src/form/DQueryForm.tsx"],"sourcesContent":["import { defineComponent, onMounted, ref, watch, watchEffect } from \"vue\";\nimport { useMagicKeys } from \"@vueuse/core\";\n\nimport { Form, FormItem, Row, Col, Button, Space } from \"ant-design-vue\";\nimport {\n SearchOutlined,\n ReloadOutlined,\n DoubleRightOutlined\n} from \"@ant-design/icons-vue\";\nimport { useKeepAliveStore } from \"@ditari/store\";\nimport { useRoute } from \"vue-router\";\nimport DJsonSchemeRender from \"../json-scheme-render/JsonSchemeRender\";\n\n/**\n * 查询表单渲染\n * 展开,隐藏功能\n */\nexport default defineComponent({\n name: \"DQueryForm\",\n props: {\n scheme: {\n type: [Array, Object] as unknown as () => any[] | Record<string, any>,\n default: () => []\n },\n model: {\n type: Object as () => Record<string, unknown>,\n default: () => ({})\n },\n labelWidth: {\n type: String,\n default: \"90px\"\n },\n loading: {\n type: Boolean,\n default: false\n }\n },\n emits: [\"reset\", \"query\"],\n setup(props, { slots, emit }) {\n const keepStore = useKeepAliveStore();\n const route = useRoute();\n\n // 表单\n const { loading, modelValue, formRef, onQuery, onReset } = useForm();\n // 展开\n const { rowRef, actionSpan, onExpend, expendBtnVisible, isExpend } =\n useExpand();\n //渲染操作列\n const { renderAction } = useRender();\n\n function useForm() {\n const loading = ref(false);\n const formRef = ref<any>(null);\n const modelValue = ref<any>({});\n\n const keys = useMagicKeys();\n const enterKey = keys[\"enter\"];\n\n watchEffect(() => {\n modelValue.value = props.model;\n });\n\n watch(\n () => props.loading,\n (val) => {\n loading.value = val;\n }\n );\n\n /// 监听回车事件\n watch(enterKey, (v) => {\n if (v) {\n // 有路由名字会被keepalive进行缓存\n // 用于判断当前页面是否被激活 因为页面被缓存的时候,页面切换后,回车事件依然会触发\n const isActive = keepStore.list.some((name) => name === route.name);\n if (!loading.value && isActive) {\n emit(\"query\", modelValue.value);\n }\n // TODO 逻辑有问题\n // if (!route.name) {\n // // 没有路由名字,不会被缓存\n // if (!loading.value) {\n // emit(\"query\", modelValue.value);\n // }\n // } else {\n //\n // }\n }\n });\n\n const onQuery = () => {\n emit(\"query\", modelValue.value);\n };\n\n const onReset = () => {\n formRef.value?.resetFields();\n emit(\"reset\");\n };\n return {\n loading,\n modelValue,\n formRef,\n onQuery,\n onReset\n };\n }\n\n function useRender() {\n /**\n * 操作按钮渲染\n */\n function renderAction() {\n return (\n <Space>\n <Button\n loading={loading.value}\n type={\"primary\"}\n shape={\"round\"}\n onClick={onQuery}\n >\n {{\n default: () => \"查询\",\n icon: () => <SearchOutlined />\n }}\n </Button>\n <Button disabled={loading.value} shape={\"round\"} onClick={onReset}>\n {{\n default: () => \"重置\",\n icon: () => <ReloadOutlined />\n }}\n </Button>\n {expendBtnVisible.value ? (\n <Button onClick={onExpend} shape={\"round\"}>\n {{\n default: () => (isExpend.value ? \"收起\" : \"展开\"),\n icon: () => (\n <DoubleRightOutlined rotate={isExpend.value ? -90 : 90} />\n )\n }}\n </Button>\n ) : null}\n </Space>\n );\n }\n\n return {\n renderAction\n };\n }\n\n function useExpand() {\n // 为24网格布局\n const gridCount = 24;\n // 每列占6个格子\n const colSpan = 6;\n // 每行显示4列\n const colsPerRow = 4;\n // 操作按钮span\n const actionSpan = ref(6);\n // 控制展开或隐藏按钮文本\n const isExpend = ref(false);\n // 控制展开按按钮是否显示\n const expendBtnVisible = ref(false);\n // 行对象\n const rowRef = ref<any>(null);\n\n onMounted(() => {\n handleShowOrHidden();\n });\n\n function onExpend() {\n isExpend.value = !isExpend.value;\n handleShowOrHidden();\n }\n\n /**\n * 处理隐藏或显示\n */\n function handleShowOrHidden() {\n const colEl = Array.from(rowRef.value?.$el?.children);\n // col总条数 减掉操作栏按钮的div个数为1\n const colElLen = colEl.length - 1;\n // 已占用的网格数 = col总条数 * 每列占用的网格数\n const occupiedCols = colElLen * colSpan;\n // 总行数 = 总div数 / 每行显示的列数\n const fullRows = Math.ceil(colElLen / colsPerRow);\n // 最后一行的网格数 = 已占用的网格数 % 24\n const lastRowCols = occupiedCols % gridCount;\n // 最后一行剩余的网格数\n const remainingCols = gridCount - lastRowCols;\n\n // 网格行大于2才显示展开或隐藏按钮\n if (fullRows > 2) {\n expendBtnVisible.value = true;\n } else {\n // 如果没有大于两行,操作栏占用剩余的宽度\n actionSpan.value = remainingCols;\n }\n // 最后一行的起始索引\n const lastRowStartIndex = colsPerRow * (fullRows - 1) - 1;\n // 只有展开按钮显示时才处理\n if (expendBtnVisible.value) {\n colEl.forEach((col: any, index) => {\n if (index >= lastRowStartIndex) {\n // 最后一个元素不隐藏 是操作按钮的div\n index !== colElLen\n ? (col.style.display = !isExpend.value ? \"none\" : \"block\")\n : null; // 隐藏元素\n }\n });\n }\n\n if (expendBtnVisible.value) {\n // 如果是展开状态 则操作按钮占用剩余的网格数 否则占用6个网格\n isExpend.value\n ? (actionSpan.value = remainingCols)\n : (actionSpan.value = colSpan);\n }\n }\n\n return {\n rowRef,\n actionSpan,\n onExpend,\n expendBtnVisible,\n isExpend\n };\n }\n\n return () => (\n <>\n <Form\n ref={formRef}\n colon={false}\n labelCol={{ style: { width: props.labelWidth } }}\n model={modelValue.value}\n >\n <Row ref={rowRef}>\n {slots.default ? (\n slots.default()\n ) : (\n <DJsonSchemeRender\n layout={props.scheme}\n value={modelValue.value}\n />\n )}\n <Col span={actionSpan.value} style={{ textAlign: \"right\" }}>\n <FormItem>\n {slots.action ? slots.action() : renderAction()}\n </FormItem>\n </Col>\n </Row>\n </Form>\n </>\n );\n }\n});\n"],"names":["defineComponent","name","props","scheme","type","Array","Object","default","model","labelWidth","String","loading","Boolean","emits","setup","slots","emit","keepStore","useKeepAliveStore","route","useRoute","modelValue","formRef","onQuery","onReset","useForm","rowRef","actionSpan","onExpend","expendBtnVisible","isExpend","useExpand","renderAction","useRender","ref","keys","useMagicKeys","enterKey","watchEffect","value","watch","val","v","isActive","list","some","resetFields","_createVNode","Space","Button","icon","SearchOutlined","ReloadOutlined","DoubleRightOutlined","gridCount","colSpan","colsPerRow","onMounted","handleShowOrHidden","colEl","from","$el","children","colElLen","length","occupiedCols","fullRows","Math","ceil","lastRowCols","remainingCols","lastRowStartIndex","forEach","col","index","style","display","_Fragment","Form","width","Row","DJsonSchemeRender","Col","textAlign","FormItem","action"],"mappings":";;;;;;;;;;;;AAiBA,gCAA+BA,mBAAA,CAAA;AAAA,EAC7BC,IAAM,EAAA,YAAA;AAAA,EACNC,KAAO,EAAA;AAAA,IACLC,MAAQ,EAAA;AAAA,MACNC,IAAAA,EAAM,CAACC,KAAAA,EAAOC,MAAM,CAAA;AAAA,MACpBC,OAAAA,EAASA,MAAM,EAAA;AAAA,KACjB;AAAA,IACAC,KAAO,EAAA;AAAA,MACLJ,IAAME,EAAAA,MAAAA;AAAAA,MACNC,OAAAA,EAASA,OAAO,EAAC,CAAA;AAAA,KACnB;AAAA,IACAE,UAAY,EAAA;AAAA,MACVL,IAAMM,EAAAA,MAAAA;AAAAA,MACNH,OAAS,EAAA,MAAA;AAAA,KACX;AAAA,IACAI,OAAS,EAAA;AAAA,MACPP,IAAMQ,EAAAA,OAAAA;AAAAA,MACNL,OAAS,EAAA,KAAA;AAAA,KACX;AAAA,GACF;AAAA,EACAM,KAAAA,EAAO,CAAC,OAAA,EAAS,OAAO,CAAA;AAAA,EACxBC,MAAMZ,KAAO,EAAA;AAAA,IAAEa,KAAAA;AAAAA,IAAOC,IAAAA;AAAAA,GAAQ,EAAA;AAC5B,IAAA,MAAMC,YAAYC,uBAAkB,EAAA,CAAA;AACpC,IAAA,MAAMC,QAAQC,kBAAS,EAAA,CAAA;AAGvB,IAAM,MAAA;AAAA,MAAET,OAAAA;AAAAA,MAASU,UAAAA;AAAAA,MAAYC,OAAAA;AAAAA,MAASC,OAAAA;AAAAA,MAASC,OAAAA;AAAAA,QAAYC,OAAQ,EAAA,CAAA;AAEnE,IAAM,MAAA;AAAA,MAAEC,MAAAA;AAAAA,MAAQC,UAAAA;AAAAA,MAAYC,QAAAA;AAAAA,MAAUC,gBAAAA;AAAAA,MAAkBC,QAAAA;AAAAA,QACtDC,SAAU,EAAA,CAAA;AAEZ,IAAM,MAAA;AAAA,MAAEC,YAAAA;AAAAA,QAAiBC,SAAU,EAAA,CAAA;AAEnC,IAAA,SAASR,OAAU,GAAA;AACjB,MAAMd,MAAAA,QAAAA,GAAUuB,QAAI,KAAK,CAAA,CAAA;AACzB,MAAMZ,MAAAA,QAAAA,GAAUY,QAAS,IAAI,CAAA,CAAA;AAC7B,MAAMb,MAAAA,WAAAA,GAAaa,OAAS,CAAA,EAAE,CAAA,CAAA;AAE9B,MAAA,MAAMC,OAAOC,iBAAa,EAAA,CAAA;AAC1B,MAAMC,MAAAA,QAAAA,GAAWF,KAAK,OAAO,CAAA,CAAA;AAE7BG,MAAAA,eAAAA,CAAY,MAAM;AAChBjB,QAAAA,WAAAA,CAAWkB,QAAQrC,KAAMM,CAAAA,KAAAA,CAAAA;AAAAA,OAC1B,CAAA,CAAA;AAEDgC,MACEA,SAAA,CAAA,MAAMtC,KAAMS,CAAAA,OAAAA,EACX8B,CAAQ,GAAA,KAAA;AACP9B,QAAAA,SAAQ4B,KAAQE,GAAAA,GAAAA,CAAAA;AAAAA,OAEpB,CAAA,CAAA;AAGAD,MAAAA,SAAAA,CAAMH,UAAWK,CAAM,CAAA,KAAA;AACrB,QAAA,IAAIA,CAAG,EAAA;AAGL,UAAA,MAAMC,WAAW1B,SAAU2B,CAAAA,IAAAA,CAAKC,KAAM5C,CAASA,IAAAA,KAAAA,IAAAA,KAASkB,MAAMlB,IAAI,CAAA,CAAA;AAClE,UAAI,IAAA,CAACU,QAAQ4B,CAAAA,KAAAA,IAASI,QAAU,EAAA;AAC9B3B,YAAK,IAAA,CAAA,OAAA,EAASK,YAAWkB,KAAK,CAAA,CAAA;AAAA,WAChC;AAAA,SAUF;AAAA,OACD,CAAA,CAAA;AAED,MAAA,MAAMhB,WAAUA,MAAM;AACpBP,QAAK,IAAA,CAAA,OAAA,EAASK,YAAWkB,KAAK,CAAA,CAAA;AAAA,OAChC,CAAA;AAEA,MAAA,MAAMf,WAAUA,MAAM;;AACpBF,QAAAA,CAAAA,EAAAA,GAAAA,QAAAA,CAAQiB,UAARjB,IAAewB,GAAAA,KAAAA,CAAAA,GAAAA,EAAAA,CAAAA,WAAAA,EAAAA,CAAAA;AACf9B,QAAAA,IAAAA,CAAK,OAAO,CAAA,CAAA;AAAA,OACd,CAAA;AACA,MAAO,OAAA;AAAA,QACLL,OAAAA,EAAAA,QAAAA;AAAAA,QACAU,UAAAA,EAAAA,WAAAA;AAAAA,QACAC,OAAAA,EAAAA,QAAAA;AAAAA,QACAC,OAAAA,EAAAA,QAAAA;AAAAA,QACAC,OAAAA,EAAAA,QAAAA;AAAAA,OACF,CAAA;AAAA,KACF;AAEA,IAAA,SAASS,SAAY,GAAA;AAInB,MAAA,SAASD,aAAe,GAAA;AACtB,QAAAe,OAAAA,eAAAA,CAAAC,oBAAA,IAAA,EAAA;AAAA,UAAAzC,OAAAA,EAAAA,MAAAwC,CAAAA,eAAAA,CAAAE,mBAAA,EAAA;AAAA,YAAA,WAGetC,OAAQ4B,CAAAA,KAAAA;AAAAA,YAAK,MAChB,EAAA,SAAA;AAAA,YAAS,OACR,EAAA,OAAA;AAAA,YAAO,SACLhB,EAAAA,OAAAA;AAAAA,WAAO,EAAA;AAAA,YAGdhB,SAASA,MAAM,cAAA;AAAA,YACf2C,IAAMA,EAAAA,MAAAH,eAAAI,CAAAA,uBAAAA,EAAA,MAAA,IAAA,CAAA;AAAA,WAAwBJ,CAAAA,EAAAA,eAAAA,CAAAE,mBAAA,EAAA;AAAA,YAAA,YAGhBtC,OAAQ4B,CAAAA,KAAAA;AAAAA,YAAK,OAAS,EAAA,OAAA;AAAA,YAAO,SAAWf,EAAAA,OAAAA;AAAAA,WAAO,EAAA;AAAA,YAE7DjB,SAASA,MAAM,cAAA;AAAA,YACf2C,IAAMA,EAAAA,MAAAH,eAAAK,CAAAA,uBAAAA,EAAA,MAAA,IAAA,CAAA;AAAA,WAAwB,CAAA,EAGjCvB,gBAAiBU,CAAAA,KAAAA,GAAKQ,gBAAAE,mBAAA,EAAA;AAAA,YAAA,SACJrB,EAAAA,QAAAA;AAAAA,YAAQ,OAAS,EAAA,OAAA;AAAA,WAAO,EAAA;AAAA,YAErCrB,OAASA,EAAAA,MAAOuB,QAASS,CAAAA,KAAAA,GAAQ,cAAO,GAAA,cAAA;AAAA,YACxCW,IAAAA,EAAMA,MAAAH,eAAAA,CAAAM,4BAAA,EAAA;AAAA,cAAA,QAAA,EACyBvB,QAASS,CAAAA,KAAAA,GAAQ,CAAM,EAAA,GAAA,EAAA;AAAA,eAAE,IAAA,CAAA;AAAA,WACvD,IAGH,IAAI,CAAA;AAAA,SAAA,CAAA,CAAA;AAAA,OAGd;AAEA,MAAO,OAAA;AAAA,QACLP,YAAAA,EAAAA,aAAAA;AAAAA,OACF,CAAA;AAAA,KACF;AAEA,IAAA,SAASD,SAAY,GAAA;AAEnB,MAAA,MAAMuB,SAAY,GAAA,EAAA,CAAA;AAElB,MAAA,MAAMC,OAAU,GAAA,CAAA,CAAA;AAEhB,MAAA,MAAMC,UAAa,GAAA,CAAA,CAAA;AAEnB,MAAM7B,MAAAA,WAAAA,GAAaO,QAAI,CAAC,CAAA,CAAA;AAExB,MAAMJ,MAAAA,SAAAA,GAAWI,QAAI,KAAK,CAAA,CAAA;AAE1B,MAAML,MAAAA,iBAAAA,GAAmBK,QAAI,KAAK,CAAA,CAAA;AAElC,MAAMR,MAAAA,OAAAA,GAASQ,QAAS,IAAI,CAAA,CAAA;AAE5BuB,MAAAA,aAAAA,CAAU,MAAM;AACdC,QAAmB,kBAAA,EAAA,CAAA;AAAA,OACpB,CAAA,CAAA;AAED,MAAA,SAAS9B,SAAW,GAAA;AAClBE,QAAAA,SAAAA,CAASS,KAAQ,GAAA,CAACT,SAASS,CAAAA,KAAAA,CAAAA;AAC3BmB,QAAmB,kBAAA,EAAA,CAAA;AAAA,OACrB;AAKA,MAAA,SAASA,kBAAqB,GAAA;;AAC5B,QAAMC,MAAAA,KAAAA,GAAQtD,MAAMuD,IAAKlC,CAAAA,CAAAA,EAAAA,GAAAA,CAAAA,EAAAA,GAAAA,QAAOa,KAAPb,KAAAA,IAAAA,GAAAA,KAAAA,CAAAA,GAAAA,EAAAA,CAAcmC,GAAdnC,KAAAA,IAAAA,GAAAA,KAAAA,CAAAA,GAAAA,EAAAA,CAAmBoC,QAAQ,CAAA,CAAA;AAEpD,QAAMC,MAAAA,QAAAA,GAAWJ,MAAMK,MAAS,GAAA,CAAA,CAAA;AAEhC,QAAA,MAAMC,eAAeF,QAAWR,GAAAA,OAAAA,CAAAA;AAEhC,QAAA,MAAMW,QAAWC,GAAAA,IAAAA,CAAKC,IAAKL,CAAAA,QAAAA,GAAWP,UAAU,CAAA,CAAA;AAEhD,QAAA,MAAMa,cAAcJ,YAAeX,GAAAA,SAAAA,CAAAA;AAEnC,QAAA,MAAMgB,gBAAgBhB,SAAYe,GAAAA,WAAAA,CAAAA;AAGlC,QAAA,IAAIH,WAAW,CAAG,EAAA;AAChBrC,UAAAA,kBAAiBU,KAAQ,GAAA,IAAA,CAAA;AAAA,SACpB,MAAA;AAELZ,UAAAA,YAAWY,KAAQ+B,GAAAA,aAAAA,CAAAA;AAAAA,SACrB;AAEA,QAAMC,MAAAA,iBAAAA,GAAoBf,UAAcU,IAAAA,QAAAA,GAAW,CAAK,CAAA,GAAA,CAAA,CAAA;AAExD,QAAA,IAAIrC,kBAAiBU,KAAO,EAAA;AAC1BoB,UAAMa,KAAAA,CAAAA,OAAAA,CAAQ,CAACC,GAAAA,EAAUC,KAAU,KAAA;AACjC,YAAA,IAAIA,SAASH,iBAAmB,EAAA;AAE9BG,cAAUX,KAAAA,KAAAA,QAAAA,GACLU,IAAIE,KAAMC,CAAAA,OAAAA,GAAU,CAAC9C,SAASS,CAAAA,KAAAA,GAAQ,SAAS,OAChD,GAAA,IAAA,CAAA;AAAA,aACN;AAAA,WACD,CAAA,CAAA;AAAA,SACH;AAEA,QAAA,IAAIV,kBAAiBU,KAAO,EAAA;AAE1BT,UAAAA,UAASS,KACJZ,GAAAA,WAAAA,CAAWY,KAAQ+B,GAAAA,aAAAA,GACnB3C,YAAWY,KAAQgB,GAAAA,OAAAA,CAAAA;AAAAA,SAC1B;AAAA,OACF;AAEA,MAAO,OAAA;AAAA,QACL7B,MAAAA,EAAAA,OAAAA;AAAAA,QACAC,UAAAA,EAAAA,WAAAA;AAAAA,QACAC,QAAAA,EAAAA,SAAAA;AAAAA,QACAC,gBAAAA,EAAAA,iBAAAA;AAAAA,QACAC,QAAAA,EAAAA,SAAAA;AAAAA,OACF,CAAA;AAAA,KACF;AAEA,IAAA,OAAO,MAAAiB,eAAA8B,CAAAA,YAAAA,EAAA9B,IAAAA,EAAAA,CAAAA,gBAAA+B,iBAAA,EAAA;AAAA,MAAA,KAGIxD,EAAAA,OAAAA;AAAAA,MAAO,OACL,EAAA,KAAA;AAAA,MAAK,UACF,EAAA;AAAA,QAAEqD,KAAO,EAAA;AAAA,UAAEI,OAAO7E,KAAMO,CAAAA,UAAAA;AAAAA,SAAW;AAAA,OAAE;AAAA,MAAC,SACzCY,UAAWkB,CAAAA,KAAAA;AAAAA,KAAK,EAAA;AAAA,MAAAhC,OAAAA,EAAAA,MAAAwC,CAAAA,eAAAA,CAAAiC,gBAAA,EAAA;AAAA,QAAA,KAEbtD,EAAAA,MAAAA;AAAAA,OAAM,EAAA;AAAA,QAAAnB,OAAAA,EAAAA,MACbQ,CAAAA,KAAAA,CAAMR,UACLQ,KAAMR,CAAAA,OAAAA,EAASwC,GAAAA,eAAAA,CAAAkC,wBAAA,EAAA;AAAA,UAAA,UAGL/E,KAAMC,CAAAA,MAAAA;AAAAA,UAAM,SACbkB,UAAWkB,CAAAA,KAAAA;AAAAA,SAErB,EAAA,IAAA,CAAAQ,EAAAA,eAAAA,CAAAmC,gBAAA,EAAA;AAAA,UAAA,QACUvD,UAAWY,CAAAA,KAAAA;AAAAA,UAAK,OAAS,EAAA;AAAA,YAAE4C,SAAW,EAAA,OAAA;AAAA,WAAQ;AAAA,SAAC,EAAA;AAAA,UAAA5E,OAAAA,EAAAA,MAAAwC,CAAAA,eAAAA,CAAAqC,uBAAA,IAAA,EAAA;AAAA,YAAA7E,OAAAA,EAAAA,MAErDQ,CAAAA,KAAAA,CAAMsE,SAAStE,KAAMsE,CAAAA,MAAAA,EAAWrD,GAAAA,YAAAA,EAAc,CAAA;AAAA,WAAA,CAAA,CAAA;AAAA,SAAA,CAAA,CAAA;AAAA,OAAA,CAAA,CAAA;AAAA,KAM1D,CAAA,CAAA,CAAA,CAAA;AAAA,GACH;AACF,CAAC,CAAA;;;;"}
1
+ {"version":3,"file":"DQueryForm.cjs","sources":["../../../src/form/DQueryForm.tsx"],"sourcesContent":["import { defineComponent, onMounted, ref, watch, watchEffect } from \"vue\";\nimport { Form, FormItem, Row, Col, Button, Space } from \"ant-design-vue\";\nimport {\n SearchOutlined,\n ReloadOutlined,\n DoubleRightOutlined\n} from \"@ant-design/icons-vue\";\nimport DJsonSchemeRender from \"../json-scheme-render/JsonSchemeRender\";\n\n/**\n * 查询表单渲染\n * 展开,隐藏功能\n */\nexport default defineComponent({\n name: \"DQueryForm\",\n props: {\n scheme: {\n type: [Array, Object] as unknown as () => any[] | Record<string, any>,\n default: () => []\n },\n model: {\n type: Object as () => Record<string, unknown>,\n default: () => ({})\n },\n labelWidth: {\n type: String,\n default: \"90px\"\n },\n loading: {\n type: Boolean,\n default: false\n }\n },\n emits: [\"reset\", \"query\"],\n setup(props, { slots, emit }) {\n // 表单\n const { loading, modelValue, formRef, onQuery, onReset, onKeyup } =\n useForm();\n // 展开\n const { rowRef, actionSpan, onExpend, expendBtnVisible, isExpend } =\n useExpand();\n //渲染操作列\n const { renderAction } = useRender();\n\n function useForm() {\n const loading = ref(false);\n const formRef = ref<any>(null);\n const modelValue = ref<any>({});\n\n watchEffect(() => {\n modelValue.value = props.model;\n });\n\n watch(\n () => props.loading,\n (val) => {\n loading.value = val;\n }\n );\n\n /// 监听回车事件\n // watch(enterKey, (v) => {\n // if (v) {\n // // 有路由名字会被keepalive进行缓存\n // // 用于判断当前页面是否被激活 因为页面被缓存的时候,页面切换后,回车事件依然会触发\n // const isActive = keepStore.list.some((name) => name === route.name);\n // console.log(route.name);\n // if (!loading.value && isActive) {\n // emit(\"query\", modelValue.value);\n // }\n // //TODO 逻辑有问题\n // if (!route.name) {\n // // 没有路由名字,不会被缓存\n // if (!loading.value) {\n // emit(\"query\", modelValue.value);\n // }\n // } else {\n //\n // }\n // }\n // });\n\n const onQuery = () => {\n emit(\"query\", modelValue.value);\n };\n\n const onReset = () => {\n formRef.value?.resetFields();\n emit(\"reset\");\n };\n\n const onKeyup = (event: any) => {\n if (event.keyCode === 13) {\n if (!loading.value) {\n emit(\"query\", modelValue.value);\n }\n }\n };\n return {\n loading,\n modelValue,\n formRef,\n onQuery,\n onReset,\n onKeyup\n };\n }\n\n function useRender() {\n /**\n * 操作按钮渲染\n */\n function renderAction() {\n return (\n <Space>\n <Button\n loading={loading.value}\n type={\"primary\"}\n shape={\"round\"}\n onClick={onQuery}\n >\n {{\n default: () => \"查询\",\n icon: () => <SearchOutlined />\n }}\n </Button>\n <Button disabled={loading.value} shape={\"round\"} onClick={onReset}>\n {{\n default: () => \"重置\",\n icon: () => <ReloadOutlined />\n }}\n </Button>\n {expendBtnVisible.value ? (\n <Button onClick={onExpend} shape={\"round\"}>\n {{\n default: () => (isExpend.value ? \"收起\" : \"展开\"),\n icon: () => (\n <DoubleRightOutlined rotate={isExpend.value ? -90 : 90} />\n )\n }}\n </Button>\n ) : null}\n </Space>\n );\n }\n\n return {\n renderAction\n };\n }\n\n function useExpand() {\n // 为24网格布局\n const gridCount = 24;\n // 每列占6个格子\n const colSpan = 6;\n // 每行显示4列\n const colsPerRow = 4;\n // 操作按钮span\n const actionSpan = ref(6);\n // 控制展开或隐藏按钮文本\n const isExpend = ref(false);\n // 控制展开按按钮是否显示\n const expendBtnVisible = ref(false);\n // 行对象\n const rowRef = ref<any>(null);\n\n onMounted(() => {\n handleShowOrHidden();\n });\n\n function onExpend() {\n isExpend.value = !isExpend.value;\n handleShowOrHidden();\n }\n\n /**\n * 处理隐藏或显示\n */\n function handleShowOrHidden() {\n const colEl = Array.from(rowRef.value?.$el?.children);\n // col总条数 减掉操作栏按钮的div个数为1\n const colElLen = colEl.length - 1;\n // 已占用的网格数 = col总条数 * 每列占用的网格数\n const occupiedCols = colElLen * colSpan;\n // 总行数 = 总div数 / 每行显示的列数\n const fullRows = Math.ceil(colElLen / colsPerRow);\n // 最后一行的网格数 = 已占用的网格数 % 24\n const lastRowCols = occupiedCols % gridCount;\n // 最后一行剩余的网格数\n const remainingCols = gridCount - lastRowCols;\n\n // 网格行大于2才显示展开或隐藏按钮\n if (fullRows > 2) {\n expendBtnVisible.value = true;\n } else {\n // 如果没有大于两行,操作栏占用剩余的宽度\n actionSpan.value = remainingCols;\n }\n // 最后一行的起始索引\n const lastRowStartIndex = colsPerRow * (fullRows - 1) - 1;\n // 只有展开按钮显示时才处理\n if (expendBtnVisible.value) {\n colEl.forEach((col: any, index) => {\n if (index >= lastRowStartIndex) {\n // 最后一个元素不隐藏 是操作按钮的div\n index !== colElLen\n ? (col.style.display = !isExpend.value ? \"none\" : \"block\")\n : null; // 隐藏元素\n }\n });\n }\n\n if (expendBtnVisible.value) {\n // 如果是展开状态 则操作按钮占用剩余的网格数 否则占用6个网格\n isExpend.value\n ? (actionSpan.value = remainingCols)\n : (actionSpan.value = colSpan);\n }\n }\n\n return {\n rowRef,\n actionSpan,\n onExpend,\n expendBtnVisible,\n isExpend\n };\n }\n\n return () => (\n <div onKeyup={onKeyup}>\n <Form\n ref={formRef}\n colon={false}\n labelCol={{ style: { width: props.labelWidth } }}\n model={modelValue.value}\n >\n <Row ref={rowRef}>\n {slots.default ? (\n slots.default()\n ) : (\n <DJsonSchemeRender\n layout={props.scheme}\n value={modelValue.value}\n />\n )}\n <Col span={actionSpan.value} style={{ textAlign: \"right\" }}>\n <FormItem>\n {slots.action ? slots.action() : renderAction()}\n </FormItem>\n </Col>\n </Row>\n </Form>\n </div>\n );\n }\n});\n"],"names":["defineComponent","name","props","scheme","type","Array","Object","default","model","labelWidth","String","loading","Boolean","emits","setup","slots","emit","modelValue","formRef","onQuery","onReset","onKeyup","useForm","rowRef","actionSpan","onExpend","expendBtnVisible","isExpend","useExpand","renderAction","useRender","ref","watchEffect","value","watch","val","resetFields","event","keyCode","_createVNode","Space","Button","icon","SearchOutlined","ReloadOutlined","DoubleRightOutlined","gridCount","colSpan","colsPerRow","onMounted","handleShowOrHidden","colEl","from","$el","children","colElLen","length","occupiedCols","fullRows","Math","ceil","lastRowCols","remainingCols","lastRowStartIndex","forEach","col","index","style","display","Form","width","Row","DJsonSchemeRender","Col","textAlign","FormItem","action"],"mappings":"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"}
@@ -9,6 +9,7 @@ declare const _default: {
9
9
  fill?: boolean | undefined;
10
10
  className?: string | undefined;
11
11
  grid?: string | undefined;
12
+ style?: unknown;
12
13
  key?: string | number | symbol | undefined;
13
14
  ref?: import("vue").VNodeRef | undefined;
14
15
  ref_for?: boolean | undefined;
@@ -52,7 +53,6 @@ declare const _default: {
52
53
  [key: string]: any;
53
54
  }>) => void)[] | undefined;
54
55
  class?: unknown;
55
- style?: unknown;
56
56
  };
57
57
  $attrs: {
58
58
  [x: string]: unknown;
@@ -35,8 +35,8 @@ declare const _default: import("vue").DefineComponent<{
35
35
  }>> & {
36
36
  "onUpdate:visible"?: ((...args: any[]) => any) | undefined;
37
37
  }, {
38
- width: number;
39
38
  title: string;
39
+ width: number;
40
40
  visible: boolean;
41
41
  destroyOnClose: boolean;
42
42
  }, {}>;
@@ -26,7 +26,7 @@ declare const _default: import("vue").DefineComponent<{
26
26
  };
27
27
  }, {
28
28
  props: any;
29
- emits: (event: "change" | "select" | "update:value", ...args: any[]) => void;
29
+ emits: (event: "select" | "change" | "update:value", ...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, ("change" | "select" | "update:value")[], "change" | "select" | "update:value", import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{
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<{
44
44
  value: {
45
45
  type: null;
46
46
  required: true;
@@ -1,9 +1,6 @@
1
- import { defineComponent, ref, watchEffect, watch, createVNode, onMounted, Fragment } from 'vue';
2
- import { useMagicKeys } from '@vueuse/core';
1
+ import { defineComponent, ref, watchEffect, watch, createVNode, onMounted } from 'vue';
3
2
  import { Space, Button, Form, Row, Col, FormItem } from 'ant-design-vue';
4
3
  import { SearchOutlined, ReloadOutlined, DoubleRightOutlined } from '@ant-design/icons-vue';
5
- import { useKeepAliveStore } from '@ditari/store';
6
- import { useRoute } from 'vue-router';
7
4
  import JsonSchemeRender from '../json-scheme-render/JsonSchemeRender.mjs';
8
5
 
9
6
  var QueryForm = /* @__PURE__ */ defineComponent({
@@ -31,14 +28,13 @@ var QueryForm = /* @__PURE__ */ defineComponent({
31
28
  slots,
32
29
  emit
33
30
  }) {
34
- const keepStore = useKeepAliveStore();
35
- const route = useRoute();
36
31
  const {
37
32
  loading,
38
33
  modelValue,
39
34
  formRef,
40
35
  onQuery,
41
- onReset
36
+ onReset,
37
+ onKeyup
42
38
  } = useForm();
43
39
  const {
44
40
  rowRef,
@@ -54,22 +50,12 @@ var QueryForm = /* @__PURE__ */ defineComponent({
54
50
  const loading2 = ref(false);
55
51
  const formRef2 = ref(null);
56
52
  const modelValue2 = ref({});
57
- const keys = useMagicKeys();
58
- const enterKey = keys["enter"];
59
53
  watchEffect(() => {
60
54
  modelValue2.value = props.model;
61
55
  });
62
56
  watch(() => props.loading, (val) => {
63
57
  loading2.value = val;
64
58
  });
65
- watch(enterKey, (v) => {
66
- if (v) {
67
- const isActive = keepStore.list.some((name) => name === route.name);
68
- if (!loading2.value && isActive) {
69
- emit("query", modelValue2.value);
70
- }
71
- }
72
- });
73
59
  const onQuery2 = () => {
74
60
  emit("query", modelValue2.value);
75
61
  };
@@ -78,12 +64,20 @@ var QueryForm = /* @__PURE__ */ defineComponent({
78
64
  (_a = formRef2.value) == null ? void 0 : _a.resetFields();
79
65
  emit("reset");
80
66
  };
67
+ const onKeyup2 = (event) => {
68
+ if (event.keyCode === 13) {
69
+ if (!loading2.value) {
70
+ emit("query", modelValue2.value);
71
+ }
72
+ }
73
+ };
81
74
  return {
82
75
  loading: loading2,
83
76
  modelValue: modelValue2,
84
77
  formRef: formRef2,
85
78
  onQuery: onQuery2,
86
- onReset: onReset2
79
+ onReset: onReset2,
80
+ onKeyup: onKeyup2
87
81
  };
88
82
  }
89
83
  function useRender() {
@@ -167,7 +161,9 @@ var QueryForm = /* @__PURE__ */ defineComponent({
167
161
  isExpend: isExpend2
168
162
  };
169
163
  }
170
- return () => createVNode(Fragment, null, [createVNode(Form, {
164
+ return () => createVNode("div", {
165
+ "onKeyup": onKeyup
166
+ }, [createVNode(Form, {
171
167
  "ref": formRef,
172
168
  "colon": false,
173
169
  "labelCol": {
@@ -1 +1 @@
1
- {"version":3,"file":"DQueryForm.mjs","sources":["../../../src/form/DQueryForm.tsx"],"sourcesContent":["import { defineComponent, onMounted, ref, watch, watchEffect } from \"vue\";\nimport { useMagicKeys } from \"@vueuse/core\";\n\nimport { Form, FormItem, Row, Col, Button, Space } from \"ant-design-vue\";\nimport {\n SearchOutlined,\n ReloadOutlined,\n DoubleRightOutlined\n} from \"@ant-design/icons-vue\";\nimport { useKeepAliveStore } from \"@ditari/store\";\nimport { useRoute } from \"vue-router\";\nimport DJsonSchemeRender from \"../json-scheme-render/JsonSchemeRender\";\n\n/**\n * 查询表单渲染\n * 展开,隐藏功能\n */\nexport default defineComponent({\n name: \"DQueryForm\",\n props: {\n scheme: {\n type: [Array, Object] as unknown as () => any[] | Record<string, any>,\n default: () => []\n },\n model: {\n type: Object as () => Record<string, unknown>,\n default: () => ({})\n },\n labelWidth: {\n type: String,\n default: \"90px\"\n },\n loading: {\n type: Boolean,\n default: false\n }\n },\n emits: [\"reset\", \"query\"],\n setup(props, { slots, emit }) {\n const keepStore = useKeepAliveStore();\n const route = useRoute();\n\n // 表单\n const { loading, modelValue, formRef, onQuery, onReset } = useForm();\n // 展开\n const { rowRef, actionSpan, onExpend, expendBtnVisible, isExpend } =\n useExpand();\n //渲染操作列\n const { renderAction } = useRender();\n\n function useForm() {\n const loading = ref(false);\n const formRef = ref<any>(null);\n const modelValue = ref<any>({});\n\n const keys = useMagicKeys();\n const enterKey = keys[\"enter\"];\n\n watchEffect(() => {\n modelValue.value = props.model;\n });\n\n watch(\n () => props.loading,\n (val) => {\n loading.value = val;\n }\n );\n\n /// 监听回车事件\n watch(enterKey, (v) => {\n if (v) {\n // 有路由名字会被keepalive进行缓存\n // 用于判断当前页面是否被激活 因为页面被缓存的时候,页面切换后,回车事件依然会触发\n const isActive = keepStore.list.some((name) => name === route.name);\n if (!loading.value && isActive) {\n emit(\"query\", modelValue.value);\n }\n // TODO 逻辑有问题\n // if (!route.name) {\n // // 没有路由名字,不会被缓存\n // if (!loading.value) {\n // emit(\"query\", modelValue.value);\n // }\n // } else {\n //\n // }\n }\n });\n\n const onQuery = () => {\n emit(\"query\", modelValue.value);\n };\n\n const onReset = () => {\n formRef.value?.resetFields();\n emit(\"reset\");\n };\n return {\n loading,\n modelValue,\n formRef,\n onQuery,\n onReset\n };\n }\n\n function useRender() {\n /**\n * 操作按钮渲染\n */\n function renderAction() {\n return (\n <Space>\n <Button\n loading={loading.value}\n type={\"primary\"}\n shape={\"round\"}\n onClick={onQuery}\n >\n {{\n default: () => \"查询\",\n icon: () => <SearchOutlined />\n }}\n </Button>\n <Button disabled={loading.value} shape={\"round\"} onClick={onReset}>\n {{\n default: () => \"重置\",\n icon: () => <ReloadOutlined />\n }}\n </Button>\n {expendBtnVisible.value ? (\n <Button onClick={onExpend} shape={\"round\"}>\n {{\n default: () => (isExpend.value ? \"收起\" : \"展开\"),\n icon: () => (\n <DoubleRightOutlined rotate={isExpend.value ? -90 : 90} />\n )\n }}\n </Button>\n ) : null}\n </Space>\n );\n }\n\n return {\n renderAction\n };\n }\n\n function useExpand() {\n // 为24网格布局\n const gridCount = 24;\n // 每列占6个格子\n const colSpan = 6;\n // 每行显示4列\n const colsPerRow = 4;\n // 操作按钮span\n const actionSpan = ref(6);\n // 控制展开或隐藏按钮文本\n const isExpend = ref(false);\n // 控制展开按按钮是否显示\n const expendBtnVisible = ref(false);\n // 行对象\n const rowRef = ref<any>(null);\n\n onMounted(() => {\n handleShowOrHidden();\n });\n\n function onExpend() {\n isExpend.value = !isExpend.value;\n handleShowOrHidden();\n }\n\n /**\n * 处理隐藏或显示\n */\n function handleShowOrHidden() {\n const colEl = Array.from(rowRef.value?.$el?.children);\n // col总条数 减掉操作栏按钮的div个数为1\n const colElLen = colEl.length - 1;\n // 已占用的网格数 = col总条数 * 每列占用的网格数\n const occupiedCols = colElLen * colSpan;\n // 总行数 = 总div数 / 每行显示的列数\n const fullRows = Math.ceil(colElLen / colsPerRow);\n // 最后一行的网格数 = 已占用的网格数 % 24\n const lastRowCols = occupiedCols % gridCount;\n // 最后一行剩余的网格数\n const remainingCols = gridCount - lastRowCols;\n\n // 网格行大于2才显示展开或隐藏按钮\n if (fullRows > 2) {\n expendBtnVisible.value = true;\n } else {\n // 如果没有大于两行,操作栏占用剩余的宽度\n actionSpan.value = remainingCols;\n }\n // 最后一行的起始索引\n const lastRowStartIndex = colsPerRow * (fullRows - 1) - 1;\n // 只有展开按钮显示时才处理\n if (expendBtnVisible.value) {\n colEl.forEach((col: any, index) => {\n if (index >= lastRowStartIndex) {\n // 最后一个元素不隐藏 是操作按钮的div\n index !== colElLen\n ? (col.style.display = !isExpend.value ? \"none\" : \"block\")\n : null; // 隐藏元素\n }\n });\n }\n\n if (expendBtnVisible.value) {\n // 如果是展开状态 则操作按钮占用剩余的网格数 否则占用6个网格\n isExpend.value\n ? (actionSpan.value = remainingCols)\n : (actionSpan.value = colSpan);\n }\n }\n\n return {\n rowRef,\n actionSpan,\n onExpend,\n expendBtnVisible,\n isExpend\n };\n }\n\n return () => (\n <>\n <Form\n ref={formRef}\n colon={false}\n labelCol={{ style: { width: props.labelWidth } }}\n model={modelValue.value}\n >\n <Row ref={rowRef}>\n {slots.default ? (\n slots.default()\n ) : (\n <DJsonSchemeRender\n layout={props.scheme}\n value={modelValue.value}\n />\n )}\n <Col span={actionSpan.value} style={{ textAlign: \"right\" }}>\n <FormItem>\n {slots.action ? slots.action() : renderAction()}\n </FormItem>\n </Col>\n </Row>\n </Form>\n </>\n );\n }\n});\n"],"names":["name","props","scheme","type","Array","Object","default","model","labelWidth","String","loading","Boolean","emits","setup","slots","emit","keepStore","useKeepAliveStore","route","useRoute","modelValue","formRef","onQuery","onReset","useForm","rowRef","actionSpan","onExpend","expendBtnVisible","isExpend","useExpand","renderAction","useRender","ref","keys","useMagicKeys","enterKey","watchEffect","value","watch","val","v","isActive","list","some","resetFields","_createVNode","Space","Button","icon","SearchOutlined","ReloadOutlined","DoubleRightOutlined","gridCount","colSpan","colsPerRow","onMounted","handleShowOrHidden","colEl","from","$el","children","colElLen","length","occupiedCols","fullRows","Math","ceil","lastRowCols","remainingCols","lastRowStartIndex","forEach","col","index","style","display","_Fragment","Form","width","Row","DJsonSchemeRender","Col","textAlign","FormItem","action"],"mappings":"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"}
1
+ {"version":3,"file":"DQueryForm.mjs","sources":["../../../src/form/DQueryForm.tsx"],"sourcesContent":["import { defineComponent, onMounted, ref, watch, watchEffect } from \"vue\";\nimport { Form, FormItem, Row, Col, Button, Space } from \"ant-design-vue\";\nimport {\n SearchOutlined,\n ReloadOutlined,\n DoubleRightOutlined\n} from \"@ant-design/icons-vue\";\nimport DJsonSchemeRender from \"../json-scheme-render/JsonSchemeRender\";\n\n/**\n * 查询表单渲染\n * 展开,隐藏功能\n */\nexport default defineComponent({\n name: \"DQueryForm\",\n props: {\n scheme: {\n type: [Array, Object] as unknown as () => any[] | Record<string, any>,\n default: () => []\n },\n model: {\n type: Object as () => Record<string, unknown>,\n default: () => ({})\n },\n labelWidth: {\n type: String,\n default: \"90px\"\n },\n loading: {\n type: Boolean,\n default: false\n }\n },\n emits: [\"reset\", \"query\"],\n setup(props, { slots, emit }) {\n // 表单\n const { loading, modelValue, formRef, onQuery, onReset, onKeyup } =\n useForm();\n // 展开\n const { rowRef, actionSpan, onExpend, expendBtnVisible, isExpend } =\n useExpand();\n //渲染操作列\n const { renderAction } = useRender();\n\n function useForm() {\n const loading = ref(false);\n const formRef = ref<any>(null);\n const modelValue = ref<any>({});\n\n watchEffect(() => {\n modelValue.value = props.model;\n });\n\n watch(\n () => props.loading,\n (val) => {\n loading.value = val;\n }\n );\n\n /// 监听回车事件\n // watch(enterKey, (v) => {\n // if (v) {\n // // 有路由名字会被keepalive进行缓存\n // // 用于判断当前页面是否被激活 因为页面被缓存的时候,页面切换后,回车事件依然会触发\n // const isActive = keepStore.list.some((name) => name === route.name);\n // console.log(route.name);\n // if (!loading.value && isActive) {\n // emit(\"query\", modelValue.value);\n // }\n // //TODO 逻辑有问题\n // if (!route.name) {\n // // 没有路由名字,不会被缓存\n // if (!loading.value) {\n // emit(\"query\", modelValue.value);\n // }\n // } else {\n //\n // }\n // }\n // });\n\n const onQuery = () => {\n emit(\"query\", modelValue.value);\n };\n\n const onReset = () => {\n formRef.value?.resetFields();\n emit(\"reset\");\n };\n\n const onKeyup = (event: any) => {\n if (event.keyCode === 13) {\n if (!loading.value) {\n emit(\"query\", modelValue.value);\n }\n }\n };\n return {\n loading,\n modelValue,\n formRef,\n onQuery,\n onReset,\n onKeyup\n };\n }\n\n function useRender() {\n /**\n * 操作按钮渲染\n */\n function renderAction() {\n return (\n <Space>\n <Button\n loading={loading.value}\n type={\"primary\"}\n shape={\"round\"}\n onClick={onQuery}\n >\n {{\n default: () => \"查询\",\n icon: () => <SearchOutlined />\n }}\n </Button>\n <Button disabled={loading.value} shape={\"round\"} onClick={onReset}>\n {{\n default: () => \"重置\",\n icon: () => <ReloadOutlined />\n }}\n </Button>\n {expendBtnVisible.value ? (\n <Button onClick={onExpend} shape={\"round\"}>\n {{\n default: () => (isExpend.value ? \"收起\" : \"展开\"),\n icon: () => (\n <DoubleRightOutlined rotate={isExpend.value ? -90 : 90} />\n )\n }}\n </Button>\n ) : null}\n </Space>\n );\n }\n\n return {\n renderAction\n };\n }\n\n function useExpand() {\n // 为24网格布局\n const gridCount = 24;\n // 每列占6个格子\n const colSpan = 6;\n // 每行显示4列\n const colsPerRow = 4;\n // 操作按钮span\n const actionSpan = ref(6);\n // 控制展开或隐藏按钮文本\n const isExpend = ref(false);\n // 控制展开按按钮是否显示\n const expendBtnVisible = ref(false);\n // 行对象\n const rowRef = ref<any>(null);\n\n onMounted(() => {\n handleShowOrHidden();\n });\n\n function onExpend() {\n isExpend.value = !isExpend.value;\n handleShowOrHidden();\n }\n\n /**\n * 处理隐藏或显示\n */\n function handleShowOrHidden() {\n const colEl = Array.from(rowRef.value?.$el?.children);\n // col总条数 减掉操作栏按钮的div个数为1\n const colElLen = colEl.length - 1;\n // 已占用的网格数 = col总条数 * 每列占用的网格数\n const occupiedCols = colElLen * colSpan;\n // 总行数 = 总div数 / 每行显示的列数\n const fullRows = Math.ceil(colElLen / colsPerRow);\n // 最后一行的网格数 = 已占用的网格数 % 24\n const lastRowCols = occupiedCols % gridCount;\n // 最后一行剩余的网格数\n const remainingCols = gridCount - lastRowCols;\n\n // 网格行大于2才显示展开或隐藏按钮\n if (fullRows > 2) {\n expendBtnVisible.value = true;\n } else {\n // 如果没有大于两行,操作栏占用剩余的宽度\n actionSpan.value = remainingCols;\n }\n // 最后一行的起始索引\n const lastRowStartIndex = colsPerRow * (fullRows - 1) - 1;\n // 只有展开按钮显示时才处理\n if (expendBtnVisible.value) {\n colEl.forEach((col: any, index) => {\n if (index >= lastRowStartIndex) {\n // 最后一个元素不隐藏 是操作按钮的div\n index !== colElLen\n ? (col.style.display = !isExpend.value ? \"none\" : \"block\")\n : null; // 隐藏元素\n }\n });\n }\n\n if (expendBtnVisible.value) {\n // 如果是展开状态 则操作按钮占用剩余的网格数 否则占用6个网格\n isExpend.value\n ? (actionSpan.value = remainingCols)\n : (actionSpan.value = colSpan);\n }\n }\n\n return {\n rowRef,\n actionSpan,\n onExpend,\n expendBtnVisible,\n isExpend\n };\n }\n\n return () => (\n <div onKeyup={onKeyup}>\n <Form\n ref={formRef}\n colon={false}\n labelCol={{ style: { width: props.labelWidth } }}\n model={modelValue.value}\n >\n <Row ref={rowRef}>\n {slots.default ? (\n slots.default()\n ) : (\n <DJsonSchemeRender\n layout={props.scheme}\n value={modelValue.value}\n />\n )}\n <Col span={actionSpan.value} style={{ textAlign: \"right\" }}>\n <FormItem>\n {slots.action ? slots.action() : renderAction()}\n </FormItem>\n </Col>\n </Row>\n </Form>\n </div>\n );\n }\n});\n"],"names":["name","props","scheme","type","Array","Object","default","model","labelWidth","String","loading","Boolean","emits","setup","slots","emit","modelValue","formRef","onQuery","onReset","onKeyup","useForm","rowRef","actionSpan","onExpend","expendBtnVisible","isExpend","useExpand","renderAction","useRender","ref","watchEffect","value","watch","val","resetFields","event","keyCode","_createVNode","Space","Button","icon","SearchOutlined","ReloadOutlined","DoubleRightOutlined","gridCount","colSpan","colsPerRow","onMounted","handleShowOrHidden","colEl","from","$el","children","colElLen","length","occupiedCols","fullRows","Math","ceil","lastRowCols","remainingCols","lastRowStartIndex","forEach","col","index","style","display","Form","width","Row","DJsonSchemeRender","Col","textAlign","FormItem","action"],"mappings":"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"}
@@ -9,6 +9,7 @@ declare const _default: {
9
9
  fill?: boolean | undefined;
10
10
  className?: string | undefined;
11
11
  grid?: string | undefined;
12
+ style?: unknown;
12
13
  key?: string | number | symbol | undefined;
13
14
  ref?: import("vue").VNodeRef | undefined;
14
15
  ref_for?: boolean | undefined;
@@ -52,7 +53,6 @@ declare const _default: {
52
53
  [key: string]: any;
53
54
  }>) => void)[] | undefined;
54
55
  class?: unknown;
55
- style?: unknown;
56
56
  };
57
57
  $attrs: {
58
58
  [x: string]: unknown;
@@ -35,8 +35,8 @@ declare const _default: import("vue").DefineComponent<{
35
35
  }>> & {
36
36
  "onUpdate:visible"?: ((...args: any[]) => any) | undefined;
37
37
  }, {
38
- width: number;
39
38
  title: string;
39
+ width: number;
40
40
  visible: boolean;
41
41
  destroyOnClose: boolean;
42
42
  }, {}>;
@@ -26,7 +26,7 @@ declare const _default: import("vue").DefineComponent<{
26
26
  };
27
27
  }, {
28
28
  props: any;
29
- emits: (event: "change" | "select" | "update:value", ...args: any[]) => void;
29
+ emits: (event: "select" | "change" | "update:value", ...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, ("change" | "select" | "update:value")[], "change" | "select" | "update:value", import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{
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<{
44
44
  value: {
45
45
  type: null;
46
46
  required: true;
@@ -16,14 +16,6 @@ const route: RouteRecordRaw[] = [
16
16
  keepOpen: true
17
17
  }
18
18
  },
19
- {
20
- path: "dyn/demo",
21
- component: () => import("../../views/form/dyn/List.vue"),
22
- meta: {
23
- title: "动态表单",
24
- keepOpen: true
25
- }
26
- }
27
19
  ]
28
20
  }
29
21
  ];
@@ -1,9 +1,16 @@
1
1
  <script setup lang="ts">
2
2
 
3
-
3
+ const onQuery = ()=>{
4
+ console.log("formQuery")
5
+ }
4
6
  </script>
5
7
  <template>
6
8
  <div>
7
- <dy-com />
9
+ <d-list-layout>
10
+ <template #form>
11
+ <d-query-form @query="onQuery">
12
+ </d-query-form>
13
+ </template>
14
+ </d-list-layout>
8
15
  </div>
9
16
  </template>
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@ditari/bsui",
3
- "version": "1.1.26",
3
+ "version": "1.1.28",
4
4
  "description": "",
5
5
  "keywords": [],
6
6
  "author": "",
@@ -1,14 +1,10 @@
1
1
  import { defineComponent, onMounted, ref, watch, watchEffect } from "vue";
2
- import { useMagicKeys } from "@vueuse/core";
3
-
4
2
  import { Form, FormItem, Row, Col, Button, Space } from "ant-design-vue";
5
3
  import {
6
4
  SearchOutlined,
7
5
  ReloadOutlined,
8
6
  DoubleRightOutlined
9
7
  } from "@ant-design/icons-vue";
10
- import { useKeepAliveStore } from "@ditari/store";
11
- import { useRoute } from "vue-router";
12
8
  import DJsonSchemeRender from "../json-scheme-render/JsonSchemeRender";
13
9
 
14
10
  /**
@@ -37,11 +33,9 @@ export default defineComponent({
37
33
  },
38
34
  emits: ["reset", "query"],
39
35
  setup(props, { slots, emit }) {
40
- const keepStore = useKeepAliveStore();
41
- const route = useRoute();
42
-
43
36
  // 表单
44
- const { loading, modelValue, formRef, onQuery, onReset } = useForm();
37
+ const { loading, modelValue, formRef, onQuery, onReset, onKeyup } =
38
+ useForm();
45
39
  // 展开
46
40
  const { rowRef, actionSpan, onExpend, expendBtnVisible, isExpend } =
47
41
  useExpand();
@@ -53,9 +47,6 @@ export default defineComponent({
53
47
  const formRef = ref<any>(null);
54
48
  const modelValue = ref<any>({});
55
49
 
56
- const keys = useMagicKeys();
57
- const enterKey = keys["enter"];
58
-
59
50
  watchEffect(() => {
60
51
  modelValue.value = props.model;
61
52
  });
@@ -68,25 +59,26 @@ export default defineComponent({
68
59
  );
69
60
 
70
61
  /// 监听回车事件
71
- watch(enterKey, (v) => {
72
- if (v) {
73
- // 有路由名字会被keepalive进行缓存
74
- // 用于判断当前页面是否被激活 因为页面被缓存的时候,页面切换后,回车事件依然会触发
75
- const isActive = keepStore.list.some((name) => name === route.name);
76
- if (!loading.value && isActive) {
77
- emit("query", modelValue.value);
78
- }
79
- // TODO 逻辑有问题
80
- // if (!route.name) {
81
- // // 没有路由名字,不会被缓存
82
- // if (!loading.value) {
83
- // emit("query", modelValue.value);
84
- // }
85
- // } else {
86
- //
87
- // }
88
- }
89
- });
62
+ // watch(enterKey, (v) => {
63
+ // if (v) {
64
+ // // 有路由名字会被keepalive进行缓存
65
+ // // 用于判断当前页面是否被激活 因为页面被缓存的时候,页面切换后,回车事件依然会触发
66
+ // const isActive = keepStore.list.some((name) => name === route.name);
67
+ // console.log(route.name);
68
+ // if (!loading.value && isActive) {
69
+ // emit("query", modelValue.value);
70
+ // }
71
+ // //TODO 逻辑有问题
72
+ // if (!route.name) {
73
+ // // 没有路由名字,不会被缓存
74
+ // if (!loading.value) {
75
+ // emit("query", modelValue.value);
76
+ // }
77
+ // } else {
78
+ //
79
+ // }
80
+ // }
81
+ // });
90
82
 
91
83
  const onQuery = () => {
92
84
  emit("query", modelValue.value);
@@ -96,12 +88,21 @@ export default defineComponent({
96
88
  formRef.value?.resetFields();
97
89
  emit("reset");
98
90
  };
91
+
92
+ const onKeyup = (event: any) => {
93
+ if (event.keyCode === 13) {
94
+ if (!loading.value) {
95
+ emit("query", modelValue.value);
96
+ }
97
+ }
98
+ };
99
99
  return {
100
100
  loading,
101
101
  modelValue,
102
102
  formRef,
103
103
  onQuery,
104
- onReset
104
+ onReset,
105
+ onKeyup
105
106
  };
106
107
  }
107
108
 
@@ -228,7 +229,7 @@ export default defineComponent({
228
229
  }
229
230
 
230
231
  return () => (
231
- <>
232
+ <div onKeyup={onKeyup}>
232
233
  <Form
233
234
  ref={formRef}
234
235
  colon={false}
@@ -251,7 +252,7 @@ export default defineComponent({
251
252
  </Col>
252
253
  </Row>
253
254
  </Form>
254
- </>
255
+ </div>
255
256
  );
256
257
  }
257
258
  });