From a1e737d2aec9bb633985215948fd87ce7432e464 Mon Sep 17 00:00:00 2001 From: Martin Date: Mon, 13 May 2024 14:46:52 +0300 Subject: [PATCH 01/62] fix: system / user setting for display name not respected in Org Unit tree (DHIS2-15000) (#509) --- package.json | 2 +- src/components/Dialogs/FixedDimension.js | 8 +++++++- yarn.lock | 8 ++++---- 3 files changed, 12 insertions(+), 6 deletions(-) diff --git a/package.json b/package.json index 38bc26c9c..dc0e3d619 100644 --- a/package.json +++ b/package.json @@ -38,7 +38,7 @@ "typescript": "^4.8.4" }, "dependencies": { - "@dhis2/analytics": "^26.6.5", + "@dhis2/analytics": "^26.6.9", "@dhis2/app-runtime": "^3.4.4", "@dhis2/ui": "^9.4.2", "@dnd-kit/core": "^5.0.3", diff --git a/src/components/Dialogs/FixedDimension.js b/src/components/Dialogs/FixedDimension.js index bc90ee2fe..06241482b 100644 --- a/src/components/Dialogs/FixedDimension.js +++ b/src/components/Dialogs/FixedDimension.js @@ -21,6 +21,7 @@ import { formatDimensionId, } from '../../modules/dimensionId.js' import { removeLastPathSegment, getOuPath } from '../../modules/orgUnit.js' +import { DERIVED_USER_SETTINGS_DISPLAY_NAME_PROPERTY } from '../../modules/userSettings.js' import { STATUS_ACTIVE, STATUS_CANCELLED, @@ -50,7 +51,7 @@ const FixedDimension = ({ selectedItemsIds, inputType, }) => { - const { rootOrgUnits } = useCachedDataQuery() + const { rootOrgUnits, currentUser } = useCachedDataQuery() const { serverVersion } = useConfig() const statusNames = getStatusNames() const { programId, dimensionId } = extractDimensionIdParts( @@ -244,6 +245,11 @@ const FixedDimension = ({ roots={rootOrgUnits.map( (rootOrgUnit) => rootOrgUnit.id )} + displayNameProp={ + currentUser.settings[ + DERIVED_USER_SETTINGS_DISPLAY_NAME_PROPERTY + ] + } {...dimensionProps} /> diff --git a/yarn.lock b/yarn.lock index d2412770f..4476786c7 100644 --- a/yarn.lock +++ b/yarn.lock @@ -2034,10 +2034,10 @@ classnames "^2.3.1" prop-types "^15.7.2" -"@dhis2/analytics@^26.6.5": - version "26.6.5" - resolved "https://registry.yarnpkg.com/@dhis2/analytics/-/analytics-26.6.5.tgz#44ee29a279c37f3969096d859bc0f07d953e3f42" - integrity sha512-ob6kNEEkIAC50RtKuUZWi8Y04uwsPHK/EiYhzxZkSOdS5wFm8X+88KZrD//fILXQjwMhJvl/4+F/T0qVxOF/jQ== +"@dhis2/analytics@^26.6.9": + version "26.6.9" + resolved "https://registry.yarnpkg.com/@dhis2/analytics/-/analytics-26.6.9.tgz#932847c4bee3dd720d5d0b872c6b11eeae8b260c" + integrity sha512-AcU5FKH1Rmi8GdgqdJ1aOPqTKhztLafhzKNvGBdb5rSNR8/KS2djyTxxPhL0fdusu+1Rc04RFSkOLajq3ChVrQ== dependencies: "@dhis2/d2-ui-rich-text" "^7.4.1" "@dhis2/multi-calendar-dates" "1.0.0" From fb17102cab6deb6c69ac0be0e937a7a806c0859e Mon Sep 17 00:00:00 2001 From: Jen Jones Arnesen Date: Tue, 14 May 2024 08:17:44 +0200 Subject: [PATCH 02/62] chore: group all non dhis2 deps into a single dependabot PR (#510) Instruct dependabot to group all minor and patch dependency upgrades into a single PR. Major bumps will still be a separate PR. It also excludes all dependencies from @dhis2. Excludes i18next since that one is currently set to a resolution. --- .github/dependabot.yml | 17 +++++++++++++---- 1 file changed, 13 insertions(+), 4 deletions(-) diff --git a/.github/dependabot.yml b/.github/dependabot.yml index 8ddd72b65..5daed1a93 100755 --- a/.github/dependabot.yml +++ b/.github/dependabot.yml @@ -1,8 +1,17 @@ version: 2 updates: - - package-ecosystem: 'npm' - directory: '/' + - package-ecosystem: npm + directory: / schedule: - interval: 'weekly' + interval: weekly open-pull-requests-limit: 5 - versioning-strategy: 'increase' + versioning-strategy: increase + groups: + dependencies: + applies-to: version-updates + update-types: + - minor + - patch + exclude-patterns: + - '@dhis2' + - 'i18next' From f55e76e6054fad6075034ae99deb3fdeaabfc6bc Mon Sep 17 00:00:00 2001 From: "@dhis2-bot" Date: Tue, 14 May 2024 07:12:06 +0000 Subject: [PATCH 03/62] chore(release): cut 100.17.1 [skip release] ## [100.17.1](https://github.com/dhis2/line-listing-app/compare/v100.17.0...v100.17.1) (2024-05-14) ### Bug Fixes * system / user setting for display name not respected in Org Unit tree (DHIS2-15000) ([#509](https://github.com/dhis2/line-listing-app/issues/509)) ([a1e737d](https://github.com/dhis2/line-listing-app/commit/a1e737d2aec9bb633985215948fd87ce7432e464)) * **translations:** sync translations from transifex (master) ([385feee](https://github.com/dhis2/line-listing-app/commit/385feee671bc5e8779ffd31060366674457b5bc4)) --- CHANGELOG.md | 8 ++++++++ package.json | 2 +- 2 files changed, 9 insertions(+), 1 deletion(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 3cf2d3544..4628b35d8 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,3 +1,11 @@ +## [100.17.1](https://github.com/dhis2/line-listing-app/compare/v100.17.0...v100.17.1) (2024-05-14) + + +### Bug Fixes + +* system / user setting for display name not respected in Org Unit tree (DHIS2-15000) ([#509](https://github.com/dhis2/line-listing-app/issues/509)) ([a1e737d](https://github.com/dhis2/line-listing-app/commit/a1e737d2aec9bb633985215948fd87ce7432e464)) +* **translations:** sync translations from transifex (master) ([385feee](https://github.com/dhis2/line-listing-app/commit/385feee671bc5e8779ffd31060366674457b5bc4)) + # [100.17.0](https://github.com/dhis2/line-listing-app/compare/v100.16.2...v100.17.0) (2024-04-25) diff --git a/package.json b/package.json index dc0e3d619..cd69096c8 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "line-listing-app", - "version": "100.17.0", + "version": "100.17.1", "description": "DHIS2 Line Listing", "license": "BSD-3-Clause", "private": true, From 862cc9b2f9590a88f7bb9d8143d39fae94b17d41 Mon Sep 17 00:00:00 2001 From: Austin McGee <947888+amcgee@users.noreply.github.com> Date: Tue, 14 May 2024 10:33:17 +0200 Subject: [PATCH 04/62] chore: upgrade app-platform to support both installed and bundled deployment --- package.json | 2 +- yarn.lock | 147 +++++++++++++++++++++++++++++++++++---------------- 2 files changed, 101 insertions(+), 48 deletions(-) diff --git a/package.json b/package.json index cd69096c8..0314e07a5 100644 --- a/package.json +++ b/package.json @@ -18,7 +18,7 @@ "cy:run": "start-server-and-test 'yarn start' http://localhost:3000 'yarn cypress run --env networkMode=live'" }, "devDependencies": { - "@dhis2/cli-app-scripts": "^10.3.9", + "@dhis2/cli-app-scripts": "^11.2.2", "@dhis2/cli-style": "^10.4.3", "@dhis2/cypress-commands": "^10.0.3", "@dhis2/cypress-plugins": "^10.0.2", diff --git a/yarn.lock b/yarn.lock index 4476786c7..2fdf13469 100644 --- a/yarn.lock +++ b/yarn.lock @@ -2055,60 +2055,69 @@ react-beautiful-dnd "^10.1.1" resize-observer-polyfill "^1.5.1" -"@dhis2/app-adapter@10.3.9": - version "10.3.9" - resolved "https://registry.yarnpkg.com/@dhis2/app-adapter/-/app-adapter-10.3.9.tgz#f0733e72bff86661889c6fcf3a8e0ca3452f3121" - integrity sha512-T/FFxzInvNw4YKZX+SuWpge0UGqzKX5w1rC3gBK38sFFpnBGNHgV5QMKo/DZeLDceDu1yrZbkluANoEujJSv9Q== +"@dhis2/app-adapter@11.2.2": + version "11.2.2" + resolved "https://registry.yarnpkg.com/@dhis2/app-adapter/-/app-adapter-11.2.2.tgz#0e5a8525c6c8adb11a8e33d33bfba78eb7731d62" + integrity sha512-T7kownygvtl/9brKr39xojv4UXAvlvZaBLwkKAoSt1XcDAYpw97vcxs8K5RG00cbLV91I194jVfnKTg2bjuajw== dependencies: - "@dhis2/pwa" "10.3.9" + "@dhis2/pwa" "11.2.2" moment "^2.24.0" -"@dhis2/app-runtime@^3.4.4", "@dhis2/app-runtime@^3.9.0": - version "3.9.0" - resolved "https://registry.yarnpkg.com/@dhis2/app-runtime/-/app-runtime-3.9.0.tgz#c7e295fd0a68fac976a930bc77105206ded0b61a" - integrity sha512-n0S4pbyvK7FnBQFMONGrhR9YYavBQI+mQLHfCX/vtvOyeoioBUNIinuQlGysuLMEkSVaK5OjV40rvTMzdxF2kQ== +"@dhis2/app-runtime@^3.10.4", "@dhis2/app-runtime@^3.4.4": + version "3.10.4" + resolved "https://registry.yarnpkg.com/@dhis2/app-runtime/-/app-runtime-3.10.4.tgz#6064ac728770cc94c4d1975db32bd38533655cc6" + integrity sha512-W/d0WcYYcKAeE5/xCunZEMYUSD1fxG+JDQdRDEUsH5y5hB8i/4o2QQrZK8xa19Z3xQJhaW5ypWWqIQVjTJT2Ww== dependencies: - "@dhis2/app-service-alerts" "3.9.0" - "@dhis2/app-service-config" "3.9.0" - "@dhis2/app-service-data" "3.9.0" - "@dhis2/app-service-offline" "3.9.0" + "@dhis2/app-service-alerts" "3.10.4" + "@dhis2/app-service-config" "3.10.4" + "@dhis2/app-service-data" "3.10.4" + "@dhis2/app-service-offline" "3.10.4" + "@dhis2/app-service-plugin" "3.10.4" -"@dhis2/app-service-alerts@3.9.0": - version "3.9.0" - resolved "https://registry.yarnpkg.com/@dhis2/app-service-alerts/-/app-service-alerts-3.9.0.tgz#48d3805676e75ee58104fea4f76cfa779335444e" - integrity sha512-z2eZxm/pxrmFbisbK7/qJKtif2CNWJjaaAH5rfrs5OIajlHy3rO37vSaTQHWv+xWvZFQrs2Op2InxzG0qh5ncA== +"@dhis2/app-service-alerts@3.10.4": + version "3.10.4" + resolved "https://registry.yarnpkg.com/@dhis2/app-service-alerts/-/app-service-alerts-3.10.4.tgz#a7cce660015d79980679175e677cf6c6c3f4c7eb" + integrity sha512-DmSLx/kHOHpgGiL8zG0oa6D3MeCY3wPMDGqj+Gfegr654Lmyf4d2vLI7HSZUSOCdraP/fSYTypsdZmWYoXoLBQ== -"@dhis2/app-service-config@3.9.0": - version "3.9.0" - resolved "https://registry.yarnpkg.com/@dhis2/app-service-config/-/app-service-config-3.9.0.tgz#8dc59d8de246f54057c0c685d5f94b4cbade6f73" - integrity sha512-OuRn2mJGrQQ8QIC+oIVYYpclB4LErRK2wtsuy/cXLfRbeUti1qWIh110rgd1hnTx+BgRCs5s3NWdIQxS4hYGIQ== +"@dhis2/app-service-config@3.10.4": + version "3.10.4" + resolved "https://registry.yarnpkg.com/@dhis2/app-service-config/-/app-service-config-3.10.4.tgz#2bede4df9b036350200cbc085a2a68439fa4fa0a" + integrity sha512-SCFdNxJKpiBjYsU9s0R+u9GrXjzmUEpGpudmC5eQqNV6ajLiebe/pS2jcSPFzjUtHVQMADk0X8TkERoOBqWcxA== -"@dhis2/app-service-data@3.9.0": - version "3.9.0" - resolved "https://registry.yarnpkg.com/@dhis2/app-service-data/-/app-service-data-3.9.0.tgz#37f528b5f7f589cbab8dcc7f997c1668bc6566a9" - integrity sha512-/FJgJhL6YGtIVNX5oaNmavkGmimrVHQsS8ueeUO4FvTjYXGlnnN3IuxypQcy/x4yiUyigbPgFJRnbC1J2af2fg== +"@dhis2/app-service-data@3.10.4": + version "3.10.4" + resolved "https://registry.yarnpkg.com/@dhis2/app-service-data/-/app-service-data-3.10.4.tgz#dcd993a24d2edd97e7ad8a042a682e60582740ff" + integrity sha512-RaoWniioCe33PcPZoDuO66qOrIt0JeeCN8RzmCDrRVGvGmlDTZ3hNuWm9CnsAvO1U6sYDiulKPqrEQu8YKMG0w== dependencies: react-query "^3.13.11" -"@dhis2/app-service-offline@3.9.0": - version "3.9.0" - resolved "https://registry.yarnpkg.com/@dhis2/app-service-offline/-/app-service-offline-3.9.0.tgz#fe4f4a91a1da77554965f6a5fe6f6951d4c467f4" - integrity sha512-0q5zl0vw+a47Ab2qgu6hsZY5ybnH/ea43Vkk4aXYdgcf57xB8ck9DkIcNbc2e1+k9FhvimipxsgTZSbEA/8hJA== +"@dhis2/app-service-offline@3.10.4": + version "3.10.4" + resolved "https://registry.yarnpkg.com/@dhis2/app-service-offline/-/app-service-offline-3.10.4.tgz#dcdaf3a76c6c7a71f28c89a403ec130bf10fcdf3" + integrity sha512-SUUS+sw3FjR0TMdKSSOVzL8IfPA185gSTHQ1WE4tLc2zE92elvxLL9FuSUuTbu+l1Kr4nRQNLh8muOMWKGnWDg== dependencies: lodash "^4.17.21" -"@dhis2/app-shell@10.3.9": - version "10.3.9" - resolved "https://registry.yarnpkg.com/@dhis2/app-shell/-/app-shell-10.3.9.tgz#4def65cfa436047de896865b107d496afbafc643" - integrity sha512-GkKGz1FIcXL4XG7cMPob0T78EvI8ML3CJbtVDxMDx++20R8vD+gKB4jbdXA5QooWeojDA5kpPmNiVHNUJb6LUw== +"@dhis2/app-service-plugin@3.10.4": + version "3.10.4" + resolved "https://registry.yarnpkg.com/@dhis2/app-service-plugin/-/app-service-plugin-3.10.4.tgz#f5412a1320393042012dd75713e3215e51628554" + integrity sha512-GW6xa/5y2yFXvhtLConnaOxKqyu6VPZWRBaQR73/bRRmFcnd7hlMkZ2M0GWSjoW4QHLXlLhXHFsgHPETBftkPg== dependencies: - "@dhis2/app-adapter" "10.3.9" - "@dhis2/app-runtime" "^3.9.0" + post-robot "^10.0.46" + +"@dhis2/app-shell@11.2.2": + version "11.2.2" + resolved "https://registry.yarnpkg.com/@dhis2/app-shell/-/app-shell-11.2.2.tgz#43e849eff4e3238edccf41d55b2ad71b29c4c80d" + integrity sha512-TK4V+LmcvQfFAZZloKPDMKAa/d7jUEl7eXopYyJYscCeImNuMufz3+6WgeOC6xQe9nHC36I8/d7NuSpPiEoQUw== + dependencies: + "@dhis2/app-adapter" "11.2.2" + "@dhis2/app-runtime" "^3.10.4" "@dhis2/d2-i18n" "^1.1.1" - "@dhis2/pwa" "10.3.9" - "@dhis2/ui" "^8.12.3" + "@dhis2/pwa" "11.2.2" + "@dhis2/ui" "^9.4.4" classnames "^2.2.6" moment "^2.29.1" + post-robot "^10.0.46" prop-types "^15.7.2" react "^16.8.6" react-dom "^16.8.6" @@ -2118,10 +2127,10 @@ typeface-roboto "^0.0.75" typescript "^3.6.3" -"@dhis2/cli-app-scripts@^10.3.9": - version "10.3.9" - resolved "https://registry.yarnpkg.com/@dhis2/cli-app-scripts/-/cli-app-scripts-10.3.9.tgz#8a971b52c08f165bcee78fb5bddfd0891ae7f7c2" - integrity sha512-toltKttbok1ORBYvXYOtaIyUUs5C7lB3SEbZuk4KnibwmtG3v/37UEgXC6y0nc0L3XDBz/HK/LrbU4/7osfvcA== +"@dhis2/cli-app-scripts@^11.2.2": + version "11.2.2" + resolved "https://registry.yarnpkg.com/@dhis2/cli-app-scripts/-/cli-app-scripts-11.2.2.tgz#fb7d3d487fb8c0d1e690f8f91fc0d3d884dccd35" + integrity sha512-muCg1UjCIN2WZ5FoVJwhdD+SBNO8NYvwZiUoltoHZ244L1v8pfPJifr7zgMLKp+1AsO4DB4nq3ne6qR3elZgiQ== dependencies: "@babel/core" "^7.6.2" "@babel/plugin-proposal-class-properties" "^7.8.3" @@ -2130,7 +2139,7 @@ "@babel/preset-env" "^7.14.7" "@babel/preset-react" "^7.0.0" "@babel/preset-typescript" "^7.6.0" - "@dhis2/app-shell" "10.3.9" + "@dhis2/app-shell" "11.2.2" "@dhis2/cli-helpers-engine" "^3.2.0" "@jest/core" "^27.0.6" "@pmmmwh/react-refresh-webpack-plugin" "^0.5.4" @@ -2261,10 +2270,10 @@ resolved "https://registry.yarnpkg.com/@dhis2/prop-types/-/prop-types-3.1.2.tgz#65b8ad2da8cd2f72bc8b951049a6c9d1b97af3e9" integrity sha512-eM0jjLOWvtXWqSFp5YC4DHFpkP8Y1D2eUwGV7MBWjni+o27oesVan+oT7WHeOeLdlAd4acRJrnaaAyB4Ck1wGQ== -"@dhis2/pwa@10.3.9": - version "10.3.9" - resolved "https://registry.yarnpkg.com/@dhis2/pwa/-/pwa-10.3.9.tgz#c119b7da18218a4ea3d18c7eb01c2aca5fc619a2" - integrity sha512-yYxOjgi1D0S6Ah5xQwZauQ3zhXuiojc9AMkP+J+bpZYQhj4hzB2dKyJ252dClO6P/7EtoSj9XJOsMx007uIUEQ== +"@dhis2/pwa@11.2.2": + version "11.2.2" + resolved "https://registry.yarnpkg.com/@dhis2/pwa/-/pwa-11.2.2.tgz#fec40b4022d6e0133e4f1a6910919088e6d0392c" + integrity sha512-WdcH1UwoaFas4voScQ5zwfsTlYGJlo6eFgR991efAytEUGce4UsKFtS+KvtSBNMmQp+9F09tq+BDV52gPv/mdA== dependencies: idb "^6.0.0" workbox-core "^6.1.5" @@ -2304,7 +2313,7 @@ resolved "https://registry.yarnpkg.com/@dhis2/ui-icons/-/ui-icons-9.4.2.tgz#b2e069534945eb05ef627dd3a54b0583beb717e1" integrity sha512-ZLBHlxEQmwdOfoYNbpx4MohNP/V/0Y3aucIywVXMvAZne0qPjkjq7es8OZMmacdMNIKhyJjCpT6IqjwoYgLQUw== -"@dhis2/ui@^8.12.3", "@dhis2/ui@^9.4.2": +"@dhis2/ui@^9.4.2", "@dhis2/ui@^9.4.4": version "9.4.2" resolved "https://registry.yarnpkg.com/@dhis2/ui/-/ui-9.4.2.tgz#85aeaa5da1d558c882d9588d6b7a917396548ac9" integrity sha512-dvFEK11kzYx29rkDDRk49lpGpqB9bEf4WEO9eSsw/7bK/GaS/uiS7ca8c30R+tdUmjvubBNxJiVJI07EwxtHyw== @@ -4800,6 +4809,15 @@ bcrypt-pbkdf@^1.0.0: dependencies: tweetnacl "^0.14.3" +belter@^1.0.41: + version "1.0.190" + resolved "https://registry.yarnpkg.com/belter/-/belter-1.0.190.tgz#491857550ef240d9c66b56fc637991f5c3089966" + integrity sha512-jz05FHrO+bwitdI6JxV5ESyRdVhTcwMWQ7L4o+q/R4LNJFQrG58sp9EiwsSjhbihhiyYFcmmCMRRagxte6igtw== + dependencies: + cross-domain-safe-weakmap "^1" + cross-domain-utils "^2" + zalgo-promise "^1" + bfj@^7.0.2: version "7.0.2" resolved "https://registry.yarnpkg.com/bfj/-/bfj-7.0.2.tgz#1988ce76f3add9ac2913fd8ba47aad9e651bfbb2" @@ -6017,6 +6035,20 @@ create-hmac@^1.1.0, create-hmac@^1.1.4, create-hmac@^1.1.7: safe-buffer "^5.0.1" sha.js "^2.4.8" +cross-domain-safe-weakmap@^1, cross-domain-safe-weakmap@^1.0.1: + version "1.0.29" + resolved "https://registry.yarnpkg.com/cross-domain-safe-weakmap/-/cross-domain-safe-weakmap-1.0.29.tgz#0847975c27d9e1cc840f24c1745311958df98022" + integrity sha512-VLoUgf2SXnf3+na8NfeUFV59TRZkIJqCIATaMdbhccgtnTlSnHXkyTRwokngEGYdQXx8JbHT9GDYitgR2sdjuA== + dependencies: + cross-domain-utils "^2.0.0" + +cross-domain-utils@^2, cross-domain-utils@^2.0.0: + version "2.0.38" + resolved "https://registry.yarnpkg.com/cross-domain-utils/-/cross-domain-utils-2.0.38.tgz#2eaf321c4dfdb61596805ca4233fde4400cb6377" + integrity sha512-zZfi3+2EIR9l4chrEiXI2xFleyacsJf8YMLR1eJ0Veb5FTMXeJ3DpxDjZkto2FhL/g717WSELqbptNSo85UJDw== + dependencies: + zalgo-promise "^1.0.11" + cross-spawn@^5.0.1: version "5.1.0" resolved "https://registry.yarnpkg.com/cross-spawn/-/cross-spawn-5.1.0.tgz#e8bd0efee58fcff6f8f94510a0a554bbfa235449" @@ -12382,6 +12414,17 @@ posix-character-classes@^0.1.0: resolved "https://registry.yarnpkg.com/posix-character-classes/-/posix-character-classes-0.1.1.tgz#01eac0fe3b5af71a2a6c02feabb8c1fef7e00eab" integrity sha512-xTgYBc3fuo7Yt7JbiuFxSYGToMoz8fLoE6TC9Wx1P/u+LfeThMOAqmuyECnlBaaJb+u1m9hHiXUEtwW4OzfUJg== +post-robot@^10.0.46: + version "10.0.46" + resolved "https://registry.yarnpkg.com/post-robot/-/post-robot-10.0.46.tgz#39cea5b51033729390fc7c90be3285cd285f0377" + integrity sha512-EgVJiuvI4iRWDZvzObWes0X/n8olWBEJWxlSw79zmhpgkigX8UsVL4VOBhVtoJKwf0Y9qP9g2zOONw1rv80QbA== + dependencies: + belter "^1.0.41" + cross-domain-safe-weakmap "^1.0.1" + cross-domain-utils "^2.0.0" + universal-serialize "^1.0.4" + zalgo-promise "^1.0.3" + postcss-attribute-case-insensitive@^5.0.2: version "5.0.2" resolved "https://registry.yarnpkg.com/postcss-attribute-case-insensitive/-/postcss-attribute-case-insensitive-5.0.2.tgz#03d761b24afc04c09e757e92ff53716ae8ea2741" @@ -15697,6 +15740,11 @@ unique-string@^2.0.0: dependencies: crypto-random-string "^2.0.0" +universal-serialize@^1.0.4: + version "1.0.10" + resolved "https://registry.yarnpkg.com/universal-serialize/-/universal-serialize-1.0.10.tgz#3279bb30f47290ea479f45135620f98fa9d3f3a6" + integrity sha512-FdouA4xSFa0fudk1+z5vLWtxZCoC0Q9lKYV3uUdFl7DttNfolmiw2ASr5ddY+/Yz6Isr68u3IqC9XMSwMP+Pow== + universalify@^0.1.0: version "0.1.2" resolved "https://registry.yarnpkg.com/universalify/-/universalify-0.1.2.tgz#b646f69be3942dabcecc9d6639c80dc105efaa66" @@ -16674,6 +16722,11 @@ yocto-queue@^0.1.0: resolved "https://registry.yarnpkg.com/yocto-queue/-/yocto-queue-0.1.0.tgz#0294eb3dee05028d31ee1a5fa2c556a6aaf10a1b" integrity sha512-rVksvsnNCdJ/ohGc6xgPwyN8eheCxsiLM8mxuE/t/mOVqJewPuO1miLpTHQiRgTKCLexL4MeAFVagts7HmNZ2Q== +zalgo-promise@^1, zalgo-promise@^1.0.11, zalgo-promise@^1.0.3: + version "1.0.48" + resolved "https://registry.yarnpkg.com/zalgo-promise/-/zalgo-promise-1.0.48.tgz#9e33eef502d5ed9f5a09fc5728c833c3e87afa2e" + integrity sha512-LLHANmdm53+MucY9aOFIggzYtUdkSBFxUsy4glTTQYNyK6B3uCPWTbfiGvSrEvLojw0mSzyFJ1/RRLv+QMNdzQ== + zip-stream@^2.1.2: version "2.1.3" resolved "https://registry.yarnpkg.com/zip-stream/-/zip-stream-2.1.3.tgz#26cc4bdb93641a8590dd07112e1f77af1758865b" From d8e569445d92c268b05d2e7b7716d8b661bd584b Mon Sep 17 00:00:00 2001 From: Hendrik de Graaf Date: Mon, 27 May 2024 12:30:37 +0200 Subject: [PATCH 05/62] chore: remove & pre- and suffixes from modifyDownloadUrl search and replace strings (#528) --- public/push-analytics.json | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/public/push-analytics.json b/public/push-analytics.json index 55c15241e..7f64626d7 100644 --- a/public/push-analytics.json +++ b/public/push-analytics.json @@ -17,8 +17,8 @@ "obtainDownloadArtifact": { "strategy": "scrapeDownloadPage", "modifyDownloadUrl": { - "searchValue": "&paging=false&", - "replaceValue": "&paging=true&pageSize=50&" + "searchValue": "paging=false", + "replaceValue": "paging=true&pageSize=50" }, "htmlSelector": "body", "cssSelector": "style" From 8738ef199231da596e0bdde78bd0b75acc770f0f Mon Sep 17 00:00:00 2001 From: Martin Date: Fri, 31 May 2024 10:58:47 +0300 Subject: [PATCH 06/62] feat: bump Line Listing to min version 2.39 (DHIS2-17209) (#523) BREAKING CHANGE: requires core version 2.39 and above --- .github/workflows/e2e-dev.yml | 4 +- README.md | 16 +- cypress/integration/createEvent.cy.js | 38 +- cypress/integration/eventStatus.cy.js | 5 +- cypress/integration/legendSet.cy.js | 2 +- cypress/integration/programDimensions.cy.js | 68 +-- cypress/integration/table.cy.js | 426 +++++++++--------- cypress/integration/timeDimensions.cy.js | 20 +- cypress/plugins/excludeByVersionTags.js | 12 +- d2.config.js | 2 +- src/__tests__/cypressGetExcludedTags.spec.js | 74 +-- src/components/Dialogs/FixedDimension.js | 15 +- .../YourDimensionsPanel/useYourDimensions.js | 1 - .../Visualization/useAnalyticsData.js | 1 - src/modules/options/lineListConfig.js | 4 +- src/reducers/ui.js | 8 +- 16 files changed, 282 insertions(+), 414 deletions(-) diff --git a/.github/workflows/e2e-dev.yml b/.github/workflows/e2e-dev.yml index 832a328bf..e780ed875 100644 --- a/.github/workflows/e2e-dev.yml +++ b/.github/workflows/e2e-dev.yml @@ -28,7 +28,7 @@ jobs: id: instance-version uses: dhis2/action-instance-version@v1 with: - instance-url: https://test.e2e.dhis2.org/analytics-2.41d + instance-url: https://test.e2e.dhis2.org/analytics-dev username: ${{ secrets.username }} password: ${{ secrets.password }} @@ -62,7 +62,7 @@ jobs: env: BROWSER: none CYPRESS_RECORD_KEY: ${{ secrets.recordkey }} - CYPRESS_dhis2BaseUrl: https://test.e2e.dhis2.org/analytics-2.41d + CYPRESS_dhis2BaseUrl: https://test.e2e.dhis2.org/analytics-dev CYPRESS_dhis2InstanceVersion: ${{ needs.compute-dev-version.outputs.version }} CYPRESS_dhis2Username: ${{ secrets.username }} CYPRESS_dhis2Password: ${{ secrets.password }} diff --git a/README.md b/README.md index b4359a35f..65d280c23 100644 --- a/README.md +++ b/README.md @@ -59,14 +59,14 @@ In order to run the cypress tests locally make sure you have configured your git Make sure that the `dhis2InstanceVersion` matches the version that is running at the dhis2BaseUrl. You can use 'dev' if the instance is dev, or else get the running instance version from this endpoint: `/api/system/info?fields=version` (which might return something like this: `2.40-SNAPSHOT`) -Here is an example configuration for running tests against 2.38: +Here is an example configuration for running tests against 2.39: ``` { - "dhis2BaseUrl": "https://test.e2e.dhis2.org/2.38lytics/", + "dhis2BaseUrl": "https://test.e2e.dhis2.org/analytics-2.39/", "dhis2Username": ..., "dhis2Password": ... - "dhis2InstanceVersion": "2.38" + "dhis2InstanceVersion": "2.39" } ``` @@ -91,13 +91,13 @@ This setup helps in managing Cypress Cloud credits more efficiently, ensuring re #### Configure Cypress tests to run only on certain versions -Some tests may only be applicable to some supported versions of DHIS2 (DHIS2 officially supports the latest 3 released versions). For instance, if you add a feature to 2.39 that would not work on 2.38, then a test for that feature should only run on instances >=2.39, and should not run on instances <2.39. To configure a test to only run on certain versions, add a tag array as the first argument to the test's `describe` or `it`. You can add multiple tags to the array if that is relevant. Tags must be in the form of < <= > >= otherwise they will be ignored. In addition, the tags contain only the minor version, i.e., "39", not "2.39". Here are some tag examples, given a minimum supported version of 2.38: +Some tests may only be applicable to some supported versions of DHIS2 (DHIS2 officially supports the latest 3 released versions). For instance, if you add a feature to 2.42 that would not work on 2.41, then a test for that feature should only run on instances >=2.42, and should not run on instances <2.41. To configure a test to only run on certain versions, add a tag array as the first argument to the test's `describe` or `it`. You can add multiple tags to the array if that is relevant. Tags must be in the form of < <= > >= otherwise they will be ignored. In addition, the tags contain only the minor version, i.e., "41", not "2.41". Here are some tag examples, given the minimum supported version of 2.39: ``` -it(['<39'], 'runs on 38 only', () => { test implementation }) -it(['<=39'], 'runs on 38 and 39', () => { test implementation }) -it(['>39'], 'runs on 40 and dev', () => { test implementation }) -it(['>=39'], 'runs on 39, 40 and dev', () => { test implementation }) +it(['<40'], 'runs on 39 only', () => { test implementation }) +it(['<=40'], 'runs on 39 and 40', () => { test implementation }) +it(['>40'], 'runs on 41 and dev', () => { test implementation }) +it(['>=40'], 'runs on 40, 41 and dev', () => { test implementation }) ``` Tests without tags will run on all supported versions plus dev. diff --git a/cypress/integration/createEvent.cy.js b/cypress/integration/createEvent.cy.js index 662582ed7..880da9230 100644 --- a/cypress/integration/createEvent.cy.js +++ b/cypress/integration/createEvent.cy.js @@ -23,7 +23,11 @@ import { } from '../helpers/table.js' import { EXTENDED_TIMEOUT } from '../support/util.js' -const runTests = ({ scheduledDateIsSupported } = {}) => { +describe('event', () => { + beforeEach(() => { + goToStartPage() + cy.getBySel('main-sidebar', EXTENDED_TIMEOUT) + }) it('creates an event line list (tracker program)', () => { const eventProgram = E2E_PROGRAM const dimensionName = TEST_DIM_TEXT @@ -47,11 +51,9 @@ const runTests = ({ scheduledDateIsSupported } = {}) => { cy.getBySel('dimension-item-enrollmentDate').contains( eventProgram[DIMENSION_ID_ENROLLMENT_DATE] ) - if (scheduledDateIsSupported) { - cy.getBySel('dimension-item-scheduledDate').contains( - eventProgram[DIMENSION_ID_SCHEDULED_DATE] - ) - } + cy.getBySel('dimension-item-scheduledDate').contains( + eventProgram[DIMENSION_ID_SCHEDULED_DATE] + ) cy.getBySel('dimension-item-incidentDate').contains( eventProgram[DIMENSION_ID_INCIDENT_DATE] @@ -94,9 +96,7 @@ const runTests = ({ scheduledDateIsSupported } = {}) => { programName: 'Inpatient morbidity and mortality', [DIMENSION_ID_EVENT_DATE]: 'Report date', [DIMENSION_ID_ENROLLMENT_DATE]: 'Enrollment date', - ...(scheduledDateIsSupported - ? { [DIMENSION_ID_SCHEDULED_DATE]: 'Scheduled date' } - : {}), + [DIMENSION_ID_SCHEDULED_DATE]: 'Scheduled date', [DIMENSION_ID_INCIDENT_DATE]: 'Date of Discharge', [DIMENSION_ID_LAST_UPDATED]: 'Last updated on', } @@ -119,9 +119,7 @@ const runTests = ({ scheduledDateIsSupported } = {}) => { cy.getBySel('dimension-item-enrollmentDate').should('not.exist') - if (scheduledDateIsSupported) { - cy.getBySel('dimension-item-scheduledDate').should('not.exist') - } + cy.getBySel('dimension-item-scheduledDate').should('not.exist') cy.getBySel('dimension-item-incidentDate').should('not.exist') @@ -202,20 +200,4 @@ const runTests = ({ scheduledDateIsSupported } = {}) => { assertChipContainsText(dimensionName, 'all') assertChipContainsText(periodLabel, 1) }) -} - -describe(['>=39'], 'event', () => { - beforeEach(() => { - goToStartPage() - cy.getBySel('main-sidebar', EXTENDED_TIMEOUT) - }) - runTests({ scheduledDateIsSupported: true }) -}) - -describe(['<39'], 'event', () => { - beforeEach(() => { - goToStartPage() - cy.getBySel('main-sidebar', EXTENDED_TIMEOUT) - }) - runTests() }) diff --git a/cypress/integration/eventStatus.cy.js b/cypress/integration/eventStatus.cy.js index 339573afd..0d1106a26 100644 --- a/cypress/integration/eventStatus.cy.js +++ b/cypress/integration/eventStatus.cy.js @@ -37,7 +37,7 @@ describe('event status (event)', () => { clickAddRemoveProgramDimension(dimensionName) } - it(['>=39'], 'can be filtered by status SCHEDULED', () => { + it('can be filtered by status SCHEDULED', () => { setUpTable() selectFixedPeriod({ @@ -170,9 +170,6 @@ describe('event status (event)', () => { `${currentYear}-01-01`, ]) - // TODO: determine expected once 2.38analytics_dev is available - // expectTableToMatchRows(['Active', 'Completed', 'Completed']) - getTableHeaderCells().contains(dimensionName).should('be.visible') assertChipContainsText(dimensionName, 'all') diff --git a/cypress/integration/legendSet.cy.js b/cypress/integration/legendSet.cy.js index 01549351b..d1a8110e6 100644 --- a/cypress/integration/legendSet.cy.js +++ b/cypress/integration/legendSet.cy.js @@ -65,7 +65,7 @@ describe('Options - Legend', () => { .should('have.css', 'color', defaultTextColor) }) - it(['>=39'], 'apples legend correctly (event)', () => { + it('apples legend correctly (event)', () => { const TEST_LEGEND_AGE = { name: 'Age 10y interval', cells: [ diff --git a/cypress/integration/programDimensions.cy.js b/cypress/integration/programDimensions.cy.js index 6f3e1dc69..8b492e0f4 100644 --- a/cypress/integration/programDimensions.cy.js +++ b/cypress/integration/programDimensions.cy.js @@ -29,7 +29,6 @@ const assertDimensionsForEventWithoutProgramSelected = () => { const assertDimensionsForEventWithProgramSelected = ( program, - scheduledDateIsSupported, showIncidentDate ) => { cy.getBySel('dimension-item-ou').contains('Organisation unit') @@ -50,13 +49,9 @@ const assertDimensionsForEventWithProgramSelected = ( program[DIMENSION_ID_ENROLLMENT_DATE] ) - if (scheduledDateIsSupported) { - cy.getBySel('dimension-item-scheduledDate').contains( - program[DIMENSION_ID_SCHEDULED_DATE] - ) - } else { - cy.getBySel('dimension-item-scheduledDate').should('not.exist') - } + cy.getBySel('dimension-item-scheduledDate').contains( + program[DIMENSION_ID_SCHEDULED_DATE] + ) if (showIncidentDate) { cy.getBySel('dimension-item-incidentDate').contains( @@ -110,7 +105,12 @@ export const programDimensionsIsDisabled = () => .and('have.css', 'user-select', 'none') .and('have.css', 'cursor', 'not-allowed') -const runTests = ({ scheduledDateIsSupported } = {}) => { +describe('program dimensions', () => { + beforeEach(() => { + goToStartPage() + cy.getBySel('main-sidebar', EXTENDED_TIMEOUT).should('be.visible') + }) + /* Test data used: E2E program @@ -167,11 +167,7 @@ I.e. Scheduled date works like this: openProgramDimensionsSidebar() - assertDimensionsForEventWithProgramSelected( - program, - scheduledDateIsSupported, - true - ) + assertDimensionsForEventWithProgramSelected(program, true) // add main and time dimensions @@ -188,11 +184,9 @@ I.e. Scheduled date works like this: program[DIMENSION_ID_ENROLLMENT_DATE], program[DIMENSION_ID_INCIDENT_DATE], ] - if (scheduledDateIsSupported) { - expectedUnselectedDimensions.push( - program[DIMENSION_ID_SCHEDULED_DATE] - ) - } + expectedUnselectedDimensions.push( + program[DIMENSION_ID_SCHEDULED_DATE] + ) expectedSelectedDimensions.forEach((dimension) => clickAddRemoveMainDimension(dimension) @@ -260,10 +254,7 @@ I.e. Scheduled date works like this: .its('length') .should('be.gte', 1) - assertDimensionsForEventWithProgramSelected( - program.defaultStage, - scheduledDateIsSupported - ) + assertDimensionsForEventWithProgramSelected(program.defaultStage) // add a data element @@ -293,11 +284,9 @@ I.e. Scheduled date works like this: program.defaultStage[DIMENSION_ID_EVENT_DATE], ] - if (scheduledDateIsSupported) { - expectedUnselectedDimensions.push( - program.defaultStage[DIMENSION_ID_SCHEDULED_DATE] - ) - } + expectedUnselectedDimensions.push( + program.defaultStage[DIMENSION_ID_SCHEDULED_DATE] + ) expectedSelectedMainDimensions.forEach((dimension) => clickAddRemoveMainDimension(dimension) @@ -320,10 +309,7 @@ I.e. Scheduled date works like this: openProgramDimensionsSidebar() - assertDimensionsForEventWithProgramSelected( - TEST_PROGRAM.stage, - scheduledDateIsSupported - ) + assertDimensionsForEventWithProgramSelected(TEST_PROGRAM.stage) // assert that the DE was removed but the PA remained @@ -499,24 +485,6 @@ I.e. Scheduled date works like this: getListChildren().should('have.length', 106) }) }) -} - -describe(['>=39'], 'program dimensions', () => { - beforeEach(() => { - goToStartPage() - cy.getBySel('main-sidebar', EXTENDED_TIMEOUT).should('be.visible') - }) - - runTests({ scheduledDateIsSupported: true }) -}) - -describe(['<39'], 'program dimensions', () => { - beforeEach(() => { - goToStartPage() - cy.getBySel('main-sidebar', EXTENDED_TIMEOUT).should('be.visible') - }) - - runTests() }) describe('counting selection', () => { diff --git a/cypress/integration/table.cy.js b/cypress/integration/table.cy.js index 1ceebc1eb..d9dd4f7dd 100644 --- a/cypress/integration/table.cy.js +++ b/cypress/integration/table.cy.js @@ -117,263 +117,245 @@ const programDataDimensions = [ { label: TEST_DIM_YESNO, value: 'Yes' }, ] -const assertColumnHeaders = () => { - const dimensionName = TEST_DIM_TEXT - - selectEventWithProgramDimensions({ - ...trackerProgram, - dimensions: [dimensionName], - }) +const init = () => { + goToStartPage() - const testMainDimensions = mainDimensions.map( - (dimension) => dimension.label - ) - - const testProgramDimensions = programDimensions.map( - (dimension) => dimension.label - ) - - // add main and time dimensions - testMainDimensions.forEach((label) => clickAddRemoveMainDimension(label)) - testProgramDimensions.forEach((label) => - clickAddRemoveProgramDimension(label) - ) - - selectFixedPeriod({ - label: periodLabel, - period: { - type: 'Daily', - year: `${getPreviousYearStr()}`, - name: `${getPreviousYearStr()}-12-10`, - }, - }) + // remove org unit + cy.getBySel('layout-chip-ou', EXTENDED_TIMEOUT) + .findBySel('dimension-menu-button') + .click() + cy.containsExact('Remove').click() +} - clickMenubarUpdateButton() +describe('table', () => { + beforeEach(init) + it('click on column header opens the dimension dialog', () => { + // feat: https://dhis2.atlassian.net/browse/DHIS2-11192 + programDimensions.push({ + label: trackerProgram[DIMENSION_ID_SCHEDULED_DATE], + value: `${previousYear}-12-10`, + }) + const dimensionName = TEST_DIM_TEXT - expectTableToBeVisible() + selectEventWithProgramDimensions({ + ...trackerProgram, + dimensions: [dimensionName], + }) - const labels = [ - dimensionName, - ...testMainDimensions, - ...testProgramDimensions, - ] + const testMainDimensions = mainDimensions.map( + (dimension) => dimension.label + ) - // check the correct number of columns - getTableHeaderCells().its('length').should('equal', labels.length) + const testProgramDimensions = programDimensions.map( + (dimension) => dimension.label + ) - // check the column headers in the table - labels.forEach((label) => { - getTableHeaderCells() - .contains(label) - .scrollIntoView() - .should('be.visible') - .click() - cy.getBySelLike('modal-title').contains(label) - cy.getBySelLike('modal-action-cancel').click() - }) -} + // add main and time dimensions + testMainDimensions.forEach((label) => + clickAddRemoveMainDimension(label) + ) + testProgramDimensions.forEach((label) => + clickAddRemoveProgramDimension(label) + ) -const assertDimensions = () => { - selectEventWithProgram(trackerProgram) + selectFixedPeriod({ + label: periodLabel, + period: { + type: 'Daily', + year: `${getPreviousYearStr()}`, + name: `${getPreviousYearStr()}-12-10`, + }, + }) - openProgramDimensionsSidebar() + clickMenubarUpdateButton() - mainDimensions.forEach(({ label }) => clickAddRemoveMainDimension(label)) + expectTableToBeVisible() - programDimensions.forEach(({ label }) => - clickAddRemoveProgramDimension(label) - ) + const labels = [ + dimensionName, + ...testMainDimensions, + ...testProgramDimensions, + ] - programDataDimensions.forEach(({ label }) => - clickAddRemoveProgramDataDimension(label) - ) + // check the correct number of columns + getTableHeaderCells().its('length').should('equal', labels.length) - selectFixedPeriod({ - label: periodLabel, - period: { - type: 'Daily', - year: `${getPreviousYearStr()}`, - name: `${getPreviousYearStr()}-12-10`, - }, + // check the column headers in the table + labels.forEach((label) => { + getTableHeaderCells() + .contains(label) + .scrollIntoView() + .should('be.visible') + .click() + cy.getBySelLike('modal-title').contains(label) + cy.getBySelLike('modal-action-cancel').click() + }) }) + it('dimensions display correct values in the visualization', () => { + programDataDimensions.push({ + label: TEST_DIM_NUMBER_OPTIONSET, + value: 'One', + }) + selectEventWithProgram(trackerProgram) - clickMenubarUpdateButton() - - expectTableToBeVisible() + openProgramDimensionsSidebar() - const allDimensions = [ - ...mainDimensions, - ...programDimensions, - ...programDataDimensions, - ] + mainDimensions.forEach(({ label }) => + clickAddRemoveMainDimension(label) + ) - getTableHeaderCells().its('length').should('eq', allDimensions.length) + programDimensions.forEach(({ label }) => + clickAddRemoveProgramDimension(label) + ) - getTableRows().its('length').should('eq', 1) + programDataDimensions.forEach(({ label }) => + clickAddRemoveProgramDataDimension(label) + ) - // assert the values of the dimensions - allDimensions.forEach(({ value }, index) => { - getTableDataCells().eq(index).invoke('text').should('eq', value) - }) + selectFixedPeriod({ + label: periodLabel, + period: { + type: 'Daily', + year: `${getPreviousYearStr()}`, + name: `${getPreviousYearStr()}-12-10`, + }, + }) - // check that the URL dimension is wrapped in a link - if ( - allDimensions.includes((dimension) => dimension.label === TEST_DIM_URL) - ) { - getTableDataCells() - .eq( - allDimensions.findIndex( - (dimension) => dimension.label === TEST_DIM_URL - ) - ) - .find('a') - .should( - 'have.attr', - 'href', - allDimensions.find( - (dimension) => dimension.label === TEST_DIM_URL - ).value - ) - } -} + clickMenubarUpdateButton() -const assertSorting = () => { - // remove any DGS to allow numeric value comparison - openStyleOptionsModal() + expectTableToBeVisible() - cy.getBySel('dgs-select-content') - .findBySel('dhis2-uicore-select-input') - .click() - cy.contains('None').click() - clickOptionsModalUpdateButton() + const allDimensions = [ + ...mainDimensions, + ...programDimensions, + ...programDataDimensions, + ] - selectEventWithProgramDimensions({ - ...trackerProgram, - dimensions: [TEST_DIM_INTEGER], - }) + getTableHeaderCells().its('length').should('eq', allDimensions.length) - // filter empty/null values on E2E - Integer dimension - // this helps with the value comparison when sorting - cy.getBySelLike('layout-chip').contains(TEST_DIM_INTEGER).click() - cy.getBySel('button-add-condition').click() - cy.contains('Choose a condition type').click() - cy.contains('is not empty / not null').click() - cy.getBySel('conditions-modal').contains('Update').click() - - programDimensions - .filter((dimension) => dimension.label === 'Organisation unit') - .forEach(({ label }) => clickAddRemoveProgramDimension(label)) - - selectRelativePeriod({ - label: periodLabel, - period: TEST_REL_PE_THIS_YEAR, - }) + getTableRows().its('length').should('eq', 1) - clickMenubarUpdateButton() + // assert the values of the dimensions + allDimensions.forEach(({ value }, index) => { + getTableDataCells().eq(index).invoke('text').should('eq', value) + }) - expectTableToBeVisible() + // check that the URL dimension is wrapped in a link + if ( + allDimensions.includes( + (dimension) => dimension.label === TEST_DIM_URL + ) + ) { + getTableDataCells() + .eq( + allDimensions.findIndex( + (dimension) => dimension.label === TEST_DIM_URL + ) + ) + .find('a') + .should( + 'have.attr', + 'href', + allDimensions.find( + (dimension) => dimension.label === TEST_DIM_URL + ).value + ) + } + }) + it('data can be sorted', () => { + // remove any DGS to allow numeric value comparison + openStyleOptionsModal() - cy.intercept(/api\/\d+\/analytics(\S)*asc=/).as('getAnalyticsSortAsc') + cy.getBySel('dgs-select-content') + .findBySel('dhis2-uicore-select-input') + .click() + cy.contains('None').click() + clickOptionsModalUpdateButton() - getTableHeaderCells().find(`button[title*="${TEST_DIM_INTEGER}"]`).click() + selectEventWithProgramDimensions({ + ...trackerProgram, + dimensions: [TEST_DIM_INTEGER], + }) - // wait for table to be sorted - cy.wait('@getAnalyticsSortAsc') + // filter empty/null values on E2E - Integer dimension + // this helps with the value comparison when sorting + cy.getBySelLike('layout-chip').contains(TEST_DIM_INTEGER).click() + cy.getBySel('button-add-condition').click() + cy.contains('Choose a condition type').click() + cy.contains('is not empty / not null').click() + cy.getBySel('conditions-modal').contains('Update').click() + + programDimensions + .filter((dimension) => dimension.label === 'Organisation unit') + .forEach(({ label }) => clickAddRemoveProgramDimension(label)) + + selectRelativePeriod({ + label: periodLabel, + period: TEST_REL_PE_THIS_YEAR, + }) - expectTableToBeUpdated() + clickMenubarUpdateButton() - getTableRows() - .eq(0) - .find('td') - .eq(0) - .invoke('text') - .then(parseInt) - .then(($cell0Value) => - getTableRows() - .eq(1) - .find('td') - .eq(0) - .invoke('text') - .then(parseInt) - .then(($cell1Value) => - expect($cell0Value).to.be.lessThan($cell1Value) - ) - ) + expectTableToBeVisible() - cy.intercept(/api\/(\d+)\/analytics(\S)*desc=/).as('getAnalyticsSortDesc') - - getTableHeaderCells().find(`button[title*="${TEST_DIM_INTEGER}"]`).click() - - // wait for table to be sorted - cy.wait('@getAnalyticsSortDesc') - - expectTableToBeUpdated() - - getTableRows() - .eq(0) - .find('td') - .eq(0) - .invoke('text') - .then(parseInt) - .then(($cell0Value) => - getTableRows() - .eq(1) - .find('td') - .eq(0) - .invoke('text') - .then(parseInt) - .then(($cell1Value) => - expect($cell0Value).to.be.greaterThan($cell1Value) - ) - ) -} + cy.intercept(/api\/\d+\/analytics(\S)*asc=/).as('getAnalyticsSortAsc') -const init = () => { - goToStartPage() + getTableHeaderCells() + .find(`button[title*="${TEST_DIM_INTEGER}"]`) + .click() - // remove org unit - cy.getBySel('layout-chip-ou', EXTENDED_TIMEOUT) - .findBySel('dimension-menu-button') - .click() - cy.containsExact('Remove').click() -} + // wait for table to be sorted + cy.wait('@getAnalyticsSortAsc') + + expectTableToBeUpdated() + + getTableRows() + .eq(0) + .find('td') + .eq(0) + .invoke('text') + .then(parseInt) + .then(($cell0Value) => + getTableRows() + .eq(1) + .find('td') + .eq(0) + .invoke('text') + .then(parseInt) + .then(($cell1Value) => + expect($cell0Value).to.be.lessThan($cell1Value) + ) + ) -describe(['>=38', '<39'], 'table', () => { - beforeEach(init) - it('click on column header opens the dimension dialog (2.38)', () => { - assertColumnHeaders() - }) + cy.intercept(/api\/(\d+)\/analytics(\S)*desc=/).as( + 'getAnalyticsSortDesc' + ) - it('dimensions display correct values in the visualization (2.38)', () => { - programDataDimensions.push({ - label: TEST_DIM_NUMBER_OPTIONSET, - value: 'One', - }) - assertDimensions() - }) - it('data can be sorted', () => { - assertSorting() - }) -}) + getTableHeaderCells() + .find(`button[title*="${TEST_DIM_INTEGER}"]`) + .click() -describe(['>=39'], 'table', () => { - beforeEach(init) - it('click on column header opens the dimension dialog (>=2.39)', () => { - // feat: https://dhis2.atlassian.net/browse/DHIS2-11192 - programDimensions.push({ - label: trackerProgram[DIMENSION_ID_SCHEDULED_DATE], - value: `${previousYear}-12-10`, - }) - assertColumnHeaders() - }) - it('dimensions display correct values in the visualization (>=2.39)', () => { - programDataDimensions.push({ - label: TEST_DIM_NUMBER_OPTIONSET, - value: 'One', - }) - assertDimensions() - }) - it('data can be sorted (>=2.39)', () => { - assertSorting() + // wait for table to be sorted + cy.wait('@getAnalyticsSortDesc') + + expectTableToBeUpdated() + + getTableRows() + .eq(0) + .find('td') + .eq(0) + .invoke('text') + .then(parseInt) + .then(($cell0Value) => + getTableRows() + .eq(1) + .find('td') + .eq(0) + .invoke('text') + .then(parseInt) + .then(($cell1Value) => + expect($cell0Value).to.be.greaterThan($cell1Value) + ) + ) }) }) diff --git a/cypress/integration/timeDimensions.cy.js b/cypress/integration/timeDimensions.cy.js index 80de48644..82851356b 100644 --- a/cypress/integration/timeDimensions.cy.js +++ b/cypress/integration/timeDimensions.cy.js @@ -60,25 +60,7 @@ const assertTimeDimension = (dimension) => { }) } -describe(['>37', '<39'], 'time dimensions', () => { - beforeEach(() => { - goToStartPage() - }) - - // Note: The rowsLengths needs to be updated when events are changed or added to the database - const timeDimensions = [ - { id: DIMENSION_ID_EVENT_DATE, rowsLength: 7 }, - { id: DIMENSION_ID_ENROLLMENT_DATE, rowsLength: 12 }, - { id: DIMENSION_ID_INCIDENT_DATE, rowsLength: 12 }, - { id: DIMENSION_ID_LAST_UPDATED, rowsLength: 10 }, - ] - - timeDimensions.forEach((dimension) => { - assertTimeDimension(dimension) - }) -}) - -describe(['>=39'], 'time dimensions', () => { +describe('time dimensions', () => { beforeEach(() => { goToStartPage() }) diff --git a/cypress/plugins/excludeByVersionTags.js b/cypress/plugins/excludeByVersionTags.js index 7a23dc0ea..0544f344d 100644 --- a/cypress/plugins/excludeByVersionTags.js +++ b/cypress/plugins/excludeByVersionTags.js @@ -5,9 +5,9 @@ The list of excluded tags returned by getExcludedTags are the tags that cypress Using excluded tags (instead of included tags) allows for most of the tests to remain untagged and be run against all supported versions of DHIS2. -DHIS2 officially supports the latest 3 released versions of DHIS2. For example: 2.38, 2.39 and 2.40. Dev would then have version 2.41-SNAPSHOT. Therefore, the getExcludedTags calculates the range of tags based on minimum supported version + 3 (2.38, 2.39, 2.40, 2.41-SNAPSHOT) +DHIS2 officially supports the latest 3 released versions of DHIS2. For example: 2.39, 2.40 and 2.41. Dev would then have version 2.41-SNAPSHOT. Therefore, the getExcludedTags calculates the range of tags based on minimum supported version + 3 (2.39, 2.40, 2.41, 2.42) -With the minimum supported version of 2.38, the tags will always contain "38", "39", "40" and "41", but the comparison symbols will depend on the current instance version. +With the minimum supported version of 2.39, the tags will always contain "39", "40" and "41", but the comparison symbols will depend on the current instance version. Allowed tag comparisons are ">", ">=", "<", "<=" */ @@ -40,7 +40,7 @@ const getExcludedTags = (v) => { let excludeTags = [] if (currentInstanceVersion === MIN_DHIS2_VERSION) { - // For example instance = 2.38, MIN = 2.38 + // For example instance = 2.39, MIN = 2.39 excludeTags = [ `<${currentInstanceVersion}`, `>${currentInstanceVersion}`, @@ -51,7 +51,7 @@ const getExcludedTags = (v) => { `>=${currentInstanceVersion + 3}`, ] } else if (currentInstanceVersion === MIN_DHIS2_VERSION + 1) { - // For example instance = 2.39, MIN = 2.38 + // For example instance = 2.40, MIN = 2.39 excludeTags = [ `<=${currentInstanceVersion - 1}`, `<${currentInstanceVersion - 1}`, @@ -62,7 +62,7 @@ const getExcludedTags = (v) => { `>=${currentInstanceVersion + 2}`, ] } else if (currentInstanceVersion === MIN_DHIS2_VERSION + 2) { - // For example instance = 2.40, MIN = 2.38 + // For example instance = 2.41, MIN = 2.39 excludeTags = [ `<=${currentInstanceVersion - 2}`, `<${currentInstanceVersion - 2}`, @@ -73,7 +73,7 @@ const getExcludedTags = (v) => { `>=${currentInstanceVersion + 1}`, ] } else { - // For example instance = 2.41, MIN = 2.38 + // For example instance = 2.42, MIN = 2.39 excludeTags = [ `<=${currentInstanceVersion - 3}`, `<${currentInstanceVersion - 3}`, diff --git a/d2.config.js b/d2.config.js index 4b9a83353..8cee687a2 100644 --- a/d2.config.js +++ b/d2.config.js @@ -4,7 +4,7 @@ const config = { id: 'a4cd3827-e717-4e09-965d-ab05df2591e5', title: 'Line Listing', - minDHIS2Version: '2.38', + minDHIS2Version: '2.39', pwa: { enabled: true, diff --git a/src/__tests__/cypressGetExcludedTags.spec.js b/src/__tests__/cypressGetExcludedTags.spec.js index c8a6e7918..7913deada 100644 --- a/src/__tests__/cypressGetExcludedTags.spec.js +++ b/src/__tests__/cypressGetExcludedTags.spec.js @@ -1,118 +1,94 @@ import { getExcludedTags } from '../../cypress/plugins/excludeByVersionTags.js' describe('get excluded Cypress tags', () => { - test('instanceVersion 2.38', () => { - expect(getExcludedTags('2.38')).toEqual([ - '<38', - '>38', - '>=39', - '>39', - '>=40', - '>40', - '>=41', - ]) - }) - test('instanceVersion 2.39', () => { expect(getExcludedTags('2.39')).toEqual([ - '<=38', - '<38', '<39', '>39', '>=40', '>40', '>=41', + '>41', + '>=42', ]) }) test('instanceVersion 2.40', () => { expect(getExcludedTags('2.40')).toEqual([ - '<=38', - '<38', '<=39', '<39', '<40', '>40', '>=41', + '>41', + '>=42', ]) }) test('instanceVersion 2.41-SNAPSHOT', () => { expect(getExcludedTags('2.41-SNAPSHOT')).toEqual([ - '<=38', - '<38', '<=39', '<39', - '<40', '<=40', + '<40', '<41', + '>41', + '>=42', ]) }) test('instanceVersion dev', () => { expect(getExcludedTags('dev')).toEqual([ - '<=38', - '<38', '<=39', '<39', - '<40', '<=40', + '<40', '<41', - ]) - }) - - test('instanceVersion number 2.38', () => { - expect(getExcludedTags(2.38)).toEqual([ - '<38', - '>38', - '>=39', - '>39', - '>=40', - '>40', - '>=41', + '<=41', + '<42', ]) }) // unexpected argument forms - test('instanceVersion 38', () => { - expect(getExcludedTags('38')).toEqual([ - '<38', - '>38', - '>=39', + test('instanceVersion 39', () => { + expect(getExcludedTags('39')).toEqual([ + '<39', '>39', '>=40', '>40', '>=41', + '>41', + '>=42', ]) }) - test('instanceVersion 38-SNAPSHOT.2', () => { - expect(getExcludedTags('38-SNAPSHOT.2')).toEqual([ - '<38', - '>38', - '>=39', + test('instanceVersion 39-SNAPSHOT.2', () => { + expect(getExcludedTags('39-SNAPSHOT.2')).toEqual([ + '<39', '>39', '>=40', '>40', '>=41', + '>41', + '>=42', ]) }) test('instanceVersion Dev', () => { expect(getExcludedTags('Dev')).toEqual([ - '<=38', - '<38', '<=39', '<39', - '<40', '<=40', + '<40', '<41', + '<=41', + '<42', ]) }) - test('instanceVersion 2.37', () => { + test('instanceVersion 2.38', () => { expect(() => { - getExcludedTags('2.37') + getExcludedTags('2.38') }).toThrow() }) }) diff --git a/src/components/Dialogs/FixedDimension.js b/src/components/Dialogs/FixedDimension.js index 06241482b..9951732ae 100644 --- a/src/components/Dialogs/FixedDimension.js +++ b/src/components/Dialogs/FixedDimension.js @@ -4,7 +4,6 @@ import { DIMENSION_ID_ORGUNIT, useCachedDataQuery, } from '@dhis2/analytics' -import { useConfig } from '@dhis2/app-runtime' import i18n from '@dhis2/d2-i18n' import { Checkbox } from '@dhis2/ui' import PropTypes from 'prop-types' @@ -52,7 +51,6 @@ const FixedDimension = ({ inputType, }) => { const { rootOrgUnits, currentUser } = useCachedDataQuery() - const { serverVersion } = useConfig() const statusNames = getStatusNames() const { programId, dimensionId } = extractDimensionIdParts( dimension.id, @@ -169,18 +167,11 @@ const FixedDimension = ({ const ALL_STATUSES = [ { id: STATUS_ACTIVE, name: statusNames[STATUS_ACTIVE] }, { id: STATUS_COMPLETED, name: statusNames[STATUS_COMPLETED] }, - ] - - if ( - `${serverVersion.major}.${serverVersion.minor}.${ - serverVersion.patch || 0 - }` >= '2.39.0' - ) { - ALL_STATUSES.push({ + { id: STATUS_SCHEDULED, name: statusNames[STATUS_SCHEDULED], - }) - } + }, + ] return ( <> diff --git a/src/components/MainSidebar/YourDimensionsPanel/useYourDimensions.js b/src/components/MainSidebar/YourDimensionsPanel/useYourDimensions.js index 7b89da75c..2dd5d0d3c 100644 --- a/src/components/MainSidebar/YourDimensionsPanel/useYourDimensions.js +++ b/src/components/MainSidebar/YourDimensionsPanel/useYourDimensions.js @@ -3,7 +3,6 @@ import { useEffect, useState } from 'react' import { DIMENSION_LIST_FIELDS } from '../DimensionsList/index.js' const YOUR_DIMENSIONS_RESOURCE = 'dimensions' -// Fixed filter on org units for 2.38 ? const YOUR_DIMENSIONS_FILTER = 'dimensionType:eq:ORGANISATION_UNIT_GROUP_SET' const query = { diff --git a/src/components/Visualization/useAnalyticsData.js b/src/components/Visualization/useAnalyticsData.js index 11eb34102..81a67b3b1 100644 --- a/src/components/Visualization/useAnalyticsData.js +++ b/src/components/Visualization/useAnalyticsData.js @@ -146,7 +146,6 @@ const fetchAnalyticsData = async ({ const analyticsApiEndpoint = getAnalyticsEndpoint(visualization.outputType) - // for 2.38 only /query is used (since only Line List is enabled) const rawResponse = await analyticsEngine[analyticsApiEndpoint].getQuery( req ) diff --git a/src/modules/options/lineListConfig.js b/src/modules/options/lineListConfig.js index 575cf5248..b1b60851a 100644 --- a/src/modules/options/lineListConfig.js +++ b/src/modules/options/lineListConfig.js @@ -34,9 +34,7 @@ export default (serverVersion) => { ]), ] - if (currentVersion >= '2.39.0') { - optionsConfig.push(getLegendTab()) - } + optionsConfig.push(getLegendTab()) return optionsConfig } diff --git a/src/reducers/ui.js b/src/reducers/ui.js index 45838db76..590827559 100644 --- a/src/reducers/ui.js +++ b/src/reducers/ui.js @@ -4,7 +4,6 @@ import { USER_ORG_UNIT, VIS_TYPE_LINE_LIST, } from '@dhis2/analytics' -import { useConfig } from '@dhis2/app-runtime' import { useMemo } from 'react' import { useStore, useSelector } from 'react-redux' import { createSelector } from 'reselect' @@ -495,7 +494,6 @@ export const useMainDimensions = () => { } export const useProgramDimensions = () => { - const { serverVersion } = useConfig() const store = useStore() const inputType = useSelector(sGetUiInputType) const programId = useSelector(sGetUiProgramId) @@ -533,11 +531,7 @@ export const useProgramDimensions = () => { const timeDimensions = [ eventDateDim, enrollmentDateDim, - ...(`${serverVersion.major}.${serverVersion.minor}.${ - serverVersion.patch || 0 - }` >= '2.39.0' - ? [scheduledDateDim] - : []), + scheduledDateDim, incidentDateDim, ].filter((dimension) => { if (!dimension) { From e1cfc2c3f8921f6c43fbb0a58bb2df767230f305 Mon Sep 17 00:00:00 2001 From: "@dhis2-bot" Date: Fri, 31 May 2024 08:39:17 +0000 Subject: [PATCH 07/62] chore(release): cut 101.0.0 [skip release] # [101.0.0](https://github.com/dhis2/line-listing-app/compare/v100.17.1...v101.0.0) (2024-05-31) ### Features * bump Line Listing to min version 2.39 (DHIS2-17209) ([#523](https://github.com/dhis2/line-listing-app/issues/523)) ([8738ef1](https://github.com/dhis2/line-listing-app/commit/8738ef199231da596e0bdde78bd0b75acc770f0f)) ### BREAKING CHANGES * requires core version 2.39 and above --- CHANGELOG.md | 12 ++++++++++++ package.json | 2 +- 2 files changed, 13 insertions(+), 1 deletion(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 4628b35d8..21c5a817e 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,3 +1,15 @@ +# [101.0.0](https://github.com/dhis2/line-listing-app/compare/v100.17.1...v101.0.0) (2024-05-31) + + +### Features + +* bump Line Listing to min version 2.39 (DHIS2-17209) ([#523](https://github.com/dhis2/line-listing-app/issues/523)) ([8738ef1](https://github.com/dhis2/line-listing-app/commit/8738ef199231da596e0bdde78bd0b75acc770f0f)) + + +### BREAKING CHANGES + +* requires core version 2.39 and above + ## [100.17.1](https://github.com/dhis2/line-listing-app/compare/v100.17.0...v100.17.1) (2024-05-14) diff --git a/package.json b/package.json index cd69096c8..fb53a51ba 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "line-listing-app", - "version": "100.17.1", + "version": "101.0.0", "description": "DHIS2 Line Listing", "license": "BSD-3-Clause", "private": true, From 1cfb6ee8932dbb3c1951275d5de78862e7da1a0f Mon Sep 17 00:00:00 2001 From: Martin Date: Fri, 31 May 2024 16:13:49 +0300 Subject: [PATCH 08/62] fix: enrollment line list filter for program stage not working (DHIS2-17412) (#524) --- cypress/integration/programDimensions.cy.js | 125 ++++++++++++++++++ .../ProgramDimensionsPanel.js | 30 ++--- 2 files changed, 136 insertions(+), 19 deletions(-) diff --git a/cypress/integration/programDimensions.cy.js b/cypress/integration/programDimensions.cy.js index 8b492e0f4..cdad08234 100644 --- a/cypress/integration/programDimensions.cy.js +++ b/cypress/integration/programDimensions.cy.js @@ -14,6 +14,8 @@ import { openProgramDimensionsSidebar, selectEnrollmentWithProgramDimensions, selectEventWithProgram, + selectProgramForTE, + selectTrackedEntityWithType, } from '../helpers/dimensions.js' import { expectAxisToHaveDimension } from '../helpers/layout.js' import { goToStartPage } from '../helpers/startScreen.js' @@ -226,6 +228,51 @@ I.e. Scheduled date works like this: }) }) + it('stage can be selected, dimension list reflects the selection', () => { + // select program + cy.getBySel('accessory-sidebar') + .contains('Choose a program') + .click() + cy.contains('Child Programme').click() + + // select data element + cy.getBySel('program-dimensions-button').click() + cy.getBySel('accessory-sidebar').contains('All types').click() + cy.getBySel('dhis2-uicore-popper') + .containsExact('Data element') + .click() + + // items from the selected stage are shown + cy.getBySel('program-dimensions-list') + .findBySelLike('dimension-item') + .contains('MCH ARV at birth') + .should('be.visible') + cy.getBySel('program-dimensions-list') + .findBySelLike('dimension-item') + .contains('MCH DPT dose') + .should('not.exist') + + // select a different stage + cy.getBySel('input-panel-button').click() + cy.getBySel('stage-select').click() + cy.contains('Baby Postnatal').click() + + // items from the selected stage are shown + cy.getBySel('program-dimensions-button').click() + cy.getBySel('accessory-sidebar').contains('All types').click() + cy.getBySel('dhis2-uicore-popper') + .containsExact('Data element') + .click() + cy.getBySel('program-dimensions-list') + .findBySelLike('dimension-item') + .contains('MCH ARV at birth') + .should('not.exist') + cy.getBySel('program-dimensions-list') + .findBySelLike('dimension-item') + .contains('MCH DPT dose') + .should('be.visible') + }) + it('stage can be selected, dimensions are removed when stage and program are changed', () => { const program = TEST_PROGRAM const TEST_DATA_ELEMENT = 'WHOMCH Conditions in previous pregnancy' @@ -448,6 +495,84 @@ I.e. Scheduled date works like this: .should('not.exist') }) }) + + it('stage can be selected, dimension list reflects the selection', () => { + // select Child programme + cy.getBySel('accessory-sidebar') + .contains('Choose a program') + .click() + cy.contains('Child Programme').click() + + // select data element + cy.getBySel('program-dimensions-button').click() + cy.getBySel('accessory-sidebar').contains('All types').click() + cy.getBySel('dhis2-uicore-popper') + .containsExact('Data element') + .click() + + // items from multiple stages are shown + cy.getBySel('program-dimensions-list') + .findBySelLike('dimension-item') + .contains('MCH ARV at birth') + .should('be.visible') + cy.getBySel('program-dimensions-list') + .findBySelLike('dimension-item') + .contains('MCH DPT dose') + .should('be.visible') + + // select a specific stage + cy.getBySel('stage-select').click() + cy.getBySel('dhis2-uicore-popper').containsExact('Birth').click() + + // only items from the selected stage are shown + cy.getBySel('program-dimensions-list') + .findBySelLike('dimension-item') + .contains('MCH ARV at birth') + .should('be.visible') + cy.getBySel('program-dimensions-list') + .findBySelLike('dimension-item') + .contains('MCH DPT dose') + .should('not.exist') + }) + }) + describe(['>=41'], 'tracked entity', () => { + it('stage can be selected, dimension list reflects the selection', () => { + selectTrackedEntityWithType('Person') + + // select child programme + openProgramDimensionsSidebar() + selectProgramForTE('Child Programme') + + // select data element + cy.getBySel('accessory-sidebar').contains('All types').click() + cy.getBySel('dhis2-uicore-popper') + .containsExact('Data element') + .click() + + // items from multiple stages are shown + cy.getBySel('program-dimensions-list') + .findBySelLike('dimension-item') + .contains('MCH ARV at birth') + .should('be.visible') + cy.getBySel('program-dimensions-list') + .findBySelLike('dimension-item') + .contains('MCH DPT dose') + .should('be.visible') + + // select a specific stage + cy.getBySel('stage-select').click() + cy.getBySel('dhis2-uicore-popper').containsExact('Birth').click() + + // only items from the selected stage are shown + cy.getBySel('program-dimensions-list') + .findBySelLike('dimension-item') + .contains('MCH ARV at birth') + .should('be.visible') + cy.getBySel('program-dimensions-list') + .findBySelLike('dimension-item') + .contains('MCH DPT dose') + .should('not.exist') + }) }) describe('lazy loading', () => { it('loads more pages when scrolling down until last one is found', () => { diff --git a/src/components/MainSidebar/ProgramDimensionsPanel/ProgramDimensionsPanel.js b/src/components/MainSidebar/ProgramDimensionsPanel/ProgramDimensionsPanel.js index f4b6bb393..9438ea229 100644 --- a/src/components/MainSidebar/ProgramDimensionsPanel/ProgramDimensionsPanel.js +++ b/src/components/MainSidebar/ProgramDimensionsPanel/ProgramDimensionsPanel.js @@ -61,6 +61,15 @@ const ProgramDimensionsPanel = ({ visible }) => { } if ([OUTPUT_TYPE_EVENT, OUTPUT_TYPE_ENROLLMENT].includes(inputType)) { + let stageId + if ( + inputType === OUTPUT_TYPE_ENROLLMENT && + dimensionType === DIMENSION_TYPE_DATA_ELEMENT + ) { + stageId = stageFilter + } else if (inputType === OUTPUT_TYPE_EVENT) { + stageId = selectedStageId + } return (
{isProgramSelectionComplete() ? ( @@ -89,18 +98,7 @@ const ProgramDimensionsPanel = ({ visible }) => { program={selectedProgram} dimensionType={dimensionType} searchTerm={debouncedSearchTerm} - stageId={ - [ - OUTPUT_TYPE_ENROLLMENT, - OUTPUT_TYPE_TRACKED_ENTITY, - ].includes(inputType) === - OUTPUT_TYPE_ENROLLMENT && - dimensionType === DIMENSION_TYPE_DATA_ELEMENT - ? stageFilter - : inputType === OUTPUT_TYPE_EVENT - ? selectedStageId - : undefined - } + stageId={stageId} /> ) : ( @@ -143,15 +141,9 @@ const ProgramDimensionsPanel = ({ visible }) => { dimensionType={dimensionType} searchTerm={debouncedSearchTerm} stageId={ - [ - OUTPUT_TYPE_ENROLLMENT, - OUTPUT_TYPE_TRACKED_ENTITY, - ].includes(inputType) && dimensionType === - DIMENSION_TYPE_DATA_ELEMENT + DIMENSION_TYPE_DATA_ELEMENT ? stageFilter - : inputType === OUTPUT_TYPE_EVENT - ? selectedStageId : undefined } trackedEntityTypeId={ From 6ccf3244b8f6839f8e5f76c8cc65688fef19e098 Mon Sep 17 00:00:00 2001 From: "@dhis2-bot" Date: Fri, 31 May 2024 14:29:34 +0000 Subject: [PATCH 09/62] chore(release): cut 101.0.1 [skip release] ## [101.0.1](https://github.com/dhis2/line-listing-app/compare/v101.0.0...v101.0.1) (2024-05-31) ### Bug Fixes * enrollment line list filter for program stage not working (DHIS2-17412) ([#524](https://github.com/dhis2/line-listing-app/issues/524)) ([1cfb6ee](https://github.com/dhis2/line-listing-app/commit/1cfb6ee8932dbb3c1951275d5de78862e7da1a0f)) --- CHANGELOG.md | 7 +++++++ package.json | 2 +- 2 files changed, 8 insertions(+), 1 deletion(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 21c5a817e..b01a78238 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,3 +1,10 @@ +## [101.0.1](https://github.com/dhis2/line-listing-app/compare/v101.0.0...v101.0.1) (2024-05-31) + + +### Bug Fixes + +* enrollment line list filter for program stage not working (DHIS2-17412) ([#524](https://github.com/dhis2/line-listing-app/issues/524)) ([1cfb6ee](https://github.com/dhis2/line-listing-app/commit/1cfb6ee8932dbb3c1951275d5de78862e7da1a0f)) + # [101.0.0](https://github.com/dhis2/line-listing-app/compare/v100.17.1...v101.0.0) (2024-05-31) diff --git a/package.json b/package.json index fb53a51ba..733d8b0e4 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "line-listing-app", - "version": "101.0.0", + "version": "101.0.1", "description": "DHIS2 Line Listing", "license": "BSD-3-Clause", "private": true, From 18d38650a44fd58a58431cd9fada8efbefb26239 Mon Sep 17 00:00:00 2001 From: "@dhis2-bot" Date: Sun, 2 Jun 2024 03:41:58 +0200 Subject: [PATCH 10/62] fix(translations): sync translations from transifex (master) Automatically merged. --- i18n/lo.po | 22 +++++++++++----------- i18n/ru.po | 5 +++-- i18n/zh.po | 2 +- 3 files changed, 15 insertions(+), 14 deletions(-) diff --git a/i18n/lo.po b/i18n/lo.po index cc4bb69af..ea973d669 100644 --- a/i18n/lo.po +++ b/i18n/lo.po @@ -288,10 +288,10 @@ msgid "" msgstr "" msgid "Choose a program" -msgstr "" +msgstr "ເລືອກໂປແກຼມ" msgid "No programs found" -msgstr "" +msgstr "ບໍ່ພົບໂປແກຼມ" msgid "Stage" msgstr "ຍະຫວ່າງ" @@ -326,10 +326,10 @@ msgid "Clear" msgstr "ລຶບ" msgid "Search dimensions" -msgstr "" +msgstr "ຄົ້ນຫາຂະໜາດ" msgid "Your dimensions" -msgstr "" +msgstr "ຂະໜາດຂອງທ່ານ" msgid "Search your dimensions" msgstr "" @@ -405,7 +405,7 @@ msgid "Your most viewed line lists" msgstr "" msgid "Not available offline" -msgstr "" +msgstr "ບໍ່ສາມາດໃຊ້ໄດ້ອອບລາຍ" msgid "" "This line list may show data that was not available when the interpretation " @@ -419,7 +419,7 @@ msgid "No event" msgstr "" msgid "Rows per page" -msgstr "" +msgstr "ແຖວຕໍ່ຫນ້າເຈ້ຍ" msgid "Page {{page}}, row {{firstItem}}-{{lastItem}}" msgstr "" @@ -536,10 +536,10 @@ msgid "Options" msgstr "ຈັດການ" msgid "Columns" -msgstr "" +msgstr "ຖັນ" msgid "Rows" -msgstr "" +msgstr "ແຖວ" msgid "Filter" msgstr "Filter" @@ -581,13 +581,13 @@ msgid "does not contain" msgstr "" msgid "after" -msgstr "" +msgstr "ກ່ອນ" msgid "after or including" msgstr "" msgid "before" -msgstr "" +msgstr "ຫຼັງ" msgid "before or including" msgstr "" @@ -691,7 +691,7 @@ msgid "Last updated by" msgstr "" msgid "User organisation unit" -msgstr "" +msgstr "ຫນ່ວຍງານອົງການຈັດຕັ້ງຂອງຜູ້ໃຊ້" msgid "User sub-units" msgstr "ຫົວໜ່ວຍຍ່ອຍຂອງທ່ານ" diff --git a/i18n/ru.po b/i18n/ru.po index 3c9d3967b..04e5caeac 100644 --- a/i18n/ru.po +++ b/i18n/ru.po @@ -5,13 +5,14 @@ # Viktor Varland , 2024 # Ulanbek Abakirov , 2024 # Philip Larsen Donnelly, 2024 +# Yury Rogachev , 2024 # msgid "" msgstr "" "Project-Id-Version: i18next-conv\n" "POT-Creation-Date: 2024-02-13T14:56:50.029Z\n" "PO-Revision-Date: 2022-08-23 11:50+0000\n" -"Last-Translator: Philip Larsen Donnelly, 2024\n" +"Last-Translator: Yury Rogachev , 2024\n" "Language-Team: Russian (https://app.transifex.com/hisp-uio/teams/100509/ru/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" @@ -290,7 +291,7 @@ msgid "" msgstr "" msgid "Choose a program" -msgstr "" +msgstr "Выбрать программу" msgid "No programs found" msgstr "" diff --git a/i18n/zh.po b/i18n/zh.po index ddd116495..440630a9c 100644 --- a/i18n/zh.po +++ b/i18n/zh.po @@ -411,7 +411,7 @@ msgid "" msgstr "该行列表可能会显示编写解释时不可用的数据。" msgid "Sort by \"{{column}}\" and update" -msgstr "" +msgstr "按“{{column}}”排序并更新" msgid "No event" msgstr "无事件" From b592026acfb810b543176da613e787cd66c47895 Mon Sep 17 00:00:00 2001 From: "@dhis2-bot" Date: Sun, 2 Jun 2024 02:37:09 +0000 Subject: [PATCH 11/62] chore(release): cut 101.0.2 [skip release] ## [101.0.2](https://github.com/dhis2/line-listing-app/compare/v101.0.1...v101.0.2) (2024-06-02) ### Bug Fixes * **translations:** sync translations from transifex (master) ([18d3865](https://github.com/dhis2/line-listing-app/commit/18d38650a44fd58a58431cd9fada8efbefb26239)) --- CHANGELOG.md | 7 +++++++ package.json | 2 +- 2 files changed, 8 insertions(+), 1 deletion(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index b01a78238..53667fd20 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,3 +1,10 @@ +## [101.0.2](https://github.com/dhis2/line-listing-app/compare/v101.0.1...v101.0.2) (2024-06-02) + + +### Bug Fixes + +* **translations:** sync translations from transifex (master) ([18d3865](https://github.com/dhis2/line-listing-app/commit/18d38650a44fd58a58431cd9fada8efbefb26239)) + ## [101.0.1](https://github.com/dhis2/line-listing-app/compare/v101.0.0...v101.0.1) (2024-05-31) diff --git a/package.json b/package.json index 733d8b0e4..a888bd435 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "line-listing-app", - "version": "101.0.1", + "version": "101.0.2", "description": "DHIS2 Line Listing", "license": "BSD-3-Clause", "private": true, From a1b5ec0481ce63118af43addde7533808971d7f4 Mon Sep 17 00:00:00 2001 From: Martin Date: Mon, 3 Jun 2024 14:33:18 +0300 Subject: [PATCH 12/62] fix: favourite link is missing the app name (DHIS2-16018) (#530) --- package.json | 2 +- yarn.lock | 8 ++++---- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/package.json b/package.json index a888bd435..7fcb63738 100644 --- a/package.json +++ b/package.json @@ -38,7 +38,7 @@ "typescript": "^4.8.4" }, "dependencies": { - "@dhis2/analytics": "^26.6.9", + "@dhis2/analytics": "^26.6.13", "@dhis2/app-runtime": "^3.4.4", "@dhis2/ui": "^9.4.2", "@dnd-kit/core": "^5.0.3", diff --git a/yarn.lock b/yarn.lock index 4476786c7..0e2ed6d02 100644 --- a/yarn.lock +++ b/yarn.lock @@ -2034,10 +2034,10 @@ classnames "^2.3.1" prop-types "^15.7.2" -"@dhis2/analytics@^26.6.9": - version "26.6.9" - resolved "https://registry.yarnpkg.com/@dhis2/analytics/-/analytics-26.6.9.tgz#932847c4bee3dd720d5d0b872c6b11eeae8b260c" - integrity sha512-AcU5FKH1Rmi8GdgqdJ1aOPqTKhztLafhzKNvGBdb5rSNR8/KS2djyTxxPhL0fdusu+1Rc04RFSkOLajq3ChVrQ== +"@dhis2/analytics@^26.6.13": + version "26.6.13" + resolved "https://registry.yarnpkg.com/@dhis2/analytics/-/analytics-26.6.13.tgz#1951d31ba74947ee848c1aa20b5e9b361d527de0" + integrity sha512-xBNJrevU0pc9Ucv3Zcj0uHi8NdNpcetyyKdub7NziRnuMQRvPlBu8jezAjzc2Rjf+Q0sDnCBXJLa2oOjpLbNNQ== dependencies: "@dhis2/d2-ui-rich-text" "^7.4.1" "@dhis2/multi-calendar-dates" "1.0.0" From e6198a07ae546ebb0340b78d679d38a7d610146f Mon Sep 17 00:00:00 2001 From: "@dhis2-bot" Date: Mon, 3 Jun 2024 12:54:02 +0000 Subject: [PATCH 13/62] chore(release): cut 101.0.3 [skip release] ## [101.0.3](https://github.com/dhis2/line-listing-app/compare/v101.0.2...v101.0.3) (2024-06-03) ### Bug Fixes * favourite link is missing the app name (DHIS2-16018) ([#530](https://github.com/dhis2/line-listing-app/issues/530)) ([a1b5ec0](https://github.com/dhis2/line-listing-app/commit/a1b5ec0481ce63118af43addde7533808971d7f4)) --- CHANGELOG.md | 7 +++++++ package.json | 2 +- 2 files changed, 8 insertions(+), 1 deletion(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 53667fd20..5cbc9d220 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,3 +1,10 @@ +## [101.0.3](https://github.com/dhis2/line-listing-app/compare/v101.0.2...v101.0.3) (2024-06-03) + + +### Bug Fixes + +* favourite link is missing the app name (DHIS2-16018) ([#530](https://github.com/dhis2/line-listing-app/issues/530)) ([a1b5ec0](https://github.com/dhis2/line-listing-app/commit/a1b5ec0481ce63118af43addde7533808971d7f4)) + ## [101.0.2](https://github.com/dhis2/line-listing-app/compare/v101.0.1...v101.0.2) (2024-06-02) diff --git a/package.json b/package.json index 7fcb63738..892fc3fa5 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "line-listing-app", - "version": "101.0.2", + "version": "101.0.3", "description": "DHIS2 Line Listing", "license": "BSD-3-Clause", "private": true, From c77c85234a481f66695d29869513147b54abf159 Mon Sep 17 00:00:00 2001 From: Adel Bensaad Date: Tue, 4 Jun 2024 13:19:43 +0100 Subject: [PATCH 14/62] chore: enhance parallel cypress test execution (#514) Implements DHIS2-17373 Conditional Recording Triggers: Implemented conditional recording triggers via commit messages and GitHub labels to ensure that Cypress tests are only recorded when necessary. Parallel Execution Strategies: Refined parallel execution strategies to improve efficiency and resolve test redundancies in GitHub Actions. Debugging Enhancements: Added detailed debugging outputs to help track the dynamic values of the test environment variables and ensure correct parameter passing in the workflow. Manual Grouping of Tests: In GitHub Actions, without specified test groups, all tests would run in every parallel container, leading to unnecessary repetition. By organizing tests into predefined groups, each group runs only once. This prevents redundancy and expedites the testing process. Why Not Rely on Cypress's Automatic Balancing? While Cypress automatically assigns tests to machines to balance workload (more on Cypress load balancing), GitHub Actions requires explicit distribution of tasks. This manual grouping ensures efficient resource usage and prevents multiple executions of the same tests across different runners. Benefits: This approach allows precise control over test distribution, enhancing predictability and efficiency. It reduces total execution time and operational costs by ensuring each test is run precisely once across the available infrastructure. This method optimises our use of GitHub Actions, ensuring a faster, cost-effective, and efficient testing process. Update Documentation: Updated the documentation to reflect the changes and ensure clarity on the new CI/CD processes. Expected Outcomes: Reduced Cypress Cloud Credit Usage: By optimising the conditions under which tests are recorded and uploaded to Cypress Cloud, we anticipate a significant reduction in credit usage. Increased CI Efficiency: With better management of parallel execution and conditional testing, the CI process should be more efficient, leading to quicker test cycles. --- .github/workflows/dhis2-verify-app.yml | 13 ++++++++- jest.config.js | 5 +++- src/__tests__/generateTestMatrix.spec.js | 31 ++++++++++++++++++++ src/generateTestMatrix.js | 37 ++++++++++++++++++++++++ 4 files changed, 84 insertions(+), 2 deletions(-) create mode 100644 src/__tests__/generateTestMatrix.spec.js create mode 100644 src/generateTestMatrix.js diff --git a/.github/workflows/dhis2-verify-app.yml b/.github/workflows/dhis2-verify-app.yml index 28f4c4b7a..73179c4aa 100644 --- a/.github/workflows/dhis2-verify-app.yml +++ b/.github/workflows/dhis2-verify-app.yml @@ -23,6 +23,16 @@ env: CI: true jobs: + setup-matrix: + runs-on: ubuntu-latest + outputs: + matrix: ${{ steps.set-matrix.outputs.specs }} + steps: + - uses: actions/checkout@v3 + - name: Generate Test matrix + id: set-matrix + run: echo "::set-output name=specs::$(node src/generateTestMatrix.js)" + build: runs-on: ubuntu-latest steps: @@ -85,10 +95,11 @@ jobs: call-workflow-e2e-prod: if: "!contains(github.event.head_commit.message, '[skip ci]')" - needs: [build, lint, test] + needs: [build, lint, test, setup-matrix] uses: dhis2/workflows/.github/workflows/analytics-e2e-tests-prod.yml@master with: should_record: ${{ contains(github.event.head_commit.message, '[e2e record]') || contains(join(github.event.pull_request.labels.*.name), 'e2e record')}} + spec-group: ${{ needs.setup-matrix.outputs.matrix }} secrets: username: ${{ secrets.CYPRESS_DHIS2_USERNAME }} password: ${{ secrets.CYPRESS_DHIS2_PASSWORD }} diff --git a/jest.config.js b/jest.config.js index f6e031b10..b723319d0 100644 --- a/jest.config.js +++ b/jest.config.js @@ -50,7 +50,10 @@ module.exports = { '\\.(css)$': 'identity-obj-proxy', }, testRunner: 'jest-circus/runner', - testRegex: ['/src/(.*/)?__tests__/.*.spec.js?$'], + testMatch: [ + '**/src/**/__tests__/**/*.spec.[jt]s?(x)', + '**/cypress/support/__tests__/**/*.test.[jt]s?(x)', + ], reporters: [ 'default', ...(isReportPortalSetup ? [reportPortalConfig] : []), diff --git a/src/__tests__/generateTestMatrix.spec.js b/src/__tests__/generateTestMatrix.spec.js new file mode 100644 index 000000000..a8edb0055 --- /dev/null +++ b/src/__tests__/generateTestMatrix.spec.js @@ -0,0 +1,31 @@ +const { getAllFiles, createGroups } = require('../generateTestMatrix.js') + +describe('generateTestMatrix', () => { + describe('getAllFiles', () => { + it('should return an array of file paths', () => { + const mockFs = require('fs') + jest.spyOn(mockFs, 'readdirSync').mockReturnValue([ + 'file1.js', + 'file2.js', + ]) + jest.spyOn(mockFs, 'statSync').mockReturnValue({ + isDirectory: () => false, + }) + + const result = getAllFiles('fakepath') + expect(result).toEqual(['fakepath/file1.js', 'fakepath/file2.js']) + }) + }) + + describe('createGroups', () => { + it('should group files into the specified number of groups', () => { + const files = ['test1.js', 'test2.js', 'test3.js'] + const groups = createGroups(files, 2) + + expect(groups.length).toBe(2) + expect(groups[0].tests).toContain('test1.js') + expect(groups[0].tests).toContain('test3.js') + expect(groups[1].tests).toContain('test2.js') + }) + }) +}) diff --git a/src/generateTestMatrix.js b/src/generateTestMatrix.js new file mode 100644 index 000000000..8e07e24fd --- /dev/null +++ b/src/generateTestMatrix.js @@ -0,0 +1,37 @@ +const fs = require('fs') +const path = require('path') + +const getAllFiles = (dirPath, arrayOfFiles = []) => { + const files = fs.readdirSync(dirPath) + + files.forEach((file) => { + if (fs.statSync(path.join(dirPath, file)).isDirectory()) { + arrayOfFiles = getAllFiles(path.join(dirPath, file), arrayOfFiles) + } else if (path.extname(file) === '.js') { + arrayOfFiles.push(path.join(dirPath, file)) + } + }) + + return arrayOfFiles +} + +const createGroups = (files, numberOfGroups = 7) => { + const groups = [] + for (let i = 0; i < numberOfGroups; i++) { + groups.push([]) + } + + files.forEach((file, index) => { + groups[index % numberOfGroups].push(file) + }) + + return groups.map((group, index) => ({ id: index + 1, tests: group })) +} + +const cypressSpecsPath = './cypress/integration' +const specs = getAllFiles(cypressSpecsPath) +const groupedSpecs = createGroups(specs) + +console.log(JSON.stringify(groupedSpecs)) + +module.exports = { getAllFiles, createGroups } From 27df6e3c85370cb397a326b18e380d78b6fb0a7f Mon Sep 17 00:00:00 2001 From: Jen Jones Arnesen Date: Tue, 4 Jun 2024 16:18:43 +0200 Subject: [PATCH 15/62] chore: add group for security updates to dependabot config (#536) --- .github/dependabot.yml | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) diff --git a/.github/dependabot.yml b/.github/dependabot.yml index 5daed1a93..c90b9436f 100755 --- a/.github/dependabot.yml +++ b/.github/dependabot.yml @@ -13,5 +13,10 @@ updates: - minor - patch exclude-patterns: - - '@dhis2' - - 'i18next' + - '*@dhis2*' + - '*i18next*' + security: + applies-to: security-updates + update-types: + - minor + - patch From b9c37ad8aff3f85e94fc570144b3fcd2494f215e Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Wed, 5 Jun 2024 08:43:28 +0200 Subject: [PATCH 16/62] chore(deps): bump the dependencies group across 1 directory with 5 updates (#537) Bumps the dependencies group with 5 updates in the / directory: --- updated-dependencies: - dependency-name: "@dnd-kit/utilities" dependency-type: direct:production update-type: version-update:semver-patch dependency-group: dependencies - dependency-name: "@reportportal/agent-js-jest" dependency-type: direct:development update-type: version-update:semver-patch dependency-group: dependencies - dependency-name: cypress dependency-type: direct:development update-type: version-update:semver-minor dependency-group: dependencies - dependency-name: cypress-tags dependency-type: direct:development update-type: version-update:semver-minor dependency-group: dependencies - dependency-name: enzyme-adapter-react-16 dependency-type: direct:development update-type: version-update:semver-patch dependency-group: dependencies ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- package.json | 10 +- yarn.lock | 585 ++++++++++++++++++++++++++++++++++++++++++++------- 2 files changed, 510 insertions(+), 85 deletions(-) diff --git a/package.json b/package.json index 892fc3fa5..d4dd49058 100644 --- a/package.json +++ b/package.json @@ -23,13 +23,13 @@ "@dhis2/cypress-commands": "^10.0.3", "@dhis2/cypress-plugins": "^10.0.2", "@reportportal/agent-js-cypress": "git+https://github.com/dhis2/agent-js-cypress.git#develop", - "@reportportal/agent-js-jest": "^5.0.7", + "@reportportal/agent-js-jest": "^5.0.8", "@testing-library/jest-dom": "^5.16.4", "@testing-library/react": "^12.1.4", - "cypress": "^13.2.0", - "cypress-tags": "^1.1.2", + "cypress": "^13.10.0", + "cypress-tags": "^1.2.2", "enzyme": "^3.11.0", - "enzyme-adapter-react-16": "^1.15.6", + "enzyme-adapter-react-16": "^1.15.8", "eslint-plugin-cypress": "^2.12.1", "identity-obj-proxy": "^3.0.0", "jest-enzyme": "^7.1.2", @@ -43,7 +43,7 @@ "@dhis2/ui": "^9.4.2", "@dnd-kit/core": "^5.0.3", "@dnd-kit/sortable": "^6.0.1", - "@dnd-kit/utilities": "^3.2.0", + "@dnd-kit/utilities": "^3.2.2", "@krakenjs/post-robot": "^11.0.0", "@testing-library/jest-dom": "^5.16.4", "@testing-library/react": "^12.1.4", diff --git a/yarn.lock b/yarn.lock index 0e2ed6d02..fe32fc57b 100644 --- a/yarn.lock +++ b/yarn.lock @@ -1398,7 +1398,7 @@ resolved "https://registry.yarnpkg.com/@csstools/selector-specificity/-/selector-specificity-2.0.2.tgz#1bfafe4b7ed0f3e4105837e056e0a89b108ebe36" integrity sha512-IkpVW/ehM1hWKln4fCA3NzJU8KwD+kIOvPZA4cqxoJHtE21CCzjyp+Kxbu0i5I4tBNOlXPL9mjwnWlL0VEG4Fg== -"@cypress/browserify-preprocessor@^3.0.1": +"@cypress/browserify-preprocessor@^3.0.2": version "3.0.2" resolved "https://registry.yarnpkg.com/@cypress/browserify-preprocessor/-/browserify-preprocessor-3.0.2.tgz#1dbecae394937aed47a3524cad47086c2ded8c50" integrity sha512-y6mlFR+IR2cqcm3HabSp7AEcX9QfF1EUL4eOaw/7xexdhmdQU8ez6piyRopZQob4BK8oKTsc9PkupsU2rzjqMA== @@ -2400,10 +2400,10 @@ "@dnd-kit/utilities" "^3.2.0" tslib "^2.0.0" -"@dnd-kit/utilities@^3.1.0", "@dnd-kit/utilities@^3.2.0", "@dnd-kit/utilities@^3.2.1": - version "3.2.1" - resolved "https://registry.yarnpkg.com/@dnd-kit/utilities/-/utilities-3.2.1.tgz#53f9e2016fd2506ec49e404c289392cfff30332a" - integrity sha512-OOXqISfvBw/1REtkSK2N3Fi2EQiLMlWUlqnOK/UpOISqBZPWpE6TqL+jcPtMOkE8TqYGiURvRdPSI9hltNUjEA== +"@dnd-kit/utilities@^3.1.0", "@dnd-kit/utilities@^3.2.0", "@dnd-kit/utilities@^3.2.1", "@dnd-kit/utilities@^3.2.2": + version "3.2.2" + resolved "https://registry.yarnpkg.com/@dnd-kit/utilities/-/utilities-3.2.2.tgz#5a32b6af356dc5f74d61b37d6f7129a4040ced7b" + integrity sha512-+MKAJEOfaBe5SmV6t34p80MMKhjvUz0vRrvVJbPT0WElzaOJ/1xs+D+KDv+tD/NE5ujfrChEcshd4fLn0wpiqg== dependencies: tslib "^2.0.0" @@ -3013,15 +3013,15 @@ mocha "^10.2.0" node-ipc "9.1.1" -"@reportportal/agent-js-jest@^5.0.7": - version "5.0.7" - resolved "https://registry.yarnpkg.com/@reportportal/agent-js-jest/-/agent-js-jest-5.0.7.tgz#e87382b4dffc5b01d54cfdca64bfdc70ece2bfeb" - integrity sha512-yqWcKi0UJSKUImfFClRTGGL14DE9RZW94YWnekfZXry4Rlh8y+zOgncV3qeE/2X2c5FHlvVUhZnkH/++RLvamw== +"@reportportal/agent-js-jest@^5.0.8": + version "5.0.8" + resolved "https://registry.yarnpkg.com/@reportportal/agent-js-jest/-/agent-js-jest-5.0.8.tgz#743a34e5884bcfec7ece84ed200be7ecac50ca45" + integrity sha512-OKH0bcsif7l11Wym8OVhUqJNfuT7sPw3jBVgcLSk8p33x8Bx/0P4pm2qNbhLkYgBujgnTI7q6y8+sgOxUY+I7Q== dependencies: - "@reportportal/client-javascript" "^5.0.15" + "@reportportal/client-javascript" "~5.0.15" strip-ansi "^6.0.1" -"@reportportal/client-javascript@^5.0.14", "@reportportal/client-javascript@^5.0.15": +"@reportportal/client-javascript@^5.0.14", "@reportportal/client-javascript@~5.0.15": version "5.0.15" resolved "https://registry.yarnpkg.com/@reportportal/client-javascript/-/client-javascript-5.0.15.tgz#57080be5bdb347ab0019aeb385f9f282349f7ac4" integrity sha512-ry6euqCOoJLXCUuBhlRMjCYKhbgU+9EYdZ8jpTuagoBVxS8V8nJed9ODnS4bXX61g+pJm+NP/0DrN2Ptq+DgQQ== @@ -3491,11 +3491,6 @@ resolved "https://registry.yarnpkg.com/@types/node/-/node-20.2.3.tgz#b31eb300610c3835ac008d690de6f87e28f9b878" integrity sha512-pg9d0yC4rVNWQzX8U7xb4olIOFuuVL9za3bzMT2pu2SU0SNEi66i2qrvhE2qt0HvkhuCaWJu7pLNOt/Pj8BIrw== -"@types/node@^18.17.5": - version "18.17.19" - resolved "https://registry.yarnpkg.com/@types/node/-/node-18.17.19.tgz#80c9b8a89d3648d9e6098f4a7184e03833fee3c5" - integrity sha512-+pMhShR3Or5GR0/sp4Da7FnhVmTalWm81M6MkEldbwjETSaPalw138Z4KdpQaistvqQxLB7Cy4xwYdxpbSOs9Q== - "@types/normalize-package-data@^2.4.0": version "2.4.1" resolved "https://registry.yarnpkg.com/@types/normalize-package-data/-/normalize-package-data-2.4.1.tgz#d3357479a0fdfdd5907fe67e17e0a85c906e1301" @@ -4320,6 +4315,14 @@ array-buffer-byte-length@^1.0.0: call-bind "^1.0.2" is-array-buffer "^3.0.1" +array-buffer-byte-length@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/array-buffer-byte-length/-/array-buffer-byte-length-1.0.1.tgz#1e5583ec16763540a27ae52eed99ff899223568f" + integrity sha512-ahC5W1xgou+KTXix4sAO8Ki12Q+jf4i0+tmk3sC+zgcynshkHxzpXdImBehiUYKKKDwvfFiJl1tZt6ewscS1Mg== + dependencies: + call-bind "^1.0.5" + is-array-buffer "^3.0.4" + array-equal@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/array-equal/-/array-equal-1.0.0.tgz#8c2a5ef2472fd9ea742b04c77a75093ba2757c93" @@ -4413,6 +4416,20 @@ array.prototype.reduce@^1.0.4: es-array-method-boxes-properly "^1.0.0" is-string "^1.0.7" +arraybuffer.prototype.slice@^1.0.3: + version "1.0.3" + resolved "https://registry.yarnpkg.com/arraybuffer.prototype.slice/-/arraybuffer.prototype.slice-1.0.3.tgz#097972f4255e41bc3425e37dc3f6421cf9aefde6" + integrity sha512-bMxMKAjg13EBSVscxTaYA4mRc5t1UAXa2kXiGTNfZ079HIWXEkKmkgFrh/nJqamaLSrXO5H4WFFkPEaLJWbs3A== + dependencies: + array-buffer-byte-length "^1.0.1" + call-bind "^1.0.5" + define-properties "^1.2.1" + es-abstract "^1.22.3" + es-errors "^1.2.1" + get-intrinsic "^1.2.3" + is-array-buffer "^3.0.4" + is-shared-array-buffer "^1.0.2" + arrify@^1.0.1: version "1.0.1" resolved "https://registry.yarnpkg.com/arrify/-/arrify-1.0.1.tgz#898508da2226f380df904728456849c1501a4b0d" @@ -4529,6 +4546,13 @@ available-typed-arrays@^1.0.5: resolved "https://registry.yarnpkg.com/available-typed-arrays/-/available-typed-arrays-1.0.5.tgz#92f95616501069d07d10edb2fc37d3e1c65123b7" integrity sha512-DMD0KiN46eipeziST1LPP/STfDU0sufISXmjSgvVsoU2tqxctQeASejWcfNtxYKqETM1UxQ8sp2OrSBWpHY6sw== +available-typed-arrays@^1.0.7: + version "1.0.7" + resolved "https://registry.yarnpkg.com/available-typed-arrays/-/available-typed-arrays-1.0.7.tgz#a5cc375d6a03c2efc87a553f3e0b1522def14846" + integrity sha512-wvUjBtSGN7+7SjNpq/9M2Tg350UZD3q62IFZLbRAR1bSMlCo1ZaeW+BJ+D090e4hIIZLBcTDWe4Mh4jvUDajzQ== + dependencies: + possible-typed-array-names "^1.0.0" + aws-sign2@~0.7.0: version "0.7.0" resolved "https://registry.yarnpkg.com/aws-sign2/-/aws-sign2-0.7.0.tgz#b46e890934a9591f2d2f6f86d7e6a9f1b3fe76a8" @@ -5210,7 +5234,7 @@ buffer-xor@^1.0.3: resolved "https://registry.yarnpkg.com/buffer-xor/-/buffer-xor-1.0.3.tgz#26e61ed1422fb70dd42e6e36729ed51d855fe8d9" integrity sha512-571s0T7nZWK6vB67HI5dyUF7wXiNcfaPPPTl6zYCNApANjIvYJTg7hlud/+cJpdAhS7dVzqMLmfhfHR3rAcOjQ== -buffer@^5.1.0, buffer@^5.5.0, buffer@^5.6.0: +buffer@^5.1.0, buffer@^5.5.0, buffer@^5.7.1: version "5.7.1" resolved "https://registry.yarnpkg.com/buffer/-/buffer-5.7.1.tgz#ba62e7c13133053582197160851a8f648e99eed0" integrity sha512-EHcyIPBQ4BSGlvjB16k5KgAJ27CIsHY/2JBmCRReo48y9rQ3MaUzWX3KVlBa4U7MyX02HdVj0K7C3WaB3ju7FQ== @@ -5297,6 +5321,17 @@ call-bind@^1.0.0, call-bind@^1.0.2: function-bind "^1.1.1" get-intrinsic "^1.0.2" +call-bind@^1.0.5, call-bind@^1.0.6, call-bind@^1.0.7: + version "1.0.7" + resolved "https://registry.yarnpkg.com/call-bind/-/call-bind-1.0.7.tgz#06016599c40c56498c18769d2730be242b6fa3b9" + integrity sha512-GHTSNSYICQ7scH7sZ+M2rFopRoLh8t2bLSW6BbgrtLsahOIB5iyAVJf9GjWK3cYTDaMj4XdBpM1cA6pIS0Kv2w== + dependencies: + es-define-property "^1.0.0" + es-errors "^1.3.0" + function-bind "^1.1.2" + get-intrinsic "^1.2.4" + set-function-length "^1.2.1" + callsites@^3.0.0: version "3.1.0" resolved "https://registry.yarnpkg.com/callsites/-/callsites-3.1.0.tgz#b3630abd8943432f54b3f0519238e33cd7df2f73" @@ -6298,29 +6333,28 @@ csstype@^3.0.2: resolved "https://registry.yarnpkg.com/csstype/-/csstype-3.1.1.tgz#841b532c45c758ee546a11d5bd7b7b473c8c30b9" integrity sha512-DJR/VvkAvSZW9bTouZue2sSxDwdTN92uHjqeKVm+0dAqdfNykRzQ95tay8aXMBAAPpUiq4Qcug2L7neoRh2Egw== -cypress-tags@^1.1.2: - version "1.1.2" - resolved "https://registry.yarnpkg.com/cypress-tags/-/cypress-tags-1.1.2.tgz#f0aeb29685b0906bba2eca69e7349943cbbd1eba" - integrity sha512-5aCGrhmDRQuXfRHJRFy66gBmMvBpsY1+ez5JD/cyjCYjvOVlJ7ED+kovUEdi+9pyDsbFJkQl0HjS6N3ERyb7Ig== +cypress-tags@^1.2.2: + version "1.2.2" + resolved "https://registry.yarnpkg.com/cypress-tags/-/cypress-tags-1.2.2.tgz#1d992a3eb7f5db9b8b87911cc82c94d7ee9dd217" + integrity sha512-a+jGxfnviOrGKDlD7/N5In1v7JOazmA6fhQtDgzJk/Mvz+hqydjKwBWkVy/3cY35yfspAS0AvyRQYZJ4YPKeUQ== dependencies: - "@cypress/browserify-preprocessor" "^3.0.1" + "@cypress/browserify-preprocessor" "^3.0.2" boolean-parser "0.0.2" through "^2.3.8" -cypress@^13.2.0: - version "13.2.0" - resolved "https://registry.yarnpkg.com/cypress/-/cypress-13.2.0.tgz#10f73d06a0764764ffbb903a31e96e2118dcfc1d" - integrity sha512-AvDQxBydE771GTq0TR4ZUBvv9m9ffXuB/ueEtpDF/6gOcvFR96amgwSJP16Yhqw6VhmwqspT5nAGzoxxB+D89g== +cypress@^13.10.0: + version "13.10.0" + resolved "https://registry.yarnpkg.com/cypress/-/cypress-13.10.0.tgz#0cfdb54eb046a30c78998e41effb635a50326935" + integrity sha512-tOhwRlurVOQbMduX+KonoMeQILs2cwR3yHGGENoFvvSoLUBHmJ8b9/n21gFSDqjlOJ+SRVcwuh+fG/JDsHsT6Q== dependencies: "@cypress/request" "^3.0.0" "@cypress/xvfb" "^1.2.4" - "@types/node" "^18.17.5" "@types/sinonjs__fake-timers" "8.1.1" "@types/sizzle" "^2.3.2" arch "^2.2.0" blob-util "^2.0.2" bluebird "^3.7.2" - buffer "^5.6.0" + buffer "^5.7.1" cachedir "^2.3.0" chalk "^4.1.0" check-more-types "^2.24.0" @@ -6338,7 +6372,7 @@ cypress@^13.2.0: figures "^3.2.0" fs-extra "^9.1.0" getos "^3.2.1" - is-ci "^3.0.0" + is-ci "^3.0.1" is-installed-globally "~0.4.0" lazy-ass "^1.6.0" listr2 "^3.8.3" @@ -6414,6 +6448,33 @@ data-urls@^2.0.0: whatwg-mimetype "^2.3.0" whatwg-url "^8.0.0" +data-view-buffer@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/data-view-buffer/-/data-view-buffer-1.0.1.tgz#8ea6326efec17a2e42620696e671d7d5a8bc66b2" + integrity sha512-0lht7OugA5x3iJLOWFhWK/5ehONdprk0ISXqVFn/NFrDu+cuc8iADFrGQz5BnRK7LLU3JmkbXSxaqX+/mXYtUA== + dependencies: + call-bind "^1.0.6" + es-errors "^1.3.0" + is-data-view "^1.0.1" + +data-view-byte-length@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/data-view-byte-length/-/data-view-byte-length-1.0.1.tgz#90721ca95ff280677eb793749fce1011347669e2" + integrity sha512-4J7wRJD3ABAzr8wP+OcIcqq2dlUKp4DVflx++hs5h5ZKydWMI6/D/fAot+yh6g2tHh8fLFTvNOaVN357NvSrOQ== + dependencies: + call-bind "^1.0.7" + es-errors "^1.3.0" + is-data-view "^1.0.1" + +data-view-byte-offset@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/data-view-byte-offset/-/data-view-byte-offset-1.0.0.tgz#5e0bbfb4828ed2d1b9b400cd8a7d119bca0ff18a" + integrity sha512-t/Ygsytq+R995EJ5PZlD4Cu56sWa8InXySaViRzw9apusqsOO2bQP+SbYzAhR0pFKoB+43lYy8rWban9JSuXnA== + dependencies: + call-bind "^1.0.6" + es-errors "^1.3.0" + is-data-view "^1.0.1" + dayjs@^1.10.4: version "1.11.7" resolved "https://registry.yarnpkg.com/dayjs/-/dayjs-1.11.7.tgz#4b296922642f70999544d1144a2c25730fce63e2" @@ -6547,6 +6608,15 @@ defer-to-connect@^1.0.1: resolved "https://registry.yarnpkg.com/defer-to-connect/-/defer-to-connect-1.1.3.tgz#331ae050c08dcf789f8c83a7b81f0ed94f4ac591" integrity sha512-0ISdNousHvZT2EiFlZeZAHBUvSxmKswVCEf8hW7KWgG4a8MVEu/3Vb6uWYozkjylyCxe0JBIiRB1jV45S70WVQ== +define-data-property@^1.0.1, define-data-property@^1.1.4: + version "1.1.4" + resolved "https://registry.yarnpkg.com/define-data-property/-/define-data-property-1.1.4.tgz#894dc141bb7d3060ae4366f6a0107e68fbe48c5e" + integrity sha512-rBMvIzlpA8v6E+SJZoo++HAYqsLrkg7MSfIinMPFhmkorw7X+dOXVJQs+QT69zGkzMyfDnIMN2Wid1+NbL3T+A== + dependencies: + es-define-property "^1.0.0" + es-errors "^1.3.0" + gopd "^1.0.1" + define-lazy-prop@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/define-lazy-prop/-/define-lazy-prop-2.0.0.tgz#3f7ae421129bcaaac9bc74905c98a0009ec9ee7f" @@ -6560,6 +6630,15 @@ define-properties@^1.1.3, define-properties@^1.1.4, define-properties@^1.2.0: has-property-descriptors "^1.0.0" object-keys "^1.1.1" +define-properties@^1.2.1: + version "1.2.1" + resolved "https://registry.yarnpkg.com/define-properties/-/define-properties-1.2.1.tgz#10781cc616eb951a80a034bafcaa7377f6af2b6c" + integrity sha512-8QmQKqEASLd5nx0U1B1okLElbUuuttJ/AnYmRXbbbGDWh6uS208EjD4Xqq/I9wK7u0v6O08XhTWnt5XtEbR6Dg== + dependencies: + define-data-property "^1.0.1" + has-property-descriptors "^1.0.0" + object-keys "^1.1.1" + define-property@^0.2.5: version "0.2.5" resolved "https://registry.yarnpkg.com/define-property/-/define-property-0.2.5.tgz#c35b1ef918ec3c990f9a5bc57be04aacec5c8116" @@ -7043,33 +7122,33 @@ entities@~1.1.1: resolved "https://registry.yarnpkg.com/entities/-/entities-1.1.2.tgz#bdfa735299664dfafd34529ed4f8522a275fea56" integrity sha512-f2LZMYl1Fzu7YSBKg+RoROelpOaNrcGmE9AZubeDfrCEia483oW4MI4VyFd5VNHIgQ/7qm1I0wUHK1eJnn2y2w== -enzyme-adapter-react-16@^1.15.6: - version "1.15.6" - resolved "https://registry.yarnpkg.com/enzyme-adapter-react-16/-/enzyme-adapter-react-16-1.15.6.tgz#fd677a658d62661ac5afd7f7f541f141f8085901" - integrity sha512-yFlVJCXh8T+mcQo8M6my9sPgeGzj85HSHi6Apgf1Cvq/7EL/J9+1JoJmJsRxZgyTvPMAqOEpRSu/Ii/ZpyOk0g== +enzyme-adapter-react-16@^1.15.8: + version "1.15.8" + resolved "https://registry.yarnpkg.com/enzyme-adapter-react-16/-/enzyme-adapter-react-16-1.15.8.tgz#1aecb5daadaae33d32c5b8b78566d7cf45dc49d8" + integrity sha512-uYGC31eGZBp5nGsr4nKhZKvxGQjyHGjS06BJsUlWgE29/hvnpgCsT1BJvnnyny7N3GIIVyxZ4O9GChr6hy2WQA== dependencies: - enzyme-adapter-utils "^1.14.0" - enzyme-shallow-equal "^1.0.4" - has "^1.0.3" - object.assign "^4.1.2" - object.values "^1.1.2" - prop-types "^15.7.2" + enzyme-adapter-utils "^1.14.2" + enzyme-shallow-equal "^1.0.7" + hasown "^2.0.0" + object.assign "^4.1.5" + object.values "^1.1.7" + prop-types "^15.8.1" react-is "^16.13.1" react-test-renderer "^16.0.0-0" - semver "^5.7.0" + semver "^5.7.2" -enzyme-adapter-utils@^1.14.0: - version "1.14.0" - resolved "https://registry.yarnpkg.com/enzyme-adapter-utils/-/enzyme-adapter-utils-1.14.0.tgz#afbb0485e8033aa50c744efb5f5711e64fbf1ad0" - integrity sha512-F/z/7SeLt+reKFcb7597IThpDp0bmzcH1E9Oabqv+o01cID2/YInlqHbFl7HzWBl4h3OdZYedtwNDOmSKkk0bg== +enzyme-adapter-utils@^1.14.2: + version "1.14.2" + resolved "https://registry.yarnpkg.com/enzyme-adapter-utils/-/enzyme-adapter-utils-1.14.2.tgz#1d012e6261accbe7d406db098bb4d8dfdce8c003" + integrity sha512-1ZC++RlsYRaiOWE5NRaF5OgsMt7F5rn/VuaJIgc7eW/fmgg8eS1/Ut7EugSPPi7VMdWMLcymRnMF+mJUJ4B8KA== dependencies: airbnb-prop-types "^2.16.0" - function.prototype.name "^1.1.3" - has "^1.0.3" - object.assign "^4.1.2" - object.fromentries "^2.0.3" - prop-types "^15.7.2" - semver "^5.7.1" + function.prototype.name "^1.1.6" + hasown "^2.0.0" + object.assign "^4.1.5" + object.fromentries "^2.0.7" + prop-types "^15.8.1" + semver "^6.3.1" enzyme-matchers@^7.1.2: version "7.1.2" @@ -7079,13 +7158,13 @@ enzyme-matchers@^7.1.2: circular-json-es6 "^2.0.1" deep-equal-ident "^1.1.1" -enzyme-shallow-equal@^1.0.1, enzyme-shallow-equal@^1.0.4: - version "1.0.4" - resolved "https://registry.yarnpkg.com/enzyme-shallow-equal/-/enzyme-shallow-equal-1.0.4.tgz#b9256cb25a5f430f9bfe073a84808c1d74fced2e" - integrity sha512-MttIwB8kKxypwHvRynuC3ahyNc+cFbR8mjVIltnmzQ0uKGqmsfO4bfBuLxb0beLNPhjblUEYvEbsg+VSygvF1Q== +enzyme-shallow-equal@^1.0.1, enzyme-shallow-equal@^1.0.7: + version "1.0.7" + resolved "https://registry.yarnpkg.com/enzyme-shallow-equal/-/enzyme-shallow-equal-1.0.7.tgz#4e3aa678022387a68e6c47aff200587851885b5e" + integrity sha512-/um0GFqUXnpM9SvKtje+9Tjoz3f1fpBC3eXRFrNs8kpYn69JljciYP7KZTqM/YQbUY9KUjvKB4jo/q+L6WGGvg== dependencies: - has "^1.0.3" - object-is "^1.1.2" + hasown "^2.0.0" + object-is "^1.1.5" enzyme-to-json@^3.3.0: version "3.6.2" @@ -7188,11 +7267,75 @@ es-abstract@^1.17.2, es-abstract@^1.19.0, es-abstract@^1.19.1, es-abstract@^1.19 unbox-primitive "^1.0.2" which-typed-array "^1.1.9" +es-abstract@^1.22.1, es-abstract@^1.22.3, es-abstract@^1.23.0, es-abstract@^1.23.2: + version "1.23.3" + resolved "https://registry.yarnpkg.com/es-abstract/-/es-abstract-1.23.3.tgz#8f0c5a35cd215312573c5a27c87dfd6c881a0aa0" + integrity sha512-e+HfNH61Bj1X9/jLc5v1owaLYuHdeHHSQlkhCBiTK8rBvKaULl/beGMxwrMXjpYrv4pz22BlY570vVePA2ho4A== + dependencies: + array-buffer-byte-length "^1.0.1" + arraybuffer.prototype.slice "^1.0.3" + available-typed-arrays "^1.0.7" + call-bind "^1.0.7" + data-view-buffer "^1.0.1" + data-view-byte-length "^1.0.1" + data-view-byte-offset "^1.0.0" + es-define-property "^1.0.0" + es-errors "^1.3.0" + es-object-atoms "^1.0.0" + es-set-tostringtag "^2.0.3" + es-to-primitive "^1.2.1" + function.prototype.name "^1.1.6" + get-intrinsic "^1.2.4" + get-symbol-description "^1.0.2" + globalthis "^1.0.3" + gopd "^1.0.1" + has-property-descriptors "^1.0.2" + has-proto "^1.0.3" + has-symbols "^1.0.3" + hasown "^2.0.2" + internal-slot "^1.0.7" + is-array-buffer "^3.0.4" + is-callable "^1.2.7" + is-data-view "^1.0.1" + is-negative-zero "^2.0.3" + is-regex "^1.1.4" + is-shared-array-buffer "^1.0.3" + is-string "^1.0.7" + is-typed-array "^1.1.13" + is-weakref "^1.0.2" + object-inspect "^1.13.1" + object-keys "^1.1.1" + object.assign "^4.1.5" + regexp.prototype.flags "^1.5.2" + safe-array-concat "^1.1.2" + safe-regex-test "^1.0.3" + string.prototype.trim "^1.2.9" + string.prototype.trimend "^1.0.8" + string.prototype.trimstart "^1.0.8" + typed-array-buffer "^1.0.2" + typed-array-byte-length "^1.0.1" + typed-array-byte-offset "^1.0.2" + typed-array-length "^1.0.6" + unbox-primitive "^1.0.2" + which-typed-array "^1.1.15" + es-array-method-boxes-properly@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/es-array-method-boxes-properly/-/es-array-method-boxes-properly-1.0.0.tgz#873f3e84418de4ee19c5be752990b2e44718d09e" integrity sha512-wd6JXUmyHmt8T5a2xreUwKcGPq6f1f+WwIJkijUqiGcJz1qqnZgP6XIK+QyIWU5lT7imeNxUll48bziG+TSYcA== +es-define-property@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/es-define-property/-/es-define-property-1.0.0.tgz#c7faefbdff8b2696cf5f46921edfb77cc4ba3845" + integrity sha512-jxayLKShrEqqzJ0eumQbVhTYQM27CfT1T35+gCgDFoL82JLsXqTJ76zv6A0YLOgEnLUMvLzsDsGIrl8NFpT2gQ== + dependencies: + get-intrinsic "^1.2.4" + +es-errors@^1.2.1, es-errors@^1.3.0: + version "1.3.0" + resolved "https://registry.yarnpkg.com/es-errors/-/es-errors-1.3.0.tgz#05f75a25dab98e4fb1dcd5e1472c0546d5057c8f" + integrity sha512-Zf5H2Kxt2xjTvbJvP2ZWLEICxA6j+hAmMzIlypy4xcBg1vKVnx89Wy0GbS+kf5cwCVFFzdCFh2XSCFNULS6csw== + es-get-iterator@^1.1.1: version "1.1.2" resolved "https://registry.yarnpkg.com/es-get-iterator/-/es-get-iterator-1.1.2.tgz#9234c54aba713486d7ebde0220864af5e2b283f7" @@ -7212,6 +7355,13 @@ es-module-lexer@^0.9.0: resolved "https://registry.yarnpkg.com/es-module-lexer/-/es-module-lexer-0.9.3.tgz#6f13db00cc38417137daf74366f535c8eb438f19" integrity sha512-1HQ2M2sPtxwnvOvT1ZClHyQDiggdNjURWpY2we6aMKCQiUVxTmVs2UYPLIrD84sS+kMdUwfBSylbJPwNnBrnHQ== +es-object-atoms@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/es-object-atoms/-/es-object-atoms-1.0.0.tgz#ddb55cd47ac2e240701260bc2a8e31ecb643d941" + integrity sha512-MZ4iQ6JwHOBQjahnjwaC1ZtIBH+2ohjamzAO3oaHcXYup7qxjF2fixyH+Q71voWHeOkI2q/TnJao/KfXYIZWbw== + dependencies: + es-errors "^1.3.0" + es-set-tostringtag@^2.0.1: version "2.0.1" resolved "https://registry.yarnpkg.com/es-set-tostringtag/-/es-set-tostringtag-2.0.1.tgz#338d502f6f674301d710b80c8592de8a15f09cd8" @@ -7221,6 +7371,15 @@ es-set-tostringtag@^2.0.1: has "^1.0.3" has-tostringtag "^1.0.0" +es-set-tostringtag@^2.0.3: + version "2.0.3" + resolved "https://registry.yarnpkg.com/es-set-tostringtag/-/es-set-tostringtag-2.0.3.tgz#8bb60f0a440c2e4281962428438d58545af39777" + integrity sha512-3T8uNMC3OQTHkFUsFq8r/BwAXLHvU/9O9mE0fBc/MY5iq/8H7ncvO947LmYA6ldWw9Uh8Yhf25zu6n7nML5QWQ== + dependencies: + get-intrinsic "^1.2.4" + has-tostringtag "^1.0.2" + hasown "^2.0.1" + es-shim-unscopables@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/es-shim-unscopables/-/es-shim-unscopables-1.0.0.tgz#702e632193201e3edf8713635d083d378e510241" @@ -8269,7 +8428,12 @@ function-bind@^1.1.1: resolved "https://registry.yarnpkg.com/function-bind/-/function-bind-1.1.1.tgz#a56899d3ea3c9bab874bb9773b7c5ede92f4895d" integrity sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A== -function.prototype.name@^1.1.2, function.prototype.name@^1.1.3, function.prototype.name@^1.1.5: +function-bind@^1.1.2: + version "1.1.2" + resolved "https://registry.yarnpkg.com/function-bind/-/function-bind-1.1.2.tgz#2c02d864d97f3ea6c8830c464cbd11ab6eab7a1c" + integrity sha512-7XHNxH7qX9xG5mIwxkhumTox/MIRNcOgDrxWsMt2pAr23WHp6MrRlN7FBSFpCpr+oVO0F744iUgR82nJMfG2SA== + +function.prototype.name@^1.1.2, function.prototype.name@^1.1.5: version "1.1.5" resolved "https://registry.yarnpkg.com/function.prototype.name/-/function.prototype.name-1.1.5.tgz#cce0505fe1ffb80503e6f9e46cc64e46a12a9621" integrity sha512-uN7m/BzVKQnCUF/iW8jYea67v++2u7m5UgENbHRtdDVclOUP+FMPlCNdmk0h/ysGyo2tavMJEDqJAkJdRa1vMA== @@ -8279,6 +8443,16 @@ function.prototype.name@^1.1.2, function.prototype.name@^1.1.3, function.prototy es-abstract "^1.19.0" functions-have-names "^1.2.2" +function.prototype.name@^1.1.6: + version "1.1.6" + resolved "https://registry.yarnpkg.com/function.prototype.name/-/function.prototype.name-1.1.6.tgz#cdf315b7d90ee77a4c6ee216c3c3362da07533fd" + integrity sha512-Z5kx79swU5P27WEayXM1tBi5Ze/lbIyiNgU3qyXUOf9b2rgXYyF9Dy9Cx+IQv/Lc8WCG6L82zwUPpSS9hGehIg== + dependencies: + call-bind "^1.0.2" + define-properties "^1.2.0" + es-abstract "^1.22.1" + functions-have-names "^1.2.3" + functional-red-black-tree@^1.0.1: version "1.0.1" resolved "https://registry.yarnpkg.com/functional-red-black-tree/-/functional-red-black-tree-1.0.1.tgz#1b0ab3bd553b2a0d6399d29c0e3ea0b252078327" @@ -8321,6 +8495,17 @@ get-intrinsic@^1.0.1, get-intrinsic@^1.0.2, get-intrinsic@^1.1.0, get-intrinsic@ has-proto "^1.0.1" has-symbols "^1.0.3" +get-intrinsic@^1.2.1, get-intrinsic@^1.2.3, get-intrinsic@^1.2.4: + version "1.2.4" + resolved "https://registry.yarnpkg.com/get-intrinsic/-/get-intrinsic-1.2.4.tgz#e385f5a4b5227d449c3eabbad05494ef0abbeadd" + integrity sha512-5uYhsJH8VJBTv7oslg4BznJYhDoRI6waYCxMmCdnTrcCrHA/fCFKoTFz2JKKE0HdDFUF7/oQuhzumXJK7paBRQ== + dependencies: + es-errors "^1.3.0" + function-bind "^1.1.2" + has-proto "^1.0.1" + has-symbols "^1.0.3" + hasown "^2.0.0" + get-own-enumerable-property-symbols@^3.0.0: version "3.0.2" resolved "https://registry.yarnpkg.com/get-own-enumerable-property-symbols/-/get-own-enumerable-property-symbols-3.0.2.tgz#b5fde77f22cbe35f390b4e089922c50bce6ef664" @@ -8363,6 +8548,15 @@ get-symbol-description@^1.0.0: call-bind "^1.0.2" get-intrinsic "^1.1.1" +get-symbol-description@^1.0.2: + version "1.0.2" + resolved "https://registry.yarnpkg.com/get-symbol-description/-/get-symbol-description-1.0.2.tgz#533744d5aa20aca4e079c8e5daf7fd44202821f5" + integrity sha512-g0QYk1dZBxGwk+Ngc+ltRH2IBp2f7zBkBMBJZCDerh6EhlhSR6+9irMCuT/09zD6qkarHUSn529sK/yL4S27mg== + dependencies: + call-bind "^1.0.5" + es-errors "^1.3.0" + get-intrinsic "^1.2.4" + get-value@^2.0.3, get-value@^2.0.6: version "2.0.6" resolved "https://registry.yarnpkg.com/get-value/-/get-value-2.0.6.tgz#dc15ca1c672387ca76bd37ac0a395ba2042a2c28" @@ -8661,11 +8855,23 @@ has-property-descriptors@^1.0.0: dependencies: get-intrinsic "^1.1.1" +has-property-descriptors@^1.0.2: + version "1.0.2" + resolved "https://registry.yarnpkg.com/has-property-descriptors/-/has-property-descriptors-1.0.2.tgz#963ed7d071dc7bf5f084c5bfbe0d1b6222586854" + integrity sha512-55JNKuIW+vq4Ke1BjOTjM2YctQIvCT7GFzHwmfZPGo5wnrgkid0YQtnAleFSqumZm4az3n2BS+erby5ipJdgrg== + dependencies: + es-define-property "^1.0.0" + has-proto@^1.0.1: version "1.0.1" resolved "https://registry.yarnpkg.com/has-proto/-/has-proto-1.0.1.tgz#1885c1305538958aff469fef37937c22795408e0" integrity sha512-7qE+iP+O+bgF9clE5+UoBFzE65mlBiVj3tKCrlNQ0Ogwm0BjpT/gK4SlLYDMybDh5I3TCTKnPPa0oMG7JDYrhg== +has-proto@^1.0.3: + version "1.0.3" + resolved "https://registry.yarnpkg.com/has-proto/-/has-proto-1.0.3.tgz#b31ddfe9b0e6e9914536a6ab286426d0214f77fd" + integrity sha512-SJ1amZAJUiZS+PhsVLf5tGydlaVB8EdFpaSO4gmiUKUOxk8qzn5AIy4ZeJUmh22znIdk/uMAUT2pl3FxzVUH+Q== + has-symbols@^1.0.1, has-symbols@^1.0.2, has-symbols@^1.0.3: version "1.0.3" resolved "https://registry.yarnpkg.com/has-symbols/-/has-symbols-1.0.3.tgz#bb7b2c4349251dce87b125f7bdf874aa7c8b39f8" @@ -8678,6 +8884,13 @@ has-tostringtag@^1.0.0: dependencies: has-symbols "^1.0.2" +has-tostringtag@^1.0.2: + version "1.0.2" + resolved "https://registry.yarnpkg.com/has-tostringtag/-/has-tostringtag-1.0.2.tgz#2cdc42d40bef2e5b4eeab7c01a73c54ce7ab5abc" + integrity sha512-NqADB8VjPFLM2V0VvHUewwwsw0ZWBaIdgo+ieHtK3hasLz4qeCRjYcqfB6AQrBggRKppKF8L52/VqdVsO47Dlw== + dependencies: + has-symbols "^1.0.3" + has-value@^0.3.1: version "0.3.1" resolved "https://registry.yarnpkg.com/has-value/-/has-value-0.3.1.tgz#7b1f58bada62ca827ec0a2078025654845995e1f" @@ -8738,6 +8951,13 @@ hash.js@^1.0.0, hash.js@^1.0.3: inherits "^2.0.3" minimalistic-assert "^1.0.1" +hasown@^2.0.0, hasown@^2.0.1, hasown@^2.0.2: + version "2.0.2" + resolved "https://registry.yarnpkg.com/hasown/-/hasown-2.0.2.tgz#003eaf91be7adc372e84ec59dc37252cedb80003" + integrity sha512-0hJU9SCPvmMzIBdZFqNPXWa6dqh7WdH0cII9y+CyS8rG3nL48Bclra9HmKhVVUHyPWNH5Y7xDwAB7bfgSjkUMQ== + dependencies: + function-bind "^1.1.2" + he@1.2.0, he@^1.2.0: version "1.2.0" resolved "https://registry.yarnpkg.com/he/-/he-1.2.0.tgz#84ae65fa7eafb165fddb61566ae14baf05664f0f" @@ -9206,6 +9426,15 @@ internal-slot@^1.0.3, internal-slot@^1.0.5: has "^1.0.3" side-channel "^1.0.4" +internal-slot@^1.0.7: + version "1.0.7" + resolved "https://registry.yarnpkg.com/internal-slot/-/internal-slot-1.0.7.tgz#c06dcca3ed874249881007b0a5523b172a190802" + integrity sha512-NGnrKwXzSms2qUUih/ILZ5JBqNTSa1+ZmP6flaIp6KmSElgE9qdndzS3cqjrDovwFdmwsGsLdeFgB6suw+1e9g== + dependencies: + es-errors "^1.3.0" + hasown "^2.0.0" + side-channel "^1.0.4" + invariant@^2.2.4: version "2.2.4" resolved "https://registry.yarnpkg.com/invariant/-/invariant-2.2.4.tgz#610f3c92c9359ce1db616e538008d23ff35158e6" @@ -9262,6 +9491,14 @@ is-array-buffer@^3.0.1, is-array-buffer@^3.0.2: get-intrinsic "^1.2.0" is-typed-array "^1.1.10" +is-array-buffer@^3.0.4: + version "3.0.4" + resolved "https://registry.yarnpkg.com/is-array-buffer/-/is-array-buffer-3.0.4.tgz#7a1f92b3d61edd2bc65d24f130530ea93d7fae98" + integrity sha512-wcjaerHw0ydZwfhiKbXJWLDY8A7yV7KhjQOpb83hGgGfId/aQa4TOvwyzn2PuswW2gPCYEL/nEAiSVpdOj1lXw== + dependencies: + call-bind "^1.0.2" + get-intrinsic "^1.2.1" + is-arrayish@^0.2.1: version "0.2.1" resolved "https://registry.yarnpkg.com/is-arrayish/-/is-arrayish-0.2.1.tgz#77c99840527aa8ecb1a8ba697b80645a7a926a9d" @@ -9306,7 +9543,7 @@ is-ci@^2.0.0: dependencies: ci-info "^2.0.0" -is-ci@^3.0.0: +is-ci@^3.0.1: version "3.0.1" resolved "https://registry.yarnpkg.com/is-ci/-/is-ci-3.0.1.tgz#db6ecbed1bd659c43dac0f45661e7674103d1867" integrity sha512-ZYvCgrefwqoQ6yTyYUbQu64HsITZ3NfKX1lzaEYdkTDcfKzzCI/wthRRYKkdjHKFVgNiXKAKm65Zo1pk2as/QQ== @@ -9334,6 +9571,13 @@ is-data-descriptor@^1.0.0: dependencies: kind-of "^6.0.0" +is-data-view@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/is-data-view/-/is-data-view-1.0.1.tgz#4b4d3a511b70f3dc26d42c03ca9ca515d847759f" + integrity sha512-AHkaJrsUVW6wq6JS8y3JnM/GJF/9cf+k20+iDzlSaJrinEo5+7vRiteOSwBhHRiAyQATN1AmY4hwzxJKPmYf+w== + dependencies: + is-typed-array "^1.1.13" + is-date-object@^1.0.1, is-date-object@^1.0.2: version "1.0.5" resolved "https://registry.yarnpkg.com/is-date-object/-/is-date-object-1.0.5.tgz#0841d5536e724c25597bf6ea62e1bd38298df31f" @@ -9453,6 +9697,11 @@ is-negative-zero@^2.0.2: resolved "https://registry.yarnpkg.com/is-negative-zero/-/is-negative-zero-2.0.2.tgz#7bf6f03a28003b8b3965de3ac26f664d765f3150" integrity sha512-dqJvarLawXsFbNDeJW7zAz8ItJ9cd28YufuuFzh0G8pNHjJMnY08Dv7sYX2uF5UpQOwieAeOExEYAWWfu7ZZUA== +is-negative-zero@^2.0.3: + version "2.0.3" + resolved "https://registry.yarnpkg.com/is-negative-zero/-/is-negative-zero-2.0.3.tgz#ced903a027aca6381b777a5743069d7376a49747" + integrity sha512-5KoIu2Ngpyek75jXodFvnafB6DJgr3u8uuK0LEZJjrU19DrMD3EVERaR8sjz8CCGgpZvxPl9SuE1GMVPFHx1mw== + is-npm@^3.0.0: version "3.0.0" resolved "https://registry.yarnpkg.com/is-npm/-/is-npm-3.0.0.tgz#ec9147bfb629c43f494cf67936a961edec7e8053" @@ -9568,6 +9817,13 @@ is-shared-array-buffer@^1.0.2: dependencies: call-bind "^1.0.2" +is-shared-array-buffer@^1.0.3: + version "1.0.3" + resolved "https://registry.yarnpkg.com/is-shared-array-buffer/-/is-shared-array-buffer-1.0.3.tgz#1237f1cba059cdb62431d378dcc37d9680181688" + integrity sha512-nA2hv5XIhLR3uVzDDfCIknerhx8XUKnstuOERPNNIinXG7v9u+ohXF67vxm4TPTEPU6lm61ZkwP3c9PCB97rhg== + dependencies: + call-bind "^1.0.7" + is-stream@^1.1.0: version "1.1.0" resolved "https://registry.yarnpkg.com/is-stream/-/is-stream-1.1.0.tgz#12d4a3dd4e68e0b79ceb8dbc84173ae80d91ca44" @@ -9615,6 +9871,13 @@ is-typed-array@^1.1.10, is-typed-array@^1.1.3, is-typed-array@^1.1.9: gopd "^1.0.1" has-tostringtag "^1.0.0" +is-typed-array@^1.1.13: + version "1.1.13" + resolved "https://registry.yarnpkg.com/is-typed-array/-/is-typed-array-1.1.13.tgz#d6c5ca56df62334959322d7d7dd1cca50debe229" + integrity sha512-uZ25/bUAlUY5fR4OKT4rZQEBrzQWYV9ZJYGGsUmEJ6thodVJ1HX64ePQ6Z0qPWP+m+Uq6e9UugrE38jeYsDSMw== + dependencies: + which-typed-array "^1.1.14" + is-typedarray@^1.0.0, is-typedarray@~1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/is-typedarray/-/is-typedarray-1.0.0.tgz#e479c80858df0c1b11ddda6940f96011fcda4a9a" @@ -11832,6 +12095,11 @@ object-inspect@^1.12.3, object-inspect@^1.7.0, object-inspect@^1.9.0: resolved "https://registry.yarnpkg.com/object-inspect/-/object-inspect-1.12.3.tgz#ba62dffd67ee256c8c086dfae69e016cd1f198b9" integrity sha512-geUvdk7c+eizMNUDkRpW1wJwgfOiOeHbxBR/hLXK1aT6zmVSO0jsQcs7fj6MGw89jC/cjGfLcNOrtMYtGqm81g== +object-inspect@^1.13.1: + version "1.13.1" + resolved "https://registry.yarnpkg.com/object-inspect/-/object-inspect-1.13.1.tgz#b96c6109324ccfef6b12216a956ca4dc2ff94bc2" + integrity sha512-5qoj1RUiKOMsCCNLV1CBiPYE10sziTsnmNxkAI/rZhiD63CF7IqdFGC/XzjWjpSgLf0LxXX3bDFIh0E18f6UhQ== + object-is@^1.0.2, object-is@^1.1.2, object-is@^1.1.4: version "1.1.5" resolved "https://registry.yarnpkg.com/object-is/-/object-is-1.1.5.tgz#b9deeaa5fc7f1846a0faecdceec138e5778f53ac" @@ -11840,6 +12108,14 @@ object-is@^1.0.2, object-is@^1.1.2, object-is@^1.1.4: call-bind "^1.0.2" define-properties "^1.1.3" +object-is@^1.1.5: + version "1.1.6" + resolved "https://registry.yarnpkg.com/object-is/-/object-is-1.1.6.tgz#1a6a53aed2dd8f7e6775ff870bea58545956ab07" + integrity sha512-F8cZ+KfGlSGi09lJT7/Nd6KJZ9ygtvYC0/UYYLI9nmQKLMnydpB9yvbv9K1uSkEu7FU9vYPmVwLg328tX+ot3Q== + dependencies: + call-bind "^1.0.7" + define-properties "^1.2.1" + object-keys@^1.1.1: version "1.1.1" resolved "https://registry.yarnpkg.com/object-keys/-/object-keys-1.1.1.tgz#1c47f272df277f3b1daf061677d9c82e2322c60e" @@ -11852,13 +12128,13 @@ object-visit@^1.0.0: dependencies: isobject "^3.0.0" -object.assign@^4.0.4, object.assign@^4.1.0, object.assign@^4.1.2, object.assign@^4.1.3, object.assign@^4.1.4: - version "4.1.4" - resolved "https://registry.yarnpkg.com/object.assign/-/object.assign-4.1.4.tgz#9673c7c7c351ab8c4d0b516f4343ebf4dfb7799f" - integrity sha512-1mxKf0e58bvyjSCtKYY4sRe9itRk3PJpquJOjeIkz885CczcI4IvJJDLPS72oowuSh+pBxUFROpX+TU++hxhZQ== +object.assign@^4.0.4, object.assign@^4.1.0, object.assign@^4.1.2, object.assign@^4.1.3, object.assign@^4.1.4, object.assign@^4.1.5: + version "4.1.5" + resolved "https://registry.yarnpkg.com/object.assign/-/object.assign-4.1.5.tgz#3a833f9ab7fdb80fc9e8d2300c803d216d8fdbb0" + integrity sha512-byy+U7gp+FVwmyzKPYhW2h5l3crpmGsxl7X2s8y43IgxvG4g3QZ6CffDtsNQy1WsmZpQbO+ybo0AlW7TY6DcBQ== dependencies: - call-bind "^1.0.2" - define-properties "^1.1.4" + call-bind "^1.0.5" + define-properties "^1.2.1" has-symbols "^1.0.3" object-keys "^1.1.1" @@ -11871,7 +12147,7 @@ object.entries@^1.1.1, object.entries@^1.1.2, object.entries@^1.1.5: define-properties "^1.1.3" es-abstract "^1.19.1" -object.fromentries@^2.0.3, object.fromentries@^2.0.5: +object.fromentries@^2.0.5: version "2.0.5" resolved "https://registry.yarnpkg.com/object.fromentries/-/object.fromentries-2.0.5.tgz#7b37b205109c21e741e605727fe8b0ad5fa08251" integrity sha512-CAyG5mWQRRiBU57Re4FKoTBjXfDoNwdFVH2Y1tS9PqCsfUTymAohOkEMSG3aRNKmv4lV3O7p1et7c187q6bynw== @@ -11880,6 +12156,16 @@ object.fromentries@^2.0.3, object.fromentries@^2.0.5: define-properties "^1.1.3" es-abstract "^1.19.1" +object.fromentries@^2.0.7: + version "2.0.8" + resolved "https://registry.yarnpkg.com/object.fromentries/-/object.fromentries-2.0.8.tgz#f7195d8a9b97bd95cbc1999ea939ecd1a2b00c65" + integrity sha512-k6E21FzySsSK5a21KRADBd/NGneRegFO5pLHfdQLpRDETUNJueLXs3WCzyQ3tFRDYgbq3KHGXfTbi2bs8WQ6rQ== + dependencies: + call-bind "^1.0.7" + define-properties "^1.2.1" + es-abstract "^1.23.2" + es-object-atoms "^1.0.0" + object.getownpropertydescriptors@^2.1.0, object.getownpropertydescriptors@^2.1.1: version "2.1.4" resolved "https://registry.yarnpkg.com/object.getownpropertydescriptors/-/object.getownpropertydescriptors-2.1.4.tgz#7965e6437a57278b587383831a9b829455a4bc37" @@ -11905,14 +12191,14 @@ object.pick@^1.3.0: dependencies: isobject "^3.0.1" -object.values@^1.1.0, object.values@^1.1.1, object.values@^1.1.2, object.values@^1.1.5: - version "1.1.5" - resolved "https://registry.yarnpkg.com/object.values/-/object.values-1.1.5.tgz#959f63e3ce9ef108720333082131e4a459b716ac" - integrity sha512-QUZRW0ilQ3PnPpbNtgdNV1PDbEqLIiSFB3l+EnGtBQ/8SUTLj1PZwtQHABZtLgwpJZTSZhuGLOGk57Drx2IvYg== +object.values@^1.1.0, object.values@^1.1.1, object.values@^1.1.5, object.values@^1.1.7: + version "1.2.0" + resolved "https://registry.yarnpkg.com/object.values/-/object.values-1.2.0.tgz#65405a9d92cee68ac2d303002e0b8470a4d9ab1b" + integrity sha512-yBYjY9QX2hnRmZHAjG/f13MzmBzxzYgQhFrke06TTyKY5zSTEqkOeukBzIdVA3j3ulu8Qa3MbVFShV7T2RmGtQ== dependencies: - call-bind "^1.0.2" - define-properties "^1.1.3" - es-abstract "^1.19.1" + call-bind "^1.0.7" + define-properties "^1.2.1" + es-object-atoms "^1.0.0" oblivious-set@1.0.0: version "1.0.0" @@ -12382,6 +12668,11 @@ posix-character-classes@^0.1.0: resolved "https://registry.yarnpkg.com/posix-character-classes/-/posix-character-classes-0.1.1.tgz#01eac0fe3b5af71a2a6c02feabb8c1fef7e00eab" integrity sha512-xTgYBc3fuo7Yt7JbiuFxSYGToMoz8fLoE6TC9Wx1P/u+LfeThMOAqmuyECnlBaaJb+u1m9hHiXUEtwW4OzfUJg== +possible-typed-array-names@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/possible-typed-array-names/-/possible-typed-array-names-1.0.0.tgz#89bb63c6fada2c3e90adc4a647beeeb39cc7bf8f" + integrity sha512-d7Uw+eZoloe0EHDIYoe+bQ5WXnGMOpmiZFTuMWCwpjzzkL2nTjcKiAk4hh8TjnGye2TwWOk3UXucZ+3rbmBa8Q== + postcss-attribute-case-insensitive@^5.0.2: version "5.0.2" resolved "https://registry.yarnpkg.com/postcss-attribute-case-insensitive/-/postcss-attribute-case-insensitive-5.0.2.tgz#03d761b24afc04c09e757e92ff53716ae8ea2741" @@ -13698,6 +13989,16 @@ regexp.prototype.flags@^1.3.0, regexp.prototype.flags@^1.4.1, regexp.prototype.f define-properties "^1.2.0" functions-have-names "^1.2.3" +regexp.prototype.flags@^1.5.2: + version "1.5.2" + resolved "https://registry.yarnpkg.com/regexp.prototype.flags/-/regexp.prototype.flags-1.5.2.tgz#138f644a3350f981a858c44f6bb1a61ff59be334" + integrity sha512-NcDiDkTLuPR+++OCKB0nWafEmhg/Da8aUPLPMQbK+bxKKCm1/S5he+AqYa4PlMCVBalb4/yxIRub6qkEx5yJbw== + dependencies: + call-bind "^1.0.6" + define-properties "^1.2.1" + es-errors "^1.3.0" + set-function-name "^2.0.1" + regexpp@^3.1.0, regexpp@^3.2.0: version "3.2.0" resolved "https://registry.yarnpkg.com/regexpp/-/regexpp-3.2.0.tgz#0425a2768d8f23bad70ca4b90461fa2f1213e1b2" @@ -14055,6 +14356,16 @@ rxjs@^7.1.0, rxjs@^7.5.1: dependencies: tslib "^2.1.0" +safe-array-concat@^1.1.2: + version "1.1.2" + resolved "https://registry.yarnpkg.com/safe-array-concat/-/safe-array-concat-1.1.2.tgz#81d77ee0c4e8b863635227c721278dd524c20edb" + integrity sha512-vj6RsCsWBCf19jIeHEfkRMw8DPiBb+DMXklQ/1SGDHOMlHdPUkZXFQ2YdplS23zESTijAcurb1aSgJA3AgMu1Q== + dependencies: + call-bind "^1.0.7" + get-intrinsic "^1.2.4" + has-symbols "^1.0.3" + isarray "^2.0.5" + safe-buffer@5.1.2, safe-buffer@~5.1.0, safe-buffer@~5.1.1: version "5.1.2" resolved "https://registry.yarnpkg.com/safe-buffer/-/safe-buffer-5.1.2.tgz#991ec69d296e0313747d59bdfd2b745c35f8828d" @@ -14074,6 +14385,15 @@ safe-regex-test@^1.0.0: get-intrinsic "^1.1.3" is-regex "^1.1.4" +safe-regex-test@^1.0.3: + version "1.0.3" + resolved "https://registry.yarnpkg.com/safe-regex-test/-/safe-regex-test-1.0.3.tgz#a5b4c0f06e0ab50ea2c395c14d8371232924c377" + integrity sha512-CdASjNJPvRa7roO6Ra/gLYBTzYzzPyyBXxIMdGW3USQLyjWEls2RgW5UBTXaQVp+OrpeCK3bLem8smtmheoRuw== + dependencies: + call-bind "^1.0.6" + es-errors "^1.3.0" + is-regex "^1.1.4" + safe-regex@^1.1.0: version "1.1.0" resolved "https://registry.yarnpkg.com/safe-regex/-/safe-regex-1.1.0.tgz#40a3669f3b077d1e943d44629e157dd48023bf2e" @@ -14195,10 +14515,10 @@ semver-diff@^2.0.0: dependencies: semver "^5.0.3" -"semver@2 || 3 || 4 || 5", semver@^5.0.3, semver@^5.5.0, semver@^5.6.0, semver@^5.7.0, semver@^5.7.1: - version "5.7.1" - resolved "https://registry.yarnpkg.com/semver/-/semver-5.7.1.tgz#a954f931aeba508d307bbf069eff0c01c96116f7" - integrity sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ== +"semver@2 || 3 || 4 || 5", semver@^5.0.3, semver@^5.5.0, semver@^5.6.0, semver@^5.7.2: + version "5.7.2" + resolved "https://registry.yarnpkg.com/semver/-/semver-5.7.2.tgz#48d55db737c3287cd4835e17fa13feace1c41ef8" + integrity sha512-cBznnQ9KjJqU67B52RMC65CMarK2600WFnbkcaiwWq3xy/5haFJlshgnpjovMVJ+Hff49d8GEn0b87C5pDQ10g== semver@7.3.5: version "7.3.5" @@ -14207,10 +14527,10 @@ semver@7.3.5: dependencies: lru-cache "^6.0.0" -semver@^6.0.0, semver@^6.1.1, semver@^6.1.2, semver@^6.2.0, semver@^6.3.0: - version "6.3.0" - resolved "https://registry.yarnpkg.com/semver/-/semver-6.3.0.tgz#ee0a64c8af5e8ceea67687b133761e1becbd1d3d" - integrity sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw== +semver@^6.0.0, semver@^6.1.1, semver@^6.1.2, semver@^6.2.0, semver@^6.3.0, semver@^6.3.1: + version "6.3.1" + resolved "https://registry.yarnpkg.com/semver/-/semver-6.3.1.tgz#556d2ef8689146e46dcea4bfdd095f3434dffcb4" + integrity sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA== semver@^7.2.1, semver@^7.3.2, semver@^7.3.4, semver@^7.3.5, semver@^7.3.7, semver@^7.5.3: version "7.5.4" @@ -14280,6 +14600,28 @@ set-blocking@^2.0.0: resolved "https://registry.yarnpkg.com/set-blocking/-/set-blocking-2.0.0.tgz#045f9782d011ae9a6803ddd382b24392b3d890f7" integrity sha512-KiKBS8AnWGEyLzofFfmvKwpdPzqiy16LvQfK3yv/fVH7Bj13/wl3JSR1J+rfgRE9q7xUJK4qvgS8raSOeLUehw== +set-function-length@^1.2.1: + version "1.2.2" + resolved "https://registry.yarnpkg.com/set-function-length/-/set-function-length-1.2.2.tgz#aac72314198eaed975cf77b2c3b6b880695e5449" + integrity sha512-pgRc4hJ4/sNjWCSS9AmnS40x3bNMDTknHgL5UaMBTMyJnU90EgWh1Rz+MC9eFu4BuN/UwZjKQuY/1v3rM7HMfg== + dependencies: + define-data-property "^1.1.4" + es-errors "^1.3.0" + function-bind "^1.1.2" + get-intrinsic "^1.2.4" + gopd "^1.0.1" + has-property-descriptors "^1.0.2" + +set-function-name@^2.0.1: + version "2.0.2" + resolved "https://registry.yarnpkg.com/set-function-name/-/set-function-name-2.0.2.tgz#16a705c5a0dc2f5e638ca96d8a8cd4e1c2b90985" + integrity sha512-7PGFlmtwsEADb0WYyvCMa1t+yke6daIG4Wirafur5kcf+MhUnPms1UeR0CKQdTZD81yESwMHbtn+TR+dMviakQ== + dependencies: + define-data-property "^1.1.4" + es-errors "^1.3.0" + functions-have-names "^1.2.3" + has-property-descriptors "^1.0.2" + set-value@^2.0.0, set-value@^2.0.1: version "2.0.1" resolved "https://registry.yarnpkg.com/set-value/-/set-value-2.0.1.tgz#a18d40530e6f07de4228c7defe4227af8cad005b" @@ -14844,6 +15186,16 @@ string.prototype.trim@^1.2.1, string.prototype.trim@^1.2.7: define-properties "^1.1.4" es-abstract "^1.20.4" +string.prototype.trim@^1.2.9: + version "1.2.9" + resolved "https://registry.yarnpkg.com/string.prototype.trim/-/string.prototype.trim-1.2.9.tgz#b6fa326d72d2c78b6df02f7759c73f8f6274faa4" + integrity sha512-klHuCNxiMZ8MlsOihJhJEBJAiMVqU3Z2nEXWfWnIqjN0gEFS9J9+IxKozWWtQGcgoa1WUZzLjKPTr4ZHNFTFxw== + dependencies: + call-bind "^1.0.7" + define-properties "^1.2.1" + es-abstract "^1.23.0" + es-object-atoms "^1.0.0" + string.prototype.trimend@^1.0.6: version "1.0.6" resolved "https://registry.yarnpkg.com/string.prototype.trimend/-/string.prototype.trimend-1.0.6.tgz#c4a27fa026d979d79c04f17397f250a462944533" @@ -14853,6 +15205,15 @@ string.prototype.trimend@^1.0.6: define-properties "^1.1.4" es-abstract "^1.20.4" +string.prototype.trimend@^1.0.8: + version "1.0.8" + resolved "https://registry.yarnpkg.com/string.prototype.trimend/-/string.prototype.trimend-1.0.8.tgz#3651b8513719e8a9f48de7f2f77640b26652b229" + integrity sha512-p73uL5VCHCO2BZZ6krwwQE3kCzM7NKmis8S//xEC6fQonchbum4eP6kR4DLEjQFO3Wnj3Fuo8NM0kOSjVdHjZQ== + dependencies: + call-bind "^1.0.7" + define-properties "^1.2.1" + es-object-atoms "^1.0.0" + string.prototype.trimstart@^1.0.6: version "1.0.6" resolved "https://registry.yarnpkg.com/string.prototype.trimstart/-/string.prototype.trimstart-1.0.6.tgz#e90ab66aa8e4007d92ef591bbf3cd422c56bdcf4" @@ -14862,6 +15223,15 @@ string.prototype.trimstart@^1.0.6: define-properties "^1.1.4" es-abstract "^1.20.4" +string.prototype.trimstart@^1.0.8: + version "1.0.8" + resolved "https://registry.yarnpkg.com/string.prototype.trimstart/-/string.prototype.trimstart-1.0.8.tgz#7ee834dda8c7c17eff3118472bb35bfedaa34dde" + integrity sha512-UXSH262CSZY1tfu3G3Secr6uGLCFVPMhIqHjlgCUtCCcgihYc/xKs9djMTMUOb2j1mVSeU8EU6NWc/iQKU6Gfg== + dependencies: + call-bind "^1.0.7" + define-properties "^1.2.1" + es-object-atoms "^1.0.0" + string_decoder@^1.1.1: version "1.3.0" resolved "https://registry.yarnpkg.com/string_decoder/-/string_decoder-1.3.0.tgz#42f114594a46cf1a8e30b0a84f56c78c3edac21e" @@ -15555,6 +15925,38 @@ type-is@~1.6.18: media-typer "0.3.0" mime-types "~2.1.24" +typed-array-buffer@^1.0.2: + version "1.0.2" + resolved "https://registry.yarnpkg.com/typed-array-buffer/-/typed-array-buffer-1.0.2.tgz#1867c5d83b20fcb5ccf32649e5e2fc7424474ff3" + integrity sha512-gEymJYKZtKXzzBzM4jqa9w6Q1Jjm7x2d+sh19AdsD4wqnMPDYyvwpsIc2Q/835kHuo3BEQ7CjelGhfTsoBb2MQ== + dependencies: + call-bind "^1.0.7" + es-errors "^1.3.0" + is-typed-array "^1.1.13" + +typed-array-byte-length@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/typed-array-byte-length/-/typed-array-byte-length-1.0.1.tgz#d92972d3cff99a3fa2e765a28fcdc0f1d89dec67" + integrity sha512-3iMJ9q0ao7WE9tWcaYKIptkNBuOIcZCCT0d4MRvuuH88fEoEH62IuQe0OtraD3ebQEoTRk8XCBoknUNc1Y67pw== + dependencies: + call-bind "^1.0.7" + for-each "^0.3.3" + gopd "^1.0.1" + has-proto "^1.0.3" + is-typed-array "^1.1.13" + +typed-array-byte-offset@^1.0.2: + version "1.0.2" + resolved "https://registry.yarnpkg.com/typed-array-byte-offset/-/typed-array-byte-offset-1.0.2.tgz#f9ec1acb9259f395093e4567eb3c28a580d02063" + integrity sha512-Ous0vodHa56FviZucS2E63zkgtgrACj7omjwd/8lTEMEPFFyjfixMZ1ZXenpgCFBBt4EC1J2XsyVS2gkG0eTFA== + dependencies: + available-typed-arrays "^1.0.7" + call-bind "^1.0.7" + for-each "^0.3.3" + gopd "^1.0.1" + has-proto "^1.0.3" + is-typed-array "^1.1.13" + typed-array-length@^1.0.4: version "1.0.4" resolved "https://registry.yarnpkg.com/typed-array-length/-/typed-array-length-1.0.4.tgz#89d83785e5c4098bec72e08b319651f0eac9c1bb" @@ -15564,6 +15966,18 @@ typed-array-length@^1.0.4: for-each "^0.3.3" is-typed-array "^1.1.9" +typed-array-length@^1.0.6: + version "1.0.6" + resolved "https://registry.yarnpkg.com/typed-array-length/-/typed-array-length-1.0.6.tgz#57155207c76e64a3457482dfdc1c9d1d3c4c73a3" + integrity sha512-/OxDN6OtAk5KBpGb28T+HZc2M+ADtvRxXrKKbUwtsLgdoxgX13hyy7ek6bFRl5+aBs2yZzB0c4CnQfAtVypW/g== + dependencies: + call-bind "^1.0.7" + for-each "^0.3.3" + gopd "^1.0.1" + has-proto "^1.0.3" + is-typed-array "^1.1.13" + possible-typed-array-names "^1.0.0" + typed-function@^2.0.0: version "2.1.0" resolved "https://registry.yarnpkg.com/typed-function/-/typed-function-2.1.0.tgz#ded6f8a442ba8749ff3fe75bc41419c8d46ccc3f" @@ -16260,6 +16674,17 @@ which-module@^2.0.0: resolved "https://registry.yarnpkg.com/which-module/-/which-module-2.0.0.tgz#d9ef07dce77b9902b8a3a8fa4b31c3e3f7e6e87a" integrity sha512-B+enWhmw6cjfVC7kS8Pj9pCrKSc5txArRyaYGe088shv/FGWH+0Rjx/xPgtsWfsUtS27FkP697E4DDhgrgoc0Q== +which-typed-array@^1.1.14, which-typed-array@^1.1.15: + version "1.1.15" + resolved "https://registry.yarnpkg.com/which-typed-array/-/which-typed-array-1.1.15.tgz#264859e9b11a649b388bfaaf4f767df1f779b38d" + integrity sha512-oV0jmFtUky6CXfkqehVvBP/LSWJ2sy4vWMioiENyJLePrBO/yKyV9OyJySfAKosh+RYkIl5zJCNZ8/4JncrpdA== + dependencies: + available-typed-arrays "^1.0.7" + call-bind "^1.0.7" + for-each "^0.3.3" + gopd "^1.0.1" + has-tostringtag "^1.0.2" + which-typed-array@^1.1.2, which-typed-array@^1.1.9: version "1.1.9" resolved "https://registry.yarnpkg.com/which-typed-array/-/which-typed-array-1.1.9.tgz#307cf898025848cf995e795e8423c7f337efbde6" From b5f3df21c5edd67fc3d97bbca55eb6897598494c Mon Sep 17 00:00:00 2001 From: Martin Date: Fri, 7 Jun 2024 16:27:15 +0300 Subject: [PATCH 17/62] fix: hh:mm time format ambiguous (DHIS2-16717) (#538) --- cypress/integration/table.cy.js | 2 +- src/modules/tableValues.js | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/cypress/integration/table.cy.js b/cypress/integration/table.cy.js index d9dd4f7dd..c6d5d4f6e 100644 --- a/cypress/integration/table.cy.js +++ b/cypress/integration/table.cy.js @@ -70,7 +70,7 @@ const previousYear = getPreviousYearStr() const mainDimensions = [ { label: trackerProgram[DIMENSION_ID_LAST_UPDATED], - value: '2023-01-04 02:04', + value: '2023-01-04 14:04', }, { label: 'Created by', value: 'Traore, John (admin)' }, { label: 'Last updated by', value: 'Traore, John (admin)' }, diff --git a/src/modules/tableValues.js b/src/modules/tableValues.js index 973aa3982..0b48f9873 100644 --- a/src/modules/tableValues.js +++ b/src/modules/tableValues.js @@ -34,7 +34,7 @@ const getFormattedCellValue = ({ value, header = {}, visualization = {} }) => { moment(value).format( header.name === headersMap[DIMENSION_ID_LAST_UPDATED] || header.valueType === VALUE_TYPE_DATETIME - ? 'yyyy-MM-DD hh:mm' + ? 'yyyy-MM-DD HH:mm' : 'yyyy-MM-DD' ) ) From 3253e17fbc5a38a568b8e5684260de3ab6b70018 Mon Sep 17 00:00:00 2001 From: "@dhis2-bot" Date: Fri, 7 Jun 2024 13:46:26 +0000 Subject: [PATCH 18/62] chore(release): cut 101.0.4 [skip release] ## [101.0.4](https://github.com/dhis2/line-listing-app/compare/v101.0.3...v101.0.4) (2024-06-07) ### Bug Fixes * hh:mm time format ambiguous (DHIS2-16717) ([#538](https://github.com/dhis2/line-listing-app/issues/538)) ([b5f3df2](https://github.com/dhis2/line-listing-app/commit/b5f3df21c5edd67fc3d97bbca55eb6897598494c)) --- CHANGELOG.md | 7 +++++++ package.json | 2 +- 2 files changed, 8 insertions(+), 1 deletion(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 5cbc9d220..4b4e98d74 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,3 +1,10 @@ +## [101.0.4](https://github.com/dhis2/line-listing-app/compare/v101.0.3...v101.0.4) (2024-06-07) + + +### Bug Fixes + +* hh:mm time format ambiguous (DHIS2-16717) ([#538](https://github.com/dhis2/line-listing-app/issues/538)) ([b5f3df2](https://github.com/dhis2/line-listing-app/commit/b5f3df21c5edd67fc3d97bbca55eb6897598494c)) + ## [101.0.3](https://github.com/dhis2/line-listing-app/compare/v101.0.2...v101.0.3) (2024-06-03) diff --git a/package.json b/package.json index 275ed1111..58765d915 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "line-listing-app", - "version": "101.0.3", + "version": "101.0.4", "description": "DHIS2 Line Listing", "license": "BSD-3-Clause", "private": true, From 6f5b03447f4988199e45418efae3709b7c1e88cf Mon Sep 17 00:00:00 2001 From: Edoardo Sabadelli Date: Fri, 7 Jun 2024 16:28:46 +0200 Subject: [PATCH 19/62] fix: use improved rich text editor from analytics (DHIS2-15522) (#539) --- package.json | 2 +- yarn.lock | 64 +++++++++++++++++----------------------------------- 2 files changed, 22 insertions(+), 44 deletions(-) diff --git a/package.json b/package.json index 58765d915..8c3bb7a80 100644 --- a/package.json +++ b/package.json @@ -38,7 +38,7 @@ "typescript": "^4.8.4" }, "dependencies": { - "@dhis2/analytics": "^26.6.13", + "@dhis2/analytics": "^26.7.0", "@dhis2/app-runtime": "^3.4.4", "@dhis2/ui": "^9.4.2", "@dnd-kit/core": "^5.0.3", diff --git a/yarn.lock b/yarn.lock index ac9c0df32..1eb789dc1 100644 --- a/yarn.lock +++ b/yarn.lock @@ -2034,12 +2034,11 @@ classnames "^2.3.1" prop-types "^15.7.2" -"@dhis2/analytics@^26.6.13": - version "26.6.13" - resolved "https://registry.yarnpkg.com/@dhis2/analytics/-/analytics-26.6.13.tgz#1951d31ba74947ee848c1aa20b5e9b361d527de0" - integrity sha512-xBNJrevU0pc9Ucv3Zcj0uHi8NdNpcetyyKdub7NziRnuMQRvPlBu8jezAjzc2Rjf+Q0sDnCBXJLa2oOjpLbNNQ== +"@dhis2/analytics@^26.7.0": + version "26.7.0" + resolved "https://registry.yarnpkg.com/@dhis2/analytics/-/analytics-26.7.0.tgz#12d314ad2a84423612ff0eb0e32c191552bd8db8" + integrity sha512-7ocy+Ke9fYG40rHsICuH35UgIH+ahAgba9xFea0UbRYUhGavMW90mSVpgCNjE+PlefjR0xuHXB2UHYlTjhEIQw== dependencies: - "@dhis2/d2-ui-rich-text" "^7.4.1" "@dhis2/multi-calendar-dates" "1.0.0" "@dnd-kit/core" "^6.0.7" "@dnd-kit/sortable" "^7.0.2" @@ -2051,6 +2050,7 @@ d3-color "^1.2.3" highcharts "^10.3.3" lodash "^4.17.21" + markdown-it "^13.0.1" mathjs "^9.4.2" react-beautiful-dnd "^10.1.1" resize-observer-polyfill "^1.5.1" @@ -2240,15 +2240,6 @@ i18next "^10.3" moment "^2.24.0" -"@dhis2/d2-ui-rich-text@^7.4.1": - version "7.4.3" - resolved "https://registry.yarnpkg.com/@dhis2/d2-ui-rich-text/-/d2-ui-rich-text-7.4.3.tgz#a42c8e231bcc05186dd432dac86b33aed4ddc10d" - integrity sha512-60k/6CO2I8f4t3jU1nAic7uWONME1rckM8RcLnelhwUG20EZWq45OnDDdSfHgOWTwVDtxFnG3wspInkG/530KA== - dependencies: - babel-runtime "^6.26.0" - markdown-it "^8.4.2" - prop-types "^15.6.2" - "@dhis2/multi-calendar-dates@1.0.0": version "1.0.0" resolved "https://registry.yarnpkg.com/@dhis2/multi-calendar-dates/-/multi-calendar-dates-1.0.0.tgz#bf7f49aecdffa9781837a5d60d56a094b74ab4df" @@ -4785,14 +4776,6 @@ babel-preset-react-app@^10.0.1: babel-plugin-macros "^3.1.0" babel-plugin-transform-react-remove-prop-types "^0.4.24" -babel-runtime@^6.26.0: - version "6.26.0" - resolved "https://registry.yarnpkg.com/babel-runtime/-/babel-runtime-6.26.0.tgz#965c7058668e82b55d7bfe04ff2337bc8b5647fe" - integrity sha512-ITKNuq2wKlW1fJg9sSW52eepoYgZBggvOAHC0u/CYu/qxQ9EVzThCgR69BnSXLHjy2f7SY5zaQ4yt7H9ZVxY2g== - dependencies: - core-js "^2.4.0" - regenerator-runtime "^0.11.0" - babelify@^10.0.0: version "10.0.0" resolved "https://registry.yarnpkg.com/babelify/-/babelify-10.0.0.tgz#fe73b1a22583f06680d8d072e25a1e0d1d1d7fb5" @@ -5982,7 +5965,7 @@ core-js-pure@^3.23.3, core-js-pure@^3.25.1: resolved "https://registry.yarnpkg.com/core-js-pure/-/core-js-pure-3.26.0.tgz#7ad8a5dd7d910756f3124374b50026e23265ca9a" integrity sha512-LiN6fylpVBVwT8twhhluD9TzXmZQQsr2I2eIKtWNbZI1XMfBT7CV18itaN6RA7EtQd/SDdRx/wzvAShX2HvhQA== -core-js@^2.4.0, core-js@^2.6.12: +core-js@^2.6.12: version "2.6.12" resolved "https://registry.yarnpkg.com/core-js/-/core-js-2.6.12.tgz#d9333dfa7b065e347cc5682219d6f690859cc2ec" integrity sha512-Kb2wC0fvsWfQrgk8HU5lW6U/Lcs8+9aaYcy4ZFc6DDlo4nZ7n70dEgE5rtR0oG6ufKDUnrwfWL1mXR5ljDatrQ== @@ -7149,10 +7132,10 @@ entities@^4.2.0, entities@^4.3.0, entities@^4.4.0: resolved "https://registry.yarnpkg.com/entities/-/entities-4.4.0.tgz#97bdaba170339446495e653cfd2db78962900174" integrity sha512-oYp7156SP8LkeGD0GF85ad1X9Ai79WtRsZ2gxJqtBuzH+98YUV6jkHEKlZkMbcrjJjIVJNIDP/3WL9wQkoPbWA== -entities@~1.1.1: - version "1.1.2" - resolved "https://registry.yarnpkg.com/entities/-/entities-1.1.2.tgz#bdfa735299664dfafd34529ed4f8522a275fea56" - integrity sha512-f2LZMYl1Fzu7YSBKg+RoROelpOaNrcGmE9AZubeDfrCEia483oW4MI4VyFd5VNHIgQ/7qm1I0wUHK1eJnn2y2w== +entities@~3.0.1: + version "3.0.1" + resolved "https://registry.yarnpkg.com/entities/-/entities-3.0.1.tgz#2b887ca62585e96db3903482d336c1006c3001d4" + integrity sha512-WiyBqoomrwMdFG1e0kqvASYfnlb0lp8M5o5Fw2OFq1hNZxxcNk8Ik0Xm7LxzBhuidnZB/UtBqVCgUz3kBOP51Q== enzyme-adapter-react-16@^1.15.8: version "1.15.8" @@ -11118,10 +11101,10 @@ lines-and-columns@^1.1.6: resolved "https://registry.yarnpkg.com/lines-and-columns/-/lines-and-columns-1.2.4.tgz#eca284f75d2965079309dc0ad9255abb2ebc1632" integrity sha512-7ylylesZQ/PV29jhEDl3Ufjo6ZX7gCqJr5F7PKrqc93v7fzSymt1BpwEU8nAUXs8qzzvqhbjhK5QZg6Mt/HkBg== -linkify-it@^2.0.0: - version "2.2.0" - resolved "https://registry.yarnpkg.com/linkify-it/-/linkify-it-2.2.0.tgz#e3b54697e78bf915c70a38acd78fd09e0058b1cf" - integrity sha512-GnAl/knGn+i1U/wjBz3akz2stz+HrHLsxMwHQGofCDfPvlf+gDKN58UtfmUquTY4/MXeE2x7k19KQmeoZi94Iw== +linkify-it@^4.0.1: + version "4.0.1" + resolved "https://registry.yarnpkg.com/linkify-it/-/linkify-it-4.0.1.tgz#01f1d5e508190d06669982ba31a7d9f56a5751ec" + integrity sha512-C7bfi1UZmoj8+PQx22XyeXCuBlokoyWQL5pWSP+EI6nzRylyThouddufc2c1NDIcP9k5agmN9fLpA7VNJfIiqw== dependencies: uc.micro "^1.0.1" @@ -11517,14 +11500,14 @@ map-visit@^1.0.0: dependencies: object-visit "^1.0.0" -markdown-it@^8.4.2: - version "8.4.2" - resolved "https://registry.yarnpkg.com/markdown-it/-/markdown-it-8.4.2.tgz#386f98998dc15a37722aa7722084f4020bdd9b54" - integrity sha512-GcRz3AWTqSUphY3vsUqQSFMbgR38a4Lh3GWlHRh/7MRwz8mcu9n2IO7HOh+bXHrR9kOPDl5RNCaEsrneb+xhHQ== +markdown-it@^13.0.1: + version "13.0.2" + resolved "https://registry.yarnpkg.com/markdown-it/-/markdown-it-13.0.2.tgz#1bc22e23379a6952e5d56217fbed881e0c94d536" + integrity sha512-FtwnEuuK+2yVU7goGn/MJ0WBZMM9ZPgU9spqlFs7/A/pDIUNSOQZhUgOqYCficIuR2QaFnrt8LHqBWsbTAoI5w== dependencies: - argparse "^1.0.7" - entities "~1.1.1" - linkify-it "^2.0.0" + argparse "^2.0.1" + entities "~3.0.1" + linkify-it "^4.0.1" mdurl "^1.0.1" uc.micro "^1.0.5" @@ -13988,11 +13971,6 @@ regenerate@^1.4.2: resolved "https://registry.yarnpkg.com/regenerate/-/regenerate-1.4.2.tgz#b9346d8827e8f5a32f7ba29637d398b69014848a" integrity sha512-zrceR/XhGYU/d/opr2EKO7aRHUeiBI8qjtfHqADTwZd6Szfy16la6kqD0MIUs5z5hx6AaKa+PixpPrR289+I0A== -regenerator-runtime@^0.11.0: - version "0.11.1" - resolved "https://registry.yarnpkg.com/regenerator-runtime/-/regenerator-runtime-0.11.1.tgz#be05ad7f9bf7d22e056f9726cee5017fbf19e2e9" - integrity sha512-MguG95oij0fC3QV3URf4V2SDYGJhJnJGqvIIgdECeODCT98wSWDAJ94SSuVpYQUoTcGUIL6L4yNB7j1DFFHSBg== - regenerator-runtime@^0.13.4, regenerator-runtime@^0.13.9: version "0.13.11" resolved "https://registry.yarnpkg.com/regenerator-runtime/-/regenerator-runtime-0.13.11.tgz#f6dca3e7ceec20590d07ada785636a90cdca17f9" From 0e0cb2ad211f2b89d4008c541ded75b225eb7c9d Mon Sep 17 00:00:00 2001 From: "@dhis2-bot" Date: Fri, 7 Jun 2024 14:49:01 +0000 Subject: [PATCH 20/62] chore(release): cut 101.0.5 [skip release] ## [101.0.5](https://github.com/dhis2/line-listing-app/compare/v101.0.4...v101.0.5) (2024-06-07) ### Bug Fixes * use improved rich text editor from analytics (DHIS2-15522) ([#539](https://github.com/dhis2/line-listing-app/issues/539)) ([6f5b034](https://github.com/dhis2/line-listing-app/commit/6f5b03447f4988199e45418efae3709b7c1e88cf)) --- CHANGELOG.md | 7 +++++++ package.json | 2 +- 2 files changed, 8 insertions(+), 1 deletion(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 4b4e98d74..0d283b49c 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,3 +1,10 @@ +## [101.0.5](https://github.com/dhis2/line-listing-app/compare/v101.0.4...v101.0.5) (2024-06-07) + + +### Bug Fixes + +* use improved rich text editor from analytics (DHIS2-15522) ([#539](https://github.com/dhis2/line-listing-app/issues/539)) ([6f5b034](https://github.com/dhis2/line-listing-app/commit/6f5b03447f4988199e45418efae3709b7c1e88cf)) + ## [101.0.4](https://github.com/dhis2/line-listing-app/compare/v101.0.3...v101.0.4) (2024-06-07) diff --git a/package.json b/package.json index 8c3bb7a80..7af13d6d1 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "line-listing-app", - "version": "101.0.4", + "version": "101.0.5", "description": "DHIS2 Line Listing", "license": "BSD-3-Clause", "private": true, From 23e5322608805714dcb7abe28b910805674ec1ce Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Mon, 10 Jun 2024 09:37:18 +0000 Subject: [PATCH 21/62] chore(deps): bump @adobe/css-tools from 4.0.1 to 4.3.3 (#521) Bumps [@adobe/css-tools](https://github.com/adobe/css-tools) from 4.0.1 to 4.3.3. - [Changelog](https://github.com/adobe/css-tools/blob/main/History.md) - [Commits](https://github.com/adobe/css-tools/commits) --- updated-dependencies: - dependency-name: "@adobe/css-tools" dependency-type: indirect ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Co-authored-by: Jen Jones Arnesen --- yarn.lock | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/yarn.lock b/yarn.lock index 1eb789dc1..4a3c9f0be 100644 --- a/yarn.lock +++ b/yarn.lock @@ -3,9 +3,9 @@ "@adobe/css-tools@^4.0.1": - version "4.0.1" - resolved "https://registry.yarnpkg.com/@adobe/css-tools/-/css-tools-4.0.1.tgz#b38b444ad3aa5fedbb15f2f746dcd934226a12dd" - integrity sha512-+u76oB43nOHrF4DDWRLWDCtci7f3QJoEBigemIdIeTi1ODqjx6Tad9NCVnPRwewWlKkVab5PlK8DCtPTyX7S8g== + version "4.3.3" + resolved "https://registry.yarnpkg.com/@adobe/css-tools/-/css-tools-4.3.3.tgz#90749bde8b89cd41764224f5aac29cd4138f75ff" + integrity sha512-rE0Pygv0sEZ4vBWHlAgJLGDU7Pm8xoO6p3wsEceb7GYAjScrOHpEo8KK/eVkAcnSM+slAEtXjA2JpdjLp4fJQQ== "@ampproject/remapping@^2.2.0": version "2.2.1" From 101824e1815493fb2e03fa5e09b31f75f4c35eeb Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Mon, 10 Jun 2024 10:04:42 +0000 Subject: [PATCH 22/62] chore(deps): bump express from 4.18.2 to 4.19.2 (#520) Bumps [express](https://github.com/expressjs/express) from 4.18.2 to 4.19.2. - [Release notes](https://github.com/expressjs/express/releases) - [Changelog](https://github.com/expressjs/express/blob/master/History.md) - [Commits](https://github.com/expressjs/express/compare/4.18.2...4.19.2) --- updated-dependencies: - dependency-name: express dependency-type: indirect ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Co-authored-by: Jen Jones Arnesen --- yarn.lock | 43 ++++++++++++++++++++++++------------------- 1 file changed, 24 insertions(+), 19 deletions(-) diff --git a/yarn.lock b/yarn.lock index 4a3c9f0be..832c5b13c 100644 --- a/yarn.lock +++ b/yarn.lock @@ -4886,13 +4886,13 @@ bn.js@^5.0.0, bn.js@^5.1.1: resolved "https://registry.yarnpkg.com/bn.js/-/bn.js-5.2.1.tgz#0bc527a6a0d18d0aa8d5b0538ce4a77dccfa7b70" integrity sha512-eXRvHzWyYPBuB4NBy0cmYQjGitUrtqwbvlzP3G6VFnNRbsZQIxQ10PbKKHt8gZ/HW/D/747aDl+QkDqg3KQLMQ== -body-parser@1.20.1: - version "1.20.1" - resolved "https://registry.yarnpkg.com/body-parser/-/body-parser-1.20.1.tgz#b1812a8912c195cd371a3ee5e66faa2338a5c668" - integrity sha512-jWi7abTbYwajOytWCQc37VulmWiRae5RyTpaCyDcS5/lMdtwSz5lOpDE67srw/HYe35f1z3fDQw+3txg7gNtWw== +body-parser@1.20.2: + version "1.20.2" + resolved "https://registry.yarnpkg.com/body-parser/-/body-parser-1.20.2.tgz#6feb0e21c4724d06de7ff38da36dad4f57a747fd" + integrity sha512-ml9pReCu3M61kGlqoTm2umSXTlRTuGTx0bfYj+uIUKKYycG5NtSbeetV3faSU6R7ajOPw0g/J1PvK4qNy7s5bA== dependencies: bytes "3.1.2" - content-type "~1.0.4" + content-type "~1.0.5" debug "2.6.9" depd "2.0.0" destroy "1.2.0" @@ -4900,7 +4900,7 @@ body-parser@1.20.1: iconv-lite "0.4.24" on-finished "2.4.1" qs "6.11.0" - raw-body "2.5.1" + raw-body "2.5.2" type-is "~1.6.18" unpipe "1.0.0" @@ -5892,6 +5892,11 @@ content-type@~1.0.4: resolved "https://registry.yarnpkg.com/content-type/-/content-type-1.0.4.tgz#e138cc75e040c727b1966fe5e5f8c9aee256fe3b" integrity sha512-hIP3EEPs8tB9AT1L+NUqtwOAps4mk2Zob89MWXMHjHWg9milF/j4osnnQLXBCBFBk/tvIG/tUc9mOUJiPBhPXA== +content-type@~1.0.5: + version "1.0.5" + resolved "https://registry.yarnpkg.com/content-type/-/content-type-1.0.5.tgz#8b773162656d1d1086784c8f23a54ce6d73d7918" + integrity sha512-nTjqfcBFEipKdXCv4YDQWCfmcLZKm81ldF0pAopTvyrFGVbcR6P/VAAd5G7N+0tTr8QqiU0tFadD6FK4NtJwOA== + conventional-changelog-angular@^5.0.11: version "5.0.13" resolved "https://registry.yarnpkg.com/conventional-changelog-angular/-/conventional-changelog-angular-5.0.13.tgz#896885d63b914a70d4934b59d2fe7bde1832b28c" @@ -5943,10 +5948,10 @@ cookie-signature@1.0.6: resolved "https://registry.yarnpkg.com/cookie-signature/-/cookie-signature-1.0.6.tgz#e303a882b342cc3ee8ca513a79999734dab3ae2c" integrity sha512-QADzlaHc8icV8I7vbaJXJwod9HWYp8uCqf1xa4OfNu1T7JVxQIrUgOWtHdNDtPiywmFbiS12VjotIXLrKM3orQ== -cookie@0.5.0: - version "0.5.0" - resolved "https://registry.yarnpkg.com/cookie/-/cookie-0.5.0.tgz#d1f5d71adec6558c58f389987c366aa47e994f8b" - integrity sha512-YZ3GUyn/o8gfKJlnlX7g7xq4gyO6OSuhGPKaaGssGB2qgDUS0gPgtTvoyZLTt9Ab6dC4hfc9dV5arkvc/OCmrw== +cookie@0.6.0: + version "0.6.0" + resolved "https://registry.yarnpkg.com/cookie/-/cookie-0.6.0.tgz#2798b04b071b0ecbff0dbb62a505a8efa4e19051" + integrity sha512-U71cyTamuh1CRNCfpGY6to28lxvNwPG4Guz/EVjgf3Jmzv0vlDp1atT9eS5dDjMYHucpHbWns6Lwf3BKz6svdw== copy-descriptor@^0.1.0: version "0.1.1" @@ -7960,16 +7965,16 @@ expect@^29.0.0: jest-util "^29.2.1" express@^4.17.3: - version "4.18.2" - resolved "https://registry.yarnpkg.com/express/-/express-4.18.2.tgz#3fabe08296e930c796c19e3c516979386ba9fd59" - integrity sha512-5/PsL6iGPdfQ/lKM1UuielYgv3BUoJfz1aUwU9vHZ+J7gyvwdQXFEBIEIaxeGf0GIcreATNyBExtalisDbuMqQ== + version "4.19.2" + resolved "https://registry.yarnpkg.com/express/-/express-4.19.2.tgz#e25437827a3aa7f2a827bc8171bbbb664a356465" + integrity sha512-5T6nhjsT+EOMzuck8JjBHARTHfMht0POzlA60WV2pMD3gyXw2LZnZ+ueGdNxG+0calOJcWKbpFcuzLZ91YWq9Q== dependencies: accepts "~1.3.8" array-flatten "1.1.1" - body-parser "1.20.1" + body-parser "1.20.2" content-disposition "0.5.4" content-type "~1.0.4" - cookie "0.5.0" + cookie "0.6.0" cookie-signature "1.0.6" debug "2.6.9" depd "2.0.0" @@ -13560,10 +13565,10 @@ range-parser@^1.2.1, range-parser@~1.2.1: resolved "https://registry.yarnpkg.com/range-parser/-/range-parser-1.2.1.tgz#3cf37023d199e1c24d1a55b84800c2f3e6468031" integrity sha512-Hrgsx+orqoygnmhFbKaHE6c296J+HTAQXoxEF6gNupROmmGJRoyzfG3ccAveqCBrwr/2yxQ5BVd/GTl5agOwSg== -raw-body@2.5.1: - version "2.5.1" - resolved "https://registry.yarnpkg.com/raw-body/-/raw-body-2.5.1.tgz#fe1b1628b181b700215e5fd42389f98b71392857" - integrity sha512-qqJBtEyVgS0ZmPGdCFPWJ3FreoqvG4MVQln/kCgF7Olq95IbOp0/BWyMwbdtn4VTvkM8Y7khCQ2Xgk/tcrCXig== +raw-body@2.5.2: + version "2.5.2" + resolved "https://registry.yarnpkg.com/raw-body/-/raw-body-2.5.2.tgz#99febd83b90e08975087e8f1f9419a149366b68a" + integrity sha512-8zGqypfENjCIqGhgXToC8aB2r7YrBX+AQAfIPs/Mlk+BtPTztOvTS01NRW/3Eh60J+a48lt8qsCzirQ6loCVfA== dependencies: bytes "3.1.2" http-errors "2.0.0" From 56fd10f745cca103843bd4b2c8a7263f3dcae6bf Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Mon, 10 Jun 2024 12:11:36 +0000 Subject: [PATCH 23/62] chore(deps): bump the security group across 1 directory with 10 updates (#541) Bumps the security group with 10 updates in the / directory: Updates `@babel/traverse` from 7.22.4 to 7.24.7 - [Release notes](https://github.com/babel/babel/releases) - [Changelog](https://github.com/babel/babel/blob/main/CHANGELOG.md) - [Commits](https://github.com/babel/babel/commits/v7.24.7/packages/babel-traverse) Updates `@sideway/formula` from 3.0.0 to 3.0.1 - [Commits](https://github.com/sideway/formula/compare/v3.0.0...v3.0.1) Updates `browserify-sign` from 4.2.1 to 4.2.3 - [Changelog](https://github.com/browserify/browserify-sign/blob/main/CHANGELOG.md) - [Commits](https://github.com/crypto-browserify/browserify-sign/compare/v4.2.1...v4.2.3) Updates `crypto-js` from 4.1.1 to 4.2.0 - [Commits](https://github.com/brix/crypto-js/compare/4.1.1...4.2.0) Updates `decode-uri-component` from 0.2.0 to 0.2.2 - [Release notes](https://github.com/SamVerschueren/decode-uri-component/releases) - [Commits](https://github.com/SamVerschueren/decode-uri-component/compare/v0.2.0...v0.2.2) Updates `ejs` from 3.1.8 to 3.1.10 - [Release notes](https://github.com/mde/ejs/releases) - [Commits](https://github.com/mde/ejs/compare/v3.1.8...v3.1.10) Updates `follow-redirects` from 1.15.3 to 1.15.6 - [Release notes](https://github.com/follow-redirects/follow-redirects/releases) - [Commits](https://github.com/follow-redirects/follow-redirects/compare/v1.15.3...v1.15.6) Updates `http-cache-semantics` from 4.1.0 to 4.1.1 - [Commits](https://github.com/kornelski/http-cache-semantics/compare/v4.1.0...v4.1.1) Updates `webpack` from 5.74.0 to 5.91.0 - [Release notes](https://github.com/webpack/webpack/releases) - [Commits](https://github.com/webpack/webpack/compare/v5.74.0...v5.91.0) Updates `word-wrap` from 1.2.3 to 1.2.5 - [Release notes](https://github.com/jonschlinkert/word-wrap/releases) - [Commits](https://github.com/jonschlinkert/word-wrap/compare/1.2.3...1.2.5) --- updated-dependencies: - dependency-name: "@babel/traverse" dependency-type: indirect dependency-group: security - dependency-name: "@sideway/formula" dependency-type: indirect dependency-group: security - dependency-name: browserify-sign dependency-type: indirect dependency-group: security - dependency-name: crypto-js dependency-type: indirect dependency-group: security - dependency-name: decode-uri-component dependency-type: indirect dependency-group: security - dependency-name: ejs dependency-type: indirect dependency-group: security - dependency-name: follow-redirects dependency-type: indirect dependency-group: security - dependency-name: http-cache-semantics dependency-type: indirect dependency-group: security - dependency-name: webpack dependency-type: indirect dependency-group: security - dependency-name: word-wrap dependency-type: indirect dependency-group: security ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- yarn.lock | 647 ++++++++++++++++++++++++++++++++++++++---------------- 1 file changed, 456 insertions(+), 191 deletions(-) diff --git a/yarn.lock b/yarn.lock index 832c5b13c..9fa16f584 100644 --- a/yarn.lock +++ b/yarn.lock @@ -38,6 +38,14 @@ dependencies: "@babel/highlight" "^7.18.6" +"@babel/code-frame@^7.24.7": + version "7.24.7" + resolved "https://registry.yarnpkg.com/@babel/code-frame/-/code-frame-7.24.7.tgz#882fd9e09e8ee324e496bd040401c6f046ef4465" + integrity sha512-BcYH1CVJBO9tvyIZ2jVeXgSIMvGZ2FDRvDdOIVQyuklNKSsx+eppDEBq/g47Ayw+RqNFE+URvOShmf+f/qwAlA== + dependencies: + "@babel/highlight" "^7.24.7" + picocolors "^1.0.0" + "@babel/compat-data@^7.17.7", "@babel/compat-data@^7.20.5", "@babel/compat-data@^7.21.5", "@babel/compat-data@^7.22.0": version "7.22.3" resolved "https://registry.yarnpkg.com/@babel/compat-data/-/compat-data-7.22.3.tgz#cd502a6a0b6e37d7ad72ce7e71a7160a3ae36f7e" @@ -73,7 +81,7 @@ eslint-visitor-keys "^2.1.0" semver "^6.3.0" -"@babel/generator@^7.22.0", "@babel/generator@^7.22.3", "@babel/generator@^7.4.0", "@babel/generator@^7.7.2": +"@babel/generator@^7.22.0", "@babel/generator@^7.4.0", "@babel/generator@^7.7.2": version "7.22.3" resolved "https://registry.yarnpkg.com/@babel/generator/-/generator-7.22.3.tgz#0ff675d2edb93d7596c5f6728b52615cfc0df01e" integrity sha512-C17MW4wlk//ES/CJDL51kPNwl+qiBQyN7b9SKyVp11BLGFeSPoVaHrv+MNt8jwQFhQWowW88z1eeBx3pFz9v8A== @@ -83,6 +91,16 @@ "@jridgewell/trace-mapping" "^0.3.17" jsesc "^2.5.1" +"@babel/generator@^7.24.7": + version "7.24.7" + resolved "https://registry.yarnpkg.com/@babel/generator/-/generator-7.24.7.tgz#1654d01de20ad66b4b4d99c135471bc654c55e6d" + integrity sha512-oipXieGC3i45Y1A41t4tAqpnEZWgB/lC6Ehh6+rOviR5XWpTtMmLN+fGjz9vOiNRt0p6RtO6DtD0pdU3vpqdSA== + dependencies: + "@babel/types" "^7.24.7" + "@jridgewell/gen-mapping" "^0.3.5" + "@jridgewell/trace-mapping" "^0.3.25" + jsesc "^2.5.1" + "@babel/helper-annotate-as-pure@^7.18.6": version "7.18.6" resolved "https://registry.yarnpkg.com/@babel/helper-annotate-as-pure/-/helper-annotate-as-pure-7.18.6.tgz#eaa49f6f80d5a33f9a5dd2276e6d6e451be0a6bb" @@ -149,6 +167,13 @@ resolved "https://registry.yarnpkg.com/@babel/helper-environment-visitor/-/helper-environment-visitor-7.22.1.tgz#ac3a56dbada59ed969d712cf527bd8271fe3eba8" integrity sha512-Z2tgopurB/kTbidvzeBrc2To3PUP/9i5MUe+fU6QJCQDyPwSH2oRapkLw3KGECDYSjhQZCNxEvNvZlLw8JjGwA== +"@babel/helper-environment-visitor@^7.24.7": + version "7.24.7" + resolved "https://registry.yarnpkg.com/@babel/helper-environment-visitor/-/helper-environment-visitor-7.24.7.tgz#4b31ba9551d1f90781ba83491dd59cf9b269f7d9" + integrity sha512-DoiN84+4Gnd0ncbBOM9AZENV4a5ZiL39HYMyZJGZ/AZEykHYdJw0wW3kdcsh9/Kn+BRXHLkkklZ51ecPKmI1CQ== + dependencies: + "@babel/types" "^7.24.7" + "@babel/helper-function-name@^7.18.9", "@babel/helper-function-name@^7.19.0", "@babel/helper-function-name@^7.21.0": version "7.21.0" resolved "https://registry.yarnpkg.com/@babel/helper-function-name/-/helper-function-name-7.21.0.tgz#d552829b10ea9f120969304023cd0645fa00b1b4" @@ -157,6 +182,14 @@ "@babel/template" "^7.20.7" "@babel/types" "^7.21.0" +"@babel/helper-function-name@^7.24.7": + version "7.24.7" + resolved "https://registry.yarnpkg.com/@babel/helper-function-name/-/helper-function-name-7.24.7.tgz#75f1e1725742f39ac6584ee0b16d94513da38dd2" + integrity sha512-FyoJTsj/PEUWu1/TYRiXTIHc8lbw+TDYkZuoE43opPS5TrI7MyONBE1oNvfguEXAD9yhQRrVBnXdXzSLQl9XnA== + dependencies: + "@babel/template" "^7.24.7" + "@babel/types" "^7.24.7" + "@babel/helper-hoist-variables@^7.18.6": version "7.18.6" resolved "https://registry.yarnpkg.com/@babel/helper-hoist-variables/-/helper-hoist-variables-7.18.6.tgz#d4d2c8fb4baeaa5c68b99cc8245c56554f926678" @@ -164,6 +197,13 @@ dependencies: "@babel/types" "^7.18.6" +"@babel/helper-hoist-variables@^7.24.7": + version "7.24.7" + resolved "https://registry.yarnpkg.com/@babel/helper-hoist-variables/-/helper-hoist-variables-7.24.7.tgz#b4ede1cde2fd89436397f30dc9376ee06b0f25ee" + integrity sha512-MJJwhkoGy5c4ehfoRyrJ/owKeMl19U54h27YYftT0o2teQ3FJ3nQUf/I3LlJsX4l3qlw7WRXUmiyajvHXoTubQ== + dependencies: + "@babel/types" "^7.24.7" + "@babel/helper-member-expression-to-functions@^7.22.0": version "7.22.3" resolved "https://registry.yarnpkg.com/@babel/helper-member-expression-to-functions/-/helper-member-expression-to-functions-7.22.3.tgz#4b77a12c1b4b8e9e28736ed47d8b91f00976911f" @@ -247,16 +287,33 @@ dependencies: "@babel/types" "^7.18.6" +"@babel/helper-split-export-declaration@^7.24.7": + version "7.24.7" + resolved "https://registry.yarnpkg.com/@babel/helper-split-export-declaration/-/helper-split-export-declaration-7.24.7.tgz#83949436890e07fa3d6873c61a96e3bbf692d856" + integrity sha512-oy5V7pD+UvfkEATUKvIjvIAH/xCzfsFVw7ygW2SI6NClZzquT+mwdTfgfdbUiceh6iQO0CHtCPsyze/MZ2YbAA== + dependencies: + "@babel/types" "^7.24.7" + "@babel/helper-string-parser@^7.21.5": version "7.21.5" resolved "https://registry.yarnpkg.com/@babel/helper-string-parser/-/helper-string-parser-7.21.5.tgz#2b3eea65443c6bdc31c22d037c65f6d323b6b2bd" integrity sha512-5pTUx3hAJaZIdW99sJ6ZUUgWq/Y+Hja7TowEnLNMm1VivRgZQL3vpBY3qUACVsvw+yQU6+YgfBVmcbLaZtrA1w== +"@babel/helper-string-parser@^7.24.7": + version "7.24.7" + resolved "https://registry.yarnpkg.com/@babel/helper-string-parser/-/helper-string-parser-7.24.7.tgz#4d2d0f14820ede3b9807ea5fc36dfc8cd7da07f2" + integrity sha512-7MbVt6xrwFQbunH2DNQsAP5sTGxfqQtErvBIvIMi6EQnbgUOuVYanvREcmFrOPhoXBrTtjhhP+lW+o5UfK+tDg== + "@babel/helper-validator-identifier@^7.14.9", "@babel/helper-validator-identifier@^7.18.6", "@babel/helper-validator-identifier@^7.19.1": version "7.19.1" resolved "https://registry.yarnpkg.com/@babel/helper-validator-identifier/-/helper-validator-identifier-7.19.1.tgz#7eea834cf32901ffdc1a7ee555e2f9c27e249ca2" integrity sha512-awrNfaMtnHUr653GgGEs++LlAvW6w+DcPrOliSMXWCKo597CwL5Acf/wWdNkf/tfEQE3mjkeD1YOVZOUV/od1w== +"@babel/helper-validator-identifier@^7.24.7": + version "7.24.7" + resolved "https://registry.yarnpkg.com/@babel/helper-validator-identifier/-/helper-validator-identifier-7.24.7.tgz#75b889cfaf9e35c2aaf42cf0d72c8e91719251db" + integrity sha512-rR+PBcQ1SMQDDyF6X0wxtG8QyLCgUB0eRAGguqRLfkCA87l7yAP7ehq8SNj96OOGTO8OBV70KhuFYcIkHXOg0w== + "@babel/helper-validator-option@^7.18.6", "@babel/helper-validator-option@^7.21.0": version "7.21.0" resolved "https://registry.yarnpkg.com/@babel/helper-validator-option/-/helper-validator-option-7.21.0.tgz#8224c7e13ace4bafdc4004da2cf064ef42673180" @@ -290,11 +347,26 @@ chalk "^2.0.0" js-tokens "^4.0.0" -"@babel/parser@^7.1.0", "@babel/parser@^7.1.6", "@babel/parser@^7.14.7", "@babel/parser@^7.21.9", "@babel/parser@^7.22.0", "@babel/parser@^7.22.4", "@babel/parser@^7.4.3", "@babel/parser@^7.7.0": +"@babel/highlight@^7.24.7": + version "7.24.7" + resolved "https://registry.yarnpkg.com/@babel/highlight/-/highlight-7.24.7.tgz#a05ab1df134b286558aae0ed41e6c5f731bf409d" + integrity sha512-EStJpq4OuY8xYfhGVXngigBJRWxftKX9ksiGDnmlY3o7B/V7KIAc9X4oiK87uPJSc/vs5L869bem5fhZa8caZw== + dependencies: + "@babel/helper-validator-identifier" "^7.24.7" + chalk "^2.4.2" + js-tokens "^4.0.0" + picocolors "^1.0.0" + +"@babel/parser@^7.1.0", "@babel/parser@^7.1.6", "@babel/parser@^7.14.7", "@babel/parser@^7.21.9", "@babel/parser@^7.22.0", "@babel/parser@^7.4.3", "@babel/parser@^7.7.0": version "7.22.4" resolved "https://registry.yarnpkg.com/@babel/parser/-/parser-7.22.4.tgz#a770e98fd785c231af9d93f6459d36770993fb32" integrity sha512-VLLsx06XkEYqBtE5YGPwfSGwfrjnyPP5oiGty3S8pQLFDFLaS8VwWSIxkTXpcvr5zeYLE6+MBNl2npl/YnfofA== +"@babel/parser@^7.24.7": + version "7.24.7" + resolved "https://registry.yarnpkg.com/@babel/parser/-/parser-7.24.7.tgz#9a5226f92f0c5c8ead550b750f5608e766c8ce85" + integrity sha512-9uUYRm6OqQrCqQdG1iCBwBPZgN8ciDBro2nIOFaiRz1/BCxaI7CNvQbDHvsArAC7Tw9Hda/B3U+6ui9u4HWXPw== + "@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression@^7.18.6": version "7.18.6" resolved "https://registry.yarnpkg.com/@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression/-/plugin-bugfix-safari-id-destructuring-collision-in-function-expression-7.18.6.tgz#da5b8f9a580acdfbe53494dba45ea389fb09a4d2" @@ -1099,20 +1171,29 @@ "@babel/parser" "^7.21.9" "@babel/types" "^7.21.5" -"@babel/traverse@^7.20.5", "@babel/traverse@^7.22.1", "@babel/traverse@^7.4.3", "@babel/traverse@^7.7.0", "@babel/traverse@^7.7.2": - version "7.22.4" - resolved "https://registry.yarnpkg.com/@babel/traverse/-/traverse-7.22.4.tgz#c3cf96c5c290bd13b55e29d025274057727664c0" - integrity sha512-Tn1pDsjIcI+JcLKq1AVlZEr4226gpuAQTsLMorsYg9tuS/kG7nuwwJ4AB8jfQuEgb/COBwR/DqJxmoiYFu5/rQ== +"@babel/template@^7.24.7": + version "7.24.7" + resolved "https://registry.yarnpkg.com/@babel/template/-/template-7.24.7.tgz#02efcee317d0609d2c07117cb70ef8fb17ab7315" + integrity sha512-jYqfPrU9JTF0PmPy1tLYHW4Mp4KlgxJD9l2nP9fD6yT/ICi554DmrWBAEYpIelzjHf1msDP3PxJIRt/nFNfBig== dependencies: - "@babel/code-frame" "^7.21.4" - "@babel/generator" "^7.22.3" - "@babel/helper-environment-visitor" "^7.22.1" - "@babel/helper-function-name" "^7.21.0" - "@babel/helper-hoist-variables" "^7.18.6" - "@babel/helper-split-export-declaration" "^7.18.6" - "@babel/parser" "^7.22.4" - "@babel/types" "^7.22.4" - debug "^4.1.0" + "@babel/code-frame" "^7.24.7" + "@babel/parser" "^7.24.7" + "@babel/types" "^7.24.7" + +"@babel/traverse@^7.20.5", "@babel/traverse@^7.22.1", "@babel/traverse@^7.4.3", "@babel/traverse@^7.7.0", "@babel/traverse@^7.7.2": + version "7.24.7" + resolved "https://registry.yarnpkg.com/@babel/traverse/-/traverse-7.24.7.tgz#de2b900163fa741721ba382163fe46a936c40cf5" + integrity sha512-yb65Ed5S/QAcewNPh0nZczy9JdYXkkAbIsEo+P7BE7yO3txAY30Y/oPa3QkQ5It3xVG2kpKMg9MsdxZaO31uKA== + dependencies: + "@babel/code-frame" "^7.24.7" + "@babel/generator" "^7.24.7" + "@babel/helper-environment-visitor" "^7.24.7" + "@babel/helper-function-name" "^7.24.7" + "@babel/helper-hoist-variables" "^7.24.7" + "@babel/helper-split-export-declaration" "^7.24.7" + "@babel/parser" "^7.24.7" + "@babel/types" "^7.24.7" + debug "^4.3.1" globals "^11.1.0" "@babel/types@7.15.0": @@ -1123,7 +1204,7 @@ "@babel/helper-validator-identifier" "^7.14.9" to-fast-properties "^2.0.0" -"@babel/types@^7.0.0", "@babel/types@^7.12.6", "@babel/types@^7.18.6", "@babel/types@^7.18.9", "@babel/types@^7.20.0", "@babel/types@^7.20.5", "@babel/types@^7.21.0", "@babel/types@^7.21.4", "@babel/types@^7.21.5", "@babel/types@^7.22.0", "@babel/types@^7.22.3", "@babel/types@^7.22.4", "@babel/types@^7.3.0", "@babel/types@^7.3.3", "@babel/types@^7.4.0", "@babel/types@^7.4.4", "@babel/types@^7.7.0": +"@babel/types@^7.0.0", "@babel/types@^7.12.6", "@babel/types@^7.18.6", "@babel/types@^7.18.9", "@babel/types@^7.20.0", "@babel/types@^7.20.5", "@babel/types@^7.21.0", "@babel/types@^7.21.4", "@babel/types@^7.21.5", "@babel/types@^7.22.0", "@babel/types@^7.22.3", "@babel/types@^7.3.0", "@babel/types@^7.3.3", "@babel/types@^7.4.0", "@babel/types@^7.4.4", "@babel/types@^7.7.0": version "7.22.4" resolved "https://registry.yarnpkg.com/@babel/types/-/types-7.22.4.tgz#56a2653ae7e7591365dabf20b76295410684c071" integrity sha512-Tx9x3UBHTTsMSW85WB2kphxYQVvrZ/t1FxD88IpSgIjiUJlCm9z+xWIDwyo1vffTwSqteqyznB8ZE9vYYk16zA== @@ -1132,6 +1213,15 @@ "@babel/helper-validator-identifier" "^7.19.1" to-fast-properties "^2.0.0" +"@babel/types@^7.24.7": + version "7.24.7" + resolved "https://registry.yarnpkg.com/@babel/types/-/types-7.24.7.tgz#6027fe12bc1aa724cd32ab113fb7f1988f1f66f2" + integrity sha512-XEFXSlxiG5td2EJRe8vOmRbaXVgfcBlszKujvVmWIK/UpywWljQCfzAv3RQCGujWQ1RD4YYWEAqDXfuJiy8f5Q== + dependencies: + "@babel/helper-string-parser" "^7.24.7" + "@babel/helper-validator-identifier" "^7.24.7" + to-fast-properties "^2.0.0" + "@bcoe/v8-coverage@^0.2.3": version "0.2.3" resolved "https://registry.yarnpkg.com/@bcoe/v8-coverage/-/v8-coverage-0.2.3.tgz#75a2e8b51cb758a7553d6804a5932d7aace75c39" @@ -2820,16 +2910,35 @@ "@jridgewell/sourcemap-codec" "^1.4.10" "@jridgewell/trace-mapping" "^0.3.9" +"@jridgewell/gen-mapping@^0.3.5": + version "0.3.5" + resolved "https://registry.yarnpkg.com/@jridgewell/gen-mapping/-/gen-mapping-0.3.5.tgz#dcce6aff74bdf6dad1a95802b69b04a2fcb1fb36" + integrity sha512-IzL8ZoEDIBRWEzlCcRhOaCupYyN5gdIK+Q6fbFdPDg6HqX6jpkItn7DFIpW9LQzXG6Df9sA7+OKnq0qlz/GaQg== + dependencies: + "@jridgewell/set-array" "^1.2.1" + "@jridgewell/sourcemap-codec" "^1.4.10" + "@jridgewell/trace-mapping" "^0.3.24" + "@jridgewell/resolve-uri@3.1.0": version "3.1.0" resolved "https://registry.yarnpkg.com/@jridgewell/resolve-uri/-/resolve-uri-3.1.0.tgz#2203b118c157721addfe69d47b70465463066d78" integrity sha512-F2msla3tad+Mfht5cJq7LSXcdudKTWCVYUgw6pLFOOHSTtZlj6SWNYAp+AhuqLmWdBO2X5hPrLcu8cVP8fy28w== +"@jridgewell/resolve-uri@^3.1.0": + version "3.1.2" + resolved "https://registry.yarnpkg.com/@jridgewell/resolve-uri/-/resolve-uri-3.1.2.tgz#7a0ee601f60f99a20c7c7c5ff0c80388c1189bd6" + integrity sha512-bRISgCIjP20/tbWSPWMEi54QVPRZExkuD9lJL+UIxUKtwVJA8wW1Trb1jMs1RFXo1CBTNZ/5hpC9QvmKWdopKw== + "@jridgewell/set-array@^1.0.1": version "1.1.2" resolved "https://registry.yarnpkg.com/@jridgewell/set-array/-/set-array-1.1.2.tgz#7c6cf998d6d20b914c0a55a91ae928ff25965e72" integrity sha512-xnkseuNADM0gt2bs+BvhO0p78Mk762YnZdsuzFV018NoG1Sj1SCQvpSqa7XUaTam5vAGasABV9qXASMKnFMwMw== +"@jridgewell/set-array@^1.2.1": + version "1.2.1" + resolved "https://registry.yarnpkg.com/@jridgewell/set-array/-/set-array-1.2.1.tgz#558fb6472ed16a4c850b889530e6b36438c49280" + integrity sha512-R8gLRTZeyp03ymzP/6Lil/28tGeGEzhx1q2k703KGWRAI1VdvPIXdG70VJc2pAMw3NA6JKL5hhFu1sJX0Mnn/A== + "@jridgewell/source-map@^0.3.2": version "0.3.2" resolved "https://registry.yarnpkg.com/@jridgewell/source-map/-/source-map-0.3.2.tgz#f45351aaed4527a298512ec72f81040c998580fb" @@ -2838,12 +2947,20 @@ "@jridgewell/gen-mapping" "^0.3.0" "@jridgewell/trace-mapping" "^0.3.9" +"@jridgewell/source-map@^0.3.3": + version "0.3.6" + resolved "https://registry.yarnpkg.com/@jridgewell/source-map/-/source-map-0.3.6.tgz#9d71ca886e32502eb9362c9a74a46787c36df81a" + integrity sha512-1ZJTZebgqllO79ue2bm3rIGud/bOe0pP5BjSRCRxxYkEZS8STV7zN84UBbiYu7jy+eCKSnVIUgoWWE/tt+shMQ== + dependencies: + "@jridgewell/gen-mapping" "^0.3.5" + "@jridgewell/trace-mapping" "^0.3.25" + "@jridgewell/sourcemap-codec@1.4.14": version "1.4.14" resolved "https://registry.yarnpkg.com/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.4.14.tgz#add4c98d341472a289190b424efbdb096991bb24" integrity sha512-XPSJHWmi394fuUuzDnGz1wiKqWfo1yXecHQMRf2l6hztTO+nPru658AyDngaBe7isIxEkRsPR3FZh+s7iVa4Uw== -"@jridgewell/sourcemap-codec@^1.4.10": +"@jridgewell/sourcemap-codec@^1.4.10", "@jridgewell/sourcemap-codec@^1.4.14": version "1.4.15" resolved "https://registry.yarnpkg.com/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.4.15.tgz#d7c6e6755c78567a951e04ab52ef0fd26de59f32" integrity sha512-eF2rxCRulEKXHTRiDrDy6erMYWqNw4LPdQ8UQA4huuxaQsVeRPFl2oM8oDGxMFhJUWZf9McpLtJasDDZb/Bpeg== @@ -2856,6 +2973,14 @@ "@jridgewell/resolve-uri" "3.1.0" "@jridgewell/sourcemap-codec" "1.4.14" +"@jridgewell/trace-mapping@^0.3.20", "@jridgewell/trace-mapping@^0.3.24", "@jridgewell/trace-mapping@^0.3.25": + version "0.3.25" + resolved "https://registry.yarnpkg.com/@jridgewell/trace-mapping/-/trace-mapping-0.3.25.tgz#15f190e98895f3fc23276ee14bc76b675c2e50f0" + integrity sha512-vNk6aEwybGtawWmy/PzwnGDOjCkLWSD2wqvjGGAgOAwCGWySYXfYoxt00IJkTF+8Lb57DwOb3Aa0o9CApepiYQ== + dependencies: + "@jridgewell/resolve-uri" "^3.1.0" + "@jridgewell/sourcemap-codec" "^1.4.14" + "@js-temporal/polyfill@^0.4.2": version "0.4.3" resolved "https://registry.yarnpkg.com/@js-temporal/polyfill/-/polyfill-0.4.3.tgz#e8f8cf86745eb5050679c46a5ebedb9a9cc1f09b" @@ -3083,9 +3208,9 @@ "@hapi/hoek" "^9.0.0" "@sideway/formula@^3.0.0": - version "3.0.0" - resolved "https://registry.yarnpkg.com/@sideway/formula/-/formula-3.0.0.tgz#fe158aee32e6bd5de85044be615bc08478a0a13c" - integrity sha512-vHe7wZ4NOXVfkoRb8T5otiENVlT7a3IAiw7H5M2+GO+9CDgcVUUsX1zalAztCmwyOr2RUTGJdgB+ZvSVqmdHmg== + version "3.0.1" + resolved "https://registry.yarnpkg.com/@sideway/formula/-/formula-3.0.1.tgz#80fcbcbaf7ce031e0ef2dd29b1bfc7c3f583611f" + integrity sha512-/poHZJJVjx3L+zVD6g9KgHfYnb443oi7wLu/XKojDviHy6HOEOA6z1Trk5aR1dGcmPenJEgb2sK2I80LeS3MIg== "@sideway/pinpoint@^2.0.0": version "2.0.0" @@ -3375,7 +3500,7 @@ "@types/estree" "*" "@types/json-schema" "*" -"@types/estree@*", "@types/estree@^0.0.51": +"@types/estree@*": version "0.0.51" resolved "https://registry.yarnpkg.com/@types/estree/-/estree-0.0.51.tgz#cfd70924a25a3fd32b218e5e420e6897e1ac4f40" integrity sha512-CuPgU6f3eT/XgKKPqKd/gLZV1Xmvf1a2R5POBOGQa6uv82xpls89HU5zKeVoyR8XzHd1RGNOlQlvUe3CFkjWNQ== @@ -3385,6 +3510,11 @@ resolved "https://registry.yarnpkg.com/@types/estree/-/estree-0.0.39.tgz#e177e699ee1b8c22d23174caaa7422644389509f" integrity sha512-EYNwp3bU+98cpU4lAWYYL7Zz+2gryWH1qbdDTidVd6hkiR6weksdbMadyXKXNPEkQFhXM+hVO9ZygomHXp+AIw== +"@types/estree@^1.0.5": + version "1.0.5" + resolved "https://registry.yarnpkg.com/@types/estree/-/estree-1.0.5.tgz#a6ce3e556e00fd9895dd872dd172ad0d4bd687f4" + integrity sha512-/kYRxGDLWzHOB7q+wtSUQlFrtcdUccpfy+X+9iMBpHK8QLLhx2wIPYuS5DYtR9Wa/YlZAbIovy7qVdB1Aq6Lyw== + "@types/express-serve-static-core@*", "@types/express-serve-static-core@^4.17.18": version "4.17.31" resolved "https://registry.yarnpkg.com/@types/express-serve-static-core/-/express-serve-static-core-4.17.31.tgz#a1139efeab4e7323834bb0226e62ac019f474b2f" @@ -3760,125 +3890,125 @@ "@typescript-eslint/types" "5.36.1" eslint-visitor-keys "^3.3.0" -"@webassemblyjs/ast@1.11.1": - version "1.11.1" - resolved "https://registry.yarnpkg.com/@webassemblyjs/ast/-/ast-1.11.1.tgz#2bfd767eae1a6996f432ff7e8d7fc75679c0b6a7" - integrity sha512-ukBh14qFLjxTQNTXocdyksN5QdM28S1CxHt2rdskFyL+xFV7VremuBLVbmCePj+URalXBENx/9Lm7lnhihtCSw== +"@webassemblyjs/ast@1.12.1", "@webassemblyjs/ast@^1.12.1": + version "1.12.1" + resolved "https://registry.yarnpkg.com/@webassemblyjs/ast/-/ast-1.12.1.tgz#bb16a0e8b1914f979f45864c23819cc3e3f0d4bb" + integrity sha512-EKfMUOPRRUTy5UII4qJDGPpqfwjOmZ5jeGFwid9mnoqIFK+e0vqoi1qH56JpmZSzEL53jKnNzScdmftJyG5xWg== dependencies: - "@webassemblyjs/helper-numbers" "1.11.1" - "@webassemblyjs/helper-wasm-bytecode" "1.11.1" + "@webassemblyjs/helper-numbers" "1.11.6" + "@webassemblyjs/helper-wasm-bytecode" "1.11.6" -"@webassemblyjs/floating-point-hex-parser@1.11.1": - version "1.11.1" - resolved "https://registry.yarnpkg.com/@webassemblyjs/floating-point-hex-parser/-/floating-point-hex-parser-1.11.1.tgz#f6c61a705f0fd7a6aecaa4e8198f23d9dc179e4f" - integrity sha512-iGRfyc5Bq+NnNuX8b5hwBrRjzf0ocrJPI6GWFodBFzmFnyvrQ83SHKhmilCU/8Jv67i4GJZBMhEzltxzcNagtQ== +"@webassemblyjs/floating-point-hex-parser@1.11.6": + version "1.11.6" + resolved "https://registry.yarnpkg.com/@webassemblyjs/floating-point-hex-parser/-/floating-point-hex-parser-1.11.6.tgz#dacbcb95aff135c8260f77fa3b4c5fea600a6431" + integrity sha512-ejAj9hfRJ2XMsNHk/v6Fu2dGS+i4UaXBXGemOfQ/JfQ6mdQg/WXtwleQRLLS4OvfDhv8rYnVwH27YJLMyYsxhw== -"@webassemblyjs/helper-api-error@1.11.1": - version "1.11.1" - resolved "https://registry.yarnpkg.com/@webassemblyjs/helper-api-error/-/helper-api-error-1.11.1.tgz#1a63192d8788e5c012800ba6a7a46c705288fd16" - integrity sha512-RlhS8CBCXfRUR/cwo2ho9bkheSXG0+NwooXcc3PAILALf2QLdFyj7KGsKRbVc95hZnhnERon4kW/D3SZpp6Tcg== +"@webassemblyjs/helper-api-error@1.11.6": + version "1.11.6" + resolved "https://registry.yarnpkg.com/@webassemblyjs/helper-api-error/-/helper-api-error-1.11.6.tgz#6132f68c4acd59dcd141c44b18cbebbd9f2fa768" + integrity sha512-o0YkoP4pVu4rN8aTJgAyj9hC2Sv5UlkzCHhxqWj8butaLvnpdc2jOwh4ewE6CX0txSfLn/UYaV/pheS2Txg//Q== -"@webassemblyjs/helper-buffer@1.11.1": - version "1.11.1" - resolved "https://registry.yarnpkg.com/@webassemblyjs/helper-buffer/-/helper-buffer-1.11.1.tgz#832a900eb444884cde9a7cad467f81500f5e5ab5" - integrity sha512-gwikF65aDNeeXa8JxXa2BAk+REjSyhrNC9ZwdT0f8jc4dQQeDQ7G4m0f2QCLPJiMTTO6wfDmRmj/pW0PsUvIcA== +"@webassemblyjs/helper-buffer@1.12.1": + version "1.12.1" + resolved "https://registry.yarnpkg.com/@webassemblyjs/helper-buffer/-/helper-buffer-1.12.1.tgz#6df20d272ea5439bf20ab3492b7fb70e9bfcb3f6" + integrity sha512-nzJwQw99DNDKr9BVCOZcLuJJUlqkJh+kVzVl6Fmq/tI5ZtEyWT1KZMyOXltXLZJmDtvLCDgwsyrkohEtopTXCw== -"@webassemblyjs/helper-numbers@1.11.1": - version "1.11.1" - resolved "https://registry.yarnpkg.com/@webassemblyjs/helper-numbers/-/helper-numbers-1.11.1.tgz#64d81da219fbbba1e3bd1bfc74f6e8c4e10a62ae" - integrity sha512-vDkbxiB8zfnPdNK9Rajcey5C0w+QJugEglN0of+kmO8l7lDb77AnlKYQF7aarZuCrv+l0UvqL+68gSDr3k9LPQ== +"@webassemblyjs/helper-numbers@1.11.6": + version "1.11.6" + resolved "https://registry.yarnpkg.com/@webassemblyjs/helper-numbers/-/helper-numbers-1.11.6.tgz#cbce5e7e0c1bd32cf4905ae444ef64cea919f1b5" + integrity sha512-vUIhZ8LZoIWHBohiEObxVm6hwP034jwmc9kuq5GdHZH0wiLVLIPcMCdpJzG4C11cHoQ25TFIQj9kaVADVX7N3g== dependencies: - "@webassemblyjs/floating-point-hex-parser" "1.11.1" - "@webassemblyjs/helper-api-error" "1.11.1" + "@webassemblyjs/floating-point-hex-parser" "1.11.6" + "@webassemblyjs/helper-api-error" "1.11.6" "@xtuc/long" "4.2.2" -"@webassemblyjs/helper-wasm-bytecode@1.11.1": - version "1.11.1" - resolved "https://registry.yarnpkg.com/@webassemblyjs/helper-wasm-bytecode/-/helper-wasm-bytecode-1.11.1.tgz#f328241e41e7b199d0b20c18e88429c4433295e1" - integrity sha512-PvpoOGiJwXeTrSf/qfudJhwlvDQxFgelbMqtq52WWiXC6Xgg1IREdngmPN3bs4RoO83PnL/nFrxucXj1+BX62Q== +"@webassemblyjs/helper-wasm-bytecode@1.11.6": + version "1.11.6" + resolved "https://registry.yarnpkg.com/@webassemblyjs/helper-wasm-bytecode/-/helper-wasm-bytecode-1.11.6.tgz#bb2ebdb3b83aa26d9baad4c46d4315283acd51e9" + integrity sha512-sFFHKwcmBprO9e7Icf0+gddyWYDViL8bpPjJJl0WHxCdETktXdmtWLGVzoHbqUcY4Be1LkNfwTmXOJUFZYSJdA== -"@webassemblyjs/helper-wasm-section@1.11.1": - version "1.11.1" - resolved "https://registry.yarnpkg.com/@webassemblyjs/helper-wasm-section/-/helper-wasm-section-1.11.1.tgz#21ee065a7b635f319e738f0dd73bfbda281c097a" - integrity sha512-10P9No29rYX1j7F3EVPX3JvGPQPae+AomuSTPiF9eBQeChHI6iqjMIwR9JmOJXwpnn/oVGDk7I5IlskuMwU/pg== +"@webassemblyjs/helper-wasm-section@1.12.1": + version "1.12.1" + resolved "https://registry.yarnpkg.com/@webassemblyjs/helper-wasm-section/-/helper-wasm-section-1.12.1.tgz#3da623233ae1a60409b509a52ade9bc22a37f7bf" + integrity sha512-Jif4vfB6FJlUlSbgEMHUyk1j234GTNG9dBJ4XJdOySoj518Xj0oGsNi59cUQF4RRMS9ouBUxDDdyBVfPTypa5g== dependencies: - "@webassemblyjs/ast" "1.11.1" - "@webassemblyjs/helper-buffer" "1.11.1" - "@webassemblyjs/helper-wasm-bytecode" "1.11.1" - "@webassemblyjs/wasm-gen" "1.11.1" + "@webassemblyjs/ast" "1.12.1" + "@webassemblyjs/helper-buffer" "1.12.1" + "@webassemblyjs/helper-wasm-bytecode" "1.11.6" + "@webassemblyjs/wasm-gen" "1.12.1" -"@webassemblyjs/ieee754@1.11.1": - version "1.11.1" - resolved "https://registry.yarnpkg.com/@webassemblyjs/ieee754/-/ieee754-1.11.1.tgz#963929e9bbd05709e7e12243a099180812992614" - integrity sha512-hJ87QIPtAMKbFq6CGTkZYJivEwZDbQUgYd3qKSadTNOhVY7p+gfP6Sr0lLRVTaG1JjFj+r3YchoqRYxNH3M0GQ== +"@webassemblyjs/ieee754@1.11.6": + version "1.11.6" + resolved "https://registry.yarnpkg.com/@webassemblyjs/ieee754/-/ieee754-1.11.6.tgz#bb665c91d0b14fffceb0e38298c329af043c6e3a" + integrity sha512-LM4p2csPNvbij6U1f19v6WR56QZ8JcHg3QIJTlSwzFcmx6WSORicYj6I63f9yU1kEUtrpG+kjkiIAkevHpDXrg== dependencies: "@xtuc/ieee754" "^1.2.0" -"@webassemblyjs/leb128@1.11.1": - version "1.11.1" - resolved "https://registry.yarnpkg.com/@webassemblyjs/leb128/-/leb128-1.11.1.tgz#ce814b45574e93d76bae1fb2644ab9cdd9527aa5" - integrity sha512-BJ2P0hNZ0u+Th1YZXJpzW6miwqQUGcIHT1G/sf72gLVD9DZ5AdYTqPNbHZh6K1M5VmKvFXwGSWZADz+qBWxeRw== +"@webassemblyjs/leb128@1.11.6": + version "1.11.6" + resolved "https://registry.yarnpkg.com/@webassemblyjs/leb128/-/leb128-1.11.6.tgz#70e60e5e82f9ac81118bc25381a0b283893240d7" + integrity sha512-m7a0FhE67DQXgouf1tbN5XQcdWoNgaAuoULHIfGFIEVKA6tu/edls6XnIlkmS6FrXAquJRPni3ZZKjw6FSPjPQ== dependencies: "@xtuc/long" "4.2.2" -"@webassemblyjs/utf8@1.11.1": - version "1.11.1" - resolved "https://registry.yarnpkg.com/@webassemblyjs/utf8/-/utf8-1.11.1.tgz#d1f8b764369e7c6e6bae350e854dec9a59f0a3ff" - integrity sha512-9kqcxAEdMhiwQkHpkNiorZzqpGrodQQ2IGrHHxCy+Ozng0ofyMA0lTqiLkVs1uzTRejX+/O0EOT7KxqVPuXosQ== - -"@webassemblyjs/wasm-edit@1.11.1": - version "1.11.1" - resolved "https://registry.yarnpkg.com/@webassemblyjs/wasm-edit/-/wasm-edit-1.11.1.tgz#ad206ebf4bf95a058ce9880a8c092c5dec8193d6" - integrity sha512-g+RsupUC1aTHfR8CDgnsVRVZFJqdkFHpsHMfJuWQzWU3tvnLC07UqHICfP+4XyL2tnr1amvl1Sdp06TnYCmVkA== - dependencies: - "@webassemblyjs/ast" "1.11.1" - "@webassemblyjs/helper-buffer" "1.11.1" - "@webassemblyjs/helper-wasm-bytecode" "1.11.1" - "@webassemblyjs/helper-wasm-section" "1.11.1" - "@webassemblyjs/wasm-gen" "1.11.1" - "@webassemblyjs/wasm-opt" "1.11.1" - "@webassemblyjs/wasm-parser" "1.11.1" - "@webassemblyjs/wast-printer" "1.11.1" - -"@webassemblyjs/wasm-gen@1.11.1": - version "1.11.1" - resolved "https://registry.yarnpkg.com/@webassemblyjs/wasm-gen/-/wasm-gen-1.11.1.tgz#86c5ea304849759b7d88c47a32f4f039ae3c8f76" - integrity sha512-F7QqKXwwNlMmsulj6+O7r4mmtAlCWfO/0HdgOxSklZfQcDu0TpLiD1mRt/zF25Bk59FIjEuGAIyn5ei4yMfLhA== - dependencies: - "@webassemblyjs/ast" "1.11.1" - "@webassemblyjs/helper-wasm-bytecode" "1.11.1" - "@webassemblyjs/ieee754" "1.11.1" - "@webassemblyjs/leb128" "1.11.1" - "@webassemblyjs/utf8" "1.11.1" - -"@webassemblyjs/wasm-opt@1.11.1": - version "1.11.1" - resolved "https://registry.yarnpkg.com/@webassemblyjs/wasm-opt/-/wasm-opt-1.11.1.tgz#657b4c2202f4cf3b345f8a4c6461c8c2418985f2" - integrity sha512-VqnkNqnZlU5EB64pp1l7hdm3hmQw7Vgqa0KF/KCNO9sIpI6Fk6brDEiX+iCOYrvMuBWDws0NkTOxYEb85XQHHw== - dependencies: - "@webassemblyjs/ast" "1.11.1" - "@webassemblyjs/helper-buffer" "1.11.1" - "@webassemblyjs/wasm-gen" "1.11.1" - "@webassemblyjs/wasm-parser" "1.11.1" - -"@webassemblyjs/wasm-parser@1.11.1": - version "1.11.1" - resolved "https://registry.yarnpkg.com/@webassemblyjs/wasm-parser/-/wasm-parser-1.11.1.tgz#86ca734534f417e9bd3c67c7a1c75d8be41fb199" - integrity sha512-rrBujw+dJu32gYB7/Lup6UhdkPx9S9SnobZzRVL7VcBH9Bt9bCBLEuX/YXOOtBsOZ4NQrRykKhffRWHvigQvOA== - dependencies: - "@webassemblyjs/ast" "1.11.1" - "@webassemblyjs/helper-api-error" "1.11.1" - "@webassemblyjs/helper-wasm-bytecode" "1.11.1" - "@webassemblyjs/ieee754" "1.11.1" - "@webassemblyjs/leb128" "1.11.1" - "@webassemblyjs/utf8" "1.11.1" - -"@webassemblyjs/wast-printer@1.11.1": - version "1.11.1" - resolved "https://registry.yarnpkg.com/@webassemblyjs/wast-printer/-/wast-printer-1.11.1.tgz#d0c73beda8eec5426f10ae8ef55cee5e7084c2f0" - integrity sha512-IQboUWM4eKzWW+N/jij2sRatKMh99QEelo3Eb2q0qXkvPRISAj8Qxtmw5itwqK+TTkBuUIE45AxYPToqPtL5gg== - dependencies: - "@webassemblyjs/ast" "1.11.1" +"@webassemblyjs/utf8@1.11.6": + version "1.11.6" + resolved "https://registry.yarnpkg.com/@webassemblyjs/utf8/-/utf8-1.11.6.tgz#90f8bc34c561595fe156603be7253cdbcd0fab5a" + integrity sha512-vtXf2wTQ3+up9Zsg8sa2yWiQpzSsMyXj0qViVP6xKGCUT8p8YJ6HqI7l5eCnWx1T/FYdsv07HQs2wTFbbof/RA== + +"@webassemblyjs/wasm-edit@^1.12.1": + version "1.12.1" + resolved "https://registry.yarnpkg.com/@webassemblyjs/wasm-edit/-/wasm-edit-1.12.1.tgz#9f9f3ff52a14c980939be0ef9d5df9ebc678ae3b" + integrity sha512-1DuwbVvADvS5mGnXbE+c9NfA8QRcZ6iKquqjjmR10k6o+zzsRVesil54DKexiowcFCPdr/Q0qaMgB01+SQ1u6g== + dependencies: + "@webassemblyjs/ast" "1.12.1" + "@webassemblyjs/helper-buffer" "1.12.1" + "@webassemblyjs/helper-wasm-bytecode" "1.11.6" + "@webassemblyjs/helper-wasm-section" "1.12.1" + "@webassemblyjs/wasm-gen" "1.12.1" + "@webassemblyjs/wasm-opt" "1.12.1" + "@webassemblyjs/wasm-parser" "1.12.1" + "@webassemblyjs/wast-printer" "1.12.1" + +"@webassemblyjs/wasm-gen@1.12.1": + version "1.12.1" + resolved "https://registry.yarnpkg.com/@webassemblyjs/wasm-gen/-/wasm-gen-1.12.1.tgz#a6520601da1b5700448273666a71ad0a45d78547" + integrity sha512-TDq4Ojh9fcohAw6OIMXqiIcTq5KUXTGRkVxbSo1hQnSy6lAM5GSdfwWeSxpAo0YzgsgF182E/U0mDNhuA0tW7w== + dependencies: + "@webassemblyjs/ast" "1.12.1" + "@webassemblyjs/helper-wasm-bytecode" "1.11.6" + "@webassemblyjs/ieee754" "1.11.6" + "@webassemblyjs/leb128" "1.11.6" + "@webassemblyjs/utf8" "1.11.6" + +"@webassemblyjs/wasm-opt@1.12.1": + version "1.12.1" + resolved "https://registry.yarnpkg.com/@webassemblyjs/wasm-opt/-/wasm-opt-1.12.1.tgz#9e6e81475dfcfb62dab574ac2dda38226c232bc5" + integrity sha512-Jg99j/2gG2iaz3hijw857AVYekZe2SAskcqlWIZXjji5WStnOpVoat3gQfT/Q5tb2djnCjBtMocY/Su1GfxPBg== + dependencies: + "@webassemblyjs/ast" "1.12.1" + "@webassemblyjs/helper-buffer" "1.12.1" + "@webassemblyjs/wasm-gen" "1.12.1" + "@webassemblyjs/wasm-parser" "1.12.1" + +"@webassemblyjs/wasm-parser@1.12.1", "@webassemblyjs/wasm-parser@^1.12.1": + version "1.12.1" + resolved "https://registry.yarnpkg.com/@webassemblyjs/wasm-parser/-/wasm-parser-1.12.1.tgz#c47acb90e6f083391e3fa61d113650eea1e95937" + integrity sha512-xikIi7c2FHXysxXe3COrVUPSheuBtpcfhbpFj4gmu7KRLYOzANztwUU0IbsqvMqzuNK2+glRGWCEqZo1WCLyAQ== + dependencies: + "@webassemblyjs/ast" "1.12.1" + "@webassemblyjs/helper-api-error" "1.11.6" + "@webassemblyjs/helper-wasm-bytecode" "1.11.6" + "@webassemblyjs/ieee754" "1.11.6" + "@webassemblyjs/leb128" "1.11.6" + "@webassemblyjs/utf8" "1.11.6" + +"@webassemblyjs/wast-printer@1.12.1": + version "1.12.1" + resolved "https://registry.yarnpkg.com/@webassemblyjs/wast-printer/-/wast-printer-1.12.1.tgz#bcecf661d7d1abdaf989d8341a4833e33e2b31ac" + integrity sha512-+X4WAlOisVWQMikjbcvY2e0rwPsKQ9F688lksZhBcPycBBuii3O7m8FACbDMWDojpAqvjIncrG8J0XHKyQfVeA== + dependencies: + "@webassemblyjs/ast" "1.12.1" "@xtuc/long" "4.2.2" "@xtuc/ieee754@^1.2.0": @@ -3955,10 +4085,10 @@ acorn-globals@^6.0.0: acorn "^7.1.1" acorn-walk "^7.1.1" -acorn-import-assertions@^1.7.6: - version "1.8.0" - resolved "https://registry.yarnpkg.com/acorn-import-assertions/-/acorn-import-assertions-1.8.0.tgz#ba2b5939ce62c238db6d93d81c9b111b29b855e9" - integrity sha512-m7VZ3jwz4eK6A4Vtt8Ew1/mNbP24u0FhdyfA7fSvnJR6LMdfOYnmuIrrJAgrYfYJ10F/otaHTtrtrtmHdMNzEw== +acorn-import-assertions@^1.9.0: + version "1.9.0" + resolved "https://registry.yarnpkg.com/acorn-import-assertions/-/acorn-import-assertions-1.9.0.tgz#507276249d684797c84e0734ef84860334cfb1ac" + integrity sha512-cmMwop9x+8KFhxvKrKfPYmN6/pKTYYHBqLa0DfvVZcKMJWNyWLnaqND7dx/qn66R7ewM1UX5XMaDVP5wlVTaVA== acorn-import-meta@^1.0.0: version "1.1.0" @@ -4053,6 +4183,11 @@ acorn@^8.2.4, acorn@^8.5.0, acorn@^8.7.1, acorn@^8.8.0: resolved "https://registry.yarnpkg.com/acorn/-/acorn-8.8.0.tgz#88c0187620435c7f6015803f5539dae05a9dbea8" integrity sha512-QOxyigPVrpZ2GXT+PFyZTl6TtOFc5egxHIP9IlQ+RbupQuX4RkT/Bee4/kQuC02Xkzg84JcT7oLYtDIQxp+v7w== +acorn@^8.8.2: + version "8.11.3" + resolved "https://registry.yarnpkg.com/acorn/-/acorn-8.11.3.tgz#71e0b14e13a4ec160724b38fb7b0f233b1b81d7a" + integrity sha512-Y9rRfJG5jcKOE0CLisYbojUjIrIEE7AGMzA/Sm4BslANhbS+cDMpgBdcPT91oJ7OuJ9hYJBx59RjbhxVnrF8Xg== + address@^1.0.1, address@^1.1.2: version "1.2.0" resolved "https://registry.yarnpkg.com/address/-/address-1.2.0.tgz#d352a62c92fee90f89a693eccd2a8b2139ab02d9" @@ -4440,6 +4575,15 @@ asap@~2.0.6: resolved "https://registry.yarnpkg.com/asap/-/asap-2.0.6.tgz#e50347611d7e690943208bbdafebcbc2fb866d46" integrity sha512-BSHWgDSAiKs50o2Re8ppvp3seVHXSRM44cdSsT9FfNEUUZLOGWVCsiWaRPWM1Znn+mqZ1OfVZ3z3DWEzSp7hRA== +asn1.js@^4.10.1: + version "4.10.1" + resolved "https://registry.yarnpkg.com/asn1.js/-/asn1.js-4.10.1.tgz#b9c2bf5805f1e64aadeed6df3a2bfafb5a73f5a0" + integrity sha512-p32cOF5q0Zqs9uBiONKYLm6BClCoBCM5O9JfeUSlnQLBTxYdTK+pW+nXflm8UkKd2UYlEbYz5qEi0JuZR9ckSw== + dependencies: + bn.js "^4.0.0" + inherits "^2.0.1" + minimalistic-assert "^1.0.0" + asn1.js@^5.2.0: version "5.4.1" resolved "https://registry.yarnpkg.com/asn1.js/-/asn1.js-5.4.1.tgz#11a980b84ebb91781ce35b0fdc2ee294e3783f07" @@ -4881,7 +5025,7 @@ bn.js@^4.0.0, bn.js@^4.1.0, bn.js@^4.11.9: resolved "https://registry.yarnpkg.com/bn.js/-/bn.js-4.12.0.tgz#775b3f278efbb9718eec7361f483fb36fbbfea88" integrity sha512-c98Bf3tPniI+scsdk237ku1Dc3ujXQTSgyiPUDEOe7tRkhrqridvh8klBv0HCEso1OLOYcHuCv/cS6DNxKH+ZA== -bn.js@^5.0.0, bn.js@^5.1.1: +bn.js@^5.0.0, bn.js@^5.2.1: version "5.2.1" resolved "https://registry.yarnpkg.com/bn.js/-/bn.js-5.2.1.tgz#0bc527a6a0d18d0aa8d5b0538ce4a77dccfa7b70" integrity sha512-eXRvHzWyYPBuB4NBy0cmYQjGitUrtqwbvlzP3G6VFnNRbsZQIxQ10PbKKHt8gZ/HW/D/747aDl+QkDqg3KQLMQ== @@ -5024,7 +5168,7 @@ browser-stdout@1.3.1: resolved "https://registry.yarnpkg.com/browser-stdout/-/browser-stdout-1.3.1.tgz#baa559ee14ced73452229bad7326467c61fabd60" integrity sha512-qhAVI1+Av2X7qelOfAIYwXONood6XlZE/fXaBSmW/T5SzLAmCgzi+eiWE7fUvbHaeNBQH13UftjpXxsfLkMpgw== -browserify-aes@^1.0.0, browserify-aes@^1.0.4: +browserify-aes@^1.0.0, browserify-aes@^1.0.4, browserify-aes@^1.2.0: version "1.2.0" resolved "https://registry.yarnpkg.com/browserify-aes/-/browserify-aes-1.2.0.tgz#326734642f403dabc3003209853bb70ad428ef48" integrity sha512-+7CHXqGuspUn/Sl5aO7Ea0xWGAtETPXNSAjHo48JfLdPWcMng33Xe4znFvQweqc/uzk5zSOI3H52CYnjCfb5hA== @@ -5055,7 +5199,7 @@ browserify-des@^1.0.0: inherits "^2.0.1" safe-buffer "^5.1.2" -browserify-rsa@^4.0.0, browserify-rsa@^4.0.1: +browserify-rsa@^4.0.0, browserify-rsa@^4.1.0: version "4.1.0" resolved "https://registry.yarnpkg.com/browserify-rsa/-/browserify-rsa-4.1.0.tgz#b2fd06b5b75ae297f7ce2dc651f918f5be158c8d" integrity sha512-AdEER0Hkspgno2aR97SAf6vi0y0k8NuOpGnVH3O99rcA5Q6sh8QxcngtHuJ6uXwnfAXNM4Gn1Gb7/MV1+Ymbog== @@ -5064,19 +5208,20 @@ browserify-rsa@^4.0.0, browserify-rsa@^4.0.1: randombytes "^2.0.1" browserify-sign@^4.0.0: - version "4.2.1" - resolved "https://registry.yarnpkg.com/browserify-sign/-/browserify-sign-4.2.1.tgz#eaf4add46dd54be3bb3b36c0cf15abbeba7956c3" - integrity sha512-/vrA5fguVAKKAVTNJjgSm1tRQDHUU6DbwO9IROu/0WAzC8PKhucDSh18J0RMvVeHAn5puMd+QHC2erPRNf8lmg== + version "4.2.3" + resolved "https://registry.yarnpkg.com/browserify-sign/-/browserify-sign-4.2.3.tgz#7afe4c01ec7ee59a89a558a4b75bd85ae62d4208" + integrity sha512-JWCZW6SKhfhjJxO8Tyiiy+XYB7cqd2S5/+WeYHsKdNKFlCBhKbblba1A/HN/90YwtxKc8tCErjffZl++UNmGiw== dependencies: - bn.js "^5.1.1" - browserify-rsa "^4.0.1" + bn.js "^5.2.1" + browserify-rsa "^4.1.0" create-hash "^1.2.0" create-hmac "^1.1.7" - elliptic "^6.5.3" + elliptic "^6.5.5" + hash-base "~3.0" inherits "^2.0.4" - parse-asn1 "^5.1.5" - readable-stream "^3.6.0" - safe-buffer "^5.2.0" + parse-asn1 "^5.1.7" + readable-stream "^2.3.8" + safe-buffer "^5.2.1" browserify-zlib@~0.2.0: version "0.2.0" @@ -5193,7 +5338,7 @@ browserify@^17.0.0: vm-browserify "^1.0.0" xtend "^4.0.0" -browserslist@^4.0.0, browserslist@^4.14.5, browserslist@^4.16.6, browserslist@^4.18.1, browserslist@^4.20.3, browserslist@^4.21.3, browserslist@^4.21.4, browserslist@^4.21.5: +browserslist@^4.0.0, browserslist@^4.16.6, browserslist@^4.18.1, browserslist@^4.20.3, browserslist@^4.21.3, browserslist@^4.21.4, browserslist@^4.21.5: version "4.21.5" resolved "https://registry.yarnpkg.com/browserslist/-/browserslist-4.21.5.tgz#75c5dae60063ee641f977e00edd3cfb2fb7af6a7" integrity sha512-tUkiguQGW7S3IhB7N+c2MV/HZPSCPAAiYBZXLsBhFB/PCy6ZKKsZrmBayHV9fdGV/ARIfJ14NkxKzRDjvp7L6w== @@ -5203,6 +5348,16 @@ browserslist@^4.0.0, browserslist@^4.14.5, browserslist@^4.16.6, browserslist@^4 node-releases "^2.0.8" update-browserslist-db "^1.0.10" +browserslist@^4.21.10: + version "4.23.1" + resolved "https://registry.yarnpkg.com/browserslist/-/browserslist-4.23.1.tgz#ce4af0534b3d37db5c1a4ca98b9080f985041e96" + integrity sha512-TUfofFo/KsK/bWZ9TWQ5O26tsWW4Uhmt8IYklbnUa70udB6P2wA7w7o4PY4muaEPBQaAX+CEnmmIA41NVHtPVw== + dependencies: + caniuse-lite "^1.0.30001629" + electron-to-chromium "^1.4.796" + node-releases "^2.0.14" + update-browserslist-db "^1.0.16" + bser@2.1.1: version "2.1.1" resolved "https://registry.yarnpkg.com/bser/-/bser-2.1.1.tgz#e6787da20ece9d07998533cfd9de6f5c38f4bc05" @@ -5385,6 +5540,11 @@ caniuse-lite@^1.0.0, caniuse-lite@^1.0.30001407, caniuse-lite@^1.0.30001449: resolved "https://registry.yarnpkg.com/caniuse-lite/-/caniuse-lite-1.0.30001489.tgz#ca82ee2d4e4dbf2bd2589c9360d3fcc2c7ba3bd8" integrity sha512-x1mgZEXK8jHIfAxm+xgdpHpk50IN3z3q3zP261/WS+uvePxW8izXuCu6AHz0lkuYTlATDehiZ/tNyYBdSQsOUQ== +caniuse-lite@^1.0.30001629: + version "1.0.30001632" + resolved "https://registry.yarnpkg.com/caniuse-lite/-/caniuse-lite-1.0.30001632.tgz#964207b7cba5851701afb4c8afaf1448db3884b6" + integrity sha512-udx3o7yHJfUxMLkGohMlVHCvFvWmirKh9JAH/d7WOLPetlH+LTL5cocMZ0t7oZx/mdlOWXti97xLZWc8uURRHg== + capture-exit@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/capture-exit/-/capture-exit-2.0.0.tgz#fb953bfaebeb781f62898239dabb426d08a509a4" @@ -6119,9 +6279,9 @@ crypto-browserify@^3.0.0: randomfill "^1.0.3" crypto-js@^4.1.1: - version "4.1.1" - resolved "https://registry.yarnpkg.com/crypto-js/-/crypto-js-4.1.1.tgz#9e485bcf03521041bd85844786b83fb7619736cf" - integrity sha512-o2JlM7ydqd3Qk9CA0L4NL6mTzU2sdx96a+oOfPu8Mkl/PK51vSyoi8/rQ8NknZtk44vq15lmhAj9CIAGwgeWKw== + version "4.2.0" + resolved "https://registry.yarnpkg.com/crypto-js/-/crypto-js-4.2.0.tgz#4d931639ecdfd12ff80e8186dba6af2c2e856631" + integrity sha512-KALDyEYgpY+Rlob/iriUtjV6d5Eq+Y191A5g4UqLAi8CyGP9N1+FdVbkc1SxKc2r4YAYqG8JzO2KGL+AizD70Q== crypto-random-string@^1.0.0: version "1.0.0" @@ -6528,6 +6688,13 @@ debug@^3.1.0, debug@^3.2.7: dependencies: ms "^2.1.1" +debug@^4.3.1: + version "4.3.5" + resolved "https://registry.yarnpkg.com/debug/-/debug-4.3.5.tgz#e83444eceb9fedd4a1da56d671ae2446a01a6e1e" + integrity sha512-pt0bNEmneDIvdL1Xsd9oDQ/wrQRkXDT4AUWlNZNPKvW5x/jyO9VFXkJUP07vQ2upmw5PlaITaPKc31jK13V+jg== + dependencies: + ms "2.1.2" + decamelize-keys@^1.1.0: version "1.1.0" resolved "https://registry.yarnpkg.com/decamelize-keys/-/decamelize-keys-1.1.0.tgz#d171a87933252807eb3cb61dc1c1445d078df2d9" @@ -6552,9 +6719,9 @@ decimal.js@^10.2.1, decimal.js@^10.3.1: integrity sha512-ic1yEvwT6GuvaYwBLLY6/aFFgjZdySKTE8en/fkU3QICTmRtgtSlFn0u0BXN06InZwtfCelR7j8LRiDI/02iGA== decode-uri-component@^0.2.0: - version "0.2.0" - resolved "https://registry.yarnpkg.com/decode-uri-component/-/decode-uri-component-0.2.0.tgz#eb3913333458775cb84cd1a1fae062106bb87545" - integrity sha512-hjf+xovcEn31w/EUYdTXQh/8smFL/dzYjohQGEIgjyNavaJfBY2p5F527Bo1VPATxv0VYTUC2bOcXvqFwk78Og== + version "0.2.2" + resolved "https://registry.yarnpkg.com/decode-uri-component/-/decode-uri-component-0.2.2.tgz#e69dbe25d37941171dd540e024c444cd5188e1e9" + integrity sha512-FqUYQ+8o158GyGTrMFJms9qh3CqTKvAqgqsTnkLI8sKu0028orqBhxNMFkFen0zGyg6epACD32pjVk58ngIErQ== decompress-response@^3.3.0: version "3.3.0" @@ -7029,9 +7196,9 @@ ee-first@1.1.1: integrity sha512-WMwm9LhRUo+WUaRN+vRuETqG89IgZphVSNkdFgeb6sS/E4OrDIN7t48CAewSHXc6C8lefD8KKfr5vY61brQlow== ejs@^3.1.5, ejs@^3.1.6: - version "3.1.8" - resolved "https://registry.yarnpkg.com/ejs/-/ejs-3.1.8.tgz#758d32910c78047585c7ef1f92f9ee041c1c190b" - integrity sha512-/sXZeMlhS0ArkfX2Aw780gJzXSMPnKjtspYZv+f3NiKLlubezAHDU5+9xz6gd3/NhG3txQCo6xlglmTS+oTGEQ== + version "3.1.10" + resolved "https://registry.yarnpkg.com/ejs/-/ejs-3.1.10.tgz#69ab8358b14e896f80cc39e62087b88500c3ac3b" + integrity sha512-UeJmFfOrAQS8OJWPZ4qtgHyWExa088/MtK5UEyoJGFH67cDEXkZSviOiKRCZ4Xij0zxI3JECgYs3oKx+AizQBA== dependencies: jake "^10.8.5" @@ -7040,6 +7207,11 @@ electron-to-chromium@^1.4.284: resolved "https://registry.yarnpkg.com/electron-to-chromium/-/electron-to-chromium-1.4.407.tgz#087e2ab97b3eb092aa6217c05986086b7dd370cc" integrity sha512-5smEvFSFYMv90tICOzRVP7Opp98DAC4KW7RRipg3BuNpGbbV3N+x24Zh3sbLb1T5haGtOSy/hrBfXsWnIM9aCg== +electron-to-chromium@^1.4.796: + version "1.4.796" + resolved "https://registry.yarnpkg.com/electron-to-chromium/-/electron-to-chromium-1.4.796.tgz#48dd6ff634b7f7df6313bd27aaa713f3af4a2b29" + integrity sha512-NglN/xprcM+SHD2XCli4oC6bWe6kHoytcyLKCWXmRL854F0qhPhaYgUswUsglnPxYaNQIg2uMY4BvaomIf3kLA== + elliptic@^6.5.3: version "6.5.4" resolved "https://registry.yarnpkg.com/elliptic/-/elliptic-6.5.4.tgz#da37cebd31e79a1367e941b592ed1fbebd58abbb" @@ -7053,6 +7225,19 @@ elliptic@^6.5.3: minimalistic-assert "^1.0.1" minimalistic-crypto-utils "^1.0.1" +elliptic@^6.5.5: + version "6.5.5" + resolved "https://registry.yarnpkg.com/elliptic/-/elliptic-6.5.5.tgz#c715e09f78b6923977610d4c2346d6ce22e6dded" + integrity sha512-7EjbcmUm17NQFu4Pmgmq2olYMj8nwMnpcddByChSUjArp8F5DQWcIcpriwO4ZToLNAJig0yiyjswfyGNje/ixw== + dependencies: + bn.js "^4.11.9" + brorand "^1.1.0" + hash.js "^1.0.0" + hmac-drbg "^1.0.1" + inherits "^2.0.4" + minimalistic-assert "^1.0.1" + minimalistic-crypto-utils "^1.0.1" + emittery@^0.10.2: version "0.10.2" resolved "https://registry.yarnpkg.com/emittery/-/emittery-0.10.2.tgz#902eec8aedb8c41938c46e9385e9db7e03182933" @@ -7107,10 +7292,10 @@ end-of-stream@^1.0.0, end-of-stream@^1.1.0, end-of-stream@^1.4.1: dependencies: once "^1.4.0" -enhanced-resolve@^5.10.0: - version "5.10.0" - resolved "https://registry.yarnpkg.com/enhanced-resolve/-/enhanced-resolve-5.10.0.tgz#0dc579c3bb2a1032e357ac45b8f3a6f3ad4fb1e6" - integrity sha512-T0yTFjdpldGY8PmuXXR0PyQ1ufZpEGiHVrp7zHKB7jdR4qlmZHhONVM5AQOAWXuF/w3dnHbEQVrNptJgt7F+cQ== +enhanced-resolve@^5.16.0: + version "5.17.0" + resolved "https://registry.yarnpkg.com/enhanced-resolve/-/enhanced-resolve-5.17.0.tgz#d037603789dd9555b89aaec7eb78845c49089bc5" + integrity sha512-dwDPwZL0dmye8Txp2gzFmA6sxALaSvdRDjPH0viLcKrtlOL3tw62nWWweVD1SdILDTJrbrL6tdWVN58Wo6U3eA== dependencies: graceful-fs "^4.2.4" tapable "^2.2.0" @@ -7370,10 +7555,10 @@ es-get-iterator@^1.1.1: is-string "^1.0.5" isarray "^2.0.5" -es-module-lexer@^0.9.0: - version "0.9.3" - resolved "https://registry.yarnpkg.com/es-module-lexer/-/es-module-lexer-0.9.3.tgz#6f13db00cc38417137daf74366f535c8eb438f19" - integrity sha512-1HQ2M2sPtxwnvOvT1ZClHyQDiggdNjURWpY2we6aMKCQiUVxTmVs2UYPLIrD84sS+kMdUwfBSylbJPwNnBrnHQ== +es-module-lexer@^1.2.1: + version "1.5.3" + resolved "https://registry.yarnpkg.com/es-module-lexer/-/es-module-lexer-1.5.3.tgz#25969419de9c0b1fbe54279789023e8a9a788412" + integrity sha512-i1gCgmR9dCl6Vil6UKPI/trA69s08g/syhiDK9TG0Nf1RJjjFI+AzoWW7sPufzkgYAn861skuCwJa0pIIHYxvg== es-object-atoms@^1.0.0: version "1.0.0" @@ -7421,6 +7606,11 @@ escalade@^3.1.1: resolved "https://registry.yarnpkg.com/escalade/-/escalade-3.1.1.tgz#d8cfdc7000965c5a0174b4a82eaa5c0552742e40" integrity sha512-k0er2gUkLf8O0zKJiAhmkTnJlTvINGv7ygDNPbeIsX/TJjGJZHuh9B2UxbsaEkmlEo9MfhrSzmhIlhRlI2GXnw== +escalade@^3.1.2: + version "3.1.2" + resolved "https://registry.yarnpkg.com/escalade/-/escalade-3.1.2.tgz#54076e9ab29ea5bf3d8f1ed62acffbb88272df27" + integrity sha512-ErCHMCae19vR8vQGe50xIsVomy19rg6gFu3+r3jkEO46suLMWBksvVyoGgQV+jOfl84ZSOSlmv6Gxa89PmTGmA== + escape-html@^1.0.3, escape-html@~1.0.3: version "1.0.3" resolved "https://registry.yarnpkg.com/escape-html/-/escape-html-1.0.3.tgz#0258eae4d3d0c0974de1c169188ef0051d1d1988" @@ -8278,9 +8468,9 @@ flush-write-stream@^1.0.2: readable-stream "^2.3.6" follow-redirects@^1.0.0, follow-redirects@^1.14.0, follow-redirects@^1.14.7, follow-redirects@^1.14.9: - version "1.15.3" - resolved "https://registry.yarnpkg.com/follow-redirects/-/follow-redirects-1.15.3.tgz#fe2f3ef2690afce7e82ed0b44db08165b207123a" - integrity sha512-1VzOtuEM8pC9SFU1E+8KfTjZyMztRsgEfwQl44z8A25uy13jSzTj6dyK2Df52iV0vgHCfBwLhDWevLn95w5v6Q== + version "1.15.6" + resolved "https://registry.yarnpkg.com/follow-redirects/-/follow-redirects-1.15.6.tgz#7f815c0cda4249c74ff09e95ef97c23b5fd0399b" + integrity sha512-wWN62YITEaOpSK584EZXJafH1AGpO8RVgElfkuXbTOrPX4fIfOyEpW/CsiNd8JdYrAoOvafRTOEnvsO++qCqFA== for-each@^0.3.3: version "0.3.3" @@ -8789,7 +8979,7 @@ got@^9.6.0: to-readable-stream "^1.0.0" url-parse-lax "^3.0.0" -graceful-fs@^4.0.0, graceful-fs@^4.1.11, graceful-fs@^4.1.15, graceful-fs@^4.1.2, graceful-fs@^4.1.6, graceful-fs@^4.2.0, graceful-fs@^4.2.4, graceful-fs@^4.2.6, graceful-fs@^4.2.9: +graceful-fs@^4.0.0, graceful-fs@^4.1.11, graceful-fs@^4.1.15, graceful-fs@^4.1.2, graceful-fs@^4.1.6, graceful-fs@^4.2.0, graceful-fs@^4.2.11, graceful-fs@^4.2.4, graceful-fs@^4.2.6, graceful-fs@^4.2.9: version "4.2.11" resolved "https://registry.yarnpkg.com/graceful-fs/-/graceful-fs-4.2.11.tgz#4183e4e8bf08bb6e05bbb2f7d2e0c8f712ca40e3" integrity sha512-RbJ5/jmFcNNCcDV5o9eTnBLJ/HszWV0P73bc+Ff4nS/rJj+YaS6IGyiOL0VoBYX+l1Wrl3k63h/KrH+nhJ0XvQ== @@ -8963,6 +9153,14 @@ hash-base@^3.0.0: readable-stream "^3.6.0" safe-buffer "^5.2.0" +hash-base@~3.0: + version "3.0.4" + resolved "https://registry.yarnpkg.com/hash-base/-/hash-base-3.0.4.tgz#5fc8686847ecd73499403319a6b0a3f3f6ae4918" + integrity sha512-EeeoJKjTyt868liAlVmcv2ZsUfGHlE3Q+BICOXcZiwN3osr5Q/zFGYmTJpoIzuaSTAwndFy+GqhEwlU4L3j4Ow== + dependencies: + inherits "^2.0.1" + safe-buffer "^5.0.1" + hash.js@^1.0.0, hash.js@^1.0.3: version "1.1.7" resolved "https://registry.yarnpkg.com/hash.js/-/hash.js-1.1.7.tgz#0babca538e8d4ee4a0f8988d68866537a003cf42" @@ -9120,9 +9318,9 @@ htmlparser2@^8.0.1: entities "^4.3.0" http-cache-semantics@^4.0.0: - version "4.1.0" - resolved "https://registry.yarnpkg.com/http-cache-semantics/-/http-cache-semantics-4.1.0.tgz#49e91c5cbf36c9b94bcfcd71c23d5249ec74e390" - integrity sha512-carPklcUh7ROWRK7Cv27RPtdhYhUsela/ue5/jKzjegVvXDqM2ILE9Q2BGn9JZJh1g87cp56su/FgQSzcWS8cQ== + version "4.1.1" + resolved "https://registry.yarnpkg.com/http-cache-semantics/-/http-cache-semantics-4.1.1.tgz#abe02fcb2985460bf0323be664436ec3476a6d5a" + integrity sha512-er295DKPVsV82j5kw1Gjt+ADA/XYHsajl82cGNQG2eyoPkvgUhX+nDIyelzhIWbbsXP39EHcI6l5tYs2FYqYXQ== http-deceiver@^1.2.7: version "1.2.7" @@ -11994,6 +12192,11 @@ node-ipc@9.1.1: js-message "1.0.5" js-queue "2.0.0" +node-releases@^2.0.14: + version "2.0.14" + resolved "https://registry.yarnpkg.com/node-releases/-/node-releases-2.0.14.tgz#2ffb053bceb8b2be8495ece1ab6ce600c4461b0b" + integrity sha512-y10wOWt8yZpqXmOgRo77WaHEmhYQYGNA6y421PKsKYWEK8aW+cqAphborZDhqfyKrbZEN92CN1X2KbafY2s7Yw== + node-releases@^2.0.8: version "2.0.12" resolved "https://registry.yarnpkg.com/node-releases/-/node-releases-2.0.12.tgz#35627cc224a23bfb06fb3380f2b3afaaa7eb1039" @@ -12428,7 +12631,7 @@ parents@^1.0.0, parents@^1.0.1: dependencies: path-platform "~0.11.15" -parse-asn1@^5.0.0, parse-asn1@^5.1.5: +parse-asn1@^5.0.0: version "5.1.6" resolved "https://registry.yarnpkg.com/parse-asn1/-/parse-asn1-5.1.6.tgz#385080a3ec13cb62a62d39409cb3e88844cdaed4" integrity sha512-RnZRo1EPU6JBnra2vGHj0yhp6ebyjBZpmUCLHWiFhxlzvBCCpAuZ7elsBp1PVAbQN0/04VD/19rfzlBSwLstMw== @@ -12439,6 +12642,18 @@ parse-asn1@^5.0.0, parse-asn1@^5.1.5: pbkdf2 "^3.0.3" safe-buffer "^5.1.1" +parse-asn1@^5.1.7: + version "5.1.7" + resolved "https://registry.yarnpkg.com/parse-asn1/-/parse-asn1-5.1.7.tgz#73cdaaa822125f9647165625eb45f8a051d2df06" + integrity sha512-CTM5kuWR3sx9IFamcl5ErfPl6ea/N8IYwiJ+vpeB2g+1iknv7zBl5uPwbMbRVznRVbrNY6lGuDoE5b30grmbqg== + dependencies: + asn1.js "^4.10.1" + browserify-aes "^1.2.0" + evp_bytestokey "^1.0.3" + hash-base "~3.0" + pbkdf2 "^3.1.2" + safe-buffer "^5.2.1" + parse-author@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/parse-author/-/parse-author-2.0.0.tgz#d3460bf1ddd0dfaeed42da754242e65fb684a81f" @@ -12596,7 +12811,7 @@ pause-stream@0.0.11: dependencies: through "~2.3" -pbkdf2@^3.0.3: +pbkdf2@^3.0.3, pbkdf2@^3.1.2: version "3.1.2" resolved "https://registry.yarnpkg.com/pbkdf2/-/pbkdf2-3.1.2.tgz#dd822aa0887580e52f1a039dc3eda108efae3075" integrity sha512-iuh7L6jA7JEGu2WxDwtQP1ddOpaJNC4KlDEFfdQajSGgGPNi4OyDc2R7QnbY2bR9QjBVGwgvTdNJZoE7RaxUMA== @@ -12632,6 +12847,11 @@ picocolors@^1.0.0: resolved "https://registry.yarnpkg.com/picocolors/-/picocolors-1.0.0.tgz#cb5bdc74ff3f51892236eaf79d68bc44564ab81c" integrity sha512-1fygroTLlHu66zi26VoTDv8yRgm0Fccecssto+MhsZ0D/DGW2sm8E8AjW7NU5VVTRt5GxbeZ5qBuJr+HyLYkjQ== +picocolors@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/picocolors/-/picocolors-1.0.1.tgz#a8ad579b571952f0e5d25892de5445bcfe25aaa1" + integrity sha512-anP1Z8qwhkbmu7MFP5iTt+wQKXgwzf7zTyGlcdzabySa9vd0Xt392U0rVmz9poOaBj0uHJKyyo9/upk0HrEQew== + picomatch@^2.0.4, picomatch@^2.2.1, picomatch@^2.2.2, picomatch@^2.2.3, picomatch@^2.3.1: version "2.3.1" resolved "https://registry.yarnpkg.com/picomatch/-/picomatch-2.3.1.tgz#3ba3833733646d9d3e4995946c1365a67fb07a42" @@ -13881,7 +14101,7 @@ read-pkg@^5.2.0: string_decoder "^1.1.1" util-deprecate "^1.0.1" -readable-stream@^2.0.0, readable-stream@^2.0.1, readable-stream@^2.0.2, readable-stream@^2.0.5, readable-stream@^2.1.5, readable-stream@^2.2.2, readable-stream@^2.3.3, readable-stream@^2.3.5, readable-stream@^2.3.6, readable-stream@~2.3.6: +readable-stream@^2.0.0, readable-stream@^2.0.1, readable-stream@^2.0.2, readable-stream@^2.0.5, readable-stream@^2.1.5, readable-stream@^2.2.2, readable-stream@^2.3.3, readable-stream@^2.3.5, readable-stream@^2.3.6, readable-stream@^2.3.8, readable-stream@~2.3.6: version "2.3.8" resolved "https://registry.yarnpkg.com/readable-stream/-/readable-stream-2.3.8.tgz#91125e8042bba1b9887f49345f6277027ce8be9b" integrity sha512-8p0AUk4XODgIewSi0l8Epjs+EVnWiK7NoDIEGU0HhE7+ZyY8D1IMY7odu5lRrFXGg71L15KG8QrPmum45RTtdA== @@ -14498,7 +14718,7 @@ schema-utils@^2.6.5: ajv "^6.12.4" ajv-keywords "^3.5.2" -schema-utils@^3.0.0, schema-utils@^3.1.0, schema-utils@^3.1.1: +schema-utils@^3.0.0, schema-utils@^3.1.1: version "3.1.1" resolved "https://registry.yarnpkg.com/schema-utils/-/schema-utils-3.1.1.tgz#bc74c4b6b6995c1d88f76a8b77bea7219e0c8281" integrity sha512-Y5PQxS4ITlC+EahLuXaY86TXfR7Dc5lw294alXOq86JAHCihAIZfqv8nNCWvaEJvaC51uN9hbLGeV0cFBdH+Fw== @@ -14507,6 +14727,15 @@ schema-utils@^3.0.0, schema-utils@^3.1.0, schema-utils@^3.1.1: ajv "^6.12.5" ajv-keywords "^3.5.2" +schema-utils@^3.2.0: + version "3.3.0" + resolved "https://registry.yarnpkg.com/schema-utils/-/schema-utils-3.3.0.tgz#f50a88877c3c01652a15b622ae9e9795df7a60fe" + integrity sha512-pN/yOAvcC+5rQ5nERGuwrjLlYvLTbCibnZ1I7B1LaiAz9BRBlE9GMgE/eqV30P7aJQUf7Ddimy/RsbYO/GrVGg== + dependencies: + "@types/json-schema" "^7.0.8" + ajv "^6.12.5" + ajv-keywords "^3.5.2" + schema-utils@^4.0.0: version "4.0.0" resolved "https://registry.yarnpkg.com/schema-utils/-/schema-utils-4.0.0.tgz#60331e9e3ae78ec5d16353c467c34b3a0a1d3df7" @@ -14598,6 +14827,13 @@ serialize-javascript@^4.0.0: dependencies: randombytes "^2.1.0" +serialize-javascript@^6.0.1: + version "6.0.2" + resolved "https://registry.yarnpkg.com/serialize-javascript/-/serialize-javascript-6.0.2.tgz#defa1e055c83bf6d59ea805d8da862254eb6a6c2" + integrity sha512-Saa1xPByTTq2gdeFZYLLo+RFE35NHZkAbqZeWNd3BpzppeVisAqpDjcp8dyf6uIvEqJRd46jemmyA4iFIeVk8g== + dependencies: + randombytes "^2.1.0" + serve-index@^1.9.1: version "1.9.1" resolved "https://registry.yarnpkg.com/serve-index/-/serve-index-1.9.1.tgz#d3768d69b1e7d82e5ce050fff5b453bea12a9239" @@ -15604,7 +15840,7 @@ terminal-link@^2.0.0: ansi-escapes "^4.2.1" supports-hyperlinks "^2.0.0" -terser-webpack-plugin@^5.1.3, terser-webpack-plugin@^5.2.5, terser-webpack-plugin@^5.3.1: +terser-webpack-plugin@^5.2.5, terser-webpack-plugin@^5.3.1: version "5.3.6" resolved "https://registry.yarnpkg.com/terser-webpack-plugin/-/terser-webpack-plugin-5.3.6.tgz#5590aec31aa3c6f771ce1b1acca60639eab3195c" integrity sha512-kfLFk+PoLUQIbLmB1+PZDMRSZS99Mp+/MHqDNmMA6tOItzRt+Npe3E+fsMs5mfcM0wCtrrdU387UnV+vnSffXQ== @@ -15615,6 +15851,17 @@ terser-webpack-plugin@^5.1.3, terser-webpack-plugin@^5.2.5, terser-webpack-plugi serialize-javascript "^6.0.0" terser "^5.14.1" +terser-webpack-plugin@^5.3.10: + version "5.3.10" + resolved "https://registry.yarnpkg.com/terser-webpack-plugin/-/terser-webpack-plugin-5.3.10.tgz#904f4c9193c6fd2a03f693a2150c62a92f40d199" + integrity sha512-BKFPWlPDndPs+NGGCr1U59t0XScL5317Y0UReNrHaw9/FwhPENlq6bfgs+4yPfyP51vqC1bQ4rp1EfXW5ZSH9w== + dependencies: + "@jridgewell/trace-mapping" "^0.3.20" + jest-worker "^27.4.5" + schema-utils "^3.1.1" + serialize-javascript "^6.0.1" + terser "^5.26.0" + terser@^5.0.0, terser@^5.10.0, terser@^5.14.1: version "5.15.1" resolved "https://registry.yarnpkg.com/terser/-/terser-5.15.1.tgz#8561af6e0fd6d839669c73b92bdd5777d870ed6c" @@ -15625,6 +15872,16 @@ terser@^5.0.0, terser@^5.10.0, terser@^5.14.1: commander "^2.20.0" source-map-support "~0.5.20" +terser@^5.26.0: + version "5.31.1" + resolved "https://registry.yarnpkg.com/terser/-/terser-5.31.1.tgz#735de3c987dd671e95190e6b98cfe2f07f3cf0d4" + integrity sha512-37upzU1+viGvuFtBo9NPufCb9dwM0+l9hMxYyWfBA+fbwrPqNJAhbZ6W47bBFnZHKHTUBnMvi87434qq+qnxOg== + dependencies: + "@jridgewell/source-map" "^0.3.3" + acorn "^8.8.2" + commander "^2.20.0" + source-map-support "~0.5.20" + test-exclude@^5.2.3: version "5.2.3" resolved "https://registry.yarnpkg.com/test-exclude/-/test-exclude-5.2.3.tgz#c3d3e1e311eb7ee405e092dac10aefd09091eac0" @@ -16201,6 +16458,14 @@ update-browserslist-db@^1.0.10: escalade "^3.1.1" picocolors "^1.0.0" +update-browserslist-db@^1.0.16: + version "1.0.16" + resolved "https://registry.yarnpkg.com/update-browserslist-db/-/update-browserslist-db-1.0.16.tgz#f6d489ed90fb2f07d67784eb3f53d7891f736356" + integrity sha512-KVbTxlBYlckhF5wgfyZXTWnMn7MMZjMu9XG8bPlliUOP9ThaF4QnhP8qrjrH7DRzHfSk0oQv1wToW+iA5GajEQ== + dependencies: + escalade "^3.1.2" + picocolors "^1.0.1" + update-notifier@^3.0.0: version "3.0.1" resolved "https://registry.yarnpkg.com/update-notifier/-/update-notifier-3.0.1.tgz#78ecb68b915e2fd1be9f767f6e298ce87b736250" @@ -16486,10 +16751,10 @@ watchify@^4.0.0: through2 "^4.0.2" xtend "^4.0.2" -watchpack@^2.4.0: - version "2.4.0" - resolved "https://registry.yarnpkg.com/watchpack/-/watchpack-2.4.0.tgz#fa33032374962c78113f93c7f2fb4c54c9862a5d" - integrity sha512-Lcvm7MGST/4fup+ifyKi2hjyIAwcdI4HRgtvTpIUxBRhB+RFtUh8XtDOxUfctVCnhVi+QQj49i91OyvzkJl6cg== +watchpack@^2.4.1: + version "2.4.1" + resolved "https://registry.yarnpkg.com/watchpack/-/watchpack-2.4.1.tgz#29308f2cac150fa8e4c92f90e0ec954a9fed7fff" + integrity sha512-8wrBCMtVhqcXP2Sup1ctSkga6uc2Bx0IIvKyT7yTFier5AXHooSI+QyQQAtTb7+E0IUCCKyTFmXqdqgum2XWGg== dependencies: glob-to-regexp "^0.4.1" graceful-fs "^4.1.2" @@ -16592,33 +16857,33 @@ webpack-sources@^3.2.3: integrity sha512-/DyMEOrDgLKKIG0fmvtz+4dUX/3Ghozwgm6iPp8KRhvn+eQf9+Q7GWxVNMk3+uCPWfdXYC4ExGBckIXdFEfH1w== webpack@^5.41.1, webpack@^5.64.4: - version "5.74.0" - resolved "https://registry.yarnpkg.com/webpack/-/webpack-5.74.0.tgz#02a5dac19a17e0bb47093f2be67c695102a55980" - integrity sha512-A2InDwnhhGN4LYctJj6M1JEaGL7Luj6LOmyBHjcI8529cm5p6VXiTIW2sn6ffvEAKmveLzvu4jrihwXtPojlAA== + version "5.91.0" + resolved "https://registry.yarnpkg.com/webpack/-/webpack-5.91.0.tgz#ffa92c1c618d18c878f06892bbdc3373c71a01d9" + integrity sha512-rzVwlLeBWHJbmgTC/8TvAcu5vpJNII+MelQpylD4jNERPwpBJOE2lEcko1zJX3QJeLjTTAnQxn/OJ8bjDzVQaw== dependencies: "@types/eslint-scope" "^3.7.3" - "@types/estree" "^0.0.51" - "@webassemblyjs/ast" "1.11.1" - "@webassemblyjs/wasm-edit" "1.11.1" - "@webassemblyjs/wasm-parser" "1.11.1" + "@types/estree" "^1.0.5" + "@webassemblyjs/ast" "^1.12.1" + "@webassemblyjs/wasm-edit" "^1.12.1" + "@webassemblyjs/wasm-parser" "^1.12.1" acorn "^8.7.1" - acorn-import-assertions "^1.7.6" - browserslist "^4.14.5" + acorn-import-assertions "^1.9.0" + browserslist "^4.21.10" chrome-trace-event "^1.0.2" - enhanced-resolve "^5.10.0" - es-module-lexer "^0.9.0" + enhanced-resolve "^5.16.0" + es-module-lexer "^1.2.1" eslint-scope "5.1.1" events "^3.2.0" glob-to-regexp "^0.4.1" - graceful-fs "^4.2.9" + graceful-fs "^4.2.11" json-parse-even-better-errors "^2.3.1" loader-runner "^4.2.0" mime-types "^2.1.27" neo-async "^2.6.2" - schema-utils "^3.1.0" + schema-utils "^3.2.0" tapable "^2.1.1" - terser-webpack-plugin "^5.1.3" - watchpack "^2.4.0" + terser-webpack-plugin "^5.3.10" + watchpack "^2.4.1" webpack-sources "^3.2.3" websocket-driver@>=0.5.1, websocket-driver@^0.7.4: @@ -16750,9 +17015,9 @@ widest-line@^2.0.0: string-width "^2.1.1" word-wrap@^1.2.3, word-wrap@~1.2.3: - version "1.2.3" - resolved "https://registry.yarnpkg.com/word-wrap/-/word-wrap-1.2.3.tgz#610636f6b1f703891bd34771ccb17fb93b47079c" - integrity sha512-Hz/mrNwitNRh/HUAtM/VT/5VH+ygD6DV7mYKZAtHOrbs8U7lvPS6xf7EJKMF0uW1KJCl0H701g3ZGus+muE5vQ== + version "1.2.5" + resolved "https://registry.yarnpkg.com/word-wrap/-/word-wrap-1.2.5.tgz#d2c45c6dd4fbce621a66f136cbe328afd0410b34" + integrity sha512-BN22B5eaMMI9UMtjrGd5g5eCYPpCPDUy0FJXbYsaT5zYxjFOckS53SQDE3pWkVoWpHXVb3BrYcEN4Twa55B5cA== wordwrap@^1.0.0: version "1.0.0" From 27a6ea57a889941c6e5efbc7739326a5fdf920d0 Mon Sep 17 00:00:00 2001 From: "@dhis2-bot" Date: Sun, 16 Jun 2024 03:44:31 +0200 Subject: [PATCH 24/62] fix(translations): sync translations from transifex (master) Automatically merged. --- i18n/ru.po | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/i18n/ru.po b/i18n/ru.po index 04e5caeac..e4de4dddd 100644 --- a/i18n/ru.po +++ b/i18n/ru.po @@ -391,7 +391,7 @@ msgid "Update" msgstr "Обновить" msgid "Getting started" -msgstr "" +msgstr "Начало работы" msgid "" "All dimensions that you can use to build visualizations are shown in the " @@ -408,7 +408,7 @@ msgid "Your most viewed line lists" msgstr "" msgid "Not available offline" -msgstr "" +msgstr "Недоступно в автономном режиме" msgid "" "This line list may show data that was not available when the interpretation " From ce59fca9af3f577c6ff6cfa2fa3f058ec466687a Mon Sep 17 00:00:00 2001 From: "@dhis2-bot" Date: Sun, 16 Jun 2024 02:38:10 +0000 Subject: [PATCH 25/62] chore(release): cut 101.0.6 [skip release] ## [101.0.6](https://github.com/dhis2/line-listing-app/compare/v101.0.5...v101.0.6) (2024-06-16) ### Bug Fixes * **translations:** sync translations from transifex (master) ([27a6ea5](https://github.com/dhis2/line-listing-app/commit/27a6ea57a889941c6e5efbc7739326a5fdf920d0)) --- CHANGELOG.md | 7 +++++++ package.json | 2 +- 2 files changed, 8 insertions(+), 1 deletion(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 0d283b49c..e3b01e452 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,3 +1,10 @@ +## [101.0.6](https://github.com/dhis2/line-listing-app/compare/v101.0.5...v101.0.6) (2024-06-16) + + +### Bug Fixes + +* **translations:** sync translations from transifex (master) ([27a6ea5](https://github.com/dhis2/line-listing-app/commit/27a6ea57a889941c6e5efbc7739326a5fdf920d0)) + ## [101.0.5](https://github.com/dhis2/line-listing-app/compare/v101.0.4...v101.0.5) (2024-06-07) diff --git a/package.json b/package.json index 7af13d6d1..ad29cdbba 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "line-listing-app", - "version": "101.0.5", + "version": "101.0.6", "description": "DHIS2 Line Listing", "license": "BSD-3-Clause", "private": true, From cc94f24643e0e0459998dff4aff97422e4d56e87 Mon Sep 17 00:00:00 2001 From: Edoardo Sabadelli Date: Mon, 24 Jun 2024 12:33:06 +0200 Subject: [PATCH 26/62] fix: remove CSS that prevents LL from showing (#552) The fix is in cli-app-scripts where the plugin shell is built. --- package.json | 2 +- yarn.lock | 40 ++++++++++++++++++++-------------------- 2 files changed, 21 insertions(+), 21 deletions(-) diff --git a/package.json b/package.json index ad29cdbba..6a1e9a565 100644 --- a/package.json +++ b/package.json @@ -18,7 +18,7 @@ "cy:run": "start-server-and-test 'yarn start' http://localhost:3000 'yarn cypress run --env networkMode=live'" }, "devDependencies": { - "@dhis2/cli-app-scripts": "^11.2.2", + "@dhis2/cli-app-scripts": "^11.4.2", "@dhis2/cli-style": "^10.4.3", "@dhis2/cypress-commands": "^10.0.3", "@dhis2/cypress-plugins": "^10.0.2", diff --git a/yarn.lock b/yarn.lock index 9fa16f584..2bd78fbae 100644 --- a/yarn.lock +++ b/yarn.lock @@ -2145,12 +2145,12 @@ react-beautiful-dnd "^10.1.1" resize-observer-polyfill "^1.5.1" -"@dhis2/app-adapter@11.2.2": - version "11.2.2" - resolved "https://registry.yarnpkg.com/@dhis2/app-adapter/-/app-adapter-11.2.2.tgz#0e5a8525c6c8adb11a8e33d33bfba78eb7731d62" - integrity sha512-T7kownygvtl/9brKr39xojv4UXAvlvZaBLwkKAoSt1XcDAYpw97vcxs8K5RG00cbLV91I194jVfnKTg2bjuajw== +"@dhis2/app-adapter@11.4.2": + version "11.4.2" + resolved "https://registry.yarnpkg.com/@dhis2/app-adapter/-/app-adapter-11.4.2.tgz#a588ac696fd1c38873359f16a03c0be237b3c4de" + integrity sha512-AKlgpLNxChQxfZV4Ji6GeQv1k3N5AkymcedAMCPbR6wjVhskyE0l4a/9HdMBQh+vFlVOtE5fC/NBRifQjlE8Kw== dependencies: - "@dhis2/pwa" "11.2.2" + "@dhis2/pwa" "11.4.2" moment "^2.24.0" "@dhis2/app-runtime@^3.10.4", "@dhis2/app-runtime@^3.4.4": @@ -2195,15 +2195,15 @@ dependencies: post-robot "^10.0.46" -"@dhis2/app-shell@11.2.2": - version "11.2.2" - resolved "https://registry.yarnpkg.com/@dhis2/app-shell/-/app-shell-11.2.2.tgz#43e849eff4e3238edccf41d55b2ad71b29c4c80d" - integrity sha512-TK4V+LmcvQfFAZZloKPDMKAa/d7jUEl7eXopYyJYscCeImNuMufz3+6WgeOC6xQe9nHC36I8/d7NuSpPiEoQUw== +"@dhis2/app-shell@11.4.2": + version "11.4.2" + resolved "https://registry.yarnpkg.com/@dhis2/app-shell/-/app-shell-11.4.2.tgz#66ce1cdb666c22b3b530d4c052a72305b5571700" + integrity sha512-R8oKl9Zoby7uK3emdmtRqTyoOR/UjraBP7Xq+OkoKSHrt77HVQElsVpfSrLvz+p7VuNEhIMtZCW2xwS4MK07uw== dependencies: - "@dhis2/app-adapter" "11.2.2" + "@dhis2/app-adapter" "11.4.2" "@dhis2/app-runtime" "^3.10.4" "@dhis2/d2-i18n" "^1.1.1" - "@dhis2/pwa" "11.2.2" + "@dhis2/pwa" "11.4.2" "@dhis2/ui" "^9.4.4" classnames "^2.2.6" moment "^2.29.1" @@ -2217,10 +2217,10 @@ typeface-roboto "^0.0.75" typescript "^3.6.3" -"@dhis2/cli-app-scripts@^11.2.2": - version "11.2.2" - resolved "https://registry.yarnpkg.com/@dhis2/cli-app-scripts/-/cli-app-scripts-11.2.2.tgz#fb7d3d487fb8c0d1e690f8f91fc0d3d884dccd35" - integrity sha512-muCg1UjCIN2WZ5FoVJwhdD+SBNO8NYvwZiUoltoHZ244L1v8pfPJifr7zgMLKp+1AsO4DB4nq3ne6qR3elZgiQ== +"@dhis2/cli-app-scripts@^11.4.2": + version "11.4.2" + resolved "https://registry.yarnpkg.com/@dhis2/cli-app-scripts/-/cli-app-scripts-11.4.2.tgz#5842ee8032ef021321d063204b34b853b879c6c0" + integrity sha512-H2dHcnFGSOaqKFrbLXYauYcBOoalnhFnJJSYZXpBbhX83JCbwLDhIopDUYssb948n9xhq0DMMFnMCbKFdHIOZQ== dependencies: "@babel/core" "^7.6.2" "@babel/plugin-proposal-class-properties" "^7.8.3" @@ -2229,7 +2229,7 @@ "@babel/preset-env" "^7.14.7" "@babel/preset-react" "^7.0.0" "@babel/preset-typescript" "^7.6.0" - "@dhis2/app-shell" "11.2.2" + "@dhis2/app-shell" "11.4.2" "@dhis2/cli-helpers-engine" "^3.2.0" "@jest/core" "^27.0.6" "@pmmmwh/react-refresh-webpack-plugin" "^0.5.4" @@ -2351,10 +2351,10 @@ resolved "https://registry.yarnpkg.com/@dhis2/prop-types/-/prop-types-3.1.2.tgz#65b8ad2da8cd2f72bc8b951049a6c9d1b97af3e9" integrity sha512-eM0jjLOWvtXWqSFp5YC4DHFpkP8Y1D2eUwGV7MBWjni+o27oesVan+oT7WHeOeLdlAd4acRJrnaaAyB4Ck1wGQ== -"@dhis2/pwa@11.2.2": - version "11.2.2" - resolved "https://registry.yarnpkg.com/@dhis2/pwa/-/pwa-11.2.2.tgz#fec40b4022d6e0133e4f1a6910919088e6d0392c" - integrity sha512-WdcH1UwoaFas4voScQ5zwfsTlYGJlo6eFgR991efAytEUGce4UsKFtS+KvtSBNMmQp+9F09tq+BDV52gPv/mdA== +"@dhis2/pwa@11.4.2": + version "11.4.2" + resolved "https://registry.yarnpkg.com/@dhis2/pwa/-/pwa-11.4.2.tgz#19d6936f7134613c187666f55dbf8596aeefbb8e" + integrity sha512-6QXEiDTfOFnOKxWipT2FH6MpbaEUw4Y6oKz6KK7SkqQKNV40NFBIvh93RXGpq06IupzK1cfnNltTDPdG0tPKsQ== dependencies: idb "^6.0.0" workbox-core "^6.1.5" From 4db7f0321be4c9b44151b5b1ac376ec991047431 Mon Sep 17 00:00:00 2001 From: "@dhis2-bot" Date: Mon, 24 Jun 2024 10:51:55 +0000 Subject: [PATCH 27/62] chore(release): cut 101.0.7 [skip release] ## [101.0.7](https://github.com/dhis2/line-listing-app/compare/v101.0.6...v101.0.7) (2024-06-24) ### Bug Fixes * remove CSS that prevents LL from showing ([#552](https://github.com/dhis2/line-listing-app/issues/552)) ([cc94f24](https://github.com/dhis2/line-listing-app/commit/cc94f24643e0e0459998dff4aff97422e4d56e87)) --- CHANGELOG.md | 7 +++++++ package.json | 2 +- 2 files changed, 8 insertions(+), 1 deletion(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index e3b01e452..58a4a895f 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,3 +1,10 @@ +## [101.0.7](https://github.com/dhis2/line-listing-app/compare/v101.0.6...v101.0.7) (2024-06-24) + + +### Bug Fixes + +* remove CSS that prevents LL from showing ([#552](https://github.com/dhis2/line-listing-app/issues/552)) ([cc94f24](https://github.com/dhis2/line-listing-app/commit/cc94f24643e0e0459998dff4aff97422e4d56e87)) + ## [101.0.6](https://github.com/dhis2/line-listing-app/compare/v101.0.5...v101.0.6) (2024-06-16) diff --git a/package.json b/package.json index 6a1e9a565..1220751be 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "line-listing-app", - "version": "101.0.6", + "version": "101.0.7", "description": "DHIS2 Line Listing", "license": "BSD-3-Clause", "private": true, From 2904c66b077871cfef99ed889bdc234a0211e4cb Mon Sep 17 00:00:00 2001 From: Hendrik de Graaf Date: Wed, 26 Jun 2024 16:38:34 +0200 Subject: [PATCH 28/62] feat: add resizable sidebar (DHIS2-17170) (#534) * feat: add resizable sidebar * feat: prevent sidebar from becoming to narrow or extend past the end of the window * chore: use correct default size * feat: add sidebar width to global state and store in local storage * feat: allow sidebar width reset via view menu * chore: add translation for reset sidebar width button * feat: enable resizing the sidebar with keyboard navigation * fix: persist width correctly after resetting * feat: ensure sidebar does not break layout * feat: decrease sidebar width after window resize if needed * fix: add dependency array to effect hook * fix: ensure resize handler is removed when the component unmounts * test: implement e2e tests * fix: address overshooting min and max width issues * test: assert out-of-bounds behavior Out of bound mouse moves should be ignored, so the sidebar should not start resizing again until the cursor returns over the resize handle For keypresses we need to ignore that keypresses in an valid direction are not ignored * chore: correct some typos * docs: describe how the resizable sidebar feature works * chore: fix typo in filename * chore: remove redundant call to event.persist() * refactor: keep reading and writing to local storage in a separate file * chore: use local storage key format consistent with dashboards * feat: reset to default width on double click * chore: add e2e test for reset by double click * fix: hide panel content after transition is complete * fix: animate width on inner panel to fix reset animation * docs: add instructions for resetting to default by double-click * fix: set animation duration to 150ms for increased snappiness --- cypress/integration/mainSidebar.cy.js | 364 +++++++++++++++++- docs/line_list.md | 12 + .../images/resizable_accessory_sidebar.png | Bin 0 -> 312026 bytes .../resizable_accessory_sidebar_keyboard.png | Bin 0 -> 290794 bytes .../resizable_accessory_sidebar_reset.png | Bin 0 -> 77338 bytes i18n/en.pot | 7 +- src/actions/ui.js | 6 + src/components/MainSidebar/MainSidebar.js | 64 ++- .../MainSidebar/MainSidebar.module.css | 60 ++- .../useResizableAccessorySidebar.js | 208 ++++++++++ src/components/Toolbar/ViewDropDown.js | 17 + src/modules/accessoryPanelConstants.js | 10 + src/modules/localStorage.js | 13 + src/modules/ui.js | 15 +- src/modules/utils.js | 10 + src/reducers/ui.js | 17 +- 16 files changed, 776 insertions(+), 27 deletions(-) create mode 100644 docs/resources/images/resizable_accessory_sidebar.png create mode 100644 docs/resources/images/resizable_accessory_sidebar_keyboard.png create mode 100644 docs/resources/images/resizable_accessory_sidebar_reset.png create mode 100644 src/components/MainSidebar/useResizableAccessorySidebar.js create mode 100644 src/modules/accessoryPanelConstants.js create mode 100644 src/modules/localStorage.js diff --git a/cypress/integration/mainSidebar.cy.js b/cypress/integration/mainSidebar.cy.js index 0c8d23760..e4010310b 100644 --- a/cypress/integration/mainSidebar.cy.js +++ b/cypress/integration/mainSidebar.cy.js @@ -1,9 +1,17 @@ +import { + ACCESSORY_PANEL_DEFAULT_WIDTH, + ACCESSORY_PANEL_MIN_WIDTH, + ACCESSORY_PANEL_MIN_PX_AT_END, + PRIMARY_PANEL_WIDTH, + ARROW_LEFT_KEY, + ARROW_RIGHT_KEY, +} from '../../src/modules/accessoryPanelConstants.js' import { TEST_AO } from '../data/index.js' import { goToAO } from '../helpers/common.js' import { clickMenubarViewButton } from '../helpers/menubar.js' import { goToStartPage } from '../helpers/startScreen.js' -describe('main sidebar', () => { +describe('main sidebar panel', () => { it('the main sidebar can be toggled by clicking the option in the view menu', () => { goToStartPage() @@ -58,4 +66,358 @@ describe('main sidebar', () => { cy.getBySel('main-sidebar').should('be.visible') }) + + it('clicking an input in the main sidebar opens and closes the accessory panel', () => { + // Opened by default on start page so we go to the test AO instead + goToAO(TEST_AO.id) + cy.getBySel('input-panel-button').click() + cy.getBySel('accessory-sidebar') + .should('be.visible') + .invoke('outerWidth') + .should('eq', ACCESSORY_PANEL_DEFAULT_WIDTH) + cy.getBySel('input-panel-button').click() + cy.getBySel('accessory-sidebar').should('not.be.visible') + }) +}) + +describe('accessory sidebar panel', () => { + const VIEWPORT_WIDTH = Cypress.config().viewportWidth + const DRAGHANDLE_PAGE_X_INITIAL = + PRIMARY_PANEL_WIDTH + ACCESSORY_PANEL_DEFAULT_WIDTH + const DRAGHANDLE_PAGE_X_MIN = + PRIMARY_PANEL_WIDTH + ACCESSORY_PANEL_MIN_WIDTH + const DRAGHANDLE_PAGE_X_MAX = VIEWPORT_WIDTH - ACCESSORY_PANEL_MIN_PX_AT_END + + const getMouseMoveOptions = ( + movementX, + previousX = DRAGHANDLE_PAGE_X_INITIAL + ) => ({ + pageX: previousX + movementX, + movementX: movementX, + pageY: 400, + }) + + const resizeByMouse = (movementX) => { + cy.getBySel('accessory-panel-resize-handle') + .trigger('mousedown') + .trigger('mousemove', getMouseMoveOptions(movementX)) + .trigger('mouseup') + } + + const resizeByKeyBoard = (movementX, shouldBlur = true) => { + if (movementX % 10 !== 0) { + throw new Error( + 'Invalid `movementX`: resizing by keyboard happens in increments of 10.' + ) + } + const keyPresses = Math.abs(movementX / 10) + const key = movementX >= 0 ? ARROW_RIGHT_KEY : ARROW_LEFT_KEY + + cy.getBySel('accessory-panel-resize-handle').focus() + + for (let i = 0; i < keyPresses; i++) { + cy.getBySel('accessory-panel-resize-handle').trigger('keydown', { + key, + }) + } + + if (shouldBlur) { + /* For this test to work correctly we need to blur + * the resize handle so it can be focussed again */ + cy.getBySel('accessory-panel-resize-handle').blur() + } + } + + it('can be resized by mouse', () => { + const movementX1 = 200 + const movementX2 = 50 + const width1 = ACCESSORY_PANEL_DEFAULT_WIDTH + movementX1 + const width2 = width1 + movementX2 + + // Opened by default on start page, so we can start resizing + goToStartPage() + + resizeByMouse(movementX1) + + cy.getBySel('accessory-sidebar') + .invoke('outerWidth') + .should('eq', width1) + + resizeByMouse(movementX2) + + cy.getBySel('accessory-sidebar') + .invoke('outerWidth') + .should('eq', width2) + }) + it('cannot be resized by mouse past its min-width', () => { + /* If width restriction was not working, this movement would make the sidebar + * 20px narrower than the minimum */ + const movementX = DRAGHANDLE_PAGE_X_MIN - DRAGHANDLE_PAGE_X_INITIAL - 20 + + goToStartPage() + + // Do not mouseup because we want to move some more + resizeByMouse(movementX) + + cy.getBySel('accessory-sidebar') + .invoke('outerWidth') + .should('eq', ACCESSORY_PANEL_MIN_WIDTH) + }) + it('cannot be resized by mouse past its max-width', () => { + /* If width restriction was not working, this movement would make the sidebar + * 20px wider than the maximum */ + const movementX = DRAGHANDLE_PAGE_X_MAX - DRAGHANDLE_PAGE_X_INITIAL + 20 + const expectedWidth = + VIEWPORT_WIDTH - PRIMARY_PANEL_WIDTH - ACCESSORY_PANEL_MIN_PX_AT_END + + goToStartPage() + + resizeByMouse(movementX) + + cy.getBySel('accessory-sidebar') + .invoke('outerWidth') + .should('eq', expectedWidth) + }) + it('ignores out-of-bounds mouse movements past the min-width edge', () => { + const movementX = DRAGHANDLE_PAGE_X_MIN - DRAGHANDLE_PAGE_X_INITIAL + + goToStartPage() + + // Resize to min width, without mouseup + cy.getBySel('accessory-panel-resize-handle') + .trigger('mousedown') + .trigger('mousemove', getMouseMoveOptions(movementX)) + cy.getBySel('accessory-sidebar') + .invoke('outerWidth') + .should('eq', ACCESSORY_PANEL_MIN_WIDTH) + + // Mousemove 20px left past min-width, width should remain the same + cy.getBySel('accessory-panel-resize-handle').trigger( + 'mousemove', + getMouseMoveOptions(-20, DRAGHANDLE_PAGE_X_MIN) + ) + cy.getBySel('accessory-sidebar') + .invoke('outerWidth') + .should('eq', ACCESSORY_PANEL_MIN_WIDTH) + + // Now 10 px right, still on lefthand side of min width, so width should remain the same + cy.getBySel('accessory-panel-resize-handle').trigger( + 'mousemove', + getMouseMoveOptions(10, DRAGHANDLE_PAGE_X_MIN - 20) + ) + cy.getBySel('accessory-sidebar') + .invoke('outerWidth') + .should('eq', ACCESSORY_PANEL_MIN_WIDTH) + + // Now another 20 px right, which puts us 10px to the right of min-width, width should increase 10px + cy.getBySel('accessory-panel-resize-handle').trigger( + 'mousemove', + getMouseMoveOptions(20, DRAGHANDLE_PAGE_X_MIN - 10) + ) + cy.getBySel('accessory-sidebar') + .invoke('outerWidth') + .should('eq', ACCESSORY_PANEL_MIN_WIDTH + 10) + + cy.getBySel('accessory-panel-resize-handle').trigger('mouseup') + }) + it.only('ignores out-of-bounds mouse movements past the max-width edge', () => { + const movementX = DRAGHANDLE_PAGE_X_MAX - DRAGHANDLE_PAGE_X_INITIAL + const pageXAtMaxWidth = getMouseMoveOptions(movementX).pageX + const expectedWidth = + VIEWPORT_WIDTH - PRIMARY_PANEL_WIDTH - ACCESSORY_PANEL_MIN_PX_AT_END + + goToStartPage() + + // Resize to min width, without mouseup + cy.getBySel('accessory-panel-resize-handle') + .trigger('mousedown') + .trigger('mousemove', getMouseMoveOptions(movementX)) + cy.getBySel('accessory-sidebar') + .invoke('outerWidth') + .should('eq', expectedWidth) + + // Mousemove 20px right past max-width, width should remain the same + cy.getBySel('accessory-panel-resize-handle').trigger( + 'mousemove', + getMouseMoveOptions(20, pageXAtMaxWidth) + ) + cy.getBySel('accessory-sidebar') + .invoke('outerWidth') + .should('eq', expectedWidth) + + // Now 10 px left, still on righthand side of max width, so width should remain the same + cy.getBySel('accessory-panel-resize-handle').trigger( + 'mousemove', + getMouseMoveOptions(-10, pageXAtMaxWidth + 20) + ) + cy.getBySel('accessory-sidebar') + .invoke('outerWidth') + .should('eq', expectedWidth) + + // Now another 20 px left, which moves us 10px to the left of max-width, width should decrease 10px + cy.getBySel('accessory-panel-resize-handle').trigger( + 'mousemove', + getMouseMoveOptions(-20, pageXAtMaxWidth + 10) + ) + cy.getBySel('accessory-sidebar') + .invoke('outerWidth') + .should('eq', expectedWidth - 10) + + cy.getBySel('accessory-panel-resize-handle').trigger('mouseup') + }) + it('can be resized by keyboard', () => { + const movementX1 = 200 + const movementX2 = 50 + const width1 = ACCESSORY_PANEL_DEFAULT_WIDTH + movementX1 + const width2 = width1 + movementX2 + + // Opened by default on start page, so we can start resizing + goToStartPage() + + resizeByKeyBoard(movementX1) + + cy.getBySel('accessory-sidebar') + .invoke('outerWidth') + .should('eq', width1) + + resizeByKeyBoard(movementX2) + + cy.getBySel('accessory-sidebar') + .invoke('outerWidth') + .should('eq', width2) + }) + it('cannot be resized by keyboard past its min-width', () => { + /* If width restriction was not working, this movement would make the sidebar + * 20px narrower than the minimum */ + const movementX = DRAGHANDLE_PAGE_X_MIN - DRAGHANDLE_PAGE_X_INITIAL - 20 + + goToStartPage() + + resizeByKeyBoard(movementX) + + cy.getBySel('accessory-sidebar') + .invoke('outerWidth') + .should('eq', ACCESSORY_PANEL_MIN_WIDTH) + + // This is an adidtional check to confirm growing works immediately + resizeByKeyBoard(20) + cy.getBySel('accessory-sidebar') + .invoke('outerWidth') + .should('eq', ACCESSORY_PANEL_MIN_WIDTH + 20) + }) + it('cannot be resized by keyboard past its max-width', () => { + /* If width restriction was not working, this movement would make the sidebar + * 20px wider than the maximum */ + const movementX = DRAGHANDLE_PAGE_X_MAX - DRAGHANDLE_PAGE_X_INITIAL + 20 + const expectedWidth = + VIEWPORT_WIDTH - PRIMARY_PANEL_WIDTH - ACCESSORY_PANEL_MIN_PX_AT_END + + goToStartPage() + + resizeByKeyBoard(movementX) + + cy.getBySel('accessory-sidebar') + .invoke('outerWidth') + .should('eq', expectedWidth) + + // This is an adidtional check to confirm shrinking works immediately + resizeByKeyBoard(-20) + cy.getBySel('accessory-sidebar') + .invoke('outerWidth') + .should('eq', expectedWidth - 20) + }) + it('can be reset using the view menu', () => { + const movementX = 200 + const expectedWidthAfterResize = + ACCESSORY_PANEL_DEFAULT_WIDTH + movementX + const expectedWidthAfterReset = ACCESSORY_PANEL_DEFAULT_WIDTH + + goToStartPage() + resizeByMouse(movementX) + + cy.getBySel('accessory-sidebar') + .invoke('outerWidth') + .should('eq', expectedWidthAfterResize) + + clickMenubarViewButton() + cy.getBySel('dhis2-uicore-hovermenulistitem') + .contains('Reset sidebar width') + .should('be.visible') + .click() + + cy.getBySel('accessory-sidebar') + .invoke('outerWidth') + .should('eq', expectedWidthAfterReset) + }) + it('can be reset by double clicking', () => { + const movementX = 200 + const expectedWidthAfterResize = + ACCESSORY_PANEL_DEFAULT_WIDTH + movementX + const expectedWidthAfterReset = ACCESSORY_PANEL_DEFAULT_WIDTH + + goToStartPage() + resizeByMouse(movementX) + + cy.getBySel('accessory-sidebar') + .invoke('outerWidth') + .should('eq', expectedWidthAfterResize) + + cy.getBySel('accessory-panel-resize-handle').trigger('dblclick') + + cy.getBySel('accessory-sidebar') + .invoke('outerWidth') + .should('eq', expectedWidthAfterReset) + }) + it('reset button is disabled when sidebar has default size', () => { + goToStartPage() + + clickMenubarViewButton() + cy.getBySel('dhis2-uicore-hovermenulistitem') + .contains('Reset sidebar width') + .parent() + .should('have.class', 'disabled') + }) + it('adjusts the panel width on window resize if too large', () => { + const viewPortHeight = Cypress.config().viewportHeight + const viewportDecrease = 200 + const newViewPortWidth = VIEWPORT_WIDTH - viewportDecrease + const movementX = DRAGHANDLE_PAGE_X_MAX - DRAGHANDLE_PAGE_X_INITIAL + const increasedWidth = + VIEWPORT_WIDTH - PRIMARY_PANEL_WIDTH - ACCESSORY_PANEL_MIN_PX_AT_END + + goToStartPage() + resizeByMouse(movementX) + cy.getBySel('accessory-sidebar') + .invoke('outerWidth') + .should('eq', increasedWidth) + + cy.viewport(newViewPortWidth, viewPortHeight) + + cy.getBySel('accessory-sidebar') + .invoke('outerWidth') + .should('eq', increasedWidth - viewportDecrease) + }) + it('mouse resizing works after keyboard resize without blurring the resize handle', () => { + const keyboardMovementX = 100 + const mouseMovementX = 100 + const keyboardResizedWidth = + ACCESSORY_PANEL_DEFAULT_WIDTH + keyboardMovementX + const mouseResizedWidth = keyboardResizedWidth + mouseMovementX + + // Opened by default on start page, so we can start resizing + goToStartPage() + + resizeByKeyBoard(keyboardMovementX, false) + + cy.getBySel('accessory-sidebar') + .invoke('outerWidth') + .should('eq', keyboardResizedWidth) + + // No blur will occur!! + resizeByMouse(mouseMovementX) + + cy.getBySel('accessory-sidebar') + .invoke('outerWidth') + .should('eq', mouseResizedWidth) + }) }) diff --git a/docs/line_list.md b/docs/line_list.md index e117865e2..f6e23e833 100644 --- a/docs/line_list.md +++ b/docs/line_list.md @@ -226,3 +226,15 @@ To allow more space for the line list itself, there are various ways to hide pan 3. Each panel can also be shown/hidden by using the "View menu" in the main toolbar. ![](resources/images/view-options.png) + +To provide more space for the content in the "Accessory Side Panel" it can be resized using the mouse as illustrated below: + +![](resources/images/resizable_accessory_sidebar.png) + +Resizing can also be done using the left/right arrow key on the keyboard. These keyboard shortcuts become active after giving focus to the resize-handle (by repeatedly hitting the tab key): + +![](resources/images/resizable_accessory_sidebar_keyboard.png) + +The "Accessory Side Panel" can be reset to its default width, by using the "View" menu or double clicking the resize-handle. + +![](resources/images/resizable_accessory_sidebar_reset.png) \ No newline at end of file diff --git a/docs/resources/images/resizable_accessory_sidebar.png b/docs/resources/images/resizable_accessory_sidebar.png new file mode 100644 index 0000000000000000000000000000000000000000..757452d607147c35ce3d89345a7887e6e062f5a1 GIT binary patch literal 312026 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 z

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

A4M1s(zo5o&W2 zTd^ZKqSX|9E~3^bu=O6(Dl2j<;i8bA6*Frj#v^r^?}zO$KEFFS(Afv{-l|=pE#s=j zw!87=d+nPcT&PuIDxXT5%X0?H81QO;?2YE+3EZs;!m==@XNFXA2Y_JDf_7bpy>^`8 z69Oq&k*aNz##oh-*$YuO6~vV2b8JU6rZQn|Bb;YoGY|T^FQdWJNT}b^e01AseYwA# zZEHN_B0B!L?U)oJs(q)+9;6oxxgC-A zq`V(;xH}?vt%E=+pbL8u*<%|6;^46{4#I`G_eKiPxba1JS_lqD*tI=6f6?sUbT{27*aIf&`0XK?sq4A7iEK`dfd}UnzLJFPyy>cLas$uN-`#v+0ucfS z;3c`9GMNUo^vY(hO$7rhbj9fufi&iTvML3N$H-iMWXp+609%1K6by%6Wetyk@rDHo zILhQ<`t#?fO>mjrE#kJQ7Z3mzssSTr@p5NTdEw%l!Ri@*=O%kgS0@Q@#(Q6db3z}@gc`jc! z95j*`kKP^h10yAG!|VZ0O|~e$#Cnd#A#_q^2rk zQAu*WQ5P(DA^W7GB3e9(2NIeL*4hS%Ak@t!W(e7q>%ot7&ct!;Pi~qvnb@R zTMSNpQaogccroj z`))8*_)D4}V7yK8^3M~fQ0^H)e4Ce*0OjDEMwmbQO9!{f!0W2%dE*#)Fs7`;+>Ku& zJcg+EX37$iW)kYn?I8O|A5-08G;$N&3DD>(g0m`>4A%%?y$wvLU#E?rPRq{G*_Y)j zZUtTI=s_cIVi1SQVP723HtCs|;?}x?NTmM2G}{?`d5&MPyz-R*AEiWJ6X<(BfJh3^ z4M-Zz=vmm#jIz)Nwo{rx$v)5bD@UYrBm5@l&+7)|DBPgPk&?)u8?76#fX4nwi`?(1<;x^d$woIs%4cblb}j zGEA4L4NEA5B+Y9`gaIQLp5jh5P(@>^OPKJJ1u0bFrUEIOyg{9joTEq+@@a%J3z{Tg zIzzLfx*BPrt%uy3g!q!|LPlpBEMVw)gCPt)9YkXpdK4(D7^@qHV}UKcVhWwSS3 zS&*xD=o93NSmcUbi%B*bY8<{M7expyt0>&o?d4~=fN=co`2eQs{#``q^JRYn!>VlB zGIXrKh<0zhB`=s6qLYz7D;Ocju+erS=YD-ubb?6ca-fqP*0|k~8v2T)C;ydn+#B~UHk(u zD|}v(RymreepJgTaS>HY6cW(ku5D|8$)|9Pd3HGMjtWUm=3>6s{!F9C^#(J)D~pne zrDhR%Az;5k=l2)g9-Kx1b+iaVil?+Kjeh~cR`{E@2}cZipDn4cAzGn8_R+-?6OQK% zxdA*Sx)6W_i^=Kua+D|hSYU&D=#Tm05UCW6_OpaI6fwiL>j9rQmy00B{0Ipvn*c zs$H1>l>`Ifoasvl#MmBJO)R;r*vQfrAdsjTbRY+#+yn`;`*yqo?cPdZ3*R^(Ha`L% za&QuLuJnP}z_M~`=oeJfdX#zz5+`&iwvLg5Ks<7%D~~|iAZ!X|fO(&nV+dN$pmBqn z5fCQPH}KnQ%y_JPo!~5+RAJORAD%(3`1E&gB#j`@rBLFy$J*jY^zg1{<0kpxxG9m% zBc8csri0aipGIlTYwi?*D@{Djhz4J1@6@}XRA}XZETZTmf^6ESGBkSPQjD~i!6vRY z(x=gqy~csE)F~E@<(;XMG-jW$2dbAR?8{b>Z3}>~C>~4uDOybc<-8*&pH~+3*OYS0 z5B!ed{v$^!Uz{3-qR}(211z$w0<$#SRE@sT4+lvv>jlqP-F21WJmb`nl5hUZ=Y&6A zFTmRB^kQpm=I3-OWA0jPS6X9;s6fj@iGu1vkDKg!Gj(l_hof9)hHpc)iSKVH=~qHE ztF|^GX!1YG<}?laQ}zg5VP-Ms{Hf3Pi_7=B$fudpQ2*i<7SAcvsxggXxFwo*G_7_+ zfzbCs5`-*J-@V2%u-8Ww5j(`S0JgCa6R@b8GbQQJ!u-4>4BE@b7Pdp_rba!*_TKyhM<+rc<}RXj!xI%4B5>*Wn~e9> zNo9pwfObR&bZZfaxdZcVRUSG?Z@P<0R_pI~I)E~EuZ^VzzIXzaq{(*pB~Vw0cTeB+ z_>WfqgSSqN{z#~@Tb)LQGh%r7y03lxR`@|xU@DEB;S3I?;u?2Y*n45uhd8MGp@n~6;&+(8F z2%f9Fg=^+>Ii?fzaGI%*&1}Aa6*amo6u(=L@WA5fv&|Hm{wVBg%F^=C7)T(kxP*}@ zx?u1veoUUY)x7%h=l7B{;!&hgzvvh{Z0*zt0nf=f)C>?hxu+Z}&qa?j+-IjZirPJ!Dx5kJgr)Je#Qb;6u+#i8%zm(haSM0b_vMT))g-zB(pz#t z13`5P7@RW><@bm>cJKn|!E^|Xj9*Qy0r6|l7Ky@fe=kf7CIW_vr9U8J5*ue^LkC~A z#6Ut=q0|M80+G;&O%v`Xn;tXs-PX9x)h*nIdvL+kvJnrREJ`f6{Yw^Xog1|7;5Z@pfHX~k8Hbf&t!w;H5JCbpTx)hD1yXkMI!{0?e19#tH za!VRwjcXW3*cT@fOJ%*anm10kqY1(KL2Ywre+ximG+(E3JXOqM(xJZQsb>Rx?~aX6 zkM|4jX!<8UP=QEakjok!#cWn&JM6EiiPz)|l`!so<=ca8tPHuiO4^bY!>$^qdpxAq zhG+C$N#BI;qQECe!}A8Xx%={O?#zE^PHfc1+^qcPb{*XLpYXZ5dOb*yvoI#ExZz4@ z#XBk!jO%$_PSqYpQODS|-sax2QH7ToX^b1T?6zwQE%7U|V4FR@v;ZniR_{#GMrl4 z`IRR{RHj90_=YZ7Qfj8MDry~k!XI~G_xAE_;l25Oc$siQ?J17q^!rYEpOCQ#DHR27 z6Dmz)2!w_o4)mYn0gBW>n#Yj^Mcu{a?-Phzf6Dp5>HD_f>|nr+1q_5jWKS@fYfmr5 zve6Usc?DCWMe&JIT?><()7KySU6s{|!@7=UvfE6+r};DEm2v??GUFEdc5;V^eF4p- zSut?is?N`RygyV3+-}a3w&Xb>KY0R^ zWOEybz}9-x=UMujSW}yhb#e_F+gq69^#ncW&1=)<&ny_o%IMz_4GVq~kig{dMQ#q8 z52&wjmMQwka@9r<}Is?Td8l*oDKNUJqis;f2wREWHw1(?H`ymKlKi8Ye4# z8?)1}7r*81cI)bWfpseg=eyBdy7F*)ew5})4&!e#CS1FvLtR}vM`vUeQKJ>1*Sl!G zILirCtjktS%sZz#8iMvF3U~jC&WVrgofF@WXz^7!LzGV!613x6&sPy5@7|(%xLv!U zI1mhO2J)g}7M!H%gzn0njk!uo__7?3< zE*#b@Ld@TALYBqF*d!Q4UbBP)1`b4vtUC64)U_2D8Jgna$ecy_FOp%q?`2jPo0B`s zK77VS4+H#i=8nXt75v`~S&uS^P8v3wO2<&sUiNv2fB!y}I4ljSsqQkG@a1Z>5V;R0 z%ZXtw>1M(*LgywoI6R@qVQSl6BYs~Z!Zf8(sQGzb1}(`cve5Ks%1n!UsiP{a2W11n zdB3{au~f!YOxx#_a?ZYp>5$4>Rv!H&-kt497rUfTFvlczVkfen#vq=oW)atTmb%@X z=PW)lU@j~`Xr8`tCgF1G6}C!1t^^OqJ5{#u?G5n12fH_CnQCTe^KKO}%C3AB!Zt*T zLw9dSNv#wZ4l!{I^8?*Ict1y;-fkFTQfD0q>EHGtQ#q#_c zXEY8}B8CX3#W$a3riK!84mdZE3c6Q^lJQT+AFuzyd>KZ@#p|;kLOZ@iJ!_J>j)L{E zcC&J{Sj_!HLoHOFq4RRJaw}JVyyn24O25YY={y}h8KL|Yg3#LRP|Q|e-ydc5hh)LK z-Kdc56XuyJ?5gRSIhbyP?sBEPJz5$pVTZGseF=5P}(IFoZ2z`^@}mM z^W&vS@w3d&B-upoGDcPO>cVlHHBljo>7`zx%k5@yC|i+_w9>3^_*c)|xOfi8fO44C zv{o2&AjgdnX#i~syVAL~@gqCPv5*cWKGL6zZ=uG5$z}$dqAU43xq}HfUkw34S4}G; znF%oXn1hM?;D-}V`SV9L5Oq}TUCqL%Us4jwP7`9>A^zEt(yJ1{H3L?|Ia2+HH?HrP zVukK@snBW5SW2oukD`RPF=866l`$6a*C~APv*mK{_YT160#I#yftXm2)KI9)FzIbKv3$uy`HnM z3Af^Ym?|*|ZKTlONp;fKXI11XMBke_d2hJl$G$LC_3lTqQ8hY{FP^y{fL+t_ira0+ zn<5(s`oBO z7s2b|2+Gb`&-RIm*ORyK39dXAyeOMzCY}K$=ENDTGAXtIm*)cdvr-qom4-VWLU@go zdaCWRRGz~QTLI|4&Lfey4R8$)q_+gjItf=4B0OhMnWyhvp($i)w}JplVefwD0n`Cl z#}%8zmI?G+Gm*`=Eu!M?u|eB+J@#R`E|hj8-DAtkz_l*y`q?e1+OehV|UfsF6Uf5xdGiVj=T@(0-}d zw0_Z`EAx(Yzpuvc1G^77FN|~=Iq94J!<_BFwYdrOI36w*7vB%89kQti(@?hcN=~+m zPr9WOOh>HlpYP>v@ND+Fu_sx`1jh-2{ZVn)=%Ebq3o$`+0Yi+P>fR(zld=9G`Z=tq zNUKFV7)z8pmBKnS2PJK#L`iT-YqOdZj0O41MR2+@pG&-b2r1md=*yJhEWF9L|J+BN zQbO>|JM`2Qae>B?5<*b~@&nn-Yb(T0CS5N;j7K6hO;uD*N(r(%KnQ1o-x@r=>4U4j z`rNp)bNoA#Q+b_yeM&T`m0~%xOZCa(AIx);VXd#NC*Fjf)lOz+ZF9)?MG_BZcO}hB zllF4d@J}afUA_vWfGAFLd_^Xq8Ilj`%&<}IPbMus6G31GEK9<&EF;FEegJQKk?#YI z>C3$rJ^-`nDCw&+;|10m)Ti>?^sO|kc_nh8+}S7xlc@9D;=j76zoCGPXpzW7^c20P z%o79ASwfz-zmFZS=FFhoA-M9UBCI0J^K9|n$u_l#w{MgAT}r8U$X~Veev7;vp_2gj=_;5OqlindF~x&e zwm#Npb)#D$Q{U?{t{KQX10W47xhLFPF~cs_TPBK4*H;I(8?3;{u<)g|q;UE&Y*`8D zD503#iMsw^ycHDl7h@m7B)%EuiVG2fA4Y_~h2FVm89yZ#~!F5k1asz?!vO zy;v&@z)lAHB(M9aOMs{u2hD8fz5Y!Vg^j%CzGSQ&U|WUORF% zYy)@|ot4&;qS(;qWfC)(`vd7xMHri-2WKMJBfr!1bE;h8m5n7l9!T9s{rz~>P}}V^ z{~erpbu(O4mrCFGe=8iR-N*Oh}n3;;Ig!efC;)?GtXwjv6BkVzKd#INH zd{XfH^DG8>9%=C;oy*VZh=Wh9Y1C->#TeHi?!U2HoZ_d^B7FWDKYk+<$01t|XQ{Ll zURs3~Bodq&nGN-ld&t>7EXd#a-7z%W{Qk9t^Z2MaV%K^}QMscS9{uNsO}4V55pxYs z)syal%r#+SA07fC2g9YfA#k|{xNey4M9^ogo6_2n1}~mHd9-f$Ne3|I{{mP zwA7uJaHD|~paH;x#0Yd&19??wDW-XSfEAnx{Q)$l0T38bys8H6`Xb-J0Lm1}r_SR* zprscccMG692mZ3dcE($>!I!+kfOmMv(sr@_n;MoHhA)?fNEn5%-f`mrGeWlKULjUw?U`Kj(t)j2iPynz6`7ZBfD87*z4?F8es zng$aUO&iAcDkLq~)TJ`HnYhukj*P;&&jTI`>+i^`p9w0!(Yj1$i9tTB4SGmBx7T|U?9M8Ay z2L1ffu+1{F>v3kA$jk2;eCF5{XhQ?hbC0^%TVj;uTV)H5;33duQ)UWW87%_YvSPI} z7#5Y(MG8Ny+3!swwPmgOC$||Xj?0?@UQ0|&mgt3(dQpY@KNf6eSETH;H)qq@g^B}4 zo6p{N6YUcq9x$!Aw^OcnFkGN=AVoMuo{%#KDn14=w*phr2=9(H(eoH>fv3BapUZ-E zRougIU0V#?dfZ^4bZG-~-b(6 zs$c<%mXc~bsXKA%dKQ#OLiM20aGv!SBVQybL_7?RYl2t~Ud?4LIL(NO;DB<0$W!7M z3B?qYV=26RpGMv&#^9!0kJEa&Q60S6bYvNKfnr|CYpkSKYUw#i z!@p9$mQxC>`Xb1g`D#)WVncvlc;7sNZ=!bI;~KWl`;6H4Gu)oAS1g}=WsZeci9FAk z;s;UE0h=nxd&nZ8f#$JzrL}9(+Cg@7GfX=Ul`P`HQ((q-}qhrYzs&l@&Xbalq!|vch9h>eqEtz7UFxnL}^rXYZ+& z3E199`Zr$>p|9n}0^=|%&?v^}?ufcR^`eYK5w%vIDC|8U zf`PkgN69NHZ{`u9$AH&(=VR~wC}6L6o`;b-4OUnx2}#oOb|bw+Ef3BSENgy9YV~)4 zkd!v*m7w~kPa3x=l8fYJMF?@(2qND<#9JoX^UA{3?ttkjW+mO_gXJw1%nX|j2!A%2 zd-g@xYA{QSFHK!YX0Uf_N2zfm3&~U1+NxK2v8GWnVfv^W453I7$U3rgx;d1Mb6zoW zshOlOS~E)X)Jku_HMFz$NcPz-$m2w8!JF6kgVQbicV7S;GQ|)sJfy$q3>B5AB>ISy5mmoZgh7OVb4fLW zDndstcLmDn5I*ytb>ki}BFqVfZ~RpO81;m*Qm72iyS=>bA@R(_+ME_oqfpTwcdyUW zPNEXHS$pvW_<=Zh7jd8)z(#<=?WE;8lng<4o#-XM67$+i7I+Z7cUt=U@vo_X*vH~# zi)tK17nNT5D9M8WYxTO{ha9PI0!zArHjI}dUKW_OOKSl~^yM!Bw})PI^ah^aUB;;b z!WQ%+2M`PjF6#t8C*N$R)K;DNtE|QtF{F;EE4^>!L;kf?N4wlEr9Ea}XQ~U7PW3`o3^hD{8ay3=ZXiN9y ziiPnCvsS?Ji?kQwP`s``Qlk|^TheO@9FR&XpVRab-AHth#1ae8SMUwx*`{lH-X!9` zqIPq=AVeBM+azea$q~4^F?WN7NN&39q%oCf?`KQg8*@Ta>dh_ceSd#mf+g1; z&g&fT0IV;gjV+WrPgmAn=~t`erzXg78e2F{ayaQMgIyOhqzL}lzgl^Q;E4SeLN)#06YM3 zi^gwXEerG|`KtPctD(jZzHD^rRKGa(_?bLK3g#qZXu7%5&SbTYT>&~)0B2+^k5NXY zK#UiUjCnN=^y;1k4;MQk;pAdL+6u06h0?8^_d z0r!-p%xU0n8$s;P00n*4S+2vc838kG=C-jEPRx073k7#dk^o=d8V95i(B<5YJKpdk zc7@9L_xT^z=JRh)vL23l*?In^^i*ng;IV)mK!s*t@=48xuO8UOI#GIBguU%QQIqMH z>ePjhRusd^7ca=e9lTIppo-%6-GY1{x4GLYDEO_}+yIJJ*j~iNLxwR~f@66xJ4OD^ z7JTiRWh-w z9g$Aszp;tO8Yd~Q%Lw)TtP95fX@p5lIC(F8GF4evhm9}7|3Sxb`Q^WnB zI(&DzhwSs_g$Z8;Iv2@!wGD~T?yYN~U0Z8>wpY*<@&(-J<#>qtigyb}`^53`W-kh( z*s~Ad*58Ls#!MJhzUtkzg*0l81{*z(7;pK%HaV{?QM6n6EzVA+elb~DnBx`X+!I2! z>V9>|+;ac2^n;AHP0bGgN2So3%&JXOuu>o4bi3Q=k8F;CT6km>rg-nH4!yx=5?!j| zM92fmhX2g!q6k7|t1Vpu+2Rg>AYdsoIn%tYS78~Cn#oDjmrZ=$(K`b~L{dCzH|}E= zyxee1&NtX`un=P=^V6*GeiNOS!8mLR@N#SGVV=I9$VJ8^e@EfX@!@Lm`je3bW|(k> zIaGX^HvlU`M%b!U*t|SWx~-ylaj%&Y<#j%G`v+%QRS%>-6u30&#=YDgTGaRNJ`jxa zigZO)^1>^FQa+XXzmBzQG|5gK*zt@J0NWEixe5xR&w$uTY^tN+%$F-v0wFsV4iVYk z258HAZ^sTqg$6Dw0U>a=N6NW;51h=a2+!<4I8YY`fF~h6hq{3h72#T3Mfz0+ww>bI zR;I&0qN52KJ5_1-dM9Y&t~X2%Jt=^sZ$f$ZQrjSyt^*?>j@i=F{pU)~wnS+WS&%3& z9m|+GJ@p~MxnzmW$r4_ZA$Ad0RCk~KcQ=+ zl(E(2{fup!l34Pj?sNQa++o?-!olafOvXq;e}w%iDuD@6Yk~9#)X$}X~iK*kLn1!K{u%uDY3*WUftG!hd3 zz$rN_G2iW=H-4SynbbHOpQ#81T=uj|IVAY1g*imBYqw*H1iL(c?i>$JI7@OB<*hj6 zcX^=~T|ZRbkd?l&pkmU%!mF0sb>f}vE-unQK%Xo}WSGFyWc)tfuBjVyY(l?#+JzO> zbkd+mHli@<_gb+5`!N0oGZjGm1l(l&IB$EQH%4wXZ>@^3|bVvxA znJoojt+_CY)871_aF8(I=nkp2n;9r=$(y2~5}yA`1%+w^Ek&gE6kHM=g`kcAQ*Xg^ zpDv~&)k|-Q`I)PO8Evi^;56m2!2|{J+g%#1^Hf&%1~2*~Gb!V?&Ddh2S)<+^OlEzP zl1~Jx&yd!;iBL52kcSL@1BFDsKh7h1^^w%Stu-bGeAx-tVv1WgP1Fm&7Z!GU)Ju_R ztMBn^V$x!W_;Xht0RS81l+1HhqcmmNdKGZW_4RDUv)UN?rN6N(k&q`pF3Q}P$G=<2 zfVih;_Tj;ciheazH))Rq-LVVrPPll8!?3V0kv9<8l290>x3VS*Zs^5GIt{;MbD=hZ zQjpU@UO_kWikBRMncSh*Z{3x`gAJx+YmRR3%PpmJ&)BBsSnX>^$=pzf4OraPp7epQ ze-QPAM*>A^ol8dcWxeOEfS?6XqAEAO%MrY;q+7Y=(T~_j;wj~I*D5os1pB_(5p`|l z2=E|E>6&r7=agiDj__{799E&wi>$oM3u(P>-hZyw^5mWBAvfKz5&h7t;4L<7+zeIF z!*)sYK5|R-VY6Wauej;Lc6!|0PTw#Sr8m>0LKDgc3Gq403psr4gnaJ|sJ8tFwitDL z3wb|36Ii3iVHZ(@8t|xe!_Cj^3pgWN5jbtj6$RpxR2dBI2S1P)y4itNnu7}(2h*ri zc|4A%ih{1r5(|FSq1>tQTpm}|HkYgf9gIS(rlH*Ko z06k*`=|wb9Ec?sr%gE$d6>Nf}d!&|~Ojj2~yq-#U&v^E&y&pWtA<*2#=Ed(t+273K zXvIEa=2fiU4G0y8fq}tj$Wi?zHqyH=CSCyA#V4>VuwHarCjjed{?}RuoM99ZG-^L$ zkdiD=zG^SlL~WJsWNg~A;Ff8&CYF*nSBBy>9HHZT+R5U~1;Y#L1sIAO-~--q!@$W_ zvNJx@aVh7uV&U8Ffe62eb=V)v65TguDc-p$_5&8MV~-OVakta0fn3%bBeD!zI1r41 zVd>T}TGBmVBhMTScP3bI5YDO_?xy3`_wjn74Na&pJk9k1HCa-q2+CpO7Tt5$vP14p z9@u&oHIUT<_^tsjotAmK$EX}Yy5@7;D!hHE)LZ_WH9Sb?>aS(|lGq@i!f^wV6KC_s zUVC2IsPSKNi@(oXqagfbtTZN+w<;Xn_!8N%I1kVM(${$0?zvVaQ`9!ngU3lA zVM6>(Z8%=9y9-Azz6AD11Nruc{BT}nzL98!pOYOIKrM^GD9ybmx>hCQSkdP$tNHoq z*>UGs-BEqG*D-HY(zpwAM*SK|xM0S{6MU+7xAWJ^MjxNYI*(CYQ!B=gXcX7Wc-CQX~+bh>c6hW!Z6m z+>I&XEMrSZEmnP?3tRBFXJ=(Ua0t`8TC!s?Y^Y+H0V|YX7pe*K7bO7&xr}7n+5&v- z91^fxtP;b43%hC3pE>fTlN_Pl?_$yr_#&+y4ZVN8Hc<=8+3noCLriK3Ft?>a*o?@u z3Ly%$m8VBA+P@*AY{aYnfTP4_5Ei->^+5cSu1T&g&Tb-CwVJ~!KY3JY0EzNoEGy{v zH|n|y9ZTCoq36|{I&vD^r&lA`#DIkw1{4zaH8ZQNW+ad?bb31>Ti7FT$&K#=H-bdH z`=Ev>&M^-vQ5D^9sYlN26Y2doXdR;8m;BzU)n9U?k%nZp;u|O61TM zjrEF`W@*SElKqw4u<9?i%aX#k0DfH$pZx#16=Iki*~sJVLcOyK2caxZAs*;TdYX-C2dL)L7cCWVJwx;$NS+- zt-x{#>HIr7bL8zg{v0xBRnhT(Vb6l21C4x)6y--41x{8BH)#^JD3W1pSfRIQ=)ZEBe=92pKRQ-j{TAqiIuYz9 z3C-D~m2R-bLWievwDR6A5oUa9z1uJP+>jV*EhmmS2Lj~}_xyfQ*y`Ene8fy*C%_TI zlP3N@V-R@bk;pfsmfZ$_aj{|l#l9a6?@lfVDurVCrn;_ET3uH8D^Zd^gw$YHPvL?lrEGe`e3Pj_&%OQr|D)%!h`t|@Ba zGZia)pkKO^)Le*N-O zdue6i$DcJBK-!lUbMxuj1|X(m3lMK}7uCfxL9+=>e?E8>3V_<}DM~)pq(Sq387B~h z(!<1;Y8Pzzs|*;G4ekMKSPUSZngIQotJ1`mDgF4EXO`sM_INF=9+l8?t+qO-obA6M z{okqR?|1&@lW?aEGA5Si1bIp6?b1 z40ej(dnRSEyiY!dT&VT_PDX)+*4LA7M{@?yEOLEc%Ldq}4EVatDR+%!QA7cL0uikm zX7*pDkzya1w`xzG?)w4g3;1Y0J`oH)_$*zVqO4n2P#bDG_JYs^8o~Y}4{dy%1Il-B zF=mnunXi1Mj8wo^{8#_xKhJ7E zkt^dZOJi}~PW*SF`um+kwjWTZlcSNlp~Q@bd*O!!w|Rr}(Yfd0W+MVq6NhiDX5E*uV}a2RdKWgq26fsQ6vbLryqfiL0jS?*Nx53?d$w_Z z1)K(Gq$M6R!)&neDEl)c0*fS;;=Wd|JDCElo(_j|LlWp2?Zf0l#w+R6%eL=>n7p8;6sh|6f&4#1t4I$)vpvzrMECMbH%`_+jj;dwkBmbuf7g}9h$OS8 z#4_YwBvO)2h>gdfwM7|+pzbRHvVv2FukO@h%BGr~ptVv;?DPWdxH}$v5%vWSun$T- zgOqtq+Ii(gh&RVw!7cE&(tWR83y_laYOSZ_xCk55KAUH1bSg=3uD)(^votlfE)|(` zKfrV}{qC9VuPkA1;kJrUzQu;r@_OEB6p83E4+C_{X4u1gnJ1zZ&l!^`iky3k<5${; zJ6yB{aEB&TTnUIqCA{QLh<}!GufP5OCfxw!N{KfZq5t2Hi-(B~n*Htg+DSmf-WYy2 z)EyK}(>(cTF_j#wdT63_?G)pxd>`W#a1}u7gTLkF=Rw~Ocidi!WLcvuf^s979zJ@n zr$#bC=qMtwJHHo=i!^|e-o*62!uAa;mX?8LuYpWndfp(Nz7KeVE31=QkIeJ#1rdC{ zX~SCNQ-yW)@5=EDc}{LpXYM&;Tul#~C8W<2IfYx|fTQML znBjjv15<>}w{3q`VF?<*qA)C*}DoqL2enFk+g_#_&*%q$P?ni>AAW76u(<- zhR=O{lS_5kT@UwKNuzMF`W-Ri*G>EP$PU7047%UtLARZRL(mszv3AAujIZN|gXB~@ zrU%;@-j18(DK|KS6{z59lo>`dK$|(y#5~(OAJmM;aFpNPj!k@hryI$CiUq@;wI3s~ zduVFDoL+$462x$tlpFJ3PR6itj`Y6o7x*{V^go-jV)(yCD~gwQps#qbWWWBi4*Yv} zBZBFB!y~fg8!IX;BG-R|M{imgN_{p&OW-CT!0+?H(nYagSj3poXJ=-9KPC!}K59rr zNY~?bh+D;YGT*=iU!>|S?{)%}$w3JhcD(5;4rpt|8N>fwR)7OQ$6toTTZ3tXYf605 z{|OE#kLJige;4M!6%bR=Y~Po6wSJE9nG>$=ffVh#f2r8JhtI@FQI;DiQpI^7kD44g znRM;0mnfgXg)gt$MbS++=-^@U04@Uwi6-jQC`7+S-{YO_EZ&z0xjt5j1@8zx^qbu%DRtqRE&@=om??%5`UOIC zi?HH7Rce|4eX+p)y^>><5-VQ;=cQIF?6pkgRuX5!W_%aoz#5e@?TFR3?M>tZUnO-K z!{XgR87)ie1x1yJgXU0PqMxb7=3v(Pzm7u&cox2`oR<#h%c`I4pT6LD`KZ=S_Bai;MsGOaLKv{*&nSEUvrwsXk5w^<}da*H`tp3ANdhWXx}r_fnt9xbPV0nJcd19lvy&gvyZ7bsH5BfRB3Z--1dU|4 zq=u=)#Gax!<#M47Dy3Q>b?%lmm0B&Q44!H^z&BGkQ>HIWPbX7T6+1>Nh^2-#@nS%+u+Vj;1lwNmNQxR-v_P!3q6^Nfc z-M4fU(luPzhN-G3{PB|B22y9XVo=lb<5c4?h}b?S)tRTo*k3kd1Zs%08TGipo=`S& znwxdh(W~PCj#2W$3$Th29&1y4Ne)Y z9f6|8i%onTiJaO!PuEkV&-z7e%wI77wPq40BVXxZ`5k*3T-a~wMQIjgJ2fe=8E3sw zzI;B^Me+SSH6_Ge<+ayBM~0c<$fzq;VZAp^rl{ryUL1yi26>(LzC!?u+TqV7x*6Faj;i z5JaUvE~f+=n-yTqW{uL8W3A$>$VJC<`SGHeW9ibLX|ay3wz5o;Qq-;Q7S+-zHkx#Su}$mx;1qH-+X$by4#(qNC?wJhvJ^kR=K;Bg@F|@fg*6 zn1(|+?pfm@VTS+B+U5M<%Wd>P`7zL#+w$H0aa#mfyID@HScgfwcC$cRM1E5fV1>MV zkBH%S=O;3!_;BYh_GzPMZoEPiWpA;BUF1zBoG4BYH!W|q3PI!4596t%Df<(zYpOGa zkf)NZm4)^7FVfP|QEc70GP1Hi{(R0&aa<3vpEV3(d`nMnNY8@w4gZZq8sdCGN8z7M zsh@7i)W=O?a5XOjy5Z{);1iRRk_u}`?XJKvJ#n$tZtfB*Q> zqRP0>+e4Ok8uQHdGTI+?L<(X(hU=~6s}=bSs2FKS*#>A>i}Z#qzfjH=!G zi)&&?T}-{I*eZsp_5OHEjJIo+>7T#v6;5=OR&2Fn9>_p1N3dFH7NWU{VF%a&LnajXk#H>L z)KqwPm3yh@PA#tv=PHTCz$X(4aJtW|9~P#pruzz24y&Tk-08W%}^Yqq~w7 z)h(@a+0MT6X{o@8KqEk*OsZG`*x-Q@d7c}0o9?(>XQC$z{j zJ$4}%`cL$@Fh3&0D!yhLnkd5IVZ3Qba159cp})iTYA4O3G?d7JGWvKFFafW{zD@V$ zlecYqRG7mcXue*#{{(=pnf*~Pkzd8q?d-UUK|~wL)$VW@#~d|Am)8Hr-r zVYOCU_3d~{8gc2N!@JvYfY{ZKeYg)!D%KkYzE^)1$O;xDqW{-0@$6Fgm%mv2+TH9l zk4i(KH`Ay)|LpV(+n;yYiD5p0@U-&Me-`vkaQkjTCUj$TN_n~yF_2Q6@l?h*)9dXJ z$Gi^W{Adi2bh1ddxHP3DBq(IBhl8;Gs(I}ih|OH>bTPP_}t0}-bT@b&h2NVVGK z`K`^k04USI=VTZ69S949m5|f6TS;Tf-@sWwXv#zV&UCzvYa6y^_nNi zkWQ0j0>k5p2Y0Ze*n9_@oPD(d5~v1Z@i>edDk$q8mZ-UX_vH*`p@;i4tRtmncQDnN zN5kqHkG%Nu9npbU3hz6%*Alpk`_jc^6^#do4PANL!$D&o{(v-RLrG7SeEh$r^LWtz zuBidS6BvPo_7}xBDgB8bVSSVQe9*M8Lpdm7ink}aLHHD3`2Y~J+O~S55yp8n@J|Q~ zI)ubqte!M27t07^rC62zek%x9rlZ{}U6Sxq4rGTtmKw|kdtU4b9g)->q-eccOv5GzK$J-47>_>U^DL-3U7Sn+0jlJ#qo{Zn7+ zs^i3O;S00%tf>0j%^l`s=7uf;J5(LaVOA)h)Xz`Ou`mM>4!K{yF+?+>TX5XGF&y%O z=t`?;&17qX%*lg4dV2*&;Bn~e3fL@t!$_Rp@Jt7!opmF#Z3OM+>87b&Oa#16u}ZCA zUP``P7DB|1^qpA7=2zWUOJ1%`U_~Dhwc*6?j79;olV}5@qs;M;x`kXAAC@uN^Y0%Q zk0-@)lAFG@1Ve6@eLZrBYQpgHEGbPU4EDO=TQ-7~&`3 zEf4@5l{z21p75IvGkkc$DI>sPIeoH8!}`o^NH|*SMV?VgbP%Yi4%w;KRn^l@>80`P zL0wf9x1KN=Tdv4SExx|U*v-3wkR%~vfuA=iI!^^1prP5ryh2zGQcWo>M%|a6Pmf(8 zs_6BX0GwN{uGQPT&Y12_gg5qr~O3D{6v#n zmemkgUFj4Fga9$g;#KF})r)RfW?3ctQfNQMDuxoN1Ri9ZVa?ri=HXv);atH?&Kg5P z>9KdlY>4W7;(HBY0YR8Tl^9_#5C<+N16B95-VcJSlMrZ0)ee2G>ag0BQ$t2^=ql~& zxA`6k&i@<|e=Yd`oRJ5_&;WnsjpjcZPiZBkEULZzi7I|6@`d+Z%?IH;PT>0Glh3a8 zA6kx?Ufu7$rf@ru8)mOE$)|C`xql%;e>xPV^*^L4bCtTPETlw7_>~1=BtvF>8L=}w z6kbq<3u|lHZ7%1uPidg~>f@_ySKr=G>%aUcjWhuQGsu$kT~b;R4ol23ytSe}a7B%> z`$C+$pRql@;a&=i$MPTTzqN zxp|}nvu$iF;F5|qx^=Gxk#pXs&>Zlj9yTVqb&Wj;Zsm3A7~*zL0jW$^ zd$)!{Y=$MuhCX6K|rh`OZM^E}G7j`1EUq3giUGI6F5SXcs z(9ei++h=7wF3|SviM=uUWhX);0SeuQ2fm?~kdD-vk#>6j+s55&>zgjHU zm!*4*EiM#Ls;3aKIQpb;+We5qc&gg0Hk{?%Unp0VQ^+>0`*g5gQE_!TFF2RdtMleY zgWr|toiP2!n2KaYFUGMSO!7+&R=6sx66s$P4xz(6=m(Y-qW--Xo{lhBa;`F0DH{;~ z_Va$S#&kRDg5UnyJErUyT<%Y5EH!jC-Rx|2zr6lJPR#r5joIf?P412t)2a+Y2mz1X zVhZ+=RAeHW0d$tt1I}nUg;xrQ_z|8|bZ97Ll7%mGs@Kvd^-=OyJjDks=KVLwnWyUI zv3=_d-R|`$!%t1fq|^+$ysn9QZA2Cl#Ea4Wf(1Vvt0C15ZRH)%>JXqH)Hsk+pogQj%6br# z00H6P*sOAcdJ~X}X4SuZ2niC9ixE<;a+ux$t`;In32XS0d6?sevPqC2iz~-Z7~aTn zo!tSDKxWtCC?Kkl9qEceuBrO z7)w_ANa_E}MIznCE3d5oKOy`79Nm9ipbOHN-21)QCP!UHF(_{^i+^~g62b_azE zot5^Paa60hz&eN-7V0E2=tAR!8Alg->=w_KV26H0$CM6Dk0iYQj99UUi1q1gP_Ftj zR*X~1l0Q=pLsL_e%tV#RB~E3x$WI`lOq6?ezRs$c6NW+Nd5!rN*k0u+IH#yLqFBu3g>%*J(^NdC=)0fT-rC^rWjd@9n3!5JunC$0 zIe(O$>h-ytZ|0>6`2seVuA|IRI8}9Pvx$ssLo>3KS^NA)t?EuU^Lcoq5Wc8kNejxM zMy6kXT|H1IR2QJ`OVnd#y}L5<)(fBar;xR*LcE; z*A}hKm|)A5LI=4;ifBINn?Miam>5K5)zQ?hNNm3i`kCHPBcQoqGR*=Btu$CX$OM_8 z5>JqkaTU`%l8{S+&^Sqq3e^1sZL@dfIp>Ba>9{UKY#WEO`_{=) zdR&_o-2IGtHQ^XW$r~4<7|U9O<$?bmnd}U(_TlhB*EhvqX>FGX{u@{em0|v>ODy1T z{&vg&xs9Sd*=&N}u4W=;8wm2I)t>sJzB4&mvlW)#?!Su zTsb6KhUKc8BYqJlj7!NxOLH=<1C65P? z+n#)@pEw|K@+fW(qT3D^o6q!m*XL`Z!lpQ#C%e0#alF)^$~DiukJItCT-=tTpv81G?Vn2i^5 zP;Tu;@`HbMCaekvq-y-TM_FL&MSQtJO>OGmGpPNyUh%|@aK@2B!R4QuNRkE^vGeu_ z4nGeZYB{+tFr5UD&E-me?7j8xi|e2Nu7qTOn%|26R-zJ=#qpttqw@N7Edb@46M(Vs zvTWj=yl`_UzFruFZsKyfwmQ2dkTw3Htx}%}x&1+=U8@n}7HtG9jTKB0yuFCXOk>f* zONDNruX~KzwlU9d_2xDq|B}u)YU+Q>#?FzB8J(5v5tI zy0QzI&q^AENS_OKrJ`8NbxiVdXRdE|zaK}zA{+27hJ+Ev{|a1@LU^lGxXY3JGznh~ zG45G)ebxycGrpB(u6fXQMdxy}_W?;M_PMp@9oQ;X>cbCY<2z#V=kw zNQQ!NBa?idwp`q|>(m?k_qL)16C^*l>o{H_&HCGHY*ISjzgI6BCIS7>f4N99_)1jd zx>KPTLI|Kub~L_el{59>!A+E>RaVAPp0eJQt@zDdnhR-W>m~p$a^E4Akrve@kaHB; ze9l})_ZT^xL@p>frFCtaJa1`$|_dgK!WdtZ^q_e zA}Ylcz-i|XS}rdA9dglK=lOMpxO~ruk4zFvOLcPj7|bK)Lu^J5D4V%eqA zlaSRgFyqgt;ELN;WameHqk=O1Op0iM8~vtxlGje>MyYnqMvdj!ZCvS3&8a6G=5IEK z$b_Lye@XKx{`bxJl6|I!#enPX>j-TooInjEan>zN5IZ#fr(!ju2>W!&zU9b~E0RsE zNAy+PFaR)Dp(rRWaQ7RA7Mkbk)JKpsM*>C3Dm|7WWN4-+&V){fr$hg|4Ty~5q94%< zT^^W6Z>Skb#G$48PP(`e{RH`U#@!P#^8qy@BW2dOU(UcF6S1qXww4~*na?Ga;|Y)1 z@Xy7|)f(?KzPcA^|nNZ0*y`ikf0CS6Ln`590tWH##@ z-SK$cPI>CIzU76sVckn#&IOKPM~c_+O2d;Q#+Ul%w^lv~(y|c>X_()2JqO3L9Q!&a zjpE^}-9B)e&3b|5X6`%~WmOTxZRoivO)bj_MC5xOQIQe*>2=d&pYts9@tXn^K9BnW zb*lZZ#s%$yJWw)>q-?_nezNh64L!q6`%mFm`js-)%lSdgXJhFc@aIcJUj6R&0t^H% zDDy4)ukA9uYG2}M9CqgYIg8Eod-r;=qvBLc)Ii#&2FJKx%iM{tHzn*Wy?)xD{#_~i z^QVvzy4AsQvax7wVaImN!OlR*B3IJ}v(EePyL$r%kYY53|03BzQU)nG02;Q}N1kzT4@-kAN$*CT=k?aCh4hw`P%2f)H0Q_~ zAMIjyN8467e?$T)i2A*|{e&>QG|4GsN;vy1AFbQ83q*51207Tbh=yxBV;GtZqQxo&@==Zo?DT&NJqc*6hAcM|_ zkHqcmHO6;Wv0~@=hzRcpFXu^8C8Dytu={N=`qhlnu#}$>NIUdXs!BsgW0UW z)chOW5!B}se`BL9TPR*q|DJHZ!mpz`&A?uGUhrC;;@?|hVG`lY#coYKl)_&--4;P$ zm{4#He1^(v*Iw)alZebSFL+~@QfJVf?)fBLZ8pA233E$W)VS>{^-t*#mB??z0p&us zMfq&%Xvw*Bpe^60=JQF~o&VKJPW01#;B+nzcLIaw6dmj5^A$gISVfN}Iz+e=%T5mIJVGCx_^`wk@&13MKEA zu+F1jy{TD0Ws!tHWT+oVfIZPf z@DRUT1@8T%KY647tVR`se*2fQT$j~4inUVl0bvrLA}>>de?sCk_6%}pJ*0r+zb8A( zkcy9QAruvKi8i*nZV{Mw#-gP&TW;LO+X0NyBZ*Cqlw?A|}Ecx|tjLi|)?Im?bakOk2kwt1sXW&sX6%;k2*f43g~^Gmc07oxM} zyxE)5-5Gt9!6Dr{J!$(c3o9LOpGisUnWm-PH8=iGCQxXH@H={01jEd27?wW!g!NeH zQ{T&lvvoSzSH6aoH1u#D~m_8V|xO3?xKz{C@&tn z!R>GvtyvzO?g!`^m0ew;*g@PBW0}Per#@V1243lU5$kdsMqP<1mKB;J_=?FWni=_l zps{Ttk_VLF>-9&{aYx~7<%)<1xn3c{Q2r4(60M1Zq+|1`Qd_ffjfp$(@vcj-XUJjyrw#KWYwirxv*1Ck&UmySZkkGSGCnmtN z7Hv2hanGiv$xA|&SzE=&=}4O)+BNjP&s;!?&`#-W%2_xMb7JG)do6&8ml^3}7B=6;LL8*M%6-ExZQkek8t<8e_Y znvJ&Ma~!+X-6i{`wV75PC+($GuM zL!V)~64XmiL1yv$f4<+J-0%PzYVF0vd{S9~{{YYZTes824q?THM6pirHOVhUYzu=i zW&6V}m;ctU{et~{YqAhQ@sL(?pX(YBt9Om}rqReaX{3J&&sdR4;O3U`+*07W7n>AQ zMVFFsr1a6&SgI?bwGWPP^5}m*PPA{o zxgpE9FVorQ8b>X&-iOC9qirf{H9a6X{Ic!LVRQR3YLo?R5dhz>Vdcfs4 zS81ysD{L(qFvjGvoUUOb`S;IJkQUmLRe8CZmE(p+OB++rQt<89_4pcTNUlyBj>8DV zM-coh7tIJOD0s7AWDJo0xbVeHh@NtEVok;b;ZEH+Y*#9|Pr7Po8E{jX6YT5Tk&hT? zF8Y~IdSIa<0n=1^a3SlT#J~Vy1|M2ZHUrK=@|pwy)BG(qY0XDlKtwJ%dUq@qbh&Gh z{f6Vb;!3zDw1&3@gKF^40qn;s_Pgmg=6Yb+b}4F2PPKQ&n$^dqY1qn)LlCc>yjFJmo>Dfq;RGG^F#D2!`h=em0@mt$W3K!9Og3$DpE6wz&67E<9tO-!4Du=lqVW zwQ8z+aT|y%KTmA8vo=@_i;mOKU#1Y$t6p)tN-PBL@x`qR&3LX9OMC-9X)<$tp&V-u zI*sLn@eyz!T-t%?D0!v%wqIMNAfBWQ@v@IXya_I#?CMN{kP{kuRsLk9i+ z^toYfDx+odLF=}RnHYaZfS9Bm&yeNnV8sD`D`Pgv{VD!CfFJH9zIb85IZWt^r z=o7RRabl>cN-~7=mef~Um&_W`R(Qi)i;QjD(t&CHpJuI@2?|-ndMsibbutsmZjE)G z&OihY?OoS5Jv#-<;k$E^-4pQPQ2_rsrPGr;VT0>3k~$0dVv|ta1P>L46*Su1mqI zVQfBJYKo_{10;<`%0y!k7H);~0|fVc<|?P7L2W=E9nfVcZjkhqsw>W?y<_=1@h@$A zUTL-xS1HXAg-vbhF+l~``?p3|_dDv=&rTUZ{X z_SttmT04aYx;Ks#F#6+%41hi^xYTcxCs0V$n(JnUgc?c8?ddb3s2^J;wYYema+HRR z<|4`{9)s#tv|5}-SVE_5sV(8w!16sm1_u;dRA4N%Iv;3j1-WEmIK0R(O=?DX1Bt|c z$`xU#%vvO2w#rWRTG-tirK4{t?1bv}=2~yPI3h>N?STV(y32KEv)DB2$pA-3&p#QP z!WUf?E}s0YqJu*Uq`lnv8+o4BjV-?-^NnJ5kYMRmD{c%a zVnTbI;JA&{02OUwD#2W1V7i%o8=UrX`#+Cv@NW?D*Rsr@`N3{RoDXh-#YbT;&f8%F zRV`)2WXQ~>B;!mj;)|+Huiw(r(gv8wX{54SK!i3e6-3`4_|Zh1E*L>`DA*uyGNz|( z>$$0BooPS>ftN3l%bsw|o^)Ut2u9H}-Y-(C@yyEoxQ+{a7!(eP5Y&V$NZF@MGQDnq z0q7qh9X3!z=8%rw?^9yYJGJYOqQCA6a{JrhmCazRm!VLTZ-mxbF3PzqmlY7Pn?|tP zq{6KhQagtoZa9!Hx-FNv4!Y8-kqa67@IVBjlnDXm)4c+HeR&u29lBIAe?Z^y0&O0= zQslFdQJ-Qn0KL*Qsul;cd6kZL5*$Plo!6lH(e6&*6d7s_rG95`6qa@it@ zO>8#>re!GHMjgYqB%fq~^ zFhU;4`w=ZRr=Pg|4*u7?3q*hAxVW8k_!5NsqQvXEB!1hryZLaP28Mu4;uiHi$tXL2 z!fL3%ULGw}wLyd}zTZyQP%mBPKVq3&a@#sMG!eOjW7(|lyqgv9v?GcoCh99IHP*at zb?<)%L<2g0AzWkXF1H+2hZFJMVBm9CMj!lYme|<5Zhm<cAY*4jKyr zV=^g6dw?Xb+hHRFIjF9eaYq-LhR|4nLTUd)DE?hQ>ErJn=?jR?-LI5e5n^u%<+Zn# zSR5$Ex^iTWD0xA_!HD|Ur(A9Uep@mUIfj%3M zH6AEk8^&lfHPQZY^8snwwdDciZ%=*-zwMvRQq^;C2m=ajE75aYxNN^iNhRrb9!e5P z#~q{+o+)s3ozI+*1d$%>y4Ql@s729rD&nseEHaFML}Mwv9}uONym&5RcUMMceAaVOx;u)?gSl zae!0AW}<=Meu3ftl~w-}QU6uuB7yWEJq3|+h*;{n z%qVRM#pHF9TcL*Ljc-HfKuP}HZ0>illG{(01!kb007)$FLT|Ex3wO!SE@dSx$wRk^& z*Q~ZKYCZ2K1lD}bS@Af1cI*i) zUTq><#cmV76B2Gi>_@?7F$MUIpGZDvsHO&tmPyYt!SCPjl+OJ5oHo6U+j3kkhE;~{ zMHVF%pr(&GCAFubFo!TuJK_PJ8~|4jztCBnGc6@Jw1o;Hmw_~t4StF%oIp5WxKZ7} zpQ}=TKue1?cKQ}e0Ju3FZEzL!3%$P2btK=-o==|qA=*@(mG)kwgQx{v$YJ!H3*d!M zQ?m4=dDmOB?t2ba1qB)&Wlu0#ETjYtavg3@Fw0E)rLFbGWp4p<&hpV*heH)fA7TsN z37eRVaRng=SREXo5o=j`e!_ARBlW*l{Mkd4HV-w7?a8!5a{;*oq{s644C2X+(240G zI=>hf8*P7c`q+kbZ|ybDOPdt-Z6k}h?7RqmH(2oJY<*p{9I$i1+y5qm|0&}9yWI>3 z5qkF!u<%R(ah6Infoe?JoOWvDK}?<$5)rVm&U`CdLa@K_y_2GBjE~6Rhau{efVu5T zpeBHj(^_emz>(T>2EC{S03!O(wE5vt8rluIGZPUMrznUFgrhx9V~_24wrRaOn*6}z z&25{`L?L;?xHX_(m@6f~;B3w>{`ldHRYsyW*P!(3D#q9(5b%+LyknuQgvjB}uNp#e zEE2F1me_vphSh!RI43`I3Hiq={?zpJ+KS!?^jrjRJck@#_Q67kUA(lpeqg^uE~D;! zux6iR;hG*S;LBU*ag;99sst1gHjVP;3%32)k|eFhRj>KBYO(>%GdP2U_?dT<&Dj~g zG9n3nd1PHZBGBQ9hP5%!(KV{l!eiS_5XahK@~}K4gn|;Y_#S`0kd#b)Q?2IQo)8WS zepR+&d7)o_F!=;RhUMV@dXY3b7FM=MZKHF^!FIYLzjC?e9N8`hd4L z>Z#TbyC0opN8I`UNA>XEIP|F%SL8#K555d(Et0O0k36KT;VPS;n~MAyPT`PE(S^ zBOS~1H)T8mVh|a;P4l4L8U> z@*kja&QkEW6$!oDXsONyqbt~d_?-uyQBml8lKK5Tg<569afqiTvRQ1?Fn%%@F(@#S zJ`9+~X$vhv2Q8alR7sVSV^Yfqj+ZEF6S&)>_)U`7AG#VO{pM4QKKD4fE(M1-@f)+& zGQ$YTwV0k*LL|Sca9?(cPkmncmESA1qw3<&!mF$`&fgCn+C8C{*BmC`O}|+CfhNc! znVJvs(`2$Va6i{W&j+a4Fbdf^pcYF~D{jFAFfGF8noCIhuwH1CkY*IDr#^D~$;Wi` z(e*^Jv0m;yo$WC5HluN&l}tZ#;aKk8J7NYZs>- zajt7=M@)h{olhC9oB(xA^P*jKzH6FbZF6_`B6dqybz>cb?*5zjOn-MYSck;el>GCZ zN*$vhZl}>k#nL60e~*p-ReAXR#DNk(I^43qKmjqr-Q|I&Rf$`uulF=hAJkO0NQ$Yu zYHd*mQTHaZL?ty+O}N8}1y&^!wqSfpa7MQi(`@5?Nb#Qha&CHz2j2h&j2(N`Rkvb^ zv|f%KBXK2=i(Z~@BRHJnVYWgOgp#l{h){!{*zQl3-&b*hsm)`-x^Jb+X;^!4xCbt4 zI+9U=**YL#;%JSb*E1SpfWXt9=%7?A|HDmBy0-MPOBt(ek>}MUfKnYmmxR%al+t2; zo|`3D-eLoX1;ZZeNBSy*Id8L5icgn{OuhMx-oUy5i97Nb>%lw2EBE2?L>IcsLY1}) zl~7F4$iioVChO0)mj!gI7X&=&;;u`V#c+lS+p2|^@g8))ai0n3Uo1_I>LY!;fV}t%Jkorxxl$8rG`nm zzepAu)%D!P=Xy4Qz3FUWOGxLx@9dxwX5t&ih*`UzS@b^ zYEK@`_x%uGhvu3+>;I9V{QbgRzQf*i^X;8)W*DwG0gtgmj%kC9M72eq8afNUdSkun zR$|S^kuc77)c-=w*4>lXS%lZu>^aub&^{N=K!0HHtfZdoTF}(H#*ivy34Mp92$1Yn z_D3J@c~|(>>8Jq# zzFyycuKp6nHuRI@5Lq*r5gRdr|IT1`EP8`%4VXlYj6qNTPCAZEG?*^(qw%X3$MW_- zrZ>4{)F+YZ>3EzgU7s1ovKQW3>aZ&~=%tF1^MyzP4qyhq$B=&ot|d`JyT>9xpkQMy35~ z%umauTKp9+#l%0DRJBr#AU8b{a*9KQVLRP2CRR#98|C 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

}x1vfKUTa$s)y#1D}%rYO?`p+&DB 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

SchkmJ&SySHk$ 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/Rzrf*8h88?yM@*8 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

*rrrC-rd;v@^QDe5+Q_b*dN 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

y)xuInWZ|v%V%FFHeO8W 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νLx&P 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 literal 0 HcmV?d00001 diff --git a/docs/resources/images/resizable_accessory_sidebar_reset.png b/docs/resources/images/resizable_accessory_sidebar_reset.png new file mode 100644 index 0000000000000000000000000000000000000000..a28ef4d12b84ce5a2b91f659c9d58ef9b94dea37 GIT binary patch literal 77338 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 z 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ⅆO2ny) zGAF@g*H=Mv#tufAd6{OU4lxT2Ni~rd`B_$Bo6&Bqu+`q|Pbug`&L?xK$TxKHc)_WV zqs?B}5Iv6osAXBSswJ3A>yrUd;_Zi!8-Q8f9b6@BdXJ*F^_v{o$pPb05!%dItrlfe z0C{KxbgSrH?<2{^G{t@Z0#)0XETJr?Zm^H#-^B(Y!7(}^4(u-iPOH?NUMKLh7%7jR zcBZRlxVY%1aC2L`_TcNCQ}W(-@SfoK-0GA^r$vRUW<6iy zrql9nYmzq6sEJdER37g&4Jpqmi?vEY$Oo9nQmZ#7TaDs@5G;+%AU6NyVnSkn!d)a} z1ZxGcgmQ3ufH=hj1T8G`&gT0@FHS2}75HuZ&kyN=SkmVFDXwBO30LVfyny$#G88>X zzG(u-oqyAmN!(Wo2^9)x@(9>;aRYoYHOIF~bxv;zzg-W-O!QE*7p)2T9JT?)hYIm< zpqyr#2+9iuBd}~iz;Z$(w|q>);C;i(^6fmRzdvPYLIM%wtjK9CmC-X_8`823H?T;N z{Lb4cHBICTLyJV1Q@aMRY>^CMMOhczI6)o&tM-Xe-aTGCk8ESZvNL{FWfcp5_*fsi zr8imQm1h!tW8Kb93AGGB)3qE~kK*N_z^UONR>VvAOckScAZIaOv-D2{$zt%@(6uU` zMa%8rY~YPLVmjC&a`n4eDRQ#r_Jr`o_Ev&KlH*G3`*9%i4Nxxf{jN!e-5wmf`9iE? zWhVWIm7LBtE!%#;S*c4rgY@~)6cIXj`E2L0Onw+meEZNs{j2!{hpqVY?Ut_lQDv0` zk6veF1^VVAXxo|V2|f&EBy(yjbUBpJwX~Dn{iDzQLB)<~O+gMi>cbrE#U5vBysB8l zykDtn%HVdhPAq%^vI+uT@5xSvQBs#UdpLW#Qiu5(1T@QSq2>961z-eRi zv#=0@5ahBCyX55wT9@wPe}&)c@8kYJ=`N^3q@T zP@4+tcf&Ojd&OdZcziFJhK&p1&U5RY27USMR^^O(MQT5zUYGrP`X=#QdAJP}QrYOu zXPmkMiM}LR@w=KAYq?j|R#Y&7UyBb%bv=Bq9we{|t32V^f#LfjPu0|ci>k!V=q=JZ zIzGeDKZ%B*vD@(l0e5J!>fZ0XoraItPmVu4;_#;og)mm31dwWf`YNl0*&0JslO~y* z9=j{MfGIXuGPCZkR{&gHb0O9xQBi!d;V)DcR+~guHe-|lT$K6fW=76fO(IUcP)A$} z`M1W>l;#cT5sTvX6JCybVN+tYu{je%7UilhT1E%w9TM0VuU;7p7Sr)~UCNQq*!x@y zFBInR*%uvIvFT)31RNO?DYZww+m7L+mrv%h{d(2$Pte7U+0_P3kCXO-H&Q#jce#Xp zirhAL4se)~^ICD~*ZIz=z(!&#wEPP;t3k0ne2pRmQidMGW_cC*8Q|7+dM9gN;}^UL zTgQ7GUXuToLzF>92+hhg&CPUhJx*guW4W6LeU{ajkoi<3=(LJ8y{s1Go0AYHF{HxYc~;j@QQ>Jwii;L=`u^mi-Y0hmr~Te5ZFj_}=r^2qE0O&Nj5jyv_M= zyhJ?{ZV$8I=0$TvhbbyLBWo6yTrnN0%}{RYpEFOlk5nRvY_x4ENuNk;j`iXc?*FJ} ztgJ{|PNbXzT_vOOvAA8>kk0Add)r#xNeI2_oL)JJF0*)mAf{2r<5*!@43CIP8C{P{0p8Ghs1*7!5J=fF+G>nuk3aPZ`vPZ~(SWqVOShLKWBDy3y= zDk+)3)n;tI#Zmv@a*WqCIKv*C+J=5&mm2MM`BsN9S$Xw4tR~*>7SAu{a}M-IQ~c{nUPqy- zZ%r6~0Jg=dsjYrj+Pj(WRK-bgMwL5{E&9uqr>i_!g#&iU&3rZWK=r=ZDz~0go7PXL zTyL-eazl!!u>1aDLRW}Kp&Cx=;Lm;F`-|Nh9w3E{`BOpDqiMEAYY+!;f!R%bwb-4; zE35Lk$F%Da_Jm`1K!({=jM0QQ4~lb5n-a8A0TvQ z%{Dm6jD{(d#}$aae!xog;>*p3ac`v~|En#ZR7${#xk29I7FJhkab_msvz2LtoaTke zCJeZV&)2d#cdcoRX7f6Sh$7-zP{K!NFq=*NW}mL_HSZP`gX>Z_-!DlxY}1cM2iUm* z6{D~I`Xw-;&x5dGl%j3MgMZa*P?)B8wnqzOTPf5KEe4FpBw#G#lL=Vu?t7`ST!Hd9 z@yEb&#dOKEQ{~I8Lmv{y!{RWyMjMnV5yS)$JpB>;k2l2#Pd1-DGwQYb=qt!^>w!qW za!7NdzIxdtKL>*14-4k{-znN#Bwm#jFL$bvb8P3BnP$7Ody3%3=Un;;@4(kbCW#%8 z*tWr>`TSHC;nDAy<&w>m^yNlf_Yn1t^aA;0+xSSb#6wk-svHSOx17R=fuIxW6$h!o zZ*pOa$DhL^AWc2wEwg+e|4_f1!{dXI)dR;OCFf_sa|(Xon4f0YZv+@;a)8;=lYJwb z^~`|sxeaY&94&tEBT(+eH;p{4&Qqh;9GPxelig#67nIla#e5yd?Z;T~hu{eP+$d zVDYWeLf4dCy%VvU)JVQ3`i>d7CZvKC#vDM0$c3{4$aMbvwrxh$zy%Zw$W0cEA0E1>YG6snOU~Dc{Wg7 zH*_)KIY269V6h1M!}8i)X{Na6V{=t3LwP~vbsXy%&l+pu-=HVYNb#-3zf&csH5p4r z8noY)Tb=_z6_rmHl^zUTcaexki2j1$ufvH6a^D__x_MnSNH=_D z#v@#|EO$;Ha9|X8=Ch{l#=%22|Facc@MK2JpwB)g`D79hY) zBJH3QsBYaSp#FSrVM2mgANW8%>&Bf-Xq3XBoLgEY&O;26qhF=M*Di` z;%`5T%{CxOri(;<~>NzcEkG;anB#1wG77F$%q=`di)U z$J{Vva|L-mxa4|^f9yi!uBy^PkW4lbsY}!fuyX{ewiVOdr;2}R`flGpueM_X;%i&; zzsLTsuS($c-Y3)b@k6e35lbx{>b!lW`cN|mnJJE1S6bx}3-+oW8jS93U!L(O2-$(U zVwOMZ#q?`HRa{w$&@LeyS8w?I6ROF-EP#U#N{?`4B*FL%UUIZtC?zL^!~T9&cdjFv zl{>T^cruEsXt}ZC|NNqsEy2F}&O1 z-`*b2*D^AQXS%!v=n+)k^lFn4um~{1ycY ze2WsBVwmBSA-cZ!_P_st3T!|hN=pC2HJtXm7>$+>94x8iSqRKNV7a?0rHSz0b73hW zTzIlmVm3(Oab9Qi*IFG+-wM6fwS=#J1=y$IE!214&w}Z2H(0(RRN0wZY#_fv4Ie&VNV$ z3jg@Vfc@Igg+NY|fZEN72(~+{j|-kD`Mv>a3YL~H{Z!=7gTT9FH&-=mT3K*AjZJz^ z2zTdXnSM?GP{&My1rE8=l|up@3^xsfm>rWow>r*fi+F(4**^{IrZB298wZIQltt8Y z;mm(qmgAM{L$crj@9#5NZaN?u?y2=DBZMVwm@om>sx0HJfO-U_lr}k(NUJO`3`PAg z-!HWxNsW60h(J~rp&vo&edp}hSuqMVnsn71st=AhWod5%0pCxI!(Yx2CUcY7>-JUS zvp{4t9tlM7Cr=|3*mN58(Is+eM+hP+B1wwLhC2#Z?={>8OQxtLUEOsQNmBtn9@%hW z5yvO33yu3+$OB6$BZ`Q1<*Pz5I4z-rZe09imtby=%l0R3$cp6Fr{?8WX9?s=LRRfV zFHQtUZn!5@s=z{zYq-Dsw{#1f+@{4WsUDBerv$j*kA1xA70Bz%%RM!+LYqECQ`Bo|irJx@=cTIU_&TJbwfLb&^pC2+n{@=R5PsM5?znW<6MJ7Pv zai2DCRwejn9<863ZvX$?@$BJ*jzCfRGM ziC0^OiS_6~Vm{M1ed_7cC$FvLCYm%-vCw@6_5vI;f%oVE+fxD8$R-3;Z?>Gn2w{xpJCmmOeGAU8N{^#u z!uRd<+n)U2h_JvGWI*+I*!?^hY^{=~$uMzF##f2sEWUR6Vec<3Sulc>){&}}O1bJm zOt9jB3W{k+@*YwTok^ud4SvH(2Cd&KWnT1Hm|KVdY=`6Mz7CVR^j{y#oNKwK<+!Ek(vb57_EYq$GQA z!TwDa*+2pmD60dsxdkE(Gg4=Hu_bt-_i-VL z^d2pJBGX6n#K!(bdkWs$4PJon=kHW6)*W9($tWglCCJ%TWQeg(|V?b=Jl^= zOt6IVgFGW%?x%)aw9vS2%xu1OD!r8r{qLgO3XHWfQGv{Rzw@tGUU|Ubx))2vVfF(K zO_+Y+^HqjWx}=>+^;|{9@^S6|)J3oxFsX{8S9`#1^y9qXs2}SOy*|27n>4$V53qzB z-Q*L}o#AQP@=C@$?`JZl+B48kO&R$dH!sWvhI&5l<~aLPjkS6C%S0alG0X4p$Q*9~ zSNUZ8$lj_u8WNem>MlSWp3=7dD+#78u2P!4bApL-JdHA$u95WG*q(n9V(ev)y&)G& z9l7QKLb)M$68et!REl>wcyIH9U@PWRM=TQ1Xe?Zu0uc3z*w66vL?<9r%A%F zjmSFcX!U8Oua~Pb?QU}l2QRikV(Ob;P%^p1XLv}=3w;IJt1vep*K`B&*{OI@X#$UG zo4L6D@4WsNI-2I|V1NZQcBQV4tP8Lcse*FL2lP^HhQpilOcKi!*VqHrPfJ)_#J42M zc=bkkkQBkP3FPY5k7F4R`QM24e6TF+cC8sHkk%u)B)1yBCa$-Shd*&yju0FyHCF77 zQjuM`6!({4_g-3v6@)D3lVPEVxS14I2?LqiGZPV&S1SGIt_yJY1vXQ;HeO;@X{Nk8!cVtW3S=iC3;Qcvf_ z`XU5J041kUV=M!Ug&dEHo>M^$33t7x)#0-|eB{`b zUR7E9M|qUKW2wfyvH5^hOd^g?))*F%7AMCm5=H4lsc`L)OQaup#;W;7N_LnpqKnWd z3I28gDJ2E3O5*lsxsUcC86VkG*CVk=i;ub2BRIy|YC5v2pt?dak|`cJlj|8TVz zeh$MeMIG>#>F}HEt~lvLj)_(DLROkb?MYB;c-K(ZYdt%UzIS@Om4Sw6fv2aZzf`H{ zO(ruC78al4K%4P6^UmA>r>WV?@$6=pvVSs)8e*9VWhT;9e5hS&?0tOAz;Ok#Q94i^ zYf+2(fN5B<=Wx-B7}XGOpnt*oYSe^-J2Aan1sjMwqAZG&QLLdj#w*ygE!1u7b;S1l z1H3UrHY(o%;h-2Pc&DDDfoBVUwni|igkAO_ZgrgnZi(sT0xl5=C zISJzbS?&fSydZ#%;6UC7ij9DhA0ticd0>9kH6x z#F7x=%x6)7-cMg5C6JUA>QfrhLLxs|d{R?uFwslVTBe~bb4Mf7|kawM>G7nI3DA@q_-A^BLDU$_mKI4T0t9O*6l^5nMPMz<$iA#F?E-u|{g95A~l1IfkxaSO?7r|)SKW@kJ# z5W%bEW_0TrXJv0&qAbrZ+;c%(L4kPjEC%zDSG!^@=BM3V>NiCl3Ox@a8x?q*qw5&H zv$YSnCw}3V(0kq$b6dO`;f5<5ZBu>dPDTYr<@Am!VSx;gv&)ML8g!^_$0t_t~kqMz>87^&-?EpjVCvai9g5QBu1`Yh%A*O6Cm=xm}4XX z6=g}jpa7Z}%a`sa-H(+eJEa~VHJGMjxlRI*(#uBvgK#|Mr=FjE9iSydM2z=;V!I05_djF|w zDp59m69XA3jKR3VKVF7WT~O0wGuF)}c>tln-K6Z~$CuaApIG=MRTn8G9Q9PKvLyeeX4iDzL-r$mFW61?i^nQs7@p%JxU6uMU%t$4rMNX?FS$8AB6)AR6_-bc6 zT&fknYv9Ts--h5ldTesggrF}*GiFkv5<6_#CfcZVzb!1}p#T+&yf9d4xQAf=XI#|` zChNkPo#s!09FzFe?^&u}3BGxTnm?4kcO|(DIax(iK1f)}6rw3~CEuzyM53*zO1- z29I?<%`?RbckALPfOGxNO0ZvnPJbfMpLF2`rajK*0TXru&GIn1XQ3(ldXo9 zuzGP(5(axFbCKGWTrhp6|I^iioxcn%lNDHn)L z;UcU>QKVtQox}d~wd!T41fO^;M`EvFf>}YWlL}@y5~iS=liiYRD_=t>tbc5b*XtO=sb@XSTA@e;`{3>q1JL~>YF$| z=kB}m-Cpp1a42P5n;1iznC4W^{YdqGNxFhFCJK_#HN|Kl_llnjQ{R<$=SiE}FAQ4% z0leSeJSL|V0YuyNAFiHmHlo4>^|1F&A_#`ugk8<_;zQJ2`sFYWVJhSoQ#~B z4ZJP^pUWI46Am(;)kV3N8l-i~`XhrdeWxjqW06uA)0P^aCp)-;RAN!E$t#Ht{?fja z&koyx=kQw;at#q2lLOafUYQN}5U+#}NH>pPT>#leIVw3=>WOfcg)RV!3U0}o58H8Z zTOx?`NT2V8HuOE;Ve02N}Loj^-eZF3EL6r@8lZ}vp z4Ngj$stPHUeOs0NEp9tsHb9=)R7$-FA(eBrRDMI|hrbNH5fAzU-g5>4EpOprY+%T6 zO<)Y|nOOkQQAlc{E-}xnGb~gC<833kz~47Eo3UgbOVgI;KT}j~w9t(Jn2_qT&S_9G zWdX@*yL;3Lh2am2289WWMT3;L?nXVPc?kTZ>~qrw?@F(1um84NAc{9hegs=xkp(;P zi7M@A*xT@YRMBSAn$jmMvx#JbQD4!~aZ|SESt3Ksu*8jrIx0d}y8dug{ux9V`n%-h zL=Rwg!pUAH8<4b`_{c{yID2@c^MvZ%Nj$J$L1NJHZpbBKx(3~?CXnAVMxbL-T*5> z=Q(vovNr-X3plfOr+KNJCqStU7yV6$Cd}Wq{w{XCy zl396K`2OJvR+mOOtK!m?Vfn*|FP>Gs>5Jxv=PXmxaU3H67Ofza)l{uf5f8qa*Z(3r zdZ2p;jIo^^9V5*vE=F{NEzY=T+!bE$-v<1d<{~I6`AqO`<1-3idT1QF#hkBtsKtxk z@M$q5CeU=HYsduM-_!kk1f7nzM!%v3e4(vsfXblyhRe1=<$Yz~yd{PWHc92W6?Bjc zz{Azz<9A3qPPawtiOE8i&>YcTNx!?oy-&%XVOl#kgbLO=%Ll|vdhVuD1%7Jo{Hz{Q zXZ1I)9N2MHT_X(OU!Hsze2ay2@Nn9rDv>NHF_kOSWhY72?|P^$O+U3* z{J~qZRw&;<%da-N{=CkEeI#W9^&&pmqlfzta$O2fDu75T#z+B{y|UQ|9Khi&cpWU% z?n6ixQ6d}9A|(5sZXp`4K!e9htZXs+72gzJf27y~DJv+vr z{oJI>s}QJX(Vp!m32boU?79U%hRfp}$%=5XKSYI~c*ysqRN3X=dE%4wsp-)w*H&dg zMlDfPnmC9-pHV6ky01bR(zXd|>V%^ox3_T0>~>H;Wdtk3AN?98>v{Ysd5o#`jOA~I zsP#MxnIy%io#^!N`6cKzCUT-WQ*J(XJv&Ur_=cz{3w1DqA|@9)Wl0AJM^5gH8Uxlk zy5MVj6EL>P-<5I>uG`o3ls`exk#3Yz1YIiN7eJ(J`))y?1t-G>Ps|g+v+u4M!N)Qy zDDF+C8mpZrBma-Aw~C6Z>$)%#2pSxMyM{n;C|p8tcefBMxEJp3?i$=(3)kT8?hb_& zPS^YW-B&#rTvF^hXYC_v%{d>XE%E&BE_i(q4Kl71HwLyCy83TS-Aj&VgX8eHY~a>46gx>L-Ry`(?8z3`BT1eMyHy;!TyCfc zsKzO2l&K;`vu!j>HR^w=+kGbv`SVPb#<~m08pE_BC|M}jXHdIXXvew4uHm8h)$;y^ z+@?R-s9hBlFJFPZs!q~bXW-LOF8>=p#mP{6Au3@I>bX2}r=e5C4Mi-P3)~w?lUZr7 zsFXo}WW^O%;*5F=9VE1~&`he2hK67va1dVU246Et?3n09{ydMHNJSaXe55-W>}YYM zp_v=c>wczB20)vK+NTO3Bx?Zc=S1UpDDd`UG|z?EVj*_q>eh!IjUmRamVrr4hfFq- zjyijb0)CXumShE9j0SoWoh=g(l|+nWiiUy4IqqT)y$Lpu=VRf4e>$>F%#LOuoXZmm zK_ZjY=S{hLq+R*J>rcC$kabD!z1p$^ZcfxrJE)2kKn?fCd8Ir*#+h}-a{)68v-Hbm zLhHMl9ZLOsW<+&!qQ(}@aBQt!1V;H70Tw1VvcaFvpii3GgzTE4BxOMQc?@!@Eum$9 zTmlxqsN+Ygp^2<-S?h6kOzWf4^x@)4iLt4{9%N}k1PC|OvsCOGZO#mtQN(H~AzF2& zYL}XMCRgcTYx4S{L=hGmJCm{0kIGuODtI|_!yHY~j0w4Nw60s-B61Q%X>gk#iWp?z zRc8h_lX z!B(C)@?C?-_r^$BBU8>f>` zhLf}Tq-Fvob4>Be}7YvsP8U$}O#6j*P!JH^lv=wtKV=>EKLZzU|>jo?+|V9;-SB=VC9ou=~qL zW`hGdUVa*%iG%c9jc+2#rJK3g1%3*9Y!CUU&}op!n^32GfA9A`n4GOIK0BXAOGN2l ze4}oBspNZsOpJY$512qGZ5NKV{1A5i=A?8iYlfPZ@xeq$CBD${85%?o@<~W>#mEx% zar;Q=uMz${PW;hOY(e%_^Xdn9eC|QGfR7(poOQ3)rm}P#B3E!zBc5G)F^}jnVodXS zaU5N04ekf_@BPk&7MN{X@ff~ez5Lo=@q8r=5uS<2tQF$Umg8X09&a6=)zw?Ewff<8 zsbDj5V=(A}byN%_qXW)H27DqjmnZJ{6;p zZt`;1_^2;bJnwaJ1dSIZ2BXOiEy?`=e2nCD26Ww)W&0@@XR@0JACT@w3Sn)(!Xlbz+E>5c z)kO9!(B*{(Zb0Vwwx5C)=x$deVx~Mrt6C@H{kn9~3ybNsRTcxC!K*bd=PMoMKKcW% zowu=KVcZhYnJqDQ);ayQW>z1&r>w@&S8RU&k(|f(dx;G~HIg)(z1|q`>n(bD7aTmd z73~qudi#C_?|}TB?rKkYq6$r5mrMtbX%kSzbp58sjV{;`U&owX94(;FwA^iI^~6b&LS$O zKxu}VeoDga%JbVAy~p;H6iOBW#Gp)nvJ_w!%EOwT{}`SN^Hx9G@|p$o1GF?Vg`@@x z=Dm9G@T9hAXus{J>?w02zi8mJz-&d`hS9Nn0NY!rEyGB*AjDVW5mXq}QN|rUY=6Wb zG@MuH6Z5_7`cpCrQKmQSS!ChXR=e~~vV_94=L~JmSDcH8SdpPF^d=^ zc>&-&;B^y~#KLK>1tK^~Cvgl3OU zdMH#hmMSEsC!a6Mpj2e&3y;HI?0UQFGeoplK1tiXV^!xrf$C$+r9@d-(ST(dTj8BY zM?-wmrfE|G;4>)C2`LFkauuvRtj7mk#F{xy%SpG)R2C{T5B65$pXvC*D=E*lhd)K( zN+kE2=G4-p+bD8W1~$!*b}6%)t~>NrlGls^OHYmgQ!rXn~(@vm!I>n>|oTKp{?Nm zoGCW=$hyv3H0Exe0+=YWXjd8Z*^*3(v^pz6@FBn1^sbvFU#e@72hRlMkVB$8s3EF z*)&+p|7hz;8!VE`s4aF0cp5rr4m%EK*Bm(e0I-kZTO@=UGyFclRqNvAhOe-d`L&&NjczM_CZ6H%|$uZ%&0A~x;=%qk|JSuX~C z2`UVX?5Q!GHxV+>3>)#4ge!(DX}|Q71E(uWm#15cR!%Qo=ag0_@UK_zEA)q}4(aYU zfsQ8li=+Q}MPggNUgdmXZVs6`A!s+Lom|vxAe35^YF~W5qL^apIb0R&#&bV1Wo{ULj%rjT5-&Rr#<^F!YPUZ9Uv26l!G%Vr>QSAE-BcX!P&Z zGar0TVYzlCp)P*9wfG`kkZ$GwnU~%K{yQ_;7)=uIg8J>Y^VW1vkdAw@ePL!bIj|C( zce%^Jb>Y=brdac*yY6(xE+uGWp-siOjj|$5%?hU$Oxd|D4D;n|Sr(+Sfk@ZniI*0G zePeRANXlAM=)WYOxzguQZ^wlLqRhdp|MmtqGBxi1%F<{!@H^E#tnIHnO-dVtMTb$1 zuf+y>Pah4!kkDRGw(B22WUyVl?C|0$XU6{2G3qn>)Be>Yuw2=BezO!6PNAJ!qED;6iTnHFVne%)X6#Ci!69iE!GP7};#Q zd66QE)ZL&;J2i6@ZrN5WpQX&nDWp7k2r9y3^qyRh?jG}exZ17>K1eROEYNN|K?AtJ>6@A9N~sE+n!&rDwG>n=m#9j=PH0Q~ ztNrtT*MXlBP@h#;l}vSo$fv#%^R|$+>aEs41JaLIedya)lv%uE(46-HHv(t~;a~Bn z--7oC7i+C5eo3oQ3)KeII^l>QXy8vAR7$oZqwew2J$kEFu0GEV&9NhQU3bRov~l+4 zIs9@49fbY&v)28eArjVgW4?;F2XdRHqDXU@@ZIkC0os}9JF>{VYH#;??!_j^MhF>& z(|@`u!m;WL!=~Gt;Hy9O-bNRCLOgVpzTW$HZtUvxKS!lxBJ=|@zP8_u5Pcycsx%;2 zflXq8oMG7=pZQxhLg{>=2~a%jsN@n0S5l~iIU&;`@VK$es4w^%y~-cc z-11?lDQ!g1N^7U-FSOZT`g5((68%5B)!uNL=!5m<)W_nm|8EVH`Q2Y&ZEN;K-LKLk zxo`P-d9{1h!oiX!bEWtyyDd4V88F@QXB`4arLOJTv=DEIfL5dX7sglwDQE!1%ZGo0 zbee*9b1H0JPflHGjyDJ6CXd(qC#PxOp{&+Q@4qQ;85aM>1bWAcjrxYD4LUvJ3I3S! zo*_0rCs)~Cx2*iXmt!tC`AmN6nGeiSPL?h~fnn3PB8UqZjJ{X=XAhK5 zIofHHAbr?gP!6R9+xQtY4nxzq+fvfQ>um+?kT^V{=&uAiLu!@YbIOzDMw4{}3Ms#) zU*dN|Pk&~T-^2m#>F~-Z?=LqoFVOZ~ynu&GRG+0_@!zPOfrxUEd8j*q84el8pVN^` zDvP#Jev045^Xu!{e`aFgoxdOaQXcRL2%;3`iEQw2OA2bW3cEz#K$UAAAKdE~WOpN}xY|A-~fH~`eDt5~HBB62rqXs^&G_TJ- zRj2i2-VdEl7i-G~MrhGn-iNU5`bL*G8&EPy1-uT&$~UdLg1!C_JhtDGF){Q%uWD^Q zk4m5I|8EaKrAb$VFy<1`gs`R|%(ai5LN=eWKYX}pKkA{d>b^oc%rj-g=Llde*_qaV zH}KGaDOR})o*bLzhWswJcg!M0C9OSUp2nY zWYg6&_1PyIvIcp+fQ$o-P4lOCx>_ACUGHx)A(@BJUk|2B@IkVvoE+C>E{{MlmHx*Q z?gulto?-WM8{&#uqdxc>DA2%A&!zNuwVBz4|D6`W;HpIei}6(V((~ZS?)B-8W^F1@ zRPOF%zHn~MX<)Vz_zhQW>~TUsL!Ux`l22sVaQ3JI$l>#1D@f6`)0Nzd>7em$H&0zQoiHuK9Ml6 zJ`ViSy1Pw^ki;(ExKb};+S&E~7IG%*ecq_Cw`LM=-jK)0@n>#WHkIY$=~FApq@{kS z0xEPYqJlQIHE{slU}?QUpEG6^gam$>Rs@of6hEJ1*dcO%igx{!2n1NKoAO^6()K*n z>zqIDhzyTZ@2RJ^6cPcDz-4sWb${igwl7S8xePv^F?Z|jAKos~xL-s2J+voOqV`?G ze!R5%4DrIKQaE-1q!#P})@zjPn|S)3@(bRNt-{%h6=qy2oB}p$+-cJegQK=j*P@6T z`fi2W!R7iL?*ER}_y@vId)5@cBo-Qzpr#0g_=2WTzNxYt=J<3{ZR~1N>MlU5!EcOWD-_@e=%Zub9*-dA+1MXVe1(q6}z zX&1Wc|4yqNKjl^^1X$4sW&DyFVR78Qp5{h*xIq8IoAsx&Ffo4lsWfsJi|zPiFP5{e z_p?yQW_5rMJwi0_on}j~4$V)N+|Cn2iWb=^5L6T-qkS*&b(sn$ifV)E(;gTv3adKf znAFGl(BTY&n-`Iotijo7#_5j9E(lVO@E8dkHHq|ohwnF~Z2V=-0oZ0QL+ziMi%_rB1opv4jI-QZ#n2;`q0>t{sz_@6WV-L3(TjC$ zoVs!8}&5fsl?8 zYu9_{9OF=HuMU?D+W=O?ZtNQyw*)uYi@g(B7_ZOf!VVYv<@4hXi}i`?fvl$jSB6gm z1z!R7Xn&emgf|DV)m)X{D$Y06t^RM>403IVvE~*J(-Ba76%iW8W7h9RA@H7n9`~EG z#Lg>J{+~8&;2i|&&rtd+o*qvVu^r~6CS9Um7q1k^^@Tx=b+y@gXh_;2RqS&Y`cLEM zMq}r}7V~M!ux1xv0T~uu=y5d@a6}DE0>Nr05=FarJzq+q*TwBU z7k`U8zh(P(xr|z*8iF3mZxw+~)A4}Qo6roQ9Mo7QkxFU&# zxk4?gw0MHQ>&!7}@$wFU)S-YzPm-{*-1}OG{W2`IY<{zJ=%Y}6On5@r?3@L=2*@=T zAAHcXYQvtz=iIGQq9{T6NJTh=NvD4qi@T7$K6=?)H#i?fXMcmuPA@+JWhAk$8^2y6`U6P)Q$OW|pppFP%;JC( z+>v{}KbOnvg`-9dHsV^y%TjFz747j+==f_r^uZ+T&Ls@+tc5M#;wachf)(mXzQ^>u z^dsWN6F959G|pqt6D}}B4d`2I)m5a~dA~k*Y3`Df#lv%$bLi{-j#f??LO+smaq0+h zK=`0CB{(x$O|th0u0*rv`odW#*J(4&r{V#97tPoR4ek{bUixvyU@| zW>_>tuD@d0R{CtvHuJM6;i>t~x!}E63V->A81>15tf?qaM1ZJr}Ahsh7APnQF5`FD>k3+p5R;!6hA^9ZdB$1*Y zoxcu`Mr>s|o^45}=M`n4*p)E8-v>QOdS6h zI&9S!QxpDxxvoe_Z2S^>F7y+GdCj4@;_yo-0(Fl+;fb8a5!j2Y&GP!qtabFcl z8`5GB(AeuKV55i(Oio1M>w4s*!<($-24`liBz9xdOJ2-pTg38Z6iTgU5Yy>T?YymD z(rv9ZrZ4(qX`S8Jf)&K2!BbSJ;AoN zt@uJ`1{!_Sv^fE^NQ)2hIAocM$GoiJFgp3|sa;3B)Tn6HIyAQ8*8lPz&PtlP{2L>T zl~gGDXBv9h=PUT9(#iQaDU=d~GGIj3kUz(}qIZ6t#XbFS9a=nmb>>U8zJF-+ZZVWg z>J0d8y1P3ZAB;-df$4VQU_Ro$=-~DPq{dW^76MfH*w6P{(uclrfE=s3Z>Su++McY# zHzK*XRc+_(-!zTNdgS7i!zsj-BzlB#I$v&^T&+p9#He>2QS#K75XDrCLd>!h&gA;d zM-X%iIjhea-^!!<*(>Ib;4SY1AgccLjW*jEKJNA+2Mo7=DMJp@3A04D|NFXV*}T zQEaVfZk2Yl-}qkN3J(?y@G{QS{elgqzKY-o?VyUTZapDu$WC-t3gS}Z*0&zCtx6)X65pq^cjr85&c7rk3sz7T{F!AG)>hX8S=X%N;>^!LP&wP zF;@s{U+|1;t=5=stz{#f=p-?LoH33BfAKejj>LDhly;K9OcD-`FHhhZjXe5X+0QI9 zZguZgEx4y4KL=p7^dTua?uAv4kgMYL8In=C>N#YhPZRK9o7hvhDrp;Aj;qpr9)F=A6dscJ*ST5H_HspN~fceZLw#8=A@vvB7L_pzgL7Y|I01_R0fmc ze0t+|v(fQ9exJ2!O_2M#b%^}vwUvYSZnf|uC`q%Sgg*R~`kWrd?N_e#stYub|6c0B z^KnAtQTZoY^4ooe(eh{t!{=r@9w;BE)geji{xFBFgaKJ74y?nohU&J`XxYq@=rGJ- z=@Ow;Z-afpHsJ{{iAV94|0w9@n1lJH`M0Rc8ngaO#B!Z=#_%r+!$g2B>FLp7P>%Il zoylkT{z1^S_M)Q1+aS@pY?5@6EWh2bEA5FkVH>MuZA7y5!JZ0ZGPQxY$!U<%D%(Z( zMi@=k%P%gQrLQXmPzvLJuVLc~e8BoQ`q@?1z8|)~uJfbo{#HE%e^{NVGwCuWIMnT7 zWfUcpz)-RLPwKk$6f*bBV|K_6ca6t_cd#hp{O6resJkhn<;&&rcm3smoIp*XQ-2^gBH@m;^8T32pk5hI(i#>vFa@sw0~S14O!+qx znc_7#LDD{+PlgwUf;+^f@CNf(IKiOaCfoVftA&7hKih4!#Xg`F<5~>_WIeuYkYx<{ zCDPh@e4s-vO7t_h$kWV(8{w%M)T$6NDTzXW@H}APZK7j9p9+2VQT*L=jc%+eiWE6i zw+&y*P5(@Pz&KKAizWj~^}~)KS#?b_8PyQ3zeU))b85)&FS5()rTwUDI4hkcA-5~J zQ7;RU@lvbDVrC!kF9hsDI}p_$gHmT5Ge=ya{Yg81ppk)FEjIK1I^Ewv*_oKkJyBF) zk5pt>R}B`kTxSl`l$*$k>38{Bi5LPK@{iuw3gfpVFn3Soz#Su z{spq!P8wwbKtVN}c)E6eY5b2wWC}#t@0%W%qBq*ji(s4> zj+Km6o#q1PuOvMmx|~fjGcyBwge{zEz(t5nJ3gE)k(Zn79qxCm0v=s7c|woBebd-I znvQQ4biPJ#efF@O&TnS<(r3@D5bPKP; zEKKk$8R|`+OUoyA?1Mu?hj4l%lw)}Ue1J=0%PjM#*fTWtIvr2necAKv@oSuD(J1gp zy{0?pps}htU51JNaMx_s=pnn~Svb04%o7@C(QVq~_L&VQS@LPeu$c$GQ^7Ddm4u)m zY9I=>w@@Y}eUSy28m?hv)%t~DQdhUL;&^JCUMeF`HTxm6GmM=|!h3tS6%#xYxEnR7 zvd^STYHa0pkRM~@RxuqfmWDHJaoA(`q7})v+mRRe~A{c$d84yqQx`cJjn^_rluof8<>`;y@(M1XU3>jPr|X{4|b-y zH-;4?px%bFC91Tl@j9E97;9YQxZlqdn);*!>+{TzGja6Fitl|NG@_w7M(JvZ{3g4?bYRvZQryr_Os{XM2ay zx2|7Y&S*S(BWSWIp*EvD5vag(N9}01=?#QWif>5s7@?3QHWjk%njM-eS79I)+70w* zwz2h<6!K+G=KAW6r5Xq_dTlH6fGm#xqw7KMwQpM7TOk_o$ne*M)c4MXyb$hIvTECs1F_PINjs!6bvf*(lJoJt> z+>HLRENyIKq55Ugtci0(c zAR8YUz@{K3e&ArMhk6=uJeytNnov)$2NpK?9zS%$S;I08sB^+Si(Rn#IRFs6?Hw_m z!4;OET3+@sjGje<0QqpiP`#ml%~Qs)-uALn5y7_h2NhZx4m$>H-#0ZT)B+L***jrt zVKbE2U^JqS0BLs?vC}LQ%2IR^UdaYSUwC|Da?EcrtZvh^P5GS`6{=d(M$1cpHE$0F z3v4bI236|y_DdVfqVd!q#dI#O2Zw<`Ln~t5-SMS^GEU2dR2>~C1;X9s_$z;GtmLxK zBlxhp%G9RnS57fD!cH$pE=!OdIe|scEGG-$H}BkD*OezqaGTN967yaP_Xyh;KYt2u zs$le==}opIytgW|n4_c%Eb_?)Q3JjS@wT0B$n~4`aH0zVG#hpC(I_bNIo{m_b*$IZv>bJ_*ie6 z#@AH2hPw68SP%EomYFV>oX|0PX*V({P?=$18O$A}1R1$BDh~*KidhZhiSsF(l{q*| z3^?F#xK_a=&oFrO21(qCZ(FRKnU-jIi-DThRvWC1FM7wAnYlD-Gq)6#4oN<(ng;AW z?l&%rZ)mTruyO2~q=nPbrV~}QFC+$OgG0nVk6&TtqzTm|%O+@6gc9%_e6~nb=NDkd zKe3tc{2F?u$!A16xU9rBS3O%a$x{96R{jUYl7ir4s)Zwfk738G2E5OvL~$^ZG&^R% zLKXlcCI04oxqM3ap)(*o z`>|$zFPznmlw}pMsvTiWsj3FOefl2}vzg^2;hkjb`Y+om>HykX)0R8vq+S{=7bkS* zkG{<%m<>h~Ay|u|FRi*03we8*=ZZ{pSB4>7$F^fWkx6N0EDL~O;S;X$t3->H?Q@2JF>mr$O@*J| ztZ(iXvB$j7`9B$eyV(I(AZ(yM0rupf!O^euna)4mA3ktPN&OU2-SnjL)SfM$TrD!2 z6vRsAG9&k7Pdpqs(U5c#k0OZh+mjtNJ)$!k&x|g_zvc7JZo#>?DrTajlg;r`IoECk zpZvmFnL)X^U-hD)IOfCHm;j%JshV*$-=YAQFdlDyCPbdD2G-!41N zclk9}M06}iGQ^$}RMvUCeuLWMXT&ZF^30MP&#=A6;MdB&nc&-Ou=YTQH%ppweK#76 zew~RVf;4W45SX>gFskDVTFj)7MF}yuVqKDQbhhW5o8MQH{DAK%=f541cLdV=M^UOZ@9+@w zOPA}M5$eot240ktrfasJrP&%8*hWOX8i3fikC+v)diruP7m|0G&3%QZ)9e@GtNx zaBj-I;Re7|1>qxl&|&aN>G!^jQ80?D6jl~zLi}hii)9jC?PKu-8x+ZT+ zl(<$0q^J11+V9gnu&b_Od9Yv?{1G~4J|F=~JJ-VhdTZBr5e_g!(o zBA~MCwK>Hdij(hU3zUdA2lq3u|Kf0ocb+8G8xWBIzf2RcRzd68aP$UeW!n9vy8l2yQh4!`y zJO9#eTO5u$pOM615FSi#t#;PdxzPuLTzCMZ0a1jUECRlm+oDc8F|b`dqU0(y_@R2^ zY7A{+McFVcI#%|4>3XPSfIH>QTokWipJW*Ww&2| zIkv`ghP&0F7I9Xws{F9VNl26RC1(Py58bCbB-L2xiiwpBpn%km*7F{*X~5ZsGM4PM zx!H0BgT&I52G&7-hdsoG%N+{-ujsWSefL9BB8?1Hw~ds8pr=0?jH4XMD0Q9Yvd^KnANpG}}Og9`)ldonM_5nTnsyghBkmR4=^K zEzCpdE-`{ksnoa(Hi8me&TI`79Am5cC`_mGwqHky&mcoTGSnGsLtAbP&f8GOr5lW~ zE};{Q02F)-d(JEm;!|BmFP z8W!&|INHO>$@b?g5`tD5GvxvDcFW*sMf19`y&|;T@Vt>@q+38O9J*2vSe`DC?wDm) z$VjeC54kP}lO6Mgxia&1K{vGFy&o_^k%!c@JDqh$LbUT&ju;iF4L+jPy|RzJx{*F) z@99*rZpd=KhuT)``eSSI<>qDOO7r4sjahX{AU;~J&|Ij*Id5osUrw`4AMNEt`vn+T zPqmi;s8l+o)?!Xj>+$jrZ6m(W$6X517gcn_Z;!f_-3PxTET>mY+T%0c>%sYQ$P1-B z;fC9~gQaE61r(zUNq(*6-HYbrUP|d#TkzQV#}qpISx*W9ow6f9@-!E+w5t%&l^<5v z;rirF?K1YfRNa{bByf$%zGRU?LU#_+psvLqQR;0!3+L7Mix`niTd3MZk&UC&Ezwv%h>aCR>Pv5*a zm$?T~2cqhGfd8KCb7Cm4UdAIQ(V&+wu_|)@1%=gApPVnX0uq_2vE!>rJ2rkShw8A} zK7=xVl7TlR9;0GD3&dN~OzHQ6=r1Hx-kjQi{xM`~_O|CL+Fw5Bcth@~h(~+aW(=E7 zlbAeeU5$G3{rm1oJo=;Xr(-r&H=c7{l`sblW^`_6ZFk_Acf3t1-Tj45nZh2rMVOy@ z%JnxMs_B3R3aMW$*e!NkKV+w-6#6hhkiW>?hT||C&zCN0{#H8ieN*f%&T(6a=_&wN zKf#1$T%>osBA`iiBIjkFaJC30a`}g>{OIYW>A=j1LT$BpI|{khJr7UMyB^QJ2}lfZ z3n??$F@1=6LIuYw4y6N{_?|wdg^~T*eBaH>d%0YxN4KX9-qEXH7~!2wZWAT2n+k;V z%B+J9?O!{s)Jo)MPmHhLIswLmC=K;U8yeU}p%qHB7NG*wCO#E7t&EA9BjqaZf53g7 z*X|u2WL^9N9q2-YUtJnB7{Nz(?$3J6K6$@3;NT+Mpw2BsqxX5Nx@ zbfkz3`QB`vh#7Wk@U$S8upua-I$!s*T(`xbSXp>!9d!s{WAzUrhM<;FcZ8{F_KB;c zo!6I9Ec9n?@}bRqgQdaWaO^vSr^3qN8in6hc=iGxS3%Bvy~V?g@4|IUN`lY=#0p)! zDe?r!jf`_`w2ns1(7v49rt3OpF+&DA;{FcFq>m*Gqg@ESK9oatBG!L;LoZeIVD07x zdwH2Ewm)6Qhc>pSRqGqPSKH~Z2%z~RAB_NyM7|`Mf8`_fpp1e7YUU?iUqql$N`~$d z=gIcfr&bqA3Vqor+^3^2;X#Wd2kd-{148e#)EaeXg_QUe{K$fQJ^ef69j==YqBa_X zV05g@k@*bJD}vSEzjjlKiWlu&S+PvJ&yOi4dD14DF1a|}TJ=6ChP<|rnAAu+0_=4cHL8e?TwB3 z0&yy>^nX%kiIXH>JdtAA=h5;-tV}I^>k4{$ZvywbIJO#MYJD2(iVSIj!kw$jmD7xT zrV-?O%SG#y2aK%6+XJ1zhR-Q!cj=DtDwzV-Td?MBFz!GnL9N9`lgfk zoins676l`k8XOLHzQ7_!m2?0pF;tkiWpm-~_0et(9(FLIOb z%5WOGnF2ZDQz;^OT_wCFcjYU{f#xE$LB{)~Hd?^gm9hyyB93r!eY9ZfXC@>!LXvM? zBiQ?wy9)494>0C^UYqYfe`g(|lH9i@1^_#kch5`MG~|$ zj;^&vvrqKU5hZV}QC2x4`#&g@%DwBgQ}?MyDxug7yEAJCYO_RNG7Sc*c<$`?Q^gcHkz#WE20V^j>@ z`JH_4FG3lgXLi->-k=C_+pr(Hk%<K2H>jB_52M;?@Tg>&9us}TO^GOX5>!u|IX}(feZV8IQz-OAvFyoa z_qBn96H^Eg%_7Sn7tyr!jM17mvvRJ=v9Vup7{G~7fr2mC%5?)-q3 zq!$Wo?*QZ0e?RV8{u|@uDaO+B^b!Fs4Nb8?CFMm4C}W$+-thAA4K#VO!gf6Lxm0Uu z2p{HbWKKjvTc~QUZH01F$UMrxMxDKN6NgJ#v|QnCijUHVi|+{(`i&=3qrsZq+nLF3iMnvMD zt@bo~xFd^c^n-o2@pm?|Al@ zmLo|cEIDCv86ITOlpFBMfN6I9LEC2mot!xiU7y`?wouv$=qbY>*sVvq0&WKO6gKTQ zn1M>eQeKhY`V~*zoD)v1LEfEO(JNEP9Z%W{w*TV4kS3>F`Osct>zK~O7gj92n}q@p z(dg)LoF;@Gp7TiHB#Dr6E`7F?j=yqCzr2Oy6pH3O z7bcY>i70-kb(85Wy+Wc8p+2&OY*1q&y3kTvBBvCA1$l8?ex8jL%jfLJ6-coVw<-;Y zZo3~hUgQnd7$17uZupCZPP#n2PSslK_hl(9gr*$VQ510Ql5m^1>;-r~b%w}`*X&ra z-ACdrKv4}ITEPe`K%{sZ3d6zj+>+^1>E@qf6TYy-`kxQpasGUT%9GOm$h*umjWxkW zaPGcZ?cr1CM});71i=*T*6UGwFRTWJsmo1*;(?__@|J_o$Hjd?K&g_mZnymq?Q{~{ zOJeS;Wi-l)va~F~?!f>*w4@V}Tz)tUe^AErrW@uS)hIcbFY{>BXzppubNVxHLk(uj zj1qF}U(MY{&AWmQvcAB4RnO0KJ$G&nO<(#&Z1eeLyrJZpN-DuH$7&OfrvA9=?%soP z$ciq<>rG8|XP$uhG-Z^DWA55q8|tjUM8!6dwF_(tAtYnqqX98Zc2EYW1VE2JQ`2t?g+X5Q2tJM&)@k0nwv4#=T&r1K^bh<+`IvO9}s?9emB1VMo z(iY6MKjFyCO5&87*~tAO0k&>tiDha1qkbmGs%54NpBvpYMR5u8h!f0j@LD9FWJX*% zo}vnT>d)7(nCsxzYKfDJ%6K@zbyY2&`t15su<@A0R7(QAwcty?0W=*Lb;XlW0HS;* z`?R6+({6%Bp(#maQ4y0+ePVF9W58Nv2bcKg0%ShE6E4V_86P`G8@eFzma8gsoiMrE zz{9&KDuwV^B}GXPj^T=9;DCH8`-WTwBs?o?{Kwrt(3AaZt!L81-%WVb>gdq-6q+tk z#9GtP(?X36jG5i9X{eT*;`OqYJ&?~7M*{@`_yYGt)et_iVRpVfA&n|*pM|M-S->aX@{x+QDGV`(QhweSM~G@f()qZ3X(q zP;?G8gmss8g#CP|hpC0m*BOUee^5>|ZTj%}!bfqWdm`LIHk(U_R{%{vHK#-IBSVjY z)@hmI`e`IZy(RRTGh0*?#Ez9*Dc?a$`ZN)n$+p=8ZJ$lPXlYwqKH{}W9gYG^{xtnm z`zE)uAF1(r6sZxm_{(T^|AQmW!b$eo)N;9ln|0zcnz^LixNZAt6Z0OQHguu|RFK}d z6u9b!)%PwrU}glyx%SC@2T7@zJvtcA<`Jqk;7&Q{Y87`HR+yZ>(Lzu(cSyj?_!+cp zrPuvz=!9&llA(|8&+Bi>8jM5Gq1$6XY<%i#%wM$+qBIer8v*Fe*vh|n3Dh_@=g!ps z;mz(vraYSH`_6=>ib0iWPckSfV+^bd?ou=2btU&q(4AZY1gxh#C{G+?}FIMn_u(Fli} zj8X|^)93U&5NiYweK2cuUH7Wym05ccVcQOk?FBxQKtfMinYi3baviMCW=7Ns{e&JQ zJ*wTxx!68$X@BPXJ#O1TZW0LmZhuTzeg3;n8pKG(2dlR$wrOqlVR&~6lZxiu>2moH z)|QMA;f53>`Ayn|@mY|idBIFP6f&NDc6Ns7F=xKIjA>wi^V9U9J`JuuwEY1myElt7{56qvrW+sLxZfm1VLoph;SZw*jWRb271>P+zj385#54FCf}i z1>jG2SUrYsm{yRf7=K{i$bNNk{F0-#uX{5RoYxj327*4OG8BZ8V+q}0S~`BY5#BMO zllmgG*acw|Sh|^UV99xjA}Rj?>c7$(yKdZltqy6a^hrMn$t=J0k+ zc;lI}TWe2X#)7LWW?6o`B?9Reb=wR(frVlq5w)9G1)&74Nf(7mi4!@=CQnsPhE}p@ zpmkgJ(0G1i3hd=^J+7pdCMhQ)pImDMb5e^;N-4Q_#dovb`QPxv%S^PXlscgLSGfI@ z>oH3qaid6mpT$6w1ZXnfmi`ACgPoCOri~_yvC=PTJeJwR$qO_$!fUpFT!>zBnf%V7 zNZ?NzPf{L(8Sakr`qX2dTFcGgo#G{MmBm{NFioS@L2i$L{r_q0tly%Fy1p++Dh+}| zrwB+6!qBNmhqO49q$ms^1JWQvcQ?|~4bm}mcS+0)-6k7L@Qa@!S}yEpisIa0(ezP39Yr5^L-lL~*!fw2(DH z#D$K{-rIX_1YMNYOI1K*!;c-Bh?sp0=bKT)EG@U-;u)xNV2@hqijVJ5V}s@!n~d$V z<}f0WNw#QUB>KjmhK%+RW<<}o)o;`G*r5qMFRGdZaa4hZCfUJI2AA~3_rr}p2OhC6 z+7OqF+5{%)Ag4!s;Db0r6US!$>5tDr`2Ijk7Y8MM=g`l4qN3;vA~*A&k4$?y4NSfQ z!DTB>al^@r6$qBRYE8Q!pjg2xsoNc5zbu{}blkGw-qf3BxDVYQ<{ zI;}>QzXXpXwZE_r;5_NE;S~$50)olhA@kEi4cls6=v~gP+^14Rvibp2)=ee-&uAX` zAiUlhz%Y>=*$=H+YUHM6Ju)eeI~KGxOU5e*Y=_BPEHWf8k3D%!R(?LY$-T6IgW8(&764?U6G`w*X+kHRylp298FYKF^R z1*_dMEoMIs3?urQmH=gr3kSgka>qqdJ)ta|uZD*WY_kLaK6=C-T}gJWFg&M?!&SOLLv#Ri}?5ybM04 z@v$6l1!Z3R0B!^faM^SkljP{b2MI0hCgSg-3t>T4~w_6J58nADV-FPv%stl*afBQ&eq+ ztLqGdj-=ltu7yGgEeiO>FsWy-d5bOce}B)txFjEii4t9F8U#H9Pd^$PHCGo8u3)4y znJaNqwqK0!{N8AJ0}pNzQoMU_e8@(JfBHsF7)|Tz0O^*ZZB&+eSGVsYA*6}W5g>}% zFsY6voNj5Gv8!lcqMcmv57{}pQT~4O78cj8FUiI^FdH=bvl!ryJ@wuYJ_z9D zH(zdO^KCdn5_yj_u&p@cdK`b<3;xY4MU{OZ2{>_Um(V(>C0t!B%Qzs+`Zauy(2G`7 zjini&7Hpg`_n%pC++D4uD? zvr3h4ZG=0@l;Yrau5;;jbJ>p3x6^mXe)>HcUt9?&&4>PZ4>j+tZW|{#fIoZF%%wYj zr&9TSXZf>Zl|NTmEV=UZ+}<+u&CJmktCz>~LFpTUB~-}Qez_93Fhf1KT5#gSF7(ct z)s1ag%w-=A<3}2G7Q5QKwC4t!nz?Cvxo+|}_4L=>ws)z+ewiWMbNA4zDdZQnt?@45 zy@J~st^hmqPFGC3p|CE6SKM`d)3%y z;Rs5CPXt0#$q}Ibpbf<|Rd@BpCe}y~n@sj^@w`xezLiL-PLzY}Z2HNu-+el?jP}uJ zVmH;0vCmt(&%M1=L?M|)prwu1v?6Xot-eFRuk6|24W!3PZtjP-HE&GQkb-Ix*|hxz z!$JO=y6VZ|7`*qB{RuRIvj~ypv#og=T=8a>O~_=eL&r_N+vI1H_hOd(#rZ@&rY z!gV!~ATG=lSQkqZj8h=0%mS^1_^VkWU8THM&30;R90m#J>v$W0lJxsMUFi5cdlMmK zZrL9DdOH&_RT5f3yMmUBjFr5rr)NmWWD5MA6$li8Fi%^7qVlYx{l1e=EiC&#q;v4W zT}bel^AF5KXP#(>$%VSqEo-3CUi(!uexHKl ziA?Nc<2Azuht}4}NLp&3N&AD-6Xo)3Fw)1}bdnNRaBak?@rPy$jFz`wPF`s>mpMhA zw(DwrZgf5QOVH^(#CFCXB<7l3v)yc!9*jCapt^BE+*s0^i)=3{o?wKh{d7#`g^)dw z%IPPcovXV(I|yfCaYuEr;)D2*7JXwcwMOG?2A&KbAu?rP8QmO?_#pUqx`^~<H zlOmmB*y!A`b1v3Z)+>J;LX|wFC+j&Z;!Vi~smDH4U|_zt)rbUp73`af+IGQAOXvg6dw5f+`?M9Fi=j=0( zB^SLb=ZTM| ztO)a1<0qCp^5KXeUznpBP8HKr%S8q%CQ+)(H8nyW+I-rJJ!rY`iuR{SQ_*SCq{nvu=R)>k)5??1|vz-fSW zi&@bfAJoc$!Fc4{QhA3#{nY!-qTP6QfJy&D!Hgc6r{a-*bM-b(#Mg%gc!z)tkX{?u z)5#*7D_0z7IVzCpA^toL9GM~Epsz$H^<^=z{Wyq*{_nl~zFyFt=684;>{Hrn??K`_ zN%V0au&$?a;LCV(R!vXSKPg4@J(ksgEtIjsZ~oG0bA&4}{j`D4rBJX`2CLd~SVmzz zSi{Jbsr4C_(Q~RZe@VFbO&>W4oF8+_3S?7c_cKOzA&gmM9>|Lfs%7%W&5>bKPQ%io z38IUG=dgTzg6nMTU!6jV)A?%8?RbqXMQAIET_x!oYF4e2>7+izO04dpKcGy7Lya0F z#^WMR=rr;C05Y zR_kVPv!$8x!SzY&-kTch@lcgE;+0-V>`%EXF5QxE^Yv1SeQWQWlV;|Ww2>Bfe^!&) zzU^JA;8Jt$C+oSK2$q5yRN#o4Kp^%CjRaN^KnWxIqIRy)2yy{ZQJydb%U9jD=lNjP&3ayAF zciT9|oozG^zB0(XpH2o*2e@j&HwR4ZOT3t}EtesQGD;9|MVc zYE8tv1eEDJMCA}$DCN*SSfDTo`$-Y8=l+goBU}KE5(MZ5Ctfhg1twW#Y!iq}H-iMu z?*1&ixh^R;KK4YS1KP~dDBPg4J&6C;#z@wK``t?wg~=i|Nk?CS0^tU$1*sh41{{9? zS$QC^z7zwGZ;xHAJ8Sa+P7f=%+1`&uZZp{j2LvF#fW0BaTy&iDc#atq1|}iqY)cW=#?A#=5Nq za#>3`vbOcUlW)!MsS1!4>@EFV!Uko`g(qI)n#S*VbH@(_{Em# z4yx<<8_G|kebSLHX;{HX{x3T!9(eh+edMF=_K}e<9>_-Daz`!xIdmuK4dszevA*h) zS`W9G|83516C~qwA#9vDxmH5>$T?00-6=UI=GPAhi!xmyIZvR5%h3C-ISjYFLa`qw zxhX-m3az5;Z^KA(JHd~3XomZb@3#2q($x3v~iCJGm}9eHjQnK+zkDfW|EJtfV|aKe zS1_e@`R8XP9YzS=0fE&WfLI4AEZEIN@m%bdf?L;UCg0#S_1z{5)Ny6zgedNzt$18u zlakv@TgRN{!@+Yt>Y^dn@xp-$N|%g@IdOw?TeOJD8L+vkt`K5a^Fk=;=)L|tf!}0C z1Iy{Iy+cTJn^0bnb5R*Tub%(DK(WJ+}3+q(V|v<(Zw>7g52;G zkH|#Vldt#wcYbWQmEwPXPvmTRetTP9q+7~V^+nUP#yHJU2ctmAQ`DI?!F8F^eP9V4 z)yH&q)yiSn%)bbIGaOD(QEt0}FepLj`g|3-k@V>55&rs^k~@0V>e3L|4bt!{axa1e zR}Q?i@I3_U{rDPi53c6MT`v+@z$9+UT3PKr+LIC!Us9Z4P0+U4wbTgDWRI+*(?~Bp ztUo=^EiP;ANR_Z>0=G~zp0|5I4^FCT6ljEnh?yl9a1&*d0&RdBZ!!m5%+<^MnmfUN zs9Nur_rsULEyZQWlQrk6^9Tbxe;?tH7waNvd)5rs=rd?ZkpV1CV5DA-GU5Vsz1V7A zZxG=Wr#|?FQ`>j5zb~9cD54MqTqVG2m+KBl=IC^&c@!P@2IP*|3W4Q_jbOU+zc|z` zhV%?1^DWs3sx31OS$3bSgAScDuNa70M-zE7!zclg)=#Ode9|CAH2Z~B8{bi9BU{NZ zx@5$Br1U8{Z6zcwM2J)clSP8iv{d3sHf$JAk5o-!UXn%eqaf2gI9 z`e1-2f9J>d0o5p(m)L2L=XV%|tRhMq1ipCvi4uHHOiJQYt$%3jQ(}*9k?4#d_*Smw zxkQO*sSBbDv+0#;ImS!G>=0C$a3hr#Q~BbAHV zkHU({kJos835~^na4sZWx_lJf#1iu2Q?#uNWu~ zLxZo_R=9Zd3!{c8$DAG!$qX3~%}7{)hya^IsVhu(r=w22n?uudYgZkf`cw1=-h{Qbc(a?hG5AD22AH-w+3!rd8?_{2c)(Xu( zz{KGsOCNFN$jN@jUcq;g3hJV7pCznygSGNBS{W&fU!C{)TGOXT~(r zfKK3~H`6<-?Cl2wW?Zxu9tScp_Rb|vc{j1G_Hg{>bFTu)UFSuwlk`JrH&dDdmBR4~ zPWEP0y8erYCGmIh%F=1mwxSEIg`|IhE61wKo|i+$%xkyWtG0^_PLac4zx24-QQmHt zSCWFUHY-gSu#o#ho@Q*6&rrom{d>>{0*j?4VZce7R_F1%B{Y5^$_gu5h*xT&W2W)G z<=!CunEtfLvMmEsnyj#*la11j6GS1YlMX*g)NE=aCqB&%7u5Y)DMlF*K^^jW;h6-I z5a#C*swqAlZgKjDrgmULLLy9XUxNmZk~fZe5MWR)WM6lq%~36K{O89_iV7`fLecGR zS<5pDxeD42)npIHD>2H5TT&rAj10j6*8d?fxOyAVCOF9}wwazKxzun|E3MNz< zF19m%OAZoXWo0XQ&VFw-a}>J7W0q&4sU*{a9#jV<)O?ux9qsaI>UxIy(QJCUWOo&D zFM~(bC(i0Q9P_@pQ|~a>t}J;Wf{&TDGmcnC>hGRTMy9#-iyy-Vp$!FLq`Z~}Uh*V| zg4rr`4|)n!OWUfwEp5XUv)N*KV4k zPh(3T-_2G9>c47T( z7|X4~-6LdTD}mF4z=a8W(LW8g2j-;q4H^4-ZFU1fZQkl-%!5(O8zyXkhL54ideHBR(JL+^xUi2 zT7>xsh~pf?cBPN2k0E@P<^OACT4vqw~#h+xF^ z$62MG=&YI%p0Im{sn#VwLue|E4_ zi#PRPME{<(Zx|t|LdmAt-v!SG3zpU#jKg#8{NkqY#5fv#?34{5cn!q&gK+sAt ztl=f^bXT3%5uV8PdY4b>?*Mr9TwKC+8I?|p3?x6qUk@5LZ0x@^ybZmc#3;R!yoSa@ z-U$cBt_;=fZrywo3#pr>%muw}Qb47+NE*jou?AbC8gZ3DIC z;4Q>MwRe=nH!ZgNIJ^lF8RdX)eY!!jvI>8kMnvCrZo+$>J^2tmwiNjUOZ!djskrV* ze7uLoZ#!}t;X9h<9X{$9n#c=^L%t_mt2vvR)q`^!)|0b5EOoqA?#)cAJLj&&m2HW} z`?G=x-u2$qz-8BJ{KFfk6?{TrDbDc|onpIRI+PXys?Dq@w0c)L8v>^Z$p7O8C&eoc zDm^M1&>$apx?N=dk9DI!mv zQ=pMJgR)ji(`i?+#SVUimVb;E9pHa5V=B#aD~b$j{JZoE=;>GhU*`Yfgw!0+IH4a8 zHlw3|k+%nPtXLF?>_tbPWdVPUEtIwWRPy>`uZMCb4UW2x3>eml0bGnSt^TX)o)2>z z&Xp?iFts>4SkFz!*#~CGw}J-0AQqhZMbLDfzu+54V7n$en9V#blykKKa0p>%>9v5J ze+k%{C65^FY)}#VOYxz=ltB(tYP@v6Y``Lngy)XG9}(>sJ_?&9Eyo_ay|*Go+dqoj z*K$G|ED+Hy^}5;UHyeHvz`lp8_sSXl^6!U}6JxM}=?U#tR%%m={eVUZqL-=eKLjLD zU*PUY{79~7G|lF(>FE5X3eCyALjiw3|35}bC!i}xwb(L}{txoz|92r@7NuqtF!9i; zn8L|2&+<|pq?{a|;2`s#JvY6iL9d#>N>(r9Yr>XMc?t^6@*RNxS^|IFPHJywlvet$ zIGO;3zH)Mnd{n}t^?wSjqGPE#a%znC z#cWb1ZkuHiTFa{j!;N*tP{N!xmJwUatuPXM2d8+JWpcwFBgB8&#z&6P=YgU&d)__u zF**{_S+80!G6*S~3!Al>OX+~taql}y;zRlQr&~);@Uf@lG z!KOL#^@qT6HMH$PjE&A|hd-{w`!-ee>7j3e{Q2@o)xLz`HSu%p%2|Tj`r_{R<$rE= z_ZV+)rEP_kLG<~naA8Q5wlX~d*jf8C!O6#8h#)=uMAEI(?{afSPpnvmC^Jo}e0|(R z{@-9A2VgklE2^mpt;vuRGk-&ba0SOFl9ii9u^}x?(n)a-S;1tLzB>l0v;v5{hW8^O zflYrM@~`6t`#%s-501+V39a`?B(ZXff-C1hC5ycmI0EU>ao|2@L+zbMclK}scfQt= zs|EN=3>c*6zhi@)3{zlU-ZyR+N!~CB7%Y=Ke#Xk$_f1d^u51z)>|at6d{mYgQ$FG< z(w$ES>;wtYU)PTwJE$uLNB}>EFW&-c?2FO4I7vu_*j^iv(*Gj<*VUKmOwylQX4%BSv;0N`ba z<1;5MZ{)ffu)iTcInx;=U_cz)_o#*yWf?SN1&2P4eYxNDt+j zZwh0l#}q)Vfn=kPlbV!7$DI5f1{_J=>b-pw48|v zGQY@tJuxcvl6W-3-!$IGjeT?LFpHr$q^|Nu(=z(BxqY1Mg;v?0<;oYK)3K}r51nUM zR8$moZ%@j+`~e#7MKJ)LEn}e7?Hr&IrsI9RxbzR&)y^c1m5tBKGjbrH>m2v=99lAr zR%k$uAKg8>FQoga)~`27cs(tceR$@ikF;Q96Jyho_xXRCX|aVIodIBX~Bb z{J7NA-)q8MjrZWJQ$+Zm!+~5#HM9n8iQ;Mf5$4^1HTuR=txr5%obx9Jw>X*Rd2&!{ z)x!#SaqxnPX?zV?_Oky0tJE|4P^@j^F8QWONzut2JrorB-CmWl7gBXX;~ zKW`BYvWs<7oJe|=LCpBp`=EAyFDz6jVz1<1ldnE!CJ8+fNJ;B`$cDM$0D09WO40ID z@267mOOje~SkNT9nQG+4YBen9o-q>E*~<(jq-e&)S7LdzuwC6q$Ma%|O~qu^vE;o? zhpU-{dxk`=XhLfB-?ax_fiF2ZM$8;y`Rh2;X;M}?(j&JihTTmOU#kn-d(nA+QTUqH zSr5}ve*srS^ENTiM~Y zX7I>Ir#$Sv)IL}FlV$8VBerCd?fq^s?Ebz90nCUw-Tvq53S_>F(H3mWTSqb{<{sk* z9fH}nIJX}gtfg$#+nnDXOs+If!hP{NRHFlR$7CMzIT(IW^hUb{D5(&ZBjNq=myCNO zcK9{^Lf*Pm!iov#V()*q0jgMidIO{~WK&ix1p#V;(KxsKCE%LK2(D`=pPh4aARCx) zsM8v5$k%vm@VFSOZz38pr$%_{?IrZ3zI>pa>jC;ve5EE|CTrsNKPi?wSpWb4 literal 0 HcmV?d00001 diff --git a/i18n/en.pot b/i18n/en.pot index 70bad5d44..974020973 100644 --- a/i18n/en.pot +++ b/i18n/en.pot @@ -5,8 +5,8 @@ msgstr "" "Content-Type: text/plain; charset=utf-8\n" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=2; plural=(n != 1)\n" -"POT-Creation-Date: 2024-02-13T14:56:50.029Z\n" -"PO-Revision-Date: 2024-02-13T14:56:50.030Z\n" +"POT-Creation-Date: 2024-06-04T11:01:31.012Z\n" +"PO-Revision-Date: 2024-06-04T11:01:31.013Z\n" msgid "Add to {{axisName}}" msgstr "Add to {{axisName}}" @@ -381,6 +381,9 @@ msgstr "Show interpretations and details" msgid "View" msgstr "View" +msgid "Reset sidebar width" +msgstr "Reset sidebar width" + msgid "Update" msgstr "Update" diff --git a/src/actions/ui.js b/src/actions/ui.js index 479b01c01..77871dbda 100644 --- a/src/actions/ui.js +++ b/src/actions/ui.js @@ -55,6 +55,7 @@ import { SET_UI_ACCESSORY_PANEL_ACTIVE_TAB, UPDATE_UI_ENTITY_TYPE_ID, CLEAR_UI_ENTITY_TYPE, + SET_UI_ACCESSORY_PANEL_WIDTH, } from '../reducers/ui.js' export const acSetUiDraggingId = (value) => ({ @@ -263,6 +264,11 @@ export const acSetUiAccessoryPanelActiveTab = (value) => ({ value, }) +export const acSetUiAccessoryPanelWidth = (value) => ({ + type: SET_UI_ACCESSORY_PANEL_WIDTH, + value, +}) + export const acToggleUiSidebarHidden = () => ({ type: TOGGLE_UI_SIDEBAR_HIDDEN, }) diff --git a/src/components/MainSidebar/MainSidebar.js b/src/components/MainSidebar/MainSidebar.js index b676b6eef..49001fc1c 100644 --- a/src/components/MainSidebar/MainSidebar.js +++ b/src/components/MainSidebar/MainSidebar.js @@ -1,20 +1,20 @@ import i18n from '@dhis2/d2-i18n' import { IconArrowRight16, IconFolder16, Tooltip } from '@dhis2/ui' import cx from 'classnames' -import React from 'react' +import React, { useCallback, useEffect, useState } from 'react' import { useDispatch, useSelector } from 'react-redux' import { acSetUiAccessoryPanelActiveTab, acSetUiAccessoryPanelOpen, acSetUiDetailsPanelOpen, } from '../../actions/ui.js' -import { PROGRAM_TYPE_WITH_REGISTRATION } from '../../modules/programTypes.js' import { ACCESSORY_PANEL_TAB_INPUT, ACCESSORY_PANEL_TAB_PROGRAM, ACCESSORY_PANEL_TAB_TRACKED_ENTITY, ACCESSORY_PANEL_TAB_YOUR, -} from '../../modules/ui.js' +} from '../../modules/accessoryPanelConstants.js' +import { PROGRAM_TYPE_WITH_REGISTRATION } from '../../modules/programTypes.js' import { OUTPUT_TYPE_EVENT, OUTPUT_TYPE_TRACKED_ENTITY, @@ -40,6 +40,7 @@ import { } from './SelectedDimensionsContext.js' import { TrackedEntityDimensionsMenuItem } from './TrackedEntityDimensionsMenuItem.js' import { TrackedEntityDimensionsPanel } from './TrackedEntityDimensionsPanel/index.js' +import { useResizableAccessorySidebar } from './useResizableAccessorySidebar.js' import { YourDimensionsMenuItem } from './YourDimensionsMenuItem.js' import { YourDimensionsPanel } from './YourDimensionsPanel/index.js' @@ -47,10 +48,19 @@ const MainSidebar = () => { const dispatch = useDispatch() const selectedTabId = useSelector(sGetUiAccessoryPanelActiveTab) const open = useSelector(sGetUiShowAccessoryPanel) && Boolean(selectedTabId) + const [isTransitioning, setIsTransitioning] = useState(false) const selectedInputType = useSelector(sGetUiInputType) const selectedProgramId = useSelector(sGetUiProgramId) const selectedStageId = useSelector(sGetUiProgramStageId) const selectedEntityTypeId = useSelector(sGetUiEntityTypeId) + const { + isResizing, + accessoryStyle, + accessoryInnerStyle, + onResizeHandleMouseDown, + onResizeHandleFocus, + onResizeHandleDblClick, + } = useResizableAccessorySidebar(!open) const program = useSelector((state) => sGetMetadataById(state, selectedProgramId) ) @@ -77,20 +87,35 @@ const MainSidebar = () => { const isHidden = useSelector(sGetUiSidebarHidden) const setOpen = (newOpen) => dispatch(acSetUiAccessoryPanelOpen(newOpen)) - const setSelectedTabId = (id) => - dispatch(acSetUiAccessoryPanelActiveTab(id)) + const setSelectedTabId = useCallback( + (id) => { + dispatch(acSetUiAccessoryPanelActiveTab(id)) + }, + [dispatch] + ) const closeDetailsPanel = () => dispatch(acSetUiDetailsPanelOpen(false)) const onClick = (id) => { if (open && id === selectedTabId) { - setSelectedTabId(null) + // set selectedTabId to null after the transition has completed + setIsTransitioning(true) setOpen(false) } else { setSelectedTabId(id) - setOpen(true) closeDetailsPanel() + if (!open) { + setOpen(true) + setIsTransitioning(true) + } } } const { counts } = useSelectedDimensions() + + useEffect(() => { + if (!open && !isTransitioning) { + setSelectedTabId(null) + } + }, [open, isTransitioning, setSelectedTabId]) + const programDimensionsItem = ( } @@ -104,7 +129,12 @@ const MainSidebar = () => { ) return ( -

+
} @@ -166,10 +196,16 @@ const MainSidebar = () => { [styles.hidden]: !open, [styles.padded]: selectedTabId === ACCESSORY_PANEL_TAB_INPUT, + [styles.transitioning]: isTransitioning, })} + style={accessoryStyle} data-test="accessory-sidebar" > -
+
setIsTransitioning(false)} + > @@ -185,6 +221,16 @@ const MainSidebar = () => { visible={selectedTabId === ACCESSORY_PANEL_TAB_YOUR} />
+ {open && ( +
+ )}
) diff --git a/src/components/MainSidebar/MainSidebar.module.css b/src/components/MainSidebar/MainSidebar.module.css index e7d489f63..07fd166cc 100644 --- a/src/components/MainSidebar/MainSidebar.module.css +++ b/src/components/MainSidebar/MainSidebar.module.css @@ -1,5 +1,6 @@ .container { display: flex; + z-index: 4; } .container.hidden { display: none; @@ -7,34 +8,73 @@ .main, .accessory { box-sizing: border-box; - width: 260px; } .main { background-color: var(--colors-grey100); border-right: 1px solid var(--colors-grey400); box-shadow: 1px 0 2px 0 rgb(0 0 0 / 0.03); + width: 260px; + z-index: 5; } .accessory { background-color: var(--colors-white); - overflow-x: hidden; - transition: width 200ms ease-out; + overflow-x: visible; + transition: width 150ms linear; display: flex; + position: relative; } -.accessory.hidden { - width: 0; +.accessory.hidden, +.accessory.transitioning { + pointer-events: none; + overflow-x: hidden; } .accessoryInner { - width: 260px; border-right: 1px solid var(--colors-grey400); transform: translateX(0); - transition: transform 200ms ease-out; + transition: transform 150ms linear, width 150ms linear; flex-shrink: 0; display: flex; flex-direction: column; } -.accessory.hidden .accessoryInner { - transform: translateX(-260px); -} .accessory.padded .accessoryInner { padding: var(--spacers-dp12) var(--spacers-dp8); } +.resizeHandle { + position: absolute; + height: 100%; + /* Interaction area extends 8px left and + * right of the sidebar border */ + width: 17px; + right: -8px; + cursor: col-resize; +} +.resizeHandle::before { + content: ''; + background-color: var(--colors-blue600); + position: absolute; + top: 0; + bottom: 0; + /* Blue line extends 1px left and right + * from sidebar border */ + left: 7px; + width: 3px; + pointer-events: none; + opacity: 0; + /* Hide immidiately */ + transition: opacity 150ms 0ms; +} +.resizeHandle:hover::before { + opacity: 1; + /* Show with a 500ms delay */ + transition: opacity 150ms 500ms; +} +.container.resizing .accessory, +.container.resizing .accessoryInner { + /* Disable transitions to prevent visual glitches while resizing */ + transition: none; +} +.container.resizing .resizeHandle::before, +.container .resizeHandle:focus-visible::before { + /* Prevent line from fading while resizing and when focussed */ + opacity: 1; +} diff --git a/src/components/MainSidebar/useResizableAccessorySidebar.js b/src/components/MainSidebar/useResizableAccessorySidebar.js new file mode 100644 index 000000000..d9a309114 --- /dev/null +++ b/src/components/MainSidebar/useResizableAccessorySidebar.js @@ -0,0 +1,208 @@ +import { useCallback, useEffect, useMemo, useState } from 'react' +import { useDispatch, useSelector } from 'react-redux' +import { acSetUiAccessoryPanelWidth } from '../../actions/ui.js' +import { + ARROW_LEFT_KEY, + ARROW_RIGHT_KEY, + ACCESSORY_PANEL_MIN_WIDTH, + ACCESSORY_PANEL_MIN_PX_AT_END, + ACCESSORY_PANEL_DEFAULT_WIDTH, +} from '../../modules/accessoryPanelConstants.js' +import { setUserSidebarWidthToLocalStorage } from '../../modules/localStorage.js' +import { getUserSidebarWidth } from '../../modules/ui.js' +import { debounceEventHandler } from '../../modules/utils.js' +import { sGetUiAccessoryPanelWidth } from '../../reducers/ui.js' + +const createWidthWithinBoundsCalculator = (event, startWidth) => { + const element = event.currentTarget + const isKeyboardMode = event.type === 'focus' + const rect = element.getBoundingClientRect() + const minWidth = ACCESSORY_PANEL_MIN_WIDTH + // Take center of draghandle on X-axis as starting point + const startPageX = Math.ceil(rect.left + rect.width / 2) + const maxPageX = window.innerWidth - ACCESSORY_PANEL_MIN_PX_AT_END + const maxDeltaX = maxPageX - startPageX + const maxWidth = startWidth + maxDeltaX + + let virtualWidth = startWidth + let actualWidth = startWidth + + return (deltaX) => { + virtualWidth = isKeyboardMode + ? actualWidth + deltaX + : virtualWidth + deltaX + + if (virtualWidth < minWidth) { + actualWidth = minWidth + } else if (virtualWidth > maxWidth) { + actualWidth = maxWidth + } else { + actualWidth = virtualWidth + } + + return actualWidth + } +} + +export const useResizableAccessorySidebar = (isHidden) => { + const dispatch = useDispatch() + const userSettingWidth = useSelector(sGetUiAccessoryPanelWidth) + const [isResizing, setIsResizing] = useState(false) + const [width, setWidth] = useState(userSettingWidth) + const styles = useMemo( + () => + isHidden + ? { + accessoryStyle: { width: 0 }, + accessoryInnerStyle: { + width: `${width}px`, + transform: `translate3d(-${width}px, 0, 0)`, + }, + } + : { + accessoryStyle: { width: `${width}px` }, + accessoryInnerStyle: { width: `${width}px` }, + }, + [isHidden, width] + ) + + const onResizeHandleMouseDown = useCallback( + (event) => { + event.preventDefault() + event.stopPropagation() + + const resizeHandleElement = event.currentTarget + /* If the user focusses the draghandle by tabbing/ keyboard navigation, + * but never blurs it, and then starts resizing using the mouse, it causes + * problems we need to deal with. These situations can be identified by + * the fact that the draghandle is already the active element when the + * mousedown event fires */ + const isActive = document.activeElement === resizeHandleElement + + if (isActive) { + // Manually call blur to ensure event handlers are removed + resizeHandleElement.blur() + } + + setIsResizing(true) + + /* Because the user never blurred the draghandle, the + * width preference is not yet updated when this callback + * is executed. Since the userSettingWidth is stale, the width + * needs to be assessed some other way. The solution below + * works but will break when make any changes to the relevant + * DOM structure. */ + const startWidth = isActive + ? resizeHandleElement.previousSibling.offsetWidth + : userSettingWidth + const computeWidth = createWidthWithinBoundsCalculator( + event, + startWidth + ) + let width = startWidth + + const onMouseMove = (event) => { + event.preventDefault() + event.stopPropagation() + + // if + width = computeWidth(event.movementX) + + setWidth(width) + } + /* Use the window as event target to avoid issues when the browser + * lags behind and the draghandle temporarily loses its hover state */ + window.addEventListener('mousemove', onMouseMove) + window.addEventListener( + 'mouseup', + (event) => { + event.preventDefault() + event.stopPropagation() + setIsResizing(false) + window.removeEventListener('mousemove', onMouseMove) + setUserSidebarWidthToLocalStorage(width) + dispatch(acSetUiAccessoryPanelWidth(width)) + }, + { once: true } + ) + }, + [dispatch, userSettingWidth] + ) + + const onResizeHandleFocus = useCallback( + (event) => { + setIsResizing(true) + const resizeHandleElement = event.currentTarget + const startWidth = userSettingWidth + const computeWidth = createWidthWithinBoundsCalculator( + event, + startWidth + ) + + let width = startWidth + + const onKeyDown = (event) => { + // Ignore all keys apart from left and right arrow + if ( + event.key !== ARROW_LEFT_KEY && + event.key !== ARROW_RIGHT_KEY + ) { + return + } + const deltaX = event.key === ARROW_LEFT_KEY ? -10 : 10 + width = computeWidth(deltaX) + setWidth(width) + } + resizeHandleElement.addEventListener('keydown', onKeyDown) + resizeHandleElement.addEventListener( + 'blur', + (event) => { + event.preventDefault() + event.stopPropagation() + setIsResizing(false) + window.removeEventListener('keydown', onKeyDown) + setUserSidebarWidthToLocalStorage(width) + dispatch(acSetUiAccessoryPanelWidth(width)) + }, + { once: true } + ) + }, + [dispatch, userSettingWidth] + ) + + const onResizeHandleDblClick = (event) => { + event.stopPropagation() + event.preventDefault() + setWidth(ACCESSORY_PANEL_DEFAULT_WIDTH) + setUserSidebarWidthToLocalStorage(ACCESSORY_PANEL_DEFAULT_WIDTH) + dispatch(acSetUiAccessoryPanelWidth(ACCESSORY_PANEL_DEFAULT_WIDTH)) + } + + useEffect(() => { + // Respond to reset via view menu + if (userSettingWidth === ACCESSORY_PANEL_DEFAULT_WIDTH) { + setWidth(ACCESSORY_PANEL_DEFAULT_WIDTH) + } + }, [userSettingWidth]) + + useEffect(() => { + const debouncedOnResize = debounceEventHandler(() => { + /*`getUserSidebarWidth` takes window width into + * account so the returned value is save to use */ + const width = getUserSidebarWidth() + setWidth(width) + setUserSidebarWidthToLocalStorage(width) + dispatch(acSetUiAccessoryPanelWidth(width)) + }) + window.addEventListener('resize', debouncedOnResize) + return () => window.removeEventListener('resize', debouncedOnResize) + }, [dispatch]) + + return { + ...styles, + isResizing, + onResizeHandleMouseDown, + onResizeHandleFocus, + onResizeHandleDblClick, + } +} diff --git a/src/components/Toolbar/ViewDropDown.js b/src/components/Toolbar/ViewDropDown.js index 98e5d21df..b66aba0d2 100644 --- a/src/components/Toolbar/ViewDropDown.js +++ b/src/components/Toolbar/ViewDropDown.js @@ -10,12 +10,16 @@ import { acToggleUiSidebarHidden, acToggleUiLayoutPanelHidden, acSetUiDetailsPanelOpen, + acSetUiAccessoryPanelWidth, } from '../../actions/ui.js' +import { ACCESSORY_PANEL_DEFAULT_WIDTH } from '../../modules/accessoryPanelConstants.js' +import { setUserSidebarWidthToLocalStorage } from '../../modules/localStorage.js' import { sGetCurrentId } from '../../reducers/current.js' import { sGetUiLayoutPanelHidden, sGetUiSidebarHidden, sGetUiShowDetailsPanel, + sGetUiAccessoryPanelWidth, } from '../../reducers/ui.js' export default function ViewDropDown() { @@ -23,6 +27,7 @@ export default function ViewDropDown() { const isSidebarHidden = useSelector(sGetUiSidebarHidden) const isLayoutPanelHidden = useSelector(sGetUiLayoutPanelHidden) const isDetailsPanelOpen = useSelector(sGetUiShowDetailsPanel) + const userSettingWidth = useSelector(sGetUiAccessoryPanelWidth) const id = useSelector(sGetCurrentId) const toggleLayoutPanelHidden = useCallback(() => { @@ -33,6 +38,11 @@ export default function ViewDropDown() { dispatch(acToggleUiSidebarHidden()) }, [dispatch]) + const resetAccessorySidebarWidth = useCallback(() => { + setUserSidebarWidthToLocalStorage(ACCESSORY_PANEL_DEFAULT_WIDTH) + dispatch(acSetUiAccessoryPanelWidth(ACCESSORY_PANEL_DEFAULT_WIDTH)) + }, [dispatch]) + const toggleDetailsPanelOpen = useCallback(() => { dispatch(acSetUiDetailsPanelOpen(!isDetailsPanelOpen)) }, [dispatch, isDetailsPanelOpen]) @@ -58,6 +68,13 @@ export default function ViewDropDown() { label={toggleSidebarText} onClick={toggleSidebarHidden} /> + + parseInt( + window.localStorage.getItem(STORAGE_KEY) ?? + ACCESSORY_PANEL_DEFAULT_WIDTH + ) + +export const setUserSidebarWidthToLocalStorage = (width) => { + window.localStorage.setItem(STORAGE_KEY, width) +} diff --git a/src/modules/ui.js b/src/modules/ui.js index b9ca4f500..5827675e3 100644 --- a/src/modules/ui.js +++ b/src/modules/ui.js @@ -4,9 +4,14 @@ import { VIS_TYPE_LINE_LIST, VIS_TYPE_PIVOT_TABLE, } from '@dhis2/analytics' +import { + PRIMARY_PANEL_WIDTH, + ACCESSORY_PANEL_MIN_PX_AT_END, +} from './accessoryPanelConstants.js' import { getConditionsFromVisualization } from './conditions.js' import { getRequestOptions } from './getRequestOptions.js' import { getAdaptedUiLayoutByType } from './layout.js' +import { getUserSidebarWidthFromLocalStorage } from './localStorage.js' import { getOptionsFromVisualization } from './options.js' import { getParentGraphMapFromVisualization } from './parentGraphMap.js' import { getRepetitionFromVisualisation } from './repetition.js' @@ -69,7 +74,9 @@ export const getDefaultSorting = () => ({ direction: 'default', }) -export const ACCESSORY_PANEL_TAB_INPUT = 'INPUT' -export const ACCESSORY_PANEL_TAB_PROGRAM = 'PROGRAM' -export const ACCESSORY_PANEL_TAB_YOUR = 'YOUR' -export const ACCESSORY_PANEL_TAB_TRACKED_ENTITY = 'TRACKED_ENTITY' +export const getUserSidebarWidth = () => + Math.min( + getUserSidebarWidthFromLocalStorage(), + window.innerWidth - + (PRIMARY_PANEL_WIDTH + ACCESSORY_PANEL_MIN_PX_AT_END) + ) diff --git a/src/modules/utils.js b/src/modules/utils.js index 662be4676..197dcb25b 100644 --- a/src/modules/utils.js +++ b/src/modules/utils.js @@ -2,6 +2,16 @@ import { useState, useEffect, useRef } from 'react' const DEFAULT_USER_INPUT_DELAY = 500 +export const debounceEventHandler = (callback, delay = 150) => { + let timer = null + return (event) => { + if (timer) { + clearTimeout(timer) + } + timer = setTimeout(callback, delay, event) + } +} + export const useDebounce = (value, delay = DEFAULT_USER_INPUT_DELAY) => { const [debouncedValue, setDebouncedValue] = useState(value) useEffect(() => { diff --git a/src/reducers/ui.js b/src/reducers/ui.js index 590827559..790e2cb6a 100644 --- a/src/reducers/ui.js +++ b/src/reducers/ui.js @@ -27,7 +27,11 @@ import { getProgramDimensions, } from '../modules/programDimensions.js' import { getHiddenTimeDimensions } from '../modules/timeDimensions.js' -import { getAdaptedUiByType, getUiFromVisualization } from '../modules/ui.js' +import { + getAdaptedUiByType, + getUiFromVisualization, + getUserSidebarWidth, +} from '../modules/ui.js' import { OUTPUT_TYPE_EVENT, OUTPUT_TYPE_TRACKED_ENTITY, @@ -50,6 +54,7 @@ export const SET_UI_FROM_VISUALIZATION = 'SET_UI_FROM_VISUALIZATION' export const CLEAR_UI = 'CLEAR_UI' export const SET_UI_DETAILS_PANEL_OPEN = 'SET_UI_DETAILS_PANEL_OPEN' export const SET_UI_ACCESSORY_PANEL_OPEN = 'SET_UI_ACCESSORY_PANEL_OPEN' +export const SET_UI_ACCESSORY_PANEL_WIDTH = 'SET_UI_ACCESSORY_PANEL_WIDTH' export const SET_UI_ACCESSORY_PANEL_ACTIVE_TAB = 'SET_UI_ACCESSORY_PANEL_ACTIVE_TAB' export const SET_UI_EXPANDED_LAYOUT_PANEL = 'SET_UI_EXPANDED_LAYOUT_PANEL' @@ -88,6 +93,7 @@ const EMPTY_UI = { filters: [], }, itemsByDimension: {}, + accessoryPanelWidth: getUserSidebarWidth(), options: {}, parentGraphMap: {}, repetitionByDimension: {}, @@ -115,6 +121,7 @@ export const DEFAULT_UI = { options: getOptionsForUi(), showAccessoryPanel: true, accessoryPanelActiveTab: 'INPUT', + accessoryPanelWidth: getUserSidebarWidth(), showDetailsPanel: false, showExpandedLayoutPanel: false, hideMainSideBar: false, @@ -297,6 +304,12 @@ export default (state = EMPTY_UI, action) => { showDetailsPanel: action.value ? false : state.showDetailsPanel, } } + case SET_UI_ACCESSORY_PANEL_WIDTH: { + return { + ...state, + accessoryPanelWidth: action.value, + } + } case SET_UI_ACCESSORY_PANEL_ACTIVE_TAB: { return { ...state, @@ -435,6 +448,8 @@ export const sGetUiShowAccessoryPanel = (state) => sGetUi(state).showAccessoryPanel export const sGetUiAccessoryPanelActiveTab = (state) => sGetUi(state).accessoryPanelActiveTab +export const sGetUiAccessoryPanelWidth = (state) => + sGetUi(state).accessoryPanelWidth export const sGetUiShowExpandedLayoutPanel = (state) => sGetUi(state).showExpandedLayoutPanel export const sGetUiSidebarHidden = (state) => From 2ac2b78278782e4e3fe38f604d84e67837b52447 Mon Sep 17 00:00:00 2001 From: "@dhis2-bot" Date: Wed, 26 Jun 2024 15:05:07 +0000 Subject: [PATCH 29/62] chore(release): cut 101.1.0 [skip release] # [101.1.0](https://github.com/dhis2/line-listing-app/compare/v101.0.7...v101.1.0) (2024-06-26) ### Features * add resizable sidebar (DHIS2-17170) ([#534](https://github.com/dhis2/line-listing-app/issues/534)) ([2904c66](https://github.com/dhis2/line-listing-app/commit/2904c66b077871cfef99ed889bdc234a0211e4cb)) --- CHANGELOG.md | 7 +++++++ package.json | 2 +- 2 files changed, 8 insertions(+), 1 deletion(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 58a4a895f..5659a4976 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,3 +1,10 @@ +# [101.1.0](https://github.com/dhis2/line-listing-app/compare/v101.0.7...v101.1.0) (2024-06-26) + + +### Features + +* add resizable sidebar (DHIS2-17170) ([#534](https://github.com/dhis2/line-listing-app/issues/534)) ([2904c66](https://github.com/dhis2/line-listing-app/commit/2904c66b077871cfef99ed889bdc234a0211e4cb)) + ## [101.0.7](https://github.com/dhis2/line-listing-app/compare/v101.0.6...v101.0.7) (2024-06-24) diff --git a/package.json b/package.json index 1220751be..6657320ec 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "line-listing-app", - "version": "101.0.7", + "version": "101.1.0", "description": "DHIS2 Line Listing", "license": "BSD-3-Clause", "private": true, From 31c73366f5e0a0a978bb4c28d965291b6f7ff8e4 Mon Sep 17 00:00:00 2001 From: Hendrik de Graaf Date: Thu, 27 Jun 2024 09:31:13 +0200 Subject: [PATCH 30/62] fix: bump analytics with fix for DHIS2-16904 (#556) * fix: bump analytics with fix for DHIS2-16904 * chore: remove duplicate dependencies --------- Co-authored-by: Philip-Larsen-Donnelly <35666657+Philip-Larsen-Donnelly@users.noreply.github.com> --- package.json | 2 +- yarn.lock | 680 ++++++++------------------------------------------- 2 files changed, 101 insertions(+), 581 deletions(-) diff --git a/package.json b/package.json index 6657320ec..5e7ffd3f9 100644 --- a/package.json +++ b/package.json @@ -38,7 +38,7 @@ "typescript": "^4.8.4" }, "dependencies": { - "@dhis2/analytics": "^26.7.0", + "@dhis2/analytics": "^26.7.5", "@dhis2/app-runtime": "^3.4.4", "@dhis2/ui": "^9.4.2", "@dnd-kit/core": "^5.0.3", diff --git a/yarn.lock b/yarn.lock index 2bd78fbae..dd2935797 100644 --- a/yarn.lock +++ b/yarn.lock @@ -31,14 +31,7 @@ dependencies: "@babel/highlight" "^7.10.4" -"@babel/code-frame@^7.0.0", "@babel/code-frame@^7.10.4", "@babel/code-frame@^7.12.13", "@babel/code-frame@^7.16.0", "@babel/code-frame@^7.21.4", "@babel/code-frame@^7.8.3": - version "7.21.4" - resolved "https://registry.yarnpkg.com/@babel/code-frame/-/code-frame-7.21.4.tgz#d0fa9e4413aca81f2b23b9442797bda1826edb39" - integrity sha512-LYvhNKfwWSPpocw8GI7gpK2nq3HSDuEPC/uSYaALSJu9xjsalaaYFOq0Pwt5KmVqwEbZlDu81aLXwBOmD/Fv9g== - dependencies: - "@babel/highlight" "^7.18.6" - -"@babel/code-frame@^7.24.7": +"@babel/code-frame@^7.0.0", "@babel/code-frame@^7.10.4", "@babel/code-frame@^7.12.13", "@babel/code-frame@^7.16.0", "@babel/code-frame@^7.21.4", "@babel/code-frame@^7.24.7", "@babel/code-frame@^7.8.3": version "7.24.7" resolved "https://registry.yarnpkg.com/@babel/code-frame/-/code-frame-7.24.7.tgz#882fd9e09e8ee324e496bd040401c6f046ef4465" integrity sha512-BcYH1CVJBO9tvyIZ2jVeXgSIMvGZ2FDRvDdOIVQyuklNKSsx+eppDEBq/g47Ayw+RqNFE+URvOShmf+f/qwAlA== @@ -81,17 +74,7 @@ eslint-visitor-keys "^2.1.0" semver "^6.3.0" -"@babel/generator@^7.22.0", "@babel/generator@^7.4.0", "@babel/generator@^7.7.2": - version "7.22.3" - resolved "https://registry.yarnpkg.com/@babel/generator/-/generator-7.22.3.tgz#0ff675d2edb93d7596c5f6728b52615cfc0df01e" - integrity sha512-C17MW4wlk//ES/CJDL51kPNwl+qiBQyN7b9SKyVp11BLGFeSPoVaHrv+MNt8jwQFhQWowW88z1eeBx3pFz9v8A== - dependencies: - "@babel/types" "^7.22.3" - "@jridgewell/gen-mapping" "^0.3.2" - "@jridgewell/trace-mapping" "^0.3.17" - jsesc "^2.5.1" - -"@babel/generator@^7.24.7": +"@babel/generator@^7.22.0", "@babel/generator@^7.24.7", "@babel/generator@^7.4.0", "@babel/generator@^7.7.2": version "7.24.7" resolved "https://registry.yarnpkg.com/@babel/generator/-/generator-7.24.7.tgz#1654d01de20ad66b4b4d99c135471bc654c55e6d" integrity sha512-oipXieGC3i45Y1A41t4tAqpnEZWgB/lC6Ehh6+rOviR5XWpTtMmLN+fGjz9vOiNRt0p6RtO6DtD0pdU3vpqdSA== @@ -162,27 +145,14 @@ resolve "^1.14.2" semver "^6.1.2" -"@babel/helper-environment-visitor@^7.18.9", "@babel/helper-environment-visitor@^7.22.1": - version "7.22.1" - resolved "https://registry.yarnpkg.com/@babel/helper-environment-visitor/-/helper-environment-visitor-7.22.1.tgz#ac3a56dbada59ed969d712cf527bd8271fe3eba8" - integrity sha512-Z2tgopurB/kTbidvzeBrc2To3PUP/9i5MUe+fU6QJCQDyPwSH2oRapkLw3KGECDYSjhQZCNxEvNvZlLw8JjGwA== - -"@babel/helper-environment-visitor@^7.24.7": +"@babel/helper-environment-visitor@^7.18.9", "@babel/helper-environment-visitor@^7.22.1", "@babel/helper-environment-visitor@^7.24.7": version "7.24.7" resolved "https://registry.yarnpkg.com/@babel/helper-environment-visitor/-/helper-environment-visitor-7.24.7.tgz#4b31ba9551d1f90781ba83491dd59cf9b269f7d9" integrity sha512-DoiN84+4Gnd0ncbBOM9AZENV4a5ZiL39HYMyZJGZ/AZEykHYdJw0wW3kdcsh9/Kn+BRXHLkkklZ51ecPKmI1CQ== dependencies: "@babel/types" "^7.24.7" -"@babel/helper-function-name@^7.18.9", "@babel/helper-function-name@^7.19.0", "@babel/helper-function-name@^7.21.0": - version "7.21.0" - resolved "https://registry.yarnpkg.com/@babel/helper-function-name/-/helper-function-name-7.21.0.tgz#d552829b10ea9f120969304023cd0645fa00b1b4" - integrity sha512-HfK1aMRanKHpxemaY2gqBmL04iAPOPRj7DxtNbiDOrJK+gdwkiNRVpCpUJYbUT+aZyemKN8brqTOxzCaG6ExRg== - dependencies: - "@babel/template" "^7.20.7" - "@babel/types" "^7.21.0" - -"@babel/helper-function-name@^7.24.7": +"@babel/helper-function-name@^7.18.9", "@babel/helper-function-name@^7.19.0", "@babel/helper-function-name@^7.21.0", "@babel/helper-function-name@^7.24.7": version "7.24.7" resolved "https://registry.yarnpkg.com/@babel/helper-function-name/-/helper-function-name-7.24.7.tgz#75f1e1725742f39ac6584ee0b16d94513da38dd2" integrity sha512-FyoJTsj/PEUWu1/TYRiXTIHc8lbw+TDYkZuoE43opPS5TrI7MyONBE1oNvfguEXAD9yhQRrVBnXdXzSLQl9XnA== @@ -190,14 +160,7 @@ "@babel/template" "^7.24.7" "@babel/types" "^7.24.7" -"@babel/helper-hoist-variables@^7.18.6": - version "7.18.6" - resolved "https://registry.yarnpkg.com/@babel/helper-hoist-variables/-/helper-hoist-variables-7.18.6.tgz#d4d2c8fb4baeaa5c68b99cc8245c56554f926678" - integrity sha512-UlJQPkFqFULIcyW5sbzgbkxn2FKRgwWiRexcuaR8RNJRy8+LLveqPjwZV/bwrLZCN0eUHD/x8D0heK1ozuoo6Q== - dependencies: - "@babel/types" "^7.18.6" - -"@babel/helper-hoist-variables@^7.24.7": +"@babel/helper-hoist-variables@^7.18.6", "@babel/helper-hoist-variables@^7.24.7": version "7.24.7" resolved "https://registry.yarnpkg.com/@babel/helper-hoist-variables/-/helper-hoist-variables-7.24.7.tgz#b4ede1cde2fd89436397f30dc9376ee06b0f25ee" integrity sha512-MJJwhkoGy5c4ehfoRyrJ/owKeMl19U54h27YYftT0o2teQ3FJ3nQUf/I3LlJsX4l3qlw7WRXUmiyajvHXoTubQ== @@ -280,36 +243,19 @@ dependencies: "@babel/types" "^7.20.0" -"@babel/helper-split-export-declaration@^7.18.6": - version "7.18.6" - resolved "https://registry.yarnpkg.com/@babel/helper-split-export-declaration/-/helper-split-export-declaration-7.18.6.tgz#7367949bc75b20c6d5a5d4a97bba2824ae8ef075" - integrity sha512-bde1etTx6ZyTmobl9LLMMQsaizFVZrquTEHOqKeQESMKo4PlObf+8+JA25ZsIpZhT/WEd39+vOdLXAFG/nELpA== - dependencies: - "@babel/types" "^7.18.6" - -"@babel/helper-split-export-declaration@^7.24.7": +"@babel/helper-split-export-declaration@^7.18.6", "@babel/helper-split-export-declaration@^7.24.7": version "7.24.7" resolved "https://registry.yarnpkg.com/@babel/helper-split-export-declaration/-/helper-split-export-declaration-7.24.7.tgz#83949436890e07fa3d6873c61a96e3bbf692d856" integrity sha512-oy5V7pD+UvfkEATUKvIjvIAH/xCzfsFVw7ygW2SI6NClZzquT+mwdTfgfdbUiceh6iQO0CHtCPsyze/MZ2YbAA== dependencies: "@babel/types" "^7.24.7" -"@babel/helper-string-parser@^7.21.5": - version "7.21.5" - resolved "https://registry.yarnpkg.com/@babel/helper-string-parser/-/helper-string-parser-7.21.5.tgz#2b3eea65443c6bdc31c22d037c65f6d323b6b2bd" - integrity sha512-5pTUx3hAJaZIdW99sJ6ZUUgWq/Y+Hja7TowEnLNMm1VivRgZQL3vpBY3qUACVsvw+yQU6+YgfBVmcbLaZtrA1w== - -"@babel/helper-string-parser@^7.24.7": +"@babel/helper-string-parser@^7.21.5", "@babel/helper-string-parser@^7.24.7": version "7.24.7" resolved "https://registry.yarnpkg.com/@babel/helper-string-parser/-/helper-string-parser-7.24.7.tgz#4d2d0f14820ede3b9807ea5fc36dfc8cd7da07f2" integrity sha512-7MbVt6xrwFQbunH2DNQsAP5sTGxfqQtErvBIvIMi6EQnbgUOuVYanvREcmFrOPhoXBrTtjhhP+lW+o5UfK+tDg== -"@babel/helper-validator-identifier@^7.14.9", "@babel/helper-validator-identifier@^7.18.6", "@babel/helper-validator-identifier@^7.19.1": - version "7.19.1" - resolved "https://registry.yarnpkg.com/@babel/helper-validator-identifier/-/helper-validator-identifier-7.19.1.tgz#7eea834cf32901ffdc1a7ee555e2f9c27e249ca2" - integrity sha512-awrNfaMtnHUr653GgGEs++LlAvW6w+DcPrOliSMXWCKo597CwL5Acf/wWdNkf/tfEQE3mjkeD1YOVZOUV/od1w== - -"@babel/helper-validator-identifier@^7.24.7": +"@babel/helper-validator-identifier@^7.14.9", "@babel/helper-validator-identifier@^7.18.6", "@babel/helper-validator-identifier@^7.19.1", "@babel/helper-validator-identifier@^7.24.7": version "7.24.7" resolved "https://registry.yarnpkg.com/@babel/helper-validator-identifier/-/helper-validator-identifier-7.24.7.tgz#75b889cfaf9e35c2aaf42cf0d72c8e91719251db" integrity sha512-rR+PBcQ1SMQDDyF6X0wxtG8QyLCgUB0eRAGguqRLfkCA87l7yAP7ehq8SNj96OOGTO8OBV70KhuFYcIkHXOg0w== @@ -338,16 +284,7 @@ "@babel/traverse" "^7.22.1" "@babel/types" "^7.22.3" -"@babel/highlight@^7.10.4", "@babel/highlight@^7.18.6": - version "7.18.6" - resolved "https://registry.yarnpkg.com/@babel/highlight/-/highlight-7.18.6.tgz#81158601e93e2563795adcbfbdf5d64be3f2ecdf" - integrity sha512-u7stbOuYjaPezCuLj29hNW1v64M2Md2qupEKP1fHc7WdOA3DgLh37suiSrZYY7haUB7iBeQZ9P1uiRF359do3g== - dependencies: - "@babel/helper-validator-identifier" "^7.18.6" - chalk "^2.0.0" - js-tokens "^4.0.0" - -"@babel/highlight@^7.24.7": +"@babel/highlight@^7.10.4", "@babel/highlight@^7.18.6", "@babel/highlight@^7.24.7": version "7.24.7" resolved "https://registry.yarnpkg.com/@babel/highlight/-/highlight-7.24.7.tgz#a05ab1df134b286558aae0ed41e6c5f731bf409d" integrity sha512-EStJpq4OuY8xYfhGVXngigBJRWxftKX9ksiGDnmlY3o7B/V7KIAc9X4oiK87uPJSc/vs5L869bem5fhZa8caZw== @@ -357,12 +294,7 @@ js-tokens "^4.0.0" picocolors "^1.0.0" -"@babel/parser@^7.1.0", "@babel/parser@^7.1.6", "@babel/parser@^7.14.7", "@babel/parser@^7.21.9", "@babel/parser@^7.22.0", "@babel/parser@^7.4.3", "@babel/parser@^7.7.0": - version "7.22.4" - resolved "https://registry.yarnpkg.com/@babel/parser/-/parser-7.22.4.tgz#a770e98fd785c231af9d93f6459d36770993fb32" - integrity sha512-VLLsx06XkEYqBtE5YGPwfSGwfrjnyPP5oiGty3S8pQLFDFLaS8VwWSIxkTXpcvr5zeYLE6+MBNl2npl/YnfofA== - -"@babel/parser@^7.24.7": +"@babel/parser@^7.1.0", "@babel/parser@^7.1.6", "@babel/parser@^7.14.7", "@babel/parser@^7.21.9", "@babel/parser@^7.22.0", "@babel/parser@^7.24.7", "@babel/parser@^7.4.3", "@babel/parser@^7.7.0": version "7.24.7" resolved "https://registry.yarnpkg.com/@babel/parser/-/parser-7.24.7.tgz#9a5226f92f0c5c8ead550b750f5608e766c8ce85" integrity sha512-9uUYRm6OqQrCqQdG1iCBwBPZgN8ciDBro2nIOFaiRz1/BCxaI7CNvQbDHvsArAC7Tw9Hda/B3U+6ui9u4HWXPw== @@ -1162,16 +1094,7 @@ dependencies: regenerator-runtime "^0.14.0" -"@babel/template@^7.18.10", "@babel/template@^7.20.7", "@babel/template@^7.21.9", "@babel/template@^7.3.3", "@babel/template@^7.4.0": - version "7.21.9" - resolved "https://registry.yarnpkg.com/@babel/template/-/template-7.21.9.tgz#bf8dad2859130ae46088a99c1f265394877446fb" - integrity sha512-MK0X5k8NKOuWRamiEfc3KEJiHMTkGZNUjzMipqCGDDc6ijRl/B7RGSKVGncu4Ro/HdyzzY6cmoXuKI2Gffk7vQ== - dependencies: - "@babel/code-frame" "^7.21.4" - "@babel/parser" "^7.21.9" - "@babel/types" "^7.21.5" - -"@babel/template@^7.24.7": +"@babel/template@^7.18.10", "@babel/template@^7.20.7", "@babel/template@^7.21.9", "@babel/template@^7.24.7", "@babel/template@^7.3.3", "@babel/template@^7.4.0": version "7.24.7" resolved "https://registry.yarnpkg.com/@babel/template/-/template-7.24.7.tgz#02efcee317d0609d2c07117cb70ef8fb17ab7315" integrity sha512-jYqfPrU9JTF0PmPy1tLYHW4Mp4KlgxJD9l2nP9fD6yT/ICi554DmrWBAEYpIelzjHf1msDP3PxJIRt/nFNfBig== @@ -1204,16 +1127,7 @@ "@babel/helper-validator-identifier" "^7.14.9" to-fast-properties "^2.0.0" -"@babel/types@^7.0.0", "@babel/types@^7.12.6", "@babel/types@^7.18.6", "@babel/types@^7.18.9", "@babel/types@^7.20.0", "@babel/types@^7.20.5", "@babel/types@^7.21.0", "@babel/types@^7.21.4", "@babel/types@^7.21.5", "@babel/types@^7.22.0", "@babel/types@^7.22.3", "@babel/types@^7.3.0", "@babel/types@^7.3.3", "@babel/types@^7.4.0", "@babel/types@^7.4.4", "@babel/types@^7.7.0": - version "7.22.4" - resolved "https://registry.yarnpkg.com/@babel/types/-/types-7.22.4.tgz#56a2653ae7e7591365dabf20b76295410684c071" - integrity sha512-Tx9x3UBHTTsMSW85WB2kphxYQVvrZ/t1FxD88IpSgIjiUJlCm9z+xWIDwyo1vffTwSqteqyznB8ZE9vYYk16zA== - dependencies: - "@babel/helper-string-parser" "^7.21.5" - "@babel/helper-validator-identifier" "^7.19.1" - to-fast-properties "^2.0.0" - -"@babel/types@^7.24.7": +"@babel/types@^7.0.0", "@babel/types@^7.12.6", "@babel/types@^7.18.6", "@babel/types@^7.18.9", "@babel/types@^7.20.0", "@babel/types@^7.20.5", "@babel/types@^7.21.0", "@babel/types@^7.21.4", "@babel/types@^7.21.5", "@babel/types@^7.22.0", "@babel/types@^7.22.3", "@babel/types@^7.24.7", "@babel/types@^7.3.0", "@babel/types@^7.3.3", "@babel/types@^7.4.0", "@babel/types@^7.4.4", "@babel/types@^7.7.0": version "7.24.7" resolved "https://registry.yarnpkg.com/@babel/types/-/types-7.24.7.tgz#6027fe12bc1aa724cd32ab113fb7f1988f1f66f2" integrity sha512-XEFXSlxiG5td2EJRe8vOmRbaXVgfcBlszKujvVmWIK/UpywWljQCfzAv3RQCGujWQ1RD4YYWEAqDXfuJiy8f5Q== @@ -2124,12 +2038,12 @@ classnames "^2.3.1" prop-types "^15.7.2" -"@dhis2/analytics@^26.7.0": - version "26.7.0" - resolved "https://registry.yarnpkg.com/@dhis2/analytics/-/analytics-26.7.0.tgz#12d314ad2a84423612ff0eb0e32c191552bd8db8" - integrity sha512-7ocy+Ke9fYG40rHsICuH35UgIH+ahAgba9xFea0UbRYUhGavMW90mSVpgCNjE+PlefjR0xuHXB2UHYlTjhEIQw== +"@dhis2/analytics@^26.7.5": + version "26.7.5" + resolved "https://registry.yarnpkg.com/@dhis2/analytics/-/analytics-26.7.5.tgz#b85a35ba0adb971b237c814d1d384e10e3ec5ca1" + integrity sha512-YLkCOXWGm8JFlpq0AZhWsMxA6lJeRTixHDeMqdyZQeYPYCvZJiUAp0TtC+uSRK1uV1yIHRj4OjQytMWTsvUUnQ== dependencies: - "@dhis2/multi-calendar-dates" "1.0.0" + "@dhis2/multi-calendar-dates" "^1.2.2" "@dnd-kit/core" "^6.0.7" "@dnd-kit/sortable" "^7.0.2" "@dnd-kit/utilities" "^3.2.1" @@ -2322,22 +2236,15 @@ resolved "https://registry.yarnpkg.com/@dhis2/cypress-plugins/-/cypress-plugins-10.0.2.tgz#dd42f0ab0d5f7b03e363887a88d8251153af67df" integrity sha512-3EK4tyBAqSHHWG0s0ERQR8gBsp3h5K1hZmuDqMNHoSxI8IV/pC7VwzTiX0I7GLiLQMrz5cTinJpxwhH9D3G3gA== -"@dhis2/d2-i18n@^1.1.1": - version "1.1.1" - resolved "https://registry.yarnpkg.com/@dhis2/d2-i18n/-/d2-i18n-1.1.1.tgz#acaca32cd00b60fd6b6f1dee571f2817a50e243c" - integrity sha512-X0jOCIKPaYv/2z0/sdkEvcbRiYu5o1FrOwvitiS6aKFxSL/GJ872I+UdHwpWJtL+yM7Z8E1epljazW0LnHUz0Q== +"@dhis2/d2-i18n@^1.1.1", "@dhis2/d2-i18n@^1.1.3": + version "1.1.3" + resolved "https://registry.yarnpkg.com/@dhis2/d2-i18n/-/d2-i18n-1.1.3.tgz#ad73030f7cfceeed1b5bcaad86a9b336130bdfb1" + integrity sha512-vOu6RDNumOJM396mHt35bETk9ai9b6XJyAwlUy1HstUZNvfET61F8rjCmMuXZU6zJ8ELux8kMFqlH8IG0vDJmA== dependencies: + "@types/i18next" "^11.9.0" i18next "^10.3" moment "^2.24.0" -"@dhis2/multi-calendar-dates@1.0.0": - version "1.0.0" - resolved "https://registry.yarnpkg.com/@dhis2/multi-calendar-dates/-/multi-calendar-dates-1.0.0.tgz#bf7f49aecdffa9781837a5d60d56a094b74ab4df" - integrity sha512-IB9a+feuS6yE4lpZj/eZ9uBmpYI7Hxitl2Op0JjoRL4tP+p6uw4ns9cjoSdUeIU9sOAxVZV7oQqSyIw+9P6YjQ== - dependencies: - "@js-temporal/polyfill" "^0.4.2" - classnames "^2.3.2" - "@dhis2/multi-calendar-dates@1.0.2": version "1.0.2" resolved "https://registry.yarnpkg.com/@dhis2/multi-calendar-dates/-/multi-calendar-dates-1.0.2.tgz#e54dc85e512aba93fceef3004e67e199077f3ba8" @@ -2346,6 +2253,15 @@ "@js-temporal/polyfill" "^0.4.2" classnames "^2.3.2" +"@dhis2/multi-calendar-dates@^1.2.2": + version "1.2.3" + resolved "https://registry.yarnpkg.com/@dhis2/multi-calendar-dates/-/multi-calendar-dates-1.2.3.tgz#ef36bc80b34eaaa7f7cefa51b443528c019ff2d2" + integrity sha512-K3E9yAH/SPXi1O7RWuK7bznYTa1v3x4Ys0ihpMWnKH++OLMx76yK/1H1m9v7NgQvMry29ATQMJh0n/vJSg+EpA== + dependencies: + "@dhis2/d2-i18n" "^1.1.3" + "@js-temporal/polyfill" "0.4.3" + classnames "^2.3.2" + "@dhis2/prop-types@^3.1.2": version "3.1.2" resolved "https://registry.yarnpkg.com/@dhis2/prop-types/-/prop-types-3.1.2.tgz#65b8ad2da8cd2f72bc8b951049a6c9d1b97af3e9" @@ -2901,16 +2817,7 @@ "@types/yargs" "^17.0.8" chalk "^4.0.0" -"@jridgewell/gen-mapping@^0.3.0", "@jridgewell/gen-mapping@^0.3.2": - version "0.3.3" - resolved "https://registry.yarnpkg.com/@jridgewell/gen-mapping/-/gen-mapping-0.3.3.tgz#7e02e6eb5df901aaedb08514203b096614024098" - integrity sha512-HLhSWOLRi875zjjMG/r+Nv0oCW8umGb0BgEhyX3dDX3egwZtB8PqLnjz3yedt8R5StBrzcg4aBpnh8UA9D1BoQ== - dependencies: - "@jridgewell/set-array" "^1.0.1" - "@jridgewell/sourcemap-codec" "^1.4.10" - "@jridgewell/trace-mapping" "^0.3.9" - -"@jridgewell/gen-mapping@^0.3.5": +"@jridgewell/gen-mapping@^0.3.0", "@jridgewell/gen-mapping@^0.3.2", "@jridgewell/gen-mapping@^0.3.5": version "0.3.5" resolved "https://registry.yarnpkg.com/@jridgewell/gen-mapping/-/gen-mapping-0.3.5.tgz#dcce6aff74bdf6dad1a95802b69b04a2fcb1fb36" integrity sha512-IzL8ZoEDIBRWEzlCcRhOaCupYyN5gdIK+Q6fbFdPDg6HqX6jpkItn7DFIpW9LQzXG6Df9sA7+OKnq0qlz/GaQg== @@ -2929,25 +2836,12 @@ resolved "https://registry.yarnpkg.com/@jridgewell/resolve-uri/-/resolve-uri-3.1.2.tgz#7a0ee601f60f99a20c7c7c5ff0c80388c1189bd6" integrity sha512-bRISgCIjP20/tbWSPWMEi54QVPRZExkuD9lJL+UIxUKtwVJA8wW1Trb1jMs1RFXo1CBTNZ/5hpC9QvmKWdopKw== -"@jridgewell/set-array@^1.0.1": - version "1.1.2" - resolved "https://registry.yarnpkg.com/@jridgewell/set-array/-/set-array-1.1.2.tgz#7c6cf998d6d20b914c0a55a91ae928ff25965e72" - integrity sha512-xnkseuNADM0gt2bs+BvhO0p78Mk762YnZdsuzFV018NoG1Sj1SCQvpSqa7XUaTam5vAGasABV9qXASMKnFMwMw== - -"@jridgewell/set-array@^1.2.1": +"@jridgewell/set-array@^1.0.1", "@jridgewell/set-array@^1.2.1": version "1.2.1" resolved "https://registry.yarnpkg.com/@jridgewell/set-array/-/set-array-1.2.1.tgz#558fb6472ed16a4c850b889530e6b36438c49280" integrity sha512-R8gLRTZeyp03ymzP/6Lil/28tGeGEzhx1q2k703KGWRAI1VdvPIXdG70VJc2pAMw3NA6JKL5hhFu1sJX0Mnn/A== -"@jridgewell/source-map@^0.3.2": - version "0.3.2" - resolved "https://registry.yarnpkg.com/@jridgewell/source-map/-/source-map-0.3.2.tgz#f45351aaed4527a298512ec72f81040c998580fb" - integrity sha512-m7O9o2uR8k2ObDysZYzdfhb08VuEml5oWGiosa1VdaPZ/A6QyPkAJuwN0Q1lhULOf6B7MtQmHENS743hWtCrgw== - dependencies: - "@jridgewell/gen-mapping" "^0.3.0" - "@jridgewell/trace-mapping" "^0.3.9" - -"@jridgewell/source-map@^0.3.3": +"@jridgewell/source-map@^0.3.2", "@jridgewell/source-map@^0.3.3": version "0.3.6" resolved "https://registry.yarnpkg.com/@jridgewell/source-map/-/source-map-0.3.6.tgz#9d71ca886e32502eb9362c9a74a46787c36df81a" integrity sha512-1ZJTZebgqllO79ue2bm3rIGud/bOe0pP5BjSRCRxxYkEZS8STV7zN84UBbiYu7jy+eCKSnVIUgoWWE/tt+shMQ== @@ -2965,15 +2859,7 @@ resolved "https://registry.yarnpkg.com/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.4.15.tgz#d7c6e6755c78567a951e04ab52ef0fd26de59f32" integrity sha512-eF2rxCRulEKXHTRiDrDy6erMYWqNw4LPdQ8UQA4huuxaQsVeRPFl2oM8oDGxMFhJUWZf9McpLtJasDDZb/Bpeg== -"@jridgewell/trace-mapping@^0.3.14", "@jridgewell/trace-mapping@^0.3.17", "@jridgewell/trace-mapping@^0.3.9": - version "0.3.18" - resolved "https://registry.yarnpkg.com/@jridgewell/trace-mapping/-/trace-mapping-0.3.18.tgz#25783b2086daf6ff1dcb53c9249ae480e4dd4cd6" - integrity sha512-w+niJYzMHdd7USdiH2U6869nqhD2nbfZXND5Yp93qIbEmnDNk7PD48o+YchRVpzMU7M6jVCbenTR7PA1FLQ9pA== - dependencies: - "@jridgewell/resolve-uri" "3.1.0" - "@jridgewell/sourcemap-codec" "1.4.14" - -"@jridgewell/trace-mapping@^0.3.20", "@jridgewell/trace-mapping@^0.3.24", "@jridgewell/trace-mapping@^0.3.25": +"@jridgewell/trace-mapping@^0.3.14", "@jridgewell/trace-mapping@^0.3.17", "@jridgewell/trace-mapping@^0.3.20", "@jridgewell/trace-mapping@^0.3.24", "@jridgewell/trace-mapping@^0.3.25", "@jridgewell/trace-mapping@^0.3.9": version "0.3.25" resolved "https://registry.yarnpkg.com/@jridgewell/trace-mapping/-/trace-mapping-0.3.25.tgz#15f190e98895f3fc23276ee14bc76b675c2e50f0" integrity sha512-vNk6aEwybGtawWmy/PzwnGDOjCkLWSD2wqvjGGAgOAwCGWySYXfYoxt00IJkTF+8Lb57DwOb3Aa0o9CApepiYQ== @@ -2981,7 +2867,7 @@ "@jridgewell/resolve-uri" "^3.1.0" "@jridgewell/sourcemap-codec" "^1.4.14" -"@js-temporal/polyfill@^0.4.2": +"@js-temporal/polyfill@0.4.3", "@js-temporal/polyfill@^0.4.2": version "0.4.3" resolved "https://registry.yarnpkg.com/@js-temporal/polyfill/-/polyfill-0.4.3.tgz#e8f8cf86745eb5050679c46a5ebedb9a9cc1f09b" integrity sha512-6Fmjo/HlkyVCmJzAPnvtEWlcbQUSRhi8qlN9EtJA/wP7FqXsevLLrlojR44kzNzrRkpf7eDJ+z7b4xQD/Ycypw== @@ -3500,21 +3386,16 @@ "@types/estree" "*" "@types/json-schema" "*" -"@types/estree@*": - version "0.0.51" - resolved "https://registry.yarnpkg.com/@types/estree/-/estree-0.0.51.tgz#cfd70924a25a3fd32b218e5e420e6897e1ac4f40" - integrity sha512-CuPgU6f3eT/XgKKPqKd/gLZV1Xmvf1a2R5POBOGQa6uv82xpls89HU5zKeVoyR8XzHd1RGNOlQlvUe3CFkjWNQ== +"@types/estree@*", "@types/estree@^1.0.5": + version "1.0.5" + resolved "https://registry.yarnpkg.com/@types/estree/-/estree-1.0.5.tgz#a6ce3e556e00fd9895dd872dd172ad0d4bd687f4" + integrity sha512-/kYRxGDLWzHOB7q+wtSUQlFrtcdUccpfy+X+9iMBpHK8QLLhx2wIPYuS5DYtR9Wa/YlZAbIovy7qVdB1Aq6Lyw== "@types/estree@0.0.39": version "0.0.39" resolved "https://registry.yarnpkg.com/@types/estree/-/estree-0.0.39.tgz#e177e699ee1b8c22d23174caaa7422644389509f" integrity sha512-EYNwp3bU+98cpU4lAWYYL7Zz+2gryWH1qbdDTidVd6hkiR6weksdbMadyXKXNPEkQFhXM+hVO9ZygomHXp+AIw== -"@types/estree@^1.0.5": - version "1.0.5" - resolved "https://registry.yarnpkg.com/@types/estree/-/estree-1.0.5.tgz#a6ce3e556e00fd9895dd872dd172ad0d4bd687f4" - integrity sha512-/kYRxGDLWzHOB7q+wtSUQlFrtcdUccpfy+X+9iMBpHK8QLLhx2wIPYuS5DYtR9Wa/YlZAbIovy7qVdB1Aq6Lyw== - "@types/express-serve-static-core@*", "@types/express-serve-static-core@^4.17.18": version "4.17.31" resolved "https://registry.yarnpkg.com/@types/express-serve-static-core/-/express-serve-static-core-4.17.31.tgz#a1139efeab4e7323834bb0226e62ac019f474b2f" @@ -3561,6 +3442,11 @@ dependencies: "@types/node" "*" +"@types/i18next@^11.9.0": + version "11.9.3" + resolved "https://registry.yarnpkg.com/@types/i18next/-/i18next-11.9.3.tgz#04d84c6539908ad69665d26d8967f942d1638550" + integrity sha512-snM7bMKy6gt7UYdpjsxycqSCAy0fr2JVPY0B8tJ2vp9bN58cE7C880k20PWFM4KXxQ3KsstKM8DLCawGCIH0tg== + "@types/istanbul-lib-coverage@*", "@types/istanbul-lib-coverage@^2.0.0", "@types/istanbul-lib-coverage@^2.0.1": version "2.0.4" resolved "https://registry.yarnpkg.com/@types/istanbul-lib-coverage/-/istanbul-lib-coverage-2.0.4.tgz#8467d4b3c087805d63580480890791277ce35c44" @@ -4178,12 +4064,7 @@ acorn@^7.0.0, acorn@^7.1.1, acorn@^7.4.0: resolved "https://registry.yarnpkg.com/acorn/-/acorn-7.4.1.tgz#feaed255973d2e77555b83dbc08851a6c63520fa" integrity sha512-nQyp0o1/mNdbTO1PO6kHkwSrmgZ0MT/jCCpNiwbUjGoRN4dlBhqJtoQuCnEOKzgTVwg0ZWiCoQy6SxMebQVh8A== -acorn@^8.2.4, acorn@^8.5.0, acorn@^8.7.1, acorn@^8.8.0: - version "8.8.0" - resolved "https://registry.yarnpkg.com/acorn/-/acorn-8.8.0.tgz#88c0187620435c7f6015803f5539dae05a9dbea8" - integrity sha512-QOxyigPVrpZ2GXT+PFyZTl6TtOFc5egxHIP9IlQ+RbupQuX4RkT/Bee4/kQuC02Xkzg84JcT7oLYtDIQxp+v7w== - -acorn@^8.8.2: +acorn@^8.2.4, acorn@^8.5.0, acorn@^8.7.1, acorn@^8.8.0, acorn@^8.8.2: version "8.11.3" resolved "https://registry.yarnpkg.com/acorn/-/acorn-8.11.3.tgz#71e0b14e13a4ec160724b38fb7b0f233b1b81d7a" integrity sha512-Y9rRfJG5jcKOE0CLisYbojUjIrIEE7AGMzA/Sm4BslANhbS+cDMpgBdcPT91oJ7OuJ9hYJBx59RjbhxVnrF8Xg== @@ -4442,15 +4323,7 @@ arr-union@^3.1.0: resolved "https://registry.yarnpkg.com/arr-union/-/arr-union-3.1.0.tgz#e39b09aea9def866a8f206e288af63919bae39c4" integrity sha512-sKpyeERZ02v1FeCZT8lrfJq5u6goHCtpTAzPwJYe7c8SPFOboNjNg1vz2L4VTn9T4PQxEx13TbXLmYUcS6Ug7Q== -array-buffer-byte-length@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/array-buffer-byte-length/-/array-buffer-byte-length-1.0.0.tgz#fabe8bc193fea865f317fe7807085ee0dee5aead" - integrity sha512-LPuwb2P+NrQw3XhxGc36+XSvuBPopovXYTR9Ew++Du9Yb/bx5AzBfrIsBoj0EZUifjQU+sHL21sseZ3jerWO/A== - dependencies: - call-bind "^1.0.2" - is-array-buffer "^3.0.1" - -array-buffer-byte-length@^1.0.1: +array-buffer-byte-length@^1.0.0, array-buffer-byte-length@^1.0.1: version "1.0.1" resolved "https://registry.yarnpkg.com/array-buffer-byte-length/-/array-buffer-byte-length-1.0.1.tgz#1e5583ec16763540a27ae52eed99ff899223568f" integrity sha512-ahC5W1xgou+KTXix4sAO8Ki12Q+jf4i0+tmk3sC+zgcynshkHxzpXdImBehiUYKKKDwvfFiJl1tZt6ewscS1Mg== @@ -4685,12 +4558,7 @@ autoprefixer@^10.4.8: picocolors "^1.0.0" postcss-value-parser "^4.2.0" -available-typed-arrays@^1.0.5: - version "1.0.5" - resolved "https://registry.yarnpkg.com/available-typed-arrays/-/available-typed-arrays-1.0.5.tgz#92f95616501069d07d10edb2fc37d3e1c65123b7" - integrity sha512-DMD0KiN46eipeziST1LPP/STfDU0sufISXmjSgvVsoU2tqxctQeASejWcfNtxYKqETM1UxQ8sp2OrSBWpHY6sw== - -available-typed-arrays@^1.0.7: +available-typed-arrays@^1.0.5, available-typed-arrays@^1.0.7: version "1.0.7" resolved "https://registry.yarnpkg.com/available-typed-arrays/-/available-typed-arrays-1.0.7.tgz#a5cc375d6a03c2efc87a553f3e0b1522def14846" integrity sha512-wvUjBtSGN7+7SjNpq/9M2Tg350UZD3q62IFZLbRAR1bSMlCo1ZaeW+BJ+D090e4hIIZLBcTDWe4Mh4jvUDajzQ== @@ -5338,17 +5206,7 @@ browserify@^17.0.0: vm-browserify "^1.0.0" xtend "^4.0.0" -browserslist@^4.0.0, browserslist@^4.16.6, browserslist@^4.18.1, browserslist@^4.20.3, browserslist@^4.21.3, browserslist@^4.21.4, browserslist@^4.21.5: - version "4.21.5" - resolved "https://registry.yarnpkg.com/browserslist/-/browserslist-4.21.5.tgz#75c5dae60063ee641f977e00edd3cfb2fb7af6a7" - integrity sha512-tUkiguQGW7S3IhB7N+c2MV/HZPSCPAAiYBZXLsBhFB/PCy6ZKKsZrmBayHV9fdGV/ARIfJ14NkxKzRDjvp7L6w== - dependencies: - caniuse-lite "^1.0.30001449" - electron-to-chromium "^1.4.284" - node-releases "^2.0.8" - update-browserslist-db "^1.0.10" - -browserslist@^4.21.10: +browserslist@^4.0.0, browserslist@^4.16.6, browserslist@^4.18.1, browserslist@^4.20.3, browserslist@^4.21.10, browserslist@^4.21.3, browserslist@^4.21.4, browserslist@^4.21.5: version "4.23.1" resolved "https://registry.yarnpkg.com/browserslist/-/browserslist-4.23.1.tgz#ce4af0534b3d37db5c1a4ca98b9080f985041e96" integrity sha512-TUfofFo/KsK/bWZ9TWQ5O26tsWW4Uhmt8IYklbnUa70udB6P2wA7w7o4PY4muaEPBQaAX+CEnmmIA41NVHtPVw== @@ -5469,15 +5327,7 @@ cachedir@^2.3.0: resolved "https://registry.yarnpkg.com/cachedir/-/cachedir-2.3.0.tgz#0c75892a052198f0b21c7c1804d8331edfcae0e8" integrity sha512-A+Fezp4zxnit6FanDmv9EqXNAi3vt9DWp51/71UEhXukb7QUuvtv9344h91dyAxuTLoSYJFU299qzR3tzwPAhw== -call-bind@^1.0.0, call-bind@^1.0.2: - version "1.0.2" - resolved "https://registry.yarnpkg.com/call-bind/-/call-bind-1.0.2.tgz#b1d4e89e688119c3c9a903ad30abb2f6a919be3c" - integrity sha512-7O+FbCihrB5WGbFYesctwmTKae6rOiIzmz1icreWJ+0aA7LJfuqhEso2T9ncpcFtzMQtzXf2QGGueWJGTYsqrA== - dependencies: - function-bind "^1.1.1" - get-intrinsic "^1.0.2" - -call-bind@^1.0.5, call-bind@^1.0.6, call-bind@^1.0.7: +call-bind@^1.0.0, call-bind@^1.0.2, call-bind@^1.0.5, call-bind@^1.0.6, call-bind@^1.0.7: version "1.0.7" resolved "https://registry.yarnpkg.com/call-bind/-/call-bind-1.0.7.tgz#06016599c40c56498c18769d2730be242b6fa3b9" integrity sha512-GHTSNSYICQ7scH7sZ+M2rFopRoLh8t2bLSW6BbgrtLsahOIB5iyAVJf9GjWK3cYTDaMj4XdBpM1cA6pIS0Kv2w== @@ -5535,12 +5385,7 @@ caniuse-api@^3.0.0: lodash.memoize "^4.1.2" lodash.uniq "^4.5.0" -caniuse-lite@^1.0.0, caniuse-lite@^1.0.30001407, caniuse-lite@^1.0.30001449: - version "1.0.30001489" - resolved "https://registry.yarnpkg.com/caniuse-lite/-/caniuse-lite-1.0.30001489.tgz#ca82ee2d4e4dbf2bd2589c9360d3fcc2c7ba3bd8" - integrity sha512-x1mgZEXK8jHIfAxm+xgdpHpk50IN3z3q3zP261/WS+uvePxW8izXuCu6AHz0lkuYTlATDehiZ/tNyYBdSQsOUQ== - -caniuse-lite@^1.0.30001629: +caniuse-lite@^1.0.0, caniuse-lite@^1.0.30001407, caniuse-lite@^1.0.30001449, caniuse-lite@^1.0.30001629: version "1.0.30001632" resolved "https://registry.yarnpkg.com/caniuse-lite/-/caniuse-lite-1.0.30001632.tgz#964207b7cba5851701afb4c8afaf1448db3884b6" integrity sha512-udx3o7yHJfUxMLkGohMlVHCvFvWmirKh9JAH/d7WOLPetlH+LTL5cocMZ0t7oZx/mdlOWXti97xLZWc8uURRHg== @@ -6047,12 +5892,7 @@ content-disposition@0.5.4: dependencies: safe-buffer "5.2.1" -content-type@~1.0.4: - version "1.0.4" - resolved "https://registry.yarnpkg.com/content-type/-/content-type-1.0.4.tgz#e138cc75e040c727b1966fe5e5f8c9aee256fe3b" - integrity sha512-hIP3EEPs8tB9AT1L+NUqtwOAps4mk2Zob89MWXMHjHWg9milF/j4osnnQLXBCBFBk/tvIG/tUc9mOUJiPBhPXA== - -content-type@~1.0.5: +content-type@~1.0.4, content-type@~1.0.5: version "1.0.5" resolved "https://registry.yarnpkg.com/content-type/-/content-type-1.0.5.tgz#8b773162656d1d1086784c8f23a54ce6d73d7918" integrity sha512-nTjqfcBFEipKdXCv4YDQWCfmcLZKm81ldF0pAopTvyrFGVbcR6P/VAAd5G7N+0tTr8QqiU0tFadD6FK4NtJwOA== @@ -6667,10 +6507,10 @@ debug@2.6.9, debug@^2.2.0, debug@^2.3.3, debug@^2.6.0, debug@^2.6.9: dependencies: ms "2.0.0" -debug@4, debug@4.3.4, debug@^4.0.1, debug@^4.1.0, debug@^4.1.1, debug@^4.3.2, debug@^4.3.4: - version "4.3.4" - resolved "https://registry.yarnpkg.com/debug/-/debug-4.3.4.tgz#1319f6579357f2338d3337d2cdd4914bb5dcc865" - integrity sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ== +debug@4, debug@^4.0.1, debug@^4.1.0, debug@^4.1.1, debug@^4.3.1, debug@^4.3.2, debug@^4.3.4: + version "4.3.5" + resolved "https://registry.yarnpkg.com/debug/-/debug-4.3.5.tgz#e83444eceb9fedd4a1da56d671ae2446a01a6e1e" + integrity sha512-pt0bNEmneDIvdL1Xsd9oDQ/wrQRkXDT4AUWlNZNPKvW5x/jyO9VFXkJUP07vQ2upmw5PlaITaPKc31jK13V+jg== dependencies: ms "2.1.2" @@ -6681,6 +6521,13 @@ debug@4.3.2: dependencies: ms "2.1.2" +debug@4.3.4: + version "4.3.4" + resolved "https://registry.yarnpkg.com/debug/-/debug-4.3.4.tgz#1319f6579357f2338d3337d2cdd4914bb5dcc865" + integrity sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ== + dependencies: + ms "2.1.2" + debug@^3.1.0, debug@^3.2.7: version "3.2.7" resolved "https://registry.yarnpkg.com/debug/-/debug-3.2.7.tgz#72580b7e9145fb39b6676f9c5e5fb100b934179a" @@ -6688,13 +6535,6 @@ debug@^3.1.0, debug@^3.2.7: dependencies: ms "^2.1.1" -debug@^4.3.1: - version "4.3.5" - resolved "https://registry.yarnpkg.com/debug/-/debug-4.3.5.tgz#e83444eceb9fedd4a1da56d671ae2446a01a6e1e" - integrity sha512-pt0bNEmneDIvdL1Xsd9oDQ/wrQRkXDT4AUWlNZNPKvW5x/jyO9VFXkJUP07vQ2upmw5PlaITaPKc31jK13V+jg== - dependencies: - ms "2.1.2" - decamelize-keys@^1.1.0: version "1.1.0" resolved "https://registry.yarnpkg.com/decamelize-keys/-/decamelize-keys-1.1.0.tgz#d171a87933252807eb3cb61dc1c1445d078df2d9" @@ -6809,15 +6649,7 @@ define-lazy-prop@^2.0.0: resolved "https://registry.yarnpkg.com/define-lazy-prop/-/define-lazy-prop-2.0.0.tgz#3f7ae421129bcaaac9bc74905c98a0009ec9ee7f" integrity sha512-Ds09qNh8yw3khSjiJjiUInaGX9xlqZDY7JVryGxdxV7NPeuqQfplOpQ66yJFZut3jLa5zOwkXw1g9EI2uKh4Og== -define-properties@^1.1.3, define-properties@^1.1.4, define-properties@^1.2.0: - version "1.2.0" - resolved "https://registry.yarnpkg.com/define-properties/-/define-properties-1.2.0.tgz#52988570670c9eacedd8064f4a990f2405849bd5" - integrity sha512-xvqAVKGfT1+UAvPwKTVw/njhdQ8ZhXK4lI0bCIuCMrp2up9nPnaDftrLtmpTazqd1o+UY4zgzU+avtMbDP+ldA== - dependencies: - has-property-descriptors "^1.0.0" - object-keys "^1.1.1" - -define-properties@^1.2.1: +define-properties@^1.1.3, define-properties@^1.1.4, define-properties@^1.2.0, define-properties@^1.2.1: version "1.2.1" resolved "https://registry.yarnpkg.com/define-properties/-/define-properties-1.2.1.tgz#10781cc616eb951a80a034bafcaa7377f6af2b6c" integrity sha512-8QmQKqEASLd5nx0U1B1okLElbUuuttJ/AnYmRXbbbGDWh6uS208EjD4Xqq/I9wK7u0v6O08XhTWnt5XtEbR6Dg== @@ -7202,30 +7034,12 @@ ejs@^3.1.5, ejs@^3.1.6: dependencies: jake "^10.8.5" -electron-to-chromium@^1.4.284: - version "1.4.407" - resolved "https://registry.yarnpkg.com/electron-to-chromium/-/electron-to-chromium-1.4.407.tgz#087e2ab97b3eb092aa6217c05986086b7dd370cc" - integrity sha512-5smEvFSFYMv90tICOzRVP7Opp98DAC4KW7RRipg3BuNpGbbV3N+x24Zh3sbLb1T5haGtOSy/hrBfXsWnIM9aCg== - -electron-to-chromium@^1.4.796: +electron-to-chromium@^1.4.284, electron-to-chromium@^1.4.796: version "1.4.796" resolved "https://registry.yarnpkg.com/electron-to-chromium/-/electron-to-chromium-1.4.796.tgz#48dd6ff634b7f7df6313bd27aaa713f3af4a2b29" integrity sha512-NglN/xprcM+SHD2XCli4oC6bWe6kHoytcyLKCWXmRL854F0qhPhaYgUswUsglnPxYaNQIg2uMY4BvaomIf3kLA== -elliptic@^6.5.3: - version "6.5.4" - resolved "https://registry.yarnpkg.com/elliptic/-/elliptic-6.5.4.tgz#da37cebd31e79a1367e941b592ed1fbebd58abbb" - integrity sha512-iLhC6ULemrljPZb+QutR5TQGB+pdW6KGD5RSegS+8sorOZT+rdQFbsQFJgvN3eRqNALqJer4oQ16YvJHlU8hzQ== - dependencies: - bn.js "^4.11.9" - brorand "^1.1.0" - hash.js "^1.0.0" - hmac-drbg "^1.0.1" - inherits "^2.0.4" - minimalistic-assert "^1.0.1" - minimalistic-crypto-utils "^1.0.1" - -elliptic@^6.5.5: +elliptic@^6.5.3, elliptic@^6.5.5: version "6.5.5" resolved "https://registry.yarnpkg.com/elliptic/-/elliptic-6.5.5.tgz#c715e09f78b6923977610d4c2346d6ce22e6dded" integrity sha512-7EjbcmUm17NQFu4Pmgmq2olYMj8nwMnpcddByChSUjArp8F5DQWcIcpriwO4ZToLNAJig0yiyjswfyGNje/ixw== @@ -7432,47 +7246,7 @@ error-stack-parser@^2.0.6: dependencies: stackframe "^1.3.4" -es-abstract@^1.17.2, es-abstract@^1.19.0, es-abstract@^1.19.1, es-abstract@^1.19.2, es-abstract@^1.19.4, es-abstract@^1.19.5, es-abstract@^1.20.1, es-abstract@^1.20.4: - version "1.21.2" - resolved "https://registry.yarnpkg.com/es-abstract/-/es-abstract-1.21.2.tgz#a56b9695322c8a185dc25975aa3b8ec31d0e7eff" - integrity sha512-y/B5POM2iBnIxCiernH1G7rC9qQoM77lLIMQLuob0zhp8C56Po81+2Nj0WFKnd0pNReDTnkYryc+zhOzpEIROg== - dependencies: - array-buffer-byte-length "^1.0.0" - available-typed-arrays "^1.0.5" - call-bind "^1.0.2" - es-set-tostringtag "^2.0.1" - es-to-primitive "^1.2.1" - function.prototype.name "^1.1.5" - get-intrinsic "^1.2.0" - get-symbol-description "^1.0.0" - globalthis "^1.0.3" - gopd "^1.0.1" - has "^1.0.3" - has-property-descriptors "^1.0.0" - has-proto "^1.0.1" - has-symbols "^1.0.3" - internal-slot "^1.0.5" - is-array-buffer "^3.0.2" - is-callable "^1.2.7" - is-negative-zero "^2.0.2" - is-regex "^1.1.4" - is-shared-array-buffer "^1.0.2" - is-string "^1.0.7" - is-typed-array "^1.1.10" - is-weakref "^1.0.2" - object-inspect "^1.12.3" - object-keys "^1.1.1" - object.assign "^4.1.4" - regexp.prototype.flags "^1.4.3" - safe-regex-test "^1.0.0" - string.prototype.trim "^1.2.7" - string.prototype.trimend "^1.0.6" - string.prototype.trimstart "^1.0.6" - typed-array-length "^1.0.4" - unbox-primitive "^1.0.2" - which-typed-array "^1.1.9" - -es-abstract@^1.22.1, es-abstract@^1.22.3, es-abstract@^1.23.0, es-abstract@^1.23.2: +es-abstract@^1.17.2, es-abstract@^1.19.0, es-abstract@^1.19.1, es-abstract@^1.19.2, es-abstract@^1.19.4, es-abstract@^1.19.5, es-abstract@^1.20.1, es-abstract@^1.20.4, es-abstract@^1.22.1, es-abstract@^1.22.3, es-abstract@^1.23.0, es-abstract@^1.23.2: version "1.23.3" resolved "https://registry.yarnpkg.com/es-abstract/-/es-abstract-1.23.3.tgz#8f0c5a35cd215312573c5a27c87dfd6c881a0aa0" integrity sha512-e+HfNH61Bj1X9/jLc5v1owaLYuHdeHHSQlkhCBiTK8rBvKaULl/beGMxwrMXjpYrv4pz22BlY570vVePA2ho4A== @@ -7567,16 +7341,7 @@ es-object-atoms@^1.0.0: dependencies: es-errors "^1.3.0" -es-set-tostringtag@^2.0.1: - version "2.0.1" - resolved "https://registry.yarnpkg.com/es-set-tostringtag/-/es-set-tostringtag-2.0.1.tgz#338d502f6f674301d710b80c8592de8a15f09cd8" - integrity sha512-g3OMbtlwY3QewlqAiMLI47KywjWZoEytKr8pf6iTC8uJq5bIAH52Z9pnQ8pVL6whrCto53JZDuUIsifGeLorTg== - dependencies: - get-intrinsic "^1.1.3" - has "^1.0.3" - has-tostringtag "^1.0.0" - -es-set-tostringtag@^2.0.3: +es-set-tostringtag@^2.0.1, es-set-tostringtag@^2.0.3: version "2.0.3" resolved "https://registry.yarnpkg.com/es-set-tostringtag/-/es-set-tostringtag-2.0.3.tgz#8bb60f0a440c2e4281962428438d58545af39777" integrity sha512-3T8uNMC3OQTHkFUsFq8r/BwAXLHvU/9O9mE0fBc/MY5iq/8H7ncvO947LmYA6ldWw9Uh8Yhf25zu6n7nML5QWQ== @@ -7601,12 +7366,7 @@ es-to-primitive@^1.2.1: is-date-object "^1.0.1" is-symbol "^1.0.2" -escalade@^3.1.1: - version "3.1.1" - resolved "https://registry.yarnpkg.com/escalade/-/escalade-3.1.1.tgz#d8cfdc7000965c5a0174b4a82eaa5c0552742e40" - integrity sha512-k0er2gUkLf8O0zKJiAhmkTnJlTvINGv7ygDNPbeIsX/TJjGJZHuh9B2UxbsaEkmlEo9MfhrSzmhIlhRlI2GXnw== - -escalade@^3.1.2: +escalade@^3.1.1, escalade@^3.1.2: version "3.1.2" resolved "https://registry.yarnpkg.com/escalade/-/escalade-3.1.2.tgz#54076e9ab29ea5bf3d8f1ed62acffbb88272df27" integrity sha512-ErCHMCae19vR8vQGe50xIsVomy19rg6gFu3+r3jkEO46suLMWBksvVyoGgQV+jOfl84ZSOSlmv6Gxa89PmTGmA== @@ -8633,27 +8393,12 @@ fsevents@^2.3.2, fsevents@~2.3.2: resolved "https://registry.yarnpkg.com/fsevents/-/fsevents-2.3.3.tgz#cac6407785d03675a2a5e1a5305c697b347d90d6" integrity sha512-5xoDfX+fL7faATnagmWPpbFtwh/R77WmMMqqHGS65C3vvB0YHrgF+B1YmZ3441tMj5n63k0212XNoJwzlhffQw== -function-bind@^1.1.1: - version "1.1.1" - resolved "https://registry.yarnpkg.com/function-bind/-/function-bind-1.1.1.tgz#a56899d3ea3c9bab874bb9773b7c5ede92f4895d" - integrity sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A== - -function-bind@^1.1.2: +function-bind@^1.1.1, function-bind@^1.1.2: version "1.1.2" resolved "https://registry.yarnpkg.com/function-bind/-/function-bind-1.1.2.tgz#2c02d864d97f3ea6c8830c464cbd11ab6eab7a1c" integrity sha512-7XHNxH7qX9xG5mIwxkhumTox/MIRNcOgDrxWsMt2pAr23WHp6MrRlN7FBSFpCpr+oVO0F744iUgR82nJMfG2SA== -function.prototype.name@^1.1.2, function.prototype.name@^1.1.5: - version "1.1.5" - resolved "https://registry.yarnpkg.com/function.prototype.name/-/function.prototype.name-1.1.5.tgz#cce0505fe1ffb80503e6f9e46cc64e46a12a9621" - integrity sha512-uN7m/BzVKQnCUF/iW8jYea67v++2u7m5UgENbHRtdDVclOUP+FMPlCNdmk0h/ysGyo2tavMJEDqJAkJdRa1vMA== - dependencies: - call-bind "^1.0.2" - define-properties "^1.1.3" - es-abstract "^1.19.0" - functions-have-names "^1.2.2" - -function.prototype.name@^1.1.6: +function.prototype.name@^1.1.2, function.prototype.name@^1.1.5, function.prototype.name@^1.1.6: version "1.1.6" resolved "https://registry.yarnpkg.com/function.prototype.name/-/function.prototype.name-1.1.6.tgz#cdf315b7d90ee77a4c6ee216c3c3362da07533fd" integrity sha512-Z5kx79swU5P27WEayXM1tBi5Ze/lbIyiNgU3qyXUOf9b2rgXYyF9Dy9Cx+IQv/Lc8WCG6L82zwUPpSS9hGehIg== @@ -8695,17 +8440,7 @@ get-caller-file@^2.0.1, get-caller-file@^2.0.5: resolved "https://registry.yarnpkg.com/get-caller-file/-/get-caller-file-2.0.5.tgz#4f94412a82db32f36e3b0b9741f8a97feb031f7e" integrity sha512-DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg== -get-intrinsic@^1.0.1, get-intrinsic@^1.0.2, get-intrinsic@^1.1.0, get-intrinsic@^1.1.1, get-intrinsic@^1.1.3, get-intrinsic@^1.2.0: - version "1.2.1" - resolved "https://registry.yarnpkg.com/get-intrinsic/-/get-intrinsic-1.2.1.tgz#d295644fed4505fc9cde952c37ee12b477a83d82" - integrity sha512-2DcsyfABl+gVHEfCOaTrWgyt+tb6MSEGmKq+kI5HwLbIYgjgmMcV8KQ41uaKz1xxUcn9tJtgFbQUEVcEbd0FYw== - dependencies: - function-bind "^1.1.1" - has "^1.0.3" - has-proto "^1.0.1" - has-symbols "^1.0.3" - -get-intrinsic@^1.2.1, get-intrinsic@^1.2.3, get-intrinsic@^1.2.4: +get-intrinsic@^1.0.1, get-intrinsic@^1.0.2, get-intrinsic@^1.1.0, get-intrinsic@^1.1.1, get-intrinsic@^1.1.3, get-intrinsic@^1.2.0, get-intrinsic@^1.2.1, get-intrinsic@^1.2.3, get-intrinsic@^1.2.4: version "1.2.4" resolved "https://registry.yarnpkg.com/get-intrinsic/-/get-intrinsic-1.2.4.tgz#e385f5a4b5227d449c3eabbad05494ef0abbeadd" integrity sha512-5uYhsJH8VJBTv7oslg4BznJYhDoRI6waYCxMmCdnTrcCrHA/fCFKoTFz2JKKE0HdDFUF7/oQuhzumXJK7paBRQ== @@ -8750,15 +8485,7 @@ get-stream@^6.0.0: resolved "https://registry.yarnpkg.com/get-stream/-/get-stream-6.0.1.tgz#a262d8eef67aced57c2852ad6167526a43cbf7b7" integrity sha512-ts6Wi+2j3jQjqi70w5AlN8DFnkSwC+MqmxEzdEALB2qXZYV3X/b1CTfgPLGJNMeAWxdPfU8FO1ms3NUfaHCPYg== -get-symbol-description@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/get-symbol-description/-/get-symbol-description-1.0.0.tgz#7fdb81c900101fbd564dd5f1a30af5aadc1e58d6" - integrity sha512-2EmdH1YvIQiZpltCNgkuiUnyukzxM/R6NDJX31Ke3BG1Nq5b0S2PhX59UKi9vZpPDQVdqn+1IcaAwnzTT5vCjw== - dependencies: - call-bind "^1.0.2" - get-intrinsic "^1.1.1" - -get-symbol-description@^1.0.2: +get-symbol-description@^1.0.0, get-symbol-description@^1.0.2: version "1.0.2" resolved "https://registry.yarnpkg.com/get-symbol-description/-/get-symbol-description-1.0.2.tgz#533744d5aa20aca4e079c8e5daf7fd44202821f5" integrity sha512-g0QYk1dZBxGwk+Ngc+ltRH2IBp2f7zBkBMBJZCDerh6EhlhSR6+9irMCuT/09zD6qkarHUSn529sK/yL4S27mg== @@ -9058,26 +8785,14 @@ has-flag@^4.0.0: resolved "https://registry.yarnpkg.com/has-flag/-/has-flag-4.0.0.tgz#944771fd9c81c81265c4d6941860da06bb59479b" integrity sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ== -has-property-descriptors@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/has-property-descriptors/-/has-property-descriptors-1.0.0.tgz#610708600606d36961ed04c196193b6a607fa861" - integrity sha512-62DVLZGoiEBDHQyqG4w9xCuZ7eJEwNmJRWw2VY84Oedb7WFcA27fiEVe8oUQx9hAUJ4ekurquucTGwsyO1XGdQ== - dependencies: - get-intrinsic "^1.1.1" - -has-property-descriptors@^1.0.2: +has-property-descriptors@^1.0.0, has-property-descriptors@^1.0.2: version "1.0.2" resolved "https://registry.yarnpkg.com/has-property-descriptors/-/has-property-descriptors-1.0.2.tgz#963ed7d071dc7bf5f084c5bfbe0d1b6222586854" integrity sha512-55JNKuIW+vq4Ke1BjOTjM2YctQIvCT7GFzHwmfZPGo5wnrgkid0YQtnAleFSqumZm4az3n2BS+erby5ipJdgrg== dependencies: es-define-property "^1.0.0" -has-proto@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/has-proto/-/has-proto-1.0.1.tgz#1885c1305538958aff469fef37937c22795408e0" - integrity sha512-7qE+iP+O+bgF9clE5+UoBFzE65mlBiVj3tKCrlNQ0Ogwm0BjpT/gK4SlLYDMybDh5I3TCTKnPPa0oMG7JDYrhg== - -has-proto@^1.0.3: +has-proto@^1.0.1, has-proto@^1.0.3: version "1.0.3" resolved "https://registry.yarnpkg.com/has-proto/-/has-proto-1.0.3.tgz#b31ddfe9b0e6e9914536a6ab286426d0214f77fd" integrity sha512-SJ1amZAJUiZS+PhsVLf5tGydlaVB8EdFpaSO4gmiUKUOxk8qzn5AIy4ZeJUmh22znIdk/uMAUT2pl3FxzVUH+Q== @@ -9087,14 +8802,7 @@ has-symbols@^1.0.1, has-symbols@^1.0.2, has-symbols@^1.0.3: resolved "https://registry.yarnpkg.com/has-symbols/-/has-symbols-1.0.3.tgz#bb7b2c4349251dce87b125f7bdf874aa7c8b39f8" integrity sha512-l3LCuF6MgDNwTDKkdYGEihYjt5pRPbEg46rtlmnSPlUbgmB8LOIrKJbYYFBSbnPaJexMKtiPO8hmeRjRz2Td+A== -has-tostringtag@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/has-tostringtag/-/has-tostringtag-1.0.0.tgz#7e133818a7d394734f941e73c3d3f9291e658b25" - integrity sha512-kFjcSNhnlGV1kyoGk7OXKSawH5JOb/LzUc5w9B02hOTO0dfFRjbHQKvg1d6cf3HbeUmtU9VbbV3qzZ2Teh97WQ== - dependencies: - has-symbols "^1.0.2" - -has-tostringtag@^1.0.2: +has-tostringtag@^1.0.0, has-tostringtag@^1.0.2: version "1.0.2" resolved "https://registry.yarnpkg.com/has-tostringtag/-/has-tostringtag-1.0.2.tgz#2cdc42d40bef2e5b4eeab7c01a73c54ce7ab5abc" integrity sha512-NqADB8VjPFLM2V0VvHUewwwsw0ZWBaIdgo+ieHtK3hasLz4qeCRjYcqfB6AQrBggRKppKF8L52/VqdVsO47Dlw== @@ -9635,16 +9343,7 @@ insert-module-globals@^7.0.0, insert-module-globals@^7.2.1: undeclared-identifiers "^1.1.2" xtend "^4.0.0" -internal-slot@^1.0.3, internal-slot@^1.0.5: - version "1.0.5" - resolved "https://registry.yarnpkg.com/internal-slot/-/internal-slot-1.0.5.tgz#f2a2ee21f668f8627a4667f309dc0f4fb6674986" - integrity sha512-Y+R5hJrzs52QCG2laLn4udYVnxsfny9CpOhNhUvk/SSSVyF6T27FzRbF0sroPidSu3X8oEAkOn2K804mjpt6UQ== - dependencies: - get-intrinsic "^1.2.0" - has "^1.0.3" - side-channel "^1.0.4" - -internal-slot@^1.0.7: +internal-slot@^1.0.3, internal-slot@^1.0.5, internal-slot@^1.0.7: version "1.0.7" resolved "https://registry.yarnpkg.com/internal-slot/-/internal-slot-1.0.7.tgz#c06dcca3ed874249881007b0a5523b172a190802" integrity sha512-NGnrKwXzSms2qUUih/ILZ5JBqNTSa1+ZmP6flaIp6KmSElgE9qdndzS3cqjrDovwFdmwsGsLdeFgB6suw+1e9g== @@ -9700,16 +9399,7 @@ is-arguments@^1.0.4, is-arguments@^1.1.0: call-bind "^1.0.2" has-tostringtag "^1.0.0" -is-array-buffer@^3.0.1, is-array-buffer@^3.0.2: - version "3.0.2" - resolved "https://registry.yarnpkg.com/is-array-buffer/-/is-array-buffer-3.0.2.tgz#f2653ced8412081638ecb0ebbd0c41c6e0aecbbe" - integrity sha512-y+FyyR/w8vfIRq4eQcM1EYgSTnmHXPqaF+IgzgraytCFq5Xh8lllDVmAZolPJiZttZLeFSINPYMaEJ7/vWUa1w== - dependencies: - call-bind "^1.0.2" - get-intrinsic "^1.2.0" - is-typed-array "^1.1.10" - -is-array-buffer@^3.0.4: +is-array-buffer@^3.0.1, is-array-buffer@^3.0.2, is-array-buffer@^3.0.4: version "3.0.4" resolved "https://registry.yarnpkg.com/is-array-buffer/-/is-array-buffer-3.0.4.tgz#7a1f92b3d61edd2bc65d24f130530ea93d7fae98" integrity sha512-wcjaerHw0ydZwfhiKbXJWLDY8A7yV7KhjQOpb83hGgGfId/aQa4TOvwyzn2PuswW2gPCYEL/nEAiSVpdOj1lXw== @@ -9910,12 +9600,7 @@ is-negated-glob@^1.0.0: resolved "https://registry.yarnpkg.com/is-negated-glob/-/is-negated-glob-1.0.0.tgz#6910bca5da8c95e784b5751b976cf5a10fee36d2" integrity sha512-czXVVn/QEmgvej1f50BZ648vUI+em0xqMq2Sn+QncCLN4zj1UAxlT+kw/6ggQTOaZPd1HqKQGEqbpQVtJucWug== -is-negative-zero@^2.0.2: - version "2.0.2" - resolved "https://registry.yarnpkg.com/is-negative-zero/-/is-negative-zero-2.0.2.tgz#7bf6f03a28003b8b3965de3ac26f664d765f3150" - integrity sha512-dqJvarLawXsFbNDeJW7zAz8ItJ9cd28YufuuFzh0G8pNHjJMnY08Dv7sYX2uF5UpQOwieAeOExEYAWWfu7ZZUA== - -is-negative-zero@^2.0.3: +is-negative-zero@^2.0.2, is-negative-zero@^2.0.3: version "2.0.3" resolved "https://registry.yarnpkg.com/is-negative-zero/-/is-negative-zero-2.0.3.tgz#ced903a027aca6381b777a5743069d7376a49747" integrity sha512-5KoIu2Ngpyek75jXodFvnafB6DJgr3u8uuK0LEZJjrU19DrMD3EVERaR8sjz8CCGgpZvxPl9SuE1GMVPFHx1mw== @@ -10028,14 +9713,7 @@ is-set@^2.0.1, is-set@^2.0.2: resolved "https://registry.yarnpkg.com/is-set/-/is-set-2.0.2.tgz#90755fa4c2562dc1c5d4024760d6119b94ca18ec" integrity sha512-+2cnTEZeY5z/iXGbLhPrOAaK/Mau5k5eXq9j14CpRTftq0pAJu2MwVRSZhyZWBzx3o6X795Lz6Bpb6R0GKf37g== -is-shared-array-buffer@^1.0.2: - version "1.0.2" - resolved "https://registry.yarnpkg.com/is-shared-array-buffer/-/is-shared-array-buffer-1.0.2.tgz#8f259c573b60b6a32d4058a1a07430c0a7344c79" - integrity sha512-sqN2UDu1/0y6uvXyStCOzyhAjCSlHceFoMKJW8W9EU9cvic/QdsZ0kEU93HEy3IUEFZIiH/3w+AH/UQbPHNdhA== - dependencies: - call-bind "^1.0.2" - -is-shared-array-buffer@^1.0.3: +is-shared-array-buffer@^1.0.2, is-shared-array-buffer@^1.0.3: version "1.0.3" resolved "https://registry.yarnpkg.com/is-shared-array-buffer/-/is-shared-array-buffer-1.0.3.tgz#1237f1cba059cdb62431d378dcc37d9680181688" integrity sha512-nA2hv5XIhLR3uVzDDfCIknerhx8XUKnstuOERPNNIinXG7v9u+ohXF67vxm4TPTEPU6lm61ZkwP3c9PCB97rhg== @@ -10078,18 +9756,7 @@ is-text-path@^1.0.1: dependencies: text-extensions "^1.0.0" -is-typed-array@^1.1.10, is-typed-array@^1.1.3, is-typed-array@^1.1.9: - version "1.1.10" - resolved "https://registry.yarnpkg.com/is-typed-array/-/is-typed-array-1.1.10.tgz#36a5b5cb4189b575d1a3e4b08536bfb485801e3f" - integrity sha512-PJqgEHiWZvMpaFZ3uTc8kHPM4+4ADTlDniuQL7cU/UDA0Ql7F70yGfHph3cLNe+c9toaigv+DFzTJKhc2CtO6A== - dependencies: - available-typed-arrays "^1.0.5" - call-bind "^1.0.2" - for-each "^0.3.3" - gopd "^1.0.1" - has-tostringtag "^1.0.0" - -is-typed-array@^1.1.13: +is-typed-array@^1.1.10, is-typed-array@^1.1.13, is-typed-array@^1.1.3, is-typed-array@^1.1.9: version "1.1.13" resolved "https://registry.yarnpkg.com/is-typed-array/-/is-typed-array-1.1.13.tgz#d6c5ca56df62334959322d7d7dd1cca50debe229" integrity sha512-uZ25/bUAlUY5fR4OKT4rZQEBrzQWYV9ZJYGGsUmEJ6thodVJ1HX64ePQ6Z0qPWP+m+Uq6e9UugrE38jeYsDSMw== @@ -12192,16 +11859,11 @@ node-ipc@9.1.1: js-message "1.0.5" js-queue "2.0.0" -node-releases@^2.0.14: +node-releases@^2.0.14, node-releases@^2.0.8: version "2.0.14" resolved "https://registry.yarnpkg.com/node-releases/-/node-releases-2.0.14.tgz#2ffb053bceb8b2be8495ece1ab6ce600c4461b0b" integrity sha512-y10wOWt8yZpqXmOgRo77WaHEmhYQYGNA6y421PKsKYWEK8aW+cqAphborZDhqfyKrbZEN92CN1X2KbafY2s7Yw== -node-releases@^2.0.8: - version "2.0.12" - resolved "https://registry.yarnpkg.com/node-releases/-/node-releases-2.0.12.tgz#35627cc224a23bfb06fb3380f2b3afaaa7eb1039" - integrity sha512-QzsYKWhXTWx8h1kIvqfnC++o0pEmpRQA/aenALsL2F4pqNVr7YzcdMlDij5WBnwftRbJCNJL/O7zdKaxKPHqgQ== - normalize-package-data@^2.3.2, normalize-package-data@^2.5.0: version "2.5.0" resolved "https://registry.yarnpkg.com/normalize-package-data/-/normalize-package-data-2.5.0.tgz#e66db1838b200c1dfc233225d12cb36520e234a8" @@ -12313,25 +11975,12 @@ object-hash@^3.0.0: resolved "https://registry.yarnpkg.com/object-hash/-/object-hash-3.0.0.tgz#73f97f753e7baffc0e2cc9d6e079079744ac82e9" integrity sha512-RSn9F68PjH9HqtltsSnqYC1XXoWe9Bju5+213R98cNGttag9q9yAOTzdbsqvIa7aNm5WffBZFpWYr2aWrklWAw== -object-inspect@^1.12.3, object-inspect@^1.7.0, object-inspect@^1.9.0: - version "1.12.3" - resolved "https://registry.yarnpkg.com/object-inspect/-/object-inspect-1.12.3.tgz#ba62dffd67ee256c8c086dfae69e016cd1f198b9" - integrity sha512-geUvdk7c+eizMNUDkRpW1wJwgfOiOeHbxBR/hLXK1aT6zmVSO0jsQcs7fj6MGw89jC/cjGfLcNOrtMYtGqm81g== - -object-inspect@^1.13.1: +object-inspect@^1.12.3, object-inspect@^1.13.1, object-inspect@^1.7.0, object-inspect@^1.9.0: version "1.13.1" resolved "https://registry.yarnpkg.com/object-inspect/-/object-inspect-1.13.1.tgz#b96c6109324ccfef6b12216a956ca4dc2ff94bc2" integrity sha512-5qoj1RUiKOMsCCNLV1CBiPYE10sziTsnmNxkAI/rZhiD63CF7IqdFGC/XzjWjpSgLf0LxXX3bDFIh0E18f6UhQ== -object-is@^1.0.2, object-is@^1.1.2, object-is@^1.1.4: - version "1.1.5" - resolved "https://registry.yarnpkg.com/object-is/-/object-is-1.1.5.tgz#b9deeaa5fc7f1846a0faecdceec138e5778f53ac" - integrity sha512-3cyDsyHgtmi7I7DfSSI2LDp6SK2lwvtbg0p0R1e0RvTqF5ceGx+K2dfSjm1bKDMVCFEDAQvy+o8c6a7VujOddw== - dependencies: - call-bind "^1.0.2" - define-properties "^1.1.3" - -object-is@^1.1.5: +object-is@^1.0.2, object-is@^1.1.2, object-is@^1.1.4, object-is@^1.1.5: version "1.1.6" resolved "https://registry.yarnpkg.com/object-is/-/object-is-1.1.6.tgz#1a6a53aed2dd8f7e6775ff870bea58545956ab07" integrity sha512-F8cZ+KfGlSGi09lJT7/Nd6KJZ9ygtvYC0/UYYLI9nmQKLMnydpB9yvbv9K1uSkEu7FU9vYPmVwLg328tX+ot3Q== @@ -12370,16 +12019,7 @@ object.entries@^1.1.1, object.entries@^1.1.2, object.entries@^1.1.5: define-properties "^1.1.3" es-abstract "^1.19.1" -object.fromentries@^2.0.5: - version "2.0.5" - resolved "https://registry.yarnpkg.com/object.fromentries/-/object.fromentries-2.0.5.tgz#7b37b205109c21e741e605727fe8b0ad5fa08251" - integrity sha512-CAyG5mWQRRiBU57Re4FKoTBjXfDoNwdFVH2Y1tS9PqCsfUTymAohOkEMSG3aRNKmv4lV3O7p1et7c187q6bynw== - dependencies: - call-bind "^1.0.2" - define-properties "^1.1.3" - es-abstract "^1.19.1" - -object.fromentries@^2.0.7: +object.fromentries@^2.0.5, object.fromentries@^2.0.7: version "2.0.8" resolved "https://registry.yarnpkg.com/object.fromentries/-/object.fromentries-2.0.8.tgz#f7195d8a9b97bd95cbc1999ea939ecd1a2b00c65" integrity sha512-k6E21FzySsSK5a21KRADBd/NGneRegFO5pLHfdQLpRDETUNJueLXs3WCzyQ3tFRDYgbq3KHGXfTbi2bs8WQ6rQ== @@ -12631,18 +12271,7 @@ parents@^1.0.0, parents@^1.0.1: dependencies: path-platform "~0.11.15" -parse-asn1@^5.0.0: - version "5.1.6" - resolved "https://registry.yarnpkg.com/parse-asn1/-/parse-asn1-5.1.6.tgz#385080a3ec13cb62a62d39409cb3e88844cdaed4" - integrity sha512-RnZRo1EPU6JBnra2vGHj0yhp6ebyjBZpmUCLHWiFhxlzvBCCpAuZ7elsBp1PVAbQN0/04VD/19rfzlBSwLstMw== - dependencies: - asn1.js "^5.2.0" - browserify-aes "^1.0.0" - evp_bytestokey "^1.0.0" - pbkdf2 "^3.0.3" - safe-buffer "^5.1.1" - -parse-asn1@^5.1.7: +parse-asn1@^5.0.0, parse-asn1@^5.1.7: version "5.1.7" resolved "https://registry.yarnpkg.com/parse-asn1/-/parse-asn1-5.1.7.tgz#73cdaaa822125f9647165625eb45f8a051d2df06" integrity sha512-CTM5kuWR3sx9IFamcl5ErfPl6ea/N8IYwiJ+vpeB2g+1iknv7zBl5uPwbMbRVznRVbrNY6lGuDoE5b30grmbqg== @@ -12842,12 +12471,7 @@ picocolors@^0.2.1: resolved "https://registry.yarnpkg.com/picocolors/-/picocolors-0.2.1.tgz#570670f793646851d1ba135996962abad587859f" integrity sha512-cMlDqaLEqfSaW8Z7N5Jw+lyIW869EzT73/F5lhtY9cLGoVxSXznfgfXMO0Z5K0o0Q2TkTXq+0KFsdnSe3jDViA== -picocolors@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/picocolors/-/picocolors-1.0.0.tgz#cb5bdc74ff3f51892236eaf79d68bc44564ab81c" - integrity sha512-1fygroTLlHu66zi26VoTDv8yRgm0Fccecssto+MhsZ0D/DGW2sm8E8AjW7NU5VVTRt5GxbeZ5qBuJr+HyLYkjQ== - -picocolors@^1.0.1: +picocolors@^1.0.0, picocolors@^1.0.1: version "1.0.1" resolved "https://registry.yarnpkg.com/picocolors/-/picocolors-1.0.1.tgz#a8ad579b571952f0e5d25892de5445bcfe25aaa1" integrity sha512-anP1Z8qwhkbmu7MFP5iTt+wQKXgwzf7zTyGlcdzabySa9vd0Xt392U0rVmz9poOaBj0uHJKyyo9/upk0HrEQew== @@ -14226,16 +13850,7 @@ regex-parser@^2.2.11: resolved "https://registry.yarnpkg.com/regex-parser/-/regex-parser-2.2.11.tgz#3b37ec9049e19479806e878cabe7c1ca83ccfe58" integrity sha512-jbD/FT0+9MBU2XAZluI7w2OBs1RBi6p9M83nkoZayQXXU9e8Robt69FcZc7wU4eJD/YFTjn1JdCk3rbMJajz8Q== -regexp.prototype.flags@^1.3.0, regexp.prototype.flags@^1.4.1, regexp.prototype.flags@^1.4.3: - version "1.5.0" - resolved "https://registry.yarnpkg.com/regexp.prototype.flags/-/regexp.prototype.flags-1.5.0.tgz#fe7ce25e7e4cca8db37b6634c8a2c7009199b9cb" - integrity sha512-0SutC3pNudRKgquxGoRGIz946MZVHqbNfPjBdxeOhBrdgDKlRoXmYLQN9xRbrR09ZXWeGAdPuif7egofn6v5LA== - dependencies: - call-bind "^1.0.2" - define-properties "^1.2.0" - functions-have-names "^1.2.3" - -regexp.prototype.flags@^1.5.2: +regexp.prototype.flags@^1.3.0, regexp.prototype.flags@^1.4.1, regexp.prototype.flags@^1.4.3, regexp.prototype.flags@^1.5.2: version "1.5.2" resolved "https://registry.yarnpkg.com/regexp.prototype.flags/-/regexp.prototype.flags-1.5.2.tgz#138f644a3350f981a858c44f6bb1a61ff59be334" integrity sha512-NcDiDkTLuPR+++OCKB0nWafEmhg/Da8aUPLPMQbK+bxKKCm1/S5he+AqYa4PlMCVBalb4/yxIRub6qkEx5yJbw== @@ -14622,16 +14237,7 @@ safe-buffer@5.2.1, safe-buffer@>=5.1.0, safe-buffer@^5.0.1, safe-buffer@^5.1.0, resolved "https://registry.yarnpkg.com/safe-buffer/-/safe-buffer-5.2.1.tgz#1eaf9fa9bdb1fdd4ec75f58f9cdb4e6b7827eec6" integrity sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ== -safe-regex-test@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/safe-regex-test/-/safe-regex-test-1.0.0.tgz#793b874d524eb3640d1873aad03596db2d4f2295" - integrity sha512-JBUUzyOgEwXQY1NuPtvcj/qcBDbDmEvWufhlnXZIm75DEHp+afM1r1ujJpJsV/gSM4t59tpDyPi1sd6ZaPFfsA== - dependencies: - call-bind "^1.0.2" - get-intrinsic "^1.1.3" - is-regex "^1.1.4" - -safe-regex-test@^1.0.3: +safe-regex-test@^1.0.0, safe-regex-test@^1.0.3: version "1.0.3" resolved "https://registry.yarnpkg.com/safe-regex-test/-/safe-regex-test-1.0.3.tgz#a5b4c0f06e0ab50ea2c395c14d8371232924c377" integrity sha512-CdASjNJPvRa7roO6Ra/gLYBTzYzzPyyBXxIMdGW3USQLyjWEls2RgW5UBTXaQVp+OrpeCK3bLem8smtmheoRuw== @@ -14718,16 +14324,7 @@ schema-utils@^2.6.5: ajv "^6.12.4" ajv-keywords "^3.5.2" -schema-utils@^3.0.0, schema-utils@^3.1.1: - version "3.1.1" - resolved "https://registry.yarnpkg.com/schema-utils/-/schema-utils-3.1.1.tgz#bc74c4b6b6995c1d88f76a8b77bea7219e0c8281" - integrity sha512-Y5PQxS4ITlC+EahLuXaY86TXfR7Dc5lw294alXOq86JAHCihAIZfqv8nNCWvaEJvaC51uN9hbLGeV0cFBdH+Fw== - dependencies: - "@types/json-schema" "^7.0.8" - ajv "^6.12.5" - ajv-keywords "^3.5.2" - -schema-utils@^3.2.0: +schema-utils@^3.0.0, schema-utils@^3.1.1, schema-utils@^3.2.0: version "3.3.0" resolved "https://registry.yarnpkg.com/schema-utils/-/schema-utils-3.3.0.tgz#f50a88877c3c01652a15b622ae9e9795df7a60fe" integrity sha512-pN/yOAvcC+5rQ5nERGuwrjLlYvLTbCibnZ1I7B1LaiAz9BRBlE9GMgE/eqV30P7aJQUf7Ddimy/RsbYO/GrVGg== @@ -14813,7 +14410,7 @@ send@0.18.0: range-parser "~1.2.1" statuses "2.0.1" -serialize-javascript@6.0.0, serialize-javascript@^6.0.0: +serialize-javascript@6.0.0: version "6.0.0" resolved "https://registry.yarnpkg.com/serialize-javascript/-/serialize-javascript-6.0.0.tgz#efae5d88f45d7924141da8b5c3a7a7e663fefeb8" integrity sha512-Qr3TosvguFt8ePWqsvRfrKyQXIiW+nGbYpy8XK24NQHE83caxWt+mIymTT19DGFbNWNLfEwsrkSmN64lVWB9ag== @@ -14827,7 +14424,7 @@ serialize-javascript@^4.0.0: dependencies: randombytes "^2.1.0" -serialize-javascript@^6.0.1: +serialize-javascript@^6.0.0, serialize-javascript@^6.0.1: version "6.0.2" resolved "https://registry.yarnpkg.com/serialize-javascript/-/serialize-javascript-6.0.2.tgz#defa1e055c83bf6d59ea805d8da862254eb6a6c2" integrity sha512-Saa1xPByTTq2gdeFZYLLo+RFE35NHZkAbqZeWNd3BpzppeVisAqpDjcp8dyf6uIvEqJRd46jemmyA4iFIeVk8g== @@ -15439,16 +15036,7 @@ string.prototype.matchall@^4.0.6, string.prototype.matchall@^4.0.7: regexp.prototype.flags "^1.4.1" side-channel "^1.0.4" -string.prototype.trim@^1.2.1, string.prototype.trim@^1.2.7: - version "1.2.7" - resolved "https://registry.yarnpkg.com/string.prototype.trim/-/string.prototype.trim-1.2.7.tgz#a68352740859f6893f14ce3ef1bb3037f7a90533" - integrity sha512-p6TmeT1T3411M8Cgg9wBTMRtY2q9+PNy9EV1i2lIXUN/btt763oIfxwN3RR8VU6wHX8j/1CFy0L+YuThm6bgOg== - dependencies: - call-bind "^1.0.2" - define-properties "^1.1.4" - es-abstract "^1.20.4" - -string.prototype.trim@^1.2.9: +string.prototype.trim@^1.2.1, string.prototype.trim@^1.2.7, string.prototype.trim@^1.2.9: version "1.2.9" resolved "https://registry.yarnpkg.com/string.prototype.trim/-/string.prototype.trim-1.2.9.tgz#b6fa326d72d2c78b6df02f7759c73f8f6274faa4" integrity sha512-klHuCNxiMZ8MlsOihJhJEBJAiMVqU3Z2nEXWfWnIqjN0gEFS9J9+IxKozWWtQGcgoa1WUZzLjKPTr4ZHNFTFxw== @@ -15458,16 +15046,7 @@ string.prototype.trim@^1.2.9: es-abstract "^1.23.0" es-object-atoms "^1.0.0" -string.prototype.trimend@^1.0.6: - version "1.0.6" - resolved "https://registry.yarnpkg.com/string.prototype.trimend/-/string.prototype.trimend-1.0.6.tgz#c4a27fa026d979d79c04f17397f250a462944533" - integrity sha512-JySq+4mrPf9EsDBEDYMOb/lM7XQLulwg5R/m1r0PXEFqrV0qHvl58sdTilSXtKOflCsK2E8jxf+GKC0T07RWwQ== - dependencies: - call-bind "^1.0.2" - define-properties "^1.1.4" - es-abstract "^1.20.4" - -string.prototype.trimend@^1.0.8: +string.prototype.trimend@^1.0.6, string.prototype.trimend@^1.0.8: version "1.0.8" resolved "https://registry.yarnpkg.com/string.prototype.trimend/-/string.prototype.trimend-1.0.8.tgz#3651b8513719e8a9f48de7f2f77640b26652b229" integrity sha512-p73uL5VCHCO2BZZ6krwwQE3kCzM7NKmis8S//xEC6fQonchbum4eP6kR4DLEjQFO3Wnj3Fuo8NM0kOSjVdHjZQ== @@ -15476,16 +15055,7 @@ string.prototype.trimend@^1.0.8: define-properties "^1.2.1" es-object-atoms "^1.0.0" -string.prototype.trimstart@^1.0.6: - version "1.0.6" - resolved "https://registry.yarnpkg.com/string.prototype.trimstart/-/string.prototype.trimstart-1.0.6.tgz#e90ab66aa8e4007d92ef591bbf3cd422c56bdcf4" - integrity sha512-omqjMDaY92pbn5HOX7f9IccLA+U1tA9GvtU4JrodiXFfYB7jPzzHpRzpglLAjtUV6bB557zwClJezTqnAiYnQA== - dependencies: - call-bind "^1.0.2" - define-properties "^1.1.4" - es-abstract "^1.20.4" - -string.prototype.trimstart@^1.0.8: +string.prototype.trimstart@^1.0.6, string.prototype.trimstart@^1.0.8: version "1.0.8" resolved "https://registry.yarnpkg.com/string.prototype.trimstart/-/string.prototype.trimstart-1.0.8.tgz#7ee834dda8c7c17eff3118472bb35bfedaa34dde" integrity sha512-UXSH262CSZY1tfu3G3Secr6uGLCFVPMhIqHjlgCUtCCcgihYc/xKs9djMTMUOb2j1mVSeU8EU6NWc/iQKU6Gfg== @@ -15840,18 +15410,7 @@ terminal-link@^2.0.0: ansi-escapes "^4.2.1" supports-hyperlinks "^2.0.0" -terser-webpack-plugin@^5.2.5, terser-webpack-plugin@^5.3.1: - version "5.3.6" - resolved "https://registry.yarnpkg.com/terser-webpack-plugin/-/terser-webpack-plugin-5.3.6.tgz#5590aec31aa3c6f771ce1b1acca60639eab3195c" - integrity sha512-kfLFk+PoLUQIbLmB1+PZDMRSZS99Mp+/MHqDNmMA6tOItzRt+Npe3E+fsMs5mfcM0wCtrrdU387UnV+vnSffXQ== - dependencies: - "@jridgewell/trace-mapping" "^0.3.14" - jest-worker "^27.4.5" - schema-utils "^3.1.1" - serialize-javascript "^6.0.0" - terser "^5.14.1" - -terser-webpack-plugin@^5.3.10: +terser-webpack-plugin@^5.2.5, terser-webpack-plugin@^5.3.1, terser-webpack-plugin@^5.3.10: version "5.3.10" resolved "https://registry.yarnpkg.com/terser-webpack-plugin/-/terser-webpack-plugin-5.3.10.tgz#904f4c9193c6fd2a03f693a2150c62a92f40d199" integrity sha512-BKFPWlPDndPs+NGGCr1U59t0XScL5317Y0UReNrHaw9/FwhPENlq6bfgs+4yPfyP51vqC1bQ4rp1EfXW5ZSH9w== @@ -15862,17 +15421,7 @@ terser-webpack-plugin@^5.3.10: serialize-javascript "^6.0.1" terser "^5.26.0" -terser@^5.0.0, terser@^5.10.0, terser@^5.14.1: - version "5.15.1" - resolved "https://registry.yarnpkg.com/terser/-/terser-5.15.1.tgz#8561af6e0fd6d839669c73b92bdd5777d870ed6c" - integrity sha512-K1faMUvpm/FBxjBXud0LWVAGxmvoPbZbfTCYbSgaaYQaIXI3/TdI7a7ZGA73Zrou6Q8Zmz3oeUTsp/dj+ag2Xw== - dependencies: - "@jridgewell/source-map" "^0.3.2" - acorn "^8.5.0" - commander "^2.20.0" - source-map-support "~0.5.20" - -terser@^5.26.0: +terser@^5.0.0, terser@^5.10.0, terser@^5.14.1, terser@^5.26.0: version "5.31.1" resolved "https://registry.yarnpkg.com/terser/-/terser-5.31.1.tgz#735de3c987dd671e95190e6b98cfe2f07f3cf0d4" integrity sha512-37upzU1+viGvuFtBo9NPufCb9dwM0+l9hMxYyWfBA+fbwrPqNJAhbZ6W47bBFnZHKHTUBnMvi87434qq+qnxOg== @@ -16240,16 +15789,7 @@ typed-array-byte-offset@^1.0.2: has-proto "^1.0.3" is-typed-array "^1.1.13" -typed-array-length@^1.0.4: - version "1.0.4" - resolved "https://registry.yarnpkg.com/typed-array-length/-/typed-array-length-1.0.4.tgz#89d83785e5c4098bec72e08b319651f0eac9c1bb" - integrity sha512-KjZypGq+I/H7HI5HlOoGHkWUUGq+Q0TPhQurLbyrVrvnKTBgzLhIJ7j6J/XTQOi0d1RjyZ0wdas8bKs2p0x3Ng== - dependencies: - call-bind "^1.0.2" - for-each "^0.3.3" - is-typed-array "^1.1.9" - -typed-array-length@^1.0.6: +typed-array-length@^1.0.4, typed-array-length@^1.0.6: version "1.0.6" resolved "https://registry.yarnpkg.com/typed-array-length/-/typed-array-length-1.0.6.tgz#57155207c76e64a3457482dfdc1c9d1d3c4c73a3" integrity sha512-/OxDN6OtAk5KBpGb28T+HZc2M+ADtvRxXrKKbUwtsLgdoxgX13hyy7ek6bFRl5+aBs2yZzB0c4CnQfAtVypW/g== @@ -16450,15 +15990,7 @@ upath@^1.2.0: resolved "https://registry.yarnpkg.com/upath/-/upath-1.2.0.tgz#8f66dbcd55a883acdae4408af8b035a5044c1894" integrity sha512-aZwGpamFO61g3OlfT7OQCHqhGnW43ieH9WZeP7QxN/G/jS4jfqUkZxoryvJgVPEcrl5NL/ggHsSmLMHuH64Lhg== -update-browserslist-db@^1.0.10: - version "1.0.11" - resolved "https://registry.yarnpkg.com/update-browserslist-db/-/update-browserslist-db-1.0.11.tgz#9a2a641ad2907ae7b3616506f4b977851db5b940" - integrity sha512-dCwEFf0/oT85M1fHBg4F0jtLwJrutGoHSQXCh7u4o2t1drG+c0a9Flnqww6XUKSfQMPpJBRjU8d4RXB09qtvaA== - dependencies: - escalade "^3.1.1" - picocolors "^1.0.0" - -update-browserslist-db@^1.0.16: +update-browserslist-db@^1.0.10, update-browserslist-db@^1.0.16: version "1.0.16" resolved "https://registry.yarnpkg.com/update-browserslist-db/-/update-browserslist-db-1.0.16.tgz#f6d489ed90fb2f07d67784eb3f53d7891f736356" integrity sha512-KVbTxlBYlckhF5wgfyZXTWnMn7MMZjMu9XG8bPlliUOP9ThaF4QnhP8qrjrH7DRzHfSk0oQv1wToW+iA5GajEQ== @@ -16970,7 +16502,7 @@ which-module@^2.0.0: resolved "https://registry.yarnpkg.com/which-module/-/which-module-2.0.0.tgz#d9ef07dce77b9902b8a3a8fa4b31c3e3f7e6e87a" integrity sha512-B+enWhmw6cjfVC7kS8Pj9pCrKSc5txArRyaYGe088shv/FGWH+0Rjx/xPgtsWfsUtS27FkP697E4DDhgrgoc0Q== -which-typed-array@^1.1.14, which-typed-array@^1.1.15: +which-typed-array@^1.1.14, which-typed-array@^1.1.15, which-typed-array@^1.1.2, which-typed-array@^1.1.9: version "1.1.15" resolved "https://registry.yarnpkg.com/which-typed-array/-/which-typed-array-1.1.15.tgz#264859e9b11a649b388bfaaf4f767df1f779b38d" integrity sha512-oV0jmFtUky6CXfkqehVvBP/LSWJ2sy4vWMioiENyJLePrBO/yKyV9OyJySfAKosh+RYkIl5zJCNZ8/4JncrpdA== @@ -16981,18 +16513,6 @@ which-typed-array@^1.1.14, which-typed-array@^1.1.15: gopd "^1.0.1" has-tostringtag "^1.0.2" -which-typed-array@^1.1.2, which-typed-array@^1.1.9: - version "1.1.9" - resolved "https://registry.yarnpkg.com/which-typed-array/-/which-typed-array-1.1.9.tgz#307cf898025848cf995e795e8423c7f337efbde6" - integrity sha512-w9c4xkx6mPidwp7180ckYWfMmvxpjlZuIudNtDf4N/tTAUB8VJbX25qZoAsrtGuYNnGw3pa0AXgbGKRB8/EceA== - dependencies: - available-typed-arrays "^1.0.5" - call-bind "^1.0.2" - for-each "^0.3.3" - gopd "^1.0.1" - has-tostringtag "^1.0.0" - is-typed-array "^1.1.10" - which@^1.2.9, which@^1.3.1: version "1.3.1" resolved "https://registry.yarnpkg.com/which/-/which-1.3.1.tgz#a45043d54f5805316da8d62f9f50918d3da70b0a" From d392f8a86bf07334097cf05bc3d3a6cb07e33585 Mon Sep 17 00:00:00 2001 From: "@dhis2-bot" Date: Thu, 27 Jun 2024 08:05:33 +0000 Subject: [PATCH 31/62] chore(release): cut 101.1.1 [skip release] ## [101.1.1](https://github.com/dhis2/line-listing-app/compare/v101.1.0...v101.1.1) (2024-06-27) ### Bug Fixes * bump analytics with fix for DHIS2-16904 ([#556](https://github.com/dhis2/line-listing-app/issues/556)) ([31c7336](https://github.com/dhis2/line-listing-app/commit/31c73366f5e0a0a978bb4c28d965291b6f7ff8e4)) --- CHANGELOG.md | 7 +++++++ package.json | 2 +- 2 files changed, 8 insertions(+), 1 deletion(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 5659a4976..6f27cb8fb 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,3 +1,10 @@ +## [101.1.1](https://github.com/dhis2/line-listing-app/compare/v101.1.0...v101.1.1) (2024-06-27) + + +### Bug Fixes + +* bump analytics with fix for DHIS2-16904 ([#556](https://github.com/dhis2/line-listing-app/issues/556)) ([31c7336](https://github.com/dhis2/line-listing-app/commit/31c73366f5e0a0a978bb4c28d965291b6f7ff8e4)) + # [101.1.0](https://github.com/dhis2/line-listing-app/compare/v101.0.7...v101.1.0) (2024-06-26) diff --git a/package.json b/package.json index 5e7ffd3f9..dd2f842c6 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "line-listing-app", - "version": "101.1.0", + "version": "101.1.1", "description": "DHIS2 Line Listing", "license": "BSD-3-Clause", "private": true, From 86e65302fb2ba468bff29b76223ed04e345b5a3e Mon Sep 17 00:00:00 2001 From: Edoardo Sabadelli Date: Fri, 9 Aug 2024 14:16:15 +0200 Subject: [PATCH 32/62] fix: display the right format for time dimensions (DHIS2-17855) (#572) --- cypress/integration/options.cy.js | 6 +- src/modules/tableValues.js | 44 ++++++++++++-- src/modules/timeDimensions.js | 10 +++- yarn.lock | 96 ++++++++++++------------------- 4 files changed, 90 insertions(+), 66 deletions(-) diff --git a/cypress/integration/options.cy.js b/cypress/integration/options.cy.js index 00571c75b..1a2f92f4a 100644 --- a/cypress/integration/options.cy.js +++ b/cypress/integration/options.cy.js @@ -306,13 +306,15 @@ const testSkipRoundingForEnrollment = (roundedValue) => { } describe('skip rounding', () => { - it(['<41'], 'sets skip rounding for event (below 41)', () => { + // change when 39.6 is released (https://dhis2.atlassian.net/browse/DHIS2-17027) + it(['<40'], 'sets skip rounding for event (below 40)', () => { testSkipRoundingForEvent('3.1') }) - it(['>=41'], 'sets skip rounding for event (41 and above)', () => { + it(['>=40'], 'sets skip rounding for event (40 and above)', () => { testSkipRoundingForEvent('3.12') }) // FIXME: Blocked by backend issue https://dhis2.atlassian.net/browse/DHIS2-17027 (currently unsure if this will be backported though) + // backported but there is no data for this on 40 it.skip(['<41'], 'sets skip rounding for enrollment (below 41)', () => { testSkipRoundingForEnrollment('3.1') }) diff --git a/src/modules/tableValues.js b/src/modules/tableValues.js index 0b48f9873..f69e1f868 100644 --- a/src/modules/tableValues.js +++ b/src/modules/tableValues.js @@ -10,10 +10,21 @@ import moment from 'moment' import { DIMENSION_ID_EVENT_STATUS, DIMENSION_ID_PROGRAM_STATUS, + DIMENSION_ID_EVENT_DATE, + DIMENSION_ID_ENROLLMENT_DATE, + DIMENSION_ID_INCIDENT_DATE, + DIMENSION_ID_SCHEDULED_DATE, DIMENSION_ID_LAST_UPDATED, } from './dimensionConstants.js' import { extractDimensionIdParts } from './dimensionId.js' -import { headersMap, getStatusNames } from './visualization.js' +import { getTimeDimensions } from './timeDimensions.js' +import { + headersMap, + getDimensionIdFromHeaderName, + getStatusNames, +} from './visualization.js' + +const timeDimensions = getTimeDimensions() const getFormattedCellValue = ({ value, header = {}, visualization = {} }) => { if ( @@ -28,22 +39,45 @@ const getFormattedCellValue = ({ value, header = {}, visualization = {} }) => { return getStatusNames()[value] || value } - if ([VALUE_TYPE_DATE, VALUE_TYPE_DATETIME].includes(header.valueType)) { + let valueType = header.valueType + + if ([VALUE_TYPE_DATE, VALUE_TYPE_DATETIME].includes(valueType)) { + const dimensionId = extractDimensionIdParts( + header.name, + visualization.type + ).dimensionId + + if ( + header.name && + [ + headersMap[DIMENSION_ID_EVENT_DATE], + headersMap[DIMENSION_ID_ENROLLMENT_DATE], + headersMap[DIMENSION_ID_INCIDENT_DATE], + headersMap[DIMENSION_ID_SCHEDULED_DATE], + ].includes(dimensionId) + ) { + // override valueType for time dimensions to format the value as date (DHIS2-17855) + valueType = + timeDimensions[ + getDimensionIdFromHeaderName(dimensionId, visualization) + ].formatType + } + return ( value && moment(value).format( header.name === headersMap[DIMENSION_ID_LAST_UPDATED] || - header.valueType === VALUE_TYPE_DATETIME + valueType === VALUE_TYPE_DATETIME ? 'yyyy-MM-DD HH:mm' : 'yyyy-MM-DD' ) ) - } else if (header?.valueType === VALUE_TYPE_AGE) { + } else if (valueType === VALUE_TYPE_AGE) { return value && moment(value).format('yyyy-MM-DD') } else { return formatValue( value, - header.valueType || VALUE_TYPE_TEXT, + valueType || VALUE_TYPE_TEXT, header.optionSet ? {} : { diff --git a/src/modules/timeDimensions.js b/src/modules/timeDimensions.js index 727b7291a..606714a0a 100644 --- a/src/modules/timeDimensions.js +++ b/src/modules/timeDimensions.js @@ -1,4 +1,8 @@ -import { DIMENSION_TYPE_PERIOD, layoutGetAllDimensions } from '@dhis2/analytics' +import { + DIMENSION_TYPE_PERIOD, + VALUE_TYPE_DATE, + layoutGetAllDimensions, +} from '@dhis2/analytics' import i18n from '@dhis2/d2-i18n' import { DIMENSION_ID_EVENT_DATE, @@ -24,6 +28,7 @@ export const getTimeDimensions = () => ({ defaultName: i18n.t('Event date'), nameParentProperty: NAME_PARENT_PROPERTY_STAGE, nameProperty: 'displayExecutionDateLabel', + formatType: VALUE_TYPE_DATE, }, [DIMENSION_ID_ENROLLMENT_DATE]: { id: DIMENSION_ID_ENROLLMENT_DATE, @@ -31,6 +36,7 @@ export const getTimeDimensions = () => ({ defaultName: i18n.t('Enrollment date'), nameParentProperty: NAME_PARENT_PROPERTY_PROGRAM, nameProperty: 'displayEnrollmentDateLabel', + formatType: VALUE_TYPE_DATE, }, [DIMENSION_ID_INCIDENT_DATE]: { id: DIMENSION_ID_INCIDENT_DATE, @@ -38,6 +44,7 @@ export const getTimeDimensions = () => ({ defaultName: i18n.t('Incident date'), nameParentProperty: NAME_PARENT_PROPERTY_PROGRAM, nameProperty: 'displayIncidentDateLabel', + formatType: VALUE_TYPE_DATE, }, [DIMENSION_ID_SCHEDULED_DATE]: { id: DIMENSION_ID_SCHEDULED_DATE, @@ -45,6 +52,7 @@ export const getTimeDimensions = () => ({ defaultName: i18n.t('Scheduled date'), nameParentProperty: NAME_PARENT_PROPERTY_STAGE, nameProperty: 'displayDueDateLabel', + formatType: VALUE_TYPE_DATE, }, }) diff --git a/yarn.lock b/yarn.lock index dd2935797..4c332038f 100644 --- a/yarn.lock +++ b/yarn.lock @@ -250,12 +250,12 @@ dependencies: "@babel/types" "^7.24.7" -"@babel/helper-string-parser@^7.21.5", "@babel/helper-string-parser@^7.24.7": +"@babel/helper-string-parser@^7.24.7": version "7.24.7" resolved "https://registry.yarnpkg.com/@babel/helper-string-parser/-/helper-string-parser-7.24.7.tgz#4d2d0f14820ede3b9807ea5fc36dfc8cd7da07f2" integrity sha512-7MbVt6xrwFQbunH2DNQsAP5sTGxfqQtErvBIvIMi6EQnbgUOuVYanvREcmFrOPhoXBrTtjhhP+lW+o5UfK+tDg== -"@babel/helper-validator-identifier@^7.14.9", "@babel/helper-validator-identifier@^7.18.6", "@babel/helper-validator-identifier@^7.19.1", "@babel/helper-validator-identifier@^7.24.7": +"@babel/helper-validator-identifier@^7.14.9", "@babel/helper-validator-identifier@^7.19.1", "@babel/helper-validator-identifier@^7.24.7": version "7.24.7" resolved "https://registry.yarnpkg.com/@babel/helper-validator-identifier/-/helper-validator-identifier-7.24.7.tgz#75b889cfaf9e35c2aaf42cf0d72c8e91719251db" integrity sha512-rR+PBcQ1SMQDDyF6X0wxtG8QyLCgUB0eRAGguqRLfkCA87l7yAP7ehq8SNj96OOGTO8OBV70KhuFYcIkHXOg0w== @@ -284,7 +284,7 @@ "@babel/traverse" "^7.22.1" "@babel/types" "^7.22.3" -"@babel/highlight@^7.10.4", "@babel/highlight@^7.18.6", "@babel/highlight@^7.24.7": +"@babel/highlight@^7.10.4", "@babel/highlight@^7.24.7": version "7.24.7" resolved "https://registry.yarnpkg.com/@babel/highlight/-/highlight-7.24.7.tgz#a05ab1df134b286558aae0ed41e6c5f731bf409d" integrity sha512-EStJpq4OuY8xYfhGVXngigBJRWxftKX9ksiGDnmlY3o7B/V7KIAc9X4oiK87uPJSc/vs5L869bem5fhZa8caZw== @@ -294,7 +294,7 @@ js-tokens "^4.0.0" picocolors "^1.0.0" -"@babel/parser@^7.1.0", "@babel/parser@^7.1.6", "@babel/parser@^7.14.7", "@babel/parser@^7.21.9", "@babel/parser@^7.22.0", "@babel/parser@^7.24.7", "@babel/parser@^7.4.3", "@babel/parser@^7.7.0": +"@babel/parser@^7.1.0", "@babel/parser@^7.1.6", "@babel/parser@^7.14.7", "@babel/parser@^7.22.0", "@babel/parser@^7.24.7", "@babel/parser@^7.4.3", "@babel/parser@^7.7.0": version "7.24.7" resolved "https://registry.yarnpkg.com/@babel/parser/-/parser-7.24.7.tgz#9a5226f92f0c5c8ead550b750f5608e766c8ce85" integrity sha512-9uUYRm6OqQrCqQdG1iCBwBPZgN8ciDBro2nIOFaiRz1/BCxaI7CNvQbDHvsArAC7Tw9Hda/B3U+6ui9u4HWXPw== @@ -1127,7 +1127,7 @@ "@babel/helper-validator-identifier" "^7.14.9" to-fast-properties "^2.0.0" -"@babel/types@^7.0.0", "@babel/types@^7.12.6", "@babel/types@^7.18.6", "@babel/types@^7.18.9", "@babel/types@^7.20.0", "@babel/types@^7.20.5", "@babel/types@^7.21.0", "@babel/types@^7.21.4", "@babel/types@^7.21.5", "@babel/types@^7.22.0", "@babel/types@^7.22.3", "@babel/types@^7.24.7", "@babel/types@^7.3.0", "@babel/types@^7.3.3", "@babel/types@^7.4.0", "@babel/types@^7.4.4", "@babel/types@^7.7.0": +"@babel/types@^7.0.0", "@babel/types@^7.12.6", "@babel/types@^7.18.6", "@babel/types@^7.18.9", "@babel/types@^7.20.0", "@babel/types@^7.20.5", "@babel/types@^7.21.4", "@babel/types@^7.21.5", "@babel/types@^7.22.0", "@babel/types@^7.22.3", "@babel/types@^7.24.7", "@babel/types@^7.3.0", "@babel/types@^7.3.3", "@babel/types@^7.4.0", "@babel/types@^7.4.4", "@babel/types@^7.7.0": version "7.24.7" resolved "https://registry.yarnpkg.com/@babel/types/-/types-7.24.7.tgz#6027fe12bc1aa724cd32ab113fb7f1988f1f66f2" integrity sha512-XEFXSlxiG5td2EJRe8vOmRbaXVgfcBlszKujvVmWIK/UpywWljQCfzAv3RQCGujWQ1RD4YYWEAqDXfuJiy8f5Q== @@ -2817,7 +2817,7 @@ "@types/yargs" "^17.0.8" chalk "^4.0.0" -"@jridgewell/gen-mapping@^0.3.0", "@jridgewell/gen-mapping@^0.3.2", "@jridgewell/gen-mapping@^0.3.5": +"@jridgewell/gen-mapping@^0.3.0", "@jridgewell/gen-mapping@^0.3.5": version "0.3.5" resolved "https://registry.yarnpkg.com/@jridgewell/gen-mapping/-/gen-mapping-0.3.5.tgz#dcce6aff74bdf6dad1a95802b69b04a2fcb1fb36" integrity sha512-IzL8ZoEDIBRWEzlCcRhOaCupYyN5gdIK+Q6fbFdPDg6HqX6jpkItn7DFIpW9LQzXG6Df9sA7+OKnq0qlz/GaQg== @@ -2826,22 +2826,17 @@ "@jridgewell/sourcemap-codec" "^1.4.10" "@jridgewell/trace-mapping" "^0.3.24" -"@jridgewell/resolve-uri@3.1.0": - version "3.1.0" - resolved "https://registry.yarnpkg.com/@jridgewell/resolve-uri/-/resolve-uri-3.1.0.tgz#2203b118c157721addfe69d47b70465463066d78" - integrity sha512-F2msla3tad+Mfht5cJq7LSXcdudKTWCVYUgw6pLFOOHSTtZlj6SWNYAp+AhuqLmWdBO2X5hPrLcu8cVP8fy28w== - "@jridgewell/resolve-uri@^3.1.0": version "3.1.2" resolved "https://registry.yarnpkg.com/@jridgewell/resolve-uri/-/resolve-uri-3.1.2.tgz#7a0ee601f60f99a20c7c7c5ff0c80388c1189bd6" integrity sha512-bRISgCIjP20/tbWSPWMEi54QVPRZExkuD9lJL+UIxUKtwVJA8wW1Trb1jMs1RFXo1CBTNZ/5hpC9QvmKWdopKw== -"@jridgewell/set-array@^1.0.1", "@jridgewell/set-array@^1.2.1": +"@jridgewell/set-array@^1.2.1": version "1.2.1" resolved "https://registry.yarnpkg.com/@jridgewell/set-array/-/set-array-1.2.1.tgz#558fb6472ed16a4c850b889530e6b36438c49280" integrity sha512-R8gLRTZeyp03ymzP/6Lil/28tGeGEzhx1q2k703KGWRAI1VdvPIXdG70VJc2pAMw3NA6JKL5hhFu1sJX0Mnn/A== -"@jridgewell/source-map@^0.3.2", "@jridgewell/source-map@^0.3.3": +"@jridgewell/source-map@^0.3.3": version "0.3.6" resolved "https://registry.yarnpkg.com/@jridgewell/source-map/-/source-map-0.3.6.tgz#9d71ca886e32502eb9362c9a74a46787c36df81a" integrity sha512-1ZJTZebgqllO79ue2bm3rIGud/bOe0pP5BjSRCRxxYkEZS8STV7zN84UBbiYu7jy+eCKSnVIUgoWWE/tt+shMQ== @@ -2849,17 +2844,12 @@ "@jridgewell/gen-mapping" "^0.3.5" "@jridgewell/trace-mapping" "^0.3.25" -"@jridgewell/sourcemap-codec@1.4.14": - version "1.4.14" - resolved "https://registry.yarnpkg.com/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.4.14.tgz#add4c98d341472a289190b424efbdb096991bb24" - integrity sha512-XPSJHWmi394fuUuzDnGz1wiKqWfo1yXecHQMRf2l6hztTO+nPru658AyDngaBe7isIxEkRsPR3FZh+s7iVa4Uw== - "@jridgewell/sourcemap-codec@^1.4.10", "@jridgewell/sourcemap-codec@^1.4.14": version "1.4.15" resolved "https://registry.yarnpkg.com/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.4.15.tgz#d7c6e6755c78567a951e04ab52ef0fd26de59f32" integrity sha512-eF2rxCRulEKXHTRiDrDy6erMYWqNw4LPdQ8UQA4huuxaQsVeRPFl2oM8oDGxMFhJUWZf9McpLtJasDDZb/Bpeg== -"@jridgewell/trace-mapping@^0.3.14", "@jridgewell/trace-mapping@^0.3.17", "@jridgewell/trace-mapping@^0.3.20", "@jridgewell/trace-mapping@^0.3.24", "@jridgewell/trace-mapping@^0.3.25", "@jridgewell/trace-mapping@^0.3.9": +"@jridgewell/trace-mapping@^0.3.20", "@jridgewell/trace-mapping@^0.3.24", "@jridgewell/trace-mapping@^0.3.25", "@jridgewell/trace-mapping@^0.3.9": version "0.3.25" resolved "https://registry.yarnpkg.com/@jridgewell/trace-mapping/-/trace-mapping-0.3.25.tgz#15f190e98895f3fc23276ee14bc76b675c2e50f0" integrity sha512-vNk6aEwybGtawWmy/PzwnGDOjCkLWSD2wqvjGGAgOAwCGWySYXfYoxt00IJkTF+8Lb57DwOb3Aa0o9CApepiYQ== @@ -4064,7 +4054,7 @@ acorn@^7.0.0, acorn@^7.1.1, acorn@^7.4.0: resolved "https://registry.yarnpkg.com/acorn/-/acorn-7.4.1.tgz#feaed255973d2e77555b83dbc08851a6c63520fa" integrity sha512-nQyp0o1/mNdbTO1PO6kHkwSrmgZ0MT/jCCpNiwbUjGoRN4dlBhqJtoQuCnEOKzgTVwg0ZWiCoQy6SxMebQVh8A== -acorn@^8.2.4, acorn@^8.5.0, acorn@^8.7.1, acorn@^8.8.0, acorn@^8.8.2: +acorn@^8.2.4, acorn@^8.7.1, acorn@^8.8.0, acorn@^8.8.2: version "8.11.3" resolved "https://registry.yarnpkg.com/acorn/-/acorn-8.11.3.tgz#71e0b14e13a4ec160724b38fb7b0f233b1b81d7a" integrity sha512-Y9rRfJG5jcKOE0CLisYbojUjIrIEE7AGMzA/Sm4BslANhbS+cDMpgBdcPT91oJ7OuJ9hYJBx59RjbhxVnrF8Xg== @@ -4323,7 +4313,7 @@ arr-union@^3.1.0: resolved "https://registry.yarnpkg.com/arr-union/-/arr-union-3.1.0.tgz#e39b09aea9def866a8f206e288af63919bae39c4" integrity sha512-sKpyeERZ02v1FeCZT8lrfJq5u6goHCtpTAzPwJYe7c8SPFOboNjNg1vz2L4VTn9T4PQxEx13TbXLmYUcS6Ug7Q== -array-buffer-byte-length@^1.0.0, array-buffer-byte-length@^1.0.1: +array-buffer-byte-length@^1.0.1: version "1.0.1" resolved "https://registry.yarnpkg.com/array-buffer-byte-length/-/array-buffer-byte-length-1.0.1.tgz#1e5583ec16763540a27ae52eed99ff899223568f" integrity sha512-ahC5W1xgou+KTXix4sAO8Ki12Q+jf4i0+tmk3sC+zgcynshkHxzpXdImBehiUYKKKDwvfFiJl1tZt6ewscS1Mg== @@ -4457,16 +4447,6 @@ asn1.js@^4.10.1: inherits "^2.0.1" minimalistic-assert "^1.0.0" -asn1.js@^5.2.0: - version "5.4.1" - resolved "https://registry.yarnpkg.com/asn1.js/-/asn1.js-5.4.1.tgz#11a980b84ebb91781ce35b0fdc2ee294e3783f07" - integrity sha512-+I//4cYPccV8LdmBLiX8CYvf9Sp3vQsrqu2QNXRcrbiWvcx/UdlFiqUJJzxRQxgsZmvhXhn4cSKeSmoFjVdupA== - dependencies: - bn.js "^4.0.0" - inherits "^2.0.1" - minimalistic-assert "^1.0.0" - safer-buffer "^2.1.0" - asn1@~0.2.3: version "0.2.6" resolved "https://registry.yarnpkg.com/asn1/-/asn1-0.2.6.tgz#0d3a7bb6e64e02a90c0303b31f292868ea09a08d" @@ -4558,7 +4538,7 @@ autoprefixer@^10.4.8: picocolors "^1.0.0" postcss-value-parser "^4.2.0" -available-typed-arrays@^1.0.5, available-typed-arrays@^1.0.7: +available-typed-arrays@^1.0.7: version "1.0.7" resolved "https://registry.yarnpkg.com/available-typed-arrays/-/available-typed-arrays-1.0.7.tgz#a5cc375d6a03c2efc87a553f3e0b1522def14846" integrity sha512-wvUjBtSGN7+7SjNpq/9M2Tg350UZD3q62IFZLbRAR1bSMlCo1ZaeW+BJ+D090e4hIIZLBcTDWe4Mh4jvUDajzQ== @@ -5036,7 +5016,7 @@ browser-stdout@1.3.1: resolved "https://registry.yarnpkg.com/browser-stdout/-/browser-stdout-1.3.1.tgz#baa559ee14ced73452229bad7326467c61fabd60" integrity sha512-qhAVI1+Av2X7qelOfAIYwXONood6XlZE/fXaBSmW/T5SzLAmCgzi+eiWE7fUvbHaeNBQH13UftjpXxsfLkMpgw== -browserify-aes@^1.0.0, browserify-aes@^1.0.4, browserify-aes@^1.2.0: +browserify-aes@^1.0.4, browserify-aes@^1.2.0: version "1.2.0" resolved "https://registry.yarnpkg.com/browserify-aes/-/browserify-aes-1.2.0.tgz#326734642f403dabc3003209853bb70ad428ef48" integrity sha512-+7CHXqGuspUn/Sl5aO7Ea0xWGAtETPXNSAjHo48JfLdPWcMng33Xe4znFvQweqc/uzk5zSOI3H52CYnjCfb5hA== @@ -5385,7 +5365,7 @@ caniuse-api@^3.0.0: lodash.memoize "^4.1.2" lodash.uniq "^4.5.0" -caniuse-lite@^1.0.0, caniuse-lite@^1.0.30001407, caniuse-lite@^1.0.30001449, caniuse-lite@^1.0.30001629: +caniuse-lite@^1.0.0, caniuse-lite@^1.0.30001407, caniuse-lite@^1.0.30001629: version "1.0.30001632" resolved "https://registry.yarnpkg.com/caniuse-lite/-/caniuse-lite-1.0.30001632.tgz#964207b7cba5851701afb4c8afaf1448db3884b6" integrity sha512-udx3o7yHJfUxMLkGohMlVHCvFvWmirKh9JAH/d7WOLPetlH+LTL5cocMZ0t7oZx/mdlOWXti97xLZWc8uURRHg== @@ -5407,7 +5387,7 @@ caseless@~0.12.0: resolved "https://registry.yarnpkg.com/caseless/-/caseless-0.12.0.tgz#1b681c21ff84033c826543090689420d187151dc" integrity sha512-4tYFyifaFfGacoiObjJegolkwSU4xQNGbVgUiNYVUxbQ2x2lUsFvY4hVgVzGiIe6WLOPqycWXA40l+PWsxthUw== -chalk@^2.0.0, chalk@^2.0.1, chalk@^2.4.1, chalk@^2.4.2: +chalk@^2.0.1, chalk@^2.4.1, chalk@^2.4.2: version "2.4.2" resolved "https://registry.yarnpkg.com/chalk/-/chalk-2.4.2.tgz#cd42541677a54333cf541a49108c1432b44c9424" integrity sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ== @@ -7034,7 +7014,7 @@ ejs@^3.1.5, ejs@^3.1.6: dependencies: jake "^10.8.5" -electron-to-chromium@^1.4.284, electron-to-chromium@^1.4.796: +electron-to-chromium@^1.4.796: version "1.4.796" resolved "https://registry.yarnpkg.com/electron-to-chromium/-/electron-to-chromium-1.4.796.tgz#48dd6ff634b7f7df6313bd27aaa713f3af4a2b29" integrity sha512-NglN/xprcM+SHD2XCli4oC6bWe6kHoytcyLKCWXmRL854F0qhPhaYgUswUsglnPxYaNQIg2uMY4BvaomIf3kLA== @@ -7246,7 +7226,7 @@ error-stack-parser@^2.0.6: dependencies: stackframe "^1.3.4" -es-abstract@^1.17.2, es-abstract@^1.19.0, es-abstract@^1.19.1, es-abstract@^1.19.2, es-abstract@^1.19.4, es-abstract@^1.19.5, es-abstract@^1.20.1, es-abstract@^1.20.4, es-abstract@^1.22.1, es-abstract@^1.22.3, es-abstract@^1.23.0, es-abstract@^1.23.2: +es-abstract@^1.17.2, es-abstract@^1.19.0, es-abstract@^1.19.1, es-abstract@^1.19.2, es-abstract@^1.19.4, es-abstract@^1.19.5, es-abstract@^1.20.1, es-abstract@^1.22.1, es-abstract@^1.22.3, es-abstract@^1.23.0, es-abstract@^1.23.2: version "1.23.3" resolved "https://registry.yarnpkg.com/es-abstract/-/es-abstract-1.23.3.tgz#8f0c5a35cd215312573c5a27c87dfd6c881a0aa0" integrity sha512-e+HfNH61Bj1X9/jLc5v1owaLYuHdeHHSQlkhCBiTK8rBvKaULl/beGMxwrMXjpYrv4pz22BlY570vVePA2ho4A== @@ -7341,7 +7321,7 @@ es-object-atoms@^1.0.0: dependencies: es-errors "^1.3.0" -es-set-tostringtag@^2.0.1, es-set-tostringtag@^2.0.3: +es-set-tostringtag@^2.0.3: version "2.0.3" resolved "https://registry.yarnpkg.com/es-set-tostringtag/-/es-set-tostringtag-2.0.3.tgz#8bb60f0a440c2e4281962428438d58545af39777" integrity sha512-3T8uNMC3OQTHkFUsFq8r/BwAXLHvU/9O9mE0fBc/MY5iq/8H7ncvO947LmYA6ldWw9Uh8Yhf25zu6n7nML5QWQ== @@ -8398,7 +8378,7 @@ function-bind@^1.1.1, function-bind@^1.1.2: resolved "https://registry.yarnpkg.com/function-bind/-/function-bind-1.1.2.tgz#2c02d864d97f3ea6c8830c464cbd11ab6eab7a1c" integrity sha512-7XHNxH7qX9xG5mIwxkhumTox/MIRNcOgDrxWsMt2pAr23WHp6MrRlN7FBSFpCpr+oVO0F744iUgR82nJMfG2SA== -function.prototype.name@^1.1.2, function.prototype.name@^1.1.5, function.prototype.name@^1.1.6: +function.prototype.name@^1.1.2, function.prototype.name@^1.1.6: version "1.1.6" resolved "https://registry.yarnpkg.com/function.prototype.name/-/function.prototype.name-1.1.6.tgz#cdf315b7d90ee77a4c6ee216c3c3362da07533fd" integrity sha512-Z5kx79swU5P27WEayXM1tBi5Ze/lbIyiNgU3qyXUOf9b2rgXYyF9Dy9Cx+IQv/Lc8WCG6L82zwUPpSS9hGehIg== @@ -8413,7 +8393,7 @@ functional-red-black-tree@^1.0.1: resolved "https://registry.yarnpkg.com/functional-red-black-tree/-/functional-red-black-tree-1.0.1.tgz#1b0ab3bd553b2a0d6399d29c0e3ea0b252078327" integrity sha512-dsKNQNdj6xA3T+QlADDA7mOSlX0qiMINjn0cgr+eGHGsbSHzTabcIogz2+p/iqP1Xs6EP/sS2SbqH+brGTbq0g== -functions-have-names@^1.2.2, functions-have-names@^1.2.3: +functions-have-names@^1.2.3: version "1.2.3" resolved "https://registry.yarnpkg.com/functions-have-names/-/functions-have-names-1.2.3.tgz#0404fe4ee2ba2f607f0e0ec3c80bae994133b834" integrity sha512-xckBUXyTIqT97tq2x2AMb+g163b5JFysYk0x4qxNFwbfQkmNZoiRHb6sPzI9/QV33WeuvVYBUIiD4NzNIyqaRQ== @@ -8440,7 +8420,7 @@ get-caller-file@^2.0.1, get-caller-file@^2.0.5: resolved "https://registry.yarnpkg.com/get-caller-file/-/get-caller-file-2.0.5.tgz#4f94412a82db32f36e3b0b9741f8a97feb031f7e" integrity sha512-DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg== -get-intrinsic@^1.0.1, get-intrinsic@^1.0.2, get-intrinsic@^1.1.0, get-intrinsic@^1.1.1, get-intrinsic@^1.1.3, get-intrinsic@^1.2.0, get-intrinsic@^1.2.1, get-intrinsic@^1.2.3, get-intrinsic@^1.2.4: +get-intrinsic@^1.0.1, get-intrinsic@^1.0.2, get-intrinsic@^1.1.0, get-intrinsic@^1.1.1, get-intrinsic@^1.1.3, get-intrinsic@^1.2.1, get-intrinsic@^1.2.3, get-intrinsic@^1.2.4: version "1.2.4" resolved "https://registry.yarnpkg.com/get-intrinsic/-/get-intrinsic-1.2.4.tgz#e385f5a4b5227d449c3eabbad05494ef0abbeadd" integrity sha512-5uYhsJH8VJBTv7oslg4BznJYhDoRI6waYCxMmCdnTrcCrHA/fCFKoTFz2JKKE0HdDFUF7/oQuhzumXJK7paBRQ== @@ -8485,7 +8465,7 @@ get-stream@^6.0.0: resolved "https://registry.yarnpkg.com/get-stream/-/get-stream-6.0.1.tgz#a262d8eef67aced57c2852ad6167526a43cbf7b7" integrity sha512-ts6Wi+2j3jQjqi70w5AlN8DFnkSwC+MqmxEzdEALB2qXZYV3X/b1CTfgPLGJNMeAWxdPfU8FO1ms3NUfaHCPYg== -get-symbol-description@^1.0.0, get-symbol-description@^1.0.2: +get-symbol-description@^1.0.2: version "1.0.2" resolved "https://registry.yarnpkg.com/get-symbol-description/-/get-symbol-description-1.0.2.tgz#533744d5aa20aca4e079c8e5daf7fd44202821f5" integrity sha512-g0QYk1dZBxGwk+Ngc+ltRH2IBp2f7zBkBMBJZCDerh6EhlhSR6+9irMCuT/09zD6qkarHUSn529sK/yL4S27mg== @@ -9343,7 +9323,7 @@ insert-module-globals@^7.0.0, insert-module-globals@^7.2.1: undeclared-identifiers "^1.1.2" xtend "^4.0.0" -internal-slot@^1.0.3, internal-slot@^1.0.5, internal-slot@^1.0.7: +internal-slot@^1.0.3, internal-slot@^1.0.7: version "1.0.7" resolved "https://registry.yarnpkg.com/internal-slot/-/internal-slot-1.0.7.tgz#c06dcca3ed874249881007b0a5523b172a190802" integrity sha512-NGnrKwXzSms2qUUih/ILZ5JBqNTSa1+ZmP6flaIp6KmSElgE9qdndzS3cqjrDovwFdmwsGsLdeFgB6suw+1e9g== @@ -9399,7 +9379,7 @@ is-arguments@^1.0.4, is-arguments@^1.1.0: call-bind "^1.0.2" has-tostringtag "^1.0.0" -is-array-buffer@^3.0.1, is-array-buffer@^3.0.2, is-array-buffer@^3.0.4: +is-array-buffer@^3.0.4: version "3.0.4" resolved "https://registry.yarnpkg.com/is-array-buffer/-/is-array-buffer-3.0.4.tgz#7a1f92b3d61edd2bc65d24f130530ea93d7fae98" integrity sha512-wcjaerHw0ydZwfhiKbXJWLDY8A7yV7KhjQOpb83hGgGfId/aQa4TOvwyzn2PuswW2gPCYEL/nEAiSVpdOj1lXw== @@ -9600,7 +9580,7 @@ is-negated-glob@^1.0.0: resolved "https://registry.yarnpkg.com/is-negated-glob/-/is-negated-glob-1.0.0.tgz#6910bca5da8c95e784b5751b976cf5a10fee36d2" integrity sha512-czXVVn/QEmgvej1f50BZ648vUI+em0xqMq2Sn+QncCLN4zj1UAxlT+kw/6ggQTOaZPd1HqKQGEqbpQVtJucWug== -is-negative-zero@^2.0.2, is-negative-zero@^2.0.3: +is-negative-zero@^2.0.3: version "2.0.3" resolved "https://registry.yarnpkg.com/is-negative-zero/-/is-negative-zero-2.0.3.tgz#ced903a027aca6381b777a5743069d7376a49747" integrity sha512-5KoIu2Ngpyek75jXodFvnafB6DJgr3u8uuK0LEZJjrU19DrMD3EVERaR8sjz8CCGgpZvxPl9SuE1GMVPFHx1mw== @@ -9756,7 +9736,7 @@ is-text-path@^1.0.1: dependencies: text-extensions "^1.0.0" -is-typed-array@^1.1.10, is-typed-array@^1.1.13, is-typed-array@^1.1.3, is-typed-array@^1.1.9: +is-typed-array@^1.1.13, is-typed-array@^1.1.3: version "1.1.13" resolved "https://registry.yarnpkg.com/is-typed-array/-/is-typed-array-1.1.13.tgz#d6c5ca56df62334959322d7d7dd1cca50debe229" integrity sha512-uZ25/bUAlUY5fR4OKT4rZQEBrzQWYV9ZJYGGsUmEJ6thodVJ1HX64ePQ6Z0qPWP+m+Uq6e9UugrE38jeYsDSMw== @@ -11859,7 +11839,7 @@ node-ipc@9.1.1: js-message "1.0.5" js-queue "2.0.0" -node-releases@^2.0.14, node-releases@^2.0.8: +node-releases@^2.0.14: version "2.0.14" resolved "https://registry.yarnpkg.com/node-releases/-/node-releases-2.0.14.tgz#2ffb053bceb8b2be8495ece1ab6ce600c4461b0b" integrity sha512-y10wOWt8yZpqXmOgRo77WaHEmhYQYGNA6y421PKsKYWEK8aW+cqAphborZDhqfyKrbZEN92CN1X2KbafY2s7Yw== @@ -11975,7 +11955,7 @@ object-hash@^3.0.0: resolved "https://registry.yarnpkg.com/object-hash/-/object-hash-3.0.0.tgz#73f97f753e7baffc0e2cc9d6e079079744ac82e9" integrity sha512-RSn9F68PjH9HqtltsSnqYC1XXoWe9Bju5+213R98cNGttag9q9yAOTzdbsqvIa7aNm5WffBZFpWYr2aWrklWAw== -object-inspect@^1.12.3, object-inspect@^1.13.1, object-inspect@^1.7.0, object-inspect@^1.9.0: +object-inspect@^1.13.1, object-inspect@^1.7.0, object-inspect@^1.9.0: version "1.13.1" resolved "https://registry.yarnpkg.com/object-inspect/-/object-inspect-1.13.1.tgz#b96c6109324ccfef6b12216a956ca4dc2ff94bc2" integrity sha512-5qoj1RUiKOMsCCNLV1CBiPYE10sziTsnmNxkAI/rZhiD63CF7IqdFGC/XzjWjpSgLf0LxXX3bDFIh0E18f6UhQ== @@ -12000,7 +11980,7 @@ object-visit@^1.0.0: dependencies: isobject "^3.0.0" -object.assign@^4.0.4, object.assign@^4.1.0, object.assign@^4.1.2, object.assign@^4.1.3, object.assign@^4.1.4, object.assign@^4.1.5: +object.assign@^4.0.4, object.assign@^4.1.0, object.assign@^4.1.2, object.assign@^4.1.3, object.assign@^4.1.5: version "4.1.5" resolved "https://registry.yarnpkg.com/object.assign/-/object.assign-4.1.5.tgz#3a833f9ab7fdb80fc9e8d2300c803d216d8fdbb0" integrity sha512-byy+U7gp+FVwmyzKPYhW2h5l3crpmGsxl7X2s8y43IgxvG4g3QZ6CffDtsNQy1WsmZpQbO+ybo0AlW7TY6DcBQ== @@ -13850,7 +13830,7 @@ regex-parser@^2.2.11: resolved "https://registry.yarnpkg.com/regex-parser/-/regex-parser-2.2.11.tgz#3b37ec9049e19479806e878cabe7c1ca83ccfe58" integrity sha512-jbD/FT0+9MBU2XAZluI7w2OBs1RBi6p9M83nkoZayQXXU9e8Robt69FcZc7wU4eJD/YFTjn1JdCk3rbMJajz8Q== -regexp.prototype.flags@^1.3.0, regexp.prototype.flags@^1.4.1, regexp.prototype.flags@^1.4.3, regexp.prototype.flags@^1.5.2: +regexp.prototype.flags@^1.3.0, regexp.prototype.flags@^1.4.1, regexp.prototype.flags@^1.5.2: version "1.5.2" resolved "https://registry.yarnpkg.com/regexp.prototype.flags/-/regexp.prototype.flags-1.5.2.tgz#138f644a3350f981a858c44f6bb1a61ff59be334" integrity sha512-NcDiDkTLuPR+++OCKB0nWafEmhg/Da8aUPLPMQbK+bxKKCm1/S5he+AqYa4PlMCVBalb4/yxIRub6qkEx5yJbw== @@ -14237,7 +14217,7 @@ safe-buffer@5.2.1, safe-buffer@>=5.1.0, safe-buffer@^5.0.1, safe-buffer@^5.1.0, resolved "https://registry.yarnpkg.com/safe-buffer/-/safe-buffer-5.2.1.tgz#1eaf9fa9bdb1fdd4ec75f58f9cdb4e6b7827eec6" integrity sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ== -safe-regex-test@^1.0.0, safe-regex-test@^1.0.3: +safe-regex-test@^1.0.3: version "1.0.3" resolved "https://registry.yarnpkg.com/safe-regex-test/-/safe-regex-test-1.0.3.tgz#a5b4c0f06e0ab50ea2c395c14d8371232924c377" integrity sha512-CdASjNJPvRa7roO6Ra/gLYBTzYzzPyyBXxIMdGW3USQLyjWEls2RgW5UBTXaQVp+OrpeCK3bLem8smtmheoRuw== @@ -15036,7 +15016,7 @@ string.prototype.matchall@^4.0.6, string.prototype.matchall@^4.0.7: regexp.prototype.flags "^1.4.1" side-channel "^1.0.4" -string.prototype.trim@^1.2.1, string.prototype.trim@^1.2.7, string.prototype.trim@^1.2.9: +string.prototype.trim@^1.2.1, string.prototype.trim@^1.2.9: version "1.2.9" resolved "https://registry.yarnpkg.com/string.prototype.trim/-/string.prototype.trim-1.2.9.tgz#b6fa326d72d2c78b6df02f7759c73f8f6274faa4" integrity sha512-klHuCNxiMZ8MlsOihJhJEBJAiMVqU3Z2nEXWfWnIqjN0gEFS9J9+IxKozWWtQGcgoa1WUZzLjKPTr4ZHNFTFxw== @@ -15046,7 +15026,7 @@ string.prototype.trim@^1.2.1, string.prototype.trim@^1.2.7, string.prototype.tri es-abstract "^1.23.0" es-object-atoms "^1.0.0" -string.prototype.trimend@^1.0.6, string.prototype.trimend@^1.0.8: +string.prototype.trimend@^1.0.8: version "1.0.8" resolved "https://registry.yarnpkg.com/string.prototype.trimend/-/string.prototype.trimend-1.0.8.tgz#3651b8513719e8a9f48de7f2f77640b26652b229" integrity sha512-p73uL5VCHCO2BZZ6krwwQE3kCzM7NKmis8S//xEC6fQonchbum4eP6kR4DLEjQFO3Wnj3Fuo8NM0kOSjVdHjZQ== @@ -15055,7 +15035,7 @@ string.prototype.trimend@^1.0.6, string.prototype.trimend@^1.0.8: define-properties "^1.2.1" es-object-atoms "^1.0.0" -string.prototype.trimstart@^1.0.6, string.prototype.trimstart@^1.0.8: +string.prototype.trimstart@^1.0.8: version "1.0.8" resolved "https://registry.yarnpkg.com/string.prototype.trimstart/-/string.prototype.trimstart-1.0.8.tgz#7ee834dda8c7c17eff3118472bb35bfedaa34dde" integrity sha512-UXSH262CSZY1tfu3G3Secr6uGLCFVPMhIqHjlgCUtCCcgihYc/xKs9djMTMUOb2j1mVSeU8EU6NWc/iQKU6Gfg== @@ -15421,7 +15401,7 @@ terser-webpack-plugin@^5.2.5, terser-webpack-plugin@^5.3.1, terser-webpack-plugi serialize-javascript "^6.0.1" terser "^5.26.0" -terser@^5.0.0, terser@^5.10.0, terser@^5.14.1, terser@^5.26.0: +terser@^5.0.0, terser@^5.10.0, terser@^5.26.0: version "5.31.1" resolved "https://registry.yarnpkg.com/terser/-/terser-5.31.1.tgz#735de3c987dd671e95190e6b98cfe2f07f3cf0d4" integrity sha512-37upzU1+viGvuFtBo9NPufCb9dwM0+l9hMxYyWfBA+fbwrPqNJAhbZ6W47bBFnZHKHTUBnMvi87434qq+qnxOg== @@ -15789,7 +15769,7 @@ typed-array-byte-offset@^1.0.2: has-proto "^1.0.3" is-typed-array "^1.1.13" -typed-array-length@^1.0.4, typed-array-length@^1.0.6: +typed-array-length@^1.0.6: version "1.0.6" resolved "https://registry.yarnpkg.com/typed-array-length/-/typed-array-length-1.0.6.tgz#57155207c76e64a3457482dfdc1c9d1d3c4c73a3" integrity sha512-/OxDN6OtAk5KBpGb28T+HZc2M+ADtvRxXrKKbUwtsLgdoxgX13hyy7ek6bFRl5+aBs2yZzB0c4CnQfAtVypW/g== @@ -15990,7 +15970,7 @@ upath@^1.2.0: resolved "https://registry.yarnpkg.com/upath/-/upath-1.2.0.tgz#8f66dbcd55a883acdae4408af8b035a5044c1894" integrity sha512-aZwGpamFO61g3OlfT7OQCHqhGnW43ieH9WZeP7QxN/G/jS4jfqUkZxoryvJgVPEcrl5NL/ggHsSmLMHuH64Lhg== -update-browserslist-db@^1.0.10, update-browserslist-db@^1.0.16: +update-browserslist-db@^1.0.16: version "1.0.16" resolved "https://registry.yarnpkg.com/update-browserslist-db/-/update-browserslist-db-1.0.16.tgz#f6d489ed90fb2f07d67784eb3f53d7891f736356" integrity sha512-KVbTxlBYlckhF5wgfyZXTWnMn7MMZjMu9XG8bPlliUOP9ThaF4QnhP8qrjrH7DRzHfSk0oQv1wToW+iA5GajEQ== @@ -16502,7 +16482,7 @@ which-module@^2.0.0: resolved "https://registry.yarnpkg.com/which-module/-/which-module-2.0.0.tgz#d9ef07dce77b9902b8a3a8fa4b31c3e3f7e6e87a" integrity sha512-B+enWhmw6cjfVC7kS8Pj9pCrKSc5txArRyaYGe088shv/FGWH+0Rjx/xPgtsWfsUtS27FkP697E4DDhgrgoc0Q== -which-typed-array@^1.1.14, which-typed-array@^1.1.15, which-typed-array@^1.1.2, which-typed-array@^1.1.9: +which-typed-array@^1.1.14, which-typed-array@^1.1.15, which-typed-array@^1.1.2: version "1.1.15" resolved "https://registry.yarnpkg.com/which-typed-array/-/which-typed-array-1.1.15.tgz#264859e9b11a649b388bfaaf4f767df1f779b38d" integrity sha512-oV0jmFtUky6CXfkqehVvBP/LSWJ2sy4vWMioiENyJLePrBO/yKyV9OyJySfAKosh+RYkIl5zJCNZ8/4JncrpdA== From b50a0c7e8a5329b929457e1a4a6f95e040fbbe8f Mon Sep 17 00:00:00 2001 From: "@dhis2-bot" Date: Fri, 9 Aug 2024 12:35:22 +0000 Subject: [PATCH 33/62] chore(release): cut 101.1.2 [skip release] ## [101.1.2](https://github.com/dhis2/line-listing-app/compare/v101.1.1...v101.1.2) (2024-08-09) ### Bug Fixes * display the right format for time dimensions (DHIS2-17855) ([#572](https://github.com/dhis2/line-listing-app/issues/572)) ([86e6530](https://github.com/dhis2/line-listing-app/commit/86e65302fb2ba468bff29b76223ed04e345b5a3e)) --- CHANGELOG.md | 7 +++++++ package.json | 2 +- 2 files changed, 8 insertions(+), 1 deletion(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 6f27cb8fb..80b37d2eb 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,3 +1,10 @@ +## [101.1.2](https://github.com/dhis2/line-listing-app/compare/v101.1.1...v101.1.2) (2024-08-09) + + +### Bug Fixes + +* display the right format for time dimensions (DHIS2-17855) ([#572](https://github.com/dhis2/line-listing-app/issues/572)) ([86e6530](https://github.com/dhis2/line-listing-app/commit/86e65302fb2ba468bff29b76223ed04e345b5a3e)) + ## [101.1.1](https://github.com/dhis2/line-listing-app/compare/v101.1.0...v101.1.1) (2024-06-27) diff --git a/package.json b/package.json index dd2f842c6..772d0bb72 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "line-listing-app", - "version": "101.1.1", + "version": "101.1.2", "description": "DHIS2 Line Listing", "license": "BSD-3-Clause", "private": true, From f0449b7d9f0ce2899d38dc26e792457164f3dff0 Mon Sep 17 00:00:00 2001 From: "@dhis2-bot" Date: Sun, 11 Aug 2024 03:45:32 +0200 Subject: [PATCH 34/62] fix(translations): sync translations from transifex (master) Automatically merged. --- i18n/es.po | 5 ++++- i18n/es_419.po | 11 +++++++---- i18n/fr.po | 38 ++++++++++++++++++++++++-------------- i18n/nb.po | 18 +++++++++++------- i18n/zh.po | 5 ++++- 5 files changed, 50 insertions(+), 27 deletions(-) diff --git a/i18n/es.po b/i18n/es.po index 34b316306..2a14d157f 100644 --- a/i18n/es.po +++ b/i18n/es.po @@ -15,7 +15,7 @@ msgid "" msgstr "" "Project-Id-Version: i18next-conv\n" -"POT-Creation-Date: 2024-02-13T14:56:50.029Z\n" +"POT-Creation-Date: 2024-06-04T11:01:31.012Z\n" "PO-Revision-Date: 2022-08-23 11:50+0000\n" "Last-Translator: Janeth Cruz, 2024\n" "Language-Team: Spanish (https://app.transifex.com/hisp-uio/teams/100509/es/)\n" @@ -411,6 +411,9 @@ msgstr "Mostrar interpretaciones y detalles" msgid "View" msgstr "Ver" +msgid "Reset sidebar width" +msgstr "" + msgid "Update" msgstr "Actualizar" diff --git a/i18n/es_419.po b/i18n/es_419.po index 5d2581074..e86af8bd6 100644 --- a/i18n/es_419.po +++ b/i18n/es_419.po @@ -6,7 +6,7 @@ msgid "" msgstr "" "Project-Id-Version: i18next-conv\n" -"POT-Creation-Date: 2024-02-13T14:56:50.029Z\n" +"POT-Creation-Date: 2024-06-04T11:01:31.012Z\n" "PO-Revision-Date: 2022-08-23 11:50+0000\n" "Last-Translator: Enzo Nicolas Rossi , 2024\n" "Language-Team: Spanish (Latin America) (https://app.transifex.com/hisp-uio/teams/100509/es_419/)\n" @@ -271,7 +271,7 @@ msgid "Program indicator" msgstr "" msgid "Category" -msgstr "" +msgstr "Categoría" msgid "Category option group set" msgstr "" @@ -387,6 +387,9 @@ msgstr "" msgid "View" msgstr "" +msgid "Reset sidebar width" +msgstr "" + msgid "Update" msgstr "Actualizar" @@ -464,7 +467,7 @@ msgid "Large" msgstr "" msgid "Small" -msgstr "" +msgstr "Pequeña" msgid "Hide empty rows" msgstr "" @@ -694,7 +697,7 @@ msgid "Last updated by" msgstr "" msgid "User organisation unit" -msgstr "" +msgstr "Unidad organizativa del usuario" msgid "User sub-units" msgstr "" diff --git a/i18n/fr.po b/i18n/fr.po index 5a55e145c..6ac17d17e 100644 --- a/i18n/fr.po +++ b/i18n/fr.po @@ -10,13 +10,14 @@ # Gabriela Rodriguez , 2024 # Viktor Varland , 2024 # Philip Larsen Donnelly, 2024 +# Elise Desailly, 2024 # msgid "" msgstr "" "Project-Id-Version: i18next-conv\n" -"POT-Creation-Date: 2024-02-13T14:56:50.029Z\n" +"POT-Creation-Date: 2024-06-04T11:01:31.012Z\n" "PO-Revision-Date: 2022-08-23 11:50+0000\n" -"Last-Translator: Philip Larsen Donnelly, 2024\n" +"Last-Translator: Elise Desailly, 2024\n" "Language-Team: French (https://app.transifex.com/hisp-uio/teams/100509/fr/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" @@ -208,7 +209,7 @@ msgid "Program stage: {{- stageName}}" msgstr "Étape du programme : {{- stageName}}" msgid "Program: {{- programName}}" -msgstr "" +msgstr "Programme : {{- programName}}" msgid "Showing all values for this dimension" msgstr "Affichage de toutes les valeurs pour cette dimension" @@ -258,7 +259,7 @@ msgid "See individual tracked entities from one or more Tracker programs." msgstr "" msgid "Global dimensions" -msgstr "" +msgstr "Dimensions globales" msgid "Program dimensions" msgstr "Dimensions du programme" @@ -270,10 +271,10 @@ msgid "Choose an input first" msgstr "" msgid "Program data dimensions" -msgstr "" +msgstr "Dimensions des données du programme" msgid "Search data dimensions" -msgstr "" +msgstr "Rechercher les dimensions des données" msgid "Type" msgstr "Type" @@ -325,7 +326,7 @@ msgid "All" msgstr "Tout" msgid "No stages found" -msgstr "" +msgstr "Aucune étape trouvée" msgid "Could not load types" msgstr "" @@ -345,7 +346,7 @@ msgid "{{- itemName}} dimensions" msgstr "" msgid "Filter by program usage" -msgstr "" +msgstr "Filtrer par utilisation du programme" msgid "Clear" msgstr "Effacer" @@ -391,10 +392,10 @@ msgstr "" " ou plusieurs tableaux de bord" msgid "Show layout" -msgstr "" +msgstr "Afficher la mise en page" msgid "Hide layout" -msgstr "" +msgstr "Masquer la mise en page" msgid "Show dimensions sidebar" msgstr "" @@ -411,6 +412,9 @@ msgstr "Afficher les interprétations et les détails" msgid "View" msgstr "Voir" +msgid "Reset sidebar width" +msgstr "" + msgid "Update" msgstr "Mettre à jour" @@ -442,10 +446,10 @@ msgid "" msgstr "" msgid "Sort by \"{{column}}\" and update" -msgstr "" +msgstr "Classer par \"1{{column}}\" et mettre à jour" msgid "No event" -msgstr "" +msgstr "Aucun événement" msgid "Rows per page" msgstr "Lignes par page" @@ -691,19 +695,25 @@ msgid "There's a problem with at least one selected indicator" msgstr "Il y a un problème avec au moins un indicateur sélectionné" msgid "Restricted access" -msgstr "" +msgstr "Accès restreint" msgid "" "You don’t have access to the data in this visualization. Contact a system " "administrator." msgstr "" +"Vous n'avez pas accès aux données de cette visualisation. Veuillez contacter" +" un administrateur système." msgid "You don’t have access to one or more of the chosen organisation units." msgstr "" +"Vous n'avez pas accès à une ou plusieurs des unités d'organisation " +"sélectionnées." msgid "" "You don’t have access to event analytics. Contact a system administrator." msgstr "" +"Vous n'avez pas accès aux analyses d'événements. Veuillez contacter un " +"administrateur système." msgid "Something went wrong" msgstr "Quelque chose a mal tourné" @@ -714,7 +724,7 @@ msgid "" msgstr "" msgid "There's a syntax problem with the analytics request." -msgstr "" +msgstr "Il y a un problème de syntaxe dans la demande d'analyse." msgid "Registration date" msgstr "Données d'enregistrement" diff --git a/i18n/nb.po b/i18n/nb.po index 702dabc40..670404618 100644 --- a/i18n/nb.po +++ b/i18n/nb.po @@ -3,13 +3,14 @@ # Caroline Hesthagen Holen , 2024 # Karoline Tufte Lien , 2024 # Martin , 2024 +# Jan Henrik Øverland, 2024 # msgid "" msgstr "" "Project-Id-Version: i18next-conv\n" -"POT-Creation-Date: 2024-02-13T14:56:50.029Z\n" +"POT-Creation-Date: 2024-06-04T11:01:31.012Z\n" "PO-Revision-Date: 2022-08-23 11:50+0000\n" -"Last-Translator: Martin , 2024\n" +"Last-Translator: Jan Henrik Øverland, 2024\n" "Language-Team: Norwegian Bokmål (https://app.transifex.com/hisp-uio/teams/100509/nb/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" @@ -65,7 +66,7 @@ msgid "Only available for repeatable stages" msgstr "Kun tilgjengelig for repeterbare faser" msgid "is one of preset options" -msgstr "er et av forvalgte alternativene" +msgstr "er et av forvalgte alternativer" msgid "Loading..." msgstr "Laster..." @@ -399,6 +400,9 @@ msgstr "Vis tolkninger og detaljer" msgid "View" msgstr "Vis" +msgid "Reset sidebar width" +msgstr "" + msgid "Update" msgstr "Oppdater" @@ -432,7 +436,7 @@ msgstr "" "skrevet." msgid "Sort by \"{{column}}\" and update" -msgstr "" +msgstr "Sortér på \"{{column}}\" og oppdater" msgid "No event" msgstr "Ingen hendelse" @@ -549,7 +553,7 @@ msgid "Show legend key" msgstr "Vis tegnforklaring" msgid "Skip rounding" -msgstr "Hopp over avrunding" +msgstr "Ingen avrunding" msgid "Add a title" msgstr "Legg til en tittel" @@ -646,8 +650,8 @@ msgid "" "The visualization you are trying to view could not be found, the ID could be" " incorrect or it could have been deleted." msgstr "" -"Visualiseringen du prøver å vise, ble ikke funnet, ID-en kan være feil, " -"eller den kan ha blitt slettet." +"Visualiseringen du prøver å vise ble ikke funnet. ID-en kan være feil eller " +"den kan ha blitt slettet." msgid "No tracked entity type selected" msgstr "Ingen sporet enhetstype er valgt" diff --git a/i18n/zh.po b/i18n/zh.po index 440630a9c..499f87cf9 100644 --- a/i18n/zh.po +++ b/i18n/zh.po @@ -8,7 +8,7 @@ msgid "" msgstr "" "Project-Id-Version: i18next-conv\n" -"POT-Creation-Date: 2024-02-13T14:56:50.029Z\n" +"POT-Creation-Date: 2024-06-04T11:01:31.012Z\n" "PO-Revision-Date: 2022-08-23 11:50+0000\n" "Last-Translator: easylin , 2024\n" "Language-Team: Chinese (https://app.transifex.com/hisp-uio/teams/100509/zh/)\n" @@ -382,6 +382,9 @@ msgstr "显示注释和详情" msgid "View" msgstr "查看" +msgid "Reset sidebar width" +msgstr "重置侧边栏宽度" + msgid "Update" msgstr "更新" From 8b9aeaff579e8e5d9eb6badcd6c7691c75007255 Mon Sep 17 00:00:00 2001 From: "@dhis2-bot" Date: Sun, 11 Aug 2024 02:06:49 +0000 Subject: [PATCH 35/62] chore(release): cut 101.1.3 [skip release] ## [101.1.3](https://github.com/dhis2/line-listing-app/compare/v101.1.2...v101.1.3) (2024-08-11) ### Bug Fixes * **translations:** sync translations from transifex (master) ([f0449b7](https://github.com/dhis2/line-listing-app/commit/f0449b7d9f0ce2899d38dc26e792457164f3dff0)) --- CHANGELOG.md | 7 +++++++ package.json | 2 +- 2 files changed, 8 insertions(+), 1 deletion(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 80b37d2eb..17c21e66e 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,3 +1,10 @@ +## [101.1.3](https://github.com/dhis2/line-listing-app/compare/v101.1.2...v101.1.3) (2024-08-11) + + +### Bug Fixes + +* **translations:** sync translations from transifex (master) ([f0449b7](https://github.com/dhis2/line-listing-app/commit/f0449b7d9f0ce2899d38dc26e792457164f3dff0)) + ## [101.1.2](https://github.com/dhis2/line-listing-app/compare/v101.1.1...v101.1.2) (2024-08-09) diff --git a/package.json b/package.json index 772d0bb72..b1364cae4 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "line-listing-app", - "version": "101.1.2", + "version": "101.1.3", "description": "DHIS2 Line Listing", "license": "BSD-3-Clause", "private": true, From 0abe62953ae3ade0159eff92e577ae382933bd0d Mon Sep 17 00:00:00 2001 From: Edoardo Sabadelli Date: Tue, 13 Aug 2024 15:45:50 +0200 Subject: [PATCH 36/62] fix: fix error when clearing year in fixed period selector (DHIS2-17707) (#575) --- package.json | 2 +- yarn.lock | 8 ++++---- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/package.json b/package.json index b1364cae4..15971da43 100644 --- a/package.json +++ b/package.json @@ -38,7 +38,7 @@ "typescript": "^4.8.4" }, "dependencies": { - "@dhis2/analytics": "^26.7.5", + "@dhis2/analytics": "^26.8.1", "@dhis2/app-runtime": "^3.4.4", "@dhis2/ui": "^9.4.2", "@dnd-kit/core": "^5.0.3", diff --git a/yarn.lock b/yarn.lock index 4c332038f..884de4cd7 100644 --- a/yarn.lock +++ b/yarn.lock @@ -2038,10 +2038,10 @@ classnames "^2.3.1" prop-types "^15.7.2" -"@dhis2/analytics@^26.7.5": - version "26.7.5" - resolved "https://registry.yarnpkg.com/@dhis2/analytics/-/analytics-26.7.5.tgz#b85a35ba0adb971b237c814d1d384e10e3ec5ca1" - integrity sha512-YLkCOXWGm8JFlpq0AZhWsMxA6lJeRTixHDeMqdyZQeYPYCvZJiUAp0TtC+uSRK1uV1yIHRj4OjQytMWTsvUUnQ== +"@dhis2/analytics@^26.8.1": + version "26.8.1" + resolved "https://registry.yarnpkg.com/@dhis2/analytics/-/analytics-26.8.1.tgz#ad72b326e92f0440a0280fc223ff0b85483eac5f" + integrity sha512-0y2RMlP1VucSaKCSGIsY4EwYmg6dg3ig765j7StOhbgT6wbRnE32VrQibG/sElGN3jwGf58frIGntEXdqGbjuw== dependencies: "@dhis2/multi-calendar-dates" "^1.2.2" "@dnd-kit/core" "^6.0.7" From 37446840882e077135fbe5eb580e7c82a9f1075f Mon Sep 17 00:00:00 2001 From: Hendrik de Graaf Date: Wed, 14 Aug 2024 13:18:00 +0200 Subject: [PATCH 37/62] fix: update options test after DHIS2 Core v39.6 release (#577) * fix: update options test because DHIS2 Core v39.6 has been released * chore: remove version dependent e2e test logic for enrollment too * chore: disable reporter in cypress config * chore: round to single decimal * chore: surround assertions with it blocks * chore: only test enrolment skip rounding on v41 and above * chore: restore cypress config * chore: add comment with JIRA issue link --- cypress/integration/options.cy.js | 16 ++++++---------- 1 file changed, 6 insertions(+), 10 deletions(-) diff --git a/cypress/integration/options.cy.js b/cypress/integration/options.cy.js index 1a2f92f4a..53db31492 100644 --- a/cypress/integration/options.cy.js +++ b/cypress/integration/options.cy.js @@ -306,18 +306,14 @@ const testSkipRoundingForEnrollment = (roundedValue) => { } describe('skip rounding', () => { - // change when 39.6 is released (https://dhis2.atlassian.net/browse/DHIS2-17027) - it(['<40'], 'sets skip rounding for event (below 40)', () => { - testSkipRoundingForEvent('3.1') - }) - it(['>=40'], 'sets skip rounding for event (40 and above)', () => { + it('sets skip rounding for event', () => { testSkipRoundingForEvent('3.12') }) - // FIXME: Blocked by backend issue https://dhis2.atlassian.net/browse/DHIS2-17027 (currently unsure if this will be backported though) - // backported but there is no data for this on 40 - it.skip(['<41'], 'sets skip rounding for enrollment (below 41)', () => { - testSkipRoundingForEnrollment('3.1') - }) + /* Skip rounding for enrollment is implemented in v39 and v40. + * However, in our v39/40 test instances the data we use for this + * test is missing, which makes this test fail. + * Until https://dhis2.atlassian.net/browse/DHIS2-17884 is resolved, + * we will have to disable tests for these versions. */ it(['>=41'], 'sets skip rounding for enrollment (41 and above)', () => { testSkipRoundingForEnrollment('3.12') }) From e251475a7da527ee11cc28f27984f971a672d1ff Mon Sep 17 00:00:00 2001 From: "@dhis2-bot" Date: Wed, 14 Aug 2024 11:35:39 +0000 Subject: [PATCH 38/62] chore(release): cut 101.1.4 [skip release] ## [101.1.4](https://github.com/dhis2/line-listing-app/compare/v101.1.3...v101.1.4) (2024-08-14) ### Bug Fixes * fix error when clearing year in fixed period selector (DHIS2-17707) ([#575](https://github.com/dhis2/line-listing-app/issues/575)) ([0abe629](https://github.com/dhis2/line-listing-app/commit/0abe62953ae3ade0159eff92e577ae382933bd0d)) * update options test after DHIS2 Core v39.6 release ([#577](https://github.com/dhis2/line-listing-app/issues/577)) ([3744684](https://github.com/dhis2/line-listing-app/commit/37446840882e077135fbe5eb580e7c82a9f1075f)) --- CHANGELOG.md | 8 ++++++++ package.json | 2 +- 2 files changed, 9 insertions(+), 1 deletion(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 17c21e66e..39cd79f56 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,3 +1,11 @@ +## [101.1.4](https://github.com/dhis2/line-listing-app/compare/v101.1.3...v101.1.4) (2024-08-14) + + +### Bug Fixes + +* fix error when clearing year in fixed period selector (DHIS2-17707) ([#575](https://github.com/dhis2/line-listing-app/issues/575)) ([0abe629](https://github.com/dhis2/line-listing-app/commit/0abe62953ae3ade0159eff92e577ae382933bd0d)) +* update options test after DHIS2 Core v39.6 release ([#577](https://github.com/dhis2/line-listing-app/issues/577)) ([3744684](https://github.com/dhis2/line-listing-app/commit/37446840882e077135fbe5eb580e7c82a9f1075f)) + ## [101.1.3](https://github.com/dhis2/line-listing-app/compare/v101.1.2...v101.1.3) (2024-08-11) diff --git a/package.json b/package.json index 15971da43..7fb2d5443 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "line-listing-app", - "version": "101.1.3", + "version": "101.1.4", "description": "DHIS2 Line Listing", "license": "BSD-3-Clause", "private": true, From 6589245384677dd276710b7ab7a32499b6ebc32c Mon Sep 17 00:00:00 2001 From: Hendrik de Graaf Date: Wed, 14 Aug 2024 14:24:35 +0200 Subject: [PATCH 39/62] fix: sanitize sidebar width before reading and writing to local storage (#576) * fix: sanitize width before reading and writing to local storage * fix: ensure width is within lower and upper bound in a centralized place * test: verify min width is respected on window resize * chore: decrease delay for showing the blue line on hover * chore: adjust comment to code change * chore: disable report-portal so we can see test failures * chore: restore cypress reportportal config --- cypress/integration/mainSidebar.cy.js | 10 ++++- .../MainSidebar/MainSidebar.module.css | 4 +- src/modules/localStorage.js | 37 ++++++++++++++++--- src/modules/ui.js | 11 +----- 4 files changed, 43 insertions(+), 19 deletions(-) diff --git a/cypress/integration/mainSidebar.cy.js b/cypress/integration/mainSidebar.cy.js index e4010310b..ca9fd06a9 100644 --- a/cypress/integration/mainSidebar.cy.js +++ b/cypress/integration/mainSidebar.cy.js @@ -220,7 +220,7 @@ describe('accessory sidebar panel', () => { cy.getBySel('accessory-panel-resize-handle').trigger('mouseup') }) - it.only('ignores out-of-bounds mouse movements past the max-width edge', () => { + it('ignores out-of-bounds mouse movements past the max-width edge', () => { const movementX = DRAGHANDLE_PAGE_X_MAX - DRAGHANDLE_PAGE_X_INITIAL const pageXAtMaxWidth = getMouseMoveOptions(movementX).pageX const expectedWidth = @@ -397,6 +397,14 @@ describe('accessory sidebar panel', () => { .invoke('outerWidth') .should('eq', increasedWidth - viewportDecrease) }) + it('does not decrease the panel width past its min-width on window resize', () => { + goToStartPage() + cy.viewport(300, Cypress.config().viewportHeight) + + cy.getBySel('accessory-sidebar') + .invoke('outerWidth') + .should('eq', ACCESSORY_PANEL_MIN_WIDTH) + }) it('mouse resizing works after keyboard resize without blurring the resize handle', () => { const keyboardMovementX = 100 const mouseMovementX = 100 diff --git a/src/components/MainSidebar/MainSidebar.module.css b/src/components/MainSidebar/MainSidebar.module.css index 07fd166cc..52197fe95 100644 --- a/src/components/MainSidebar/MainSidebar.module.css +++ b/src/components/MainSidebar/MainSidebar.module.css @@ -65,8 +65,8 @@ } .resizeHandle:hover::before { opacity: 1; - /* Show with a 500ms delay */ - transition: opacity 150ms 500ms; + /* Show with a 200ms delay */ + transition: opacity 150ms 200ms; } .container.resizing .accessory, .container.resizing .accessoryInner { diff --git a/src/modules/localStorage.js b/src/modules/localStorage.js index 51578a716..caf8d0c22 100644 --- a/src/modules/localStorage.js +++ b/src/modules/localStorage.js @@ -1,13 +1,38 @@ -import { ACCESSORY_PANEL_DEFAULT_WIDTH } from './accessoryPanelConstants.js' +import { + ACCESSORY_PANEL_DEFAULT_WIDTH, + ACCESSORY_PANEL_MIN_PX_AT_END, + ACCESSORY_PANEL_MIN_WIDTH, + PRIMARY_PANEL_WIDTH, +} from './accessoryPanelConstants.js' export const STORAGE_KEY = 'dhis2.line-listing.accessoryPanelWidth' +const sanitizeWidth = (width) => { + const maxAvailableWidth = + window.innerWidth - + (PRIMARY_PANEL_WIDTH + ACCESSORY_PANEL_MIN_PX_AT_END) + let sanitizedWidth = parseInt(width) + + if (!Number.isInteger(sanitizedWidth)) { + sanitizedWidth = ACCESSORY_PANEL_DEFAULT_WIDTH + } + + // First enforce upper bound + if (sanitizedWidth > maxAvailableWidth) { + sanitizedWidth = maxAvailableWidth + } + + // Then enforce lower bound, so lower bound takes precedence + if (sanitizedWidth < ACCESSORY_PANEL_MIN_WIDTH) { + sanitizedWidth = ACCESSORY_PANEL_MIN_WIDTH + } + + return sanitizedWidth +} + export const getUserSidebarWidthFromLocalStorage = () => - parseInt( - window.localStorage.getItem(STORAGE_KEY) ?? - ACCESSORY_PANEL_DEFAULT_WIDTH - ) + sanitizeWidth(window.localStorage.getItem(STORAGE_KEY)) export const setUserSidebarWidthToLocalStorage = (width) => { - window.localStorage.setItem(STORAGE_KEY, width) + window.localStorage.setItem(STORAGE_KEY, sanitizeWidth(width)) } diff --git a/src/modules/ui.js b/src/modules/ui.js index 5827675e3..3f2bc5a28 100644 --- a/src/modules/ui.js +++ b/src/modules/ui.js @@ -4,10 +4,6 @@ import { VIS_TYPE_LINE_LIST, VIS_TYPE_PIVOT_TABLE, } from '@dhis2/analytics' -import { - PRIMARY_PANEL_WIDTH, - ACCESSORY_PANEL_MIN_PX_AT_END, -} from './accessoryPanelConstants.js' import { getConditionsFromVisualization } from './conditions.js' import { getRequestOptions } from './getRequestOptions.js' import { getAdaptedUiLayoutByType } from './layout.js' @@ -74,9 +70,4 @@ export const getDefaultSorting = () => ({ direction: 'default', }) -export const getUserSidebarWidth = () => - Math.min( - getUserSidebarWidthFromLocalStorage(), - window.innerWidth - - (PRIMARY_PANEL_WIDTH + ACCESSORY_PANEL_MIN_PX_AT_END) - ) +export const getUserSidebarWidth = getUserSidebarWidthFromLocalStorage From e479574862977b55751f76d9d6ca69bacee2ee26 Mon Sep 17 00:00:00 2001 From: "@dhis2-bot" Date: Wed, 14 Aug 2024 12:43:21 +0000 Subject: [PATCH 40/62] chore(release): cut 101.1.5 [skip release] ## [101.1.5](https://github.com/dhis2/line-listing-app/compare/v101.1.4...v101.1.5) (2024-08-14) ### Bug Fixes * sanitize sidebar width before reading and writing to local storage ([#576](https://github.com/dhis2/line-listing-app/issues/576)) ([6589245](https://github.com/dhis2/line-listing-app/commit/6589245384677dd276710b7ab7a32499b6ebc32c)) --- CHANGELOG.md | 7 +++++++ package.json | 2 +- 2 files changed, 8 insertions(+), 1 deletion(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 39cd79f56..51172310d 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,3 +1,10 @@ +## [101.1.5](https://github.com/dhis2/line-listing-app/compare/v101.1.4...v101.1.5) (2024-08-14) + + +### Bug Fixes + +* sanitize sidebar width before reading and writing to local storage ([#576](https://github.com/dhis2/line-listing-app/issues/576)) ([6589245](https://github.com/dhis2/line-listing-app/commit/6589245384677dd276710b7ab7a32499b6ebc32c)) + ## [101.1.4](https://github.com/dhis2/line-listing-app/compare/v101.1.3...v101.1.4) (2024-08-14) diff --git a/package.json b/package.json index 7fb2d5443..0964b65fe 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "line-listing-app", - "version": "101.1.4", + "version": "101.1.5", "description": "DHIS2 Line Listing", "license": "BSD-3-Clause", "private": true, From 2ccbb155fb80982a51261d6f57d02c002a261076 Mon Sep 17 00:00:00 2001 From: Hendrik de Graaf Date: Wed, 21 Aug 2024 11:47:58 +0200 Subject: [PATCH 41/62] fix: reduce resizehandle interaction area on left side [DHIS2-17923] (#579) * fix: reduce resizehandle interaction area on left side * fix: adjust starting point X to new styles --- src/components/MainSidebar/MainSidebar.module.css | 10 ++++------ .../MainSidebar/useResizableAccessorySidebar.js | 5 +++-- 2 files changed, 7 insertions(+), 8 deletions(-) diff --git a/src/components/MainSidebar/MainSidebar.module.css b/src/components/MainSidebar/MainSidebar.module.css index 52197fe95..cd81341ef 100644 --- a/src/components/MainSidebar/MainSidebar.module.css +++ b/src/components/MainSidebar/MainSidebar.module.css @@ -42,9 +42,9 @@ .resizeHandle { position: absolute; height: 100%; - /* Interaction area extends 8px left and - * right of the sidebar border */ - width: 17px; + /* Interaction area extends 1px left and + * 8px right of the sidebar border */ + width: 10px; right: -8px; cursor: col-resize; } @@ -54,9 +54,7 @@ position: absolute; top: 0; bottom: 0; - /* Blue line extends 1px left and right - * from sidebar border */ - left: 7px; + left: 0; width: 3px; pointer-events: none; opacity: 0; diff --git a/src/components/MainSidebar/useResizableAccessorySidebar.js b/src/components/MainSidebar/useResizableAccessorySidebar.js index d9a309114..64dfeae58 100644 --- a/src/components/MainSidebar/useResizableAccessorySidebar.js +++ b/src/components/MainSidebar/useResizableAccessorySidebar.js @@ -18,8 +18,9 @@ const createWidthWithinBoundsCalculator = (event, startWidth) => { const isKeyboardMode = event.type === 'focus' const rect = element.getBoundingClientRect() const minWidth = ACCESSORY_PANEL_MIN_WIDTH - // Take center of draghandle on X-axis as starting point - const startPageX = Math.ceil(rect.left + rect.width / 2) + /* This needs to correspond with right edge of the accessory sidebar + * which is 2px right of the left edge of the resize handle */ + const startPageX = Math.ceil(rect.left + 2) const maxPageX = window.innerWidth - ACCESSORY_PANEL_MIN_PX_AT_END const maxDeltaX = maxPageX - startPageX const maxWidth = startWidth + maxDeltaX From 14665c2b129c694345fe173fdabe9e13141285ed Mon Sep 17 00:00:00 2001 From: "@dhis2-bot" Date: Wed, 21 Aug 2024 10:04:40 +0000 Subject: [PATCH 42/62] chore(release): cut 101.1.6 [skip release] ## [101.1.6](https://github.com/dhis2/line-listing-app/compare/v101.1.5...v101.1.6) (2024-08-21) ### Bug Fixes * reduce resizehandle interaction area on left side [DHIS2-17923] ([#579](https://github.com/dhis2/line-listing-app/issues/579)) ([2ccbb15](https://github.com/dhis2/line-listing-app/commit/2ccbb155fb80982a51261d6f57d02c002a261076)) --- CHANGELOG.md | 7 +++++++ package.json | 2 +- 2 files changed, 8 insertions(+), 1 deletion(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 51172310d..0aefb7123 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,3 +1,10 @@ +## [101.1.6](https://github.com/dhis2/line-listing-app/compare/v101.1.5...v101.1.6) (2024-08-21) + + +### Bug Fixes + +* reduce resizehandle interaction area on left side [DHIS2-17923] ([#579](https://github.com/dhis2/line-listing-app/issues/579)) ([2ccbb15](https://github.com/dhis2/line-listing-app/commit/2ccbb155fb80982a51261d6f57d02c002a261076)) + ## [101.1.5](https://github.com/dhis2/line-listing-app/compare/v101.1.4...v101.1.5) (2024-08-14) diff --git a/package.json b/package.json index 0964b65fe..f7cd5e854 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "line-listing-app", - "version": "101.1.5", + "version": "101.1.6", "description": "DHIS2 Line Listing", "license": "BSD-3-Clause", "private": true, From ee92d90588cde799a4bf9350642dfbd2cf4b23d4 Mon Sep 17 00:00:00 2001 From: "@dhis2-bot" Date: Sun, 25 Aug 2024 03:46:28 +0200 Subject: [PATCH 43/62] fix(translations): sync translations from transifex (master) Automatically merged. --- i18n/lo.po | 313 +++++++++++++++++++++++++++++------------------------ 1 file changed, 170 insertions(+), 143 deletions(-) diff --git a/i18n/lo.po b/i18n/lo.po index ea973d669..9f50128a2 100644 --- a/i18n/lo.po +++ b/i18n/lo.po @@ -10,7 +10,7 @@ msgid "" msgstr "" "Project-Id-Version: i18next-conv\n" -"POT-Creation-Date: 2024-02-13T14:56:50.029Z\n" +"POT-Creation-Date: 2024-06-04T11:01:31.012Z\n" "PO-Revision-Date: 2022-08-23 11:50+0000\n" "Last-Translator: Namwan Chanthavisouk, 2024\n" "Language-Team: Lao (https://app.transifex.com/hisp-uio/teams/100509/lo/)\n" @@ -24,85 +24,88 @@ msgid "Add to {{axisName}}" msgstr "ເພີ່ມໃສ່ {{axisName}}" msgid "Choose a condition type" -msgstr "" +msgstr "ເລືອກປະເພດອາການ" msgid "Case sensitive" -msgstr "" +msgstr "ກໍລະນີທີ່ລະອຽດອ່ອນ" msgid "Remove" msgstr "ລົບອອກ" msgid "and" -msgstr "" +msgstr "ແລະ" msgid "Show items that meet the following conditions for this data item:" -msgstr "" +msgstr "ສະແດງຂໍ້ມູນລາຍການທີ່ກົງກັບອາການຕໍ່ໄປນີ້:" msgid "This dimension can't be filtered. All values will be shown." -msgstr "" +msgstr "ຂອບເຂດນີ້ບໍ່ສາມາດຖືກກັ່ນຕອງໄດ້. ຄ່າທັງໝົດຈະຖືກສະແດງ." msgid "" "No conditions yet, so all values will be included. Add a condition to filter" " results." msgstr "" +"ຍັງບໍ່ມີອາການທື່ອ, ດັ່ງນັ້ນຄ່າທັງຫມົດຈະຖືກລວມເຂົ້າກັນ. " +"ເພີ່ມອາການເພື່ອກັ່ນຕອງຜົນໄດ້ຮັບ." msgid "Preset options can't be combined with other conditions" -msgstr "" +msgstr "ຕົວເລືອກທີ່ຕັ້ງໄວ້ລ່ວງໜ້າບໍ່ສາມາດລວມເຂົ້າກັບອາການອື່ນໆໄດ້" msgid "Add another condition" -msgstr "" +msgstr "ເພີ່ມອາການອື່ນ" msgid "Add a condition" -msgstr "" +msgstr "ເພີ່ມອາການ" msgid "Repeated events" -msgstr "" +msgstr "ເຫດການຊ້ຳໆ" msgid "Conditions" -msgstr "" +msgstr "ອາການ" msgid "Only available for repeatable stages" -msgstr "" +msgstr "ໃຊ້ໄດ້ກັບຂັ້ນທີ່ສາມາດເຮັດຊ້ຳໄດ້ເທົ່ານັ້ນ" msgid "is one of preset options" -msgstr "" +msgstr "ເປັນ​ຫນຶ່ງ​ໃນ​ຕົວເລືອກ​ທີ່​ຕັ້ງ​ໄວ້​ກ່ອນ​" msgid "Loading..." msgstr "ກຳລັງໂຫລດ.." msgid "Choose a set of options" -msgstr "" +msgstr "ເລືອກເຊັດຂອງຕົວເລືອກ" msgid "No preset option sets for this data item" -msgstr "" +msgstr "ບໍ່ມີຕົວເລືອກທີ່ຕັ້ງໄວ້ລ່ວງໜ້າສຳລັບລາຍການຂໍ້ມູນນີ້" msgid "Choose options" -msgstr "" +msgstr "ເລືອກຕົວເລືອກ" msgid "" "From stages with repeatable events, show values for this data element from:" -msgstr "" +msgstr "ຈາກຂັ້ນຕອນທີ່ມີເຫດການຊ້ຳໆ, ກະລຸນາສະແດງຄ່າຂອງອົງປະກອບຂໍ້ມູນນີ້ຈາກ:" msgid "Most recent events:" -msgstr "" +msgstr "ເຫດການຫຼ້າສຸດ:" msgid "Oldest events:" -msgstr "" +msgstr "ເຫດການເກົ່າສຸດ:" msgid "Hide" msgstr "ເຊື່ອງ" msgid "Show items where the status is:" -msgstr "" +msgstr "ສະແດງລາຍການທີ່ສະຖານະຢູ່:" msgid "Choose from presets" -msgstr "" +msgstr "ເລືອກຈາກການຕັ້ງຄ່າກ່ອນໜ້າ" msgid "Define start - end dates" -msgstr "" +msgstr "ກໍານົດວັນທີເລີ່ມຕົ້ນ - ສິ້ນສຸດ" msgid "Start and end dates are inclusive and will be included in the outputs." msgstr "" +"ວັນທີເລີ່ມຕົ້ນແລະສິ້ນສຸດແມ່ນໄດ້ລວມເຂົ້າກັນ ແລະ ຈະຖືກລວມເຂົ້າໃນຜົນໄດ້ຮັບ." msgid "Start date" msgstr "ວັນທີເລີ່ມຕົ້ນ" @@ -114,28 +117,28 @@ msgid "No items selected" msgstr "ບໍ່ມີລາຍການທີ່ຖືກເລືອກ" msgid "Available options" -msgstr "" +msgstr "ຕົວເລືອກທີ່ມີຢູ່" msgid "Filter options" msgstr "ຄັດກອງເອົາຕົວເລືອກ" msgid "Selected options" -msgstr "" +msgstr "ຕົວເລືອກທີ່ຖືກເລືອກ" msgid "Nothing found for \"{{- searchTerm}}\"" msgstr "ບໍ່ພົບຫຍັງສຳລັບ \"{{- searchTerm}}\"" msgid "No options" -msgstr "" +msgstr "ບໍ່ມີຕົວເລືອກ" msgid "Move to {{axisName}}" msgstr "ຍ້າຍໄປ {{axisName}}" msgid "HTML" -msgstr "" +msgstr "HTML" msgid "HTML+CSS (.html+css)" -msgstr "" +msgstr "HTML+CSS (.html+css)" msgid "Plain data source" msgstr "ສະເພາະຂໍ້ມູນພື້ນຖານ" @@ -147,16 +150,16 @@ msgid "XML" msgstr "XML" msgid "Microsoft Excel" -msgstr "" +msgstr "Microsoft Excel" msgid "CSV" msgstr "CSV" msgid "Download data from this date" -msgstr "" +msgstr "ດາວໂຫຼດຂໍ້ມູນຈາກວັນທີນີ້" msgid "Metadata ID scheme" -msgstr "" +msgstr "ແຜນຂໍ້ມູນ ID ເມຕາ" msgid "ID" msgstr "ລະຫັດ" @@ -171,49 +174,50 @@ msgid "Download" msgstr "ດາວໂຫຼດ" msgid "all" -msgstr "" +msgstr "ທັງໝົດ" msgid "Levels" -msgstr "" +msgstr "ຂັ້ນ" msgid "Groups" msgstr "ກຸ່ມ" msgid "And {{count}} other..." msgid_plural "And {{count}} other..." -msgstr[0] "" +msgstr[0] "ແລະອີກ {{count}} ຄົນ..." msgid "None selected" -msgstr "" +msgstr "ຍັງບໍ່ໄດ້ເລືອກ" msgid "Program stage: {{- stageName}}" -msgstr "" +msgstr "ຂັ້ນຕອນໂປແກລມ: {{- stageName}}" msgid "Program: {{- programName}}" -msgstr "" +msgstr "ໂປຣແກລມ: {{- programName}}" msgid "Showing all values for this dimension" -msgstr "" +msgstr "ສະແດງຄ່າທັງໝົດໃນຂອບເຂດນີ" msgid "No dimensions found for '{{- searchTerm}}'" -msgstr "" +msgstr "ບໍ່ພົບຂອບເຂດຂອງ '{{- searchTerm}}'" msgid "No dimensions found in the {{- programName}} program" -msgstr "" +msgstr "ບໍ່ພົບຂອບເຂດໃນໂປຣແກລມ {{- programName}}" msgid " {{- trackedEntityType}} has no dimensions" -msgstr "" +msgstr "{{- trackedEntityType}} ບໍ່ມີຂອບເຂດ" msgid "No dimensions found" -msgstr "" +msgstr "ບໍ່ພົບຂອບເຂດ" msgid "Couldn't load dimensions" -msgstr "" +msgstr "ບໍ່ສາມາດໂຫຼດຂອບເຂດ" msgid "" "There was a problem loading the dimensions. Try again, or contact your " "system administrator." msgstr "" +"ພົບບັນຫາໃນການໂຫຼດຂອບເຂດ. ກະລຸນາລອງອີກຄັ້ງ ຫຼື ຕິດຕໍ່ຜູ້ດູແລລະບົບຂອງທ່ານ." msgid "Event" msgstr "ເຫດການ" @@ -226,31 +230,31 @@ msgstr "Tracked Entity" msgid "" "See individual event data from a Tracker program stage or event program." -msgstr "" +msgstr "ເບິ່ງຂໍ້ມູນເຫດການແຕ່ລະອັນຈາກຂັ້ນຕອນໂປແກລມຕິດຕາມ ຫຼື ໂປແກລມເຫດການ." msgid "See data from multiple program stages in a Tracker program." -msgstr "" +msgstr "ເບິ່ງຂໍ້ມູນຈາກຫຼາຍຂັ້ນຕອນຈາກໂປແກລມຕິດຕາມ." msgid "See individual tracked entities from one or more Tracker programs." -msgstr "" +msgstr "ເບິ່ງແຕ່ລະຫນ່ວຍງານທີ່ຕິດຕາມຈາກຫນຶ່ງ ຫຼື ຫຼາຍໂປແກລມຕິດຕາມ." msgid "Global dimensions" -msgstr "" +msgstr "ຂອບເຂດທົ່ວໂລກ" msgid "Program dimensions" -msgstr "" +msgstr "ຂອບເຂດໂປແກລມ" msgid "Input: {{type}}" -msgstr "" +msgstr "ການປ້ອນຂໍ້ມູນ: {{type}}" msgid "Choose an input first" -msgstr "" +msgstr "ເລືອກການປ້ອນຂໍ້ມູນກ່ອນ" msgid "Program data dimensions" -msgstr "" +msgstr "ຂອບເຂດຂໍ້ມູນຂອງໂປຣແກຣມ" msgid "Search data dimensions" -msgstr "" +msgstr "ຄົ້ນຫາຂອບເຂດຂໍ້ມູນ" msgid "Type" msgstr "Type" @@ -274,18 +278,20 @@ msgid "Category option group set" msgstr "Category Option Group Set" msgid "Choose an input to get started adding program dimensions." -msgstr "" +msgstr "ເລືອກການປ້ອນຂໍ້ມູນເພື່ອເລີ່ມເພີ່ມຂອບເຂດຂອງໂປຣແກຣມ." msgid "Program" msgstr "Program" msgid "Could not load programs" -msgstr "" +msgstr "ບໍ່ສາມາດໂຫຼດໂປແກລມ" msgid "" "The programs couldn't be retrieved. Try again or contact your system " "administrator." msgstr "" +"ບໍ່ສາມາດດຶງຂໍ້ມູນຈາກໂປຣແກຣມໄດ້. ກະລຸນາລອງອີກຄັ້ງ ຫຼື " +"ຕິດຕໍ່ຜູ້ດູແລລະບົບຂອງທ່ານ." msgid "Choose a program" msgstr "ເລືອກໂປແກຼມ" @@ -300,27 +306,29 @@ msgid "All" msgstr "ທັງໝົດ" msgid "No stages found" -msgstr "" +msgstr "ບໍ່ພົບຂັ້ນຕອນ" msgid "Could not load types" -msgstr "" +msgstr "ບໍ່ສາມາດໂຫຼດປະເພດ" msgid "" "The types couldn't be retrieved. Try again or contact your system " "administrator." msgstr "" +"ບໍ່ສາມາດດຶງຂໍ້ມູນຈາກປະເພດໄດ້. ກະລຸນາລອງອີກຄັ້ງ ຫຼື " +"ຕິດຕໍ່ຜູ້ດູແລລະບົບຂອງທ່ານ." msgid "Choose a type" -msgstr "" +msgstr "ເລືອກປະເພດ" msgid "No types found" -msgstr "" +msgstr "ບໍ່ພົບປະເພດ" msgid "{{- itemName}} dimensions" -msgstr "" +msgstr "{{- itemName}} ຂອບເຂດ" msgid "Filter by program usage" -msgstr "" +msgstr "ກັ່ນ​ຕອງ​ໂດຍ​ການ​ນໍາ​ໃຊ້​ໂປແກຣມ" msgid "Clear" msgstr "ລຶບ" @@ -332,77 +340,83 @@ msgid "Your dimensions" msgstr "ຂະໜາດຂອງທ່ານ" msgid "Search your dimensions" -msgstr "" +msgstr "ຄົ້ນຫາຂອບເຂດຂອງທ່ານ" msgid "Show panels" -msgstr "" +msgstr "ສະແດງແຜງ" msgid "Expand visualization and hide panels" -msgstr "" +msgstr "ຂະຫຍາຍການສ້າງຮູບພາບດ້ວຍຂໍ້ມູນ ແລະ ເຊື່ອງແຜງ" msgid "Unsaved visualization" -msgstr "" +msgstr "ການສ້າງຮູບພາບດ້ວຍຂໍ້ມູນທີ່ຍັງບໍ່ບັນທຶກ" msgid "Edited" -msgstr "" +msgstr "ແກ້ໄຂ" msgid "Line list" msgstr "ລາຍການລາຍບຸກຄົນ" msgid "\"{{- deletedObject}}\" successfully deleted." -msgstr "" +msgstr "\"{{- deletedObject}}\" ລົບສຳເລັດ." msgid "Rename successful" -msgstr "" +msgstr "ປ່ຽນຊື່ສຳເລັດແລ້ວ" msgid "Untitled {{visualizationType}} visualization, {{date}}" -msgstr "" +msgstr "ການສ້າງຮູບພາບດ້ວຍຂໍ້ມູນທີ່ບໍ່ມີຊື່ {{visualizationType}}, {{date}}" msgid "" "This visualization can't be deleted because it is used on one or more " "dashboards" msgstr "" +"ບໍ່ສາມາດລົບການສ້າງຮູບພາບດ້ວຍຂໍ້ມູນໄດ້ເນື່ອງຈາກມັນໄດ້ຖືກໃຊ້ໃນໜຶ່ງ ຫຼື " +"ຫຼາຍກະດານຂ່າວ" msgid "Show layout" -msgstr "" +msgstr "ສະແດງໂຄງຮ່າງ" msgid "Hide layout" -msgstr "" +msgstr "ເຊື່ອງໂຄງຮ່າງ" msgid "Show dimensions sidebar" -msgstr "" +msgstr "ສະແດງແຖບດ້ານຂ້າງ" msgid "Hide dimensions sidebar" -msgstr "" +msgstr "ເຊື່ອງແຖບດ້ານຂ້າງ" msgid "Hide interpretations and details" -msgstr "" +msgstr "ເຊື່ອງການຊີ້ແຈງ ແລະ ລາຍລະອຽດ" msgid "Show interpretations and details" -msgstr "" +msgstr "ສະແດງການຊີ້ແຈງ ແລະ ລາຍລະອຽດ" msgid "View" msgstr "ເບິ່ງ" +msgid "Reset sidebar width" +msgstr "ແກ້ໄຂຄວາມກ້ວາງຂອງແຖບດ້ານຂ້າງ" + msgid "Update" msgstr "ປັບປຸງ" msgid "Getting started" -msgstr "" +msgstr "ເລີ່ມຕົ້ນ" msgid "" "All dimensions that you can use to build visualizations are shown in the " "sections in the left sidebar." msgstr "" +"ຂອບເຂດທັງໝົດທີ່ທ່ານໃຊ້ເພື່ອສ້າງຮູບພາບດ້ວຍຂໍ້ມູນແມ່ນໄດ້ສະແດງຢູ່ພາກສ່ວນຕ່າງໆໃນແຖບດ້ານຊ້າຍ." msgid "Add dimensions to the layout above." -msgstr "" +msgstr "ເພີມຂອບເຂດໃນໂຄ່ງຮ່າງຂ້າງເທິງ" msgid "Click a dimension to add or remove conditions." -msgstr "" +msgstr "ຄລິກຂອບເຂດເພື່ອເພີ່ມ ຫຼື ລົບເງື່ອນໄຂອອກ." msgid "Your most viewed line lists" -msgstr "" +msgstr "ບັນຊີລາຍຊື່ທີ່ຖືກເບິ່ງຫຼາຍສຸດ" msgid "Not available offline" msgstr "ບໍ່ສາມາດໃຊ້ໄດ້ອອບລາຍ" @@ -410,25 +424,25 @@ msgstr "ບໍ່ສາມາດໃຊ້ໄດ້ອອບລາຍ" msgid "" "This line list may show data that was not available when the interpretation " "was written." -msgstr "" +msgstr "ບັນຊີລາຍຊື່ນີ້ອາດຈະສະແດງຂໍ້ມູນທີ່ບໍ່ສາມາດໃຊ້ໄດ້ເມື່ອການຊີ້ແຈງ." msgid "Sort by \"{{column}}\" and update" -msgstr "" +msgstr "ຈັດຮຽງຕາມ \"{{column}}\" ແລະ ອັບເດດ" msgid "No event" -msgstr "" +msgstr "ບໍ່ມີເຫດການ" msgid "Rows per page" msgstr "ແຖວຕໍ່ຫນ້າເຈ້ຍ" msgid "Page {{page}}, row {{firstItem}}-{{lastItem}}" -msgstr "" +msgstr "ໜ້າ {{page}}, ແຖວ {{firstItem}}-{{lastItem}}" msgid "Column sub-totals" -msgstr "" +msgstr "ຖັນຍ່ອຍທັງໝົດ" msgid "Columns totals" -msgstr "" +msgstr "ຖັນທັງໝົດ" msgid "Digit group separator" msgstr "ແຍກຕົວເລກເປັນກຸ່ມ" @@ -467,70 +481,73 @@ msgid "Hide empty rows" msgstr "ເຊື່ອງແຖວທີ່ເປົ່າຫວ່າງ" msgid "Use a legend for table cell colors" -msgstr "" +msgstr "ໃຊ້ຄຳອະທິບາຍສຳລັບສີຂອງຕາຕະລາງ" msgid "Legend style" msgstr "ຫວ່າງຂໍ້ມູນ" msgid "Legend type" -msgstr "" +msgstr "ປະເພດຄຳອະທິບາຍ" msgid "Use pre-defined legend per data item" -msgstr "" +msgstr "ໃຊ້ຄຳອະທິບາຍທີ່ໄດ້ກຳນົດລ່ວງໜ້າຕໍ່ລາຍການຂໍ້ມູນ" msgid "Choose a single legend for the entire visualization" -msgstr "" +msgstr "ເລືອກຄຳອະທິບາຍດຽວສຳລັບການສ້າງພາບດ້ວຍຂໍ້ມູນທັງໝົດ" msgid "Legend changes background color" -msgstr "" +msgstr "ຄຳອະທິບາຍປ່ຽນສີພື້ນຫຼັງ" msgid "Legend changes text color" -msgstr "" +msgstr "ຄຳອະທິບາຍປ່ຽນສີຕົວໜັງສື" msgid "Legend" msgstr "ຫວ່າງຂໍ້ມູນ" msgid "Select from legends" -msgstr "" +msgstr "ເລືອກຈາກຄຳອະທິບາຍ" msgid "Loading legends" -msgstr "" +msgstr "ກຳລັງໂຫຼດຄຳອະທິບາຍ" msgid "" "You can set a minimum or maximum value. This will apply to the entire " "visualization, all values outside of the minimum/maximum range will not be " "displayed" msgstr "" +"ທ່ານສາມາດກໍານົດຄ່າຕ່ໍາສຸດ ຫຼື ສູງສຸດ. " +"ເຊິ່ງນີ້​ຈະ​ໄດ້ນໍາ​ໃຊ້​ກັບ​ການ​ສ້າງພາບດ້ວຍຂໍ້ມູນທັງ​ຫມົດ​, ແລະ " +"ຄ່າ​ທັງ​ຫມົດ​ທີ່​ຢູ່​ນອກ​ຄ່າຕ່ຳສຸດ / ສູງສຸດຈະ​ບໍ່​ໄດ້​ຖືກ​ສະ​ແດງ​" msgid "Minimum data value" -msgstr "" +msgstr "ຄ່າຂໍ້ມູນຕ່ຳສຸດ" msgid "Maximum data value" -msgstr "" +msgstr "ຄ່າຂໍ້ມູນສູງສຸດ" msgid "Clear min/max limits" -msgstr "" +msgstr "ລົບຂີດຈຳກັດຂັ້ນຕ່ຳ/ສູງສຸດ" msgid "Row sub-totals" -msgstr "" +msgstr "ແຖວຍ່ອຍທັງໝົດ" msgid "Row totals" -msgstr "" +msgstr "ແຖວທັງໝົດ" msgid "Dimension labels" -msgstr "" +msgstr "ແຜງຂອບເຂດ" msgid "Display organisation unit hierarchy" -msgstr "" +msgstr "ສະແດງຫົວໜ່ວຍການຈັດຕັ້ງຕາມລຳດັບ" msgid "Show legend key" -msgstr "" +msgstr "ສະແດງຄຳອະທິບາຍຫຼັກ" msgid "Skip rounding" msgstr "ບໍ່ປັດຕົວເລກ" msgid "Add a title" -msgstr "" +msgstr "ເພີ່ມຫົວຂໍ໊" msgid "Options" msgstr "ຈັດການ" @@ -545,52 +562,52 @@ msgid "Filter" msgstr "Filter" msgid "equal to (=)" -msgstr "" +msgstr "ເທົ່າກັບ (=)" msgid "greater than (>)" -msgstr "" +msgstr "ໃຫຍ່ກວ່າ (>)" msgid "greater than or equal to (≥)" -msgstr "" +msgstr "ໃຫຍ່ກວ່າ ຫຼື ເທົ່າກັບ (≥)" msgid "less than (<)" -msgstr "" +msgstr "ນ້ອຍກ່ວາ (<)" msgid "less than or equal to (≤)" -msgstr "" +msgstr "ນ້ອຍກວ່າ ຫຼື ເທົ່າກັບ (≤)" msgid "not equal to (≠)" -msgstr "" +msgstr "ບໍ່ເທົ່າກັບ (≠)" msgid "is empty / null" -msgstr "" +msgstr "ຫວ່າງເປົ່າ" msgid "is not empty / not null" -msgstr "" +msgstr "ບໍ່ຫວ່າງເປົ່າ" msgid "exactly" -msgstr "" +msgstr "ຢ່າງແນ່ນອນ" msgid "is not" -msgstr "" +msgstr "ບໍ່ແມ່ນ" msgid "contains" -msgstr "" +msgstr "ລະບຸດ້ວຍ" msgid "does not contain" -msgstr "" +msgstr "ບໍ່ໄດ້ລະບຸດ້ວຍ" msgid "after" msgstr "ກ່ອນ" msgid "after or including" -msgstr "" +msgstr "ຫຼັງຈາກ ຫຼື ລວມ" msgid "before" msgstr "ຫຼັງ" msgid "before or including" -msgstr "" +msgstr "ກ່ອນ ຫຼື ລວມ" msgid "Yes" msgstr "ແມ່ນ" @@ -599,73 +616,83 @@ msgid "No" msgstr "ບໍ່ແມນ" msgid "Not answered" -msgstr "" +msgstr "ບໍ່ມີຄຳຕອບ" msgid "There is a problem with this visualization." -msgstr "" +msgstr "ພົບບັນຫາໃນການສ້າງຮູບພາບດ້ວຍຂໍ້ມູນ" msgid "There was a problem getting the data from the server." -msgstr "" +msgstr "ພົບບັນຫາໃນການເອົາຂໍ້ມູນຈາກເຊີບເວີ." msgid "No data available" -msgstr "" +msgstr "ບໍ່ພົບຂໍ້ມູນ" msgid "" "The selected dimensions didn’t return any data. There may be no data, or you" " may not have access to it." msgstr "" +"ຂອບເຂດທີ່ເລືອກບໍ່ໄດ້ມີການສົ່ງຄືນຂໍ້ມູນໃດໆ. ມັນອາດຈະບໍ່ມີຂໍ້ມູນ, ຫຼື " +"ທ່ານອາດຈະບໍ່ມີການເຂົ້າເຖິງ." msgid "Visualization not found" -msgstr "" +msgstr "ບໍ່ພົບການສ້າງຮູບພາບດ້ວຍຂໍ້ມູນ" msgid "" "The visualization you are trying to view could not be found, the ID could be" " incorrect or it could have been deleted." msgstr "" +"ບໍ່ພົບການສ້າງຮູບພາບດ້ວຍຂໍ້ມູນທີ່ທ່ານກຳລັງຄົ້ນ, ເນື່ອງຈາກໄອດີອາດບໍ່ຖືກຕ້ອງ " +"ຫຼື ອາດຖືກລຶບໄປແລ້ວ." msgid "No tracked entity type selected" -msgstr "" +msgstr "ບໍ່ໄດ້ເລືອກປະເພດການຕິດຕາມລາຍບຸກຄົນ" msgid "Choose a type from the Input sidebar." -msgstr "" +msgstr "ເລືອກປະເພດຈາກແຖບດ້ານຂ້າງການປ້ອນຂໍ້ມູນ." msgid "No program selected" -msgstr "" +msgstr "ບໍ່ໄດ້ເລືອກໂປແກຣມ" msgid "Choose a program from the Input sidebar." -msgstr "" +msgstr "ເລືອກໂປແກຣມຈາກແຖບດ້ານຂ້າງການປ້ອນຂໍ້ມູນ." msgid "Columns is empty" -msgstr "" +msgstr "ຖັນຫວ່າງເປົ່າ" msgid "Add at least one item to Columns." -msgstr "" +msgstr "ເພີ່ມຢ່າງໜ້ອຍໜຶ່ງລາຍການໃສ່ຖັນ." msgid "No organisation unit selected" -msgstr "" +msgstr "ບໍ່ໄດ້ເລືອກຫົວໜ່ວຍການຈັດຕັ້ງ" msgid "" "Make sure to add the organisation unit dimension with at least one selection" " to the layout." msgstr "" +"ໃຫ້ແນ່ໃຈວ່າທ່ານໄດ້ເພີ່ມຂອບເຂດຫົວໜ່ວຍການຈັດຕັ້ງຢ່າງຫນ້ອຍຫນຶ່ງທາງເລືອກໃນໂຄງຮ່າງ." msgid "There's a problem with at least one selected indicator" -msgstr "" +msgstr "ພົບບັນຫາກັບຕົວຊີ້ວັດທີ່ເລືອກໜຶ່ງອັນ" msgid "Restricted access" -msgstr "" +msgstr "ຈຳກັດການເຂົ້າເຖິງ" msgid "" "You don’t have access to the data in this visualization. Contact a system " "administrator." msgstr "" +"ທ່ານບໍ່ໄດ້ຮັບອະນຸຍາດໃນການເຂົ້າເຖິງການສ້າງຮູບພາບດ້ວຍຂໍ້ມູນນີ້. " +"ຕິດຕໍ່ຜູ້ດູແລລະບົບ." msgid "You don’t have access to one or more of the chosen organisation units." msgstr "" +"ທ່ານບໍ່ໄດ້ຮັບອະນຸຍາດໃຫ້ເຂົ້າເຖິງໜຶ່ງ ຫຼື " +"ຫຼາຍກວ່າຫົວໜ່ວຍອົງການຈັດຕັ້ງທີ່ເລືອກ." msgid "" "You don’t have access to event analytics. Contact a system administrator." msgstr "" +"ທ່ານບໍ່ໄດ້ຮັບອະນຸຍາດໃຫ້ເຂົ້າເຖິງການວິເຄາະເຫດການ. ກະລຸນາຕິດຕໍ່ຜູ້ດູແລລະບົບ." msgid "Something went wrong" msgstr "ມີບາງຢ່າງຜິດພາດ" @@ -673,22 +700,22 @@ msgstr "ມີບາງຢ່າງຜິດພາດ" msgid "" "There's a problem with the generated analytics. Contact a system " "administrator." -msgstr "" +msgstr "ພົບບັນຫາກັບການວິເຄາະທີ່ສ້າງຂຶ້ນ. ກະລຸນາຕິດຕໍ່ຜູ້ດູແລລະບົບ." msgid "There's a syntax problem with the analytics request." -msgstr "" +msgstr "ພົບບັນຫາຮູບແບບກັບຄຳຮ້ອງຂໍການວິເຄາະ." msgid "Registration date" msgstr "ວັນທີລົງທະບຽນ" msgid "Last updated on" -msgstr "" +msgstr "ອັບເດດຫຼ້າສຸດເມື່ອ" msgid "Created by" msgstr "ສ້າງໂດຍ" msgid "Last updated by" -msgstr "" +msgstr "ອັບເດດຫຼ້າສຸດໂດຍ" msgid "User organisation unit" msgstr "ຫນ່ວຍງານອົງການຈັດຕັ້ງຂອງຜູ້ໃຊ້" @@ -700,7 +727,7 @@ msgid "User sub-x2-units" msgstr "ຫົວໜ່ວຍຍ່ອຍຂັ້ນສອງຂອງທ່ານ" msgid "Registration org. unit" -msgstr "" +msgstr "ລົງທະບຽນຫົວໜ່ວຍການຈັດຕັ້ງ" msgid "Organisation unit" msgstr "​ຫົວ​ໜ່ວຍ​ການ​ຈັດ​ຕັ້ງ" @@ -712,7 +739,7 @@ msgid "Display" msgstr "ສະແດງ" msgid "Empty data" -msgstr "" +msgstr "ຂໍ້ມູນວ່າງເປົ່າ" msgid "Totals" msgstr "ລວມທັງໝົດ" @@ -721,13 +748,13 @@ msgid "Data" msgstr "ຂໍ້ມູນ" msgid "Limit values" -msgstr "" +msgstr "ຄ່າຈຳກັດ" msgid "Limit number of values" -msgstr "" +msgstr "ຈຳນວນຂອງຄ່າຈຳກັດ" msgid "Limit minimum/maximum values" -msgstr "" +msgstr "ຈຳກັດຄ່າຕ່ຳສຸດ/ສູງສຸດ" msgid "Style" msgstr "ລັກສະນະ" @@ -739,16 +766,16 @@ msgid "Program status" msgstr "ສະຖານະຂອງສາຍງານ" msgid "most recent" -msgstr "" +msgstr "ລ່າສຸດ" msgid "oldest" -msgstr "" +msgstr "ເກົ່າສຸດ" msgid "oldest {{repeatEventIndex}}" -msgstr "" +msgstr "ເກົ່າສຸດ {{repeatEventIndex}}" msgid "most recent {{repeatEventIndex}}" -msgstr "" +msgstr "ລ່າສຸດ {{repeatEventIndex}}" msgid "Event date" msgstr "ວັນທີເຫດການ" @@ -775,7 +802,7 @@ msgid "Scheduled" msgstr "ຕາມເວລາທີ່ກໍານົດ" msgid "List data from tracked entities and events." -msgstr "" +msgstr "ລາຍຊື່ຂໍ້ມູນຈາກບຸກຄົນ ແລະ ເຫດການການຕິດຕາມ." msgid "Explore data with manipulatable columns, rows, and aggregations." -msgstr "" +msgstr "ສຳຫຼວດຂໍ້ມູນດ້ວຍຖັນ, ແຖວ, ແລະ ການສັງລວມທີ່ສາມາດຈັດການໄດ້." From 248aacda90aaf28678d79ece6692ba96109f373d Mon Sep 17 00:00:00 2001 From: "@dhis2-bot" Date: Sun, 25 Aug 2024 02:54:13 +0000 Subject: [PATCH 44/62] chore(release): cut 101.1.7 [skip release] ## [101.1.7](https://github.com/dhis2/line-listing-app/compare/v101.1.6...v101.1.7) (2024-08-25) ### Bug Fixes * **translations:** sync translations from transifex (master) ([ee92d90](https://github.com/dhis2/line-listing-app/commit/ee92d90588cde799a4bf9350642dfbd2cf4b23d4)) --- CHANGELOG.md | 7 +++++++ package.json | 2 +- 2 files changed, 8 insertions(+), 1 deletion(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 0aefb7123..b881d05d8 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,3 +1,10 @@ +## [101.1.7](https://github.com/dhis2/line-listing-app/compare/v101.1.6...v101.1.7) (2024-08-25) + + +### Bug Fixes + +* **translations:** sync translations from transifex (master) ([ee92d90](https://github.com/dhis2/line-listing-app/commit/ee92d90588cde799a4bf9350642dfbd2cf4b23d4)) + ## [101.1.6](https://github.com/dhis2/line-listing-app/compare/v101.1.5...v101.1.6) (2024-08-21) diff --git a/package.json b/package.json index f7cd5e854..83fcaa10e 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "line-listing-app", - "version": "101.1.6", + "version": "101.1.7", "description": "DHIS2 Line Listing", "license": "BSD-3-Clause", "private": true, From d31979fbd451349813b32c90ea2bdb147d28ce92 Mon Sep 17 00:00:00 2001 From: Jen Jones Arnesen Date: Mon, 26 Aug 2024 10:10:44 +0200 Subject: [PATCH 45/62] fix: display correct app version in dhis2 and updated workflows (#581) PR workflow: verify-pr.yml This workflow triggers on pull request actions only. It verifies that the PR code passes build, lint, test, and e2e. Release workflow: release.yml This workflow only runs on pushes to the master branch since this is the only release branch. Every release involves 2 commits to master: * squash merging the PR * the release workflow pushes a new commit with version change in package.json and CHANGELOG.md, e.g. the [skip release] commit The release workflow triggers for both pushes to master listed above. But the release job should only run for the first push. The semantic-release workflow steps are found in .releaserc. Previously @dhis2/action-semantic-release was used but this was overkill for our needs and difficult to make changes to. Therefore, we created our own semantic-release steps in .releaserc: * commit-analyzer: Determines the next app version * release-notes-generator: Generates the new release notes * changelog: Updates CHANGELOG.md with the generated release notes * npm: Updates package.json with the new version number. Does not publish to npm since private: true in package.json exec: Runs yarn build which updates all version number references in the bundle * git: creates commit number "2" (mentioned above) with just CHANGELOG.md and package.json and pushes it to the remote * github: pushes the bundle to the github repo as a new release and adds a tag After semantic-release is complete, the bundle is then published to AppHub so that it is actually available to all users. Because of the addition of the exec yarn build step, all references to the version in the bundle should be the same, thus fixing the annoying bug where the old version displays in the instance after installing the later version. If any point in the release fails, then a failure message is sent to slack. If the release step succeeds, then a success message is posted to slack that includes the new version number and the release notes. Publish to d2-ci: publish-to-d2-ci.yml Publishes the build to d2-ci in the following cases: * The [skip release] commit on master * Git tags Fail message is sent to slack if the publish failed --- .github/workflows/dhis2-verify-app.yml | 246 --- .github/workflows/publish-d2-ci.yml | 67 + .github/workflows/release.yml | 137 ++ .github/workflows/verify-pr.yml | 103 ++ .releaserc | 38 + package.json | 4 + yarn.lock | 2267 +++++++++++++++++++++++- 7 files changed, 2574 insertions(+), 288 deletions(-) delete mode 100644 .github/workflows/dhis2-verify-app.yml create mode 100644 .github/workflows/publish-d2-ci.yml create mode 100644 .github/workflows/release.yml create mode 100644 .github/workflows/verify-pr.yml create mode 100644 .releaserc diff --git a/.github/workflows/dhis2-verify-app.yml b/.github/workflows/dhis2-verify-app.yml deleted file mode 100644 index 73179c4aa..000000000 --- a/.github/workflows/dhis2-verify-app.yml +++ /dev/null @@ -1,246 +0,0 @@ -name: 'dhis2: verify (app)' - -on: - pull_request: - types: ['opened', 'labeled', 'reopened', 'synchronize'] - push: - branches: - - 'master' - - 'dev' - repository_dispatch: - types: [cypress-test-trigger] - -concurrency: - group: ${{ github.workflow}}-${{ github.ref }} - -env: - GIT_AUTHOR_NAME: '@dhis2-bot' - GIT_AUTHOR_EMAIL: 'apps@dhis2.org' - GIT_COMMITTER_NAME: '@dhis2-bot' - GIT_COMMITTER_EMAIL: 'apps@dhis2.org' - GH_TOKEN: ${{secrets.DHIS2_BOT_GITHUB_TOKEN}} - D2_VERBOSE: true - CI: true - -jobs: - setup-matrix: - runs-on: ubuntu-latest - outputs: - matrix: ${{ steps.set-matrix.outputs.specs }} - steps: - - uses: actions/checkout@v3 - - name: Generate Test matrix - id: set-matrix - run: echo "::set-output name=specs::$(node src/generateTestMatrix.js)" - - build: - runs-on: ubuntu-latest - steps: - - uses: actions/checkout@v3 - - uses: actions/setup-node@v3 - with: - node-version: 18.x - - - name: Install - run: yarn install --frozen-lockfile - - - name: Build - run: yarn d2-app-scripts build - - - uses: actions/upload-artifact@v3 - with: - name: app-build - path: | - **/build - !**/node_modules - retention-days: 1 - - lint: - runs-on: ubuntu-latest - steps: - - uses: actions/checkout@v3 - - uses: actions/setup-node@v3 - with: - node-version: 18.x - - - name: Install - run: yarn install --frozen-lockfile - - - name: Generate translations - run: yarn d2-app-scripts i18n generate - - - name: Lint - run: yarn d2-style check - - test: - runs-on: ubuntu-latest - steps: - - uses: actions/checkout@v3 - - uses: actions/setup-node@v3 - with: - node-version: 18.x - - - name: Install - run: yarn install --frozen-lockfile - - - name: Test - run: yarn d2-app-scripts test - env: - REPORTPORTAL_API_KEY: ${{ secrets.REPORTPORTAL_API_KEY }} - REPORTPORTAL_ENDPOINT: ${{ vars.REPORTPORTAL_ENDPOINT }} - REPORTPORTAL_PROJECT: ${{ vars.REPORTPORTAL_PROJECT }} - CI_BUILD_ID: ${{ github.sha }}-${{ github.workflow }}-${{ github.event_name }} - BRANCH_NAME: ${{ github.head_ref || github.ref_name }} - PR_TITLE: ${{ github.event_name == 'pull_request' && github.event.pull_request.title || format('Direct push to {0}', github.ref_name) }} - - call-workflow-e2e-prod: - if: "!contains(github.event.head_commit.message, '[skip ci]')" - needs: [build, lint, test, setup-matrix] - uses: dhis2/workflows/.github/workflows/analytics-e2e-tests-prod.yml@master - with: - should_record: ${{ contains(github.event.head_commit.message, '[e2e record]') || contains(join(github.event.pull_request.labels.*.name), 'e2e record')}} - spec-group: ${{ needs.setup-matrix.outputs.matrix }} - secrets: - username: ${{ secrets.CYPRESS_DHIS2_USERNAME }} - password: ${{ secrets.CYPRESS_DHIS2_PASSWORD }} - recordkey: ${{ secrets.CYPRESS_RECORD_KEY }} - reportportal_api_key: ${{ secrets.REPORTPORTAL_API_KEY }} - reportportal_endpoint: ${{ vars.REPORTPORTAL_ENDPOINT }} - reportportal_project: ${{ vars.REPORTPORTAL_PROJECT }} - - release: - runs-on: ubuntu-latest - needs: call-workflow-e2e-prod - if: | - !github.event.push.repository.fork && - github.actor != 'dependabot[bot]' && - github.ref == 'refs/heads/master' - steps: - - uses: actions/checkout@v3 - with: - token: ${{ secrets.DHIS2_BOT_GITHUB_TOKEN }} - - - uses: actions/setup-node@v3 - with: - node-version: 18.x - - - uses: actions/download-artifact@v3 - with: - name: app-build - - - name: Install - run: yarn install --frozen-lockfile - - - uses: dhis2/action-semantic-release@master - with: - publish-apphub: true - publish-github: true - github-token: ${{ secrets.DHIS2_BOT_GITHUB_TOKEN }} - apphub-token: ${{ secrets.DHIS2_BOT_APPHUB_TOKEN }} - - - uses: dhis2/deploy-build@master - with: - build-dir: build/app - github-token: ${{ secrets.DHIS2_BOT_GITHUB_TOKEN }} - - report-release-failure: - runs-on: ubuntu-latest - needs: release - if: | - failure() && - !cancelled() && - github.ref == 'refs/heads/master' && - contains(github.event.head_commit.message, 'chore(release)') - steps: - - name: Checkout code - uses: actions/checkout@master - - - name: Extract version - id: extract_version - uses: Saionaro/extract-package-version@v1.2.1 - - - name: Send failure message to analytics-internal-bot slack channel - id: slack - uses: slackapi/slack-github-action@v1.23.0 - with: - channel-id: ${{ secrets.SLACK_CHANNEL_ID }} - payload: | - { - "text": ":small_red_triangle_down: :line-listing-app: Line Listing release ", - "blocks": [ - { - "type": "section", - "text": { - "type": "mrkdwn", - "text": ":small_red_triangle_down: :line-listing-app: Line Listing release " - } - } - ] - } - env: - SLACK_BOT_TOKEN: ${{ secrets.SLACK_BOT_TOKEN }} - - report-release-success: - runs-on: ubuntu-latest - needs: release - if: | - success() && - !cancelled() && - github.ref == 'refs/heads/master' && - contains(github.event.head_commit.message, 'chore(release)') - steps: - - name: Checkout code - uses: actions/checkout@master - - - name: Extract version - id: extract_version - uses: Saionaro/extract-package-version@v1.2.1 - - - name: Send success message to analytics-internal-bot slack channel - id: slack - uses: slackapi/slack-github-action@v1.23.0 - with: - channel-id: ${{ secrets.SLACK_CHANNEL_ID }} - payload: | - { - "text": "Line Listing app release ${{ steps.extract_version.outputs.version }} succeeded", - "blocks": [ - { - "type": "header", - "text": { - "type": "plain_text", - "text": ":large_green_circle: :line-listing-app: Line Listing version ${{ steps.extract_version.outputs.version }} released :tada:", - "emoji": true - } - }, - { - "type": "divider" - }, - { - "type": "section", - "text": { - "type": "mrkdwn", - "text": "*Release Notes*" - } - }, - { - "type": "section", - "text": { - "type": "mrkdwn", - "text": ${{ toJSON(github.event.head_commit.message) }} - } - }, - { - "type": "divider" - }, - { - "type": "section", - "text": { - "type": "mrkdwn", - "text": "Link to " - } - } - ] - } - env: - SLACK_BOT_TOKEN: ${{ secrets.SLACK_BOT_TOKEN }} diff --git a/.github/workflows/publish-d2-ci.yml b/.github/workflows/publish-d2-ci.yml new file mode 100644 index 000000000..564af1381 --- /dev/null +++ b/.github/workflows/publish-d2-ci.yml @@ -0,0 +1,67 @@ +name: 'publish build to d2-ci' + +on: + push: + branches: + - master + tags: + - '*' + +env: + GIT_AUTHOR_NAME: '@dhis2-bot' + GIT_AUTHOR_EMAIL: 'apps@dhis2.org' + GIT_COMMITTER_NAME: '@dhis2-bot' + GIT_COMMITTER_EMAIL: 'apps@dhis2.org' + GH_TOKEN: ${{secrets.DHIS2_BOT_GITHUB_TOKEN}} + CI: true + +jobs: + publish-to-d2-ci: + if: | + ${{ !github.event.push.repository.fork }} && + ${{ github.actor == 'dhis2-bot' && (github.ref == 'refs/heads/master' || startsWith(github.ref, 'refs/tags/')) }} + + runs-on: ubuntu-latest + steps: + - name: Print GitHub event context + run: echo "$GITHUB_EVENT" | jq '.' + env: + GITHUB_EVENT: ${{ toJson(github.event) }} + + - name: Print GitHub ref + run: echo "GITHUB_REF is $GITHUB_REF" + + - uses: actions/checkout@v3 + + - uses: actions/setup-node@v3 + with: + node-version: 18.x + + - name: Install + run: yarn install --frozen-lockfile + + - name: Build + run: yarn d2-app-scripts build + + - name: Copy build to d2-ci + uses: dhis2/deploy-build@master + with: + build-dir: build/app + github-token: ${{ secrets.DHIS2_BOT_GITHUB_TOKEN }} + + report-deploy-failure: + runs-on: ubuntu-latest + needs: publish-to-d2-ci + if: ${{ failure() && !cancelled() }} + steps: + - name: Send failure message to analytics-internal-bot slack channel + id: slack_publish_failure + uses: slackapi/slack-github-action@v1.23.0 + with: + channel-id: ${{ secrets.SLACK_CHANNEL_ID }} + payload: | + { + "text": ":small_red_triangle_down: :line-listing-app: Line Listing failed to deploy to d2-ci", + } + env: + SLACK_BOT_TOKEN: ${{ secrets.SLACK_BOT_TOKEN }} diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml new file mode 100644 index 000000000..8619173e5 --- /dev/null +++ b/.github/workflows/release.yml @@ -0,0 +1,137 @@ +name: 'release app' + +on: + push: + branches: + - 'master' + +env: + GIT_AUTHOR_NAME: '@dhis2-bot' + GIT_AUTHOR_EMAIL: 'apps@dhis2.org' + GIT_COMMITTER_NAME: '@dhis2-bot' + GIT_COMMITTER_EMAIL: 'apps@dhis2.org' + GH_TOKEN: ${{secrets.DHIS2_BOT_GITHUB_TOKEN}} + D2_APP_HUB_TOKEN: ${{secrets.DHIS2_BOT_APPHUB_TOKEN}} + CI: true + +jobs: + release: + runs-on: ubuntu-latest + if: > + ${{ !github.event.push.repository.fork && + github.actor != 'dependabot[bot]' && + !contains(github.event.head_commit.message, '[skip ci]') && + !contains(github.event.head_commit.message, '[skip release]') && + !startsWith(github.event.head_commit.message, 'chore') }} + steps: + - uses: actions/checkout@v3 + with: + token: ${{ secrets.DHIS2_BOT_GITHUB_TOKEN }} + + - uses: actions/setup-node@v3 + with: + node-version: 18.x + + - name: Install + run: yarn install --frozen-lockfile + + # This step will push a new commit to master with [skip release] in the commit message + - name: Run Semantic Release + run: npx semantic-release + env: + GITHUB_TOKEN: ${{ secrets.DHIS2_BOT_GITHUB_TOKEN }} + + - name: Publish to AppHub + run: yarn run d2-app-scripts publish + + report-release-result: + runs-on: ubuntu-latest + needs: release + if: > + ${{ !github.event.push.repository.fork && + github.actor != 'dependabot[bot]' && + !contains(github.event.head_commit.message, '[skip ci]') && + !contains(github.event.head_commit.message, '[skip release]') }} + steps: + - name: Checkout code + uses: actions/checkout@v4 + with: + ref: master + fetch-depth: 0 + + - name: Extract version + if: success() + id: extract_version + uses: Saionaro/extract-package-version@v1.2.1 + + - name: Send success message to analytics-internal-bot slack channel + if: success() + id: slack_success + uses: slackapi/slack-github-action@v1.23.0 + with: + channel-id: ${{ secrets.SLACK_CHANNEL_ID }} + payload: | + { + "text": "Line Listing app release ${{ steps.extract_version.outputs.version }} succeeded", + "blocks": [ + { + "type": "header", + "text": { + "type": "plain_text", + "text": ":large_green_circle: :line-listing-app: Line Listing version ${{ steps.extract_version.outputs.version }} released :tada:", + "emoji": true + } + }, + { + "type": "divider" + }, + { + "type": "section", + "text": { + "type": "mrkdwn", + "text": "*Release Notes*" + } + }, + { + "type": "section", + "text": { + "type": "mrkdwn", + "text": ${{ toJSON(github.event.head_commit.message) }} + } + }, + { + "type": "divider" + }, + { + "type": "section", + "text": { + "type": "mrkdwn", + "text": "Link to " + } + } + ] + } + env: + SLACK_BOT_TOKEN: ${{ secrets.SLACK_BOT_TOKEN }} + + - name: Send failure message to analytics-internal-bot slack channel + if: ${{ failure() && !cancelled() }} + id: slack_failure + uses: slackapi/slack-github-action@v1.23.0 + with: + channel-id: ${{ secrets.SLACK_CHANNEL_ID }} + payload: | + { + "text": ":small_red_triangle_down: :line-listing-app: Line Listing release ", + "blocks": [ + { + "type": "section", + "text": { + "type": "mrkdwn", + "text": ":small_red_triangle_down: :line-listing-app: Line Listing release " + } + } + ] + } + env: + SLACK_BOT_TOKEN: ${{ secrets.SLACK_BOT_TOKEN }} diff --git a/.github/workflows/verify-pr.yml b/.github/workflows/verify-pr.yml new file mode 100644 index 000000000..c223edcf7 --- /dev/null +++ b/.github/workflows/verify-pr.yml @@ -0,0 +1,103 @@ +name: 'verify pr' + +on: + pull_request: + types: ['opened', 'labeled', 'reopened', 'synchronize'] + +concurrency: + group: ${{ github.workflow}}-${{ github.ref }} + +env: + GIT_AUTHOR_NAME: '@dhis2-bot' + GIT_AUTHOR_EMAIL: 'apps@dhis2.org' + GIT_COMMITTER_NAME: '@dhis2-bot' + GIT_COMMITTER_EMAIL: 'apps@dhis2.org' + GH_TOKEN: ${{secrets.DHIS2_BOT_GITHUB_TOKEN}} + D2_VERBOSE: true + CI: true + +jobs: + setup-matrix: + runs-on: ubuntu-latest + outputs: + matrix: ${{ steps.set-matrix.outputs.specs }} + steps: + - uses: actions/checkout@v3 + - name: Generate Test matrix + id: set-matrix + run: echo "::set-output name=specs::$(node src/generateTestMatrix.js)" + + build: + runs-on: ubuntu-latest + steps: + - uses: actions/checkout@v3 + - uses: actions/setup-node@v3 + with: + node-version: 18.x + + - name: Install + run: yarn install --frozen-lockfile + + - name: Build + run: yarn d2-app-scripts build + + - uses: actions/upload-artifact@v3 + with: + name: app-build + path: | + **/build + !**/node_modules + retention-days: 1 + + lint: + runs-on: ubuntu-latest + steps: + - uses: actions/checkout@v3 + - uses: actions/setup-node@v3 + with: + node-version: 18.x + + - name: Install + run: yarn install --frozen-lockfile + + - name: Generate translations + run: yarn d2-app-scripts i18n generate + + - name: Lint + run: yarn d2-style check + + test: + runs-on: ubuntu-latest + steps: + - uses: actions/checkout@v3 + - uses: actions/setup-node@v3 + with: + node-version: 18.x + + - name: Install + run: yarn install --frozen-lockfile + + - name: Test + run: yarn d2-app-scripts test + env: + REPORTPORTAL_API_KEY: ${{ secrets.REPORTPORTAL_API_KEY }} + REPORTPORTAL_ENDPOINT: ${{ vars.REPORTPORTAL_ENDPOINT }} + REPORTPORTAL_PROJECT: ${{ vars.REPORTPORTAL_PROJECT }} + CI_BUILD_ID: ${{ github.sha }}-${{ github.workflow }}-${{ github.event_name }} + BRANCH_NAME: ${{ github.head_ref || github.ref_name }} + PR_TITLE: ${{ github.event_name == 'pull_request' && github.event.pull_request.title || format('Direct push to {0}', github.ref_name) }} + + call-workflow-e2e-prod: + if: "!contains(github.event.head_commit.message, '[skip ci]')" + needs: [build, lint, test, setup-matrix] + uses: dhis2/workflows/.github/workflows/analytics-e2e-tests-prod.yml@master + with: + should_record: ${{ contains(github.event.head_commit.message, '[e2e record]') || contains(join(github.event.pull_request.labels.*.name), 'e2e record')}} + spec-group: ${{ needs.setup-matrix.outputs.matrix }} + secrets: + username: ${{ secrets.CYPRESS_DHIS2_USERNAME }} + password: ${{ secrets.CYPRESS_DHIS2_PASSWORD }} + recordkey: ${{ secrets.CYPRESS_RECORD_KEY }} + reportportal_api_key: ${{ secrets.REPORTPORTAL_API_KEY }} + reportportal_endpoint: ${{ vars.REPORTPORTAL_ENDPOINT }} + reportportal_project: ${{ vars.REPORTPORTAL_PROJECT }} diff --git a/.releaserc b/.releaserc new file mode 100644 index 000000000..9cf0f41ce --- /dev/null +++ b/.releaserc @@ -0,0 +1,38 @@ +{ + "branches": [ + "master" + ], + "plugins": [ + "@semantic-release/commit-analyzer", + "@semantic-release/release-notes-generator", + "@semantic-release/changelog", + "@semantic-release/npm", + [ + "@semantic-release/exec", + { + "prepareCmd": "yarn build" + } + ], + [ + "@semantic-release/git", + { + "assets": [ + "CHANGELOG.md", + "package.json" + ], + "message": "chore(release): cut ${nextRelease.version} [skip release]\n\n${nextRelease.notes}" + } + ], + [ + "@semantic-release/github", + { + "assets": [ + { + "path": "build/bundle/*.zip", + "label": "DHIS2 app bundle" + } + ] + } + ] + ] +} diff --git a/package.json b/package.json index 83fcaa10e..91484e86e 100644 --- a/package.json +++ b/package.json @@ -24,6 +24,9 @@ "@dhis2/cypress-plugins": "^10.0.2", "@reportportal/agent-js-cypress": "git+https://github.com/dhis2/agent-js-cypress.git#develop", "@reportportal/agent-js-jest": "^5.0.8", + "@semantic-release/changelog": "^6", + "@semantic-release/exec": "^6", + "@semantic-release/git": "^10", "@testing-library/jest-dom": "^5.16.4", "@testing-library/react": "^12.1.4", "cypress": "^13.10.0", @@ -34,6 +37,7 @@ "identity-obj-proxy": "^3.0.0", "jest-enzyme": "^7.1.2", "redux-mock-store": "^1.5.4", + "semantic-release": "^20", "start-server-and-test": "^1.14.0", "typescript": "^4.8.4" }, diff --git a/yarn.lock b/yarn.lock index 884de4cd7..9fd57c45d 100644 --- a/yarn.lock +++ b/yarn.lock @@ -2443,6 +2443,11 @@ minimatch "^3.1.2" strip-json-comments "^3.1.1" +"@gar/promisify@^1.1.3": + version "1.1.3" + resolved "https://registry.yarnpkg.com/@gar/promisify/-/promisify-1.1.3.tgz#555193ab2e3bb3b6adc3d551c9c030d9e860daf6" + integrity sha512-k2Ty1JcVojjJFwrg/ThKi2ujJ7XNLYaFGNB/bWT9wGR+oSMJHMa5w+CUq6p/pVrKeNNgA7pCqEcjSnHVoqJQFw== + "@hapi/hoek@^9.0.0": version "9.3.0" resolved "https://registry.yarnpkg.com/@hapi/hoek/-/hoek-9.3.0.tgz#8368869dcb735be2e7f5cb7647de78e167a251fb" @@ -2488,6 +2493,11 @@ resolved "https://registry.yarnpkg.com/@humanwhocodes/object-schema/-/object-schema-1.2.1.tgz#b520529ec21d8e5945a1851dfd1c32e94e39ff45" integrity sha512-ZnQMnLV4e7hDlUvw8H+U8ASL02SS2Gn6+9Ac3wGGLIe7+je2AeAOxPY+izIPJDfFDb7eDjev0Us8MO1iFRN8hA== +"@isaacs/string-locale-compare@^1.1.0": + version "1.1.0" + resolved "https://registry.yarnpkg.com/@isaacs/string-locale-compare/-/string-locale-compare-1.1.0.tgz#291c227e93fd407a96ecd59879a35809120e432b" + integrity sha512-SQ7Kzhh9+D+ZW9MA0zkYv3VXhIDNx+LzM6EJ+/65I3QY+enU6Itte7E5XX7EWrqLW2FN4n06GWzBnPoC3th2aQ== + "@istanbuljs/load-nyc-config@^1.0.0": version "1.1.0" resolved "https://registry.yarnpkg.com/@istanbuljs/load-nyc-config/-/load-nyc-config-1.1.0.tgz#fd3db1d59ecf7cf121e80650bb86712f9b55eced" @@ -2950,6 +2960,276 @@ "@nodelib/fs.scandir" "2.1.5" fastq "^1.6.0" +"@npmcli/arborist@^5.6.3": + version "5.6.3" + resolved "https://registry.yarnpkg.com/@npmcli/arborist/-/arborist-5.6.3.tgz#40810080272e097b4a7a4f56108f4a31638a9874" + integrity sha512-/7hbqEM6YuRjwTcQXkK1+xKslEblY5kFQe0tZ7jKyMlIR6x4iOmhLErIkBBGtTKvYxRKdpcxnFXjCobg3UqmsA== + dependencies: + "@isaacs/string-locale-compare" "^1.1.0" + "@npmcli/installed-package-contents" "^1.0.7" + "@npmcli/map-workspaces" "^2.0.3" + "@npmcli/metavuln-calculator" "^3.0.1" + "@npmcli/move-file" "^2.0.0" + "@npmcli/name-from-folder" "^1.0.1" + "@npmcli/node-gyp" "^2.0.0" + "@npmcli/package-json" "^2.0.0" + "@npmcli/query" "^1.2.0" + "@npmcli/run-script" "^4.1.3" + bin-links "^3.0.3" + cacache "^16.1.3" + common-ancestor-path "^1.0.1" + hosted-git-info "^5.2.1" + json-parse-even-better-errors "^2.3.1" + json-stringify-nice "^1.1.4" + minimatch "^5.1.0" + mkdirp "^1.0.4" + mkdirp-infer-owner "^2.0.0" + nopt "^6.0.0" + npm-install-checks "^5.0.0" + npm-package-arg "^9.0.0" + npm-pick-manifest "^7.0.2" + npm-registry-fetch "^13.0.0" + npmlog "^6.0.2" + pacote "^13.6.1" + parse-conflict-json "^2.0.1" + proc-log "^2.0.0" + promise-all-reject-late "^1.0.0" + promise-call-limit "^1.0.1" + read-package-json-fast "^2.0.2" + readdir-scoped-modules "^1.1.0" + rimraf "^3.0.2" + semver "^7.3.7" + ssri "^9.0.0" + treeverse "^2.0.0" + walk-up-path "^1.0.0" + +"@npmcli/ci-detect@^2.0.0": + version "2.0.0" + resolved "https://registry.yarnpkg.com/@npmcli/ci-detect/-/ci-detect-2.0.0.tgz#e63c91bcd4185ac1e85720a34fc48e164ece5b89" + integrity sha512-8yQtQ9ArHh/TzdUDKQwEvwCgpDuhSWTDAbiKMl3854PcT+Dk4UmWaiawuFTLy9n5twzXOBXVflWe+90/ffXQrA== + +"@npmcli/config@^4.2.1": + version "4.2.2" + resolved "https://registry.yarnpkg.com/@npmcli/config/-/config-4.2.2.tgz#2e3334dda84f48d059309c53d152e66b05ca24b7" + integrity sha512-5GNcLd+0c4bYBnFop53+26CO5GQP0R9YcxlernohpHDWdIgzUg9I0+GEMk3sNHnLntATVU39d283A4OO+W402w== + dependencies: + "@npmcli/map-workspaces" "^2.0.2" + ini "^3.0.0" + mkdirp-infer-owner "^2.0.0" + nopt "^6.0.0" + proc-log "^2.0.0" + read-package-json-fast "^2.0.3" + semver "^7.3.5" + walk-up-path "^1.0.0" + +"@npmcli/disparity-colors@^2.0.0": + version "2.0.0" + resolved "https://registry.yarnpkg.com/@npmcli/disparity-colors/-/disparity-colors-2.0.0.tgz#cb518166ee21573b96241a3613fef70acb2a60ba" + integrity sha512-FFXGrIjhvd2qSZ8iS0yDvbI7nbjdyT2VNO7wotosjYZM2p2r8PN3B7Om3M5NO9KqW/OVzfzLB3L0V5Vo5QXC7A== + dependencies: + ansi-styles "^4.3.0" + +"@npmcli/fs@^2.1.0", "@npmcli/fs@^2.1.1": + version "2.1.2" + resolved "https://registry.yarnpkg.com/@npmcli/fs/-/fs-2.1.2.tgz#a9e2541a4a2fec2e69c29b35e6060973da79b865" + integrity sha512-yOJKRvohFOaLqipNtwYB9WugyZKhC/DZC4VYPmpaCzDBrA8YpK3qHZ8/HGscMnE4GqbkLNuVcCnxkeQEdGt6LQ== + dependencies: + "@gar/promisify" "^1.1.3" + semver "^7.3.5" + +"@npmcli/git@^3.0.0": + version "3.0.2" + resolved "https://registry.yarnpkg.com/@npmcli/git/-/git-3.0.2.tgz#5c5de6b4d70474cf2d09af149ce42e4e1dacb931" + integrity sha512-CAcd08y3DWBJqJDpfuVL0uijlq5oaXaOJEKHKc4wqrjd00gkvTZB+nFuLn+doOOKddaQS9JfqtNoFCO2LCvA3w== + dependencies: + "@npmcli/promise-spawn" "^3.0.0" + lru-cache "^7.4.4" + mkdirp "^1.0.4" + npm-pick-manifest "^7.0.0" + proc-log "^2.0.0" + promise-inflight "^1.0.1" + promise-retry "^2.0.1" + semver "^7.3.5" + which "^2.0.2" + +"@npmcli/installed-package-contents@^1.0.7": + version "1.0.7" + resolved "https://registry.yarnpkg.com/@npmcli/installed-package-contents/-/installed-package-contents-1.0.7.tgz#ab7408c6147911b970a8abe261ce512232a3f4fa" + integrity sha512-9rufe0wnJusCQoLpV9ZPKIVP55itrM5BxOXs10DmdbRfgWtHy1LDyskbwRnBghuB0PrF7pNPOqREVtpz4HqzKw== + dependencies: + npm-bundled "^1.1.1" + npm-normalize-package-bin "^1.0.1" + +"@npmcli/map-workspaces@^2.0.2", "@npmcli/map-workspaces@^2.0.3": + version "2.0.4" + resolved "https://registry.yarnpkg.com/@npmcli/map-workspaces/-/map-workspaces-2.0.4.tgz#9e5e8ab655215a262aefabf139782b894e0504fc" + integrity sha512-bMo0aAfwhVwqoVM5UzX1DJnlvVvzDCHae821jv48L1EsrYwfOZChlqWYXEtto/+BkBXetPbEWgau++/brh4oVg== + dependencies: + "@npmcli/name-from-folder" "^1.0.1" + glob "^8.0.1" + minimatch "^5.0.1" + read-package-json-fast "^2.0.3" + +"@npmcli/metavuln-calculator@^3.0.1": + version "3.1.1" + resolved "https://registry.yarnpkg.com/@npmcli/metavuln-calculator/-/metavuln-calculator-3.1.1.tgz#9359bd72b400f8353f6a28a25c8457b562602622" + integrity sha512-n69ygIaqAedecLeVH3KnO39M6ZHiJ2dEv5A7DGvcqCB8q17BGUgW8QaanIkbWUo2aYGZqJaOORTLAlIvKjNDKA== + dependencies: + cacache "^16.0.0" + json-parse-even-better-errors "^2.3.1" + pacote "^13.0.3" + semver "^7.3.5" + +"@npmcli/move-file@^2.0.0": + version "2.0.1" + resolved "https://registry.yarnpkg.com/@npmcli/move-file/-/move-file-2.0.1.tgz#26f6bdc379d87f75e55739bab89db525b06100e4" + integrity sha512-mJd2Z5TjYWq/ttPLLGqArdtnC74J6bOzg4rMDnN+p1xTacZ2yPRCk2y0oSWQtygLR9YVQXgOcONrwtnk3JupxQ== + dependencies: + mkdirp "^1.0.4" + rimraf "^3.0.2" + +"@npmcli/name-from-folder@^1.0.1": + version "1.0.1" + resolved "https://registry.yarnpkg.com/@npmcli/name-from-folder/-/name-from-folder-1.0.1.tgz#77ecd0a4fcb772ba6fe927e2e2e155fbec2e6b1a" + integrity sha512-qq3oEfcLFwNfEYOQ8HLimRGKlD8WSeGEdtUa7hmzpR8Sa7haL1KVQrvgO6wqMjhWFFVjgtrh1gIxDz+P8sjUaA== + +"@npmcli/node-gyp@^2.0.0": + version "2.0.0" + resolved "https://registry.yarnpkg.com/@npmcli/node-gyp/-/node-gyp-2.0.0.tgz#8c20e53e34e9078d18815c1d2dda6f2420d75e35" + integrity sha512-doNI35wIe3bBaEgrlPfdJPaCpUR89pJWep4Hq3aRdh6gKazIVWfs0jHttvSSoq47ZXgC7h73kDsUl8AoIQUB+A== + +"@npmcli/package-json@^2.0.0": + version "2.0.0" + resolved "https://registry.yarnpkg.com/@npmcli/package-json/-/package-json-2.0.0.tgz#3bbcf4677e21055adbe673d9f08c9f9cde942e4a" + integrity sha512-42jnZ6yl16GzjWSH7vtrmWyJDGVa/LXPdpN2rcUWolFjc9ON2N3uz0qdBbQACfmhuJZ2lbKYtmK5qx68ZPLHMA== + dependencies: + json-parse-even-better-errors "^2.3.1" + +"@npmcli/promise-spawn@^3.0.0": + version "3.0.0" + resolved "https://registry.yarnpkg.com/@npmcli/promise-spawn/-/promise-spawn-3.0.0.tgz#53283b5f18f855c6925f23c24e67c911501ef573" + integrity sha512-s9SgS+p3a9Eohe68cSI3fi+hpcZUmXq5P7w0kMlAsWVtR7XbK3ptkZqKT2cK1zLDObJ3sR+8P59sJE0w/KTL1g== + dependencies: + infer-owner "^1.0.4" + +"@npmcli/query@^1.2.0": + version "1.2.0" + resolved "https://registry.yarnpkg.com/@npmcli/query/-/query-1.2.0.tgz#46468d583cf013aa92102970700f9555314aabe4" + integrity sha512-uWglsUM3PjBLgTSmZ3/vygeGdvWEIZ3wTUnzGFbprC/RtvQSaT+GAXu1DXmSFj2bD3oOZdcRm1xdzsV2z1YWdw== + dependencies: + npm-package-arg "^9.1.0" + postcss-selector-parser "^6.0.10" + semver "^7.3.7" + +"@npmcli/run-script@^4.1.0", "@npmcli/run-script@^4.1.3", "@npmcli/run-script@^4.2.0", "@npmcli/run-script@^4.2.1": + version "4.2.1" + resolved "https://registry.yarnpkg.com/@npmcli/run-script/-/run-script-4.2.1.tgz#c07c5c71bc1c70a5f2a06b0d4da976641609b946" + integrity sha512-7dqywvVudPSrRCW5nTHpHgeWnbBtz8cFkOuKrecm6ih+oO9ciydhWt6OF7HlqupRRmB8Q/gECVdB9LMfToJbRg== + dependencies: + "@npmcli/node-gyp" "^2.0.0" + "@npmcli/promise-spawn" "^3.0.0" + node-gyp "^9.0.0" + read-package-json-fast "^2.0.3" + which "^2.0.2" + +"@octokit/auth-token@^3.0.0": + version "3.0.4" + resolved "https://registry.yarnpkg.com/@octokit/auth-token/-/auth-token-3.0.4.tgz#70e941ba742bdd2b49bdb7393e821dea8520a3db" + integrity sha512-TWFX7cZF2LXoCvdmJWY7XVPi74aSY0+FfBZNSXEXFkMpjcqsQwDSYVv5FhRFaI0V1ECnwbz4j59T/G+rXNWaIQ== + +"@octokit/core@^4.2.1": + version "4.2.4" + resolved "https://registry.yarnpkg.com/@octokit/core/-/core-4.2.4.tgz#d8769ec2b43ff37cc3ea89ec4681a20ba58ef907" + integrity sha512-rYKilwgzQ7/imScn3M9/pFfUf4I1AZEH3KhyJmtPdE2zfaXAn2mFfUy4FbKewzc2We5y/LlKLj36fWJLKC2SIQ== + dependencies: + "@octokit/auth-token" "^3.0.0" + "@octokit/graphql" "^5.0.0" + "@octokit/request" "^6.0.0" + "@octokit/request-error" "^3.0.0" + "@octokit/types" "^9.0.0" + before-after-hook "^2.2.0" + universal-user-agent "^6.0.0" + +"@octokit/endpoint@^7.0.0": + version "7.0.6" + resolved "https://registry.yarnpkg.com/@octokit/endpoint/-/endpoint-7.0.6.tgz#791f65d3937555141fb6c08f91d618a7d645f1e2" + integrity sha512-5L4fseVRUsDFGR00tMWD/Trdeeihn999rTMGRMC1G/Ldi1uWlWJzI98H4Iak5DB/RVvQuyMYKqSK/R6mbSOQyg== + dependencies: + "@octokit/types" "^9.0.0" + is-plain-object "^5.0.0" + universal-user-agent "^6.0.0" + +"@octokit/graphql@^5.0.0": + version "5.0.6" + resolved "https://registry.yarnpkg.com/@octokit/graphql/-/graphql-5.0.6.tgz#9eac411ac4353ccc5d3fca7d76736e6888c5d248" + integrity sha512-Fxyxdy/JH0MnIB5h+UQ3yCoh1FG4kWXfFKkpWqjZHw/p+Kc8Y44Hu/kCgNBT6nU1shNumEchmW/sUO1JuQnPcw== + dependencies: + "@octokit/request" "^6.0.0" + "@octokit/types" "^9.0.0" + universal-user-agent "^6.0.0" + +"@octokit/openapi-types@^18.0.0": + version "18.1.1" + resolved "https://registry.yarnpkg.com/@octokit/openapi-types/-/openapi-types-18.1.1.tgz#09bdfdabfd8e16d16324326da5148010d765f009" + integrity sha512-VRaeH8nCDtF5aXWnjPuEMIYf1itK/s3JYyJcWFJT8X9pSNnBtriDf7wlEWsGuhPLl4QIH4xM8fqTXDwJ3Mu6sw== + +"@octokit/plugin-paginate-rest@^6.1.2": + version "6.1.2" + resolved "https://registry.yarnpkg.com/@octokit/plugin-paginate-rest/-/plugin-paginate-rest-6.1.2.tgz#f86456a7a1fe9e58fec6385a85cf1b34072341f8" + integrity sha512-qhrmtQeHU/IivxucOV1bbI/xZyC/iOBhclokv7Sut5vnejAIAEXVcGQeRpQlU39E0WwK9lNvJHphHri/DB6lbQ== + dependencies: + "@octokit/tsconfig" "^1.0.2" + "@octokit/types" "^9.2.3" + +"@octokit/plugin-retry@^4.1.3": + version "4.1.6" + resolved "https://registry.yarnpkg.com/@octokit/plugin-retry/-/plugin-retry-4.1.6.tgz#e33b1e520f0bd24d515c9901676b55df64dfc795" + integrity sha512-obkYzIgEC75r8+9Pnfiiqy3y/x1bc3QLE5B7qvv9wi9Kj0R5tGQFC6QMBg1154WQ9lAVypuQDGyp3hNpp15gQQ== + dependencies: + "@octokit/types" "^9.0.0" + bottleneck "^2.15.3" + +"@octokit/plugin-throttling@^5.2.3": + version "5.2.3" + resolved "https://registry.yarnpkg.com/@octokit/plugin-throttling/-/plugin-throttling-5.2.3.tgz#9f552a14dcee5c7326dd9dee64a71ea76b108814" + integrity sha512-C9CFg9mrf6cugneKiaI841iG8DOv6P5XXkjmiNNut+swePxQ7RWEdAZRp5rJoE1hjsIqiYcKa/ZkOQ+ujPI39Q== + dependencies: + "@octokit/types" "^9.0.0" + bottleneck "^2.15.3" + +"@octokit/request-error@^3.0.0": + version "3.0.3" + resolved "https://registry.yarnpkg.com/@octokit/request-error/-/request-error-3.0.3.tgz#ef3dd08b8e964e53e55d471acfe00baa892b9c69" + integrity sha512-crqw3V5Iy2uOU5Np+8M/YexTlT8zxCfI+qu+LxUB7SZpje4Qmx3mub5DfEKSO8Ylyk0aogi6TYdf6kxzh2BguQ== + dependencies: + "@octokit/types" "^9.0.0" + deprecation "^2.0.0" + once "^1.4.0" + +"@octokit/request@^6.0.0": + version "6.2.8" + resolved "https://registry.yarnpkg.com/@octokit/request/-/request-6.2.8.tgz#aaf480b32ab2b210e9dadd8271d187c93171d8eb" + integrity sha512-ow4+pkVQ+6XVVsekSYBzJC0VTVvh/FCTUUgTsboGq+DTeWdyIFV8WSCdo0RIxk6wSkBTHqIK1mYuY7nOBXOchw== + dependencies: + "@octokit/endpoint" "^7.0.0" + "@octokit/request-error" "^3.0.0" + "@octokit/types" "^9.0.0" + is-plain-object "^5.0.0" + node-fetch "^2.6.7" + universal-user-agent "^6.0.0" + +"@octokit/tsconfig@^1.0.2": + version "1.0.2" + resolved "https://registry.yarnpkg.com/@octokit/tsconfig/-/tsconfig-1.0.2.tgz#59b024d6f3c0ed82f00d08ead5b3750469125af7" + integrity sha512-I0vDR0rdtP8p2lGMzvsJzbhdOWy405HcGovrspJ8RRibHnyRgggUSNO5AIox5LmqiwmatHKYsvj6VGFHkqS7lA== + +"@octokit/types@^9.0.0", "@octokit/types@^9.2.3": + version "9.3.2" + resolved "https://registry.yarnpkg.com/@octokit/types/-/types-9.3.2.tgz#3f5f89903b69f6a2d196d78ec35f888c0013cac5" + integrity sha512-D4iHGTdAnEEVsB8fl95m1hiz7D5YiRdQ9b/OEb3BYRVwbLsGHcRVPz+u+BgRLNk0Q0/4iZCBqDN96j2XNxfXrA== + dependencies: + "@octokit/openapi-types" "^18.0.0" + "@pmmmwh/react-refresh-webpack-plugin@^0.5.3", "@pmmmwh/react-refresh-webpack-plugin@^0.5.4": version "0.5.8" resolved "https://registry.yarnpkg.com/@pmmmwh/react-refresh-webpack-plugin/-/react-refresh-webpack-plugin-0.5.8.tgz#da3383761e2c0c440610819f3204769022a38d12" @@ -2965,6 +3245,27 @@ schema-utils "^3.0.0" source-map "^0.7.3" +"@pnpm/config.env-replace@^1.1.0": + version "1.1.0" + resolved "https://registry.yarnpkg.com/@pnpm/config.env-replace/-/config.env-replace-1.1.0.tgz#ab29da53df41e8948a00f2433f085f54de8b3a4c" + integrity sha512-htyl8TWnKL7K/ESFa1oW2UB5lVDxuF5DpM7tBi6Hu2LNL3mWkIzNLG6N4zoCUP1lCKNxWy/3iu8mS8MvToGd6w== + +"@pnpm/network.ca-file@^1.0.1": + version "1.0.2" + resolved "https://registry.yarnpkg.com/@pnpm/network.ca-file/-/network.ca-file-1.0.2.tgz#2ab05e09c1af0cdf2fcf5035bea1484e222f7983" + integrity sha512-YcPQ8a0jwYU9bTdJDpXjMi7Brhkr1mXsXrUJvjqM2mQDgkRiz8jFaQGOdaLxgjtUfQgZhKy/O3cG/YwmgKaxLA== + dependencies: + graceful-fs "4.2.10" + +"@pnpm/npm-conf@^2.1.0": + version "2.3.1" + resolved "https://registry.yarnpkg.com/@pnpm/npm-conf/-/npm-conf-2.3.1.tgz#bb375a571a0bd63ab0a23bece33033c683e9b6b0" + integrity sha512-c83qWb22rNRuB0UaVCI0uRPNRr8Z0FWnEIvT47jiHAmOIUHbBOg5XvV7pM5x+rKn9HRpjxquDbXYSXr3fAKFcw== + dependencies: + "@pnpm/config.env-replace" "^1.1.0" + "@pnpm/network.ca-file" "^1.0.1" + config-chain "^1.1.11" + "@popperjs/core@^2.10.1": version "2.11.6" resolved "https://registry.yarnpkg.com/@popperjs/core/-/core-2.11.6.tgz#cee20bd55e68a1720bdab363ecf0c821ded4cd45" @@ -3076,6 +3377,118 @@ resolved "https://registry.yarnpkg.com/@rushstack/eslint-patch/-/eslint-patch-1.2.0.tgz#8be36a1f66f3265389e90b5f9c9962146758f728" integrity sha512-sXo/qW2/pAcmT43VoRKOJbDOfV3cYpq3szSVfIThQXNt+E4DfKj361vaAt3c88U5tPUxzEswam7GW48PJqtKAg== +"@semantic-release/changelog@^6": + version "6.0.3" + resolved "https://registry.yarnpkg.com/@semantic-release/changelog/-/changelog-6.0.3.tgz#6195630ecbeccad174461de727d5f975abc23eeb" + integrity sha512-dZuR5qByyfe3Y03TpmCvAxCyTnp7r5XwtHRf/8vD9EAn4ZWbavUX8adMtXYzE86EVh0gyLA7lm5yW4IV30XUag== + dependencies: + "@semantic-release/error" "^3.0.0" + aggregate-error "^3.0.0" + fs-extra "^11.0.0" + lodash "^4.17.4" + +"@semantic-release/commit-analyzer@^9.0.2": + version "9.0.2" + resolved "https://registry.yarnpkg.com/@semantic-release/commit-analyzer/-/commit-analyzer-9.0.2.tgz#a78e54f9834193b55f1073fa6258eecc9a545e03" + integrity sha512-E+dr6L+xIHZkX4zNMe6Rnwg4YQrWNXK+rNsvwOPpdFppvZO1olE2fIgWhv89TkQErygevbjsZFSIxp+u6w2e5g== + dependencies: + conventional-changelog-angular "^5.0.0" + conventional-commits-filter "^2.0.0" + conventional-commits-parser "^3.2.3" + debug "^4.0.0" + import-from "^4.0.0" + lodash "^4.17.4" + micromatch "^4.0.2" + +"@semantic-release/error@^3.0.0": + version "3.0.0" + resolved "https://registry.yarnpkg.com/@semantic-release/error/-/error-3.0.0.tgz#30a3b97bbb5844d695eb22f9d3aa40f6a92770c2" + integrity sha512-5hiM4Un+tpl4cKw3lV4UgzJj+SmfNIDCLLw0TepzQxz9ZGV5ixnqkzIVF+3tp0ZHgcMKE+VNGHJjEeyFG2dcSw== + +"@semantic-release/exec@^6": + version "6.0.3" + resolved "https://registry.yarnpkg.com/@semantic-release/exec/-/exec-6.0.3.tgz#d212fdf19633bdfb553de6cb6c7f8781933224db" + integrity sha512-bxAq8vLOw76aV89vxxICecEa8jfaWwYITw6X74zzlO0mc/Bgieqx9kBRz9z96pHectiTAtsCwsQcUyLYWnp3VQ== + dependencies: + "@semantic-release/error" "^3.0.0" + aggregate-error "^3.0.0" + debug "^4.0.0" + execa "^5.0.0" + lodash "^4.17.4" + parse-json "^5.0.0" + +"@semantic-release/git@^10": + version "10.0.1" + resolved "https://registry.yarnpkg.com/@semantic-release/git/-/git-10.0.1.tgz#c646e55d67fae623875bf3a06a634dd434904498" + integrity sha512-eWrx5KguUcU2wUPaO6sfvZI0wPafUKAMNC18aXY4EnNcrZL86dEmpNVnC9uMpGZkmZJ9EfCVJBQx4pV4EMGT1w== + dependencies: + "@semantic-release/error" "^3.0.0" + aggregate-error "^3.0.0" + debug "^4.0.0" + dir-glob "^3.0.0" + execa "^5.0.0" + lodash "^4.17.4" + micromatch "^4.0.0" + p-reduce "^2.0.0" + +"@semantic-release/github@^8.0.0": + version "8.1.0" + resolved "https://registry.yarnpkg.com/@semantic-release/github/-/github-8.1.0.tgz#c31fc5852d32975648445804d1984cd96e72c4d0" + integrity sha512-erR9E5rpdsz0dW1I7785JtndQuMWN/iDcemcptf67tBNOmBUN0b2YNOgcjYUnBpgRpZ5ozfBHrK7Bz+2ets/Dg== + dependencies: + "@octokit/core" "^4.2.1" + "@octokit/plugin-paginate-rest" "^6.1.2" + "@octokit/plugin-retry" "^4.1.3" + "@octokit/plugin-throttling" "^5.2.3" + "@semantic-release/error" "^3.0.0" + aggregate-error "^3.0.0" + debug "^4.0.0" + dir-glob "^3.0.0" + fs-extra "^11.0.0" + globby "^11.0.0" + http-proxy-agent "^7.0.0" + https-proxy-agent "^7.0.0" + issue-parser "^6.0.0" + lodash "^4.17.4" + mime "^3.0.0" + p-filter "^2.0.0" + url-join "^4.0.0" + +"@semantic-release/npm@^9.0.0": + version "9.0.2" + resolved "https://registry.yarnpkg.com/@semantic-release/npm/-/npm-9.0.2.tgz#0f0903b4df6e93ef237372146bc376087fed4e1d" + integrity sha512-zgsynF6McdzxPnFet+a4iO9HpAlARXOM5adz7VGVCvj0ne8wtL2ZOQoDV2wZPDmdEotDIbVeJjafhelZjs9j6g== + dependencies: + "@semantic-release/error" "^3.0.0" + aggregate-error "^3.0.0" + execa "^5.0.0" + fs-extra "^11.0.0" + lodash "^4.17.15" + nerf-dart "^1.0.0" + normalize-url "^6.0.0" + npm "^8.3.0" + rc "^1.2.8" + read-pkg "^5.0.0" + registry-auth-token "^5.0.0" + semver "^7.1.2" + tempy "^1.0.0" + +"@semantic-release/release-notes-generator@^10.0.0": + version "10.0.3" + resolved "https://registry.yarnpkg.com/@semantic-release/release-notes-generator/-/release-notes-generator-10.0.3.tgz#85f7ca78bfa6b01fb5fda0ac48112855d69171dc" + integrity sha512-k4x4VhIKneOWoBGHkx0qZogNjCldLPRiAjnIpMnlUh6PtaWXp/T+C9U7/TaNDDtgDa5HMbHl4WlREdxHio6/3w== + dependencies: + conventional-changelog-angular "^5.0.0" + conventional-changelog-writer "^5.0.0" + conventional-commits-filter "^2.0.0" + conventional-commits-parser "^3.2.3" + debug "^4.0.0" + get-stream "^6.0.0" + import-from "^4.0.0" + into-stream "^6.0.0" + lodash "^4.17.4" + read-pkg-up "^7.0.0" + "@sideway/address@^4.1.3": version "4.1.4" resolved "https://registry.yarnpkg.com/@sideway/address/-/address-4.1.4.tgz#03dccebc6ea47fdc226f7d3d1ad512955d4783f0" @@ -3280,6 +3693,11 @@ resolved "https://registry.yarnpkg.com/@tootallnate/once/-/once-1.1.2.tgz#ccb91445360179a04e7fe6aff78c00ffc1eeaf82" integrity sha512-RbzJvlNzmRq5c3O09UipeuXno4tA1FE6ikOjxZK0tuxVv3412l64l5t1W5pj4+rJq9vpkm/kwiR07aZXnsKPxw== +"@tootallnate/once@2": + version "2.0.0" + resolved "https://registry.yarnpkg.com/@tootallnate/once/-/once-2.0.0.tgz#f544a148d3ab35801c1f633a7441fd87c2e484bf" + integrity sha512-XCuKFP5PS55gnMVu3dty8KPatLqUoy/ZYzDzAGCQ8JNFCkLXzmI7vNHCR+XpbZaMWQK/vQubr7PkYq8g470J/A== + "@trysound/sax@0.2.0": version "0.2.0" resolved "https://registry.yarnpkg.com/@trysound/sax/-/sax-0.2.0.tgz#cccaab758af56761eb7bf37af6f03f326dd798ad" @@ -3502,6 +3920,11 @@ resolved "https://registry.yarnpkg.com/@types/normalize-package-data/-/normalize-package-data-2.4.1.tgz#d3357479a0fdfdd5907fe67e17e0a85c906e1301" integrity sha512-Gj7cI7z+98M282Tqmp2K5EIsoouUEzbBJhQQzDE3jSIRk6r9gsz0oUokqIUR4u1R3dMHo0pDHM7sNOHyhulypw== +"@types/normalize-package-data@^2.4.1": + version "2.4.4" + resolved "https://registry.yarnpkg.com/@types/normalize-package-data/-/normalize-package-data-2.4.4.tgz#56e2cc26c397c038fab0e3a917a12d5c5909e901" + integrity sha512-37i+OaWTh9qeK4LSHPsyRC7NahnGotNuZvjLSgcPzblpHB3rrCJxAOgI5gCdKm7coonsaX1Of0ILiTcnZjbfxA== + "@types/parse-json@^4.0.0": version "4.0.0" resolved "https://registry.yarnpkg.com/@types/parse-json/-/parse-json-4.0.0.tgz#2f8bb441434d163b35fb8ffdccd7138927ffb8c0" @@ -3915,6 +4338,11 @@ abab@^2.0.0, abab@^2.0.3, abab@^2.0.5: resolved "https://registry.yarnpkg.com/abab/-/abab-2.0.6.tgz#41b80f2c871d19686216b82309231cfd3cb3d291" integrity sha512-j2afSsaIENvHZN2B8GOpF566vZ5WVk5opAiMTvWgaQT8DkbOqsTfvNAvHoRGU2zzP8cPoqys+xHTRDWW8L+/BA== +abbrev@^1.0.0, abbrev@~1.1.1: + version "1.1.1" + resolved "https://registry.yarnpkg.com/abbrev/-/abbrev-1.1.1.tgz#f8f2c887ad10bf67f634f005b6987fed3179aac8" + integrity sha512-nne9/IiQ/hzIhY6pdDnbBtz7DjPTKrY00P/zvPSm5pOFkl6xuGrGnXn/VtTNNfNtAfZ9/1RtehkszU9qcTii0Q== + accepts@~1.3.4, accepts@~1.3.5, accepts@~1.3.8: version "1.3.8" resolved "https://registry.yarnpkg.com/accepts/-/accepts-1.3.8.tgz#0bf0be125b67014adcb0b0921e62db7bffe16b2e" @@ -4072,13 +4500,27 @@ adjust-sourcemap-loader@^4.0.0: loader-utils "^2.0.0" regex-parser "^2.2.11" -agent-base@6: +agent-base@6, agent-base@^6.0.2: version "6.0.2" resolved "https://registry.yarnpkg.com/agent-base/-/agent-base-6.0.2.tgz#49fff58577cfee3f37176feab4c22e00f86d7f77" integrity sha512-RZNwNclF7+MS/8bDg70amg32dyeZGZxiDuQmZxKLAlQjr3jGyLx+4Kkk58UO7D2QdgFIQCovuSuZESne6RG6XQ== dependencies: debug "4" +agent-base@^7.0.2, agent-base@^7.1.0: + version "7.1.1" + resolved "https://registry.yarnpkg.com/agent-base/-/agent-base-7.1.1.tgz#bdbded7dfb096b751a2a087eeeb9664725b2e317" + integrity sha512-H0TSyFNDMomMNJQBn8wFV5YC/2eJ+VXECwOadZJT554xP6cODZHPX3H9QMQECxvrgiSOP1pHjy1sMWQVYJOUOA== + dependencies: + debug "^4.3.4" + +agentkeepalive@^4.2.1: + version "4.5.0" + resolved "https://registry.yarnpkg.com/agentkeepalive/-/agentkeepalive-4.5.0.tgz#2673ad1389b3c418c5a20c5d7364f93ca04be923" + integrity sha512-5GG/5IbQQpC9FpkRGsSvZI5QYeSCzlJHdpBQntCsuTOxhKD8lqKhrleg2Yi7yvMIf82Ycmmqln9U8V9qwEiJew== + dependencies: + humanize-ms "^1.2.1" + aggregate-error@^3.0.0: version "3.1.0" resolved "https://registry.yarnpkg.com/aggregate-error/-/aggregate-error-3.1.0.tgz#92670ff50f5359bdb7a3e0d40d0ec30c5737687a" @@ -4087,6 +4529,14 @@ aggregate-error@^3.0.0: clean-stack "^2.0.0" indent-string "^4.0.0" +aggregate-error@^4.0.1: + version "4.0.1" + resolved "https://registry.yarnpkg.com/aggregate-error/-/aggregate-error-4.0.1.tgz#25091fe1573b9e0be892aeda15c7c66a545f758e" + integrity sha512-0poP0T7el6Vq3rstR8Mn4V/IQrpBLO6POkUSrN7RhyY+GF/InCFShQzsQ39T25gkHhLgSLByyAz+Kjb+c2L98w== + dependencies: + clean-stack "^4.0.0" + indent-string "^5.0.0" + airbnb-prop-types@^2.16.0: version "2.16.0" resolved "https://registry.yarnpkg.com/airbnb-prop-types/-/airbnb-prop-types-2.16.0.tgz#b96274cefa1abb14f623f804173ee97c13971dc2" @@ -4165,6 +4615,11 @@ ansi-escapes@^4.2.1, ansi-escapes@^4.3.0, ansi-escapes@^4.3.1: dependencies: type-fest "^0.21.3" +ansi-escapes@^6.2.0: + version "6.2.1" + resolved "https://registry.yarnpkg.com/ansi-escapes/-/ansi-escapes-6.2.1.tgz#76c54ce9b081dad39acec4b5d53377913825fb0f" + integrity sha512-4nJ3yixlEthEJ9Rk4vPcdBRkZvQZlYyu8j4/Mqz5sgIkddmEnH2Yj2ZrnP9S3tQOvSNRUIgVNF/1yPpRAGNRig== + ansi-html-community@^0.0.8: version "0.0.8" resolved "https://registry.yarnpkg.com/ansi-html-community/-/ansi-html-community-0.0.8.tgz#69fbc4d6ccbe383f9736934ae34c3f8290f1bf41" @@ -4197,7 +4652,7 @@ ansi-styles@^3.2.0, ansi-styles@^3.2.1: dependencies: color-convert "^1.9.0" -ansi-styles@^4.0.0, ansi-styles@^4.1.0: +ansi-styles@^4.0.0, ansi-styles@^4.1.0, ansi-styles@^4.3.0: version "4.3.0" resolved "https://registry.yarnpkg.com/ansi-styles/-/ansi-styles-4.3.0.tgz#edd803628ae71c04c85ae7a0906edad34b648937" integrity sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg== @@ -4209,6 +4664,11 @@ ansi-styles@^5.0.0: resolved "https://registry.yarnpkg.com/ansi-styles/-/ansi-styles-5.2.0.tgz#07449690ad45777d1924ac2abb2fc8895dba836b" integrity sha512-Cxwpt2SfTzTtXcfOlzGEee8O+c+MmUgGrNiBcXnuWxuFJHe6a5Hz7qwhwe5OgaSYI0IJvkLqWX1ASG+cJOkEiA== +ansicolors@~0.3.2: + version "0.3.2" + resolved "https://registry.yarnpkg.com/ansicolors/-/ansicolors-0.3.2.tgz#665597de86a9ffe3aa9bfbe6cae5c6ea426b4979" + integrity sha512-QXu7BPrP29VllRxH8GwB7x5iX5qWKAAMLqKQGWTeLWVlNHNOpVMJ91dsxQAIWXpjuW5wqvxu3Jd/nRjrJ+0pqg== + anymatch@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/anymatch/-/anymatch-2.0.0.tgz#bcb24b4f37934d9aa7ac17b4adaf89e7c76ef2eb" @@ -4232,6 +4692,11 @@ append-buffer@^1.0.2: dependencies: buffer-equal "^1.0.0" +"aproba@^1.0.3 || ^2.0.0", aproba@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/aproba/-/aproba-2.0.0.tgz#52520b8ae5b569215b354efc0caa3fe1e45a8adc" + integrity sha512-lYe4Gx7QT+MKGbDsA+Z+he/Wtef0BiwDOlK/XkBrdfsh9J/jPPXbX0tE9x9cl27Tmu5gg3QUbUrQYa/y+KOHPQ== + arch@^2.2.0: version "2.2.0" resolved "https://registry.yarnpkg.com/arch/-/arch-2.2.0.tgz#1bc47818f305764f23ab3306b0bfc086c5a29d11" @@ -4266,6 +4731,19 @@ archiver@^3.1.1: tar-stream "^2.1.0" zip-stream "^2.1.2" +archy@~1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/archy/-/archy-1.0.0.tgz#f9c8c13757cc1dd7bc379ac77b2c62a5c2868c40" + integrity sha512-Xg+9RwCg/0p32teKdGMPTPnVXKD0w3DfHnFTficozsAgsvq2XenPJq/MYpzzQ/v8zrOyJn6Ds39VA4JIDwFfqw== + +are-we-there-yet@^3.0.0: + version "3.0.1" + resolved "https://registry.yarnpkg.com/are-we-there-yet/-/are-we-there-yet-3.0.1.tgz#679df222b278c64f2cdba1175cdc00b0d96164bd" + integrity sha512-QZW4EDmGwlYur0Yyf/b2uGucHQMa8aFUP7eu9ddR73vvhFyt4V0Vl3QHPcTNJ8l6qYOBdxgXdnBXQrHilfRQBg== + dependencies: + delegates "^1.0.0" + readable-stream "^3.6.0" + arg@^5.0.2: version "5.0.2" resolved "https://registry.yarnpkg.com/arg/-/arg-5.0.2.tgz#c81433cc427c92c4dcf4865142dbca6f15acd59c" @@ -4283,6 +4761,11 @@ argparse@^2.0.1: resolved "https://registry.yarnpkg.com/argparse/-/argparse-2.0.1.tgz#246f50f3ca78a3240f6c997e8a9bd1eac49e4b38" integrity sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q== +argv-formatter@~1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/argv-formatter/-/argv-formatter-1.0.0.tgz#a0ca0cbc29a5b73e836eebe1cbf6c5e0e4eb82f9" + integrity sha512-F2+Hkm9xFaRg+GkaNnbwXNDV5O6pnCFEmqyhvfC/Ic5LbgOWjJh3L+mN/s91rxVL3znE7DYVpW0GJFT+4YBgWw== + aria-query@^4.2.2: version "4.2.2" resolved "https://registry.yarnpkg.com/aria-query/-/aria-query-4.2.2.tgz#0d2ca6c9aceb56b8977e9fed6aed7e15bbd2f83b" @@ -4433,7 +4916,7 @@ arrify@^1.0.1: resolved "https://registry.yarnpkg.com/arrify/-/arrify-1.0.1.tgz#898508da2226f380df904728456849c1501a4b0d" integrity sha512-3CYzex9M9FGQjCGMGyi6/31c8GJbgb0qGyrx5HWxPd0aCwh4cB2YjMb2Xf9UuoogrMrlO9cTqnB5rI5GHZTcUA== -asap@~2.0.6: +asap@^2.0.0, asap@~2.0.6: version "2.0.6" resolved "https://registry.yarnpkg.com/asap/-/asap-2.0.6.tgz#e50347611d7e690943208bbdafebcbc2fb866d46" integrity sha512-BSHWgDSAiKs50o2Re8ppvp3seVHXSRM44cdSsT9FfNEUUZLOGWVCsiWaRPWM1Znn+mqZ1OfVZ3z3DWEzSp7hRA== @@ -4808,6 +5291,11 @@ bcrypt-pbkdf@^1.0.0: dependencies: tweetnacl "^0.14.3" +before-after-hook@^2.2.0: + version "2.2.3" + resolved "https://registry.yarnpkg.com/before-after-hook/-/before-after-hook-2.2.3.tgz#c51e809c81a4e354084422b9b26bad88249c517c" + integrity sha512-NzUnlZexiaH/46WDhANlyR2bXRopNg4F/zuSA3OpZnllCUgRaOF2znDioDWrmbNVsuZk6l9pMquQB38cfBZwkQ== + belter@^1.0.41: version "1.0.190" resolved "https://registry.yarnpkg.com/belter/-/belter-1.0.190.tgz#491857550ef240d9c66b56fc637991f5c3089966" @@ -4837,11 +5325,28 @@ big.js@^5.2.2: resolved "https://registry.yarnpkg.com/big.js/-/big.js-5.2.2.tgz#65f0af382f578bcdc742bd9c281e9cb2d7768328" integrity sha512-vyL2OymJxmarO8gxMr0mhChsO9QGwhynfuu4+MHTAW6czfq9humCB7rKpUjDd9YUiDPU4mzpyupFSvOClAwbmQ== +bin-links@^3.0.3: + version "3.0.3" + resolved "https://registry.yarnpkg.com/bin-links/-/bin-links-3.0.3.tgz#3842711ef3db2cd9f16a5f404a996a12db355a6e" + integrity sha512-zKdnMPWEdh4F5INR07/eBrodC7QrF5JKvqskjz/ZZRXg5YSAZIbn8zGhbhUrElzHBZ2fvEQdOU59RHcTG3GiwA== + dependencies: + cmd-shim "^5.0.0" + mkdirp-infer-owner "^2.0.0" + npm-normalize-package-bin "^2.0.0" + read-cmd-shim "^3.0.0" + rimraf "^3.0.0" + write-file-atomic "^4.0.0" + binary-extensions@^2.0.0: version "2.2.0" resolved "https://registry.yarnpkg.com/binary-extensions/-/binary-extensions-2.2.0.tgz#75f502eeaf9ffde42fc98829645be4ea76bd9e2d" integrity sha512-jDctJ/IVQbZoJykoeHbhXpOlNBqGNcwXJKJog42E5HDPUwQTSdjCHdihjj0DlnheQ7blbT6dHOafNAiS8ooQKA== +binary-extensions@^2.2.0: + version "2.3.0" + resolved "https://registry.yarnpkg.com/binary-extensions/-/binary-extensions-2.3.0.tgz#f6e14a97858d327252200242d4ccfe522c445522" + integrity sha512-Ceh+7ox5qe7LJuLHoY0feh3pHuUDHAcRUeyL2VYghZwfpkNIy/+8Ocg0a3UuSoYzavmylwuLWQOf3hl0jjMMIw== + bindings@^1.5.0: version "1.5.0" resolved "https://registry.yarnpkg.com/bindings/-/bindings-1.5.0.tgz#10353c9e945334bc0511a6d90b38fbc7c9c504df" @@ -4916,6 +5421,11 @@ boolean-parser@0.0.2: resolved "https://registry.yarnpkg.com/boolean-parser/-/boolean-parser-0.0.2.tgz#58721f1172e65fd132d6e6debbd00053deaffa12" integrity sha512-e06Mqk6t7DOXaEo3s+RATvv7ZNt5brRQ2os4NUHVkVCzUD0Z7Gw4AL4AFA/gT3WaLhrobmGvRVh1/UuJiY3sKg== +bottleneck@^2.15.3: + version "2.19.5" + resolved "https://registry.yarnpkg.com/bottleneck/-/bottleneck-2.19.5.tgz#5df0b90f59fd47656ebe63c78a98419205cadd91" + integrity sha512-VHiNCbI1lKdl44tGrhNfU3lup0Tj/ZBMJB5/2ZbNXRCPuRCO7ed2mgcK4r17y+KB2EfuYuRaVlwNbAeaWGSpbw== + boxen@^3.0.0: version "3.2.0" resolved "https://registry.yarnpkg.com/boxen/-/boxen-3.2.0.tgz#fbdff0de93636ab4450886b6ff45b92d098f45eb" @@ -4968,6 +5478,13 @@ braces@^3.0.2, braces@~3.0.2: dependencies: fill-range "^7.0.1" +braces@^3.0.3: + version "3.0.3" + resolved "https://registry.yarnpkg.com/braces/-/braces-3.0.3.tgz#490332f40919452272d55a8480adc0c441358789" + integrity sha512-yQbXgO/OSZVD2IsiLlro+7Hf6Q18EJrKSEsdoMzKePKXct3gvD8oLcOQdIzGupr5Fj+EDe8gO/lxc1BzfMpxvA== + dependencies: + fill-range "^7.1.1" + broadcast-channel@^3.4.1: version "3.7.0" resolved "https://registry.yarnpkg.com/broadcast-channel/-/broadcast-channel-3.7.0.tgz#2dfa5c7b4289547ac3f6705f9c00af8723889937" @@ -5259,6 +5776,13 @@ builtin-status-codes@^3.0.0: resolved "https://registry.yarnpkg.com/builtin-status-codes/-/builtin-status-codes-3.0.0.tgz#85982878e21b98e1c66425e03d0174788f569ee8" integrity sha512-HpGFw18DgFWlncDfjTa2rcQ4W88O1mC8e8yZ2AvQY5KDaktSTwo+KRf6nHK6FRI5FyRyb/5T6+TSxfP7QyGsmQ== +builtins@^5.0.0: + version "5.1.0" + resolved "https://registry.yarnpkg.com/builtins/-/builtins-5.1.0.tgz#6d85eeb360c4ebc166c3fdef922a15aa7316a5e8" + integrity sha512-SW9lzGTLvWTP1AY8xeAMZimqDrIaSdLQUcVr9DMef51niJ022Ri87SwRRKYm4A6iHfkPaiVUu/Duw2Wc4J7kKg== + dependencies: + semver "^7.0.0" + bytes@3.0.0: version "3.0.0" resolved "https://registry.yarnpkg.com/bytes/-/bytes-3.0.0.tgz#d32815404d689699f85a4ea4fa8755dd13a96048" @@ -5269,6 +5793,30 @@ bytes@3.1.2: resolved "https://registry.yarnpkg.com/bytes/-/bytes-3.1.2.tgz#8b0beeb98605adf1b128fa4386403c009e0221a5" integrity sha512-/Nf7TyzTx6S3yRJObOAV7956r8cr2+Oj8AC5dt8wSP3BQAoeX58NoHyCU8P8zGkNXStjTSi6fzO6F0pBdcYbEg== +cacache@^16.0.0, cacache@^16.1.0, cacache@^16.1.3: + version "16.1.3" + resolved "https://registry.yarnpkg.com/cacache/-/cacache-16.1.3.tgz#a02b9f34ecfaf9a78c9f4bc16fceb94d5d67a38e" + integrity sha512-/+Emcj9DAXxX4cwlLmRI9c166RuL3w30zp4R7Joiv2cQTtTtA+jeuCAjH3ZlGnYS3tKENSrKhAzVVP9GVyzeYQ== + dependencies: + "@npmcli/fs" "^2.1.0" + "@npmcli/move-file" "^2.0.0" + chownr "^2.0.0" + fs-minipass "^2.1.0" + glob "^8.0.1" + infer-owner "^1.0.4" + lru-cache "^7.7.1" + minipass "^3.1.6" + minipass-collect "^1.0.2" + minipass-flush "^1.0.5" + minipass-pipeline "^1.2.4" + mkdirp "^1.0.4" + p-map "^4.0.0" + promise-inflight "^1.0.1" + rimraf "^3.0.2" + ssri "^9.0.0" + tar "^6.1.11" + unique-filename "^2.0.0" + cache-base@^1.0.1: version "1.0.1" resolved "https://registry.yarnpkg.com/cache-base/-/cache-base-1.0.1.tgz#0a7f46416831c8b662ee36fe4e7c59d76f666ab2" @@ -5377,6 +5925,14 @@ capture-exit@^2.0.0: dependencies: rsvp "^4.8.4" +cardinal@^2.1.1: + version "2.1.1" + resolved "https://registry.yarnpkg.com/cardinal/-/cardinal-2.1.1.tgz#7cc1055d822d212954d07b085dea251cc7bc5505" + integrity sha512-JSr5eOgoEymtYHBjNWyjrMqet9Am2miJhlfKNdqLp6zoeAh0KN5dRAcxlecj5mAJrmQomgiOBj35xHLrFjqBpw== + dependencies: + ansicolors "~0.3.2" + redeyed "~2.1.0" + case-sensitive-paths-webpack-plugin@^2.4.0: version "2.4.0" resolved "https://registry.yarnpkg.com/case-sensitive-paths-webpack-plugin/-/case-sensitive-paths-webpack-plugin-2.4.0.tgz#db64066c6422eed2e08cc14b986ca43796dbc6d4" @@ -5387,7 +5943,7 @@ caseless@~0.12.0: resolved "https://registry.yarnpkg.com/caseless/-/caseless-0.12.0.tgz#1b681c21ff84033c826543090689420d187151dc" integrity sha512-4tYFyifaFfGacoiObjJegolkwSU4xQNGbVgUiNYVUxbQ2x2lUsFvY4hVgVzGiIe6WLOPqycWXA40l+PWsxthUw== -chalk@^2.0.1, chalk@^2.4.1, chalk@^2.4.2: +chalk@^2.0.1, chalk@^2.3.2, chalk@^2.4.1, chalk@^2.4.2: version "2.4.2" resolved "https://registry.yarnpkg.com/chalk/-/chalk-2.4.2.tgz#cd42541677a54333cf541a49108c1432b44c9424" integrity sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ== @@ -5412,6 +5968,11 @@ chalk@^4.0.0, chalk@^4.0.2, chalk@^4.1.0, chalk@^4.1.2: ansi-styles "^4.1.0" supports-color "^7.1.0" +chalk@^5.2.0: + version "5.3.0" + resolved "https://registry.yarnpkg.com/chalk/-/chalk-5.3.0.tgz#67c20a7ebef70e7f3970a01f90fa210cb6860385" + integrity sha512-dLitG79d+GV1Nb/VYcCDFivJeK1hiukt9QjRNVOsUtTy1rR1YJsmpGGTZ3qJos+uw7WmWF4wUwBd9jxjocFC2w== + char-regex@^1.0.2: version "1.0.2" resolved "https://registry.yarnpkg.com/char-regex/-/char-regex-1.0.2.tgz#d744358226217f981ed58f479b1d6bcc29545dcf" @@ -5482,6 +6043,11 @@ chownr@^1.1.4: resolved "https://registry.yarnpkg.com/chownr/-/chownr-1.1.4.tgz#6fc9d7b42d32a583596337666e7d08084da2cc6b" integrity sha512-jJ0bqzaylmJtVnNgzTeSOs8DPavpbYgEr/b0YL8/2GO3xJEhInFmhKMUnEJQjZumK7KXGFhUy89PrsJWlakBVg== +chownr@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/chownr/-/chownr-2.0.0.tgz#15bfbe53d2eab4cf70f18a8cd68ebe5b3cb1dece" + integrity sha512-bIomtDF5KGpdogkLd9VspvFzk9KfpyyGlS8YFVZl7TGPBHL5snIOnxeshwVgPteQ9b4Eydl+pVbIyE1DcvCWgQ== + chrome-trace-event@^1.0.2: version "1.0.3" resolved "https://registry.yarnpkg.com/chrome-trace-event/-/chrome-trace-event-1.0.3.tgz#1015eced4741e15d06664a957dbbf50d041e26ac" @@ -5497,6 +6063,13 @@ ci-info@^3.2.0: resolved "https://registry.yarnpkg.com/ci-info/-/ci-info-3.8.0.tgz#81408265a5380c929f0bc665d62256628ce9ef91" integrity sha512-eXTggHWSooYhq49F2opQhuHWgzucfF2YgODK4e1566GQs5BIfP30B0oenwBJHfWxAs2fyPB1s7Mg949zLf61Yw== +cidr-regex@^3.1.1: + version "3.1.1" + resolved "https://registry.yarnpkg.com/cidr-regex/-/cidr-regex-3.1.1.tgz#ba1972c57c66f61875f18fd7dd487469770b571d" + integrity sha512-RBqYd32aDwbCMFJRL6wHOlDNYJsPNTt8vC82ErHF5vKt8QQzxm1FrkW8s/R5pVrXMf17sba09Uoy91PKiddAsw== + dependencies: + ip-regex "^4.1.0" + cipher-base@^1.0.0, cipher-base@^1.0.1, cipher-base@^1.0.3: version "1.0.4" resolved "https://registry.yarnpkg.com/cipher-base/-/cipher-base-1.0.4.tgz#8760e4ecc272f4c363532f926d874aae2c1397de" @@ -5542,11 +6115,26 @@ clean-stack@^2.0.0: resolved "https://registry.yarnpkg.com/clean-stack/-/clean-stack-2.2.0.tgz#ee8472dbb129e727b31e8a10a427dee9dfe4008b" integrity sha512-4diC9HaTE+KRAMWhDhrGOECgWZxoevMc5TlkObMqNSsVU62PYzXZ/SMTjzyGAFF1YusgxGcSWTEXBhp0CPwQ1A== +clean-stack@^4.0.0: + version "4.2.0" + resolved "https://registry.yarnpkg.com/clean-stack/-/clean-stack-4.2.0.tgz#c464e4cde4ac789f4e0735c5d75beb49d7b30b31" + integrity sha512-LYv6XPxoyODi36Dp976riBtSY27VmFo+MKqEU9QCCWyTrdEPDog+RWA7xQWHi6Vbp61j5c4cdzzX1NidnwtUWg== + dependencies: + escape-string-regexp "5.0.0" + cli-boxes@^2.2.0: version "2.2.1" resolved "https://registry.yarnpkg.com/cli-boxes/-/cli-boxes-2.2.1.tgz#ddd5035d25094fce220e9cab40a45840a440318f" integrity sha512-y4coMcylgSCdVinjiDBuR8PCC2bLjyGTwEmPb9NHR/QaNU6EUOXcTY/s6VjGMD6ENSEaeQYHCY0GNGS5jfMwPw== +cli-columns@^4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/cli-columns/-/cli-columns-4.0.0.tgz#9fe4d65975238d55218c41bd2ed296a7fa555646" + integrity sha512-XW2Vg+w+L9on9wtwKpyzluIPCWXjaBahI7mTcYjx+BVIYD9c3yqcv/yKC7CmdCZat4rq2yiE1UMSJC5ivKfMtQ== + dependencies: + string-width "^4.2.3" + strip-ansi "^6.0.1" + cli-cursor@^3.1.0: version "3.1.0" resolved "https://registry.yarnpkg.com/cli-cursor/-/cli-cursor-3.1.0.tgz#264305a7ae490d1d03bf0c9ba7c925d1753af307" @@ -5554,6 +6142,15 @@ cli-cursor@^3.1.0: dependencies: restore-cursor "^3.1.0" +cli-table3@^0.6.2, cli-table3@^0.6.3: + version "0.6.5" + resolved "https://registry.yarnpkg.com/cli-table3/-/cli-table3-0.6.5.tgz#013b91351762739c16a9567c21a04632e449bf2f" + integrity sha512-+W/5efTR7y5HRD7gACw9yQjqMVvEMLBHmboM/kPWam+H+Hmyrgjh6YncVKK122YZkXrLudzTuAukUw9FnMf7IQ== + dependencies: + string-width "^4.2.0" + optionalDependencies: + "@colors/colors" "1.5.0" + cli-table3@~0.6.1: version "0.6.3" resolved "https://registry.yarnpkg.com/cli-table3/-/cli-table3-0.6.3.tgz#61ab765aac156b52f222954ffc607a6f01dbeeb2" @@ -5594,6 +6191,15 @@ cliui@^7.0.2: strip-ansi "^6.0.0" wrap-ansi "^7.0.0" +cliui@^8.0.1: + version "8.0.1" + resolved "https://registry.yarnpkg.com/cliui/-/cliui-8.0.1.tgz#0c04b075db02cbfe60dc8e6cf2f5486b1a3608aa" + integrity sha512-BSeNnyus75C4//NQ9gQt1/csTXyo/8Sb+afLAkzAptFuMsod9HFokGNudZpi/oQV73hnVK+sR+5PVRMd+Dr7YQ== + dependencies: + string-width "^4.2.0" + strip-ansi "^6.0.1" + wrap-ansi "^7.0.0" + clone-buffer@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/clone-buffer/-/clone-buffer-1.0.0.tgz#e3e25b207ac4e701af721e2cb5a16792cac3dc58" @@ -5620,6 +6226,11 @@ clone-stats@^1.0.0: resolved "https://registry.yarnpkg.com/clone-stats/-/clone-stats-1.0.0.tgz#b3782dff8bb5474e18b9b6bf0fdfe782f8777680" integrity sha512-au6ydSpg6nsrigcZ4m8Bc9hxjeW+GJ8xh5G3BJCMt4WXe1H10UNaVOamqQTmrx1kjVuxAHIQSNU6hY4Nsn9/ag== +clone@^1.0.2: + version "1.0.4" + resolved "https://registry.yarnpkg.com/clone/-/clone-1.0.4.tgz#da309cc263df15994c688ca902179ca3c7cd7c7e" + integrity sha512-JQHZ2QMW6l3aH/j6xCqQThY/9OH4D/9ls34cgkUBiEeocRTU04tHfKPBsUK1PqZCUQM7GiA0IIXJSuXHI64Kbg== + clone@^2.1.1: version "2.1.2" resolved "https://registry.yarnpkg.com/clone/-/clone-2.1.2.tgz#1b7f4b9f591f1e8f83670401600345a02887435f" @@ -5634,6 +6245,13 @@ cloneable-readable@^1.0.0: process-nextick-args "^2.0.0" readable-stream "^2.3.5" +cmd-shim@^5.0.0: + version "5.0.0" + resolved "https://registry.yarnpkg.com/cmd-shim/-/cmd-shim-5.0.0.tgz#8d0aaa1a6b0708630694c4dbde070ed94c707724" + integrity sha512-qkCtZ59BidfEwHltnJwkyVZn+XQojdAySM1D1gSeh11Z4pW1Kpolkyo53L5noc0nrxmIvyFwTmJRo4xs7FFLPw== + dependencies: + mkdirp-infer-owner "^2.0.0" + co@^4.6.0: version "4.6.0" resolved "https://registry.yarnpkg.com/co/-/co-4.6.0.tgz#6ea6bdf3d853ae54ccb8e47bfa0bf3f9031fb184" @@ -5698,6 +6316,11 @@ color-name@^1.1.4, color-name@~1.1.4: resolved "https://registry.yarnpkg.com/color-name/-/color-name-1.1.4.tgz#c2a09a87acbde69543de6f63fa3995c826c536a2" integrity sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA== +color-support@^1.1.3: + version "1.1.3" + resolved "https://registry.yarnpkg.com/color-support/-/color-support-1.1.3.tgz#93834379a1cc9a0c61f82f52f0d04322251bd5a2" + integrity sha512-qiBjkpbMLO/HL68y+lh4q0/O1MZFj2RX6X/KmMa3+gJD3z+WwI1ZzDHysvqHGS3mP6mznPckpXmw1nI9cJjyRg== + colord@^2.9.1: version "2.9.3" resolved "https://registry.yarnpkg.com/colord/-/colord-2.9.3.tgz#4f8ce919de456f1d5c1c368c307fe20f3e59fb43" @@ -5713,6 +6336,14 @@ colors@^1.1.2: resolved "https://registry.yarnpkg.com/colors/-/colors-1.4.0.tgz#c50491479d4c1bdaed2c9ced32cf7c7dc2360f78" integrity sha512-a+UqTh4kgZg/SlGvfbzDHpgRu7AAQOmmqRHJnxhRZICKFUT91brVhNNt58CMWU9PsBbv3PDCZUHbVxuDiH2mtA== +columnify@^1.6.0: + version "1.6.0" + resolved "https://registry.yarnpkg.com/columnify/-/columnify-1.6.0.tgz#6989531713c9008bb29735e61e37acf5bd553cf3" + integrity sha512-lomjuFZKfM6MSAnV9aCZC9sc0qGbmZdfygNv+nCpqVkSKdCxCklLtd16O0EILGkImHw9ZpHkAnHaB+8Zxq5W6Q== + dependencies: + strip-ansi "^6.0.1" + wcwidth "^1.0.0" + combine-source-map@^0.8.0, combine-source-map@~0.8.0: version "0.8.0" resolved "https://registry.yarnpkg.com/combine-source-map/-/combine-source-map-0.8.0.tgz#a58d0df042c186fcf822a8e8015f5450d2d79a8b" @@ -5755,6 +6386,11 @@ commander@^8.3.0: resolved "https://registry.yarnpkg.com/commander/-/commander-8.3.0.tgz#4837ea1b2da67b9c616a67afbb0fafee567bca66" integrity sha512-OkTL9umf+He2DZkUq8f8J9of7yL6RJKI24dVITBmNfZBmri9zYZQrKkuXiKhyfPSu8tUhnVBB1iKXevvnlR4Ww== +common-ancestor-path@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/common-ancestor-path/-/common-ancestor-path-1.0.1.tgz#4f7d2d1394d91b7abdf51871c62f71eadb0182a7" + integrity sha512-L3sHRo1pXXEqX8VU28kfgUY+YGsk09hPqZiZmLacNib6XNTCM8ubYeT7ryXQw8asB1sKgcU5lkB7ONug08aB8w== + common-path-prefix@^3.0.0: version "3.0.0" resolved "https://registry.yarnpkg.com/common-path-prefix/-/common-path-prefix-3.0.0.tgz#7d007a7e07c58c4b4d5f433131a19141b29f11e0" @@ -5833,6 +6469,14 @@ concat-stream@^1.5.1, concat-stream@^1.6.0, concat-stream@^1.6.1, concat-stream@ readable-stream "^2.2.2" typedarray "^0.0.6" +config-chain@^1.1.11: + version "1.1.13" + resolved "https://registry.yarnpkg.com/config-chain/-/config-chain-1.1.13.tgz#fad0795aa6a6cdaff9ed1b68e9dff94372c232f4" + integrity sha512-qj+f8APARXHrM0hraqXYb2/bOVSV4PvJQlNZ/DVj0QrmNM2q2euizkeuVckQ57J+W0mRH6Hvi+k50M4Jul2VRQ== + dependencies: + ini "^1.3.4" + proto-list "~1.2.1" + configstore@^4.0.0: version "4.0.0" resolved "https://registry.yarnpkg.com/configstore/-/configstore-4.0.0.tgz#5933311e95d3687efb592c528b922d9262d227e7" @@ -5860,6 +6504,11 @@ console-browserify@^1.1.0: resolved "https://registry.yarnpkg.com/console-browserify/-/console-browserify-1.2.0.tgz#67063cef57ceb6cf4993a2ab3a55840ae8c49336" integrity sha512-ZMkYO/LkF17QvCPqM0gxw8yUzigAOZOSWSHg91FH6orS7vcEj5dVZTidN2fQ14yBSdg97RqhSNwLUXInd52OTA== +console-control-strings@^1.1.0: + version "1.1.0" + resolved "https://registry.yarnpkg.com/console-control-strings/-/console-control-strings-1.1.0.tgz#3d7cf4464db6446ea644bf4b39507f9851008e8e" + integrity sha512-ty/fTekppD2fIwRvnZAVdeOiGd1c7YXEixbgJTNzqcxJWKQnjJ/V1bNEEE6hygpM3WjwHFUVK6HTjWSzV4a8sQ== + constants-browserify@~1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/constants-browserify/-/constants-browserify-1.0.0.tgz#c20b96d8c617748aaf1c16021760cd27fcb8cb75" @@ -5877,7 +6526,7 @@ content-type@~1.0.4, content-type@~1.0.5: resolved "https://registry.yarnpkg.com/content-type/-/content-type-1.0.5.tgz#8b773162656d1d1086784c8f23a54ce6d73d7918" integrity sha512-nTjqfcBFEipKdXCv4YDQWCfmcLZKm81ldF0pAopTvyrFGVbcR6P/VAAd5G7N+0tTr8QqiU0tFadD6FK4NtJwOA== -conventional-changelog-angular@^5.0.11: +conventional-changelog-angular@^5.0.0, conventional-changelog-angular@^5.0.11: version "5.0.13" resolved "https://registry.yarnpkg.com/conventional-changelog-angular/-/conventional-changelog-angular-5.0.13.tgz#896885d63b914a70d4934b59d2fe7bde1832b28c" integrity sha512-i/gipMxs7s8L/QeuavPF2hLnJgH6pEZAttySB6aiQLWcX3puWDL3ACVmvBhJGxnAy52Qc15ua26BufY6KpmrVA== @@ -5894,7 +6543,30 @@ conventional-changelog-conventionalcommits@^4.3.1: lodash "^4.17.15" q "^1.5.1" -conventional-commits-parser@^3.0.0: +conventional-changelog-writer@^5.0.0: + version "5.0.1" + resolved "https://registry.yarnpkg.com/conventional-changelog-writer/-/conventional-changelog-writer-5.0.1.tgz#e0757072f045fe03d91da6343c843029e702f359" + integrity sha512-5WsuKUfxW7suLblAbFnxAcrvf6r+0b7GvNaWUwUIk0bXMnENP/PEieGKVUQrjPqwPT4o3EPAASBXiY6iHooLOQ== + dependencies: + conventional-commits-filter "^2.0.7" + dateformat "^3.0.0" + handlebars "^4.7.7" + json-stringify-safe "^5.0.1" + lodash "^4.17.15" + meow "^8.0.0" + semver "^6.0.0" + split "^1.0.0" + through2 "^4.0.0" + +conventional-commits-filter@^2.0.0, conventional-commits-filter@^2.0.7: + version "2.0.7" + resolved "https://registry.yarnpkg.com/conventional-commits-filter/-/conventional-commits-filter-2.0.7.tgz#f8d9b4f182fce00c9af7139da49365b136c8a0b3" + integrity sha512-ASS9SamOP4TbCClsRHxIHXRfcGCnIoQqkvAzCSbZzTFLfcTqJVugB0agRgsEELsqaeWgsXv513eS116wnlSSPA== + dependencies: + lodash.ismatch "^4.4.0" + modify-values "^1.0.0" + +conventional-commits-parser@^3.0.0, conventional-commits-parser@^3.2.3: version "3.2.4" resolved "https://registry.yarnpkg.com/conventional-commits-parser/-/conventional-commits-parser-3.2.4.tgz#a7d3b77758a202a9b2293d2112a8d8052c740972" integrity sha512-nK7sAtfi+QXbxHCYfhpZsfRtaitZLIA6889kFIouLvz6repszQDgxBu7wf2WbU+Dco7sAnNCJYERCwt54WPC2Q== @@ -5992,6 +6664,16 @@ cosmiconfig@^7.0.0: path-type "^4.0.0" yaml "^1.10.0" +cosmiconfig@^8.0.0: + version "8.3.6" + resolved "https://registry.yarnpkg.com/cosmiconfig/-/cosmiconfig-8.3.6.tgz#060a2b871d66dba6c8538ea1118ba1ac16f5fae3" + integrity sha512-kcZ6+W5QzcJ3P1Mt+83OUv/oHFqZHIx8DuxG6eZ5RGMERoLqp4BuGjhHLYGK+Kf5XVkQvqBSmAy/nGWN3qDgEA== + dependencies: + import-fresh "^3.3.0" + js-yaml "^4.1.0" + parse-json "^5.2.0" + path-type "^4.0.0" + crc32-stream@^3.0.1: version "3.0.1" resolved "https://registry.yarnpkg.com/crc32-stream/-/crc32-stream-3.0.1.tgz#cae6eeed003b0e44d739d279de5ae63b171b4e85" @@ -6475,6 +7157,11 @@ data-view-byte-offset@^1.0.0: es-errors "^1.3.0" is-data-view "^1.0.1" +dateformat@^3.0.0: + version "3.0.3" + resolved "https://registry.yarnpkg.com/dateformat/-/dateformat-3.0.3.tgz#a6e37499a4d9a9cf85ef5872044d62901c9889ae" + integrity sha512-jyCETtSl3VMZMWeRo7iY1FL19ges1t55hMo5yaam4Jrsm5EPL89UQkoQRyiI+Yf4k8r2ZpdngkV8hr1lIdjb3Q== + dayjs@^1.10.4: version "1.11.7" resolved "https://registry.yarnpkg.com/dayjs/-/dayjs-1.11.7.tgz#4b296922642f70999544d1144a2c25730fce63e2" @@ -6515,6 +7202,18 @@ debug@^3.1.0, debug@^3.2.7: dependencies: ms "^2.1.1" +debug@^4.0.0, debug@^4.3.3: + version "4.3.6" + resolved "https://registry.yarnpkg.com/debug/-/debug-4.3.6.tgz#2ab2c38fbaffebf8aa95fdfe6d88438c7a13c52b" + integrity sha512-O/09Bd4Z1fBrU4VzkhFqVgpPzaGbw6Sm9FEkBT1A/YBXQFGuuSxa1dN2nxgxS34JmKXqYx8CZAwEVoJFImUXIg== + dependencies: + ms "2.1.2" + +debuglog@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/debuglog/-/debuglog-1.0.1.tgz#aa24ffb9ac3df9a2351837cfb2d279360cd78492" + integrity sha512-syBZ+rnAK3EgMsH2aYEOLUW7mZSY9Gb+0wUMCFsZvcmiz+HigA0LOcq/HoQqVuGG+EKykunc7QG2bzrponfaSw== + decamelize-keys@^1.1.0: version "1.1.0" resolved "https://registry.yarnpkg.com/decamelize-keys/-/decamelize-keys-1.1.0.tgz#d171a87933252807eb3cb61dc1c1445d078df2d9" @@ -6610,6 +7309,13 @@ default-gateway@^6.0.3: dependencies: execa "^5.0.0" +defaults@^1.0.3: + version "1.0.4" + resolved "https://registry.yarnpkg.com/defaults/-/defaults-1.0.4.tgz#b0b02062c1e2aa62ff5d9528f0f98baa90978d7a" + integrity sha512-eFuaLoy/Rxalv2kr+lqMlUnrDWV+3j4pljOIJgLIhI058IQfWJ7vXhyEIHu+HtC738klGALYxOKDO0bQP3tg8A== + dependencies: + clone "^1.0.2" + defer-to-connect@^1.0.1: version "1.1.3" resolved "https://registry.yarnpkg.com/defer-to-connect/-/defer-to-connect-1.1.3.tgz#331ae050c08dcf789f8c83a7b81f0ed94f4ac591" @@ -6665,11 +7371,30 @@ defined@^1.0.0: resolved "https://registry.yarnpkg.com/defined/-/defined-1.0.1.tgz#c0b9db27bfaffd95d6f61399419b893df0f91ebf" integrity sha512-hsBd2qSVCRE+5PmNdHt1uzyrFu5d3RwmFDKzyNZMFq/EwDNJF7Ee5+D5oEKF0hU6LhtoUF1macFvOe4AskQC1Q== +del@^6.0.0: + version "6.1.1" + resolved "https://registry.yarnpkg.com/del/-/del-6.1.1.tgz#3b70314f1ec0aa325c6b14eb36b95786671edb7a" + integrity sha512-ua8BhapfP0JUJKC/zV9yHHDW/rDoDxP4Zhn3AkA6/xT6gY7jYXJiaeyBZznYVujhZZET+UgcbZiQ7sN3WqcImg== + dependencies: + globby "^11.0.1" + graceful-fs "^4.2.4" + is-glob "^4.0.1" + is-path-cwd "^2.2.0" + is-path-inside "^3.0.2" + p-map "^4.0.0" + rimraf "^3.0.2" + slash "^3.0.0" + delayed-stream@~1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/delayed-stream/-/delayed-stream-1.0.0.tgz#df3ae199acadfb7d440aaae0b29e2272b24ec619" integrity sha512-ZySD7Nf91aLB0RxL4KGrKHBXl7Eds1DAmEdcoVawXnLD7SDhpNgtuII2aAkg7a7QS41jxPSZ17p4VdGnMHk3MQ== +delegates@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/delegates/-/delegates-1.0.0.tgz#84c6e159b81904fdca59a0ef44cd870d31250f9a" + integrity sha512-bd2L678uiWATM6m5Z1VzNCErI3jiGzt6HGY8OVICs40JQq/HALfbyNJmp0UDakEY4pMMaN0Ly5om/B1VI/+xfQ== + depd@2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/depd/-/depd-2.0.0.tgz#b696163cc757560d09cf22cc8fad1571b79e76df" @@ -6680,6 +7405,11 @@ depd@~1.1.2: resolved "https://registry.yarnpkg.com/depd/-/depd-1.1.2.tgz#9bcd52e14c097763e749b274c4346ed2e560b5a9" integrity sha512-7emPTl6Dpo6JRXOXjLRxck+FlLRX5847cLKEn00PLAgc3g2hTZZgr+e4c2v6QpSmLeFP3n5yUo7ft6avBK/5jQ== +deprecation@^2.0.0: + version "2.3.1" + resolved "https://registry.yarnpkg.com/deprecation/-/deprecation-2.3.1.tgz#6368cbdb40abf3373b525ac87e4a260c3a700919" + integrity sha512-xmHIy4F3scKVwMsQ4WnVaS8bHOx0DmVwRywosKhaILI0ywMDWPtBSku2HNxRvF7jtwDRsoEwYQSfbxj8b7RlJQ== + deps-sort@^2.0.0, deps-sort@^2.0.1: version "2.0.1" resolved "https://registry.yarnpkg.com/deps-sort/-/deps-sort-2.0.1.tgz#9dfdc876d2bcec3386b6829ac52162cda9fa208d" @@ -6738,6 +7468,14 @@ detective@^5.2.0, detective@^5.2.1: defined "^1.0.0" minimist "^1.2.6" +dezalgo@^1.0.0: + version "1.0.4" + resolved "https://registry.yarnpkg.com/dezalgo/-/dezalgo-1.0.4.tgz#751235260469084c132157dfa857f386d4c33d81" + integrity sha512-rXSP0bf+5n0Qonsb+SVVfNfIsimO4HEtmnIpPHY8Q1UCzKlQrDMfdobr8nJOOsRgWCyMRqeSBQzmWUMq7zvVig== + dependencies: + asap "^2.0.0" + wrappy "1" + didyoumean@^1.2.2: version "1.2.2" resolved "https://registry.yarnpkg.com/didyoumean/-/didyoumean-1.2.2.tgz#989346ffe9e839b4555ecf5666edea0d3e8ad037" @@ -6758,6 +7496,11 @@ diff@5.0.0: resolved "https://registry.yarnpkg.com/diff/-/diff-5.0.0.tgz#7ed6ad76d859d030787ec35855f5b1daf31d852b" integrity sha512-/VTCrvm5Z0JGty/BWHljh+BAiw3IK+2j87NGMu8Nwc/f48WoDAC395uomO9ZD117ZOBaHmkX1oyLvkVM/aIT3w== +diff@^5.1.0: + version "5.2.0" + resolved "https://registry.yarnpkg.com/diff/-/diff-5.2.0.tgz#26ded047cd1179b78b9537d5ef725503ce1ae531" + integrity sha512-uIFDxqpRZGZ6ThOk84hEfqWoHx2devRFvpTZcTHur85vImfaxUbTW9Ryh4CpCuDnToOP1CEtXKIgytHBPVff5A== + diffie-hellman@^5.0.0: version "5.0.3" resolved "https://registry.yarnpkg.com/diffie-hellman/-/diffie-hellman-5.0.3.tgz#40e8ee98f55a2149607146921c63e1ae5f3d2875" @@ -6767,7 +7510,7 @@ diffie-hellman@^5.0.0: miller-rabin "^4.0.0" randombytes "^2.0.0" -dir-glob@^3.0.1: +dir-glob@^3.0.0, dir-glob@^3.0.1: version "3.0.1" resolved "https://registry.yarnpkg.com/dir-glob/-/dir-glob-3.0.1.tgz#56dbf73d992a4a93ba1584f4534063fd2e41717f" integrity sha512-WkrWp9GR4KXfKGYzOLmTuGVi1UWFfws377n9cc55/tb6DuqyF6pcQ5AbiHEshaDpY9v6oaSr2XCDidGmMwdzIA== @@ -7072,7 +7815,7 @@ encodeurl@~1.0.2: resolved "https://registry.yarnpkg.com/encodeurl/-/encodeurl-1.0.2.tgz#ad3ff4c86ec2d029322f5a02c3a9a606c95b3f59" integrity sha512-TPJXq8JqFaVYm2CWmPvnP2Iyo4ZSM7/QKcSmuMLDObfpH5fi7RUGmd/rTDf+rut/saiDiQEeVTNgAmJEdAOx0w== -encoding@^0.1.12: +encoding@^0.1.12, encoding@^0.1.13: version "0.1.13" resolved "https://registry.yarnpkg.com/encoding/-/encoding-0.1.13.tgz#56574afdd791f54a8e9b2785c0582a2d26210fa9" integrity sha512-ETBauow1T35Y/WZMkio9jiM0Z5xjHHmJ4XmjZOq1l/dXz3lr2sRn87nJy20RupqSh1F2m3HHPSp8ShIPQJrJ3A== @@ -7121,10 +7864,23 @@ entities@~3.0.1: resolved "https://registry.yarnpkg.com/entities/-/entities-3.0.1.tgz#2b887ca62585e96db3903482d336c1006c3001d4" integrity sha512-WiyBqoomrwMdFG1e0kqvASYfnlb0lp8M5o5Fw2OFq1hNZxxcNk8Ik0Xm7LxzBhuidnZB/UtBqVCgUz3kBOP51Q== -enzyme-adapter-react-16@^1.15.8: - version "1.15.8" - resolved "https://registry.yarnpkg.com/enzyme-adapter-react-16/-/enzyme-adapter-react-16-1.15.8.tgz#1aecb5daadaae33d32c5b8b78566d7cf45dc49d8" - integrity sha512-uYGC31eGZBp5nGsr4nKhZKvxGQjyHGjS06BJsUlWgE29/hvnpgCsT1BJvnnyny7N3GIIVyxZ4O9GChr6hy2WQA== +env-ci@^8.0.0: + version "8.0.0" + resolved "https://registry.yarnpkg.com/env-ci/-/env-ci-8.0.0.tgz#97a6605c6639b2a74c74b1557500bc152c1c6e7e" + integrity sha512-W+3BqGZozFua9MPeXpmTm5eYEBtGgL76jGu/pwMVp/L8PdECSCEWaIp7d4Mw7kuUrbUldK0oV0bNd6ZZjLiMiA== + dependencies: + execa "^6.1.0" + java-properties "^1.0.2" + +env-paths@^2.2.0: + version "2.2.1" + resolved "https://registry.yarnpkg.com/env-paths/-/env-paths-2.2.1.tgz#420399d416ce1fbe9bc0a07c62fa68d67fd0f8f2" + integrity sha512-+h1lkLKhZMTYjog1VEpJNG7NZJWcuc2DDk/qsqSTRRCOXiLjeQ1d1/udrUGhqMxUgAlwKNZ0cf2uqan5GLuS2A== + +enzyme-adapter-react-16@^1.15.8: + version "1.15.8" + resolved "https://registry.yarnpkg.com/enzyme-adapter-react-16/-/enzyme-adapter-react-16-1.15.8.tgz#1aecb5daadaae33d32c5b8b78566d7cf45dc49d8" + integrity sha512-uYGC31eGZBp5nGsr4nKhZKvxGQjyHGjS06BJsUlWgE29/hvnpgCsT1BJvnnyny7N3GIIVyxZ4O9GChr6hy2WQA== dependencies: enzyme-adapter-utils "^1.14.2" enzyme-shallow-equal "^1.0.7" @@ -7207,6 +7963,11 @@ eol@^0.9.1: resolved "https://registry.yarnpkg.com/eol/-/eol-0.9.1.tgz#f701912f504074be35c6117a5c4ade49cd547acd" integrity sha512-Ds/TEoZjwggRoz/Q2O7SE3i4Jm66mqTDfmdHdq/7DKVk3bro9Q8h6WdXKdPqFLMoqxrDK5SVRzHVPOS6uuGtrg== +err-code@^2.0.2: + version "2.0.3" + resolved "https://registry.yarnpkg.com/err-code/-/err-code-2.0.3.tgz#23c2f3b756ffdfc608d30e27c9a941024807e7f9" + integrity sha512-2bmlRpNKBxT/CRmPOlyISQpNj+qSeYvcym/uT0Jx2bMOlKLtSy1ZmLuVxSEKKyor/N5yhvp/ZiG1oE3DEYMSFA== + errlop@^2.0.0: version "2.2.0" resolved "https://registry.yarnpkg.com/errlop/-/errlop-2.2.0.tgz#1ff383f8f917ae328bebb802d6ca69666a42d21b" @@ -7366,6 +8127,11 @@ escape-string-regexp@4.0.0, escape-string-regexp@^4.0.0: resolved "https://registry.yarnpkg.com/escape-string-regexp/-/escape-string-regexp-4.0.0.tgz#14ba83a5d373e3d311e5afca29cf5bfad965bf34" integrity sha512-TtpcNJ3XAzx3Gq8sWRzJaVajRs0uVxA2YAkdb1jm2YkPz4G6egUFAyA3n5vtEIZefPk5Wa4UXbKuS5fKkJWdgA== +escape-string-regexp@5.0.0, escape-string-regexp@^5.0.0: + version "5.0.0" + resolved "https://registry.yarnpkg.com/escape-string-regexp/-/escape-string-regexp-5.0.0.tgz#4683126b500b61762f2dbebace1806e8be31b1c8" + integrity sha512-/veY75JbMK4j1yjvuUxuVsiS/hr/4iHs9FTT6cgTexxdE0Ly/glccBAkloH/DofkjRbZU3bnoj38mOmhkZ0lHw== + escape-string-regexp@^1.0.5: version "1.0.5" resolved "https://registry.yarnpkg.com/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz#1b61c0562190a8dff6ae3bb2cf0200ca130b86d4" @@ -7848,6 +8614,36 @@ execa@^1.0.0: signal-exit "^3.0.0" strip-eof "^1.0.0" +execa@^6.1.0: + version "6.1.0" + resolved "https://registry.yarnpkg.com/execa/-/execa-6.1.0.tgz#cea16dee211ff011246556388effa0818394fb20" + integrity sha512-QVWlX2e50heYJcCPG0iWtf8r0xjEYfz/OYLGDYH+IyjWezzPNxz63qNFOu0l4YftGWuizFVZHHs8PrLU5p2IDA== + dependencies: + cross-spawn "^7.0.3" + get-stream "^6.0.1" + human-signals "^3.0.1" + is-stream "^3.0.0" + merge-stream "^2.0.0" + npm-run-path "^5.1.0" + onetime "^6.0.0" + signal-exit "^3.0.7" + strip-final-newline "^3.0.0" + +execa@^7.0.0: + version "7.2.0" + resolved "https://registry.yarnpkg.com/execa/-/execa-7.2.0.tgz#657e75ba984f42a70f38928cedc87d6f2d4fe4e9" + integrity sha512-UduyVP7TLB5IcAQl+OzLyLcS/l32W/GLg+AhHJ+ow40FOk2U3SAllPwR44v4vmdFwIWqpdwxxpQbF1n5ta9seA== + dependencies: + cross-spawn "^7.0.3" + get-stream "^6.0.1" + human-signals "^4.3.0" + is-stream "^3.0.0" + merge-stream "^2.0.0" + npm-run-path "^5.1.0" + onetime "^6.0.0" + signal-exit "^3.0.7" + strip-final-newline "^3.0.0" + executable@^4.1.1: version "4.1.1" resolved "https://registry.yarnpkg.com/executable/-/executable-4.1.1.tgz#41532bff361d3e57af4d763b70582db18f5d133c" @@ -7894,6 +8690,11 @@ expect@^29.0.0: jest-message-util "^29.2.1" jest-util "^29.2.1" +exponential-backoff@^3.1.1: + version "3.1.1" + resolved "https://registry.yarnpkg.com/exponential-backoff/-/exponential-backoff-3.1.1.tgz#64ac7526fe341ab18a39016cd22c787d01e00bf6" + integrity sha512-dX7e/LHVJ6W3DE1MHWi9S1EYzDESENfLrYohG2G++ovZrYOkm4Knwa0mc1cn84xJOR4KEU0WSchhLbd0UklbHw== + express@^4.17.3: version "4.19.2" resolved "https://registry.yarnpkg.com/express/-/express-4.19.2.tgz#e25437827a3aa7f2a827bc8171bbbb664a356465" @@ -8026,6 +8827,11 @@ fast-safe-stringify@^2.0.7: resolved "https://registry.yarnpkg.com/fast-safe-stringify/-/fast-safe-stringify-2.1.1.tgz#c406a83b6e70d9e35ce3b30a81141df30aeba884" integrity sha512-W+KJc2dmILlPplD/H4K9l9LcAHAfPtP6BY84uVLXQ6Evcz9Lcg33Y2z1IVblT6xdY54PXYVHEv+0Wpq8Io6zkA== +fastest-levenshtein@^1.0.12: + version "1.0.16" + resolved "https://registry.yarnpkg.com/fastest-levenshtein/-/fastest-levenshtein-1.0.16.tgz#210e61b6ff181de91ea9b3d1b84fdedd47e034e5" + integrity sha512-eRnCtTTtGZFpQCwhJiUOuxPQWRXVKYDn0b2PeHfXL6/Zi53SLAzAHfVhVWK2AryC/WH05kGfxhFIPvTF0SXQzg== + fastq@^1.6.0: version "1.13.0" resolved "https://registry.yarnpkg.com/fastq/-/fastq-1.13.0.tgz#616760f88a7526bdfc596b7cab8c18938c36b98c" @@ -8054,6 +8860,13 @@ fd-slicer@~1.1.0: dependencies: pend "~1.2.0" +figures@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/figures/-/figures-2.0.0.tgz#3ab1a2d2a62c8bfb431a0c94cb797a2fce27c962" + integrity sha512-Oa2M9atig69ZkfwiApY8F2Yy+tzMbazyvqv21R0NsSC8floSOC09BbT1ITWAdoMGQvJ/aZnR1KMwdx9tvHnTNA== + dependencies: + escape-string-regexp "^1.0.5" + figures@^3.0.0, figures@^3.2.0: version "3.2.0" resolved "https://registry.yarnpkg.com/figures/-/figures-3.2.0.tgz#625c18bd293c604dc4a8ddb2febf0c88341746af" @@ -8061,6 +8874,14 @@ figures@^3.0.0, figures@^3.2.0: dependencies: escape-string-regexp "^1.0.5" +figures@^5.0.0: + version "5.0.0" + resolved "https://registry.yarnpkg.com/figures/-/figures-5.0.0.tgz#126cd055052dea699f8a54e8c9450e6ecfc44d5f" + integrity sha512-ej8ksPF4x6e5wvK9yevct0UCXh8TTFlWGVLlgjZuoBH1HwjIfKE/IdL5mq89sFA7zELi1VhKpmtDnrs7zWyeyg== + dependencies: + escape-string-regexp "^5.0.0" + is-unicode-supported "^1.2.0" + file-entry-cache@^6.0.1: version "6.0.1" resolved "https://registry.yarnpkg.com/file-entry-cache/-/file-entry-cache-6.0.1.tgz#211b2dd9659cb0394b073e7323ac3c933d522027" @@ -8110,6 +8931,13 @@ fill-range@^7.0.1: dependencies: to-regex-range "^5.0.1" +fill-range@^7.1.1: + version "7.1.1" + resolved "https://registry.yarnpkg.com/fill-range/-/fill-range-7.1.1.tgz#44265d3cac07e3ea7dc247516380643754a05292" + integrity sha512-YsGpe3WHLK8ZYi4tWDg2Jy3ebRz2rXowDxnld4bkQB00cc/1Zw9AWnC0i9ztDJitivtQvaI9KaLyKrc+hBW0yg== + dependencies: + to-regex-range "^5.0.1" + filter-obj@^1.1.0: version "1.1.0" resolved "https://registry.yarnpkg.com/filter-obj/-/filter-obj-1.1.0.tgz#9b311112bc6c6127a16e016c6c5d7f19e0805c5b" @@ -8161,6 +8989,13 @@ find-up@5.0.0, find-up@^5.0.0: locate-path "^6.0.0" path-exists "^4.0.0" +find-up@^2.0.0: + version "2.1.0" + resolved "https://registry.yarnpkg.com/find-up/-/find-up-2.1.0.tgz#45d1b7e506c717ddd482775a2b77920a3c0c57a7" + integrity sha512-NWzkk0jSJtTt08+FBFMvXoeZnOJD+jTtsRmBYbAIzJdX6l7dLgR7CTubCM5/eDdPUBvLCeVasP1brfVR/9/EZQ== + dependencies: + locate-path "^2.0.0" + find-up@^3.0.0: version "3.0.0" resolved "https://registry.yarnpkg.com/find-up/-/find-up-3.0.0.tgz#49169f1d7993430646da61ecc5ae355c21c97b73" @@ -8176,6 +9011,21 @@ find-up@^4.0.0, find-up@^4.1.0: locate-path "^5.0.0" path-exists "^4.0.0" +find-up@^6.3.0: + version "6.3.0" + resolved "https://registry.yarnpkg.com/find-up/-/find-up-6.3.0.tgz#2abab3d3280b2dc7ac10199ef324c4e002c8c790" + integrity sha512-v2ZsoEuVHYy8ZIlYqwPe/39Cy+cFDzp4dXPaxNvkEuouymu+2Jbz0PxpKarJHYJTmv2HWT3O382qY8l4jMWthw== + dependencies: + locate-path "^7.1.0" + path-exists "^5.0.0" + +find-versions@^5.1.0: + version "5.1.0" + resolved "https://registry.yarnpkg.com/find-versions/-/find-versions-5.1.0.tgz#973f6739ce20f5e439a27eba8542a4b236c8e685" + integrity sha512-+iwzCJ7C5v5KgcBuueqVoNiHVoQpwiUK5XFLjf0affFTep+Wcw93tPvmb8tqujDNmzhBDPddnWV/qgWSXgq+Hg== + dependencies: + semver-regex "^4.0.5" + flat-cache@^3.0.4: version "3.0.4" resolved "https://registry.yarnpkg.com/flat-cache/-/flat-cache-3.0.4.tgz#61b0338302b2fe9f957dcc32fc2a87f1c3048b11" @@ -8297,6 +9147,14 @@ fresh@0.5.2: resolved "https://registry.yarnpkg.com/fresh/-/fresh-0.5.2.tgz#3d8cadd90d976569fa835ab1f8e4b23a105605a7" integrity sha512-zJ2mQYM18rEFOudeV4GShTGIQ7RbzA7ozbU9I/XBpm7kqgMywgmylMwXHxZJmkVoYkna9d2pVXVXPdYTP9ej8Q== +from2@^2.3.0: + version "2.3.0" + resolved "https://registry.yarnpkg.com/from2/-/from2-2.3.0.tgz#8bfb5502bde4a4d36cfdeea007fcca21d7e382af" + integrity sha512-OMcX/4IC/uqEPVgGeyfN22LJk6AZrMkRZHxcHBMBvHScDGgwTm2GT2Wkgtocyd3JfZffjj2kYUDXXII0Fk9W0g== + dependencies: + inherits "^2.0.1" + readable-stream "^2.0.0" + from@~0: version "0.1.7" resolved "https://registry.yarnpkg.com/from/-/from-0.1.7.tgz#83c60afc58b9c56997007ed1a768b3ab303a44fe" @@ -8316,6 +9174,15 @@ fs-extra@^10.0.0: jsonfile "^6.0.1" universalify "^2.0.0" +fs-extra@^11.0.0: + version "11.2.0" + resolved "https://registry.yarnpkg.com/fs-extra/-/fs-extra-11.2.0.tgz#e70e17dfad64232287d01929399e0ea7c86b0e5b" + integrity sha512-PmDi3uwK5nFuXh7XDTlVnS17xJS7vW36is2+w3xcv8SVxiB4NyATf4ctkVY5bkSjX0Y4nbvZCq1/EjtEyr9ktw== + dependencies: + graceful-fs "^4.2.0" + jsonfile "^6.0.1" + universalify "^2.0.0" + fs-extra@^8.0.1, fs-extra@^8.1.0: version "8.1.0" resolved "https://registry.yarnpkg.com/fs-extra/-/fs-extra-8.1.0.tgz#49d43c45a88cd9677668cb7be1b46efdb8d2e1c0" @@ -8342,6 +9209,13 @@ fs-minipass@^1.2.7: dependencies: minipass "^2.6.0" +fs-minipass@^2.0.0, fs-minipass@^2.1.0: + version "2.1.0" + resolved "https://registry.yarnpkg.com/fs-minipass/-/fs-minipass-2.1.0.tgz#7f5036fdbf12c63c169190cbe4199c852271f9fb" + integrity sha512-V/JgOLFCS+R6Vcq0slCuaeWEdNC3ouDlJMNIsacH2VtALiu9mV4LPrHc5cDl8k5aw6J8jwgWWpiTo5RYhmIzvg== + dependencies: + minipass "^3.0.0" + fs-mkdirp-stream@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/fs-mkdirp-stream/-/fs-mkdirp-stream-1.0.0.tgz#0b7815fc3201c6a69e14db98ce098c16935259eb" @@ -8398,6 +9272,20 @@ functions-have-names@^1.2.3: resolved "https://registry.yarnpkg.com/functions-have-names/-/functions-have-names-1.2.3.tgz#0404fe4ee2ba2f607f0e0ec3c80bae994133b834" integrity sha512-xckBUXyTIqT97tq2x2AMb+g163b5JFysYk0x4qxNFwbfQkmNZoiRHb6sPzI9/QV33WeuvVYBUIiD4NzNIyqaRQ== +gauge@^4.0.3: + version "4.0.4" + resolved "https://registry.yarnpkg.com/gauge/-/gauge-4.0.4.tgz#52ff0652f2bbf607a989793d53b751bef2328dce" + integrity sha512-f9m+BEN5jkg6a0fZjleidjN51VE1X+mPFQ2DJ0uv1V39oCLCbsGe6yjbBnp7eK7z/+GAon99a3nHuqbuuthyPg== + dependencies: + aproba "^1.0.3 || ^2.0.0" + color-support "^1.1.3" + console-control-strings "^1.1.0" + has-unicode "^2.0.1" + signal-exit "^3.0.7" + string-width "^4.2.3" + strip-ansi "^6.0.1" + wide-align "^1.1.5" + gaze@^1.1.3: version "1.1.3" resolved "https://registry.yarnpkg.com/gaze/-/gaze-1.1.3.tgz#c441733e13b927ac8c0ff0b4c3b033f28812924a" @@ -8460,7 +9348,7 @@ get-stream@^5.0.0, get-stream@^5.1.0: dependencies: pump "^3.0.0" -get-stream@^6.0.0: +get-stream@^6.0.0, get-stream@^6.0.1: version "6.0.1" resolved "https://registry.yarnpkg.com/get-stream/-/get-stream-6.0.1.tgz#a262d8eef67aced57c2852ad6167526a43cbf7b7" integrity sha512-ts6Wi+2j3jQjqi70w5AlN8DFnkSwC+MqmxEzdEALB2qXZYV3X/b1CTfgPLGJNMeAWxdPfU8FO1ms3NUfaHCPYg== @@ -8502,6 +9390,18 @@ gettext-parser@^3.1.0: readable-stream "^3.2.0" safe-buffer "^5.1.2" +git-log-parser@^1.2.0: + version "1.2.1" + resolved "https://registry.yarnpkg.com/git-log-parser/-/git-log-parser-1.2.1.tgz#44355787b37af7560dcc4ddc01cb53b5d139cc28" + integrity sha512-PI+sPDvHXNPl5WNOErAK05s3j0lgwUzMN6o8cyQrDaKfT3qd7TmNJKeXX+SknI5I0QhG5fVPAEwSY4tRGDtYoQ== + dependencies: + argv-formatter "~1.0.0" + spawn-error-forwarder "~1.0.0" + split2 "~1.0.0" + stream-combiner2 "~1.1.1" + through2 "~2.0.0" + traverse "0.6.8" + git-raw-commits@^2.0.0: version "2.0.11" resolved "https://registry.yarnpkg.com/git-raw-commits/-/git-raw-commits-2.0.11.tgz#bc3576638071d18655e1cc60d7f524920008d723" @@ -8580,6 +9480,17 @@ glob@^7.1.0, glob@^7.1.1, glob@^7.1.2, glob@^7.1.3, glob@^7.1.4, glob@^7.1.6, gl once "^1.3.0" path-is-absolute "^1.0.0" +glob@^8.0.1: + version "8.1.0" + resolved "https://registry.yarnpkg.com/glob/-/glob-8.1.0.tgz#d388f656593ef708ee3e34640fdfb99a9fd1c33e" + integrity sha512-r8hpEjiQEYlF2QU0df3dS+nxxSIreXQS1qRhMJM0Q5NDdR386C7jb7Hwwod8Fgiuex+k0GFjgft18yvxm5XoCQ== + dependencies: + fs.realpath "^1.0.0" + inflight "^1.0.4" + inherits "2" + minimatch "^5.0.1" + once "^1.3.0" + glob@~7.1.1: version "7.1.7" resolved "https://registry.yarnpkg.com/glob/-/glob-7.1.7.tgz#3b193e9233f01d42d0b3f78294bbeeb418f94a90" @@ -8641,7 +9552,7 @@ globalthis@^1.0.3: dependencies: define-properties "^1.1.3" -globby@^11.0.4, globby@^11.1.0: +globby@^11.0.0, globby@^11.0.1, globby@^11.0.4, globby@^11.1.0: version "11.1.0" resolved "https://registry.yarnpkg.com/globby/-/globby-11.1.0.tgz#bd4be98bb042f83d796f7e3811991fbe82a0d34b" integrity sha512-jhIXaOzy1sb8IyocaruWSn1TjmnBVs8Ayhcy83rmxNJ8q2uWKCAj3CnJY+KpGSXCueAPc0i05kVvVKtP1t9S3g== @@ -8686,7 +9597,12 @@ got@^9.6.0: to-readable-stream "^1.0.0" url-parse-lax "^3.0.0" -graceful-fs@^4.0.0, graceful-fs@^4.1.11, graceful-fs@^4.1.15, graceful-fs@^4.1.2, graceful-fs@^4.1.6, graceful-fs@^4.2.0, graceful-fs@^4.2.11, graceful-fs@^4.2.4, graceful-fs@^4.2.6, graceful-fs@^4.2.9: +graceful-fs@4.2.10: + version "4.2.10" + resolved "https://registry.yarnpkg.com/graceful-fs/-/graceful-fs-4.2.10.tgz#147d3a006da4ca3ce14728c7aefc287c367d7a6c" + integrity sha512-9ByhssR2fPVsNZj478qUUbKfmL0+t5BDVyjShtyZZLiK7ZDAArFFfopyOTj0M05wE2tJPisA4iTnnXl2YoPvOA== + +graceful-fs@^4.0.0, graceful-fs@^4.1.11, graceful-fs@^4.1.15, graceful-fs@^4.1.2, graceful-fs@^4.1.6, graceful-fs@^4.2.0, graceful-fs@^4.2.10, graceful-fs@^4.2.11, graceful-fs@^4.2.4, graceful-fs@^4.2.6, graceful-fs@^4.2.9: version "4.2.11" resolved "https://registry.yarnpkg.com/graceful-fs/-/graceful-fs-4.2.11.tgz#4183e4e8bf08bb6e05bbb2f7d2e0c8f712ca40e3" integrity sha512-RbJ5/jmFcNNCcDV5o9eTnBLJ/HszWV0P73bc+Ff4nS/rJj+YaS6IGyiOL0VoBYX+l1Wrl3k63h/KrH+nhJ0XvQ== @@ -8727,6 +9643,18 @@ handlebars@^4.3.3: optionalDependencies: uglify-js "^3.1.4" +handlebars@^4.7.7: + version "4.7.8" + resolved "https://registry.yarnpkg.com/handlebars/-/handlebars-4.7.8.tgz#41c42c18b1be2365439188c77c6afae71c0cd9e9" + integrity sha512-vafaFqs8MZkRrSX7sFVUdo3ap/eNiLnb4IakshzvP56X5Nr1iGKAIqdX6tMlm6HcNRIkr6AxO5jFEoJzzpT8aQ== + dependencies: + minimist "^1.2.5" + neo-async "^2.6.2" + source-map "^0.6.1" + wordwrap "^1.0.0" + optionalDependencies: + uglify-js "^3.1.4" + har-schema@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/har-schema/-/har-schema-2.0.0.tgz#a94c2224ebcac04782a0d9035521f24735b7ec92" @@ -8789,6 +9717,11 @@ has-tostringtag@^1.0.0, has-tostringtag@^1.0.2: dependencies: has-symbols "^1.0.3" +has-unicode@^2.0.1: + version "2.0.1" + resolved "https://registry.yarnpkg.com/has-unicode/-/has-unicode-2.0.1.tgz#e0e6fe6a28cf51138855e086d1691e771de2a8b9" + integrity sha512-8Rf9Y83NBReMnx0gFzA8JImQACstCYWUplepDa9xprwwtmgEZUF0h/i5xSA625zB/I37EtrswSST6OXxwaaIJQ== + has-value@^0.3.1: version "0.3.1" resolved "https://registry.yarnpkg.com/has-value/-/has-value-0.3.1.tgz#7b1f58bada62ca827ec0a2078025654845995e1f" @@ -8897,6 +9830,11 @@ hoist-non-react-statics@^3.3.0, hoist-non-react-statics@^3.3.2: dependencies: react-is "^16.7.0" +hook-std@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/hook-std/-/hook-std-3.0.0.tgz#47038a01981e07ce9d83a6a3b2eb98cad0f7bd58" + integrity sha512-jHRQzjSDzMtFy34AGj1DN+vq54WVuhSvKgrHf0OMiFQTwDD4L/qqofVEWjLOBMTn5+lCD3fPg32W9yOfnEJTTw== + hoopy@^0.1.4: version "0.1.4" resolved "https://registry.yarnpkg.com/hoopy/-/hoopy-0.1.4.tgz#609207d661100033a9a9402ad3dea677381c1b1d" @@ -8914,6 +9852,20 @@ hosted-git-info@^4.0.1: dependencies: lru-cache "^6.0.0" +hosted-git-info@^5.0.0, hosted-git-info@^5.2.1: + version "5.2.1" + resolved "https://registry.yarnpkg.com/hosted-git-info/-/hosted-git-info-5.2.1.tgz#0ba1c97178ef91f3ab30842ae63d6a272341156f" + integrity sha512-xIcQYMnhcx2Nr4JTjsFmwwnr9vldugPy9uVm0o87bjqqWMv9GaqsTeT+i99wTl0mk1uLxJtHxLb8kymqTENQsw== + dependencies: + lru-cache "^7.5.1" + +hosted-git-info@^6.0.0: + version "6.1.1" + resolved "https://registry.yarnpkg.com/hosted-git-info/-/hosted-git-info-6.1.1.tgz#629442c7889a69c05de604d52996b74fe6f26d58" + integrity sha512-r0EI+HBMcXadMrugk0GCQ+6BQV39PiWAZVfq7oIckeGiN7sjRGyQxPdft3nQekFTCQbYxLBH+/axZMeH8UX6+w== + dependencies: + lru-cache "^7.5.1" + hpack.js@^2.1.6: version "2.1.6" resolved "https://registry.yarnpkg.com/hpack.js/-/hpack.js-2.1.6.tgz#87774c0949e513f42e84575b3c45681fade2a0b2" @@ -9005,7 +9957,7 @@ htmlparser2@^8.0.1: domutils "^3.0.1" entities "^4.3.0" -http-cache-semantics@^4.0.0: +http-cache-semantics@^4.0.0, http-cache-semantics@^4.1.0: version "4.1.1" resolved "https://registry.yarnpkg.com/http-cache-semantics/-/http-cache-semantics-4.1.1.tgz#abe02fcb2985460bf0323be664436ec3476a6d5a" integrity sha512-er295DKPVsV82j5kw1Gjt+ADA/XYHsajl82cGNQG2eyoPkvgUhX+nDIyelzhIWbbsXP39EHcI6l5tYs2FYqYXQ== @@ -9050,6 +10002,23 @@ http-proxy-agent@^4.0.1: agent-base "6" debug "4" +http-proxy-agent@^5.0.0: + version "5.0.0" + resolved "https://registry.yarnpkg.com/http-proxy-agent/-/http-proxy-agent-5.0.0.tgz#5129800203520d434f142bc78ff3c170800f2b43" + integrity sha512-n2hY8YdoRE1i7r6M0w9DIw5GgZN0G25P8zLCRQ8rjXtTU3vsNFBI/vWK/UIeE6g5MUUz6avwAPXmL6Fy9D/90w== + dependencies: + "@tootallnate/once" "2" + agent-base "6" + debug "4" + +http-proxy-agent@^7.0.0: + version "7.0.2" + resolved "https://registry.yarnpkg.com/http-proxy-agent/-/http-proxy-agent-7.0.2.tgz#9a8b1f246866c028509486585f62b8f2c18c270e" + integrity sha512-T1gkAiYYDWYx3V5Bmyu7HcfcvL7mUrTWiM6yOfa3PIphViJ/gFPbvidQ+veqSOHci/PxBcDabeUNCzpOODJZig== + dependencies: + agent-base "^7.1.0" + debug "^4.3.4" + http-proxy-middleware@^2.0.3: version "2.0.6" resolved "https://registry.yarnpkg.com/http-proxy-middleware/-/http-proxy-middleware-2.0.6.tgz#e1a4dd6979572c7ab5a4e4b55095d1f32a74963f" @@ -9101,6 +10070,14 @@ https-proxy-agent@^5.0.0: agent-base "6" debug "4" +https-proxy-agent@^7.0.0: + version "7.0.5" + resolved "https://registry.yarnpkg.com/https-proxy-agent/-/https-proxy-agent-7.0.5.tgz#9e8b5013873299e11fab6fd548405da2d6c602b2" + integrity sha512-1e4Wqeblerz+tMKPIq2EMGiiWW1dIjZOksyHWSUm1rmuvw/how9hBHZ38lAGj5ID4Ik6EdkOw7NmWPy6LAwalw== + dependencies: + agent-base "^7.0.2" + debug "4" + human-signals@^1.1.1: version "1.1.1" resolved "https://registry.yarnpkg.com/human-signals/-/human-signals-1.1.1.tgz#c5b1cd14f50aeae09ab6c59fe63ba3395fe4dfa3" @@ -9111,6 +10088,23 @@ human-signals@^2.1.0: resolved "https://registry.yarnpkg.com/human-signals/-/human-signals-2.1.0.tgz#dc91fcba42e4d06e4abaed33b3e7a3c02f514ea0" integrity sha512-B4FFZ6q/T2jhhksgkbEW3HBvWIfDW85snkQgawt07S7J5QXTk6BkNV+0yAeZrM5QpMAdYlocGoljn0sJ/WQkFw== +human-signals@^3.0.1: + version "3.0.1" + resolved "https://registry.yarnpkg.com/human-signals/-/human-signals-3.0.1.tgz#c740920859dafa50e5a3222da9d3bf4bb0e5eef5" + integrity sha512-rQLskxnM/5OCldHo+wNXbpVgDn5A17CUoKX+7Sokwaknlq7CdSnphy0W39GU8dw59XiCXmFXDg4fRuckQRKewQ== + +human-signals@^4.3.0: + version "4.3.1" + resolved "https://registry.yarnpkg.com/human-signals/-/human-signals-4.3.1.tgz#ab7f811e851fca97ffbd2c1fe9a958964de321b2" + integrity sha512-nZXjEF2nbo7lIw3mgYjItAfgQXog3OjJogSbKa2CQIIvSGWcKgeJnQlNXip6NglNzYH45nSRiEVimMvYL8DDqQ== + +humanize-ms@^1.2.1: + version "1.2.1" + resolved "https://registry.yarnpkg.com/humanize-ms/-/humanize-ms-1.2.1.tgz#c46e3159a293f6b896da29316d8b6fe8bb79bbed" + integrity sha512-Fl70vYtsAFb/C06PTS9dZBo7ihau+Tu/DNCk/OyHhea07S+aeMWpFFkUaXRa8fI+ScZbEI8dfSxwY7gxZ9SAVQ== + dependencies: + ms "^2.0.0" + husky@^7.0.2: version "7.0.4" resolved "https://registry.yarnpkg.com/husky/-/husky-7.0.4.tgz#242048245dc49c8fb1bf0cc7cfb98dd722531535" @@ -9202,6 +10196,13 @@ ieee754@^1.1.13, ieee754@^1.1.4: resolved "https://registry.yarnpkg.com/ieee754/-/ieee754-1.2.1.tgz#8eb7a10a63fff25d15a57b001586d177d1b0d352" integrity sha512-dcyqhDvX1C46lXZcVqCpK+FtMRQVdIMN6/Df5js2zouUsqG7I6sFxitIC+7KYK29KdXOLHdu9zL4sFnoVQnqaA== +ignore-walk@^5.0.1: + version "5.0.1" + resolved "https://registry.yarnpkg.com/ignore-walk/-/ignore-walk-5.0.1.tgz#5f199e23e1288f518d90358d461387788a154776" + integrity sha512-yemi4pMf51WKT7khInJqAvsIGzoqYXblnsz0ql8tM+yi1EKYTY1evX4NAbJrLL/Aanr2HyZeluqU+Oi7MGHokw== + dependencies: + minimatch "^5.0.1" + ignore@^4.0.6: version "4.0.6" resolved "https://registry.yarnpkg.com/ignore/-/ignore-4.0.6.tgz#750e3db5862087b4737ebac8207ffd1ef27b25fc" @@ -9217,7 +10218,7 @@ immer@^9.0.7: resolved "https://registry.yarnpkg.com/immer/-/immer-9.0.16.tgz#8e7caab80118c2b54b37ad43e05758cdefad0198" integrity sha512-qenGE7CstVm1NrHQbMh8YaSzTZTFNP3zPqr3YU0S0UY441j4bJTg4A2Hh5KAhwgaiU6ZZ1Ar6y/2f4TblnMReQ== -import-fresh@^3.0.0, import-fresh@^3.1.0, import-fresh@^3.2.1: +import-fresh@^3.0.0, import-fresh@^3.1.0, import-fresh@^3.2.1, import-fresh@^3.3.0: version "3.3.0" resolved "https://registry.yarnpkg.com/import-fresh/-/import-fresh-3.3.0.tgz#37162c25fcb9ebaa2e6e53d5b4d88ce17d9e0c2b" integrity sha512-veYYhQa+D1QBKznvhUHxb8faxlrwUnxseDAbAp457E0wLNio2bOSKnjYDhMj+YiAq61xrMGhQk9iXVk5FzgQMw== @@ -9225,6 +10226,11 @@ import-fresh@^3.0.0, import-fresh@^3.1.0, import-fresh@^3.2.1: parent-module "^1.0.0" resolve-from "^4.0.0" +import-from@^4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/import-from/-/import-from-4.0.0.tgz#2710b8d66817d232e16f4166e319248d3d5492e2" + integrity sha512-P9J71vT5nLlDeV8FHs5nNxaLbrpfAV5cF5srvbZfpwpcJoM/xZR3hiv+q+SAnuSmuGbXMWud063iIMx/V/EWZQ== + import-lazy@^2.1.0: version "2.1.0" resolved "https://registry.yarnpkg.com/import-lazy/-/import-lazy-2.1.0.tgz#05698e3d45c88e8d7e9d92cb0584e77f096f3e43" @@ -9248,6 +10254,16 @@ indent-string@^4.0.0: resolved "https://registry.yarnpkg.com/indent-string/-/indent-string-4.0.0.tgz#624f8f4497d619b2d9768531d58f4122854d7251" integrity sha512-EdDDZu4A2OyIK7Lr/2zG+w5jmbuk1DVBnEwREQvBzspBJkCEbRa8GxU1lghYcaGJCnRWibjDXlq779X1/y5xwg== +indent-string@^5.0.0: + version "5.0.0" + resolved "https://registry.yarnpkg.com/indent-string/-/indent-string-5.0.0.tgz#4fd2980fccaf8622d14c64d694f4cf33c81951a5" + integrity sha512-m6FAo/spmsW2Ab2fU35JTYwtOKa2yAwXSwgjSv1TJzh4Mh7mC3lzAOVLBprb72XsTrgkEIsl7YrFNAiDiRhIGg== + +infer-owner@^1.0.4: + version "1.0.4" + resolved "https://registry.yarnpkg.com/infer-owner/-/infer-owner-1.0.4.tgz#c4cefcaa8e51051c2a40ba2ce8a3d27295af9467" + integrity sha512-IClj+Xz94+d7irH5qRyfJonOdfTzuDaifE6ZPWfx0N0+/ATZCbuTPq2prFl526urkQd90WyUKIh1DfBQ2hMz9A== + inflight@^1.0.4: version "1.0.6" resolved "https://registry.yarnpkg.com/inflight/-/inflight-1.0.6.tgz#49bd6331d7d02d0c09bc910a1075ba8165b56df9" @@ -9281,6 +10297,24 @@ ini@^1.3.4, ini@^1.3.5, ini@~1.3.0: resolved "https://registry.yarnpkg.com/ini/-/ini-1.3.8.tgz#a29da425b48806f34767a4efce397269af28432c" integrity sha512-JV/yugV2uzW5iMRSiZAyDtQd+nxtUnjeLt0acNdw98kKLrvuRVyB80tsREOE7yvGVgalhZ6RNXCmEHkUKBKxew== +ini@^3.0.0, ini@^3.0.1: + version "3.0.1" + resolved "https://registry.yarnpkg.com/ini/-/ini-3.0.1.tgz#c76ec81007875bc44d544ff7a11a55d12294102d" + integrity sha512-it4HyVAUTKBc6m8e1iXWvXSTdndF7HbdN713+kvLrymxTaU4AUBWrJ4vEooP+V7fexnVD3LKcBshjGGPefSMUQ== + +init-package-json@^3.0.2: + version "3.0.2" + resolved "https://registry.yarnpkg.com/init-package-json/-/init-package-json-3.0.2.tgz#f5bc9bac93f2bdc005778bc2271be642fecfcd69" + integrity sha512-YhlQPEjNFqlGdzrBfDNRLhvoSgX7iQRgSxgsNknRQ9ITXFT7UMfVMWhBTOh2Y+25lRnGrv5Xz8yZwQ3ACR6T3A== + dependencies: + npm-package-arg "^9.0.1" + promzard "^0.3.0" + read "^1.0.7" + read-package-json "^5.0.0" + semver "^7.3.5" + validate-npm-package-license "^3.0.4" + validate-npm-package-name "^4.0.0" + inline-source-map@~0.6.0: version "0.6.2" resolved "https://registry.yarnpkg.com/inline-source-map/-/inline-source-map-0.6.2.tgz#f9393471c18a79d1724f863fa38b586370ade2a5" @@ -9332,6 +10366,14 @@ internal-slot@^1.0.3, internal-slot@^1.0.7: hasown "^2.0.0" side-channel "^1.0.4" +into-stream@^6.0.0: + version "6.0.0" + resolved "https://registry.yarnpkg.com/into-stream/-/into-stream-6.0.0.tgz#4bfc1244c0128224e18b8870e85b2de8e66c6702" + integrity sha512-XHbaOAvP+uFKUFsOgoNPRjLkwB+I22JFPFe5OjTkQ0nwgj6+pSjb4NmB6VMxaPshLiOf+zcpOCBQuLwC1KHhZA== + dependencies: + from2 "^2.3.0" + p-is-promise "^3.0.0" + invariant@^2.2.4: version "2.2.4" resolved "https://registry.yarnpkg.com/invariant/-/invariant-2.2.4.tgz#610f3c92c9359ce1db616e538008d23ff35158e6" @@ -9339,6 +10381,19 @@ invariant@^2.2.4: dependencies: loose-envify "^1.0.0" +ip-address@^9.0.5: + version "9.0.5" + resolved "https://registry.yarnpkg.com/ip-address/-/ip-address-9.0.5.tgz#117a960819b08780c3bd1f14ef3c1cc1d3f3ea5a" + integrity sha512-zHtQzGojZXTwZTHQqra+ETKd4Sn3vgi7uBmlPoXVWZqYvuKmtI0l/VZTjqGmJY9x88GGOaZ9+G9ES8hC4T4X8g== + dependencies: + jsbn "1.1.0" + sprintf-js "^1.1.3" + +ip-regex@^4.1.0: + version "4.3.0" + resolved "https://registry.yarnpkg.com/ip-regex/-/ip-regex-4.3.0.tgz#687275ab0f57fa76978ff8f4dddc8a23d5990db5" + integrity sha512-B9ZWJxHHOHUhUjCPrMpLD4xEq35bUTClHM1S6CBU5ixQnkZmwipwgc96vAd7AAGM9TGHvJR+Uss+/Ak6UphK+Q== + ipaddr.js@1.9.1: version "1.9.1" resolved "https://registry.yarnpkg.com/ipaddr.js/-/ipaddr.js-1.9.1.tgz#bff38543eeb8984825079ff3a2a8e6cbd46781b3" @@ -9438,6 +10493,13 @@ is-ci@^3.0.1: dependencies: ci-info "^3.2.0" +is-cidr@^4.0.2: + version "4.0.2" + resolved "https://registry.yarnpkg.com/is-cidr/-/is-cidr-4.0.2.tgz#94c7585e4c6c77ceabf920f8cde51b8c0fda8814" + integrity sha512-z4a1ENUajDbEl/Q6/pVBpTR1nBjjEE1X7qb7bmWYanNnPoKAvUCPFKeXV6Fe4mgTkWKBqiHIcwsI3SndiO5FeA== + dependencies: + cidr-regex "^3.1.1" + is-core-module@^2.11.0, is-core-module@^2.2.0, is-core-module@^2.5.0, is-core-module@^2.8.1: version "2.12.1" resolved "https://registry.yarnpkg.com/is-core-module/-/is-core-module-2.12.1.tgz#0c0b6885b6f80011c71541ce15c8d66cf5a4f9fd" @@ -9565,6 +10627,11 @@ is-installed-globally@~0.4.0: global-dirs "^3.0.0" is-path-inside "^3.0.2" +is-lambda@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/is-lambda/-/is-lambda-1.0.1.tgz#3d9877899e6a53efc0160504cde15f82e6f061d5" + integrity sha512-z7CMFGNrENq5iFB9Bqo64Xk6Y9sg+epq1myIcdHaGnbMTYOxvzsEtdYqQUylB7LxfkvgrrjP32T6Ywciio9UIQ== + is-map@^2.0.1, is-map@^2.0.2: version "2.0.2" resolved "https://registry.yarnpkg.com/is-map/-/is-map-2.0.2.tgz#00922db8c9bf73e81b7a335827bc2a43f2b91127" @@ -9619,6 +10686,11 @@ is-obj@^2.0.0: resolved "https://registry.yarnpkg.com/is-obj/-/is-obj-2.0.0.tgz#473fb05d973705e3fd9620545018ca8e22ef4982" integrity sha512-drqDG3cbczxxEJRoOXcOjtdp1J/lyp1mNn0xaznRs8+muBhgQcrnbspox5X5fOw0HnMnbfDzvnEMEtqDEJEo8w== +is-path-cwd@^2.2.0: + version "2.2.0" + resolved "https://registry.yarnpkg.com/is-path-cwd/-/is-path-cwd-2.2.0.tgz#67d43b82664a7b5191fd9119127eb300048a9fdb" + integrity sha512-w942bTcih8fdJPJmQHFzkS76NEP8Kzzvmw92cXsazb8intwLqPibPPdXf4ANdKV3rYMuuQYGIWtvz9JilB3NFQ== + is-path-inside@^1.0.0: version "1.0.1" resolved "https://registry.yarnpkg.com/is-path-inside/-/is-path-inside-1.0.1.tgz#8ef5b7de50437a3fdca6b4e865ef7aa55cb48036" @@ -9653,6 +10725,11 @@ is-plain-object@^2.0.3, is-plain-object@^2.0.4: dependencies: isobject "^3.0.1" +is-plain-object@^5.0.0: + version "5.0.0" + resolved "https://registry.yarnpkg.com/is-plain-object/-/is-plain-object-5.0.0.tgz#4427f50ab3429e9025ea7d52e9043a9ef4159344" + integrity sha512-VRSzKkbMm5jMDoKLbltAkFQ5Qr7VDiTFGXxYFXXowVj387GeGNOCsOH6Msy00SGZ3Fp84b1Naa1psqgcCIEP5Q== + is-potential-custom-element-name@^1.0.1: version "1.0.1" resolved "https://registry.yarnpkg.com/is-potential-custom-element-name/-/is-potential-custom-element-name-1.0.1.tgz#171ed6f19e3ac554394edf78caa05784a45bebb5" @@ -9710,6 +10787,11 @@ is-stream@^2.0.0: resolved "https://registry.yarnpkg.com/is-stream/-/is-stream-2.0.1.tgz#fac1e3d53b97ad5a9d0ae9cef2389f5810a5c077" integrity sha512-hFoiJiTl63nn+kstHGBtewWSKnQLpyb155KHheA1l39uvtO9nWIop1p3udqPcUd/xbF1VLMO4n7OI6p7RbngDg== +is-stream@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/is-stream/-/is-stream-3.0.0.tgz#e6bfd7aa6bef69f4f472ce9bb681e3e57b4319ac" + integrity sha512-LnQR4bZ9IADDRSkvpqMGvt/tEJWclzklNgSw48V5EAaAeDd6qGvN8ei6k5p0tvxSR171VmGyHuTiAOfxAbr8kA== + is-string@^1.0.5, is-string@^1.0.7: version "1.0.7" resolved "https://registry.yarnpkg.com/is-string/-/is-string-1.0.7.tgz#0dd12bf2006f255bb58f695110eff7491eebc0fd" @@ -9760,6 +10842,11 @@ is-unicode-supported@^0.1.0: resolved "https://registry.yarnpkg.com/is-unicode-supported/-/is-unicode-supported-0.1.0.tgz#3f26c76a809593b52bfa2ecb5710ed2779b522a7" integrity sha512-knxG2q4UC3u8stRGyAVJCOdxFmv5DZiRcdlIaAQXAbSfJya+OhopNotLQrstBhququ4ZpuKbDc/8S6mgXgPFPw== +is-unicode-supported@^1.2.0: + version "1.3.0" + resolved "https://registry.yarnpkg.com/is-unicode-supported/-/is-unicode-supported-1.3.0.tgz#d824984b616c292a2e198207d4a609983842f714" + integrity sha512-43r2mRvz+8JRIKnWJ+3j8JtjRKZ6GmjzfaE/qiBJnikNnYv/6bagRJ1kUhNk8R5EX/GkobD+r+sfxCPJsiKBLQ== + is-utf8@^0.2.1: version "0.2.1" resolved "https://registry.yarnpkg.com/is-utf8/-/is-utf8-0.2.1.tgz#4b0da1442104d1b336340e80797e865cf39f7d72" @@ -9839,6 +10926,17 @@ isstream@~0.1.2: resolved "https://registry.yarnpkg.com/isstream/-/isstream-0.1.2.tgz#47e63f7af55afa6f92e1500e690eb8b8529c099a" integrity sha512-Yljz7ffyPbrLpLngrMtZ7NduUgVvi6wG9RJ9IUcyCd59YQ911PBJphODUcbOVbqYfxe1wuYf/LJ8PauMRwsM/g== +issue-parser@^6.0.0: + version "6.0.0" + resolved "https://registry.yarnpkg.com/issue-parser/-/issue-parser-6.0.0.tgz#b1edd06315d4f2044a9755daf85fdafde9b4014a" + integrity sha512-zKa/Dxq2lGsBIXQ7CUZWTHfvxPC2ej0KfO7fIPqLlHB9J2hJ7rGhZ5rilhuufylr4RXYPzJUeFjKxz305OsNlA== + dependencies: + lodash.capitalize "^4.2.1" + lodash.escaperegexp "^4.1.2" + lodash.isplainobject "^4.0.6" + lodash.isstring "^4.0.1" + lodash.uniqby "^4.7.0" + istanbul-lib-coverage@^2.0.5: version "2.0.5" resolved "https://registry.yarnpkg.com/istanbul-lib-coverage/-/istanbul-lib-coverage-2.0.5.tgz#675f0ab69503fad4b1d849f736baaca803344f49" @@ -9909,6 +11007,11 @@ jake@^10.8.5: filelist "^1.0.1" minimatch "^3.0.4" +java-properties@^1.0.2: + version "1.0.2" + resolved "https://registry.yarnpkg.com/java-properties/-/java-properties-1.0.2.tgz#ccd1fa73907438a5b5c38982269d0e771fe78211" + integrity sha512-qjdpeo2yKlYTH7nFdK0vbZWuTCesk4o63v5iVOlhMQPfuIZQfW/HI35SjfhA+4qpg36rnFSvUK5b1m+ckIblQQ== + javascript-natural-sort@^0.7.1: version "0.7.1" resolved "https://registry.yarnpkg.com/javascript-natural-sort/-/javascript-natural-sort-0.7.1.tgz#f9e2303d4507f6d74355a73664d1440fb5a0ef59" @@ -10605,6 +11708,11 @@ jsbi@^4.1.0: resolved "https://registry.yarnpkg.com/jsbi/-/jsbi-4.3.0.tgz#b54ee074fb6fcbc00619559305c8f7e912b04741" integrity sha512-SnZNcinB4RIcnEyZqFPdGPVgrg2AcnykiBy0sHVJQKHYeaLUvi3Exj+iaPpLnFVkDPZIV4U0yvgC9/R4uEAZ9g== +jsbn@1.1.0: + version "1.1.0" + resolved "https://registry.yarnpkg.com/jsbn/-/jsbn-1.1.0.tgz#b01307cb29b618a1ed26ec79e911f803c4da0040" + integrity sha512-4bYVV3aAMtDTTu4+xsDYa6sy9GyJ69/amsu9sYF2zqjiEoZA5xJi3BrfX3uY+/IekIu7MwdObdbDWpoZdBv3/A== + jsbn@~0.1.0: version "0.1.1" resolved "https://registry.yarnpkg.com/jsbn/-/jsbn-0.1.1.tgz#a5e654c2e5a2deb5f201d96cefbca80c0ef2f513" @@ -10752,7 +11860,12 @@ json-stable-stringify@~0.0.0: dependencies: jsonify "~0.0.0" -json-stringify-safe@~5.0.1: +json-stringify-nice@^1.1.4: + version "1.1.4" + resolved "https://registry.yarnpkg.com/json-stringify-nice/-/json-stringify-nice-1.1.4.tgz#2c937962b80181d3f317dd39aa323e14f5a60a67" + integrity sha512-5Z5RFW63yxReJ7vANgW6eZFGWaQvnPE3WNmZoOJrSkGju2etKA2L5rrOa1sm877TVTFt57A80BH1bArcmlLfPw== + +json-stringify-safe@^5.0.1, json-stringify-safe@~5.0.1: version "5.0.1" resolved "https://registry.yarnpkg.com/json-stringify-safe/-/json-stringify-safe-5.0.1.tgz#1296a2d58fd45f19a0f6ce01d65701e2c735b6eb" integrity sha512-ZClg6AaYvamvYEE82d3Iyd3vSSIjQ+odgjaTzRuO3s7toCdFKczob2i0zCh7JE8kWn17yvAWhUVxvqGwUalsRA== @@ -10790,7 +11903,7 @@ jsonify@~0.0.0: resolved "https://registry.yarnpkg.com/jsonify/-/jsonify-0.0.1.tgz#2aa3111dae3d34a0f151c63f3a45d995d9420978" integrity sha512-2/Ki0GcmuqSrgFyelQq9M05y7PS0mEwuIzrf3f1fPqkVDVRvZrPZtVSMHxdgo8Aq0sxAOb/cr2aqqA3LeWHVPg== -jsonparse@^1.2.0: +jsonparse@^1.2.0, jsonparse@^1.3.1: version "1.3.1" resolved "https://registry.yarnpkg.com/jsonparse/-/jsonparse-1.3.1.tgz#3f4dae4a91fac315f71062f8521cc239f1366280" integrity sha512-POQXvpdL69+CluYsillJ7SUhKvytYjW9vG/GKpnf+xP8UWgYEM/RaMzHHofbALDiKbbP1W8UEYmgGl39WkPZsg== @@ -10828,6 +11941,16 @@ jsprim@^2.0.2: array-includes "^3.1.5" object.assign "^4.1.3" +just-diff-apply@^5.2.0: + version "5.5.0" + resolved "https://registry.yarnpkg.com/just-diff-apply/-/just-diff-apply-5.5.0.tgz#771c2ca9fa69f3d2b54e7c3f5c1dfcbcc47f9f0f" + integrity sha512-OYTthRfSh55WOItVqwpefPtNt2VdKsq5AnAK6apdtR6yCH8pr0CmSr710J0Mf+WdQy7K/OzMy7K2MgAfdQURDw== + +just-diff@^5.0.1: + version "5.2.0" + resolved "https://registry.yarnpkg.com/just-diff/-/just-diff-5.2.0.tgz#60dca55891cf24cd4a094e33504660692348a241" + integrity sha512-6ufhP9SHjb7jibNFrNxyFZ6od3g+An6Ai9mhGRvcYe8UJlH0prseN64M+6ZBBUoKYHZsitDP42gAJ8+eVWr3lw== + keyv@^3.0.0: version "3.1.0" resolved "https://registry.yarnpkg.com/keyv/-/keyv-3.1.0.tgz#ecc228486f69991e49e9476485a5be1e8fc5c4d9" @@ -10941,6 +12064,119 @@ levn@~0.3.0: prelude-ls "~1.1.2" type-check "~0.3.2" +libnpmaccess@^6.0.4: + version "6.0.4" + resolved "https://registry.yarnpkg.com/libnpmaccess/-/libnpmaccess-6.0.4.tgz#2dd158bd8a071817e2207d3b201d37cf1ad6ae6b" + integrity sha512-qZ3wcfIyUoW0+qSFkMBovcTrSGJ3ZeyvpR7d5N9pEYv/kXs8sHP2wiqEIXBKLFrZlmM0kR0RJD7mtfLngtlLag== + dependencies: + aproba "^2.0.0" + minipass "^3.1.1" + npm-package-arg "^9.0.1" + npm-registry-fetch "^13.0.0" + +libnpmdiff@^4.0.5: + version "4.0.5" + resolved "https://registry.yarnpkg.com/libnpmdiff/-/libnpmdiff-4.0.5.tgz#ffaf93fa9440ea759444b8830fdb5c661b09a7c0" + integrity sha512-9fICQIzmH892UwHHPmb+Seup50UIBWcMIK2FdxvlXm9b4kc1nSH0b/BuY1mORJQtB6ydPMnn+BLzOTmd/SKJmw== + dependencies: + "@npmcli/disparity-colors" "^2.0.0" + "@npmcli/installed-package-contents" "^1.0.7" + binary-extensions "^2.2.0" + diff "^5.1.0" + minimatch "^5.0.1" + npm-package-arg "^9.0.1" + pacote "^13.6.1" + tar "^6.1.0" + +libnpmexec@^4.0.14: + version "4.0.14" + resolved "https://registry.yarnpkg.com/libnpmexec/-/libnpmexec-4.0.14.tgz#9ad44232434b374e477eb2c2e4548baaf698f773" + integrity sha512-dwmzv2K29SdoAHBOa7QR6CfQbFG/PiZDRF6HZrlI6C4DLt2hNgOHTFaUGOpqE2C+YGu0ZwYTDywxRe0eOnf0ZA== + dependencies: + "@npmcli/arborist" "^5.6.3" + "@npmcli/ci-detect" "^2.0.0" + "@npmcli/fs" "^2.1.1" + "@npmcli/run-script" "^4.2.0" + chalk "^4.1.0" + mkdirp-infer-owner "^2.0.0" + npm-package-arg "^9.0.1" + npmlog "^6.0.2" + pacote "^13.6.1" + proc-log "^2.0.0" + read "^1.0.7" + read-package-json-fast "^2.0.2" + semver "^7.3.7" + walk-up-path "^1.0.0" + +libnpmfund@^3.0.5: + version "3.0.5" + resolved "https://registry.yarnpkg.com/libnpmfund/-/libnpmfund-3.0.5.tgz#817f9e2120889beb483d9ba8eda142bb84293e4e" + integrity sha512-KdeRoG/dem8H3PcEU2/0SKi3ip7AWwczgS72y/3PE+PBrz/s/G52FNIA9jeLnBirkLC0sOyQHfeM3b7e24ZM+g== + dependencies: + "@npmcli/arborist" "^5.6.3" + +libnpmhook@^8.0.4: + version "8.0.4" + resolved "https://registry.yarnpkg.com/libnpmhook/-/libnpmhook-8.0.4.tgz#6c58e5fe763ff5d600ae9c20457ea9a69d1f7d87" + integrity sha512-nuD6e+Nx0OprjEi0wOeqASMl6QIH235th/Du2/8upK3evByFhzIgdfOeP1OhstavW4xtsl0hk5Vw4fAWWuSUgA== + dependencies: + aproba "^2.0.0" + npm-registry-fetch "^13.0.0" + +libnpmorg@^4.0.4: + version "4.0.4" + resolved "https://registry.yarnpkg.com/libnpmorg/-/libnpmorg-4.0.4.tgz#2a01d49372cf0df90d79a61e69bddaf2ed704311" + integrity sha512-1bTpD7iub1rDCsgiBguhJhiDufLQuc8DEti20euqsXz9O0ncXVpCYqf2SMmHR4GEdmAvAj2r7FMiyA9zGdaTpA== + dependencies: + aproba "^2.0.0" + npm-registry-fetch "^13.0.0" + +libnpmpack@^4.1.3: + version "4.1.3" + resolved "https://registry.yarnpkg.com/libnpmpack/-/libnpmpack-4.1.3.tgz#025cfe39829acd8260662bf259e3a9331fc1e4b2" + integrity sha512-rYP4X++ME3ZiFO+2iN3YnXJ4LB4Gsd0z5cgszWJZxaEpDN4lRIXirSyynGNsN/hn4taqnlxD+3DPlFDShvRM8w== + dependencies: + "@npmcli/run-script" "^4.1.3" + npm-package-arg "^9.0.1" + pacote "^13.6.1" + +libnpmpublish@^6.0.5: + version "6.0.5" + resolved "https://registry.yarnpkg.com/libnpmpublish/-/libnpmpublish-6.0.5.tgz#5a894f3de2e267d62f86be2a508e362599b5a4b1" + integrity sha512-LUR08JKSviZiqrYTDfywvtnsnxr+tOvBU0BF8H+9frt7HMvc6Qn6F8Ubm72g5hDTHbq8qupKfDvDAln2TVPvFg== + dependencies: + normalize-package-data "^4.0.0" + npm-package-arg "^9.0.1" + npm-registry-fetch "^13.0.0" + semver "^7.3.7" + ssri "^9.0.0" + +libnpmsearch@^5.0.4: + version "5.0.4" + resolved "https://registry.yarnpkg.com/libnpmsearch/-/libnpmsearch-5.0.4.tgz#b32aa2b23051c00cdcc0912274d0d416e6655d81" + integrity sha512-XHDmsvpN5+pufvGnfLRqpy218gcGGbbbXR6wPrDJyd1em6agKdYByzU5ccskDHH9iVm2UeLydpDsW1ksYuU0cg== + dependencies: + npm-registry-fetch "^13.0.0" + +libnpmteam@^4.0.4: + version "4.0.4" + resolved "https://registry.yarnpkg.com/libnpmteam/-/libnpmteam-4.0.4.tgz#ac26068808d93b1051d926457db14e4b3ff669ef" + integrity sha512-rzKSwi6MLzwwevbM/vl+BBQTErgn24tCfgPUdzBlszrw3j5necOu7WnTzgvZMDv6maGUwec6Ut1rxszOgH0l+Q== + dependencies: + aproba "^2.0.0" + npm-registry-fetch "^13.0.0" + +libnpmversion@^3.0.7: + version "3.0.7" + resolved "https://registry.yarnpkg.com/libnpmversion/-/libnpmversion-3.0.7.tgz#e4c6c07ee28cf351ce1e2293a5ac9922b09ea94d" + integrity sha512-O0L4eNMUIMQ+effi1HsZPKp2N6wecwqGqB8PvkvmLPWN7EsdabdzAVG48nv0p/OjlbIai5KQg/L+qMMfCA4ZjA== + dependencies: + "@npmcli/git" "^3.0.0" + "@npmcli/run-script" "^4.1.3" + json-parse-even-better-errors "^2.3.1" + proc-log "^2.0.0" + semver "^7.3.7" + lilconfig@^2.0.3, lilconfig@^2.0.5, lilconfig@^2.0.6: version "2.0.6" resolved "https://registry.yarnpkg.com/lilconfig/-/lilconfig-2.0.6.tgz#32a384558bd58af3d4c6e077dd1ad1d397bc69d4" @@ -11010,6 +12246,14 @@ loader-utils@^3.2.0: resolved "https://registry.yarnpkg.com/loader-utils/-/loader-utils-3.2.0.tgz#bcecc51a7898bee7473d4bc6b845b23af8304d4f" integrity sha512-HVl9ZqccQihZ7JM85dco1MvO9G+ONvxoGa9rkhzFsneGLKSUg1gJf9bWzhRhcvm2qChhWpebQhP44qxjKIUCaQ== +locate-path@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/locate-path/-/locate-path-2.0.0.tgz#2b568b265eec944c6d9c0de9c3dbbbca0354cd8e" + integrity sha512-NCI2kiDkyR7VeEKm27Kda/iQHyKJe1Bu0FlTbYp3CqJu+9IFe9bLyAjMxf5ZDDbEg+iMPzB5zYyUTSm8wVTKmA== + dependencies: + p-locate "^2.0.0" + path-exists "^3.0.0" + locate-path@^3.0.0: version "3.0.0" resolved "https://registry.yarnpkg.com/locate-path/-/locate-path-3.0.0.tgz#dbec3b3ab759758071b58fe59fc41871af21400e" @@ -11032,6 +12276,13 @@ locate-path@^6.0.0: dependencies: p-locate "^5.0.0" +locate-path@^7.1.0: + version "7.2.0" + resolved "https://registry.yarnpkg.com/locate-path/-/locate-path-7.2.0.tgz#69cb1779bd90b35ab1e771e1f2f89a202c2a8a8a" + integrity sha512-gvVijfZvn7R+2qyPX8mAuKcFGDf6Nc61GdvGafQsHL0sBIxfKzA+usWn4GFC/bk+QdwPUD4kWFJLhElipq+0VA== + dependencies: + p-locate "^6.0.0" + lodash-es@^4.17.21: version "4.17.21" resolved "https://registry.yarnpkg.com/lodash-es/-/lodash-es-4.17.21.tgz#43e626c46e6591b7750beb2b50117390c609e3ee" @@ -11056,6 +12307,11 @@ lodash._getnative@^3.0.0: resolved "https://registry.yarnpkg.com/lodash._getnative/-/lodash._getnative-3.9.1.tgz#570bc7dede46d61cdcde687d65d3eecbaa3aaff5" integrity sha512-RrL9VxMEPyDMHOd9uFbvMe8X55X16/cGM5IgOKgRElQZutpX89iS6vwl64duTV1/16w5JY7tuFNXqoekmh1EmA== +lodash.capitalize@^4.2.1: + version "4.2.1" + resolved "https://registry.yarnpkg.com/lodash.capitalize/-/lodash.capitalize-4.2.1.tgz#f826c9b4e2a8511d84e3aca29db05e1a4f3b72a9" + integrity sha512-kZzYOKspf8XVX5AvmQF94gQW0lejFVgb80G85bU4ZWzoJ6C03PQg3coYAUpSTpQWelrZELd3XWgHzw4Ck5kaIw== + lodash.clonedeep@^4.5.0: version "4.5.0" resolved "https://registry.yarnpkg.com/lodash.clonedeep/-/lodash.clonedeep-4.5.0.tgz#e23f3f9c4f8fbdde872529c1071857a086e5ccef" @@ -11081,6 +12337,11 @@ lodash.escape@^4.0.1: resolved "https://registry.yarnpkg.com/lodash.escape/-/lodash.escape-4.0.1.tgz#c9044690c21e04294beaa517712fded1fa88de98" integrity sha512-nXEOnb/jK9g0DYMr1/Xvq6l5xMD7GDG55+GSYIYmS0G4tBk/hURD4JR9WCavs04t33WmJx9kCyp9vJ+mr4BOUw== +lodash.escaperegexp@^4.1.2: + version "4.1.2" + resolved "https://registry.yarnpkg.com/lodash.escaperegexp/-/lodash.escaperegexp-4.1.2.tgz#64762c48618082518ac3df4ccf5d5886dae20347" + integrity sha512-TM9YBvyC84ZxE3rgfefxUWiQKLilstD6k7PTGt6wfbtXF8ixIJLOL3VYyV/z+ZiPLsVxAsKAFVwWlWeb2Y8Yyw== + lodash.flatten@^4.4.0: version "4.4.0" resolved "https://registry.yarnpkg.com/lodash.flatten/-/lodash.flatten-4.4.0.tgz#f31c22225a9632d2bbf8e4addbef240aa765a61f" @@ -11134,6 +12395,11 @@ lodash.ismap@^4.3.0: resolved "https://registry.yarnpkg.com/lodash.ismap/-/lodash.ismap-4.4.2.tgz#836bf06dee57fd3d2aa357bf6946e61d1e77e279" integrity sha512-djSMwsQ2aRroLLC+xNzJXIFkEkM28FYzNykbBPZpcgdsNV9vx+BIwuMUoSBSf+1f7wB+pym/nlAWCOeI+L8ysw== +lodash.ismatch@^4.4.0: + version "4.4.0" + resolved "https://registry.yarnpkg.com/lodash.ismatch/-/lodash.ismatch-4.4.0.tgz#756cb5150ca3ba6f11085a78849645f188f85f37" + integrity sha512-fPMfXjGQEV9Xsq/8MTSgUf255gawYRbjwMyDbcvDhXgV7enSZA0hynz6vMPnpAb5iONEzBHBPsT+0zes5Z301g== + lodash.isnumber@^3.0.3: version "3.0.3" resolved "https://registry.yarnpkg.com/lodash.isnumber/-/lodash.isnumber-3.0.3.tgz#3ce76810c5928d03352301ac287317f11c0b1ffc" @@ -11213,7 +12479,12 @@ lodash.uniq@^4.5.0: resolved "https://registry.yarnpkg.com/lodash.uniq/-/lodash.uniq-4.5.0.tgz#d0225373aeb652adc1bc82e4945339a842754773" integrity sha512-xfBaXQd9ryd9dlSDvnvI0lvxfLJlYAZzXomUYzLKtUeOQvOP5piqAWuGtrhWeqaXK9hhoM/iyJc5AV+XfsX3HQ== -lodash@^4.0.0, lodash@^4.17.11, lodash@^4.17.14, lodash@^4.17.15, lodash@^4.17.19, lodash@^4.17.20, lodash@^4.17.21, lodash@^4.7.0: +lodash.uniqby@^4.7.0: + version "4.7.0" + resolved "https://registry.yarnpkg.com/lodash.uniqby/-/lodash.uniqby-4.7.0.tgz#d99c07a669e9e6d24e1362dfe266c67616af1302" + integrity sha512-e/zcLx6CSbmaEgFHCA7BnoQKyCtKMxnuWrJygbwPs/AIn+IMKl66L8/s+wBUn5LRw2pZx3bUHibiV1b6aTWIww== + +lodash@^4.0.0, lodash@^4.17.11, lodash@^4.17.14, lodash@^4.17.15, lodash@^4.17.19, lodash@^4.17.20, lodash@^4.17.21, lodash@^4.17.4, lodash@^4.7.0: version "4.17.21" resolved "https://registry.yarnpkg.com/lodash/-/lodash-4.17.21.tgz#679591c564c3bffaae8454cf0b3df370c3d6911c" integrity sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg== @@ -11282,6 +12553,11 @@ lru-cache@^6.0.0: dependencies: yallist "^4.0.0" +lru-cache@^7.4.4, lru-cache@^7.5.1, lru-cache@^7.7.1: + version "7.18.3" + resolved "https://registry.yarnpkg.com/lru-cache/-/lru-cache-7.18.3.tgz#f793896e0fd0e954a59dfdd82f0773808df6aa89" + integrity sha512-jumlc0BIUrS3qJGgIkWZsyfAM7NCWiBcCDhnd+3NNM5KbBmLTgHVfWBcg6W+rLUsIpzpERPsvwUP7CckAQSOoA== + lz-string@^1.4.4: version "1.4.4" resolved "https://registry.yarnpkg.com/lz-string/-/lz-string-1.4.4.tgz#c0d8eaf36059f705796e1e344811cf4c498d3a26" @@ -11316,6 +12592,28 @@ make-dir@^3.0.0, make-dir@^3.0.2, make-dir@^3.1.0: dependencies: semver "^6.0.0" +make-fetch-happen@^10.0.3, make-fetch-happen@^10.0.6, make-fetch-happen@^10.2.0: + version "10.2.1" + resolved "https://registry.yarnpkg.com/make-fetch-happen/-/make-fetch-happen-10.2.1.tgz#f5e3835c5e9817b617f2770870d9492d28678164" + integrity sha512-NgOPbRiaQM10DYXvN3/hhGVI2M5MtITFryzBGxHM5p4wnFxsVCbxkrBrDsk+EZ5OB4jEOT7AjDxtdF+KVEFT7w== + dependencies: + agentkeepalive "^4.2.1" + cacache "^16.1.0" + http-cache-semantics "^4.1.0" + http-proxy-agent "^5.0.0" + https-proxy-agent "^5.0.0" + is-lambda "^1.0.1" + lru-cache "^7.7.1" + minipass "^3.1.6" + minipass-collect "^1.0.2" + minipass-fetch "^2.0.3" + minipass-flush "^1.0.5" + minipass-pipeline "^1.2.4" + negotiator "^0.6.3" + promise-retry "^2.0.1" + socks-proxy-agent "^7.0.0" + ssri "^9.0.0" + makeerror@1.0.12: version "1.0.12" resolved "https://registry.yarnpkg.com/makeerror/-/makeerror-1.0.12.tgz#3e5dd2079a82e812e983cc6610c4a2cb0eaa801a" @@ -11361,6 +12659,23 @@ markdown-it@^13.0.1: mdurl "^1.0.1" uc.micro "^1.0.5" +marked-terminal@^5.1.1: + version "5.2.0" + resolved "https://registry.yarnpkg.com/marked-terminal/-/marked-terminal-5.2.0.tgz#c5370ec2bae24fb2b34e147b731c94fa933559d3" + integrity sha512-Piv6yNwAQXGFjZSaiNljyNFw7jKDdGrw70FSbtxEyldLsyeuV5ZHm/1wW++kWbrOF1VPnUgYOhB2oLL0ZpnekA== + dependencies: + ansi-escapes "^6.2.0" + cardinal "^2.1.1" + chalk "^5.2.0" + cli-table3 "^0.6.3" + node-emoji "^1.11.0" + supports-hyperlinks "^2.3.0" + +marked@^4.1.0: + version "4.3.0" + resolved "https://registry.yarnpkg.com/marked/-/marked-4.3.0.tgz#796362821b019f734054582038b116481b456cf3" + integrity sha512-PRsaiG84bK+AMvxziE/lCFss8juXjNaWzVbN5tXAm4XjeaS9NAHhop+PjQxz2A9h8Q4M/xGmzP8vqNwy6JeK0A== + match-sorter@^6.0.2: version "6.3.1" resolved "https://registry.yarnpkg.com/match-sorter/-/match-sorter-6.3.1.tgz#98cc37fda756093424ddf3cbc62bfe9c75b92bda" @@ -11481,6 +12796,14 @@ micromatch@^3.1.10, micromatch@^3.1.4: snapdragon "^0.8.1" to-regex "^3.0.2" +micromatch@^4.0.0: + version "4.0.8" + resolved "https://registry.yarnpkg.com/micromatch/-/micromatch-4.0.8.tgz#d66fa18f3a47076789320b9b1af32bd86d9fa202" + integrity sha512-PXwfBhYu0hBCPw8Dn0E+WDYb7af3dSLVWKi3HGv84IdF4TyFoC0ysxFd0Goxw7nSv4T/PzEJQxsYsEiFCKo2BA== + dependencies: + braces "^3.0.3" + picomatch "^2.3.1" + micromatch@^4.0.2, micromatch@^4.0.4, micromatch@^4.0.5: version "4.0.5" resolved "https://registry.yarnpkg.com/micromatch/-/micromatch-4.0.5.tgz#bc8999a7cbbf77cdc89f132f6e467051b49090c6" @@ -11519,11 +12842,21 @@ mime@1.6.0: resolved "https://registry.yarnpkg.com/mime/-/mime-1.6.0.tgz#32cd9e5c64553bd58d19a568af452acff04981b1" integrity sha512-x0Vn8spI+wuJ1O6S7gnbaQg8Pxh4NNHb7KSINmEWKiPE4RKOplvijn+NkmYmmRgP68mc70j2EbeTFRsrswaQeg== +mime@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/mime/-/mime-3.0.0.tgz#b374550dca3a0c18443b0c950a6a58f1931cf7a7" + integrity sha512-jSCU7/VB1loIWBZe14aEYHU/+1UMEHoaO7qxCOVJOw9GgH72VAWppxNcjU+x9a2k3GSIBXNKxXQFqRvvZ7vr3A== + mimic-fn@^2.1.0: version "2.1.0" resolved "https://registry.yarnpkg.com/mimic-fn/-/mimic-fn-2.1.0.tgz#7ed2c2ccccaf84d3ffcb7a69b57711fc2083401b" integrity sha512-OqbOk5oEQeAZ8WXWydlu9HJjz9WVdEIvamMCcXmuqUYjTknH/sqsWvhQ3vgwKFRR1HpjvNBKQ37nbJgYzGqGcg== +mimic-fn@^4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/mimic-fn/-/mimic-fn-4.0.0.tgz#60a90550d5cb0b239cca65d893b1a53b29871ecc" + integrity sha512-vqiC06CuhBTUdZH+RYl8sFrL096vA45Ok5ISO6sE/Mr1jRbGH4Csnhi8f3wKVl7x8mO4Au7Ir9D3Oyv1VYMFJw== + mimic-response@^1.0.0, mimic-response@^1.0.1: version "1.0.1" resolved "https://registry.yarnpkg.com/mimic-response/-/mimic-response-1.0.1.tgz#4923538878eef42063cb8a3e3b0798781487ab1b" @@ -11579,6 +12912,13 @@ minimatch@^5.0.1: dependencies: brace-expansion "^2.0.1" +minimatch@^5.1.0: + version "5.1.6" + resolved "https://registry.yarnpkg.com/minimatch/-/minimatch-5.1.6.tgz#1cfcb8cf5522ea69952cd2af95ae09477f122a96" + integrity sha512-lKwV/1brpG6mBUFHtb7NUmtABCb2WZZmm2wNiOA5hAb8VdCS4B3dtMWyvcoViccwAW/COERjXLt0zP1zXUN26g== + dependencies: + brace-expansion "^2.0.1" + minimatch@~3.0.2: version "3.0.8" resolved "https://registry.yarnpkg.com/minimatch/-/minimatch-3.0.8.tgz#5e6a59bd11e2ab0de1cfb843eb2d82e546c321c1" @@ -11600,6 +12940,53 @@ minimist@^1.1.0, minimist@^1.1.1, minimist@^1.2.0, minimist@^1.2.5, minimist@^1. resolved "https://registry.yarnpkg.com/minimist/-/minimist-1.2.8.tgz#c1a464e7693302e082a075cee0c057741ac4772c" integrity sha512-2yyAR8qBkN3YuheJanUpWC5U3bb5osDywNB8RzDVlDwDHbocAJveqqj1u8+SVD7jkWT4yvsHCpWqqWqAxb0zCA== +minipass-collect@^1.0.2: + version "1.0.2" + resolved "https://registry.yarnpkg.com/minipass-collect/-/minipass-collect-1.0.2.tgz#22b813bf745dc6edba2576b940022ad6edc8c617" + integrity sha512-6T6lH0H8OG9kITm/Jm6tdooIbogG9e0tLgpY6mphXSm/A9u8Nq1ryBG+Qspiub9LjWlBPsPS3tWQ/Botq4FdxA== + dependencies: + minipass "^3.0.0" + +minipass-fetch@^2.0.3: + version "2.1.2" + resolved "https://registry.yarnpkg.com/minipass-fetch/-/minipass-fetch-2.1.2.tgz#95560b50c472d81a3bc76f20ede80eaed76d8add" + integrity sha512-LT49Zi2/WMROHYoqGgdlQIZh8mLPZmOrN2NdJjMXxYe4nkN6FUyuPuOAOedNJDrx0IRGg9+4guZewtp8hE6TxA== + dependencies: + minipass "^3.1.6" + minipass-sized "^1.0.3" + minizlib "^2.1.2" + optionalDependencies: + encoding "^0.1.13" + +minipass-flush@^1.0.5: + version "1.0.5" + resolved "https://registry.yarnpkg.com/minipass-flush/-/minipass-flush-1.0.5.tgz#82e7135d7e89a50ffe64610a787953c4c4cbb373" + integrity sha512-JmQSYYpPUqX5Jyn1mXaRwOda1uQ8HP5KAT/oDSLCzt1BYRhQU0/hDtsB1ufZfEEzMZ9aAVmsBw8+FWsIXlClWw== + dependencies: + minipass "^3.0.0" + +minipass-json-stream@^1.0.1: + version "1.0.2" + resolved "https://registry.yarnpkg.com/minipass-json-stream/-/minipass-json-stream-1.0.2.tgz#5121616c77a11c406c3ffa77509e0b77bb267ec3" + integrity sha512-myxeeTm57lYs8pH2nxPzmEEg8DGIgW+9mv6D4JZD2pa81I/OBjeU7PtICXV6c9eRGTA5JMDsuIPUZRCyBMYNhg== + dependencies: + jsonparse "^1.3.1" + minipass "^3.0.0" + +minipass-pipeline@^1.2.4: + version "1.2.4" + resolved "https://registry.yarnpkg.com/minipass-pipeline/-/minipass-pipeline-1.2.4.tgz#68472f79711c084657c067c5c6ad93cddea8214c" + integrity sha512-xuIq7cIOt09RPRJ19gdi4b+RiNvDFYe5JH+ggNvBqGqpQXcru3PcRmOZuHBKWK1Txf9+cQ+HMVN4d6z46LZP7A== + dependencies: + minipass "^3.0.0" + +minipass-sized@^1.0.3: + version "1.0.3" + resolved "https://registry.yarnpkg.com/minipass-sized/-/minipass-sized-1.0.3.tgz#70ee5a7c5052070afacfbc22977ea79def353b70" + integrity sha512-MbkQQ2CTiBMlA2Dm/5cY+9SWFEN8pzzOXi6rlM5Xxq0Yqbda5ZQy9sU75a673FE9ZK0Zsbr6Y5iP6u9nktfg2g== + dependencies: + minipass "^3.0.0" + minipass@^2.6.0, minipass@^2.9.0: version "2.9.0" resolved "https://registry.yarnpkg.com/minipass/-/minipass-2.9.0.tgz#e713762e7d3e32fed803115cf93e04bca9fcc9a6" @@ -11608,6 +12995,18 @@ minipass@^2.6.0, minipass@^2.9.0: safe-buffer "^5.1.2" yallist "^3.0.0" +minipass@^3.0.0, minipass@^3.1.1, minipass@^3.1.6: + version "3.3.6" + resolved "https://registry.yarnpkg.com/minipass/-/minipass-3.3.6.tgz#7bba384db3a1520d18c9c0e5251c3444e95dd94a" + integrity sha512-DxiNidxSEK+tHG6zOIklvNOwm3hvCrbUrdtzY74U6HKTJxvIDfOUL5W5P2Ghd3DTkhhKPYGqeNUIh5qcM4YBfw== + dependencies: + yallist "^4.0.0" + +minipass@^5.0.0: + version "5.0.0" + resolved "https://registry.yarnpkg.com/minipass/-/minipass-5.0.0.tgz#3e9788ffb90b694a5d0ec94479a45b5d8738133d" + integrity sha512-3FnjYuehv9k6ovOEbyOswadCDPX1piCfhV8ncmYtHOjuPwylVWsghTLo7rabjC3Rx5xD4HDx8Wm1xnMF7S5qFQ== + minizlib@^1.3.3: version "1.3.3" resolved "https://registry.yarnpkg.com/minizlib/-/minizlib-1.3.3.tgz#2290de96818a34c29551c8a8d301216bd65a861d" @@ -11615,6 +13014,14 @@ minizlib@^1.3.3: dependencies: minipass "^2.9.0" +minizlib@^2.1.1, minizlib@^2.1.2: + version "2.1.2" + resolved "https://registry.yarnpkg.com/minizlib/-/minizlib-2.1.2.tgz#e90d3466ba209b932451508a11ce3d3632145931" + integrity sha512-bAxsR8BVfj60DWXHE3u30oHzfl4G7khkSuPW+qvpd7jFRHm7dLxOjUk1EHACJ/hxLY8phGJ0YhYHZo7jil7Qdg== + dependencies: + minipass "^3.0.0" + yallist "^4.0.0" + mixin-deep@^1.2.0: version "1.3.2" resolved "https://registry.yarnpkg.com/mixin-deep/-/mixin-deep-1.3.2.tgz#1120b43dc359a785dce65b55b82e257ccf479566" @@ -11628,6 +13035,15 @@ mkdirp-classic@^0.5.2: resolved "https://registry.yarnpkg.com/mkdirp-classic/-/mkdirp-classic-0.5.3.tgz#fa10c9115cc6d8865be221ba47ee9bed78601113" integrity sha512-gKLcREMhtuZRwRAfqP3RFW+TK4JqApVBtOIftVgjuABpAtpxhPGaDcfvbhNvD0B8iD1oUr/txX35NjcaY6Ns/A== +mkdirp-infer-owner@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/mkdirp-infer-owner/-/mkdirp-infer-owner-2.0.0.tgz#55d3b368e7d89065c38f32fd38e638f0ab61d316" + integrity sha512-sdqtiFt3lkOaYvTXSRIUjkIdPTcxgv5+fgqYE/5qgwdw12cOrAuzzgzvVExIkH/ul1oeHN3bCLOWSG3XOqbKKw== + dependencies: + chownr "^2.0.0" + infer-owner "^1.0.4" + mkdirp "^1.0.3" + mkdirp@^0.5.1, mkdirp@^0.5.5, mkdirp@~0.5.1: version "0.5.6" resolved "https://registry.yarnpkg.com/mkdirp/-/mkdirp-0.5.6.tgz#7def03d2432dcae4ba1d611445c48396062255f6" @@ -11635,6 +13051,11 @@ mkdirp@^0.5.1, mkdirp@^0.5.5, mkdirp@~0.5.1: dependencies: minimist "^1.2.6" +mkdirp@^1.0.3, mkdirp@^1.0.4: + version "1.0.4" + resolved "https://registry.yarnpkg.com/mkdirp/-/mkdirp-1.0.4.tgz#3eb5ed62622756d79a5f0e2a221dfebad75c2f7e" + integrity sha512-vVqVZQyf3WLx2Shd0qJ9xuvqgAyKPLAiqITEtqW0oIUjzo3PePDd6fW9iFz30ef7Ysp/oiWqbhszeGWW2T6Gzw== + mocha@^10.2.0: version "10.2.0" resolved "https://registry.yarnpkg.com/mocha/-/mocha-10.2.0.tgz#1fd4a7c32ba5ac372e03a17eef435bd00e5c68b8" @@ -11662,6 +13083,11 @@ mocha@^10.2.0: yargs-parser "20.2.4" yargs-unparser "2.0.0" +modify-values@^1.0.0: + version "1.0.1" + resolved "https://registry.yarnpkg.com/modify-values/-/modify-values-1.0.1.tgz#b3939fa605546474e3e3e3c63d64bd43b4ee6022" + integrity sha512-xV2bxeN6F7oYjZWTe/YPAy6MN2M+sL4u/Rlm2AHCIVGfo2p1yGmBHQ6vHehl4bRTZBdHu3TSkWdYgkwpYzAGSw== + module-deps@^6.2.3: version "6.2.3" resolved "https://registry.yarnpkg.com/module-deps/-/module-deps-6.2.3.tgz#15490bc02af4b56cf62299c7c17cba32d71a96ee" @@ -11703,7 +13129,7 @@ ms@2.1.2: resolved "https://registry.yarnpkg.com/ms/-/ms-2.1.2.tgz#d09d1f357b443f493382a8eb3ccd183872ae6009" integrity sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w== -ms@2.1.3, ms@^2.1.1: +ms@2.1.3, ms@^2.0.0, ms@^2.1.1, ms@^2.1.2: version "2.1.3" resolved "https://registry.yarnpkg.com/ms/-/ms-2.1.3.tgz#574c8138ce1d2b5861f0b44579dbadd60c6615b2" integrity sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA== @@ -11716,7 +13142,7 @@ multicast-dns@^7.2.5: dns-packet "^5.2.2" thunky "^1.0.2" -mute-stream@0.0.8: +mute-stream@0.0.8, mute-stream@~0.0.4: version "0.0.8" resolved "https://registry.yarnpkg.com/mute-stream/-/mute-stream-0.0.8.tgz#1630c42b2251ff81e2a283de96a5497ea92e5e0d" integrity sha512-nnbWWOkoWyUsTjKrhgD0dcz22mdkSnpYqbEjIm2nhwhuxlSkpywJmBo8h0ZqJdkp73mb90SssHkN4rsRaBAfAA== @@ -11775,7 +13201,7 @@ nearley@^2.7.10: railroad-diagrams "^1.0.0" randexp "0.4.6" -negotiator@0.6.3: +negotiator@0.6.3, negotiator@^0.6.3: version "0.6.3" resolved "https://registry.yarnpkg.com/negotiator/-/negotiator-0.6.3.tgz#58e323a72fedc0d6f9cd4d31fe49f51479590ccd" integrity sha512-+EUsqGPLsM+j/zdChZjsnX51g4XrHFOIXwfnCVPGlQk/k5giakcKsuxCObBRu6DSm9opw/O6slWbJdghQM4bBg== @@ -11785,6 +13211,11 @@ neo-async@^2.5.0, neo-async@^2.6.0, neo-async@^2.6.2: resolved "https://registry.yarnpkg.com/neo-async/-/neo-async-2.6.2.tgz#b4aafb93e3aeb2d8174ca53cf163ab7d7308305f" integrity sha512-Yd3UES5mWCSqR+qNT93S3UoYUkqAZ9lLg8a7g9rimsWmYGK8cVToA4/sF3RrshdyV3sAGMXVUmpMYOw+dLpOuw== +nerf-dart@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/nerf-dart/-/nerf-dart-1.0.0.tgz#e6dab7febf5ad816ea81cf5c629c5a0ebde72c1a" + integrity sha512-EZSPZB70jiVsivaBLYDCyntd5eH8NTSMOn3rB+HxwdmKThGELLdYv8qVIMWvZEFy9w8ZZpW9h9OB32l1rGtj7g== + nice-try@^1.0.4: version "1.0.5" resolved "https://registry.yarnpkg.com/nice-try/-/nice-try-1.0.5.tgz#a3378a7696ce7d223e88fc9b764bd7ef1089e366" @@ -11805,6 +13236,20 @@ node-dir@^0.1.17: dependencies: minimatch "^3.0.2" +node-emoji@^1.11.0: + version "1.11.0" + resolved "https://registry.yarnpkg.com/node-emoji/-/node-emoji-1.11.0.tgz#69a0150e6946e2f115e9d7ea4df7971e2628301c" + integrity sha512-wo2DpQkQp7Sjm2A0cq+sN7EHKO6Sl0ctXeBdFZrL9T9+UywORbufTcTZxom8YqpLQt/FqNMUkOpkZrJVYSKD3A== + dependencies: + lodash "^4.17.21" + +node-fetch@^2.6.7: + version "2.7.0" + resolved "https://registry.yarnpkg.com/node-fetch/-/node-fetch-2.7.0.tgz#d0f0fa6e3e2dc1d27efcd8ad99d550bda94d187d" + integrity sha512-c4FRfUm/dbcWZ7U+1Wq0AwCyFL+3nt2bEw05wfxSz+DWpWsitgmSgYmy2dQdWyKC1694ELPqMs/YzUSNozLt8A== + dependencies: + whatwg-url "^5.0.0" + node-forge@^1: version "1.3.1" resolved "https://registry.yarnpkg.com/node-forge/-/node-forge-1.3.1.tgz#be8da2af243b2417d5f646a770663a92b7e9ded3" @@ -11817,6 +13262,23 @@ node-gettext@^2.0.0: dependencies: lodash.get "^4.4.2" +node-gyp@^9.0.0, node-gyp@^9.1.0: + version "9.4.1" + resolved "https://registry.yarnpkg.com/node-gyp/-/node-gyp-9.4.1.tgz#8a1023e0d6766ecb52764cc3a734b36ff275e185" + integrity sha512-OQkWKbjQKbGkMf/xqI1jjy3oCTgMKJac58G2+bjZb3fza6gW2YrCSdMQYaoTb70crvE//Gngr4f0AgVHmqHvBQ== + dependencies: + env-paths "^2.2.0" + exponential-backoff "^3.1.1" + glob "^7.1.4" + graceful-fs "^4.2.6" + make-fetch-happen "^10.0.3" + nopt "^6.0.0" + npmlog "^6.0.0" + rimraf "^3.0.2" + semver "^7.3.5" + tar "^6.1.2" + which "^2.0.2" + node-http-proxy-json@^0.1.9: version "0.1.9" resolved "https://registry.yarnpkg.com/node-http-proxy-json/-/node-http-proxy-json-0.1.9.tgz#5e744138c189ebd7e0105fe92d035a5486478cd4" @@ -11844,6 +13306,13 @@ node-releases@^2.0.14: resolved "https://registry.yarnpkg.com/node-releases/-/node-releases-2.0.14.tgz#2ffb053bceb8b2be8495ece1ab6ce600c4461b0b" integrity sha512-y10wOWt8yZpqXmOgRo77WaHEmhYQYGNA6y421PKsKYWEK8aW+cqAphborZDhqfyKrbZEN92CN1X2KbafY2s7Yw== +nopt@^6.0.0: + version "6.0.0" + resolved "https://registry.yarnpkg.com/nopt/-/nopt-6.0.0.tgz#245801d8ebf409c6df22ab9d95b65e1309cdb16d" + integrity sha512-ZwLpbTgdhuZUnZzjd7nb1ZV+4DoiC6/sfiVKok72ym/4Tlf+DFdlHYmT2JPmcNNWV6Pi3SDf1kT+A4r9RTuT9g== + dependencies: + abbrev "^1.0.0" + normalize-package-data@^2.3.2, normalize-package-data@^2.5.0: version "2.5.0" resolved "https://registry.yarnpkg.com/normalize-package-data/-/normalize-package-data-2.5.0.tgz#e66db1838b200c1dfc233225d12cb36520e234a8" @@ -11854,7 +13323,7 @@ normalize-package-data@^2.3.2, normalize-package-data@^2.5.0: semver "2 || 3 || 4 || 5" validate-npm-package-license "^3.0.1" -normalize-package-data@^3.0.0: +normalize-package-data@^3.0.0, normalize-package-data@^3.0.2: version "3.0.3" resolved "https://registry.yarnpkg.com/normalize-package-data/-/normalize-package-data-3.0.3.tgz#dbcc3e2da59509a0983422884cd172eefdfa525e" integrity sha512-p2W1sgqij3zMMyRC067Dg16bfzVH+w7hyegmpIvZ4JNjqtGOVAIvLmjBx3yP7YTe9vKJgkoNOPjwQGogDoMXFA== @@ -11864,6 +13333,16 @@ normalize-package-data@^3.0.0: semver "^7.3.4" validate-npm-package-license "^3.0.1" +normalize-package-data@^4.0.0: + version "4.0.1" + resolved "https://registry.yarnpkg.com/normalize-package-data/-/normalize-package-data-4.0.1.tgz#b46b24e0616d06cadf9d5718b29b6d445a82a62c" + integrity sha512-EBk5QKKuocMJhB3BILuKhmaPjI8vNRSpIfO9woLC6NyHVkKKdVEdAO1mrT0ZfxNR1lKwCcTkuZfmGIFdizZ8Pg== + dependencies: + hosted-git-info "^5.0.0" + is-core-module "^2.8.1" + semver "^7.3.5" + validate-npm-package-license "^3.0.4" + normalize-path@^2.1.1: version "2.1.1" resolved "https://registry.yarnpkg.com/normalize-path/-/normalize-path-2.1.1.tgz#1ab28b556e198363a8c1a6f7e6fa20137fe6aed9" @@ -11886,7 +13365,7 @@ normalize-url@^4.1.0: resolved "https://registry.yarnpkg.com/normalize-url/-/normalize-url-4.5.1.tgz#0dd90cf1288ee1d1313b87081c9a5932ee48518a" integrity sha512-9UZCFRHQdNrfTpGg8+1INIg93B6zE0aXMVFkw1WFwvO4SlZywU6aLg5Of0Ap/PgcbSw4LNxvMWXMeugwMCX0AA== -normalize-url@^6.0.1: +normalize-url@^6.0.0, normalize-url@^6.0.1: version "6.1.0" resolved "https://registry.yarnpkg.com/normalize-url/-/normalize-url-6.1.0.tgz#40d0885b535deffe3f3147bec877d05fe4c5668a" integrity sha512-DlL+XwOy3NxAQ8xuC0okPgK46iuVNAK01YN7RueYBqqFeGsBjV9XmCAzAdgt+667bCl5kPh9EqKKDwnaPG1I7A== @@ -11898,6 +13377,95 @@ now-and-later@^2.0.0: dependencies: once "^1.3.2" +npm-audit-report@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/npm-audit-report/-/npm-audit-report-3.0.0.tgz#1bf3e531208b5f77347c8d00c3d9badf5be30cd6" + integrity sha512-tWQzfbwz1sc4244Bx2BVELw0EmZlCsCF0X93RDcmmwhonCsPMoEviYsi+32R+mdRvOWXolPce9zo64n2xgPESw== + dependencies: + chalk "^4.0.0" + +npm-bundled@^1.1.1: + version "1.1.2" + resolved "https://registry.yarnpkg.com/npm-bundled/-/npm-bundled-1.1.2.tgz#944c78789bd739035b70baa2ca5cc32b8d860bc1" + integrity sha512-x5DHup0SuyQcmL3s7Rx/YQ8sbw/Hzg0rj48eN0dV7hf5cmQq5PXIeioroH3raV1QC1yh3uTYuMThvEQF3iKgGQ== + dependencies: + npm-normalize-package-bin "^1.0.1" + +npm-bundled@^2.0.0: + version "2.0.1" + resolved "https://registry.yarnpkg.com/npm-bundled/-/npm-bundled-2.0.1.tgz#94113f7eb342cd7a67de1e789f896b04d2c600f4" + integrity sha512-gZLxXdjEzE/+mOstGDqR6b0EkhJ+kM6fxM6vUuckuctuVPh80Q6pw/rSZj9s4Gex9GxWtIicO1pc8DB9KZWudw== + dependencies: + npm-normalize-package-bin "^2.0.0" + +npm-install-checks@^5.0.0: + version "5.0.0" + resolved "https://registry.yarnpkg.com/npm-install-checks/-/npm-install-checks-5.0.0.tgz#5ff27d209a4e3542b8ac6b0c1db6063506248234" + integrity sha512-65lUsMI8ztHCxFz5ckCEC44DRvEGdZX5usQFriauxHEwt7upv1FKaQEmAtU0YnOAdwuNWCmk64xYiQABNrEyLA== + dependencies: + semver "^7.1.1" + +npm-normalize-package-bin@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/npm-normalize-package-bin/-/npm-normalize-package-bin-1.0.1.tgz#6e79a41f23fd235c0623218228da7d9c23b8f6e2" + integrity sha512-EPfafl6JL5/rU+ot6P3gRSCpPDW5VmIzX959Ob1+ySFUuuYHWHekXpwdUZcKP5C+DS4GEtdJluwBjnsNDl+fSA== + +npm-normalize-package-bin@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/npm-normalize-package-bin/-/npm-normalize-package-bin-2.0.0.tgz#9447a1adaaf89d8ad0abe24c6c84ad614a675fff" + integrity sha512-awzfKUO7v0FscrSpRoogyNm0sajikhBWpU0QMrW09AMi9n1PoKU6WaIqUzuJSQnpciZZmJ/jMZ2Egfmb/9LiWQ== + +npm-package-arg@^9.0.0, npm-package-arg@^9.0.1, npm-package-arg@^9.1.0: + version "9.1.2" + resolved "https://registry.yarnpkg.com/npm-package-arg/-/npm-package-arg-9.1.2.tgz#fc8acecb00235f42270dda446f36926ddd9ac2bc" + integrity sha512-pzd9rLEx4TfNJkovvlBSLGhq31gGu2QDexFPWT19yCDh0JgnRhlBLNo5759N0AJmBk+kQ9Y/hXoLnlgFD+ukmg== + dependencies: + hosted-git-info "^5.0.0" + proc-log "^2.0.1" + semver "^7.3.5" + validate-npm-package-name "^4.0.0" + +npm-packlist@^5.1.0: + version "5.1.3" + resolved "https://registry.yarnpkg.com/npm-packlist/-/npm-packlist-5.1.3.tgz#69d253e6fd664b9058b85005905012e00e69274b" + integrity sha512-263/0NGrn32YFYi4J533qzrQ/krmmrWwhKkzwTuM4f/07ug51odoaNjUexxO4vxlzURHcmYMH1QjvHjsNDKLVg== + dependencies: + glob "^8.0.1" + ignore-walk "^5.0.1" + npm-bundled "^2.0.0" + npm-normalize-package-bin "^2.0.0" + +npm-pick-manifest@^7.0.0, npm-pick-manifest@^7.0.2: + version "7.0.2" + resolved "https://registry.yarnpkg.com/npm-pick-manifest/-/npm-pick-manifest-7.0.2.tgz#1d372b4e7ea7c6712316c0e99388a73ed3496e84" + integrity sha512-gk37SyRmlIjvTfcYl6RzDbSmS9Y4TOBXfsPnoYqTHARNgWbyDiCSMLUpmALDj4jjcTZpURiEfsSHJj9k7EV4Rw== + dependencies: + npm-install-checks "^5.0.0" + npm-normalize-package-bin "^2.0.0" + npm-package-arg "^9.0.0" + semver "^7.3.5" + +npm-profile@^6.2.0: + version "6.2.1" + resolved "https://registry.yarnpkg.com/npm-profile/-/npm-profile-6.2.1.tgz#975c31ec75a6ae029ab5b8820ffdcbae3a1e3d5e" + integrity sha512-Tlu13duByHyDd4Xy0PgroxzxnBYWbGGL5aZifNp8cx2DxUrHSoETXtPKg38aRPsBWMRfDtvcvVfJNasj7oImQQ== + dependencies: + npm-registry-fetch "^13.0.1" + proc-log "^2.0.0" + +npm-registry-fetch@^13.0.0, npm-registry-fetch@^13.0.1, npm-registry-fetch@^13.3.1: + version "13.3.1" + resolved "https://registry.yarnpkg.com/npm-registry-fetch/-/npm-registry-fetch-13.3.1.tgz#bb078b5fa6c52774116ae501ba1af2a33166af7e" + integrity sha512-eukJPi++DKRTjSBRcDZSDDsGqRK3ehbxfFUcgaRd0Yp6kRwOwh2WVn0r+8rMB4nnuzvAk6rQVzl6K5CkYOmnvw== + dependencies: + make-fetch-happen "^10.0.6" + minipass "^3.1.6" + minipass-fetch "^2.0.3" + minipass-json-stream "^1.0.1" + minizlib "^2.1.2" + npm-package-arg "^9.0.1" + proc-log "^2.0.0" + npm-run-path@^2.0.0: version "2.0.2" resolved "https://registry.yarnpkg.com/npm-run-path/-/npm-run-path-2.0.2.tgz#35a9232dfa35d7067b4cb2ddf2357b1871536c5f" @@ -11912,6 +13480,107 @@ npm-run-path@^4.0.0, npm-run-path@^4.0.1: dependencies: path-key "^3.0.0" +npm-run-path@^5.1.0: + version "5.3.0" + resolved "https://registry.yarnpkg.com/npm-run-path/-/npm-run-path-5.3.0.tgz#e23353d0ebb9317f174e93417e4a4d82d0249e9f" + integrity sha512-ppwTtiJZq0O/ai0z7yfudtBpWIoxM8yE6nHi1X47eFR2EWORqfbu6CnPlNsjeN683eT0qG6H/Pyf9fCcvjnnnQ== + dependencies: + path-key "^4.0.0" + +npm-user-validate@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/npm-user-validate/-/npm-user-validate-1.0.1.tgz#31428fc5475fe8416023f178c0ab47935ad8c561" + integrity sha512-uQwcd/tY+h1jnEaze6cdX/LrhWhoBxfSknxentoqmIuStxUExxjWd3ULMLFPiFUrZKbOVMowH6Jq2FRWfmhcEw== + +npm@^8.3.0: + version "8.19.4" + resolved "https://registry.yarnpkg.com/npm/-/npm-8.19.4.tgz#65ad6a2dfdd157a4ef4467fb86e8dcd35a43493f" + integrity sha512-3HANl8i9DKnUA89P4KEgVNN28EjSeDCmvEqbzOAuxCFDzdBZzjUl99zgnGpOUumvW5lvJo2HKcjrsc+tfyv1Hw== + dependencies: + "@isaacs/string-locale-compare" "^1.1.0" + "@npmcli/arborist" "^5.6.3" + "@npmcli/ci-detect" "^2.0.0" + "@npmcli/config" "^4.2.1" + "@npmcli/fs" "^2.1.0" + "@npmcli/map-workspaces" "^2.0.3" + "@npmcli/package-json" "^2.0.0" + "@npmcli/run-script" "^4.2.1" + abbrev "~1.1.1" + archy "~1.0.0" + cacache "^16.1.3" + chalk "^4.1.2" + chownr "^2.0.0" + cli-columns "^4.0.0" + cli-table3 "^0.6.2" + columnify "^1.6.0" + fastest-levenshtein "^1.0.12" + fs-minipass "^2.1.0" + glob "^8.0.1" + graceful-fs "^4.2.10" + hosted-git-info "^5.2.1" + ini "^3.0.1" + init-package-json "^3.0.2" + is-cidr "^4.0.2" + json-parse-even-better-errors "^2.3.1" + libnpmaccess "^6.0.4" + libnpmdiff "^4.0.5" + libnpmexec "^4.0.14" + libnpmfund "^3.0.5" + libnpmhook "^8.0.4" + libnpmorg "^4.0.4" + libnpmpack "^4.1.3" + libnpmpublish "^6.0.5" + libnpmsearch "^5.0.4" + libnpmteam "^4.0.4" + libnpmversion "^3.0.7" + make-fetch-happen "^10.2.0" + minimatch "^5.1.0" + minipass "^3.1.6" + minipass-pipeline "^1.2.4" + mkdirp "^1.0.4" + mkdirp-infer-owner "^2.0.0" + ms "^2.1.2" + node-gyp "^9.1.0" + nopt "^6.0.0" + npm-audit-report "^3.0.0" + npm-install-checks "^5.0.0" + npm-package-arg "^9.1.0" + npm-pick-manifest "^7.0.2" + npm-profile "^6.2.0" + npm-registry-fetch "^13.3.1" + npm-user-validate "^1.0.1" + npmlog "^6.0.2" + opener "^1.5.2" + p-map "^4.0.0" + pacote "^13.6.2" + parse-conflict-json "^2.0.2" + proc-log "^2.0.1" + qrcode-terminal "^0.12.0" + read "~1.0.7" + read-package-json "^5.0.2" + read-package-json-fast "^2.0.3" + readdir-scoped-modules "^1.1.0" + rimraf "^3.0.2" + semver "^7.3.7" + ssri "^9.0.1" + tar "^6.1.11" + text-table "~0.2.0" + tiny-relative-date "^1.3.0" + treeverse "^2.0.0" + validate-npm-package-name "^4.0.0" + which "^2.0.2" + write-file-atomic "^4.0.1" + +npmlog@^6.0.0, npmlog@^6.0.2: + version "6.0.2" + resolved "https://registry.yarnpkg.com/npmlog/-/npmlog-6.0.2.tgz#c8166017a42f2dea92d6453168dd865186a70830" + integrity sha512-/vBvz5Jfr9dT/aFWd0FIRf+T/Q2WBsLENygUaFUqstqsycmZAP/t5BvFJTK0viFmSUxiUKTUplWy5vt+rvKIxg== + dependencies: + are-we-there-yet "^3.0.0" + console-control-strings "^1.1.0" + gauge "^4.0.3" + set-blocking "^2.0.0" + nth-check@^1.0.2: version "1.0.2" resolved "https://registry.yarnpkg.com/nth-check/-/nth-check-1.0.2.tgz#b2bd295c37e3dd58a3bf0700376663ba4d9cf05c" @@ -12079,6 +13748,13 @@ onetime@^5.1.0, onetime@^5.1.2: dependencies: mimic-fn "^2.1.0" +onetime@^6.0.0: + version "6.0.0" + resolved "https://registry.yarnpkg.com/onetime/-/onetime-6.0.0.tgz#7c24c18ed1fd2e9bca4bd26806a33613c77d34b4" + integrity sha512-1FlR+gjXK7X+AsAHso35MnyN5KqGwJRi/31ft6x0M194ht7S+rWAvd7PHss9xSKMzE0asv1pyIHaJYq+BbacAQ== + dependencies: + mimic-fn "^4.0.0" + open@^7.3.1: version "7.4.2" resolved "https://registry.yarnpkg.com/open/-/open-7.4.2.tgz#b8147e26dcf3e426316c730089fd71edd29c2321" @@ -12096,6 +13772,11 @@ open@^8.0.9, open@^8.4.0: is-docker "^2.1.1" is-wsl "^2.2.0" +opener@^1.5.2: + version "1.5.2" + resolved "https://registry.yarnpkg.com/opener/-/opener-1.5.2.tgz#5d37e1f35077b9dcac4301372271afdeb2a13598" + integrity sha512-ur5UIdyw5Y7yEj9wLzhqXiy6GZ3Mwx0yGI+5sMn2r0N0v3cKJvUmFH5yPP+WXh9e0xfyzyJX95D8l088DNFj7A== + optionator@^0.8.1: version "0.8.3" resolved "https://registry.yarnpkg.com/optionator/-/optionator-0.8.3.tgz#84fa1d036fe9d3c7e21d99884b601167ec8fb495" @@ -12154,11 +13835,35 @@ p-cancelable@^1.0.0: resolved "https://registry.yarnpkg.com/p-cancelable/-/p-cancelable-1.1.0.tgz#d078d15a3af409220c886f1d9a0ca2e441ab26cc" integrity sha512-s73XxOZ4zpt1edZYZzvhqFa6uvQc1vwUa0K0BdtIZgQMAJj9IbebH+JkgKZc9h+B05PKHLOTl4ajG1BmNrVZlw== +p-each-series@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/p-each-series/-/p-each-series-3.0.0.tgz#d1aed5e96ef29864c897367a7d2a628fdc960806" + integrity sha512-lastgtAdoH9YaLyDa5i5z64q+kzOcQHsQ5SsZJD3q0VEyI8mq872S3geuNbRUQLVAE9siMfgKrpj7MloKFHruw== + +p-filter@^2.0.0: + version "2.1.0" + resolved "https://registry.yarnpkg.com/p-filter/-/p-filter-2.1.0.tgz#1b1472562ae7a0f742f0f3d3d3718ea66ff9c09c" + integrity sha512-ZBxxZ5sL2HghephhpGAQdoskxplTwr7ICaehZwLIlfL6acuVgZPm8yBNuRAFBGEqtD/hmUeq9eqLg2ys9Xr/yw== + dependencies: + p-map "^2.0.0" + p-finally@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/p-finally/-/p-finally-1.0.0.tgz#3fbcfb15b899a44123b34b6dcc18b724336a2cae" integrity sha512-LICb2p9CB7FS+0eR1oqWnHhp0FljGLZCWBE9aix0Uye9W8LTQPwMTYVGWQWIw9RdQiDg4+epXQODwIYJtSJaow== +p-is-promise@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/p-is-promise/-/p-is-promise-3.0.0.tgz#58e78c7dfe2e163cf2a04ff869e7c1dba64a5971" + integrity sha512-Wo8VsW4IRQSKVXsJCn7TomUaVtyfjVDn3nUP7kE967BQk0CwFpdbZs0X0uk5sW9mkBa9eNM7hCMaG93WUAwxYQ== + +p-limit@^1.1.0: + version "1.3.0" + resolved "https://registry.yarnpkg.com/p-limit/-/p-limit-1.3.0.tgz#b86bd5f0c25690911c7590fcbfc2010d54b3ccb8" + integrity sha512-vvcXsLAJ9Dr5rQOPk7toZQZJApBl2K4J6dANSsEuh6QI41JYcsS/qhTGa9ErIUUgK3WNQoJYvylxvjqmiqEA9Q== + dependencies: + p-try "^1.0.0" + p-limit@^2.0.0, p-limit@^2.2.0: version "2.3.0" resolved "https://registry.yarnpkg.com/p-limit/-/p-limit-2.3.0.tgz#3dd33c647a214fdfffd835933eb086da0dc21db1" @@ -12173,6 +13878,20 @@ p-limit@^3.0.2: dependencies: yocto-queue "^0.1.0" +p-limit@^4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/p-limit/-/p-limit-4.0.0.tgz#914af6544ed32bfa54670b061cafcbd04984b644" + integrity sha512-5b0R4txpzjPWVw/cXXUResoD4hb6U/x9BH08L7nw+GN1sezDzPdxeRvpc9c433fZhBan/wusjbCsqwqm4EIBIQ== + dependencies: + yocto-queue "^1.0.0" + +p-locate@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/p-locate/-/p-locate-2.0.0.tgz#20a0103b222a70c8fd39cc2e580680f3dde5ec43" + integrity sha512-nQja7m7gSKuewoVRen45CtVfODR3crN3goVQ0DDZ9N3yHxgpkuBhZqsaiotSQRrADUrne346peY7kT3TSACykg== + dependencies: + p-limit "^1.1.0" + p-locate@^3.0.0: version "3.0.0" resolved "https://registry.yarnpkg.com/p-locate/-/p-locate-3.0.0.tgz#322d69a05c0264b25997d9f40cd8a891ab0064a4" @@ -12194,6 +13913,18 @@ p-locate@^5.0.0: dependencies: p-limit "^3.0.2" +p-locate@^6.0.0: + version "6.0.0" + resolved "https://registry.yarnpkg.com/p-locate/-/p-locate-6.0.0.tgz#3da9a49d4934b901089dca3302fa65dc5a05c04f" + integrity sha512-wPrq66Llhl7/4AGC6I+cqxT07LhXvWL08LNXz1fENOw0Ap4sRZZ/gZpTTJ5jpurzzzfS2W/Ge9BY3LgLjCShcw== + dependencies: + p-limit "^4.0.0" + +p-map@^2.0.0: + version "2.1.0" + resolved "https://registry.yarnpkg.com/p-map/-/p-map-2.1.0.tgz#310928feef9c9ecc65b68b17693018a665cea175" + integrity sha512-y3b8Kpd8OAN444hxfBbFfj1FY/RjtTd8tzYwhUqNYXx0fXx2iX4maP4Qr6qhIKbQXI02wTLAda4fYUbDagTUFw== + p-map@^4.0.0: version "4.0.0" resolved "https://registry.yarnpkg.com/p-map/-/p-map-4.0.0.tgz#bb2f95a5eda2ec168ec9274e06a747c3e2904d2b" @@ -12201,6 +13932,16 @@ p-map@^4.0.0: dependencies: aggregate-error "^3.0.0" +p-reduce@^2.0.0: + version "2.1.0" + resolved "https://registry.yarnpkg.com/p-reduce/-/p-reduce-2.1.0.tgz#09408da49507c6c274faa31f28df334bc712b64a" + integrity sha512-2USApvnsutq8uoxZBGbbWM0JIYLiEMJ9RlaN7fAzVNb9OZN0SHjjTTfIcb667XynS5Y1VhwDJVDa72TnPzAYWw== + +p-reduce@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/p-reduce/-/p-reduce-3.0.0.tgz#f11773794792974bd1f7a14c72934248abff4160" + integrity sha512-xsrIUgI0Kn6iyDYm9StOpOeK29XM1aboGji26+QEortiFST1hGZaUQOLhtEbqHErPpGW/aSz6allwK2qcptp0Q== + p-retry@^4.5.0: version "4.6.2" resolved "https://registry.yarnpkg.com/p-retry/-/p-retry-4.6.2.tgz#9baae7184057edd4e17231cee04264106e092a16" @@ -12209,6 +13950,11 @@ p-retry@^4.5.0: "@types/retry" "0.12.0" retry "^0.13.1" +p-try@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/p-try/-/p-try-1.0.0.tgz#cbc79cdbaf8fd4228e13f621f2b1a237c1b207b3" + integrity sha512-U1etNYuMJoIz3ZXSrrySFjsXQTWOx2/jdi86L+2pRvph/qMKL6sbcCYdH23fqsbm8TH2Gn0OybpT4eSFlCVHww== + p-try@^2.0.0: version "2.2.0" resolved "https://registry.yarnpkg.com/p-try/-/p-try-2.2.0.tgz#cb2868540e313d61de58fafbe35ce9004d5540e6" @@ -12224,6 +13970,33 @@ package-json@^6.3.0: registry-url "^5.0.0" semver "^6.2.0" +pacote@^13.0.3, pacote@^13.6.1, pacote@^13.6.2: + version "13.6.2" + resolved "https://registry.yarnpkg.com/pacote/-/pacote-13.6.2.tgz#0d444ba3618ab3e5cd330b451c22967bbd0ca48a" + integrity sha512-Gu8fU3GsvOPkak2CkbojR7vjs3k3P9cA6uazKTHdsdV0gpCEQq2opelnEv30KRQWgVzP5Vd/5umjcedma3MKtg== + dependencies: + "@npmcli/git" "^3.0.0" + "@npmcli/installed-package-contents" "^1.0.7" + "@npmcli/promise-spawn" "^3.0.0" + "@npmcli/run-script" "^4.1.0" + cacache "^16.0.0" + chownr "^2.0.0" + fs-minipass "^2.1.0" + infer-owner "^1.0.4" + minipass "^3.1.6" + mkdirp "^1.0.4" + npm-package-arg "^9.0.0" + npm-packlist "^5.1.0" + npm-pick-manifest "^7.0.0" + npm-registry-fetch "^13.0.1" + proc-log "^2.0.0" + promise-retry "^2.0.1" + read-package-json "^5.0.0" + read-package-json-fast "^2.0.3" + rimraf "^3.0.2" + ssri "^9.0.0" + tar "^6.1.11" + pako@~1.0.5: version "1.0.11" resolved "https://registry.yarnpkg.com/pako/-/pako-1.0.11.tgz#6c9599d340d54dfd3946380252a35705a6b992bf" @@ -12270,6 +14043,15 @@ parse-author@^2.0.0: dependencies: author-regex "^1.0.0" +parse-conflict-json@^2.0.1, parse-conflict-json@^2.0.2: + version "2.0.2" + resolved "https://registry.yarnpkg.com/parse-conflict-json/-/parse-conflict-json-2.0.2.tgz#3d05bc8ffe07d39600dc6436c6aefe382033d323" + integrity sha512-jDbRGb00TAPFsKWCpZZOT93SxVP9nONOSgES3AevqRq/CHvavEBvKAjxX9p5Y5F0RZLxH9Ufd9+RwtCsa+lFDA== + dependencies: + json-parse-even-better-errors "^2.3.1" + just-diff "^5.0.1" + just-diff-apply "^5.2.0" + parse-gitignore@^1.0.1: version "1.0.1" resolved "https://registry.yarnpkg.com/parse-gitignore/-/parse-gitignore-1.0.1.tgz#8b9dc57f17b810d495c5dfa62eb07caffe7758c7" @@ -12366,6 +14148,11 @@ path-exists@^4.0.0: resolved "https://registry.yarnpkg.com/path-exists/-/path-exists-4.0.0.tgz#513bdbe2d3b95d7762e8c1137efa195c6c61b5b3" integrity sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w== +path-exists@^5.0.0: + version "5.0.0" + resolved "https://registry.yarnpkg.com/path-exists/-/path-exists-5.0.0.tgz#a6aad9489200b21fab31e49cf09277e5116fb9e7" + integrity sha512-RjhtfwJOxzcFmNOi6ltcbcu4Iu+FL3zEj83dk4kAS+fVpTxXLO1b38RvJgT/0QwvV/L3aY9TAnyv0EOqW4GoMQ== + path-is-absolute@^1.0.0, path-is-absolute@^1.0.1: version "1.0.1" resolved "https://registry.yarnpkg.com/path-is-absolute/-/path-is-absolute-1.0.1.tgz#174b9268735534ffbc7ace6bf53a5a9e1b5c5f5f" @@ -12386,6 +14173,11 @@ path-key@^3.0.0, path-key@^3.1.0: resolved "https://registry.yarnpkg.com/path-key/-/path-key-3.1.1.tgz#581f6ade658cbba65a0d3380de7753295054f375" integrity sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q== +path-key@^4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/path-key/-/path-key-4.0.0.tgz#295588dc3aee64154f877adb9d780b81c554bf18" + integrity sha512-haREypq7xkM7ErfgIyA0z+Bj4AGKlMSdlQE2jvJo6huWD1EdkKYV+G/T4nq0YEF2vgTT8kqMFKo1uHn950r4SQ== + path-parse@^1.0.6, path-parse@^1.0.7: version "1.0.7" resolved "https://registry.yarnpkg.com/path-parse/-/path-parse-1.0.7.tgz#fbc114b60ca42b30d9daf5858e4bd68bbedb6735" @@ -12481,6 +14273,14 @@ pirates@^4.0.1, pirates@^4.0.4, pirates@^4.0.5: resolved "https://registry.yarnpkg.com/pirates/-/pirates-4.0.5.tgz#feec352ea5c3268fb23a37c702ab1699f35a5f3b" integrity sha512-8V9+HQPupnaXMA23c5hvl69zXvTwTzyAYasnkb0Tts4XvO4CliqONMOnvlq26rkhLC3nWDFBJf73LU1e1VZLaQ== +pkg-conf@^2.1.0: + version "2.1.0" + resolved "https://registry.yarnpkg.com/pkg-conf/-/pkg-conf-2.1.0.tgz#2126514ca6f2abfebd168596df18ba57867f0058" + integrity sha512-C+VUP+8jis7EsQZIhDYmS5qlNtjv2yP4SNtjXK9AP1ZcTRlnSfuumaTnRfYZnYgUUYVIKqL0fRvmUGDV2fmp6g== + dependencies: + find-up "^2.0.0" + load-json-file "^4.0.0" + pkg-dir@^3.0.0: version "3.0.0" resolved "https://registry.yarnpkg.com/pkg-dir/-/pkg-dir-3.0.0.tgz#2749020f239ed990881b1f71210d51eb6523bea3" @@ -13150,6 +14950,11 @@ pretty-format@^29.0.0, pretty-format@^29.2.1: ansi-styles "^5.0.0" react-is "^18.0.0" +proc-log@^2.0.0, proc-log@^2.0.1: + version "2.0.1" + resolved "https://registry.yarnpkg.com/proc-log/-/proc-log-2.0.1.tgz#8f3f69a1f608de27878f91f5c688b225391cb685" + integrity sha512-Kcmo2FhfDTXdcbfDH76N7uBYHINxc/8GW7UAVuVP9I+Va3uHSerrnKV6dLooga/gh7GlgzuCCr/eoldnL1muGw== + process-nextick-args@^2.0.0, process-nextick-args@~2.0.0: version "2.0.1" resolved "https://registry.yarnpkg.com/process-nextick-args/-/process-nextick-args-2.0.1.tgz#7820d9b16120cc55ca9ae7792680ae7dba6d7fe2" @@ -13165,6 +14970,29 @@ progress@^2.0.0: resolved "https://registry.yarnpkg.com/progress/-/progress-2.0.3.tgz#7e8cf8d8f5b8f239c1bc68beb4eb78567d572ef8" integrity sha512-7PiHtLll5LdnKIMw100I+8xJXR5gW2QwWYkT6iJva0bXitZKa/XMrSbdmg3r2Xnaidz9Qumd0VPaMrZlF9V9sA== +promise-all-reject-late@^1.0.0: + version "1.0.1" + resolved "https://registry.yarnpkg.com/promise-all-reject-late/-/promise-all-reject-late-1.0.1.tgz#f8ebf13483e5ca91ad809ccc2fcf25f26f8643c2" + integrity sha512-vuf0Lf0lOxyQREH7GDIOUMLS7kz+gs8i6B+Yi8dC68a2sychGrHTJYghMBD6k7eUcH0H5P73EckCA48xijWqXw== + +promise-call-limit@^1.0.1: + version "1.0.2" + resolved "https://registry.yarnpkg.com/promise-call-limit/-/promise-call-limit-1.0.2.tgz#f64b8dd9ef7693c9c7613e7dfe8d6d24de3031ea" + integrity sha512-1vTUnfI2hzui8AEIixbdAJlFY4LFDXqQswy/2eOlThAscXCY4It8FdVuI0fMJGAB2aWGbdQf/gv0skKYXmdrHA== + +promise-inflight@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/promise-inflight/-/promise-inflight-1.0.1.tgz#98472870bf228132fcbdd868129bad12c3c029e3" + integrity sha512-6zWPyEOFaQBJYcGMHBKTKJ3u6TBsnMFOIZSa6ce1e/ZrrsOlnHRHbabMjLiBYKp+n44X9eUI6VUPaukCXHuG4g== + +promise-retry@^2.0.1: + version "2.0.1" + resolved "https://registry.yarnpkg.com/promise-retry/-/promise-retry-2.0.1.tgz#ff747a13620ab57ba688f5fc67855410c370da22" + integrity sha512-y+WKFlBR8BGXnsNlIHFGPZmyDf3DFMoLhaflAnyZgV6rG6xu+JwesTo2Q9R6XwYmtmwAFCkAk3e35jEdoeh/3g== + dependencies: + err-code "^2.0.2" + retry "^0.12.0" + promise@^8.1.0: version "8.2.0" resolved "https://registry.yarnpkg.com/promise/-/promise-8.2.0.tgz#a1f6280ab67457fbfc8aad2b198c9497e9e5c806" @@ -13180,6 +15008,13 @@ prompts@^2.0.1, prompts@^2.4.2: kleur "^3.0.3" sisteransi "^1.0.5" +promzard@^0.3.0: + version "0.3.0" + resolved "https://registry.yarnpkg.com/promzard/-/promzard-0.3.0.tgz#26a5d6ee8c7dee4cb12208305acfb93ba382a9ee" + integrity sha512-JZeYqd7UAcHCwI+sTOeUDYkvEU+1bQ7iE0UT1MgB/tERkAPkesW46MrpIySzODi+owTjZtiF8Ay5j9m60KmMBw== + dependencies: + read "1" + prop-types-exact@^1.2.0: version "1.2.0" resolved "https://registry.yarnpkg.com/prop-types-exact/-/prop-types-exact-1.2.0.tgz#825d6be46094663848237e3925a98c6e944e9869" @@ -13198,6 +15033,11 @@ prop-types@^15.6.1, prop-types@^15.6.2, prop-types@^15.7.2, prop-types@^15.8.1: object-assign "^4.1.1" react-is "^16.13.1" +proto-list@~1.2.1: + version "1.2.4" + resolved "https://registry.yarnpkg.com/proto-list/-/proto-list-1.2.4.tgz#212d5bfe1318306a420f6402b8e26ff39647a849" + integrity sha512-vtK/94akxsTMhe0/cbfpR+syPuszcuwhqVjJq26CuNDgFGj682oRBXOP5MJpv2r7JtE8MsiepGIqvvOTBwn2vA== + proxy-addr@~2.0.7: version "2.0.7" resolved "https://registry.yarnpkg.com/proxy-addr/-/proxy-addr-2.0.7.tgz#f19fe69ceab311eeb94b42e70e8c2070f9ba1025" @@ -13285,6 +15125,11 @@ q@^1.1.2, q@^1.5.1: resolved "https://registry.yarnpkg.com/q/-/q-1.5.1.tgz#7e32f75b41381291d04611f1bf14109ac00651d7" integrity sha512-kV/CThkXo6xyFEZUugw/+pIOywXcDbFYgSct5cT3gqlbkBE1SJdwy6UQoZvodiWF/ckQLZyDE/Bu1M6gVu5lVw== +qrcode-terminal@^0.12.0: + version "0.12.0" + resolved "https://registry.yarnpkg.com/qrcode-terminal/-/qrcode-terminal-0.12.0.tgz#bb5b699ef7f9f0505092a3748be4464fe71b5819" + integrity sha512-EXtzRZmC+YGmGlDFbXKxQiMZNwCLEO6BANKXG4iCtSIM0yqc/pappSx3RIKr4r0uh5JsBckOXeKrB3Iz7mdQpQ== + qs@6.10.4: version "6.10.4" resolved "https://registry.yarnpkg.com/qs/-/qs-6.10.4.tgz#6a3003755add91c0ec9eacdc5f878b034e73f9e7" @@ -13653,6 +15498,11 @@ read-cache@^1.0.0: dependencies: pify "^2.3.0" +read-cmd-shim@^3.0.0: + version "3.0.1" + resolved "https://registry.yarnpkg.com/read-cmd-shim/-/read-cmd-shim-3.0.1.tgz#868c235ec59d1de2db69e11aec885bc095aea087" + integrity sha512-kEmDUoYf/CDy8yZbLTmhB1X9kkjf9Q80PCNsDMb7ufrGd6zZSQA1+UyjrO+pZm5K/S4OXCWJeiIt1JA8kAsa6g== + read-only-stream@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/read-only-stream/-/read-only-stream-2.0.0.tgz#2724fd6a8113d73764ac288d4386270c1dbf17f0" @@ -13660,6 +15510,24 @@ read-only-stream@^2.0.0: dependencies: readable-stream "^2.0.2" +read-package-json-fast@^2.0.2, read-package-json-fast@^2.0.3: + version "2.0.3" + resolved "https://registry.yarnpkg.com/read-package-json-fast/-/read-package-json-fast-2.0.3.tgz#323ca529630da82cb34b36cc0b996693c98c2b83" + integrity sha512-W/BKtbL+dUjTuRL2vziuYhp76s5HZ9qQhd/dKfWIZveD0O40453QNyZhC0e63lqZrAQ4jiOapVoeJ7JrszenQQ== + dependencies: + json-parse-even-better-errors "^2.3.0" + npm-normalize-package-bin "^1.0.1" + +read-package-json@^5.0.0, read-package-json@^5.0.2: + version "5.0.2" + resolved "https://registry.yarnpkg.com/read-package-json/-/read-package-json-5.0.2.tgz#b8779ccfd169f523b67208a89cc912e3f663f3fa" + integrity sha512-BSzugrt4kQ/Z0krro8zhTwV1Kd79ue25IhNN/VtHFy1mG/6Tluyi+msc0UpwaoQzxSHa28mntAjIZY6kEgfR9Q== + dependencies: + glob "^8.0.1" + json-parse-even-better-errors "^2.3.1" + normalize-package-data "^4.0.0" + npm-normalize-package-bin "^2.0.0" + read-pkg-up@^4.0.0: version "4.0.0" resolved "https://registry.yarnpkg.com/read-pkg-up/-/read-pkg-up-4.0.0.tgz#1b221c6088ba7799601c808f91161c66e58f8978" @@ -13668,7 +15536,7 @@ read-pkg-up@^4.0.0: find-up "^3.0.0" read-pkg "^3.0.0" -read-pkg-up@^7.0.1: +read-pkg-up@^7.0.0, read-pkg-up@^7.0.1: version "7.0.1" resolved "https://registry.yarnpkg.com/read-pkg-up/-/read-pkg-up-7.0.1.tgz#f3a6135758459733ae2b95638056e1854e7ef507" integrity sha512-zK0TB7Xd6JpCLmlLmufqykGE+/TlOePD6qKClNW7hHDKFh/J7/7gCWGR7joEQEW1bKq3a3yUZSObOoWLFQ4ohg== @@ -13677,6 +15545,15 @@ read-pkg-up@^7.0.1: read-pkg "^5.2.0" type-fest "^0.8.1" +read-pkg-up@^9.1.0: + version "9.1.0" + resolved "https://registry.yarnpkg.com/read-pkg-up/-/read-pkg-up-9.1.0.tgz#38ca48e0bc6c6b260464b14aad9bcd4e5b1fbdc3" + integrity sha512-vaMRR1AC1nrd5CQM0PhlRsO5oc2AAigqr7cCrZ/MW/Rsaflz4RlgzkpL4qoU/z1F6wrbd85iFv1OQj/y5RdGvg== + dependencies: + find-up "^6.3.0" + read-pkg "^7.1.0" + type-fest "^2.5.0" + read-pkg@^3.0.0: version "3.0.0" resolved "https://registry.yarnpkg.com/read-pkg/-/read-pkg-3.0.0.tgz#9cbc686978fee65d16c00e2b19c237fcf6e38389" @@ -13686,7 +15563,7 @@ read-pkg@^3.0.0: normalize-package-data "^2.3.2" path-type "^3.0.0" -read-pkg@^5.2.0: +read-pkg@^5.0.0, read-pkg@^5.2.0: version "5.2.0" resolved "https://registry.yarnpkg.com/read-pkg/-/read-pkg-5.2.0.tgz#7bf295438ca5a33e56cd30e053b34ee7250c93cc" integrity sha512-Ug69mNOpfvKDAc2Q8DRpMjjzdtrnv9HcSMX+4VsZxD1aZ6ZzrIE7rlzXBtWTyhULSMKg076AW6WR5iZpD0JiOg== @@ -13696,6 +15573,23 @@ read-pkg@^5.2.0: parse-json "^5.0.0" type-fest "^0.6.0" +read-pkg@^7.1.0: + version "7.1.0" + resolved "https://registry.yarnpkg.com/read-pkg/-/read-pkg-7.1.0.tgz#438b4caed1ad656ba359b3e00fd094f3c427a43e" + integrity sha512-5iOehe+WF75IccPc30bWTbpdDQLOCc3Uu8bi3Dte3Eueij81yx1Mrufk8qBx/YAbR4uL1FdUr+7BKXDwEtisXg== + dependencies: + "@types/normalize-package-data" "^2.4.1" + normalize-package-data "^3.0.2" + parse-json "^5.2.0" + type-fest "^2.0.0" + +read@1, read@^1.0.7, read@~1.0.7: + version "1.0.7" + resolved "https://registry.yarnpkg.com/read/-/read-1.0.7.tgz#b3da19bd052431a97671d44a42634adf710b40c4" + integrity sha512-rSOKNYUmaxy0om1BNjMN4ezNT6VKK+2xF4GBhc81mkH7L60i6dp8qPYrkndNLT3QPphoII3maL9PVC9XmhHwVQ== + dependencies: + mute-stream "~0.0.4" + "readable-stream@2 || 3", readable-stream@3, readable-stream@^3.0.0, readable-stream@^3.0.6, readable-stream@^3.1.1, readable-stream@^3.2.0, readable-stream@^3.4.0, readable-stream@^3.5.0, readable-stream@^3.6.0: version "3.6.2" resolved "https://registry.yarnpkg.com/readable-stream/-/readable-stream-3.6.2.tgz#56a9b36ea965c00c5a93ef31eb111a0f11056967" @@ -13718,6 +15612,16 @@ readable-stream@^2.0.0, readable-stream@^2.0.1, readable-stream@^2.0.2, readable string_decoder "~1.1.1" util-deprecate "~1.0.1" +readdir-scoped-modules@^1.1.0: + version "1.1.0" + resolved "https://registry.yarnpkg.com/readdir-scoped-modules/-/readdir-scoped-modules-1.1.0.tgz#8d45407b4f870a0dcaebc0e28670d18e74514309" + integrity sha512-asaikDeqAQg7JifRsZn1NJZXo9E+VwlyCfbkZhwyISinqk5zNS6266HS5kah6P0SaQKGF6SkNnZVHUzHFYxYDw== + dependencies: + debuglog "^1.0.1" + dezalgo "^1.0.0" + graceful-fs "^4.1.2" + once "^1.3.0" + readdirp@~3.6.0: version "3.6.0" resolved "https://registry.yarnpkg.com/readdirp/-/readdirp-3.6.0.tgz#74a370bd857116e245b29cc97340cd431a02a6c7" @@ -13757,6 +15661,13 @@ redent@^3.0.0: indent-string "^4.0.0" strip-indent "^3.0.0" +redeyed@~2.1.0: + version "2.1.1" + resolved "https://registry.yarnpkg.com/redeyed/-/redeyed-2.1.1.tgz#8984b5815d99cb220469c99eeeffe38913e6cc0b" + integrity sha512-FNpGGo1DycYAdnrKFxCMmKYgo/mILAqtRYbkdQD8Ep/Hk2PQ5+aEAEx+IU713RTDmuBaH0c8P5ZozurNu5ObRQ== + dependencies: + esprima "~4.0.0" + redux-logger@^3.0.6: version "3.0.6" resolved "https://registry.yarnpkg.com/redux-logger/-/redux-logger-3.0.6.tgz#f7555966f3098f3c88604c449cf0baf5778274bf" @@ -13864,6 +15775,13 @@ registry-auth-token@^4.0.0: dependencies: rc "1.2.8" +registry-auth-token@^5.0.0: + version "5.0.2" + resolved "https://registry.yarnpkg.com/registry-auth-token/-/registry-auth-token-5.0.2.tgz#8b026cc507c8552ebbe06724136267e63302f756" + integrity sha512-o/3ikDxtXaA59BmZuZrJZDJv8NMDGSj+6j6XaeBmHw8eY1i1qd9+6H+LjVvQXx3HN6aRCGa1cUdJ9RaJZUugnQ== + dependencies: + "@pnpm/npm-conf" "^2.1.0" + registry-url@^5.0.0: version "5.1.0" resolved "https://registry.yarnpkg.com/registry-url/-/registry-url-5.1.0.tgz#e98334b50d5434b81136b44ec638d9c2009c5009" @@ -14104,6 +16022,11 @@ ret@~0.1.10: resolved "https://registry.yarnpkg.com/ret/-/ret-0.1.15.tgz#b8a4825d5bdb1fc3f6f53c2bc33f81388681c7bc" integrity sha512-TTlYpa+OL+vMMNG24xSlQGEJ3B/RzEfUlLct7b5G/ytav+wPrplCpVMFuwzXbkecJrb6IYo1iFb0S9v37754mg== +retry@^0.12.0: + version "0.12.0" + resolved "https://registry.yarnpkg.com/retry/-/retry-0.12.0.tgz#1b42a6266a21f07421d1b0b54b7dc167b01c013b" + integrity sha512-9LkiTwjUh6rT555DtE9rTX+BKByPfrMzEAtnlEtdEwr3Nkffwiihqe2bWADg+OQRjt9gl6ICdmB/ZFDCGAtSow== + retry@^0.13.1: version "0.13.1" resolved "https://registry.yarnpkg.com/retry/-/retry-0.13.1.tgz#185b1587acf67919d63b357349e03537b2484658" @@ -14340,6 +16263,40 @@ selfsigned@^2.1.1: dependencies: node-forge "^1" +semantic-release@^20: + version "20.1.3" + resolved "https://registry.yarnpkg.com/semantic-release/-/semantic-release-20.1.3.tgz#fb2e58aa2c9d4d3bee93d1bcb4563c3ffbba6f66" + integrity sha512-sMIK9IaOdLP9hxzTxdTVHxINsazlDgv2gjZ1yeyRZXpIT3xAnuQUDEez8k+AC+lFUtGnfzA2Ct3V5lDyiMestw== + dependencies: + "@semantic-release/commit-analyzer" "^9.0.2" + "@semantic-release/error" "^3.0.0" + "@semantic-release/github" "^8.0.0" + "@semantic-release/npm" "^9.0.0" + "@semantic-release/release-notes-generator" "^10.0.0" + aggregate-error "^4.0.1" + cosmiconfig "^8.0.0" + debug "^4.0.0" + env-ci "^8.0.0" + execa "^7.0.0" + figures "^5.0.0" + find-versions "^5.1.0" + get-stream "^6.0.0" + git-log-parser "^1.2.0" + hook-std "^3.0.0" + hosted-git-info "^6.0.0" + lodash-es "^4.17.21" + marked "^4.1.0" + marked-terminal "^5.1.1" + micromatch "^4.0.2" + p-each-series "^3.0.0" + p-reduce "^3.0.0" + read-pkg-up "^9.1.0" + resolve-from "^5.0.0" + semver "^7.3.2" + semver-diff "^4.0.0" + signale "^1.2.1" + yargs "^17.5.1" + semver-diff@^2.0.0: version "2.1.0" resolved "https://registry.yarnpkg.com/semver-diff/-/semver-diff-2.1.0.tgz#4bbb8437c8d37e4b0cf1a68fd726ec6d645d6d36" @@ -14347,6 +16304,18 @@ semver-diff@^2.0.0: dependencies: semver "^5.0.3" +semver-diff@^4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/semver-diff/-/semver-diff-4.0.0.tgz#3afcf5ed6d62259f5c72d0d5d50dffbdc9680df5" + integrity sha512-0Ju4+6A8iOnpL/Thra7dZsSlOHYAHIeMxfhWQRI1/VLcT3WDBZKKtQt/QkBOsiIN9ZpuvHE6cGZ0x4glCMmfiA== + dependencies: + semver "^7.3.5" + +semver-regex@^4.0.5: + version "4.0.5" + resolved "https://registry.yarnpkg.com/semver-regex/-/semver-regex-4.0.5.tgz#fbfa36c7ba70461311f5debcb3928821eb4f9180" + integrity sha512-hunMQrEy1T6Jr2uEVjrAIqjwWcQTgOAcIM52C8MY1EZSD3DDNft04XzvYKPqjED65bNVVko0YI38nYeEHCX3yw== + "semver@2 || 3 || 4 || 5", semver@^5.0.3, semver@^5.5.0, semver@^5.6.0, semver@^5.7.2: version "5.7.2" resolved "https://registry.yarnpkg.com/semver/-/semver-5.7.2.tgz#48d55db737c3287cd4835e17fa13feace1c41ef8" @@ -14364,6 +16333,11 @@ semver@^6.0.0, semver@^6.1.1, semver@^6.1.2, semver@^6.2.0, semver@^6.3.0, semve resolved "https://registry.yarnpkg.com/semver/-/semver-6.3.1.tgz#556d2ef8689146e46dcea4bfdd095f3434dffcb4" integrity sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA== +semver@^7.0.0, semver@^7.1.1, semver@^7.1.2: + version "7.6.3" + resolved "https://registry.yarnpkg.com/semver/-/semver-7.6.3.tgz#980f7b5550bc175fb4dc09403085627f9eb33143" + integrity sha512-oVekP1cKtI+CTDvHWYFUcMtsK/00wmAEfyqKfNdARm8u1wNVhSgaX7A8d4UuIlUI5e84iEwOhs7ZPYRmzU9U6A== + semver@^7.2.1, semver@^7.3.2, semver@^7.3.4, semver@^7.3.5, semver@^7.3.7, semver@^7.5.3: version "7.5.4" resolved "https://registry.yarnpkg.com/semver/-/semver-7.5.4.tgz#483986ec4ed38e1c6c48c34894a9182dbff68a6e" @@ -14549,11 +16523,20 @@ side-channel@^1.0.3, side-channel@^1.0.4: get-intrinsic "^1.0.2" object-inspect "^1.9.0" -signal-exit@^3.0.0, signal-exit@^3.0.2, signal-exit@^3.0.3: +signal-exit@^3.0.0, signal-exit@^3.0.2, signal-exit@^3.0.3, signal-exit@^3.0.7: version "3.0.7" resolved "https://registry.yarnpkg.com/signal-exit/-/signal-exit-3.0.7.tgz#a9a1767f8af84155114eaabd73f99273c8f59ad9" integrity sha512-wnD2ZE+l+SPC/uoS0vXeE9L1+0wuaMqKlfz9AMUo38JsyLSBWSFcHR1Rri62LZc12vLr1gb3jl7iwQhgwpAbGQ== +signale@^1.2.1: + version "1.4.0" + resolved "https://registry.yarnpkg.com/signale/-/signale-1.4.0.tgz#c4be58302fb0262ac00fc3d886a7c113759042f1" + integrity sha512-iuh+gPf28RkltuJC7W5MRi6XAjTDCAPC/prJUpQoG4vIP3MJZ+GTydVnodXA7pwvTKb2cA0m9OFZW/cdWy/I/w== + dependencies: + chalk "^2.3.2" + figures "^2.0.0" + pkg-conf "^2.1.0" + simple-concat@^1.0.0: version "1.0.1" resolved "https://registry.yarnpkg.com/simple-concat/-/simple-concat-1.0.1.tgz#f46976082ba35c2263f1c8ab5edfe26c41c9552f" @@ -14597,6 +16580,11 @@ slice-ansi@^4.0.0: astral-regex "^2.0.0" is-fullwidth-code-point "^3.0.0" +smart-buffer@^4.2.0: + version "4.2.0" + resolved "https://registry.yarnpkg.com/smart-buffer/-/smart-buffer-4.2.0.tgz#6e1d71fa4f18c05f7d0ff216dd16a481d0e8d9ae" + integrity sha512-94hK0Hh8rPqQl2xXc3HsaBoOXKV20MToPkcXvwbISWLEs+64sBq5kFgn2kJDHb1Pry9yrP0dxrCI9RRci7RXKg== + snapdragon-node@^2.0.1: version "2.1.1" resolved "https://registry.yarnpkg.com/snapdragon-node/-/snapdragon-node-2.1.1.tgz#6c175f86ff14bdb0724563e8f3c1b021a286853b" @@ -14636,6 +16624,23 @@ sockjs@^0.3.24: uuid "^8.3.2" websocket-driver "^0.7.4" +socks-proxy-agent@^7.0.0: + version "7.0.0" + resolved "https://registry.yarnpkg.com/socks-proxy-agent/-/socks-proxy-agent-7.0.0.tgz#dc069ecf34436621acb41e3efa66ca1b5fed15b6" + integrity sha512-Fgl0YPZ902wEsAyiQ+idGd1A7rSFx/ayC1CQVMw5P+EQx2V0SgpGtf6OKFhVjPflPUl9YMmEOnmfjCdMUsygww== + dependencies: + agent-base "^6.0.2" + debug "^4.3.3" + socks "^2.6.2" + +socks@^2.6.2: + version "2.8.3" + resolved "https://registry.yarnpkg.com/socks/-/socks-2.8.3.tgz#1ebd0f09c52ba95a09750afe3f3f9f724a800cb5" + integrity sha512-l5x7VUUWbjVFbafGLxPWkYsHIhEvmF85tbIeFZWc8ZPtoMyybuEhL7Jye/ooC4/d48FgOjSJXgsF/AJPYCW8Zw== + dependencies: + ip-address "^9.0.5" + smart-buffer "^4.2.0" + sortobject@^1.1.1: version "1.3.0" resolved "https://registry.yarnpkg.com/sortobject/-/sortobject-1.3.0.tgz#bc8ce57014c567bdbf78e89ae6c484e64d51e9dc" @@ -14736,6 +16741,11 @@ sourcemap-codec@^1.4.8: resolved "https://registry.yarnpkg.com/sourcemap-codec/-/sourcemap-codec-1.4.8.tgz#ea804bd94857402e6992d05a38ef1ae35a9ab4c4" integrity sha512-9NykojV5Uih4lgo5So5dtw+f0JgJX30KCNI8gwhz2J9A15wD0Ml6tjHKwf6fTSa6fAdVBdZeNOs9eJ71qCk8vA== +spawn-error-forwarder@~1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/spawn-error-forwarder/-/spawn-error-forwarder-1.0.0.tgz#1afd94738e999b0346d7b9fc373be55e07577029" + integrity sha512-gRjMgK5uFjbCvdibeGJuy3I5OYz6VLoVdsOJdA6wV0WlfQVLFueoqMxwwYD9RODdgb6oUIvlRlsyFSiQkMKu0g== + spdx-correct@^3.0.0: version "3.1.1" resolved "https://registry.yarnpkg.com/spdx-correct/-/spdx-correct-3.1.1.tgz#dece81ac9c1e6713e5f7d1b6f17d468fa53d89a9" @@ -14804,6 +16814,13 @@ split2@^3.0.0: dependencies: readable-stream "^3.0.0" +split2@~1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/split2/-/split2-1.0.0.tgz#52e2e221d88c75f9a73f90556e263ff96772b314" + integrity sha512-NKywug4u4pX/AZBB1FCPzZ6/7O+Xhz1qMVbzTvvKvikjO99oPN87SkK08mEY9P63/5lWjK+wgOOgApnTg5r6qg== + dependencies: + through2 "~2.0.0" + split@0.3: version "0.3.3" resolved "https://registry.yarnpkg.com/split/-/split-0.3.3.tgz#cd0eea5e63a211dfff7eb0f091c4133e2d0dd28f" @@ -14811,6 +16828,18 @@ split@0.3: dependencies: through "2" +split@^1.0.0: + version "1.0.1" + resolved "https://registry.yarnpkg.com/split/-/split-1.0.1.tgz#605bd9be303aa59fb35f9229fbea0ddec9ea07d9" + integrity sha512-mTyOoPbrivtXnwnIxZRFYRrPNtEFKlpB2fvjSnCQUiAA6qAZzqwna5envK4uk6OIeP17CsdF3rSBGYVBsU0Tkg== + dependencies: + through "2" + +sprintf-js@^1.1.3: + version "1.1.3" + resolved "https://registry.yarnpkg.com/sprintf-js/-/sprintf-js-1.1.3.tgz#4914b903a2f8b685d17fdf78a70e917e872e444a" + integrity sha512-Oo+0REFV59/rz3gfJNKQiBlwfHaSESl1pcGyABQsnnIfWOFt6JNj5gCog2U6MLZ//IGYD+nA8nI+mTShREReaA== + sprintf-js@~1.0.2: version "1.0.3" resolved "https://registry.yarnpkg.com/sprintf-js/-/sprintf-js-1.0.3.tgz#04e6926f662895354f3dd015203633b857297e2c" @@ -14831,6 +16860,13 @@ sshpk@^1.14.1, sshpk@^1.7.0: safer-buffer "^2.0.2" tweetnacl "~0.14.0" +ssri@^9.0.0, ssri@^9.0.1: + version "9.0.1" + resolved "https://registry.yarnpkg.com/ssri/-/ssri-9.0.1.tgz#544d4c357a8d7b71a19700074b6883fcb4eae057" + integrity sha512-o57Wcn66jMQvfHG1FlYbWeZWW/dHZhJXjpIcTfXldXEk5nz5lStPo3mK0OJQfGR3RbZUlbISexbljkJzuEj/8Q== + dependencies: + minipass "^3.1.1" + stable@^0.1.8: version "0.1.8" resolved "https://registry.yarnpkg.com/stable/-/stable-0.1.8.tgz#836eb3c8382fe2936feaf544631017ce7d47a3cf" @@ -14907,7 +16943,7 @@ stream-browserify@^3.0.0: inherits "~2.0.4" readable-stream "^3.5.0" -stream-combiner2@^1.1.1: +stream-combiner2@^1.1.1, stream-combiner2@~1.1.1: version "1.1.1" resolved "https://registry.yarnpkg.com/stream-combiner2/-/stream-combiner2-1.1.1.tgz#fb4d8a1420ea362764e21ad4780397bebcb41cbe" integrity sha512-3PnJbYgS56AeWgtKF5jtJRT6uFJe56Z0Hc5Ngg/6sI6rIt8iiMBTa9cvdyFfpMQjaVHr8dusbNeFGIIonxOvKw== @@ -14976,6 +17012,15 @@ string-natural-compare@^3.0.1: resolved "https://registry.yarnpkg.com/string-natural-compare/-/string-natural-compare-3.0.1.tgz#7a42d58474454963759e8e8b7ae63d71c1e7fdf4" integrity sha512-n3sPwynL1nwKi3WJ6AIsClwBMa0zTi54fn2oLU6ndfTSIO05xaznjSf15PcBZU6FNWbmN5Q6cxT4V5hGvB4taw== +"string-width@^1.0.2 || 2 || 3 || 4", string-width@^4.1.0, string-width@^4.2.0, string-width@^4.2.3: + version "4.2.3" + resolved "https://registry.yarnpkg.com/string-width/-/string-width-4.2.3.tgz#269c7117d27b05ad2e536830a8ec895ef9c6d010" + integrity sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g== + dependencies: + emoji-regex "^8.0.0" + is-fullwidth-code-point "^3.0.0" + strip-ansi "^6.0.1" + string-width@^2.1.1: version "2.1.1" resolved "https://registry.yarnpkg.com/string-width/-/string-width-2.1.1.tgz#ab93f27a8dc13d28cac815c462143a6d9012ae9e" @@ -14993,15 +17038,6 @@ string-width@^3.0.0, string-width@^3.1.0: is-fullwidth-code-point "^2.0.0" strip-ansi "^5.1.0" -string-width@^4.1.0, string-width@^4.2.0, string-width@^4.2.3: - version "4.2.3" - resolved "https://registry.yarnpkg.com/string-width/-/string-width-4.2.3.tgz#269c7117d27b05ad2e536830a8ec895ef9c6d010" - integrity sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g== - dependencies: - emoji-regex "^8.0.0" - is-fullwidth-code-point "^3.0.0" - strip-ansi "^6.0.1" - string.prototype.matchall@^4.0.6, string.prototype.matchall@^4.0.7: version "4.0.7" resolved "https://registry.yarnpkg.com/string.prototype.matchall/-/string.prototype.matchall-4.0.7.tgz#8e6ecb0d8a1fb1fda470d81acecb2dba057a481d" @@ -15120,6 +17156,11 @@ strip-final-newline@^2.0.0: resolved "https://registry.yarnpkg.com/strip-final-newline/-/strip-final-newline-2.0.0.tgz#89b852fb2fcbe936f6f4b3187afb0a12c1ab58ad" integrity sha512-BrpvfNAE3dcvq7ll3xVumzjKjZQ5tI1sEUIKr3Uoks0XUl45St3FlatVqef9prk4jRDzhW6WZg+3bk93y6pLjA== +strip-final-newline@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/strip-final-newline/-/strip-final-newline-3.0.0.tgz#52894c313fbff318835280aed60ff71ebf12b8fd" + integrity sha512-dOESqjYr96iWYylGObzd39EuNTa5VJxyvVAEm5Jnh7KGo75V43Hk1odPQkNDyXNmUR6k+gEiDVXnjB8HJ3crXw== + strip-indent@^3.0.0: version "3.0.0" resolved "https://registry.yarnpkg.com/strip-indent/-/strip-indent-3.0.0.tgz#c32e1cee940b6b3432c771bc2c54bcce73cd3001" @@ -15209,7 +17250,7 @@ supports-color@^7.0.0, supports-color@^7.1.0: dependencies: has-flag "^4.0.0" -supports-hyperlinks@^2.0.0: +supports-hyperlinks@^2.0.0, supports-hyperlinks@^2.3.0: version "2.3.0" resolved "https://registry.yarnpkg.com/supports-hyperlinks/-/supports-hyperlinks-2.3.0.tgz#3943544347c1ff90b15effb03fc14ae45ec10624" integrity sha512-RpsAZlpWcDwOPQA22aCH4J0t7L8JmAvsCxfOSEwm7cQs3LshN36QaTkwd70DnBOXDWGssw2eUoc8CaRWT0XunA== @@ -15345,6 +17386,18 @@ tar@^4.4.8: safe-buffer "^5.2.1" yallist "^3.1.1" +tar@^6.1.0, tar@^6.1.11, tar@^6.1.2: + version "6.2.1" + resolved "https://registry.yarnpkg.com/tar/-/tar-6.2.1.tgz#717549c541bc3c2af15751bea94b1dd068d4b03a" + integrity sha512-DZ4yORTwrbTj/7MZYq2w+/ZFdI6OZ/f9SFHR+71gIVUZhOQPHzVCLpvRnPgyaMpfWxxk/4ONva3GQSyNIKRv6A== + dependencies: + chownr "^2.0.0" + fs-minipass "^2.0.0" + minipass "^5.0.0" + minizlib "^2.1.1" + mkdirp "^1.0.3" + yallist "^4.0.0" + temp-dir@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/temp-dir/-/temp-dir-2.0.0.tgz#bde92b05bdfeb1516e804c9c00ad45177f31321e" @@ -15375,6 +17428,17 @@ tempy@^0.6.0: type-fest "^0.16.0" unique-string "^2.0.0" +tempy@^1.0.0: + version "1.0.1" + resolved "https://registry.yarnpkg.com/tempy/-/tempy-1.0.1.tgz#30fe901fd869cfb36ee2bd999805aa72fbb035de" + integrity sha512-biM9brNqxSc04Ee71hzFbryD11nX7VPhQQY32AdDmjFvodsRFz/3ufeoTZ6uYkRFfGo188tENcASNs3vTdsM0w== + dependencies: + del "^6.0.0" + is-stream "^2.0.0" + temp-dir "^2.0.0" + type-fest "^0.16.0" + unique-string "^2.0.0" + term-size@^1.2.0: version "1.2.0" resolved "https://registry.yarnpkg.com/term-size/-/term-size-1.2.0.tgz#458b83887f288fc56d6fffbfad262e26638efa69" @@ -15435,7 +17499,7 @@ text-extensions@^1.0.0: resolved "https://registry.yarnpkg.com/text-extensions/-/text-extensions-1.9.0.tgz#1853e45fee39c945ce6f6c36b2d659b5aabc2a26" integrity sha512-wiBrwC1EhBelW12Zy26JeOUkQ5mRu+5o8rpsJk5+2t+Y5vE7e842qtZDQ2g1NpX/29HdyFeJ4nSIhI47ENSxlQ== -text-table@^0.2.0: +text-table@^0.2.0, text-table@~0.2.0: version "0.2.0" resolved "https://registry.yarnpkg.com/text-table/-/text-table-0.2.0.tgz#7f5ee823ae805207c00af2df4a84ec3fcfa570b4" integrity sha512-N+8UisAXDGk8PFXP4HAzVR9nbfmVJ3zYLAWiTIoqC5v5isinhr+r5uaO8+7r3BMfuNIufIsA7RdpVgacC2cSpw== @@ -15508,6 +17572,11 @@ tiny-invariant@^1.0.4, tiny-invariant@^1.0.6: resolved "https://registry.yarnpkg.com/tiny-invariant/-/tiny-invariant-1.3.1.tgz#8560808c916ef02ecfd55e66090df23a4b7aa642" integrity sha512-AD5ih2NlSssTCwsMznbvwMZpJ1cbhkGd2uueNxzv2jDlEeZdU04JQfRnggJQ8DrcVBGjAsCKwFBbDlVNtEMlzw== +tiny-relative-date@^1.3.0: + version "1.3.0" + resolved "https://registry.yarnpkg.com/tiny-relative-date/-/tiny-relative-date-1.3.0.tgz#fa08aad501ed730f31cc043181d995c39a935e07" + integrity sha512-MOQHpzllWxDCHHaDno30hhLfbouoYlOI8YlMNtvKe1zXbjEVhbcEovQxvZrPvtiYW630GQDoMMarCnjfyfHA+A== + tmp@^0.0.33: version "0.0.33" resolved "https://registry.yarnpkg.com/tmp/-/tmp-0.0.33.tgz#6d34335889768d21b2bcda0aa277ced3b1bfadf9" @@ -15621,6 +17690,21 @@ tr46@^2.1.0: dependencies: punycode "^2.1.1" +tr46@~0.0.3: + version "0.0.3" + resolved "https://registry.yarnpkg.com/tr46/-/tr46-0.0.3.tgz#8184fd347dac9cdc185992f3a6622e14b9d9ab6a" + integrity sha512-N3WMsuqV66lT30CrXNbEjx4GEwlow3v6rr4mCcv6prnfwhS01rkgyFdjPNBYd9br7LpXV1+Emh01fHnq2Gdgrw== + +traverse@0.6.8: + version "0.6.8" + resolved "https://registry.yarnpkg.com/traverse/-/traverse-0.6.8.tgz#5e5e0c41878b57e4b73ad2f3d1e36a715ea4ab15" + integrity sha512-aXJDbk6SnumuaZSANd21XAo15ucCDE38H4fkqiGsc3MhCK+wOlZvLP9cB/TvpHT0mOyWgC4Z8EwRlzqYSUzdsA== + +treeverse@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/treeverse/-/treeverse-2.0.0.tgz#036dcef04bc3fd79a9b79a68d4da03e882d8a9ca" + integrity sha512-N5gJCkLu1aXccpOTtqV6ddSEi6ZmGkh3hjmbu1IjcavJK4qyOVQmi0myQKM7z5jVGmD68SJoliaVrMmVObhj6A== + trim-newlines@^3.0.0: version "3.0.1" resolved "https://registry.yarnpkg.com/trim-newlines/-/trim-newlines-3.0.1.tgz#260a5d962d8b752425b32f3a7db0dcacd176c144" @@ -15729,6 +17813,11 @@ type-fest@^0.8.1: resolved "https://registry.yarnpkg.com/type-fest/-/type-fest-0.8.1.tgz#09e249ebde851d3b1e48d27c105444667f17b83d" integrity sha512-4dbzIzqvjtgiM5rw1k5rEHtBANKmdudhGyBEajN01fEyhaAIhsoKNy6y7+IN93IfpFtwY9iqi7kD+xwKhQsNJA== +type-fest@^2.0.0, type-fest@^2.5.0: + version "2.19.0" + resolved "https://registry.yarnpkg.com/type-fest/-/type-fest-2.19.0.tgz#88068015bb33036a598b952e55e9311a60fd3a9b" + integrity sha512-RAH822pAdBgcNMAfWnCBU3CFZcfZ/i1eZjwFU/dsLKumyuuP3niueg2UAukXYF0E2AAoc82ZSSf9J0WQBinzHA== + type-is@~1.6.18: version "1.6.18" resolved "https://registry.yarnpkg.com/type-is/-/type-is-1.6.18.tgz#4e552cd05df09467dcbc4ef739de89f2cf37c131" @@ -15892,6 +17981,20 @@ uniqid@^5.4.0: resolved "https://registry.yarnpkg.com/uniqid/-/uniqid-5.4.0.tgz#4e17bfcab66dfe33563411ae0c801f46ef964e66" integrity sha512-38JRbJ4Fj94VmnC7G/J/5n5SC7Ab46OM5iNtSstB/ko3l1b5g7ALt4qzHFgGciFkyiRNtDXtLNb+VsxtMSE77A== +unique-filename@^2.0.0: + version "2.0.1" + resolved "https://registry.yarnpkg.com/unique-filename/-/unique-filename-2.0.1.tgz#e785f8675a9a7589e0ac77e0b5c34d2eaeac6da2" + integrity sha512-ODWHtkkdx3IAR+veKxFV+VBkUMcN+FaqzUUd7IZzt+0zhDZFPFxhlqwPF3YQvMHx1TD0tdgYl+kuPnJ8E6ql7A== + dependencies: + unique-slug "^3.0.0" + +unique-slug@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/unique-slug/-/unique-slug-3.0.0.tgz#6d347cf57c8a7a7a6044aabd0e2d74e4d76dc7c9" + integrity sha512-8EyMynh679x/0gqE9fT9oilG+qEt+ibFyqjuVTsZn1+CMxH+XLlpvr2UZx4nVcCwTpx81nICr2JQFkM+HPLq4w== + dependencies: + imurmurhash "^0.1.4" + unique-stream@^2.0.2: version "2.3.1" resolved "https://registry.yarnpkg.com/unique-stream/-/unique-stream-2.3.1.tgz#c65d110e9a4adf9a6c5948b28053d9a8d04cbeac" @@ -15919,6 +18022,11 @@ universal-serialize@^1.0.4: resolved "https://registry.yarnpkg.com/universal-serialize/-/universal-serialize-1.0.10.tgz#3279bb30f47290ea479f45135620f98fa9d3f3a6" integrity sha512-FdouA4xSFa0fudk1+z5vLWtxZCoC0Q9lKYV3uUdFl7DttNfolmiw2ASr5ddY+/Yz6Isr68u3IqC9XMSwMP+Pow== +universal-user-agent@^6.0.0: + version "6.0.1" + resolved "https://registry.yarnpkg.com/universal-user-agent/-/universal-user-agent-6.0.1.tgz#15f20f55da3c930c57bddbf1734c6654d5fd35aa" + integrity sha512-yCzhz6FN2wU1NiiQRogkTQszlQSlpWaw8SvVegAc+bDxbzHgh1vX8uIe8OYyMH6DwH+sdTJsgMl36+mSMdRJIQ== + universalify@^0.1.0: version "0.1.2" resolved "https://registry.yarnpkg.com/universalify/-/universalify-0.1.2.tgz#b646f69be3942dabcecc9d6639c80dc105efaa66" @@ -16008,6 +18116,11 @@ urix@^0.1.0: resolved "https://registry.yarnpkg.com/urix/-/urix-0.1.0.tgz#da937f7a62e21fec1fd18d49b35c2935067a6c72" integrity sha512-Am1ousAhSLBeB9cG/7k7r2R0zj50uDRlZHPGbazid5s9rlF1F/QKYObEKSIunSjIOkJZqwRRLpvewjEkM7pSqg== +url-join@^4.0.0: + version "4.0.1" + resolved "https://registry.yarnpkg.com/url-join/-/url-join-4.0.1.tgz#b642e21a2646808ffa178c4c5fda39844e12cde7" + integrity sha512-jk1+QP6ZJqyOiuEI9AEWQfju/nB2Pw466kbA0LEZljHwKeMgd9WrAEgEGxjPDD2+TNbbb37rTyhEfrCXfuKXnA== + url-parse-lax@^3.0.0: version "3.0.0" resolved "https://registry.yarnpkg.com/url-parse-lax/-/url-parse-lax-3.0.0.tgz#16b5cafc07dbe3676c1b1999177823d6503acb0c" @@ -16131,7 +18244,7 @@ v8-to-istanbul@^8.1.0: convert-source-map "^1.6.0" source-map "^0.7.3" -validate-npm-package-license@^3.0.1: +validate-npm-package-license@^3.0.1, validate-npm-package-license@^3.0.4: version "3.0.4" resolved "https://registry.yarnpkg.com/validate-npm-package-license/-/validate-npm-package-license-3.0.4.tgz#fc91f6b9c7ba15c857f4cb2c5defeec39d4f410a" integrity sha512-DpKm2Ui/xN7/HQKCtpZxoRWBhZ9Z0kqtygG8XCgNQ8ZlDnxuQmWhj566j8fN4Cu3/JmbhsDo7fcAJq4s9h27Ew== @@ -16139,6 +18252,13 @@ validate-npm-package-license@^3.0.1: spdx-correct "^3.0.0" spdx-expression-parse "^3.0.0" +validate-npm-package-name@^4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/validate-npm-package-name/-/validate-npm-package-name-4.0.0.tgz#fe8f1c50ac20afdb86f177da85b3600f0ac0d747" + integrity sha512-mzR0L8ZDktZjpX4OB46KT+56MAhl4EIazWP/+G/HPGuvfdaqg4YsCdtOm6U9+LOFyYDoh4dpnpxZRB9MQQns5Q== + dependencies: + builtins "^5.0.0" + value-or-function@^3.0.0: version "3.0.0" resolved "https://registry.yarnpkg.com/value-or-function/-/value-or-function-3.0.0.tgz#1c243a50b595c1be54a754bfece8563b9ff8d813" @@ -16236,6 +18356,11 @@ wait-on@6.0.0: minimist "^1.2.5" rxjs "^7.1.0" +walk-up-path@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/walk-up-path/-/walk-up-path-1.0.0.tgz#d4745e893dd5fd0dbb58dd0a4c6a33d9c9fec53e" + integrity sha512-hwj/qMDUEjCU5h0xr90KGCf0tg0/LgJbmOWgrWKYlcJZM7XvquvUJZ0G/HMGr7F7OQMOUuPHWP9JpriinkAlkg== + walker@^1.0.7, walker@~1.0.5: version "1.0.8" resolved "https://registry.yarnpkg.com/walker/-/walker-1.0.8.tgz#bd498db477afe573dc04185f011d3ab8a8d7653f" @@ -16278,6 +18403,18 @@ wbuf@^1.1.0, wbuf@^1.7.3: dependencies: minimalistic-assert "^1.0.0" +wcwidth@^1.0.0: + version "1.0.1" + resolved "https://registry.yarnpkg.com/wcwidth/-/wcwidth-1.0.1.tgz#f0b0dcf915bc5ff1528afadb2c0e17b532da2fe8" + integrity sha512-XHPEwS0q6TaxcvG85+8EYkbiCux2XtWG2mkc47Ng2A77BQu9+DqIOJldST4HgPkuea7dvKSj5VgX3P1d4rW8Tg== + dependencies: + defaults "^1.0.3" + +webidl-conversions@^3.0.0: + version "3.0.1" + resolved "https://registry.yarnpkg.com/webidl-conversions/-/webidl-conversions-3.0.1.tgz#24534275e2a7bc6be7bc86611cc16ae0a5654871" + integrity sha512-2JAn3z8AR6rjK8Sm8orRC0h/bcl/DqL7tRPdGZ4I1CjdF+EaMLmYxBHyXuKL849eucPFhvBoxMsflfOb8kxaeQ== + webidl-conversions@^4.0.2: version "4.0.2" resolved "https://registry.yarnpkg.com/webidl-conversions/-/webidl-conversions-4.0.2.tgz#a855980b1f0b6b359ba1d5d9fb39ae941faa63ad" @@ -16429,6 +18566,14 @@ whatwg-mimetype@^2.1.0, whatwg-mimetype@^2.2.0, whatwg-mimetype@^2.3.0: resolved "https://registry.yarnpkg.com/whatwg-mimetype/-/whatwg-mimetype-2.3.0.tgz#3d4b1e0312d2079879f826aff18dbeeca5960fbf" integrity sha512-M4yMwr6mAnQz76TbJm914+gPpB/nCwvZbJU28cUD6dR004SAxDLOOSUaB1JDRqLtaOV/vi0IC5lEAGFgrjGv/g== +whatwg-url@^5.0.0: + version "5.0.0" + resolved "https://registry.yarnpkg.com/whatwg-url/-/whatwg-url-5.0.0.tgz#966454e8765462e37644d3626f6742ce8b70965d" + integrity sha512-saE57nupxk6v3HY35+jzBwYa0rKSy0XR8JSxZPwgLr7ys0IBzhGviA1/TUGJLmSVqs8pb9AnvICXEuOHLprYTw== + dependencies: + tr46 "~0.0.3" + webidl-conversions "^3.0.0" + whatwg-url@^6.4.1: version "6.5.0" resolved "https://registry.yarnpkg.com/whatwg-url/-/whatwg-url-6.5.0.tgz#f2df02bff176fd65070df74ad5ccbb5a199965a8" @@ -16500,13 +18645,20 @@ which@^1.2.9, which@^1.3.1: dependencies: isexe "^2.0.0" -which@^2.0.1: +which@^2.0.1, which@^2.0.2: version "2.0.2" resolved "https://registry.yarnpkg.com/which/-/which-2.0.2.tgz#7c6a8dd0a636a0327e10b59c9286eee93f3f51b1" integrity sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA== dependencies: isexe "^2.0.0" +wide-align@^1.1.5: + version "1.1.5" + resolved "https://registry.yarnpkg.com/wide-align/-/wide-align-1.1.5.tgz#df1d4c206854369ecf3c9a4898f1b23fbd9d15d3" + integrity sha512-eDMORYaPNZ4sQIuuYPDHdQvf4gyCF9rEEV/yPxGfwPkRodwEgiMUUXTx/dex+Me0wxx53S+NgUHaP7y3MGlDmg== + dependencies: + string-width "^1.0.2 || 2 || 3 || 4" + widest-line@^2.0.0: version "2.0.1" resolved "https://registry.yarnpkg.com/widest-line/-/widest-line-2.0.1.tgz#7438764730ec7ef4381ce4df82fb98a53142a3fc" @@ -16758,6 +18910,14 @@ write-file-atomic@^3.0.0: signal-exit "^3.0.2" typedarray-to-buffer "^3.1.5" +write-file-atomic@^4.0.0, write-file-atomic@^4.0.1: + version "4.0.2" + resolved "https://registry.yarnpkg.com/write-file-atomic/-/write-file-atomic-4.0.2.tgz#a9df01ae5b77858a027fd2e80768ee433555fcfd" + integrity sha512-7KxauUdBmSdWnmpaGFg+ppNjKF8uNLry8LyzjauQDOVONfFLNKrKvQOxZ/VuTIcS/gge/YNahf5RIIQWTSarlg== + dependencies: + imurmurhash "^0.1.4" + signal-exit "^3.0.7" + ws@^5.2.0: version "5.2.3" resolved "https://registry.yarnpkg.com/ws/-/ws-5.2.3.tgz#05541053414921bc29c63bee14b8b0dd50b07b3d" @@ -16843,6 +19003,11 @@ yargs-parser@^20.2.2, yargs-parser@^20.2.3: resolved "https://registry.yarnpkg.com/yargs-parser/-/yargs-parser-20.2.9.tgz#2eb7dc3b0289718fc295f362753845c41a0c94ee" integrity sha512-y11nGElTIV+CT3Zv9t7VKl+Q3hTQoT9a1Qzezhhl6Rp21gJ/IVTW7Z3y9EWXhuUBC2Shnf+DX0antecpAwSP8w== +yargs-parser@^21.1.1: + version "21.1.1" + resolved "https://registry.yarnpkg.com/yargs-parser/-/yargs-parser-21.1.1.tgz#9096bceebf990d21bb31fa9516e0ede294a77d35" + integrity sha512-tVpsJW7DdjecAiFpbIB1e3qxIQsE6NoPc5/eTdrbbIC4h0LVsWhnoa3g+m2HclBIujHzsxZ4VJVA+GUuc2/LBw== + yargs-unparser@2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/yargs-unparser/-/yargs-unparser-2.0.0.tgz#f131f9226911ae5d9ad38c432fe809366c2325eb" @@ -16882,6 +19047,19 @@ yargs@^13.1.0: y18n "^4.0.0" yargs-parser "^13.1.2" +yargs@^17.5.1: + version "17.7.2" + resolved "https://registry.yarnpkg.com/yargs/-/yargs-17.7.2.tgz#991df39aca675a192b816e1e0363f9d75d2aa269" + integrity sha512-7dSzzRQ++CKnNI/krKnYRV7JKKPUXMEh61soaHKg9mrWEhzFWhFnxPxGl+69cD1Ou63C13NUPCnmIcrvqCuM6w== + dependencies: + cliui "^8.0.1" + escalade "^3.1.1" + get-caller-file "^2.0.5" + require-directory "^2.1.1" + string-width "^4.2.3" + y18n "^5.0.5" + yargs-parser "^21.1.1" + yauzl@^2.10.0: version "2.10.0" resolved "https://registry.yarnpkg.com/yauzl/-/yauzl-2.10.0.tgz#c7eb17c93e112cb1086fa6d8e51fb0667b79a5f9" @@ -16895,6 +19073,11 @@ yocto-queue@^0.1.0: resolved "https://registry.yarnpkg.com/yocto-queue/-/yocto-queue-0.1.0.tgz#0294eb3dee05028d31ee1a5fa2c556a6aaf10a1b" integrity sha512-rVksvsnNCdJ/ohGc6xgPwyN8eheCxsiLM8mxuE/t/mOVqJewPuO1miLpTHQiRgTKCLexL4MeAFVagts7HmNZ2Q== +yocto-queue@^1.0.0: + version "1.1.1" + resolved "https://registry.yarnpkg.com/yocto-queue/-/yocto-queue-1.1.1.tgz#fef65ce3ac9f8a32ceac5a634f74e17e5b232110" + integrity sha512-b4JR1PFR10y1mKjhHY9LaGo6tmrgjit7hxVIeAmyMw3jegXR4dhYqLaQF5zMXZxY7tLpMyJeLjr1C4rLmkVe8g== + zalgo-promise@^1, zalgo-promise@^1.0.11, zalgo-promise@^1.0.3: version "1.0.48" resolved "https://registry.yarnpkg.com/zalgo-promise/-/zalgo-promise-1.0.48.tgz#9e33eef502d5ed9f5a09fc5728c833c3e87afa2e" From 6e42b9264e71b95a0a45b65cfde5846061883519 Mon Sep 17 00:00:00 2001 From: Hendrik de Graaf Date: Mon, 26 Aug 2024 15:29:41 +0200 Subject: [PATCH 46/62] fix: use saved visualization in interpretation modal (#551) * fix: use saved visualization in interpretation modal * chore: enable debug logging on semantic release GHA step --- .github/workflows/release.yml | 1 + src/components/InterpretationModal/InterpretationModal.js | 4 ++-- 2 files changed, 3 insertions(+), 2 deletions(-) diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml index 8619173e5..648d0a5e2 100644 --- a/.github/workflows/release.yml +++ b/.github/workflows/release.yml @@ -40,6 +40,7 @@ jobs: run: npx semantic-release env: GITHUB_TOKEN: ${{ secrets.DHIS2_BOT_GITHUB_TOKEN }} + DEBUG: '@semantic-release/commit-analyzer' - name: Publish to AppHub run: yarn run d2-app-scripts publish diff --git a/src/components/InterpretationModal/InterpretationModal.js b/src/components/InterpretationModal/InterpretationModal.js index f3ddcbe2a..ac7bd92bc 100644 --- a/src/components/InterpretationModal/InterpretationModal.js +++ b/src/components/InterpretationModal/InterpretationModal.js @@ -5,7 +5,7 @@ import { import PropTypes from 'prop-types' import React, { useState, useEffect } from 'react' import { useSelector } from 'react-redux' -import { sGetCurrent } from '../../reducers/current.js' +import { sGetVisualization } from '../../reducers/visualization.js' import { ModalDownloadDropdown } from '../DownloadMenu/index.js' import { Visualization } from '../Visualization/Visualization.js' import { @@ -16,7 +16,7 @@ import { const InterpretationModal = ({ onInterpretationUpdate }) => { const { interpretationId, initialFocus } = useInterpretationQueryParams() const [isVisualizationLoading, setIsVisualizationLoading] = useState(false) - const visualization = useSelector(sGetCurrent) + const visualization = useSelector(sGetVisualization) const { currentUser } = useCachedDataQuery() useEffect(() => { From 7cf50b16101649dc9bf71acc956805f9722b8f6b Mon Sep 17 00:00:00 2001 From: "@dhis2-bot" Date: Mon, 26 Aug 2024 13:32:08 +0000 Subject: [PATCH 47/62] chore(release): cut 101.1.8 [skip release] ## [101.1.8](https://github.com/dhis2/line-listing-app/compare/v101.1.7...v101.1.8) (2024-08-26) ### Bug Fixes * display correct app version in dhis2 and updated workflows ([#581](https://github.com/dhis2/line-listing-app/issues/581)) ([d31979f](https://github.com/dhis2/line-listing-app/commit/d31979fbd451349813b32c90ea2bdb147d28ce92)) * use saved visualization in interpretation modal ([#551](https://github.com/dhis2/line-listing-app/issues/551)) ([6e42b92](https://github.com/dhis2/line-listing-app/commit/6e42b9264e71b95a0a45b65cfde5846061883519)) --- CHANGELOG.md | 8 ++++++++ package.json | 2 +- 2 files changed, 9 insertions(+), 1 deletion(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index b881d05d8..829b8f875 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,3 +1,11 @@ +## [101.1.8](https://github.com/dhis2/line-listing-app/compare/v101.1.7...v101.1.8) (2024-08-26) + + +### Bug Fixes + +* display correct app version in dhis2 and updated workflows ([#581](https://github.com/dhis2/line-listing-app/issues/581)) ([d31979f](https://github.com/dhis2/line-listing-app/commit/d31979fbd451349813b32c90ea2bdb147d28ce92)) +* use saved visualization in interpretation modal ([#551](https://github.com/dhis2/line-listing-app/issues/551)) ([6e42b92](https://github.com/dhis2/line-listing-app/commit/6e42b9264e71b95a0a45b65cfde5846061883519)) + ## [101.1.7](https://github.com/dhis2/line-listing-app/compare/v101.1.6...v101.1.7) (2024-08-25) diff --git a/package.json b/package.json index 91484e86e..4ad092ea5 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "line-listing-app", - "version": "101.1.7", + "version": "101.1.8", "description": "DHIS2 Line Listing", "license": "BSD-3-Clause", "private": true, From 869487f3e5ab994398e40cfa7039acea5e0ca93f Mon Sep 17 00:00:00 2001 From: Adel Bensaad Date: Fri, 4 Oct 2024 10:36:19 +0100 Subject: [PATCH 48/62] chore: skip ReportPortal integration for Dependabot PRs (#585) --- jest.config.js | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/jest.config.js b/jest.config.js index b723319d0..af31beaeb 100644 --- a/jest.config.js +++ b/jest.config.js @@ -36,10 +36,13 @@ const reportPortalConfig = [ }, ] +const isDependabotPR = process.env.GITHUB_ACTOR === 'dependabot[bot]' + const isReportPortalSetup = process.env.REPORTPORTAL_API_KEY !== undefined && process.env.REPORTPORTAL_ENDPOINT !== undefined && - process.env.REPORTPORTAL_PROJECT !== undefined + process.env.REPORTPORTAL_PROJECT !== undefined && + !isDependabotPR module.exports = { transformIgnorePatterns: [ From 6d5c1cd7863d874eccdc1ff377a5827b79387ee6 Mon Sep 17 00:00:00 2001 From: Jen Jones Arnesen Date: Tue, 8 Oct 2024 11:04:18 +0200 Subject: [PATCH 49/62] chore: use hardcoded dev version for running e2e prod tests (#598) Instead of relying on a running dev instance to get the version --- .github/workflows/verify-pr.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/verify-pr.yml b/.github/workflows/verify-pr.yml index c223edcf7..32959e2d4 100644 --- a/.github/workflows/verify-pr.yml +++ b/.github/workflows/verify-pr.yml @@ -90,7 +90,7 @@ jobs: call-workflow-e2e-prod: if: "!contains(github.event.head_commit.message, '[skip ci]')" needs: [build, lint, test, setup-matrix] - uses: dhis2/workflows/.github/workflows/analytics-e2e-tests-prod.yml@master + uses: dhis2/workflows/.github/workflows/analytics-e2e-tests-prod.yml@feat/support-hardcoded-dev-version with: should_record: ${{ contains(github.event.head_commit.message, '[e2e record]') || contains(join(github.event.pull_request.labels.*.name), 'e2e record')}} spec-group: ${{ needs.setup-matrix.outputs.matrix }} From 28fad5f053c0cf70a4471780a5002a1de43e8719 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 8 Oct 2024 12:10:28 +0200 Subject: [PATCH 50/62] chore(deps): bump elliptic from 6.5.5 to 6.5.7 in the security group (#580) Bumps the security group with 1 update: [elliptic](https://github.com/indutny/elliptic). Updates `elliptic` from 6.5.5 to 6.5.7 - [Commits](https://github.com/indutny/elliptic/compare/v6.5.5...v6.5.7) --- updated-dependencies: - dependency-name: elliptic dependency-type: indirect dependency-group: security ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Co-authored-by: Jen Jones Arnesen --- yarn.lock | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/yarn.lock b/yarn.lock index 9fd57c45d..d0497c059 100644 --- a/yarn.lock +++ b/yarn.lock @@ -7763,9 +7763,9 @@ electron-to-chromium@^1.4.796: integrity sha512-NglN/xprcM+SHD2XCli4oC6bWe6kHoytcyLKCWXmRL854F0qhPhaYgUswUsglnPxYaNQIg2uMY4BvaomIf3kLA== elliptic@^6.5.3, elliptic@^6.5.5: - version "6.5.5" - resolved "https://registry.yarnpkg.com/elliptic/-/elliptic-6.5.5.tgz#c715e09f78b6923977610d4c2346d6ce22e6dded" - integrity sha512-7EjbcmUm17NQFu4Pmgmq2olYMj8nwMnpcddByChSUjArp8F5DQWcIcpriwO4ZToLNAJig0yiyjswfyGNje/ixw== + version "6.5.7" + resolved "https://registry.yarnpkg.com/elliptic/-/elliptic-6.5.7.tgz#8ec4da2cb2939926a1b9a73619d768207e647c8b" + integrity sha512-ESVCtTwiA+XhY3wyh24QqRGBoP3rEdDUl3EDUUo9tft074fi19IrdpH7hLCMMP3CIj7jb3W96rn8lt/BqIlt5Q== dependencies: bn.js "^4.11.9" brorand "^1.1.0" From b95284ee311c4bdf99dfa014900dc5402316b236 Mon Sep 17 00:00:00 2001 From: Hendrik de Graaf Date: Thu, 17 Oct 2024 12:09:25 +0200 Subject: [PATCH 51/62] chore: remove numTestsKeptInMemory from cypress config because default behaviour is better (#602) --- cypress.config.js | 2 -- 1 file changed, 2 deletions(-) diff --git a/cypress.config.js b/cypress.config.js index d3001ba02..91e229b63 100644 --- a/cypress.config.js +++ b/cypress.config.js @@ -80,8 +80,6 @@ module.exports = defineConfig({ video: true, // Enabled to reduce the risk of out-of-memory issues experimentalMemoryManagement: true, - // Set to a low number to reduce the risk of out-of-memory issues - numTestsKeptInMemory: 5, /* When allowing 1 retry on CI, the test suite will pass if * it's flaky. And/but we also get to identify flaky tests on the * Cypress Dashboard. */ From 883368a0ead1903a12454c87c4e5bf605db524a1 Mon Sep 17 00:00:00 2001 From: "@dhis2-bot" Date: Sun, 27 Oct 2024 02:47:29 +0100 Subject: [PATCH 52/62] fix(translations): sync translations from transifex (master) Automatically merged. --- i18n/pt.po | 16 ++++++++++------ 1 file changed, 10 insertions(+), 6 deletions(-) diff --git a/i18n/pt.po b/i18n/pt.po index f9caddcd5..c32d16986 100644 --- a/i18n/pt.po +++ b/i18n/pt.po @@ -7,13 +7,14 @@ # Ge Joao , 2023 # Philip Larsen Donnelly, 2024 # Viktor Varland , 2024 +# Shelsea Chumaio, 2024 # msgid "" msgstr "" "Project-Id-Version: i18next-conv\n" -"POT-Creation-Date: 2024-02-13T14:56:50.029Z\n" +"POT-Creation-Date: 2024-06-04T11:01:31.012Z\n" "PO-Revision-Date: 2022-08-23 11:50+0000\n" -"Last-Translator: Viktor Varland , 2024\n" +"Last-Translator: Shelsea Chumaio, 2024\n" "Language-Team: Portuguese (https://app.transifex.com/hisp-uio/teams/100509/pt/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" @@ -112,7 +113,7 @@ msgid "End date" msgstr "Data Final" msgid "No items selected" -msgstr "" +msgstr " Nenhum item seleccionado" msgid "Available options" msgstr "Opções disponíveis" @@ -124,7 +125,7 @@ msgid "Selected options" msgstr "" msgid "Nothing found for \"{{- searchTerm}}\"" -msgstr "" +msgstr " Nada encontrado para ''{{- searchTerm}}''" msgid "No options" msgstr "" @@ -294,7 +295,7 @@ msgid "Choose a program" msgstr "Escolha um programa" msgid "No programs found" -msgstr "" +msgstr "Nenhum programa encontrado" msgid "Stage" msgstr "Estagio" @@ -329,7 +330,7 @@ msgid "Clear" msgstr "Limpar" msgid "Search dimensions" -msgstr "" +msgstr "Dimensões de pesquisa" msgid "Your dimensions" msgstr "Suas dimensões" @@ -389,6 +390,9 @@ msgstr "Mostrar interpretações e detalhes" msgid "View" msgstr "Vizualizar" +msgid "Reset sidebar width" +msgstr "" + msgid "Update" msgstr "Atualizar" From 67c808b16e57bafb1abd87ef32f0f4d51eb9d0e9 Mon Sep 17 00:00:00 2001 From: "@dhis2-bot" Date: Sun, 27 Oct 2024 01:50:00 +0000 Subject: [PATCH 53/62] chore(release): cut 101.1.9 [skip release] ## [101.1.9](https://github.com/dhis2/line-listing-app/compare/v101.1.8...v101.1.9) (2024-10-27) ### Bug Fixes * **translations:** sync translations from transifex (master) ([883368a](https://github.com/dhis2/line-listing-app/commit/883368a0ead1903a12454c87c4e5bf605db524a1)) --- CHANGELOG.md | 7 +++++++ package.json | 2 +- 2 files changed, 8 insertions(+), 1 deletion(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 829b8f875..63108d299 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,3 +1,10 @@ +## [101.1.9](https://github.com/dhis2/line-listing-app/compare/v101.1.8...v101.1.9) (2024-10-27) + + +### Bug Fixes + +* **translations:** sync translations from transifex (master) ([883368a](https://github.com/dhis2/line-listing-app/commit/883368a0ead1903a12454c87c4e5bf605db524a1)) + ## [101.1.8](https://github.com/dhis2/line-listing-app/compare/v101.1.7...v101.1.8) (2024-08-26) diff --git a/package.json b/package.json index 4ad092ea5..a40099467 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "line-listing-app", - "version": "101.1.8", + "version": "101.1.9", "description": "DHIS2 Line Listing", "license": "BSD-3-Clause", "private": true, From d8f854c95fe85b11d81fda62dc40013a5451ad42 Mon Sep 17 00:00:00 2001 From: Hendrik de Graaf Date: Tue, 29 Oct 2024 11:52:58 +0100 Subject: [PATCH 54/62] chore: update all actions to latest version [DHIS2-18298] (#604) * chore: update all actions to latest version * chore: downgrade commitlint action * chore: try commitlint action v5 --------- Co-authored-by: Jen Jones Arnesen --- .github/workflows/dhis2-preview-pr.yml | 6 +++--- .github/workflows/dhis2-verify-commits.yml | 8 +++++--- .github/workflows/e2e-dev.yml | 4 ++-- .github/workflows/nightly.yml | 2 +- .github/workflows/publish-d2-ci.yml | 6 +++--- .github/workflows/release.yml | 10 +++++----- .github/workflows/verify-pr.yml | 16 ++++++++-------- 7 files changed, 27 insertions(+), 25 deletions(-) diff --git a/.github/workflows/dhis2-preview-pr.yml b/.github/workflows/dhis2-preview-pr.yml index 73df5423c..4c6f99446 100644 --- a/.github/workflows/dhis2-preview-pr.yml +++ b/.github/workflows/dhis2-preview-pr.yml @@ -21,8 +21,8 @@ jobs: runs-on: ubuntu-latest if: "!github.event.push.repository.fork && github.actor != 'dependabot[bot]'" steps: - - uses: actions/checkout@v3 - - uses: actions/setup-node@v3 + - uses: actions/checkout@v4 + - uses: actions/setup-node@v4 with: node-version: 18.x @@ -34,7 +34,7 @@ jobs: - name: Deploy id: netlify-deploy - uses: nwtgck/actions-netlify@v1.2.2 + uses: nwtgck/actions-netlify@v3 timeout-minutes: 1 with: github-token: ${{ secrets.DHIS2_BOT_GITHUB_TOKEN }} diff --git a/.github/workflows/dhis2-verify-commits.yml b/.github/workflows/dhis2-verify-commits.yml index df633ee10..eb0c4868a 100644 --- a/.github/workflows/dhis2-verify-commits.yml +++ b/.github/workflows/dhis2-verify-commits.yml @@ -8,7 +8,7 @@ jobs: lint-pr-title: runs-on: ubuntu-latest steps: - - uses: actions/checkout@v3 + - uses: actions/checkout@v4 - uses: c-hive/gha-yarn-cache@v2 - run: yarn install --frozen-lockfile - id: commitlint @@ -20,13 +20,15 @@ jobs: lint-commits: runs-on: ubuntu-latest steps: - - uses: actions/checkout@v3 + - uses: actions/checkout@v4 with: fetch-depth: 0 - uses: c-hive/gha-yarn-cache@v2 - run: yarn install --frozen-lockfile - id: commitlint + # This will return a config file with a .js extensions for @dhis2/cli-style ^10.4.3 run: echo ::set-output name=config_path::$(node -e "process.stdout.write(require('@dhis2/cli-style').config.commitlint)") - - uses: wagoid/commitlint-github-action@v4 + # commitlint-github-action@v6+ requires a .mjs extension for the config file, so the highest version we can use is 5 + - uses: wagoid/commitlint-github-action@v5 with: configFile: ${{ steps.commitlint.outputs.config_path }} diff --git a/.github/workflows/e2e-dev.yml b/.github/workflows/e2e-dev.yml index e780ed875..9bf40a0c2 100644 --- a/.github/workflows/e2e-dev.yml +++ b/.github/workflows/e2e-dev.yml @@ -43,9 +43,9 @@ jobs: steps: - name: Checkout - uses: actions/checkout@v3 + uses: actions/checkout@v4 - - uses: actions/setup-node@v3 + - uses: actions/setup-node@v4 with: node-version: 18.x diff --git a/.github/workflows/nightly.yml b/.github/workflows/nightly.yml index aad05ccd7..dd29796a4 100644 --- a/.github/workflows/nightly.yml +++ b/.github/workflows/nightly.yml @@ -41,7 +41,7 @@ jobs: steps: - name: Send failure message to analytics-internal-kfmt slack channel id: slack - uses: slackapi/slack-github-action@v1.23.0 + uses: slackapi/slack-github-action@v1.27.0 with: channel-id: ${{ secrets.SLACK_CHANNEL_ID }} slack-message: ':x: Line-listing-app e2e nightly build ' diff --git a/.github/workflows/publish-d2-ci.yml b/.github/workflows/publish-d2-ci.yml index 564af1381..1c0b62a04 100644 --- a/.github/workflows/publish-d2-ci.yml +++ b/.github/workflows/publish-d2-ci.yml @@ -31,9 +31,9 @@ jobs: - name: Print GitHub ref run: echo "GITHUB_REF is $GITHUB_REF" - - uses: actions/checkout@v3 + - uses: actions/checkout@v4 - - uses: actions/setup-node@v3 + - uses: actions/setup-node@v4 with: node-version: 18.x @@ -56,7 +56,7 @@ jobs: steps: - name: Send failure message to analytics-internal-bot slack channel id: slack_publish_failure - uses: slackapi/slack-github-action@v1.23.0 + uses: slackapi/slack-github-action@v1.27.0 with: channel-id: ${{ secrets.SLACK_CHANNEL_ID }} payload: | diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml index 648d0a5e2..b26cce6c2 100644 --- a/.github/workflows/release.yml +++ b/.github/workflows/release.yml @@ -24,11 +24,11 @@ jobs: !contains(github.event.head_commit.message, '[skip release]') && !startsWith(github.event.head_commit.message, 'chore') }} steps: - - uses: actions/checkout@v3 + - uses: actions/checkout@v4 with: token: ${{ secrets.DHIS2_BOT_GITHUB_TOKEN }} - - uses: actions/setup-node@v3 + - uses: actions/setup-node@v4 with: node-version: 18.x @@ -63,12 +63,12 @@ jobs: - name: Extract version if: success() id: extract_version - uses: Saionaro/extract-package-version@v1.2.1 + uses: Saionaro/extract-package-version@v1.3.0 - name: Send success message to analytics-internal-bot slack channel if: success() id: slack_success - uses: slackapi/slack-github-action@v1.23.0 + uses: slackapi/slack-github-action@v1.27.0 with: channel-id: ${{ secrets.SLACK_CHANNEL_ID }} payload: | @@ -118,7 +118,7 @@ jobs: - name: Send failure message to analytics-internal-bot slack channel if: ${{ failure() && !cancelled() }} id: slack_failure - uses: slackapi/slack-github-action@v1.23.0 + uses: slackapi/slack-github-action@v1.27.0 with: channel-id: ${{ secrets.SLACK_CHANNEL_ID }} payload: | diff --git a/.github/workflows/verify-pr.yml b/.github/workflows/verify-pr.yml index 32959e2d4..73ec1f2c2 100644 --- a/.github/workflows/verify-pr.yml +++ b/.github/workflows/verify-pr.yml @@ -22,7 +22,7 @@ jobs: outputs: matrix: ${{ steps.set-matrix.outputs.specs }} steps: - - uses: actions/checkout@v3 + - uses: actions/checkout@v4 - name: Generate Test matrix id: set-matrix run: echo "::set-output name=specs::$(node src/generateTestMatrix.js)" @@ -30,8 +30,8 @@ jobs: build: runs-on: ubuntu-latest steps: - - uses: actions/checkout@v3 - - uses: actions/setup-node@v3 + - uses: actions/checkout@v4 + - uses: actions/setup-node@v4 with: node-version: 18.x @@ -41,7 +41,7 @@ jobs: - name: Build run: yarn d2-app-scripts build - - uses: actions/upload-artifact@v3 + - uses: actions/upload-artifact@v4 with: name: app-build path: | @@ -52,8 +52,8 @@ jobs: lint: runs-on: ubuntu-latest steps: - - uses: actions/checkout@v3 - - uses: actions/setup-node@v3 + - uses: actions/checkout@v4 + - uses: actions/setup-node@v4 with: node-version: 18.x @@ -69,8 +69,8 @@ jobs: test: runs-on: ubuntu-latest steps: - - uses: actions/checkout@v3 - - uses: actions/setup-node@v3 + - uses: actions/checkout@v4 + - uses: actions/setup-node@v4 with: node-version: 18.x From 7ae1b0c7fc8b3ecc999d85dc690afe6e2de8bb79 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 29 Oct 2024 14:40:52 +0100 Subject: [PATCH 55/62] chore(deps): bump the security group across 1 directory with 5 updates (#601) * chore(deps): bump the security group across 1 directory with 5 updates Updates `express` from 4.19.2 to 4.21.1 - [Release notes](https://github.com/expressjs/express/releases) - [Changelog](https://github.com/expressjs/express/blob/4.21.1/History.md) - [Commits](https://github.com/expressjs/express/compare/4.19.2...4.21.1) Updates `path-to-regexp` from 0.1.7 to 0.1.10 - [Release notes](https://github.com/pillarjs/path-to-regexp/releases) - [Changelog](https://github.com/pillarjs/path-to-regexp/blob/master/History.md) - [Commits](https://github.com/pillarjs/path-to-regexp/compare/v0.1.7...v0.1.10) Updates `send` from 0.18.0 to 0.19.0 - [Release notes](https://github.com/pillarjs/send/releases) - [Changelog](https://github.com/pillarjs/send/blob/master/HISTORY.md) - [Commits](https://github.com/pillarjs/send/compare/0.18.0...0.19.0) Updates `serve-static` from 1.15.0 to 1.16.2 - [Release notes](https://github.com/expressjs/serve-static/releases) - [Changelog](https://github.com/expressjs/serve-static/blob/v1.16.2/HISTORY.md) - [Commits](https://github.com/expressjs/serve-static/compare/v1.15.0...v1.16.2) Updates `webpack` from 5.91.0 to 5.95.0 - [Release notes](https://github.com/webpack/webpack/releases) - [Commits](https://github.com/webpack/webpack/compare/v5.91.0...v5.95.0) --- updated-dependencies: - dependency-name: express dependency-type: indirect dependency-group: security - dependency-name: path-to-regexp dependency-type: indirect dependency-group: security - dependency-name: send dependency-type: indirect dependency-group: security - dependency-name: serve-static dependency-type: indirect dependency-group: security - dependency-name: webpack dependency-type: indirect dependency-group: security ... Signed-off-by: dependabot[bot] * chore: update all actions to latest version [DHIS2-18298] (#604) * chore: update all actions to latest version * chore: downgrade commitlint action * chore: try commitlint action v5 --------- Co-authored-by: Jen Jones Arnesen --------- Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Co-authored-by: Hendrik de Graaf Co-authored-by: Jen Jones Arnesen --- yarn.lock | 150 ++++++++++++++++++++++++++++-------------------------- 1 file changed, 78 insertions(+), 72 deletions(-) diff --git a/yarn.lock b/yarn.lock index d0497c059..276e7d975 100644 --- a/yarn.lock +++ b/yarn.lock @@ -3778,15 +3778,7 @@ dependencies: "@types/node" "*" -"@types/eslint-scope@^3.7.3": - version "3.7.4" - resolved "https://registry.yarnpkg.com/@types/eslint-scope/-/eslint-scope-3.7.4.tgz#37fc1223f0786c39627068a12e94d6e6fc61de16" - integrity sha512-9K4zoImiZc3HlIp6AVUDE4CWYx22a+lhSZMYNpbjW04+YF0KWj4pJXnEMjdnFTiQibFFmElcsasJXDbdI/EPhA== - dependencies: - "@types/eslint" "*" - "@types/estree" "*" - -"@types/eslint@*", "@types/eslint@^7.29.0 || ^8.4.1": +"@types/eslint@^7.29.0 || ^8.4.1": version "8.4.6" resolved "https://registry.yarnpkg.com/@types/eslint/-/eslint-8.4.6.tgz#7976f054c1bccfcf514bff0564c0c41df5c08207" integrity sha512-/fqTbjxyFUaYNO7VcW5g+4npmqVACz1bB7RTHYuLj+PRjw9hrCwrUXVQFpChUS0JsyEFvMZ7U/PfmvWgxJhI9g== @@ -4389,10 +4381,10 @@ acorn-globals@^6.0.0: acorn "^7.1.1" acorn-walk "^7.1.1" -acorn-import-assertions@^1.9.0: - version "1.9.0" - resolved "https://registry.yarnpkg.com/acorn-import-assertions/-/acorn-import-assertions-1.9.0.tgz#507276249d684797c84e0734ef84860334cfb1ac" - integrity sha512-cmMwop9x+8KFhxvKrKfPYmN6/pKTYYHBqLa0DfvVZcKMJWNyWLnaqND7dx/qn66R7ewM1UX5XMaDVP5wlVTaVA== +acorn-import-attributes@^1.9.5: + version "1.9.5" + resolved "https://registry.yarnpkg.com/acorn-import-attributes/-/acorn-import-attributes-1.9.5.tgz#7eb1557b1ba05ef18b5ed0ec67591bfab04688ef" + integrity sha512-n02Vykv5uA3eHGM/Z2dQrcD56kL8TyDb2p1+0P83PClMnC/nc+anbQRhIOWnSq4Ke/KvDPrY3C9hDtC/A3eHnQ== acorn-import-meta@^1.0.0: version "1.1.0" @@ -5383,10 +5375,10 @@ bn.js@^5.0.0, bn.js@^5.2.1: resolved "https://registry.yarnpkg.com/bn.js/-/bn.js-5.2.1.tgz#0bc527a6a0d18d0aa8d5b0538ce4a77dccfa7b70" integrity sha512-eXRvHzWyYPBuB4NBy0cmYQjGitUrtqwbvlzP3G6VFnNRbsZQIxQ10PbKKHt8gZ/HW/D/747aDl+QkDqg3KQLMQ== -body-parser@1.20.2: - version "1.20.2" - resolved "https://registry.yarnpkg.com/body-parser/-/body-parser-1.20.2.tgz#6feb0e21c4724d06de7ff38da36dad4f57a747fd" - integrity sha512-ml9pReCu3M61kGlqoTm2umSXTlRTuGTx0bfYj+uIUKKYycG5NtSbeetV3faSU6R7ajOPw0g/J1PvK4qNy7s5bA== +body-parser@1.20.3: + version "1.20.3" + resolved "https://registry.yarnpkg.com/body-parser/-/body-parser-1.20.3.tgz#1953431221c6fb5cd63c4b36d53fab0928e548c6" + integrity sha512-7rAxByjUMqQ3/bHJy7D6OGXvx/MMc4IqBn/X0fcM1QUcAItpZrBEYhWGem+tzXH90c+G01ypMcYJBO9Y30203g== dependencies: bytes "3.1.2" content-type "~1.0.5" @@ -5396,7 +5388,7 @@ body-parser@1.20.2: http-errors "2.0.0" iconv-lite "0.4.24" on-finished "2.4.1" - qs "6.11.0" + qs "6.13.0" raw-body "2.5.2" type-is "~1.6.18" unpipe "1.0.0" @@ -6600,10 +6592,10 @@ cookie-signature@1.0.6: resolved "https://registry.yarnpkg.com/cookie-signature/-/cookie-signature-1.0.6.tgz#e303a882b342cc3ee8ca513a79999734dab3ae2c" integrity sha512-QADzlaHc8icV8I7vbaJXJwod9HWYp8uCqf1xa4OfNu1T7JVxQIrUgOWtHdNDtPiywmFbiS12VjotIXLrKM3orQ== -cookie@0.6.0: - version "0.6.0" - resolved "https://registry.yarnpkg.com/cookie/-/cookie-0.6.0.tgz#2798b04b071b0ecbff0dbb62a505a8efa4e19051" - integrity sha512-U71cyTamuh1CRNCfpGY6to28lxvNwPG4Guz/EVjgf3Jmzv0vlDp1atT9eS5dDjMYHucpHbWns6Lwf3BKz6svdw== +cookie@0.7.1: + version "0.7.1" + resolved "https://registry.yarnpkg.com/cookie/-/cookie-0.7.1.tgz#2f73c42142d5d5cf71310a74fc4ae61670e5dbc9" + integrity sha512-6DnInpx7SJ2AK3+CTUE/ZM0vWTUboZCegxhC2xiIydHR9jNuTAASBrfEpHhiGOZw/nX51bHt6YQl8jsGo4y/0w== copy-descriptor@^0.1.0: version "0.1.1" @@ -7815,6 +7807,11 @@ encodeurl@~1.0.2: resolved "https://registry.yarnpkg.com/encodeurl/-/encodeurl-1.0.2.tgz#ad3ff4c86ec2d029322f5a02c3a9a606c95b3f59" integrity sha512-TPJXq8JqFaVYm2CWmPvnP2Iyo4ZSM7/QKcSmuMLDObfpH5fi7RUGmd/rTDf+rut/saiDiQEeVTNgAmJEdAOx0w== +encodeurl@~2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/encodeurl/-/encodeurl-2.0.0.tgz#7b8ea898077d7e409d3ac45474ea38eaf0857a58" + integrity sha512-Q0n9HRi4m6JuGIV1eFlmvJB7ZEVxu93IrMyiMsGC0lrMJMWzRgx6WGquyfQgZVb31vhGgXnfmPNNXmxnOkRBrg== + encoding@^0.1.12, encoding@^0.1.13: version "0.1.13" resolved "https://registry.yarnpkg.com/encoding/-/encoding-0.1.13.tgz#56574afdd791f54a8e9b2785c0582a2d26210fa9" @@ -7829,10 +7826,10 @@ end-of-stream@^1.0.0, end-of-stream@^1.1.0, end-of-stream@^1.4.1: dependencies: once "^1.4.0" -enhanced-resolve@^5.16.0: - version "5.17.0" - resolved "https://registry.yarnpkg.com/enhanced-resolve/-/enhanced-resolve-5.17.0.tgz#d037603789dd9555b89aaec7eb78845c49089bc5" - integrity sha512-dwDPwZL0dmye8Txp2gzFmA6sxALaSvdRDjPH0viLcKrtlOL3tw62nWWweVD1SdILDTJrbrL6tdWVN58Wo6U3eA== +enhanced-resolve@^5.17.1: + version "5.17.1" + resolved "https://registry.yarnpkg.com/enhanced-resolve/-/enhanced-resolve-5.17.1.tgz#67bfbbcc2f81d511be77d686a90267ef7f898a15" + integrity sha512-LMHl3dXhTcfv8gM4kEzIUeTQ+7fpdA0l2tUf34BddXPkz2A5xJ5L/Pchd5BL6rdccM9QGvu0sWZzK1Z1t4wwyg== dependencies: graceful-fs "^4.2.4" tapable "^2.2.0" @@ -8696,36 +8693,36 @@ exponential-backoff@^3.1.1: integrity sha512-dX7e/LHVJ6W3DE1MHWi9S1EYzDESENfLrYohG2G++ovZrYOkm4Knwa0mc1cn84xJOR4KEU0WSchhLbd0UklbHw== express@^4.17.3: - version "4.19.2" - resolved "https://registry.yarnpkg.com/express/-/express-4.19.2.tgz#e25437827a3aa7f2a827bc8171bbbb664a356465" - integrity sha512-5T6nhjsT+EOMzuck8JjBHARTHfMht0POzlA60WV2pMD3gyXw2LZnZ+ueGdNxG+0calOJcWKbpFcuzLZ91YWq9Q== + version "4.21.1" + resolved "https://registry.yarnpkg.com/express/-/express-4.21.1.tgz#9dae5dda832f16b4eec941a4e44aa89ec481b281" + integrity sha512-YSFlK1Ee0/GC8QaO91tHcDxJiE/X4FbpAyQWkxAvG6AXCuR65YzK8ua6D9hvi/TzUfZMpc+BwuM1IPw8fmQBiQ== dependencies: accepts "~1.3.8" array-flatten "1.1.1" - body-parser "1.20.2" + body-parser "1.20.3" content-disposition "0.5.4" content-type "~1.0.4" - cookie "0.6.0" + cookie "0.7.1" cookie-signature "1.0.6" debug "2.6.9" depd "2.0.0" - encodeurl "~1.0.2" + encodeurl "~2.0.0" escape-html "~1.0.3" etag "~1.8.1" - finalhandler "1.2.0" + finalhandler "1.3.1" fresh "0.5.2" http-errors "2.0.0" - merge-descriptors "1.0.1" + merge-descriptors "1.0.3" methods "~1.1.2" on-finished "2.4.1" parseurl "~1.3.3" - path-to-regexp "0.1.7" + path-to-regexp "0.1.10" proxy-addr "~2.0.7" - qs "6.11.0" + qs "6.13.0" range-parser "~1.2.1" safe-buffer "5.2.1" - send "0.18.0" - serve-static "1.15.0" + send "0.19.0" + serve-static "1.16.2" setprototypeof "1.2.0" statuses "2.0.1" type-is "~1.6.18" @@ -8950,13 +8947,13 @@ final-form@^4.20.2: dependencies: "@babel/runtime" "^7.10.0" -finalhandler@1.2.0: - version "1.2.0" - resolved "https://registry.yarnpkg.com/finalhandler/-/finalhandler-1.2.0.tgz#7d23fe5731b207b4640e4fcd00aec1f9207a7b32" - integrity sha512-5uXcUVftlQMFnWC9qu/svkWv3GTd2PfUhK/3PLkYNAe7FbqJMt3515HaxE6eRL74GdsriiwujiawdaB1BpEISg== +finalhandler@1.3.1: + version "1.3.1" + resolved "https://registry.yarnpkg.com/finalhandler/-/finalhandler-1.3.1.tgz#0c575f1d1d324ddd1da35ad7ece3df7d19088019" + integrity sha512-6BN9trH7bp3qvnrRyzsBz+g3lZxTNZTbVO2EV1CS0WIcDbawYVdYvGflME/9QP0h0pYlCDBCTjYa9nZzMDpyxQ== dependencies: debug "2.6.9" - encodeurl "~1.0.2" + encodeurl "~2.0.0" escape-html "~1.0.3" on-finished "2.4.1" parseurl "~1.3.3" @@ -12757,10 +12754,10 @@ meow@^8.0.0: type-fest "^0.18.0" yargs-parser "^20.2.3" -merge-descriptors@1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/merge-descriptors/-/merge-descriptors-1.0.1.tgz#b00aaa556dd8b44568150ec9d1b953f3f90cbb61" - integrity sha512-cCi6g3/Zr1iqQi6ySbseM1Xvooa98N0w31jzUYrXPX2xqObmFGHJ0tQ5u74H3mVh7wLouTseZyYIq39g8cNp1w== +merge-descriptors@1.0.3: + version "1.0.3" + resolved "https://registry.yarnpkg.com/merge-descriptors/-/merge-descriptors-1.0.3.tgz#d80319a65f3c7935351e5cfdac8f9318504dbed5" + integrity sha512-gaNvAS7TZ897/rVaZ0nMtAyxNyi/pdbjbAwUpFQpN70GqnVfOiXpeUUMKRBmzXaSQ8DdTX4/0ms62r2K+hE6mQ== merge-stream@^2.0.0: version "2.0.0" @@ -14188,10 +14185,10 @@ path-platform@~0.11.15: resolved "https://registry.yarnpkg.com/path-platform/-/path-platform-0.11.15.tgz#e864217f74c36850f0852b78dc7bf7d4a5721bf2" integrity sha512-Y30dB6rab1A/nfEKsZxmr01nUotHX0c/ZiIAsCTatEe1CmS5Pm5He7fZ195bPT7RdquoaL8lLxFCMQi/bS7IJg== -path-to-regexp@0.1.7: - version "0.1.7" - resolved "https://registry.yarnpkg.com/path-to-regexp/-/path-to-regexp-0.1.7.tgz#df604178005f522f15eb4490e7247a1bfaa67f8c" - integrity sha512-5DFkuoqlv1uYQKxy8omFBeJPQcdoE07Kv2sferDCrAq1ohOU+MSDswDIbnx3YAM60qIOnYa53wBhXW0EbMonrQ== +path-to-regexp@0.1.10: + version "0.1.10" + resolved "https://registry.yarnpkg.com/path-to-regexp/-/path-to-regexp-0.1.10.tgz#67e9108c5c0551b9e5326064387de4763c4d5f8b" + integrity sha512-7lf7qcQidTku0Gu3YDPc8DJ1q7OOucfa/BSsIwjuh56VU7katFvuM8hULfkwB3Fns/rsVF7PwPKVw1sl5KQS9w== path-type@^3.0.0: version "3.0.0" @@ -15137,12 +15134,12 @@ qs@6.10.4: dependencies: side-channel "^1.0.4" -qs@6.11.0: - version "6.11.0" - resolved "https://registry.yarnpkg.com/qs/-/qs-6.11.0.tgz#fd0d963446f7a65e1367e01abd85429453f0c37a" - integrity sha512-MvjoMCJwEarSbUYk5O+nmoSzSutSsTwF85zcHPQ9OrlFoZOYIjaqBAJIqIXjptyD5vThxGq52Xu/MaJzRkIk4Q== +qs@6.13.0: + version "6.13.0" + resolved "https://registry.yarnpkg.com/qs/-/qs-6.13.0.tgz#6ca3bd58439f7e245655798997787b0d88a51906" + integrity sha512-+38qI9SOr8tfZ4QmJNplMUxqjbe7LKvvZgWdExBOmd+egZTtjLB67Gu0HRX3u/XOq7UU2Nx6nsjvS16Z9uwfpg== dependencies: - side-channel "^1.0.4" + side-channel "^1.0.6" qs@~6.5.2: version "6.5.3" @@ -16345,10 +16342,10 @@ semver@^7.2.1, semver@^7.3.2, semver@^7.3.4, semver@^7.3.5, semver@^7.3.7, semve dependencies: lru-cache "^6.0.0" -send@0.18.0: - version "0.18.0" - resolved "https://registry.yarnpkg.com/send/-/send-0.18.0.tgz#670167cc654b05f5aa4a767f9113bb371bc706be" - integrity sha512-qqWzuOjSFOuqPjFe4NOsMLafToQQwBSOEpS+FwEt3A2V3vKubTquT3vmLTQpFgMXp8AlFWFuP1qKaJZOtPpVXg== +send@0.19.0: + version "0.19.0" + resolved "https://registry.yarnpkg.com/send/-/send-0.19.0.tgz#bbc5a388c8ea6c048967049dbeac0e4a3f09d7f8" + integrity sha512-dW41u5VfLXu8SJh5bwRmyYUbAoSB3c9uQh6L8h/KtsFREPWpbX1lrljJo186Jc4nmci/sGUZ9a0a0J2zgfq2hw== dependencies: debug "2.6.9" depd "2.0.0" @@ -16398,15 +16395,15 @@ serve-index@^1.9.1: mime-types "~2.1.17" parseurl "~1.3.2" -serve-static@1.15.0: - version "1.15.0" - resolved "https://registry.yarnpkg.com/serve-static/-/serve-static-1.15.0.tgz#faaef08cffe0a1a62f60cad0c4e513cff0ac9540" - integrity sha512-XGuRDNjXUijsUL0vl6nSD7cwURuzEgglbOaFuZM9g3kwDXOWVTck0jLzjPzGD+TazWbboZYu52/9/XPdUgne9g== +serve-static@1.16.2: + version "1.16.2" + resolved "https://registry.yarnpkg.com/serve-static/-/serve-static-1.16.2.tgz#b6a5343da47f6bdd2673848bf45754941e803296" + integrity sha512-VqpjJZKadQB/PEbEwvFdO43Ax5dFBZ2UECszz8bQ7pi7wt//PWe1P6MN7eCnjsatYtBT6EuiClbjSWP2WrIoTw== dependencies: - encodeurl "~1.0.2" + encodeurl "~2.0.0" escape-html "~1.0.3" parseurl "~1.3.3" - send "0.18.0" + send "0.19.0" set-blocking@^2.0.0: version "2.0.0" @@ -16523,6 +16520,16 @@ side-channel@^1.0.3, side-channel@^1.0.4: get-intrinsic "^1.0.2" object-inspect "^1.9.0" +side-channel@^1.0.6: + version "1.0.6" + resolved "https://registry.yarnpkg.com/side-channel/-/side-channel-1.0.6.tgz#abd25fb7cd24baf45466406b1096b7831c9215f2" + integrity sha512-fDW/EZ6Q9RiO8eFG8Hj+7u/oW+XrPTIChwCOM2+th2A6OblDtYYIpve9m+KvI9Z4C9qSEXlaGR6bTEYHReuglA== + dependencies: + call-bind "^1.0.7" + es-errors "^1.3.0" + get-intrinsic "^1.2.4" + object-inspect "^1.13.1" + signal-exit@^3.0.0, signal-exit@^3.0.2, signal-exit@^3.0.3, signal-exit@^3.0.7: version "3.0.7" resolved "https://registry.yarnpkg.com/signal-exit/-/signal-exit-3.0.7.tgz#a9a1767f8af84155114eaabd73f99273c8f59ad9" @@ -18506,20 +18513,19 @@ webpack-sources@^3.2.3: integrity sha512-/DyMEOrDgLKKIG0fmvtz+4dUX/3Ghozwgm6iPp8KRhvn+eQf9+Q7GWxVNMk3+uCPWfdXYC4ExGBckIXdFEfH1w== webpack@^5.41.1, webpack@^5.64.4: - version "5.91.0" - resolved "https://registry.yarnpkg.com/webpack/-/webpack-5.91.0.tgz#ffa92c1c618d18c878f06892bbdc3373c71a01d9" - integrity sha512-rzVwlLeBWHJbmgTC/8TvAcu5vpJNII+MelQpylD4jNERPwpBJOE2lEcko1zJX3QJeLjTTAnQxn/OJ8bjDzVQaw== + version "5.95.0" + resolved "https://registry.yarnpkg.com/webpack/-/webpack-5.95.0.tgz#8fd8c454fa60dad186fbe36c400a55848307b4c0" + integrity sha512-2t3XstrKULz41MNMBF+cJ97TyHdyQ8HCt//pqErqDvNjU9YQBnZxIHa11VXsi7F3mb5/aO2tuDxdeTPdU7xu9Q== dependencies: - "@types/eslint-scope" "^3.7.3" "@types/estree" "^1.0.5" "@webassemblyjs/ast" "^1.12.1" "@webassemblyjs/wasm-edit" "^1.12.1" "@webassemblyjs/wasm-parser" "^1.12.1" acorn "^8.7.1" - acorn-import-assertions "^1.9.0" + acorn-import-attributes "^1.9.5" browserslist "^4.21.10" chrome-trace-event "^1.0.2" - enhanced-resolve "^5.16.0" + enhanced-resolve "^5.17.1" es-module-lexer "^1.2.1" eslint-scope "5.1.1" events "^3.2.0" From 5d18b61a885f7fae132ab967576f04fb45a7d453 Mon Sep 17 00:00:00 2001 From: Hendrik de Graaf Date: Tue, 29 Oct 2024 15:12:37 +0100 Subject: [PATCH 56/62] chore: update READM with info about deploy previews (#591) Co-authored-by: Jen Jones Arnesen --- README.md | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/README.md b/README.md index 65d280c23..f57b560dc 100644 --- a/README.md +++ b/README.md @@ -116,6 +116,10 @@ When reviewing, please don't approve until all the required checks have passed. PRs should be squash merged unless there is a good reason to preserve the individual commit history. Make sure the PR commit summary has the correct semantic release keyword (fix, feat, chore, etc). Keep line lengths in the description to <100 in order to avoid lint-commit errors in future PRs that have "merge from master" commits. The summaries and descriptions go into the release notes so make it good! +### Deploy previews + +For each PR, a deploy preview is automatically generated and available at the following URL: https://pr-###.line-listing.netlify.dhis2.org This is useful for reviewing changes to the app before merging them into master. Because this is on a dhis2.org domain, the deploy preview can be tested against any DHIS2 Core backend deployed on the dhis2.org domain without encountering CORS issues. + ## Learn More This project was bootstrapped with [DHIS2 Application Platform](https://github.com/dhis2/app-platform). From 93283aa7f815d5a6546eca2eeb854933e23ec16f Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Thu, 31 Oct 2024 09:16:45 +0000 Subject: [PATCH 57/62] chore(deps): bump rollup from 2.79.1 to 2.79.2 (#600) Bumps [rollup](https://github.com/rollup/rollup) from 2.79.1 to 2.79.2. - [Release notes](https://github.com/rollup/rollup/releases) - [Changelog](https://github.com/rollup/rollup/blob/master/CHANGELOG.md) - [Commits](https://github.com/rollup/rollup/compare/v2.79.1...v2.79.2) --- updated-dependencies: - dependency-name: rollup dependency-type: indirect ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Co-authored-by: Jen Jones Arnesen --- yarn.lock | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/yarn.lock b/yarn.lock index 276e7d975..a89db0300 100644 --- a/yarn.lock +++ b/yarn.lock @@ -16072,9 +16072,9 @@ rollup-plugin-terser@^7.0.0: terser "^5.0.0" rollup@^2.43.1: - version "2.79.1" - resolved "https://registry.yarnpkg.com/rollup/-/rollup-2.79.1.tgz#bedee8faef7c9f93a2647ac0108748f497f081c7" - integrity sha512-uKxbd0IhMZOhjAiD5oAFp7BqvkA4Dv47qpOCtaNvng4HBwdbWtdOh8f5nZNuk2rp51PMGk3bzfWu5oayNEuYnw== + version "2.79.2" + resolved "https://registry.yarnpkg.com/rollup/-/rollup-2.79.2.tgz#f150e4a5db4b121a21a747d762f701e5e9f49090" + integrity sha512-fS6iqSPZDs3dr/y7Od6y5nha8dW1YnbgtsyotCVvoFGKbERG++CVRFv1meyGDE1SNItQA8BrnCw7ScdAhRJ3XQ== optionalDependencies: fsevents "~2.3.2" From ad689b29cb05c9d5bc6036e8aaaa3541a811623c Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Thu, 31 Oct 2024 11:44:54 +0100 Subject: [PATCH 58/62] chore(deps): bump http-proxy-middleware from 2.0.6 to 2.0.7 (#609) * chore(deps): bump http-proxy-middleware from 2.0.6 to 2.0.7 --- updated-dependencies: - dependency-name: http-proxy-middleware dependency-type: indirect ... Signed-off-by: dependabot[bot] * chore: update READM with info about deploy previews (#591) Co-authored-by: Jen Jones Arnesen * chore(deps): bump rollup from 2.79.1 to 2.79.2 (#600) Bumps [rollup](https://github.com/rollup/rollup) from 2.79.1 to 2.79.2. - [Release notes](https://github.com/rollup/rollup/releases) - [Changelog](https://github.com/rollup/rollup/blob/master/CHANGELOG.md) - [Commits](https://github.com/rollup/rollup/compare/v2.79.1...v2.79.2) --- updated-dependencies: - dependency-name: rollup dependency-type: indirect ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Co-authored-by: Jen Jones Arnesen --------- Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Co-authored-by: Hendrik de Graaf Co-authored-by: Jen Jones Arnesen --- yarn.lock | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/yarn.lock b/yarn.lock index a89db0300..128a1ecac 100644 --- a/yarn.lock +++ b/yarn.lock @@ -10017,9 +10017,9 @@ http-proxy-agent@^7.0.0: debug "^4.3.4" http-proxy-middleware@^2.0.3: - version "2.0.6" - resolved "https://registry.yarnpkg.com/http-proxy-middleware/-/http-proxy-middleware-2.0.6.tgz#e1a4dd6979572c7ab5a4e4b55095d1f32a74963f" - integrity sha512-ya/UeJ6HVBYxrgYotAZo1KvPWlgB48kUJLDePFeneHsVujFaW5WNj2NgWCAE//B1Dl02BIfYlpNgBy8Kf8Rjmw== + version "2.0.7" + resolved "https://registry.yarnpkg.com/http-proxy-middleware/-/http-proxy-middleware-2.0.7.tgz#915f236d92ae98ef48278a95dedf17e991936ec6" + integrity sha512-fgVY8AV7qU7z/MmXJ/rxwbrtQH4jBQ9m7kp3llF0liB7glmFeVZFBepQb32T3y8n8k2+AEYuMPCpinYW+/CuRA== dependencies: "@types/http-proxy" "^1.17.8" http-proxy "^1.18.1" From 63e6adba9f71cd545a4b05b2b1efc9b49d972ea7 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Thu, 31 Oct 2024 10:55:50 +0000 Subject: [PATCH 59/62] chore(deps): bump elliptic from 6.5.7 to 6.6.0 in the security group (#607) Bumps the security group with 1 update: [elliptic](https://github.com/indutny/elliptic). Updates `elliptic` from 6.5.7 to 6.6.0 - [Commits](https://github.com/indutny/elliptic/compare/v6.5.7...v6.6.0) --- updated-dependencies: - dependency-name: elliptic dependency-type: indirect dependency-group: security ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Co-authored-by: Jen Jones Arnesen --- yarn.lock | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/yarn.lock b/yarn.lock index 128a1ecac..7b251820e 100644 --- a/yarn.lock +++ b/yarn.lock @@ -7755,9 +7755,9 @@ electron-to-chromium@^1.4.796: integrity sha512-NglN/xprcM+SHD2XCli4oC6bWe6kHoytcyLKCWXmRL854F0qhPhaYgUswUsglnPxYaNQIg2uMY4BvaomIf3kLA== elliptic@^6.5.3, elliptic@^6.5.5: - version "6.5.7" - resolved "https://registry.yarnpkg.com/elliptic/-/elliptic-6.5.7.tgz#8ec4da2cb2939926a1b9a73619d768207e647c8b" - integrity sha512-ESVCtTwiA+XhY3wyh24QqRGBoP3rEdDUl3EDUUo9tft074fi19IrdpH7hLCMMP3CIj7jb3W96rn8lt/BqIlt5Q== + version "6.6.0" + resolved "https://registry.yarnpkg.com/elliptic/-/elliptic-6.6.0.tgz#5919ec723286c1edf28685aa89261d4761afa210" + integrity sha512-dpwoQcLc/2WLQvJvLRHKZ+f9FgOdjnq11rurqwekGQygGPsYSK29OMMD2WalatiqQ+XGFDglTNixpPfI+lpaAA== dependencies: bn.js "^4.11.9" brorand "^1.1.0" From ed97ea0f61e4282eeff0d4799b8335308d6da9d5 Mon Sep 17 00:00:00 2001 From: Adel Bensaad Date: Wed, 27 Nov 2024 13:22:06 +0100 Subject: [PATCH 60/62] chore: remove reportportal integration (#618) The QA team has decided to remove Report Portal integration due to minimal adoption and lack of tangible benefits. Developers rely on CI for test failure analysis, and the Auto Triage feature was not utilized. Removing RP will simplify CI pipelines and eliminate unnecessary maintenance. --- .github/workflows/verify-pr.yml | 10 - cypress.config.js | 28 --- jest.config.js | 51 +----- package.json | 2 - yarn.lock | 312 +++++--------------------------- 5 files changed, 49 insertions(+), 354 deletions(-) diff --git a/.github/workflows/verify-pr.yml b/.github/workflows/verify-pr.yml index 73ec1f2c2..f96ebd35a 100644 --- a/.github/workflows/verify-pr.yml +++ b/.github/workflows/verify-pr.yml @@ -79,13 +79,6 @@ jobs: - name: Test run: yarn d2-app-scripts test - env: - REPORTPORTAL_API_KEY: ${{ secrets.REPORTPORTAL_API_KEY }} - REPORTPORTAL_ENDPOINT: ${{ vars.REPORTPORTAL_ENDPOINT }} - REPORTPORTAL_PROJECT: ${{ vars.REPORTPORTAL_PROJECT }} - CI_BUILD_ID: ${{ github.sha }}-${{ github.workflow }}-${{ github.event_name }} - BRANCH_NAME: ${{ github.head_ref || github.ref_name }} - PR_TITLE: ${{ github.event_name == 'pull_request' && github.event.pull_request.title || format('Direct push to {0}', github.ref_name) }} call-workflow-e2e-prod: if: "!contains(github.event.head_commit.message, '[skip ci]')" @@ -98,6 +91,3 @@ jobs: username: ${{ secrets.CYPRESS_DHIS2_USERNAME }} password: ${{ secrets.CYPRESS_DHIS2_PASSWORD }} recordkey: ${{ secrets.CYPRESS_RECORD_KEY }} - reportportal_api_key: ${{ secrets.REPORTPORTAL_API_KEY }} - reportportal_endpoint: ${{ vars.REPORTPORTAL_ENDPOINT }} - reportportal_project: ${{ vars.REPORTPORTAL_PROJECT }} diff --git a/cypress.config.js b/cypress.config.js index 91e229b63..be1d55643 100644 --- a/cypress.config.js +++ b/cypress.config.js @@ -42,34 +42,6 @@ async function setupNodeEvents(on, config) { module.exports = defineConfig({ projectId: 'm5qvjx', - reporter: '@reportportal/agent-js-cypress', - reporterOptions: { - endpoint: process.env.REPORTPORTAL_ENDPOINT, - apiKey: process.env.REPORTPORTAL_API_KEY, - launch: 'line_listing_app', - project: process.env.REPORTPORTAL_PROJECT, - description: '', - autoMerge: true, - parallel: true, - debug: false, - restClientConfig: { - timeout: 660000, - }, - attributes: [ - { - key: 'dhis2_version', - value: process.env.DHIS2_VERSION, - }, - { - key: 'app_name', - value: 'line-listing-app', - }, - { - key: 'test_level', - value: 'e2e', - }, - ], - }, e2e: { setupNodeEvents, baseUrl: 'http://localhost:3000', diff --git a/jest.config.js b/jest.config.js index af31beaeb..d61cb9a34 100644 --- a/jest.config.js +++ b/jest.config.js @@ -1,49 +1,3 @@ -const reportPortalConfig = [ - '@reportportal/agent-js-jest', - { - apiKey: process.env.REPORTPORTAL_API_KEY, - endpoint: process.env.REPORTPORTAL_ENDPOINT, - project: process.env.REPORTPORTAL_PROJECT, - launch: 'line_listing_app', - attributes: [ - { - key: 'dhis2_version', - value: 'master', - }, - { - key: 'app_name', - value: 'line-listing-app', - }, - { - key: 'test_level', - value: 'unit/integration', - }, - { - key: 'BRANCH_NAME', - value: process.env.BRANCH_NAME, - }, - { - key: 'CI_BUILD_ID', - value: process.env.CI_BUILD_ID, - }, - { - key: 'PR_TITLE', - value: process.env.PR_TITLE, - }, - ], - description: '', - debug: true, - }, -] - -const isDependabotPR = process.env.GITHUB_ACTOR === 'dependabot[bot]' - -const isReportPortalSetup = - process.env.REPORTPORTAL_API_KEY !== undefined && - process.env.REPORTPORTAL_ENDPOINT !== undefined && - process.env.REPORTPORTAL_PROJECT !== undefined && - !isDependabotPR - module.exports = { transformIgnorePatterns: [ 'node_modules/(?!(lodash-es|@dhis2/d2-ui-[a-z-]+)/)', @@ -57,8 +11,5 @@ module.exports = { '**/src/**/__tests__/**/*.spec.[jt]s?(x)', '**/cypress/support/__tests__/**/*.test.[jt]s?(x)', ], - reporters: [ - 'default', - ...(isReportPortalSetup ? [reportPortalConfig] : []), - ], + reporters: ['default'], } diff --git a/package.json b/package.json index a40099467..5e0c23d9c 100644 --- a/package.json +++ b/package.json @@ -22,8 +22,6 @@ "@dhis2/cli-style": "^10.4.3", "@dhis2/cypress-commands": "^10.0.3", "@dhis2/cypress-plugins": "^10.0.2", - "@reportportal/agent-js-cypress": "git+https://github.com/dhis2/agent-js-cypress.git#develop", - "@reportportal/agent-js-jest": "^5.0.8", "@semantic-release/changelog": "^6", "@semantic-release/exec": "^6", "@semantic-release/git": "^10", diff --git a/yarn.lock b/yarn.lock index 7b251820e..2adb88d63 100644 --- a/yarn.lock +++ b/yarn.lock @@ -3305,36 +3305,6 @@ "@react-hook/passive-layout-effect" "^1.2.0" "@react-hook/resize-observer" "^1.2.1" -"@reportportal/agent-js-cypress@git+https://github.com/dhis2/agent-js-cypress.git#develop": - version "5.1.4" - resolved "git+https://github.com/dhis2/agent-js-cypress.git#63ef44e29111c55e4d64209c837f6a3d5913437b" - dependencies: - "@reportportal/client-javascript" "^5.0.14" - glob "^7.2.3" - minimatch "^3.1.2" - mocha "^10.2.0" - node-ipc "9.1.1" - -"@reportportal/agent-js-jest@^5.0.8": - version "5.0.8" - resolved "https://registry.yarnpkg.com/@reportportal/agent-js-jest/-/agent-js-jest-5.0.8.tgz#743a34e5884bcfec7ece84ed200be7ecac50ca45" - integrity sha512-OKH0bcsif7l11Wym8OVhUqJNfuT7sPw3jBVgcLSk8p33x8Bx/0P4pm2qNbhLkYgBujgnTI7q6y8+sgOxUY+I7Q== - dependencies: - "@reportportal/client-javascript" "~5.0.15" - strip-ansi "^6.0.1" - -"@reportportal/client-javascript@^5.0.14", "@reportportal/client-javascript@~5.0.15": - version "5.0.15" - resolved "https://registry.yarnpkg.com/@reportportal/client-javascript/-/client-javascript-5.0.15.tgz#57080be5bdb347ab0019aeb385f9f282349f7ac4" - integrity sha512-ry6euqCOoJLXCUuBhlRMjCYKhbgU+9EYdZ8jpTuagoBVxS8V8nJed9ODnS4bXX61g+pJm+NP/0DrN2Ptq+DgQQ== - dependencies: - axios "^0.27.2" - axios-retry "^3.4.0" - glob "^7.2.3" - ini "^2.0.0" - uniqid "^5.4.0" - uuid "^9.0.0" - "@rollup/plugin-babel@^5.2.0": version "5.3.1" resolved "https://registry.yarnpkg.com/@rollup/plugin-babel/-/plugin-babel-5.3.1.tgz#04bc0608f4aa4b2e4b1aebf284344d0f68fda283" @@ -4590,11 +4560,6 @@ ansi-align@^3.0.0: dependencies: string-width "^4.1.0" -ansi-colors@4.1.1: - version "4.1.1" - resolved "https://registry.yarnpkg.com/ansi-colors/-/ansi-colors-4.1.1.tgz#cbb9ae256bf750af1eab344f229aa27fe94ba348" - integrity sha512-JoX0apGbHaUJBNl6yF+p6JAFYZ666/hhCGKN5t9QFjbJQKUU/g8MNbFDbvfrgKXvI1QpZplPOnwIo99lX/AAmA== - ansi-colors@^4.1.1: version "4.1.3" resolved "https://registry.yarnpkg.com/ansi-colors/-/ansi-colors-4.1.3.tgz#37611340eb2243e70cc604cad35d63270d48781b" @@ -5035,14 +5000,6 @@ axe-core@^4.4.3: resolved "https://registry.yarnpkg.com/axe-core/-/axe-core-4.4.3.tgz#11c74d23d5013c0fa5d183796729bc3482bd2f6f" integrity sha512-32+ub6kkdhhWick/UjvEwRchgoetXqTK14INLqbGm5U2TzBkBNF3nQtLYm8ovxSkQWArjEQvftCKryjZaATu3w== -axios-retry@^3.4.0: - version "3.9.1" - resolved "https://registry.yarnpkg.com/axios-retry/-/axios-retry-3.9.1.tgz#c8924a8781c8e0a2c5244abf773deb7566b3830d" - integrity sha512-8PJDLJv7qTTMMwdnbMvrLYuvB47M81wRtxQmEdV5w4rgbTXTt+vtPkXwajOfOdSyv/wZICJOC+/UhXH4aQ/R+w== - dependencies: - "@babel/runtime" "^7.15.4" - is-retry-allowed "^2.2.0" - axios@^0.21.1: version "0.21.4" resolved "https://registry.yarnpkg.com/axios/-/axios-0.21.4.tgz#c67b90dc0568e5c1cf2b0b858c43ba28e2eda575" @@ -5057,14 +5014,6 @@ axios@^0.25.0: dependencies: follow-redirects "^1.14.7" -axios@^0.27.2: - version "0.27.2" - resolved "https://registry.yarnpkg.com/axios/-/axios-0.27.2.tgz#207658cc8621606e586c85db4b41a750e756d972" - integrity sha512-t+yRIyySRTp/wua5xEr+z1q60QmLq8ABsS5O9Me1AsE5dfKqgnCFzwiCZZ/cGNd1lq4/7akDWMxdhVlucjmnOQ== - dependencies: - follow-redirects "^1.14.9" - form-data "^4.0.0" - axobject-query@^2.2.0: version "2.2.0" resolved "https://registry.yarnpkg.com/axobject-query/-/axobject-query-2.2.0.tgz#943d47e10c0b704aa42275e20edf3722648989be" @@ -5520,11 +5469,6 @@ browser-resolve@^2.0.0: dependencies: resolve "^1.17.0" -browser-stdout@1.3.1: - version "1.3.1" - resolved "https://registry.yarnpkg.com/browser-stdout/-/browser-stdout-1.3.1.tgz#baa559ee14ced73452229bad7326467c61fabd60" - integrity sha512-qhAVI1+Av2X7qelOfAIYwXONood6XlZE/fXaBSmW/T5SzLAmCgzi+eiWE7fUvbHaeNBQH13UftjpXxsfLkMpgw== - browserify-aes@^1.0.4, browserify-aes@^1.2.0: version "1.2.0" resolved "https://registry.yarnpkg.com/browserify-aes/-/browserify-aes-1.2.0.tgz#326734642f403dabc3003209853bb70ad428ef48" @@ -5890,7 +5834,7 @@ camelcase@^5.0.0, camelcase@^5.3.1: resolved "https://registry.yarnpkg.com/camelcase/-/camelcase-5.3.1.tgz#e3c9b31569e106811df242f715725a1f4c494320" integrity sha512-L28STB170nwWS63UjtlEOE3dldQApaJXZkOI1uMFfzf3rRuPegHaHesyee+YxQ+W6SvRDQV6UrdOdRiR153wJg== -camelcase@^6.0.0, camelcase@^6.2.0, camelcase@^6.2.1: +camelcase@^6.2.0, camelcase@^6.2.1: version "6.3.0" resolved "https://registry.yarnpkg.com/camelcase/-/camelcase-6.3.0.tgz#5685b95eb209ac9c0c177467778c9c84df58ba9a" integrity sha512-Gmy6FhYlCY7uOElZUSbxo2UCDH8owEk996gkbrpsgGtrJLM3J7jGxl9Ic7Qwwj4ivOE5AWZWRMecDdF7hqGjFA== @@ -6015,7 +5959,7 @@ cheerio@^1.0.0-rc.3: parse5 "^7.0.0" parse5-htmlparser2-tree-adapter "^7.0.0" -chokidar@3.5.3, chokidar@^3.3.0, chokidar@^3.4.0, chokidar@^3.4.2, chokidar@^3.5.3: +chokidar@^3.3.0, chokidar@^3.4.0, chokidar@^3.4.2, chokidar@^3.5.3: version "3.5.3" resolved "https://registry.yarnpkg.com/chokidar/-/chokidar-3.5.3.tgz#1cf37c8707b932bd1af1ae22c0432e2acd1903bd" integrity sha512-Dr3sfKRP6oTcjf2JmUmFJfeVMvXBdegxB0iVQ5eb2V10uFJUCAS8OByZdVAyVb8xXNz3GjjTgj9kLWsZTqE6kw== @@ -7180,13 +7124,6 @@ debug@4.3.2: dependencies: ms "2.1.2" -debug@4.3.4: - version "4.3.4" - resolved "https://registry.yarnpkg.com/debug/-/debug-4.3.4.tgz#1319f6579357f2338d3337d2cdd4914bb5dcc865" - integrity sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ== - dependencies: - ms "2.1.2" - debug@^3.1.0, debug@^3.2.7: version "3.2.7" resolved "https://registry.yarnpkg.com/debug/-/debug-3.2.7.tgz#72580b7e9145fb39b6676f9c5e5fb100b934179a" @@ -7219,11 +7156,6 @@ decamelize@^1.1.0, decamelize@^1.2.0: resolved "https://registry.yarnpkg.com/decamelize/-/decamelize-1.2.0.tgz#f6534d15148269b20352e7bee26f501f9a191290" integrity sha512-z2S+W9X73hAUUki+N+9Za2lBlun89zigOyGrsax+KUQ6wKW4ZoWpEYBkGhQjwAjjDCkWxhY0VKEhk8wzY7F5cA== -decamelize@^4.0.0: - version "4.0.0" - resolved "https://registry.yarnpkg.com/decamelize/-/decamelize-4.0.0.tgz#aa472d7bf660eb15f3494efd531cab7f2a709837" - integrity sha512-9iE1PgSik9HeIIw2JO94IidnE3eBoQrFJ3w7sFuzSX4DpmZ3v5sZpUiV5Swcf6mQEF+Y0ru8Neo+p+nyh2J+hQ== - decimal.js@^10.2.1, decimal.js@^10.3.1: version "10.4.2" resolved "https://registry.yarnpkg.com/decimal.js/-/decimal.js-10.4.2.tgz#0341651d1d997d86065a2ce3a441fbd0d8e8b98e" @@ -7483,11 +7415,6 @@ diff-sequences@^29.2.0: resolved "https://registry.yarnpkg.com/diff-sequences/-/diff-sequences-29.2.0.tgz#4c55b5b40706c7b5d2c5c75999a50c56d214e8f6" integrity sha512-413SY5JpYeSBZxmenGEmCVQ8mCgtFJF0w9PROdaS6z987XC2Pd2GOKqOITLtMftmyFZqgtCOb/QA7/Z3ZXfzIw== -diff@5.0.0: - version "5.0.0" - resolved "https://registry.yarnpkg.com/diff/-/diff-5.0.0.tgz#7ed6ad76d859d030787ec35855f5b1daf31d852b" - integrity sha512-/VTCrvm5Z0JGty/BWHljh+BAiw3IK+2j87NGMu8Nwc/f48WoDAC395uomO9ZD117ZOBaHmkX1oyLvkVM/aIT3w== - diff@^5.1.0: version "5.2.0" resolved "https://registry.yarnpkg.com/diff/-/diff-5.2.0.tgz#26ded047cd1179b78b9537d5ef725503ce1ae531" @@ -7716,11 +7643,6 @@ duplexify@^3.6.0: readable-stream "^2.0.0" stream-shift "^1.0.0" -easy-stack@^1.0.0: - version "1.0.1" - resolved "https://registry.yarnpkg.com/easy-stack/-/easy-stack-1.0.1.tgz#8afe4264626988cabb11f3c704ccd0c835411066" - integrity sha512-wK2sCs4feiiJeFXn3zvY0p41mdU5VUgbgs1rNsc/y5ngFUijdWd+iIN8eoyuZHKB8xN6BL4PdWmzqFmxNg6V2w== - ecc-jsbn@~0.1.1: version "0.1.2" resolved "https://registry.yarnpkg.com/ecc-jsbn/-/ecc-jsbn-0.1.2.tgz#3a83a904e54353287874c564b7549386849a98c9" @@ -8119,11 +8041,6 @@ escape-latex@^1.2.0: resolved "https://registry.yarnpkg.com/escape-latex/-/escape-latex-1.2.0.tgz#07c03818cf7dac250cce517f4fda1b001ef2bca1" integrity sha512-nV5aVWW1K0wEiUIEdZ4erkGGH8mDxGyxSeqPzRNtWP7ataw+/olFObw7hujFWlVjNsaDFw5VZ5NzVSIqRgfTiw== -escape-string-regexp@4.0.0, escape-string-regexp@^4.0.0: - version "4.0.0" - resolved "https://registry.yarnpkg.com/escape-string-regexp/-/escape-string-regexp-4.0.0.tgz#14ba83a5d373e3d311e5afca29cf5bfad965bf34" - integrity sha512-TtpcNJ3XAzx3Gq8sWRzJaVajRs0uVxA2YAkdb1jm2YkPz4G6egUFAyA3n5vtEIZefPk5Wa4UXbKuS5fKkJWdgA== - escape-string-regexp@5.0.0, escape-string-regexp@^5.0.0: version "5.0.0" resolved "https://registry.yarnpkg.com/escape-string-regexp/-/escape-string-regexp-5.0.0.tgz#4683126b500b61762f2dbebace1806e8be31b1c8" @@ -8139,6 +8056,11 @@ escape-string-regexp@^2.0.0: resolved "https://registry.yarnpkg.com/escape-string-regexp/-/escape-string-regexp-2.0.0.tgz#a30304e99daa32e23b2fd20f51babd07cffca344" integrity sha512-UpzcLCXolUWcNu5HtVMHYdXJjArjsF9C0aNnquZYY4uW/Vu0miy5YoWvbV345HauVvcAUnpRuhMMcqTcGOY2+w== +escape-string-regexp@^4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/escape-string-regexp/-/escape-string-regexp-4.0.0.tgz#14ba83a5d373e3d311e5afca29cf5bfad965bf34" + integrity sha512-TtpcNJ3XAzx3Gq8sWRzJaVajRs0uVxA2YAkdb1jm2YkPz4G6egUFAyA3n5vtEIZefPk5Wa4UXbKuS5fKkJWdgA== + escodegen@^1.9.1: version "1.14.3" resolved "https://registry.yarnpkg.com/escodegen/-/escodegen-1.14.3.tgz#4e7b81fba61581dc97582ed78cab7f0e8d63f503" @@ -8504,11 +8426,6 @@ etag@~1.8.1: resolved "https://registry.yarnpkg.com/etag/-/etag-1.8.1.tgz#41ae2eeb65efa62268aebfea83ac7d79299b0887" integrity sha512-aIL5Fx7mawVa300al2BnEE4iNvo1qETxLrPI/o05L7z6go7fCw1J6EQmbK4FmJ2AS7kgVF/KEZWufBfdClMcPg== -event-pubsub@4.3.0: - version "4.3.0" - resolved "https://registry.yarnpkg.com/event-pubsub/-/event-pubsub-4.3.0.tgz#f68d816bc29f1ec02c539dc58c8dd40ce72cb36e" - integrity sha512-z7IyloorXvKbFx9Bpie2+vMJKKx1fH1EN5yiTfp8CiLOTptSYy1g8H4yDpGlEdshL1PBiFtBHepF2cNsqeEeFQ== - event-stream@=3.3.4: version "3.3.4" resolved "https://registry.yarnpkg.com/event-stream/-/event-stream-3.3.4.tgz#4ab4c9a0f5a54db9338b4c34d86bfce8f4b35571" @@ -8978,14 +8895,6 @@ find-cache-dir@^3.3.1: make-dir "^3.0.2" pkg-dir "^4.1.0" -find-up@5.0.0, find-up@^5.0.0: - version "5.0.0" - resolved "https://registry.yarnpkg.com/find-up/-/find-up-5.0.0.tgz#4c92819ecb7083561e4f4a240a86be5198f536fc" - integrity sha512-78/PXT1wlLLDgTzDs7sjq9hzz0vXD+zn+7wypEe4fXQxCmdmqfGsEPQxmiCSQI3ajFV91bVSsvNtrJRiW6nGng== - dependencies: - locate-path "^6.0.0" - path-exists "^4.0.0" - find-up@^2.0.0: version "2.1.0" resolved "https://registry.yarnpkg.com/find-up/-/find-up-2.1.0.tgz#45d1b7e506c717ddd482775a2b77920a3c0c57a7" @@ -9008,6 +8917,14 @@ find-up@^4.0.0, find-up@^4.1.0: locate-path "^5.0.0" path-exists "^4.0.0" +find-up@^5.0.0: + version "5.0.0" + resolved "https://registry.yarnpkg.com/find-up/-/find-up-5.0.0.tgz#4c92819ecb7083561e4f4a240a86be5198f536fc" + integrity sha512-78/PXT1wlLLDgTzDs7sjq9hzz0vXD+zn+7wypEe4fXQxCmdmqfGsEPQxmiCSQI3ajFV91bVSsvNtrJRiW6nGng== + dependencies: + locate-path "^6.0.0" + path-exists "^4.0.0" + find-up@^6.3.0: version "6.3.0" resolved "https://registry.yarnpkg.com/find-up/-/find-up-6.3.0.tgz#2abab3d3280b2dc7ac10199ef324c4e002c8c790" @@ -9031,11 +8948,6 @@ flat-cache@^3.0.4: flatted "^3.1.0" rimraf "^3.0.2" -flat@^5.0.2: - version "5.0.2" - resolved "https://registry.yarnpkg.com/flat/-/flat-5.0.2.tgz#8ca6fe332069ffa9d324c327198c598259ceb241" - integrity sha512-b6suED+5/3rTpUBdG1gupIl8MPFCAMA0QXwmljLhvCUKcUvdE4gWky9zpuGCcXHOsz4J9wPGNWq6OKpmIzz3hQ== - flatted@^3.1.0: version "3.2.7" resolved "https://registry.yarnpkg.com/flatted/-/flatted-3.2.7.tgz#609f39207cb614b89d0765b477cb2d437fbf9787" @@ -9054,7 +8966,7 @@ flush-write-stream@^1.0.2: inherits "^2.0.3" readable-stream "^2.3.6" -follow-redirects@^1.0.0, follow-redirects@^1.14.0, follow-redirects@^1.14.7, follow-redirects@^1.14.9: +follow-redirects@^1.0.0, follow-redirects@^1.14.0, follow-redirects@^1.14.7: version "1.15.6" resolved "https://registry.yarnpkg.com/follow-redirects/-/follow-redirects-1.15.6.tgz#7f815c0cda4249c74ff09e95ef97c23b5fd0399b" integrity sha512-wWN62YITEaOpSK584EZXJafH1AGpO8RVgElfkuXbTOrPX4fIfOyEpW/CsiNd8JdYrAoOvafRTOEnvsO++qCqFA== @@ -9104,15 +9016,6 @@ form-data@^3.0.0: combined-stream "^1.0.8" mime-types "^2.1.12" -form-data@^4.0.0: - version "4.0.0" - resolved "https://registry.yarnpkg.com/form-data/-/form-data-4.0.0.tgz#93919daeaf361ee529584b9b31664dc12c9fa452" - integrity sha512-ETEklSGi5t0QMZuiXoA/Q6vcnxcLQP5vdugSpuAyi6SVGi2clPPp+xgEhuMaHC+zGgn31Kd235W35f7Hykkaww== - dependencies: - asynckit "^0.4.0" - combined-stream "^1.0.8" - mime-types "^2.1.12" - form-data@~2.3.2: version "2.3.3" resolved "https://registry.yarnpkg.com/form-data/-/form-data-2.3.3.tgz#dcce52c05f644f298c6a7ab936bd724ceffbf3a6" @@ -9453,19 +9356,7 @@ glob-to-regexp@^0.4.1: resolved "https://registry.yarnpkg.com/glob-to-regexp/-/glob-to-regexp-0.4.1.tgz#c75297087c851b9a578bd217dd59a92f59fe546e" integrity sha512-lkX1HJXwyMcprw/5YUZc2s7DrpAiHB21/V+E1rHUrVNokkvB6bqMzT0VfV6/86ZNabt1k14YOIaT7nDvOX3Iiw== -glob@7.2.0: - version "7.2.0" - resolved "https://registry.yarnpkg.com/glob/-/glob-7.2.0.tgz#d15535af7732e02e948f4c41628bd910293f6023" - integrity sha512-lmLf6gtyrPq8tTjSmrO94wBeQbFR3HbLHbuyD69wuyQkImp2hWqMGB47OX65FBkPffO641IP9jWa1z4ivqG26Q== - 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" - -glob@^7.1.0, glob@^7.1.1, glob@^7.1.2, glob@^7.1.3, glob@^7.1.4, glob@^7.1.6, glob@^7.2.3: +glob@^7.1.0, glob@^7.1.1, glob@^7.1.2, glob@^7.1.3, glob@^7.1.4, glob@^7.1.6: version "7.2.3" resolved "https://registry.yarnpkg.com/glob/-/glob-7.2.3.tgz#b8df0fb802bbfa8e89bd1d938b4e16578ed44f2b" integrity sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q== @@ -9794,7 +9685,7 @@ hasown@^2.0.0, hasown@^2.0.1, hasown@^2.0.2: dependencies: function-bind "^1.1.2" -he@1.2.0, he@^1.2.0: +he@^1.2.0: version "1.2.0" resolved "https://registry.yarnpkg.com/he/-/he-1.2.0.tgz#84ae65fa7eafb165fddb61566ae14baf05664f0f" integrity sha512-F/1DnUGPopORZi0ni+CvrCgHQ5FyEAHRLSApuYWMmrbSwoN2Mn/7k+Gl38gJnR7yyDZk6WLXwiGod1JOWNDKGw== @@ -10284,7 +10175,7 @@ inherits@2.0.3: resolved "https://registry.yarnpkg.com/inherits/-/inherits-2.0.3.tgz#633c2c83e3da42a502f52466022480f4208261de" integrity sha512-x00IRNXNy63jwGkJmzPigoySHbaqpNuzKbBOmzK+g2OdZpQ9w+sxCN+VSB3ja7IAge2OP2qpfxTjeNcyjmW1uw== -ini@2.0.0, ini@^2.0.0: +ini@2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/ini/-/ini-2.0.0.tgz#e5fd556ecdd5726be978fa1001862eacb0a94bc5" integrity sha512-7PnF4oN3CvZF23ADhA5wRaYEQpJ8qygSkbtTXWBeXWXmEVRXK+1ITciHWwHhsjv1TmW0MgacIv6hEi5pX5NQdA== @@ -10705,11 +10596,6 @@ is-plain-obj@^1.1.0: resolved "https://registry.yarnpkg.com/is-plain-obj/-/is-plain-obj-1.1.0.tgz#71a50c8429dfca773c92a390a4a03b39fcd51d3e" integrity sha512-yvkRyxmFKEOQ4pNXCmJG5AEQNlXJS5LaONXo5/cLdTZdWvsZ1ioJEonLGAosKlMWE8lwUy/bJzMjcw8az73+Fg== -is-plain-obj@^2.1.0: - version "2.1.0" - resolved "https://registry.yarnpkg.com/is-plain-obj/-/is-plain-obj-2.1.0.tgz#45e42e37fccf1f40da8e5f76ee21515840c09287" - integrity sha512-YWnfyRwxL/+SsrWYfOpUtz5b3YD+nyfkHvjbcanzk8zgyO4ASD67uVMRt8k5bM4lLMDnXfriRhOpemw+NfT1eA== - is-plain-obj@^3.0.0: version "3.0.0" resolved "https://registry.yarnpkg.com/is-plain-obj/-/is-plain-obj-3.0.0.tgz#af6f2ea14ac5a646183a5bbdb5baabbc156ad9d7" @@ -10752,11 +10638,6 @@ is-relative@^1.0.0: dependencies: is-unc-path "^1.0.0" -is-retry-allowed@^2.2.0: - version "2.2.0" - resolved "https://registry.yarnpkg.com/is-retry-allowed/-/is-retry-allowed-2.2.0.tgz#88f34cbd236e043e71b6932d09b0c65fb7b4d71d" - integrity sha512-XVm7LOeLpTW4jV19QSH38vkswxoLud8sQ57YwJVTPWdiaI9I8keEhGFpBlslyVsgdQy4Opg8QOLb8YRgsyZiQg== - is-root@^2.1.0: version "2.1.0" resolved "https://registry.yarnpkg.com/is-root/-/is-root-2.1.0.tgz#809e18129cf1129644302a4f8544035d51984a9c" @@ -11663,18 +11544,6 @@ joi@^17.4.0: "@sideway/formula" "^3.0.0" "@sideway/pinpoint" "^2.0.0" -js-message@1.0.5: - version "1.0.5" - resolved "https://registry.yarnpkg.com/js-message/-/js-message-1.0.5.tgz#2300d24b1af08e89dd095bc1a4c9c9cfcb892d15" - integrity sha512-hTqHqrm7jrZ+iN93QsKcNOTSgX3F+2NSgdnF+xvf8FfhC2MPqYRzzgXQ1LlhfyIzPTS6hL6Zea0/gIb6hktkHw== - -js-queue@2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/js-queue/-/js-queue-2.0.0.tgz#362213cf860f468f0125fc6c96abc1742531f948" - integrity sha512-SW0rTTG+TBPVD1Kp6HtnOr9kX3//EWA6qMlP2Y/WxbKsSNCBuJbWv3EDB5noKJBEkHYi2mDY+xqMn4Y0QHyjyg== - dependencies: - easy-stack "^1.0.0" - js-sha3@0.8.0: version "0.8.0" resolved "https://registry.yarnpkg.com/js-sha3/-/js-sha3-0.8.0.tgz#b9b7a5da73afad7dedd0f8c463954cbde6818840" @@ -11685,13 +11554,6 @@ js-sha3@0.8.0: resolved "https://registry.yarnpkg.com/js-tokens/-/js-tokens-4.0.0.tgz#19203fb59991df98e3a287050d4647cdeaf32499" integrity sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ== -js-yaml@4.1.0, js-yaml@^4.1.0: - version "4.1.0" - resolved "https://registry.yarnpkg.com/js-yaml/-/js-yaml-4.1.0.tgz#c1fb65f8f5017901cdd2c951864ba18458a10602" - integrity sha512-wpxZs9NoxZaJESJGIZTyDEaYpl0FKSA+FB9aJiyemKhMwkxQg63h4T1KJgUGHpTqPDNRcmmYLugrRjJlBtWvRA== - dependencies: - argparse "^2.0.1" - js-yaml@^3.13.1: version "3.14.1" resolved "https://registry.yarnpkg.com/js-yaml/-/js-yaml-3.14.1.tgz#dae812fdb3825fa306609a8717383c50c36a0537" @@ -11700,6 +11562,13 @@ js-yaml@^3.13.1: argparse "^1.0.7" esprima "^4.0.0" +js-yaml@^4.1.0: + version "4.1.0" + resolved "https://registry.yarnpkg.com/js-yaml/-/js-yaml-4.1.0.tgz#c1fb65f8f5017901cdd2c951864ba18458a10602" + integrity sha512-wpxZs9NoxZaJESJGIZTyDEaYpl0FKSA+FB9aJiyemKhMwkxQg63h4T1KJgUGHpTqPDNRcmmYLugrRjJlBtWvRA== + dependencies: + argparse "^2.0.1" + jsbi@^4.1.0: version "4.3.0" resolved "https://registry.yarnpkg.com/jsbi/-/jsbi-4.3.0.tgz#b54ee074fb6fcbc00619559305c8f7e912b04741" @@ -12486,7 +12355,7 @@ lodash@^4.0.0, lodash@^4.17.11, lodash@^4.17.14, lodash@^4.17.15, lodash@^4.17.1 resolved "https://registry.yarnpkg.com/lodash/-/lodash-4.17.21.tgz#679591c564c3bffaae8454cf0b3df370c3d6911c" integrity sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg== -log-symbols@4.1.0, log-symbols@^4.0.0: +log-symbols@^4.0.0: version "4.1.0" resolved "https://registry.yarnpkg.com/log-symbols/-/log-symbols-4.1.0.tgz#3fbdbb95b4683ac9fc785111e792e558d4abd503" integrity sha512-8XPvpAA8uyhfteu8pIvQxpJZ7SYYdpUivZpGy6sFsBuKRY/7rQGavedeB8aK+Zkyq6upMFVL/9AW6vOYzfRyLg== @@ -12888,13 +12757,6 @@ minimatch@3.0.4: dependencies: brace-expansion "^1.1.7" -minimatch@5.0.1: - version "5.0.1" - resolved "https://registry.yarnpkg.com/minimatch/-/minimatch-5.0.1.tgz#fb9022f7528125187c92bd9e9b6366be1cf3415b" - integrity sha512-nLDxIFRyhDblz3qMuq+SoRZED4+miJ/G+tdDrjkkkRnjAsBexeGpgjLEQ0blJy7rHhR2b93rhQY4SvyWu9v03g== - dependencies: - brace-expansion "^2.0.1" - minimatch@^3.0.2, minimatch@^3.0.4, minimatch@^3.1.1, minimatch@^3.1.2: version "3.1.2" resolved "https://registry.yarnpkg.com/minimatch/-/minimatch-3.1.2.tgz#19cd194bfd3e428f049a70817c038d89ab4be35b" @@ -13053,33 +12915,6 @@ mkdirp@^1.0.3, mkdirp@^1.0.4: resolved "https://registry.yarnpkg.com/mkdirp/-/mkdirp-1.0.4.tgz#3eb5ed62622756d79a5f0e2a221dfebad75c2f7e" integrity sha512-vVqVZQyf3WLx2Shd0qJ9xuvqgAyKPLAiqITEtqW0oIUjzo3PePDd6fW9iFz30ef7Ysp/oiWqbhszeGWW2T6Gzw== -mocha@^10.2.0: - version "10.2.0" - resolved "https://registry.yarnpkg.com/mocha/-/mocha-10.2.0.tgz#1fd4a7c32ba5ac372e03a17eef435bd00e5c68b8" - integrity sha512-IDY7fl/BecMwFHzoqF2sg/SHHANeBoMMXFlS9r0OXKDssYE1M5O43wUY/9BVPeIvfH2zmEbBfseqN9gBQZzXkg== - dependencies: - ansi-colors "4.1.1" - browser-stdout "1.3.1" - chokidar "3.5.3" - debug "4.3.4" - diff "5.0.0" - escape-string-regexp "4.0.0" - find-up "5.0.0" - glob "7.2.0" - he "1.2.0" - js-yaml "4.1.0" - log-symbols "4.1.0" - minimatch "5.0.1" - ms "2.1.3" - nanoid "3.3.3" - serialize-javascript "6.0.0" - strip-json-comments "3.1.1" - supports-color "8.1.1" - workerpool "6.2.1" - yargs "16.2.0" - yargs-parser "20.2.4" - yargs-unparser "2.0.0" - modify-values@^1.0.0: version "1.0.1" resolved "https://registry.yarnpkg.com/modify-values/-/modify-values-1.0.1.tgz#b3939fa605546474e3e3e3c63d64bd43b4ee6022" @@ -13156,11 +12991,6 @@ nano-time@1.0.0: dependencies: big-integer "^1.6.16" -nanoid@3.3.3: - version "3.3.3" - resolved "https://registry.yarnpkg.com/nanoid/-/nanoid-3.3.3.tgz#fd8e8b7aa761fe807dba2d1b98fb7241bb724a25" - integrity sha512-p1sjXuopFs0xg+fPASzQ28agW1oHD7xDsd9Xkf3T15H3c/cifrFHVwrh74PdoklAPi+i7MdRsE47vm2r6JoB+w== - nanoid@^3.3.4: version "3.3.4" resolved "https://registry.yarnpkg.com/nanoid/-/nanoid-3.3.4.tgz#730b67e3cd09e2deacf03c027c81c9d9dbc5e8ab" @@ -13289,15 +13119,6 @@ node-int64@^0.4.0: resolved "https://registry.yarnpkg.com/node-int64/-/node-int64-0.4.0.tgz#87a9065cdb355d3182d8f94ce11188b825c68a3b" integrity sha1-h6kGXNs1XTGC2PlM4RGIuCXGijs= -node-ipc@9.1.1: - version "9.1.1" - resolved "https://registry.yarnpkg.com/node-ipc/-/node-ipc-9.1.1.tgz#4e245ed6938e65100e595ebc5dc34b16e8dd5d69" - integrity sha512-FAyICv0sIRJxVp3GW5fzgaf9jwwRQxAKDJlmNFUL5hOy+W4X/I5AypyHoq0DXXbo9o/gt79gj++4cMr4jVWE/w== - dependencies: - event-pubsub "4.3.0" - js-message "1.0.5" - js-queue "2.0.0" - node-releases@^2.0.14: version "2.0.14" resolved "https://registry.yarnpkg.com/node-releases/-/node-releases-2.0.14.tgz#2ffb053bceb8b2be8495ece1ab6ce600c4461b0b" @@ -16361,13 +16182,6 @@ send@0.19.0: range-parser "~1.2.1" statuses "2.0.1" -serialize-javascript@6.0.0: - version "6.0.0" - resolved "https://registry.yarnpkg.com/serialize-javascript/-/serialize-javascript-6.0.0.tgz#efae5d88f45d7924141da8b5c3a7a7e663fefeb8" - integrity sha512-Qr3TosvguFt8ePWqsvRfrKyQXIiW+nGbYpy8XK24NQHE83caxWt+mIymTT19DGFbNWNLfEwsrkSmN64lVWB9ag== - dependencies: - randombytes "^2.1.0" - serialize-javascript@^4.0.0: version "4.0.0" resolved "https://registry.yarnpkg.com/serialize-javascript/-/serialize-javascript-4.0.0.tgz#b525e1238489a5ecfc42afacc3fe99e666f4b1aa" @@ -17175,7 +16989,7 @@ strip-indent@^3.0.0: dependencies: min-indent "^1.0.0" -strip-json-comments@3.1.1, strip-json-comments@^3.1.0, strip-json-comments@^3.1.1: +strip-json-comments@^3.1.0, strip-json-comments@^3.1.1: version "3.1.1" resolved "https://registry.yarnpkg.com/strip-json-comments/-/strip-json-comments-3.1.1.tgz#31f1281b3832630434831c310c01cccda8cbe006" integrity sha512-6fPc+R4ihwqP6N/aIv2f1gMH8lOVtWQHoqC4yK6oSDVVocumAsfCqjkXnqiYMhmMwS/mEHLp7Vehlt3ql6lEig== @@ -17229,13 +17043,6 @@ subarg@^1.0.0: dependencies: minimist "^1.1.0" -supports-color@8.1.1, supports-color@^8.0.0, supports-color@^8.1.1: - version "8.1.1" - resolved "https://registry.yarnpkg.com/supports-color/-/supports-color-8.1.1.tgz#cd6fc17e28500cff56c1b86c0a7fd4a54a73005c" - integrity sha512-MpUEN2OodtUzxvKQl72cUF7RQ5EiHsGvSsVG0ia9c5RbWGL2CI4C7EpPS8UTBIplnlzZiNuV56w+FuNxy3ty2Q== - dependencies: - has-flag "^4.0.0" - supports-color@^5.3.0: version "5.5.0" resolved "https://registry.yarnpkg.com/supports-color/-/supports-color-5.5.0.tgz#e2e69a44ac8772f78a1ec0b35b689df6530efc8f" @@ -17257,6 +17064,13 @@ supports-color@^7.0.0, supports-color@^7.1.0: dependencies: has-flag "^4.0.0" +supports-color@^8.0.0, supports-color@^8.1.1: + version "8.1.1" + resolved "https://registry.yarnpkg.com/supports-color/-/supports-color-8.1.1.tgz#cd6fc17e28500cff56c1b86c0a7fd4a54a73005c" + integrity sha512-MpUEN2OodtUzxvKQl72cUF7RQ5EiHsGvSsVG0ia9c5RbWGL2CI4C7EpPS8UTBIplnlzZiNuV56w+FuNxy3ty2Q== + dependencies: + has-flag "^4.0.0" + supports-hyperlinks@^2.0.0, supports-hyperlinks@^2.3.0: version "2.3.0" resolved "https://registry.yarnpkg.com/supports-hyperlinks/-/supports-hyperlinks-2.3.0.tgz#3943544347c1ff90b15effb03fc14ae45ec10624" @@ -17983,11 +17797,6 @@ union-value@^1.0.0: is-extendable "^0.1.1" set-value "^2.0.1" -uniqid@^5.4.0: - version "5.4.0" - resolved "https://registry.yarnpkg.com/uniqid/-/uniqid-5.4.0.tgz#4e17bfcab66dfe33563411ae0c801f46ef964e66" - integrity sha512-38JRbJ4Fj94VmnC7G/J/5n5SC7Ab46OM5iNtSstB/ko3l1b5g7ALt4qzHFgGciFkyiRNtDXtLNb+VsxtMSE77A== - unique-filename@^2.0.0: version "2.0.1" resolved "https://registry.yarnpkg.com/unique-filename/-/unique-filename-2.0.1.tgz#e785f8675a9a7589e0ac77e0b5c34d2eaeac6da2" @@ -18232,11 +18041,6 @@ uuid@^8.3.2: resolved "https://registry.yarnpkg.com/uuid/-/uuid-8.3.2.tgz#80d5b5ced271bb9af6c445f21a1a04c606cefbe2" integrity sha512-+NYs2QeMWy+GWFOEm9xnn6HCDp0l7QBD7ml8zLUmJ+93Q5NF0NocErnwkTkXVFNiX3/fpC6afS8Dhb/gz7R7eg== -uuid@^9.0.0: - version "9.0.1" - resolved "https://registry.yarnpkg.com/uuid/-/uuid-9.0.1.tgz#e188d4c8853cc722220392c424cd637f32293f30" - integrity sha512-b+1eJOlsR9K8HJpow9Ok3fiWOWSIcIzXodvv0rQjVoOVNpWMpxf1wZNpt4y9h10odCNrqnYp1OBzRktckBe3sA== - v8-compile-cache@^2.0.3: version "2.3.0" resolved "https://registry.yarnpkg.com/v8-compile-cache/-/v8-compile-cache-2.3.0.tgz#2de19618c66dc247dcfb6f99338035d8245a2cee" @@ -18851,11 +18655,6 @@ workbox-window@6.5.4: "@types/trusted-types" "^2.0.2" workbox-core "6.5.4" -workerpool@6.2.1: - version "6.2.1" - resolved "https://registry.yarnpkg.com/workerpool/-/workerpool-6.2.1.tgz#46fc150c17d826b86a008e5a4508656777e9c343" - integrity sha512-ILEIE97kDZvF9Wb9f6h5aXK4swSlKGUcOEGiIYb2OOu/IrDU9iwj0fD//SsA6E5ibwJxpEvhullJY4Sl4GcpAw== - wrap-ansi@^5.1.0: version "5.1.0" resolved "https://registry.yarnpkg.com/wrap-ansi/-/wrap-ansi-5.1.0.tgz#1fd1f67235d5b6d0fee781056001bfb694c03b09" @@ -18991,11 +18790,6 @@ yaml@^1.10.0, yaml@^1.10.2, yaml@^1.7.2: resolved "https://registry.yarnpkg.com/yaml/-/yaml-1.10.2.tgz#2301c5ffbf12b467de8da2333a459e29e7920e4b" integrity sha512-r3vXyErRCYJ7wg28yvBY5VSoAF8ZvlcW9/BwUzEtUsjvX/DKs24dIkuwjtuprwJJHsbyUbLApepYTR1BN4uHrg== -yargs-parser@20.2.4: - version "20.2.4" - resolved "https://registry.yarnpkg.com/yargs-parser/-/yargs-parser-20.2.4.tgz#b42890f14566796f85ae8e3a25290d205f154a54" - integrity sha512-WOkpgNhPTlE73h4VFAFsOnomJVaovO8VqLDzy5saChRBFQFBoMYirowyW+Q9HB4HFF4Z7VZTiG3iSzJJA29yRA== - yargs-parser@^13.1.2: version "13.1.2" resolved "https://registry.yarnpkg.com/yargs-parser/-/yargs-parser-13.1.2.tgz#130f09702ebaeef2650d54ce6e3e5706f7a4fb38" @@ -19014,29 +18808,6 @@ yargs-parser@^21.1.1: resolved "https://registry.yarnpkg.com/yargs-parser/-/yargs-parser-21.1.1.tgz#9096bceebf990d21bb31fa9516e0ede294a77d35" integrity sha512-tVpsJW7DdjecAiFpbIB1e3qxIQsE6NoPc5/eTdrbbIC4h0LVsWhnoa3g+m2HclBIujHzsxZ4VJVA+GUuc2/LBw== -yargs-unparser@2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/yargs-unparser/-/yargs-unparser-2.0.0.tgz#f131f9226911ae5d9ad38c432fe809366c2325eb" - integrity sha512-7pRTIA9Qc1caZ0bZ6RYRGbHJthJWuakf+WmHK0rVeLkNrrGhfoabBNdue6kdINI6r4if7ocq9aD/n7xwKOdzOA== - dependencies: - camelcase "^6.0.0" - decamelize "^4.0.0" - flat "^5.0.2" - is-plain-obj "^2.1.0" - -yargs@16.2.0, yargs@^16.2.0: - version "16.2.0" - resolved "https://registry.yarnpkg.com/yargs/-/yargs-16.2.0.tgz#1c82bf0f6b6a66eafce7ef30e376f49a12477f66" - integrity sha512-D1mvvtDG0L5ft/jGWkLpG1+m0eQxOfaBvTNELraWj22wSVUMWxZUvYgJYcKh6jGGIkJFhH4IZPQhR4TKpc8mBw== - dependencies: - cliui "^7.0.2" - escalade "^3.1.1" - get-caller-file "^2.0.5" - require-directory "^2.1.1" - string-width "^4.2.0" - y18n "^5.0.5" - yargs-parser "^20.2.2" - yargs@^13.1.0: version "13.3.2" resolved "https://registry.yarnpkg.com/yargs/-/yargs-13.3.2.tgz#ad7ffefec1aa59565ac915f82dccb38a9c31a2dd" @@ -19053,6 +18824,19 @@ yargs@^13.1.0: y18n "^4.0.0" yargs-parser "^13.1.2" +yargs@^16.2.0: + version "16.2.0" + resolved "https://registry.yarnpkg.com/yargs/-/yargs-16.2.0.tgz#1c82bf0f6b6a66eafce7ef30e376f49a12477f66" + integrity sha512-D1mvvtDG0L5ft/jGWkLpG1+m0eQxOfaBvTNELraWj22wSVUMWxZUvYgJYcKh6jGGIkJFhH4IZPQhR4TKpc8mBw== + dependencies: + cliui "^7.0.2" + escalade "^3.1.1" + get-caller-file "^2.0.5" + require-directory "^2.1.1" + string-width "^4.2.0" + y18n "^5.0.5" + yargs-parser "^20.2.2" + yargs@^17.5.1: version "17.7.2" resolved "https://registry.yarnpkg.com/yargs/-/yargs-17.7.2.tgz#991df39aca675a192b816e1e0363f9d75d2aa269" From 0705c70d3f60d548c0136164633b92aa0335267b Mon Sep 17 00:00:00 2001 From: "@dhis2-bot" Date: Wed, 4 Dec 2024 02:45:57 +0100 Subject: [PATCH 61/62] fix(translations): sync translations from transifex (master) Automatically merged. --- i18n/cs.po | 13 ++- i18n/pt.po | 301 +++++++++++++++++++++++++++++------------------------ 2 files changed, 174 insertions(+), 140 deletions(-) diff --git a/i18n/cs.po b/i18n/cs.po index 80c771190..9c151479e 100644 --- a/i18n/cs.po +++ b/i18n/cs.po @@ -1,13 +1,13 @@ # # Translators: -# Jiří Podhorecký, 2024 +# Jiří Podhorecký , 2024 # msgid "" msgstr "" "Project-Id-Version: i18next-conv\n" -"POT-Creation-Date: 2024-02-13T14:56:50.029Z\n" +"POT-Creation-Date: 2024-06-04T11:01:31.012Z\n" "PO-Revision-Date: 2022-08-23 11:50+0000\n" -"Last-Translator: Jiří Podhorecký, 2024\n" +"Last-Translator: Jiří Podhorecký , 2024\n" "Language-Team: Czech (https://app.transifex.com/hisp-uio/teams/100509/cs/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" @@ -396,6 +396,9 @@ msgstr "Zobrazit interpretace a podrobnosti" msgid "View" msgstr "Zobrazit" +msgid "Reset sidebar width" +msgstr "" + msgid "Update" msgstr "Aktualizovat" @@ -697,10 +700,10 @@ msgstr "Něco se pokazilo" msgid "" "There's a problem with the generated analytics. Contact a system " "administrator." -msgstr "" +msgstr "S vygenerovanou analýzou je problém. Obraťte se na správce systému." msgid "There's a syntax problem with the analytics request." -msgstr "" +msgstr "V požadavku na analýzu je problém se syntaxí." msgid "Registration date" msgstr "Datum registrace" diff --git a/i18n/pt.po b/i18n/pt.po index c32d16986..6b3e155c6 100644 --- a/i18n/pt.po +++ b/i18n/pt.po @@ -1,12 +1,13 @@ # # Translators: # Gabriela Rodriguez , 2022 +# Ge Joao , 2022 # Fernando Jorge Bade, 2023 # David Júnior , 2023 # Sheila André , 2023 -# Ge Joao , 2023 # Philip Larsen Donnelly, 2024 # Viktor Varland , 2024 +# Helton Dias, 2024 # Shelsea Chumaio, 2024 # msgid "" @@ -26,88 +27,95 @@ msgid "Add to {{axisName}}" msgstr "Adicionar à {{axisName}}" msgid "Choose a condition type" -msgstr "" +msgstr "Seleccionar um tipo de condição" msgid "Case sensitive" -msgstr "" +msgstr "Sensível às maiúsculas e minúsculas" msgid "Remove" msgstr "Remover" msgid "and" -msgstr "" +msgstr "e" msgid "Show items that meet the following conditions for this data item:" msgstr "" +"Mostrar os itens que cumprem as seguintes condições para este item de dados:" msgid "This dimension can't be filtered. All values will be shown." msgstr "" +"Esta dimensão não pode ser filtrada. Todos os valores serão mostrados." msgid "" "No conditions yet, so all values will be included. Add a condition to filter" " results." msgstr "" +"Ainda não há condições, pelo que todos os valores estarão incluídos. " +"Adicione uma condição para filtrar os resultados." msgid "Preset options can't be combined with other conditions" -msgstr "" +msgstr "As opções predefinidas não podem ser combinadas com outras condições" msgid "Add another condition" -msgstr "" +msgstr "Adicionar outra condição" msgid "Add a condition" -msgstr "" +msgstr "Adicionar uma condição" msgid "Repeated events" -msgstr "" +msgstr "Eventos repetidos" msgid "Conditions" -msgstr "" +msgstr "Condições" msgid "Only available for repeatable stages" -msgstr "" +msgstr "Apenas disponível para estágios repetíveis" msgid "is one of preset options" -msgstr "" +msgstr "é uma das opções predefinidas" msgid "Loading..." msgstr "Carregando..." msgid "Choose a set of options" -msgstr "" +msgstr "Seleccionar um conjunto de opções" msgid "No preset option sets for this data item" -msgstr "" +msgstr "Nenhum conjunto de opções predefinidas para este item de dados" msgid "Choose options" -msgstr "" +msgstr "Escolha opções" msgid "" "From stages with repeatable events, show values for this data element from:" msgstr "" +"Em estágios com eventos repetíveis, mostre valores para este elemento de " +"dados de:" msgid "Most recent events:" -msgstr "" +msgstr "Eventos mais recentes:" msgid "Oldest events:" -msgstr "" +msgstr "Eventos mais antigos:" msgid "Hide" -msgstr "Esconder" +msgstr "Ocultar" msgid "Show items where the status is:" -msgstr "" +msgstr "Mostrar itens em que o estado está:" msgid "Choose from presets" -msgstr "" +msgstr "Escolha entre predefinições" msgid "Define start - end dates" -msgstr "" +msgstr "Definir datas de início e de fim" msgid "Start and end dates are inclusive and will be included in the outputs." msgstr "" +"As datas de início e de fim são inclusivas e serão incluídas nos resultados." msgid "Start date" -msgstr "Data Início" +msgstr "Data de início" msgid "End date" msgstr "Data Final" @@ -122,13 +130,13 @@ msgid "Filter options" msgstr "Opções de filtro" msgid "Selected options" -msgstr "" +msgstr "Opções seleccionadas" msgid "Nothing found for \"{{- searchTerm}}\"" -msgstr " Nada encontrado para ''{{- searchTerm}}''" +msgstr "Nada encontrado para \"{{- searchTerm}}\"" msgid "No options" -msgstr "" +msgstr "Sem opções" msgid "Move to {{axisName}}" msgstr "Mover para {{axisName}}" @@ -137,7 +145,7 @@ msgid "HTML" msgstr "HTML" msgid "HTML+CSS (.html+css)" -msgstr "" +msgstr "HTML+CSS (.html+css)" msgid "Plain data source" msgstr "Fonte de dados simples" @@ -149,13 +157,13 @@ msgid "XML" msgstr "XML" msgid "Microsoft Excel" -msgstr "" +msgstr "Microsoft Excel" msgid "CSV" msgstr "CSV" msgid "Download data from this date" -msgstr "" +msgstr "Descarregar dados à partir desta data" msgid "Metadata ID scheme" msgstr "Esquema de ID de metadados" @@ -173,51 +181,53 @@ msgid "Download" msgstr "Descarregar" msgid "all" -msgstr "" +msgstr "todos" msgid "Levels" -msgstr "Niveis" +msgstr "Níveis" msgid "Groups" msgstr "Grupos" msgid "And {{count}} other..." msgid_plural "And {{count}} other..." -msgstr[0] "" -msgstr[1] "" -msgstr[2] "" +msgstr[0] "E {{count}} outros..." +msgstr[1] "E {{count}} outros..." +msgstr[2] "E {{count}} outros..." msgid "None selected" -msgstr "Nenhum selecionado" +msgstr "Nenhum seleccionado" msgid "Program stage: {{- stageName}}" -msgstr "" +msgstr "Estágio do programa: {{- stageName}}" msgid "Program: {{- programName}}" -msgstr "" +msgstr "Programa: {{- programName}}" msgid "Showing all values for this dimension" -msgstr "" +msgstr "Mostrando todos os valores desta dimensão" msgid "No dimensions found for '{{- searchTerm}}'" -msgstr "" +msgstr "Nenhuma dimensão encontrada para '{{- searchTerm}}'" msgid "No dimensions found in the {{- programName}} program" -msgstr "" +msgstr "Nenhuma dimensão encontrada no {{- programName}} programa" msgid " {{- trackedEntityType}} has no dimensions" -msgstr "" +msgstr " {{- trackedEntityType}} não tem dimensões" msgid "No dimensions found" -msgstr "" +msgstr "Nenhuma dimensão encontrada" msgid "Couldn't load dimensions" -msgstr "" +msgstr "Não foi possível carregar as dimensões" msgid "" "There was a problem loading the dimensions. Try again, or contact your " "system administrator." msgstr "" +"Ocorreu um problema ao carregar as dimensões. Tente novamente ou contacte o " +"administrador do sistema." msgid "Event" msgstr "Evento" @@ -231,30 +241,33 @@ msgstr "Entidade Rastreada" msgid "" "See individual event data from a Tracker program stage or event program." msgstr "" +"Veja os dados de eventos individuais de um estágio do programa Tracker ou " +"programa de eventos." msgid "See data from multiple program stages in a Tracker program." -msgstr "" +msgstr "Ver dados de vários estágios do programa num programa Tracker." msgid "See individual tracked entities from one or more Tracker programs." msgstr "" +"Veja entidades rastreadas individuais de um ou mais programas de rastreio." msgid "Global dimensions" -msgstr "" +msgstr "Dimensões globais" msgid "Program dimensions" -msgstr "" +msgstr "Dimensões do programa" msgid "Input: {{type}}" -msgstr "" +msgstr "Entrada: {{type}}" msgid "Choose an input first" -msgstr "" +msgstr "Escolha primeiro uma entrada" msgid "Program data dimensions" -msgstr "" +msgstr "Dimensões dos dados do programa" msgid "Search data dimensions" -msgstr "" +msgstr "Dimensões dos dados de pesquisa" msgid "Type" msgstr "Tipo" @@ -269,27 +282,29 @@ msgid "Program attribute" msgstr "Atributo do Programa" msgid "Program indicator" -msgstr "Gestão do indicadores de programa" +msgstr "Indicador de programa" msgid "Category" msgstr "Categoria" msgid "Category option group set" -msgstr "Conjunto de grupo de opção de categoria" +msgstr "Conjunto de grupos de opções de categoria" msgid "Choose an input to get started adding program dimensions." -msgstr "" +msgstr "Escolha uma entrada para começar a adicionar dimensões do programa." msgid "Program" msgstr "Programa" msgid "Could not load programs" -msgstr "" +msgstr "Não foi possível carregar programas" msgid "" "The programs couldn't be retrieved. Try again or contact your system " "administrator." msgstr "" +"Não foi possível recuperar os programas. Tente novamente ou contacte o " +"administrador do sistema." msgid "Choose a program" msgstr "Escolha um programa" @@ -298,33 +313,35 @@ msgid "No programs found" msgstr "Nenhum programa encontrado" msgid "Stage" -msgstr "Estagio" +msgstr "Estágio" msgid "All" -msgstr "Tudo" +msgstr "Todos" msgid "No stages found" -msgstr "" +msgstr "Nenhum estágio encontrado" msgid "Could not load types" -msgstr "" +msgstr "Não foi possível carregar os tipos" msgid "" "The types couldn't be retrieved. Try again or contact your system " "administrator." msgstr "" +"Não foi possível recuperar os tipos. Tente novamente ou contacte o " +"administrador do sistema." msgid "Choose a type" -msgstr "" +msgstr "Escolha um tipo" msgid "No types found" -msgstr "" +msgstr "Nenhum tipo encontrado" msgid "{{- itemName}} dimensions" -msgstr "" +msgstr "{{- itemName}} dimensões " msgid "Filter by program usage" -msgstr "" +msgstr "Filtrar por utilização do programa" msgid "Clear" msgstr "Limpar" @@ -336,25 +353,25 @@ msgid "Your dimensions" msgstr "Suas dimensões" msgid "Search your dimensions" -msgstr "" +msgstr "Pesquise as suas dimensões" msgid "Show panels" -msgstr "" +msgstr "Mostrar painéis" msgid "Expand visualization and hide panels" -msgstr "" +msgstr "Expandir a visualização e ocultar painéis" msgid "Unsaved visualization" msgstr "Visualização não salva" msgid "Edited" -msgstr "Editada" +msgstr "Editado" msgid "Line list" -msgstr "lista de linhas " +msgstr "Lista de linhas " msgid "\"{{- deletedObject}}\" successfully deleted." -msgstr "" +msgstr "\"{{- deletedObject}}\" eliminado com êxito." msgid "Rename successful" msgstr "Renomeado com sucesso" @@ -366,20 +383,20 @@ msgid "" "This visualization can't be deleted because it is used on one or more " "dashboards" msgstr "" -"Esta visualização não pode ser eliminada porque é usada em um ou mais " -"painéis de instrumentos" +"Esta visualização não pode ser eliminada porque é utilizada num ou mais " +"painéis" msgid "Show layout" -msgstr "" +msgstr "Mostrar disposição" msgid "Hide layout" -msgstr "" +msgstr "Ocultar disposição" msgid "Show dimensions sidebar" -msgstr "" +msgstr "Mostrar barra lateral de dimensões" msgid "Hide dimensions sidebar" -msgstr "" +msgstr "Ocultar barra lateral de dimensões" msgid "Hide interpretations and details" msgstr "Ocultar interpretações e detalhes" @@ -388,13 +405,13 @@ msgid "Show interpretations and details" msgstr "Mostrar interpretações e detalhes" msgid "View" -msgstr "Vizualizar" +msgstr "Visualizar" msgid "Reset sidebar width" -msgstr "" +msgstr "Repor largura da barra lateral" msgid "Update" -msgstr "Atualizar" +msgstr "Actualizar" msgid "Getting started" msgstr "Começando" @@ -403,15 +420,17 @@ msgid "" "All dimensions that you can use to build visualizations are shown in the " "sections in the left sidebar." msgstr "" +"Todas as dimensões que pode utilizar para criar visualizações são mostradas " +"nas secções da barra lateral esquerda." msgid "Add dimensions to the layout above." -msgstr "" +msgstr "Adicionar dimensões a disposição acima." msgid "Click a dimension to add or remove conditions." -msgstr "" +msgstr "Clique numa dimensão para adicionar ou remover condições." msgid "Your most viewed line lists" -msgstr "" +msgstr "As suas listas de linhas mais visualizadas" msgid "Not available offline" msgstr "Não disponível offline" @@ -420,24 +439,26 @@ msgid "" "This line list may show data that was not available when the interpretation " "was written." msgstr "" +"Esta lista de linhas pode mostrar dados que não estavam disponíveis quando a" +" interpretação foi escrita." msgid "Sort by \"{{column}}\" and update" -msgstr "" +msgstr "Ordenar por \"{{column}}\" e actualizar" msgid "No event" -msgstr "" +msgstr "Nenhum evento" msgid "Rows per page" msgstr "Linhas por página" msgid "Page {{page}}, row {{firstItem}}-{{lastItem}}" -msgstr "" +msgstr "Página {{page}}, linha {{firstItem}}-{{lastItem}}" msgid "Column sub-totals" -msgstr "Coluna de subtotais" +msgstr "Subtotais de coluna" msgid "Columns totals" -msgstr "Coluna de totais " +msgstr "Totais de colunas" msgid "Digit group separator" msgstr "Separador de grupo de dígitos" @@ -473,13 +494,13 @@ msgid "Small" msgstr "Pequeno" msgid "Hide empty rows" -msgstr "Esconder linhas vazias" +msgstr "Ocultar linhas vazias" msgid "Use a legend for table cell colors" -msgstr "" +msgstr "Utilize uma legenda para as cores das células da tabela" msgid "Legend style" -msgstr "Titulo da Legenda " +msgstr "Estilo da legenda " msgid "Legend type" msgstr "Tipo de legenda" @@ -488,7 +509,7 @@ msgid "Use pre-defined legend per data item" msgstr "Use legenda predefinida por item de dados" msgid "Choose a single legend for the entire visualization" -msgstr "" +msgstr "Escolha uma única legenda para toda a visualização" msgid "Legend changes background color" msgstr "A legenda muda a cor do plano de fundo" @@ -500,7 +521,7 @@ msgid "Legend" msgstr "Legenda" msgid "Select from legends" -msgstr "Selecionar das legendas" +msgstr "Seleccionar à partir das legendas" msgid "Loading legends" msgstr "Carregando legendas" @@ -511,7 +532,8 @@ msgid "" "displayed" msgstr "" "Pode definir um valor mínimo ou máximo. Isto aplicar-se-á a toda a " -"visualização, todos os valores fora da gama mínima/máxima não serão exibidos" +"visualização, todos os valores fora do intervalo mínimo/máximo não serão " +"exibidos" msgid "Minimum data value" msgstr "Valor mínimo de dados" @@ -520,7 +542,7 @@ msgid "Maximum data value" msgstr "Valor máximo de dados" msgid "Clear min/max limits" -msgstr "Limites mínimos / máximos claros" +msgstr "Limpar limites mínimos/máximos " msgid "Row sub-totals" msgstr "Subtotais de linha" @@ -541,7 +563,7 @@ msgid "Skip rounding" msgstr "Não arrendondar" msgid "Add a title" -msgstr "Adicionar titulo" +msgstr "Adicionar um título" msgid "Options" msgstr "Opções" @@ -556,31 +578,31 @@ msgid "Filter" msgstr "Filtro" msgid "equal to (=)" -msgstr "" +msgstr "igual à (=)" msgid "greater than (>)" -msgstr "" +msgstr "maior que (>)" msgid "greater than or equal to (≥)" -msgstr "" +msgstr "maior ou igual à (≥)" msgid "less than (<)" -msgstr "" +msgstr "menor que (<)" msgid "less than or equal to (≤)" -msgstr "" +msgstr "inferior ou igual à (≤)" msgid "not equal to (≠)" -msgstr "" +msgstr "não é igual à (≠)" msgid "is empty / null" -msgstr "" +msgstr "está vazio / nulo" msgid "is not empty / not null" -msgstr "" +msgstr "não está vazio/não é nulo" msgid "exactly" -msgstr "" +msgstr "exatamente" msgid "is not" msgstr "não é" @@ -589,31 +611,31 @@ msgid "contains" msgstr "contém" msgid "does not contain" -msgstr "" +msgstr "não contém" msgid "after" -msgstr "Depois " +msgstr "depois de" msgid "after or including" -msgstr "" +msgstr "depois ou incluindo" msgid "before" -msgstr "Antes " +msgstr "antes de" msgid "before or including" -msgstr "" +msgstr "antes ou incluindo" msgid "Yes" -msgstr "sim" +msgstr "Sim" msgid "No" msgstr "Não" msgid "Not answered" -msgstr "" +msgstr "Não respondido" msgid "There is a problem with this visualization." -msgstr "" +msgstr "Há um problema com esta visualização." msgid "There was a problem getting the data from the server." msgstr "Ocorreu um problema ao obter os dados do servidor." @@ -625,8 +647,8 @@ msgid "" "The selected dimensions didn’t return any data. There may be no data, or you" " may not have access to it." msgstr "" -"As dimensões selecionadas não retornaram dados. Pode não haver dados ou você" -" pode não ter acesso a eles." +"As dimensões seleccionadas não retornaram dados. Pode não haver dados ou " +"você pode não ter acesso a eles." msgid "Visualization not found" msgstr "Visualização não encontrada" @@ -636,86 +658,95 @@ msgid "" " incorrect or it could have been deleted." msgstr "" "A visualização que está a tentar visualizar não foi encontrada, o ID pode " -"estar incorreto ou pode ter sido apagado." +"estar incorreto ou pode ter sido eliminado." msgid "No tracked entity type selected" -msgstr "" +msgstr "Nenhum tipo de entidade rastreada seleccionada" msgid "Choose a type from the Input sidebar." -msgstr "" +msgstr "Escolha um tipo na barra lateral de entrada." msgid "No program selected" -msgstr "" +msgstr "Nenhum programa seleccionado" msgid "Choose a program from the Input sidebar." -msgstr "" +msgstr "Escolha um programa na barra lateral de entrada." msgid "Columns is empty" -msgstr "" +msgstr "As colunas estão vazias" msgid "Add at least one item to Columns." -msgstr "" +msgstr "Adicionar pelo menos um item às Colunas." msgid "No organisation unit selected" -msgstr "Nenhuma unidade organizacional selecionada" +msgstr "Nenhuma unidade organizacional seleccionada" msgid "" "Make sure to add the organisation unit dimension with at least one selection" " to the layout." msgstr "" +"Certifique-se de que adiciona a dimensão da unidade organizacional com pelo " +"menos uma selecção a disposição." msgid "There's a problem with at least one selected indicator" -msgstr "" +msgstr "Há um problema com pelo menos um indicador seleccionado" msgid "Restricted access" -msgstr "" +msgstr "Acesso restrito" msgid "" "You don’t have access to the data in this visualization. Contact a system " "administrator." msgstr "" +"Não tem acesso aos dados nesta visualização. Contacte um administrador do " +"sistema." msgid "You don’t have access to one or more of the chosen organisation units." msgstr "" +"Não tem acesso aos dados nesta visualização. Contacte um administrador do " +"sistema." msgid "" "You don’t have access to event analytics. Contact a system administrator." msgstr "" +"Não tem acesso à análise de eventos. Contacte um administrador do sistema." msgid "Something went wrong" -msgstr "Ocorreu algo de errado" +msgstr "Algo correu mal" msgid "" "There's a problem with the generated analytics. Contact a system " "administrator." msgstr "" +"Há um problema com as análises geradas. Contacte um administrador do " +"sistema." msgid "There's a syntax problem with the analytics request." -msgstr "" +msgstr "Há um problema de síntaxe com o pedido de análise." msgid "Registration date" msgstr "Data de registo" msgid "Last updated on" -msgstr "" +msgstr "Última atualização em" msgid "Created by" msgstr "Criado por" msgid "Last updated by" -msgstr "Ultima actualização" +msgstr "Última actualização por" msgid "User organisation unit" msgstr "Unidade organizacional do utilizador" msgid "User sub-units" -msgstr "Dois níveis abaixo" +msgstr "Subunidades do utilizador" msgid "User sub-x2-units" -msgstr "Dois níveis abaixo" +msgstr "Sub-x2-unidades do utilizador " msgid "Registration org. unit" -msgstr "" +msgstr "Unidade organizacional de registo" msgid "Organisation unit" msgstr "Unidade organizacional" @@ -754,19 +785,19 @@ msgid "Program status" msgstr "Estado do programa" msgid "most recent" -msgstr "" +msgstr "mais recente" msgid "oldest" -msgstr "" +msgstr "mais antigo" msgid "oldest {{repeatEventIndex}}" -msgstr "" +msgstr "mais antigo {{repeatEventIndex}}" msgid "most recent {{repeatEventIndex}}" -msgstr "" +msgstr "mais recente {{repeatEventIndex}}" msgid "Event date" -msgstr "Data de incidente" +msgstr "Data do evento" msgid "Enrollment date" msgstr "Data de inscrição" @@ -778,7 +809,7 @@ msgid "Scheduled date" msgstr "Data agendada" msgid "Active" -msgstr "Ativo" +msgstr "Activo" msgid "Cancelled" msgstr "Cancelado" @@ -790,7 +821,7 @@ msgid "Scheduled" msgstr "Agendado" msgid "List data from tracked entities and events." -msgstr "" +msgstr "Listar dados de entidades e eventos rastreados." msgid "Explore data with manipulatable columns, rows, and aggregations." -msgstr "" +msgstr "Explorar dados com colunas, linhas e agregações manipuláveis." From 2cafda624a937f1b7db746580a35d540b3dcf5f1 Mon Sep 17 00:00:00 2001 From: "@dhis2-bot" Date: Wed, 4 Dec 2024 01:48:24 +0000 Subject: [PATCH 62/62] chore(release): cut 101.1.10 [skip release] ## [101.1.10](https://github.com/dhis2/line-listing-app/compare/v101.1.9...v101.1.10) (2024-12-04) ### Bug Fixes * **translations:** sync translations from transifex (master) ([0705c70](https://github.com/dhis2/line-listing-app/commit/0705c70d3f60d548c0136164633b92aa0335267b)) --- CHANGELOG.md | 7 +++++++ package.json | 2 +- 2 files changed, 8 insertions(+), 1 deletion(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 63108d299..aed5e122e 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,3 +1,10 @@ +## [101.1.10](https://github.com/dhis2/line-listing-app/compare/v101.1.9...v101.1.10) (2024-12-04) + + +### Bug Fixes + +* **translations:** sync translations from transifex (master) ([0705c70](https://github.com/dhis2/line-listing-app/commit/0705c70d3f60d548c0136164633b92aa0335267b)) + ## [101.1.9](https://github.com/dhis2/line-listing-app/compare/v101.1.8...v101.1.9) (2024-10-27) diff --git a/package.json b/package.json index 5e0c23d9c..e9dc49b27 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "line-listing-app", - "version": "101.1.9", + "version": "101.1.10", "description": "DHIS2 Line Listing", "license": "BSD-3-Clause", "private": true,