Browse Source

Merge branch 'main' into feature/upgrade-to-nx-20.3

pull/4152/head
Thomas Kaul 8 months ago
committed by GitHub
parent
commit
daba15e6cb
No known key found for this signature in database GPG Key ID: B5690EEEBB952194
  1. 5
      CHANGELOG.md
  2. 4
      apps/api/src/app/user/user.service.ts
  3. 3
      apps/client/src/app/components/admin-settings/admin-settings.component.ts
  4. 24
      apps/client/src/app/components/admin-settings/ghostfolio-premium-api-dialog/ghostfolio-premium-api-dialog.html
  5. 3
      apps/client/src/app/components/admin-settings/ghostfolio-premium-api-dialog/interfaces/interfaces.ts
  6. 15
      apps/client/src/app/components/user-account-access/user-account-access.component.ts
  7. 10
      apps/client/src/app/components/user-account-access/user-account-access.html
  8. 18
      apps/client/src/locales/messages.ca.xlf
  9. 20
      apps/client/src/locales/messages.de.xlf
  10. 18
      apps/client/src/locales/messages.es.xlf
  11. 18
      apps/client/src/locales/messages.fr.xlf
  12. 18
      apps/client/src/locales/messages.it.xlf
  13. 18
      apps/client/src/locales/messages.nl.xlf
  14. 20
      apps/client/src/locales/messages.pl.xlf
  15. 18
      apps/client/src/locales/messages.pt.xlf
  16. 18
      apps/client/src/locales/messages.tr.xlf
  17. 16
      apps/client/src/locales/messages.xlf
  18. 18
      apps/client/src/locales/messages.zh.xlf
  19. 7
      libs/common/src/lib/interfaces/user.interface.ts

5
CHANGELOG.md

@ -7,8 +7,13 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
## Unreleased ## Unreleased
### Added
- Added the user interface for received access from others
### Changed ### Changed
- Improved the language localization for German (`de`)
- Upgraded the _Stripe_ dependencies - Upgraded the _Stripe_ dependencies
- Upgraded `angular` from version `18.2.8` to `19.0.5` - Upgraded `angular` from version `18.2.8` to `19.0.5`
- Upgraded `husky` from version `9.1.6` to `9.1.7` - Upgraded `husky` from version `9.1.6` to `9.1.7`

4
apps/api/src/app/user/user.service.ts

