core-3nweb-client-lib 0.44.3 → 0.44.5
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/build/api-defs/files.d.ts +21 -4
- package/build/core/storage/synced/storage.js +2 -2
- package/build/core-ipc/fs.js +11 -11
- package/build/lib-client/cryptor/cryptor-wasm.js +1 -1
- package/build/lib-client/cryptor/cryptor.wasm +0 -0
- package/build/lib-client/fs-utils/files.js +2 -3
- package/build/lib-client/xsp-fs/file-node.d.ts +1 -1
- package/build/lib-client/xsp-fs/file-node.js +5 -4
- package/build/lib-client/xsp-fs/file.d.ts +1 -0
- package/build/lib-client/xsp-fs/file.js +18 -0
- package/build/lib-client/xsp-fs/folder-node.d.ts +3 -2
- package/build/lib-client/xsp-fs/folder-node.js +48 -61
- package/build/lib-client/xsp-fs/fs.d.ts +2 -2
- package/build/lib-client/xsp-fs/fs.js +3 -3
- package/build/lib-client/xsp-fs/link-node.d.ts +1 -0
- package/build/lib-client/xsp-fs/link-node.js +3 -0
- package/build/lib-client/xsp-fs/node-in-fs.d.ts +1 -1
- package/build/lib-client/xsp-fs/node-in-fs.js +14 -12
- package/build/lib-common/exceptions/error.js +2 -1
- package/build/protos/asmail.proto.js +158 -158
- package/build/protos/fs.proto.js +158 -158
- package/package.json +1 -1
- package/protos/fs.proto +3 -4
|
@@ -675,6 +675,7 @@ declare namespace web3n.files {
|
|
|
675
675
|
|
|
676
676
|
interface OptionsToDiffFileVersions {
|
|
677
677
|
remoteVersion?: number;
|
|
678
|
+
// XXX implicit assumption that mtime changes only when file content changes
|
|
678
679
|
compareContentIfSameMTime?: boolean;
|
|
679
680
|
}
|
|
680
681
|
|
|
@@ -1493,6 +1494,12 @@ declare namespace web3n.files {
|
|
|
1493
1494
|
*/
|
|
1494
1495
|
getRemoteFolderItem(path: string, remoteItemName: string, remoteVersion?: number): Promise<ReadonlyFS>;
|
|
1495
1496
|
|
|
1497
|
+
// compareLocalAndRemoteFileItems(path: string, itemName: string, remoteVersion?: number): Promise<FileDiff>;
|
|
1498
|
+
|
|
1499
|
+
// compareLocalAndRemoteFolderItems(
|
|
1500
|
+
// path: string, itemName: string, remoteVersion?: number
|
|
1501
|
+
// ): Promise<FolderContentDiff>;
|
|
1502
|
+
|
|
1496
1503
|
// XXX method to work around damaged files
|
|
1497
1504
|
// reloadFromServer(path: string): Promise<SyncStatus>;
|
|
1498
1505
|
|
|
@@ -1631,6 +1638,13 @@ declare namespace web3n.files {
|
|
|
1631
1638
|
};
|
|
1632
1639
|
}
|
|
1633
1640
|
|
|
1641
|
+
// interface FolderContentDiff extends CommonDiff {
|
|
1642
|
+
// local: ({
|
|
1643
|
+
|
|
1644
|
+
// } & ListingEntry)[];
|
|
1645
|
+
// remote: ({} & ListingEntry)[];
|
|
1646
|
+
// }
|
|
1647
|
+
|
|
1634
1648
|
interface WritableFSSyncAPI extends ReadonlyFSSyncAPI {
|
|
1635
1649
|
|
|
1636
1650
|
/**
|
|
@@ -1669,15 +1683,18 @@ declare namespace web3n.files {
|
|
|
1669
1683
|
|
|
1670
1684
|
/**
|
|
1671
1685
|
* This method is for resolving conflicts on folders.
|
|
1672
|
-
* It
|
|
1686
|
+
* It absorbs folder changes done in remote version.
|
|
1673
1687
|
* Returns new local version, if there were remote items to adopt and their were added to local state.
|
|
1674
1688
|
* @param path
|
|
1675
1689
|
* @param opts
|
|
1676
1690
|
*/
|
|
1677
|
-
|
|
1678
|
-
path: string, opts?:
|
|
1691
|
+
absorbRemoteFolderChanges(
|
|
1692
|
+
path: string, opts?: OptionsToAdoptRemoteFolderChanges
|
|
1679
1693
|
): Promise<number|undefined>;
|
|
1680
1694
|
|
|
1695
|
+
// XXX
|
|
1696
|
+
// makeSnapshot(path: string); // -> snapshot points and archives current versions of tree elements
|
|
1697
|
+
|
|
1681
1698
|
}
|
|
1682
1699
|
|
|
1683
1700
|
interface OptionsToAdoptRemoteItem {
|
|
@@ -1700,7 +1717,7 @@ declare namespace web3n.files {
|
|
|
1700
1717
|
newItemName?: string;
|
|
1701
1718
|
}
|
|
1702
1719
|
|
|
1703
|
-
interface
|
|
1720
|
+
interface OptionsToAdoptRemoteFolderChanges {
|
|
1704
1721
|
/**
|
|
1705
1722
|
* Folder's local version. If not given, current local version is used.
|
|
1706
1723
|
*/
|
|
@@ -194,7 +194,7 @@ class SyncedStore {
|
|
|
194
194
|
return obj.getObjSrcFromLocalAndSyncedBranch(version);
|
|
195
195
|
}
|
|
196
196
|
async getObjSrcOfRemoteVersion(objId, version) {
|
|
197
|
-
const obj = await this.getObjOrThrow(objId);
|
|
197
|
+
const obj = await this.getObjOrThrow(objId, true);
|
|
198
198
|
return obj.getObjSrcFromRemoteAndSyncedBranch(version);
|
|
199
199
|
}
|
|
200
200
|
async saveObj(objId, version, encSub) {
|
|
@@ -225,7 +225,7 @@ class SyncedStore {
|
|
|
225
225
|
await obj.removeCurrentVersion();
|
|
226
226
|
}
|
|
227
227
|
async getNumOfBytesNeedingDownload(objId, version) {
|
|
228
|
-
const obj = await this.getObjOrThrow(objId);
|
|
228
|
+
const obj = await this.getObjOrThrow(objId, true);
|
|
229
229
|
return obj.getNumOfBytesNeedingDownload(version);
|
|
230
230
|
}
|
|
231
231
|
async close() {
|
package/build/core-ipc/fs.js
CHANGED
|
@@ -117,7 +117,7 @@ function makeFSCaller(caller, fsMsg) {
|
|
|
117
117
|
fs.v.sync.startUpload = vsStartUpload.makeCaller(caller, vsPath);
|
|
118
118
|
fs.v.sync.upload = vsUpload.makeCaller(caller, vsPath);
|
|
119
119
|
fs.v.sync.adoptRemoteFolderItem = vsAdoptRemoteFolderItem.makeCaller(caller, vsPath);
|
|
120
|
-
fs.v.sync.
|
|
120
|
+
fs.v.sync.absorbRemoteFolderChanges = vsAbsorbRemoteFolderChanges.makeCaller(caller, vsPath);
|
|
121
121
|
}
|
|
122
122
|
}
|
|
123
123
|
}
|
|
@@ -203,7 +203,7 @@ function exposeFSService(fs, expServices) {
|
|
|
203
203
|
implExp.v.sync.startUpload = vsStartUpload.wrapService(fs.v.sync.startUpload);
|
|
204
204
|
implExp.v.sync.upload = vsUpload.wrapService(fs.v.sync.upload);
|
|
205
205
|
implExp.v.sync.adoptRemoteFolderItem = vsAdoptRemoteFolderItem.wrapService(fs.v.sync.adoptRemoteFolderItem);
|
|
206
|
-
implExp.v.sync.
|
|
206
|
+
implExp.v.sync.absorbRemoteFolderChanges = vsAbsorbRemoteFolderChanges.wrapService(fs.v.sync.absorbRemoteFolderChanges);
|
|
207
207
|
}
|
|
208
208
|
}
|
|
209
209
|
}
|
|
@@ -1979,9 +1979,9 @@ var vsAdoptRemoteFolderItem;
|
|
|
1979
1979
|
vsAdoptRemoteFolderItem.makeCaller = makeCaller;
|
|
1980
1980
|
})(vsAdoptRemoteFolderItem || (vsAdoptRemoteFolderItem = {}));
|
|
1981
1981
|
Object.freeze(vsAdoptRemoteFolderItem);
|
|
1982
|
-
var
|
|
1983
|
-
(function (
|
|
1984
|
-
const requestType = protobuf_type_1.ProtoType.for(fs_proto_1.fs.
|
|
1982
|
+
var vsAbsorbRemoteFolderChanges;
|
|
1983
|
+
(function (vsAbsorbRemoteFolderChanges) {
|
|
1984
|
+
const requestType = protobuf_type_1.ProtoType.for(fs_proto_1.fs.AbsorbRemoteFolderChangesRequestBody);
|
|
1985
1985
|
function optionsFromMsg(msg) {
|
|
1986
1986
|
if (!msg) {
|
|
1987
1987
|
return;
|
|
@@ -2002,7 +2002,7 @@ var vsMergeFolderCurrentAndRemoteVersions;
|
|
|
2002
2002
|
postfixForNameOverlaps: (0, protobuf_msg_1.toOptVal)(opts.postfixForNameOverlaps),
|
|
2003
2003
|
};
|
|
2004
2004
|
}
|
|
2005
|
-
const replyType = protobuf_type_1.ProtoType.for(fs_proto_1.fs.
|
|
2005
|
+
const replyType = protobuf_type_1.ProtoType.for(fs_proto_1.fs.AbsorbRemoteFolderChangesReplyBody);
|
|
2006
2006
|
function wrapService(fn) {
|
|
2007
2007
|
return buf => {
|
|
2008
2008
|
const { path, opts } = requestType.unpack(buf);
|
|
@@ -2011,16 +2011,16 @@ var vsMergeFolderCurrentAndRemoteVersions;
|
|
|
2011
2011
|
return { promise };
|
|
2012
2012
|
};
|
|
2013
2013
|
}
|
|
2014
|
-
|
|
2014
|
+
vsAbsorbRemoteFolderChanges.wrapService = wrapService;
|
|
2015
2015
|
function makeCaller(caller, objPath) {
|
|
2016
|
-
const ipcPath = (0, protobuf_msg_1.methodPathFor)(objPath, '
|
|
2016
|
+
const ipcPath = (0, protobuf_msg_1.methodPathFor)(objPath, 'absorbRemoteFolderChanges');
|
|
2017
2017
|
return (path, opts) => caller
|
|
2018
2018
|
.startPromiseCall(ipcPath, requestType.pack({ path, opts: optionsToMsg(opts) }))
|
|
2019
2019
|
.then(buf => (0, protobuf_msg_1.valOfOptInt)(replyType.unpack(buf).newVersion));
|
|
2020
2020
|
}
|
|
2021
|
-
|
|
2022
|
-
})(
|
|
2023
|
-
Object.freeze(
|
|
2021
|
+
vsAbsorbRemoteFolderChanges.makeCaller = makeCaller;
|
|
2022
|
+
})(vsAbsorbRemoteFolderChanges || (vsAbsorbRemoteFolderChanges = {}));
|
|
2023
|
+
Object.freeze(vsAbsorbRemoteFolderChanges);
|
|
2024
2024
|
var vsAdoptRemote;
|
|
2025
2025
|
(function (vsAdoptRemote) {
|
|
2026
2026
|
const requestType = protobuf_type_1.ProtoType.for(fs_proto_1.fs.AdoptRemoteRequestBody);
|