mirror of
https://github.com/toeverything/AFFiNE.git
synced 2026-09-07 09:21:24 +08:00
refactor(editor): add cache extension for link preview service (#12196)
Closes: [BS-2578](https://linear.app/affine-design/issue/BS-2578/优化-footnote-预览的逻辑:支持缓存结果,避免重复-loading) <!-- This is an auto-generated comment: release notes by coderabbit.ai --> ## Summary by CodeRabbit - **New Features** - Introduced a link preview caching mechanism, enabling faster and more efficient reuse of link preview data across the app. - Added a feature flag for enabling or disabling link preview cache, configurable through workspace experimental settings. - Enhanced localization with new entries describing the link preview cache feature. - **Improvements** - Updated link preview service architecture for better extensibility and maintainability. - Improved integration of feature flags throughout chat and rendering components. - **Bug Fixes** - Fixed tooltip formatting for footnote URLs. - **Chores** - Updated dependencies and localization completeness tracking. <!-- end of auto-generated comment: release notes by coderabbit.ai -->
This commit is contained in:
@@ -1,4 +1,5 @@
|
||||
import type { GfxModel } from '@blocksuite/std/gfx';
|
||||
import { z } from 'zod';
|
||||
|
||||
import type {
|
||||
BrushElementModel,
|
||||
@@ -20,12 +21,14 @@ export type EmbedCardStyle =
|
||||
| 'pdf'
|
||||
| 'citation';
|
||||
|
||||
export type LinkPreviewData = {
|
||||
description: string | null;
|
||||
icon: string | null;
|
||||
image: string | null;
|
||||
title: string | null;
|
||||
};
|
||||
export const LinkPreviewDataSchema = z.object({
|
||||
description: z.string().nullable(),
|
||||
icon: z.string().nullable(),
|
||||
image: z.string().nullable(),
|
||||
title: z.string().nullable(),
|
||||
});
|
||||
|
||||
export type LinkPreviewData = z.infer<typeof LinkPreviewDataSchema>;
|
||||
|
||||
export type Connectable = Exclude<
|
||||
GfxModel,
|
||||
|
||||
Reference in New Issue
Block a user