@ckeditor/ckeditor5-operations-compressor 41.3.1 → 41.4.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (39) hide show
  1. package/dist/index-content.css +4 -0
  2. package/dist/index-editor.css +4 -0
  3. package/dist/index.css +4 -0
  4. package/dist/index.js +23 -0
  5. package/dist/types/actioncompressor/actioncompressor.d.ts +64 -0
  6. package/dist/types/actioncompressor/deletingactioncompressor.d.ts +32 -0
  7. package/dist/types/actioncompressor/forwarddeletingactioncompressor.d.ts +32 -0
  8. package/dist/types/actioncompressor/typingactioncompressor.d.ts +32 -0
  9. package/dist/types/actioncompressor/userselectionactioncompressor.d.ts +20 -0
  10. package/dist/types/compressor.d.ts +49 -0
  11. package/dist/types/index.d.ts +9 -0
  12. package/dist/types/operationcompressor/annotationmarkeroperationcompressor.d.ts +26 -0
  13. package/dist/types/operationcompressor/attributeoperationcompressor.d.ts +21 -0
  14. package/dist/types/operationcompressor/insertoperationcompressor.d.ts +21 -0
  15. package/dist/types/operationcompressor/markeroperationcompressor.d.ts +17 -0
  16. package/dist/types/operationcompressor/nooperationcompressor.d.ts +24 -0
  17. package/dist/types/operationcompressor/operationcompressor.d.ts +32 -0
  18. package/dist/types/protobufdescriptions.d.ts +8 -0
  19. package/dist/types/protobuffactory.d.ts +9 -0
  20. package/dist/types/utils.d.ts +34 -0
  21. package/package.json +5 -2
  22. package/src/actioncompressor/actioncompressor.js +1 -1
  23. package/src/actioncompressor/deletingactioncompressor.js +1 -1
  24. package/src/actioncompressor/forwarddeletingactioncompressor.js +1 -1
  25. package/src/actioncompressor/typingactioncompressor.js +1 -1
  26. package/src/actioncompressor/userselectionactioncompressor.js +1 -1
  27. package/src/compressor.js +1 -1
  28. package/src/index.d.ts +5 -0
  29. package/src/index.js +23 -0
  30. package/src/lib/compiledmessages.js +1 -1
  31. package/src/operationcompressor/annotationmarkeroperationcompressor.js +1 -1
  32. package/src/operationcompressor/attributeoperationcompressor.js +1 -1
  33. package/src/operationcompressor/insertoperationcompressor.js +1 -1
  34. package/src/operationcompressor/markeroperationcompressor.js +1 -1
  35. package/src/operationcompressor/nooperationcompressor.js +1 -1
  36. package/src/operationcompressor/operationcompressor.js +1 -1
  37. package/src/protobufdescriptions.js +1 -1
  38. package/src/protobuffactory.js +1 -1
  39. package/src/utils.js +1 -1
