refactor: reorganize specs and adapter extensions (#10359)

### TL;DR
Refactored `SpecProvider` singleton access pattern and reorganized adapter/extension code structure.

### What changed?
- Changed `SpecProvider.getInstance()` to `SpecProvider._` for cleaner singleton access
- Moved adapter/extension code from `_common` directory to dedicated `adapters` and `extensions` folders
- Consolidated adapter extensions into a single file
- Removed unused dependencies from package.json
- Deleted unnecessary schema files
- Extracted `MobileSpecsPatches` class into the mobile patching code
- Updated all references to use the new `SpecProvider._` accessor

### How to test?
- Verify all specs are properly registered and accessible via `SpecProvider._`
- Test adapter functionality for HTML, Markdown, Notion HTML and plain text
- Check mobile-specific features and patches work correctly
- Ensure preview functionality works in both page and edgeless modes

### Why make this change?
- Improves code organization by properly separating adapters and extensions
- Simplifies singleton access pattern
- Removes unnecessary dependencies and files
- Makes the codebase more maintainable by consolidating related functionality
This commit is contained in:
Saul-Mirone
2025-02-21 14:25:35 +00:00
parent 72b751943c
commit 2cf9a8f286
49 changed files with 224 additions and 320 deletions

View File

@@ -4052,31 +4052,8 @@ __metadata:
"@blocksuite/icons": "npm:^2.2.1"
"@blocksuite/inline": "workspace:*"
"@blocksuite/store": "workspace:*"
"@floating-ui/dom": "npm:^1.6.10"
"@lit/context": "npm:^1.1.2"
"@preact/signals-core": "npm:^1.8.0"
"@toeverything/theme": "npm:^1.1.11"
"@types/katex": "npm:^0.16.7"
"@types/lodash-es": "npm:^4.17.12"
"@vanilla-extract/css": "npm:^1.17.0"
"@vanilla-extract/vite-plugin": "npm:^5.0.0"
date-fns: "npm:^4.0.0"
dompurify: "npm:^3.2.4"
fflate: "npm:^0.8.2"
file-type: "npm:^20.0.0"
fractional-indexing: "npm:^3.2.0"
html2canvas: "npm:^1.4.1"
katex: "npm:^0.16.11"
lit: "npm:^3.2.0"
lodash-es: "npm:^4.17.21"
lz-string: "npm:^1.5.0"
minimatch: "npm:^10.0.1"
nanoid: "npm:^5.0.7"
shiki: "npm:^2.0.0"
simple-xml-to-json: "npm:^1.2.2"
vitest: "npm:3.0.6"
yjs: "npm:^13.6.21"
zod: "npm:^3.23.8"
languageName: unknown
linkType: soft