chore: bump oxlint & enable more supported rules (#14769)

This commit is contained in:
DarkSky
2026-04-03 03:36:52 +08:00
committed by GitHub
parent cdadf8588a
commit 233004f867
285 changed files with 937 additions and 1983 deletions

View File

@@ -82,17 +82,13 @@ jobs:
run: | run: |
set -euo pipefail set -euo pipefail
"$(go env GOPATH)/bin/actionlint" "$(go env GOPATH)/bin/actionlint"
- name: Run oxlint
# oxlint is fast, so wrong code will fail quickly
run: |
set -euo pipefail
oxlint_version="$(node -e "console.log(require('./package.json').devDependencies.oxlint)")"
yarn dlx "oxlint@${oxlint_version}" --deny-warnings
- name: Setup Node.js - name: Setup Node.js
uses: ./.github/actions/setup-node uses: ./.github/actions/setup-node
with: with:
electron-install: false electron-install: false
full-cache: true full-cache: true
- name: Run oxlint
run: yarn lint:ox
- name: Run i18n codegen - name: Run i18n codegen
run: yarn affine @affine/i18n build run: yarn affine @affine/i18n build
- name: Run ESLint - name: Run ESLint

View File

@@ -1,10 +1,18 @@
{ {
"$schema": "./node_modules/oxlint/configuration_schema.json", "$schema": "./node_modules/oxlint/configuration_schema.json",
"jsPlugins": [
"eslint-plugin-simple-import-sort",
"eslint-plugin-sonarjs",
"eslint-plugin-lit"
],
"plugins": ["import", "react", "typescript", "unicorn", "promise"], "plugins": ["import", "react", "typescript", "unicorn", "promise"],
"categories": { "categories": {
"correctness": "error", "correctness": "error",
"perf": "error" "perf": "error"
}, },
"options": {
"typeAware": true
},
"env": { "env": {
"builtin": true, "builtin": true,
"es2026": true "es2026": true
@@ -15,6 +23,7 @@
".github/helm", ".github/helm",
".git", ".git",
".vscode", ".vscode",
".context/**/*.js",
".yarnrc.yml", ".yarnrc.yml",
".docker", ".docker",
"**/.storybook", "**/.storybook",
@@ -56,9 +65,31 @@
"react/display-name": "error", "react/display-name": "error",
"react/rules-of-hooks": "error", "react/rules-of-hooks": "error",
"react/exhaustive-deps": "warn", "react/exhaustive-deps": "warn",
"@typescript-eslint/prefer-for-of": "error", "typescript/prefer-for-of": "error",
"@typescript-eslint/no-unsafe-function-type": "error", "typescript/no-unsafe-function-type": "error",
"@typescript-eslint/no-wrapper-object-types": "error", "typescript/no-wrapper-object-types": "error",
"typescript/unified-signatures": "error",
"typescript/await-thenable": "allow",
"typescript/no-floating-promises": "allow",
"typescript/no-misused-promises": "allow",
"typescript/prefer-readonly": "allow",
"typescript/require-array-sort-compare": "allow",
"typescript/return-await": ["error", "error-handling-correctness-only"],
"typescript/no-array-delete": "allow",
"typescript/no-base-to-string": "allow",
"typescript/no-duplicate-type-constituents": "allow",
"typescript/no-for-in-array": "allow",
"typescript/no-implied-eval": "allow",
"typescript/no-meaningless-void-operator": "allow",
"typescript/no-misused-spread": "allow",
"typescript/no-redundant-type-constituents": "allow",
"typescript/no-unnecessary-parameter-property-assignment": "allow",
"typescript/no-unsafe-unary-minus": "allow",
"typescript/no-useless-empty-export": "allow",
"typescript/prefer-namespace-keyword": "allow",
"typescript/prefer-string-starts-ends-with": "allow",
"typescript/restrict-template-expressions": "allow",
"typescript/unbound-method": "allow",
"no-restricted-imports": [ "no-restricted-imports": [
"error", "error",
{ {
@@ -167,6 +198,29 @@
"react/jsx-no-target-blank": "error", "react/jsx-no-target-blank": "error",
"react/jsx-no-comment-textnodes": "error", "react/jsx-no-comment-textnodes": "error",
"react/no-array-index-key": "off", "react/no-array-index-key": "off",
"simple-import-sort/imports": "error",
"simple-import-sort/exports": "error",
"sonarjs/no-all-duplicated-branches": "error",
"sonarjs/no-element-overwrite": "error",
"sonarjs/no-empty-collection": "error",
"sonarjs/no-extra-arguments": "error",
"sonarjs/no-identical-conditions": "error",
"sonarjs/no-identical-expressions": "error",
"sonarjs/no-ignored-return": "error",
"sonarjs/no-use-of-empty-return-value": "error",
"sonarjs/non-existent-operator": "error",
"sonarjs/no-collapsible-if": "error",
"sonarjs/no-same-line-conditional": "error",
"sonarjs/no-duplicated-branches": "error",
"sonarjs/no-collection-size-mischeck": "error",
"sonarjs/no-identical-functions": "error",
"sonarjs/no-gratuitous-expressions": "error",
"lit/attribute-value-entities": "error",
"lit/binding-positions": "error",
"lit/no-duplicate-template-bindings": "error",
"lit/no-invalid-html": "error",
"lit/no-legacy-template-syntax": "error",
"lit/no-property-change-update": "error",
"typescript/consistent-type-imports": "error", "typescript/consistent-type-imports": "error",
"typescript/no-non-null-assertion": "error", "typescript/no-non-null-assertion": "error",
"typescript/triple-slash-reference": "error", "typescript/triple-slash-reference": "error",
@@ -174,7 +228,6 @@
"typescript/no-duplicate-enum-values": "error", "typescript/no-duplicate-enum-values": "error",
"typescript/no-extra-non-null-assertion": "error", "typescript/no-extra-non-null-assertion": "error",
"typescript/no-misused-new": "error", "typescript/no-misused-new": "error",
"typescript/prefer-for-of": "error",
"typescript/no-unsafe-declaration-merging": "error", "typescript/no-unsafe-declaration-merging": "error",
"typescript/no-unnecessary-type-constraint": "error", "typescript/no-unnecessary-type-constraint": "error",
"typescript/no-this-alias": [ "typescript/no-this-alias": [
@@ -226,11 +279,10 @@
"ignoreTypes": true "ignoreTypes": true
} }
], ],
"import/sort-imports": "error",
"import/namespace": "off", "import/namespace": "off",
"import/no-webpack-loader-syntax": "error", "import/no-webpack-loader-syntax": "error",
"import/no-duplicates": "error", "import/no-duplicates": "error",
"import/no-import-assign": "error", "no-import-assign": "error",
"import/no-self-import": "error" "import/no-self-import": "error"
}, },
"overrides": [ "overrides": [
@@ -269,7 +321,7 @@
{ {
"files": ["blocksuite/**/*.ts"], "files": ["blocksuite/**/*.ts"],
"rules": { "rules": {
"eslint/eqeqeq": "off", "eqeqeq": "off",
"typescript/no-non-null-assertion": "off", "typescript/no-non-null-assertion": "off",
"unicorn/prefer-array-some": "off" "unicorn/prefer-array-some": "off"
} }
@@ -290,6 +342,17 @@
"blocksuite/**/*.{ts,tsx}" "blocksuite/**/*.{ts,tsx}"
], ],
"rules": { "rules": {
"typescript/await-thenable": "error",
"typescript/no-floating-promises": [
"error",
{
"ignoreVoid": false,
"ignoreIIFE": false
}
],
"typescript/no-misused-promises": "error",
"typescript/prefer-readonly": "error",
"typescript/require-array-sort-compare": "error",
"react/exhaustive-deps": [ "react/exhaustive-deps": [
"warn", "warn",
{ {
@@ -310,6 +373,14 @@
"**/e2e/**/*" "**/e2e/**/*"
], ],
"rules": { "rules": {
"typescript/no-floating-promises": [
"error",
{
"ignoreVoid": true,
"ignoreIIFE": false
}
],
"typescript/no-misused-promises": "off",
"no-restricted-imports": "off" "no-restricted-imports": "off"
} }
}, },
@@ -318,6 +389,13 @@
"rules": { "rules": {
"react/rules-of-hooks": "off" "react/rules-of-hooks": "off"
} }
},
{
"files": ["blocksuite/framework/std/src/view/element/lit-host.ts"],
"rules": {
"lit/binding-positions": "off",
"lit/no-invalid-html": "off"
}
} }
] ]
} }

View File

@@ -4,6 +4,7 @@
.github/helm .github/helm
.git .git
.vscode .vscode
.context/**/*.js
.yarnrc.yml .yarnrc.yml
.docker .docker
**/.storybook **/.storybook

View File

@@ -32,6 +32,8 @@
"editor.defaultFormatter": "esbenp.prettier-vscode" "editor.defaultFormatter": "esbenp.prettier-vscode"
}, },
"vitest.include": ["packages/**/*.spec.ts", "packages/**/*.spec.tsx"], "vitest.include": ["packages/**/*.spec.ts", "packages/**/*.spec.tsx"],
"eslint.runtime": "node",
"eslint.execArgv": ["--max_old_space_size=16384"],
"rust-analyzer.check.extraEnv": { "rust-analyzer.check.extraEnv": {
"DATABASE_URL": "sqlite:affine.db" "DATABASE_URL": "sqlite:affine.db"
}, },

View File

@@ -78,8 +78,7 @@
"@blocksuite/global": "workspace:*", "@blocksuite/global": "workspace:*",
"@blocksuite/std": "workspace:*", "@blocksuite/std": "workspace:*",
"@blocksuite/store": "workspace:*", "@blocksuite/store": "workspace:*",
"@blocksuite/sync": "workspace:*", "@blocksuite/sync": "workspace:*"
"rxjs": "^7.8.2"
}, },
"exports": { "exports": {
".": "./src/index.ts", ".": "./src/index.ts",

View File

@@ -1,3 +1,3 @@
/* eslint-disable @typescript-eslint/no-restricted-imports */ /* oxlint-disable no-restricted-imports */
export * from '@blocksuite/store'; export * from '@blocksuite/store';

View File

@@ -21,13 +21,10 @@
"@blocksuite/std": "workspace:*", "@blocksuite/std": "workspace:*",
"@blocksuite/store": "workspace:*", "@blocksuite/store": "workspace:*",
"@floating-ui/dom": "^1.6.13", "@floating-ui/dom": "^1.6.13",
"@lit/context": "^1.1.2",
"@preact/signals-core": "^1.8.0", "@preact/signals-core": "^1.8.0",
"@toeverything/theme": "^1.1.23",
"file-type": "^21.0.0", "file-type": "^21.0.0",
"lit": "^3.2.0", "lit": "^3.2.0",
"rxjs": "^7.8.2", "rxjs": "^7.8.2"
"zod": "^3.25.76"
}, },
"exports": { "exports": {
".": "./src/index.ts", ".": "./src/index.ts",

View File

@@ -144,7 +144,7 @@ export const attachmentViewDropdownMenu = {
@toggle=${onToggle} @toggle=${onToggle}
.actions=${actions.value} .actions=${actions.value}
.context=${ctx} .context=${ctx}
.viewType$=${viewType$} .viewTypeSignal=${viewType$}
></affine-view-dropdown-menu>`; ></affine-view-dropdown-menu>`;
}, },
} as const satisfies ToolbarActionGroup<ToolbarAction>; } as const satisfies ToolbarActionGroup<ToolbarAction>;
@@ -366,7 +366,7 @@ const builtinSurfaceToolbarConfig = {
@toggle=${onToggle} @toggle=${onToggle}
.actions=${actions} .actions=${actions}
.context=${ctx} .context=${ctx}
.style$=${style$} .styleSignal=${style$}
></affine-card-style-dropdown-menu>` ></affine-card-style-dropdown-menu>`
)}`; )}`;
}, },

View File

