@univerjs-pro/collaboration-worktree-database-memory 1.0.0-insiders.20260727-46ed76c

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.
@@ -0,0 +1 @@
1
+ export { MemoryWorktreeDatabaseAdapter } from "./memory-worktree-database-adapter.js";
package/dist/index.js ADDED
@@ -0,0 +1 @@
1
+ 'use strict';Object['defineProperty'](exports,'__esModule',{'value':!![]}),exports['MemoryWorktreeDatabaseAdapter']=void 0x0;var memory_worktree_database_adapter_js_1=require('./memory-worktree-database-adapter.js');Object['defineProperty'](exports,'MemoryWorktreeDatabaseAdapter',{'enumerable':!![],'get':function(){return memory_worktree_database_adapter_js_1['MemoryWorktreeDatabaseAdapter'];}});
@@ -0,0 +1,26 @@
1
+ import { type ChangesetRange, type DatabaseContext } from "@univerjs-pro/collaboration-service";
2
+ import type { AddWorktreeUnitDatabaseInput, AddWorktreeUnitDatabaseResult, CommitWorktreeChangesetInput, CommitWorktreeChangesetResult, CreateWorktreeDatabaseInput, CreateWorktreeDatabaseResult, CreateWorktreeUnitDatabaseInput, CreateWorktreeUnitDatabaseResult, IWorktreeDatabaseAdapter, RecordUnitMergeResultInput, RecordUnitMergeResultResult, SaveWorktreeUnitMergeArtifactInput, SaveWorktreeUnitMergeArtifactResult, StartMergeResult, WorktreeAggregateRecord, WorktreeRevisionRange, WorktreeTransitionResult, WorktreeUnitRecord, WorktreeUnitMergeArtifact, WorktreeUnitSeed } from "@univerjs-pro/collaboration-worktree-service";
3
+ import { type IChangeset } from "@univerjs/protocol";
4
+ export declare class MemoryWorktreeDatabaseAdapter implements IWorktreeDatabaseAdapter {
5
+ private readonly _worktrees;
6
+ private _disposed;
7
+ getWorktree(_context: DatabaseContext, worktreeID: string): Promise<WorktreeAggregateRecord | null>;
8
+ getWorktreeUnit(_context: DatabaseContext, worktreeID: string, unitID: string): Promise<WorktreeUnitRecord | null>;
9
+ getDraftChangesets(_context: DatabaseContext, worktreeID: string, unitID: string, range: WorktreeRevisionRange): Promise<ChangesetRange>;
10
+ getDraftSubmission(_context: DatabaseContext, worktreeID: string, unitID: string, sid: string, reqId: number): Promise<IChangeset | null>;
11
+ getUnitSeed(_context: DatabaseContext, worktreeID: string, unitID: string): Promise<WorktreeUnitSeed | null>;
12
+ getUnitMergeArtifact(_context: DatabaseContext, worktreeID: string, unitID: string): Promise<WorktreeUnitMergeArtifact | null>;
13
+ createWorktree(_context: DatabaseContext, input: CreateWorktreeDatabaseInput): Promise<CreateWorktreeDatabaseResult>;
14
+ addUnit(_context: DatabaseContext, input: AddWorktreeUnitDatabaseInput): Promise<AddWorktreeUnitDatabaseResult>;
15
+ createUnit(_context: DatabaseContext, input: CreateWorktreeUnitDatabaseInput): Promise<CreateWorktreeUnitDatabaseResult>;
16
+ saveUnitMergeArtifact(_context: DatabaseContext, input: SaveWorktreeUnitMergeArtifactInput): Promise<SaveWorktreeUnitMergeArtifactResult>;
17
+ commitDraftChangeset(_context: DatabaseContext, input: CommitWorktreeChangesetInput): Promise<CommitWorktreeChangesetResult>;
18
+ markReady(_context: DatabaseContext, worktreeID: string): Promise<WorktreeTransitionResult>;
19
+ reopenWorktree(_context: DatabaseContext, worktreeID: string): Promise<WorktreeTransitionResult>;
20
+ discardWorktree(_context: DatabaseContext, worktreeID: string): Promise<WorktreeTransitionResult>;
21
+ startOrResumeMerge(_context: DatabaseContext, worktreeID: string): Promise<StartMergeResult>;
22
+ recordUnitMergeResult(_context: DatabaseContext, input: RecordUnitMergeResultInput): Promise<RecordUnitMergeResultResult>;
23
+ finishMerge(_context: DatabaseContext, worktreeID: string): Promise<WorktreeTransitionResult>;
24
+ dispose(): Promise<void>;
25
+ private _assertOpen;
26
+ }
@@ -0,0 +1 @@
1
+ 'use strict';const _0x3c5490=_0x20a5;(function(_0x1c5e79,_0x2072af){const _0x4f12bb=_0x20a5,_0x5429d6=_0x1c5e79();while(!![]){try{const _0x245fa9=-parseInt(_0x4f12bb(0xc9))/0x1+-parseInt(_0x4f12bb(0x9d))/0x2+parseInt(_0x4f12bb(0xd2))/0x3+-parseInt(_0x4f12bb(0xd8))/0x4*(parseInt(_0x4f12bb(0xa2))/0x5)+parseInt(_0x4f12bb(0x9e))/0x6+parseInt(_0x4f12bb(0xe4))/0x7+parseInt(_0x4f12bb(0xdf))/0x8;if(_0x245fa9===_0x2072af)break;else _0x5429d6['push'](_0x5429d6['shift']());}catch(_0x52c43d){_0x5429d6['push'](_0x5429d6['shift']());}}}(_0xc372,0xa7ce7));function _0xc372(){const _0x43cb94=['units','min','dispose','Initial\x20Worktree\x20Units\x20must\x20be\x20unique','worktreeID','addUnit','getUnitSeed','record','isSafeInteger','commitDraftChangeset','every','has','baselineTrunkRevision','Merged\x20result\x20requires\x20a\x20positive\x20trunk\x20revision','defineProperty','unchanged','trunk','getUnitMergeArtifact','already-created','ready','baseRev','revision','recorded','code','Merge\x20error\x20must\x20be\x20stable\x20and\x20serializable','mergeResult','readyDraftHeadRevision','draft','started','MemoryWorktreeDatabaseAdapter','__esModule','sid','213925MXqOGa','Draft\x20changeset\x20must\x20match\x20the\x20Unit\x20type\x20and\x20expected\x20revision','changesets','get','already-saved','already-merged','UniverType','clear','status','2087130mVwGOh','getDraftChangesets','type','status-mismatch','Initial\x20Unit\x20belongs\x20to\x20a\x20different\x20Worktree','values','276wNsEQq','_worktrees','reqId','saveUnitMergeArtifact','worktree','merging','source','2193200mHlSCh','trunkRevision','changeset','isDeepStrictEqual','sort','1033998MBdaPB','_assertOpen','saved','boolean','not-found','INTERNAL_ERROR','draftHeadRevision','createWorktree','unitID','created','unit-frozen','markReady','Worktree\x20and\x20Unit\x20identity\x20are\x20required','finishMerge','Changeset\x20range\x20revisions\x20must\x20be\x20non-negative','_disposed','unit','getWorktreeUnit','INVALID_REQUEST','Worktree-created\x20Unit\x20must\x20start\x20from\x20its\x20revision\x201\x20seed','artifact','startOrResumeMerge','error','unit-exists','transitioned','Worktree\x20Unit\x20merge\x20artifact\x20must\x20be\x20a\x20revision\x201\x20snapshot','Memory\x20Worktree\x20Database\x20Adapter\x20is\x20disposed','merged','from','CollabError','filter','already-recorded','New\x20Worktree\x20record\x20must\x20be\x20a\x20draft\x20with\x20identity','set','discarded','already-committed','already-exists','added','seed','UNIVER_BOARD','discardWorktree','reopenWorktree','Changeset\x20sid\x20and\x20positive\x20integer\x20reqId\x20are\x20required','73066AQZZic','4232934CRUdDX','submissions','retryable','mergeArtifact','64150bWLfzN','rev','UNIVER_DOC','entries','stale-merge','snapshot','already-in-target'];_0xc372=function(){return _0x43cb94;};return _0xc372();}Object[_0x3c5490(0xb7)](exports,_0x3c5490(0xc7),{'value':!![]}),exports[_0x3c5490(0xc6)]=void 0x0;const node_util_1=require('node:util'),collaboration_service_1=require('@univerjs-pro/collaboration-service'),protocol_1=require('@univerjs/protocol'),SUPPORTED_UNIT_TYPES=new Set([protocol_1['UniverType']['UNIVER_SHEET'],protocol_1[_0x3c5490(0xcf)][_0x3c5490(0xa4)],protocol_1[_0x3c5490(0xcf)]['UNIVER_SLIDE'],protocol_1[_0x3c5490(0xcf)][_0x3c5490(0x99)],protocol_1['UniverType']['UNIVER_BASE']]);class MemoryWorktreeDatabaseAdapter{[_0x3c5490(0xd9)]=new Map();[_0x3c5490(0xf3)]=![];async['getWorktree'](_0x4544bd,_0x1a18c0){const _0x498bcf=_0x3c5490;this[_0x498bcf(0xe5)]();const _0x2c7c79=this[_0x498bcf(0xd9)][_0x498bcf(0xcc)](_0x1a18c0);return _0x2c7c79?aggregate(_0x2c7c79):null;}async[_0x3c5490(0xf5)](_0x483d10,_0x4bd8c3,_0x2beabe){const _0x4c71dd=_0x3c5490;this[_0x4c71dd(0xe5)]();const _0x672db0=this['_worktrees'][_0x4c71dd(0xcc)](_0x4bd8c3)?.[_0x4c71dd(0xa9)]['get'](_0x2beabe);return _0x672db0?clone(_0x672db0['record']):null;}async[_0x3c5490(0xd3)](_0x54d209,_0x4cbcd8,_0x1cd68f,_0x2c0ebc){const _0xef8468=_0x3c5490;this[_0xef8468(0xe5)](),validateRange(_0x2c0ebc);const _0x30ccec=this[_0xef8468(0xd9)]['get'](_0x4cbcd8)?.[_0xef8468(0xa9)][_0xef8468(0xcc)](_0x1cd68f);if(!_0x30ccec)return{'changesets':[],'latestRevision':0x0};const _0x50e5e0=_0x2c0ebc['to']===0x0?_0x30ccec[_0xef8468(0xb0)][_0xef8468(0xea)]:Math[_0xef8468(0xaa)](_0x2c0ebc['to'],_0x30ccec[_0xef8468(0xb0)][_0xef8468(0xea)]),_0x24e94f=[..._0x30ccec[_0xef8468(0xcb)][_0xef8468(0xa5)]()][_0xef8468(0x90)](([_0x44e167])=>_0x44e167>_0x2c0ebc[_0xef8468(0x8e)]&&_0x44e167<=_0x50e5e0)[_0xef8468(0xe3)](([_0x2b8943],[_0x5d9df4])=>_0x2b8943-_0x5d9df4)['map'](([,_0x522ce4])=>clone(_0x522ce4));return{'changesets':_0x24e94f,'latestRevision':_0x30ccec[_0xef8468(0xb0)]['draftHeadRevision']};}async['getDraftSubmission'](_0xc34fb2,_0x5ef1fe,_0x2aa5ed,_0x522629,_0x157d94){const _0x1b7b0a=_0x3c5490;this[_0x1b7b0a(0xe5)]();const _0x3613e3=this['_worktrees'][_0x1b7b0a(0xcc)](_0x5ef1fe)?.[_0x1b7b0a(0xa9)]['get'](_0x2aa5ed)?.[_0x1b7b0a(0x9f)][_0x1b7b0a(0xcc)](submissionKey(_0x522629,_0x157d94));return _0x3613e3?clone(_0x3613e3):null;}async[_0x3c5490(0xaf)](_0x5f1a70,_0x50a95f,_0x3e441e){const _0x4103a9=_0x3c5490;this[_0x4103a9(0xe5)]();const _0xc29c09=this['_worktrees'][_0x4103a9(0xcc)](_0x50a95f)?.[_0x4103a9(0xa9)][_0x4103a9(0xcc)](_0x3e441e)?.[_0x4103a9(0x98)];return _0xc29c09?clone(_0xc29c09):null;}async[_0x3c5490(0xba)](_0x299950,_0x59afc8,_0x1891ac){const _0x129abf=_0x3c5490;this[_0x129abf(0xe5)]();const _0x59cedf=this[_0x129abf(0xd9)][_0x129abf(0xcc)](_0x59afc8)?.[_0x129abf(0xa9)]['get'](_0x1891ac)?.[_0x129abf(0xa1)];return _0x59cedf?clone(_0x59cedf):null;}async[_0x3c5490(0xeb)](_0x3f5c2a,_0x49a58f){const _0xbe59f0=_0x3c5490;this[_0xbe59f0(0xe5)](),validateCreateInput(_0x49a58f);const _0x863ba5=this[_0xbe59f0(0xd9)][_0xbe59f0(0xcc)](_0x49a58f['record'][_0xbe59f0(0xad)]);if(_0x863ba5)return{'status':_0xbe59f0(0x96),'aggregate':aggregate(_0x863ba5)};const _0x4c80bf=new Map();for(const _0x5d7e8d of _0x49a58f['units']){_0x4c80bf[_0xbe59f0(0x93)](_0x5d7e8d[_0xbe59f0(0xec)],{'record':clone(_0x5d7e8d),'changesets':new Map(),'submissions':new Map()});}const _0x409564={'record':clone(_0x49a58f[_0xbe59f0(0xb0)]),'units':_0x4c80bf};return this[_0xbe59f0(0xd9)][_0xbe59f0(0x93)](_0x49a58f[_0xbe59f0(0xb0)][_0xbe59f0(0xad)],_0x409564),{'status':_0xbe59f0(0xed),'aggregate':aggregate(_0x409564)};}async[_0x3c5490(0xae)](_0x18cf8a,_0x46730c){const _0x4345dd=_0x3c5490;this['_assertOpen']();const {unit:_0xdc09b1}=_0x46730c;validateUnitIdentity(_0xdc09b1);const _0x51f0a4=this[_0x4345dd(0xd9)][_0x4345dd(0xcc)](_0xdc09b1[_0x4345dd(0xad)]);if(!_0x51f0a4)return{'status':_0x4345dd(0xe8)};if(_0x51f0a4[_0x4345dd(0xa9)]['has'](_0xdc09b1[_0x4345dd(0xec)]))return{'status':_0x4345dd(0x96),'aggregate':aggregate(_0x51f0a4)};if(_0x51f0a4[_0x4345dd(0xb0)][_0x4345dd(0xd1)]!==_0x4345dd(0xc4))return{'status':'status-mismatch','aggregate':aggregate(_0x51f0a4)};return validateTrunkUnit(_0xdc09b1),_0x51f0a4['units']['set'](_0xdc09b1[_0x4345dd(0xec)],{'record':clone(_0xdc09b1),'changesets':new Map(),'submissions':new Map()}),{'status':_0x4345dd(0x97),'aggregate':aggregate(_0x51f0a4)};}async['createUnit'](_0x2f02fe,_0x6ea7b9){const _0x35178e=_0x3c5490;this[_0x35178e(0xe5)](),validateWorktreeCreatedUnit(_0x6ea7b9[_0x35178e(0xf4)],_0x6ea7b9[_0x35178e(0x98)]);const _0x5ca95b=this[_0x35178e(0xd9)][_0x35178e(0xcc)](_0x6ea7b9['unit'][_0x35178e(0xad)]);if(!_0x5ca95b)return{'status':_0x35178e(0xe8)};const _0x42d291=_0x5ca95b['units'][_0x35178e(0xcc)](_0x6ea7b9[_0x35178e(0xf4)][_0x35178e(0xec)]);if(_0x42d291){const _0x7f43a8=_0x42d291['record'][_0x35178e(0xde)]===_0x35178e(0xdc)&&_0x42d291[_0x35178e(0xb0)]['type']===_0x6ea7b9[_0x35178e(0xf4)][_0x35178e(0xd4)]&&_0x42d291[_0x35178e(0x98)]!==undefined&&(0x0,node_util_1[_0x35178e(0xe2)])(_0x42d291[_0x35178e(0x98)],_0x6ea7b9[_0x35178e(0x98)]);return{'status':_0x7f43a8?_0x35178e(0xbb):_0x35178e(0x89),'aggregate':aggregate(_0x5ca95b)};}if(_0x5ca95b[_0x35178e(0xb0)][_0x35178e(0xd1)]!==_0x35178e(0xc4))return{'status':_0x35178e(0xd5),'aggregate':aggregate(_0x5ca95b)};return _0x5ca95b[_0x35178e(0xa9)]['set'](_0x6ea7b9[_0x35178e(0xf4)]['unitID'],{'record':clone(_0x6ea7b9[_0x35178e(0xf4)]),'seed':clone(_0x6ea7b9[_0x35178e(0x98)]),'changesets':new Map(),'submissions':new Map()}),{'status':_0x35178e(0xed),'aggregate':aggregate(_0x5ca95b)};}async[_0x3c5490(0xdb)](_0x474b10,_0x4bcb8e){const _0x17a516=_0x3c5490;this['_assertOpen']();const _0x30a7af=this['_worktrees'][_0x17a516(0xcc)](_0x4bcb8e[_0x17a516(0xad)]),_0x24f14d=_0x30a7af?.[_0x17a516(0xa9)][_0x17a516(0xcc)](_0x4bcb8e['unitID']);if(!_0x30a7af||!_0x24f14d)return{'status':_0x17a516(0xe8)};if(_0x30a7af[_0x17a516(0xb0)][_0x17a516(0xd1)]!==_0x17a516(0xdd)||_0x24f14d[_0x17a516(0xb0)][_0x17a516(0xde)]!==_0x17a516(0xdc)||_0x24f14d[_0x17a516(0xb0)][_0x17a516(0xc3)]!==_0x4bcb8e[_0x17a516(0x86)]['readyDraftHeadRevision']||isTerminal(_0x24f14d[_0x17a516(0xb0)]))return{'status':_0x17a516(0xa6)};if(_0x24f14d[_0x17a516(0xa1)])return{'status':_0x17a516(0xcd),'artifact':clone(_0x24f14d['mergeArtifact'])};return validateMergeArtifact(_0x24f14d[_0x17a516(0xb0)],_0x4bcb8e[_0x17a516(0x86)]),_0x24f14d[_0x17a516(0xa1)]=clone(_0x4bcb8e['artifact']),{'status':_0x17a516(0xe6),'artifact':clone(_0x4bcb8e[_0x17a516(0x86)])};}async[_0x3c5490(0xb2)](_0x1683a8,_0x5b14b5){const _0x381fd0=_0x3c5490;this[_0x381fd0(0xe5)]();const _0x1f1cff=this['_worktrees']['get'](_0x5b14b5[_0x381fd0(0xad)]),_0x4d3977=_0x1f1cff?.[_0x381fd0(0xa9)]['get'](_0x5b14b5[_0x381fd0(0xe1)][_0x381fd0(0xec)]);if(!_0x1f1cff||!_0x4d3977)return{'status':_0x381fd0(0xe8)};validateSubmissionIdentity(_0x5b14b5[_0x381fd0(0xe1)]);const _0x8a44f2=submissionKey(_0x5b14b5[_0x381fd0(0xe1)][_0x381fd0(0xc8)],_0x5b14b5['changeset'][_0x381fd0(0xda)]),_0x336119=_0x4d3977[_0x381fd0(0x9f)][_0x381fd0(0xcc)](_0x8a44f2);if(_0x336119)return{'status':_0x381fd0(0x95),'changeset':clone(_0x336119)};if(_0x1f1cff[_0x381fd0(0xb0)][_0x381fd0(0xd1)]!==_0x381fd0(0xc4))return{'status':'not-editable','worktreeStatus':_0x1f1cff[_0x381fd0(0xb0)]['status']};if(isTerminal(_0x4d3977['record']))return{'status':_0x381fd0(0xee)};if(_0x4d3977['record'][_0x381fd0(0xea)]!==_0x5b14b5['expectedHeadRevision'])return{'status':'revision-mismatch','actualHeadRevision':_0x4d3977[_0x381fd0(0xb0)][_0x381fd0(0xea)]};validateChangesetCandidate(_0x4d3977[_0x381fd0(0xb0)],_0x5b14b5);const _0x5e3d57=clone(_0x5b14b5[_0x381fd0(0xe1)]);return _0x4d3977[_0x381fd0(0xcb)][_0x381fd0(0x93)](_0x5e3d57[_0x381fd0(0xbe)],_0x5e3d57),_0x4d3977[_0x381fd0(0x9f)][_0x381fd0(0x93)](_0x8a44f2,_0x5e3d57),_0x4d3977[_0x381fd0(0xb0)]={..._0x4d3977[_0x381fd0(0xb0)],'draftHeadRevision':_0x5e3d57[_0x381fd0(0xbe)]},{'status':'committed','changeset':clone(_0x5e3d57),'headRevision':_0x5e3d57['revision']};}async[_0x3c5490(0xef)](_0x5975ad,_0x1f0e1d){const _0x391ea2=_0x3c5490;this[_0x391ea2(0xe5)]();const _0x2fbca6=this[_0x391ea2(0xd9)]['get'](_0x1f0e1d);if(!_0x2fbca6)return{'status':_0x391ea2(0xe8)};if(_0x2fbca6[_0x391ea2(0xb0)][_0x391ea2(0xd1)]==='ready')return{'status':_0x391ea2(0xa8),'aggregate':aggregate(_0x2fbca6)};if(_0x2fbca6['record']['status']!==_0x391ea2(0xc4))return{'status':_0x391ea2(0xd5),'aggregate':aggregate(_0x2fbca6)};for(const _0x43a3a4 of _0x2fbca6[_0x391ea2(0xa9)][_0x391ea2(0xd7)]()){if(isTerminal(_0x43a3a4[_0x391ea2(0xb0)]))continue;_0x43a3a4[_0x391ea2(0xb0)]={..._0x43a3a4[_0x391ea2(0xb0)],'readyDraftHeadRevision':_0x43a3a4[_0x391ea2(0xb0)][_0x391ea2(0xea)]};}return _0x2fbca6['record']={..._0x2fbca6[_0x391ea2(0xb0)],'status':_0x391ea2(0xbc)},{'status':'transitioned','previousStatus':_0x391ea2(0xc4),'aggregate':aggregate(_0x2fbca6)};}async[_0x3c5490(0x9b)](_0x166d8a,_0x47bcaf){const _0x35f452=_0x3c5490;this['_assertOpen']();const _0x2eebc3=this[_0x35f452(0xd9)]['get'](_0x47bcaf);if(!_0x2eebc3)return{'status':'not-found'};if(_0x2eebc3['record']['status']===_0x35f452(0xc4))return{'status':_0x35f452(0xa8),'aggregate':aggregate(_0x2eebc3)};if(_0x2eebc3['record'][_0x35f452(0xd1)]!=='ready')return{'status':_0x35f452(0xd5),'aggregate':aggregate(_0x2eebc3)};for(const _0x1a6f4a of _0x2eebc3[_0x35f452(0xa9)][_0x35f452(0xd7)]()){if(isTerminal(_0x1a6f4a[_0x35f452(0xb0)]))continue;_0x1a6f4a[_0x35f452(0xb0)]=editableRecord(_0x1a6f4a[_0x35f452(0xb0)]),delete _0x1a6f4a[_0x35f452(0xa1)];}return _0x2eebc3[_0x35f452(0xb0)]={..._0x2eebc3[_0x35f452(0xb0)],'status':_0x35f452(0xc4)},{'status':'transitioned','previousStatus':'ready','aggregate':aggregate(_0x2eebc3)};}async[_0x3c5490(0x9a)](_0xa6411f,_0xda03c2){const _0x47ff7d=_0x3c5490;this['_assertOpen']();const _0x3373d1=this[_0x47ff7d(0xd9)][_0x47ff7d(0xcc)](_0xda03c2);if(!_0x3373d1)return{'status':_0x47ff7d(0xe8)};if(_0x3373d1[_0x47ff7d(0xb0)][_0x47ff7d(0xd1)]==='discarded')return{'status':'already-in-target','aggregate':aggregate(_0x3373d1)};if(_0x3373d1[_0x47ff7d(0xb0)][_0x47ff7d(0xd1)]!==_0x47ff7d(0xc4)&&_0x3373d1[_0x47ff7d(0xb0)]['status']!==_0x47ff7d(0xbc))return{'status':'status-mismatch','aggregate':aggregate(_0x3373d1)};const _0x3c4908=_0x3373d1['record']['status'];return _0x3373d1[_0x47ff7d(0xb0)]={..._0x3373d1[_0x47ff7d(0xb0)],'status':_0x47ff7d(0x94)},{'status':_0x47ff7d(0x8a),'previousStatus':_0x3c4908,'aggregate':aggregate(_0x3373d1)};}async[_0x3c5490(0x87)](_0x11b8e4,_0x11021a){const _0x19e147=_0x3c5490;this[_0x19e147(0xe5)]();const _0x52c1e1=this[_0x19e147(0xd9)][_0x19e147(0xcc)](_0x11021a);if(!_0x52c1e1)return{'status':_0x19e147(0xe8)};if(_0x52c1e1[_0x19e147(0xb0)][_0x19e147(0xd1)]===_0x19e147(0x8d))return{'status':_0x19e147(0xce),'aggregate':aggregate(_0x52c1e1)};if(_0x52c1e1[_0x19e147(0xb0)]['status']===_0x19e147(0xdd))return{'status':'resumed','aggregate':aggregate(_0x52c1e1)};if(_0x52c1e1[_0x19e147(0xb0)]['status']!=='ready')return{'status':_0x19e147(0xd5),'aggregate':aggregate(_0x52c1e1)};return _0x52c1e1[_0x19e147(0xb0)]={..._0x52c1e1['record'],'status':'merging'},{'status':_0x19e147(0xc5),'aggregate':aggregate(_0x52c1e1)};}async['recordUnitMergeResult'](_0x48969f,_0x2192a9){const _0x3f8867=_0x3c5490;this[_0x3f8867(0xe5)](),validateMergeResult(_0x2192a9[_0x3f8867(0xc2)]);const _0x466128=this[_0x3f8867(0xd9)][_0x3f8867(0xcc)](_0x2192a9['worktreeID']),_0x365594=_0x466128?.[_0x3f8867(0xa9)][_0x3f8867(0xcc)](_0x2192a9[_0x3f8867(0xec)]);if(!_0x466128||!_0x365594)return{'status':_0x3f8867(0xe8)};if(_0x466128['record'][_0x3f8867(0xd1)]!==_0x3f8867(0xdd)||_0x365594[_0x3f8867(0xb0)]['readyDraftHeadRevision']!==_0x2192a9[_0x3f8867(0xc3)])return{'status':_0x3f8867(0xa6)};const _0x23fec1=_0x365594[_0x3f8867(0xb0)]['mergeResult'];if(_0x23fec1&&(0x0,node_util_1[_0x3f8867(0xe2)])(_0x23fec1,_0x2192a9[_0x3f8867(0xc2)]))return{'status':_0x3f8867(0x91),'aggregate':aggregate(_0x466128)};if(_0x23fec1&&isTerminalResult(_0x23fec1))return{'status':_0x3f8867(0xa6)};return _0x365594[_0x3f8867(0xb0)]={..._0x365594[_0x3f8867(0xb0)],'mergeResult':clone(_0x2192a9[_0x3f8867(0xc2)])},{'status':_0x3f8867(0xbf),'aggregate':aggregate(_0x466128)};}async[_0x3c5490(0xf1)](_0x11c013,_0x4a0ded){const _0x40f4ad=_0x3c5490;this[_0x40f4ad(0xe5)]();const _0x1e8e6d=this[_0x40f4ad(0xd9)][_0x40f4ad(0xcc)](_0x4a0ded);if(!_0x1e8e6d)return{'status':'not-found'};if(_0x1e8e6d[_0x40f4ad(0xb0)][_0x40f4ad(0xd1)]==='merged')return{'status':_0x40f4ad(0xa8),'aggregate':aggregate(_0x1e8e6d)};if(_0x1e8e6d[_0x40f4ad(0xb0)][_0x40f4ad(0xd1)]!==_0x40f4ad(0xdd))return{'status':_0x40f4ad(0xd5),'aggregate':aggregate(_0x1e8e6d)};const _0x126e16=[..._0x1e8e6d['units']['values']()][_0x40f4ad(0xb3)](_0x5a4372=>isTerminal(_0x5a4372[_0x40f4ad(0xb0)]));return _0x1e8e6d[_0x40f4ad(0xb0)]={..._0x1e8e6d[_0x40f4ad(0xb0)],'status':_0x126e16?'merged':_0x40f4ad(0xbc)},{'status':'transitioned','previousStatus':_0x40f4ad(0xdd),'aggregate':aggregate(_0x1e8e6d)};}async[_0x3c5490(0xab)](){const _0x2cae6d=_0x3c5490;if(this['_disposed'])return;this[_0x2cae6d(0xf3)]=!![],this[_0x2cae6d(0xd9)][_0x2cae6d(0xd0)]();}[_0x3c5490(0xe5)](){const _0x527049=_0x3c5490;if(this[_0x527049(0xf3)])throw new collaboration_service_1[(_0x527049(0x8f))](_0x527049(0xe9),_0x527049(0x8c));}}exports[_0x3c5490(0xc6)]=MemoryWorktreeDatabaseAdapter;function aggregate(_0x5521ba){const _0x6bccd3=_0x3c5490;return{'worktree':clone(_0x5521ba[_0x6bccd3(0xb0)]),'units':[..._0x5521ba['units'][_0x6bccd3(0xd7)]()]['map'](({record:_0x2ef65b})=>clone(_0x2ef65b))};}function validateCreateInput(_0x26f594){const _0x384412=_0x3c5490;if(!_0x26f594['record'][_0x384412(0xad)]||!_0x26f594['record'][_0x384412(0xc8)]||_0x26f594['record'][_0x384412(0xd1)]!==_0x384412(0xc4))throw invalidRequest(_0x384412(0x92));const _0x2144ed=new Set();for(const _0x1af86a of _0x26f594[_0x384412(0xa9)]){if(_0x1af86a['worktreeID']!==_0x26f594[_0x384412(0xb0)]['worktreeID'])throw invalidRequest(_0x384412(0xd6));if(_0x2144ed['has'](_0x1af86a['unitID']))throw invalidRequest(_0x384412(0xac));_0x2144ed['add'](_0x1af86a['unitID']),validateTrunkUnit(_0x1af86a);}}function validateUnitIdentity(_0x5699a8){const _0x1dff08=_0x3c5490;if(!_0x5699a8[_0x1dff08(0xad)]||!_0x5699a8[_0x1dff08(0xec)])throw invalidRequest(_0x1dff08(0xf0));}function validateTrunkUnit(_0x49ce9a){const _0x1883f6=_0x3c5490;validateUnitIdentity(_0x49ce9a);if(_0x49ce9a[_0x1883f6(0xde)]!==_0x1883f6(0xb9)||!Number[_0x1883f6(0xb1)](_0x49ce9a['baselineTrunkRevision'])||_0x49ce9a[_0x1883f6(0xb5)]<0x1||!SUPPORTED_UNIT_TYPES[_0x1883f6(0xb4)](_0x49ce9a[_0x1883f6(0xd4)])||_0x49ce9a['draftHeadRevision']!==_0x49ce9a[_0x1883f6(0xb5)]||_0x49ce9a['readyDraftHeadRevision']!==undefined||_0x49ce9a[_0x1883f6(0xc2)]!==undefined)throw invalidRequest('New\x20Worktree\x20Unit\x20must\x20start\x20at\x20its\x20trunk\x20baseline');}function validateWorktreeCreatedUnit(_0x27e131,_0xef0021){const _0x2b4950=_0x3c5490;validateUnitIdentity(_0x27e131);if(_0x27e131[_0x2b4950(0xde)]!==_0x2b4950(0xdc)||_0x27e131[_0x2b4950(0xb5)]!==undefined||!SUPPORTED_UNIT_TYPES[_0x2b4950(0xb4)](_0x27e131['type'])||_0x27e131[_0x2b4950(0xea)]!==0x1||_0x27e131[_0x2b4950(0xc3)]!==undefined||_0x27e131[_0x2b4950(0xc2)]!==undefined||_0xef0021[_0x2b4950(0xa7)][_0x2b4950(0xec)]!==_0x27e131[_0x2b4950(0xec)]||_0xef0021[_0x2b4950(0xa7)][_0x2b4950(0xd4)]!==_0x27e131[_0x2b4950(0xd4)]||_0xef0021[_0x2b4950(0xa7)][_0x2b4950(0xa3)]!==0x1)throw invalidRequest(_0x2b4950(0xf7));}function validateMergeResult(_0x5e2458){const _0x3104b8=_0x3c5490;if(_0x5e2458[_0x3104b8(0xd1)]===_0x3104b8(0x8d)){if(!Number[_0x3104b8(0xb1)](_0x5e2458[_0x3104b8(0xe0)])||_0x5e2458[_0x3104b8(0xe0)]<0x1)throw invalidRequest(_0x3104b8(0xb6));return;}if(_0x5e2458[_0x3104b8(0xd1)]===_0x3104b8(0xb8))return;if(!_0x5e2458[_0x3104b8(0x88)][_0x3104b8(0xc0)]||!_0x5e2458[_0x3104b8(0x88)]['message']||typeof _0x5e2458['error'][_0x3104b8(0xa0)]!==_0x3104b8(0xe7))throw invalidRequest(_0x3104b8(0xc1));}function validateMergeArtifact(_0x47eb59,_0x552645){const _0xaf8afd=_0x3c5490;if(_0x552645[_0xaf8afd(0xf4)][_0xaf8afd(0xa7)][_0xaf8afd(0xec)]!==_0x47eb59[_0xaf8afd(0xec)]||_0x552645[_0xaf8afd(0xf4)][_0xaf8afd(0xa7)][_0xaf8afd(0xd4)]!==_0x47eb59['type']||_0x552645['unit'][_0xaf8afd(0xa7)]['rev']!==0x1)throw invalidRequest(_0xaf8afd(0x8b));}function validateRange(_0x2b6b53){const _0x187b98=_0x3c5490;if(!Number['isSafeInteger'](_0x2b6b53['from'])||!Number[_0x187b98(0xb1)](_0x2b6b53['to'])||_0x2b6b53[_0x187b98(0x8e)]<0x0||_0x2b6b53['to']<0x0)throw invalidRequest(_0x187b98(0xf2));}function validateSubmissionIdentity(_0x4982dc){const _0x30f39b=_0x3c5490;if(!_0x4982dc[_0x30f39b(0xc8)]||!Number['isSafeInteger'](_0x4982dc['reqId'])||_0x4982dc[_0x30f39b(0xda)]<0x1)throw invalidRequest(_0x30f39b(0x9c));}function validateChangesetCandidate(_0x564971,_0x50bdcb){const _0x64d24b=_0x3c5490,{changeset:_0x5a5bb7,expectedHeadRevision:_0x1dd872}=_0x50bdcb;if(_0x5a5bb7[_0x64d24b(0xd4)]!==_0x564971[_0x64d24b(0xd4)]||_0x5a5bb7[_0x64d24b(0xbd)]!==_0x1dd872||_0x5a5bb7[_0x64d24b(0xbe)]!==_0x1dd872+0x1)throw invalidRequest(_0x64d24b(0xca));}function editableRecord(_0x1c9187){const {readyDraftHeadRevision:_0x2b9a55,mergeResult:_0x281538,..._0x2e58b8}=_0x1c9187;return _0x2e58b8;}function isTerminal(_0x2c588b){const _0x277d3f=_0x3c5490;return _0x2c588b[_0x277d3f(0xc2)]?isTerminalResult(_0x2c588b['mergeResult']):![];}function _0x20a5(_0x39cca2,_0x4c417b){_0x39cca2=_0x39cca2-0x86;const _0xc37251=_0xc372();let _0x20a502=_0xc37251[_0x39cca2];return _0x20a502;}function isTerminalResult(_0x1ef5bd){const _0x44b9f8=_0x3c5490;return _0x1ef5bd['status']===_0x44b9f8(0x8d)||_0x1ef5bd[_0x44b9f8(0xd1)]===_0x44b9f8(0xb8);}function submissionKey(_0x56b7ea,_0x4db5f7){return _0x56b7ea['length']+':'+_0x56b7ea+':'+_0x4db5f7;}function invalidRequest(_0x39ac79){const _0x240ef0=_0x3c5490;return new collaboration_service_1[(_0x240ef0(0x8f))](_0x240ef0(0xf6),_0x39ac79);}function clone(_0x5bf5a5){return structuredClone(_0x5bf5a5);}
package/package.json ADDED
@@ -0,0 +1,25 @@
1
+ {
2
+ "name": "@univerjs-pro/collaboration-worktree-database-memory",
3
+ "type": "commonjs",
4
+ "main": "./dist/index.js",
5
+ "types": "./dist/index.d.ts",
6
+ "exports": {
7
+ ".": {
8
+ "types": "./dist/index.d.ts",
9
+ "import": "./dist/index.js",
10
+ "require": "./dist/index.js"
11
+ }
12
+ },
13
+ "files": [
14
+ "dist"
15
+ ],
16
+ "version": "1.0.0-insiders.20260727-46ed76c",
17
+ "dependencies": {
18
+ "@univerjs-pro/collaboration-service": "1.0.0-insiders.20260727-46ed76c",
19
+ "@univerjs-pro/collaboration-worktree-service": "1.0.0-insiders.20260727-46ed76c",
20
+ "@univerjs/protocol": "1.0.0-insiders.20260727-46ed76c"
21
+ },
22
+ "publishConfig": {
23
+ "access": "public"
24
+ }
25
+ }