@univerjs-pro/collaboration-database-memory 1.0.2 → 1.0.4

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.
package/dist/index.cjs CHANGED
@@ -1 +1 @@
1
- Object['defineProperty'](exports,Symbol['toStringTag'],{'value':'Module'});let e=require('@univerjs-pro/collaboration-service');var t=class{['_units']=new Map();['_tombstones']=new Set();['_disposed']=!0x1;async['getUnit'](_0x53fb01,_0x523766){this['_assertOpen']();let _0xe71498=this['_activeUnit'](_0x523766);return _0xe71498?c(_0xe71498['record']):null;}async['getSnapshot'](_0x36947b,_0x177727,_0x57b2d0){let _0x166b79=this['_getSnapshot'](_0x177727,_0x57b2d0);return _0x166b79?c(_0x166b79):null;}async['getSnapshotInfo'](_0x5b14b2,_0x47cbba,_0x57db25){let _0x2eb0e2=this['_getSnapshot'](_0x47cbba,_0x57db25);return _0x2eb0e2?{'unitID':_0x2eb0e2['unitID'],'type':_0x2eb0e2['type'],'rev':_0x2eb0e2['rev']}:null;}['_getSnapshot'](_0x11f2a1,_0x1eae95){this['_assertOpen']();let _0x4372bd=this['_activeUnit'](_0x11f2a1);if(!_0x4372bd)return null;let _0x2fcbfb=_0x1eae95?.['revision'],_0x3f4928=_0x2fcbfb===void 0x0?_0x4372bd['record']['headRevision']:Math['min'](_0x2fcbfb,_0x4372bd['record']['headRevision']),_0x2ef55c=-0x1;for(let _0x135a90 of _0x4372bd['snapshots']['keys']())_0x135a90<=_0x3f4928&&_0x135a90>_0x2ef55c&&(_0x2ef55c=_0x135a90);return _0x4372bd['snapshots']['get'](_0x2ef55c)??null;}async['getChangesets'](_0x484d52,_0x3688af,_0x282331){if(this['_assertOpen'](),_0x282331['from']<0x0||_0x282331['to']!==void 0x0&&_0x282331['to']<0x0)throw a('Changeset\x20range\x20revisions\x20cannot\x20be\x20negative');let _0x8231c7=this['_activeUnit'](_0x3688af);return _0x8231c7?[..._0x8231c7['changesets']['entries']()]['filter'](([_0x43ed76])=>_0x43ed76>_0x282331['from']&&(_0x282331['to']===void 0x0||_0x43ed76<=_0x282331['to']))['sort'](([_0x41821b],[_0x5ad48a])=>_0x41821b-_0x5ad48a)['map'](([,_0x329b42])=>c(_0x329b42)):null;}async['createUnit'](_0x2cb670,_0x114769){this['_assertOpen'](),n(_0x114769);let _0xb0fa03=this['_units']['get'](_0x114769['record']['unitID']);if(_0xb0fa03){if(_0xb0fa03['lifecycle']==='soft-deleted')throw a('A\x20soft-deleted\x20unit\x20ID\x20cannot\x20be\x20reused');return{'status':'already-exists','record':c(_0xb0fa03['record'])};}if(this['_tombstones']['has'](_0x114769['record']['unitID']))throw a('A\x20purged\x20unit\x20ID\x20cannot\x20be\x20reused');let _0x585c1a=r(_0x114769['sheetBlocks']),_0x4d33fd={'record':c(_0x114769['record']),'lifecycle':'active','snapshots':new Map([[0x1,c(_0x114769['snapshot'])]]),'changesets':new Map(),'sheetBlocks':_0x585c1a};return this['_units']['set'](_0x114769['record']['unitID'],_0x4d33fd),{'status':'created','record':c(_0x4d33fd['record'])};}async['deleteUnits'](_0x24ef4d,_0x2afd62){this['_assertOpen']();let _0x139349=s(_0x2afd62['unitIDs'])['map'](_0x4e0bb5=>{let _0xbb3269=this['_units']['get'](_0x4e0bb5);if(_0x2afd62['hardDelete']){if(_0xbb3269)return{'unitID':_0x4e0bb5,'stored':_0xbb3269,'status':'hard-deleted'};if(this['_tombstones']['has'](_0x4e0bb5))return{'unitID':_0x4e0bb5,'status':'already-hard-deleted'};throw o('Cannot\x20hard-delete\x20a\x20missing\x20unit');}if(!_0xbb3269||this['_tombstones']['has'](_0x4e0bb5))throw o('Cannot\x20soft-delete\x20a\x20missing\x20unit');return{'unitID':_0x4e0bb5,'stored':_0xbb3269,'status':_0xbb3269['lifecycle']==='active'?'soft-deleted':'already-soft-deleted'};});for(let _0x4a22b4 of _0x139349)_0x2afd62['hardDelete']&&_0x4a22b4['status']==='hard-deleted'?(this['_units']['delete'](_0x4a22b4['unitID']),this['_tombstones']['add'](_0x4a22b4['unitID'])):!_0x2afd62['hardDelete']&&_0x4a22b4['stored']&&(_0x4a22b4['stored']['lifecycle']='soft-deleted');return{'units':_0x139349['map'](({unitID:_0x4597e4,status:_0x136a26})=>({'unitID':_0x4597e4,'status':_0x136a26}))};}async['recoverUnits'](_0x6e1b4c,_0x44b160){this['_assertOpen']();let _0x4166b4=s(_0x44b160['unitIDs'])['map'](_0x461867=>{if(this['_tombstones']['has'](_0x461867))throw a('A\x20purged\x20unit\x20cannot\x20be\x20recovered');let _0x456120=this['_units']['get'](_0x461867);if(!_0x456120)throw o('Cannot\x20recover\x20a\x20missing\x20unit');return{'unitID':_0x461867,'stored':_0x456120,'status':_0x456120['lifecycle']==='active'?'already-active':'recovered'};});for(let _0x2f902d of _0x4166b4)_0x2f902d['stored']['lifecycle']='active';return{'units':_0x4166b4['map'](({unitID:_0x243160,status:_0x18015a})=>({'unitID':_0x243160,'status':_0x18015a}))};}async['commitChangeset'](_0x543491,_0x1b8b2a){this['_assertOpen']();let {changeset:_0x51ec92}=_0x1b8b2a,_0x580608=this['_activeUnit'](_0x51ec92['unitID']);if(!_0x580608)throw o('Cannot\x20commit\x20to\x20a\x20missing\x20unit');if(_0x580608['record']['headRevision']!==_0x51ec92['revision']-0x1)return{'status':'revision-mismatch','actualHeadRevision':_0x580608['record']['headRevision']};let _0x179c04=c(_0x51ec92);return _0x179c04['createTime']=Math['floor'](Date['now']()/0x3e8),_0x580608['changesets']['set'](_0x179c04['revision'],_0x179c04),_0x580608['record']={..._0x580608['record'],'headRevision':_0x179c04['revision']},{'status':'committed','changeset':c(_0x179c04),'headRevision':_0x580608['record']['headRevision']};}async['saveSnapshot'](_0x23d75f,_0x34fafb){this['_assertOpen']();let _0x4a8519=this['_activeUnit'](_0x34fafb['snapshot']['unitID']);if(!_0x4a8519)throw o('Cannot\x20snapshot\x20a\x20missing\x20unit');if(_0x34fafb['snapshot']['type']!==_0x4a8519['record']['type']||_0x34fafb['snapshot']['rev']<0x1||_0x34fafb['snapshot']['rev']>_0x4a8519['record']['headRevision'])throw a('Snapshot\x20does\x20not\x20match\x20the\x20stored\x20unit\x20head');let _0x394401=c(_0x34fafb['snapshot']);i(_0x4a8519,r(_0x34fafb['sheetBlocks'])),_0x4a8519['snapshots']['set'](_0x394401['rev'],_0x394401);}async['getSheetBlock'](_0x589d8c,_0x2073e9,_0x2532b6){this['_assertOpen']();let _0x4f8d9d=this['_activeUnit'](_0x2073e9)?.['sheetBlocks']['get'](_0x2532b6);return _0x4f8d9d?c(_0x4f8d9d):null;}async['dispose'](){this['_disposed']||(this['_disposed']=!0x0,this['_units']['clear'](),this['_tombstones']['clear']());}['_activeUnit'](_0x1c0cef){let _0x85509=this['_units']['get'](_0x1c0cef);return _0x85509?.['lifecycle']==='active'?_0x85509:void 0x0;}['_assertOpen'](){if(this['_disposed'])throw new e['CollabError']('INTERNAL_ERROR','Memory\x20Database\x20Adapter\x20is\x20disposed');}};function n(_0xbcdc8c){let {record:_0x9a5899,snapshot:_0x4ae7c}=_0xbcdc8c;if(_0x9a5899['headRevision']!==0x1||_0x4ae7c['rev']!==0x1||_0x4ae7c['unitID']!==_0x9a5899['unitID']||_0x4ae7c['type']!==_0x9a5899['type'])throw a('Initial\x20unit\x20record\x20and\x20snapshot\x20must\x20match\x20at\x20revision\x201');if(typeof _0x9a5899['creatorID']!='string'||_0x9a5899['creatorID']['length']===0x0||!Number['isSafeInteger'](_0x9a5899['createdAt'])||_0x9a5899['createdAt']<0x0)throw a('Unit\x20creation\x20requires\x20creatorID\x20and\x20createdAt\x20in\x20Unix\x20milliseconds');}function r(_0x20aba6){let _0x54d2c8=new Map();for(let _0x238c3f of _0x20aba6??[])_0x54d2c8['set'](_0x238c3f['id'],c(_0x238c3f));return _0x54d2c8;}function i(_0x5b184d,_0x12804e){for(let [_0x57fd41,_0x36abfd]of _0x12804e)_0x5b184d['sheetBlocks']['set'](_0x57fd41,_0x36abfd);}function a(_0x17ba0d){return new e['CollabError']('INVALID_REQUEST',_0x17ba0d);}function o(_0x15d43d){return new e['CollabError']('UNIT_NOT_FOUND',_0x15d43d);}function s(_0x287c2d){return[...new Set(_0x287c2d)];}function c(_0x595e6c){return structuredClone(_0x595e6c);}exports['MemoryDatabaseAdapter']=t;
1
+ Object['defineProperty'](exports,Symbol['toStringTag'],{'value':'Module'});let e=require('@univerjs-pro/collaboration-service');var t=class{['_units']=new Map();['_tombstones']=new Set();['_disposed']=!0x1;async['getUnit'](_0x39e5e4,_0x31426f){this['_assertOpen']();let _0x4fb1b7=this['_activeUnit'](_0x31426f);return _0x4fb1b7?c(_0x4fb1b7['record']):null;}async['getSnapshot'](_0x149c69,_0x12fd7d,_0x4c8234){let _0x190b35=this['_getSnapshot'](_0x12fd7d,_0x4c8234);return _0x190b35?c(_0x190b35):null;}async['getSnapshotInfo'](_0x4a3c13,_0x531ff5,_0x4eb52d){let _0x27c4ad=this['_getSnapshot'](_0x531ff5,_0x4eb52d);return _0x27c4ad?{'unitID':_0x27c4ad['unitID'],'type':_0x27c4ad['type'],'rev':_0x27c4ad['rev']}:null;}['_getSnapshot'](_0x2851cf,_0x54a74b){this['_assertOpen']();let _0x51b0f9=this['_activeUnit'](_0x2851cf);if(!_0x51b0f9)return null;let _0x144c2f=_0x54a74b?.['revision'],_0x2455e5=_0x144c2f===void 0x0?_0x51b0f9['record']['headRevision']:Math['min'](_0x144c2f,_0x51b0f9['record']['headRevision']),_0x22f16d=-0x1;for(let _0x1738c3 of _0x51b0f9['snapshots']['keys']())_0x1738c3<=_0x2455e5&&_0x1738c3>_0x22f16d&&(_0x22f16d=_0x1738c3);return _0x51b0f9['snapshots']['get'](_0x22f16d)??null;}async['getChangesets'](_0x25483d,_0x309e93,_0x280617){if(this['_assertOpen'](),_0x280617['from']<0x0||_0x280617['to']!==void 0x0&&_0x280617['to']<0x0)throw a('Changeset\x20range\x20revisions\x20cannot\x20be\x20negative');let _0x4c977b=this['_activeUnit'](_0x309e93);return _0x4c977b?[..._0x4c977b['changesets']['entries']()]['filter'](([_0x3d769f])=>_0x3d769f>_0x280617['from']&&(_0x280617['to']===void 0x0||_0x3d769f<=_0x280617['to']))['sort'](([_0x4bfb63],[_0x1fa51b])=>_0x4bfb63-_0x1fa51b)['map'](([,_0x116432])=>c(_0x116432)):null;}async['createUnit'](_0x555da3,_0x324a8){this['_assertOpen'](),n(_0x324a8);let _0x414d94=this['_units']['get'](_0x324a8['record']['unitID']);if(_0x414d94){if(_0x414d94['lifecycle']==='soft-deleted')throw a('A\x20soft-deleted\x20unit\x20ID\x20cannot\x20be\x20reused');return{'status':'already-exists','record':c(_0x414d94['record'])};}if(this['_tombstones']['has'](_0x324a8['record']['unitID']))throw a('A\x20purged\x20unit\x20ID\x20cannot\x20be\x20reused');let _0x501051=r(_0x324a8['sheetBlocks']),_0x4ce658={'record':c(_0x324a8['record']),'lifecycle':'active','snapshots':new Map([[0x1,c(_0x324a8['snapshot'])]]),'changesets':new Map(),'sheetBlocks':_0x501051};return this['_units']['set'](_0x324a8['record']['unitID'],_0x4ce658),{'status':'created','record':c(_0x4ce658['record'])};}async['deleteUnits'](_0x320a17,_0x2961c5){this['_assertOpen']();let _0x5e8ef6=s(_0x2961c5['unitIDs'])['map'](_0x26d6f5=>{let _0x102711=this['_units']['get'](_0x26d6f5);if(_0x2961c5['hardDelete']){if(_0x102711)return{'unitID':_0x26d6f5,'stored':_0x102711,'status':'hard-deleted'};if(this['_tombstones']['has'](_0x26d6f5))return{'unitID':_0x26d6f5,'status':'already-hard-deleted'};throw o('Cannot\x20hard-delete\x20a\x20missing\x20unit');}if(!_0x102711||this['_tombstones']['has'](_0x26d6f5))throw o('Cannot\x20soft-delete\x20a\x20missing\x20unit');return{'unitID':_0x26d6f5,'stored':_0x102711,'status':_0x102711['lifecycle']==='active'?'soft-deleted':'already-soft-deleted'};});for(let _0xa7cc96 of _0x5e8ef6)_0x2961c5['hardDelete']&&_0xa7cc96['status']==='hard-deleted'?(this['_units']['delete'](_0xa7cc96['unitID']),this['_tombstones']['add'](_0xa7cc96['unitID'])):!_0x2961c5['hardDelete']&&_0xa7cc96['stored']&&(_0xa7cc96['stored']['lifecycle']='soft-deleted');return{'units':_0x5e8ef6['map'](({unitID:_0x2a2cbd,status:_0x580f99})=>({'unitID':_0x2a2cbd,'status':_0x580f99}))};}async['recoverUnits'](_0x3155ad,_0x250444){this['_assertOpen']();let _0x1d3bca=s(_0x250444['unitIDs'])['map'](_0xf15f32=>{if(this['_tombstones']['has'](_0xf15f32))throw a('A\x20purged\x20unit\x20cannot\x20be\x20recovered');let _0x2a859f=this['_units']['get'](_0xf15f32);if(!_0x2a859f)throw o('Cannot\x20recover\x20a\x20missing\x20unit');return{'unitID':_0xf15f32,'stored':_0x2a859f,'status':_0x2a859f['lifecycle']==='active'?'already-active':'recovered'};});for(let _0x3ad9d8 of _0x1d3bca)_0x3ad9d8['stored']['lifecycle']='active';return{'units':_0x1d3bca['map'](({unitID:_0x3c1bc0,status:_0x2df3b5})=>({'unitID':_0x3c1bc0,'status':_0x2df3b5}))};}async['commitChangeset'](_0x459eba,_0x13c3fb){this['_assertOpen']();let {changeset:_0x4ad6c3}=_0x13c3fb,_0x4e2593=this['_activeUnit'](_0x4ad6c3['unitID']);if(!_0x4e2593)throw o('Cannot\x20commit\x20to\x20a\x20missing\x20unit');if(_0x4e2593['record']['headRevision']!==_0x4ad6c3['revision']-0x1)return{'status':'revision-mismatch','actualHeadRevision':_0x4e2593['record']['headRevision']};let _0x198076=c(_0x4ad6c3);return _0x198076['createTime']=Math['floor'](Date['now']()/0x3e8),_0x4e2593['changesets']['set'](_0x198076['revision'],_0x198076),_0x4e2593['record']={..._0x4e2593['record'],'headRevision':_0x198076['revision']},{'status':'committed','changeset':c(_0x198076),'headRevision':_0x4e2593['record']['headRevision']};}async['saveSnapshot'](_0x3e337c,_0x20e26c){this['_assertOpen']();let _0x291f27=this['_activeUnit'](_0x20e26c['snapshot']['unitID']);if(!_0x291f27)throw o('Cannot\x20snapshot\x20a\x20missing\x20unit');if(_0x20e26c['snapshot']['type']!==_0x291f27['record']['type']||_0x20e26c['snapshot']['rev']<0x1||_0x20e26c['snapshot']['rev']>_0x291f27['record']['headRevision'])throw a('Snapshot\x20does\x20not\x20match\x20the\x20stored\x20unit\x20head');let _0x23d960=c(_0x20e26c['snapshot']);i(_0x291f27,r(_0x20e26c['sheetBlocks'])),_0x291f27['snapshots']['set'](_0x23d960['rev'],_0x23d960);}async['getSheetBlock'](_0x2e7841,_0x2d7d12,_0x177f19){this['_assertOpen']();let _0x27b5b4=this['_activeUnit'](_0x2d7d12)?.['sheetBlocks']['get'](_0x177f19);return _0x27b5b4?c(_0x27b5b4):null;}async['dispose'](){this['_disposed']||(this['_disposed']=!0x0,this['_units']['clear'](),this['_tombstones']['clear']());}['_activeUnit'](_0x2da7d9){let _0x3b18c1=this['_units']['get'](_0x2da7d9);return _0x3b18c1?.['lifecycle']==='active'?_0x3b18c1:void 0x0;}['_assertOpen'](){if(this['_disposed'])throw new e['CollabError']('INTERNAL_ERROR','Memory\x20Database\x20Adapter\x20is\x20disposed');}};function n(_0x2b33a5){let {record:_0x22a50c,snapshot:_0x43f3de}=_0x2b33a5;if(_0x22a50c['headRevision']!==0x1||_0x43f3de['rev']!==0x1||_0x43f3de['unitID']!==_0x22a50c['unitID']||_0x43f3de['type']!==_0x22a50c['type'])throw a('Initial\x20unit\x20record\x20and\x20snapshot\x20must\x20match\x20at\x20revision\x201');if(typeof _0x22a50c['creatorID']!='string'||_0x22a50c['creatorID']['length']===0x0||!Number['isSafeInteger'](_0x22a50c['createdAt'])||_0x22a50c['createdAt']<0x0)throw a('Unit\x20creation\x20requires\x20creatorID\x20and\x20createdAt\x20in\x20Unix\x20milliseconds');}function r(_0x555535){let _0x4e9ee9=new Map();for(let _0x53e675 of _0x555535??[])_0x4e9ee9['set'](_0x53e675['id'],c(_0x53e675));return _0x4e9ee9;}function i(_0x2f8483,_0x3e9b57){for(let [_0x82b77f,_0x4e4592]of _0x3e9b57)_0x2f8483['sheetBlocks']['set'](_0x82b77f,_0x4e4592);}function a(_0x3bc0cf){return new e['CollabError']('INVALID_REQUEST',_0x3bc0cf);}function o(_0x419bc0){return new e['CollabError']('UNIT_NOT_FOUND',_0x419bc0);}function s(_0x2682d1){return[...new Set(_0x2682d1)];}function c(_0x270303){return structuredClone(_0x270303);}exports['MemoryDatabaseAdapter']=t;
package/dist/index.mjs CHANGED
@@ -1 +1 @@
1
- function _0x57dd(){const _0x42a0ae=['MemoryDatabaseAdapter','139700zHmuQj','18UHbSew','796809QeJJQf','21drFubd','235WUlEsL','1389800Ndhyhc','3491961kpqrbP','20VvMCSW','23556MpeNPH','451540JNctWe','624198xNnCcF'];_0x57dd=function(){return _0x42a0ae;};return _0x57dd();}const _0x1c221e=_0x5d9c;function _0x5d9c(_0x39500b,_0x317985){_0x39500b=_0x39500b-0xaa;const _0x57ddc1=_0x57dd();let _0x5d9c6c=_0x57ddc1[_0x39500b];return _0x5d9c6c;}(function(_0x48854d,_0x4b0309){const _0x3eb9f7=_0x5d9c,_0x1efee6=_0x48854d();while(!![]){try{const _0x3004e7=-parseInt(_0x3eb9f7(0xb1))/0x1+-parseInt(_0x3eb9f7(0xae))/0x2+-parseInt(_0x3eb9f7(0xb3))/0x3+parseInt(_0x3eb9f7(0xad))/0x4*(parseInt(_0x3eb9f7(0xb5))/0x5)+-parseInt(_0x3eb9f7(0xaf))/0x6*(-parseInt(_0x3eb9f7(0xb4))/0x7)+parseInt(_0x3eb9f7(0xaa))/0x8*(-parseInt(_0x3eb9f7(0xb2))/0x9)+-parseInt(_0x3eb9f7(0xac))/0xa*(-parseInt(_0x3eb9f7(0xab))/0xb);if(_0x3004e7===_0x4b0309)break;else _0x1efee6['push'](_0x1efee6['shift']());}catch(_0x358320){_0x1efee6['push'](_0x1efee6['shift']());}}}(_0x57dd,0x3be0d));import _0xedcef2 from'./index.cjs';const facadeExport0=_0xedcef2[_0x1c221e(0xb0)];export{facadeExport0 as MemoryDatabaseAdapter};
1
+ (function(_0x2c32ae,_0x3e877a){const _0x78e03d=_0x2d61,_0x10f00d=_0x2c32ae();while(!![]){try{const _0x4aef6e=parseInt(_0x78e03d(0x143))/0x1+parseInt(_0x78e03d(0x13d))/0x2+-parseInt(_0x78e03d(0x145))/0x3*(parseInt(_0x78e03d(0x13f))/0x4)+-parseInt(_0x78e03d(0x141))/0x5+-parseInt(_0x78e03d(0x142))/0x6*(-parseInt(_0x78e03d(0x13e))/0x7)+parseInt(_0x78e03d(0x146))/0x8*(parseInt(_0x78e03d(0x140))/0x9)+parseInt(_0x78e03d(0x144))/0xa*(-parseInt(_0x78e03d(0x147))/0xb);if(_0x4aef6e===_0x3e877a)break;else _0x10f00d['push'](_0x10f00d['shift']());}catch(_0xbdc2f6){_0x10f00d['push'](_0x10f00d['shift']());}}}(_0x1566,0x3c5bf));function _0x2d61(_0xf75f45,_0x6af6d3){_0xf75f45=_0xf75f45-0x13d;const _0x156637=_0x1566();let _0x2d61e1=_0x156637[_0xf75f45];return _0x2d61e1;}function _0x1566(){const _0x16c5df=['306242kHgIaW','123753dgWRIR','659624kpCUYN','711ZsNDlQ','2073840JMuXze','132jLApmw','245982ijBypB','670PKlmEC','3ctqSbE','15904JxoLEp','19404yUsoxB'];_0x1566=function(){return _0x16c5df;};return _0x1566();}import _0x36b2b6 from'./index.cjs';const facadeExport0=_0x36b2b6['MemoryDatabaseAdapter'];export{facadeExport0 as MemoryDatabaseAdapter};
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@univerjs-pro/collaboration-database-memory",
3
3
  "type": "module",
4
- "version": "1.0.2",
4
+ "version": "1.0.4",
5
5
  "main": "./dist/index.cjs",
6
6
  "module": "./dist/index.mjs",
7
7
  "types": "./dist/index.d.ts",
@@ -16,7 +16,7 @@
16
16
  "dist"
17
17
  ],
18
18
  "dependencies": {
19
- "@univerjs-pro/collaboration-service": "1.0.2",
20
- "@univerjs/protocol": "1.0.2"
19
+ "@univerjs-pro/collaboration-service": "1.0.4",
20
+ "@univerjs/protocol": "1.0.4"
21
21
  }
22
22
  }