-
Notifications
You must be signed in to change notification settings - Fork 161
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Reconcile table and image selection for cache (#2714)
* Improve cache * fix build * improve * add test * Cache and entity 2 * Add test * Reconcile table and image selection for cache * support reconcile entity delimiter * fix build * add test --------- Co-authored-by: Bryan Valverde U <[email protected]>
- Loading branch information
1 parent
b3111df
commit 5b07b94
Showing
25 changed files
with
984 additions
and
82 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
57 changes: 57 additions & 0 deletions
57
packages/roosterjs-content-model-core/lib/corePlugin/cache/MutationType.ts
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,57 @@ | ||
/** | ||
* @internal Type of mutations | ||
*/ | ||
export type MutationType = | ||
/** | ||
* We found some change happened but we cannot handle it, so set mutation type as "unknown" | ||
*/ | ||
| 'unknown' | ||
/** | ||
* Element id is changed | ||
*/ | ||
| 'elementId' | ||
/** | ||
* Only text is changed | ||
*/ | ||
| 'text' | ||
/** | ||
* Child list is changed | ||
*/ | ||
| 'childList'; | ||
|
||
/** | ||
* @internal | ||
*/ | ||
export interface MutationBase<T extends MutationType> { | ||
type: T; | ||
} | ||
|
||
/** | ||
* @internal | ||
*/ | ||
export interface UnknownMutation extends MutationBase<'unknown'> {} | ||
|
||
/** | ||
* @internal | ||
*/ | ||
export interface ElementIdMutation extends MutationBase<'elementId'> { | ||
element: HTMLElement; | ||
} | ||
|
||
/** | ||
* @internal | ||
*/ | ||
export interface TextMutation extends MutationBase<'text'> {} | ||
|
||
/** | ||
* @internal | ||
*/ | ||
export interface ChildListMutation extends MutationBase<'childList'> { | ||
addedNodes: Node[]; | ||
removedNodes: Node[]; | ||
} | ||
|
||
/** | ||
* @internal | ||
*/ | ||
export type Mutation = UnknownMutation | ElementIdMutation | TextMutation | ChildListMutation; |
Oops, something went wrong.