@ibiz-template/vue3-components 0.5.7-alpha.3 → 0.5.7-alpha.5

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 (124) hide show
  1. package/dist/ibiz-markdown-editor-anJxfRF1.js +1 -0
  2. package/dist/index--KqYDzjn.js +2 -0
  3. package/dist/index.min.css +1 -1
  4. package/dist/index.system.min.js +1 -1
  5. package/dist/wang-editor-R2mUYWuB.js +1 -0
  6. package/dist/{xlsx-util-15YjErDj.js → xlsx-util-74o5wGKy.js} +1 -1
  7. package/es/common/data-import2/data-import2.mjs +7 -1
  8. package/es/common/doing-notice/doing-notice.css +1 -0
  9. package/es/common/doing-notice/doing-notice.d.ts +19 -0
  10. package/es/common/doing-notice/doing-notice.mjs +38 -0
  11. package/es/common/index.d.ts +1 -0
  12. package/es/common/index.mjs +3 -1
  13. package/es/control/dashboard/custom-dashboard-container/custom-dashboard-container.d.ts +236 -0
  14. package/es/control/dashboard/dashboard-design/dashboard-design.d.ts +2 -0
  15. package/es/control/form/form-detail/form-button/form-button.mjs +2 -1
  16. package/es/control/form/form-detail/form-mdctrl/form-mdctrl-repeater/repeater-grid/repeater-grid.d.ts +2124 -0
  17. package/es/control/grid/grid/grid-control.util.mjs +4 -0
  18. package/es/control/search-bar/filter-tree/filter-tree.d.ts +45 -14
  19. package/es/control/search-bar/filter-tree/filter-tree.mjs +42 -21
  20. package/es/control/search-bar/search-bar.mjs +8 -2
  21. package/es/editor/html/html-editor.controller.d.ts +0 -26
  22. package/es/editor/html/html-editor.controller.mjs +1 -64
  23. package/es/editor/html/wang-editor/wang-editor.mjs +1 -1
  24. package/es/editor/index.mjs +8 -0
  25. package/es/editor/markdown/ibiz-markdown-editor/ibiz-markdown-editor.mjs +5 -17
  26. package/es/editor/markdown/markdown-editor.controller.d.ts +0 -26
  27. package/es/editor/markdown/markdown-editor.controller.mjs +2 -64
  28. package/es/editor/span/span/span.d.ts +2 -0
  29. package/es/editor/text-box/ibiz-input-number/ibiz-input-number.mjs +2 -2
  30. package/es/editor/upload/upload-editor.controller.d.ts +0 -26
  31. package/es/editor/upload/upload-editor.controller.mjs +2 -64
  32. package/es/editor/upload/use/use-ibiz-upload.mjs +6 -1
  33. package/es/editor/upload/use/use-iview-upload.mjs +7 -2
  34. package/es/editor/user/ibiz-searchcond-edit/ibiz-searchcond-edit.controller.d.ts +46 -0
  35. package/es/editor/user/ibiz-searchcond-edit/ibiz-searchcond-edit.controller.mjs +93 -0
  36. package/es/editor/user/ibiz-searchcond-edit/ibiz-searchcond-edit.css +1 -0
  37. package/es/editor/user/ibiz-searchcond-edit/ibiz-searchcond-edit.d.ts +81 -0
  38. package/es/editor/user/ibiz-searchcond-edit/ibiz-searchcond-edit.mjs +187 -0
  39. package/es/editor/user/ibiz-searchcond-edit/ibiz-searchcond-edit.provider.d.ts +17 -0
  40. package/es/editor/user/ibiz-searchcond-edit/ibiz-searchcond-edit.provider.mjs +22 -0
  41. package/es/editor/user/ibiz-searchcond-edit/index.d.ts +3 -0
  42. package/es/editor/user/ibiz-searchcond-edit/index.mjs +5 -0
  43. package/es/editor/user/index.d.ts +1 -0
  44. package/es/editor/user/index.mjs +6 -0
  45. package/es/index.mjs +2 -0
  46. package/es/panel-component/user-message/async-action/async-action/async-action.d.ts +18 -4
  47. package/es/panel-component/user-message/async-action/async-action/async-action.mjs +34 -15
  48. package/es/panel-component/user-message/async-action/async-action/async-action.provider.d.ts +35 -2
  49. package/es/panel-component/user-message/async-action/async-action/async-action.provider.mjs +9 -2
  50. package/es/panel-component/user-message/async-action/async-action-tab/async-action-tab.d.ts +11 -51
  51. package/es/panel-component/user-message/async-action/async-action-tab/async-action-tab.mjs +22 -44
  52. package/es/panel-component/user-message/index.d.ts +1 -0
  53. package/es/panel-component/user-message/index.mjs +7 -0
  54. package/es/panel-component/user-message/internal-message/index.d.ts +2 -0
  55. package/es/panel-component/user-message/internal-message/index.mjs +2 -0
  56. package/es/panel-component/user-message/internal-message/internal-message-default/internal-message-default.css +1 -1
  57. package/es/panel-component/user-message/internal-message/internal-message-default/internal-message-default.mjs +6 -5
  58. package/es/panel-component/user-message/internal-message/internal-message-default/internal-message-default.provider.d.ts +19 -3
  59. package/es/panel-component/user-message/internal-message/internal-message-default/internal-message-default.provider.mjs +9 -3
  60. package/es/panel-component/user-message/internal-message/internal-message-json/internal-message-json.css +1 -0
  61. package/es/panel-component/user-message/internal-message/internal-message-json/internal-message-json.d.ts +35 -0
  62. package/es/panel-component/user-message/internal-message/internal-message-json/internal-message-json.mjs +80 -0
  63. package/es/panel-component/user-message/internal-message/internal-message-json/internal-message-json.provider.d.ts +40 -0
  64. package/es/panel-component/user-message/internal-message/internal-message-json/internal-message-json.provider.mjs +55 -0
  65. package/es/panel-component/user-message/internal-message/internal-message-tab/internal-message-tab.css +1 -1
  66. package/es/panel-component/user-message/internal-message/internal-message-tab/internal-message-tab.d.ts +10 -1
  67. package/es/panel-component/user-message/internal-message/internal-message-tab/internal-message-tab.mjs +18 -34
  68. package/es/panel-component/user-message/user-message.d.ts +1 -0
  69. package/es/panel-component/user-message/user-message.mjs +4 -0
  70. package/es/util/app-popover/app-popover-component.d.ts +4 -2
  71. package/es/util/app-popover/app-popover-component.mjs +6 -2
  72. package/es/util/index.d.ts +1 -0
  73. package/es/util/index.mjs +1 -0
  74. package/es/util/notice-util/notice-util.d.ts +13 -0
  75. package/es/util/notice-util/notice-util.mjs +62 -0
  76. package/es/util/open-view-util/open-view-util.d.ts +10 -9
  77. package/es/util/open-view-util/open-view-util.mjs +6 -6
  78. package/es/util/overlay-controller/overlay-controller.d.ts +3 -2
  79. package/lib/common/data-import2/data-import2.cjs +7 -1
  80. package/lib/common/doing-notice/doing-notice.cjs +40 -0
  81. package/lib/common/doing-notice/doing-notice.css +1 -0
  82. package/lib/common/index.cjs +3 -0
  83. package/lib/control/form/form-detail/form-button/form-button.cjs +2 -1
  84. package/lib/control/grid/grid/grid-control.util.cjs +4 -0
  85. package/lib/control/search-bar/filter-tree/filter-tree.cjs +41 -20
  86. package/lib/control/search-bar/search-bar.cjs +8 -2
  87. package/lib/editor/html/html-editor.controller.cjs +0 -63
  88. package/lib/editor/html/wang-editor/wang-editor.cjs +1 -1
  89. package/lib/editor/index.cjs +8 -0
  90. package/lib/editor/markdown/ibiz-markdown-editor/ibiz-markdown-editor.cjs +5 -17
  91. package/lib/editor/markdown/markdown-editor.controller.cjs +0 -62
  92. package/lib/editor/text-box/ibiz-input-number/ibiz-input-number.cjs +2 -2
  93. package/lib/editor/upload/upload-editor.controller.cjs +0 -62
  94. package/lib/editor/upload/use/use-ibiz-upload.cjs +6 -1
  95. package/lib/editor/upload/use/use-iview-upload.cjs +7 -2
  96. package/lib/editor/user/ibiz-searchcond-edit/ibiz-searchcond-edit.cjs +189 -0
  97. package/lib/editor/user/ibiz-searchcond-edit/ibiz-searchcond-edit.controller.cjs +95 -0
  98. package/lib/editor/user/ibiz-searchcond-edit/ibiz-searchcond-edit.css +1 -0
  99. package/lib/editor/user/ibiz-searchcond-edit/ibiz-searchcond-edit.provider.cjs +24 -0
  100. package/lib/editor/user/ibiz-searchcond-edit/index.cjs +11 -0
  101. package/lib/editor/user/index.cjs +12 -0
  102. package/lib/index.cjs +4 -0
  103. package/lib/panel-component/user-message/async-action/async-action/async-action.cjs +34 -15
  104. package/lib/panel-component/user-message/async-action/async-action/async-action.provider.cjs +9 -2
  105. package/lib/panel-component/user-message/async-action/async-action-tab/async-action-tab.cjs +20 -42
  106. package/lib/panel-component/user-message/index.cjs +7 -0
  107. package/lib/panel-component/user-message/internal-message/index.cjs +4 -0
  108. package/lib/panel-component/user-message/internal-message/internal-message-default/internal-message-default.cjs +6 -5
  109. package/lib/panel-component/user-message/internal-message/internal-message-default/internal-message-default.css +1 -1
  110. package/lib/panel-component/user-message/internal-message/internal-message-default/internal-message-default.provider.cjs +9 -3
  111. package/lib/panel-component/user-message/internal-message/internal-message-json/internal-message-json.cjs +82 -0
  112. package/lib/panel-component/user-message/internal-message/internal-message-json/internal-message-json.css +1 -0
  113. package/lib/panel-component/user-message/internal-message/internal-message-json/internal-message-json.provider.cjs +57 -0
  114. package/lib/panel-component/user-message/internal-message/internal-message-tab/internal-message-tab.cjs +17 -33
  115. package/lib/panel-component/user-message/internal-message/internal-message-tab/internal-message-tab.css +1 -1
  116. package/lib/panel-component/user-message/user-message.cjs +4 -0
  117. package/lib/util/app-popover/app-popover-component.cjs +6 -2
  118. package/lib/util/index.cjs +2 -0
  119. package/lib/util/notice-util/notice-util.cjs +64 -0
  120. package/lib/util/open-view-util/open-view-util.cjs +6 -6
  121. package/package.json +6 -6
  122. package/dist/ibiz-markdown-editor-RaswfMqH.js +0 -1
  123. package/dist/index-5ErnlgZ5.js +0 -2
  124. package/dist/wang-editor-8iEE3iXJ.js +0 -1
