From 667718c0d0f05d202890f51df687be8016ac368d Mon Sep 17 00:00:00 2001 From: Maxim Kadushkin Date: Fri, 24 Jun 2022 14:41:44 +0300 Subject: [PATCH 01/76] [start page] update dependencies --- common/loginpage/build/package-lock.json | 14 +++++++------- common/loginpage/build/package.json | 2 +- 2 files changed, 8 insertions(+), 8 deletions(-) diff --git a/common/loginpage/build/package-lock.json b/common/loginpage/build/package-lock.json index edc717fb3..c87f30a2e 100644 --- a/common/loginpage/build/package-lock.json +++ b/common/loginpage/build/package-lock.json @@ -18,7 +18,7 @@ "grunt-terser": "^2.0.0", "grunt-text-replace": "0.4.0", "lodash": "^4.17.20", - "terser": "^5.14.0" + "terser": "^5.14.1" } }, "node_modules/@jridgewell/gen-mapping": { @@ -1673,9 +1673,9 @@ "integrity": "sha1-RwbfYlvGrs2Gt8n2sPtUi5XN92k=" }, "node_modules/terser": { - "version": "5.14.0", - "resolved": "https://registry.npmjs.org/terser/-/terser-5.14.0.tgz", - "integrity": "sha512-JC6qfIEkPBd9j1SMO3Pfn+A6w2kQV54tv+ABQLgZr7dA3k/DL/OBoYSWxzVpZev3J+bUHXfr55L8Mox7AaNo6g==", + "version": "5.14.1", + "resolved": "https://registry.npmjs.org/terser/-/terser-5.14.1.tgz", + "integrity": "sha512-+ahUAE+iheqBTDxXhTisdA8hgvbEG1hHOQ9xmNjeUJSoi6DU/gMrKNcfZjHkyY6Alnuyc+ikYJaxxfHkT3+WuQ==", "dependencies": { "@jridgewell/source-map": "^0.3.2", "acorn": "^8.5.0", @@ -3049,9 +3049,9 @@ "integrity": "sha1-RwbfYlvGrs2Gt8n2sPtUi5XN92k=" }, "terser": { - "version": "5.14.0", - "resolved": "https://registry.npmjs.org/terser/-/terser-5.14.0.tgz", - "integrity": "sha512-JC6qfIEkPBd9j1SMO3Pfn+A6w2kQV54tv+ABQLgZr7dA3k/DL/OBoYSWxzVpZev3J+bUHXfr55L8Mox7AaNo6g==", + "version": "5.14.1", + "resolved": "https://registry.npmjs.org/terser/-/terser-5.14.1.tgz", + "integrity": "sha512-+ahUAE+iheqBTDxXhTisdA8hgvbEG1hHOQ9xmNjeUJSoi6DU/gMrKNcfZjHkyY6Alnuyc+ikYJaxxfHkT3+WuQ==", "requires": { "@jridgewell/source-map": "^0.3.2", "acorn": "^8.5.0", diff --git a/common/loginpage/build/package.json b/common/loginpage/build/package.json index 37f41f6a0..cc88f6840 100644 --- a/common/loginpage/build/package.json +++ b/common/loginpage/build/package.json @@ -14,6 +14,6 @@ "grunt-contrib-htmlmin": "^3.1.0", "grunt-inline": "0.3.7", "grunt-terser": "^2.0.0", - "terser": "^5.14.0" + "terser": "^5.14.1" } } From c31157010c96ddacbaa8c29967a1604ccde53908 Mon Sep 17 00:00:00 2001 From: maxkadushkin Date: Mon, 27 Jun 2022 21:27:52 +0300 Subject: [PATCH 02/76] [macos] removed window min size --- macos/ONLYOFFICE/Base.lproj/Main.storyboard | 1 - 1 file changed, 1 deletion(-) diff --git a/macos/ONLYOFFICE/Base.lproj/Main.storyboard b/macos/ONLYOFFICE/Base.lproj/Main.storyboard index b1a31f18f..dafeda870 100644 --- a/macos/ONLYOFFICE/Base.lproj/Main.storyboard +++ b/macos/ONLYOFFICE/Base.lproj/Main.storyboard @@ -708,7 +708,6 @@ - From 792361b21941395584b672a71b5ed5255272cb2e Mon Sep 17 00:00:00 2001 From: Maxim Kadushkin Date: Wed, 29 Jun 2022 00:05:21 +0300 Subject: [PATCH 03/76] [start page] changed plugin path --- common/loginpage/build/package-lock.json | 8588 ++++++++++++++++- common/loginpage/build/package.json | 2 +- .../build/plugins/grunt-inline/Gruntfile.js | 50 + .../build/plugins/grunt-inline/LICENSE-MIT | 22 + .../build/plugins/grunt-inline/README.md | 274 + .../build/plugins/grunt-inline/package.json | 40 + .../plugins/grunt-inline/tasks/inline.js | 256 + .../plugins/grunt-inline/test/dist/css.html | 13 + .../grunt-inline/test/dist/css_greedy.html | 9 + .../plugins/grunt-inline/test/dist/html.html | 10 + .../grunt-inline/test/dist/html/test.html | 1 + .../grunt-inline/test/dist/html_greedy.html | 9 + .../plugins/grunt-inline/test/dist/img.html | 10 + .../grunt-inline/test/dist/img/icon.png | Bin 0 -> 1447 bytes .../grunt-inline/test/dist/img_greedy.html | 9 + .../grunt-inline/test/dist/js/export.js | 1 + .../grunt-inline/test/dist/script.html | 9 + .../grunt-inline/test/dist/script_greedy.html | 9 + .../grunt-inline/test/dist/styles/main.css | 6 + .../grunt-inline/test/expected/css.min.html | 11 + .../test/expected/css_greedy.min.html | 11 + .../grunt-inline/test/expected/html.min.html | 1 + .../test/expected/html_greedy.min.html | 1 + .../grunt-inline/test/expected/img.min.html | 1 + .../test/expected/img_greedy.min.html | 1 + .../test/expected/script.min.html | 1 + .../test/expected/script_greedy.min.html | 1 + .../plugins/grunt-inline/test/greedy_test.js | 48 + .../plugins/grunt-inline/test/inline_test.js | 48 + 29 files changed, 8998 insertions(+), 444 deletions(-) create mode 100644 common/loginpage/build/plugins/grunt-inline/Gruntfile.js create mode 100644 common/loginpage/build/plugins/grunt-inline/LICENSE-MIT create mode 100644 common/loginpage/build/plugins/grunt-inline/README.md create mode 100644 common/loginpage/build/plugins/grunt-inline/package.json create mode 100644 common/loginpage/build/plugins/grunt-inline/tasks/inline.js create mode 100644 common/loginpage/build/plugins/grunt-inline/test/dist/css.html create mode 100644 common/loginpage/build/plugins/grunt-inline/test/dist/css_greedy.html create mode 100644 common/loginpage/build/plugins/grunt-inline/test/dist/html.html create mode 100644 common/loginpage/build/plugins/grunt-inline/test/dist/html/test.html create mode 100644 common/loginpage/build/plugins/grunt-inline/test/dist/html_greedy.html create mode 100644 common/loginpage/build/plugins/grunt-inline/test/dist/img.html create mode 100644 common/loginpage/build/plugins/grunt-inline/test/dist/img/icon.png create mode 100644 common/loginpage/build/plugins/grunt-inline/test/dist/img_greedy.html create mode 100644 common/loginpage/build/plugins/grunt-inline/test/dist/js/export.js create mode 100644 common/loginpage/build/plugins/grunt-inline/test/dist/script.html create mode 100644 common/loginpage/build/plugins/grunt-inline/test/dist/script_greedy.html create mode 100644 common/loginpage/build/plugins/grunt-inline/test/dist/styles/main.css create mode 100644 common/loginpage/build/plugins/grunt-inline/test/expected/css.min.html create mode 100644 common/loginpage/build/plugins/grunt-inline/test/expected/css_greedy.min.html create mode 100644 common/loginpage/build/plugins/grunt-inline/test/expected/html.min.html create mode 100644 common/loginpage/build/plugins/grunt-inline/test/expected/html_greedy.min.html create mode 100644 common/loginpage/build/plugins/grunt-inline/test/expected/img.min.html create mode 100644 common/loginpage/build/plugins/grunt-inline/test/expected/img_greedy.min.html create mode 100644 common/loginpage/build/plugins/grunt-inline/test/expected/script.min.html create mode 100644 common/loginpage/build/plugins/grunt-inline/test/expected/script_greedy.min.html create mode 100644 common/loginpage/build/plugins/grunt-inline/test/greedy_test.js create mode 100644 common/loginpage/build/plugins/grunt-inline/test/inline_test.js diff --git a/common/loginpage/build/package-lock.json b/common/loginpage/build/package-lock.json index c87f30a2e..0835add7f 100644 --- a/common/loginpage/build/package-lock.json +++ b/common/loginpage/build/package-lock.json @@ -14,19 +14,130 @@ "grunt-contrib-copy": "^1.0.0", "grunt-contrib-htmlmin": "^3.1.0", "grunt-contrib-less": "^3.0.0", - "grunt-inline": "0.3.7", + "grunt-inline": "file:plugins/grunt-inline", "grunt-terser": "^2.0.0", "grunt-text-replace": "0.4.0", "lodash": "^4.17.20", "terser": "^5.14.1" } }, - "node_modules/@jridgewell/gen-mapping": { - "version": "0.3.1", - "resolved": "https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.3.1.tgz", - "integrity": "sha512-GcHwniMlA2z+WFPWuY8lp3fsza0I8xPFMWL5+n8LYyP6PSvPrXf4+n8stDHZY2DM0zy9sVkRDy1jDI4XGzYVqg==", + "node_modules/@ampproject/remapping": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/@ampproject/remapping/-/remapping-2.2.0.tgz", + "integrity": "sha512-qRmjj8nj9qmLTQXXmaR1cck3UXSRMPrbsLJAasZpF+t3riI71BXed5ebIOYwQntykeZuhjsdweEc9BxH5Jc26w==", + "dev": true, "dependencies": { - "@jridgewell/set-array": "^1.0.0", + "@jridgewell/gen-mapping": "^0.1.0", + "@jridgewell/trace-mapping": "^0.3.9" + }, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/@babel/code-frame": { + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.18.6.tgz", + "integrity": "sha512-TDCmlK5eOvH+eH7cdAFlNXeVJqWIQ7gW9tY1GJIpUtFb6CmjVyq2VM3u71bOyR8CRihcCgMUYoDNyLXao3+70Q==", + "dev": true, + "dependencies": { + "@babel/highlight": "^7.18.6" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/compat-data": { + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/compat-data/-/compat-data-7.18.6.tgz", + "integrity": "sha512-tzulrgDT0QD6U7BJ4TKVk2SDDg7wlP39P9yAx1RfLy7vP/7rsDRlWVfbWxElslu56+r7QOhB2NSDsabYYruoZQ==", + "dev": true, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/core": { + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.18.6.tgz", + "integrity": "sha512-cQbWBpxcbbs/IUredIPkHiAGULLV8iwgNRMFzvbhEXISp4f3rUUXE5+TIw6KwUWUR3DwyI6gmBRnmAtYaWehwQ==", + "dev": true, + "dependencies": { + "@ampproject/remapping": "^2.1.0", + "@babel/code-frame": "^7.18.6", + "@babel/generator": "^7.18.6", + "@babel/helper-compilation-targets": "^7.18.6", + "@babel/helper-module-transforms": "^7.18.6", + "@babel/helpers": "^7.18.6", + "@babel/parser": "^7.18.6", + "@babel/template": "^7.18.6", + "@babel/traverse": "^7.18.6", + "@babel/types": "^7.18.6", + "convert-source-map": "^1.7.0", + "debug": "^4.1.0", + "gensync": "^1.0.0-beta.2", + "json5": "^2.2.1", + "semver": "^6.3.0" + }, + "engines": { + "node": ">=6.9.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/babel" + } + }, + "node_modules/@babel/core/node_modules/debug": { + "version": "4.3.4", + "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.4.tgz", + "integrity": "sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ==", + "dev": true, + "dependencies": { + "ms": "2.1.2" + }, + "engines": { + "node": ">=6.0" + }, + "peerDependenciesMeta": { + "supports-color": { + "optional": true + } + } + }, + "node_modules/@babel/core/node_modules/ms": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", + "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==", + "dev": true + }, + "node_modules/@babel/core/node_modules/semver": { + "version": "6.3.0", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", + "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", + "dev": true, + "bin": { + "semver": "bin/semver.js" + } + }, + "node_modules/@babel/generator": { + "version": "7.18.7", + "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.18.7.tgz", + "integrity": "sha512-shck+7VLlY72a2w9c3zYWuE1pwOKEiQHV7GTUbSnhyl5eu3i04t30tBY82ZRWrDfo3gkakCFtevExnxbkf2a3A==", + "dev": true, + "dependencies": { + "@babel/types": "^7.18.7", + "@jridgewell/gen-mapping": "^0.3.2", + "jsesc": "^2.5.1" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/generator/node_modules/@jridgewell/gen-mapping": { + "version": "0.3.2", + "resolved": "https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.3.2.tgz", + "integrity": "sha512-mh65xKQAzI6iBcFzwv28KVWSmCkdRBWoOh+bYQGW3+6OZvbbN3TqMGo5hqYxQniRcH9F2VZIoJCm4pa3BPDK/A==", + "dev": true, + "dependencies": { + "@jridgewell/set-array": "^1.0.1", "@jridgewell/sourcemap-codec": "^1.4.10", "@jridgewell/trace-mapping": "^0.3.9" }, @@ -34,18 +145,372 @@ "node": ">=6.0.0" } }, + "node_modules/@babel/helper-compilation-targets": { + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/helper-compilation-targets/-/helper-compilation-targets-7.18.6.tgz", + "integrity": "sha512-vFjbfhNCzqdeAtZflUFrG5YIFqGTqsctrtkZ1D/NB0mDW9TwW3GmmUepYY4G9wCET5rY5ugz4OGTcLd614IzQg==", + "dev": true, + "dependencies": { + "@babel/compat-data": "^7.18.6", + "@babel/helper-validator-option": "^7.18.6", + "browserslist": "^4.20.2", + "semver": "^6.3.0" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0" + } + }, + "node_modules/@babel/helper-compilation-targets/node_modules/semver": { + "version": "6.3.0", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", + "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", + "dev": true, + "bin": { + "semver": "bin/semver.js" + } + }, + "node_modules/@babel/helper-environment-visitor": { + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/helper-environment-visitor/-/helper-environment-visitor-7.18.6.tgz", + "integrity": "sha512-8n6gSfn2baOY+qlp+VSzsosjCVGFqWKmDF0cCWOybh52Dw3SEyoWR1KrhMJASjLwIEkkAufZ0xvr+SxLHSpy2Q==", + "dev": true, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-function-name": { + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/helper-function-name/-/helper-function-name-7.18.6.tgz", + "integrity": "sha512-0mWMxV1aC97dhjCah5U5Ua7668r5ZmSC2DLfH2EZnf9c3/dHZKiFa5pRLMH5tjSl471tY6496ZWk/kjNONBxhw==", + "dev": true, + "dependencies": { + "@babel/template": "^7.18.6", + "@babel/types": "^7.18.6" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-hoist-variables": { + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/helper-hoist-variables/-/helper-hoist-variables-7.18.6.tgz", + "integrity": "sha512-UlJQPkFqFULIcyW5sbzgbkxn2FKRgwWiRexcuaR8RNJRy8+LLveqPjwZV/bwrLZCN0eUHD/x8D0heK1ozuoo6Q==", + "dev": true, + "dependencies": { + "@babel/types": "^7.18.6" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-module-imports": { + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/helper-module-imports/-/helper-module-imports-7.18.6.tgz", + "integrity": "sha512-0NFvs3VkuSYbFi1x2Vd6tKrywq+z/cLeYC/RJNFrIX/30Bf5aiGYbtvGXolEktzJH8o5E5KJ3tT+nkxuuZFVlA==", + "dev": true, + "dependencies": { + "@babel/types": "^7.18.6" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-module-transforms": { + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/helper-module-transforms/-/helper-module-transforms-7.18.6.tgz", + "integrity": "sha512-L//phhB4al5uucwzlimruukHB3jRd5JGClwRMD/ROrVjXfLqovYnvQrK/JK36WYyVwGGO7OD3kMyVTjx+WVPhw==", + "dev": true, + "dependencies": { + "@babel/helper-environment-visitor": "^7.18.6", + "@babel/helper-module-imports": "^7.18.6", + "@babel/helper-simple-access": "^7.18.6", + "@babel/helper-split-export-declaration": "^7.18.6", + "@babel/helper-validator-identifier": "^7.18.6", + "@babel/template": "^7.18.6", + "@babel/traverse": "^7.18.6", + "@babel/types": "^7.18.6" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-simple-access": { + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/helper-simple-access/-/helper-simple-access-7.18.6.tgz", + "integrity": "sha512-iNpIgTgyAvDQpDj76POqg+YEt8fPxx3yaNBg3S30dxNKm2SWfYhD0TGrK/Eu9wHpUW63VQU894TsTg+GLbUa1g==", + "dev": true, + "dependencies": { + "@babel/types": "^7.18.6" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-split-export-declaration": { + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/helper-split-export-declaration/-/helper-split-export-declaration-7.18.6.tgz", + "integrity": "sha512-bde1etTx6ZyTmobl9LLMMQsaizFVZrquTEHOqKeQESMKo4PlObf+8+JA25ZsIpZhT/WEd39+vOdLXAFG/nELpA==", + "dev": true, + "dependencies": { + "@babel/types": "^7.18.6" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-validator-identifier": { + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.18.6.tgz", + "integrity": "sha512-MmetCkz9ej86nJQV+sFCxoGGrUbU3q02kgLciwkrt9QqEB7cP39oKEY0PakknEO0Gu20SskMRi+AYZ3b1TpN9g==", + "dev": true, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-validator-option": { + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/helper-validator-option/-/helper-validator-option-7.18.6.tgz", + "integrity": "sha512-XO7gESt5ouv/LRJdrVjkShckw6STTaB7l9BrpBaAHDeF5YZT+01PCwmR0SJHnkW6i8OwW/EVWRShfi4j2x+KQw==", + "dev": true, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helpers": { + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.18.6.tgz", + "integrity": "sha512-vzSiiqbQOghPngUYt/zWGvK3LAsPhz55vc9XNN0xAl2gV4ieShI2OQli5duxWHD+72PZPTKAcfcZDE1Cwc5zsQ==", + "dev": true, + "dependencies": { + "@babel/template": "^7.18.6", + "@babel/traverse": "^7.18.6", + "@babel/types": "^7.18.6" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/highlight": { + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.18.6.tgz", + "integrity": "sha512-u7stbOuYjaPezCuLj29hNW1v64M2Md2qupEKP1fHc7WdOA3DgLh37suiSrZYY7haUB7iBeQZ9P1uiRF359do3g==", + "dev": true, + "dependencies": { + "@babel/helper-validator-identifier": "^7.18.6", + "chalk": "^2.0.0", + "js-tokens": "^4.0.0" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/highlight/node_modules/ansi-styles": { + "version": "3.2.1", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz", + "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==", + "dev": true, + "dependencies": { + "color-convert": "^1.9.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/@babel/highlight/node_modules/chalk": { + "version": "2.4.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz", + "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==", + "dev": true, + "dependencies": { + "ansi-styles": "^3.2.1", + "escape-string-regexp": "^1.0.5", + "supports-color": "^5.3.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/@babel/highlight/node_modules/color-convert": { + "version": "1.9.3", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz", + "integrity": "sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==", + "dev": true, + "dependencies": { + "color-name": "1.1.3" + } + }, + "node_modules/@babel/highlight/node_modules/color-name": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz", + "integrity": "sha512-72fSenhMw2HZMTVHeCA9KCmpEIbzWiQsjN+BHcBbS9vr1mtt+vJjPdksIBNUmKAW8TFUDPJK5SUU3QhE9NEXDw==", + "dev": true + }, + "node_modules/@babel/highlight/node_modules/escape-string-regexp": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", + "integrity": "sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg==", + "dev": true, + "engines": { + "node": ">=0.8.0" + } + }, + "node_modules/@babel/highlight/node_modules/has-flag": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", + "integrity": "sha512-sKJf1+ceQBr4SMkvQnBDNDtf4TXpVhVGateu0t918bl30FnbE2m4vNLX+VWe/dpjlb+HugGYzW7uQXH98HPEYw==", + "dev": true, + "engines": { + "node": ">=4" + } + }, + "node_modules/@babel/highlight/node_modules/supports-color": { + "version": "5.5.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz", + "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==", + "dev": true, + "dependencies": { + "has-flag": "^3.0.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/@babel/parser": { + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.18.6.tgz", + "integrity": "sha512-uQVSa9jJUe/G/304lXspfWVpKpK4euFLgGiMQFOCpM/bgcAdeoHwi/OQz23O9GK2osz26ZiXRRV9aV+Yl1O8tw==", + "dev": true, + "bin": { + "parser": "bin/babel-parser.js" + }, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/@babel/template": { + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.18.6.tgz", + "integrity": "sha512-JoDWzPe+wgBsTTgdnIma3iHNFC7YVJoPssVBDjiHfNlyt4YcunDtcDOUmfVDfCK5MfdsaIoX9PkijPhjH3nYUw==", + "dev": true, + "dependencies": { + "@babel/code-frame": "^7.18.6", + "@babel/parser": "^7.18.6", + "@babel/types": "^7.18.6" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/traverse": { + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.18.6.tgz", + "integrity": "sha512-zS/OKyqmD7lslOtFqbscH6gMLFYOfG1YPqCKfAW5KrTeolKqvB8UelR49Fpr6y93kYkW2Ik00mT1LOGiAGvizw==", + "dev": true, + "dependencies": { + "@babel/code-frame": "^7.18.6", + "@babel/generator": "^7.18.6", + "@babel/helper-environment-visitor": "^7.18.6", + "@babel/helper-function-name": "^7.18.6", + "@babel/helper-hoist-variables": "^7.18.6", + "@babel/helper-split-export-declaration": "^7.18.6", + "@babel/parser": "^7.18.6", + "@babel/types": "^7.18.6", + "debug": "^4.1.0", + "globals": "^11.1.0" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/traverse/node_modules/debug": { + "version": "4.3.4", + "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.4.tgz", + "integrity": "sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ==", + "dev": true, + "dependencies": { + "ms": "2.1.2" + }, + "engines": { + "node": ">=6.0" + }, + "peerDependenciesMeta": { + "supports-color": { + "optional": true + } + } + }, + "node_modules/@babel/traverse/node_modules/ms": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", + "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==", + "dev": true + }, + "node_modules/@babel/types": { + "version": "7.18.7", + "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.18.7.tgz", + "integrity": "sha512-QG3yxTcTIBoAcQmkCs+wAPYZhu7Dk9rXKacINfNbdJDNERTbLQbHGyVG8q/YGMPeCJRIhSY0+fTc5+xuh6WPSQ==", + "dev": true, + "dependencies": { + "@babel/helper-validator-identifier": "^7.18.6", + "to-fast-properties": "^2.0.0" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@istanbuljs/load-nyc-config": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/@istanbuljs/load-nyc-config/-/load-nyc-config-1.1.0.tgz", + "integrity": "sha512-VjeHSlIzpv/NyD3N0YuHfXOPDIixcA1q2ZV98wsMqcYlPmv2n3Yb2lYP9XMElnaFVXg5A7YLTeLu6V84uQDjmQ==", + "dev": true, + "dependencies": { + "camelcase": "^5.3.1", + "find-up": "^4.1.0", + "get-package-type": "^0.1.0", + "js-yaml": "^3.13.1", + "resolve-from": "^5.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/@istanbuljs/schema": { + "version": "0.1.3", + "resolved": "https://registry.npmjs.org/@istanbuljs/schema/-/schema-0.1.3.tgz", + "integrity": "sha512-ZXRY4jNvVgSVQ8DL3LTcakaAtXwTVUxE81hslsyD2AtoXW/wVob10HkOJ1X/pAlcI7D+2YoZKg5do8G/w6RYgA==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/@jridgewell/gen-mapping": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.1.1.tgz", + "integrity": "sha512-sQXCasFk+U8lWYEe66WxRDOE9PjVz4vSM51fTu3Hw+ClTpUSQb718772vH3pyS5pShp6lvQM7SxgIDXXXmOX7w==", + "dev": true, + "dependencies": { + "@jridgewell/set-array": "^1.0.0", + "@jridgewell/sourcemap-codec": "^1.4.10" + }, + "engines": { + "node": ">=6.0.0" + } + }, "node_modules/@jridgewell/resolve-uri": { - "version": "3.0.7", - "resolved": "https://registry.npmjs.org/@jridgewell/resolve-uri/-/resolve-uri-3.0.7.tgz", - "integrity": "sha512-8cXDaBBHOr2pQ7j77Y6Vp5VDT2sIqWyWQ56TjEq4ih/a4iST3dItRe8Q9fp0rrIl9DoKhWQtUQz/YpOxLkXbNA==", + "version": "3.0.8", + "resolved": "https://registry.npmjs.org/@jridgewell/resolve-uri/-/resolve-uri-3.0.8.tgz", + "integrity": "sha512-YK5G9LaddzGbcucK4c8h5tWFmMPBvRZ/uyWmN1/SbBdIvqGUdWGkJ5BAaccgs6XbzVLsqbPJrBSFwKv3kT9i7w==", "engines": { "node": ">=6.0.0" } }, "node_modules/@jridgewell/set-array": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/@jridgewell/set-array/-/set-array-1.1.1.tgz", - "integrity": "sha512-Ct5MqZkLGEXTVmQYbGtx9SVqD2fqwvdubdps5D3djjAkgkKwT918VNOz65pEHFaYTeWcukmJmH5SwsA9Tn2ObQ==", + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/@jridgewell/set-array/-/set-array-1.1.2.tgz", + "integrity": "sha512-xnkseuNADM0gt2bs+BvhO0p78Mk762YnZdsuzFV018NoG1Sj1SCQvpSqa7XUaTam5vAGasABV9qXASMKnFMwMw==", "engines": { "node": ">=6.0.0" } @@ -59,15 +524,28 @@ "@jridgewell/trace-mapping": "^0.3.9" } }, + "node_modules/@jridgewell/source-map/node_modules/@jridgewell/gen-mapping": { + "version": "0.3.2", + "resolved": "https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.3.2.tgz", + "integrity": "sha512-mh65xKQAzI6iBcFzwv28KVWSmCkdRBWoOh+bYQGW3+6OZvbbN3TqMGo5hqYxQniRcH9F2VZIoJCm4pa3BPDK/A==", + "dependencies": { + "@jridgewell/set-array": "^1.0.1", + "@jridgewell/sourcemap-codec": "^1.4.10", + "@jridgewell/trace-mapping": "^0.3.9" + }, + "engines": { + "node": ">=6.0.0" + } + }, "node_modules/@jridgewell/sourcemap-codec": { - "version": "1.4.13", - "resolved": "https://registry.npmjs.org/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.4.13.tgz", - "integrity": "sha512-GryiOJmNcWbovBxTfZSF71V/mXbgcV3MewDe3kIMCLyIh5e7SKAeUZs+rMnJ8jkMolZ/4/VsdBmMrw3l+VdZ3w==" + "version": "1.4.14", + "resolved": "https://registry.npmjs.org/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.4.14.tgz", + "integrity": "sha512-XPSJHWmi394fuUuzDnGz1wiKqWfo1yXecHQMRf2l6hztTO+nPru658AyDngaBe7isIxEkRsPR3FZh+s7iVa4Uw==" }, "node_modules/@jridgewell/trace-mapping": { - "version": "0.3.13", - "resolved": "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.13.tgz", - "integrity": "sha512-o1xbKhp9qnIAoHJSWd6KlCZfqslL4valSF81H8ImioOAxluWYWOpWkpyktY2vnt4tbrX9XYaxovq6cgowaJp2w==", + "version": "0.3.14", + "resolved": "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.14.tgz", + "integrity": "sha512-bJWEfQ9lPTvm3SneWwRFVLzrh6nhjwqw7TUFFBEMzwvg7t7PCDenf2lDwqo4NQXzdpgBXyFgDWnQA+2vkruksQ==", "dependencies": { "@jridgewell/resolve-uri": "^3.0.3", "@jridgewell/sourcemap-codec": "^1.4.10" @@ -79,9 +557,9 @@ "integrity": "sha512-nne9/IiQ/hzIhY6pdDnbBtz7DjPTKrY00P/zvPSm5pOFkl6xuGrGnXn/VtTNNfNtAfZ9/1RtehkszU9qcTii0Q==" }, "node_modules/acorn": { - "version": "8.7.0", - "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.7.0.tgz", - "integrity": "sha512-V/LGr1APy+PXIwKebEWrkZPwoeoF+w1jiOBUmuxuiUIaOHtob8Qc9BTrYo7VuI5fR8tqsy+buA2WFooR5olqvQ==", + "version": "8.7.1", + "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.7.1.tgz", + "integrity": "sha512-Xx54uLJQZ19lKygFXOWsscKUbsBZW0CPykPhVQdhIeIwrbPmJzqeASDInc8nKBnp/JT6igTs82qPXz069H8I/A==", "bin": { "acorn": "bin/acorn" }, @@ -89,20 +567,42 @@ "node": ">=0.4.0" } }, - "node_modules/amdefine": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/amdefine/-/amdefine-1.0.1.tgz", - "integrity": "sha1-SlKCrBZHKek2Gbz9OtFR+BfOkfU=", + "node_modules/aggregate-error": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/aggregate-error/-/aggregate-error-3.1.0.tgz", + "integrity": "sha512-4I7Td01quW/RpocfNayFdFVk1qSuoh0E7JrbRJ16nH01HhKFQ88INq9Sd+nd72zqRySlr9BmDA8xlEJ6vJMrYA==", + "dev": true, + "dependencies": { + "clean-stack": "^2.0.0", + "indent-string": "^4.0.0" + }, "engines": { - "node": ">=0.4.2" + "node": ">=8" + } + }, + "node_modules/ajv": { + "version": "6.12.6", + "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.12.6.tgz", + "integrity": "sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g==", + "dev": true, + "dependencies": { + "fast-deep-equal": "^3.1.1", + "fast-json-stable-stringify": "^2.0.0", + "json-schema-traverse": "^0.4.1", + "uri-js": "^4.2.2" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/epoberezkin" } }, "node_modules/ansi-regex": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-2.1.1.tgz", - "integrity": "sha1-w7M6te42DYbg5ijwRorn7yfWVN8=", + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", + "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==", + "dev": true, "engines": { - "node": ">=0.10.0" + "node": ">=8" } }, "node_modules/ansi-styles": { @@ -119,6 +619,37 @@ "url": "https://github.com/chalk/ansi-styles?sponsor=1" } }, + "node_modules/anymatch": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/anymatch/-/anymatch-3.1.2.tgz", + "integrity": "sha512-P43ePfOAIupkguHUycrc4qJ9kz8ZiuOUijaETwX7THt0Y/GNK7v0aa8rY816xWjZ7rJdA5XdMcpVFTKMq+RvWg==", + "dev": true, + "dependencies": { + "normalize-path": "^3.0.0", + "picomatch": "^2.0.4" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/append-transform": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/append-transform/-/append-transform-2.0.0.tgz", + "integrity": "sha512-7yeyCEurROLQJFv5Xj4lEGTy0borxepjFv1g22oAdqFu//SrAlDl1O1Nxx15SH1RoliUml6p8dwJW9jvZughhg==", + "dev": true, + "dependencies": { + "default-require-extensions": "^3.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/archy": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/archy/-/archy-1.0.0.tgz", + "integrity": "sha512-Xg+9RwCg/0p32teKdGMPTPnVXKD0w3DfHnFTficozsAgsvq2XenPJq/MYpzzQ/v8zrOyJn6Ds39VA4JIDwFfqw==", + "dev": true + }, "node_modules/argparse": { "version": "1.0.10", "resolved": "https://registry.npmjs.org/argparse/-/argparse-1.0.10.tgz", @@ -130,7 +661,7 @@ "node_modules/array-each": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/array-each/-/array-each-1.0.1.tgz", - "integrity": "sha1-p5SvDAWrF1KEbudTofIRoFugxE8=", + "integrity": "sha512-zHjL5SZa68hkKHBFBK6DJCTtr9sfTCPCaph/L7tMSLcTFgy+zX7E+6q5UArbtOtMBCtxdICpfTCspRse+ywyXA==", "engines": { "node": ">=0.10.0" } @@ -143,16 +674,91 @@ "node": ">=0.10.0" } }, + "node_modules/asn1": { + "version": "0.2.6", + "resolved": "https://registry.npmjs.org/asn1/-/asn1-0.2.6.tgz", + "integrity": "sha512-ix/FxPn0MDjeyJ7i/yoHGFt/EX6LyNbxSEhPPXODPL+KB0VPk86UYfL0lMdy+KCnv+fmvIzySwaK5COwqVbWTQ==", + "dev": true, + "dependencies": { + "safer-buffer": "~2.1.0" + } + }, + "node_modules/assert-plus": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/assert-plus/-/assert-plus-1.0.0.tgz", + "integrity": "sha512-NfJ4UzBCcQGLDlQq7nHxH+tv3kyZ0hHQqF5BO6J7tNJeP5do1llPr8dZ8zHonfhAu0PHAdMkSo+8o0wxg9lZWw==", + "dev": true, + "engines": { + "node": ">=0.8" + } + }, "node_modules/async": { - "version": "3.2.3", - "resolved": "https://registry.npmjs.org/async/-/async-3.2.3.tgz", - "integrity": "sha512-spZRyzKL5l5BZQrr/6m/SqFdBN0q3OCI0f9rjfBzCMBIP4p75P620rR3gTmaksNOhmzgdxcaxdNfMy6anrbM0g==" + "version": "3.2.4", + "resolved": "https://registry.npmjs.org/async/-/async-3.2.4.tgz", + "integrity": "sha512-iAB+JbDEGXhyIUavoDl9WP/Jj106Kz9DEn1DPgYw5ruDn0e3Wgi3sKFm55sASdGBNOQB8F59d9qQ7deqrHA8wQ==" + }, + "node_modules/async-hook-domain": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/async-hook-domain/-/async-hook-domain-2.0.4.tgz", + "integrity": "sha512-14LjCmlK1PK8eDtTezR6WX8TMaYNIzBIsd2D1sGoGjgx0BuNMMoSdk7i/drlbtamy0AWv9yv2tkB+ASdmeqFIw==", + "dev": true, + "engines": { + "node": ">=10" + } + }, + "node_modules/asynckit": { + "version": "0.4.0", + "resolved": "https://registry.npmjs.org/asynckit/-/asynckit-0.4.0.tgz", + "integrity": "sha512-Oei9OH4tRh0YqU3GxhX79dM/mwVgvbZJaSNaRk+bshkj0S5cfHcgYakreBjrHwatXKbz+IoIdYLxrKim2MjW0Q==", + "dev": true + }, + "node_modules/aws-sign2": { + "version": "0.7.0", + "resolved": "https://registry.npmjs.org/aws-sign2/-/aws-sign2-0.7.0.tgz", + "integrity": "sha512-08kcGqnYf/YmjoRhfxyu+CLxBjUtHLXLXX/vUfx9l2LYzG3c1m61nrpyFUZI6zeS+Li/wWMMidD9KgrqtGq3mA==", + "dev": true, + "engines": { + "node": "*" + } + }, + "node_modules/aws4": { + "version": "1.11.0", + "resolved": "https://registry.npmjs.org/aws4/-/aws4-1.11.0.tgz", + "integrity": "sha512-xh1Rl34h6Fi1DC2WWKfxUTVqRsNnr6LsKz2+hfwDxQJWmrx8+c7ylaqBMcHfl1U1r2dsifOvKX3LQuLNZ+XSvA==", + "dev": true }, "node_modules/balanced-match": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.2.tgz", "integrity": "sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==" }, + "node_modules/bcrypt-pbkdf": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/bcrypt-pbkdf/-/bcrypt-pbkdf-1.0.2.tgz", + "integrity": "sha512-qeFIXtP4MSoi6NLqO12WfqARWWuCKi2Rn/9hJLEmtB5yTNr9DqFWkJRCf2qShWzPeAMRnOgCrq0sg/KLv5ES9w==", + "dev": true, + "dependencies": { + "tweetnacl": "^0.14.3" + } + }, + "node_modules/binary-extensions": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/binary-extensions/-/binary-extensions-2.2.0.tgz", + "integrity": "sha512-jDctJ/IVQbZoJykoeHbhXpOlNBqGNcwXJKJog42E5HDPUwQTSdjCHdihjj0DlnheQ7blbT6dHOafNAiS8ooQKA==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/bind-obj-methods": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/bind-obj-methods/-/bind-obj-methods-3.0.0.tgz", + "integrity": "sha512-nLEaaz3/sEzNSyPWRsN9HNsqwk1AUyECtGj+XwGdIi3xABnEqecvXtIJ0wehQXuuER5uZ/5fTs2usONgYjG+iw==", + "dev": true, + "engines": { + "node": ">=10" + } + }, "node_modules/brace-expansion": { "version": "1.1.11", "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", @@ -173,20 +779,118 @@ "node": ">=8" } }, + "node_modules/browserslist": { + "version": "4.21.1", + "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.21.1.tgz", + "integrity": "sha512-Nq8MFCSrnJXSc88yliwlzQe3qNe3VntIjhsArW9IJOEPSHNx23FalwApUVbzAWABLhYJJ7y8AynWI/XM8OdfjQ==", + "dev": true, + "funding": [ + { + "type": "opencollective", + "url": "https://opencollective.com/browserslist" + }, + { + "type": "tidelift", + "url": "https://tidelift.com/funding/github/npm/browserslist" + } + ], + "dependencies": { + "caniuse-lite": "^1.0.30001359", + "electron-to-chromium": "^1.4.172", + "node-releases": "^2.0.5", + "update-browserslist-db": "^1.0.4" + }, + "bin": { + "browserslist": "cli.js" + }, + "engines": { + "node": "^6 || ^7 || ^8 || ^9 || ^10 || ^11 || ^12 || >=13.7" + } + }, "node_modules/buffer-from": { "version": "1.1.2", "resolved": "https://registry.npmjs.org/buffer-from/-/buffer-from-1.1.2.tgz", "integrity": "sha512-E+XQCRwSbaaiChtv6k6Dwgc+bx+Bs6vuKJHHl5kox/BaKbhiXzqQOwK4cO22yElGp2OCmjwVhT3HmxgyPGnJfQ==" }, + "node_modules/caching-transform": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/caching-transform/-/caching-transform-4.0.0.tgz", + "integrity": "sha512-kpqOvwXnjjN44D89K5ccQC+RUrsy7jB/XLlRrx0D7/2HNcTPqzsb6XgYoErwko6QsV184CA2YgS1fxDiiDZMWA==", + "dev": true, + "dependencies": { + "hasha": "^5.0.0", + "make-dir": "^3.0.0", + "package-hash": "^4.0.0", + "write-file-atomic": "^3.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/caching-transform/node_modules/make-dir": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-3.1.0.tgz", + "integrity": "sha512-g3FeP20LNwhALb/6Cz6Dd4F2ngze0jz7tbzrD2wAV+o9FeNHe4rL+yK2md0J/fiSf1sa1ADhXqi5+oVwOM/eGw==", + "dev": true, + "dependencies": { + "semver": "^6.0.0" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/caching-transform/node_modules/semver": { + "version": "6.3.0", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", + "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", + "dev": true, + "bin": { + "semver": "bin/semver.js" + } + }, "node_modules/camel-case": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/camel-case/-/camel-case-3.0.0.tgz", - "integrity": "sha1-yjw2iKTpzzpM2nd9xNy8cTJJz3M=", + "integrity": "sha512-+MbKztAYHXPr1jNTSKQF52VpcFjwY5RkR7fxksV8Doo4KAYc5Fl4UJRgthBbTmEx8C54DqahhbLJkDwjI3PI/w==", "dependencies": { "no-case": "^2.2.0", "upper-case": "^1.1.1" } }, + "node_modules/camelcase": { + "version": "5.3.1", + "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-5.3.1.tgz", + "integrity": "sha512-L28STB170nwWS63UjtlEOE3dldQApaJXZkOI1uMFfzf3rRuPegHaHesyee+YxQ+W6SvRDQV6UrdOdRiR153wJg==", + "dev": true, + "engines": { + "node": ">=6" + } + }, + "node_modules/caniuse-lite": { + "version": "1.0.30001359", + "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001359.tgz", + "integrity": "sha512-Xln/BAsPzEuiVLgJ2/45IaqD9jShtk3Y33anKb4+yLwQzws3+v6odKfpgES/cDEaZMLzSChpIGdbOYtH9MyuHw==", + "dev": true, + "funding": [ + { + "type": "opencollective", + "url": "https://opencollective.com/browserslist" + }, + { + "type": "tidelift", + "url": "https://tidelift.com/funding/github/npm/caniuse-lite" + } + ] + }, + "node_modules/caseless": { + "version": "0.12.0", + "resolved": "https://registry.npmjs.org/caseless/-/caseless-0.12.0.tgz", + "integrity": "sha512-4tYFyifaFfGacoiObjJegolkwSU4xQNGbVgUiNYVUxbQ2x2lUsFvY4hVgVzGiIe6WLOPqycWXA40l+PWsxthUw==", + "dev": true + }, "node_modules/chalk": { "version": "4.1.2", "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", @@ -202,18 +906,70 @@ "url": "https://github.com/chalk/chalk?sponsor=1" } }, - "node_modules/clean-css": { - "version": "1.1.7", - "resolved": "https://registry.npmjs.org/clean-css/-/clean-css-1.1.7.tgz", - "integrity": "sha512-eIhTPpuWxQpiKPvZdF92jx0/6l4awOtf4zCawFE8f4Gboka/eXBofEFkXf1KtbLj5wjjHWDg6gtHQB538qEt9w==", + "node_modules/chokidar": { + "version": "3.5.3", + "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-3.5.3.tgz", + "integrity": "sha512-Dr3sfKRP6oTcjf2JmUmFJfeVMvXBdegxB0iVQ5eb2V10uFJUCAS8OByZdVAyVb8xXNz3GjjTgj9kLWsZTqE6kw==", + "dev": true, + "funding": [ + { + "type": "individual", + "url": "https://paulmillr.com/funding/" + } + ], "dependencies": { - "commander": "2.0.x" - }, - "bin": { - "cleancss": "bin/cleancss" + "anymatch": "~3.1.2", + "braces": "~3.0.2", + "glob-parent": "~5.1.2", + "is-binary-path": "~2.1.0", + "is-glob": "~4.0.1", + "normalize-path": "~3.0.0", + "readdirp": "~3.6.0" }, "engines": { - "node": ">=0.8.0" + "node": ">= 8.10.0" + }, + "optionalDependencies": { + "fsevents": "~2.3.2" + } + }, + "node_modules/clean-css": { + "version": "4.2.4", + "resolved": "https://registry.npmjs.org/clean-css/-/clean-css-4.2.4.tgz", + "integrity": "sha512-EJUDT7nDVFDvaQgAo2G/PJvxmp1o/c6iXLbswsBbUFXi1Nr+AjA2cKmfbKDMjMvzEe75g3P6JkaDDAKk96A85A==", + "dependencies": { + "source-map": "~0.6.0" + }, + "engines": { + "node": ">= 4.0" + } + }, + "node_modules/clean-css/node_modules/source-map": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", + "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/clean-stack": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/clean-stack/-/clean-stack-2.2.0.tgz", + "integrity": "sha512-4diC9HaTE+KRAMWhDhrGOECgWZxoevMc5TlkObMqNSsVU62PYzXZ/SMTjzyGAFF1YusgxGcSWTEXBhp0CPwQ1A==", + "dev": true, + "engines": { + "node": ">=6" + } + }, + "node_modules/cliui": { + "version": "7.0.4", + "resolved": "https://registry.npmjs.org/cliui/-/cliui-7.0.4.tgz", + "integrity": "sha512-OcRE68cOsVMXp1Yvonl/fzkQOyjLSu/8bhPDfQt0e0/Eb283TKP20Fs2MqoPsr9SwA595rRCA+QMzYc9nBP+JQ==", + "dev": true, + "dependencies": { + "string-width": "^4.2.0", + "strip-ansi": "^6.0.0", + "wrap-ansi": "^7.0.0" } }, "node_modules/color-convert": { @@ -232,26 +988,59 @@ "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==" }, + "node_modules/color-support": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/color-support/-/color-support-1.1.3.tgz", + "integrity": "sha512-qiBjkpbMLO/HL68y+lh4q0/O1MZFj2RX6X/KmMa3+gJD3z+WwI1ZzDHysvqHGS3mP6mznPckpXmw1nI9cJjyRg==", + "dev": true, + "bin": { + "color-support": "bin.js" + } + }, "node_modules/colors": { "version": "1.1.2", "resolved": "https://registry.npmjs.org/colors/-/colors-1.1.2.tgz", - "integrity": "sha1-FopHAXVran9RoSzgyXv6KMCE7WM=", + "integrity": "sha512-ENwblkFQpqqia6b++zLD/KUWafYlVY/UNnAp7oz7LY7E924wmpye416wBOmvv/HMWzl8gL1kJlfvId/1Dg176w==", "engines": { "node": ">=0.1.90" } }, - "node_modules/commander": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/commander/-/commander-2.0.0.tgz", - "integrity": "sha1-0bhvkB+LZL2UG96tr5JFMDk76Sg=", + "node_modules/combined-stream": { + "version": "1.0.8", + "resolved": "https://registry.npmjs.org/combined-stream/-/combined-stream-1.0.8.tgz", + "integrity": "sha512-FQN4MRfuJeHf7cBbBMJFXhKSDq+2kAArBlmRBvcvFE5BB1HZKXtSFASDhdlz9zOYwxh8lDdnvmMOe/+5cdoEdg==", + "dev": true, + "dependencies": { + "delayed-stream": "~1.0.0" + }, "engines": { - "node": ">= 0.6.x" + "node": ">= 0.8" } }, + "node_modules/commander": { + "version": "2.20.3", + "resolved": "https://registry.npmjs.org/commander/-/commander-2.20.3.tgz", + "integrity": "sha512-GpVkmM8vF2vQUkj2LvZmD35JxeJOLCwJ9cUkugyk2nuhbv3+mJvpLYYt+0+USMxE+oj+ey/lJEnhZw75x/OMcQ==" + }, + "node_modules/commondir": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/commondir/-/commondir-1.0.1.tgz", + "integrity": "sha512-W9pAhw0ja1Edb5GVdIF1mjZw/ASI0AlShXM83UUGe2DVr5TdAPEA1OA8m/g8zWp9x6On7gqufY+FatDbC3MDQg==", + "dev": true + }, "node_modules/concat-map": { "version": "0.0.1", "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz", - "integrity": "sha1-2Klr13/Wjfd5OnMDajug1UBdR3s=" + "integrity": "sha512-/Srv4dswyQNBfohGpz9o6Yb3Gz3SrUDqBH5rTuhGR7ahtlbYKnVxw2bCFMRljaA7EXHaXZ8wsHdodFvbkhKmqg==" + }, + "node_modules/convert-source-map": { + "version": "1.8.0", + "resolved": "https://registry.npmjs.org/convert-source-map/-/convert-source-map-1.8.0.tgz", + "integrity": "sha512-+OQdjP49zViI/6i7nIJpA8rAl4sV/JdPfU9nZs3VqOwGIgizICvuN2ru6fMd+4llL0tar18UYJXfZ/TWtmhUjA==", + "dev": true, + "dependencies": { + "safe-buffer": "~5.1.1" + } }, "node_modules/copy-anything": { "version": "2.0.6", @@ -264,20 +1053,67 @@ "url": "https://github.com/sponsors/mesqueeb" } }, - "node_modules/datauri": { - "version": "0.2.1", - "resolved": "https://registry.npmjs.org/datauri/-/datauri-0.2.1.tgz", - "integrity": "sha1-9Oit27PlTj3BLRyIVDuLCxv2kvo=", - "deprecated": "Datauri 2.0 released. See more in https://github.com/data-uri/datauri/releases/tag/v2.0.0", + "node_modules/core-util-is": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.2.tgz", + "integrity": "sha512-3lqz5YjWTYnW6dlDa5TLaTCcShfar1e40rmcJVwCBJC6mWlFuj0eCHIElmG1g5kyuJ/GD+8Wn4FFCcz4gJPfaQ==", + "dev": true + }, + "node_modules/coveralls": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/coveralls/-/coveralls-3.1.1.tgz", + "integrity": "sha512-+dxnG2NHncSD1NrqbSM3dn/lE57O6Qf/koe9+I7c+wzkqRmEvcp0kgJdxKInzYzkICKkFMZsX3Vct3++tsF9ww==", + "dev": true, "dependencies": { - "mimer": "*", - "templayed": "*" + "js-yaml": "^3.13.1", + "lcov-parse": "^1.0.0", + "log-driver": "^1.2.7", + "minimist": "^1.2.5", + "request": "^2.88.2" }, "bin": { - "datauri": "bin/datauri" + "coveralls": "bin/coveralls.js" }, "engines": { - "node": ">= 0.8" + "node": ">=6" + } + }, + "node_modules/cross-spawn": { + "version": "7.0.3", + "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.3.tgz", + "integrity": "sha512-iRDPJKUPVEND7dHPO8rkbOnPpyDygcDFtWjpeWNCgy8WP2rXcxXL8TskReQl6OrB2G7+UJrags1q15Fudc7G6w==", + "dev": true, + "dependencies": { + "path-key": "^3.1.0", + "shebang-command": "^2.0.0", + "which": "^2.0.1" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/dashdash": { + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/dashdash/-/dashdash-1.14.1.tgz", + "integrity": "sha512-jRFi8UDGo6j+odZiEpjazZaWqEal3w/basFjQHQEwVtZJGDpxbH1MeYluwCS8Xq5wmLJooDlMgvVarmWfGM44g==", + "dev": true, + "dependencies": { + "assert-plus": "^1.0.0" + }, + "engines": { + "node": ">=0.10" + } + }, + "node_modules/datauri": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/datauri/-/datauri-4.1.0.tgz", + "integrity": "sha512-y17kh32+I82G+ED9MNWFkZiP/Cq/vO1hN9+tSZsT9C9qn3NrvcBnh7crSepg0AQPge1hXx2Ca44s1FRdv0gFWA==", + "dependencies": { + "image-size": "1.0.0", + "mimer": "^2.0.2" + }, + "engines": { + "node": ">= 10" } }, "node_modules/dateformat": { @@ -297,14 +1133,90 @@ "ms": "^2.1.1" } }, - "node_modules/detect-file": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/detect-file/-/detect-file-1.0.0.tgz", - "integrity": "sha1-8NZtA2cqglyxtzvbP+YjEMjlUrc=", + "node_modules/decamelize": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/decamelize/-/decamelize-1.2.0.tgz", + "integrity": "sha512-z2S+W9X73hAUUki+N+9Za2lBlun89zigOyGrsax+KUQ6wKW4ZoWpEYBkGhQjwAjjDCkWxhY0VKEhk8wzY7F5cA==", + "dev": true, "engines": { "node": ">=0.10.0" } }, + "node_modules/default-require-extensions": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/default-require-extensions/-/default-require-extensions-3.0.0.tgz", + "integrity": "sha512-ek6DpXq/SCpvjhpFsLFRVtIxJCRw6fUR42lYMVZuUMK7n8eMz4Uh5clckdBjEpLhn/gEBZo7hDJnJcwdKLKQjg==", + "dev": true, + "dependencies": { + "strip-bom": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/delayed-stream": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/delayed-stream/-/delayed-stream-1.0.0.tgz", + "integrity": "sha512-ZySD7Nf91aLB0RxL4KGrKHBXl7Eds1DAmEdcoVawXnLD7SDhpNgtuII2aAkg7a7QS41jxPSZ17p4VdGnMHk3MQ==", + "dev": true, + "engines": { + "node": ">=0.4.0" + } + }, + "node_modules/detect-file": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/detect-file/-/detect-file-1.0.0.tgz", + "integrity": "sha512-DtCOLG98P007x7wiiOmfI0fi3eIKyWiLTGJ2MDnVi/E04lWGbf+JzrRHMm0rgIIZJGtHpKpbVgLWHrv8xXpc3Q==", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/diff": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/diff/-/diff-4.0.2.tgz", + "integrity": "sha512-58lmxKSA4BNyLz+HHMUzlOEpg09FV+ev6ZMe3vJihgdxzgcwZ8VoEEPmALCZG9LmqfVoNMMKpttIYTVG6uDY7A==", + "dev": true, + "engines": { + "node": ">=0.3.1" + } + }, + "node_modules/ecc-jsbn": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/ecc-jsbn/-/ecc-jsbn-0.1.2.tgz", + "integrity": "sha512-eh9O+hwRHNbG4BLTjEl3nw044CkGm5X6LoaCf7LPp7UU8Qrt47JYNi6nPX8xjW97TKGKm1ouctg0QSpZe9qrnw==", + "dev": true, + "dependencies": { + "jsbn": "~0.1.0", + "safer-buffer": "^2.1.0" + } + }, + "node_modules/ejs": { + "version": "3.1.8", + "resolved": "https://registry.npmjs.org/ejs/-/ejs-3.1.8.tgz", + "integrity": "sha512-/sXZeMlhS0ArkfX2Aw780gJzXSMPnKjtspYZv+f3NiKLlubezAHDU5+9xz6gd3/NhG3txQCo6xlglmTS+oTGEQ==", + "dev": true, + "dependencies": { + "jake": "^10.8.5" + }, + "bin": { + "ejs": "bin/cli.js" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/electron-to-chromium": { + "version": "1.4.172", + "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.172.tgz", + "integrity": "sha512-yDoFfTJnqBAB6hSiPvzmsBJSrjOXJtHSJoqJdI/zSIh7DYupYnIOHt/bbPw/WE31BJjNTybDdNAs21gCMnTh0Q==", + "dev": true + }, + "node_modules/emoji-regex": { + "version": "8.0.0", + "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz", + "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==", + "dev": true + }, "node_modules/errno": { "version": "0.1.8", "resolved": "https://registry.npmjs.org/errno/-/errno-0.1.8.tgz", @@ -317,12 +1229,28 @@ "errno": "cli.js" } }, - "node_modules/escape-string-regexp": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", - "integrity": "sha1-G2HAViGQqN/2rjuyzwIAyhMLhtQ=", + "node_modules/es6-error": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/es6-error/-/es6-error-4.1.1.tgz", + "integrity": "sha512-Um/+FxMr9CISWh0bi5Zv0iOD+4cFh5qLeks1qhAopKVAJw3drgKbKySikp7wGhDL0HPeaja0P5ULZrxLkniUVg==", + "dev": true + }, + "node_modules/escalade": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/escalade/-/escalade-3.1.1.tgz", + "integrity": "sha512-k0er2gUkLf8O0zKJiAhmkTnJlTvINGv7ygDNPbeIsX/TJjGJZHuh9B2UxbsaEkmlEo9MfhrSzmhIlhRlI2GXnw==", + "dev": true, "engines": { - "node": ">=0.8.0" + "node": ">=6" + } + }, + "node_modules/escape-string-regexp": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-2.0.0.tgz", + "integrity": "sha512-UpzcLCXolUWcNu5HtVMHYdXJjArjsF9C0aNnquZYY4uW/Vu0miy5YoWvbV345HauVvcAUnpRuhMMcqTcGOY2+w==", + "dev": true, + "engines": { + "node": ">=8" } }, "node_modules/esprima": { @@ -340,12 +1268,18 @@ "node_modules/eventemitter2": { "version": "0.4.14", "resolved": "https://registry.npmjs.org/eventemitter2/-/eventemitter2-0.4.14.tgz", - "integrity": "sha1-j2G3XN4BKy6esoTUVFWDtWQ7Yas=" + "integrity": "sha512-K7J4xq5xAD5jHsGM5ReWXRTFa3JRGofHiMcVgQ8PRwgWxzjHpMWCIzsmyf60+mh8KLsqYPcjUMa0AC4hd6lPyQ==" + }, + "node_modules/events-to-array": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/events-to-array/-/events-to-array-1.1.2.tgz", + "integrity": "sha512-inRWzRY7nG+aXZxBzEqYKB3HPgwflZRopAjDCHv0whhRx+MTUr1ei0ICZUypdyE0HRm4L2d5VEcIqLD6yl+BFA==", + "dev": true }, "node_modules/exit": { "version": "0.1.2", "resolved": "https://registry.npmjs.org/exit/-/exit-0.1.2.tgz", - "integrity": "sha1-BjJjj42HfMghB9MKD/8aF8uhzQw=", + "integrity": "sha512-Zk/eNKV2zbjpKzrsQ+n1G6poVbErQxJ0LBOJXaKZ1EViLzH+hrLu9cdXI4zw9dBQJslwBEpbQ2P1oS7nDxs6jQ==", "engines": { "node": ">= 0.8.0" } @@ -353,7 +1287,7 @@ "node_modules/expand-tilde": { "version": "2.0.2", "resolved": "https://registry.npmjs.org/expand-tilde/-/expand-tilde-2.0.2.tgz", - "integrity": "sha1-l+gBqgUt8CRU3kawK/YhZCzchQI=", + "integrity": "sha512-A5EmesHW6rfnZ9ysHQjPdJRni0SRar0tjtG5MNtm9n5TUvsYU8oozprtRD4AqHxcZWWlVuAmQo2nWKfN9oyjTw==", "dependencies": { "homedir-polyfill": "^1.0.1" }, @@ -366,10 +1300,61 @@ "resolved": "https://registry.npmjs.org/extend/-/extend-3.0.2.tgz", "integrity": "sha512-fjquC59cD7CyW6urNXK0FBufkZcoiGG80wTuPujX590cB5Ttln20E2UB4S/WARVqhXffZl2LNgS+gQdPIIim/g==" }, + "node_modules/extsprintf": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/extsprintf/-/extsprintf-1.3.0.tgz", + "integrity": "sha512-11Ndz7Nv+mvAC1j0ktTa7fAb0vLyGGX+rMHNBYQviQDGU0Hw7lhctJANqbPhu9nV9/izT/IntTgZ7Im/9LJs9g==", + "dev": true, + "engines": [ + "node >=0.6.0" + ] + }, + "node_modules/fast-deep-equal": { + "version": "3.1.3", + "resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-3.1.3.tgz", + "integrity": "sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q==", + "dev": true + }, + "node_modules/fast-json-stable-stringify": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/fast-json-stable-stringify/-/fast-json-stable-stringify-2.1.0.tgz", + "integrity": "sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw==", + "dev": true + }, "node_modules/file-sync-cmp": { "version": "0.1.1", "resolved": "https://registry.npmjs.org/file-sync-cmp/-/file-sync-cmp-0.1.1.tgz", - "integrity": "sha1-peeo/7+kk7Q7kju9TKiaU7Y7YSs=" + "integrity": "sha512-0k45oWBokCqh2MOexeYKpyqmGKG+8mQ2Wd8iawx+uWd/weWJQAZ6SoPybagdCI4xFisag8iAR77WPm4h3pTfxA==" + }, + "node_modules/filelist": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/filelist/-/filelist-1.0.4.tgz", + "integrity": "sha512-w1cEuf3S+DrLCQL7ET6kz+gmlJdbq9J7yXCSjK/OZCPA+qEN1WyF4ZAf0YYJa4/shHJra2t/d/r8SV4Ji+x+8Q==", + "dev": true, + "dependencies": { + "minimatch": "^5.0.1" + } + }, + "node_modules/filelist/node_modules/brace-expansion": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.1.tgz", + "integrity": "sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==", + "dev": true, + "dependencies": { + "balanced-match": "^1.0.0" + } + }, + "node_modules/filelist/node_modules/minimatch": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-5.1.0.tgz", + "integrity": "sha512-9TPBGGak4nHfGZsPBohm9AWg6NoT7QTCehS3BIJABslyZbzxfV78QM2Y6+i741OPZIafFAaiiEMh5OyIrJPgtg==", + "dev": true, + "dependencies": { + "brace-expansion": "^2.0.1" + }, + "engines": { + "node": ">=10" + } }, "node_modules/fill-range": { "version": "7.0.1", @@ -382,10 +1367,70 @@ "node": ">=8" } }, + "node_modules/find-cache-dir": { + "version": "3.3.2", + "resolved": "https://registry.npmjs.org/find-cache-dir/-/find-cache-dir-3.3.2.tgz", + "integrity": "sha512-wXZV5emFEjrridIgED11OoUKLxiYjAcqot/NJdAkOhlJ+vGzwhOAfcG5OX1jP+S0PcjEn8bdMJv+g2jwQ3Onig==", + "dev": true, + "dependencies": { + "commondir": "^1.0.1", + "make-dir": "^3.0.2", + "pkg-dir": "^4.1.0" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/avajs/find-cache-dir?sponsor=1" + } + }, + "node_modules/find-cache-dir/node_modules/make-dir": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-3.1.0.tgz", + "integrity": "sha512-g3FeP20LNwhALb/6Cz6Dd4F2ngze0jz7tbzrD2wAV+o9FeNHe4rL+yK2md0J/fiSf1sa1ADhXqi5+oVwOM/eGw==", + "dev": true, + "dependencies": { + "semver": "^6.0.0" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/find-cache-dir/node_modules/semver": { + "version": "6.3.0", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", + "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", + "dev": true, + "bin": { + "semver": "bin/semver.js" + } + }, + "node_modules/find-up": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/find-up/-/find-up-4.1.0.tgz", + "integrity": "sha512-PpOwAdQ/YlXQ2vj8a3h8IipDuYRi3wceVQQGYWxNINccq40Anw7BlsEXCMbt1Zt+OLA6Fq9suIpIWD0OsnISlw==", + "dev": true, + "dependencies": { + "locate-path": "^5.0.0", + "path-exists": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/findit": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/findit/-/findit-2.0.0.tgz", + "integrity": "sha512-ENZS237/Hr8bjczn5eKuBohLgaD0JyUd0arxretR1f9RO46vZHA1b2y0VorgGV3WaOT3c+78P8h7v4JGJ1i/rg==", + "dev": true + }, "node_modules/findup-sync": { "version": "0.3.0", "resolved": "https://registry.npmjs.org/findup-sync/-/findup-sync-0.3.0.tgz", - "integrity": "sha1-N5MKpdgWt3fANEXhlmzGeQpMCxY=", + "integrity": "sha512-z8Nrwhi6wzxNMIbxlrTzuUW6KWuKkogZ/7OdDVq+0+kxn77KUH1nipx8iU6suqkHqc4y6n7a9A8IpmxY/pTjWg==", "dependencies": { "glob": "~5.0.0" }, @@ -396,7 +1441,7 @@ "node_modules/findup-sync/node_modules/glob": { "version": "5.0.15", "resolved": "https://registry.npmjs.org/glob/-/glob-5.0.15.tgz", - "integrity": "sha1-G8k2ueAvSmA/zCIuz3Yz0wuLk7E=", + "integrity": "sha512-c9IPMazfRITpmAAKi22dK1VKxGDX9ehhqfABDriL/lzO92xcUKEJPQHrVA/2YHSNFB4iFlykVmWvwo48nr3OxA==", "dependencies": { "inflight": "^1.0.4", "inherits": "2", @@ -434,7 +1479,7 @@ "node_modules/for-in": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/for-in/-/for-in-1.0.2.tgz", - "integrity": "sha1-gQaNKVqBQuwKxybG4iAMMPttXoA=", + "integrity": "sha512-7EwmXrOjyL+ChxMhmG5lnW9MPt1aIeZEwKhQzoBUdTV0N3zuwWDZYVJatDvZ2OyzPUvdIAZDsCetk3coyMfcnQ==", "engines": { "node": ">=0.10.0" } @@ -442,7 +1487,7 @@ "node_modules/for-own": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/for-own/-/for-own-1.0.0.tgz", - "integrity": "sha1-xjMy9BXO3EsE2/5wz4NklMU8tEs=", + "integrity": "sha512-0OABksIGrxKK8K4kynWkQ7y1zounQxP+CWnyclVwj81KW3vlLlGUx57DKGcP/LH216GzqnstnPocF16Nxs0Ycg==", "dependencies": { "for-in": "^1.0.1" }, @@ -450,16 +1495,125 @@ "node": ">=0.10.0" } }, + "node_modules/foreground-child": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/foreground-child/-/foreground-child-2.0.0.tgz", + "integrity": "sha512-dCIq9FpEcyQyXKCkyzmlPTFNgrCzPudOe+mhvJU5zAtlBnGVy2yKxtfsxK2tQBThwq225jcvBjpw1Gr40uzZCA==", + "dev": true, + "dependencies": { + "cross-spawn": "^7.0.0", + "signal-exit": "^3.0.2" + }, + "engines": { + "node": ">=8.0.0" + } + }, + "node_modules/forever-agent": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/forever-agent/-/forever-agent-0.6.1.tgz", + "integrity": "sha512-j0KLYPhm6zeac4lz3oJ3o65qvgQCcPubiyotZrXqEaG4hNagNYO8qdlUrX5vwqv9ohqeT/Z3j6+yW067yWWdUw==", + "dev": true, + "engines": { + "node": "*" + } + }, + "node_modules/form-data": { + "version": "2.3.3", + "resolved": "https://registry.npmjs.org/form-data/-/form-data-2.3.3.tgz", + "integrity": "sha512-1lLKB2Mu3aGP1Q/2eCOx0fNbRMe7XdwktwOruhfqqd0rIJWwN4Dh+E3hrPSlDCXnSR7UtZ1N38rVXm+6+MEhJQ==", + "dev": true, + "dependencies": { + "asynckit": "^0.4.0", + "combined-stream": "^1.0.6", + "mime-types": "^2.1.12" + }, + "engines": { + "node": ">= 0.12" + } + }, + "node_modules/fromentries": { + "version": "1.3.2", + "resolved": "https://registry.npmjs.org/fromentries/-/fromentries-1.3.2.tgz", + "integrity": "sha512-cHEpEQHUg0f8XdtZCc2ZAhrHzKzT0MrFUTcvx+hfxYu7rGMDc5SKoXFh+n4YigxsHXRzc6OrCshdR1bWH6HHyg==", + "dev": true, + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ] + }, + "node_modules/fs-exists-cached": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/fs-exists-cached/-/fs-exists-cached-1.0.0.tgz", + "integrity": "sha512-kSxoARUDn4F2RPXX48UXnaFKwVU7Ivd/6qpzZL29MCDmr9sTvybv4gFCp+qaI4fM9m0z9fgz/yJvi56GAz+BZg==", + "dev": true + }, "node_modules/fs.realpath": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz", - "integrity": "sha1-FQStJSMVjKpA20onh8sBQRmU6k8=" + "integrity": "sha512-OO0pH2lK6a0hZnAdau5ItzHPI6pUlvI7jMVnxUQRtw4owF2wk8lOSabtGDCTP4Ggrg2MbGnWO9X8K1t4+fGMDw==" + }, + "node_modules/fsevents": { + "version": "2.3.2", + "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.3.2.tgz", + "integrity": "sha512-xiqMQR4xAeHTuB9uWm+fFRcIOgKBMiOBP+eXiyT7jsgVCq1bkVygt00oASowB7EdtpOHaaPgKt812P9ab+DDKA==", + "dev": true, + "hasInstallScript": true, + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": "^8.16.0 || ^10.6.0 || >=11.0.0" + } }, "node_modules/function-bind": { "version": "1.1.1", "resolved": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.1.tgz", "integrity": "sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A==" }, + "node_modules/function-loop": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/function-loop/-/function-loop-2.0.1.tgz", + "integrity": "sha512-ktIR+O6i/4h+j/ZhZJNdzeI4i9lEPeEK6UPR2EVyTVBqOwcU3Za9xYKLH64ZR9HmcROyRrOkizNyjjtWJzDDkQ==", + "dev": true + }, + "node_modules/gensync": { + "version": "1.0.0-beta.2", + "resolved": "https://registry.npmjs.org/gensync/-/gensync-1.0.0-beta.2.tgz", + "integrity": "sha512-3hN7NaskYvMDLQY55gnW3NQ+mesEAepTqlg+VEbj7zzqEMBVNhzcGYYeqFo/TlYz6eQiFcp1HcsCZO+nGgS8zg==", + "dev": true, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/get-caller-file": { + "version": "2.0.5", + "resolved": "https://registry.npmjs.org/get-caller-file/-/get-caller-file-2.0.5.tgz", + "integrity": "sha512-DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg==", + "dev": true, + "engines": { + "node": "6.* || 8.* || >= 10.*" + } + }, + "node_modules/get-package-type": { + "version": "0.1.0", + "resolved": "https://registry.npmjs.org/get-package-type/-/get-package-type-0.1.0.tgz", + "integrity": "sha512-pjzuKtY64GYfWizNAJ0fr9VqttZkNiK2iS430LtIHzjBEr6bX8Am2zm4sW4Ro5wjWW5cAlRL1qAMTcXbjNAO2Q==", + "dev": true, + "engines": { + "node": ">=8.0.0" + } + }, "node_modules/getobject": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/getobject/-/getobject-1.0.2.tgz", @@ -468,6 +1622,15 @@ "node": ">=10" } }, + "node_modules/getpass": { + "version": "0.1.7", + "resolved": "https://registry.npmjs.org/getpass/-/getpass-0.1.7.tgz", + "integrity": "sha512-0fzj9JxOLfJ+XGLhR8ze3unN0KZCgZwiSSDz168VERjK8Wl8kVSdcu2kspd4s4wtAa1y/qrVRiAA0WclVsu0ng==", + "dev": true, + "dependencies": { + "assert-plus": "^1.0.0" + } + }, "node_modules/glob": { "version": "7.1.7", "resolved": "https://registry.npmjs.org/glob/-/glob-7.1.7.tgz", @@ -487,6 +1650,18 @@ "url": "https://github.com/sponsors/isaacs" } }, + "node_modules/glob-parent": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.2.tgz", + "integrity": "sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==", + "dev": true, + "dependencies": { + "is-glob": "^4.0.1" + }, + "engines": { + "node": ">= 6" + } + }, "node_modules/global-modules": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/global-modules/-/global-modules-1.0.0.tgz", @@ -503,7 +1678,7 @@ "node_modules/global-prefix": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/global-prefix/-/global-prefix-1.0.2.tgz", - "integrity": "sha1-2/dDxsFJklk8ZVVoy2btMsASLr4=", + "integrity": "sha512-5lsx1NUDHtSjfg0eHlmYvZKv8/nVqX4ckFbM+FrGcQ+04KWcWFo9P5MxPZYSzUvyzmdTbI7Eix8Q4IbELDqzKg==", "dependencies": { "expand-tilde": "^2.0.2", "homedir-polyfill": "^1.0.1", @@ -526,11 +1701,20 @@ "which": "bin/which" } }, + "node_modules/globals": { + "version": "11.12.0", + "resolved": "https://registry.npmjs.org/globals/-/globals-11.12.0.tgz", + "integrity": "sha512-WOBp/EEGUiIsJSp7wcv/y6MO+lV9UoncWqxuFfm8eBwzWNgyfBd6Gz+IeKQ9jCmyhoH99g15M3T+QaVHFjizVA==", + "dev": true, + "engines": { + "node": ">=4" + } + }, "node_modules/graceful-fs": { "version": "4.2.10", "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.10.tgz", "integrity": "sha512-9ByhssR2fPVsNZj478qUUbKfmL0+t5BDVyjShtyZZLiK7ZDAArFFfopyOTj0M05wE2tJPisA4iTnnXl2YoPvOA==", - "optional": true + "devOptional": true }, "node_modules/grunt": { "version": "1.5.3", @@ -634,7 +1818,7 @@ "node_modules/grunt-contrib-copy": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/grunt-contrib-copy/-/grunt-contrib-copy-1.0.0.tgz", - "integrity": "sha1-cGDGWB6QS4qw0A8HbgqPbj58NXM=", + "integrity": "sha512-gFRFUB0ZbLcjKb67Magz1yOHGBkyU6uL29hiEW1tdQ9gQt72NuMKIy/kS6dsCbV0cZ0maNCb0s6y+uT1FKU7jA==", "dependencies": { "chalk": "^1.1.1", "file-sync-cmp": "^0.1.0" @@ -643,10 +1827,18 @@ "node": ">=0.10.0" } }, + "node_modules/grunt-contrib-copy/node_modules/ansi-regex": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-2.1.1.tgz", + "integrity": "sha512-TIGnTpdo+E3+pCyAluZvtED5p5wCqLdezCyhPZzKPcxvFplEt4i+W7OONCKgeZFT3+y5NZZfOOS/Bdcanm1MYA==", + "engines": { + "node": ">=0.10.0" + } + }, "node_modules/grunt-contrib-copy/node_modules/ansi-styles": { "version": "2.2.1", "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-2.2.1.tgz", - "integrity": "sha1-tDLdM1i2NM914eRmQ2gkBTPB3b4=", + "integrity": "sha512-kmCevFghRiWM7HB5zTPULl4r9bVFSWjz62MhqizDGUrq2NWuNMQyuv4tHHoKJHs69M/MF64lEcHdYIocrdWQYA==", "engines": { "node": ">=0.10.0" } @@ -654,7 +1846,7 @@ "node_modules/grunt-contrib-copy/node_modules/chalk": { "version": "1.1.3", "resolved": "https://registry.npmjs.org/chalk/-/chalk-1.1.3.tgz", - "integrity": "sha1-qBFcVeSnAv5NFQq9OHKCKn4J/Jg=", + "integrity": "sha512-U3lRVLMSlsCfjqYPbLyVv11M9CPW4I728d6TCKMAOJueEeB9/8o+eSsMnxPJD+Q+K909sdESg7C+tIkoH6on1A==", "dependencies": { "ansi-styles": "^2.2.1", "escape-string-regexp": "^1.0.2", @@ -666,10 +1858,29 @@ "node": ">=0.10.0" } }, + "node_modules/grunt-contrib-copy/node_modules/escape-string-regexp": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", + "integrity": "sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg==", + "engines": { + "node": ">=0.8.0" + } + }, + "node_modules/grunt-contrib-copy/node_modules/strip-ansi": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-3.0.1.tgz", + "integrity": "sha512-VhumSSbBqDTP8p2ZLKj40UjBCV4+v8bUSEpUb4KjRgWk9pbqGF4REFj6KEagidb2f/M6AzC0EmFyDNGaw9OCzg==", + "dependencies": { + "ansi-regex": "^2.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, "node_modules/grunt-contrib-copy/node_modules/supports-color": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-2.0.0.tgz", - "integrity": "sha1-U10EXOa2Nj+kARcIRimZXp3zJMc=", + "integrity": "sha512-KKNVtd6pCYgPIKU4cp2733HWYCpplQhddZLBUryaAHou723x+FRzQ5Df824Fj+IyyuiQTRoub4SnIFfIcrp70g==", "engines": { "node": ">=0.8.0" } @@ -722,12 +1933,20 @@ "node_modules/grunt-contrib-htmlmin/node_modules/color-name": { "version": "1.1.3", "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz", - "integrity": "sha1-p9BVi9icQveV3UIyj3QIMcpTvCU=" + "integrity": "sha512-72fSenhMw2HZMTVHeCA9KCmpEIbzWiQsjN+BHcBbS9vr1mtt+vJjPdksIBNUmKAW8TFUDPJK5SUU3QhE9NEXDw==" + }, + "node_modules/grunt-contrib-htmlmin/node_modules/escape-string-regexp": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", + "integrity": "sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg==", + "engines": { + "node": ">=0.8.0" + } }, "node_modules/grunt-contrib-htmlmin/node_modules/has-flag": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", - "integrity": "sha1-tdRU3CGZriJWmfNGfloH87lVuv0=", + "integrity": "sha512-sKJf1+ceQBr4SMkvQnBDNDtf4TXpVhVGateu0t918bl30FnbE2m4vNLX+VWe/dpjlb+HugGYzW7uQXH98HPEYw==", "engines": { "node": ">=4" } @@ -757,19 +1976,22 @@ "node": ">=10" } }, - "node_modules/grunt-inline": { - "version": "0.3.7", - "resolved": "https://registry.npmjs.org/grunt-inline/-/grunt-inline-0.3.7.tgz", - "integrity": "sha512-SXUc1YsMxYkKbIOpI2kLHKNyXMEF+3xMEGhpFZRgKXbcAojM4d63RZyKcizMIkHonAr1jJCh/w8g9sDcRm6JtQ==", + "node_modules/grunt-contrib-nodeunit": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/grunt-contrib-nodeunit/-/grunt-contrib-nodeunit-4.0.0.tgz", + "integrity": "sha512-pLLDrTKfitBn2b1U9ecX+nkECcQ12tsiW58Y0SaZcsQgjljthPs78N5D24Y3b34dD8QKBAEW1J0VgO7cW0QcVQ==", + "dev": true, "dependencies": { - "clean-css": "1.1.7", - "datauri": "~0.2.0", - "uglify-js": "2.4.1" + "nodeunit-x": "^0.15.0" }, "engines": { - "node": ">=0.8.0" + "node": ">=0.12.0" } }, + "node_modules/grunt-inline": { + "resolved": "plugins/grunt-inline", + "link": true + }, "node_modules/grunt-known-options": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/grunt-known-options/-/grunt-known-options-2.0.0.tgz", @@ -839,11 +2061,34 @@ "node_modules/grunt-text-replace": { "version": "0.4.0", "resolved": "https://registry.npmjs.org/grunt-text-replace/-/grunt-text-replace-0.4.0.tgz", - "integrity": "sha1-252c5Z4v5J2id+nbwZXD4Rz7FsI=", + "integrity": "sha512-A4dFGpOaD/TQpeOlDK/zP962X1qG7KcOqPiSXOWOIeAKMzzpoDJYZ8Sz56iazI5+kTqeTa+IaEEl5c4sk+QN+Q==", "engines": { "node": ">= 0.8.0" } }, + "node_modules/har-schema": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/har-schema/-/har-schema-2.0.0.tgz", + "integrity": "sha512-Oqluz6zhGX8cyRaTQlFMPw80bSJVG2x/cFb8ZPhUILGgHka9SsokCCOQgpveePerqidZOrT14ipqfJb7ILcW5Q==", + "dev": true, + "engines": { + "node": ">=4" + } + }, + "node_modules/har-validator": { + "version": "5.1.5", + "resolved": "https://registry.npmjs.org/har-validator/-/har-validator-5.1.5.tgz", + "integrity": "sha512-nmT2T0lljbxdQZfspsno9hgrG3Uir6Ks5afism62poxqBM6sDnMEuPmzTq8XN0OEwqKLLdh1jQI3qyE66Nzb3w==", + "deprecated": "this library is no longer supported", + "dev": true, + "dependencies": { + "ajv": "^6.12.3", + "har-schema": "^2.0.0" + }, + "engines": { + "node": ">=6" + } + }, "node_modules/has": { "version": "1.0.3", "resolved": "https://registry.npmjs.org/has/-/has-1.0.3.tgz", @@ -858,7 +2103,7 @@ "node_modules/has-ansi": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/has-ansi/-/has-ansi-2.0.0.tgz", - "integrity": "sha1-NPUEnOHs3ysGSa8+8k5F7TVBbZE=", + "integrity": "sha512-C8vBJ8DwUCx19vhm7urhTuUsr4/IyP6l4VzNQDv+ryHQObW3TTTp9yB68WpYgRe2bbaGuZ/se74IqFeVnMnLZg==", "dependencies": { "ansi-regex": "^2.0.0" }, @@ -866,6 +2111,14 @@ "node": ">=0.10.0" } }, + "node_modules/has-ansi/node_modules/ansi-regex": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-2.1.1.tgz", + "integrity": "sha512-TIGnTpdo+E3+pCyAluZvtED5p5wCqLdezCyhPZzKPcxvFplEt4i+W7OONCKgeZFT3+y5NZZfOOS/Bdcanm1MYA==", + "engines": { + "node": ">=0.10.0" + } + }, "node_modules/has-flag": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", @@ -874,6 +2127,22 @@ "node": ">=8" } }, + "node_modules/hasha": { + "version": "5.2.2", + "resolved": "https://registry.npmjs.org/hasha/-/hasha-5.2.2.tgz", + "integrity": "sha512-Hrp5vIK/xr5SkeN2onO32H0MgNZ0f17HRNH39WfL0SYUNOTZ5Lz1TJ8Pajo/87dYGEFlLMm7mIc/k/s6Bvz9HQ==", + "dev": true, + "dependencies": { + "is-stream": "^2.0.0", + "type-fest": "^0.8.0" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, "node_modules/he": { "version": "1.2.0", "resolved": "https://registry.npmjs.org/he/-/he-1.2.0.tgz", @@ -896,11 +2165,17 @@ "node_modules/hooker": { "version": "0.2.3", "resolved": "https://registry.npmjs.org/hooker/-/hooker-0.2.3.tgz", - "integrity": "sha1-uDT3I8xKJCqmWWNFnfbZhMXT2Vk=", + "integrity": "sha512-t+UerCsQviSymAInD01Pw+Dn/usmz1sRO+3Zk1+lx8eg+WKpD2ulcwWqHHL0+aseRBr+3+vIhiG1K1JTwaIcTA==", "engines": { "node": "*" } }, + "node_modules/html-escaper": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/html-escaper/-/html-escaper-2.0.2.tgz", + "integrity": "sha512-H2iMtd0I4Mt5eYiapRdIDjp+XzelXQ0tFE4JS7YFwFevXXMmOp9myNrUvCg0D6ws8iqkRPBfKHgbwig1SmlLfg==", + "dev": true + }, "node_modules/html-minifier": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/html-minifier/-/html-minifier-4.0.0.tgz", @@ -921,39 +2196,19 @@ "node": ">=6" } }, - "node_modules/html-minifier/node_modules/clean-css": { - "version": "4.2.4", - "resolved": "https://registry.npmjs.org/clean-css/-/clean-css-4.2.4.tgz", - "integrity": "sha512-EJUDT7nDVFDvaQgAo2G/PJvxmp1o/c6iXLbswsBbUFXi1Nr+AjA2cKmfbKDMjMvzEe75g3P6JkaDDAKk96A85A==", + "node_modules/http-signature": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/http-signature/-/http-signature-1.2.0.tgz", + "integrity": "sha512-CAbnr6Rz4CYQkLYUtSNXxQPUH2gK8f3iWexVlsnMeD+GjlsQ0Xsy1cOX+mN3dtxYomRy21CiOzU8Uhw6OwncEQ==", + "dev": true, "dependencies": { - "source-map": "~0.6.0" + "assert-plus": "^1.0.0", + "jsprim": "^1.2.2", + "sshpk": "^1.7.0" }, "engines": { - "node": ">= 4.0" - } - }, - "node_modules/html-minifier/node_modules/commander": { - "version": "2.20.3", - "resolved": "https://registry.npmjs.org/commander/-/commander-2.20.3.tgz", - "integrity": "sha512-GpVkmM8vF2vQUkj2LvZmD35JxeJOLCwJ9cUkugyk2nuhbv3+mJvpLYYt+0+USMxE+oj+ey/lJEnhZw75x/OMcQ==" - }, - "node_modules/html-minifier/node_modules/source-map": { - "version": "0.6.1", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", - "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/html-minifier/node_modules/uglify-js": { - "version": "3.15.3", - "resolved": "https://registry.npmjs.org/uglify-js/-/uglify-js-3.15.3.tgz", - "integrity": "sha512-6iCVm2omGJbsu3JWac+p6kUiOpg3wFO2f8lIXjfEb8RrmLjzog1wTPMmwKB7swfzzqxj9YM+sGUM++u1qN4qJg==", - "bin": { - "uglifyjs": "bin/uglifyjs" - }, - "engines": { - "node": ">=0.8.0" + "node": ">=0.8", + "npm": ">=1.3.7" } }, "node_modules/iconv-lite": { @@ -968,21 +2223,41 @@ } }, "node_modules/image-size": { - "version": "0.5.5", - "resolved": "https://registry.npmjs.org/image-size/-/image-size-0.5.5.tgz", - "integrity": "sha1-Cd/Uq50g4p6xw+gLiZA3jfnjy5w=", - "optional": true, + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/image-size/-/image-size-1.0.0.tgz", + "integrity": "sha512-JLJ6OwBfO1KcA+TvJT+v8gbE6iWbj24LyDNFgFEN0lzegn6cC6a/p3NIDaepMsJjQjlUWqIC7wJv8lBFxPNjcw==", + "dependencies": { + "queue": "6.0.2" + }, "bin": { "image-size": "bin/image-size.js" }, "engines": { - "node": ">=0.10.0" + "node": ">=12.0.0" + } + }, + "node_modules/imurmurhash": { + "version": "0.1.4", + "resolved": "https://registry.npmjs.org/imurmurhash/-/imurmurhash-0.1.4.tgz", + "integrity": "sha512-JmXMZ6wuvDmLiHEml9ykzqO6lwFbof0GG4IkcGaENdCRDDmMVnny7s5HsIgHCbaq0w2MyPhDqkhTUgS2LU2PHA==", + "dev": true, + "engines": { + "node": ">=0.8.19" + } + }, + "node_modules/indent-string": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/indent-string/-/indent-string-4.0.0.tgz", + "integrity": "sha512-EdDDZu4A2OyIK7Lr/2zG+w5jmbuk1DVBnEwREQvBzspBJkCEbRa8GxU1lghYcaGJCnRWibjDXlq779X1/y5xwg==", + "dev": true, + "engines": { + "node": ">=8" } }, "node_modules/inflight": { "version": "1.0.6", "resolved": "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz", - "integrity": "sha1-Sb1jMdfQLQwJvJEKEHW6gWW1bfk=", + "integrity": "sha512-k92I/b08q4wvFscXCLvqfsHCrjrF7yiXsQuIVvVE7N82W3+aqpzuUdBbfhWcy/FZR3/4IgflMgKLOsvPDrGCJA==", "dependencies": { "once": "^1.3.0", "wrappy": "1" @@ -1001,7 +2276,7 @@ "node_modules/interpret": { "version": "1.1.0", "resolved": "https://registry.npmjs.org/interpret/-/interpret-1.1.0.tgz", - "integrity": "sha1-ftGxQQxqDg94z5XTuEQMY/eLhhQ=" + "integrity": "sha512-CLM8SNMDu7C5psFCn6Wg/tgpj/bKAg7hc2gWqcuR9OD5Ft9PhBpIu8PLicPeis+xDd6YX2ncI8MCA64I9tftIA==" }, "node_modules/is-absolute": { "version": "1.0.0", @@ -1015,10 +2290,22 @@ "node": ">=0.10.0" } }, + "node_modules/is-binary-path": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/is-binary-path/-/is-binary-path-2.1.0.tgz", + "integrity": "sha512-ZMERYes6pDydyuGidse7OsHxtbI7WVeUEozgR/g7rd0xUimYNlvZRE/K2MgZTjWy725IfelLeVcEM97mmtRGXw==", + "dev": true, + "dependencies": { + "binary-extensions": "^2.0.0" + }, + "engines": { + "node": ">=8" + } + }, "node_modules/is-core-module": { - "version": "2.8.1", - "resolved": "https://registry.npmjs.org/is-core-module/-/is-core-module-2.8.1.tgz", - "integrity": "sha512-SdNCUs284hr40hFTFP6l0IfZ/RSrMXF3qgoRHd3/79unUTvrFO/JoXwkGm+5J/Oe3E/b5GsnG330uUNgRpu1PA==", + "version": "2.9.0", + "resolved": "https://registry.npmjs.org/is-core-module/-/is-core-module-2.9.0.tgz", + "integrity": "sha512-+5FPy5PnwmO3lvfMb0AsoPaBG+5KHUI0wYFXOtYPnVVVspTFUuMZNfNaNVRt3FZadstu2c8x23vykRW/NBoU6A==", "dependencies": { "has": "^1.0.3" }, @@ -1029,11 +2316,20 @@ "node_modules/is-extglob": { "version": "2.1.1", "resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-2.1.1.tgz", - "integrity": "sha1-qIwCU1eR8C7TfHahueqXc8gz+MI=", + "integrity": "sha512-SbKbANkN603Vi4jEZv49LeVJMn4yGwsbzZworEoyEiutsN3nJYdbO36zfhGJ6QEDpOZIFkDtnq5JRxmvl3jsoQ==", "engines": { "node": ">=0.10.0" } }, + "node_modules/is-fullwidth-code-point": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", + "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==", + "dev": true, + "engines": { + "node": ">=8" + } + }, "node_modules/is-glob": { "version": "4.0.3", "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-4.0.3.tgz", @@ -1075,6 +2371,24 @@ "node": ">=0.10.0" } }, + "node_modules/is-stream": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/is-stream/-/is-stream-2.0.1.tgz", + "integrity": "sha512-hFoiJiTl63nn+kstHGBtewWSKnQLpyb155KHheA1l39uvtO9nWIop1p3udqPcUd/xbF1VLMO4n7OI6p7RbngDg==", + "dev": true, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/is-typedarray": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-typedarray/-/is-typedarray-1.0.0.tgz", + "integrity": "sha512-cyA56iCMHAh5CdzjJIa4aohJyeO1YbwLi3Jc35MmRU6poroFjIGZzUzupGiRPOjgHg9TLu43xbpwXk523fMxKA==", + "dev": true + }, "node_modules/is-unc-path": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/is-unc-path/-/is-unc-path-1.0.0.tgz", @@ -1102,16 +2416,217 @@ "node_modules/isexe": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/isexe/-/isexe-2.0.0.tgz", - "integrity": "sha1-6PvzdNxVb/iUehDcsFctYz8s+hA=" + "integrity": "sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw==" }, "node_modules/isobject": { "version": "3.0.1", "resolved": "https://registry.npmjs.org/isobject/-/isobject-3.0.1.tgz", - "integrity": "sha1-TkMekrEalzFjaqH5yNHMvP2reN8=", + "integrity": "sha512-WhB9zCku7EGTj/HQQRz5aUQEUeoQZH2bWcltRErOpymJ4boYE6wL9Tbr23krRPSZ+C5zqNSrSw+Cc7sZZ4b7vg==", "engines": { "node": ">=0.10.0" } }, + "node_modules/isstream": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/isstream/-/isstream-0.1.2.tgz", + "integrity": "sha512-Yljz7ffyPbrLpLngrMtZ7NduUgVvi6wG9RJ9IUcyCd59YQ911PBJphODUcbOVbqYfxe1wuYf/LJ8PauMRwsM/g==", + "dev": true + }, + "node_modules/istanbul-lib-coverage": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/istanbul-lib-coverage/-/istanbul-lib-coverage-3.2.0.tgz", + "integrity": "sha512-eOeJ5BHCmHYvQK7xt9GkdHuzuCGS1Y6g9Gvnx3Ym33fz/HpLRYxiS0wHNr+m/MBC8B647Xt608vCDEvhl9c6Mw==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/istanbul-lib-hook": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/istanbul-lib-hook/-/istanbul-lib-hook-3.0.0.tgz", + "integrity": "sha512-Pt/uge1Q9s+5VAZ+pCo16TYMWPBIl+oaNIjgLQxcX0itS6ueeaA+pEfThZpH8WxhFgCiEb8sAJY6MdUKgiIWaQ==", + "dev": true, + "dependencies": { + "append-transform": "^2.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/istanbul-lib-instrument": { + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/istanbul-lib-instrument/-/istanbul-lib-instrument-4.0.3.tgz", + "integrity": "sha512-BXgQl9kf4WTCPCCpmFGoJkz/+uhvm7h7PFKUYxh7qarQd3ER33vHG//qaE8eN25l07YqZPpHXU9I09l/RD5aGQ==", + "dev": true, + "dependencies": { + "@babel/core": "^7.7.5", + "@istanbuljs/schema": "^0.1.2", + "istanbul-lib-coverage": "^3.0.0", + "semver": "^6.3.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/istanbul-lib-instrument/node_modules/semver": { + "version": "6.3.0", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", + "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", + "dev": true, + "bin": { + "semver": "bin/semver.js" + } + }, + "node_modules/istanbul-lib-processinfo": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/istanbul-lib-processinfo/-/istanbul-lib-processinfo-2.0.3.tgz", + "integrity": "sha512-NkwHbo3E00oybX6NGJi6ar0B29vxyvNwoC7eJ4G4Yq28UfY758Hgn/heV8VRFhevPED4LXfFz0DQ8z/0kw9zMg==", + "dev": true, + "dependencies": { + "archy": "^1.0.0", + "cross-spawn": "^7.0.3", + "istanbul-lib-coverage": "^3.2.0", + "p-map": "^3.0.0", + "rimraf": "^3.0.0", + "uuid": "^8.3.2" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/istanbul-lib-report": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/istanbul-lib-report/-/istanbul-lib-report-3.0.0.tgz", + "integrity": "sha512-wcdi+uAKzfiGT2abPpKZ0hSU1rGQjUQnLvtY5MpQ7QCTahD3VODhcu4wcfY1YtkGaDD5yuydOLINXsfbus9ROw==", + "dev": true, + "dependencies": { + "istanbul-lib-coverage": "^3.0.0", + "make-dir": "^3.0.0", + "supports-color": "^7.1.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/istanbul-lib-report/node_modules/make-dir": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-3.1.0.tgz", + "integrity": "sha512-g3FeP20LNwhALb/6Cz6Dd4F2ngze0jz7tbzrD2wAV+o9FeNHe4rL+yK2md0J/fiSf1sa1ADhXqi5+oVwOM/eGw==", + "dev": true, + "dependencies": { + "semver": "^6.0.0" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/istanbul-lib-report/node_modules/semver": { + "version": "6.3.0", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", + "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", + "dev": true, + "bin": { + "semver": "bin/semver.js" + } + }, + "node_modules/istanbul-lib-source-maps": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/istanbul-lib-source-maps/-/istanbul-lib-source-maps-4.0.1.tgz", + "integrity": "sha512-n3s8EwkdFIJCG3BPKBYvskgXGoy88ARzvegkitk60NxRdwltLOTaH7CUiMRXvwYorl0Q712iEjcWB+fK/MrWVw==", + "dev": true, + "dependencies": { + "debug": "^4.1.1", + "istanbul-lib-coverage": "^3.0.0", + "source-map": "^0.6.1" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/istanbul-lib-source-maps/node_modules/debug": { + "version": "4.3.4", + "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.4.tgz", + "integrity": "sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ==", + "dev": true, + "dependencies": { + "ms": "2.1.2" + }, + "engines": { + "node": ">=6.0" + }, + "peerDependenciesMeta": { + "supports-color": { + "optional": true + } + } + }, + "node_modules/istanbul-lib-source-maps/node_modules/ms": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", + "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==", + "dev": true + }, + "node_modules/istanbul-lib-source-maps/node_modules/source-map": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", + "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/istanbul-reports": { + "version": "3.1.4", + "resolved": "https://registry.npmjs.org/istanbul-reports/-/istanbul-reports-3.1.4.tgz", + "integrity": "sha512-r1/DshN4KSE7xWEknZLLLLDn5CJybV3nw01VTkp6D5jzLuELlcbudfj/eSQFvrKsJuTVCGnePO7ho82Nw9zzfw==", + "dev": true, + "dependencies": { + "html-escaper": "^2.0.0", + "istanbul-lib-report": "^3.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/jackspeak": { + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/jackspeak/-/jackspeak-1.4.1.tgz", + "integrity": "sha512-npN8f+M4+IQ8xD3CcWi3U62VQwKlT3Tj4GxbdT/fYTmeogD9eBF9OFdpoFG/VPNoshRjPUijdkp/p2XrzUHaVg==", + "dev": true, + "dependencies": { + "cliui": "^7.0.4" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/jake": { + "version": "10.8.5", + "resolved": "https://registry.npmjs.org/jake/-/jake-10.8.5.tgz", + "integrity": "sha512-sVpxYeuAhWt0OTWITwT98oyV0GsXyMlXCF+3L1SuafBVUIr/uILGRB+NqwkzhgXKvoJpDIpQvqkUALgdmQsQxw==", + "dev": true, + "dependencies": { + "async": "^3.2.3", + "chalk": "^4.0.2", + "filelist": "^1.0.1", + "minimatch": "^3.0.4" + }, + "bin": { + "jake": "bin/cli.js" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/js-tokens": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/js-tokens/-/js-tokens-4.0.0.tgz", + "integrity": "sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ==", + "dev": true + }, "node_modules/js-yaml": { "version": "3.14.1", "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-3.14.1.tgz", @@ -1124,6 +2639,69 @@ "js-yaml": "bin/js-yaml.js" } }, + "node_modules/jsbn": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/jsbn/-/jsbn-0.1.1.tgz", + "integrity": "sha512-UVU9dibq2JcFWxQPA6KCqj5O42VOmAY3zQUfEKxU0KpTGXwNoCjkX1e13eHNvw/xPynt6pU0rZ1htjWTNTSXsg==", + "dev": true + }, + "node_modules/jsesc": { + "version": "2.5.2", + "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-2.5.2.tgz", + "integrity": "sha512-OYu7XEzjkCQ3C5Ps3QIZsQfNpqoJyZZA99wd9aWd05NCtC5pWOkShK2mkL6HXQR6/Cy2lbNdPlZBpuQHXE63gA==", + "dev": true, + "bin": { + "jsesc": "bin/jsesc" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/json-schema": { + "version": "0.4.0", + "resolved": "https://registry.npmjs.org/json-schema/-/json-schema-0.4.0.tgz", + "integrity": "sha512-es94M3nTIfsEPisRafak+HDLfHXnKBhV3vU5eqPcS3flIWqcxJWgXHXiey3YrpaNsanY5ei1VoYEbOzijuq9BA==", + "dev": true + }, + "node_modules/json-schema-traverse": { + "version": "0.4.1", + "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz", + "integrity": "sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==", + "dev": true + }, + "node_modules/json-stringify-safe": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/json-stringify-safe/-/json-stringify-safe-5.0.1.tgz", + "integrity": "sha512-ZClg6AaYvamvYEE82d3Iyd3vSSIjQ+odgjaTzRuO3s7toCdFKczob2i0zCh7JE8kWn17yvAWhUVxvqGwUalsRA==", + "dev": true + }, + "node_modules/json5": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/json5/-/json5-2.2.1.tgz", + "integrity": "sha512-1hqLFMSrGHRHxav9q9gNjJ5EXznIxGVO09xQRrwplcS8qs28pZ8s8hupZAmqDwZUmVZ2Qb2jnyPOWcDH8m8dlA==", + "dev": true, + "bin": { + "json5": "lib/cli.js" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/jsprim": { + "version": "1.4.2", + "resolved": "https://registry.npmjs.org/jsprim/-/jsprim-1.4.2.tgz", + "integrity": "sha512-P2bSOMAc/ciLz6DzgjVlGJP9+BrJWu5UDGK70C2iweC5QBIeFf0ZXRvGjEj2uYgrY2MkAAhsSWHDWlFtEroZWw==", + "dev": true, + "dependencies": { + "assert-plus": "1.0.0", + "extsprintf": "1.3.0", + "json-schema": "0.4.0", + "verror": "1.10.0" + }, + "engines": { + "node": ">=0.6.0" + } + }, "node_modules/kind-of": { "version": "6.0.3", "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-6.0.3.tgz", @@ -1132,10 +2710,19 @@ "node": ">=0.10.0" } }, + "node_modules/lcov-parse": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/lcov-parse/-/lcov-parse-1.0.0.tgz", + "integrity": "sha512-aprLII/vPzuQvYZnDRU78Fns9I2Ag3gi4Ipga/hxnVMCZC8DnR2nI7XBqrPoywGfxqIx/DgarGvDJZAD3YBTgQ==", + "dev": true, + "bin": { + "lcov-parse": "bin/cli.js" + } + }, "node_modules/less": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/less/-/less-4.1.2.tgz", - "integrity": "sha512-EoQp/Et7OSOVu0aJknJOtlXZsnr8XE8KwuzTHOLeVSEx8pVWUICc8Q0VYRHgzyjX78nMEyC/oztWFbgyhtNfDA==", + "version": "4.1.3", + "resolved": "https://registry.npmjs.org/less/-/less-4.1.3.tgz", + "integrity": "sha512-w16Xk/Ta9Hhyei0Gpz9m7VS8F28nieJaL/VyShID7cYvP6IL5oHeL6p4TXSDJqZE/lNv0oJ2pGVjJsRkfwm5FA==", "dependencies": { "copy-anything": "^2.0.1", "parse-node-version": "^1.0.1", @@ -1153,10 +2740,22 @@ "image-size": "~0.5.0", "make-dir": "^2.1.0", "mime": "^1.4.1", - "needle": "^2.5.2", + "needle": "^3.1.0", "source-map": "~0.6.0" } }, + "node_modules/less/node_modules/image-size": { + "version": "0.5.5", + "resolved": "https://registry.npmjs.org/image-size/-/image-size-0.5.5.tgz", + "integrity": "sha512-6TDAlDPZxUFCv+fuOkIoXT/V/f3Qbq8e37p+YOiYrUv3v9cc3/6x78VdfPgFVaB9dZYeLUfKgHRebpkm/oP2VQ==", + "optional": true, + "bin": { + "image-size": "bin/image-size.js" + }, + "engines": { + "node": ">=0.10.0" + } + }, "node_modules/less/node_modules/source-map": { "version": "0.6.1", "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", @@ -1166,6 +2765,33 @@ "node": ">=0.10.0" } }, + "node_modules/libtap": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/libtap/-/libtap-1.4.0.tgz", + "integrity": "sha512-STLFynswQ2A6W14JkabgGetBNk6INL1REgJ9UeNKw5llXroC2cGLgKTqavv0sl8OLVztLLipVKMcQ7yeUcqpmg==", + "dev": true, + "dependencies": { + "async-hook-domain": "^2.0.4", + "bind-obj-methods": "^3.0.0", + "diff": "^4.0.2", + "function-loop": "^2.0.1", + "minipass": "^3.1.5", + "own-or": "^1.0.0", + "own-or-env": "^1.0.2", + "signal-exit": "^3.0.4", + "stack-utils": "^2.0.4", + "tap-parser": "^11.0.0", + "tap-yaml": "^1.0.0", + "tcompare": "^5.0.6", + "trivial-deferred": "^1.0.1" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, "node_modules/liftup": { "version": "3.0.1", "resolved": "https://registry.npmjs.org/liftup/-/liftup-3.0.1.tgz", @@ -1198,15 +2824,42 @@ "node": ">= 8" } }, + "node_modules/locate-path": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-5.0.0.tgz", + "integrity": "sha512-t7hw9pI+WvuwNJXwk5zVHpyhIqzg2qTlklJOf0mVxGSbe3Fp2VieZcduNYjaLDoy6p9uGpQEGWG87WpMKlNq8g==", + "dev": true, + "dependencies": { + "p-locate": "^4.1.0" + }, + "engines": { + "node": ">=8" + } + }, "node_modules/lodash": { "version": "4.17.21", "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.21.tgz", "integrity": "sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg==" }, + "node_modules/lodash.flattendeep": { + "version": "4.4.0", + "resolved": "https://registry.npmjs.org/lodash.flattendeep/-/lodash.flattendeep-4.4.0.tgz", + "integrity": "sha512-uHaJFihxmJcEX3kT4I23ABqKKalJ/zDrDg0lsFtc1h+3uw49SIJ5beyhx5ExVRti3AvKoOJngIj7xz3oylPdWQ==", + "dev": true + }, + "node_modules/log-driver": { + "version": "1.2.7", + "resolved": "https://registry.npmjs.org/log-driver/-/log-driver-1.2.7.tgz", + "integrity": "sha512-U7KCmLdqsGHBLeWqYlFA0V0Sl6P08EE1ZrmA9cxjUE0WVqT9qnyVDPz1kzpFEP0jdJuFnasWIfSd7fsaNXkpbg==", + "dev": true, + "engines": { + "node": ">=0.8.6" + } + }, "node_modules/lower-case": { "version": "1.1.4", "resolved": "https://registry.npmjs.org/lower-case/-/lower-case-1.1.4.tgz", - "integrity": "sha1-miyr0bno4K6ZOkv31YdcOcQujqw=" + "integrity": "sha512-2Fgx1Ycm599x+WGpIYwJOvsjmXFzTSc34IwDWALRA/8AopUKAVPwfJ+h5+f85BCp0PWmmJcWzEpxOpoXycMpdA==" }, "node_modules/make-dir": { "version": "2.1.0", @@ -1235,7 +2888,7 @@ "node_modules/map-cache": { "version": "0.2.2", "resolved": "https://registry.npmjs.org/map-cache/-/map-cache-0.2.2.tgz", - "integrity": "sha1-wyq9C9ZSXZsFFkW7TyasXcmKDb8=", + "integrity": "sha512-8y/eV9QQZCiyn1SprXSrCmqJN0yNRATe+PO8ztwqrvrbdRLA3eYJF0yaR0YayLWkMbsQSKWS9N2gPcGEc4UsZg==", "engines": { "node": ">=0.10.0" } @@ -1264,6 +2917,27 @@ "node": ">=4" } }, + "node_modules/mime-db": { + "version": "1.52.0", + "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.52.0.tgz", + "integrity": "sha512-sPU4uV7dYlvtWJxwwxHD0PuihVNiE7TyAbQ5SWxDCB9mUYvOgroQOwYQQOKPJ8CIbE+1ETVlOoK1UC2nU3gYvg==", + "dev": true, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/mime-types": { + "version": "2.1.35", + "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.35.tgz", + "integrity": "sha512-ZDY+bPm5zTTF+YpCrAU9nK0UgICYPT0QtT1NZWFv4s++TNkcgVaT0g6+4R2uI4MjQjzysHB1zxuWL50hzaeXiw==", + "dev": true, + "dependencies": { + "mime-db": "1.52.0" + }, + "engines": { + "node": ">= 0.6" + } + }, "node_modules/mimer": { "version": "2.0.2", "resolved": "https://registry.npmjs.org/mimer/-/mimer-2.0.2.tgz", @@ -1286,6 +2960,24 @@ "node": "*" } }, + "node_modules/minimist": { + "version": "1.2.6", + "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.6.tgz", + "integrity": "sha512-Jsjnk4bw3YJqYzbdyBiNsPWHPfO++UGG749Cxs6peCu5Xg4nrena6OVxOYxrQTqww0Jmwt+Ref8rggumkTLz9Q==", + "dev": true + }, + "node_modules/minipass": { + "version": "3.3.4", + "resolved": "https://registry.npmjs.org/minipass/-/minipass-3.3.4.tgz", + "integrity": "sha512-I9WPbWHCGu8W+6k1ZiGpPu0GkoKBeorkfKNuAFBNS1HNFJvke82sxvI5bzcCNpWPorkOO5QQ+zomzzwRxejXiw==", + "dev": true, + "dependencies": { + "yallist": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, "node_modules/mkdirp": { "version": "1.0.4", "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-1.0.4.tgz", @@ -1304,13 +2996,13 @@ "optional": true }, "node_modules/needle": { - "version": "2.9.1", - "resolved": "https://registry.npmjs.org/needle/-/needle-2.9.1.tgz", - "integrity": "sha512-6R9fqJ5Zcmf+uYaFgdIHmLwNldn5HbK8L5ybn7Uz+ylX/rnOsSp1AHcvQSrCaFN+qNM1wpymHqD7mVasEOlHGQ==", + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/needle/-/needle-3.1.0.tgz", + "integrity": "sha512-gCE9weDhjVGCRqS8dwDR/D3GTAeyXLXuqp7I8EzH6DllZGXSUyxuqqLh+YX9rMAWaaTFyVAg6rHGL25dqvczKw==", "optional": true, "dependencies": { "debug": "^3.2.6", - "iconv-lite": "^0.4.4", + "iconv-lite": "^0.6.3", "sax": "^1.2.4" }, "bin": { @@ -1320,6 +3012,18 @@ "node": ">= 4.4.x" } }, + "node_modules/needle/node_modules/iconv-lite": { + "version": "0.6.3", + "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.6.3.tgz", + "integrity": "sha512-4fCk79wshMdzMp2rH06qWrJE4iolqLhCUH+OiuIgU++RB0+94NlDL81atO7GX55uUKueo0txHNtvEyI6D7WdMw==", + "optional": true, + "dependencies": { + "safer-buffer": ">= 2.1.2 < 3.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, "node_modules/no-case": { "version": "2.3.2", "resolved": "https://registry.npmjs.org/no-case/-/no-case-2.3.2.tgz", @@ -1328,10 +3032,41 @@ "lower-case": "^1.1.1" } }, + "node_modules/node-preload": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/node-preload/-/node-preload-0.2.1.tgz", + "integrity": "sha512-RM5oyBy45cLEoHqCeh+MNuFAxO0vTFBLskvQbOKnEE7YTTSN4tbN8QWDIPQ6L+WvKsB/qLEGpYe2ZZ9d4W9OIQ==", + "dev": true, + "dependencies": { + "process-on-spawn": "^1.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/node-releases": { + "version": "2.0.5", + "resolved": "https://registry.npmjs.org/node-releases/-/node-releases-2.0.5.tgz", + "integrity": "sha512-U9h1NLROZTq9uE1SNffn6WuPDg8icmi3ns4rEl/oTfIle4iLjTliCzgTsbaIFMq/Xn078/lfY/BL0GWZ+psK4Q==", + "dev": true + }, + "node_modules/nodeunit-x": { + "version": "0.15.0", + "resolved": "https://registry.npmjs.org/nodeunit-x/-/nodeunit-x-0.15.0.tgz", + "integrity": "sha512-g3XCZ3Gh1Fxr9NPPo0PtmEooZ2jSJF+tP0DPtqCZmFA22uQ0N2clAew6+GIAIMnjH4eX9BS0ixxpb45IAYHnVA==", + "dev": true, + "dependencies": { + "ejs": "^3.1.6", + "tap": "^15.0.10" + }, + "bin": { + "nodeunit": "bin/nodeunit" + } + }, "node_modules/nopt": { "version": "3.0.6", "resolved": "https://registry.npmjs.org/nopt/-/nopt-3.0.6.tgz", - "integrity": "sha1-xkZdvwirzU2zWTF/eaxopkayj/k=", + "integrity": "sha512-4GUt3kSEYmk4ITxzB/b9vaIDfUVWN/Ml1Fwl11IlnIG2iaJ9O6WXZ9SrYM9NLI8OCBieN2Y8SWC2oJV0RQ7qYg==", "dependencies": { "abbrev": "1" }, @@ -1339,10 +3074,93 @@ "nopt": "bin/nopt.js" } }, + "node_modules/normalize-path": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-3.0.0.tgz", + "integrity": "sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/nyc": { + "version": "15.1.0", + "resolved": "https://registry.npmjs.org/nyc/-/nyc-15.1.0.tgz", + "integrity": "sha512-jMW04n9SxKdKi1ZMGhvUTHBN0EICCRkHemEoE5jm6mTYcqcdas0ATzgUgejlQUHMvpnOZqGB5Xxsv9KxJW1j8A==", + "dev": true, + "dependencies": { + "@istanbuljs/load-nyc-config": "^1.0.0", + "@istanbuljs/schema": "^0.1.2", + "caching-transform": "^4.0.0", + "convert-source-map": "^1.7.0", + "decamelize": "^1.2.0", + "find-cache-dir": "^3.2.0", + "find-up": "^4.1.0", + "foreground-child": "^2.0.0", + "get-package-type": "^0.1.0", + "glob": "^7.1.6", + "istanbul-lib-coverage": "^3.0.0", + "istanbul-lib-hook": "^3.0.0", + "istanbul-lib-instrument": "^4.0.0", + "istanbul-lib-processinfo": "^2.0.2", + "istanbul-lib-report": "^3.0.0", + "istanbul-lib-source-maps": "^4.0.0", + "istanbul-reports": "^3.0.2", + "make-dir": "^3.0.0", + "node-preload": "^0.2.1", + "p-map": "^3.0.0", + "process-on-spawn": "^1.0.0", + "resolve-from": "^5.0.0", + "rimraf": "^3.0.0", + "signal-exit": "^3.0.2", + "spawn-wrap": "^2.0.0", + "test-exclude": "^6.0.0", + "yargs": "^15.0.2" + }, + "bin": { + "nyc": "bin/nyc.js" + }, + "engines": { + "node": ">=8.9" + } + }, + "node_modules/nyc/node_modules/make-dir": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-3.1.0.tgz", + "integrity": "sha512-g3FeP20LNwhALb/6Cz6Dd4F2ngze0jz7tbzrD2wAV+o9FeNHe4rL+yK2md0J/fiSf1sa1ADhXqi5+oVwOM/eGw==", + "dev": true, + "dependencies": { + "semver": "^6.0.0" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/nyc/node_modules/semver": { + "version": "6.3.0", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", + "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", + "dev": true, + "bin": { + "semver": "bin/semver.js" + } + }, + "node_modules/oauth-sign": { + "version": "0.9.0", + "resolved": "https://registry.npmjs.org/oauth-sign/-/oauth-sign-0.9.0.tgz", + "integrity": "sha512-fexhUFFPTGV8ybAtSIGbV6gOkSv8UtRbDBnAyLQw4QPKkgNlsH2ByPGtMUqdWkos6YCRmAqViwgZrJc/mRDzZQ==", + "dev": true, + "engines": { + "node": "*" + } + }, "node_modules/object.defaults": { "version": "1.1.0", "resolved": "https://registry.npmjs.org/object.defaults/-/object.defaults-1.1.0.tgz", - "integrity": "sha1-On+GgzS0B96gbaFtiNXNKeQ1/s8=", + "integrity": "sha512-c/K0mw/F11k4dEUBMW8naXUuBuhxRCfG7W+yFy8EcijU/rSmazOUd1XAEEe6bC0OuXY4HUKjTJv7xbxIMqdxrA==", "dependencies": { "array-each": "^1.0.1", "array-slice": "^1.0.0", @@ -1356,7 +3174,7 @@ "node_modules/object.map": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/object.map/-/object.map-1.0.1.tgz", - "integrity": "sha1-z4Plncj8wK1fQlDh94s7gb2AHTc=", + "integrity": "sha512-3+mAJu2PLfnSVGHwIWubpOFLscJANBKuB/6A4CxBstc4aqwQY0FWcsppuy4jU5GSB95yES5JHSI+33AWuS4k6w==", "dependencies": { "for-own": "^1.0.0", "make-iterator": "^1.0.0" @@ -1368,7 +3186,7 @@ "node_modules/object.pick": { "version": "1.3.0", "resolved": "https://registry.npmjs.org/object.pick/-/object.pick-1.3.0.tgz", - "integrity": "sha1-h6EKxMFpS9Lhy/U1kaZhQftd10c=", + "integrity": "sha512-tqa/UMy/CCoYmj+H5qc07qvSL9dqcs/WZENZ1JbtWBlATP+iVOe778gE6MSijnyCnORzDuX6hU+LA4SZ09YjFQ==", "dependencies": { "isobject": "^3.0.1" }, @@ -1379,23 +3197,24 @@ "node_modules/once": { "version": "1.4.0", "resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz", - "integrity": "sha1-WDsap3WWHUsROsF9nFC6753Xa9E=", + "integrity": "sha512-lNaJgI+2Q5URQBkccEKHTQOPaXdUxnZZElQTZY0MFUAuaEqe1E+Nyvgdz/aIyNi6Z9MzO5dv1H8n58/GELp3+w==", "dependencies": { "wrappy": "1" } }, - "node_modules/optimist": { - "version": "0.3.7", - "resolved": "https://registry.npmjs.org/optimist/-/optimist-0.3.7.tgz", - "integrity": "sha1-yQlBrVnkJzMokjB00s8ufLxuwNk=", - "dependencies": { - "wordwrap": "~0.0.2" + "node_modules/opener": { + "version": "1.5.2", + "resolved": "https://registry.npmjs.org/opener/-/opener-1.5.2.tgz", + "integrity": "sha512-ur5UIdyw5Y7yEj9wLzhqXiy6GZ3Mwx0yGI+5sMn2r0N0v3cKJvUmFH5yPP+WXh9e0xfyzyJX95D8l088DNFj7A==", + "dev": true, + "bin": { + "opener": "bin/opener-bin.js" } }, "node_modules/os-homedir": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/os-homedir/-/os-homedir-1.0.2.tgz", - "integrity": "sha1-/7xJiDNuDoM94MFox+8VISGqf7M=", + "integrity": "sha512-B5JU3cabzk8c67mRRd3ECmROafjYMXbuzlwtqdM8IbS8ktlTix8aFGb2bAGKrSRIlnfKwovGUUr72JUPyOb6kQ==", "engines": { "node": ">=0.10.0" } @@ -1403,7 +3222,7 @@ "node_modules/os-tmpdir": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/os-tmpdir/-/os-tmpdir-1.0.2.tgz", - "integrity": "sha1-u+Z0BseaqFxc/sdm/lc0VV36EnQ=", + "integrity": "sha512-D2FR03Vir7FIu45XBY20mTb+/ZSWB00sjU9jdQXt83gDrI4Ztz5Fs7/yy74g2N5SVQY4xY1qDr4rNddwYRVX0g==", "engines": { "node": ">=0.10.0" } @@ -1417,10 +3236,88 @@ "os-tmpdir": "^1.0.0" } }, + "node_modules/own-or": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/own-or/-/own-or-1.0.0.tgz", + "integrity": "sha512-NfZr5+Tdf6MB8UI9GLvKRs4cXY8/yB0w3xtt84xFdWy8hkGjn+JFc60VhzS/hFRfbyxFcGYMTjnF4Me+RbbqrA==", + "dev": true + }, + "node_modules/own-or-env": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/own-or-env/-/own-or-env-1.0.2.tgz", + "integrity": "sha512-NQ7v0fliWtK7Lkb+WdFqe6ky9XAzYmlkXthQrBbzlYbmFKoAYbDDcwmOm6q8kOuwSRXW8bdL5ORksploUJmWgw==", + "dev": true, + "dependencies": { + "own-or": "^1.0.0" + } + }, + "node_modules/p-limit": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.3.0.tgz", + "integrity": "sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w==", + "dev": true, + "dependencies": { + "p-try": "^2.0.0" + }, + "engines": { + "node": ">=6" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/p-locate": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-4.1.0.tgz", + "integrity": "sha512-R79ZZ/0wAxKGu3oYMlz8jy/kbhsNrS7SKZ7PxEHBgJ5+F2mtFW2fK2cOtBh1cHYkQsbzFV7I+EoRKe6Yt0oK7A==", + "dev": true, + "dependencies": { + "p-limit": "^2.2.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/p-map": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/p-map/-/p-map-3.0.0.tgz", + "integrity": "sha512-d3qXVTF/s+W+CdJ5A29wywV2n8CQQYahlgz2bFiA+4eVNJbHJodPZ+/gXwPGh0bOqA+j8S+6+ckmvLGPk1QpxQ==", + "dev": true, + "dependencies": { + "aggregate-error": "^3.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/p-try": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/p-try/-/p-try-2.2.0.tgz", + "integrity": "sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ==", + "dev": true, + "engines": { + "node": ">=6" + } + }, + "node_modules/package-hash": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/package-hash/-/package-hash-4.0.0.tgz", + "integrity": "sha512-whdkPIooSu/bASggZ96BWVvZTRMOFxnyUG5PnTSGKoJE2gd5mbVNmR2Nj20QFzxYYgAXpoqC+AiXzl+UMRh7zQ==", + "dev": true, + "dependencies": { + "graceful-fs": "^4.1.15", + "hasha": "^5.0.0", + "lodash.flattendeep": "^4.4.0", + "release-zalgo": "^1.0.0" + }, + "engines": { + "node": ">=8" + } + }, "node_modules/param-case": { "version": "2.1.1", "resolved": "https://registry.npmjs.org/param-case/-/param-case-2.1.1.tgz", - "integrity": "sha1-35T9jPZTHs915r75oIWPvHK+Ikc=", + "integrity": "sha512-eQE845L6ot89sk2N8liD8HAuH4ca6Vvr7VWAWwt7+kvvG5aBcPmmphQ68JsEG2qa9n1TykS2DLeMt363AAH8/w==", "dependencies": { "no-case": "^2.2.0" } @@ -1428,7 +3325,7 @@ "node_modules/parse-filepath": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/parse-filepath/-/parse-filepath-1.0.2.tgz", - "integrity": "sha1-pjISf1Oq89FYdvWHLz/6x2PWyJE=", + "integrity": "sha512-FwdRXKCohSVeXqwtYonZTXtbGJKrn+HNyWDYVcp5yuJlesTwNH4rsmRZ+GrKAPJ5bLpRxESMeS+Rl0VCHRvB2Q==", "dependencies": { "is-absolute": "^1.0.0", "map-cache": "^0.2.0", @@ -1449,19 +3346,37 @@ "node_modules/parse-passwd": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/parse-passwd/-/parse-passwd-1.0.0.tgz", - "integrity": "sha1-bVuTSkVpk7I9N/QKOC1vFmao5cY=", + "integrity": "sha512-1Y1A//QUXEZK7YKz+rD9WydcE1+EuPr6ZBgKecAB8tmoW6UFv0NREVJe1p+jRxtThkcbbKkfwIbWJe/IeE6m2Q==", "engines": { "node": ">=0.10.0" } }, + "node_modules/path-exists": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-4.0.0.tgz", + "integrity": "sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==", + "dev": true, + "engines": { + "node": ">=8" + } + }, "node_modules/path-is-absolute": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz", - "integrity": "sha1-F0uSaHNVNP+8es5r9TpanhtcX18=", + "integrity": "sha512-AVbw3UJ2e9bq64vSaS9Am0fje1Pa8pbGqTTsmXfaIiMpnr5DlDhfJOuLj9Sf95ZPVDAUerDfEk88MPmPe7UCQg==", "engines": { "node": ">=0.10.0" } }, + "node_modules/path-key": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/path-key/-/path-key-3.1.1.tgz", + "integrity": "sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q==", + "dev": true, + "engines": { + "node": ">=8" + } + }, "node_modules/path-parse": { "version": "1.0.7", "resolved": "https://registry.npmjs.org/path-parse/-/path-parse-1.0.7.tgz", @@ -1470,7 +3385,7 @@ "node_modules/path-root": { "version": "0.1.1", "resolved": "https://registry.npmjs.org/path-root/-/path-root-0.1.1.tgz", - "integrity": "sha1-mkpoFMrBwM1zNgqV8yCDyOpHRbc=", + "integrity": "sha512-QLcPegTHF11axjfojBIoDygmS2E3Lf+8+jI6wOVmNVenrKSo3mFdSGiIgdSHenczw3wPtlVMQaFVwGmM7BJdtg==", "dependencies": { "path-root-regex": "^0.1.0" }, @@ -1481,11 +3396,23 @@ "node_modules/path-root-regex": { "version": "0.1.2", "resolved": "https://registry.npmjs.org/path-root-regex/-/path-root-regex-0.1.2.tgz", - "integrity": "sha1-v8zcjfWxLcUsi0PsONGNcsBLqW0=", + "integrity": "sha512-4GlJ6rZDhQZFE0DPVKh0e9jmZ5egZfxTkp7bcRDuPlJXbAwhxcl2dINPUAsjLdejqaLsCeg8axcLjIbvBjN4pQ==", "engines": { "node": ">=0.10.0" } }, + "node_modules/performance-now": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/performance-now/-/performance-now-2.1.0.tgz", + "integrity": "sha512-7EAHlyLHI56VEIdK57uwHdHKIaAGbnXPiw0yWbarQZOKaKpvUIgW0jWRVLiatnM+XXlSwsanIBH/hzGMJulMow==", + "dev": true + }, + "node_modules/picocolors": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-1.0.0.tgz", + "integrity": "sha512-1fygroTLlHu66zi26VoTDv8yRgm0Fccecssto+MhsZ0D/DGW2sm8E8AjW7NU5VVTRt5GxbeZ5qBuJr+HyLYkjQ==", + "dev": true + }, "node_modules/picomatch": { "version": "2.3.1", "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-2.3.1.tgz", @@ -1506,6 +3433,18 @@ "node": ">=6" } }, + "node_modules/pkg-dir": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/pkg-dir/-/pkg-dir-4.2.0.tgz", + "integrity": "sha512-HRDzbaKjC+AOWVXxAU/x54COGeIv9eb+6CkDSQoNTt4XyWoIJvuPsXizxu/Fr23EiekbtZwmh1IcIG/l/a10GQ==", + "dev": true, + "dependencies": { + "find-up": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, "node_modules/pretty-bytes": { "version": "5.6.0", "resolved": "https://registry.npmjs.org/pretty-bytes/-/pretty-bytes-5.6.0.tgz", @@ -1517,12 +3456,68 @@ "url": "https://github.com/sponsors/sindresorhus" } }, + "node_modules/process-on-spawn": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/process-on-spawn/-/process-on-spawn-1.0.0.tgz", + "integrity": "sha512-1WsPDsUSMmZH5LeMLegqkPDrsGgsWwk1Exipy2hvB0o/F0ASzbpIctSCcZIK1ykJvtTJULEH+20WOFjMvGnCTg==", + "dev": true, + "dependencies": { + "fromentries": "^1.2.0" + }, + "engines": { + "node": ">=8" + } + }, "node_modules/prr": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/prr/-/prr-1.0.1.tgz", - "integrity": "sha1-0/wRS6BplaRexok/SEzrHXj19HY=", + "integrity": "sha512-yPw4Sng1gWghHQWj0B3ZggWUm4qVbPwPFcRG8KyxiU7J2OHFSoEHKS+EZ3fv5l1t9CyCiop6l/ZYeWbrgoQejw==", "optional": true }, + "node_modules/psl": { + "version": "1.8.0", + "resolved": "https://registry.npmjs.org/psl/-/psl-1.8.0.tgz", + "integrity": "sha512-RIdOzyoavK+hA18OGGWDqUTsCLhtA7IcZ/6NCs4fFJaHBDab+pDDmDIByWFRQJq2Cd7r1OoQxBGKOaztq+hjIQ==", + "dev": true + }, + "node_modules/punycode": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/punycode/-/punycode-2.1.1.tgz", + "integrity": "sha512-XRsRjdf+j5ml+y/6GKHPZbrF/8p2Yga0JPtdqTIY2Xe5ohJPD9saDJJLPvp9+NSBprVvevdXZybnj2cv8OEd0A==", + "dev": true, + "engines": { + "node": ">=6" + } + }, + "node_modules/qs": { + "version": "6.5.3", + "resolved": "https://registry.npmjs.org/qs/-/qs-6.5.3.tgz", + "integrity": "sha512-qxXIEh4pCGfHICj1mAJQ2/2XVZkjCDTcEgfoSQxc/fYivUZxTkk7L3bDBJSoNrEzXI17oUO5Dp07ktqE5KzczA==", + "dev": true, + "engines": { + "node": ">=0.6" + } + }, + "node_modules/queue": { + "version": "6.0.2", + "resolved": "https://registry.npmjs.org/queue/-/queue-6.0.2.tgz", + "integrity": "sha512-iHZWu+q3IdFZFX36ro/lKBkSvfkztY5Y7HMiPlOUjhupPcG2JMfst2KKEpu5XndviX/3UhFbRngUPNKtgvtZiA==", + "dependencies": { + "inherits": "~2.0.3" + } + }, + "node_modules/readdirp": { + "version": "3.6.0", + "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-3.6.0.tgz", + "integrity": "sha512-hOS089on8RduqdbhvQ5Z37A0ESjsqz6qnRcffsMU3495FuTdqSm+7bhJ29JvIOsBDEEnan5DPu9t3To9VRlMzA==", + "dev": true, + "dependencies": { + "picomatch": "^2.2.1" + }, + "engines": { + "node": ">=8.10.0" + } + }, "node_modules/rechoir": { "version": "0.7.1", "resolved": "https://registry.npmjs.org/rechoir/-/rechoir-0.7.1.tgz", @@ -1537,17 +3532,86 @@ "node_modules/relateurl": { "version": "0.2.7", "resolved": "https://registry.npmjs.org/relateurl/-/relateurl-0.2.7.tgz", - "integrity": "sha1-VNvzd+UUQKypCkzSdGANP/LYiKk=", + "integrity": "sha512-G08Dxvm4iDN3MLM0EsP62EDV9IuhXPR6blNz6Utcp7zyV3tr4HVNINt6MpaRWbxoOHT3Q7YN2P+jaHX8vUbgog==", "engines": { "node": ">= 0.10" } }, - "node_modules/resolve": { - "version": "1.22.0", - "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.22.0.tgz", - "integrity": "sha512-Hhtrw0nLeSrFQ7phPp4OOcVjLPIeMnRlr5mcnVuMe7M/7eBn98A3hmFRLoFo3DLZkivSYwhRUJTyPyWAk56WLw==", + "node_modules/release-zalgo": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/release-zalgo/-/release-zalgo-1.0.0.tgz", + "integrity": "sha512-gUAyHVHPPC5wdqX/LG4LWtRYtgjxyX78oanFNTMMyFEfOqdC54s3eE82imuWKbOeqYht2CrNf64Qb8vgmmtZGA==", + "dev": true, "dependencies": { - "is-core-module": "^2.8.1", + "es6-error": "^4.0.1" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/request": { + "version": "2.88.2", + "resolved": "https://registry.npmjs.org/request/-/request-2.88.2.tgz", + "integrity": "sha512-MsvtOrfG9ZcrOwAW+Qi+F6HbD0CWXEh9ou77uOb7FM2WPhwT7smM833PzanhJLsgXjN89Ir6V2PczXNnMpwKhw==", + "deprecated": "request has been deprecated, see https://github.com/request/request/issues/3142", + "dev": true, + "dependencies": { + "aws-sign2": "~0.7.0", + "aws4": "^1.8.0", + "caseless": "~0.12.0", + "combined-stream": "~1.0.6", + "extend": "~3.0.2", + "forever-agent": "~0.6.1", + "form-data": "~2.3.2", + "har-validator": "~5.1.3", + "http-signature": "~1.2.0", + "is-typedarray": "~1.0.0", + "isstream": "~0.1.2", + "json-stringify-safe": "~5.0.1", + "mime-types": "~2.1.19", + "oauth-sign": "~0.9.0", + "performance-now": "^2.1.0", + "qs": "~6.5.2", + "safe-buffer": "^5.1.2", + "tough-cookie": "~2.5.0", + "tunnel-agent": "^0.6.0", + "uuid": "^3.3.2" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/request/node_modules/uuid": { + "version": "3.4.0", + "resolved": "https://registry.npmjs.org/uuid/-/uuid-3.4.0.tgz", + "integrity": "sha512-HjSDRw6gZE5JMggctHBcjVak08+KEVhSIiDzFnT9S9aegmp85S/bReBVTb4QTFaRNptJ9kuYaNhnbNEOkbKb/A==", + "deprecated": "Please upgrade to version 7 or higher. Older versions may use Math.random() in certain circumstances, which is known to be problematic. See https://v8.dev/blog/math-random for details.", + "dev": true, + "bin": { + "uuid": "bin/uuid" + } + }, + "node_modules/require-directory": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/require-directory/-/require-directory-2.1.1.tgz", + "integrity": "sha512-fGxEI7+wsG9xrvdjsrlmL22OMTTiHRwAMroiEeMgq8gzoLC/PQr7RsRDSTLUg/bZAZtF+TVIkHc6/4RIKrui+Q==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/require-main-filename": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/require-main-filename/-/require-main-filename-2.0.0.tgz", + "integrity": "sha512-NKN5kMDylKuldxYLSUfrbo5Tuzh4hd+2E8NPPX02mZtn1VuREQToYe/ZdlJy+J3uCpfaiGF05e7B8W0iXbQHmg==", + "dev": true + }, + "node_modules/resolve": { + "version": "1.22.1", + "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.22.1.tgz", + "integrity": "sha512-nBpuuYuY5jFsli/JIs1oldw6fOQCBioohqWZg/2hiaOybXOft4lonv85uDOKXdf8rhyK159cxU5cDcK/NKk8zw==", + "dependencies": { + "is-core-module": "^2.9.0", "path-parse": "^1.0.7", "supports-preserve-symlinks-flag": "^1.0.0" }, @@ -1561,7 +3625,7 @@ "node_modules/resolve-dir": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/resolve-dir/-/resolve-dir-1.0.1.tgz", - "integrity": "sha1-eaQGRMNivoLybv/nOcm7U4IEb0M=", + "integrity": "sha512-R7uiTjECzvOsWSfdM0QKFNBVFcK27aHOUwdvK53BcW8zqnGdYp0Fbj82cy54+2A4P2tFM22J5kRfe1R+lM/1yg==", "dependencies": { "expand-tilde": "^2.0.0", "global-modules": "^1.0.0" @@ -1570,6 +3634,15 @@ "node": ">=0.10.0" } }, + "node_modules/resolve-from": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-5.0.0.tgz", + "integrity": "sha512-qYg9KP24dD5qka9J47d0aVky0N+b4fTU89LN9iDnjB5waksiC49rvMB0PrUJQGoTmH50XPiqOvAjDfaijGxYZw==", + "dev": true, + "engines": { + "node": ">=8" + } + }, "node_modules/rimraf": { "version": "3.0.2", "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-3.0.2.tgz", @@ -1584,6 +3657,12 @@ "url": "https://github.com/sponsors/isaacs" } }, + "node_modules/safe-buffer": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", + "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==", + "dev": true + }, "node_modules/safer-buffer": { "version": "2.1.2", "resolved": "https://registry.npmjs.org/safer-buffer/-/safer-buffer-2.1.2.tgz", @@ -1604,10 +3683,43 @@ "semver": "bin/semver" } }, + "node_modules/set-blocking": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/set-blocking/-/set-blocking-2.0.0.tgz", + "integrity": "sha512-KiKBS8AnWGEyLzofFfmvKwpdPzqiy16LvQfK3yv/fVH7Bj13/wl3JSR1J+rfgRE9q7xUJK4qvgS8raSOeLUehw==", + "dev": true + }, + "node_modules/shebang-command": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/shebang-command/-/shebang-command-2.0.0.tgz", + "integrity": "sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA==", + "dev": true, + "dependencies": { + "shebang-regex": "^3.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/shebang-regex": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/shebang-regex/-/shebang-regex-3.0.0.tgz", + "integrity": "sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/signal-exit": { + "version": "3.0.7", + "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.7.tgz", + "integrity": "sha512-wnD2ZE+l+SPC/uoS0vXeE9L1+0wuaMqKlfz9AMUo38JsyLSBWSFcHR1Rri62LZc12vLr1gb3jl7iwQhgwpAbGQ==", + "dev": true + }, "node_modules/source-map": { "version": "0.5.7", "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.5.7.tgz", - "integrity": "sha1-igOdLRAh0i0eoUyA2OpGi6LvP8w=", + "integrity": "sha512-LbrmJOMUSdEVxIKvdcJzQC+nQhe8FUZQTXQy6+I75skNgn3OoQ0DZA8YnFa7gp8tqtL3KPf1kmo0R5DoApeSGQ==", "engines": { "node": ">=0.10.0" } @@ -1629,22 +3741,124 @@ "node": ">=0.10.0" } }, + "node_modules/spawn-wrap": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/spawn-wrap/-/spawn-wrap-2.0.0.tgz", + "integrity": "sha512-EeajNjfN9zMnULLwhZZQU3GWBoFNkbngTUPfaawT4RkMiviTxcX0qfhVbGey39mfctfDHkWtuecgQ8NJcyQWHg==", + "dev": true, + "dependencies": { + "foreground-child": "^2.0.0", + "is-windows": "^1.0.2", + "make-dir": "^3.0.0", + "rimraf": "^3.0.0", + "signal-exit": "^3.0.2", + "which": "^2.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/spawn-wrap/node_modules/make-dir": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-3.1.0.tgz", + "integrity": "sha512-g3FeP20LNwhALb/6Cz6Dd4F2ngze0jz7tbzrD2wAV+o9FeNHe4rL+yK2md0J/fiSf1sa1ADhXqi5+oVwOM/eGw==", + "dev": true, + "dependencies": { + "semver": "^6.0.0" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/spawn-wrap/node_modules/semver": { + "version": "6.3.0", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", + "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", + "dev": true, + "bin": { + "semver": "bin/semver.js" + } + }, "node_modules/sprintf-js": { "version": "1.0.3", "resolved": "https://registry.npmjs.org/sprintf-js/-/sprintf-js-1.0.3.tgz", - "integrity": "sha1-BOaSb2YolTVPPdAVIDYzuFcpfiw=" + "integrity": "sha512-D9cPgkvLlV3t3IzL0D0YLvGA9Ahk4PcvVwUbN0dSGr1aP0Nrt4AEnTUbuGvquEC0mA64Gqt1fzirlRs5ibXx8g==" }, - "node_modules/strip-ansi": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-3.0.1.tgz", - "integrity": "sha1-ajhfuIU9lS1f8F0Oiq+UJ43GPc8=", + "node_modules/sshpk": { + "version": "1.17.0", + "resolved": "https://registry.npmjs.org/sshpk/-/sshpk-1.17.0.tgz", + "integrity": "sha512-/9HIEs1ZXGhSPE8X6Ccm7Nam1z8KcoCqPdI7ecm1N33EzAetWahvQWVqLZtaZQ+IDKX4IyA2o0gBzqIMkAagHQ==", + "dev": true, "dependencies": { - "ansi-regex": "^2.0.0" + "asn1": "~0.2.3", + "assert-plus": "^1.0.0", + "bcrypt-pbkdf": "^1.0.0", + "dashdash": "^1.12.0", + "ecc-jsbn": "~0.1.1", + "getpass": "^0.1.1", + "jsbn": "~0.1.0", + "safer-buffer": "^2.0.2", + "tweetnacl": "~0.14.0" + }, + "bin": { + "sshpk-conv": "bin/sshpk-conv", + "sshpk-sign": "bin/sshpk-sign", + "sshpk-verify": "bin/sshpk-verify" }, "engines": { "node": ">=0.10.0" } }, + "node_modules/stack-utils": { + "version": "2.0.5", + "resolved": "https://registry.npmjs.org/stack-utils/-/stack-utils-2.0.5.tgz", + "integrity": "sha512-xrQcmYhOsn/1kX+Vraq+7j4oE2j/6BFscZ0etmYg81xuM8Gq0022Pxb8+IqgOFUIaxHs0KaSb7T1+OegiNrNFA==", + "dev": true, + "dependencies": { + "escape-string-regexp": "^2.0.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/string-width": { + "version": "4.2.3", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", + "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", + "dev": true, + "dependencies": { + "emoji-regex": "^8.0.0", + "is-fullwidth-code-point": "^3.0.0", + "strip-ansi": "^6.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/strip-ansi": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", + "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", + "dev": true, + "dependencies": { + "ansi-regex": "^5.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/strip-bom": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/strip-bom/-/strip-bom-4.0.0.tgz", + "integrity": "sha512-3xurFv5tEgii33Zi8Jtp55wEIILR9eh34FAW00PZf+JnSsTmV/ioewSgQl97JHvgjoRGwPShsWm+IdrxB35d0w==", + "dev": true, + "engines": { + "node": ">=8" + } + }, "node_modules/supports-color": { "version": "7.2.0", "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", @@ -1667,10 +3881,2007 @@ "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/templayed": { - "version": "0.2.3", - "resolved": "https://registry.npmjs.org/templayed/-/templayed-0.2.3.tgz", - "integrity": "sha1-RwbfYlvGrs2Gt8n2sPtUi5XN92k=" + "node_modules/tap": { + "version": "15.2.3", + "resolved": "https://registry.npmjs.org/tap/-/tap-15.2.3.tgz", + "integrity": "sha512-EVbovHd/SdevGMUnkNU5JJqC1YC0hzaaZ2jnqs0fKHv9Oudx27qW3Xwox7A6TB92wvR0mqgQPr+Au2w56kD+aQ==", + "bundleDependencies": [ + "ink", + "treport", + "@types/react", + "@isaacs/import-jsx", + "react" + ], + "dev": true, + "dependencies": { + "@isaacs/import-jsx": "*", + "@types/react": "*", + "chokidar": "^3.3.0", + "coveralls": "^3.0.11", + "findit": "^2.0.0", + "foreground-child": "^2.0.0", + "fs-exists-cached": "^1.0.0", + "glob": "^7.1.6", + "ink": "*", + "isexe": "^2.0.0", + "istanbul-lib-processinfo": "^2.0.2", + "jackspeak": "^1.4.1", + "libtap": "^1.3.0", + "minipass": "^3.1.1", + "mkdirp": "^1.0.4", + "nyc": "^15.1.0", + "opener": "^1.5.1", + "react": "*", + "rimraf": "^3.0.0", + "signal-exit": "^3.0.6", + "source-map-support": "^0.5.16", + "tap-mocha-reporter": "^5.0.3", + "tap-parser": "^11.0.1", + "tap-yaml": "^1.0.0", + "tcompare": "^5.0.7", + "treport": "*", + "which": "^2.0.2" + }, + "bin": { + "tap": "bin/run.js" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + }, + "peerDependencies": { + "flow-remove-types": ">=2.112.0", + "ts-node": ">=8.5.2", + "typescript": ">=3.7.2" + }, + "peerDependenciesMeta": { + "flow-remove-types": { + "optional": true + }, + "ts-node": { + "optional": true + }, + "typescript": { + "optional": true + } + } + }, + "node_modules/tap-mocha-reporter": { + "version": "5.0.3", + "resolved": "https://registry.npmjs.org/tap-mocha-reporter/-/tap-mocha-reporter-5.0.3.tgz", + "integrity": "sha512-6zlGkaV4J+XMRFkN0X+yuw6xHbE9jyCZ3WUKfw4KxMyRGOpYSRuuQTRJyWX88WWuLdVTuFbxzwXhXuS2XE6o0g==", + "dev": true, + "dependencies": { + "color-support": "^1.1.0", + "debug": "^4.1.1", + "diff": "^4.0.1", + "escape-string-regexp": "^2.0.0", + "glob": "^7.0.5", + "tap-parser": "^11.0.0", + "tap-yaml": "^1.0.0", + "unicode-length": "^2.0.2" + }, + "bin": { + "tap-mocha-reporter": "index.js" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/tap-mocha-reporter/node_modules/debug": { + "version": "4.3.4", + "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.4.tgz", + "integrity": "sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ==", + "dev": true, + "dependencies": { + "ms": "2.1.2" + }, + "engines": { + "node": ">=6.0" + }, + "peerDependenciesMeta": { + "supports-color": { + "optional": true + } + } + }, + "node_modules/tap-mocha-reporter/node_modules/ms": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", + "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==", + "dev": true + }, + "node_modules/tap-parser": { + "version": "11.0.1", + "resolved": "https://registry.npmjs.org/tap-parser/-/tap-parser-11.0.1.tgz", + "integrity": "sha512-5ow0oyFOnXVSALYdidMX94u0GEjIlgc/BPFYLx0yRh9hb8+cFGNJqJzDJlUqbLOwx8+NBrIbxCWkIQi7555c0w==", + "dev": true, + "dependencies": { + "events-to-array": "^1.0.1", + "minipass": "^3.1.6", + "tap-yaml": "^1.0.0" + }, + "bin": { + "tap-parser": "bin/cmd.js" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/tap-yaml": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/tap-yaml/-/tap-yaml-1.0.0.tgz", + "integrity": "sha512-Rxbx4EnrWkYk0/ztcm5u3/VznbyFJpyXO12dDBHKWiDVxy7O2Qw6MRrwO5H6Ww0U5YhRY/4C/VzWmFPhBQc4qQ==", + "dev": true, + "dependencies": { + "yaml": "^1.5.0" + } + }, + "node_modules/tap/node_modules/@babel/code-frame": { + "version": "7.16.0", + "dev": true, + "inBundle": true, + "license": "MIT", + "dependencies": { + "@babel/highlight": "^7.16.0" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/tap/node_modules/@babel/compat-data": { + "version": "7.16.0", + "dev": true, + "inBundle": true, + "license": "MIT", + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/tap/node_modules/@babel/core": { + "version": "7.16.0", + "dev": true, + "inBundle": true, + "license": "MIT", + "dependencies": { + "@babel/code-frame": "^7.16.0", + "@babel/generator": "^7.16.0", + "@babel/helper-compilation-targets": "^7.16.0", + "@babel/helper-module-transforms": "^7.16.0", + "@babel/helpers": "^7.16.0", + "@babel/parser": "^7.16.0", + "@babel/template": "^7.16.0", + "@babel/traverse": "^7.16.0", + "@babel/types": "^7.16.0", + "convert-source-map": "^1.7.0", + "debug": "^4.1.0", + "gensync": "^1.0.0-beta.2", + "json5": "^2.1.2", + "semver": "^6.3.0", + "source-map": "^0.5.0" + }, + "engines": { + "node": ">=6.9.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/babel" + } + }, + "node_modules/tap/node_modules/@babel/generator": { + "version": "7.16.0", + "dev": true, + "inBundle": true, + "license": "MIT", + "dependencies": { + "@babel/types": "^7.16.0", + "jsesc": "^2.5.1", + "source-map": "^0.5.0" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/tap/node_modules/@babel/helper-annotate-as-pure": { + "version": "7.16.0", + "dev": true, + "inBundle": true, + "license": "MIT", + "dependencies": { + "@babel/types": "^7.16.0" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/tap/node_modules/@babel/helper-compilation-targets": { + "version": "7.16.3", + "dev": true, + "inBundle": true, + "license": "MIT", + "dependencies": { + "@babel/compat-data": "^7.16.0", + "@babel/helper-validator-option": "^7.14.5", + "browserslist": "^4.17.5", + "semver": "^6.3.0" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0" + } + }, + "node_modules/tap/node_modules/@babel/helper-function-name": { + "version": "7.16.0", + "dev": true, + "inBundle": true, + "license": "MIT", + "dependencies": { + "@babel/helper-get-function-arity": "^7.16.0", + "@babel/template": "^7.16.0", + "@babel/types": "^7.16.0" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/tap/node_modules/@babel/helper-get-function-arity": { + "version": "7.16.0", + "dev": true, + "inBundle": true, + "license": "MIT", + "dependencies": { + "@babel/types": "^7.16.0" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/tap/node_modules/@babel/helper-hoist-variables": { + "version": "7.16.0", + "dev": true, + "inBundle": true, + "license": "MIT", + "dependencies": { + "@babel/types": "^7.16.0" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/tap/node_modules/@babel/helper-member-expression-to-functions": { + "version": "7.16.0", + "dev": true, + "inBundle": true, + "license": "MIT", + "dependencies": { + "@babel/types": "^7.16.0" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/tap/node_modules/@babel/helper-module-imports": { + "version": "7.16.0", + "dev": true, + "inBundle": true, + "license": "MIT", + "dependencies": { + "@babel/types": "^7.16.0" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/tap/node_modules/@babel/helper-module-transforms": { + "version": "7.16.0", + "dev": true, + "inBundle": true, + "license": "MIT", + "dependencies": { + "@babel/helper-module-imports": "^7.16.0", + "@babel/helper-replace-supers": "^7.16.0", + "@babel/helper-simple-access": "^7.16.0", + "@babel/helper-split-export-declaration": "^7.16.0", + "@babel/helper-validator-identifier": "^7.15.7", + "@babel/template": "^7.16.0", + "@babel/traverse": "^7.16.0", + "@babel/types": "^7.16.0" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/tap/node_modules/@babel/helper-optimise-call-expression": { + "version": "7.16.0", + "dev": true, + "inBundle": true, + "license": "MIT", + "dependencies": { + "@babel/types": "^7.16.0" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/tap/node_modules/@babel/helper-plugin-utils": { + "version": "7.14.5", + "dev": true, + "inBundle": true, + "license": "MIT", + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/tap/node_modules/@babel/helper-replace-supers": { + "version": "7.16.0", + "dev": true, + "inBundle": true, + "license": "MIT", + "dependencies": { + "@babel/helper-member-expression-to-functions": "^7.16.0", + "@babel/helper-optimise-call-expression": "^7.16.0", + "@babel/traverse": "^7.16.0", + "@babel/types": "^7.16.0" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/tap/node_modules/@babel/helper-simple-access": { + "version": "7.16.0", + "dev": true, + "inBundle": true, + "license": "MIT", + "dependencies": { + "@babel/types": "^7.16.0" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/tap/node_modules/@babel/helper-split-export-declaration": { + "version": "7.16.0", + "dev": true, + "inBundle": true, + "license": "MIT", + "dependencies": { + "@babel/types": "^7.16.0" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/tap/node_modules/@babel/helper-validator-identifier": { + "version": "7.15.7", + "dev": true, + "inBundle": true, + "license": "MIT", + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/tap/node_modules/@babel/helper-validator-option": { + "version": "7.14.5", + "dev": true, + "inBundle": true, + "license": "MIT", + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/tap/node_modules/@babel/helpers": { + "version": "7.16.3", + "dev": true, + "inBundle": true, + "license": "MIT", + "dependencies": { + "@babel/template": "^7.16.0", + "@babel/traverse": "^7.16.3", + "@babel/types": "^7.16.0" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/tap/node_modules/@babel/highlight": { + "version": "7.16.0", + "dev": true, + "inBundle": true, + "license": "MIT", + "dependencies": { + "@babel/helper-validator-identifier": "^7.15.7", + "chalk": "^2.0.0", + "js-tokens": "^4.0.0" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/tap/node_modules/@babel/parser": { + "version": "7.16.3", + "dev": true, + "inBundle": true, + "license": "MIT", + "bin": { + "parser": "bin/babel-parser.js" + }, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/tap/node_modules/@babel/plugin-proposal-object-rest-spread": { + "version": "7.16.0", + "dev": true, + "inBundle": true, + "license": "MIT", + "dependencies": { + "@babel/compat-data": "^7.16.0", + "@babel/helper-compilation-targets": "^7.16.0", + "@babel/helper-plugin-utils": "^7.14.5", + "@babel/plugin-syntax-object-rest-spread": "^7.8.3", + "@babel/plugin-transform-parameters": "^7.16.0" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/tap/node_modules/@babel/plugin-syntax-jsx": { + "version": "7.16.0", + "dev": true, + "inBundle": true, + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.14.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/tap/node_modules/@babel/plugin-syntax-object-rest-spread": { + "version": "7.8.3", + "dev": true, + "inBundle": true, + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.8.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/tap/node_modules/@babel/plugin-transform-destructuring": { + "version": "7.16.0", + "dev": true, + "inBundle": true, + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.14.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/tap/node_modules/@babel/plugin-transform-parameters": { + "version": "7.16.3", + "dev": true, + "inBundle": true, + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.14.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/tap/node_modules/@babel/plugin-transform-react-jsx": { + "version": "7.16.0", + "dev": true, + "inBundle": true, + "license": "MIT", + "dependencies": { + "@babel/helper-annotate-as-pure": "^7.16.0", + "@babel/helper-module-imports": "^7.16.0", + "@babel/helper-plugin-utils": "^7.14.5", + "@babel/plugin-syntax-jsx": "^7.16.0", + "@babel/types": "^7.16.0" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/tap/node_modules/@babel/template": { + "version": "7.16.0", + "dev": true, + "inBundle": true, + "license": "MIT", + "dependencies": { + "@babel/code-frame": "^7.16.0", + "@babel/parser": "^7.16.0", + "@babel/types": "^7.16.0" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/tap/node_modules/@babel/traverse": { + "version": "7.16.3", + "dev": true, + "inBundle": true, + "license": "MIT", + "dependencies": { + "@babel/code-frame": "^7.16.0", + "@babel/generator": "^7.16.0", + "@babel/helper-function-name": "^7.16.0", + "@babel/helper-hoist-variables": "^7.16.0", + "@babel/helper-split-export-declaration": "^7.16.0", + "@babel/parser": "^7.16.3", + "@babel/types": "^7.16.0", + "debug": "^4.1.0", + "globals": "^11.1.0" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/tap/node_modules/@babel/types": { + "version": "7.16.0", + "dev": true, + "inBundle": true, + "license": "MIT", + "dependencies": { + "@babel/helper-validator-identifier": "^7.15.7", + "to-fast-properties": "^2.0.0" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/tap/node_modules/@isaacs/import-jsx": { + "version": "4.0.1", + "dev": true, + "inBundle": true, + "license": "MIT", + "dependencies": { + "@babel/core": "^7.5.5", + "@babel/plugin-proposal-object-rest-spread": "^7.5.5", + "@babel/plugin-transform-destructuring": "^7.5.0", + "@babel/plugin-transform-react-jsx": "^7.3.0", + "caller-path": "^3.0.1", + "find-cache-dir": "^3.2.0", + "make-dir": "^3.0.2", + "resolve-from": "^3.0.0", + "rimraf": "^3.0.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/tap/node_modules/@isaacs/import-jsx/node_modules/caller-callsite": { + "version": "4.1.0", + "dev": true, + "inBundle": true, + "license": "MIT", + "dependencies": { + "callsites": "^3.1.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/tap/node_modules/@isaacs/import-jsx/node_modules/caller-path": { + "version": "3.0.1", + "dev": true, + "inBundle": true, + "license": "MIT", + "dependencies": { + "caller-callsite": "^4.1.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/tap/node_modules/@isaacs/import-jsx/node_modules/callsites": { + "version": "3.1.0", + "dev": true, + "inBundle": true, + "license": "MIT", + "engines": { + "node": ">=6" + } + }, + "node_modules/tap/node_modules/@types/prop-types": { + "version": "15.7.4", + "dev": true, + "inBundle": true, + "license": "MIT" + }, + "node_modules/tap/node_modules/@types/react": { + "version": "17.0.34", + "dev": true, + "inBundle": true, + "license": "MIT", + "dependencies": { + "@types/prop-types": "*", + "@types/scheduler": "*", + "csstype": "^3.0.2" + } + }, + "node_modules/tap/node_modules/@types/scheduler": { + "version": "0.16.2", + "dev": true, + "inBundle": true, + "license": "MIT" + }, + "node_modules/tap/node_modules/@types/yoga-layout": { + "version": "1.9.2", + "dev": true, + "inBundle": true, + "license": "MIT" + }, + "node_modules/tap/node_modules/ansi-escapes": { + "version": "4.3.2", + "dev": true, + "inBundle": true, + "license": "MIT", + "dependencies": { + "type-fest": "^0.21.3" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/tap/node_modules/ansi-escapes/node_modules/type-fest": { + "version": "0.21.3", + "dev": true, + "inBundle": true, + "license": "(MIT OR CC0-1.0)", + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/tap/node_modules/ansi-regex": { + "version": "5.0.1", + "dev": true, + "inBundle": true, + "license": "MIT", + "engines": { + "node": ">=8" + } + }, + "node_modules/tap/node_modules/ansi-styles": { + "version": "3.2.1", + "dev": true, + "inBundle": true, + "license": "MIT", + "dependencies": { + "color-convert": "^1.9.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/tap/node_modules/ansicolors": { + "version": "0.3.2", + "dev": true, + "inBundle": true, + "license": "MIT" + }, + "node_modules/tap/node_modules/astral-regex": { + "version": "2.0.0", + "dev": true, + "inBundle": true, + "license": "MIT", + "engines": { + "node": ">=8" + } + }, + "node_modules/tap/node_modules/auto-bind": { + "version": "4.0.0", + "dev": true, + "inBundle": true, + "license": "MIT", + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/tap/node_modules/balanced-match": { + "version": "1.0.2", + "dev": true, + "inBundle": true, + "license": "MIT" + }, + "node_modules/tap/node_modules/brace-expansion": { + "version": "1.1.11", + "dev": true, + "inBundle": true, + "license": "MIT", + "dependencies": { + "balanced-match": "^1.0.0", + "concat-map": "0.0.1" + } + }, + "node_modules/tap/node_modules/browserslist": { + "version": "4.17.6", + "dev": true, + "inBundle": true, + "license": "MIT", + "dependencies": { + "caniuse-lite": "^1.0.30001274", + "electron-to-chromium": "^1.3.886", + "escalade": "^3.1.1", + "node-releases": "^2.0.1", + "picocolors": "^1.0.0" + }, + "bin": { + "browserslist": "cli.js" + }, + "engines": { + "node": "^6 || ^7 || ^8 || ^9 || ^10 || ^11 || ^12 || >=13.7" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/browserslist" + } + }, + "node_modules/tap/node_modules/caniuse-lite": { + "version": "1.0.30001279", + "dev": true, + "inBundle": true, + "license": "CC-BY-4.0", + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/browserslist" + } + }, + "node_modules/tap/node_modules/cardinal": { + "version": "2.1.1", + "dev": true, + "inBundle": true, + "license": "MIT", + "dependencies": { + "ansicolors": "~0.3.2", + "redeyed": "~2.1.0" + }, + "bin": { + "cdl": "bin/cdl.js" + } + }, + "node_modules/tap/node_modules/chalk": { + "version": "2.4.2", + "dev": true, + "inBundle": true, + "license": "MIT", + "dependencies": { + "ansi-styles": "^3.2.1", + "escape-string-regexp": "^1.0.5", + "supports-color": "^5.3.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/tap/node_modules/ci-info": { + "version": "2.0.0", + "dev": true, + "inBundle": true, + "license": "MIT" + }, + "node_modules/tap/node_modules/cli-boxes": { + "version": "2.2.1", + "dev": true, + "inBundle": true, + "license": "MIT", + "engines": { + "node": ">=6" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/tap/node_modules/cli-cursor": { + "version": "3.1.0", + "dev": true, + "inBundle": true, + "license": "MIT", + "dependencies": { + "restore-cursor": "^3.1.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/tap/node_modules/cli-truncate": { + "version": "2.1.0", + "dev": true, + "inBundle": true, + "license": "MIT", + "dependencies": { + "slice-ansi": "^3.0.0", + "string-width": "^4.2.0" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/tap/node_modules/code-excerpt": { + "version": "3.0.0", + "dev": true, + "inBundle": true, + "license": "MIT", + "dependencies": { + "convert-to-spaces": "^1.0.1" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/tap/node_modules/color-convert": { + "version": "1.9.3", + "dev": true, + "inBundle": true, + "license": "MIT", + "dependencies": { + "color-name": "1.1.3" + } + }, + "node_modules/tap/node_modules/color-name": { + "version": "1.1.3", + "dev": true, + "inBundle": true, + "license": "MIT" + }, + "node_modules/tap/node_modules/commondir": { + "version": "1.0.1", + "dev": true, + "inBundle": true, + "license": "MIT" + }, + "node_modules/tap/node_modules/concat-map": { + "version": "0.0.1", + "dev": true, + "inBundle": true, + "license": "MIT" + }, + "node_modules/tap/node_modules/convert-source-map": { + "version": "1.8.0", + "dev": true, + "inBundle": true, + "license": "MIT", + "dependencies": { + "safe-buffer": "~5.1.1" + } + }, + "node_modules/tap/node_modules/convert-to-spaces": { + "version": "1.0.2", + "dev": true, + "inBundle": true, + "license": "MIT", + "engines": { + "node": ">= 4" + } + }, + "node_modules/tap/node_modules/csstype": { + "version": "3.0.9", + "dev": true, + "inBundle": true, + "license": "MIT" + }, + "node_modules/tap/node_modules/debug": { + "version": "4.3.2", + "dev": true, + "inBundle": true, + "license": "MIT", + "dependencies": { + "ms": "2.1.2" + }, + "engines": { + "node": ">=6.0" + }, + "peerDependenciesMeta": { + "supports-color": { + "optional": true + } + } + }, + "node_modules/tap/node_modules/electron-to-chromium": { + "version": "1.3.893", + "dev": true, + "inBundle": true, + "license": "ISC" + }, + "node_modules/tap/node_modules/emoji-regex": { + "version": "8.0.0", + "dev": true, + "inBundle": true, + "license": "MIT" + }, + "node_modules/tap/node_modules/escalade": { + "version": "3.1.1", + "dev": true, + "inBundle": true, + "license": "MIT", + "engines": { + "node": ">=6" + } + }, + "node_modules/tap/node_modules/escape-string-regexp": { + "version": "1.0.5", + "dev": true, + "inBundle": true, + "license": "MIT", + "engines": { + "node": ">=0.8.0" + } + }, + "node_modules/tap/node_modules/esprima": { + "version": "4.0.1", + "dev": true, + "inBundle": true, + "license": "BSD-2-Clause", + "bin": { + "esparse": "bin/esparse.js", + "esvalidate": "bin/esvalidate.js" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/tap/node_modules/events-to-array": { + "version": "1.1.2", + "dev": true, + "inBundle": true, + "license": "ISC" + }, + "node_modules/tap/node_modules/find-cache-dir": { + "version": "3.3.2", + "dev": true, + "inBundle": true, + "license": "MIT", + "dependencies": { + "commondir": "^1.0.1", + "make-dir": "^3.0.2", + "pkg-dir": "^4.1.0" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/avajs/find-cache-dir?sponsor=1" + } + }, + "node_modules/tap/node_modules/find-up": { + "version": "4.1.0", + "dev": true, + "inBundle": true, + "license": "MIT", + "dependencies": { + "locate-path": "^5.0.0", + "path-exists": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/tap/node_modules/fs.realpath": { + "version": "1.0.0", + "dev": true, + "inBundle": true, + "license": "ISC" + }, + "node_modules/tap/node_modules/gensync": { + "version": "1.0.0-beta.2", + "dev": true, + "inBundle": true, + "license": "MIT", + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/tap/node_modules/glob": { + "version": "7.2.0", + "dev": true, + "inBundle": true, + "license": "ISC", + "dependencies": { + "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" + }, + "engines": { + "node": "*" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/tap/node_modules/globals": { + "version": "11.12.0", + "dev": true, + "inBundle": true, + "license": "MIT", + "engines": { + "node": ">=4" + } + }, + "node_modules/tap/node_modules/has-flag": { + "version": "3.0.0", + "dev": true, + "inBundle": true, + "license": "MIT", + "engines": { + "node": ">=4" + } + }, + "node_modules/tap/node_modules/indent-string": { + "version": "4.0.0", + "dev": true, + "inBundle": true, + "license": "MIT", + "engines": { + "node": ">=8" + } + }, + "node_modules/tap/node_modules/inflight": { + "version": "1.0.6", + "dev": true, + "inBundle": true, + "license": "ISC", + "dependencies": { + "once": "^1.3.0", + "wrappy": "1" + } + }, + "node_modules/tap/node_modules/inherits": { + "version": "2.0.4", + "dev": true, + "inBundle": true, + "license": "ISC" + }, + "node_modules/tap/node_modules/ink": { + "version": "3.2.0", + "dev": true, + "inBundle": true, + "license": "MIT", + "dependencies": { + "ansi-escapes": "^4.2.1", + "auto-bind": "4.0.0", + "chalk": "^4.1.0", + "cli-boxes": "^2.2.0", + "cli-cursor": "^3.1.0", + "cli-truncate": "^2.1.0", + "code-excerpt": "^3.0.0", + "indent-string": "^4.0.0", + "is-ci": "^2.0.0", + "lodash": "^4.17.20", + "patch-console": "^1.0.0", + "react-devtools-core": "^4.19.1", + "react-reconciler": "^0.26.2", + "scheduler": "^0.20.2", + "signal-exit": "^3.0.2", + "slice-ansi": "^3.0.0", + "stack-utils": "^2.0.2", + "string-width": "^4.2.2", + "type-fest": "^0.12.0", + "widest-line": "^3.1.0", + "wrap-ansi": "^6.2.0", + "ws": "^7.5.5", + "yoga-layout-prebuilt": "^1.9.6" + }, + "engines": { + "node": ">=10" + }, + "peerDependencies": { + "@types/react": ">=16.8.0", + "react": ">=16.8.0" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } + } + }, + "node_modules/tap/node_modules/ink/node_modules/ansi-styles": { + "version": "4.3.0", + "dev": true, + "inBundle": true, + "license": "MIT", + "dependencies": { + "color-convert": "^2.0.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/tap/node_modules/ink/node_modules/chalk": { + "version": "4.1.2", + "dev": true, + "inBundle": true, + "license": "MIT", + "dependencies": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/chalk?sponsor=1" + } + }, + "node_modules/tap/node_modules/ink/node_modules/color-convert": { + "version": "2.0.1", + "dev": true, + "inBundle": true, + "license": "MIT", + "dependencies": { + "color-name": "~1.1.4" + }, + "engines": { + "node": ">=7.0.0" + } + }, + "node_modules/tap/node_modules/ink/node_modules/color-name": { + "version": "1.1.4", + "dev": true, + "inBundle": true, + "license": "MIT" + }, + "node_modules/tap/node_modules/ink/node_modules/has-flag": { + "version": "4.0.0", + "dev": true, + "inBundle": true, + "license": "MIT", + "engines": { + "node": ">=8" + } + }, + "node_modules/tap/node_modules/ink/node_modules/supports-color": { + "version": "7.2.0", + "dev": true, + "inBundle": true, + "license": "MIT", + "dependencies": { + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/tap/node_modules/is-ci": { + "version": "2.0.0", + "dev": true, + "inBundle": true, + "license": "MIT", + "dependencies": { + "ci-info": "^2.0.0" + }, + "bin": { + "is-ci": "bin.js" + } + }, + "node_modules/tap/node_modules/is-fullwidth-code-point": { + "version": "3.0.0", + "dev": true, + "inBundle": true, + "license": "MIT", + "engines": { + "node": ">=8" + } + }, + "node_modules/tap/node_modules/js-tokens": { + "version": "4.0.0", + "dev": true, + "inBundle": true, + "license": "MIT" + }, + "node_modules/tap/node_modules/jsesc": { + "version": "2.5.2", + "dev": true, + "inBundle": true, + "license": "MIT", + "bin": { + "jsesc": "bin/jsesc" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/tap/node_modules/json5": { + "version": "2.2.0", + "dev": true, + "inBundle": true, + "license": "MIT", + "dependencies": { + "minimist": "^1.2.5" + }, + "bin": { + "json5": "lib/cli.js" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/tap/node_modules/locate-path": { + "version": "5.0.0", + "dev": true, + "inBundle": true, + "license": "MIT", + "dependencies": { + "p-locate": "^4.1.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/tap/node_modules/lodash": { + "version": "4.17.21", + "dev": true, + "inBundle": true, + "license": "MIT" + }, + "node_modules/tap/node_modules/loose-envify": { + "version": "1.4.0", + "dev": true, + "inBundle": true, + "license": "MIT", + "dependencies": { + "js-tokens": "^3.0.0 || ^4.0.0" + }, + "bin": { + "loose-envify": "cli.js" + } + }, + "node_modules/tap/node_modules/make-dir": { + "version": "3.1.0", + "dev": true, + "inBundle": true, + "license": "MIT", + "dependencies": { + "semver": "^6.0.0" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/tap/node_modules/mimic-fn": { + "version": "2.1.0", + "dev": true, + "inBundle": true, + "license": "MIT", + "engines": { + "node": ">=6" + } + }, + "node_modules/tap/node_modules/minimatch": { + "version": "3.0.4", + "dev": true, + "inBundle": true, + "license": "ISC", + "dependencies": { + "brace-expansion": "^1.1.7" + }, + "engines": { + "node": "*" + } + }, + "node_modules/tap/node_modules/minimist": { + "version": "1.2.5", + "dev": true, + "inBundle": true, + "license": "MIT" + }, + "node_modules/tap/node_modules/minipass": { + "version": "3.1.6", + "dev": true, + "inBundle": true, + "license": "ISC", + "dependencies": { + "yallist": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/tap/node_modules/ms": { + "version": "2.1.2", + "dev": true, + "inBundle": true, + "license": "MIT" + }, + "node_modules/tap/node_modules/node-releases": { + "version": "2.0.1", + "dev": true, + "inBundle": true, + "license": "MIT" + }, + "node_modules/tap/node_modules/object-assign": { + "version": "4.1.1", + "dev": true, + "inBundle": true, + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/tap/node_modules/once": { + "version": "1.4.0", + "dev": true, + "inBundle": true, + "license": "ISC", + "dependencies": { + "wrappy": "1" + } + }, + "node_modules/tap/node_modules/onetime": { + "version": "5.1.2", + "dev": true, + "inBundle": true, + "license": "MIT", + "dependencies": { + "mimic-fn": "^2.1.0" + }, + "engines": { + "node": ">=6" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/tap/node_modules/p-limit": { + "version": "2.3.0", + "dev": true, + "inBundle": true, + "license": "MIT", + "dependencies": { + "p-try": "^2.0.0" + }, + "engines": { + "node": ">=6" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/tap/node_modules/p-locate": { + "version": "4.1.0", + "dev": true, + "inBundle": true, + "license": "MIT", + "dependencies": { + "p-limit": "^2.2.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/tap/node_modules/p-try": { + "version": "2.2.0", + "dev": true, + "inBundle": true, + "license": "MIT", + "engines": { + "node": ">=6" + } + }, + "node_modules/tap/node_modules/patch-console": { + "version": "1.0.0", + "dev": true, + "inBundle": true, + "license": "MIT", + "engines": { + "node": ">=10" + } + }, + "node_modules/tap/node_modules/path-exists": { + "version": "4.0.0", + "dev": true, + "inBundle": true, + "license": "MIT", + "engines": { + "node": ">=8" + } + }, + "node_modules/tap/node_modules/path-is-absolute": { + "version": "1.0.1", + "dev": true, + "inBundle": true, + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/tap/node_modules/picocolors": { + "version": "1.0.0", + "dev": true, + "inBundle": true, + "license": "ISC" + }, + "node_modules/tap/node_modules/pkg-dir": { + "version": "4.2.0", + "dev": true, + "inBundle": true, + "license": "MIT", + "dependencies": { + "find-up": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/tap/node_modules/punycode": { + "version": "2.1.1", + "dev": true, + "inBundle": true, + "license": "MIT", + "engines": { + "node": ">=6" + } + }, + "node_modules/tap/node_modules/react": { + "version": "17.0.2", + "dev": true, + "inBundle": true, + "license": "MIT", + "dependencies": { + "loose-envify": "^1.1.0", + "object-assign": "^4.1.1" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/tap/node_modules/react-devtools-core": { + "version": "4.21.0", + "dev": true, + "inBundle": true, + "license": "MIT", + "dependencies": { + "shell-quote": "^1.6.1", + "ws": "^7" + } + }, + "node_modules/tap/node_modules/react-reconciler": { + "version": "0.26.2", + "dev": true, + "inBundle": true, + "license": "MIT", + "dependencies": { + "loose-envify": "^1.1.0", + "object-assign": "^4.1.1", + "scheduler": "^0.20.2" + }, + "engines": { + "node": ">=0.10.0" + }, + "peerDependencies": { + "react": "^17.0.2" + } + }, + "node_modules/tap/node_modules/redeyed": { + "version": "2.1.1", + "dev": true, + "inBundle": true, + "license": "MIT", + "dependencies": { + "esprima": "~4.0.0" + } + }, + "node_modules/tap/node_modules/resolve-from": { + "version": "3.0.0", + "dev": true, + "inBundle": true, + "license": "MIT", + "engines": { + "node": ">=4" + } + }, + "node_modules/tap/node_modules/restore-cursor": { + "version": "3.1.0", + "dev": true, + "inBundle": true, + "license": "MIT", + "dependencies": { + "onetime": "^5.1.0", + "signal-exit": "^3.0.2" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/tap/node_modules/rimraf": { + "version": "3.0.2", + "dev": true, + "inBundle": true, + "license": "ISC", + "dependencies": { + "glob": "^7.1.3" + }, + "bin": { + "rimraf": "bin.js" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/tap/node_modules/safe-buffer": { + "version": "5.1.2", + "dev": true, + "inBundle": true, + "license": "MIT" + }, + "node_modules/tap/node_modules/scheduler": { + "version": "0.20.2", + "dev": true, + "inBundle": true, + "license": "MIT", + "dependencies": { + "loose-envify": "^1.1.0", + "object-assign": "^4.1.1" + } + }, + "node_modules/tap/node_modules/semver": { + "version": "6.3.0", + "dev": true, + "inBundle": true, + "license": "ISC", + "bin": { + "semver": "bin/semver.js" + } + }, + "node_modules/tap/node_modules/shell-quote": { + "version": "1.7.3", + "dev": true, + "inBundle": true, + "license": "MIT" + }, + "node_modules/tap/node_modules/signal-exit": { + "version": "3.0.6", + "dev": true, + "inBundle": true, + "license": "ISC" + }, + "node_modules/tap/node_modules/slice-ansi": { + "version": "3.0.0", + "dev": true, + "inBundle": true, + "license": "MIT", + "dependencies": { + "ansi-styles": "^4.0.0", + "astral-regex": "^2.0.0", + "is-fullwidth-code-point": "^3.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/tap/node_modules/slice-ansi/node_modules/ansi-styles": { + "version": "4.3.0", + "dev": true, + "inBundle": true, + "license": "MIT", + "dependencies": { + "color-convert": "^2.0.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/tap/node_modules/slice-ansi/node_modules/color-convert": { + "version": "2.0.1", + "dev": true, + "inBundle": true, + "license": "MIT", + "dependencies": { + "color-name": "~1.1.4" + }, + "engines": { + "node": ">=7.0.0" + } + }, + "node_modules/tap/node_modules/slice-ansi/node_modules/color-name": { + "version": "1.1.4", + "dev": true, + "inBundle": true, + "license": "MIT" + }, + "node_modules/tap/node_modules/source-map": { + "version": "0.5.7", + "dev": true, + "inBundle": true, + "license": "BSD-3-Clause", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/tap/node_modules/stack-utils": { + "version": "2.0.5", + "dev": true, + "inBundle": true, + "license": "MIT", + "dependencies": { + "escape-string-regexp": "^2.0.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/tap/node_modules/stack-utils/node_modules/escape-string-regexp": { + "version": "2.0.0", + "dev": true, + "inBundle": true, + "license": "MIT", + "engines": { + "node": ">=8" + } + }, + "node_modules/tap/node_modules/string-width": { + "version": "4.2.3", + "dev": true, + "inBundle": true, + "license": "MIT", + "dependencies": { + "emoji-regex": "^8.0.0", + "is-fullwidth-code-point": "^3.0.0", + "strip-ansi": "^6.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/tap/node_modules/strip-ansi": { + "version": "6.0.1", + "dev": true, + "inBundle": true, + "license": "MIT", + "dependencies": { + "ansi-regex": "^5.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/tap/node_modules/supports-color": { + "version": "5.5.0", + "dev": true, + "inBundle": true, + "license": "MIT", + "dependencies": { + "has-flag": "^3.0.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/tap/node_modules/tap-parser": { + "version": "11.0.1", + "dev": true, + "inBundle": true, + "license": "MIT", + "dependencies": { + "events-to-array": "^1.0.1", + "minipass": "^3.1.6", + "tap-yaml": "^1.0.0" + }, + "bin": { + "tap-parser": "bin/cmd.js" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/tap/node_modules/tap-yaml": { + "version": "1.0.0", + "dev": true, + "inBundle": true, + "license": "ISC", + "dependencies": { + "yaml": "^1.5.0" + } + }, + "node_modules/tap/node_modules/to-fast-properties": { + "version": "2.0.0", + "dev": true, + "inBundle": true, + "license": "MIT", + "engines": { + "node": ">=4" + } + }, + "node_modules/tap/node_modules/treport": { + "version": "3.0.3", + "dev": true, + "inBundle": true, + "license": "ISC", + "dependencies": { + "@isaacs/import-jsx": "^4.0.1", + "cardinal": "^2.1.1", + "chalk": "^3.0.0", + "ink": "^3.2.0", + "ms": "^2.1.2", + "tap-parser": "^11.0.0", + "unicode-length": "^2.0.2" + }, + "peerDependencies": { + "react": "^17.0.2" + } + }, + "node_modules/tap/node_modules/treport/node_modules/ansi-styles": { + "version": "4.3.0", + "dev": true, + "inBundle": true, + "license": "MIT", + "dependencies": { + "color-convert": "^2.0.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/tap/node_modules/treport/node_modules/chalk": { + "version": "3.0.0", + "dev": true, + "inBundle": true, + "license": "MIT", + "dependencies": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/tap/node_modules/treport/node_modules/color-convert": { + "version": "2.0.1", + "dev": true, + "inBundle": true, + "license": "MIT", + "dependencies": { + "color-name": "~1.1.4" + }, + "engines": { + "node": ">=7.0.0" + } + }, + "node_modules/tap/node_modules/treport/node_modules/color-name": { + "version": "1.1.4", + "dev": true, + "inBundle": true, + "license": "MIT" + }, + "node_modules/tap/node_modules/treport/node_modules/has-flag": { + "version": "4.0.0", + "dev": true, + "inBundle": true, + "license": "MIT", + "engines": { + "node": ">=8" + } + }, + "node_modules/tap/node_modules/treport/node_modules/supports-color": { + "version": "7.2.0", + "dev": true, + "inBundle": true, + "license": "MIT", + "dependencies": { + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/tap/node_modules/type-fest": { + "version": "0.12.0", + "dev": true, + "inBundle": true, + "license": "(MIT OR CC0-1.0)", + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/tap/node_modules/unicode-length": { + "version": "2.0.2", + "dev": true, + "inBundle": true, + "license": "MIT", + "dependencies": { + "punycode": "^2.0.0", + "strip-ansi": "^3.0.1" + } + }, + "node_modules/tap/node_modules/unicode-length/node_modules/ansi-regex": { + "version": "2.1.1", + "dev": true, + "inBundle": true, + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/tap/node_modules/unicode-length/node_modules/strip-ansi": { + "version": "3.0.1", + "dev": true, + "inBundle": true, + "license": "MIT", + "dependencies": { + "ansi-regex": "^2.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/tap/node_modules/widest-line": { + "version": "3.1.0", + "dev": true, + "inBundle": true, + "license": "MIT", + "dependencies": { + "string-width": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/tap/node_modules/wrap-ansi": { + "version": "6.2.0", + "dev": true, + "inBundle": true, + "license": "MIT", + "dependencies": { + "ansi-styles": "^4.0.0", + "string-width": "^4.1.0", + "strip-ansi": "^6.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/tap/node_modules/wrap-ansi/node_modules/ansi-styles": { + "version": "4.3.0", + "dev": true, + "inBundle": true, + "license": "MIT", + "dependencies": { + "color-convert": "^2.0.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/tap/node_modules/wrap-ansi/node_modules/color-convert": { + "version": "2.0.1", + "dev": true, + "inBundle": true, + "license": "MIT", + "dependencies": { + "color-name": "~1.1.4" + }, + "engines": { + "node": ">=7.0.0" + } + }, + "node_modules/tap/node_modules/wrap-ansi/node_modules/color-name": { + "version": "1.1.4", + "dev": true, + "inBundle": true, + "license": "MIT" + }, + "node_modules/tap/node_modules/wrappy": { + "version": "1.0.2", + "dev": true, + "inBundle": true, + "license": "ISC" + }, + "node_modules/tap/node_modules/ws": { + "version": "7.5.5", + "dev": true, + "inBundle": true, + "license": "MIT", + "engines": { + "node": ">=8.3.0" + }, + "peerDependencies": { + "bufferutil": "^4.0.1", + "utf-8-validate": "^5.0.2" + }, + "peerDependenciesMeta": { + "bufferutil": { + "optional": true + }, + "utf-8-validate": { + "optional": true + } + } + }, + "node_modules/tap/node_modules/yallist": { + "version": "4.0.0", + "dev": true, + "inBundle": true, + "license": "ISC" + }, + "node_modules/tap/node_modules/yaml": { + "version": "1.10.2", + "dev": true, + "inBundle": true, + "license": "ISC", + "engines": { + "node": ">= 6" + } + }, + "node_modules/tap/node_modules/yoga-layout-prebuilt": { + "version": "1.10.0", + "dev": true, + "inBundle": true, + "license": "MIT", + "dependencies": { + "@types/yoga-layout": "1.9.2" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/tcompare": { + "version": "5.0.7", + "resolved": "https://registry.npmjs.org/tcompare/-/tcompare-5.0.7.tgz", + "integrity": "sha512-d9iddt6YYGgyxJw5bjsN7UJUO1kGOtjSlNy/4PoGYAjQS5pAT/hzIoLf1bZCw+uUxRmZJh7Yy1aA7xKVRT9B4w==", + "dev": true, + "dependencies": { + "diff": "^4.0.2" + }, + "engines": { + "node": ">=10" + } }, "node_modules/terser": { "version": "5.14.1", @@ -1689,10 +5900,28 @@ "node": ">=10" } }, - "node_modules/terser/node_modules/commander": { - "version": "2.20.3", - "resolved": "https://registry.npmjs.org/commander/-/commander-2.20.3.tgz", - "integrity": "sha512-GpVkmM8vF2vQUkj2LvZmD35JxeJOLCwJ9cUkugyk2nuhbv3+mJvpLYYt+0+USMxE+oj+ey/lJEnhZw75x/OMcQ==" + "node_modules/test-exclude": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/test-exclude/-/test-exclude-6.0.0.tgz", + "integrity": "sha512-cAGWPIyOHU6zlmg88jwm7VRyXnMN7iV68OGAbYDk/Mh/xC/pzVPlQtY6ngoIH/5/tciuhGfvESU8GrHrcxD56w==", + "dev": true, + "dependencies": { + "@istanbuljs/schema": "^0.1.2", + "glob": "^7.1.4", + "minimatch": "^3.0.4" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/to-fast-properties": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/to-fast-properties/-/to-fast-properties-2.0.0.tgz", + "integrity": "sha512-/OaKK0xYrs3DmxRYqL/yDc+FxFUVYhDlXMhRmv3z915w2HF1tnN1omB354j8VUGO/hbRzyD6Y3sA7v7GS/ceog==", + "dev": true, + "engines": { + "node": ">=4" + } }, "node_modules/to-regex-range": { "version": "5.0.1", @@ -1705,53 +5934,81 @@ "node": ">=8.0" } }, - "node_modules/tslib": { - "version": "2.3.1", - "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.3.1.tgz", - "integrity": "sha512-77EbyPPpMz+FRFRuAFlWMtmgUWGe9UOG2Z25NqCwiIjRhOf5iKGuzSe5P2w1laq+FkRy4p+PCuVkJSGkzTEKVw==" - }, - "node_modules/uglify-js": { - "version": "2.4.1", - "resolved": "https://registry.npmjs.org/uglify-js/-/uglify-js-2.4.1.tgz", - "integrity": "sha1-V7l6r4Fg5fohGBJ+Bwgr86XCtuU=", + "node_modules/tough-cookie": { + "version": "2.5.0", + "resolved": "https://registry.npmjs.org/tough-cookie/-/tough-cookie-2.5.0.tgz", + "integrity": "sha512-nlLsUzgm1kfLXSXfRZMc1KLAugd4hqJHDTvc2hDIwS3mZAfMEuMbc03SujMF+GEcpaX/qboeycw6iO8JwVv2+g==", + "dev": true, "dependencies": { - "async": "~0.2.6", - "optimist": "~0.3.5", - "source-map": "~0.1.7", - "uglify-to-browserify": "~1.0.0" - }, - "bin": { - "uglifyjs": "bin/uglifyjs" + "psl": "^1.1.28", + "punycode": "^2.1.1" }, "engines": { - "node": ">=0.4.0" + "node": ">=0.8" } }, - "node_modules/uglify-js/node_modules/async": { - "version": "0.2.10", - "resolved": "https://registry.npmjs.org/async/-/async-0.2.10.tgz", - "integrity": "sha1-trvgsGdLnXGXCMo43owjfLUmw9E=" + "node_modules/trivial-deferred": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/trivial-deferred/-/trivial-deferred-1.0.1.tgz", + "integrity": "sha512-dagAKX7vaesNNAwOc9Np9C2mJ+7YopF4lk+jE2JML9ta4kZ91Y6UruJNH65bLRYoUROD8EY+Pmi44qQWwXR7sw==", + "dev": true }, - "node_modules/uglify-js/node_modules/source-map": { - "version": "0.1.43", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.1.43.tgz", - "integrity": "sha1-wkvBRspRfBRx9drL4lcbK3+eM0Y=", + "node_modules/tslib": { + "version": "2.4.0", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.4.0.tgz", + "integrity": "sha512-d6xOpEDfsi2CZVlPQzGeux8XMwLT9hssAsaPYExaQMuYskwb+x1x7J371tWlbBdWHroy99KnVB6qIkUbs5X3UQ==" + }, + "node_modules/tunnel-agent": { + "version": "0.6.0", + "resolved": "https://registry.npmjs.org/tunnel-agent/-/tunnel-agent-0.6.0.tgz", + "integrity": "sha512-McnNiV1l8RYeY8tBgEpuodCC1mLUdbSN+CYBL7kJsJNInOP8UjDDEwdk6Mw60vdLLrr5NHKZhMAOSrR2NZuQ+w==", + "dev": true, "dependencies": { - "amdefine": ">=0.0.4" + "safe-buffer": "^5.0.1" + }, + "engines": { + "node": "*" + } + }, + "node_modules/tweetnacl": { + "version": "0.14.5", + "resolved": "https://registry.npmjs.org/tweetnacl/-/tweetnacl-0.14.5.tgz", + "integrity": "sha512-KXXFFdAbFXY4geFIwoyNK+f5Z1b7swfXABfL7HXCmoIWMKU3dmS26672A4EeQtDzLKy7SXmfBu51JolvEKwtGA==", + "dev": true + }, + "node_modules/type-fest": { + "version": "0.8.1", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.8.1.tgz", + "integrity": "sha512-4dbzIzqvjtgiM5rw1k5rEHtBANKmdudhGyBEajN01fEyhaAIhsoKNy6y7+IN93IfpFtwY9iqi7kD+xwKhQsNJA==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/typedarray-to-buffer": { + "version": "3.1.5", + "resolved": "https://registry.npmjs.org/typedarray-to-buffer/-/typedarray-to-buffer-3.1.5.tgz", + "integrity": "sha512-zdu8XMNEDepKKR+XYOXAVPtWui0ly0NtohUscw+UmaHiAWT8hrV1rr//H6V+0DvJ3OQ19S979M0laLfX8rm82Q==", + "dev": true, + "dependencies": { + "is-typedarray": "^1.0.0" + } + }, + "node_modules/uglify-js": { + "version": "3.16.1", + "resolved": "https://registry.npmjs.org/uglify-js/-/uglify-js-3.16.1.tgz", + "integrity": "sha512-X5BGTIDH8U6IQ1TIRP62YC36k+ULAa1d59BxlWvPUJ1NkW5L3FwcGfEzuVvGmhJFBu0YJ5Ge25tmRISqCmLiRQ==", + "bin": { + "uglifyjs": "bin/uglifyjs" }, "engines": { "node": ">=0.8.0" } }, - "node_modules/uglify-to-browserify": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/uglify-to-browserify/-/uglify-to-browserify-1.0.2.tgz", - "integrity": "sha1-bgkk1r2mta/jSeOabWMoUKD4grc=" - }, "node_modules/unc-path-regex": { "version": "0.1.2", "resolved": "https://registry.npmjs.org/unc-path-regex/-/unc-path-regex-0.1.2.tgz", - "integrity": "sha1-5z3T17DXxe2G+6xrCufYxqadUPo=", + "integrity": "sha512-eXL4nmJT7oCpkZsHZUOJo8hcX3GbsiDOa0Qu9F646fi8dT3XuSVopVqAcEiVzSKKH7UoDti23wNX3qGFxcW5Qg==", "engines": { "node": ">=0.10.0" } @@ -1773,15 +6030,90 @@ "resolved": "https://registry.npmjs.org/sprintf-js/-/sprintf-js-1.1.2.tgz", "integrity": "sha512-VE0SOVEHCk7Qc8ulkWw3ntAzXuqf7S2lvwQaDLRnUeIEaKNQJzV6BwmLKhOqT61aGhfUMrXeaBk+oDGCzvhcug==" }, + "node_modules/unicode-length": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/unicode-length/-/unicode-length-2.0.2.tgz", + "integrity": "sha512-Ph/j1VbS3/r77nhoY2WU0GWGjVYOHL3xpKp0y/Eq2e5r0mT/6b649vm7KFO6RdAdrZkYLdxphYVgvODxPB+Ebg==", + "dev": true, + "dependencies": { + "punycode": "^2.0.0", + "strip-ansi": "^3.0.1" + } + }, + "node_modules/unicode-length/node_modules/ansi-regex": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-2.1.1.tgz", + "integrity": "sha512-TIGnTpdo+E3+pCyAluZvtED5p5wCqLdezCyhPZzKPcxvFplEt4i+W7OONCKgeZFT3+y5NZZfOOS/Bdcanm1MYA==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/unicode-length/node_modules/strip-ansi": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-3.0.1.tgz", + "integrity": "sha512-VhumSSbBqDTP8p2ZLKj40UjBCV4+v8bUSEpUb4KjRgWk9pbqGF4REFj6KEagidb2f/M6AzC0EmFyDNGaw9OCzg==", + "dev": true, + "dependencies": { + "ansi-regex": "^2.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/update-browserslist-db": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/update-browserslist-db/-/update-browserslist-db-1.0.4.tgz", + "integrity": "sha512-jnmO2BEGUjsMOe/Fg9u0oczOe/ppIDZPebzccl1yDWGLFP16Pa1/RM5wEoKYPG2zstNcDuAStejyxsOuKINdGA==", + "dev": true, + "funding": [ + { + "type": "opencollective", + "url": "https://opencollective.com/browserslist" + }, + { + "type": "tidelift", + "url": "https://tidelift.com/funding/github/npm/browserslist" + } + ], + "dependencies": { + "escalade": "^3.1.1", + "picocolors": "^1.0.0" + }, + "bin": { + "browserslist-lint": "cli.js" + }, + "peerDependencies": { + "browserslist": ">= 4.21.0" + } + }, "node_modules/upper-case": { "version": "1.1.3", "resolved": "https://registry.npmjs.org/upper-case/-/upper-case-1.1.3.tgz", - "integrity": "sha1-9rRQHC7EzdJrp4vnIilh3ndiFZg=" + "integrity": "sha512-WRbjgmYzgXkCV7zNVpy5YgrHgbBv126rMALQQMrmzOVC4GM2waQ9x7xtm8VU+1yF2kWyPzI9zbZ48n4vSxwfSA==" + }, + "node_modules/uri-js": { + "version": "4.4.1", + "resolved": "https://registry.npmjs.org/uri-js/-/uri-js-4.4.1.tgz", + "integrity": "sha512-7rKUyy33Q1yc98pQ1DAmLtwX109F7TIfWlW1Ydo8Wl1ii1SeHieeh0HHfPeL2fMXK6z0s8ecKs9frCuLJvndBg==", + "dev": true, + "dependencies": { + "punycode": "^2.1.0" + } }, "node_modules/util-deprecate": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz", - "integrity": "sha1-RQ1Nyfpw3nMnYvvS1KKJgUGaDM8=" + "integrity": "sha512-EPD5q1uXyFxJpCrLnCc1nHnq3gOa6DZBocAIiI2TaSCA7VCJ1UJDMagCzIkXNsUYfD1daK//LTEQ8xiIbrHtcw==" + }, + "node_modules/uuid": { + "version": "8.3.2", + "resolved": "https://registry.npmjs.org/uuid/-/uuid-8.3.2.tgz", + "integrity": "sha512-+NYs2QeMWy+GWFOEm9xnn6HCDp0l7QBD7ml8zLUmJ+93Q5NF0NocErnwkTkXVFNiX3/fpC6afS8Dhb/gz7R7eg==", + "dev": true, + "bin": { + "uuid": "dist/bin/uuid" + } }, "node_modules/v8flags": { "version": "3.2.0", @@ -1794,6 +6126,20 @@ "node": ">= 0.10" } }, + "node_modules/verror": { + "version": "1.10.0", + "resolved": "https://registry.npmjs.org/verror/-/verror-1.10.0.tgz", + "integrity": "sha512-ZZKSmDAEFOijERBLkmYfJ+vmk3w+7hOLYDNkRCuRuMJGEmqYNCNLyBBFwWKVMhfwaEF3WOd0Zlw86U/WC/+nYw==", + "dev": true, + "engines": [ + "node >=0.6.0" + ], + "dependencies": { + "assert-plus": "^1.0.0", + "core-util-is": "1.0.2", + "extsprintf": "^1.2.0" + } + }, "node_modules/which": { "version": "2.0.2", "resolved": "https://registry.npmjs.org/which/-/which-2.0.2.tgz", @@ -1808,40 +6154,540 @@ "node": ">= 8" } }, - "node_modules/wordwrap": { - "version": "0.0.3", - "resolved": "https://registry.npmjs.org/wordwrap/-/wordwrap-0.0.3.tgz", - "integrity": "sha1-o9XabNXAvAAI03I0u68b7WMFkQc=", + "node_modules/which-module": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/which-module/-/which-module-2.0.0.tgz", + "integrity": "sha512-B+enWhmw6cjfVC7kS8Pj9pCrKSc5txArRyaYGe088shv/FGWH+0Rjx/xPgtsWfsUtS27FkP697E4DDhgrgoc0Q==", + "dev": true + }, + "node_modules/wrap-ansi": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-7.0.0.tgz", + "integrity": "sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q==", + "dev": true, + "dependencies": { + "ansi-styles": "^4.0.0", + "string-width": "^4.1.0", + "strip-ansi": "^6.0.0" + }, "engines": { - "node": ">=0.4.0" + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/wrap-ansi?sponsor=1" } }, "node_modules/wrappy": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz", - "integrity": "sha1-tSQ9jz7BqjXxNkYFvA0QNuMKtp8=" + "integrity": "sha512-l4Sp/DRseor9wL6EvV2+TuQn63dMkPjZ/sp9XkghTEbV9KlPS1xUsZ3u7/IQO4wxtcFB4bgpQPRcR3QCvezPcQ==" + }, + "node_modules/write-file-atomic": { + "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, + "dependencies": { + "imurmurhash": "^0.1.4", + "is-typedarray": "^1.0.0", + "signal-exit": "^3.0.2", + "typedarray-to-buffer": "^3.1.5" + } + }, + "node_modules/y18n": { + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/y18n/-/y18n-4.0.3.tgz", + "integrity": "sha512-JKhqTOwSrqNA1NY5lSztJ1GrBiUodLMmIZuLiDaMRJ+itFd+ABVE8XBjOvIWL+rSqNDC74LCSFmlb/U4UZ4hJQ==", + "dev": true + }, + "node_modules/yallist": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", + "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", + "dev": true + }, + "node_modules/yaml": { + "version": "1.10.2", + "resolved": "https://registry.npmjs.org/yaml/-/yaml-1.10.2.tgz", + "integrity": "sha512-r3vXyErRCYJ7wg28yvBY5VSoAF8ZvlcW9/BwUzEtUsjvX/DKs24dIkuwjtuprwJJHsbyUbLApepYTR1BN4uHrg==", + "dev": true, + "engines": { + "node": ">= 6" + } + }, + "node_modules/yargs": { + "version": "15.4.1", + "resolved": "https://registry.npmjs.org/yargs/-/yargs-15.4.1.tgz", + "integrity": "sha512-aePbxDmcYW++PaqBsJ+HYUFwCdv4LVvdnhBy78E57PIor8/OVvhMrADFFEDh8DHDFRv/O9i3lPhsENjO7QX0+A==", + "dev": true, + "dependencies": { + "cliui": "^6.0.0", + "decamelize": "^1.2.0", + "find-up": "^4.1.0", + "get-caller-file": "^2.0.1", + "require-directory": "^2.1.1", + "require-main-filename": "^2.0.0", + "set-blocking": "^2.0.0", + "string-width": "^4.2.0", + "which-module": "^2.0.0", + "y18n": "^4.0.0", + "yargs-parser": "^18.1.2" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/yargs-parser": { + "version": "18.1.3", + "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-18.1.3.tgz", + "integrity": "sha512-o50j0JeToy/4K6OZcaQmW6lyXXKhq7csREXcDwk2omFPJEwUNOVtJKvmDr9EI1fAJZUyZcRF7kxGBWmRXudrCQ==", + "dev": true, + "dependencies": { + "camelcase": "^5.0.0", + "decamelize": "^1.2.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/yargs/node_modules/cliui": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/cliui/-/cliui-6.0.0.tgz", + "integrity": "sha512-t6wbgtoCXvAzst7QgXxJYqPt0usEfbgQdftEPbLL/cvv6HPE5VgvqCuAIDR0NgU52ds6rFwqrgakNLrHEjCbrQ==", + "dev": true, + "dependencies": { + "string-width": "^4.2.0", + "strip-ansi": "^6.0.0", + "wrap-ansi": "^6.2.0" + } + }, + "node_modules/yargs/node_modules/wrap-ansi": { + "version": "6.2.0", + "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-6.2.0.tgz", + "integrity": "sha512-r6lPcBGxZXlIcymEu7InxDMhdW0KDxpLgoFLcguasxCaJ/SOIZwINatK9KY/tf+ZrlywOKU0UDj3ATXUBfxJXA==", + "dev": true, + "dependencies": { + "ansi-styles": "^4.0.0", + "string-width": "^4.1.0", + "strip-ansi": "^6.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "plugins/grunt-inline": { + "version": "0.3.7", + "dependencies": { + "clean-css": "^5.2.4", + "datauri": "^4.1.0", + "uglify-js": "^3.15.1" + }, + "devDependencies": { + "grunt": "^1.4.0", + "grunt-contrib-clean": "^2.0.0", + "grunt-contrib-htmlmin": "^3.1.0", + "grunt-contrib-nodeunit": "^4.0.0" + }, + "engines": { + "node": ">=0.8.0" + } + }, + "plugins/grunt-inline/node_modules/clean-css": { + "version": "5.3.0", + "resolved": "https://registry.npmjs.org/clean-css/-/clean-css-5.3.0.tgz", + "integrity": "sha512-YYuuxv4H/iNb1Z/5IbMRoxgrzjWGhOEFfd+groZ5dMCVkpENiMZmwspdrzBo9286JjM1gZJPAyL7ZIdzuvu2AQ==", + "dependencies": { + "source-map": "~0.6.0" + }, + "engines": { + "node": ">= 10.0" + } + }, + "plugins/grunt-inline/node_modules/source-map": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", + "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", + "engines": { + "node": ">=0.10.0" + } } }, "dependencies": { - "@jridgewell/gen-mapping": { - "version": "0.3.1", - "resolved": "https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.3.1.tgz", - "integrity": "sha512-GcHwniMlA2z+WFPWuY8lp3fsza0I8xPFMWL5+n8LYyP6PSvPrXf4+n8stDHZY2DM0zy9sVkRDy1jDI4XGzYVqg==", + "@ampproject/remapping": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/@ampproject/remapping/-/remapping-2.2.0.tgz", + "integrity": "sha512-qRmjj8nj9qmLTQXXmaR1cck3UXSRMPrbsLJAasZpF+t3riI71BXed5ebIOYwQntykeZuhjsdweEc9BxH5Jc26w==", + "dev": true, "requires": { - "@jridgewell/set-array": "^1.0.0", - "@jridgewell/sourcemap-codec": "^1.4.10", + "@jridgewell/gen-mapping": "^0.1.0", "@jridgewell/trace-mapping": "^0.3.9" } }, + "@babel/code-frame": { + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.18.6.tgz", + "integrity": "sha512-TDCmlK5eOvH+eH7cdAFlNXeVJqWIQ7gW9tY1GJIpUtFb6CmjVyq2VM3u71bOyR8CRihcCgMUYoDNyLXao3+70Q==", + "dev": true, + "requires": { + "@babel/highlight": "^7.18.6" + } + }, + "@babel/compat-data": { + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/compat-data/-/compat-data-7.18.6.tgz", + "integrity": "sha512-tzulrgDT0QD6U7BJ4TKVk2SDDg7wlP39P9yAx1RfLy7vP/7rsDRlWVfbWxElslu56+r7QOhB2NSDsabYYruoZQ==", + "dev": true + }, + "@babel/core": { + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.18.6.tgz", + "integrity": "sha512-cQbWBpxcbbs/IUredIPkHiAGULLV8iwgNRMFzvbhEXISp4f3rUUXE5+TIw6KwUWUR3DwyI6gmBRnmAtYaWehwQ==", + "dev": true, + "requires": { + "@ampproject/remapping": "^2.1.0", + "@babel/code-frame": "^7.18.6", + "@babel/generator": "^7.18.6", + "@babel/helper-compilation-targets": "^7.18.6", + "@babel/helper-module-transforms": "^7.18.6", + "@babel/helpers": "^7.18.6", + "@babel/parser": "^7.18.6", + "@babel/template": "^7.18.6", + "@babel/traverse": "^7.18.6", + "@babel/types": "^7.18.6", + "convert-source-map": "^1.7.0", + "debug": "^4.1.0", + "gensync": "^1.0.0-beta.2", + "json5": "^2.2.1", + "semver": "^6.3.0" + }, + "dependencies": { + "debug": { + "version": "4.3.4", + "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.4.tgz", + "integrity": "sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ==", + "dev": true, + "requires": { + "ms": "2.1.2" + } + }, + "ms": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", + "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==", + "dev": true + }, + "semver": { + "version": "6.3.0", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", + "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", + "dev": true + } + } + }, + "@babel/generator": { + "version": "7.18.7", + "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.18.7.tgz", + "integrity": "sha512-shck+7VLlY72a2w9c3zYWuE1pwOKEiQHV7GTUbSnhyl5eu3i04t30tBY82ZRWrDfo3gkakCFtevExnxbkf2a3A==", + "dev": true, + "requires": { + "@babel/types": "^7.18.7", + "@jridgewell/gen-mapping": "^0.3.2", + "jsesc": "^2.5.1" + }, + "dependencies": { + "@jridgewell/gen-mapping": { + "version": "0.3.2", + "resolved": "https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.3.2.tgz", + "integrity": "sha512-mh65xKQAzI6iBcFzwv28KVWSmCkdRBWoOh+bYQGW3+6OZvbbN3TqMGo5hqYxQniRcH9F2VZIoJCm4pa3BPDK/A==", + "dev": true, + "requires": { + "@jridgewell/set-array": "^1.0.1", + "@jridgewell/sourcemap-codec": "^1.4.10", + "@jridgewell/trace-mapping": "^0.3.9" + } + } + } + }, + "@babel/helper-compilation-targets": { + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/helper-compilation-targets/-/helper-compilation-targets-7.18.6.tgz", + "integrity": "sha512-vFjbfhNCzqdeAtZflUFrG5YIFqGTqsctrtkZ1D/NB0mDW9TwW3GmmUepYY4G9wCET5rY5ugz4OGTcLd614IzQg==", + "dev": true, + "requires": { + "@babel/compat-data": "^7.18.6", + "@babel/helper-validator-option": "^7.18.6", + "browserslist": "^4.20.2", + "semver": "^6.3.0" + }, + "dependencies": { + "semver": { + "version": "6.3.0", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", + "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", + "dev": true + } + } + }, + "@babel/helper-environment-visitor": { + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/helper-environment-visitor/-/helper-environment-visitor-7.18.6.tgz", + "integrity": "sha512-8n6gSfn2baOY+qlp+VSzsosjCVGFqWKmDF0cCWOybh52Dw3SEyoWR1KrhMJASjLwIEkkAufZ0xvr+SxLHSpy2Q==", + "dev": true + }, + "@babel/helper-function-name": { + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/helper-function-name/-/helper-function-name-7.18.6.tgz", + "integrity": "sha512-0mWMxV1aC97dhjCah5U5Ua7668r5ZmSC2DLfH2EZnf9c3/dHZKiFa5pRLMH5tjSl471tY6496ZWk/kjNONBxhw==", + "dev": true, + "requires": { + "@babel/template": "^7.18.6", + "@babel/types": "^7.18.6" + } + }, + "@babel/helper-hoist-variables": { + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/helper-hoist-variables/-/helper-hoist-variables-7.18.6.tgz", + "integrity": "sha512-UlJQPkFqFULIcyW5sbzgbkxn2FKRgwWiRexcuaR8RNJRy8+LLveqPjwZV/bwrLZCN0eUHD/x8D0heK1ozuoo6Q==", + "dev": true, + "requires": { + "@babel/types": "^7.18.6" + } + }, + "@babel/helper-module-imports": { + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/helper-module-imports/-/helper-module-imports-7.18.6.tgz", + "integrity": "sha512-0NFvs3VkuSYbFi1x2Vd6tKrywq+z/cLeYC/RJNFrIX/30Bf5aiGYbtvGXolEktzJH8o5E5KJ3tT+nkxuuZFVlA==", + "dev": true, + "requires": { + "@babel/types": "^7.18.6" + } + }, + "@babel/helper-module-transforms": { + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/helper-module-transforms/-/helper-module-transforms-7.18.6.tgz", + "integrity": "sha512-L//phhB4al5uucwzlimruukHB3jRd5JGClwRMD/ROrVjXfLqovYnvQrK/JK36WYyVwGGO7OD3kMyVTjx+WVPhw==", + "dev": true, + "requires": { + "@babel/helper-environment-visitor": "^7.18.6", + "@babel/helper-module-imports": "^7.18.6", + "@babel/helper-simple-access": "^7.18.6", + "@babel/helper-split-export-declaration": "^7.18.6", + "@babel/helper-validator-identifier": "^7.18.6", + "@babel/template": "^7.18.6", + "@babel/traverse": "^7.18.6", + "@babel/types": "^7.18.6" + } + }, + "@babel/helper-simple-access": { + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/helper-simple-access/-/helper-simple-access-7.18.6.tgz", + "integrity": "sha512-iNpIgTgyAvDQpDj76POqg+YEt8fPxx3yaNBg3S30dxNKm2SWfYhD0TGrK/Eu9wHpUW63VQU894TsTg+GLbUa1g==", + "dev": true, + "requires": { + "@babel/types": "^7.18.6" + } + }, + "@babel/helper-split-export-declaration": { + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/helper-split-export-declaration/-/helper-split-export-declaration-7.18.6.tgz", + "integrity": "sha512-bde1etTx6ZyTmobl9LLMMQsaizFVZrquTEHOqKeQESMKo4PlObf+8+JA25ZsIpZhT/WEd39+vOdLXAFG/nELpA==", + "dev": true, + "requires": { + "@babel/types": "^7.18.6" + } + }, + "@babel/helper-validator-identifier": { + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.18.6.tgz", + "integrity": "sha512-MmetCkz9ej86nJQV+sFCxoGGrUbU3q02kgLciwkrt9QqEB7cP39oKEY0PakknEO0Gu20SskMRi+AYZ3b1TpN9g==", + "dev": true + }, + "@babel/helper-validator-option": { + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/helper-validator-option/-/helper-validator-option-7.18.6.tgz", + "integrity": "sha512-XO7gESt5ouv/LRJdrVjkShckw6STTaB7l9BrpBaAHDeF5YZT+01PCwmR0SJHnkW6i8OwW/EVWRShfi4j2x+KQw==", + "dev": true + }, + "@babel/helpers": { + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.18.6.tgz", + "integrity": "sha512-vzSiiqbQOghPngUYt/zWGvK3LAsPhz55vc9XNN0xAl2gV4ieShI2OQli5duxWHD+72PZPTKAcfcZDE1Cwc5zsQ==", + "dev": true, + "requires": { + "@babel/template": "^7.18.6", + "@babel/traverse": "^7.18.6", + "@babel/types": "^7.18.6" + } + }, + "@babel/highlight": { + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.18.6.tgz", + "integrity": "sha512-u7stbOuYjaPezCuLj29hNW1v64M2Md2qupEKP1fHc7WdOA3DgLh37suiSrZYY7haUB7iBeQZ9P1uiRF359do3g==", + "dev": true, + "requires": { + "@babel/helper-validator-identifier": "^7.18.6", + "chalk": "^2.0.0", + "js-tokens": "^4.0.0" + }, + "dependencies": { + "ansi-styles": { + "version": "3.2.1", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz", + "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==", + "dev": true, + "requires": { + "color-convert": "^1.9.0" + } + }, + "chalk": { + "version": "2.4.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz", + "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==", + "dev": true, + "requires": { + "ansi-styles": "^3.2.1", + "escape-string-regexp": "^1.0.5", + "supports-color": "^5.3.0" + } + }, + "color-convert": { + "version": "1.9.3", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz", + "integrity": "sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==", + "dev": true, + "requires": { + "color-name": "1.1.3" + } + }, + "color-name": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz", + "integrity": "sha512-72fSenhMw2HZMTVHeCA9KCmpEIbzWiQsjN+BHcBbS9vr1mtt+vJjPdksIBNUmKAW8TFUDPJK5SUU3QhE9NEXDw==", + "dev": true + }, + "escape-string-regexp": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", + "integrity": "sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg==", + "dev": true + }, + "has-flag": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", + "integrity": "sha512-sKJf1+ceQBr4SMkvQnBDNDtf4TXpVhVGateu0t918bl30FnbE2m4vNLX+VWe/dpjlb+HugGYzW7uQXH98HPEYw==", + "dev": true + }, + "supports-color": { + "version": "5.5.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz", + "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==", + "dev": true, + "requires": { + "has-flag": "^3.0.0" + } + } + } + }, + "@babel/parser": { + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.18.6.tgz", + "integrity": "sha512-uQVSa9jJUe/G/304lXspfWVpKpK4euFLgGiMQFOCpM/bgcAdeoHwi/OQz23O9GK2osz26ZiXRRV9aV+Yl1O8tw==", + "dev": true + }, + "@babel/template": { + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.18.6.tgz", + "integrity": "sha512-JoDWzPe+wgBsTTgdnIma3iHNFC7YVJoPssVBDjiHfNlyt4YcunDtcDOUmfVDfCK5MfdsaIoX9PkijPhjH3nYUw==", + "dev": true, + "requires": { + "@babel/code-frame": "^7.18.6", + "@babel/parser": "^7.18.6", + "@babel/types": "^7.18.6" + } + }, + "@babel/traverse": { + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.18.6.tgz", + "integrity": "sha512-zS/OKyqmD7lslOtFqbscH6gMLFYOfG1YPqCKfAW5KrTeolKqvB8UelR49Fpr6y93kYkW2Ik00mT1LOGiAGvizw==", + "dev": true, + "requires": { + "@babel/code-frame": "^7.18.6", + "@babel/generator": "^7.18.6", + "@babel/helper-environment-visitor": "^7.18.6", + "@babel/helper-function-name": "^7.18.6", + "@babel/helper-hoist-variables": "^7.18.6", + "@babel/helper-split-export-declaration": "^7.18.6", + "@babel/parser": "^7.18.6", + "@babel/types": "^7.18.6", + "debug": "^4.1.0", + "globals": "^11.1.0" + }, + "dependencies": { + "debug": { + "version": "4.3.4", + "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.4.tgz", + "integrity": "sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ==", + "dev": true, + "requires": { + "ms": "2.1.2" + } + }, + "ms": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", + "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==", + "dev": true + } + } + }, + "@babel/types": { + "version": "7.18.7", + "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.18.7.tgz", + "integrity": "sha512-QG3yxTcTIBoAcQmkCs+wAPYZhu7Dk9rXKacINfNbdJDNERTbLQbHGyVG8q/YGMPeCJRIhSY0+fTc5+xuh6WPSQ==", + "dev": true, + "requires": { + "@babel/helper-validator-identifier": "^7.18.6", + "to-fast-properties": "^2.0.0" + } + }, + "@istanbuljs/load-nyc-config": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/@istanbuljs/load-nyc-config/-/load-nyc-config-1.1.0.tgz", + "integrity": "sha512-VjeHSlIzpv/NyD3N0YuHfXOPDIixcA1q2ZV98wsMqcYlPmv2n3Yb2lYP9XMElnaFVXg5A7YLTeLu6V84uQDjmQ==", + "dev": true, + "requires": { + "camelcase": "^5.3.1", + "find-up": "^4.1.0", + "get-package-type": "^0.1.0", + "js-yaml": "^3.13.1", + "resolve-from": "^5.0.0" + } + }, + "@istanbuljs/schema": { + "version": "0.1.3", + "resolved": "https://registry.npmjs.org/@istanbuljs/schema/-/schema-0.1.3.tgz", + "integrity": "sha512-ZXRY4jNvVgSVQ8DL3LTcakaAtXwTVUxE81hslsyD2AtoXW/wVob10HkOJ1X/pAlcI7D+2YoZKg5do8G/w6RYgA==", + "dev": true + }, + "@jridgewell/gen-mapping": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.1.1.tgz", + "integrity": "sha512-sQXCasFk+U8lWYEe66WxRDOE9PjVz4vSM51fTu3Hw+ClTpUSQb718772vH3pyS5pShp6lvQM7SxgIDXXXmOX7w==", + "dev": true, + "requires": { + "@jridgewell/set-array": "^1.0.0", + "@jridgewell/sourcemap-codec": "^1.4.10" + } + }, "@jridgewell/resolve-uri": { - "version": "3.0.7", - "resolved": "https://registry.npmjs.org/@jridgewell/resolve-uri/-/resolve-uri-3.0.7.tgz", - "integrity": "sha512-8cXDaBBHOr2pQ7j77Y6Vp5VDT2sIqWyWQ56TjEq4ih/a4iST3dItRe8Q9fp0rrIl9DoKhWQtUQz/YpOxLkXbNA==" + "version": "3.0.8", + "resolved": "https://registry.npmjs.org/@jridgewell/resolve-uri/-/resolve-uri-3.0.8.tgz", + "integrity": "sha512-YK5G9LaddzGbcucK4c8h5tWFmMPBvRZ/uyWmN1/SbBdIvqGUdWGkJ5BAaccgs6XbzVLsqbPJrBSFwKv3kT9i7w==" }, "@jridgewell/set-array": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/@jridgewell/set-array/-/set-array-1.1.1.tgz", - "integrity": "sha512-Ct5MqZkLGEXTVmQYbGtx9SVqD2fqwvdubdps5D3djjAkgkKwT918VNOz65pEHFaYTeWcukmJmH5SwsA9Tn2ObQ==" + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/@jridgewell/set-array/-/set-array-1.1.2.tgz", + "integrity": "sha512-xnkseuNADM0gt2bs+BvhO0p78Mk762YnZdsuzFV018NoG1Sj1SCQvpSqa7XUaTam5vAGasABV9qXASMKnFMwMw==" }, "@jridgewell/source-map": { "version": "0.3.2", @@ -1850,17 +6696,29 @@ "requires": { "@jridgewell/gen-mapping": "^0.3.0", "@jridgewell/trace-mapping": "^0.3.9" + }, + "dependencies": { + "@jridgewell/gen-mapping": { + "version": "0.3.2", + "resolved": "https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.3.2.tgz", + "integrity": "sha512-mh65xKQAzI6iBcFzwv28KVWSmCkdRBWoOh+bYQGW3+6OZvbbN3TqMGo5hqYxQniRcH9F2VZIoJCm4pa3BPDK/A==", + "requires": { + "@jridgewell/set-array": "^1.0.1", + "@jridgewell/sourcemap-codec": "^1.4.10", + "@jridgewell/trace-mapping": "^0.3.9" + } + } } }, "@jridgewell/sourcemap-codec": { - "version": "1.4.13", - "resolved": "https://registry.npmjs.org/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.4.13.tgz", - "integrity": "sha512-GryiOJmNcWbovBxTfZSF71V/mXbgcV3MewDe3kIMCLyIh5e7SKAeUZs+rMnJ8jkMolZ/4/VsdBmMrw3l+VdZ3w==" + "version": "1.4.14", + "resolved": "https://registry.npmjs.org/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.4.14.tgz", + "integrity": "sha512-XPSJHWmi394fuUuzDnGz1wiKqWfo1yXecHQMRf2l6hztTO+nPru658AyDngaBe7isIxEkRsPR3FZh+s7iVa4Uw==" }, "@jridgewell/trace-mapping": { - "version": "0.3.13", - "resolved": "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.13.tgz", - "integrity": "sha512-o1xbKhp9qnIAoHJSWd6KlCZfqslL4valSF81H8ImioOAxluWYWOpWkpyktY2vnt4tbrX9XYaxovq6cgowaJp2w==", + "version": "0.3.14", + "resolved": "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.14.tgz", + "integrity": "sha512-bJWEfQ9lPTvm3SneWwRFVLzrh6nhjwqw7TUFFBEMzwvg7t7PCDenf2lDwqo4NQXzdpgBXyFgDWnQA+2vkruksQ==", "requires": { "@jridgewell/resolve-uri": "^3.0.3", "@jridgewell/sourcemap-codec": "^1.4.10" @@ -1872,19 +6730,37 @@ "integrity": "sha512-nne9/IiQ/hzIhY6pdDnbBtz7DjPTKrY00P/zvPSm5pOFkl6xuGrGnXn/VtTNNfNtAfZ9/1RtehkszU9qcTii0Q==" }, "acorn": { - "version": "8.7.0", - "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.7.0.tgz", - "integrity": "sha512-V/LGr1APy+PXIwKebEWrkZPwoeoF+w1jiOBUmuxuiUIaOHtob8Qc9BTrYo7VuI5fR8tqsy+buA2WFooR5olqvQ==" + "version": "8.7.1", + "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.7.1.tgz", + "integrity": "sha512-Xx54uLJQZ19lKygFXOWsscKUbsBZW0CPykPhVQdhIeIwrbPmJzqeASDInc8nKBnp/JT6igTs82qPXz069H8I/A==" }, - "amdefine": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/amdefine/-/amdefine-1.0.1.tgz", - "integrity": "sha1-SlKCrBZHKek2Gbz9OtFR+BfOkfU=" + "aggregate-error": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/aggregate-error/-/aggregate-error-3.1.0.tgz", + "integrity": "sha512-4I7Td01quW/RpocfNayFdFVk1qSuoh0E7JrbRJ16nH01HhKFQ88INq9Sd+nd72zqRySlr9BmDA8xlEJ6vJMrYA==", + "dev": true, + "requires": { + "clean-stack": "^2.0.0", + "indent-string": "^4.0.0" + } + }, + "ajv": { + "version": "6.12.6", + "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.12.6.tgz", + "integrity": "sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g==", + "dev": true, + "requires": { + "fast-deep-equal": "^3.1.1", + "fast-json-stable-stringify": "^2.0.0", + "json-schema-traverse": "^0.4.1", + "uri-js": "^4.2.2" + } }, "ansi-regex": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-2.1.1.tgz", - "integrity": "sha1-w7M6te42DYbg5ijwRorn7yfWVN8=" + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", + "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==", + "dev": true }, "ansi-styles": { "version": "4.3.0", @@ -1894,6 +6770,31 @@ "color-convert": "^2.0.1" } }, + "anymatch": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/anymatch/-/anymatch-3.1.2.tgz", + "integrity": "sha512-P43ePfOAIupkguHUycrc4qJ9kz8ZiuOUijaETwX7THt0Y/GNK7v0aa8rY816xWjZ7rJdA5XdMcpVFTKMq+RvWg==", + "dev": true, + "requires": { + "normalize-path": "^3.0.0", + "picomatch": "^2.0.4" + } + }, + "append-transform": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/append-transform/-/append-transform-2.0.0.tgz", + "integrity": "sha512-7yeyCEurROLQJFv5Xj4lEGTy0borxepjFv1g22oAdqFu//SrAlDl1O1Nxx15SH1RoliUml6p8dwJW9jvZughhg==", + "dev": true, + "requires": { + "default-require-extensions": "^3.0.0" + } + }, + "archy": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/archy/-/archy-1.0.0.tgz", + "integrity": "sha512-Xg+9RwCg/0p32teKdGMPTPnVXKD0w3DfHnFTficozsAgsvq2XenPJq/MYpzzQ/v8zrOyJn6Ds39VA4JIDwFfqw==", + "dev": true + }, "argparse": { "version": "1.0.10", "resolved": "https://registry.npmjs.org/argparse/-/argparse-1.0.10.tgz", @@ -1905,23 +6806,83 @@ "array-each": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/array-each/-/array-each-1.0.1.tgz", - "integrity": "sha1-p5SvDAWrF1KEbudTofIRoFugxE8=" + "integrity": "sha512-zHjL5SZa68hkKHBFBK6DJCTtr9sfTCPCaph/L7tMSLcTFgy+zX7E+6q5UArbtOtMBCtxdICpfTCspRse+ywyXA==" }, "array-slice": { "version": "1.1.0", "resolved": "https://registry.npmjs.org/array-slice/-/array-slice-1.1.0.tgz", "integrity": "sha512-B1qMD3RBP7O8o0H2KbrXDyB0IccejMF15+87Lvlor12ONPRHP6gTjXMNkt/d3ZuOGbAe66hFmaCfECI24Ufp6w==" }, + "asn1": { + "version": "0.2.6", + "resolved": "https://registry.npmjs.org/asn1/-/asn1-0.2.6.tgz", + "integrity": "sha512-ix/FxPn0MDjeyJ7i/yoHGFt/EX6LyNbxSEhPPXODPL+KB0VPk86UYfL0lMdy+KCnv+fmvIzySwaK5COwqVbWTQ==", + "dev": true, + "requires": { + "safer-buffer": "~2.1.0" + } + }, + "assert-plus": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/assert-plus/-/assert-plus-1.0.0.tgz", + "integrity": "sha512-NfJ4UzBCcQGLDlQq7nHxH+tv3kyZ0hHQqF5BO6J7tNJeP5do1llPr8dZ8zHonfhAu0PHAdMkSo+8o0wxg9lZWw==", + "dev": true + }, "async": { - "version": "3.2.3", - "resolved": "https://registry.npmjs.org/async/-/async-3.2.3.tgz", - "integrity": "sha512-spZRyzKL5l5BZQrr/6m/SqFdBN0q3OCI0f9rjfBzCMBIP4p75P620rR3gTmaksNOhmzgdxcaxdNfMy6anrbM0g==" + "version": "3.2.4", + "resolved": "https://registry.npmjs.org/async/-/async-3.2.4.tgz", + "integrity": "sha512-iAB+JbDEGXhyIUavoDl9WP/Jj106Kz9DEn1DPgYw5ruDn0e3Wgi3sKFm55sASdGBNOQB8F59d9qQ7deqrHA8wQ==" + }, + "async-hook-domain": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/async-hook-domain/-/async-hook-domain-2.0.4.tgz", + "integrity": "sha512-14LjCmlK1PK8eDtTezR6WX8TMaYNIzBIsd2D1sGoGjgx0BuNMMoSdk7i/drlbtamy0AWv9yv2tkB+ASdmeqFIw==", + "dev": true + }, + "asynckit": { + "version": "0.4.0", + "resolved": "https://registry.npmjs.org/asynckit/-/asynckit-0.4.0.tgz", + "integrity": "sha512-Oei9OH4tRh0YqU3GxhX79dM/mwVgvbZJaSNaRk+bshkj0S5cfHcgYakreBjrHwatXKbz+IoIdYLxrKim2MjW0Q==", + "dev": true + }, + "aws-sign2": { + "version": "0.7.0", + "resolved": "https://registry.npmjs.org/aws-sign2/-/aws-sign2-0.7.0.tgz", + "integrity": "sha512-08kcGqnYf/YmjoRhfxyu+CLxBjUtHLXLXX/vUfx9l2LYzG3c1m61nrpyFUZI6zeS+Li/wWMMidD9KgrqtGq3mA==", + "dev": true + }, + "aws4": { + "version": "1.11.0", + "resolved": "https://registry.npmjs.org/aws4/-/aws4-1.11.0.tgz", + "integrity": "sha512-xh1Rl34h6Fi1DC2WWKfxUTVqRsNnr6LsKz2+hfwDxQJWmrx8+c7ylaqBMcHfl1U1r2dsifOvKX3LQuLNZ+XSvA==", + "dev": true }, "balanced-match": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.2.tgz", "integrity": "sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==" }, + "bcrypt-pbkdf": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/bcrypt-pbkdf/-/bcrypt-pbkdf-1.0.2.tgz", + "integrity": "sha512-qeFIXtP4MSoi6NLqO12WfqARWWuCKi2Rn/9hJLEmtB5yTNr9DqFWkJRCf2qShWzPeAMRnOgCrq0sg/KLv5ES9w==", + "dev": true, + "requires": { + "tweetnacl": "^0.14.3" + } + }, + "binary-extensions": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/binary-extensions/-/binary-extensions-2.2.0.tgz", + "integrity": "sha512-jDctJ/IVQbZoJykoeHbhXpOlNBqGNcwXJKJog42E5HDPUwQTSdjCHdihjj0DlnheQ7blbT6dHOafNAiS8ooQKA==", + "dev": true + }, + "bind-obj-methods": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/bind-obj-methods/-/bind-obj-methods-3.0.0.tgz", + "integrity": "sha512-nLEaaz3/sEzNSyPWRsN9HNsqwk1AUyECtGj+XwGdIi3xABnEqecvXtIJ0wehQXuuER5uZ/5fTs2usONgYjG+iw==", + "dev": true + }, "brace-expansion": { "version": "1.1.11", "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", @@ -1939,20 +6900,79 @@ "fill-range": "^7.0.1" } }, + "browserslist": { + "version": "4.21.1", + "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.21.1.tgz", + "integrity": "sha512-Nq8MFCSrnJXSc88yliwlzQe3qNe3VntIjhsArW9IJOEPSHNx23FalwApUVbzAWABLhYJJ7y8AynWI/XM8OdfjQ==", + "dev": true, + "requires": { + "caniuse-lite": "^1.0.30001359", + "electron-to-chromium": "^1.4.172", + "node-releases": "^2.0.5", + "update-browserslist-db": "^1.0.4" + } + }, "buffer-from": { "version": "1.1.2", "resolved": "https://registry.npmjs.org/buffer-from/-/buffer-from-1.1.2.tgz", "integrity": "sha512-E+XQCRwSbaaiChtv6k6Dwgc+bx+Bs6vuKJHHl5kox/BaKbhiXzqQOwK4cO22yElGp2OCmjwVhT3HmxgyPGnJfQ==" }, + "caching-transform": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/caching-transform/-/caching-transform-4.0.0.tgz", + "integrity": "sha512-kpqOvwXnjjN44D89K5ccQC+RUrsy7jB/XLlRrx0D7/2HNcTPqzsb6XgYoErwko6QsV184CA2YgS1fxDiiDZMWA==", + "dev": true, + "requires": { + "hasha": "^5.0.0", + "make-dir": "^3.0.0", + "package-hash": "^4.0.0", + "write-file-atomic": "^3.0.0" + }, + "dependencies": { + "make-dir": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-3.1.0.tgz", + "integrity": "sha512-g3FeP20LNwhALb/6Cz6Dd4F2ngze0jz7tbzrD2wAV+o9FeNHe4rL+yK2md0J/fiSf1sa1ADhXqi5+oVwOM/eGw==", + "dev": true, + "requires": { + "semver": "^6.0.0" + } + }, + "semver": { + "version": "6.3.0", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", + "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", + "dev": true + } + } + }, "camel-case": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/camel-case/-/camel-case-3.0.0.tgz", - "integrity": "sha1-yjw2iKTpzzpM2nd9xNy8cTJJz3M=", + "integrity": "sha512-+MbKztAYHXPr1jNTSKQF52VpcFjwY5RkR7fxksV8Doo4KAYc5Fl4UJRgthBbTmEx8C54DqahhbLJkDwjI3PI/w==", "requires": { "no-case": "^2.2.0", "upper-case": "^1.1.1" } }, + "camelcase": { + "version": "5.3.1", + "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-5.3.1.tgz", + "integrity": "sha512-L28STB170nwWS63UjtlEOE3dldQApaJXZkOI1uMFfzf3rRuPegHaHesyee+YxQ+W6SvRDQV6UrdOdRiR153wJg==", + "dev": true + }, + "caniuse-lite": { + "version": "1.0.30001359", + "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001359.tgz", + "integrity": "sha512-Xln/BAsPzEuiVLgJ2/45IaqD9jShtk3Y33anKb4+yLwQzws3+v6odKfpgES/cDEaZMLzSChpIGdbOYtH9MyuHw==", + "dev": true + }, + "caseless": { + "version": "0.12.0", + "resolved": "https://registry.npmjs.org/caseless/-/caseless-0.12.0.tgz", + "integrity": "sha512-4tYFyifaFfGacoiObjJegolkwSU4xQNGbVgUiNYVUxbQ2x2lUsFvY4hVgVzGiIe6WLOPqycWXA40l+PWsxthUw==", + "dev": true + }, "chalk": { "version": "4.1.2", "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", @@ -1962,12 +6982,52 @@ "supports-color": "^7.1.0" } }, - "clean-css": { - "version": "1.1.7", - "resolved": "https://registry.npmjs.org/clean-css/-/clean-css-1.1.7.tgz", - "integrity": "sha512-eIhTPpuWxQpiKPvZdF92jx0/6l4awOtf4zCawFE8f4Gboka/eXBofEFkXf1KtbLj5wjjHWDg6gtHQB538qEt9w==", + "chokidar": { + "version": "3.5.3", + "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-3.5.3.tgz", + "integrity": "sha512-Dr3sfKRP6oTcjf2JmUmFJfeVMvXBdegxB0iVQ5eb2V10uFJUCAS8OByZdVAyVb8xXNz3GjjTgj9kLWsZTqE6kw==", + "dev": true, "requires": { - "commander": "2.0.x" + "anymatch": "~3.1.2", + "braces": "~3.0.2", + "fsevents": "~2.3.2", + "glob-parent": "~5.1.2", + "is-binary-path": "~2.1.0", + "is-glob": "~4.0.1", + "normalize-path": "~3.0.0", + "readdirp": "~3.6.0" + } + }, + "clean-css": { + "version": "4.2.4", + "resolved": "https://registry.npmjs.org/clean-css/-/clean-css-4.2.4.tgz", + "integrity": "sha512-EJUDT7nDVFDvaQgAo2G/PJvxmp1o/c6iXLbswsBbUFXi1Nr+AjA2cKmfbKDMjMvzEe75g3P6JkaDDAKk96A85A==", + "requires": { + "source-map": "~0.6.0" + }, + "dependencies": { + "source-map": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", + "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==" + } + } + }, + "clean-stack": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/clean-stack/-/clean-stack-2.2.0.tgz", + "integrity": "sha512-4diC9HaTE+KRAMWhDhrGOECgWZxoevMc5TlkObMqNSsVU62PYzXZ/SMTjzyGAFF1YusgxGcSWTEXBhp0CPwQ1A==", + "dev": true + }, + "cliui": { + "version": "7.0.4", + "resolved": "https://registry.npmjs.org/cliui/-/cliui-7.0.4.tgz", + "integrity": "sha512-OcRE68cOsVMXp1Yvonl/fzkQOyjLSu/8bhPDfQt0e0/Eb283TKP20Fs2MqoPsr9SwA595rRCA+QMzYc9nBP+JQ==", + "dev": true, + "requires": { + "string-width": "^4.2.0", + "strip-ansi": "^6.0.0", + "wrap-ansi": "^7.0.0" } }, "color-convert": { @@ -1983,20 +7043,50 @@ "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==" }, + "color-support": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/color-support/-/color-support-1.1.3.tgz", + "integrity": "sha512-qiBjkpbMLO/HL68y+lh4q0/O1MZFj2RX6X/KmMa3+gJD3z+WwI1ZzDHysvqHGS3mP6mznPckpXmw1nI9cJjyRg==", + "dev": true + }, "colors": { "version": "1.1.2", "resolved": "https://registry.npmjs.org/colors/-/colors-1.1.2.tgz", - "integrity": "sha1-FopHAXVran9RoSzgyXv6KMCE7WM=" + "integrity": "sha512-ENwblkFQpqqia6b++zLD/KUWafYlVY/UNnAp7oz7LY7E924wmpye416wBOmvv/HMWzl8gL1kJlfvId/1Dg176w==" + }, + "combined-stream": { + "version": "1.0.8", + "resolved": "https://registry.npmjs.org/combined-stream/-/combined-stream-1.0.8.tgz", + "integrity": "sha512-FQN4MRfuJeHf7cBbBMJFXhKSDq+2kAArBlmRBvcvFE5BB1HZKXtSFASDhdlz9zOYwxh8lDdnvmMOe/+5cdoEdg==", + "dev": true, + "requires": { + "delayed-stream": "~1.0.0" + } }, "commander": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/commander/-/commander-2.0.0.tgz", - "integrity": "sha1-0bhvkB+LZL2UG96tr5JFMDk76Sg=" + "version": "2.20.3", + "resolved": "https://registry.npmjs.org/commander/-/commander-2.20.3.tgz", + "integrity": "sha512-GpVkmM8vF2vQUkj2LvZmD35JxeJOLCwJ9cUkugyk2nuhbv3+mJvpLYYt+0+USMxE+oj+ey/lJEnhZw75x/OMcQ==" + }, + "commondir": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/commondir/-/commondir-1.0.1.tgz", + "integrity": "sha512-W9pAhw0ja1Edb5GVdIF1mjZw/ASI0AlShXM83UUGe2DVr5TdAPEA1OA8m/g8zWp9x6On7gqufY+FatDbC3MDQg==", + "dev": true }, "concat-map": { "version": "0.0.1", "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz", - "integrity": "sha1-2Klr13/Wjfd5OnMDajug1UBdR3s=" + "integrity": "sha512-/Srv4dswyQNBfohGpz9o6Yb3Gz3SrUDqBH5rTuhGR7ahtlbYKnVxw2bCFMRljaA7EXHaXZ8wsHdodFvbkhKmqg==" + }, + "convert-source-map": { + "version": "1.8.0", + "resolved": "https://registry.npmjs.org/convert-source-map/-/convert-source-map-1.8.0.tgz", + "integrity": "sha512-+OQdjP49zViI/6i7nIJpA8rAl4sV/JdPfU9nZs3VqOwGIgizICvuN2ru6fMd+4llL0tar18UYJXfZ/TWtmhUjA==", + "dev": true, + "requires": { + "safe-buffer": "~5.1.1" + } }, "copy-anything": { "version": "2.0.6", @@ -2006,13 +7096,52 @@ "is-what": "^3.14.1" } }, - "datauri": { - "version": "0.2.1", - "resolved": "https://registry.npmjs.org/datauri/-/datauri-0.2.1.tgz", - "integrity": "sha1-9Oit27PlTj3BLRyIVDuLCxv2kvo=", + "core-util-is": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.2.tgz", + "integrity": "sha512-3lqz5YjWTYnW6dlDa5TLaTCcShfar1e40rmcJVwCBJC6mWlFuj0eCHIElmG1g5kyuJ/GD+8Wn4FFCcz4gJPfaQ==", + "dev": true + }, + "coveralls": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/coveralls/-/coveralls-3.1.1.tgz", + "integrity": "sha512-+dxnG2NHncSD1NrqbSM3dn/lE57O6Qf/koe9+I7c+wzkqRmEvcp0kgJdxKInzYzkICKkFMZsX3Vct3++tsF9ww==", + "dev": true, "requires": { - "mimer": "*", - "templayed": "*" + "js-yaml": "^3.13.1", + "lcov-parse": "^1.0.0", + "log-driver": "^1.2.7", + "minimist": "^1.2.5", + "request": "^2.88.2" + } + }, + "cross-spawn": { + "version": "7.0.3", + "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.3.tgz", + "integrity": "sha512-iRDPJKUPVEND7dHPO8rkbOnPpyDygcDFtWjpeWNCgy8WP2rXcxXL8TskReQl6OrB2G7+UJrags1q15Fudc7G6w==", + "dev": true, + "requires": { + "path-key": "^3.1.0", + "shebang-command": "^2.0.0", + "which": "^2.0.1" + } + }, + "dashdash": { + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/dashdash/-/dashdash-1.14.1.tgz", + "integrity": "sha512-jRFi8UDGo6j+odZiEpjazZaWqEal3w/basFjQHQEwVtZJGDpxbH1MeYluwCS8Xq5wmLJooDlMgvVarmWfGM44g==", + "dev": true, + "requires": { + "assert-plus": "^1.0.0" + } + }, + "datauri": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/datauri/-/datauri-4.1.0.tgz", + "integrity": "sha512-y17kh32+I82G+ED9MNWFkZiP/Cq/vO1hN9+tSZsT9C9qn3NrvcBnh7crSepg0AQPge1hXx2Ca44s1FRdv0gFWA==", + "requires": { + "image-size": "1.0.0", + "mimer": "^2.0.2" } }, "dateformat": { @@ -2029,10 +7158,68 @@ "ms": "^2.1.1" } }, + "decamelize": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/decamelize/-/decamelize-1.2.0.tgz", + "integrity": "sha512-z2S+W9X73hAUUki+N+9Za2lBlun89zigOyGrsax+KUQ6wKW4ZoWpEYBkGhQjwAjjDCkWxhY0VKEhk8wzY7F5cA==", + "dev": true + }, + "default-require-extensions": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/default-require-extensions/-/default-require-extensions-3.0.0.tgz", + "integrity": "sha512-ek6DpXq/SCpvjhpFsLFRVtIxJCRw6fUR42lYMVZuUMK7n8eMz4Uh5clckdBjEpLhn/gEBZo7hDJnJcwdKLKQjg==", + "dev": true, + "requires": { + "strip-bom": "^4.0.0" + } + }, + "delayed-stream": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/delayed-stream/-/delayed-stream-1.0.0.tgz", + "integrity": "sha512-ZySD7Nf91aLB0RxL4KGrKHBXl7Eds1DAmEdcoVawXnLD7SDhpNgtuII2aAkg7a7QS41jxPSZ17p4VdGnMHk3MQ==", + "dev": true + }, "detect-file": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/detect-file/-/detect-file-1.0.0.tgz", - "integrity": "sha1-8NZtA2cqglyxtzvbP+YjEMjlUrc=" + "integrity": "sha512-DtCOLG98P007x7wiiOmfI0fi3eIKyWiLTGJ2MDnVi/E04lWGbf+JzrRHMm0rgIIZJGtHpKpbVgLWHrv8xXpc3Q==" + }, + "diff": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/diff/-/diff-4.0.2.tgz", + "integrity": "sha512-58lmxKSA4BNyLz+HHMUzlOEpg09FV+ev6ZMe3vJihgdxzgcwZ8VoEEPmALCZG9LmqfVoNMMKpttIYTVG6uDY7A==", + "dev": true + }, + "ecc-jsbn": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/ecc-jsbn/-/ecc-jsbn-0.1.2.tgz", + "integrity": "sha512-eh9O+hwRHNbG4BLTjEl3nw044CkGm5X6LoaCf7LPp7UU8Qrt47JYNi6nPX8xjW97TKGKm1ouctg0QSpZe9qrnw==", + "dev": true, + "requires": { + "jsbn": "~0.1.0", + "safer-buffer": "^2.1.0" + } + }, + "ejs": { + "version": "3.1.8", + "resolved": "https://registry.npmjs.org/ejs/-/ejs-3.1.8.tgz", + "integrity": "sha512-/sXZeMlhS0ArkfX2Aw780gJzXSMPnKjtspYZv+f3NiKLlubezAHDU5+9xz6gd3/NhG3txQCo6xlglmTS+oTGEQ==", + "dev": true, + "requires": { + "jake": "^10.8.5" + } + }, + "electron-to-chromium": { + "version": "1.4.172", + "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.172.tgz", + "integrity": "sha512-yDoFfTJnqBAB6hSiPvzmsBJSrjOXJtHSJoqJdI/zSIh7DYupYnIOHt/bbPw/WE31BJjNTybDdNAs21gCMnTh0Q==", + "dev": true + }, + "emoji-regex": { + "version": "8.0.0", + "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz", + "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==", + "dev": true }, "errno": { "version": "0.1.8", @@ -2043,10 +7230,23 @@ "prr": "~1.0.1" } }, + "es6-error": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/es6-error/-/es6-error-4.1.1.tgz", + "integrity": "sha512-Um/+FxMr9CISWh0bi5Zv0iOD+4cFh5qLeks1qhAopKVAJw3drgKbKySikp7wGhDL0HPeaja0P5ULZrxLkniUVg==", + "dev": true + }, + "escalade": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/escalade/-/escalade-3.1.1.tgz", + "integrity": "sha512-k0er2gUkLf8O0zKJiAhmkTnJlTvINGv7ygDNPbeIsX/TJjGJZHuh9B2UxbsaEkmlEo9MfhrSzmhIlhRlI2GXnw==", + "dev": true + }, "escape-string-regexp": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", - "integrity": "sha1-G2HAViGQqN/2rjuyzwIAyhMLhtQ=" + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-2.0.0.tgz", + "integrity": "sha512-UpzcLCXolUWcNu5HtVMHYdXJjArjsF9C0aNnquZYY4uW/Vu0miy5YoWvbV345HauVvcAUnpRuhMMcqTcGOY2+w==", + "dev": true }, "esprima": { "version": "4.0.1", @@ -2056,17 +7256,23 @@ "eventemitter2": { "version": "0.4.14", "resolved": "https://registry.npmjs.org/eventemitter2/-/eventemitter2-0.4.14.tgz", - "integrity": "sha1-j2G3XN4BKy6esoTUVFWDtWQ7Yas=" + "integrity": "sha512-K7J4xq5xAD5jHsGM5ReWXRTFa3JRGofHiMcVgQ8PRwgWxzjHpMWCIzsmyf60+mh8KLsqYPcjUMa0AC4hd6lPyQ==" + }, + "events-to-array": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/events-to-array/-/events-to-array-1.1.2.tgz", + "integrity": "sha512-inRWzRY7nG+aXZxBzEqYKB3HPgwflZRopAjDCHv0whhRx+MTUr1ei0ICZUypdyE0HRm4L2d5VEcIqLD6yl+BFA==", + "dev": true }, "exit": { "version": "0.1.2", "resolved": "https://registry.npmjs.org/exit/-/exit-0.1.2.tgz", - "integrity": "sha1-BjJjj42HfMghB9MKD/8aF8uhzQw=" + "integrity": "sha512-Zk/eNKV2zbjpKzrsQ+n1G6poVbErQxJ0LBOJXaKZ1EViLzH+hrLu9cdXI4zw9dBQJslwBEpbQ2P1oS7nDxs6jQ==" }, "expand-tilde": { "version": "2.0.2", "resolved": "https://registry.npmjs.org/expand-tilde/-/expand-tilde-2.0.2.tgz", - "integrity": "sha1-l+gBqgUt8CRU3kawK/YhZCzchQI=", + "integrity": "sha512-A5EmesHW6rfnZ9ysHQjPdJRni0SRar0tjtG5MNtm9n5TUvsYU8oozprtRD4AqHxcZWWlVuAmQo2nWKfN9oyjTw==", "requires": { "homedir-polyfill": "^1.0.1" } @@ -2076,10 +7282,57 @@ "resolved": "https://registry.npmjs.org/extend/-/extend-3.0.2.tgz", "integrity": "sha512-fjquC59cD7CyW6urNXK0FBufkZcoiGG80wTuPujX590cB5Ttln20E2UB4S/WARVqhXffZl2LNgS+gQdPIIim/g==" }, + "extsprintf": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/extsprintf/-/extsprintf-1.3.0.tgz", + "integrity": "sha512-11Ndz7Nv+mvAC1j0ktTa7fAb0vLyGGX+rMHNBYQviQDGU0Hw7lhctJANqbPhu9nV9/izT/IntTgZ7Im/9LJs9g==", + "dev": true + }, + "fast-deep-equal": { + "version": "3.1.3", + "resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-3.1.3.tgz", + "integrity": "sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q==", + "dev": true + }, + "fast-json-stable-stringify": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/fast-json-stable-stringify/-/fast-json-stable-stringify-2.1.0.tgz", + "integrity": "sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw==", + "dev": true + }, "file-sync-cmp": { "version": "0.1.1", "resolved": "https://registry.npmjs.org/file-sync-cmp/-/file-sync-cmp-0.1.1.tgz", - "integrity": "sha1-peeo/7+kk7Q7kju9TKiaU7Y7YSs=" + "integrity": "sha512-0k45oWBokCqh2MOexeYKpyqmGKG+8mQ2Wd8iawx+uWd/weWJQAZ6SoPybagdCI4xFisag8iAR77WPm4h3pTfxA==" + }, + "filelist": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/filelist/-/filelist-1.0.4.tgz", + "integrity": "sha512-w1cEuf3S+DrLCQL7ET6kz+gmlJdbq9J7yXCSjK/OZCPA+qEN1WyF4ZAf0YYJa4/shHJra2t/d/r8SV4Ji+x+8Q==", + "dev": true, + "requires": { + "minimatch": "^5.0.1" + }, + "dependencies": { + "brace-expansion": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.1.tgz", + "integrity": "sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==", + "dev": true, + "requires": { + "balanced-match": "^1.0.0" + } + }, + "minimatch": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-5.1.0.tgz", + "integrity": "sha512-9TPBGGak4nHfGZsPBohm9AWg6NoT7QTCehS3BIJABslyZbzxfV78QM2Y6+i741OPZIafFAaiiEMh5OyIrJPgtg==", + "dev": true, + "requires": { + "brace-expansion": "^2.0.1" + } + } + } }, "fill-range": { "version": "7.0.1", @@ -2089,10 +7342,54 @@ "to-regex-range": "^5.0.1" } }, + "find-cache-dir": { + "version": "3.3.2", + "resolved": "https://registry.npmjs.org/find-cache-dir/-/find-cache-dir-3.3.2.tgz", + "integrity": "sha512-wXZV5emFEjrridIgED11OoUKLxiYjAcqot/NJdAkOhlJ+vGzwhOAfcG5OX1jP+S0PcjEn8bdMJv+g2jwQ3Onig==", + "dev": true, + "requires": { + "commondir": "^1.0.1", + "make-dir": "^3.0.2", + "pkg-dir": "^4.1.0" + }, + "dependencies": { + "make-dir": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-3.1.0.tgz", + "integrity": "sha512-g3FeP20LNwhALb/6Cz6Dd4F2ngze0jz7tbzrD2wAV+o9FeNHe4rL+yK2md0J/fiSf1sa1ADhXqi5+oVwOM/eGw==", + "dev": true, + "requires": { + "semver": "^6.0.0" + } + }, + "semver": { + "version": "6.3.0", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", + "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", + "dev": true + } + } + }, + "find-up": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/find-up/-/find-up-4.1.0.tgz", + "integrity": "sha512-PpOwAdQ/YlXQ2vj8a3h8IipDuYRi3wceVQQGYWxNINccq40Anw7BlsEXCMbt1Zt+OLA6Fq9suIpIWD0OsnISlw==", + "dev": true, + "requires": { + "locate-path": "^5.0.0", + "path-exists": "^4.0.0" + } + }, + "findit": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/findit/-/findit-2.0.0.tgz", + "integrity": "sha512-ENZS237/Hr8bjczn5eKuBohLgaD0JyUd0arxretR1f9RO46vZHA1b2y0VorgGV3WaOT3c+78P8h7v4JGJ1i/rg==", + "dev": true + }, "findup-sync": { "version": "0.3.0", "resolved": "https://registry.npmjs.org/findup-sync/-/findup-sync-0.3.0.tgz", - "integrity": "sha1-N5MKpdgWt3fANEXhlmzGeQpMCxY=", + "integrity": "sha512-z8Nrwhi6wzxNMIbxlrTzuUW6KWuKkogZ/7OdDVq+0+kxn77KUH1nipx8iU6suqkHqc4y6n7a9A8IpmxY/pTjWg==", "requires": { "glob": "~5.0.0" }, @@ -2100,7 +7397,7 @@ "glob": { "version": "5.0.15", "resolved": "https://registry.npmjs.org/glob/-/glob-5.0.15.tgz", - "integrity": "sha1-G8k2ueAvSmA/zCIuz3Yz0wuLk7E=", + "integrity": "sha512-c9IPMazfRITpmAAKi22dK1VKxGDX9ehhqfABDriL/lzO92xcUKEJPQHrVA/2YHSNFB4iFlykVmWvwo48nr3OxA==", "requires": { "inflight": "^1.0.4", "inherits": "2", @@ -2131,31 +7428,110 @@ "for-in": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/for-in/-/for-in-1.0.2.tgz", - "integrity": "sha1-gQaNKVqBQuwKxybG4iAMMPttXoA=" + "integrity": "sha512-7EwmXrOjyL+ChxMhmG5lnW9MPt1aIeZEwKhQzoBUdTV0N3zuwWDZYVJatDvZ2OyzPUvdIAZDsCetk3coyMfcnQ==" }, "for-own": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/for-own/-/for-own-1.0.0.tgz", - "integrity": "sha1-xjMy9BXO3EsE2/5wz4NklMU8tEs=", + "integrity": "sha512-0OABksIGrxKK8K4kynWkQ7y1zounQxP+CWnyclVwj81KW3vlLlGUx57DKGcP/LH216GzqnstnPocF16Nxs0Ycg==", "requires": { "for-in": "^1.0.1" } }, + "foreground-child": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/foreground-child/-/foreground-child-2.0.0.tgz", + "integrity": "sha512-dCIq9FpEcyQyXKCkyzmlPTFNgrCzPudOe+mhvJU5zAtlBnGVy2yKxtfsxK2tQBThwq225jcvBjpw1Gr40uzZCA==", + "dev": true, + "requires": { + "cross-spawn": "^7.0.0", + "signal-exit": "^3.0.2" + } + }, + "forever-agent": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/forever-agent/-/forever-agent-0.6.1.tgz", + "integrity": "sha512-j0KLYPhm6zeac4lz3oJ3o65qvgQCcPubiyotZrXqEaG4hNagNYO8qdlUrX5vwqv9ohqeT/Z3j6+yW067yWWdUw==", + "dev": true + }, + "form-data": { + "version": "2.3.3", + "resolved": "https://registry.npmjs.org/form-data/-/form-data-2.3.3.tgz", + "integrity": "sha512-1lLKB2Mu3aGP1Q/2eCOx0fNbRMe7XdwktwOruhfqqd0rIJWwN4Dh+E3hrPSlDCXnSR7UtZ1N38rVXm+6+MEhJQ==", + "dev": true, + "requires": { + "asynckit": "^0.4.0", + "combined-stream": "^1.0.6", + "mime-types": "^2.1.12" + } + }, + "fromentries": { + "version": "1.3.2", + "resolved": "https://registry.npmjs.org/fromentries/-/fromentries-1.3.2.tgz", + "integrity": "sha512-cHEpEQHUg0f8XdtZCc2ZAhrHzKzT0MrFUTcvx+hfxYu7rGMDc5SKoXFh+n4YigxsHXRzc6OrCshdR1bWH6HHyg==", + "dev": true + }, + "fs-exists-cached": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/fs-exists-cached/-/fs-exists-cached-1.0.0.tgz", + "integrity": "sha512-kSxoARUDn4F2RPXX48UXnaFKwVU7Ivd/6qpzZL29MCDmr9sTvybv4gFCp+qaI4fM9m0z9fgz/yJvi56GAz+BZg==", + "dev": true + }, "fs.realpath": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz", - "integrity": "sha1-FQStJSMVjKpA20onh8sBQRmU6k8=" + "integrity": "sha512-OO0pH2lK6a0hZnAdau5ItzHPI6pUlvI7jMVnxUQRtw4owF2wk8lOSabtGDCTP4Ggrg2MbGnWO9X8K1t4+fGMDw==" + }, + "fsevents": { + "version": "2.3.2", + "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.3.2.tgz", + "integrity": "sha512-xiqMQR4xAeHTuB9uWm+fFRcIOgKBMiOBP+eXiyT7jsgVCq1bkVygt00oASowB7EdtpOHaaPgKt812P9ab+DDKA==", + "dev": true, + "optional": true }, "function-bind": { "version": "1.1.1", "resolved": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.1.tgz", "integrity": "sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A==" }, + "function-loop": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/function-loop/-/function-loop-2.0.1.tgz", + "integrity": "sha512-ktIR+O6i/4h+j/ZhZJNdzeI4i9lEPeEK6UPR2EVyTVBqOwcU3Za9xYKLH64ZR9HmcROyRrOkizNyjjtWJzDDkQ==", + "dev": true + }, + "gensync": { + "version": "1.0.0-beta.2", + "resolved": "https://registry.npmjs.org/gensync/-/gensync-1.0.0-beta.2.tgz", + "integrity": "sha512-3hN7NaskYvMDLQY55gnW3NQ+mesEAepTqlg+VEbj7zzqEMBVNhzcGYYeqFo/TlYz6eQiFcp1HcsCZO+nGgS8zg==", + "dev": true + }, + "get-caller-file": { + "version": "2.0.5", + "resolved": "https://registry.npmjs.org/get-caller-file/-/get-caller-file-2.0.5.tgz", + "integrity": "sha512-DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg==", + "dev": true + }, + "get-package-type": { + "version": "0.1.0", + "resolved": "https://registry.npmjs.org/get-package-type/-/get-package-type-0.1.0.tgz", + "integrity": "sha512-pjzuKtY64GYfWizNAJ0fr9VqttZkNiK2iS430LtIHzjBEr6bX8Am2zm4sW4Ro5wjWW5cAlRL1qAMTcXbjNAO2Q==", + "dev": true + }, "getobject": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/getobject/-/getobject-1.0.2.tgz", "integrity": "sha512-2zblDBaFcb3rB4rF77XVnuINOE2h2k/OnqXAiy0IrTxUfV1iFp3la33oAQVY9pCpWU268WFYVt2t71hlMuLsOg==" }, + "getpass": { + "version": "0.1.7", + "resolved": "https://registry.npmjs.org/getpass/-/getpass-0.1.7.tgz", + "integrity": "sha512-0fzj9JxOLfJ+XGLhR8ze3unN0KZCgZwiSSDz168VERjK8Wl8kVSdcu2kspd4s4wtAa1y/qrVRiAA0WclVsu0ng==", + "dev": true, + "requires": { + "assert-plus": "^1.0.0" + } + }, "glob": { "version": "7.1.7", "resolved": "https://registry.npmjs.org/glob/-/glob-7.1.7.tgz", @@ -2169,6 +7545,15 @@ "path-is-absolute": "^1.0.0" } }, + "glob-parent": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.2.tgz", + "integrity": "sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==", + "dev": true, + "requires": { + "is-glob": "^4.0.1" + } + }, "global-modules": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/global-modules/-/global-modules-1.0.0.tgz", @@ -2182,7 +7567,7 @@ "global-prefix": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/global-prefix/-/global-prefix-1.0.2.tgz", - "integrity": "sha1-2/dDxsFJklk8ZVVoy2btMsASLr4=", + "integrity": "sha512-5lsx1NUDHtSjfg0eHlmYvZKv8/nVqX4ckFbM+FrGcQ+04KWcWFo9P5MxPZYSzUvyzmdTbI7Eix8Q4IbELDqzKg==", "requires": { "expand-tilde": "^2.0.2", "homedir-polyfill": "^1.0.1", @@ -2201,11 +7586,17 @@ } } }, + "globals": { + "version": "11.12.0", + "resolved": "https://registry.npmjs.org/globals/-/globals-11.12.0.tgz", + "integrity": "sha512-WOBp/EEGUiIsJSp7wcv/y6MO+lV9UoncWqxuFfm8eBwzWNgyfBd6Gz+IeKQ9jCmyhoH99g15M3T+QaVHFjizVA==", + "dev": true + }, "graceful-fs": { "version": "4.2.10", "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.10.tgz", "integrity": "sha512-9ByhssR2fPVsNZj478qUUbKfmL0+t5BDVyjShtyZZLiK7ZDAArFFfopyOTj0M05wE2tJPisA4iTnnXl2YoPvOA==", - "optional": true + "devOptional": true }, "grunt": { "version": "1.5.3", @@ -2283,21 +7674,26 @@ "grunt-contrib-copy": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/grunt-contrib-copy/-/grunt-contrib-copy-1.0.0.tgz", - "integrity": "sha1-cGDGWB6QS4qw0A8HbgqPbj58NXM=", + "integrity": "sha512-gFRFUB0ZbLcjKb67Magz1yOHGBkyU6uL29hiEW1tdQ9gQt72NuMKIy/kS6dsCbV0cZ0maNCb0s6y+uT1FKU7jA==", "requires": { "chalk": "^1.1.1", "file-sync-cmp": "^0.1.0" }, "dependencies": { + "ansi-regex": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-2.1.1.tgz", + "integrity": "sha512-TIGnTpdo+E3+pCyAluZvtED5p5wCqLdezCyhPZzKPcxvFplEt4i+W7OONCKgeZFT3+y5NZZfOOS/Bdcanm1MYA==" + }, "ansi-styles": { "version": "2.2.1", "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-2.2.1.tgz", - "integrity": "sha1-tDLdM1i2NM914eRmQ2gkBTPB3b4=" + "integrity": "sha512-kmCevFghRiWM7HB5zTPULl4r9bVFSWjz62MhqizDGUrq2NWuNMQyuv4tHHoKJHs69M/MF64lEcHdYIocrdWQYA==" }, "chalk": { "version": "1.1.3", "resolved": "https://registry.npmjs.org/chalk/-/chalk-1.1.3.tgz", - "integrity": "sha1-qBFcVeSnAv5NFQq9OHKCKn4J/Jg=", + "integrity": "sha512-U3lRVLMSlsCfjqYPbLyVv11M9CPW4I728d6TCKMAOJueEeB9/8o+eSsMnxPJD+Q+K909sdESg7C+tIkoH6on1A==", "requires": { "ansi-styles": "^2.2.1", "escape-string-regexp": "^1.0.2", @@ -2306,10 +7702,23 @@ "supports-color": "^2.0.0" } }, + "escape-string-regexp": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", + "integrity": "sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg==" + }, + "strip-ansi": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-3.0.1.tgz", + "integrity": "sha512-VhumSSbBqDTP8p2ZLKj40UjBCV4+v8bUSEpUb4KjRgWk9pbqGF4REFj6KEagidb2f/M6AzC0EmFyDNGaw9OCzg==", + "requires": { + "ansi-regex": "^2.0.0" + } + }, "supports-color": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-2.0.0.tgz", - "integrity": "sha1-U10EXOa2Nj+kARcIRimZXp3zJMc=" + "integrity": "sha512-KKNVtd6pCYgPIKU4cp2733HWYCpplQhddZLBUryaAHou723x+FRzQ5Df824Fj+IyyuiQTRoub4SnIFfIcrp70g==" } } }, @@ -2352,12 +7761,17 @@ "color-name": { "version": "1.1.3", "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz", - "integrity": "sha1-p9BVi9icQveV3UIyj3QIMcpTvCU=" + "integrity": "sha512-72fSenhMw2HZMTVHeCA9KCmpEIbzWiQsjN+BHcBbS9vr1mtt+vJjPdksIBNUmKAW8TFUDPJK5SUU3QhE9NEXDw==" + }, + "escape-string-regexp": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", + "integrity": "sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg==" }, "has-flag": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", - "integrity": "sha1-tdRU3CGZriJWmfNGfloH87lVuv0=" + "integrity": "sha512-sKJf1+ceQBr4SMkvQnBDNDtf4TXpVhVGateu0t918bl30FnbE2m4vNLX+VWe/dpjlb+HugGYzW7uQXH98HPEYw==" }, "supports-color": { "version": "5.5.0", @@ -2380,14 +7794,40 @@ "lodash": "^4.17.21" } }, - "grunt-inline": { - "version": "0.3.7", - "resolved": "https://registry.npmjs.org/grunt-inline/-/grunt-inline-0.3.7.tgz", - "integrity": "sha512-SXUc1YsMxYkKbIOpI2kLHKNyXMEF+3xMEGhpFZRgKXbcAojM4d63RZyKcizMIkHonAr1jJCh/w8g9sDcRm6JtQ==", + "grunt-contrib-nodeunit": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/grunt-contrib-nodeunit/-/grunt-contrib-nodeunit-4.0.0.tgz", + "integrity": "sha512-pLLDrTKfitBn2b1U9ecX+nkECcQ12tsiW58Y0SaZcsQgjljthPs78N5D24Y3b34dD8QKBAEW1J0VgO7cW0QcVQ==", + "dev": true, "requires": { - "clean-css": "1.1.7", - "datauri": "~0.2.0", - "uglify-js": "2.4.1" + "nodeunit-x": "^0.15.0" + } + }, + "grunt-inline": { + "version": "file:plugins/grunt-inline", + "requires": { + "clean-css": "^5.2.4", + "datauri": "^4.1.0", + "grunt": "^1.4.0", + "grunt-contrib-clean": "^2.0.0", + "grunt-contrib-htmlmin": "^3.1.0", + "grunt-contrib-nodeunit": "^4.0.0", + "uglify-js": "^3.15.1" + }, + "dependencies": { + "clean-css": { + "version": "5.3.0", + "resolved": "https://registry.npmjs.org/clean-css/-/clean-css-5.3.0.tgz", + "integrity": "sha512-YYuuxv4H/iNb1Z/5IbMRoxgrzjWGhOEFfd+groZ5dMCVkpENiMZmwspdrzBo9286JjM1gZJPAyL7ZIdzuvu2AQ==", + "requires": { + "source-map": "~0.6.0" + } + }, + "source-map": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", + "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==" + } } }, "grunt-known-options": { @@ -2440,7 +7880,23 @@ "grunt-text-replace": { "version": "0.4.0", "resolved": "https://registry.npmjs.org/grunt-text-replace/-/grunt-text-replace-0.4.0.tgz", - "integrity": "sha1-252c5Z4v5J2id+nbwZXD4Rz7FsI=" + "integrity": "sha512-A4dFGpOaD/TQpeOlDK/zP962X1qG7KcOqPiSXOWOIeAKMzzpoDJYZ8Sz56iazI5+kTqeTa+IaEEl5c4sk+QN+Q==" + }, + "har-schema": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/har-schema/-/har-schema-2.0.0.tgz", + "integrity": "sha512-Oqluz6zhGX8cyRaTQlFMPw80bSJVG2x/cFb8ZPhUILGgHka9SsokCCOQgpveePerqidZOrT14ipqfJb7ILcW5Q==", + "dev": true + }, + "har-validator": { + "version": "5.1.5", + "resolved": "https://registry.npmjs.org/har-validator/-/har-validator-5.1.5.tgz", + "integrity": "sha512-nmT2T0lljbxdQZfspsno9hgrG3Uir6Ks5afism62poxqBM6sDnMEuPmzTq8XN0OEwqKLLdh1jQI3qyE66Nzb3w==", + "dev": true, + "requires": { + "ajv": "^6.12.3", + "har-schema": "^2.0.0" + } }, "has": { "version": "1.0.3", @@ -2453,9 +7909,16 @@ "has-ansi": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/has-ansi/-/has-ansi-2.0.0.tgz", - "integrity": "sha1-NPUEnOHs3ysGSa8+8k5F7TVBbZE=", + "integrity": "sha512-C8vBJ8DwUCx19vhm7urhTuUsr4/IyP6l4VzNQDv+ryHQObW3TTTp9yB68WpYgRe2bbaGuZ/se74IqFeVnMnLZg==", "requires": { "ansi-regex": "^2.0.0" + }, + "dependencies": { + "ansi-regex": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-2.1.1.tgz", + "integrity": "sha512-TIGnTpdo+E3+pCyAluZvtED5p5wCqLdezCyhPZzKPcxvFplEt4i+W7OONCKgeZFT3+y5NZZfOOS/Bdcanm1MYA==" + } } }, "has-flag": { @@ -2463,6 +7926,16 @@ "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==" }, + "hasha": { + "version": "5.2.2", + "resolved": "https://registry.npmjs.org/hasha/-/hasha-5.2.2.tgz", + "integrity": "sha512-Hrp5vIK/xr5SkeN2onO32H0MgNZ0f17HRNH39WfL0SYUNOTZ5Lz1TJ8Pajo/87dYGEFlLMm7mIc/k/s6Bvz9HQ==", + "dev": true, + "requires": { + "is-stream": "^2.0.0", + "type-fest": "^0.8.0" + } + }, "he": { "version": "1.2.0", "resolved": "https://registry.npmjs.org/he/-/he-1.2.0.tgz", @@ -2479,7 +7952,13 @@ "hooker": { "version": "0.2.3", "resolved": "https://registry.npmjs.org/hooker/-/hooker-0.2.3.tgz", - "integrity": "sha1-uDT3I8xKJCqmWWNFnfbZhMXT2Vk=" + "integrity": "sha512-t+UerCsQviSymAInD01Pw+Dn/usmz1sRO+3Zk1+lx8eg+WKpD2ulcwWqHHL0+aseRBr+3+vIhiG1K1JTwaIcTA==" + }, + "html-escaper": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/html-escaper/-/html-escaper-2.0.2.tgz", + "integrity": "sha512-H2iMtd0I4Mt5eYiapRdIDjp+XzelXQ0tFE4JS7YFwFevXXMmOp9myNrUvCg0D6ws8iqkRPBfKHgbwig1SmlLfg==", + "dev": true }, "html-minifier": { "version": "4.0.0", @@ -2493,31 +7972,17 @@ "param-case": "^2.1.1", "relateurl": "^0.2.7", "uglify-js": "^3.5.1" - }, - "dependencies": { - "clean-css": { - "version": "4.2.4", - "resolved": "https://registry.npmjs.org/clean-css/-/clean-css-4.2.4.tgz", - "integrity": "sha512-EJUDT7nDVFDvaQgAo2G/PJvxmp1o/c6iXLbswsBbUFXi1Nr+AjA2cKmfbKDMjMvzEe75g3P6JkaDDAKk96A85A==", - "requires": { - "source-map": "~0.6.0" - } - }, - "commander": { - "version": "2.20.3", - "resolved": "https://registry.npmjs.org/commander/-/commander-2.20.3.tgz", - "integrity": "sha512-GpVkmM8vF2vQUkj2LvZmD35JxeJOLCwJ9cUkugyk2nuhbv3+mJvpLYYt+0+USMxE+oj+ey/lJEnhZw75x/OMcQ==" - }, - "source-map": { - "version": "0.6.1", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", - "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==" - }, - "uglify-js": { - "version": "3.15.3", - "resolved": "https://registry.npmjs.org/uglify-js/-/uglify-js-3.15.3.tgz", - "integrity": "sha512-6iCVm2omGJbsu3JWac+p6kUiOpg3wFO2f8lIXjfEb8RrmLjzog1wTPMmwKB7swfzzqxj9YM+sGUM++u1qN4qJg==" - } + } + }, + "http-signature": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/http-signature/-/http-signature-1.2.0.tgz", + "integrity": "sha512-CAbnr6Rz4CYQkLYUtSNXxQPUH2gK8f3iWexVlsnMeD+GjlsQ0Xsy1cOX+mN3dtxYomRy21CiOzU8Uhw6OwncEQ==", + "dev": true, + "requires": { + "assert-plus": "^1.0.0", + "jsprim": "^1.2.2", + "sshpk": "^1.7.0" } }, "iconv-lite": { @@ -2529,15 +7994,29 @@ } }, "image-size": { - "version": "0.5.5", - "resolved": "https://registry.npmjs.org/image-size/-/image-size-0.5.5.tgz", - "integrity": "sha1-Cd/Uq50g4p6xw+gLiZA3jfnjy5w=", - "optional": true + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/image-size/-/image-size-1.0.0.tgz", + "integrity": "sha512-JLJ6OwBfO1KcA+TvJT+v8gbE6iWbj24LyDNFgFEN0lzegn6cC6a/p3NIDaepMsJjQjlUWqIC7wJv8lBFxPNjcw==", + "requires": { + "queue": "6.0.2" + } + }, + "imurmurhash": { + "version": "0.1.4", + "resolved": "https://registry.npmjs.org/imurmurhash/-/imurmurhash-0.1.4.tgz", + "integrity": "sha512-JmXMZ6wuvDmLiHEml9ykzqO6lwFbof0GG4IkcGaENdCRDDmMVnny7s5HsIgHCbaq0w2MyPhDqkhTUgS2LU2PHA==", + "dev": true + }, + "indent-string": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/indent-string/-/indent-string-4.0.0.tgz", + "integrity": "sha512-EdDDZu4A2OyIK7Lr/2zG+w5jmbuk1DVBnEwREQvBzspBJkCEbRa8GxU1lghYcaGJCnRWibjDXlq779X1/y5xwg==", + "dev": true }, "inflight": { "version": "1.0.6", "resolved": "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz", - "integrity": "sha1-Sb1jMdfQLQwJvJEKEHW6gWW1bfk=", + "integrity": "sha512-k92I/b08q4wvFscXCLvqfsHCrjrF7yiXsQuIVvVE7N82W3+aqpzuUdBbfhWcy/FZR3/4IgflMgKLOsvPDrGCJA==", "requires": { "once": "^1.3.0", "wrappy": "1" @@ -2556,7 +8035,7 @@ "interpret": { "version": "1.1.0", "resolved": "https://registry.npmjs.org/interpret/-/interpret-1.1.0.tgz", - "integrity": "sha1-ftGxQQxqDg94z5XTuEQMY/eLhhQ=" + "integrity": "sha512-CLM8SNMDu7C5psFCn6Wg/tgpj/bKAg7hc2gWqcuR9OD5Ft9PhBpIu8PLicPeis+xDd6YX2ncI8MCA64I9tftIA==" }, "is-absolute": { "version": "1.0.0", @@ -2567,10 +8046,19 @@ "is-windows": "^1.0.1" } }, + "is-binary-path": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/is-binary-path/-/is-binary-path-2.1.0.tgz", + "integrity": "sha512-ZMERYes6pDydyuGidse7OsHxtbI7WVeUEozgR/g7rd0xUimYNlvZRE/K2MgZTjWy725IfelLeVcEM97mmtRGXw==", + "dev": true, + "requires": { + "binary-extensions": "^2.0.0" + } + }, "is-core-module": { - "version": "2.8.1", - "resolved": "https://registry.npmjs.org/is-core-module/-/is-core-module-2.8.1.tgz", - "integrity": "sha512-SdNCUs284hr40hFTFP6l0IfZ/RSrMXF3qgoRHd3/79unUTvrFO/JoXwkGm+5J/Oe3E/b5GsnG330uUNgRpu1PA==", + "version": "2.9.0", + "resolved": "https://registry.npmjs.org/is-core-module/-/is-core-module-2.9.0.tgz", + "integrity": "sha512-+5FPy5PnwmO3lvfMb0AsoPaBG+5KHUI0wYFXOtYPnVVVspTFUuMZNfNaNVRt3FZadstu2c8x23vykRW/NBoU6A==", "requires": { "has": "^1.0.3" } @@ -2578,7 +8066,13 @@ "is-extglob": { "version": "2.1.1", "resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-2.1.1.tgz", - "integrity": "sha1-qIwCU1eR8C7TfHahueqXc8gz+MI=" + "integrity": "sha512-SbKbANkN603Vi4jEZv49LeVJMn4yGwsbzZworEoyEiutsN3nJYdbO36zfhGJ6QEDpOZIFkDtnq5JRxmvl3jsoQ==" + }, + "is-fullwidth-code-point": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", + "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==", + "dev": true }, "is-glob": { "version": "4.0.3", @@ -2609,6 +8103,18 @@ "is-unc-path": "^1.0.0" } }, + "is-stream": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/is-stream/-/is-stream-2.0.1.tgz", + "integrity": "sha512-hFoiJiTl63nn+kstHGBtewWSKnQLpyb155KHheA1l39uvtO9nWIop1p3udqPcUd/xbF1VLMO4n7OI6p7RbngDg==", + "dev": true + }, + "is-typedarray": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-typedarray/-/is-typedarray-1.0.0.tgz", + "integrity": "sha512-cyA56iCMHAh5CdzjJIa4aohJyeO1YbwLi3Jc35MmRU6poroFjIGZzUzupGiRPOjgHg9TLu43xbpwXk523fMxKA==", + "dev": true + }, "is-unc-path": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/is-unc-path/-/is-unc-path-1.0.0.tgz", @@ -2630,12 +8136,166 @@ "isexe": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/isexe/-/isexe-2.0.0.tgz", - "integrity": "sha1-6PvzdNxVb/iUehDcsFctYz8s+hA=" + "integrity": "sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw==" }, "isobject": { "version": "3.0.1", "resolved": "https://registry.npmjs.org/isobject/-/isobject-3.0.1.tgz", - "integrity": "sha1-TkMekrEalzFjaqH5yNHMvP2reN8=" + "integrity": "sha512-WhB9zCku7EGTj/HQQRz5aUQEUeoQZH2bWcltRErOpymJ4boYE6wL9Tbr23krRPSZ+C5zqNSrSw+Cc7sZZ4b7vg==" + }, + "isstream": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/isstream/-/isstream-0.1.2.tgz", + "integrity": "sha512-Yljz7ffyPbrLpLngrMtZ7NduUgVvi6wG9RJ9IUcyCd59YQ911PBJphODUcbOVbqYfxe1wuYf/LJ8PauMRwsM/g==", + "dev": true + }, + "istanbul-lib-coverage": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/istanbul-lib-coverage/-/istanbul-lib-coverage-3.2.0.tgz", + "integrity": "sha512-eOeJ5BHCmHYvQK7xt9GkdHuzuCGS1Y6g9Gvnx3Ym33fz/HpLRYxiS0wHNr+m/MBC8B647Xt608vCDEvhl9c6Mw==", + "dev": true + }, + "istanbul-lib-hook": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/istanbul-lib-hook/-/istanbul-lib-hook-3.0.0.tgz", + "integrity": "sha512-Pt/uge1Q9s+5VAZ+pCo16TYMWPBIl+oaNIjgLQxcX0itS6ueeaA+pEfThZpH8WxhFgCiEb8sAJY6MdUKgiIWaQ==", + "dev": true, + "requires": { + "append-transform": "^2.0.0" + } + }, + "istanbul-lib-instrument": { + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/istanbul-lib-instrument/-/istanbul-lib-instrument-4.0.3.tgz", + "integrity": "sha512-BXgQl9kf4WTCPCCpmFGoJkz/+uhvm7h7PFKUYxh7qarQd3ER33vHG//qaE8eN25l07YqZPpHXU9I09l/RD5aGQ==", + "dev": true, + "requires": { + "@babel/core": "^7.7.5", + "@istanbuljs/schema": "^0.1.2", + "istanbul-lib-coverage": "^3.0.0", + "semver": "^6.3.0" + }, + "dependencies": { + "semver": { + "version": "6.3.0", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", + "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", + "dev": true + } + } + }, + "istanbul-lib-processinfo": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/istanbul-lib-processinfo/-/istanbul-lib-processinfo-2.0.3.tgz", + "integrity": "sha512-NkwHbo3E00oybX6NGJi6ar0B29vxyvNwoC7eJ4G4Yq28UfY758Hgn/heV8VRFhevPED4LXfFz0DQ8z/0kw9zMg==", + "dev": true, + "requires": { + "archy": "^1.0.0", + "cross-spawn": "^7.0.3", + "istanbul-lib-coverage": "^3.2.0", + "p-map": "^3.0.0", + "rimraf": "^3.0.0", + "uuid": "^8.3.2" + } + }, + "istanbul-lib-report": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/istanbul-lib-report/-/istanbul-lib-report-3.0.0.tgz", + "integrity": "sha512-wcdi+uAKzfiGT2abPpKZ0hSU1rGQjUQnLvtY5MpQ7QCTahD3VODhcu4wcfY1YtkGaDD5yuydOLINXsfbus9ROw==", + "dev": true, + "requires": { + "istanbul-lib-coverage": "^3.0.0", + "make-dir": "^3.0.0", + "supports-color": "^7.1.0" + }, + "dependencies": { + "make-dir": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-3.1.0.tgz", + "integrity": "sha512-g3FeP20LNwhALb/6Cz6Dd4F2ngze0jz7tbzrD2wAV+o9FeNHe4rL+yK2md0J/fiSf1sa1ADhXqi5+oVwOM/eGw==", + "dev": true, + "requires": { + "semver": "^6.0.0" + } + }, + "semver": { + "version": "6.3.0", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", + "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", + "dev": true + } + } + }, + "istanbul-lib-source-maps": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/istanbul-lib-source-maps/-/istanbul-lib-source-maps-4.0.1.tgz", + "integrity": "sha512-n3s8EwkdFIJCG3BPKBYvskgXGoy88ARzvegkitk60NxRdwltLOTaH7CUiMRXvwYorl0Q712iEjcWB+fK/MrWVw==", + "dev": true, + "requires": { + "debug": "^4.1.1", + "istanbul-lib-coverage": "^3.0.0", + "source-map": "^0.6.1" + }, + "dependencies": { + "debug": { + "version": "4.3.4", + "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.4.tgz", + "integrity": "sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ==", + "dev": true, + "requires": { + "ms": "2.1.2" + } + }, + "ms": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", + "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==", + "dev": true + }, + "source-map": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", + "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", + "dev": true + } + } + }, + "istanbul-reports": { + "version": "3.1.4", + "resolved": "https://registry.npmjs.org/istanbul-reports/-/istanbul-reports-3.1.4.tgz", + "integrity": "sha512-r1/DshN4KSE7xWEknZLLLLDn5CJybV3nw01VTkp6D5jzLuELlcbudfj/eSQFvrKsJuTVCGnePO7ho82Nw9zzfw==", + "dev": true, + "requires": { + "html-escaper": "^2.0.0", + "istanbul-lib-report": "^3.0.0" + } + }, + "jackspeak": { + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/jackspeak/-/jackspeak-1.4.1.tgz", + "integrity": "sha512-npN8f+M4+IQ8xD3CcWi3U62VQwKlT3Tj4GxbdT/fYTmeogD9eBF9OFdpoFG/VPNoshRjPUijdkp/p2XrzUHaVg==", + "dev": true, + "requires": { + "cliui": "^7.0.4" + } + }, + "jake": { + "version": "10.8.5", + "resolved": "https://registry.npmjs.org/jake/-/jake-10.8.5.tgz", + "integrity": "sha512-sVpxYeuAhWt0OTWITwT98oyV0GsXyMlXCF+3L1SuafBVUIr/uILGRB+NqwkzhgXKvoJpDIpQvqkUALgdmQsQxw==", + "dev": true, + "requires": { + "async": "^3.2.3", + "chalk": "^4.0.2", + "filelist": "^1.0.1", + "minimatch": "^3.0.4" + } + }, + "js-tokens": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/js-tokens/-/js-tokens-4.0.0.tgz", + "integrity": "sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ==", + "dev": true }, "js-yaml": { "version": "3.14.1", @@ -2646,15 +8306,69 @@ "esprima": "^4.0.0" } }, + "jsbn": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/jsbn/-/jsbn-0.1.1.tgz", + "integrity": "sha512-UVU9dibq2JcFWxQPA6KCqj5O42VOmAY3zQUfEKxU0KpTGXwNoCjkX1e13eHNvw/xPynt6pU0rZ1htjWTNTSXsg==", + "dev": true + }, + "jsesc": { + "version": "2.5.2", + "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-2.5.2.tgz", + "integrity": "sha512-OYu7XEzjkCQ3C5Ps3QIZsQfNpqoJyZZA99wd9aWd05NCtC5pWOkShK2mkL6HXQR6/Cy2lbNdPlZBpuQHXE63gA==", + "dev": true + }, + "json-schema": { + "version": "0.4.0", + "resolved": "https://registry.npmjs.org/json-schema/-/json-schema-0.4.0.tgz", + "integrity": "sha512-es94M3nTIfsEPisRafak+HDLfHXnKBhV3vU5eqPcS3flIWqcxJWgXHXiey3YrpaNsanY5ei1VoYEbOzijuq9BA==", + "dev": true + }, + "json-schema-traverse": { + "version": "0.4.1", + "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz", + "integrity": "sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==", + "dev": true + }, + "json-stringify-safe": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/json-stringify-safe/-/json-stringify-safe-5.0.1.tgz", + "integrity": "sha512-ZClg6AaYvamvYEE82d3Iyd3vSSIjQ+odgjaTzRuO3s7toCdFKczob2i0zCh7JE8kWn17yvAWhUVxvqGwUalsRA==", + "dev": true + }, + "json5": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/json5/-/json5-2.2.1.tgz", + "integrity": "sha512-1hqLFMSrGHRHxav9q9gNjJ5EXznIxGVO09xQRrwplcS8qs28pZ8s8hupZAmqDwZUmVZ2Qb2jnyPOWcDH8m8dlA==", + "dev": true + }, + "jsprim": { + "version": "1.4.2", + "resolved": "https://registry.npmjs.org/jsprim/-/jsprim-1.4.2.tgz", + "integrity": "sha512-P2bSOMAc/ciLz6DzgjVlGJP9+BrJWu5UDGK70C2iweC5QBIeFf0ZXRvGjEj2uYgrY2MkAAhsSWHDWlFtEroZWw==", + "dev": true, + "requires": { + "assert-plus": "1.0.0", + "extsprintf": "1.3.0", + "json-schema": "0.4.0", + "verror": "1.10.0" + } + }, "kind-of": { "version": "6.0.3", "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-6.0.3.tgz", "integrity": "sha512-dcS1ul+9tmeD95T+x28/ehLgd9mENa3LsvDTtzm3vyBEO7RPptvAD+t44WVXaUjTBRcrpFeFlC8WCruUR456hw==" }, + "lcov-parse": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/lcov-parse/-/lcov-parse-1.0.0.tgz", + "integrity": "sha512-aprLII/vPzuQvYZnDRU78Fns9I2Ag3gi4Ipga/hxnVMCZC8DnR2nI7XBqrPoywGfxqIx/DgarGvDJZAD3YBTgQ==", + "dev": true + }, "less": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/less/-/less-4.1.2.tgz", - "integrity": "sha512-EoQp/Et7OSOVu0aJknJOtlXZsnr8XE8KwuzTHOLeVSEx8pVWUICc8Q0VYRHgzyjX78nMEyC/oztWFbgyhtNfDA==", + "version": "4.1.3", + "resolved": "https://registry.npmjs.org/less/-/less-4.1.3.tgz", + "integrity": "sha512-w16Xk/Ta9Hhyei0Gpz9m7VS8F28nieJaL/VyShID7cYvP6IL5oHeL6p4TXSDJqZE/lNv0oJ2pGVjJsRkfwm5FA==", "requires": { "copy-anything": "^2.0.1", "errno": "^0.1.1", @@ -2662,12 +8376,18 @@ "image-size": "~0.5.0", "make-dir": "^2.1.0", "mime": "^1.4.1", - "needle": "^2.5.2", + "needle": "^3.1.0", "parse-node-version": "^1.0.1", "source-map": "~0.6.0", "tslib": "^2.3.0" }, "dependencies": { + "image-size": { + "version": "0.5.5", + "resolved": "https://registry.npmjs.org/image-size/-/image-size-0.5.5.tgz", + "integrity": "sha512-6TDAlDPZxUFCv+fuOkIoXT/V/f3Qbq8e37p+YOiYrUv3v9cc3/6x78VdfPgFVaB9dZYeLUfKgHRebpkm/oP2VQ==", + "optional": true + }, "source-map": { "version": "0.6.1", "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", @@ -2676,6 +8396,27 @@ } } }, + "libtap": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/libtap/-/libtap-1.4.0.tgz", + "integrity": "sha512-STLFynswQ2A6W14JkabgGetBNk6INL1REgJ9UeNKw5llXroC2cGLgKTqavv0sl8OLVztLLipVKMcQ7yeUcqpmg==", + "dev": true, + "requires": { + "async-hook-domain": "^2.0.4", + "bind-obj-methods": "^3.0.0", + "diff": "^4.0.2", + "function-loop": "^2.0.1", + "minipass": "^3.1.5", + "own-or": "^1.0.0", + "own-or-env": "^1.0.2", + "signal-exit": "^3.0.4", + "stack-utils": "^2.0.4", + "tap-parser": "^11.0.0", + "tap-yaml": "^1.0.0", + "tcompare": "^5.0.6", + "trivial-deferred": "^1.0.1" + } + }, "liftup": { "version": "3.0.1", "resolved": "https://registry.npmjs.org/liftup/-/liftup-3.0.1.tgz", @@ -2704,15 +8445,36 @@ } } }, + "locate-path": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-5.0.0.tgz", + "integrity": "sha512-t7hw9pI+WvuwNJXwk5zVHpyhIqzg2qTlklJOf0mVxGSbe3Fp2VieZcduNYjaLDoy6p9uGpQEGWG87WpMKlNq8g==", + "dev": true, + "requires": { + "p-locate": "^4.1.0" + } + }, "lodash": { "version": "4.17.21", "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.21.tgz", "integrity": "sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg==" }, + "lodash.flattendeep": { + "version": "4.4.0", + "resolved": "https://registry.npmjs.org/lodash.flattendeep/-/lodash.flattendeep-4.4.0.tgz", + "integrity": "sha512-uHaJFihxmJcEX3kT4I23ABqKKalJ/zDrDg0lsFtc1h+3uw49SIJ5beyhx5ExVRti3AvKoOJngIj7xz3oylPdWQ==", + "dev": true + }, + "log-driver": { + "version": "1.2.7", + "resolved": "https://registry.npmjs.org/log-driver/-/log-driver-1.2.7.tgz", + "integrity": "sha512-U7KCmLdqsGHBLeWqYlFA0V0Sl6P08EE1ZrmA9cxjUE0WVqT9qnyVDPz1kzpFEP0jdJuFnasWIfSd7fsaNXkpbg==", + "dev": true + }, "lower-case": { "version": "1.1.4", "resolved": "https://registry.npmjs.org/lower-case/-/lower-case-1.1.4.tgz", - "integrity": "sha1-miyr0bno4K6ZOkv31YdcOcQujqw=" + "integrity": "sha512-2Fgx1Ycm599x+WGpIYwJOvsjmXFzTSc34IwDWALRA/8AopUKAVPwfJ+h5+f85BCp0PWmmJcWzEpxOpoXycMpdA==" }, "make-dir": { "version": "2.1.0", @@ -2735,7 +8497,7 @@ "map-cache": { "version": "0.2.2", "resolved": "https://registry.npmjs.org/map-cache/-/map-cache-0.2.2.tgz", - "integrity": "sha1-wyq9C9ZSXZsFFkW7TyasXcmKDb8=" + "integrity": "sha512-8y/eV9QQZCiyn1SprXSrCmqJN0yNRATe+PO8ztwqrvrbdRLA3eYJF0yaR0YayLWkMbsQSKWS9N2gPcGEc4UsZg==" }, "micromatch": { "version": "4.0.5", @@ -2752,6 +8514,21 @@ "integrity": "sha512-x0Vn8spI+wuJ1O6S7gnbaQg8Pxh4NNHb7KSINmEWKiPE4RKOplvijn+NkmYmmRgP68mc70j2EbeTFRsrswaQeg==", "optional": true }, + "mime-db": { + "version": "1.52.0", + "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.52.0.tgz", + "integrity": "sha512-sPU4uV7dYlvtWJxwwxHD0PuihVNiE7TyAbQ5SWxDCB9mUYvOgroQOwYQQOKPJ8CIbE+1ETVlOoK1UC2nU3gYvg==", + "dev": true + }, + "mime-types": { + "version": "2.1.35", + "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.35.tgz", + "integrity": "sha512-ZDY+bPm5zTTF+YpCrAU9nK0UgICYPT0QtT1NZWFv4s++TNkcgVaT0g6+4R2uI4MjQjzysHB1zxuWL50hzaeXiw==", + "dev": true, + "requires": { + "mime-db": "1.52.0" + } + }, "mimer": { "version": "2.0.2", "resolved": "https://registry.npmjs.org/mimer/-/mimer-2.0.2.tgz", @@ -2765,6 +8542,21 @@ "brace-expansion": "^1.1.7" } }, + "minimist": { + "version": "1.2.6", + "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.6.tgz", + "integrity": "sha512-Jsjnk4bw3YJqYzbdyBiNsPWHPfO++UGG749Cxs6peCu5Xg4nrena6OVxOYxrQTqww0Jmwt+Ref8rggumkTLz9Q==", + "dev": true + }, + "minipass": { + "version": "3.3.4", + "resolved": "https://registry.npmjs.org/minipass/-/minipass-3.3.4.tgz", + "integrity": "sha512-I9WPbWHCGu8W+6k1ZiGpPu0GkoKBeorkfKNuAFBNS1HNFJvke82sxvI5bzcCNpWPorkOO5QQ+zomzzwRxejXiw==", + "dev": true, + "requires": { + "yallist": "^4.0.0" + } + }, "mkdirp": { "version": "1.0.4", "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-1.0.4.tgz", @@ -2777,14 +8569,25 @@ "optional": true }, "needle": { - "version": "2.9.1", - "resolved": "https://registry.npmjs.org/needle/-/needle-2.9.1.tgz", - "integrity": "sha512-6R9fqJ5Zcmf+uYaFgdIHmLwNldn5HbK8L5ybn7Uz+ylX/rnOsSp1AHcvQSrCaFN+qNM1wpymHqD7mVasEOlHGQ==", + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/needle/-/needle-3.1.0.tgz", + "integrity": "sha512-gCE9weDhjVGCRqS8dwDR/D3GTAeyXLXuqp7I8EzH6DllZGXSUyxuqqLh+YX9rMAWaaTFyVAg6rHGL25dqvczKw==", "optional": true, "requires": { "debug": "^3.2.6", - "iconv-lite": "^0.4.4", + "iconv-lite": "^0.6.3", "sax": "^1.2.4" + }, + "dependencies": { + "iconv-lite": { + "version": "0.6.3", + "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.6.3.tgz", + "integrity": "sha512-4fCk79wshMdzMp2rH06qWrJE4iolqLhCUH+OiuIgU++RB0+94NlDL81atO7GX55uUKueo0txHNtvEyI6D7WdMw==", + "optional": true, + "requires": { + "safer-buffer": ">= 2.1.2 < 3.0.0" + } + } } }, "no-case": { @@ -2795,18 +8598,107 @@ "lower-case": "^1.1.1" } }, + "node-preload": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/node-preload/-/node-preload-0.2.1.tgz", + "integrity": "sha512-RM5oyBy45cLEoHqCeh+MNuFAxO0vTFBLskvQbOKnEE7YTTSN4tbN8QWDIPQ6L+WvKsB/qLEGpYe2ZZ9d4W9OIQ==", + "dev": true, + "requires": { + "process-on-spawn": "^1.0.0" + } + }, + "node-releases": { + "version": "2.0.5", + "resolved": "https://registry.npmjs.org/node-releases/-/node-releases-2.0.5.tgz", + "integrity": "sha512-U9h1NLROZTq9uE1SNffn6WuPDg8icmi3ns4rEl/oTfIle4iLjTliCzgTsbaIFMq/Xn078/lfY/BL0GWZ+psK4Q==", + "dev": true + }, + "nodeunit-x": { + "version": "0.15.0", + "resolved": "https://registry.npmjs.org/nodeunit-x/-/nodeunit-x-0.15.0.tgz", + "integrity": "sha512-g3XCZ3Gh1Fxr9NPPo0PtmEooZ2jSJF+tP0DPtqCZmFA22uQ0N2clAew6+GIAIMnjH4eX9BS0ixxpb45IAYHnVA==", + "dev": true, + "requires": { + "ejs": "^3.1.6", + "tap": "^15.0.10" + } + }, "nopt": { "version": "3.0.6", "resolved": "https://registry.npmjs.org/nopt/-/nopt-3.0.6.tgz", - "integrity": "sha1-xkZdvwirzU2zWTF/eaxopkayj/k=", + "integrity": "sha512-4GUt3kSEYmk4ITxzB/b9vaIDfUVWN/Ml1Fwl11IlnIG2iaJ9O6WXZ9SrYM9NLI8OCBieN2Y8SWC2oJV0RQ7qYg==", "requires": { "abbrev": "1" } }, + "normalize-path": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-3.0.0.tgz", + "integrity": "sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==", + "dev": true + }, + "nyc": { + "version": "15.1.0", + "resolved": "https://registry.npmjs.org/nyc/-/nyc-15.1.0.tgz", + "integrity": "sha512-jMW04n9SxKdKi1ZMGhvUTHBN0EICCRkHemEoE5jm6mTYcqcdas0ATzgUgejlQUHMvpnOZqGB5Xxsv9KxJW1j8A==", + "dev": true, + "requires": { + "@istanbuljs/load-nyc-config": "^1.0.0", + "@istanbuljs/schema": "^0.1.2", + "caching-transform": "^4.0.0", + "convert-source-map": "^1.7.0", + "decamelize": "^1.2.0", + "find-cache-dir": "^3.2.0", + "find-up": "^4.1.0", + "foreground-child": "^2.0.0", + "get-package-type": "^0.1.0", + "glob": "^7.1.6", + "istanbul-lib-coverage": "^3.0.0", + "istanbul-lib-hook": "^3.0.0", + "istanbul-lib-instrument": "^4.0.0", + "istanbul-lib-processinfo": "^2.0.2", + "istanbul-lib-report": "^3.0.0", + "istanbul-lib-source-maps": "^4.0.0", + "istanbul-reports": "^3.0.2", + "make-dir": "^3.0.0", + "node-preload": "^0.2.1", + "p-map": "^3.0.0", + "process-on-spawn": "^1.0.0", + "resolve-from": "^5.0.0", + "rimraf": "^3.0.0", + "signal-exit": "^3.0.2", + "spawn-wrap": "^2.0.0", + "test-exclude": "^6.0.0", + "yargs": "^15.0.2" + }, + "dependencies": { + "make-dir": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-3.1.0.tgz", + "integrity": "sha512-g3FeP20LNwhALb/6Cz6Dd4F2ngze0jz7tbzrD2wAV+o9FeNHe4rL+yK2md0J/fiSf1sa1ADhXqi5+oVwOM/eGw==", + "dev": true, + "requires": { + "semver": "^6.0.0" + } + }, + "semver": { + "version": "6.3.0", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", + "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", + "dev": true + } + } + }, + "oauth-sign": { + "version": "0.9.0", + "resolved": "https://registry.npmjs.org/oauth-sign/-/oauth-sign-0.9.0.tgz", + "integrity": "sha512-fexhUFFPTGV8ybAtSIGbV6gOkSv8UtRbDBnAyLQw4QPKkgNlsH2ByPGtMUqdWkos6YCRmAqViwgZrJc/mRDzZQ==", + "dev": true + }, "object.defaults": { "version": "1.1.0", "resolved": "https://registry.npmjs.org/object.defaults/-/object.defaults-1.1.0.tgz", - "integrity": "sha1-On+GgzS0B96gbaFtiNXNKeQ1/s8=", + "integrity": "sha512-c/K0mw/F11k4dEUBMW8naXUuBuhxRCfG7W+yFy8EcijU/rSmazOUd1XAEEe6bC0OuXY4HUKjTJv7xbxIMqdxrA==", "requires": { "array-each": "^1.0.1", "array-slice": "^1.0.0", @@ -2817,7 +8709,7 @@ "object.map": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/object.map/-/object.map-1.0.1.tgz", - "integrity": "sha1-z4Plncj8wK1fQlDh94s7gb2AHTc=", + "integrity": "sha512-3+mAJu2PLfnSVGHwIWubpOFLscJANBKuB/6A4CxBstc4aqwQY0FWcsppuy4jU5GSB95yES5JHSI+33AWuS4k6w==", "requires": { "for-own": "^1.0.0", "make-iterator": "^1.0.0" @@ -2826,7 +8718,7 @@ "object.pick": { "version": "1.3.0", "resolved": "https://registry.npmjs.org/object.pick/-/object.pick-1.3.0.tgz", - "integrity": "sha1-h6EKxMFpS9Lhy/U1kaZhQftd10c=", + "integrity": "sha512-tqa/UMy/CCoYmj+H5qc07qvSL9dqcs/WZENZ1JbtWBlATP+iVOe778gE6MSijnyCnORzDuX6hU+LA4SZ09YjFQ==", "requires": { "isobject": "^3.0.1" } @@ -2834,28 +8726,26 @@ "once": { "version": "1.4.0", "resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz", - "integrity": "sha1-WDsap3WWHUsROsF9nFC6753Xa9E=", + "integrity": "sha512-lNaJgI+2Q5URQBkccEKHTQOPaXdUxnZZElQTZY0MFUAuaEqe1E+Nyvgdz/aIyNi6Z9MzO5dv1H8n58/GELp3+w==", "requires": { "wrappy": "1" } }, - "optimist": { - "version": "0.3.7", - "resolved": "https://registry.npmjs.org/optimist/-/optimist-0.3.7.tgz", - "integrity": "sha1-yQlBrVnkJzMokjB00s8ufLxuwNk=", - "requires": { - "wordwrap": "~0.0.2" - } + "opener": { + "version": "1.5.2", + "resolved": "https://registry.npmjs.org/opener/-/opener-1.5.2.tgz", + "integrity": "sha512-ur5UIdyw5Y7yEj9wLzhqXiy6GZ3Mwx0yGI+5sMn2r0N0v3cKJvUmFH5yPP+WXh9e0xfyzyJX95D8l088DNFj7A==", + "dev": true }, "os-homedir": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/os-homedir/-/os-homedir-1.0.2.tgz", - "integrity": "sha1-/7xJiDNuDoM94MFox+8VISGqf7M=" + "integrity": "sha512-B5JU3cabzk8c67mRRd3ECmROafjYMXbuzlwtqdM8IbS8ktlTix8aFGb2bAGKrSRIlnfKwovGUUr72JUPyOb6kQ==" }, "os-tmpdir": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/os-tmpdir/-/os-tmpdir-1.0.2.tgz", - "integrity": "sha1-u+Z0BseaqFxc/sdm/lc0VV36EnQ=" + "integrity": "sha512-D2FR03Vir7FIu45XBY20mTb+/ZSWB00sjU9jdQXt83gDrI4Ztz5Fs7/yy74g2N5SVQY4xY1qDr4rNddwYRVX0g==" }, "osenv": { "version": "0.1.5", @@ -2866,10 +8756,70 @@ "os-tmpdir": "^1.0.0" } }, + "own-or": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/own-or/-/own-or-1.0.0.tgz", + "integrity": "sha512-NfZr5+Tdf6MB8UI9GLvKRs4cXY8/yB0w3xtt84xFdWy8hkGjn+JFc60VhzS/hFRfbyxFcGYMTjnF4Me+RbbqrA==", + "dev": true + }, + "own-or-env": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/own-or-env/-/own-or-env-1.0.2.tgz", + "integrity": "sha512-NQ7v0fliWtK7Lkb+WdFqe6ky9XAzYmlkXthQrBbzlYbmFKoAYbDDcwmOm6q8kOuwSRXW8bdL5ORksploUJmWgw==", + "dev": true, + "requires": { + "own-or": "^1.0.0" + } + }, + "p-limit": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.3.0.tgz", + "integrity": "sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w==", + "dev": true, + "requires": { + "p-try": "^2.0.0" + } + }, + "p-locate": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-4.1.0.tgz", + "integrity": "sha512-R79ZZ/0wAxKGu3oYMlz8jy/kbhsNrS7SKZ7PxEHBgJ5+F2mtFW2fK2cOtBh1cHYkQsbzFV7I+EoRKe6Yt0oK7A==", + "dev": true, + "requires": { + "p-limit": "^2.2.0" + } + }, + "p-map": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/p-map/-/p-map-3.0.0.tgz", + "integrity": "sha512-d3qXVTF/s+W+CdJ5A29wywV2n8CQQYahlgz2bFiA+4eVNJbHJodPZ+/gXwPGh0bOqA+j8S+6+ckmvLGPk1QpxQ==", + "dev": true, + "requires": { + "aggregate-error": "^3.0.0" + } + }, + "p-try": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/p-try/-/p-try-2.2.0.tgz", + "integrity": "sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ==", + "dev": true + }, + "package-hash": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/package-hash/-/package-hash-4.0.0.tgz", + "integrity": "sha512-whdkPIooSu/bASggZ96BWVvZTRMOFxnyUG5PnTSGKoJE2gd5mbVNmR2Nj20QFzxYYgAXpoqC+AiXzl+UMRh7zQ==", + "dev": true, + "requires": { + "graceful-fs": "^4.1.15", + "hasha": "^5.0.0", + "lodash.flattendeep": "^4.4.0", + "release-zalgo": "^1.0.0" + } + }, "param-case": { "version": "2.1.1", "resolved": "https://registry.npmjs.org/param-case/-/param-case-2.1.1.tgz", - "integrity": "sha1-35T9jPZTHs915r75oIWPvHK+Ikc=", + "integrity": "sha512-eQE845L6ot89sk2N8liD8HAuH4ca6Vvr7VWAWwt7+kvvG5aBcPmmphQ68JsEG2qa9n1TykS2DLeMt363AAH8/w==", "requires": { "no-case": "^2.2.0" } @@ -2877,7 +8827,7 @@ "parse-filepath": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/parse-filepath/-/parse-filepath-1.0.2.tgz", - "integrity": "sha1-pjISf1Oq89FYdvWHLz/6x2PWyJE=", + "integrity": "sha512-FwdRXKCohSVeXqwtYonZTXtbGJKrn+HNyWDYVcp5yuJlesTwNH4rsmRZ+GrKAPJ5bLpRxESMeS+Rl0VCHRvB2Q==", "requires": { "is-absolute": "^1.0.0", "map-cache": "^0.2.0", @@ -2892,12 +8842,24 @@ "parse-passwd": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/parse-passwd/-/parse-passwd-1.0.0.tgz", - "integrity": "sha1-bVuTSkVpk7I9N/QKOC1vFmao5cY=" + "integrity": "sha512-1Y1A//QUXEZK7YKz+rD9WydcE1+EuPr6ZBgKecAB8tmoW6UFv0NREVJe1p+jRxtThkcbbKkfwIbWJe/IeE6m2Q==" + }, + "path-exists": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-4.0.0.tgz", + "integrity": "sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==", + "dev": true }, "path-is-absolute": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz", - "integrity": "sha1-F0uSaHNVNP+8es5r9TpanhtcX18=" + "integrity": "sha512-AVbw3UJ2e9bq64vSaS9Am0fje1Pa8pbGqTTsmXfaIiMpnr5DlDhfJOuLj9Sf95ZPVDAUerDfEk88MPmPe7UCQg==" + }, + "path-key": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/path-key/-/path-key-3.1.1.tgz", + "integrity": "sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q==", + "dev": true }, "path-parse": { "version": "1.0.7", @@ -2907,7 +8869,7 @@ "path-root": { "version": "0.1.1", "resolved": "https://registry.npmjs.org/path-root/-/path-root-0.1.1.tgz", - "integrity": "sha1-mkpoFMrBwM1zNgqV8yCDyOpHRbc=", + "integrity": "sha512-QLcPegTHF11axjfojBIoDygmS2E3Lf+8+jI6wOVmNVenrKSo3mFdSGiIgdSHenczw3wPtlVMQaFVwGmM7BJdtg==", "requires": { "path-root-regex": "^0.1.0" } @@ -2915,7 +8877,19 @@ "path-root-regex": { "version": "0.1.2", "resolved": "https://registry.npmjs.org/path-root-regex/-/path-root-regex-0.1.2.tgz", - "integrity": "sha1-v8zcjfWxLcUsi0PsONGNcsBLqW0=" + "integrity": "sha512-4GlJ6rZDhQZFE0DPVKh0e9jmZ5egZfxTkp7bcRDuPlJXbAwhxcl2dINPUAsjLdejqaLsCeg8axcLjIbvBjN4pQ==" + }, + "performance-now": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/performance-now/-/performance-now-2.1.0.tgz", + "integrity": "sha512-7EAHlyLHI56VEIdK57uwHdHKIaAGbnXPiw0yWbarQZOKaKpvUIgW0jWRVLiatnM+XXlSwsanIBH/hzGMJulMow==", + "dev": true + }, + "picocolors": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-1.0.0.tgz", + "integrity": "sha512-1fygroTLlHu66zi26VoTDv8yRgm0Fccecssto+MhsZ0D/DGW2sm8E8AjW7NU5VVTRt5GxbeZ5qBuJr+HyLYkjQ==", + "dev": true }, "picomatch": { "version": "2.3.1", @@ -2928,17 +8902,70 @@ "integrity": "sha512-uB80kBFb/tfd68bVleG9T5GGsGPjJrLAUpR5PZIrhBnIaRTQRjqdJSsIKkOP6OAIFbj7GOrcudc5pNjZ+geV2g==", "optional": true }, + "pkg-dir": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/pkg-dir/-/pkg-dir-4.2.0.tgz", + "integrity": "sha512-HRDzbaKjC+AOWVXxAU/x54COGeIv9eb+6CkDSQoNTt4XyWoIJvuPsXizxu/Fr23EiekbtZwmh1IcIG/l/a10GQ==", + "dev": true, + "requires": { + "find-up": "^4.0.0" + } + }, "pretty-bytes": { "version": "5.6.0", "resolved": "https://registry.npmjs.org/pretty-bytes/-/pretty-bytes-5.6.0.tgz", "integrity": "sha512-FFw039TmrBqFK8ma/7OL3sDz/VytdtJr044/QUJtH0wK9lb9jLq9tJyIxUwtQJHwar2BqtiA4iCWSwo9JLkzFg==" }, + "process-on-spawn": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/process-on-spawn/-/process-on-spawn-1.0.0.tgz", + "integrity": "sha512-1WsPDsUSMmZH5LeMLegqkPDrsGgsWwk1Exipy2hvB0o/F0ASzbpIctSCcZIK1ykJvtTJULEH+20WOFjMvGnCTg==", + "dev": true, + "requires": { + "fromentries": "^1.2.0" + } + }, "prr": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/prr/-/prr-1.0.1.tgz", - "integrity": "sha1-0/wRS6BplaRexok/SEzrHXj19HY=", + "integrity": "sha512-yPw4Sng1gWghHQWj0B3ZggWUm4qVbPwPFcRG8KyxiU7J2OHFSoEHKS+EZ3fv5l1t9CyCiop6l/ZYeWbrgoQejw==", "optional": true }, + "psl": { + "version": "1.8.0", + "resolved": "https://registry.npmjs.org/psl/-/psl-1.8.0.tgz", + "integrity": "sha512-RIdOzyoavK+hA18OGGWDqUTsCLhtA7IcZ/6NCs4fFJaHBDab+pDDmDIByWFRQJq2Cd7r1OoQxBGKOaztq+hjIQ==", + "dev": true + }, + "punycode": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/punycode/-/punycode-2.1.1.tgz", + "integrity": "sha512-XRsRjdf+j5ml+y/6GKHPZbrF/8p2Yga0JPtdqTIY2Xe5ohJPD9saDJJLPvp9+NSBprVvevdXZybnj2cv8OEd0A==", + "dev": true + }, + "qs": { + "version": "6.5.3", + "resolved": "https://registry.npmjs.org/qs/-/qs-6.5.3.tgz", + "integrity": "sha512-qxXIEh4pCGfHICj1mAJQ2/2XVZkjCDTcEgfoSQxc/fYivUZxTkk7L3bDBJSoNrEzXI17oUO5Dp07ktqE5KzczA==", + "dev": true + }, + "queue": { + "version": "6.0.2", + "resolved": "https://registry.npmjs.org/queue/-/queue-6.0.2.tgz", + "integrity": "sha512-iHZWu+q3IdFZFX36ro/lKBkSvfkztY5Y7HMiPlOUjhupPcG2JMfst2KKEpu5XndviX/3UhFbRngUPNKtgvtZiA==", + "requires": { + "inherits": "~2.0.3" + } + }, + "readdirp": { + "version": "3.6.0", + "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-3.6.0.tgz", + "integrity": "sha512-hOS089on8RduqdbhvQ5Z37A0ESjsqz6qnRcffsMU3495FuTdqSm+7bhJ29JvIOsBDEEnan5DPu9t3To9VRlMzA==", + "dev": true, + "requires": { + "picomatch": "^2.2.1" + } + }, "rechoir": { "version": "0.7.1", "resolved": "https://registry.npmjs.org/rechoir/-/rechoir-0.7.1.tgz", @@ -2950,14 +8977,71 @@ "relateurl": { "version": "0.2.7", "resolved": "https://registry.npmjs.org/relateurl/-/relateurl-0.2.7.tgz", - "integrity": "sha1-VNvzd+UUQKypCkzSdGANP/LYiKk=" + "integrity": "sha512-G08Dxvm4iDN3MLM0EsP62EDV9IuhXPR6blNz6Utcp7zyV3tr4HVNINt6MpaRWbxoOHT3Q7YN2P+jaHX8vUbgog==" + }, + "release-zalgo": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/release-zalgo/-/release-zalgo-1.0.0.tgz", + "integrity": "sha512-gUAyHVHPPC5wdqX/LG4LWtRYtgjxyX78oanFNTMMyFEfOqdC54s3eE82imuWKbOeqYht2CrNf64Qb8vgmmtZGA==", + "dev": true, + "requires": { + "es6-error": "^4.0.1" + } + }, + "request": { + "version": "2.88.2", + "resolved": "https://registry.npmjs.org/request/-/request-2.88.2.tgz", + "integrity": "sha512-MsvtOrfG9ZcrOwAW+Qi+F6HbD0CWXEh9ou77uOb7FM2WPhwT7smM833PzanhJLsgXjN89Ir6V2PczXNnMpwKhw==", + "dev": true, + "requires": { + "aws-sign2": "~0.7.0", + "aws4": "^1.8.0", + "caseless": "~0.12.0", + "combined-stream": "~1.0.6", + "extend": "~3.0.2", + "forever-agent": "~0.6.1", + "form-data": "~2.3.2", + "har-validator": "~5.1.3", + "http-signature": "~1.2.0", + "is-typedarray": "~1.0.0", + "isstream": "~0.1.2", + "json-stringify-safe": "~5.0.1", + "mime-types": "~2.1.19", + "oauth-sign": "~0.9.0", + "performance-now": "^2.1.0", + "qs": "~6.5.2", + "safe-buffer": "^5.1.2", + "tough-cookie": "~2.5.0", + "tunnel-agent": "^0.6.0", + "uuid": "^3.3.2" + }, + "dependencies": { + "uuid": { + "version": "3.4.0", + "resolved": "https://registry.npmjs.org/uuid/-/uuid-3.4.0.tgz", + "integrity": "sha512-HjSDRw6gZE5JMggctHBcjVak08+KEVhSIiDzFnT9S9aegmp85S/bReBVTb4QTFaRNptJ9kuYaNhnbNEOkbKb/A==", + "dev": true + } + } + }, + "require-directory": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/require-directory/-/require-directory-2.1.1.tgz", + "integrity": "sha512-fGxEI7+wsG9xrvdjsrlmL22OMTTiHRwAMroiEeMgq8gzoLC/PQr7RsRDSTLUg/bZAZtF+TVIkHc6/4RIKrui+Q==", + "dev": true + }, + "require-main-filename": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/require-main-filename/-/require-main-filename-2.0.0.tgz", + "integrity": "sha512-NKN5kMDylKuldxYLSUfrbo5Tuzh4hd+2E8NPPX02mZtn1VuREQToYe/ZdlJy+J3uCpfaiGF05e7B8W0iXbQHmg==", + "dev": true }, "resolve": { - "version": "1.22.0", - "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.22.0.tgz", - "integrity": "sha512-Hhtrw0nLeSrFQ7phPp4OOcVjLPIeMnRlr5mcnVuMe7M/7eBn98A3hmFRLoFo3DLZkivSYwhRUJTyPyWAk56WLw==", + "version": "1.22.1", + "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.22.1.tgz", + "integrity": "sha512-nBpuuYuY5jFsli/JIs1oldw6fOQCBioohqWZg/2hiaOybXOft4lonv85uDOKXdf8rhyK159cxU5cDcK/NKk8zw==", "requires": { - "is-core-module": "^2.8.1", + "is-core-module": "^2.9.0", "path-parse": "^1.0.7", "supports-preserve-symlinks-flag": "^1.0.0" } @@ -2965,12 +9049,18 @@ "resolve-dir": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/resolve-dir/-/resolve-dir-1.0.1.tgz", - "integrity": "sha1-eaQGRMNivoLybv/nOcm7U4IEb0M=", + "integrity": "sha512-R7uiTjECzvOsWSfdM0QKFNBVFcK27aHOUwdvK53BcW8zqnGdYp0Fbj82cy54+2A4P2tFM22J5kRfe1R+lM/1yg==", "requires": { "expand-tilde": "^2.0.0", "global-modules": "^1.0.0" } }, + "resolve-from": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-5.0.0.tgz", + "integrity": "sha512-qYg9KP24dD5qka9J47d0aVky0N+b4fTU89LN9iDnjB5waksiC49rvMB0PrUJQGoTmH50XPiqOvAjDfaijGxYZw==", + "dev": true + }, "rimraf": { "version": "3.0.2", "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-3.0.2.tgz", @@ -2979,6 +9069,12 @@ "glob": "^7.1.3" } }, + "safe-buffer": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", + "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==", + "dev": true + }, "safer-buffer": { "version": "2.1.2", "resolved": "https://registry.npmjs.org/safer-buffer/-/safer-buffer-2.1.2.tgz", @@ -2996,10 +9092,37 @@ "integrity": "sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==", "optional": true }, + "set-blocking": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/set-blocking/-/set-blocking-2.0.0.tgz", + "integrity": "sha512-KiKBS8AnWGEyLzofFfmvKwpdPzqiy16LvQfK3yv/fVH7Bj13/wl3JSR1J+rfgRE9q7xUJK4qvgS8raSOeLUehw==", + "dev": true + }, + "shebang-command": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/shebang-command/-/shebang-command-2.0.0.tgz", + "integrity": "sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA==", + "dev": true, + "requires": { + "shebang-regex": "^3.0.0" + } + }, + "shebang-regex": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/shebang-regex/-/shebang-regex-3.0.0.tgz", + "integrity": "sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==", + "dev": true + }, + "signal-exit": { + "version": "3.0.7", + "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.7.tgz", + "integrity": "sha512-wnD2ZE+l+SPC/uoS0vXeE9L1+0wuaMqKlfz9AMUo38JsyLSBWSFcHR1Rri62LZc12vLr1gb3jl7iwQhgwpAbGQ==", + "dev": true + }, "source-map": { "version": "0.5.7", "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.5.7.tgz", - "integrity": "sha1-igOdLRAh0i0eoUyA2OpGi6LvP8w=" + "integrity": "sha512-LbrmJOMUSdEVxIKvdcJzQC+nQhe8FUZQTXQy6+I75skNgn3OoQ0DZA8YnFa7gp8tqtL3KPf1kmo0R5DoApeSGQ==" }, "source-map-support": { "version": "0.5.21", @@ -3017,19 +9140,94 @@ } } }, + "spawn-wrap": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/spawn-wrap/-/spawn-wrap-2.0.0.tgz", + "integrity": "sha512-EeajNjfN9zMnULLwhZZQU3GWBoFNkbngTUPfaawT4RkMiviTxcX0qfhVbGey39mfctfDHkWtuecgQ8NJcyQWHg==", + "dev": true, + "requires": { + "foreground-child": "^2.0.0", + "is-windows": "^1.0.2", + "make-dir": "^3.0.0", + "rimraf": "^3.0.0", + "signal-exit": "^3.0.2", + "which": "^2.0.1" + }, + "dependencies": { + "make-dir": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-3.1.0.tgz", + "integrity": "sha512-g3FeP20LNwhALb/6Cz6Dd4F2ngze0jz7tbzrD2wAV+o9FeNHe4rL+yK2md0J/fiSf1sa1ADhXqi5+oVwOM/eGw==", + "dev": true, + "requires": { + "semver": "^6.0.0" + } + }, + "semver": { + "version": "6.3.0", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", + "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", + "dev": true + } + } + }, "sprintf-js": { "version": "1.0.3", "resolved": "https://registry.npmjs.org/sprintf-js/-/sprintf-js-1.0.3.tgz", - "integrity": "sha1-BOaSb2YolTVPPdAVIDYzuFcpfiw=" + "integrity": "sha512-D9cPgkvLlV3t3IzL0D0YLvGA9Ahk4PcvVwUbN0dSGr1aP0Nrt4AEnTUbuGvquEC0mA64Gqt1fzirlRs5ibXx8g==" + }, + "sshpk": { + "version": "1.17.0", + "resolved": "https://registry.npmjs.org/sshpk/-/sshpk-1.17.0.tgz", + "integrity": "sha512-/9HIEs1ZXGhSPE8X6Ccm7Nam1z8KcoCqPdI7ecm1N33EzAetWahvQWVqLZtaZQ+IDKX4IyA2o0gBzqIMkAagHQ==", + "dev": true, + "requires": { + "asn1": "~0.2.3", + "assert-plus": "^1.0.0", + "bcrypt-pbkdf": "^1.0.0", + "dashdash": "^1.12.0", + "ecc-jsbn": "~0.1.1", + "getpass": "^0.1.1", + "jsbn": "~0.1.0", + "safer-buffer": "^2.0.2", + "tweetnacl": "~0.14.0" + } + }, + "stack-utils": { + "version": "2.0.5", + "resolved": "https://registry.npmjs.org/stack-utils/-/stack-utils-2.0.5.tgz", + "integrity": "sha512-xrQcmYhOsn/1kX+Vraq+7j4oE2j/6BFscZ0etmYg81xuM8Gq0022Pxb8+IqgOFUIaxHs0KaSb7T1+OegiNrNFA==", + "dev": true, + "requires": { + "escape-string-regexp": "^2.0.0" + } + }, + "string-width": { + "version": "4.2.3", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", + "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", + "dev": true, + "requires": { + "emoji-regex": "^8.0.0", + "is-fullwidth-code-point": "^3.0.0", + "strip-ansi": "^6.0.1" + } }, "strip-ansi": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-3.0.1.tgz", - "integrity": "sha1-ajhfuIU9lS1f8F0Oiq+UJ43GPc8=", + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", + "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", + "dev": true, "requires": { - "ansi-regex": "^2.0.0" + "ansi-regex": "^5.0.1" } }, + "strip-bom": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/strip-bom/-/strip-bom-4.0.0.tgz", + "integrity": "sha512-3xurFv5tEgii33Zi8Jtp55wEIILR9eh34FAW00PZf+JnSsTmV/ioewSgQl97JHvgjoRGwPShsWm+IdrxB35d0w==", + "dev": true + }, "supports-color": { "version": "7.2.0", "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", @@ -3043,10 +9241,1326 @@ "resolved": "https://registry.npmjs.org/supports-preserve-symlinks-flag/-/supports-preserve-symlinks-flag-1.0.0.tgz", "integrity": "sha512-ot0WnXS9fgdkgIcePe6RHNk1WA8+muPa6cSjeR3V8K27q9BB1rTE3R1p7Hv0z1ZyAc8s6Vvv8DIyWf681MAt0w==" }, - "templayed": { - "version": "0.2.3", - "resolved": "https://registry.npmjs.org/templayed/-/templayed-0.2.3.tgz", - "integrity": "sha1-RwbfYlvGrs2Gt8n2sPtUi5XN92k=" + "tap": { + "version": "15.2.3", + "resolved": "https://registry.npmjs.org/tap/-/tap-15.2.3.tgz", + "integrity": "sha512-EVbovHd/SdevGMUnkNU5JJqC1YC0hzaaZ2jnqs0fKHv9Oudx27qW3Xwox7A6TB92wvR0mqgQPr+Au2w56kD+aQ==", + "dev": true, + "requires": { + "@isaacs/import-jsx": "*", + "@types/react": "*", + "chokidar": "^3.3.0", + "coveralls": "^3.0.11", + "findit": "^2.0.0", + "foreground-child": "^2.0.0", + "fs-exists-cached": "^1.0.0", + "glob": "^7.1.6", + "ink": "*", + "isexe": "^2.0.0", + "istanbul-lib-processinfo": "^2.0.2", + "jackspeak": "^1.4.1", + "libtap": "^1.3.0", + "minipass": "^3.1.1", + "mkdirp": "^1.0.4", + "nyc": "^15.1.0", + "opener": "^1.5.1", + "react": "*", + "rimraf": "^3.0.0", + "signal-exit": "^3.0.6", + "source-map-support": "^0.5.16", + "tap-mocha-reporter": "^5.0.3", + "tap-parser": "^11.0.1", + "tap-yaml": "^1.0.0", + "tcompare": "^5.0.7", + "treport": "*", + "which": "^2.0.2" + }, + "dependencies": { + "@babel/code-frame": { + "version": "7.16.0", + "bundled": true, + "dev": true, + "requires": { + "@babel/highlight": "^7.16.0" + } + }, + "@babel/compat-data": { + "version": "7.16.0", + "bundled": true, + "dev": true + }, + "@babel/core": { + "version": "7.16.0", + "bundled": true, + "dev": true, + "requires": { + "@babel/code-frame": "^7.16.0", + "@babel/generator": "^7.16.0", + "@babel/helper-compilation-targets": "^7.16.0", + "@babel/helper-module-transforms": "^7.16.0", + "@babel/helpers": "^7.16.0", + "@babel/parser": "^7.16.0", + "@babel/template": "^7.16.0", + "@babel/traverse": "^7.16.0", + "@babel/types": "^7.16.0", + "convert-source-map": "^1.7.0", + "debug": "^4.1.0", + "gensync": "^1.0.0-beta.2", + "json5": "^2.1.2", + "semver": "^6.3.0", + "source-map": "^0.5.0" + } + }, + "@babel/generator": { + "version": "7.16.0", + "bundled": true, + "dev": true, + "requires": { + "@babel/types": "^7.16.0", + "jsesc": "^2.5.1", + "source-map": "^0.5.0" + } + }, + "@babel/helper-annotate-as-pure": { + "version": "7.16.0", + "bundled": true, + "dev": true, + "requires": { + "@babel/types": "^7.16.0" + } + }, + "@babel/helper-compilation-targets": { + "version": "7.16.3", + "bundled": true, + "dev": true, + "requires": { + "@babel/compat-data": "^7.16.0", + "@babel/helper-validator-option": "^7.14.5", + "browserslist": "^4.17.5", + "semver": "^6.3.0" + } + }, + "@babel/helper-function-name": { + "version": "7.16.0", + "bundled": true, + "dev": true, + "requires": { + "@babel/helper-get-function-arity": "^7.16.0", + "@babel/template": "^7.16.0", + "@babel/types": "^7.16.0" + } + }, + "@babel/helper-get-function-arity": { + "version": "7.16.0", + "bundled": true, + "dev": true, + "requires": { + "@babel/types": "^7.16.0" + } + }, + "@babel/helper-hoist-variables": { + "version": "7.16.0", + "bundled": true, + "dev": true, + "requires": { + "@babel/types": "^7.16.0" + } + }, + "@babel/helper-member-expression-to-functions": { + "version": "7.16.0", + "bundled": true, + "dev": true, + "requires": { + "@babel/types": "^7.16.0" + } + }, + "@babel/helper-module-imports": { + "version": "7.16.0", + "bundled": true, + "dev": true, + "requires": { + "@babel/types": "^7.16.0" + } + }, + "@babel/helper-module-transforms": { + "version": "7.16.0", + "bundled": true, + "dev": true, + "requires": { + "@babel/helper-module-imports": "^7.16.0", + "@babel/helper-replace-supers": "^7.16.0", + "@babel/helper-simple-access": "^7.16.0", + "@babel/helper-split-export-declaration": "^7.16.0", + "@babel/helper-validator-identifier": "^7.15.7", + "@babel/template": "^7.16.0", + "@babel/traverse": "^7.16.0", + "@babel/types": "^7.16.0" + } + }, + "@babel/helper-optimise-call-expression": { + "version": "7.16.0", + "bundled": true, + "dev": true, + "requires": { + "@babel/types": "^7.16.0" + } + }, + "@babel/helper-plugin-utils": { + "version": "7.14.5", + "bundled": true, + "dev": true + }, + "@babel/helper-replace-supers": { + "version": "7.16.0", + "bundled": true, + "dev": true, + "requires": { + "@babel/helper-member-expression-to-functions": "^7.16.0", + "@babel/helper-optimise-call-expression": "^7.16.0", + "@babel/traverse": "^7.16.0", + "@babel/types": "^7.16.0" + } + }, + "@babel/helper-simple-access": { + "version": "7.16.0", + "bundled": true, + "dev": true, + "requires": { + "@babel/types": "^7.16.0" + } + }, + "@babel/helper-split-export-declaration": { + "version": "7.16.0", + "bundled": true, + "dev": true, + "requires": { + "@babel/types": "^7.16.0" + } + }, + "@babel/helper-validator-identifier": { + "version": "7.15.7", + "bundled": true, + "dev": true + }, + "@babel/helper-validator-option": { + "version": "7.14.5", + "bundled": true, + "dev": true + }, + "@babel/helpers": { + "version": "7.16.3", + "bundled": true, + "dev": true, + "requires": { + "@babel/template": "^7.16.0", + "@babel/traverse": "^7.16.3", + "@babel/types": "^7.16.0" + } + }, + "@babel/highlight": { + "version": "7.16.0", + "bundled": true, + "dev": true, + "requires": { + "@babel/helper-validator-identifier": "^7.15.7", + "chalk": "^2.0.0", + "js-tokens": "^4.0.0" + } + }, + "@babel/parser": { + "version": "7.16.3", + "bundled": true, + "dev": true + }, + "@babel/plugin-proposal-object-rest-spread": { + "version": "7.16.0", + "bundled": true, + "dev": true, + "requires": { + "@babel/compat-data": "^7.16.0", + "@babel/helper-compilation-targets": "^7.16.0", + "@babel/helper-plugin-utils": "^7.14.5", + "@babel/plugin-syntax-object-rest-spread": "^7.8.3", + "@babel/plugin-transform-parameters": "^7.16.0" + } + }, + "@babel/plugin-syntax-jsx": { + "version": "7.16.0", + "bundled": true, + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.14.5" + } + }, + "@babel/plugin-syntax-object-rest-spread": { + "version": "7.8.3", + "bundled": true, + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.8.0" + } + }, + "@babel/plugin-transform-destructuring": { + "version": "7.16.0", + "bundled": true, + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.14.5" + } + }, + "@babel/plugin-transform-parameters": { + "version": "7.16.3", + "bundled": true, + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.14.5" + } + }, + "@babel/plugin-transform-react-jsx": { + "version": "7.16.0", + "bundled": true, + "dev": true, + "requires": { + "@babel/helper-annotate-as-pure": "^7.16.0", + "@babel/helper-module-imports": "^7.16.0", + "@babel/helper-plugin-utils": "^7.14.5", + "@babel/plugin-syntax-jsx": "^7.16.0", + "@babel/types": "^7.16.0" + } + }, + "@babel/template": { + "version": "7.16.0", + "bundled": true, + "dev": true, + "requires": { + "@babel/code-frame": "^7.16.0", + "@babel/parser": "^7.16.0", + "@babel/types": "^7.16.0" + } + }, + "@babel/traverse": { + "version": "7.16.3", + "bundled": true, + "dev": true, + "requires": { + "@babel/code-frame": "^7.16.0", + "@babel/generator": "^7.16.0", + "@babel/helper-function-name": "^7.16.0", + "@babel/helper-hoist-variables": "^7.16.0", + "@babel/helper-split-export-declaration": "^7.16.0", + "@babel/parser": "^7.16.3", + "@babel/types": "^7.16.0", + "debug": "^4.1.0", + "globals": "^11.1.0" + } + }, + "@babel/types": { + "version": "7.16.0", + "bundled": true, + "dev": true, + "requires": { + "@babel/helper-validator-identifier": "^7.15.7", + "to-fast-properties": "^2.0.0" + } + }, + "@isaacs/import-jsx": { + "version": "4.0.1", + "bundled": true, + "dev": true, + "requires": { + "@babel/core": "^7.5.5", + "@babel/plugin-proposal-object-rest-spread": "^7.5.5", + "@babel/plugin-transform-destructuring": "^7.5.0", + "@babel/plugin-transform-react-jsx": "^7.3.0", + "caller-path": "^3.0.1", + "find-cache-dir": "^3.2.0", + "make-dir": "^3.0.2", + "resolve-from": "^3.0.0", + "rimraf": "^3.0.0" + }, + "dependencies": { + "caller-callsite": { + "version": "4.1.0", + "bundled": true, + "dev": true, + "requires": { + "callsites": "^3.1.0" + } + }, + "caller-path": { + "version": "3.0.1", + "bundled": true, + "dev": true, + "requires": { + "caller-callsite": "^4.1.0" + } + }, + "callsites": { + "version": "3.1.0", + "bundled": true, + "dev": true + } + } + }, + "@types/prop-types": { + "version": "15.7.4", + "bundled": true, + "dev": true + }, + "@types/react": { + "version": "17.0.34", + "bundled": true, + "dev": true, + "requires": { + "@types/prop-types": "*", + "@types/scheduler": "*", + "csstype": "^3.0.2" + } + }, + "@types/scheduler": { + "version": "0.16.2", + "bundled": true, + "dev": true + }, + "@types/yoga-layout": { + "version": "1.9.2", + "bundled": true, + "dev": true + }, + "ansi-escapes": { + "version": "4.3.2", + "bundled": true, + "dev": true, + "requires": { + "type-fest": "^0.21.3" + }, + "dependencies": { + "type-fest": { + "version": "0.21.3", + "bundled": true, + "dev": true + } + } + }, + "ansi-regex": { + "version": "5.0.1", + "bundled": true, + "dev": true + }, + "ansi-styles": { + "version": "3.2.1", + "bundled": true, + "dev": true, + "requires": { + "color-convert": "^1.9.0" + } + }, + "ansicolors": { + "version": "0.3.2", + "bundled": true, + "dev": true + }, + "astral-regex": { + "version": "2.0.0", + "bundled": true, + "dev": true + }, + "auto-bind": { + "version": "4.0.0", + "bundled": true, + "dev": true + }, + "balanced-match": { + "version": "1.0.2", + "bundled": true, + "dev": true + }, + "brace-expansion": { + "version": "1.1.11", + "bundled": true, + "dev": true, + "requires": { + "balanced-match": "^1.0.0", + "concat-map": "0.0.1" + } + }, + "browserslist": { + "version": "4.17.6", + "bundled": true, + "dev": true, + "requires": { + "caniuse-lite": "^1.0.30001274", + "electron-to-chromium": "^1.3.886", + "escalade": "^3.1.1", + "node-releases": "^2.0.1", + "picocolors": "^1.0.0" + } + }, + "caniuse-lite": { + "version": "1.0.30001279", + "bundled": true, + "dev": true + }, + "cardinal": { + "version": "2.1.1", + "bundled": true, + "dev": true, + "requires": { + "ansicolors": "~0.3.2", + "redeyed": "~2.1.0" + } + }, + "chalk": { + "version": "2.4.2", + "bundled": true, + "dev": true, + "requires": { + "ansi-styles": "^3.2.1", + "escape-string-regexp": "^1.0.5", + "supports-color": "^5.3.0" + } + }, + "ci-info": { + "version": "2.0.0", + "bundled": true, + "dev": true + }, + "cli-boxes": { + "version": "2.2.1", + "bundled": true, + "dev": true + }, + "cli-cursor": { + "version": "3.1.0", + "bundled": true, + "dev": true, + "requires": { + "restore-cursor": "^3.1.0" + } + }, + "cli-truncate": { + "version": "2.1.0", + "bundled": true, + "dev": true, + "requires": { + "slice-ansi": "^3.0.0", + "string-width": "^4.2.0" + } + }, + "code-excerpt": { + "version": "3.0.0", + "bundled": true, + "dev": true, + "requires": { + "convert-to-spaces": "^1.0.1" + } + }, + "color-convert": { + "version": "1.9.3", + "bundled": true, + "dev": true, + "requires": { + "color-name": "1.1.3" + } + }, + "color-name": { + "version": "1.1.3", + "bundled": true, + "dev": true + }, + "commondir": { + "version": "1.0.1", + "bundled": true, + "dev": true + }, + "concat-map": { + "version": "0.0.1", + "bundled": true, + "dev": true + }, + "convert-source-map": { + "version": "1.8.0", + "bundled": true, + "dev": true, + "requires": { + "safe-buffer": "~5.1.1" + } + }, + "convert-to-spaces": { + "version": "1.0.2", + "bundled": true, + "dev": true + }, + "csstype": { + "version": "3.0.9", + "bundled": true, + "dev": true + }, + "debug": { + "version": "4.3.2", + "bundled": true, + "dev": true, + "requires": { + "ms": "2.1.2" + } + }, + "electron-to-chromium": { + "version": "1.3.893", + "bundled": true, + "dev": true + }, + "emoji-regex": { + "version": "8.0.0", + "bundled": true, + "dev": true + }, + "escalade": { + "version": "3.1.1", + "bundled": true, + "dev": true + }, + "escape-string-regexp": { + "version": "1.0.5", + "bundled": true, + "dev": true + }, + "esprima": { + "version": "4.0.1", + "bundled": true, + "dev": true + }, + "events-to-array": { + "version": "1.1.2", + "bundled": true, + "dev": true + }, + "find-cache-dir": { + "version": "3.3.2", + "bundled": true, + "dev": true, + "requires": { + "commondir": "^1.0.1", + "make-dir": "^3.0.2", + "pkg-dir": "^4.1.0" + } + }, + "find-up": { + "version": "4.1.0", + "bundled": true, + "dev": true, + "requires": { + "locate-path": "^5.0.0", + "path-exists": "^4.0.0" + } + }, + "fs.realpath": { + "version": "1.0.0", + "bundled": true, + "dev": true + }, + "gensync": { + "version": "1.0.0-beta.2", + "bundled": true, + "dev": true + }, + "glob": { + "version": "7.2.0", + "bundled": true, + "dev": true, + "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" + } + }, + "globals": { + "version": "11.12.0", + "bundled": true, + "dev": true + }, + "has-flag": { + "version": "3.0.0", + "bundled": true, + "dev": true + }, + "indent-string": { + "version": "4.0.0", + "bundled": true, + "dev": true + }, + "inflight": { + "version": "1.0.6", + "bundled": true, + "dev": true, + "requires": { + "once": "^1.3.0", + "wrappy": "1" + } + }, + "inherits": { + "version": "2.0.4", + "bundled": true, + "dev": true + }, + "ink": { + "version": "3.2.0", + "bundled": true, + "dev": true, + "requires": { + "ansi-escapes": "^4.2.1", + "auto-bind": "4.0.0", + "chalk": "^4.1.0", + "cli-boxes": "^2.2.0", + "cli-cursor": "^3.1.0", + "cli-truncate": "^2.1.0", + "code-excerpt": "^3.0.0", + "indent-string": "^4.0.0", + "is-ci": "^2.0.0", + "lodash": "^4.17.20", + "patch-console": "^1.0.0", + "react-devtools-core": "^4.19.1", + "react-reconciler": "^0.26.2", + "scheduler": "^0.20.2", + "signal-exit": "^3.0.2", + "slice-ansi": "^3.0.0", + "stack-utils": "^2.0.2", + "string-width": "^4.2.2", + "type-fest": "^0.12.0", + "widest-line": "^3.1.0", + "wrap-ansi": "^6.2.0", + "ws": "^7.5.5", + "yoga-layout-prebuilt": "^1.9.6" + }, + "dependencies": { + "ansi-styles": { + "version": "4.3.0", + "bundled": true, + "dev": true, + "requires": { + "color-convert": "^2.0.1" + } + }, + "chalk": { + "version": "4.1.2", + "bundled": true, + "dev": true, + "requires": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + } + }, + "color-convert": { + "version": "2.0.1", + "bundled": true, + "dev": true, + "requires": { + "color-name": "~1.1.4" + } + }, + "color-name": { + "version": "1.1.4", + "bundled": true, + "dev": true + }, + "has-flag": { + "version": "4.0.0", + "bundled": true, + "dev": true + }, + "supports-color": { + "version": "7.2.0", + "bundled": true, + "dev": true, + "requires": { + "has-flag": "^4.0.0" + } + } + } + }, + "is-ci": { + "version": "2.0.0", + "bundled": true, + "dev": true, + "requires": { + "ci-info": "^2.0.0" + } + }, + "is-fullwidth-code-point": { + "version": "3.0.0", + "bundled": true, + "dev": true + }, + "js-tokens": { + "version": "4.0.0", + "bundled": true, + "dev": true + }, + "jsesc": { + "version": "2.5.2", + "bundled": true, + "dev": true + }, + "json5": { + "version": "2.2.0", + "bundled": true, + "dev": true, + "requires": { + "minimist": "^1.2.5" + } + }, + "locate-path": { + "version": "5.0.0", + "bundled": true, + "dev": true, + "requires": { + "p-locate": "^4.1.0" + } + }, + "lodash": { + "version": "4.17.21", + "bundled": true, + "dev": true + }, + "loose-envify": { + "version": "1.4.0", + "bundled": true, + "dev": true, + "requires": { + "js-tokens": "^3.0.0 || ^4.0.0" + } + }, + "make-dir": { + "version": "3.1.0", + "bundled": true, + "dev": true, + "requires": { + "semver": "^6.0.0" + } + }, + "mimic-fn": { + "version": "2.1.0", + "bundled": true, + "dev": true + }, + "minimatch": { + "version": "3.0.4", + "bundled": true, + "dev": true, + "requires": { + "brace-expansion": "^1.1.7" + } + }, + "minimist": { + "version": "1.2.5", + "bundled": true, + "dev": true + }, + "minipass": { + "version": "3.1.6", + "bundled": true, + "dev": true, + "requires": { + "yallist": "^4.0.0" + } + }, + "ms": { + "version": "2.1.2", + "bundled": true, + "dev": true + }, + "node-releases": { + "version": "2.0.1", + "bundled": true, + "dev": true + }, + "object-assign": { + "version": "4.1.1", + "bundled": true, + "dev": true + }, + "once": { + "version": "1.4.0", + "bundled": true, + "dev": true, + "requires": { + "wrappy": "1" + } + }, + "onetime": { + "version": "5.1.2", + "bundled": true, + "dev": true, + "requires": { + "mimic-fn": "^2.1.0" + } + }, + "p-limit": { + "version": "2.3.0", + "bundled": true, + "dev": true, + "requires": { + "p-try": "^2.0.0" + } + }, + "p-locate": { + "version": "4.1.0", + "bundled": true, + "dev": true, + "requires": { + "p-limit": "^2.2.0" + } + }, + "p-try": { + "version": "2.2.0", + "bundled": true, + "dev": true + }, + "patch-console": { + "version": "1.0.0", + "bundled": true, + "dev": true + }, + "path-exists": { + "version": "4.0.0", + "bundled": true, + "dev": true + }, + "path-is-absolute": { + "version": "1.0.1", + "bundled": true, + "dev": true + }, + "picocolors": { + "version": "1.0.0", + "bundled": true, + "dev": true + }, + "pkg-dir": { + "version": "4.2.0", + "bundled": true, + "dev": true, + "requires": { + "find-up": "^4.0.0" + } + }, + "punycode": { + "version": "2.1.1", + "bundled": true, + "dev": true + }, + "react": { + "version": "17.0.2", + "bundled": true, + "dev": true, + "requires": { + "loose-envify": "^1.1.0", + "object-assign": "^4.1.1" + } + }, + "react-devtools-core": { + "version": "4.21.0", + "bundled": true, + "dev": true, + "requires": { + "shell-quote": "^1.6.1", + "ws": "^7" + } + }, + "react-reconciler": { + "version": "0.26.2", + "bundled": true, + "dev": true, + "requires": { + "loose-envify": "^1.1.0", + "object-assign": "^4.1.1", + "scheduler": "^0.20.2" + } + }, + "redeyed": { + "version": "2.1.1", + "bundled": true, + "dev": true, + "requires": { + "esprima": "~4.0.0" + } + }, + "resolve-from": { + "version": "3.0.0", + "bundled": true, + "dev": true + }, + "restore-cursor": { + "version": "3.1.0", + "bundled": true, + "dev": true, + "requires": { + "onetime": "^5.1.0", + "signal-exit": "^3.0.2" + } + }, + "rimraf": { + "version": "3.0.2", + "bundled": true, + "dev": true, + "requires": { + "glob": "^7.1.3" + } + }, + "safe-buffer": { + "version": "5.1.2", + "bundled": true, + "dev": true + }, + "scheduler": { + "version": "0.20.2", + "bundled": true, + "dev": true, + "requires": { + "loose-envify": "^1.1.0", + "object-assign": "^4.1.1" + } + }, + "semver": { + "version": "6.3.0", + "bundled": true, + "dev": true + }, + "shell-quote": { + "version": "1.7.3", + "bundled": true, + "dev": true + }, + "signal-exit": { + "version": "3.0.6", + "bundled": true, + "dev": true + }, + "slice-ansi": { + "version": "3.0.0", + "bundled": true, + "dev": true, + "requires": { + "ansi-styles": "^4.0.0", + "astral-regex": "^2.0.0", + "is-fullwidth-code-point": "^3.0.0" + }, + "dependencies": { + "ansi-styles": { + "version": "4.3.0", + "bundled": true, + "dev": true, + "requires": { + "color-convert": "^2.0.1" + } + }, + "color-convert": { + "version": "2.0.1", + "bundled": true, + "dev": true, + "requires": { + "color-name": "~1.1.4" + } + }, + "color-name": { + "version": "1.1.4", + "bundled": true, + "dev": true + } + } + }, + "source-map": { + "version": "0.5.7", + "bundled": true, + "dev": true + }, + "stack-utils": { + "version": "2.0.5", + "bundled": true, + "dev": true, + "requires": { + "escape-string-regexp": "^2.0.0" + }, + "dependencies": { + "escape-string-regexp": { + "version": "2.0.0", + "bundled": true, + "dev": true + } + } + }, + "string-width": { + "version": "4.2.3", + "bundled": true, + "dev": true, + "requires": { + "emoji-regex": "^8.0.0", + "is-fullwidth-code-point": "^3.0.0", + "strip-ansi": "^6.0.1" + } + }, + "strip-ansi": { + "version": "6.0.1", + "bundled": true, + "dev": true, + "requires": { + "ansi-regex": "^5.0.1" + } + }, + "supports-color": { + "version": "5.5.0", + "bundled": true, + "dev": true, + "requires": { + "has-flag": "^3.0.0" + } + }, + "tap-parser": { + "version": "11.0.1", + "bundled": true, + "dev": true, + "requires": { + "events-to-array": "^1.0.1", + "minipass": "^3.1.6", + "tap-yaml": "^1.0.0" + } + }, + "tap-yaml": { + "version": "1.0.0", + "bundled": true, + "dev": true, + "requires": { + "yaml": "^1.5.0" + } + }, + "to-fast-properties": { + "version": "2.0.0", + "bundled": true, + "dev": true + }, + "treport": { + "version": "3.0.3", + "bundled": true, + "dev": true, + "requires": { + "@isaacs/import-jsx": "^4.0.1", + "cardinal": "^2.1.1", + "chalk": "^3.0.0", + "ink": "^3.2.0", + "ms": "^2.1.2", + "tap-parser": "^11.0.0", + "unicode-length": "^2.0.2" + }, + "dependencies": { + "ansi-styles": { + "version": "4.3.0", + "bundled": true, + "dev": true, + "requires": { + "color-convert": "^2.0.1" + } + }, + "chalk": { + "version": "3.0.0", + "bundled": true, + "dev": true, + "requires": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + } + }, + "color-convert": { + "version": "2.0.1", + "bundled": true, + "dev": true, + "requires": { + "color-name": "~1.1.4" + } + }, + "color-name": { + "version": "1.1.4", + "bundled": true, + "dev": true + }, + "has-flag": { + "version": "4.0.0", + "bundled": true, + "dev": true + }, + "supports-color": { + "version": "7.2.0", + "bundled": true, + "dev": true, + "requires": { + "has-flag": "^4.0.0" + } + } + } + }, + "type-fest": { + "version": "0.12.0", + "bundled": true, + "dev": true + }, + "unicode-length": { + "version": "2.0.2", + "bundled": true, + "dev": true, + "requires": { + "punycode": "^2.0.0", + "strip-ansi": "^3.0.1" + }, + "dependencies": { + "ansi-regex": { + "version": "2.1.1", + "bundled": true, + "dev": true + }, + "strip-ansi": { + "version": "3.0.1", + "bundled": true, + "dev": true, + "requires": { + "ansi-regex": "^2.0.0" + } + } + } + }, + "widest-line": { + "version": "3.1.0", + "bundled": true, + "dev": true, + "requires": { + "string-width": "^4.0.0" + } + }, + "wrap-ansi": { + "version": "6.2.0", + "bundled": true, + "dev": true, + "requires": { + "ansi-styles": "^4.0.0", + "string-width": "^4.1.0", + "strip-ansi": "^6.0.0" + }, + "dependencies": { + "ansi-styles": { + "version": "4.3.0", + "bundled": true, + "dev": true, + "requires": { + "color-convert": "^2.0.1" + } + }, + "color-convert": { + "version": "2.0.1", + "bundled": true, + "dev": true, + "requires": { + "color-name": "~1.1.4" + } + }, + "color-name": { + "version": "1.1.4", + "bundled": true, + "dev": true + } + } + }, + "wrappy": { + "version": "1.0.2", + "bundled": true, + "dev": true + }, + "ws": { + "version": "7.5.5", + "bundled": true, + "dev": true, + "requires": {} + }, + "yallist": { + "version": "4.0.0", + "bundled": true, + "dev": true + }, + "yaml": { + "version": "1.10.2", + "bundled": true, + "dev": true + }, + "yoga-layout-prebuilt": { + "version": "1.10.0", + "bundled": true, + "dev": true, + "requires": { + "@types/yoga-layout": "1.9.2" + } + } + } + }, + "tap-mocha-reporter": { + "version": "5.0.3", + "resolved": "https://registry.npmjs.org/tap-mocha-reporter/-/tap-mocha-reporter-5.0.3.tgz", + "integrity": "sha512-6zlGkaV4J+XMRFkN0X+yuw6xHbE9jyCZ3WUKfw4KxMyRGOpYSRuuQTRJyWX88WWuLdVTuFbxzwXhXuS2XE6o0g==", + "dev": true, + "requires": { + "color-support": "^1.1.0", + "debug": "^4.1.1", + "diff": "^4.0.1", + "escape-string-regexp": "^2.0.0", + "glob": "^7.0.5", + "tap-parser": "^11.0.0", + "tap-yaml": "^1.0.0", + "unicode-length": "^2.0.2" + }, + "dependencies": { + "debug": { + "version": "4.3.4", + "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.4.tgz", + "integrity": "sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ==", + "dev": true, + "requires": { + "ms": "2.1.2" + } + }, + "ms": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", + "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==", + "dev": true + } + } + }, + "tap-parser": { + "version": "11.0.1", + "resolved": "https://registry.npmjs.org/tap-parser/-/tap-parser-11.0.1.tgz", + "integrity": "sha512-5ow0oyFOnXVSALYdidMX94u0GEjIlgc/BPFYLx0yRh9hb8+cFGNJqJzDJlUqbLOwx8+NBrIbxCWkIQi7555c0w==", + "dev": true, + "requires": { + "events-to-array": "^1.0.1", + "minipass": "^3.1.6", + "tap-yaml": "^1.0.0" + } + }, + "tap-yaml": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/tap-yaml/-/tap-yaml-1.0.0.tgz", + "integrity": "sha512-Rxbx4EnrWkYk0/ztcm5u3/VznbyFJpyXO12dDBHKWiDVxy7O2Qw6MRrwO5H6Ww0U5YhRY/4C/VzWmFPhBQc4qQ==", + "dev": true, + "requires": { + "yaml": "^1.5.0" + } + }, + "tcompare": { + "version": "5.0.7", + "resolved": "https://registry.npmjs.org/tcompare/-/tcompare-5.0.7.tgz", + "integrity": "sha512-d9iddt6YYGgyxJw5bjsN7UJUO1kGOtjSlNy/4PoGYAjQS5pAT/hzIoLf1bZCw+uUxRmZJh7Yy1aA7xKVRT9B4w==", + "dev": true, + "requires": { + "diff": "^4.0.2" + } }, "terser": { "version": "5.14.1", @@ -3057,15 +10571,25 @@ "acorn": "^8.5.0", "commander": "^2.20.0", "source-map-support": "~0.5.20" - }, - "dependencies": { - "commander": { - "version": "2.20.3", - "resolved": "https://registry.npmjs.org/commander/-/commander-2.20.3.tgz", - "integrity": "sha512-GpVkmM8vF2vQUkj2LvZmD35JxeJOLCwJ9cUkugyk2nuhbv3+mJvpLYYt+0+USMxE+oj+ey/lJEnhZw75x/OMcQ==" - } } }, + "test-exclude": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/test-exclude/-/test-exclude-6.0.0.tgz", + "integrity": "sha512-cAGWPIyOHU6zlmg88jwm7VRyXnMN7iV68OGAbYDk/Mh/xC/pzVPlQtY6ngoIH/5/tciuhGfvESU8GrHrcxD56w==", + "dev": true, + "requires": { + "@istanbuljs/schema": "^0.1.2", + "glob": "^7.1.4", + "minimatch": "^3.0.4" + } + }, + "to-fast-properties": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/to-fast-properties/-/to-fast-properties-2.0.0.tgz", + "integrity": "sha512-/OaKK0xYrs3DmxRYqL/yDc+FxFUVYhDlXMhRmv3z915w2HF1tnN1omB354j8VUGO/hbRzyD6Y3sA7v7GS/ceog==", + "dev": true + }, "to-regex-range": { "version": "5.0.1", "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-5.0.1.tgz", @@ -3074,46 +10598,66 @@ "is-number": "^7.0.0" } }, - "tslib": { - "version": "2.3.1", - "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.3.1.tgz", - "integrity": "sha512-77EbyPPpMz+FRFRuAFlWMtmgUWGe9UOG2Z25NqCwiIjRhOf5iKGuzSe5P2w1laq+FkRy4p+PCuVkJSGkzTEKVw==" - }, - "uglify-js": { - "version": "2.4.1", - "resolved": "https://registry.npmjs.org/uglify-js/-/uglify-js-2.4.1.tgz", - "integrity": "sha1-V7l6r4Fg5fohGBJ+Bwgr86XCtuU=", + "tough-cookie": { + "version": "2.5.0", + "resolved": "https://registry.npmjs.org/tough-cookie/-/tough-cookie-2.5.0.tgz", + "integrity": "sha512-nlLsUzgm1kfLXSXfRZMc1KLAugd4hqJHDTvc2hDIwS3mZAfMEuMbc03SujMF+GEcpaX/qboeycw6iO8JwVv2+g==", + "dev": true, "requires": { - "async": "~0.2.6", - "optimist": "~0.3.5", - "source-map": "~0.1.7", - "uglify-to-browserify": "~1.0.0" - }, - "dependencies": { - "async": { - "version": "0.2.10", - "resolved": "https://registry.npmjs.org/async/-/async-0.2.10.tgz", - "integrity": "sha1-trvgsGdLnXGXCMo43owjfLUmw9E=" - }, - "source-map": { - "version": "0.1.43", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.1.43.tgz", - "integrity": "sha1-wkvBRspRfBRx9drL4lcbK3+eM0Y=", - "requires": { - "amdefine": ">=0.0.4" - } - } + "psl": "^1.1.28", + "punycode": "^2.1.1" } }, - "uglify-to-browserify": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/uglify-to-browserify/-/uglify-to-browserify-1.0.2.tgz", - "integrity": "sha1-bgkk1r2mta/jSeOabWMoUKD4grc=" + "trivial-deferred": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/trivial-deferred/-/trivial-deferred-1.0.1.tgz", + "integrity": "sha512-dagAKX7vaesNNAwOc9Np9C2mJ+7YopF4lk+jE2JML9ta4kZ91Y6UruJNH65bLRYoUROD8EY+Pmi44qQWwXR7sw==", + "dev": true + }, + "tslib": { + "version": "2.4.0", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.4.0.tgz", + "integrity": "sha512-d6xOpEDfsi2CZVlPQzGeux8XMwLT9hssAsaPYExaQMuYskwb+x1x7J371tWlbBdWHroy99KnVB6qIkUbs5X3UQ==" + }, + "tunnel-agent": { + "version": "0.6.0", + "resolved": "https://registry.npmjs.org/tunnel-agent/-/tunnel-agent-0.6.0.tgz", + "integrity": "sha512-McnNiV1l8RYeY8tBgEpuodCC1mLUdbSN+CYBL7kJsJNInOP8UjDDEwdk6Mw60vdLLrr5NHKZhMAOSrR2NZuQ+w==", + "dev": true, + "requires": { + "safe-buffer": "^5.0.1" + } + }, + "tweetnacl": { + "version": "0.14.5", + "resolved": "https://registry.npmjs.org/tweetnacl/-/tweetnacl-0.14.5.tgz", + "integrity": "sha512-KXXFFdAbFXY4geFIwoyNK+f5Z1b7swfXABfL7HXCmoIWMKU3dmS26672A4EeQtDzLKy7SXmfBu51JolvEKwtGA==", + "dev": true + }, + "type-fest": { + "version": "0.8.1", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.8.1.tgz", + "integrity": "sha512-4dbzIzqvjtgiM5rw1k5rEHtBANKmdudhGyBEajN01fEyhaAIhsoKNy6y7+IN93IfpFtwY9iqi7kD+xwKhQsNJA==", + "dev": true + }, + "typedarray-to-buffer": { + "version": "3.1.5", + "resolved": "https://registry.npmjs.org/typedarray-to-buffer/-/typedarray-to-buffer-3.1.5.tgz", + "integrity": "sha512-zdu8XMNEDepKKR+XYOXAVPtWui0ly0NtohUscw+UmaHiAWT8hrV1rr//H6V+0DvJ3OQ19S979M0laLfX8rm82Q==", + "dev": true, + "requires": { + "is-typedarray": "^1.0.0" + } + }, + "uglify-js": { + "version": "3.16.1", + "resolved": "https://registry.npmjs.org/uglify-js/-/uglify-js-3.16.1.tgz", + "integrity": "sha512-X5BGTIDH8U6IQ1TIRP62YC36k+ULAa1d59BxlWvPUJ1NkW5L3FwcGfEzuVvGmhJFBu0YJ5Ge25tmRISqCmLiRQ==" }, "unc-path-regex": { "version": "0.1.2", "resolved": "https://registry.npmjs.org/unc-path-regex/-/unc-path-regex-0.1.2.tgz", - "integrity": "sha1-5z3T17DXxe2G+6xrCufYxqadUPo=" + "integrity": "sha512-eXL4nmJT7oCpkZsHZUOJo8hcX3GbsiDOa0Qu9F646fi8dT3XuSVopVqAcEiVzSKKH7UoDti23wNX3qGFxcW5Qg==" }, "underscore.string": { "version": "3.3.6", @@ -3131,15 +10675,67 @@ } } }, + "unicode-length": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/unicode-length/-/unicode-length-2.0.2.tgz", + "integrity": "sha512-Ph/j1VbS3/r77nhoY2WU0GWGjVYOHL3xpKp0y/Eq2e5r0mT/6b649vm7KFO6RdAdrZkYLdxphYVgvODxPB+Ebg==", + "dev": true, + "requires": { + "punycode": "^2.0.0", + "strip-ansi": "^3.0.1" + }, + "dependencies": { + "ansi-regex": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-2.1.1.tgz", + "integrity": "sha512-TIGnTpdo+E3+pCyAluZvtED5p5wCqLdezCyhPZzKPcxvFplEt4i+W7OONCKgeZFT3+y5NZZfOOS/Bdcanm1MYA==", + "dev": true + }, + "strip-ansi": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-3.0.1.tgz", + "integrity": "sha512-VhumSSbBqDTP8p2ZLKj40UjBCV4+v8bUSEpUb4KjRgWk9pbqGF4REFj6KEagidb2f/M6AzC0EmFyDNGaw9OCzg==", + "dev": true, + "requires": { + "ansi-regex": "^2.0.0" + } + } + } + }, + "update-browserslist-db": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/update-browserslist-db/-/update-browserslist-db-1.0.4.tgz", + "integrity": "sha512-jnmO2BEGUjsMOe/Fg9u0oczOe/ppIDZPebzccl1yDWGLFP16Pa1/RM5wEoKYPG2zstNcDuAStejyxsOuKINdGA==", + "dev": true, + "requires": { + "escalade": "^3.1.1", + "picocolors": "^1.0.0" + } + }, "upper-case": { "version": "1.1.3", "resolved": "https://registry.npmjs.org/upper-case/-/upper-case-1.1.3.tgz", - "integrity": "sha1-9rRQHC7EzdJrp4vnIilh3ndiFZg=" + "integrity": "sha512-WRbjgmYzgXkCV7zNVpy5YgrHgbBv126rMALQQMrmzOVC4GM2waQ9x7xtm8VU+1yF2kWyPzI9zbZ48n4vSxwfSA==" + }, + "uri-js": { + "version": "4.4.1", + "resolved": "https://registry.npmjs.org/uri-js/-/uri-js-4.4.1.tgz", + "integrity": "sha512-7rKUyy33Q1yc98pQ1DAmLtwX109F7TIfWlW1Ydo8Wl1ii1SeHieeh0HHfPeL2fMXK6z0s8ecKs9frCuLJvndBg==", + "dev": true, + "requires": { + "punycode": "^2.1.0" + } }, "util-deprecate": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz", - "integrity": "sha1-RQ1Nyfpw3nMnYvvS1KKJgUGaDM8=" + "integrity": "sha512-EPD5q1uXyFxJpCrLnCc1nHnq3gOa6DZBocAIiI2TaSCA7VCJ1UJDMagCzIkXNsUYfD1daK//LTEQ8xiIbrHtcw==" + }, + "uuid": { + "version": "8.3.2", + "resolved": "https://registry.npmjs.org/uuid/-/uuid-8.3.2.tgz", + "integrity": "sha512-+NYs2QeMWy+GWFOEm9xnn6HCDp0l7QBD7ml8zLUmJ+93Q5NF0NocErnwkTkXVFNiX3/fpC6afS8Dhb/gz7R7eg==", + "dev": true }, "v8flags": { "version": "3.2.0", @@ -3149,6 +10745,17 @@ "homedir-polyfill": "^1.0.1" } }, + "verror": { + "version": "1.10.0", + "resolved": "https://registry.npmjs.org/verror/-/verror-1.10.0.tgz", + "integrity": "sha512-ZZKSmDAEFOijERBLkmYfJ+vmk3w+7hOLYDNkRCuRuMJGEmqYNCNLyBBFwWKVMhfwaEF3WOd0Zlw86U/WC/+nYw==", + "dev": true, + "requires": { + "assert-plus": "^1.0.0", + "core-util-is": "1.0.2", + "extsprintf": "^1.2.0" + } + }, "which": { "version": "2.0.2", "resolved": "https://registry.npmjs.org/which/-/which-2.0.2.tgz", @@ -3157,15 +10764,110 @@ "isexe": "^2.0.0" } }, - "wordwrap": { - "version": "0.0.3", - "resolved": "https://registry.npmjs.org/wordwrap/-/wordwrap-0.0.3.tgz", - "integrity": "sha1-o9XabNXAvAAI03I0u68b7WMFkQc=" + "which-module": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/which-module/-/which-module-2.0.0.tgz", + "integrity": "sha512-B+enWhmw6cjfVC7kS8Pj9pCrKSc5txArRyaYGe088shv/FGWH+0Rjx/xPgtsWfsUtS27FkP697E4DDhgrgoc0Q==", + "dev": true + }, + "wrap-ansi": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-7.0.0.tgz", + "integrity": "sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q==", + "dev": true, + "requires": { + "ansi-styles": "^4.0.0", + "string-width": "^4.1.0", + "strip-ansi": "^6.0.0" + } }, "wrappy": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz", - "integrity": "sha1-tSQ9jz7BqjXxNkYFvA0QNuMKtp8=" + "integrity": "sha512-l4Sp/DRseor9wL6EvV2+TuQn63dMkPjZ/sp9XkghTEbV9KlPS1xUsZ3u7/IQO4wxtcFB4bgpQPRcR3QCvezPcQ==" + }, + "write-file-atomic": { + "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", + "is-typedarray": "^1.0.0", + "signal-exit": "^3.0.2", + "typedarray-to-buffer": "^3.1.5" + } + }, + "y18n": { + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/y18n/-/y18n-4.0.3.tgz", + "integrity": "sha512-JKhqTOwSrqNA1NY5lSztJ1GrBiUodLMmIZuLiDaMRJ+itFd+ABVE8XBjOvIWL+rSqNDC74LCSFmlb/U4UZ4hJQ==", + "dev": true + }, + "yallist": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", + "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", + "dev": true + }, + "yaml": { + "version": "1.10.2", + "resolved": "https://registry.npmjs.org/yaml/-/yaml-1.10.2.tgz", + "integrity": "sha512-r3vXyErRCYJ7wg28yvBY5VSoAF8ZvlcW9/BwUzEtUsjvX/DKs24dIkuwjtuprwJJHsbyUbLApepYTR1BN4uHrg==", + "dev": true + }, + "yargs": { + "version": "15.4.1", + "resolved": "https://registry.npmjs.org/yargs/-/yargs-15.4.1.tgz", + "integrity": "sha512-aePbxDmcYW++PaqBsJ+HYUFwCdv4LVvdnhBy78E57PIor8/OVvhMrADFFEDh8DHDFRv/O9i3lPhsENjO7QX0+A==", + "dev": true, + "requires": { + "cliui": "^6.0.0", + "decamelize": "^1.2.0", + "find-up": "^4.1.0", + "get-caller-file": "^2.0.1", + "require-directory": "^2.1.1", + "require-main-filename": "^2.0.0", + "set-blocking": "^2.0.0", + "string-width": "^4.2.0", + "which-module": "^2.0.0", + "y18n": "^4.0.0", + "yargs-parser": "^18.1.2" + }, + "dependencies": { + "cliui": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/cliui/-/cliui-6.0.0.tgz", + "integrity": "sha512-t6wbgtoCXvAzst7QgXxJYqPt0usEfbgQdftEPbLL/cvv6HPE5VgvqCuAIDR0NgU52ds6rFwqrgakNLrHEjCbrQ==", + "dev": true, + "requires": { + "string-width": "^4.2.0", + "strip-ansi": "^6.0.0", + "wrap-ansi": "^6.2.0" + } + }, + "wrap-ansi": { + "version": "6.2.0", + "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-6.2.0.tgz", + "integrity": "sha512-r6lPcBGxZXlIcymEu7InxDMhdW0KDxpLgoFLcguasxCaJ/SOIZwINatK9KY/tf+ZrlywOKU0UDj3ATXUBfxJXA==", + "dev": true, + "requires": { + "ansi-styles": "^4.0.0", + "string-width": "^4.1.0", + "strip-ansi": "^6.0.0" + } + } + } + }, + "yargs-parser": { + "version": "18.1.3", + "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-18.1.3.tgz", + "integrity": "sha512-o50j0JeToy/4K6OZcaQmW6lyXXKhq7csREXcDwk2omFPJEwUNOVtJKvmDr9EI1fAJZUyZcRF7kxGBWmRXudrCQ==", + "dev": true, + "requires": { + "camelcase": "^5.0.0", + "decamelize": "^1.2.0" + } } } } diff --git a/common/loginpage/build/package.json b/common/loginpage/build/package.json index cc88f6840..01ff3ee46 100644 --- a/common/loginpage/build/package.json +++ b/common/loginpage/build/package.json @@ -12,7 +12,7 @@ "grunt-contrib-clean": "^2.0.1", "grunt-contrib-concat": "^2.1.0", "grunt-contrib-htmlmin": "^3.1.0", - "grunt-inline": "0.3.7", + "grunt-inline": "file:plugins/grunt-inline", "grunt-terser": "^2.0.0", "terser": "^5.14.1" } diff --git a/common/loginpage/build/plugins/grunt-inline/Gruntfile.js b/common/loginpage/build/plugins/grunt-inline/Gruntfile.js new file mode 100644 index 000000000..59e6e3271 --- /dev/null +++ b/common/loginpage/build/plugins/grunt-inline/Gruntfile.js @@ -0,0 +1,50 @@ +'use strict'; + +module.exports = function(grunt) { + grunt.initConfig({ + inline: { + dist: { + src: ['test/dist/*.html'], + dest: ['tmp/'] + } + }, + + clean: { + tests: ['tmp/'] + }, + + htmlmin: { + dist: { + options: { + removeComments: true, + collapseWhitespace: true + }, + files: { + 'tmp/css.min.html': 'tmp/css.html', + 'tmp/img.min.html': 'tmp/img.html', + 'tmp/html.min.html': 'tmp/html.html', + 'tmp/script.min.html': 'tmp/script.html', + 'tmp/css_greedy.min.html': 'tmp/css_greedy.html', + 'tmp/img_greedy.min.html': 'tmp/img_greedy.html', + 'tmp/html_greedy.min.html': 'tmp/html_greedy.html', + 'tmp/script_greedy.min.html': 'tmp/script_greedy.html' + } + } + }, + + // Unit tests + nodeunit: { + tests: ['test/*_test.js'] + } + }); + + grunt.loadTasks('tasks'); + + grunt.loadNpmTasks('grunt-contrib-clean'); + grunt.loadNpmTasks('grunt-contrib-htmlmin'); + grunt.loadNpmTasks('grunt-contrib-nodeunit'); + + grunt.registerTask('test', ['clean', 'inline', 'htmlmin', 'nodeunit']); + // By default, run all tests + grunt.registerTask('default', ['test']); +}; \ No newline at end of file diff --git a/common/loginpage/build/plugins/grunt-inline/LICENSE-MIT b/common/loginpage/build/plugins/grunt-inline/LICENSE-MIT new file mode 100644 index 000000000..e19969fa6 --- /dev/null +++ b/common/loginpage/build/plugins/grunt-inline/LICENSE-MIT @@ -0,0 +1,22 @@ +Copyright (c) 2014 陈映平, contributors + +Permission is hereby granted, free of charge, to any person +obtaining a copy of this software and associated documentation +files (the "Software"), to deal in the Software without +restriction, including without limitation the rights to use, +copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the +Software is furnished to do so, subject to the following +conditions: + +The above copyright notice and this permission notice shall be +included in all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, +EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES +OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND +NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT +HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, +WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING +FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR +OTHER DEALINGS IN THE SOFTWARE. diff --git a/common/loginpage/build/plugins/grunt-inline/README.md b/common/loginpage/build/plugins/grunt-inline/README.md new file mode 100644 index 000000000..fbfd13d07 --- /dev/null +++ b/common/loginpage/build/plugins/grunt-inline/README.md @@ -0,0 +1,274 @@ +# grunt-inline[![build status](https://secure.travis-ci.org/miniflycn/grunt-inline.png)](http://travis-ci.org/miniflycn/grunt-inline) + +Brings externally referenced resources, such as js, css and images, into +a single file. + +For exmample: + +```html + +``` + +is replaced with + +```html + +``` + +JavaScript references are brought inline, and images in the html +and css blocks are converted to base-64 data: urls. + +By default, only urls marked with `__inline` are converted, however this +behavior can be overrided via the `tag:` option. + + +## Getting Started + +This plugin requires Grunt `~0.4.1` + +If you haven't used [Grunt](http://gruntjs.com/) before, be sure to check out the [Getting Started](http://gruntjs.com/getting-started) guide, as it explains how to create a [Gruntfile](http://gruntjs.com/sample-gruntfile) as well as install and use Grunt plugins. Once you're familiar with that process, you may install this plugin with this command: + +```bash +npm install grunt-inline --save-dev +``` + +Once the plugin has been installed, it may be enabled inside your Gruntfile with this line of JavaScript: + +```bash +grunt.loadNpmTasks('grunt-inline'); +``` + +## The "grunt-inline" task + +### Overview + +In your project's Gruntfile, add a section named `inline` to the data object passed into `grunt.initConfig()`. + +```javascript +grunt.initConfig({ + inline: { + dist: { + src: 'src/index.html', + dest: 'dist/index.html' + } + } +}); +``` + +### Options + +#### dest + +If dest is assigned, the the source file will be copied to the destination path. eg: +`src/index.html` will be processed and then copied to `dist/index.html` + +```javascript +grunt.initConfig({ + inline: { + dist: { + src: 'src/index.html', + dest: 'dist/index.html' + } + } +}); +``` + +### cssmin + +If cssmin is assigned true, `.css` will be minified before inlined. + +```javascript +grunt.initConfig({ + inline: { + dist: { + options:{ + cssmin: true + }, + src: 'src/index.html', + dest: 'dist/index.html' + } + } +}); +``` + +### tag (defaults to ```__inline```) + +Only URLs that contain the value for ```tag``` will be inlined. +Specify ```tag: ''``` to include all urls. + +```javascript +grunt.initConfig({ + inline: { + dist: { + options:{ + tag: '' + }, + src: 'src/index.html', + dest: 'dist/index.html'] + } + } +}); +``` + + +### inlineTagAttributes + +Ability to add attributes string to inline tag. + +```javascript +grunt.initConfig({ + inline: { + dist: { + options:{ + inlineTagAttributes: { + js: 'data-inlined="true"', // Adds + css: 'data-inlined="true"' // Adds + }, + src: 'src/index.html', + dest: 'dist/index.html' + } + } + } +}); +``` + +### uglify + +If uglify is assigned true, `.js` file will be minified before inlined. + +```javascript +grunt.initConfig({ + inline: { + dist: { + options:{ + uglify: true + }, + src: 'src/index.html', + dest: 'dist/index.html' + } + } +}); +``` + +### exts + +Setting an exts array allows multiple file extensions to be processed as +html. + +```javascript +grunt.initConfig({ + inline: { + dist: { + options:{ + exts: ['jade'], + uglify: true + }, + src: 'src/index.jade', + dest: 'dist/index.jade' + } + } +}); +``` + +### Usage Examples + +> config + +```javascript +grunt.initConfig({ + inline: { + dist: { + src: 'src/index.html' + } + } +}); +``` + +>src/index.html + +```html + + + demo + + + + + + + + +``` + +after `grunt inline` was run, it will be something like + +```html + + + demo + + + + + + + + + +``` + +#### inline tag + +Suppose there is an `` tag in `index.html` like bellow + +```html + + +``` + +The content of `test.html` is + +```html +

I'm inline html

+hello world! +``` + +Then, after the `inline` task is run, the original content in `index.html` will be replaced with + +```html +

I'm inline html

+hello world! +``` + +## Contributing + +In lieu of a formal styleguide, take care to maintain the existing coding style. Add unit tests for any new or changed functionality. Lint and test your code using [Grunt](http://gruntjs.com/). + +## Release History +* 2019-12-20 v0.3.7 document optimized: markdown style problems of README +* 2015-01-09 v0.3.3 bug fix: when processing files of a folder and then copy the processed content to another destination, the original files are changed unexpectedly, as mentioned in this issue [Support file globbing for input and output](https://github.com/chyingp/grunt-inline/issues/35) +* 2014-06-16 v0.3.1 bug fix: protocol-relative urls in css are messed up +* 2014-06-15 v0.3.1 bug fix: when options.tag is '', then all img tags, whose src attribute has already been inlined will be matched. +* 2014-05-19 v0.3.0 support for new options.exts +* 2014-05-19 v0.2.9 bug fix: options.tag is assigned '', bug image url in css are not converted to base64 formate +* 2014-03-06 v0.2.6 bug fix: script tags like were not inlined +* 2014-01-31 v0.2.3 radded tag option, encode url(..) images. +* 2013-10-31  v0.2.2 bug fix: img urls like 'background: url(http://www.example.com/img/bg.png)' will be transformed to 'background: url(url(http://www.example.com/img/bg.png))' +* 2013-10-30  v0.2.1 bug fix: when processing relative file path of img url in css stylesheet, forgot to transform "\" to "/" for windows users +* 2013-10-30  v0.2.0 new feature: Support for minifing js、css when they ar inlined into html. +* 2013-08-30  v0.1.9 bug fix: stylesheets ended with ">" cannot be inlined +* 2013-09-02  v0.1.9 add feature: add options.dest to assign a destination path where the source file will be copied +* 2013-09-02  v0.1.8 add feature: support for `` tag diff --git a/common/loginpage/build/plugins/grunt-inline/package.json b/common/loginpage/build/plugins/grunt-inline/package.json new file mode 100644 index 000000000..d465e9c41 --- /dev/null +++ b/common/loginpage/build/plugins/grunt-inline/package.json @@ -0,0 +1,40 @@ +{ + "author": { + "name": "程序猿小卡", + "email": "chyingp@gmail.com", + "url": "https://github.com/chyingp" + }, + "name": "grunt-inline", + "description": "Inlines img, script and link tags into the same file.", + "version": "0.3.7", + "keywords": [ + "gruntplugin", + "inline", + "js", + "css" + ], + "main": "inline", + "repository": { + "type": "git", + "url": "https://github.com/chyingp/grunt-inline.git" + }, + "engines": { + "node": ">=0.8.0" + }, + "devDependencies": { + "grunt": "^1.4.0", + "grunt-contrib-clean": "^2.0.0", + "grunt-contrib-htmlmin": "^3.1.0", + "grunt-contrib-nodeunit": "^4.0.0" + }, + "dependencies": { + "clean-css": "^5.2.4", + "datauri": "^4.1.0", + "uglify-js": "^3.15.1" + }, + "scripts": { + "test": "grunt test" + }, + "_id": "grunt-inline@0.1.0", + "_from": "grunt-inline@~0.1.0" +} diff --git a/common/loginpage/build/plugins/grunt-inline/tasks/inline.js b/common/loginpage/build/plugins/grunt-inline/tasks/inline.js new file mode 100644 index 000000000..353623718 --- /dev/null +++ b/common/loginpage/build/plugins/grunt-inline/tasks/inline.js @@ -0,0 +1,256 @@ +/* + * grunt-inline + * https://github.com/chyingp/grunt-inline + * + * Copyright (c) 2015 Auguest G. casper & IMWEB TEAM + */ + +'use strict'; + +module.exports = function(grunt) { + + var path = require('path'); + var datauri = require('datauri'); + var UglifyJS = require("uglify-js"); + var CleanCSS = require('clean-css'); + + grunt.registerMultiTask('inline', "Replaces , '; + }else{ + grunt.log.error("Couldn't find " + inlineFilePath + '!'); + } + } + grunt.log.debug('ret = : ' + ret +'\n'); + + return ret; + + }).replace(//g, function(matchedWord, src){ + var ret = matchedWord; + + if(!isRemotePath(src) && src.indexOf(options.tag)!=-1){ + + var inlineFilePath = path.resolve( path.dirname(filepath), src ).replace(/\?.*$/, ''); // 将参数去掉 + + if( grunt.file.exists(inlineFilePath) ){ + var styleSheetContent = grunt.file.read( inlineFilePath ); + ret = ''; + }else{ + grunt.log.error("Couldn't find " + inlineFilePath + '!'); + } + } + grunt.log.debug('ret = : ' + ret +'\n'); + + return ret; + }).replace(//g, function(matchedWord, src){ + var ret = matchedWord; + + if(!grunt.file.isPathAbsolute(src) && src.indexOf(options.tag)!=-1){ + + var inlineFilePath = path.resolve( path.dirname(filepath), src ).replace(/\?.*$/, ''); // 将参数去掉 + + if( grunt.file.exists(inlineFilePath) ){ + ret = matchedWord.replace(src, (new datauri(inlineFilePath)).content); + }else{ + grunt.log.error("Couldn't find " + inlineFilePath + '!'); + } + } + grunt.log.debug('ret = : ' + ret +'\n'); + + return ret; + }); + + return fileContent; + } + + function css(filepath, fileContent, relativeTo, options) { + if(relativeTo){ + filepath = filepath.replace(/[^\/]+\//g, relativeTo); + } + + fileContent = fileContent.replace(/url\(["']*([^)'"]+)["']*\)/g, function(matchedWord, imgUrl){ + var newUrl = imgUrl; + var flag = imgUrl.indexOf(options.tag)!=-1; // urls like "img/bg.png?__inline" will be transformed to base64 + if(isBase64Path(imgUrl) || isRemotePath(imgUrl)){ + return matchedWord; + } + grunt.log.debug( 'imgUrl: '+imgUrl); + grunt.log.debug( 'filepath: '+filepath); + var absoluteImgurl = path.resolve( path.dirname(filepath),imgUrl ); + grunt.log.debug( 'absoluteImgurl: '+absoluteImgurl); + newUrl = path.relative( path.dirname(filepath), absoluteImgurl ); + grunt.log.debug( 'newUrl: '+newUrl); + + absoluteImgurl = absoluteImgurl.replace(/\?.*$/, ''); + if(flag && grunt.file.exists(absoluteImgurl)){ + newUrl = datauri(absoluteImgurl); + }else{ + newUrl = newUrl.replace(/\\/g, '/'); + } + + return matchedWord.replace(imgUrl, newUrl); + }); + fileContent = options.cssmin ? CleanCSS.process(fileContent) : fileContent; + + return fileContent; + } + + function cssInlineToHtml(htmlFilepath, filepath, fileContent, relativeTo, options) { + if(relativeTo){ + filepath = filepath.replace(/[^\/]+\//g, relativeTo); + } + + fileContent = fileContent.replace(/url\(["']*([^)'"]+)["']*\)/g, function(matchedWord, imgUrl){ + var newUrl = imgUrl; + var flag = !!imgUrl.match(/\?__inline/); // urls like "img/bg.png?__inline" will be transformed to base64 + grunt.log.debug('flag:'+flag); + if(isBase64Path(imgUrl) || isRemotePath(imgUrl)){ + return matchedWord; + } + grunt.log.debug( 'imgUrl: '+imgUrl); + grunt.log.debug( 'filepath: '+filepath); + var absoluteImgurl = path.resolve( path.dirname(filepath),imgUrl ); // img url relative to project root + grunt.log.debug( 'absoluteImgurl: '+absoluteImgurl); + newUrl = path.relative( path.dirname(htmlFilepath), absoluteImgurl ); // img url relative to the html file + grunt.log.debug([htmlFilepath, filepath, absoluteImgurl, imgUrl]); + grunt.log.debug( 'newUrl: '+newUrl); + + absoluteImgurl = absoluteImgurl.replace(/\?.*$/, ''); + if(flag && grunt.file.exists(absoluteImgurl)){ + newUrl = datauri(absoluteImgurl); + }else{ + newUrl = newUrl.replace(/\\/g, '/'); + } + + return matchedWord.replace(imgUrl, newUrl); + }); + fileContent = options.cssmin ? CleanCSS.process(fileContent) : fileContent; + + return fileContent; + } +}; diff --git a/common/loginpage/build/plugins/grunt-inline/test/dist/css.html b/common/loginpage/build/plugins/grunt-inline/test/dist/css.html new file mode 100644 index 000000000..6a100a3f2 --- /dev/null +++ b/common/loginpage/build/plugins/grunt-inline/test/dist/css.html @@ -0,0 +1,13 @@ + + + + test + + + + + + + + + \ No newline at end of file diff --git a/common/loginpage/build/plugins/grunt-inline/test/dist/css_greedy.html b/common/loginpage/build/plugins/grunt-inline/test/dist/css_greedy.html new file mode 100644 index 000000000..559d8cb04 --- /dev/null +++ b/common/loginpage/build/plugins/grunt-inline/test/dist/css_greedy.html @@ -0,0 +1,9 @@ + + + + test + + + + + \ No newline at end of file diff --git a/common/loginpage/build/plugins/grunt-inline/test/dist/html.html b/common/loginpage/build/plugins/grunt-inline/test/dist/html.html new file mode 100644 index 000000000..7f16e8817 --- /dev/null +++ b/common/loginpage/build/plugins/grunt-inline/test/dist/html.html @@ -0,0 +1,10 @@ + + + + test + + + + + + \ No newline at end of file diff --git a/common/loginpage/build/plugins/grunt-inline/test/dist/html/test.html b/common/loginpage/build/plugins/grunt-inline/test/dist/html/test.html new file mode 100644 index 000000000..82571e1ef --- /dev/null +++ b/common/loginpage/build/plugins/grunt-inline/test/dist/html/test.html @@ -0,0 +1 @@ +

test

\ No newline at end of file diff --git a/common/loginpage/build/plugins/grunt-inline/test/dist/html_greedy.html b/common/loginpage/build/plugins/grunt-inline/test/dist/html_greedy.html new file mode 100644 index 000000000..91b9466db --- /dev/null +++ b/common/loginpage/build/plugins/grunt-inline/test/dist/html_greedy.html @@ -0,0 +1,9 @@ + + + + test + + + + + \ No newline at end of file diff --git a/common/loginpage/build/plugins/grunt-inline/test/dist/img.html b/common/loginpage/build/plugins/grunt-inline/test/dist/img.html new file mode 100644 index 000000000..242470447 --- /dev/null +++ b/common/loginpage/build/plugins/grunt-inline/test/dist/img.html @@ -0,0 +1,10 @@ + + + + test + + + + + + \ No newline at end of file diff --git a/common/loginpage/build/plugins/grunt-inline/test/dist/img/icon.png b/common/loginpage/build/plugins/grunt-inline/test/dist/img/icon.png new file mode 100644 index 0000000000000000000000000000000000000000..90c1ad9eb5ef434cea55062c36680d2f6c93e04e GIT binary patch literal 1447 zcmV;Y1z7rtP){+($vRztQ z+JXeBNwrp_O(6zrf-fehi9TpFK4|bolZ^yoLjy6`m_B%mjSp(js4?LIFK-R%gONn! zrIw18TaC1Z7VTwQ*j|>k?VdA!GiP>tcF#F`h?bq?+c{^>%zX1-=AVC-F~$N!WRP27 zjEHm8*#@hUZR(q?n5IdEicX$noL0MNm^5fjYy)3?B16X(RzHWNRBZ zytojUm{_W@khfbJJ`cQtms1$I5hH8l3`7%31HPM@C~uQxC3A<6z8`f$NpGUQA*E+* zpRZ)w@2=;e&>9+_nxV0Yct*8!i_%(stmi?~FdGXxNZ+w;()9o(k~isO-vD)fc#JL# zjbc2@otWp5I3wFhU)K*Xlg#uoRg{&`Q;$7Nr@nZX_O!Jsb9jVF?jj|l9$#nV!@a^y z$XrN}nVcg%Tt@Nf8`S#T0jbukN*yFQdL96FV1dg8C7YaFqKWZEO4n^Cy}pIgsYR;Z zxPhK|q|IA}QW9?GecMK~7I+?bANUy94{Vh-JJWSU_72~%nRax(Md8h`@$?YwY-;d6 zX?Tw9uodWQ^}GxC2G|6gQ-MJczXP;uny!<;>>rnCcKAzjGJWw6u^h`Wpq9mb*cji*u|H*W13ntm1{_|lcNGUCu5|Scyg8~5}~)`)2n%IOlGr+{2TTxEe$c;;B`k6nFzT3;YP2u$^b_uD!IJ_I7uf z6Y-2HtAU?vJ%#tZWP5*H?XwZjWGA3$&P~l-BxKl2oW9D~Mb#rft$M!>#9bugS%PqB z$lXqg&=#mCV2l_yxn1us0PiU;>;x86D#vX$VOh@g(MYZ|-cety`k%bE%fOS4*rV4GaMvyT`WpCZ2;-aY600)6RQnID0MmfGTQby*~Fqt!dNwRh2 zVW)F&mncH?d){&c!P6=LXKeVQBs<;Fjxn4n?`x)QvHhfrO+7zBCBdMlPvkkyf~~b# z)lJF^h0T5dW`%Uxa&n&1$s~<^-$U`U{iM}ym9wN47agW_RVSl^Oe8;6K|(}lfY(*1 z>Q|(Lz^6Jx&=uoqAKFco+nULoydqD5!7JDNFEo~Pb@)A?!ct7Rx*&bk)>FjE7)x9l zkW)qKu($;56$e>K3GLq7L8to9TPL;a;hZD!4B8v9(c`wS_o`@eE*l%m%_$jp&C4Ss z@)3%bQ}@y1l8ExNEbnYfWYSNlb1PFWI$WPI1M{URu(pg6sbxC+=22?z{ycZ#>=rUk zqDTGmM!gHETM#z-JAR$M`?-&X#>Q82M=xpIbIJza?8=cdo@zVOaFJ%m(C)ZU2xti0ergmQr#$m}>sE6O&mRB{*6roLlVO{&yFeMm z+ZG5~A>9>Yp`Zm!GlXs;0ZsVWOA + + + test + + + + + \ No newline at end of file diff --git a/common/loginpage/build/plugins/grunt-inline/test/dist/js/export.js b/common/loginpage/build/plugins/grunt-inline/test/dist/js/export.js new file mode 100644 index 000000000..c80ec0847 --- /dev/null +++ b/common/loginpage/build/plugins/grunt-inline/test/dist/js/export.js @@ -0,0 +1 @@ +console.log('test'); \ No newline at end of file diff --git a/common/loginpage/build/plugins/grunt-inline/test/dist/script.html b/common/loginpage/build/plugins/grunt-inline/test/dist/script.html new file mode 100644 index 000000000..6f58362cc --- /dev/null +++ b/common/loginpage/build/plugins/grunt-inline/test/dist/script.html @@ -0,0 +1,9 @@ + + + + test + + + + + \ No newline at end of file diff --git a/common/loginpage/build/plugins/grunt-inline/test/dist/script_greedy.html b/common/loginpage/build/plugins/grunt-inline/test/dist/script_greedy.html new file mode 100644 index 000000000..b29fc603d --- /dev/null +++ b/common/loginpage/build/plugins/grunt-inline/test/dist/script_greedy.html @@ -0,0 +1,9 @@ + + + + test + + + + + \ No newline at end of file diff --git a/common/loginpage/build/plugins/grunt-inline/test/dist/styles/main.css b/common/loginpage/build/plugins/grunt-inline/test/dist/styles/main.css new file mode 100644 index 000000000..7e5980010 --- /dev/null +++ b/common/loginpage/build/plugins/grunt-inline/test/dist/styles/main.css @@ -0,0 +1,6 @@ +.main{border: none;} +body{background: url(http://www.example.com/img/bg.png);} +body{background: url('http://www.example.com/img/bg.png');} +body{background: url('../img/icon.png?__inline=true');} +body{background: url(data:image/jpeg;base64,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) +body{background: url('data:image/jpeg;base64,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') diff --git a/common/loginpage/build/plugins/grunt-inline/test/expected/css.min.html b/common/loginpage/build/plugins/grunt-inline/test/expected/css.min.html new file mode 100644 index 000000000..8d3b73c2d --- /dev/null +++ b/common/loginpage/build/plugins/grunt-inline/test/expected/css.min.html @@ -0,0 +1,11 @@ +test \ No newline at end of file diff --git a/common/loginpage/build/plugins/grunt-inline/test/expected/css_greedy.min.html b/common/loginpage/build/plugins/grunt-inline/test/expected/css_greedy.min.html new file mode 100644 index 000000000..8d3b73c2d --- /dev/null +++ b/common/loginpage/build/plugins/grunt-inline/test/expected/css_greedy.min.html @@ -0,0 +1,11 @@ +test \ No newline at end of file diff --git a/common/loginpage/build/plugins/grunt-inline/test/expected/html.min.html b/common/loginpage/build/plugins/grunt-inline/test/expected/html.min.html new file mode 100644 index 000000000..09bc36da3 --- /dev/null +++ b/common/loginpage/build/plugins/grunt-inline/test/expected/html.min.html @@ -0,0 +1 @@ +test

test

\ No newline at end of file diff --git a/common/loginpage/build/plugins/grunt-inline/test/expected/html_greedy.min.html b/common/loginpage/build/plugins/grunt-inline/test/expected/html_greedy.min.html new file mode 100644 index 000000000..2ade75dd1 --- /dev/null +++ b/common/loginpage/build/plugins/grunt-inline/test/expected/html_greedy.min.html @@ -0,0 +1 @@ +test

test

test

\ No newline at end of file diff --git a/common/loginpage/build/plugins/grunt-inline/test/expected/img.min.html b/common/loginpage/build/plugins/grunt-inline/test/expected/img.min.html new file mode 100644 index 000000000..75c60c1ac --- /dev/null +++ b/common/loginpage/build/plugins/grunt-inline/test/expected/img.min.html @@ -0,0 +1 @@ +test \ No newline at end of file diff --git a/common/loginpage/build/plugins/grunt-inline/test/expected/img_greedy.min.html b/common/loginpage/build/plugins/grunt-inline/test/expected/img_greedy.min.html new file mode 100644 index 000000000..797808cd8 --- /dev/null +++ b/common/loginpage/build/plugins/grunt-inline/test/expected/img_greedy.min.html @@ -0,0 +1 @@ +test \ No newline at end of file diff --git a/common/loginpage/build/plugins/grunt-inline/test/expected/script.min.html b/common/loginpage/build/plugins/grunt-inline/test/expected/script.min.html new file mode 100644 index 000000000..90da34278 --- /dev/null +++ b/common/loginpage/build/plugins/grunt-inline/test/expected/script.min.html @@ -0,0 +1 @@ +test \ No newline at end of file diff --git a/common/loginpage/build/plugins/grunt-inline/test/expected/script_greedy.min.html b/common/loginpage/build/plugins/grunt-inline/test/expected/script_greedy.min.html new file mode 100644 index 000000000..9a49bd9e6 --- /dev/null +++ b/common/loginpage/build/plugins/grunt-inline/test/expected/script_greedy.min.html @@ -0,0 +1 @@ +test \ No newline at end of file diff --git a/common/loginpage/build/plugins/grunt-inline/test/greedy_test.js b/common/loginpage/build/plugins/grunt-inline/test/greedy_test.js new file mode 100644 index 000000000..24c43a210 --- /dev/null +++ b/common/loginpage/build/plugins/grunt-inline/test/greedy_test.js @@ -0,0 +1,48 @@ +var grunt = require('grunt'); +var fs = require('fs'); + +function readFile(file) { + 'use strict'; + + var contents = grunt.file.read(file); + + if (process.platform === 'win32') { + contents = contents.replace(/\r\n/g, '\n'); + } + + return contents; +} + +function assertFileEquality(test, pathToActual, pathToExpected, message) { + var actual = readFile(pathToActual); + var expected = readFile(pathToExpected); + test.equal(expected, actual, message); +} + +exports.inline = function(test) { + 'use strict'; + + test.expect(4); + + assertFileEquality(test, + 'tmp/img_greedy.min.html', + 'test/expected/img_greedy.min.html', + 'Should compile two image target without newline characters'); + + assertFileEquality(test, + 'tmp/css_greedy.min.html', + 'test/expected/css_greedy.min.html', + 'Should compile two link target without newline characters'); + + assertFileEquality(test, + 'tmp/html_greedy.min.html', + 'test/expected/html_greedy.min.html', + 'Should compile two inline target without newline characters'); + + assertFileEquality(test, + 'tmp/script_greedy.min.html', + 'test/expected/script_greedy.min.html', + 'Should compile two script target without newline characters'); + + test.done(); +}; \ No newline at end of file diff --git a/common/loginpage/build/plugins/grunt-inline/test/inline_test.js b/common/loginpage/build/plugins/grunt-inline/test/inline_test.js new file mode 100644 index 000000000..f8dc6f22e --- /dev/null +++ b/common/loginpage/build/plugins/grunt-inline/test/inline_test.js @@ -0,0 +1,48 @@ +var grunt = require('grunt'); +var fs = require('fs'); + +function readFile(file) { + 'use strict'; + + var contents = grunt.file.read(file); + + if (process.platform === 'win32') { + contents = contents.replace(/\r\n/g, '\n'); + } + + return contents; +} + +function assertFileEquality(test, pathToActual, pathToExpected, message) { + var actual = readFile(pathToActual); + var expected = readFile(pathToExpected); + test.equal(expected, actual, message); +} + +exports.inline = function(test) { + 'use strict'; + + test.expect(4); + + assertFileEquality(test, + 'tmp/css.min.html', + 'test/expected/css.min.html', + 'Should compile css inline'); + + assertFileEquality(test, + 'tmp/img.min.html', + 'test/expected/img.min.html', + 'Should compile image inline'); + + assertFileEquality(test, + 'tmp/html.min.html', + 'test/expected/html.min.html', + 'Should compile html inline'); + + assertFileEquality(test, + 'tmp/script.min.html', + 'test/expected/script.min.html', + 'Should compile script inline'); + + test.done(); +}; \ No newline at end of file From 9245817b87cbf998c635c3d41651ad48b38a1ffb Mon Sep 17 00:00:00 2001 From: Maxim Kadushkin Date: Wed, 29 Jun 2022 00:05:41 +0300 Subject: [PATCH 04/76] [start page] debug --- common/loginpage/build/package.json | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/common/loginpage/build/package.json b/common/loginpage/build/package.json index 01ff3ee46..312223b61 100644 --- a/common/loginpage/build/package.json +++ b/common/loginpage/build/package.json @@ -4,16 +4,16 @@ "homepage": "http://www.onlyoffice.com", "private": true, "dependencies": { - "lodash": "^4.17.20", - "grunt-text-replace": "0.4.0", - "grunt-contrib-less": "^3.0.0", - "grunt-contrib-copy": "^1.0.0", "grunt": "^1.5.3", "grunt-contrib-clean": "^2.0.1", "grunt-contrib-concat": "^2.1.0", + "grunt-contrib-copy": "^1.0.0", "grunt-contrib-htmlmin": "^3.1.0", "grunt-inline": "file:plugins/grunt-inline", + "grunt-contrib-less": "^3.0.0", "grunt-terser": "^2.0.0", + "grunt-text-replace": "0.4.0", + "lodash": "^4.17.20", "terser": "^5.14.1" } } From 31507c636f085e30b248d622c2476e48e4c3c337 Mon Sep 17 00:00:00 2001 From: Maxim Kadushkin Date: Thu, 30 Jun 2022 00:41:46 +0300 Subject: [PATCH 05/76] [start page] fix bug 57222 --- common/loginpage/src/panelrecent.js | 50 +++++++++++++++++++++++------ 1 file changed, 41 insertions(+), 9 deletions(-) diff --git a/common/loginpage/src/panelrecent.js b/common/loginpage/src/panelrecent.js index 65f5d4b66..197b5b09c 100644 --- a/common/loginpage/src/panelrecent.js +++ b/common/loginpage/src/panelrecent.js @@ -155,23 +155,55 @@ utils.fn.extend(ControllerRecent.prototype, (function() { let collectionRecents, collectionRecovers; let ppmenu; + const ITEMS_LOAD_RANGE = 40; - var _on_recents = function(params) { - collectionRecents.empty(); + const _add_recent_block = function() { + if ( !this.rawRecents || !Object.keys(this.rawRecents).length ) return; - var files = utils.fn.parseRecent(params); - for (let item of files) { + const _raw_block = this.rawRecents.slice(this.recentIndex, this.recentIndex + ITEMS_LOAD_RANGE); + const _files = utils.fn.parseRecent(_raw_block); + + let _check_block = {}; + + for (let item of _files) { var model = new FileModel(item); model.set('hash', item.path.hashCode()); - collectionRecents.add(model); - - this.check_list[model.get('hash')] = item.path; + if ( !!this.rawRecents ) { + collectionRecents.add(model); + _check_block[model.get('hash')] = item.path; + } else return; } - if ( this.appready && Object.keys(this.check_list).length ) { - sdk.execCommand('files:check', JSON.stringify(this.check_list)); + const _new_items_count = Object.keys(_check_block).length; + if ( _new_items_count ) { + if ( this.appready ) { + sdk.execCommand('files:check', JSON.stringify(_check_block)); + } + + Object.assign(this.check_list, _check_block); } + + if ( _new_items_count == ITEMS_LOAD_RANGE ) { + setTimeout(e => { + this.recentIndex += ITEMS_LOAD_RANGE; + _add_recent_block.call(this); + }, 10); + } else { + this.rawRecents = undefined; + } + }; + + var _on_recents = function(params) { + this.rawRecents = undefined; + + setTimeout(e => { + this.rawRecents = params; + this.recentIndex = 0; + + collectionRecents.empty(); + _add_recent_block.call(this); + }, 10) }; var _on_recovers = function(params) { From c6e7736983a35830e477a6e80d4f2a50fb18087a Mon Sep 17 00:00:00 2001 From: Maria-Sukhova Date: Fri, 1 Jul 2022 15:44:59 +0300 Subject: [PATCH 06/76] added/edited hy_AM --- common/loginpage/locale/hy.js | 21 ++++++++++------- macos/Localization/hy.xliff | 4 ++-- win-linux/langs/hy.ts | 24 ++++++++++---------- win-linux/package/windows/associate_page.iss | 2 +- win-linux/package/windows/uninstall_page.iss | 2 ++ 5 files changed, 30 insertions(+), 23 deletions(-) diff --git a/common/loginpage/locale/hy.js b/common/loginpage/locale/hy.js index 9595da2c2..17f44bab5 100644 --- a/common/loginpage/locale/hy.js +++ b/common/loginpage/locale/hy.js @@ -82,12 +82,17 @@ l10n.hy = { settOptCheckWeek: 'Ամեն շաբաթ', settScaling: 'Ինտերֆեյսի մասշտաբավորում', settOptScalingAuto: 'Ավտոմատ', - aboutProFeaturesAvailable: 'Պրոֆեսիոնալ գործառույթների հասանելիությամբ', - settUITheme: 'Ինտերֆեյսի թեմա', - settOptThemeLight: 'Բաց', - settOptThemeClassicLight: 'Դասական բաց', - settOptThemeDark: 'Մուգ', - settOptLaunchMode: 'Բացել ֆայլը', - settOptLaunchInTab: 'Ներդիրում', - settOptLaunchInWindow: 'Պատուհանում', + aboutProFeaturesAvailable: 'Պրոֆեսիոնալ գործառույթների հասանելիությամբ' + ,settUITheme: 'Ինտերֆեյսի թեմա' + ,settOptThemeLight: 'Բաց' + ,settOptThemeClassicLight: 'Դասական բաց' + ,settOptThemeDark: 'Մուգ' + ,settOptLaunchMode: 'Բացել ֆայլը' + ,settOptLaunchInTab: 'Ներդիրում' + ,settOptLaunchInWindow: 'Պատուհանում' + ,settSpellcheckDetection: 'Ուղղագրական լեզվի հայտնաբերում' + ,settOptDisabled: 'Անջատված է' + ,aboutChangelog: 'Փոփոխությունների օրագիր' + ,updateNoUpdates: 'Հավելվածը թարմացված է' + ,updateAvialable: '$1 տարբերակը հասանելի է։Սեղմեք՝ ներբեռնելու համար։' } diff --git a/macos/Localization/hy.xliff b/macos/Localization/hy.xliff index 6ce7141a9..280ce50aa 100644 --- a/macos/Localization/hy.xliff +++ b/macos/Localization/hy.xliff @@ -269,7 +269,7 @@ Plain Text - Սովորական տեքստ (*.txt) + Պարզ տեքստային ֆայլ (*.txt) No comment provided by engineer. @@ -314,7 +314,7 @@ Rich Text Document - Rich Text Format ֆայլ (*.rtf) + Հարուստ տեքստի ձևաչափի ֆայլ (*.rtf) No comment provided by engineer. diff --git a/win-linux/langs/hy.ts b/win-linux/langs/hy.ts index a8bc25d1f..fa06e186b 100644 --- a/win-linux/langs/hy.ts +++ b/win-linux/langs/hy.ts @@ -202,32 +202,32 @@ RTF File (*.rtf) - Rich Text Format ֆայլ (*.rtf) + Հարուստ տեքստի ձևաչափի ֆայլ (*.rtf) TXT File (*.txt) - Սովորական տեքստ (*.txt) + Պարզ տեքստային ֆայլ (*.txt) HTML File (*.html) - HTML ֆայլ (*.html) + Հիպերտեքստ նշման լեզվի ֆայլ (*.html) MHT File (*.mht) - MHT ֆայլ (*.mht) + Վեբ էջի արխիվային ֆայլ (*.mht) EPUB File (*.epub) - EPUB ֆայլ (*.epub) + Էլեկտրոնային հրապարակման ֆայլ (*.epub) FB2 File (*.fb2) - FB2 ֆայլ (*.fb2) + Գեղարվեստական ​​Գիրք 2 ֆայլ (*.fb2) @@ -327,17 +327,17 @@ Zip Archive (*.zip) - + Zip արխիվ (*.zip) JPG Image (*.jpg, *.jpeg) - + JPG պատկեր (*.jpg *.jpeg) PNG Image (*.png) - + PNG պատկեր (*.png) @@ -357,7 +357,7 @@ Excel Workbook - Excel աղյուսակ + Excel աշխատանքային գիրք @@ -561,12 +561,12 @@ File %1 cannot be opened or doesn't exists. - + %1 ֆայլը չի ​​կարող բացվել կամ գոյություն չունի: All supported files (*.txt *.csv) - + Բոլոր աջակցվող ֆայլերը(*.txt *.csv) diff --git a/win-linux/package/windows/associate_page.iss b/win-linux/package/windows/associate_page.iss index 5e92b5827..0ede076aa 100644 --- a/win-linux/package/windows/associate_page.iss +++ b/win-linux/package/windows/associate_page.iss @@ -311,7 +311,7 @@ sv.extMSExcel =Microsoft Excel arbetsbok tr.extMSExcel =Microsoft Excel Çalışma Kitabı vi.extMSExcel =Microsoft Excel Workbook zh_CN.extMSExcel =Microsoft Excel工作簿 -;hy_AM.extMSExcel =Microsoft Excel Workbook +;hy_AM.extMSExcel =Microsoft Excel աշխատանքային գիրք ;hr.extMSExcel =Microsoft Excel radna knjiga da.extMSExcel =Microsoft Excel Ark ;hi.extMSExcel =माइक्रोसॉफ्ट एक्सेल वर्कबुक diff --git a/win-linux/package/windows/uninstall_page.iss b/win-linux/package/windows/uninstall_page.iss index 251c4f51f..8674c584b 100644 --- a/win-linux/package/windows/uninstall_page.iss +++ b/win-linux/package/windows/uninstall_page.iss @@ -12,6 +12,7 @@ pt_BR.UninstallPageLabel=Clique em Desinstalar para prosseguir com a desinstala pl.UninstallPageLabel=Kliknij Odinstaluj, aby rozpocząć proces odinstalowywania. lo.UninstallPageLabel=ກົດປຸ່ມຖອນການຕິດຕັ້ງ ເພື່ອດຳເນີນການຖອນການຕິດຕັ້ງ. nl.UninstallPageLabel=Druk op Verwijderen om verder te gaan met het verwijderen. +;hy_AM.UninstallPageLabel=Ապատեղադրեք՝ ապատեղադրումը շարունակելու համար: en.UninstallOptionClearData=Clear all user settings and application cached data cs.UninstallOptionClearData=Vymažte všechna uživatelská nastavení a data uložená v paměti @@ -25,6 +26,7 @@ pt_BR.UninstallOptionClearData=Limpar todas definições de usuário e dados sal pl.UninstallOptionClearData=Usuń wszystkie ustawienia użytkownika oraz dane pamięci podręcznej aplikacji lo.UninstallOptionClearData=ລືບຂໍ້ມູນທີ່ເຫັບໄວ້ໃນແອັບພລິເຄຊັ່ນ ແລະ ລືບການຕັ້ງຄ່າຜູ້ໃຊ້ທັ້ງໝົດ nl.UninstallOptionClearData=Alle gebruikersinstellingen en cachegegevens van toepassingen wissen +;hy_AM.UninstallOptionClearData=Մաքրել օգտատիրոջ բոլոր կարգավորումները և հավելվածի քեշավորված տվյալները [Code] From 48de5f2502f671f11a426dd75c334873b6127e56 Mon Sep 17 00:00:00 2001 From: Roman Demidov Date: Fri, 1 Jul 2022 16:23:03 +0300 Subject: [PATCH 07/76] Add build target for OpenSUSE (#502) --- .gitignore | 1 + win-linux/package/linux/Makefile | 15 +++++++++++++++ win-linux/package/linux/suse-rpm/package.spec | 2 ++ win-linux/package/linux/suse-rpm/requires.spec | 5 +++++ 4 files changed, 23 insertions(+) create mode 100644 win-linux/package/linux/suse-rpm/package.spec create mode 100644 win-linux/package/linux/suse-rpm/requires.spec diff --git a/.gitignore b/.gitignore index bdef801a4..525b47b64 100644 --- a/.gitignore +++ b/.gitignore @@ -20,6 +20,7 @@ win-linux/package/linux/common/usr/share/flyfm/templates/desktopeditors.*.deskto win-linux/package/linux/rpm/builddir win-linux/package/linux/apt-rpm/builddir win-linux/package/linux/urpmi/builddir +win-linux/package/linux/suse-rpm/builddir win-linux/package/linux/tar common/loginpage/build/node_modules/* diff --git a/win-linux/package/linux/Makefile b/win-linux/package/linux/Makefile index c0f7a25c7..579f1cdb8 100644 --- a/win-linux/package/linux/Makefile +++ b/win-linux/package/linux/Makefile @@ -54,16 +54,19 @@ endif RPM_BUILD_DIR = $(PWD)/rpm/builddir APT_RPM_BUILD_DIR = $(PWD)/apt-rpm/builddir URPMI_BUILD_DIR = $(PWD)/urpmi/builddir +SUSE-RPM_BUILD_DIR = $(PWD)/suse-rpm/builddir TAR_BUILD_DIR = $(PWD)/tar RPM_PACKAGE_DIR = $(RPM_BUILD_DIR)/RPMS/$(RPM_ARCH) APT_RPM_PACKAGE_DIR = $(APT_RPM_BUILD_DIR)/RPMS/$(APT_RPM_ARCH) URPMI_PACKAGE_DIR = $(URPMI_BUILD_DIR)/RPMS/$(URPMI_ARCH) +SUSE-RPM_PACKAGE_DIR = $(RPM_BUILD_DIR)/RPMS/$(RPM_ARCH) TAR_PACKAGE_DIR = $(TAR_BUILD_DIR)/$(TAR_ARCH) RPM = $(RPM_PACKAGE_DIR)/$(PACKAGE_NAME)-$(PACKAGE_VERSION).$(RPM_ARCH).rpm APT_RPM = $(APT_RPM_PACKAGE_DIR)/$(PACKAGE_NAME)-$(PACKAGE_VERSION).$(APT_RPM_ARCH).rpm URPMI = $(URPMI_PACKAGE_DIR)/$(PACKAGE_NAME)-$(PACKAGE_VERSION).$(URPMI_ARCH).rpm +SUSE-RPM = $(SUSE-RPM_PACKAGE_DIR)/$(PACKAGE_NAME)-$(PACKAGE_VERSION).$(RPM_ARCH).rpm DEB = deb/$(PACKAGE_NAME)_$(PACKAGE_VERSION)_$(DEB_ARCH).deb DEB_ASTRA = deb-astra/$(PACKAGE_NAME)_$(PACKAGE_VERSION)-astra_$(DEB_ARCH).deb TAR = $(TAR_PACKAGE_DIR)/$(PACKAGE_NAME)-$(PACKAGE_VERSION)-$(TAR_ARCH).tar.gz @@ -206,6 +209,8 @@ apt-rpm: $(APT_RPM) urpmi: $(URPMI) +suse-rpm: $(SUSE-RPM) + rpm_aarch64 : ARCHITECTURE = arm64 rpm_aarch64 : RPM_ARCH = aarch64 rpm_aarch64 : $(RPM) @@ -233,10 +238,12 @@ clean: $(RPM_BUILD_DIR) \ $(APT_RPM_BUILD_DIR) \ $(URPMI_BUILD_DIR) \ + $(SUSE-RPM_BUILD_DIR) \ $(TAR_BUILD_DIR) \ rpm/$(PACKAGE_NAME).spec \ apt-rpm/$(PACKAGE_NAME).spec \ urpmi/$(PACKAGE_NAME).spec \ + suse-rpm/$(PACKAGE_NAME).spec \ $(INSTALLER)\ *.tar.gz @@ -326,6 +333,14 @@ $(URPMI): desktopeditor urpmi/$(PACKAGE_NAME).spec $(RPM_PARAMS) \ package.spec +$(SUSE-RPM): desktopeditor suse-rpm/$(PACKAGE_NAME).spec + cd suse-rpm && rpmbuild -bb \ + --define "_topdir $(SUSE-RPM_BUILD_DIR)" \ + --define "_package_arch $(RPM_ARCH)" \ + --target $(RPM_ARCH) \ + $(RPM_PARAMS) \ + package.spec + $(TAR): desktopeditor mkdir -p $(TAR_PACKAGE_DIR) ifeq ($(COMPANY_NAME), ONLYOFFICE) diff --git a/win-linux/package/linux/suse-rpm/package.spec b/win-linux/package/linux/suse-rpm/package.spec new file mode 100644 index 000000000..6e6f7d12d --- /dev/null +++ b/win-linux/package/linux/suse-rpm/package.spec @@ -0,0 +1,2 @@ +%include requires.spec +%include ../rpm/common.spec diff --git a/win-linux/package/linux/suse-rpm/requires.spec b/win-linux/package/linux/suse-rpm/requires.spec new file mode 100644 index 000000000..bf6390203 --- /dev/null +++ b/win-linux/package/linux/suse-rpm/requires.spec @@ -0,0 +1,5 @@ +%if "%{_package_edition}" == "full" +Requires: curl, libX11-6, xdg-utils, dejavu-fonts, liberation-fonts +%else +Requires: curl, libX11-6, libatk-1_0-0, libgtk-3-0, libstdc++6, xdg-utils, libxcb-util1, dejavu-fonts, liberation-fonts +%endif From 021f47bb6b796197caf840e110f56493eeb7f2ac Mon Sep 17 00:00:00 2001 From: maxkadushkin Date: Fri, 1 Jul 2022 23:02:00 +0300 Subject: [PATCH 08/76] [macos] support external help for web-apps --- macos/ONLYOFFICE.xcodeproj/project.pbxproj | 2 ++ macos/ONLYOFFICE/main.mm | 10 ++++++++++ 2 files changed, 12 insertions(+) diff --git a/macos/ONLYOFFICE.xcodeproj/project.pbxproj b/macos/ONLYOFFICE.xcodeproj/project.pbxproj index 6b4ecc10a..ad5329931 100644 --- a/macos/ONLYOFFICE.xcodeproj/project.pbxproj +++ b/macos/ONLYOFFICE.xcodeproj/project.pbxproj @@ -3322,6 +3322,7 @@ _MAC, _PRODUCT_ONLYOFFICE, _X86_64_ONLY, + "URL_WEBAPPS_HELP=\\@\\\"$(URL_WEBAPPS_HELP)\\\"", ); INFOPLIST_FILE = "ONLYOFFICE/Resources/ONLYOFFICE-x86_64/Info.plist"; LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/../Frameworks @loader_path/../Frameworks @executable_path/../Resources/converter @loader_path/../Resources/converter"; @@ -3366,6 +3367,7 @@ _MAC, _PRODUCT_ONLYOFFICE, _X86_64_ONLY, + "URL_WEBAPPS_HELP=\\@\\\"$(URL_WEBAPPS_HELP)\\\"", ); INFOPLIST_FILE = "ONLYOFFICE/Resources/ONLYOFFICE-x86_64/Info.plist"; LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/../Frameworks @loader_path/../Frameworks @executable_path/../Resources/converter @loader_path/../Resources/converter"; diff --git a/macos/ONLYOFFICE/main.mm b/macos/ONLYOFFICE/main.mm index 98097ebe9..363dc254a 100644 --- a/macos/ONLYOFFICE/main.mm +++ b/macos/ONLYOFFICE/main.mm @@ -48,6 +48,7 @@ #import "ASCDocSignController.h" #import "ASCExternalController.h" #import "NSApplication+Extensions.h" +#import "NSDictionary+Extensions.h" CAscApplicationManager * createASCApplicationManager() { return new ASCApplicationManager(); @@ -111,6 +112,15 @@ int main(int argc, const char * argv[]) { std::wstring wLocale = [[params componentsJoinedByString:@"&"] stdwstring]; appManager->InitAdditionalEditorParams(wLocale); + NSMutableDictionary * vars = @{@"theme": uiTheme}.mutableCopy; +#ifdef URL_WEBAPPS_HELP + NSString * url = URL_WEBAPPS_HELP; + NSLog(@"set web-apps help url %@", URL_WEBAPPS_HELP); + if (url && [url length]) + [vars setValue:URL_WEBAPPS_HELP forKey:@"helpUrl"]; +#endif + appManager->SetRendererProcessVariable([[vars jsonString] stdwstring]); + // setup doc sign [ASCDocSignController shared]; From e3a42fc7a42e594f5a220ffbb4bacc8af3ac82f2 Mon Sep 17 00:00:00 2001 From: Maxim Kadushkin Date: Mon, 4 Jul 2022 14:17:43 +0300 Subject: [PATCH 09/76] [win-nix] changed argument name for link to external help --- win-linux/defaults.pri | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/win-linux/defaults.pri b/win-linux/defaults.pri index a76a90bf0..fe41a03b1 100644 --- a/win-linux/defaults.pri +++ b/win-linux/defaults.pri @@ -162,9 +162,9 @@ ENV_PRODUCT_VERSION = $$(PRODUCT_VERSION) VER_PRODUCT_VERSION_COMMAS=$$replace(FULL_PRODUCT_VERSION, \., ",") } -CMD_IN_HELP_URL = $$join(HELPURL,,\\\",\\\") +CMD_IN_HELP_URL = $$join(URL_WEBAPPS_HELP,,\\\",\\\") !isEmpty(CMD_IN_HELP_URL) { - DEFINES += URL_WEBAPPS_HELP=CMD_IN_HELP_URL + DEFINES += URL_WEBAPPS_HELP=$$CMD_IN_HELP_URL message(webapps help url: $$CMD_IN_HELP_URL) } From 7d464ad59fbd0323b0185c7b76f9f998b16db117 Mon Sep 17 00:00:00 2001 From: Semyon Bezrukov Date: Mon, 4 Jul 2022 17:08:32 +0300 Subject: [PATCH 10/76] Add suse to build targets (#507) * Fix variable style * Add suse to build targets --- win-linux/package/linux/Makefile | 20 ++++++++++---------- 1 file changed, 10 insertions(+), 10 deletions(-) diff --git a/win-linux/package/linux/Makefile b/win-linux/package/linux/Makefile index 579f1cdb8..36da7af35 100644 --- a/win-linux/package/linux/Makefile +++ b/win-linux/package/linux/Makefile @@ -54,19 +54,19 @@ endif RPM_BUILD_DIR = $(PWD)/rpm/builddir APT_RPM_BUILD_DIR = $(PWD)/apt-rpm/builddir URPMI_BUILD_DIR = $(PWD)/urpmi/builddir -SUSE-RPM_BUILD_DIR = $(PWD)/suse-rpm/builddir +SUSE_RPM_BUILD_DIR = $(PWD)/suse-rpm/builddir TAR_BUILD_DIR = $(PWD)/tar RPM_PACKAGE_DIR = $(RPM_BUILD_DIR)/RPMS/$(RPM_ARCH) APT_RPM_PACKAGE_DIR = $(APT_RPM_BUILD_DIR)/RPMS/$(APT_RPM_ARCH) URPMI_PACKAGE_DIR = $(URPMI_BUILD_DIR)/RPMS/$(URPMI_ARCH) -SUSE-RPM_PACKAGE_DIR = $(RPM_BUILD_DIR)/RPMS/$(RPM_ARCH) +SUSE_RPM_PACKAGE_DIR = $(RPM_BUILD_DIR)/RPMS/$(RPM_ARCH) TAR_PACKAGE_DIR = $(TAR_BUILD_DIR)/$(TAR_ARCH) RPM = $(RPM_PACKAGE_DIR)/$(PACKAGE_NAME)-$(PACKAGE_VERSION).$(RPM_ARCH).rpm APT_RPM = $(APT_RPM_PACKAGE_DIR)/$(PACKAGE_NAME)-$(PACKAGE_VERSION).$(APT_RPM_ARCH).rpm URPMI = $(URPMI_PACKAGE_DIR)/$(PACKAGE_NAME)-$(PACKAGE_VERSION).$(URPMI_ARCH).rpm -SUSE-RPM = $(SUSE-RPM_PACKAGE_DIR)/$(PACKAGE_NAME)-$(PACKAGE_VERSION).$(RPM_ARCH).rpm +SUSE_RPM = $(SUSE_RPM_PACKAGE_DIR)/$(PACKAGE_NAME)-$(PACKAGE_VERSION).$(RPM_ARCH).rpm DEB = deb/$(PACKAGE_NAME)_$(PACKAGE_VERSION)_$(DEB_ARCH).deb DEB_ASTRA = deb-astra/$(PACKAGE_NAME)_$(PACKAGE_VERSION)-astra_$(DEB_ARCH).deb TAR = $(TAR_PACKAGE_DIR)/$(PACKAGE_NAME)-$(PACKAGE_VERSION)-$(TAR_ARCH).tar.gz @@ -192,9 +192,9 @@ else endif RPM_PARAMS += --define '_binary_payload w7.xzdio' -.PHONY: all clean branding packages rpm deb deb-astra apt-rpm tar desktopeditor qt-redist libstdc++-addon libc-addon +.PHONY: all clean branding packages rpm deb deb-astra apt-rpm suse-rpm tar desktopeditor qt-redist libstdc++-addon libc-addon -all: rpm deb apt-rpm urpmi tar +all: rpm deb apt-rpm urpmi suse-rpm tar #installer rpm: $(RPM) @@ -209,7 +209,7 @@ apt-rpm: $(APT_RPM) urpmi: $(URPMI) -suse-rpm: $(SUSE-RPM) +suse-rpm: $(SUSE_RPM) rpm_aarch64 : ARCHITECTURE = arm64 rpm_aarch64 : RPM_ARCH = aarch64 @@ -217,7 +217,7 @@ rpm_aarch64 : $(RPM) installer: $(INSTALLER) -PACKAGES += deb rpm apt-rpm urpmi tar +PACKAGES += deb rpm apt-rpm urpmi suse-rpm tar ifneq ($(COMPANY_NAME), ONLYOFFICE) PACKAGES += deb-astra endif @@ -238,7 +238,7 @@ clean: $(RPM_BUILD_DIR) \ $(APT_RPM_BUILD_DIR) \ $(URPMI_BUILD_DIR) \ - $(SUSE-RPM_BUILD_DIR) \ + $(SUSE_RPM_BUILD_DIR) \ $(TAR_BUILD_DIR) \ rpm/$(PACKAGE_NAME).spec \ apt-rpm/$(PACKAGE_NAME).spec \ @@ -333,9 +333,9 @@ $(URPMI): desktopeditor urpmi/$(PACKAGE_NAME).spec $(RPM_PARAMS) \ package.spec -$(SUSE-RPM): desktopeditor suse-rpm/$(PACKAGE_NAME).spec +$(SUSE_RPM): desktopeditor suse-rpm/$(PACKAGE_NAME).spec cd suse-rpm && rpmbuild -bb \ - --define "_topdir $(SUSE-RPM_BUILD_DIR)" \ + --define "_topdir $(SUSE_RPM_BUILD_DIR)" \ --define "_package_arch $(RPM_ARCH)" \ --target $(RPM_ARCH) \ $(RPM_PARAMS) \ From db4f2519f68b4720d7cc698e371c04e3a4341be7 Mon Sep 17 00:00:00 2001 From: Maxim Kadushkin Date: Mon, 4 Jul 2022 18:35:46 +0300 Subject: [PATCH 11/76] [win-nix] unlocked Armenian language --- win-linux/langs/hy.qm | Bin 10775 -> 12557 bytes win-linux/package/windows/associate_page.iss | 64 +++++++++---------- win-linux/package/windows/uninstall_page.iss | 4 +- win-linux/src/clangater.cpp | 2 +- 4 files changed, 35 insertions(+), 35 deletions(-) diff --git a/win-linux/langs/hy.qm b/win-linux/langs/hy.qm index e9e63b7a542f2c2693fba67035714e867b72d396..255fbc8d0a807edfdedbc0962fa684780e93f2c9 100644 GIT binary patch delta 2724 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 Jx+V&x@DB*vFu(u+ diff --git a/win-linux/package/windows/associate_page.iss b/win-linux/package/windows/associate_page.iss index 0ede076aa..0e67695de 100644 --- a/win-linux/package/windows/associate_page.iss +++ b/win-linux/package/windows/associate_page.iss @@ -31,7 +31,7 @@ sv.AssociateDescription =Associera office-dokumentfiltyper med {#ASSC_APP_NAME} tr.AssociateDescription =Ofis belge dosyası türlerini şununla ilişkilendir {#ASSC_APP_NAME} vi.AssociateDescription =Mở loại tài liệu văn phòng với {#ASSC_APP_NAME} zh_CN.AssociateDescription =关联office文档文件类型与{#ASSC_APP_NAME} -;hy_AM.AssociateDescription =Կապակցել office փաստաթղթային ֆայլերը {#ASSC_APP_NAME}-ի հետ +hy_AM.AssociateDescription =Կապակցել office փաստաթղթային ֆայլերը {#ASSC_APP_NAME}-ի հետ ;hr.AssociateDescription =Povežite vrste datoteka uredskih dokumenata s{#ASSC_APP_NAME} da.AssociateDescription =Tilknyt office dokumentfiltyper med {#ASSC_APP_NAME} ;hi.AssociateDescription =एसोसिएट ऑफिस दस्तावेज़ फ़ाइल प्रकार {#ASSC_APP_NAME} के साथ @@ -71,7 +71,7 @@ sv.AssociateCaption =Filassocieringar tr.AssociateCaption =Dosya İlişkilendirmeleri vi.AssociateCaption =Chương trình mở mặc định zh_CN.AssociateCaption =文件关联 -;hy_AM.AssociateCaption =Ֆայլերի կապակցումներ +hy_AM.AssociateCaption =Ֆայլերի կապակցումներ ;hr.AssociateCaption =Pridruživanje datoteka da.AssociateCaption =Filtilknytning ;hi.AssociateCaption =फ़ाइल एसोसिएशन @@ -111,7 +111,7 @@ sv.AssociateDont =Associera inte tr.AssociateDont =İlişkilendirme vi.AssociateDont =Không đặt mặc định zh_CN.AssociateDont =不关联 -;hy_AM.AssociateDont =Չկապակցել +hy_AM.AssociateDont =Չկապակցել ;hr.AssociateDont =Ne pridružuj da.AssociateDont =Tilknyt ikke ;hi.AssociateDont =एसोसिएट नहीं करें @@ -151,7 +151,7 @@ sv.AssociateAll =Associera alla tr.AssociateAll =Tümünü ilişkilendir vi.AssociateAll =Mặc định tất cả zh_CN.AssociateAll =全部关联 -;hy_AM.AssociateAll =Կապակցել բոլորը +hy_AM.AssociateAll =Կապակցել բոլորը ;hr.AssociateAll =Pridruži sve da.AssociateAll =Tilknyt alle ;hi.AssociateAll =सभी को एसोसिएट करें @@ -191,7 +191,7 @@ sv.AssociateSel =Associera markerade tr.AssociateSel =İlişki seçildi vi.AssociateSel =Mặc định những loại được chọn zh_CN.AssociateSel =关联选定内容 -;hy_AM.AssociateSel =Կապակցել ընտրվածները +hy_AM.AssociateSel =Կապակցել ընտրվածները ;hr.AssociateSel =Pridruži odabrano da.AssociateSel =Tilknytning valgt ;hi.AssociateSel =एसोसिएट का चयन किया गया @@ -231,7 +231,7 @@ sv.AssociateAudio =Filtyper tr.AssociateAudio =Dosya türleri vi.AssociateAudio =Loại tập tin zh_CN.AssociateAudio =文件类型 -;hy_AM.AssociateAudio =Ֆայլերի տեսակներ +hy_AM.AssociateAudio =Ֆայլերի տեսակներ ;hr.AssociateAudio =Vrste datoteka da.AssociateAudio =Filtyper ;hi.AssociateAudio =फ़ाइल प्रकार @@ -271,7 +271,7 @@ sv.extMSWord =Microsoft Word dokument tr.extMSWord =Microsoft Word Belgesi vi.extMSWord =Tài liệu Microsoft Word zh_CN.extMSWord =Microsoft Word文档 -;hy_AM.extMSWord =Microsoft Word փաստաթուղթ +hy_AM.extMSWord =Microsoft Word փաստաթուղթ ;hr.extMSWord =Microsoft Word dokument da.extMSWord =Microsoft Word Dokument ;hi.extMSWord =माइक्रोसॉफ्ट वर्ड दस्तावेज़ @@ -311,7 +311,7 @@ sv.extMSExcel =Microsoft Excel arbetsbok tr.extMSExcel =Microsoft Excel Çalışma Kitabı vi.extMSExcel =Microsoft Excel Workbook zh_CN.extMSExcel =Microsoft Excel工作簿 -;hy_AM.extMSExcel =Microsoft Excel աշխատանքային գիրք +hy_AM.extMSExcel =Microsoft Excel աշխատանքային գիրք ;hr.extMSExcel =Microsoft Excel radna knjiga da.extMSExcel =Microsoft Excel Ark ;hi.extMSExcel =माइक्रोसॉफ्ट एक्सेल वर्कबुक @@ -351,7 +351,7 @@ sv.extMSPresentation =Microsoft PowerPoint presentation tr.extMSPresentation =Microsoft PowerPoint Sunumu vi.extMSPresentation =Trình chiếu Microsoft PowerPoint zh_CN.extMSPresentation =Microsoft PowerPoint演示文稿 -;hy_AM.extMSPresentation =Microsoft PowerPoint ներկայացում +hy_AM.extMSPresentation =Microsoft PowerPoint ներկայացում ;hr.extMSPresentation =Microsoft PowerPoint prezentacija da.extMSPresentation =Microsoft PowerPoint Præsentation ;hi.extMSPresentation =माइक्रोसॉफ्ट पावरपॉइंट प्रस्तुति @@ -392,7 +392,7 @@ sv.extMSSlideshow =Microsoft PowerPoint bildspel tr.extMSSlideshow =Microsoft PowerPoint Slayt Gösterisi vi.extMSSlideshow =Trình chiếu Microsoft PowerPoint zh_CN.extMSSlideshow =Microsoft PowerPoint幻灯片 -;hy_AM.extMSSlideshow =Microsoft PowerPoint սլայդշոու +hy_AM.extMSSlideshow =Microsoft PowerPoint սլայդշոու ;hr.extMSSlideshow =Microsoft PowerPoint prikaz slajdova da.extMSSlideshow =Microsoft PowerPoint Diasshow ;hi.extMSSlideshow =माइक्रोसॉफ्ट पावरपॉइंट स्लाइडशो @@ -432,7 +432,7 @@ sv.extODT =OpenDocument Textfil tr.extODT =OpenDocument Metin dosyası vi.extODT =OpenDocument File văn bản zh_CN.extODT =OpenDocument文本文件 -;hy_AM.extODT =OpenDocument տեսքստային փաստաթուղթ +hy_AM.extODT =OpenDocument տեսքստային փաստաթուղթ ;hr.extODT =OpenDocument tekstni file da.extODT =OpenDokument Tekstfil ;hi.extODT =ओपनदस्तावेज़ टेक्स्ट दस्तावेज़ @@ -472,7 +472,7 @@ sv.extODS =OpenDocument kalkylblad tr.extODS =OpenDocument Tablosu vi.extODS =OpenDocument Bảng tính zh_CN.extODS =OpenDocument电子表格 -;hy_AM.extODS =OpenDocument աղյուսակ +hy_AM.extODS =OpenDocument աղյուսակ ;hr.extODS =OpenDocument proračunska tablica da.extODS =ÅbenDokument Regneark ;hi.extODS =ओपनदस्तावेज़ स्प्रेडशीट @@ -512,7 +512,7 @@ sv.extODP =OpenDocument presentation tr.extODP =OpenDocument Sunumu vi.extODP =OpenDocument Trình chiếu zh_CN.extODP =OpenDocument演示文稿 -;hy_AM.extODP =OpenDocument ներկայացնում +hy_AM.extODP =OpenDocument ներկայացնում ;hr.extODP =OpenDocument prezentacija da.extODP =ÅbenDokument Præsentation ;hi.extODP =ओपनदस्तावेज़ प्रस्तुति @@ -552,7 +552,7 @@ sv.extDOC =Word 97-2003-dokument tr.extDOC =Word 97-2003 Belgesi vi.extDOC =Tài liệu Word 97-2003 zh_CN.extDOC =Word 97-2003 文档 -;hy_AM.extDOC =Word 97-2003 փաստաթուղթ +hy_AM.extDOC =Word 97-2003 փաստաթուղթ ;hr.extDOC =Word 97-2003 Dokument da.extDOC =Word 97-2003-dokument ;hi.extDOC =वर्ड 97-2003 दस्तावेज़ @@ -592,7 +592,7 @@ sv.extDOCX =Office Open XML-dokument tr.extDOCX =Office Open XML Belgesi vi.extDOCX =Tài liệu Office Open XML zh_CN.extDOCX =Office Open XML 文档 -;hy_AM.extDOCX =Office Open XML փաստաթուղթ +hy_AM.extDOCX =Office Open XML փաստաթուղթ ;hr.extDOCX =Office Open XML Dokument da.extDOCX =Office Open XML-dokument ;hi.extDOCX =ऑफिस ओपन एक्सएमएल दस्तावेज़ @@ -632,7 +632,7 @@ sv.extDOCXF =ONLYOFFICE Formulärmall tr.extDOCXF =ONLYOFFICE Form Şablonu vi.extDOCXF =Mẫu biểu mẫu ONLYOFFICE zh_CN.extDOCXF =ONLYOFFICE 文档表单模板 -;hy_AM.extDOCXF =ONLYOFFICE փաստաթղթի ձևանմուշ +hy_AM.extDOCXF =ONLYOFFICE փաստաթղթի ձևանմուշ ;hr.extDOCXF =ONLYOFFICE Predložak obrasca da.extDOCXF =ONLYOFFICE Formularskabelon ;hi.extDOCXF =ओनलीऑफिस दस्तावेज़ फॉर्म टेम्पलेट @@ -672,7 +672,7 @@ sv.extXLS =Excel 97-2003-kalkylblad tr.extXLS =Excel 97-2003 Elektronik Tablosu vi.extXLS =Bảng tính Excel 97-2003 zh_CN.extXLS =Excel 97-2003 电子表格 -;hy_AM.extXLS =Excel 97-2003 աղյուսակ +hy_AM.extXLS =Excel 97-2003 աղյուսակ ;hr.extXLS =Excel 97-2003 Proračunska tablica da.extXLS =Excel 97-2003-regneark ;hi.extXLS =एक्सेल 97-2003 स्प्रेडशीट @@ -712,7 +712,7 @@ sv.extXLSX =Office Open XML-kalkylblad tr.extXLSX =Office Open XML Elektronik Tablosu vi.extXLSX =Bảng tính Office Open XML zh_CN.extXLSX =Office Open XML 电子表格 -;hy_AM.extXLSX =Office Open XML աղյուսակ +hy_AM.extXLSX =Office Open XML աղյուսակ ;hr.extXLSX =Office Open XML Proračunska tablica da.extXLSX =Office Open XML-regneark ;hi.extXLSX =ऑफिस ओपन एक्सएमएल स्प्रेडशीट @@ -752,7 +752,7 @@ sv.extPPT =PowerPoint 97-2003-presentation tr.extPPT =PowerPoint 97-2003 Sunumu vi.extPPT =Trình chiếu PowerPoint 97-2003 zh_CN.extPPT =PowerPoint 97-2003 演示文稿 -;hy_AM.extPPT =PowerPoint 97-2003 ներկայացում +hy_AM.extPPT =PowerPoint 97-2003 ներկայացում ;hr.extPPT =PowerPoint 97-2003 Prezentacija da.extPPT =PowerPoint 97-2003-præsentation ;hi.extPPT =पावरपॉइंट 97-2003 प्रस्तुति @@ -792,7 +792,7 @@ sv.extPPTX =Office Open XML-presentation tr.extPPTX =Office Open XML Sunumu vi.extPPTX =Bản trình bày Office Open XML zh_CN.extPPTX =Office Open XML 演示文稿 -;hy_AM.extPPTX =Office Open XML ներկայացում +hy_AM.extPPTX =Office Open XML ներկայացում ;hr.extPPTX =Office Open XML Prezentacija da.extPPTX =Office Open XML-præsentation ;hi.extPPTX =ऑफिस ओपन एक्सएमएल स्लाइड शो @@ -832,7 +832,7 @@ sv.extPPS =PowerPoint 97-2003-bildspel tr.extPPS =PowerPoint 97-2003 Slayt Gösterisi vi.extPPS =Trình chiếu PowerPoint 97-2003 zh_CN.extPPS =PowerPoint 97-2003 幻灯片放映 -;hy_AM.extPPS =PowerPoint 97-2003 սահիկաշար +hy_AM.extPPS =PowerPoint 97-2003 սահիկաշար ;hr.extPPS =PowerPoint 97-2003 Projekcija da.extPPS =PowerPoint 97-2003-diasshow ;hi.extPPS =पावरपॉइंट 97-2003 स्लाइड शो @@ -872,7 +872,7 @@ sv.extPPSX =Office Open XML-bildspel tr.extPPSX =Office Open XML Slayt Gösterisi vi.extPPSX =Trình chiếu Office Open XML zh_CN.extPPSX =Office Open XML 幻灯片 -;hy_AM.extPPSX =Office Open XML սահիկաշար +hy_AM.extPPSX =Office Open XML սահիկաշար ;hr.extPPSX =Office Open XML Projekcija da.extPPSX =Office Open XML-diasshow ;hi.extPPSX =ऑफिस ओपन एक्सएमएल स्लाइड शो @@ -912,7 +912,7 @@ sv.extRTF =Rich Text Format-fil tr.extRTF =Zengin Metin Format Dosyası vi.extRTF =Tệp định dạng văn bản đa dạng thức zh_CN.extRTF =富文本格式 -;hy_AM.extRTF =Rich Text Format ֆայլ +hy_AM.extRTF =Rich Text Format ֆայլ ;hr.extRTF =Format obogaćenog teksta da.extRTF =Rich Text Format-fil ;hi.extRTF =रिच टेक्स्ट फॉर्मेट फ़ाइल @@ -952,7 +952,7 @@ sv.extCSV =Kommaavgränsade värden tr.extCSV =Virgülle Ayrılmış Değerler vi.extCSV =Các giá trị được ngăn cách với nhau bằng dấu phẩy zh_CN.extCSV =逗号分隔值 -;hy_AM.extCSV =Ստորակետերով առանձնացված արժեքներ +hy_AM.extCSV =Ստորակետերով առանձնացված արժեքներ ;hr.extCSV =Vrijednosti odvojene zarezima da.extCSV =Kommaseparerede værdier ;hi.extCSV =अल्पविराम से विभाजित मान @@ -992,7 +992,7 @@ sv.extPDF =Portabelt dokumentformat tr.extPDF =Taşınabilir Belge vi.extPDF =Tài liệu di động zh_CN.extPDF =便携式文件 -;hy_AM.extPDF =Դյուրակիր փաստաթղթի ձևաչափ +hy_AM.extPDF =Դյուրակիր փաստաթղթի ձևաչափ ;hr.extPDF =Prijenosni format dokumenta da.extPDF =Portable Document ;hi.extPDF =पोर्टेबल दस्तावेज़ @@ -1032,7 +1032,7 @@ sv.extDJVU =Digitalt dokument tr.extDJVU =Dijital Belge vi.extDJVU =Tài liệu kỹ thuật số zh_CN.extDJVU =数字文件 -;hy_AM.extDJVU =Թվային փաստաթուղթ +hy_AM.extDJVU =Թվային փաստաթուղթ ;hr.extDJVU =Digitalni dokument da.extDJVU =Digitalt dokument ;hi.extDJVU =डिजिटल दस्तावेज़ @@ -1072,7 +1072,7 @@ sv.extXPS =OpenXPS-Dokument tr.extXPS =OpenXPS Döküman vi.extXPS =Tài liệu OpenXPS zh_CN.extXPS =OpenXPS 文档 -;hy_AM.extXPS =փաստաթուղթ OpenXPS +hy_AM.extXPS =փաստաթուղթ OpenXPS ;hr.extXPS =Dokument OpenXPS da.extXPS =OpenXPS Dokument ;hi.extXPS =OpenXPS दस्तावेज़ @@ -1112,7 +1112,7 @@ sv.extOFORM =ONLYOFFICE ifyllbart onlineformulär tr.extOFORM =ONLYOFFICE Doldurulabilir Çevrimiçi Form vi.extOFORM =Biểu mẫu trực tuyến có thể điền ONLYOFFICE zh_CN.extOFORM =ONLYOFFICE可填写的在线表格 -;hy_AM.extOFORM =ONLYOFFICE լրացվող առցանց ձև +hy_AM.extOFORM =ONLYOFFICE լրացվող առցանց ձև ;hr.extOFORM =ONLYOFFICE Ispunjivi online obrazac da.extOFORM =ONLYOFFICE udfyldbar onlineformular ;hi.extOFORM =ओनलीऑफिस भरने योग्य ऑनलाइन फॉर्म @@ -1152,7 +1152,7 @@ sv.defprogAppDescription=Gratis stationär kontorssvit för dokumentredigering o tr.defprogAppDescription=Belge düzenleme ve işbirliği için ücretsiz masaüstü ofis program paketi vi.defprogAppDescription=Bộ công cụ văn phòng dành cho máy tính miễn phí để chỉnh sửa tài liệu và cùng làm việc zh_CN.defprogAppDescription=用于文档编辑和协作的免费桌面办公套件 -;hy_AM.defprogAppDescription=Աշխատասեղանի անվճար office փաթեթ՝ փաստաթղթերի խմբագրման և գործակցության համար +hy_AM.defprogAppDescription=Աշխատասեղանի անվճար office փաթեթ՝ փաստաթղթերի խմբագրման և գործակցության համար ;hr.defprogAppDescription=Besplatni stolni uredski paket za uređivanje dokumenata i surađivanje da.defprogAppDescription=Gratis skrivebord office-pakke til dokumentredigering og samarbejde ;hi.defprogAppDescription=मुफ़्त डेस्कटॉप ऑफिस सुइट दस्तावेज़ संपादन और सहयोग के लिए @@ -1192,7 +1192,7 @@ sv.warnWin10FileAssociationDesc=För att associera filerna med programmet, öppn tr.warnWin10FileAssociationDesc=Uygulamayı dosyalarla ilişkilendirmek için kurulum tamamlandıktan sonra aşağıdaki pencereyi açın: vi.warnWin10FileAssociationDesc=Để chọn ứng dụng làm chương trình mặc định để mở tập tin, hãy mở cửa sổ sau sau khi hoàn thành cài đặt: zh_CN.warnWin10FileAssociationDesc=如需关联文件与应用程序,请在安装完成后打开以下窗口: -;hy_AM.warnWin10FileAssociationDesc=Ֆայլերը հավելվածի հետ կապակցելու համար՝ բացեք հետևյալ պատուհանը տեղադրման ավարտից հետո՝ +hy_AM.warnWin10FileAssociationDesc=Ֆայլերը հավելվածի հետ կապակցելու համար՝ բացեք հետևյալ պատուհանը տեղադրման ավարտից հետո՝ ;hr.warnWin10FileAssociationDesc=Za pridruživanje datoteka s aplikacijom, otvorite sljedeći prozor po završetku instalacije: da.warnWin10FileAssociationDesc=For at knytte filerne med applikationen, skal åbne følgende vindue efter installationen er færdig: ;hi.warnWin10FileAssociationDesc=एप्लिकेशन के साथ फ़ाइलों को एसोसिएट करने के लिए, इंस्टॉलेशन पूरा होने के बाद, अगली विंडो खोलें: @@ -1232,7 +1232,7 @@ sv.warnWin10FileAssociationPath=Inställningar > Appar > Standardappar tr.warnWin10FileAssociationPath=Ayarlar > Uygulamalar > Varsayılan uygulamalar vi.warnWin10FileAssociationPath=Cài đặt > Ứng dụng > Ứng dụng mặc định zh_CN.warnWin10FileAssociationPath=设置 > 应用 > 默认应用 -;hy_AM.warnWin10FileAssociationPath=Կարգավորումներ > Հավելվածներ > Լռելյայն հավելվածներ +hy_AM.warnWin10FileAssociationPath=Կարգավորումներ > Հավելվածներ > Լռելյայն հավելվածներ ;hr.warnWin10FileAssociationPath=Postavke > Aplikacije > Zadane aplikacije da.warnWin10FileAssociationPath=Instillinger > Applikationer > Standardapps ;hi.warnWin10FileAssociationPath=सेटिंग > ऐप्स > डिफ़ॉल्ट ऐप्स @@ -1272,7 +1272,7 @@ sv.runOpenDefaultApps=Öppna Standardappar tr.runOpenDefaultApps=Varsayılan uygulamaları aç vi.runOpenDefaultApps=Mở ứng dụng mặc định zh_CN.runOpenDefaultApps=打开默认应用 -;hy_AM.runOpenDefaultApps=Բացել լռելյայն հավելվածները +hy_AM.runOpenDefaultApps=Բացել լռելյայն հավելվածները ;hr.runOpenDefaultApps=Otvori zadane aplikacije da.runOpenDefaultApps=Åben Standardapps ;hi.runOpenDefaultApps=डिफ़ॉल्ट ऐप्स खोलें diff --git a/win-linux/package/windows/uninstall_page.iss b/win-linux/package/windows/uninstall_page.iss index 8674c584b..b84c50582 100644 --- a/win-linux/package/windows/uninstall_page.iss +++ b/win-linux/package/windows/uninstall_page.iss @@ -12,7 +12,7 @@ pt_BR.UninstallPageLabel=Clique em Desinstalar para prosseguir com a desinstala pl.UninstallPageLabel=Kliknij Odinstaluj, aby rozpocząć proces odinstalowywania. lo.UninstallPageLabel=ກົດປຸ່ມຖອນການຕິດຕັ້ງ ເພື່ອດຳເນີນການຖອນການຕິດຕັ້ງ. nl.UninstallPageLabel=Druk op Verwijderen om verder te gaan met het verwijderen. -;hy_AM.UninstallPageLabel=Ապատեղադրեք՝ ապատեղադրումը շարունակելու համար: +hy_AM.UninstallPageLabel=Ապատեղադրեք՝ ապատեղադրումը շարունակելու համար: en.UninstallOptionClearData=Clear all user settings and application cached data cs.UninstallOptionClearData=Vymažte všechna uživatelská nastavení a data uložená v paměti @@ -26,7 +26,7 @@ pt_BR.UninstallOptionClearData=Limpar todas definições de usuário e dados sal pl.UninstallOptionClearData=Usuń wszystkie ustawienia użytkownika oraz dane pamięci podręcznej aplikacji lo.UninstallOptionClearData=ລືບຂໍ້ມູນທີ່ເຫັບໄວ້ໃນແອັບພລິເຄຊັ່ນ ແລະ ລືບການຕັ້ງຄ່າຜູ້ໃຊ້ທັ້ງໝົດ nl.UninstallOptionClearData=Alle gebruikersinstellingen en cachegegevens van toepassingen wissen -;hy_AM.UninstallOptionClearData=Մաքրել օգտատիրոջ բոլոր կարգավորումները և հավելվածի քեշավորված տվյալները +hy_AM.UninstallOptionClearData=Մաքրել օգտատիրոջ բոլոր կարգավորումները և հավելվածի քեշավորված տվյալները [Code] diff --git a/win-linux/src/clangater.cpp b/win-linux/src/clangater.cpp index 9fbf7efd3..3a277bd43 100644 --- a/win-linux/src/clangater.cpp +++ b/win-linux/src/clangater.cpp @@ -136,7 +136,7 @@ private: // ,{"hi-IN", "हिन्दी"} // ,{"hr-HR", "Hrvatska"} ,{"hu-HU", "Magyar nyelv"} -// ,{"hy-AM", "Հայաստան"} + ,{"hy-AM", "Հայաստան"} ,{"id-ID", "Indonesian"} ,{"no-NO", "Norsk"} ,{"ro-RO", "Romanian"} From 30c42a7f21b721c7f7e14958fadd40355404a9cf Mon Sep 17 00:00:00 2001 From: Maxim Kadushkin Date: Mon, 4 Jul 2022 18:36:25 +0300 Subject: [PATCH 12/76] [win-nix] updated translations --- win-linux/langs/be.qm | Bin 10542 -> 11852 bytes win-linux/langs/bg.qm | Bin 10829 -> 12559 bytes win-linux/langs/ca.qm | Bin 11216 -> 12546 bytes win-linux/langs/cs.qm | Bin 11979 -> 12259 bytes win-linux/langs/da.qm | Bin 10451 -> 11661 bytes win-linux/langs/de.qm | Bin 12881 -> 12977 bytes win-linux/langs/el_GR.qm | Bin 11285 -> 13209 bytes win-linux/langs/en.qm | Bin 10243 -> 10241 bytes win-linux/langs/es.qm | Bin 13149 -> 13147 bytes win-linux/langs/et.qm | Bin 10495 -> 11699 bytes win-linux/langs/fi.qm | Bin 10881 -> 12401 bytes win-linux/langs/fr.qm | Bin 12929 -> 12949 bytes win-linux/langs/ga.qm | Bin 11190 -> 11880 bytes win-linux/langs/gl.qm | Bin 11169 -> 12493 bytes win-linux/langs/hi.qm | Bin 11207 -> 11835 bytes win-linux/langs/hr.qm | Bin 10876 -> 12050 bytes win-linux/langs/hu.qm | Bin 10670 -> 11952 bytes win-linux/langs/id.qm | Bin 10408 -> 11132 bytes win-linux/langs/it_IT.qm | Bin 12857 -> 12857 bytes win-linux/langs/ja.qm | Bin 10432 -> 10468 bytes win-linux/langs/ko.qm | Bin 8904 -> 10090 bytes win-linux/langs/lo.qm | Bin 11261 -> 11677 bytes win-linux/langs/lt.qm | Bin 10961 -> 12271 bytes win-linux/langs/lv.qm | Bin 10825 -> 12499 bytes win-linux/langs/nl.qm | Bin 12309 -> 12637 bytes win-linux/langs/no.qm | Bin 10337 -> 11543 bytes win-linux/langs/pl.qm | Bin 10681 -> 12443 bytes win-linux/langs/pt_BR.qm | Bin 12307 -> 12585 bytes win-linux/langs/pt_PT.qm | Bin 11371 -> 13097 bytes win-linux/langs/ro.qm | Bin 11170 -> 12920 bytes win-linux/langs/ru.qm | Bin 12360 -> 12358 bytes win-linux/langs/sk.qm | Bin 10241 -> 11911 bytes win-linux/langs/sl.qm | Bin 10878 -> 12452 bytes win-linux/langs/sv.qm | Bin 10429 -> 11665 bytes win-linux/langs/tr.qm | Bin 10628 -> 12192 bytes win-linux/langs/uk.qm | Bin 10496 -> 12294 bytes win-linux/langs/vi.qm | Bin 10582 -> 12302 bytes win-linux/langs/zh_CN.qm | Bin 9246 -> 9216 bytes win-linux/langs/zh_HK.qm | Bin 8238 -> 8754 bytes 39 files changed, 0 insertions(+), 0 deletions(-) diff --git a/win-linux/langs/be.qm b/win-linux/langs/be.qm index 10971f1f94a581c868320d13399fb01e507fecc7..ffe689e7642128ffb1f7ecd441d493c97af7c0f0 100644 GIT binary patch delta 2288 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 K6w^yp+P?uwf)P9b diff --git a/win-linux/langs/bg.qm b/win-linux/langs/bg.qm index b8fb2a32486924e169d064b4a43947088865fa53..7e86c8efb39654995e45e158f071801b432facde 100644 GIT binary patch delta 2674 zcma)6eQc9;9{;xcwcWa{rR%nK>)JlsENsBW-hg&%x3=55b>fNx6%n1RE3>%uY1%U9 zF0rC9F&-C)zr%xw;mr9;W{6CqMDZ2E(D<%*hdJ(c=Kc_3LWm|t;(304Pf<3AdU^6Z zpXc}X{eFI*@5_4|caLPfFOOQ^Ie%d9d(~C1-~RZqGeM#}E0LxHh*x0!BrpQpK(s=P ziD>w3;C^D^*N6&s<#1^&>5d;JDx9N|-n~SIc^bUOL*zU~I|qk}^!6MseV(42IZb3a zs_Mx85kD1us%O9b76!joeUX2ZsMw|UJeLJds{0R~C8|BAK6vjpAoQvF^zOTfN_Bbk z%095TA@BH5m}rSDZ?0=2k##e>)dhQ{_p@C_3z5ps_Jv<1%6}$@^-DFn|J8z6gJ#8J z&k~ia(qy}fUxuLsvd%l`OA0w4$O|^?|Nhk#3=v7OaYO}Sg_%H15rbB z!LH0Fko19q7mwkl7H`3qNG!)(acR#7MAw9JxT3Y#n-@k*XAD*i2pL@ls~tBm z9WYq?FgEK94l!T(U=FK-Ih6jK!`k}|4j0yI_8S~0fX)(wB=(nWGDy9^a=(IZDu2n~ zS&M9zh7IwPa8P-{u=o5Ikmx4E$$2E5R&6vs{yqW`Hr{pdG>AImh{IoJFRJT}f%UAK z1z9KaFdx1F{JUu-NzBih*jm=cR#(PqkD9yWL97hYI=UGc!V{)$>IIiN_-ls8PUgeN$C~i%!N||NtQ+$Y=7+61T275% zAj8WPyw&H6%+%tw_C&fjg`^%ix?>`i$Vhd|8%O2n6yI6tunjF>ekCud!om+&t^6Z% z*fYSc0Sgc7fN!BsPP2As;TOCvvFZXJ!PL##u{#8e@P^WZuC~jkaWA1m245K(1o4&W zPVjHxXG%lYZeeB6UYze_Ey_KA@`{LH?1f!FR^3YUd~7x56h)|??pAb7(MG5{MH#-P zY+%?+1GJv{u*(g*onR-Tz9tuMar%;O+i`XbBcY-Ak70CK!HR+PeNuR0>sU;Pw>>$w zQW6jw<8PYm{NA$9jQwm0Ece1oi?GfAtv6e`@z)H`BIATtWEeDQ;@iqYWle~@Oe0Vs z35-I47#P1;zES1p6IPqb$uCyfd9B6A$E{VSG9}*@sLeM!Y<$|{Qw7CtOAS1=D}ENK z#y_+SWJi7>s~q6d0amCAaJ(v?L$;dI0^AihnvPMFYq3af9 znnvCxrzV6>vz69HwW)j$T9USu1nUk45{-G$Jll)pH9 zWx#P!3&2?sOeas-I%@k7j9+O5Kkc1;*Jf2M8~p|ISJ&xkZn6KV!HW)cg|O9)QzY~5i}*g7g`c?828K;J3m%A z+ZUOQe^ZIv-W#iZ#-^XCZGt2l&@gTMxoTfm4Q*BmNW$eV6(6pV zYlPFv%H3C8}%5&9Q@?Cl8l7p;7Nyt9YU2q?f`E7UxV0w+n zeg1osEt?UY1x`eth*Fv+7i52RV0>Ik??@))R39Q2skvSrGb*&Mz3cMW+=<_|7Gj;h)?6 wiVz%2u4XB^HIa}r(nw5_ld%LC$th`6j-?aJGE!_Rp3bBj7ZG|8gw!h4j}c=Mh5!Hn delta 1303 zcmY*Xe{2(V9DUc`U4QOM*RJjQi>_UV3J$}JGB-2EwrcCf=GI9G=*%#h88Z^y5Rp(> zVq(mQ3+HsiDOnVd1vapduqbL|W}6X6Q2yAG#X>YO#$+Lw5HP5(?UJ3jG_T)x@ALV* z&%5t?-ItQ-+Vd}XepnhEzEtM_=J~M;i<<#m7LaNHJ%2eY_Y+%z$Q@uU&yiz5*G2Mm z5aVA1rojS+=3tnf1T3>CZW;!ZEVk^g27FK9z?Lq+94KJfR-xwodB9~7PNZ+&W~0Nx z4dWD06xCIqN)vbMj=c334g9Rfmm>f=_0#Qfz&5X+txEzWe(~8T8x#+SgEluH1jLc} zSAg;J0!Dt64F5)G;6Z8a$0q>0Uuq~i&pv0RzF$nNi%KUq{mMlTN~%jx()*;vg@Pj?H!{qvY0@6N%>D&eGN8+Q*Yp40-7l#?(ggIlUq3EzVJ5|k(bjZ@w zEdha;CFZ@K`wtYb;*O>H6%!3vEiVPf0ePq8wZ+e$a%uUe+N7;NC6)gio1 z6s(W!Jxbvj>qmQTF{nA~Gf%2O_{9PShm~NIg1~hp_&w2kS_$O} z99xx86VYi|#%`thQC>ygMWttk1KeZE@X`$?bWfSd@&?H|n{DheZ${kq`rUaZ@LLbC zrdiMIJ)&29T-+#DiJ47$pUoaZ13K^wLSni2kXS9&sH4R(M>!giAls?o4UUB2KJu+- zP+xZJFs&>6M~bI1Rd&`1kElz|-K=dw8!Ivy$B+-Iq4S&m( zP^aA2SkaPyyW(xe6El^QZDpsp8ZJ#z(@Gz0n(E`Fv1PVH!>;qj=su@S(yvdQ@YZLB ze3d#%+epSV((8ekBfQMk|Bo+KdxDj;+{UK^Db2ge)rowkHZHSb_uT5-f;n|ktIli) zMFgRiX_cs_{6Y0h*@rA{r$}p~Km4xna9&dt`P351x5zio+>2ZlSde09+7<6cbJGf} e*4wU%oVQfo^NP2HidbgfnjJ>NJG>P-LHG}MHyS(u diff --git a/win-linux/langs/ca.qm b/win-linux/langs/ca.qm index 14558895bfc721ac61081361135ee24a5bfd99c9..e8564e3efa034e4d5d1fe66faf91991a1c081079 100644 GIT binary patch delta 2279 zcmaJ>3v82B6#o8o?bdE>_vp5EUAuo9gLPxTHWkVUW3RH7u@~cM6x*#E#r44`I3`j7 z4T)KT@q(EVLl!}VOi8Flh=7Dg7)C*&Bn+G^gc#8fL`VoK;<pDQEmf_1@01IR%o9sZs zJlQ~5GoWvdej%6Q=|a&x+B85gMfchd1Ik$uYw3~4Jjekw9(lnBdx0dcJXEPZNP!N> zgIAP5a=*NP&NU!vi~PXWOuE=DAGr7)RWd9ey5t9PZz>jEs06ZBDO|UFKuo8?<13-{ zfWmj2faG*3dVhTph;34Y%a;Nv`xV2RXx})f7-nQM?#GnhBAak5=ACmJ0MlQgn0<|V zfVlOssZ*yDJ(zJ=n zUs9W>C0gY_^0$G!^Qy#DGcf6%YU3qhP}rjCweKKit*ZV5REXh@Dx63F3%sf?_FX4n zme*9nhpg1!Z{n(5av<9kXG^ybMTaAH@=#oD2LUi`VD|-cD0_E&vhXIkrNqzd-c1Ck zE~*vX3ka`Ht*bgmoje|~1!46pnVmZJu|_Ya zblP@}-bDBkf6(aX(mJ_ZW9IwmyCOEDTe2Z!rAIb$9%#(D6CHHaiPaEkxDlY8P8vaJCqO%$bkagTUYf6F zuP52Eicv-D7Oau>eB>*l6&|$H2=a*Ra+0H9<~Ux9rChD#Z^d*Jq8QWYD`B&f9Yq!6 z_}8P2J`d$`)17)k=Z24FOE4d`?8D?bVG;Y?Y+A}I@DiR53B5=1twSxA(j6Opc2uI8 zcJq)=1hh)%yC||HmP=DXLtj;2xx^+``CHa_-M*lhmp`S|-_pgLMzgSl1q?=})+HH6 z@Q=lkp=&CfjRwNtA`~34lZFSkDXW`y+_VZ3NNf?te9}B<|X2#p~yDH?2mh zH#i#RigvHF-OUSM8EBs@a^r4ijXD#%m~ufq;jw%NQ|qh_;+I$IBIG>Z=qmqsSS8m5 zKXVZ;yh_fAlNr+-vN>pAJq9b=oK`B>*jZgBYfjH*Kck|Leq03W?+xVM>P9s+;FFrUcm>IVH;g}aPRxi*BSiCu>?8vH9LitLQ`@Q#Tom`J~i#4zt(tv zAFi^88lf34t&^ayBHd9D%x!*4Xrn)cmEF)O#|u0$^P@x&&2*7OMgh2hoZ%~(X9b~# z)S35WQOB}uLLC>b>FK-}vmLT&sA9kA4QzGxJa#lqQ?!gg1t?48choJdMkJQJ%o7mH UJ6l$G)=JN@+Y<=)WlvT93(Ro$&;S4c delta 1310 zcmZuvZD?C%7(KV?z4^G!O`EUYB<)Swq-oYEWeRFo!SyRPp-rB z4;CAcfflX4Rw_)S*jYL@3JXGqn~JSAif-yCY{P1q4yXR817#pGeUj^s_TsN|pYuNV zdCocSn;-i6;auC&WAYc9C#Jt@sQc*P?1l9XpyDRL?*?>ts~Gr>upbDV19lQ0NC25- zph-k!^h3bpQ?X$h`jthX>H%20rvXbH;>W^(=NC-GGt@V$Vxx`Q{l-qh?$pg>!s<<>lDN{(&`317@@~vnY~Civ}QT-*HsdFBnyOA3oW`Q zEVf3pV-!b`#W;NEL<;*@(He0CxA9$wVIKxqt1ZTb*o4c*ccCAhY>w)?O0~XRV~~06 zajuOG+dWKiSlKIXfh8SL&9rVLFn|tLbj-WtZF?f8gu@5K_3n36As%IStx;W48d7tCI~M^HuhA38cG-Lz7(YBn#akLZGnk&s z1C=XG^A%!Mh?(8mqQl$SNgKmurw=l<*^L9j1lzyT3h)9O-jo3L5gV2E(mKsbPdfp3 zmD4V+`8-gaS4SD&Sl>?$sJEIfDQ^JRtZCtKq481Em&#tC z?w;wFVTyRdTvq7@erbP658W`N7>az%glFeb_`3 zXe((C(?kTWq{HC@O6N2N0wssyCh`zdow^$PfMpjmLB5wP`!mz@j*z8wZJXwHLG9An zgksCf7c^acrj*U}0nSgQn?iTpa8+|_R%$nSA(Y4tn#yl=JMehnBuThIQ;Q;(J?4dqVGT_iY|ed@bv57Ur~ zJ7@LkSI17943P;T3I)U9(T+4C5D`~-S4A%2?y&@l=x6uh7>PvMIs*ykNSH(dLw{q6 zvJr%+zNWt4VINcI3WXGY1W7N`p0Aj$085|H5|8upa59-lDdG@+IvN*c-s=x4X@&O( zBl3vPNGfAbcQ__S6sFMn2>PhOFv1j5bgc)C6s3YkWGM1fSBN9b05&L-w9SHC%S7@M zB_D+c#z+|a=O)lW{drF#9|=iPLgB+ApGb-l8B3)2p@b+)bqX)0qp~6g|MPXR@EnHu It=H-Q0Q57(%m4rY delta 576 zcmXAmT}V@57{~wbaXV{g+ZiL>adYRmvzTsa3JJmVLd01da0z8l7dmD{jm8MF%z=p) zK|~*})1)Yhh+SlZz)@n57sjv%+C_NL2eb?Mh{XY+elG+XUe@9_uL`T>70Kem|$_$Pca-9_~rpI*^`z%D(; zBu|yE=u|aTEq$9r=Yr*G`7Gdjr%$o)^u_Vlfbzil=;^vnNxo$6)X`VU{w+zCJWbcgII=H$z!hGQ7QIF8^n zJ49z1AK_;SJ>qL>out8oh+&YJzzL*~#BsVEra3SrG)sn=86(E&l4)3$vG`-|`MwGQi_X0HzVlwrd(Ly7 zbIyCCV&~fSd8b{bD-ZVX`93-E{A&mMZY=_oVSs8bWlT_}l~a}hX<0xP_orS5)_=ow zGeRBbfbexeIb}XH7mfouC!&k@0QwhEx-B2D#i65gJ@xv7a>_}3+T9Ptrz+;Qzt4&B zW5to-VH&)l7z{fDM2I2z$J!|eLzW!42TYC)Iq=4x1k@AKziSH+-KWG?od7D77b+cq zVTJPYg5@-LF7(w@+Kb5z-C-~SiiFTk$5|jO5R_B@R%srk0FnDtSsxw&qBf}73nNd{ zP>(9`b2trGsk#^5214Ab6T6al@pIMXA3tCucU8A;`hb+3>J>i}0!b^>RYMJc`VY0Y zVFuTqsT;l~kmNjd=Wpu(&6n!lg4ICmTJ^x2+_xmC2Smz*1WmyZrQwR^y=&WmL{+<{ ztKu-A?Fx&ZUIc_r3(IVIoyg9H?bzE!Ue?WwMNfVodQa3-H= zb@+9~RVqNp*4Zr?q-G!}GtIiCb#$EYkaEL&*Af|9bd4GG2W9%B$azW!GajKgspwAMtT$PS zZ_;(WX))K)k$Ri7Z@L|nmc2n~yC0Ov$Mm*To(t#owu_Y3TD>6Y$Ex*0aRwG5_FH*^ zxCQ$BS*%gpQN8yP9hgh>dmapufL#5h0hW?#&|o-tmGmYVS|9c^6OCRV)7AShq*Xut zCANz%`8E*I~n<%Bv#ZSOy+~LXvue2+^5oM2?i6X8%`~uXj<6nSFd^g%G4n{4o z&cRArlx_&f$1F@k9&$Kla3*P4MMw19ltm~*4Tl%ivX?S?cB6rJR-pt-AM3u7=A>RJ z*Q+V*91awsm|8Wmk9xGwKM{+5t2xWXy=t`aEQ4*$MDjBgl@+eC3q`)_mU?$XKuFKb zcKNE?M1{p>Egge&qJN?He)Ltv%9(JY9E%C3icsq~MrcV#CbCgW*dD?enY+1q;@s>k zUo1H4H+bBV-&()t1wj&SkCmUzxajHC~mhDr$`<3?9P*Qdw;PcDl%M8F+Y-yk#-H1 zp)v7P>TFcXO}&vIr1EN$;n-#BrAH>f!mbhf6W_5`vXR^5_OGMv1dHO3DURtooScIK zCaYd9GU-8*%1!FH0OxY)_NLi-6w~I7Gd3}L={57nRVvl(Ch<;^{WPynK!aVdRX%yr0WoX5exabLdZTx<{5Wj&`sGLA ICt+CgFY<`z4FCWD delta 1267 zcmZ8fdu&s67(I9Gy?x)>hke|(w~w`v=X4k~l?im+s;$7f2RcLKF_~sEI)xIKsT4F| zz!`}@hb4jwCP+XGXq_3+VS*5biJ}r?wgjyUe-IP0AS6p5f?s<}edH$hW^a7QQw_Ya$$5r?;51>_bx-AKqYgOZmI{V*6ss{qXxLLv4PV7)99UnAZb6pE~bKWbuE z3C%k+@0{NPxR~Zh>mfjYMC-V>2~f}1&e{Aj*%{Lg?&&8x&<$oU0MAPi-N+ctW4ofe z>}Ugm)4E&yZo*IX7KaQ3uIRT-QZC%<`h0R9<;CldezunaoYWUAWGH-(zIY-^OM1c3 z+{FXl#|#N+HqBpDF!F|BX|Ik9&11eAIp=-TXydk1na23=z(JaG*!X_`HHu@{cx>h8 z{L+mHn)7xK5cx?(3ER<#K0JpA>QRS&^kP#X zs#+tOWyH~rClEjaJ?LfQmV_mQCZvd4QDy6`DZ?ycTktq>O)PKiG|elY5QeaSbdM zaFZR0UGwiZ$Y?`{(w2<`c32kBxtn&Bq4!#B#Cmp1aSK5Z+YG=5Vb7$G>9qxKKQP>li(fkdVP9|Fb diff --git a/win-linux/langs/de.qm b/win-linux/langs/de.qm index 0283578755b37e88bfa2b513cd6ec34b499fb437..723a00ab2aaba65b32a17bd9c998d5fab3ac4c7d 100644 GIT binary patch delta 834 zcmXw%Ye-XJ7{~u-mosofsqam; zya$x~0qYR3HJ4Zl)Vw0DKw*0daHk}u7=1Ooz24iXM#s zF!2hX?J=P4l4$kxEf|?fF`O|TXkn{9=K~2}S^KgJP<>z>u1p}&%DP@s$)q=|@B0xT z4 zc_8hXy2tYoFzr#_dqM_%9I$Mt|0sKjcen_h0oXFjb$;=ZaWChyU8Cs*Zust1 zAf})5N06J;gWQAL^W-9h3p~uG>s|~kv@6N={m`Nq3$R(!C4Fq04J~dU0|td?mKpUw z!y=h;Bx?%G=@_J8>%#Kqf03;Wv05fr>|w7bq5;KXINMPH7`wxx3MK(_qQumJ@Evj+ z-R@!Wx=ir?;0;P@6>F6kw=OZEOJZ_0Z!l9nDW5lt5sjaCQ&6u<6|8!kA|f;t?hmvo$=uY$Nd-Lq kM!ibO>=QTQv*hW>6So`m;#)(SGU&2Yd@gAHf-xuZA2|NbYXATM delta 724 zcmXAnTSydP6vzKFvpeg|?#{Nk?s(l>TVnBuF%q>Ie$ zjSWg(AG#!~t?bS7-vDlzUAlZ4a13yG5C%}kJ*lPFHvQ%1_SRGKn4vL?k{#=YL7NOP zX@;=+5D@xwW;=#HD~wmOGRon2zTr(NkbZ`5S?dH$i@d+Hfb4m`bB0Q0bnxL%$AGvS ze5B+k;M~r~`shAY;bR&xE!|YIMzjY^R~F6zF1yyl$ieow!E2{T7~-N60(rj*b-yGa zuSpmTyaJSu!o6t{D2Ie)XDy9rRQO{I5o<)d(*gH&=F$fV43!i&c__E%D3% zh1o5;yT_^7Il|_Ef2gwyBDgnv;KR#hza+edGA)T@y6&2F&a7QKo zEVYvB$-JgA`C9ojCrR`B8g>QRNt$h6F|WLBYuoNDBClF7(aYR#@fE+1~qp{QmL Q)vLySs^^ZhD+lBM0dc&qtpET3 diff --git a/win-linux/langs/el_GR.qm b/win-linux/langs/el_GR.qm index d162b15f01a3e2351bfab811a6092f10e649b5a0..7de19076eb7bd023c8597da0b9a42d8e731aab35 100644 GIT binary patch delta 2900 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 Y-oY|OkFSZNdN!< diff --git a/win-linux/langs/en.qm b/win-linux/langs/en.qm index d88d2547edd1e5da7dd76b5021fbec0c100eda0f..60ecff21c233e8301d4098e71462d4691a62a7ec 100644 GIT binary patch delta 477 zcmZn;XbhO3qN%~a!0OMypvcLTvM2# z(J!8Xf!!BE%R4hHU2~IxL8z6{dJ2#he$2S?`*)z`i4%Lp85d1l>dyFV;#+$~X136) z&I}Av?rcdP^B5RdcCcmU83Xw>YJ>U^0*=Hj~})Bar5CW1n=s zj)6fua&j%Be!VVdPswEl28pMfTla#jy1_lumuFZmR3=B%eT-#T@WMB}D<$AEwl7WHw5w~j+E6^?X zxZR{Q85p>FAhhyPZl4@ZpzSi;>2j+W7$$2oNlNna2s5?<)vo2Ss#*&4M>CJ}%byGk z${!}jGKnkl@SHp$0W`6Mm#r!o=u!t>5ts7}3^I2hw9>-KQ6r`+DknA@F@F?cw3xhGT$NFOvya4fegKVOd^rFB delta 485 zcmZn+Xbza5qN&Be!0OMypvcX@pl!{-pm2hLA^tFs@5#X8xsQQ??G%KTJ37%x z(J!8Xf!!BE%eyixU2~IxL8z6{dJ2#he$2S?`*)z`$rF3U8JA34>dyFL;#+$~R<_Wq z&I}Avo@_}U^B5RdcCcmU83XxsYV_U^0*=Hk;k?Bar5CW1n=s zj)6fudU7qJe!V_tPswEl28rjKTla#jy1_lumuFZmR3=B%8T-#T@WMB}D=X$Wyl7WHw5w~j+E6^FAhhyvZl4@ZpzU(p>2j+W7$$2oNlNnb2s5?<)vo8Us#*&4M>CJ}%byGk z%AY33GKnkl@tiy%0W`6Mm#r!o=u#(M5ts7}3^Mm1w9?|qQDyKFZF@F?cw3@tIT$NRyL4m<>@?CMs&8ZS|_yNh`ewF|L diff --git a/win-linux/langs/es.qm b/win-linux/langs/es.qm index 3197e332c879ca7258cba2de8f500d33492a7cda..c634a0f49605cea8fba5e32b1519a20644ed6def 100644 GIT binary patch delta 477 zcmcbcb~|l?ie>`?1FJs+gLW(sTLUo*14H~_AibD@#d9A61D6wo)=-}4E3RqG(C8Nr z6g&-~HC8e#U2~IxL1HSS^%Nj2rOmkV`*#Kg9p;I>;*5JHE_G+rn)udUF_SIysxt$F z(nhwVk9iCX>@{qedBzM3$~nT85N}F-z_wNi0I;<0W#ToZaTY7EvUpk>3kgn zgWU7UwT$}pt(-k2ml+ro-g9o<3$l`n^MzOt1B2F9&VQ^EfOI^UpqLy3gJv&RzUn0dgG?sZgPoQ@zdzu1O=1PQWfQlX zlqLfMKNp17o67Bz!wIy#h&x?w6$8U$Z6-;{uROwxtw6PjJXTdpf&P%>aen!efkE%X zb-h6ULfwV%@CmSOH8!Xt=1Gbi#gk}t(lwCw3Yqddj$b)?!UX||M7hMp6B^J z@7=lKXFI1KuCt!LwsZTL^wh7G?m2p?7*Oc|O#u+~t0J>pl$AhMIxvCv<4yxhj`Q3A zwdWWRqgUiuC!%{k1`KMLOSc2D7g4ds3D}QgUBwdWZBXRcgLuEY4@kT%6m)Lm#?mP4 zyLF2WPYRcHM}SdTQO=J#DLbN`+;tU5zZtb_?F|B38`Zb@MZo-q3SV>qn6K)o@&IuL zRc~Q6ko2nhxlH;q-&SvovjBoc-R1cb(2Y^#xIZ<~cQXjAKr`W;eSj%L(^(RGn2tWv zgno&kVXmfo<`rgMqB*cRjfORv-V1L5#E(U;%_1dR@Dgn~swac!z0NUMJe@h?+b>ZjpN}rOP8qj0dh5A0K+4h1=>2m) z0Q7abq{%F^>JME``)VRvtJ}DvgTSCW(H#SfR>f=#{m4?j6m#$>GfZ3)^IK9CTd_Lk zU(FWELcJ-;0c5_WUw4s}6Q0+1d3Lg*oAliWn1EHS51R;V{3-pR{Z|QSoxcBwlWq0n z8%mdHn88hhJ2{)Bd0CM;GYqqu7&xWc(BRll#eWQKm)--^=M8(e@T^KT^ekb?#llhX z!Yj1@RI*1oIx}yKI@N2XT3xJm)jS~eSZspp95AL@k=dr$=_(I9^@Gu>VK`%&(P}5Y z(c6sHGM-K6jSl(V`k^9|7b(*5i6YZC8y%T^7dIIlCn)V|qbTdgpEZi5*_erh9gz(Z zHAd$&a@659`cE=|&1Bqu?J^6HXFSP4fdeuZQnMWf&iK z;VA^r3@;k^6X8QEWfSW7A3{5&h?Tg))fzdsQKL@EHMwp1aKTS2KkvN}n-;!_d@VBD zq^+hx`xBT?->nfJPE5ljOvMzgyn9-9>9(mL%Z*CZbNNvlvG+3G{n!gI8?)}|FY2tK zZUxT^DcxKil%Q08Wt>K$ZKj77p8UL98HwE-*~|Ggafuj@9OOpyYtg}|+57;I-27Qx zl_d+@qAO6_-t21$iQ{u}>jJeM_1V#UG?%#jO+LwBGN)Ax$*K~;NJJ5XIK#Wm7lf)@ zlw%Icm~xN+npmQN&?|V;z>^F^-urmE55iVHr%d!TdmDUm{1w55iJ~lg4cU@lN)2}; zOcb*6S&{&j(QlBlmWlf!{(X!lH_sbsXGl7fST5vCZ(37geQ2Y0h&bBOCYh7mLa}@= zcqND3BCSX&6=urk#1K6-Qa2PST0K1xyVRRh-dXWKg%6P!ewI^4AU94fyN^poH_(8A z%mXa9Oo!$n`C2R8l~uEc6+KWNXl))+beG@TB*mGGlG(CcsFPM(x&)t;VC{;ae@yz> z`b@@D)>9^hVxs|srwJ^ C?bK`l delta 1239 zcmY+CYiv_>7{;Ho({tLMwx{&6-qy=$*NO;1rwLLvFQpghoNR0Zr+^GH6KZf1Gj-I2 zZX|p#nTg@=NDUC=gAmLJ!K28<0TGmWK|T;Kn?Wl9F-Eg2n9NH8zU7ozb8_;_dCvcR z-{*PHQCHtuQD{2W@kr7}%>5+$lb!Um+ zLzg`T7$uFNL(rc)448DVr|GO^63e&70bc+^%h%Dl*EA~gxW+dp0Ow!a!NSZ8P~XU1 zF&qcXb8F&<3dDh$y@P)M{2-5$MF3Co=i0M?e2E`_q>~Dry0tNCV9V=x$Wr z07FD$q({)-swV@D!u&l4fjM>|X`v7}D)j$oq`H7G`sh^(m=u_clM62kmnZvx;EcHP z>m*Q@6gN!w0^-|ZuJ-|Y-YNEeOydJivH0sVfPRgrCY}Q9`^C~W(p}fZ5+k~I=@ZjL z>mvP*i(3KDdi}dA4ggY*!F6wn;{0y7=cQN4PM=|T=K$G(ak&2y@SOKs;|F7u$8p5? zi>n<7PZ@6tZxB_<<_ZGJKhn@7?S3Ezz(qdD3 zg8=yNGG%=8DE~H%u_LCIO-3^KCkxaB3;sT{gWFEIeljn~ze716H}4v_LF*VYA71@F z`8}#JywUvGxChYnSj2n>;9X*IrY_PR#x+K_Tbg*v>+F_20*#YHvL`^ctb1k8WAr@d zQ#n}HU5hljQ@2@w?>9{dY?gyDI^Z9ZgP#z+gR)XCu(!%en&{vwd|Hk_NI#r!kDNPC z16;4mBU4vs4+rG)CHhZ<{Z{L~ujs>kVSVNA30nNw91y$7(}sO$$9lS+r@J39G+?0` z=gqQBK@uHU1qB&;mBS{Mw`Ckrq|i+2$}0W3t=V`t>8(_uum-b(bt@u!)}AmesHk04 z`c-?HzaJ@e!touahFl9c>iGoKE=9Jg=Zo%Ua?nckZB^q#5DKvizAapWN#O=IP`8S@w^2>zP9MrQU6*l0Dr(|?x|eP7 zFC?FBbajBz%m09fP`en9gMVp<(a?uuQ&~@AGf3CiXX4HHvZul2Cp&Bv( diff --git a/win-linux/langs/fi.qm b/win-linux/langs/fi.qm index 449a98883daf16e59165d1af68964e10e358f740..43a76ac6ba216f0506d6d60774525c3208d632c2 100644 GIT binary patch delta 2925 zcma)73v5$W82-DpT_0QLy3uxzZnw;_2W)d-fH}Z*kFr%*VMBzWLf2hJ_qexd@5Y#s zI*kz{1m%L^r3=It1cEr<2t=KVCW?u{2!=S#62+Jpd=c@1-??{>A`{6?``>f!`Op9T z-~XNe^xt`LO?2Mtt&Wd=+`HprSJufj`;MQlB8qnq=_-iguBf))Em$8>!7ifdm@mMZ z)$hW7McVokM8;;-<~>RYLq~|rA+px)AhNVj!^U!=91Zn1tj4`7uu-)I>vRcMaWf_nFjaT{oJe%@m-;);R1P4`MzuRX;4lW+f%KFT&n* zQ^K~>8!^5TO*pvpc_Py%23u(jk=AG^>b{T2dW&K6lf3{&hW8E`;jqKl^rwYr#vbEl z=`*72LE|gOk*Vzk<9D`3qWr&%f9oEHJ!wj@WfM)iWa>W$1~vDacGm9&vqsaQmyk&M zOw(Wr02a+Ry>{>dQAYHbY50wD)VI!D+oB_KRhm5+g{U2=cKUJiqD}zF+GK9aK8TD< z&5`rZ0O+^o=N`v6eztjNHK=zzl$fe{7)<<{cw67ISl6Feec^WiPD|X=`!g6FNIbIY zWoRQywfREgho_*ksCHwLzORYMc{wSq<}_-(U$sS#B+ZMjhc+x0hmHX{Y;ib|LCQ3X zVY#4?caont;welbNw5-TCCvCS)5GTEp%hQ?0;+*e8-5bL_~8{K0jmXNWdtKX z_6x$No&0j1)muD|?t*uiTCt*>=5VPrlWxH?i;A)K-yWN--Z^#TqqTT~6d2!`Az+a> zT0x6x(WJh=S{tH`@NK~Nm9QQ>^;Au@ldT4Fk-8MLykZ#xLF`{ZMN|T`BBJ*KMWKNy zS&yHi##g<8Aj-JE)N zzK5Daour3(Kdyg9JTjjnq- zZGPDjs-q1GhA=Gyl3sWeBVSf$Rwn`D5#^0n@>e5VNpmkPAusf?5UZI!dVpb!n|AEi zh7se5z4I7Nu$1myvXHCq^0)Dfp!QJP42~JTP5#>Mlq;v4DfH0t(fA#}%oNar2&#fq zR1u(JitD$f%jLF;+*?s|ky@}a1RDS%rcb8UV$3R;%Uf+;&20I5N2Zxq_LPu!ME=R< zksBRZnofBjJyX*m`|Nd^1#FdER*)udu^Qy#c6YRSQq_P*aI*pbEE;?7!H+{cVO;mc zSLtYsArZP^n(vC?#o_b#8W&%s9&xQ0?t*&c5xY?80R~koHA;@%N|jiBCOIe6CBL0M zMc(c36;@uyFNTRxkJ9ue=d$Z~C_L#{U08&+!nt$@DlgzsIq;7v;o6hy&hVh4+~8`k zSW0f$osljd%P6VfptOcbwH89;Saqc=X^2r*NKjODgB_z4`tc(VrZ`m{+Dz}PD#R9P zJ?6v8n|da$?NzaUZJD03DzNzfT`IsvR%@VtQiExy#+z$wj(DAu%lRt=wAN3K7-`rCte*Fc9fcu8V}FzLs`A zAZb{*i@;#zo44DkZsiD9l)h0>4fC*`AT1LJfi8pfDwp+F~$Z-Oox8_sC61yn$BX6;zi zY#A|=8wMP6L8k`7tXhqr+e{SQG?D$GOBhOQ788w_Ofq$eiO%=#rtuGRX`a5%@BMh* z=l5IPHPoKmG`mOs;@ZUMmj%9$c1@mJjsRI1fUO|Bsble4!bYH&1< z9Xk*359k>D4aWHtAUq0NbQF-fu`N*!c$+b_t&8%Obu1WQDvneupFI{k z3z!l*7JbbcZx&IX_t~7yqmWeVqT% z*+K@#`M=m>gk|PjX8+ErOWFq~tJVG?IcQEe^UXZ^f-zJn2>|)bqA~)zvD$ zc-oX5Zl5wDI+=zMpF=t9ZDi_{RoUx^q7QNOlQDbg-$Up@5R~!=)1e+K{SKe8_aD-s zeBf)LaZS{|MjN-;U&)v1F~S;?_HQNuP4u;*Q)7+{OL&x+_X5(~BiNCgWjxJ6R0#H(f15>;M1& diff --git a/win-linux/langs/fr.qm b/win-linux/langs/fr.qm index 434c27ace45282e577c5c1a640a91fb7d27dccd2..e2b3ecc059013594688ebb79ce6a096ab9febb41 100644 GIT binary patch delta 556 zcmXZZU1(Ba7zgnG(Ru8gqpvg9(PQ(d>2hwXT@EheqhVyPmU2huQ5YDa{*}F6FF#$K=nanQEbWzO{zIM~2~xOl_llXo9J;q<@748uw(z z0{x`h^IwhiZlli%9%b1%ns5C}R{Z{n<}I_i+7Ifj-Ql?V8dy_xocg^)bJVjy_aQTA qbx0yxiJ7m;QnGQx2u>iQ_sG7=2c_A<_2_R}UHV_OrLxXH?D_|CGK%K_ delta 564 zcmXYuU1-yA6va>4B{gZAP+OX2&ZKplS=~kjMX8<0tQ!{E2@`$OL8Z*%sNe^K4J}1v zFFF=uK|vox``{=FmO92zL6Pah?1KnS_D~hUfgcPU!y>~g@#X*HUM~N0&b`GcI#eppnmtM&MjsY&4+d*}j%RNs3tqn89$V!2$ zn^bMS(k zVL+R7`wrBA_8yB}r`^$Y$R27RqKhge+;(YxVdFzm*J8ysuGty{dk#c;_0+EAu w(8-WQwi2^X`lVgyM;0e=lHLr?RDLL4)?D@a%(A+XjUb3#b52z%ac$817km$n4*&oF diff --git a/win-linux/langs/ga.qm b/win-linux/langs/ga.qm index 302ab5a1f206a85ab12be1bdd33958f686b2a397..ef784d2d037e470f7f5f783f839d33dd7e8e601d 100644 GIT binary patch delta 1660 zcmaJ6#w0Jw@-SzwOwDM?cL^H%)t=N(hTL%Jy_kN(oLoyv&FgxTU+U-C<${I z{?JTW{KO0dm1I%3jF?bRh(HXEFcJh4f?*_tu^0pT2M|eSh@$7-I=A^CU+(>V-}%lt z-|zg+`C{FT4Fi_m+W=nd1y$YDyl=x~8Ku|fhwgyOVQjV`^1gtmGp39>|=F4gQMjOCorw!H|2Q;H8 zEclvN|B(v_j4$3l3}j64KEqMUbC~bGrlmMFKf3YXD~DC54u2tV=3@w8u1ydbR;3pQiu)twapk{_cw;fxB3H zqK#46B>4NY{6T{J1xDgEjj|!WP}=p*?_ohc1~xgo@tQ zeK~Rya9q<(9`jQBUe;HJc_O}7U*#+!MJ}hXSgo(^)DqDteXDx}P(}2KtF9pm$kcx_ zKnCST{a6c0E#6vS=5`VWnM>jB%^zBDcAUl{?K6YwwIJZ?Fjy)s068C~u;`*;xsnRE zEf?%Oy=UAe*j>agqfW3_)7dmCxFx$IKZVZoDfBd_Fvlyn^XNW%h2TC-=sGHhlE3Ak zAXXM(B{F;D4KnWv-ZGj+k3ncZLk~Fmgx$BMNRVma%p{Ev|C`Zx;5@Z4IsAcY zv8F538W9T@E$)c7J}gQQX=NEESJGlF<#Hb-MlpnmYn*TsHWSlsN*JNK!eohIGh1)- zd)AO@*U3xLXA9lNXfI(($8J{V$YZB%<;s-^vNxPdnbE0XqP^U)`Y#P7@{(eWxGBdZ zq=+Q5XDi56mptjzbC2iDD>Q)mIfceazqzGl1nTFM7LUp$J-LDMhlp81R{T1}bkjLO z?Xnp;Ce7k^91Z=@$1aF_su!y-uL>KTwKuXNoN3l z8ekl$V`L*?6%d&RjG=nLH=yn&@iv&^*8$5h9m78%_MQc7zu~HA0UQ%ixjhQxPsYy5 zI=~v$aoB!t+M$<#?-qCR>sQkG&b={T0qkoG(bH+5-hRVybjKG8&|}2aRsacOZ%rI< zPBq@0o&>y4O-myr;P#oC9Jv4&Hnqlk0P`swBMLA684gH{AJcvk$Z6)w?3YRB0>A#X z1#opA7|cyS=lfo*1;Rx_?Xxl!{EX0egG`5(2(9mzQT>6SmM#Q5 zF(I>y>hgUd!wCI*#L@vm=Na+fqwPRmt=KiMleSQ7_Dv`UOq0!{H*BR41Lmf~n<)e= zP3xZk>A--c`x;H*U25s~)zDfyEx-9@!o}7cp8^cuW8L|R*1_$yw#JXpnyy(-oo@qj z8?9;%1sd_enz<6CtJ!F)sOJHt#1_jNMN_}fv2cZL&T0zI`mu1vvC*o7?#ATZ1BDSt$Z_@(2>N%mqR z4eTqFWS;ySTO~P2xpMrHJd?Oy(IK{d2=M2PIRGzJ=SD_r$tVfRhX9-s1kFnb!pP20> zHJ5;T$sacGqcI+ZYG1&qYgMC~vZdI;pstnWNfuOMnv=$mQjaSUjw{jP4CdvtNT@@z zsv+qZ`yATG6;p2Pe)KRJRR#%xN@*IY_V_1-hoj$Z@bhcT8mys4F7|%U?>% B`%C}; diff --git a/win-linux/langs/gl.qm b/win-linux/langs/gl.qm index b5a0cb2cf84e7232d31b904f5961c9790f9b5cd8..8f61a55ea38e7274ec0131ab7e49e3f5593a7351 100644 GIT binary patch delta 2230 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 BI+p+d delta 1078 zcmZ8fZ)g*D7=EtF-Q|}vcjjL&X_HH8(zGV(WL0XYC5>qymtwZZot)Y z7?3BirY{Lp4r9-n4!|BUabA{dI5Yv2H*go;ydj-)+*8|iz@e5Uf64&|j`_1wmhsdE zz`NG^Sv8fq4qE#a72xWugV_? zH3$Wr(9enKX~MZp;=%iU6z9dEb?0bao2~qVX26=X#dq|QiC$a(k)31$tbcnR$W?A+ z*KW}ip6BdY`FdJlJ$uIw0Fk$LXSqh0uhGK@j za6L(vuvcp7;>qxcw6bD8P5pz3wY}1+FBlp6T-vG)0Yba<_0$=vuaeFV48aXcmvpa# z)){;|$IbmnxI^&v>c(GR=ktL#d`NHIovWIP4Lu} zKH%9eC+q2t3e?EmW7I%>Bp-hDlm=JjvBGN_{|#1wij)xT7|`c_w?qn1?>7htVyDO;g$3Apv&U1_n%W|>#N>4h#%wiP zR^mq88Dr3su!vE%h<(HskesT&R8uU<+$F(ysX?c&QJP_>ZAm^)+=BO2A=X54mHK*r z+K5%`Dv6-yCjSM^pHqNRi@!9o8 zo0jLq7!%lH7ScBc{6=SZ1Lugd*>$91JgmCRIpZ@&2|uLA^nN$e=wI^x%uHOGZbdXb P>+E~m#f&i=9bo?f(&p?v diff --git a/win-linux/langs/hr.qm b/win-linux/langs/hr.qm index c4778e3bad5788bf505c14bffb46ec925dd62b92..106f05ddf6bb9919f4ed420e2a06a14bdbc66588 100644 GIT binary patch delta 2273 zcma)63v82B6#m++kF{Gzw{>l|u4^|Z>joPzbdE>dn{}3LjsXKBxOH9W9__M~F(F}q zAq1U)@C!}_$)ZBQ5#uTf3K|szeDDatFc4jcCSqa;(MUp!`u+XK95RG7f6u-5+;h%% z&UeoJvu@k6-Z_VwOkZB#x&0fv<&$Ryj$SDSBGiClHf6pfGxtzd1DVeO**wq80+xSH zc?yxvkAbL0NoFjD>exGgwg+)#+W}n-s@4_&)}OGxYB}#+lVrwayfrusB)%=1-TM+3 zraalcn>PW6Lv~et7>GU~FF4Q(#3+XDjy+e(ka4EVVoMdW;&ZJ;C-7cLe zh4}Q*I@3Jv;}+_y;<>q7lF2oaOg$pWw6Ap54C?Lg>a52pty6S1@qWTGovqA)LKt$w z3mEq53i8>bscUq;6AWPfO}G8}Rkqj*x)UR8CB?;wqD8VKGlTsk5N~`Iw3sn8sfoY(hhHyf6|MEo_RLZ7)VOn)&n5 zgBY_K9bqpv)MGweW4E6$x~Qw-$r8$P{+uX58TDr^hT;Gk8LNT0xcP5GCbEz-imQj- z9UOZS&CgU?T~c3eD-F0;wtM_RTV_^HQ^4KREKJv@q|}WAeK!yW66#G!p{L?Ml`WWt zO4MK;V|B3(KD3UD+rk{Y)QA|wwTHWZ5tu7$=GmO>4PK8JyrsiC#U=`mSA-C<7-q^c z9%JfaN%gBm728N^4X913|j*g8%>k delta 1170 zcmXw1Z)_8F7=CW;U3>j=-P&t=>z`Y@t{_8TMhsM_ShisbxQ?yE0TJAS!Q$wMfw*A8 zITB(tOSW*#3Omw=bQ82`05Rqo_gZO020T-PtnKx7lwd$$O1GhCtgH1YFX@hb``gjg$~ z?+X*ffRI{7e_*&I6sD*_upo@i&C>W$VX90&4m;!VjQ>RU>i4|)@CNPw=K?T)w}ti` z!a5YO69w!*50ZEai?x*HJ;C+_n$d}k>NPQ}+PrE0Nwi=sHloW=-tcCqq6IlLt39Gm zz3t5!6~xh9Q3Ulh-zsLgmJ|PCw28n{hALj96RVLmJbaSwkt3IOgO5n*3hy*{u=anR zuQ=M(k=l&9GgM@Ds~f~cDi`iI-hAr2VYTws6zLWH diff --git a/win-linux/langs/hu.qm b/win-linux/langs/hu.qm index f7be63b3744c07ab8fbd792480cfbc49a95292ce..87ef6fc353bb329f5c0f6b399b0baba0d3f0d228 100644 GIT binary patch delta 2127 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 NNx!$Tv3;Uh`!_VLR`37- delta 1007 zcmZvaS!fec6o&ulWF}1}nV7{)+N4RESoaNtYG_ewZ8TBa+N7lwwGa_0)hg~N80+#P z6{ADCamta* z074nS3mOAG#2O&b4oo0_U^3ABfH(kMK!4VZ~@w@ znc10FyX{`V8mFV(tLyRTopFH zG0?rx!Cy+#Az|p%TEP2Ntbb7nxHpK2;Wj{gEw;2xBm17%cArFxriz^(mjn79F_Pv(+oI6?`$e(5)tk$C>dvuEb_t{>m&vXos>^a+cFiMu zL{|3Z{LZ*WC85#n(O9%!_Lk7OXHfP&Bo_3@{#?ARRrXhn!)(}n>JRLj<zH36+SUfvvN~ zg(wYZTQxV8>FmYn3j1v?y>8@0 zj-~7-{UW+M2N8DH8C4Z)C_^oqp@jcgG1jYu|D&3VjHk!Cg1j}17ObXX{HUcbMsiuV zmM&+<*(y(16;mxVrn4S5$Ca|*MPt|^?{QVB4snE;dyk1yra-N(Bvp$34{A1;v$T3lU2q2HU|OnwwTBEu*`4 z2Cz;t{|#dPdUk(liSA1!uR7SbWcM1jD>){yO!CK;63NU(CIi6gdah|9Mj{uvXlxVJ zom}iy2q?@|!pz}1&Sey;9Q*ZK7l^_^{q>1f!0A`cv5I)5;mXPPfa{at$@7(m8w_9V zJ1I!Q@K@JH4D%Md2PnG7CuZXSJHU5@I!WjZ-`jVS1c&*wr2!~y=KFi*0ec~z8Snu) zdyK&*9Z=vl*0|RK{8N?QX5;oF2C|tl9`f`6O1Z|hJ0j$ zg-Y_C5wyy;E5%3U5c9fOgcxwbYY)wJCqw1mLMrS(-9cYbj~o9p$!0itiIW zIx?`&sdO)@EW9jw%ILh{uIPC~bX^dOR_1aah($r7<@|pxh`vhtQuiYyT$?Tg!$C38QN=C6e#P{f|ess$wO(s_N;|fDaUM1t2`}#mj~sn oJS_i_`{gfkRvF8$VVhT)%DCi6Z?JV}**fK@)5R*%bIw`wKNnY`WdHyG delta 628 zcmXYuZAep57{~v2b9ddlySt`)*Y4Jwg$Q{psLTptO%R&4!VeWGSP`r6OF^QjN%d(N z&YNLWR3G*skru8n!CuhvB`AZip%7REWf>(#Vp#O7+o#_-=Xp5i_kYfZ$dgD%ASwff zDq!_2P*g^|4Ac$-{t{$WJOYfzGGfJsDUODW*~jkd~K>Pu_%P9o7e z1!O0=vP(ppk-NRPNcY9!?M`kao>SkDQgXo9})X|XbAQtab}Wdi2#60f1|p_iCj_$TGaXfW0JTWx-d7^!aObIaK-$unpd3LdIJ*P{ zx}~cP3xF;xB@f&KRy^0}`z(!*xd8o`nQz=n?k=-!=LDemHRi|6TlJJQr$N20^R{l3 z6$2SKhBSI!XPiDgAxT5A2grr5Mi5b`;w{@m5xc3Aj2M&6N8-%PoW{(Z+g2^=9=W;s?*0GspL4$N zob$VLZWq}zI;z#*-rL=BK3;SBoqgTISpdOm0Kpu9pnX0hBZ$QSqzhmot`if$$}<4* z!NAWu1rYLy54CF{h?NhY!)=65b6_Cpzd3N$x_+_Z$KU{YhZY z4(&ikZ36mdF#vT*;Fy0CnMVuSw#H$`LV^3rXUOEFVECFDAodsG5>Gb3m_lLYeN;hk zP-rxz;{O(*$%To;+!eOoej5YM6FM`O0fb!@j=YcSkzWZ%7(~^lA({6PWwwwV7d8My z)!9Q1FZ>cfv_+(vqC?6= z@GVTtzEm>OnGV3;D9x!9AOn#!cT5sWbjgQfqof73m_U?FTBALTjFY6+;r(boMf$}y z{13V!J-ZU6kI9rNc^{$@-^pe-9zeSqS@x|*m~feFm+g17TPQoaq8;fB_%Loj*6+qX zvj<-b6*iV4qs5^Sx(g_AxDOL@LNkK%us6afwEz>6uAtPh$RMwk*|Av6_q$+1Q?g*d>ph=8k_8Dx?J8-4&+E}_Xq77AWjQQ z4^9O#Bx9SH)s!w&b1b62XD|(iC#_e*bW{4cNw5^mP!H8WART7GWS9<9@k#aDM9B4t zGoTn&;bVj_9%Ms~Zy!kCcGobF!E%qR z^E6C=WJtlNX7p)8-$^2_zl8Xzb;a3bxkP8KT3cr@(PTn$O0~Jlwu;#o8Jm7k~-wb*W`XjR z{b$6zz45tHU!C>(YO>pVrvY(5+W`;u+PMkGn^>E_y1uHKv7TH{)dfhPF3v4pR5+@t z=2hnUIS7L!-{$r;G-Upw37Kz4Ndbs)V@7@JC;Iv7@FFSI(bPF{Xi+G;@^0mxKv) z$Lx&xAHs|}aVJI}neaTxGL)#)-zHfa-5f0}$4kl*FhRbCZ1k?am`CMuqlIMFSFJWS zcqg*aXyN+M`H?0|Xb;9aDEY*}_7NccJ?Ad^l=6=`jY@IV=El4Vtk4k9;qjTZwZyvC zVlmg#hHA3PSZlCy<4)UXoc1bfLsAHO4p~@SxyDdM^SCh6ArWwtIO(`D^*!ix^jB~f zK)%EBO)Jhi%{n|~-YX&Bb*#ZF+ RR?~Qz7;Hu>ZA}>!`ESY2wJ-nx delta 1327 zcmYjPe{2(V9DUdJuI=6R`fIzkTYIbEFq1?gMs$n-+uGUUSi5!L%!Cp=PGAATdlg&ACII<~m6PG41oi+=J%KjjWCM5jf{M>Hb%>D85efPfa z^WNv~cEflyvti%`{||T0^!)fh@bdG$!!tF2sQ|E5guOb3wi70R(4)X=;)AzD0 z);35NhfS5AX8@izojvjoU|wOyP!>SSJlYfoM5}pxQ#0VYW!X_q2GVXzm(vF@Axk#? zHNf4_F~qahg_Y#f!><1DJm4r{YaIjRbBXQz-A?x$Z2x8|VG6LS%t)CF?96lrP_l#D zmaheT&v3iu+o|)XT)O=+I%m1|D>UB!E0?{!lg4c1a@EfQ&J$eW4dT6NuAmYY62}iroAv}J{vzn`#R0{U-|&>tmSiV3Z!KC!eAv}IU+=N zu@uxJ)Rk0F|DSa%J1*3}WT!yw!XBlMid6`EXFekR8sX#aK4f6JA&j=sV*O8xUgj-o zoEO(0I7h-g;_3Z=)1n&1i>+T!lL;Mz5%K$RKQ)?ma0gOAakrx=G6@9U)=?R9Y%tR% z+$$tMOF@KI$seM?;*jKjiq4L&Bt_#r-)czByjOI>XVEe6xTKVmz<*3qt`ZjiB!#sL z&MGM!)$k7;UF)UFC+Js{uS)4L8sPOxJ$GhlBW`J|K!1>B+Ue|_piibcU%hvee9F^6 z*@T&PFQWz>^t_1NW^<$945Ah(Y)5!X96N-tdO?b~!-!xDaoY@bL5h(wf&{6z#_Oxc*#T9K1}*5m%CwQ6$N+#_)X5{T_MN5wq6dM%~)<7@Dya z^#)tviK)MM@}%Cn`0jqzYu>1fs03NW4RN?gi<+RYNrQW{D6+(*3~tuonvL+)#W9ta zH!|zgxcm?k&UMK97`m7wvpVDAyf5NbmbmKwu|BoU{|Kc|(v#9Qvb0etpas%c8nnb6 z3urxcZdrLRu;5#jw+z_E!`JJ_I!EY@vBPzxr^uy=JeHHpl^$YNsW1CNYH#pedfQA> qjTyO3p;xrm^JV&zt diff --git a/win-linux/langs/lo.qm b/win-linux/langs/lo.qm index 697f86fefbdcdc510ad9d8b1d0c38b5518e592e3..79ac7806a26fb958b2583e36b4842ff94b862782 100644 GIT binary patch delta 1710 zcmZuxZBSHI7=G?9`w4s272I7ucDabS0*Q#Jp=m=R3i)lOjg;|HvR62C$4&afb8^)7B^i54}M*xVKrCE4j1W55~4!rj# zp#4yD^`p0ev8%P{YXY!RJGi0{5JBzGGtUF|+NhV)m~ZUGs5+|ykQ`A>g{OcFV?yL* zVv^2qKb47Z>N58o0>(7z=2=cK(NUfMClg@%PO(Uiz+Bz+YvsWB0sX2g^8okv`r_L@ zKwqaX^-Tkk$LoEkSyujB-*oF0z_3ss%6k!rOVkf<=X(5k{jfqz=rZKpCR&|_-Iv}4 z66+1^%MSwP8Akh*d?3nT%-H-6tJ;lqpHz_rjAsv8kXVMgS|{YC^+tiqkf0C~D_pCu;!EM)aS zY^RXt6XSM2zDH!YH@CuKGM}%t!>}(;=Z8O;ParU7yaDr<$8yx5!V@2 zFKWdJ(XiWAEHx`7wj${%B{4S9l8c#`j2vY1H%%GjdbV;T-l@kLEXJacXY8xeoPH*$ z7Dq)p(=_vWjA?7ceqtNTbZ`V&yjq+lmCqP)OjJY0BxE29a%eF2eaSOJbc&Org@?NN z9N=g{5td=WXy8UvU_)rjxEyKnfHa%B{rt znNR!=-(^_x2w$0eeb~VGmy&W*Bc*y+s+~d&5NpD3gCfYhVJ(&8Nkvk=a>4C+O!RnH zfh&s~RB@X{D15G;?e;u88LD#GH7VH-D22rngVZP}E-<){O0`hj=1?%XL~`VeZfzGA zDcKGR)-BpXu9V}FG)q|{yB;flYkWa+c33Huej|e$*+P(5^N@g2m|8@!tY$7OW#3-- zl;f$3tVyG_TIj)+kY~arLqIj_v!fdkb9RPp*craZJ$$N`>=O-47jcOnRq%7BI;I4b z*n)JU`nRL!NXaWJlPfn@RFrS>d)LdamzH@eWEfSZeScg818=|PVsYzM743}Qz|-ytWg%31*|Kl vO_fVt^ZCmCal4G6@*hDe6XU0K#{Qk^R2|$~P4A zZ@vU%-bQIgJ%~&EQYl0d1W|s(b>-zNtyQOz+N4O-dwm1+|s82-$V*;kkXlYKwM!^E&|l zu+COm4XCs_|E|5nBBkp;+Cwa$o1M@DNppj~zxxW{p4Cr(MEh6+`s=nv64|N$TYV5H zyuw>-UcwT-cY$=`cJqUw;?4Q<|Wh<=4Dxx<*vy-K_OXk52vjCLOQl1^cynk6Z7sr=E;n`aiI8HC8=&>$JjY`nT^7S2N6II+98FN zr%d)D_9>fWy=;n&v(sz{0;&+j7BOInabw~kOE^PDH5yPQs!@3b0ZGs?M6s(oX zg;vgb_xeq=a1WUwNYi;|xeRs9s7F*hT99evQjF;SSr8WAbvO)nnI~>9toN0zkmkuH cl?7DNuV}?iy1kgTRGKNA(`x(Z-zqrnUz4g`6951J diff --git a/win-linux/langs/lt.qm b/win-linux/langs/lt.qm index 99fa77004d959366346c4f28fa646caa23b081eb..dada95cc5bd8e7fea0fa4e1404f8ea44c4e0a2dd 100644 GIT binary patch delta 2145 zcma)63rtgI6h60bOCM0yR{Ef{y?{6h45w~0h)xP^v7Hn}3FzXWKq(h!i#(i<#Oe~W zn3zcR%f>P{LpEJ>EL&{mBa@jqjXF2YToxaRkvO-g$->MQOL;3F3y-v!zMt4V^kZ($@#c}SYn4PP3L?H7G9xJ+>mh529Q8!S*e|?C z)bt(n5lZ!bL!|sDDQD$U+Q~17)R#%;9wO50CjaI#BKtPl>Te=a6({Aa&uH)H6(S?g zmB)5rVfujEfB!yF5zpOF93@Jhkd=KNBg$~emh8Drls_)pv*m99`cigf=LRBuUkZIa zOhol5C+oaKnb%X!EM5tR`%>2wz@Pq))E${dA}&95*n5mfaVRMrd3@T#eE9u~FaB^p zk@g`UtI9Y6M@RVn>q;2v_|b}+M6wWnaHk!HfAVK8zmEXz{I#o5q5@G~|4S8-a7o^B zH$s$_Di23ELVOth71i` zl(!6ZD8(M-zx*KN>ng3mM)drUYU@=n$8A#$dv~KmXH}yIk$|~U71sh-(L>eY1GkB? zFQ~?kmZ7ZPZne9GM+O(wo@@td=1R(vsCsEP0_WURhinIkAN9UL=qWz+ z$tF;qXHVC2+hD()S!K3Zp*;QU856GU%8+kdL1gR5nBlrWG_xWpi@g~OQ@p4+X-vEn z?l+Ce3Vhmbjj0;C?y$xt?VEp3O3THh6e3BPKcKM{;5=`w#&!zQc1R;g_h+2Y2yO>e zP}X2#K?bF!Y(9Ea$k&Lc5g@xkGc<7n1Ozpw$I(jst<21k^PtzA`R0QwsKl5^RB|l- zKz3VG=A+jrKrPfwLA)Z?BK45~*$>$Ttrx3kVy_o>MC#%K6y}WVo_2}3f>z*;WYbS! zoJO#c-adAIrkNerDOj^^vH4YMfQMdcgWocmPcP71dJ)e&mZ>jb=XB+Z{8UTrctmQ2 z7lEAcC*pnpRvQv)ff}iXmg39>UtKitC|*CuvjV-};e!W1&R0Qt@OY_;+zC$++zw9W zz%{e$W+N-rD`vKn1H+GU<2AWzs~SCmE802`4o3Qg!lKf)XzTiRmaDT`>ZZW2rJh8Z zkKnMFX?A=>KgO+DKt5VV)rjZ^wkYED0{uXO9f1m|h)Ssw#vv-fok=YS{V@u&Z&|hA z4F^I&2|#C0s6>!NFcf!Y)o_jlARvlTiEtAIQOUFf;OT~Q0eS>vg($%G8hl(O+i$io ztJ%N>SgO&(RY0G^nvHJGC!J)igk2ZPDiNJ189cPJwH7@)XLQC|o%nS|L0oZBwnMwytIx`FylJ+8dVGkEfd| zWLXQ)rBcucj5`rj3fzb8v9r$XMOhV3IW?!uCMOGIo7tu8Qg;#R^?bgZpXhYH>Cry?MB!!VjBtgE^C9TM<6MdXx@o|1Om}AVGHYFsm znAM0fZnAiaS3Y~}q*eT~C7V#M*AQjPjYf9I`nGj7#%z6JY`byii3sdl^UG|n?LGTkkRL$jNa;#FCw-^*kJs35 za+bvq&VYyPk>a%T2%u8(_(Y4yg8Nob9LvVzI-JXN!3HInTC5a~bD qN*x%VbsP^p*{mBAr;q1Tzgp}OoV~3b;=06yZWMbGExIIcyW&4#tJkam delta 1114 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 vUEqtbJX@(()oUZNdRq3QxS5F5Nzd< diff --git a/win-linux/langs/nl.qm b/win-linux/langs/nl.qm index 929467f8f5a2efd0ee8bb9947c1439d961bbeb5a..b40bdbb2fd6b913fad56ff2946e292670b4dc739 100644 GIT binary patch delta 1052 zcmX|=Z)_8F7{|ZY_O5H!UhV$18?-w%%GMSd7JUJZpmV~~z*yW=LLzMabHlpYTY3kZ zBr=ENm0JXl=^z+2zzfV06B?rn$_tf%#xN73$uP?rjS1)r!DtqZ|GwQN=F8BP_1l3ohr|A5*6_CAR{LRaN|8KF|`yu;W z5seiW`|dTpLg2u0arw3eL=H<&ebWsnKT7HQ1;8mwxx$0MhHX;e6RNg+E6x3Mi19C^ zQr7{X{tc;og7I}@QrRTezwGR~Pd+f@d~NYK5Yo*Tg}}sA)%5G*)I`TZ8S7-+lTp1eK5*(Tj{$@6@=EAII# zXMx6Z?vkHw;$HU$@7|@0T6cM2J5S_j^{%u?*SD&7H${OOdC2;+dA53Qo(4h=Gh}OS z^m%H9lT175dHC2RKw9v0-~9vFe8=py1twyi&u{WL9dCQ3V*@~V%3JsNBCs)RG2Z9h zVNdb^4#`20B0i@a4AGQ7F9&-nqTk8kO1x=@#r3eL6fL&ym%|b6w;Yti*U9i#vQo*f zS7c=uY5rjIC)(uP4fbrhAkY5tJ>QH8`9_&9g?P{Bd*>D(XQyxM&n3>YoC6XYOD*}`CrDHlj}YXdTy5d(=T vwuZ!Cd^b%fkq#x3DikzBNvn!Bsut)@D=Jw{)eCKgqK@ZuLr<8(*1G=y)Z_P1 delta 759 zcmXAnYe-XJ7{~u-+d13Lwln8+XHIvV+O*Te4+epk3NwpkWoQKw-d0iTGCw3P?P6My zfuVLXW*8MDVfe`rC1rsnT987Q4;x6UzGMVt1yVuv$l-`N&! z0Bi}M)vJ_;h*f|b27F|fGk}Jt#3#`C9|Oj7Ds!{?w~2BuI=43fe45JKD27L4fY{8G zTp>D_n31I=U{zNCB{4XuxpC$vDc#n@dfNc|OD!Ho0MuxoRr>+!f_7&8PI_e4)p_Z0 zieJ}b6#*t)7x6y=3_~jA4XplO4j@=q-}Mo|_J=LEJfJvZY|A?%#oeM<7_s&wJ0EWb zyob46Z_5GC0vA{e0eXQ8hE@YvrCex|RI}q;YDx4FYM`_^6Gt@Y(qLcNa)qKMIMS!Jj zUzs+!WU9GQC7(ZN+Iob9-3G<0$+X$ccIG@?yJ#+M9|pK_rA{Mu6qujSI04;F3)fx) zNZpo{jdQ??Y?ZzmOR3gR4X+oRECsjf1*e;mu^keeo9Ub!6QpIkt5ju%PNk<+WzHT! z@{&KhNsy+9(i_3Ed_PqZJQYOchsIXm6N1we(={v%eEmQ_;jA#7pijVlvs!P>Qu|7* z;omW;<9!gw{}L_KnyfkNP>E(7rPYK3*pFk_i-W`<_R$`K2LWYAQff4uyqjazD6>vc osY-H0e>vN9Ora8YdzC6XrwqB*GR1VtV?1M$D_P%7)6y`^e|S!`y8r+H diff --git a/win-linux/langs/no.qm b/win-linux/langs/no.qm index 893b1ce20802bdb81fc543fd48147d01cc116288..18ca20e583594155b942f4a77b194601f6ba8cb8 100644 GIT binary patch delta 2097 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 iL~lS0M*+W0Ea~Y=D_e2_~zU z5Tn6m@(lwS6K6Ke2oq~(vSt?(g)lTaqgix|XkF9@e-<+15`U;~*Ja^E{q>ylytn6l z-tX8mnOL&&+#dU9Hz!8FC@KDU_lb*3wLn1@;41)yBago42%7=l4q!9!-amkjPwAgQ z8M*{$5_$AgK{YoEh@CLij{?#QXgX956b)gpse|%<%A;qVt2lZMShtNkoxFXU8m)3S z)EPjxP*8p*3Fz$wlP~{H0%jCAKL%i@Vy-0w7`hdgtKxtqqTK1H2BuQwu)zj!e&tx` z0-zqqqpz4({q3VZ^Ze%Hr-8!v`8xeM>T`kb`%wcJ7x|g$pJ~x@65Y2ufz_X6wR z5L&O+0nSCCbF~K$R)nseM}T6l(DMn6cg+Z6E4u*Il#s4@lE(iaWM3iPRwZOv4sWSy zRtXJXsYb3G0_+*p^b_v^+DmHd0|7u;rrvb$B^ocPhu`WaInWIEeFG$mYBV2Rq4d4O^{z1?aYVcWZ-w&w2=gDSk`7U<#eQ7 zVtpr1g3pS=a;N@wPV zs6nsp@qts6_@?ey|1B~qrJHR(OP96e(Oalnylkh9j_QSh7~ptEZwXuh+`IGWe@I`c zASWzuOLjgdJ8|$=*Q!#siW&$6F8QkT$bT`_PX zKNro_#97J_PQP1JTOccpQYgqYuC>19cFD2*u8>Spl=v7q(&m;+%JFfws@>8dbR7emO;CRm3F%ptCI-X(BLvR(=b?IgM<*7Yj>KO zI3X~GAu(}A=BcU11*ZWs(l^kM0b{)2PXJ%Y3qxQtN~13n-pnN?s4?oVyF`6)_xU}) z=l49{@ALc~>y?@8iJI0hAZ!NsPMgYUVh^B<11ZWY%|QP(;%zuHR{*JKGtoP_Ekw!j z?frn~S(}LkoGLB=p?+@j2gL9)H}m*0kW5X!8_K`nIC=C}Qu^Mp@ZOt1aE`}Z0l;4V z`pyjC|B}D8rH>XloG-^|am`cC34aLSnw*8qWx)NFO=Y{_`a1^r&I+li86a>^=j zeJ%^;1Bv!cT0Sncr%m{7Q3vAF;;y?Lz}gluyQ~4OsF>F_(0D@Bu99l3TP!@3N+1n#uvxvY?Gcs=2N=eB~S6( z$H1zBrxYMJsnwp@GY`o{&{MwHN*(#c+nE)B#;3hq^$JieJM3WnfVX>y3`7!E#L=+I zs0wn&>2MFK+76xq#QCa@hra{sFIn3hp|NMGZr`GIJFol1gS|lXlCS2)JHWcnY^HL) z=lBdYpid49BqGns;Ru-uY?Q+Z{n_{oY`I{tAKP`W_^aDMUcjTL8dLd%9-#`5|-R)lg8-Fa2 zQ7KPX`%9^jpOg7+>@NKl_{qz)S>=dQ@-(M$#l**ptz{YwWBBdx|%b&ir_x`G*=%yUplQ0vvMSSuRgHYS*3DjkGKHe_wCYz`=9>02q$$lK=n! delta 783 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 Sl{Kd3%OsunGW}GtIPM=co>^P~ diff --git a/win-linux/langs/ro.qm b/win-linux/langs/ro.qm index 28b425bfdc882d22556e580a1e316d3b34a2c550..0798f8ff961c928135eaf02779133d4dc08e1c21 100644 GIT binary patch delta 2812 zcmbVNdu&r>6hF7!ZP#^l@2%aV-0s1)4#qf> zf^izf)OME!=yjDhbaC4C0A`BO8A`WR+SOicv@Yz9Db)%TX>Fk_MIX!4{+tt z%@|}>aJw&FM8Gijee8ZB(;Q9N8&TNJn(A$5hzhDT+q(ZGiZN?WZFrn0^}3ec+e$z})6QyMF z(TZ{V5a<9eeQQAAZoconABZ%2`Th;#aj=&^{^biqi9P)3uL499_Ujg%tRTwu=-lW1 zMEX~BKL1^qzpe8h29W$Ex~;!FOcc9DH{e)Glzu`txCZOlXLW-ztd-L{&ch}>sekUX zRhXZR>U$TwMr6DYn?AV`H{29!4?h89{juwwj{q3Oe%NQgfh&fES4~8v+YIZZ6GXxh z!#f9YQ}cAg&*_bLk`lu;ej`!ww{c17R#<)9>aV~cw<&IGO%IqYi|gyhMKTBD29f}9 zqA%{<-ZKCe-4Hjpzl=zyGgi5IqCBV3nOO{qB-KtjWSrjy0M>3}tF;$?KN>@)cR&xa zao0x7wY|op%RznKGw~_hQ()qs_*q>$!OT7J6=(hi;MDjRBY%L=zvA~i@HVv3qT1s1 z@gE(B&Z2zgI9=C5qVZS9rB*^<1-n!`anHEf+8Vs+npy6w`y&dRGa^u$y$K@ye~}F4`GE$lfeAbt4%@`Y{q?xokJ~ zzGFy`tv78s_dO{4+H`CXqSJLJB)s}5w7@4kcKH;5F7gpgo;h$?V@oWnru(Ux+9*IB zloY3J8dc(?2P^IH_2Yzq6(4+j7$dIy zY>KO7))-!km5g5am(dKGMAK*rK6lB#rMRZf9mBt#TJZ597sFH!R4kuBOQ@FS%ZpO$ zrZ#EJ$mmw?!gicWhIUS?_}9^VT8eW{d}^qIsz{IzS}YU23jPRU7soQS>hLvJ)>kZX z3Y7s*xLx#1LXo}H8}LM0;Ky^vl?!uX)A|k%x=TrRV;x|AmajBous_$l( zyi@i^ah{Rbp*(YhB-xqnT09-(v;z%$K)-^>MGZ6$$co5LrL+QPS~0sZ7BL$l&f;pA zC)Bhzw~CCj6~Wet0yAQ(!raF6lT}Tlka?9H?Dh;#r}9{}R839nS&?Tk_T8`!cz9GF z66LN8XWn#p1hB_$!6dj6o=kos#N<}lkiW=qareq^|pUGto!ny_Q1xig`}d4G&ftj1wliF=T|2VI{&|&ja6f%-9<;`Kzn!9oug5 zsqz?r;MBN7?3wGG^^LV7WXA_u0v+v)y@6SlX_|7^FgOycLnKuxytNJ+lmrY0BdJYZ zo#k{i{QvXFG?^TTVv#Rql{zNeB9sP@GbEHCE+5EPNS-d8%}qiNq#EVl{IC|4z2WL z`J3GNj(nwHhe~=G00cpSDt`8^!C`G9WtlH1I66F!`Z|@y(d7#&lDFrrh~>3t$aQjM zi7ncU`eN-rsMMDF=cERdAR@*v>q;KfW9P8oHb+~V5DEu_feuOZ3N5}iF~qu)6p_%J zJfY5FJu>JQ)Vo)R9tjPIsBr|pYLyjGbSg6VAyxHHQZ2j?^08~GG6_MrY+v<4AHhzD zSkTg&e=a3XAP@?s3Z7=aKOhNiQ3wP@KcEFV1aCkL`3ogMjQB!QsB{D}(^^0?aNKo{ JuH|zn{{s9xU(f&m delta 1431 zcmZ`%ZA_b07(FlT`}UK!K)=6RXh#*y6kQC0vO!yE!g zm~Gs#piB`X8pzCo)nr5Gl8pssG8dyWDUqz%G%@;v;MA!z>eJOpXkG*x?YhvoCtV`CS+jx$e9onEO23bFuS1IYH|(LYGo3ivyK3ab150=mx8c>?mt zXMpBjfT>pggr64ZN97|rGr)P}J-c{#i(#rR&|hh4CMs1eE)Q^p?i}!&xD_pX%0fA{)r29+hd{J2Z#Q^(gp&@t)@Kolpd{beq zjFK=N6)ijoDRPPyCkZZ|7A+6cx#Szsm8)BlIV5M+1Nnk8oJaSUqRUSWZlmZrPiS8j zJ-GoxkLU>z8q5B}VX^vt`ihP}#Ka<9V7VZUtzM->o)#Cg^n--GI^EP46g00J_%lO$ ztO+3ShK#azp&i}mK?3Q`GJTQJhcFTaRyud%1$fYa7`Czzeb^jW#{?0@R&=oI`lvO4 zAa>yy^y7J&OQMe^gJ?wqd(IHGSN9G!@#WBz$gLUp1E gG1gcvz5f?EW06d*0(%eeCUcLoMc?}@$QjA;{>x-(Wxd~2_GlP&bB zGXsM{B3shOJO&1~du*9`#z6iaw!A~03=B$nlYJS*C7-fAm<;4eKW2CQ2&4rB*e9K@ zV_=XuKe?7szdn|;r{ppNgWOimt$RUMdT_oF1G-g%k@Fwx1O^86ja-6aatsV=Z@C(8 z)iW?K)^g48oC9=CUM0So|7je7#LW(c-g9g85m^m@QS#cXJAl11fjLcCr@S4S4`lOV+GnH{|`bd z{pXWY1@aZ2^2r?q(sF8(pEAkoE#=ER4s^8?C*RcfkAS{d&3F947ocme@$)Y{$H2g0 k$Y1{JCeRMcOa=yBrp-poyi$yIlP}6>GwN^7lf5Mb09*cl9RL6T delta 481 zcmX?>a3W!Xism^623CIt291>r4BFN}I)s5C{xFdK$iU*ckAZ=+3_`0;o#-pB`JbWD zFP?#ciy1?EW06d*0(%eeCUcLoMc--*5Aj2RP`x-(Wyd~2_Gn=SOJ zGXsM{GF#HeJO&1~du*9`#z6i)w!A~03=B#IlYJS*C7-iBm<;4eKV^6P2&4rB*e9K@ zV_=ZEIJuTlzdoL`r{ppNgWPt`t$RUMdT_oF3j(^6ne!j(1O^86&0Kp;W!?tQtsfL!YX<8;th;>@EY%Tl#djZFY zA?x1b|NqZ_9^ZG)xrh3mel)e^t$_2RYcC)BxMJl82Tr|rr5VsW0YejIktVAjr|bo) z_W*U=uhs$ke@S@~Ssm{KId)A}I$%0~7O*tH-gXSInbGq^BT%*SI|Gnq47`78pgN*Z_n zz6B`%k#X>P7%NP@?0Rl%+wF z=Q?HHInxW5o&Z+vPMOZ^{0U%wD!X`1E09%@y*l|VM)texBQH)dFl1kt$pKcZ%Nh8u z4Oo3P=SbocLh8)s)6`4mwk-ae0axa}H1#~YO;K-Chs%Z%Bpx?;kK1spme`(lZAdEY;v2B|4`*- z6oqV!n^?_d*KDB=>A-c^cI?_!Lgcf3IM1RpT+GWmHAhab=RLM`nVfwPVjFbMF6s8! zHZ)@gA_ySNcLE0?tE&Kl80QnlB4o*m5PXPXjPD7Al%agDV_s=a zlxOWd$^#DjBSWg42_)%gffjwLZV$S!k9WNMb)W@p+^xZCG|*#&7N=;rHd~aSk&m;r zw`H$aZjJbp6Txsou36m>i1??5l%00B^0C9NEZPfQ>45JHWy#*Zp^GjADr3w!Mi*f< z@G*Qz$5941$kUKOiHL>O-MF%^;8gWS3}A_;0t}hKigXiv3k%JBM|elZdc|7k9SCIT zju2G=NsRhICX}G=Bsm$Olrhcw!q=F(>!Z~WwY0NQf;7$Bj7AwLY=4*tJV2}lX=;H7 zn#)e~p`C^_)JExQm@9#x_#fmdji0NtuU+n#@C^qAbfeMXugO9LhY4Vba<(wAwF@3v z_cMUMGf1r<;>!|$j1~n5la!oB{veXl*Hs9_esghCX)E{BKnmh+ zN2uOCRlF^AfH>W)wkB0FM5&9S57M$mvY=5AAEsrQH796J*Xk{FBeze|m^ypCz5U%8 zH5nPwM`9DAC}-!3D|JQdZzd}GGk(*d+GVn9YwhN{9jZtr8G(k3j5Y8mF;~a7JK67J zmTC5*G`^hg{Jx%Ld`H8AXLtMFn;tm^Xg@)W1sWpnI5F^%SJ8WuT;IF1=UknxuDf#x zS=nCdux3t-x)SfE9sf`N-o9qPTe3=$4k&YuTE$aZoOfqu|EBbZ1af(YPBMiwkqd%s zuKQU!Ughx0XT(TSo^;wu+t`s}aE+_!W{$2J_lxygGOUV1KFDqrAc?uE_35p?PR{<; z{d0+PbEcqV1?^>~|4O-c&GyWaR(;-Uc-|=Ql-7zNYrU1RAa6iy8>%e3I(P*nEB{3D@BwfUz*QFUtSt53`}RlH-&*K@k`;33JU)`aNhE7^_|KOO1r zQa=ycoJpvIOq(-)YD_MhG8LZjaXFrhMkBFAFdz?w#)EM&ZxT}pjvIe`verajrk%Zm zqd|W{5{`Fepj?G@s#_mYGGPv~9v8SFK5l~67($XD(?`;@X{2e1nGj+u36Akmo;2M4 zZq#`hgIu*v_WQ!&NJ1VA%8_U=%-|w1IS>iP!_^5nI2DQ~;td(GS)O5VMoGGnrOWys D7u;bQ delta 1371 zcmY*XYiLtv7=BKYb8{~~RmQm2n)*F~^C|x_Zb=WDkP;t<*ZlUbQ7=uzA2u`-W$5YVr=RADR`#tab zJnwftI?$ia?Ywcsb7$?`(7mw#+c(FiSE>P30pNE4YNw2mHo|5gvJKcue0Uk?_<_zR zp-IgEdYg>FHE3tA0mcg05<`G!KvQ2F@R`xy)Is+~WGv2dJ3d_k91Gld?$IM^^nhE{ z-2_ZWRq-o1!Wq@)@BK{%E~+s#3?QSPZAk$ZvwE(Q%-B~o2V&H~I;k13xB)Jp8BToz z=xSw*fY<(40+X(!(J5-@zAb8V{yG-2JA6Yr3nE4qQtPLUnx2aewda^Ac8ucj%FJ*WS} z)j|t?SN|_RNEkC%T|pqU-_XBId*O11;nX?W*Qnw0^%20?Ysg#4P|0_O!p%56(jH@? zlP9ApW71bf`LD_ty<}{7TTccTjc)}fDA)_e?8`wlb!pJ z5>K06JAHvJo-my~^^g{I!E|l^BqjMp#?a5EpXNN&V9+d_ZUwxX&5qgyAaGvBC~w}W zrcF3r7Ck%}5i_DEK!z<#qNk3|o1Tb4iFXMSQZlzsCVaPK4D1$zF}mPqV(>>o?=dkX z32aU=l#uYAjP_D7{tEqyzMR-~n+CW##G$oS+DKfyU7$aRpR-uT=IP1SEhir@(UV;2 z0-{gUw0jTsp@%z!F64KqcZ>E2YS4;32+{X3I?;n;Y{r^&mZBE*#Ag(hGF!c6GgX>N z6(a1xQC4hovT<9bwS0qbS5%_*8g4u5_r=(DN3*#U38blKwbYe;?HHr^Njkl#n9}Ez z=D&_MG@?OKal7i+qU#8$8lTpmcb#=hsz&lwjg&(5tGk{Q&Ezkw;P-lx8+@yRpYtRs zrF6fIcsXUd$jO?#mHBdCR7IjR(Mg3U>rXnP8+?_bvg%LS(^P4Nw3=sYo)1X2q>41= z8J`JCL1bQ`$S(#AOeNkzy%q!-yhf&FC`_l~1J3Sanvcu&g`Lm@{0y|S-{2w`6K2!hz diff --git a/win-linux/langs/sl.qm b/win-linux/langs/sl.qm index 69c06ffa6bc5b5b8399f9517ee2df0236c324209..de6d5d002af65605fab3ab69593ee0a75f130ff8 100644 GIT binary patch delta 2675 zcma)7du&tZ75_PopNXB?c{wlVI;l$@yweoYkU<_eahfI&7==y+9OvRX4`0i^Nz+ur zZM9C5NY!c=rmST`Xwa=FRaMdls4bN`5EQB9kEv5ZLQAVnE1L%D9;#ql+3&kI(4-sP zWPLv0<9z4*zH@%(+^@DCiDcHD81$XLcJRQ5f%5luAAa|88({VUmS)QJhOBi`_5n42 z0P4A4^Fv_QuYlS{WQR`yjt)Zx&%k#2RUl^o-i-$U_g3`oZ2~I$@KoV0U)dmg~i znTtSi(A1pS&x!A(>E$oKq`?EG&+I3G+_$ruUdaHif~>AXSAgoNtV2)!jess?U3~6w zApiSjygd!zA@k|}Fp#&;d~W?#8vH2xks$5m|2caquNW`|vZurE0QTL6ta;sHyID=U zZ&~Vp_A=mk(UNI*ouHvNE$VL_fcL6pX2b7*tY7cA#K`6(TgTP|NxfS||v z-H+P=>9BR+iv(c(jWwQV;QBAt#QOwNb;LUT$DM%fN$YIu4xq5vI`=g9%Nne68fAI2 zt@R7ayI}kAg}p#UL&kP&^DhABDSOe14j{YLUN`mxf!uAM`pE==!G31O!3!D3mVdf| zrSCbW)L%2CF2@`1@})%w9iJEVGbL*rUs;|9mi*o6De_Y`JDE9LjA&=m!9X^yf^3cE`~mEIXB<*3}t8T{gX$jm&t9va-D#`ll$VtUm4L0 zxvzfjb#lXN$R)qb{oovVmdT!RStqvu{w`NR#|7s4b3@jB;96%6lN)}w&q6@%!){*% zU*NI3eVtr;pK$xdeklxD_NF1Fdkt9~bo+xmuc~+Z&rtgJyCtDt@V;BxNLe_e%e5#9 zx|`OJ&6R(0$IsG1Y21C_+Gh;eKip^MNIJ`0Uf$u4nA7WdkKMS)oE?e-%LZp}WF2)k zc3>M)kTHk^6r`adj-`+=0>$Lweu6{7B*!>sLp+T_(N1_m!TZp`Rg6PLg!&22B-&A^ zF@{n7uBw%IyG!oJL)=aAOhOaZU>R0pC4UXt1#dvx=WVWRLm&3=C#(y9eMsu}C2Yro z=%L>3k#6qxq6a%DL;Qu&j*Zk!&f_OyqKR-v!2tInL><-FHK@b#d1MpxQfn8yv~u`5 z`r5aLqz)xIHYz7nsitoEpc0+fqkZbBDC=JU`ExYNde1;f0zTG#nOK}*9nbm4J53@L1- zhY4y+3`T^0hG{*?RS#DQK6;EY23f!R`-0XjE745^ozzI{7>0Q+!3e_;Z^pP1ArW(# ztFHr6(!Hru3Xeu&vWUe{GPYC_LXL@uX!jI;9B5-yWWG(jQTNJOD=|g!C|^U8=qM_R zT7qkdR-__MFM<@qyeHlulK{iSEyxtp(nUR{Hf@!!TDxAJYnCyteNq%MZQxG871LuY zsL5z)jm2HsN?*BWfELmmgWMIgi|8IV6lZHcFK)>U-GL@)q7a!U_+BYp}AB*;9vAZot8P+$LpI*nYnc%K&v)Y+SyV??cO_(AW44< z)9%^SyCCh!gr4q7QE}f^l~>D)^@Lq5?GE6GEOlouG=gHE3!5MN=T2MWq`OL8*$(a`d+gZI6)RLL;|7be%wu&{` z|4QL~^glv2h-cllD0nw}Z{=Cjs(`Vi4b!BtW;l1M13G$2b#Qce)2l9C1$Ih|OdO7cWJ Xt)`bRLir=2bOcN{16eokHfR4E8?RJz delta 1223 zcmX|9eP|nX7=EsoyX11oWli(_{js#$s?2SEkgl~$n^vRk8ryWMSZys+sc44FoMS?- zQwo9=re|l08&cTR)k@L$u`xT@*0HM8B2r<6vQPv?gfSF`gLb}mSLObA?sIk9a&rCIeV*@coEV#r2EOf|m|1QDD#`%26JQ&4+(;VN0c;EdwWP-{0DYHo7XY=I>71KGu za=s$@sSH>h6(0=$O$L@&oG${{%g%OY0NXR{Tw@M!tQek5PyzcU!>G*-Fi}G>^9^9? z*D?MlXS@@qI$v|OC(i&IKIWROXQ|Ft+`;PtP<=04eFY;xD&@*mK-6XWl z8Q)nL0=xy|{tU=|QTTF(=5ffv@2*Z- z@P1*9J4Sf7xzZH^Vg>WjCE5$~rn#6oLHl~!JoWiF;5uL~Rg$5^jJbR+NtcutTLw5F z_^jCK+f4J{*0H8WY=rmXytF2L7sb)*-7a74#y##+zPCY;+P z4@X9%3CR;A!yC3qo`;B6?vp~Q?slk1lX>cNA)pDg>Wfk+K>@*4DRhOI_)yh;t+1!?TY3Tw`ee zA(nRU!=uRKc?_boi+xWrZbCDhFcK1j{8^mWmQ>PkKdsm)bo-CkI=r*S=^ zR0_u!ww}EG*DMh|O(~r;r{0E-$!wi=zExR_jnP>SJ;;^h_zFX$2W?OX@hc}2YHf|L aclTAR-Fs9&TEs|oLn&0#X;O~gBmE2JSTJ7z diff --git a/win-linux/langs/sv.qm b/win-linux/langs/sv.qm index a190da0705eda535cf717e1c0550b955b9059742..0f79c4aaf208a6f4f2783dd21b7fed5ed4c79a90 100644 GIT binary patch delta 2092 zcmb7E3v5$m6#lxdT_5b0?$O7(wzrHuI%J?=U~bA@?d%*a+W=uAlfAmKt!?(AU}R!q z3<=@&3z-Ik5I`X_B&$S-JOY9Y5QrL$kf4JsQA`XWAt7KC&wp=V3{YbJwC8`E$9KMS z&OK7I>9zjigUyz+H@0m#@5(&(#*QOb$^fMXP!*BX%QANo$pDb^7chnHb3O$cz5;SR zNc0^AGz`vKi8q=X3yac45Q55yRPaAWo zV(;zSXFgzROng0?{H2^vTxT!?3U}gw?=S((k!8*WRnomI0#>P-^3h&k;yqP=dGbMW zbX3*ziVU zI{Ve(69h#3Q9bbcQXr{K9WPxBr2eTMd57+;=hP#NWX8Fq(wig=v82rxR|B>K{Ym?3 zJ|W7gHKu75K%!og-}@$DtkQuy({)CZ1ITXBt+`ChDc;i!__h(FA>H5*C1Czp7dH~HytTS7_FX4H-MW!Og;Z8w zncmZ=q71&%do$cb&3akp+x68Q6xin12Oaw;Q5tw9=W!|^R#Y!JlYDloCD4dWbSnPyv zVob19(%HCQaPWIepDZ)HvUGeXOVD%N&Ndt8 zSYN=abmlf93NZ^)@f@bpn!#R7aj`qbqTDhB&`K+WCMiY$QSP7g7hx`{$>P38D_fc} zrf>3%UuFD)O+;UVo-DNZMP2?s~Xv*@5DA`kf}ki8&AdTttYDlPpi6@l_aUa=z5 z)Z5t-?h*6y3z{QMu~v4~WOsTWg8l?h@sCr66*UE@!aP(G%0|kdL&{T*x190_Qgj}h z?_20J7TH=guTu1NE(^Bspv$AdXGAVqf;@D*Ev-P|nn~$LB)3scDcZ>eC%8ol7C}4P zonFoS=1k_XnKzrfikDcxY-4xKX>6g%qnOQ4$vvbVBQwr#2m9Pq)nETF{DnworNmex zG1n!9iclRo$TCb`9_9BwuaO5YW7$~(-azf#alA%aBVC>DB(PD_9YwW-lwh+VTPkx} zZaiB;Eb>0#ebh+N#(JrpD%wdmVJQo)!z{jpd{{L%5^i5;Stu;j=S^A$?w{)Z|R4NDc8_Vlj3-w)lq_Ux>++AX79LAi8ExH+%9pyTF(iW_CelxCKb;mN9c z>TF25@wYNE6;qZ-P9Jywc<;&q;{LCt$o)L>j6wnnRiE?S2}tm^7Yz zoF4JVHdx%uX=kqK64(cpQkwk3A(BtYbNsk{m%>&u&e^!!$(5P)Iz2Rc|M^Xj^uBTW z3_PU#wOB;S*U>k{#-@tJC76VI$}37_@>XuAeIMbF2XmG5GS;lA^`WR(+SSw+>XU|X PRVYeBm>Ca=^ELkf_*>A} delta 1159 zcmX|9ZD?C%7(KT)_a-+V_clqF@7yM7BW|-!Q75&Pnl{Nyt!vt3qhr*`+?*L*hcLS` zVX=bfk22KPj+8cx)sHc$4!v`%u9>KlRYCh>2(C~X#}LsUqjWMHqCUy(^5f<39-i|& z=Q;2D&hAoQzWw4p&kwhzCw>eEzIy(2X}J@qD+59sz*}^Tj1cw$kv?EE@!@}fJ>SxO z5{A@ez;su~#us3`at<)xh9fZn*luF`@m9e5H^#Q_0i>fkHZF5*?_CEPR=BhIJ9ntj zU)&AT9AM4VwSJN(oT)qY+HEp0!{br`G>yN~p917-{6a^TgfI+7se%2VVO((o+(tto zHBUzF(=ieejQ=%}fo;O(;#r{HEOgl}QlHDhkrjz_iZJ`sO3(}(jNl57NL*igNlVdYDD!=-ulS{8SEz&hwOT1kbRr->J3pHd#^8g$#D0 z1ur6pAvR)9+9Qago46e{cE#Rpyr0-!bg@;hlNFmyY|s&t9?&@q)YxAf34RmeTFJS< zX=@uE{dN9IG>Pb}$EW=o{(vKL06jGCUZxkC cDw*osK#hI4xw~3fadxkAx;dde8O@sh2U#l-(f|Me diff --git a/win-linux/langs/tr.qm b/win-linux/langs/tr.qm index 2e96df9d1d83a732be7bb898190b8533de809fff..8fa734ddcee748eff18ab4f92c9da3d8edce51de 100644 GIT binary patch delta 2607 zcma)8du&tp75;7<+p(S4o?fMa% zOs(5$`(qnYVYf_K-&G$|5ezlyG|<*f-KatP3o95x@wQAZPfPrT@NtP zSgR}h{2u3?^PTTJ?C*^{J(}BiBI0`EqsI@w*;M!2d!BjaydN;Q0OL)R=DhU&gE9zs z=Yf?x_r`$H-vcY$DDM9aV5!Q><)6ZQ>NsFqf{MPwfV~uh_jdseK|DA(O1&TDW%D?m zKYA8$9+Ga#J;H^{BE9&@Cp5TU`k>?_P-`z}ml~ctB95sMsE1v29HBhoNFTIZ%&0j79 z%2eaZCtd`~yN$V?vJ*7)b7T6?7N8<)Ji6&GKvCE@`*0&)++jTZr=K#Cw~Xh{#ewDR zrrY1?0UCc`8vB?mm>xB$u}<#aGsS*KAWa8MGk^OIVBT(;^X&qv=1mtK;(4uNx}Z^d z#?8KuDIG7EfBg3SK;71y`N+1P0oG)Rb4@Q$>?mo?e3!^hlpOd;mcUT*+EELzWSM1T z!A|=BXgQERLrTq-U%bLdofVe9I)|B(HI^@o2Z0;@ZY_5*OS({asq4#TYq`vB7x;>)(a=QnBO*A-X%=;#zz2P;=`XAb5pe)yvgNZA?t`~?=BamL|z<}K#*Rmc9%&N64mRA5zX?z5sh z?BDLi4yZ_C91Do@Q6R&IDI}$K?k1#mX_P0uP^3oQC3TIYwx>McS;bQod-+Kt#B&*b zYD8&C(dNqs+#7HQ;(Q~*n=Y)!YII;NpH9tQvE?A@hd*w0m5hRS~Yj$kKL8iKsynKd#KEZ^L*8WiUWa9w4HLH&mF_;!vWJf3JXB{2vs|8H+ zUbmzLJ@s?`hLe(S=$e-oNB+OZ0IPx}7$sw(s4L_^-;S?kSQze|5 zY~lYen70MT_A24DBwP%k8Df@*0iEJ>xjb7!_)!1B35lN^o{P?u>CC7ICGC>8&VOZ) ruME(U+}tjQL$O#qEsrU3JfXyhAfA*XaU~V=re!6orqZdlYXE!&Z;Uu7 delta 1197 zcmXw1eQXnT7=CW;-Sv9yb!)qRx3t?j8CxLH7&ALEy0vqajg_^9Dbe9H(c&CIry@q` zh%-c&uyBr4nE`?yVGO1_j7*)MBSWL|2h0S_LM4zGHCc!zBp9df-OcomC(qO8ec$JO ze|NO^l}w@O>|>tqmd3|^hy=daer$HJ1t=>4Yz#2)I#xFjb^+A}pq})q3842I;yD;o zp96wZ$MD_Y=cWL$9QNcGAX%_!ZzJH_g`rKo_13oPR$QkCkQ-IB3INzKFoI8vUMX5o>C&m$*8(>6ZG4&Z> zs?xFQCzk)W8nEWs`nOL2%^(^%{%?@4_sBSAex#2o3`Y0>A7^(09yLe?Mu<9u; zx6lgshq%6*0|56Hmmj!`_$6-OYZ@PXkSqT7Fu-RyCH??l|AQ;-Bi$Y4O0tSK`1nmi z+aQ1N!d}4hF+Z{SeZc&*$+a#47;UCC&%Q`;PMSsz?WQ;oMg}he1z(-;(Jbxb6og-0 z-E`n5g=Kb>u+CiJ3IUOw=AkQe7bb5mrpD=BFPSH&-=qUxGAk7nsOE^dG}B0rv{p>^ zu|S|-Z1dI8{?j_v#>9?(fdaLQkB8{-*uTYR7T=*j7sdBRCs2SPA!C5I3B}3pJDRhp|`@Ixa z3+xA^aFWo`wStpU<302#`hJn}^EAM9P8wUfMi;S3^CkL%*rLsL>_>XCuWZlXzD#}G zd7$<+1Kr+(jmTpVk1)yxLrUUn(TWVV$dOfEdA?%3um%a-k1fb)%4&O@90_!xRo)); z%7^W7%|RSJn&NaMnFg76_LH7O8acFRm8YDeRN00W+^O+hm1^&HWYLKZOQHY9o_h zJ`{)vt96d}iXzF5;944%reB7ZQGGXp&01Yri{qF3La`M`R(B{1A&H@VE#Wg{?51th z0p5d=VG@`8)$)Ag0R2I3eIaFE)r=aY2OZG!4%es~YFumSmCK{*hCONwwU_)tv`M+% MkYJRpchvF!0SM0*{r~^~ diff --git a/win-linux/langs/uk.qm b/win-linux/langs/uk.qm index 2ea0dca4f3205d2c9bc457e1971b51c77bb01b4b..1143eec112ccf18e518df8075d4a8ec7313ad810 100644 GIT binary patch delta 2709 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 E4?)W>wEzGB diff --git a/win-linux/langs/zh_CN.qm b/win-linux/langs/zh_CN.qm index 2cb9f84ffa300ee601c65925c2ecc739661e8894..a8a0e5b88395096cfc3debc4e85470ca814e58ec 100644 GIT binary patch delta 1042 zcmXw1YfMvT7=BJKr<`+ozEj%Lo>p4eg@sPy4|H*$(GWoCGAoFe2?G{L*H#_iEE$ks zK_wUgMbGBCt63&47?LgPypU}!n-X+eWSemdOO`cDG_vdx6EiQ_WN&-)*Ym#5_dehI zyzlqDThm`N_IMx-nAZcoFM!1>2ww(T&I5iUOu=&i->>7Msl)5s0Sg8~Eku5=W4;CB zlXHOWeQw38gt@ca#O>Q8-gJ1>9cwTg>%RpUzBSAp>H*}vMtqtCP-ncbAqa?r#*3>r zl1Mc*6_Hq;H;pK6I$tm)gP)PB8#?-uX3N53fDkY*erE!(E;m=oXQ}SEIsU6ax?)Y{ z3hJu)O;;-c)xx*lYzIu&`B?i>%B%SHuc({n2%r4DnQm?1Qx#hQMd8zXh<8l$X^qhN zfu-Umq4QGBxf2I-Mvitc;@6hx#$wp zQ)Phhx>Vh2CfBE>HQoU5jL@nF1(&2}caVWRRf_me(s&)xu3wImU|c#eM!DgDbfJZo zsm@y++#q3}wY+zn>L#p}^LNQ`j@D#wCw{bEx~P)s1)1-yC;K(BvuYObPU={&R96JY*nLf1Z4n5k#y zSYb8cYNb;Tl&h?4IsGzsAB)XU14jXS?eE`cAFs2SH2oPsPpU^Qqp2imZm%Hvs=opw8?`5YeYEr+0;aNNnn zIpLvb+qOp{3GGW~Lzd`p_LOIdRe8-^sdmh%TDzWVtlb}tuFTM>^LYkNQc;T#)^5IE zJDd8!6*oK_G}AJUZgRKT^9hyh{xCCFw!3>#y@5R#sGGd)qHT2hDjrh3S;K+UjBgA7 EKe(0(aR2}S delta 1082 zcmXw1ZD>>yfLS*A|*@nb4F5z98m=s*?+T9plPl$DOr?4&nxe?0Fw?|II7 zp7Y+3Z69r$SRGmhj5`6}9bnyN!U>?~GT^U)A@Uu-jc8c?>*NksXcb1=dMNp$hTd9C zP0sQ#va zI^taCFJZu4%f+7b1BUxtvi}*1V_g6DG_7ie%RcI+u3cQdaUY-rxWZA&+wO7&mC%0K z)cAx@_}lc(>=D2*uD-=w>1@T=`$IGf6<4QuK#cRz|70MT;m1-x1J1|%`ENGT8MbHeCvX@Et9Y~({)Ojwxy;uK&#Aml4aO`ux1c=jQwI4Kk^ zH30hiVsp$$s&9*1Jt1H_AJYzjd9n3165yy8`}}9g-heoG=L`|1#Lp%u)}0Wq^w2V^ zOlBK9Mh!kNZyKJWx|})uaES!3QTOXy=>_u-*WJW=S>lGHB>xr3-ZTq%ZfF?jke=5^ z=t&Z?+eqX2d$QX{a>buycMHYlyRyHOw?5L)-manRwuYV>*Hfo(!kEO}6di+@L@xHo* zDKnG#>jcU-hb&QVxy3n+aT?v R%h&icHCz%*%$#oz_dg7Z7oPwC diff --git a/win-linux/langs/zh_HK.qm b/win-linux/langs/zh_HK.qm index 01ead3d358932b50e9f3a1a913b4ac3e6c37e5aa..39ba7f3990cddf281d70fbade6f9ed186a1d5cc3 100644 GIT binary patch delta 1632 zcmah{ZA@Eb7(E4UKk2Qdr7fkDBI1A{FsE(|A~0Gg3AB8U;sQh%P(F(YNg~c~1n+rk4<9 zCa5BYD9V#T{VF|x)u55wPf54n)dR^{QlQ6SJzIZW(8r@RZsu>cjRb(6EC=s`S=ARXL&D2oa ztf)6nlEWs&i#NxJKdSg(fW8BcC}yfCX+uu1Ms$>t_%3)~_c#|7VDyIH4*qi1Kvb7f z++7TWPAIk3IUwwUfaZKgEcUG%U@VS1W8kT&l+;*J9vdP^YxH!0W|{x>P-TM zRk7w6`fqrXHD4hNU1TjhpKWF>wm4)!^_YJF)loKO4-K5|N4DWAH3+%J4y`Ov7H8P2 zi@%enc$Mn?ujrD-RWGkE&_U4+KxC|MJzzzqFbwG5yHz9}9xO=X)`G1nGpuOD0d&IB zIOw)>`AU0a0?Ob)I}X8u6zsthcoNCY?!d62nvCHb&KZ5sP>vQa=x!){-^D6E3p+{#^?Vk-300dYB7q7XRFly*zq}^0*#XP&p9c%-*0?yeT@=rKq%j1& z66M;(y{5K`66w>z&C^Qw;g9U`5WDM{?Sd#?aWxg5dg(}6Z11H$w>xb!3J-bqw{V3a<^HY)Dc{R)dM@O-%@VK6Uvg+FMajHW`CD~8C;Qy~;=HDU zf+(ON$leShU7IIMDm~|be;m@adhSDQ;tpQ>|6X_XP}K|VIoz_=F51gItJ7(>PL4mH z%uwsYC&$km4&4xC@CO;G^On)NXX&)ApVSx8rTwcuRo@-AmoB@@KbFng4d#9BFYEgy z+E=x;#}1bHDhzd^=;Q~sZkc^yBX>Q_`tUe5xjT&Z&`0kXa8c03Ld?Ei<0s5NV^5BE delta 1246 zcmYk4Z)_8F9LAs9de`=@y<7iZODQ#GF;I13E-?#47;9&%W2<*eB3{+zzI#DhOMdGGXz ze?x_b#QAH_0{WBE&L5hAz&ld!%>lr+AoUMCz;js|_&NiGbZLCCo5ee&QqwL#jY#Dq zr9UO5c-w%8{hd!O@mJA!pdpjvZmcy5p(mL0>dy}%G~4j=p; zDENn*pM1qBw6OE%;0`V@=e#YBP-|sRFb0GtiZ)AfXl~k_?1hYy@WIfCGnHv2|X?@1YfMsQGY?6aLtsIztm;N)#*^x>3Q1!Ah z)5CQJUvl|`qtsCGzN%Ou{JZP&C7r&!TRN2EK)2lfnY@~Emm%(JUSjTziiZ>qP!)IiqM(0(;m%in_+)!0R<|9&-Y_}#N=JhdKMp&nRy zf%>i5_#nTiKuGPMWdqMqb@avp7g17Y%YSm94Vw1$cl>AG)1Lo(jzP!zfwc`Kx%!4v zi=r7hbRz!LslGJgMVmY6i6e^Rci_Qz~^orA9d5b30RwZIM z250u(OP8i)=}IBXYTK-O1KO*s*FsWnF}cR*oJI$>qxB9gb=B+>h_|!#He~ML;-be0 z)Xqp*i?w@`6_&Hu#}@0bA_jcv;#J>fp}wg3b(e`NY3uw?Sop=e@*697(%&sK81CYf z*CAD4BGAQlSw?8F+KmQUolVwhF_2>PET5dQp~{9kgGO|NGE#+I4jQwYY}HvGT2> Date: Mon, 4 Jul 2022 22:31:25 +0300 Subject: [PATCH 13/76] [macos] unlocked Armenian UI language --- macos/ONLYOFFICE/Code/Controllers/Common/ASCLinguist.m | 2 +- macos/ONLYOFFICE/hy-AM.lproj/Localizable.strings | 6 +++--- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/macos/ONLYOFFICE/Code/Controllers/Common/ASCLinguist.m b/macos/ONLYOFFICE/Code/Controllers/Common/ASCLinguist.m index e7a161096..2ca866ae8 100644 --- a/macos/ONLYOFFICE/Code/Controllers/Common/ASCLinguist.m +++ b/macos/ONLYOFFICE/Code/Controllers/Common/ASCLinguist.m @@ -91,7 +91,7 @@ // @"hi-IN": @"हिन्दी", // @"hr-HR": @"Hrvatska", @"hu-HU": @"Magyar nyelv", - // @"hy-AM": @"Հայաստան", + @"hy-AM": @"Հայաստան", @"id-ID": @"Indonesian", @"no-NO": @"Norsk", @"ro-RO": @"Romanian", diff --git a/macos/ONLYOFFICE/hy-AM.lproj/Localizable.strings b/macos/ONLYOFFICE/hy-AM.lproj/Localizable.strings index e75067a62..d6e473191 100644 --- a/macos/ONLYOFFICE/hy-AM.lproj/Localizable.strings +++ b/macos/ONLYOFFICE/hy-AM.lproj/Localizable.strings @@ -116,10 +116,10 @@ "PDF File" = "Դյուրակիր փաստաթղթի ձևաչափ (*.pdf)"; /* No comment provided by engineer. */ -"PDF/A File" = "Դյուրակիր փաստաթղթի ձևաչափ / A (*.pdf)"; +"PDF/A File" = "Դյուրակիր փաստաթղթի ձևաչափ /A (*.pdf)"; /* No comment provided by engineer. */ -"Plain Text" = "Սովորական տեքստ (*.txt)"; +"Plain Text" = "Պարզ տեքստային ֆայլ (*.txt)"; /* No comment provided by engineer. */ "PowerPoint 97-2003 Presentation" = "PowerPoint 97-2003 ներկայացում (*.ppt)"; @@ -146,7 +146,7 @@ "Review Changes..." = "Վերանայել փոփոխությունները..."; /* No comment provided by engineer. */ -"Rich Text Document" = "Rich Text Format ֆայլ (*.rtf)"; +"Rich Text Document" = "Հարուստ տեքստի ձևաչափի ֆայլ (*.rtf)"; /* No comment provided by engineer. */ "Save" = "Պահպանել"; From c0e69b05f1d4783b33c2762e484fb91e1112a4c4 Mon Sep 17 00:00:00 2001 From: Maxim Kadushkin Date: Mon, 4 Jul 2022 23:34:46 +0300 Subject: [PATCH 14/76] added changelog for 7.2 --- .../ONLYOFFICE/changes/7.2/ReleaseNotes.html | 113 ++++++++++++++++++ .../changes/7.2/ReleaseNotesRU.html | 113 ++++++++++++++++++ .../package/windows/update/changes.html.awk | 5 + .../windows/update/changes/7.2.0/en.html | 21 ++++ .../windows/update/changes/7.2.0/ru.html | 21 ++++ 5 files changed, 273 insertions(+) create mode 100644 macos/ONLYOFFICE/update/updates/ONLYOFFICE/changes/7.2/ReleaseNotes.html create mode 100644 macos/ONLYOFFICE/update/updates/ONLYOFFICE/changes/7.2/ReleaseNotesRU.html create mode 100644 win-linux/package/windows/update/changes/7.2.0/en.html create mode 100644 win-linux/package/windows/update/changes/7.2.0/ru.html diff --git a/macos/ONLYOFFICE/update/updates/ONLYOFFICE/changes/7.2/ReleaseNotes.html b/macos/ONLYOFFICE/update/updates/ONLYOFFICE/changes/7.2/ReleaseNotes.html new file mode 100644 index 000000000..ff3a110fa --- /dev/null +++ b/macos/ONLYOFFICE/update/updates/ONLYOFFICE/changes/7.2/ReleaseNotes.html @@ -0,0 +1,113 @@ + + + + + ONLYOFFICE Release Notes + + + +
+

ONLYOFFICE 7.2 - [Date]

+

New Features

+

All Editors

+
    +
  • New interface language Armenian
  • +
  • Window have no mimimum size now
  • +
+

Document Editor

+
    +
+

Spreadsheet Editor

+
    +
+

Presentation Editor

+
    +
+

Forms

+
    +
+

Fixes

+
    +
  • All editors received countless fixes
  • +
+
+ + diff --git a/macos/ONLYOFFICE/update/updates/ONLYOFFICE/changes/7.2/ReleaseNotesRU.html b/macos/ONLYOFFICE/update/updates/ONLYOFFICE/changes/7.2/ReleaseNotesRU.html new file mode 100644 index 000000000..58965a5f1 --- /dev/null +++ b/macos/ONLYOFFICE/update/updates/ONLYOFFICE/changes/7.2/ReleaseNotesRU.html @@ -0,0 +1,113 @@ + + + + + История изменений ONLYOFFICE + + + +
+

ONLYOFFICE 7.2 - [Дата]

+

Новые функции

+

Все редакторы

+
    +
  • Новый язык интерфейса Армянский
  • +
  • Убрали минимальный размер окна
  • +
+

Редактор документов

+
    +
+

Редактор таблиц

+
    +
+

Редактор презентаций

+
    +
+

Формы

+
    +
+

Исправления

+
    +
  • Многочисленные исправления всех компонентов
  • +
+
+ + diff --git a/win-linux/package/windows/update/changes.html.awk b/win-linux/package/windows/update/changes.html.awk index 578847149..85c1cd627 100644 --- a/win-linux/package/windows/update/changes.html.awk +++ b/win-linux/package/windows/update/changes.html.awk @@ -47,6 +47,11 @@ BEGIN { print " .version {"; print " border-bottom: 1px solid #cfcfcf;"; print " }"; + print " code {"; + print " background: var(--color-gray-200);"; + print " font-family: monospace;"; + print " padding: 1px 5px;"; + print " }"; print " "; print ""; print ""; diff --git a/win-linux/package/windows/update/changes/7.2.0/en.html b/win-linux/package/windows/update/changes/7.2.0/en.html new file mode 100644 index 000000000..3b3e6c1c6 --- /dev/null +++ b/win-linux/package/windows/update/changes/7.2.0/en.html @@ -0,0 +1,21 @@ +

New Features

+
    +
  • New interface language Armenian
  • +
  • Window have no mimimum size now
  • +
+

Document Editor

+
    +
+

Spreadsheet Editor

+
    +
+

Presentation Editor

+
    +
+

Forms

+
    +
+

Fixes

+
    +
  • All editors received countless fixes
  • +
\ No newline at end of file diff --git a/win-linux/package/windows/update/changes/7.2.0/ru.html b/win-linux/package/windows/update/changes/7.2.0/ru.html new file mode 100644 index 000000000..364a022e4 --- /dev/null +++ b/win-linux/package/windows/update/changes/7.2.0/ru.html @@ -0,0 +1,21 @@ +

Новые функции

+
    +
  • Новый язык интерфейса Армянский
  • +
  • Убрали минимальный размер окна
  • +
+

Редактор документов

+
    +
+

Редактор таблиц

+
    +
+

Редактор презентаций

+
    +
+

Формы

+
    +
+

Исправления

+
    +
  • Многочисленные исправления всех компонентов
  • +
From 44a2dcc5d75c08da3a57543c604060ed51aa0765 Mon Sep 17 00:00:00 2001 From: Maxim Kadushkin Date: Tue, 5 Jul 2022 09:43:13 +0300 Subject: [PATCH 15/76] [win] fix for Armenian lang --- win-linux/package/windows/common.iss | 18 +++++++++--------- 1 file changed, 9 insertions(+), 9 deletions(-) diff --git a/win-linux/package/windows/common.iss b/win-linux/package/windows/common.iss index baffeb0fe..5c31f0308 100644 --- a/win-linux/package/windows/common.iss +++ b/win-linux/package/windows/common.iss @@ -134,7 +134,7 @@ Name: vi; MessagesFile: compiler:Languages\Vietnamese.islu; LicenseFile: {#sBran Name: vi; MessagesFile: compiler:Languages\Vietnamese.isl; LicenseFile: {#sBrandingFolder}\common\package\license\{#LIC_FILE}.rtf; #endif Name: zh_CN; MessagesFile: compiler:Languages\ChineseTraditional.isl; LicenseFile: {#sBrandingFolder}\common\package\license\{#LIC_FILE}.rtf; -;Name: hy_AM; MessagesFile: compiler:Languages\Armenian.islu; LicenseFile: {#sBrandingFolder}\common\package\license\{#LIC_FILE}.rtf; +Name: hy_AM; MessagesFile: compiler:Languages\Armenian.islu; LicenseFile: {#sBrandingFolder}\common\package\license\{#LIC_FILE}.rtf; ;Name: hr; MessagesFile: compiler:Languages\Croatian.isl; LicenseFile: {#sBrandingFolder}\common\package\license\{#LIC_FILE}.rtf; Name: da; MessagesFile: compiler:Languages\Danish.isl; LicenseFile: {#sBrandingFolder}\common\package\license\{#LIC_FILE}.rtf; ;Name: hi; MessagesFile: compiler:Languages\Hindi.islu; LicenseFile: {#sBrandingFolder}\common\package\license\{#LIC_FILE}.rtf; @@ -183,7 +183,7 @@ sv.Launch =Starta %1 tr.Launch =%1 Başlatma vi.Launch =Khởi động %1 zh_CN.Launch =启动%1 -;hy_AM.Launch =Գործարկում %1 +hy_AM.Launch =Գործարկում %1 ;hr.Launch =Pokretanje %1 da.Launch =Start %1 ;hi.Launch =लॉन्च %1 @@ -223,7 +223,7 @@ sv.CreateDesktopIcon =Skapa %1 &ikon på skrivbordet tr.CreateDesktopIcon =%1 &masaüstü simgesi oluştur vi.CreateDesktopIcon =Tạo %1 &biểu tượng máy tính zh_CN.CreateDesktopIcon =创建%1和桌面图标 -;hy_AM.CreateDesktopIcon =Ստեղծել %1 &աշխատասեղանի պատկերակ +hy_AM.CreateDesktopIcon =Ստեղծել %1 &աշխատասեղանի պատկերակ ;hr.CreateDesktopIcon =Izradite %1 &ikonu radne površine da.CreateDesktopIcon =Opret %1 &skrivebordsikon ;hi.CreateDesktopIcon =बनाएँ %1 &डेस्कटॉप आइकन @@ -263,7 +263,7 @@ sv.InstallAdditionalComponents =Installerar ytterligare systemkomponenter. Var v tr.InstallAdditionalComponents =Ek sistem bileşenleri kuruluyor. Lütfen bekleyin... vi.InstallAdditionalComponents =Đang cài đặt các phần hệ thống bổ sung. Xin vui lòng chờ... zh_CN.InstallAdditionalComponents =安装其他系统组件。请稍候... -;hy_AM.InstallAdditionalComponents =Համակարգչի լրացուցիչ բաղադրիչների տեղադրում։ Խնդրում ենք սպասել․․․ +hy_AM.InstallAdditionalComponents =Համակարգչի լրացուցիչ բաղադրիչների տեղադրում։ Խնդրում ենք սպասել․․․ ;hr.InstallAdditionalComponents =Instaliranje dodatnih komponenata sustava. Molimo pričekajte... da.InstallAdditionalComponents =Installation af yderligere systemkomponenter. Vent venligst... ;hi.InstallAdditionalComponents =अतिरिक्त सिस्टम तत्वों को इंस्टॉल कर रहा है। कृपया प्रतीक्षा करें... @@ -303,7 +303,7 @@ sv.AdditionalTasks =Uppgifter: tr.AdditionalTasks =Görevler: vi.AdditionalTasks =Nhiệm vụ: zh_CN.AdditionalTasks =任务: -;hy_AM.AdditionalTasks =Առաջադրանքներ +hy_AM.AdditionalTasks =Առաջադրանքներ ;hr.AdditionalTasks =Zadaci: da.AdditionalTasks =Opgaver: ;hi.AdditionalTasks =कार्य: @@ -343,7 +343,7 @@ sv.Uninstall =Avinstallera tr.Uninstall =Kaldır vi.Uninstall =Gỡ cài đặt zh_CN.Uninstall =卸载 -;hy_AM.Uninstall =Ապատեղադրել +hy_AM.Uninstall =Ապատեղադրել ;hr.Uninstall =Deinstaliraj da.Uninstall =Afinstaller ;hi.Uninstall =अनइंस्टॉल @@ -383,7 +383,7 @@ sv.WarningWrongArchitecture =Du försöker installera %1-bit-programversionen ö tr.WarningWrongArchitecture =Yüklenmiş %2-bit uygulama üzerine %1-bit uygulama yüklemeye çalışıyorsunuz. Lütfen ilk olarak önceki sürümü kaldırın veya kurulum için doğru sürümü indirin. vi.WarningWrongArchitecture =Bạn đang cố gắng cài đặt phiên bản ứng dụng %1-bit đè lên phiên bản %2-bit đã được cài đặt. Vui lòng gỡ phiên bản trước hoặc tải phiên bản đúng để cài đặt. zh_CN.WarningWrongArchitecture =您正在尝试在已安装的%2-bit版本上安装%1-bit应用版本。请首先卸载之前版本,或下载正确的安装版本。 -;hy_AM.WarningWrongArchitecture =Դուք պատրաստվում եք տեղադրել հավելվածի %1-բիթանոց տարբերակը՝ տեղադրված %2-բիթանոց տարբերակի փոխարեն։ Խնդրում ենք նախ ապատեղադրել նախորդ տարբերակը կամ բեռնել ճիշտ տարբերակը՝ տեղադրման համար։ +hy_AM.WarningWrongArchitecture =Դուք պատրաստվում եք տեղադրել հավելվածի %1-բիթանոց տարբերակը՝ տեղադրված %2-բիթանոց տարբերակի փոխարեն։ Խնդրում ենք նախ ապատեղադրել նախորդ տարբերակը կամ բեռնել ճիշտ տարբերակը՝ տեղադրման համար։ ;hr.WarningWrongArchitecture =Pokušavate instalirati %1-bitnu verziju aplikacije preko instalirane %2-bitne verzije. Molimo da najprije deinstalirate prethodnu verziju ili preuzmete ispravnu verziju za instalaciju. da.WarningWrongArchitecture =Du prøver at installere %1-bit applikationsversion over den installerede %2-bit version. Venligst afinstaller den tidligere version først eller download den rigtige version for at installere. ;hi.WarningWrongArchitecture =आप इंस्टॉल किए गए %2-बिट संस्करण के ऊपर %1-बिट ऐप्लिकेशन संस्करण को इंस्टॉल करने का प्रयास कर रहे हैं। कृपया पहले पुराने संस्करण को अनइंस्टॉल करें या इंस्टॉल करने के लिए सही संस्करण को डाउनलोड करें। @@ -424,7 +424,7 @@ sv.UpdateAppRunning=Installationsprogrammet har upptäckt att %1 för närvarand tr.UpdateAppRunning=Kurulum %1’in şu anda çalışıyor olduğunu algıladı. %n%nIt otomatik olarak kapatılacak. Devam etmek için Tamam’a veya çıkmak için İptal’e tıklayın. vi.UpdateAppRunning=Mục cài đặt đã phát hiện ra rằng %1 đang chạy.%n%nIt sẽ được đóng tự động. Hãy chọn OK để tiếp tục hay Hủy để thoát. zh_CN.UpdateAppRunning=安装程序检测到%1当前正在运行。%n%n将自动关闭。单击“确定”继续,或“取消”退出。 -;hy_AM.UpdateAppRunning=Կարգավորումը հայտնաբերել է, որ այս պահին աշխատում է %1-ը։ %n%nԱյն ավտոմատ կփակվի։ Խնդրում ենք սեղմել ԼԱՎ՝ շարունակելու համար կամ Չեղարկել՝ դուրս գալու համար։ +hy_AM.UpdateAppRunning=Կարգավորումը հայտնաբերել է, որ այս պահին աշխատում է %1-ը։ %n%nԱյն ավտոմատ կփակվի։ Խնդրում ենք սեղմել ԼԱՎ՝ շարունակելու համար կամ Չեղարկել՝ դուրս գալու համար։ ;hr.UpdateAppRunning=Postavljanje je otkrilo da je %1 trenutno pokrenut.%n%n Zatvorit će se automatski. Kliknite U redu za nastavak ili Odustani za izlaz. da.UpdateAppRunning=Setup har registreret at %1 kører i øjeblikket.%n%nIDet vil blive lukket automatisk. Klik OK for at fortsætte eller Annuler for at afslutte. ;hi.UpdateAppRunning=सेटअप ने पता लगाया है कि %1 वर्तमान में चल रहा है।%n%nयह स्वतः ही बंद हो जाएगा। क्लिक करें ओके या जारी रखें पर, या बाहर निकलने के लिए रद्द करें पर। @@ -464,7 +464,7 @@ sv.WarningClearAppData =Vill du rensa användarinställningar och programmets ca tr.WarningClearAppData =Kullanıcı ayarlarını veya uygulama önbelleğine alınmış verileri silmek istiyor musunuz? vi.WarningClearAppData =Bạn có muốn xóa thiết lập người dùng và dữ liệu được lưu trong bộ nhớ cache của ứng dụng không? zh_CN.WarningClearAppData =您是否要清除用户设置和应用缓存数据? -;hy_AM.WarningClearAppData =Ցանկանու՞մ եք ջնջել օգտագործողի կարգավորումները և հավելվածի պահպանված տվյալները։ +hy_AM.WarningClearAppData =Ցանկանու՞մ եք ջնջել օգտագործողի կարգավորումները և հավելվածի պահպանված տվյալները։ ;hr.WarningClearAppData =Želite li očistiti korisničke postavke i predmemorirane podatke aplikacije? da.WarningClearAppData =Vil du rydde brugerinstillingerne og applikationscachede data? ;hi.WarningClearAppData =क्या आप उपयोगकर्ता सेटिंग और ऐप्लिकेशन कैश डाटा को हटाना चाहते हैं? From 07399974bcdc80a3f2d002a24dc757ab3efc5704 Mon Sep 17 00:00:00 2001 From: Maxim Kadushkin Date: Tue, 5 Jul 2022 09:50:54 +0300 Subject: [PATCH 16/76] fix misspell --- .../update/updates/ONLYOFFICE/changes/7.2/ReleaseNotes.html | 2 +- win-linux/package/windows/update/changes/7.2.0/en.html | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/macos/ONLYOFFICE/update/updates/ONLYOFFICE/changes/7.2/ReleaseNotes.html b/macos/ONLYOFFICE/update/updates/ONLYOFFICE/changes/7.2/ReleaseNotes.html index ff3a110fa..750d7b949 100644 --- a/macos/ONLYOFFICE/update/updates/ONLYOFFICE/changes/7.2/ReleaseNotes.html +++ b/macos/ONLYOFFICE/update/updates/ONLYOFFICE/changes/7.2/ReleaseNotes.html @@ -90,7 +90,7 @@

All Editors

  • New interface language Armenian
  • -
  • Window have no mimimum size now
  • +
  • Window have no minimum size now

Document Editor

    diff --git a/win-linux/package/windows/update/changes/7.2.0/en.html b/win-linux/package/windows/update/changes/7.2.0/en.html index 3b3e6c1c6..8d08fb804 100644 --- a/win-linux/package/windows/update/changes/7.2.0/en.html +++ b/win-linux/package/windows/update/changes/7.2.0/en.html @@ -1,7 +1,7 @@

    New Features

    • New interface language Armenian
    • -
    • Window have no mimimum size now
    • +
    • Window have no minimum size now

    Document Editor

      From 6b71521813a990b68a21b5be18b629246fd27f05 Mon Sep 17 00:00:00 2001 From: Semyon Bezrukov Date: Tue, 5 Jul 2022 11:24:53 +0300 Subject: [PATCH 17/76] Fix tabs (#508) --- win-linux/package/linux/Makefile | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/win-linux/package/linux/Makefile b/win-linux/package/linux/Makefile index 36da7af35..8f17ad7cf 100644 --- a/win-linux/package/linux/Makefile +++ b/win-linux/package/linux/Makefile @@ -334,12 +334,12 @@ $(URPMI): desktopeditor urpmi/$(PACKAGE_NAME).spec package.spec $(SUSE_RPM): desktopeditor suse-rpm/$(PACKAGE_NAME).spec - cd suse-rpm && rpmbuild -bb \ - --define "_topdir $(SUSE_RPM_BUILD_DIR)" \ - --define "_package_arch $(RPM_ARCH)" \ - --target $(RPM_ARCH) \ - $(RPM_PARAMS) \ - package.spec + cd suse-rpm && rpmbuild -bb \ + --define "_topdir $(SUSE_RPM_BUILD_DIR)" \ + --define "_package_arch $(RPM_ARCH)" \ + --target $(RPM_ARCH) \ + $(RPM_PARAMS) \ + package.spec $(TAR): desktopeditor mkdir -p $(TAR_PACKAGE_DIR) From 6ff3588fbdb46f6d446035e4a7e942fd470397d8 Mon Sep 17 00:00:00 2001 From: Maxim Kadushkin Date: Tue, 5 Jul 2022 13:51:47 +0300 Subject: [PATCH 18/76] [win] debug build --- win-linux/package/windows/common.iss | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/win-linux/package/windows/common.iss b/win-linux/package/windows/common.iss index 5c31f0308..8422c2014 100644 --- a/win-linux/package/windows/common.iss +++ b/win-linux/package/windows/common.iss @@ -134,7 +134,7 @@ Name: vi; MessagesFile: compiler:Languages\Vietnamese.islu; LicenseFile: {#sBran Name: vi; MessagesFile: compiler:Languages\Vietnamese.isl; LicenseFile: {#sBrandingFolder}\common\package\license\{#LIC_FILE}.rtf; #endif Name: zh_CN; MessagesFile: compiler:Languages\ChineseTraditional.isl; LicenseFile: {#sBrandingFolder}\common\package\license\{#LIC_FILE}.rtf; -Name: hy_AM; MessagesFile: compiler:Languages\Armenian.islu; LicenseFile: {#sBrandingFolder}\common\package\license\{#LIC_FILE}.rtf; +Name: hy_AM; MessagesFile: compiler:Languages\Armenian.isl; LicenseFile: {#sBrandingFolder}\common\package\license\{#LIC_FILE}.rtf; ;Name: hr; MessagesFile: compiler:Languages\Croatian.isl; LicenseFile: {#sBrandingFolder}\common\package\license\{#LIC_FILE}.rtf; Name: da; MessagesFile: compiler:Languages\Danish.isl; LicenseFile: {#sBrandingFolder}\common\package\license\{#LIC_FILE}.rtf; ;Name: hi; MessagesFile: compiler:Languages\Hindi.islu; LicenseFile: {#sBrandingFolder}\common\package\license\{#LIC_FILE}.rtf; From 3e5b9b3d859d041a56bff715480e7c0272491299 Mon Sep 17 00:00:00 2001 From: Maxim Kadushkin Date: Wed, 6 Jul 2022 14:14:21 +0300 Subject: [PATCH 19/76] [win] debug build --- win-linux/package/windows/common.iss | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/win-linux/package/windows/common.iss b/win-linux/package/windows/common.iss index 8422c2014..581bf17b8 100644 --- a/win-linux/package/windows/common.iss +++ b/win-linux/package/windows/common.iss @@ -130,11 +130,12 @@ Name: sv; MessagesFile: compiler:Languages\Swedish.isl; LicenseFile: {#sBran Name: tr; MessagesFile: compiler:Languages\Turkish.isl; LicenseFile: {#sBrandingFolder}\common\package\license\{#LIC_FILE}.rtf; #if Int(DecodeVer(PREPROCVER,1)) < 6 Name: vi; MessagesFile: compiler:Languages\Vietnamese.islu; LicenseFile: {#sBrandingFolder}\common\package\license\{#LIC_FILE}.rtf; +Name: hy_AM; MessagesFile: compiler:Languages\Armenian.islu; LicenseFile: {#sBrandingFolder}\common\package\license\{#LIC_FILE}.rtf; #else Name: vi; MessagesFile: compiler:Languages\Vietnamese.isl; LicenseFile: {#sBrandingFolder}\common\package\license\{#LIC_FILE}.rtf; +Name: hy_AM; MessagesFile: compiler:Languages\Armenian.isl; LicenseFile: {#sBrandingFolder}\common\package\license\{#LIC_FILE}.rtf; #endif Name: zh_CN; MessagesFile: compiler:Languages\ChineseTraditional.isl; LicenseFile: {#sBrandingFolder}\common\package\license\{#LIC_FILE}.rtf; -Name: hy_AM; MessagesFile: compiler:Languages\Armenian.isl; LicenseFile: {#sBrandingFolder}\common\package\license\{#LIC_FILE}.rtf; ;Name: hr; MessagesFile: compiler:Languages\Croatian.isl; LicenseFile: {#sBrandingFolder}\common\package\license\{#LIC_FILE}.rtf; Name: da; MessagesFile: compiler:Languages\Danish.isl; LicenseFile: {#sBrandingFolder}\common\package\license\{#LIC_FILE}.rtf; ;Name: hi; MessagesFile: compiler:Languages\Hindi.islu; LicenseFile: {#sBrandingFolder}\common\package\license\{#LIC_FILE}.rtf; From d00e676c1fe86132bf9d5546643bffbb7a9a0de5 Mon Sep 17 00:00:00 2001 From: Maxim Kadushkin Date: Thu, 7 Jul 2022 10:55:33 +0300 Subject: [PATCH 20/76] [win-nix] revert method to read package info --- win-linux/src/prop/cmainpanelimpl.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/win-linux/src/prop/cmainpanelimpl.cpp b/win-linux/src/prop/cmainpanelimpl.cpp index a81a4885d..4f75ce448 100644 --- a/win-linux/src/prop/cmainpanelimpl.cpp +++ b/win-linux/src/prop/cmainpanelimpl.cpp @@ -68,7 +68,7 @@ void CMainPanelImpl::refreshAboutVersion() _json_obj["link"] = URL_SITE; _json_obj["changelog"] = "https://github.com/ONLYOFFICE/DesktopEditors/blob/master/CHANGELOG.md"; - QString _package = qgetenv("ASC_PACK_TYPE"); + QString _package = QSettings(qApp->applicationDirPath() + "/converter/package.config", QSettings::IniFormat).value("package").toString(); if ( !_package.isEmpty() ) _json_obj["pkg"] = _package; From 85397117b9ec6995ff0a2114f73061920aea4216 Mon Sep 17 00:00:00 2001 From: Maxim Kadushkin Date: Thu, 7 Jul 2022 16:30:46 +0300 Subject: [PATCH 21/76] [win-nix] debug for external help --- win-linux/defaults.pri | 2 ++ 1 file changed, 2 insertions(+) diff --git a/win-linux/defaults.pri b/win-linux/defaults.pri index fe41a03b1..dbb11c193 100644 --- a/win-linux/defaults.pri +++ b/win-linux/defaults.pri @@ -166,6 +166,8 @@ CMD_IN_HELP_URL = $$join(URL_WEBAPPS_HELP,,\\\",\\\") !isEmpty(CMD_IN_HELP_URL) { DEFINES += URL_WEBAPPS_HELP=$$CMD_IN_HELP_URL message(webapps help url: $$CMD_IN_HELP_URL) +} else { + message(no webapps help url found) } PLATFORM_BUILD=$$CORE_BUILDS_PLATFORM_PREFIX From 07a08381db2cd801dfbb0185082d5b56f3d28439 Mon Sep 17 00:00:00 2001 From: Maria-Sukhova Date: Mon, 11 Jul 2022 13:11:10 +0300 Subject: [PATCH 22/76] edited hu (language name) --- macos/ONLYOFFICE/Code/Controllers/Common/ASCLinguist.m | 2 +- win-linux/src/clangater.cpp | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/macos/ONLYOFFICE/Code/Controllers/Common/ASCLinguist.m b/macos/ONLYOFFICE/Code/Controllers/Common/ASCLinguist.m index 2ca866ae8..750c12b69 100644 --- a/macos/ONLYOFFICE/Code/Controllers/Common/ASCLinguist.m +++ b/macos/ONLYOFFICE/Code/Controllers/Common/ASCLinguist.m @@ -90,7 +90,7 @@ // @"ga-IE": @"Gaeilge", // @"hi-IN": @"हिन्दी", // @"hr-HR": @"Hrvatska", - @"hu-HU": @"Magyar nyelv", + @"hu-HU": @"Magyar", @"hy-AM": @"Հայաստան", @"id-ID": @"Indonesian", @"no-NO": @"Norsk", diff --git a/win-linux/src/clangater.cpp b/win-linux/src/clangater.cpp index 3a277bd43..0816d4eae 100644 --- a/win-linux/src/clangater.cpp +++ b/win-linux/src/clangater.cpp @@ -135,7 +135,7 @@ private: // ,{"ga-IE", "Gaeilge"} // ,{"hi-IN", "हिन्दी"} // ,{"hr-HR", "Hrvatska"} - ,{"hu-HU", "Magyar nyelv"} + ,{"hu-HU", "Magyar"} ,{"hy-AM", "Հայաստան"} ,{"id-ID", "Indonesian"} ,{"no-NO", "Norsk"} From 31964111de6cbc077357297f78c767b2db8b9c5e Mon Sep 17 00:00:00 2001 From: Roman Demidov Date: Tue, 12 Jul 2022 16:09:29 +0300 Subject: [PATCH 23/76] Fix #51346 : Add installation info to About window (RPM and DEB) (#513) * Fix #51346 : Add installation info to About window (RPM and DEB) * Small changes * Small changes * Small changes * Small changes * Small changes * Small changes --- win-linux/package/linux/common/package.config | 1 + win-linux/package/linux/deb/template/package.install.m4 | 1 + win-linux/package/linux/rpm/common.spec | 1 + 3 files changed, 3 insertions(+) create mode 100644 win-linux/package/linux/common/package.config diff --git a/win-linux/package/linux/common/package.config b/win-linux/package/linux/common/package.config new file mode 100644 index 000000000..652a4f586 --- /dev/null +++ b/win-linux/package/linux/common/package.config @@ -0,0 +1 @@ +package = deb diff --git a/win-linux/package/linux/deb/template/package.install.m4 b/win-linux/package/linux/deb/template/package.install.m4 index 3e24b9ab7..d7d21b8f8 100644 --- a/win-linux/package/linux/deb/template/package.install.m4 +++ b/win-linux/package/linux/deb/template/package.install.m4 @@ -1,6 +1,7 @@ ../../common/opt/desktopeditors/* /opt/M4_DESKTOPEDITORS_PREFIX ../../common/usr/bin/M4_DESKTOPEDITORS_EXEC /usr/bin ../../common/usr/share/applications/M4_DESKTOPEDITORS_EXEC.desktop /usr/share/applications +../../common/package.config /opt/M4_DESKTOPEDITORS_PREFIX/converter ifelse(M4_COMPANY_NAME, ONLYOFFICE, ../../common/usr/bin/desktopeditors /usr/bin, diff --git a/win-linux/package/linux/rpm/common.spec b/win-linux/package/linux/rpm/common.spec index cf2bb09ab..df5c13dca 100644 --- a/win-linux/package/linux/rpm/common.spec +++ b/win-linux/package/linux/rpm/common.spec @@ -31,6 +31,7 @@ mkdir -p $BIN_DIR $DATA_DIR/applications $DESKTOPEDITORS_PREFIX cp -r $COMMON/opt/desktopeditors/* $DESKTOPEDITORS_PREFIX cp -t $BIN_DIR $COMMON/usr/bin/%{_desktopeditors_exec} cp -t $DATA_DIR/applications $COMMON/usr/share/applications/%{_desktopeditors_exec}.desktop +echo "package = rpm" > $DESKTOPEDITORS_PREFIX/converter/package.config %if "%{_company_name}" == "ONLYOFFICE" ln -srf $BIN_DIR/%{_desktopeditors_exec} $BIN_DIR/desktopeditors From 4f03fddc12513c5c7128b13ebbe7cf08c43169f8 Mon Sep 17 00:00:00 2001 From: Semyon Bezrukov Date: Thu, 14 Jul 2022 11:50:17 +0300 Subject: [PATCH 24/76] [macos] Bump version to 7.2(534) (#520) --- macos/ONLYOFFICE/Resources/ONLYOFFICE-arm/Info.plist | 2 +- macos/ONLYOFFICE/Resources/ONLYOFFICE-v8/Info.plist | 2 +- macos/ONLYOFFICE/Resources/ONLYOFFICE-x86_64/Info.plist | 2 +- 3 files changed, 3 insertions(+), 3 deletions(-) diff --git a/macos/ONLYOFFICE/Resources/ONLYOFFICE-arm/Info.plist b/macos/ONLYOFFICE/Resources/ONLYOFFICE-arm/Info.plist index fcaf6f8d1..e27604c70 100644 --- a/macos/ONLYOFFICE/Resources/ONLYOFFICE-arm/Info.plist +++ b/macos/ONLYOFFICE/Resources/ONLYOFFICE-arm/Info.plist @@ -533,7 +533,7 @@ CFBundleVersion - 533 + 534 LSApplicationCategoryType public.app-category.productivity LSMinimumSystemVersion diff --git a/macos/ONLYOFFICE/Resources/ONLYOFFICE-v8/Info.plist b/macos/ONLYOFFICE/Resources/ONLYOFFICE-v8/Info.plist index fe7aabf7c..2a11eeb77 100644 --- a/macos/ONLYOFFICE/Resources/ONLYOFFICE-v8/Info.plist +++ b/macos/ONLYOFFICE/Resources/ONLYOFFICE-v8/Info.plist @@ -537,7 +537,7 @@ CFBundleVersion - 533 + 534 LSApplicationCategoryType public.app-category.productivity LSMinimumSystemVersion diff --git a/macos/ONLYOFFICE/Resources/ONLYOFFICE-x86_64/Info.plist b/macos/ONLYOFFICE/Resources/ONLYOFFICE-x86_64/Info.plist index 4ec425f78..32ff4879c 100644 --- a/macos/ONLYOFFICE/Resources/ONLYOFFICE-x86_64/Info.plist +++ b/macos/ONLYOFFICE/Resources/ONLYOFFICE-x86_64/Info.plist @@ -533,7 +533,7 @@ CFBundleVersion - 533 + 534 LSApplicationCategoryType public.app-category.productivity LSMinimumSystemVersion From 300a49e100bb26de44811dcad95bd53dc7edff1b Mon Sep 17 00:00:00 2001 From: Alexander Yuzhin Date: Fri, 15 Jul 2022 14:54:23 +0300 Subject: [PATCH 25/76] [macos] Fix symlinks archive for delta update. --- macos/fastlane/Fastfile | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/macos/fastlane/Fastfile b/macos/fastlane/Fastfile index 4625fc755..288a1ad8d 100644 --- a/macos/fastlane/Fastfile +++ b/macos/fastlane/Fastfile @@ -61,7 +61,7 @@ platform :mac do ) desc 'Prepare zip for delta update' - sh("ditto -c -k --rsrc --keepParent #{ENV['PWD']}/#{app} #{ENV['PWD']}/#{build}/#{scheme}-#{version_number}.zip") + sh("ditto -c -k --sequesterRsrc --keepParent #{ENV['PWD']}/#{app} #{ENV['PWD']}/#{build}/#{scheme}-#{version_number}.zip") desc 'Create DMG image' sh("npm install appdmg") From e1c6f8885c1dde23f8f365bbc96806ee109fbd6b Mon Sep 17 00:00:00 2001 From: Alexander Yuzhin Date: Fri, 15 Jul 2022 15:07:19 +0300 Subject: [PATCH 26/76] [macos] Fix year in copyrights --- macos/Localization/de.xliff | 12 ++++++------ macos/Localization/en.xliff | 12 ++++++------ macos/Localization/es.xliff | 12 ++++++------ macos/Localization/fr.xliff | 12 ++++++------ macos/Localization/it.xliff | 12 ++++++------ macos/Localization/pl.xliff | 12 ++++++------ macos/Localization/pt-BR.xliff | 12 ++++++------ macos/Localization/ru.xliff | 12 ++++++------ macos/Localization/vi.xliff | 12 ++++++------ macos/Localization/zh-Hans-CN.xliff | 12 ++++++------ macos/ONLYOFFICE/Resources/ONLYOFFICE-arm/Info.plist | 2 +- .../ONLYOFFICE-arm/de.lproj/InfoPlist.strings | 2 +- .../ONLYOFFICE-arm/es.lproj/InfoPlist.strings | 2 +- .../ONLYOFFICE-arm/fr.lproj/InfoPlist.strings | 2 +- .../ONLYOFFICE-arm/it.lproj/InfoPlist.strings | 2 +- .../ONLYOFFICE-arm/pl.lproj/InfoPlist.strings | 2 +- .../ONLYOFFICE-arm/pt-BR.lproj/InfoPlist.strings | 2 +- .../ONLYOFFICE-arm/ru.lproj/InfoPlist.strings | 2 +- .../ONLYOFFICE-arm/vi-VN.lproj/InfoPlist.strings | 2 +- .../zh-Hans-CN.lproj/InfoPlist.strings | 2 +- macos/ONLYOFFICE/Resources/ONLYOFFICE-v8/Info.plist | 2 +- .../ONLYOFFICE-v8/de.lproj/InfoPlist.strings | 2 +- .../ONLYOFFICE-v8/es.lproj/InfoPlist.strings | 2 +- .../ONLYOFFICE-v8/fr.lproj/InfoPlist.strings | 2 +- .../ONLYOFFICE-v8/it.lproj/InfoPlist.strings | 2 +- .../ONLYOFFICE-v8/pl.lproj/InfoPlist.strings | 2 +- .../ONLYOFFICE-v8/pt-BR.lproj/InfoPlist.strings | 2 +- .../ONLYOFFICE-v8/ru.lproj/InfoPlist.strings | 2 +- .../ONLYOFFICE-v8/vi-VN.lproj/InfoPlist.strings | 2 +- .../ONLYOFFICE-v8/zh-Hans-CN.lproj/InfoPlist.strings | 2 +- .../Resources/ONLYOFFICE-x86_64/Info.plist | 2 +- .../ONLYOFFICE-x86_64/de.lproj/InfoPlist.strings | 2 +- .../ONLYOFFICE-x86_64/es.lproj/InfoPlist.strings | 2 +- .../ONLYOFFICE-x86_64/fr.lproj/InfoPlist.strings | 2 +- .../ONLYOFFICE-x86_64/it.lproj/InfoPlist.strings | 2 +- .../ONLYOFFICE-x86_64/pl.lproj/InfoPlist.strings | 2 +- .../ONLYOFFICE-x86_64/pt-BR.lproj/InfoPlist.strings | 2 +- .../ONLYOFFICE-x86_64/ru.lproj/InfoPlist.strings | 2 +- .../ONLYOFFICE-x86_64/vi-VN.lproj/InfoPlist.strings | 2 +- .../zh-Hans-CN.lproj/InfoPlist.strings | 2 +- 40 files changed, 90 insertions(+), 90 deletions(-) diff --git a/macos/Localization/de.xliff b/macos/Localization/de.xliff index e94dbd2fb..d7f665d5c 100644 --- a/macos/Localization/de.xliff +++ b/macos/Localization/de.xliff @@ -1381,8 +1381,8 @@ Die Testphase endet in% d Tagen, danach können Sie keine Dokumente mehr erstell Bundle name - Copyright © 2021 Ascensio System SIA. All rights reserved. - Copyright © 2021 Ascensio System SIA. Alle Rechte vorbehalten. + Copyright © 2022 Ascensio System SIA. All rights reserved. + Copyright © 2022 Ascensio System SIA. Alle Rechte vorbehalten. Copyright (human-readable) @@ -1398,8 +1398,8 @@ Die Testphase endet in% d Tagen, danach können Sie keine Dokumente mehr erstell Bundle name - Copyright © 2021 Ascensio System SIA. All rights reserved. - Copyright © 2021 Ascensio System SIA. Alle Rechte vorbehalten. + Copyright © 2022 Ascensio System SIA. All rights reserved. + Copyright © 2022 Ascensio System SIA. Alle Rechte vorbehalten. Copyright (human-readable) @@ -1415,8 +1415,8 @@ Die Testphase endet in% d Tagen, danach können Sie keine Dokumente mehr erstell Bundle name - Copyright © 2021 Ascensio System SIA. All rights reserved. - Copyright © 2021 Ascensio System SIA. Alle Rechte vorbehalten. + Copyright © 2022 Ascensio System SIA. All rights reserved. + Copyright © 2022 Ascensio System SIA. Alle Rechte vorbehalten. Copyright (human-readable) diff --git a/macos/Localization/en.xliff b/macos/Localization/en.xliff index d2413ee7b..896c4bf86 100644 --- a/macos/Localization/en.xliff +++ b/macos/Localization/en.xliff @@ -1381,8 +1381,8 @@ The trial period will end in %d days, after that you will not be able to create Bundle name - Copyright © 2021 Ascensio System SIA. All rights reserved. - Copyright © 2021 Ascensio System SIA. All rights reserved. + Copyright © 2022 Ascensio System SIA. All rights reserved. + Copyright © 2022 Ascensio System SIA. All rights reserved. Copyright (human-readable) @@ -1398,8 +1398,8 @@ The trial period will end in %d days, after that you will not be able to create Bundle name - Copyright © 2021 Ascensio System SIA. All rights reserved. - Copyright © 2021 Ascensio System SIA. All rights reserved. + Copyright © 2022 Ascensio System SIA. All rights reserved. + Copyright © 2022 Ascensio System SIA. All rights reserved. Copyright (human-readable) @@ -1415,8 +1415,8 @@ The trial period will end in %d days, after that you will not be able to create Bundle name - Copyright © 2021 Ascensio System SIA. All rights reserved. - Copyright © 2021 Ascensio System SIA. All rights reserved. + Copyright © 2022 Ascensio System SIA. All rights reserved. + Copyright © 2022 Ascensio System SIA. All rights reserved. Copyright (human-readable) diff --git a/macos/Localization/es.xliff b/macos/Localization/es.xliff index 167fdc38f..43f6809ca 100644 --- a/macos/Localization/es.xliff +++ b/macos/Localization/es.xliff @@ -1381,8 +1381,8 @@ El período de prueba terminará en %d días, después de lo cual no podrá crea Bundle name - Copyright © 2021 Ascensio System SIA. All rights reserved. - Copyright © 2021 Ascensio System SIA. Todos los derechos reservados. + Copyright © 2022 Ascensio System SIA. All rights reserved. + Copyright © 2022 Ascensio System SIA. Todos los derechos reservados. Copyright (human-readable) @@ -1398,8 +1398,8 @@ El período de prueba terminará en %d días, después de lo cual no podrá crea Bundle name - Copyright © 2021 Ascensio System SIA. All rights reserved. - Copyright © 2021 Ascensio System SIA. Todos los derechos reservados. + Copyright © 2022 Ascensio System SIA. All rights reserved. + Copyright © 2022 Ascensio System SIA. Todos los derechos reservados. Copyright (human-readable) @@ -1415,8 +1415,8 @@ El período de prueba terminará en %d días, después de lo cual no podrá crea Bundle name - Copyright © 2021 Ascensio System SIA. All rights reserved. - Copyright © 2021 Ascensio System SIA. Todos los derechos reservados. + Copyright © 2022 Ascensio System SIA. All rights reserved. + Copyright © 2022 Ascensio System SIA. Todos los derechos reservados. Copyright (human-readable) diff --git a/macos/Localization/fr.xliff b/macos/Localization/fr.xliff index eb267098b..a1418c6e9 100644 --- a/macos/Localization/fr.xliff +++ b/macos/Localization/fr.xliff @@ -1381,8 +1381,8 @@ La période d'essai se termine dans %d jours, après quoi vous ne serez plus en Bundle name - Copyright © 2021 Ascensio System SIA. All rights reserved. - Copyright © 2021 Ascensio System SIA. Tous droits réservés. + Copyright © 2022 Ascensio System SIA. All rights reserved. + Copyright © 2022 Ascensio System SIA. Tous droits réservés. Copyright (human-readable) @@ -1398,8 +1398,8 @@ La période d'essai se termine dans %d jours, après quoi vous ne serez plus en Bundle name - Copyright © 2021 Ascensio System SIA. All rights reserved. - Copyright © 2021 Ascensio System SIA. Tous droits réservés. + Copyright © 2022 Ascensio System SIA. All rights reserved. + Copyright © 2022 Ascensio System SIA. Tous droits réservés. Copyright (human-readable) @@ -1415,8 +1415,8 @@ La période d'essai se termine dans %d jours, après quoi vous ne serez plus en Bundle name - Copyright © 2021 Ascensio System SIA. All rights reserved. - Copyright © 2021 Ascensio System SIA. Tous droits réservés. + Copyright © 2022 Ascensio System SIA. All rights reserved. + Copyright © 2022 Ascensio System SIA. Tous droits réservés. Copyright (human-readable) diff --git a/macos/Localization/it.xliff b/macos/Localization/it.xliff index b873a5b87..b5c47dc50 100644 --- a/macos/Localization/it.xliff +++ b/macos/Localization/it.xliff @@ -1381,8 +1381,8 @@ Il periodo di prova terminerà tra %d giorni, dopodiché non sarai in grado di c Bundle name - Copyright © 2021 Ascensio System SIA. All rights reserved. - Copyright © 2021 Ascensio System SIA. Tutti i diritti riservati. + Copyright © 2022 Ascensio System SIA. All rights reserved. + Copyright © 2022 Ascensio System SIA. Tutti i diritti riservati. Copyright (human-readable) @@ -1398,8 +1398,8 @@ Il periodo di prova terminerà tra %d giorni, dopodiché non sarai in grado di c Bundle name - Copyright © 2021 Ascensio System SIA. All rights reserved. - Copyright © 2021 Ascensio System SIA. Tutti i diritti riservati. + Copyright © 2022 Ascensio System SIA. All rights reserved. + Copyright © 2022 Ascensio System SIA. Tutti i diritti riservati. Copyright (human-readable) @@ -1415,8 +1415,8 @@ Il periodo di prova terminerà tra %d giorni, dopodiché non sarai in grado di c Bundle name - Copyright © 2021 Ascensio System SIA. All rights reserved. - Copyright © 2021 Ascensio System SIA. Tutti i diritti riservati. + Copyright © 2022 Ascensio System SIA. All rights reserved. + Copyright © 2022 Ascensio System SIA. Tutti i diritti riservati. Copyright (human-readable) diff --git a/macos/Localization/pl.xliff b/macos/Localization/pl.xliff index f2ba1f2af..bd907b2ae 100644 --- a/macos/Localization/pl.xliff +++ b/macos/Localization/pl.xliff @@ -1415,8 +1415,8 @@ Okres próbny zakończy się za %d dzień, po tym czasie nie będziesz już w st Bundle name - Copyright © 2021 Ascensio System SIA. All rights reserved. - Copyright © 2021 Ascensio System SIA. Wszelkie prawa zastrzeżone. + Copyright © 2022 Ascensio System SIA. All rights reserved. + Copyright © 2022 Ascensio System SIA. Wszelkie prawa zastrzeżone. Copyright (human-readable) @@ -1432,8 +1432,8 @@ Okres próbny zakończy się za %d dzień, po tym czasie nie będziesz już w st Bundle name - Copyright © 2021 Ascensio System SIA. All rights reserved. - Copyright © 2021 Ascensio System SIA. Wszelkie prawa zastrzeżone. + Copyright © 2022 Ascensio System SIA. All rights reserved. + Copyright © 2022 Ascensio System SIA. Wszelkie prawa zastrzeżone. Copyright (human-readable) @@ -1449,8 +1449,8 @@ Okres próbny zakończy się za %d dzień, po tym czasie nie będziesz już w st Bundle name - Copyright © 2021 Ascensio System SIA. All rights reserved. - Copyright © 2021 Ascensio System SIA. Wszelkie prawa zastrzeżone. + Copyright © 2022 Ascensio System SIA. All rights reserved. + Copyright © 2022 Ascensio System SIA. Wszelkie prawa zastrzeżone. Copyright (human-readable) diff --git a/macos/Localization/pt-BR.xliff b/macos/Localization/pt-BR.xliff index 9daf9bf06..1c3fe8138 100644 --- a/macos/Localization/pt-BR.xliff +++ b/macos/Localization/pt-BR.xliff @@ -1380,8 +1380,8 @@ O período de avaliação terminará em %d dias, após o qual você não poderá Bundle name - Copyright © 2021 Ascensio System SIA. All rights reserved. - Copyright © 2021 Ascensio System SIA. Todos os direitos reservados. + Copyright © 2022 Ascensio System SIA. All rights reserved. + Copyright © 2022 Ascensio System SIA. Todos os direitos reservados. Copyright (human-readable) @@ -1397,8 +1397,8 @@ O período de avaliação terminará em %d dias, após o qual você não poderá Bundle name - Copyright © 2021 Ascensio System SIA. All rights reserved. - Copyright © 2021 Ascensio System SIA. Todos os direitos reservados. + Copyright © 2022 Ascensio System SIA. All rights reserved. + Copyright © 2022 Ascensio System SIA. Todos os direitos reservados. Copyright (human-readable) @@ -1414,8 +1414,8 @@ O período de avaliação terminará em %d dias, após o qual você não poderá Bundle name - Copyright © 2021 Ascensio System SIA. All rights reserved. - Copyright © 2021 Ascensio System SIA. Todos os direitos reservados. + Copyright © 2022 Ascensio System SIA. All rights reserved. + Copyright © 2022 Ascensio System SIA. Todos os direitos reservados. Copyright (human-readable) diff --git a/macos/Localization/ru.xliff b/macos/Localization/ru.xliff index 671f1390b..9e960cf56 100644 --- a/macos/Localization/ru.xliff +++ b/macos/Localization/ru.xliff @@ -1415,8 +1415,8 @@ The trial period will end in %d days, after that you will not be able to create Bundle name - Copyright © 2021 Ascensio System SIA. All rights reserved. - © 2021 Ascensio System SIA. Все права защищены. + Copyright © 2022 Ascensio System SIA. All rights reserved. + © 2022 Ascensio System SIA. Все права защищены. Copyright (human-readable) @@ -1432,8 +1432,8 @@ The trial period will end in %d days, after that you will not be able to create Bundle name - Copyright © 2021 Ascensio System SIA. All rights reserved. - © 2021 Ascensio System SIA. Все права защищены. + Copyright © 2022 Ascensio System SIA. All rights reserved. + © 2022 Ascensio System SIA. Все права защищены. Copyright (human-readable) @@ -1449,8 +1449,8 @@ The trial period will end in %d days, after that you will not be able to create Bundle name - Copyright © 2021 Ascensio System SIA. All rights reserved. - © 2021 Ascensio System SIA. Все права защищены. + Copyright © 2022 Ascensio System SIA. All rights reserved. + © 2022 Ascensio System SIA. Все права защищены. Copyright (human-readable) diff --git a/macos/Localization/vi.xliff b/macos/Localization/vi.xliff index fc0346d8d..75e0ad567 100644 --- a/macos/Localization/vi.xliff +++ b/macos/Localization/vi.xliff @@ -1285,8 +1285,8 @@ The trial period will end in %d days, after that you will not be able to create Bundle name - Copyright © 2021 Ascensio System SIA. All rights reserved. - Bản quyền © 2021 Ascensio System SIA. Đã đăng ký Bản quyền. + Copyright © 2022 Ascensio System SIA. All rights reserved. + Bản quyền © 2022 Ascensio System SIA. Đã đăng ký Bản quyền. Copyright (human-readable) @@ -1302,8 +1302,8 @@ The trial period will end in %d days, after that you will not be able to create Bundle name - Copyright © 2021 Ascensio System SIA. All rights reserved. - Bản quyền © 2021 Ascensio System SIA. Đã đăng ký Bản quyền. + Copyright © 2022 Ascensio System SIA. All rights reserved. + Bản quyền © 2022 Ascensio System SIA. Đã đăng ký Bản quyền. Copyright (human-readable) @@ -1319,8 +1319,8 @@ The trial period will end in %d days, after that you will not be able to create Bundle name - Copyright © 2021 Ascensio System SIA. All rights reserved. - Bản quyền © 2021 Ascensio System SIA. Đã đăng ký Bản quyền. + Copyright © 2022 Ascensio System SIA. All rights reserved. + Bản quyền © 2022 Ascensio System SIA. Đã đăng ký Bản quyền. Copyright (human-readable) diff --git a/macos/Localization/zh-Hans-CN.xliff b/macos/Localization/zh-Hans-CN.xliff index 47e50d7e5..c3d37c8e9 100644 --- a/macos/Localization/zh-Hans-CN.xliff +++ b/macos/Localization/zh-Hans-CN.xliff @@ -1364,8 +1364,8 @@ The trial period will end in %d days, after that you will not be able to create Bundle name - Copyright © 2021 Ascensio System SIA. All rights reserved. - 版权所有©2021 Ascensio System SIA。保留所有权利。 + Copyright © 2022 Ascensio System SIA. All rights reserved. + 版权所有©2022 Ascensio System SIA。保留所有权利。 Copyright (human-readable) @@ -1381,8 +1381,8 @@ The trial period will end in %d days, after that you will not be able to create Bundle name - Copyright © 2021 Ascensio System SIA. All rights reserved. - 版权所有©2021 Ascensio System SIA。保留所有权利。 + Copyright © 2022 Ascensio System SIA. All rights reserved. + 版权所有©2022 Ascensio System SIA。保留所有权利。 Copyright (human-readable) @@ -1398,8 +1398,8 @@ The trial period will end in %d days, after that you will not be able to create Bundle name - Copyright © 2021 Ascensio System SIA. All rights reserved. - 版权所有©2021 Ascensio System SIA。保留所有权利。 + Copyright © 2022 Ascensio System SIA. All rights reserved. + 版权所有©2022 Ascensio System SIA。保留所有权利。 Copyright (human-readable) diff --git a/macos/ONLYOFFICE/Resources/ONLYOFFICE-arm/Info.plist b/macos/ONLYOFFICE/Resources/ONLYOFFICE-arm/Info.plist index e27604c70..23ee7a2f9 100644 --- a/macos/ONLYOFFICE/Resources/ONLYOFFICE-arm/Info.plist +++ b/macos/ONLYOFFICE/Resources/ONLYOFFICE-arm/Info.plist @@ -550,7 +550,7 @@ NSCameraUsageDescription Once ONLYOFFICE Desktop Editors has permission, document tabs will be able to ask you for access. NSHumanReadableCopyright - Copyright © 2021 Ascensio System SIA. All rights reserved. + Copyright © 2022 Ascensio System SIA. All rights reserved. NSMainStoryboardFile Main NSMicrophoneUsageDescription diff --git a/macos/ONLYOFFICE/Resources/ONLYOFFICE-arm/de.lproj/InfoPlist.strings b/macos/ONLYOFFICE/Resources/ONLYOFFICE-arm/de.lproj/InfoPlist.strings index e93068466..d3d3e7dc0 100644 --- a/macos/ONLYOFFICE/Resources/ONLYOFFICE-arm/de.lproj/InfoPlist.strings +++ b/macos/ONLYOFFICE/Resources/ONLYOFFICE-arm/de.lproj/InfoPlist.strings @@ -2,5 +2,5 @@ "CFBundleName" = "ONLYOFFICE"; /* Copyright (human-readable) */ -"NSHumanReadableCopyright" = "Copyright © 2021 Ascensio System SIA. Alle Rechte vorbehalten."; +"NSHumanReadableCopyright" = "Copyright © 2022 Ascensio System SIA. Alle Rechte vorbehalten."; diff --git a/macos/ONLYOFFICE/Resources/ONLYOFFICE-arm/es.lproj/InfoPlist.strings b/macos/ONLYOFFICE/Resources/ONLYOFFICE-arm/es.lproj/InfoPlist.strings index ec68bcb7e..46f4dc8c4 100644 --- a/macos/ONLYOFFICE/Resources/ONLYOFFICE-arm/es.lproj/InfoPlist.strings +++ b/macos/ONLYOFFICE/Resources/ONLYOFFICE-arm/es.lproj/InfoPlist.strings @@ -2,5 +2,5 @@ "CFBundleName" = "ONLYOFFICE"; /* Copyright (human-readable) */ -"NSHumanReadableCopyright" = "Copyright © 2021 Ascensio System SIA. Todos los derechos reservados."; +"NSHumanReadableCopyright" = "Copyright © 2022 Ascensio System SIA. Todos los derechos reservados."; diff --git a/macos/ONLYOFFICE/Resources/ONLYOFFICE-arm/fr.lproj/InfoPlist.strings b/macos/ONLYOFFICE/Resources/ONLYOFFICE-arm/fr.lproj/InfoPlist.strings index bb2eda030..34290d56c 100644 --- a/macos/ONLYOFFICE/Resources/ONLYOFFICE-arm/fr.lproj/InfoPlist.strings +++ b/macos/ONLYOFFICE/Resources/ONLYOFFICE-arm/fr.lproj/InfoPlist.strings @@ -2,5 +2,5 @@ "CFBundleName" = "ONLYOFFICE"; /* Copyright (human-readable) */ -"NSHumanReadableCopyright" = "Copyright © 2021 Ascensio System SIA. Tous droits réservés."; +"NSHumanReadableCopyright" = "Copyright © 2022 Ascensio System SIA. Tous droits réservés."; diff --git a/macos/ONLYOFFICE/Resources/ONLYOFFICE-arm/it.lproj/InfoPlist.strings b/macos/ONLYOFFICE/Resources/ONLYOFFICE-arm/it.lproj/InfoPlist.strings index ace673e59..badaf4a99 100644 --- a/macos/ONLYOFFICE/Resources/ONLYOFFICE-arm/it.lproj/InfoPlist.strings +++ b/macos/ONLYOFFICE/Resources/ONLYOFFICE-arm/it.lproj/InfoPlist.strings @@ -2,5 +2,5 @@ "CFBundleName" = "ONLYOFFICE"; /* Copyright (human-readable) */ -"NSHumanReadableCopyright" = "Copyright © 2021 Ascensio System SIA. Tutti i diritti riservati."; +"NSHumanReadableCopyright" = "Copyright © 2022 Ascensio System SIA. Tutti i diritti riservati."; diff --git a/macos/ONLYOFFICE/Resources/ONLYOFFICE-arm/pl.lproj/InfoPlist.strings b/macos/ONLYOFFICE/Resources/ONLYOFFICE-arm/pl.lproj/InfoPlist.strings index f5a223d25..fe28edecb 100644 --- a/macos/ONLYOFFICE/Resources/ONLYOFFICE-arm/pl.lproj/InfoPlist.strings +++ b/macos/ONLYOFFICE/Resources/ONLYOFFICE-arm/pl.lproj/InfoPlist.strings @@ -2,5 +2,5 @@ "CFBundleName" = "ONLYOFFICE"; /* Copyright (human-readable) */ -"NSHumanReadableCopyright" = "Copyright © 2021 Ascensio System SIA. Wszelkie prawa zastrzeżone."; +"NSHumanReadableCopyright" = "Copyright © 2022 Ascensio System SIA. Wszelkie prawa zastrzeżone."; diff --git a/macos/ONLYOFFICE/Resources/ONLYOFFICE-arm/pt-BR.lproj/InfoPlist.strings b/macos/ONLYOFFICE/Resources/ONLYOFFICE-arm/pt-BR.lproj/InfoPlist.strings index 070d6a690..7212b20ec 100644 --- a/macos/ONLYOFFICE/Resources/ONLYOFFICE-arm/pt-BR.lproj/InfoPlist.strings +++ b/macos/ONLYOFFICE/Resources/ONLYOFFICE-arm/pt-BR.lproj/InfoPlist.strings @@ -2,5 +2,5 @@ "CFBundleName" = "ONLYOFFICE"; /* Copyright (human-readable) */ -"NSHumanReadableCopyright" = "Copyright © 2021 Ascensio System SIA. Todos os direitos reservados."; +"NSHumanReadableCopyright" = "Copyright © 2022 Ascensio System SIA. Todos os direitos reservados."; diff --git a/macos/ONLYOFFICE/Resources/ONLYOFFICE-arm/ru.lproj/InfoPlist.strings b/macos/ONLYOFFICE/Resources/ONLYOFFICE-arm/ru.lproj/InfoPlist.strings index 030c74881..0573c4539 100644 --- a/macos/ONLYOFFICE/Resources/ONLYOFFICE-arm/ru.lproj/InfoPlist.strings +++ b/macos/ONLYOFFICE/Resources/ONLYOFFICE-arm/ru.lproj/InfoPlist.strings @@ -2,5 +2,5 @@ "CFBundleName" = "ONLYOFFICE"; /* Copyright (human-readable) */ -"NSHumanReadableCopyright" = "© 2021 Ascensio System SIA. Все права защищены."; +"NSHumanReadableCopyright" = "© 2022 Ascensio System SIA. Все права защищены."; diff --git a/macos/ONLYOFFICE/Resources/ONLYOFFICE-arm/vi-VN.lproj/InfoPlist.strings b/macos/ONLYOFFICE/Resources/ONLYOFFICE-arm/vi-VN.lproj/InfoPlist.strings index 1664af210..5e5189693 100644 --- a/macos/ONLYOFFICE/Resources/ONLYOFFICE-arm/vi-VN.lproj/InfoPlist.strings +++ b/macos/ONLYOFFICE/Resources/ONLYOFFICE-arm/vi-VN.lproj/InfoPlist.strings @@ -2,5 +2,5 @@ "CFBundleName" = "ONLYOFFICE"; /* Copyright (human-readable) */ -"NSHumanReadableCopyright" = "Bản quyền © 2021 Ascensio System SIA. Đã đăng ký Bản quyền."; +"NSHumanReadableCopyright" = "Bản quyền © 2022 Ascensio System SIA. Đã đăng ký Bản quyền."; diff --git a/macos/ONLYOFFICE/Resources/ONLYOFFICE-arm/zh-Hans-CN.lproj/InfoPlist.strings b/macos/ONLYOFFICE/Resources/ONLYOFFICE-arm/zh-Hans-CN.lproj/InfoPlist.strings index cfe872c1a..16161cd08 100644 --- a/macos/ONLYOFFICE/Resources/ONLYOFFICE-arm/zh-Hans-CN.lproj/InfoPlist.strings +++ b/macos/ONLYOFFICE/Resources/ONLYOFFICE-arm/zh-Hans-CN.lproj/InfoPlist.strings @@ -2,5 +2,5 @@ "CFBundleName" = "ONLYOFFICE"; /* Copyright (human-readable) */ -"NSHumanReadableCopyright" = "版权所有©2021 Ascensio System SIA。保留所有权利。"; +"NSHumanReadableCopyright" = "版权所有©2022 Ascensio System SIA。保留所有权利。"; diff --git a/macos/ONLYOFFICE/Resources/ONLYOFFICE-v8/Info.plist b/macos/ONLYOFFICE/Resources/ONLYOFFICE-v8/Info.plist index 2a11eeb77..b11f09068 100644 --- a/macos/ONLYOFFICE/Resources/ONLYOFFICE-v8/Info.plist +++ b/macos/ONLYOFFICE/Resources/ONLYOFFICE-v8/Info.plist @@ -554,7 +554,7 @@ NSCameraUsageDescription Once ONLYOFFICE Desktop Editors has permission, document tabs will be able to ask you for access. NSHumanReadableCopyright - Copyright © 2021 Ascensio System SIA. All rights reserved. + Copyright © 2022 Ascensio System SIA. All rights reserved. NSMainStoryboardFile Main NSMicrophoneUsageDescription diff --git a/macos/ONLYOFFICE/Resources/ONLYOFFICE-v8/de.lproj/InfoPlist.strings b/macos/ONLYOFFICE/Resources/ONLYOFFICE-v8/de.lproj/InfoPlist.strings index e93068466..d3d3e7dc0 100644 --- a/macos/ONLYOFFICE/Resources/ONLYOFFICE-v8/de.lproj/InfoPlist.strings +++ b/macos/ONLYOFFICE/Resources/ONLYOFFICE-v8/de.lproj/InfoPlist.strings @@ -2,5 +2,5 @@ "CFBundleName" = "ONLYOFFICE"; /* Copyright (human-readable) */ -"NSHumanReadableCopyright" = "Copyright © 2021 Ascensio System SIA. Alle Rechte vorbehalten."; +"NSHumanReadableCopyright" = "Copyright © 2022 Ascensio System SIA. Alle Rechte vorbehalten."; diff --git a/macos/ONLYOFFICE/Resources/ONLYOFFICE-v8/es.lproj/InfoPlist.strings b/macos/ONLYOFFICE/Resources/ONLYOFFICE-v8/es.lproj/InfoPlist.strings index ec68bcb7e..46f4dc8c4 100644 --- a/macos/ONLYOFFICE/Resources/ONLYOFFICE-v8/es.lproj/InfoPlist.strings +++ b/macos/ONLYOFFICE/Resources/ONLYOFFICE-v8/es.lproj/InfoPlist.strings @@ -2,5 +2,5 @@ "CFBundleName" = "ONLYOFFICE"; /* Copyright (human-readable) */ -"NSHumanReadableCopyright" = "Copyright © 2021 Ascensio System SIA. Todos los derechos reservados."; +"NSHumanReadableCopyright" = "Copyright © 2022 Ascensio System SIA. Todos los derechos reservados."; diff --git a/macos/ONLYOFFICE/Resources/ONLYOFFICE-v8/fr.lproj/InfoPlist.strings b/macos/ONLYOFFICE/Resources/ONLYOFFICE-v8/fr.lproj/InfoPlist.strings index bb2eda030..34290d56c 100644 --- a/macos/ONLYOFFICE/Resources/ONLYOFFICE-v8/fr.lproj/InfoPlist.strings +++ b/macos/ONLYOFFICE/Resources/ONLYOFFICE-v8/fr.lproj/InfoPlist.strings @@ -2,5 +2,5 @@ "CFBundleName" = "ONLYOFFICE"; /* Copyright (human-readable) */ -"NSHumanReadableCopyright" = "Copyright © 2021 Ascensio System SIA. Tous droits réservés."; +"NSHumanReadableCopyright" = "Copyright © 2022 Ascensio System SIA. Tous droits réservés."; diff --git a/macos/ONLYOFFICE/Resources/ONLYOFFICE-v8/it.lproj/InfoPlist.strings b/macos/ONLYOFFICE/Resources/ONLYOFFICE-v8/it.lproj/InfoPlist.strings index ace673e59..badaf4a99 100644 --- a/macos/ONLYOFFICE/Resources/ONLYOFFICE-v8/it.lproj/InfoPlist.strings +++ b/macos/ONLYOFFICE/Resources/ONLYOFFICE-v8/it.lproj/InfoPlist.strings @@ -2,5 +2,5 @@ "CFBundleName" = "ONLYOFFICE"; /* Copyright (human-readable) */ -"NSHumanReadableCopyright" = "Copyright © 2021 Ascensio System SIA. Tutti i diritti riservati."; +"NSHumanReadableCopyright" = "Copyright © 2022 Ascensio System SIA. Tutti i diritti riservati."; diff --git a/macos/ONLYOFFICE/Resources/ONLYOFFICE-v8/pl.lproj/InfoPlist.strings b/macos/ONLYOFFICE/Resources/ONLYOFFICE-v8/pl.lproj/InfoPlist.strings index f5a223d25..fe28edecb 100644 --- a/macos/ONLYOFFICE/Resources/ONLYOFFICE-v8/pl.lproj/InfoPlist.strings +++ b/macos/ONLYOFFICE/Resources/ONLYOFFICE-v8/pl.lproj/InfoPlist.strings @@ -2,5 +2,5 @@ "CFBundleName" = "ONLYOFFICE"; /* Copyright (human-readable) */ -"NSHumanReadableCopyright" = "Copyright © 2021 Ascensio System SIA. Wszelkie prawa zastrzeżone."; +"NSHumanReadableCopyright" = "Copyright © 2022 Ascensio System SIA. Wszelkie prawa zastrzeżone."; diff --git a/macos/ONLYOFFICE/Resources/ONLYOFFICE-v8/pt-BR.lproj/InfoPlist.strings b/macos/ONLYOFFICE/Resources/ONLYOFFICE-v8/pt-BR.lproj/InfoPlist.strings index 070d6a690..7212b20ec 100644 --- a/macos/ONLYOFFICE/Resources/ONLYOFFICE-v8/pt-BR.lproj/InfoPlist.strings +++ b/macos/ONLYOFFICE/Resources/ONLYOFFICE-v8/pt-BR.lproj/InfoPlist.strings @@ -2,5 +2,5 @@ "CFBundleName" = "ONLYOFFICE"; /* Copyright (human-readable) */ -"NSHumanReadableCopyright" = "Copyright © 2021 Ascensio System SIA. Todos os direitos reservados."; +"NSHumanReadableCopyright" = "Copyright © 2022 Ascensio System SIA. Todos os direitos reservados."; diff --git a/macos/ONLYOFFICE/Resources/ONLYOFFICE-v8/ru.lproj/InfoPlist.strings b/macos/ONLYOFFICE/Resources/ONLYOFFICE-v8/ru.lproj/InfoPlist.strings index 030c74881..0573c4539 100644 --- a/macos/ONLYOFFICE/Resources/ONLYOFFICE-v8/ru.lproj/InfoPlist.strings +++ b/macos/ONLYOFFICE/Resources/ONLYOFFICE-v8/ru.lproj/InfoPlist.strings @@ -2,5 +2,5 @@ "CFBundleName" = "ONLYOFFICE"; /* Copyright (human-readable) */ -"NSHumanReadableCopyright" = "© 2021 Ascensio System SIA. Все права защищены."; +"NSHumanReadableCopyright" = "© 2022 Ascensio System SIA. Все права защищены."; diff --git a/macos/ONLYOFFICE/Resources/ONLYOFFICE-v8/vi-VN.lproj/InfoPlist.strings b/macos/ONLYOFFICE/Resources/ONLYOFFICE-v8/vi-VN.lproj/InfoPlist.strings index 1664af210..5e5189693 100644 --- a/macos/ONLYOFFICE/Resources/ONLYOFFICE-v8/vi-VN.lproj/InfoPlist.strings +++ b/macos/ONLYOFFICE/Resources/ONLYOFFICE-v8/vi-VN.lproj/InfoPlist.strings @@ -2,5 +2,5 @@ "CFBundleName" = "ONLYOFFICE"; /* Copyright (human-readable) */ -"NSHumanReadableCopyright" = "Bản quyền © 2021 Ascensio System SIA. Đã đăng ký Bản quyền."; +"NSHumanReadableCopyright" = "Bản quyền © 2022 Ascensio System SIA. Đã đăng ký Bản quyền."; diff --git a/macos/ONLYOFFICE/Resources/ONLYOFFICE-v8/zh-Hans-CN.lproj/InfoPlist.strings b/macos/ONLYOFFICE/Resources/ONLYOFFICE-v8/zh-Hans-CN.lproj/InfoPlist.strings index cfe872c1a..16161cd08 100644 --- a/macos/ONLYOFFICE/Resources/ONLYOFFICE-v8/zh-Hans-CN.lproj/InfoPlist.strings +++ b/macos/ONLYOFFICE/Resources/ONLYOFFICE-v8/zh-Hans-CN.lproj/InfoPlist.strings @@ -2,5 +2,5 @@ "CFBundleName" = "ONLYOFFICE"; /* Copyright (human-readable) */ -"NSHumanReadableCopyright" = "版权所有©2021 Ascensio System SIA。保留所有权利。"; +"NSHumanReadableCopyright" = "版权所有©2022 Ascensio System SIA。保留所有权利。"; diff --git a/macos/ONLYOFFICE/Resources/ONLYOFFICE-x86_64/Info.plist b/macos/ONLYOFFICE/Resources/ONLYOFFICE-x86_64/Info.plist index 32ff4879c..e9e58ed01 100644 --- a/macos/ONLYOFFICE/Resources/ONLYOFFICE-x86_64/Info.plist +++ b/macos/ONLYOFFICE/Resources/ONLYOFFICE-x86_64/Info.plist @@ -550,7 +550,7 @@ NSCameraUsageDescription Once ONLYOFFICE Desktop Editors has permission, document tabs will be able to ask you for access. NSHumanReadableCopyright - Copyright © 2021 Ascensio System SIA. All rights reserved. + Copyright © 2022 Ascensio System SIA. All rights reserved. NSMainStoryboardFile Main NSMicrophoneUsageDescription diff --git a/macos/ONLYOFFICE/Resources/ONLYOFFICE-x86_64/de.lproj/InfoPlist.strings b/macos/ONLYOFFICE/Resources/ONLYOFFICE-x86_64/de.lproj/InfoPlist.strings index e93068466..d3d3e7dc0 100644 --- a/macos/ONLYOFFICE/Resources/ONLYOFFICE-x86_64/de.lproj/InfoPlist.strings +++ b/macos/ONLYOFFICE/Resources/ONLYOFFICE-x86_64/de.lproj/InfoPlist.strings @@ -2,5 +2,5 @@ "CFBundleName" = "ONLYOFFICE"; /* Copyright (human-readable) */ -"NSHumanReadableCopyright" = "Copyright © 2021 Ascensio System SIA. Alle Rechte vorbehalten."; +"NSHumanReadableCopyright" = "Copyright © 2022 Ascensio System SIA. Alle Rechte vorbehalten."; diff --git a/macos/ONLYOFFICE/Resources/ONLYOFFICE-x86_64/es.lproj/InfoPlist.strings b/macos/ONLYOFFICE/Resources/ONLYOFFICE-x86_64/es.lproj/InfoPlist.strings index ec68bcb7e..46f4dc8c4 100644 --- a/macos/ONLYOFFICE/Resources/ONLYOFFICE-x86_64/es.lproj/InfoPlist.strings +++ b/macos/ONLYOFFICE/Resources/ONLYOFFICE-x86_64/es.lproj/InfoPlist.strings @@ -2,5 +2,5 @@ "CFBundleName" = "ONLYOFFICE"; /* Copyright (human-readable) */ -"NSHumanReadableCopyright" = "Copyright © 2021 Ascensio System SIA. Todos los derechos reservados."; +"NSHumanReadableCopyright" = "Copyright © 2022 Ascensio System SIA. Todos los derechos reservados."; diff --git a/macos/ONLYOFFICE/Resources/ONLYOFFICE-x86_64/fr.lproj/InfoPlist.strings b/macos/ONLYOFFICE/Resources/ONLYOFFICE-x86_64/fr.lproj/InfoPlist.strings index bb2eda030..34290d56c 100644 --- a/macos/ONLYOFFICE/Resources/ONLYOFFICE-x86_64/fr.lproj/InfoPlist.strings +++ b/macos/ONLYOFFICE/Resources/ONLYOFFICE-x86_64/fr.lproj/InfoPlist.strings @@ -2,5 +2,5 @@ "CFBundleName" = "ONLYOFFICE"; /* Copyright (human-readable) */ -"NSHumanReadableCopyright" = "Copyright © 2021 Ascensio System SIA. Tous droits réservés."; +"NSHumanReadableCopyright" = "Copyright © 2022 Ascensio System SIA. Tous droits réservés."; diff --git a/macos/ONLYOFFICE/Resources/ONLYOFFICE-x86_64/it.lproj/InfoPlist.strings b/macos/ONLYOFFICE/Resources/ONLYOFFICE-x86_64/it.lproj/InfoPlist.strings index ace673e59..badaf4a99 100644 --- a/macos/ONLYOFFICE/Resources/ONLYOFFICE-x86_64/it.lproj/InfoPlist.strings +++ b/macos/ONLYOFFICE/Resources/ONLYOFFICE-x86_64/it.lproj/InfoPlist.strings @@ -2,5 +2,5 @@ "CFBundleName" = "ONLYOFFICE"; /* Copyright (human-readable) */ -"NSHumanReadableCopyright" = "Copyright © 2021 Ascensio System SIA. Tutti i diritti riservati."; +"NSHumanReadableCopyright" = "Copyright © 2022 Ascensio System SIA. Tutti i diritti riservati."; diff --git a/macos/ONLYOFFICE/Resources/ONLYOFFICE-x86_64/pl.lproj/InfoPlist.strings b/macos/ONLYOFFICE/Resources/ONLYOFFICE-x86_64/pl.lproj/InfoPlist.strings index f5a223d25..fe28edecb 100644 --- a/macos/ONLYOFFICE/Resources/ONLYOFFICE-x86_64/pl.lproj/InfoPlist.strings +++ b/macos/ONLYOFFICE/Resources/ONLYOFFICE-x86_64/pl.lproj/InfoPlist.strings @@ -2,5 +2,5 @@ "CFBundleName" = "ONLYOFFICE"; /* Copyright (human-readable) */ -"NSHumanReadableCopyright" = "Copyright © 2021 Ascensio System SIA. Wszelkie prawa zastrzeżone."; +"NSHumanReadableCopyright" = "Copyright © 2022 Ascensio System SIA. Wszelkie prawa zastrzeżone."; diff --git a/macos/ONLYOFFICE/Resources/ONLYOFFICE-x86_64/pt-BR.lproj/InfoPlist.strings b/macos/ONLYOFFICE/Resources/ONLYOFFICE-x86_64/pt-BR.lproj/InfoPlist.strings index 070d6a690..7212b20ec 100644 --- a/macos/ONLYOFFICE/Resources/ONLYOFFICE-x86_64/pt-BR.lproj/InfoPlist.strings +++ b/macos/ONLYOFFICE/Resources/ONLYOFFICE-x86_64/pt-BR.lproj/InfoPlist.strings @@ -2,5 +2,5 @@ "CFBundleName" = "ONLYOFFICE"; /* Copyright (human-readable) */ -"NSHumanReadableCopyright" = "Copyright © 2021 Ascensio System SIA. Todos os direitos reservados."; +"NSHumanReadableCopyright" = "Copyright © 2022 Ascensio System SIA. Todos os direitos reservados."; diff --git a/macos/ONLYOFFICE/Resources/ONLYOFFICE-x86_64/ru.lproj/InfoPlist.strings b/macos/ONLYOFFICE/Resources/ONLYOFFICE-x86_64/ru.lproj/InfoPlist.strings index 030c74881..0573c4539 100644 --- a/macos/ONLYOFFICE/Resources/ONLYOFFICE-x86_64/ru.lproj/InfoPlist.strings +++ b/macos/ONLYOFFICE/Resources/ONLYOFFICE-x86_64/ru.lproj/InfoPlist.strings @@ -2,5 +2,5 @@ "CFBundleName" = "ONLYOFFICE"; /* Copyright (human-readable) */ -"NSHumanReadableCopyright" = "© 2021 Ascensio System SIA. Все права защищены."; +"NSHumanReadableCopyright" = "© 2022 Ascensio System SIA. Все права защищены."; diff --git a/macos/ONLYOFFICE/Resources/ONLYOFFICE-x86_64/vi-VN.lproj/InfoPlist.strings b/macos/ONLYOFFICE/Resources/ONLYOFFICE-x86_64/vi-VN.lproj/InfoPlist.strings index 1664af210..5e5189693 100644 --- a/macos/ONLYOFFICE/Resources/ONLYOFFICE-x86_64/vi-VN.lproj/InfoPlist.strings +++ b/macos/ONLYOFFICE/Resources/ONLYOFFICE-x86_64/vi-VN.lproj/InfoPlist.strings @@ -2,5 +2,5 @@ "CFBundleName" = "ONLYOFFICE"; /* Copyright (human-readable) */ -"NSHumanReadableCopyright" = "Bản quyền © 2021 Ascensio System SIA. Đã đăng ký Bản quyền."; +"NSHumanReadableCopyright" = "Bản quyền © 2022 Ascensio System SIA. Đã đăng ký Bản quyền."; diff --git a/macos/ONLYOFFICE/Resources/ONLYOFFICE-x86_64/zh-Hans-CN.lproj/InfoPlist.strings b/macos/ONLYOFFICE/Resources/ONLYOFFICE-x86_64/zh-Hans-CN.lproj/InfoPlist.strings index cfe872c1a..16161cd08 100644 --- a/macos/ONLYOFFICE/Resources/ONLYOFFICE-x86_64/zh-Hans-CN.lproj/InfoPlist.strings +++ b/macos/ONLYOFFICE/Resources/ONLYOFFICE-x86_64/zh-Hans-CN.lproj/InfoPlist.strings @@ -2,5 +2,5 @@ "CFBundleName" = "ONLYOFFICE"; /* Copyright (human-readable) */ -"NSHumanReadableCopyright" = "版权所有©2021 Ascensio System SIA。保留所有权利。"; +"NSHumanReadableCopyright" = "版权所有©2022 Ascensio System SIA。保留所有权利。"; From d87642fbc127a062f0fd128c63f6e487ff8f0bc4 Mon Sep 17 00:00:00 2001 From: Maxim Kadushkin Date: Tue, 19 Jul 2022 14:17:09 +0300 Subject: [PATCH 27/76] [win-nix] refactoring --- common/loginpage/src/locale.js | 26 +++++++++---------- win-linux/src/asctabwidget.cpp | 2 +- .../src/cascapplicationmanagerwrapper.cpp | 2 +- win-linux/src/cthemes.cpp | 8 +++--- win-linux/src/cthemes.h | 8 +++--- 5 files changed, 23 insertions(+), 23 deletions(-) diff --git a/common/loginpage/src/locale.js b/common/loginpage/src/locale.js index 96bb222a4..96926594f 100644 --- a/common/loginpage/src/locale.js +++ b/common/loginpage/src/locale.js @@ -115,19 +115,19 @@ l10n.en = { settOptCheckWeek: 'Every week', settScaling: 'Interface scaling', settOptScalingAuto: 'Auto', - aboutProFeaturesAvailable: 'With access to pro features' - ,settUITheme: 'Interface theme' - ,settOptThemeLight: 'Light' - ,settOptThemeClassicLight: 'Classic Light' - ,settOptThemeDark: 'Dark' - ,settOptLaunchMode: 'Open file' - ,settOptLaunchInTab: 'In its own tab' - ,settOptLaunchInWindow: 'In its own window' - ,settSpellcheckDetection: 'Spelling language detection' - ,settOptDisabled: 'Disabled' - ,aboutChangelog: 'Changelog' - ,updateNoUpdates: 'App is up to date' - ,updateAvialable: 'Version $1 is available. Click to download.' + aboutProFeaturesAvailable: 'With access to pro features', + settUITheme: 'Interface theme', + settOptThemeLight: 'Light', + settOptThemeClassicLight: 'Classic Light', + settOptThemeDark: 'Dark', + settOptLaunchMode: 'Open file', + settOptLaunchInTab: 'In its own tab', + settOptLaunchInWindow: 'In its own window', + settSpellcheckDetection: 'Spelling language detection', + settOptDisabled: 'Disabled', + aboutChangelog: 'Changelog', + updateNoUpdates: 'App is up to date', + updateAvialable: 'Version $1 is available. Click to download.', } diff --git a/win-linux/src/asctabwidget.cpp b/win-linux/src/asctabwidget.cpp index 96f92f860..f38e100e9 100644 --- a/win-linux/src/asctabwidget.cpp +++ b/win-linux/src/asctabwidget.cpp @@ -496,7 +496,7 @@ void CAscTabWidget::updateTabIcon(int index) return data.isViewType(cvwtEditor) && (data.features().empty() || data.hasFeature(L"uithemes")); }; const CTheme& ui_theme = AscAppManager::themes().current().isDark() && _is_editor_supports_theme(index) ? - AscAppManager::themes().current() : AscAppManager::themes().light(); + AscAppManager::themes().current() : AscAppManager::themes().defaultLight(); tab_type = pEditor->GetEditorType(); switch ( tab_type ) { diff --git a/win-linux/src/cascapplicationmanagerwrapper.cpp b/win-linux/src/cascapplicationmanagerwrapper.cpp index 762e608c1..a3670f8f9 100644 --- a/win-linux/src/cascapplicationmanagerwrapper.cpp +++ b/win-linux/src/cascapplicationmanagerwrapper.cpp @@ -1620,7 +1620,7 @@ void CAscApplicationManagerWrapper::applyTheme(const wstring& theme, bool force) { APP_CAST(_app); - if ( !_app.m_themes->isCurrent(theme) ) { + if ( !_app.m_themes->isThemeCurrent(theme) ) { const std::wstring old_theme = _app.m_themes->current().id(); _app.m_themes->setCurrentTheme(theme); diff --git a/win-linux/src/cthemes.cpp b/win-linux/src/cthemes.cpp index a0dfa3e2b..18bf2b2cc 100644 --- a/win-linux/src/cthemes.cpp +++ b/win-linux/src/cthemes.cpp @@ -268,25 +268,25 @@ auto CThemes::current() -> const CTheme & return *(m_priv->current); } -auto CThemes::dark() -> const CTheme& +auto CThemes::defaultDark() -> const CTheme& { return *m_priv->getDefault(NSTheme::ThemeType::ttDark); } -auto CThemes::light() -> const CTheme& +auto CThemes::defaultLight() -> const CTheme& { return *m_priv->getDefault(NSTheme::ThemeType::ttLight); } auto CThemes::setCurrentTheme(const std::wstring& name) -> void { - if ( !isCurrent(name) && m_priv->setCurrent(QString::fromStdWString(name)) ) { + if ( !isThemeCurrent(name) && m_priv->setCurrent(QString::fromStdWString(name)) ) { GET_REGISTRY_USER(_reg_user); _reg_user.setValue(REGISTRY_THEME_KEY, QString::fromStdWString(name)); } } -auto CThemes::isCurrent(const std::wstring& name) -> bool +auto CThemes::isThemeCurrent(const std::wstring& id) -> bool { return m_priv->current->id() == name; } diff --git a/win-linux/src/cthemes.h b/win-linux/src/cthemes.h index 71ba0c4c2..fa6a77817 100644 --- a/win-linux/src/cthemes.h +++ b/win-linux/src/cthemes.h @@ -55,12 +55,12 @@ public: ~CThemes(); auto current() -> const CTheme&; - auto dark() -> const CTheme&; - auto light() -> const CTheme&; + auto defaultDark() -> const CTheme&; + auto defaultLight() -> const CTheme&; auto setCurrentTheme(const std::wstring&) -> void; - auto isCurrent(const std::wstring& name) -> bool; - auto isThemeDark(const std::wstring& name) -> bool; + auto isThemeCurrent(const std::wstring& id) -> bool; +// auto isThemeDark(const std::wstring& id) -> bool; auto isColorDark(const std::wstring&) -> bool; auto isColorDark(const QString&) -> bool; From 2b592d743198addf03c216c6dbca6f764ab21dcf Mon Sep 17 00:00:00 2001 From: Maxim Kadushkin Date: Tue, 19 Jul 2022 14:19:05 +0300 Subject: [PATCH 28/76] [win] support for system dark/light theme --- common/loginpage/src/locale.js | 1 + common/loginpage/src/panelsettings.js | 24 +++++- .../src/cascapplicationmanagerwrapper.cpp | 18 ++++- win-linux/src/cmainpanel.cpp | 2 +- win-linux/src/cthemes.cpp | 74 ++++++++++++++----- win-linux/src/cthemes.h | 3 + 6 files changed, 100 insertions(+), 22 deletions(-) diff --git a/common/loginpage/src/locale.js b/common/loginpage/src/locale.js index 96926594f..c7556f109 100644 --- a/common/loginpage/src/locale.js +++ b/common/loginpage/src/locale.js @@ -128,6 +128,7 @@ l10n.en = { aboutChangelog: 'Changelog', updateNoUpdates: 'App is up to date', updateAvialable: 'Version $1 is available. Click to download.', + settOptThemeSystem: 'System default', } diff --git a/common/loginpage/src/panelsettings.js b/common/loginpage/src/panelsettings.js index 713fac7f2..1b0d03b6b 100644 --- a/common/loginpage/src/panelsettings.js +++ b/common/loginpage/src/panelsettings.js @@ -36,6 +36,13 @@ */ +function(){ 'use strict' + const THEME_TYPE_LIGHT = 'light'; + const THEME_TYPE_DARK = 'dark'; + const THEME_TYPE_SYSTEM = 'system'; + + const THEME_ID_DEFAULT_LIGHT = 'theme-classic-light'; + const THEME_ID_DEFAULT_DARK = 'theme-dark'; + var ControllerSettings = function(args={}) { args.caption = 'Settings'; args.action = @@ -104,6 +111,7 @@
      @@ -359,7 +359,7 @@ $btnApply.isdisabled() && $btnApply.disable(false); }); - // $('#caption-restart', $panel).show(); + $('#caption-restart', $panel).show(); } if ( !!opts.uitheme ) { diff --git a/win-linux/src/cascapplicationmanagerwrapper.cpp b/win-linux/src/cascapplicationmanagerwrapper.cpp index d2e8d74fb..f0d954652 100644 --- a/win-linux/src/cascapplicationmanagerwrapper.cpp +++ b/win-linux/src/cascapplicationmanagerwrapper.cpp @@ -1544,13 +1544,16 @@ bool CAscApplicationManagerWrapper::applySettings(const wstring& wstrjson) if ( objRoot.contains("uiscaling") ) { wstring sets; + setUserSettings(L"system-scale", L"0"); switch (objRoot["uiscaling"].toString().toInt()) { case 100: sets = L"1"; break; case 125: sets = L"1.25"; break; case 150: sets = L"1.5"; break; case 175: sets = L"1.75"; break; case 200: sets = L"2"; break; - default: sets = L"default"; + default: + sets = L"default"; + setUserSettings(L"system-scale", L"1"); } setUserSettings(L"force-scale", sets); diff --git a/win-linux/src/prop/cmainpanelimpl.cpp b/win-linux/src/prop/cmainpanelimpl.cpp index 4f75ce448..d01c69fa3 100644 --- a/win-linux/src/prop/cmainpanelimpl.cpp +++ b/win-linux/src/prop/cmainpanelimpl.cpp @@ -82,7 +82,9 @@ void CMainPanelImpl::refreshAboutVersion() }) ); - if ( !AscAppManager::IsUseSystemScaling() ) { + if ( AscAppManager::IsUseSystemScaling() ) { + _json_obj["uiscaling"] = 0; + } else { std::wstring _force_value = AscAppManager::userSettings(L"force-scale"); if ( _force_value == L"1" ) _json_obj["uiscaling"] = 100; @@ -98,7 +100,11 @@ void CMainPanelImpl::refreshAboutVersion() else if ( _force_value == L"2" ) _json_obj["uiscaling"] = 200; - else _json_obj["uiscaling"] = 0; + else { +// _json_obj["uiscaling"] = 0; + AscAppManager::setUserSettings(L"force-scale", L"1"); + _json_obj["uiscaling"] = 100; + } } #ifndef __OS_WIN_XP From 94d91d76bd041a27f858ee94aee40aa16e12bb31 Mon Sep 17 00:00:00 2001 From: maxkadushkin Date: Tue, 16 Aug 2022 16:28:43 +0300 Subject: [PATCH 45/76] [linux] detect themes refactoring --- win-linux/src/cthemes.cpp | 22 +++++++++++++++------- 1 file changed, 15 insertions(+), 7 deletions(-) diff --git a/win-linux/src/cthemes.cpp b/win-linux/src/cthemes.cpp index 1b46795f4..0562c07fe 100644 --- a/win-linux/src/cthemes.cpp +++ b/win-linux/src/cthemes.cpp @@ -1,5 +1,9 @@ #include "cthemes.h" +#ifdef Q_OS_LINUX +# include +# include +#endif #include "defines.h" #include "utils.h" @@ -100,15 +104,19 @@ public: int r, g, b; color.getRgb(&r, &g, &b); int lum = int(0.299*r + 0.587*g + 0.114*b); - is_system_theme_dark = lum > 127; + is_system_theme_dark = !(lum > 127); } else { - QProcess process; - process.setProcessChannelMode(QProcess::MergedChannels); - process.start("gsettings", {"get", "org.gnome.desktop.interface", "gtk-theme"}); - if (process.waitForFinished(1000)) { - QString list = QString(process.readAllStandardOutput()); - is_system_theme_dark = list.toLower().indexOf("dark") == -1; + GSettings * sett = g_settings_new("org.gnome.desktop.interface"); + GVariant * val = g_settings_get_value(sett, "gtk-theme"); + char * env = nullptr; + g_variant_get(val, "s", &env); + if ( env ) { + is_system_theme_dark = !(QString::fromUtf8(env).toLower().indexOf("dark") == -1); + + free(env); } + + g_object_unref(sett); } #endif if ( user_theme == THEME_ID_SYSTEM ) { From 8118972532f63fe37c7035d69be86f7a8763210c Mon Sep 17 00:00:00 2001 From: maxkadushkin Date: Wed, 17 Aug 2022 23:31:01 +0300 Subject: [PATCH 46/76] [macos] refactoring --- macos/ONLYOFFICE.xcodeproj/project.pbxproj | 10 ++ .../Common/ASCCommonViewController.mm | 25 +++- .../Controllers/Common/ASCEventsController.mm | 25 ++-- .../Extensions/NSApplication+Extensions.m | 6 +- .../Code/Extensions/NSColor+Extensions.m | 10 +- macos/ONLYOFFICE/Code/Utils/ASCConstants.h | 1 + .../Code/Utils/ASCEditorJSVariables.h | 54 ++++++++ .../Code/Utils/ASCEditorJSVariables.mm | 115 ++++++++++++++++++ .../ONLYOFFICE/Code/Utils/ASCSharedSettings.h | 1 + macos/ONLYOFFICE/main.mm | 28 ++--- 10 files changed, 232 insertions(+), 43 deletions(-) create mode 100644 macos/ONLYOFFICE/Code/Utils/ASCEditorJSVariables.h create mode 100644 macos/ONLYOFFICE/Code/Utils/ASCEditorJSVariables.mm diff --git a/macos/ONLYOFFICE.xcodeproj/project.pbxproj b/macos/ONLYOFFICE.xcodeproj/project.pbxproj index ad5329931..cec027752 100644 --- a/macos/ONLYOFFICE.xcodeproj/project.pbxproj +++ b/macos/ONLYOFFICE.xcodeproj/project.pbxproj @@ -22,6 +22,9 @@ /* Begin PBXBuildFile section */ 5A452E4B257688C700C58E01 /* providers in Resources */ = {isa = PBXBuildFile; fileRef = 5A452E4A257688C700C58E01 /* providers */; }; + 5A9D7AE8289336130069EE5A /* ASCEditorJSVariables.mm in Sources */ = {isa = PBXBuildFile; fileRef = 5A9D7AE7289336130069EE5A /* ASCEditorJSVariables.mm */; }; + 5A9D7AE92893D86C0069EE5A /* ASCEditorJSVariables.mm in Sources */ = {isa = PBXBuildFile; fileRef = 5A9D7AE7289336130069EE5A /* ASCEditorJSVariables.mm */; }; + 5A9D7AEA2893D86D0069EE5A /* ASCEditorJSVariables.mm in Sources */ = {isa = PBXBuildFile; fileRef = 5A9D7AE7289336130069EE5A /* ASCEditorJSVariables.mm */; }; 5A9F8D392848AA07007CA93F /* file-xlsm.icns in Resources */ = {isa = PBXBuildFile; fileRef = 5A9F8D382848AA06007CA93F /* file-xlsm.icns */; }; 5A9F8D3A2848AA07007CA93F /* file-xlsm.icns in Resources */ = {isa = PBXBuildFile; fileRef = 5A9F8D382848AA06007CA93F /* file-xlsm.icns */; }; 5A9F8D3B2848AA07007CA93F /* file-xlsm.icns in Resources */ = {isa = PBXBuildFile; fileRef = 5A9F8D382848AA06007CA93F /* file-xlsm.icns */; }; @@ -767,6 +770,8 @@ 5A87ABEB283286DB0084198A /* ga-IE */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = "ga-IE"; path = "ga-IE.lproj/MoveApplication.strings"; sourceTree = ""; }; 5A87ABEC283286DB0084198A /* ga-IE */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = "ga-IE"; path = "ga-IE.lproj/Presentation-Reporter.strings"; sourceTree = ""; }; 5A87ABEE2832964F0084198A /* ga-IE */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = "ga-IE"; path = "ga-IE.lproj/Localizable.strings"; sourceTree = ""; }; + 5A9D7AE6289336130069EE5A /* ASCEditorJSVariables.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ASCEditorJSVariables.h; sourceTree = ""; }; + 5A9D7AE7289336130069EE5A /* ASCEditorJSVariables.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; path = ASCEditorJSVariables.mm; sourceTree = ""; }; 5A9F8D382848AA06007CA93F /* file-xlsm.icns */ = {isa = PBXFileReference; lastKnownFileType = image.icns; path = "file-xlsm.icns"; sourceTree = ""; }; 5AA06CBB27AC3BA000D67BEE /* ASCLinguist.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = ASCLinguist.h; sourceTree = ""; }; 5AA06CBC27AC3BA000D67BEE /* ASCLinguist.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = ASCLinguist.m; sourceTree = ""; }; @@ -1426,6 +1431,8 @@ FCA0B3561B9F00780073EDD4 /* Utils */ = { isa = PBXGroup; children = ( + 5A9D7AE6289336130069EE5A /* ASCEditorJSVariables.h */, + 5A9D7AE7289336130069EE5A /* ASCEditorJSVariables.mm */, FCA0B3601B9F0AA10073EDD4 /* ASCConstants.h */, FCAC6DF71C195FA6003D2457 /* ASCConstants.m */, FCCC2FD521E5DF7700FB9209 /* ASCBlockHolder.h */, @@ -2288,6 +2295,7 @@ FC0BD690258B63F700C47F95 /* PFMoveApplication.m in Sources */, FC0BD691258B63F700C47F95 /* ASCBlockHolder.m in Sources */, FC0BD692258B63F700C47F95 /* ASCTabView.m in Sources */, + 5A9D7AEA2893D86D0069EE5A /* ASCEditorJSVariables.mm in Sources */, FC0BD693258B63F700C47F95 /* ASCMenuButtonCell.m in Sources */, FC0BD694258B63F700C47F95 /* SFBPopoverWindow.m in Sources */, FC0BD695258B63F700C47F95 /* NSWindow+Extensions.m in Sources */, @@ -2361,6 +2369,7 @@ FCB4C6C726DD018B0012C20D /* PFMoveApplication.m in Sources */, FCB4C6C826DD018B0012C20D /* ASCBlockHolder.m in Sources */, FCB4C6C926DD018B0012C20D /* ASCTabView.m in Sources */, + 5A9D7AE8289336130069EE5A /* ASCEditorJSVariables.mm in Sources */, FCB4C6CA26DD018B0012C20D /* ASCMenuButtonCell.m in Sources */, FCB4C6CB26DD018B0012C20D /* SFBPopoverWindow.m in Sources */, FCB4C6CC26DD018B0012C20D /* NSWindow+Extensions.m in Sources */, @@ -2434,6 +2443,7 @@ FCB454FF1C326A4E00FEACF2 /* PFMoveApplication.m in Sources */, FCCC2FD721E5DF7700FB9209 /* ASCBlockHolder.m in Sources */, FCC77C97206CEE85001B7837 /* ASCTabView.m in Sources */, + 5A9D7AE92893D86C0069EE5A /* ASCEditorJSVariables.mm in Sources */, FCC77C79206CEE5B001B7837 /* ASCMenuButtonCell.m in Sources */, FC3BFE011BBE83AB0040C904 /* SFBPopoverWindow.m in Sources */, FCF2897D21510403002FD438 /* NSWindow+Extensions.m in Sources */, diff --git a/macos/ONLYOFFICE/Code/Controllers/Common/ASCCommonViewController.mm b/macos/ONLYOFFICE/Code/Controllers/Common/ASCCommonViewController.mm index 215488083..894fa7320 100644 --- a/macos/ONLYOFFICE/Code/Controllers/Common/ASCCommonViewController.mm +++ b/macos/ONLYOFFICE/Code/Controllers/Common/ASCCommonViewController.mm @@ -68,6 +68,8 @@ #import "ASCCertificatePreviewController.h" #import "ASCCertificateQLPreviewController.h" #import "ASCLinguist.h" +#import "ASCEditorJSVariables.h" + #define rootTabId @"1CEF624D-9FF3-432B-9967-61361B5BFE8B" @@ -1594,25 +1596,40 @@ - (void)onUIThemeChanged:(NSNotification *)notification { if (notification && notification.userInfo) { NSDictionary * params = (NSDictionary *)notification.userInfo; - std::wstring theme = [params[@"uitheme"] stdwstring]; + std::wstring wtheme = [params[@"uitheme"] stdwstring]; + NSString * theme = params[@"uitheme"]; CAscApplicationManager * appManager = [NSAscApplicationWorker getAppManager]; + NSEditorApi::CAscExecCommandJS * pCommand = new NSEditorApi::CAscExecCommandJS; + pCommand->put_Command(L"uitheme:changed"); + pCommand->put_Param(wtheme); + + NSEditorApi::CAscMenuEvent* pEvent = new NSEditorApi::CAscMenuEvent(ASC_MENU_EVENT_TYPE_CEF_EXECUTE_COMMAND_JS); + pEvent->m_pData = pCommand; + appManager->SetEventToAllMainWindows(pEvent); + for (ASCTabView * tab in self.tabsControl.tabs) { if (NSCefView * cefView = [self cefViewWithTab:tab]) { CCefView * cef = appManager->GetViewById((int)cefView.uuid); if (cef && cef->GetType() == cvwtEditor) { - NSEditorApi::CAscExecCommandJS * pCommand = new NSEditorApi::CAscExecCommandJS; + pCommand = new NSEditorApi::CAscExecCommandJS; pCommand->put_FrameName(L"frameEditor"); pCommand->put_Command(L"uitheme:changed"); - pCommand->put_Param(theme); + pCommand->put_Param(wtheme); - NSEditorApi::CAscMenuEvent* pEvent = new NSEditorApi::CAscMenuEvent(ASC_MENU_EVENT_TYPE_CEF_EXECUTE_COMMAND_JS); + pEvent = new NSEditorApi::CAscMenuEvent(ASC_MENU_EVENT_TYPE_CEF_EXECUTE_COMMAND_JS); pEvent->m_pData = pCommand; [cefView apply:pEvent]; } } } + + [[ASCEditorJSVariables instance] setVariable:@"theme" withObject:@{@"id":theme}]; + [[ASCEditorJSVariables instance] apply]; + + [[ASCEditorJSVariables instance] setParameter:@"uitheme" withString:theme]; + [[ASCEditorJSVariables instance] applyParameters]; } } diff --git a/macos/ONLYOFFICE/Code/Controllers/Common/ASCEventsController.mm b/macos/ONLYOFFICE/Code/Controllers/Common/ASCEventsController.mm index dedb1c91d..bb4082138 100644 --- a/macos/ONLYOFFICE/Code/Controllers/Common/ASCEventsController.mm +++ b/macos/ONLYOFFICE/Code/Controllers/Common/ASCEventsController.mm @@ -49,6 +49,8 @@ #import "OfficeFileFormats.h" #import "ASCLinguist.h" #import "mac_application.h" +#import "NSApplication+Extensions.h" +#import "ASCEditorJSVariables.h" #pragma mark - #pragma mark ======================================================== @@ -602,14 +604,12 @@ public: } } else if (cmd.find(L"settings:apply") != std::wstring::npos) { if (NSDictionary * json = [[NSString stringWithstdwstring:param] dictionary]) { - NSMutableArray * params = [NSMutableArray array]; - id externalDelegate = [[ASCExternalController shared] delegate]; if (externalDelegate && [externalDelegate respondsToSelector:@selector(onAppPreferredLanguage)]) { - [params addObject:[NSString stringWithFormat:@"lang=%@", [externalDelegate onAppPreferredLanguage]]]; + [[ASCEditorJSVariables instance] setParameter:@"lang" withString:[externalDelegate onAppPreferredLanguage]]; } else { - [params addObject:[NSString stringWithFormat:@"lang=%@", [[[NSLocale currentLocale] objectForKey:NSLocaleLanguageCode] lowercaseString]]]; + [[ASCEditorJSVariables instance] setParameter:@"lang" withString:[[[NSLocale currentLocale] objectForKey:NSLocaleLanguageCode] lowercaseString]]; } if (NSString * langId = json[@"langid"]) { @@ -618,26 +618,27 @@ public: if (NSString * userName = json[@"username"]) { if ([userName isEqualToString:@""]) { - [params addObject:[NSString stringWithFormat:@"username=%@", NSFullUserName()]]; + [[ASCEditorJSVariables instance] setParameter:@"username" withString:NSFullUserName()]; [[NSUserDefaults standardUserDefaults] setObject:NSFullUserName() forKey:ASCUserNameApp]; } else { - [params addObject:[NSString stringWithFormat:@"username=%@", userName]]; + [[ASCEditorJSVariables instance] setParameter:@"username" withString:userName]; [[NSUserDefaults standardUserDefaults] setObject:userName forKey:ASCUserNameApp]; } [[NSUserDefaults standardUserDefaults] synchronize]; } else { - [params addObject:[NSString stringWithFormat:@"username=%@", NSFullUserName()]]; + [[ASCEditorJSVariables instance] setParameter:@"username" withString:NSFullUserName()]; } + if (NSString * docopenMode = json[@"docopenmode"]) { if ([docopenMode isEqualToString:@"view"]) { - [params addObject:[NSString stringWithFormat:@"mode=%@", @"view"]]; + [[ASCEditorJSVariables instance] setParameter:@"mode" withString:@"view"]; } [[NSUserDefaults standardUserDefaults] setObject:docopenMode forKey:@"asc_user_docOpenMode"]; [[NSUserDefaults standardUserDefaults] synchronize]; } if (NSString * uiTheme = json[@"uitheme"]) { - if ( [[NSUserDefaults standardUserDefaults] valueForKey:ASCUserUITheme] != uiTheme ) { + if ( ![uiTheme isEqualToString:[[NSUserDefaults standardUserDefaults] valueForKey:ASCUserUITheme]] ) { [[NSUserDefaults standardUserDefaults] setObject:uiTheme forKey:ASCUserUITheme]; [[NSNotificationCenter defaultCenter] postNotificationName:ASCEventNameChangedUITheme @@ -645,12 +646,10 @@ public: userInfo: @{@"uitheme": uiTheme}]; } - [params addObject:[NSString stringWithFormat:@"uitheme=%@", uiTheme]]; + [[ASCEditorJSVariables instance] setParameter:@"uitheme" withString:uiTheme]; } - std::wstring wLocale = [[params componentsJoinedByString:@"&"] stdwstring]; - CAscApplicationManager * appManager = [NSAscApplicationWorker getAppManager]; - appManager->InitAdditionalEditorParams(wLocale); + [[ASCEditorJSVariables instance] applyParameters]; } } else if (cmd.find(L"encrypt:isneedbuild") != std::wstring::npos) { bool isFragmented = pData->get_Param() == L"true" ? true : false; diff --git a/macos/ONLYOFFICE/Code/Extensions/NSApplication+Extensions.m b/macos/ONLYOFFICE/Code/Extensions/NSApplication+Extensions.m index d9f3fb453..82dc83050 100644 --- a/macos/ONLYOFFICE/Code/Extensions/NSApplication+Extensions.m +++ b/macos/ONLYOFFICE/Code/Extensions/NSApplication+Extensions.m @@ -40,6 +40,7 @@ #import "NSApplication+Extensions.h" #import "ASCConstants.h" +#import "ASCSharedSettings.h" @implementation NSApplication (Extensions) @@ -56,7 +57,10 @@ } + (BOOL)isUIThemeDark { - return [uiThemeDark isEqualToString:[[NSUserDefaults standardUserDefaults] valueForKey:ASCUserUITheme]]; + NSString * theme = [[NSUserDefaults standardUserDefaults] valueForKey:ASCUserUITheme]; + if ([uiThemeSystem isEqualToString:theme]) { + return [@"dark" isEqualToString:[[ASCSharedSettings sharedInstance] settingByKey:kSettingsColorScheme]]; + } else return [uiThemeDark isEqualToString:theme]; } @end diff --git a/macos/ONLYOFFICE/Code/Extensions/NSColor+Extensions.m b/macos/ONLYOFFICE/Code/Extensions/NSColor+Extensions.m index 19330df41..390095087 100644 --- a/macos/ONLYOFFICE/Code/Extensions/NSColor+Extensions.m +++ b/macos/ONLYOFFICE/Code/Extensions/NSColor+Extensions.m @@ -40,6 +40,7 @@ #import "NSColor+Extensions.h" #import "ASCConstants.h" +#import "NSApplication+Extensions.h" #pragma mark - ONLYOFFICE @@ -67,22 +68,19 @@ } + (NSColor *) themedDocumentEditor { - NSString * uiTheme = [[NSUserDefaults standardUserDefaults] valueForKey:ASCUserUITheme]; - if ( [uiTheme isEqualToString:uiThemeDark] ) { + if ( [NSApplication isUIThemeDark] ) { return UIColorFromRGB(0x2a2a2a); } else return [NSColor brendDocumentEditor]; } + (NSColor *) themedSpreadsheetEditor { - NSString * uiTheme = [[NSUserDefaults standardUserDefaults] valueForKey:ASCUserUITheme]; - if ( [uiTheme isEqualToString:uiThemeDark] ) { + if ( [NSApplication isUIThemeDark] ) { return UIColorFromRGB(0x2a2a2a); } else return [NSColor brendSpreadsheetEditor]; } + (NSColor *) themedPresentationEditor { - NSString * uiTheme = [[NSUserDefaults standardUserDefaults] valueForKey:ASCUserUITheme]; - if ( [uiTheme isEqualToString:uiThemeDark] ) { + if ( [NSApplication isUIThemeDark] ) { return UIColorFromRGB(0x2a2a2a); } else return [NSColor brendPresentationEditor]; } diff --git a/macos/ONLYOFFICE/Code/Utils/ASCConstants.h b/macos/ONLYOFFICE/Code/Utils/ASCConstants.h index 369dcf5ab..10b24403b 100644 --- a/macos/ONLYOFFICE/Code/Utils/ASCConstants.h +++ b/macos/ONLYOFFICE/Code/Utils/ASCConstants.h @@ -72,6 +72,7 @@ static NSString * const kRegistrationPortalUrl = @"kRegistrationPor static NSString * const uiThemeLight = @"theme-light"; static NSString * const uiThemeClassicLight = @"theme-classic-light"; static NSString * const uiThemeDark = @"theme-dark"; +static NSString * const uiThemeSystem = @"theme-system"; // Custom schemes static NSString * const kSchemeApp = @"oo-office"; diff --git a/macos/ONLYOFFICE/Code/Utils/ASCEditorJSVariables.h b/macos/ONLYOFFICE/Code/Utils/ASCEditorJSVariables.h new file mode 100644 index 000000000..095a9e40d --- /dev/null +++ b/macos/ONLYOFFICE/Code/Utils/ASCEditorJSVariables.h @@ -0,0 +1,54 @@ +/* + * (c) Copyright Ascensio System SIA 2010-2019 + * + * This program is a free software product. You can redistribute it and/or + * modify it under the terms of the GNU Affero General Public License (AGPL) + * version 3 as published by the Free Software Foundation. In accordance with + * Section 7(a) of the GNU AGPL its Section 15 shall be amended to the effect + * that Ascensio System SIA expressly excludes the warranty of non-infringement + * of any third-party rights. + * + * This program is distributed WITHOUT ANY WARRANTY; without even the implied + * warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. For + * details, see the GNU AGPL at: http://www.gnu.org/licenses/agpl-3.0.html + * + * You can contact Ascensio System SIA at 20A-12 Ernesta Birznieka-Upisha + * street, Riga, Latvia, EU, LV-1050. + * + * The interactive user interfaces in modified source and object code versions + * of the Program must display Appropriate Legal Notices, as required under + * Section 5 of the GNU AGPL version 3. + * + * Pursuant to Section 7(b) of the License you must retain the original Product + * logo when distributing the program. Pursuant to Section 7(e) we decline to + * grant you any rights under trademark law for use of our trademarks. + * + * All the Product's GUI elements, including illustrations and icon sets, as + * well as technical writing content are licensed under the terms of the + * Creative Commons Attribution-ShareAlike 4.0 International. See the License + * terms at http://creativecommons.org/licenses/by-sa/4.0/legalcode + * +*/ + +// +// ASCEditorJSVariables.h +// ONLYOFFICE +// +// Created by Maxim.Kadushkin on 28/07/2022. +// Copyright © 2022 Ascensio System SIA. All rights reserved. +// + +#import + + +@interface ASCEditorJSVariables : NSObject ++ (instancetype)instance; + +- (id)init; +- (void)apply; +- (void)setVariable:(NSString*)name withString:(NSString *)value; +- (void)setVariable:(NSString*)name withObject:(NSDictionary *)value; +- (void)setParameter:(NSString*)name withString:(NSString *)value; +- (void)applyParameters; + +@end diff --git a/macos/ONLYOFFICE/Code/Utils/ASCEditorJSVariables.mm b/macos/ONLYOFFICE/Code/Utils/ASCEditorJSVariables.mm new file mode 100644 index 000000000..f1a842767 --- /dev/null +++ b/macos/ONLYOFFICE/Code/Utils/ASCEditorJSVariables.mm @@ -0,0 +1,115 @@ +/* + * (c) Copyright Ascensio System SIA 2010-2019 + * + * This program is a free software product. You can redistribute it and/or + * modify it under the terms of the GNU Affero General Public License (AGPL) + * version 3 as published by the Free Software Foundation. In accordance with + * Section 7(a) of the GNU AGPL its Section 15 shall be amended to the effect + * that Ascensio System SIA expressly excludes the warranty of non-infringement + * of any third-party rights. + * + * This program is distributed WITHOUT ANY WARRANTY; without even the implied + * warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. For + * details, see the GNU AGPL at: http://www.gnu.org/licenses/agpl-3.0.html + * + * You can contact Ascensio System SIA at 20A-12 Ernesta Birznieka-Upisha + * street, Riga, Latvia, EU, LV-1050. + * + * The interactive user interfaces in modified source and object code versions + * of the Program must display Appropriate Legal Notices, as required under + * Section 5 of the GNU AGPL version 3. + * + * Pursuant to Section 7(b) of the License you must retain the original Product + * logo when distributing the program. Pursuant to Section 7(e) we decline to + * grant you any rights under trademark law for use of our trademarks. + * + * All the Product's GUI elements, including illustrations and icon sets, as + * well as technical writing content are licensed under the terms of the + * Creative Commons Attribution-ShareAlike 4.0 International. See the License + * terms at http://creativecommons.org/licenses/by-sa/4.0/legalcode + * +*/ + +// +// ASCEditorJSVariables.m +// ONLYOFFICE +// +// Created by Maxim.Kadushkin on 28/07/2022. +// Copyright © 2022 Ascensio System SIA. All rights reserved. +// + + +#import "ASCEditorJSVariables.h" +#import "ASCApplicationManager.h" +#import "NSDictionary+Extensions.h" +#import "NSString+Extensions.h" +#import "ASCLinguist.h" + + +@interface ASCEditorJSVariables() +@property (nonatomic) NSMutableDictionary * jsVariables; +@property (nonatomic) NSMutableDictionary * urlParams; +@end + +@implementation ASCEditorJSVariables + ++ (instancetype)instance { + static id instance = nil; + static dispatch_once_t onceToken; + dispatch_once(&onceToken, ^{ + instance = [[self alloc] init]; + }); + + return instance; +} + +- (id)init { + self = [super init]; + if (self) { + _jsVariables = [NSMutableDictionary dictionary]; + _urlParams = [NSMutableDictionary dictionary]; + +#ifdef URL_WEBAPPS_HELP + NSString * url = URL_WEBAPPS_HELP; + NSLog(@"set web-apps help url %@", URL_WEBAPPS_HELP); + if (url && [url length]) + [_jsVariables setValue:URL_WEBAPPS_HELP forKey:@"helpUrl"]; +#endif + [self setParameter:@"lang" withString:[ASCLinguist appLanguageCode]]; + } + + return self; +} + +- (void)apply { + CAscApplicationManager * appManager = [NSAscApplicationWorker getAppManager]; + appManager->SetRendererProcessVariable([[_jsVariables jsonString] stdwstring]); +} + +- (void)setVariable: (NSString*)name withString:(NSString *)value { + [_jsVariables setValue:value forKey:name]; +} + +- (void)setVariable: (NSString*)name withObject:(NSDictionary *)object { + [_jsVariables setObject:object forKey:name]; +} + +- (void)setParameter:(NSString*)name withString:(NSString *)value { + [_urlParams setValue:value forKey:name]; +} + +- (void)applyParameters { + NSMutableString * str = [[NSMutableString alloc] init]; + + for(id key in _urlParams) + [str appendFormat:@"%@=%@&", key, [_urlParams objectForKey:key]]; + + if ( [str hasSuffix:@"&"] ) + [str deleteCharactersInRange:NSMakeRange([str length] - 1, 1)]; + + std::wstring wParams = [str stdwstring]; + CAscApplicationManager * appManager = [NSAscApplicationWorker getAppManager]; + appManager->InitAdditionalEditorParams(wParams); +} + +@end diff --git a/macos/ONLYOFFICE/Code/Utils/ASCSharedSettings.h b/macos/ONLYOFFICE/Code/Utils/ASCSharedSettings.h index e33e80164..36655b20d 100644 --- a/macos/ONLYOFFICE/Code/Utils/ASCSharedSettings.h +++ b/macos/ONLYOFFICE/Code/Utils/ASCSharedSettings.h @@ -44,6 +44,7 @@ static NSString * const kSettingsCurrentTab = @"asc.onlyoffice.currentTa static NSString * const kSettingsLastOpenDirectory = @"asc.onlyoffice.lastOpenDirectory"; static NSString * const kSettingsHasExtraFeatures = @"asc.onlyoffice.hasExtraFeatures"; static NSString * const kSettingsOpenAppLinks = @"asc.onlyoffice.openAppLinks"; +static NSString * const kSettingsColorScheme = @"asc.onlyoffice.colorScheme"; @interface ASCSharedSettings : NSObject + (instancetype)sharedInstance; diff --git a/macos/ONLYOFFICE/main.mm b/macos/ONLYOFFICE/main.mm index 363dc254a..00de84bb6 100644 --- a/macos/ONLYOFFICE/main.mm +++ b/macos/ONLYOFFICE/main.mm @@ -49,6 +49,8 @@ #import "ASCExternalController.h" #import "NSApplication+Extensions.h" #import "NSDictionary+Extensions.h" +#import "ASCEditorJSVariables.h" +#import "ASCSharedSettings.h" CAscApplicationManager * createASCApplicationManager() { return new ASCApplicationManager(); @@ -85,41 +87,29 @@ int main(int argc, const char * argv[]) { fontsDirectories.push_back([[[[NSBundle mainBundle] resourcePath] stringByAppendingPathComponent:@"login/fonts"] stdwstring]); appManager->m_oSettings.additional_fonts_folder = fontsDirectories; - // setup localization - NSMutableArray * params = [NSMutableArray array]; - [params addObject:[NSString stringWithFormat:@"lang=%@", [ASCLinguist appLanguageCode]]]; - // setup username NSString * fullName = [[NSUserDefaults standardUserDefaults] valueForKey:ASCUserNameApp]; - if (fullName == nil) { fullName = NSFullUserName(); } if (fullName) { - [params addObject:[NSString stringWithFormat:@"username=%@", fullName]]; + [[ASCEditorJSVariables instance] setParameter:@"username" withString:fullName]; } // setup ui theme NSString * uiTheme = [[NSUserDefaults standardUserDefaults] valueForKey:ASCUserUITheme]; if ( !uiTheme ) { - uiTheme = [NSApplication isSystemDarkMode] ? uiThemeDark : uiThemeClassicLight; + uiTheme = uiThemeSystem; [[NSUserDefaults standardUserDefaults] setObject:uiTheme forKey:ASCUserUITheme]; } - [params addObject:[NSString stringWithFormat:@"uitheme=%@", uiTheme]]; + [[ASCEditorJSVariables instance] setParameter:@"uitheme" withString:uiTheme]; + [[ASCSharedSettings sharedInstance] setSetting:([NSApplication isSystemDarkMode] ? @"dark" : @"light") forKey:kSettingsColorScheme]; + [[ASCEditorJSVariables instance] applyParameters]; - std::wstring wLocale = [[params componentsJoinedByString:@"&"] stdwstring]; - appManager->InitAdditionalEditorParams(wLocale); - - NSMutableDictionary * vars = @{@"theme": uiTheme}.mutableCopy; -#ifdef URL_WEBAPPS_HELP - NSString * url = URL_WEBAPPS_HELP; - NSLog(@"set web-apps help url %@", URL_WEBAPPS_HELP); - if (url && [url length]) - [vars setValue:URL_WEBAPPS_HELP forKey:@"helpUrl"]; -#endif - appManager->SetRendererProcessVariable([[vars jsonString] stdwstring]); + [[ASCEditorJSVariables instance] setVariable:@"theme" withObject:@{@"id":uiTheme}]; + [[ASCEditorJSVariables instance] apply]; // setup doc sign [ASCDocSignController shared]; From cded72265877734f0940d366a23e9cf46fe3d4ce Mon Sep 17 00:00:00 2001 From: maxkadushkin Date: Wed, 17 Aug 2022 23:32:01 +0300 Subject: [PATCH 47/76] [macos] fix bug 58319, 58320 --- .../Controllers/Common/ASCEventsController.mm | 52 +++++++++++++++++++ .../MainWindow/ASCTitleBarController.m | 28 +++++++--- 2 files changed, 72 insertions(+), 8 deletions(-) diff --git a/macos/ONLYOFFICE/Code/Controllers/Common/ASCEventsController.mm b/macos/ONLYOFFICE/Code/Controllers/Common/ASCEventsController.mm index bb4082138..8c4d7a8c5 100644 --- a/macos/ONLYOFFICE/Code/Controllers/Common/ASCEventsController.mm +++ b/macos/ONLYOFFICE/Code/Controllers/Common/ASCEventsController.mm @@ -730,6 +730,58 @@ public: pCefView->Apply(pEvent); } + } else if (cmd.find(L"system:changed") != std::wstring::npos) { + NSLog(@"nstheme: system changed %@", [NSString stringWithstdwstring:param]); + if ( [uiThemeSystem isEqualToString:[[NSUserDefaults standardUserDefaults] valueForKey:ASCUserUITheme]] ) { + NSError * error = NULL; + NSRegularExpression * regex = [NSRegularExpression regularExpressionWithPattern: @":\\s?\\\"(light|dark)" + options: NSRegularExpressionCaseInsensitive + error: &error]; + if ( !error ) { + NSString * json = [NSString stringWithstdwstring:param]; + NSTextCheckingResult * match = [regex firstMatchInString:json options:0 range:NSMakeRange(0, [json length])]; + if (match) { + NSRange range = [match rangeAtIndex:1]; + NSString * new_theme_type = [json substringWithRange:range]; + + if ( [NSApplication isUIThemeDark] != [new_theme_type isEqualToString:@"dark"] ) { + [[ASCSharedSettings sharedInstance] setSetting:new_theme_type forKey:kSettingsColorScheme]; + [[NSNotificationCenter defaultCenter] postNotificationName:ASCEventNameChangedUITheme + object:nil + userInfo:@{@"uitheme": uiThemeSystem}]; + } + } + } + } else { + if (NSDictionary * json = [[NSString stringWithstdwstring:param] dictionary]) { + if ( NSString * colors = json[@"colorscheme"] ) { + [[ASCSharedSettings sharedInstance] setSetting:colors forKey:kSettingsColorScheme]; + } + } + } + } else if (cmd.find(L"uitheme:changed") != std::wstring::npos) { + if (NSDictionary * json = [[NSString stringWithstdwstring:param] dictionary]) { + if ( NSString * newTheme = json[@"name"] ) { + NSString * curTheme = [[NSUserDefaults standardUserDefaults] valueForKey:ASCUserUITheme]; + + if ( ![curTheme isEqualToString:newTheme] ) { + [[NSUserDefaults standardUserDefaults] setObject:newTheme forKey:ASCUserUITheme]; + + [[NSNotificationCenter defaultCenter] postNotificationName:ASCEventNameChangedUITheme + object:nil + userInfo:@{@"uitheme":newTheme}]; + } else if ( [curTheme isEqualToString:uiThemeSystem] ) { + NSString * colorScheme = [[ASCSharedSettings sharedInstance] settingByKey:kSettingsColorScheme]; + if ( [NSApplication isSystemDarkMode] != [colorScheme isEqualToString:@"dark"] ) { + [[ASCSharedSettings sharedInstance] setSetting:([NSApplication isSystemDarkMode] ? @"dark" : @"light") forKey:kSettingsColorScheme]; + + [[NSNotificationCenter defaultCenter] postNotificationName:ASCEventNameChangedUITheme + object:nil + userInfo:@{@"uitheme":newTheme}]; + } + } + } + } } break; diff --git a/macos/ONLYOFFICE/Code/Controllers/MainWindow/ASCTitleBarController.m b/macos/ONLYOFFICE/Code/Controllers/MainWindow/ASCTitleBarController.m index 0cc9eec53..0312c7f5f 100644 --- a/macos/ONLYOFFICE/Code/Controllers/MainWindow/ASCTitleBarController.m +++ b/macos/ONLYOFFICE/Code/Controllers/MainWindow/ASCTitleBarController.m @@ -329,21 +329,36 @@ static float kASCWindowMinTitleWidth = 0; if (notification && notification.userInfo) { NSDictionary * params = (NSDictionary *)notification.userInfo; NSString * theme = params[@"uitheme"]; + Boolean useSystemTheme = [theme isEqualToString: uiThemeSystem]; + + if ( useSystemTheme ) { + theme = [NSApplication isSystemDarkMode] ? uiThemeDark : uiThemeClassicLight; + } ASCMenuButtonCell * portalButtonCell = self.portalButton.cell; if ( [theme isEqualToString:uiThemeDark] ) { - portalButtonCell.bgActiveColor = UIColorFromRGB(0x333333); - - [self.portalButton setImage:[NSImage imageNamed:@"logo-tab-light"]]; + portalButtonCell.bgActiveColor = UIColorFromRGB(0x333333); } else { if ( @available(macOS 10.13, *) ) portalButtonCell.bgActiveColor = [NSColor colorNamed:@"tab-portal-activeColor"]; else portalButtonCell.bgActiveColor = kColorRGBA(255, 255, 255, 1.0); + } - [self.portalButton setImage:[NSImage imageNamed:@"logo-tab-dark"]]; + if ( [self.portalButton state] != NSControlStateValueOn ) { + [NSApplication isSystemDarkMode] ? [self.portalButton setImage:[NSImage imageNamed:@"logo-tab-light"]] : + [self.portalButton setImage:[NSImage imageNamed:@"logo-tab-dark"]]; + + if ( useSystemTheme ) + [self.portalButton setNeedsDisplay]; + } else { + [theme isEqualToString:uiThemeDark] ? [self.portalButton setImage:[NSImage imageNamed:@"logo-tab-light"]] : + [self.portalButton setImage:[NSImage imageNamed:@"logo-tab-dark"]]; } for (ASCTabView * tab in self.tabsControl.tabs) { + if ( [tab state] == NSControlStateValueOn ) { + [tab setNeedsDisplay]; + } [tab setType:tab.type]; [self.tabsControl updateTab:tab]; } @@ -435,10 +450,7 @@ static float kASCWindowMinTitleWidth = 0; else [self.portalButton setImage:[NSImage imageNamed:@"logo-tab-dark"]]; } else { [self.portalButton setState:NSControlStateValueOn]; - - if ( [NSApplication isUIThemeDark] ) - [self.portalButton setImage:[NSImage imageNamed:@"logo-tab-light"]]; - else [self.portalButton setImage:[NSImage imageNamed:@"logo-tab-dark"]]; + [self.portalButton setImage:[NSImage imageNamed:[NSApplication isUIThemeDark] ? @"logo-tab-light" : @"logo-tab-dark"]]; } } From 38dc57f7ae19ae1e4cf7113f606084829dcdd50b Mon Sep 17 00:00:00 2001 From: Maxim Kadushkin Date: Fri, 19 Aug 2022 12:34:55 +0300 Subject: [PATCH 48/76] [win-nix] refactoring --- .../src/cascapplicationmanagerwrapper.cpp | 69 ------------------- win-linux/src/cthemes.cpp | 12 ++-- win-linux/src/cthemes.h | 2 +- 3 files changed, 7 insertions(+), 76 deletions(-) diff --git a/win-linux/src/cascapplicationmanagerwrapper.cpp b/win-linux/src/cascapplicationmanagerwrapper.cpp index f0d954652..59312347b 100644 --- a/win-linux/src/cascapplicationmanagerwrapper.cpp +++ b/win-linux/src/cascapplicationmanagerwrapper.cpp @@ -301,63 +301,6 @@ bool CAscApplicationManagerWrapper::processCommonEvent(NSEditorApi::CAscCefMenuE return true; } } else -// if ( cmd.compare(L"open:folder") == 0 ) { -// QString path = CEditorTools::getlocalfile(pData->get_Param()); - -// if ( !path.isEmpty() ) { -// CEditorWindow * editor = editorWindowFromUrl(path); -// if ( editor ) { -// editor->bringToTop(); -// } else { -// CMainWindow * _w = mainWindowFromViewId(event->get_SenderId()); -// if ( _w ) { -// _w->mainPanel()->doOpenLocalFiles(QStringList{path}); -// } -// } -// } - -// return true; -// } else -// if ( cmd.compare(L"open:recent") == 0 ) { -// QJsonObject objRoot = Utils::parseJson(pData->get_Param()); -// if ( !objRoot.isEmpty() ) { -// objRoot["type"].toString(); - -// COpenOptions opts{objRoot["path"].toString().toStdWString(), etRecentFile, objRoot["id"].toInt()}; -// opts.format = objRoot["type"].toInt(); - -// QRegularExpression re(rePortalName); -// QRegularExpressionMatch match = re.match(opts.url); - -// if ( !match.hasMatch() ) { -// QFileInfo _info(opts.url); -// if ( /*!data->get_IsRecover() &&*/ !_info.exists() ) { -// CMessage mess(m_pMainWindow->handle(), CMessageOpts::moButtons::mbYesDefNo); -// int modal_res = mess.warning(tr("%1 doesn't exists!
      Remove file from the list?").arg(_info.fileName())); - -// if (modal_res == MODAL_RESULT_CUSTOM) { -// AscAppManager::sendCommandTo(SEND_TO_ALL_START_PAGE, "file:skip", QString::number(opts.id)); -// } - -// return true; -// } -// } - -// m_private->openDocument(opts); -//// mainWindow()->mainPanel()->onLocalFileRecent(opts); -// } - -// return true; -// } else -// if ( cmd.compare(L"create:new") == 0 ) { -// wstring format = pData->get_Param(); -// int _f = format == L"word" ? AVS_OFFICESTUDIO_FILE_DOCUMENT_DOCX : -// format == L"cell" ? AVS_OFFICESTUDIO_FILE_SPREADSHEET_XLSX : -// format == L"slide" ? AVS_OFFICESTUDIO_FILE_PRESENTATION_PPTX : AVS_OFFICESTUDIO_FILE_UNKNOWN; - -// mainWindow()->mainPanel()->createLocalFile(AscAppManager::newFileName(_f), _f); -// return true; -// } else if ( !(cmd.find(L"uitheme:changed") == std::wstring::npos) ) { applyTheme( themes().parseThemeName(pData->get_Param()) ); return true; @@ -365,18 +308,6 @@ bool CAscApplicationManagerWrapper::processCommonEvent(NSEditorApi::CAscCefMenuE if ( !(cmd.find(L"files:check") == std::wstring::npos) ) { CExistanceController::check(QString::fromStdWString(pData->get_Param())); return true; -// } else -// if ( cmd.compare(L"open:document") == 0 ) { -// wstring _url = pData->get_Param(); -// if ( !_url.empty() ) { -// CCefView * _view = GetViewByUrl(_url); -// int _id = _view ? _view->GetId() : -1; -// if ( _url.rfind(L"http://",0) == 0 || _url.rfind(L"https://",0) == 0 ) { -// mainWindow()->mainPanel()->onCloudDocumentOpen(_url, _id, true); -// } else { -// /* open local file */ -// } -// } } else if ( !(cmd.find(L"system:changed") == std::wstring::npos) ) { QRegularExpression re(":\\s?\"(dark|light)"); diff --git a/win-linux/src/cthemes.cpp b/win-linux/src/cthemes.cpp index 0562c07fe..41b9aa61a 100644 --- a/win-linux/src/cthemes.cpp +++ b/win-linux/src/cthemes.cpp @@ -137,12 +137,12 @@ public: { if ( id != THEME_ID_SYSTEM ) { if ( rc_themes.find(id) != rc_themes.end() ) { - return current->load(rc_themes.at(id)); + return current->fromFile(rc_themes.at(id)); } } else { QString visual_theme_id = is_system_theme_dark ? THEME_DEFAULT_DARK_ID : THEME_DEFAULT_LIGHT_ID; if ( current->isDark() != is_system_theme_dark ) { - if ( !current->load(rc_themes.at(visual_theme_id)) ) + if ( !current->fromFile(rc_themes.at(visual_theme_id)) ) return false; } @@ -158,14 +158,14 @@ public: if ( type == NSTheme::ThemeType::ttDark ) { if ( !dark ) { dark = new CTheme; - dark->load(rc_themes[THEME_DEFAULT_DARK_ID]); + dark->fromFile(rc_themes[THEME_DEFAULT_DARK_ID]); } return dark; } else { if ( !light ) { light = new CTheme; - light->load(rc_themes[THEME_DEFAULT_LIGHT_ID]); + light->fromFile(rc_themes[THEME_DEFAULT_LIGHT_ID]); } return light; @@ -189,7 +189,7 @@ CTheme::CTheme(const QString& path) : m_priv(new CTheme::CThemePrivate) { if ( !path.isEmpty() ) - load(path); + fromFile(path); } CTheme::~CTheme() @@ -200,7 +200,7 @@ CTheme::~CTheme() } } -auto CTheme::load(const QString& path) -> bool +auto CTheme::fromFile(const QString& path) -> bool { QFile _file(path); if ( _file.open(QIODevice::ReadOnly) ) { diff --git a/win-linux/src/cthemes.h b/win-linux/src/cthemes.h index 87e5d7386..dd8303360 100644 --- a/win-linux/src/cthemes.h +++ b/win-linux/src/cthemes.h @@ -27,7 +27,7 @@ public: , ecrButtonNormalOpacity }; - auto load(const QString&) -> bool; + auto fromFile(const QString&) -> bool; auto id() const -> std::wstring; auto originalId() const -> std::wstring; From 7808b443f5164fe17ec52841d712760c7fe7c7f8 Mon Sep 17 00:00:00 2001 From: Maxim Kadushkin Date: Fri, 19 Aug 2022 12:36:27 +0300 Subject: [PATCH 49/76] [win-nix] another way to get appcast url --- win-linux/src/win/mainwindow.cpp | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) diff --git a/win-linux/src/win/mainwindow.cpp b/win-linux/src/win/mainwindow.cpp index 24635069c..35291af08 100644 --- a/win-linux/src/win/mainwindow.cpp +++ b/win-linux/src/win/mainwindow.cpp @@ -817,15 +817,21 @@ void CMainWindow::slot_mainPageReady() if ( osvi.dwMajorVersion > 5 && reg_system.value("CheckForUpdates", true).toBool() ) { win_sparkle_set_lang(CLangater::getCurrentLangCode().toLatin1()); + GET_REGISTRY_USER(_user); const std::wstring argname{L"--updates-appcast-url"}; - QString _appcast_url = !InputArgs::contains(argname) ? URL_APPCAST_UPDATES : QString::fromStdWString(InputArgs::argument_value(argname)); + if ( InputArgs::contains(argname) ) { + std::wstring _url = InputArgs::argument_value(argname); + if ( _url == L"default" ) _user.remove("updatesAppcastUrl"); + else _user.setValue("updatesAppcastUrl", QString::fromStdWString(_url)); + } + + QString _appcast_url = _user.value("updatesAppcastUrl", URL_APPCAST_UPDATES).toString(); static bool _init = false; if ( !_init ) { _init = true; QString _prod_name = WINDOW_NAME; - GET_REGISTRY_USER(_user) if (!_user.contains("CheckForUpdates")) { _user.setValue("CheckForUpdates", "1"); } From c38c8133ad65f1d54649038ef2f7c188b9ed3580 Mon Sep 17 00:00:00 2001 From: Semyon Bezrukov Date: Fri, 19 Aug 2022 18:54:42 +0300 Subject: [PATCH 50/76] Fix rpm build (#547) --- win-linux/package/linux/Makefile | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/win-linux/package/linux/Makefile b/win-linux/package/linux/Makefile index 8f17ad7cf..85f1dc359 100644 --- a/win-linux/package/linux/Makefile +++ b/win-linux/package/linux/Makefile @@ -60,7 +60,7 @@ TAR_BUILD_DIR = $(PWD)/tar RPM_PACKAGE_DIR = $(RPM_BUILD_DIR)/RPMS/$(RPM_ARCH) APT_RPM_PACKAGE_DIR = $(APT_RPM_BUILD_DIR)/RPMS/$(APT_RPM_ARCH) URPMI_PACKAGE_DIR = $(URPMI_BUILD_DIR)/RPMS/$(URPMI_ARCH) -SUSE_RPM_PACKAGE_DIR = $(RPM_BUILD_DIR)/RPMS/$(RPM_ARCH) +SUSE_RPM_PACKAGE_DIR = $(SUSE_RPM_BUILD_DIR)/RPMS/$(RPM_ARCH) TAR_PACKAGE_DIR = $(TAR_BUILD_DIR)/$(TAR_ARCH) RPM = $(RPM_PACKAGE_DIR)/$(PACKAGE_NAME)-$(PACKAGE_VERSION).$(RPM_ARCH).rpm From 2a7146d0fcc96093cab98648cc3065b3ca466899 Mon Sep 17 00:00:00 2001 From: Maxim Kadushkin Date: Mon, 22 Aug 2022 21:04:32 +0300 Subject: [PATCH 51/76] [win-nix] refactoring --- common/loginpage/src/css/colors.less | 2 -- common/loginpage/src/css/colors_dark.less | 10 ---------- win-linux/src/cthemes.cpp | 19 +++++++++++++------ win-linux/src/cthemes.h | 1 + 4 files changed, 14 insertions(+), 18 deletions(-) diff --git a/common/loginpage/src/css/colors.less b/common/loginpage/src/css/colors.less index 40eb22851..bd5e74df8 100644 --- a/common/loginpage/src/css/colors.less +++ b/common/loginpage/src/css/colors.less @@ -44,7 +44,6 @@ --text-contrast-background: #fff; --icon-normal: fade(#000, 80%); - --icon-notification-badge: #000; --disabled-element-opacity: .4; --theme-inverted-image-filter: none; @@ -94,7 +93,6 @@ @text-contrast-background: var(--text-contrast-background); @icon-normal: var(--icon-normal); -@icon-notification-badge: var(--icon-notification-badge); @disabled-element-opacity: var(--disabled-element-opacity); @theme-inverted-image-filter: var(--theme-inverted-image-filter); diff --git a/common/loginpage/src/css/colors_dark.less b/common/loginpage/src/css/colors_dark.less index a4f71a1e4..a985bcea1 100644 --- a/common/loginpage/src/css/colors_dark.less +++ b/common/loginpage/src/css/colors_dark.less @@ -1,15 +1,6 @@ :root { .theme-dark { - --color-gray-3: #cbcbcb; - --color-gray-4: #a5a5a5; - --color-gray-light: #999; - --color-gray: #666666; - - --color-blue-2: #5b9bea; - --color-blue-3: #5293e2; - --color-blue-light: #3a83db; - --background-normal: #333; --background-tabbar: #404040; --background-button: #333; @@ -45,7 +36,6 @@ --text-contrast-background: #fff; --icon-normal: fade(#fff, 80%); - --icon-notification-badge: #000; --disabled-element-opacity: .3; --theme-inverted-image-filter: invert(1); diff --git a/win-linux/src/cthemes.cpp b/win-linux/src/cthemes.cpp index 41b9aa61a..2f1c3a24c 100644 --- a/win-linux/src/cthemes.cpp +++ b/win-linux/src/cthemes.cpp @@ -204,13 +204,20 @@ auto CTheme::fromFile(const QString& path) -> bool { QFile _file(path); if ( _file.open(QIODevice::ReadOnly) ) { - QJsonParseError jerror; + return fromJson(_file.readAll()); + } - QJsonDocument jdoc = QJsonDocument::fromJson(_file.readAll(), &jerror); - if( jerror.error == QJsonParseError::NoError ) { - m_priv->fromJsonObject(jdoc.object()); - return true; - } + return false; +} + +auto CTheme::fromJson(const QString& json) -> bool +{ + QJsonParseError jerror; + + QJsonDocument jdoc = QJsonDocument::fromJson(json.toUtf8(), &jerror); + if ( jerror.error == QJsonParseError::NoError ) { + m_priv->fromJsonObject(jdoc.object()); + return true; } return false; diff --git a/win-linux/src/cthemes.h b/win-linux/src/cthemes.h index dd8303360..cc259aeaf 100644 --- a/win-linux/src/cthemes.h +++ b/win-linux/src/cthemes.h @@ -28,6 +28,7 @@ public: }; auto fromFile(const QString&) -> bool; + auto fromJson(const QString&) -> bool; auto id() const -> std::wstring; auto originalId() const -> std::wstring; From 4756e20c47a29d5d5d333ba15751b19f125803bc Mon Sep 17 00:00:00 2001 From: Maxim Kadushkin Date: Mon, 22 Aug 2022 21:08:58 +0300 Subject: [PATCH 52/76] [win-nix] refactoring --- win-linux/res/styles/styles.qss | 6 +++--- win-linux/res/styles/styles@1.25x.qss | 6 +++--- win-linux/res/styles/styles@1.5x.qss | 6 +++--- win-linux/res/styles/styles@1.75x.qss | 6 +++--- win-linux/res/styles/styles@2x.qss | 6 +++--- win-linux/src/cmainpanel.cpp | 2 ++ win-linux/src/cthemes.cpp | 19 ++++++------------- 7 files changed, 23 insertions(+), 28 deletions(-) diff --git a/win-linux/res/styles/styles.qss b/win-linux/res/styles/styles.qss index c5825edf1..513dc1acf 100644 --- a/win-linux/res/styles/styles.qss +++ b/win-linux/res/styles/styles.qss @@ -270,12 +270,12 @@ QPushButton#toolButtonDownload::menu-indicator { background: #555; } -#mainPanel[uitheme=theme-dark] QPushButton#toolButtonMaximize { +#mainPanel[uithemetype=dark] QPushButton#toolButtonMaximize { background-image:url(:/max_light.png); } -#mainPanel[uitheme=theme-dark] QPushButton#toolButtonMinimize, - #mainPanel[uitheme=theme-dark] QPushButton#toolButtonClose +#mainPanel[uithemetype=dark] QPushButton#toolButtonMinimize, + #mainPanel[uithemetype=dark] QPushButton#toolButtonClose { background-image:url(:/minclose_light.png); } diff --git a/win-linux/res/styles/styles@1.25x.qss b/win-linux/res/styles/styles@1.25x.qss index 3c245120e..079d63e52 100644 --- a/win-linux/res/styles/styles@1.25x.qss +++ b/win-linux/res/styles/styles@1.25x.qss @@ -112,12 +112,12 @@ QPushButton#toolButtonDownload::menu-indicator { /* dark theme definitions */ /**************************/ -#mainPanel[uitheme=theme-dark] QPushButton#toolButtonMaximize { +#mainPanel[uithemetype=dark] QPushButton#toolButtonMaximize { background-image:url(:/max_light_1.25x.png); } -#mainPanel[uitheme=theme-dark] QPushButton#toolButtonMinimize, - #mainPanel[uitheme=theme-dark] QPushButton#toolButtonClose +#mainPanel[uithemetype=dark] QPushButton#toolButtonMinimize, + #mainPanel[uithemetype=dark] QPushButton#toolButtonClose { background-image:url(:/minclose_light_1.25x.png); } diff --git a/win-linux/res/styles/styles@1.5x.qss b/win-linux/res/styles/styles@1.5x.qss index 90d27bd7b..4c3309441 100644 --- a/win-linux/res/styles/styles@1.5x.qss +++ b/win-linux/res/styles/styles@1.5x.qss @@ -113,12 +113,12 @@ QPushButton#toolButtonDownload::menu-indicator { /* dark theme definitions */ /**************************/ -#mainPanel[uitheme=theme-dark] QPushButton#toolButtonMaximize { +#mainPanel[uithemetype=dark] QPushButton#toolButtonMaximize { background-image:url(:/max_light_1.5x.png); } -#mainPanel[uitheme=theme-dark] QPushButton#toolButtonMinimize, - #mainPanel[uitheme=theme-dark] QPushButton#toolButtonClose +#mainPanel[uithemetype=dark] QPushButton#toolButtonMinimize, + #mainPanel[uithemetype=dark] QPushButton#toolButtonClose { background-image:url(:/minclose_light_1.5x.png); } diff --git a/win-linux/res/styles/styles@1.75x.qss b/win-linux/res/styles/styles@1.75x.qss index ef53b3c72..3b95e4c3d 100644 --- a/win-linux/res/styles/styles@1.75x.qss +++ b/win-linux/res/styles/styles@1.75x.qss @@ -115,12 +115,12 @@ QPushButton#toolButtonDownload::menu-indicator { /* dark theme definitions */ /**************************/ -#mainPanel[uitheme=theme-dark] QPushButton#toolButtonMaximize { +#mainPanel[uithemetype=dark] QPushButton#toolButtonMaximize { background-image:url(:/max_light_1.75x.png); } -#mainPanel[uitheme=theme-dark] QPushButton#toolButtonMinimize, - #mainPanel[uitheme=theme-dark] QPushButton#toolButtonClose +#mainPanel[uithemetype=dark] QPushButton#toolButtonMinimize, + #mainPanel[uithemetype=dark] QPushButton#toolButtonClose { background-image:url(:/minclose_light_1.75x.png); } diff --git a/win-linux/res/styles/styles@2x.qss b/win-linux/res/styles/styles@2x.qss index 61346051b..d7cc78009 100644 --- a/win-linux/res/styles/styles@2x.qss +++ b/win-linux/res/styles/styles@2x.qss @@ -121,12 +121,12 @@ QPushButton#toolButtonDownload::menu-indicator { /* dark theme definitions */ /**************************/ -#mainPanel[uitheme=theme-dark] QPushButton#toolButtonMaximize { +#mainPanel[uithemetype=dark] QPushButton#toolButtonMaximize { background-image:url(:/max_light_2x.png); } -#mainPanel[uitheme=theme-dark] QPushButton#toolButtonMinimize, - #mainPanel[uitheme=theme-dark] QPushButton#toolButtonClose +#mainPanel[uithemetype=dark] QPushButton#toolButtonMinimize, + #mainPanel[uithemetype=dark] QPushButton#toolButtonClose { background-image:url(:/minclose_light_2x.png); } diff --git a/win-linux/src/cmainpanel.cpp b/win-linux/src/cmainpanel.cpp index 75a651a05..519ad9898 100644 --- a/win-linux/src/cmainpanel.cpp +++ b/win-linux/src/cmainpanel.cpp @@ -99,6 +99,7 @@ CMainPanel::CMainPanel(QWidget *parent, bool isCustomWindow, double dpi_ratio) { setObjectName("mainPanel"); setProperty("uitheme", QString::fromStdWString(AscAppManager::themes().current().originalId())); + setProperty("uithemetype", AscAppManager::themes().current().stype()); m_pMainGridLayout = new QGridLayout(this); m_pMainGridLayout->setSpacing(0); m_pMainGridLayout->setObjectName(QString::fromUtf8("mainGridLayout")); @@ -1177,6 +1178,7 @@ void CMainPanel::onOutsideAuth(QString json) void CMainPanel::applyTheme(const std::wstring& theme) { this->setProperty("uitheme", QString::fromStdWString(theme)); + setProperty("uithemetype", AscAppManager::themes().current().stype()); for (int i(m_pTabs->count()); !(--i < 0);) { CAscTabData& _doc = *m_pTabs->panel(i)->data(); diff --git a/win-linux/src/cthemes.cpp b/win-linux/src/cthemes.cpp index 2f1c3a24c..41b9aa61a 100644 --- a/win-linux/src/cthemes.cpp +++ b/win-linux/src/cthemes.cpp @@ -204,20 +204,13 @@ auto CTheme::fromFile(const QString& path) -> bool { QFile _file(path); if ( _file.open(QIODevice::ReadOnly) ) { - return fromJson(_file.readAll()); - } + QJsonParseError jerror; - return false; -} - -auto CTheme::fromJson(const QString& json) -> bool -{ - QJsonParseError jerror; - - QJsonDocument jdoc = QJsonDocument::fromJson(json.toUtf8(), &jerror); - if ( jerror.error == QJsonParseError::NoError ) { - m_priv->fromJsonObject(jdoc.object()); - return true; + QJsonDocument jdoc = QJsonDocument::fromJson(_file.readAll(), &jerror); + if( jerror.error == QJsonParseError::NoError ) { + m_priv->fromJsonObject(jdoc.object()); + return true; + } } return false; From f8edcf83f96e5dc9b2c8fb3b7947877c2a00d8db Mon Sep 17 00:00:00 2001 From: Maxim Kadushkin Date: Mon, 22 Aug 2022 21:22:18 +0300 Subject: [PATCH 53/76] [win-nix] added "contrast dark" theme --- common/loginpage/src/locale.js | 1 + common/loginpage/src/panelsettings.js | 1 + common/loginpage/src/styles.less | 1 + win-linux/res/styles/message.qss | 38 ++++++++++++++ win-linux/res/styles/theme-contrast-dark.json | 28 +++++++++++ win-linux/res/styles/theme-contrast-dark.qss | 50 +++++++++++++++++++ win-linux/resources.qrc | 2 + .../src/cascapplicationmanagerwrapper.cpp | 1 + win-linux/src/ceditorwindow_p.h | 4 +- win-linux/src/cmainpanel.cpp | 8 ++- win-linux/src/cmessage.cpp | 2 +- win-linux/src/cthemes.cpp | 20 +++++--- 12 files changed, 143 insertions(+), 13 deletions(-) create mode 100644 win-linux/res/styles/theme-contrast-dark.json create mode 100644 win-linux/res/styles/theme-contrast-dark.qss diff --git a/common/loginpage/src/locale.js b/common/loginpage/src/locale.js index c7556f109..93a65c590 100644 --- a/common/loginpage/src/locale.js +++ b/common/loginpage/src/locale.js @@ -129,6 +129,7 @@ l10n.en = { updateNoUpdates: 'App is up to date', updateAvialable: 'Version $1 is available. Click to download.', settOptThemeSystem: 'System default', + settOptThemeContrastDark: 'Contrast dark', } diff --git a/common/loginpage/src/panelsettings.js b/common/loginpage/src/panelsettings.js index 0a35bc4bf..d2a8b0db9 100644 --- a/common/loginpage/src/panelsettings.js +++ b/common/loginpage/src/panelsettings.js @@ -115,6 +115,7 @@ +
      diff --git a/common/loginpage/src/styles.less b/common/loginpage/src/styles.less index 2ee9e6061..629a85021 100644 --- a/common/loginpage/src/styles.less +++ b/common/loginpage/src/styles.less @@ -10,6 +10,7 @@ @import 'css/colors'; @import 'css/colors_classic'; @import 'css/colors_dark'; +@import 'css/colors_contrast_dark'; @import 'css/variables'; @import 'css/component'; @import 'css/window'; diff --git a/win-linux/res/styles/message.qss b/win-linux/res/styles/message.qss index 9ae188d18..3142878a6 100644 --- a/win-linux/res/styles/message.qss +++ b/win-linux/res/styles/message.qss @@ -104,3 +104,41 @@ QPushButton { #messageBody[uitheme=theme-dark] QPushButton:pressed { background-color: #707070; } + +/* contrast theme definition */ +#messageBody[uitheme=theme-contrast-dark] { + background-color: #2a2a2a; + color: #e8e8e8; +} + +#messageBody[uitheme=theme-contrast-dark] QLabel { + color: #e8e8e8; +} + +#messageBody[uitheme=theme-contrast-dark] QPushButton { + background-color: #555; + color: #e8e8e8; + border: 1px solid #e8e8e8; +} + +#messageBody[uitheme=theme-contrast-dark][scaling="2x"] QPushButton, + #messageBody[uitheme=theme-contrast-dark][scaling="1.5x"] QPushButton +{ + border: 2px solid rgba#e8e8e8; +} + +#messageBody[uitheme=theme-contrast-dark] QPushButton:focus { + border: 2px solid #e6e6e6; +} + +#messageBody[uitheme=theme-contrast-dark][scaling="1.5x"] QPushButton:focus { + border-width: 3px; +} + +#messageBody[uitheme=theme-contrast-dark][scaling="2x"] QPushButton:focus { + border-width: 4px; +} + +#messageBody[uitheme=theme-contrast-dark] QPushButton:pressed { + background-color: #707070; +} diff --git a/win-linux/res/styles/theme-contrast-dark.json b/win-linux/res/styles/theme-contrast-dark.json new file mode 100644 index 000000000..078256090 --- /dev/null +++ b/win-linux/res/styles/theme-contrast-dark.json @@ -0,0 +1,28 @@ +{ + "id": "theme-contrast-dark", + "type": "dark", + "values": { + "brand_word": "#1e1e1e", + "brand_slide": "#1e1e1e", + "brand_cell": "#1e1e1e", + + "window_background": "#2a2a2a", + "window_border": "#616161", + + "text_normal": "#e8e8e8", + "text_normal_pressed": "#e8e8e8", + + "tool_button_hover_background": "#424242", + "tool_button_pressed_background": "#666666", + + "tab_active_background": "#121212", + "tab_simple_active_background": "#fff", + "tab_simple_active_text": "#444", + "tab_default_active_background": "#121212", + "tab_default_active_text": "#fff", + "tab_divider": "#414141", + + "button_normal_opacity": "rgba(255,255,255,200)", + "logo_type": "light" + } +} diff --git a/win-linux/res/styles/theme-contrast-dark.qss b/win-linux/res/styles/theme-contrast-dark.qss new file mode 100644 index 000000000..ea261b795 --- /dev/null +++ b/win-linux/res/styles/theme-contrast-dark.qss @@ -0,0 +1,50 @@ +#mainPanel[uitheme=theme-contrast-dark], +#mainPanel[uitheme=theme-contrast-dark] #tabWrapper, +#mainPanel[uitheme=theme-contrast-dark] #CX11Caption, +#mainPanel[uitheme=theme-contrast-dark] QTabBar +{ + background-color: #2a2a2a; +} + +#mainPanel[uitheme=theme-contrast-dark] QPushButton#toolButtonMain[class=active] { + background: #1e1e1e; +} + +#mainPanel[uitheme=theme-contrast-dark] QPushButton#toolButtonMain { + border-right-color: #414141; +} + +#mainPanel[uitheme=theme-contrast-dark] QPushButton#toolButtonMain[class=normal] { + background: #2a2a2a; +} + +#mainPanel[uitheme=theme-contrast-dark] QPushButton#toolButtonMain[class=normal]:hover { + background: #424242; +} + +#mainPanel[uitheme=theme-contrast-dark] QPushButton#toolButtonMinimize:hover, + #mainPanel[uitheme=theme-contrast-dark] QPushButton#toolButtonMaximize:hover +{ + background-color: #555; +} + +#mainPanel[uitheme=theme-contrast-dark] QTabBar QToolButton::left-arrow, + #mainPanel[uitheme=theme-contrast-dark] QTabBar QToolButton::right-arrow +{ + background-color: #f00; +} + +#mainPanel[uitheme=theme-contrast-dark] QTabBar QToolButton:pressed { + background-color: #f00; +} + + +#mainPanel[uitheme=theme-contrast-dark] QTabWidget::pane {background-color: #2a2a2a;} +#mainPanel[uitheme=theme-contrast-dark] QTabBar::tab {background-color: #2a2a2a; border-right-color: #414141;} +#mainPanel[uitheme=theme-contrast-dark] QTabBar::tab:hover {background-color: #424242;} +#mainPanel[uitheme=theme-contrast-dark] QTabBar::tab:selected {background-color: #2a2a2a;} +#mainPanel[uitheme=theme-contrast-dark] QTabBar[active=false]::tab:selected:hover {background-color: #424242;} + +#mainPanel[uitheme=theme-contrast-dark] #scrollerFrame>QToolButton {background-color: #424242;} +#mainPanel[uitheme=theme-contrast-dark] #scrollerFrame>QToolButton:hover {background-color: #525252;} +#mainPanel[uitheme=theme-contrast-dark] #scrollerFrame>QToolButton:pressed {background-color: #424242;} diff --git a/win-linux/resources.qrc b/win-linux/resources.qrc index 4f2c833ad..50a76e016 100644 --- a/win-linux/resources.qrc +++ b/win-linux/resources.qrc @@ -220,5 +220,7 @@ res/styles/theme-light.json res/styles/theme-classic-light.json res/styles/theme-dark.json + res/styles/theme-contrast-dark.json + res/styles/theme-contrast-dark.qss diff --git a/win-linux/src/cascapplicationmanagerwrapper.cpp b/win-linux/src/cascapplicationmanagerwrapper.cpp index 59312347b..cf9f08330 100644 --- a/win-linux/src/cascapplicationmanagerwrapper.cpp +++ b/win-linux/src/cascapplicationmanagerwrapper.cpp @@ -1401,6 +1401,7 @@ QString CAscApplicationManagerWrapper::getWindowStylesheets(CScalingFactor facto APP_CAST(_app); QByteArray _out = Utils::readStylesheets(&_app.m_mapStyles[CScalingFactor::SCALING_FACTOR_1]); + _out.append(Utils::readStylesheets(":/themes/theme-contrast-dark.qss")); if ( factor != CScalingFactor::SCALING_FACTOR_1 ) _out.append(Utils::readStylesheets(&_app.m_mapStyles[factor])); diff --git a/win-linux/src/ceditorwindow_p.h b/win-linux/src/ceditorwindow_p.h index 964a9c7cc..a344d1e93 100644 --- a/win-linux/src/ceditorwindow_p.h +++ b/win-linux/src/ceditorwindow_p.h @@ -110,7 +110,9 @@ const QString g_css = "#mainPanel[zoom=\"2x\"][window=pretty] QPushButton#toolButtonClose {background-image:url(:/minclose_light_2x.png);}" "#mainPanel[zoom=\"2x\"][window=pretty] QPushButton#toolButtonMaximize{background-image:url(:/max_light_2x.png);}" "#mainPanel[uitheme=theme-dark] #iconuser," - "#mainPanel[uitheme=theme-dark] #labelTitle{color:rgba(255,255,255,80%);}"; + "#mainPanel[uitheme=theme-dark] #labelTitle{color:rgba(255,255,255,80%);}" + "#mainPanel[uitheme=theme-contrast-dark] #iconuser," + "#mainPanel[uitheme=theme-contrast-dark] #labelTitle{color:#e8e8e8;}"; auto prepare_editor_css(int type, const CTheme& theme) -> QString { std::wstring c; diff --git a/win-linux/src/cmainpanel.cpp b/win-linux/src/cmainpanel.cpp index 519ad9898..3d1bc9fb9 100644 --- a/win-linux/src/cmainpanel.cpp +++ b/win-linux/src/cmainpanel.cpp @@ -1236,14 +1236,12 @@ void CMainPanel::updateScaling(double dpiratio) //m_pButtonMain->setGeometry(0, 0, int(BUTTON_MAIN_WIDTH * dpiratio), int(TITLE_HEIGHT * dpiratio)); m_pButtonMain->setFixedSize(int(BUTTON_MAIN_WIDTH * dpiratio), int(TITLE_HEIGHT * dpiratio)); - const QString _tabs_stylesheets = ":/sep-styles/tabbar@" + QString::number(dpiratio) + "x.qss"; - QFile styleFile(_tabs_stylesheets); - styleFile.open( QFile::ReadOnly ); - const QString _style = QString(styleFile.readAll()); + const std::string _tabs_stylesheets = ":/sep-styles/tabbar@" + QString::number(dpiratio).toStdString() + "x.qss"; + std::vector _files{_tabs_stylesheets, ":/themes/theme-contrast-dark.qss"}; + QString _style = Utils::readStylesheets(&_files); m_pTabBarWrapper->applyTheme(_style); m_pTabs->setStyleSheet(_style); m_pTabs->updateScaling(dpiratio); - styleFile.close(); // std::map > icons; // if ( dpiratio > 1 ) { diff --git a/win-linux/src/cmessage.cpp b/win-linux/src/cmessage.cpp index 16ccd1d71..d275b18a4 100644 --- a/win-linux/src/cmessage.cpp +++ b/win-linux/src/cmessage.cpp @@ -160,7 +160,7 @@ CMessage::CMessage(QWidget * p) layout()->setSizeConstraint(QLayout::SetFixedSize); #endif m_centralWidget->setObjectName("messageBody"); - m_centralWidget->setProperty("uitheme", AscAppManager::themes().current().isDark() ? "theme-dark" : "theme-light"); + m_centralWidget->setProperty("uitheme", QString::fromStdWString(AscAppManager::themes().current().originalId())); QVBoxLayout * _c_layout = new QVBoxLayout; QHBoxLayout * _h_layout2 = new QHBoxLayout; diff --git a/win-linux/src/cthemes.cpp b/win-linux/src/cthemes.cpp index 41b9aa61a..934036447 100644 --- a/win-linux/src/cthemes.cpp +++ b/win-linux/src/cthemes.cpp @@ -91,6 +91,7 @@ public: {"theme-light", ":/themes/theme-light.json"}, {"theme-classic-light", ":/themes/theme-classic-light.json"}, {"theme-dark", ":/themes/theme-dark.json"}, + {"theme-contrast-dark", ":/themes/theme-contrast-dark.json"}, }; GET_REGISTRY_USER(_reg_user); @@ -204,13 +205,20 @@ auto CTheme::fromFile(const QString& path) -> bool { QFile _file(path); if ( _file.open(QIODevice::ReadOnly) ) { - QJsonParseError jerror; + return fromJson(_file.readAll()); + } - QJsonDocument jdoc = QJsonDocument::fromJson(_file.readAll(), &jerror); - if( jerror.error == QJsonParseError::NoError ) { - m_priv->fromJsonObject(jdoc.object()); - return true; - } + return false; +} + +auto CTheme::fromJson(const QString& json) -> bool +{ + QJsonParseError jerror; + + QJsonDocument jdoc = QJsonDocument::fromJson(json.toUtf8(), &jerror); + if ( jerror.error == QJsonParseError::NoError ) { + m_priv->fromJsonObject(jdoc.object()); + return true; } return false; From 50b2ece0731e0464acd805f8053a8a27b8950683 Mon Sep 17 00:00:00 2001 From: Maxim Kadushkin Date: Tue, 23 Aug 2022 10:22:18 +0300 Subject: [PATCH 54/76] [start page] added missed styles --- .../src/css/colors_contrast_dark.less | 43 +++++++++++++++++++ 1 file changed, 43 insertions(+) create mode 100644 common/loginpage/src/css/colors_contrast_dark.less diff --git a/common/loginpage/src/css/colors_contrast_dark.less b/common/loginpage/src/css/colors_contrast_dark.less new file mode 100644 index 000000000..b56cd8935 --- /dev/null +++ b/common/loginpage/src/css/colors_contrast_dark.less @@ -0,0 +1,43 @@ + +:root { + .theme-contrast-dark { + --background-normal: #1e1e1e; + --background-tabbar: #2a2a2a; + --background-button: #1e1e1e; + --background-primary-button: #e6e6e6; + --background-accent-button: #3483db; + --background-scrim: fade(#000, 60%); + --background-scroll-thumb: #424242; + + --highlight-button-hover: #424242; + --highlight-button-pressed: #666666; + --highlight-button-pressed-hover: #666666; + --highlight-accent-button-hover: #5293e2; + --highlight-accent-button-pressed: #3475c5; + --highlight-primary-button-hover: #a6a6a6; + --highlight-primary-button-pressed: #a6a6a6; + --highlight-header-button-hover: #424242; + --highlight-text-select: #96c8fd; + --highlight-scroll-thumb-hover: #666666; + --highlight-scroll-track-hover: fade(#fff, 3%); + + --border-tabbar: #616161; + --border-divider: #414141; + --border-regular-control: #696969; + --border-control-focus: #b8b8b8; + --border-error: #f62211; + + --text-normal: #e8e8e8; + --text-normal-pressed: #e8e8e8; + --text-secondary: #b8b8b8; + --text-tertiary: #888; + --text-link: #acbfff; + --text-inverse: #121212; + --text-contrast-background: #fff; + + --icon-normal: #e8e8e8; + + --disabled-element-opacity: .3; + --theme-inverted-image-filter: invert(1); + } +} From a9570023090a5080292960a7822a04f7ff32c0b4 Mon Sep 17 00:00:00 2001 From: Roman Demidov Date: Tue, 23 Aug 2022 12:14:11 +0300 Subject: [PATCH 55/76] Fix --new-document-templates feature (#548) --- win-linux/package/linux/common/usr/bin/desktopeditors.m4 | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/win-linux/package/linux/common/usr/bin/desktopeditors.m4 b/win-linux/package/linux/common/usr/bin/desktopeditors.m4 index e747fdf1b..6e1fa86ae 100644 --- a/win-linux/package/linux/common/usr/bin/desktopeditors.m4 +++ b/win-linux/package/linux/common/usr/bin/desktopeditors.m4 @@ -52,7 +52,8 @@ set_names() { NEW_PPTX_NAME="Новая презентация" ;; *) - SOURCE_DOC_NAME="mm_new" + SOURCE_DOC_DIR="$SOURCE_DOC_DIR/en-US" + SOURCE_DOC_NAME="new" NEW_DOCX_NAME="New Document" NEW_XLSX_NAME="New Spreadsheet" NEW_PPTX_NAME="New Presentation" From c7fa20e548e73f978ac875ecce2401c9b460c321 Mon Sep 17 00:00:00 2001 From: Eugene Kozyrev <67453079+EugeneKozyrev@users.noreply.github.com> Date: Tue, 23 Aug 2022 12:42:37 +0300 Subject: [PATCH 56/76] Add vcredist_2013 install (#549) --- win-linux/package/windows/common.iss | 3 +++ 1 file changed, 3 insertions(+) diff --git a/win-linux/package/windows/common.iss b/win-linux/package/windows/common.iss index 018695224..8969aa6b8 100644 --- a/win-linux/package/windows/common.iss +++ b/win-linux/package/windows/common.iss @@ -901,6 +901,9 @@ Name: {commonappdata}\{#APP_PATH}\webdata\cloud; Flags: uninsalwaysuninstall; [Files] +Source: data\vcredist\vcredist_2013_{#sWinArch}.exe; DestDir: {app}; Flags: deleteafterinstall; \ + AfterInstall: installVCRedist(ExpandConstant('{app}\vcredist_2013_{#sWinArch}.exe'), ExpandConstant('{cm:InstallAdditionalComponents}')); \ + Check: not checkVCRedist2013; Source: data\vcredist\vcredist_2022_{#sWinArch}.exe; DestDir: {app}; Flags: deleteafterinstall; \ AfterInstall: installVCRedist(ExpandConstant('{app}\vcredist_2022_{#sWinArch}.exe'), ExpandConstant('{cm:InstallAdditionalComponents}')); \ Check: not checkVCRedist2022; From ea546b2d814501e4cacb2234e3eb30ac962fb501 Mon Sep 17 00:00:00 2001 From: Eugene Kozyrev <67453079+EugeneKozyrev@users.noreply.github.com> Date: Wed, 24 Aug 2022 11:08:58 +0300 Subject: [PATCH 57/76] Bugfix #58510/Fix a bug of reinstall every time files are opened by Windows users with limited rights (#550) * Edit installation components * Remove QuickLaunch shortcut --- win-linux/package/windows/DesktopEditors.aip | 21 +++++++------------- 1 file changed, 7 insertions(+), 14 deletions(-) diff --git a/win-linux/package/windows/DesktopEditors.aip b/win-linux/package/windows/DesktopEditors.aip index 6ac29e0d5..93ec32b13 100644 --- a/win-linux/package/windows/DesktopEditors.aip +++ b/win-linux/package/windows/DesktopEditors.aip @@ -95,12 +95,8 @@ - - - - @@ -113,6 +109,7 @@ + @@ -120,7 +117,6 @@ - @@ -129,7 +125,6 @@ - @@ -266,7 +261,6 @@ - @@ -467,7 +461,7 @@ - + @@ -665,7 +659,6 @@ - @@ -760,7 +753,6 @@ - @@ -777,7 +769,6 @@ - @@ -792,6 +783,8 @@ + + @@ -906,6 +899,7 @@ + @@ -930,9 +924,8 @@ - - - + + From 491fcb90aaf98ad9f720feb11867878167319385 Mon Sep 17 00:00:00 2001 From: Eugene Kozyrev <67453079+EugeneKozyrev@users.noreply.github.com> Date: Wed, 24 Aug 2022 11:10:10 +0300 Subject: [PATCH 58/76] Bugfix #57939 --- win-linux/package/windows/DesktopEditors.aip | 36 +++++++++----------- win-linux/package/windows/utils.vbs | 2 +- 2 files changed, 17 insertions(+), 21 deletions(-) diff --git a/win-linux/package/windows/DesktopEditors.aip b/win-linux/package/windows/DesktopEditors.aip index 93ec32b13..ffa69ab11 100644 --- a/win-linux/package/windows/DesktopEditors.aip +++ b/win-linux/package/windows/DesktopEditors.aip @@ -700,11 +700,8 @@ - - - - - + + @@ -809,12 +806,12 @@ - + - - + + @@ -825,30 +822,29 @@ - - - - - + + + + - - - + + + - + - - - + + + diff --git a/win-linux/package/windows/utils.vbs b/win-linux/package/windows/utils.vbs index da87eec2d..bb0f7cc84 100644 --- a/win-linux/package/windows/utils.vbs +++ b/win-linux/package/windows/utils.vbs @@ -32,7 +32,7 @@ Function UninstallOlderVersion If Button = 1 Then objShell.Run RegistryPath, 0, True ElseIf Session.Property("UILevel") = 2 Then - objShell.Run RegistryPath + " /SILENT", 0, True + objShell.Run RegistryPath + " /VERYSILENT", 0, True Else Session.Property("UninstallOlderVersion") = "1" End If From d72361a8c00d3889ad0943dc887c9bc679f38ac9 Mon Sep 17 00:00:00 2001 From: maxkadushkin Date: Wed, 24 Aug 2022 16:36:47 +0300 Subject: [PATCH 59/76] [macos] support for "Contrast dark" theme --- macos/ONLYOFFICE.xcodeproj/project.pbxproj | 10 ++ .../Controllers/Common/ASCEventsController.mm | 3 +- .../Controllers/Common/ASCThemesController.h | 62 ++++++++++++ .../Controllers/Common/ASCThemesController.m | 98 +++++++++++++++++++ .../MainWindow/ASCTitleBarController.m | 27 ++--- .../Code/Controls/ASCTabs/ASCTabView.m | 13 +-- .../Extensions/NSApplication+Extensions.h | 1 - .../Extensions/NSApplication+Extensions.m | 7 -- .../Code/Extensions/NSColor+Extensions.h | 3 - .../Code/Extensions/NSColor+Extensions.m | 18 ---- macos/ONLYOFFICE/Code/Utils/ASCConstants.h | 1 + 11 files changed, 189 insertions(+), 54 deletions(-) create mode 100644 macos/ONLYOFFICE/Code/Controllers/Common/ASCThemesController.h create mode 100644 macos/ONLYOFFICE/Code/Controllers/Common/ASCThemesController.m diff --git a/macos/ONLYOFFICE.xcodeproj/project.pbxproj b/macos/ONLYOFFICE.xcodeproj/project.pbxproj index cec027752..e29c949f8 100644 --- a/macos/ONLYOFFICE.xcodeproj/project.pbxproj +++ b/macos/ONLYOFFICE.xcodeproj/project.pbxproj @@ -31,6 +31,9 @@ 5AA06CBD27AC3BA000D67BEE /* ASCLinguist.m in Sources */ = {isa = PBXBuildFile; fileRef = 5AA06CBC27AC3BA000D67BEE /* ASCLinguist.m */; }; 5AA06CC027B1267200D67BEE /* ASCLinguist.m in Sources */ = {isa = PBXBuildFile; fileRef = 5AA06CBC27AC3BA000D67BEE /* ASCLinguist.m */; }; 5AA06CC127B1267600D67BEE /* ASCLinguist.m in Sources */ = {isa = PBXBuildFile; fileRef = 5AA06CBC27AC3BA000D67BEE /* ASCLinguist.m */; }; + 5AAE526D28B53B9A001E31F4 /* ASCThemesController.m in Sources */ = {isa = PBXBuildFile; fileRef = 5AAE526C28B53B9A001E31F4 /* ASCThemesController.m */; }; + 5AAE526E28B53B9A001E31F4 /* ASCThemesController.m in Sources */ = {isa = PBXBuildFile; fileRef = 5AAE526C28B53B9A001E31F4 /* ASCThemesController.m */; }; + 5AAE526F28B53B9A001E31F4 /* ASCThemesController.m in Sources */ = {isa = PBXBuildFile; fileRef = 5AAE526C28B53B9A001E31F4 /* ASCThemesController.m */; }; 5AB20F60274D35F3003732A0 /* file-docxf.icns in Resources */ = {isa = PBXBuildFile; fileRef = 5AB20F5D274D35F2003732A0 /* file-docxf.icns */; }; 5AB20F62274D360A003732A0 /* file-oform.icns in Resources */ = {isa = PBXBuildFile; fileRef = 5AB20F61274D360A003732A0 /* file-oform.icns */; }; 5AFA1CF1277A6D2900619952 /* file-docxf.icns in Resources */ = {isa = PBXBuildFile; fileRef = 5AB20F5D274D35F2003732A0 /* file-docxf.icns */; }; @@ -775,6 +778,8 @@ 5A9F8D382848AA06007CA93F /* file-xlsm.icns */ = {isa = PBXFileReference; lastKnownFileType = image.icns; path = "file-xlsm.icns"; sourceTree = ""; }; 5AA06CBB27AC3BA000D67BEE /* ASCLinguist.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = ASCLinguist.h; sourceTree = ""; }; 5AA06CBC27AC3BA000D67BEE /* ASCLinguist.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = ASCLinguist.m; sourceTree = ""; }; + 5AAE526C28B53B9A001E31F4 /* ASCThemesController.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = ASCThemesController.m; sourceTree = ""; }; + 5AAE527028B53C1F001E31F4 /* ASCThemesController.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = ASCThemesController.h; sourceTree = ""; }; 5AB20F5D274D35F2003732A0 /* file-docxf.icns */ = {isa = PBXFileReference; lastKnownFileType = image.icns; path = "file-docxf.icns"; sourceTree = ""; }; 5AB20F61274D360A003732A0 /* file-oform.icns */ = {isa = PBXFileReference; lastKnownFileType = image.icns; path = "file-oform.icns"; sourceTree = ""; }; BE6251B922BD089100656116 /* dictionaries */ = {isa = PBXFileReference; lastKnownFileType = folder; name = dictionaries; path = ../../../../dictionaries; sourceTree = ""; }; @@ -1717,6 +1722,8 @@ FC3B77841BB2A94300DB9705 /* ASCEventsController.mm */, FCF2897F21510C16002FD438 /* ASCExternalController.h */, FCF2898021510C16002FD438 /* ASCExternalController.m */, + 5AAE526C28B53B9A001E31F4 /* ASCThemesController.m */, + 5AAE527028B53C1F001E31F4 /* ASCThemesController.h */, ); path = Common; sourceTree = ""; @@ -2299,6 +2306,7 @@ FC0BD693258B63F700C47F95 /* ASCMenuButtonCell.m in Sources */, FC0BD694258B63F700C47F95 /* SFBPopoverWindow.m in Sources */, FC0BD695258B63F700C47F95 /* NSWindow+Extensions.m in Sources */, + 5AAE526F28B53B9A001E31F4 /* ASCThemesController.m in Sources */, FC0BD696258B63F700C47F95 /* ASCHelper.m in Sources */, FC0BD697258B63F700C47F95 /* ASCUserInfoViewController.m in Sources */, FC0BD698258B63F700C47F95 /* NSColor+Extensions.m in Sources */, @@ -2373,6 +2381,7 @@ FCB4C6CA26DD018B0012C20D /* ASCMenuButtonCell.m in Sources */, FCB4C6CB26DD018B0012C20D /* SFBPopoverWindow.m in Sources */, FCB4C6CC26DD018B0012C20D /* NSWindow+Extensions.m in Sources */, + 5AAE526D28B53B9A001E31F4 /* ASCThemesController.m in Sources */, FCB4C6CD26DD018B0012C20D /* ASCHelper.m in Sources */, FCB4C6CE26DD018B0012C20D /* ASCUserInfoViewController.m in Sources */, FCB4C6CF26DD018B0012C20D /* NSColor+Extensions.m in Sources */, @@ -2447,6 +2456,7 @@ FCC77C79206CEE5B001B7837 /* ASCMenuButtonCell.m in Sources */, FC3BFE011BBE83AB0040C904 /* SFBPopoverWindow.m in Sources */, FCF2897D21510403002FD438 /* NSWindow+Extensions.m in Sources */, + 5AAE526E28B53B9A001E31F4 /* ASCThemesController.m in Sources */, FCA0B3551B9F006F0073EDD4 /* ASCHelper.m in Sources */, FCAF3EFD1BA31D3C00B42BAA /* ASCUserInfoViewController.m in Sources */, FC73E6F3207E15BB00EFFD2F /* NSColor+Extensions.m in Sources */, diff --git a/macos/ONLYOFFICE/Code/Controllers/Common/ASCEventsController.mm b/macos/ONLYOFFICE/Code/Controllers/Common/ASCEventsController.mm index 8c4d7a8c5..ffda006c7 100644 --- a/macos/ONLYOFFICE/Code/Controllers/Common/ASCEventsController.mm +++ b/macos/ONLYOFFICE/Code/Controllers/Common/ASCEventsController.mm @@ -51,6 +51,7 @@ #import "mac_application.h" #import "NSApplication+Extensions.h" #import "ASCEditorJSVariables.h" +#import "ASCThemesController.h" #pragma mark - #pragma mark ======================================================== @@ -744,7 +745,7 @@ public: NSRange range = [match rangeAtIndex:1]; NSString * new_theme_type = [json substringWithRange:range]; - if ( [NSApplication isUIThemeDark] != [new_theme_type isEqualToString:@"dark"] ) { + if ( [ASCThemesController isCurrentThemeDark] != [new_theme_type isEqualToString:@"dark"] ) { [[ASCSharedSettings sharedInstance] setSetting:new_theme_type forKey:kSettingsColorScheme]; [[NSNotificationCenter defaultCenter] postNotificationName:ASCEventNameChangedUITheme object:nil diff --git a/macos/ONLYOFFICE/Code/Controllers/Common/ASCThemesController.h b/macos/ONLYOFFICE/Code/Controllers/Common/ASCThemesController.h new file mode 100644 index 000000000..a36b4dbe8 --- /dev/null +++ b/macos/ONLYOFFICE/Code/Controllers/Common/ASCThemesController.h @@ -0,0 +1,62 @@ +/* + * (c) Copyright Ascensio System SIA 2010-2022 + * + * This program is a free software product. You can redistribute it and/or + * modify it under the terms of the GNU Affero General Public License (AGPL) + * version 3 as published by the Free Software Foundation. In accordance with + * Section 7(a) of the GNU AGPL its Section 15 shall be amended to the effect + * that Ascensio System SIA expressly excludes the warranty of non-infringement + * of any third-party rights. + * + * This program is distributed WITHOUT ANY WARRANTY; without even the implied + * warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. For + * details, see the GNU AGPL at: http://www.gnu.org/licenses/agpl-3.0.html + * + * You can contact Ascensio System SIA at 20A-12 Ernesta Birznieka-Upisha + * street, Riga, Latvia, EU, LV-1050. + * + * The interactive user interfaces in modified source and object code versions + * of the Program must display Appropriate Legal Notices, as required under + * Section 5 of the GNU AGPL version 3. + * + * Pursuant to Section 7(b) of the License you must retain the original Product + * logo when distributing the program. Pursuant to Section 7(e) we decline to + * grant you any rights under trademark law for use of our trademarks. + * + * All the Product's GUI elements, including illustrations and icon sets, as + * well as technical writing content are licensed under the terms of the + * Creative Commons Attribution-ShareAlike 4.0 International. See the License + * terms at http://creativecommons.org/licenses/by-sa/4.0/legalcode + * +*/ + +// +// ASCThemesController.h +// ONLYOFFICE +// +// Created by Maxim.Kadushkin on 23/08/2022. +// Copyright © 2022 Ascensio System SIA. All rights reserved. +// + +#ifndef ASCThemesController_h +#define ASCThemesController_h + +#import +#import + +static NSString * const btnPortalActiveBackgroundColor = @"portal-button-background-active-color"; +static NSString * const tabWordActiveBackgroundColor = @"tab-word-background-active-color"; +static NSString * const tabCellActiveBackgroundColor = @"tab-cell-background-active-color"; +static NSString * const tabSlideActiveBackgroundColor = @"tab-slide-background-active-color"; + +@interface ASCThemesController : NSObject + ++ (NSString*)currentThemeId; ++ (BOOL)isCurrentThemeDark; ++ (NSString*)defaultThemeId:(BOOL)isdark; ++ (NSColor*)color:(NSString*)name forTheme:(NSString*)theme; ++ (NSColor*)currentThemeColor:(NSString*)name; + +@end + +#endif /* ASCThemesController_h */ diff --git a/macos/ONLYOFFICE/Code/Controllers/Common/ASCThemesController.m b/macos/ONLYOFFICE/Code/Controllers/Common/ASCThemesController.m new file mode 100644 index 000000000..6e7ed08ca --- /dev/null +++ b/macos/ONLYOFFICE/Code/Controllers/Common/ASCThemesController.m @@ -0,0 +1,98 @@ +/* + * (c) Copyright Ascensio System SIA 2010-2022 + * + * This program is a free software product. You can redistribute it and/or + * modify it under the terms of the GNU Affero General Public License (AGPL) + * version 3 as published by the Free Software Foundation. In accordance with + * Section 7(a) of the GNU AGPL its Section 15 shall be amended to the effect + * that Ascensio System SIA expressly excludes the warranty of non-infringement + * of any third-party rights. + * + * This program is distributed WITHOUT ANY WARRANTY; without even the implied + * warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. For + * details, see the GNU AGPL at: http://www.gnu.org/licenses/agpl-3.0.html + * + * You can contact Ascensio System SIA at 20A-12 Ernesta Birznieka-Upisha + * street, Riga, Latvia, EU, LV-1050. + * + * The interactive user interfaces in modified source and object code versions + * of the Program must display Appropriate Legal Notices, as required under + * Section 5 of the GNU AGPL version 3. + * + * Pursuant to Section 7(b) of the License you must retain the original Product + * logo when distributing the program. Pursuant to Section 7(e) we decline to + * grant you any rights under trademark law for use of our trademarks. + * + * All the Product's GUI elements, including illustrations and icon sets, as + * well as technical writing content are licensed under the terms of the + * Creative Commons Attribution-ShareAlike 4.0 International. See the License + * terms at http://creativecommons.org/licenses/by-sa/4.0/legalcode + * +*/ + +// +// ASCThemesController.m +// ONLYOFFICE +// +// Created by Maxim.Kadushkin on 23/08/2022. +// Copyright © 2022 Ascensio System SIA. All rights reserved. +// + +#import "ASCThemesController.h" +#import "ASCConstants.h" +#import "ASCSharedSettings.h" +#import "NSColor+Extensions.h" +#import "NSApplication+Extensions.h" + + +@implementation ASCThemesController + ++ (NSString*)currentThemeId { + return [[NSUserDefaults standardUserDefaults] valueForKey:ASCUserUITheme]; +} + ++ (BOOL)isCurrentThemeDark { + NSString * theme = [[NSUserDefaults standardUserDefaults] valueForKey:ASCUserUITheme]; + if ([uiThemeSystem isEqualToString:theme]) { + return [@"dark" isEqualToString:[[ASCSharedSettings sharedInstance] settingByKey:kSettingsColorScheme]]; + } else return [uiThemeDark isEqualToString:theme] || [uiThemeContrastDark isEqualToString:theme]; +} + ++ (NSString*)defaultThemeId:(BOOL)isdark { + return isdark ? uiThemeDark : uiThemeClassicLight; +} + ++ (NSColor*)currentThemeColor:(NSString*)name { + return [self color:name forTheme:[self currentThemeId]]; +} + ++ (NSColor*)color:(NSString*)name forTheme:(NSString*)theme { + if ( [theme isEqualToString: uiThemeSystem] ) + theme = [self defaultThemeId:[NSApplication isSystemDarkMode]]; + + if ([name isEqualToString:btnPortalActiveBackgroundColor]) { + if ( [theme isEqualToString:uiThemeDark] ) return UIColorFromRGB(0x333333); + else if ( [theme isEqualToString:uiThemeContrastDark] ) return UIColorFromRGB(0x1e1e1e); + else { + if ( @available(macOS 10.13, *) ) + return [NSColor colorNamed:@"tab-portal-activeColor"]; + else return kColorRGBA(255, 255, 255, 1.0); + } + } else if ([name isEqualToString:tabWordActiveBackgroundColor]) { + if ( [theme isEqualToString:uiThemeDark] ) return UIColorFromRGB(0x2a2a2a); + else if ( [theme isEqualToString:uiThemeContrastDark] ) return UIColorFromRGB(0x1e1e1e); + else return [NSColor brendDocumentEditor]; + } else if ([name isEqualToString:tabCellActiveBackgroundColor]) { + if ( [theme isEqualToString:uiThemeDark] ) return UIColorFromRGB(0x2a2a2a); + else if ( [theme isEqualToString:uiThemeContrastDark] ) return UIColorFromRGB(0x1e1e1e); + else return [NSColor brendSpreadsheetEditor]; + } else if ([name isEqualToString:tabSlideActiveBackgroundColor]) { + if ( [theme isEqualToString:uiThemeDark] ) return UIColorFromRGB(0x2a2a2a); + else if ( [theme isEqualToString:uiThemeContrastDark] ) return UIColorFromRGB(0x1e1e1e); + else return [NSColor brendPresentationEditor]; + } + + return NULL; +} + +@end diff --git a/macos/ONLYOFFICE/Code/Controllers/MainWindow/ASCTitleBarController.m b/macos/ONLYOFFICE/Code/Controllers/MainWindow/ASCTitleBarController.m index 0312c7f5f..151477395 100644 --- a/macos/ONLYOFFICE/Code/Controllers/MainWindow/ASCTitleBarController.m +++ b/macos/ONLYOFFICE/Code/Controllers/MainWindow/ASCTitleBarController.m @@ -51,6 +51,7 @@ #import "ASCDownloadController.h" #import "ASCMenuButtonCell.h" #import "ASCDocumentType.h" +#import "ASCThemesController.h" static float kASCWindowDefaultTrafficButtonsLeftMargin = 0; static float kASCWindowMinTitleWidth = 0; @@ -190,9 +191,8 @@ static float kASCWindowMinTitleWidth = 0; portalButtonCell.lineColor = kColorRGBA(255, 255, 255, 0.0); } - if ( [NSApplication isUIThemeDark] ) { - portalButtonCell.bgActiveColor = UIColorFromRGB(0x333333); - + if ( [ASCThemesController isCurrentThemeDark] ) { + portalButtonCell.bgActiveColor = [ASCThemesController currentThemeColor:btnPortalActiveBackgroundColor]; [self.portalButton setImage:[NSImage imageNamed:@"logo-tab-light"]]; } } @@ -329,29 +329,20 @@ static float kASCWindowMinTitleWidth = 0; if (notification && notification.userInfo) { NSDictionary * params = (NSDictionary *)notification.userInfo; NSString * theme = params[@"uitheme"]; - Boolean useSystemTheme = [theme isEqualToString: uiThemeSystem]; - if ( useSystemTheme ) { - theme = [NSApplication isSystemDarkMode] ? uiThemeDark : uiThemeClassicLight; + if ( [theme isEqualToString: uiThemeSystem] ) { + theme = [ASCThemesController defaultThemeId:[NSApplication isSystemDarkMode]]; } ASCMenuButtonCell * portalButtonCell = self.portalButton.cell; - if ( [theme isEqualToString:uiThemeDark] ) { - portalButtonCell.bgActiveColor = UIColorFromRGB(0x333333); - } else { - if ( @available(macOS 10.13, *) ) - portalButtonCell.bgActiveColor = [NSColor colorNamed:@"tab-portal-activeColor"]; - else portalButtonCell.bgActiveColor = kColorRGBA(255, 255, 255, 1.0); - } + portalButtonCell.bgActiveColor = [ASCThemesController color:btnPortalActiveBackgroundColor forTheme:theme]; + [self.portalButton setNeedsDisplay]; if ( [self.portalButton state] != NSControlStateValueOn ) { [NSApplication isSystemDarkMode] ? [self.portalButton setImage:[NSImage imageNamed:@"logo-tab-light"]] : [self.portalButton setImage:[NSImage imageNamed:@"logo-tab-dark"]]; - - if ( useSystemTheme ) - [self.portalButton setNeedsDisplay]; } else { - [theme isEqualToString:uiThemeDark] ? [self.portalButton setImage:[NSImage imageNamed:@"logo-tab-light"]] : + [ASCThemesController isCurrentThemeDark] ? [self.portalButton setImage:[NSImage imageNamed:@"logo-tab-light"]] : [self.portalButton setImage:[NSImage imageNamed:@"logo-tab-dark"]]; } @@ -450,7 +441,7 @@ static float kASCWindowMinTitleWidth = 0; else [self.portalButton setImage:[NSImage imageNamed:@"logo-tab-dark"]]; } else { [self.portalButton setState:NSControlStateValueOn]; - [self.portalButton setImage:[NSImage imageNamed:[NSApplication isUIThemeDark] ? @"logo-tab-light" : @"logo-tab-dark"]]; + [self.portalButton setImage:[NSImage imageNamed:[ASCThemesController isCurrentThemeDark] ? @"logo-tab-light" : @"logo-tab-dark"]]; } } diff --git a/macos/ONLYOFFICE/Code/Controls/ASCTabs/ASCTabView.m b/macos/ONLYOFFICE/Code/Controls/ASCTabs/ASCTabView.m index ff757c440..105b54f4e 100644 --- a/macos/ONLYOFFICE/Code/Controls/ASCTabs/ASCTabView.m +++ b/macos/ONLYOFFICE/Code/Controls/ASCTabs/ASCTabView.m @@ -43,6 +43,7 @@ #import "ASCTabViewCell.h" #import "NSColor+Extensions.h" #import "NSApplication+Extensions.h" +#import "ASCThemesController.h" static NSUInteger const kASTabViewCloseButtonSize = 12; @@ -221,24 +222,24 @@ static NSUInteger const kASTabViewCloseButtonSize = 12; } tabViewCell.activeTextColor = [tabViewCell.activeColor isLight] ? NSColor.blackColor : NSColor.whiteColor; } else if (type == ASCTabViewTypeDocument) { - tabViewCell.activeColor = [NSColor themedDocumentEditor]; - tabViewCell.clickColor = [NSColor themedDocumentEditor]; + tabViewCell.activeColor = [ASCThemesController currentThemeColor:tabWordActiveBackgroundColor]; + tabViewCell.clickColor = [ASCThemesController currentThemeColor:tabWordActiveBackgroundColor]; if (@available(macOS 10.13, *)) { tabViewCell.activeTextColor = [NSColor colorNamed:@"tab-editorsActiveTextColor"]; } else { tabViewCell.activeTextColor = UIColorFromRGB(0xffffff); } } else if (type == ASCTabViewTypeSpreadsheet) { - tabViewCell.activeColor = [NSColor themedSpreadsheetEditor]; - tabViewCell.clickColor = [NSColor themedSpreadsheetEditor]; + tabViewCell.activeColor = [ASCThemesController currentThemeColor:tabCellActiveBackgroundColor]; + tabViewCell.clickColor = [ASCThemesController currentThemeColor:tabCellActiveBackgroundColor]; if (@available(macOS 10.13, *)) { tabViewCell.activeTextColor = [NSColor colorNamed:@"tab-editorsActiveTextColor"]; } else { tabViewCell.activeTextColor = UIColorFromRGB(0xffffff); } } else if (type == ASCTabViewTypePresentation) { - tabViewCell.activeColor = [NSColor themedPresentationEditor]; - tabViewCell.clickColor = [NSColor themedPresentationEditor]; + tabViewCell.activeColor = [ASCThemesController currentThemeColor:tabSlideActiveBackgroundColor]; + tabViewCell.clickColor = [ASCThemesController currentThemeColor:tabSlideActiveBackgroundColor]; if (@available(macOS 10.13, *)) { tabViewCell.activeTextColor = [NSColor colorNamed:@"tab-editorsActiveTextColor"]; } else { diff --git a/macos/ONLYOFFICE/Code/Extensions/NSApplication+Extensions.h b/macos/ONLYOFFICE/Code/Extensions/NSApplication+Extensions.h index 45b3117ab..32e188091 100644 --- a/macos/ONLYOFFICE/Code/Extensions/NSApplication+Extensions.h +++ b/macos/ONLYOFFICE/Code/Extensions/NSApplication+Extensions.h @@ -43,6 +43,5 @@ @interface NSApplication (Extensions) + (BOOL)isSystemDarkMode; -+ (BOOL)isUIThemeDark; @end diff --git a/macos/ONLYOFFICE/Code/Extensions/NSApplication+Extensions.m b/macos/ONLYOFFICE/Code/Extensions/NSApplication+Extensions.m index 82dc83050..ce78d928d 100644 --- a/macos/ONLYOFFICE/Code/Extensions/NSApplication+Extensions.m +++ b/macos/ONLYOFFICE/Code/Extensions/NSApplication+Extensions.m @@ -56,11 +56,4 @@ return false; } -+ (BOOL)isUIThemeDark { - NSString * theme = [[NSUserDefaults standardUserDefaults] valueForKey:ASCUserUITheme]; - if ([uiThemeSystem isEqualToString:theme]) { - return [@"dark" isEqualToString:[[ASCSharedSettings sharedInstance] settingByKey:kSettingsColorScheme]]; - } else return [uiThemeDark isEqualToString:theme]; -} - @end diff --git a/macos/ONLYOFFICE/Code/Extensions/NSColor+Extensions.h b/macos/ONLYOFFICE/Code/Extensions/NSColor+Extensions.h index 251506e43..56d5b91cd 100644 --- a/macos/ONLYOFFICE/Code/Extensions/NSColor+Extensions.h +++ b/macos/ONLYOFFICE/Code/Extensions/NSColor+Extensions.h @@ -55,9 +55,6 @@ + (NSColor *) brendDocumentEditor; + (NSColor *) brendSpreadsheetEditor; + (NSColor *) brendPresentationEditor; -+ (NSColor *) themedDocumentEditor; -+ (NSColor *) themedSpreadsheetEditor; -+ (NSColor *) themedPresentationEditor; @end @interface NSColor (Extensions) diff --git a/macos/ONLYOFFICE/Code/Extensions/NSColor+Extensions.m b/macos/ONLYOFFICE/Code/Extensions/NSColor+Extensions.m index 390095087..bfc3e04e0 100644 --- a/macos/ONLYOFFICE/Code/Extensions/NSColor+Extensions.m +++ b/macos/ONLYOFFICE/Code/Extensions/NSColor+Extensions.m @@ -67,24 +67,6 @@ return UIColorFromRGB(0xaa5252); } -+ (NSColor *) themedDocumentEditor { - if ( [NSApplication isUIThemeDark] ) { - return UIColorFromRGB(0x2a2a2a); - } else return [NSColor brendDocumentEditor]; -} - -+ (NSColor *) themedSpreadsheetEditor { - if ( [NSApplication isUIThemeDark] ) { - return UIColorFromRGB(0x2a2a2a); - } else return [NSColor brendSpreadsheetEditor]; -} - -+ (NSColor *) themedPresentationEditor { - if ( [NSApplication isUIThemeDark] ) { - return UIColorFromRGB(0x2a2a2a); - } else return [NSColor brendPresentationEditor]; -} - @end #pragma mark - Extensions diff --git a/macos/ONLYOFFICE/Code/Utils/ASCConstants.h b/macos/ONLYOFFICE/Code/Utils/ASCConstants.h index 10b24403b..6cb61b125 100644 --- a/macos/ONLYOFFICE/Code/Utils/ASCConstants.h +++ b/macos/ONLYOFFICE/Code/Utils/ASCConstants.h @@ -72,6 +72,7 @@ static NSString * const kRegistrationPortalUrl = @"kRegistrationPor static NSString * const uiThemeLight = @"theme-light"; static NSString * const uiThemeClassicLight = @"theme-classic-light"; static NSString * const uiThemeDark = @"theme-dark"; +static NSString * const uiThemeContrastDark = @"theme-contrast-dark"; static NSString * const uiThemeSystem = @"theme-system"; // Custom schemes From 8ed8f78230be3b4d4b44ee41a041a03e80b174bc Mon Sep 17 00:00:00 2001 From: Maxim Kadushkin Date: Thu, 25 Aug 2022 21:00:38 +0300 Subject: [PATCH 60/76] [start page] changed Settings page markup --- common/loginpage/src/panels.js | 4 +++ common/loginpage/src/panelsettings.js | 41 +++++++++++++++++++++++++-- common/loginpage/src/styles.less | 6 +++- 3 files changed, 47 insertions(+), 4 deletions(-) diff --git a/common/loginpage/src/panels.js b/common/loginpage/src/panels.js index 6cc75d917..3e3313163 100644 --- a/common/loginpage/src/panels.js +++ b/common/loginpage/src/panels.js @@ -126,6 +126,8 @@ function onActionClick(e) { app.controller.recent.view.updatelistsize(); } }); + + CommonEvents.fire('panel:show', [action]); } }; @@ -134,6 +136,8 @@ function selectAction(action) { $('.tool-menu a[action='+action+']').parent().addClass('selected'); $('.action-panel').hide(); $('.action-panel.' + action).show(); + + CommonEvents.fire('panel:show', [action]); }; function hideAction(action, hide) { diff --git a/common/loginpage/src/panelsettings.js b/common/loginpage/src/panelsettings.js index d2a8b0db9..2e00a0246 100644 --- a/common/loginpage/src/panelsettings.js +++ b/common/loginpage/src/panelsettings.js @@ -151,9 +151,12 @@ +
      + +
      -
      - +
      +
      @@ -390,6 +393,8 @@ }); } } + + $('.settings-field:visible:last').css('margin-bottom','0'); } else if (/updates/.test(cmd)) { let $settnode = $('#opts-checkupdate', $panel), @@ -419,6 +424,33 @@ const on_system_theme_dark = e => sdk.command("system:changed", JSON.stringify({'colorscheme': e.target.matches ? THEME_TYPE_DARK:THEME_TYPE_LIGHT})); + const on_window_resize = function(e) { + if ( !this.resize_elems ) return; + + if ( !this.resize_elems.opened ) { + this.resize_elems = { + statH: $('.settings .table-caption').outerHeight(true) + $('#sett-tools-dyn').outerHeight(true), + boxElem: $('#box-settings'), + settItems: $('section.settings-items'), + btnDyn: $('#sett-tools-dyn'), + btnStat: $('#sett-tools-stat'), + } + } + + this.resize_elems.settItems.height() + this.resize_elems.statH > this.resize_elems.boxElem.height() ? + (this.resize_elems.btnDyn.hide(), this.resize_elems.btnStat.show()) : (this.resize_elems.btnDyn.show(), this.resize_elems.btnStat.hide()); + }; + + const on_panel_show = function(panel) { + if ( panel == this.action ) { + !this.resize_elems && (this.resize_elems = { opened: false }); + + if ( !this.resize_elems.opened ) { + on_window_resize.call(this); + } + } + } + return { init: function() { baseController.prototype.init.apply(this, arguments); @@ -431,7 +463,7 @@ }); $panel = me.view.$panel; - $btnApply = me.view.$panel.find('#sett-btn-apply'); + $btnApply = me.view.$panel.find('.sett-btn--apply'); $userName = me.view.$panel.find('#sett-box-user > input'); $chOpenMode = me.view.$panel.find('#sett-preview-mode'); @@ -471,6 +503,9 @@ window.matchMedia('(prefers-color-scheme: dark)').addEventListener('change', on_system_theme_dark.bind(this)); // on_system_theme_dark({target: window.matchMedia('(prefers-color-scheme: dark)')}); + $(window).on('resize', on_window_resize.bind(this)); + CommonEvents.on('panel:show', on_panel_show.bind(this)); + return this; } }; diff --git a/common/loginpage/src/styles.less b/common/loginpage/src/styles.less index 629a85021..a5710d968 100644 --- a/common/loginpage/src/styles.less +++ b/common/loginpage/src/styles.less @@ -969,7 +969,11 @@ li.menu-item { .settings-field { text-align: left; - margin-bottom: 35px; + margin-top: 35px; + + &:first-of-type { + margin-top: 0; + } .tbox { width: 350px; From 354d8e9d00736406cf37e9b3d63e760e55c4bc0b Mon Sep 17 00:00:00 2001 From: Maria-Sukhova Date: Fri, 26 Aug 2022 16:05:01 +0300 Subject: [PATCH 61/76] added new lines ru (locale) --- common/loginpage/locale/ru.js | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/common/loginpage/locale/ru.js b/common/loginpage/locale/ru.js index 099bd4de4..16e5eaa2c 100644 --- a/common/loginpage/locale/ru.js +++ b/common/loginpage/locale/ru.js @@ -90,4 +90,10 @@ l10n.ru = { settOptLaunchMode: 'Открыть файл', settOptLaunchInTab: 'Во вкладке', settOptLaunchInWindow: 'В окне', + settOptDisabled: 'Отключено', + aboutChangelog: 'Журнал изменений', + updateNoUpdates: 'Приложение обновлено', + updateAvialable: 'Доступна версия $1. Нажмите, чтобы скачать.', + settOptThemeSystem: 'Системная', + settOptThemeContrastDark: 'Темная контрастная', } From d17e610000d2c22c07113a1b1be069aec3453749 Mon Sep 17 00:00:00 2001 From: Semyon Bezrukov Date: Fri, 26 Aug 2022 16:08:03 +0300 Subject: [PATCH 62/76] Add desktopeditors-help package build (#552) --- .gitignore | 1 + win-linux/package/linux/Makefile | 35 ++++++++++++------- .../package/linux/deb/template/control.m4 | 9 +++++ .../deb/template/package-help.install.m4 | 1 + win-linux/package/linux/rpm/common.spec | 22 ++++++++++++ 5 files changed, 55 insertions(+), 13 deletions(-) create mode 100644 win-linux/package/linux/deb/template/package-help.install.m4 diff --git a/.gitignore b/.gitignore index 525b47b64..d948be66f 100644 --- a/.gitignore +++ b/.gitignore @@ -12,6 +12,7 @@ win-linux/package/windows/index.html win-linux/package/linux/common/opt win-linux/package/linux/common/usr/share/applications/variables.m4 win-linux/package/linux/common/usr/share/flyfm/templates/desktopeditors.*.desktop +win-linux/package/linux/common/help /win-linux/package/linux/deb*/build /win-linux/package/linux/deb*/*.buildinfo /win-linux/package/linux/deb*/*.changes diff --git a/win-linux/package/linux/Makefile b/win-linux/package/linux/Makefile index 85f1dc359..94535686d 100644 --- a/win-linux/package/linux/Makefile +++ b/win-linux/package/linux/Makefile @@ -29,7 +29,7 @@ UNAME_M ?= $(shell uname -m) ifeq ($(UNAME_M),x86_64) RPM_ARCH = x86_64 DEB_ARCH = amd64 - TAR_ARCH = x64 + TAR_ARCH = x86_64 URPMI_ARCH = x86_64 APT_RPM_ARCH = x86_64 ARCHITECTURE = 64 @@ -61,7 +61,7 @@ RPM_PACKAGE_DIR = $(RPM_BUILD_DIR)/RPMS/$(RPM_ARCH) APT_RPM_PACKAGE_DIR = $(APT_RPM_BUILD_DIR)/RPMS/$(APT_RPM_ARCH) URPMI_PACKAGE_DIR = $(URPMI_BUILD_DIR)/RPMS/$(URPMI_ARCH) SUSE_RPM_PACKAGE_DIR = $(SUSE_RPM_BUILD_DIR)/RPMS/$(RPM_ARCH) -TAR_PACKAGE_DIR = $(TAR_BUILD_DIR)/$(TAR_ARCH) +TAR_PACKAGE_DIR = $(TAR_BUILD_DIR) RPM = $(RPM_PACKAGE_DIR)/$(PACKAGE_NAME)-$(PACKAGE_VERSION).$(RPM_ARCH).rpm APT_RPM = $(APT_RPM_PACKAGE_DIR)/$(PACKAGE_NAME)-$(PACKAGE_VERSION).$(APT_RPM_ARCH).rpm @@ -70,6 +70,7 @@ SUSE_RPM = $(SUSE_RPM_PACKAGE_DIR)/$(PACKAGE_NAME)-$(PACKAGE_VERSION).$(RPM_ARCH DEB = deb/$(PACKAGE_NAME)_$(PACKAGE_VERSION)_$(DEB_ARCH).deb DEB_ASTRA = deb-astra/$(PACKAGE_NAME)_$(PACKAGE_VERSION)-astra_$(DEB_ARCH).deb TAR = $(TAR_PACKAGE_DIR)/$(PACKAGE_NAME)-$(PACKAGE_VERSION)-$(TAR_ARCH).tar.gz +HELP_TAR = $(TAR_PACKAGE_DIR)/$(PACKAGE_NAME)-help-$(PACKAGE_VERSION)-any.tar.xz ifeq ($(COMPANY_NAME), ONLYOFFICE) DESKTOPEDITORS_PREFIX := $(COMPANY_NAME_LOW)/$(PRODUCT_NAME_LOW) @@ -112,6 +113,7 @@ DEB_DEPS += deb/build/debian/source/format DEB_DEPS += deb/build/debian/$(PACKAGE_NAME).dirs DEB_DEPS += deb/build/debian/$(PACKAGE_NAME).install DEB_DEPS += deb/build/debian/$(PACKAGE_NAME).links +DEB_DEPS += deb/build/debian/$(PACKAGE_NAME)-help.install DEB_ASTRA_DEPS += deb-astra/build/debian/changelog DEB_ASTRA_DEPS += deb-astra/build/debian/compat @@ -133,6 +135,7 @@ INSTALLER_DEPENDENCY += desktopeditor USR_LIB_X64 := /usr/lib/x86_64-linux-gnu SRC += ../../../../build_tools/out/linux_$(ARCHITECTURE)/$(DESKTOPEDITORS_PREFIX) +HELP_SRC = ../../../../build_tools/out/linux_$(ARCHITECTURE)/$(DESKTOPEDITORS_PREFIX)-help ifneq ($(COMPANY_NAME), ONLYOFFICE) SRC += ../../../../build_tools/out/linux_$(ARCHITECTURE)/$(MEDIAVIEWER_PREFIX) endif @@ -203,7 +206,7 @@ deb: $(DEB) deb-astra: $(DEB_ASTRA) -tar: $(TAR) +tar: $(TAR) $(HELP_TAR) apt-rpm: $(APT_RPM) @@ -217,9 +220,9 @@ rpm_aarch64 : $(RPM) installer: $(INSTALLER) -PACKAGES += deb rpm apt-rpm urpmi suse-rpm tar +PACKAGES += $(DEB) $(RPM) $(APT_RPM) $(URPMI) $(SUSE_RPM) $(TAR) $(HELP_TAR) ifneq ($(COMPANY_NAME), ONLYOFFICE) -PACKAGES += deb-astra +PACKAGES += $(DEB_ASTRA) endif packages: $(PACKAGES) @@ -228,6 +231,7 @@ clean: rm -rfv \ common/etc \ common/opt \ + common/help \ $(LINUX_DEPS) \ deb/build \ deb/*.buildinfo \ @@ -264,6 +268,8 @@ ifneq ($(COMPANY_NAME), ONLYOFFICE) chmod 755 common/opt/mediaviewer/ImageViewer chmod 755 common/opt/mediaviewer/VideoPlayer endif + mkdir -p common/help + cp -rf $(HELP_SRC)/. common/help/desktopeditors qt-redist: cp -r -L -t common/opt/desktopeditors/ \ @@ -300,6 +306,9 @@ deb/build/debian/% : deb/template/%.m4 deb/build/debian/$(PACKAGE_NAME).% : deb/template/package.%.m4 mkdir -pv $(@D) && m4 $(M4_PARAMS) $< > $@ +deb/build/debian/$(PACKAGE_NAME)-help.% : deb/template/package-help.%.m4 + mkdir -pv $(@D) && m4 $(M4_PARAMS) $< > $@ + deb-astra/build/debian/% : deb/template/% mkdir -pv $(@D) && cp -fv $< $@ @@ -342,14 +351,14 @@ $(SUSE_RPM): desktopeditor suse-rpm/$(PACKAGE_NAME).spec package.spec $(TAR): desktopeditor - mkdir -p $(TAR_PACKAGE_DIR) -ifeq ($(COMPANY_NAME), ONLYOFFICE) - mkdir -p common/opt/desktopeditors/app - cp $(DESKTOP_FILES) common/opt/desktopeditors/app - tar -czf $@ --owner=root --group=root -C common/opt desktopeditors -else - tar -czf $@ --owner=root --group=root -C common/opt desktopeditors mediaviewer -endif + mkdir -p $(TAR_PACKAGE_DIR) common/opt/desktopeditors/app + cp -ft common/opt/desktopeditors/app $(DESKTOP_FILES) + tar -cz --owner=root --group=root \ + --xform=s:^common/opt:: -f"$@" common/opt + +$(HELP_TAR): desktopeditor + tar -cI"xz -9T0" --owner=root --group=root \ + --xform=s:^common/help:: -f"$@" common/help $(INSTALLER): $(INSTALLER_DEPENDENCY) cd qt-installer && ./make-install.sh diff --git a/win-linux/package/linux/deb/template/control.m4 b/win-linux/package/linux/deb/template/control.m4 index 657698b68..33a515f75 100644 --- a/win-linux/package/linux/deb/template/control.m4 +++ b/win-linux/package/linux/deb/template/control.m4 @@ -32,3 +32,12 @@ ifelse(M4_PACKAGE_EDITION, full, Recommends: ttf-mscorefonts-installer, fonts-takao-gothic Description: M4_COMPANY_NAME M4_PRODUCT_NAME installation package M4_COMPANY_NAME M4_PRODUCT_NAME is an application for editing office documents (text documents, spreadsheets and presentations) from M4_COMPANY_NAME cloud portal on local computer without browser using. + +Package: M4_PACKAGE_NAME-help +Architecture: all +Pre-Depends: dpkg (>= 1.14.0) +Depends: + M4_PACKAGE_NAME +Description: M4_COMPANY_NAME M4_PRODUCT_NAME local help files + M4_COMPANY_NAME M4_PRODUCT_NAME is an application for editing office documents (text documents, spreadsheets and presentations) from M4_COMPANY_NAME cloud portal on local computer without browser using. + This package contains the local help files. diff --git a/win-linux/package/linux/deb/template/package-help.install.m4 b/win-linux/package/linux/deb/template/package-help.install.m4 new file mode 100644 index 000000000..f28c8af2b --- /dev/null +++ b/win-linux/package/linux/deb/template/package-help.install.m4 @@ -0,0 +1 @@ +../../common/help/desktopeditors/* opt/M4_DESKTOPEDITORS_PREFIX diff --git a/win-linux/package/linux/rpm/common.spec b/win-linux/package/linux/rpm/common.spec index df5c13dca..0191057b8 100644 --- a/win-linux/package/linux/rpm/common.spec +++ b/win-linux/package/linux/rpm/common.spec @@ -14,6 +14,16 @@ AutoProv: no %{_company_name} %{_product_name} installation package %{_company_name} %{_product_name} is an application for editing office documents (text documents, spreadsheets and presentations) from %{_company_name} cloud portal on local computer without browser using. +%package help +Summary: Desktop editors local help files +BuildArch: noarch +Requires: %{_package_name} + +%description help +%{_company_name} %{_product_name} local help files + %{_company_name} %{_product_name} is an application for editing office documents (text documents, spreadsheets and presentations) from %{_company_name} cloud portal on local computer without browser using. + This package contains the local help files. + %prep rm -rf "%{buildroot}" @@ -51,6 +61,9 @@ cp -t $DATA_DIR/applications \ ln -srf $BIN_DIR/%{_desktopeditors_exec} $BIN_DIR/%{_package_name} %endif +# help +cp -r $COMMON/help/desktopeditors/* $DESKTOPEDITORS_PREFIX/ + %clean rm -rf "%{buildroot}" @@ -66,6 +79,15 @@ rm -rf "%{buildroot}" %attr(-, root, root) %{_bindir}/%{_package_name} %attr(777, root, root) %{_sysconfdir}/%{_package_name} %endif +%exclude /opt/%{_desktopeditors_prefix}/editors/web-apps/apps/documenteditor/main/resources/help +%exclude /opt/%{_desktopeditors_prefix}/editors/web-apps/apps/presentationeditor/main/resources/help +%exclude /opt/%{_desktopeditors_prefix}/editors/web-apps/apps/spreadsheeteditor/main/resources/help + +%files help +%defattr(-, root, root, -) +/opt/%{_desktopeditors_prefix}/editors/web-apps/apps/documenteditor/main/resources/help +/opt/%{_desktopeditors_prefix}/editors/web-apps/apps/presentationeditor/main/resources/help +/opt/%{_desktopeditors_prefix}/editors/web-apps/apps/spreadsheeteditor/main/resources/help %pre From e27a01c189a152ff65faa16fc0fd5bf256b0cfd3 Mon Sep 17 00:00:00 2001 From: Maria-Sukhova Date: Fri, 26 Aug 2022 19:01:33 +0300 Subject: [PATCH 63/76] added new keys (locale) --- common/loginpage/locale/ca.js | 2 ++ common/loginpage/locale/de.js | 7 +++++++ common/loginpage/locale/es.js | 2 ++ common/loginpage/locale/fr.js | 13 ++++++++++--- common/loginpage/locale/hy.js | 28 +++++++++++++++------------- common/loginpage/locale/it.js | 7 +++++++ common/loginpage/locale/ja.js | 7 +++++++ common/loginpage/locale/pt-BR.js | 2 ++ common/loginpage/locale/pt-PT.js | 2 ++ common/loginpage/locale/ro.js | 2 ++ common/loginpage/locale/ru.js | 1 + common/loginpage/locale/zh-CN.js | 7 +++++++ common/loginpage/locale/zh-HK.js | 2 ++ 13 files changed, 66 insertions(+), 16 deletions(-) diff --git a/common/loginpage/locale/ca.js b/common/loginpage/locale/ca.js index bf6996997..dd54252f1 100644 --- a/common/loginpage/locale/ca.js +++ b/common/loginpage/locale/ca.js @@ -90,4 +90,6 @@ l10n.ca = { settOptLaunchMode: 'Obre fitxer', settOptLaunchInTab: 'En una pestanya', settOptLaunchInWindow: 'En una finestra', + settOptThemeSystem: 'Igual que el sistema', + settOptThemeContrastDark: 'Contrast fosc', } diff --git a/common/loginpage/locale/de.js b/common/loginpage/locale/de.js index dfe853d94..98dd9b67a 100644 --- a/common/loginpage/locale/de.js +++ b/common/loginpage/locale/de.js @@ -90,4 +90,11 @@ l10n.de = { settOptLaunchMode: 'Datei öffnen', settOptLaunchInTab: 'in einer Registerkarte', settOptLaunchInWindow: 'in einem Fenster', + settSpellcheckDetection: 'Sprachenerkennung für Rechtschreibprüfung', + settOptDisabled: 'Deaktiviert', + aboutChangelog: 'Änderungsliste', + updateNoUpdates: 'Die letzte App-Version installiert', + updateAvialable: 'Version $1 ist verfügbar. Klicken Sie hier zum Herunterladen.', + settOptThemeSystem: 'Wie im System', + settOptThemeContrastDark: 'Dunkler Kontrast', } diff --git a/common/loginpage/locale/es.js b/common/loginpage/locale/es.js index 1f20f7ce9..7d7337026 100644 --- a/common/loginpage/locale/es.js +++ b/common/loginpage/locale/es.js @@ -86,4 +86,6 @@ l10n.es = { settOptLaunchMode: 'Abrir archivo', settOptLaunchInTab: 'En pestaña', settOptLaunchInWindow: 'En ventana', + settOptThemeSystem: 'Igual que el sistema', + settOptThemeContrastDark: 'Contraste oscuro', } diff --git a/common/loginpage/locale/fr.js b/common/loginpage/locale/fr.js index e9e09bf70..683856d80 100644 --- a/common/loginpage/locale/fr.js +++ b/common/loginpage/locale/fr.js @@ -9,7 +9,7 @@ l10n.fr = { btnBrowse: 'Parcourir', btnNext: 'Suivant', portalEmptyTitle: 'Connecter au cloud', - portalEmptyDescr: 'Stockez vos documents dans le cloud et accédez-y partout, à tout moment. Сollaborez à vos documents et partagez-les. Chattez dans les document, ajoutez des commentaires ou partagez les document en mode révision.', + portalEmptyDescr: 'Stockez vos documents dans le cloud et accédez-y partout, à tout moment. Сollaborez à vos documents et partagez-les. Chattez dans les document, ajoutez des commentaires ou partagez les document en mode révision.', portalEmptyAdv1: 'Vous n\'avez pas encore de compte Cloud ? Accéder en ligne avec ONLYOFFICE et essayez les capacités de gestion collaborative gratuitement.', portalListTitle: 'Cloud connectés', textNoFiles: 'Il n\'y a pas de fichiers', @@ -44,7 +44,7 @@ l10n.fr = { pshPhone: 'numéro de téléphone', pshCode: 'code reçu par SMS', loginNoteAssignPhone: 'L\'authentification à deux facteurs est activée pour fournir une sécurité de ONLYOFFICE cloud supplémentaire. Entrez votre numéro de téléphone portable pour continuer à travailler sur le bureau cloud. Le numéro de téléphone portable doit être entré en utilisant un format international avec le code du pays.', - loginNoteApplyCode: 'L\'authentification à deux facteurs est activée. Le code a été envoyé au $1.', + loginNoteApplyCode: 'L\'authentification à deux facteurs est activée. Le code a été envoyé au $1.', newDoc: 'Document', newXlsx: 'Classeur', newPptx: 'Presentation', @@ -83,11 +83,18 @@ l10n.fr = { settScaling: 'Dimensionnement de l\'interface', settOptScalingAuto: 'Auto', aboutProFeaturesAvailable: 'Avec l\'accès aux fonctionnalités avancées', - settUITheme: 'Thème d’interface', + settUITheme: 'Thème d\'interface', settOptThemeLight: 'Clair', settOptThemeClassicLight: 'Classique clair', settOptThemeDark: 'Sombre', settOptLaunchMode: 'Ouvrir fichier', settOptLaunchInTab: 'Dans un onglet', settOptLaunchInWindow: 'Dans une fenêtre', + settSpellcheckDetection: 'Détection de la langue de vérification linguistique', + settOptDisabled: 'Désactivée', + aboutChangelog: 'Journal des modifications', + updateNoUpdates: 'Application est mise à jour', + updateAvialable: 'Version $1 est disponible. Cliquez pour télécharger.', + settOptThemeSystem: 'Identique à système', + settOptThemeContrastDark: 'Contraste sombre', } diff --git a/common/loginpage/locale/hy.js b/common/loginpage/locale/hy.js index 17f44bab5..cbc4145ad 100644 --- a/common/loginpage/locale/hy.js +++ b/common/loginpage/locale/hy.js @@ -82,17 +82,19 @@ l10n.hy = { settOptCheckWeek: 'Ամեն շաբաթ', settScaling: 'Ինտերֆեյսի մասշտաբավորում', settOptScalingAuto: 'Ավտոմատ', - aboutProFeaturesAvailable: 'Պրոֆեսիոնալ գործառույթների հասանելիությամբ' - ,settUITheme: 'Ինտերֆեյսի թեմա' - ,settOptThemeLight: 'Բաց' - ,settOptThemeClassicLight: 'Դասական բաց' - ,settOptThemeDark: 'Մուգ' - ,settOptLaunchMode: 'Բացել ֆայլը' - ,settOptLaunchInTab: 'Ներդիրում' - ,settOptLaunchInWindow: 'Պատուհանում' - ,settSpellcheckDetection: 'Ուղղագրական լեզվի հայտնաբերում' - ,settOptDisabled: 'Անջատված է' - ,aboutChangelog: 'Փոփոխությունների օրագիր' - ,updateNoUpdates: 'Հավելվածը թարմացված է' - ,updateAvialable: '$1 տարբերակը հասանելի է։Սեղմեք՝ ներբեռնելու համար։' + aboutProFeaturesAvailable: 'Պրոֆեսիոնալ գործառույթների հասանելիությամբ', + settUITheme: 'Ինտերֆեյսի թեմա', + settOptThemeLight: 'Բաց', + settOptThemeClassicLight: 'Դասական բաց', + settOptThemeDark: 'Մուգ', + settOptLaunchMode: 'Բացել ֆայլը', + settOptLaunchInTab: 'Ներդիրում', + settOptLaunchInWindow: 'Պատուհանում', + settSpellcheckDetection: 'Ուղղագրական լեզվի հայտնաբերում', + settOptDisabled: 'Անջատված է', + aboutChangelog: 'Փոփոխությունների օրագիր', + updateNoUpdates: 'Հավելվածը թարմացված է', + updateAvialable: '$1 տարբերակը հասանելի է։Սեղմեք՝ ներբեռնելու համար։', + settOptThemeSystem: 'Նույնը, ինչ համակարգը', + settOptThemeContrastDark: 'Մութ հակադրություն', } diff --git a/common/loginpage/locale/it.js b/common/loginpage/locale/it.js index 77f2d9097..4d9b0f01f 100644 --- a/common/loginpage/locale/it.js +++ b/common/loginpage/locale/it.js @@ -90,4 +90,11 @@ l10n.it_IT = { settOptLaunchMode: 'Apri file', settOptLaunchInTab: 'Nella scheda', settOptLaunchInWindow: 'Nella finestra', + settSpellcheckDetection: 'Rilevamento lingua dell\'ortografia', + settOptDisabled: 'Disabilitato', + aboutChangelog: 'Registro delle modifiche', + updateNoUpdates: 'L\'app è aggiornata', + updateAvialable: 'È disponibile la versione $1. Fai clic per scaricarla.', + settOptThemeSystem: 'Uguale al sistema', + settOptThemeContrastDark: 'Contrasto scuro', } diff --git a/common/loginpage/locale/ja.js b/common/loginpage/locale/ja.js index e2df261bd..bf28dd4f8 100644 --- a/common/loginpage/locale/ja.js +++ b/common/loginpage/locale/ja.js @@ -90,4 +90,11 @@ l10n.ja = { settOptLaunchMode: 'ファイルを開く', settOptLaunchInTab: 'タブで', settOptLaunchInWindow: 'ウィンドウで', + settSpellcheckDetection: 'スペルチェック', + settOptDisabled: '無効', + aboutChangelog: '変更ログ', + updateNoUpdates: 'アプリのバージョンは最新です', + updateAvialable: 'バージョン $1 が利用可能になっています。クリックしてダウンロードしてください。', + settOptThemeSystem: 'システム設定と同じ', + settOptThemeContrastDark: 'ダークコントラスト', } diff --git a/common/loginpage/locale/pt-BR.js b/common/loginpage/locale/pt-BR.js index b85076319..0686e3261 100644 --- a/common/loginpage/locale/pt-BR.js +++ b/common/loginpage/locale/pt-BR.js @@ -87,4 +87,6 @@ l10n.pt_BR = { settOptLaunchMode: 'Abrir arquivo', settOptLaunchInTab: 'Na guia', settOptLaunchInWindow: 'Na janela', + settOptThemeSystem: 'O mesmo que sistema', + settOptThemeContrastDark: 'Contraste escuro', } diff --git a/common/loginpage/locale/pt-PT.js b/common/loginpage/locale/pt-PT.js index af671ce0c..9a7825de6 100644 --- a/common/loginpage/locale/pt-PT.js +++ b/common/loginpage/locale/pt-PT.js @@ -90,4 +90,6 @@ l10n.pt_PT = { settOptLaunchMode: 'Abrir ficheiro', settOptLaunchInTab: 'Em separador', settOptLaunchInWindow: 'Em janela', + settOptThemeSystem: 'O mesmo que o sistema', + settOptThemeContrastDark: 'Contraste escuro', } diff --git a/common/loginpage/locale/ro.js b/common/loginpage/locale/ro.js index f532ef1c0..f1bdd0da2 100644 --- a/common/loginpage/locale/ro.js +++ b/common/loginpage/locale/ro.js @@ -90,4 +90,6 @@ l10n.ro = { settOptLaunchMode: 'Deschidere fișie', settOptLaunchInTab: 'În filă', settOptLaunchInWindow: 'În fereastră', + settOptThemeSystem: 'La fel ca sistemul', + settOptThemeContrastDark: 'Contrast Întunecat', } diff --git a/common/loginpage/locale/ru.js b/common/loginpage/locale/ru.js index 16e5eaa2c..641a92b8f 100644 --- a/common/loginpage/locale/ru.js +++ b/common/loginpage/locale/ru.js @@ -90,6 +90,7 @@ l10n.ru = { settOptLaunchMode: 'Открыть файл', settOptLaunchInTab: 'Во вкладке', settOptLaunchInWindow: 'В окне', + settSpellcheckDetection: 'Распознавание языка проверки правописания', settOptDisabled: 'Отключено', aboutChangelog: 'Журнал изменений', updateNoUpdates: 'Приложение обновлено', diff --git a/common/loginpage/locale/zh-CN.js b/common/loginpage/locale/zh-CN.js index c9dc2f1b6..6b731433f 100644 --- a/common/loginpage/locale/zh-CN.js +++ b/common/loginpage/locale/zh-CN.js @@ -90,4 +90,11 @@ l10n.zh_CN = { settOptLaunchMode: '打开文件', settOptLaunchInTab: '标签页中', settOptLaunchInWindow: '窗口中', + settSpellcheckDetection: '拼写语言检测', + settOptDisabled: '已禁用', + aboutChangelog: '更新日志', + updateNoUpdates: '这是应用程序最新版', + updateAvialable: '$1的版本已可用。立即下载。', + settOptThemeSystem: '和系统一致', + settOptThemeContrastDark: '暗色对比', } diff --git a/common/loginpage/locale/zh-HK.js b/common/loginpage/locale/zh-HK.js index edaa8a10b..c22bbd793 100644 --- a/common/loginpage/locale/zh-HK.js +++ b/common/loginpage/locale/zh-HK.js @@ -90,4 +90,6 @@ l10n.zh_HK = { settOptLaunchMode: '開啟檔案', settOptLaunchInTab: '標籤中', settOptLaunchInWindow: '視窗中', + settOptThemeSystem: '和系统一致', + settOptThemeContrastDark: '暗色对比', } From 849035fdeb437e29fd51ab0dfdb51964441a6452 Mon Sep 17 00:00:00 2001 From: Maxim Kadushkin Date: Sat, 27 Aug 2022 00:55:56 +0300 Subject: [PATCH 64/76] [start page] fix scrolls on macos --- common/loginpage/src/styles.less | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/common/loginpage/src/styles.less b/common/loginpage/src/styles.less index a5710d968..be76c367a 100644 --- a/common/loginpage/src/styles.less +++ b/common/loginpage/src/styles.less @@ -486,7 +486,7 @@ li.menu-item { .lst-tools { text-align: left; - margin-top: 30px; + margin-top: 35px; } .format-from-index(@index) { @@ -794,6 +794,7 @@ li.menu-item { #options-wrap { overflow-y: auto; flex-grow: 0; + height: 100%; } } From f42a9959e3bdc4f55c73aa0fd7c826e9d7f65e0f Mon Sep 17 00:00:00 2001 From: Maria-Sukhova Date: Tue, 30 Aug 2022 13:25:17 +0300 Subject: [PATCH 65/76] edited ThemeContrastDark: Contrast Dark --- common/loginpage/src/locale.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/common/loginpage/src/locale.js b/common/loginpage/src/locale.js index 93a65c590..d436748cb 100644 --- a/common/loginpage/src/locale.js +++ b/common/loginpage/src/locale.js @@ -129,7 +129,7 @@ l10n.en = { updateNoUpdates: 'App is up to date', updateAvialable: 'Version $1 is available. Click to download.', settOptThemeSystem: 'System default', - settOptThemeContrastDark: 'Contrast dark', + settOptThemeContrastDark: 'Contrast Dark', } From 7830b1712ecc0e435cc50c7b35e53efa7307add7 Mon Sep 17 00:00:00 2001 From: Maxim Kadushkin Date: Tue, 30 Aug 2022 14:06:00 +0300 Subject: [PATCH 66/76] [start page] fix bug 58277 --- common/loginpage/src/styles.less | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/common/loginpage/src/styles.less b/common/loginpage/src/styles.less index be76c367a..210a953d4 100644 --- a/common/loginpage/src/styles.less +++ b/common/loginpage/src/styles.less @@ -739,7 +739,7 @@ li.menu-item { #wrap, #options-wrap, -.tool-menu, +.main-column, .action-panel, .content-box, .dropdown-menu .inner, From 3a02961ffc749a80dce081d4a259e23ea59b4b60 Mon Sep 17 00:00:00 2001 From: Maxim Kadushkin Date: Tue, 30 Aug 2022 21:48:48 +0300 Subject: [PATCH 67/76] [start page] fix bug 58754 --- common/loginpage/src/htmlutils.js | 13 ++++++++----- 1 file changed, 8 insertions(+), 5 deletions(-) diff --git a/common/loginpage/src/htmlutils.js b/common/loginpage/src/htmlutils.js index 7ce16e941..86e03a660 100644 --- a/common/loginpage/src/htmlutils.js +++ b/common/loginpage/src/htmlutils.js @@ -42,11 +42,14 @@ var params = (function() { return urlParams; })(); -var ui_theme_name = params.uitheme || localStorage.getItem("ui-theme"); +let ui_theme_name = params.uitheme || localStorage.getItem("ui-theme"), ui_theme_type; if ( !!ui_theme_name ) { - if ( /^{".+"}$/.test(ui_theme_name) ) - ui_theme_name = /id\":\"([\w\d_-]+)/.exec(ui_theme_name)[1]; + if ( /^{".+"}$/.test(ui_theme_name) ) { + const obj = JSON.parse(ui_theme_name); + ui_theme_name = obj['id'] || 'theme-dark'; + ui_theme_type = obj['type']; + } - const theme_type = ui_theme_name == 'theme-dark' ? 'theme-type-dark' : 'theme-type-light'; - document.body.classList.add(ui_theme_name, theme_type); + ui_theme_type = (ui_theme_type == 'dark' || /theme-(?:[a-z]+-)?dark(?:-[a-z]*)?/.test(ui_theme_name)) ? 'theme-type-dark' : 'theme-type-light'; + document.body.classList.add(ui_theme_name, ui_theme_type); } From 99a38913e8470d68164edb462e55e9d6af425766 Mon Sep 17 00:00:00 2001 From: Maxim Kadushkin Date: Tue, 30 Aug 2022 21:49:06 +0300 Subject: [PATCH 68/76] [start page] refactoring --- common/loginpage/src/panelsettings.js | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/common/loginpage/src/panelsettings.js b/common/loginpage/src/panelsettings.js index 2e00a0246..5053af991 100644 --- a/common/loginpage/src/panelsettings.js +++ b/common/loginpage/src/panelsettings.js @@ -197,13 +197,13 @@ $btnApply.disable(false); }; - function _apply_theme(name) { + function _apply_theme(name, type) { if ( name == 'theme-system' ) { name = get_default_theme(get_system_theme_type()); } if ( !$("body").hasClass(name) ) { - const _type = /theme-(?:[a-z]+-)?dark(?:-[a-z]*)?/.test(name) ? 'theme-type-dark' : 'theme-type-light'; + const _type = (type == 'dark' || /theme-(?:[a-z]+-)?dark(?:-[a-z]*)?/.test(name)) ? 'theme-type-dark' : 'theme-type-light'; const _cls = document.body.className.replace(/theme-[\w-]+/gi,'').trim(); document.body.className = `${_cls?_cls+' ':''}${name} ${_type}`; From 1fedebff31cbea2d6644cad01ebe7cde7d46f8dd Mon Sep 17 00:00:00 2001 From: Kirill Volkov Date: Thu, 1 Sep 2022 13:54:51 +0300 Subject: [PATCH 69/76] Change providers icons --- .../providers/kdrive/assets/buttonlogo.svg | 16 +--- .../kdrive/assets/buttonlogo_dark.svg | 21 +--- .../providers/kdrive/assets/listicon.svg | 10 +- .../providers/kdrive/assets/listicon_dark.svg | 8 +- .../providers/liferay/assets/buttonlogo.svg | 12 +-- .../liferay/assets/buttonlogo_dark.svg | 2 +- .../providers/liferay/assets/listicon.svg | 4 +- .../liferay/assets/listicon_dark.svg | 2 +- .../providers/nextcloud/assets/buttonlogo.svg | 6 +- .../nextcloud/assets/buttonlogo_dark.svg | 5 +- .../providers/nextcloud/assets/listicon.svg | 6 +- .../nextcloud/assets/listicon_dark.svg | 11 +-- .../onlyoffice/assets/buttonlogo.svg | 4 +- .../onlyoffice/assets/buttonlogo_dark.svg | 4 +- .../providers/onlyoffice/assets/listicon.svg | 8 +- .../onlyoffice/assets/listicon_dark.svg | 6 +- .../providers/owncloud/assets/buttonlogo.svg | 4 +- .../owncloud/assets/buttonlogo_dark.svg | 15 +-- .../providers/owncloud/assets/listicon.svg | 6 +- .../owncloud/assets/listicon_dark.svg | 4 +- .../providers/seafile/assets/buttonlogo.svg | 36 +------ .../seafile/assets/buttonlogo_dark.svg | 12 +-- .../providers/seafile/assets/listicon.svg | 95 +------------------ .../seafile/assets/listicon_dark.svg | 5 +- 24 files changed, 24 insertions(+), 278 deletions(-) diff --git a/common/loginpage/providers/kdrive/assets/buttonlogo.svg b/common/loginpage/providers/kdrive/assets/buttonlogo.svg index 2095756d1..34927b6ff 100644 --- a/common/loginpage/providers/kdrive/assets/buttonlogo.svg +++ b/common/loginpage/providers/kdrive/assets/buttonlogo.svg @@ -1,15 +1 @@ - - - - - - - - - - - - - - - + \ No newline at end of file diff --git a/common/loginpage/providers/kdrive/assets/buttonlogo_dark.svg b/common/loginpage/providers/kdrive/assets/buttonlogo_dark.svg index e48f98e0b..c7cb0417e 100644 --- a/common/loginpage/providers/kdrive/assets/buttonlogo_dark.svg +++ b/common/loginpage/providers/kdrive/assets/buttonlogo_dark.svg @@ -1,20 +1 @@ - - - - - - - - - - - - - - - - - - - - + \ No newline at end of file diff --git a/common/loginpage/providers/kdrive/assets/listicon.svg b/common/loginpage/providers/kdrive/assets/listicon.svg index 96b890827..991a26775 100644 --- a/common/loginpage/providers/kdrive/assets/listicon.svg +++ b/common/loginpage/providers/kdrive/assets/listicon.svg @@ -1,9 +1 @@ - - - - - - - - - + \ No newline at end of file diff --git a/common/loginpage/providers/kdrive/assets/listicon_dark.svg b/common/loginpage/providers/kdrive/assets/listicon_dark.svg index 6167a0980..48a5daaf2 100644 --- a/common/loginpage/providers/kdrive/assets/listicon_dark.svg +++ b/common/loginpage/providers/kdrive/assets/listicon_dark.svg @@ -1,7 +1 @@ - - - - - - - + \ No newline at end of file diff --git a/common/loginpage/providers/liferay/assets/buttonlogo.svg b/common/loginpage/providers/liferay/assets/buttonlogo.svg index 04e8bd01d..5a125adbe 100644 --- a/common/loginpage/providers/liferay/assets/buttonlogo.svg +++ b/common/loginpage/providers/liferay/assets/buttonlogo.svg @@ -1,11 +1 @@ - - - - - - - - - - - + \ No newline at end of file diff --git a/common/loginpage/providers/liferay/assets/buttonlogo_dark.svg b/common/loginpage/providers/liferay/assets/buttonlogo_dark.svg index f8146aa4c..5b9ffa3d0 100644 --- a/common/loginpage/providers/liferay/assets/buttonlogo_dark.svg +++ b/common/loginpage/providers/liferay/assets/buttonlogo_dark.svg @@ -1 +1 @@ - \ No newline at end of file + \ No newline at end of file diff --git a/common/loginpage/providers/liferay/assets/listicon.svg b/common/loginpage/providers/liferay/assets/listicon.svg index 22d2ab712..08097efeb 100644 --- a/common/loginpage/providers/liferay/assets/listicon.svg +++ b/common/loginpage/providers/liferay/assets/listicon.svg @@ -1,3 +1 @@ - - - + \ No newline at end of file diff --git a/common/loginpage/providers/liferay/assets/listicon_dark.svg b/common/loginpage/providers/liferay/assets/listicon_dark.svg index 23ff60969..08097efeb 100644 --- a/common/loginpage/providers/liferay/assets/listicon_dark.svg +++ b/common/loginpage/providers/liferay/assets/listicon_dark.svg @@ -1 +1 @@ - \ No newline at end of file + \ No newline at end of file diff --git a/common/loginpage/providers/nextcloud/assets/buttonlogo.svg b/common/loginpage/providers/nextcloud/assets/buttonlogo.svg index f44e53a28..5fbb0e401 100644 --- a/common/loginpage/providers/nextcloud/assets/buttonlogo.svg +++ b/common/loginpage/providers/nextcloud/assets/buttonlogo.svg @@ -1,5 +1 @@ - - - - - \ No newline at end of file + \ No newline at end of file diff --git a/common/loginpage/providers/nextcloud/assets/buttonlogo_dark.svg b/common/loginpage/providers/nextcloud/assets/buttonlogo_dark.svg index 1a98cf72e..78baf97c7 100644 --- a/common/loginpage/providers/nextcloud/assets/buttonlogo_dark.svg +++ b/common/loginpage/providers/nextcloud/assets/buttonlogo_dark.svg @@ -1,4 +1 @@ - - - - + \ No newline at end of file diff --git a/common/loginpage/providers/nextcloud/assets/listicon.svg b/common/loginpage/providers/nextcloud/assets/listicon.svg index d2faa7a76..f4c005fb6 100644 --- a/common/loginpage/providers/nextcloud/assets/listicon.svg +++ b/common/loginpage/providers/nextcloud/assets/listicon.svg @@ -1,5 +1 @@ - - - - - + \ No newline at end of file diff --git a/common/loginpage/providers/nextcloud/assets/listicon_dark.svg b/common/loginpage/providers/nextcloud/assets/listicon_dark.svg index 8d5165763..f4c005fb6 100644 --- a/common/loginpage/providers/nextcloud/assets/listicon_dark.svg +++ b/common/loginpage/providers/nextcloud/assets/listicon_dark.svg @@ -1,10 +1 @@ - - - - - - - - - - + \ No newline at end of file diff --git a/common/loginpage/providers/onlyoffice/assets/buttonlogo.svg b/common/loginpage/providers/onlyoffice/assets/buttonlogo.svg index 0df7a67c7..fa90101dc 100644 --- a/common/loginpage/providers/onlyoffice/assets/buttonlogo.svg +++ b/common/loginpage/providers/onlyoffice/assets/buttonlogo.svg @@ -1,3 +1 @@ - - - \ No newline at end of file + \ No newline at end of file diff --git a/common/loginpage/providers/onlyoffice/assets/buttonlogo_dark.svg b/common/loginpage/providers/onlyoffice/assets/buttonlogo_dark.svg index d30281314..f032e9c02 100644 --- a/common/loginpage/providers/onlyoffice/assets/buttonlogo_dark.svg +++ b/common/loginpage/providers/onlyoffice/assets/buttonlogo_dark.svg @@ -1,3 +1 @@ - - - \ No newline at end of file + \ No newline at end of file diff --git a/common/loginpage/providers/onlyoffice/assets/listicon.svg b/common/loginpage/providers/onlyoffice/assets/listicon.svg index 8f935562c..0301b3478 100644 --- a/common/loginpage/providers/onlyoffice/assets/listicon.svg +++ b/common/loginpage/providers/onlyoffice/assets/listicon.svg @@ -1,7 +1 @@ - - - - - - - + \ No newline at end of file diff --git a/common/loginpage/providers/onlyoffice/assets/listicon_dark.svg b/common/loginpage/providers/onlyoffice/assets/listicon_dark.svg index ea24bdf15..87a9d8a98 100644 --- a/common/loginpage/providers/onlyoffice/assets/listicon_dark.svg +++ b/common/loginpage/providers/onlyoffice/assets/listicon_dark.svg @@ -1,5 +1 @@ - - - - - + \ No newline at end of file diff --git a/common/loginpage/providers/owncloud/assets/buttonlogo.svg b/common/loginpage/providers/owncloud/assets/buttonlogo.svg index 8098d1c7d..cc3fb63b8 100644 --- a/common/loginpage/providers/owncloud/assets/buttonlogo.svg +++ b/common/loginpage/providers/owncloud/assets/buttonlogo.svg @@ -1,3 +1 @@ - - - \ No newline at end of file + \ No newline at end of file diff --git a/common/loginpage/providers/owncloud/assets/buttonlogo_dark.svg b/common/loginpage/providers/owncloud/assets/buttonlogo_dark.svg index 507c568cf..5992b75a7 100644 --- a/common/loginpage/providers/owncloud/assets/buttonlogo_dark.svg +++ b/common/loginpage/providers/owncloud/assets/buttonlogo_dark.svg @@ -1,14 +1 @@ - - - - - - - - - - - - - - + \ No newline at end of file diff --git a/common/loginpage/providers/owncloud/assets/listicon.svg b/common/loginpage/providers/owncloud/assets/listicon.svg index 0e72e1d9b..a5b9b9244 100644 --- a/common/loginpage/providers/owncloud/assets/listicon.svg +++ b/common/loginpage/providers/owncloud/assets/listicon.svg @@ -1,5 +1 @@ - - - - - + \ No newline at end of file diff --git a/common/loginpage/providers/owncloud/assets/listicon_dark.svg b/common/loginpage/providers/owncloud/assets/listicon_dark.svg index 64ea2879f..410996d18 100644 --- a/common/loginpage/providers/owncloud/assets/listicon_dark.svg +++ b/common/loginpage/providers/owncloud/assets/listicon_dark.svg @@ -1,3 +1 @@ - - - + \ No newline at end of file diff --git a/common/loginpage/providers/seafile/assets/buttonlogo.svg b/common/loginpage/providers/seafile/assets/buttonlogo.svg index 3766aa09a..43f42b48e 100644 --- a/common/loginpage/providers/seafile/assets/buttonlogo.svg +++ b/common/loginpage/providers/seafile/assets/buttonlogo.svg @@ -1,35 +1 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + \ No newline at end of file diff --git a/common/loginpage/providers/seafile/assets/buttonlogo_dark.svg b/common/loginpage/providers/seafile/assets/buttonlogo_dark.svg index f60364dd1..abfc1c544 100644 --- a/common/loginpage/providers/seafile/assets/buttonlogo_dark.svg +++ b/common/loginpage/providers/seafile/assets/buttonlogo_dark.svg @@ -1,11 +1 @@ - - - - - - - - - - - + \ No newline at end of file diff --git a/common/loginpage/providers/seafile/assets/listicon.svg b/common/loginpage/providers/seafile/assets/listicon.svg index 99ec05e51..52acd51f4 100644 --- a/common/loginpage/providers/seafile/assets/listicon.svg +++ b/common/loginpage/providers/seafile/assets/listicon.svg @@ -1,94 +1 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + \ No newline at end of file diff --git a/common/loginpage/providers/seafile/assets/listicon_dark.svg b/common/loginpage/providers/seafile/assets/listicon_dark.svg index b0cc09fc3..52acd51f4 100644 --- a/common/loginpage/providers/seafile/assets/listicon_dark.svg +++ b/common/loginpage/providers/seafile/assets/listicon_dark.svg @@ -1,4 +1 @@ - - - - + \ No newline at end of file From 7e05e791d181f5860062b6c00873e500409d696f Mon Sep 17 00:00:00 2001 From: maxkadushkin Date: Fri, 2 Sep 2022 13:38:00 +0300 Subject: [PATCH 70/76] [macos] for bug 58780 --- macos/ONLYOFFICE.xcodeproj/project.pbxproj | 3 +++ 1 file changed, 3 insertions(+) diff --git a/macos/ONLYOFFICE.xcodeproj/project.pbxproj b/macos/ONLYOFFICE.xcodeproj/project.pbxproj index e29c949f8..5185784ff 100644 --- a/macos/ONLYOFFICE.xcodeproj/project.pbxproj +++ b/macos/ONLYOFFICE.xcodeproj/project.pbxproj @@ -3130,6 +3130,7 @@ _MAC, _PRODUCT_ONLYOFFICE, _V8_VERSION, + "URL_WEBAPPS_HELP=\\@\\\"$(URL_WEBAPPS_HELP)\\\"", ); INFOPLIST_FILE = "ONLYOFFICE/Resources/ONLYOFFICE-v8/Info.plist"; LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/../Frameworks @loader_path/../Frameworks @executable_path/../Resources/converter @loader_path/../Resources/converter"; @@ -3174,6 +3175,7 @@ _MAC, _PRODUCT_ONLYOFFICE, _ARM_ONLY, + "URL_WEBAPPS_HELP=\\@\\\"$(URL_WEBAPPS_HELP)\\\"", ); INFOPLIST_FILE = "ONLYOFFICE/Resources/ONLYOFFICE-arm/Info.plist"; LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/../Frameworks @loader_path/../Frameworks @executable_path/../Resources/converter @loader_path/../Resources/converter"; @@ -3218,6 +3220,7 @@ _MAC, _PRODUCT_ONLYOFFICE, _ARM_ONLY, + "URL_WEBAPPS_HELP=\\@\\\"$(URL_WEBAPPS_HELP)\\\"", ); INFOPLIST_FILE = "ONLYOFFICE/Resources/ONLYOFFICE-arm/Info.plist"; LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/../Frameworks @loader_path/../Frameworks @executable_path/../Resources/converter @loader_path/../Resources/converter"; From 7a164a77826ed17600d8cea4b8c1d37203209261 Mon Sep 17 00:00:00 2001 From: Maxim Kadushkin Date: Mon, 5 Sep 2022 17:14:15 +0300 Subject: [PATCH 71/76] [all] Portuguese lang opened --- macos/ONLYOFFICE/Code/Controllers/Common/ASCLinguist.m | 2 +- .../update/updates/ONLYOFFICE/changes/7.2/ReleaseNotes.html | 2 +- .../update/updates/ONLYOFFICE/changes/7.2/ReleaseNotesRU.html | 2 +- win-linux/package/windows/common.iss | 2 +- win-linux/package/windows/update/changes/7.2.0/en.html | 2 +- win-linux/package/windows/update/changes/7.2.0/ru.html | 2 +- win-linux/src/clangater.cpp | 2 +- 7 files changed, 7 insertions(+), 7 deletions(-) diff --git a/macos/ONLYOFFICE/Code/Controllers/Common/ASCLinguist.m b/macos/ONLYOFFICE/Code/Controllers/Common/ASCLinguist.m index 750c12b69..66919c6f8 100644 --- a/macos/ONLYOFFICE/Code/Controllers/Common/ASCLinguist.m +++ b/macos/ONLYOFFICE/Code/Controllers/Common/ASCLinguist.m @@ -76,10 +76,10 @@ @"es": @"Español", @"it": @"Italiano", @"pt-BR": @"Português Brasileiro", + @"pt-PT": @"Português (Portugal)", @"zh-CN": @"中文", @"sk-SK": @"Slovenčina", @"cs-CZ": @"Čeština", - // @"pt-PT": @"Portuguese (Portugal)", @"pl-PL": @"Polski", // @"zh-HK": @"Chinese (Traditional)", @"ca-ES": @"Catalan", diff --git a/macos/ONLYOFFICE/update/updates/ONLYOFFICE/changes/7.2/ReleaseNotes.html b/macos/ONLYOFFICE/update/updates/ONLYOFFICE/changes/7.2/ReleaseNotes.html index 750d7b949..0fba8d694 100644 --- a/macos/ONLYOFFICE/update/updates/ONLYOFFICE/changes/7.2/ReleaseNotes.html +++ b/macos/ONLYOFFICE/update/updates/ONLYOFFICE/changes/7.2/ReleaseNotes.html @@ -89,7 +89,7 @@

      New Features

      All Editors

        -
      • New interface language Armenian
      • +
      • New interface languages Armenian, Portuguese
      • Window have no minimum size now

      Document Editor

      diff --git a/macos/ONLYOFFICE/update/updates/ONLYOFFICE/changes/7.2/ReleaseNotesRU.html b/macos/ONLYOFFICE/update/updates/ONLYOFFICE/changes/7.2/ReleaseNotesRU.html index 58965a5f1..ee13cf7d2 100644 --- a/macos/ONLYOFFICE/update/updates/ONLYOFFICE/changes/7.2/ReleaseNotesRU.html +++ b/macos/ONLYOFFICE/update/updates/ONLYOFFICE/changes/7.2/ReleaseNotesRU.html @@ -89,7 +89,7 @@

      Новые функции

      Все редакторы

        -
      • Новый язык интерфейса Армянский
      • +
      • Новые языки интерфейса Армянский, Португальский
      • Убрали минимальный размер окна

      Редактор документов

      diff --git a/win-linux/package/windows/common.iss b/win-linux/package/windows/common.iss index 8969aa6b8..ddbc26751 100644 --- a/win-linux/package/windows/common.iss +++ b/win-linux/package/windows/common.iss @@ -119,7 +119,7 @@ Name: de; MessagesFile: compiler:Languages\German.isl; LicenseFile: {#sBrand Name: fr; MessagesFile: compiler:Languages\French.isl; LicenseFile: {#sBrandingFolder}\common\package\license\{#LIC_FILE}.rtf; Name: es; MessagesFile: compiler:Languages\Spanish.isl; LicenseFile: {#sBrandingFolder}\common\package\license\{#LIC_FILE}.rtf; Name: pt_BR; MessagesFile: compiler:Languages\BrazilianPortuguese.isl; LicenseFile: {#sBrandingFolder}\common\package\license\{#LIC_FILE}.rtf; -;Name: pt_PT; MessagesFile: compiler:Languages\Portuguese.isl; LicenseFile: {#sBrandingFolder}\common\package\license\{#LIC_FILE}.rtf; +Name: pt_PT; MessagesFile: compiler:Languages\Portuguese.isl; LicenseFile: {#sBrandingFolder}\common\package\license\{#LIC_FILE}.rtf; Name: id; MessagesFile: compiler:Languages\Indonesian.isl; LicenseFile: {#sBrandingFolder}\common\package\license\{#LIC_FILE}.rtf; Name: it_IT; MessagesFile: compiler:Languages\Italian.isl; LicenseFile: {#sBrandingFolder}\common\package\license\{#LIC_FILE}.rtf; Name: pl; MessagesFile: compiler:Languages\Polish.isl; LicenseFile: {#sBrandingFolder}\common\package\license\{#LIC_FILE}.rtf; diff --git a/win-linux/package/windows/update/changes/7.2.0/en.html b/win-linux/package/windows/update/changes/7.2.0/en.html index 8d08fb804..c3313b1bf 100644 --- a/win-linux/package/windows/update/changes/7.2.0/en.html +++ b/win-linux/package/windows/update/changes/7.2.0/en.html @@ -1,6 +1,6 @@

      New Features

        -
      • New interface language Armenian
      • +
      • New interface languages Armenian, Portuguese
      • Window have no minimum size now

      Document Editor

      diff --git a/win-linux/package/windows/update/changes/7.2.0/ru.html b/win-linux/package/windows/update/changes/7.2.0/ru.html index 364a022e4..a10c8ed81 100644 --- a/win-linux/package/windows/update/changes/7.2.0/ru.html +++ b/win-linux/package/windows/update/changes/7.2.0/ru.html @@ -1,6 +1,6 @@

      Новые функции

        -
      • Новый язык интерфейса Армянский
      • +
      • Новые языки интерфейса Армянский, Португальский
      • Убрали минимальный размер окна

      Редактор документов

      diff --git a/win-linux/src/clangater.cpp b/win-linux/src/clangater.cpp index 0816d4eae..fe2733a95 100644 --- a/win-linux/src/clangater.cpp +++ b/win-linux/src/clangater.cpp @@ -123,7 +123,7 @@ private: {"cs-CZ", "Čeština"}, {"it-IT", "Italiano"}, {"pt-BR", "Português Brasileiro"} -// ,{"pt-PT", "Portuguese (Portugal)"} + ,{"pt-PT", "Português (Portugal)"} ,{"pl-PL", "Polski"} ,{"zh-CN", "中文"} // ,{"zh-HK", "Chinese (Traditional)"} From cb7023622884cc99815df301bdc0dcd28fbb2667 Mon Sep 17 00:00:00 2001 From: Maria-Sukhova Date: Mon, 5 Sep 2022 17:31:34 +0300 Subject: [PATCH 72/76] edited settAfterRestart (hy) --- common/loginpage/locale/hy.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/common/loginpage/locale/hy.js b/common/loginpage/locale/hy.js index cbc4145ad..30609a55f 100644 --- a/common/loginpage/locale/hy.js +++ b/common/loginpage/locale/hy.js @@ -74,7 +74,7 @@ l10n.hy = { settOpenMode: 'Փաստաթուղթը բացել նախկին ռեժիմով', setBtnApply: 'Կիրարկել', settLanguage: 'Ինտերֆեյսի լեզու', - settAfterRestart: 'Ընտրանքի կկիրարկվի հավելվածի վերագործարկումից հետո', + settAfterRestart: 'Ընտրանքը կկիրառվի հավելվածի վերագործարկումից հետո', settShowEncryptOpts: 'End-to-end ծածկագրման փորձարկում', settCheckUpdates: 'Ավտոմատ կերպով ստուգել թարմացումները', settOptCheckNever: 'Երբեք', From 9f6529046ec3f03fc76ee76035f63bb9ece28c9c Mon Sep 17 00:00:00 2001 From: Eugene Kozyrev <67453079+EugeneKozyrev@users.noreply.github.com> Date: Fri, 9 Sep 2022 16:43:26 +0300 Subject: [PATCH 73/76] Add Advertised flag to shortcuts (#566) --- win-linux/package/windows/DesktopEditors.aip | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/win-linux/package/windows/DesktopEditors.aip b/win-linux/package/windows/DesktopEditors.aip index ffa69ab11..68088ca79 100644 --- a/win-linux/package/windows/DesktopEditors.aip +++ b/win-linux/package/windows/DesktopEditors.aip @@ -822,8 +822,8 @@ - - + + @@ -920,10 +920,10 @@ - - - - + + + + From 1e68d7443e97a6c28d0abbb30b133b9e39043379 Mon Sep 17 00:00:00 2001 From: Eugene Kozyrev <67453079+EugeneKozyrev@users.noreply.github.com> Date: Fri, 9 Sep 2022 17:26:47 +0300 Subject: [PATCH 74/76] Update DesktopEditors.aip (#567) --- win-linux/package/windows/DesktopEditors.aip | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/win-linux/package/windows/DesktopEditors.aip b/win-linux/package/windows/DesktopEditors.aip index 68088ca79..a73ade04b 100644 --- a/win-linux/package/windows/DesktopEditors.aip +++ b/win-linux/package/windows/DesktopEditors.aip @@ -160,8 +160,8 @@ - - + + From 67739f32f747f87b1c088487517e57e7ac2e415b Mon Sep 17 00:00:00 2001 From: Maxim Kadushkin Date: Wed, 14 Sep 2022 00:43:38 +0300 Subject: [PATCH 75/76] [win-nix] fix crash on launch with unknown theme name --- win-linux/src/cthemes.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/win-linux/src/cthemes.cpp b/win-linux/src/cthemes.cpp index 934036447..4abb7fbf9 100644 --- a/win-linux/src/cthemes.cpp +++ b/win-linux/src/cthemes.cpp @@ -120,7 +120,7 @@ public: g_object_unref(sett); } #endif - if ( user_theme == THEME_ID_SYSTEM ) { + if ( user_theme == THEME_ID_SYSTEM || rc_themes.find(user_theme) == rc_themes.end() ) { current = new CTheme(rc_themes.at(is_system_theme_dark ? THEME_DEFAULT_DARK_ID : THEME_DEFAULT_LIGHT_ID)); current->m_priv->is_system = true; } else current = new CTheme(rc_themes.at(user_theme)); From ea1cd18174e6a90e5645aadd6dd86a91b113b47c Mon Sep 17 00:00:00 2001 From: Maxim Kadushkin Date: Wed, 14 Sep 2022 00:44:19 +0300 Subject: [PATCH 76/76] [win-nix] fix back compatibility with ver 7.1 --- win-linux/src/cthemes.cpp | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) diff --git a/win-linux/src/cthemes.cpp b/win-linux/src/cthemes.cpp index 4abb7fbf9..f5b4e6ad8 100644 --- a/win-linux/src/cthemes.cpp +++ b/win-linux/src/cthemes.cpp @@ -19,6 +19,7 @@ #define QSTRING_FROM_WSTR(s) QString::fromStdWString(s) #define REGISTRY_THEME_KEY "UITheme" +#define REGISTRY_THEME_KEY_7_2 "UITheme2" #define THEME_DEFAULT_DARK_ID "theme-dark" #define THEME_DEFAULT_LIGHT_ID "theme-classic-light" #define THEME_ID_SYSTEM "theme-system" @@ -95,7 +96,13 @@ public: }; GET_REGISTRY_USER(_reg_user); + QString user_theme = _reg_user.value(REGISTRY_THEME_KEY, THEME_ID_SYSTEM).toString(); + + /* TODO: remove for ver 7.3. for compatibility with ver 7.1 only */ + if ( _reg_user.contains(REGISTRY_THEME_KEY_7_2) ) + user_theme = _reg_user.value(REGISTRY_THEME_KEY_7_2, THEME_ID_SYSTEM).toString(); + #ifdef Q_OS_WIN QSettings _reg("HKEY_CURRENT_USER\\SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\Themes\\Personalize", QSettings::NativeFormat); is_system_theme_dark = _reg.value("AppsUseLightTheme", 1).toInt() == 0; @@ -335,7 +342,8 @@ auto CThemes::setCurrentTheme(const std::wstring& name) -> void { if ( !isThemeCurrent(name) && m_priv->setCurrent(QString::fromStdWString(name)) ) { GET_REGISTRY_USER(_reg_user); - _reg_user.setValue(REGISTRY_THEME_KEY, QString::fromStdWString(name)); +// _reg_user.setValue(REGISTRY_THEME_KEY, QString::fromStdWString(name)); + _reg_user.setValue(REGISTRY_THEME_KEY_7_2, QString::fromStdWString(name)); } }