@ibiz-template/vue3-components 0.5.6 → 0.5.7-alpha.0
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/dist/index-dfn6FnHv.js +2 -0
- package/dist/index.min.css +1 -1
- package/dist/index.system.min.js +1 -1
- package/dist/{xlsx-util-OwLxXdXL.js → xlsx-util-ohTMZYHr.js} +1 -1
- package/es/editor/autocomplete/ibiz-autocomplete/ibiz-autocomplete.mjs +0 -3
- package/es/editor/code/monaco-editor/monaco-editor.mjs +3 -3
- package/es/editor/data-picker/ibiz-picker-link/ibiz-picker-link.css +1 -1
- package/es/editor/dropdown-list/ibiz-dropdown/ibiz-dropdown.d.ts +2 -0
- package/es/editor/dropdown-list/ibiz-dropdown/ibiz-dropdown.mjs +50 -5
- package/es/panel-component/user-message/async-action/{async-action.mjs → async-action/async-action.mjs} +2 -3
- package/es/panel-component/user-message/async-action/async-action-tab/async-action-tab.css +1 -0
- package/es/panel-component/user-message/async-action/async-action-tab/async-action-tab.d.ts +92 -0
- package/es/panel-component/user-message/async-action/async-action-tab/async-action-tab.mjs +91 -0
- package/es/panel-component/user-message/async-action/index.d.ts +3 -0
- package/es/panel-component/user-message/async-action/index.mjs +5 -0
- package/es/panel-component/user-message/index.d.ts +1 -73
- package/es/panel-component/user-message/index.mjs +12 -3
- package/es/panel-component/user-message/internal-message/index.d.ts +3 -0
- package/es/panel-component/user-message/internal-message/index.mjs +5 -0
- package/es/panel-component/user-message/internal-message/internal-message-default/internal-message-default.css +1 -0
- package/es/panel-component/user-message/internal-message/internal-message-default/internal-message-default.d.ts +17 -0
- package/es/panel-component/user-message/internal-message/internal-message-default/internal-message-default.mjs +82 -0
- package/es/panel-component/user-message/internal-message/internal-message-default/internal-message-default.provider.d.ts +6 -0
- package/es/panel-component/user-message/internal-message/internal-message-default/internal-message-default.provider.mjs +17 -0
- package/es/panel-component/user-message/internal-message/internal-message-tab/internal-message-tab.css +1 -0
- package/es/panel-component/user-message/internal-message/internal-message-tab/internal-message-tab.d.ts +42 -0
- package/es/panel-component/user-message/internal-message/internal-message-tab/internal-message-tab.mjs +101 -0
- package/es/panel-component/user-message/user-message.css +1 -1
- package/es/panel-component/user-message/user-message.d.ts +1 -73
- package/es/panel-component/user-message/user-message.mjs +33 -61
- package/es/util/open-view-util/open-view-util.d.ts +2 -1
- package/es/util/open-view-util/open-view-util.mjs +11 -1
- package/es/view/404-view/404-view.mjs +1 -1
- package/lib/editor/autocomplete/ibiz-autocomplete/ibiz-autocomplete.cjs +0 -3
- package/lib/editor/code/monaco-editor/monaco-editor.cjs +3 -3
- package/lib/editor/data-picker/ibiz-picker-link/ibiz-picker-link.css +1 -1
- package/lib/editor/dropdown-list/ibiz-dropdown/ibiz-dropdown.cjs +48 -3
- package/lib/panel-component/user-message/async-action/{async-action.cjs → async-action/async-action.cjs} +2 -3
- package/lib/panel-component/user-message/async-action/async-action-tab/async-action-tab.cjs +93 -0
- package/lib/panel-component/user-message/async-action/async-action-tab/async-action-tab.css +1 -0
- package/lib/panel-component/user-message/async-action/index.cjs +11 -0
- package/lib/panel-component/user-message/index.cjs +11 -2
- package/lib/panel-component/user-message/internal-message/index.cjs +11 -0
- package/lib/panel-component/user-message/internal-message/internal-message-default/internal-message-default.cjs +84 -0
- package/lib/panel-component/user-message/internal-message/internal-message-default/internal-message-default.css +1 -0
- package/lib/panel-component/user-message/internal-message/internal-message-default/internal-message-default.provider.cjs +19 -0
- package/lib/panel-component/user-message/internal-message/internal-message-tab/internal-message-tab.cjs +103 -0
- package/lib/panel-component/user-message/internal-message/internal-message-tab/internal-message-tab.css +1 -0
- package/lib/panel-component/user-message/user-message.cjs +30 -58
- package/lib/panel-component/user-message/user-message.css +1 -1
- package/lib/util/open-view-util/open-view-util.cjs +10 -0
- package/lib/view/404-view/404-view.cjs +1 -1
- package/package.json +16 -15
- package/dist/index-Sw1mQx8I.js +0 -2
- /package/es/node_modules/.pnpm/{@monaco-editor_loader@1.4.0_monaco-editor@0.44.0 → @monaco-editor_loader@1.4.0_monaco-editor@0.45.0}/node_modules/@monaco-editor/loader/lib/es/_virtual/_rollupPluginBabelHelpers.mjs +0 -0
- /package/es/node_modules/.pnpm/{@monaco-editor_loader@1.4.0_monaco-editor@0.44.0 → @monaco-editor_loader@1.4.0_monaco-editor@0.45.0}/node_modules/@monaco-editor/loader/lib/es/config/index.mjs +0 -0
- /package/es/node_modules/.pnpm/{@monaco-editor_loader@1.4.0_monaco-editor@0.44.0 → @monaco-editor_loader@1.4.0_monaco-editor@0.45.0}/node_modules/@monaco-editor/loader/lib/es/index.mjs +0 -0
- /package/es/node_modules/.pnpm/{@monaco-editor_loader@1.4.0_monaco-editor@0.44.0 → @monaco-editor_loader@1.4.0_monaco-editor@0.45.0}/node_modules/@monaco-editor/loader/lib/es/loader/index.mjs +0 -0
- /package/es/node_modules/.pnpm/{@monaco-editor_loader@1.4.0_monaco-editor@0.44.0 → @monaco-editor_loader@1.4.0_monaco-editor@0.45.0}/node_modules/@monaco-editor/loader/lib/es/utils/compose.mjs +0 -0
- /package/es/node_modules/.pnpm/{@monaco-editor_loader@1.4.0_monaco-editor@0.44.0 → @monaco-editor_loader@1.4.0_monaco-editor@0.45.0}/node_modules/@monaco-editor/loader/lib/es/utils/curry.mjs +0 -0
- /package/es/node_modules/.pnpm/{@monaco-editor_loader@1.4.0_monaco-editor@0.44.0 → @monaco-editor_loader@1.4.0_monaco-editor@0.45.0}/node_modules/@monaco-editor/loader/lib/es/utils/deepMerge.mjs +0 -0
- /package/es/node_modules/.pnpm/{@monaco-editor_loader@1.4.0_monaco-editor@0.44.0 → @monaco-editor_loader@1.4.0_monaco-editor@0.45.0}/node_modules/@monaco-editor/loader/lib/es/utils/isObject.mjs +0 -0
- /package/es/node_modules/.pnpm/{@monaco-editor_loader@1.4.0_monaco-editor@0.44.0 → @monaco-editor_loader@1.4.0_monaco-editor@0.45.0}/node_modules/@monaco-editor/loader/lib/es/utils/makeCancelable.mjs +0 -0
- /package/es/node_modules/.pnpm/{@monaco-editor_loader@1.4.0_monaco-editor@0.44.0 → @monaco-editor_loader@1.4.0_monaco-editor@0.45.0}/node_modules/@monaco-editor/loader/lib/es/validators/index.mjs +0 -0
- /package/es/panel-component/user-message/async-action/{async-action.css → async-action/async-action.css} +0 -0
- /package/es/panel-component/user-message/async-action/{async-action.d.ts → async-action/async-action.d.ts} +0 -0
- /package/es/panel-component/user-message/async-action/{async-action.provider.d.ts → async-action/async-action.provider.d.ts} +0 -0
- /package/es/panel-component/user-message/async-action/{async-action.provider.mjs → async-action/async-action.provider.mjs} +0 -0
- /package/es/panel-component/user-message/{async-action-preview → async-action/async-action-preview}/async-action-preview.css +0 -0
- /package/es/panel-component/user-message/{async-action-preview → async-action/async-action-preview}/async-action-preview.d.ts +0 -0
- /package/es/panel-component/user-message/{async-action-preview → async-action/async-action-preview}/async-action-preview.mjs +0 -0
- /package/es/panel-component/user-message/{async-action-result → async-action/async-action-result}/async-action-result.d.ts +0 -0
- /package/es/panel-component/user-message/{async-action-result → async-action/async-action-result}/async-action-result.mjs +0 -0
- /package/lib/node_modules/.pnpm/{@monaco-editor_loader@1.4.0_monaco-editor@0.44.0 → @monaco-editor_loader@1.4.0_monaco-editor@0.45.0}/node_modules/@monaco-editor/loader/lib/es/_virtual/_rollupPluginBabelHelpers.cjs +0 -0
- /package/lib/node_modules/.pnpm/{@monaco-editor_loader@1.4.0_monaco-editor@0.44.0 → @monaco-editor_loader@1.4.0_monaco-editor@0.45.0}/node_modules/@monaco-editor/loader/lib/es/config/index.cjs +0 -0
- /package/lib/node_modules/.pnpm/{@monaco-editor_loader@1.4.0_monaco-editor@0.44.0 → @monaco-editor_loader@1.4.0_monaco-editor@0.45.0}/node_modules/@monaco-editor/loader/lib/es/index.cjs +0 -0
- /package/lib/node_modules/.pnpm/{@monaco-editor_loader@1.4.0_monaco-editor@0.44.0 → @monaco-editor_loader@1.4.0_monaco-editor@0.45.0}/node_modules/@monaco-editor/loader/lib/es/loader/index.cjs +0 -0
- /package/lib/node_modules/.pnpm/{@monaco-editor_loader@1.4.0_monaco-editor@0.44.0 → @monaco-editor_loader@1.4.0_monaco-editor@0.45.0}/node_modules/@monaco-editor/loader/lib/es/utils/compose.cjs +0 -0
- /package/lib/node_modules/.pnpm/{@monaco-editor_loader@1.4.0_monaco-editor@0.44.0 → @monaco-editor_loader@1.4.0_monaco-editor@0.45.0}/node_modules/@monaco-editor/loader/lib/es/utils/curry.cjs +0 -0
- /package/lib/node_modules/.pnpm/{@monaco-editor_loader@1.4.0_monaco-editor@0.44.0 → @monaco-editor_loader@1.4.0_monaco-editor@0.45.0}/node_modules/@monaco-editor/loader/lib/es/utils/deepMerge.cjs +0 -0
- /package/lib/node_modules/.pnpm/{@monaco-editor_loader@1.4.0_monaco-editor@0.44.0 → @monaco-editor_loader@1.4.0_monaco-editor@0.45.0}/node_modules/@monaco-editor/loader/lib/es/utils/isObject.cjs +0 -0
- /package/lib/node_modules/.pnpm/{@monaco-editor_loader@1.4.0_monaco-editor@0.44.0 → @monaco-editor_loader@1.4.0_monaco-editor@0.45.0}/node_modules/@monaco-editor/loader/lib/es/utils/makeCancelable.cjs +0 -0
- /package/lib/node_modules/.pnpm/{@monaco-editor_loader@1.4.0_monaco-editor@0.44.0 → @monaco-editor_loader@1.4.0_monaco-editor@0.45.0}/node_modules/@monaco-editor/loader/lib/es/validators/index.cjs +0 -0
- /package/lib/panel-component/user-message/async-action/{async-action.css → async-action/async-action.css} +0 -0
- /package/lib/panel-component/user-message/async-action/{async-action.provider.cjs → async-action/async-action.provider.cjs} +0 -0
- /package/lib/panel-component/user-message/{async-action-preview → async-action/async-action-preview}/async-action-preview.cjs +0 -0
- /package/lib/panel-component/user-message/{async-action-preview → async-action/async-action-preview}/async-action-preview.css +0 -0
- /package/lib/panel-component/user-message/{async-action-result → async-action/async-action-result}/async-action-result.cjs +0 -0
|
@@ -0,0 +1,93 @@
|
|
|
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
|
+
require('./async-action-tab.css');
|
|
7
|
+
|
|
8
|
+
"use strict";
|
|
9
|
+
const AsyncActionTab = /* @__PURE__ */ vue.defineComponent({
|
|
10
|
+
name: "IBizAsyncActionTab",
|
|
11
|
+
props: {
|
|
12
|
+
showPopover: {
|
|
13
|
+
type: Boolean,
|
|
14
|
+
required: true
|
|
15
|
+
}
|
|
16
|
+
},
|
|
17
|
+
emits: {
|
|
18
|
+
hiddenPopover: () => true
|
|
19
|
+
},
|
|
20
|
+
setup(props, {
|
|
21
|
+
emit
|
|
22
|
+
}) {
|
|
23
|
+
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;
|
|
39
|
+
};
|
|
40
|
+
const hiddenPopover = () => {
|
|
41
|
+
emit("hiddenPopover");
|
|
42
|
+
};
|
|
43
|
+
vue.watch(() => props.showPopover, (newVal, oldVal) => {
|
|
44
|
+
if (newVal !== oldVal && newVal === false) {
|
|
45
|
+
hiddenHistory();
|
|
46
|
+
}
|
|
47
|
+
});
|
|
48
|
+
return {
|
|
49
|
+
ns,
|
|
50
|
+
appStore,
|
|
51
|
+
actualMsgs,
|
|
52
|
+
hiddenPopover,
|
|
53
|
+
hiddenHistory,
|
|
54
|
+
showMoreHistory
|
|
55
|
+
};
|
|
56
|
+
},
|
|
57
|
+
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
|
+
return vue.createVNode("div", {
|
|
61
|
+
"class": [this.ns.b()]
|
|
62
|
+
}, [this.actualMsgs.length > 0 && this.actualMsgs.map((msg) => {
|
|
63
|
+
let provider;
|
|
64
|
+
try {
|
|
65
|
+
provider = runtime.getAsyncActionProvider(msg.actiontype);
|
|
66
|
+
} catch (error) {
|
|
67
|
+
ibiz.log.error(error);
|
|
68
|
+
}
|
|
69
|
+
if (provider) {
|
|
70
|
+
return vue.h(vue.resolveComponent(provider.component), {
|
|
71
|
+
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
|
|
79
|
+
});
|
|
80
|
+
}
|
|
81
|
+
return vue.createVNode("div", {
|
|
82
|
+
"class": this.ns.e("item")
|
|
83
|
+
}, ["\u5F02\u6B65\u64CD\u4F5C\u7C7B\u578B".concat(msg.actiontype, "\u6682\u672A\u652F\u6301")]);
|
|
84
|
+
}), this.actualMsgs.length === 0 && vue.createVNode("div", {
|
|
85
|
+
"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])]);
|
|
90
|
+
}
|
|
91
|
+
});
|
|
92
|
+
|
|
93
|
+
exports.AsyncActionTab = AsyncActionTab;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
.ibiz-async-action-tab{--ibiz-async-action-tab-load-more-height:30px;width:100%;height:100%}.ibiz-async-action-tab__item{min-height:60px;padding:6px 0}.ibiz-async-action-tab__nodata{display:flex;align-items:center;justify-content:center;height:calc(100% - var(--ibiz-async-action-tab-load-more-height))}.ibiz-async-action-tab__load-more{height:var(--ibiz-async-action-tab-load-more-height);line-height:var(--ibiz-async-action-tab-load-more-height);text-align:center}.ibiz-async-action-tab__load-more:hover{color:var(--ibiz-color-primary-hover);cursor:pointer}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
'use strict';
|
|
2
|
+
|
|
3
|
+
var asyncAction = require('./async-action/async-action.cjs');
|
|
4
|
+
var asyncActionTab = require('./async-action-tab/async-action-tab.cjs');
|
|
5
|
+
var asyncAction_provider = require('./async-action/async-action.provider.cjs');
|
|
6
|
+
|
|
7
|
+
"use strict";
|
|
8
|
+
|
|
9
|
+
exports.AsyncAction = asyncAction.AsyncAction;
|
|
10
|
+
exports.AsyncActionTab = asyncActionTab.AsyncActionTab;
|
|
11
|
+
exports.AsyncActionProvider = asyncAction_provider.AsyncActionProvider;
|
|
@@ -4,17 +4,26 @@ Object.defineProperty(exports, '__esModule', { value: true });
|
|
|
4
4
|
|
|
5
5
|
var runtime = require('@ibiz-template/runtime');
|
|
6
6
|
var vue3Util = require('@ibiz-template/vue3-util');
|
|
7
|
-
|
|
8
|
-
var asyncAction_provider = require('./async-action/async-action.provider.cjs');
|
|
7
|
+
require('./async-action/index.cjs');
|
|
9
8
|
var userMessage = require('./user-message.cjs');
|
|
10
9
|
var userMessage_provider = require('./user-message.provider.cjs');
|
|
10
|
+
require('./internal-message/index.cjs');
|
|
11
|
+
var asyncAction = require('./async-action/async-action/async-action.cjs');
|
|
12
|
+
var internalMessageDefault = require('./internal-message/internal-message-default/internal-message-default.cjs');
|
|
13
|
+
var asyncAction_provider = require('./async-action/async-action/async-action.provider.cjs');
|
|
14
|
+
var internalMessageDefault_provider = require('./internal-message/internal-message-default/internal-message-default.provider.cjs');
|
|
11
15
|
|
|
12
16
|
"use strict";
|
|
13
17
|
const IBizUserMessage = vue3Util.withInstall(userMessage.UserMessage, function(v) {
|
|
14
18
|
v.component(userMessage.UserMessage.name, userMessage.UserMessage);
|
|
15
19
|
v.component(asyncAction.AsyncAction.name, asyncAction.AsyncAction);
|
|
20
|
+
v.component(internalMessageDefault.InternalMessageDefault.name, internalMessageDefault.InternalMessageDefault);
|
|
16
21
|
runtime.registerAsyncActionProvider("DEIMPORTDATA2", () => new asyncAction_provider.AsyncActionProvider());
|
|
17
22
|
runtime.registerAsyncActionProvider("DEFAULT", () => new asyncAction_provider.AsyncActionProvider());
|
|
23
|
+
runtime.registerInternalMessageProvider(
|
|
24
|
+
"DEFAULT",
|
|
25
|
+
() => new internalMessageDefault_provider.InternalMessageDefaultProvider()
|
|
26
|
+
);
|
|
18
27
|
runtime.registerPanelItemProvider(
|
|
19
28
|
"RAWITEM_USERMESSAGE",
|
|
20
29
|
() => new userMessage_provider.UserMessageProvider()
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
'use strict';
|
|
2
|
+
|
|
3
|
+
var internalMessageTab = require('./internal-message-tab/internal-message-tab.cjs');
|
|
4
|
+
var internalMessageDefault_provider = require('./internal-message-default/internal-message-default.provider.cjs');
|
|
5
|
+
var internalMessageDefault = require('./internal-message-default/internal-message-default.cjs');
|
|
6
|
+
|
|
7
|
+
"use strict";
|
|
8
|
+
|
|
9
|
+
exports.InternalMessageTab = internalMessageTab.InternalMessageTab;
|
|
10
|
+
exports.InternalMessageDefaultProvider = internalMessageDefault_provider.InternalMessageDefaultProvider;
|
|
11
|
+
exports.InternalMessageDefault = internalMessageDefault.InternalMessageDefault;
|
|
@@ -0,0 +1,84 @@
|
|
|
1
|
+
'use strict';
|
|
2
|
+
|
|
3
|
+
var vue = require('vue');
|
|
4
|
+
var vue3Util = require('@ibiz-template/vue3-util');
|
|
5
|
+
require('./internal-message-default.css');
|
|
6
|
+
|
|
7
|
+
"use strict";
|
|
8
|
+
const stateTexts = {
|
|
9
|
+
READ: "\u5DF2\u9605\u8BFB",
|
|
10
|
+
SENT: "\u5DF2\u53D1\u9001",
|
|
11
|
+
RECEIVED: "\u5DF2\u63A5\u6536",
|
|
12
|
+
REPLIED: "\u5DF2\u56DE\u590D",
|
|
13
|
+
SEND_FAILED: "\u53D1\u9001\u5931\u8D25",
|
|
14
|
+
NOT_SENT: "\u672A\u53D1\u9001",
|
|
15
|
+
DELETED: "\u5DF2\u5220\u9664"
|
|
16
|
+
};
|
|
17
|
+
const stateType = {
|
|
18
|
+
READ: "",
|
|
19
|
+
SENT: "success",
|
|
20
|
+
RECEIVED: "success",
|
|
21
|
+
REPLIED: "warning",
|
|
22
|
+
SEND_FAILED: "danger",
|
|
23
|
+
NOT_SENT: "info",
|
|
24
|
+
DELETED: "info"
|
|
25
|
+
};
|
|
26
|
+
const InternalMessageDefault = /* @__PURE__ */ vue.defineComponent({
|
|
27
|
+
name: "IBizInternalMessageDefault",
|
|
28
|
+
props: {
|
|
29
|
+
message: {
|
|
30
|
+
type: Object,
|
|
31
|
+
required: true
|
|
32
|
+
}
|
|
33
|
+
},
|
|
34
|
+
setup(props) {
|
|
35
|
+
const ns = vue3Util.useNamespace("internal-message");
|
|
36
|
+
const clickable = vue.computed(() => {
|
|
37
|
+
return props.message.short_content !== props.message.content;
|
|
38
|
+
});
|
|
39
|
+
return {
|
|
40
|
+
ns,
|
|
41
|
+
clickable
|
|
42
|
+
};
|
|
43
|
+
},
|
|
44
|
+
render() {
|
|
45
|
+
const {
|
|
46
|
+
title,
|
|
47
|
+
create_time,
|
|
48
|
+
short_content,
|
|
49
|
+
status
|
|
50
|
+
} = this.message;
|
|
51
|
+
return vue.createVNode("div", {
|
|
52
|
+
"class": [this.ns.b(), this.clickable ? this.ns.m("clickable") : ""]
|
|
53
|
+
}, [vue.createVNode("div", {
|
|
54
|
+
"class": this.ns.b("left")
|
|
55
|
+
}, [vue.createVNode("ion-icon", {
|
|
56
|
+
"name": "list-outline"
|
|
57
|
+
}, null)]), vue.createVNode("div", {
|
|
58
|
+
"class": this.ns.b("center")
|
|
59
|
+
}, [vue.createVNode("div", {
|
|
60
|
+
"class": this.ns.e("caption")
|
|
61
|
+
}, [vue.createVNode(vue.resolveComponent("el-tag"), {
|
|
62
|
+
"class": this.ns.e("status"),
|
|
63
|
+
"type": stateType[status]
|
|
64
|
+
}, {
|
|
65
|
+
default: () => [stateTexts[status]]
|
|
66
|
+
}), title]), vue.createVNode("div", {
|
|
67
|
+
"class": this.ns.e("short-content")
|
|
68
|
+
}, [short_content]), vue.createVNode("div", {
|
|
69
|
+
"class": this.ns.e("create-time")
|
|
70
|
+
}, [create_time])]), vue.createVNode("div", {
|
|
71
|
+
"class": this.ns.b("toolbar")
|
|
72
|
+
}, [vue.createVNode("ion-icon", {
|
|
73
|
+
"class": this.ns.be("toolbar", "button"),
|
|
74
|
+
"name": "timer-outline",
|
|
75
|
+
"title": "\u7A0D\u540E\u5904\u7406"
|
|
76
|
+
}, null), vue.createVNode("ion-icon", {
|
|
77
|
+
"class": this.ns.be("toolbar", "button"),
|
|
78
|
+
"name": "checkmark-done-outline",
|
|
79
|
+
"title": "\u5DF2\u8BFB"
|
|
80
|
+
}, null)])]);
|
|
81
|
+
}
|
|
82
|
+
});
|
|
83
|
+
|
|
84
|
+
exports.InternalMessageDefault = InternalMessageDefault;
|
|
@@ -0,0 +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)}
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
'use strict';
|
|
2
|
+
|
|
3
|
+
"use strict";
|
|
4
|
+
var __defProp = Object.defineProperty;
|
|
5
|
+
var __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
|
|
6
|
+
var __publicField = (obj, key, value) => {
|
|
7
|
+
__defNormalProp(obj, typeof key !== "symbol" ? key + "" : key, value);
|
|
8
|
+
return value;
|
|
9
|
+
};
|
|
10
|
+
class InternalMessageDefaultProvider {
|
|
11
|
+
constructor() {
|
|
12
|
+
__publicField(this, "component", "IBizInternalMessageDefault");
|
|
13
|
+
}
|
|
14
|
+
onClick(_msg, _event) {
|
|
15
|
+
return false;
|
|
16
|
+
}
|
|
17
|
+
}
|
|
18
|
+
|
|
19
|
+
exports.InternalMessageDefaultProvider = InternalMessageDefaultProvider;
|
|
@@ -0,0 +1,103 @@
|
|
|
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
|
+
require('./internal-message-tab.css');
|
|
7
|
+
|
|
8
|
+
"use strict";
|
|
9
|
+
const InternalMessageTab = /* @__PURE__ */ vue.defineComponent({
|
|
10
|
+
name: "IBizInternalMessageTab",
|
|
11
|
+
props: {
|
|
12
|
+
showPopover: {
|
|
13
|
+
type: Boolean,
|
|
14
|
+
required: true
|
|
15
|
+
}
|
|
16
|
+
},
|
|
17
|
+
emits: {
|
|
18
|
+
hiddenPopover: () => true
|
|
19
|
+
},
|
|
20
|
+
setup(props, {
|
|
21
|
+
emit
|
|
22
|
+
}) {
|
|
23
|
+
const ns = vue3Util.useNamespace("internal-message-tab");
|
|
24
|
+
const hiddenPopover = () => {
|
|
25
|
+
emit("hiddenPopover");
|
|
26
|
+
};
|
|
27
|
+
const allItems = vue.ref([]);
|
|
28
|
+
const state = vue.reactive({
|
|
29
|
+
total: 0,
|
|
30
|
+
curPage: 0,
|
|
31
|
+
pageSize: 20
|
|
32
|
+
});
|
|
33
|
+
const load = async (params) => {
|
|
34
|
+
const res = await ibiz.internalMessage.fetch({
|
|
35
|
+
page: 0,
|
|
36
|
+
size: state.pageSize,
|
|
37
|
+
...params
|
|
38
|
+
});
|
|
39
|
+
console.log(res);
|
|
40
|
+
if (res.ok) {
|
|
41
|
+
if (typeof res.total === "number") {
|
|
42
|
+
state.total = res.total;
|
|
43
|
+
}
|
|
44
|
+
if (typeof res.page === "number") {
|
|
45
|
+
state.curPage = res.page;
|
|
46
|
+
}
|
|
47
|
+
if (state.curPage === 0) {
|
|
48
|
+
allItems.value = res.data;
|
|
49
|
+
} else {
|
|
50
|
+
allItems.value.push(...res.data);
|
|
51
|
+
}
|
|
52
|
+
}
|
|
53
|
+
};
|
|
54
|
+
const showMore = () => {
|
|
55
|
+
load({
|
|
56
|
+
page: state.curPage + 1
|
|
57
|
+
});
|
|
58
|
+
};
|
|
59
|
+
load();
|
|
60
|
+
return {
|
|
61
|
+
ns,
|
|
62
|
+
allItems,
|
|
63
|
+
state,
|
|
64
|
+
hiddenPopover,
|
|
65
|
+
showMore
|
|
66
|
+
};
|
|
67
|
+
},
|
|
68
|
+
render() {
|
|
69
|
+
const restLength = this.state.total - this.allItems.length;
|
|
70
|
+
return vue.createVNode("div", {
|
|
71
|
+
"class": [this.ns.b()]
|
|
72
|
+
}, [this.allItems.length > 0 && this.allItems.map((msg) => {
|
|
73
|
+
let provider;
|
|
74
|
+
try {
|
|
75
|
+
provider = runtime.getInternalMessageProvider(msg);
|
|
76
|
+
} catch (error) {
|
|
77
|
+
ibiz.log.error(error);
|
|
78
|
+
}
|
|
79
|
+
if (provider) {
|
|
80
|
+
return vue.h(vue.resolveComponent(provider.component), {
|
|
81
|
+
class: this.ns.e("item"),
|
|
82
|
+
onClick: (event) => {
|
|
83
|
+
const isClose = provider.onClick(msg, event);
|
|
84
|
+
if (isClose) {
|
|
85
|
+
this.hiddenPopover();
|
|
86
|
+
}
|
|
87
|
+
},
|
|
88
|
+
message: msg
|
|
89
|
+
});
|
|
90
|
+
}
|
|
91
|
+
return vue.createVNode("div", {
|
|
92
|
+
"class": this.ns.e("item")
|
|
93
|
+
}, ["\u7AD9\u5185\u6D88\u606F\u7C7B\u578B".concat(msg.message_type, "\u6682\u672A\u652F\u6301")]);
|
|
94
|
+
}), this.allItems.length === 0 && vue.createVNode("div", {
|
|
95
|
+
"class": this.ns.e("nodata")
|
|
96
|
+
}, [vue.createTextVNode("\u6682\u65E0\u901A\u77E5")]), restLength > 0 && vue.createVNode("div", {
|
|
97
|
+
"class": this.ns.e("load-more"),
|
|
98
|
+
"onClick": this.showMore
|
|
99
|
+
}, [vue.createTextVNode("\u52A0\u8F7D\u66F4\u591A("), restLength, vue.createTextVNode(")")])]);
|
|
100
|
+
}
|
|
101
|
+
});
|
|
102
|
+
|
|
103
|
+
exports.InternalMessageTab = InternalMessageTab;
|
|
@@ -0,0 +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}
|
|
@@ -4,6 +4,9 @@ var vue = require('vue');
|
|
|
4
4
|
var vue3Util = require('@ibiz-template/vue3-util');
|
|
5
5
|
var runtime = require('@ibiz-template/runtime');
|
|
6
6
|
require('./user-message.css');
|
|
7
|
+
var asyncActionTab = require('./async-action/async-action-tab/async-action-tab.cjs');
|
|
8
|
+
require('./internal-message/index.cjs');
|
|
9
|
+
var internalMessageTab = require('./internal-message/internal-message-tab/internal-message-tab.cjs');
|
|
7
10
|
|
|
8
11
|
"use strict";
|
|
9
12
|
const UserMessage = /* @__PURE__ */ vue.defineComponent({
|
|
@@ -26,43 +29,23 @@ const UserMessage = /* @__PURE__ */ vue.defineComponent({
|
|
|
26
29
|
const sysImage = props.modelData.sysImage || {
|
|
27
30
|
imagePath: "svg/message.svg"
|
|
28
31
|
};
|
|
29
|
-
const {
|
|
30
|
-
appStore
|
|
31
|
-
} = vue3Util.useAppStore();
|
|
32
|
-
const showHistoryLength = vue.ref(0);
|
|
33
|
-
const actualMsgs = vue.computed(() => {
|
|
34
|
-
const showLength = appStore.recentAsyncActions.length + showHistoryLength.value;
|
|
35
|
-
return appStore.allAsyncActions.filter((_, index) => {
|
|
36
|
-
return index < showLength;
|
|
37
|
-
});
|
|
38
|
-
});
|
|
39
|
-
const hiddenHistory = () => {
|
|
40
|
-
showHistoryLength.value = 0;
|
|
41
|
-
};
|
|
42
|
-
const showMoreHistory = () => {
|
|
43
|
-
showHistoryLength.value += 10;
|
|
44
|
-
};
|
|
45
32
|
const popoverRef = vue.ref();
|
|
46
33
|
const hiddenPopover = () => {
|
|
47
34
|
popoverRef.value.hide();
|
|
48
35
|
};
|
|
36
|
+
const noticeNum = vue.ref(12);
|
|
49
37
|
return {
|
|
50
38
|
ns,
|
|
51
39
|
c,
|
|
40
|
+
noticeNum,
|
|
52
41
|
popoverRef,
|
|
53
42
|
showPopover,
|
|
54
43
|
sysImage,
|
|
55
44
|
currentTab,
|
|
56
|
-
|
|
57
|
-
actualMsgs,
|
|
58
|
-
hiddenPopover,
|
|
59
|
-
hiddenHistory,
|
|
60
|
-
showMoreHistory
|
|
45
|
+
hiddenPopover
|
|
61
46
|
};
|
|
62
47
|
},
|
|
63
48
|
render() {
|
|
64
|
-
const restLength = this.appStore.allAsyncActions.length - this.actualMsgs.length;
|
|
65
|
-
const loadMoreText = this.actualMsgs.length === 0 ? "\u67E5\u770B\u5386\u53F2\uFF08".concat(restLength, "\uFF09") : "\u52A0\u8F7D\u66F4\u591A\uFF08".concat(restLength, "\uFF09");
|
|
66
49
|
return vue.createVNode("div", {
|
|
67
50
|
"class": [this.ns.b(), this.ns.m(this.modelData.id), ...this.controller.containerClass]
|
|
68
51
|
}, [vue.createVNode(vue.resolveComponent("el-popover"), {
|
|
@@ -70,15 +53,20 @@ const UserMessage = /* @__PURE__ */ vue.defineComponent({
|
|
|
70
53
|
"popper-class": this.ns.b("popover"),
|
|
71
54
|
"placement": "bottom",
|
|
72
55
|
"trigger": "click",
|
|
73
|
-
"
|
|
74
|
-
"onUpdate:
|
|
75
|
-
"onHide": this.hiddenHistory
|
|
56
|
+
"visible": this.showPopover,
|
|
57
|
+
"onUpdate:visible": ($event) => this.showPopover = $event
|
|
76
58
|
}, {
|
|
77
59
|
reference: () => {
|
|
78
|
-
return vue.createVNode(vue.resolveComponent("
|
|
79
|
-
"class":
|
|
80
|
-
"
|
|
81
|
-
|
|
60
|
+
return vue.createVNode(vue.resolveComponent("el-badge"), {
|
|
61
|
+
"class": this.ns.e("badge"),
|
|
62
|
+
"value": this.noticeNum,
|
|
63
|
+
"hidden": this.noticeNum === 0
|
|
64
|
+
}, {
|
|
65
|
+
default: () => [vue.createVNode(vue.resolveComponent("i-biz-icon"), {
|
|
66
|
+
"class": [this.ns.e("image")],
|
|
67
|
+
"icon": this.sysImage
|
|
68
|
+
}, null)]
|
|
69
|
+
});
|
|
82
70
|
},
|
|
83
71
|
default: () => {
|
|
84
72
|
return vue.createVNode(vue.resolveComponent("el-tabs"), {
|
|
@@ -90,34 +78,18 @@ const UserMessage = /* @__PURE__ */ vue.defineComponent({
|
|
|
90
78
|
"label": "\u901A\u77E5",
|
|
91
79
|
"name": "notification"
|
|
92
80
|
}, {
|
|
93
|
-
default: () => [
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
if (isClose) {
|
|
106
|
-
this.hiddenPopover();
|
|
107
|
-
}
|
|
108
|
-
},
|
|
109
|
-
message: msg
|
|
110
|
-
});
|
|
111
|
-
}
|
|
112
|
-
return vue.createVNode("div", {
|
|
113
|
-
"class": this.ns.e("notification-item")
|
|
114
|
-
}, ["\u5F02\u6B65\u64CD\u4F5C\u7C7B\u578B".concat(msg.actiontype, "\u6682\u672A\u652F\u6301")]);
|
|
115
|
-
}), this.actualMsgs.length === 0 && vue.createVNode("div", {
|
|
116
|
-
"class": this.ns.e("nodata")
|
|
117
|
-
}, [vue.createTextVNode("\u6682\u65E0\u901A\u77E5")]), restLength > 0 && vue.createVNode("div", {
|
|
118
|
-
"class": this.ns.e("load-more"),
|
|
119
|
-
"onClick": this.showMoreHistory
|
|
120
|
-
}, [loadMoreText])]
|
|
81
|
+
default: () => [vue.createVNode(internalMessageTab.InternalMessageTab, {
|
|
82
|
+
"showPopover": this.showPopover,
|
|
83
|
+
"onHiddenPopover": this.hiddenPopover
|
|
84
|
+
}, null)]
|
|
85
|
+
}), vue.createVNode(vue.resolveComponent("el-tab-pane"), {
|
|
86
|
+
"label": "\u540E\u53F0\u4F5C\u4E1A",
|
|
87
|
+
"name": "async-action"
|
|
88
|
+
}, {
|
|
89
|
+
default: () => [vue.createVNode(asyncActionTab.AsyncActionTab, {
|
|
90
|
+
"showPopover": this.showPopover,
|
|
91
|
+
"onHiddenPopover": this.hiddenPopover
|
|
92
|
+
}, null)]
|
|
121
93
|
})]
|
|
122
94
|
});
|
|
123
95
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
.ibiz-user-message{
|
|
1
|
+
.ibiz-user-message{width:100%;height:100%;display:flex;align-items:center;justify-content:center}.ibiz-user-message__image{width:28px;height:28px;cursor:pointer}.ibiz-user-message__badge .el-badge__content{top:4px;right:calc(2px + var(--el-badge-size)/ 2);border-width:0}.ibiz-user-message-popover{width:500px!important;height:500px!important}.ibiz-user-message-popover.el-popover{padding-top:2px}.ibiz-user-message-popover-content{height:100%}.ibiz-user-message-popover-content>.el-tabs__content{height:calc(100% - 55px)}.ibiz-user-message-popover-content>.el-tabs__content>.el-tab-pane{height:100%;overflow:auto}
|
|
@@ -21,6 +21,16 @@ class OpenViewUtil {
|
|
|
21
21
|
);
|
|
22
22
|
return vue3Util.routerCallback.open(this.router, path);
|
|
23
23
|
}
|
|
24
|
+
async rootByModal(appViewId, context, params) {
|
|
25
|
+
const appView = await ibiz.hub.config.view.get(appViewId);
|
|
26
|
+
const { path } = await vue3Util.generateRoutePathByModal(
|
|
27
|
+
appView,
|
|
28
|
+
this.router.currentRoute.value,
|
|
29
|
+
context,
|
|
30
|
+
params
|
|
31
|
+
);
|
|
32
|
+
return vue3Util.routerCallback.open(this.router, path);
|
|
33
|
+
}
|
|
24
34
|
/**
|
|
25
35
|
* 模态打开视图
|
|
26
36
|
*
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@ibiz-template/vue3-components",
|
|
3
|
-
"version": "0.5.
|
|
3
|
+
"version": "0.5.7-alpha.0",
|
|
4
4
|
"description": "使用 rollup 编译 vue 组件或者 jsx",
|
|
5
5
|
"main": "lib/index.cjs",
|
|
6
6
|
"module": "es/index.mjs",
|
|
@@ -19,6 +19,7 @@
|
|
|
19
19
|
"prepublish": "npm run build",
|
|
20
20
|
"publish:next": "npm run build && npm publish --access public --tag=next --registry=https://registry.npmjs.org/",
|
|
21
21
|
"publish:dev": "npm run build && npm publish --access public --tag=dev --registry=https://registry.npmjs.org/",
|
|
22
|
+
"publish:alpha": "npm run build && npm publish --access public --tag=alpha --registry=https://registry.npmjs.org/",
|
|
22
23
|
"publish:beta": "npm run build && npm publish --access public --tag=beta --registry=https://registry.npmjs.org/",
|
|
23
24
|
"publish:npm": "npm run build && npm publish --access public --registry=https://registry.npmjs.org/"
|
|
24
25
|
},
|
|
@@ -26,12 +27,12 @@
|
|
|
26
27
|
"@floating-ui/dom": "^1.5.3",
|
|
27
28
|
"@ibiz-template-plugin/ai-chat": "^0.0.1",
|
|
28
29
|
"@ibiz-template-plugin/gantt": "0.1.1",
|
|
29
|
-
"@ibiz-template/core": "^0.5.
|
|
30
|
-
"@ibiz-template/model-helper": "^0.5.
|
|
31
|
-
"@ibiz-template/runtime": "^0.5.
|
|
30
|
+
"@ibiz-template/core": "^0.5.7-alpha.0",
|
|
31
|
+
"@ibiz-template/model-helper": "^0.5.7-alpha.0",
|
|
32
|
+
"@ibiz-template/runtime": "^0.5.7-alpha.0",
|
|
32
33
|
"@ibiz-template/theme": "^0.5.0",
|
|
33
|
-
"@ibiz-template/vue3-util": "^0.5.
|
|
34
|
-
"@ibiz/model-core": "^0.1.
|
|
34
|
+
"@ibiz-template/vue3-util": "^0.5.7-alpha.0",
|
|
35
|
+
"@ibiz/model-core": "^0.1.6",
|
|
35
36
|
"@imengyu/vue3-context-menu": "^1.3.5",
|
|
36
37
|
"@monaco-editor/loader": "^1.4.0",
|
|
37
38
|
"@wangeditor/editor": "^5.1.23",
|
|
@@ -44,7 +45,7 @@
|
|
|
44
45
|
"file-saver": "^2.0.5",
|
|
45
46
|
"interactjs": "^1.10.20",
|
|
46
47
|
"lodash-es": "^4.17.21",
|
|
47
|
-
"monaco-editor": "^0.
|
|
48
|
+
"monaco-editor": "^0.45.0",
|
|
48
49
|
"pinia": "^2.1.7",
|
|
49
50
|
"pluralize": "^8.0.0",
|
|
50
51
|
"qs": "^6.11.2",
|
|
@@ -57,13 +58,13 @@
|
|
|
57
58
|
"xlsx": "^0.18.5"
|
|
58
59
|
},
|
|
59
60
|
"devDependencies": {
|
|
60
|
-
"@commitlint/cli": "^18.
|
|
61
|
-
"@commitlint/config-conventional": "^18.
|
|
61
|
+
"@commitlint/cli": "^18.5.0",
|
|
62
|
+
"@commitlint/config-conventional": "^18.5.0",
|
|
62
63
|
"@ibiz-template/cli": "^0.3.10",
|
|
63
64
|
"@types/lodash-es": "^4.17.12",
|
|
64
|
-
"@types/node": "^20.
|
|
65
|
-
"@types/qs": "^6.9.
|
|
66
|
-
"@types/ramda": "^0.29.
|
|
65
|
+
"@types/node": "^20.11.5",
|
|
66
|
+
"@types/qs": "^6.9.11",
|
|
67
|
+
"@types/ramda": "^0.29.10",
|
|
67
68
|
"husky": "^8.0.3",
|
|
68
69
|
"lint-staged": "^15.2.0",
|
|
69
70
|
"stylelint": "15.11.0",
|
|
@@ -74,8 +75,8 @@
|
|
|
74
75
|
"stylelint-config-standard-scss": "11.1.0",
|
|
75
76
|
"stylelint-scss": "5.3.1",
|
|
76
77
|
"typescript": "^5.3.3",
|
|
77
|
-
"vite": "^5.0.
|
|
78
|
-
"vue-tsc": "^1.8.
|
|
78
|
+
"vite": "^5.0.12",
|
|
79
|
+
"vue-tsc": "^1.8.27"
|
|
79
80
|
},
|
|
80
81
|
"peerDependencies": {
|
|
81
82
|
"@floating-ui/dom": "^1.5.1",
|
|
@@ -84,7 +85,7 @@
|
|
|
84
85
|
"@ibiz-template/runtime": "^0.5.2",
|
|
85
86
|
"@ibiz-template/theme": "^0.5.0",
|
|
86
87
|
"@ibiz-template/vue3-util": "^0.5.2",
|
|
87
|
-
"@ibiz/model-core": "^0.1.
|
|
88
|
+
"@ibiz/model-core": "^0.1.6",
|
|
88
89
|
"@imengyu/vue3-context-menu": "^1.3.3",
|
|
89
90
|
"@monaco-editor/loader": "^1.3.3",
|
|
90
91
|
"@wangeditor/editor": "^5.1.23",
|