@@ -134,7 +134,9 @@
|
|||||||
"./blocks/paragraph/store": "./src/blocks/paragraph/store.ts",
|
"./blocks/paragraph/store": "./src/blocks/paragraph/store.ts",
|
||||||
"./blocks/paragraph/view": "./src/blocks/paragraph/view.ts",
|
"./blocks/paragraph/view": "./src/blocks/paragraph/view.ts",
|
||||||
"./blocks/root": "./src/blocks/root.ts",
|
"./blocks/root": "./src/blocks/root.ts",
|
||||||
"./blocks/surface": "./src/blocks/surface.ts",
|
"./blocks/surface": "./src/blocks/surface/index.ts",
|
||||||
|
"./blocks/surface/store": "./src/blocks/surface/store.ts",
|
||||||
|
"./blocks/surface/view": "./src/blocks/surface/view.ts",
|
||||||
"./blocks/surface-ref": "./src/blocks/surface-ref/index.ts",
|
"./blocks/surface-ref": "./src/blocks/surface-ref/index.ts",
|
||||||
"./blocks/surface-ref/store": "./src/blocks/surface-ref/store.ts",
|
"./blocks/surface-ref/store": "./src/blocks/surface-ref/store.ts",
|
||||||
"./blocks/surface-ref/view": "./src/blocks/surface-ref/view.ts",
|
"./blocks/surface-ref/view": "./src/blocks/surface-ref/view.ts",
|
||||||
|
|||||||
1
blocksuite/affine/all/src/blocks/surface/store.ts
Normal file
1
blocksuite/affine/all/src/blocks/surface/store.ts
Normal file
@@ -0,0 +1 @@
|
|||||||
|
export * from '@blocksuite/affine-block-surface/store';
|
||||||
1
blocksuite/affine/all/src/blocks/surface/view.ts
Normal file
1
blocksuite/affine/all/src/blocks/surface/view.ts
Normal file
@@ -0,0 +1 @@
|
|||||||
|
export * from '@blocksuite/affine-block-surface/view';
|
||||||
@@ -1,5 +1,4 @@
|
|||||||
import { effects as blockRootEffects } from '@blocksuite/affine-block-root/effects';
|
import { effects as blockRootEffects } from '@blocksuite/affine-block-root/effects';
|
||||||
import { effects as blockSurfaceEffects } from '@blocksuite/affine-block-surface/effects';
|
|
||||||
import { BlockSelection } from '@blocksuite/affine-components/block-selection';
|
import { BlockSelection } from '@blocksuite/affine-components/block-selection';
|
||||||
import { BlockZeroWidth } from '@blocksuite/affine-components/block-zero-width';
|
import { BlockZeroWidth } from '@blocksuite/affine-components/block-zero-width';
|
||||||
import { effects as componentCaptionEffects } from '@blocksuite/affine-components/caption';
|
import { effects as componentCaptionEffects } from '@blocksuite/affine-components/caption';
|
||||||
@@ -46,7 +45,6 @@ export function effects() {
|
|||||||
dataViewEffects();
|
dataViewEffects();
|
||||||
richTextEffects();
|
richTextEffects();
|
||||||
|
|
||||||
blockSurfaceEffects();
|
|
||||||
blockRootEffects();
|
blockRootEffects();
|
||||||
|
|
||||||
componentCaptionEffects();
|
componentCaptionEffects();
|
||||||
|
|||||||
@@ -4,7 +4,6 @@ import {
|
|||||||
RootBlockMarkdownAdapterExtension,
|
RootBlockMarkdownAdapterExtension,
|
||||||
RootBlockNotionHtmlAdapterExtension,
|
RootBlockNotionHtmlAdapterExtension,
|
||||||
} from '@blocksuite/affine-block-root';
|
} from '@blocksuite/affine-block-root';
|
||||||
import { SurfaceBlockSchemaExtension } from '@blocksuite/affine-block-surface';
|
|
||||||
import {
|
import {
|
||||||
type StoreExtensionContext,
|
type StoreExtensionContext,
|
||||||
StoreExtensionProvider,
|
StoreExtensionProvider,
|
||||||
@@ -69,7 +68,6 @@ function getNotionHtmlAdapterExtensions(): ExtensionType[] {
|
|||||||
|
|
||||||
const MigratingStoreExtensions: ExtensionType[] = [
|
const MigratingStoreExtensions: ExtensionType[] = [
|
||||||
RootBlockSchemaExtension,
|
RootBlockSchemaExtension,
|
||||||
SurfaceBlockSchemaExtension,
|
|
||||||
TranscriptionBlockSchemaExtension,
|
TranscriptionBlockSchemaExtension,
|
||||||
|
|
||||||
BlockSelectionExtension,
|
BlockSelectionExtension,
|
||||||
|
|||||||
@@ -5,13 +5,6 @@ import {
|
|||||||
PreviewPageRootBlockSpec,
|
PreviewPageRootBlockSpec,
|
||||||
ReadOnlyClipboard,
|
ReadOnlyClipboard,
|
||||||
} from '@blocksuite/affine-block-root';
|
} from '@blocksuite/affine-block-root';
|
||||||
import {
|
|
||||||
EdgelessSurfaceBlockAdapterExtensions,
|
|
||||||
EdgelessSurfaceBlockSpec,
|
|
||||||
PageSurfaceBlockSpec,
|
|
||||||
SurfaceBlockAdapterExtensions,
|
|
||||||
} from '@blocksuite/affine-block-surface';
|
|
||||||
import { inlinePresetExtensions } from '@blocksuite/affine-inline-preset';
|
|
||||||
import {
|
import {
|
||||||
DefaultOpenDocExtension,
|
DefaultOpenDocExtension,
|
||||||
DocDisplayMetaService,
|
DocDisplayMetaService,
|
||||||
@@ -21,45 +14,30 @@ import {
|
|||||||
import type { ExtensionType } from '@blocksuite/store';
|
import type { ExtensionType } from '@blocksuite/store';
|
||||||
|
|
||||||
const CommonBlockSpecs: ExtensionType[] = [
|
const CommonBlockSpecs: ExtensionType[] = [
|
||||||
inlinePresetExtensions,
|
|
||||||
DocDisplayMetaService,
|
DocDisplayMetaService,
|
||||||
EditPropsStore,
|
EditPropsStore,
|
||||||
DefaultOpenDocExtension,
|
DefaultOpenDocExtension,
|
||||||
FontLoaderService,
|
FontLoaderService,
|
||||||
].flat();
|
].flat();
|
||||||
|
|
||||||
const PageFirstPartyBlockSpecs: ExtensionType[] = [
|
|
||||||
CommonBlockSpecs,
|
|
||||||
PageSurfaceBlockSpec,
|
|
||||||
|
|
||||||
...SurfaceBlockAdapterExtensions,
|
|
||||||
].flat();
|
|
||||||
|
|
||||||
const EdgelessFirstPartyBlockSpecs: ExtensionType[] = [
|
|
||||||
CommonBlockSpecs,
|
|
||||||
EdgelessSurfaceBlockSpec,
|
|
||||||
|
|
||||||
...EdgelessSurfaceBlockAdapterExtensions,
|
|
||||||
].flat();
|
|
||||||
|
|
||||||
export const MigratingEdgelessEditorBlockSpecs: ExtensionType[] = [
|
export const MigratingEdgelessEditorBlockSpecs: ExtensionType[] = [
|
||||||
EdgelessBuiltInSpecs,
|
EdgelessBuiltInSpecs,
|
||||||
EdgelessFirstPartyBlockSpecs,
|
CommonBlockSpecs,
|
||||||
].flat();
|
].flat();
|
||||||
|
|
||||||
export const MigratingPageEditorBlockSpecs: ExtensionType[] = [
|
export const MigratingPageEditorBlockSpecs: ExtensionType[] = [
|
||||||
PageRootBlockSpec,
|
PageRootBlockSpec,
|
||||||
PageFirstPartyBlockSpecs,
|
CommonBlockSpecs,
|
||||||
].flat();
|
].flat();
|
||||||
|
|
||||||
export const MigratingPreviewEdgelessEditorBlockSpecs: ExtensionType[] = [
|
export const MigratingPreviewEdgelessEditorBlockSpecs: ExtensionType[] = [
|
||||||
PreviewEdgelessRootBlockSpec,
|
PreviewEdgelessRootBlockSpec,
|
||||||
EdgelessFirstPartyBlockSpecs,
|
CommonBlockSpecs,
|
||||||
ReadOnlyClipboard,
|
ReadOnlyClipboard,
|
||||||
].flat();
|
].flat();
|
||||||
|
|
||||||
export const MigratingPreviewPageEditorBlockSpecs: ExtensionType[] = [
|
export const MigratingPreviewPageEditorBlockSpecs: ExtensionType[] = [
|
||||||
PreviewPageRootBlockSpec,
|
PreviewPageRootBlockSpec,
|
||||||
PageFirstPartyBlockSpecs,
|
CommonBlockSpecs,
|
||||||
ReadOnlyClipboard,
|
ReadOnlyClipboard,
|
||||||
].flat();
|
].flat();
|
||||||
|
|||||||
@@ -13,6 +13,7 @@ import { LatexStoreExtension } from '@blocksuite/affine-block-latex/store';
|
|||||||
import { ListStoreExtension } from '@blocksuite/affine-block-list/store';
|
import { ListStoreExtension } from '@blocksuite/affine-block-list/store';
|
||||||
import { NoteStoreExtension } from '@blocksuite/affine-block-note/store';
|
import { NoteStoreExtension } from '@blocksuite/affine-block-note/store';
|
||||||
import { ParagraphStoreExtension } from '@blocksuite/affine-block-paragraph/store';
|
import { ParagraphStoreExtension } from '@blocksuite/affine-block-paragraph/store';
|
||||||
|
import { SurfaceStoreExtension } from '@blocksuite/affine-block-surface/store';
|
||||||
import { SurfaceRefStoreExtension } from '@blocksuite/affine-block-surface-ref/store';
|
import { SurfaceRefStoreExtension } from '@blocksuite/affine-block-surface-ref/store';
|
||||||
import { TableStoreExtension } from '@blocksuite/affine-block-table/store';
|
import { TableStoreExtension } from '@blocksuite/affine-block-table/store';
|
||||||
import { BrushStoreExtension } from '@blocksuite/affine-gfx-brush/store';
|
import { BrushStoreExtension } from '@blocksuite/affine-gfx-brush/store';
|
||||||
@@ -48,6 +49,7 @@ export function getInternalStoreExtensions() {
|
|||||||
ParagraphStoreExtension,
|
ParagraphStoreExtension,
|
||||||
SurfaceRefStoreExtension,
|
SurfaceRefStoreExtension,
|
||||||
TableStoreExtension,
|
TableStoreExtension,
|
||||||
|
SurfaceStoreExtension,
|
||||||
|
|
||||||
FootnoteStoreExtension,
|
FootnoteStoreExtension,
|
||||||
LinkStoreExtension,
|
LinkStoreExtension,
|
||||||
|
|||||||
@@ -13,6 +13,7 @@ import { LatexViewExtension } from '@blocksuite/affine-block-latex/view';
|
|||||||
import { ListViewExtension } from '@blocksuite/affine-block-list/view';
|
import { ListViewExtension } from '@blocksuite/affine-block-list/view';
|
||||||
import { NoteViewExtension } from '@blocksuite/affine-block-note/view';
|
import { NoteViewExtension } from '@blocksuite/affine-block-note/view';
|
||||||
import { ParagraphViewExtension } from '@blocksuite/affine-block-paragraph/view';
|
import { ParagraphViewExtension } from '@blocksuite/affine-block-paragraph/view';
|
||||||
|
import { SurfaceViewExtension } from '@blocksuite/affine-block-surface/view';
|
||||||
import { SurfaceRefViewExtension } from '@blocksuite/affine-block-surface-ref/view';
|
import { SurfaceRefViewExtension } from '@blocksuite/affine-block-surface-ref/view';
|
||||||
import { TableViewExtension } from '@blocksuite/affine-block-table/view';
|
import { TableViewExtension } from '@blocksuite/affine-block-table/view';
|
||||||
import { BrushViewExtension } from '@blocksuite/affine-gfx-brush/view';
|
import { BrushViewExtension } from '@blocksuite/affine-gfx-brush/view';
|
||||||
@@ -62,6 +63,7 @@ export function getInternalViewExtensions() {
|
|||||||
ParagraphViewExtension,
|
ParagraphViewExtension,
|
||||||
SurfaceRefViewExtension,
|
SurfaceRefViewExtension,
|
||||||
TableViewExtension,
|
TableViewExtension,
|
||||||
|
SurfaceViewExtension,
|
||||||
|
|
||||||
// Inline
|
// Inline
|
||||||
FootnoteViewExtension,
|
FootnoteViewExtension,
|
||||||
|
|||||||
@@ -11,6 +11,7 @@
|
|||||||
"license": "MIT",
|
"license": "MIT",
|
||||||
"dependencies": {
|
"dependencies": {
|
||||||
"@blocksuite/affine-components": "workspace:*",
|
"@blocksuite/affine-components": "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:*",
|
||||||
@@ -36,7 +37,9 @@
|
|||||||
},
|
},
|
||||||
"exports": {
|
"exports": {
|
||||||
".": "./src/index.ts",
|
".": "./src/index.ts",
|
||||||
"./effects": "./src/effects.ts"
|
"./effects": "./src/effects.ts",
|
||||||
|
"./store": "./src/store.ts",
|
||||||
|
"./view": "./src/view.ts"
|
||||||
},
|
},
|
||||||
"files": [
|
"files": [
|
||||||
"src",
|
"src",
|
||||||
|
|||||||
17
blocksuite/affine/blocks/surface/src/store.ts
Normal file
17
blocksuite/affine/blocks/surface/src/store.ts
Normal file
@@ -0,0 +1,17 @@
|
|||||||
|
import {
|
||||||
|
type StoreExtensionContext,
|
||||||
|
StoreExtensionProvider,
|
||||||
|
} from '@blocksuite/affine-ext-loader';
|
||||||
|
|
||||||
|
import { EdgelessSurfaceBlockAdapterExtensions } from './adapters';
|
||||||
|
import { SurfaceBlockSchemaExtension } from './surface-model';
|
||||||
|
|
||||||
|
export class SurfaceStoreExtension extends StoreExtensionProvider {
|
||||||
|
override name = 'affine-surface-block';
|
||||||
|
|
||||||
|
override setup(context: StoreExtensionContext) {
|
||||||
|
super.setup(context);
|
||||||
|
context.register(SurfaceBlockSchemaExtension);
|
||||||
|
context.register(EdgelessSurfaceBlockAdapterExtensions);
|
||||||
|
}
|
||||||
|
}
|
||||||
41
blocksuite/affine/blocks/surface/src/view.ts
Normal file
41
blocksuite/affine/blocks/surface/src/view.ts
Normal file
@@ -0,0 +1,41 @@
|
|||||||
|
import {
|
||||||
|
type ViewExtensionContext,
|
||||||
|
ViewExtensionProvider,
|
||||||
|
} from '@blocksuite/affine-ext-loader';
|
||||||
|
import { BlockViewExtension, FlavourExtension } from '@blocksuite/std';
|
||||||
|
import { literal } from 'lit/static-html.js';
|
||||||
|
|
||||||
|
import { effects } from './effects';
|
||||||
|
import {
|
||||||
|
EdgelessCRUDExtension,
|
||||||
|
EdgelessLegacySlotExtension,
|
||||||
|
} from './extensions';
|
||||||
|
import { ExportManagerExtension } from './extensions/export-manager/export-manager';
|
||||||
|
|
||||||
|
export class SurfaceViewExtension extends ViewExtensionProvider {
|
||||||
|
override name = 'affine-surface-block';
|
||||||
|
|
||||||
|
override effect() {
|
||||||
|
super.effect();
|
||||||
|
effects();
|
||||||
|
}
|
||||||
|
|
||||||
|
override setup(context: ViewExtensionContext) {
|
||||||
|
super.setup(context);
|
||||||
|
context.register([
|
||||||
|
FlavourExtension('affine:surface'),
|
||||||
|
EdgelessCRUDExtension,
|
||||||
|
EdgelessLegacySlotExtension,
|
||||||
|
ExportManagerExtension,
|
||||||
|
]);
|
||||||
|
if (this.isEdgeless(context.scope)) {
|
||||||
|
context.register(
|
||||||
|
BlockViewExtension('affine:surface', literal`affine-surface`)
|
||||||
|
);
|
||||||
|
} else {
|
||||||
|
context.register(
|
||||||
|
BlockViewExtension('affine:surface', literal`affine-surface-void`)
|
||||||
|
);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
@@ -8,6 +8,7 @@
|
|||||||
"include": ["./src"],
|
"include": ["./src"],
|
||||||
"references": [
|
"references": [
|
||||||
{ "path": "../../components" },
|
{ "path": "../../components" },
|
||||||
|
{ "path": "../../ext-loader" },
|
||||||
{ "path": "../../model" },
|
{ "path": "../../model" },
|
||||||
{ "path": "../../rich-text" },
|
{ "path": "../../rich-text" },
|
||||||
{ "path": "../../shared" },
|
{ "path": "../../shared" },
|
||||||
|
|||||||
@@ -364,6 +364,7 @@ export const PackageList = [
|
|||||||
name: '@blocksuite/affine-block-surface',
|
name: '@blocksuite/affine-block-surface',
|
||||||
workspaceDependencies: [
|
workspaceDependencies: [
|
||||||
'blocksuite/affine/components',
|
'blocksuite/affine/components',
|
||||||
|
'blocksuite/affine/ext-loader',
|
||||||
'blocksuite/affine/model',
|
'blocksuite/affine/model',
|
||||||
'blocksuite/affine/rich-text',
|
'blocksuite/affine/rich-text',
|
||||||
'blocksuite/affine/shared',
|
'blocksuite/affine/shared',
|
||||||
|
|||||||
@@ -2914,6 +2914,7 @@ __metadata:
|
|||||||
resolution: "@blocksuite/affine-block-surface@workspace:blocksuite/affine/blocks/surface"
|
resolution: "@blocksuite/affine-block-surface@workspace:blocksuite/affine/blocks/surface"
|
||||||
dependencies:
|
dependencies:
|
||||||
"@blocksuite/affine-components": "workspace:*"
|
"@blocksuite/affine-components": "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:*"
|
||||||
|
|||||||
Reference in New Issue
Block a user