@ibiz-template/vue3-components 0.5.7-alpha.2 → 0.5.7-alpha.4

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 (123) hide show
  1. package/dist/ibiz-markdown-editor-anJxfRF1.js +1 -0
  2. package/dist/index-knHzHtox.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-BE5Eyj1T.js → xlsx-util-kzUgnbtt.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/common/view-message/view-message.css +1 -0
  14. package/es/common/view-message/view-message.d.ts +1 -0
  15. package/es/common/view-message/view-message.mjs +2 -0
  16. package/es/control/drbar/drbar.controller.d.ts +8 -1
  17. package/es/control/drbar/drbar.controller.mjs +17 -6
  18. package/es/control/tree-grid-ex/tree-grid-ex-column/tree-grid-ex-ua-column/tree-grid-ex-ua-column.mjs +4 -3
  19. package/es/editor/data-picker/ibiz-picker/ibiz-picker.mjs +6 -1
  20. package/es/editor/data-picker/ibiz-picker-dropdown/ibiz-picker-dropdown.mjs +46 -38
  21. package/es/editor/dropdown-list/ibiz-dropdown/ibiz-dropdown.mjs +4 -5
  22. package/es/editor/html/html-editor.controller.d.ts +0 -26
  23. package/es/editor/html/html-editor.controller.mjs +1 -64
  24. package/es/editor/html/wang-editor/wang-editor.mjs +1 -1
  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/text-box/input/input.mjs +3 -0
  29. package/es/editor/upload/upload-editor.controller.d.ts +0 -26
  30. package/es/editor/upload/upload-editor.controller.mjs +2 -64
  31. package/es/editor/upload/use/use-ibiz-upload.mjs +6 -1
  32. package/es/editor/upload/use/use-iview-upload.mjs +7 -2
  33. package/es/index.mjs +2 -0
  34. package/es/panel-component/index.mjs +2 -0
  35. package/es/panel-component/panel-button/index.d.ts +1 -0
  36. package/es/panel-component/panel-button/panel-button.d.ts +1 -0
  37. package/es/panel-component/panel-button/panel-button.mjs +4 -1
  38. package/es/panel-component/user-message/async-action/async-action/async-action.d.ts +18 -4
  39. package/es/panel-component/user-message/async-action/async-action/async-action.mjs +34 -15
  40. package/es/panel-component/user-message/async-action/async-action/async-action.provider.d.ts +35 -2
  41. package/es/panel-component/user-message/async-action/async-action/async-action.provider.mjs +9 -2
  42. package/es/panel-component/user-message/async-action/async-action-tab/async-action-tab.d.ts +11 -51
  43. package/es/panel-component/user-message/async-action/async-action-tab/async-action-tab.mjs +22 -44
  44. package/es/panel-component/user-message/index.d.ts +1 -0
  45. package/es/panel-component/user-message/index.mjs +7 -0
  46. package/es/panel-component/user-message/internal-message/index.d.ts +2 -0
  47. package/es/panel-component/user-message/internal-message/index.mjs +2 -0
  48. package/es/panel-component/user-message/internal-message/internal-message-default/internal-message-default.css +1 -1
  49. package/es/panel-component/user-message/internal-message/internal-message-default/internal-message-default.mjs +6 -5
  50. package/es/panel-component/user-message/internal-message/internal-message-default/internal-message-default.provider.d.ts +19 -3
  51. package/es/panel-component/user-message/internal-message/internal-message-default/internal-message-default.provider.mjs +9 -3
  52. package/es/panel-component/user-message/internal-message/internal-message-json/internal-message-json.css +1 -0
  53. package/es/panel-component/user-message/internal-message/internal-message-json/internal-message-json.d.ts +35 -0
  54. package/es/panel-component/user-message/internal-message/internal-message-json/internal-message-json.mjs +80 -0
  55. package/es/panel-component/user-message/internal-message/internal-message-json/internal-message-json.provider.d.ts +40 -0
  56. package/es/panel-component/user-message/internal-message/internal-message-json/internal-message-json.provider.mjs +55 -0
  57. package/es/panel-component/user-message/internal-message/internal-message-tab/internal-message-tab.css +1 -1
  58. package/es/panel-component/user-message/internal-message/internal-message-tab/internal-message-tab.d.ts +10 -1
  59. package/es/panel-component/user-message/internal-message/internal-message-tab/internal-message-tab.mjs +18 -34
  60. package/es/panel-component/user-message/user-message.d.ts +1 -0
  61. package/es/panel-component/user-message/user-message.mjs +6 -1
  62. package/es/panel-component/view-message/index.d.ts +24 -0
  63. package/es/panel-component/view-message/index.mjs +15 -0
  64. package/es/panel-component/view-message/view-message.d.ts +26 -0
  65. package/es/panel-component/view-message/view-message.mjs +46 -0
  66. package/es/panel-component/view-message/view-message.provider.d.ts +15 -0
  67. package/es/panel-component/view-message/view-message.provider.mjs +21 -0
  68. package/es/util/app-popover/app-popover-component.d.ts +4 -2
  69. package/es/util/app-popover/app-popover-component.mjs +6 -2
  70. package/es/util/index.d.ts +1 -0
  71. package/es/util/index.mjs +1 -0
  72. package/es/util/notice-util/notice-util.d.ts +13 -0
  73. package/es/util/notice-util/notice-util.mjs +62 -0
  74. package/es/util/open-view-util/open-view-util.d.ts +10 -9
  75. package/es/util/open-view-util/open-view-util.mjs +6 -6
  76. package/es/util/overlay-controller/overlay-controller.d.ts +3 -2
  77. package/lib/common/data-import2/data-import2.cjs +7 -1
  78. package/lib/common/doing-notice/doing-notice.cjs +40 -0
  79. package/lib/common/doing-notice/doing-notice.css +1 -0
  80. package/lib/common/index.cjs +3 -0
  81. package/lib/common/view-message/view-message.cjs +2 -0
  82. package/lib/common/view-message/view-message.css +1 -0
  83. package/lib/control/drbar/drbar.controller.cjs +17 -6
  84. package/lib/control/tree-grid-ex/tree-grid-ex-column/tree-grid-ex-ua-column/tree-grid-ex-ua-column.cjs +4 -3
  85. package/lib/editor/data-picker/ibiz-picker/ibiz-picker.cjs +6 -1
  86. package/lib/editor/data-picker/ibiz-picker-dropdown/ibiz-picker-dropdown.cjs +45 -37
  87. package/lib/editor/dropdown-list/ibiz-dropdown/ibiz-dropdown.cjs +4 -5
  88. package/lib/editor/html/html-editor.controller.cjs +0 -63
  89. package/lib/editor/html/wang-editor/wang-editor.cjs +1 -1
  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/input/input.cjs +3 -0
  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/index.cjs +4 -0
  97. package/lib/panel-component/index.cjs +2 -0
  98. package/lib/panel-component/panel-button/panel-button.cjs +4 -1
  99. package/lib/panel-component/user-message/async-action/async-action/async-action.cjs +34 -15
  100. package/lib/panel-component/user-message/async-action/async-action/async-action.provider.cjs +9 -2
  101. package/lib/panel-component/user-message/async-action/async-action-tab/async-action-tab.cjs +20 -42
  102. package/lib/panel-component/user-message/index.cjs +7 -0
  103. package/lib/panel-component/user-message/internal-message/index.cjs +4 -0
  104. package/lib/panel-component/user-message/internal-message/internal-message-default/internal-message-default.cjs +6 -5
  105. package/lib/panel-component/user-message/internal-message/internal-message-default/internal-message-default.css +1 -1
  106. package/lib/panel-component/user-message/internal-message/internal-message-default/internal-message-default.provider.cjs +9 -3
  107. package/lib/panel-component/user-message/internal-message/internal-message-json/internal-message-json.cjs +82 -0
  108. package/lib/panel-component/user-message/internal-message/internal-message-json/internal-message-json.css +1 -0
  109. package/lib/panel-component/user-message/internal-message/internal-message-json/internal-message-json.provider.cjs +57 -0
  110. package/lib/panel-component/user-message/internal-message/internal-message-tab/internal-message-tab.cjs +17 -33
  111. package/lib/panel-component/user-message/internal-message/internal-message-tab/internal-message-tab.css +1 -1
  112. package/lib/panel-component/user-message/user-message.cjs +5 -0
  113. package/lib/panel-component/view-message/index.cjs +20 -0
  114. package/lib/panel-component/view-message/view-message.cjs +48 -0
  115. package/lib/panel-component/view-message/view-message.provider.cjs +23 -0
  116. package/lib/util/app-popover/app-popover-component.cjs +6 -2
  117. package/lib/util/index.cjs +2 -0
  118. package/lib/util/notice-util/notice-util.cjs +64 -0
  119. package/lib/util/open-view-util/open-view-util.cjs +6 -6
  120. package/package.json +6 -6
  121. package/dist/ibiz-markdown-editor-RaswfMqH.js +0 -1
  122. package/dist/index-p-YChWUE.js +0 -2
  123. package/dist/wang-editor-8iEE3iXJ.js +0 -1