@@ -22,13 +22,11 @@
"@blocksuite/icons": "^2.2.17", "@blocksuite/icons": "^2.2.17",
"@blocksuite/std": "workspace:*", "@blocksuite/std": "workspace:*",
"@blocksuite/store": "workspace:*", "@blocksuite/store": "workspace:*",
"@lit/context": "^1.1.2",
"@preact/signals-core": "^1.8.0", "@preact/signals-core": "^1.8.0",
"@toeverything/theme": "^1.1.23", "@toeverything/theme": "^1.1.23",
"lit": "^3.2.0", "lit": "^3.2.0",
"rxjs": "^7.8.2", "rxjs": "^7.8.2",
"yjs": "^13.6.27", "yjs": "^13.6.27"
"zod": "^3.25.76"
}, },
"devDependencies": { "devDependencies": {
"@vitest/browser-playwright": "^4.0.18", "@vitest/browser-playwright": "^4.0.18",

View File

@@ -237,7 +237,7 @@ const builtinToolbarConfig = {
@toggle=${onToggle} @toggle=${onToggle}
.actions=${actions} .actions=${actions}
.context=${ctx} .context=${ctx}
.viewType$=${viewType$} .viewTypeSignal=${viewType$}
></affine-view-dropdown-menu>` ></affine-view-dropdown-menu>`
)}`; )}`;
}, },
@@ -282,7 +282,7 @@ const builtinToolbarConfig = {
@toggle=${onToggle} @toggle=${onToggle}
.actions=${actions} .actions=${actions}
.context=${ctx} .context=${ctx}
.style$=${model.props.style$} .styleSignal=${model.props.style$}
></affine-card-style-dropdown-menu>` ></affine-card-style-dropdown-menu>`
)}`; )}`;
}, },
@@ -472,7 +472,7 @@ const builtinSurfaceToolbarConfig = {
@toggle=${onToggle} @toggle=${onToggle}
.actions=${actions} .actions=${actions}
.context=${ctx} .context=${ctx}
.viewType$=${viewType$} .viewTypeSignal=${viewType$}
></affine-view-dropdown-menu>` ></affine-view-dropdown-menu>`
)}`; )}`;
}, },
@@ -534,7 +534,7 @@ const builtinSurfaceToolbarConfig = {
@toggle=${onToggle} @toggle=${onToggle}
.actions=${actions} .actions=${actions}
.context=${ctx} .context=${ctx}
.style$=${style$} .styleSignal=${style$}
></affine-card-style-dropdown-menu>` ></affine-card-style-dropdown-menu>`
)}`; )}`;
}, },
@@ -591,7 +591,7 @@ const builtinSurfaceToolbarConfig = {
@select=${onSelect} @select=${onSelect}
@toggle=${onToggle} @toggle=${onToggle}
.format=${format} .format=${format}
.size$=${scale$} .sizeSignal=${scale$}
></affine-size-dropdown-menu>` ></affine-size-dropdown-menu>`
)}`; )}`;
}, },

View File

