@matechat/ng 20.0.1-alpha.0 → 20.1.0-alpha.1
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/README.md +206 -41
- package/fesm2022/matechat-ng.mjs +71 -70
- package/fesm2022/matechat-ng.mjs.map +1 -1
- package/index.d.ts +612 -3
- package/package.json +14 -3
- package/Base/base.component.d.ts +0 -11
- package/Bubble/avatar/avatar.component.d.ts +0 -23
- package/Bubble/avatar-body-icon/avatar-body-icon.component.d.ts +0 -7
- package/Bubble/avatar-no-body-icon/avatar-no-body-icon.component.d.ts +0 -7
- package/Bubble/bubble-loading/bubble-loading.component.d.ts +0 -5
- package/Bubble/bubble.component.d.ts +0 -26
- package/Bubble/bubble.module.d.ts +0 -10
- package/Bubble/index.d.ts +0 -6
- package/Input/button/button.component.d.ts +0 -32
- package/Input/index.d.ts +0 -2
- package/Input/input.component.d.ts +0 -65
- package/Input/input.module.d.ts +0 -11
- package/Input/send-icon/send-icon.component.d.ts +0 -5
- package/Locale/index.d.ts +0 -5
- package/Locale/locale.module.d.ts +0 -17
- package/Locale/locale.service.d.ts +0 -50
- package/Locale/translate.pipe.d.ts +0 -23
- package/MarkdownCard/code-block.component.d.ts +0 -49
- package/MarkdownCard/index.d.ts +0 -3
- package/MarkdownCard/markdown-card.component.d.ts +0 -200
- package/MarkdownCard/markdown-card.module.d.ts +0 -13
- package/components-common/Base/foundation.d.ts +0 -45
- package/components-common/Bubble/common/bubble-constants.d.ts +0 -4
- package/components-common/Bubble/common/bubble-types.d.ts +0 -12
- package/components-common/Bubble/foundation.d.ts +0 -9
- package/components-common/Input/button-foundation.d.ts +0 -15
- package/components-common/Input/common/types.d.ts +0 -16
- package/components-common/Input/foundation.d.ts +0 -20
- package/components-common/Locale/lang/en-us.d.ts +0 -26
- package/components-common/Locale/lang/zh-cn.d.ts +0 -26
- package/components-common/MarkdownCard/codeblock-foundation.d.ts +0 -21
- package/components-common/MarkdownCard/common/MDCardService.d.ts +0 -14
- package/components-common/MarkdownCard/common/MermaidService.d.ts +0 -23
- package/components-common/MarkdownCard/common/mdCard.types.d.ts +0 -56
- package/components-common/MarkdownCard/common/parser.d.ts +0 -150
- package/components-common/MarkdownCard/foundation.d.ts +0 -38
- package/esm2022/Base/base.component.mjs +0 -46
- package/esm2022/Bubble/avatar/avatar.component.mjs +0 -121
- package/esm2022/Bubble/avatar-body-icon/avatar-body-icon.component.mjs +0 -19
- package/esm2022/Bubble/avatar-no-body-icon/avatar-no-body-icon.component.mjs +0 -19
- package/esm2022/Bubble/bubble-loading/bubble-loading.component.mjs +0 -11
- package/esm2022/Bubble/bubble.component.mjs +0 -89
- package/esm2022/Bubble/bubble.module.mjs +0 -36
- package/esm2022/Bubble/index.mjs +0 -7
- package/esm2022/Input/button/button.component.mjs +0 -83
- package/esm2022/Input/index.mjs +0 -3
- package/esm2022/Input/input.component.mjs +0 -285
- package/esm2022/Input/input.module.mjs +0 -34
- package/esm2022/Input/send-icon/send-icon.component.mjs +0 -11
- package/esm2022/Locale/index.mjs +0 -6
- package/esm2022/Locale/locale.module.mjs +0 -39
- package/esm2022/Locale/locale.service.mjs +0 -140
- package/esm2022/Locale/translate.pipe.mjs +0 -38
- package/esm2022/MarkdownCard/code-block.component.mjs +0 -175
- package/esm2022/MarkdownCard/index.mjs +0 -4
- package/esm2022/MarkdownCard/markdown-card.component.mjs +0 -436
- package/esm2022/MarkdownCard/markdown-card.module.mjs +0 -44
- package/esm2022/components-common/Base/foundation.mjs +0 -66
- package/esm2022/components-common/Bubble/common/bubble-constants.mjs +0 -5
- package/esm2022/components-common/Bubble/common/bubble-types.mjs +0 -2
- package/esm2022/components-common/Bubble/foundation.mjs +0 -30
- package/esm2022/components-common/Input/button-foundation.mjs +0 -33
- package/esm2022/components-common/Input/common/types.mjs +0 -21
- package/esm2022/components-common/Input/foundation.mjs +0 -71
- package/esm2022/components-common/Locale/lang/en-us.mjs +0 -26
- package/esm2022/components-common/Locale/lang/zh-cn.mjs +0 -26
- package/esm2022/components-common/MarkdownCard/codeblock-foundation.mjs +0 -132
- package/esm2022/components-common/MarkdownCard/common/MDCardService.mjs +0 -69
- package/esm2022/components-common/MarkdownCard/common/MermaidService.mjs +0 -222
- package/esm2022/components-common/MarkdownCard/common/mdCard.types.mjs +0 -6
- package/esm2022/components-common/MarkdownCard/common/parser.mjs +0 -194
- package/esm2022/components-common/MarkdownCard/foundation.mjs +0 -84
- package/esm2022/matechat-ng.mjs +0 -5
- package/esm2022/public-api.mjs +0 -8
- package/public-api.d.ts +0 -4
|
@@ -1,66 +0,0 @@
|
|
|
1
|
-
const noop = () => { };
|
|
2
|
-
class BaseFoundation {
|
|
3
|
-
static get cssClasses() {
|
|
4
|
-
return {};
|
|
5
|
-
}
|
|
6
|
-
static get strings() {
|
|
7
|
-
return {};
|
|
8
|
-
}
|
|
9
|
-
static get numbers() {
|
|
10
|
-
return {};
|
|
11
|
-
}
|
|
12
|
-
static get defaultAdapter() {
|
|
13
|
-
return {
|
|
14
|
-
getProp: noop,
|
|
15
|
-
getProps: noop,
|
|
16
|
-
getState: noop,
|
|
17
|
-
getStates: noop,
|
|
18
|
-
setState: noop,
|
|
19
|
-
getContext: noop,
|
|
20
|
-
getContexts: noop,
|
|
21
|
-
getCache: noop,
|
|
22
|
-
setCache: noop,
|
|
23
|
-
getCaches: noop,
|
|
24
|
-
stopPropagation: noop,
|
|
25
|
-
};
|
|
26
|
-
}
|
|
27
|
-
constructor(adapter) {
|
|
28
|
-
this._adapter = { ...BaseFoundation.defaultAdapter, ...adapter };
|
|
29
|
-
}
|
|
30
|
-
getProp(key) {
|
|
31
|
-
return this._adapter.getProp(key);
|
|
32
|
-
}
|
|
33
|
-
getProps() {
|
|
34
|
-
return this._adapter.getProps();
|
|
35
|
-
}
|
|
36
|
-
getState(key) {
|
|
37
|
-
return this._adapter.getState(key);
|
|
38
|
-
}
|
|
39
|
-
getStates() {
|
|
40
|
-
return this._adapter.getStates();
|
|
41
|
-
}
|
|
42
|
-
setState(states, cb) {
|
|
43
|
-
return this._adapter.setState({ ...states }, cb);
|
|
44
|
-
}
|
|
45
|
-
/* istanbul ignore next */
|
|
46
|
-
getCaches() {
|
|
47
|
-
return this._adapter.getCaches();
|
|
48
|
-
}
|
|
49
|
-
getCache(key) {
|
|
50
|
-
return this._adapter.getCache(key);
|
|
51
|
-
}
|
|
52
|
-
setCache(key, value) {
|
|
53
|
-
return key && this._adapter.setCache(key, value);
|
|
54
|
-
}
|
|
55
|
-
nextTick(cb) {
|
|
56
|
-
return this._adapter.nextTick(cb);
|
|
57
|
-
}
|
|
58
|
-
_isInProps(key) {
|
|
59
|
-
const props = this.getProps();
|
|
60
|
-
return key in props;
|
|
61
|
-
}
|
|
62
|
-
init(lifecycle) { }
|
|
63
|
-
destroy() { }
|
|
64
|
-
}
|
|
65
|
-
export default BaseFoundation;
|
|
66
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZm91bmRhdGlvbi5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NvbXBvbmVudHMtbmcvc3JjL2NvbXBvbmVudHMtY29tbW9uL0Jhc2UvZm91bmRhdGlvbi50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxNQUFNLElBQUksR0FBRyxHQUFHLEVBQUUsR0FBRSxDQUFDLENBQUM7QUFldEIsTUFBTSxjQUFjO0lBQ2xCLE1BQU0sS0FBSyxVQUFVO1FBQ25CLE9BQU8sRUFBRSxDQUFDO0lBQ1osQ0FBQztJQUVELE1BQU0sS0FBSyxPQUFPO1FBQ2hCLE9BQU8sRUFBRSxDQUFDO0lBQ1osQ0FBQztJQUVELE1BQU0sS0FBSyxPQUFPO1FBQ2hCLE9BQU8sRUFBRSxDQUFDO0lBQ1osQ0FBQztJQUVELE1BQU0sS0FBSyxjQUFjO1FBQ3ZCLE9BQU87WUFDTCxPQUFPLEVBQUUsSUFBSTtZQUNiLFFBQVEsRUFBRSxJQUFJO1lBQ2QsUUFBUSxFQUFFLElBQUk7WUFDZCxTQUFTLEVBQUUsSUFBSTtZQUNmLFFBQVEsRUFBRSxJQUFJO1lBQ2QsVUFBVSxFQUFFLElBQUk7WUFDaEIsV0FBVyxFQUFFLElBQUk7WUFDakIsUUFBUSxFQUFFLElBQUk7WUFDZCxRQUFRLEVBQUUsSUFBSTtZQUNkLFNBQVMsRUFBRSxJQUFJO1lBQ2YsZUFBZSxFQUFFLElBQUk7U0FDdEIsQ0FBQztJQUNKLENBQUM7SUFJRCxZQUFZLE9BQVU7UUFDcEIsSUFBSSxDQUFDLFFBQVEsR0FBRyxFQUFFLEdBQUcsY0FBYyxDQUFDLGNBQWMsRUFBRSxHQUFHLE9BQU8sRUFBRSxDQUFDO0lBQ25FLENBQUM7SUFFRCxPQUFPLENBQUMsR0FBVztRQUNqQixPQUFPLElBQUksQ0FBQyxRQUFRLENBQUMsT0FBTyxDQUFDLEdBQUcsQ0FBQyxDQUFDO0lBQ3BDLENBQUM7SUFFRCxRQUFRO1FBQ04sT0FBTyxJQUFJLENBQUMsUUFBUSxDQUFDLFFBQVEsRUFBUyxDQUFDO0lBQ3pDLENBQUM7SUFFRCxRQUFRLENBQUMsR0FBVztRQUNsQixPQUFPLElBQUksQ0FBQyxRQUFRLENBQUMsUUFBUSxDQUFDLEdBQUcsQ0FBQyxDQUFDO0lBQ3JDLENBQUM7SUFFRCxTQUFTO1FBQ1AsT0FBTyxJQUFJLENBQUMsUUFBUSxDQUFDLFNBQVMsRUFBRSxDQUFDO0lBQ25DLENBQUM7SUFFRCxRQUFRLENBQUMsTUFBVyxFQUFFLEVBQTJCO1FBQy9DLE9BQU8sSUFBSSxDQUFDLFFBQVEsQ0FBQyxRQUFRLENBQUMsRUFBRSxHQUFHLE1BQU0sRUFBRSxFQUFFLEVBQUUsQ0FBQyxDQUFDO0lBQ25ELENBQUM7SUFFRCwwQkFBMEI7SUFDMUIsU0FBUztRQUNQLE9BQU8sSUFBSSxDQUFDLFFBQVEsQ0FBQyxTQUFTLEVBQUUsQ0FBQztJQUNuQyxDQUFDO0lBRUQsUUFBUSxDQUFDLEdBQVc7UUFDbEIsT0FBTyxJQUFJLENBQUMsUUFBUSxDQUFDLFFBQVEsQ0FBQyxHQUFHLENBQUMsQ0FBQztJQUNyQyxDQUFDO0lBRUQsUUFBUSxDQUFDLEdBQVcsRUFBRSxLQUFVO1FBQzlCLE9BQU8sR0FBRyxJQUFJLElBQUksQ0FBQyxRQUFRLENBQUMsUUFBUSxDQUFDLEdBQUcsRUFBRSxLQUFLLENBQUMsQ0FBQztJQUNuRCxDQUFDO0lBRUQsUUFBUSxDQUFDLEVBQTBCO1FBQ2pDLE9BQU8sSUFBSSxDQUFDLFFBQVEsQ0FBQyxRQUFRLENBQUMsRUFBRSxDQUFDLENBQUM7SUFDcEMsQ0FBQztJQUVELFVBQVUsQ0FBQyxHQUFXO1FBQ3BCLE1BQU0sS0FBSyxHQUFHLElBQUksQ0FBQyxRQUFRLEVBQUUsQ0FBQztRQUM5QixPQUFPLEdBQUcsSUFBSyxLQUFhLENBQUM7SUFDL0IsQ0FBQztJQUVELElBQUksQ0FBQyxTQUFlLElBQUcsQ0FBQztJQUV4QixPQUFPLEtBQUksQ0FBQztDQUNiO0FBQ0QsZUFBZSxjQUFjLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJjb25zdCBub29wID0gKCkgPT4ge307XG5leHBvcnQgdHlwZSBub29wRnVuY3Rpb24gPSAoLi4uYXJnczogYW55KSA9PiBhbnk7XG5cbmV4cG9ydCBpbnRlcmZhY2UgRGVmYXVsdEFkYXB0ZXIge1xuICBnZXRQcm9wKGtleTogc3RyaW5nKTogYW55O1xuICBnZXRQcm9wcygpOiBhbnk7XG4gIGdldFN0YXRlKGtleTogc3RyaW5nKTogYW55O1xuICBnZXRTdGF0ZXMoKTogYW55O1xuICBzZXRTdGF0ZShzOiBhbnksIGNhbGxiYWNrPzogYW55KTogdm9pZDtcbiAgZ2V0Q2FjaGUoYzogc3RyaW5nKTogYW55O1xuICBnZXRDYWNoZXMoKTogYW55O1xuICBzZXRDYWNoZShrZXk6IGFueSwgdmFsdWU6IGFueSk6IHZvaWQ7XG4gIG5leHRUaWNrKGNiOiAoLi4uYXJnczogYW55KSA9PiB2b2lkKTogdm9pZDtcbn1cblxuY2xhc3MgQmFzZUZvdW5kYXRpb248VCBleHRlbmRzIERlZmF1bHRBZGFwdGVyPiB7XG4gIHN0YXRpYyBnZXQgY3NzQ2xhc3NlcygpIHtcbiAgICByZXR1cm4ge307XG4gIH1cblxuICBzdGF0aWMgZ2V0IHN0cmluZ3MoKSB7XG4gICAgcmV0dXJuIHt9O1xuICB9XG5cbiAgc3RhdGljIGdldCBudW1iZXJzKCkge1xuICAgIHJldHVybiB7fTtcbiAgfVxuXG4gIHN0YXRpYyBnZXQgZGVmYXVsdEFkYXB0ZXIoKSB7XG4gICAgcmV0dXJuIHtcbiAgICAgIGdldFByb3A6IG5vb3AsXG4gICAgICBnZXRQcm9wczogbm9vcCxcbiAgICAgIGdldFN0YXRlOiBub29wLFxuICAgICAgZ2V0U3RhdGVzOiBub29wLFxuICAgICAgc2V0U3RhdGU6IG5vb3AsXG4gICAgICBnZXRDb250ZXh0OiBub29wLFxuICAgICAgZ2V0Q29udGV4dHM6IG5vb3AsXG4gICAgICBnZXRDYWNoZTogbm9vcCxcbiAgICAgIHNldENhY2hlOiBub29wLFxuICAgICAgZ2V0Q2FjaGVzOiBub29wLFxuICAgICAgc3RvcFByb3BhZ2F0aW9uOiBub29wLFxuICAgIH07XG4gIH1cblxuICBfYWRhcHRlciE6IFQ7XG5cbiAgY29uc3RydWN0b3IoYWRhcHRlcjogVCkge1xuICAgIHRoaXMuX2FkYXB0ZXIgPSB7IC4uLkJhc2VGb3VuZGF0aW9uLmRlZmF1bHRBZGFwdGVyLCAuLi5hZGFwdGVyIH07XG4gIH1cblxuICBnZXRQcm9wKGtleTogc3RyaW5nKSB7XG4gICAgcmV0dXJuIHRoaXMuX2FkYXB0ZXIuZ2V0UHJvcChrZXkpO1xuICB9XG5cbiAgZ2V0UHJvcHMoKTogYW55IHtcbiAgICByZXR1cm4gdGhpcy5fYWRhcHRlci5nZXRQcm9wcygpIGFzIGFueTtcbiAgfVxuXG4gIGdldFN0YXRlKGtleTogc3RyaW5nKSB7XG4gICAgcmV0dXJuIHRoaXMuX2FkYXB0ZXIuZ2V0U3RhdGUoa2V5KTtcbiAgfVxuXG4gIGdldFN0YXRlcygpOiBhbnkge1xuICAgIHJldHVybiB0aGlzLl9hZGFwdGVyLmdldFN0YXRlcygpO1xuICB9XG5cbiAgc2V0U3RhdGUoc3RhdGVzOiBhbnksIGNiPzogKC4uLmFyZ3M6IGFueSkgPT4gdm9pZCkge1xuICAgIHJldHVybiB0aGlzLl9hZGFwdGVyLnNldFN0YXRlKHsgLi4uc3RhdGVzIH0sIGNiKTtcbiAgfVxuXG4gIC8qIGlzdGFuYnVsIGlnbm9yZSBuZXh0ICovXG4gIGdldENhY2hlcygpIHtcbiAgICByZXR1cm4gdGhpcy5fYWRhcHRlci5nZXRDYWNoZXMoKTtcbiAgfVxuXG4gIGdldENhY2hlKGtleTogc3RyaW5nKSB7XG4gICAgcmV0dXJuIHRoaXMuX2FkYXB0ZXIuZ2V0Q2FjaGUoa2V5KTtcbiAgfVxuXG4gIHNldENhY2hlKGtleTogc3RyaW5nLCB2YWx1ZTogYW55KSB7XG4gICAgcmV0dXJuIGtleSAmJiB0aGlzLl9hZGFwdGVyLnNldENhY2hlKGtleSwgdmFsdWUpO1xuICB9XG5cbiAgbmV4dFRpY2soY2I6ICguLi5hcmdzOiBhbnkpID0+IHZvaWQpIHtcbiAgICByZXR1cm4gdGhpcy5fYWRhcHRlci5uZXh0VGljayhjYik7XG4gIH1cblxuICBfaXNJblByb3BzKGtleTogc3RyaW5nKSB7XG4gICAgY29uc3QgcHJvcHMgPSB0aGlzLmdldFByb3BzKCk7XG4gICAgcmV0dXJuIGtleSBpbiAocHJvcHMgYXMgYW55KTtcbiAgfVxuXG4gIGluaXQobGlmZWN5Y2xlPzogYW55KSB7fVxuXG4gIGRlc3Ryb3koKSB7fVxufVxuZXhwb3J0IGRlZmF1bHQgQmFzZUZvdW5kYXRpb247XG4iXX0=
|
|
@@ -1,5 +0,0 @@
|
|
|
1
|
-
export const DEFAULT_AVATAR_WIDTH = 36;
|
|
2
|
-
export const DEFAULT_AVATAR_HEIGHT = 36;
|
|
3
|
-
export const AVATAR_NAME = 'name';
|
|
4
|
-
export const AVATAR_IMG = 'imgSrc';
|
|
5
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYnViYmxlLWNvbnN0YW50cy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NvbXBvbmVudHMtbmcvc3JjL2NvbXBvbmVudHMtY29tbW9uL0J1YmJsZS9jb21tb24vYnViYmxlLWNvbnN0YW50cy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxNQUFNLENBQUMsTUFBTSxvQkFBb0IsR0FBRyxFQUFFLENBQUM7QUFDdkMsTUFBTSxDQUFDLE1BQU0scUJBQXFCLEdBQUcsRUFBRSxDQUFDO0FBQ3hDLE1BQU0sQ0FBQyxNQUFNLFdBQVcsR0FBRyxNQUFNLENBQUM7QUFDbEMsTUFBTSxDQUFDLE1BQU0sVUFBVSxHQUFHLFFBQVEsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCBjb25zdCBERUZBVUxUX0FWQVRBUl9XSURUSCA9IDM2O1xuZXhwb3J0IGNvbnN0IERFRkFVTFRfQVZBVEFSX0hFSUdIVCA9IDM2O1xuZXhwb3J0IGNvbnN0IEFWQVRBUl9OQU1FID0gJ25hbWUnO1xuZXhwb3J0IGNvbnN0IEFWQVRBUl9JTUcgPSAnaW1nU3JjJztcbiJdfQ==
|
|
@@ -1,2 +0,0 @@
|
|
|
1
|
-
export {};
|
|
2
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYnViYmxlLXR5cGVzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY29tcG9uZW50cy1uZy9zcmMvY29tcG9uZW50cy1jb21tb24vQnViYmxlL2NvbW1vbi9idWJibGUtdHlwZXMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsInNvdXJjZXNDb250ZW50IjpbIlxuZXhwb3J0IHR5cGUgQnViYmxlVmFyaWFudCA9ICdmaWxsZWQnIHwgJ25vbmUnIHwgJ2JvcmRlcmVkJztcblxuZXhwb3J0IHR5cGUgQXZhdGFyUG9zaXRpb24gPSAndG9wJyB8ICdzaWRlJztcblxuZXhwb3J0IHR5cGUgQnViYmxlQWxpZ24gPSAnbGVmdCcgfCAncmlnaHQnO1xuXG5leHBvcnQgaW50ZXJmYWNlIEJ1YmJsZUF2YXRhciB7XG4gIG5hbWU/OiBzdHJpbmc7XG4gIGdlbmRlcj86IHN0cmluZztcbiAgd2lkdGg/OiBudW1iZXI7XG4gIGhlaWdodD86IG51bWJlcjtcbiAgaXNSb3VuZD86IGJvb2xlYW47XG4gIGltZ1NyYz86IHN0cmluZztcbiAgZGlzcGxheU5hbWU/OiBzdHJpbmc7XG59XG5cbiJdfQ==
|
|
@@ -1,30 +0,0 @@
|
|
|
1
|
-
import { AVATAR_NAME, AVATAR_IMG } from "./common/bubble-constants";
|
|
2
|
-
import BaseFoundation from "../Base/foundation";
|
|
3
|
-
export class BubbleFoundation extends BaseFoundation {
|
|
4
|
-
constructor(adapter) {
|
|
5
|
-
super({ ...adapter });
|
|
6
|
-
}
|
|
7
|
-
getBubbleClasses() {
|
|
8
|
-
const { align, loading, isEmptyAvatar, avatarPosition } = this.getProps();
|
|
9
|
-
return [
|
|
10
|
-
`mc-bubble-avatar-${avatarPosition}`,
|
|
11
|
-
`mc-bubble-${align}`,
|
|
12
|
-
loading ? "mc-bubble-loading" : "",
|
|
13
|
-
isEmptyAvatar ? "mc-bubble-avatar-empty" : "",
|
|
14
|
-
]
|
|
15
|
-
.filter(Boolean)
|
|
16
|
-
.join(" ");
|
|
17
|
-
}
|
|
18
|
-
getIsEmptyAvatar(avatarConfig) {
|
|
19
|
-
if (avatarConfig) {
|
|
20
|
-
// 传了 avatarConfig,但是没有 name 和 imgSrc 时表示头像区域仅占位
|
|
21
|
-
const keys = Object.keys(avatarConfig);
|
|
22
|
-
const shouldShow = keys.some((k) => k === AVATAR_NAME || k === AVATAR_IMG);
|
|
23
|
-
return keys.length < 1 || !shouldShow;
|
|
24
|
-
}
|
|
25
|
-
else {
|
|
26
|
-
return true;
|
|
27
|
-
}
|
|
28
|
-
}
|
|
29
|
-
}
|
|
30
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZm91bmRhdGlvbi5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NvbXBvbmVudHMtbmcvc3JjL2NvbXBvbmVudHMtY29tbW9uL0J1YmJsZS9mb3VuZGF0aW9uLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxXQUFXLEVBQUUsVUFBVSxFQUFFLE1BQU0sMkJBQTJCLENBQUM7QUFFcEUsT0FBTyxjQUFrQyxNQUFNLG9CQUFvQixDQUFDO0FBSXBFLE1BQU0sT0FBTyxnQkFBaUIsU0FBUSxjQUE2QjtJQUNqRSxZQUFZLE9BQXNCO1FBQ2hDLEtBQUssQ0FBQyxFQUFFLEdBQUcsT0FBTyxFQUFFLENBQUMsQ0FBQztJQUN4QixDQUFDO0lBRUQsZ0JBQWdCO1FBQ2QsTUFBTSxFQUFFLEtBQUssRUFBRSxPQUFPLEVBQUUsYUFBYSxFQUFFLGNBQWMsRUFBRSxHQUFHLElBQUksQ0FBQyxRQUFRLEVBQUUsQ0FBQztRQUMxRSxPQUFPO1lBQ0wsb0JBQW9CLGNBQWMsRUFBRTtZQUNwQyxhQUFhLEtBQUssRUFBRTtZQUNwQixPQUFPLENBQUMsQ0FBQyxDQUFDLG1CQUFtQixDQUFDLENBQUMsQ0FBQyxFQUFFO1lBQ2xDLGFBQWEsQ0FBQyxDQUFDLENBQUMsd0JBQXdCLENBQUMsQ0FBQyxDQUFDLEVBQUU7U0FDOUM7YUFDRSxNQUFNLENBQUMsT0FBTyxDQUFDO2FBQ2YsSUFBSSxDQUFDLEdBQUcsQ0FBQyxDQUFDO0lBQ2YsQ0FBQztJQUVELGdCQUFnQixDQUFDLFlBQXNDO1FBQ3JELElBQUksWUFBWSxFQUFFLENBQUM7WUFDakIsZ0RBQWdEO1lBQ2hELE1BQU0sSUFBSSxHQUFHLE1BQU0sQ0FBQyxJQUFJLENBQUMsWUFBWSxDQUFDLENBQUM7WUFDdkMsTUFBTSxVQUFVLEdBQUcsSUFBSSxDQUFDLElBQUksQ0FDMUIsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUMsS0FBSyxXQUFXLElBQUksQ0FBQyxLQUFLLFVBQVUsQ0FDN0MsQ0FBQztZQUNGLE9BQU8sSUFBSSxDQUFDLE1BQU0sR0FBRyxDQUFDLElBQUksQ0FBQyxVQUFVLENBQUM7UUFDeEMsQ0FBQzthQUFNLENBQUM7WUFDTixPQUFPLElBQUksQ0FBQztRQUNkLENBQUM7SUFDSCxDQUFDO0NBQ0YiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBBVkFUQVJfTkFNRSwgQVZBVEFSX0lNRyB9IGZyb20gXCIuL2NvbW1vbi9idWJibGUtY29uc3RhbnRzXCI7XG5pbXBvcnQgeyBCdWJibGVBdmF0YXIsIEJ1YmJsZUFsaWduIH0gZnJvbSBcIi4vY29tbW9uL2J1YmJsZS10eXBlc1wiO1xuaW1wb3J0IEJhc2VGb3VuZGF0aW9uLCB7IERlZmF1bHRBZGFwdGVyIH0gZnJvbSBcIi4uL0Jhc2UvZm91bmRhdGlvblwiO1xuXG5leHBvcnQgaW50ZXJmYWNlIEJ1YmJsZUFkYXB0ZXIgZXh0ZW5kcyBEZWZhdWx0QWRhcHRlciB7fVxuXG5leHBvcnQgY2xhc3MgQnViYmxlRm91bmRhdGlvbiBleHRlbmRzIEJhc2VGb3VuZGF0aW9uPEJ1YmJsZUFkYXB0ZXI+IHtcbiAgY29uc3RydWN0b3IoYWRhcHRlcjogQnViYmxlQWRhcHRlcikge1xuICAgIHN1cGVyKHsgLi4uYWRhcHRlciB9KTtcbiAgfVxuXG4gIGdldEJ1YmJsZUNsYXNzZXMoKSB7XG4gICAgY29uc3QgeyBhbGlnbiwgbG9hZGluZywgaXNFbXB0eUF2YXRhciwgYXZhdGFyUG9zaXRpb24gfSA9IHRoaXMuZ2V0UHJvcHMoKTtcbiAgICByZXR1cm4gW1xuICAgICAgYG1jLWJ1YmJsZS1hdmF0YXItJHthdmF0YXJQb3NpdGlvbn1gLFxuICAgICAgYG1jLWJ1YmJsZS0ke2FsaWdufWAsXG4gICAgICBsb2FkaW5nID8gXCJtYy1idWJibGUtbG9hZGluZ1wiIDogXCJcIixcbiAgICAgIGlzRW1wdHlBdmF0YXIgPyBcIm1jLWJ1YmJsZS1hdmF0YXItZW1wdHlcIiA6IFwiXCIsXG4gICAgXVxuICAgICAgLmZpbHRlcihCb29sZWFuKVxuICAgICAgLmpvaW4oXCIgXCIpO1xuICB9XG5cbiAgZ2V0SXNFbXB0eUF2YXRhcihhdmF0YXJDb25maWc6IEJ1YmJsZUF2YXRhciB8IHVuZGVmaW5lZCkge1xuICAgIGlmIChhdmF0YXJDb25maWcpIHtcbiAgICAgIC8vIOS8oOS6hiBhdmF0YXJDb25maWfvvIzkvYbmmK/msqHmnIkgbmFtZSDlkowgaW1nU3JjIOaXtuihqOekuuWktOWDj+WMuuWfn+S7heWNoOS9jVxuICAgICAgY29uc3Qga2V5cyA9IE9iamVjdC5rZXlzKGF2YXRhckNvbmZpZyk7XG4gICAgICBjb25zdCBzaG91bGRTaG93ID0ga2V5cy5zb21lKFxuICAgICAgICAoaykgPT4gayA9PT0gQVZBVEFSX05BTUUgfHwgayA9PT0gQVZBVEFSX0lNR1xuICAgICAgKTtcbiAgICAgIHJldHVybiBrZXlzLmxlbmd0aCA8IDEgfHwgIXNob3VsZFNob3c7XG4gICAgfSBlbHNlIHtcbiAgICAgIHJldHVybiB0cnVlO1xuICAgIH1cbiAgfVxufVxuIl19
|
|
@@ -1,33 +0,0 @@
|
|
|
1
|
-
import BaseFoundation from '../Base/foundation';
|
|
2
|
-
import { SendBtnVariant } from './common/types';
|
|
3
|
-
export class InputButtonFoundation extends BaseFoundation {
|
|
4
|
-
constructor(adapter) {
|
|
5
|
-
super({ ...adapter });
|
|
6
|
-
}
|
|
7
|
-
showClickWave(nativeElement, event) {
|
|
8
|
-
const rect = nativeElement.getBoundingClientRect();
|
|
9
|
-
this.setState({
|
|
10
|
-
waveStyle: {
|
|
11
|
-
left: event.clientX - rect.left + 'px',
|
|
12
|
-
top: event.clientY - rect.top + 'px',
|
|
13
|
-
},
|
|
14
|
-
showWave: true,
|
|
15
|
-
});
|
|
16
|
-
setTimeout(() => {
|
|
17
|
-
this.setState({
|
|
18
|
-
showWave: false,
|
|
19
|
-
});
|
|
20
|
-
}, 300);
|
|
21
|
-
}
|
|
22
|
-
getButtonClasses() {
|
|
23
|
-
const { loading, sendBtnVariant } = this.getProps();
|
|
24
|
-
const isMouseDown = this.getState('isMouseDown');
|
|
25
|
-
return {
|
|
26
|
-
'mc-button': true,
|
|
27
|
-
'mc-button-loading': loading,
|
|
28
|
-
mousedown: isMouseDown,
|
|
29
|
-
'mc-button-simple': sendBtnVariant === SendBtnVariant.Simple,
|
|
30
|
-
};
|
|
31
|
-
}
|
|
32
|
-
}
|
|
33
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYnV0dG9uLWZvdW5kYXRpb24uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jb21wb25lbnRzLW5nL3NyYy9jb21wb25lbnRzLWNvbW1vbi9JbnB1dC9idXR0b24tZm91bmRhdGlvbi50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLGNBQWtDLE1BQU0sb0JBQW9CLENBQUM7QUFDcEUsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBT2hELE1BQU0sT0FBTyxxQkFBc0IsU0FBUSxjQUFrQztJQUMzRSxZQUFZLE9BQTJCO1FBQ3JDLEtBQUssQ0FBQyxFQUFFLEdBQUcsT0FBTyxFQUFFLENBQUMsQ0FBQztJQUN4QixDQUFDO0lBRUQsYUFBYSxDQUFDLGFBQTBCLEVBQUUsS0FBaUI7UUFDekQsTUFBTSxJQUFJLEdBQUcsYUFBYSxDQUFDLHFCQUFxQixFQUFFLENBQUM7UUFDbkQsSUFBSSxDQUFDLFFBQVEsQ0FBQztZQUNaLFNBQVMsRUFBRTtnQkFDVCxJQUFJLEVBQUUsS0FBSyxDQUFDLE9BQU8sR0FBRyxJQUFJLENBQUMsSUFBSSxHQUFHLElBQUk7Z0JBQ3RDLEdBQUcsRUFBRSxLQUFLLENBQUMsT0FBTyxHQUFHLElBQUksQ0FBQyxHQUFHLEdBQUcsSUFBSTthQUNyQztZQUNELFFBQVEsRUFBRSxJQUFJO1NBQ2YsQ0FBQyxDQUFDO1FBRUgsVUFBVSxDQUFDLEdBQUcsRUFBRTtZQUNkLElBQUksQ0FBQyxRQUFRLENBQUM7Z0JBQ1osUUFBUSxFQUFFLEtBQUs7YUFDaEIsQ0FBQyxDQUFDO1FBQ0wsQ0FBQyxFQUFFLEdBQUcsQ0FBQyxDQUFDO0lBQ1YsQ0FBQztJQUVELGdCQUFnQjtRQUNkLE1BQU0sRUFBRSxPQUFPLEVBQUUsY0FBYyxFQUFFLEdBQUcsSUFBSSxDQUFDLFFBQVEsRUFBRSxDQUFDO1FBQ3BELE1BQU0sV0FBVyxHQUFHLElBQUksQ0FBQyxRQUFRLENBQUMsYUFBYSxDQUFDLENBQUM7UUFDakQsT0FBTztZQUNMLFdBQVcsRUFBRSxJQUFJO1lBQ2pCLG1CQUFtQixFQUFFLE9BQU87WUFDNUIsU0FBUyxFQUFFLFdBQVc7WUFDdEIsa0JBQWtCLEVBQUUsY0FBYyxLQUFLLGNBQWMsQ0FBQyxNQUFNO1NBQzdELENBQUM7SUFDSixDQUFDO0NBQ0YiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgQmFzZUZvdW5kYXRpb24sIHsgRGVmYXVsdEFkYXB0ZXIgfSBmcm9tICcuLi9CYXNlL2ZvdW5kYXRpb24nO1xuaW1wb3J0IHsgU2VuZEJ0blZhcmlhbnQgfSBmcm9tICcuL2NvbW1vbi90eXBlcyc7XG5cbmV4cG9ydCBpbnRlcmZhY2UgSW5wdXRCdXR0b25BZGFwdGVyIGV4dGVuZHMgRGVmYXVsdEFkYXB0ZXIge1xuICBsb2NhbGUoa2V5OiBzdHJpbmcsIHBhcmFtcz86IFJlY29yZDxzdHJpbmcsIHN0cmluZz4pOiBzdHJpbmc7XG4gIGVtaXRDaGFuZ2UoKTogdm9pZDtcbn1cblxuZXhwb3J0IGNsYXNzIElucHV0QnV0dG9uRm91bmRhdGlvbiBleHRlbmRzIEJhc2VGb3VuZGF0aW9uPElucHV0QnV0dG9uQWRhcHRlcj4ge1xuICBjb25zdHJ1Y3RvcihhZGFwdGVyOiBJbnB1dEJ1dHRvbkFkYXB0ZXIpIHtcbiAgICBzdXBlcih7IC4uLmFkYXB0ZXIgfSk7XG4gIH1cblxuICBzaG93Q2xpY2tXYXZlKG5hdGl2ZUVsZW1lbnQ6IEhUTUxFbGVtZW50LCBldmVudDogTW91c2VFdmVudCk6IHZvaWQge1xuICAgIGNvbnN0IHJlY3QgPSBuYXRpdmVFbGVtZW50LmdldEJvdW5kaW5nQ2xpZW50UmVjdCgpO1xuICAgIHRoaXMuc2V0U3RhdGUoe1xuICAgICAgd2F2ZVN0eWxlOiB7XG4gICAgICAgIGxlZnQ6IGV2ZW50LmNsaWVudFggLSByZWN0LmxlZnQgKyAncHgnLFxuICAgICAgICB0b3A6IGV2ZW50LmNsaWVudFkgLSByZWN0LnRvcCArICdweCcsXG4gICAgICB9LFxuICAgICAgc2hvd1dhdmU6IHRydWUsXG4gICAgfSk7XG5cbiAgICBzZXRUaW1lb3V0KCgpID0+IHtcbiAgICAgIHRoaXMuc2V0U3RhdGUoe1xuICAgICAgICBzaG93V2F2ZTogZmFsc2UsXG4gICAgICB9KTtcbiAgICB9LCAzMDApO1xuICB9XG5cbiAgZ2V0QnV0dG9uQ2xhc3NlcygpIHtcbiAgICBjb25zdCB7IGxvYWRpbmcsIHNlbmRCdG5WYXJpYW50IH0gPSB0aGlzLmdldFByb3BzKCk7XG4gICAgY29uc3QgaXNNb3VzZURvd24gPSB0aGlzLmdldFN0YXRlKCdpc01vdXNlRG93bicpO1xuICAgIHJldHVybiB7XG4gICAgICAnbWMtYnV0dG9uJzogdHJ1ZSxcbiAgICAgICdtYy1idXR0b24tbG9hZGluZyc6IGxvYWRpbmcsXG4gICAgICBtb3VzZWRvd246IGlzTW91c2VEb3duLFxuICAgICAgJ21jLWJ1dHRvbi1zaW1wbGUnOiBzZW5kQnRuVmFyaWFudCA9PT0gU2VuZEJ0blZhcmlhbnQuU2ltcGxlLFxuICAgIH07XG4gIH1cbn1cbiJdfQ==
|
|
@@ -1,21 +0,0 @@
|
|
|
1
|
-
export var DisplayType;
|
|
2
|
-
(function (DisplayType) {
|
|
3
|
-
DisplayType["Simple"] = "simple";
|
|
4
|
-
DisplayType["Full"] = "full";
|
|
5
|
-
})(DisplayType || (DisplayType = {}));
|
|
6
|
-
export var InputVariant;
|
|
7
|
-
(function (InputVariant) {
|
|
8
|
-
InputVariant["Bordered"] = "bordered";
|
|
9
|
-
InputVariant["BorderLess"] = "borderless";
|
|
10
|
-
})(InputVariant || (InputVariant = {}));
|
|
11
|
-
export var SendBtnVariant;
|
|
12
|
-
(function (SendBtnVariant) {
|
|
13
|
-
SendBtnVariant["Simple"] = "simple";
|
|
14
|
-
SendBtnVariant["Full"] = "full";
|
|
15
|
-
})(SendBtnVariant || (SendBtnVariant = {}));
|
|
16
|
-
export var SubmitShortKey;
|
|
17
|
-
(function (SubmitShortKey) {
|
|
18
|
-
SubmitShortKey["Enter"] = "enter";
|
|
19
|
-
SubmitShortKey["ShiftEnter"] = "shiftEnter";
|
|
20
|
-
})(SubmitShortKey || (SubmitShortKey = {}));
|
|
21
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHlwZXMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jb21wb25lbnRzLW5nL3NyYy9jb21wb25lbnRzLWNvbW1vbi9JbnB1dC9jb21tb24vdHlwZXMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsTUFBTSxDQUFOLElBQVksV0FHWDtBQUhELFdBQVksV0FBVztJQUNyQixnQ0FBaUIsQ0FBQTtJQUNqQiw0QkFBYSxDQUFBO0FBQ2YsQ0FBQyxFQUhXLFdBQVcsS0FBWCxXQUFXLFFBR3RCO0FBQ0QsTUFBTSxDQUFOLElBQVksWUFHWDtBQUhELFdBQVksWUFBWTtJQUN0QixxQ0FBcUIsQ0FBQTtJQUNyQix5Q0FBeUIsQ0FBQTtBQUMzQixDQUFDLEVBSFcsWUFBWSxLQUFaLFlBQVksUUFHdkI7QUFDRCxNQUFNLENBQU4sSUFBWSxjQUdYO0FBSEQsV0FBWSxjQUFjO0lBQ3hCLG1DQUFpQixDQUFBO0lBQ2pCLCtCQUFhLENBQUE7QUFDZixDQUFDLEVBSFcsY0FBYyxLQUFkLGNBQWMsUUFHekI7QUFDRCxNQUFNLENBQU4sSUFBWSxjQUdYO0FBSEQsV0FBWSxjQUFjO0lBQ3hCLGlDQUFlLENBQUE7SUFDZiwyQ0FBeUIsQ0FBQTtBQUMzQixDQUFDLEVBSFcsY0FBYyxLQUFkLGNBQWMsUUFHekIiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgZW51bSBEaXNwbGF5VHlwZSB7XG4gIFNpbXBsZSA9IFwic2ltcGxlXCIsXG4gIEZ1bGwgPSBcImZ1bGxcIixcbn1cbmV4cG9ydCBlbnVtIElucHV0VmFyaWFudCB7XG4gIEJvcmRlcmVkID0gXCJib3JkZXJlZFwiLFxuICBCb3JkZXJMZXNzID0gXCJib3JkZXJsZXNzXCIsXG59XG5leHBvcnQgZW51bSBTZW5kQnRuVmFyaWFudCB7XG4gIFNpbXBsZSA9IFwic2ltcGxlXCIsXG4gIEZ1bGwgPSBcImZ1bGxcIixcbn1cbmV4cG9ydCBlbnVtIFN1Ym1pdFNob3J0S2V5IHtcbiAgRW50ZXIgPSBcImVudGVyXCIsXG4gIFNoaWZ0RW50ZXIgPSBcInNoaWZ0RW50ZXJcIixcbn0iXX0=
|
|
@@ -1,71 +0,0 @@
|
|
|
1
|
-
import BaseFoundation from '../Base/foundation';
|
|
2
|
-
import { DisplayType, InputVariant, SubmitShortKey, } from './common/types';
|
|
3
|
-
export class InputFoundation extends BaseFoundation {
|
|
4
|
-
constructor(adapter) {
|
|
5
|
-
super({ ...adapter });
|
|
6
|
-
}
|
|
7
|
-
getInputClasses() {
|
|
8
|
-
const { disabled, displayType, variant } = this.getProps();
|
|
9
|
-
return {
|
|
10
|
-
'mc-input': true,
|
|
11
|
-
'mc-input-disabled': disabled,
|
|
12
|
-
'mc-input-simple': displayType === DisplayType.Simple,
|
|
13
|
-
'mc-input-borderless': variant === InputVariant.BorderLess,
|
|
14
|
-
};
|
|
15
|
-
}
|
|
16
|
-
getPlaceholderText() {
|
|
17
|
-
const { placeholder, submitShortKey } = this.getProps();
|
|
18
|
-
if (placeholder) {
|
|
19
|
-
return placeholder;
|
|
20
|
-
}
|
|
21
|
-
let enterKey = '';
|
|
22
|
-
let shiftEnterKey = '';
|
|
23
|
-
if (submitShortKey === SubmitShortKey.Enter) {
|
|
24
|
-
enterKey = 'Enter';
|
|
25
|
-
shiftEnterKey = 'Shift + Enter';
|
|
26
|
-
}
|
|
27
|
-
else if (submitShortKey === SubmitShortKey.ShiftEnter) {
|
|
28
|
-
enterKey = 'Shift + Enter';
|
|
29
|
-
shiftEnterKey = 'Enter';
|
|
30
|
-
}
|
|
31
|
-
return enterKey
|
|
32
|
-
? this._adapter.locale('Input.pleaseEnterPlaceholder', {
|
|
33
|
-
enterKey,
|
|
34
|
-
shiftEnterKey,
|
|
35
|
-
})
|
|
36
|
-
: this._adapter.locale('Input.pleaseEnter');
|
|
37
|
-
}
|
|
38
|
-
clearInput() {
|
|
39
|
-
this.setState({
|
|
40
|
-
inputValue: '',
|
|
41
|
-
});
|
|
42
|
-
this._adapter.emitChange();
|
|
43
|
-
}
|
|
44
|
-
emitChange() {
|
|
45
|
-
this._adapter.emitChange();
|
|
46
|
-
}
|
|
47
|
-
submit(inputValue) {
|
|
48
|
-
this._adapter.submit(inputValue);
|
|
49
|
-
}
|
|
50
|
-
onKeydown(event) {
|
|
51
|
-
const { submitShortKey, lock } = this.getProps();
|
|
52
|
-
const inputValue = this.getState('inputValue');
|
|
53
|
-
if (submitShortKey === null) {
|
|
54
|
-
return;
|
|
55
|
-
}
|
|
56
|
-
const shiftKey = submitShortKey === SubmitShortKey.Enter
|
|
57
|
-
? !event.shiftKey
|
|
58
|
-
: submitShortKey === SubmitShortKey.ShiftEnter
|
|
59
|
-
? event.shiftKey
|
|
60
|
-
: false;
|
|
61
|
-
if (shiftKey && event.key === 'Enter' && !lock) {
|
|
62
|
-
event.preventDefault();
|
|
63
|
-
this.submit(inputValue);
|
|
64
|
-
this.setState({
|
|
65
|
-
inputValue: '',
|
|
66
|
-
});
|
|
67
|
-
this.emitChange();
|
|
68
|
-
}
|
|
69
|
-
}
|
|
70
|
-
}
|
|
71
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZm91bmRhdGlvbi5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NvbXBvbmVudHMtbmcvc3JjL2NvbXBvbmVudHMtY29tbW9uL0lucHV0L2ZvdW5kYXRpb24udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxjQUFrQyxNQUFNLG9CQUFvQixDQUFDO0FBQ3BFLE9BQU8sRUFDTCxXQUFXLEVBQ1gsWUFBWSxFQUVaLGNBQWMsR0FDZixNQUFNLGdCQUFnQixDQUFDO0FBUXhCLE1BQU0sT0FBTyxlQUFnQixTQUFRLGNBQTRCO0lBQy9ELFlBQVksT0FBcUI7UUFDL0IsS0FBSyxDQUFDLEVBQUUsR0FBRyxPQUFPLEVBQUUsQ0FBQyxDQUFDO0lBQ3hCLENBQUM7SUFFRCxlQUFlO1FBQ2IsTUFBTSxFQUFFLFFBQVEsRUFBRSxXQUFXLEVBQUUsT0FBTyxFQUFFLEdBQUcsSUFBSSxDQUFDLFFBQVEsRUFBRSxDQUFDO1FBQzNELE9BQU87WUFDTCxVQUFVLEVBQUUsSUFBSTtZQUNoQixtQkFBbUIsRUFBRSxRQUFRO1lBQzdCLGlCQUFpQixFQUFFLFdBQVcsS0FBSyxXQUFXLENBQUMsTUFBTTtZQUNyRCxxQkFBcUIsRUFBRSxPQUFPLEtBQUssWUFBWSxDQUFDLFVBQVU7U0FDM0QsQ0FBQztJQUNKLENBQUM7SUFFRCxrQkFBa0I7UUFDaEIsTUFBTSxFQUFFLFdBQVcsRUFBRSxjQUFjLEVBQUUsR0FBRyxJQUFJLENBQUMsUUFBUSxFQUFFLENBQUM7UUFDeEQsSUFBSSxXQUFXLEVBQUUsQ0FBQztZQUNoQixPQUFPLFdBQVcsQ0FBQztRQUNyQixDQUFDO1FBRUQsSUFBSSxRQUFRLEdBQUcsRUFBRSxDQUFDO1FBQ2xCLElBQUksYUFBYSxHQUFHLEVBQUUsQ0FBQztRQUV2QixJQUFJLGNBQWMsS0FBSyxjQUFjLENBQUMsS0FBSyxFQUFFLENBQUM7WUFDNUMsUUFBUSxHQUFHLE9BQU8sQ0FBQztZQUNuQixhQUFhLEdBQUcsZUFBZSxDQUFDO1FBQ2xDLENBQUM7YUFBTSxJQUFJLGNBQWMsS0FBSyxjQUFjLENBQUMsVUFBVSxFQUFFLENBQUM7WUFDeEQsUUFBUSxHQUFHLGVBQWUsQ0FBQztZQUMzQixhQUFhLEdBQUcsT0FBTyxDQUFDO1FBQzFCLENBQUM7UUFFRCxPQUFPLFFBQVE7WUFDYixDQUFDLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxNQUFNLENBQUMsOEJBQThCLEVBQUU7Z0JBQ25ELFFBQVE7Z0JBQ1IsYUFBYTthQUNkLENBQUM7WUFDSixDQUFDLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxNQUFNLENBQUMsbUJBQW1CLENBQUMsQ0FBQztJQUNoRCxDQUFDO0lBRUQsVUFBVTtRQUNSLElBQUksQ0FBQyxRQUFRLENBQUM7WUFDWixVQUFVLEVBQUUsRUFBRTtTQUNmLENBQUMsQ0FBQztRQUNILElBQUksQ0FBQyxRQUFRLENBQUMsVUFBVSxFQUFFLENBQUM7SUFDN0IsQ0FBQztJQUVELFVBQVU7UUFDUixJQUFJLENBQUMsUUFBUSxDQUFDLFVBQVUsRUFBRSxDQUFDO0lBQzdCLENBQUM7SUFFRCxNQUFNLENBQUMsVUFBa0I7UUFDdkIsSUFBSSxDQUFDLFFBQVEsQ0FBQyxNQUFNLENBQUMsVUFBVSxDQUFDLENBQUM7SUFDbkMsQ0FBQztJQUVELFNBQVMsQ0FBQyxLQUFvQjtRQUM1QixNQUFNLEVBQUUsY0FBYyxFQUFFLElBQUksRUFBRSxHQUFHLElBQUksQ0FBQyxRQUFRLEVBQUUsQ0FBQztRQUNqRCxNQUFNLFVBQVUsR0FBRyxJQUFJLENBQUMsUUFBUSxDQUFDLFlBQVksQ0FBQyxDQUFDO1FBQy9DLElBQUksY0FBYyxLQUFLLElBQUksRUFBRSxDQUFDO1lBQzVCLE9BQU87UUFDVCxDQUFDO1FBRUQsTUFBTSxRQUFRLEdBQ1osY0FBYyxLQUFLLGNBQWMsQ0FBQyxLQUFLO1lBQ3JDLENBQUMsQ0FBQyxDQUFDLEtBQUssQ0FBQyxRQUFRO1lBQ2pCLENBQUMsQ0FBQyxjQUFjLEtBQUssY0FBYyxDQUFDLFVBQVU7Z0JBQzlDLENBQUMsQ0FBQyxLQUFLLENBQUMsUUFBUTtnQkFDaEIsQ0FBQyxDQUFDLEtBQUssQ0FBQztRQUVaLElBQUksUUFBUSxJQUFJLEtBQUssQ0FBQyxHQUFHLEtBQUssT0FBTyxJQUFJLENBQUMsSUFBSSxFQUFFLENBQUM7WUFDL0MsS0FBSyxDQUFDLGNBQWMsRUFBRSxDQUFDO1lBQ3ZCLElBQUksQ0FBQyxNQUFNLENBQUMsVUFBVSxDQUFDLENBQUM7WUFDeEIsSUFBSSxDQUFDLFFBQVEsQ0FBQztnQkFDWixVQUFVLEVBQUUsRUFBRTthQUNmLENBQUMsQ0FBQztZQUNILElBQUksQ0FBQyxVQUFVLEVBQUUsQ0FBQztRQUNwQixDQUFDO0lBQ0gsQ0FBQztDQUNGIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IEJhc2VGb3VuZGF0aW9uLCB7IERlZmF1bHRBZGFwdGVyIH0gZnJvbSAnLi4vQmFzZS9mb3VuZGF0aW9uJztcbmltcG9ydCB7XG4gIERpc3BsYXlUeXBlLFxuICBJbnB1dFZhcmlhbnQsXG4gIFNlbmRCdG5WYXJpYW50LFxuICBTdWJtaXRTaG9ydEtleSxcbn0gZnJvbSAnLi9jb21tb24vdHlwZXMnO1xuXG5leHBvcnQgaW50ZXJmYWNlIElucHV0QWRhcHRlciBleHRlbmRzIERlZmF1bHRBZGFwdGVyIHtcbiAgbG9jYWxlKGtleTogc3RyaW5nLCBwYXJhbXM/OiBSZWNvcmQ8c3RyaW5nLCBzdHJpbmc+KTogc3RyaW5nO1xuICBlbWl0Q2hhbmdlKCk6IHZvaWQ7XG4gIHN1Ym1pdChpbnB1dFZhbHVlOiBzdHJpbmcpOiB2b2lkO1xufVxuXG5leHBvcnQgY2xhc3MgSW5wdXRGb3VuZGF0aW9uIGV4dGVuZHMgQmFzZUZvdW5kYXRpb248SW5wdXRBZGFwdGVyPiB7XG4gIGNvbnN0cnVjdG9yKGFkYXB0ZXI6IElucHV0QWRhcHRlcikge1xuICAgIHN1cGVyKHsgLi4uYWRhcHRlciB9KTtcbiAgfVxuXG4gIGdldElucHV0Q2xhc3NlcygpIHtcbiAgICBjb25zdCB7IGRpc2FibGVkLCBkaXNwbGF5VHlwZSwgdmFyaWFudCB9ID0gdGhpcy5nZXRQcm9wcygpO1xuICAgIHJldHVybiB7XG4gICAgICAnbWMtaW5wdXQnOiB0cnVlLFxuICAgICAgJ21jLWlucHV0LWRpc2FibGVkJzogZGlzYWJsZWQsXG4gICAgICAnbWMtaW5wdXQtc2ltcGxlJzogZGlzcGxheVR5cGUgPT09IERpc3BsYXlUeXBlLlNpbXBsZSxcbiAgICAgICdtYy1pbnB1dC1ib3JkZXJsZXNzJzogdmFyaWFudCA9PT0gSW5wdXRWYXJpYW50LkJvcmRlckxlc3MsXG4gICAgfTtcbiAgfVxuXG4gIGdldFBsYWNlaG9sZGVyVGV4dCgpIHtcbiAgICBjb25zdCB7IHBsYWNlaG9sZGVyLCBzdWJtaXRTaG9ydEtleSB9ID0gdGhpcy5nZXRQcm9wcygpO1xuICAgIGlmIChwbGFjZWhvbGRlcikge1xuICAgICAgcmV0dXJuIHBsYWNlaG9sZGVyO1xuICAgIH1cblxuICAgIGxldCBlbnRlcktleSA9ICcnO1xuICAgIGxldCBzaGlmdEVudGVyS2V5ID0gJyc7XG5cbiAgICBpZiAoc3VibWl0U2hvcnRLZXkgPT09IFN1Ym1pdFNob3J0S2V5LkVudGVyKSB7XG4gICAgICBlbnRlcktleSA9ICdFbnRlcic7XG4gICAgICBzaGlmdEVudGVyS2V5ID0gJ1NoaWZ0ICsgRW50ZXInO1xuICAgIH0gZWxzZSBpZiAoc3VibWl0U2hvcnRLZXkgPT09IFN1Ym1pdFNob3J0S2V5LlNoaWZ0RW50ZXIpIHtcbiAgICAgIGVudGVyS2V5ID0gJ1NoaWZ0ICsgRW50ZXInO1xuICAgICAgc2hpZnRFbnRlcktleSA9ICdFbnRlcic7XG4gICAgfVxuXG4gICAgcmV0dXJuIGVudGVyS2V5XG4gICAgICA/IHRoaXMuX2FkYXB0ZXIubG9jYWxlKCdJbnB1dC5wbGVhc2VFbnRlclBsYWNlaG9sZGVyJywge1xuICAgICAgICAgIGVudGVyS2V5LFxuICAgICAgICAgIHNoaWZ0RW50ZXJLZXksXG4gICAgICAgIH0pXG4gICAgICA6IHRoaXMuX2FkYXB0ZXIubG9jYWxlKCdJbnB1dC5wbGVhc2VFbnRlcicpO1xuICB9XG5cbiAgY2xlYXJJbnB1dCgpOiB2b2lkIHtcbiAgICB0aGlzLnNldFN0YXRlKHtcbiAgICAgIGlucHV0VmFsdWU6ICcnLFxuICAgIH0pO1xuICAgIHRoaXMuX2FkYXB0ZXIuZW1pdENoYW5nZSgpO1xuICB9XG5cbiAgZW1pdENoYW5nZSgpOiB2b2lkIHtcbiAgICB0aGlzLl9hZGFwdGVyLmVtaXRDaGFuZ2UoKTtcbiAgfVxuXG4gIHN1Ym1pdChpbnB1dFZhbHVlOiBzdHJpbmcpOiB2b2lkIHtcbiAgICB0aGlzLl9hZGFwdGVyLnN1Ym1pdChpbnB1dFZhbHVlKTtcbiAgfVxuXG4gIG9uS2V5ZG93bihldmVudDogS2V5Ym9hcmRFdmVudCk6IHZvaWQge1xuICAgIGNvbnN0IHsgc3VibWl0U2hvcnRLZXksIGxvY2sgfSA9IHRoaXMuZ2V0UHJvcHMoKTtcbiAgICBjb25zdCBpbnB1dFZhbHVlID0gdGhpcy5nZXRTdGF0ZSgnaW5wdXRWYWx1ZScpO1xuICAgIGlmIChzdWJtaXRTaG9ydEtleSA9PT0gbnVsbCkge1xuICAgICAgcmV0dXJuO1xuICAgIH1cblxuICAgIGNvbnN0IHNoaWZ0S2V5ID1cbiAgICAgIHN1Ym1pdFNob3J0S2V5ID09PSBTdWJtaXRTaG9ydEtleS5FbnRlclxuICAgICAgICA/ICFldmVudC5zaGlmdEtleVxuICAgICAgICA6IHN1Ym1pdFNob3J0S2V5ID09PSBTdWJtaXRTaG9ydEtleS5TaGlmdEVudGVyXG4gICAgICAgID8gZXZlbnQuc2hpZnRLZXlcbiAgICAgICAgOiBmYWxzZTtcblxuICAgIGlmIChzaGlmdEtleSAmJiBldmVudC5rZXkgPT09ICdFbnRlcicgJiYgIWxvY2spIHtcbiAgICAgIGV2ZW50LnByZXZlbnREZWZhdWx0KCk7XG4gICAgICB0aGlzLnN1Ym1pdChpbnB1dFZhbHVlKTtcbiAgICAgIHRoaXMuc2V0U3RhdGUoe1xuICAgICAgICBpbnB1dFZhbHVlOiAnJyxcbiAgICAgIH0pO1xuICAgICAgdGhpcy5lbWl0Q2hhbmdlKCk7XG4gICAgfVxuICB9XG59XG4iXX0=
|
|
@@ -1,26 +0,0 @@
|
|
|
1
|
-
export default {
|
|
2
|
-
Input: {
|
|
3
|
-
send: "Send",
|
|
4
|
-
pauseAnswer: "Stop",
|
|
5
|
-
pleaseEnter: "Please enter your question...",
|
|
6
|
-
pleaseEnterPlaceholder: "Please enter your question and press {enterKey} to send, {shiftEnterKey} to wrap.",
|
|
7
|
-
ariaLabel: "Input box",
|
|
8
|
-
},
|
|
9
|
-
Md: {
|
|
10
|
-
toggle: "Collapse/Expand",
|
|
11
|
-
copy: "Copy",
|
|
12
|
-
diagram: 'Diagram',
|
|
13
|
-
code: 'Code',
|
|
14
|
-
zoomIn: 'Zoom In',
|
|
15
|
-
zoomOut: 'Zoom Out',
|
|
16
|
-
downLoad: 'Download',
|
|
17
|
-
},
|
|
18
|
-
Bubble: {
|
|
19
|
-
ariaLabel: "Chat message bubble",
|
|
20
|
-
emptyAvatar: "Empty avatar placeholder",
|
|
21
|
-
userName: "User name: {name}",
|
|
22
|
-
content: "Message content",
|
|
23
|
-
avatar: "User avatar: {name}"
|
|
24
|
-
},
|
|
25
|
-
};
|
|
26
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZW4tdXMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jb21wb25lbnRzLW5nL3NyYy9jb21wb25lbnRzLWNvbW1vbi9Mb2NhbGUvbGFuZy9lbi11cy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxlQUFlO0lBQ2IsS0FBSyxFQUFFO1FBQ0wsSUFBSSxFQUFFLE1BQU07UUFDWixXQUFXLEVBQUUsTUFBTTtRQUNuQixXQUFXLEVBQUUsK0JBQStCO1FBQzVDLHNCQUFzQixFQUNwQixtRkFBbUY7UUFDckYsU0FBUyxFQUFFLFdBQVc7S0FDdkI7SUFDRCxFQUFFLEVBQUU7UUFDRixNQUFNLEVBQUUsaUJBQWlCO1FBQ3pCLElBQUksRUFBRSxNQUFNO1FBQ1osT0FBTyxFQUFFLFNBQVM7UUFDbEIsSUFBSSxFQUFFLE1BQU07UUFDWixNQUFNLEVBQUUsU0FBUztRQUNqQixPQUFPLEVBQUUsVUFBVTtRQUNuQixRQUFRLEVBQUUsVUFBVTtLQUNyQjtJQUNELE1BQU0sRUFBRTtRQUNOLFNBQVMsRUFBRSxxQkFBcUI7UUFDaEMsV0FBVyxFQUFFLDBCQUEwQjtRQUN2QyxRQUFRLEVBQUUsbUJBQW1CO1FBQzdCLE9BQU8sRUFBRSxpQkFBaUI7UUFDMUIsTUFBTSxFQUFFLHFCQUFxQjtLQUM5QjtDQUNGLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgZGVmYXVsdCB7XG4gIElucHV0OiB7XG4gICAgc2VuZDogXCJTZW5kXCIsXG4gICAgcGF1c2VBbnN3ZXI6IFwiU3RvcFwiLFxuICAgIHBsZWFzZUVudGVyOiBcIlBsZWFzZSBlbnRlciB5b3VyIHF1ZXN0aW9uLi4uXCIsXG4gICAgcGxlYXNlRW50ZXJQbGFjZWhvbGRlcjpcbiAgICAgIFwiUGxlYXNlIGVudGVyIHlvdXIgcXVlc3Rpb24gYW5kIHByZXNzIHtlbnRlcktleX0gdG8gc2VuZCwge3NoaWZ0RW50ZXJLZXl9IHRvIHdyYXAuXCIsXG4gICAgYXJpYUxhYmVsOiBcIklucHV0IGJveFwiLFxuICB9LFxuICBNZDoge1xuICAgIHRvZ2dsZTogXCJDb2xsYXBzZS9FeHBhbmRcIixcbiAgICBjb3B5OiBcIkNvcHlcIixcbiAgICBkaWFncmFtOiAnRGlhZ3JhbScsXG4gICAgY29kZTogJ0NvZGUnLFxuICAgIHpvb21JbjogJ1pvb20gSW4nLFxuICAgIHpvb21PdXQ6ICdab29tIE91dCcsXG4gICAgZG93bkxvYWQ6ICdEb3dubG9hZCcsXG4gIH0sXG4gIEJ1YmJsZToge1xuICAgIGFyaWFMYWJlbDogXCJDaGF0IG1lc3NhZ2UgYnViYmxlXCIsXG4gICAgZW1wdHlBdmF0YXI6IFwiRW1wdHkgYXZhdGFyIHBsYWNlaG9sZGVyXCIsXG4gICAgdXNlck5hbWU6IFwiVXNlciBuYW1lOiB7bmFtZX1cIixcbiAgICBjb250ZW50OiBcIk1lc3NhZ2UgY29udGVudFwiLFxuICAgIGF2YXRhcjogXCJVc2VyIGF2YXRhcjoge25hbWV9XCJcbiAgfSxcbn07XG4iXX0=
|
|
@@ -1,26 +0,0 @@
|
|
|
1
|
-
export default {
|
|
2
|
-
Input: {
|
|
3
|
-
send: "发送",
|
|
4
|
-
pauseAnswer: "停止回答",
|
|
5
|
-
pleaseEnter: "请输入您的问题...",
|
|
6
|
-
pleaseEnterPlaceholder: "请输入您的问题,并按{enterKey}发送,按{shiftEnterKey}换行",
|
|
7
|
-
ariaLabel: "输入框",
|
|
8
|
-
},
|
|
9
|
-
Md: {
|
|
10
|
-
toggle: "收起/展开",
|
|
11
|
-
copy: "复制",
|
|
12
|
-
diagram: '图形',
|
|
13
|
-
code: '代码',
|
|
14
|
-
zoomIn: '放大',
|
|
15
|
-
zoomOut: '缩小',
|
|
16
|
-
downLoad: '下载',
|
|
17
|
-
},
|
|
18
|
-
Bubble: {
|
|
19
|
-
ariaLabel: "聊天消息气泡",
|
|
20
|
-
emptyAvatar: "无头像占位",
|
|
21
|
-
userName: "用户名称: {name}",
|
|
22
|
-
content: "消息内容",
|
|
23
|
-
avatar: "用户头像: {name}"
|
|
24
|
-
},
|
|
25
|
-
};
|
|
26
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiemgtY24uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jb21wb25lbnRzLW5nL3NyYy9jb21wb25lbnRzLWNvbW1vbi9Mb2NhbGUvbGFuZy96aC1jbi50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxlQUFlO0lBQ2IsS0FBSyxFQUFFO1FBQ0wsSUFBSSxFQUFFLElBQUk7UUFDVixXQUFXLEVBQUUsTUFBTTtRQUNuQixXQUFXLEVBQUUsWUFBWTtRQUN6QixzQkFBc0IsRUFDcEIsMkNBQTJDO1FBQzdDLFNBQVMsRUFBRSxLQUFLO0tBQ2pCO0lBQ0QsRUFBRSxFQUFFO1FBQ0YsTUFBTSxFQUFFLE9BQU87UUFDZixJQUFJLEVBQUUsSUFBSTtRQUNWLE9BQU8sRUFBRSxJQUFJO1FBQ2IsSUFBSSxFQUFFLElBQUk7UUFDVixNQUFNLEVBQUUsSUFBSTtRQUNaLE9BQU8sRUFBRSxJQUFJO1FBQ2IsUUFBUSxFQUFFLElBQUk7S0FDZjtJQUNELE1BQU0sRUFBRTtRQUNOLFNBQVMsRUFBRSxRQUFRO1FBQ25CLFdBQVcsRUFBRSxPQUFPO1FBQ3BCLFFBQVEsRUFBRSxjQUFjO1FBQ3hCLE9BQU8sRUFBRSxNQUFNO1FBQ2YsTUFBTSxFQUFFLGNBQWM7S0FDdkI7Q0FDRixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0IGRlZmF1bHQge1xuICBJbnB1dDoge1xuICAgIHNlbmQ6IFwi5Y+R6YCBXCIsXG4gICAgcGF1c2VBbnN3ZXI6IFwi5YGc5q2i5Zue562UXCIsXG4gICAgcGxlYXNlRW50ZXI6IFwi6K+36L6T5YWl5oKo55qE6Zeu6aKYLi4uXCIsXG4gICAgcGxlYXNlRW50ZXJQbGFjZWhvbGRlcjpcbiAgICAgIFwi6K+36L6T5YWl5oKo55qE6Zeu6aKY77yM5bm25oyJe2VudGVyS2V5feWPkemAge+8jOaMiXtzaGlmdEVudGVyS2V5feaNouihjFwiLFxuICAgIGFyaWFMYWJlbDogXCLovpPlhaXmoYZcIixcbiAgfSxcbiAgTWQ6IHtcbiAgICB0b2dnbGU6IFwi5pS26LW3L+WxleW8gFwiLFxuICAgIGNvcHk6IFwi5aSN5Yi2XCIsXG4gICAgZGlhZ3JhbTogJ+WbvuW9oicsXG4gICAgY29kZTogJ+S7o+eggScsXG4gICAgem9vbUluOiAn5pS+5aSnJyxcbiAgICB6b29tT3V0OiAn57yp5bCPJyxcbiAgICBkb3duTG9hZDogJ+S4i+i9vScsXG4gIH0sXG4gIEJ1YmJsZToge1xuICAgIGFyaWFMYWJlbDogXCLogYrlpKnmtojmga/msJTms6FcIixcbiAgICBlbXB0eUF2YXRhcjogXCLml6DlpLTlg4/ljaDkvY1cIixcbiAgICB1c2VyTmFtZTogXCLnlKjmiLflkI3np7A6IHtuYW1lfVwiLFxuICAgIGNvbnRlbnQ6IFwi5raI5oGv5YaF5a65XCIsXG4gICAgYXZhdGFyOiBcIueUqOaIt+WktOWDjzoge25hbWV9XCJcbiAgfSxcbn07XG4iXX0=
|
|
@@ -1,132 +0,0 @@
|
|
|
1
|
-
import BaseFoundation from '../Base/foundation';
|
|
2
|
-
import { MermaidService } from './common/MermaidService';
|
|
3
|
-
import hljs from 'highlight.js';
|
|
4
|
-
import { MDCardService } from './common/MDCardService';
|
|
5
|
-
export class CodeBlockFoundation extends BaseFoundation {
|
|
6
|
-
constructor(adapter) {
|
|
7
|
-
super({ ...adapter });
|
|
8
|
-
this.toggleExpand = () => {
|
|
9
|
-
this.setState({ expanded: !this.getStates().expanded });
|
|
10
|
-
};
|
|
11
|
-
this.zoomOut = () => {
|
|
12
|
-
const container = this._adapter.getContainer();
|
|
13
|
-
if (container && this.mermaidService) {
|
|
14
|
-
this.mermaidService.zoomOut(container);
|
|
15
|
-
}
|
|
16
|
-
};
|
|
17
|
-
this.zoomIn = () => {
|
|
18
|
-
const container = this._adapter.getContainer();
|
|
19
|
-
if (container && this.mermaidService) {
|
|
20
|
-
this.mermaidService.zoomIn(container);
|
|
21
|
-
}
|
|
22
|
-
};
|
|
23
|
-
this.checkIsMermaid = () => {
|
|
24
|
-
const { enableMermaid, language } = this.getProps();
|
|
25
|
-
return enableMermaid && language?.toLowerCase() === 'mermaid';
|
|
26
|
-
};
|
|
27
|
-
this.download = () => {
|
|
28
|
-
const container = this._adapter.getContainer();
|
|
29
|
-
if (container && this.mermaidService) {
|
|
30
|
-
this.mermaidService.download(container);
|
|
31
|
-
}
|
|
32
|
-
};
|
|
33
|
-
this.handleCopySuccess = () => {
|
|
34
|
-
this.setState({ copied: true });
|
|
35
|
-
setTimeout(() => {
|
|
36
|
-
this.setState({ copied: false });
|
|
37
|
-
}, 1500);
|
|
38
|
-
};
|
|
39
|
-
this.updateHighlightedCode = () => {
|
|
40
|
-
const { code, language } = this.getProps();
|
|
41
|
-
let highlightedCode = '';
|
|
42
|
-
try {
|
|
43
|
-
const typeIndex = code.indexOf(`<span class="mc-typewriter`);
|
|
44
|
-
if (language && hljs.getLanguage(language)) {
|
|
45
|
-
if (typeIndex !== -1) {
|
|
46
|
-
highlightedCode =
|
|
47
|
-
hljs.highlight(code.slice(0, typeIndex), {
|
|
48
|
-
language,
|
|
49
|
-
}).value + code.slice(typeIndex);
|
|
50
|
-
}
|
|
51
|
-
else {
|
|
52
|
-
highlightedCode = hljs.highlight(code, {
|
|
53
|
-
language,
|
|
54
|
-
}).value;
|
|
55
|
-
}
|
|
56
|
-
}
|
|
57
|
-
else {
|
|
58
|
-
if (typeof hljs.highlightAuto !== 'undefined') {
|
|
59
|
-
if (typeIndex !== -1) {
|
|
60
|
-
highlightedCode =
|
|
61
|
-
hljs.highlightAuto(code.slice(0, typeIndex)).value +
|
|
62
|
-
code.slice(typeIndex);
|
|
63
|
-
}
|
|
64
|
-
else {
|
|
65
|
-
highlightedCode = hljs.highlightAuto(code).value;
|
|
66
|
-
}
|
|
67
|
-
}
|
|
68
|
-
else {
|
|
69
|
-
highlightedCode = this.mdCardService.filterHtml(code);
|
|
70
|
-
}
|
|
71
|
-
}
|
|
72
|
-
}
|
|
73
|
-
catch (_) {
|
|
74
|
-
highlightedCode = code;
|
|
75
|
-
}
|
|
76
|
-
this._adapter.highlightCodeChange(highlightedCode, language);
|
|
77
|
-
};
|
|
78
|
-
this.renderMermaid = async () => {
|
|
79
|
-
const { code, theme, mermaidConfig, } = this.getProps();
|
|
80
|
-
const { mermaidContentRef } = this.getStates();
|
|
81
|
-
const isMermaid = this.checkIsMermaid();
|
|
82
|
-
if (!isMermaid || !code || !mermaidContentRef) {
|
|
83
|
-
return;
|
|
84
|
-
}
|
|
85
|
-
if (!this.mermaidService) {
|
|
86
|
-
try {
|
|
87
|
-
this.mermaidService = new MermaidService();
|
|
88
|
-
const config = {
|
|
89
|
-
theme: theme === 'dark' ? 'dark' : 'default',
|
|
90
|
-
...mermaidConfig,
|
|
91
|
-
};
|
|
92
|
-
this.mermaidService.setConfig(config);
|
|
93
|
-
}
|
|
94
|
-
catch (error) {
|
|
95
|
-
console.error('Failed to load MermaidService:', error);
|
|
96
|
-
return;
|
|
97
|
-
}
|
|
98
|
-
}
|
|
99
|
-
this.nextTick(async () => {
|
|
100
|
-
const container = mermaidContentRef.nativeElement;
|
|
101
|
-
if (container) {
|
|
102
|
-
// 移除打字效果相关的span标签
|
|
103
|
-
const cleanCode = code.replace(/<span[^>]*\bclass\s*=\s*['"]mc-typewriter[^>]*>([\s\S]*?)<\/span>/g, `$1`);
|
|
104
|
-
await this.mermaidService?.renderToContainer(container, cleanCode, theme);
|
|
105
|
-
}
|
|
106
|
-
});
|
|
107
|
-
};
|
|
108
|
-
this.mdCardService = new MDCardService();
|
|
109
|
-
}
|
|
110
|
-
copyCodeInternal() {
|
|
111
|
-
const { code } = this.getProps();
|
|
112
|
-
if (navigator.clipboard) {
|
|
113
|
-
navigator.clipboard.writeText(code).then(() => {
|
|
114
|
-
this.handleCopySuccess();
|
|
115
|
-
});
|
|
116
|
-
}
|
|
117
|
-
else {
|
|
118
|
-
const textarea = document.createElement('textarea');
|
|
119
|
-
textarea.style.position = 'fixed';
|
|
120
|
-
textarea.style.top = '-9999px';
|
|
121
|
-
textarea.style.left = '-9999px';
|
|
122
|
-
textarea.style.zIndex = '-1';
|
|
123
|
-
textarea.value = code;
|
|
124
|
-
document.body.appendChild(textarea);
|
|
125
|
-
textarea.select();
|
|
126
|
-
document.execCommand('copy');
|
|
127
|
-
document.body.removeChild(textarea);
|
|
128
|
-
this.handleCopySuccess();
|
|
129
|
-
}
|
|
130
|
-
}
|
|
131
|
-
}
|
|
132
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29kZWJsb2NrLWZvdW5kYXRpb24uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jb21wb25lbnRzLW5nL3NyYy9jb21wb25lbnRzLWNvbW1vbi9NYXJrZG93bkNhcmQvY29kZWJsb2NrLWZvdW5kYXRpb24udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxjQUFrQyxNQUFNLG9CQUFvQixDQUFDO0FBSXBFLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSx5QkFBeUIsQ0FBQztBQUN6RCxPQUFPLElBQUksTUFBTSxjQUFjLENBQUM7QUFDaEMsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLHdCQUF3QixDQUFDO0FBT3ZELE1BQU0sT0FBTyxtQkFBb0IsU0FBUSxjQUFnQztJQUd2RSxZQUFZLE9BQXlCO1FBQ25DLEtBQUssQ0FBQyxFQUFFLEdBQUcsT0FBTyxFQUFFLENBQUMsQ0FBQztRQUl4QixpQkFBWSxHQUFHLEdBQUcsRUFBRTtZQUNsQixJQUFJLENBQUMsUUFBUSxDQUFDLEVBQUUsUUFBUSxFQUFFLENBQUMsSUFBSSxDQUFDLFNBQVMsRUFBRSxDQUFDLFFBQVEsRUFBRSxDQUFDLENBQUM7UUFDMUQsQ0FBQyxDQUFDO1FBRUYsWUFBTyxHQUFHLEdBQUcsRUFBRTtZQUNiLE1BQU0sU0FBUyxHQUFHLElBQUksQ0FBQyxRQUFRLENBQUMsWUFBWSxFQUFFLENBQUM7WUFDL0MsSUFBSSxTQUFTLElBQUksSUFBSSxDQUFDLGNBQWMsRUFBRSxDQUFDO2dCQUNyQyxJQUFJLENBQUMsY0FBYyxDQUFDLE9BQU8sQ0FBQyxTQUFTLENBQUMsQ0FBQztZQUN6QyxDQUFDO1FBQ0gsQ0FBQyxDQUFDO1FBRUYsV0FBTSxHQUFHLEdBQUcsRUFBRTtZQUNaLE1BQU0sU0FBUyxHQUFHLElBQUksQ0FBQyxRQUFRLENBQUMsWUFBWSxFQUFFLENBQUM7WUFDL0MsSUFBSSxTQUFTLElBQUksSUFBSSxDQUFDLGNBQWMsRUFBRSxDQUFDO2dCQUNyQyxJQUFJLENBQUMsY0FBYyxDQUFDLE1BQU0sQ0FBQyxTQUFTLENBQUMsQ0FBQztZQUN4QyxDQUFDO1FBQ0gsQ0FBQyxDQUFDO1FBRUYsbUJBQWMsR0FBRyxHQUFHLEVBQUU7WUFDcEIsTUFBTSxFQUFFLGFBQWEsRUFBRSxRQUFRLEVBQUUsR0FBRyxJQUFJLENBQUMsUUFBUSxFQUFFLENBQUM7WUFDcEQsT0FBTyxhQUFhLElBQUksUUFBUSxFQUFFLFdBQVcsRUFBRSxLQUFLLFNBQVMsQ0FBQztRQUNoRSxDQUFDLENBQUM7UUFFRixhQUFRLEdBQUcsR0FBRyxFQUFFO1lBQ2QsTUFBTSxTQUFTLEdBQUcsSUFBSSxDQUFDLFFBQVEsQ0FBQyxZQUFZLEVBQUUsQ0FBQztZQUMvQyxJQUFJLFNBQVMsSUFBSSxJQUFJLENBQUMsY0FBYyxFQUFFLENBQUM7Z0JBQ3JDLElBQUksQ0FBQyxjQUFjLENBQUMsUUFBUSxDQUFDLFNBQVMsQ0FBQyxDQUFDO1lBQzFDLENBQUM7UUFDSCxDQUFDLENBQUM7UUFFRixzQkFBaUIsR0FBRyxHQUFHLEVBQUU7WUFDdkIsSUFBSSxDQUFDLFFBQVEsQ0FBQyxFQUFFLE1BQU0sRUFBRSxJQUFJLEVBQUUsQ0FBQyxDQUFDO1lBQ2hDLFVBQVUsQ0FBQyxHQUFHLEVBQUU7Z0JBQ2QsSUFBSSxDQUFDLFFBQVEsQ0FBQyxFQUFFLE1BQU0sRUFBRSxLQUFLLEVBQUUsQ0FBQyxDQUFDO1lBQ25DLENBQUMsRUFBRSxJQUFJLENBQUMsQ0FBQztRQUNYLENBQUMsQ0FBQztRQXVCRiwwQkFBcUIsR0FBRyxHQUFHLEVBQUU7WUFDM0IsTUFBTSxFQUFFLElBQUksRUFBRSxRQUFRLEVBQUUsR0FBRyxJQUFJLENBQUMsUUFBUSxFQUFFLENBQUM7WUFDM0MsSUFBSSxlQUFlLEdBQUcsRUFBRSxDQUFDO1lBQ3pCLElBQUksQ0FBQztnQkFDSCxNQUFNLFNBQVMsR0FBRyxJQUFJLENBQUMsT0FBTyxDQUFDLDRCQUE0QixDQUFDLENBQUM7Z0JBRTdELElBQUksUUFBUSxJQUFJLElBQUksQ0FBQyxXQUFXLENBQUMsUUFBUSxDQUFDLEVBQUUsQ0FBQztvQkFDM0MsSUFBSSxTQUFTLEtBQUssQ0FBQyxDQUFDLEVBQUUsQ0FBQzt3QkFDckIsZUFBZTs0QkFDYixJQUFJLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQyxFQUFFLFNBQVMsQ0FBQyxFQUFFO2dDQUN2QyxRQUFROzZCQUNULENBQUMsQ0FBQyxLQUFLLEdBQUcsSUFBSSxDQUFDLEtBQUssQ0FBQyxTQUFTLENBQUMsQ0FBQztvQkFDckMsQ0FBQzt5QkFBTSxDQUFDO3dCQUNOLGVBQWUsR0FBRyxJQUFJLENBQUMsU0FBUyxDQUFDLElBQUksRUFBRTs0QkFDckMsUUFBUTt5QkFDVCxDQUFDLENBQUMsS0FBSyxDQUFDO29CQUNYLENBQUM7Z0JBQ0gsQ0FBQztxQkFBTSxDQUFDO29CQUNOLElBQUksT0FBTyxJQUFJLENBQUMsYUFBYSxLQUFLLFdBQVcsRUFBRSxDQUFDO3dCQUM5QyxJQUFJLFNBQVMsS0FBSyxDQUFDLENBQUMsRUFBRSxDQUFDOzRCQUNyQixlQUFlO2dDQUNiLElBQUksQ0FBQyxhQUFhLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDLEVBQUUsU0FBUyxDQUFDLENBQUMsQ0FBQyxLQUFLO29DQUNsRCxJQUFJLENBQUMsS0FBSyxDQUFDLFNBQVMsQ0FBQyxDQUFDO3dCQUMxQixDQUFDOzZCQUFNLENBQUM7NEJBQ04sZUFBZSxHQUFHLElBQUksQ0FBQyxhQUFhLENBQUMsSUFBSSxDQUFDLENBQUMsS0FBSyxDQUFDO3dCQUNuRCxDQUFDO29CQUNILENBQUM7eUJBQU0sQ0FBQzt3QkFDTixlQUFlLEdBQUcsSUFBSSxDQUFDLGFBQWEsQ0FBQyxVQUFVLENBQUMsSUFBSSxDQUFDLENBQUM7b0JBQ3hELENBQUM7Z0JBQ0gsQ0FBQztZQUNILENBQUM7WUFBQyxPQUFPLENBQUMsRUFBRSxDQUFDO2dCQUNYLGVBQWUsR0FBRyxJQUFJLENBQUM7WUFDekIsQ0FBQztZQUNELElBQUksQ0FBQyxRQUFRLENBQUMsbUJBQW1CLENBQUMsZUFBZSxFQUFFLFFBQVEsQ0FBQyxDQUFDO1FBQy9ELENBQUMsQ0FBQztRQUVGLGtCQUFhLEdBQUcsS0FBSyxJQUFJLEVBQUU7WUFDekIsTUFBTSxFQUNKLElBQUksRUFDSixLQUFLLEVBQ0wsYUFBYSxHQUNkLEdBQUcsSUFBSSxDQUFDLFFBQVEsRUFBRSxDQUFDO1lBQ3BCLE1BQU0sRUFBRSxpQkFBaUIsRUFBQyxHQUFHLElBQUksQ0FBQyxTQUFTLEVBQUUsQ0FBQztZQUM5QyxNQUFNLFNBQVMsR0FBRyxJQUFJLENBQUMsY0FBYyxFQUFFLENBQUM7WUFDeEMsSUFBSSxDQUFDLFNBQVMsSUFBSSxDQUFDLElBQUksSUFBSSxDQUFDLGlCQUFpQixFQUFFLENBQUM7Z0JBQzlDLE9BQU87WUFDVCxDQUFDO1lBRUQsSUFBSSxDQUFDLElBQUksQ0FBQyxjQUFjLEVBQUUsQ0FBQztnQkFDekIsSUFBSSxDQUFDO29CQUNILElBQUksQ0FBQyxjQUFjLEdBQUcsSUFBSSxjQUFjLEVBQUUsQ0FBQztvQkFDM0MsTUFBTSxNQUFNLEdBQWtCO3dCQUM1QixLQUFLLEVBQUUsS0FBSyxLQUFLLE1BQU0sQ0FBQyxDQUFDLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxTQUFTO3dCQUM1QyxHQUFHLGFBQWE7cUJBQ2pCLENBQUM7b0JBQ0YsSUFBSSxDQUFDLGNBQWMsQ0FBQyxTQUFTLENBQUMsTUFBTSxDQUFDLENBQUM7Z0JBQ3hDLENBQUM7Z0JBQUMsT0FBTyxLQUFLLEVBQUUsQ0FBQztvQkFDZixPQUFPLENBQUMsS0FBSyxDQUFDLGdDQUFnQyxFQUFFLEtBQUssQ0FBQyxDQUFDO29CQUN2RCxPQUFPO2dCQUNULENBQUM7WUFDSCxDQUFDO1lBQ0QsSUFBSSxDQUFDLFFBQVEsQ0FBQyxLQUFLLElBQUksRUFBRTtnQkFDdkIsTUFBTSxTQUFTLEdBQUcsaUJBQWlCLENBQUMsYUFBYSxDQUFDO2dCQUNsRCxJQUFJLFNBQVMsRUFBRSxDQUFDO29CQUNkLGtCQUFrQjtvQkFDbEIsTUFBTSxTQUFTLEdBQUcsSUFBSSxDQUFDLE9BQU8sQ0FDNUIsb0VBQW9FLEVBQ3BFLElBQUksQ0FDTCxDQUFDO29CQUNGLE1BQU0sSUFBSSxDQUFDLGNBQWMsRUFBRSxpQkFBaUIsQ0FDMUMsU0FBUyxFQUNULFNBQVMsRUFDVCxLQUFLLENBQ04sQ0FBQztnQkFDSixDQUFDO1lBQ0gsQ0FBQyxDQUFDLENBQUM7UUFDTCxDQUFDLENBQUM7UUF6SUEsSUFBSSxDQUFDLGFBQWEsR0FBRyxJQUFJLGFBQWEsRUFBRSxDQUFDO0lBQzNDLENBQUM7SUF1Q0QsZ0JBQWdCO1FBQ2QsTUFBTSxFQUFFLElBQUksRUFBRSxHQUFHLElBQUksQ0FBQyxRQUFRLEVBQUUsQ0FBQztRQUNqQyxJQUFJLFNBQVMsQ0FBQyxTQUFTLEVBQUUsQ0FBQztZQUN4QixTQUFTLENBQUMsU0FBUyxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUMsQ0FBQyxJQUFJLENBQUMsR0FBRyxFQUFFO2dCQUM1QyxJQUFJLENBQUMsaUJBQWlCLEVBQUUsQ0FBQztZQUMzQixDQUFDLENBQUMsQ0FBQztRQUNMLENBQUM7YUFBTSxDQUFDO1lBQ04sTUFBTSxRQUFRLEdBQUcsUUFBUSxDQUFDLGFBQWEsQ0FBQyxVQUFVLENBQUMsQ0FBQztZQUNwRCxRQUFRLENBQUMsS0FBSyxDQUFDLFFBQVEsR0FBRyxPQUFPLENBQUM7WUFDbEMsUUFBUSxDQUFDLEtBQUssQ0FBQyxHQUFHLEdBQUcsU0FBUyxDQUFDO1lBQy9CLFFBQVEsQ0FBQyxLQUFLLENBQUMsSUFBSSxHQUFHLFNBQVMsQ0FBQztZQUNoQyxRQUFRLENBQUMsS0FBSyxDQUFDLE1BQU0sR0FBRyxJQUFJLENBQUM7WUFDN0IsUUFBUSxDQUFDLEtBQUssR0FBRyxJQUFJLENBQUM7WUFDdEIsUUFBUSxDQUFDLElBQUksQ0FBQyxXQUFXLENBQUMsUUFBUSxDQUFDLENBQUM7WUFDcEMsUUFBUSxDQUFDLE1BQU0sRUFBRSxDQUFDO1lBQ2xCLFFBQVEsQ0FBQyxXQUFXLENBQUMsTUFBTSxDQUFDLENBQUM7WUFDN0IsUUFBUSxDQUFDLElBQUksQ0FBQyxXQUFXLENBQUMsUUFBUSxDQUFDLENBQUM7WUFDcEMsSUFBSSxDQUFDLGlCQUFpQixFQUFFLENBQUM7UUFDM0IsQ0FBQztJQUNILENBQUM7Q0ErRUYiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgQmFzZUZvdW5kYXRpb24sIHsgRGVmYXVsdEFkYXB0ZXIgfSBmcm9tICcuLi9CYXNlL2ZvdW5kYXRpb24nO1xuaW1wb3J0IHR5cGUgeyBUb2tlbiB9IGZyb20gJ21hcmtkb3duLWl0JztcbmltcG9ydCB0eXBlIHsgQVNUTm9kZSwgTWVybWFpZENvbmZpZyB9IGZyb20gJy4vY29tbW9uL21kQ2FyZC50eXBlcyc7XG5pbXBvcnQgeyBkZWZhdWx0VHlwaW5nQ29uZmlnIH0gZnJvbSAnLi9jb21tb24vbWRDYXJkLnR5cGVzJztcbmltcG9ydCB7IE1lcm1haWRTZXJ2aWNlIH0gZnJvbSAnLi9jb21tb24vTWVybWFpZFNlcnZpY2UnO1xuaW1wb3J0IGhsanMgZnJvbSAnaGlnaGxpZ2h0LmpzJztcbmltcG9ydCB7IE1EQ2FyZFNlcnZpY2UgfSBmcm9tICcuL2NvbW1vbi9NRENhcmRTZXJ2aWNlJztcblxuZXhwb3J0IGludGVyZmFjZSBDb2RlQmxvY2tBZGFwdGVyIGV4dGVuZHMgRGVmYXVsdEFkYXB0ZXIge1xuICBnZXRDb250YWluZXIoKTogSFRNTEVsZW1lbnQgfCBudWxsO1xuICBoaWdobGlnaHRDb2RlQ2hhbmdlKGNvZGU6IHN0cmluZywgbGFuZ3VhZ2U6IHN0cmluZyk6IHZvaWQ7XG59XG5cbmV4cG9ydCBjbGFzcyBDb2RlQmxvY2tGb3VuZGF0aW9uIGV4dGVuZHMgQmFzZUZvdW5kYXRpb248Q29kZUJsb2NrQWRhcHRlcj4ge1xuICBtZXJtYWlkU2VydmljZT86IE1lcm1haWRTZXJ2aWNlO1xuICBtZENhcmRTZXJ2aWNlOiBNRENhcmRTZXJ2aWNlO1xuICBjb25zdHJ1Y3RvcihhZGFwdGVyOiBDb2RlQmxvY2tBZGFwdGVyKSB7XG4gICAgc3VwZXIoeyAuLi5hZGFwdGVyIH0pO1xuICAgIHRoaXMubWRDYXJkU2VydmljZSA9IG5ldyBNRENhcmRTZXJ2aWNlKCk7XG4gIH1cblxuICB0b2dnbGVFeHBhbmQgPSAoKSA9PiB7XG4gICAgdGhpcy5zZXRTdGF0ZSh7IGV4cGFuZGVkOiAhdGhpcy5nZXRTdGF0ZXMoKS5leHBhbmRlZCB9KTtcbiAgfTtcblxuICB6b29tT3V0ID0gKCkgPT4ge1xuICAgIGNvbnN0IGNvbnRhaW5lciA9IHRoaXMuX2FkYXB0ZXIuZ2V0Q29udGFpbmVyKCk7XG4gICAgaWYgKGNvbnRhaW5lciAmJiB0aGlzLm1lcm1haWRTZXJ2aWNlKSB7XG4gICAgICB0aGlzLm1lcm1haWRTZXJ2aWNlLnpvb21PdXQoY29udGFpbmVyKTtcbiAgICB9XG4gIH07XG5cbiAgem9vbUluID0gKCkgPT4ge1xuICAgIGNvbnN0IGNvbnRhaW5lciA9IHRoaXMuX2FkYXB0ZXIuZ2V0Q29udGFpbmVyKCk7XG4gICAgaWYgKGNvbnRhaW5lciAmJiB0aGlzLm1lcm1haWRTZXJ2aWNlKSB7XG4gICAgICB0aGlzLm1lcm1haWRTZXJ2aWNlLnpvb21Jbihjb250YWluZXIpO1xuICAgIH1cbiAgfTtcblxuICBjaGVja0lzTWVybWFpZCA9ICgpID0+IHtcbiAgICBjb25zdCB7IGVuYWJsZU1lcm1haWQsIGxhbmd1YWdlIH0gPSB0aGlzLmdldFByb3BzKCk7XG4gICAgcmV0dXJuIGVuYWJsZU1lcm1haWQgJiYgbGFuZ3VhZ2U/LnRvTG93ZXJDYXNlKCkgPT09ICdtZXJtYWlkJztcbiAgfTtcblxuICBkb3dubG9hZCA9ICgpID0+IHtcbiAgICBjb25zdCBjb250YWluZXIgPSB0aGlzLl9hZGFwdGVyLmdldENvbnRhaW5lcigpO1xuICAgIGlmIChjb250YWluZXIgJiYgdGhpcy5tZXJtYWlkU2VydmljZSkge1xuICAgICAgdGhpcy5tZXJtYWlkU2VydmljZS5kb3dubG9hZChjb250YWluZXIpO1xuICAgIH1cbiAgfTtcblxuICBoYW5kbGVDb3B5U3VjY2VzcyA9ICgpID0+IHtcbiAgICB0aGlzLnNldFN0YXRlKHsgY29waWVkOiB0cnVlIH0pO1xuICAgIHNldFRpbWVvdXQoKCkgPT4ge1xuICAgICAgdGhpcy5zZXRTdGF0ZSh7IGNvcGllZDogZmFsc2UgfSk7XG4gICAgfSwgMTUwMCk7XG4gIH07XG5cbiAgY29weUNvZGVJbnRlcm5hbCgpIHtcbiAgICBjb25zdCB7IGNvZGUgfSA9IHRoaXMuZ2V0UHJvcHMoKTtcbiAgICBpZiAobmF2aWdhdG9yLmNsaXBib2FyZCkge1xuICAgICAgbmF2aWdhdG9yLmNsaXBib2FyZC53cml0ZVRleHQoY29kZSkudGhlbigoKSA9PiB7XG4gICAgICAgIHRoaXMuaGFuZGxlQ29weVN1Y2Nlc3MoKTtcbiAgICAgIH0pO1xuICAgIH0gZWxzZSB7XG4gICAgICBjb25zdCB0ZXh0YXJlYSA9IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoJ3RleHRhcmVhJyk7XG4gICAgICB0ZXh0YXJlYS5zdHlsZS5wb3NpdGlvbiA9ICdmaXhlZCc7XG4gICAgICB0ZXh0YXJlYS5zdHlsZS50b3AgPSAnLTk5OTlweCc7XG4gICAgICB0ZXh0YXJlYS5zdHlsZS5sZWZ0ID0gJy05OTk5cHgnO1xuICAgICAgdGV4dGFyZWEuc3R5bGUuekluZGV4ID0gJy0xJztcbiAgICAgIHRleHRhcmVhLnZhbHVlID0gY29kZTtcbiAgICAgIGRvY3VtZW50LmJvZHkuYXBwZW5kQ2hpbGQodGV4dGFyZWEpO1xuICAgICAgdGV4dGFyZWEuc2VsZWN0KCk7XG4gICAgICBkb2N1bWVudC5leGVjQ29tbWFuZCgnY29weScpO1xuICAgICAgZG9jdW1lbnQuYm9keS5yZW1vdmVDaGlsZCh0ZXh0YXJlYSk7XG4gICAgICB0aGlzLmhhbmRsZUNvcHlTdWNjZXNzKCk7XG4gICAgfVxuICB9XG5cbiAgdXBkYXRlSGlnaGxpZ2h0ZWRDb2RlID0gKCkgPT4ge1xuICAgIGNvbnN0IHsgY29kZSwgbGFuZ3VhZ2UgfSA9IHRoaXMuZ2V0UHJvcHMoKTtcbiAgICBsZXQgaGlnaGxpZ2h0ZWRDb2RlID0gJyc7XG4gICAgdHJ5IHtcbiAgICAgIGNvbnN0IHR5cGVJbmRleCA9IGNvZGUuaW5kZXhPZihgPHNwYW4gY2xhc3M9XCJtYy10eXBld3JpdGVyYCk7XG5cbiAgICAgIGlmIChsYW5ndWFnZSAmJiBobGpzLmdldExhbmd1YWdlKGxhbmd1YWdlKSkge1xuICAgICAgICBpZiAodHlwZUluZGV4ICE9PSAtMSkge1xuICAgICAgICAgIGhpZ2hsaWdodGVkQ29kZSA9XG4gICAgICAgICAgICBobGpzLmhpZ2hsaWdodChjb2RlLnNsaWNlKDAsIHR5cGVJbmRleCksIHtcbiAgICAgICAgICAgICAgbGFuZ3VhZ2UsXG4gICAgICAgICAgICB9KS52YWx1ZSArIGNvZGUuc2xpY2UodHlwZUluZGV4KTtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICBoaWdobGlnaHRlZENvZGUgPSBobGpzLmhpZ2hsaWdodChjb2RlLCB7XG4gICAgICAgICAgICBsYW5ndWFnZSxcbiAgICAgICAgICB9KS52YWx1ZTtcbiAgICAgICAgfVxuICAgICAgfSBlbHNlIHtcbiAgICAgICAgaWYgKHR5cGVvZiBobGpzLmhpZ2hsaWdodEF1dG8gIT09ICd1bmRlZmluZWQnKSB7XG4gICAgICAgICAgaWYgKHR5cGVJbmRleCAhPT0gLTEpIHtcbiAgICAgICAgICAgIGhpZ2hsaWdodGVkQ29kZSA9XG4gICAgICAgICAgICAgIGhsanMuaGlnaGxpZ2h0QXV0byhjb2RlLnNsaWNlKDAsIHR5cGVJbmRleCkpLnZhbHVlICtcbiAgICAgICAgICAgICAgY29kZS5zbGljZSh0eXBlSW5kZXgpO1xuICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICBoaWdobGlnaHRlZENvZGUgPSBobGpzLmhpZ2hsaWdodEF1dG8oY29kZSkudmFsdWU7XG4gICAgICAgICAgfVxuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgIGhpZ2hsaWdodGVkQ29kZSA9IHRoaXMubWRDYXJkU2VydmljZS5maWx0ZXJIdG1sKGNvZGUpO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfSBjYXRjaCAoXykge1xuICAgICAgaGlnaGxpZ2h0ZWRDb2RlID0gY29kZTtcbiAgICB9XG4gICAgdGhpcy5fYWRhcHRlci5oaWdobGlnaHRDb2RlQ2hhbmdlKGhpZ2hsaWdodGVkQ29kZSwgbGFuZ3VhZ2UpO1xuICB9O1xuXG4gIHJlbmRlck1lcm1haWQgPSBhc3luYyAoKSA9PiB7XG4gICAgY29uc3Qge1xuICAgICAgY29kZSxcbiAgICAgIHRoZW1lLFxuICAgICAgbWVybWFpZENvbmZpZyxcbiAgICB9ID0gdGhpcy5nZXRQcm9wcygpO1xuICAgIGNvbnN0IHsgbWVybWFpZENvbnRlbnRSZWZ9ID0gdGhpcy5nZXRTdGF0ZXMoKTtcbiAgICBjb25zdCBpc01lcm1haWQgPSB0aGlzLmNoZWNrSXNNZXJtYWlkKCk7XG4gICAgaWYgKCFpc01lcm1haWQgfHwgIWNvZGUgfHwgIW1lcm1haWRDb250ZW50UmVmKSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgaWYgKCF0aGlzLm1lcm1haWRTZXJ2aWNlKSB7XG4gICAgICB0cnkge1xuICAgICAgICB0aGlzLm1lcm1haWRTZXJ2aWNlID0gbmV3IE1lcm1haWRTZXJ2aWNlKCk7XG4gICAgICAgIGNvbnN0IGNvbmZpZzogTWVybWFpZENvbmZpZyA9IHtcbiAgICAgICAgICB0aGVtZTogdGhlbWUgPT09ICdkYXJrJyA/ICdkYXJrJyA6ICdkZWZhdWx0JyxcbiAgICAgICAgICAuLi5tZXJtYWlkQ29uZmlnLFxuICAgICAgICB9O1xuICAgICAgICB0aGlzLm1lcm1haWRTZXJ2aWNlLnNldENvbmZpZyhjb25maWcpO1xuICAgICAgfSBjYXRjaCAoZXJyb3IpIHtcbiAgICAgICAgY29uc29sZS5lcnJvcignRmFpbGVkIHRvIGxvYWQgTWVybWFpZFNlcnZpY2U6JywgZXJyb3IpO1xuICAgICAgICByZXR1cm47XG4gICAgICB9XG4gICAgfVxuICAgIHRoaXMubmV4dFRpY2soYXN5bmMgKCkgPT4ge1xuICAgICAgY29uc3QgY29udGFpbmVyID0gbWVybWFpZENvbnRlbnRSZWYubmF0aXZlRWxlbWVudDtcbiAgICAgIGlmIChjb250YWluZXIpIHtcbiAgICAgICAgLy8g56e76Zmk5omT5a2X5pWI5p6c55u45YWz55qEc3Bhbuagh+etvlxuICAgICAgICBjb25zdCBjbGVhbkNvZGUgPSBjb2RlLnJlcGxhY2UoXG4gICAgICAgICAgLzxzcGFuW14+XSpcXGJjbGFzc1xccyo9XFxzKlsnXCJdbWMtdHlwZXdyaXRlcltePl0qPihbXFxzXFxTXSo/KTxcXC9zcGFuPi9nLFxuICAgICAgICAgIGAkMWBcbiAgICAgICAgKTtcbiAgICAgICAgYXdhaXQgdGhpcy5tZXJtYWlkU2VydmljZT8ucmVuZGVyVG9Db250YWluZXIoXG4gICAgICAgICAgY29udGFpbmVyLFxuICAgICAgICAgIGNsZWFuQ29kZSxcbiAgICAgICAgICB0aGVtZVxuICAgICAgICApO1xuICAgICAgfVxuICAgIH0pO1xuICB9O1xufVxuIl19
|
|
@@ -1,69 +0,0 @@
|
|
|
1
|
-
import { filterXSS, getDefaultCSSWhiteList, getDefaultWhiteList } from 'xss';
|
|
2
|
-
export class MDCardService {
|
|
3
|
-
constructor() {
|
|
4
|
-
this.xssWhiteList = getDefaultWhiteList();
|
|
5
|
-
this.cssWhiteList = getDefaultCSSWhiteList();
|
|
6
|
-
this.setDefaultXss();
|
|
7
|
-
}
|
|
8
|
-
setDefaultXss() {
|
|
9
|
-
this.xssWhiteList['input'] = ['type', 'checked', 'disabled', 'class'];
|
|
10
|
-
this.xssWhiteList['label'] = ['for'];
|
|
11
|
-
this.xssWhiteList['ul'] = ['class'];
|
|
12
|
-
this.xssWhiteList['div'] = ['class'];
|
|
13
|
-
this.xssWhiteList['a'] = ['href', 'class', 'target', 'name'];
|
|
14
|
-
this.xssWhiteList['ol'] = ['start'];
|
|
15
|
-
this.xssWhiteList['p'] = ['class'];
|
|
16
|
-
this.xssWhiteList['span'] = ['style', 'class', 'title', 'id'];
|
|
17
|
-
this.xssWhiteList['svg'] = ['style', 'class', 'width', 'height', 'viewbox', 'preserveaspectratio', 'id', 'fill', 'stroke'];
|
|
18
|
-
this.xssWhiteList['path'] = ['style', 'class', 'd', 'id', 'fill', 'stroke'];
|
|
19
|
-
this.xssWhiteList['th'] = ['style'];
|
|
20
|
-
this.xssWhiteList['td'] = ['style'];
|
|
21
|
-
}
|
|
22
|
-
onIgnoreTagAttr(tag, name, value, isWhiteAttr) {
|
|
23
|
-
if (!isWhiteAttr && (name === 'id' || (tag === 'span' && name === 'style'))) {
|
|
24
|
-
return name + '=' + value;
|
|
25
|
-
}
|
|
26
|
-
return undefined;
|
|
27
|
-
}
|
|
28
|
-
getXssWhiteList() {
|
|
29
|
-
return this.xssWhiteList;
|
|
30
|
-
}
|
|
31
|
-
setXssWhiteList(list) {
|
|
32
|
-
this.xssWhiteList = list;
|
|
33
|
-
}
|
|
34
|
-
setCustomXssRules(rules) {
|
|
35
|
-
if (rules) {
|
|
36
|
-
rules.forEach((rule) => {
|
|
37
|
-
if (rule['value'] === null) {
|
|
38
|
-
delete this.xssWhiteList[rule['key']];
|
|
39
|
-
}
|
|
40
|
-
else {
|
|
41
|
-
this.xssWhiteList[rule['key']] = rule['value'];
|
|
42
|
-
}
|
|
43
|
-
});
|
|
44
|
-
}
|
|
45
|
-
}
|
|
46
|
-
setMdPlugins(plugins, mdt) {
|
|
47
|
-
if (plugins && plugins.length) {
|
|
48
|
-
plugins.forEach(item => {
|
|
49
|
-
const { plugin, opts } = item;
|
|
50
|
-
mdt.use(plugin, opts);
|
|
51
|
-
});
|
|
52
|
-
}
|
|
53
|
-
}
|
|
54
|
-
filterHtml(html) {
|
|
55
|
-
return filterXSS(html, {
|
|
56
|
-
whiteList: this.xssWhiteList,
|
|
57
|
-
onIgnoreTagAttr: this.onIgnoreTagAttr,
|
|
58
|
-
css: {
|
|
59
|
-
whiteList: Object.assign({}, this.cssWhiteList, {
|
|
60
|
-
top: true,
|
|
61
|
-
left: true,
|
|
62
|
-
bottom: true,
|
|
63
|
-
right: true,
|
|
64
|
-
}),
|
|
65
|
-
},
|
|
66
|
-
});
|
|
67
|
-
}
|
|
68
|
-
}
|
|
69
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiTURDYXJkU2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NvbXBvbmVudHMtbmcvc3JjL2NvbXBvbmVudHMtY29tbW9uL01hcmtkb3duQ2FyZC9jb21tb24vTURDYXJkU2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLHNCQUFzQixFQUFFLG1CQUFtQixFQUFtQixNQUFNLEtBQUssQ0FBQztBQUU5RixNQUFNLE9BQU8sYUFBYTtJQUl4QjtRQUhRLGlCQUFZLEdBQUcsbUJBQW1CLEVBQUUsQ0FBQztRQUNyQyxpQkFBWSxHQUFHLHNCQUFzQixFQUFFLENBQUM7UUFHOUMsSUFBSSxDQUFDLGFBQWEsRUFBRSxDQUFDO0lBQ3ZCLENBQUM7SUFFTyxhQUFhO1FBQ25CLElBQUksQ0FBQyxZQUFZLENBQUMsT0FBTyxDQUFDLEdBQUcsQ0FBQyxNQUFNLEVBQUUsU0FBUyxFQUFFLFVBQVUsRUFBRSxPQUFPLENBQUMsQ0FBQztRQUN0RSxJQUFJLENBQUMsWUFBWSxDQUFDLE9BQU8sQ0FBQyxHQUFHLENBQUMsS0FBSyxDQUFDLENBQUM7UUFDckMsSUFBSSxDQUFDLFlBQVksQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLE9BQU8sQ0FBQyxDQUFDO1FBQ3BDLElBQUksQ0FBQyxZQUFZLENBQUMsS0FBSyxDQUFDLEdBQUcsQ0FBQyxPQUFPLENBQUMsQ0FBQztRQUNyQyxJQUFJLENBQUMsWUFBWSxDQUFDLEdBQUcsQ0FBQyxHQUFHLENBQUMsTUFBTSxFQUFFLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxDQUFDLENBQUM7UUFDN0QsSUFBSSxDQUFDLFlBQVksQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLE9BQU8sQ0FBQyxDQUFDO1FBRXBDLElBQUksQ0FBQyxZQUFZLENBQUMsR0FBRyxDQUFDLEdBQUcsQ0FBQyxPQUFPLENBQUMsQ0FBQztRQUNuQyxJQUFJ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dCI6WyJpbXBvcnQgeyBmaWx0ZXJYU1MsIGdldERlZmF1bHRDU1NXaGl0ZUxpc3QsIGdldERlZmF1bHRXaGl0ZUxpc3QsIHR5cGUgSVdoaXRlTGlzdCB9IGZyb20gJ3hzcyc7XG5pbXBvcnQgdHlwZSB7IEN1c3RvbVhzc1J1bGUsIE1kUGx1Z2luIH0gZnJvbSAnLi9tZENhcmQudHlwZXMudHMnO1xuZXhwb3J0IGNsYXNzIE1EQ2FyZFNlcnZpY2Uge1xuICBwcml2YXRlIHhzc1doaXRlTGlzdCA9IGdldERlZmF1bHRXaGl0ZUxpc3QoKTtcbiAgcHJpdmF0ZSBjc3NXaGl0ZUxpc3QgPSBnZXREZWZhdWx0Q1NTV2hpdGVMaXN0KCk7XG5cbiAgY29uc3RydWN0b3IoKSB7XG4gICAgdGhpcy5zZXREZWZhdWx0WHNzKCk7XG4gIH1cblxuICBwcml2YXRlIHNldERlZmF1bHRYc3MoKSB7XG4gICAgdGhpcy54c3NXaGl0ZUxpc3RbJ2lucHV0J10gPSBbJ3R5cGUnLCAnY2hlY2tlZCcsICdkaXNhYmxlZCcsICdjbGFzcyddO1xuICAgIHRoaXMueHNzV2hpdGVMaXN0WydsYWJlbCddID0gWydmb3InXTtcbiAgICB0aGlzLnhzc1doaXRlTGlzdFsndWwnXSA9IFsnY2xhc3MnXTtcbiAgICB0aGlzLnhzc1doaXRlTGlzdFsnZGl2J10gPSBbJ2NsYXNzJ107XG4gICAgdGhpcy54c3NXaGl0ZUxpc3RbJ2EnXSA9IFsnaHJlZicsICdjbGFzcycsICd0YXJnZXQnLCAnbmFtZSddO1xuICAgIHRoaXMueHNzV2hpdGVMaXN0WydvbCddID0gWydzdGFydCddO1xuXG4gICAgdGhpcy54c3NXaGl0ZUxpc3RbJ3AnXSA9IFsnY2xhc3MnXTtcbiAgICB0aGlzLnhzc1doaXRlTGlzdFsnc3BhbiddID0gWydzdHlsZScsICdjbGFzcycsICd0aXRsZScsICdpZCddO1xuICAgIHRoaXMueHNzV2hpdGVMaXN0WydzdmcnXSA9IFsnc3R5bGUnLCAnY2xhc3MnLCAnd2lkdGgnLCAnaGVpZ2h0JywgJ3ZpZXdib3gnLCAncHJlc2VydmVhc3BlY3RyYXRpbycsICdpZCcsICdmaWxsJywgJ3N0cm9rZSddO1xuICAgIHRoaXMueHNzV2hpdGVMaXN0WydwYXRoJ10gPSBbJ3N0eWxlJywgJ2NsYXNzJywgJ2QnLCAnaWQnLCAnZmlsbCcsICdzdHJva2UnXTtcbiAgICB0aGlzLnhzc1doaXRlTGlzdFsndGgnXSA9IFsnc3R5bGUnXTtcbiAgICB0aGlzLnhzc1doaXRlTGlzdFsndGQnXSA9IFsnc3R5bGUnXTtcbiAgfVxuXG4gIHByaXZhdGUgb25JZ25vcmVUYWdBdHRyKHRhZzogc3RyaW5nLCBuYW1lOiBzdHJpbmcsIHZhbHVlOiBzdHJpbmcsIGlzV2hpdGVBdHRyOiBib29sZWFuKSB7XG4gICAgaWYgKCFpc1doaXRlQXR0ciAmJiAobmFtZSA9PT0gJ2lkJyB8fCAodGFnID09PSAnc3BhbicgJiYgbmFtZSA9PT0gJ3N0eWxlJykpKSB7XG4gICAgICByZXR1cm4gbmFtZSArICc9JyArIHZhbHVlO1xuICAgIH1cbiAgICByZXR1cm4gdW5kZWZpbmVkO1xuICB9XG5cbiAgZ2V0WHNzV2hpdGVMaXN0KCkge1xuICAgIHJldHVybiB0aGlzLnhzc1doaXRlTGlzdDtcbiAgfVxuXG4gIHNldFhzc1doaXRlTGlzdChsaXN0OiBJV2hpdGVMaXN0KSB7XG4gICAgdGhpcy54c3NXaGl0ZUxpc3QgPSBsaXN0O1xuICB9XG5cbiAgc2V0Q3VzdG9tWHNzUnVsZXMocnVsZXM6IEN1c3RvbVhzc1J1bGVbXSkge1xuICAgIGlmIChydWxlcykge1xuICAgICAgcnVsZXMuZm9yRWFjaCgocnVsZSkgPT4ge1xuICAgICAgICBpZiAocnVsZVsndmFsdWUnXSA9PT0gbnVsbCkge1xuICAgICAgICAgIGRlbGV0ZSB0aGlzLnhzc1doaXRlTGlzdFtydWxlWydrZXknXV07XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgdGhpcy54c3NXaGl0ZUxpc3RbcnVsZVsna2V5J11dID0gcnVsZVsndmFsdWUnXTtcbiAgICAgICAgfVxuICAgICAgfSk7XG4gICAgfVxuICB9XG5cblxuICBzZXRNZFBsdWdpbnMocGx1Z2luczogTWRQbHVnaW5bXSwgbWR0OiBhbnkpIHtcbiAgICBpZiAocGx1Z2lucyAmJiBwbHVnaW5zLmxlbmd0aCkge1xuICAgICAgcGx1Z2lucy5mb3JFYWNoKGl0ZW0gPT4ge1xuICAgICAgICBjb25zdCB7IHBsdWdpbiwgb3B0cyB9ID0gaXRlbTtcbiAgICAgICAgbWR0LnVzZShwbHVnaW4sIG9wdHMpO1xuICAgICAgfSlcbiAgICB9XG4gIH1cblxuICBmaWx0ZXJIdG1sKGh0bWw6IHN0cmluZykge1xuICAgIHJldHVybiBmaWx0ZXJYU1MoaHRtbCwge1xuICAgICAgd2hpdGVMaXN0OiB0aGlzLnhzc1doaXRlTGlzdCxcbiAgICAgIG9uSWdub3JlVGFnQXR0cjogdGhpcy5vbklnbm9yZVRhZ0F0dHIsXG4gICAgICBjc3M6IHtcbiAgICAgICAgd2hpdGVMaXN0OiBPYmplY3QuYXNzaWduKHt9LCB0aGlzLmNzc1doaXRlTGlzdCwge1xuICAgICAgICAgIHRvcDogdHJ1ZSxcbiAgICAgICAgICBsZWZ0OiB0cnVlLFxuICAgICAgICAgIGJvdHRvbTogdHJ1ZSxcbiAgICAgICAgICByaWdodDogdHJ1ZSxcbiAgICAgICAgfSksXG4gICAgICB9LFxuICAgIH0pO1xuICB9XG59Il19
|