From 4f7a618f82b4f0ce4541d30d3e38bd067302596b Mon Sep 17 00:00:00 2001 From: Sebastian Date: Wed, 22 Nov 2023 17:13:39 +0100 Subject: [PATCH 1/9] deps: upgrade @sentry/browser from 7.76.0 to 7.77.0 (#2094) Co-authored-by: snyk-bot --- package-lock.json | 68 +++++++++++++++++++++++------------------------ package.json | 2 +- 2 files changed, 35 insertions(+), 35 deletions(-) diff --git a/package-lock.json b/package-lock.json index 9fe2449906..8479cea3d3 100644 --- a/package-lock.json +++ b/package-lock.json @@ -31,7 +31,7 @@ "@fortawesome/free-regular-svg-icons": "^6.4.2", "@fortawesome/free-solid-svg-icons": "^6.4.2", "@ngneat/until-destroy": "^10.0.0", - "@sentry/browser": "^7.76.0", + "@sentry/browser": "^7.77.0", "angulartics2": "^12.2.1", "assert": "^2.0.0", "crypto-es": "^2.1.0", @@ -6945,73 +6945,73 @@ } }, "node_modules/@sentry-internal/tracing": { - "version": "7.76.0", - "resolved": "https://registry.npmjs.org/@sentry-internal/tracing/-/tracing-7.76.0.tgz", - "integrity": "sha512-QQVIv+LS2sbGf/e5P2dRisHzXpy02dAcLqENLPG4sZ9otRaFNjdFYEqnlJ4qko+ORpJGQEQp/BX7Q/qzZQHlAg==", + "version": "7.77.0", + "resolved": "https://registry.npmjs.org/@sentry-internal/tracing/-/tracing-7.77.0.tgz", + "integrity": "sha512-8HRF1rdqWwtINqGEdx8Iqs9UOP/n8E0vXUu3Nmbqj4p5sQPA7vvCfq+4Y4rTqZFc7sNdFpDsRION5iQEh8zfZw==", "dependencies": { - "@sentry/core": "7.76.0", - "@sentry/types": "7.76.0", - "@sentry/utils": "7.76.0" + "@sentry/core": "7.77.0", + "@sentry/types": "7.77.0", + "@sentry/utils": "7.77.0" }, "engines": { "node": ">=8" } }, "node_modules/@sentry/browser": { - "version": "7.76.0", - "resolved": "https://registry.npmjs.org/@sentry/browser/-/browser-7.76.0.tgz", - "integrity": "sha512-83xA+cWrBhhkNuMllW5ucFsEO2NlUh2iBYtmg07lp3fyVW+6+b1yMKRnc4RFArJ+Wcq6UO+qk2ZEvrSAts1wEw==", + "version": "7.77.0", + "resolved": "https://registry.npmjs.org/@sentry/browser/-/browser-7.77.0.tgz", + "integrity": "sha512-nJ2KDZD90H8jcPx9BysQLiQW+w7k7kISCWeRjrEMJzjtge32dmHA8G4stlUTRIQugy5F+73cOayWShceFP7QJQ==", "dependencies": { - "@sentry-internal/tracing": "7.76.0", - "@sentry/core": "7.76.0", - "@sentry/replay": "7.76.0", - "@sentry/types": "7.76.0", - "@sentry/utils": "7.76.0" + "@sentry-internal/tracing": "7.77.0", + "@sentry/core": "7.77.0", + "@sentry/replay": "7.77.0", + "@sentry/types": "7.77.0", + "@sentry/utils": "7.77.0" }, "engines": { "node": ">=8" } }, "node_modules/@sentry/core": { - "version": "7.76.0", - "resolved": "https://registry.npmjs.org/@sentry/core/-/core-7.76.0.tgz", - "integrity": "sha512-M+ptkCTeCNf6fn7p2MmEb1Wd9/JXUWxIT/0QEc+t11DNR4FYy1ZP2O9Zb3Zp2XacO7ORrlL3Yc+VIfl5JTgjfw==", + "version": "7.77.0", + "resolved": "https://registry.npmjs.org/@sentry/core/-/core-7.77.0.tgz", + "integrity": "sha512-Tj8oTYFZ/ZD+xW8IGIsU6gcFXD/gfE+FUxUaeSosd9KHwBQNOLhZSsYo/tTVf/rnQI/dQnsd4onPZLiL+27aTg==", "dependencies": { - "@sentry/types": "7.76.0", - "@sentry/utils": "7.76.0" + "@sentry/types": "7.77.0", + "@sentry/utils": "7.77.0" }, "engines": { "node": ">=8" } }, "node_modules/@sentry/replay": { - "version": "7.76.0", - "resolved": "https://registry.npmjs.org/@sentry/replay/-/replay-7.76.0.tgz", - "integrity": "sha512-OACT7MfMHC/YGKnKST8SF1d6znr3Yu8fpUpfVVh2t9TNeh3+cQJVTOliHDqLy+k9Ljd5FtitgSn4IHtseCHDLQ==", + "version": "7.77.0", + "resolved": "https://registry.npmjs.org/@sentry/replay/-/replay-7.77.0.tgz", + "integrity": "sha512-M9Ik2J5ekl+C1Och3wzLRZVaRGK33BlnBwfwf3qKjgLDwfKW+1YkwDfTHbc2b74RowkJbOVNcp4m8ptlehlSaQ==", "dependencies": { - "@sentry-internal/tracing": "7.76.0", - "@sentry/core": "7.76.0", - "@sentry/types": "7.76.0", - "@sentry/utils": "7.76.0" + "@sentry-internal/tracing": "7.77.0", + "@sentry/core": "7.77.0", + "@sentry/types": "7.77.0", + "@sentry/utils": "7.77.0" }, "engines": { "node": ">=12" } }, "node_modules/@sentry/types": { - "version": "7.76.0", - "resolved": "https://registry.npmjs.org/@sentry/types/-/types-7.76.0.tgz", - "integrity": "sha512-vj6z+EAbVrKAXmJPxSv/clpwS9QjPqzkraMFk2hIdE/kii8s8kwnkBwTSpIrNc8GnzV3qYC4r3qD+BXDxAGPaw==", + "version": "7.77.0", + "resolved": "https://registry.npmjs.org/@sentry/types/-/types-7.77.0.tgz", + "integrity": "sha512-nfb00XRJVi0QpDHg+JkqrmEBHsqBnxJu191Ded+Cs1OJ5oPXEW6F59LVcBScGvMqe+WEk1a73eH8XezwfgrTsA==", "engines": { "node": ">=8" } }, "node_modules/@sentry/utils": { - "version": "7.76.0", - "resolved": "https://registry.npmjs.org/@sentry/utils/-/utils-7.76.0.tgz", - "integrity": "sha512-40jFD+yfQaKpFYINghdhovzec4IEpB7aAuyH/GtE7E0gLpcqnC72r55krEIVILfqIR2Mlr5OKUzyeoCyWAU/yw==", + "version": "7.77.0", + "resolved": "https://registry.npmjs.org/@sentry/utils/-/utils-7.77.0.tgz", + "integrity": "sha512-NmM2kDOqVchrey3N5WSzdQoCsyDkQkiRxExPaNI2oKQ/jMWHs9yt0tSy7otPBcXs0AP59ihl75Bvm1tDRcsp5g==", "dependencies": { - "@sentry/types": "7.76.0" + "@sentry/types": "7.77.0" }, "engines": { "node": ">=8" diff --git a/package.json b/package.json index 9aaaf0368d..b77ead8a7b 100644 --- a/package.json +++ b/package.json @@ -42,7 +42,7 @@ "@fortawesome/free-regular-svg-icons": "^6.4.2", "@fortawesome/free-solid-svg-icons": "^6.4.2", "@ngneat/until-destroy": "^10.0.0", - "@sentry/browser": "^7.76.0", + "@sentry/browser": "^7.77.0", "angulartics2": "^12.2.1", "assert": "^2.0.0", "crypto-es": "^2.1.0", From 8ae4bff0775bc2e3ad26ee2de3da4288faa42476 Mon Sep 17 00:00:00 2001 From: Simon Date: Thu, 23 Nov 2023 10:19:45 +0100 Subject: [PATCH 2/9] fix: deleted rules object does not throw error (#2095) --- .../permissions/ability/ability.service.spec.ts | 16 ++++++++++++++++ .../core/permissions/ability/ability.service.ts | 12 ++++++------ 2 files changed, 22 insertions(+), 6 deletions(-) diff --git a/src/app/core/permissions/ability/ability.service.spec.ts b/src/app/core/permissions/ability/ability.service.spec.ts index 1a797ad0d3..eb0481da50 100644 --- a/src/app/core/permissions/ability/ability.service.spec.ts +++ b/src/app/core/permissions/ability/ability.service.spec.ts @@ -256,4 +256,20 @@ describe("AbilityService", () => { defaultRules.concat(...rules.user_app, ...rules.admin_app), ); }); + + it("should allow everything if permission doc has been deleted", () => { + entityUpdates.next({ + type: "new", + entity: new Config(Config.PERMISSION_KEY, rules), + }); + + expect(ability.rules).toEqual(rules["user_app"]); + + entityUpdates.next({ + type: "remove", + entity: new Config(Config.PERMISSION_KEY), + }); + + expect(ability.rules).toEqual([{ subject: "all", action: "manage" }]); + }); }); diff --git a/src/app/core/permissions/ability/ability.service.ts b/src/app/core/permissions/ability/ability.service.ts index 098f79b3a4..61ec2726c0 100644 --- a/src/app/core/permissions/ability/ability.service.ts +++ b/src/app/core/permissions/ability/ability.service.ts @@ -42,7 +42,11 @@ export class AbilityService extends LatestEntityLoader> { } private updateAbilityWithUserRules(rules: DatabaseRules): Promise { - const userRules = this.getRulesForUser(rules); + // If rules object is empty, everything is allowed + const userRules: DatabaseRule[] = rules + ? this.getRulesForUser(rules) + : [{ action: "manage", subject: "all" }]; + if (userRules.length === 0) { // No rules or only default rules defined const user = this.sessionService.getCurrentUser(); @@ -50,7 +54,7 @@ export class AbilityService extends LatestEntityLoader> { `no rules found for user "${user?.name}" with roles "${user?.roles}"`, ); } - this.updateAbilityWithRules(userRules); + this.ability.update(userRules); return this.permissionEnforcer.enforcePermissionsOnLocalData(userRules); } @@ -89,8 +93,4 @@ export class AbilityService extends LatestEntityLoader> { return value; }); } - - private updateAbilityWithRules(rules: DatabaseRule[]) { - this.ability.update(rules); - } } From 49bd1b1aac1196787579fd49337c0a6b29606c10 Mon Sep 17 00:00:00 2001 From: Simon Date: Thu, 23 Nov 2023 17:53:52 +0100 Subject: [PATCH 3/9] deps: upgrade multiple dependencies with Snyk (#2098) Co-authored-by: snyk-bot --- package-lock.json | 28 ++++++++++++++-------------- package.json | 6 +++--- 2 files changed, 17 insertions(+), 17 deletions(-) diff --git a/package-lock.json b/package-lock.json index 8479cea3d3..8f47761ab2 100644 --- a/package-lock.json +++ b/package-lock.json @@ -10,14 +10,14 @@ "license": "GPL-3.0", "dependencies": { "@angular/animations": "^16.2.1", - "@angular/cdk": "^16.2.10", + "@angular/cdk": "^16.2.11", "@angular/common": "^16.2.1", "@angular/compiler": "^16.2.1", "@angular/core": "^16.2.1", "@angular/forms": "^16.2.1", "@angular/localize": "^16.2.1", - "@angular/material": "^16.2.10", - "@angular/material-moment-adapter": "^16.2.10", + "@angular/material": "^16.2.11", + "@angular/material-moment-adapter": "^16.2.11", "@angular/platform-browser": "^16.2.1", "@angular/platform-browser-dynamic": "^16.2.1", "@angular/router": "^16.2.1", @@ -499,9 +499,9 @@ } }, "node_modules/@angular/cdk": { - "version": "16.2.10", - "resolved": "https://registry.npmjs.org/@angular/cdk/-/cdk-16.2.10.tgz", - "integrity": "sha512-kOQrPxSMPi66aM9XfwZIjQXhH+q0PkhK4BNMHB9RkvaaQ34ovOrKaGsT7t0+sjlVhiwTiy2mB1Qgz6NlIB0ZZw==", + "version": "16.2.11", + "resolved": "https://registry.npmjs.org/@angular/cdk/-/cdk-16.2.11.tgz", + "integrity": "sha512-FcJ9xd9ptjULdScnBNg7YkVnY9NKePFfmvvs2zt841Hd489L8BUkTUdbvtCLhMJTTSN+k+D+RYFhevZuhPKVVg==", "dependencies": { "tslib": "^2.3.0" }, @@ -753,9 +753,9 @@ } }, "node_modules/@angular/material": { - "version": "16.2.10", - "resolved": "https://registry.npmjs.org/@angular/material/-/material-16.2.10.tgz", - "integrity": "sha512-0XhMwbcxpEESL11mVO8ycwxa+Jlh+8egOSRleD30zFUesqBA5EhtRpH8cqtna03f/xxtRq00Q315igMIMNiOSg==", + "version": "16.2.11", + "resolved": "https://registry.npmjs.org/@angular/material/-/material-16.2.11.tgz", + "integrity": "sha512-hrkRD9/38++nIyo3k/KQpxsIaWm+FOJVmoJa83qvwZZt+fHKfT7xaNvRPZ+L2oqFaAvH5ivnL1u1nDuDyWz/0w==", "dependencies": { "@material/animation": "15.0.0-canary.bc9ae6c9c.0", "@material/auto-init": "15.0.0-canary.bc9ae6c9c.0", @@ -808,7 +808,7 @@ }, "peerDependencies": { "@angular/animations": "^16.0.0 || ^17.0.0", - "@angular/cdk": "16.2.10", + "@angular/cdk": "16.2.11", "@angular/common": "^16.0.0 || ^17.0.0", "@angular/core": "^16.0.0 || ^17.0.0", "@angular/forms": "^16.0.0 || ^17.0.0", @@ -817,15 +817,15 @@ } }, "node_modules/@angular/material-moment-adapter": { - "version": "16.2.10", - "resolved": "https://registry.npmjs.org/@angular/material-moment-adapter/-/material-moment-adapter-16.2.10.tgz", - "integrity": "sha512-Gus+TPy/RRuB+48fNeT9eMLfx0ZkQHw4Z9o0V3FoTFKa5JTfS4pHf+HoYFpcn6Ge+Y3MMt17dp+fyKAQSV9FSA==", + "version": "16.2.11", + "resolved": "https://registry.npmjs.org/@angular/material-moment-adapter/-/material-moment-adapter-16.2.11.tgz", + "integrity": "sha512-vAwWi1GehmqrgOcaAnL6C6EAfr6q6liZqyNyrGC+xaNChqLD2TrzOo9qljIGiYdkRm1p36Fe4BOdBFjh+73EwQ==", "dependencies": { "tslib": "^2.3.0" }, "peerDependencies": { "@angular/core": "^16.0.0 || ^17.0.0", - "@angular/material": "16.2.10", + "@angular/material": "16.2.11", "moment": "^2.18.1" } }, diff --git a/package.json b/package.json index b77ead8a7b..4bcb5516fa 100644 --- a/package.json +++ b/package.json @@ -21,14 +21,14 @@ "private": true, "dependencies": { "@angular/animations": "^16.2.1", - "@angular/cdk": "^16.2.10", + "@angular/cdk": "^16.2.11", "@angular/common": "^16.2.1", "@angular/compiler": "^16.2.1", "@angular/core": "^16.2.1", "@angular/forms": "^16.2.1", "@angular/localize": "^16.2.1", - "@angular/material": "^16.2.10", - "@angular/material-moment-adapter": "^16.2.10", + "@angular/material": "^16.2.11", + "@angular/material-moment-adapter": "^16.2.11", "@angular/platform-browser": "^16.2.1", "@angular/platform-browser-dynamic": "^16.2.1", "@angular/router": "^16.2.1", From f304162cafd3cfe6d3f3ffac4481f018a5d958b1 Mon Sep 17 00:00:00 2001 From: Simon Date: Mon, 27 Nov 2023 09:46:26 +0100 Subject: [PATCH 4/9] deps: upgrade flag-icons from 6.11.2 to 6.12.0 (#2103) Co-authored-by: snyk-bot --- package-lock.json | 8 ++++---- package.json | 2 +- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/package-lock.json b/package-lock.json index 8f47761ab2..620c733627 100644 --- a/package-lock.json +++ b/package-lock.json @@ -36,7 +36,7 @@ "assert": "^2.0.0", "crypto-es": "^2.1.0", "deep-object-diff": "^1.1.9", - "flag-icons": "^6.11.2", + "flag-icons": "^6.12.0", "hammerjs": "^2.0.8", "json-query": "^2.2.2", "keycloak-js": "^22.0.5", @@ -15768,9 +15768,9 @@ } }, "node_modules/flag-icons": { - "version": "6.11.2", - "resolved": "https://registry.npmjs.org/flag-icons/-/flag-icons-6.11.2.tgz", - "integrity": "sha512-xEVPdyDkL28GG0H+x7OP89uFXDgCduNX5DEJ9ZJuxpg3dnDCioBoHfhl4kjC4ixnOnVh7ajL/PNFg7my8qBxtQ==" + "version": "6.12.0", + "resolved": "https://registry.npmjs.org/flag-icons/-/flag-icons-6.12.0.tgz", + "integrity": "sha512-fp/flZPzEwbNdGpjj4dh++Kaf5MFX+UUpZExLGXfee/3a0czGt0ur0zyHDglE2pO7nwTzO/jKC8pK6TIEk/TOw==" }, "node_modules/flat": { "version": "5.0.2", diff --git a/package.json b/package.json index 4bcb5516fa..e99bb434bb 100644 --- a/package.json +++ b/package.json @@ -47,7 +47,7 @@ "assert": "^2.0.0", "crypto-es": "^2.1.0", "deep-object-diff": "^1.1.9", - "flag-icons": "^6.11.2", + "flag-icons": "^6.12.0", "hammerjs": "^2.0.8", "json-query": "^2.2.2", "keycloak-js": "^22.0.5", From 9666c2e3a054735d63b5923d211a6023e26f40bf Mon Sep 17 00:00:00 2001 From: Simon Date: Mon, 27 Nov 2023 14:55:35 +0100 Subject: [PATCH 5/9] fix: reloading works when reloading on details page (#2099) Co-authored-by: Sebastian --- .../entity-details/entity-details/entity-details.component.html | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/app/core/entity-details/entity-details/entity-details.component.html b/src/app/core/entity-details/entity-details/entity-details.component.html index 3966c2e644..0145da333f 100644 --- a/src/app/core/entity-details/entity-details/entity-details.component.html +++ b/src/app/core/entity-details/entity-details/entity-details.component.html @@ -70,8 +70,8 @@

{{ componentConfig.title }}


From 6ddc8bdf7121c258564899d1d986df0805745e36 Mon Sep 17 00:00:00 2001 From: Simon Date: Mon, 27 Nov 2023 15:11:18 +0100 Subject: [PATCH 6/9] fix: clicking filename does not open file twice (#2097) --- src/app/features/file/edit-file/edit-file.component.html | 7 +++---- src/app/features/file/edit-file/edit-file.component.ts | 6 +++--- 2 files changed, 6 insertions(+), 7 deletions(-) diff --git a/src/app/features/file/edit-file/edit-file.component.html b/src/app/features/file/edit-file/edit-file.component.html index 95226da3de..88128ce106 100644 --- a/src/app/features/file/edit-file/edit-file.component.html +++ b/src/app/features/file/edit-file/edit-file.component.html @@ -17,17 +17,16 @@ [formControl]="formControl" i18n-placeholder="placeholder for file-input" placeholder="No file selected" - (click)="formClicked(true)" i18n-matTooltip="Tooltip show file" matTooltip="Show file" - [matTooltipDisabled]="!formControl.value" + [matTooltipDisabled]="!(initialValue && formControl.value === initialValue)" />