From e10d23289e2d3aa547710ecfbae13a76d0450275 Mon Sep 17 00:00:00 2001 From: zadam Date: Fri, 6 Mar 2020 22:17:07 +0100 Subject: [PATCH] event fixes WIP --- .../a2c75661-f9e2-478f-a69f-6a9409e69997.xml | 642 --------------- package-lock.json | 773 ++++++------------ package.json | 8 +- src/public/javascripts/dialogs/add_link.js | 1 - .../javascripts/services/tab_manager.js | 2 +- .../javascripts/widgets/basic_widget.js | 10 +- .../javascripts/widgets/collapsible_widget.js | 5 +- src/public/javascripts/widgets/note_detail.js | 29 +- src/public/javascripts/widgets/note_tree.js | 2 +- .../widgets/promoted_attributes.js | 4 +- src/public/javascripts/widgets/search_box.js | 2 +- .../javascripts/widgets/search_results.js | 4 +- .../javascripts/widgets/tab_aware_widget.js | 70 +- .../javascripts/widgets/tab_caching_widget.js | 28 +- src/public/javascripts/widgets/tab_row.js | 4 +- .../javascripts/widgets/type_widgets/text.js | 2 +- .../widgets/type_widgets/type_widget.js | 8 +- src/public/stylesheets/style.css | 4 + 18 files changed, 359 insertions(+), 1239 deletions(-) diff --git a/.idea/dataSources/a2c75661-f9e2-478f-a69f-6a9409e69997.xml b/.idea/dataSources/a2c75661-f9e2-478f-a69f-6a9409e69997.xml index ede612a71..5557cbb99 100644 --- a/.idea/dataSources/a2c75661-f9e2-478f-a69f-6a9409e69997.xml +++ b/.idea/dataSources/a2c75661-f9e2-478f-a69f-6a9409e69997.xml @@ -10,647 +10,5 @@ - -
-
-
-
-
-
-
-
-
-
- 1 -
- - 1 -
- - - 1 - TEXT|0s - 1 - - - 2 - TEXT|0s - 1 - - - 3 - TEXT|0s - 1 - - - 4 - INT|0s - 1 - 0 - - - 5 - TEXT|0s - 1 - "" - - - 1 - apiTokenId - 1 - - - apiTokenId - 1 - sqlite_autoindex_api_tokens_1 - - - 1 - TEXT|0s - 1 - - - 2 - TEXT|0s - 1 - - - 3 - TEXT|0s - 1 - - - 4 - TEXT|0s - 1 - - - 5 - TEXT|0s - 1 - '' - - - 6 - INT|0s - 1 - 0 - - - 7 - TEXT|0s - 1 - - - 8 - TEXT|0s - 1 - - - 9 - INT|0s - 1 - - - 10 - TEXT|0s - NULL - - - 11 - TEXT|0s - 1 - "" - - - 12 - int|0s - 0 - - - 1 - attributeId - 1 - - - noteId - - - name -value - - - value - - - attributeId - 1 - sqlite_autoindex_attributes_1 - - - 1 - TEXT|0s - 1 - - - 2 - TEXT|0s - 1 - - - 3 - TEXT|0s - 1 - - - 4 - INTEGER|0s - 1 - - - 5 - TEXT|0s - - - 6 - INTEGER|0s - 1 - 0 - - - 7 - INTEGER|0s - 1 - 0 - - - 8 - TEXT|0s - NULL - - - 9 - TEXT|0s - 1 - - - 10 - TEXT|0s - 1 - - - 11 - TEXT|0s - 1 - "" - - - 1 - branchId - 1 - - - noteId -parentNoteId - - - parentNoteId - - - branchId - 1 - sqlite_autoindex_branches_1 - - - 1 - TEXT|0s - 1 - - - 2 - TEXT|0s - NULL - - - 3 - TEXT|0s - 1 - "" - - - 4 - TEXT|0s - 1 - - - 1 - noteId - 1 - - - noteId - 1 - sqlite_autoindex_note_contents_1 - - - 1 - TEXT|0s - 1 - - - 2 - TEXT|0s - - - 3 - TEXT|0s - 1 - '' - - - 4 - TEXT|0s - 1 - - - 1 - noteRevisionId - 1 - - - noteRevisionId - 1 - sqlite_autoindex_note_revision_contents_1 - - - 1 - TEXT|0s - 1 - - - 2 - TEXT|0s - 1 - - - 3 - TEXT|0s - - - 4 - INT|0s - 1 - - - 5 - INT|0s - 1 - 0 - - - 6 - INT|0s - 1 - 0 - - - 7 - TEXT|0s - 1 - - - 8 - TEXT|0s - 1 - - - 9 - TEXT|0s - 1 - - - 10 - TEXT|0s - 1 - - - 11 - TEXT|0s - 1 - - - 12 - TEXT|0s - 1 - '' - - - 13 - TEXT|0s - 1 - '' - - - 14 - TEXT|0s - 1 - '' - - - 1 - noteRevisionId - 1 - - - noteId - - - utcDateLastEdited - - - utcDateCreated - - - dateLastEdited - - - dateCreated - - - noteRevisionId - 1 - sqlite_autoindex_note_revisions_1 - - - 1 - TEXT|0s - 1 - - - 2 - TEXT|0s - 1 - "note" - - - 3 - INT|0s - 1 - - - 4 - INT|0s - 1 - 0 - - - 5 - TEXT|0s - 1 - 'text' - - - 6 - TEXT|0s - 1 - 'text/html' - - - 7 - TEXT|0s - 1 - "" - - - 8 - INT|0s - 1 - 0 - - - 9 - TEXT|0s - NULL - - - 10 - INT|0s - 1 - 0 - - - 11 - TEXT|0s - 1 - - - 12 - TEXT|0s - 1 - - - 13 - TEXT|0s - 1 - - - 14 - TEXT|0s - 1 - - - 1 - noteId - 1 - - - title - - - type - - - isDeleted - - - dateCreated - - - dateModified - - - utcDateCreated - - - utcDateModified - - - noteId - 1 - sqlite_autoindex_notes_1 - - - 1 - TEXT|0s - 1 - - - 2 - TEXT|0s - - - 3 - INTEGER|0s - 1 - 0 - - - 4 - TEXT|0s - 1 - "" - - - 5 - TEXT|0s - 1 - - - 6 - TEXT|0s - 1 - - - 1 - name - 1 - - - name - 1 - sqlite_autoindex_options_1 - - - 1 - TEXT|0s - 1 - - - 2 - TEXT|0s - 1 - - - 3 - TEXT|0s - 1 - "" - - - 4 - TEXT|0s - 1 - - - 5 - INT|0s - - - 1 - noteId - 1 - - - noteId - 1 - sqlite_autoindex_recent_notes_1 - - - 1 - TEXT|0s - 1 - - - 2 - TEXT|0s - 1 - - - 1 - sourceId - 1 - - - utcDateCreated - - - sourceId - 1 - sqlite_autoindex_source_ids_1 - - - 1 - text|0s - - - 2 - text|0s - - - 3 - text|0s - - - 4 - int|0s - - - 5 - text|0s - - - 1 - - - 2 - - - 1 - INTEGER|0s - 1 - 1 - - - 2 - TEXT|0s - 1 - - - 3 - TEXT|0s - 1 - - - 4 - TEXT|0s - 1 - - - 5 - TEXT|0s - 1 - - - entityName -entityId - 1 - - - utcSyncDate - - - id - 1 - \ No newline at end of file diff --git a/package-lock.json b/package-lock.json index d505faae5..dfaebf5cb 100644 --- a/package-lock.json +++ b/package-lock.json @@ -10,34 +10,6 @@ "integrity": "sha512-GLyWIFBbGvpKPGo55JyRZAo4lVbnBiD52cKlw/0Vt+wnmKvWJkpZvsjVoaIolyBXDeAQKSicRtqFNPem9w0WYA==", "dev": true }, - "@aabuhijleh/electron-remote": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/@aabuhijleh/electron-remote/-/electron-remote-1.4.0.tgz", - "integrity": "sha512-EG4ZXxqbFY4lpX55vctwz14mFrEOcOHFCMLH5z5lOl6fiviTqscy86tSlKwEE3/o3ExtdPr2tECgCogYYL7d+g==", - "requires": { - "debug": "^2.5.1", - "hashids": "^1.1.1", - "lodash.get": "^4.4.2", - "pify": "^2.3.0", - "rxjs": "^5.0.0-beta.12", - "xmlhttprequest": "^1.8.0" - }, - "dependencies": { - "debug": { - "version": "2.6.9", - "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", - "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", - "requires": { - "ms": "2.0.0" - } - }, - "pify": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/pify/-/pify-2.3.0.tgz", - "integrity": "sha1-7RQaasBDqEnqWISY59yosVMw6Qw=" - } - } - }, "@babel/parser": { "version": "7.6.4", "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.6.4.tgz", @@ -45,9 +17,9 @@ "dev": true }, "@babel/runtime": { - "version": "7.7.4", - "resolved": "https://registry.npmjs.org/@babel/runtime/-/runtime-7.7.4.tgz", - "integrity": "sha512-r24eVUUr0QqNZa+qrImUk8fn5SPhHq+IfYvIoIMg0do3GdK9sMdiLKP3GYVVaxpPKORgm8KRKaNTEhAjgIpLMw==", + "version": "7.8.4", + "resolved": "https://registry.npmjs.org/@babel/runtime/-/runtime-7.8.4.tgz", + "integrity": "sha512-neAp3zt80trRVBI1x0azq6c57aNBqYZH8KhMm3TaB7wEI5Q4A2SHfBHE8w9gOhI/lrqxtEbXZgQIrHP+wvSGwQ==", "requires": { "regenerator-runtime": "^0.13.2" } @@ -194,32 +166,24 @@ } } }, - "@felixrieseberg/spellchecker": { - "version": "4.0.12", - "resolved": "https://registry.npmjs.org/@felixrieseberg/spellchecker/-/spellchecker-4.0.12.tgz", - "integrity": "sha512-jLAPnRALB1I6Un8ldHVJfJid7m2R1qXoafFF/95sdm7R5VPOsZ3xTreZ/wLKO5x9AdsD2t9zpOcjDFTsCf3VzQ==", - "requires": { - "nan": "^2.14.0" - } - }, "@jimp/bmp": { - "version": "0.9.3", - "resolved": "https://registry.npmjs.org/@jimp/bmp/-/bmp-0.9.3.tgz", - "integrity": "sha512-wXZYccgGQAsIK8DZX0wZE3gbSd2mL2+eheSJMts6I5hQjxhVRZd1Gwu425nUQGzfKCOgKYTW0nLv7/8OoOTTkw==", + "version": "0.9.5", + "resolved": "https://registry.npmjs.org/@jimp/bmp/-/bmp-0.9.5.tgz", + "integrity": "sha512-2cYdgXaNykuPe9sjm11Jihp5VomyWTWziIuDDB7xnxQtEz2HUR0bjXm2MJJOfU0TL52H+LS2JIKtAxcLPzp28w==", "requires": { "@babel/runtime": "^7.7.2", - "@jimp/utils": "^0.9.3", + "@jimp/utils": "^0.9.5", "bmp-js": "^0.1.0", "core-js": "^3.4.1" } }, "@jimp/core": { - "version": "0.9.3", - "resolved": "https://registry.npmjs.org/@jimp/core/-/core-0.9.3.tgz", - "integrity": "sha512-kB9lvst1QhgYOC963SAuPgv+DdVfxTProphrSffAAoo5eLeQab/Ca3ZUeX1E/SnLSr+NGVnNCd8c9gyuKDiENg==", + "version": "0.9.5", + "resolved": "https://registry.npmjs.org/@jimp/core/-/core-0.9.5.tgz", + "integrity": "sha512-P1mlB9UOeI3IAQ4lGTmRBGw+F/mHWXd3tSyBskjL4E3YJ1eNK7WRrErUj/vUOvSBIryotu7nGo8vv8Q8JZ7/8w==", "requires": { "@babel/runtime": "^7.7.2", - "@jimp/utils": "^0.9.3", + "@jimp/utils": "^0.9.5", "any-base": "^1.1.0", "buffer": "^5.2.0", "core-js": "^3.4.1", @@ -240,251 +204,251 @@ } }, "@jimp/custom": { - "version": "0.9.3", - "resolved": "https://registry.npmjs.org/@jimp/custom/-/custom-0.9.3.tgz", - "integrity": "sha512-2E7yabQMeqjcK8+ZFu3Ja5cWyrB0zv/pmzNSDg/BBPJ59HE0fj/qcERAz6VklcjHUYRUfmE5uODsb+4DE0o/YQ==", + "version": "0.9.5", + "resolved": "https://registry.npmjs.org/@jimp/custom/-/custom-0.9.5.tgz", + "integrity": "sha512-FaR7M0oxqbd7ujBL5ryyllS+mEuMKbKaDsdb8Cpu9SAo80DBiasUrYFFD/45/aRa95aM5o8t4C4Pna2bx8t3Tg==", "requires": { "@babel/runtime": "^7.7.2", - "@jimp/core": "^0.9.3", + "@jimp/core": "^0.9.5", "core-js": "^3.4.1" } }, "@jimp/gif": { - "version": "0.9.3", - "resolved": "https://registry.npmjs.org/@jimp/gif/-/gif-0.9.3.tgz", - "integrity": "sha512-DshKgMQ8lXorI/xTRyeRkZqZ3JqgnL2aGYAhx0SkAunyHgXji27chmrOGj/6KVDBucrDf/6mSexnSoUDnlWrfA==", + "version": "0.9.5", + "resolved": "https://registry.npmjs.org/@jimp/gif/-/gif-0.9.5.tgz", + "integrity": "sha512-QxjLl15nIz/QTeNgLFUJIOMLIceMO2B/xLUWF1/WqaP7Su6SGasRS6JY8OZ9QnqJLMWkodoEJmL6DxwtoOtqdg==", "requires": { "@babel/runtime": "^7.7.2", - "@jimp/utils": "^0.9.3", + "@jimp/utils": "^0.9.5", "core-js": "^3.4.1", "omggif": "^1.0.9" } }, "@jimp/jpeg": { - "version": "0.9.3", - "resolved": "https://registry.npmjs.org/@jimp/jpeg/-/jpeg-0.9.3.tgz", - "integrity": "sha512-AJzcTJXfN9BHtpzAbICwR3+GoH0pSr6OYXbAS6yuKwz+xVn9UHrEjQb74CIzIRqrT/VWcIKg29cMQxgokzWY7w==", + "version": "0.9.5", + "resolved": "https://registry.npmjs.org/@jimp/jpeg/-/jpeg-0.9.5.tgz", + "integrity": "sha512-cBpXqmeegsLzf/mYk1WpYov2RH1W944re5P61/ag6AMWEMQ51BoBdgBy5JABZIELg2GQxpoG+g/KxUshRzeIAg==", "requires": { "@babel/runtime": "^7.7.2", - "@jimp/utils": "^0.9.3", + "@jimp/utils": "^0.9.5", "core-js": "^3.4.1", "jpeg-js": "^0.3.4" } }, "@jimp/plugin-blit": { - "version": "0.9.3", - "resolved": "https://registry.npmjs.org/@jimp/plugin-blit/-/plugin-blit-0.9.3.tgz", - "integrity": "sha512-+UxCsJ3XkRSdpigpTBJ9WkdwUc3OtBlhVZdU6OL6M9ldume5Gj3rTyWvMCqytOK1tZ/+7HmxoWe4IWX31hz9qA==", + "version": "0.9.5", + "resolved": "https://registry.npmjs.org/@jimp/plugin-blit/-/plugin-blit-0.9.5.tgz", + "integrity": "sha512-VmV99HeCPOyliY/uEGOaKO9EcqDxSBzKDGC7emNCLFzlbK4uty4/cYMKGKTBiZR9AS1rEd63LxrDtbHKR8CsqQ==", "requires": { "@babel/runtime": "^7.7.2", - "@jimp/utils": "^0.9.3", + "@jimp/utils": "^0.9.5", "core-js": "^3.4.1" } }, "@jimp/plugin-blur": { - "version": "0.9.3", - "resolved": "https://registry.npmjs.org/@jimp/plugin-blur/-/plugin-blur-0.9.3.tgz", - "integrity": "sha512-RADcYjZ5vbk5ZrUiK7qv0G4xOpHtu19HWVVX9JTDbm4VByWTxPboVKlgiYLA6l+IxIXNtEqDclsADIM0s9FQhA==", + "version": "0.9.5", + "resolved": "https://registry.npmjs.org/@jimp/plugin-blur/-/plugin-blur-0.9.5.tgz", + "integrity": "sha512-FnAEhMW9ZK8D6qCLDeMAloi4h7TCch9ZWFdonj49gwllpvLksBpnL9PTft4dFXCwZgOAq2apYwW7cwTAIfAw4A==", "requires": { "@babel/runtime": "^7.7.2", - "@jimp/utils": "^0.9.3", + "@jimp/utils": "^0.9.5", "core-js": "^3.4.1" } }, "@jimp/plugin-color": { - "version": "0.9.3", - "resolved": "https://registry.npmjs.org/@jimp/plugin-color/-/plugin-color-0.9.3.tgz", - "integrity": "sha512-gHDA5GVx4/R4fitEACKmWH7hNy0aU48MZWYRxmATvuqY39KidJ0fjwp+brQ3Ivgb35AgFVc2jQYc3U/JXv4RxQ==", + "version": "0.9.5", + "resolved": "https://registry.npmjs.org/@jimp/plugin-color/-/plugin-color-0.9.5.tgz", + "integrity": "sha512-2aFE0tRdhAKCCgh+tFLsLPOSgrk3ttl2TtTP5FAXeKmzlLj7FZ/JKj0waaGWZKdJ+uDxsVpX3EhuK3CfukIyrg==", "requires": { "@babel/runtime": "^7.7.2", - "@jimp/utils": "^0.9.3", + "@jimp/utils": "^0.9.5", "core-js": "^3.4.1", "tinycolor2": "^1.4.1" } }, "@jimp/plugin-contain": { - "version": "0.9.3", - "resolved": "https://registry.npmjs.org/@jimp/plugin-contain/-/plugin-contain-0.9.3.tgz", - "integrity": "sha512-vdYAtp65LNDT/hMctow5o0a/SbD41/y7Z9AO7MGsfUIK92Woq90SNTWx7JplDl4HSZGrqaBONnfiEhRiYlDrdg==", + "version": "0.9.5", + "resolved": "https://registry.npmjs.org/@jimp/plugin-contain/-/plugin-contain-0.9.5.tgz", + "integrity": "sha512-zhaCJnUqd8hhD8IXxbRALU6ZzCWWbQDulc8Tn8Hxnub0si7dlq/DxBQT7og6kCxswBj2zPBtRAHONEwLdt7Nfw==", "requires": { "@babel/runtime": "^7.7.2", - "@jimp/utils": "^0.9.3", + "@jimp/utils": "^0.9.5", "core-js": "^3.4.1" } }, "@jimp/plugin-cover": { - "version": "0.9.3", - "resolved": "https://registry.npmjs.org/@jimp/plugin-cover/-/plugin-cover-0.9.3.tgz", - "integrity": "sha512-yOwsvakgyS2/C4iZF1a1wg63QKfYvqb2d6k+rgY/0vaAe44JtEx+Gbg+7iOt4EaMm5BDlxRwmcA2Q8Pef8TvAQ==", + "version": "0.9.5", + "resolved": "https://registry.npmjs.org/@jimp/plugin-cover/-/plugin-cover-0.9.5.tgz", + "integrity": "sha512-rG7vtx7vV9mHCFR4YP9GzGEsaop0IkMidP3UFPULbDcBdEEkehEG7a0h2X4w/Nt07J3k8wVoXYTjrb/CXpWkaw==", "requires": { "@babel/runtime": "^7.7.2", - "@jimp/utils": "^0.9.3", + "@jimp/utils": "^0.9.5", "core-js": "^3.4.1" } }, "@jimp/plugin-crop": { - "version": "0.9.3", - "resolved": "https://registry.npmjs.org/@jimp/plugin-crop/-/plugin-crop-0.9.3.tgz", - "integrity": "sha512-kqMXSyY8hrfo0idr6qY2USOWPrNqpDWs+D6Vwa+kV6SGJhj3rMTIcptQDaamIETSxbjkE8rwUu3K4Q5UD69D7w==", + "version": "0.9.5", + "resolved": "https://registry.npmjs.org/@jimp/plugin-crop/-/plugin-crop-0.9.5.tgz", + "integrity": "sha512-yoScC43YhYlswTKyL4fmawGwF73HyuIRpp1R3mXa6qbMA9mjX9QiqNdAIMB3UMHeBcIgkOD/Zy1f90/skBMpxg==", "requires": { "@babel/runtime": "^7.7.2", - "@jimp/utils": "^0.9.3", + "@jimp/utils": "^0.9.5", "core-js": "^3.4.1" } }, "@jimp/plugin-displace": { - "version": "0.9.3", - "resolved": "https://registry.npmjs.org/@jimp/plugin-displace/-/plugin-displace-0.9.3.tgz", - "integrity": "sha512-0AdwxYRWDmJ2wIRIj2RR3sRmNjMhcy5Kwt9Jbi/RRnzxkRScZAiyzkNZhBul23EM7ClfjrUrZufuUvRMHxZRDw==", + "version": "0.9.5", + "resolved": "https://registry.npmjs.org/@jimp/plugin-displace/-/plugin-displace-0.9.5.tgz", + "integrity": "sha512-nwfB72qNP8kNyBnlaY0vgJys7RUjvI61Qp3AMMbKKaRSsthCx7aeKU9Cyv+AHMfcVkkt3NdTmh7ScE+hkNFUhA==", "requires": { "@babel/runtime": "^7.7.2", - "@jimp/utils": "^0.9.3", + "@jimp/utils": "^0.9.5", "core-js": "^3.4.1" } }, "@jimp/plugin-dither": { - "version": "0.9.3", - "resolved": "https://registry.npmjs.org/@jimp/plugin-dither/-/plugin-dither-0.9.3.tgz", - "integrity": "sha512-8OE+Xak9xepiCwSV+oAsb/gupTnttG3aDKxtpSZjwHebnr+k1VG8NgICbMSFATTVJqqZ18oj6LC+5726qHUJ9w==", + "version": "0.9.5", + "resolved": "https://registry.npmjs.org/@jimp/plugin-dither/-/plugin-dither-0.9.5.tgz", + "integrity": "sha512-Pp1ehm5Hon6LcttRG+d+x1UN1ww00P4cyBnMVRR3NMhIfgc0IjQgojik9ZXax3nVj7XkqXJJh8f5uxC1cvYUnA==", "requires": { "@babel/runtime": "^7.7.2", - "@jimp/utils": "^0.9.3", + "@jimp/utils": "^0.9.5", "core-js": "^3.4.1" } }, "@jimp/plugin-flip": { - "version": "0.9.3", - "resolved": "https://registry.npmjs.org/@jimp/plugin-flip/-/plugin-flip-0.9.3.tgz", - "integrity": "sha512-w+lzE1ZF/UOjB8qJdeIm+dLQtOK1obZwGYdCIbgxZxw4SfkkjAftJdY8o8RNOXhHDZqGu+cYQZbMKP1zcoNkyQ==", + "version": "0.9.5", + "resolved": "https://registry.npmjs.org/@jimp/plugin-flip/-/plugin-flip-0.9.5.tgz", + "integrity": "sha512-rKbg8c9ePst3w2t1kxQt2H05/rUR5/pjjafhZ97s01pxH/SOJudy5d76nJGzRBYoaRnxpvDzpN+2+iA08wDY5Q==", "requires": { "@babel/runtime": "^7.7.2", - "@jimp/utils": "^0.9.3", + "@jimp/utils": "^0.9.5", "core-js": "^3.4.1" } }, "@jimp/plugin-gaussian": { - "version": "0.9.3", - "resolved": "https://registry.npmjs.org/@jimp/plugin-gaussian/-/plugin-gaussian-0.9.3.tgz", - "integrity": "sha512-RPrWwzlZsbWC2opSgeyWt30JU9Uwg1+GwBnoNpEMLKeqm0Dv6snASASa4zVtviGWAIq//p3Jrap7g57hKqL0Cg==", + "version": "0.9.5", + "resolved": "https://registry.npmjs.org/@jimp/plugin-gaussian/-/plugin-gaussian-0.9.5.tgz", + "integrity": "sha512-8HloHpVPgSsoWekslJ5uUPK2ddoLrGXQAVOyo3BT2pVgwbL317+r96NxPGKTxrY20fqex9SQrjx3kHeSWbysEA==", "requires": { "@babel/runtime": "^7.7.2", - "@jimp/utils": "^0.9.3", + "@jimp/utils": "^0.9.5", "core-js": "^3.4.1" } }, "@jimp/plugin-invert": { - "version": "0.9.3", - "resolved": "https://registry.npmjs.org/@jimp/plugin-invert/-/plugin-invert-0.9.3.tgz", - "integrity": "sha512-0lRsh7IPkzyYqExrZDT50h38xdlB/+KrdiDcuxWwWyIlKauLMR0kInjwf8sPeb3elPLeETmze7uwPAxrIAtsGQ==", + "version": "0.9.5", + "resolved": "https://registry.npmjs.org/@jimp/plugin-invert/-/plugin-invert-0.9.5.tgz", + "integrity": "sha512-tqfMqQqsU4ulaif0Kk/BydqmG5UbjT67dmMjwnDL7rke+ypJ8tzq7j9QeZ9SDFB+PxUQcy/kPEw/R2Ys7HHi8A==", "requires": { "@babel/runtime": "^7.7.2", - "@jimp/utils": "^0.9.3", + "@jimp/utils": "^0.9.5", "core-js": "^3.4.1" } }, "@jimp/plugin-mask": { - "version": "0.9.3", - "resolved": "https://registry.npmjs.org/@jimp/plugin-mask/-/plugin-mask-0.9.3.tgz", - "integrity": "sha512-nZ0J62Hly9JtMZctlSDVgnTd8Fg2XGikzAYilSTCjzIRtbXL5Be/qSAZrMfLD3CZ8exTxdlEGRkEJI3RZKXYCw==", + "version": "0.9.5", + "resolved": "https://registry.npmjs.org/@jimp/plugin-mask/-/plugin-mask-0.9.5.tgz", + "integrity": "sha512-lIOrKb/VT1laDIA1H1nPOdtOB4TVhMRlxanXoEP8uKdE6a2goqZHXbKLn9itkm0MxtsTlT9KIXwzGxjCV38B3w==", "requires": { "@babel/runtime": "^7.7.2", - "@jimp/utils": "^0.9.3", + "@jimp/utils": "^0.9.5", "core-js": "^3.4.1" } }, "@jimp/plugin-normalize": { - "version": "0.9.3", - "resolved": "https://registry.npmjs.org/@jimp/plugin-normalize/-/plugin-normalize-0.9.3.tgz", - "integrity": "sha512-0IvgTt4R15QJnoCHvvqlK56zOtCsQV7Mkx757kdNah8uyPGjadTcFBuqCaOMK943X36IIv+o7Ix7yvNUJZt4aw==", + "version": "0.9.5", + "resolved": "https://registry.npmjs.org/@jimp/plugin-normalize/-/plugin-normalize-0.9.5.tgz", + "integrity": "sha512-gayxgPLDp2gynu2IacvdCtqw0bdcC2feUqYOBjTtCpAwIz1KP2Qd6qKjV1dAVGiLO9ESW5maMa0vIBiBkYOovg==", "requires": { "@babel/runtime": "^7.7.2", - "@jimp/utils": "^0.9.3", + "@jimp/utils": "^0.9.5", "core-js": "^3.4.1" } }, "@jimp/plugin-print": { - "version": "0.9.3", - "resolved": "https://registry.npmjs.org/@jimp/plugin-print/-/plugin-print-0.9.3.tgz", - "integrity": "sha512-pV6oX5Bhe9O/dbgrotz46Bv6u1M+/n9G0kRUunDjwzXrvON5raBFEJHQDPcTXiqPT25Gc9Ba4/Akfo/Zl6+wgQ==", + "version": "0.9.5", + "resolved": "https://registry.npmjs.org/@jimp/plugin-print/-/plugin-print-0.9.5.tgz", + "integrity": "sha512-/BUSyCfvVhuFdf+rBdH1wbuY8r9J0qhn4Icy7HqO58By7I+V7q7jayoeiLk+zEBsAXpCUbWiZG3KWNtZhLWeQg==", "requires": { "@babel/runtime": "^7.7.2", - "@jimp/utils": "^0.9.3", + "@jimp/utils": "^0.9.5", "core-js": "^3.4.1", "load-bmfont": "^1.4.0" } }, "@jimp/plugin-resize": { - "version": "0.9.3", - "resolved": "https://registry.npmjs.org/@jimp/plugin-resize/-/plugin-resize-0.9.3.tgz", - "integrity": "sha512-YzqVE8QoDIZpVuI52v+WejwEjEEiJfNFviQfprfm5af7uSSseZgDw1sJ0koqAu+liMSY+Ewp79v2SDrKoJKqtg==", + "version": "0.9.5", + "resolved": "https://registry.npmjs.org/@jimp/plugin-resize/-/plugin-resize-0.9.5.tgz", + "integrity": "sha512-vIMleLPbEv0qTE1Mnc7mg5HSFc4l4FxlbDniVUvpi8ZMFa8IkigcTeAgXUKacevNL7uZ66MrnpQ49J3tNE28dQ==", "requires": { "@babel/runtime": "^7.7.2", - "@jimp/utils": "^0.9.3", + "@jimp/utils": "^0.9.5", "core-js": "^3.4.1" } }, "@jimp/plugin-rotate": { - "version": "0.9.3", - "resolved": "https://registry.npmjs.org/@jimp/plugin-rotate/-/plugin-rotate-0.9.3.tgz", - "integrity": "sha512-kADY2pI3/yMyHbuyvKB4nqPoKf8DPQBU1b4zz2K7SxcwKh1krFf4Fa9mmhhDLoFwuNSy0SPb1JCMUO4BtFCFLA==", + "version": "0.9.5", + "resolved": "https://registry.npmjs.org/@jimp/plugin-rotate/-/plugin-rotate-0.9.5.tgz", + "integrity": "sha512-BHlhwUruHNQkOpsfzTE2uuSfmkj5eiIDRSAC8whupUGGXNgS67tZJB6u0qDRIeSP/gWV5tGGwXQNMn3AahwR1Q==", "requires": { "@babel/runtime": "^7.7.2", - "@jimp/utils": "^0.9.3", + "@jimp/utils": "^0.9.5", "core-js": "^3.4.1" } }, "@jimp/plugin-scale": { - "version": "0.9.3", - "resolved": "https://registry.npmjs.org/@jimp/plugin-scale/-/plugin-scale-0.9.3.tgz", - "integrity": "sha512-vZaiL5Qc+WrgGEfUe4Y0vG+qbT6pe2TW68/mu124E1tKVcZjHKZUeFN0Wr/hP2myN6nqTYj0/sord2OS/04JpA==", + "version": "0.9.5", + "resolved": "https://registry.npmjs.org/@jimp/plugin-scale/-/plugin-scale-0.9.5.tgz", + "integrity": "sha512-PDU8F77EPFTcLBVDcJtGUvPXA2acG4KqJMZauHwZLZxuiDEvt9qsDQm4aTKcN/ku8oWZjfGBSOamhx/QNUqV5Q==", "requires": { "@babel/runtime": "^7.7.2", - "@jimp/utils": "^0.9.3", + "@jimp/utils": "^0.9.5", "core-js": "^3.4.1" } }, "@jimp/plugins": { - "version": "0.9.3", - "resolved": "https://registry.npmjs.org/@jimp/plugins/-/plugins-0.9.3.tgz", - "integrity": "sha512-KYCSgFGoZBNC0224X5yUnMHCZnCdUVrsu2Yo67o3XZfUgDjO81J+vdzZ0twpPQ6qLLVAP+nQ8hkRV/QzEUstMw==", + "version": "0.9.5", + "resolved": "https://registry.npmjs.org/@jimp/plugins/-/plugins-0.9.5.tgz", + "integrity": "sha512-3hvuXeRLj36ifpwE7I7g5Da9bKl/0y62t90ZN0hdQwhLBjRRF4u1e1JZpyu6EK98Bp+W/c8fJ2iuOsHadJOusg==", "requires": { "@babel/runtime": "^7.7.2", - "@jimp/plugin-blit": "^0.9.3", - "@jimp/plugin-blur": "^0.9.3", - "@jimp/plugin-color": "^0.9.3", - "@jimp/plugin-contain": "^0.9.3", - "@jimp/plugin-cover": "^0.9.3", - "@jimp/plugin-crop": "^0.9.3", - "@jimp/plugin-displace": "^0.9.3", - "@jimp/plugin-dither": "^0.9.3", - "@jimp/plugin-flip": "^0.9.3", - "@jimp/plugin-gaussian": "^0.9.3", - "@jimp/plugin-invert": "^0.9.3", - "@jimp/plugin-mask": "^0.9.3", - "@jimp/plugin-normalize": "^0.9.3", - "@jimp/plugin-print": "^0.9.3", - "@jimp/plugin-resize": "^0.9.3", - "@jimp/plugin-rotate": "^0.9.3", - "@jimp/plugin-scale": "^0.9.3", + "@jimp/plugin-blit": "^0.9.5", + "@jimp/plugin-blur": "^0.9.5", + "@jimp/plugin-color": "^0.9.5", + "@jimp/plugin-contain": "^0.9.5", + "@jimp/plugin-cover": "^0.9.5", + "@jimp/plugin-crop": "^0.9.5", + "@jimp/plugin-displace": "^0.9.5", + "@jimp/plugin-dither": "^0.9.5", + "@jimp/plugin-flip": "^0.9.5", + "@jimp/plugin-gaussian": "^0.9.5", + "@jimp/plugin-invert": "^0.9.5", + "@jimp/plugin-mask": "^0.9.5", + "@jimp/plugin-normalize": "^0.9.5", + "@jimp/plugin-print": "^0.9.5", + "@jimp/plugin-resize": "^0.9.5", + "@jimp/plugin-rotate": "^0.9.5", + "@jimp/plugin-scale": "^0.9.5", "core-js": "^3.4.1", "timm": "^1.6.1" } }, "@jimp/png": { - "version": "0.9.3", - "resolved": "https://registry.npmjs.org/@jimp/png/-/png-0.9.3.tgz", - "integrity": "sha512-LJXUemDTSbTGAGEp9hNQH0uTRSB8gYeE6FsfT3M00oZincu6/WzDzl0P8E95rMjNxZqAihdTyOP3+kcrbbqX+w==", + "version": "0.9.5", + "resolved": "https://registry.npmjs.org/@jimp/png/-/png-0.9.5.tgz", + "integrity": "sha512-0GPq/XixXcuWIA3gpMCUUj6rhxT78Hu9oDC9reaHUCcC/5cRTd5Eh7wLafZL8EfOZWV3mh2FZtWiY1xaNHHlBQ==", "requires": { "@babel/runtime": "^7.7.2", - "@jimp/utils": "^0.9.3", + "@jimp/utils": "^0.9.5", "core-js": "^3.4.1", "pngjs": "^3.3.3" } }, "@jimp/tiff": { - "version": "0.9.3", - "resolved": "https://registry.npmjs.org/@jimp/tiff/-/tiff-0.9.3.tgz", - "integrity": "sha512-w9H6dT+GDHN//Srsv27JhRn7R2byzUahOGfFw7KpIn95jg0ogcxjKTo/RAGQC56sr4U092e4Npl7E85Lt934WQ==", + "version": "0.9.5", + "resolved": "https://registry.npmjs.org/@jimp/tiff/-/tiff-0.9.5.tgz", + "integrity": "sha512-EcRtiHsAQ9aygRRMWhGTVfitfHwllgt93GE1L8d/iwSlu3e3IIV38MDINdluQUQMU5jcFBcX6eyVVvsgCleGiQ==", "requires": { "@babel/runtime": "^7.7.2", "core-js": "^3.4.1", @@ -492,24 +456,24 @@ } }, "@jimp/types": { - "version": "0.9.3", - "resolved": "https://registry.npmjs.org/@jimp/types/-/types-0.9.3.tgz", - "integrity": "sha512-hUJKoT2IhnbO/trxNWzN19n8g+p7aKbM1R+71n4wMZnD41PzrVtz+sBBCdB+JCjBJs/i7fJt4d9z0i3Xe8m7Zw==", + "version": "0.9.5", + "resolved": "https://registry.npmjs.org/@jimp/types/-/types-0.9.5.tgz", + "integrity": "sha512-62inaxx8zy24WMP+bsg6ZmgsL49oyoGUIGcjDKzvyAY/O6opD+UMNlArhl0xvCCdzriQxbljtSv/8uyHxz4Xbw==", "requires": { "@babel/runtime": "^7.7.2", - "@jimp/bmp": "^0.9.3", - "@jimp/gif": "^0.9.3", - "@jimp/jpeg": "^0.9.3", - "@jimp/png": "^0.9.3", - "@jimp/tiff": "^0.9.3", + "@jimp/bmp": "^0.9.5", + "@jimp/gif": "^0.9.5", + "@jimp/jpeg": "^0.9.5", + "@jimp/png": "^0.9.5", + "@jimp/tiff": "^0.9.5", "core-js": "^3.4.1", "timm": "^1.6.1" } }, "@jimp/utils": { - "version": "0.9.3", - "resolved": "https://registry.npmjs.org/@jimp/utils/-/utils-0.9.3.tgz", - "integrity": "sha512-9D2Of6BcjYONtl77YfmU2y5aRMLe0/O2e2aQvfCxdNwD33jRdwNdN4i3m73dpiClNquApIjL4nYGhTixA4UstA==", + "version": "0.9.5", + "resolved": "https://registry.npmjs.org/@jimp/utils/-/utils-0.9.5.tgz", + "integrity": "sha512-W9vse4/1AYmOjtIVACoBMdc/2te1zcPURhMYNEyiezCU7hWMdj/Z1mwiWFq3AYCgOG8GPVx0ZQzrgqUfUxfTHQ==", "requires": { "@babel/runtime": "^7.7.2", "core-js": "^3.4.1" @@ -578,6 +542,15 @@ "resolved": "https://registry.npmjs.org/@types/events/-/events-3.0.0.tgz", "integrity": "sha512-EaObqwIvayI5a8dCzhFrjKzVwKLxjoG9T6Ppd5CEo07LRKfQ8Yokw54r5+Wq7FaBQ+yXRvQAYPrHwya1/UFt9g==" }, + "@types/fs-extra": { + "version": "8.1.0", + "resolved": "https://registry.npmjs.org/@types/fs-extra/-/fs-extra-8.1.0.tgz", + "integrity": "sha512-UoOfVEzAUpeSPmjm7h1uk5MH6KZma2z2O7a75onTGjnNvAvMVrPzPL/vBbT65iIGHWj6rokwfmYcmxmlSf2uwg==", + "dev": true, + "requires": { + "@types/node": "*" + } + }, "@types/glob": { "version": "7.1.1", "resolved": "https://registry.npmjs.org/@types/glob/-/glob-7.1.1.tgz", @@ -598,6 +571,21 @@ "resolved": "https://registry.npmjs.org/@types/node/-/node-12.7.12.tgz", "integrity": "sha512-KPYGmfD0/b1eXurQ59fXD1GBzhSQfz6/lKBxkaHX9dKTzjXbK68Zt7yGUxUsCS1jeTy/8aL+d9JEr+S54mpkWQ==" }, + "@types/yargs": { + "version": "15.0.4", + "resolved": "https://registry.npmjs.org/@types/yargs/-/yargs-15.0.4.tgz", + "integrity": "sha512-9T1auFmbPZoxHz0enUFlUuKRy3it01R+hlggyVUMtnCTQRunsQYifnSGb8hET4Xo8yiC0o0r1paW3ud5+rbURg==", + "dev": true, + "requires": { + "@types/yargs-parser": "*" + } + }, + "@types/yargs-parser": { + "version": "15.0.0", + "resolved": "https://registry.npmjs.org/@types/yargs-parser/-/yargs-parser-15.0.0.tgz", + "integrity": "sha512-FA/BWv8t8ZWJ+gEOnLLd8ygxH/2UFbAvgEonyfN6yWGLKc7zVjbpl2Y4CTjid9h2RfgPP6SEt6uHwEOply00yw==", + "dev": true + }, "abab": { "version": "2.0.2", "resolved": "https://registry.npmjs.org/abab/-/abab-2.0.2.tgz", @@ -740,39 +728,39 @@ "integrity": "sha512-uMgjozySS8adZZYePpaWs8cxB9/kdzmpX6SgJZ+wbz1K5eYk5QMYDVJaZKhxyIHUdnnJkfR7SVgStgH7LkGUyg==" }, "app-builder-bin": { - "version": "3.5.2", - "resolved": "https://registry.npmjs.org/app-builder-bin/-/app-builder-bin-3.5.2.tgz", - "integrity": "sha512-tYeNHp8js5c5MT+mzGEMsZhDBXRVAkCgrvz80rzNLlCojG6YrNLRSzfCWZiKJCv5W2faHjxTkKQoRAMY3RWaow==", + "version": "3.5.5", + "resolved": "https://registry.npmjs.org/app-builder-bin/-/app-builder-bin-3.5.5.tgz", + "integrity": "sha512-ZcHzJ9Xl+azPqdKzXZKdRZmkNmbxHHZyl4cbobNf8qMQpoPChpcov8riVrZSbu/0cT/JqJ8LOwJjy1OAwbChaQ==", "dev": true }, "app-builder-lib": { - "version": "22.3.2", - "resolved": "https://registry.npmjs.org/app-builder-lib/-/app-builder-lib-22.3.2.tgz", - "integrity": "sha512-QHaDelJUP3R+HUmnQJzHvjlCCJGG6t0bcFSZTOtUx+44B42VxzKpxtoG55xRFbyrU5l2++n7dQqEZAGk8iL6Qg==", + "version": "22.4.0", + "resolved": "https://registry.npmjs.org/app-builder-lib/-/app-builder-lib-22.4.0.tgz", + "integrity": "sha512-PcoKR5EDc6hkjNA7RzE0Ery1w1+YOH2VPk9AGQWAvQluj5h6xcURMQilLhQYONNZ3N/beZmiNxPzQF0CBRCnwA==", "dev": true, "requires": { "7zip-bin": "~5.0.3", "@develar/schema-utils": "~2.1.0", "async-exit-hook": "^2.0.1", "bluebird-lst": "^1.0.9", - "builder-util": "22.3.2", - "builder-util-runtime": "8.6.0", + "builder-util": "22.4.0", + "builder-util-runtime": "8.6.1", "chromium-pickle-js": "^0.2.0", "debug": "^4.1.1", "ejs": "^3.0.1", - "electron-publish": "22.3.2", + "electron-publish": "22.4.0", "fs-extra": "^8.1.0", - "hosted-git-info": "^3.0.2", + "hosted-git-info": "^3.0.4", "is-ci": "^2.0.0", "isbinaryfile": "^4.0.4", "js-yaml": "^3.13.1", "lazy-val": "^1.0.4", "minimatch": "^3.0.4", "normalize-package-data": "^2.5.0", - "read-config-file": "5.0.1", + "read-config-file": "5.0.2", "sanitize-filename": "^1.6.3", - "semver": "^7.1.1", - "temp-file": "^3.3.6" + "semver": "^7.1.3", + "temp-file": "^3.3.7" }, "dependencies": { "ejs": { @@ -782,9 +770,9 @@ "dev": true }, "hosted-git-info": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-3.0.2.tgz", - "integrity": "sha512-ezZMWtHXm7Eb7Rq4Mwnx2vs79WUx2QmRg3+ZqeGroKzfDO+EprOcgRPYghsOP9JuYBfK18VojmRTGCg8Ma+ktw==", + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-3.0.4.tgz", + "integrity": "sha512-4oT62d2jwSDBbLLFLZE+1vPuQ1h8p9wjrJ8Mqx5TjsyWmBMV5B13eJqn8pvluqubLf3cJPTfiYCIwNwDNmzScQ==", "dev": true, "requires": { "lru-cache": "^5.1.1" @@ -1024,11 +1012,6 @@ "resolved": "https://registry.npmjs.org/base64-js/-/base64-js-1.3.1.tgz", "integrity": "sha512-mLQ4i2QO1ytvGWFWmcngKO//JXAQueZvwEKtjgQFM4jIK0kU+ytMfplL8j+n5mspOfjHwoAg+9yhb7BwAHm36g==" }, - "bcp47": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/bcp47/-/bcp47-1.1.2.tgz", - "integrity": "sha1-NUvjMH/9CEM6ePXh4glYRfifx/4=" - }, "bcrypt-pbkdf": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/bcrypt-pbkdf/-/bcrypt-pbkdf-1.0.2.tgz", @@ -1419,16 +1402,17 @@ } }, "builder-util": { - "version": "22.3.2", - "resolved": "https://registry.npmjs.org/builder-util/-/builder-util-22.3.2.tgz", - "integrity": "sha512-jNeyA/AgyujE6NQLoEkERY/qrilFdCFAC6cBM1ylSnRuzlD1tQQCI3QJhuMJG/gLUCgyNsfFQhN0Mw6IqsDAqw==", + "version": "22.4.0", + "resolved": "https://registry.npmjs.org/builder-util/-/builder-util-22.4.0.tgz", + "integrity": "sha512-U2mNL9IewgTqfhvNexrm3UFdRrI6Rr48HkH9Z0IO/D86jGrCUVK8UXC8S8AHj1Cfa/VdYrMOxdXr3kajZXJvfg==", "dev": true, "requires": { "7zip-bin": "~5.0.3", "@types/debug": "^4.1.5", - "app-builder-bin": "3.5.2", + "@types/fs-extra": "^8.1.0", + "app-builder-bin": "3.5.5", "bluebird-lst": "^1.0.9", - "builder-util-runtime": "8.6.0", + "builder-util-runtime": "8.6.1", "chalk": "^3.0.0", "debug": "^4.1.1", "fs-extra": "^8.1.0", @@ -1436,7 +1420,7 @@ "js-yaml": "^3.13.1", "source-map-support": "^0.5.16", "stat-mode": "^1.0.0", - "temp-file": "^3.3.6" + "temp-file": "^3.3.7" }, "dependencies": { "ansi-styles": { @@ -1498,9 +1482,9 @@ } }, "builder-util-runtime": { - "version": "8.6.0", - "resolved": "https://registry.npmjs.org/builder-util-runtime/-/builder-util-runtime-8.6.0.tgz", - "integrity": "sha512-WTDhTUVrm7zkFyd6Qn7AXgmWifjpZ/fYnEdV3XCOIDMNNb/KPddBTbQ8bUlxxVeuOYlhGpcLUypG+4USdGL1ww==", + "version": "8.6.1", + "resolved": "https://registry.npmjs.org/builder-util-runtime/-/builder-util-runtime-8.6.1.tgz", + "integrity": "sha512-gwIUtMaICmc+e2EC3u3byXcwCyfhtG40LJRNnGfs8AYqacKl4ZLP50ab+uDttn7QAXe0LfMAuKz9v8bCODV0yg==", "dev": true, "requires": { "debug": "^4.1.1", @@ -1662,42 +1646,6 @@ "integrity": "sha512-5tK7EtrZ0N+OLFMthtqOj4fI2Jeb88C4CAZPu25LDVUgXJ0A3Js4PMGqrn0JU1W0Mh1/Z8wZzYPxqUrXeBboCQ==", "dev": true }, - "cld": { - "version": "2.5.1", - "resolved": "https://registry.npmjs.org/cld/-/cld-2.5.1.tgz", - "integrity": "sha512-DwdvvcFVizwDdPCocoPPReFk3BwLEaTZ3RzFgJ4jLzsBzJKUC3cTna0ZmAZG4tFtMmQdl0ciso3+ijkH3OPZPA==", - "requires": { - "glob": "^5.0.10", - "nan": "^2.9.2", - "rimraf": "^2.4.0", - "underscore": "^1.6.0" - }, - "dependencies": { - "rimraf": { - "version": "2.7.1", - "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-2.7.1.tgz", - "integrity": "sha512-uWjbaKIK3T1OSVptzX7Nl6PvQ3qAGtKEtVRjRuazjfL3Bx5eI409VZSqgND+4UNnmzLVdPj9FqFJNPqBZFve4w==", - "requires": { - "glob": "^7.1.3" - }, - "dependencies": { - "glob": { - "version": "7.1.6", - "resolved": "https://registry.npmjs.org/glob/-/glob-7.1.6.tgz", - "integrity": "sha512-LwaxwyZ72Lk7vZINtNNrywX0ZuLyStrdDtabefZKAY5ZGJhVtgdznluResxNmPitE0SAO+O26sWTHeKSI2wMBA==", - "requires": { - "fs.realpath": "^1.0.0", - "inflight": "^1.0.4", - "inherits": "2", - "minimatch": "^3.0.4", - "once": "^1.3.0", - "path-is-absolute": "^1.0.0" - } - } - } - } - } - }, "cli-boxes": { "version": "2.2.0", "resolved": "https://registry.npmjs.org/cli-boxes/-/cli-boxes-2.2.0.tgz", @@ -1887,12 +1835,12 @@ } }, "configstore": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/configstore/-/configstore-5.0.0.tgz", - "integrity": "sha512-eE/hvMs7qw7DlcB5JPRnthmrITuHMmACUJAp89v6PT6iOqzoLS7HRWhBtuHMlhNHo2AhUSA/3Dh1bKNJHcublQ==", + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/configstore/-/configstore-5.0.1.tgz", + "integrity": "sha512-aMKprgk5YhBNyH25hj8wGt2+D52Sw1DRRIzqBwLp2Ya9mFmY8KPvvtvmna8SxVR9JMZ4kzMD68N22vlaRpkeFA==", "dev": true, "requires": { - "dot-prop": "^5.1.0", + "dot-prop": "^5.2.0", "graceful-fs": "^4.1.2", "make-dir": "^3.0.0", "unique-string": "^2.0.0", @@ -1901,9 +1849,9 @@ }, "dependencies": { "write-file-atomic": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/write-file-atomic/-/write-file-atomic-3.0.1.tgz", - "integrity": "sha512-JPStrIyyVJ6oCSz/691fAjFtefZ6q+fP6tm+OS4Qw6o+TGQxNp1ziY2PgS+X/m0V8OWhZiO/m4xSj+Pr4RrZvw==", + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/write-file-atomic/-/write-file-atomic-3.0.3.tgz", + "integrity": "sha512-AvHcyZ5JnSfq3ioSyjrBkH9yW4m7Ayk8/9My/DD9onKeu/94fwrMocemO2QAJFAlnnDN+ZDS+ZjAR5ua1/PV/Q==", "dev": true, "requires": { "imurmurhash": "^0.1.4", @@ -2402,6 +2350,8 @@ "version": "1.1.3", "resolved": "https://registry.npmjs.org/define-properties/-/define-properties-1.1.3.tgz", "integrity": "sha512-3MqfYKj2lLzdMSf8ZIZE/V+Zuy+BgD6f164e8K2w7dgnpKArBDerGYpM46IYYcjnkdPNMjPk9A6VFB8+3SKlXQ==", + "dev": true, + "optional": true, "requires": { "object-keys": "^1.0.12" } @@ -2479,14 +2429,14 @@ } }, "dmg-builder": { - "version": "22.3.2", - "resolved": "https://registry.npmjs.org/dmg-builder/-/dmg-builder-22.3.2.tgz", - "integrity": "sha512-szx+nmCNjpfp2yy3zVCMQLj2nRHL3LfZyzvQECDGHr0ZHK7//48+MoJckkbOCB22ofBvx5Y2M1YqCjK8b2slYQ==", + "version": "22.4.0", + "resolved": "https://registry.npmjs.org/dmg-builder/-/dmg-builder-22.4.0.tgz", + "integrity": "sha512-tQvHhI2PZi4mn2CqzLyWohbipwrFJ5Wz97shsnzgje4uvVTnScF5nimoKCfnNIX5pcKL17Ij7f8WpluqeRDBTg==", "dev": true, "requires": { - "app-builder-lib": "~22.3.2", + "app-builder-lib": "~22.4.0", "bluebird-lst": "^1.0.9", - "builder-util": "~22.3.2", + "builder-util": "~22.4.0", "fs-extra": "^8.1.0", "iconv-lite": "^0.5.1", "js-yaml": "^3.13.1", @@ -2669,9 +2619,9 @@ "integrity": "sha512-7vmuyh5+kuUyJKePhQfRQBhXV5Ce+RnaeeQArKu1EAMpL3WbgMt5WG6uQZpEVvYSSsxMXRKOewtDk9RaTKXRlA==" }, "electron": { - "version": "9.0.0-beta.4", - "resolved": "https://registry.npmjs.org/electron/-/electron-9.0.0-beta.4.tgz", - "integrity": "sha512-XznzkZ8nWTclg7B/Bue8PgXPyaYygZvtIqiNSmI3mgJ710F69RO2IrM3Rs1ULS3qWA3sTDY6PO0UPyUeTxhP7g==", + "version": "9.0.0-beta.6", + "resolved": "https://registry.npmjs.org/electron/-/electron-9.0.0-beta.6.tgz", + "integrity": "sha512-g8dD3B67W+TSHCf04+x0B0Dg+fGCkilTSLUXs13dMNjRJZ2Rl2x/FrdMutK2wrdQSCTp84njeptBe2a++Tkqaw==", "dev": true, "requires": { "@electron/get": "^1.0.1", @@ -2680,23 +2630,24 @@ } }, "electron-builder": { - "version": "22.3.2", - "resolved": "https://registry.npmjs.org/electron-builder/-/electron-builder-22.3.2.tgz", - "integrity": "sha512-bDjHfKtA4DapI6qqy4FC18fzLsOJtlSVGBqjSjhrgv+gbcppp3tjR6ASsUX5K64/8L9MGjhRGdfQ7iP78OLx8g==", + "version": "22.4.0", + "resolved": "https://registry.npmjs.org/electron-builder/-/electron-builder-22.4.0.tgz", + "integrity": "sha512-6gmXgtkc3DHN+qqTdpFrE340BvzYOLrYQnvVX8Dpz+FLBIj6kg9eH4/MVDrqRjeW8F6DsIZ3jnlM91cWiE5r0g==", "dev": true, "requires": { - "app-builder-lib": "22.3.2", + "@types/yargs": "^15.0.4", + "app-builder-lib": "22.4.0", "bluebird-lst": "^1.0.9", - "builder-util": "22.3.2", - "builder-util-runtime": "8.6.0", + "builder-util": "22.4.0", + "builder-util-runtime": "8.6.1", "chalk": "^3.0.0", - "dmg-builder": "22.3.2", + "dmg-builder": "22.4.0", "fs-extra": "^8.1.0", "is-ci": "^2.0.0", "lazy-val": "^1.0.4", - "read-config-file": "5.0.1", + "read-config-file": "5.0.2", "sanitize-filename": "^1.6.3", - "update-notifier": "^4.0.0", + "update-notifier": "^4.1.0", "yargs": "^15.1.0" }, "dependencies": { @@ -3130,14 +3081,15 @@ } }, "electron-publish": { - "version": "22.3.2", - "resolved": "https://registry.npmjs.org/electron-publish/-/electron-publish-22.3.2.tgz", - "integrity": "sha512-nUGepzRtoGT8Tv83RHnnrR5szbw4+HpLLBdZU+aO5Kt3uoReTsp7NSm+agJfbI+H5rVpYCG8h6nPIejxGZ7LTg==", + "version": "22.4.0", + "resolved": "https://registry.npmjs.org/electron-publish/-/electron-publish-22.4.0.tgz", + "integrity": "sha512-50p+H/FsgwvOgLP8Oekvar07MR70M+cYROlH3ty5bIq0io6doEVPl+j/Cc8tfN/tygZecBKUCdYJMXjILQPn+A==", "dev": true, "requires": { + "@types/fs-extra": "^8.1.0", "bluebird-lst": "^1.0.9", - "builder-util": "~22.3.2", - "builder-util-runtime": "8.6.0", + "builder-util": "~22.4.0", + "builder-util-runtime": "8.6.1", "chalk": "^3.0.0", "fs-extra": "^8.1.0", "lazy-val": "^1.0.4", @@ -3252,25 +3204,6 @@ } } }, - "electron-spellchecker": { - "version": "2.2.1", - "resolved": "https://registry.npmjs.org/electron-spellchecker/-/electron-spellchecker-2.2.1.tgz", - "integrity": "sha512-IqxJmYq/5qyTNo9ONxHr9D/9UxiXVvDbl01s2f71S3aAHtDIc7I7qqEycvNUlFGR1WVBgFc/VzV4+deQwxgikA==", - "requires": { - "@aabuhijleh/electron-remote": "^1.4.0", - "@felixrieseberg/spellchecker": "^4.0.12", - "bcp47": "^1.1.2", - "cld": "^2.5.1", - "debug": "^4.1.1", - "keyboard-layout": "^2.0.16", - "lru-cache": "^5.1.1", - "mkdirp": "^0.5.1", - "pify": "^4.0.1", - "rxjs": "^5.0.1", - "rxjs-serial-subscription": "^0.1.1", - "spawn-rx": "^2.0.7" - } - }, "electron-window-state": { "version": "5.0.3", "resolved": "https://registry.npmjs.org/electron-window-state/-/electron-window-state-5.0.3.tgz", @@ -3319,33 +3252,6 @@ "is-arrayish": "^0.2.1" } }, - "es-abstract": { - "version": "1.16.2", - "resolved": "https://registry.npmjs.org/es-abstract/-/es-abstract-1.16.2.tgz", - "integrity": "sha512-jYo/J8XU2emLXl3OLwfwtuFfuF2w6DYPs+xy9ZfVyPkDcrauu6LYrw/q2TyCtrbc/KUdCiC5e9UajRhgNkVopA==", - "requires": { - "es-to-primitive": "^1.2.1", - "function-bind": "^1.1.1", - "has": "^1.0.3", - "has-symbols": "^1.0.1", - "is-callable": "^1.1.4", - "is-regex": "^1.0.4", - "object-inspect": "^1.7.0", - "object-keys": "^1.1.1", - "string.prototype.trimleft": "^2.1.0", - "string.prototype.trimright": "^2.1.0" - } - }, - "es-to-primitive": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/es-to-primitive/-/es-to-primitive-1.2.1.tgz", - "integrity": "sha512-QCOllgZJtaUo9miYBcLChTUaHNjJF3PYs1VidD7AwiEj1kYxKeQTctLAezAOH5ZKRH0g2IgPn6KwB4IT8iRpvA==", - "requires": { - "is-callable": "^1.1.4", - "is-date-object": "^1.0.1", - "is-symbol": "^1.0.2" - } - }, "es6-error": { "version": "4.1.1", "resolved": "https://registry.npmjs.org/es6-error/-/es6-error-4.1.1.tgz", @@ -3400,11 +3306,6 @@ "resolved": "https://registry.npmjs.org/etag/-/etag-1.8.1.tgz", "integrity": "sha1-Qa4u62XvpiJorr/qg6x9eSmbCIc=" }, - "event-kit": { - "version": "2.5.3", - "resolved": "https://registry.npmjs.org/event-kit/-/event-kit-2.5.3.tgz", - "integrity": "sha512-b7Qi1JNzY4BfAYfnIRanLk0DOD1gdkWHT4GISIn8Q2tAf3LpU8SP2CMwWaq40imYoKWbtN4ZhbSRxvsnikooZQ==" - }, "exec-buffer": { "version": "3.2.0", "resolved": "https://registry.npmjs.org/exec-buffer/-/exec-buffer-3.2.0.tgz", @@ -4008,11 +3909,6 @@ "resolved": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz", "integrity": "sha1-FQStJSMVjKpA20onh8sBQRmU6k8=" }, - "function-bind": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.1.tgz", - "integrity": "sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A==" - }, "galactus": { "version": "0.2.1", "resolved": "https://registry.npmjs.org/galactus/-/galactus-0.2.1.tgz", @@ -4642,14 +4538,6 @@ "har-schema": "^2.0.0" } }, - "has": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/has/-/has-1.0.3.tgz", - "integrity": "sha512-f2dvO0VU6Oej7RkWJGrehjbzMAjFp5/VKPp5tTpWIV4JHHZK1/BxbFRtf/siA2SWTe09caDmVtYYzWEIbBS4zw==", - "requires": { - "function-bind": "^1.1.1" - } - }, "has-ansi": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/has-ansi/-/has-ansi-2.0.0.tgz", @@ -4677,11 +4565,6 @@ "resolved": "https://registry.npmjs.org/has-symbol-support-x/-/has-symbol-support-x-1.4.2.tgz", "integrity": "sha512-3ToOva++HaW+eCpgqZrCfN51IPB+7bJNVT6CUATzueB5Heb8o6Nam0V3HG5dlDvZU1Gn5QLcbahiKw/XVk5JJw==" }, - "has-symbols": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/has-symbols/-/has-symbols-1.0.1.tgz", - "integrity": "sha512-PLcsoqu++dmEIZB+6totNFKq/7Do+Z0u4oT0zKOJNl3lYK6vGwwu2hjHs+68OEZbTjiUE9bgOABXbP/GvrS0Kg==" - }, "has-to-string-tag-x": { "version": "1.4.1", "resolved": "https://registry.npmjs.org/has-to-string-tag-x/-/has-to-string-tag-x-1.4.1.tgz", @@ -4701,11 +4584,6 @@ "integrity": "sha512-UqBRqi4ju7T+TqGNdqAO0PaSVGsDGJUBQvk9eUWNGRY1CFGDzYhLWoM7JQEemnlvVcv/YEmc2wNW8BC24EnUsw==", "dev": true }, - "hashids": { - "version": "1.2.2", - "resolved": "https://registry.npmjs.org/hashids/-/hashids-1.2.2.tgz", - "integrity": "sha512-dEHCG2LraR6PNvSGxosZHIRgxF5sNLOIBFEHbj8lfP9WWmu/PWPMzsip1drdVSOFi51N2pU7gZavrgn7sbGFuw==" - }, "he": { "version": "1.2.0", "resolved": "https://registry.npmjs.org/he/-/he-1.2.0.tgz", @@ -5150,11 +5028,6 @@ "resolved": "https://registry.npmjs.org/is-bzip2/-/is-bzip2-1.0.0.tgz", "integrity": "sha1-XuWOqlounIDiFAe+3yOuWsCRs/w=" }, - "is-callable": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/is-callable/-/is-callable-1.1.4.tgz", - "integrity": "sha512-r5p9sxJjYnArLjObpjA4xu5EKI3CuKHkJXMhT7kwbpUyIFD1n5PMAsoPvWnvtZiNz7LjkYDRZhd7FlI0eMijEA==" - }, "is-ci": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/is-ci/-/is-ci-2.0.0.tgz", @@ -5164,11 +5037,6 @@ "ci-info": "^2.0.0" } }, - "is-date-object": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/is-date-object/-/is-date-object-1.0.1.tgz", - "integrity": "sha1-mqIOtq7rv/d/vTPnTKAbM1gdOhY=" - }, "is-docker": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/is-docker/-/is-docker-2.0.0.tgz", @@ -5316,14 +5184,6 @@ "resolved": "https://registry.npmjs.org/is-redirect/-/is-redirect-1.0.0.tgz", "integrity": "sha1-HQPd7VO9jbDzDCbk+V02/HyH3CQ=" }, - "is-regex": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/is-regex/-/is-regex-1.0.4.tgz", - "integrity": "sha1-VRdIm1RwkbCTDglWVM7SXul+lJE=", - "requires": { - "has": "^1.0.1" - } - }, "is-relative": { "version": "0.1.3", "resolved": "https://registry.npmjs.org/is-relative/-/is-relative-0.1.3.tgz", @@ -5339,14 +5199,6 @@ "resolved": "https://registry.npmjs.org/is-stream/-/is-stream-1.1.0.tgz", "integrity": "sha1-EtSj3U5o4Lec6428hBc66A2RykQ=" }, - "is-symbol": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/is-symbol/-/is-symbol-1.0.3.tgz", - "integrity": "sha512-OwijhaRSgqvhm/0ZdAcXNZt9lYdKFpcRDT5ULUuYXPoT794UNOdU+gpT6Rzo7b4V2HUl/op6GqY894AZwv9faQ==", - "requires": { - "has-symbols": "^1.0.1" - } - }, "is-tar": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/is-tar/-/is-tar-1.0.0.tgz", @@ -5427,22 +5279,22 @@ } }, "jimp": { - "version": "0.9.3", - "resolved": "https://registry.npmjs.org/jimp/-/jimp-0.9.3.tgz", - "integrity": "sha512-dIxvT1OMRkd3+B18XUhJ5WZ2Dw7Hp8mvjaTqfi945zZ7fga6LT22h3NLYDorHHAiy9z30KjfNnOgpBoxrdjDZg==", + "version": "0.9.5", + "resolved": "https://registry.npmjs.org/jimp/-/jimp-0.9.5.tgz", + "integrity": "sha512-gjrzz+lT4In7shmP4LV1o/dfL0btnh4W9F5jPCXA6Qw4uEAF8+8GDwAR69hbUQCZH7R5KoCtq81tpfzydoJtSQ==", "requires": { "@babel/runtime": "^7.7.2", - "@jimp/custom": "^0.9.3", - "@jimp/plugins": "^0.9.3", - "@jimp/types": "^0.9.3", + "@jimp/custom": "^0.9.5", + "@jimp/plugins": "^0.9.5", + "@jimp/types": "^0.9.5", "core-js": "^3.4.1", "regenerator-runtime": "^0.13.3" } }, "jpeg-js": { - "version": "0.3.6", - "resolved": "https://registry.npmjs.org/jpeg-js/-/jpeg-js-0.3.6.tgz", - "integrity": "sha512-MUj2XlMB8kpe+8DJUGH/3UJm4XpI8XEgZQ+CiHDeyrGoKPdW/8FJv6ku+3UiYm5Fz3CWaL+iXmD8Q4Ap6aC1Jw==" + "version": "0.3.7", + "resolved": "https://registry.npmjs.org/jpeg-js/-/jpeg-js-0.3.7.tgz", + "integrity": "sha512-9IXdWudL61npZjvLuVe/ktHiA41iE8qFyLB+4VDTblEsWBzeg8WQTlktdUK4CdncUqtUgUg0bbOmTE2bKBKaBQ==" }, "js-yaml": { "version": "3.13.1", @@ -5618,15 +5470,6 @@ "resolved": "https://registry.npmjs.org/junk/-/junk-3.1.0.tgz", "integrity": "sha512-pBxcB3LFc8QVgdggvZWyeys+hnrNWg4OcZIU/1X59k5jQdLBlCsYGRQaz234SqoRLTCgMH00fY0xRJH+F9METQ==" }, - "keyboard-layout": { - "version": "2.0.16", - "resolved": "https://registry.npmjs.org/keyboard-layout/-/keyboard-layout-2.0.16.tgz", - "integrity": "sha512-eGrxmlV6jbm/mbPEOpYGuH53XEC7wIUj9ZxKcT2z9QHJ/RwrT9iVkvxka9zRxqHZHwQzcffgsa5OxoVAKnhK9w==", - "requires": { - "event-kit": "^2.0.0", - "nan": "^2.13.2" - } - }, "keyboardevent-from-electron-accelerator": { "version": "1.1.0", "resolved": "https://registry.npmjs.org/keyboardevent-from-electron-accelerator/-/keyboardevent-from-electron-accelerator-1.1.0.tgz", @@ -5821,7 +5664,8 @@ "lodash.assign": { "version": "4.2.0", "resolved": "https://registry.npmjs.org/lodash.assign/-/lodash.assign-4.2.0.tgz", - "integrity": "sha1-DZnzzNem0mHRm9rrkkUAXShYCOc=" + "integrity": "sha1-DZnzzNem0mHRm9rrkkUAXShYCOc=", + "dev": true }, "lodash.escape": { "version": "3.2.0", @@ -5834,7 +5678,8 @@ "lodash.get": { "version": "4.4.2", "resolved": "https://registry.npmjs.org/lodash.get/-/lodash.get-4.4.2.tgz", - "integrity": "sha1-LRd/ZS+jHpObRDjVNBSZ36OCXpk=" + "integrity": "sha1-LRd/ZS+jHpObRDjVNBSZ36OCXpk=", + "dev": true }, "lodash.isarguments": { "version": "3.1.0", @@ -6001,6 +5846,7 @@ "version": "5.1.1", "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-5.1.1.tgz", "integrity": "sha512-KpNARQA3Iwv+jTA0utUVVbrh+Jlrr1Fv0e56GGzAFOXN7dk/FviaDW8LHmK52DlcH4WP2n6gI8vN1aesBFgo9w==", + "dev": true, "requires": { "yallist": "^3.0.2" } @@ -7115,24 +6961,12 @@ "resolved": "https://registry.npmjs.org/object-assign/-/object-assign-2.1.1.tgz", "integrity": "sha1-Q8NuXVaf+OSBbE76i+AtJpZ8GKo=" }, - "object-inspect": { - "version": "1.7.0", - "resolved": "https://registry.npmjs.org/object-inspect/-/object-inspect-1.7.0.tgz", - "integrity": "sha512-a7pEHdh1xKIAgTySUGgLMx/xwDZskN1Ud6egYYN3EdRW4ZMPNEDUTF+hwy2LUC+Bl+SyLXANnwz/jyh/qutKUw==" - }, "object-keys": { "version": "1.1.1", "resolved": "https://registry.npmjs.org/object-keys/-/object-keys-1.1.1.tgz", - "integrity": "sha512-NuAESUOUMrlIXOfHKzD6bpPu3tYt3xvjNdRIQ+FeT0lNb4K8WR70CaDxhuNguS2XG+GjkyMwOzsN5ZktImfhLA==" - }, - "object.getownpropertydescriptors": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/object.getownpropertydescriptors/-/object.getownpropertydescriptors-2.0.3.tgz", - "integrity": "sha1-h1jIRvW0B62rDyNuCYbxSwUcqhY=", - "requires": { - "define-properties": "^1.1.2", - "es-abstract": "^1.5.1" - } + "integrity": "sha512-NuAESUOUMrlIXOfHKzD6bpPu3tYt3xvjNdRIQ+FeT0lNb4K8WR70CaDxhuNguS2XG+GjkyMwOzsN5ZktImfhLA==", + "dev": true, + "optional": true }, "object.omit": { "version": "2.0.1", @@ -7446,9 +7280,9 @@ } }, "http-cache-semantics": { - "version": "4.0.3", - "resolved": "https://registry.npmjs.org/http-cache-semantics/-/http-cache-semantics-4.0.3.tgz", - "integrity": "sha512-TcIMG3qeVLgDr1TEd2XvHaTnMPwYQUQMIBLy+5pLSDKYFc7UIqj39w8EGzZkaxoLv/l2K8HaI0t5AVA+YYgUew==", + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/http-cache-semantics/-/http-cache-semantics-4.1.0.tgz", + "integrity": "sha512-carPklcUh7ROWRK7Cv27RPtdhYhUsela/ue5/jKzjegVvXDqM2ILE9Q2BGn9JZJh1g87cp56su/FgQSzcWS8cQ==", "dev": true }, "normalize-url": { @@ -7487,9 +7321,9 @@ } }, "pako": { - "version": "1.0.10", - "resolved": "https://registry.npmjs.org/pako/-/pako-1.0.10.tgz", - "integrity": "sha512-0DTvPVU3ed8+HNXOu5Bs+o//Mbdj9VNQMUOe9oKCwh8l0GNwpTDMKCWbRjgtD291AWnkAgkqA/LOnQS8AmS1tw==" + "version": "1.0.11", + "resolved": "https://registry.npmjs.org/pako/-/pako-1.0.11.tgz", + "integrity": "sha512-4hLB8Py4zZce5s4yd9XzopqwVv/yGNhV1Bl8NTmCq1763HeK2+EwVTv+leGeL13Dnh2wfbqowVPXCIO0z4taYw==" }, "parse-author": { "version": "2.0.0", @@ -7635,11 +7469,6 @@ "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-2.1.1.tgz", "integrity": "sha512-OYMyqkKzK7blWO/+XZYP6w8hH0LDvkBvdvKukti+7kqYFCiEAk+gI3DWnryapc0Dau05ugGTy0foQ6mqn4AHYA==" }, - "pify": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/pify/-/pify-4.0.1.tgz", - "integrity": "sha512-uB80kBFb/tfd68bVleG9T5GGsGPjJrLAUpR5PZIrhBnIaRTQRjqdJSsIKkOP6OAIFbj7GOrcudc5pNjZ+geV2g==" - }, "pinkie": { "version": "2.0.4", "resolved": "https://registry.npmjs.org/pinkie/-/pinkie-2.0.4.tgz", @@ -8454,9 +8283,9 @@ } }, "read-config-file": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/read-config-file/-/read-config-file-5.0.1.tgz", - "integrity": "sha512-75zp4PDbvtBlECoZK1KEkNlesr9OWdMWL8oi4xq+HXAM+kKHKU+Cx2ksFt+ie2BkrmkLBOKSfONDuz+WIKWoXA==", + "version": "5.0.2", + "resolved": "https://registry.npmjs.org/read-config-file/-/read-config-file-5.0.2.tgz", + "integrity": "sha512-tVt1lsiSjs+FtL/vtfCivqtKR1UNk3BB3uPJQvJqkgtAYDvZjo0xyXFYSVmzaTcO+Jdi5G7O2K2vDV+p1M/oug==", "dev": true, "requires": { "dotenv": "^8.2.0", @@ -8778,22 +8607,6 @@ "resolved": "https://registry.npmjs.org/run-parallel/-/run-parallel-1.1.9.tgz", "integrity": "sha512-DEqnSRTDw/Tc3FXf49zedI638Z9onwUotBMiUFKmrO2sdFKIbXamXGQ3Axd4qgphxKB4kw/qP1w5kTxnfU1B9Q==" }, - "rxjs": { - "version": "5.5.12", - "resolved": "https://registry.npmjs.org/rxjs/-/rxjs-5.5.12.tgz", - "integrity": "sha512-xx2itnL5sBbqeeiVgNPVuQQ1nC8Jp2WfNJhXWHmElW9YmrpS9UVnNzhP3EH3HFqexO5Tlp8GhYY+WEcqcVMvGw==", - "requires": { - "symbol-observable": "1.0.1" - } - }, - "rxjs-serial-subscription": { - "version": "0.1.1", - "resolved": "https://registry.npmjs.org/rxjs-serial-subscription/-/rxjs-serial-subscription-0.1.1.tgz", - "integrity": "sha1-pCsdsL8QlLCSMRkeJ3jKP8+e0Uc=", - "requires": { - "rxjs": "^5.0.0-beta.12" - } - }, "safe-buffer": { "version": "5.1.2", "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", @@ -9083,26 +8896,6 @@ "resolved": "https://registry.npmjs.org/sparkles/-/sparkles-1.0.1.tgz", "integrity": "sha512-dSO0DDYUahUt/0/pD/Is3VIm5TGJjludZ0HVymmhYF6eNA53PVLhnUk0znSYbH8IYBuJdCE+1luR22jNLMaQdw==" }, - "spawn-rx": { - "version": "2.0.12", - "resolved": "https://registry.npmjs.org/spawn-rx/-/spawn-rx-2.0.12.tgz", - "integrity": "sha512-gOPXiQQFQ9lTOLuys0iMn3jfxxv9c7zzwhbYLOEbQGvEShHVJ5sSR1oD3Daj88os7jKArDYT7rbOKdvNhe7iEg==", - "requires": { - "debug": "^2.5.1", - "lodash.assign": "^4.2.0", - "rxjs": "^5.1.1" - }, - "dependencies": { - "debug": { - "version": "2.6.9", - "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", - "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", - "requires": { - "ms": "2.0.0" - } - } - } - }, "spdx-correct": { "version": "3.1.0", "resolved": "https://registry.npmjs.org/spdx-correct/-/spdx-correct-3.1.0.tgz", @@ -9252,24 +9045,6 @@ "resolved": "https://registry.npmjs.org/string.prototype.repeat/-/string.prototype.repeat-0.2.0.tgz", "integrity": "sha1-q6Nt4I3O5qWjN9SbLqHaGyj8Ds8=" }, - "string.prototype.trimleft": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/string.prototype.trimleft/-/string.prototype.trimleft-2.1.0.tgz", - "integrity": "sha512-FJ6b7EgdKxxbDxc79cOlok6Afd++TTs5szo+zJTUyow3ycrRfJVE2pq3vcN53XexvKZu/DJMDfeI/qMiZTrjTw==", - "requires": { - "define-properties": "^1.1.3", - "function-bind": "^1.1.1" - } - }, - "string.prototype.trimright": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/string.prototype.trimright/-/string.prototype.trimright-2.1.0.tgz", - "integrity": "sha512-fXZTSV55dNBwv16uw+hh5jkghxSnc5oHq+5K/gXgizHwAvMetdAJlHqqoFC1FSDVPYWLkAKl2cxpUT41sV7nSg==", - "requires": { - "define-properties": "^1.1.3", - "function-bind": "^1.1.1" - } - }, "string_decoder": { "version": "1.1.1", "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz", @@ -9366,11 +9141,6 @@ "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-2.0.0.tgz", "integrity": "sha1-U10EXOa2Nj+kARcIRimZXp3zJMc=" }, - "symbol-observable": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/symbol-observable/-/symbol-observable-1.0.1.tgz", - "integrity": "sha1-g0D8RwLDEi310iKI+IKD9RPT/dQ=" - }, "symbol-tree": { "version": "3.2.4", "resolved": "https://registry.npmjs.org/symbol-tree/-/symbol-tree-3.2.4.tgz", @@ -9397,11 +9167,11 @@ } }, "tar-stream": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/tar-stream/-/tar-stream-2.1.0.tgz", - "integrity": "sha512-+DAn4Nb4+gz6WZigRzKEZl1QuJVOLtAwwF+WUxy1fJ6X63CaGaUAxJRD2KEn1OMfcbCjySTYpNC6WmfQoIEOdw==", + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/tar-stream/-/tar-stream-2.1.1.tgz", + "integrity": "sha512-GZjLk64XcE/58qwIc1ZfXGqTSE4OutPMEkfBE/oh9eJ4x1eMRjYkgrLrav7PzddpvIpSJSGi8FgNNYXdB9Vumg==", "requires": { - "bl": "^3.0.0", + "bl": "^4.0.1", "end-of-stream": "^1.4.1", "fs-constants": "^1.0.0", "inherits": "^2.0.3", @@ -9409,17 +9179,17 @@ }, "dependencies": { "bl": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/bl/-/bl-3.0.0.tgz", - "integrity": "sha512-EUAyP5UHU5hxF8BPT0LKW8gjYLhq1DQIcneOX/pL/m2Alo+OYDQAJlHq+yseMP50Os2nHXOSic6Ss3vSQeyf4A==", + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/bl/-/bl-4.0.1.tgz", + "integrity": "sha512-FL/TdvchukRCuWVxT0YMO/7+L5TNeNrVFvRU2IY63aUyv9mpt8splf2NEr6qXtPo5fya5a66YohQKvGNmLrWNA==", "requires": { - "readable-stream": "^3.0.1" + "readable-stream": "^3.4.0" } }, "readable-stream": { - "version": "3.4.0", - "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-3.4.0.tgz", - "integrity": "sha512-jItXPLmrSR8jmTRmRWJXCnGJsfy85mB3Wd/uINMXA65yrnFo0cPClFIUWzo2najVNSl+mx7/4W8ttlLWJe99pQ==", + "version": "3.6.0", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-3.6.0.tgz", + "integrity": "sha512-BViHy7LKeTz4oNnkcLJ+lVSL6vpiFeX6/d3oSH8zCW7UxP2onchk+vTGB143xuFjHS3deTgkKoXXymXqymiIdA==", "requires": { "inherits": "^2.0.3", "string_decoder": "^1.1.1", @@ -9434,9 +9204,9 @@ "integrity": "sha1-CnwOom06Oa+n4OvqnB/AvE2qAR0=" }, "temp-file": { - "version": "3.3.6", - "resolved": "https://registry.npmjs.org/temp-file/-/temp-file-3.3.6.tgz", - "integrity": "sha512-7TPldi8QJqRlPIF/Y33mVvo8+xDfi6+aVTCK4CrCaLqCoaOnVtf3SA4hCU0T5nhYDdOC7erw7o2uWfvijlk4Ug==", + "version": "3.3.7", + "resolved": "https://registry.npmjs.org/temp-file/-/temp-file-3.3.7.tgz", + "integrity": "sha512-9tBJKt7GZAQt/Rg0QzVWA8Am8c1EFl+CAv04/aBVqlx5oyfQ508sFIABshQ0xbZu6mBrFLWIUXO/bbLYghW70g==", "dev": true, "requires": { "async-exit-hook": "^2.0.1", @@ -9453,9 +9223,9 @@ } }, "term-size": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/term-size/-/term-size-2.1.1.tgz", - "integrity": "sha512-UqvQSch04R+69g4RDhrslmGvGL3ucDRX/U+snYW0Mab4uCAyKSndUksaoqlJ81QKSpRnIsuOYQCbC2ZWx2896A==", + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/term-size/-/term-size-2.2.0.tgz", + "integrity": "sha512-a6sumDlzyHVJWb8+YofY4TW112G6p2FCPEAFk+59gIYHv3XHRhm9ltVQ9kli4hNWeQBwSpe8cRN25x0ROunMOw==", "dev": true }, "through": { @@ -9769,7 +9539,8 @@ "underscore": { "version": "1.9.1", "resolved": "https://registry.npmjs.org/underscore/-/underscore-1.9.1.tgz", - "integrity": "sha512-5/4etnCkd9c8gwgowi5/om/mYO5ajCaOgdzj/oW+0eQV9WxKBDZw5+ycmKmeaTXjInS/W0BzpGLo2xR2aBwZdg==" + "integrity": "sha512-5/4etnCkd9c8gwgowi5/om/mYO5ajCaOgdzj/oW+0eQV9WxKBDZw5+ycmKmeaTXjInS/W0BzpGLo2xR2aBwZdg==", + "dev": true }, "unescape": { "version": "1.0.1", @@ -9849,14 +9620,14 @@ "integrity": "sha1-uYTwh3/AqJwsdzzB73tbIytbBv4=" }, "update-notifier": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/update-notifier/-/update-notifier-4.0.0.tgz", - "integrity": "sha512-p9zf71hWt5GVXM4iEBujpUgx8mK9AWiCCapEJm/O1z5ntCim83Z1ATqzZFBHFYqx03laMqv8LiDgs/7ikXjf/g==", + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/update-notifier/-/update-notifier-4.1.0.tgz", + "integrity": "sha512-w3doE1qtI0/ZmgeoDoARmI5fjDoT93IfKgEGqm26dGUOh8oNpaSTsGNdYRN/SjOuo10jcJGwkEL3mroKzktkew==", "dev": true, "requires": { "boxen": "^4.2.0", "chalk": "^3.0.0", - "configstore": "^5.0.0", + "configstore": "^5.0.1", "has-yarn": "^2.1.0", "import-lazy": "^2.1.0", "is-ci": "^2.0.0", @@ -9864,6 +9635,7 @@ "is-npm": "^4.0.0", "is-yarn-global": "^0.3.0", "latest-version": "^5.0.0", + "pupa": "^2.0.1", "semver-diff": "^3.1.1", "xdg-basedir": "^4.0.0" }, @@ -9973,15 +9745,6 @@ "resolved": "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz", "integrity": "sha1-RQ1Nyfpw3nMnYvvS1KKJgUGaDM8=" }, - "util.promisify": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/util.promisify/-/util.promisify-1.0.0.tgz", - "integrity": "sha512-i+6qA2MPhvoKLuxnJNpXAGhg7HphQOSUq2LKMZD0m15EiskXUkMvKdF4Uui0WYeCUGea+o2cw/ZuwehtfsrNkA==", - "requires": { - "define-properties": "^1.1.2", - "object.getownpropertydescriptors": "^2.0.3" - } - }, "utils-merge": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/utils-merge/-/utils-merge-1.0.1.tgz", @@ -10337,12 +10100,11 @@ "integrity": "sha1-qQKekp09vN7RafPG4oI42VpdWig=" }, "xml2js": { - "version": "0.4.22", - "resolved": "https://registry.npmjs.org/xml2js/-/xml2js-0.4.22.tgz", - "integrity": "sha512-MWTbxAQqclRSTnehWWe5nMKzI3VmJ8ltiJEco8akcC6j3miOhjjfzKum5sId+CWhfxdOs/1xauYr8/ZDBtQiRw==", + "version": "0.4.23", + "resolved": "https://registry.npmjs.org/xml2js/-/xml2js-0.4.23.tgz", + "integrity": "sha512-ySPiMjM0+pLDftHgXY4By0uswI3SPKLDw/i3UXbnO8M/p28zqexCUoPmQFrYD+/1BzhGJSs2i1ERWKJAtiLrug==", "requires": { "sax": ">=0.6.0", - "util.promisify": "~1.0.0", "xmlbuilder": "~11.0.0" } }, @@ -10363,11 +10125,6 @@ "integrity": "sha512-yS2uJflVQs6n+CyjHoaBmVSqIDevTAWrzMmjG1Gc7h1qQ7uVozNhEPJAwZXWyGQ/Gafo3fCwrcaokezLPupVyQ==", "dev": true }, - "xmlhttprequest": { - "version": "1.8.0", - "resolved": "https://registry.npmjs.org/xmlhttprequest/-/xmlhttprequest-1.8.0.tgz", - "integrity": "sha1-Z/4HXFwk/vOfnWX197f+dRcZaPw=" - }, "xtend": { "version": "4.0.2", "resolved": "https://registry.npmjs.org/xtend/-/xtend-4.0.2.tgz", diff --git a/package.json b/package.json index ee96d214a..611a159a0 100644 --- a/package.json +++ b/package.json @@ -49,7 +49,7 @@ "imagemin-mozjpeg": "8.0.0", "imagemin-pngquant": "8.0.0", "ini": "1.3.5", - "jimp": "0.9.3", + "jimp": "0.9.5", "mime-types": "2.1.26", "multer": "1.4.2", "node-abi": "2.15.0", @@ -67,15 +67,15 @@ "sqlite": "3.0.3", "sqlite3": "4.1.1", "string-similarity": "4.0.1", - "tar-stream": "2.1.0", + "tar-stream": "2.1.1", "turndown": "5.0.3", "turndown-plugin-gfm": "1.0.2", "unescape": "1.0.1", "ws": "7.2.1" }, "devDependencies": { - "electron": "9.0.0-beta.4", - "electron-builder": "22.3.2", + "electron": "9.0.0-beta.6", + "electron-builder": "22.4.0", "electron-packager": "14.2.1", "electron-rebuild": "1.10.0", "jsdoc": "3.6.3", diff --git a/src/public/javascripts/dialogs/add_link.js b/src/public/javascripts/dialogs/add_link.js index a75364cf3..159a31cbd 100644 --- a/src/public/javascripts/dialogs/add_link.js +++ b/src/public/javascripts/dialogs/add_link.js @@ -1,7 +1,6 @@ import treeService from '../services/tree.js'; import noteAutocompleteService from "../services/note_autocomplete.js"; import utils from "../services/utils.js"; -import appContext from "../services/app_context.js"; const $dialog = $("#add-link-dialog"); const $form = $("#add-link-form"); diff --git a/src/public/javascripts/services/tab_manager.js b/src/public/javascripts/services/tab_manager.js index 56e4c0e2d..1a63abeba 100644 --- a/src/public/javascripts/services/tab_manager.js +++ b/src/public/javascripts/services/tab_manager.js @@ -181,7 +181,7 @@ export default class TabManager extends Component { const tabContext = new TabContext(tabId); this.child(tabContext); - await this.triggerEvent('newTabOpened', {tabId: tabContext.tabId}); + await this.triggerEvent('newTabOpened', {tabContext}); return tabContext; } diff --git a/src/public/javascripts/widgets/basic_widget.js b/src/public/javascripts/widgets/basic_widget.js index ba86a5d6e..be7a92afe 100644 --- a/src/public/javascripts/widgets/basic_widget.js +++ b/src/public/javascripts/widgets/basic_widget.js @@ -47,7 +47,7 @@ class BasicWidget extends Component { $widget.addClass('component') .prop('component', this); - this.toggle(this.isEnabled()); + this.toggleInt(this.isEnabled()); if (this.cssEl) { const css = this.cssEl.trim().startsWith('`; @@ -75,8 +75,12 @@ class BasicWidget extends Component { */ doRender() {} - toggle(show) { - this.$widget.toggle(show); + toggleInt(show) { + this.$widget.toggleClass('hidden-int', !show); + } + + toggleExt(show) { + this.$widget.toggleClass('hidden-ext', !show); } isVisible() { diff --git a/src/public/javascripts/widgets/collapsible_widget.js b/src/public/javascripts/widgets/collapsible_widget.js index 9c3108791..b7a75a13d 100644 --- a/src/public/javascripts/widgets/collapsible_widget.js +++ b/src/public/javascripts/widgets/collapsible_widget.js @@ -41,8 +41,9 @@ export default class CollapsibleWidget extends TabAwareWidget { this.$bodyWrapper.collapse("show"); } - this.$bodyWrapper.on('hidden.bs.collapse', () => options.save(widgetName + 'Collapsed', 'true')); - this.$bodyWrapper.on('shown.bs.collapse', () => options.save(widgetName + 'Collapsed', 'false')); + // using immediate variants of the event so that the previous collapse is not caught + this.$bodyWrapper.on('hide.bs.collapse', () => options.save(widgetName + 'Collapsed', 'true')); + this.$bodyWrapper.on('show.bs.collapse', () => options.save(widgetName + 'Collapsed', 'false')); this.$body = this.$bodyWrapper.find('.card-body'); diff --git a/src/public/javascripts/widgets/note_detail.js b/src/public/javascripts/widgets/note_detail.js index 50c7cf2a8..d93976c5e 100644 --- a/src/public/javascripts/widgets/note_detail.js +++ b/src/public/javascripts/widgets/note_detail.js @@ -24,7 +24,7 @@ const TPL = ` .note-detail { height: 100%; min-height: 0; - } + } `; @@ -59,6 +59,10 @@ export default class NoteDetailWidget extends TabAwareWidget { }); } + isEnabled() { + return true; + } + doRender() { this.$widget = $(TPL); @@ -89,18 +93,7 @@ export default class NoteDetailWidget extends TabAwareWidget { return this.$widget; } - isEnabled() { - return this.tabContext && this.tabContext.isActive(); - } - async refresh() { - if (!this.isEnabled()) { - this.toggle(false); - return; - } - - this.toggle(true); - this.type = await this.getWidgetType(); this.mime = this.note ? this.note.mime : null; @@ -130,7 +123,7 @@ export default class NoteDetailWidget extends TabAwareWidget { setupClasses() { for (const clazz of Array.from(this.$widget[0].classList)) { // create copy to safely iterate over while removing classes - if (clazz !== 'note-detail') { + if (clazz !== 'note-detail' && !clazz.startsWith('hidden-')) { this.$widget.removeClass(clazz); } } @@ -156,14 +149,16 @@ export default class NoteDetailWidget extends TabAwareWidget { } async getWidgetType() { - if (!this.note) { + const note = this.note; + + if (!note) { return "empty"; } - let type = this.note.type; + let type = note.type; if (type === 'text' && !this.tabContext.autoBookDisabled - && this.note.hasChildren() + && note.hasChildren() && utils.isDesktop()) { const noteComplement = await this.tabContext.getNoteComplement(); @@ -173,7 +168,7 @@ export default class NoteDetailWidget extends TabAwareWidget { } } - if (this.note.isProtected && !protectedSessionHolder.isProtectedSessionAvailable()) { + if (note.isProtected && !protectedSessionHolder.isProtectedSessionAvailable()) { type = 'protected-session'; } diff --git a/src/public/javascripts/widgets/note_tree.js b/src/public/javascripts/widgets/note_tree.js index c22854532..94528813c 100644 --- a/src/public/javascripts/widgets/note_tree.js +++ b/src/public/javascripts/widgets/note_tree.js @@ -425,7 +425,7 @@ export default class NoteTreeWidget extends TabAwareWidget { } async refresh() { - this.toggle(this.isEnabled()); + this.toggleInt(this.isEnabled()); const oldActiveNode = this.getActiveNode(); diff --git a/src/public/javascripts/widgets/promoted_attributes.js b/src/public/javascripts/widgets/promoted_attributes.js index d9587f3e5..7c92709a4 100644 --- a/src/public/javascripts/widgets/promoted_attributes.js +++ b/src/public/javascripts/widgets/promoted_attributes.js @@ -79,10 +79,10 @@ export default class PromotedAttributesWidget extends TabAwareWidget { // we replace the whole content in one step so there can't be any race conditions // (previously we saw promoted attributes doubling) this.$container.empty().append($tbody); - this.toggle(true); + this.toggleInt(true); } else { - this.toggle(false); + this.toggleInt(false); } return attributes; diff --git a/src/public/javascripts/widgets/search_box.js b/src/public/javascripts/widgets/search_box.js index 930c253fd..c980b9519 100644 --- a/src/public/javascripts/widgets/search_box.js +++ b/src/public/javascripts/widgets/search_box.js @@ -170,7 +170,7 @@ export default class SearchBoxWidget extends BasicWidget { searchInSubtreeEvent({noteId}) { noteId = noteId || appContext.tabManager.getActiveTabNoteId(); - this.toggle(true); + this.toggleInt(true); this.$searchInput.val(`@in=${noteId} @text*=*`); } diff --git a/src/public/javascripts/widgets/search_results.js b/src/public/javascripts/widgets/search_results.js index 51152c8e5..88aa434a9 100644 --- a/src/public/javascripts/widgets/search_results.js +++ b/src/public/javascripts/widgets/search_results.js @@ -34,13 +34,13 @@ export default class SearchResultsWidget extends BasicWidget { this.$searchResults = this.$widget; this.$searchResultsInner = this.$widget.find(".search-results-list"); - this.toggle(false); + this.toggleInt(false); return this.$widget; } searchResultsEvent({results}) { - this.toggle(true); + this.toggleInt(true); this.$searchResultsInner.empty(); this.$searchResults.show(); diff --git a/src/public/javascripts/widgets/tab_aware_widget.js b/src/public/javascripts/widgets/tab_aware_widget.js index a153f71ac..1dad9ccd3 100644 --- a/src/public/javascripts/widgets/tab_aware_widget.js +++ b/src/public/javascripts/widgets/tab_aware_widget.js @@ -2,11 +2,6 @@ import BasicWidget from "./basic_widget.js"; import appContext from "../services/app_context.js"; export default class TabAwareWidget extends BasicWidget { - setTabContextEvent({tabContext}) { - /** @var {TabContext} */ - this.tabContext = tabContext; - } - isTab(tabId) { return this.tabContext && this.tabContext.tabId === tabId; } @@ -27,36 +22,15 @@ export default class TabAwareWidget extends BasicWidget { return this.tabContext && this.tabContext.notePath; } - async tabNoteSwitchedEvent({tabId, notePath}) { - // if notePath does not match then the tabContext has been switched to another note in the mean time - if (this.isTab(tabId) && this.notePath === notePath) { - await this.noteSwitched(); - } - } - - async noteTypeMimeChangedEvent({noteId}) { - if (this.noteId === noteId) { - await this.refresh(); - } - } - - async noteSwitched() { - await this.refresh(); - } - - async activeTabChanged() { - await this.refresh(); - } - isEnabled() { - return !!this.note && this.tabContext.isActive(); + return !!this.note; } async refresh() { if (this.isEnabled()) { const start = Date.now(); - this.toggle(true); + this.toggleInt(true); await this.refreshWithNote(this.note, this.notePath); const end = Date.now(); @@ -66,29 +40,55 @@ export default class TabAwareWidget extends BasicWidget { } } else { - this.toggle(false); + this.toggleInt(false); } } async refreshWithNote(note, notePath) {} + async tabNoteSwitchedEvent({tabId, notePath}) { + // if notePath does not match then the tabContext has been switched to another note in the mean time + if (this.notePath === notePath) { + await this.noteSwitched(); + } + } + + async noteSwitched() { + await this.refresh(); + } + async activeTabChangedEvent({tabId}) { this.tabContext = appContext.tabManager.getTabContextById(tabId); - if (this.tabContext.tabId === appContext.tabManager.getActiveTabContext().tabId) { - await this.activeTabChanged(); - } + await this.activeTabChanged(); + } + + async activeTabChanged() { + await this.refresh(); } // when note is both switched and activated, this should not produce double refresh async tabNoteSwitchedAndActivatedEvent({tabId, notePath}) { this.tabContext = appContext.tabManager.getTabContextById(tabId); - if (this.tabContext.tabId === appContext.tabManager.getActiveTabContext().tabId - && this.notePath === notePath) { + // if notePath does not match then the tabContext has been switched to another note in the mean time + if (this.notePath === notePath) { + await this.refresh(); + } + } - this.tabContext = appContext.tabManager.getActiveTabContext(); + setTabContextEvent({tabContext}) { + /** @var {TabContext} */ + this.tabContext = tabContext; + } + async newTabOpenedEvent({tabContext}) { + /** @var {TabContext} */ + this.tabContext = tabContext; + } + + async noteTypeMimeChangedEvent({noteId}) { + if (this.isNote(noteId)) { await this.refresh(); } } diff --git a/src/public/javascripts/widgets/tab_caching_widget.js b/src/public/javascripts/widgets/tab_caching_widget.js index 4015b90f9..465cc629d 100644 --- a/src/public/javascripts/widgets/tab_caching_widget.js +++ b/src/public/javascripts/widgets/tab_caching_widget.js @@ -1,6 +1,5 @@ import TabAwareWidget from "./tab_aware_widget.js"; import keyboardActionsService from "../services/keyboard_actions.js"; -import appContext from "../services/app_context.js"; export default class TabCachingWidget extends TabAwareWidget { constructor(widgetFactory) { @@ -11,7 +10,7 @@ export default class TabCachingWidget extends TabAwareWidget { } isEnabled() { - return this.tabContext && this.tabContext.isActive(); + return !!this.tabContext; } doRender() { @@ -31,7 +30,11 @@ export default class TabCachingWidget extends TabAwareWidget { return Promise.resolve(); } - async newTabOpenedEvent({tabId}) { + async newTabOpenedEvent({tabContext}) { + super.newTabOpenedEvent({tabContext}); + + const {tabId} = tabContext; + if (this.widgets[tabId]) { return; } @@ -39,20 +42,20 @@ export default class TabCachingWidget extends TabAwareWidget { this.widgets[tabId] = this.widgetFactory(); const $renderedWidget = this.widgets[tabId].render(); + this.widgets[tabId].toggleExt(this.widgets[tabId]); + this.$widget.after($renderedWidget); keyboardActionsService.updateDisplayedShortcuts($renderedWidget); - await this.widgets[tabId].handleEvent('setTabContext', { - tabContext: appContext.tabManager.getTabContextById(tabId) - }); + await this.widgets[tabId].handleEvent('newTabOpened', {tabContext}); this.child(this.widgets[tabId]); // add as child only once it is ready (rendered with tabContext) } async refreshWithNote() { for (const widget of Object.values(this.widgets)) { - widget.toggle(false); + widget.toggleExt(false); } if (!this.tabContext) { @@ -64,7 +67,7 @@ export default class TabCachingWidget extends TabAwareWidget { const widget = this.widgets[this.tabContext.tabId]; if (widget) { - widget.toggle(widget.isEnabled()); + widget.toggleExt(true); } else { console.error(`Widget for tab ${this.tabContext.tabId} not found.`); @@ -82,12 +85,11 @@ export default class TabCachingWidget extends TabAwareWidget { } } - toggle(show) { + toggleInt(show) {} // not needed + + toggleByTab(show) { for (const tabId in this.widgets) { - this.widgets[tabId].toggle( - show - && this.isTab(tabId) - && this.widgets[tabId].isEnabled()); + this.widgets[tabId].toggleExt(show && this.isTab(tabId)); } } } \ No newline at end of file diff --git a/src/public/javascripts/widgets/tab_row.js b/src/public/javascripts/widgets/tab_row.js index 63fc72402..863982888 100644 --- a/src/public/javascripts/widgets/tab_row.js +++ b/src/public/javascripts/widgets/tab_row.js @@ -420,8 +420,8 @@ export default class TabRowWidget extends BasicWidget { if (tabEl) tabEl.setAttribute('active', ''); } - newTabOpenedEvent({tabId}) { - this.addTab(tabId); + newTabOpenedEvent({tabContext}) { + this.addTab(tabContext.tabId); } removeTab(tabId) { diff --git a/src/public/javascripts/widgets/type_widgets/text.js b/src/public/javascripts/widgets/type_widgets/text.js index bc4d034d9..216feeab6 100644 --- a/src/public/javascripts/widgets/type_widgets/text.js +++ b/src/public/javascripts/widgets/type_widgets/text.js @@ -145,7 +145,7 @@ export default class TextTypeWidget extends TypeWidget { const noteComplement = await this.tabContext.getNoteComplement(); - this.spacedUpdate.allowUpdateWithoutChange(() => { + await this.spacedUpdate.allowUpdateWithoutChange(() => { this.textEditor.setData(noteComplement.content); }); } diff --git a/src/public/javascripts/widgets/type_widgets/type_widget.js b/src/public/javascripts/widgets/type_widgets/type_widget.js index 7e7e6cd41..72c448df3 100644 --- a/src/public/javascripts/widgets/type_widgets/type_widget.js +++ b/src/public/javascripts/widgets/type_widgets/type_widget.js @@ -7,21 +7,21 @@ export default class TypeWidget extends TabAwareWidget { /** * @param {NoteShort} note */ - doRefresh(note) {} + async doRefresh(note) {} async refresh() { const thisWidgetType = this.constructor.getType(); const noteWidgetType = await this.parent.getWidgetType(); if (thisWidgetType !== noteWidgetType) { - this.toggle(false); + this.toggleInt(false); this.cleanup(); } else { - this.toggle(true); + this.toggleInt(true); - this.doRefresh(this.note); + await this.doRefresh(this.note); } } diff --git a/src/public/stylesheets/style.css b/src/public/stylesheets/style.css index e11f39d5c..b96a4d2f1 100644 --- a/src/public/stylesheets/style.css +++ b/src/public/stylesheets/style.css @@ -863,4 +863,8 @@ body { [data-toggle="tooltip"] span { padding-bottom: 0; border-bottom: 1px dotted; +} + +.hidden-int, .hidden-ext { + display: none !important; } \ No newline at end of file