@fecp/mobile 1.1.29 → 1.1.31

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.
@@ -1,4 +1,4 @@
1
- import { nextTick, reactive } from "vue";
1
+ import { watch, reactive, nextTick } from "vue";
2
2
  import XEUtils from "../../../../../../../../_virtual/index.mjs";
3
3
  import { ColumnInfo } from "./columnInfo.mjs";
4
4
  import { queryElement, isScale, isPx } from "../../ui/src/dom.mjs";
@@ -253,6 +253,41 @@ function isColumnInfo(column) {
253
253
  function createColumn($xeTable, options, renderOptions) {
254
254
  return isColumnInfo(options) ? options : reactive(new ColumnInfo($xeTable, options, renderOptions));
255
255
  }
256
+ function watchColumn($xeTable, props, column) {
257
+ Object.keys(props).forEach((name) => {
258
+ watch(() => props[name], (value) => {
259
+ column.update(name, value);
260
+ if ($xeTable) {
261
+ if (name === "filters") {
262
+ $xeTable.setFilter(column, value);
263
+ $xeTable.handleUpdateDataQueue();
264
+ } else if (["visible", "fixed", "width", "minWidth", "maxWidth"].includes(name)) {
265
+ $xeTable.handleRefreshColumnQueue();
266
+ }
267
+ }
268
+ });
269
+ });
270
+ }
271
+ function assembleColumn($xeTable, elem, column, colgroup) {
272
+ const { reactData } = $xeTable;
273
+ const { staticColumns } = reactData;
274
+ const parentElem = elem.parentNode;
275
+ const parentColumn = colgroup ? colgroup.columnConfig : null;
276
+ const parentCols = parentColumn ? parentColumn.children : staticColumns;
277
+ if (parentElem && parentCols) {
278
+ parentCols.splice(XEUtils.arrayIndexOf(parentElem.children, elem), 0, column);
279
+ reactData.staticColumns = staticColumns.slice(0);
280
+ }
281
+ }
282
+ function destroyColumn($xeTable, column) {
283
+ const { reactData } = $xeTable;
284
+ const { staticColumns } = reactData;
285
+ const matchObj = XEUtils.findTree(staticColumns, (item) => item.id === column.id, { children: "children" });
286
+ if (matchObj) {
287
+ matchObj.items.splice(matchObj.index, 1);
288
+ }
289
+ reactData.staticColumns = staticColumns.slice(0);
290
+ }
256
291
  function getRootColumn($xeTable, column) {
257
292
  const { internalData } = $xeTable;
258
293
  const { fullColumnIdData } = internalData;
@@ -467,6 +502,7 @@ function colToVisible($xeTable, column, row) {
467
502
  return Promise.resolve();
468
503
  }
469
504
  export {
505
+ assembleColumn,
470
506
  calcTreeLine,
471
507
  clearTableAllStatus,
472
508
  clearTableDefaultStatus,
@@ -475,6 +511,7 @@ export {
475
511
  createColumn,
476
512
  createHandleGetRowId,
477
513
  createHandleUpdateRowId,
514
+ destroyColumn,
478
515
  encodeRowid,
479
516
  getCellHeight,
480
517
  getCellValue,
@@ -495,5 +532,6 @@ export {
495
532
  toFilters,
496
533
  toTreePathSeq,
497
534
  updateDeepRowKey,
498
- updateFastRowKey
535
+ updateFastRowKey,
536
+ watchColumn
499
537
  };
@@ -100,7 +100,7 @@ function getEventTargetNode(evnt, container, queryCls, queryMethod) {
100
100
  let targetElem;
101
101
  let target = evnt.target.shadowRoot && evnt.composed ? evnt.composedPath()[0] || evnt.target : evnt.target;
102
102
  while (target && target.nodeType && target !== document) {
103
- if (queryCls && hasClass(target, queryCls) && true) {
103
+ if (queryCls && hasClass(target, queryCls) && (!queryMethod || queryMethod(target))) {
104
104
  targetElem = target;
105
105
  } else if (target === container) {
106
106
  return { flag: queryCls ? !!targetElem : true, container, targetElem };
@@ -109,8 +109,32 @@ function getEventTargetNode(evnt, container, queryCls, queryMethod) {
109
109
  }
110
110
  return { flag: false };
111
111
  }
112
+ function getAbsolutePos(elem) {
113
+ const bounding = elem.getBoundingClientRect();
114
+ const boundingTop = bounding.top;
115
+ const boundingLeft = bounding.left;
116
+ const { scrollTop, scrollLeft, visibleHeight, visibleWidth } = getDomNode();
117
+ return { boundingTop, top: scrollTop + boundingTop, boundingLeft, left: scrollLeft + boundingLeft, visibleHeight, visibleWidth };
118
+ }
119
+ const scrollIntoViewIfNeeded = "scrollIntoViewIfNeeded";
120
+ const scrollIntoView = "scrollIntoView";
121
+ function scrollToView(elem) {
122
+ if (elem) {
123
+ if (elem[scrollIntoViewIfNeeded]) {
124
+ elem[scrollIntoViewIfNeeded]();
125
+ } else if (elem[scrollIntoView]) {
126
+ elem[scrollIntoView]();
127
+ }
128
+ }
129
+ }
130
+ function triggerEvent(targetElem, type) {
131
+ if (targetElem) {
132
+ targetElem.dispatchEvent(new Event(type));
133
+ }
134
+ }
112
135
  export {
113
136
  addClass,
137
+ getAbsolutePos,
114
138
  getDomNode,
115
139
  getEventTargetNode,
116
140
  getOffsetHeight,
@@ -124,8 +148,10 @@ export {
124
148
  isScale,
125
149
  queryElement,
126
150
  removeClass,
151
+ scrollToView,
127
152
  setScrollLeft,
128
153
  setScrollTop,
129
154
  toCssUnit,
155
+ triggerEvent,
130
156
  updateCellTitle
131
157
  };
@@ -1,4 +1,30 @@
1
1
  import XEUtils from "../../../../../../../../_virtual/index.mjs";
2
+ function getOnName(type) {
3
+ return "on" + type.substring(0, 1).toLocaleUpperCase() + type.substring(1);
4
+ }
5
+ function getModelEvent(renderOpts) {
6
+ switch (renderOpts.name) {
7
+ case "input":
8
+ case "textarea":
9
+ return "input";
10
+ case "select":
11
+ return "change";
12
+ }
13
+ return "update:modelValue";
14
+ }
15
+ function getChangeEvent(renderOpts) {
16
+ switch (renderOpts.name) {
17
+ case "input":
18
+ case "textarea":
19
+ case "VxeInput":
20
+ case "VxeNumberInput":
21
+ case "VxeTextarea":
22
+ case "$input":
23
+ case "$textarea":
24
+ return "input";
25
+ }
26
+ return "change";
27
+ }
2
28
  function getSlotVNs(vns) {
3
29
  if (vns === null || vns === void 0) {
4
30
  return [];
@@ -9,5 +35,8 @@ function getSlotVNs(vns) {
9
35
  return [vns];
10
36
  }
11
37
  export {
38
+ getChangeEvent,
39
+ getModelEvent,
40
+ getOnName,
12
41
  getSlotVNs
13
42
  };
@@ -6,13 +6,13 @@
6
6
  /* empty css */
7
7
  /* empty css */
8
8
  import { createBlock, openBlock, withCtx, createVNode, renderSlot } from "vue";
9
- /* empty css */
10
- import _export_sfc from "../../../../../../_virtual/_plugin-vue_export-helper.mjs";
11
9
  /* empty css */
12
10
  /* empty css */
13
11
  /* empty css */
14
12
  /* empty css */
15
13
  /* empty css */
14
+ /* empty css */
15
+ import _export_sfc from "../../../../../../_virtual/_plugin-vue_export-helper.mjs";
16
16
  import { SwipeCell } from "../../../../../../node_modules/.pnpm/vant@4.9.17_vue@3.5.13_typescript@5.7.3_/node_modules/vant/es/swipe-cell/index.mjs";
17
17
  import { showConfirmDialog } from "../../../../../../node_modules/.pnpm/vant@4.9.17_vue@3.5.13_typescript@5.7.3_/node_modules/vant/es/dialog/function-call.mjs";
18
18
  import "../../../../../../node_modules/.pnpm/vant@4.9.17_vue@3.5.13_typescript@5.7.3_/node_modules/vant/es/dialog/index.mjs";
@@ -3,8 +3,7 @@
3
3
  /* empty css */
4
4
  /* empty css */
5
5
  import { computed, ref, onMounted, createVNode, render, watch, nextTick, createBlock, openBlock, normalizeStyle, normalizeClass, unref, withCtx, isRef, createSlots, createElementBlock, createCommentVNode, Fragment, createElementVNode, renderList, renderSlot } from "vue";
6
- import { VxeGrid } from "../../../../../../node_modules/.pnpm/vxe-table@4.13.27_vue@3.5.13_typescript@5.7.3_/node_modules/vxe-table/es/grid/index.mjs";
7
- /* empty css */
6
+ import "../../../../../../node_modules/.pnpm/vxe-table@4.13.27_vue@3.5.13_typescript@5.7.3_/node_modules/vxe-table/es/components.mjs";
8
7
  import { useDataSource } from "../../../utils/dataSourceUtil.mjs";
9
8
  /* empty css */
10
9
  import { textFormatter, dateFormatter, cascadeFormatter, multipleFormatter, selectFormatter } from "../../../utils/formatterUtil.mjs";
@@ -18,6 +17,7 @@ import { textFormatter, dateFormatter, cascadeFormatter, multipleFormatter, sele
18
17
  /* empty css */
19
18
  /* empty css */
20
19
  import _export_sfc from "../../../../../../_virtual/_plugin-vue_export-helper.mjs";
20
+ import { VxeGrid } from "../../../../../../node_modules/.pnpm/vxe-table@4.13.27_vue@3.5.13_typescript@5.7.3_/node_modules/vxe-table/es/grid/index.mjs";
21
21
  import { SwipeCell } from "../../../../../../node_modules/.pnpm/vant@4.9.17_vue@3.5.13_typescript@5.7.3_/node_modules/vant/es/swipe-cell/index.mjs";
22
22
  import { Button } from "../../../../../../node_modules/.pnpm/vant@4.9.17_vue@3.5.13_typescript@5.7.3_/node_modules/vant/es/button/index.mjs";
23
23
  import { showConfirmDialog } from "../../../../../../node_modules/.pnpm/vant@4.9.17_vue@3.5.13_typescript@5.7.3_/node_modules/vant/es/dialog/function-call.mjs";