You can not select more than 25 topics
			Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
		
		
		
		
		
			
		
			
				
					59 lines
				
				1.5 KiB
			
		
		
			
		
	
	
					59 lines
				
				1.5 KiB
			| 
											3 years ago
										 | This module defines a way of modifying documents that allows changes | ||
|  | to be recorded, replayed, and reordered. You can read more about | ||
|  | transformations in [the guide](/docs/guide/#transform). | ||
|  | 
 | ||
|  | ### Steps
 | ||
|  | 
 | ||
|  | Transforming happens in `Step`s, which are atomic, well-defined | ||
|  | modifications to a document. [Applying](#transform.Step.apply) a step | ||
|  | produces a new document. | ||
|  | 
 | ||
|  | Each step provides a [change map](#transform.StepMap) that maps | ||
|  | positions in the old document to position in the transformed document. | ||
|  | Steps can be [inverted](#transform.Step.invert) to create a step that | ||
|  | undoes their effect, and chained together in a convenience object | ||
|  | called a [`Transform`](#transform.Transform). | ||
|  | 
 | ||
|  | @Step | ||
|  | @StepResult | ||
|  | @ReplaceStep | ||
|  | @ReplaceAroundStep | ||
|  | @AddMarkStep | ||
|  | @RemoveMarkStep | ||
|  | @AddNodeMarkStep | ||
|  | @RemoveNodeMarkStep | ||
|  | @AttrStep | ||
|  | 
 | ||
|  | ### Position Mapping
 | ||
|  | 
 | ||
|  | Mapping positions from one document to another by running through the | ||
|  | [step maps](#transform.StepMap) produced by steps is an important | ||
|  | operation in ProseMirror. It is used, for example, for updating the | ||
|  | selection when the document changes. | ||
|  | 
 | ||
|  | @Mappable | ||
|  | @MapResult | ||
|  | @StepMap | ||
|  | @Mapping | ||
|  | 
 | ||
|  | ### Document transforms
 | ||
|  | 
 | ||
|  | Because you often need to collect a number of steps together to effect | ||
|  | a composite change, ProseMirror provides an abstraction to make this | ||
|  | easy. [State transactions](#state.Transaction) are a subclass of | ||
|  | transforms. | ||
|  | 
 | ||
|  | @Transform | ||
|  | 
 | ||
|  | The following helper functions can be useful when creating | ||
|  | transformations or determining whether they are even possible. | ||
|  | 
 | ||
|  | @replaceStep | ||
|  | @liftTarget | ||
|  | @findWrapping | ||
|  | @canSplit | ||
|  | @canJoin | ||
|  | @joinPoint | ||
|  | @insertPoint | ||
|  | @dropPoint |