Compare commits
11 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
c2adf8d5b8 | ||
|
|
5c8d257923 | ||
|
|
55dae33e60 | ||
|
|
57d8e9061f | ||
|
|
4642679842 | ||
|
|
ba18743fab | ||
|
|
e739356733 | ||
|
|
cae4aed8d2 | ||
|
|
6c6a08d8e0 | ||
|
|
deafbae945 | ||
|
|
0b23c609f1 |
@@ -101,7 +101,7 @@
|
|||||||
</template>
|
</template>
|
||||||
</q-input>
|
</q-input>
|
||||||
|
|
||||||
<q-btn :disabled="!bookUrl" color="green-7" no-caps size="14px" @click="submitUrl">
|
<q-btn :disabled="!bookUrl" color="green-7" no-caps size="14px" @click="submitUrl()">
|
||||||
Открыть
|
Открыть
|
||||||
<q-tooltip :delay="1500" anchor="bottom middle" content-style="font-size: 80%">
|
<q-tooltip :delay="1500" anchor="bottom middle" content-style="font-size: 80%">
|
||||||
Открыть в читалке
|
Открыть в читалке
|
||||||
|
|||||||
@@ -1,6 +1,19 @@
|
|||||||
export const versionHistory = [
|
export const versionHistory = [
|
||||||
{
|
{
|
||||||
version: '1.1.0',
|
version: '1.1.2',
|
||||||
|
releaseDate: '2023-01-22',
|
||||||
|
showUntil: '2023-01-21',
|
||||||
|
content:
|
||||||
|
`
|
||||||
|
<ul>
|
||||||
|
<li>исправление багов</li>
|
||||||
|
</ul>
|
||||||
|
|
||||||
|
`
|
||||||
|
},
|
||||||
|
|
||||||
|
{
|
||||||
|
version: '1.1.1',
|
||||||
releaseDate: '2023-01-11',
|
releaseDate: '2023-01-11',
|
||||||
showUntil: '2023-01-15',
|
showUntil: '2023-01-15',
|
||||||
content:
|
content:
|
||||||
|
|||||||
18
package-lock.json
generated
18
package-lock.json
generated
@@ -1,12 +1,12 @@
|
|||||||
{
|
{
|
||||||
"name": "liberama",
|
"name": "liberama",
|
||||||
"version": "1.1.0",
|
"version": "1.1.2",
|
||||||
"lockfileVersion": 2,
|
"lockfileVersion": 2,
|
||||||
"requires": true,
|
"requires": true,
|
||||||
"packages": {
|
"packages": {
|
||||||
"": {
|
"": {
|
||||||
"name": "liberama",
|
"name": "liberama",
|
||||||
"version": "1.1.0",
|
"version": "1.1.2",
|
||||||
"hasInstallScript": true,
|
"hasInstallScript": true,
|
||||||
"license": "CC0-1.0",
|
"license": "CC0-1.0",
|
||||||
"dependencies": {
|
"dependencies": {
|
||||||
@@ -22,7 +22,7 @@
|
|||||||
"fs-extra": "^10.1.0",
|
"fs-extra": "^10.1.0",
|
||||||
"he": "^1.2.0",
|
"he": "^1.2.0",
|
||||||
"iconv-lite": "^0.6.3",
|
"iconv-lite": "^0.6.3",
|
||||||
"jembadb": "^5.1.5",
|
"jembadb": "^5.1.7",
|
||||||
"localforage": "^1.10.0",
|
"localforage": "^1.10.0",
|
||||||
"lodash": "^4.17.21",
|
"lodash": "^4.17.21",
|
||||||
"minimist": "^1.2.7",
|
"minimist": "^1.2.7",
|
||||||
@@ -5989,9 +5989,9 @@
|
|||||||
}
|
}
|
||||||
},
|
},
|
||||||
"node_modules/jembadb": {
|
"node_modules/jembadb": {
|
||||||
"version": "5.1.5",
|
"version": "5.1.7",
|
||||||
"resolved": "https://registry.npmjs.org/jembadb/-/jembadb-5.1.5.tgz",
|
"resolved": "https://registry.npmjs.org/jembadb/-/jembadb-5.1.7.tgz",
|
||||||
"integrity": "sha512-Vb+TkTg3JVXLPTG5BiqboZjJ2wvZRONnLd2+qU4gTuaqt2JSniigbniKSl3kACAEFfuRXEjfs9dLlKWjBX2Aiw==",
|
"integrity": "sha512-TNZjiKQ7Zfh89Q1x25PKKtsbkxiC5uOnx953dxJEP6RqfcdR6uVpr4cf+kmyq6IQ1GhwhXTELnoTIdvLWrpEvw==",
|
||||||
"engines": {
|
"engines": {
|
||||||
"node": ">=16.16.0"
|
"node": ">=16.16.0"
|
||||||
}
|
}
|
||||||
@@ -15154,9 +15154,9 @@
|
|||||||
}
|
}
|
||||||
},
|
},
|
||||||
"jembadb": {
|
"jembadb": {
|
||||||
"version": "5.1.5",
|
"version": "5.1.7",
|
||||||
"resolved": "https://registry.npmjs.org/jembadb/-/jembadb-5.1.5.tgz",
|
"resolved": "https://registry.npmjs.org/jembadb/-/jembadb-5.1.7.tgz",
|
||||||
"integrity": "sha512-Vb+TkTg3JVXLPTG5BiqboZjJ2wvZRONnLd2+qU4gTuaqt2JSniigbniKSl3kACAEFfuRXEjfs9dLlKWjBX2Aiw=="
|
"integrity": "sha512-TNZjiKQ7Zfh89Q1x25PKKtsbkxiC5uOnx953dxJEP6RqfcdR6uVpr4cf+kmyq6IQ1GhwhXTELnoTIdvLWrpEvw=="
|
||||||
},
|
},
|
||||||
"jest-util": {
|
"jest-util": {
|
||||||
"version": "29.3.1",
|
"version": "29.3.1",
|
||||||
|
|||||||
@@ -1,6 +1,6 @@
|
|||||||
{
|
{
|
||||||
"name": "liberama",
|
"name": "liberama",
|
||||||
"version": "1.1.0",
|
"version": "1.1.2",
|
||||||
"author": "Book Pauk <bookpauk@gmail.com>",
|
"author": "Book Pauk <bookpauk@gmail.com>",
|
||||||
"license": "CC0-1.0",
|
"license": "CC0-1.0",
|
||||||
"repository": "bookpauk/liberama",
|
"repository": "bookpauk/liberama",
|
||||||
@@ -65,7 +65,7 @@
|
|||||||
"fs-extra": "^10.1.0",
|
"fs-extra": "^10.1.0",
|
||||||
"he": "^1.2.0",
|
"he": "^1.2.0",
|
||||||
"iconv-lite": "^0.6.3",
|
"iconv-lite": "^0.6.3",
|
||||||
"jembadb": "^5.1.5",
|
"jembadb": "^5.1.7",
|
||||||
"localforage": "^1.10.0",
|
"localforage": "^1.10.0",
|
||||||
"lodash": "^4.17.21",
|
"lodash": "^4.17.21",
|
||||||
"minimist": "^1.2.7",
|
"minimist": "^1.2.7",
|
||||||
|
|||||||
@@ -24,6 +24,7 @@ class JembaReaderStorage {
|
|||||||
|
|
||||||
getCache(id) {
|
getCache(id) {
|
||||||
const obj = this.cacheMap.get(id);
|
const obj = this.cacheMap.get(id);
|
||||||
|
//обновляем время доступа и при чтении тоже
|
||||||
if (obj)
|
if (obj)
|
||||||
obj.time = Date.now();
|
obj.time = Date.now();
|
||||||
return obj;
|
return obj;
|
||||||
@@ -118,6 +119,7 @@ class JembaReaderStorage {
|
|||||||
//identity необходимо для работы при нестабильной связи,
|
//identity необходимо для работы при нестабильной связи,
|
||||||
//одному и тому же клиенту разрешается перезаписывать данные при расхождении на 0 или 1 ревизию
|
//одному и тому же клиенту разрешается перезаписывать данные при расхождении на 0 или 1 ревизию
|
||||||
const obj = this.getCache(id) || {};
|
const obj = this.getCache(id) || {};
|
||||||
|
const oldIdentity = obj.identity;
|
||||||
const sameClient = (identity && obj.identity === identity);
|
const sameClient = (identity && obj.identity === identity);
|
||||||
if (identity && obj.identity !== identity) {
|
if (identity && obj.identity !== identity) {
|
||||||
obj.identity = identity;
|
obj.identity = identity;
|
||||||
@@ -126,8 +128,12 @@ class JembaReaderStorage {
|
|||||||
|
|
||||||
const revDiff = items[id].rev - check.items[id].rev;
|
const revDiff = items[id].rev - check.items[id].rev;
|
||||||
const allowUpdate = force || revDiff === 1 || (sameClient && (revDiff === 0 || revDiff === 1));
|
const allowUpdate = force || revDiff === 1 || (sameClient && (revDiff === 0 || revDiff === 1));
|
||||||
if (!allowUpdate)
|
|
||||||
|
if (!allowUpdate) {
|
||||||
|
log(LM_ERR, `JembaReaderStorage-Reject: revDiff: ${revDiff}, sameClient: ${sameClient}, oldIdentity: ${oldIdentity}, identity: ${identity}`);
|
||||||
|
|
||||||
return {state: 'reject', items: check.items};
|
return {state: 'reject', items: check.items};
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
const db = this.db;
|
const db = this.db;
|
||||||
|
|||||||
Reference in New Issue
Block a user