refactor(editor): remove blocks package (#10708)

This commit is contained in:
Saul-Mirone
2025-03-09 05:44:26 +00:00
parent 0766a2d9ae
commit 12bc142809
277 changed files with 904 additions and 1060 deletions
@@ -1,7 +1,7 @@
/* eslint-disable @typescript-eslint/no-restricted-imports */
import '@shoelace-style/shoelace/dist/components/tab-panel/tab-panel.js';
import { ShadowlessElement } from '@blocksuite/block-std';
import { ShadowlessElement } from '@blocksuite/affine/block-std';
import {
defaultImageProxyMiddleware,
docLinkBaseURLMiddlewareBuilder,
@@ -13,10 +13,10 @@ import {
type PlainTextAdapter,
PlainTextAdapterFactoryIdentifier,
titleMiddleware,
} from '@blocksuite/blocks';
import { WithDisposable } from '@blocksuite/global/lit';
} from '@blocksuite/affine/blocks';
import { WithDisposable } from '@blocksuite/affine/global/lit';
import type { DocSnapshot } from '@blocksuite/affine/store';
import type { TestAffineEditorContainer } from '@blocksuite/integration-test';
import type { DocSnapshot } from '@blocksuite/store';
import { effect } from '@preact/signals-core';
import type SlTabPanel from '@shoelace-style/shoelace/dist/components/tab-panel/tab-panel.js';
import { css, html, type PropertyValues } from 'lit';
@@ -1,8 +1,7 @@
/* oxlint-disable @typescript-eslint/no-non-null-assertion */
import { getAttachmentFileIcon } from '@blocksuite/affine/components/icons';
import { SignalWatcher, WithDisposable } from '@blocksuite/affine/global/lit';
import type { AttachmentBlockModel } from '@blocksuite/affine-model';
import { humanFileSize } from '@blocksuite/affine-shared/utils';
import { getAttachmentFileIcon } from '@blocksuite/blocks';
import { SignalWatcher, WithDisposable } from '@blocksuite/global/lit';
import {
ArrowDownBigIcon,
ArrowUpBigIcon,
@@ -1,5 +1,5 @@
import { ShadowlessElement } from '@blocksuite/block-std';
import { WithDisposable } from '@blocksuite/global/lit';
import { ShadowlessElement } from '@blocksuite/affine/block-std';
import { WithDisposable } from '@blocksuite/affine/global/lit';
import type { TestAffineEditorContainer } from '@blocksuite/integration-test';
import { effect } from '@preact/signals-core';
import { css, html, nothing } from 'lit';
@@ -1,5 +1,5 @@
import { ShadowlessElement } from '@blocksuite/block-std';
import { WithDisposable } from '@blocksuite/global/lit';
import { ShadowlessElement } from '@blocksuite/affine/block-std';
import { WithDisposable } from '@blocksuite/affine/global/lit';
import type { TestAffineEditorContainer } from '@blocksuite/integration-test';
import { css, html, nothing } from 'lit';
import { customElement, property, state } from 'lit/decorators.js';
@@ -1,4 +1,4 @@
import { WithDisposable } from '@blocksuite/global/lit';
import { WithDisposable } from '@blocksuite/affine/global/lit';
import type { TestAffineEditorContainer } from '@blocksuite/integration-test';
import { css, html, LitElement, nothing } from 'lit';
import { customElement, property, state } from 'lit/decorators.js';
@@ -1,12 +1,10 @@
import { ShadowlessElement } from '@blocksuite/block-std';
import {
CloseIcon,
createDefaultDoc,
GenerateDocUrlProvider,
} from '@blocksuite/blocks';
import { WithDisposable } from '@blocksuite/global/lit';
import { ShadowlessElement } from '@blocksuite/affine/block-std';
import { WithDisposable } from '@blocksuite/affine/global/lit';
import { GenerateDocUrlProvider } from '@blocksuite/affine/shared/services';
import { createDefaultDoc } from '@blocksuite/affine/shared/utils';
import type { Doc, Workspace } from '@blocksuite/affine/store';
import { CloseIcon } from '@blocksuite/icons/lit';
import type { TestAffineEditorContainer } from '@blocksuite/integration-test';
import type { Doc, Workspace } from '@blocksuite/store';
import { css, html, nothing } from 'lit';
import { customElement, property } from 'lit/decorators.js';
import { repeat } from 'lit/directives/repeat.js';
@@ -153,7 +151,7 @@ export class DocsPanel extends WithDisposable(ShadowlessElement) {
${doc.meta?.title || 'Untitled'}
${docs.length > 1
? html`<div @click="${deleteDoc}" class="delete-doc-icon">
${CloseIcon}
${CloseIcon()}
</div>`
: nothing}
</div>`;
@@ -1,4 +1,4 @@
import { ShadowlessElement } from '@blocksuite/block-std';
import { ShadowlessElement } from '@blocksuite/affine/block-std';
import { css, html } from 'lit';
import { customElement } from 'lit/decorators.js';
@@ -16,40 +16,44 @@ import '@shoelace-style/shoelace/dist/themes/light.css';
import '@shoelace-style/shoelace/dist/themes/dark.css';
import './left-side-panel.js';
import { NotionHtmlAdapter } from '@blocksuite/affine-shared/adapters';
import type { AffineTextAttributes } from '@blocksuite/affine-shared/types';
import { ShadowlessElement } from '@blocksuite/block-std';
import { GfxControllerIdentifier } from '@blocksuite/block-std/gfx';
import { ShadowlessElement } from '@blocksuite/affine/block-std';
import { GfxControllerIdentifier } from '@blocksuite/affine/block-std/gfx';
import {
ColorScheme,
ColorVariables,
createAssetsArchive,
defaultImageProxyMiddleware,
docLinkBaseURLMiddleware,
type DocMode,
DocModeProvider,
download,
ExportManager,
FontFamilyVariables,
HtmlAdapterFactoryIdentifier,
HtmlTransformer,
MarkdownAdapterFactoryIdentifier,
MarkdownTransformer,
NotionHtmlTransformer,
openFileOrFiles,
PlainTextAdapterFactoryIdentifier,
printToPdf,
titleMiddleware,
ZipTransformer,
} from '@blocksuite/affine/blocks';
import { toast } from '@blocksuite/affine/components/toast';
import {
BlockSuiteError,
ErrorCode,
} from '@blocksuite/affine/global/exceptions';
import type { SerializedXYWH } from '@blocksuite/affine/global/gfx';
import type { DeltaInsert } from '@blocksuite/affine/inline/types';
import { DocModeProvider } from '@blocksuite/affine/shared/services';
import {
ColorVariables,
FontFamilyVariables,
SizeVariables,
StyleVariables,
titleMiddleware,
toast,
ZipTransformer,
} from '@blocksuite/blocks';
import { BlockSuiteError, ErrorCode } from '@blocksuite/global/exceptions';
import type { SerializedXYWH } from '@blocksuite/global/gfx';
import type { DeltaInsert } from '@blocksuite/inline/types';
} from '@blocksuite/affine/shared/theme';
import { openFileOrFiles, printToPdf } from '@blocksuite/affine/shared/utils';
import { Text, type Workspace } from '@blocksuite/affine/store';
import { NotionHtmlAdapter } from '@blocksuite/affine-shared/adapters';
import type { AffineTextAttributes } from '@blocksuite/affine-shared/types';
import { TestAffineEditorContainer } from '@blocksuite/integration-test';
import { Text, type Workspace } from '@blocksuite/store';
import type { SlDropdown } from '@shoelace-style/shoelace';
import { setBasePath } from '@shoelace-style/shoelace/dist/utilities/base-path.js';
import { css, html } from 'lit';
+2 -2
View File
@@ -1,5 +1,5 @@
import { SpecProvider } from '@blocksuite/blocks';
import { TestWorkspace } from '@blocksuite/store/test';
import { SpecProvider } from '@blocksuite/affine/shared/utils';
import { TestWorkspace } from '@blocksuite/affine/store/test';
export function createEmptyDoc() {
const collection = new TestWorkspace();
@@ -1,6 +1,6 @@
import type { DocModeProvider } from '@blocksuite/blocks';
import type { DocModeProvider } from '@blocksuite/affine/shared/services';
import type { Doc, Store, Workspace } from '@blocksuite/affine/store';
import type { TestAffineEditorContainer } from '@blocksuite/integration-test';
import type { Doc, Store, Workspace } from '@blocksuite/store';
export function getDocFromUrlParams(collection: Workspace, url: URL) {
let doc: Store | null = null;
@@ -1,19 +1,21 @@
import type { EditorSetting } from '@blocksuite/affine-shared/services';
import {
ColorScheme,
type DocMode,
type ReferenceParams,
} from '@blocksuite/affine/blocks';
import { toast } from '@blocksuite/affine/components/toast';
import { Slot } from '@blocksuite/affine/global/slot';
import {
type DocModeProvider,
type EditorSetting,
GeneralSettingSchema,
type GenerateDocUrlService,
type NotificationService,
type ParseDocUrlService,
type ReferenceParams,
type ThemeExtension,
toast,
} from '@blocksuite/blocks';
import { Slot } from '@blocksuite/global/slot';
} from '@blocksuite/affine/shared/services';
import { type Workspace } from '@blocksuite/affine/store';
import type { TestAffineEditorContainer } from '@blocksuite/integration-test';
import { type Workspace } from '@blocksuite/store';
import { Signal, signal } from '@preact/signals-core';
function getModeFromStorage() {
+2 -2
View File
@@ -2,8 +2,8 @@ import type {
Template,
TemplateCategory,
TemplateManager,
} from '@blocksuite/blocks';
import { EdgelessTemplatePanel } from '@blocksuite/blocks';
} from '@blocksuite/affine/blocks';
import { EdgelessTemplatePanel } from '@blocksuite/affine/blocks';
export function setupEdgelessTemplate() {
const playgroundTemplates = [
@@ -1,6 +1,6 @@
import { ShadowlessElement, TextSelection } from '@blocksuite/block-std';
import type { RichText } from '@blocksuite/blocks';
import { WithDisposable } from '@blocksuite/global/lit';
import { ShadowlessElement, TextSelection } from '@blocksuite/affine/block-std';
import type { RichText } from '@blocksuite/affine/blocks';
import { WithDisposable } from '@blocksuite/affine/global/lit';
import { css, html, nothing } from 'lit';
import { property, query } from 'lit/decorators.js';
import * as Y from 'yjs';
@@ -1,5 +1,5 @@
import type { EditorHost, TextSelection } from '@blocksuite/affine/block-std';
import { getSelectedBlocksCommand } from '@blocksuite/affine-shared/commands';
import type { EditorHost, TextSelection } from '@blocksuite/block-std';
import * as Y from 'yjs';
export interface CommentMeta {
@@ -1,5 +1,5 @@
import { ShadowlessElement, TextSelection } from '@blocksuite/block-std';
import { WithDisposable } from '@blocksuite/global/lit';
import { ShadowlessElement, TextSelection } from '@blocksuite/affine/block-std';
import { WithDisposable } from '@blocksuite/affine/global/lit';
import type { TestAffineEditorContainer } from '@blocksuite/integration-test';
import { css, html } from 'lit';
import { property, query } from 'lit/decorators.js';
+2 -2
View File
@@ -1,6 +1,6 @@
import type { EditorHost } from '@blocksuite/block-std';
import type { EditorHost } from '@blocksuite/affine/block-std';
import type { TestAffineEditorContainer } from '@blocksuite/integration-test';
import type { BlockSchema, Blocks, Workspace, Transformer } from '@blocksuite/store';
import type { BlockSchema, Blocks, Workspace, Transformer } from '@blocksuite/affine/store';
import type { z } from 'zod';
import type * as Y from 'yjs';
@@ -1,6 +1,6 @@
import { AffineSchemas, ZipTransformer } from '@blocksuite/blocks';
import { Schema, Text, type Workspace } from '@blocksuite/store';
import { ZipTransformer } from '@blocksuite/affine/blocks';
import { AffineSchemas } from '@blocksuite/affine/schemas';
import { Schema, Text, type Workspace } from '@blocksuite/affine/store';
export async function affineSnapshot(collection: Workspace, id: string) {
const doc = collection.createDoc({ id });
doc.load();
@@ -4,11 +4,11 @@ import {
type DatabaseBlockModel,
type ListType,
type ParagraphType,
} from '@blocksuite/blocks';
} from '@blocksuite/affine/blocks';
import { Text, type Workspace } from '@blocksuite/affine/store';
import { groupTraitKey } from '@blocksuite/data-view';
import { propertyPresets } from '@blocksuite/data-view/property-presets';
import { viewPresets } from '@blocksuite/data-view/view-presets';
import { Text, type Workspace } from '@blocksuite/store';
import type { InitFn } from './utils.js';
@@ -1,4 +1,4 @@
import { Text, type Workspace } from '@blocksuite/store';
import { Text, type Workspace } from '@blocksuite/affine/store';
import type { InitFn } from './utils.js';
@@ -1,4 +1,4 @@
import { Text, type Workspace } from '@blocksuite/store';
import { Text, type Workspace } from '@blocksuite/affine/store';
import type { InitFn } from './utils.js';
@@ -1,12 +1,12 @@
import { DEFAULT_ROUGHNESS } from '@blocksuite/affine-model';
import type { SerializedXYWH } from '@blocksuite/global/gfx';
import type { SerializedXYWH } from '@blocksuite/affine/global/gfx';
import {
Boxed,
nanoid,
native2Y,
Text,
type Workspace,
} from '@blocksuite/store';
} from '@blocksuite/affine/store';
import { DEFAULT_ROUGHNESS } from '@blocksuite/affine-model';
import type * as Y from 'yjs';
import type { InitFn } from './utils.js';
@@ -1,4 +1,4 @@
import { Text, type Workspace } from '@blocksuite/store';
import { Text, type Workspace } from '@blocksuite/affine/store';
import type { InitFn } from './utils.js';
@@ -1,4 +1,4 @@
import { Text, type Workspace } from '@blocksuite/store';
import { Text, type Workspace } from '@blocksuite/affine/store';
import type { InitFn } from './utils.js';
@@ -1,4 +1,4 @@
import { Text, type Workspace } from '@blocksuite/store';
import { Text, type Workspace } from '@blocksuite/affine/store';
import { createTestEditor } from '../utils/extensions.js';
import type { InitFn } from './utils.js';
@@ -1,4 +1,4 @@
import { Text, type Workspace } from '@blocksuite/store';
import { Text, type Workspace } from '@blocksuite/affine/store';
import * as Y from 'yjs';
import type { InitFn } from './utils.js';
@@ -1,5 +1,5 @@
import { MarkdownTransformer } from '@blocksuite/blocks';
import { Text, type Workspace } from '@blocksuite/store';
import { MarkdownTransformer } from '@blocksuite/affine/blocks';
import { Text, type Workspace } from '@blocksuite/affine/store';
import type { InitFn } from './utils.js';
@@ -1,5 +1,5 @@
import { MarkdownTransformer } from '@blocksuite/blocks';
import { Text, type Workspace } from '@blocksuite/store';
import { MarkdownTransformer } from '@blocksuite/affine/blocks';
import { Text, type Workspace } from '@blocksuite/affine/store';
import type { InitFn } from './utils';
@@ -1,4 +1,4 @@
import type { Workspace } from '@blocksuite/store';
import type { Workspace } from '@blocksuite/affine/store';
export interface InitFn {
(collection: Workspace, docId: string): Promise<void> | void;
@@ -1,4 +1,4 @@
import type { Workspace } from '@blocksuite/store';
import type { Workspace } from '@blocksuite/affine/store';
import * as Y from 'yjs';
import type { InitFn } from './utils.js';
+7 -6
View File
@@ -1,13 +1,13 @@
import '../../style.css';
import * as blockStd from '@blocksuite/block-std';
import * as blocks from '@blocksuite/blocks';
import { effects as blocksEffects } from '@blocksuite/blocks/effects';
import * as globalUtils from '@blocksuite/global/utils';
import * as blockStd from '@blocksuite/affine/block-std';
import * as blocks from '@blocksuite/affine/blocks';
import { effects as blocksEffects } from '@blocksuite/affine/effects';
import * as globalUtils from '@blocksuite/affine/global/utils';
import * as services from '@blocksuite/affine/shared/services';
import * as store from '@blocksuite/affine/store';
import * as editor from '@blocksuite/integration-test';
import { effects as presetsEffects } from '@blocksuite/integration-test/effects';
// eslint-disable-next-line @typescript-eslint/no-restricted-imports
import * as store from '@blocksuite/store';
import { setupEdgelessTemplate } from '../_common/setup.js';
import { effects as commentEffects } from '../comment/effects.js';
@@ -38,6 +38,7 @@ async function main() {
store,
blocks,
global: { utils: globalUtils },
services,
editor,
blockStd: blockStd,
}),
@@ -1,4 +1,4 @@
import type { Store, Workspace } from '@blocksuite/store';
import type { Store, Workspace } from '@blocksuite/affine/store';
import { AttachmentViewerPanel } from '../../_common/components/attachment-viewer-panel';
import { CustomFramePanel } from '../../_common/components/custom-frame-panel';
@@ -1,17 +1,18 @@
import { AffineSchemas, SpecProvider } from '@blocksuite/blocks';
import { nanoid, Schema, Transformer } from '@blocksuite/store';
import { AffineSchemas } from '@blocksuite/affine/schemas';
import { SpecProvider } from '@blocksuite/affine/shared/utils';
import { nanoid, Schema, Transformer } from '@blocksuite/affine/store';
import {
createAutoIncrementIdGenerator,
type DocCollectionOptions,
TestWorkspace,
} from '@blocksuite/store/test';
} from '@blocksuite/affine/store/test';
import {
type BlobSource,
BroadcastChannelAwarenessSource,
BroadcastChannelDocSource,
IndexedDBBlobSource,
MemoryBlobSource,
} from '@blocksuite/sync';
} from '@blocksuite/affine/sync';
import * as Y from 'yjs';
import { MockServerBlobSource } from '../../_common/sync/blob/mock-server.js';
@@ -1,16 +1,18 @@
import {
EdgelessEditorBlockSpecs,
PageEditorBlockSpecs,
RefNodeSlotsProvider,
} from '@blocksuite/affine/blocks';
import {
CommunityCanvasTextFonts,
DocModeProvider,
EdgelessEditorBlockSpecs,
EditorSettingExtension,
FeatureFlagService,
FontConfigExtension,
PageEditorBlockSpecs,
ParseDocUrlExtension,
RefNodeSlotsProvider,
} from '@blocksuite/blocks';
} from '@blocksuite/affine/shared/services';
import type { ExtensionType, Store, Workspace } from '@blocksuite/affine/store';
import { type TestAffineEditorContainer } from '@blocksuite/integration-test';
import type { ExtensionType, Store, Workspace } from '@blocksuite/store';
import {
mockDocModeService,
@@ -1,6 +1,6 @@
import { DocModeProvider } from '@blocksuite/blocks';
import { DocModeProvider } from '@blocksuite/affine/shared/services';
import type { Workspace } from '@blocksuite/affine/store';
import { TestAffineEditorContainer } from '@blocksuite/integration-test';
import type { Workspace } from '@blocksuite/store';
import {
getDocFromUrlParams,
@@ -1,4 +1,4 @@
import type { Store, Workspace } from '@blocksuite/store';
import type { Store, Workspace } from '@blocksuite/affine/store';
import { createTestApp } from './app';