mirror of
https://github.com/toeverything/AFFiNE.git
synced 2026-07-02 10:10:42 +08:00
Compare commits
191 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
| 914e4baf82 | |||
| bd268044b4 | |||
| b5edd7a6bb | |||
| 34039bc7d8 | |||
| 0f87136fd7 | |||
| 7e4af90c03 | |||
| f5f7cbb105 | |||
| 83670ab335 | |||
| a326eac1bb | |||
| 8b402dd49a | |||
| e96fcf0c35 | |||
| 4c84e6bac7 | |||
| be28038e94 | |||
| d82d37b53d | |||
| f177c64ca1 | |||
| 362f89b669 | |||
| df565f2fbf | |||
| 468db9f3eb | |||
| 4e201ede17 | |||
| d7be1b3424 | |||
| d57b9372ae | |||
| c555cca6a1 | |||
| 4662ee8da7 | |||
| 21dc550b9d | |||
| 9d21d13a5e | |||
| a61c5fd458 | |||
| cf5574caf6 | |||
| e366f69707 | |||
| 85e40e4026 | |||
| 3fdab1bec6 | |||
| 08d1b8dcbf | |||
| e9003dec9e | |||
| d7b1819149 | |||
| 81b439c4e1 | |||
| 59d4942d9b | |||
| de01692414 | |||
| c3f6bea446 | |||
| 6e76a3e593 | |||
| 25a2b94a43 | |||
| 521ca99142 | |||
| dc7bbddce1 | |||
| 4887e1d612 | |||
| 49c57ca649 | |||
| 0abe65653b | |||
| f0e2361e81 | |||
| 0da5ef28d6 | |||
| 4c5e3a875e | |||
| f5ac0aee97 | |||
| 4b7fddc32c | |||
| a46f1a3adf | |||
| aae65d231c | |||
| cce31e822f | |||
| 3d2f0e7b5b | |||
| 807cba03ee | |||
| fd90b2541e | |||
| a603c06fab | |||
| c6a8160c52 | |||
| f4ffdb9995 | |||
| 4ffa37d1c3 | |||
| eaa1bc6bf1 | |||
| 1d38e5787b | |||
| b66d2d58a1 | |||
| d6e7039b7b | |||
| b7e1812893 | |||
| 45df4568a4 | |||
| 5d76be6736 | |||
| 13b28e2ad8 | |||
| 4b854da83c | |||
| 85a21e97f6 | |||
| 814dfab0df | |||
| b4ed7d35a1 | |||
| 652cdedfc3 | |||
| 2200bd7b70 | |||
| 9d90899344 | |||
| 2d3130eac9 | |||
| 7fceb4cbd1 | |||
| 75d36a09e5 | |||
| 8ea0d78862 | |||
| 3b4fcbd526 | |||
| 20d4911641 | |||
| 0cd7111f20 | |||
| 9c0633b75c | |||
| f0a233368d | |||
| bc0530a708 | |||
| 61121ab727 | |||
| c831a2ab2f | |||
| b1500cb4df | |||
| ea391779dd | |||
| 4df75ec5d0 | |||
| db5eadb72a | |||
| ff133d1267 | |||
| ddb739fa13 | |||
| 5397fba897 | |||
| 5d9a3aac5b | |||
| c00671dd84 | |||
| 64997d4a0e | |||
| e501e35d3d | |||
| 16831e8c0e | |||
| cb2c559c6e | |||
| 9fbffccc25 | |||
| a9ad01491c | |||
| 200015a811 | |||
| af69154f1c | |||
| 7e48dcc467 | |||
| 9dbdd4b7ba | |||
| 27ff9ab9f4 | |||
| 9b2cf5cafa | |||
| 9baef237f2 | |||
| b1aecfc1c4 | |||
| 1b2030b36a | |||
| 730ed16fc5 | |||
| 2510e7a9a4 | |||
| 6fbbfc80e5 | |||
| 24edfc75bd | |||
| e57222b89a | |||
| 020c1a7598 | |||
| 45b6cbe8d7 | |||
| 43966a6c6b | |||
| 99ad4e871e | |||
| de8c65f4e6 | |||
| 597b27c22f | |||
| bbdea71686 | |||
| c17c335f9b | |||
| 25d17af0ed | |||
| bfd3c64615 | |||
| 4fd468c46f | |||
| ab2d0b5485 | |||
| 3794f8aa80 | |||
| b59f6ebde0 | |||
| 1d58792631 | |||
| e0e84d302d | |||
| 21bf009553 | |||
| 52953ce8e3 | |||
| e457e2f8a8 | |||
| 6d6504e2af | |||
| 8fdb00e0ab | |||
| 19c06a2821 | |||
| 9373006b9f | |||
| e4d6833296 | |||
| f918573ba8 | |||
| a1e338efc1 | |||
| bc8774580e | |||
| b8bea62a10 | |||
| 3967f25cee | |||
| 742b3eebf8 | |||
| 824e66df58 | |||
| fd67bdf88b | |||
| 8966e8440b | |||
| 846410cdb6 | |||
| 864dd0e74d | |||
| a31d97dbb1 | |||
| e9dab04990 | |||
| fe03292346 | |||
| a2b40fea20 | |||
| e46ae2f721 | |||
| 7c79b1f024 | |||
| df6e17b82f | |||
| 12bf866dc5 | |||
| 92ac8e3cad | |||
| 15a5264352 | |||
| 652d42ba1e | |||
| 5244ff9b98 | |||
| e60d5483ad | |||
| 61ce1123ae | |||
| 0442c0e2b6 | |||
| f65c8f8fa6 | |||
| 1efcd480af | |||
| 2bd9cfe20a | |||
| f87a6e17bd | |||
| a35a4ccf48 | |||
| b036ff5a45 | |||
| f2adb9f72c | |||
| 93b7c288cb | |||
| a6d0894ce1 | |||
| 70ddae15ef | |||
| 535b5ff7c2 | |||
| 1146f4d5a9 | |||
| 6d7cd6dd99 | |||
| c74b5dc214 | |||
| e0a1d87cee | |||
| 95dbda24fc | |||
| e3973538e8 | |||
| f82f213373 | |||
| 2242a4bd8e | |||
| 67832aab09 | |||
| 41597479bb | |||
| f16bcdbe2b | |||
| 5fcf34d848 | |||
| c0ff567a2a | |||
| dcfc92347f | |||
| 7ef1d46d1a |
@@ -24,8 +24,10 @@ runs:
|
|||||||
- name: Import config
|
- name: Import config
|
||||||
shell: bash
|
shell: bash
|
||||||
run: |
|
run: |
|
||||||
printf '{"copilot":{"enabled":true,"providers.fal":{"apiKey":"%s"},"providers.gemini":{"apiKey":"%s"},"providers.openai":{"apiKey":"%s"},"providers.perplexity":{"apiKey":"%s"}}}' \
|
printf '{"copilot":{"enabled":true,"providers.fal":{"apiKey":"%s"},"providers.gemini":{"apiKey":"%s"},"providers.openai":{"apiKey":"%s"},"providers.perplexity":{"apiKey":"%s"},"providers.anthropic":{"apiKey":"%s"},"exa":{"key":"%s"}}}' \
|
||||||
"$COPILOT_FAL_API_KEY" \
|
"$COPILOT_FAL_API_KEY" \
|
||||||
"$COPILOT_GOOGLE_API_KEY" \
|
"$COPILOT_GOOGLE_API_KEY" \
|
||||||
"$COPILOT_OPENAI_API_KEY" \
|
"$COPILOT_OPENAI_API_KEY" \
|
||||||
"$COPILOT_PERPLEXITY_API_KEY" > ./packages/backend/server/config.json
|
"$COPILOT_PERPLEXITY_API_KEY" \
|
||||||
|
"$COPILOT_ANTHROPIC_API_KEY" \
|
||||||
|
"$COPILOT_EXA_API_KEY" > ./packages/backend/server/config.json
|
||||||
|
|||||||
@@ -10,4 +10,4 @@ RUN apt-get update && \
|
|||||||
apt-get install -y --no-install-recommends openssl && \
|
apt-get install -y --no-install-recommends openssl && \
|
||||||
rm -rf /var/lib/apt/lists/*
|
rm -rf /var/lib/apt/lists/*
|
||||||
|
|
||||||
CMD ["node", "--import", "./scripts/register.js", "./dist/index.js"]
|
CMD ["node", "./dist/main.js"]
|
||||||
|
|||||||
@@ -1,60 +0,0 @@
|
|||||||
services:
|
|
||||||
affine:
|
|
||||||
image: ghcr.io/toeverything/affine-graphql:stable
|
|
||||||
container_name: affine_selfhosted
|
|
||||||
command:
|
|
||||||
['sh', '-c', 'node ./scripts/self-host-predeploy && node ./dist/index.js']
|
|
||||||
ports:
|
|
||||||
- '3010:3010'
|
|
||||||
- '5555:5555'
|
|
||||||
depends_on:
|
|
||||||
redis:
|
|
||||||
condition: service_healthy
|
|
||||||
postgres:
|
|
||||||
condition: service_healthy
|
|
||||||
volumes:
|
|
||||||
# custom configurations
|
|
||||||
- ~/.affine/self-host/config:/root/.affine/config
|
|
||||||
# blob storage
|
|
||||||
- ~/.affine/self-host/storage:/root/.affine/storage
|
|
||||||
logging:
|
|
||||||
driver: 'json-file'
|
|
||||||
options:
|
|
||||||
max-size: '1000m'
|
|
||||||
restart: unless-stopped
|
|
||||||
environment:
|
|
||||||
- NODE_OPTIONS="--import=./scripts/register.js"
|
|
||||||
- AFFINE_CONFIG_PATH=/root/.affine/config
|
|
||||||
- REDIS_SERVER_HOST=redis
|
|
||||||
- DATABASE_URL=postgres://affine:affine@postgres:5432/affine
|
|
||||||
- NODE_ENV=production
|
|
||||||
# Telemetry allows us to collect data on how you use the affine. This data will helps us improve the app and provide better features.
|
|
||||||
# Uncomment next line if you wish to quit telemetry.
|
|
||||||
# - TELEMETRY_ENABLE=false
|
|
||||||
redis:
|
|
||||||
image: redis
|
|
||||||
container_name: affine_redis
|
|
||||||
restart: unless-stopped
|
|
||||||
volumes:
|
|
||||||
- ~/.affine/self-host/redis:/data
|
|
||||||
healthcheck:
|
|
||||||
test: ['CMD', 'redis-cli', '--raw', 'incr', 'ping']
|
|
||||||
interval: 10s
|
|
||||||
timeout: 5s
|
|
||||||
retries: 5
|
|
||||||
postgres:
|
|
||||||
image: postgres:16
|
|
||||||
container_name: affine_postgres
|
|
||||||
restart: unless-stopped
|
|
||||||
volumes:
|
|
||||||
- ~/.affine/self-host/postgres:/var/lib/postgresql/data
|
|
||||||
healthcheck:
|
|
||||||
test: ['CMD-SHELL', 'pg_isready -U affine']
|
|
||||||
interval: 10s
|
|
||||||
timeout: 5s
|
|
||||||
retries: 5
|
|
||||||
environment:
|
|
||||||
POSTGRES_USER: affine
|
|
||||||
POSTGRES_PASSWORD: affine
|
|
||||||
POSTGRES_DB: affine
|
|
||||||
PGDATA: /var/lib/postgresql/data/pgdata
|
|
||||||
+23
-5
@@ -21,16 +21,34 @@
|
|||||||
"groupName": "oxlint"
|
"groupName": "oxlint"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"groupName": "blocksuite",
|
"groupName": "all non-major rust dependencies",
|
||||||
"rangeStrategy": "replace",
|
"groupSlug": "all-minor-patch",
|
||||||
"changelogUrl": "https://github.com/toeverything/blocksuite/blob/master/packages/blocks/CHANGELOG.md",
|
"matchUpdateTypes": ["minor", "patch"],
|
||||||
"matchPackageNames": ["/^@blocksuite/", "!@blocksuite/icons"]
|
"matchManagers": ["cargo"]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"groupName": "all non-major npm dependencies",
|
||||||
|
"groupSlug": "all-minor-patch",
|
||||||
|
"matchUpdateTypes": ["minor", "patch"],
|
||||||
|
"matchManagers": ["npm"],
|
||||||
|
"matchPackageNames": ["*", "!/^@blocksuite//", "!/oxlint/"]
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"groupName": "all non-major dependencies",
|
"groupName": "all non-major dependencies",
|
||||||
"groupSlug": "all-minor-patch",
|
"groupSlug": "all-minor-patch",
|
||||||
"matchUpdateTypes": ["minor", "patch"],
|
"matchUpdateTypes": ["minor", "patch"],
|
||||||
"matchPackageNames": ["*", "!/^@blocksuite//", "!/oxlint/"]
|
"matchManagers": [
|
||||||
|
"dockerfile",
|
||||||
|
"github-actions",
|
||||||
|
"helmv3",
|
||||||
|
"helm-values",
|
||||||
|
"gradle-wrapper",
|
||||||
|
"gradle",
|
||||||
|
"docker-compose",
|
||||||
|
"devcontainer",
|
||||||
|
"cocoapods",
|
||||||
|
"bundler"
|
||||||
|
]
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"groupName": "rust toolchain",
|
"groupName": "rust toolchain",
|
||||||
|
|||||||
@@ -13,31 +13,6 @@ permissions:
|
|||||||
packages: 'write'
|
packages: 'write'
|
||||||
|
|
||||||
jobs:
|
jobs:
|
||||||
build-server:
|
|
||||||
name: Build Server
|
|
||||||
runs-on: ubuntu-latest
|
|
||||||
steps:
|
|
||||||
- uses: actions/checkout@v4
|
|
||||||
- name: Setup Version
|
|
||||||
id: version
|
|
||||||
uses: ./.github/actions/setup-version
|
|
||||||
- name: Setup Node.js
|
|
||||||
uses: ./.github/actions/setup-node
|
|
||||||
with:
|
|
||||||
electron-install: false
|
|
||||||
extra-flags: workspaces focus @affine/server @types/affine__env
|
|
||||||
- name: Build Server
|
|
||||||
run: |
|
|
||||||
find packages/backend/server/src -type d -name "__tests__" -exec rm -rf {} +
|
|
||||||
rm -rf packages/backend/server/src/seed
|
|
||||||
yarn workspace @affine/server build
|
|
||||||
- name: Upload server dist
|
|
||||||
uses: actions/upload-artifact@v4
|
|
||||||
with:
|
|
||||||
name: server-dist
|
|
||||||
path: ./packages/backend/server/dist
|
|
||||||
if-no-files-found: error
|
|
||||||
|
|
||||||
build-web:
|
build-web:
|
||||||
name: Build @affine/web
|
name: Build @affine/web
|
||||||
runs-on: ubuntu-latest
|
runs-on: ubuntu-latest
|
||||||
@@ -143,7 +118,7 @@ jobs:
|
|||||||
matrix:
|
matrix:
|
||||||
targets:
|
targets:
|
||||||
- name: x86_64-unknown-linux-gnu
|
- name: x86_64-unknown-linux-gnu
|
||||||
file: server-native.node
|
file: server-native.x64.node
|
||||||
- name: aarch64-unknown-linux-gnu
|
- name: aarch64-unknown-linux-gnu
|
||||||
file: server-native.arm64.node
|
file: server-native.arm64.node
|
||||||
- name: armv7-unknown-linux-gnueabihf
|
- name: armv7-unknown-linux-gnueabihf
|
||||||
@@ -164,11 +139,46 @@ jobs:
|
|||||||
with:
|
with:
|
||||||
target: ${{ matrix.targets.name }}
|
target: ${{ matrix.targets.name }}
|
||||||
package: '@affine/server-native'
|
package: '@affine/server-native'
|
||||||
|
- name: Rename ${{ matrix.targets.file }}
|
||||||
|
run: |
|
||||||
|
mv ./packages/backend/native/server-native.node ./packages/backend/native/${{ matrix.targets.file }}
|
||||||
- name: Upload ${{ matrix.targets.file }}
|
- name: Upload ${{ matrix.targets.file }}
|
||||||
uses: actions/upload-artifact@v4
|
uses: actions/upload-artifact@v4
|
||||||
with:
|
with:
|
||||||
name: ${{ matrix.targets.file }}
|
name: server-native-${{ matrix.targets.file }}
|
||||||
path: ./packages/backend/native/server-native.node
|
path: ./packages/backend/native/${{ matrix.targets.file }}
|
||||||
|
if-no-files-found: error
|
||||||
|
|
||||||
|
build-server:
|
||||||
|
name: Build Server
|
||||||
|
runs-on: ubuntu-latest
|
||||||
|
needs:
|
||||||
|
- build-server-native
|
||||||
|
steps:
|
||||||
|
- uses: actions/checkout@v4
|
||||||
|
- name: Setup Version
|
||||||
|
id: version
|
||||||
|
uses: ./.github/actions/setup-version
|
||||||
|
- name: Setup Node.js
|
||||||
|
uses: ./.github/actions/setup-node
|
||||||
|
with:
|
||||||
|
electron-install: false
|
||||||
|
extra-flags: workspaces focus @affine/server @types/affine__env
|
||||||
|
- name: Download server-native
|
||||||
|
uses: actions/download-artifact@v4
|
||||||
|
with:
|
||||||
|
pattern: server-native-*
|
||||||
|
merge-multiple: true
|
||||||
|
path: ./packages/backend/native
|
||||||
|
- name: List server-native files
|
||||||
|
run: ls -alh ./packages/backend/native
|
||||||
|
- name: Build Server
|
||||||
|
run: yarn workspace @affine/server build
|
||||||
|
- name: Upload server dist
|
||||||
|
uses: actions/upload-artifact@v4
|
||||||
|
with:
|
||||||
|
name: server-dist
|
||||||
|
path: ./packages/backend/server/dist
|
||||||
if-no-files-found: error
|
if-no-files-found: error
|
||||||
|
|
||||||
build-images:
|
build-images:
|
||||||
@@ -179,7 +189,6 @@ jobs:
|
|||||||
- build-web
|
- build-web
|
||||||
- build-mobile
|
- build-mobile
|
||||||
- build-admin
|
- build-admin
|
||||||
- build-server-native
|
|
||||||
steps:
|
steps:
|
||||||
- uses: actions/checkout@v4
|
- uses: actions/checkout@v4
|
||||||
- name: Download server dist
|
- name: Download server dist
|
||||||
@@ -187,25 +196,6 @@ jobs:
|
|||||||
with:
|
with:
|
||||||
name: server-dist
|
name: server-dist
|
||||||
path: ./packages/backend/server/dist
|
path: ./packages/backend/server/dist
|
||||||
- name: Download server-native.node
|
|
||||||
uses: actions/download-artifact@v4
|
|
||||||
with:
|
|
||||||
name: server-native.node
|
|
||||||
path: ./packages/backend/server
|
|
||||||
- name: Download server-native.node arm64
|
|
||||||
uses: actions/download-artifact@v4
|
|
||||||
with:
|
|
||||||
name: server-native.arm64.node
|
|
||||||
path: ./packages/backend/native
|
|
||||||
- name: Download server-native.node arm64
|
|
||||||
uses: actions/download-artifact@v4
|
|
||||||
with:
|
|
||||||
name: server-native.armv7.node
|
|
||||||
path: .
|
|
||||||
- name: move server-native files
|
|
||||||
run: |
|
|
||||||
mv ./packages/backend/native/server-native.node ./packages/backend/server/server-native.arm64.node
|
|
||||||
mv server-native.node ./packages/backend/server/server-native.armv7.node
|
|
||||||
- name: Setup env
|
- name: Setup env
|
||||||
run: |
|
run: |
|
||||||
echo "GIT_SHORT_HASH=$(git rev-parse --short HEAD)" >> "$GITHUB_ENV"
|
echo "GIT_SHORT_HASH=$(git rev-parse --short HEAD)" >> "$GITHUB_ENV"
|
||||||
|
|||||||
@@ -582,7 +582,7 @@ jobs:
|
|||||||
uses: actions/download-artifact@v4
|
uses: actions/download-artifact@v4
|
||||||
with:
|
with:
|
||||||
name: server-native.node
|
name: server-native.node
|
||||||
path: ./packages/backend/server
|
path: ./packages/backend/native
|
||||||
|
|
||||||
- name: Prepare Server Test Environment
|
- name: Prepare Server Test Environment
|
||||||
uses: ./.github/actions/server-test-env
|
uses: ./.github/actions/server-test-env
|
||||||
@@ -644,7 +644,7 @@ jobs:
|
|||||||
uses: actions/download-artifact@v4
|
uses: actions/download-artifact@v4
|
||||||
with:
|
with:
|
||||||
name: server-native.node
|
name: server-native.node
|
||||||
path: ./packages/backend/server
|
path: ./packages/backend/native
|
||||||
|
|
||||||
- name: Prepare Server Test Environment
|
- name: Prepare Server Test Environment
|
||||||
uses: ./.github/actions/server-test-env
|
uses: ./.github/actions/server-test-env
|
||||||
@@ -661,6 +661,142 @@ jobs:
|
|||||||
name: affine
|
name: affine
|
||||||
fail_ci_if_error: false
|
fail_ci_if_error: false
|
||||||
|
|
||||||
|
miri:
|
||||||
|
name: miri code check
|
||||||
|
runs-on: ubuntu-latest
|
||||||
|
needs:
|
||||||
|
- optimize_ci
|
||||||
|
if: needs.optimize_ci.outputs.skip == 'false'
|
||||||
|
env:
|
||||||
|
RUST_BACKTRACE: full
|
||||||
|
CARGO_TERM_COLOR: always
|
||||||
|
MIRIFLAGS: -Zmiri-backtrace=full -Zmiri-tree-borrows
|
||||||
|
steps:
|
||||||
|
- uses: actions/checkout@v4
|
||||||
|
|
||||||
|
- name: Setup Rust
|
||||||
|
uses: dtolnay/rust-toolchain@stable
|
||||||
|
with:
|
||||||
|
toolchain: nightly
|
||||||
|
components: miri
|
||||||
|
- name: Install latest nextest release
|
||||||
|
uses: taiki-e/install-action@nextest
|
||||||
|
|
||||||
|
- name: Miri Code Check
|
||||||
|
continue-on-error: true
|
||||||
|
run: |
|
||||||
|
cargo +nightly miri nextest run -p y-octo -j4
|
||||||
|
|
||||||
|
loom:
|
||||||
|
name: loom thread test
|
||||||
|
runs-on: ubuntu-latest
|
||||||
|
needs:
|
||||||
|
- optimize_ci
|
||||||
|
if: needs.optimize_ci.outputs.skip == 'false'
|
||||||
|
env:
|
||||||
|
RUSTFLAGS: --cfg loom
|
||||||
|
RUST_BACKTRACE: full
|
||||||
|
CARGO_TERM_COLOR: always
|
||||||
|
steps:
|
||||||
|
- uses: actions/checkout@v4
|
||||||
|
|
||||||
|
- name: Setup Rust
|
||||||
|
uses: dtolnay/rust-toolchain@stable
|
||||||
|
with:
|
||||||
|
toolchain: stable
|
||||||
|
- name: Install latest nextest release
|
||||||
|
uses: taiki-e/install-action@nextest
|
||||||
|
|
||||||
|
- name: Loom Thread Test
|
||||||
|
run: |
|
||||||
|
cargo nextest run -p y-octo --lib
|
||||||
|
|
||||||
|
fuzzing:
|
||||||
|
name: fuzzing
|
||||||
|
runs-on: ubuntu-latest
|
||||||
|
needs:
|
||||||
|
- optimize_ci
|
||||||
|
if: needs.optimize_ci.outputs.skip == 'false'
|
||||||
|
env:
|
||||||
|
RUSTFLAGS: -D warnings
|
||||||
|
CARGO_TERM_COLOR: always
|
||||||
|
steps:
|
||||||
|
- uses: actions/checkout@v4
|
||||||
|
|
||||||
|
- name: Setup Rust
|
||||||
|
uses: dtolnay/rust-toolchain@stable
|
||||||
|
with:
|
||||||
|
toolchain: nightly
|
||||||
|
|
||||||
|
- name: fuzzing
|
||||||
|
working-directory: ./packages/common/y-octo/utils
|
||||||
|
run: |
|
||||||
|
cargo install cargo-fuzz
|
||||||
|
cargo +nightly fuzz run apply_update -- -max_total_time=30
|
||||||
|
cargo +nightly fuzz run codec_doc_any_struct -- -max_total_time=30
|
||||||
|
cargo +nightly fuzz run codec_doc_any -- -max_total_time=30
|
||||||
|
cargo +nightly fuzz run decode_bytes -- -max_total_time=30
|
||||||
|
cargo +nightly fuzz run i32_decode -- -max_total_time=30
|
||||||
|
cargo +nightly fuzz run i32_encode -- -max_total_time=30
|
||||||
|
cargo +nightly fuzz run ins_del_text -- -max_total_time=30
|
||||||
|
cargo +nightly fuzz run sync_message -- -max_total_time=30
|
||||||
|
cargo +nightly fuzz run u64_decode -- -max_total_time=30
|
||||||
|
cargo +nightly fuzz run u64_encode -- -max_total_time=30
|
||||||
|
cargo +nightly fuzz run apply_update -- -max_total_time=30
|
||||||
|
|
||||||
|
- name: upload fuzz artifacts
|
||||||
|
if: ${{ failure() }}
|
||||||
|
uses: actions/upload-artifact@v4
|
||||||
|
with:
|
||||||
|
name: fuzz-artifact
|
||||||
|
path: packages/common/y-octo/utils/fuzz/artifacts/**/*
|
||||||
|
|
||||||
|
y-octo-binding-test:
|
||||||
|
name: y-octo binding test on ${{ matrix.settings.target }}
|
||||||
|
runs-on: ${{ matrix.settings.os }}
|
||||||
|
strategy:
|
||||||
|
fail-fast: false
|
||||||
|
matrix:
|
||||||
|
settings:
|
||||||
|
- { target: 'x86_64-unknown-linux-gnu', os: 'ubuntu-latest' }
|
||||||
|
- { target: 'aarch64-unknown-linux-gnu', os: 'ubuntu-24.04-arm' }
|
||||||
|
- { target: 'x86_64-apple-darwin', os: 'macos-13' }
|
||||||
|
- { target: 'aarch64-apple-darwin', os: 'macos-latest' }
|
||||||
|
- { target: 'x86_64-pc-windows-msvc', os: 'windows-latest' }
|
||||||
|
- { target: 'aarch64-pc-windows-msvc', os: 'windows-11-arm' }
|
||||||
|
needs:
|
||||||
|
- optimize_ci
|
||||||
|
if: needs.optimize_ci.outputs.skip == 'false'
|
||||||
|
steps:
|
||||||
|
- uses: actions/checkout@v4
|
||||||
|
- name: Setup Node.js
|
||||||
|
uses: ./.github/actions/setup-node
|
||||||
|
with:
|
||||||
|
extra-flags: workspaces focus @affine-tools/cli @affine/monorepo @y-octo/node
|
||||||
|
electron-install: false
|
||||||
|
- name: Install rustup (Windows 11 ARM)
|
||||||
|
if: matrix.settings.os == 'windows-11-arm'
|
||||||
|
shell: pwsh
|
||||||
|
run: |
|
||||||
|
Invoke-WebRequest -Uri "https://static.rust-lang.org/rustup/dist/aarch64-pc-windows-msvc/rustup-init.exe" -OutFile rustup-init.exe
|
||||||
|
.\rustup-init.exe --default-toolchain none -y
|
||||||
|
"$env:USERPROFILE\.cargo\bin" | Out-File -Append -Encoding ascii $env:GITHUB_PATH
|
||||||
|
"CARGO_HOME=$env:USERPROFILE\.cargo" | Out-File -Append -Encoding ascii $env:GITHUB_ENV
|
||||||
|
- name: Install Rust (Windows 11 ARM)
|
||||||
|
if: matrix.settings.os == 'windows-11-arm'
|
||||||
|
shell: pwsh
|
||||||
|
run: |
|
||||||
|
rustup install stable
|
||||||
|
rustup target add ${{ matrix.settings.target }}
|
||||||
|
cargo --version
|
||||||
|
- name: Build Rust
|
||||||
|
uses: ./.github/actions/build-rust
|
||||||
|
with:
|
||||||
|
target: ${{ matrix.settings.target }}
|
||||||
|
package: '@y-octo/node'
|
||||||
|
- name: Run tests
|
||||||
|
run: yarn affine @y-octo/node test
|
||||||
|
|
||||||
rust-test:
|
rust-test:
|
||||||
name: Run native tests
|
name: Run native tests
|
||||||
runs-on: ubuntu-latest
|
runs-on: ubuntu-latest
|
||||||
@@ -749,7 +885,7 @@ jobs:
|
|||||||
uses: actions/download-artifact@v4
|
uses: actions/download-artifact@v4
|
||||||
with:
|
with:
|
||||||
name: server-native.node
|
name: server-native.node
|
||||||
path: ./packages/backend/server
|
path: ./packages/backend/native
|
||||||
|
|
||||||
- name: Prepare Server Test Environment
|
- name: Prepare Server Test Environment
|
||||||
if: ${{ steps.check-blocksuite-update.outputs.skip != 'true' || steps.apifilter.outputs.changed == 'true' }}
|
if: ${{ steps.check-blocksuite-update.outputs.skip != 'true' || steps.apifilter.outputs.changed == 'true' }}
|
||||||
@@ -758,6 +894,8 @@ jobs:
|
|||||||
COPILOT_GOOGLE_API_KEY: ${{ secrets.COPILOT_GOOGLE_API_KEY }}
|
COPILOT_GOOGLE_API_KEY: ${{ secrets.COPILOT_GOOGLE_API_KEY }}
|
||||||
COPILOT_FAL_API_KEY: ${{ secrets.COPILOT_FAL_API_KEY }}
|
COPILOT_FAL_API_KEY: ${{ secrets.COPILOT_FAL_API_KEY }}
|
||||||
COPILOT_PERPLEXITY_API_KEY: ${{ secrets.COPILOT_PERPLEXITY_API_KEY }}
|
COPILOT_PERPLEXITY_API_KEY: ${{ secrets.COPILOT_PERPLEXITY_API_KEY }}
|
||||||
|
COPILOT_ANTHROPIC_API_KEY: ${{ secrets.COPILOT_ANTHROPIC_API_KEY }}
|
||||||
|
COPILOT_EXA_API_KEY: ${{ secrets.COPILOT_EXA_API_KEY }}
|
||||||
uses: ./.github/actions/server-test-env
|
uses: ./.github/actions/server-test-env
|
||||||
|
|
||||||
- name: Run server tests
|
- name: Run server tests
|
||||||
@@ -846,7 +984,7 @@ jobs:
|
|||||||
uses: actions/download-artifact@v4
|
uses: actions/download-artifact@v4
|
||||||
with:
|
with:
|
||||||
name: server-native.node
|
name: server-native.node
|
||||||
path: ./packages/backend/server
|
path: ./packages/backend/native
|
||||||
|
|
||||||
- name: Prepare Server Test Environment
|
- name: Prepare Server Test Environment
|
||||||
if: ${{ steps.check-blocksuite-update.outputs.skip != 'true' || steps.e2efilter.outputs.changed == 'true' }}
|
if: ${{ steps.check-blocksuite-update.outputs.skip != 'true' || steps.e2efilter.outputs.changed == 'true' }}
|
||||||
@@ -855,6 +993,8 @@ jobs:
|
|||||||
COPILOT_GOOGLE_API_KEY: ${{ secrets.COPILOT_GOOGLE_API_KEY }}
|
COPILOT_GOOGLE_API_KEY: ${{ secrets.COPILOT_GOOGLE_API_KEY }}
|
||||||
COPILOT_FAL_API_KEY: ${{ secrets.COPILOT_FAL_API_KEY }}
|
COPILOT_FAL_API_KEY: ${{ secrets.COPILOT_FAL_API_KEY }}
|
||||||
COPILOT_PERPLEXITY_API_KEY: ${{ secrets.COPILOT_PERPLEXITY_API_KEY }}
|
COPILOT_PERPLEXITY_API_KEY: ${{ secrets.COPILOT_PERPLEXITY_API_KEY }}
|
||||||
|
COPILOT_ANTHROPIC_API_KEY: ${{ secrets.COPILOT_ANTHROPIC_API_KEY }}
|
||||||
|
COPILOT_EXA_API_KEY: ${{ secrets.COPILOT_EXA_API_KEY }}
|
||||||
uses: ./.github/actions/server-test-env
|
uses: ./.github/actions/server-test-env
|
||||||
|
|
||||||
- name: Run Copilot E2E Test ${{ matrix.shardIndex }}/${{ matrix.shardTotal }}
|
- name: Run Copilot E2E Test ${{ matrix.shardIndex }}/${{ matrix.shardTotal }}
|
||||||
@@ -941,7 +1081,7 @@ jobs:
|
|||||||
uses: actions/download-artifact@v4
|
uses: actions/download-artifact@v4
|
||||||
with:
|
with:
|
||||||
name: server-native.node
|
name: server-native.node
|
||||||
path: ./packages/backend/server
|
path: ./packages/backend/native
|
||||||
|
|
||||||
- name: Download affine.linux-x64-gnu.node
|
- name: Download affine.linux-x64-gnu.node
|
||||||
uses: actions/download-artifact@v4
|
uses: actions/download-artifact@v4
|
||||||
@@ -1185,6 +1325,10 @@ jobs:
|
|||||||
- build-server-native
|
- build-server-native
|
||||||
- build-electron-renderer
|
- build-electron-renderer
|
||||||
- native-unit-test
|
- native-unit-test
|
||||||
|
- miri
|
||||||
|
- loom
|
||||||
|
- fuzzing
|
||||||
|
- y-octo-binding-test
|
||||||
- server-test
|
- server-test
|
||||||
- server-e2e-test
|
- server-e2e-test
|
||||||
- rust-test
|
- rust-test
|
||||||
|
|||||||
@@ -73,7 +73,7 @@ jobs:
|
|||||||
uses: actions/download-artifact@v4
|
uses: actions/download-artifact@v4
|
||||||
with:
|
with:
|
||||||
name: server-native.node
|
name: server-native.node
|
||||||
path: ./packages/backend/server
|
path: ./packages/backend/native
|
||||||
|
|
||||||
- name: Prepare Server Test Environment
|
- name: Prepare Server Test Environment
|
||||||
env:
|
env:
|
||||||
@@ -81,6 +81,8 @@ jobs:
|
|||||||
COPILOT_FAL_API_KEY: ${{ secrets.COPILOT_FAL_API_KEY }}
|
COPILOT_FAL_API_KEY: ${{ secrets.COPILOT_FAL_API_KEY }}
|
||||||
COPILOT_GOOGLE_API_KEY: ${{ secrets.COPILOT_GOOGLE_API_KEY }}
|
COPILOT_GOOGLE_API_KEY: ${{ secrets.COPILOT_GOOGLE_API_KEY }}
|
||||||
COPILOT_PERPLEXITY_API_KEY: ${{ secrets.COPILOT_PERPLEXITY_API_KEY }}
|
COPILOT_PERPLEXITY_API_KEY: ${{ secrets.COPILOT_PERPLEXITY_API_KEY }}
|
||||||
|
COPILOT_ANTHROPIC_API_KEY: ${{ secrets.COPILOT_ANTHROPIC_API_KEY }}
|
||||||
|
COPILOT_EXA_API_KEY: ${{ secrets.COPILOT_EXA_API_KEY }}
|
||||||
uses: ./.github/actions/server-test-env
|
uses: ./.github/actions/server-test-env
|
||||||
|
|
||||||
- name: Run server tests
|
- name: Run server tests
|
||||||
@@ -142,7 +144,7 @@ jobs:
|
|||||||
uses: actions/download-artifact@v4
|
uses: actions/download-artifact@v4
|
||||||
with:
|
with:
|
||||||
name: server-native.node
|
name: server-native.node
|
||||||
path: ./packages/backend/server
|
path: ./packages/backend/native
|
||||||
|
|
||||||
- name: Prepare Server Test Environment
|
- name: Prepare Server Test Environment
|
||||||
env:
|
env:
|
||||||
@@ -150,6 +152,8 @@ jobs:
|
|||||||
COPILOT_FAL_API_KEY: ${{ secrets.COPILOT_FAL_API_KEY }}
|
COPILOT_FAL_API_KEY: ${{ secrets.COPILOT_FAL_API_KEY }}
|
||||||
COPILOT_GOOGLE_API_KEY: ${{ secrets.COPILOT_GOOGLE_API_KEY }}
|
COPILOT_GOOGLE_API_KEY: ${{ secrets.COPILOT_GOOGLE_API_KEY }}
|
||||||
COPILOT_PERPLEXITY_API_KEY: ${{ secrets.COPILOT_PERPLEXITY_API_KEY }}
|
COPILOT_PERPLEXITY_API_KEY: ${{ secrets.COPILOT_PERPLEXITY_API_KEY }}
|
||||||
|
COPILOT_ANTHROPIC_API_KEY: ${{ secrets.COPILOT_ANTHROPIC_API_KEY }}
|
||||||
|
COPILOT_EXA_API_KEY: ${{ secrets.COPILOT_EXA_API_KEY }}
|
||||||
uses: ./.github/actions/server-test-env
|
uses: ./.github/actions/server-test-env
|
||||||
|
|
||||||
- name: Run Copilot E2E Test ${{ matrix.shardIndex }}/${{ matrix.shardTotal }}
|
- name: Run Copilot E2E Test ${{ matrix.shardIndex }}/${{ matrix.shardTotal }}
|
||||||
|
|||||||
@@ -200,11 +200,18 @@ jobs:
|
|||||||
- build-android-web
|
- build-android-web
|
||||||
steps:
|
steps:
|
||||||
- uses: actions/checkout@v4
|
- uses: actions/checkout@v4
|
||||||
|
- name: Setup Version
|
||||||
|
id: version
|
||||||
|
uses: ./.github/actions/setup-version
|
||||||
- name: Download mobile artifact
|
- name: Download mobile artifact
|
||||||
uses: actions/download-artifact@v4
|
uses: actions/download-artifact@v4
|
||||||
with:
|
with:
|
||||||
name: android
|
name: android
|
||||||
path: packages/frontend/apps/android/dist
|
path: packages/frontend/apps/android/dist
|
||||||
|
- name: Load Google Service file
|
||||||
|
env:
|
||||||
|
DATA: ${{ secrets.FIREBASE_ANDROID_GOOGLE_SERVICE_JSON }}
|
||||||
|
run: echo $DATA | base64 -di > packages/frontend/apps/android/App/app/google-services.json
|
||||||
- name: Setup Node.js
|
- name: Setup Node.js
|
||||||
uses: ./.github/actions/setup-node
|
uses: ./.github/actions/setup-node
|
||||||
timeout-minutes: 10
|
timeout-minutes: 10
|
||||||
@@ -254,13 +261,14 @@ jobs:
|
|||||||
AFFINE_ANDROID_KEYSTORE_PASSWORD: ${{ secrets.AFFINE_ANDROID_KEYSTORE_PASSWORD }}
|
AFFINE_ANDROID_KEYSTORE_PASSWORD: ${{ secrets.AFFINE_ANDROID_KEYSTORE_PASSWORD }}
|
||||||
AFFINE_ANDROID_KEYSTORE_ALIAS_PASSWORD: ${{ secrets.AFFINE_ANDROID_KEYSTORE_ALIAS_PASSWORD }}
|
AFFINE_ANDROID_KEYSTORE_ALIAS_PASSWORD: ${{ secrets.AFFINE_ANDROID_KEYSTORE_ALIAS_PASSWORD }}
|
||||||
AFFINE_ANDROID_SIGN_KEYSTORE: ${{ secrets.AFFINE_ANDROID_SIGN_KEYSTORE }}
|
AFFINE_ANDROID_SIGN_KEYSTORE: ${{ secrets.AFFINE_ANDROID_SIGN_KEYSTORE }}
|
||||||
|
VERSION_NAME: ${{ steps.version.outputs.APP_VERSION }}
|
||||||
- name: Upload to Google Play
|
- name: Upload to Google Play
|
||||||
uses: r0adkll/upload-google-play@v1
|
uses: r0adkll/upload-google-play@v1
|
||||||
if: ${{ env.BUILD_TARGET == 'distribution' }}
|
if: ${{ env.BUILD_TARGET == 'distribution' }}
|
||||||
with:
|
with:
|
||||||
serviceAccountJson: ${{ steps.auth.outputs.credentials_file_path }}
|
serviceAccountJson: ${{ steps.auth.outputs.credentials_file_path }}
|
||||||
packageName: app.affine.pro
|
packageName: app.affine.pro
|
||||||
|
releaseName: ${{ steps.version.outputs.APP_VERSION }}
|
||||||
releaseFiles: packages/frontend/apps/android/App/app/build/outputs/bundle/${{ env.BUILD_TYPE }}Release/app-${{ env.BUILD_TYPE }}-release-signed.aab
|
releaseFiles: packages/frontend/apps/android/App/app/build/outputs/bundle/${{ env.BUILD_TYPE }}Release/app-${{ env.BUILD_TYPE }}-release-signed.aab
|
||||||
track: internal
|
track: internal
|
||||||
status: draft
|
status: draft
|
||||||
|
|||||||
+1
-1
@@ -10,6 +10,6 @@ npmAuthToken: "${NPM_TOKEN:-NONE}"
|
|||||||
|
|
||||||
npmPublishAccess: public
|
npmPublishAccess: public
|
||||||
|
|
||||||
npmPublishRegistry: "https://registry.npmjs.org"
|
npmRegistryServer: "https://registry.npmjs.org"
|
||||||
|
|
||||||
yarnPath: .yarn/releases/yarn-4.9.1.cjs
|
yarnPath: .yarn/releases/yarn-4.9.1.cjs
|
||||||
|
|||||||
Generated
+445
-19
@@ -229,6 +229,12 @@ dependencies = [
|
|||||||
"libc",
|
"libc",
|
||||||
]
|
]
|
||||||
|
|
||||||
|
[[package]]
|
||||||
|
name = "anes"
|
||||||
|
version = "0.1.6"
|
||||||
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||||
|
checksum = "4b46cbb362ab8752921c97e041f5e366ee6297bd428a31275b9fcf1e380f7299"
|
||||||
|
|
||||||
[[package]]
|
[[package]]
|
||||||
name = "anes"
|
name = "anes"
|
||||||
version = "0.2.0"
|
version = "0.2.0"
|
||||||
@@ -300,12 +306,28 @@ dependencies = [
|
|||||||
"derive_arbitrary",
|
"derive_arbitrary",
|
||||||
]
|
]
|
||||||
|
|
||||||
|
[[package]]
|
||||||
|
name = "arc-swap"
|
||||||
|
version = "1.7.1"
|
||||||
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||||
|
checksum = "69f7f8c3906b62b754cd5326047894316021dcfe5a194c8ea52bdd94934a3457"
|
||||||
|
|
||||||
[[package]]
|
[[package]]
|
||||||
name = "arrayvec"
|
name = "arrayvec"
|
||||||
version = "0.7.6"
|
version = "0.7.6"
|
||||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||||
checksum = "7c02d123df017efcdfbd739ef81735b36c5ba83ec3c59c80a9d7ecc718f92e50"
|
checksum = "7c02d123df017efcdfbd739ef81735b36c5ba83ec3c59c80a9d7ecc718f92e50"
|
||||||
|
|
||||||
|
[[package]]
|
||||||
|
name = "assert-json-diff"
|
||||||
|
version = "2.0.2"
|
||||||
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||||
|
checksum = "47e4f2b81832e72834d7518d8487a0396a28cc408186a2e8854c0f98011faf12"
|
||||||
|
dependencies = [
|
||||||
|
"serde",
|
||||||
|
"serde_json",
|
||||||
|
]
|
||||||
|
|
||||||
[[package]]
|
[[package]]
|
||||||
name = "async-compat"
|
name = "async-compat"
|
||||||
version = "0.2.4"
|
version = "0.2.4"
|
||||||
@@ -331,6 +353,17 @@ dependencies = [
|
|||||||
"pin-project-lite",
|
"pin-project-lite",
|
||||||
]
|
]
|
||||||
|
|
||||||
|
[[package]]
|
||||||
|
name = "async-trait"
|
||||||
|
version = "0.1.88"
|
||||||
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||||
|
checksum = "e539d3fca749fcee5236ab05e93a52867dd549cc157c8cb7f99595f3cedffdb5"
|
||||||
|
dependencies = [
|
||||||
|
"proc-macro2",
|
||||||
|
"quote",
|
||||||
|
"syn 2.0.100",
|
||||||
|
]
|
||||||
|
|
||||||
[[package]]
|
[[package]]
|
||||||
name = "atoi"
|
name = "atoi"
|
||||||
version = "2.0.0"
|
version = "2.0.0"
|
||||||
@@ -340,6 +373,12 @@ dependencies = [
|
|||||||
"num-traits",
|
"num-traits",
|
||||||
]
|
]
|
||||||
|
|
||||||
|
[[package]]
|
||||||
|
name = "atomic_refcell"
|
||||||
|
version = "0.1.13"
|
||||||
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||||
|
checksum = "41e67cd8309bbd06cd603a9e693a784ac2e5d1e955f11286e355089fcab3047c"
|
||||||
|
|
||||||
[[package]]
|
[[package]]
|
||||||
name = "auto_enums"
|
name = "auto_enums"
|
||||||
version = "0.8.7"
|
version = "0.8.7"
|
||||||
@@ -434,7 +473,16 @@ version = "0.5.3"
|
|||||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||||
checksum = "0700ddab506f33b20a03b13996eccd309a48e5ff77d0d95926aa0210fb4e95f1"
|
checksum = "0700ddab506f33b20a03b13996eccd309a48e5ff77d0d95926aa0210fb4e95f1"
|
||||||
dependencies = [
|
dependencies = [
|
||||||
"bit-vec",
|
"bit-vec 0.6.3",
|
||||||
|
]
|
||||||
|
|
||||||
|
[[package]]
|
||||||
|
name = "bit-set"
|
||||||
|
version = "0.8.0"
|
||||||
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||||
|
checksum = "08807e080ed7f9d5433fa9b275196cfc35414f66a0c79d864dc51a0d825231a3"
|
||||||
|
dependencies = [
|
||||||
|
"bit-vec 0.8.0",
|
||||||
]
|
]
|
||||||
|
|
||||||
[[package]]
|
[[package]]
|
||||||
@@ -443,6 +491,12 @@ version = "0.6.3"
|
|||||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||||
checksum = "349f9b6a179ed607305526ca489b34ad0a41aed5f7980fa90eb03160b69598fb"
|
checksum = "349f9b6a179ed607305526ca489b34ad0a41aed5f7980fa90eb03160b69598fb"
|
||||||
|
|
||||||
|
[[package]]
|
||||||
|
name = "bit-vec"
|
||||||
|
version = "0.8.0"
|
||||||
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||||
|
checksum = "5e764a1d40d510daf35e07be9eb06e75770908c27d411ee6c92109c9840eaaf7"
|
||||||
|
|
||||||
[[package]]
|
[[package]]
|
||||||
name = "bitflags"
|
name = "bitflags"
|
||||||
version = "1.3.2"
|
version = "1.3.2"
|
||||||
@@ -490,9 +544,9 @@ dependencies = [
|
|||||||
|
|
||||||
[[package]]
|
[[package]]
|
||||||
name = "block2"
|
name = "block2"
|
||||||
version = "0.6.0"
|
version = "0.6.1"
|
||||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||||
checksum = "1d59b4c170e16f0405a2e95aff44432a0d41aa97675f3d52623effe95792a037"
|
checksum = "340d2f0bdb2a43c1d3cd40513185b2bd7def0aa1052f956455114bc98f82dcf2"
|
||||||
dependencies = [
|
dependencies = [
|
||||||
"objc2",
|
"objc2",
|
||||||
]
|
]
|
||||||
@@ -943,13 +997,49 @@ dependencies = [
|
|||||||
"cfg-if",
|
"cfg-if",
|
||||||
]
|
]
|
||||||
|
|
||||||
|
[[package]]
|
||||||
|
name = "criterion"
|
||||||
|
version = "0.5.1"
|
||||||
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||||
|
checksum = "f2b12d017a929603d80db1831cd3a24082f8137ce19c69e6447f54f5fc8d692f"
|
||||||
|
dependencies = [
|
||||||
|
"anes 0.1.6",
|
||||||
|
"cast",
|
||||||
|
"ciborium",
|
||||||
|
"clap",
|
||||||
|
"criterion-plot",
|
||||||
|
"is-terminal",
|
||||||
|
"itertools 0.10.5",
|
||||||
|
"num-traits",
|
||||||
|
"once_cell",
|
||||||
|
"oorandom",
|
||||||
|
"plotters",
|
||||||
|
"rayon",
|
||||||
|
"regex",
|
||||||
|
"serde",
|
||||||
|
"serde_derive",
|
||||||
|
"serde_json",
|
||||||
|
"tinytemplate",
|
||||||
|
"walkdir",
|
||||||
|
]
|
||||||
|
|
||||||
|
[[package]]
|
||||||
|
name = "criterion-plot"
|
||||||
|
version = "0.5.0"
|
||||||
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||||
|
checksum = "6b50826342786a51a89e2da3a28f1c32b06e387201bc2d19791f622c673706b1"
|
||||||
|
dependencies = [
|
||||||
|
"cast",
|
||||||
|
"itertools 0.10.5",
|
||||||
|
]
|
||||||
|
|
||||||
[[package]]
|
[[package]]
|
||||||
name = "criterion2"
|
name = "criterion2"
|
||||||
version = "3.0.0"
|
version = "3.0.0"
|
||||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||||
checksum = "7b43b9cdbf592c78d882f2a3b9e6ebe8aedc749ef84915103a0248802ce2f6b3"
|
checksum = "7b43b9cdbf592c78d882f2a3b9e6ebe8aedc749ef84915103a0248802ce2f6b3"
|
||||||
dependencies = [
|
dependencies = [
|
||||||
"anes",
|
"anes 0.2.0",
|
||||||
"bpaf",
|
"bpaf",
|
||||||
"cast",
|
"cast",
|
||||||
"ciborium",
|
"ciborium",
|
||||||
@@ -1106,9 +1196,9 @@ checksum = "bd0c93bb4b0c6d9b77f4435b0ae98c24d17f1c45b2ff844c6151a07256ca923b"
|
|||||||
|
|
||||||
[[package]]
|
[[package]]
|
||||||
name = "dispatch2"
|
name = "dispatch2"
|
||||||
version = "0.2.0"
|
version = "0.3.0"
|
||||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||||
checksum = "1a0d569e003ff27784e0e14e4a594048698e0c0f0b66cabcb51511be55a7caa0"
|
checksum = "89a09f22a6c6069a18470eb92d2298acf25463f14256d24778e1230d789a2aec"
|
||||||
dependencies = [
|
dependencies = [
|
||||||
"bitflags 2.9.0",
|
"bitflags 2.9.0",
|
||||||
"block2",
|
"block2",
|
||||||
@@ -1270,7 +1360,7 @@ version = "0.13.0"
|
|||||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||||
checksum = "531e46835a22af56d1e3b66f04844bed63158bc094a628bec1d321d9b4c44bf2"
|
checksum = "531e46835a22af56d1e3b66f04844bed63158bc094a628bec1d321d9b4c44bf2"
|
||||||
dependencies = [
|
dependencies = [
|
||||||
"bit-set",
|
"bit-set 0.5.3",
|
||||||
"regex-automata 0.4.9",
|
"regex-automata 0.4.9",
|
||||||
"regex-syntax 0.8.5",
|
"regex-syntax 0.8.5",
|
||||||
]
|
]
|
||||||
@@ -1280,6 +1370,9 @@ name = "fastrand"
|
|||||||
version = "2.3.0"
|
version = "2.3.0"
|
||||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||||
checksum = "37909eebbb50d72f9059c3b6d82c0463f2ff062c9e95845c43a6c9c0355411be"
|
checksum = "37909eebbb50d72f9059c3b6d82c0463f2ff062c9e95845c43a6c9c0355411be"
|
||||||
|
dependencies = [
|
||||||
|
"getrandom 0.2.15",
|
||||||
|
]
|
||||||
|
|
||||||
[[package]]
|
[[package]]
|
||||||
name = "file-format"
|
name = "file-format"
|
||||||
@@ -1482,6 +1575,19 @@ dependencies = [
|
|||||||
"version_check",
|
"version_check",
|
||||||
]
|
]
|
||||||
|
|
||||||
|
[[package]]
|
||||||
|
name = "getrandom"
|
||||||
|
version = "0.1.16"
|
||||||
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||||
|
checksum = "8fc3cb4d91f53b50155bdcfd23f6a4c39ae1969c2ae85982b135750cccaf5fce"
|
||||||
|
dependencies = [
|
||||||
|
"cfg-if",
|
||||||
|
"js-sys",
|
||||||
|
"libc",
|
||||||
|
"wasi 0.9.0+wasi-snapshot-preview1",
|
||||||
|
"wasm-bindgen",
|
||||||
|
]
|
||||||
|
|
||||||
[[package]]
|
[[package]]
|
||||||
name = "getrandom"
|
name = "getrandom"
|
||||||
version = "0.2.15"
|
version = "0.2.15"
|
||||||
@@ -1489,8 +1595,10 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
|
|||||||
checksum = "c4567c8db10ae91089c99af84c68c38da3ec2f087c3f82960bcdbf3656b6f4d7"
|
checksum = "c4567c8db10ae91089c99af84c68c38da3ec2f087c3f82960bcdbf3656b6f4d7"
|
||||||
dependencies = [
|
dependencies = [
|
||||||
"cfg-if",
|
"cfg-if",
|
||||||
|
"js-sys",
|
||||||
"libc",
|
"libc",
|
||||||
"wasi 0.11.0+wasi-snapshot-preview1",
|
"wasi 0.11.0+wasi-snapshot-preview1",
|
||||||
|
"wasm-bindgen",
|
||||||
]
|
]
|
||||||
|
|
||||||
[[package]]
|
[[package]]
|
||||||
@@ -1599,6 +1707,12 @@ version = "0.5.0"
|
|||||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||||
checksum = "2304e00983f87ffb38b55b444b5e3b60a884b5d30c0fca7d82fe33449bbe55ea"
|
checksum = "2304e00983f87ffb38b55b444b5e3b60a884b5d30c0fca7d82fe33449bbe55ea"
|
||||||
|
|
||||||
|
[[package]]
|
||||||
|
name = "hermit-abi"
|
||||||
|
version = "0.5.0"
|
||||||
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||||
|
checksum = "fbd780fe5cc30f81464441920d82ac8740e2e46b29a6fad543ddd075229ce37e"
|
||||||
|
|
||||||
[[package]]
|
[[package]]
|
||||||
name = "hex"
|
name = "hex"
|
||||||
version = "0.4.3"
|
version = "0.4.3"
|
||||||
@@ -1885,12 +1999,32 @@ dependencies = [
|
|||||||
"libc",
|
"libc",
|
||||||
]
|
]
|
||||||
|
|
||||||
|
[[package]]
|
||||||
|
name = "is-terminal"
|
||||||
|
version = "0.4.16"
|
||||||
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||||
|
checksum = "e04d7f318608d35d4b61ddd75cbdaee86b023ebe2bd5a66ee0915f0bf93095a9"
|
||||||
|
dependencies = [
|
||||||
|
"hermit-abi",
|
||||||
|
"libc",
|
||||||
|
"windows-sys 0.59.0",
|
||||||
|
]
|
||||||
|
|
||||||
[[package]]
|
[[package]]
|
||||||
name = "is_terminal_polyfill"
|
name = "is_terminal_polyfill"
|
||||||
version = "1.70.1"
|
version = "1.70.1"
|
||||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||||
checksum = "7943c866cc5cd64cbc25b2e01621d07fa8eb2a1a23160ee81ce38704e97b8ecf"
|
checksum = "7943c866cc5cd64cbc25b2e01621d07fa8eb2a1a23160ee81ce38704e97b8ecf"
|
||||||
|
|
||||||
|
[[package]]
|
||||||
|
name = "itertools"
|
||||||
|
version = "0.10.5"
|
||||||
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||||
|
checksum = "b0fd2260e829bddf4cb6ea802289de2f86d6a7a690192fbe91b3f46e0f2c8473"
|
||||||
|
dependencies = [
|
||||||
|
"either",
|
||||||
|
]
|
||||||
|
|
||||||
[[package]]
|
[[package]]
|
||||||
name = "itertools"
|
name = "itertools"
|
||||||
version = "0.13.0"
|
version = "0.13.0"
|
||||||
@@ -1974,6 +2108,17 @@ dependencies = [
|
|||||||
"leak",
|
"leak",
|
||||||
]
|
]
|
||||||
|
|
||||||
|
[[package]]
|
||||||
|
name = "lib0"
|
||||||
|
version = "0.16.5"
|
||||||
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||||
|
checksum = "daf23122cb1c970b77ea6030eac5e328669415b65d2ab245c99bfb110f9d62dc"
|
||||||
|
dependencies = [
|
||||||
|
"serde",
|
||||||
|
"serde_json",
|
||||||
|
"thiserror 1.0.69",
|
||||||
|
]
|
||||||
|
|
||||||
[[package]]
|
[[package]]
|
||||||
name = "libc"
|
name = "libc"
|
||||||
version = "0.2.172"
|
version = "0.2.172"
|
||||||
@@ -2108,7 +2253,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
|
|||||||
checksum = "7a2629bb1404f3d34c2e921f21fd34ba00b206124c81f65c50b43b6aaefeb016"
|
checksum = "7a2629bb1404f3d34c2e921f21fd34ba00b206124c81f65c50b43b6aaefeb016"
|
||||||
dependencies = [
|
dependencies = [
|
||||||
"log",
|
"log",
|
||||||
"phf",
|
"phf 0.10.1",
|
||||||
"phf_codegen",
|
"phf_codegen",
|
||||||
"string_cache",
|
"string_cache",
|
||||||
"string_cache_codegen",
|
"string_cache_codegen",
|
||||||
@@ -2416,9 +2561,9 @@ dependencies = [
|
|||||||
|
|
||||||
[[package]]
|
[[package]]
|
||||||
name = "objc2"
|
name = "objc2"
|
||||||
version = "0.6.0"
|
version = "0.6.1"
|
||||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||||
checksum = "3531f65190d9cff863b77a99857e74c314dd16bf56c538c4b57c7cbc3f3a6e59"
|
checksum = "88c6597e14493ab2e44ce58f2fdecf095a51f12ca57bec060a11c57332520551"
|
||||||
dependencies = [
|
dependencies = [
|
||||||
"objc2-encode",
|
"objc2-encode",
|
||||||
]
|
]
|
||||||
@@ -2484,12 +2629,13 @@ checksum = "d6790f58c7ff633d8771f42965289203411a5e5c68388703c06e14f24770b41e"
|
|||||||
|
|
||||||
[[package]]
|
[[package]]
|
||||||
name = "ordered-float"
|
name = "ordered-float"
|
||||||
version = "4.6.0"
|
version = "5.0.0"
|
||||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||||
checksum = "7bb71e1b3fa6ca1c61f383464aaf2bb0e2f8e772a1f01d486832464de363b951"
|
checksum = "e2c1f9f56e534ac6a9b8a4600bdf0f530fb393b5f393e7b4d03489c3cf0c3f01"
|
||||||
dependencies = [
|
dependencies = [
|
||||||
"arbitrary",
|
"arbitrary",
|
||||||
"num-traits",
|
"num-traits",
|
||||||
|
"proptest",
|
||||||
]
|
]
|
||||||
|
|
||||||
[[package]]
|
[[package]]
|
||||||
@@ -2598,6 +2744,16 @@ dependencies = [
|
|||||||
"phf_shared 0.10.0",
|
"phf_shared 0.10.0",
|
||||||
]
|
]
|
||||||
|
|
||||||
|
[[package]]
|
||||||
|
name = "phf"
|
||||||
|
version = "0.11.3"
|
||||||
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||||
|
checksum = "1fd6780a80ae0c52cc120a26a1a42c1ae51b247a253e4e06113d23d2c2edd078"
|
||||||
|
dependencies = [
|
||||||
|
"phf_macros",
|
||||||
|
"phf_shared 0.11.3",
|
||||||
|
]
|
||||||
|
|
||||||
[[package]]
|
[[package]]
|
||||||
name = "phf_codegen"
|
name = "phf_codegen"
|
||||||
version = "0.10.0"
|
version = "0.10.0"
|
||||||
@@ -2628,6 +2784,19 @@ dependencies = [
|
|||||||
"rand 0.8.5",
|
"rand 0.8.5",
|
||||||
]
|
]
|
||||||
|
|
||||||
|
[[package]]
|
||||||
|
name = "phf_macros"
|
||||||
|
version = "0.11.3"
|
||||||
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||||
|
checksum = "f84ac04429c13a7ff43785d75ad27569f2951ce0ffd30a3321230db2fc727216"
|
||||||
|
dependencies = [
|
||||||
|
"phf_generator 0.11.3",
|
||||||
|
"phf_shared 0.11.3",
|
||||||
|
"proc-macro2",
|
||||||
|
"quote",
|
||||||
|
"syn 2.0.100",
|
||||||
|
]
|
||||||
|
|
||||||
[[package]]
|
[[package]]
|
||||||
name = "phf_shared"
|
name = "phf_shared"
|
||||||
version = "0.10.0"
|
version = "0.10.0"
|
||||||
@@ -2691,6 +2860,34 @@ version = "0.2.3"
|
|||||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||||
checksum = "b4596b6d070b27117e987119b4dac604f3c58cfb0b191112e24771b2faeac1a6"
|
checksum = "b4596b6d070b27117e987119b4dac604f3c58cfb0b191112e24771b2faeac1a6"
|
||||||
|
|
||||||
|
[[package]]
|
||||||
|
name = "plotters"
|
||||||
|
version = "0.3.7"
|
||||||
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||||
|
checksum = "5aeb6f403d7a4911efb1e33402027fc44f29b5bf6def3effcc22d7bb75f2b747"
|
||||||
|
dependencies = [
|
||||||
|
"num-traits",
|
||||||
|
"plotters-backend",
|
||||||
|
"plotters-svg",
|
||||||
|
"wasm-bindgen",
|
||||||
|
"web-sys",
|
||||||
|
]
|
||||||
|
|
||||||
|
[[package]]
|
||||||
|
name = "plotters-backend"
|
||||||
|
version = "0.3.7"
|
||||||
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||||
|
checksum = "df42e13c12958a16b3f7f4386b9ab1f3e7933914ecea48da7139435263a4172a"
|
||||||
|
|
||||||
|
[[package]]
|
||||||
|
name = "plotters-svg"
|
||||||
|
version = "0.3.7"
|
||||||
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||||
|
checksum = "51bae2ac328883f7acdfea3d66a7c35751187f870bc81f94563733a154d7a670"
|
||||||
|
dependencies = [
|
||||||
|
"plotters-backend",
|
||||||
|
]
|
||||||
|
|
||||||
[[package]]
|
[[package]]
|
||||||
name = "pom"
|
name = "pom"
|
||||||
version = "1.1.0"
|
version = "1.1.0"
|
||||||
@@ -2745,6 +2942,37 @@ dependencies = [
|
|||||||
"unicode-ident",
|
"unicode-ident",
|
||||||
]
|
]
|
||||||
|
|
||||||
|
[[package]]
|
||||||
|
name = "proptest"
|
||||||
|
version = "1.6.0"
|
||||||
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||||
|
checksum = "14cae93065090804185d3b75f0bf93b8eeda30c7a9b4a33d3bdb3988d6229e50"
|
||||||
|
dependencies = [
|
||||||
|
"bit-set 0.8.0",
|
||||||
|
"bit-vec 0.8.0",
|
||||||
|
"bitflags 2.9.0",
|
||||||
|
"lazy_static",
|
||||||
|
"num-traits",
|
||||||
|
"rand 0.8.5",
|
||||||
|
"rand_chacha 0.3.1",
|
||||||
|
"rand_xorshift",
|
||||||
|
"regex-syntax 0.8.5",
|
||||||
|
"rusty-fork",
|
||||||
|
"tempfile",
|
||||||
|
"unarray",
|
||||||
|
]
|
||||||
|
|
||||||
|
[[package]]
|
||||||
|
name = "proptest-derive"
|
||||||
|
version = "0.5.1"
|
||||||
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||||
|
checksum = "4ee1c9ac207483d5e7db4940700de86a9aae46ef90c48b57f99fe7edb8345e49"
|
||||||
|
dependencies = [
|
||||||
|
"proc-macro2",
|
||||||
|
"quote",
|
||||||
|
"syn 2.0.100",
|
||||||
|
]
|
||||||
|
|
||||||
[[package]]
|
[[package]]
|
||||||
name = "pulldown-cmark"
|
name = "pulldown-cmark"
|
||||||
version = "0.13.0"
|
version = "0.13.0"
|
||||||
@@ -2756,6 +2984,12 @@ dependencies = [
|
|||||||
"unicase",
|
"unicase",
|
||||||
]
|
]
|
||||||
|
|
||||||
|
[[package]]
|
||||||
|
name = "quick-error"
|
||||||
|
version = "1.2.3"
|
||||||
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||||
|
checksum = "a1d01941d82fa2ab50be1e79e6714289dd7cde78eba4c074bc5a4374f650dfe0"
|
||||||
|
|
||||||
[[package]]
|
[[package]]
|
||||||
name = "quote"
|
name = "quote"
|
||||||
version = "1.0.40"
|
version = "1.0.40"
|
||||||
@@ -2777,6 +3011,19 @@ version = "0.7.0"
|
|||||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||||
checksum = "dc33ff2d4973d518d823d61aa239014831e521c75da58e3df4840d3f47749d09"
|
checksum = "dc33ff2d4973d518d823d61aa239014831e521c75da58e3df4840d3f47749d09"
|
||||||
|
|
||||||
|
[[package]]
|
||||||
|
name = "rand"
|
||||||
|
version = "0.7.3"
|
||||||
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||||
|
checksum = "6a6b1679d49b24bbfe0c803429aa1874472f50d9b363131f0e89fc356b544d03"
|
||||||
|
dependencies = [
|
||||||
|
"getrandom 0.1.16",
|
||||||
|
"libc",
|
||||||
|
"rand_chacha 0.2.2",
|
||||||
|
"rand_core 0.5.1",
|
||||||
|
"rand_hc",
|
||||||
|
]
|
||||||
|
|
||||||
[[package]]
|
[[package]]
|
||||||
name = "rand"
|
name = "rand"
|
||||||
version = "0.8.5"
|
version = "0.8.5"
|
||||||
@@ -2799,6 +3046,16 @@ dependencies = [
|
|||||||
"zerocopy 0.8.24",
|
"zerocopy 0.8.24",
|
||||||
]
|
]
|
||||||
|
|
||||||
|
[[package]]
|
||||||
|
name = "rand_chacha"
|
||||||
|
version = "0.2.2"
|
||||||
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||||
|
checksum = "f4c8ed856279c9737206bf725bf36935d8666ead7aa69b52be55af369d193402"
|
||||||
|
dependencies = [
|
||||||
|
"ppv-lite86",
|
||||||
|
"rand_core 0.5.1",
|
||||||
|
]
|
||||||
|
|
||||||
[[package]]
|
[[package]]
|
||||||
name = "rand_chacha"
|
name = "rand_chacha"
|
||||||
version = "0.3.1"
|
version = "0.3.1"
|
||||||
@@ -2819,6 +3076,15 @@ dependencies = [
|
|||||||
"rand_core 0.9.3",
|
"rand_core 0.9.3",
|
||||||
]
|
]
|
||||||
|
|
||||||
|
[[package]]
|
||||||
|
name = "rand_core"
|
||||||
|
version = "0.5.1"
|
||||||
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||||
|
checksum = "90bde5296fc891b0cef12a6d03ddccc162ce7b2aff54160af9338f8d40df6d19"
|
||||||
|
dependencies = [
|
||||||
|
"getrandom 0.1.16",
|
||||||
|
]
|
||||||
|
|
||||||
[[package]]
|
[[package]]
|
||||||
name = "rand_core"
|
name = "rand_core"
|
||||||
version = "0.6.4"
|
version = "0.6.4"
|
||||||
@@ -2839,12 +3105,30 @@ dependencies = [
|
|||||||
|
|
||||||
[[package]]
|
[[package]]
|
||||||
name = "rand_distr"
|
name = "rand_distr"
|
||||||
version = "0.4.3"
|
version = "0.5.1"
|
||||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||||
checksum = "32cb0b9bc82b0a0876c2dd994a7e7a2683d3e7390ca40e6886785ef0c7e3ee31"
|
checksum = "6a8615d50dcf34fa31f7ab52692afec947c4dd0ab803cc87cb3b0b4570ff7463"
|
||||||
dependencies = [
|
dependencies = [
|
||||||
"num-traits",
|
"num-traits",
|
||||||
"rand 0.8.5",
|
"rand 0.9.0",
|
||||||
|
]
|
||||||
|
|
||||||
|
[[package]]
|
||||||
|
name = "rand_hc"
|
||||||
|
version = "0.2.0"
|
||||||
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||||
|
checksum = "ca3129af7b92a17112d59ad498c6f81eaf463253766b90396d39ea7a39d6613c"
|
||||||
|
dependencies = [
|
||||||
|
"rand_core 0.5.1",
|
||||||
|
]
|
||||||
|
|
||||||
|
[[package]]
|
||||||
|
name = "rand_xorshift"
|
||||||
|
version = "0.3.0"
|
||||||
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||||
|
checksum = "d25bf25ec5ae4a3f1b92f929810509a2f53d7dca2f50b794ff57e3face536c8f"
|
||||||
|
dependencies = [
|
||||||
|
"rand_core 0.6.4",
|
||||||
]
|
]
|
||||||
|
|
||||||
[[package]]
|
[[package]]
|
||||||
@@ -3125,6 +3409,18 @@ version = "1.0.20"
|
|||||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||||
checksum = "eded382c5f5f786b989652c49544c4877d9f015cc22e145a5ea8ea66c2921cd2"
|
checksum = "eded382c5f5f786b989652c49544c4877d9f015cc22e145a5ea8ea66c2921cd2"
|
||||||
|
|
||||||
|
[[package]]
|
||||||
|
name = "rusty-fork"
|
||||||
|
version = "0.3.0"
|
||||||
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||||
|
checksum = "cb3dcc6e454c328bb824492db107ab7c0ae8fcffe4ad210136ef014458c1bc4f"
|
||||||
|
dependencies = [
|
||||||
|
"fnv",
|
||||||
|
"quick-error",
|
||||||
|
"tempfile",
|
||||||
|
"wait-timeout",
|
||||||
|
]
|
||||||
|
|
||||||
[[package]]
|
[[package]]
|
||||||
name = "ryu"
|
name = "ryu"
|
||||||
version = "1.0.20"
|
version = "1.0.20"
|
||||||
@@ -3329,6 +3625,15 @@ dependencies = [
|
|||||||
"autocfg",
|
"autocfg",
|
||||||
]
|
]
|
||||||
|
|
||||||
|
[[package]]
|
||||||
|
name = "smallstr"
|
||||||
|
version = "0.3.0"
|
||||||
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||||
|
checksum = "63b1aefdf380735ff8ded0b15f31aab05daf1f70216c01c02a12926badd1df9d"
|
||||||
|
dependencies = [
|
||||||
|
"smallvec",
|
||||||
|
]
|
||||||
|
|
||||||
[[package]]
|
[[package]]
|
||||||
name = "smallvec"
|
name = "smallvec"
|
||||||
version = "1.15.0"
|
version = "1.15.0"
|
||||||
@@ -4035,6 +4340,16 @@ dependencies = [
|
|||||||
"zerovec",
|
"zerovec",
|
||||||
]
|
]
|
||||||
|
|
||||||
|
[[package]]
|
||||||
|
name = "tinytemplate"
|
||||||
|
version = "1.2.1"
|
||||||
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||||
|
checksum = "be4d6b5f19ff7664e8c98d03e2139cb510db9b0a60b55f8e8709b689d939b6bc"
|
||||||
|
dependencies = [
|
||||||
|
"serde",
|
||||||
|
"serde_json",
|
||||||
|
]
|
||||||
|
|
||||||
[[package]]
|
[[package]]
|
||||||
name = "tinyvec"
|
name = "tinyvec"
|
||||||
version = "1.9.0"
|
version = "1.9.0"
|
||||||
@@ -4333,6 +4648,12 @@ version = "1.18.0"
|
|||||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||||
checksum = "1dccffe3ce07af9386bfd29e80c0ab1a8205a2fc34e4bcd40364df902cfa8f3f"
|
checksum = "1dccffe3ce07af9386bfd29e80c0ab1a8205a2fc34e4bcd40364df902cfa8f3f"
|
||||||
|
|
||||||
|
[[package]]
|
||||||
|
name = "unarray"
|
||||||
|
version = "0.1.4"
|
||||||
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||||
|
checksum = "eaea85b334db583fe3274d12b4cd1880032beab409c0d774be044d4480ab9a94"
|
||||||
|
|
||||||
[[package]]
|
[[package]]
|
||||||
name = "unicase"
|
name = "unicase"
|
||||||
version = "2.8.1"
|
version = "2.8.1"
|
||||||
@@ -4565,6 +4886,15 @@ version = "0.8.0"
|
|||||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||||
checksum = "5c3082ca00d5a5ef149bb8b555a72ae84c9c59f7250f013ac822ac2e49b19c64"
|
checksum = "5c3082ca00d5a5ef149bb8b555a72ae84c9c59f7250f013ac822ac2e49b19c64"
|
||||||
|
|
||||||
|
[[package]]
|
||||||
|
name = "wait-timeout"
|
||||||
|
version = "0.2.1"
|
||||||
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||||
|
checksum = "09ac3b126d3914f9849036f826e054cbabdc8519970b8998ddaf3b5bd3c65f11"
|
||||||
|
dependencies = [
|
||||||
|
"libc",
|
||||||
|
]
|
||||||
|
|
||||||
[[package]]
|
[[package]]
|
||||||
name = "walkdir"
|
name = "walkdir"
|
||||||
version = "2.5.0"
|
version = "2.5.0"
|
||||||
@@ -4575,6 +4905,12 @@ dependencies = [
|
|||||||
"winapi-util",
|
"winapi-util",
|
||||||
]
|
]
|
||||||
|
|
||||||
|
[[package]]
|
||||||
|
name = "wasi"
|
||||||
|
version = "0.9.0+wasi-snapshot-preview1"
|
||||||
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||||
|
checksum = "cccddf32554fecc6acb585f82a32a72e28b48f8c4c1883ddfeeeaa96f7d8e519"
|
||||||
|
|
||||||
[[package]]
|
[[package]]
|
||||||
name = "wasi"
|
name = "wasi"
|
||||||
version = "0.11.0+wasi-snapshot-preview1"
|
version = "0.11.0+wasi-snapshot-preview1"
|
||||||
@@ -4654,6 +4990,16 @@ dependencies = [
|
|||||||
"unicode-ident",
|
"unicode-ident",
|
||||||
]
|
]
|
||||||
|
|
||||||
|
[[package]]
|
||||||
|
name = "web-sys"
|
||||||
|
version = "0.3.77"
|
||||||
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||||
|
checksum = "33b6dd2ef9186f1f2072e409e99cd22a975331a6b3591b12c764e0e55c60d5d2"
|
||||||
|
dependencies = [
|
||||||
|
"js-sys",
|
||||||
|
"wasm-bindgen",
|
||||||
|
]
|
||||||
|
|
||||||
[[package]]
|
[[package]]
|
||||||
name = "webpki-roots"
|
name = "webpki-roots"
|
||||||
version = "0.26.8"
|
version = "0.26.8"
|
||||||
@@ -5108,26 +5454,73 @@ checksum = "66fee0b777b0f5ac1c69bb06d361268faafa61cd4682ae064a171c16c433e9e4"
|
|||||||
[[package]]
|
[[package]]
|
||||||
name = "y-octo"
|
name = "y-octo"
|
||||||
version = "0.0.1"
|
version = "0.0.1"
|
||||||
source = "git+https://github.com/y-crdt/y-octo.git?branch=main#1e705e4c9bb10dec5b7893c225fba2436a6e02f3"
|
|
||||||
dependencies = [
|
dependencies = [
|
||||||
"ahash",
|
"ahash",
|
||||||
"arbitrary",
|
"arbitrary",
|
||||||
|
"assert-json-diff",
|
||||||
"async-lock",
|
"async-lock",
|
||||||
"bitvec",
|
"bitvec",
|
||||||
"byteorder",
|
"byteorder",
|
||||||
|
"criterion",
|
||||||
"lasso",
|
"lasso",
|
||||||
|
"lib0",
|
||||||
"log",
|
"log",
|
||||||
"loom",
|
"loom",
|
||||||
"nanoid",
|
"nanoid",
|
||||||
"nom 7.1.3",
|
"nom 8.0.0",
|
||||||
"ordered-float",
|
"ordered-float",
|
||||||
"rand 0.8.5",
|
"path-ext",
|
||||||
"rand_chacha 0.3.1",
|
"proptest",
|
||||||
|
"proptest-derive",
|
||||||
|
"rand 0.9.0",
|
||||||
|
"rand_chacha 0.9.0",
|
||||||
"rand_distr",
|
"rand_distr",
|
||||||
"serde",
|
"serde",
|
||||||
"serde_json",
|
"serde_json",
|
||||||
"smol_str",
|
"smol_str",
|
||||||
"thiserror 2.0.12",
|
"thiserror 2.0.12",
|
||||||
|
"yrs 0.23.0",
|
||||||
|
]
|
||||||
|
|
||||||
|
[[package]]
|
||||||
|
name = "y-octo-node"
|
||||||
|
version = "0.0.1"
|
||||||
|
dependencies = [
|
||||||
|
"anyhow",
|
||||||
|
"napi",
|
||||||
|
"napi-build",
|
||||||
|
"napi-derive",
|
||||||
|
"y-octo",
|
||||||
|
]
|
||||||
|
|
||||||
|
[[package]]
|
||||||
|
name = "y-octo-utils"
|
||||||
|
version = "0.0.1"
|
||||||
|
dependencies = [
|
||||||
|
"arbitrary",
|
||||||
|
"clap",
|
||||||
|
"criterion",
|
||||||
|
"lib0",
|
||||||
|
"path-ext",
|
||||||
|
"phf 0.11.3",
|
||||||
|
"proptest",
|
||||||
|
"proptest-derive",
|
||||||
|
"rand 0.9.0",
|
||||||
|
"rand_chacha 0.9.0",
|
||||||
|
"regex",
|
||||||
|
"y-octo",
|
||||||
|
"y-sync",
|
||||||
|
"yrs 0.23.0",
|
||||||
|
]
|
||||||
|
|
||||||
|
[[package]]
|
||||||
|
name = "y-sync"
|
||||||
|
version = "0.4.0"
|
||||||
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||||
|
checksum = "52e3675a497cde881a71e7e5c2ae1d087dfc7733ddece9b24a9a61408e969d3b"
|
||||||
|
dependencies = [
|
||||||
|
"thiserror 1.0.69",
|
||||||
|
"yrs 0.17.4",
|
||||||
]
|
]
|
||||||
|
|
||||||
[[package]]
|
[[package]]
|
||||||
@@ -5154,6 +5547,39 @@ dependencies = [
|
|||||||
"synstructure",
|
"synstructure",
|
||||||
]
|
]
|
||||||
|
|
||||||
|
[[package]]
|
||||||
|
name = "yrs"
|
||||||
|
version = "0.17.4"
|
||||||
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||||
|
checksum = "c4830316bfee4bec0044fe34a001cda783506d5c4c0852f8433c6041dfbfce51"
|
||||||
|
dependencies = [
|
||||||
|
"atomic_refcell",
|
||||||
|
"rand 0.7.3",
|
||||||
|
"serde",
|
||||||
|
"serde_json",
|
||||||
|
"smallstr",
|
||||||
|
"smallvec",
|
||||||
|
"thiserror 1.0.69",
|
||||||
|
]
|
||||||
|
|
||||||
|
[[package]]
|
||||||
|
name = "yrs"
|
||||||
|
version = "0.23.0"
|
||||||
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||||
|
checksum = "0189b51d8ab1283e7c1f1f515c610875262e629cf258bec530da5cd4aa115d59"
|
||||||
|
dependencies = [
|
||||||
|
"arc-swap",
|
||||||
|
"async-lock",
|
||||||
|
"async-trait",
|
||||||
|
"dashmap",
|
||||||
|
"fastrand",
|
||||||
|
"serde",
|
||||||
|
"serde_json",
|
||||||
|
"smallstr",
|
||||||
|
"smallvec",
|
||||||
|
"thiserror 1.0.69",
|
||||||
|
]
|
||||||
|
|
||||||
[[package]]
|
[[package]]
|
||||||
name = "zerocopy"
|
name = "zerocopy"
|
||||||
version = "0.7.35"
|
version = "0.7.35"
|
||||||
|
|||||||
+29
-2
@@ -2,6 +2,9 @@
|
|||||||
members = [
|
members = [
|
||||||
"./packages/backend/native",
|
"./packages/backend/native",
|
||||||
"./packages/common/native",
|
"./packages/common/native",
|
||||||
|
"./packages/common/y-octo/core",
|
||||||
|
"./packages/common/y-octo/node",
|
||||||
|
"./packages/common/y-octo/utils",
|
||||||
"./packages/frontend/mobile-native",
|
"./packages/frontend/mobile-native",
|
||||||
"./packages/frontend/native",
|
"./packages/frontend/native",
|
||||||
"./packages/frontend/native/nbstore",
|
"./packages/frontend/native/nbstore",
|
||||||
@@ -16,39 +19,61 @@ edition = "2024"
|
|||||||
[workspace.dependencies]
|
[workspace.dependencies]
|
||||||
affine_common = { path = "./packages/common/native" }
|
affine_common = { path = "./packages/common/native" }
|
||||||
affine_nbstore = { path = "./packages/frontend/native/nbstore" }
|
affine_nbstore = { path = "./packages/frontend/native/nbstore" }
|
||||||
|
ahash = "0.8"
|
||||||
anyhow = "1"
|
anyhow = "1"
|
||||||
|
arbitrary = { version = "1.3", features = ["derive"] }
|
||||||
|
assert-json-diff = "2.0"
|
||||||
|
async-lock = { version = "3.4.0", features = ["loom"] }
|
||||||
base64-simd = "0.8"
|
base64-simd = "0.8"
|
||||||
|
bitvec = "1.0"
|
||||||
block2 = "0.6"
|
block2 = "0.6"
|
||||||
|
byteorder = "1.5"
|
||||||
chrono = "0.4"
|
chrono = "0.4"
|
||||||
|
clap = { version = "4.4", features = ["derive"] }
|
||||||
core-foundation = "0.10"
|
core-foundation = "0.10"
|
||||||
coreaudio-rs = "0.12"
|
coreaudio-rs = "0.12"
|
||||||
|
criterion = { version = "0.5", features = ["html_reports"] }
|
||||||
criterion2 = { version = "3", default-features = false }
|
criterion2 = { version = "3", default-features = false }
|
||||||
dispatch2 = "0.2"
|
dispatch2 = "0.3"
|
||||||
docx-parser = { git = "https://github.com/toeverything/docx-parser" }
|
docx-parser = { git = "https://github.com/toeverything/docx-parser" }
|
||||||
dotenvy = "0.15"
|
dotenvy = "0.15"
|
||||||
file-format = { version = "0.26", features = ["reader"] }
|
file-format = { version = "0.26", features = ["reader"] }
|
||||||
homedir = "0.3"
|
homedir = "0.3"
|
||||||
infer = { version = "0.19.0" }
|
infer = { version = "0.19.0" }
|
||||||
|
lasso = { version = "0.7", features = ["multi-threaded"] }
|
||||||
|
lib0 = { version = "0.16", features = ["lib0-serde"] }
|
||||||
libc = "0.2"
|
libc = "0.2"
|
||||||
|
log = "0.4"
|
||||||
|
loom = { version = "0.7", features = ["checkpoint"] }
|
||||||
mimalloc = "0.1"
|
mimalloc = "0.1"
|
||||||
|
nanoid = "0.4"
|
||||||
napi = { version = "3.0.0-alpha.31", features = ["async", "chrono_date", "error_anyhow", "napi9", "serde"] }
|
napi = { version = "3.0.0-alpha.31", features = ["async", "chrono_date", "error_anyhow", "napi9", "serde"] }
|
||||||
napi-build = { version = "2" }
|
napi-build = { version = "2" }
|
||||||
napi-derive = { version = "3.0.0-alpha.28" }
|
napi-derive = { version = "3.0.0-alpha.28" }
|
||||||
|
nom = "8"
|
||||||
notify = { version = "8", features = ["serde"] }
|
notify = { version = "8", features = ["serde"] }
|
||||||
objc2 = "0.6"
|
objc2 = "0.6"
|
||||||
objc2-foundation = "0.3"
|
objc2-foundation = "0.3"
|
||||||
once_cell = "1"
|
once_cell = "1"
|
||||||
|
ordered-float = "5"
|
||||||
parking_lot = "0.12"
|
parking_lot = "0.12"
|
||||||
path-ext = "0.1.1"
|
path-ext = "0.1.1"
|
||||||
pdf-extract = { git = "https://github.com/toeverything/pdf-extract", branch = "darksky/improve-font-decoding" }
|
pdf-extract = { git = "https://github.com/toeverything/pdf-extract", branch = "darksky/improve-font-decoding" }
|
||||||
|
phf = { version = "0.11", features = ["macros"] }
|
||||||
|
proptest = "1.3"
|
||||||
|
proptest-derive = "0.5"
|
||||||
rand = "0.9"
|
rand = "0.9"
|
||||||
|
rand_chacha = "0.9"
|
||||||
|
rand_distr = "0.5"
|
||||||
rayon = "1.10"
|
rayon = "1.10"
|
||||||
readability = { version = "0.3.0", default-features = false }
|
readability = { version = "0.3.0", default-features = false }
|
||||||
|
regex = "1.10"
|
||||||
rubato = "0.16"
|
rubato = "0.16"
|
||||||
screencapturekit = "0.3"
|
screencapturekit = "0.3"
|
||||||
serde = "1"
|
serde = "1"
|
||||||
serde_json = "1"
|
serde_json = "1"
|
||||||
sha3 = "0.10"
|
sha3 = "0.10"
|
||||||
|
smol_str = "0.3"
|
||||||
sqlx = { version = "0.8", default-features = false, features = ["chrono", "macros", "migrate", "runtime-tokio", "sqlite", "tls-rustls"] }
|
sqlx = { version = "0.8", default-features = false, features = ["chrono", "macros", "migrate", "runtime-tokio", "sqlite", "tls-rustls"] }
|
||||||
strum_macros = "0.27.0"
|
strum_macros = "0.27.0"
|
||||||
symphonia = { version = "0.5", features = ["all", "opt-simd"] }
|
symphonia = { version = "0.5", features = ["all", "opt-simd"] }
|
||||||
@@ -72,7 +97,9 @@ uniffi = "0.29"
|
|||||||
url = { version = "2.5" }
|
url = { version = "2.5" }
|
||||||
uuid = "1.8"
|
uuid = "1.8"
|
||||||
v_htmlescape = "0.15"
|
v_htmlescape = "0.15"
|
||||||
y-octo = { git = "https://github.com/y-crdt/y-octo.git", branch = "main" }
|
y-octo = { path = "./packages/common/y-octo/core" }
|
||||||
|
y-sync = { version = "0.4" }
|
||||||
|
yrs = "0.23.0"
|
||||||
|
|
||||||
[profile.dev.package.sqlx-macros]
|
[profile.dev.package.sqlx-macros]
|
||||||
opt-level = 3
|
opt-level = 3
|
||||||
|
|||||||
@@ -30,14 +30,18 @@
|
|||||||
"@blocksuite/affine-block-surface-ref": "workspace:*",
|
"@blocksuite/affine-block-surface-ref": "workspace:*",
|
||||||
"@blocksuite/affine-block-table": "workspace:*",
|
"@blocksuite/affine-block-table": "workspace:*",
|
||||||
"@blocksuite/affine-components": "workspace:*",
|
"@blocksuite/affine-components": "workspace:*",
|
||||||
|
"@blocksuite/affine-ext-loader": "workspace:*",
|
||||||
|
"@blocksuite/affine-foundation": "workspace:*",
|
||||||
"@blocksuite/affine-fragment-doc-title": "workspace:*",
|
"@blocksuite/affine-fragment-doc-title": "workspace:*",
|
||||||
"@blocksuite/affine-fragment-frame-panel": "workspace:*",
|
"@blocksuite/affine-fragment-frame-panel": "workspace:*",
|
||||||
"@blocksuite/affine-fragment-outline": "workspace:*",
|
"@blocksuite/affine-fragment-outline": "workspace:*",
|
||||||
"@blocksuite/affine-gfx-brush": "workspace:*",
|
"@blocksuite/affine-gfx-brush": "workspace:*",
|
||||||
"@blocksuite/affine-gfx-connector": "workspace:*",
|
"@blocksuite/affine-gfx-connector": "workspace:*",
|
||||||
"@blocksuite/affine-gfx-group": "workspace:*",
|
"@blocksuite/affine-gfx-group": "workspace:*",
|
||||||
|
"@blocksuite/affine-gfx-link": "workspace:*",
|
||||||
"@blocksuite/affine-gfx-mindmap": "workspace:*",
|
"@blocksuite/affine-gfx-mindmap": "workspace:*",
|
||||||
"@blocksuite/affine-gfx-note": "workspace:*",
|
"@blocksuite/affine-gfx-note": "workspace:*",
|
||||||
|
"@blocksuite/affine-gfx-pointer": "workspace:*",
|
||||||
"@blocksuite/affine-gfx-shape": "workspace:*",
|
"@blocksuite/affine-gfx-shape": "workspace:*",
|
||||||
"@blocksuite/affine-gfx-template": "workspace:*",
|
"@blocksuite/affine-gfx-template": "workspace:*",
|
||||||
"@blocksuite/affine-gfx-text": "workspace:*",
|
"@blocksuite/affine-gfx-text": "workspace:*",
|
||||||
@@ -54,13 +58,16 @@
|
|||||||
"@blocksuite/affine-widget-drag-handle": "workspace:*",
|
"@blocksuite/affine-widget-drag-handle": "workspace:*",
|
||||||
"@blocksuite/affine-widget-edgeless-auto-connect": "workspace:*",
|
"@blocksuite/affine-widget-edgeless-auto-connect": "workspace:*",
|
||||||
"@blocksuite/affine-widget-edgeless-toolbar": "workspace:*",
|
"@blocksuite/affine-widget-edgeless-toolbar": "workspace:*",
|
||||||
|
"@blocksuite/affine-widget-edgeless-zoom-toolbar": "workspace:*",
|
||||||
"@blocksuite/affine-widget-frame-title": "workspace:*",
|
"@blocksuite/affine-widget-frame-title": "workspace:*",
|
||||||
"@blocksuite/affine-widget-keyboard-toolbar": "workspace:*",
|
"@blocksuite/affine-widget-keyboard-toolbar": "workspace:*",
|
||||||
"@blocksuite/affine-widget-linked-doc": "workspace:*",
|
"@blocksuite/affine-widget-linked-doc": "workspace:*",
|
||||||
|
"@blocksuite/affine-widget-page-dragging-area": "workspace:*",
|
||||||
"@blocksuite/affine-widget-remote-selection": "workspace:*",
|
"@blocksuite/affine-widget-remote-selection": "workspace:*",
|
||||||
"@blocksuite/affine-widget-scroll-anchoring": "workspace:*",
|
"@blocksuite/affine-widget-scroll-anchoring": "workspace:*",
|
||||||
"@blocksuite/affine-widget-slash-menu": "workspace:*",
|
"@blocksuite/affine-widget-slash-menu": "workspace:*",
|
||||||
"@blocksuite/affine-widget-toolbar": "workspace:*",
|
"@blocksuite/affine-widget-toolbar": "workspace:*",
|
||||||
|
"@blocksuite/affine-widget-viewport-overlay": "workspace:*",
|
||||||
"@blocksuite/data-view": "workspace:*",
|
"@blocksuite/data-view": "workspace:*",
|
||||||
"@blocksuite/global": "workspace:*",
|
"@blocksuite/global": "workspace:*",
|
||||||
"@blocksuite/std": "workspace:*",
|
"@blocksuite/std": "workspace:*",
|
||||||
@@ -71,6 +78,7 @@
|
|||||||
"exports": {
|
"exports": {
|
||||||
".": "./src/index.ts",
|
".": "./src/index.ts",
|
||||||
"./effects": "./src/effects.ts",
|
"./effects": "./src/effects.ts",
|
||||||
|
"./ext-loader": "./src/ext-loader/index.ts",
|
||||||
"./std": "./src/std/index.ts",
|
"./std": "./src/std/index.ts",
|
||||||
"./std/gfx": "./src/std/gfx.ts",
|
"./std/gfx": "./src/std/gfx.ts",
|
||||||
"./std/inline": "./src/std/inline.ts",
|
"./std/inline": "./src/std/inline.ts",
|
||||||
@@ -86,59 +94,139 @@
|
|||||||
"./global/lit": "./src/global/lit.ts",
|
"./global/lit": "./src/global/lit.ts",
|
||||||
"./store": "./src/store/index.ts",
|
"./store": "./src/store/index.ts",
|
||||||
"./store/test": "./src/store/test.ts",
|
"./store/test": "./src/store/test.ts",
|
||||||
"./blocks/attachment": "./src/blocks/attachment.ts",
|
"./blocks/attachment": "./src/blocks/attachment/index.ts",
|
||||||
"./blocks/bookmark": "./src/blocks/bookmark.ts",
|
"./blocks/attachment/store": "./src/blocks/attachment/store.ts",
|
||||||
"./blocks/callout": "./src/blocks/callout.ts",
|
"./blocks/attachment/view": "./src/blocks/attachment/view.ts",
|
||||||
"./blocks/code": "./src/blocks/code.ts",
|
"./blocks/bookmark": "./src/blocks/bookmark/index.ts",
|
||||||
"./blocks/data-view": "./src/blocks/data-view.ts",
|
"./blocks/bookmark/store": "./src/blocks/bookmark/store.ts",
|
||||||
"./blocks/database": "./src/blocks/database.ts",
|
"./blocks/bookmark/view": "./src/blocks/bookmark/view.ts",
|
||||||
"./blocks/divider": "./src/blocks/divider.ts",
|
"./blocks/callout": "./src/blocks/callout/index.ts",
|
||||||
"./blocks/edgeless-text": "./src/blocks/edgeless-text.ts",
|
"./blocks/callout/store": "./src/blocks/callout/store.ts",
|
||||||
"./blocks/embed": "./src/blocks/embed.ts",
|
"./blocks/callout/view": "./src/blocks/callout/view.ts",
|
||||||
"./blocks/frame": "./src/blocks/frame.ts",
|
"./blocks/code": "./src/blocks/code/index.ts",
|
||||||
"./blocks/image": "./src/blocks/image.ts",
|
"./blocks/code/store": "./src/blocks/code/store.ts",
|
||||||
"./blocks/latex": "./src/blocks/latex.ts",
|
"./blocks/code/view": "./src/blocks/code/view.ts",
|
||||||
"./blocks/list": "./src/blocks/list.ts",
|
"./blocks/data-view": "./src/blocks/data-view/index.ts",
|
||||||
"./blocks/note": "./src/blocks/note.ts",
|
"./blocks/data-view/store": "./src/blocks/data-view/store.ts",
|
||||||
"./blocks/paragraph": "./src/blocks/paragraph.ts",
|
"./blocks/data-view/view": "./src/blocks/data-view/view.ts",
|
||||||
|
"./blocks/database": "./src/blocks/database/index.ts",
|
||||||
|
"./blocks/database/store": "./src/blocks/database/store.ts",
|
||||||
|
"./blocks/database/view": "./src/blocks/database/view.ts",
|
||||||
|
"./blocks/divider": "./src/blocks/divider/index.ts",
|
||||||
|
"./blocks/divider/store": "./src/blocks/divider/store.ts",
|
||||||
|
"./blocks/divider/view": "./src/blocks/divider/view.ts",
|
||||||
|
"./blocks/edgeless-text": "./src/blocks/edgeless-text/index.ts",
|
||||||
|
"./blocks/edgeless-text/store": "./src/blocks/edgeless-text/store.ts",
|
||||||
|
"./blocks/edgeless-text/view": "./src/blocks/edgeless-text/view.ts",
|
||||||
|
"./blocks/embed": "./src/blocks/embed/index.ts",
|
||||||
|
"./blocks/embed/store": "./src/blocks/embed/store.ts",
|
||||||
|
"./blocks/embed/view": "./src/blocks/embed/view.ts",
|
||||||
|
"./blocks/frame": "./src/blocks/frame/index.ts",
|
||||||
|
"./blocks/frame/store": "./src/blocks/frame/store.ts",
|
||||||
|
"./blocks/frame/view": "./src/blocks/frame/view.ts",
|
||||||
|
"./blocks/image": "./src/blocks/image/index.ts",
|
||||||
|
"./blocks/image/store": "./src/blocks/image/store.ts",
|
||||||
|
"./blocks/image/view": "./src/blocks/image/view.ts",
|
||||||
|
"./blocks/latex": "./src/blocks/latex/index.ts",
|
||||||
|
"./blocks/latex/store": "./src/blocks/latex/store.ts",
|
||||||
|
"./blocks/latex/view": "./src/blocks/latex/view.ts",
|
||||||
|
"./blocks/list": "./src/blocks/list/index.ts",
|
||||||
|
"./blocks/list/store": "./src/blocks/list/store.ts",
|
||||||
|
"./blocks/list/view": "./src/blocks/list/view.ts",
|
||||||
|
"./blocks/note": "./src/blocks/note/index.ts",
|
||||||
|
"./blocks/note/store": "./src/blocks/note/store.ts",
|
||||||
|
"./blocks/note/view": "./src/blocks/note/view.ts",
|
||||||
|
"./blocks/paragraph": "./src/blocks/paragraph/index.ts",
|
||||||
|
"./blocks/paragraph/store": "./src/blocks/paragraph/store.ts",
|
||||||
|
"./blocks/paragraph/view": "./src/blocks/paragraph/view.ts",
|
||||||
"./blocks/root": "./src/blocks/root.ts",
|
"./blocks/root": "./src/blocks/root.ts",
|
||||||
"./blocks/surface": "./src/blocks/surface.ts",
|
"./blocks/surface": "./src/blocks/surface/index.ts",
|
||||||
"./blocks/surface-ref": "./src/blocks/surface-ref.ts",
|
"./blocks/surface/store": "./src/blocks/surface/store.ts",
|
||||||
"./blocks/table": "./src/blocks/table.ts",
|
"./blocks/surface/view": "./src/blocks/surface/view.ts",
|
||||||
|
"./blocks/surface-ref": "./src/blocks/surface-ref/index.ts",
|
||||||
|
"./blocks/surface-ref/store": "./src/blocks/surface-ref/store.ts",
|
||||||
|
"./blocks/surface-ref/view": "./src/blocks/surface-ref/view.ts",
|
||||||
|
"./blocks/table": "./src/blocks/table/index.ts",
|
||||||
|
"./blocks/table/store": "./src/blocks/table/store.ts",
|
||||||
|
"./blocks/table/view": "./src/blocks/table/view.ts",
|
||||||
"./data-view": "./src/data-view/index.ts",
|
"./data-view": "./src/data-view/index.ts",
|
||||||
"./data-view/effects": "./src/data-view/effects.ts",
|
"./data-view/effects": "./src/data-view/effects.ts",
|
||||||
"./inlines/link": "./src/inlines/link.ts",
|
"./inlines/link": "./src/inlines/link/index.ts",
|
||||||
"./inlines/reference": "./src/inlines/reference.ts",
|
"./inlines/link/store": "./src/inlines/link/store.ts",
|
||||||
"./inlines/preset": "./src/inlines/preset.ts",
|
"./inlines/link/view": "./src/inlines/link/view.ts",
|
||||||
"./inlines/footnote": "./src/inlines/footnote.ts",
|
"./inlines/reference": "./src/inlines/reference/index.ts",
|
||||||
"./inlines/latex": "./src/inlines/latex.ts",
|
"./inlines/reference/store": "./src/inlines/reference/store.ts",
|
||||||
"./inlines/mention": "./src/inlines/mention.ts",
|
"./inlines/reference/view": "./src/inlines/reference/view.ts",
|
||||||
"./widgets/drag-handle": "./src/widgets/drag-handle.ts",
|
"./inlines/preset": "./src/inlines/preset/index.ts",
|
||||||
"./widgets/edgeless-auto-connect": "./src/widgets/edgeless-auto-connect.ts",
|
"./inlines/preset/store": "./src/inlines/preset/store.ts",
|
||||||
"./widgets/edgeless-toolbar": "./src/widgets/edgeless-toolbar.ts",
|
"./inlines/preset/view": "./src/inlines/preset/view.ts",
|
||||||
"./widgets/frame-title": "./src/widgets/frame-title.ts",
|
"./inlines/footnote": "./src/inlines/footnote/index.ts",
|
||||||
"./widgets/linked-doc": "./src/widgets/linked-doc.ts",
|
"./inlines/footnote/view": "./src/inlines/footnote/view.ts",
|
||||||
"./widgets/remote-selection": "./src/widgets/remote-selection.ts",
|
"./inlines/footnote/store": "./src/inlines/footnote/store.ts",
|
||||||
"./widgets/scroll-anchoring": "./src/widgets/scroll-anchoring.ts",
|
"./inlines/latex": "./src/inlines/latex/index.ts",
|
||||||
"./widgets/slash-menu": "./src/widgets/slash-menu.ts",
|
"./inlines/latex/store": "./src/inlines/latex/store.ts",
|
||||||
"./widgets/toolbar": "./src/widgets/toolbar.ts",
|
"./inlines/latex/view": "./src/inlines/latex/view.ts",
|
||||||
"./widgets/keyboard-toolbar": "./src/widgets/keyboard-toolbar.ts",
|
"./inlines/mention": "./src/inlines/mention/index.ts",
|
||||||
|
"./inlines/mention/view": "./src/inlines/mention/view.ts",
|
||||||
|
"./widgets/drag-handle": "./src/widgets/drag-handle/index.ts",
|
||||||
|
"./widgets/drag-handle/view": "./src/widgets/drag-handle/view.ts",
|
||||||
|
"./widgets/edgeless-auto-connect": "./src/widgets/edgeless-auto-connect/index.ts",
|
||||||
|
"./widgets/edgeless-auto-connect/view": "./src/widgets/edgeless-auto-connect/view.ts",
|
||||||
|
"./widgets/edgeless-toolbar": "./src/widgets/edgeless-toolbar/index.ts",
|
||||||
|
"./widgets/edgeless-toolbar/view": "./src/widgets/edgeless-toolbar/view.ts",
|
||||||
|
"./widgets/frame-title": "./src/widgets/frame-title/index.ts",
|
||||||
|
"./widgets/frame-title/view": "./src/widgets/frame-title/view.ts",
|
||||||
|
"./widgets/linked-doc": "./src/widgets/linked-doc/index.ts",
|
||||||
|
"./widgets/linked-doc/view": "./src/widgets/linked-doc/view.ts",
|
||||||
|
"./widgets/remote-selection": "./src/widgets/remote-selection/index.ts",
|
||||||
|
"./widgets/remote-selection/view": "./src/widgets/remote-selection/view.ts",
|
||||||
|
"./widgets/scroll-anchoring": "./src/widgets/scroll-anchoring/index.ts",
|
||||||
|
"./widgets/scroll-anchoring/view": "./src/widgets/scroll-anchoring/view.ts",
|
||||||
|
"./widgets/slash-menu": "./src/widgets/slash-menu/index.ts",
|
||||||
|
"./widgets/slash-menu/view": "./src/widgets/slash-menu/view.ts",
|
||||||
|
"./widgets/toolbar": "./src/widgets/toolbar/index.ts",
|
||||||
|
"./widgets/toolbar/view": "./src/widgets/toolbar/view.ts",
|
||||||
|
"./widgets/keyboard-toolbar": "./src/widgets/keyboard-toolbar/index.ts",
|
||||||
|
"./widgets/keyboard-toolbar/view": "./src/widgets/keyboard-toolbar/view.ts",
|
||||||
|
"./widgets/viewport-overlay": "./src/widgets/viewport-overlay/index.ts",
|
||||||
|
"./widgets/viewport-overlay/view": "./src/widgets/viewport-overlay/view.ts",
|
||||||
|
"./widgets/page-dragging-area": "./src/widgets/page-dragging-area/index.ts",
|
||||||
|
"./widgets/page-dragging-area/view": "./src/widgets/page-dragging-area/view.ts",
|
||||||
"./fragments/doc-title": "./src/fragments/doc-title.ts",
|
"./fragments/doc-title": "./src/fragments/doc-title.ts",
|
||||||
"./fragments/frame-panel": "./src/fragments/frame-panel.ts",
|
"./fragments/frame-panel": "./src/fragments/frame-panel.ts",
|
||||||
"./fragments/outline": "./src/fragments/outline.ts",
|
"./fragments/outline": "./src/fragments/outline.ts",
|
||||||
"./gfx/text": "./src/gfx/text.ts",
|
"./gfx/text": "./src/gfx/text/index.ts",
|
||||||
"./gfx/brush": "./src/gfx/brush.ts",
|
"./gfx/text/store": "./src/gfx/text/store.ts",
|
||||||
"./gfx/shape": "./src/gfx/shape.ts",
|
"./gfx/text/view": "./src/gfx/text/view.ts",
|
||||||
"./gfx/note": "./src/gfx/note.ts",
|
"./gfx/brush": "./src/gfx/brush/index.ts",
|
||||||
"./gfx/mindmap": "./src/gfx/mindmap.ts",
|
"./gfx/brush/store": "./src/gfx/brush/store.ts",
|
||||||
"./gfx/connector": "./src/gfx/connector.ts",
|
"./gfx/brush/view": "./src/gfx/brush/view.ts",
|
||||||
"./gfx/group": "./src/gfx/group.ts",
|
"./gfx/pointer": "./src/gfx/pointer/index.ts",
|
||||||
"./gfx/template": "./src/gfx/template.ts",
|
"./gfx/pointer/view": "./src/gfx/pointer/view.ts",
|
||||||
|
"./gfx/shape": "./src/gfx/shape/index.ts",
|
||||||
|
"./gfx/shape/store": "./src/gfx/shape/store.ts",
|
||||||
|
"./gfx/shape/view": "./src/gfx/shape/view.ts",
|
||||||
|
"./gfx/link": "./src/gfx/link/index.ts",
|
||||||
|
"./gfx/link/view": "./src/gfx/link/view.ts",
|
||||||
|
"./gfx/note": "./src/gfx/note/index.ts",
|
||||||
|
"./gfx/note/view": "./src/gfx/note/view.ts",
|
||||||
|
"./gfx/mindmap": "./src/gfx/mindmap/index.ts",
|
||||||
|
"./gfx/mindmap/store": "./src/gfx/mindmap/store.ts",
|
||||||
|
"./gfx/mindmap/view": "./src/gfx/mindmap/view.ts",
|
||||||
|
"./gfx/connector": "./src/gfx/connector/index.ts",
|
||||||
|
"./gfx/connector/store": "./src/gfx/connector/store.ts",
|
||||||
|
"./gfx/connector/view": "./src/gfx/connector/view.ts",
|
||||||
|
"./gfx/group": "./src/gfx/group/index.ts",
|
||||||
|
"./gfx/group/store": "./src/gfx/group/store.ts",
|
||||||
|
"./gfx/group/view": "./src/gfx/group/view.ts",
|
||||||
|
"./gfx/template": "./src/gfx/template/index.ts",
|
||||||
|
"./gfx/template/view": "./src/gfx/template/view.ts",
|
||||||
"./gfx/turbo-renderer": "./src/gfx/turbo-renderer.ts",
|
"./gfx/turbo-renderer": "./src/gfx/turbo-renderer.ts",
|
||||||
"./components/block-selection": "./src/components/block-selection.ts",
|
"./components/block-selection": "./src/components/block-selection.ts",
|
||||||
"./components/block-zero-width": "./src/components/block-zero-width.ts",
|
"./components/block-zero-width": "./src/components/block-zero-width.ts",
|
||||||
"./components/caption": "./src/components/caption.ts",
|
"./components/caption": "./src/components/caption.ts",
|
||||||
"./components/card-style-dropdown-menu": "./src/components/card-style-dropdown-menu.ts",
|
"./components/card-style-dropdown-menu": "./src/components/card-style-dropdown-menu.ts",
|
||||||
|
"./components/citation": "./src/components/citation.ts",
|
||||||
"./components/color-picker": "./src/components/color-picker.ts",
|
"./components/color-picker": "./src/components/color-picker.ts",
|
||||||
"./components/context-menu": "./src/components/context-menu.ts",
|
"./components/context-menu": "./src/components/context-menu.ts",
|
||||||
"./components/date-picker": "./src/components/date-picker.ts",
|
"./components/date-picker": "./src/components/date-picker.ts",
|
||||||
@@ -175,8 +263,8 @@
|
|||||||
"./schemas": "./src/schemas.ts",
|
"./schemas": "./src/schemas.ts",
|
||||||
"./model": "./src/model/index.ts",
|
"./model": "./src/model/index.ts",
|
||||||
"./sync": "./src/sync/index.ts",
|
"./sync": "./src/sync/index.ts",
|
||||||
"./adapters": "./src/adapters/index.ts",
|
"./extensions/store": "./src/extensions/store.ts",
|
||||||
"./extensions": "./src/extensions/index.ts"
|
"./extensions/view": "./src/extensions/view.ts"
|
||||||
},
|
},
|
||||||
"files": [
|
"files": [
|
||||||
"src",
|
"src",
|
||||||
|
|||||||
@@ -125,7 +125,7 @@ describe('snapshot to html', () => {
|
|||||||
};
|
};
|
||||||
|
|
||||||
const html = template(
|
const html = template(
|
||||||
`<pre class="shiki light-plus" style="background-color:#FFFFFF;color:#000000" tabindex="0"><code><span class="line"><span style="color:#AF00DB">import</span><span style="color:#000000"> this</span></span></code></pre>`
|
`<pre><code class="code-python">import this</code></pre>`
|
||||||
);
|
);
|
||||||
|
|
||||||
const htmlAdapter = new HtmlAdapter(createJob(), provider);
|
const htmlAdapter = new HtmlAdapter(createJob(), provider);
|
||||||
@@ -191,7 +191,7 @@ describe('snapshot to html', () => {
|
|||||||
};
|
};
|
||||||
|
|
||||||
const html = template(
|
const html = template(
|
||||||
`<pre class="shiki light-plus" style="background-color:#FFFFFF;color:#000000" tabindex="0"><code><span class="line"><span>import this</span></span></code></pre>`
|
`<pre><code class="code-PYTHON">import this</code></pre>`
|
||||||
);
|
);
|
||||||
|
|
||||||
const htmlAdapter = new HtmlAdapter(createJob(), provider);
|
const htmlAdapter = new HtmlAdapter(createJob(), provider);
|
||||||
@@ -257,7 +257,7 @@ describe('snapshot to html', () => {
|
|||||||
};
|
};
|
||||||
|
|
||||||
const html = template(
|
const html = template(
|
||||||
`<pre class="shiki light-plus" style="background-color:#FFFFFF;color:#000000" tabindex="0"><code><span class="line"><span>import this</span></span></code></pre>`
|
`<pre><code class="code-unknown">import this</code></pre>`
|
||||||
);
|
);
|
||||||
|
|
||||||
const htmlAdapter = new HtmlAdapter(createJob(), provider);
|
const htmlAdapter = new HtmlAdapter(createJob(), provider);
|
||||||
|
|||||||
@@ -2396,6 +2396,9 @@ World!
|
|||||||
reference: {
|
reference: {
|
||||||
type: 'url',
|
type: 'url',
|
||||||
url: 'https://www.example.com',
|
url: 'https://www.example.com',
|
||||||
|
favicon: 'https://www.example.com/favicon.ico',
|
||||||
|
title: 'Example Domain',
|
||||||
|
description: 'Example Domain',
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
@@ -2437,7 +2440,7 @@ World!
|
|||||||
};
|
};
|
||||||
|
|
||||||
const markdown =
|
const markdown =
|
||||||
'aaa[^1][^2][^3]\n\n[^1]: {"type":"url","url":"https%3A%2F%2Fwww.example.com"}\n\n[^2]: {"type":"doc","docId":"deadbeef"}\n\n[^3]: {"type":"attachment","blobId":"abcdefg","fileName":"test.txt","fileType":"text/plain"}\n';
|
'aaa[^1][^2][^3]\n\n[^1]: {"type":"url","url":"https%3A%2F%2Fwww.example.com","favicon":"https%3A%2F%2Fwww.example.com%2Ffavicon.ico","title":"Example Domain","description":"Example Domain"}\n\n[^2]: {"type":"doc","docId":"deadbeef"}\n\n[^3]: {"type":"attachment","blobId":"abcdefg","fileName":"test.txt","fileType":"text/plain"}\n';
|
||||||
|
|
||||||
const mdAdapter = new MarkdownAdapter(createJob(), provider);
|
const mdAdapter = new MarkdownAdapter(createJob(), provider);
|
||||||
const target = await mdAdapter.fromBlockSnapshot({
|
const target = await mdAdapter.fromBlockSnapshot({
|
||||||
@@ -4028,11 +4031,12 @@ hhh
|
|||||||
expect(nanoidReplacement(rawBlockSnapshot)).toEqual(blockSnapshot);
|
expect(nanoidReplacement(rawBlockSnapshot)).toEqual(blockSnapshot);
|
||||||
});
|
});
|
||||||
|
|
||||||
test('without footnote middleware', async () => {
|
describe('footnote', () => {
|
||||||
const markdown =
|
const url = 'https://www.example.com';
|
||||||
'aaa[^1][^2][^3]\n\n[^1]: {"type":"url","url":"https%3A%2F%2Fwww.example.com"}\n\n[^2]: {"type":"doc","docId":"deadbeef"}\n\n[^3]: {"type":"attachment","blobId":"abcdefg","fileName":"test.txt","fileType":"text/plain"}\n';
|
const favicon = 'https://www.example.com/favicon.ico';
|
||||||
|
const title = 'Example Domain';
|
||||||
const blockSnapshot: BlockSnapshot = {
|
const description = 'Example Domain';
|
||||||
|
const blockSnapshot = {
|
||||||
type: 'block',
|
type: 'block',
|
||||||
id: 'matchesReplaceMap[0]',
|
id: 'matchesReplaceMap[0]',
|
||||||
flavour: 'affine:note',
|
flavour: 'affine:note',
|
||||||
@@ -4063,7 +4067,10 @@ hhh
|
|||||||
label: '1',
|
label: '1',
|
||||||
reference: {
|
reference: {
|
||||||
type: 'url',
|
type: 'url',
|
||||||
url: 'https://www.example.com',
|
url,
|
||||||
|
favicon,
|
||||||
|
title,
|
||||||
|
description,
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
@@ -4102,11 +4109,27 @@ hhh
|
|||||||
],
|
],
|
||||||
};
|
};
|
||||||
|
|
||||||
const mdAdapter = new MarkdownAdapter(createJob(), provider);
|
test('with encoded url and favicon', async () => {
|
||||||
const rawBlockSnapshot = await mdAdapter.toBlockSnapshot({
|
const encodedUrl = encodeURIComponent(url);
|
||||||
file: markdown,
|
const encodedFavicon = encodeURIComponent(favicon);
|
||||||
|
const markdown = `aaa[^1][^2][^3]\n\n[^1]: {"type":"url","url":"${encodedUrl}","favicon":"${encodedFavicon}","title":"${title}","description":"${description}"}\n\n[^2]: {"type":"doc","docId":"deadbeef"}\n\n[^3]: {"type":"attachment","blobId":"abcdefg","fileName":"test.txt","fileType":"text/plain"}\n`;
|
||||||
|
|
||||||
|
const mdAdapter = new MarkdownAdapter(createJob(), provider);
|
||||||
|
const rawBlockSnapshot = await mdAdapter.toBlockSnapshot({
|
||||||
|
file: markdown,
|
||||||
|
});
|
||||||
|
expect(nanoidReplacement(rawBlockSnapshot)).toEqual(blockSnapshot);
|
||||||
|
});
|
||||||
|
|
||||||
|
test('with unencoded url and favicon', async () => {
|
||||||
|
const markdown = `aaa[^1][^2][^3]\n\n[^1]: {"type":"url","url":"${url}","favicon":"${favicon}","title":"${title}","description":"${description}"}\n\n[^2]: {"type":"doc","docId":"deadbeef"}\n\n[^3]: {"type":"attachment","blobId":"abcdefg","fileName":"test.txt","fileType":"text/plain"}\n`;
|
||||||
|
|
||||||
|
const mdAdapter = new MarkdownAdapter(createJob(), provider);
|
||||||
|
const rawBlockSnapshot = await mdAdapter.toBlockSnapshot({
|
||||||
|
file: markdown,
|
||||||
|
});
|
||||||
|
expect(nanoidReplacement(rawBlockSnapshot)).toEqual(blockSnapshot);
|
||||||
});
|
});
|
||||||
expect(nanoidReplacement(rawBlockSnapshot)).toEqual(blockSnapshot);
|
|
||||||
});
|
});
|
||||||
|
|
||||||
test('should not wrap url with angle brackets if it is not a url', async () => {
|
test('should not wrap url with angle brackets if it is not a url', async () => {
|
||||||
|
|||||||
@@ -1,5 +1,4 @@
|
|||||||
import { defaultImageProxyMiddleware } from '@blocksuite/affine-block-image';
|
import { defaultImageProxyMiddleware } from '@blocksuite/affine-shared/adapters';
|
||||||
import { SpecProvider } from '@blocksuite/affine-shared/utils';
|
|
||||||
import {
|
import {
|
||||||
Schema,
|
Schema,
|
||||||
Transformer,
|
Transformer,
|
||||||
@@ -8,6 +7,7 @@ import {
|
|||||||
import { TestWorkspace } from '@blocksuite/store/test';
|
import { TestWorkspace } from '@blocksuite/store/test';
|
||||||
|
|
||||||
import { AffineSchemas } from '../../schemas.js';
|
import { AffineSchemas } from '../../schemas.js';
|
||||||
|
import { testStoreExtensions } from './store.js';
|
||||||
|
|
||||||
declare global {
|
declare global {
|
||||||
interface Window {
|
interface Window {
|
||||||
@@ -27,7 +27,7 @@ export function createJob(middlewares?: TransformerMiddleware[]) {
|
|||||||
testMiddlewares.push(defaultImageProxyMiddleware);
|
testMiddlewares.push(defaultImageProxyMiddleware);
|
||||||
const schema = new Schema().register(AffineSchemas);
|
const schema = new Schema().register(AffineSchemas);
|
||||||
const docCollection = new TestWorkspace();
|
const docCollection = new TestWorkspace();
|
||||||
docCollection.storeExtensions = SpecProvider._.getSpec('store').value;
|
docCollection.storeExtensions = testStoreExtensions;
|
||||||
docCollection.meta.initialize();
|
docCollection.meta.initialize();
|
||||||
return new Transformer({
|
return new Transformer({
|
||||||
schema,
|
schema,
|
||||||
|
|||||||
@@ -1,17 +1,10 @@
|
|||||||
import { SpecProvider } from '@blocksuite/affine-shared/utils';
|
|
||||||
import { Container } from '@blocksuite/global/di';
|
import { Container } from '@blocksuite/global/di';
|
||||||
|
|
||||||
import {
|
import { testStoreExtensions } from './store';
|
||||||
registerBlockSpecs,
|
|
||||||
registerStoreSpecs,
|
|
||||||
} from '../../extensions/register';
|
|
||||||
|
|
||||||
registerStoreSpecs();
|
|
||||||
registerBlockSpecs();
|
|
||||||
|
|
||||||
export function getProvider() {
|
export function getProvider() {
|
||||||
const container = new Container();
|
const container = new Container();
|
||||||
const exts = SpecProvider._.getSpec('store').value;
|
const exts = testStoreExtensions;
|
||||||
exts.forEach(ext => {
|
exts.forEach(ext => {
|
||||||
ext.setup(container);
|
ext.setup(container);
|
||||||
});
|
});
|
||||||
|
|||||||
@@ -0,0 +1,7 @@
|
|||||||
|
import { StoreExtensionManager } from '@blocksuite/affine-ext-loader';
|
||||||
|
|
||||||
|
import { getInternalStoreExtensions } from '../../extensions/store';
|
||||||
|
|
||||||
|
const manager = new StoreExtensionManager(getInternalStoreExtensions());
|
||||||
|
|
||||||
|
export const testStoreExtensions = manager.get('store');
|
||||||
@@ -2,7 +2,6 @@ import {
|
|||||||
HtmlInlineToDeltaAdapterExtensions,
|
HtmlInlineToDeltaAdapterExtensions,
|
||||||
InlineDeltaToHtmlAdapterExtensions,
|
InlineDeltaToHtmlAdapterExtensions,
|
||||||
InlineDeltaToMarkdownAdapterExtensions,
|
InlineDeltaToMarkdownAdapterExtensions,
|
||||||
InlineDeltaToPlainTextAdapterExtensions,
|
|
||||||
MarkdownInlineToDeltaAdapterExtensions,
|
MarkdownInlineToDeltaAdapterExtensions,
|
||||||
NotionHtmlInlineToDeltaAdapterExtensions,
|
NotionHtmlInlineToDeltaAdapterExtensions,
|
||||||
} from '@blocksuite/affine-inline-preset';
|
} from '@blocksuite/affine-inline-preset';
|
||||||
@@ -62,8 +61,5 @@ export function getNotionHtmlAdapterExtensions(): ExtensionType[] {
|
|||||||
}
|
}
|
||||||
|
|
||||||
export function getPlainTextAdapterExtensions(): ExtensionType[] {
|
export function getPlainTextAdapterExtensions(): ExtensionType[] {
|
||||||
return [
|
return [...defaultBlockPlainTextAdapterMatchers];
|
||||||
...defaultBlockPlainTextAdapterMatchers,
|
|
||||||
...InlineDeltaToPlainTextAdapterExtensions,
|
|
||||||
];
|
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -1,3 +1,4 @@
|
|||||||
|
import { AttachmentBlockMarkdownAdapterExtension } from '@blocksuite/affine-block-attachment';
|
||||||
import { BookmarkBlockMarkdownAdapterExtension } from '@blocksuite/affine-block-bookmark';
|
import { BookmarkBlockMarkdownAdapterExtension } from '@blocksuite/affine-block-bookmark';
|
||||||
import { CodeBlockMarkdownAdapterExtension } from '@blocksuite/affine-block-code';
|
import { CodeBlockMarkdownAdapterExtension } from '@blocksuite/affine-block-code';
|
||||||
import { DatabaseBlockMarkdownAdapterExtension } from '@blocksuite/affine-block-database';
|
import { DatabaseBlockMarkdownAdapterExtension } from '@blocksuite/affine-block-database';
|
||||||
@@ -38,4 +39,5 @@ export const defaultBlockMarkdownAdapterMatchers = [
|
|||||||
DividerBlockMarkdownAdapterExtension,
|
DividerBlockMarkdownAdapterExtension,
|
||||||
ImageBlockMarkdownAdapterExtension,
|
ImageBlockMarkdownAdapterExtension,
|
||||||
LatexBlockMarkdownAdapterExtension,
|
LatexBlockMarkdownAdapterExtension,
|
||||||
|
AttachmentBlockMarkdownAdapterExtension,
|
||||||
];
|
];
|
||||||
|
|||||||
@@ -1,7 +1,9 @@
|
|||||||
|
import { BookmarkBlockMarkdownPreprocessorExtension } from '@blocksuite/affine-block-bookmark';
|
||||||
import { CodeMarkdownPreprocessorExtension } from '@blocksuite/affine-block-code';
|
import { CodeMarkdownPreprocessorExtension } from '@blocksuite/affine-block-code';
|
||||||
import { LatexMarkdownPreprocessorExtension } from '@blocksuite/affine-block-latex';
|
import { LatexMarkdownPreprocessorExtension } from '@blocksuite/affine-block-latex';
|
||||||
|
|
||||||
export const defaultMarkdownPreprocessors = [
|
export const defaultMarkdownPreprocessors = [
|
||||||
LatexMarkdownPreprocessorExtension,
|
LatexMarkdownPreprocessorExtension,
|
||||||
CodeMarkdownPreprocessorExtension,
|
CodeMarkdownPreprocessorExtension,
|
||||||
|
BookmarkBlockMarkdownPreprocessorExtension,
|
||||||
];
|
];
|
||||||
|
|||||||
@@ -0,0 +1 @@
|
|||||||
|
export * from '@blocksuite/affine-block-attachment/store';
|
||||||
@@ -0,0 +1 @@
|
|||||||
|
export * from '@blocksuite/affine-block-attachment/view';
|
||||||
@@ -0,0 +1 @@
|
|||||||
|
export * from '@blocksuite/affine-block-bookmark/store';
|
||||||
@@ -0,0 +1 @@
|
|||||||
|
export * from '@blocksuite/affine-block-bookmark/view';
|
||||||
@@ -0,0 +1 @@
|
|||||||
|
export * from '@blocksuite/affine-block-callout/store';
|
||||||
@@ -0,0 +1 @@
|
|||||||
|
export * from '@blocksuite/affine-block-callout/view';
|
||||||
@@ -0,0 +1 @@
|
|||||||
|
export * from '@blocksuite/affine-block-code/store';
|
||||||
@@ -0,0 +1 @@
|
|||||||
|
export * from '@blocksuite/affine-block-code/view';
|
||||||
@@ -0,0 +1 @@
|
|||||||
|
export * from '@blocksuite/affine-block-data-view/store';
|
||||||
@@ -0,0 +1 @@
|
|||||||
|
export * from '@blocksuite/affine-block-data-view/view';
|
||||||
@@ -0,0 +1 @@
|
|||||||
|
export * from '@blocksuite/affine-block-database/store';
|
||||||
@@ -0,0 +1 @@
|
|||||||
|
export * from '@blocksuite/affine-block-database/view';
|
||||||
@@ -0,0 +1 @@
|
|||||||
|
export * from '@blocksuite/affine-block-divider/store';
|
||||||
@@ -0,0 +1 @@
|
|||||||
|
export * from '@blocksuite/affine-block-divider/view';
|
||||||
@@ -0,0 +1 @@
|
|||||||
|
export * from '@blocksuite/affine-block-edgeless-text/store';
|
||||||
@@ -0,0 +1 @@
|
|||||||
|
export * from '@blocksuite/affine-block-edgeless-text/view';
|
||||||
@@ -0,0 +1 @@
|
|||||||
|
export * from '@blocksuite/affine-block-embed/store';
|
||||||
@@ -0,0 +1 @@
|
|||||||
|
export * from '@blocksuite/affine-block-embed/view';
|
||||||
@@ -0,0 +1 @@
|
|||||||
|
export * from '@blocksuite/affine-block-frame/store';
|
||||||
@@ -0,0 +1 @@
|
|||||||
|
export * from '@blocksuite/affine-block-frame/view';
|
||||||
@@ -0,0 +1 @@
|
|||||||
|
export * from '@blocksuite/affine-block-image/store';
|
||||||
@@ -0,0 +1 @@
|
|||||||
|
export * from '@blocksuite/affine-block-image/view';
|
||||||
@@ -0,0 +1 @@
|
|||||||
|
export * from '@blocksuite/affine-block-latex/store';
|
||||||
@@ -0,0 +1 @@
|
|||||||
|
export * from '@blocksuite/affine-block-latex/view';
|
||||||
@@ -0,0 +1 @@
|
|||||||
|
export * from '@blocksuite/affine-block-list/store';
|
||||||
@@ -0,0 +1 @@
|
|||||||
|
export * from '@blocksuite/affine-block-list/view';
|
||||||
@@ -0,0 +1 @@
|
|||||||
|
export * from '@blocksuite/affine-block-note/store';
|
||||||
@@ -0,0 +1 @@
|
|||||||
|
export * from '@blocksuite/affine-block-note/view';
|
||||||
@@ -0,0 +1 @@
|
|||||||
|
export * from '@blocksuite/affine-block-paragraph/store';
|
||||||
@@ -0,0 +1 @@
|
|||||||
|
export * from '@blocksuite/affine-block-paragraph/view';
|
||||||
@@ -0,0 +1 @@
|
|||||||
|
export * from '@blocksuite/affine-block-surface-ref/store';
|
||||||
@@ -0,0 +1 @@
|
|||||||
|
export * from '@blocksuite/affine-block-surface-ref/view';
|
||||||
@@ -0,0 +1 @@
|
|||||||
|
export * from '@blocksuite/affine-block-surface/store';
|
||||||
@@ -0,0 +1 @@
|
|||||||
|
export * from '@blocksuite/affine-block-surface/view';
|
||||||
@@ -0,0 +1 @@
|
|||||||
|
export * from '@blocksuite/affine-block-table/store';
|
||||||
@@ -0,0 +1 @@
|
|||||||
|
export * from '@blocksuite/affine-block-table/view';
|
||||||
@@ -21,6 +21,7 @@ import { BlockSelection } from '@blocksuite/affine-components/block-selection';
|
|||||||
import { BlockZeroWidth } from '@blocksuite/affine-components/block-zero-width';
|
import { BlockZeroWidth } from '@blocksuite/affine-components/block-zero-width';
|
||||||
import { effects as componentCaptionEffects } from '@blocksuite/affine-components/caption';
|
import { effects as componentCaptionEffects } from '@blocksuite/affine-components/caption';
|
||||||
import { effects as componentCardStyleDropdownMenuEffects } from '@blocksuite/affine-components/card-style-dropdown-menu';
|
import { effects as componentCardStyleDropdownMenuEffects } from '@blocksuite/affine-components/card-style-dropdown-menu';
|
||||||
|
import { effects as componentCitationEffects } from '@blocksuite/affine-components/citation';
|
||||||
import { effects as componentColorPickerEffects } from '@blocksuite/affine-components/color-picker';
|
import { effects as componentColorPickerEffects } from '@blocksuite/affine-components/color-picker';
|
||||||
import { effects as componentContextMenuEffects } from '@blocksuite/affine-components/context-menu';
|
import { effects as componentContextMenuEffects } from '@blocksuite/affine-components/context-menu';
|
||||||
import { effects as componentDatePickerEffects } from '@blocksuite/affine-components/date-picker';
|
import { effects as componentDatePickerEffects } from '@blocksuite/affine-components/date-picker';
|
||||||
@@ -63,8 +64,6 @@ import { effects as widgetToolbarEffects } from '@blocksuite/affine-widget-toolb
|
|||||||
import { effects as dataViewEffects } from '@blocksuite/data-view/effects';
|
import { effects as dataViewEffects } from '@blocksuite/data-view/effects';
|
||||||
import { effects as stdEffects } from '@blocksuite/std/effects';
|
import { effects as stdEffects } from '@blocksuite/std/effects';
|
||||||
|
|
||||||
import { registerBlockSpecs } from './extensions';
|
|
||||||
|
|
||||||
export declare const _GLOBAL_:
|
export declare const _GLOBAL_:
|
||||||
| typeof stdEffects
|
| typeof stdEffects
|
||||||
| typeof dataViewEffects
|
| typeof dataViewEffects
|
||||||
@@ -113,7 +112,6 @@ export declare const _GLOBAL_:
|
|||||||
| typeof fragmentOutlineEffects;
|
| typeof fragmentOutlineEffects;
|
||||||
|
|
||||||
export function effects() {
|
export function effects() {
|
||||||
registerBlockSpecs();
|
|
||||||
stdEffects();
|
stdEffects();
|
||||||
|
|
||||||
dataViewEffects();
|
dataViewEffects();
|
||||||
@@ -157,6 +155,7 @@ export function effects() {
|
|||||||
componentEmbedCardModalEffects();
|
componentEmbedCardModalEffects();
|
||||||
componentLinkPreviewEffects();
|
componentLinkPreviewEffects();
|
||||||
componentLinkedDocTitleEffects();
|
componentLinkedDocTitleEffects();
|
||||||
|
componentCitationEffects();
|
||||||
componentCardStyleDropdownMenuEffects();
|
componentCardStyleDropdownMenuEffects();
|
||||||
componentHighlightDropdownMenuEffects();
|
componentHighlightDropdownMenuEffects();
|
||||||
componentViewDropdownMenuEffects();
|
componentViewDropdownMenuEffects();
|
||||||
|
|||||||
@@ -0,0 +1 @@
|
|||||||
|
export * from '@blocksuite/affine-ext-loader';
|
||||||
@@ -1,124 +0,0 @@
|
|||||||
import { AttachmentBlockSpec } from '@blocksuite/affine-block-attachment';
|
|
||||||
import { BookmarkBlockSpec } from '@blocksuite/affine-block-bookmark';
|
|
||||||
import { CalloutBlockSpec } from '@blocksuite/affine-block-callout';
|
|
||||||
import { CodeBlockSpec } from '@blocksuite/affine-block-code';
|
|
||||||
import { DataViewBlockSpec } from '@blocksuite/affine-block-data-view';
|
|
||||||
import { DatabaseBlockSpec } from '@blocksuite/affine-block-database';
|
|
||||||
import { DividerBlockSpec } from '@blocksuite/affine-block-divider';
|
|
||||||
import { EdgelessTextBlockSpec } from '@blocksuite/affine-block-edgeless-text';
|
|
||||||
import { EmbedExtensions } from '@blocksuite/affine-block-embed';
|
|
||||||
import { FrameBlockSpec } from '@blocksuite/affine-block-frame';
|
|
||||||
import { ImageBlockSpec } from '@blocksuite/affine-block-image';
|
|
||||||
import { LatexBlockSpec } from '@blocksuite/affine-block-latex';
|
|
||||||
import { ListBlockSpec } from '@blocksuite/affine-block-list';
|
|
||||||
import {
|
|
||||||
EdgelessNoteBlockSpec,
|
|
||||||
NoteBlockSpec,
|
|
||||||
} from '@blocksuite/affine-block-note';
|
|
||||||
import { ParagraphBlockSpec } from '@blocksuite/affine-block-paragraph';
|
|
||||||
import {
|
|
||||||
EdgelessSurfaceBlockAdapterExtensions,
|
|
||||||
EdgelessSurfaceBlockSpec,
|
|
||||||
PageSurfaceBlockSpec,
|
|
||||||
SurfaceBlockAdapterExtensions,
|
|
||||||
} from '@blocksuite/affine-block-surface';
|
|
||||||
import {
|
|
||||||
EdgelessSurfaceRefBlockSpec,
|
|
||||||
PageSurfaceRefBlockSpec,
|
|
||||||
} from '@blocksuite/affine-block-surface-ref';
|
|
||||||
import { TableBlockSpec } from '@blocksuite/affine-block-table';
|
|
||||||
import {
|
|
||||||
brushToMarkdownAdapterMatcher,
|
|
||||||
brushToPlainTextAdapterMatcher,
|
|
||||||
} from '@blocksuite/affine-gfx-brush';
|
|
||||||
import {
|
|
||||||
connectorToMarkdownAdapterMatcher,
|
|
||||||
connectorToPlainTextAdapterMatcher,
|
|
||||||
} from '@blocksuite/affine-gfx-connector';
|
|
||||||
import {
|
|
||||||
groupToMarkdownAdapterMatcher,
|
|
||||||
groupToPlainTextAdapterMatcher,
|
|
||||||
} from '@blocksuite/affine-gfx-group';
|
|
||||||
import {
|
|
||||||
mindmapToMarkdownAdapterMatcher,
|
|
||||||
mindmapToPlainTextAdapterMatcher,
|
|
||||||
} from '@blocksuite/affine-gfx-mindmap';
|
|
||||||
import {
|
|
||||||
shapeToMarkdownAdapterMatcher,
|
|
||||||
shapeToPlainTextAdapterMatcher,
|
|
||||||
} from '@blocksuite/affine-gfx-shape';
|
|
||||||
import {
|
|
||||||
textToMarkdownAdapterMatcher,
|
|
||||||
textToPlainTextAdapterMatcher,
|
|
||||||
} from '@blocksuite/affine-gfx-text';
|
|
||||||
import { inlinePresetExtensions } from '@blocksuite/affine-inline-preset';
|
|
||||||
import {
|
|
||||||
DefaultOpenDocExtension,
|
|
||||||
DocDisplayMetaService,
|
|
||||||
EditPropsStore,
|
|
||||||
FontLoaderService,
|
|
||||||
} from '@blocksuite/affine-shared/services';
|
|
||||||
import type { ExtensionType } from '@blocksuite/store';
|
|
||||||
|
|
||||||
const elementToPlainTextAdapterMatchers = [
|
|
||||||
groupToPlainTextAdapterMatcher,
|
|
||||||
shapeToPlainTextAdapterMatcher,
|
|
||||||
connectorToPlainTextAdapterMatcher,
|
|
||||||
brushToPlainTextAdapterMatcher,
|
|
||||||
textToPlainTextAdapterMatcher,
|
|
||||||
mindmapToPlainTextAdapterMatcher,
|
|
||||||
];
|
|
||||||
|
|
||||||
const elementToMarkdownAdapterMatchers = [
|
|
||||||
groupToMarkdownAdapterMatcher,
|
|
||||||
shapeToMarkdownAdapterMatcher,
|
|
||||||
connectorToMarkdownAdapterMatcher,
|
|
||||||
brushToMarkdownAdapterMatcher,
|
|
||||||
textToMarkdownAdapterMatcher,
|
|
||||||
mindmapToMarkdownAdapterMatcher,
|
|
||||||
];
|
|
||||||
|
|
||||||
export const CommonBlockSpecs: ExtensionType[] = [
|
|
||||||
inlinePresetExtensions,
|
|
||||||
DocDisplayMetaService,
|
|
||||||
EditPropsStore,
|
|
||||||
LatexBlockSpec,
|
|
||||||
ListBlockSpec,
|
|
||||||
DatabaseBlockSpec,
|
|
||||||
TableBlockSpec,
|
|
||||||
DataViewBlockSpec,
|
|
||||||
DividerBlockSpec,
|
|
||||||
BookmarkBlockSpec,
|
|
||||||
EmbedExtensions,
|
|
||||||
AttachmentBlockSpec,
|
|
||||||
CodeBlockSpec,
|
|
||||||
ImageBlockSpec,
|
|
||||||
ParagraphBlockSpec,
|
|
||||||
DefaultOpenDocExtension,
|
|
||||||
FontLoaderService,
|
|
||||||
CalloutBlockSpec,
|
|
||||||
FrameBlockSpec,
|
|
||||||
|
|
||||||
elementToPlainTextAdapterMatchers,
|
|
||||||
elementToMarkdownAdapterMatchers,
|
|
||||||
].flat();
|
|
||||||
|
|
||||||
export const PageFirstPartyBlockSpecs: ExtensionType[] = [
|
|
||||||
CommonBlockSpecs,
|
|
||||||
NoteBlockSpec,
|
|
||||||
PageSurfaceBlockSpec,
|
|
||||||
PageSurfaceRefBlockSpec,
|
|
||||||
|
|
||||||
...SurfaceBlockAdapterExtensions,
|
|
||||||
].flat();
|
|
||||||
|
|
||||||
export const EdgelessFirstPartyBlockSpecs: ExtensionType[] = [
|
|
||||||
CommonBlockSpecs,
|
|
||||||
|
|
||||||
EdgelessNoteBlockSpec,
|
|
||||||
EdgelessSurfaceBlockSpec,
|
|
||||||
EdgelessSurfaceRefBlockSpec,
|
|
||||||
EdgelessTextBlockSpec,
|
|
||||||
|
|
||||||
...EdgelessSurfaceBlockAdapterExtensions,
|
|
||||||
].flat();
|
|
||||||
@@ -1,20 +0,0 @@
|
|||||||
import {
|
|
||||||
EdgelessBuiltInSpecs,
|
|
||||||
PageRootBlockSpec,
|
|
||||||
} from '@blocksuite/affine-block-root';
|
|
||||||
import type { ExtensionType } from '@blocksuite/store';
|
|
||||||
|
|
||||||
import {
|
|
||||||
EdgelessFirstPartyBlockSpecs,
|
|
||||||
PageFirstPartyBlockSpecs,
|
|
||||||
} from './common';
|
|
||||||
|
|
||||||
export const EdgelessEditorBlockSpecs: ExtensionType[] = [
|
|
||||||
EdgelessBuiltInSpecs,
|
|
||||||
EdgelessFirstPartyBlockSpecs,
|
|
||||||
].flat();
|
|
||||||
|
|
||||||
export const PageEditorBlockSpecs: ExtensionType[] = [
|
|
||||||
PageRootBlockSpec,
|
|
||||||
PageFirstPartyBlockSpecs,
|
|
||||||
].flat();
|
|
||||||
@@ -0,0 +1,12 @@
|
|||||||
|
import { effects as blockRootEffects } from '@blocksuite/affine-block-root/effects';
|
||||||
|
import { effects as fragmentDocTitleEffects } from '@blocksuite/affine-fragment-doc-title/effects';
|
||||||
|
import { effects as fragmentFramePanelEffects } from '@blocksuite/affine-fragment-frame-panel/effects';
|
||||||
|
import { effects as fragmentOutlineEffects } from '@blocksuite/affine-fragment-outline/effects';
|
||||||
|
|
||||||
|
export function effects() {
|
||||||
|
blockRootEffects();
|
||||||
|
|
||||||
|
fragmentDocTitleEffects();
|
||||||
|
fragmentFramePanelEffects();
|
||||||
|
fragmentOutlineEffects();
|
||||||
|
}
|
||||||
@@ -1,5 +0,0 @@
|
|||||||
export * from './common';
|
|
||||||
export * from './editor-specs';
|
|
||||||
export * from './preview-specs';
|
|
||||||
export * from './register';
|
|
||||||
export * from './store';
|
|
||||||
@@ -0,0 +1,48 @@
|
|||||||
|
import {
|
||||||
|
RootBlockHtmlAdapterExtension,
|
||||||
|
RootBlockMarkdownAdapterExtension,
|
||||||
|
RootBlockNotionHtmlAdapterExtension,
|
||||||
|
} from '@blocksuite/affine-block-root';
|
||||||
|
import {
|
||||||
|
type StoreExtensionContext,
|
||||||
|
StoreExtensionProvider,
|
||||||
|
} from '@blocksuite/affine-ext-loader';
|
||||||
|
import { RootBlockSchemaExtension } from '@blocksuite/affine-model';
|
||||||
|
import type { ExtensionType } from '@blocksuite/store';
|
||||||
|
|
||||||
|
const defaultBlockHtmlAdapterMatchers = [RootBlockHtmlAdapterExtension];
|
||||||
|
|
||||||
|
const defaultBlockMarkdownAdapterMatchers = [RootBlockMarkdownAdapterExtension];
|
||||||
|
|
||||||
|
const defaultBlockNotionHtmlAdapterMatchers: ExtensionType[] = [
|
||||||
|
RootBlockNotionHtmlAdapterExtension,
|
||||||
|
];
|
||||||
|
|
||||||
|
function getHtmlAdapterExtensions(): ExtensionType[] {
|
||||||
|
return [...defaultBlockHtmlAdapterMatchers];
|
||||||
|
}
|
||||||
|
|
||||||
|
function getMarkdownAdapterExtensions(): ExtensionType[] {
|
||||||
|
return [...defaultBlockMarkdownAdapterMatchers];
|
||||||
|
}
|
||||||
|
|
||||||
|
function getNotionHtmlAdapterExtensions(): ExtensionType[] {
|
||||||
|
return [...defaultBlockNotionHtmlAdapterMatchers];
|
||||||
|
}
|
||||||
|
|
||||||
|
const MigratingStoreExtensions: ExtensionType[] = [
|
||||||
|
RootBlockSchemaExtension,
|
||||||
|
|
||||||
|
getHtmlAdapterExtensions(),
|
||||||
|
getMarkdownAdapterExtensions(),
|
||||||
|
getNotionHtmlAdapterExtensions(),
|
||||||
|
].flat();
|
||||||
|
|
||||||
|
export class MigratingStoreExtension extends StoreExtensionProvider {
|
||||||
|
override name = 'migrating';
|
||||||
|
|
||||||
|
override setup(context: StoreExtensionContext) {
|
||||||
|
super.setup(context);
|
||||||
|
context.register(MigratingStoreExtensions);
|
||||||
|
}
|
||||||
|
}
|
||||||
@@ -0,0 +1,42 @@
|
|||||||
|
import {
|
||||||
|
type ViewExtensionContext,
|
||||||
|
ViewExtensionProvider,
|
||||||
|
} from '@blocksuite/affine-ext-loader';
|
||||||
|
|
||||||
|
import { effects } from './effects';
|
||||||
|
import {
|
||||||
|
MigratingEdgelessEditorBlockSpecs,
|
||||||
|
MigratingPageEditorBlockSpecs,
|
||||||
|
MigratingPreviewEdgelessEditorBlockSpecs,
|
||||||
|
MigratingPreviewPageEditorBlockSpecs,
|
||||||
|
} from './migrating';
|
||||||
|
|
||||||
|
export class MigratingViewExtension extends ViewExtensionProvider {
|
||||||
|
override name = 'migrating';
|
||||||
|
|
||||||
|
override effect() {
|
||||||
|
super.effect();
|
||||||
|
effects();
|
||||||
|
}
|
||||||
|
|
||||||
|
override setup(context: ViewExtensionContext) {
|
||||||
|
super.setup(context);
|
||||||
|
const scope = context.scope;
|
||||||
|
if (scope === 'preview-page') {
|
||||||
|
context.register(MigratingPreviewPageEditorBlockSpecs);
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
if (scope === 'preview-edgeless') {
|
||||||
|
context.register(MigratingPreviewEdgelessEditorBlockSpecs);
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
if (scope === 'page' || scope === 'mobile-page') {
|
||||||
|
context.register(MigratingPageEditorBlockSpecs);
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
if (scope === 'edgeless' || scope === 'mobile-edgeless') {
|
||||||
|
context.register(MigratingEdgelessEditorBlockSpecs);
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
@@ -0,0 +1,26 @@
|
|||||||
|
import {
|
||||||
|
EdgelessBuiltInSpecs,
|
||||||
|
PageRootBlockSpec,
|
||||||
|
PreviewEdgelessRootBlockSpec,
|
||||||
|
PreviewPageRootBlockSpec,
|
||||||
|
ReadOnlyClipboard,
|
||||||
|
} from '@blocksuite/affine-block-root';
|
||||||
|
import type { ExtensionType } from '@blocksuite/store';
|
||||||
|
|
||||||
|
export const MigratingEdgelessEditorBlockSpecs: ExtensionType[] = [
|
||||||
|
EdgelessBuiltInSpecs,
|
||||||
|
].flat();
|
||||||
|
|
||||||
|
export const MigratingPageEditorBlockSpecs: ExtensionType[] = [
|
||||||
|
PageRootBlockSpec,
|
||||||
|
].flat();
|
||||||
|
|
||||||
|
export const MigratingPreviewEdgelessEditorBlockSpecs: ExtensionType[] = [
|
||||||
|
PreviewEdgelessRootBlockSpec,
|
||||||
|
ReadOnlyClipboard,
|
||||||
|
].flat();
|
||||||
|
|
||||||
|
export const MigratingPreviewPageEditorBlockSpecs: ExtensionType[] = [
|
||||||
|
PreviewPageRootBlockSpec,
|
||||||
|
ReadOnlyClipboard,
|
||||||
|
].flat();
|
||||||
@@ -1,23 +0,0 @@
|
|||||||
import {
|
|
||||||
PreviewEdgelessRootBlockSpec,
|
|
||||||
PreviewPageRootBlockSpec,
|
|
||||||
ReadOnlyClipboard,
|
|
||||||
} from '@blocksuite/affine-block-root';
|
|
||||||
import type { ExtensionType } from '@blocksuite/store';
|
|
||||||
|
|
||||||
import {
|
|
||||||
EdgelessFirstPartyBlockSpecs,
|
|
||||||
PageFirstPartyBlockSpecs,
|
|
||||||
} from './common.js';
|
|
||||||
|
|
||||||
export const PreviewEdgelessEditorBlockSpecs: ExtensionType[] = [
|
|
||||||
PreviewEdgelessRootBlockSpec,
|
|
||||||
EdgelessFirstPartyBlockSpecs,
|
|
||||||
ReadOnlyClipboard,
|
|
||||||
].flat();
|
|
||||||
|
|
||||||
export const PreviewPageEditorBlockSpecs: ExtensionType[] = [
|
|
||||||
PreviewPageRootBlockSpec,
|
|
||||||
PageFirstPartyBlockSpecs,
|
|
||||||
ReadOnlyClipboard,
|
|
||||||
].flat();
|
|
||||||
@@ -1,22 +0,0 @@
|
|||||||
import { SpecProvider } from '@blocksuite/affine-shared/utils';
|
|
||||||
|
|
||||||
import {
|
|
||||||
EdgelessEditorBlockSpecs,
|
|
||||||
PageEditorBlockSpecs,
|
|
||||||
} from './editor-specs.js';
|
|
||||||
import {
|
|
||||||
PreviewEdgelessEditorBlockSpecs,
|
|
||||||
PreviewPageEditorBlockSpecs,
|
|
||||||
} from './preview-specs.js';
|
|
||||||
import { StoreExtensions } from './store.js';
|
|
||||||
|
|
||||||
export function registerStoreSpecs() {
|
|
||||||
SpecProvider._.addSpec('store', StoreExtensions);
|
|
||||||
}
|
|
||||||
|
|
||||||
export function registerBlockSpecs() {
|
|
||||||
SpecProvider._.addSpec('page', PageEditorBlockSpecs);
|
|
||||||
SpecProvider._.addSpec('edgeless', EdgelessEditorBlockSpecs);
|
|
||||||
SpecProvider._.addSpec('preview:page', PreviewPageEditorBlockSpecs);
|
|
||||||
SpecProvider._.addSpec('preview:edgeless', PreviewEdgelessEditorBlockSpecs);
|
|
||||||
}
|
|
||||||
@@ -1,112 +1,72 @@
|
|||||||
import { DataViewBlockSchemaExtension } from '@blocksuite/affine-block-data-view';
|
import { AttachmentStoreExtension } from '@blocksuite/affine-block-attachment/store';
|
||||||
import { DatabaseSelectionExtension } from '@blocksuite/affine-block-database';
|
import { BookmarkStoreExtension } from '@blocksuite/affine-block-bookmark/store';
|
||||||
import { EmbedIframeConfigExtensions } from '@blocksuite/affine-block-embed';
|
import { CalloutStoreExtension } from '@blocksuite/affine-block-callout/store';
|
||||||
import { ImageStoreSpec } from '@blocksuite/affine-block-image';
|
import { CodeStoreExtension } from '@blocksuite/affine-block-code/store';
|
||||||
import { SurfaceBlockSchemaExtension } from '@blocksuite/affine-block-surface';
|
import { DataViewStoreExtension } from '@blocksuite/affine-block-data-view/store';
|
||||||
import { TableSelectionExtension } from '@blocksuite/affine-block-table';
|
import { DatabaseStoreExtension } from '@blocksuite/affine-block-database/store';
|
||||||
import {
|
import { DividerStoreExtension } from '@blocksuite/affine-block-divider/store';
|
||||||
AttachmentBlockSchemaExtension,
|
import { EdgelessTextStoreExtension } from '@blocksuite/affine-block-edgeless-text/store';
|
||||||
BookmarkBlockSchemaExtension,
|
import { EmbedStoreExtension } from '@blocksuite/affine-block-embed/store';
|
||||||
CalloutBlockSchemaExtension,
|
import { FrameStoreExtension } from '@blocksuite/affine-block-frame/store';
|
||||||
CodeBlockSchemaExtension,
|
import { ImageStoreExtension } from '@blocksuite/affine-block-image/store';
|
||||||
DatabaseBlockSchemaExtension,
|
import { LatexStoreExtension } from '@blocksuite/affine-block-latex/store';
|
||||||
DividerBlockSchemaExtension,
|
import { ListStoreExtension } from '@blocksuite/affine-block-list/store';
|
||||||
EdgelessTextBlockSchemaExtension,
|
import { NoteStoreExtension } from '@blocksuite/affine-block-note/store';
|
||||||
EmbedFigmaBlockSchemaExtension,
|
import { ParagraphStoreExtension } from '@blocksuite/affine-block-paragraph/store';
|
||||||
EmbedGithubBlockSchemaExtension,
|
import { SurfaceStoreExtension } from '@blocksuite/affine-block-surface/store';
|
||||||
EmbedHtmlBlockSchemaExtension,
|
import { SurfaceRefStoreExtension } from '@blocksuite/affine-block-surface-ref/store';
|
||||||
EmbedIframeBlockSchemaExtension,
|
import { TableStoreExtension } from '@blocksuite/affine-block-table/store';
|
||||||
EmbedLinkedDocBlockSchemaExtension,
|
import { FoundationStoreExtension } from '@blocksuite/affine-foundation/store';
|
||||||
EmbedLoomBlockSchemaExtension,
|
import { BrushStoreExtension } from '@blocksuite/affine-gfx-brush/store';
|
||||||
EmbedSyncedDocBlockSchemaExtension,
|
import { ConnectorStoreExtension } from '@blocksuite/affine-gfx-connector/store';
|
||||||
EmbedYoutubeBlockSchemaExtension,
|
import { GroupStoreExtension } from '@blocksuite/affine-gfx-group/store';
|
||||||
FrameBlockSchemaExtension,
|
import { MindmapStoreExtension } from '@blocksuite/affine-gfx-mindmap/store';
|
||||||
ImageBlockSchemaExtension,
|
import { ShapeStoreExtension } from '@blocksuite/affine-gfx-shape/store';
|
||||||
LatexBlockSchemaExtension,
|
import { TextStoreExtension } from '@blocksuite/affine-gfx-text/store';
|
||||||
ListBlockSchemaExtension,
|
import { FootnoteStoreExtension } from '@blocksuite/affine-inline-footnote/store';
|
||||||
NoteBlockSchemaExtension,
|
import { LatexStoreExtension as InlineLatexStoreExtension } from '@blocksuite/affine-inline-latex/store';
|
||||||
ParagraphBlockSchemaExtension,
|
import { LinkStoreExtension } from '@blocksuite/affine-inline-link/store';
|
||||||
RootBlockSchemaExtension,
|
import { InlinePresetStoreExtension } from '@blocksuite/affine-inline-preset/store';
|
||||||
SurfaceRefBlockSchemaExtension,
|
import { ReferenceStoreExtension } from '@blocksuite/affine-inline-reference/store';
|
||||||
TableBlockSchemaExtension,
|
|
||||||
TranscriptionBlockSchemaExtension,
|
|
||||||
} from '@blocksuite/affine-model';
|
|
||||||
import {
|
|
||||||
HighlightSelectionExtension,
|
|
||||||
ImageSelectionExtension,
|
|
||||||
} from '@blocksuite/affine-shared/selection';
|
|
||||||
import {
|
|
||||||
BlockMetaService,
|
|
||||||
EmbedIframeService,
|
|
||||||
FeatureFlagService,
|
|
||||||
FileSizeLimitService,
|
|
||||||
LinkPreviewerService,
|
|
||||||
} from '@blocksuite/affine-shared/services';
|
|
||||||
import {
|
|
||||||
BlockSelectionExtension,
|
|
||||||
CursorSelectionExtension,
|
|
||||||
SurfaceSelectionExtension,
|
|
||||||
TextSelectionExtension,
|
|
||||||
} from '@blocksuite/std';
|
|
||||||
import type { ExtensionType } from '@blocksuite/store';
|
|
||||||
|
|
||||||
import {
|
import { MigratingStoreExtension } from './migrating-store';
|
||||||
getAdapterFactoryExtensions,
|
|
||||||
getHtmlAdapterExtensions,
|
|
||||||
getMarkdownAdapterExtensions,
|
|
||||||
getNotionHtmlAdapterExtensions,
|
|
||||||
getPlainTextAdapterExtensions,
|
|
||||||
} from '../adapters/extension.js';
|
|
||||||
|
|
||||||
export const StoreExtensions: ExtensionType[] = [
|
export function getInternalStoreExtensions() {
|
||||||
CodeBlockSchemaExtension,
|
return [
|
||||||
ParagraphBlockSchemaExtension,
|
FoundationStoreExtension,
|
||||||
RootBlockSchemaExtension,
|
|
||||||
ListBlockSchemaExtension,
|
|
||||||
NoteBlockSchemaExtension,
|
|
||||||
DividerBlockSchemaExtension,
|
|
||||||
ImageBlockSchemaExtension,
|
|
||||||
SurfaceBlockSchemaExtension,
|
|
||||||
BookmarkBlockSchemaExtension,
|
|
||||||
FrameBlockSchemaExtension,
|
|
||||||
DatabaseBlockSchemaExtension,
|
|
||||||
SurfaceRefBlockSchemaExtension,
|
|
||||||
DataViewBlockSchemaExtension,
|
|
||||||
AttachmentBlockSchemaExtension,
|
|
||||||
EmbedSyncedDocBlockSchemaExtension,
|
|
||||||
EmbedLinkedDocBlockSchemaExtension,
|
|
||||||
EmbedHtmlBlockSchemaExtension,
|
|
||||||
EmbedIframeBlockSchemaExtension,
|
|
||||||
EmbedGithubBlockSchemaExtension,
|
|
||||||
EmbedFigmaBlockSchemaExtension,
|
|
||||||
EmbedLoomBlockSchemaExtension,
|
|
||||||
EmbedYoutubeBlockSchemaExtension,
|
|
||||||
EdgelessTextBlockSchemaExtension,
|
|
||||||
LatexBlockSchemaExtension,
|
|
||||||
TableBlockSchemaExtension,
|
|
||||||
CalloutBlockSchemaExtension,
|
|
||||||
TranscriptionBlockSchemaExtension,
|
|
||||||
|
|
||||||
BlockSelectionExtension,
|
AttachmentStoreExtension,
|
||||||
TextSelectionExtension,
|
BookmarkStoreExtension,
|
||||||
SurfaceSelectionExtension,
|
CalloutStoreExtension,
|
||||||
CursorSelectionExtension,
|
CodeStoreExtension,
|
||||||
HighlightSelectionExtension,
|
DataViewStoreExtension,
|
||||||
ImageSelectionExtension,
|
DatabaseStoreExtension,
|
||||||
DatabaseSelectionExtension,
|
DividerStoreExtension,
|
||||||
TableSelectionExtension,
|
EdgelessTextStoreExtension,
|
||||||
|
EmbedStoreExtension,
|
||||||
|
FrameStoreExtension,
|
||||||
|
ImageStoreExtension,
|
||||||
|
LatexStoreExtension,
|
||||||
|
ListStoreExtension,
|
||||||
|
NoteStoreExtension,
|
||||||
|
ParagraphStoreExtension,
|
||||||
|
SurfaceRefStoreExtension,
|
||||||
|
TableStoreExtension,
|
||||||
|
SurfaceStoreExtension,
|
||||||
|
|
||||||
getHtmlAdapterExtensions(),
|
FootnoteStoreExtension,
|
||||||
getMarkdownAdapterExtensions(),
|
LinkStoreExtension,
|
||||||
getNotionHtmlAdapterExtensions(),
|
ReferenceStoreExtension,
|
||||||
getPlainTextAdapterExtensions(),
|
InlineLatexStoreExtension,
|
||||||
getAdapterFactoryExtensions(),
|
InlinePresetStoreExtension,
|
||||||
|
|
||||||
FeatureFlagService,
|
BrushStoreExtension,
|
||||||
LinkPreviewerService,
|
ShapeStoreExtension,
|
||||||
FileSizeLimitService,
|
MindmapStoreExtension,
|
||||||
ImageStoreSpec,
|
ConnectorStoreExtension,
|
||||||
BlockMetaService,
|
GroupStoreExtension,
|
||||||
EmbedIframeConfigExtensions,
|
TextStoreExtension,
|
||||||
EmbedIframeService,
|
|
||||||
].flat();
|
MigratingStoreExtension,
|
||||||
|
];
|
||||||
|
}
|
||||||
|
|||||||
@@ -0,0 +1,112 @@
|
|||||||
|
import { AttachmentViewExtension } from '@blocksuite/affine-block-attachment/view';
|
||||||
|
import { BookmarkViewExtension } from '@blocksuite/affine-block-bookmark/view';
|
||||||
|
import { CalloutViewExtension } from '@blocksuite/affine-block-callout/view';
|
||||||
|
import { CodeBlockViewExtension } from '@blocksuite/affine-block-code/view';
|
||||||
|
import { DataViewViewExtension } from '@blocksuite/affine-block-data-view/view';
|
||||||
|
import { DatabaseViewExtension } from '@blocksuite/affine-block-database/view';
|
||||||
|
import { DividerViewExtension } from '@blocksuite/affine-block-divider/view';
|
||||||
|
import { EdgelessTextViewExtension } from '@blocksuite/affine-block-edgeless-text/view';
|
||||||
|
import { EmbedViewExtension } from '@blocksuite/affine-block-embed/view';
|
||||||
|
import { FrameViewExtension } from '@blocksuite/affine-block-frame/view';
|
||||||
|
import { ImageViewExtension } from '@blocksuite/affine-block-image/view';
|
||||||
|
import { LatexViewExtension } from '@blocksuite/affine-block-latex/view';
|
||||||
|
import { ListViewExtension } from '@blocksuite/affine-block-list/view';
|
||||||
|
import { NoteViewExtension } from '@blocksuite/affine-block-note/view';
|
||||||
|
import { ParagraphViewExtension } from '@blocksuite/affine-block-paragraph/view';
|
||||||
|
import { SurfaceViewExtension } from '@blocksuite/affine-block-surface/view';
|
||||||
|
import { SurfaceRefViewExtension } from '@blocksuite/affine-block-surface-ref/view';
|
||||||
|
import { TableViewExtension } from '@blocksuite/affine-block-table/view';
|
||||||
|
import { FoundationViewExtension } from '@blocksuite/affine-foundation/view';
|
||||||
|
import { BrushViewExtension } from '@blocksuite/affine-gfx-brush/view';
|
||||||
|
import { ConnectorViewExtension } from '@blocksuite/affine-gfx-connector/view';
|
||||||
|
import { GroupViewExtension } from '@blocksuite/affine-gfx-group/view';
|
||||||
|
import { LinkViewExtension as GfxLinkViewExtension } from '@blocksuite/affine-gfx-link/view';
|
||||||
|
import { MindmapViewExtension } from '@blocksuite/affine-gfx-mindmap/view';
|
||||||
|
import { NoteViewExtension as GfxNoteViewExtension } from '@blocksuite/affine-gfx-note/view';
|
||||||
|
import { PointerViewExtension } from '@blocksuite/affine-gfx-pointer/view';
|
||||||
|
import { ShapeViewExtension } from '@blocksuite/affine-gfx-shape/view';
|
||||||
|
import { TemplateViewExtension } from '@blocksuite/affine-gfx-template/view';
|
||||||
|
import { TextViewExtension } from '@blocksuite/affine-gfx-text/view';
|
||||||
|
import { FootnoteViewExtension } from '@blocksuite/affine-inline-footnote/view';
|
||||||
|
import { LatexViewExtension as InlineLatexViewExtension } from '@blocksuite/affine-inline-latex/view';
|
||||||
|
import { LinkViewExtension } from '@blocksuite/affine-inline-link/view';
|
||||||
|
import { MentionViewExtension } from '@blocksuite/affine-inline-mention/view';
|
||||||
|
import { InlinePresetViewExtension } from '@blocksuite/affine-inline-preset/view';
|
||||||
|
import { ReferenceViewExtension } from '@blocksuite/affine-inline-reference/view';
|
||||||
|
import { DragHandleViewExtension } from '@blocksuite/affine-widget-drag-handle/view';
|
||||||
|
import { EdgelessAutoConnectViewExtension } from '@blocksuite/affine-widget-edgeless-auto-connect/view';
|
||||||
|
import { EdgelessToolbarViewExtension } from '@blocksuite/affine-widget-edgeless-toolbar/view';
|
||||||
|
import { EdgelessZoomToolbarViewExtension } from '@blocksuite/affine-widget-edgeless-zoom-toolbar/view';
|
||||||
|
import { FrameTitleViewExtension } from '@blocksuite/affine-widget-frame-title/view';
|
||||||
|
import { KeyboardToolbarViewExtension } from '@blocksuite/affine-widget-keyboard-toolbar/view';
|
||||||
|
import { LinkedDocViewExtension } from '@blocksuite/affine-widget-linked-doc/view';
|
||||||
|
import { PageDraggingAreaViewExtension } from '@blocksuite/affine-widget-page-dragging-area/view';
|
||||||
|
import { RemoteSelectionViewExtension } from '@blocksuite/affine-widget-remote-selection/view';
|
||||||
|
import { ScrollAnchoringViewExtension } from '@blocksuite/affine-widget-scroll-anchoring/view';
|
||||||
|
import { SlashMenuViewExtension } from '@blocksuite/affine-widget-slash-menu/view';
|
||||||
|
import { ToolbarViewExtension } from '@blocksuite/affine-widget-toolbar/view';
|
||||||
|
import { ViewportOverlayViewExtension } from '@blocksuite/affine-widget-viewport-overlay/view';
|
||||||
|
|
||||||
|
import { MigratingViewExtension } from './migrating-view';
|
||||||
|
|
||||||
|
export function getInternalViewExtensions() {
|
||||||
|
return [
|
||||||
|
FoundationViewExtension,
|
||||||
|
|
||||||
|
// Gfx
|
||||||
|
PointerViewExtension,
|
||||||
|
GfxNoteViewExtension,
|
||||||
|
BrushViewExtension,
|
||||||
|
ShapeViewExtension,
|
||||||
|
MindmapViewExtension,
|
||||||
|
ConnectorViewExtension,
|
||||||
|
GroupViewExtension,
|
||||||
|
TextViewExtension,
|
||||||
|
TemplateViewExtension,
|
||||||
|
GfxLinkViewExtension,
|
||||||
|
|
||||||
|
// Block
|
||||||
|
AttachmentViewExtension,
|
||||||
|
BookmarkViewExtension,
|
||||||
|
CalloutViewExtension,
|
||||||
|
CodeBlockViewExtension,
|
||||||
|
DataViewViewExtension,
|
||||||
|
DatabaseViewExtension,
|
||||||
|
DividerViewExtension,
|
||||||
|
EdgelessTextViewExtension,
|
||||||
|
EmbedViewExtension,
|
||||||
|
FrameViewExtension,
|
||||||
|
ImageViewExtension,
|
||||||
|
LatexViewExtension,
|
||||||
|
ListViewExtension,
|
||||||
|
NoteViewExtension,
|
||||||
|
ParagraphViewExtension,
|
||||||
|
SurfaceRefViewExtension,
|
||||||
|
TableViewExtension,
|
||||||
|
SurfaceViewExtension,
|
||||||
|
|
||||||
|
// Inline
|
||||||
|
FootnoteViewExtension,
|
||||||
|
LinkViewExtension,
|
||||||
|
ReferenceViewExtension,
|
||||||
|
InlineLatexViewExtension,
|
||||||
|
MentionViewExtension,
|
||||||
|
InlinePresetViewExtension,
|
||||||
|
|
||||||
|
// Widget
|
||||||
|
DragHandleViewExtension,
|
||||||
|
EdgelessAutoConnectViewExtension,
|
||||||
|
EdgelessToolbarViewExtension,
|
||||||
|
MigratingViewExtension,
|
||||||
|
FrameTitleViewExtension,
|
||||||
|
KeyboardToolbarViewExtension,
|
||||||
|
LinkedDocViewExtension,
|
||||||
|
RemoteSelectionViewExtension,
|
||||||
|
ScrollAnchoringViewExtension,
|
||||||
|
SlashMenuViewExtension,
|
||||||
|
ToolbarViewExtension,
|
||||||
|
ViewportOverlayViewExtension,
|
||||||
|
EdgelessZoomToolbarViewExtension,
|
||||||
|
PageDraggingAreaViewExtension,
|
||||||
|
];
|
||||||
|
}
|
||||||
@@ -0,0 +1 @@
|
|||||||
|
export * from '@blocksuite/affine-gfx-brush/store';
|
||||||
@@ -0,0 +1 @@
|
|||||||
|
export * from '@blocksuite/affine-gfx-brush/view';
|
||||||
@@ -0,0 +1 @@
|
|||||||
|
export * from '@blocksuite/affine-gfx-connector/store';
|
||||||
@@ -0,0 +1 @@
|
|||||||
|
export * from '@blocksuite/affine-gfx-connector/view';
|
||||||
@@ -0,0 +1 @@
|
|||||||
|
export * from '@blocksuite/affine-gfx-group/store';
|
||||||
@@ -0,0 +1 @@
|
|||||||
|
export * from '@blocksuite/affine-gfx-group/view';
|
||||||
@@ -0,0 +1 @@
|
|||||||
|
export * from '@blocksuite/affine-gfx-link';
|
||||||
@@ -0,0 +1 @@
|
|||||||
|
export * from '@blocksuite/affine-gfx-link/view';
|
||||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user