From d400152360d6a4ffa12a521382a436530675a01c Mon Sep 17 00:00:00 2001 From: Thomas Kaul <4159106+dtslvr@users.noreply.github.com> Date: Thu, 14 May 2026 07:15:56 +0300 Subject: [PATCH 1/6] Task/upgrade @internationalized/number to version 3.6.6 (#6818) * Upgrade @internationalized/number to version 3.6.6 * Update changelog --- CHANGELOG.md | 1 + package-lock.json | 8 ++++---- package.json | 2 +- 3 files changed, 6 insertions(+), 5 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 93102f212..b16721638 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -15,6 +15,7 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 - Migrated various components from `NgClass` to class bindings - Refreshed the cryptocurrencies list +- Upgraded `@internationalized/number` from version `3.6.5` to `3.6.6` - Upgraded `@ionic/angular` from version `8.8.1` to `8.8.5` - Upgraded `@openrouter/ai-sdk-provider` from version `0.7.2` to `2.9.0` - Upgraded `ai` from version `4.3.16` to `6.0.174` diff --git a/package-lock.json b/package-lock.json index c93593880..56b65c55a 100644 --- a/package-lock.json +++ b/package-lock.json @@ -26,7 +26,7 @@ "@bull-board/nestjs": "7.0.0", "@codewithdan/observable-store": "2.2.15", "@date-fns/utc": "2.1.1", - "@internationalized/number": "3.6.5", + "@internationalized/number": "3.6.6", "@ionic/angular": "8.8.5", "@keyv/redis": "4.4.0", "@nestjs/bull": "11.0.4", @@ -4984,9 +4984,9 @@ } }, "node_modules/@internationalized/number": { - "version": "3.6.5", - "resolved": "https://registry.npmjs.org/@internationalized/number/-/number-3.6.5.tgz", - "integrity": "sha512-6hY4Kl4HPBvtfS62asS/R22JzNNy8vi/Ssev7x6EobfCp+9QIB2hKvI2EtbdJ0VSQacxVNtqhE/NmF/NZ0gm6g==", + "version": "3.6.6", + "resolved": "https://registry.npmjs.org/@internationalized/number/-/number-3.6.6.tgz", + "integrity": "sha512-iFgmQaXHE0vytNfpLZWOC2mEJCBRzcUxt53Xf/yCXG93lRvqas237i3r7X4RKMwO3txiyZD4mQjKAByFv6UGSQ==", "license": "Apache-2.0", "dependencies": { "@swc/helpers": "^0.5.0" diff --git a/package.json b/package.json index 7190ff92d..b7643e33b 100644 --- a/package.json +++ b/package.json @@ -71,7 +71,7 @@ "@bull-board/nestjs": "7.0.0", "@codewithdan/observable-store": "2.2.15", "@date-fns/utc": "2.1.1", - "@internationalized/number": "3.6.5", + "@internationalized/number": "3.6.6", "@ionic/angular": "8.8.5", "@keyv/redis": "4.4.0", "@nestjs/bull": "11.0.4", From 15ba37e20c7c8fc78b8aa94fd06b7d44cff71255 Mon Sep 17 00:00:00 2001 From: Thomas Kaul <4159106+dtslvr@users.noreply.github.com> Date: Thu, 14 May 2026 07:19:43 +0300 Subject: [PATCH 2/6] Task/refactor deprecated portfolio position attributes to asset profile in AI service (#6774) Refactor deprecated portfolio position attributes to asset profile --- apps/api/src/app/endpoints/ai/ai.service.ts | 12 +++++++----- 1 file changed, 7 insertions(+), 5 deletions(-) diff --git a/apps/api/src/app/endpoints/ai/ai.service.ts b/apps/api/src/app/endpoints/ai/ai.service.ts index 362f4a728..d0ef17844 100644 --- a/apps/api/src/app/endpoints/ai/ai.service.ts +++ b/apps/api/src/app/endpoints/ai/ai.service.ts @@ -101,11 +101,13 @@ export class AiService { .map( ({ allocationInPercentage, - assetClass, - assetSubClass, - currency, - name: label, - symbol + assetProfile: { + assetClass, + assetSubClass, + currency, + name: label, + symbol + } }) => { return AiService.HOLDINGS_TABLE_COLUMN_DEFINITIONS.reduce( (row, { key, name }) => { From 348496d5b82677ced991f75faa9ac181b3b4be51 Mon Sep 17 00:00:00 2001 From: Thomas Kaul <4159106+dtslvr@users.noreply.github.com> Date: Thu, 14 May 2026 08:42:08 +0300 Subject: [PATCH 3/6] Task/clean up webpack bundle analyzer setup (#6821) * Clean up Webpack Bundle Analyzer setup * Update changelog --- CHANGELOG.md | 1 + package-lock.json | 134 +--------------------------------------------- package.json | 4 +- 3 files changed, 3 insertions(+), 136 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index b16721638..5e53d4dbb 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -15,6 +15,7 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 - Migrated various components from `NgClass` to class bindings - Refreshed the cryptocurrencies list +- Cleaned up the _Webpack Bundle Analyzer_ setup - Upgraded `@internationalized/number` from version `3.6.5` to `3.6.6` - Upgraded `@ionic/angular` from version `8.8.1` to `8.8.5` - Upgraded `@openrouter/ai-sdk-provider` from version `0.7.2` to `2.9.0` diff --git a/package-lock.json b/package-lock.json index 56b65c55a..0b8911b43 100644 --- a/package-lock.json +++ b/package-lock.json @@ -161,8 +161,7 @@ "ts-jest": "29.4.0", "ts-node": "10.9.2", "tslib": "2.8.1", - "typescript": "5.9.2", - "webpack-bundle-analyzer": "4.10.2" + "typescript": "5.9.2" }, "engines": { "node": ">=22.18.0" @@ -11316,13 +11315,6 @@ "url": "https://opencollective.com/pkgr" } }, - "node_modules/@polka/url": { - "version": "1.0.0-next.29", - "resolved": "https://registry.npmjs.org/@polka/url/-/url-1.0.0-next.29.tgz", - "integrity": "sha512-wwQAWhWSuHaag8c4q/KN/vCoeOJYshAIvMQwD4GpSb3OiZklFfvAgmj0VCBBImRpuF/aFgIRzllXlVX93Jevww==", - "dev": true, - "license": "MIT" - }, "node_modules/@prisma/adapter-pg": { "version": "7.7.0", "resolved": "https://registry.npmjs.org/@prisma/adapter-pg/-/adapter-pg-7.7.0.tgz", @@ -20572,13 +20564,6 @@ "optional": true, "peer": true }, - "node_modules/debounce": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/debounce/-/debounce-1.2.1.tgz", - "integrity": "sha512-XRRe6Glud4rd/ZGQfiV1ruXSfbvfJedlV9Y6zOlP+2K04vBYiJEte6stfFkCP03aMnY5tsipamumUjL14fofug==", - "dev": true, - "license": "MIT" - }, "node_modules/debug": { "version": "4.4.3", "resolved": "https://registry.npmjs.org/debug/-/debug-4.4.3.tgz", @@ -21065,13 +21050,6 @@ "node": ">= 0.4" } }, - "node_modules/duplexer": { - "version": "0.1.2", - "resolved": "https://registry.npmjs.org/duplexer/-/duplexer-0.1.2.tgz", - "integrity": "sha512-jtD6YG370ZCIi/9GTaJKQxWTZD045+4R4hTk/x1UyoqadyJ9x9CgSi1RlVDQF8U2sxLLSnFkCaMihqljHIWgMg==", - "dev": true, - "license": "MIT" - }, "node_modules/eastasianwidth": { "version": "0.2.0", "resolved": "https://registry.npmjs.org/eastasianwidth/-/eastasianwidth-0.2.0.tgz", @@ -23744,22 +23722,6 @@ "node": ">=10" } }, - "node_modules/gzip-size": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/gzip-size/-/gzip-size-6.0.0.tgz", - "integrity": "sha512-ax7ZYomf6jqPTQ4+XCpUGyXKHk5WweS+e05MBO4/y3WJ5RkmPXNKvX+bx1behVILVwr6JSQvZAku021CHPXG3Q==", - "dev": true, - "license": "MIT", - "dependencies": { - "duplexer": "^0.1.2" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, "node_modules/hachure-fill": { "version": "0.5.2", "resolved": "https://registry.npmjs.org/hachure-fill/-/hachure-fill-0.5.2.tgz", @@ -35888,21 +35850,6 @@ "node": "^20.17.0 || >=22.9.0" } }, - "node_modules/sirv": { - "version": "2.0.4", - "resolved": "https://registry.npmjs.org/sirv/-/sirv-2.0.4.tgz", - "integrity": "sha512-94Bdh3cC2PKrbgSOUqTiGPWVZeSiXfKOVZNJniWoqrWrRkB1CJzBU3NEbiTsPcYy1lDsANA/THzS+9WBiy5nfQ==", - "dev": true, - "license": "MIT", - "dependencies": { - "@polka/url": "^1.0.0-next.24", - "mrmime": "^2.0.0", - "totalist": "^3.0.0" - }, - "engines": { - "node": ">= 10" - } - }, "node_modules/slash": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/slash/-/slash-3.0.0.tgz", @@ -37317,16 +37264,6 @@ "url": "https://github.com/sponsors/Borewit" } }, - "node_modules/totalist": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/totalist/-/totalist-3.0.1.tgz", - "integrity": "sha512-sf4i37nQ2LBx4m3wB74y+ubopq6W/dIzXg0FDGjsYnZHVa1Da8FH853wlL2gtUhg+xJXjfk3kUZS3BRoQeoQBQ==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=6" - } - }, "node_modules/tough-cookie": { "version": "6.0.1", "resolved": "https://registry.npmjs.org/tough-cookie/-/tough-cookie-6.0.1.tgz", @@ -38933,75 +38870,6 @@ } } }, - "node_modules/webpack-bundle-analyzer": { - "version": "4.10.2", - "resolved": "https://registry.npmjs.org/webpack-bundle-analyzer/-/webpack-bundle-analyzer-4.10.2.tgz", - "integrity": "sha512-vJptkMm9pk5si4Bv922ZbKLV8UTT4zib4FPgXMhgzUny0bfDDkLXAVQs3ly3fS4/TN9ROFtb0NFrm04UXFE/Vw==", - "dev": true, - "license": "MIT", - "dependencies": { - "@discoveryjs/json-ext": "0.5.7", - "acorn": "^8.0.4", - "acorn-walk": "^8.0.0", - "commander": "^7.2.0", - "debounce": "^1.2.1", - "escape-string-regexp": "^4.0.0", - "gzip-size": "^6.0.0", - "html-escaper": "^2.0.2", - "opener": "^1.5.2", - "picocolors": "^1.0.0", - "sirv": "^2.0.3", - "ws": "^7.3.1" - }, - "bin": { - "webpack-bundle-analyzer": "lib/bin/analyzer.js" - }, - "engines": { - "node": ">= 10.13.0" - } - }, - "node_modules/webpack-bundle-analyzer/node_modules/@discoveryjs/json-ext": { - "version": "0.5.7", - "resolved": "https://registry.npmjs.org/@discoveryjs/json-ext/-/json-ext-0.5.7.tgz", - "integrity": "sha512-dBVuXR082gk3jsFp7Rd/JI4kytwGHecnCoTtXFb7DB6CNHp4rg5k1bhg0nWdLGLnOV71lmDzGQaLMy8iPLY0pw==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=10.0.0" - } - }, - "node_modules/webpack-bundle-analyzer/node_modules/commander": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/commander/-/commander-7.2.0.tgz", - "integrity": "sha512-QrWXB+ZQSVPmIWIhtEO9H+gwHaMGYiF5ChvoJ+K9ZGHG/sVsa6yiesAD1GC/x46sET00Xlwo1u49RVVVzvcSkw==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">= 10" - } - }, - "node_modules/webpack-bundle-analyzer/node_modules/ws": { - "version": "7.5.10", - "resolved": "https://registry.npmjs.org/ws/-/ws-7.5.10.tgz", - "integrity": "sha512-+dbF1tHwZpXcbOJdVOkzLDxZP1ailvSxM6ZweXTegylPny803bFhA+vqBYw4s31NSAk4S2Qz+AKXK9a4wkdjcQ==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=8.3.0" - }, - "peerDependencies": { - "bufferutil": "^4.0.1", - "utf-8-validate": "^5.0.2" - }, - "peerDependenciesMeta": { - "bufferutil": { - "optional": true - }, - "utf-8-validate": { - "optional": true - } - } - }, "node_modules/webpack-dev-middleware": { "version": "7.4.5", "resolved": "https://registry.npmjs.org/webpack-dev-middleware/-/webpack-dev-middleware-7.4.5.tgz", diff --git a/package.json b/package.json index b7643e33b..f748d0baf 100644 --- a/package.json +++ b/package.json @@ -12,7 +12,6 @@ "affected:libs": "nx affected:libs", "affected:lint": "nx affected:lint", "affected:test": "nx affected:test", - "analyze:client": "nx run client:build:production --stats-json && webpack-bundle-analyzer -p 1234 dist/apps/client/en/stats.json", "angular": "node --max_old_space_size=32768 ./node_modules/@angular/cli/bin/ng", "build:production": "nx run api:copy-assets && nx run api:build:production && nx run client:copy-assets && nx run client:build:production && nx run ui:build-storybook && npm run replace-placeholders-in-build", "build:storybook": "nx run ui:build-storybook", @@ -206,8 +205,7 @@ "ts-jest": "29.4.0", "ts-node": "10.9.2", "tslib": "2.8.1", - "typescript": "5.9.2", - "webpack-bundle-analyzer": "4.10.2" + "typescript": "5.9.2" }, "engines": { "node": ">=22.18.0" From d720651f786c0729166a82eed3ea3acd13ae8dc9 Mon Sep 17 00:00:00 2001 From: Kenrick Tandrian <60643640+KenTandrian@users.noreply.github.com> Date: Thu, 14 May 2026 15:39:02 +0700 Subject: [PATCH 4/6] Bugfix/resolve styling issues by splitting space-separated class bindings (#6848) * fix(ui): large size not working in value component * fix(ui): historical market data style not applied --- ...istorical-market-data-editor.component.html | 18 ++++++++++-------- libs/ui/src/lib/value/value.component.html | 14 ++++++-------- 2 files changed, 16 insertions(+), 16 deletions(-) diff --git a/libs/ui/src/lib/historical-market-data-editor/historical-market-data-editor.component.html b/libs/ui/src/lib/historical-market-data-editor/historical-market-data-editor.component.html index 93fd8d97f..065e62de1 100644 --- a/libs/ui/src/lib/historical-market-data-editor/historical-market-data-editor.component.html +++ b/libs/ui/src/lib/historical-market-data-editor/historical-market-data-editor.component.html @@ -6,14 +6,16 @@ @for (day of days; track day) {
@if (value === null) { ***** @@ -60,10 +59,9 @@ @if (isString) {
{{ formattedValue }}
From a146fd8d92eaeca081b669a1190719e13343d98a Mon Sep 17 00:00:00 2001 From: Jorge Date: Thu, 14 May 2026 10:53:02 +0200 Subject: [PATCH 5/6] Task/improve language localization for ES (#6852) * Update translations * Update changelog --- CHANGELOG.md | 1 + apps/client/src/locales/messages.es.xlf | 10 +++++----- 2 files changed, 6 insertions(+), 5 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 5e53d4dbb..cc03ee417 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -15,6 +15,7 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 - Migrated various components from `NgClass` to class bindings - Refreshed the cryptocurrencies list +- Improved the language localization for Spanish (`es`) - Cleaned up the _Webpack Bundle Analyzer_ setup - Upgraded `@internationalized/number` from version `3.6.5` to `3.6.6` - Upgraded `@ionic/angular` from version `8.8.1` to `8.8.5` diff --git a/apps/client/src/locales/messages.es.xlf b/apps/client/src/locales/messages.es.xlf index 62befb2ae..69aefb793 100644 --- a/apps/client/src/locales/messages.es.xlf +++ b/apps/client/src/locales/messages.es.xlf @@ -1612,7 +1612,7 @@ Duration - Duration + Duración apps/client/src/app/components/admin-overview/admin-overview.html 172 @@ -2760,7 +2760,7 @@ Code - Code + Código apps/client/src/app/components/admin-overview/admin-overview.html 159 @@ -3756,7 +3756,7 @@ Loan - Loan + Préstamo libs/ui/src/lib/i18n.ts 59 @@ -5012,7 +5012,7 @@ saying no to spreadsheets in - diciendo no a las hojas de cálculo en + en contra de las las hojas de cálculo en apps/client/src/app/pages/landing/landing-page.html 209 @@ -6959,7 +6959,7 @@ has been copied to the clipboard - has been copied to the clipboard + ha sido copiado al portapapeles apps/client/src/app/components/admin-overview/admin-overview.component.ts 377 From c6fa3c9e1331b8fa37ec8f2a2524eece343116fc Mon Sep 17 00:00:00 2001 From: Thomas Kaul <4159106+dtslvr@users.noreply.github.com> Date: Thu, 14 May 2026 12:05:14 +0300 Subject: [PATCH 6/6] Task/migrate ion-icon to self-closing tag in holding detail dialog (#6814) Migrate to self-closing tag --- .../holding-detail-dialog/holding-detail-dialog.html | 9 ++++----- 1 file changed, 4 insertions(+), 5 deletions(-) diff --git a/apps/client/src/app/components/holding-detail-dialog/holding-detail-dialog.html b/apps/client/src/app/components/holding-detail-dialog/holding-detail-dialog.html index dbdaf0c69..7c1906ee5 100644 --- a/apps/client/src/app/components/holding-detail-dialog/holding-detail-dialog.html +++ b/apps/client/src/app/components/holding-detail-dialog/holding-detail-dialog.html @@ -434,11 +434,10 @@ mat-stroked-button (click)="onCloseHolding()" > - Close Holding + Close Holding } @if (