@opendesign-plus-test/components 0.0.1-rc.147 → 0.0.1-rc.149
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/chunk-OElCookieNotice.cjs.js +1 -1
- package/dist/chunk-OElCookieNotice.es.js +168 -104
- package/dist/components/meeting/OMeetingMinutes.vue.d.ts +20 -0
- package/dist/components/meeting/components/OMeetingSendMinutesDialog.vue.d.ts +17 -0
- package/dist/components/meeting/index.d.ts +26 -1
- package/dist/components/meeting/types.d.ts +17 -0
- package/dist/components.cjs.js +37 -37
- package/dist/components.css +1 -1
- package/dist/components.es.js +9881 -9425
- package/dist/treeshaking/_virtual/icon-edit.mjs +17 -0
- package/dist/treeshaking/components/footer/components/FooterList.css +96 -109
- package/dist/treeshaking/components/footer/components/FooterList.vue.mjs +1 -1
- package/dist/treeshaking/components/header/components/HeaderContent.css +185 -185
- package/dist/treeshaking/components/header/components/HeaderContent.vue.mjs +1 -1
- package/dist/treeshaking/components/meeting/OMeetingMinutes.css +731 -0
- package/dist/treeshaking/components/meeting/OMeetingMinutes.vue.d.ts +20 -0
- package/dist/treeshaking/components/meeting/OMeetingMinutes.vue.mjs +8 -0
- package/dist/treeshaking/components/meeting/OMeetingMinutes.vue2.mjs +356 -0
- package/dist/treeshaking/components/meeting/OMeetingMinutes2.css +11 -0
- package/dist/treeshaking/components/meeting/components/OMeetingSendMinutesDialog.css +276 -0
- package/dist/treeshaking/components/meeting/components/OMeetingSendMinutesDialog.vue.d.ts +17 -0
- package/dist/treeshaking/components/meeting/components/OMeetingSendMinutesDialog.vue.mjs +8 -0
- package/dist/treeshaking/components/meeting/components/OMeetingSendMinutesDialog.vue2.mjs +225 -0
- package/dist/treeshaking/components/meeting/components/OMeetingSendMinutesDialog2.css +11 -0
- package/dist/treeshaking/components/meeting/index.d.ts +26 -1
- package/dist/treeshaking/components/meeting/index.mjs +7 -0
- package/dist/treeshaking/components/meeting/types.d.ts +17 -0
- package/dist/treeshaking/i18n/en.mjs +33 -1
- package/dist/treeshaking/i18n/zh.mjs +33 -1
- package/dist/treeshaking/index.mjs +2 -1
- package/package.json +1 -1
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import _sfc_main from "./OMeetingSendMinutesDialog.vue2.mjs";
|
|
2
|
+
import './OMeetingSendMinutesDialog.css';
|
|
3
|
+
import './OMeetingSendMinutesDialog2.css';
|
|
4
|
+
import _export_sfc from "../../../_virtual/_plugin-vue_export-helper.mjs";
|
|
5
|
+
const OMeetingSendMinutesDialog = /* @__PURE__ */ _export_sfc(_sfc_main, [["__scopeId", "data-v-57f83ba7"]]);
|
|
6
|
+
export {
|
|
7
|
+
OMeetingSendMinutesDialog as default
|
|
8
|
+
};
|
|
@@ -0,0 +1,225 @@
|
|
|
1
|
+
import { defineComponent, ref, computed, watch, openBlock, createBlock, unref, withCtx, createElementVNode, toDisplayString, createElementBlock, Fragment, renderList, createTextVNode, withDirectives, withKeys, withModifiers, vModelText, createVNode } from "vue";
|
|
2
|
+
import { useMessage, ODialog, OTag, OInput, OScroller, OButton } from "@opensig/opendesign";
|
|
3
|
+
import { useMeetingConfig } from "../composables/useMeetingConfig.mjs";
|
|
4
|
+
import { EMAIL_REGEX } from "../config.mjs";
|
|
5
|
+
const _hoisted_1 = { class: "o-meeting-send-minutes" };
|
|
6
|
+
const _hoisted_2 = { class: "o-meeting-send-minutes-field-row" };
|
|
7
|
+
const _hoisted_3 = { class: "field-label" };
|
|
8
|
+
const _hoisted_4 = { class: "o-meeting-send-minutes-field-control o-meeting-send-minutes-sender-line" };
|
|
9
|
+
const _hoisted_5 = { class: "sender-text" };
|
|
10
|
+
const _hoisted_6 = { class: "o-meeting-send-minutes-field-row" };
|
|
11
|
+
const _hoisted_7 = { class: "field-label" };
|
|
12
|
+
const _hoisted_8 = { class: "o-meeting-send-minutes-field-control" };
|
|
13
|
+
const _hoisted_9 = ["placeholder", "onKeydown"];
|
|
14
|
+
const _hoisted_10 = { class: "o-meeting-send-minutes-field-row" };
|
|
15
|
+
const _hoisted_11 = { class: "field-label" };
|
|
16
|
+
const _hoisted_12 = { class: "o-meeting-send-minutes-field-control" };
|
|
17
|
+
const _hoisted_13 = { class: "o-meeting-send-minutes-field-row o-meeting-send-minutes-email-body-row" };
|
|
18
|
+
const _hoisted_14 = { class: "field-label" };
|
|
19
|
+
const _hoisted_15 = { class: "o-meeting-send-minutes-field-control" };
|
|
20
|
+
const _hoisted_16 = { class: "email-body-content" };
|
|
21
|
+
const _hoisted_17 = { class: "o-meeting-send-minutes-footer" };
|
|
22
|
+
const _sfc_main = /* @__PURE__ */ defineComponent({
|
|
23
|
+
__name: "OMeetingSendMinutesDialog",
|
|
24
|
+
props: {
|
|
25
|
+
visible: { type: Boolean },
|
|
26
|
+
meeting: {},
|
|
27
|
+
prefill: {},
|
|
28
|
+
sendMinutesRequest: {}
|
|
29
|
+
},
|
|
30
|
+
emits: ["update:visible", "sent"],
|
|
31
|
+
setup(__props, { emit: __emit }) {
|
|
32
|
+
const props = __props;
|
|
33
|
+
const emit = __emit;
|
|
34
|
+
const { t } = useMeetingConfig();
|
|
35
|
+
const message = useMessage(null);
|
|
36
|
+
const recipients = ref([]);
|
|
37
|
+
const extraInput = ref("");
|
|
38
|
+
const subject = ref("");
|
|
39
|
+
const sending = ref(false);
|
|
40
|
+
const recipientInputRef = ref(null);
|
|
41
|
+
const sender = computed(() => {
|
|
42
|
+
var _a;
|
|
43
|
+
return ((_a = props.meeting) == null ? void 0 : _a.email_list) || "";
|
|
44
|
+
});
|
|
45
|
+
const defaultSubject = () => {
|
|
46
|
+
if (!props.meeting) return "";
|
|
47
|
+
const { topic, date } = props.meeting;
|
|
48
|
+
return t("meeting.sendMinutesSubjectDefault", [topic, date || ""]);
|
|
49
|
+
};
|
|
50
|
+
watch(
|
|
51
|
+
() => props.visible,
|
|
52
|
+
(v) => {
|
|
53
|
+
if (v && props.meeting) {
|
|
54
|
+
recipients.value = props.prefill && props.prefill.length ? [...props.prefill] : [props.meeting.email_list];
|
|
55
|
+
subject.value = defaultSubject();
|
|
56
|
+
extraInput.value = "";
|
|
57
|
+
}
|
|
58
|
+
}
|
|
59
|
+
);
|
|
60
|
+
const addRecipient = () => {
|
|
61
|
+
const val = extraInput.value.trim();
|
|
62
|
+
if (!val) return;
|
|
63
|
+
if (!EMAIL_REGEX.test(val)) {
|
|
64
|
+
message.warning({ content: t("meeting.sendMinutesEmailInvalid") });
|
|
65
|
+
return;
|
|
66
|
+
}
|
|
67
|
+
if (recipients.value.includes(val)) {
|
|
68
|
+
message.warning({ content: t("meeting.sendMinutesEmailExists") });
|
|
69
|
+
return;
|
|
70
|
+
}
|
|
71
|
+
recipients.value.push(val);
|
|
72
|
+
extraInput.value = "";
|
|
73
|
+
};
|
|
74
|
+
const removeRecipient = (email) => {
|
|
75
|
+
recipients.value = recipients.value.filter((r) => r !== email);
|
|
76
|
+
};
|
|
77
|
+
const handleBackspace = (e) => {
|
|
78
|
+
if (extraInput.value === "" && recipients.value.length > 0) {
|
|
79
|
+
e.preventDefault();
|
|
80
|
+
recipients.value.pop();
|
|
81
|
+
}
|
|
82
|
+
};
|
|
83
|
+
const focusRecipientInput = () => {
|
|
84
|
+
var _a;
|
|
85
|
+
(_a = recipientInputRef.value) == null ? void 0 : _a.focus();
|
|
86
|
+
};
|
|
87
|
+
const handleSend = async () => {
|
|
88
|
+
if (!props.meeting || !props.sendMinutesRequest) return;
|
|
89
|
+
if (recipients.value.length === 0) {
|
|
90
|
+
message.warning({ content: t("meeting.sendMinutesEmptyRecipient") });
|
|
91
|
+
return;
|
|
92
|
+
}
|
|
93
|
+
try {
|
|
94
|
+
sending.value = true;
|
|
95
|
+
const log = await props.sendMinutesRequest(props.meeting.id, recipients.value, subject.value);
|
|
96
|
+
message.success({ content: t("meeting.sendMinutesSent") });
|
|
97
|
+
emit("sent", log);
|
|
98
|
+
emit("update:visible", false);
|
|
99
|
+
} finally {
|
|
100
|
+
sending.value = false;
|
|
101
|
+
}
|
|
102
|
+
};
|
|
103
|
+
return (_ctx, _cache) => {
|
|
104
|
+
return openBlock(), createBlock(unref(ODialog), {
|
|
105
|
+
visible: __props.visible,
|
|
106
|
+
size: "large",
|
|
107
|
+
"onUpdate:visible": _cache[3] || (_cache[3] = (v) => emit("update:visible", v)),
|
|
108
|
+
class: "o-meeting-send-minutes-dialog"
|
|
109
|
+
}, {
|
|
110
|
+
header: withCtx(() => [
|
|
111
|
+
createTextVNode(toDisplayString(unref(t)("meeting.sendMinutesDialogTitle")), 1)
|
|
112
|
+
]),
|
|
113
|
+
footer: withCtx(() => [
|
|
114
|
+
createElementVNode("div", _hoisted_17, [
|
|
115
|
+
createVNode(unref(OButton), {
|
|
116
|
+
color: "primary",
|
|
117
|
+
variant: "solid",
|
|
118
|
+
round: "pill",
|
|
119
|
+
loading: sending.value,
|
|
120
|
+
onClick: handleSend
|
|
121
|
+
}, {
|
|
122
|
+
default: withCtx(() => [
|
|
123
|
+
createTextVNode(toDisplayString(unref(t)("meeting.sendMinutesSend")), 1)
|
|
124
|
+
]),
|
|
125
|
+
_: 1
|
|
126
|
+
}, 8, ["loading"]),
|
|
127
|
+
createVNode(unref(OButton), {
|
|
128
|
+
color: "primary",
|
|
129
|
+
variant: "outline",
|
|
130
|
+
round: "pill",
|
|
131
|
+
onClick: _cache[2] || (_cache[2] = ($event) => emit("update:visible", false))
|
|
132
|
+
}, {
|
|
133
|
+
default: withCtx(() => [
|
|
134
|
+
createTextVNode(toDisplayString(unref(t)("meeting.sendMinutesCancel")), 1)
|
|
135
|
+
]),
|
|
136
|
+
_: 1
|
|
137
|
+
})
|
|
138
|
+
])
|
|
139
|
+
]),
|
|
140
|
+
default: withCtx(() => [
|
|
141
|
+
createElementVNode("div", _hoisted_1, [
|
|
142
|
+
createElementVNode("div", _hoisted_2, [
|
|
143
|
+
createElementVNode("span", _hoisted_3, toDisplayString(unref(t)("meeting.sendMinutesSender")), 1),
|
|
144
|
+
createElementVNode("div", _hoisted_4, [
|
|
145
|
+
createElementVNode("span", _hoisted_5, toDisplayString(sender.value), 1)
|
|
146
|
+
])
|
|
147
|
+
]),
|
|
148
|
+
createElementVNode("div", _hoisted_6, [
|
|
149
|
+
createElementVNode("span", _hoisted_7, toDisplayString(unref(t)("meeting.sendMinutesRecipient")), 1),
|
|
150
|
+
createElementVNode("div", _hoisted_8, [
|
|
151
|
+
createElementVNode("div", {
|
|
152
|
+
class: "o-meeting-send-minutes-recipient-editor",
|
|
153
|
+
onClick: focusRecipientInput
|
|
154
|
+
}, [
|
|
155
|
+
(openBlock(true), createElementBlock(Fragment, null, renderList(recipients.value, (email) => {
|
|
156
|
+
return openBlock(), createBlock(unref(OTag), {
|
|
157
|
+
key: email,
|
|
158
|
+
class: "recipient-tag",
|
|
159
|
+
variant: "solid",
|
|
160
|
+
color: "primary",
|
|
161
|
+
closable: "",
|
|
162
|
+
onClose: ($event) => removeRecipient(email)
|
|
163
|
+
}, {
|
|
164
|
+
default: withCtx(() => [
|
|
165
|
+
createTextVNode(toDisplayString(email), 1)
|
|
166
|
+
]),
|
|
167
|
+
_: 2
|
|
168
|
+
}, 1032, ["onClose"]);
|
|
169
|
+
}), 128)),
|
|
170
|
+
withDirectives(createElementVNode("input", {
|
|
171
|
+
ref_key: "recipientInputRef",
|
|
172
|
+
ref: recipientInputRef,
|
|
173
|
+
"onUpdate:modelValue": _cache[0] || (_cache[0] = ($event) => extraInput.value = $event),
|
|
174
|
+
class: "recipient-native-input",
|
|
175
|
+
type: "text",
|
|
176
|
+
placeholder: unref(t)("meeting.sendMinutesRecipientPlaceholder"),
|
|
177
|
+
onKeydown: [
|
|
178
|
+
withKeys(withModifiers(addRecipient, ["prevent"]), ["enter"]),
|
|
179
|
+
withKeys(handleBackspace, ["backspace"])
|
|
180
|
+
]
|
|
181
|
+
}, null, 40, _hoisted_9), [
|
|
182
|
+
[vModelText, extraInput.value]
|
|
183
|
+
])
|
|
184
|
+
])
|
|
185
|
+
])
|
|
186
|
+
]),
|
|
187
|
+
createElementVNode("div", _hoisted_10, [
|
|
188
|
+
createElementVNode("span", _hoisted_11, toDisplayString(unref(t)("meeting.sendMinutesSubject")), 1),
|
|
189
|
+
createElementVNode("div", _hoisted_12, [
|
|
190
|
+
createVNode(unref(OInput), {
|
|
191
|
+
modelValue: subject.value,
|
|
192
|
+
"onUpdate:modelValue": _cache[1] || (_cache[1] = ($event) => subject.value = $event),
|
|
193
|
+
class: "subject-input",
|
|
194
|
+
placeholder: unref(t)("meeting.sendMinutesSubjectPlaceholder")
|
|
195
|
+
}, null, 8, ["modelValue", "placeholder"])
|
|
196
|
+
])
|
|
197
|
+
]),
|
|
198
|
+
createElementVNode("div", _hoisted_13, [
|
|
199
|
+
createElementVNode("span", _hoisted_14, toDisplayString(unref(t)("meeting.sendMinutesBody")), 1),
|
|
200
|
+
createElementVNode("div", _hoisted_15, [
|
|
201
|
+
createVNode(unref(OScroller), {
|
|
202
|
+
class: "o-meeting-send-minutes-email-body-scroller",
|
|
203
|
+
"disabled-x": "",
|
|
204
|
+
"show-type": "auto"
|
|
205
|
+
}, {
|
|
206
|
+
default: withCtx(() => {
|
|
207
|
+
var _a;
|
|
208
|
+
return [
|
|
209
|
+
createElementVNode("div", _hoisted_16, toDisplayString((_a = __props.meeting) == null ? void 0 : _a.minutes), 1)
|
|
210
|
+
];
|
|
211
|
+
}),
|
|
212
|
+
_: 1
|
|
213
|
+
})
|
|
214
|
+
])
|
|
215
|
+
])
|
|
216
|
+
])
|
|
217
|
+
]),
|
|
218
|
+
_: 1
|
|
219
|
+
}, 8, ["visible"]);
|
|
220
|
+
};
|
|
221
|
+
}
|
|
222
|
+
});
|
|
223
|
+
export {
|
|
224
|
+
_sfc_main as default
|
|
225
|
+
};
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
.hover-icon-rotate .o-icon {
|
|
2
|
+
transition: all var(--o-duration-m1) var(--o-easing-standard-in);
|
|
3
|
+
}
|
|
4
|
+
@media (hover: hover) {
|
|
5
|
+
.hover-icon-rotate:hover .o-icon {
|
|
6
|
+
transform: rotate(-180deg);
|
|
7
|
+
}
|
|
8
|
+
}
|
|
9
|
+
.o-meeting-send-minutes-dialog {
|
|
10
|
+
--dlg-radius: var(--o-radius-xs);
|
|
11
|
+
}
|
|
@@ -870,5 +870,30 @@ declare const OMeetingMyCalendar: {
|
|
|
870
870
|
}) & {
|
|
871
871
|
install(app: App): void;
|
|
872
872
|
};
|
|
873
|
-
|
|
873
|
+
declare const OMeetingMinutes: {
|
|
874
|
+
new (...args: any[]): import('vue').CreateComponentPublicInstanceWithMixins<Readonly<import('./types').MeetingMinutesPropsT> & Readonly<{}>, {
|
|
875
|
+
refresh: () => Promise<void>;
|
|
876
|
+
}, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {}, import('vue').PublicProps, {}, false, {}, {}, import('vue').GlobalComponents, import('vue').GlobalDirectives, string, {}, HTMLDivElement, import('vue').ComponentProvideOptions, {
|
|
877
|
+
P: {};
|
|
878
|
+
B: {};
|
|
879
|
+
D: {};
|
|
880
|
+
C: {};
|
|
881
|
+
M: {};
|
|
882
|
+
Defaults: {};
|
|
883
|
+
}, Readonly<import('./types').MeetingMinutesPropsT> & Readonly<{}>, {
|
|
884
|
+
refresh: () => Promise<void>;
|
|
885
|
+
}, {}, {}, {}, {}>;
|
|
886
|
+
__isFragment?: never;
|
|
887
|
+
__isTeleport?: never;
|
|
888
|
+
__isSuspense?: never;
|
|
889
|
+
} & import('vue').ComponentOptionsBase<Readonly<import('./types').MeetingMinutesPropsT> & Readonly<{}>, {
|
|
890
|
+
refresh: () => Promise<void>;
|
|
891
|
+
}, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {}, string, {}, {}, string, {}, import('vue').GlobalComponents, import('vue').GlobalDirectives, string, import('vue').ComponentProvideOptions> & import('vue').VNodeProps & import('vue').AllowedComponentProps & import('vue').ComponentCustomProps & (new () => {
|
|
892
|
+
$slots: {
|
|
893
|
+
empty?(_: {}): any;
|
|
894
|
+
};
|
|
895
|
+
}) & {
|
|
896
|
+
install(app: App): void;
|
|
897
|
+
};
|
|
898
|
+
export { OMeetingCalendar, OMeetingForm, OMeetingPlayback, OMeetingSigCalendar, OMeetingMyCalendar, OMeetingMinutes, };
|
|
874
899
|
export * from './types';
|
|
@@ -10,6 +10,7 @@ import './OMeetingSigCalendar.css';
|
|
|
10
10
|
import _sfc_main$2 from "./OMeetingMyCalendar.vue.mjs";
|
|
11
11
|
import './OMeetingMyCalendar.css';
|
|
12
12
|
import './OMeetingMyCalendar2.css';
|
|
13
|
+
import _OMeetingMinutes from "./OMeetingMinutes.vue.mjs";
|
|
13
14
|
const OMeetingCalendar = Object.assign(_sfc_main, {
|
|
14
15
|
install(app) {
|
|
15
16
|
app.component("OMeetingCalendar", _sfc_main);
|
|
@@ -35,9 +36,15 @@ const OMeetingMyCalendar = Object.assign(_sfc_main$2, {
|
|
|
35
36
|
app.component("OMeetingMyCalendar", _sfc_main$2);
|
|
36
37
|
}
|
|
37
38
|
});
|
|
39
|
+
const OMeetingMinutes = Object.assign(_OMeetingMinutes, {
|
|
40
|
+
install(app) {
|
|
41
|
+
app.component("OMeetingMinutes", _OMeetingMinutes);
|
|
42
|
+
}
|
|
43
|
+
});
|
|
38
44
|
export {
|
|
39
45
|
OMeetingCalendar,
|
|
40
46
|
OMeetingForm,
|
|
47
|
+
OMeetingMinutes,
|
|
41
48
|
OMeetingMyCalendar,
|
|
42
49
|
OMeetingPlayback,
|
|
43
50
|
OMeetingSigCalendar
|
|
@@ -135,6 +135,16 @@ export interface MeetingItemT extends MeetingPostT {
|
|
|
135
135
|
sub_id: string;
|
|
136
136
|
dateRange?: string;
|
|
137
137
|
hasObsData?: boolean;
|
|
138
|
+
minutes?: string;
|
|
139
|
+
send_logs?: SendLogT[];
|
|
140
|
+
}
|
|
141
|
+
export interface SendLogT {
|
|
142
|
+
id: number;
|
|
143
|
+
send_time: string;
|
|
144
|
+
sender: string;
|
|
145
|
+
recipients: string[];
|
|
146
|
+
subject: string;
|
|
147
|
+
content: string;
|
|
138
148
|
}
|
|
139
149
|
export interface MeetingEventsItemT {
|
|
140
150
|
id: number;
|
|
@@ -241,3 +251,10 @@ export interface MeetingPlaybackSubtitlesPropsT {
|
|
|
241
251
|
instance?: any;
|
|
242
252
|
trackIdx: number;
|
|
243
253
|
}
|
|
254
|
+
export interface MeetingMinutesPropsT {
|
|
255
|
+
mid: string | number;
|
|
256
|
+
getMinutesDetailRequest: any;
|
|
257
|
+
saveMinutesRequest: any;
|
|
258
|
+
getSendLogsRequest: any;
|
|
259
|
+
sendMinutesRequest: any;
|
|
260
|
+
}
|
|
@@ -373,7 +373,39 @@ const en = {
|
|
|
373
373
|
"video.downloadCourseware": "Download Courseware",
|
|
374
374
|
"video.download": "Download",
|
|
375
375
|
"video.cancel": "Cancel",
|
|
376
|
-
"logo.tip": "Listed in no particular order"
|
|
376
|
+
"logo.tip": "Listed in no particular order",
|
|
377
|
+
// -------------------- 会议纪要(英文占位:暂用中文原文,等翻译) --------------------
|
|
378
|
+
"meeting.minutesExpired": "已结束",
|
|
379
|
+
"meeting.minutesSigGroup": "SIG组:",
|
|
380
|
+
"meeting.minutesEdit": "编辑纪要",
|
|
381
|
+
"meeting.minutesSend": "发送纪要",
|
|
382
|
+
"meeting.minutesCancel": "取消",
|
|
383
|
+
"meeting.minutesSave": "保存",
|
|
384
|
+
"meeting.minutesSaved": "会议纪要已保存",
|
|
385
|
+
"meeting.minutesLoading": "加载中···",
|
|
386
|
+
"meeting.minutesSendLogs": "发送记录",
|
|
387
|
+
"meeting.minutesSendLogsDesc": "发送了会议纪要",
|
|
388
|
+
"meeting.minutesViewDetail": "查看详情",
|
|
389
|
+
"meeting.minutesNoLogs": "暂无发送记录",
|
|
390
|
+
"meeting.minutesCopyTitle": "邮件内容副本",
|
|
391
|
+
"meeting.minutesCopySender": "发件人",
|
|
392
|
+
"meeting.minutesCopyRecipient": "收件人",
|
|
393
|
+
"meeting.minutesCopySubject": "主题",
|
|
394
|
+
"meeting.minutesCopyTime": "时间",
|
|
395
|
+
"meeting.sendMinutesDialogTitle": "发送会议纪要",
|
|
396
|
+
"meeting.sendMinutesSender": "发件人",
|
|
397
|
+
"meeting.sendMinutesRecipient": "收件人",
|
|
398
|
+
"meeting.sendMinutesSubject": "主题",
|
|
399
|
+
"meeting.sendMinutesBody": "邮件内容",
|
|
400
|
+
"meeting.sendMinutesRecipientPlaceholder": "输入邮箱地址,按回车添加",
|
|
401
|
+
"meeting.sendMinutesSubjectPlaceholder": "请输入邮件主题",
|
|
402
|
+
"meeting.sendMinutesSend": "发送",
|
|
403
|
+
"meeting.sendMinutesCancel": "取消",
|
|
404
|
+
"meeting.sendMinutesEmailInvalid": "请输入有效的邮箱地址",
|
|
405
|
+
"meeting.sendMinutesEmailExists": "该收件人已存在",
|
|
406
|
+
"meeting.sendMinutesEmptyRecipient": "请至少保留一个收件人",
|
|
407
|
+
"meeting.sendMinutesSent": "会议纪要已发送",
|
|
408
|
+
"meeting.sendMinutesSubjectDefault": "[会议纪要] {0} ({1})"
|
|
377
409
|
};
|
|
378
410
|
export {
|
|
379
411
|
en as default
|
|
@@ -376,7 +376,39 @@ const zh = {
|
|
|
376
376
|
"video.downloadCourseware": "课件下载",
|
|
377
377
|
"video.download": "下载",
|
|
378
378
|
"video.cancel": "取消",
|
|
379
|
-
"logo.tip": "注:排名不分先后"
|
|
379
|
+
"logo.tip": "注:排名不分先后",
|
|
380
|
+
// -------------------- 会议纪要 --------------------
|
|
381
|
+
"meeting.minutesExpired": "已结束",
|
|
382
|
+
"meeting.minutesSigGroup": "SIG组:",
|
|
383
|
+
"meeting.minutesEdit": "编辑纪要",
|
|
384
|
+
"meeting.minutesSend": "发送纪要",
|
|
385
|
+
"meeting.minutesCancel": "取消",
|
|
386
|
+
"meeting.minutesSave": "保存",
|
|
387
|
+
"meeting.minutesSaved": "会议纪要已保存",
|
|
388
|
+
"meeting.minutesLoading": "加载中···",
|
|
389
|
+
"meeting.minutesSendLogs": "发送记录",
|
|
390
|
+
"meeting.minutesSendLogsDesc": "发送了会议纪要",
|
|
391
|
+
"meeting.minutesViewDetail": "查看详情",
|
|
392
|
+
"meeting.minutesNoLogs": "暂无发送记录",
|
|
393
|
+
"meeting.minutesCopyTitle": "邮件内容副本",
|
|
394
|
+
"meeting.minutesCopySender": "发件人",
|
|
395
|
+
"meeting.minutesCopyRecipient": "收件人",
|
|
396
|
+
"meeting.minutesCopySubject": "主题",
|
|
397
|
+
"meeting.minutesCopyTime": "时间",
|
|
398
|
+
"meeting.sendMinutesDialogTitle": "发送会议纪要",
|
|
399
|
+
"meeting.sendMinutesSender": "发件人",
|
|
400
|
+
"meeting.sendMinutesRecipient": "收件人",
|
|
401
|
+
"meeting.sendMinutesSubject": "主题",
|
|
402
|
+
"meeting.sendMinutesBody": "邮件内容",
|
|
403
|
+
"meeting.sendMinutesRecipientPlaceholder": "输入邮箱地址,按回车添加",
|
|
404
|
+
"meeting.sendMinutesSubjectPlaceholder": "请输入邮件主题",
|
|
405
|
+
"meeting.sendMinutesSend": "发送",
|
|
406
|
+
"meeting.sendMinutesCancel": "取消",
|
|
407
|
+
"meeting.sendMinutesEmailInvalid": "请输入有效的邮箱地址",
|
|
408
|
+
"meeting.sendMinutesEmailExists": "该收件人已存在",
|
|
409
|
+
"meeting.sendMinutesEmptyRecipient": "请至少保留一个收件人",
|
|
410
|
+
"meeting.sendMinutesSent": "会议纪要已发送",
|
|
411
|
+
"meeting.sendMinutesSubjectDefault": "[会议纪要] {0} ({1})"
|
|
380
412
|
};
|
|
381
413
|
export {
|
|
382
414
|
zh as default
|
|
@@ -15,7 +15,7 @@ import { OHeaderTheme } from "./components/header-theme/index.mjs";
|
|
|
15
15
|
import { OHeaderUser } from "./components/header-user/index.mjs";
|
|
16
16
|
import { createSvgIcon } from "./components/icon/index.mjs";
|
|
17
17
|
import { OLogoSwiper, OLogoSwiperItems } from "./components/logo-swiper/index.mjs";
|
|
18
|
-
import { OMeetingCalendar, OMeetingForm, OMeetingMyCalendar, OMeetingPlayback, OMeetingSigCalendar } from "./components/meeting/index.mjs";
|
|
18
|
+
import { OMeetingCalendar, OMeetingForm, OMeetingMinutes, OMeetingMyCalendar, OMeetingPlayback, OMeetingSigCalendar } from "./components/meeting/index.mjs";
|
|
19
19
|
import { OSearchInput } from "./components/search/index.mjs";
|
|
20
20
|
import { OSection } from "./components/section/index.mjs";
|
|
21
21
|
import { OSigDetail, OSigList } from "./components/sig/index.mjs";
|
|
@@ -57,6 +57,7 @@ export {
|
|
|
57
57
|
OLogoSwiperItems,
|
|
58
58
|
OMeetingCalendar,
|
|
59
59
|
OMeetingForm,
|
|
60
|
+
OMeetingMinutes,
|
|
60
61
|
OMeetingMyCalendar,
|
|
61
62
|
OMeetingPlayback,
|
|
62
63
|
OMeetingSigCalendar,
|