Files
memind/mindspace-workspace-path.mjs
T
john e2ad3bf62b feat(mindspace): 公开页分享组件、workspace 路径与 Plaza 发布增强
- 新增 public share widget 与 workspace relative path 解析
- 增强 publications/chat-plaza 发布链路与缩略图 demo
- 补充 schema、cover 检查脚本与回归测试

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-07-05 23:14:41 +08:00

30 lines
978 B
JavaScript

import { normalizeWorkspaceRelativePath } from './mindspace-pages.mjs';
export { normalizeWorkspaceRelativePath };
export function resolvePageWorkspaceRelativePath(snapshot) {
if (!snapshot || typeof snapshot !== 'object') return null;
return normalizeWorkspaceRelativePath(snapshot.relative_path) || null;
}
export function resolveAssetWorkspaceRelativePath({
categoryCode = null,
originalFilename = null,
explicitPath = null,
} = {}) {
const explicit = normalizeWorkspaceRelativePath(explicitPath);
if (explicit) return explicit;
const filename = String(originalFilename ?? '')
.replace(/\\/g, '/')
.replace(/^\/+/, '');
if (!filename) return null;
if (/^(?:public|oa)\//i.test(filename)) {
return normalizeWorkspaceRelativePath(filename);
}
const category = String(categoryCode ?? '').trim();
if (category === 'public' || category === 'oa') {
return normalizeWorkspaceRelativePath(`${category}/${filename}`);
}
return null;
}