@@ -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: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,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:hover .ibiz-internal-message-json-toolbar{display:block}.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}
@@ -24,6 +24,7 @@ const UserMessage = /* @__PURE__ */ vue.defineComponent({
24
24
  setup(props) {
25
25
  const ns = vue3Util.useNamespace("user-message");
26
26
  const c = props.controller;
27
+ const noticeController = ibiz.hub.notice;
27
28
  const showPopover = vue.ref(false);
28
29
  const currentTab = vue.ref("notification");
29
30
  const sysImage = props.modelData.sysImage || {
@@ -37,6 +38,7 @@ const UserMessage = /* @__PURE__ */ vue.defineComponent({
37
38
  return {
38
39
  ns,
39
40
  c,
41
+ noticeController,
40
42
  noticeNum,
41
43
  popoverRef,
42
44
  showPopover,
@@ -63,6 +65,7 @@ const UserMessage = /* @__PURE__ */ vue.defineComponent({
63
65
  "hidden": this.noticeNum === 0
64
66
  }, {
65
67
  default: () => [vue.createVNode(vue.resolveComponent("i-biz-icon"), {
68
+ "id": runtime.PresetIdentifier.MESSAGE,
66
69
  "class": [this.ns.e("image")],
67
70
  "icon": this.sysImage
68
71
  }, null)]
@@ -79,6 +82,7 @@ const UserMessage = /* @__PURE__ */ vue.defineComponent({
79
82
  "name": "notification"
80
83
  }, {
81
84
  default: () => [vue.createVNode(internalMessageTab.InternalMessageTab, {
85
+ "controller": this.noticeController.internalMessage,
82
86
  "showPopover": this.showPopover,
83
87
  "onHiddenPopover": this.hiddenPopover
84
88
  }, null)]
@@ -87,6 +91,7 @@ const UserMessage = /* @__PURE__ */ vue.defineComponent({
87
91
  "name": "async-action"
88
92
  }, {
89
93
  default: () => [vue.createVNode(asyncActionTab.AsyncActionTab, {
94
+ "controller": this.noticeController.asyncAction,
90
95
  "showPopover": this.showPopover,
91
96
  "onHiddenPopover": this.hiddenPopover
92
97
  }, null)]
@@ -0,0 +1,20 @@
1
+ 'use strict';
2
+
3
+ Object.defineProperty(exports, '__esModule', { value: true });
4
+
5
+ var vue3Util = require('@ibiz-template/vue3-util');
6
+ var runtime = require('@ibiz-template/runtime');
7
+ var viewMessage = require('./view-message.cjs');
8
+ var viewMessage_provider = require('./view-message.provider.cjs');
9
+
10
+ "use strict";
11
+ const IBizViewMessage = vue3Util.withInstall(viewMessage.ViewMessage, function(v) {
12
+ v.component(viewMessage.ViewMessage.name, viewMessage.ViewMessage);
13
+ runtime.registerPanelItemProvider(
14
+ "RAWITEM_VIEW_MESSAGE",
15
+ () => new viewMessage_provider.ViewMessageProvider()
16
+ );
17
+ });
18
+
19
+ exports.IBizViewMessage = IBizViewMessage;
20
+ exports.default = IBizViewMessage;
@@ -0,0 +1,48 @@
1
+ 'use strict';
2
+
3
+ var vue = require('vue');
4
+ var vue3Util = require('@ibiz-template/vue3-util');
5
+ var runtime = require('@ibiz-template/runtime');
6
+
7
+ "use strict";
8
+ const ViewMessage = /* @__PURE__ */ vue.defineComponent({
9
+ name: "IBizViewMessage",
10
+ props: {
11
+ modelData: {
12
+ type: Object,
13
+ required: true
14
+ },
15
+ controller: {
16
+ type: runtime.PanelItemController,
17
+ required: true
18
+ }
19
+ },
20
+ setup(props) {
21
+ const ns = vue3Util.useNamespace("view-message");
22
+ const c = props.controller;
23
+ const ctx = vue3Util.useCtx();
24
+ const {
25
+ view
26
+ } = ctx;
27
+ return {
28
+ ns,
29
+ c,
30
+ view
31
+ };
32
+ },
33
+ render() {
34
+ const c = this.view;
35
+ if (c.state.isCreated) {
36
+ const viewMessages = c.state.viewMessages.BODY;
37
+ if (viewMessages == null ? void 0 : viewMessages.length) {
38
+ return vue.createVNode(vue.resolveComponent("view-message"), {
39
+ "class": [this.ns.e("body-message")],
40
+ "messages": viewMessages
41
+ }, null);
42
+ }
43
+ }
44
+ return null;
45
+ }
46
+ });
47
+
48
+ exports.ViewMessage = ViewMessage;
@@ -0,0 +1,23 @@
1
+ 'use strict';
2
+
3
+ var runtime = require('@ibiz-template/runtime');
4
+
5
+ "use strict";
6
+ var __defProp = Object.defineProperty;
7
+ var __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
8
+ var __publicField = (obj, key, value) => {
9
+ __defNormalProp(obj, typeof key !== "symbol" ? key + "" : key, value);
10
+ return value;
11
+ };
12
+ class ViewMessageProvider {
13
+ constructor() {
14
+ __publicField(this, "component", "IBizViewMessage");
15
+ }
16
+ async createController(panelItem, panel, parent) {
17
+ const c = new runtime.PanelItemController(panelItem, panel, parent);
18
+ await c.init();
19
+ return c;
20
+ }
21
+ }
22
+
23
+ exports.ViewMessageProvider = ViewMessageProvider;
@@ -14,11 +14,15 @@ async function computePos(element, el, arrEl, opts) {
14
14
  element: arrEl
15
15
  }));
16
16
  }
17
- const options = await dom.computePosition(element, el, {
17
+ const config = {
18
18
  placement: opts.placement,
19
19
  strategy: "absolute",
20
20
  middleware: middlewareArr
21
- });
21
+ };
22
+ if (opts.options) {
23
+ Object.assign(config, opts.options);
24
+ }
25
+ const options = await dom.computePosition(element, el, config);
22
26
  {
23
27
  const {
24
28
  x,
@@ -8,6 +8,7 @@ var notificationUtil = require('./notification-util/notification-util.cjs');
8
8
  var openViewUtil = require('./open-view-util/open-view-util.cjs');
9
9
  var overlayController = require('./overlay-controller/overlay-controller.cjs');
10
10
  var usePagination = require('./pagination/use-pagination.cjs');
11
+ var noticeUtil = require('./notice-util/notice-util.cjs');
11
12
 
12
13
  "use strict";
13
14
 
@@ -19,3 +20,4 @@ exports.NotificationUtil = notificationUtil.NotificationUtil;
19
20
  exports.OpenViewUtil = openViewUtil.OpenViewUtil;
20
21
  exports.OverlayController = overlayController.OverlayController;
21
22
  exports.usePagination = usePagination.usePagination;
23
+ exports.NoticeUtil = noticeUtil.NoticeUtil;
@@ -0,0 +1,64 @@
1
+ 'use strict';
2
+
3
+ var runtime = require('@ibiz-template/runtime');
4
+ var ElementPlus = require('element-plus');
5
+ var vue = require('vue');
6
+ var vue3Util = require('@ibiz-template/vue3-util');
7
+ require('../../common/index.cjs');
8
+ var doingNotice = require('../../common/doing-notice/doing-notice.cjs');
9
+
10
+ "use strict";
11
+ var __defProp = Object.defineProperty;
12
+ var __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
13
+ var __publicField = (obj, key, value) => {
14
+ __defNormalProp(obj, typeof key !== "symbol" ? key + "" : key, value);
15
+ return value;
16
+ };
17
+ class NoticeUtil {
18
+ constructor() {
19
+ __publicField(this, "doingNotice");
20
+ }
21
+ async showAsyncAction(asyncAction) {
22
+ const ns = vue3Util.useNamespace("async-action-notice");
23
+ const porvider = await runtime.getAsyncActionProvider(asyncAction);
24
+ if (porvider.render) {
25
+ const ins = ElementPlus.ElNotification({
26
+ customClass: ns.b(),
27
+ message: porvider.render({
28
+ action: asyncAction,
29
+ onClose: () => {
30
+ ins.close();
31
+ }
32
+ }),
33
+ position: "bottom-right",
34
+ duration: 0
35
+ });
36
+ }
37
+ }
38
+ showDoingNotice(info) {
39
+ if (!this.doingNotice) {
40
+ const reactiveInfo = vue.reactive(info);
41
+ const ins = ElementPlus.ElNotification({
42
+ message: vue.h(doingNotice.DoingNotice, {
43
+ info: reactiveInfo
44
+ }),
45
+ onClose: () => {
46
+ this.closeDoingNotice();
47
+ },
48
+ position: "bottom-right",
49
+ duration: 0
50
+ });
51
+ this.doingNotice = { info: reactiveInfo, close: () => ins.close() };
52
+ } else {
53
+ Object.assign(this.doingNotice.info, info);
54
+ }
55
+ }
56
+ closeDoingNotice() {
57
+ if (this.doingNotice) {
58
+ this.doingNotice.close();
59
+ this.doingNotice = void 0;
60
+ }
61
+ }
62
+ }
63
+
64
+ exports.NoticeUtil = NoticeUtil;
@@ -37,8 +37,8 @@ class OpenViewUtil {
37
37
  * @author lxm
38
38
  * @date 2022-09-12 01:09:06
39
39
  * @param {string} appViewId
40
- * @param {(IContext | undefined)} [context]
41
- * @param {(IParams | undefined)} [params]
40
+ * @param {(IContext)} [context]
41
+ * @param {(IParams)} [params]
42
42
  * @returns {*} {Promise<IModalData>}
43
43
  */
44
44
  async modal(appViewId, context, params) {
@@ -57,7 +57,7 @@ class OpenViewUtil {
57
57
  opts
58
58
  );
59
59
  }
60
- async popover(appViewId, event, context, params) {
60
+ async popover(appViewId, event, context, params, options = {}) {
61
61
  const appView = await ibiz.hub.config.view.get(appViewId);
62
62
  return vue3Util.openViewPopover(
63
63
  event,
@@ -66,7 +66,7 @@ class OpenViewUtil {
66
66
  params,
67
67
  viewId: appView.id
68
68
  },
69
- { autoClose: true, placement: "bottom" }
69
+ { autoClose: true, placement: "bottom", ...options }
70
70
  );
71
71
  }
72
72
  /**
@@ -75,8 +75,8 @@ class OpenViewUtil {
75
75
  * @author lxm
76
76
  * @date 2022-09-15 15:09:50
77
77
  * @param {string} appViewId
78
- * @param {(IContext | undefined)} [context]
79
- * @param {(IParams | undefined)} [params]
78
+ * @param {(IContext)} [context]
79
+ * @param {(IParams)} [params]
80
80
  * @returns {*} {Promise<IModalData>}
81
81
  */
82
82
  async drawer(appViewId, context, params) {
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@ibiz-template/vue3-components",
3
- "version": "0.5.7-alpha.2",
3
+ "version": "0.5.7-alpha.4",
4
4
  "description": "使用 rollup 编译 vue 组件或者 jsx",
5
5
  "main": "lib/index.cjs",
6
6
  "module": "es/index.mjs",
@@ -27,12 +27,12 @@
27
27
  "@floating-ui/dom": "^1.5.3",
28
28
  "@ibiz-template-plugin/ai-chat": "^0.0.1",
29
29
  "@ibiz-template-plugin/gantt": "0.1.1",
30
- "@ibiz-template/core": "^0.5.7-alpha.0",
31
- "@ibiz-template/model-helper": "^0.5.7-alpha.2",
32
- "@ibiz-template/runtime": "^0.5.7-alpha.2",
30
+ "@ibiz-template/core": "^0.5.7-alpha.4",
31
+ "@ibiz-template/model-helper": "^0.5.7-alpha.4",
32
+ "@ibiz-template/runtime": "^0.5.7-alpha.4",
33
33
  "@ibiz-template/theme": "^0.5.0",
34
- "@ibiz-template/vue3-util": "^0.5.7-alpha.2",
35
- "@ibiz/model-core": "^0.1.7",
34
+ "@ibiz-template/vue3-util": "^0.5.7-alpha.4",
35
+ "@ibiz/model-core": "^0.1.8",
36
36
  "@imengyu/vue3-context-menu": "^1.3.5",
37
37
  "@monaco-editor/loader": "^1.4.0",
38
38
  "@wangeditor/editor": "^5.1.23",
@@ -1 +0,0 @@
1
- System.register(["vue","@ibiz-template/vue3-util","qx-util","cherry-markdown","@ibiz-template/core"],(function(e){"use strict";var t,a,o,n,l,r,i,s,u,c,d,h,v,m,b;return{setters:[function(e){t=e.defineComponent,a=e.ref,o=e.watch,n=e.onMounted,l=e.onUnmounted,r=e.createVNode,i=e.nextTick},function(e){s=e.getMarkDownProps,u=e.getEditorEmits,c=e.useNamespace,d=e.useUIStore},function(e){h=e.createUUID,v=e.getCookie},function(e){m=e.default},function(e){b=e.CoreConst}],execute:function(){e("default",t({name:"IBizMarkDown",props:s(),emits:u(),setup(e,{emit:t}){const r=c("markdown"),s=e.controller,u=a(""),f=a(null),g=h(),p=a({Authorization:"Bearer ".concat(v(b.TOKEN))}),w=a(""),k=a(""),{UIStore:y}=d(),x=a(y.theme),C=a("editOnly");let U=null,z=0;const M=a({});o((()=>e.data),(e=>{if(e&&s){const t=s.calcBaseUrl(e);w.value=t.uploadUrl,k.value=t.downloadUrl}}),{immediate:!0,deep:!0});const B=a(),O=(e,t)=>{const a=new FormData;a.append("file",e),ibiz.net.axios({url:w.value,method:"post",headers:p.value,data:a}).then((e=>{if(200===e.status&&e.data.fileid){const a=k.value.replace("%fileId%",e.data.fileid);t(a)}})).catch((e=>{ibiz.log.error("上传出错",e)}))},D=()=>{var e;return null==(e=f.value)?void 0:e.getMarkdown()},I=e=>{var t;null==(t=f.value)||t.setMarkdown(e,!1)};o((()=>e.value),((e,t)=>{e!==t&&(u.value=e||"")}),{immediate:!0}),o(u,((e,t)=>{const a=D();e!==t&&a!==e&&I(e)}));const V=e=>{t("change",D())},R=(e,t)=>({[e]:t});o((()=>y.theme),(e=>{var t;x.value=e,null==(t=f.value)||t.setTheme(x.value)}));return n((()=>{e.disabled&&(C.value="previewOnly"),i((()=>{f.value=new m({id:g,value:u.value,theme:x.value,fileUpload:O,emoji:{useUnicode:!0},header:{anchorStyle:"autonumber"},editor:{height:"100%",defaultModel:C.value,codemirror:{autofocus:!1}},toolbars:{theme:x.value,toolbar:["bold","italic","underline","strikethrough","|","color","header","|","list","image",{insert:["link","hr","br","code","formula","toc","table","line-table","bar-table"]},"settings","togglePreview"],bubble:["bold","italic","underline","strikethrough","sub","sup","|","size","color"],float:["h1","h2","h3","|","checklist","quote","quickTable","code"],customMenu:[],sidebar:[]},callback:{afterChange:V,beforeImageMounted:R}})})),(()=>{if(window.ResizeObserver&&B.value){const e={width:"".concat(B.value.offsetWidth,"px")};s&&"number"==typeof s.parent.model.height&&Object.assign(e,{height:"".concat(s.parent.model.height,"px")}),M.value=r.cssVarBlock(e),U=new ResizeObserver((e=>{const t=e[0].contentRect.width;if(t!==z){const a={width:"".concat(e[0].contentRect.width,"px")};s&&"number"==typeof s.parent.model.height&&Object.assign(a,{height:"".concat(s.parent.model.height,"px")}),M.value=r.cssVarBlock(a),z=t}})),U.observe(B.value)}})()})),l((()=>{f.value=null,U&&U.disconnect()})),{ns:r,currentVal:u,id:g,editor:f,markDownBox:B,headers:p,theme:x,defaultModel:C,cssVars:M,getCherryHtml:()=>{var e;return null==(e=f.value)?void 0:e.getHtml()},getCherryContent:D,setCherryContent:I}},render(){return r("div",{ref:"markDownBox",class:[this.ns.b(),this.ns.is("disabled",this.disabled)]},[r("div",{id:this.id,style:this.cssVars,class:this.ns.b("cherry")},null)])}}))}}}));