@@ -17,21 +17,13 @@
"@blocksuite/affine-rich-text": "workspace:*", "@blocksuite/affine-rich-text": "workspace:*",
"@blocksuite/affine-shared": "workspace:*", "@blocksuite/affine-shared": "workspace:*",
"@blocksuite/affine-widget-slash-menu": "workspace:*", "@blocksuite/affine-widget-slash-menu": "workspace:*",
"@blocksuite/global": "workspace:*",
"@blocksuite/icons": "^2.2.17", "@blocksuite/icons": "^2.2.17",
"@blocksuite/std": "workspace:*", "@blocksuite/std": "workspace:*",
"@blocksuite/store": "workspace:*", "@blocksuite/store": "workspace:*",
"@emoji-mart/data": "^1.2.1",
"@emotion/css": "^11.13.5", "@emotion/css": "^11.13.5",
"@floating-ui/dom": "^1.6.10",
"@lit/context": "^1.1.2",
"@preact/signals-core": "^1.8.0", "@preact/signals-core": "^1.8.0",
"@toeverything/theme": "^1.1.23", "@toeverything/theme": "^1.1.23",
"@types/mdast": "^4.0.4", "lit": "^3.2.0"
"emoji-mart": "^5.6.0",
"lit": "^3.2.0",
"rxjs": "^7.8.2",
"zod": "^3.25.76"
}, },
"exports": { "exports": {
".": "./src/index.ts", ".": "./src/index.ts",

View File

@@ -25,4 +25,4 @@ export const calloutTooltip = html`<svg width="170" height="106" viewBox="0 0 17
</clipPath> </clipPath>
</defs> </defs>
</svg> </svg>
` `;

View File

@@ -14,7 +14,6 @@
{ "path": "../../rich-text" }, { "path": "../../rich-text" },
{ "path": "../../shared" }, { "path": "../../shared" },
{ "path": "../../widgets/slash-menu" }, { "path": "../../widgets/slash-menu" },
{ "path": "../../../framework/global" },
{ "path": "../../../framework/std" }, { "path": "../../../framework/std" },
{ "path": "../../../framework/store" } { "path": "../../../framework/store" }
] ]

View File

@@ -26,12 +26,9 @@
"@blocksuite/std": "workspace:*", "@blocksuite/std": "workspace:*",
"@blocksuite/store": "workspace:*", "@blocksuite/store": "workspace:*",
"@floating-ui/dom": "^1.6.13", "@floating-ui/dom": "^1.6.13",
"@lit/context": "^1.1.2",
"@preact/signals-core": "^1.8.0", "@preact/signals-core": "^1.8.0",
"@toeverything/theme": "^1.1.23",
"@types/mdast": "^4.0.4", "@types/mdast": "^4.0.4",
"lit": "^3.2.0", "lit": "^3.2.0",
"rxjs": "^7.8.2",
"shiki": "^3.19.0", "shiki": "^3.19.0",
"zod": "^3.25.76" "zod": "^3.25.76"
}, },

View File

@@ -21,14 +21,9 @@
"@blocksuite/icons": "^2.2.17", "@blocksuite/icons": "^2.2.17",
"@blocksuite/std": "workspace:*", "@blocksuite/std": "workspace:*",
"@blocksuite/store": "workspace:*", "@blocksuite/store": "workspace:*",
"@floating-ui/dom": "^1.6.13",
"@lit/context": "^1.1.2",
"@preact/signals-core": "^1.8.0", "@preact/signals-core": "^1.8.0",
"@toeverything/theme": "^1.1.23",
"@types/mdast": "^4.0.4",
"lit": "^3.2.0", "lit": "^3.2.0",
"rxjs": "^7.8.2", "rxjs": "^7.8.2"
"zod": "^3.25.76"
}, },
"exports": { "exports": {
".": "./src/index.ts", ".": "./src/index.ts",

View File

@@ -26,13 +26,11 @@
"@blocksuite/store": "workspace:*", "@blocksuite/store": "workspace:*",
"@emotion/css": "^11.13.5", "@emotion/css": "^11.13.5",
"@floating-ui/dom": "^1.6.13", "@floating-ui/dom": "^1.6.13",
"@lit/context": "^1.1.2",
"@preact/signals-core": "^1.8.0", "@preact/signals-core": "^1.8.0",
"@toeverything/theme": "^1.1.23", "@toeverything/theme": "^1.1.23",
"@types/mdast": "^4.0.4", "@types/mdast": "^4.0.4",
"date-fns": "^4.0.0", "date-fns": "^4.0.0",
"lit": "^3.2.0", "lit": "^3.2.0",
"rxjs": "^7.8.2",
"yjs": "^13.6.27", "yjs": "^13.6.27",
"zod": "^3.25.76" "zod": "^3.25.76"
}, },

View File

@@ -47,7 +47,7 @@ export const databasePropertyConverts = [
propertyModelPresets.multiSelectPropertyModelConfig, propertyModelPresets.multiSelectPropertyModelConfig,
(_property, cells) => { (_property, cells) => {
const options: Record<string, SelectTag> = {}; const options: Record<string, SelectTag> = {};
// eslint-disable-next-line sonarjs/no-identical-functions // oxlint-disable-next-line sonarjs/no-identical-functions
const getTag = (name: string) => { const getTag = (name: string) => {
if (options[name]) return options[name]; if (options[name]) return options[name];
const tag: SelectTag = { const tag: SelectTag = {

View File

@@ -15,17 +15,10 @@
"@blocksuite/affine-model": "workspace:*", "@blocksuite/affine-model": "workspace:*",
"@blocksuite/affine-rich-text": "workspace:*", "@blocksuite/affine-rich-text": "workspace:*",
"@blocksuite/affine-shared": "workspace:*", "@blocksuite/affine-shared": "workspace:*",
"@blocksuite/global": "workspace:*",
"@blocksuite/std": "workspace:*", "@blocksuite/std": "workspace:*",
"@blocksuite/store": "workspace:*", "@blocksuite/store": "workspace:*",
"@floating-ui/dom": "^1.6.13",
"@lit/context": "^1.1.2",
"@preact/signals-core": "^1.8.0",
"@toeverything/theme": "^1.1.23",
"@types/mdast": "^4.0.4", "@types/mdast": "^4.0.4",
"lit": "^3.2.0", "lit": "^3.2.0"
"rxjs": "^7.8.2",
"zod": "^3.25.76"
}, },
"exports": { "exports": {
".": "./src/index.ts", ".": "./src/index.ts",

View File

@@ -12,7 +12,6 @@
{ "path": "../../model" }, { "path": "../../model" },
{ "path": "../../rich-text" }, { "path": "../../rich-text" },
{ "path": "../../shared" }, { "path": "../../shared" },
{ "path": "../../../framework/global" },
{ "path": "../../../framework/std" }, { "path": "../../../framework/std" },
{ "path": "../../../framework/store" } { "path": "../../../framework/store" }
] ]

View File

@@ -11,25 +11,17 @@
"license": "MIT", "license": "MIT",
"dependencies": { "dependencies": {
"@blocksuite/affine-block-surface": "workspace:*", "@blocksuite/affine-block-surface": "workspace:*",
"@blocksuite/affine-components": "workspace:*",
"@blocksuite/affine-ext-loader": "workspace:*", "@blocksuite/affine-ext-loader": "workspace:*",
"@blocksuite/affine-gfx-text": "workspace:*", "@blocksuite/affine-gfx-text": "workspace:*",
"@blocksuite/affine-inline-preset": "workspace:*", "@blocksuite/affine-inline-preset": "workspace:*",
"@blocksuite/affine-model": "workspace:*", "@blocksuite/affine-model": "workspace:*",
"@blocksuite/affine-rich-text": "workspace:*", "@blocksuite/affine-rich-text": "workspace:*",
"@blocksuite/affine-shared": "workspace:*", "@blocksuite/affine-shared": "workspace:*",
"@blocksuite/affine-widget-edgeless-toolbar": "workspace:*",
"@blocksuite/global": "workspace:*", "@blocksuite/global": "workspace:*",
"@blocksuite/icons": "^2.2.17",
"@blocksuite/std": "workspace:*", "@blocksuite/std": "workspace:*",
"@blocksuite/store": "workspace:*", "@blocksuite/store": "workspace:*",
"@floating-ui/dom": "^1.6.13",
"@lit/context": "^1.1.2",
"@preact/signals-core": "^1.8.0", "@preact/signals-core": "^1.8.0",
"@toeverything/theme": "^1.1.23", "lit": "^3.2.0"
"lit": "^3.2.0",
"rxjs": "^7.8.2",
"zod": "^3.25.76"
}, },
"exports": { "exports": {
".": "./src/index.ts", ".": "./src/index.ts",

View File

@@ -8,14 +8,12 @@
"include": ["./src"], "include": ["./src"],
"references": [ "references": [
{ "path": "../surface" }, { "path": "../surface" },
{ "path": "../../components" },
{ "path": "../../ext-loader" }, { "path": "../../ext-loader" },
{ "path": "../../gfx/text" }, { "path": "../../gfx/text" },
{ "path": "../../inlines/preset" }, { "path": "../../inlines/preset" },
{ "path": "../../model" }, { "path": "../../model" },
{ "path": "../../rich-text" }, { "path": "../../rich-text" },
{ "path": "../../shared" }, { "path": "../../shared" },
{ "path": "../../widgets/edgeless-toolbar" },
{ "path": "../../../framework/global" }, { "path": "../../../framework/global" },
{ "path": "../../../framework/std" }, { "path": "../../../framework/std" },
{ "path": "../../../framework/store" } { "path": "../../../framework/store" }

View File

@@ -23,19 +23,12 @@
"@blocksuite/icons": "^2.2.17", "@blocksuite/icons": "^2.2.17",
"@blocksuite/std": "workspace:*", "@blocksuite/std": "workspace:*",
"@blocksuite/store": "workspace:*", "@blocksuite/store": "workspace:*",
"@floating-ui/dom": "^1.6.13",
"@lit/context": "^1.1.2",
"@preact/signals-core": "^1.8.0", "@preact/signals-core": "^1.8.0",
"@toeverything/theme": "^1.1.23",
"@types/lodash-es": "^4.17.12", "@types/lodash-es": "^4.17.12",
"lit": "^3.2.0", "lit": "^3.2.0",
"lodash-es": "^4.17.23", "lodash-es": "^4.17.23",
"rxjs": "^7.8.2", "rxjs": "^7.8.2",
"yjs": "^13.6.27", "yjs": "^13.6.27"
"zod": "^3.25.76"
},
"devDependencies": {
"vitest": "^4.0.18"
}, },
"exports": { "exports": {
".": "./src/index.ts", ".": "./src/index.ts",

View File

@@ -25,7 +25,7 @@ export function renderLinkedDocInCard(
return; return;
} }
// eslint-disable-next-line sonarjs/no-collapsible-if // oxlint-disable-next-line sonarjs/no-collapsible-if
if ('bannerContainer' in card) { if ('bannerContainer' in card) {
if (card.editorMode === 'page') { if (card.editorMode === 'page') {
renderPageAsBanner(card).catch(e => { renderPageAsBanner(card).catch(e => {

View File

@@ -247,7 +247,7 @@ const conversionsActionGroup = {
@toggle=${onToggle} @toggle=${onToggle}
.actions=${actions} .actions=${actions}
.context=${ctx} .context=${ctx}
.viewType$=${viewType$} .viewTypeSignal=${viewType$}
></affine-view-dropdown-menu>` ></affine-view-dropdown-menu>`
)}`; )}`;
}, },
@@ -299,7 +299,7 @@ const builtinToolbarConfig = {
@toggle=${onToggle} @toggle=${onToggle}
.actions=${actions} .actions=${actions}
.context=${ctx} .context=${ctx}
.style$=${model.props.style$} .styleSignal=${model.props.style$}
></affine-card-style-dropdown-menu>` ></affine-card-style-dropdown-menu>`
)}`; )}`;
}, },
@@ -423,7 +423,7 @@ const builtinSurfaceToolbarConfig = {
@toggle=${onToggle} @toggle=${onToggle}
.actions=${actions} .actions=${actions}
.context=${ctx} .context=${ctx}
.style$=${style$} .styleSignal=${style$}
></affine-card-style-dropdown-menu>` ></affine-card-style-dropdown-menu>`
)}`; )}`;
}, },
@@ -479,7 +479,7 @@ const builtinSurfaceToolbarConfig = {
@select=${onSelect} @select=${onSelect}
@toggle=${onToggle} @toggle=${onToggle}
.format=${format} .format=${format}
.size$=${scale$} .sizeSignal=${scale$}
></affine-size-dropdown-menu>` ></affine-size-dropdown-menu>`
)}`; )}`;
}, },

View File

@@ -199,7 +199,7 @@ const conversionsActionGroup = {
@toggle=${onToggle} @toggle=${onToggle}
.actions=${actions} .actions=${actions}
.context=${ctx} .context=${ctx}
.viewType$=${viewType$} .viewTypeSignal=${viewType$}
></affine-view-dropdown-menu>` ></affine-view-dropdown-menu>`
)}`; )}`;
}, },
@@ -466,7 +466,7 @@ const builtinSurfaceToolbarConfig = {
@select=${onSelect} @select=${onSelect}
@toggle=${onToggle} @toggle=${onToggle}
.format=${format} .format=${format}
.size$=${scale$} .sizeSignal=${scale$}
></affine-size-dropdown-menu>` ></affine-size-dropdown-menu>`
)}`; )}`;
}, },

View File

@@ -13,10 +13,7 @@
"@blocksuite/affine-block-surface": "workspace:*", "@blocksuite/affine-block-surface": "workspace:*",
"@blocksuite/affine-components": "workspace:*", "@blocksuite/affine-components": "workspace:*",
"@blocksuite/affine-ext-loader": "workspace:*", "@blocksuite/affine-ext-loader": "workspace:*",
"@blocksuite/affine-gfx-pointer": "workspace:*",
"@blocksuite/affine-inline-reference": "workspace:*",
"@blocksuite/affine-model": "workspace:*", "@blocksuite/affine-model": "workspace:*",
"@blocksuite/affine-rich-text": "workspace:*",
"@blocksuite/affine-shared": "workspace:*", "@blocksuite/affine-shared": "workspace:*",
"@blocksuite/affine-widget-slash-menu": "workspace:*", "@blocksuite/affine-widget-slash-menu": "workspace:*",
"@blocksuite/global": "workspace:*", "@blocksuite/global": "workspace:*",
@@ -24,18 +21,10 @@
"@blocksuite/std": "workspace:*", "@blocksuite/std": "workspace:*",
"@blocksuite/store": "workspace:*", "@blocksuite/store": "workspace:*",
"@floating-ui/dom": "^1.6.13", "@floating-ui/dom": "^1.6.13",
"@lit/context": "^1.1.2",
"@preact/signals-core": "^1.8.0", "@preact/signals-core": "^1.8.0",
"@toeverything/theme": "^1.1.23", "@toeverything/theme": "^1.1.23",
"@types/lodash-es": "^4.17.12",
"lit": "^3.2.0", "lit": "^3.2.0",
"lodash-es": "^4.17.23", "yjs": "^13.6.27"
"rxjs": "^7.8.2",
"yjs": "^13.6.27",
"zod": "^3.25.76"
},
"devDependencies": {
"vitest": "^4.0.18"
}, },
"exports": { "exports": {
".": "./src/index.ts", ".": "./src/index.ts",

View File

@@ -281,7 +281,7 @@ function createBuiltinToolbarConfigForExternal(
@toggle=${onToggle} @toggle=${onToggle}
.actions=${actions} .actions=${actions}
.context=${ctx} .context=${ctx}
.viewType$=${viewType$} .viewTypeSignal=${viewType$}
></affine-view-dropdown-menu>` ></affine-view-dropdown-menu>`
)}`; )}`;
}, },
@@ -329,7 +329,7 @@ function createBuiltinToolbarConfigForExternal(
@toggle=${onToggle} @toggle=${onToggle}
.actions=${actions} .actions=${actions}
.context=${ctx} .context=${ctx}
.style$=${model.props.style$} .styleSignal=${model.props.style$}
></affine-card-style-dropdown-menu>` ></affine-card-style-dropdown-menu>`
)}`; )}`;
}, },
@@ -514,7 +514,7 @@ const createBuiltinSurfaceToolbarConfigForExternal = (
@toggle=${onToggle} @toggle=${onToggle}
.actions=${actions} .actions=${actions}
.context=${ctx} .context=${ctx}
.viewType$=${viewType$} .viewTypeSignal=${viewType$}
></affine-view-dropdown-menu>` ></affine-view-dropdown-menu>`
)}`; )}`;
}, },
@@ -579,7 +579,7 @@ const createBuiltinSurfaceToolbarConfigForExternal = (
@toggle=${onToggle} @toggle=${onToggle}
.actions=${actions} .actions=${actions}
.context=${ctx} .context=${ctx}
.style$=${style$} .styleSignal=${style$}
></affine-card-style-dropdown-menu>` ></affine-card-style-dropdown-menu>`
)}`; )}`;
}, },
@@ -646,7 +646,7 @@ const createBuiltinSurfaceToolbarConfigForExternal = (
@select=${onSelect} @select=${onSelect}
@toggle=${onToggle} @toggle=${onToggle}
.format=${format} .format=${format}
.size$=${scale$} .sizeSignal=${scale$}
></affine-size-dropdown-menu>` ></affine-size-dropdown-menu>`
)}`; )}`;
}, },

View File

@@ -202,7 +202,7 @@ export const builtinToolbarConfig = {
.actions=${actions} .actions=${actions}
.context=${ctx} .context=${ctx}
.toggle=${toggle} .toggle=${toggle}
.viewType$=${signal(actions[2].label)} .viewTypeSignal=${signal(actions[2].label)}
></affine-view-dropdown-menu>` ></affine-view-dropdown-menu>`
)}`; )}`;
}, },
@@ -408,7 +408,7 @@ export const builtinSurfaceToolbarConfig = {
@toggle=${onToggle} @toggle=${onToggle}
.actions=${actions} .actions=${actions}
.context=${ctx} .context=${ctx}
.viewType$=${signal(actions[1].label)} .viewTypeSignal=${signal(actions[1].label)}
></affine-view-dropdown-menu>` ></affine-view-dropdown-menu>`
)}`; )}`;
}, },
@@ -465,7 +465,7 @@ export const builtinSurfaceToolbarConfig = {
@select=${onSelect} @select=${onSelect}
@toggle=${onToggle} @toggle=${onToggle}
.format=${format} .format=${format}
.size$=${scale$} .sizeSignal=${scale$}
></affine-size-dropdown-menu>` ></affine-size-dropdown-menu>`
)}`; )}`;
}, },

File diff suppressed because one or more lines are too long

View File

@@ -10,10 +10,7 @@
{ "path": "../surface" }, { "path": "../surface" },
{ "path": "../../components" }, { "path": "../../components" },
{ "path": "../../ext-loader" }, { "path": "../../ext-loader" },
{ "path": "../../gfx/pointer" },
{ "path": "../../inlines/reference" },
{ "path": "../../model" }, { "path": "../../model" },
{ "path": "../../rich-text" },
{ "path": "../../shared" }, { "path": "../../shared" },
{ "path": "../../widgets/slash-menu" }, { "path": "../../widgets/slash-menu" },
{ "path": "../../../framework/global" }, { "path": "../../../framework/global" },

View File

@@ -22,15 +22,10 @@
"@blocksuite/icons": "^2.2.17", "@blocksuite/icons": "^2.2.17",
"@blocksuite/std": "workspace:*", "@blocksuite/std": "workspace:*",
"@blocksuite/store": "workspace:*", "@blocksuite/store": "workspace:*",
"@floating-ui/dom": "^1.6.13",
"@lit/context": "^1.1.2",
"@preact/signals-core": "^1.8.0", "@preact/signals-core": "^1.8.0",
"@toeverything/theme": "^1.1.23", "@toeverything/theme": "^1.1.23",
"@types/mdast": "^4.0.4",
"lit": "^3.2.0", "lit": "^3.2.0",
"rxjs": "^7.8.2", "yjs": "^13.6.27"
"yjs": "^13.6.27",
"zod": "^3.25.76"
}, },
"exports": { "exports": {
".": "./src/index.ts", ".": "./src/index.ts",

View File

@@ -22,14 +22,10 @@
"@blocksuite/icons": "^2.2.17", "@blocksuite/icons": "^2.2.17",
"@blocksuite/std": "workspace:*", "@blocksuite/std": "workspace:*",
"@blocksuite/store": "workspace:*", "@blocksuite/store": "workspace:*",
"@floating-ui/dom": "^1.6.13",
"@lit/context": "^1.1.2",
"@preact/signals-core": "^1.8.0", "@preact/signals-core": "^1.8.0",
"@toeverything/theme": "^1.1.23", "@toeverything/theme": "^1.1.23",
"file-type": "^21.0.0", "file-type": "^21.0.0",
"lit": "^3.2.0", "lit": "^3.2.0"
"rxjs": "^7.8.2",
"zod": "^3.25.76"
}, },
"exports": { "exports": {
".": "./src/index.ts", ".": "./src/index.ts",

View File

@@ -15,24 +15,16 @@
"@blocksuite/affine-ext-loader": "workspace:*", "@blocksuite/affine-ext-loader": "workspace:*",
"@blocksuite/affine-inline-latex": "workspace:*", "@blocksuite/affine-inline-latex": "workspace:*",
"@blocksuite/affine-model": "workspace:*", "@blocksuite/affine-model": "workspace:*",
"@blocksuite/affine-rich-text": "workspace:*",
"@blocksuite/affine-shared": "workspace:*", "@blocksuite/affine-shared": "workspace:*",
"@blocksuite/affine-widget-slash-menu": "workspace:*", "@blocksuite/affine-widget-slash-menu": "workspace:*",
"@blocksuite/global": "workspace:*",
"@blocksuite/icons": "^2.2.17", "@blocksuite/icons": "^2.2.17",
"@blocksuite/std": "workspace:*", "@blocksuite/std": "workspace:*",
"@blocksuite/store": "workspace:*", "@blocksuite/store": "workspace:*",
"@floating-ui/dom": "^1.6.13", "@floating-ui/dom": "^1.6.13",
"@lit/context": "^1.1.2",
"@preact/signals-core": "^1.8.0", "@preact/signals-core": "^1.8.0",
"@toeverything/theme": "^1.1.23",
"@types/katex": "^0.16.7",
"@types/mdast": "^4.0.4",
"katex": "^0.16.27", "katex": "^0.16.27",
"lit": "^3.2.0", "lit": "^3.2.0",
"remark-math": "^6.0.0", "remark-math": "^6.0.0"
"rxjs": "^7.8.2",
"zod": "^3.25.76"
}, },
"exports": { "exports": {
".": "./src/index.ts", ".": "./src/index.ts",

View File

@@ -1,7 +1,7 @@
import { unsafeCSSVarV2 } from '@blocksuite/affine-shared/theme'; import { unsafeCSSVarV2 } from '@blocksuite/affine-shared/theme';
import { unsafeHTML } from '@blocksuite/affine-shared/utils';
import katex from 'katex'; import katex from 'katex';
import { html } from 'lit'; import { html } from 'lit';
import { unsafeHTML } from 'lit/directives/unsafe-html.js';
export const LatexTooltip = ( export const LatexTooltip = (
str: string, str: string,
@@ -35,7 +35,8 @@ export const LatexTooltip = (
katex.renderToString(latex, { katex.renderToString(latex, {
displayMode, displayMode,
output: 'mathml', output: 'mathml',
}) }),
{ USE_PROFILES: { html: true, mathMl: true } }
)} )}
</div> </div>
</div>`; </div>`;

View File

@@ -12,10 +12,8 @@
{ "path": "../../ext-loader" }, { "path": "../../ext-loader" },
{ "path": "../../inlines/latex" }, { "path": "../../inlines/latex" },
{ "path": "../../model" }, { "path": "../../model" },
{ "path": "../../rich-text" },
{ "path": "../../shared" }, { "path": "../../shared" },
{ "path": "../../widgets/slash-menu" }, { "path": "../../widgets/slash-menu" },
{ "path": "../../../framework/global" },
{ "path": "../../../framework/std" }, { "path": "../../../framework/std" },
{ "path": "../../../framework/store" } { "path": "../../../framework/store" }
] ]

View File

@@ -21,17 +21,9 @@
"@blocksuite/icons": "^2.2.17", "@blocksuite/icons": "^2.2.17",
"@blocksuite/std": "workspace:*", "@blocksuite/std": "workspace:*",
"@blocksuite/store": "workspace:*", "@blocksuite/store": "workspace:*",
"@floating-ui/dom": "^1.6.13",
"@lit/context": "^1.1.2",
"@preact/signals-core": "^1.8.0", "@preact/signals-core": "^1.8.0",
"@toeverything/theme": "^1.1.23",
"@types/mdast": "^4.0.4", "@types/mdast": "^4.0.4",
"lit": "^3.2.0", "lit": "^3.2.0"
"rxjs": "^7.8.2",
"zod": "^3.25.76"
},
"devDependencies": {
"vitest": "^4.0.18"
}, },
"exports": { "exports": {
".": "./src/index.ts", ".": "./src/index.ts",

View File

@@ -33,7 +33,6 @@
"@vanilla-extract/css": "^1.17.0", "@vanilla-extract/css": "^1.17.0",
"lit": "^3.2.0", "lit": "^3.2.0",
"lodash-es": "^4.17.23", "lodash-es": "^4.17.23",
"rxjs": "^7.8.2",
"zod": "^3.25.76" "zod": "^3.25.76"
}, },
"exports": { "exports": {

View File

@@ -273,7 +273,7 @@ const builtinSurfaceToolbarConfig = {
@select=${onSelect} @select=${onSelect}
@toggle=${onToggle} @toggle=${onToggle}
.format=${format} .format=${format}
.size$=${scale$} .sizeSignal=${scale$}
></affine-size-dropdown-menu>`; ></affine-size-dropdown-menu>`;
}, },
}, },

View File

@@ -240,7 +240,7 @@ export const TodoTooltip = html`<svg width="170" height="68" viewBox="0 0 170 68
<text fill="#8E8D91" xml:space="preserve" style="white-space: pre" font-family="Inter" font-size="10" letter-spacing="0px"><tspan x="28" y="47.6364">Make a list for building preview.</tspan></text> <text fill="#8E8D91" xml:space="preserve" style="white-space: pre" font-family="Inter" font-size="10" letter-spacing="0px"><tspan x="28" y="47.6364">Make a list for building preview.</tspan></text>
</g> </g>
</svg> </svg>
` `;
export const tooltips: Record<string, SlashMenuTooltip> = { export const tooltips: Record<string, SlashMenuTooltip> = {
Text: { Text: {

View File

@@ -20,13 +20,10 @@
"@blocksuite/global": "workspace:*", "@blocksuite/global": "workspace:*",
"@blocksuite/std": "workspace:*", "@blocksuite/std": "workspace:*",
"@blocksuite/store": "workspace:*", "@blocksuite/store": "workspace:*",
"@floating-ui/dom": "^1.6.13",
"@lit/context": "^1.1.2",
"@preact/signals-core": "^1.8.0", "@preact/signals-core": "^1.8.0",
"@toeverything/theme": "^1.1.23", "@toeverything/theme": "^1.1.23",
"@types/mdast": "^4.0.4", "@types/mdast": "^4.0.4",
"lit": "^3.2.0", "lit": "^3.2.0",
"rxjs": "^7.8.2",
"zod": "^3.25.76" "zod": "^3.25.76"
}, },
"exports": { "exports": {

View File

@@ -283,7 +283,7 @@ export const paragraphBlockHtmlAdapterMatcher: BlockHtmlAdapterMatcher = {
const { walkerContext } = context; const { walkerContext } = context;
switch (o.node.tagName) { switch (o.node.tagName) {
case 'div': { case 'div': {
// eslint-disable-next-line sonarjs/no-collapsible-if // oxlint-disable-next-line sonarjs/no-collapsible-if
if ( if (
o.parent?.node.type === 'element' && o.parent?.node.type === 'element' &&
o.parent.node.tagName !== 'li' && o.parent.node.tagName !== 'li' &&

View File

@@ -193,7 +193,7 @@ export const paragraphBlockNotionHtmlAdapterMatcher: BlockNotionHtmlAdapterMatch
const { walkerContext } = context; const { walkerContext } = context;
switch (o.node.tagName) { switch (o.node.tagName) {
case 'div': { case 'div': {
// eslint-disable-next-line sonarjs/no-collapsible-if // oxlint-disable-next-line sonarjs/no-collapsible-if
if ( if (
o.parent?.node.type === 'element' && o.parent?.node.type === 'element' &&
!( !(

View File

@@ -29,7 +29,6 @@ import { query, state } from 'lit/decorators.js';
import { classMap } from 'lit/directives/class-map.js'; import { classMap } from 'lit/directives/class-map.js';
import { repeat } from 'lit/directives/repeat.js'; import { repeat } from 'lit/directives/repeat.js';
import { styleMap } from 'lit/directives/style-map.js'; import { styleMap } from 'lit/directives/style-map.js';
import { unsafeHTML } from 'lit/directives/unsafe-html.js';
import { ParagraphBlockConfigExtension } from './paragraph-block-config.js'; import { ParagraphBlockConfigExtension } from './paragraph-block-config.js';
import { paragraphBlockStyles } from './styles.js'; import { paragraphBlockStyles } from './styles.js';
@@ -251,15 +250,18 @@ export class ParagraphBlockComponent extends CaptionedBlockComponent<ParagraphBl
let style = html``; let style = html``;
if (this.model.props.type$.value.startsWith('h') && collapsed) { if (this.model.props.type$.value.startsWith('h') && collapsed) {
const collapsedSiblingStyles = collapsedSiblings
.map(
sibling => `
[data-block-id="${sibling.id}"] {
display: none !important;
}
`
)
.join('\n');
style = html` style = html`
<style> <style>
${collapsedSiblings.map(sibling => ${collapsedSiblingStyles}
unsafeHTML(`
[data-block-id="${sibling.id}"] {
display: none !important;
}
`)
)}
</style> </style>
`; `;
} }

View File

@@ -34,25 +34,19 @@
"@blocksuite/affine-model": "workspace:*", "@blocksuite/affine-model": "workspace:*",
"@blocksuite/affine-rich-text": "workspace:*", "@blocksuite/affine-rich-text": "workspace:*",
"@blocksuite/affine-shared": "workspace:*", "@blocksuite/affine-shared": "workspace:*",
"@blocksuite/affine-widget-edgeless-selected-rect": "workspace:*",
"@blocksuite/affine-widget-edgeless-toolbar": "workspace:*", "@blocksuite/affine-widget-edgeless-toolbar": "workspace:*",
"@blocksuite/data-view": "workspace:*", "@blocksuite/data-view": "workspace:*",
"@blocksuite/global": "workspace:*", "@blocksuite/global": "workspace:*",
"@blocksuite/icons": "^2.2.17", "@blocksuite/icons": "^2.2.17",
"@blocksuite/std": "workspace:*", "@blocksuite/std": "workspace:*",
"@blocksuite/store": "workspace:*", "@blocksuite/store": "workspace:*",
"@floating-ui/dom": "^1.6.13",
"@lit/context": "^1.1.2",
"@preact/signals-core": "^1.8.0", "@preact/signals-core": "^1.8.0",
"@toeverything/theme": "^1.1.23",
"@types/lodash-es": "^4.17.12", "@types/lodash-es": "^4.17.12",
"dompurify": "^3.3.0", "dompurify": "^3.3.0",
"html2canvas": "^1.4.1", "html2canvas": "^1.4.1",
"lit": "^3.2.0", "lit": "^3.2.0",
"lodash-es": "^4.17.23", "lodash-es": "^4.17.23",
"rxjs": "^7.8.2", "yjs": "^13.6.27"
"yjs": "^13.6.27",
"zod": "^3.25.76"
}, },
"exports": { "exports": {
".": "./src/index.ts", ".": "./src/index.ts",

View File

@@ -544,7 +544,7 @@ export class EdgelessClipboardController extends PageClipboard {
} }
}); });
// eslint-disable-next-line @typescript-eslint/prefer-for-of // oxlint-disable-next-line @typescript-eslint/prefer-for-of
for (let i = 0; i < blocksInsideFrame.length; i++) { for (let i = 0; i < blocksInsideFrame.length; i++) {
const element = blocksInsideFrame[i]; const element = blocksInsideFrame[i];
await _drawTopLevelBlock(element, true); await _drawTopLevelBlock(element, true);
@@ -645,7 +645,7 @@ export class EdgelessClipboardController extends PageClipboard {
); );
}); });
} else { } else {
// eslint-disable-next-line @typescript-eslint/prefer-for-of // oxlint-disable-next-line @typescript-eslint/prefer-for-of
for (let index = 0; index < content.length; index++) { for (let index = 0; index < content.length; index++) {
const blockSnapshot = content[index]; const blockSnapshot = content[index];
if (blockSnapshot.flavour === 'affine:note') { if (blockSnapshot.flavour === 'affine:note') {

View File

@@ -31,7 +31,6 @@
{ "path": "../../model" }, { "path": "../../model" },
{ "path": "../../rich-text" }, { "path": "../../rich-text" },
{ "path": "../../shared" }, { "path": "../../shared" },
{ "path": "../../widgets/edgeless-selected-rect" },
{ "path": "../../widgets/edgeless-toolbar" }, { "path": "../../widgets/edgeless-toolbar" },
{ "path": "../../data-view" }, { "path": "../../data-view" },
{ "path": "../../../framework/global" }, { "path": "../../../framework/global" },

View File

@@ -22,17 +22,8 @@
"@blocksuite/icons": "^2.2.17", "@blocksuite/icons": "^2.2.17",
"@blocksuite/std": "workspace:*", "@blocksuite/std": "workspace:*",
"@blocksuite/store": "workspace:*", "@blocksuite/store": "workspace:*",
"@floating-ui/dom": "^1.6.13",
"@lit/context": "^1.1.2",
"@preact/signals-core": "^1.8.0", "@preact/signals-core": "^1.8.0",
"@toeverything/theme": "^1.1.23", "lit": "^3.2.0"
"@types/lodash-es": "^4.17.12",
"fractional-indexing": "^3.2.0",
"lit": "^3.2.0",
"lodash-es": "^4.17.23",
"nanoid": "^5.1.6",
"rxjs": "^7.8.2",
"zod": "^3.25.76"
}, },
"exports": { "exports": {
".": "./src/index.ts", ".": "./src/index.ts",

View File

@@ -42,7 +42,7 @@ export const FrameTooltip = html`<svg width="170" height="89" viewBox="0 0 170 8
</clipPath> </clipPath>
</defs> </defs>
</svg> </svg>
` `;
// prettier-ignore // prettier-ignore
export const MindMapTooltip = html`<svg width="170" height="106" viewBox="0 0 170 106" fill="none" xmlns="http://www.w3.org/2000/svg"> export const MindMapTooltip = html`<svg width="170" height="106" viewBox="0 0 170 106" fill="none" xmlns="http://www.w3.org/2000/svg">
@@ -108,4 +108,4 @@ export const MindMapTooltip = html`<svg width="170" height="106" viewBox="0 0 17
</clipPath> </clipPath>
</defs> </defs>
</svg> </svg>
` `;

View File

@@ -10,17 +10,13 @@
"author": "toeverything", "author": "toeverything",
"license": "MIT", "license": "MIT",
"dependencies": { "dependencies": {
"@blocksuite/affine-components": "workspace:*",
"@blocksuite/affine-ext-loader": "workspace:*", "@blocksuite/affine-ext-loader": "workspace:*",
"@blocksuite/affine-model": "workspace:*", "@blocksuite/affine-model": "workspace:*",
"@blocksuite/affine-rich-text": "workspace:*",
"@blocksuite/affine-shared": "workspace:*", "@blocksuite/affine-shared": "workspace:*",
"@blocksuite/global": "workspace:*", "@blocksuite/global": "workspace:*",
"@blocksuite/std": "workspace:*", "@blocksuite/std": "workspace:*",
"@blocksuite/store": "workspace:*", "@blocksuite/store": "workspace:*",
"@lit/context": "^1.1.2",
"@preact/signals-core": "^1.8.0", "@preact/signals-core": "^1.8.0",
"@toeverything/theme": "^1.1.23",
"@types/lodash-es": "^4.17.12", "@types/lodash-es": "^4.17.12",
"fractional-indexing": "^3.2.0", "fractional-indexing": "^3.2.0",
"html2canvas": "^1.4.1", "html2canvas": "^1.4.1",
@@ -29,8 +25,7 @@
"nanoid": "^5.1.6", "nanoid": "^5.1.6",
"pdf-lib": "^1.17.1", "pdf-lib": "^1.17.1",
"rxjs": "^7.8.2", "rxjs": "^7.8.2",
"yjs": "^13.6.27", "yjs": "^13.6.27"
"zod": "^3.25.76"
}, },
"devDependencies": { "devDependencies": {
"vitest": "^4.0.18" "vitest": "^4.0.18"

View File

@@ -281,7 +281,7 @@ export class DefaultTool extends BaseTool {
} }
} }
// eslint-disable-next-line @typescript-eslint/no-misused-promises // oxlint-disable-next-line @typescript-eslint/no-misused-promises
override async dragStart(e: PointerEventState) { override async dragStart(e: PointerEventState) {
const { preventDefaultState, handledByView } = const { preventDefaultState, handledByView } =
this.interactivity?.dispatchEvent('dragstart', e) ?? {}; this.interactivity?.dispatchEvent('dragstart', e) ?? {};

View File

@@ -153,7 +153,7 @@ export class AStarRunner {
} }
const neighbors = this._neighbors(current); const neighbors = this._neighbors(current);
// eslint-disable-next-line @typescript-eslint/prefer-for-of // oxlint-disable-next-line @typescript-eslint/prefer-for-of
for (let i = 0; i < neighbors.length; i++) { for (let i = 0; i < neighbors.length; i++) {
const next = neighbors[i]; const next = neighbors[i];
const curCosts = this._costSoFar.get(current); const curCosts = this._costSoFar.get(current);

View File

@@ -7,10 +7,8 @@
}, },
"include": ["./src"], "include": ["./src"],
"references": [ "references": [
{ "path": "../../components" },
{ "path": "../../ext-loader" }, { "path": "../../ext-loader" },
{ "path": "../../model" }, { "path": "../../model" },
{ "path": "../../rich-text" },
{ "path": "../../shared" }, { "path": "../../shared" },
{ "path": "../../../framework/global" }, { "path": "../../../framework/global" },
{ "path": "../../../framework/std" }, { "path": "../../../framework/std" },

View File

@@ -10,7 +10,6 @@
"author": "toeverything", "author": "toeverything",
"license": "MIT", "license": "MIT",
"dependencies": { "dependencies": {
"@atlaskit/pragmatic-drag-and-drop": "^1.7.7",
"@blocksuite/affine-components": "workspace:*", "@blocksuite/affine-components": "workspace:*",
"@blocksuite/affine-ext-loader": "workspace:*", "@blocksuite/affine-ext-loader": "workspace:*",
"@blocksuite/affine-inline-preset": "workspace:*", "@blocksuite/affine-inline-preset": "workspace:*",
@@ -18,7 +17,6 @@
"@blocksuite/affine-rich-text": "workspace:*", "@blocksuite/affine-rich-text": "workspace:*",
"@blocksuite/affine-shared": "workspace:*", "@blocksuite/affine-shared": "workspace:*",
"@blocksuite/affine-widget-slash-menu": "workspace:*", "@blocksuite/affine-widget-slash-menu": "workspace:*",
"@blocksuite/data-view": "workspace:*",
"@blocksuite/global": "workspace:*", "@blocksuite/global": "workspace:*",
"@blocksuite/icons": "^2.2.17", "@blocksuite/icons": "^2.2.17",
"@blocksuite/std": "workspace:*", "@blocksuite/std": "workspace:*",
@@ -27,8 +25,6 @@
"@floating-ui/dom": "^1.6.13", "@floating-ui/dom": "^1.6.13",
"@preact/signals-core": "^1.8.0", "@preact/signals-core": "^1.8.0",
"lit": "^3.2.0", "lit": "^3.2.0",
"rxjs": "^7.8.2",
"yjs": "^13.6.27",
"zod": "^3.25.76" "zod": "^3.25.76"
}, },
"exports": { "exports": {

View File

@@ -273,7 +273,7 @@ export class SelectionController implements ReactiveController {
} }
drag?.onMove(event.clientY); drag?.onMove(event.clientY);
}; };
// eslint-disable-next-line sonarjs/no-identical-functions // oxlint-disable-next-line sonarjs/no-identical-functions
const onUp = () => { const onUp = () => {
drag?.onEnd(); drag?.onEnd();
window.removeEventListener('mousemove', onMove); window.removeEventListener('mousemove', onMove);

View File

@@ -418,7 +418,7 @@ export class TableCell extends SignalWatcher(
name: 'Paste', name: 'Paste',
prefix: PasteIcon(), prefix: PasteIcon(),
select: () => { select: () => {
// eslint-disable-next-line @typescript-eslint/no-floating-promises // oxlint-disable-next-line @typescript-eslint/no-floating-promises
navigator.clipboard.readText().then(text => { navigator.clipboard.readText().then(text => {
this.selectionController.doPaste(text, selected); this.selectionController.doPaste(text, selected);
}); });

View File

@@ -15,7 +15,6 @@
{ "path": "../../rich-text" }, { "path": "../../rich-text" },
{ "path": "../../shared" }, { "path": "../../shared" },
{ "path": "../../widgets/slash-menu" }, { "path": "../../widgets/slash-menu" },
{ "path": "../../data-view" },
{ "path": "../../../framework/global" }, { "path": "../../../framework/global" },
{ "path": "../../../framework/std" }, { "path": "../../../framework/std" },
{ "path": "../../../framework/store" } { "path": "../../../framework/store" }

View File

@@ -22,21 +22,13 @@
"@lottiefiles/dotlottie-wc": "^0.9.4", "@lottiefiles/dotlottie-wc": "^0.9.4",
"@preact/signals-core": "^1.8.0", "@preact/signals-core": "^1.8.0",
"@toeverything/theme": "^1.1.23", "@toeverything/theme": "^1.1.23",
"@types/hast": "^3.0.4",
"@types/katex": "^0.16.7",
"@types/lodash-es": "^4.17.12", "@types/lodash-es": "^4.17.12",
"@types/mdast": "^4.0.4",
"collapse-white-space": "^2.1.0",
"date-fns": "^4.0.0", "date-fns": "^4.0.0",
"katex": "^0.16.27",
"lit": "^3.2.0", "lit": "^3.2.0",
"lit-html": "^3.2.1", "lit-html": "^3.2.1",
"lodash-es": "^4.17.23", "lodash-es": "^4.17.23",
"remark-math": "^6.0.0",
"rxjs": "^7.8.2", "rxjs": "^7.8.2",
"shiki": "^3.19.0", "yjs": "^13.6.27"
"yjs": "^13.6.27",
"zod": "^3.25.76"
}, },
"exports": { "exports": {
".": "./src/index.ts", ".": "./src/index.ts",

View File

@@ -50,7 +50,7 @@ const cardStyleMap: Record<ColorScheme, Record<string, TemplateResult>> = {
@requiredProperties({ @requiredProperties({
actions: PropTypes.array, actions: PropTypes.array,
context: PropTypes.instanceOf(ToolbarContext), context: PropTypes.instanceOf(ToolbarContext),
style$: PropTypes.object, styleSignal: PropTypes.object,
}) })
export class CardStyleDropdownMenu extends SignalWatcher(LitElement) { export class CardStyleDropdownMenu extends SignalWatcher(LitElement) {
@property({ attribute: false }) @property({ attribute: false })
@@ -60,7 +60,7 @@ export class CardStyleDropdownMenu extends SignalWatcher(LitElement) {
accessor context!: ToolbarContext; accessor context!: ToolbarContext;
@property({ attribute: false }) @property({ attribute: false })
accessor style$!: Signal<string> | ReadonlySignal<string>; accessor styleSignal!: Signal<string> | ReadonlySignal<string>;
icons$ = computed(() => cardStyleMap[this.context.theme.theme$.value]); icons$ = computed(() => cardStyleMap[this.context.theme.theme$.value]);
@@ -68,7 +68,7 @@ export class CardStyleDropdownMenu extends SignalWatcher(LitElement) {
const { const {
actions, actions,
context, context,
style$: { value: style }, styleSignal: { value: style },
icons$: { value: icons }, icons$: { value: icons },
} = this; } = this;

View File

@@ -149,7 +149,7 @@ export class MobileMenuButton extends MenuFocusable {
this.disposables.addFromEvent(this, 'click', this.onClick); this.disposables.addFromEvent(this, 'click', this.onClick);
} }
// eslint-disable-next-line sonarjs/no-identical-functions // oxlint-disable-next-line sonarjs/no-identical-functions
onClick() { onClick() {
if (this.data.select(this) !== false) { if (this.data.select(this) !== false) {
this.menu.options.onComplete?.(); this.menu.options.onComplete?.();

View File

@@ -149,7 +149,7 @@ export class Menu {
renderItems(items: MenuConfig[]) { renderItems(items: MenuConfig[]) {
const result = []; const result = [];
// eslint-disable-next-line @typescript-eslint/prefer-for-of // oxlint-disable-next-line @typescript-eslint/prefer-for-of
for (let i = 0; i < items.length; i++) { for (let i = 0; i < items.length; i++) {
const item = items[i]; const item = items[i];
const template = item(this, result.length); const template = item(this, result.length);

View File

@@ -17,7 +17,7 @@ import { EditorChevronDown } from '../toolbar';
@requiredProperties({ @requiredProperties({
actions: PropTypes.array, actions: PropTypes.array,
context: PropTypes.instanceOf(ToolbarContext), context: PropTypes.instanceOf(ToolbarContext),
openDocMode$: PropTypes.object, openDocModeSignal: PropTypes.object,
updateOpenDocMode: PropTypes.instanceOf(Function), updateOpenDocMode: PropTypes.instanceOf(Function),
}) })
export class OpenDocDropdownMenu extends SignalWatcher( export class OpenDocDropdownMenu extends SignalWatcher(
@@ -59,13 +59,13 @@ export class OpenDocDropdownMenu extends SignalWatcher(
accessor context!: ToolbarContext; accessor context!: ToolbarContext;
@property({ attribute: false }) @property({ attribute: false })
accessor openDocMode$!: ReadonlySignal<OpenDocMode>; accessor openDocModeSignal!: ReadonlySignal<OpenDocMode>;
@property({ attribute: false }) @property({ attribute: false })
accessor updateOpenDocMode!: (mode: OpenDocMode) => void; accessor updateOpenDocMode!: (mode: OpenDocMode) => void;
currentAction$ = computed(() => { currentAction$ = computed(() => {
const currentOpenDocMode = this.openDocMode$.value; const currentOpenDocMode = this.openDocModeSignal.value;
return ( return (
this.actions.find(a => a.mode === currentOpenDocMode) ?? this.actions[0] this.actions.find(a => a.mode === currentOpenDocMode) ?? this.actions[0]
); );

View File

@@ -40,7 +40,7 @@ export interface PeekViewService {
* @returns A promise that resolves when the peek view is closed. * @returns A promise that resolves when the peek view is closed.
*/ */
peek( peek(
// eslint-disable-next-line @typescript-eslint/unified-signatures // oxlint-disable-next-line @typescript-eslint/unified-signatures
element: { target: HTMLElement; template?: TemplateResult }, element: { target: HTMLElement; template?: TemplateResult },
options?: PeekOptions options?: PeekOptions
): Promise<void>; ): Promise<void>;

View File

@@ -22,7 +22,7 @@ const SIZE_LIST: SizeItem[] = [
] as const; ] as const;
@requiredProperties({ @requiredProperties({
size$: PropTypes.object, sizeSignal: PropTypes.object,
}) })
export class SizeDropdownMenu extends SignalWatcher( export class SizeDropdownMenu extends SignalWatcher(
WithDisposable(LitElement) WithDisposable(LitElement)
@@ -68,7 +68,7 @@ export class SizeDropdownMenu extends SignalWatcher(
accessor sizes: readonly SizeItem[] = SIZE_LIST; accessor sizes: readonly SizeItem[] = SIZE_LIST;
@property({ attribute: false }) @property({ attribute: false })
accessor size$!: Signal<number> | ReadonlySignal<number>; accessor sizeSignal!: Signal<number> | ReadonlySignal<number>;
@property({ attribute: false }) @property({ attribute: false })
accessor maxSize: number = MAX_SIZE; accessor maxSize: number = MAX_SIZE;
@@ -144,7 +144,7 @@ export class SizeDropdownMenu extends SignalWatcher(
type, type,
icon, icon,
label, label,
size$: { value: size }, sizeSignal: { value: size },
} = this; } = this;
const isCheckType = type === 'check'; const isCheckType = type === 'check';
const placeholder = format?.(Math.trunc(size)) ?? Math.trunc(size); const placeholder = format?.(Math.trunc(size)) ?? Math.trunc(size);

View File

@@ -16,7 +16,7 @@ import { EditorChevronDown } from '../toolbar';
@requiredProperties({ @requiredProperties({
actions: PropTypes.array, actions: PropTypes.array,
context: PropTypes.instanceOf(ToolbarContext), context: PropTypes.instanceOf(ToolbarContext),
viewType$: PropTypes.object, viewTypeSignal: PropTypes.object,
}) })
export class ViewDropdownMenu extends SignalWatcher(LitElement) { export class ViewDropdownMenu extends SignalWatcher(LitElement) {
@property({ attribute: false }) @property({ attribute: false })
@@ -26,13 +26,13 @@ export class ViewDropdownMenu extends SignalWatcher(LitElement) {
accessor context!: ToolbarContext; accessor context!: ToolbarContext;
@property({ attribute: false }) @property({ attribute: false })
accessor viewType$!: Signal<string> | ReadonlySignal<string>; accessor viewTypeSignal!: Signal<string> | ReadonlySignal<string>;
override render() { override render() {
const { const {
actions, actions,
context, context,
viewType$: { value: viewType }, viewTypeSignal: { value: viewType },
} = this; } = this;
return html` return html`

View File

@@ -19,7 +19,6 @@
"@emotion/css": "^11.13.5", "@emotion/css": "^11.13.5",
"@emotion/hash": "^0.9.2", "@emotion/hash": "^0.9.2",
"@floating-ui/dom": "^1.6.13", "@floating-ui/dom": "^1.6.13",
"@lit/context": "^1.1.2",
"@preact/signals-core": "^1.8.0", "@preact/signals-core": "^1.8.0",
"@toeverything/theme": "^1.1.23", "@toeverything/theme": "^1.1.23",
"@types/lodash-es": "^4.17.12", "@types/lodash-es": "^4.17.12",
@@ -27,7 +26,6 @@
"date-fns": "^4.0.0", "date-fns": "^4.0.0",
"lit": "^3.2.0", "lit": "^3.2.0",
"lodash-es": "^4.17.23", "lodash-es": "^4.17.23",
"rxjs": "^7.8.2",
"yjs": "^13.6.27", "yjs": "^13.6.27",
"zod": "^3.25.76" "zod": "^3.25.76"
}, },

View File

@@ -60,7 +60,7 @@ export class FnTypeInstance<
if (arg == null) { if (arg == null) {
return false; return false;
} }
// eslint-disable-next-line sonarjs/no-collapsible-if // oxlint-disable-next-line sonarjs/no-collapsible-if
if (realArg != null) { if (realArg != null) {
if (!unify(newCtx, realArg, arg)) { if (!unify(newCtx, realArg, arg)) {
return false; return false;

View File

@@ -180,7 +180,7 @@ export class TypeSystem {
if (arg == null) { if (arg == null) {
return; return;
} }
// eslint-disable-next-line sonarjs/no-collapsible-if // oxlint-disable-next-line sonarjs/no-collapsible-if
if (realArg != null) { if (realArg != null) {
if (!this._unify(newCtx, realArg, arg)) { if (!this._unify(newCtx, realArg, arg)) {
return; return;

View File

@@ -15,19 +15,8 @@
"@blocksuite/affine-rich-text": "workspace:*", "@blocksuite/affine-rich-text": "workspace:*",
"@blocksuite/affine-shared": "workspace:*", "@blocksuite/affine-shared": "workspace:*",
"@blocksuite/data-view": "workspace:*", "@blocksuite/data-view": "workspace:*",
"@blocksuite/global": "workspace:*",
"@blocksuite/icons": "^2.2.17",
"@blocksuite/std": "workspace:*", "@blocksuite/std": "workspace:*",
"@blocksuite/store": "workspace:*", "@blocksuite/store": "workspace:*",
"@floating-ui/dom": "^1.6.13",
"@lit/context": "^1.1.2",
"@preact/signals-core": "^1.8.0",
"@toeverything/theme": "^1.1.23",
"@types/lodash-es": "^4.17.12",
"lit": "^3.2.0",
"lodash-es": "^4.17.23",
"rxjs": "^7.8.2",
"yjs": "^13.6.27",
"zod": "^3.25.76" "zod": "^3.25.76"
}, },
"exports": { "exports": {

View File

@@ -13,7 +13,6 @@
{ "path": "../rich-text" }, { "path": "../rich-text" },
{ "path": "../shared" }, { "path": "../shared" },
{ "path": "../data-view" }, { "path": "../data-view" },
{ "path": "../../framework/global" },
{ "path": "../../framework/std" }, { "path": "../../framework/std" },
{ "path": "../../framework/store" } { "path": "../../framework/store" }
] ]

View File

@@ -12,18 +12,15 @@
"dependencies": { "dependencies": {
"@blocksuite/affine-components": "workspace:*", "@blocksuite/affine-components": "workspace:*",
"@blocksuite/affine-ext-loader": "workspace:*", "@blocksuite/affine-ext-loader": "workspace:*",
"@blocksuite/affine-model": "workspace:*",
"@blocksuite/affine-shared": "workspace:*", "@blocksuite/affine-shared": "workspace:*",
"@blocksuite/global": "workspace:*", "@blocksuite/global": "workspace:*",
"@blocksuite/icons": "^2.2.17", "@blocksuite/icons": "^2.2.17",
"@blocksuite/std": "workspace:*",
"@blocksuite/store": "workspace:*", "@blocksuite/store": "workspace:*",
"@floating-ui/dom": "^1.6.13", "@floating-ui/dom": "^1.6.13",
"@lit/context": "^1.1.2", "@lit/context": "^1.1.2",
"@preact/signals-core": "^1.8.0", "@preact/signals-core": "^1.8.0",
"@toeverything/theme": "^1.1.23", "@toeverything/theme": "^1.1.23",
"lit": "^3.2.0", "lit": "^3.2.0"
"rxjs": "^7.8.2"
}, },
"exports": { "exports": {
".": "./src/index.ts", ".": "./src/index.ts",

View File

@@ -9,10 +9,8 @@
"references": [ "references": [
{ "path": "../../components" }, { "path": "../../components" },
{ "path": "../../ext-loader" }, { "path": "../../ext-loader" },
{ "path": "../../model" },
{ "path": "../../shared" }, { "path": "../../shared" },
{ "path": "../../../framework/global" }, { "path": "../../../framework/global" },
{ "path": "../../../framework/std" },
{ "path": "../../../framework/store" } { "path": "../../../framework/store" }
] ]
} }

View File

@@ -10,24 +10,15 @@
"author": "toeverything", "author": "toeverything",
"license": "MIT", "license": "MIT",
"dependencies": { "dependencies": {
"@blocksuite/affine-block-frame": "workspace:*",
"@blocksuite/affine-block-surface": "workspace:*",
"@blocksuite/affine-components": "workspace:*",
"@blocksuite/affine-ext-loader": "workspace:*", "@blocksuite/affine-ext-loader": "workspace:*",
"@blocksuite/affine-model": "workspace:*", "@blocksuite/affine-model": "workspace:*",
"@blocksuite/affine-rich-text": "workspace:*", "@blocksuite/affine-rich-text": "workspace:*",
"@blocksuite/affine-shared": "workspace:*", "@blocksuite/affine-shared": "workspace:*",
"@blocksuite/global": "workspace:*", "@blocksuite/global": "workspace:*",
"@blocksuite/icons": "^2.2.17",
"@blocksuite/std": "workspace:*", "@blocksuite/std": "workspace:*",
"@blocksuite/store": "workspace:*", "@blocksuite/store": "workspace:*",
"@floating-ui/dom": "^1.6.13",
"@lit/context": "^1.1.2",
"@preact/signals-core": "^1.8.0", "@preact/signals-core": "^1.8.0",
"@toeverything/theme": "^1.1.23", "lit": "^3.2.0"
"lit": "^3.2.0",
"rxjs": "^7.8.2",
"zod": "^3.25.76"
}, },
"exports": { "exports": {
".": "./src/index.ts", ".": "./src/index.ts",

View File

@@ -7,9 +7,6 @@
}, },
"include": ["./src"], "include": ["./src"],
"references": [ "references": [
{ "path": "../../blocks/frame" },
{ "path": "../../blocks/surface" },
{ "path": "../../components" },
{ "path": "../../ext-loader" }, { "path": "../../ext-loader" },
{ "path": "../../model" }, { "path": "../../model" },
{ "path": "../../rich-text" }, { "path": "../../rich-text" },

View File

@@ -12,7 +12,6 @@
"dependencies": { "dependencies": {
"@blocksuite/affine-block-frame": "workspace:*", "@blocksuite/affine-block-frame": "workspace:*",
"@blocksuite/affine-block-surface": "workspace:*", "@blocksuite/affine-block-surface": "workspace:*",
"@blocksuite/affine-components": "workspace:*",
"@blocksuite/affine-ext-loader": "workspace:*", "@blocksuite/affine-ext-loader": "workspace:*",
"@blocksuite/affine-model": "workspace:*", "@blocksuite/affine-model": "workspace:*",
"@blocksuite/affine-rich-text": "workspace:*", "@blocksuite/affine-rich-text": "workspace:*",
@@ -21,15 +20,10 @@
"@blocksuite/icons": "^2.2.17", "@blocksuite/icons": "^2.2.17",
"@blocksuite/std": "workspace:*", "@blocksuite/std": "workspace:*",
"@blocksuite/store": "workspace:*", "@blocksuite/store": "workspace:*",
"@floating-ui/dom": "^1.6.13",
"@lit/context": "^1.1.2",
"@preact/signals-core": "^1.8.0",
"@toeverything/theme": "^1.1.23", "@toeverything/theme": "^1.1.23",
"@types/lodash-es": "^4.17.12", "@types/lodash-es": "^4.17.12",
"lit": "^3.2.0", "lit": "^3.2.0",
"lodash-es": "^4.17.23", "lodash-es": "^4.17.23"
"rxjs": "^7.8.2",
"zod": "^3.25.76"
}, },
"exports": { "exports": {
".": "./src/index.ts", ".": "./src/index.ts",

View File

@@ -9,7 +9,6 @@
"references": [ "references": [
{ "path": "../../blocks/frame" }, { "path": "../../blocks/frame" },
{ "path": "../../blocks/surface" }, { "path": "../../blocks/surface" },
{ "path": "../../components" },
{ "path": "../../ext-loader" }, { "path": "../../ext-loader" },
{ "path": "../../model" }, { "path": "../../model" },
{ "path": "../../rich-text" }, { "path": "../../rich-text" },

View File

@@ -11,24 +11,19 @@
"license": "MIT", "license": "MIT",
"dependencies": { "dependencies": {
"@blocksuite/affine-block-note": "workspace:*", "@blocksuite/affine-block-note": "workspace:*",
"@blocksuite/affine-components": "workspace:*",
"@blocksuite/affine-ext-loader": "workspace:*", "@blocksuite/affine-ext-loader": "workspace:*",
"@blocksuite/affine-fragment-doc-title": "workspace:*", "@blocksuite/affine-fragment-doc-title": "workspace:*",
"@blocksuite/affine-model": "workspace:*", "@blocksuite/affine-model": "workspace:*",
"@blocksuite/affine-rich-text": "workspace:*",
"@blocksuite/affine-shared": "workspace:*", "@blocksuite/affine-shared": "workspace:*",
"@blocksuite/global": "workspace:*", "@blocksuite/global": "workspace:*",
"@blocksuite/icons": "^2.2.17", "@blocksuite/icons": "^2.2.17",
"@blocksuite/std": "workspace:*", "@blocksuite/std": "workspace:*",
"@blocksuite/store": "workspace:*", "@blocksuite/store": "workspace:*",
"@floating-ui/dom": "^1.6.13",
"@lit/context": "^1.1.2", "@lit/context": "^1.1.2",
"@preact/signals-core": "^1.8.0", "@preact/signals-core": "^1.8.0",
"@toeverything/theme": "^1.1.23", "@toeverything/theme": "^1.1.23",
"@vanilla-extract/css": "^1.17.0", "@vanilla-extract/css": "^1.17.0",
"lit": "^3.2.0", "lit": "^3.2.0"
"rxjs": "^7.8.2",
"zod": "^3.25.76"
}, },
"exports": { "exports": {
".": "./src/index.ts", ".": "./src/index.ts",

View File

@@ -8,11 +8,9 @@
"include": ["./src"], "include": ["./src"],
"references": [ "references": [
{ "path": "../../blocks/note" }, { "path": "../../blocks/note" },
{ "path": "../../components" },
{ "path": "../../ext-loader" }, { "path": "../../ext-loader" },
{ "path": "../doc-title" }, { "path": "../doc-title" },
{ "path": "../../model" }, { "path": "../../model" },
{ "path": "../../rich-text" },
{ "path": "../../shared" }, { "path": "../../shared" },
{ "path": "../../../framework/global" }, { "path": "../../../framework/global" },
{ "path": "../../../framework/std" }, { "path": "../../../framework/std" },

View File

@@ -14,22 +14,12 @@
"@blocksuite/affine-components": "workspace:*", "@blocksuite/affine-components": "workspace:*",
"@blocksuite/affine-ext-loader": "workspace:*", "@blocksuite/affine-ext-loader": "workspace:*",
"@blocksuite/affine-model": "workspace:*", "@blocksuite/affine-model": "workspace:*",
"@blocksuite/affine-rich-text": "workspace:*",
"@blocksuite/affine-shared": "workspace:*", "@blocksuite/affine-shared": "workspace:*",
"@blocksuite/affine-widget-edgeless-toolbar": "workspace:*", "@blocksuite/affine-widget-edgeless-toolbar": "workspace:*",
"@blocksuite/global": "workspace:*", "@blocksuite/global": "workspace:*",
"@blocksuite/icons": "^2.2.17",
"@blocksuite/std": "workspace:*", "@blocksuite/std": "workspace:*",
"@blocksuite/store": "workspace:*",
"@lit/context": "^1.1.2",
"@preact/signals-core": "^1.8.0", "@preact/signals-core": "^1.8.0",
"@toeverything/theme": "^1.1.23", "lit": "^3.2.0"
"@types/lodash-es": "^4.17.12",
"lit": "^3.2.0",
"lodash-es": "^4.17.23",
"rxjs": "^7.8.2",
"yjs": "^13.6.27",
"zod": "^3.25.76"
}, },
"exports": { "exports": {
".": "./src/index.ts", ".": "./src/index.ts",

View File

@@ -11,11 +11,9 @@
{ "path": "../../components" }, { "path": "../../components" },
{ "path": "../../ext-loader" }, { "path": "../../ext-loader" },
{ "path": "../../model" }, { "path": "../../model" },
{ "path": "../../rich-text" },
{ "path": "../../shared" }, { "path": "../../shared" },
{ "path": "../../widgets/edgeless-toolbar" }, { "path": "../../widgets/edgeless-toolbar" },
{ "path": "../../../framework/global" }, { "path": "../../../framework/global" },
{ "path": "../../../framework/std" }, { "path": "../../../framework/std" }
{ "path": "../../../framework/store" }
] ]
} }

View File

@@ -24,13 +24,10 @@
"@blocksuite/store": "workspace:*", "@blocksuite/store": "workspace:*",
"@lit/context": "^1.1.2", "@lit/context": "^1.1.2",
"@preact/signals-core": "^1.8.0", "@preact/signals-core": "^1.8.0",
"@toeverything/theme": "^1.1.23",
"@types/lodash-es": "^4.17.12", "@types/lodash-es": "^4.17.12",
"lit": "^3.2.0", "lit": "^3.2.0",
"lodash-es": "^4.17.23", "lodash-es": "^4.17.23",
"rxjs": "^7.8.2", "yjs": "^13.6.27"
"yjs": "^13.6.27",
"zod": "^3.25.76"
}, },
"exports": { "exports": {
".": "./src/index.ts", ".": "./src/index.ts",

View File

@@ -963,7 +963,7 @@ export class ConnectionOverlay extends Overlay {
this._clearRect(); this._clearRect();
let result: Connection | null = null; let result: Connection | null = null;
// eslint-disable-next-line @typescript-eslint/prefer-for-of // oxlint-disable-next-line @typescript-eslint/prefer-for-of
for (let i = 0; i < connectables.length; i++) { for (let i = 0; i < connectables.length; i++) {
const connectable = connectables[i]; const connectable = connectables[i];
// first check if in excluedIds // first check if in excluedIds

View File

@@ -21,17 +21,9 @@
"@blocksuite/global": "workspace:*", "@blocksuite/global": "workspace:*",
"@blocksuite/icons": "^2.2.17", "@blocksuite/icons": "^2.2.17",
"@blocksuite/std": "workspace:*", "@blocksuite/std": "workspace:*",
"@blocksuite/store": "workspace:*",
"@lit/context": "^1.1.2", "@lit/context": "^1.1.2",
"@preact/signals-core": "^1.8.0",
"@toeverything/theme": "^1.1.23",
"@types/lodash-es": "^4.17.12",
"fractional-indexing": "^3.2.0", "fractional-indexing": "^3.2.0",
"lit": "^3.2.0", "lit": "^3.2.0"
"lodash-es": "^4.17.23",
"rxjs": "^7.8.2",
"yjs": "^13.6.27",
"zod": "^3.25.76"
}, },
"devDependencies": { "devDependencies": {
"vitest": "^4.0.18" "vitest": "^4.0.18"

View File

@@ -16,7 +16,6 @@
{ "path": "../../shared" }, { "path": "../../shared" },
{ "path": "../../widgets/edgeless-toolbar" }, { "path": "../../widgets/edgeless-toolbar" },
{ "path": "../../../framework/global" }, { "path": "../../../framework/global" },
{ "path": "../../../framework/std" }, { "path": "../../../framework/std" }
{ "path": "../../../framework/store" }
] ]
} }

View File

@@ -15,24 +15,10 @@
"@blocksuite/affine-block-surface": "workspace:*", "@blocksuite/affine-block-surface": "workspace:*",
"@blocksuite/affine-components": "workspace:*", "@blocksuite/affine-components": "workspace:*",
"@blocksuite/affine-ext-loader": "workspace:*", "@blocksuite/affine-ext-loader": "workspace:*",
"@blocksuite/affine-gfx-pointer": "workspace:*",
"@blocksuite/affine-model": "workspace:*",
"@blocksuite/affine-rich-text": "workspace:*",
"@blocksuite/affine-shared": "workspace:*", "@blocksuite/affine-shared": "workspace:*",
"@blocksuite/affine-widget-edgeless-toolbar": "workspace:*", "@blocksuite/affine-widget-edgeless-toolbar": "workspace:*",
"@blocksuite/global": "workspace:*",
"@blocksuite/icons": "^2.2.17",
"@blocksuite/std": "workspace:*", "@blocksuite/std": "workspace:*",
"@blocksuite/store": "workspace:*", "lit": "^3.2.0"
"@lit/context": "^1.1.2",
"@preact/signals-core": "^1.8.0",
"@toeverything/theme": "^1.1.23",
"@types/lodash-es": "^4.17.12",
"lit": "^3.2.0",
"lodash-es": "^4.17.23",
"rxjs": "^7.8.2",
"yjs": "^13.6.27",
"zod": "^3.25.76"
}, },
"exports": { "exports": {
".": "./src/index.ts", ".": "./src/index.ts",

View File

@@ -12,13 +12,8 @@
{ "path": "../../blocks/surface" }, { "path": "../../blocks/surface" },
{ "path": "../../components" }, { "path": "../../components" },
{ "path": "../../ext-loader" }, { "path": "../../ext-loader" },
{ "path": "../pointer" },
{ "path": "../../model" },
{ "path": "../../rich-text" },
{ "path": "../../shared" }, { "path": "../../shared" },
{ "path": "../../widgets/edgeless-toolbar" }, { "path": "../../widgets/edgeless-toolbar" },
{ "path": "../../../framework/global" }, { "path": "../../../framework/std" }
{ "path": "../../../framework/std" },
{ "path": "../../../framework/store" }
] ]
} }

View File

@@ -11,7 +11,6 @@
"license": "MIT", "license": "MIT",
"dependencies": { "dependencies": {
"@blocksuite/affine-block-attachment": "workspace:*", "@blocksuite/affine-block-attachment": "workspace:*",
"@blocksuite/affine-block-edgeless-text": "workspace:*",
"@blocksuite/affine-block-image": "workspace:*", "@blocksuite/affine-block-image": "workspace:*",
"@blocksuite/affine-block-surface": "workspace:*", "@blocksuite/affine-block-surface": "workspace:*",
"@blocksuite/affine-components": "workspace:*", "@blocksuite/affine-components": "workspace:*",
@@ -21,7 +20,6 @@
"@blocksuite/affine-gfx-shape": "workspace:*", "@blocksuite/affine-gfx-shape": "workspace:*",
"@blocksuite/affine-gfx-text": "workspace:*", "@blocksuite/affine-gfx-text": "workspace:*",
"@blocksuite/affine-model": "workspace:*", "@blocksuite/affine-model": "workspace:*",
"@blocksuite/affine-rich-text": "workspace:*",
"@blocksuite/affine-shared": "workspace:*", "@blocksuite/affine-shared": "workspace:*",
"@blocksuite/affine-widget-edgeless-toolbar": "workspace:*", "@blocksuite/affine-widget-edgeless-toolbar": "workspace:*",
"@blocksuite/global": "workspace:*", "@blocksuite/global": "workspace:*",
@@ -30,14 +28,11 @@
"@blocksuite/store": "workspace:*", "@blocksuite/store": "workspace:*",
"@lit/context": "^1.1.2", "@lit/context": "^1.1.2",
"@preact/signals-core": "^1.8.0", "@preact/signals-core": "^1.8.0",
"@toeverything/theme": "^1.1.23",
"@types/lodash-es": "^4.17.12", "@types/lodash-es": "^4.17.12",
"lit": "^3.2.0", "lit": "^3.2.0",
"lodash-es": "^4.17.23", "lodash-es": "^4.17.23",
"rxjs": "^7.8.2",
"simple-xml-to-json": "^1.2.2", "simple-xml-to-json": "^1.2.2",
"yjs": "^13.6.27", "yjs": "^13.6.27"
"zod": "^3.25.76"
}, },
"exports": { "exports": {
".": "./src/index.ts", ".": "./src/index.ts",

View File

@@ -8,7 +8,6 @@
"include": ["./src"], "include": ["./src"],
"references": [ "references": [
{ "path": "../../blocks/attachment" }, { "path": "../../blocks/attachment" },
{ "path": "../../blocks/edgeless-text" },
{ "path": "../../blocks/image" }, { "path": "../../blocks/image" },
{ "path": "../../blocks/surface" }, { "path": "../../blocks/surface" },
{ "path": "../../components" }, { "path": "../../components" },
@@ -18,7 +17,6 @@
{ "path": "../shape" }, { "path": "../shape" },
{ "path": "../text" }, { "path": "../text" },
{ "path": "../../model" }, { "path": "../../model" },
{ "path": "../../rich-text" },
{ "path": "../../shared" }, { "path": "../../shared" },
{ "path": "../../widgets/edgeless-toolbar" }, { "path": "../../widgets/edgeless-toolbar" },
{ "path": "../../../framework/global" }, { "path": "../../../framework/global" },

View File

@@ -23,16 +23,9 @@
"@blocksuite/global": "workspace:*", "@blocksuite/global": "workspace:*",
"@blocksuite/icons": "^2.2.17", "@blocksuite/icons": "^2.2.17",
"@blocksuite/std": "workspace:*", "@blocksuite/std": "workspace:*",
"@blocksuite/store": "workspace:*",
"@lit/context": "^1.1.2",
"@preact/signals-core": "^1.8.0", "@preact/signals-core": "^1.8.0",
"@toeverything/theme": "^1.1.23",
"@types/lodash-es": "^4.17.12",
"lit": "^3.2.0", "lit": "^3.2.0",
"lodash-es": "^4.17.23", "rxjs": "^7.8.2"
"rxjs": "^7.8.2",
"yjs": "^13.6.27",
"zod": "^3.25.76"
}, },
"exports": { "exports": {
".": "./src/index.ts", ".": "./src/index.ts",

View File

@@ -18,7 +18,6 @@
{ "path": "../../shared" }, { "path": "../../shared" },
{ "path": "../../widgets/edgeless-toolbar" }, { "path": "../../widgets/edgeless-toolbar" },
{ "path": "../../../framework/global" }, { "path": "../../../framework/global" },
{ "path": "../../../framework/std" }, { "path": "../../../framework/std" }
{ "path": "../../../framework/store" }
] ]
} }

View File

@@ -11,25 +11,15 @@
"license": "MIT", "license": "MIT",
"dependencies": { "dependencies": {
"@blocksuite/affine-block-surface": "workspace:*", "@blocksuite/affine-block-surface": "workspace:*",
"@blocksuite/affine-components": "workspace:*",
"@blocksuite/affine-ext-loader": "workspace:*", "@blocksuite/affine-ext-loader": "workspace:*",
"@blocksuite/affine-model": "workspace:*", "@blocksuite/affine-model": "workspace:*",
"@blocksuite/affine-rich-text": "workspace:*",
"@blocksuite/affine-shared": "workspace:*", "@blocksuite/affine-shared": "workspace:*",
"@blocksuite/affine-widget-edgeless-toolbar": "workspace:*", "@blocksuite/affine-widget-edgeless-toolbar": "workspace:*",
"@blocksuite/global": "workspace:*", "@blocksuite/global": "workspace:*",
"@blocksuite/icons": "^2.2.17", "@blocksuite/icons": "^2.2.17",
"@blocksuite/std": "workspace:*", "@blocksuite/std": "workspace:*",
"@blocksuite/store": "workspace:*",
"@lit/context": "^1.1.2",
"@preact/signals-core": "^1.8.0", "@preact/signals-core": "^1.8.0",
"@toeverything/theme": "^1.1.23", "lit": "^3.2.0"
"@types/lodash-es": "^4.17.12",
"lit": "^3.2.0",
"lodash-es": "^4.17.23",
"rxjs": "^7.8.2",
"yjs": "^13.6.27",
"zod": "^3.25.76"
}, },
"devDependencies": { "devDependencies": {
"vitest": "^4.0.18" "vitest": "^4.0.18"

View File

@@ -8,14 +8,11 @@
"include": ["./src"], "include": ["./src"],
"references": [ "references": [
{ "path": "../../blocks/surface" }, { "path": "../../blocks/surface" },
{ "path": "../../components" },
{ "path": "../../ext-loader" }, { "path": "../../ext-loader" },
{ "path": "../../model" }, { "path": "../../model" },
{ "path": "../../rich-text" },
{ "path": "../../shared" }, { "path": "../../shared" },
{ "path": "../../widgets/edgeless-toolbar" }, { "path": "../../widgets/edgeless-toolbar" },
{ "path": "../../../framework/global" }, { "path": "../../../framework/global" },
{ "path": "../../../framework/std" }, { "path": "../../../framework/std" }
{ "path": "../../../framework/store" }
] ]
} }

View File

@@ -24,13 +24,11 @@
"@blocksuite/store": "workspace:*", "@blocksuite/store": "workspace:*",
"@lit/context": "^1.1.2", "@lit/context": "^1.1.2",
"@preact/signals-core": "^1.8.0", "@preact/signals-core": "^1.8.0",
"@toeverything/theme": "^1.1.23",
"@types/lodash-es": "^4.17.12", "@types/lodash-es": "^4.17.12",
"lit": "^3.2.0", "lit": "^3.2.0",
"lodash-es": "^4.17.23", "lodash-es": "^4.17.23",
"rxjs": "^7.8.2", "rxjs": "^7.8.2",
"yjs": "^13.6.27", "yjs": "^13.6.27"
"zod": "^3.25.76"
}, },
"exports": { "exports": {
".": "./src/index.ts", ".": "./src/index.ts",

View File

@@ -13,25 +13,17 @@
"@blocksuite/affine-block-surface": "workspace:*", "@blocksuite/affine-block-surface": "workspace:*",
"@blocksuite/affine-components": "workspace:*", "@blocksuite/affine-components": "workspace:*",
"@blocksuite/affine-ext-loader": "workspace:*", "@blocksuite/affine-ext-loader": "workspace:*",
"@blocksuite/affine-gfx-text": "workspace:*",
"@blocksuite/affine-model": "workspace:*", "@blocksuite/affine-model": "workspace:*",
"@blocksuite/affine-rich-text": "workspace:*",
"@blocksuite/affine-shared": "workspace:*", "@blocksuite/affine-shared": "workspace:*",
"@blocksuite/affine-widget-edgeless-toolbar": "workspace:*", "@blocksuite/affine-widget-edgeless-toolbar": "workspace:*",
"@blocksuite/global": "workspace:*", "@blocksuite/global": "workspace:*",
"@blocksuite/icons": "^2.2.17",
"@blocksuite/std": "workspace:*", "@blocksuite/std": "workspace:*",
"@blocksuite/store": "workspace:*", "@blocksuite/store": "workspace:*",
"@floating-ui/dom": "^1.6.13", "@floating-ui/dom": "^1.6.13",
"@lit/context": "^1.1.2",
"@preact/signals-core": "^1.8.0",
"@toeverything/theme": "^1.1.23", "@toeverything/theme": "^1.1.23",
"@types/lodash-es": "^4.17.12",
"lit": "^3.2.0", "lit": "^3.2.0",
"lodash-es": "^4.17.23",
"rxjs": "^7.8.2", "rxjs": "^7.8.2",
"yjs": "^13.6.27", "yjs": "^13.6.27"
"zod": "^3.25.76"
}, },
"exports": { "exports": {
".": "./src/index.ts", ".": "./src/index.ts",

View File

@@ -1,4 +1,4 @@
/* eslint-disable @typescript-eslint/await-thenable */ /* oxlint-disable @typescript-eslint/await-thenable */
import type { import type {
Template, Template,
TemplateCategory, TemplateCategory,
@@ -44,7 +44,7 @@ export const builtInTemplates = {
await Promise.all(extendTemplate.map(manager => manager.list(category))) await Promise.all(extendTemplate.map(manager => manager.list(category)))
); );
// eslint-disable-next-line sonarjs/no-empty-collection // oxlint-disable-next-line sonarjs/no-empty-collection
const cate = templates.find(cate => cate.name === category); const cate = templates.find(cate => cate.name === category);
if (!cate) return extendTemplates; if (!cate) return extendTemplates;
@@ -61,7 +61,7 @@ export const builtInTemplates = {
await Promise.all(extendTemplate.map(manager => manager.categories())) await Promise.all(extendTemplate.map(manager => manager.categories()))
); );
// eslint-disable-next-line sonarjs/no-empty-collection // oxlint-disable-next-line sonarjs/no-empty-collection
return templates.map(cate => cate.name).concat(extendCates); return templates.map(cate => cate.name).concat(extendCates);
}, },
@@ -75,7 +75,7 @@ export const builtInTemplates = {
keyword = keyword.trim().toLocaleLowerCase(); keyword = keyword.trim().toLocaleLowerCase();
await Promise.all( await Promise.all(
// eslint-disable-next-line sonarjs/no-empty-collection // oxlint-disable-next-line sonarjs/no-empty-collection
templates.map(async categroy => { templates.map(async categroy => {
if (cateName && cateName !== categroy.name) { if (cateName && cateName !== categroy.name) {
return; return;

View File

@@ -21,7 +21,6 @@ import { css, html, LitElement, nothing, unsafeCSS } from 'lit';
import { property, state } from 'lit/decorators.js'; import { property, state } from 'lit/decorators.js';
import { repeat } from 'lit/directives/repeat.js'; import { repeat } from 'lit/directives/repeat.js';
import { styleMap } from 'lit/directives/style-map.js'; import { styleMap } from 'lit/directives/style-map.js';
import { unsafeSVG } from 'lit/directives/unsafe-svg.js';
import { createTemplateJob } from '../services/template.js'; import { createTemplateJob } from '../services/template.js';
import { builtInTemplates } from './builtin-templates.js'; import { builtInTemplates } from './builtin-templates.js';
@@ -29,6 +28,10 @@ import { defaultPreview, Triangle } from './cards.js';
import type { Template } from './template-type.js'; import type { Template } from './template-type.js';
import { cloneDeep } from './utils.js'; import { cloneDeep } from './utils.js';
function toSvgPreviewDataUrl(svg: string) {
return `data:image/svg+xml;charset=utf-8,${encodeURIComponent(svg)}`;
}
export class EdgelessTemplatePanel extends WithDisposable(LitElement) { export class EdgelessTemplatePanel extends WithDisposable(LitElement) {
static override styles = css` static override styles = css`
:host { :host {
@@ -433,7 +436,11 @@ export class EdgelessTemplatePanel extends WithDisposable(LitElement) {
template => { template => {
const preview = template.preview const preview = template.preview
? template.preview.startsWith('<svg') ? template.preview.startsWith('<svg')
? html`${unsafeSVG(template.preview)}` ? html`<img
src="${toSvgPreviewDataUrl(template.preview)}"
class="template-preview"
loading="lazy"
/>`
: html`<img : html`<img
src="${template.preview}" src="${template.preview}"
class="template-preview" class="template-preview"

View File

@@ -10,9 +10,7 @@
{ "path": "../../blocks/surface" }, { "path": "../../blocks/surface" },
{ "path": "../../components" }, { "path": "../../components" },
{ "path": "../../ext-loader" }, { "path": "../../ext-loader" },
{ "path": "../text" },
{ "path": "../../model" }, { "path": "../../model" },
{ "path": "../../rich-text" },
{ "path": "../../shared" }, { "path": "../../shared" },
{ "path": "../../widgets/edgeless-toolbar" }, { "path": "../../widgets/edgeless-toolbar" },
{ "path": "../../../framework/global" }, { "path": "../../../framework/global" },

View File

@@ -20,16 +20,10 @@
"@blocksuite/global": "workspace:*", "@blocksuite/global": "workspace:*",
"@blocksuite/icons": "^2.2.17", "@blocksuite/icons": "^2.2.17",
"@blocksuite/std": "workspace:*", "@blocksuite/std": "workspace:*",
"@blocksuite/store": "workspace:*",
"@lit/context": "^1.1.2", "@lit/context": "^1.1.2",
"@preact/signals-core": "^1.8.0", "@preact/signals-core": "^1.8.0",
"@toeverything/theme": "^1.1.23",
"@types/lodash-es": "^4.17.12",
"lit": "^3.2.0", "lit": "^3.2.0",
"lodash-es": "^4.17.23", "yjs": "^13.6.27"
"rxjs": "^7.8.2",
"yjs": "^13.6.27",
"zod": "^3.25.76"
}, },
"exports": { "exports": {
".": "./src/index.ts", ".": "./src/index.ts",

View File

@@ -353,7 +353,7 @@ export function createTextActions<
@select=${onPick} @select=${onPick}
.label="${'Font size'}" .label="${'Font size'}"
.sizes=${FONT_SIZE_LIST} .sizes=${FONT_SIZE_LIST}
.size$=${fontSize$} .sizeSignal=${fontSize$}
></affine-size-dropdown-menu>`; ></affine-size-dropdown-menu>`;
}, },
}, },

View File

@@ -15,7 +15,6 @@
{ "path": "../../shared" }, { "path": "../../shared" },
{ "path": "../../widgets/edgeless-toolbar" }, { "path": "../../widgets/edgeless-toolbar" },
{ "path": "../../../framework/global" }, { "path": "../../../framework/global" },
{ "path": "../../../framework/std" }, { "path": "../../../framework/std" }
{ "path": "../../../framework/store" }
] ]
} }

View File

@@ -11,7 +11,6 @@
"license": "MIT", "license": "MIT",
"dependencies": { "dependencies": {
"@blocksuite/affine-ext-loader": "workspace:*", "@blocksuite/affine-ext-loader": "workspace:*",
"@blocksuite/affine-model": "workspace:*",
"@blocksuite/affine-rich-text": "workspace:*", "@blocksuite/affine-rich-text": "workspace:*",
"@blocksuite/affine-shared": "workspace:*", "@blocksuite/affine-shared": "workspace:*",
"@blocksuite/global": "workspace:*", "@blocksuite/global": "workspace:*",
@@ -19,18 +18,12 @@
"@blocksuite/store": "workspace:*", "@blocksuite/store": "workspace:*",
"@lit/context": "^1.1.2", "@lit/context": "^1.1.2",
"@preact/signals-core": "^1.8.0", "@preact/signals-core": "^1.8.0",
"@toeverything/theme": "^1.1.23",
"@types/lodash-es": "^4.17.12", "@types/lodash-es": "^4.17.12",
"lit": "^3.2.0", "lit": "^3.2.0",
"lit-html": "^3.2.1", "lit-html": "^3.2.1",
"lodash-es": "^4.17.23", "lodash-es": "^4.17.23",
"rxjs": "^7.8.2",
"yjs": "^13.6.27",
"zod": "^3.25.76" "zod": "^3.25.76"
}, },
"devDependencies": {
"vitest": "^4.0.18"
},
"exports": { "exports": {
".": "./src/index.ts", ".": "./src/index.ts",
"./view": "./src/view.ts", "./view": "./src/view.ts",

Some files were not shown because too many files have changed in this diff Show More