@@ -0,0 +1,4 @@
1
+ /**
2
+ * @license Copyright (c) 2003-2024, CKSource Holding sp. z o.o. All rights reserved.
3
+ * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license
4
+ */
@@ -0,0 +1,4 @@
1
+ /**
2
+ * @license Copyright (c) 2003-2024, CKSource Holding sp. z o.o. All rights reserved.
3
+ * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license
4
+ */
package/dist/index.css ADDED
@@ -0,0 +1,4 @@
1
+ /**
2
+ * @license Copyright (c) 2003-2024, CKSource Holding sp. z o.o. All rights reserved.
3
+ * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license
4
+ */
package/dist/index.js ADDED
@@ -0,0 +1,23 @@
1
+ /*
2
+ * Copyright (c) 2003-2024, CKSource Holding sp. z o.o. All rights reserved.
3
+ *
4
+ *
5
+ *
6
+ *
7
+ * +---------------------------------------------------------------------------------+
8
+ * | |
9
+ * | Hello stranger! |
10
+ * | |
11
+ * | |
12
+ * | What you're currently looking at is the source code of a legally protected, |
13
+ * | proprietary software. Any attempts to deobfuscate / disassemble this code |
14
+ * | are forbidden and will result in legal consequences. |
15
+ * | |
16
+ * | |
17
+ * +---------------------------------------------------------------------------------+
18
+ *
19
+ *
20
+ *
21
+ *
22
+ */
23
+ import{CKEditorError as _0x5dc2d5}from'@ckeditor/ckeditor5-utils/dist/index.js';import*as _0x18347d from'protobufjs/minimal.js';import{cloneDeep as _0xee847f,isEqual as _0x21ea38,isObject as _0xcaa2a9}from'lodash-es';const j=_0x18347d['Reader'],y=_0x18347d['Writer'],k=_0x18347d['util'],v=_0x18347d['roots']['default']||(_0x18347d['roots']['default']={}),M=v['AttributeOperation']=((()=>{function _0x82f8f3(_0x2d7ceb){if(_0x2d7ceb){for(let _0x3706e9=Object['keys'](_0x2d7ceb),_0x5145df=0x0;_0x5145df<_0x3706e9['length'];++_0x5145df)null!=_0x2d7ceb[_0x3706e9[_0x5145df]]&&(this[_0x3706e9[_0x5145df]]=_0x2d7ceb[_0x3706e9[_0x5145df]]);}}return _0x82f8f3['prototype']['range']=null,_0x82f8f3['prototype']['key']='',_0x82f8f3['prototype']['oldValueBoolean']=!0x1,_0x82f8f3['prototype']['oldValueJson']='',_0x82f8f3['prototype']['newValueBoolean']=!0x1,_0x82f8f3['prototype']['newValueJson']='',_0x82f8f3['prototype']['wasUndone']=!0x1,_0x82f8f3['create']=function(_0x49975e){return new _0x82f8f3(_0x49975e);},_0x82f8f3['encode']=function(_0x48f615,_0x45997c){return _0x45997c||(_0x45997c=y['create']()),null!=_0x48f615['range']&&Object['hasOwnProperty']['call'](_0x48f615,'range')&&v['Range']['encode'](_0x48f615['range'],_0x45997c['uint32'](0xa)['fork']())['ldelim'](),null!=_0x48f615['key']&&Object['hasOwnProperty']['call'](_0x48f615,'key')&&_0x45997c['uint32'](0x12)['string'](_0x48f615['key']),null!=_0x48f615['oldValueBoolean']&&Object['hasOwnProperty']['call'](_0x48f615,'oldValueBoolean')&&_0x45997c['uint32'](0x18)['bool'](_0x48f615['oldValueBoolean']),null!=_0x48f615['oldValueJson']&&Object['hasOwnProperty']['call'](_0x48f615,'oldValueJson')&&_0x45997c['uint32'](0x22)['string'](_0x48f615['oldValueJson']),null!=_0x48f615['newValueBoolean']&&Object['hasOwnProperty']['call'](_0x48f615,'newValueBoolean')&&_0x45997c['uint32'](0x28)['bool'](_0x48f615['newValueBoolean']),null!=_0x48f615['newValueJson']&&Object['hasOwnProperty']['call'](_0x48f615,'newValueJson')&&_0x45997c['uint32'](0x32)['string'](_0x48f615['newValueJson']),null!=_0x48f615['wasUndone']&&Object['hasOwnProperty']['call'](_0x48f615,'wasUndone')&&_0x45997c['uint32'](0x38)['bool'](_0x48f615['wasUndone']),_0x45997c;},_0x82f8f3['encodeDelimited']=function(_0x5e46e3,_0x120048){return this['encode'](_0x5e46e3,_0x120048)['ldelim']();},_0x82f8f3['decode']=function(_0x5ad92f,_0x356e8d){_0x5ad92f instanceof j||(_0x5ad92f=j['create'](_0x5ad92f));let _0x1a1195=void 0x0===_0x356e8d?_0x5ad92f['len']:_0x5ad92f['pos']+_0x356e8d,_0x1d40ce=new v['AttributeOperation']();for(;_0x5ad92f['pos']<_0x1a1195;){let _0x8a29b6=_0x5ad92f['uint32']();switch(_0x8a29b6>>>0x3){case 0x1:_0x1d40ce['range']=v['Range']['decode'](_0x5ad92f,_0x5ad92f['uint32']());break;case 0x2:_0x1d40ce['key']=_0x5ad92f['string']();break;case 0x3:_0x1d40ce['oldValueBoolean']=_0x5ad92f['bool']();break;case 0x4:_0x1d40ce['oldValueJson']=_0x5ad92f['string']();break;case 0x5:_0x1d40ce['newValueBoolean']=_0x5ad92f['bool']();break;case 0x6:_0x1d40ce['newValueJson']=_0x5ad92f['string']();break;case 0x7:_0x1d40ce['wasUndone']=_0x5ad92f['bool']();break;default:_0x5ad92f['skipType'](0x7&_0x8a29b6);}}return _0x1d40ce;},_0x82f8f3['decodeDelimited']=function(_0x272a87){return _0x272a87 instanceof j||(_0x272a87=new j(_0x272a87)),this['decode'](_0x272a87,_0x272a87['uint32']());},_0x82f8f3['verify']=function(_0x3a5455){if('object'!=typeof _0x3a5455||null===_0x3a5455)return'object\x20expected';if(null!=_0x3a5455['range']&&_0x3a5455['hasOwnProperty']('range')){let _0x185805=v['Range']['verify'](_0x3a5455['range']);if(_0x185805)return'range.'+_0x185805;}return null!=_0x3a5455['key']&&_0x3a5455['hasOwnProperty']('key')&&!k['isString'](_0x3a5455['key'])?'key:\x20string\x20expected':null!=_0x3a5455['oldValueBoolean']&&_0x3a5455['hasOwnProperty']('oldValueBoolean')&&'boolean'!=typeof _0x3a5455['oldValueBoolean']?'oldValueBoolean:\x20boolean\x20expected':null!=_0x3a5455['oldValueJson']&&_0x3a5455['hasOwnProperty']('oldValueJson')&&!k['isString'](_0x3a5455['oldValueJson'])?'oldValueJson:\x20string\x20expected':null!=_0x3a5455['newValueBoolean']&&_0x3a5455['hasOwnProperty']('newValueBoolean')&&'boolean'!=typeof _0x3a5455['newValueBoolean']?'newValueBoolean:\x20boolean\x20expected':null!=_0x3a5455['newValueJson']&&_0x3a5455['hasOwnProperty']('newValueJson')&&!k['isString'](_0x3a5455['newValueJson'])?'newValueJson:\x20string\x20expected':null!=_0x3a5455['wasUndone']&&_0x3a5455['hasOwnProperty']('wasUndone')&&'boolean'!=typeof _0x3a5455['wasUndone']?'wasUndone:\x20boolean\x20expected':null;},_0x82f8f3['fromObject']=function(_0x46fc01){if(_0x46fc01 instanceof v['AttributeOperation'])return _0x46fc01;let _0x5cc0b6=new v['AttributeOperation']();if(null!=_0x46fc01['range']){if('object'!=typeof _0x46fc01['range'])throw TypeError('.AttributeOperation.range:\x20object\x20expected');_0x5cc0b6['range']=v['Range']['fromObject'](_0x46fc01['range']);}return null!=_0x46fc01['key']&&(_0x5cc0b6['key']=String(_0x46fc01['key'])),null!=_0x46fc01['oldValueBoolean']&&(_0x5cc0b6['oldValueBoolean']=Boolean(_0x46fc01['oldValueBoolean'])),null!=_0x46fc01['oldValueJson']&&(_0x5cc0b6['oldValueJson']=String(_0x46fc01['oldValueJson'])),null!=_0x46fc01['newValueBoolean']&&(_0x5cc0b6['newValueBoolean']=Boolean(_0x46fc01['newValueBoolean'])),null!=_0x46fc01['newValueJson']&&(_0x5cc0b6['newValueJson']=String(_0x46fc01['newValueJson'])),null!=_0x46fc01['wasUndone']&&(_0x5cc0b6['wasUndone']=Boolean(_0x46fc01['wasUndone'])),_0x5cc0b6;},_0x82f8f3['toObject']=function(_0x1cdadd,_0x3c9111){_0x3c9111||(_0x3c9111={});let _0x5b248c={};return _0x3c9111['defaults']&&(_0x5b248c['range']=null,_0x5b248c['key']='',_0x5b248c['oldValueBoolean']=!0x1,_0x5b248c['oldValueJson']='',_0x5b248c['newValueBoolean']=!0x1,_0x5b248c['newValueJson']='',_0x5b248c['wasUndone']=!0x1),null!=_0x1cdadd['range']&&_0x1cdadd['hasOwnProperty']('range')&&(_0x5b248c['range']=v['Range']['toObject'](_0x1cdadd['range'],_0x3c9111)),null!=_0x1cdadd['key']&&_0x1cdadd['hasOwnProperty']('key')&&(_0x5b248c['key']=_0x1cdadd['key']),null!=_0x1cdadd['oldValueBoolean']&&_0x1cdadd['hasOwnProperty']('oldValueBoolean')&&(_0x5b248c['oldValueBoolean']=_0x1cdadd['oldValueBoolean']),null!=_0x1cdadd['oldValueJson']&&_0x1cdadd['hasOwnProperty']('oldValueJson')&&(_0x5b248c['oldValueJson']=_0x1cdadd['oldValueJson']),null!=_0x1cdadd['newValueBoolean']&&_0x1cdadd['hasOwnProperty']('newValueBoolean')&&(_0x5b248c['newValueBoolean']=_0x1cdadd['newValueBoolean']),null!=_0x1cdadd['newValueJson']&&_0x1cdadd['hasOwnProperty']('newValueJson')&&(_0x5b248c['newValueJson']=_0x1cdadd['newValueJson']),null!=_0x1cdadd['wasUndone']&&_0x1cdadd['hasOwnProperty']('wasUndone')&&(_0x5b248c['wasUndone']=_0x1cdadd['wasUndone']),_0x5b248c;},_0x82f8f3['prototype']['toJSON']=function(){return this['constructor']['toObject'](this,_0x18347d['util']['toJSONOptions']);},_0x82f8f3['getTypeUrl']=function(_0x579fe){return void 0x0===_0x579fe&&(_0x579fe='type.googleapis.com'),_0x579fe+'/AttributeOperation';},_0x82f8f3;})()),B=v['InsertOperation']=((()=>{function _0x553ae7(_0x20808c){if(this['nodes']=[],_0x20808c){for(let _0x50b5d0=Object['keys'](_0x20808c),_0x10df9a=0x0;_0x10df9a<_0x50b5d0['length'];++_0x10df9a)null!=_0x20808c[_0x50b5d0[_0x10df9a]]&&(this[_0x50b5d0[_0x10df9a]]=_0x20808c[_0x50b5d0[_0x10df9a]]);}}return _0x553ae7['prototype']['position']=null,_0x553ae7['prototype']['nodes']=k['emptyArray'],_0x553ae7['prototype']['shouldReceiveAttributes']=!0x1,_0x553ae7['prototype']['wasUndone']=!0x1,_0x553ae7['create']=function(_0x48fec8){return new _0x553ae7(_0x48fec8);},_0x553ae7['encode']=function(_0x3eb6f2,_0x3bbe7c){if(_0x3bbe7c||(_0x3bbe7c=y['create']()),null!=_0x3eb6f2['position']&&Object['hasOwnProperty']['call'](_0x3eb6f2,'position')&&v['Position']['encode'](_0x3eb6f2['position'],_0x3bbe7c['uint32'](0xa)['fork']())['ldelim'](),null!=_0x3eb6f2['nodes']&&_0x3eb6f2['nodes']['length']){for(let _0x40c040=0x0;_0x40c040<_0x3eb6f2['nodes']['length'];++_0x40c040)v['Element']['encode'](_0x3eb6f2['nodes'][_0x40c040],_0x3bbe7c['uint32'](0x12)['fork']())['ldelim']();}return null!=_0x3eb6f2['shouldReceiveAttributes']&&Object['hasOwnProperty']['call'](_0x3eb6f2,'shouldReceiveAttributes')&&_0x3bbe7c['uint32'](0x18)['bool'](_0x3eb6f2['shouldReceiveAttributes']),null!=_0x3eb6f2['wasUndone']&&Object['hasOwnProperty']['call'](_0x3eb6f2,'wasUndone')&&_0x3bbe7c['uint32'](0x20)['bool'](_0x3eb6f2['wasUndone']),_0x3bbe7c;},_0x553ae7['encodeDelimited']=function(_0x4e16f4,_0x4f1f0f){return this['encode'](_0x4e16f4,_0x4f1f0f)['ldelim']();},_0x553ae7['decode']=function(_0x392e17,_0x2c5100){_0x392e17 instanceof j||(_0x392e17=j['create'](_0x392e17));let _0x482dc8=void 0x0===_0x2c5100?_0x392e17['len']:_0x392e17['pos']+_0x2c5100,_0x212695=new v['InsertOperation']();for(;_0x392e17['pos']<_0x482dc8;){let _0x110dd5=_0x392e17['uint32']();switch(_0x110dd5>>>0x3){case 0x1:_0x212695['position']=v['Position']['decode'](_0x392e17,_0x392e17['uint32']());break;case 0x2:_0x212695['nodes']&&_0x212695['nodes']['length']||(_0x212695['nodes']=[]),_0x212695['nodes']['push'](v['Element']['decode'](_0x392e17,_0x392e17['uint32']()));break;case 0x3:_0x212695['shouldReceiveAttributes']=_0x392e17['bool']();break;case 0x4:_0x212695['wasUndone']=_0x392e17['bool']();break;default:_0x392e17['skipType'](0x7&_0x110dd5);}}return _0x212695;},_0x553ae7['decodeDelimited']=function(_0x1a34f0){return _0x1a34f0 instanceof j||(_0x1a34f0=new j(_0x1a34f0)),this['decode'](_0x1a34f0,_0x1a34f0['uint32']());},_0x553ae7['verify']=function(_0x160195){if('object'!=typeof _0x160195||null===_0x160195)return'object\x20expected';if(null!=_0x160195['position']&&_0x160195['hasOwnProperty']('position')){let _0x527bc0=v['Position']['verify'](_0x160195['position']);if(_0x527bc0)return'position.'+_0x527bc0;}if(null!=_0x160195['nodes']&&_0x160195['hasOwnProperty']('nodes')){if(!Array['isArray'](_0x160195['nodes']))return'nodes:\x20array\x20expected';for(let _0x1fbaf1=0x0;_0x1fbaf1<_0x160195['nodes']['length'];++_0x1fbaf1){let _0x3a7c9f=v['Element']['verify'](_0x160195['nodes'][_0x1fbaf1]);if(_0x3a7c9f)return'nodes.'+_0x3a7c9f;}}return null!=_0x160195['shouldReceiveAttributes']&&_0x160195['hasOwnProperty']('shouldReceiveAttributes')&&'boolean'!=typeof _0x160195['shouldReceiveAttributes']?'shouldReceiveAttributes:\x20boolean\x20expected':null!=_0x160195['wasUndone']&&_0x160195['hasOwnProperty']('wasUndone')&&'boolean'!=typeof _0x160195['wasUndone']?'wasUndone:\x20boolean\x20expected':null;},_0x553ae7['fromObject']=function(_0x4dcd0a){if(_0x4dcd0a instanceof v['InsertOperation'])return _0x4dcd0a;let _0x28d7b2=new v['InsertOperation']();if(null!=_0x4dcd0a['position']){if('object'!=typeof _0x4dcd0a['position'])throw TypeError('.InsertOperation.position:\x20object\x20expected');_0x28d7b2['position']=v['Position']['fromObject'](_0x4dcd0a['position']);}if(_0x4dcd0a['nodes']){if(!Array['isArray'](_0x4dcd0a['nodes']))throw TypeError('.InsertOperation.nodes:\x20array\x20expected');_0x28d7b2['nodes']=[];for(let _0x3e46b2=0x0;_0x3e46b2<_0x4dcd0a['nodes']['length'];++_0x3e46b2){if('object'!=typeof _0x4dcd0a['nodes'][_0x3e46b2])throw TypeError('.InsertOperation.nodes:\x20object\x20expected');_0x28d7b2['nodes'][_0x3e46b2]=v['Element']['fromObject'](_0x4dcd0a['nodes'][_0x3e46b2]);}}return null!=_0x4dcd0a['shouldReceiveAttributes']&&(_0x28d7b2['shouldReceiveAttributes']=Boolean(_0x4dcd0a['shouldReceiveAttributes'])),null!=_0x4dcd0a['wasUndone']&&(_0x28d7b2['wasUndone']=Boolean(_0x4dcd0a['wasUndone'])),_0x28d7b2;},_0x553ae7['toObject']=function(_0x42db74,_0x48c418){_0x48c418||(_0x48c418={});let _0x22879e={};if((_0x48c418['arrays']||_0x48c418['defaults'])&&(_0x22879e['nodes']=[]),_0x48c418['defaults']&&(_0x22879e['position']=null,_0x22879e['shouldReceiveAttributes']=!0x1,_0x22879e['wasUndone']=!0x1),null!=_0x42db74['position']&&_0x42db74['hasOwnProperty']('position')&&(_0x22879e['position']=v['Position']['toObject'](_0x42db74['position'],_0x48c418)),_0x42db74['nodes']&&_0x42db74['nodes']['length']){_0x22879e['nodes']=[];for(let _0x5b88dd=0x0;_0x5b88dd<_0x42db74['nodes']['length'];++_0x5b88dd)_0x22879e['nodes'][_0x5b88dd]=v['Element']['toObject'](_0x42db74['nodes'][_0x5b88dd],_0x48c418);}return null!=_0x42db74['shouldReceiveAttributes']&&_0x42db74['hasOwnProperty']('shouldReceiveAttributes')&&(_0x22879e['shouldReceiveAttributes']=_0x42db74['shouldReceiveAttributes']),null!=_0x42db74['wasUndone']&&_0x42db74['hasOwnProperty']('wasUndone')&&(_0x22879e['wasUndone']=_0x42db74['wasUndone']),_0x22879e;},_0x553ae7['prototype']['toJSON']=function(){return this['constructor']['toObject'](this,_0x18347d['util']['toJSONOptions']);},_0x553ae7['getTypeUrl']=function(_0x137c28){return void 0x0===_0x137c28&&(_0x137c28='type.googleapis.com'),_0x137c28+'/InsertOperation';},_0x553ae7;})()),V=v['MarkerOperation']=((()=>{function _0x556691(_0x1e892f){if(_0x1e892f){for(let _0xe98875=Object['keys'](_0x1e892f),_0x20b340=0x0;_0x20b340<_0xe98875['length'];++_0x20b340)null!=_0x1e892f[_0xe98875[_0x20b340]]&&(this[_0xe98875[_0x20b340]]=_0x1e892f[_0xe98875[_0x20b340]]);}}return _0x556691['prototype']['name']='',_0x556691['prototype']['oldRange']=null,_0x556691['prototype']['newRange']=null,_0x556691['prototype']['affectsData']=!0x1,_0x556691['prototype']['wasUndone']=!0x1,_0x556691['create']=function(_0x1e3163){return new _0x556691(_0x1e3163);},_0x556691['encode']=function(_0x16ef33,_0x32740d){return _0x32740d||(_0x32740d=y['create']()),null!=_0x16ef33['name']&&Object['hasOwnProperty']['call'](_0x16ef33,'name')&&_0x32740d['uint32'](0xa)['string'](_0x16ef33['name']),null!=_0x16ef33['oldRange']&&Object['hasOwnProperty']['call'](_0x16ef33,'oldRange')&&v['Range']['encode'](_0x16ef33['oldRange'],_0x32740d['uint32'](0x12)['fork']())['ldelim'](),null!=_0x16ef33['newRange']&&Object['hasOwnProperty']['call'](_0x16ef33,'newRange')&&v['Range']['encode'](_0x16ef33['newRange'],_0x32740d['uint32'](0x1a)['fork']())['ldelim'](),null!=_0x16ef33['affectsData']&&Object['hasOwnProperty']['call'](_0x16ef33,'affectsData')&&_0x32740d['uint32'](0x20)['bool'](_0x16ef33['affectsData']),null!=_0x16ef33['wasUndone']&&Object['hasOwnProperty']['call'](_0x16ef33,'wasUndone')&&_0x32740d['uint32'](0x28)['bool'](_0x16ef33['wasUndone']),_0x32740d;},_0x556691['encodeDelimited']=function(_0x4611c3,_0x386595){return this['encode'](_0x4611c3,_0x386595)['ldelim']();},_0x556691['decode']=function(_0x1c733e,_0x1312b4){_0x1c733e instanceof j||(_0x1c733e=j['create'](_0x1c733e));let _0x4f33c5=void 0x0===_0x1312b4?_0x1c733e['len']:_0x1c733e['pos']+_0x1312b4,_0x4790bb=new v['MarkerOperation']();for(;_0x1c733e['pos']<_0x4f33c5;){let _0x29e7e5=_0x1c733e['uint32']();switch(_0x29e7e5>>>0x3){case 0x1:_0x4790bb['name']=_0x1c733e['string']();break;case 0x2:_0x4790bb['oldRange']=v['Range']['decode'](_0x1c733e,_0x1c733e['uint32']());break;case 0x3:_0x4790bb['newRange']=v['Range']['decode'](_0x1c733e,_0x1c733e['uint32']());break;case 0x4:_0x4790bb['affectsData']=_0x1c733e['bool']();break;case 0x5:_0x4790bb['wasUndone']=_0x1c733e['bool']();break;default:_0x1c733e['skipType'](0x7&_0x29e7e5);}}return _0x4790bb;},_0x556691['decodeDelimited']=function(_0x4b7f4b){return _0x4b7f4b instanceof j||(_0x4b7f4b=new j(_0x4b7f4b)),this['decode'](_0x4b7f4b,_0x4b7f4b['uint32']());},_0x556691['verify']=function(_0x16ffbb){if('object'!=typeof _0x16ffbb||null===_0x16ffbb)return'object\x20expected';if(null!=_0x16ffbb['name']&&_0x16ffbb['hasOwnProperty']('name')&&!k['isString'](_0x16ffbb['name']))return'name:\x20string\x20expected';if(null!=_0x16ffbb['oldRange']&&_0x16ffbb['hasOwnProperty']('oldRange')){let _0x319e41=v['Range']['verify'](_0x16ffbb['oldRange']);if(_0x319e41)return'oldRange.'+_0x319e41;}if(null!=_0x16ffbb['newRange']&&_0x16ffbb['hasOwnProperty']('newRange')){let _0x383380=v['Range']['verify'](_0x16ffbb['newRange']);if(_0x383380)return'newRange.'+_0x383380;}return null!=_0x16ffbb['affectsData']&&_0x16ffbb['hasOwnProperty']('affectsData')&&'boolean'!=typeof _0x16ffbb['affectsData']?'affectsData:\x20boolean\x20expected':null!=_0x16ffbb['wasUndone']&&_0x16ffbb['hasOwnProperty']('wasUndone')&&'boolean'!=typeof _0x16ffbb['wasUndone']?'wasUndone:\x20boolean\x20expected':null;},_0x556691['fromObject']=function(_0x5dccbe){if(_0x5dccbe instanceof v['MarkerOperation'])return _0x5dccbe;let _0x5472ef=new v['MarkerOperation']();if(null!=_0x5dccbe['name']&&(_0x5472ef['name']=String(_0x5dccbe['name'])),null!=_0x5dccbe['oldRange']){if('object'!=typeof _0x5dccbe['oldRange'])throw TypeError('.MarkerOperation.oldRange:\x20object\x20expected');_0x5472ef['oldRange']=v['Range']['fromObject'](_0x5dccbe['oldRange']);}if(null!=_0x5dccbe['newRange']){if('object'!=typeof _0x5dccbe['newRange'])throw TypeError('.MarkerOperation.newRange:\x20object\x20expected');_0x5472ef['newRange']=v['Range']['fromObject'](_0x5dccbe['newRange']);}return null!=_0x5dccbe['affectsData']&&(_0x5472ef['affectsData']=Boolean(_0x5dccbe['affectsData'])),null!=_0x5dccbe['wasUndone']&&(_0x5472ef['wasUndone']=Boolean(_0x5dccbe['wasUndone'])),_0x5472ef;},_0x556691['toObject']=function(_0x172daa,_0x5e2e7a){_0x5e2e7a||(_0x5e2e7a={});let _0x42481b={};return _0x5e2e7a['defaults']&&(_0x42481b['name']='',_0x42481b['oldRange']=null,_0x42481b['newRange']=null,_0x42481b['affectsData']=!0x1,_0x42481b['wasUndone']=!0x1),null!=_0x172daa['name']&&_0x172daa['hasOwnProperty']('name')&&(_0x42481b['name']=_0x172daa['name']),null!=_0x172daa['oldRange']&&_0x172daa['hasOwnProperty']('oldRange')&&(_0x42481b['oldRange']=v['Range']['toObject'](_0x172daa['oldRange'],_0x5e2e7a)),null!=_0x172daa['newRange']&&_0x172daa['hasOwnProperty']('newRange')&&(_0x42481b['newRange']=v['Range']['toObject'](_0x172daa['newRange'],_0x5e2e7a)),null!=_0x172daa['affectsData']&&_0x172daa['hasOwnProperty']('affectsData')&&(_0x42481b['affectsData']=_0x172daa['affectsData']),null!=_0x172daa['wasUndone']&&_0x172daa['hasOwnProperty']('wasUndone')&&(_0x42481b['wasUndone']=_0x172daa['wasUndone']),_0x42481b;},_0x556691['prototype']['toJSON']=function(){return this['constructor']['toObject'](this,_0x18347d['util']['toJSONOptions']);},_0x556691['getTypeUrl']=function(_0x5347ee){return void 0x0===_0x5347ee&&(_0x5347ee='type.googleapis.com'),_0x5347ee+'/MarkerOperation';},_0x556691;})()),S=v['MergeOperation']=((()=>{function _0x490516(_0x4832f0){if(_0x4832f0){for(let _0x344e27=Object['keys'](_0x4832f0),_0x1e9fd5=0x0;_0x1e9fd5<_0x344e27['length'];++_0x1e9fd5)null!=_0x4832f0[_0x344e27[_0x1e9fd5]]&&(this[_0x344e27[_0x1e9fd5]]=_0x4832f0[_0x344e27[_0x1e9fd5]]);}}return _0x490516['prototype']['sourcePosition']=null,_0x490516['prototype']['targetPosition']=null,_0x490516['prototype']['graveyardPosition']=null,_0x490516['prototype']['howMany']=0x0,_0x490516['prototype']['wasUndone']=!0x1,_0x490516['create']=function(_0x25122e){return new _0x490516(_0x25122e);},_0x490516['encode']=function(_0x4af307,_0x22086e){return _0x22086e||(_0x22086e=y['create']()),null!=_0x4af307['sourcePosition']&&Object['hasOwnProperty']['call'](_0x4af307,'sourcePosition')&&v['Position']['encode'](_0x4af307['sourcePosition'],_0x22086e['uint32'](0xa)['fork']())['ldelim'](),null!=_0x4af307['targetPosition']&&Object['hasOwnProperty']['call'](_0x4af307,'targetPosition')&&v['Position']['encode'](_0x4af307['targetPosition'],_0x22086e['uint32'](0x12)['fork']())['ldelim'](),null!=_0x4af307['graveyardPosition']&&Object['hasOwnProperty']['call'](_0x4af307,'graveyardPosition')&&v['Position']['encode'](_0x4af307['graveyardPosition'],_0x22086e['uint32'](0x1a)['fork']())['ldelim'](),null!=_0x4af307['howMany']&&Object['hasOwnProperty']['call'](_0x4af307,'howMany')&&_0x22086e['uint32'](0x20)['uint32'](_0x4af307['howMany']),null!=_0x4af307['wasUndone']&&Object['hasOwnProperty']['call'](_0x4af307,'wasUndone')&&_0x22086e['uint32'](0x28)['bool'](_0x4af307['wasUndone']),_0x22086e;},_0x490516['encodeDelimited']=function(_0x30de3c,_0x4dc0de){return this['encode'](_0x30de3c,_0x4dc0de)['ldelim']();},_0x490516['decode']=function(_0x3bff72,_0x4b20a5){_0x3bff72 instanceof j||(_0x3bff72=j['create'](_0x3bff72));let _0x1577b7=void 0x0===_0x4b20a5?_0x3bff72['len']:_0x3bff72['pos']+_0x4b20a5,_0x4fae4c=new v['MergeOperation']();for(;_0x3bff72['pos']<_0x1577b7;){let _0x122f91=_0x3bff72['uint32']();switch(_0x122f91>>>0x3){case 0x1:_0x4fae4c['sourcePosition']=v['Position']['decode'](_0x3bff72,_0x3bff72['uint32']());break;case 0x2:_0x4fae4c['targetPosition']=v['Position']['decode'](_0x3bff72,_0x3bff72['uint32']());break;case 0x3:_0x4fae4c['graveyardPosition']=v['Position']['decode'](_0x3bff72,_0x3bff72['uint32']());break;case 0x4:_0x4fae4c['howMany']=_0x3bff72['uint32']();break;case 0x5:_0x4fae4c['wasUndone']=_0x3bff72['bool']();break;default:_0x3bff72['skipType'](0x7&_0x122f91);}}return _0x4fae4c;},_0x490516['decodeDelimited']=function(_0x3dae00){return _0x3dae00 instanceof j||(_0x3dae00=new j(_0x3dae00)),this['decode'](_0x3dae00,_0x3dae00['uint32']());},_0x490516['verify']=function(_0x3b71ef){if('object'!=typeof _0x3b71ef||null===_0x3b71ef)return'object\x20expected';if(null!=_0x3b71ef['sourcePosition']&&_0x3b71ef['hasOwnProperty']('sourcePosition')){let _0x42371c=v['Position']['verify'](_0x3b71ef['sourcePosition']);if(_0x42371c)return'sourcePosition.'+_0x42371c;}if(null!=_0x3b71ef['targetPosition']&&_0x3b71ef['hasOwnProperty']('targetPosition')){let _0x74a4d8=v['Position']['verify'](_0x3b71ef['targetPosition']);if(_0x74a4d8)return'targetPosition.'+_0x74a4d8;}if(null!=_0x3b71ef['graveyardPosition']&&_0x3b71ef['hasOwnProperty']('graveyardPosition')){let _0x54f6b6=v['Position']['verify'](_0x3b71ef['graveyardPosition']);if(_0x54f6b6)return'graveyardPosition.'+_0x54f6b6;}return null!=_0x3b71ef['howMany']&&_0x3b71ef['hasOwnProperty']('howMany')&&!k['isInteger'](_0x3b71ef['howMany'])?'howMany:\x20integer\x20expected':null!=_0x3b71ef['wasUndone']&&_0x3b71ef['hasOwnProperty']('wasUndone')&&'boolean'!=typeof _0x3b71ef['wasUndone']?'wasUndone:\x20boolean\x20expected':null;},_0x490516['fromObject']=function(_0x261198){if(_0x261198 instanceof v['MergeOperation'])return _0x261198;let _0x268501=new v['MergeOperation']();if(null!=_0x261198['sourcePosition']){if('object'!=typeof _0x261198['sourcePosition'])throw TypeError('.MergeOperation.sourcePosition:\x20object\x20expected');_0x268501['sourcePosition']=v['Position']['fromObject'](_0x261198['sourcePosition']);}if(null!=_0x261198['targetPosition']){if('object'!=typeof _0x261198['targetPosition'])throw TypeError('.MergeOperation.targetPosition:\x20object\x20expected');_0x268501['targetPosition']=v['Position']['fromObject'](_0x261198['targetPosition']);}if(null!=_0x261198['graveyardPosition']){if('object'!=typeof _0x261198['graveyardPosition'])throw TypeError('.MergeOperation.graveyardPosition:\x20object\x20expected');_0x268501['graveyardPosition']=v['Position']['fromObject'](_0x261198['graveyardPosition']);}return null!=_0x261198['howMany']&&(_0x268501['howMany']=_0x261198['howMany']>>>0x0),null!=_0x261198['wasUndone']&&(_0x268501['wasUndone']=Boolean(_0x261198['wasUndone'])),_0x268501;},_0x490516['toObject']=function(_0x1c8546,_0x4f91ed){_0x4f91ed||(_0x4f91ed={});let _0x2bdb65={};return _0x4f91ed['defaults']&&(_0x2bdb65['sourcePosition']=null,_0x2bdb65['targetPosition']=null,_0x2bdb65['graveyardPosition']=null,_0x2bdb65['howMany']=0x0,_0x2bdb65['wasUndone']=!0x1),null!=_0x1c8546['sourcePosition']&&_0x1c8546['hasOwnProperty']('sourcePosition')&&(_0x2bdb65['sourcePosition']=v['Position']['toObject'](_0x1c8546['sourcePosition'],_0x4f91ed)),null!=_0x1c8546['targetPosition']&&_0x1c8546['hasOwnProperty']('targetPosition')&&(_0x2bdb65['targetPosition']=v['Position']['toObject'](_0x1c8546['targetPosition'],_0x4f91ed)),null!=_0x1c8546['graveyardPosition']&&_0x1c8546['hasOwnProperty']('graveyardPosition')&&(_0x2bdb65['graveyardPosition']=v['Position']['toObject'](_0x1c8546['graveyardPosition'],_0x4f91ed)),null!=_0x1c8546['howMany']&&_0x1c8546['hasOwnProperty']('howMany')&&(_0x2bdb65['howMany']=_0x1c8546['howMany']),null!=_0x1c8546['wasUndone']&&_0x1c8546['hasOwnProperty']('wasUndone')&&(_0x2bdb65['wasUndone']=_0x1c8546['wasUndone']),_0x2bdb65;},_0x490516['prototype']['toJSON']=function(){return this['constructor']['toObject'](this,_0x18347d['util']['toJSONOptions']);},_0x490516['getTypeUrl']=function(_0x44abf6){return void 0x0===_0x44abf6&&(_0x44abf6='type.googleapis.com'),_0x44abf6+'/MergeOperation';},_0x490516;})()),U=v['MoveOperation']=((()=>{function _0x14b07d(_0x2cca04){if(_0x2cca04){for(let _0x5270bc=Object['keys'](_0x2cca04),_0x7e22c7=0x0;_0x7e22c7<_0x5270bc['length'];++_0x7e22c7)null!=_0x2cca04[_0x5270bc[_0x7e22c7]]&&(this[_0x5270bc[_0x7e22c7]]=_0x2cca04[_0x5270bc[_0x7e22c7]]);}}return _0x14b07d['prototype']['sourcePosition']=null,_0x14b07d['prototype']['howMany']=0x0,_0x14b07d['prototype']['targetPosition']=null,_0x14b07d['prototype']['wasUndone']=!0x1,_0x14b07d['create']=function(_0x176d1e){return new _0x14b07d(_0x176d1e);},_0x14b07d['encode']=function(_0x2c2d18,_0x9ab3ee){return _0x9ab3ee||(_0x9ab3ee=y['create']()),null!=_0x2c2d18['sourcePosition']&&Object['hasOwnProperty']['call'](_0x2c2d18,'sourcePosition')&&v['Position']['encode'](_0x2c2d18['sourcePosition'],_0x9ab3ee['uint32'](0xa)['fork']())['ldelim'](),null!=_0x2c2d18['howMany']&&Object['hasOwnProperty']['call'](_0x2c2d18,'howMany')&&_0x9ab3ee['uint32'](0x10)['uint32'](_0x2c2d18['howMany']),null!=_0x2c2d18['targetPosition']&&Object['hasOwnProperty']['call'](_0x2c2d18,'targetPosition')&&v['Position']['encode'](_0x2c2d18['targetPosition'],_0x9ab3ee['uint32'](0x1a)['fork']())['ldelim'](),null!=_0x2c2d18['wasUndone']&&Object['hasOwnProperty']['call'](_0x2c2d18,'wasUndone')&&_0x9ab3ee['uint32'](0x20)['bool'](_0x2c2d18['wasUndone']),_0x9ab3ee;},_0x14b07d['encodeDelimited']=function(_0x206728,_0x322124){return this['encode'](_0x206728,_0x322124)['ldelim']();},_0x14b07d['decode']=function(_0x1c5187,_0x54be10){_0x1c5187 instanceof j||(_0x1c5187=j['create'](_0x1c5187));let _0x9dc95=void 0x0===_0x54be10?_0x1c5187['len']:_0x1c5187['pos']+_0x54be10,_0x329f8e=new v['MoveOperation']();for(;_0x1c5187['pos']<_0x9dc95;){let _0x42d480=_0x1c5187['uint32']();switch(_0x42d480>>>0x3){case 0x1:_0x329f8e['sourcePosition']=v['Position']['decode'](_0x1c5187,_0x1c5187['uint32']());break;case 0x2:_0x329f8e['howMany']=_0x1c5187['uint32']();break;case 0x3:_0x329f8e['targetPosition']=v['Position']['decode'](_0x1c5187,_0x1c5187['uint32']());break;case 0x4:_0x329f8e['wasUndone']=_0x1c5187['bool']();break;default:_0x1c5187['skipType'](0x7&_0x42d480);}}return _0x329f8e;},_0x14b07d['decodeDelimited']=function(_0x453a53){return _0x453a53 instanceof j||(_0x453a53=new j(_0x453a53)),this['decode'](_0x453a53,_0x453a53['uint32']());},_0x14b07d['verify']=function(_0x575d49){if('object'!=typeof _0x575d49||null===_0x575d49)return'object\x20expected';if(null!=_0x575d49['sourcePosition']&&_0x575d49['hasOwnProperty']('sourcePosition')){let _0x551ddf=v['Position']['verify'](_0x575d49['sourcePosition']);if(_0x551ddf)return'sourcePosition.'+_0x551ddf;}if(null!=_0x575d49['howMany']&&_0x575d49['hasOwnProperty']('howMany')&&!k['isInteger'](_0x575d49['howMany']))return'howMany:\x20integer\x20expected';if(null!=_0x575d49['targetPosition']&&_0x575d49['hasOwnProperty']('targetPosition')){let _0x4ec196=v['Position']['verify'](_0x575d49['targetPosition']);if(_0x4ec196)return'targetPosition.'+_0x4ec196;}return null!=_0x575d49['wasUndone']&&_0x575d49['hasOwnProperty']('wasUndone')&&'boolean'!=typeof _0x575d49['wasUndone']?'wasUndone:\x20boolean\x20expected':null;},_0x14b07d['fromObject']=function(_0x4d1751){if(_0x4d1751 instanceof v['MoveOperation'])return _0x4d1751;let _0x461e9c=new v['MoveOperation']();if(null!=_0x4d1751['sourcePosition']){if('object'!=typeof _0x4d1751['sourcePosition'])throw TypeError('.MoveOperation.sourcePosition:\x20object\x20expected');_0x461e9c['sourcePosition']=v['Position']['fromObject'](_0x4d1751['sourcePosition']);}if(null!=_0x4d1751['howMany']&&(_0x461e9c['howMany']=_0x4d1751['howMany']>>>0x0),null!=_0x4d1751['targetPosition']){if('object'!=typeof _0x4d1751['targetPosition'])throw TypeError('.MoveOperation.targetPosition:\x20object\x20expected');_0x461e9c['targetPosition']=v['Position']['fromObject'](_0x4d1751['targetPosition']);}return null!=_0x4d1751['wasUndone']&&(_0x461e9c['wasUndone']=Boolean(_0x4d1751['wasUndone'])),_0x461e9c;},_0x14b07d['toObject']=function(_0x1a5222,_0x129b06){_0x129b06||(_0x129b06={});let _0x3d05d7={};return _0x129b06['defaults']&&(_0x3d05d7['sourcePosition']=null,_0x3d05d7['howMany']=0x0,_0x3d05d7['targetPosition']=null,_0x3d05d7['wasUndone']=!0x1),null!=_0x1a5222['sourcePosition']&&_0x1a5222['hasOwnProperty']('sourcePosition')&&(_0x3d05d7['sourcePosition']=v['Position']['toObject'](_0x1a5222['sourcePosition'],_0x129b06)),null!=_0x1a5222['howMany']&&_0x1a5222['hasOwnProperty']('howMany')&&(_0x3d05d7['howMany']=_0x1a5222['howMany']),null!=_0x1a5222['targetPosition']&&_0x1a5222['hasOwnProperty']('targetPosition')&&(_0x3d05d7['targetPosition']=v['Position']['toObject'](_0x1a5222['targetPosition'],_0x129b06)),null!=_0x1a5222['wasUndone']&&_0x1a5222['hasOwnProperty']('wasUndone')&&(_0x3d05d7['wasUndone']=_0x1a5222['wasUndone']),_0x3d05d7;},_0x14b07d['prototype']['toJSON']=function(){return this['constructor']['toObject'](this,_0x18347d['util']['toJSONOptions']);},_0x14b07d['getTypeUrl']=function(_0x50187f){return void 0x0===_0x50187f&&(_0x50187f='type.googleapis.com'),_0x50187f+'/MoveOperation';},_0x14b07d;})()),A=v['RenameOperation']=((()=>{function _0x55e378(_0x5eff13){if(_0x5eff13){for(let _0x2143ef=Object['keys'](_0x5eff13),_0x406940=0x0;_0x406940<_0x2143ef['length'];++_0x406940)null!=_0x5eff13[_0x2143ef[_0x406940]]&&(this[_0x2143ef[_0x406940]]=_0x5eff13[_0x2143ef[_0x406940]]);}}return _0x55e378['prototype']['position']=null,_0x55e378['prototype']['oldName']='',_0x55e378['prototype']['newName']='',_0x55e378['prototype']['wasUndone']=!0x1,_0x55e378['create']=function(_0x513406){return new _0x55e378(_0x513406);},_0x55e378['encode']=function(_0x5c4002,_0x12add9){return _0x12add9||(_0x12add9=y['create']()),null!=_0x5c4002['position']&&Object['hasOwnProperty']['call'](_0x5c4002,'position')&&v['Position']['encode'](_0x5c4002['position'],_0x12add9['uint32'](0xa)['fork']())['ldelim'](),null!=_0x5c4002['oldName']&&Object['hasOwnProperty']['call'](_0x5c4002,'oldName')&&_0x12add9['uint32'](0x12)['string'](_0x5c4002['oldName']),null!=_0x5c4002['newName']&&Object['hasOwnProperty']['call'](_0x5c4002,'newName')&&_0x12add9['uint32'](0x1a)['string'](_0x5c4002['newName']),null!=_0x5c4002['wasUndone']&&Object['hasOwnProperty']['call'](_0x5c4002,'wasUndone')&&_0x12add9['uint32'](0x20)['bool'](_0x5c4002['wasUndone']),_0x12add9;},_0x55e378['encodeDelimited']=function(_0xee82fb,_0xa911e9){return this['encode'](_0xee82fb,_0xa911e9)['ldelim']();},_0x55e378['decode']=function(_0x29de08,_0x55a981){_0x29de08 instanceof j||(_0x29de08=j['create'](_0x29de08));let _0x14c7f7=void 0x0===_0x55a981?_0x29de08['len']:_0x29de08['pos']+_0x55a981,_0x4bbb44=new v['RenameOperation']();for(;_0x29de08['pos']<_0x14c7f7;){let _0x12bf71=_0x29de08['uint32']();switch(_0x12bf71>>>0x3){case 0x1:_0x4bbb44['position']=v['Position']['decode'](_0x29de08,_0x29de08['uint32']());break;case 0x2:_0x4bbb44['oldName']=_0x29de08['string']();break;case 0x3:_0x4bbb44['newName']=_0x29de08['string']();break;case 0x4:_0x4bbb44['wasUndone']=_0x29de08['bool']();break;default:_0x29de08['skipType'](0x7&_0x12bf71);}}return _0x4bbb44;},_0x55e378['decodeDelimited']=function(_0x204082){return _0x204082 instanceof j||(_0x204082=new j(_0x204082)),this['decode'](_0x204082,_0x204082['uint32']());},_0x55e378['verify']=function(_0xdb4035){if('object'!=typeof _0xdb4035||null===_0xdb4035)return'object\x20expected';if(null!=_0xdb4035['position']&&_0xdb4035['hasOwnProperty']('position')){let _0x1ca1d8=v['Position']['verify'](_0xdb4035['position']);if(_0x1ca1d8)return'position.'+_0x1ca1d8;}return null!=_0xdb4035['oldName']&&_0xdb4035['hasOwnProperty']('oldName')&&!k['isString'](_0xdb4035['oldName'])?'oldName:\x20string\x20expected':null!=_0xdb4035['newName']&&_0xdb4035['hasOwnProperty']('newName')&&!k['isString'](_0xdb4035['newName'])?'newName:\x20string\x20expected':null!=_0xdb4035['wasUndone']&&_0xdb4035['hasOwnProperty']('wasUndone')&&'boolean'!=typeof _0xdb4035['wasUndone']?'wasUndone:\x20boolean\x20expected':null;},_0x55e378['fromObject']=function(_0xceb6cf){if(_0xceb6cf instanceof v['RenameOperation'])return _0xceb6cf;let _0x3cf86a=new v['RenameOperation']();if(null!=_0xceb6cf['position']){if('object'!=typeof _0xceb6cf['position'])throw TypeError('.RenameOperation.position:\x20object\x20expected');_0x3cf86a['position']=v['Position']['fromObject'](_0xceb6cf['position']);}return null!=_0xceb6cf['oldName']&&(_0x3cf86a['oldName']=String(_0xceb6cf['oldName'])),null!=_0xceb6cf['newName']&&(_0x3cf86a['newName']=String(_0xceb6cf['newName'])),null!=_0xceb6cf['wasUndone']&&(_0x3cf86a['wasUndone']=Boolean(_0xceb6cf['wasUndone'])),_0x3cf86a;},_0x55e378['toObject']=function(_0x1d55cc,_0x119b92){_0x119b92||(_0x119b92={});let _0x4c4b74={};return _0x119b92['defaults']&&(_0x4c4b74['position']=null,_0x4c4b74['oldName']='',_0x4c4b74['newName']='',_0x4c4b74['wasUndone']=!0x1),null!=_0x1d55cc['position']&&_0x1d55cc['hasOwnProperty']('position')&&(_0x4c4b74['position']=v['Position']['toObject'](_0x1d55cc['position'],_0x119b92)),null!=_0x1d55cc['oldName']&&_0x1d55cc['hasOwnProperty']('oldName')&&(_0x4c4b74['oldName']=_0x1d55cc['oldName']),null!=_0x1d55cc['newName']&&_0x1d55cc['hasOwnProperty']('newName')&&(_0x4c4b74['newName']=_0x1d55cc['newName']),null!=_0x1d55cc['wasUndone']&&_0x1d55cc['hasOwnProperty']('wasUndone')&&(_0x4c4b74['wasUndone']=_0x1d55cc['wasUndone']),_0x4c4b74;},_0x55e378['prototype']['toJSON']=function(){return this['constructor']['toObject'](this,_0x18347d['util']['toJSONOptions']);},_0x55e378['getTypeUrl']=function(_0x283f20){return void 0x0===_0x283f20&&(_0x283f20='type.googleapis.com'),_0x283f20+'/RenameOperation';},_0x55e378;})()),N=v['RootAttributeOperation']=((()=>{function _0x2ac16a(_0x4c3def){if(_0x4c3def){for(let _0x161af4=Object['keys'](_0x4c3def),_0x554ef9=0x0;_0x554ef9<_0x161af4['length'];++_0x554ef9)null!=_0x4c3def[_0x161af4[_0x554ef9]]&&(this[_0x161af4[_0x554ef9]]=_0x4c3def[_0x161af4[_0x554ef9]]);}}return _0x2ac16a['prototype']['root']='',_0x2ac16a['prototype']['key']='',_0x2ac16a['prototype']['oldValueBoolean']=!0x1,_0x2ac16a['prototype']['oldValueJson']='',_0x2ac16a['prototype']['newValueBoolean']=!0x1,_0x2ac16a['prototype']['newValueJson']='',_0x2ac16a['prototype']['wasUndone']=!0x1,_0x2ac16a['create']=function(_0x46bc14){return new _0x2ac16a(_0x46bc14);},_0x2ac16a['encode']=function(_0xb073f3,_0x56ecf4){return _0x56ecf4||(_0x56ecf4=y['create']()),null!=_0xb073f3['root']&&Object['hasOwnProperty']['call'](_0xb073f3,'root')&&_0x56ecf4['uint32'](0xa)['string'](_0xb073f3['root']),null!=_0xb073f3['key']&&Object['hasOwnProperty']['call'](_0xb073f3,'key')&&_0x56ecf4['uint32'](0x12)['string'](_0xb073f3['key']),null!=_0xb073f3['oldValueBoolean']&&Object['hasOwnProperty']['call'](_0xb073f3,'oldValueBoolean')&&_0x56ecf4['uint32'](0x18)['bool'](_0xb073f3['oldValueBoolean']),null!=_0xb073f3['oldValueJson']&&Object['hasOwnProperty']['call'](_0xb073f3,'oldValueJson')&&_0x56ecf4['uint32'](0x22)['string'](_0xb073f3['oldValueJson']),null!=_0xb073f3['newValueBoolean']&&Object['hasOwnProperty']['call'](_0xb073f3,'newValueBoolean')&&_0x56ecf4['uint32'](0x28)['bool'](_0xb073f3['newValueBoolean']),null!=_0xb073f3['newValueJson']&&Object['hasOwnProperty']['call'](_0xb073f3,'newValueJson')&&_0x56ecf4['uint32'](0x32)['string'](_0xb073f3['newValueJson']),null!=_0xb073f3['wasUndone']&&Object['hasOwnProperty']['call'](_0xb073f3,'wasUndone')&&_0x56ecf4['uint32'](0x38)['bool'](_0xb073f3['wasUndone']),_0x56ecf4;},_0x2ac16a['encodeDelimited']=function(_0x394e40,_0x2b6c41){return this['encode'](_0x394e40,_0x2b6c41)['ldelim']();},_0x2ac16a['decode']=function(_0x38542b,_0x5ae42d){_0x38542b instanceof j||(_0x38542b=j['create'](_0x38542b));let _0x1332a7=void 0x0===_0x5ae42d?_0x38542b['len']:_0x38542b['pos']+_0x5ae42d,_0x1c6929=new v['RootAttributeOperation']();for(;_0x38542b['pos']<_0x1332a7;){let _0x5222f6=_0x38542b['uint32']();switch(_0x5222f6>>>0x3){case 0x1:_0x1c6929['root']=_0x38542b['string']();break;case 0x2:_0x1c6929['key']=_0x38542b['string']();break;case 0x3:_0x1c6929['oldValueBoolean']=_0x38542b['bool']();break;case 0x4:_0x1c6929['oldValueJson']=_0x38542b['string']();break;case 0x5:_0x1c6929['newValueBoolean']=_0x38542b['bool']();break;case 0x6:_0x1c6929['newValueJson']=_0x38542b['string']();break;case 0x7:_0x1c6929['wasUndone']=_0x38542b['bool']();break;default:_0x38542b['skipType'](0x7&_0x5222f6);}}return _0x1c6929;},_0x2ac16a['decodeDelimited']=function(_0x4992ef){return _0x4992ef instanceof j||(_0x4992ef=new j(_0x4992ef)),this['decode'](_0x4992ef,_0x4992ef['uint32']());},_0x2ac16a['verify']=function(_0x5e200a){return'object'!=typeof _0x5e200a||null===_0x5e200a?'object\x20expected':null!=_0x5e200a['root']&&_0x5e200a['hasOwnProperty']('root')&&!k['isString'](_0x5e200a['root'])?'root:\x20string\x20expected':null!=_0x5e200a['key']&&_0x5e200a['hasOwnProperty']('key')&&!k['isString'](_0x5e200a['key'])?'key:\x20string\x20expected':null!=_0x5e200a['oldValueBoolean']&&_0x5e200a['hasOwnProperty']('oldValueBoolean')&&'boolean'!=typeof _0x5e200a['oldValueBoolean']?'oldValueBoolean:\x20boolean\x20expected':null!=_0x5e200a['oldValueJson']&&_0x5e200a['hasOwnProperty']('oldValueJson')&&!k['isString'](_0x5e200a['oldValueJson'])?'oldValueJson:\x20string\x20expected':null!=_0x5e200a['newValueBoolean']&&_0x5e200a['hasOwnProperty']('newValueBoolean')&&'boolean'!=typeof _0x5e200a['newValueBoolean']?'newValueBoolean:\x20boolean\x20expected':null!=_0x5e200a['newValueJson']&&_0x5e200a['hasOwnProperty']('newValueJson')&&!k['isString'](_0x5e200a['newValueJson'])?'newValueJson:\x20string\x20expected':null!=_0x5e200a['wasUndone']&&_0x5e200a['hasOwnProperty']('wasUndone')&&'boolean'!=typeof _0x5e200a['wasUndone']?'wasUndone:\x20boolean\x20expected':null;},_0x2ac16a['fromObject']=function(_0x294f47){if(_0x294f47 instanceof v['RootAttributeOperation'])return _0x294f47;let _0x422ee8=new v['RootAttributeOperation']();return null!=_0x294f47['root']&&(_0x422ee8['root']=String(_0x294f47['root'])),null!=_0x294f47['key']&&(_0x422ee8['key']=String(_0x294f47['key'])),null!=_0x294f47['oldValueBoolean']&&(_0x422ee8['oldValueBoolean']=Boolean(_0x294f47['oldValueBoolean'])),null!=_0x294f47['oldValueJson']&&(_0x422ee8['oldValueJson']=String(_0x294f47['oldValueJson'])),null!=_0x294f47['newValueBoolean']&&(_0x422ee8['newValueBoolean']=Boolean(_0x294f47['newValueBoolean'])),null!=_0x294f47['newValueJson']&&(_0x422ee8['newValueJson']=String(_0x294f47['newValueJson'])),null!=_0x294f47['wasUndone']&&(_0x422ee8['wasUndone']=Boolean(_0x294f47['wasUndone'])),_0x422ee8;},_0x2ac16a['toObject']=function(_0x11fb5c,_0x5b125f){_0x5b125f||(_0x5b125f={});let _0x4496cd={};return _0x5b125f['defaults']&&(_0x4496cd['root']='',_0x4496cd['key']='',_0x4496cd['oldValueBoolean']=!0x1,_0x4496cd['oldValueJson']='',_0x4496cd['newValueBoolean']=!0x1,_0x4496cd['newValueJson']='',_0x4496cd['wasUndone']=!0x1),null!=_0x11fb5c['root']&&_0x11fb5c['hasOwnProperty']('root')&&(_0x4496cd['root']=_0x11fb5c['root']),null!=_0x11fb5c['key']&&_0x11fb5c['hasOwnProperty']('key')&&(_0x4496cd['key']=_0x11fb5c['key']),null!=_0x11fb5c['oldValueBoolean']&&_0x11fb5c['hasOwnProperty']('oldValueBoolean')&&(_0x4496cd['oldValueBoolean']=_0x11fb5c['oldValueBoolean']),null!=_0x11fb5c['oldValueJson']&&_0x11fb5c['hasOwnProperty']('oldValueJson')&&(_0x4496cd['oldValueJson']=_0x11fb5c['oldValueJson']),null!=_0x11fb5c['newValueBoolean']&&_0x11fb5c['hasOwnProperty']('newValueBoolean')&&(_0x4496cd['newValueBoolean']=_0x11fb5c['newValueBoolean']),null!=_0x11fb5c['newValueJson']&&_0x11fb5c['hasOwnProperty']('newValueJson')&&(_0x4496cd['newValueJson']=_0x11fb5c['newValueJson']),null!=_0x11fb5c['wasUndone']&&_0x11fb5c['hasOwnProperty']('wasUndone')&&(_0x4496cd['wasUndone']=_0x11fb5c['wasUndone']),_0x4496cd;},_0x2ac16a['prototype']['toJSON']=function(){return this['constructor']['toObject'](this,_0x18347d['util']['toJSONOptions']);},_0x2ac16a['getTypeUrl']=function(_0x42174b){return void 0x0===_0x42174b&&(_0x42174b='type.googleapis.com'),_0x42174b+'/RootAttributeOperation';},_0x2ac16a;})()),R=v['RootOperation']=((()=>{function _0x4c72ac(_0x4d1a3d){if(_0x4d1a3d){for(let _0x1a8817=Object['keys'](_0x4d1a3d),_0x366864=0x0;_0x366864<_0x1a8817['length'];++_0x366864)null!=_0x4d1a3d[_0x1a8817[_0x366864]]&&(this[_0x1a8817[_0x366864]]=_0x4d1a3d[_0x1a8817[_0x366864]]);}}return _0x4c72ac['prototype']['rootName']='',_0x4c72ac['prototype']['elementName']='',_0x4c72ac['prototype']['isAdd']=!0x1,_0x4c72ac['prototype']['wasUndone']=!0x1,_0x4c72ac['create']=function(_0x1c1ffe){return new _0x4c72ac(_0x1c1ffe);},_0x4c72ac['encode']=function(_0x4bcd8f,_0x474799){return _0x474799||(_0x474799=y['create']()),null!=_0x4bcd8f['rootName']&&Object['hasOwnProperty']['call'](_0x4bcd8f,'rootName')&&_0x474799['uint32'](0xa)['string'](_0x4bcd8f['rootName']),null!=_0x4bcd8f['elementName']&&Object['hasOwnProperty']['call'](_0x4bcd8f,'elementName')&&_0x474799['uint32'](0x12)['string'](_0x4bcd8f['elementName']),null!=_0x4bcd8f['isAdd']&&Object['hasOwnProperty']['call'](_0x4bcd8f,'isAdd')&&_0x474799['uint32'](0x18)['bool'](_0x4bcd8f['isAdd']),null!=_0x4bcd8f['wasUndone']&&Object['hasOwnProperty']['call'](_0x4bcd8f,'wasUndone')&&_0x474799['uint32'](0x20)['bool'](_0x4bcd8f['wasUndone']),_0x474799;},_0x4c72ac['encodeDelimited']=function(_0x12d291,_0xa5c240){return this['encode'](_0x12d291,_0xa5c240)['ldelim']();},_0x4c72ac['decode']=function(_0x19da0d,_0x42d80){_0x19da0d instanceof j||(_0x19da0d=j['create'](_0x19da0d));let _0x508490=void 0x0===_0x42d80?_0x19da0d['len']:_0x19da0d['pos']+_0x42d80,_0xddbaf9=new v['RootOperation']();for(;_0x19da0d['pos']<_0x508490;){let _0x56eaf0=_0x19da0d['uint32']();switch(_0x56eaf0>>>0x3){case 0x1:_0xddbaf9['rootName']=_0x19da0d['string']();break;case 0x2:_0xddbaf9['elementName']=_0x19da0d['string']();break;case 0x3:_0xddbaf9['isAdd']=_0x19da0d['bool']();break;case 0x4:_0xddbaf9['wasUndone']=_0x19da0d['bool']();break;default:_0x19da0d['skipType'](0x7&_0x56eaf0);}}return _0xddbaf9;},_0x4c72ac['decodeDelimited']=function(_0x4ad09d){return _0x4ad09d instanceof j||(_0x4ad09d=new j(_0x4ad09d)),this['decode'](_0x4ad09d,_0x4ad09d['uint32']());},_0x4c72ac['verify']=function(_0x3f26bd){return'object'!=typeof _0x3f26bd||null===_0x3f26bd?'object\x20expected':null!=_0x3f26bd['rootName']&&_0x3f26bd['hasOwnProperty']('rootName')&&!k['isString'](_0x3f26bd['rootName'])?'rootName:\x20string\x20expected':null!=_0x3f26bd['elementName']&&_0x3f26bd['hasOwnProperty']('elementName')&&!k['isString'](_0x3f26bd['elementName'])?'elementName:\x20string\x20expected':null!=_0x3f26bd['isAdd']&&_0x3f26bd['hasOwnProperty']('isAdd')&&'boolean'!=typeof _0x3f26bd['isAdd']?'isAdd:\x20boolean\x20expected':null!=_0x3f26bd['wasUndone']&&_0x3f26bd['hasOwnProperty']('wasUndone')&&'boolean'!=typeof _0x3f26bd['wasUndone']?'wasUndone:\x20boolean\x20expected':null;},_0x4c72ac['fromObject']=function(_0x2b578e){if(_0x2b578e instanceof v['RootOperation'])return _0x2b578e;let _0x3f1d69=new v['RootOperation']();return null!=_0x2b578e['rootName']&&(_0x3f1d69['rootName']=String(_0x2b578e['rootName'])),null!=_0x2b578e['elementName']&&(_0x3f1d69['elementName']=String(_0x2b578e['elementName'])),null!=_0x2b578e['isAdd']&&(_0x3f1d69['isAdd']=Boolean(_0x2b578e['isAdd'])),null!=_0x2b578e['wasUndone']&&(_0x3f1d69['wasUndone']=Boolean(_0x2b578e['wasUndone'])),_0x3f1d69;},_0x4c72ac['toObject']=function(_0x57da0d,_0xe660b6){_0xe660b6||(_0xe660b6={});let _0x50cf1b={};return _0xe660b6['defaults']&&(_0x50cf1b['rootName']='',_0x50cf1b['elementName']='',_0x50cf1b['isAdd']=!0x1,_0x50cf1b['wasUndone']=!0x1),null!=_0x57da0d['rootName']&&_0x57da0d['hasOwnProperty']('rootName')&&(_0x50cf1b['rootName']=_0x57da0d['rootName']),null!=_0x57da0d['elementName']&&_0x57da0d['hasOwnProperty']('elementName')&&(_0x50cf1b['elementName']=_0x57da0d['elementName']),null!=_0x57da0d['isAdd']&&_0x57da0d['hasOwnProperty']('isAdd')&&(_0x50cf1b['isAdd']=_0x57da0d['isAdd']),null!=_0x57da0d['wasUndone']&&_0x57da0d['hasOwnProperty']('wasUndone')&&(_0x50cf1b['wasUndone']=_0x57da0d['wasUndone']),_0x50cf1b;},_0x4c72ac['prototype']['toJSON']=function(){return this['constructor']['toObject'](this,_0x18347d['util']['toJSONOptions']);},_0x4c72ac['getTypeUrl']=function(_0x35bc0e){return void 0x0===_0x35bc0e&&(_0x35bc0e='type.googleapis.com'),_0x35bc0e+'/RootOperation';},_0x4c72ac;})()),E=v['SplitOperation']=((()=>{function _0x4733df(_0x3f1984){if(_0x3f1984){for(let _0x4a9a0b=Object['keys'](_0x3f1984),_0x27cb57=0x0;_0x27cb57<_0x4a9a0b['length'];++_0x27cb57)null!=_0x3f1984[_0x4a9a0b[_0x27cb57]]&&(this[_0x4a9a0b[_0x27cb57]]=_0x3f1984[_0x4a9a0b[_0x27cb57]]);}}return _0x4733df['prototype']['splitPosition']=null,_0x4733df['prototype']['graveyardPosition']=null,_0x4733df['prototype']['howMany']=0x0,_0x4733df['prototype']['insertionPosition']=null,_0x4733df['prototype']['wasUndone']=!0x1,_0x4733df['create']=function(_0x4695af){return new _0x4733df(_0x4695af);},_0x4733df['encode']=function(_0x43b552,_0x4ae9fb){return _0x4ae9fb||(_0x4ae9fb=y['create']()),null!=_0x43b552['splitPosition']&&Object['hasOwnProperty']['call'](_0x43b552,'splitPosition')&&v['Position']['encode'](_0x43b552['splitPosition'],_0x4ae9fb['uint32'](0xa)['fork']())['ldelim'](),null!=_0x43b552['graveyardPosition']&&Object['hasOwnProperty']['call'](_0x43b552,'graveyardPosition')&&v['Position']['encode'](_0x43b552['graveyardPosition'],_0x4ae9fb['uint32'](0x12)['fork']())['ldelim'](),null!=_0x43b552['howMany']&&Object['hasOwnProperty']['call'](_0x43b552,'howMany')&&_0x4ae9fb['uint32'](0x18)['uint32'](_0x43b552['howMany']),null!=_0x43b552['insertionPosition']&&Object['hasOwnProperty']['call'](_0x43b552,'insertionPosition')&&v['Position']['encode'](_0x43b552['insertionPosition'],_0x4ae9fb['uint32'](0x22)['fork']())['ldelim'](),null!=_0x43b552['wasUndone']&&Object['hasOwnProperty']['call'](_0x43b552,'wasUndone')&&_0x4ae9fb['uint32'](0x28)['bool'](_0x43b552['wasUndone']),_0x4ae9fb;},_0x4733df['encodeDelimited']=function(_0x220099,_0x33d8cc){return this['encode'](_0x220099,_0x33d8cc)['ldelim']();},_0x4733df['decode']=function(_0x441a6e,_0x3dd2b7){_0x441a6e instanceof j||(_0x441a6e=j['create'](_0x441a6e));let _0x9d5d81=void 0x0===_0x3dd2b7?_0x441a6e['len']:_0x441a6e['pos']+_0x3dd2b7,_0x1847d3=new v['SplitOperation']();for(;_0x441a6e['pos']<_0x9d5d81;){let _0x599812=_0x441a6e['uint32']();switch(_0x599812>>>0x3){case 0x1:_0x1847d3['splitPosition']=v['Position']['decode'](_0x441a6e,_0x441a6e['uint32']());break;case 0x2:_0x1847d3['graveyardPosition']=v['Position']['decode'](_0x441a6e,_0x441a6e['uint32']());break;case 0x3:_0x1847d3['howMany']=_0x441a6e['uint32']();break;case 0x4:_0x1847d3['insertionPosition']=v['Position']['decode'](_0x441a6e,_0x441a6e['uint32']());break;case 0x5:_0x1847d3['wasUndone']=_0x441a6e['bool']();break;default:_0x441a6e['skipType'](0x7&_0x599812);}}return _0x1847d3;},_0x4733df['decodeDelimited']=function(_0x1df034){return _0x1df034 instanceof j||(_0x1df034=new j(_0x1df034)),this['decode'](_0x1df034,_0x1df034['uint32']());},_0x4733df['verify']=function(_0x2ac3dc){if('object'!=typeof _0x2ac3dc||null===_0x2ac3dc)return'object\x20expected';if(null!=_0x2ac3dc['splitPosition']&&_0x2ac3dc['hasOwnProperty']('splitPosition')){let _0x3bed4f=v['Position']['verify'](_0x2ac3dc['splitPosition']);if(_0x3bed4f)return'splitPosition.'+_0x3bed4f;}if(null!=_0x2ac3dc['graveyardPosition']&&_0x2ac3dc['hasOwnProperty']('graveyardPosition')){let _0x3d7e53=v['Position']['verify'](_0x2ac3dc['graveyardPosition']);if(_0x3d7e53)return'graveyardPosition.'+_0x3d7e53;}if(null!=_0x2ac3dc['howMany']&&_0x2ac3dc['hasOwnProperty']('howMany')&&!k['isInteger'](_0x2ac3dc['howMany']))return'howMany:\x20integer\x20expected';if(null!=_0x2ac3dc['insertionPosition']&&_0x2ac3dc['hasOwnProperty']('insertionPosition')){let _0x24bc9e=v['Position']['verify'](_0x2ac3dc['insertionPosition']);if(_0x24bc9e)return'insertionPosition.'+_0x24bc9e;}return null!=_0x2ac3dc['wasUndone']&&_0x2ac3dc['hasOwnProperty']('wasUndone')&&'boolean'!=typeof _0x2ac3dc['wasUndone']?'wasUndone:\x20boolean\x20expected':null;},_0x4733df['fromObject']=function(_0x59bea7){if(_0x59bea7 instanceof v['SplitOperation'])return _0x59bea7;let _0x2026fd=new v['SplitOperation']();if(null!=_0x59bea7['splitPosition']){if('object'!=typeof _0x59bea7['splitPosition'])throw TypeError('.SplitOperation.splitPosition:\x20object\x20expected');_0x2026fd['splitPosition']=v['Position']['fromObject'](_0x59bea7['splitPosition']);}if(null!=_0x59bea7['graveyardPosition']){if('object'!=typeof _0x59bea7['graveyardPosition'])throw TypeError('.SplitOperation.graveyardPosition:\x20object\x20expected');_0x2026fd['graveyardPosition']=v['Position']['fromObject'](_0x59bea7['graveyardPosition']);}if(null!=_0x59bea7['howMany']&&(_0x2026fd['howMany']=_0x59bea7['howMany']>>>0x0),null!=_0x59bea7['insertionPosition']){if('object'!=typeof _0x59bea7['insertionPosition'])throw TypeError('.SplitOperation.insertionPosition:\x20object\x20expected');_0x2026fd['insertionPosition']=v['Position']['fromObject'](_0x59bea7['insertionPosition']);}return null!=_0x59bea7['wasUndone']&&(_0x2026fd['wasUndone']=Boolean(_0x59bea7['wasUndone'])),_0x2026fd;},_0x4733df['toObject']=function(_0x5ac68b,_0x408151){_0x408151||(_0x408151={});let _0x182d8f={};return _0x408151['defaults']&&(_0x182d8f['splitPosition']=null,_0x182d8f['graveyardPosition']=null,_0x182d8f['howMany']=0x0,_0x182d8f['insertionPosition']=null,_0x182d8f['wasUndone']=!0x1),null!=_0x5ac68b['splitPosition']&&_0x5ac68b['hasOwnProperty']('splitPosition')&&(_0x182d8f['splitPosition']=v['Position']['toObject'](_0x5ac68b['splitPosition'],_0x408151)),null!=_0x5ac68b['graveyardPosition']&&_0x5ac68b['hasOwnProperty']('graveyardPosition')&&(_0x182d8f['graveyardPosition']=v['Position']['toObject'](_0x5ac68b['graveyardPosition'],_0x408151)),null!=_0x5ac68b['howMany']&&_0x5ac68b['hasOwnProperty']('howMany')&&(_0x182d8f['howMany']=_0x5ac68b['howMany']),null!=_0x5ac68b['insertionPosition']&&_0x5ac68b['hasOwnProperty']('insertionPosition')&&(_0x182d8f['insertionPosition']=v['Position']['toObject'](_0x5ac68b['insertionPosition'],_0x408151)),null!=_0x5ac68b['wasUndone']&&_0x5ac68b['hasOwnProperty']('wasUndone')&&(_0x182d8f['wasUndone']=_0x5ac68b['wasUndone']),_0x182d8f;},_0x4733df['prototype']['toJSON']=function(){return this['constructor']['toObject'](this,_0x18347d['util']['toJSONOptions']);},_0x4733df['getTypeUrl']=function(_0x55a86d){return void 0x0===_0x55a86d&&(_0x55a86d='type.googleapis.com'),_0x55a86d+'/SplitOperation';},_0x4733df;})()),T=v['Position']=((()=>{function _0x44d15e(_0x73c9bd){if(this['path']=[],_0x73c9bd){for(let _0x4efa47=Object['keys'](_0x73c9bd),_0x4405b5=0x0;_0x4405b5<_0x4efa47['length'];++_0x4405b5)null!=_0x73c9bd[_0x4efa47[_0x4405b5]]&&(this[_0x4efa47[_0x4405b5]]=_0x73c9bd[_0x4efa47[_0x4405b5]]);}}return _0x44d15e['prototype']['root']='',_0x44d15e['prototype']['rootMain']=!0x1,_0x44d15e['prototype']['rootGraveyard']=!0x1,_0x44d15e['prototype']['path']=k['emptyArray'],_0x44d15e['prototype']['stickiness']='',_0x44d15e['create']=function(_0x2b07a5){return new _0x44d15e(_0x2b07a5);},_0x44d15e['encode']=function(_0x248d95,_0x1dc06a){if(_0x1dc06a||(_0x1dc06a=y['create']()),null!=_0x248d95['root']&&Object['hasOwnProperty']['call'](_0x248d95,'root')&&_0x1dc06a['uint32'](0xa)['string'](_0x248d95['root']),null!=_0x248d95['rootMain']&&Object['hasOwnProperty']['call'](_0x248d95,'rootMain')&&_0x1dc06a['uint32'](0x10)['bool'](_0x248d95['rootMain']),null!=_0x248d95['rootGraveyard']&&Object['hasOwnProperty']['call'](_0x248d95,'rootGraveyard')&&_0x1dc06a['uint32'](0x18)['bool'](_0x248d95['rootGraveyard']),null!=_0x248d95['path']&&_0x248d95['path']['length']){_0x1dc06a['uint32'](0x22)['fork']();for(let _0x6bc77b=0x0;_0x6bc77b<_0x248d95['path']['length'];++_0x6bc77b)_0x1dc06a['uint32'](_0x248d95['path'][_0x6bc77b]);_0x1dc06a['ldelim']();}return null!=_0x248d95['stickiness']&&Object['hasOwnProperty']['call'](_0x248d95,'stickiness')&&_0x1dc06a['uint32'](0x2a)['string'](_0x248d95['stickiness']),_0x1dc06a;},_0x44d15e['encodeDelimited']=function(_0x645e2d,_0x221517){return this['encode'](_0x645e2d,_0x221517)['ldelim']();},_0x44d15e['decode']=function(_0x18ae83,_0x5bb0d5){_0x18ae83 instanceof j||(_0x18ae83=j['create'](_0x18ae83));let _0x2e88b8=void 0x0===_0x5bb0d5?_0x18ae83['len']:_0x18ae83['pos']+_0x5bb0d5,_0x2c1910=new v['Position']();for(;_0x18ae83['pos']<_0x2e88b8;){let _0x454074=_0x18ae83['uint32']();switch(_0x454074>>>0x3){case 0x1:_0x2c1910['root']=_0x18ae83['string']();break;case 0x2:_0x2c1910['rootMain']=_0x18ae83['bool']();break;case 0x3:_0x2c1910['rootGraveyard']=_0x18ae83['bool']();break;case 0x4:if(_0x2c1910['path']&&_0x2c1910['path']['length']||(_0x2c1910['path']=[]),0x2==(0x7&_0x454074)){let _0x5236f3=_0x18ae83['uint32']()+_0x18ae83['pos'];for(;_0x18ae83['pos']<_0x5236f3;)_0x2c1910['path']['push'](_0x18ae83['uint32']());}else _0x2c1910['path']['push'](_0x18ae83['uint32']());break;case 0x5:_0x2c1910['stickiness']=_0x18ae83['string']();break;default:_0x18ae83['skipType'](0x7&_0x454074);}}return _0x2c1910;},_0x44d15e['decodeDelimited']=function(_0x3518c7){return _0x3518c7 instanceof j||(_0x3518c7=new j(_0x3518c7)),this['decode'](_0x3518c7,_0x3518c7['uint32']());},_0x44d15e['verify']=function(_0x21a63d){if('object'!=typeof _0x21a63d||null===_0x21a63d)return'object\x20expected';if(null!=_0x21a63d['root']&&_0x21a63d['hasOwnProperty']('root')&&!k['isString'](_0x21a63d['root']))return'root:\x20string\x20expected';if(null!=_0x21a63d['rootMain']&&_0x21a63d['hasOwnProperty']('rootMain')&&'boolean'!=typeof _0x21a63d['rootMain'])return'rootMain:\x20boolean\x20expected';if(null!=_0x21a63d['rootGraveyard']&&_0x21a63d['hasOwnProperty']('rootGraveyard')&&'boolean'!=typeof _0x21a63d['rootGraveyard'])return'rootGraveyard:\x20boolean\x20expected';if(null!=_0x21a63d['path']&&_0x21a63d['hasOwnProperty']('path')){if(!Array['isArray'](_0x21a63d['path']))return'path:\x20array\x20expected';for(let _0x1f85d0=0x0;_0x1f85d0<_0x21a63d['path']['length'];++_0x1f85d0)if(!k['isInteger'](_0x21a63d['path'][_0x1f85d0]))return'path:\x20integer[]\x20expected';}return null!=_0x21a63d['stickiness']&&_0x21a63d['hasOwnProperty']('stickiness')&&!k['isString'](_0x21a63d['stickiness'])?'stickiness:\x20string\x20expected':null;},_0x44d15e['fromObject']=function(_0xe821b){if(_0xe821b instanceof v['Position'])return _0xe821b;let _0x57a5f2=new v['Position']();if(null!=_0xe821b['root']&&(_0x57a5f2['root']=String(_0xe821b['root'])),null!=_0xe821b['rootMain']&&(_0x57a5f2['rootMain']=Boolean(_0xe821b['rootMain'])),null!=_0xe821b['rootGraveyard']&&(_0x57a5f2['rootGraveyard']=Boolean(_0xe821b['rootGraveyard'])),_0xe821b['path']){if(!Array['isArray'](_0xe821b['path']))throw TypeError('.Position.path:\x20array\x20expected');_0x57a5f2['path']=[];for(let _0x20c710=0x0;_0x20c710<_0xe821b['path']['length'];++_0x20c710)_0x57a5f2['path'][_0x20c710]=_0xe821b['path'][_0x20c710]>>>0x0;}return null!=_0xe821b['stickiness']&&(_0x57a5f2['stickiness']=String(_0xe821b['stickiness'])),_0x57a5f2;},_0x44d15e['toObject']=function(_0xd1fcda,_0x43c9ed){_0x43c9ed||(_0x43c9ed={});let _0x2ca63d={};if((_0x43c9ed['arrays']||_0x43c9ed['defaults'])&&(_0x2ca63d['path']=[]),_0x43c9ed['defaults']&&(_0x2ca63d['root']='',_0x2ca63d['rootMain']=!0x1,_0x2ca63d['rootGraveyard']=!0x1,_0x2ca63d['stickiness']=''),null!=_0xd1fcda['root']&&_0xd1fcda['hasOwnProperty']('root')&&(_0x2ca63d['root']=_0xd1fcda['root']),null!=_0xd1fcda['rootMain']&&_0xd1fcda['hasOwnProperty']('rootMain')&&(_0x2ca63d['rootMain']=_0xd1fcda['rootMain']),null!=_0xd1fcda['rootGraveyard']&&_0xd1fcda['hasOwnProperty']('rootGraveyard')&&(_0x2ca63d['rootGraveyard']=_0xd1fcda['rootGraveyard']),_0xd1fcda['path']&&_0xd1fcda['path']['length']){_0x2ca63d['path']=[];for(let _0x330544=0x0;_0x330544<_0xd1fcda['path']['length'];++_0x330544)_0x2ca63d['path'][_0x330544]=_0xd1fcda['path'][_0x330544];}return null!=_0xd1fcda['stickiness']&&_0xd1fcda['hasOwnProperty']('stickiness')&&(_0x2ca63d['stickiness']=_0xd1fcda['stickiness']),_0x2ca63d;},_0x44d15e['prototype']['toJSON']=function(){return this['constructor']['toObject'](this,_0x18347d['util']['toJSONOptions']);},_0x44d15e['getTypeUrl']=function(_0x18a4a1){return void 0x0===_0x18a4a1&&(_0x18a4a1='type.googleapis.com'),_0x18a4a1+'/Position';},_0x44d15e;})()),C=v['Range']=((()=>{function _0x1bb47f(_0x2f2e33){if(_0x2f2e33){for(let _0x4549c0=Object['keys'](_0x2f2e33),_0x2b2c4c=0x0;_0x2b2c4c<_0x4549c0['length'];++_0x2b2c4c)null!=_0x2f2e33[_0x4549c0[_0x2b2c4c]]&&(this[_0x4549c0[_0x2b2c4c]]=_0x2f2e33[_0x4549c0[_0x2b2c4c]]);}}return _0x1bb47f['prototype']['start']=null,_0x1bb47f['prototype']['end']=null,_0x1bb47f['create']=function(_0x5ef699){return new _0x1bb47f(_0x5ef699);},_0x1bb47f['encode']=function(_0x3dd532,_0xebe234){return _0xebe234||(_0xebe234=y['create']()),null!=_0x3dd532['start']&&Object['hasOwnProperty']['call'](_0x3dd532,'start')&&v['Position']['encode'](_0x3dd532['start'],_0xebe234['uint32'](0xa)['fork']())['ldelim'](),null!=_0x3dd532['end']&&Object['hasOwnProperty']['call'](_0x3dd532,'end')&&v['Position']['encode'](_0x3dd532['end'],_0xebe234['uint32'](0x12)['fork']())['ldelim'](),_0xebe234;},_0x1bb47f['encodeDelimited']=function(_0x35ca06,_0x399301){return this['encode'](_0x35ca06,_0x399301)['ldelim']();},_0x1bb47f['decode']=function(_0x3bb2ab,_0x307d67){_0x3bb2ab instanceof j||(_0x3bb2ab=j['create'](_0x3bb2ab));let _0x4083e8=void 0x0===_0x307d67?_0x3bb2ab['len']:_0x3bb2ab['pos']+_0x307d67,_0x11bd52=new v['Range']();for(;_0x3bb2ab['pos']<_0x4083e8;){let _0x1cd2c7=_0x3bb2ab['uint32']();switch(_0x1cd2c7>>>0x3){case 0x1:_0x11bd52['start']=v['Position']['decode'](_0x3bb2ab,_0x3bb2ab['uint32']());break;case 0x2:_0x11bd52['end']=v['Position']['decode'](_0x3bb2ab,_0x3bb2ab['uint32']());break;default:_0x3bb2ab['skipType'](0x7&_0x1cd2c7);}}return _0x11bd52;},_0x1bb47f['decodeDelimited']=function(_0x439293){return _0x439293 instanceof j||(_0x439293=new j(_0x439293)),this['decode'](_0x439293,_0x439293['uint32']());},_0x1bb47f['verify']=function(_0xffd499){if('object'!=typeof _0xffd499||null===_0xffd499)return'object\x20expected';if(null!=_0xffd499['start']&&_0xffd499['hasOwnProperty']('start')){let _0x587547=v['Position']['verify'](_0xffd499['start']);if(_0x587547)return'start.'+_0x587547;}if(null!=_0xffd499['end']&&_0xffd499['hasOwnProperty']('end')){let _0x337a05=v['Position']['verify'](_0xffd499['end']);if(_0x337a05)return'end.'+_0x337a05;}return null;},_0x1bb47f['fromObject']=function(_0x53618f){if(_0x53618f instanceof v['Range'])return _0x53618f;let _0x94e535=new v['Range']();if(null!=_0x53618f['start']){if('object'!=typeof _0x53618f['start'])throw TypeError('.Range.start:\x20object\x20expected');_0x94e535['start']=v['Position']['fromObject'](_0x53618f['start']);}if(null!=_0x53618f['end']){if('object'!=typeof _0x53618f['end'])throw TypeError('.Range.end:\x20object\x20expected');_0x94e535['end']=v['Position']['fromObject'](_0x53618f['end']);}return _0x94e535;},_0x1bb47f['toObject']=function(_0x50284d,_0x343150){_0x343150||(_0x343150={});let _0x595210={};return _0x343150['defaults']&&(_0x595210['start']=null,_0x595210['end']=null),null!=_0x50284d['start']&&_0x50284d['hasOwnProperty']('start')&&(_0x595210['start']=v['Position']['toObject'](_0x50284d['start'],_0x343150)),null!=_0x50284d['end']&&_0x50284d['hasOwnProperty']('end')&&(_0x595210['end']=v['Position']['toObject'](_0x50284d['end'],_0x343150)),_0x595210;},_0x1bb47f['prototype']['toJSON']=function(){return this['constructor']['toObject'](this,_0x18347d['util']['toJSONOptions']);},_0x1bb47f['getTypeUrl']=function(_0xff0f2){return void 0x0===_0xff0f2&&(_0xff0f2='type.googleapis.com'),_0xff0f2+'/Range';},_0x1bb47f;})()),D=v['Element']=((()=>{function _0x121af7(_0x56aa9b){if(this['children']=[],this['attributesBoolean']={},_0x56aa9b){for(let _0x1ef11a=Object['keys'](_0x56aa9b),_0x54d6ec=0x0;_0x54d6ec<_0x1ef11a['length'];++_0x54d6ec)null!=_0x56aa9b[_0x1ef11a[_0x54d6ec]]&&(this[_0x1ef11a[_0x54d6ec]]=_0x56aa9b[_0x1ef11a[_0x54d6ec]]);}}return _0x121af7['prototype']['name']='',_0x121af7['prototype']['children']=k['emptyArray'],_0x121af7['prototype']['data']='',_0x121af7['prototype']['attributesBoolean']=k['emptyObject'],_0x121af7['prototype']['attributesJson']='',_0x121af7['create']=function(_0xff9135){return new _0x121af7(_0xff9135);},_0x121af7['encode']=function(_0x3caf15,_0x57ff07){if(_0x57ff07||(_0x57ff07=y['create']()),null!=_0x3caf15['name']&&Object['hasOwnProperty']['call'](_0x3caf15,'name')&&_0x57ff07['uint32'](0xa)['string'](_0x3caf15['name']),null!=_0x3caf15['children']&&_0x3caf15['children']['length']){for(let _0x20348e=0x0;_0x20348e<_0x3caf15['children']['length'];++_0x20348e)v['Element']['encode'](_0x3caf15['children'][_0x20348e],_0x57ff07['uint32'](0x12)['fork']())['ldelim']();}if(null!=_0x3caf15['data']&&Object['hasOwnProperty']['call'](_0x3caf15,'data')&&_0x57ff07['uint32'](0x1a)['string'](_0x3caf15['data']),null!=_0x3caf15['attributesBoolean']&&Object['hasOwnProperty']['call'](_0x3caf15,'attributesBoolean')){for(let _0x171cbf=Object['keys'](_0x3caf15['attributesBoolean']),_0x5c7e75=0x0;_0x5c7e75<_0x171cbf['length'];++_0x5c7e75)_0x57ff07['uint32'](0x22)['fork']()['uint32'](0xa)['string'](_0x171cbf[_0x5c7e75])['uint32'](0x10)['bool'](_0x3caf15['attributesBoolean'][_0x171cbf[_0x5c7e75]])['ldelim']();}return null!=_0x3caf15['attributesJson']&&Object['hasOwnProperty']['call'](_0x3caf15,'attributesJson')&&_0x57ff07['uint32'](0x2a)['string'](_0x3caf15['attributesJson']),_0x57ff07;},_0x121af7['encodeDelimited']=function(_0x2ee516,_0x159c57){return this['encode'](_0x2ee516,_0x159c57)['ldelim']();},_0x121af7['decode']=function(_0x4f1a1d,_0x437df8){_0x4f1a1d instanceof j||(_0x4f1a1d=j['create'](_0x4f1a1d));let _0x3fd344,_0x17a91b,_0xebb566=void 0x0===_0x437df8?_0x4f1a1d['len']:_0x4f1a1d['pos']+_0x437df8,_0x27a55b=new v['Element']();for(;_0x4f1a1d['pos']<_0xebb566;){let _0x2fc11e=_0x4f1a1d['uint32']();switch(_0x2fc11e>>>0x3){case 0x1:_0x27a55b['name']=_0x4f1a1d['string']();break;case 0x2:_0x27a55b['children']&&_0x27a55b['children']['length']||(_0x27a55b['children']=[]),_0x27a55b['children']['push'](v['Element']['decode'](_0x4f1a1d,_0x4f1a1d['uint32']()));break;case 0x3:_0x27a55b['data']=_0x4f1a1d['string']();break;case 0x4:{_0x27a55b['attributesBoolean']===k['emptyObject']&&(_0x27a55b['attributesBoolean']={});let _0x452ac7=_0x4f1a1d['uint32']()+_0x4f1a1d['pos'];for(_0x3fd344='',_0x17a91b=!0x1;_0x4f1a1d['pos']<_0x452ac7;){let _0xe37b=_0x4f1a1d['uint32']();switch(_0xe37b>>>0x3){case 0x1:_0x3fd344=_0x4f1a1d['string']();break;case 0x2:_0x17a91b=_0x4f1a1d['bool']();break;default:_0x4f1a1d['skipType'](0x7&_0xe37b);}}_0x27a55b['attributesBoolean'][_0x3fd344]=_0x17a91b;break;}case 0x5:_0x27a55b['attributesJson']=_0x4f1a1d['string']();break;default:_0x4f1a1d['skipType'](0x7&_0x2fc11e);}}return _0x27a55b;},_0x121af7['decodeDelimited']=function(_0x27913e){return _0x27913e instanceof j||(_0x27913e=new j(_0x27913e)),this['decode'](_0x27913e,_0x27913e['uint32']());},_0x121af7['verify']=function(_0x3a57e8){if('object'!=typeof _0x3a57e8||null===_0x3a57e8)return'object\x20expected';if(null!=_0x3a57e8['name']&&_0x3a57e8['hasOwnProperty']('name')&&!k['isString'](_0x3a57e8['name']))return'name:\x20string\x20expected';if(null!=_0x3a57e8['children']&&_0x3a57e8['hasOwnProperty']('children')){if(!Array['isArray'](_0x3a57e8['children']))return'children:\x20array\x20expected';for(let _0x20d50a=0x0;_0x20d50a<_0x3a57e8['children']['length'];++_0x20d50a){let _0x20ecb5=v['Element']['verify'](_0x3a57e8['children'][_0x20d50a]);if(_0x20ecb5)return'children.'+_0x20ecb5;}}if(null!=_0x3a57e8['data']&&_0x3a57e8['hasOwnProperty']('data')&&!k['isString'](_0x3a57e8['data']))return'data:\x20string\x20expected';if(null!=_0x3a57e8['attributesBoolean']&&_0x3a57e8['hasOwnProperty']('attributesBoolean')){if(!k['isObject'](_0x3a57e8['attributesBoolean']))return'attributesBoolean:\x20object\x20expected';let _0x5794a5=Object['keys'](_0x3a57e8['attributesBoolean']);for(let _0x26f1ce=0x0;_0x26f1ce<_0x5794a5['length'];++_0x26f1ce)if('boolean'!=typeof _0x3a57e8['attributesBoolean'][_0x5794a5[_0x26f1ce]])return'attributesBoolean:\x20boolean{k:string}\x20expected';}return null!=_0x3a57e8['attributesJson']&&_0x3a57e8['hasOwnProperty']('attributesJson')&&!k['isString'](_0x3a57e8['attributesJson'])?'attributesJson:\x20string\x20expected':null;},_0x121af7['fromObject']=function(_0x2d5353){if(_0x2d5353 instanceof v['Element'])return _0x2d5353;let _0x41dd10=new v['Element']();if(null!=_0x2d5353['name']&&(_0x41dd10['name']=String(_0x2d5353['name'])),_0x2d5353['children']){if(!Array['isArray'](_0x2d5353['children']))throw TypeError('.Element.children:\x20array\x20expected');_0x41dd10['children']=[];for(let _0x19e8e6=0x0;_0x19e8e6<_0x2d5353['children']['length'];++_0x19e8e6){if('object'!=typeof _0x2d5353['children'][_0x19e8e6])throw TypeError('.Element.children:\x20object\x20expected');_0x41dd10['children'][_0x19e8e6]=v['Element']['fromObject'](_0x2d5353['children'][_0x19e8e6]);}}if(null!=_0x2d5353['data']&&(_0x41dd10['data']=String(_0x2d5353['data'])),_0x2d5353['attributesBoolean']){if('object'!=typeof _0x2d5353['attributesBoolean'])throw TypeError('.Element.attributesBoolean:\x20object\x20expected');_0x41dd10['attributesBoolean']={};for(let _0x533992=Object['keys'](_0x2d5353['attributesBoolean']),_0xeb05a1=0x0;_0xeb05a1<_0x533992['length'];++_0xeb05a1)_0x41dd10['attributesBoolean'][_0x533992[_0xeb05a1]]=Boolean(_0x2d5353['attributesBoolean'][_0x533992[_0xeb05a1]]);}return null!=_0x2d5353['attributesJson']&&(_0x41dd10['attributesJson']=String(_0x2d5353['attributesJson'])),_0x41dd10;},_0x121af7['toObject']=function(_0x23dc18,_0x53982a){_0x53982a||(_0x53982a={});let _0x138725,_0x2ccb1f={};if((_0x53982a['arrays']||_0x53982a['defaults'])&&(_0x2ccb1f['children']=[]),(_0x53982a['objects']||_0x53982a['defaults'])&&(_0x2ccb1f['attributesBoolean']={}),_0x53982a['defaults']&&(_0x2ccb1f['name']='',_0x2ccb1f['data']='',_0x2ccb1f['attributesJson']=''),null!=_0x23dc18['name']&&_0x23dc18['hasOwnProperty']('name')&&(_0x2ccb1f['name']=_0x23dc18['name']),_0x23dc18['children']&&_0x23dc18['children']['length']){_0x2ccb1f['children']=[];for(let _0x520b7c=0x0;_0x520b7c<_0x23dc18['children']['length'];++_0x520b7c)_0x2ccb1f['children'][_0x520b7c]=v['Element']['toObject'](_0x23dc18['children'][_0x520b7c],_0x53982a);}if(null!=_0x23dc18['data']&&_0x23dc18['hasOwnProperty']('data')&&(_0x2ccb1f['data']=_0x23dc18['data']),_0x23dc18['attributesBoolean']&&(_0x138725=Object['keys'](_0x23dc18['attributesBoolean']))['length']){_0x2ccb1f['attributesBoolean']={};for(let _0x4171ff=0x0;_0x4171ff<_0x138725['length'];++_0x4171ff)_0x2ccb1f['attributesBoolean'][_0x138725[_0x4171ff]]=_0x23dc18['attributesBoolean'][_0x138725[_0x4171ff]];}return null!=_0x23dc18['attributesJson']&&_0x23dc18['hasOwnProperty']('attributesJson')&&(_0x2ccb1f['attributesJson']=_0x23dc18['attributesJson']),_0x2ccb1f;},_0x121af7['prototype']['toJSON']=function(){return this['constructor']['toObject'](this,_0x18347d['util']['toJSONOptions']);},_0x121af7['getTypeUrl']=function(_0x296669){return void 0x0===_0x296669&&(_0x296669='type.googleapis.com'),_0x296669+'/Element';},_0x121af7;})());var u=Object['freeze']({'__proto__':null,'AttributeOperation':M,'Element':D,'InsertOperation':B,'MarkerOperation':V,'MergeOperation':S,'MoveOperation':U,'Position':T,'Range':C,'RenameOperation':A,'RootAttributeOperation':N,'RootOperation':R,'SplitOperation':E,'default':v});class r{['getDescriptor'](_0x10d9aa){return new I(this['_protobufRoot'][_0x10d9aa]);}constructor(){this['_protobufRoot']=u;}}class I{['compress'](_0x4b141f){const _0x58bc43=this['_protobuf']['verify'](_0x4b141f);if(_0x58bc43)throw Error(_0x58bc43);return this['_protobuf']['encode'](this['_protobuf']['create'](_0x4b141f))['finish']();}['decompress'](_0x4f1594){return this['_protobuf']['toObject'](this['_protobuf']['decode'](_0x4f1594),{'oneofs':!0x0});}constructor(_0x2a2035){this['_protobuf']=_0x2a2035;}}function _(_0x22053e,_0xdbbc19){const _0x3aabeb=_0xee847f(_0x22053e);return _0x3aabeb['path'][_0x3aabeb['path']['length']-0x1]+=_0xdbbc19,_0x3aabeb;}function O(_0x49dc6a,_0x532ddd){return _0x49dc6a['root']===_0x532ddd['root']&&_0x21ea38(_0x49dc6a['path'],_0x532ddd['path']);}function $(_0x1c0a18){P(_0x1c0a18,_0x36a5ad=>('main'==_0x36a5ad['root']?(_0x36a5ad['rootMain']=!0x0,delete _0x36a5ad['root']):'$graveyard'==_0x36a5ad['root']&&(_0x36a5ad['rootGraveyard']=!0x0,delete _0x36a5ad['root']),_0x36a5ad));}function J(_0x1b64b2){P(_0x1b64b2,_0x23f007=>(_0x23f007['rootMain']?(_0x23f007['root']='main',delete _0x23f007['rootMain']):_0x23f007['rootGraveyard']&&(_0x23f007['root']='$graveyard',delete _0x23f007['rootGraveyard']),_0x23f007));}function P(_0x53a086,_0x58c867){for(const _0x5a3b12 in _0x53a086){const _0x119102=_0x53a086[_0x5a3b12];'nodes'!==_0x5a3b12&&_0xcaa2a9(_0x119102)&&(_0x119102['path']&&(_0x119102['root']||_0x119102['rootMain']||_0x119102['rootGraveyard'])?_0x53a086[_0x5a3b12]=_0x58c867(_0x119102):P(_0x119102,_0x58c867));}return _0x53a086;}class e{['compress'](_0xc58df0,_0x2f30f6){const _0x53ff51=_0x2f30f6['shift']();return $(_0x53ff51),_0xc58df0['buffers']['push'](this['_protobufDescriptor']['compress'](_0x53ff51)),_0xc58df0['types']['push'](this['_id']),!0x0;}['decompress'](_0x4898cf,_0x5787de){_0x5787de['types']['shift']();const _0x44d1f9=this['_protobufDescriptor']['decompress'](_0x5787de['buffers']['shift']());J(_0x44d1f9),_0x44d1f9['__className']=this['_operationName'],_0x4898cf['push'](_0x44d1f9);}constructor(_0x2f422b,_0x40be5b,_0x288b79){this['_id']=_0x2f422b,this['_operationName']=_0x40be5b,this['_protobufDescriptor']=_0x288b79;}}class s extends e{['compress'](_0x15b0e7,_0x38c557){const _0xe45f47=_0x38c557['shift']();return this['_serializeOneOf']('oldValue',_0xe45f47),this['_serializeOneOf']('newValue',_0xe45f47),$(_0xe45f47),_0x15b0e7['buffers']['push'](this['_protobufDescriptor']['compress'](_0xe45f47)),_0x15b0e7['types']['push'](this['_id']),!0x0;}['decompress'](_0x4eac90,_0x28d989){const {types:_0x4d094e,buffers:_0xbfd34b}=_0x28d989,_0x100f16=this['_protobufDescriptor']['decompress'](_0xbfd34b['shift']());_0x4d094e['shift'](),this['_deserializeOneOf']('oldValue',_0x100f16),this['_deserializeOneOf']('newValue',_0x100f16),J(_0x100f16),_0x100f16['__className']=this['_operationName'],_0x4eac90['push'](_0x100f16);}['_serializeOneOf'](_0x47294f,_0x396066){const _0x3a68a6=_0x396066[_0x47294f];'boolean'==typeof _0x3a68a6?_0x396066[_0x47294f+'Boolean']=_0x3a68a6:_0x396066[_0x47294f+'Json']=JSON['stringify'](_0x3a68a6);}['_deserializeOneOf'](_0x40ce25,_0x391c90){const _0x63b252=_0x40ce25+'Json';_0x391c90[_0x63b252]?(_0x391c90[_0x40ce25]=JSON['parse'](_0x391c90[_0x63b252]),delete _0x391c90[_0x63b252]):(_0x391c90[_0x40ce25]=_0x391c90[_0x40ce25+'Boolean'],delete _0x391c90[_0x40ce25+'Boolean']);}}class i extends e{['compress'](_0x2a3cd1,_0x43c562){const _0x2f814e=_0x43c562['shift']();return this['_serializeNodesAttributes'](_0x2f814e['nodes']),$(_0x2f814e),_0x2a3cd1['buffers']['push'](this['_protobufDescriptor']['compress'](_0x2f814e)),_0x2a3cd1['types']['push'](this['_id']),!0x0;}['decompress'](_0x2cd7dc,_0x89b4fd){const {types:_0x4ed09d,buffers:_0x2e18d0}=_0x89b4fd,_0x21b7dc=this['_protobufDescriptor']['decompress'](_0x2e18d0['shift']());_0x4ed09d['shift'](),_0x21b7dc['nodes']||(_0x21b7dc['nodes']=[]),this['_deserializeNodesAttributes'](_0x21b7dc['nodes']),J(_0x21b7dc),_0x21b7dc['__className']=this['_operationName'],_0x2cd7dc['push'](_0x21b7dc);}['_serializeNodesAttributes'](_0x439b0c){for(const _0x2ce453 of _0x439b0c){if(_0x2ce453['attributes']){const _0x178fde=_0x2ce453['attributes'];this['_areValuesBoolean'](_0x178fde)?_0x2ce453['attributesBoolean']=_0x178fde:_0x2ce453['attributesJson']=JSON['stringify'](_0x178fde);}_0x2ce453['children']&&this['_serializeNodesAttributes'](_0x2ce453['children']);}}['_deserializeNodesAttributes'](_0x882c28){for(const _0x263eca of _0x882c28)(_0x263eca['attributesBoolean']||_0x263eca['attributesJson'])&&(_0x263eca['attributesBoolean']?(_0x263eca['attributes']=_0x263eca['attributesBoolean'],delete _0x263eca['attributesBoolean']):(_0x263eca['attributes']=JSON['parse'](_0x263eca['attributesJson']),delete _0x263eca['attributesJson'])),_0x263eca['children']&&this['_deserializeNodesAttributes'](_0x263eca['children']);}['_areValuesBoolean'](_0x3ca771){return Object['keys'](_0x3ca771)['every'](_0x32391c=>'boolean'==typeof _0x3ca771[_0x32391c]);}}class n extends e{['decompress'](_0xf46514,_0x445b57){super['decompress'](_0xf46514,_0x445b57);const _0x4e6b0b=_0xf46514[_0xf46514['length']-0x1];_0x4e6b0b['oldRange']||(_0x4e6b0b['oldRange']=null),_0x4e6b0b['newRange']||(_0x4e6b0b['newRange']=null);}}class p extends e{['compress'](_0x239249,_0x1b798f){return _0x1b798f['shift'](),_0x239249['types']['push'](this['_id']),!0x0;}['decompress'](_0x244a0e,_0x5eb327){_0x5eb327['types']['shift'](),_0x244a0e['push']({'__className':this['_operationName']});}}class a extends n{['compress'](_0x264049,_0x150c20){return!('MarkerOperation'!=_0x150c20[0x0]['__className']||!_0x150c20[0x0]['name']['startsWith'](this['_omittedNamespace']))&&(_0x150c20[0x0]['name']=_0x150c20[0x0]['name']['replace'](new RegExp('^'+this['_omittedNamespace']),''),super['compress'](_0x264049,_0x150c20),!0x0);}['decompress'](_0x377333,_0x1c4ae6){super['decompress'](_0x377333,_0x1c4ae6);const _0x5506e4=_0x377333[_0x377333['length']-0x1];_0x5506e4['name']=this['_omittedNamespace']+_0x5506e4['name'];}constructor(_0x37658d,_0x2416da,_0x47c23e,_0x1ea475){super(_0x37658d,_0x2416da,_0x47c23e),this['_omittedNamespace']=_0x1ea475+':';}}class b{['compress'](_0xd452f3,_0x56719d){let _0xddafa5;for(;_0x56719d['length']>0x1&&this['_compareOperations'](_0x56719d[0x0],_0x56719d[0x1]);)_0xddafa5?(_0xddafa5=this['_combineNext'](_0x56719d['shift'](),_0xddafa5),_0xd452f3['types']['push'](0x0)):(_0xddafa5=_0xee847f(_0x56719d['shift']()),_0xd452f3['types']['push'](this['_id']));return!!_0xddafa5&&(_0xddafa5=this['_combineNext'](_0x56719d['shift'](),_0xddafa5),_0xd452f3['types']['push'](0x0),_0xd452f3['buffers']['push'](this['_compressSingleOperation'](_0xddafa5)),!0x0);}['decompress'](_0x3d7fa5,_0x36f440){const _0x40a989=this['_decompressSingleOperation'](_0x36f440);for(;0x0==_0x36f440['types'][0x0];)_0x36f440['types']['shift'](),_0x3d7fa5['push'](this['_splitCurrent'](_0x40a989));_0x3d7fa5['push'](_0x40a989);}constructor(_0x393f6c,_0x4927e){this['_id']=_0x393f6c,this['_context']=_0x4927e;}}class m extends b{['_combineNext'](_0x315b25,_0x2a58df){return _0x2a58df['nodes'][0x0]['data']+=_0x315b25['nodes'][0x0]['data'],_0x2a58df;}['_splitCurrent'](_0x2d2a8d){const _0x722d06=_0xee847f(_0x2d2a8d),_0x1225a1=_0x722d06['nodes'][0x0],_0x146941=_0x2d2a8d['nodes'][0x0],_0x2d3b50=_0x146941['data'][Symbol['iterator']]()['next']()['value'],_0x3e4723=_0x2d3b50['length'];return _0x1225a1['data']=_0x2d3b50,_0x146941['data']=_0x146941['data']['substr'](_0x3e4723),_0x2d2a8d['position']=_(_0x2d2a8d['position'],_0x3e4723),_0x722d06;}['_compareOperations'](_0x314fce,_0x3e71e5){if(this['_checkOperation'](_0x314fce)&&this['_checkOperation'](_0x3e71e5)){const _0x4a3112=_0x314fce['nodes'][0x0]['data']['length'],_0x2903b4=O(_(_0x314fce['position'],_0x4a3112),_0x3e71e5['position']),_0x8449d5=_0x314fce['nodes'][0x0],_0x576180=_0x3e71e5['nodes'][0x0];return _0x2903b4&&this['_compareAttributes'](_0x8449d5,_0x576180);}return!0x1;}['_compressSingleOperation'](_0x359e08){const _0x1fc0f7={'types':[],'buffers':[],'baseVersion':0x0};return this['_context']['_getCompressorByName']('InsertOperation')['compress'](_0x1fc0f7,[_0x359e08]),_0x1fc0f7['buffers'][0x0];}['_decompressSingleOperation'](_0xe3a9a5){const _0x83f7c6=[];return this['_context']['_getCompressorByName']('InsertOperation')['decompress'](_0x83f7c6,_0xe3a9a5),_0x83f7c6[0x0];}['_checkOperation'](_0x5a04e5){return'InsertOperation'==_0x5a04e5['__className']&&0x1==_0x5a04e5['nodes']['length']&&_0x5a04e5['nodes'][0x0]['data']&&!_0x5a04e5['wasUndone']&&0x1==Array['from'](_0x5a04e5['nodes'][0x0]['data'])['length'];}['_compareAttributes'](_0x24cfc4,_0x38f85d){const _0x514246=Object['keys'](_0x24cfc4['attributes']||{}),_0x5e124b=Object['keys'](_0x38f85d['attributes']||{});return _0x514246['length']===_0x5e124b['length']&&_0x514246['every'](_0x42da15=>_0x38f85d['attributes'][_0x42da15]&&_0x38f85d['attributes'][_0x42da15]===_0x24cfc4['attributes'][_0x42da15]);}}class c extends b{['_combineNext'](_0xeeb4e1,_0x360bf1){return _0x360bf1['howMany']++,_0x360bf1['sourcePosition']=_0xee847f(_0xeeb4e1['sourcePosition']),_0x360bf1;}['_splitCurrent'](_0x4db8f7){const _0x3d9c5a=_0xee847f(_0x4db8f7);return _0x4db8f7['howMany']--,_0x3d9c5a['howMany']=0x1,_0x3d9c5a['sourcePosition']=_(_0x3d9c5a['sourcePosition'],_0x4db8f7['howMany']),_0x3d9c5a;}['_compareOperations'](_0x19fb3c,_0x413a28){return!(!this['_checkOperation'](_0x19fb3c)||!this['_checkOperation'](_0x413a28))&&(O(_(_0x19fb3c['sourcePosition'],-0x1),_0x413a28['sourcePosition'])&&O(_0x19fb3c['targetPosition'],_0x413a28['targetPosition']));}['_compressSingleOperation'](_0x45e0f0){const _0x3bbffa={'types':[],'buffers':[],'baseVersion':0x0};return this['_context']['_getCompressorByName']('MoveOperation')['compress'](_0x3bbffa,[_0x45e0f0]),_0x3bbffa['buffers'][0x0];}['_decompressSingleOperation'](_0x2939e1){const _0x2c7b5c=[];return this['_context']['_getCompressorByName']('MoveOperation')['decompress'](_0x2c7b5c,_0x2939e1),_0x2c7b5c[0x0];}['_checkOperation'](_0x238701){return'MoveOperation'==_0x238701['__className']&&'$graveyard'==_0x238701['targetPosition']['root']&&0x1==_0x238701['howMany']&&!_0x238701['wasUndone'];}}class h extends b{['_combineNext'](_0x590e0a,_0xb315e5){return _0xb315e5['howMany']++,_0xb315e5;}['_splitCurrent'](_0x4eb246){const _0x3b6151=_0xee847f(_0x4eb246);return _0x3b6151['howMany']=0x1,_0x4eb246['howMany']--,_0x3b6151;}['_compareOperations'](_0x107ea3,_0x2b85c1){return!(!this['_checkOperation'](_0x107ea3)||!this['_checkOperation'](_0x2b85c1))&&(O(_0x107ea3['sourcePosition'],_0x2b85c1['sourcePosition'])&&O(_0x107ea3['targetPosition'],_0x2b85c1['targetPosition']));}['_compressSingleOperation'](_0x5f2799){const _0x5dc201={'types':[],'buffers':[],'baseVersion':0x0};return this['_context']['_getCompressorByName']('MoveOperation')['compress'](_0x5dc201,[_0x5f2799]),_0x5dc201['buffers'][0x0];}['_decompressSingleOperation'](_0x209e5d){const _0x12caca=[];return this['_context']['_getCompressorByName']('MoveOperation')['decompress'](_0x12caca,_0x209e5d),_0x12caca[0x0];}['_checkOperation'](_0x41f7e2){return'MoveOperation'==_0x41f7e2['__className']&&'$graveyard'==_0x41f7e2['targetPosition']['root']&&0x1==_0x41f7e2['howMany']&&!_0x41f7e2['wasUndone'];}}class f extends b{['compress'](_0x117709,_0x19b0a1){if(!this['_compareOperations'](_0x19b0a1[0x0],_0x19b0a1[0x1]))return!0x1;const _0x287ebb=_0x19b0a1['shift']();return _0x287ebb['oldRange']=null,_0x287ebb['newRange']&&O(_0x287ebb['newRange']['start'],_0x287ebb['newRange']['end'])&&(_0x287ebb['newRange']['end']=null),_0x19b0a1['shift'](),_0x117709['types']['push'](this['_id']),_0x117709['types']['push'](0x0),_0x117709['buffers']['push'](this['_compressSingleOperation'](_0x287ebb)),!0x0;}['decompress'](_0x18e104,_0x413dd6){const _0x116e8b=this['_decompressSingleOperation'](_0x413dd6);_0x116e8b['newRange']&&!_0x116e8b['newRange']['end']&&(_0x116e8b['newRange']['end']=_0xee847f(_0x116e8b['newRange']['start']));const _0x33a4bc=_0xee847f(_0x116e8b);_0x33a4bc['newRange']&&(_0x33a4bc['newRange']['start']['stickiness']='toNone',_0x33a4bc['newRange']['end']=_0xee847f(_0x33a4bc['newRange']['start'])),_0x33a4bc['name']='user:position:'+_0x33a4bc['name']['split'](':')[0x2],_0x413dd6['types']['shift'](),_0x18e104['push'](_0x116e8b),_0x18e104['push'](_0x33a4bc);}['_compressSingleOperation'](_0x15620a){const _0x2e5ce4={'types':[],'buffers':[],'baseVersion':0x0};return this['_context']['_getCompressorByName']('MarkerOperation')['compress'](_0x2e5ce4,[_0x15620a]),_0x2e5ce4['buffers'][0x0];}['_decompressSingleOperation'](_0x49ef07){const _0x34e7d7=[];return this['_context']['_getCompressorByName']('MarkerOperation')['decompress'](_0x34e7d7,_0x49ef07),_0x34e7d7[0x0];}['_compareOperations'](_0x378f6d,_0x6c3dc1){return!(!_0x378f6d||!_0x6c3dc1)&&('MarkerOperation'==_0x378f6d['__className']&&'MarkerOperation'==_0x6c3dc1['__className']&&!(!_0x378f6d['name']['startsWith']('user:')||!_0x6c3dc1['name']['startsWith']('user:')||_0x378f6d['name']==_0x6c3dc1['name']));}}class g{['compress'](_0xfb9dfa){if(!_0xfb9dfa||!_0xfb9dfa[0x0])throw new _0x5dc2d5('no-operations-provided',this);const _0x4d395c={'types':[],'buffers':[],'baseVersion':_0xfb9dfa[0x0]['baseVersion']};for(;_0xfb9dfa['length'];)this['_getCompressorByName']('UserSelectionAction')['compress'](_0x4d395c,_0xfb9dfa)||this['_getCompressorByName']('TypingAction')['compress'](_0x4d395c,_0xfb9dfa)||this['_getCompressorByName']('DeletingAction')['compress'](_0x4d395c,_0xfb9dfa)||this['_getCompressorByName']('ForwardDeletingAction')['compress'](_0x4d395c,_0xfb9dfa)||this['_getCompressorByName']('CommentMarkerOperation')['compress'](_0x4d395c,_0xfb9dfa)||this['_getCompressorByName']('SuggestionMarkerOperation')['compress'](_0x4d395c,_0xfb9dfa)||this['_getCompressorByName'](_0xfb9dfa[0x0]['__className'])['compress'](_0x4d395c,_0xfb9dfa);return _0x4d395c;}['decompress'](_0x4f2a62){const _0x23c3cb=[];for(;_0x4f2a62['types']['length'];){this['_compressorById']['get'](_0x4f2a62['types'][0x0])['decompress'](_0x23c3cb,_0x4f2a62);}return _0x23c3cb['forEach']((_0x287f2e,_0x474b95)=>_0x287f2e['baseVersion']=_0x4f2a62['baseVersion']+_0x474b95),_0x23c3cb;}['_getCompressorByName'](_0x56e125){return this['_compressorByName']['get'](_0x56e125);}['_registerOperationCompressor'](_0x476fc4,_0x22f2a8,_0x20af30){const _0x1b9011=new _0x20af30(_0x476fc4,_0x22f2a8,this['_protobufFactory']['getDescriptor'](_0x22f2a8));this['_registerCompressor'](_0x476fc4,_0x22f2a8,_0x1b9011);}['_registerActionCompressor'](_0x48bdd3,_0x4c9096,_0x22c5b5){const _0x11f8b2=new _0x22c5b5(_0x48bdd3,this);this['_registerCompressor'](_0x48bdd3,_0x4c9096,_0x11f8b2);}['_registerCompressor'](_0x20d060,_0x5c9aa0,_0x11adb0){this['_compressorById']['set'](_0x20d060,_0x11adb0),this['_compressorByName']['set'](_0x5c9aa0,_0x11adb0);}constructor(){this['_compressorById']=new Map(),this['_compressorByName']=new Map(),this['_protobufFactory']=new r();const _0x534948=this['_protobufFactory']['getDescriptor']('MarkerOperation');this['_registerCompressor'](0x1,'NoOperation',new p(0x1,'NoOperation',void 0x0)),this['_registerOperationCompressor'](0xa,'AttributeOperation',s),this['_registerOperationCompressor'](0xb,'InsertOperation',i),this['_registerOperationCompressor'](0xc,'MarkerOperation',n),this['_registerOperationCompressor'](0xd,'MergeOperation',e),this['_registerOperationCompressor'](0xe,'MoveOperation',e),this['_registerOperationCompressor'](0xf,'RenameOperation',e),this['_registerOperationCompressor'](0x10,'RootAttributeOperation',s),this['_registerOperationCompressor'](0x11,'SplitOperation',e),this['_registerCompressor'](0x12,'CommentMarkerOperation',new a(0x12,'MarkerOperation',_0x534948,'comment')),this['_registerCompressor'](0x13,'SuggestionMarkerOperation',new a(0x13,'MarkerOperation',_0x534948,'suggestion')),this['_registerOperationCompressor'](0x14,'RootOperation',e),this['_registerActionCompressor'](0x64,'TypingAction',m),this['_registerActionCompressor'](0x65,'DeletingAction',c),this['_registerActionCompressor'](0x66,'ForwardDeletingAction',h),this['_registerActionCompressor'](0x67,'UserSelectionAction',f);}}export{g as Compressor};
@@ -0,0 +1,64 @@
1
+ /**
2
+ * @license Copyright (c) 2003-2024, CKSource Holding sp. z o.o. All rights reserved.
3
+ * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license
4
+ */
5
+ /**
6
+ * @license Copyright (c) 2003-2024, CKSource Holding sp. z o.o. All rights reserved.
7
+ * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license
8
+ */
9
+ import type { CompressedOperationsData, default as Compressor } from '../compressor.js';
10
+ /**
11
+ * * Compresses and decompresses multiple operations into the one buffer.
12
+ */
13
+ export default abstract class ActionCompressor {
14
+ constructor(id: number, context: Compressor);
15
+ /**
16
+ * Combines and compress operations from the list.
17
+ * Operations are consumed as long as match this compressor.
18
+ *
19
+ * @param result Object to which compression result should be added.
20
+ * @param operations List of operations in JSON format to compress.
21
+ * @returns `true` when operation is consumed `false` otherwise.
22
+ */
23
+ compress(result: CompressedOperationsData, operations: Array<any>): boolean;
24
+ /**
25
+ * Decompress and split compressed operations. Decompressed operations are consumed (removed from the input data).
26
+ *
27
+ * @param result Decompressed operations in JSON format.
28
+ * @param data Compressed operations data.
29
+ */
30
+ decompress(result: Array<any>, data: CompressedOperationsData): void;
31
+ /**
32
+ * Compresses single operation using a proper compressor.
33
+ *
34
+ * @param operation Operation in JSON format.
35
+ * @returns Operation JSON compressed to the binary format.
36
+ */
37
+ protected abstract _compressSingleOperation(operation: any): Uint8Array;
38
+ /**
39
+ * Decompresses combined operation using a proper compressor.
40
+ *
41
+ * @param data Data to compress.
42
+ * @returns Decompressed operation in JSON format.
43
+ */
44
+ protected abstract _decompressSingleOperation(data: CompressedOperationsData): any;
45
+ /**
46
+ * Combine next operation into the combined one.
47
+ *
48
+ * @param nextOperation Operation to combine in JSON format.
49
+ * @param combined Combined operation in JSON format.
50
+ * @returns Combined operation in JSON format.
51
+ */
52
+ protected abstract _combineNext(nextOperation: any, combined: any): any;
53
+ /**
54
+ * Split operation from combined one.
55
+ *
56
+ * @param combined Combined operation in JSON format.
57
+ * @returns Split operation in JSON format.
58
+ */
59
+ protected abstract _splitCurrent(combined: any): any;
60
+ /**
61
+ * Checks if two operations can be combined.
62
+ */
63
+ protected abstract _compareOperations(opA: any, opB: any): boolean;
64
+ }
@@ -0,0 +1,32 @@
1
+ /**
2
+ * @license Copyright (c) 2003-2024, CKSource Holding sp. z o.o. All rights reserved.
3
+ * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license
4
+ */
5
+ /**
6
+ * @license Copyright (c) 2003-2024, CKSource Holding sp. z o.o. All rights reserved.
7
+ * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license
8
+ */
9
+ import ActionCompressor from './actioncompressor.js';
10
+ import type { CompressedOperationsData } from '../compressor.js';
11
+ export default class DeletingActionCompressor extends ActionCompressor {
12
+ /**
13
+ * @inheritDoc
14
+ */
15
+ protected _combineNext(nextOperation: any, combined: any): any;
16
+ /**
17
+ * @inheritDoc
18
+ */
19
+ protected _splitCurrent(combined: any): any;
20
+ /**
21
+ * @inheritDoc
22
+ */
23
+ protected _compareOperations(opA: any, opB: any): boolean;
24
+ /**
25
+ * @inheritDoc
26
+ */
27
+ protected _compressSingleOperation(operation: any): Uint8Array;
28
+ /**
29
+ * @inheritDoc
30
+ */
31
+ protected _decompressSingleOperation(data: CompressedOperationsData): any;
32
+ }
@@ -0,0 +1,32 @@
1
+ /**
2
+ * @license Copyright (c) 2003-2024, CKSource Holding sp. z o.o. All rights reserved.
3
+ * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license
4
+ */
5
+ /**
6
+ * @license Copyright (c) 2003-2024, CKSource Holding sp. z o.o. All rights reserved.
7
+ * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license
8
+ */
9
+ import ActionCompressor from './actioncompressor.js';
10
+ import type { CompressedOperationsData } from '../compressor.js';
11
+ export default class ForwardDeletingActionCompressor extends ActionCompressor {
12
+ /**
13
+ * @inheritDoc
14
+ */
15
+ protected _combineNext(nextOperation: any, combined: any): any;
16
+ /**
17
+ * @inheritDoc
18
+ */
19
+ protected _splitCurrent(combined: any): any;
20
+ /**
21
+ * @inheritDoc
22
+ */
23
+ protected _compareOperations(opA: any, opB: any): boolean;
24
+ /**
25
+ * @inheritDoc
26
+ */
27
+ protected _compressSingleOperation(operation: any): Uint8Array;
28
+ /**
29
+ * @inheritDoc
30
+ */
31
+ protected _decompressSingleOperation(data: CompressedOperationsData): any;
32
+ }
@@ -0,0 +1,32 @@
1
+ /**
2
+ * @license Copyright (c) 2003-2024, CKSource Holding sp. z o.o. All rights reserved.
3
+ * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license
4
+ */
5
+ /**
6
+ * @license Copyright (c) 2003-2024, CKSource Holding sp. z o.o. All rights reserved.
7
+ * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license
8
+ */
9
+ import ActionCompressor from './actioncompressor.js';
10
+ import type { CompressedOperationsData } from '../compressor.js';
11
+ export default class TypingActionCompressor extends ActionCompressor {
12
+ /**
13
+ * @inheritDocs
14
+ */
15
+ protected _combineNext(nextOperation: any, combined: any): any;
16
+ /**
17
+ * @inheritDoc
18
+ */
19
+ protected _splitCurrent(combined: any): any;
20
+ /**
21
+ * @inheritDoc
22
+ */
23
+ protected _compareOperations(opA: any, opB: any): boolean;
24
+ /**
25
+ * @inheritDoc
26
+ */
27
+ protected _compressSingleOperation(operation: any): Uint8Array;
28
+ /**
29
+ * @inheritDoc
30
+ */
31
+ protected _decompressSingleOperation(data: CompressedOperationsData): any;
32
+ }
@@ -0,0 +1,20 @@
1
+ /**
2
+ * @license Copyright (c) 2003-2024, CKSource Holding sp. z o.o. All rights reserved.
3
+ * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license
4
+ */
5
+ /**
6
+ * @license Copyright (c) 2003-2024, CKSource Holding sp. z o.o. All rights reserved.
7
+ * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license
8
+ */
9
+ import ActionCompressor from './actioncompressor.js';
10
+ import type { CompressedOperationsData } from '../compressor.js';
11
+ export default class UserSelectionActionCompressor extends ActionCompressor {
12
+ /**
13
+ * @inheritDoc
14
+ */
15
+ compress(result: CompressedOperationsData, operations: Array<any>): boolean;
16
+ /**
17
+ * @inheritDoc
18
+ */
19
+ decompress(result: Array<any>, data: CompressedOperationsData): void;
20
+ }
@@ -0,0 +1,49 @@
1
+ /**
2
+ * @license Copyright (c) 2003-2024, CKSource Holding sp. z o.o. All rights reserved.
3
+ * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license
4
+ */
5
+ /**
6
+ * @license Copyright (c) 2003-2024, CKSource Holding sp. z o.o. All rights reserved.
7
+ * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license
8
+ */
9
+ /**
10
+ * Compresses and decompresses given set of operations in JSON format to/from the binary format using `Protocol Buffers`.
11
+ */
12
+ export default class Compressor {
13
+ constructor();
14
+ /**
15
+ * Compress given list of operations in JSON format.
16
+ *
17
+ * **Note** It tries to combine typing-like or deleting-like operations into the one buffer.
18
+ * **Note** Input data will be consumed and modified during compression process. If you need untouched data
19
+ * you need to copy it before the compression.
20
+ */
21
+ compress(operations: Array<any>): CompressedOperationsData;
22
+ /**
23
+ * Decompress given data to the list of operations in JSON format.
24
+ *
25
+ * **Note** Input data will be consumed during decompression process. If you need untouched data
26
+ * you need to copy it before the decompression.
27
+ *
28
+ * @param data Compressed operations.
29
+ * @returns List of operations in JSON format.
30
+ */
31
+ decompress(data: CompressedOperationsData): Array<any>;
32
+ }
33
+ /**
34
+ * Compressed operations data.
35
+ */
36
+ export type CompressedOperationsData = {
37
+ /**
38
+ * List of operations compressed to the binary format.
39
+ */
40
+ buffers: Array<Uint8Array>;
41
+ /**
42
+ * List of compressor identifiers. According to this types a proper compressor will be used for the decompression.
43
+ */
44
+ types: Array<number>;
45
+ /**
46
+ * Base version of the first compressed operation.
47
+ */
48
+ baseVersion: number;
49
+ };
@@ -0,0 +1,9 @@
1
+ /**
2
+ * @license Copyright (c) 2003-2024, CKSource Holding sp. z o.o. All rights reserved.
3
+ * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license
4
+ */
5
+ /**
6
+ * @license Copyright (c) 2003-2024, CKSource Holding sp. z o.o. All rights reserved.
7
+ * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license
8
+ */
9
+ export { default as Compressor, type CompressedOperationsData } from './compressor.js';
@@ -0,0 +1,26 @@
1
+ /**
2
+ * @license Copyright (c) 2003-2024, CKSource Holding sp. z o.o. All rights reserved.
3
+ * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license
4
+ */
5
+ /**
6
+ * @license Copyright (c) 2003-2024, CKSource Holding sp. z o.o. All rights reserved.
7
+ * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license
8
+ */
9
+ import MarkerOperationCompressor from './markeroperationcompressor.js';
10
+ import type { ProtobufDescriptor } from '../protobuffactory.js';
11
+ import type { CompressedOperationsData } from '../compressor.js';
12
+ import type { MarkerOperation } from 'ckeditor5/src/engine.js';
13
+ export default class AnnotationMarkerOperationCompressor extends MarkerOperationCompressor {
14
+ /**
15
+ * @inheritDoc
16
+ */
17
+ constructor(id: number, name: string, descriptor: ProtobufDescriptor, namespaceToOmit: string);
18
+ /**
19
+ * @inheritDoc
20
+ */
21
+ compress(result: CompressedOperationsData, operations: Array<MarkerOperation>): boolean;
22
+ /**
23
+ * @inheritDoc
24
+ */
25
+ decompress(result: Array<MarkerOperation>, data: CompressedOperationsData): void;
26
+ }
@@ -0,0 +1,21 @@
1
+ /**
2
+ * @license Copyright (c) 2003-2024, CKSource Holding sp. z o.o. All rights reserved.
3
+ * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license
4
+ */
5
+ /**
6
+ * @license Copyright (c) 2003-2024, CKSource Holding sp. z o.o. All rights reserved.
7
+ * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license
8
+ */
9
+ import OperationCompressor from './operationcompressor.js';
10
+ import type { CompressedOperationsData } from '../compressor.js';
11
+ import type { AttributeOperation } from 'ckeditor5/src/engine.js';
12
+ export default class AttributeOperationCompressor extends OperationCompressor {
13
+ /**
14
+ * @inheritDoc
15
+ */
16
+ compress(result: CompressedOperationsData, operations: Array<AttributeOperation>): boolean;
17
+ /**
18
+ * @inheritDoc
19
+ */
20
+ decompress(result: Array<AttributeOperation>, data: CompressedOperationsData): void;
21
+ }
@@ -0,0 +1,21 @@
1
+ /**
2
+ * @license Copyright (c) 2003-2024, CKSource Holding sp. z o.o. All rights reserved.
3
+ * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license
4
+ */
5
+ /**
6
+ * @license Copyright (c) 2003-2024, CKSource Holding sp. z o.o. All rights reserved.
7
+ * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license
8
+ */
9
+ import OperationCompressor from './operationcompressor.js';
10
+ import type { CompressedOperationsData } from '../compressor.js';
11
+ import type { InsertOperation } from 'ckeditor5/src/engine.js';
12
+ export default class InsertOperationCompressor extends OperationCompressor {
13
+ /**
14
+ * @inheritDoc
15
+ */
16
+ compress(result: CompressedOperationsData, operations: Array<InsertOperation>): boolean;
17
+ /**
18
+ * @inheritDoc
19
+ */
20
+ decompress(result: Array<InsertOperation>, data: CompressedOperationsData): void;
21
+ }