@@ -0,0 +1,11 @@
1
+ 'use strict';
2
+
3
+ var ibizSearchcondEdit_controller = require('./ibiz-searchcond-edit.controller.cjs');
4
+ var ibizSearchcondEdit_provider = require('./ibiz-searchcond-edit.provider.cjs');
5
+ var ibizSearchcondEdit = require('./ibiz-searchcond-edit.cjs');
6
+
7
+ "use strict";
8
+
9
+ exports.SearchCondEditEditorController = ibizSearchcondEdit_controller.SearchCondEditEditorController;
10
+ exports.SearchCondEditEditorProvider = ibizSearchcondEdit_provider.SearchCondEditEditorProvider;
11
+ exports.IBizSearchCondEdit = ibizSearchcondEdit.IBizSearchCondEdit;
@@ -0,0 +1,12 @@
1
+ 'use strict';
2
+
3
+ require('./ibiz-searchcond-edit/index.cjs');
4
+ var ibizSearchcondEdit = require('./ibiz-searchcond-edit/ibiz-searchcond-edit.cjs');
5
+ var ibizSearchcondEdit_controller = require('./ibiz-searchcond-edit/ibiz-searchcond-edit.controller.cjs');
6
+ var ibizSearchcondEdit_provider = require('./ibiz-searchcond-edit/ibiz-searchcond-edit.provider.cjs');
7
+
8
+ "use strict";
9
+
10
+ exports.IBizSearchCondEdit = ibizSearchcondEdit.IBizSearchCondEdit;
11
+ exports.SearchCondEditEditorController = ibizSearchcondEdit_controller.SearchCondEditEditorController;
12
+ exports.SearchCondEditEditorProvider = ibizSearchcondEdit_provider.SearchCondEditEditorProvider;
package/lib/index.cjs CHANGED
@@ -48,6 +48,7 @@ var index$T = require('./control/map/index.cjs');
48
48
  var index$U = require('./control/report-panel/index.cjs');
