收口移动壳导入文件名归一
新增共享 HostBridge 导入文件名清洗函数 移动文件导入改用导入专用文件名归一边界 补充契约测试、移动配置门禁和协议文档
This commit is contained in:
@@ -46,6 +46,7 @@ import {
|
||||
normalizeHostBridgeHapticsImpactStyle,
|
||||
normalizeHostBridgeImportAudioResult,
|
||||
normalizeHostBridgeImportDocumentResult,
|
||||
normalizeHostBridgeImportFileName,
|
||||
normalizeHostBridgeImportImageResult,
|
||||
normalizeHostBridgeImportTextResult,
|
||||
normalizeHostBridgeLifecycleState,
|
||||
@@ -423,17 +424,20 @@ describe('HostBridge shared contract helpers', () => {
|
||||
});
|
||||
|
||||
test('归一化宿主文件导入结果', () => {
|
||||
expect(normalizeHostBridgeImportFileName(' ../剧情:草稿?.md ')).toBe(
|
||||
'剧情-草稿-.md',
|
||||
);
|
||||
expect(
|
||||
normalizeHostBridgeImportTextResult({
|
||||
action: 'selected',
|
||||
fileName: ' 剧情.md ',
|
||||
fileName: ' ../剧情:草稿?.md ',
|
||||
content: '暖灯猫街',
|
||||
mimeType: 'text/markdown',
|
||||
bytes: 12,
|
||||
}),
|
||||
).toEqual({
|
||||
action: 'selected',
|
||||
fileName: '剧情.md',
|
||||
fileName: '剧情-草稿-.md',
|
||||
content: '暖灯猫街',
|
||||
mimeType: 'text/markdown',
|
||||
bytes: 12,
|
||||
|
||||
@@ -721,17 +721,8 @@ function normalizeHostBridgeImportedBytes(rawBytes: unknown, maxBytes: number) {
|
||||
return rawBytes;
|
||||
}
|
||||
|
||||
function normalizeHostBridgeImportFileName(rawFileName: unknown) {
|
||||
if (typeof rawFileName !== 'string') {
|
||||
return null;
|
||||
}
|
||||
|
||||
const fileName = rawFileName.trim();
|
||||
if (!fileName || hasHostBridgeControlCharacter(fileName)) {
|
||||
return null;
|
||||
}
|
||||
|
||||
return fileName;
|
||||
export function normalizeHostBridgeImportFileName(rawFileName: unknown) {
|
||||
return normalizeHostBridgeExportFileName(rawFileName);
|
||||
}
|
||||
|
||||
export function normalizeHostBridgeImportTextResult(
|
||||
|
||||
Reference in New Issue
Block a user