mediawiki-extensions-Visual.../modules/ve
Ed Sanders ff7b8a2591 Transactions to store metadata merge info when present
ve.dm.Transaction
* Replace operations are now built directly from the
  linear model and automatically determine what metadata
  replace information they need to include:
** retainMetadata
** replaceMetadata
** insertMetadata

ve.dm.Document
* Metadata array created empty and padded out after data parsing
  as we are no longer using Document.spliceData to build it (a new
  test checks for correct metadata length)
* spliceData replaced with getMetadataReplace, which instead returns
  transactional steps of spliceData (retain, replace, insert)

ve.dm.MetaLinearData
* Add function for merging metadata items together. Only used
  once in the code (Document.getMetadataReplace) but useful
  for generating test data.

ve.dm.MetaList
* Replace operations with metadata need to calculate new offset
  and indices directly, but can't be applied immediately lest they
  put a metaItem out of place and affect findItem.

ve.dm.MetaItem
* Add methods to support queued moves as required by MetaList

Test files
* Updated to match new pushReplace API
* Remove any instances of Document.spliceData
* Extra check on sparse metadata array length
* Rewrite spliceData tests as getMetadataReplace tests
* Count expected cases in Transaction(Processor) tests

Bug: 46954
Change-Id: I4edad1c2dd37c723bff2792bab7d694ef17a86dc
2013-04-16 22:26:56 +01:00
..
actions No more confusing boolean argument for closing windows 2013-04-10 12:31:49 -07:00
ce Hybridise MWTemplateNode 2013-04-14 02:34:18 +00:00
dm Transactions to store metadata merge info when present 2013-04-16 22:26:56 +01:00
init Add ve.ce.View as a common base class for ce.Node and ce.Annotation 2013-04-09 12:05:05 -07:00
styles Toolbar style fixes 2013-03-15 12:48:49 -07:00
test Transactions to store metadata merge info when present 2013-04-16 22:26:56 +01:00
ui Filter our zero-coverage updateState nodes 2013-04-14 02:50:01 +00:00
ve.Action.js Bump copyright notice year range to -2013 over -2012 2013-02-19 15:37:34 -08:00
ve.ActionFactory.js Bump copyright notice year range to -2013 over -2012 2013-02-19 15:37:34 -08:00
ve.BranchNode.js Bump copyright notice year range to -2013 over -2012 2013-02-19 15:37:34 -08:00
ve.CommandRegistry.js Bump copyright notice year range to -2013 over -2012 2013-02-19 15:37:34 -08:00
ve.debug.js Bump copyright notice year range to -2013 over -2012 2013-02-19 15:37:34 -08:00
ve.Document.js Emit a transact event on the ve.dm.Document when a transaction occurs 2013-03-14 23:35:50 -07:00
ve.EventEmitter.js Fix documentation to place @emits in the correct place 2013-03-25 21:06:05 +00:00
ve.Factory.js Remove more periods 2013-03-20 22:55:50 +00:00
ve.js Fix for custom hash with keys in different order 2013-04-09 00:20:44 +01:00
ve.LeafNode.js Bump copyright notice year range to -2013 over -2012 2013-02-19 15:37:34 -08:00
ve.NamedClassFactory.js Rename ve.NodeFactory to ve.NamedClassFactory 2013-04-09 12:05:05 -07:00
ve.Node.js Move common Node/Annotation/MetaItem code into ve.dm.Model 2013-04-09 12:05:05 -07:00
ve.Range.js Clickable inline images 2013-04-08 17:58:46 -07:00
ve.Registry.js Document and clean up events in all the things 2013-03-20 09:58:27 -07:00
ve.Surface.js Store data in LinearData class with an index-value store for objects 2013-03-30 10:06:34 +00:00
ve.Trigger.js Bump copyright notice year range to -2013 over -2012 2013-02-19 15:37:34 -08:00
ve.TriggerRegistry.js Bump copyright notice year range to -2013 over -2012 2013-02-19 15:37:34 -08:00