zcw-shared 2.19.0 → 2.20.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import type { ImRichContentSegment, MaterializeImRichHtmlOptions } from './imRichContentHtml';
|
|
2
|
+
export type BubbleClipboardFragment = {
|
|
3
|
+
childNodes: ArrayLike<unknown>;
|
|
4
|
+
};
|
|
5
|
+
export declare function parseBubbleClipboardFragment(fragment: BubbleClipboardFragment): ImRichContentSegment[];
|
|
6
|
+
export declare function writeBubbleSelectionClipboard(fragment: BubbleClipboardFragment, options?: MaterializeImRichHtmlOptions): {
|
|
7
|
+
html: string;
|
|
8
|
+
plain: string;
|
|
9
|
+
} | null;
|
|
@@ -0,0 +1,166 @@
|
|
|
1
|
+
import { materializeImRichHtmlToRestorablePlainText } from './imRichClipboardPlain';
|
|
2
|
+
import { IM_RICH_EMOJI_ATTR, IM_RICH_FILE_ATTR, IM_RICH_FILE_PATH_ATTR, IM_RICH_LABEL_ATTR, IM_RICH_MENTION_ATTR, IM_RICH_USER_ID_ATTR, sanitizeImRichContentHtml, serializeImRichContentSegments, } from './imRichContentHtml';
|
|
3
|
+
const INLINE_IMAGE_WRAP_ATTR = 'data-cw-inline-image-wrap';
|
|
4
|
+
const PREVIEW_SRC_ATTR = 'data-preview-src';
|
|
5
|
+
const IMAGE_NAME_ATTR = 'data-image-name';
|
|
6
|
+
const NATURAL_WIDTH_ATTR = 'data-natural-width';
|
|
7
|
+
const NATURAL_HEIGHT_ATTR = 'data-natural-height';
|
|
8
|
+
function appendTextSegment(segments, text) {
|
|
9
|
+
if (!text)
|
|
10
|
+
return;
|
|
11
|
+
const last = segments[segments.length - 1];
|
|
12
|
+
if (last?.type === 'text') {
|
|
13
|
+
last.text += text;
|
|
14
|
+
}
|
|
15
|
+
else {
|
|
16
|
+
segments.push({ type: 'text', text });
|
|
17
|
+
}
|
|
18
|
+
}
|
|
19
|
+
function isElement(node) {
|
|
20
|
+
return node.nodeType === 1;
|
|
21
|
+
}
|
|
22
|
+
function normalizeBubbleChipVisibleText(el) {
|
|
23
|
+
return (el.textContent ?? '').replace(/\s+/g, '');
|
|
24
|
+
}
|
|
25
|
+
function isCompleteFileChipInFragment(el) {
|
|
26
|
+
const label = el.getAttribute?.(IM_RICH_LABEL_ATTR)?.trim() ?? '';
|
|
27
|
+
const path = el.getAttribute?.(IM_RICH_FILE_PATH_ATTR)?.trim() ?? '';
|
|
28
|
+
const fullLabel = label || path.split(/[/\\]/).pop() || path;
|
|
29
|
+
if (!fullLabel)
|
|
30
|
+
return false;
|
|
31
|
+
const visible = normalizeBubbleChipVisibleText(el);
|
|
32
|
+
if (!visible)
|
|
33
|
+
return false;
|
|
34
|
+
if (visible === fullLabel)
|
|
35
|
+
return true;
|
|
36
|
+
if (!visible.endsWith(fullLabel))
|
|
37
|
+
return false;
|
|
38
|
+
const prefix = visible.slice(0, visible.length - fullLabel.length);
|
|
39
|
+
return prefix.length <= 2;
|
|
40
|
+
}
|
|
41
|
+
function isCompleteMentionChipInFragment(el) {
|
|
42
|
+
const label = el.getAttribute?.(IM_RICH_LABEL_ATTR)?.trim() ?? '';
|
|
43
|
+
const userId = el.getAttribute?.(IM_RICH_USER_ID_ATTR)?.trim() ?? '';
|
|
44
|
+
const expected = label || userId;
|
|
45
|
+
if (!expected)
|
|
46
|
+
return false;
|
|
47
|
+
const visible = normalizeBubbleChipVisibleText(el).replace(/^@+/, '');
|
|
48
|
+
return visible === expected;
|
|
49
|
+
}
|
|
50
|
+
function readFileSegment(el) {
|
|
51
|
+
if (!el.hasAttribute?.(IM_RICH_FILE_ATTR))
|
|
52
|
+
return null;
|
|
53
|
+
if (!isCompleteFileChipInFragment(el))
|
|
54
|
+
return null;
|
|
55
|
+
const path = el.getAttribute?.(IM_RICH_FILE_PATH_ATTR)?.trim() ?? '';
|
|
56
|
+
const label = el.getAttribute?.(IM_RICH_LABEL_ATTR)?.trim() ?? '';
|
|
57
|
+
if (!path && !label)
|
|
58
|
+
return null;
|
|
59
|
+
return {
|
|
60
|
+
type: 'file',
|
|
61
|
+
path,
|
|
62
|
+
label: label || path.split(/[/\\]/).pop() || path,
|
|
63
|
+
};
|
|
64
|
+
}
|
|
65
|
+
function readImageSegment(el) {
|
|
66
|
+
if (!el.hasAttribute?.(INLINE_IMAGE_WRAP_ATTR))
|
|
67
|
+
return null;
|
|
68
|
+
const url = el.getAttribute?.(PREVIEW_SRC_ATTR)?.trim() ?? '';
|
|
69
|
+
if (!url)
|
|
70
|
+
return null;
|
|
71
|
+
const alt = el.getAttribute?.(IMAGE_NAME_ATTR)?.trim() || '图片';
|
|
72
|
+
const w = Number.parseInt(el.getAttribute?.(NATURAL_WIDTH_ATTR) ?? '', 10);
|
|
73
|
+
const h = Number.parseInt(el.getAttribute?.(NATURAL_HEIGHT_ATTR) ?? '', 10);
|
|
74
|
+
return {
|
|
75
|
+
type: 'image',
|
|
76
|
+
url,
|
|
77
|
+
alt,
|
|
78
|
+
...(Number.isFinite(w) && w > 0 && Number.isFinite(h) && h > 0
|
|
79
|
+
? { width: w, height: h }
|
|
80
|
+
: {}),
|
|
81
|
+
};
|
|
82
|
+
}
|
|
83
|
+
function readMentionSegment(el) {
|
|
84
|
+
if (!el.hasAttribute?.(IM_RICH_MENTION_ATTR))
|
|
85
|
+
return null;
|
|
86
|
+
if (!isCompleteMentionChipInFragment(el))
|
|
87
|
+
return null;
|
|
88
|
+
const userId = el.getAttribute?.(IM_RICH_USER_ID_ATTR)?.trim() ?? '';
|
|
89
|
+
const label = el.getAttribute?.(IM_RICH_LABEL_ATTR)?.trim() ?? '';
|
|
90
|
+
if (!userId)
|
|
91
|
+
return null;
|
|
92
|
+
return { type: 'mention', userId, label: label || userId };
|
|
93
|
+
}
|
|
94
|
+
function readEmojiSegment(el) {
|
|
95
|
+
if (el.tagName !== 'IMG')
|
|
96
|
+
return null;
|
|
97
|
+
const glyph = el.getAttribute?.(IM_RICH_EMOJI_ATTR)?.trim() ||
|
|
98
|
+
el.getAttribute?.('alt')?.trim() ||
|
|
99
|
+
'';
|
|
100
|
+
if (!glyph)
|
|
101
|
+
return null;
|
|
102
|
+
const src = el.getAttribute?.('src')?.trim() ?? '';
|
|
103
|
+
return { type: 'emoji', glyph, ...(src ? { src } : {}) };
|
|
104
|
+
}
|
|
105
|
+
function isInlineEmojiImg(el) {
|
|
106
|
+
return el.tagName === 'IMG' && !!el.hasAttribute?.(IM_RICH_EMOJI_ATTR);
|
|
107
|
+
}
|
|
108
|
+
function asClipboardNode(node) {
|
|
109
|
+
return node;
|
|
110
|
+
}
|
|
111
|
+
function walkBubbleClipboardNode(node, segments) {
|
|
112
|
+
if (node.nodeType === 3) {
|
|
113
|
+
appendTextSegment(segments, node.textContent ?? '');
|
|
114
|
+
return;
|
|
115
|
+
}
|
|
116
|
+
if (!isElement(node))
|
|
117
|
+
return;
|
|
118
|
+
const file = readFileSegment(node);
|
|
119
|
+
if (file) {
|
|
120
|
+
segments.push(file);
|
|
121
|
+
return;
|
|
122
|
+
}
|
|
123
|
+
const image = readImageSegment(node);
|
|
124
|
+
if (image) {
|
|
125
|
+
segments.push(image);
|
|
126
|
+
return;
|
|
127
|
+
}
|
|
128
|
+
const mention = readMentionSegment(node);
|
|
129
|
+
if (mention) {
|
|
130
|
+
segments.push(mention);
|
|
131
|
+
return;
|
|
132
|
+
}
|
|
133
|
+
if (isInlineEmojiImg(node)) {
|
|
134
|
+
const emoji = readEmojiSegment(node);
|
|
135
|
+
if (emoji) {
|
|
136
|
+
segments.push(emoji);
|
|
137
|
+
return;
|
|
138
|
+
}
|
|
139
|
+
}
|
|
140
|
+
const children = node.childNodes;
|
|
141
|
+
if (!children)
|
|
142
|
+
return;
|
|
143
|
+
for (let i = 0; i < children.length; i++) {
|
|
144
|
+
walkBubbleClipboardNode(asClipboardNode(children[i]), segments);
|
|
145
|
+
}
|
|
146
|
+
}
|
|
147
|
+
export function parseBubbleClipboardFragment(fragment) {
|
|
148
|
+
const segments = [];
|
|
149
|
+
for (let i = 0; i < fragment.childNodes.length; i++) {
|
|
150
|
+
walkBubbleClipboardNode(asClipboardNode(fragment.childNodes[i]), segments);
|
|
151
|
+
}
|
|
152
|
+
return segments.filter((seg) => seg.type !== 'text' || seg.text.length > 0);
|
|
153
|
+
}
|
|
154
|
+
export function writeBubbleSelectionClipboard(fragment, options) {
|
|
155
|
+
const segments = parseBubbleClipboardFragment(fragment);
|
|
156
|
+
if (segments.length === 0)
|
|
157
|
+
return null;
|
|
158
|
+
if (segments.every((seg) => seg.type === 'text' && !seg.text.trim())) {
|
|
159
|
+
return null;
|
|
160
|
+
}
|
|
161
|
+
const wireHtml = serializeImRichContentSegments(segments);
|
|
162
|
+
const html = sanitizeImRichContentHtml(wireHtml);
|
|
163
|
+
const plain = materializeImRichHtmlToRestorablePlainText(wireHtml, options);
|
|
164
|
+
return { html, plain };
|
|
165
|
+
}
|
|
166
|
+
//# sourceMappingURL=imBubbleSelectionClipboard.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"imBubbleSelectionClipboard.js","sourceRoot":"","sources":["../../../src/functions/im/imBubbleSelectionClipboard.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "zcw-shared",
|
|
3
|
-
"version": "2.
|
|
3
|
+
"version": "2.20.0",
|
|
4
4
|
"files": [
|
|
5
5
|
"references",
|
|
6
6
|
"dist",
|
|
@@ -12,6 +12,19 @@
|
|
|
12
12
|
"license": "ISC",
|
|
13
13
|
"type": "module",
|
|
14
14
|
"description": "",
|
|
15
|
+
"scripts": {
|
|
16
|
+
"build": "tsc -p tsconfig.build.json && tsx scripts/generate-exports.ts",
|
|
17
|
+
"publish:patch": "npx tsx scripts/publish.ts patch",
|
|
18
|
+
"publish:minor": "npx tsx scripts/publish.ts minor",
|
|
19
|
+
"publish:major": "npx tsx scripts/publish.ts major",
|
|
20
|
+
"publish:prerelease": "npx tsx scripts/publish.ts prerelease",
|
|
21
|
+
"docs:dev": "vitepress dev docs",
|
|
22
|
+
"docs:build": "NODE_OPTIONS=--max-old-space-size=4096 vitepress build docs",
|
|
23
|
+
"docs:preview": "vitepress preview docs",
|
|
24
|
+
"deploy:cos:build": "NODE_OPTIONS=--max-old-space-size=4096 vitepress build docs",
|
|
25
|
+
"deploy:tcb": "npx tsx scripts/deploy-tcb.ts",
|
|
26
|
+
"deploy:cos": "npx tsx scripts/deploy-cos.ts"
|
|
27
|
+
},
|
|
15
28
|
"dependencies": {
|
|
16
29
|
"zod": "^3.23.8"
|
|
17
30
|
},
|
|
@@ -191,6 +204,7 @@
|
|
|
191
204
|
"./functions/im/formatImChatConversationListTime": "./dist/functions/im/formatImChatConversationListTime.js",
|
|
192
205
|
"./functions/im/forwardBundlePayload": "./dist/functions/im/forwardBundlePayload.js",
|
|
193
206
|
"./functions/im/getActiveMentionQuery": "./dist/functions/im/getActiveMentionQuery.js",
|
|
207
|
+
"./functions/im/imBubbleSelectionClipboard": "./dist/functions/im/imBubbleSelectionClipboard.js",
|
|
194
208
|
"./functions/im/imRichClipboardPlain": "./dist/functions/im/imRichClipboardPlain.js",
|
|
195
209
|
"./functions/im/imRichContentHtml": "./dist/functions/im/imRichContentHtml.js",
|
|
196
210
|
"./functions/image/compressImageToWidthJpgOrWebp": "./dist/functions/image/compressImageToWidthJpgOrWebp.js",
|
|
@@ -473,18 +487,5 @@
|
|
|
473
487
|
"./types/video": "./types/video.d.ts",
|
|
474
488
|
"./types/vue": "./types/vue.d.ts",
|
|
475
489
|
"./types/worker": "./types/worker.d.ts"
|
|
476
|
-
},
|
|
477
|
-
"scripts": {
|
|
478
|
-
"build": "tsc -p tsconfig.build.json && tsx scripts/generate-exports.ts",
|
|
479
|
-
"publish:patch": "npx tsx scripts/publish.ts patch",
|
|
480
|
-
"publish:minor": "npx tsx scripts/publish.ts minor",
|
|
481
|
-
"publish:major": "npx tsx scripts/publish.ts major",
|
|
482
|
-
"publish:prerelease": "npx tsx scripts/publish.ts prerelease",
|
|
483
|
-
"docs:dev": "vitepress dev docs",
|
|
484
|
-
"docs:build": "NODE_OPTIONS=--max-old-space-size=4096 vitepress build docs",
|
|
485
|
-
"docs:preview": "vitepress preview docs",
|
|
486
|
-
"deploy:cos:build": "NODE_OPTIONS=--max-old-space-size=4096 vitepress build docs",
|
|
487
|
-
"deploy:tcb": "npx tsx scripts/deploy-tcb.ts",
|
|
488
|
-
"deploy:cos": "npx tsx scripts/deploy-cos.ts"
|
|
489
490
|
}
|
|
490
491
|
}
|