@ file : Js Non Module Ċ @ file : Js Module ("@ code mirror / state ") Ċ Ċ package Ġcode mirror . state Ċ Ċ import Ġcode mirror . text . Text Ċ Ċ /** Ċ Ġ* ĠChanges Ġto Ġthe Ġeditor Ġstate Ġare Ġgrouped Ġinto Ġtransactions . ĠTypically , Ġa Ġuser Ġaction Ġcreates Ġa Ċ Ġ* Ġsingle Ġtransaction , Ġwhich Ġmay Ġcontain Ġany Ġnumber Ġof Ġdocument Ġchanges , Ġmay Ġchange Ġthe Ġselection , Ċ Ġ* Ġor Ġhave Ġother Ġeffects . ĠCreate Ġa Ġtransaction Ġby Ġcalling Ġ[ Editor State . update ]. Ċ Ġ* Ċ Ġ* ĠThis Ġclass Ġprovides Ġsome Ġbindings Ġto Ġ` https :// code mirror . net / 6 / docs / ref /# state . Transaction `. Ċ Ġ*/ Ċ external Ġclass ĠTransaction Ġ{ ĊĊĠ Ġ/** ĠThe Ġstate Ġfrom Ġwhich Ġthe Ġtransaction Ġstarts . Ġ*/ ĊĠ Ġval Ġstart State : ĠEditor State ĊĊĠ Ġ/** ĠThe Ġdocument Ġchanges Ġmade Ġby Ġthis Ġtransaction . Ġ*/ ĊĠ Ġval Ġchanges : ĠChange Set ĊĊĠ Ġ/** ĊĠĠ Ġ* ĠThe Ġselection Ġset Ġby Ġthis Ġtransaction , Ġor Ġ[ undefined ] Ġif Ġit Ġdoesn 't Ġexplicitly Ġset Ġa Ġselection . ĊĠĠ Ġ*/ ĊĠ Ġval Ġselection : ĠEditor Selection ĊĊĠ Ġ/** ĠThe Ġeffects Ġadded Ġto Ġthe Ġtransaction . Ġ*/ ĊĠ Ġval Ġeffects : ĠArray < State Effect < Any >> ĊĊĠ Ġ/** ĠWhether Ġthe Ġselection Ġshould Ġbe Ġsc rolled Ġinto Ġview Ġafter Ġthis Ġtransaction Ġis Ġdis patched . Ġ*/ ĊĠ Ġval Ġscroll Into View : ĠBoolean ĊĊĠ Ġ/** ĊĠĠ Ġ* ĠThe Ġnew Ġdocument Ġproduced Ġby Ġthe Ġtransaction . ĠContr ary Ġto Ġ. state . doc , Ġaccessing Ġthis Ġwon 't ĊĠĠ Ġ* Ġforce Ġthe Ġentire Ġnew Ġstate Ġto Ġbe Ġcomputed Ġright Ġaway , Ġso Ġit Ġis Ġrecommended Ġthat Ġtransaction ĊĠĠ Ġ* Ġfilters Ġuse Ġthis Ġgetter Ġwhen Ġthey Ġneed Ġto Ġlook Ġat Ġthe Ġnew Ġdocument . ĊĠĠ Ġ*/ ĊĠ Ġval Ġnew Doc : ĠText ĊĊĠ Ġ/** ĊĠĠ Ġ* ĠThe Ġnew Ġstate Ġcreated Ġby Ġthe Ġtransaction . ĠComp uted Ġon Ġdemand Ġ( but Ġretained Ġfor Ġsubsequent ĊĠĠ Ġ* Ġaccess ), Ġso Ġit Ġis Ġrecommended Ġnot Ġto Ġaccess Ġit Ġin Ġtransaction Ġfilters Ġwhen Ġpossible . ĊĠĠ Ġ*/ ĊĠ Ġval Ġstate : ĠEditor State ĊĊĠ Ġ/** ĠGet Ġthe Ġvalue Ġof Ġthe Ġgiven Ġannotation Ġtype , Ġif Ġany . Ġ*/ ĊĠ Ġfun Ġ< T > Ġannotation ( type : ĠAnnotation Type < T >): ĠT ĊĊĠ Ġ/** ĠIndicates Ġwhether Ġthe Ġtransaction Ġchanged Ġthe Ġdocument . Ġ*/ ĊĠ Ġval Ġdoc Changed : ĠBoolean ĊĊĠ Ġ/** ĊĠĠ Ġ* ĠIndicates Ġwhether Ġthis Ġtransaction Ġre config ures Ġthe Ġstate Ġ( through Ġa Ġconfiguration Ġcomp artment ĊĠĠ Ġ* Ġor Ġwith Ġa Ġtop - level Ġconfiguration Ġeffect . ĊĠĠ Ġ*/ ĊĠ Ġval Ġre configured : ĠBoolean ĊĊĠ Ġcompanion Ġobject Ġ{ ĊĊĠĠĠ Ġ/** ĊĠĠĠĠ Ġ* ĠAnnotation Ġused Ġto Ġassociate Ġa Ġtransaction Ġwith Ġa Ġuser Ġinterface Ġevent . ĠThe Ġview Ġwill Ġset ĊĠĠĠĠ Ġ* Ġthis Ġto Ġ: ĊĠĠĠĠ Ġ* ĊĠĠĠĠ Ġ* Ġ- Ġ" input " Ġwhen Ġthe Ġuser Ġtypes Ġtext ĊĠĠĠĠ Ġ* Ġ- Ġ" delete " Ġwhen Ġthe Ġuser Ġdeletes Ġthe Ġselection Ġor Ġtext Ġnear Ġthe Ġselection ĊĠĠĠĠ Ġ* Ġ- Ġ" keyboard selection " Ġwhen Ġmoving Ġthe Ġselection Ġvia Ġthe Ġkeyboard ĊĠĠĠĠ Ġ* Ġ- Ġ" pointer selection " Ġwhen Ġmoving Ġthe Ġselection Ġthrough Ġthe Ġpointing Ġdevice ĊĠĠĠĠ Ġ* Ġ- Ġ" paste " Ġwhen Ġpast ing Ġcontent ĊĠĠĠĠ Ġ* Ġ- Ġ" cut " Ġwhen Ġcut ting ĊĠĠĠĠ Ġ* Ġ- Ġ" drop " Ġwhen Ġcontent Ġis Ġinserted Ġvia Ġdrag - and - drop ĊĠĠĠĠ Ġ*/ ĊĠĠĠ Ġval Ġuser Event : ĠAnnotation Type < String > ĊĊĠĠĠ Ġ/** ĠAnnotation Ġindicating Ġwhether Ġa Ġtransaction Ġshould Ġbe Ġadded Ġto Ġthe Ġundo Ġhistory Ġor Ġnot . Ġ*/ ĊĠĠĠ Ġval ĠaddTo History : ĠAnnotation Type < Boolean > ĊĊĠĠĠ Ġ/** ĊĠĠĠĠ Ġ* ĠAnnotation Ġindicating Ġ( when Ġpresent Ġand Ġtrue ) Ġthat Ġa Ġtransaction Ġrepresents Ġa Ġchange Ġmade Ġby ĊĠĠĠĠ Ġ* Ġsome Ġother Ġactor , Ġnot Ġthe Ġuser . ĠThis Ġis Ġused , Ġfor Ġexample , Ġto Ġtag Ġother Ġpeople 's Ġchanges Ġin ĊĠĠĠĠ Ġ* Ġcollabor ative Ġediting . ĊĠĠĠĠ Ġ*/ ĊĠĠĠ Ġval Ġremote : ĠAnnotation Type < Boolean > ĊĠ Ġ} Ċ } Ċ