Compare commits
4 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
552da48a32 | ||
|
|
db8a688620 | ||
|
|
3088028d05 | ||
|
|
fd62ef865d |
@@ -55,6 +55,6 @@ module.exports = merge(baseWpConfig, {
|
|||||||
filename: `${publicDir}/index.html`
|
filename: `${publicDir}/index.html`
|
||||||
}),
|
}),
|
||||||
new CopyWebpackPlugin([{from: `${clientDir}/assets/*`, to: `${publicDir}/`, flatten: true}]),
|
new CopyWebpackPlugin([{from: `${clientDir}/assets/*`, to: `${publicDir}/`, flatten: true}]),
|
||||||
//new AppCachePlugin({})
|
new AppCachePlugin({exclude: ['../index.html']})
|
||||||
]
|
]
|
||||||
});
|
});
|
||||||
|
|||||||
@@ -361,7 +361,7 @@ class ServerStorage extends Vue {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
async loadRecent(doNotifySuccess = true) {
|
async loadRecent(skipRevCheck = false, doNotifySuccess = true) {
|
||||||
if (!this.keyInited || !this.serverSyncEnabled)
|
if (!this.keyInited || !this.serverSyncEnabled)
|
||||||
return;
|
return;
|
||||||
|
|
||||||
@@ -369,27 +369,24 @@ class ServerStorage extends Vue {
|
|||||||
const oldRecentDeltaRev = bookManager.recentDeltaRev;
|
const oldRecentDeltaRev = bookManager.recentDeltaRev;
|
||||||
//проверим ревизию на сервере
|
//проверим ревизию на сервере
|
||||||
let revs = null;
|
let revs = null;
|
||||||
try {
|
if (!skipRevCheck) {
|
||||||
revs = await this.storageCheck({recent: {}, recentDelta: {}});
|
try {
|
||||||
if (revs.state == 'success' && revs.items.recent.rev == oldRecentRev &&
|
revs = await this.storageCheck({recent: {}, recentDelta: {}});
|
||||||
revs.items.recentDelta.rev == oldRecentDeltaRev) {
|
if (revs.state == 'success' && revs.items.recent.rev == oldRecentRev &&
|
||||||
if (!this.recentDeltaInited)
|
revs.items.recentDelta.rev == oldRecentDeltaRev) {
|
||||||
await this.initRecentDelta();
|
if (!this.recentDeltaInited)
|
||||||
|
await this.initRecentDelta();
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
} catch(e) {
|
||||||
|
this.error(`Ошибка соединения с сервером: ${e.message}`);
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
} catch(e) {
|
|
||||||
this.error(`Ошибка соединения с сервером: ${e.message}`);
|
|
||||||
return;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
let recent = null;
|
let recent = null;
|
||||||
try {
|
try {
|
||||||
if (revs.items.recent.rev != oldRecentRev) {
|
recent = await this.storageGet({recent: {}, recentDelta: {}});
|
||||||
recent = await this.storageGet({recent: {}, recentDelta: {}});
|
|
||||||
} else {
|
|
||||||
recent = await this.storageGet({recentDelta: {}});
|
|
||||||
recent.items.recent = {data: _.cloneDeep(bookManager.recent), rev: oldRecentRev};
|
|
||||||
}
|
|
||||||
} catch(e) {
|
} catch(e) {
|
||||||
this.error(`Ошибка соединения с сервером: ${e.message}`);
|
this.error(`Ошибка соединения с сервером: ${e.message}`);
|
||||||
return;
|
return;
|
||||||
@@ -458,7 +455,7 @@ class ServerStorage extends Vue {
|
|||||||
this.prevItemKey = itemKey;
|
this.prevItemKey = itemKey;
|
||||||
|
|
||||||
//дифф от дельты для уменьшения размера передаваемых данных в частном случае
|
//дифф от дельты для уменьшения размера передаваемых данных в частном случае
|
||||||
/*if (this.makeDeltaDiff) {
|
if (this.makeDeltaDiff) {
|
||||||
this.recentDelta.diff = utils.getObjDiff(this.prevSavedItem, bm.recent[itemKey]);
|
this.recentDelta.diff = utils.getObjDiff(this.prevSavedItem, bm.recent[itemKey]);
|
||||||
this.recentDelta.diff.key = itemKey;
|
this.recentDelta.diff.key = itemKey;
|
||||||
delete this.recentDelta[itemKey];
|
delete this.recentDelta[itemKey];
|
||||||
@@ -470,8 +467,7 @@ class ServerStorage extends Vue {
|
|||||||
this.recentDelta[key] = utils.applyObjDiff(this.prevSavedItem, this.recentDelta.diff);
|
this.recentDelta[key] = utils.applyObjDiff(this.prevSavedItem, this.recentDelta.diff);
|
||||||
}
|
}
|
||||||
delete this.recentDelta.diff;
|
delete this.recentDelta.diff;
|
||||||
}*/
|
}
|
||||||
delete this.recentDelta.diff;
|
|
||||||
|
|
||||||
//сохранение
|
//сохранение
|
||||||
this.savingRecent = true;
|
this.savingRecent = true;
|
||||||
@@ -486,7 +482,9 @@ delete this.recentDelta.diff;
|
|||||||
}
|
}
|
||||||
|
|
||||||
if (result.state == 'reject') {
|
if (result.state == 'reject') {
|
||||||
await this.loadRecent(false);
|
|
||||||
|
await this.loadRecent(true, false);
|
||||||
|
|
||||||
this.warning(`Последние изменения отменены. Данные синхронизированы с сервером.`);
|
this.warning(`Последние изменения отменены. Данные синхронизированы с сервером.`);
|
||||||
if (!recurse) {
|
if (!recurse) {
|
||||||
this.savingRecent = false;
|
this.savingRecent = false;
|
||||||
@@ -512,7 +510,9 @@ delete this.recentDelta.diff;
|
|||||||
}
|
}
|
||||||
|
|
||||||
if (result.state == 'reject') {
|
if (result.state == 'reject') {
|
||||||
await this.loadRecent(false);
|
|
||||||
|
await this.loadRecent(true, false);
|
||||||
|
|
||||||
this.warning(`Последние изменения отменены. Данные синхронизированы с сервером.`);
|
this.warning(`Последние изменения отменены. Данные синхронизированы с сервером.`);
|
||||||
if (!recurse) {
|
if (!recurse) {
|
||||||
this.savingRecent = false;
|
this.savingRecent = false;
|
||||||
|
|||||||
Reference in New Issue
Block a user