49
49
  var index$V = require('./control/gantt/index.cjs');
50
50
  var index$W = require('./control/context-menu/index.cjs');
51
+ var doingNotice = require('./common/doing-notice/doing-notice.cjs');
51
52
  var col = require('./common/col/col.cjs');
52
53
  var row = require('./common/row/row.cjs');
53
54
  var actionToolbar = require('./common/action-toolbar/action-toolbar.cjs');
@@ -120,6 +121,7 @@ var notificationUtil = require('./util/notification-util/notification-util.cjs')
120
121
  var openViewUtil = require('./util/open-view-util/open-view-util.cjs');
121
122
  var overlayController = require('./util/overlay-controller/overlay-controller.cjs');
122
123
  var usePagination = require('./util/pagination/use-pagination.cjs');
124
+ var noticeUtil = require('./util/notice-util/notice-util.cjs');
123
125
 
124
126
  "use strict";
125
127
  var index = {
@@ -216,6 +218,7 @@ exports.IBizMapControl = index$T.IBizMapControl;
216
218
  exports.IBizReportPanelControl = index$U.IBizReportPanelControl;
217
219
  exports.IBizGanttControl = index$V.IBizGanttControl;
218
220
  exports.IBizContextMenuControl = index$W.IBizContextMenuControl;
221
+ exports.DoingNotice = doingNotice.DoingNotice;
219
222
  exports.IBizCol = col.IBizCol;
220
223
  exports.IBizRow = row.IBizRow;
221
224
  exports.IBizActionToolbar = actionToolbar.IBizActionToolbar;
@@ -291,4 +294,5 @@ exports.NotificationUtil = notificationUtil.NotificationUtil;
291
294
  exports.OpenViewUtil = openViewUtil.OpenViewUtil;
292
295
  exports.OverlayController = overlayController.OverlayController;
293
296
  exports.usePagination = usePagination.usePagination;
297
+ exports.NoticeUtil = noticeUtil.NoticeUtil;
294
298
  exports.default = index;
@@ -21,40 +21,58 @@ const stateType = {
21
21
  const AsyncAction = /* @__PURE__ */ vue.defineComponent({
22
22
  name: "IBizAsyncAction",
23
23
  props: {
24
- message: {
24
+ action: {
25
+ type: Object,
26
+ required: true
27
+ },
28
+ provider: {
25
29
  type: Object,
26
30
  required: true
27
31
  }
28
32
  },
29
- setup(props) {
33
+ emits: {
34
+ close: () => true
35
+ },
36
+ setup(props, {
37
+ emit
38
+ }) {
30
39
  const ns = vue3Util.useNamespace("async-action");
31
- const hasObjResult = vue.computed(() => lodashEs.isObject(props.message.actionresult));
40
+ const hasObjResult = vue.computed(() => lodashEs.isObject(props.action.actionresult));
32
41
  const clickable = vue.computed(() => {
33
- return !props.message.actiontype || hasObjResult.value;
42
+ return !props.action.actiontype || hasObjResult.value;
34
43
  });
35
44
  const showErrorInfo = vue.computed(() => {
36
- return props.message.actiontype && lodashEs.isString(props.message.actionresult);
45
+ return props.action.actiontype && lodashEs.isString(props.action.actionresult);
37
46
  });
38
47
  const actionstate = vue.computed(() => {
39
48
  if (hasObjResult.value) {
40
- const result = props.message.actionresult;
49
+ const result = props.action.actionresult;
41
50
  const errorNum = result.total - result.success;
42
51
  if (errorNum > 0) {
43
52
  return 40;
44
53
  }
45
54
  return 30;
46
55
  }
47
- return props.message.actionstate;
56
+ return props.action.actionstate;
48
57
  });
49
58
  const progressText = vue.computed(() => {
50
- return !props.message.completionrate ? "" : "(".concat(props.message.completionrate, "%)");
59
+ return !props.action.completionrate ? "" : "(".concat(props.action.completionrate, "%)");
51
60
  });
61
+ const onClick = async (event) => {
62
+ if (props.provider.onClick) {
63
+ const isClose = await props.provider.onClick(props.action, event);
64
+ if (isClose) {
65
+ emit("close");
66
+ }
67
+ }
68
+ };
52
69
  return {
53
70
  ns,
54
71
  showErrorInfo,
55
72
  clickable,
56
73
  actionstate,
57
- progressText
74
+ progressText,
75
+ onClick
58
76
  };
59
77
  },
60
78
  render() {
@@ -62,9 +80,10 @@ const AsyncAction = /* @__PURE__ */ vue.defineComponent({
62
80
  asyncacitonname,
63
81
  begintime,
64
82
  stepinfo = "\u8FDB\u884C\u4E2D"
65
- } = this.message;
83
+ } = this.action;
66
84
  return vue.createVNode("div", {
67
- "class": [this.ns.b(), this.clickable ? this.ns.m("clickable") : ""]
85
+ "class": [this.ns.b(), this.clickable ? this.ns.m("clickable") : ""],
86
+ "onClick": this.onClick
68
87
  }, [vue.createVNode("div", {
69
88
  "class": this.ns.b("left")
70
89
  }, [vue.createVNode("ion-icon", {
@@ -74,9 +93,9 @@ const AsyncAction = /* @__PURE__ */ vue.defineComponent({
74
93
  }, [vue.createVNode("div", {
75
94
  "class": this.ns.e("caption")
76
95
  }, [asyncacitonname]), this.showErrorInfo && vue.createVNode("div", {
77
- "title": this.message.actionresult,
96
+ "title": this.action.actionresult,
78
97
  "class": this.ns.e("error-info")
79
- }, [this.message.actionresult]), this.actionstate === 20 ? vue.createVNode("div", {
98
+ }, [this.action.actionresult]), this.actionstate === 20 ? vue.createVNode("div", {
80
99
  "class": this.ns.e("progress")
81
100
  }, [stepinfo, this.progressText]) : vue.createVNode("div", {
82
101
  "class": this.ns.e("begin-time")
@@ -86,11 +105,11 @@ const AsyncAction = /* @__PURE__ */ vue.defineComponent({
86
105
  "type": stateType[this.actionstate]
87
106
  }, {
88
107
  default: () => [stateTexts[this.actionstate]]
89
- })]), this.actionstate === 20 && !!this.message.completionrate && vue.createVNode("div", {
108
+ })]), this.actionstate === 20 && !!this.action.completionrate && vue.createVNode("div", {
90
109
  "class": this.ns.b("loading-warp")
91
110
  }, [vue.createVNode("div", {
92
111
  "class": this.ns.be("loading-warp", "inner"),
93
- "style": "width:".concat(this.message.completionrate, "%;")
112
+ "style": "width:".concat(this.action.completionrate, "%;")
94
113
  }, null)])]);
95
114
  }
96
115
  });
@@ -4,6 +4,7 @@ var vue = require('vue');
4
4
  var lodashEs = require('lodash-es');
5
5
  var asyncActionPreview = require('../async-action-preview/async-action-preview.cjs');
6
6
  var asyncActionResult = require('../async-action-result/async-action-result.cjs');
7
+ var asyncAction = require('./async-action.cjs');
7
8
 
8
9
  "use strict";
9
10
  var __defProp = Object.defineProperty;
@@ -14,9 +15,15 @@ var __publicField = (obj, key, value) => {
14
15
  };
15
16
  class AsyncActionProvider {
16
17
  constructor() {
17
- __publicField(this, "component", "IBizAsyncAction");
18
+ __publicField(this, "component", asyncAction.AsyncAction);
18
19
  }
19
- onClick(asyncAction, _event) {
20
+ render(props) {
21
+ return vue.h(this.component, {
22
+ provider: this,
23
+ ...props
24
+ });
25
+ }
26
+ async onClick(asyncAction, _event) {
20
27
  if (lodashEs.isNil(asyncAction.actiontype)) {
21
28
  ibiz.overlay.modal(
22
29
  (modal) => {
@@ -4,11 +4,16 @@ var vue = require('vue');
4
4
  var vue3Util = require('@ibiz-template/vue3-util');
5
5
  var runtime = require('@ibiz-template/runtime');
6
6
  require('./async-action-tab.css');
7
+ var core = require('@ibiz-template/core');
7
8
 
8
9
  "use strict";
9
10
  const AsyncActionTab = /* @__PURE__ */ vue.defineComponent({
10
11
  name: "IBizAsyncActionTab",
11
12
  props: {
13
+ controller: {
14
+ type: Object,
15
+ required: true
16
+ },
12
17
  showPopover: {
13
18
  type: Boolean,
14
19
  required: true
@@ -21,72 +26,45 @@ const AsyncActionTab = /* @__PURE__ */ vue.defineComponent({
21
26
  emit
22
27
  }) {
23
28
  const ns = vue3Util.useNamespace("async-action-tab");
24
- const {
25
- appStore
26
- } = vue3Util.useAppStore();
27
- const showHistoryLength = vue.ref(0);
28
- const actualMsgs = vue.computed(() => {
29
- const showLength = appStore.recentAsyncActions.length + showHistoryLength.value;
30
- return appStore.allAsyncActions.filter((_, index) => {
31
- return index < showLength;
32
- });
33
- });
34
- const hiddenHistory = () => {
35
- showHistoryLength.value = 0;
36
- };
37
- const showMoreHistory = () => {
38
- showHistoryLength.value += 10;
29
+ const c = props.controller;
30
+ const allItems = vue.ref([]);
31
+ const updateData = () => {
32
+ allItems.value = core.clone(c.actions);
39
33
  };
34
+ updateData();
35
+ c.evt.on("dataChange", updateData);
40
36
  const hiddenPopover = () => {
41
37
  emit("hiddenPopover");
42
38
  };
43
- vue.watch(() => props.showPopover, (newVal, oldVal) => {
44
- if (newVal !== oldVal && newVal === false) {
45
- hiddenHistory();
46
- }
47
- });
48
39
  return {
49
40
  ns,
50
- appStore,
51
- actualMsgs,
52
- hiddenPopover,
53
- hiddenHistory,
54
- showMoreHistory
41
+ allItems,
42
+ hiddenPopover
55
43
  };
56
44
  },
57
45
  render() {
58
- const restLength = this.appStore.allAsyncActions.length - this.actualMsgs.length;
59
- const loadMoreText = this.actualMsgs.length === 0 ? "\u67E5\u770B\u5386\u53F2\uFF08".concat(restLength, "\uFF09") : "\u52A0\u8F7D\u66F4\u591A\uFF08".concat(restLength, "\uFF09");
60
46
  return vue.createVNode("div", {
61
47
  "class": [this.ns.b()]
62
- }, [this.actualMsgs.length > 0 && this.actualMsgs.map((msg) => {
48
+ }, [this.allItems.length > 0 && this.allItems.map((msg) => {
63
49
  let provider;
64
50
  try {
65
- provider = runtime.getAsyncActionProvider(msg.actiontype);
51
+ provider = runtime.getAsyncActionProvider(msg);
66
52
  } catch (error) {
67
53
  ibiz.log.error(error);
68
54
  }
69
55
  if (provider) {
70
- return vue.h(vue.resolveComponent(provider.component), {
56
+ return provider.render({
71
57
  class: this.ns.e("item"),
72
- onClick: (event) => {
73
- const isClose = provider.onClick(msg, event);
74
- if (isClose) {
75
- this.hiddenPopover();
76
- }
77
- },
78
- message: msg
58
+ action: msg,
59
+ onClose: this.hiddenPopover
79
60
  });
80
61
  }
81
62
  return vue.createVNode("div", {
82
63
  "class": this.ns.e("item")
83
64
  }, ["\u5F02\u6B65\u64CD\u4F5C\u7C7B\u578B".concat(msg.actiontype, "\u6682\u672A\u652F\u6301")]);
84
- }), this.actualMsgs.length === 0 && vue.createVNode("div", {
65
+ }), this.allItems.length === 0 && vue.createVNode("div", {
85
66
  "class": this.ns.e("nodata")
86
- }, [vue.createTextVNode("\u6682\u65E0\u901A\u77E5")]), restLength > 0 && vue.createVNode("div", {
87
- "class": this.ns.e("load-more"),
88
- "onClick": this.showMoreHistory
89
- }, [loadMoreText])]);
67
+ }, [vue.createTextVNode("\u6682\u65E0\u5F02\u6B65\u64CD\u4F5C")])]);
90
68
  }
91
69
  });
92
70
 
@@ -10,20 +10,27 @@ var userMessage_provider = require('./user-message.provider.cjs');
10
10
  require('./internal-message/index.cjs');
11
11
  var asyncAction = require('./async-action/async-action/async-action.cjs');
12
12
  var internalMessageDefault = require('./internal-message/internal-message-default/internal-message-default.cjs');
13
+ var internalMessageJson = require('./internal-message/internal-message-json/internal-message-json.cjs');
13
14
  var asyncAction_provider = require('./async-action/async-action/async-action.provider.cjs');
14
15
  var internalMessageDefault_provider = require('./internal-message/internal-message-default/internal-message-default.provider.cjs');
16
+ var internalMessageJson_provider = require('./internal-message/internal-message-json/internal-message-json.provider.cjs');
15
17
 
16
18
  "use strict";
17
19
  const IBizUserMessage = vue3Util.withInstall(userMessage.UserMessage, function(v) {
18
20
  v.component(userMessage.UserMessage.name, userMessage.UserMessage);
19
21
  v.component(asyncAction.AsyncAction.name, asyncAction.AsyncAction);
20
22
  v.component(internalMessageDefault.InternalMessageDefault.name, internalMessageDefault.InternalMessageDefault);
23
+ v.component(internalMessageJson.InternalMessageJSON.name, internalMessageJson.InternalMessageJSON);
21
24
  runtime.registerAsyncActionProvider("DEIMPORTDATA2", () => new asyncAction_provider.AsyncActionProvider());
22
25
  runtime.registerAsyncActionProvider("DEFAULT", () => new asyncAction_provider.AsyncActionProvider());
23
26
  runtime.registerInternalMessageProvider(
24
27
  "DEFAULT",
25
28
  () => new internalMessageDefault_provider.InternalMessageDefaultProvider()
26
29
  );
30
+ runtime.registerInternalMessageProvider(
31
+ "JSON",
32
+ () => new internalMessageJson_provider.InternalMessageJSONtProvider()
33
+ );
27
34
  runtime.registerPanelItemProvider(
28
35
  "RAWITEM_USERMESSAGE",
29
36
  () => new userMessage_provider.UserMessageProvider()
@@ -3,9 +3,13 @@
3
3
  var internalMessageTab = require('./internal-message-tab/internal-message-tab.cjs');
4
4
  var internalMessageDefault_provider = require('./internal-message-default/internal-message-default.provider.cjs');
5
5
  var internalMessageDefault = require('./internal-message-default/internal-message-default.cjs');
6
+ var internalMessageJson_provider = require('./internal-message-json/internal-message-json.provider.cjs');
7
+ var internalMessageJson = require('./internal-message-json/internal-message-json.cjs');
6
8
 
7
9
  "use strict";
8
10
 
9
11
  exports.InternalMessageTab = internalMessageTab.InternalMessageTab;
10
12
  exports.InternalMessageDefaultProvider = internalMessageDefault_provider.InternalMessageDefaultProvider;
11
13
  exports.InternalMessageDefault = internalMessageDefault.InternalMessageDefault;
14
+ exports.InternalMessageJSONtProvider = internalMessageJson_provider.InternalMessageJSONtProvider;
15
+ exports.InternalMessageJSON = internalMessageJson.InternalMessageJSON;
@@ -31,10 +31,10 @@ const InternalMessageDefault = /* @__PURE__ */ vue.defineComponent({
31
31
  required: true
32
32
  }
33
33
  },
34
- setup(props) {
34
+ setup() {
35
35
  const ns = vue3Util.useNamespace("internal-message");
36
36
  const clickable = vue.computed(() => {
37
- return props.message.short_content !== props.message.content;
37
+ return false;
38
38
  });
39
39
  return {
40
40
  ns,
@@ -48,6 +48,9 @@ const InternalMessageDefault = /* @__PURE__ */ vue.defineComponent({
48
48
  short_content,
49
49
  status
50
50
  } = this.message;
51
+ const content = vue.createVNode("div", {
52
+ "class": this.ns.e("short-content")
53
+ }, [short_content]);
51
54
  return vue.createVNode("div", {
52
55
  "class": [this.ns.b(), this.clickable ? this.ns.m("clickable") : ""]
53
56
  }, [vue.createVNode("div", {
@@ -63,9 +66,7 @@ const InternalMessageDefault = /* @__PURE__ */ vue.defineComponent({
63
66
  "type": stateType[status]
64
67
  }, {
65
68
  default: () => [stateTexts[status]]
66
- }), title]), vue.createVNode("div", {
67
- "class": this.ns.e("short-content")
68
- }, [short_content]), vue.createVNode("div", {
69
+ }), title]), content, vue.createVNode("div", {
69
70
  "class": this.ns.e("create-time")
70
71
  }, [create_time])]), vue.createVNode("div", {
71
72
  "class": this.ns.b("toolbar")
@@ -1 +1 @@
1
- .ibiz-internal-message{--ibiz-internal-message-loading-warp-bg-color:linear-gradient(90deg, var(--ibiz-color-primary-light-hover), var(--ibiz-color-primary));display:flex;align-items:center;justify-content:space-between;position:relative}.ibiz-internal-message--clickable{cursor:pointer}.ibiz-internal-message:hover{background-color:var(--ibiz-color-fill-1)}.ibiz-internal-message__caption{margin-bottom:8px;font-weight:var(--ibiz-font-weight-bold)}.ibiz-internal-message__short-content{margin-bottom:8px}.ibiz-internal-message__status{margin-right:8px}.ibiz-internal-message:hover .ibiz-internal-message-toolbar{display:block}.ibiz-internal-message-left{flex-grow:0;flex-shrink:0;align-self:flex-start;width:50px;font-size:var(--ibiz-font-size-header-3);text-align:center}.ibiz-internal-message-center{flex-grow:1;width:342px}.ibiz-internal-message-toolbar{position:absolute;top:0;right:0;display:none;padding:8px}.ibiz-internal-message-toolbar__button{margin-left:10px;font-size:16px;cursor:pointer}.ibiz-internal-message-toolbar__button:hover{color:var(--ibiz-color-primary)}
1
+ .ibiz-internal-message{--ibiz-internal-message-loading-warp-bg-color:linear-gradient(90deg, var(--ibiz-color-primary-light-hover), var(--ibiz-color-primary));display:flex;align-items:center;justify-content:space-between;position:relative}.ibiz-internal-message--clickable{cursor:pointer}.ibiz-internal-message__caption{margin-bottom:8px;font-weight:var(--ibiz-font-weight-bold)}.ibiz-internal-message__short-content{margin-bottom:8px}.ibiz-internal-message__status{margin-right:8px}.ibiz-internal-message-left{flex-grow:0;flex-shrink:0;align-self:flex-start;width:50px;font-size:var(--ibiz-font-size-header-3);text-align:center}.ibiz-internal-message-center{flex-grow:1;width:342px}.ibiz-internal-message-toolbar{position:absolute;top:0;right:0;display:none;padding:8px}.ibiz-internal-message-toolbar__button{margin-left:10px;font-size:16px;cursor:pointer}.ibiz-internal-message-toolbar__button:hover{color:var(--ibiz-color-primary)}
@@ -1,5 +1,8 @@
1
1
  'use strict';
2
2
 
3
+ var vue = require('vue');
4
+ var internalMessageDefault = require('./internal-message-default.cjs');
5
+
3
6
  "use strict";
4
7
  var __defProp = Object.defineProperty;
5
8
  var __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
@@ -9,10 +12,13 @@ var __publicField = (obj, key, value) => {
9
12
  };
10
13
  class InternalMessageDefaultProvider {
11
14
  constructor() {
12
- __publicField(this, "component", "IBizInternalMessageDefault");
15
+ __publicField(this, "component", internalMessageDefault.InternalMessageDefault);
13
16
  }
14
- onClick(_msg, _event) {
15
- return false;
17
+ render(props) {
18
+ return vue.h(this.component, {
19
+ provider: this,
20
+ ...props
21
+ });
16
22
  }
17
23
  }
18
24
 
@@ -0,0 +1,82 @@
1
+ 'use strict';
2
+
3
+ var vue = require('vue');
4
+ var vue3Util = require('@ibiz-template/vue3-util');
5
+ require('./internal-message-json.css');
6
+
7
+ "use strict";
8
+ const InternalMessageJSON = /* @__PURE__ */ vue.defineComponent({
9
+ name: "IBizInternalMessageJSON",
10
+ props: {
11
+ message: {
12
+ type: Object,
13
+ required: true
14
+ },
15
+ provider: {
16
+ type: Object,
17
+ required: true
18
+ }
19
+ },
20
+ emits: {
21
+ close: () => true
22
+ },
23
+ setup(props, {
24
+ emit
25
+ }) {
26
+ const ns = vue3Util.useNamespace("internal-message-json");
27
+ const jsonContent = vue.computed(() => {
28
+ if (props.message.short_content && props.message.content_type === "JSON") {
29
+ return JSON.parse(props.message.short_content);
30
+ }
31
+ return null;
32
+ });
33
+ const clickable = vue.computed(() => {
34
+ var _a;
35
+ return !!((_a = jsonContent.value) == null ? void 0 : _a.redirecturl);
36
+ });
37
+ const onClick = async (event) => {
38
+ if (props.provider.onClick) {
39
+ const isClose = await props.provider.onClick(props.message, event);
40
+ if (isClose) {
41
+ emit("close");
42
+ }
43
+ }
44
+ };
45
+ return {
46
+ ns,
47
+ clickable,
48
+ jsonContent,
49
+ onClick
50
+ };
51
+ },
52
+ render() {
53
+ var _a;
54
+ let content = null;
55
+ if ((_a = this.jsonContent) == null ? void 0 : _a.html) {
56
+ content = vue.createVNode("div", {
57
+ "class": this.ns.e("content"),
58
+ "innerHTML": this.jsonContent.html
59
+ }, null);
60
+ } else {
61
+ content = vue.createVNode("div", {
62
+ "class": this.ns.e("content")
63
+ }, [vue.createTextVNode("\u6570\u636E\u7684short_content\u91CC\u7F3A\u5C11html")]);
64
+ }
65
+ return vue.createVNode("div", {
66
+ "class": [this.ns.b(), this.clickable ? this.ns.m("clickable") : ""],
67
+ "onClick": this.onClick
68
+ }, [content, vue.createVNode("div", {
69
+ "class": this.ns.b("toolbar")
70
+ }, [vue.createVNode("ion-icon", {
71
+ "class": this.ns.be("toolbar", "button"),
72
+ "name": "timer-outline",
73
+ "title": "\u7A0D\u540E\u5904\u7406"
74
+ }, null), vue.createVNode("ion-icon", {
75
+ "class": this.ns.be("toolbar", "button"),
76
+ "name": "checkmark-done-outline",
77
+ "title": "\u5DF2\u8BFB"
78
+ }, null)])]);
79
+ }
80
+ });
81
+
82
+ exports.InternalMessageJSON = InternalMessageJSON;
@@ -0,0 +1 @@
1
+ .ibiz-internal-message-json{display:flex;flex-flow:column nowrap;position:relative}.ibiz-internal-message-json--clickable{cursor:pointer}.ibiz-internal-message-json__content{flex-grow:1}.ibiz-internal-message-json-toolbar{position:absolute;top:0;right:0;display:none;padding:8px}.ibiz-internal-message-json-toolbar__button{margin-left:10px;font-size:16px;cursor:pointer}.ibiz-internal-message-json-toolbar__button:hover{color:var(--ibiz-color-primary)}
@@ -0,0 +1,57 @@
1
+ 'use strict';
2
+
3
+ var core = require('@ibiz-template/core');
4
+ var runtime = require('@ibiz-template/runtime');
5
+ var vue = require('vue');
6
+ var internalMessageJson = require('./internal-message-json.cjs');
7
+
8
+ "use strict";
9
+ var __defProp = Object.defineProperty;
10
+ var __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
11
+ var __publicField = (obj, key, value) => {
12
+ __defNormalProp(obj, typeof key !== "symbol" ? key + "" : key, value);
13
+ return value;
14
+ };
15
+ class InternalMessageJSONtProvider {
16
+ constructor() {
17
+ __publicField(this, "component", internalMessageJson.InternalMessageJSON);
18
+ }
19
+ render(props) {
20
+ return vue.h(this.component, {
21
+ provider: this,
22
+ ...props
23
+ });
24
+ }
25
+ async onClick(msg, _event) {
26
+ if (msg.content_type === "JSON" && msg.short_content) {
27
+ const json = JSON.parse(msg.short_content);
28
+ if (json.redirecturl) {
29
+ let viewId = "";
30
+ const params = {};
31
+ const url = new URL(json.redirecturl);
32
+ if (url.searchParams.size > 0) {
33
+ url.searchParams.forEach((value, _key) => {
34
+ params[_key] = value;
35
+ });
36
+ }
37
+ const rdTagItems = url.pathname.replace("//", "").split("/");
38
+ const [appOrViewTag, viewTag] = rdTagItems;
39
+ if (viewTag) {
40
+ viewId = viewTag;
41
+ } else {
42
+ viewId = appOrViewTag;
43
+ }
44
+ ibiz.commands.execute(
45
+ runtime.OpenAppViewCommand.TAG,
46
+ viewId,
47
+ core.IBizContext.create({}),
48
+ params
49
+ );
50
+ return true;
51
+ }
52
+ }
53
+ return false;
54
+ }
55
+ }
56
+
57
+ exports.InternalMessageJSONtProvider = InternalMessageJSONtProvider;
@@ -4,11 +4,16 @@ var vue = require('vue');
4
4
  var vue3Util = require('@ibiz-template/vue3-util');
5
5
  var runtime = require('@ibiz-template/runtime');
6
6
  require('./internal-message-tab.css');
7
+ var ramda = require('ramda');
7
8
 
8
9
  "use strict";
9
10
  const InternalMessageTab = /* @__PURE__ */ vue.defineComponent({
10
11
  name: "IBizInternalMessageTab",
11
12
  props: {
13
+ controller: {
14
+ type: Object,
15
+ required: true
16
+ },
12
17
  showPopover: {
13
18
  type: Boolean,
14
19
  required: true
@@ -24,38 +29,22 @@ const InternalMessageTab = /* @__PURE__ */ vue.defineComponent({
24
29
  const hiddenPopover = () => {
25
30
  emit("hiddenPopover");
26
31
  };
32
+ const c = props.controller;
27
33
  const allItems = vue.ref([]);
28
34
  const state = vue.reactive({
29
35
  total: 0,
30
- curPage: 0,
31
- pageSize: 20
36
+ pageSize: 0
32
37
  });
33
- const load = async (params) => {
34
- const res = await ibiz.internalMessage.fetch({
35
- page: 0,
36
- size: state.pageSize,
37
- ...params
38
- });
39
- if (res.ok) {
40
- if (typeof res.total === "number") {
41
- state.total = res.total;
42
- }
43
- if (typeof res.page === "number") {
44
- state.curPage = res.page;
45
- }
46
- if (state.curPage === 0) {
47
- allItems.value = res.data;
48
- } else {
49
- allItems.value.push(...res.data);
50
- }
51
- }
38
+ const updateData = () => {
39
+ allItems.value = ramda.clone(c.messages);
40
+ state.total = c.total;
41
+ state.pageSize = c.size;
52
42
  };
43
+ updateData();
44
+ c.evt.on("dataChange", updateData);
53
45
  const showMore = () => {
54
- load({
55
- page: state.curPage + 1
56
- });
46
+ c.loadMore();
57
47
  };
58
- load();
59
48
  return {
60
49
  ns,
61
50
  allItems,
@@ -76,15 +65,10 @@ const InternalMessageTab = /* @__PURE__ */ vue.defineComponent({
76
65
  ibiz.log.error(error);
77
66
  }
78
67
  if (provider) {
79
- return vue.h(vue.resolveComponent(provider.component), {
68
+ return provider.render({
80
69
  class: this.ns.e("item"),
81
- onClick: (event) => {
82
- const isClose = provider.onClick(msg, event);
83
- if (isClose) {
84
- this.hiddenPopover();
85
- }
86
- },
87
- message: msg
70
+ message: msg,
71
+ onClose: this.hiddenPopover
88
72
  });
89
73
  }
90
74
  return vue.createVNode("div", {
@@ -1 +1 @@
1
- .ibiz-internal-message-tab{--ibiz-internal-message-tab-load-more-height:30px;width:100%;height:100%}.ibiz-internal-message-tab__item{min-height:60px;padding:6px 0}.ibiz-internal-message-tab__nodata{display:flex;align-items:center;justify-content:center;height:calc(100% - var(--ibiz-internal-message-tab-load-more-height))}.ibiz-internal-message-tab__load-more{height:var(--ibiz-internal-message-tab-load-more-height);line-height:var(--ibiz-internal-message-tab-load-more-height);text-align:center}.ibiz-internal-message-tab__load-more:hover{color:var(--ibiz-color-primary-hover);cursor:pointer}
1
+ .ibiz-internal-message-tab{--ibiz-internal-message-tab-load-more-height:30px;width:100%;height:100%}.ibiz-internal-message-tab__item{min-height:60px;padding:var(--ibiz-spacing-tight)}.ibiz-internal-message-tab__item:hover{background-color:var(--ibiz-color-fill-1)}.ibiz-internal-message-tab__nodata{display:flex;align-items:center;justify-content:center;height:calc(100% - var(--ibiz-internal-message-tab-load-more-height))}.ibiz-internal-message-tab__load-more{height:var(--ibiz-internal-message-tab-load-more-height);line-height:var(--ibiz-internal-message-tab-load-more-height);text-align:center}.ibiz-internal-message-tab__load-more:hover{color:var(--ibiz-color-primary-hover);cursor:pointer}