F-18 命令式孤岛。3Dmol 懒注入 script 标签(只取自带副本;删-CDN 安全注释留在标签旁)、图片标注器、dock Viewer / 版本、应用同源 Ketcher /ketcher iframe(embeddable 头,不加 sandbox)、惰性 PDF / 初始 HTML iframe。HTML 获得 scoped grant 后可在已验证的另一回环源运行脚本。不改 stores/,也不改 compat/window-exports.ts 标记区以上的内容。
| 文件 | 职责 |
|---|---|
annot.ts |
图片标注器、pin 状态、作曲框 chip(app.js:8965-8993, 9149-9429)。 |
annot.test.ts |
annotationStatus 映射;held pin;openAnnotations。 |
dom.ts |
el / $ / lucide 子集 / ghostIconBtn。 |
frames.ts |
惰性 iframe 策略、回环源与 grant 路径检查;应用同源 Ketcher 与剪贴板权限。 |
frames.test.ts |
iframe sandbox 属性、派生的回环源、grant 路径检查及应用同源 Ketcher。 |
host.ts |
用 isReady 调 window;t() 回退。 |
index.ts |
bootIslands / installIslands。覆盖 F-05 占位。 |
install.test.ts |
安装后契约名字通过 isReady。 |
ketcher.ts |
openKetcher iframe 打开 /ketcher(app.js:10834)。 |
locator.ts |
PDF / HTML locator 评论(app.js:10835-10897)。 |
mol.ts |
_molTeardown + molecule 懒注入(app.js:9610-9673)。 |
mol.test.ts |
无 3Dmol 静态 import;无活 CDN URL;自带 src。 |
viewer.ts |
Dock Viewer 铬、编辑器、版本(app.js:9430-9609)。 |
viewer.test.ts |
isTextEditable 扩展名 / content-type 门。 |