@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,222 +0,0 @@
|
|
|
1
|
-
export class MermaidService {
|
|
2
|
-
constructor(config = {}) {
|
|
3
|
-
this.config = config;
|
|
4
|
-
this.mermaidInstance = null;
|
|
5
|
-
this.isLoading = false;
|
|
6
|
-
this.lastValidResult = '';
|
|
7
|
-
this.viewStateMap = new WeakMap();
|
|
8
|
-
this.containerHeight = 400;
|
|
9
|
-
}
|
|
10
|
-
async loadMermaid() {
|
|
11
|
-
if (this.mermaidInstance) {
|
|
12
|
-
return this.mermaidInstance;
|
|
13
|
-
}
|
|
14
|
-
if (this.isLoading) {
|
|
15
|
-
return new Promise((resolve) => {
|
|
16
|
-
const checkInstance = () => {
|
|
17
|
-
if (this.mermaidInstance) {
|
|
18
|
-
resolve(this.mermaidInstance);
|
|
19
|
-
}
|
|
20
|
-
else {
|
|
21
|
-
setTimeout(checkInstance, 50);
|
|
22
|
-
}
|
|
23
|
-
};
|
|
24
|
-
checkInstance();
|
|
25
|
-
});
|
|
26
|
-
}
|
|
27
|
-
this.isLoading = true;
|
|
28
|
-
try {
|
|
29
|
-
const { default: mermaid } = await import('mermaid');
|
|
30
|
-
mermaid.initialize({
|
|
31
|
-
theme: this.config.theme || 'default',
|
|
32
|
-
startOnLoad: false,
|
|
33
|
-
suppressErrorRendering: true,
|
|
34
|
-
...this.config
|
|
35
|
-
});
|
|
36
|
-
this.mermaidInstance = mermaid;
|
|
37
|
-
return mermaid;
|
|
38
|
-
}
|
|
39
|
-
catch (error) {
|
|
40
|
-
console.error('Failed to load mermaid:', error);
|
|
41
|
-
throw new Error('Failed to load mermaid library');
|
|
42
|
-
}
|
|
43
|
-
finally {
|
|
44
|
-
this.isLoading = false;
|
|
45
|
-
}
|
|
46
|
-
}
|
|
47
|
-
async renderToContainer(container, code, theme = 'light') {
|
|
48
|
-
const svgStr = await this.renderMermaid(code, theme);
|
|
49
|
-
container.innerHTML = svgStr;
|
|
50
|
-
const svg = container.querySelector('svg');
|
|
51
|
-
if (svg) {
|
|
52
|
-
this.initViewState(container, svg);
|
|
53
|
-
this.applyTransform(container, svg);
|
|
54
|
-
svg.addEventListener('mousedown', (e) => this.onSvgMouseDown(e, container, svg));
|
|
55
|
-
}
|
|
56
|
-
}
|
|
57
|
-
initViewState(container, svg) {
|
|
58
|
-
// 获取svg的viewBox或宽高
|
|
59
|
-
let vb = svg.getAttribute('viewBox');
|
|
60
|
-
let svgW = 0, svgH = 0;
|
|
61
|
-
if (vb) {
|
|
62
|
-
const arr = vb.split(/\s+/);
|
|
63
|
-
svgW = parseFloat(arr[2]);
|
|
64
|
-
svgH = parseFloat(arr[3]);
|
|
65
|
-
}
|
|
66
|
-
else {
|
|
67
|
-
svgW = svg.width.baseVal.value || svg.getBoundingClientRect().width;
|
|
68
|
-
svgH = svg.height.baseVal.value || svg.getBoundingClientRect().height;
|
|
69
|
-
}
|
|
70
|
-
const contW = container.clientWidth || 0;
|
|
71
|
-
const contH = this.containerHeight;
|
|
72
|
-
let scale = 1;
|
|
73
|
-
if (svgW && svgH && contW && contH) {
|
|
74
|
-
scale = Math.min(contW / svgW, contH / svgH, 1);
|
|
75
|
-
}
|
|
76
|
-
this.viewStateMap.set(container, {
|
|
77
|
-
scale,
|
|
78
|
-
offsetX: 0,
|
|
79
|
-
offsetY: 0,
|
|
80
|
-
dragging: false,
|
|
81
|
-
dragStart: { x: 0, y: 0 },
|
|
82
|
-
lastOffset: { x: 0, y: 0 },
|
|
83
|
-
});
|
|
84
|
-
}
|
|
85
|
-
applyTransform(container, svg) {
|
|
86
|
-
const state = this.viewStateMap.get(container);
|
|
87
|
-
if (!state)
|
|
88
|
-
return;
|
|
89
|
-
svg.style.position = 'absolute';
|
|
90
|
-
svg.style.left = '50%';
|
|
91
|
-
svg.style.top = '50%';
|
|
92
|
-
svg.style.transform = `translate(-50%, -50%) translate(${state.offsetX}px, ${state.offsetY}px) scale(${state.scale})`;
|
|
93
|
-
svg.style.transformOrigin = 'center center';
|
|
94
|
-
svg.style.cursor = state.dragging ? 'grabbing' : 'grab';
|
|
95
|
-
}
|
|
96
|
-
zoomIn(container) {
|
|
97
|
-
const svg = container.querySelector('svg');
|
|
98
|
-
const state = this.viewStateMap.get(container);
|
|
99
|
-
if (svg && state) {
|
|
100
|
-
state.scale = Math.min(state.scale + 0.2, 3);
|
|
101
|
-
this.applyTransform(container, svg);
|
|
102
|
-
}
|
|
103
|
-
}
|
|
104
|
-
zoomOut(container) {
|
|
105
|
-
const svg = container.querySelector('svg');
|
|
106
|
-
const state = this.viewStateMap.get(container);
|
|
107
|
-
if (svg && state) {
|
|
108
|
-
state.scale = Math.max(state.scale - 0.2, 0.2);
|
|
109
|
-
this.applyTransform(container, svg);
|
|
110
|
-
}
|
|
111
|
-
}
|
|
112
|
-
reset(container) {
|
|
113
|
-
const svg = container.querySelector('svg');
|
|
114
|
-
if (svg) {
|
|
115
|
-
this.initViewState(container, svg);
|
|
116
|
-
this.applyTransform(container, svg);
|
|
117
|
-
}
|
|
118
|
-
}
|
|
119
|
-
async download(container, filename = 'diagram.png') {
|
|
120
|
-
const svg = container.querySelector('svg');
|
|
121
|
-
if (!svg)
|
|
122
|
-
return;
|
|
123
|
-
try {
|
|
124
|
-
const clonedSvg = svg.cloneNode(true);
|
|
125
|
-
const svgData = new XMLSerializer().serializeToString(clonedSvg);
|
|
126
|
-
const svgUrl = `data:image/svg+xml;charset=utf-8,${encodeURIComponent(svgData)}`;
|
|
127
|
-
const img = new Image();
|
|
128
|
-
await new Promise((resolve, reject) => {
|
|
129
|
-
img.onload = () => resolve();
|
|
130
|
-
img.onerror = (e) => reject(new Error('Image loading failed'));
|
|
131
|
-
img.src = svgUrl;
|
|
132
|
-
});
|
|
133
|
-
const canvas = document.createElement('canvas');
|
|
134
|
-
const ctx = canvas.getContext('2d');
|
|
135
|
-
if (!ctx)
|
|
136
|
-
throw new Error('Canvas context not available');
|
|
137
|
-
canvas.width = img.width * 2;
|
|
138
|
-
canvas.height = img.height * 2;
|
|
139
|
-
ctx.fillStyle = 'white';
|
|
140
|
-
ctx.fillRect(0, 0, canvas.width, canvas.height);
|
|
141
|
-
ctx.drawImage(img, 0, 0);
|
|
142
|
-
canvas.toBlob((blob) => {
|
|
143
|
-
if (!blob) {
|
|
144
|
-
console.error('Failed to create blob from canvas');
|
|
145
|
-
return;
|
|
146
|
-
}
|
|
147
|
-
const url = URL.createObjectURL(blob);
|
|
148
|
-
const a = document.createElement('a');
|
|
149
|
-
a.href = url;
|
|
150
|
-
a.download = filename;
|
|
151
|
-
document.body.appendChild(a);
|
|
152
|
-
a.click();
|
|
153
|
-
setTimeout(() => {
|
|
154
|
-
document.body.removeChild(a);
|
|
155
|
-
URL.revokeObjectURL(url);
|
|
156
|
-
}, 100);
|
|
157
|
-
}, 'image/png');
|
|
158
|
-
}
|
|
159
|
-
catch (error) {
|
|
160
|
-
console.error('Failed to download diagram:', error);
|
|
161
|
-
}
|
|
162
|
-
}
|
|
163
|
-
onSvgMouseDown(e, container, svg) {
|
|
164
|
-
const state = this.viewStateMap.get(container);
|
|
165
|
-
if (!state)
|
|
166
|
-
return;
|
|
167
|
-
state.dragging = true;
|
|
168
|
-
state.dragStart = { x: e.clientX, y: e.clientY };
|
|
169
|
-
state.lastOffset = { x: state.offsetX, y: state.offsetY };
|
|
170
|
-
const move = (ev) => this.onSvgMouseMove(ev, container, svg);
|
|
171
|
-
const up = () => this.onSvgMouseUp(container, svg, move, up);
|
|
172
|
-
document.addEventListener('mousemove', move);
|
|
173
|
-
document.addEventListener('mouseup', up);
|
|
174
|
-
this.applyTransform(container, svg);
|
|
175
|
-
}
|
|
176
|
-
onSvgMouseMove(e, container, svg) {
|
|
177
|
-
const state = this.viewStateMap.get(container);
|
|
178
|
-
if (!state || !state.dragging)
|
|
179
|
-
return;
|
|
180
|
-
state.offsetX = state.lastOffset.x + (e.clientX - state.dragStart.x);
|
|
181
|
-
state.offsetY = state.lastOffset.y + (e.clientY - state.dragStart.y);
|
|
182
|
-
this.applyTransform(container, svg);
|
|
183
|
-
}
|
|
184
|
-
onSvgMouseUp(container, svg, move, up) {
|
|
185
|
-
const state = this.viewStateMap.get(container);
|
|
186
|
-
if (!state)
|
|
187
|
-
return;
|
|
188
|
-
state.dragging = false;
|
|
189
|
-
document.removeEventListener('mousemove', move);
|
|
190
|
-
document.removeEventListener('mouseup', up);
|
|
191
|
-
this.applyTransform(container, svg);
|
|
192
|
-
}
|
|
193
|
-
async renderMermaid(code, theme = 'light') {
|
|
194
|
-
try {
|
|
195
|
-
const mermaid = await this.loadMermaid();
|
|
196
|
-
if (this.config.theme !== theme) {
|
|
197
|
-
this.config.theme = theme;
|
|
198
|
-
mermaid.initialize({
|
|
199
|
-
startOnLoad: false,
|
|
200
|
-
suppressErrorRendering: true,
|
|
201
|
-
theme: theme === 'dark' ? 'dark' : 'default',
|
|
202
|
-
...this.config
|
|
203
|
-
});
|
|
204
|
-
}
|
|
205
|
-
const id = `mc_mermaid_${Date.now()}_${Math.random().toString(36).substr(2, 9)}`;
|
|
206
|
-
const { svg } = await mermaid.render(id, code);
|
|
207
|
-
this.lastValidResult = svg;
|
|
208
|
-
return svg;
|
|
209
|
-
}
|
|
210
|
-
catch (error) {
|
|
211
|
-
return this.lastValidResult;
|
|
212
|
-
}
|
|
213
|
-
}
|
|
214
|
-
// 设置配置
|
|
215
|
-
setConfig(config = {}) {
|
|
216
|
-
this.config = {
|
|
217
|
-
theme: 'default',
|
|
218
|
-
...config
|
|
219
|
-
};
|
|
220
|
-
}
|
|
221
|
-
}
|
|
222
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiTWVybWFpZFNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jb21wb25lbnRzLW5nL3NyYy9jb21wb25lbnRzLWNvbW1vbi9NYXJrZG93bkNhcmQvY29tbW9uL01lcm1haWRTZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQVdBLE1BQU0sT0FBTyxjQUFjO0lBT3pCLFlBQW9CLFNBQXdCLEVBQUU7UUFBMUIsV0FBTSxHQUFOLE1BQU0sQ0FBb0I7UUFOdEMsb0JBQWUsR0FBUSxJQUFJLENBQUM7UUFDNUIsY0FBUyxHQUFHLEtBQUssQ0FBQztRQUNsQixvQkFBZSxHQUFXLEVBQUUsQ0FBQztRQUM3QixpQkFBWSxHQUFHLElBQUksT0FBTyxFQUFpQyxDQUFDO1FBQzVELG9CQUFlLEdBQUcsR0FBRyxDQUFDO0lBRW1CLENBQUM7SUFFMUMsS0FBSyxDQUFDLFdBQVc7UUFDdkIsSUFBSSxJQUFJLENBQUMsZUFBZSxFQUFFLENBQUM7WUFDekIsT0FBTyxJQUFJLENBQUMsZUFBZSxDQUFDO1FBQzlCLENBQUM7UUFFRCxJQUFJLElBQUksQ0FBQyxTQUFTLEVBQUUsQ0FBQztZQUNuQixPQUFPLElBQUksT0FBTyxDQUFDLENBQUMsT0FBTyxFQUFFLEVBQUU7Z0JBQzdCLE1BQU0sYUFBYSxHQUFHLEdBQUcsRUFBRTtvQkFDekIsSUFBSSxJQUFJLENBQUMsZUFBZSxFQUFFLENBQUM7d0JBQ3pCLE9BQU8sQ0FBQyxJQUFJLENBQUMsZUFBZSxDQUFDLENBQUM7b0JBQ2hDLENBQUM7eUJBQU0sQ0FBQzt3QkFDTixVQUFVLENBQUMsYUFBYSxFQUFFLEVBQUUsQ0FBQyxDQUFDO29CQUNoQyxDQUFDO2dCQUNILENBQUMsQ0FBQztnQkFDRixhQUFhLEVBQUUsQ0FBQztZQUNsQixDQUFDLENBQUMsQ0FBQztRQUNMLENBQUM7UUFFRCxJQUFJLENBQUMsU0FBUyxHQUFHLElBQUksQ0FBQztRQUN0QixJQUFJ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O29CQUM1QixLQUFLLEVBQUUsS0FBSyxLQUFLLE1BQU0sQ0FBQyxDQUFDLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxTQUFTO29CQUM1QyxHQUFHLElBQUksQ0FBQyxNQUFNO2lCQUNmLENBQUMsQ0FBQztZQUNMLENBQUM7WUFDRCxNQUFNLEVBQUUsR0FBRyxjQUFjLElBQUksQ0FBQyxHQUFHLEVBQUUsSUFBSSxJQUFJLENBQUMsTUFBTSxFQUFFLENBQUMsUUFBUSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLEVBQUUsQ0FBQztZQUNqRixNQUFNLEVBQUUsR0FBRyxFQUFFLEdBQUcsTUFBTSxPQUFPLENBQUMsTUFBTSxDQUFDLEVBQUUsRUFBRSxJQUFJLENBQUMsQ0FBQztZQUMvQyxJQUFJLENBQUMsZUFBZSxHQUFHLEdBQUcsQ0FBQztZQUMzQixPQUFPLEdBQUcsQ0FBQztRQUNiLENBQUM7UUFBQyxPQUFPLEtBQUssRUFBRSxDQUFDO1lBQ2YsT0FBTyxJQUFJLENBQUMsZUFBZSxDQUFDO1FBQzlCLENBQUM7SUFDSCxDQUFDO0lBRUMsT0FBTztJQUNULFNBQVMsQ0FBQyxTQUF3QixFQUFFO1FBQ2xDLElBQUksQ0FBQyxNQUFNLEdBQUc7WUFDWixLQUFLLEVBQUUsU0FBUztZQUNoQixHQUFHLE1BQU07U0FDVixDQUFDO0lBQ0osQ0FBQztDQUNGIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHR5cGUgeyBNZXJtYWlkQ29uZmlnIH0gZnJvbSAnLi9tZENhcmQudHlwZXMnO1xuXG5pbnRlcmZhY2UgTWVybWFpZFZpZXdTdGF0ZSB7XG4gIHNjYWxlOiBudW1iZXI7XG4gIG9mZnNldFg6IG51bWJlcjtcbiAgb2Zmc2V0WTogbnVtYmVyO1xuICBkcmFnZ2luZzogYm9vbGVhbjtcbiAgZHJhZ1N0YXJ0OiB7IHg6IG51bWJlcjsgeTogbnVtYmVyIH07XG4gIGxhc3RPZmZzZXQ6IHsgeDogbnVtYmVyOyB5OiBudW1iZXIgfTtcbn1cblxuZXhwb3J0IGNsYXNzIE1lcm1haWRTZXJ2aWNlIHtcbiAgcHJpdmF0ZSBtZXJtYWlkSW5zdGFuY2U6IGFueSA9IG51bGw7XG4gIHByaXZhdGUgaXNMb2FkaW5nID0gZmFsc2U7XG4gIHByaXZhdGUgbGFzdFZhbGlkUmVzdWx0OiBzdHJpbmcgPSAnJztcbiAgcHJpdmF0ZSB2aWV3U3RhdGVNYXAgPSBuZXcgV2Vha01hcDxIVE1MRWxlbWVudCwgTWVybWFpZFZpZXdTdGF0ZT4oKTtcbiAgcHJpdmF0ZSBjb250YWluZXJIZWlnaHQgPSA0MDA7XG5cbiAgY29uc3RydWN0b3IocHJpdmF0ZSBjb25maWc6IE1lcm1haWRDb25maWcgPSB7fSkge31cblxuICBwcml2YXRlIGFzeW5jIGxvYWRNZXJtYWlkKCkge1xuICAgIGlmICh0aGlzLm1lcm1haWRJbnN0YW5jZSkge1xuICAgICAgcmV0dXJuIHRoaXMubWVybWFpZEluc3RhbmNlO1xuICAgIH1cblxuICAgIGlmICh0aGlzLmlzTG9hZGluZykge1xuICAgICAgcmV0dXJuIG5ldyBQcm9taXNlKChyZXNvbHZlKSA9PiB7XG4gICAgICAgIGNvbnN0IGNoZWNrSW5zdGFuY2UgPSAoKSA9PiB7XG4gICAgICAgICAgaWYgKHRoaXMubWVybWFpZEluc3RhbmNlKSB7XG4gICAgICAgICAgICByZXNvbHZlKHRoaXMubWVybWFpZEluc3RhbmNlKTtcbiAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgc2V0VGltZW91dChjaGVja0luc3RhbmNlLCA1MCk7XG4gICAgICAgICAgfVxuICAgICAgICB9O1xuICAgICAgICBjaGVja0luc3RhbmNlKCk7XG4gICAgICB9KTtcbiAgICB9XG5cbiAgICB0aGlzLmlzTG9hZGluZyA9IHRydWU7XG4gICAgdHJ5IHtcbiAgICAgIGNvbnN0IHsgZGVmYXVsdDogbWVybWFpZCB9ID0gYXdhaXQgaW1wb3J0KCdtZXJtYWlkJykgYXMgYW55O1xuICAgICAgbWVybWFpZC5pbml0aWFsaXplKHtcbiAgICAgICAgdGhlbWU6IHRoaXMuY29uZmlnLnRoZW1lIHx8ICdkZWZhdWx0JyxcbiAgICAgICAgc3RhcnRPbkxvYWQ6IGZhbHNlLFxuICAgICAgICBzdXBwcmVzc0Vycm9yUmVuZGVyaW5nOiB0cnVlLFxuICAgICAgICAuLi50aGlzLmNvbmZpZ1xuICAgICAgfSk7XG4gICAgICB0aGlzLm1lcm1haWRJbnN0YW5jZSA9IG1lcm1haWQ7XG4gICAgICByZXR1cm4gbWVybWFpZDtcbiAgICB9IGNhdGNoIChlcnJvcikge1xuICAgICAgY29uc29sZS5lcnJvcignRmFpbGVkIHRvIGxvYWQgbWVybWFpZDonLCBlcnJvcik7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoJ0ZhaWxlZCB0byBsb2FkIG1lcm1haWQgbGlicmFyeScpO1xuICAgIH0gZmluYWxseSB7XG4gICAgICB0aGlzLmlzTG9hZGluZyA9IGZhbHNlO1xuICAgIH1cbiAgfVxuXG4gIGFzeW5jIHJlbmRlclRvQ29udGFpbmVyKGNvbnRhaW5lcjogSFRNTEVsZW1lbnQsIGNvZGU6IHN0cmluZywgdGhlbWU6ICdsaWdodCcgfCAnZGFyaycgPSAnbGlnaHQnKSB7XG4gICAgY29uc3Qgc3ZnU3RyID0gYXdhaXQgdGhpcy5yZW5kZXJNZXJtYWlkKGNvZGUsIHRoZW1lKTtcbiAgICBjb250YWluZXIuaW5uZXJIVE1MID0gc3ZnU3RyO1xuICAgIGNvbnN0IHN2ZyA9IGNvbnRhaW5lci5xdWVyeVNlbGVjdG9yKCdzdmcnKTtcbiAgICBpZiAoc3ZnKSB7XG4gICAgICB0aGlzLmluaXRWaWV3U3RhdGUoY29udGFpbmVyLCBzdmcpO1xuICAgICAgdGhpcy5hcHBseVRyYW5zZm9ybShjb250YWluZXIsIHN2Zyk7XG4gICAgICBzdmcuYWRkRXZlbnRMaXN0ZW5lcignbW91c2Vkb3duJywgKGUpID0+IHRoaXMub25TdmdNb3VzZURvd24oZSwgY29udGFpbmVyLCBzdmcpKTtcbiAgICB9XG4gIH1cblxuICBwcml2YXRlIGluaXRWaWV3U3RhdGUoY29udGFpbmVyOiBIVE1MRWxlbWVudCwgc3ZnOiBTVkdTVkdFbGVtZW50KSB7XG4gICAgLy8g6I635Y+Wc3Zn55qEdmlld0JveOaIluWuvemrmFxuICAgIGxldCB2YiA9IHN2Zy5nZXRBdHRyaWJ1dGUoJ3ZpZXdCb3gnKTtcbiAgICBsZXQgc3ZnVyA9IDAsIHN2Z0ggPSAwO1xuICAgIGlmICh2Yikge1xuICAgICAgY29uc3QgYXJyID0gdmIuc3BsaXQoL1xccysvKTtcbiAgICAgIHN2Z1cgPSBwYXJzZUZsb2F0KGFyclsyXSk7XG4gICAgICBzdmdIID0gcGFyc2VGbG9hdChhcnJbM10pO1xuICAgIH0gZWxzZSB7XG4gICAgICBzdmdXID0gc3ZnLndpZHRoLmJhc2VWYWwudmFsdWUgfHwgc3ZnLmdldEJvdW5kaW5nQ2xpZW50UmVjdCgpLndpZHRoO1xuICAgICAgc3ZnSCA9IHN2Zy5oZWlnaHQuYmFzZVZhbC52YWx1ZSB8fCBzdmcuZ2V0Qm91bmRpbmdDbGllbnRSZWN0KCkuaGVpZ2h0O1xuICAgIH1cbiAgICBjb25zdCBjb250VyA9IGNvbnRhaW5lci5jbGllbnRXaWR0aCB8fCAwO1xuICAgIGNvbnN0IGNvbnRIID0gdGhpcy5jb250YWluZXJIZWlnaHQ7XG4gICAgbGV0IHNjYWxlID0gMTtcbiAgICBpZiAoc3ZnVyAmJiBzdmdIICYmIGNvbnRXICYmIGNvbnRIKSB7XG4gICAgICBzY2FsZSA9IE1hdGgubWluKGNvbnRXIC8gc3ZnVywgY29udEggLyBzdmdILCAxKTtcbiAgICB9XG4gICAgdGhpcy52aWV3U3RhdGVNYXAuc2V0KGNvbnRhaW5lciwge1xuICAgICAgc2NhbGUsXG4gICAgICBvZmZzZXRYOiAwLFxuICAgICAgb2Zmc2V0WTogMCxcbiAgICAgIGRyYWdnaW5nOiBmYWxzZSxcbiAgICAgIGRyYWdTdGFydDogeyB4OiAwLCB5OiAwIH0sXG4gICAgICBsYXN0T2Zmc2V0OiB7IHg6IDAsIHk6IDAgfSxcbiAgICB9KTtcbiAgfVxuXG4gIHByaXZhdGUgYXBwbHlUcmFuc2Zvcm0oY29udGFpbmVyOiBIVE1MRWxlbWVudCwgc3ZnOiBTVkdTVkdFbGVtZW50KSB7XG4gICAgY29uc3Qgc3RhdGUgPSB0aGlzLnZpZXdTdGF0ZU1hcC5nZXQoY29udGFpbmVyKTtcbiAgICBpZiAoIXN0YXRlKSByZXR1cm47XG4gICAgc3ZnLnN0eWxlLnBvc2l0aW9uID0gJ2Fic29sdXRlJztcbiAgICBzdmcuc3R5bGUubGVmdCA9ICc1MCUnO1xuICAgIHN2Zy5zdHlsZS50b3AgPSAnNTAlJztcbiAgICBzdmcuc3R5bGUudHJhbnNmb3JtID0gYHRyYW5zbGF0ZSgtNTAlLCAtNTAlKSB0cmFuc2xhdGUoJHtzdGF0ZS5vZmZzZXRYfXB4LCAke3N0YXRlLm9mZnNldFl9cHgpIHNjYWxlKCR7c3RhdGUuc2NhbGV9KWA7XG4gICAgc3ZnLnN0eWxlLnRyYW5zZm9ybU9yaWdpbiA9ICdjZW50ZXIgY2VudGVyJztcbiAgICBzdmcuc3R5bGUuY3Vyc29yID0gc3RhdGUuZHJhZ2dpbmcgPyAnZ3JhYmJpbmcnIDogJ2dyYWInO1xuICB9XG5cbiAgem9vbUluKGNvbnRhaW5lcjogSFRNTEVsZW1lbnQpIHtcbiAgICBjb25zdCBzdmcgPSBjb250YWluZXIucXVlcnlTZWxlY3Rvcignc3ZnJyk7XG4gICAgY29uc3Qgc3RhdGUgPSB0aGlzLnZpZXdTdGF0ZU1hcC5nZXQoY29udGFpbmVyKTtcbiAgICBpZiAoc3ZnICYmIHN0YXRlKSB7XG4gICAgICBzdGF0ZS5zY2FsZSA9IE1hdGgubWluKHN0YXRlLnNjYWxlICsgMC4yLCAzKTtcbiAgICAgIHRoaXMuYXBwbHlUcmFuc2Zvcm0oY29udGFpbmVyLCBzdmcpO1xuICAgIH1cbiAgfVxuXG4gIHpvb21PdXQoY29udGFpbmVyOiBIVE1MRWxlbWVudCkge1xuICAgIGNvbnN0IHN2ZyA9IGNvbnRhaW5lci5xdWVyeVNlbGVjdG9yKCdzdmcnKTtcbiAgICBjb25zdCBzdGF0ZSA9IHRoaXMudmlld1N0YXRlTWFwLmdldChjb250YWluZXIpO1xuICAgIGlmIChzdmcgJiYgc3RhdGUpIHtcbiAgICAgIHN0YXRlLnNjYWxlID0gTWF0aC5tYXgoc3RhdGUuc2NhbGUgLSAwLjIsIDAuMik7XG4gICAgICB0aGlzLmFwcGx5VHJhbnNmb3JtKGNvbnRhaW5lciwgc3ZnKTtcbiAgICB9XG4gIH1cblxuICByZXNldChjb250YWluZXI6IEhUTUxFbGVtZW50KSB7XG4gICAgY29uc3Qgc3ZnID0gY29udGFpbmVyLnF1ZXJ5U2VsZWN0b3IoJ3N2ZycpO1xuICAgIGlmIChzdmcpIHtcbiAgICAgIHRoaXMuaW5pdFZpZXdTdGF0ZShjb250YWluZXIsIHN2Zyk7XG4gICAgICB0aGlzLmFwcGx5VHJhbnNmb3JtKGNvbnRhaW5lciwgc3ZnKTtcbiAgICB9XG4gIH1cblxuICBhc3luYyBkb3dubG9hZChjb250YWluZXI6IEhUTUxFbGVtZW50LCBmaWxlbmFtZTogc3RyaW5nID0gJ2RpYWdyYW0ucG5nJyk6IFByb21pc2U8dm9pZD4ge1xuICAgIGNvbnN0IHN2ZyA9IGNvbnRhaW5lci5xdWVyeVNlbGVjdG9yKCdzdmcnKTtcbiAgICBpZiAoIXN2ZykgcmV0dXJuO1xuXG4gICAgdHJ5IHtcbiAgICAgIGNvbnN0IGNsb25lZFN2ZyA9IHN2Zy5jbG9uZU5vZGUodHJ1ZSkgYXMgU1ZHU1ZHRWxlbWVudDtcblxuICAgICAgY29uc3Qgc3ZnRGF0YSA9IG5ldyBYTUxTZXJpYWxpemVyKCkuc2VyaWFsaXplVG9TdHJpbmcoY2xvbmVkU3ZnKTtcbiAgICAgIFxuICAgICAgY29uc3Qgc3ZnVXJsID0gYGRhdGE6aW1hZ2Uvc3ZnK3htbDtjaGFyc2V0PXV0Zi04LCR7ZW5jb2RlVVJJQ29tcG9uZW50KHN2Z0RhdGEpfWA7XG5cbiAgICAgIGNvbnN0IGltZyA9IG5ldyBJbWFnZSgpO1xuICAgICAgYXdhaXQgbmV3IFByb21pc2U8dm9pZD4oKHJlc29sdmUsIHJlamVjdCkgPT4ge1xuICAgICAgICBpbWcub25sb2FkID0gKCkgPT4gcmVzb2x2ZSgpO1xuICAgICAgICBpbWcub25lcnJvciA9IChlKSA9PiByZWplY3QobmV3IEVycm9yKCdJbWFnZSBsb2FkaW5nIGZhaWxlZCcpKTtcbiAgICAgICAgaW1nLnNyYyA9IHN2Z1VybDtcbiAgICAgIH0pO1xuXG4gICAgICBjb25zdCBjYW52YXMgPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KCdjYW52YXMnKTtcbiAgICAgIGNvbnN0IGN0eCA9IGNhbnZhcy5nZXRDb250ZXh0KCcyZCcpO1xuICAgICAgaWYgKCFjdHgpIHRocm93IG5ldyBFcnJvcignQ2FudmFzIGNvbnRleHQgbm90IGF2YWlsYWJsZScpO1xuXG4gICAgICBjYW52YXMud2lkdGggPSBpbWcud2lkdGggKiAyO1xuICAgICAgY2FudmFzLmhlaWdodCA9IGltZy5oZWlnaHQgKiAyO1xuICAgICAgXG4gICAgICBjdHguZmlsbFN0eWxlID0gJ3doaXRlJztcbiAgICAgIGN0eC5maWxsUmVjdCgwLCAwLCBjYW52YXMud2lkdGgsIGNhbnZhcy5oZWlnaHQpO1xuICAgICAgXG4gICAgICBjdHguZHJhd0ltYWdlKGltZywgMCwgMCk7XG5cbiAgICAgIGNhbnZhcy50b0Jsb2IoKGJsb2IpID0+IHtcbiAgICAgICAgaWYgKCFibG9iKSB7XG4gICAgICAgICAgY29uc29sZS5lcnJvcignRmFpbGVkIHRvIGNyZWF0ZSBibG9iIGZyb20gY2FudmFzJyk7XG4gICAgICAgICAgcmV0dXJuO1xuICAgICAgICB9XG4gICAgICAgIFxuICAgICAgICBjb25zdCB1cmwgPSBVUkwuY3JlYXRlT2JqZWN0VVJMKGJsb2IpO1xuICAgICAgICBjb25zdCBhID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgnYScpO1xuICAgICAgICBhLmhyZWYgPSB1cmw7XG4gICAgICAgIGEuZG93bmxvYWQgPSBmaWxlbmFtZTtcbiAgICAgICAgZG9jdW1lbnQuYm9keS5hcHBlbmRDaGlsZChhKTtcbiAgICAgICAgYS5jbGljaygpO1xuICAgICAgICBcbiAgICAgICAgc2V0VGltZW91dCgoKSA9PiB7XG4gICAgICAgICAgZG9jdW1lbnQuYm9keS5yZW1vdmVDaGlsZChhKTtcbiAgICAgICAgICBVUkwucmV2b2tlT2JqZWN0VVJMKHVybCk7XG4gICAgICAgIH0sIDEwMCk7XG4gICAgICB9LCAnaW1hZ2UvcG5nJyk7XG4gICAgfSBjYXRjaCAoZXJyb3IpIHtcbiAgICAgIGNvbnNvbGUuZXJyb3IoJ0ZhaWxlZCB0byBkb3dubG9hZCBkaWFncmFtOicsIGVycm9yKTtcbiAgICB9XG4gIH1cblxuICBwcml2YXRlIG9uU3ZnTW91c2VEb3duKGU6IE1vdXNlRXZlbnQsIGNvbnRhaW5lcjogSFRNTEVsZW1lbnQsIHN2ZzogU1ZHU1ZHRWxlbWVudCkge1xuICAgIGNvbnN0IHN0YXRlID0gdGhpcy52aWV3U3RhdGVNYXAuZ2V0KGNvbnRhaW5lcik7XG4gICAgaWYgKCFzdGF0ZSkgcmV0dXJuO1xuICAgIHN0YXRlLmRyYWdnaW5nID0gdHJ1ZTtcbiAgICBzdGF0ZS5kcmFnU3RhcnQgPSB7IHg6IGUuY2xpZW50WCwgeTogZS5jbGllbnRZIH07XG4gICAgc3RhdGUubGFzdE9mZnNldCA9IHsgeDogc3RhdGUub2Zmc2V0WCwgeTogc3RhdGUub2Zmc2V0WSB9O1xuICAgIGNvbnN0IG1vdmUgPSAoZXY6IE1vdXNlRXZlbnQpID0+IHRoaXMub25TdmdNb3VzZU1vdmUoZXYsIGNvbnRhaW5lciwgc3ZnKTtcbiAgICBjb25zdCB1cCA9ICgpID0+IHRoaXMub25TdmdNb3VzZVVwKGNvbnRhaW5lciwgc3ZnLCBtb3ZlLCB1cCk7XG4gICAgZG9jdW1lbnQuYWRkRXZlbnRMaXN0ZW5lcignbW91c2Vtb3ZlJywgbW92ZSk7XG4gICAgZG9jdW1lbnQuYWRkRXZlbnRMaXN0ZW5lcignbW91c2V1cCcsIHVwKTtcbiAgICB0aGlzLmFwcGx5VHJhbnNmb3JtKGNvbnRhaW5lciwgc3ZnKTtcbiAgfVxuICBwcml2YXRlIG9uU3ZnTW91c2VNb3ZlKGU6IE1vdXNlRXZlbnQsIGNvbnRhaW5lcjogSFRNTEVsZW1lbnQsIHN2ZzogU1ZHU1ZHRWxlbWVudCkge1xuICAgIGNvbnN0IHN0YXRlID0gdGhpcy52aWV3U3RhdGVNYXAuZ2V0KGNvbnRhaW5lcik7XG4gICAgaWYgKCFzdGF0ZSB8fCAhc3RhdGUuZHJhZ2dpbmcpIHJldHVybjtcbiAgICBzdGF0ZS5vZmZzZXRYID0gc3RhdGUubGFzdE9mZnNldC54ICsgKGUuY2xpZW50WCAtIHN0YXRlLmRyYWdTdGFydC54KTtcbiAgICBzdGF0ZS5vZmZzZXRZID0gc3RhdGUubGFzdE9mZnNldC55ICsgKGUuY2xpZW50WSAtIHN0YXRlLmRyYWdTdGFydC55KTtcbiAgICB0aGlzLmFwcGx5VHJhbnNmb3JtKGNvbnRhaW5lciwgc3ZnKTtcbiAgfVxuICBwcml2YXRlIG9uU3ZnTW91c2VVcChjb250YWluZXI6IEhUTUxFbGVtZW50LCBzdmc6IFNWR1NWR0VsZW1lbnQsIG1vdmU6IGFueSwgdXA6IGFueSkge1xuICAgIGNvbnN0IHN0YXRlID0gdGhpcy52aWV3U3RhdGVNYXAuZ2V0KGNvbnRhaW5lcik7XG4gICAgaWYgKCFzdGF0ZSkgcmV0dXJuO1xuICAgIHN0YXRlLmRyYWdnaW5nID0gZmFsc2U7XG4gICAgZG9jdW1lbnQucmVtb3ZlRXZlbnRMaXN0ZW5lcignbW91c2Vtb3ZlJywgbW92ZSk7XG4gICAgZG9jdW1lbnQucmVtb3ZlRXZlbnRMaXN0ZW5lcignbW91c2V1cCcsIHVwKTtcbiAgICB0aGlzLmFwcGx5VHJhbnNmb3JtKGNvbnRhaW5lciwgc3ZnKTtcbiAgfVxuXG4gIGFzeW5jIHJlbmRlck1lcm1haWQoY29kZTogc3RyaW5nLCB0aGVtZTogJ2xpZ2h0JyB8ICdkYXJrJyA9ICdsaWdodCcpOiBQcm9taXNlPHN0cmluZz4ge1xuICAgIHRyeSB7XG4gICAgICBjb25zdCBtZXJtYWlkID0gYXdhaXQgdGhpcy5sb2FkTWVybWFpZCgpO1xuICAgICAgaWYgKHRoaXMuY29uZmlnLnRoZW1lICE9PSB0aGVtZSkge1xuICAgICAgICB0aGlzLmNvbmZpZy50aGVtZSA9IHRoZW1lO1xuICAgICAgICAgIG1lcm1haWQuaW5pdGlhbGl6ZSh7XG4gICAgICAgICAgc3RhcnRPbkxvYWQ6IGZhbHNlLFxuICAgICAgICAgIHN1cHByZXNzRXJyb3JSZW5kZXJpbmc6IHRydWUsXG4gICAgICAgICAgdGhlbWU6IHRoZW1lID09PSAnZGFyaycgPyAnZGFyaycgOiAnZGVmYXVsdCcsXG4gICAgICAgICAgLi4udGhpcy5jb25maWdcbiAgICAgICAgfSk7XG4gICAgICB9XG4gICAgICBjb25zdCBpZCA9IGBtY19tZXJtYWlkXyR7RGF0ZS5ub3coKX1fJHtNYXRoLnJhbmRvbSgpLnRvU3RyaW5nKDM2KS5zdWJzdHIoMiwgOSl9YDtcbiAgICAgIGNvbnN0IHsgc3ZnIH0gPSBhd2FpdCBtZXJtYWlkLnJlbmRlcihpZCwgY29kZSk7XG4gICAgICB0aGlzLmxhc3RWYWxpZFJlc3VsdCA9IHN2ZztcbiAgICAgIHJldHVybiBzdmc7XG4gICAgfSBjYXRjaCAoZXJyb3IpIHtcbiAgICAgIHJldHVybiB0aGlzLmxhc3RWYWxpZFJlc3VsdDtcbiAgICB9XG4gIH1cblxuICAgIC8vIOiuvue9rumFjee9rlxuICBzZXRDb25maWcoY29uZmlnOiBNZXJtYWlkQ29uZmlnID0ge30pOiB2b2lkIHtcbiAgICB0aGlzLmNvbmZpZyA9IHtcbiAgICAgIHRoZW1lOiAnZGVmYXVsdCcsXG4gICAgICAuLi5jb25maWdcbiAgICB9O1xuICB9XG59XG4iXX0=
|
|
@@ -1,6 +0,0 @@
|
|
|
1
|
-
export const defaultTypingConfig = {
|
|
2
|
-
step: 2,
|
|
3
|
-
interval: 50,
|
|
4
|
-
style: 'normal',
|
|
5
|
-
};
|
|
6
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWRDYXJkLnR5cGVzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY29tcG9uZW50cy1uZy9zcmMvY29tcG9uZW50cy1jb21tb24vTWFya2Rvd25DYXJkL2NvbW1vbi9tZENhcmQudHlwZXMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBNEJBLE1BQU0sQ0FBQyxNQUFNLG1CQUFtQixHQUFHO0lBQ2pDLElBQUksRUFBRSxDQUFDO0lBQ1AsUUFBUSxFQUFFLEVBQUU7SUFDWixLQUFLLEVBQUUsUUFBdUI7Q0FDL0IsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB0eXBlIHsgT3B0aW9ucywgUGx1Z2luU2ltcGxlLCBQbHVnaW5XaXRoT3B0aW9ucywgUGx1Z2luV2l0aFBhcmFtcyB9IGZyb20gJ21hcmtkb3duLWl0JztcbmltcG9ydCB0eXBlIHsgVG9rZW4gfSBmcm9tICdtYXJrZG93bi1pdCc7XG5leHBvcnQgaW50ZXJmYWNlIE1lcm1haWRDb25maWcge1xuICB0aGVtZT86IHN0cmluZztcbn1cblxuZXhwb3J0IGludGVyZmFjZSBDdXN0b21Yc3NSdWxlIHtcbiAga2V5OiBzdHJpbmc7XG4gIHZhbHVlOiBzdHJpbmdbXSB8IG51bGw7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgQ29kQmxvY2tEYXRhIHtcbiAgY29kZTogc3RyaW5nO1xuICBsYW5ndWFnZTogc3RyaW5nO1xufVxuXG5leHBvcnQgdHlwZSBDb2RlQmxvY2tTbG90ID0ge1xuICBhY3Rpb25zPzogKCkgPT4gdm9pZDtcbiAgaGVhZGVyPzogKCkgPT4gdm9pZDtcbiAgY29udGVudD86ICgpID0+IHZvaWQ7XG59O1xuXG5leHBvcnQgdHlwZSBUaGVtZSA9ICdsaWdodCcgfCAnZGFyayc7XG5cbmV4cG9ydCB0eXBlIFR5cGluZ1N0eWxlID0gJ25vcm1hbCcgfCAnY3Vyc29yJyB8ICdjb2xvcicgfCAnZ3JhZGllbnQnO1xuXG5leHBvcnQgdHlwZSBJbnRlcnZhbFR5cGUgPSBudW1iZXIgfCBbbnVtYmVyLCBudW1iZXJdO1xuXG5leHBvcnQgY29uc3QgZGVmYXVsdFR5cGluZ0NvbmZpZyA9IHtcbiAgc3RlcDogMixcbiAgaW50ZXJ2YWw6IDUwLFxuICBzdHlsZTogJ25vcm1hbCcgYXMgVHlwaW5nU3R5bGUsXG59O1xuXG5leHBvcnQgaW50ZXJmYWNlIE1kUGx1Z2luIHtcbiAgcGx1Z2luOiBQbHVnaW5TaW1wbGUgfCBQbHVnaW5XaXRoT3B0aW9ucyB8IFBsdWdpbldpdGhQYXJhbXM7XG4gIG9wdHM/OiB1bmtub3duO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIE1hcmtkb3duQ2FyZFByb3BzIHtcbiAgY29udGVudD86IHN0cmluZztcbiAgdHlwaW5nPzogYm9vbGVhbjtcbiAgZW5hYmxlVGhpbms/OiBib29sZWFuO1xuICB0eXBpbmdPcHRpb25zPzoge1xuICAgIHN0ZXA/OiBudW1iZXI7XG4gICAgaW50ZXJ2YWw/OiBudW1iZXIgfCBbbnVtYmVyLCBudW1iZXJdO1xuICAgIHN0eWxlPzogVHlwaW5nU3R5bGU7XG4gIH07XG4gIHRoaW5rT3B0aW9ucz86IHtcbiAgICBjdXN0b21DbGFzcz86IHN0cmluZztcbiAgfTtcbiAgbWRPcHRpb25zPzogT3B0aW9ucztcbiAgbWRQbHVnaW5zPzogQXJyYXk8TWRQbHVnaW4+O1xuICBjdXN0b21Yc3NSdWxlcz86IEFycmF5PEN1c3RvbVhzc1J1bGU+O1xuICB0aGVtZT86IFRoZW1lO1xuICBlbmFibGVNZXJtYWlkPzogYm9vbGVhbjtcbiAgbWVybWFpZENvbmZpZz86IE1lcm1haWRDb25maWc7XG59XG5cbi8vIOWumuS5iSBBU1Qg6IqC54K55o6l5Y+jXG5leHBvcnQgaW50ZXJmYWNlIEFTVE5vZGUge1xuICBub2RlVHlwZTogc3RyaW5nO1xuICBvcGVuTm9kZTogVG9rZW4gfCBudWxsO1xuICBjbG9zZU5vZGU6IFRva2VuIHwgbnVsbDtcbiAgY2hpbGRyZW46IChBU1ROb2RlIHwgVG9rZW4pW107XG4gIHZOb2RlS2V5OiBzdHJpbmc7XG59Il19
|
|
@@ -1,194 +0,0 @@
|
|
|
1
|
-
// 判断是否自闭合标签
|
|
2
|
-
export const isSelfClosingTag = (token) => {
|
|
3
|
-
// 判断token.content里面是否包含完整的HTML结构(所有开始标签都有对应的结束标签)
|
|
4
|
-
const content = token.content || '';
|
|
5
|
-
// 检查是否是自闭合标签(如 <img />, <br /> 等)
|
|
6
|
-
if (content.match(/<(\w+)[^>]*\/>/)) {
|
|
7
|
-
return true;
|
|
8
|
-
}
|
|
9
|
-
// 检查是否包含完整的HTML结构
|
|
10
|
-
const tagStack = [];
|
|
11
|
-
const openTagRegex = /<(\w+)[^>]*>/g;
|
|
12
|
-
const closeTagRegex = /<\/(\w+)>/g;
|
|
13
|
-
let openMatch;
|
|
14
|
-
let closeMatch;
|
|
15
|
-
// 重置正则表达式的lastIndex
|
|
16
|
-
openTagRegex.lastIndex = 0;
|
|
17
|
-
closeTagRegex.lastIndex = 0;
|
|
18
|
-
// 按顺序处理所有标签
|
|
19
|
-
const allMatches = [];
|
|
20
|
-
// 收集所有开始标签
|
|
21
|
-
while ((openMatch = openTagRegex.exec(content)) !== null) {
|
|
22
|
-
allMatches.push({
|
|
23
|
-
type: 'open',
|
|
24
|
-
tagName: openMatch[1],
|
|
25
|
-
index: openMatch.index
|
|
26
|
-
});
|
|
27
|
-
}
|
|
28
|
-
// 收集所有结束标签
|
|
29
|
-
while ((closeMatch = closeTagRegex.exec(content)) !== null) {
|
|
30
|
-
allMatches.push({
|
|
31
|
-
type: 'close',
|
|
32
|
-
tagName: closeMatch[1],
|
|
33
|
-
index: closeMatch.index
|
|
34
|
-
});
|
|
35
|
-
}
|
|
36
|
-
// 按位置排序
|
|
37
|
-
allMatches.sort((a, b) => a.index - b.index);
|
|
38
|
-
// 检查标签是否完全匹配
|
|
39
|
-
for (const match of allMatches) {
|
|
40
|
-
if (match.type === 'open') {
|
|
41
|
-
tagStack.push(match.tagName);
|
|
42
|
-
}
|
|
43
|
-
else {
|
|
44
|
-
if (tagStack.length === 0) {
|
|
45
|
-
return false; // 没有对应的开始标签
|
|
46
|
-
}
|
|
47
|
-
const lastOpenTag = tagStack[tagStack.length - 1];
|
|
48
|
-
if (lastOpenTag !== match.tagName) {
|
|
49
|
-
return false; // 标签不匹配
|
|
50
|
-
}
|
|
51
|
-
tagStack.pop();
|
|
52
|
-
}
|
|
53
|
-
}
|
|
54
|
-
// 只有当所有标签都正确匹配时,才认为是自闭合的
|
|
55
|
-
return tagStack.length === 0;
|
|
56
|
-
};
|
|
57
|
-
// 判断是否是结束标签
|
|
58
|
-
export const isClosingTag = (openToken, closeToken) => {
|
|
59
|
-
const openContent = openToken?.content || '';
|
|
60
|
-
const closeContent = closeToken?.content || '';
|
|
61
|
-
const openTagMatch = openContent.match(/<(\w+)/);
|
|
62
|
-
const closeTagMatch = closeContent.match(/<\/(\w+)/);
|
|
63
|
-
if (openTagMatch && closeTagMatch) {
|
|
64
|
-
return openTagMatch[1] === closeTagMatch[1];
|
|
65
|
-
}
|
|
66
|
-
return false;
|
|
67
|
-
};
|
|
68
|
-
// 创建ast树节点
|
|
69
|
-
export const genTreeNode = (node) => {
|
|
70
|
-
return {
|
|
71
|
-
nodeType: node ? node.type.replace('_open', '') : 'root',
|
|
72
|
-
openNode: node,
|
|
73
|
-
closeNode: null,
|
|
74
|
-
children: [],
|
|
75
|
-
vNodeKey: node?.vNodeKey || ''
|
|
76
|
-
};
|
|
77
|
-
};
|
|
78
|
-
// 匹配成对html token
|
|
79
|
-
export const matchHtmlToken = (token, stack) => {
|
|
80
|
-
// 简单排除单独的闭合标签
|
|
81
|
-
const isCloseTag = token.content.startsWith('</');
|
|
82
|
-
if (!stack.length) {
|
|
83
|
-
token.nesting = isCloseTag ? 0 : 1;
|
|
84
|
-
stack.push(token);
|
|
85
|
-
return;
|
|
86
|
-
}
|
|
87
|
-
// 判断当前token是否是上一个html token的闭合标签
|
|
88
|
-
const prevToken = stack[stack.length - 1];
|
|
89
|
-
const closing = isClosingTag(prevToken, token);
|
|
90
|
-
if (closing) {
|
|
91
|
-
token.nesting = -1;
|
|
92
|
-
stack.pop();
|
|
93
|
-
}
|
|
94
|
-
else {
|
|
95
|
-
if (isCloseTag) {
|
|
96
|
-
token.nesting = 0;
|
|
97
|
-
}
|
|
98
|
-
else {
|
|
99
|
-
token.nesting = 1;
|
|
100
|
-
stack.push(token);
|
|
101
|
-
}
|
|
102
|
-
}
|
|
103
|
-
};
|
|
104
|
-
export const isValidTagName = (tagName) => {
|
|
105
|
-
if (!tagName)
|
|
106
|
-
return false;
|
|
107
|
-
try {
|
|
108
|
-
document.createElement(tagName);
|
|
109
|
-
return true;
|
|
110
|
-
}
|
|
111
|
-
catch (error) {
|
|
112
|
-
return false;
|
|
113
|
-
}
|
|
114
|
-
};
|
|
115
|
-
export const tokensToAst = (tokens) => {
|
|
116
|
-
// 递归处理 inline 类型的 token
|
|
117
|
-
const processInlineToken = (token) => {
|
|
118
|
-
const node = genTreeNode(token);
|
|
119
|
-
// 如果 token 有 children,递归处理它们
|
|
120
|
-
if (token.children && token.children.length > 0) {
|
|
121
|
-
node.children = tokensToAst(token.children);
|
|
122
|
-
}
|
|
123
|
-
return node;
|
|
124
|
-
};
|
|
125
|
-
// 创建根节点
|
|
126
|
-
const rootNode = genTreeNode(null);
|
|
127
|
-
let curr = rootNode;
|
|
128
|
-
const stack = [];
|
|
129
|
-
const htmlInlineTokenStack = [];
|
|
130
|
-
const htmlBlockTokenStack = [];
|
|
131
|
-
// 处理html token nesting值
|
|
132
|
-
tokens.forEach((tok, idx) => {
|
|
133
|
-
tok.vNodeKey = `mc-markdown-content-key-${idx}`;
|
|
134
|
-
tok.tokenIndex = idx;
|
|
135
|
-
if (tok.type.includes('html_')) {
|
|
136
|
-
if (isSelfClosingTag(tok)) {
|
|
137
|
-
tok.nesting = 0;
|
|
138
|
-
return;
|
|
139
|
-
}
|
|
140
|
-
const stack = tok.type === 'html_block'
|
|
141
|
-
? htmlBlockTokenStack
|
|
142
|
-
: htmlInlineTokenStack;
|
|
143
|
-
matchHtmlToken(tok, stack);
|
|
144
|
-
}
|
|
145
|
-
});
|
|
146
|
-
tokens.forEach((tok, idx) => {
|
|
147
|
-
let tmp;
|
|
148
|
-
if (tok.nesting === 1) {
|
|
149
|
-
// 开始标签
|
|
150
|
-
tmp = genTreeNode(tok);
|
|
151
|
-
curr.children.push(tmp);
|
|
152
|
-
stack.push(curr);
|
|
153
|
-
curr = tmp;
|
|
154
|
-
}
|
|
155
|
-
else if (tok.nesting === -1) {
|
|
156
|
-
// 结束标签
|
|
157
|
-
curr.closeNode = tok;
|
|
158
|
-
if (!stack.length) {
|
|
159
|
-
throw new Error('AST stack underflow.');
|
|
160
|
-
}
|
|
161
|
-
tmp = stack.pop();
|
|
162
|
-
curr = tmp;
|
|
163
|
-
}
|
|
164
|
-
else if (tok.nesting === 0) {
|
|
165
|
-
// 自闭合标签或 inline 内容
|
|
166
|
-
if (tok.type === 'inline' && tok.children && tok.children.length > 0) {
|
|
167
|
-
// 对于 inline 类型,递归处理其 children
|
|
168
|
-
const inlineNode = processInlineToken(tok);
|
|
169
|
-
curr.children.push(inlineNode);
|
|
170
|
-
}
|
|
171
|
-
else {
|
|
172
|
-
// 普通 token,直接添加
|
|
173
|
-
curr.children.push(tok);
|
|
174
|
-
}
|
|
175
|
-
}
|
|
176
|
-
else {
|
|
177
|
-
throw new Error(`Invalid nesting level found in token index ${idx}.`);
|
|
178
|
-
}
|
|
179
|
-
});
|
|
180
|
-
if (stack.length !== 0) {
|
|
181
|
-
// throw new Error('Unbalanced block open/close tokens.');
|
|
182
|
-
}
|
|
183
|
-
return rootNode.children;
|
|
184
|
-
};
|
|
185
|
-
// 声明一个utils静态默认导出
|
|
186
|
-
export default {
|
|
187
|
-
isSelfClosingTag,
|
|
188
|
-
isClosingTag,
|
|
189
|
-
tokensToAst,
|
|
190
|
-
genTreeNode,
|
|
191
|
-
matchHtmlToken,
|
|
192
|
-
isValidTagName
|
|
193
|
-
};
|
|
194
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGFyc2VyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY29tcG9uZW50cy1uZy9zcmMvY29tcG9uZW50cy1jb21tb24vTWFya2Rvd25DYXJkL2NvbW1vbi9wYXJzZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBRUEsWUFBWTtBQUNaLE1BQU0sQ0FBQyxNQUFNLGdCQUFnQixHQUFHLENBQUMsS0FBWSxFQUFXLEVBQUU7SUFDdEQsa0RBQWtEO0lBQ2xELE1BQU0sT0FBTyxHQUFHLEtBQUssQ0FBQyxPQUFPLElBQUksRUFBRSxDQUFDO0lBRXBDLGtDQUFrQztJQUNsQyxJQUFJLE9BQU8sQ0FBQyxLQUFLLENBQUMsZ0JBQWdCLENBQUMsRUFBRSxDQUFDO1FBQ2xDLE9BQU8sSUFBSSxDQUFDO0lBQ2hCLENBQUM7SUFFRCxrQkFBa0I7SUFDbEIsTUFBTSxRQUFRLEdBQWEsRUFBRSxDQUFDO0lBQzlCLE1BQU0sWUFBWSxHQUFHLGVBQWUsQ0FBQztJQUNyQyxNQUFNLGFBQWEsR0FBRyxZQUFZLENBQUM7SUFFbkMsSUFBSSxTQUFTLENBQUM7SUFDZCxJQUFJLFVBQVUsQ0FBQztJQUVmLG9CQUFvQjtJQUNwQixZQUFZLENBQUMsU0FBUyxHQUFHLENBQUMsQ0FBQztJQUMzQixhQUFhLENBQUMsU0FBUyxHQUFHLENBQUMsQ0FBQztJQUU1QixZQUFZO0lBQ1osTUFBTSxVQUFVLEdBQXNFLEVBQUUsQ0FBQztJQUV6RixXQUFXO0lBQ1gsT0FBTyxDQUFDLFNBQVMsR0FBRyxZQUFZLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLENBQUM7UUFDdkQsVUFBVSxDQUFDLElBQUksQ0FBQztZQUNaLElBQUksRUFBRSxNQUFNO1lBQ1osT0FBTyxFQUFFLFNBQVMsQ0FBQyxDQUFDLENBQUM7WUFDckIsS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLO1NBQ3pCLENBQUMsQ0FBQztJQUNQLENB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QUNqQyxDQUFDO2lCQUFNLENBQUM7Z0JBQ04sZ0JBQWdCO2dCQUNoQixJQUFJLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsQ0FBQztZQUMxQixDQUFDO1FBQ0gsQ0FBQzthQUFNLENBQUM7WUFDTixNQUFNLElBQUksS0FBSyxDQUFDLDhDQUE4QyxHQUFHLEdBQUcsQ0FBQyxDQUFDO1FBQ3hFLENBQUM7SUFDSCxDQUFDLENBQUMsQ0FBQztJQUVILElBQUksS0FBSyxDQUFDLE1BQU0sS0FBSyxDQUFDLEVBQUUsQ0FBQztRQUN2QiwwREFBMEQ7SUFDNUQsQ0FBQztJQUNELE9BQU8sUUFBUSxDQUFDLFFBQXFCLENBQUM7QUFDeEMsQ0FBQyxDQUFDO0FBRUosa0JBQWtCO0FBQ2xCLGVBQWU7SUFDWCxnQkFBZ0I7SUFDaEIsWUFBWTtJQUNaLFdBQVc7SUFDWCxXQUFXO0lBQ1gsY0FBYztJQUNkLGNBQWM7Q0FDakIsQ0FBQSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB0eXBlIHsgVG9rZW4gfSBmcm9tIFwibWFya2Rvd24taXRcIjtcbmltcG9ydCB0eXBlIHsgQVNUTm9kZSB9IGZyb20gJy4vbWRDYXJkLnR5cGVzJztcbi8vIOWIpOaWreaYr+WQpuiHqumXreWQiOagh+etvlxuZXhwb3J0IGNvbnN0IGlzU2VsZkNsb3NpbmdUYWcgPSAodG9rZW46IFRva2VuKTogYm9vbGVhbiA9PiB7XG4gICAgLy8g5Yik5patdG9rZW4uY29udGVudOmHjOmdouaYr+WQpuWMheWQq+WujOaVtOeahEhUTUznu5PmnoTvvIjmiYDmnInlvIDlp4vmoIfnrb7pg73mnInlr7nlupTnmoTnu5PmnZ/moIfnrb7vvIlcbiAgICBjb25zdCBjb250ZW50ID0gdG9rZW4uY29udGVudCB8fCAnJztcblxuICAgIC8vIOajgOafpeaYr+WQpuaYr+iHqumXreWQiOagh+etvu+8iOWmgiA8aW1nIC8+LCA8YnIgLz4g562J77yJXG4gICAgaWYgKGNvbnRlbnQubWF0Y2goLzwoXFx3KylbXj5dKlxcLz4vKSkge1xuICAgICAgICByZXR1cm4gdHJ1ZTtcbiAgICB9XG5cbiAgICAvLyDmo4Dmn6XmmK/lkKbljIXlkKvlrozmlbTnmoRIVE1M57uT5p6EXG4gICAgY29uc3QgdGFnU3RhY2s6IHN0cmluZ1tdID0gW107XG4gICAgY29uc3Qgb3BlblRhZ1JlZ2V4ID0gLzwoXFx3KylbXj5dKj4vZztcbiAgICBjb25zdCBjbG9zZVRhZ1JlZ2V4ID0gLzxcXC8oXFx3Kyk+L2c7XG5cbiAgICBsZXQgb3Blbk1hdGNoO1xuICAgIGxldCBjbG9zZU1hdGNoO1xuXG4gICAgLy8g6YeN572u5q2j5YiZ6KGo6L6+5byP55qEbGFzdEluZGV4XG4gICAgb3BlblRhZ1JlZ2V4Lmxhc3RJbmRleCA9IDA7XG4gICAgY2xvc2VUYWdSZWdleC5sYXN0SW5kZXggPSAwO1xuXG4gICAgLy8g5oyJ6aG65bqP5aSE55CG5omA5pyJ5qCH562+XG4gICAgY29uc3QgYWxsTWF0Y2hlczogQXJyYXk8eyB0eXBlOiAnb3BlbicgfCAnY2xvc2UnLCB0YWdOYW1lOiBzdHJpbmcsIGluZGV4OiBudW1iZXIgfT4gPSBbXTtcblxuICAgIC8vIOaUtumbhuaJgOacieW8gOWni+agh+etvlxuICAgIHdoaWxlICgob3Blbk1hdGNoID0gb3BlblRhZ1JlZ2V4LmV4ZWMoY29udGVudCkpICE9PSBudWxsKSB7XG4gICAgICAgIGFsbE1hdGNoZXMucHVzaCh7XG4gICAgICAgICAgICB0eXBlOiAnb3BlbicsXG4gICAgICAgICAgICB0YWdOYW1lOiBvcGVuTWF0Y2hbMV0sXG4gICAgICAgICAgICBpbmRleDogb3Blbk1hdGNoLmluZGV4XG4gICAgICAgIH0pO1xuICAgIH1cblxuICAgIC8vIOaUtumbhuaJgOaciee7k+adn+agh+etvlxuICAgIHdoaWxlICgoY2xvc2VNYXRjaCA9IGNsb3NlVGFnUmVnZXguZXhlYyhjb250ZW50KSkgIT09IG51bGwpIHtcbiAgICAgICAgYWxsTWF0Y2hlcy5wdXNoKHtcbiAgICAgICAgICAgIHR5cGU6ICdjbG9zZScsXG4gICAgICAgICAgICB0YWdOYW1lOiBjbG9zZU1hdGNoWzFdLFxuICAgICAgICAgICAgaW5kZXg6IGNsb3NlTWF0Y2guaW5kZXhcbiAgICAgICAgfSk7XG4gICAgfVxuXG4gICAgLy8g5oyJ5L2N572u5o6S5bqPXG4gICAgYWxsTWF0Y2hlcy5zb3J0KChhLCBiKSA9PiBhLmluZGV4IC0gYi5pbmRleCk7XG5cbiAgICAvLyDmo4Dmn6XmoIfnrb7mmK/lkKblrozlhajljLnphY1cbiAgICBmb3IgKGNvbnN0IG1hdGNoIG9mIGFsbE1hdGNoZXMpIHtcbiAgICAgICAgaWYgKG1hdGNoLnR5cGUgPT09ICdvcGVuJykge1xuICAgICAgICAgICAgdGFnU3RhY2sucHVzaChtYXRjaC50YWdOYW1lKTtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIGlmICh0YWdTdGFjay5sZW5ndGggPT09IDApIHtcbiAgICAgICAgICAgICAgICByZXR1cm4gZmFsc2U7IC8vIOayoeacieWvueW6lOeahOW8gOWni+agh+etvlxuICAgICAgICAgICAgfVxuICAgICAgICAgICAgY29uc3QgbGFzdE9wZW5UYWcgPSB0YWdTdGFja1t0YWdTdGFjay5sZW5ndGggLSAxXTtcbiAgICAgICAgICAgIGlmIChsYXN0T3BlblRhZyAhPT0gbWF0Y2gudGFnTmFtZSkge1xuICAgICAgICAgICAgICAgIHJldHVybiBmYWxzZTsgLy8g5qCH562+5LiN5Yy56YWNXG4gICAgICAgICAgICB9XG4gICAgICAgICAgICB0YWdTdGFjay5wb3AoKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC8vIOWPquacieW9k+aJgOacieagh+etvumDveato+ehruWMuemFjeaXtu+8jOaJjeiupOS4uuaYr+iHqumXreWQiOeahFxuICAgIHJldHVybiB0YWdTdGFjay5sZW5ndGggPT09IDA7XG59XG5cbi8vIOWIpOaWreaYr+WQpuaYr+e7k+adn+agh+etvlxuZXhwb3J0IGNvbnN0IGlzQ2xvc2luZ1RhZyA9IChvcGVuVG9rZW46IFRva2VuLCBjbG9zZVRva2VuOiBUb2tlbik6IGJvb2xlYW4gPT4ge1xuICAgIGNvbnN0IG9wZW5Db250ZW50ID0gb3BlblRva2VuPy5jb250ZW50IHx8ICcnO1xuICAgIGNvbnN0IGNsb3NlQ29udGVudCA9IGNsb3NlVG9rZW4/LmNvbnRlbnQgfHwgJyc7XG5cbiAgICBjb25zdCBvcGVuVGFnTWF0Y2ggPSBvcGVuQ29udGVudC5tYXRjaCgvPChcXHcrKS8pO1xuICAgIGNvbnN0IGNsb3NlVGFnTWF0Y2ggPSBjbG9zZUNvbnRlbnQubWF0Y2goLzxcXC8oXFx3KykvKTtcblxuICAgIGlmIChvcGVuVGFnTWF0Y2ggJiYgY2xvc2VUYWdNYXRjaCkge1xuICAgICAgICByZXR1cm4gb3BlblRhZ01hdGNoWzFdID09PSBjbG9zZVRhZ01hdGNoWzFdO1xuICAgIH1cblxuICAgIHJldHVybiBmYWxzZTtcbn1cblxuLy8g5Yib5bu6YXN05qCR6IqC54K5XG5leHBvcnQgY29uc3QgZ2VuVHJlZU5vZGUgPSAobm9kZTogVG9rZW4gfCBudWxsKTogQVNUTm9kZSA9PiB7XG4gICAgcmV0dXJuIHtcbiAgICAgICAgbm9kZVR5cGU6IG5vZGUgPyBub2RlLnR5cGUucmVwbGFjZSgnX29wZW4nLCAnJykgOiAncm9vdCcsXG4gICAgICAgIG9wZW5Ob2RlOiBub2RlLFxuICAgICAgICBjbG9zZU5vZGU6IG51bGwsXG4gICAgICAgIGNoaWxkcmVuOiBbXSxcbiAgICAgICAgdk5vZGVLZXk6IChub2RlIGFzIGFueSk/LnZOb2RlS2V5IHx8ICcnXG4gICAgfTtcbn07XG5cbi8vIOWMuemFjeaIkOWvuWh0bWwgdG9rZW5cbmV4cG9ydCBjb25zdCBtYXRjaEh0bWxUb2tlbiA9ICh0b2tlbjogVG9rZW4sIHN0YWNrOiBUb2tlbltdKSA9PiB7XG4gICAgLy8g566A5Y2V5o6S6Zmk5Y2V54us55qE6Zet5ZCI5qCH562+XG4gICAgY29uc3QgaXNDbG9zZVRhZyA9IHRva2VuLmNvbnRlbnQuc3RhcnRzV2l0aCgnPC8nKTtcbiAgICBpZiAoIXN0YWNrLmxlbmd0aCkge1xuICAgICAgICB0b2tlbi5uZXN0aW5nID0gaXNDbG9zZVRhZyA/IDAgOiAxO1xuICAgICAgICBzdGFjay5wdXNoKHRva2VuKTtcbiAgICAgICAgcmV0dXJuO1xuICAgIH1cbiAgICAvLyDliKTmlq3lvZPliY10b2tlbuaYr+WQpuaYr+S4iuS4gOS4qmh0bWwgdG9rZW7nmoTpl63lkIjmoIfnrb5cbiAgICBjb25zdCBwcmV2VG9rZW4gPSBzdGFja1tzdGFjay5sZW5ndGggLSAxXTtcbiAgICBjb25zdCBjbG9zaW5nID0gaXNDbG9zaW5nVGFnKHByZXZUb2tlbiwgdG9rZW4pO1xuICAgIGlmIChjbG9zaW5nKSB7XG4gICAgICAgIHRva2VuLm5lc3RpbmcgPSAtMTtcbiAgICAgICAgc3RhY2sucG9wKCk7XG4gICAgfSBlbHNlIHtcbiAgICAgICAgaWYgKGlzQ2xvc2VUYWcpIHtcbiAgICAgICAgICAgIHRva2VuLm5lc3RpbmcgPSAwO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgdG9rZW4ubmVzdGluZyA9IDE7XG4gICAgICAgICAgICBzdGFjay5wdXNoKHRva2VuKTtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuZXhwb3J0IGNvbnN0IGlzVmFsaWRUYWdOYW1lID0gKHRhZ05hbWU6IHN0cmluZyB8IHVuZGVmaW5lZCk6IGJvb2xlYW4gPT4ge1xuICAgIGlmICghdGFnTmFtZSkgcmV0dXJuIGZhbHNlXG4gICAgdHJ5IHtcbiAgICAgICAgZG9jdW1lbnQuY3JlYXRlRWxlbWVudCh0YWdOYW1lKVxuICAgICAgICByZXR1cm4gdHJ1ZVxuICAgIH0gY2F0Y2ggKGVycm9yKSB7XG4gICAgICAgIHJldHVybiBmYWxzZVxuICAgIH1cbn1cblxuZXhwb3J0IGNvbnN0IHRva2Vuc1RvQXN0ID0gKHRva2VuczogVG9rZW5bXSkgPT4ge1xuICAgIC8vIOmAkuW9kuWkhOeQhiBpbmxpbmUg57G75Z6L55qEIHRva2VuXG4gICAgY29uc3QgcHJvY2Vzc0lubGluZVRva2VuID0gKHRva2VuOiBUb2tlbik6IEFTVE5vZGUgPT4ge1xuICAgICAgY29uc3Qgbm9kZSA9IGdlblRyZWVOb2RlKHRva2VuKTtcblxuICAgICAgLy8g5aaC5p6cIHRva2VuIOaciSBjaGlsZHJlbu+8jOmAkuW9kuWkhOeQhuWug+S7rFxuICAgICAgaWYgKHRva2VuLmNoaWxkcmVuICYmIHRva2VuLmNoaWxkcmVuLmxlbmd0aCA+IDApIHtcbiAgICAgICAgbm9kZS5jaGlsZHJlbiA9IHRva2Vuc1RvQXN0KHRva2VuLmNoaWxkcmVuKTtcbiAgICAgIH1cblxuICAgICAgcmV0dXJuIG5vZGU7XG4gICAgfTtcblxuICAgIC8vIOWIm+W7uuagueiKgueCuVxuICAgIGNvbnN0IHJvb3ROb2RlID0gZ2VuVHJlZU5vZGUobnVsbCk7XG4gICAgbGV0IGN1cnI6IEFTVE5vZGUgPSByb290Tm9kZTtcbiAgICBjb25zdCBzdGFjazogQVNUTm9kZVtdID0gW107XG4gICAgY29uc3QgaHRtbElubGluZVRva2VuU3RhY2s6IFRva2VuW10gPSBbXTtcbiAgICBjb25zdCBodG1sQmxvY2tUb2tlblN0YWNrOiBUb2tlbltdID0gW107XG4gICAgLy8g5aSE55CGaHRtbCB0b2tlbiBuZXN0aW5n5YC8XG4gICAgdG9rZW5zLmZvckVhY2goKHRvazogVG9rZW4sIGlkeDogbnVtYmVyKSA9PiB7XG4gICAgICAodG9rIGFzIGFueSkudk5vZGVLZXkgPSBgbWMtbWFya2Rvd24tY29udGVudC1rZXktJHtpZHh9YDtcbiAgICAgICh0b2sgYXMgYW55KS50b2tlbkluZGV4ID0gaWR4O1xuXG4gICAgICBpZiAodG9rLnR5cGUuaW5jbHVkZXMoJ2h0bWxfJykpIHtcbiAgICAgICAgaWYgKGlzU2VsZkNsb3NpbmdUYWcodG9rKSkge1xuICAgICAgICAgIHRvay5uZXN0aW5nID0gMDtcbiAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cblxuICAgICAgICBjb25zdCBzdGFjayA9XG4gICAgICAgICAgdG9rLnR5cGUgPT09ICdodG1sX2Jsb2NrJ1xuICAgICAgICAgICAgPyBodG1sQmxvY2tUb2tlblN0YWNrXG4gICAgICAgICAgICA6IGh0bWxJbmxpbmVUb2tlblN0YWNrO1xuXG4gICAgICAgIG1hdGNoSHRtbFRva2VuKHRvaywgc3RhY2spO1xuICAgICAgfVxuICAgIH0pO1xuXG4gICAgdG9rZW5zLmZvckVhY2goKHRvazogVG9rZW4sIGlkeDogbnVtYmVyKSA9PiB7XG4gICAgICBsZXQgdG1wOiBBU1ROb2RlO1xuICAgICAgaWYgKHRvay5uZXN0aW5nID09PSAxKSB7XG4gICAgICAgIC8vIOW8gOWni+agh+etvlxuICAgICAgICB0bXAgPSBnZW5UcmVlTm9kZSh0b2spO1xuICAgICAgICBjdXJyLmNoaWxkcmVuLnB1c2godG1wKTtcbiAgICAgICAgc3RhY2sucHVzaChjdXJyKTtcbiAgICAgICAgY3VyciA9IHRtcDtcbiAgICAgIH0gZWxzZSBpZiAodG9rLm5lc3RpbmcgPT09IC0xKSB7XG4gICAgICAgIC8vIOe7k+adn+agh+etvlxuICAgICAgICBjdXJyLmNsb3NlTm9kZSA9IHRvaztcbiAgICAgICAgaWYgKCFzdGFjay5sZW5ndGgpIHtcbiAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoJ0FTVCBzdGFjayB1bmRlcmZsb3cuJyk7XG4gICAgICAgIH1cbiAgICAgICAgdG1wID0gc3RhY2sucG9wKCkhO1xuICAgICAgICBjdXJyID0gdG1wO1xuICAgICAgfSBlbHNlIGlmICh0b2submVzdGluZyA9PT0gMCkge1xuICAgICAgICAvLyDoh6rpl63lkIjmoIfnrb7miJYgaW5saW5lIOWGheWuuVxuICAgICAgICBpZiAodG9rLnR5cGUgPT09ICdpbmxpbmUnICYmIHRvay5jaGlsZHJlbiAmJiB0b2suY2hpbGRyZW4ubGVuZ3RoID4gMCkge1xuICAgICAgICAgIC8vIOWvueS6jiBpbmxpbmUg57G75Z6L77yM6YCS5b2S5aSE55CG5YW2IGNoaWxkcmVuXG4gICAgICAgICAgY29uc3QgaW5saW5lTm9kZSA9IHByb2Nlc3NJbmxpbmVUb2tlbih0b2spO1xuICAgICAgICAgIGN1cnIuY2hpbGRyZW4ucHVzaChpbmxpbmVOb2RlKTtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAvLyDmma7pgJogdG9rZW7vvIznm7TmjqXmt7vliqBcbiAgICAgICAgICBjdXJyLmNoaWxkcmVuLnB1c2godG9rKTtcbiAgICAgICAgfVxuICAgICAgfSBlbHNlIHtcbiAgICAgICAgdGhyb3cgbmV3IEVycm9yKGBJbnZhbGlkIG5lc3RpbmcgbGV2ZWwgZm91bmQgaW4gdG9rZW4gaW5kZXggJHtpZHh9LmApO1xuICAgICAgfVxuICAgIH0pO1xuXG4gICAgaWYgKHN0YWNrLmxlbmd0aCAhPT0gMCkge1xuICAgICAgLy8gdGhyb3cgbmV3IEVycm9yKCdVbmJhbGFuY2VkIGJsb2NrIG9wZW4vY2xvc2UgdG9rZW5zLicpO1xuICAgIH1cbiAgICByZXR1cm4gcm9vdE5vZGUuY2hpbGRyZW4gYXMgQVNUTm9kZVtdO1xuICB9O1xuXG4vLyDlo7DmmI7kuIDkuKp1dGlsc+mdmeaAgem7mOiupOWvvOWHulxuZXhwb3J0IGRlZmF1bHQge1xuICAgIGlzU2VsZkNsb3NpbmdUYWcsXG4gICAgaXNDbG9zaW5nVGFnLFxuICAgIHRva2Vuc1RvQXN0LFxuICAgIGdlblRyZWVOb2RlLFxuICAgIG1hdGNoSHRtbFRva2VuLFxuICAgIGlzVmFsaWRUYWdOYW1lXG59Il19
|
|
@@ -1,84 +0,0 @@
|
|
|
1
|
-
import BaseFoundation from '../Base/foundation';
|
|
2
|
-
import { defaultTypingConfig } from './common/mdCard.types';
|
|
3
|
-
export class MarkdownCardFoundation extends BaseFoundation {
|
|
4
|
-
constructor(adapter) {
|
|
5
|
-
super({ ...adapter });
|
|
6
|
-
this.isToken = (node) => {
|
|
7
|
-
return 'type' in node && 'content' in node;
|
|
8
|
-
};
|
|
9
|
-
this.typewriterEnd = () => {
|
|
10
|
-
this.setState({ isTyping: false });
|
|
11
|
-
this._adapter.typingEnd?.();
|
|
12
|
-
};
|
|
13
|
-
this.getThinkContent = (content, thinkOptions) => {
|
|
14
|
-
const thinkClass = thinkOptions?.customClass || 'mc-think-block';
|
|
15
|
-
return (content
|
|
16
|
-
?.replace('<think>', `<div class="${thinkClass}">`)
|
|
17
|
-
?.replace('</think>', '</div>') || '');
|
|
18
|
-
};
|
|
19
|
-
this.parseTypingContent = (content) => {
|
|
20
|
-
const { typingOptions } = this.getProps();
|
|
21
|
-
const { typingIndex } = this.getStates();
|
|
22
|
-
content = content.slice(0, typingIndex) || '';
|
|
23
|
-
const options = { ...defaultTypingConfig, ...typingOptions };
|
|
24
|
-
if (options.style === 'cursor') {
|
|
25
|
-
content += `<span class="mc-typewriter mc-typewriter-cursor">|</span>`;
|
|
26
|
-
}
|
|
27
|
-
else if (options.style === 'color' || options.style === 'gradient') {
|
|
28
|
-
content =
|
|
29
|
-
content.slice(0, -5) +
|
|
30
|
-
`<span class="mc-typewriter mc-typewriter-${options.style}">${content.slice(-5)}</span>`;
|
|
31
|
-
}
|
|
32
|
-
return content || '';
|
|
33
|
-
};
|
|
34
|
-
this.parseContent = () => {
|
|
35
|
-
const { content, thinkOptions, enableThink } = this.getProps();
|
|
36
|
-
const { typing, isTyping } = this.getStates();
|
|
37
|
-
let parseContent = content || '';
|
|
38
|
-
if (typing && isTyping) {
|
|
39
|
-
parseContent = this.parseTypingContent(content);
|
|
40
|
-
}
|
|
41
|
-
if (enableThink) {
|
|
42
|
-
parseContent = this.getThinkContent(content, thinkOptions);
|
|
43
|
-
}
|
|
44
|
-
parseContent = this._adapter.parseContent(parseContent);
|
|
45
|
-
};
|
|
46
|
-
this.typewriterStart = () => {
|
|
47
|
-
const { typingOptions } = this.getProps();
|
|
48
|
-
const { timer } = this.getStates();
|
|
49
|
-
if (timer) {
|
|
50
|
-
clearTimeout(timer);
|
|
51
|
-
}
|
|
52
|
-
this.setState({ isTyping: true });
|
|
53
|
-
this._adapter.typingStart?.();
|
|
54
|
-
const options = { ...defaultTypingConfig, ...typingOptions };
|
|
55
|
-
const typingStep = () => {
|
|
56
|
-
const { typingIndex, content } = this.getStates();
|
|
57
|
-
let step = options.step || 2;
|
|
58
|
-
if (Array.isArray(options.step)) {
|
|
59
|
-
step =
|
|
60
|
-
options.step[0] +
|
|
61
|
-
Math.floor(Math.random() * (options.step[1] - options.step[0]));
|
|
62
|
-
}
|
|
63
|
-
let index = typingIndex + step;
|
|
64
|
-
this.setState({ typingIndex: index });
|
|
65
|
-
this.parseContent();
|
|
66
|
-
this._adapter.typingEvent();
|
|
67
|
-
if (index >= content.length) {
|
|
68
|
-
this.typewriterEnd();
|
|
69
|
-
this.parseContent();
|
|
70
|
-
return;
|
|
71
|
-
}
|
|
72
|
-
let typingTimeout = setTimeout(typingStep, typeof options.interval === 'number' ? options.interval : 50);
|
|
73
|
-
this.setState({
|
|
74
|
-
timer: typingTimeout,
|
|
75
|
-
});
|
|
76
|
-
};
|
|
77
|
-
let typingStepTimeout = setTimeout(typingStep);
|
|
78
|
-
this.setState({
|
|
79
|
-
timer: typingStepTimeout,
|
|
80
|
-
});
|
|
81
|
-
};
|
|
82
|
-
}
|
|
83
|
-
}
|
|
84
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZm91bmRhdGlvbi5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NvbXBvbmVudHMtbmcvc3JjL2NvbXBvbmVudHMtY29tbW9uL01hcmtkb3duQ2FyZC9mb3VuZGF0aW9uLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sY0FBa0MsTUFBTSxvQkFBb0IsQ0FBQztBQUdwRSxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQztBQVU1RCxNQUFNLE9BQU8sc0JBQXVCLFNBQVEsY0FBbUM7SUFDN0UsWUFBWSxPQUE0QjtRQUN0QyxLQUFLLENBQUMsRUFBRSxHQUFHLE9BQU8sRUFBRSxDQUFDLENBQUM7UUFHeEIsWUFBTyxHQUFHLENBQUMsSUFBcUIsRUFBaUIsRUFBRTtZQUNqRCxPQUFPLE1BQU0sSUFBSSxJQUFJLElBQUksU0FBUyxJQUFJLElBQUksQ0FBQztRQUM3QyxDQUFDLENBQUM7UUFFRixrQkFBYSxHQUFHLEdBQUcsRUFBRTtZQUNuQixJQUFJLENBQUMsUUFBUSxDQUFDLEVBQUUsUUFBUSxFQUFFLEtBQUssRUFBRSxDQUFDLENBQUM7WUFDbkMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxTQUFTLEVBQUUsRUFBRSxDQUFDO1FBQzlCLENBQUMsQ0FBQztRQUVGLG9CQUFlLEdBQUcsQ0FBQyxPQUFlLEVBQUUsWUFBaUIsRUFBRSxFQUFFO1lBQ3ZELE1BQU0sVUFBVSxHQUFHLFlBQVksRUFBRSxXQUFXLElBQUksZ0JBQWdCLENBQUM7WUFDakUsT0FBTyxDQUNMLE9BQU87Z0JBQ0wsRUFBRSxPQUFPLENBQUMsU0FBUyxFQUFFLGVBQWUsVUFBVSxJQUFJLENBQUM7Z0JBQ25ELEVBQUUsT0FBTyxDQUFDLFVBQVUsRUFBRSxRQUFRLENBQUMsSUFBSSxFQUFFLENBQ3hDLENBQUM7UUFDSixDQUFDLENBQUM7UUFFRix1QkFBa0IsR0FBRyxDQUFDLE9BQWUsRUFBRSxFQUFFO1lBQ3ZDLE1B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QUMsR0FBRyxPQUFPLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQztnQkFDcEUsQ0FBQztnQkFDRCxJQUFJLEtBQUssR0FBRyxXQUFXLEdBQUcsSUFBSSxDQUFDO2dCQUMvQixJQUFJLENBQUMsUUFBUSxDQUFDLEVBQUUsV0FBVyxFQUFFLEtBQUssRUFBRSxDQUFDLENBQUM7Z0JBQ3RDLElBQUksQ0FBQyxZQUFZLEVBQUUsQ0FBQztnQkFDcEIsSUFBSSxDQUFDLFFBQVEsQ0FBQyxXQUFXLEVBQUUsQ0FBQztnQkFFNUIsSUFBSSxLQUFLLElBQUksT0FBUSxDQUFDLE1BQU0sRUFBRSxDQUFDO29CQUM3QixJQUFJLENBQUMsYUFBYSxFQUFFLENBQUM7b0JBQ3JCLElBQUksQ0FBQyxZQUFZLEVBQUUsQ0FBQztvQkFDcEIsT0FBTztnQkFDVCxDQUFDO2dCQUVELElBQUksYUFBYSxHQUFHLFVBQVUsQ0FDNUIsVUFBVSxFQUNWLE9BQU8sT0FBTyxDQUFDLFFBQVEsS0FBSyxRQUFRLENBQUMsQ0FBQyxDQUFDLE9BQU8sQ0FBQyxRQUFRLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FDN0QsQ0FBQztnQkFDRixJQUFJLENBQUMsUUFBUSxDQUFDO29CQUNaLEtBQUssRUFBRSxhQUFhO2lCQUNyQixDQUFDLENBQUM7WUFDTCxDQUFDLENBQUM7WUFFRixJQUFJLGlCQUFpQixHQUFHLFVBQVUsQ0FBQyxVQUFVLENBQUMsQ0FBQztZQUMvQyxJQUFJLENBQUMsUUFBUSxDQUFDO2dCQUNaLEtBQUssRUFBRSxpQkFBaUI7YUFDekIsQ0FBQyxDQUFDO1FBQ0wsQ0FBQyxDQUFDO0lBakdGLENBQUM7Q0FrR0YiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgQmFzZUZvdW5kYXRpb24sIHsgRGVmYXVsdEFkYXB0ZXIgfSBmcm9tICcuLi9CYXNlL2ZvdW5kYXRpb24nO1xuaW1wb3J0IHR5cGUgeyBUb2tlbiB9IGZyb20gJ21hcmtkb3duLWl0JztcbmltcG9ydCB0eXBlIHsgQVNUTm9kZSB9IGZyb20gJy4vY29tbW9uL21kQ2FyZC50eXBlcyc7XG5pbXBvcnQgeyBkZWZhdWx0VHlwaW5nQ29uZmlnIH0gZnJvbSAnLi9jb21tb24vbWRDYXJkLnR5cGVzJztcblxuZXhwb3J0IGludGVyZmFjZSBNYXJrZG93bkNhcmRBZGFwdGVyIGV4dGVuZHMgRGVmYXVsdEFkYXB0ZXIge1xuICBsb2NhbGUoa2V5OiBzdHJpbmcsIHBhcmFtcz86IFJlY29yZDxzdHJpbmcsIHN0cmluZz4pOiBzdHJpbmc7XG4gIHR5cGluZ1N0YXJ0OiAoKSA9PiB2b2lkO1xuICB0eXBpbmdFbmQ6ICgpID0+IHZvaWQ7XG4gIHR5cGluZ0V2ZW50OiAoKSA9PiB2b2lkO1xuICBwYXJzZUNvbnRlbnQ6IChjb250ZW50OiBzdHJpbmcpID0+IHZvaWQ7XG59XG5cbmV4cG9ydCBjbGFzcyBNYXJrZG93bkNhcmRGb3VuZGF0aW9uIGV4dGVuZHMgQmFzZUZvdW5kYXRpb248TWFya2Rvd25DYXJkQWRhcHRlcj4ge1xuICBjb25zdHJ1Y3RvcihhZGFwdGVyOiBNYXJrZG93bkNhcmRBZGFwdGVyKSB7XG4gICAgc3VwZXIoeyAuLi5hZGFwdGVyIH0pO1xuICB9XG5cbiAgaXNUb2tlbiA9IChub2RlOiBBU1ROb2RlIHwgVG9rZW4pOiBub2RlIGlzIFRva2VuID0+IHtcbiAgICByZXR1cm4gJ3R5cGUnIGluIG5vZGUgJiYgJ2NvbnRlbnQnIGluIG5vZGU7XG4gIH07XG5cbiAgdHlwZXdyaXRlckVuZCA9ICgpID0+IHtcbiAgICB0aGlzLnNldFN0YXRlKHsgaXNUeXBpbmc6IGZhbHNlIH0pO1xuICAgIHRoaXMuX2FkYXB0ZXIudHlwaW5nRW5kPy4oKTtcbiAgfTtcblxuICBnZXRUaGlua0NvbnRlbnQgPSAoY29udGVudDogc3RyaW5nLCB0aGlua09wdGlvbnM6IGFueSkgPT4ge1xuICAgIGNvbnN0IHRoaW5rQ2xhc3MgPSB0aGlua09wdGlvbnM/LmN1c3RvbUNsYXNzIHx8ICdtYy10aGluay1ibG9jayc7XG4gICAgcmV0dXJuIChcbiAgICAgIGNvbnRlbnRcbiAgICAgICAgPy5yZXBsYWNlKCc8dGhpbms+JywgYDxkaXYgY2xhc3M9XCIke3RoaW5rQ2xhc3N9XCI+YClcbiAgICAgICAgPy5yZXBsYWNlKCc8L3RoaW5rPicsICc8L2Rpdj4nKSB8fCAnJ1xuICAgICk7XG4gIH07XG5cbiAgcGFyc2VUeXBpbmdDb250ZW50ID0gKGNvbnRlbnQ6IHN0cmluZykgPT4ge1xuICAgIGNvbnN0IHsgdHlwaW5nT3B0aW9ucyB9ID0gdGhpcy5nZXRQcm9wcygpO1xuICAgIGNvbnN0IHsgdHlwaW5nSW5kZXggfSA9IHRoaXMuZ2V0U3RhdGVzKCk7XG4gICAgY29udGVudCA9IGNvbnRlbnQuc2xpY2UoMCwgdHlwaW5nSW5kZXgpIHx8ICcnO1xuICAgIGNvbnN0IG9wdGlvbnMgPSB7IC4uLmRlZmF1bHRUeXBpbmdDb25maWcsIC4uLnR5cGluZ09wdGlvbnMgfTtcblxuICAgIGlmIChvcHRpb25zLnN0eWxlID09PSAnY3Vyc29yJykge1xuICAgICAgY29udGVudCArPSBgPHNwYW4gY2xhc3M9XCJtYy10eXBld3JpdGVyIG1jLXR5cGV3cml0ZXItY3Vyc29yXCI+fDwvc3Bhbj5gO1xuICAgIH0gZWxzZSBpZiAob3B0aW9ucy5zdHlsZSA9PT0gJ2NvbG9yJyB8fCBvcHRpb25zLnN0eWxlID09PSAnZ3JhZGllbnQnKSB7XG4gICAgICBjb250ZW50ID1cbiAgICAgICAgY29udGVudC5zbGljZSgwLCAtNSkgK1xuICAgICAgICBgPHNwYW4gY2xhc3M9XCJtYy10eXBld3JpdGVyIG1jLXR5cGV3cml0ZXItJHtcbiAgICAgICAgICBvcHRpb25zLnN0eWxlXG4gICAgICAgIH1cIj4ke2NvbnRlbnQuc2xpY2UoLTUpfTwvc3Bhbj5gO1xuICAgIH1cbiAgICByZXR1cm4gY29udGVudCB8fCAnJztcbiAgfTtcblxuICBwYXJzZUNvbnRlbnQgPSAoKSA9PiB7XG4gICAgY29uc3QgeyBjb250ZW50LCB0aGlua09wdGlvbnMsIGVuYWJsZVRoaW5rIH0gPSB0aGlzLmdldFByb3BzKCk7XG4gICAgY29uc3QgeyB0eXBpbmcsIGlzVHlwaW5nIH0gPSB0aGlzLmdldFN0YXRlcygpO1xuICAgIGxldCBwYXJzZUNvbnRlbnQgPSBjb250ZW50IHx8ICcnO1xuICAgIGlmICh0eXBpbmcgJiYgaXNUeXBpbmcpIHtcbiAgICAgIHBhcnNlQ29udGVudCA9IHRoaXMucGFyc2VUeXBpbmdDb250ZW50KGNvbnRlbnQpO1xuICAgIH1cblxuICAgIGlmIChlbmFibGVUaGluaykge1xuICAgICAgcGFyc2VDb250ZW50ID0gdGhpcy5nZXRUaGlua0NvbnRlbnQoY29udGVudCwgdGhpbmtPcHRpb25zKTtcbiAgICB9XG5cbiAgICBwYXJzZUNvbnRlbnQgPSB0aGlzLl9hZGFwdGVyLnBhcnNlQ29udGVudChwYXJzZUNvbnRlbnQpO1xuICB9O1xuXG4gIHR5cGV3cml0ZXJTdGFydCA9ICgpID0+IHtcbiAgICBjb25zdCB7IHR5cGluZ09wdGlvbnMgfSA9IHRoaXMuZ2V0UHJvcHMoKTtcbiAgICBjb25zdCB7IHRpbWVyIH0gPSB0aGlzLmdldFN0YXRlcygpO1xuICAgIGlmICh0aW1lcikge1xuICAgICAgY2xlYXJUaW1lb3V0KHRpbWVyKTtcbiAgICB9XG5cbiAgICB0aGlzLnNldFN0YXRlKHsgaXNUeXBpbmc6IHRydWUgfSk7XG4gICAgdGhpcy5fYWRhcHRlci50eXBpbmdTdGFydD8uKCk7XG4gICAgY29uc3Qgb3B0aW9ucyA9IHsgLi4uZGVmYXVsdFR5cGluZ0NvbmZpZywgLi4udHlwaW5nT3B0aW9ucyB9O1xuXG4gICAgY29uc3QgdHlwaW5nU3RlcCA9ICgpID0+IHtcbiAgICAgIGNvbnN0IHsgdHlwaW5nSW5kZXgsIGNvbnRlbnQgfSA9IHRoaXMuZ2V0U3RhdGVzKCk7XG5cbiAgICAgIGxldCBzdGVwID0gb3B0aW9ucy5zdGVwIHx8IDI7XG4gICAgICBpZiAoQXJyYXkuaXNBcnJheShvcHRpb25zLnN0ZXApKSB7XG4gICAgICAgIHN0ZXAgPVxuICAgICAgICAgIG9wdGlvbnMuc3RlcFswXSArXG4gICAgICAgICAgTWF0aC5mbG9vcihNYXRoLnJhbmRvbSgpICogKG9wdGlvbnMuc3RlcFsxXSAtIG9wdGlvbnMuc3RlcFswXSkpO1xuICAgICAgfVxuICAgICAgbGV0IGluZGV4ID0gdHlwaW5nSW5kZXggKyBzdGVwO1xuICAgICAgdGhpcy5zZXRTdGF0ZSh7IHR5cGluZ0luZGV4OiBpbmRleCB9KTtcbiAgICAgIHRoaXMucGFyc2VDb250ZW50KCk7XG4gICAgICB0aGlzLl9hZGFwdGVyLnR5cGluZ0V2ZW50KCk7XG5cbiAgICAgIGlmIChpbmRleCA+PSBjb250ZW50IS5sZW5ndGgpIHtcbiAgICAgICAgdGhpcy50eXBld3JpdGVyRW5kKCk7XG4gICAgICAgIHRoaXMucGFyc2VDb250ZW50KCk7XG4gICAgICAgIHJldHVybjtcbiAgICAgIH1cblxuICAgICAgbGV0IHR5cGluZ1RpbWVvdXQgPSBzZXRUaW1lb3V0KFxuICAgICAgICB0eXBpbmdTdGVwLFxuICAgICAgICB0eXBlb2Ygb3B0aW9ucy5pbnRlcnZhbCA9PT0gJ251bWJlcicgPyBvcHRpb25zLmludGVydmFsIDogNTBcbiAgICAgICk7XG4gICAgICB0aGlzLnNldFN0YXRlKHtcbiAgICAgICAgdGltZXI6IHR5cGluZ1RpbWVvdXQsXG4gICAgICB9KTtcbiAgICB9O1xuXG4gICAgbGV0IHR5cGluZ1N0ZXBUaW1lb3V0ID0gc2V0VGltZW91dCh0eXBpbmdTdGVwKTtcbiAgICB0aGlzLnNldFN0YXRlKHtcbiAgICAgIHRpbWVyOiB0eXBpbmdTdGVwVGltZW91dCxcbiAgICB9KTtcbiAgfTtcbn1cbiJdfQ==
|
package/esm2022/matechat-ng.mjs
DELETED
|
@@ -1,5 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Generated bundle index. Do not edit.
|
|
3
|
-
*/
|
|
4
|
-
export * from './public-api';
|
|
5
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWF0ZWNoYXQtbmcuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9wcm9qZWN0cy9jb21wb25lbnRzLW5nL3NyYy9tYXRlY2hhdC1uZy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7R0FFRztBQUVILGNBQWMsY0FBYyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBHZW5lcmF0ZWQgYnVuZGxlIGluZGV4LiBEbyBub3QgZWRpdC5cbiAqL1xuXG5leHBvcnQgKiBmcm9tICcuL3B1YmxpYy1hcGknO1xuIl19
|
package/esm2022/public-api.mjs
DELETED
|
@@ -1,8 +0,0 @@
|
|
|
1
|
-
/*
|
|
2
|
-
* Public API Surface of components-ng
|
|
3
|
-
*/
|
|
4
|
-
export * from './Bubble/index';
|
|
5
|
-
export * from './Input/index';
|
|
6
|
-
export * from './Locale/index';
|
|
7
|
-
export * from './MarkdownCard/index';
|
|
8
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljLWFwaS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3Byb2plY3RzL2NvbXBvbmVudHMtbmcvc3JjL3B1YmxpYy1hcGkudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7O0dBRUc7QUFFSCxjQUFjLGdCQUFnQixDQUFDO0FBQy9CLGNBQWMsZUFBZSxDQUFDO0FBQzlCLGNBQWMsZ0JBQWdCLENBQUM7QUFDL0IsY0FBYyxzQkFBc0IsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbIi8qXG4gKiBQdWJsaWMgQVBJIFN1cmZhY2Ugb2YgY29tcG9uZW50cy1uZ1xuICovXG5cbmV4cG9ydCAqIGZyb20gJy4vQnViYmxlL2luZGV4JztcbmV4cG9ydCAqIGZyb20gJy4vSW5wdXQvaW5kZXgnO1xuZXhwb3J0ICogZnJvbSAnLi9Mb2NhbGUvaW5kZXgnO1xuZXhwb3J0ICogZnJvbSAnLi9NYXJrZG93bkNhcmQvaW5kZXgnO1xuIl19
|
package/public-api.d.ts
DELETED