@ -89,6 +89,7 @@ export class UserService {
}), }),
this.tagService.getTagsForUser(id) this.tagService.getTagsForUser(id)
]); ]);
const access = userData[0]; const access = userData[0];
const firstActivity = userData[1]; const firstActivity = userData[1];
let tags = userData[2]; let tags = userData[2];
@ -119,7 +120,8 @@ export class UserService {
access: access.map((accessItem) => { access: access.map((accessItem) => {
return { return {
alias: accessItem.alias, alias: accessItem.alias,
id: accessItem.id id: accessItem.id,
permissions: accessItem.permissions
}; };
}), }),
accounts: Account, accounts: Account,

3
apps/client/src/app/components/admin-settings/admin-settings.component.ts

@ -101,7 +101,8 @@ export class AdminSettingsComponent implements OnDestroy, OnInit {
autoFocus: false, autoFocus: false,
data: { data: {
deviceType: this.deviceType, deviceType: this.deviceType,
pricingUrl: this.pricingUrl pricingUrl: this.pricingUrl,
user: this.user
}, },
height: this.deviceType === 'mobile' ? '98vh' : undefined, height: this.deviceType === 'mobile' ? '98vh' : undefined,
width: this.deviceType === 'mobile' ? '100vw' : '50rem' width: this.deviceType === 'mobile' ? '100vw' : '50rem'

24
apps/client/src/app/components/admin-settings/ghostfolio-premium-api-dialog/ghostfolio-premium-api-dialog.html

@ -31,17 +31,19 @@
mat-flat-button mat-flat-button
>Notify me</a >Notify me</a
> >
<div> @if (data.user?.settings?.isExperimentalFeatures) {
<small class="text-muted" i18n>or</small> <div>
</div> <small class="text-muted" i18n>or</small>
<button </div>
color="accent" <button
i18n color="accent"
mat-stroked-button i18n
(click)="onSetGhostfolioApiKey()" mat-stroked-button
> (click)="onSetGhostfolioApiKey()"
I have an API key >
</button> I have an API key
</button>
}
</div> </div>
</div> </div>

3
apps/client/src/app/components/admin-settings/ghostfolio-premium-api-dialog/interfaces/interfaces.ts

@ -1,4 +1,7 @@
import { User } from '@ghostfolio/common/interfaces';
export interface GhostfolioPremiumApiDialogParams { export interface GhostfolioPremiumApiDialogParams {
deviceType: string; deviceType: string;
pricingUrl: string; pricingUrl: string;
user: User;
} }

15
apps/client/src/app/components/user-account-access/user-account-access.component.ts

@ -28,7 +28,8 @@ import { CreateOrUpdateAccessDialog } from './create-or-update-access-dialog/cre
standalone: false standalone: false
}) })
export class UserAccountAccessComponent implements OnDestroy, OnInit { export class UserAccountAccessComponent implements OnDestroy, OnInit {
public accesses: Access[]; public accessesGet: Access[];
public accessesGive: Access[];
public deviceType: string; public deviceType: string;
public hasPermissionToCreateAccess: boolean; public hasPermissionToCreateAccess: boolean;
public hasPermissionToDeleteAccess: boolean; public hasPermissionToDeleteAccess: boolean;
@ -126,11 +127,21 @@ export class UserAccountAccessComponent implements OnDestroy, OnInit {
} }
private update() { private update() {
this.accessesGet = this.user.access.map(({ alias, id, permissions }) => {
return {
alias,
id,
permissions,
grantee: $localize`Me`,
type: 'PRIVATE'
};
});
this.dataService this.dataService
.fetchAccesses() .fetchAccesses()
.pipe(takeUntil(this.unsubscribeSubject)) .pipe(takeUntil(this.unsubscribeSubject))
.subscribe((accesses) => { .subscribe((accesses) => {
this.accesses = accesses; this.accessesGive = accesses;
this.changeDetectorRef.markForCheck(); this.changeDetectorRef.markForCheck();
}); });

10
apps/client/src/app/components/user-account-access/user-account-access.html

@ -1,14 +1,16 @@
<div class="container"> <div class="container">
<h1 @if (accessesGet.length > 0) {
class="align-items-center d-none d-sm-flex h3 justify-content-center mb-3 text-center" <h1 class="h3 mb-3 text-center" i18n>Received Access</h1>
> <gf-access-table class="mb-5" [accesses]="accessesGet" [user]="user" />
}
<h1 class="align-items-center d-flex h3 justify-content-center mb-3">
<span i18n>Granted Access</span> <span i18n>Granted Access</span>
@if (user?.subscription?.type === 'Basic') { @if (user?.subscription?.type === 'Basic') {
<gf-premium-indicator class="ml-1" /> <gf-premium-indicator class="ml-1" />
} }
</h1> </h1>
<gf-access-table <gf-access-table
[accesses]="accesses" [accesses]="accessesGive"
[showActions]="hasPermissionToDeleteAccess" [showActions]="hasPermissionToDeleteAccess"
[user]="user" [user]="user"
(accessDeleted)="onDeleteAccess($event)" (accessDeleted)="onDeleteAccess($event)"

18
apps/client/src/locales/messages.ca.xlf

@ -3307,7 +3307,7 @@
<target state="new">Granted Access</target> <target state="new">Granted Access</target>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">apps/client/src/app/components/user-account-access/user-account-access.html</context> <context context-type="sourcefile">apps/client/src/app/components/user-account-access/user-account-access.html</context>
<context context-type="linenumber">5</context> <context context-type="linenumber">7</context>
</context-group> </context-group>
</trans-unit> </trans-unit>
<trans-unit id="5196970976032945030" datatype="html"> <trans-unit id="5196970976032945030" datatype="html">
@ -7616,6 +7616,22 @@
<context context-type="linenumber">82</context> <context context-type="linenumber">82</context>
</context-group> </context-group>
</trans-unit> </trans-unit>
<trans-unit id="7156797854368699223" datatype="html">
<source>Me</source>
<target state="new">Me</target>
<context-group purpose="location">
<context context-type="sourcefile">apps/client/src/app/components/user-account-access/user-account-access.component.ts</context>
<context context-type="linenumber">134</context>
</context-group>
</trans-unit>
<trans-unit id="110cc6cb39e1806d3775fd76f1d0753c9bc0e062" datatype="html">
<source>Received Access</source>
<target state="new">Received Access</target>
<context-group purpose="location">
<context context-type="sourcefile">apps/client/src/app/components/user-account-access/user-account-access.html</context>
<context context-type="linenumber">3</context>
</context-group>
</trans-unit>
</body> </body>
</file> </file>
</xliff> </xliff>

20
apps/client/src/locales/messages.de.xlf

@ -1815,10 +1815,10 @@
</trans-unit> </trans-unit>
<trans-unit id="9021c579c084e68d9db06a569d76f024111c6c54" datatype="html"> <trans-unit id="9021c579c084e68d9db06a569d76f024111c6c54" datatype="html">
<source>Granted Access</source> <source>Granted Access</source>
<target state="translated">Zugangsberechtigung</target> <target state="translated">Gewährte Zugangsberechtigung</target>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">apps/client/src/app/components/user-account-access/user-account-access.html</context> <context context-type="sourcefile">apps/client/src/app/components/user-account-access/user-account-access.html</context>
<context context-type="linenumber">5</context> <context context-type="linenumber">7</context>
</context-group> </context-group>
</trans-unit> </trans-unit>
<trans-unit id="5e41f1b4c46ad9e0a9bc83fa36445483aa5cc324" datatype="html"> <trans-unit id="5e41f1b4c46ad9e0a9bc83fa36445483aa5cc324" datatype="html">
@ -7616,6 +7616,22 @@
<context context-type="linenumber">82</context> <context context-type="linenumber">82</context>
</context-group> </context-group>
</trans-unit> </trans-unit>
<trans-unit id="7156797854368699223" datatype="html">
<source>Me</source>
<target state="translated">Ich</target>
<context-group purpose="location">
<context context-type="sourcefile">apps/client/src/app/components/user-account-access/user-account-access.component.ts</context>
<context context-type="linenumber">134</context>
</context-group>
</trans-unit>
<trans-unit id="110cc6cb39e1806d3775fd76f1d0753c9bc0e062" datatype="html">
<source>Received Access</source>
<target state="translated">Erhaltene Zugangsberechtigung</target>
<context-group purpose="location">
<context context-type="sourcefile">apps/client/src/app/components/user-account-access/user-account-access.html</context>
<context context-type="linenumber">3</context>
</context-group>
</trans-unit>
</body> </body>
</file> </file>
</xliff> </xliff>

18
apps/client/src/locales/messages.es.xlf

@ -1819,7 +1819,7 @@
<target state="translated">Acceso concedido</target> <target state="translated">Acceso concedido</target>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">apps/client/src/app/components/user-account-access/user-account-access.html</context> <context context-type="sourcefile">apps/client/src/app/components/user-account-access/user-account-access.html</context>
<context context-type="linenumber">5</context> <context context-type="linenumber">7</context>
</context-group> </context-group>
</trans-unit> </trans-unit>
<trans-unit id="5e41f1b4c46ad9e0a9bc83fa36445483aa5cc324" datatype="html"> <trans-unit id="5e41f1b4c46ad9e0a9bc83fa36445483aa5cc324" datatype="html">
@ -7617,6 +7617,22 @@
<context context-type="linenumber">82</context> <context context-type="linenumber">82</context>
</context-group> </context-group>
</trans-unit> </trans-unit>
<trans-unit id="7156797854368699223" datatype="html">
<source>Me</source>
<target state="new">Me</target>
<context-group purpose="location">
<context context-type="sourcefile">apps/client/src/app/components/user-account-access/user-account-access.component.ts</context>
<context context-type="linenumber">134</context>
</context-group>
</trans-unit>
<trans-unit id="110cc6cb39e1806d3775fd76f1d0753c9bc0e062" datatype="html">
<source>Received Access</source>
<target state="new">Received Access</target>
<context-group purpose="location">
<context context-type="sourcefile">apps/client/src/app/components/user-account-access/user-account-access.html</context>
<context context-type="linenumber">3</context>
</context-group>
</trans-unit>
</body> </body>
</file> </file>
</xliff> </xliff>

18
apps/client/src/locales/messages.fr.xlf

@ -2174,7 +2174,7 @@
<target state="translated">Accès donné</target> <target state="translated">Accès donné</target>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">apps/client/src/app/components/user-account-access/user-account-access.html</context> <context context-type="sourcefile">apps/client/src/app/components/user-account-access/user-account-access.html</context>
<context context-type="linenumber">5</context> <context context-type="linenumber">7</context>
</context-group> </context-group>
</trans-unit> </trans-unit>
<trans-unit id="5e41f1b4c46ad9e0a9bc83fa36445483aa5cc324" datatype="html"> <trans-unit id="5e41f1b4c46ad9e0a9bc83fa36445483aa5cc324" datatype="html">
@ -7616,6 +7616,22 @@
<context context-type="linenumber">82</context> <context context-type="linenumber">82</context>
</context-group> </context-group>
</trans-unit> </trans-unit>
<trans-unit id="7156797854368699223" datatype="html">
<source>Me</source>
<target state="new">Me</target>
<context-group purpose="location">
<context context-type="sourcefile">apps/client/src/app/components/user-account-access/user-account-access.component.ts</context>
<context context-type="linenumber">134</context>
</context-group>
</trans-unit>
<trans-unit id="110cc6cb39e1806d3775fd76f1d0753c9bc0e062" datatype="html">
<source>Received Access</source>
<target state="new">Received Access</target>
<context-group purpose="location">
<context context-type="sourcefile">apps/client/src/app/components/user-account-access/user-account-access.html</context>
<context context-type="linenumber">3</context>
</context-group>
</trans-unit>
</body> </body>
</file> </file>
</xliff> </xliff>

18
apps/client/src/locales/messages.it.xlf

@ -1819,7 +1819,7 @@
<target state="translated">Accesso concesso</target> <target state="translated">Accesso concesso</target>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">apps/client/src/app/components/user-account-access/user-account-access.html</context> <context context-type="sourcefile">apps/client/src/app/components/user-account-access/user-account-access.html</context>
<context context-type="linenumber">5</context> <context context-type="linenumber">7</context>
</context-group> </context-group>
</trans-unit> </trans-unit>
<trans-unit id="5e41f1b4c46ad9e0a9bc83fa36445483aa5cc324" datatype="html"> <trans-unit id="5e41f1b4c46ad9e0a9bc83fa36445483aa5cc324" datatype="html">
@ -7617,6 +7617,22 @@
<context context-type="linenumber">82</context> <context context-type="linenumber">82</context>
</context-group> </context-group>
</trans-unit> </trans-unit>
<trans-unit id="7156797854368699223" datatype="html">
<source>Me</source>
<target state="new">Me</target>
<context-group purpose="location">
<context context-type="sourcefile">apps/client/src/app/components/user-account-access/user-account-access.component.ts</context>
<context context-type="linenumber">134</context>
</context-group>
</trans-unit>
<trans-unit id="110cc6cb39e1806d3775fd76f1d0753c9bc0e062" datatype="html">
<source>Received Access</source>
<target state="new">Received Access</target>
<context-group purpose="location">
<context context-type="sourcefile">apps/client/src/app/components/user-account-access/user-account-access.html</context>
<context context-type="linenumber">3</context>
</context-group>
</trans-unit>
</body> </body>
</file> </file>
</xliff> </xliff>

18
apps/client/src/locales/messages.nl.xlf

@ -1818,7 +1818,7 @@
<target state="translated">Verleende toegang</target> <target state="translated">Verleende toegang</target>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">apps/client/src/app/components/user-account-access/user-account-access.html</context> <context context-type="sourcefile">apps/client/src/app/components/user-account-access/user-account-access.html</context>
<context context-type="linenumber">5</context> <context context-type="linenumber">7</context>
</context-group> </context-group>
</trans-unit> </trans-unit>
<trans-unit id="5e41f1b4c46ad9e0a9bc83fa36445483aa5cc324" datatype="html"> <trans-unit id="5e41f1b4c46ad9e0a9bc83fa36445483aa5cc324" datatype="html">
@ -7616,6 +7616,22 @@
<context context-type="linenumber">82</context> <context context-type="linenumber">82</context>
</context-group> </context-group>
</trans-unit> </trans-unit>
<trans-unit id="7156797854368699223" datatype="html">
<source>Me</source>
<target state="new">Me</target>
<context-group purpose="location">
<context context-type="sourcefile">apps/client/src/app/components/user-account-access/user-account-access.component.ts</context>
<context context-type="linenumber">134</context>
</context-group>
</trans-unit>
<trans-unit id="110cc6cb39e1806d3775fd76f1d0753c9bc0e062" datatype="html">
<source>Received Access</source>
<target state="new">Received Access</target>
<context-group purpose="location">
<context context-type="sourcefile">apps/client/src/app/components/user-account-access/user-account-access.html</context>
<context context-type="linenumber">3</context>
</context-group>
</trans-unit>
</body> </body>
</file> </file>
</xliff> </xliff>

20
apps/client/src/locales/messages.pl.xlf

@ -3031,7 +3031,7 @@
<target state="translated">Przyznano dostęp</target> <target state="translated">Przyznano dostęp</target>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">apps/client/src/app/components/user-account-access/user-account-access.html</context> <context context-type="sourcefile">apps/client/src/app/components/user-account-access/user-account-access.html</context>
<context context-type="linenumber">5</context> <context context-type="linenumber">7</context>
</context-group> </context-group>
</trans-unit> </trans-unit>
<trans-unit id="5196970976032945030" datatype="html"> <trans-unit id="5196970976032945030" datatype="html">
@ -3812,7 +3812,7 @@
</trans-unit> </trans-unit>
<trans-unit id="f251aca95a00756de48b14172b02d33f175661fc" datatype="html"> <trans-unit id="f251aca95a00756de48b14172b02d33f175661fc" datatype="html">
<source> Ghostfolio is a privacy-first, open source dashboard for your personal finances. Break down your asset allocation, know your net worth and make solid, data-driven investment decisions. </source> <source> Ghostfolio is a privacy-first, open source dashboard for your personal finances. Break down your asset allocation, know your net worth and make solid, data-driven investment decisions. </source>
<target state="translated"> Ghostfolio to zapewniający prywatność, open source'owy panel do zarządzania finansami osobistymi. Przeanalizuj szczegółowo swoją alokację aktywów, określ swoją wartość netto i podejmuj przemyślane decyzje inwestycyjne oparte na danych. </target> <target state="translated"> Ghostfolio to zapewniający prywatność, open source&apos;owy panel do zarządzania finansami osobistymi. Przeanalizuj szczegółowo swoją alokację aktywów, określ swoją wartość netto i podejmuj przemyślane decyzje inwestycyjne oparte na danych. </target>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">apps/client/src/app/pages/landing/landing-page.html</context> <context context-type="sourcefile">apps/client/src/app/pages/landing/landing-page.html</context>
<context context-type="linenumber">9</context> <context context-type="linenumber">9</context>
@ -7616,6 +7616,22 @@
<context context-type="linenumber">82</context> <context context-type="linenumber">82</context>
</context-group> </context-group>
</trans-unit> </trans-unit>
<trans-unit id="7156797854368699223" datatype="html">
<source>Me</source>
<target state="new">Me</target>
<context-group purpose="location">
<context context-type="sourcefile">apps/client/src/app/components/user-account-access/user-account-access.component.ts</context>
<context context-type="linenumber">134</context>
</context-group>
</trans-unit>
<trans-unit id="110cc6cb39e1806d3775fd76f1d0753c9bc0e062" datatype="html">
<source>Received Access</source>
<target state="new">Received Access</target>
<context-group purpose="location">
<context context-type="sourcefile">apps/client/src/app/components/user-account-access/user-account-access.html</context>
<context context-type="linenumber">3</context>
</context-group>
</trans-unit>
</body> </body>
</file> </file>
</xliff> </xliff>

18
apps/client/src/locales/messages.pt.xlf

@ -2122,7 +2122,7 @@
<target state="translated">Acesso Concedido</target> <target state="translated">Acesso Concedido</target>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">apps/client/src/app/components/user-account-access/user-account-access.html</context> <context context-type="sourcefile">apps/client/src/app/components/user-account-access/user-account-access.html</context>
<context context-type="linenumber">5</context> <context context-type="linenumber">7</context>
</context-group> </context-group>
</trans-unit> </trans-unit>
<trans-unit id="5e41f1b4c46ad9e0a9bc83fa36445483aa5cc324" datatype="html"> <trans-unit id="5e41f1b4c46ad9e0a9bc83fa36445483aa5cc324" datatype="html">
@ -7616,6 +7616,22 @@
<context context-type="linenumber">82</context> <context context-type="linenumber">82</context>
</context-group> </context-group>
</trans-unit> </trans-unit>
<trans-unit id="7156797854368699223" datatype="html">
<source>Me</source>
<target state="new">Me</target>
<context-group purpose="location">
<context context-type="sourcefile">apps/client/src/app/components/user-account-access/user-account-access.component.ts</context>
<context context-type="linenumber">134</context>
</context-group>
</trans-unit>
<trans-unit id="110cc6cb39e1806d3775fd76f1d0753c9bc0e062" datatype="html">
<source>Received Access</source>
<target state="new">Received Access</target>
<context-group purpose="location">
<context context-type="sourcefile">apps/client/src/app/components/user-account-access/user-account-access.html</context>
<context context-type="linenumber">3</context>
</context-group>
</trans-unit>
</body> </body>
</file> </file>
</xliff> </xliff>

18
apps/client/src/locales/messages.tr.xlf

@ -5171,7 +5171,7 @@
<target state="translated">xErişim İzni Verildi</target> <target state="translated">xErişim İzni Verildi</target>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">apps/client/src/app/components/user-account-access/user-account-access.html</context> <context context-type="sourcefile">apps/client/src/app/components/user-account-access/user-account-access.html</context>
<context context-type="linenumber">5</context> <context context-type="linenumber">7</context>
</context-group> </context-group>
</trans-unit> </trans-unit>
<trans-unit id="495a0574bd9a3d619a8b16dd5b893c6f617beded" datatype="html"> <trans-unit id="495a0574bd9a3d619a8b16dd5b893c6f617beded" datatype="html">
@ -7616,6 +7616,22 @@
<context context-type="linenumber">82</context> <context context-type="linenumber">82</context>
</context-group> </context-group>
</trans-unit> </trans-unit>
<trans-unit id="7156797854368699223" datatype="html">
<source>Me</source>
<target state="new">Me</target>
<context-group purpose="location">
<context context-type="sourcefile">apps/client/src/app/components/user-account-access/user-account-access.component.ts</context>
<context context-type="linenumber">134</context>
</context-group>
</trans-unit>
<trans-unit id="110cc6cb39e1806d3775fd76f1d0753c9bc0e062" datatype="html">
<source>Received Access</source>
<target state="new">Received Access</target>
<context-group purpose="location">
<context context-type="sourcefile">apps/client/src/app/components/user-account-access/user-account-access.html</context>
<context context-type="linenumber">3</context>
</context-group>
</trans-unit>
</body> </body>
</file> </file>
</xliff> </xliff>

16
apps/client/src/locales/messages.xlf

@ -2832,7 +2832,7 @@
<source>Granted Access</source> <source>Granted Access</source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">apps/client/src/app/components/user-account-access/user-account-access.html</context> <context context-type="sourcefile">apps/client/src/app/components/user-account-access/user-account-access.html</context>
<context context-type="linenumber">5</context> <context context-type="linenumber">7</context>
</context-group> </context-group>
</trans-unit> </trans-unit>
<trans-unit id="5196970976032945030" datatype="html"> <trans-unit id="5196970976032945030" datatype="html">
@ -6891,6 +6891,20 @@
<context context-type="linenumber">82</context> <context context-type="linenumber">82</context>
</context-group> </context-group>
</trans-unit> </trans-unit>
<trans-unit id="110cc6cb39e1806d3775fd76f1d0753c9bc0e062" datatype="html">
<source>Received Access</source>
<context-group purpose="location">
<context context-type="sourcefile">apps/client/src/app/components/user-account-access/user-account-access.html</context>
<context context-type="linenumber">3</context>
</context-group>
</trans-unit>
<trans-unit id="7156797854368699223" datatype="html">
<source>Me</source>
<context-group purpose="location">
<context context-type="sourcefile">apps/client/src/app/components/user-account-access/user-account-access.component.ts</context>
<context context-type="linenumber">134</context>
</context-group>
</trans-unit>
</body> </body>
</file> </file>
</xliff> </xliff>

18
apps/client/src/locales/messages.zh.xlf

@ -3048,7 +3048,7 @@
<target state="translated">授予访问权限</target> <target state="translated">授予访问权限</target>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">apps/client/src/app/components/user-account-access/user-account-access.html</context> <context context-type="sourcefile">apps/client/src/app/components/user-account-access/user-account-access.html</context>
<context context-type="linenumber">5</context> <context context-type="linenumber">7</context>
</context-group> </context-group>
</trans-unit> </trans-unit>
<trans-unit id="5196970976032945030" datatype="html"> <trans-unit id="5196970976032945030" datatype="html">
@ -7617,6 +7617,22 @@
<context context-type="linenumber">82</context> <context context-type="linenumber">82</context>
</context-group> </context-group>
</trans-unit> </trans-unit>
<trans-unit id="7156797854368699223" datatype="html">
<source>Me</source>
<target state="new">Me</target>
<context-group purpose="location">
<context context-type="sourcefile">apps/client/src/app/components/user-account-access/user-account-access.component.ts</context>
<context context-type="linenumber">134</context>
</context-group>
</trans-unit>
<trans-unit id="110cc6cb39e1806d3775fd76f1d0753c9bc0e062" datatype="html">
<source>Received Access</source>
<target state="new">Received Access</target>
<context-group purpose="location">
<context context-type="sourcefile">apps/client/src/app/components/user-account-access/user-account-access.html</context>
<context context-type="linenumber">3</context>
</context-group>
</trans-unit>
</body> </body>
</file> </file>
</xliff> </xliff>

7
libs/common/src/lib/interfaces/user.interface.ts

@ -1,17 +1,14 @@
import { SubscriptionOfferKey } from '@ghostfolio/common/types'; import { SubscriptionOfferKey } from '@ghostfolio/common/types';
import { SubscriptionType } from '@ghostfolio/common/types/subscription-type.type'; import { SubscriptionType } from '@ghostfolio/common/types/subscription-type.type';
import { Account, Tag } from '@prisma/client'; import { Access, Account, Tag } from '@prisma/client';
import { SystemMessage } from './system-message.interface'; import { SystemMessage } from './system-message.interface';
import { UserSettings } from './user-settings.interface'; import { UserSettings } from './user-settings.interface';
// TODO: Compare with UserWithSettings // TODO: Compare with UserWithSettings
export interface User { export interface User {
access: { access: Pick<Access, 'alias' | 'id' | 'permissions'>[];
alias?: string;
id: string;
}[];
accounts: Account[]; accounts: Account[];
dateOfFirstActivity: Date; dateOfFirstActivity: Date;
id: string; id: string;

Loading…
Cancel
Save