Browse Source

Merge branch 'main' into task/migrate-admin-users-component-to-onpush

pull/7266/head
Thomas Kaul 1 week ago
committed by GitHub
parent
commit
f45c4a94e7
No known key found for this signature in database GPG Key ID: B5690EEEBB952194
  1. 1
      CHANGELOG.md
  2. 2
      apps/client/src/app/components/admin-settings/admin-settings.component.html
  3. 2
      apps/client/src/app/components/holding-detail-dialog/holding-detail-dialog.component.ts
  4. 1
      apps/client/src/app/components/home-overview/home-overview.html
  5. 22
      apps/client/src/app/components/portfolio-performance/portfolio-performance.component.html
  6. 103
      apps/client/src/app/components/portfolio-performance/portfolio-performance.component.ts
  7. 2
      apps/client/src/app/components/user-account-membership/user-account-membership.component.ts
  8. 2
      apps/client/src/app/pages/faq/saas/saas-page.html
  9. 4
      apps/client/src/app/pages/pricing/pricing-page.html
  10. 114
      apps/client/src/locales/messages.nl.xlf
  11. 2
      prisma/schema.prisma

1
CHANGELOG.md

@ -15,6 +15,7 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
- Set the change detection strategy to `OnPush` in the _FIRE_ page - Set the change detection strategy to `OnPush` in the _FIRE_ page
- Set the change detection strategy to `OnPush` in the users section of the admin control panel - Set the change detection strategy to `OnPush` in the users section of the admin control panel
- Improved the language localization for Dutch (`nl`)
- Improved the language localization for French (`fr`) - Improved the language localization for French (`fr`)
- Improved the language localization for German (`de`) - Improved the language localization for German (`de`)

2
apps/client/src/app/components/admin-settings/admin-settings.component.html

@ -21,7 +21,7 @@
<mat-card-actions class="pb-3 pt-0 px-3"> <mat-card-actions class="pb-3 pt-0 px-3">
<a <a
class="special" class="special"
href="mailto:hi@ghostfol.io?Subject=Ghostfolio Premium Data Provider&body=Hello,%0D%0DI am interested in the Ghostfolio Premium data provider. Could you please give me access so I can try it for some time?%0D%0DKind regards" href="mailto:hi@ghostfol.io?subject=Ghostfolio Premium Data Provider&body=Hello,%0D%0DI am interested in the Ghostfolio Premium data provider. Could you please give me access so I can try it for some time?%0D%0DKind regards"
mat-flat-button mat-flat-button
> >
<ng-container i18n>Get Access</ng-container> <ng-container i18n>Get Access</ng-container>

2
apps/client/src/app/components/holding-detail-dialog/holding-detail-dialog.component.ts

@ -456,7 +456,7 @@ export class GfHoldingDetailDialogComponent implements OnInit {
this.assetProfile?.symbol ? ` (${this.assetProfile.symbol})` : '' this.assetProfile?.symbol ? ` (${this.assetProfile.symbol})` : ''
}`; }`;
this.reportDataGlitchMail = `mailto:hi@ghostfol.io?Subject=${reportDataGlitchSubject}&body=Hello%0D%0DI would like to report a data glitch for%0D%0DSymbol: ${this.assetProfile?.symbol}%0DData Source: ${this.assetProfile?.dataSource}%0D%0DAdditional notes:%0D%0DCan you please take a look?%0D%0DKind regards`; this.reportDataGlitchMail = `mailto:hi@ghostfol.io?subject=${reportDataGlitchSubject}&body=Hello%0D%0DI would like to report a data glitch for%0D%0DSymbol: ${this.assetProfile?.symbol}%0DData Source: ${this.assetProfile?.dataSource}%0D%0DAdditional notes:%0D%0DCan you please take a look?%0D%0DKind regards`;
if (this.assetProfile?.assetClass) { if (this.assetProfile?.assetClass) {
this.assetClass = translate(this.assetProfile?.assetClass); this.assetClass = translate(this.assetProfile?.assetClass);

1
apps/client/src/app/components/home-overview/home-overview.html

@ -86,7 +86,6 @@
<div class="col"> <div class="col">
<gf-portfolio-performance <gf-portfolio-performance
class="pb-4" class="pb-4"
[deviceType]="deviceType()"
[errors]="errors()" [errors]="errors()"
[isLoading]="isLoadingPerformance()" [isLoading]="isLoadingPerformance()"
[locale]="user()?.settings?.locale" [locale]="user()?.settings?.locale"

22
apps/client/src/app/components/portfolio-performance/portfolio-performance.component.html

@ -1,7 +1,7 @@
<div class="container p-0"> <div class="container p-0">
<div class="no-gutters row"> <div class="no-gutters row">
<div class="status-container text-muted text-right"> <div class="status-container text-muted text-right">
@if (errors?.length > 0 && !isLoading) { @if (errors()?.length > 0 && !isLoading()) {
<ion-icon <ion-icon
i18n-title i18n-title
name="time-outline" name="time-outline"
@ -10,7 +10,7 @@
/> />
} }
</div> </div>
@if (isLoading) { @if (isLoading()) {
<div class="align-items-center d-flex"> <div class="align-items-center d-flex">
<ngx-skeleton-loader <ngx-skeleton-loader
animation="pulse" animation="pulse"
@ -24,25 +24,25 @@
} }
<div <div
class="display-4 font-weight-bold m-0 text-center value-container" class="display-4 font-weight-bold m-0 text-center value-container"
[hidden]="isLoading" [hidden]="isLoading()"
> >
<span #value id="value"></span> <span #value id="value"></span>
</div> </div>
<div class="currency-container flex-grow-1 px-1"> <div class="currency-container flex-grow-1 px-1">
{{ unit }} {{ unit() }}
</div> </div>
</div> </div>
@if (showDetails) { @if (showDetails()) {
<div class="row"> <div class="row">
<div class="d-flex col justify-content-end"> <div class="d-flex col justify-content-end">
<gf-value <gf-value
[colorizeSign]="true" [colorizeSign]="true"
[isCurrency]="true" [isCurrency]="true"
[locale]="locale" [locale]="locale()"
[value]=" [value]="
isLoading isLoading()
? undefined ? undefined
: performance?.netPerformanceWithCurrencyEffect : performance().netPerformanceWithCurrencyEffect
" "
/> />
</div> </div>
@ -50,11 +50,11 @@
<gf-value <gf-value
[colorizeSign]="true" [colorizeSign]="true"
[isPercent]="true" [isPercent]="true"
[locale]="locale" [locale]="locale()"
[value]=" [value]="
isLoading isLoading()
? undefined ? undefined
: performance?.netPerformancePercentageWithCurrencyEffect : performance().netPerformancePercentageWithCurrencyEffect
" "
/> />
</div> </div>

103
apps/client/src/app/components/portfolio-performance/portfolio-performance.component.ts

@ -13,10 +13,11 @@ import { GfValueComponent } from '@ghostfolio/ui/value';
import { import {
ChangeDetectionStrategy, ChangeDetectionStrategy,
Component, Component,
effect,
ElementRef, ElementRef,
Input, inject,
OnChanges, input,
ViewChild viewChild
} from '@angular/core'; } from '@angular/core';
import { IonIcon } from '@ionic/angular/standalone'; import { IonIcon } from '@ionic/angular/standalone';
import { CountUp } from 'countup.js'; import { CountUp } from 'countup.js';
@ -32,58 +33,68 @@ import { NgxSkeletonLoaderModule } from 'ngx-skeleton-loader';
styleUrls: ['./portfolio-performance.component.scss'], styleUrls: ['./portfolio-performance.component.scss'],
templateUrl: './portfolio-performance.component.html' templateUrl: './portfolio-performance.component.html'
}) })
export class GfPortfolioPerformanceComponent implements OnChanges { export class GfPortfolioPerformanceComponent {
@Input() deviceType: string; public readonly errors = input<ResponseError['errors']>();
@Input() errors: ResponseError['errors']; public readonly isLoading = input<boolean>();
@Input() isLoading: boolean; public readonly locale = input<string>(getLocale());
@Input() locale = getLocale(); public readonly performance = input.required<PortfolioPerformance>();
@Input() performance: PortfolioPerformance; public readonly precision = input.required<number, number>({
@Input() precision: number; transform: (value) => {
@Input() showDetails: boolean; return value >= 0 ? value : 2;
@Input() unit: string; }
});
public readonly showDetails = input<boolean>(false);
public readonly unit = input.required<string>();
@ViewChild('value') value: ElementRef; private readonly value =
viewChild.required<ElementRef<HTMLSpanElement>>('value');
public constructor(private notificationService: NotificationService) { private readonly notificationService = inject(NotificationService);
addIcons({ timeOutline });
}
public ngOnChanges() { public constructor() {
this.precision = this.precision >= 0 ? this.precision : 2; addIcons({ timeOutline });
if (this.isLoading) { effect(() => {
if (this.value?.nativeElement) { if (this.isLoading()) {
this.value.nativeElement.innerHTML = ''; if (this.value().nativeElement) {
} this.value().nativeElement.innerHTML = '';
} else { }
if (isNumber(this.performance?.currentValueInBaseCurrency)) {
new CountUp('value', this.performance?.currentValueInBaseCurrency, {
decimal: getNumberFormatDecimal(this.locale),
decimalPlaces: this.precision,
duration: 1,
separator: getNumberFormatGroup(this.locale)
}).start();
} else if (this.showDetails === false) {
new CountUp(
'value',
this.performance?.netPerformancePercentageWithCurrencyEffect * 100,
{
decimal: getNumberFormatDecimal(this.locale),
decimalPlaces: 2,
duration: 1,
separator: getNumberFormatGroup(this.locale)
}
).start();
} else { } else {
this.value.nativeElement.innerHTML = '*****'; if (isNumber(this.performance().currentValueInBaseCurrency)) {
new CountUp('value', this.performance().currentValueInBaseCurrency, {
decimal: getNumberFormatDecimal(this.locale()),
decimalPlaces: this.precision(),
duration: 1,
separator: getNumberFormatGroup(this.locale())
}).start();
} else if (this.showDetails() === false) {
new CountUp(
'value',
this.performance().netPerformancePercentageWithCurrencyEffect * 100,
{
decimal: getNumberFormatDecimal(this.locale()),
decimalPlaces: 2,
duration: 1,
separator: getNumberFormatGroup(this.locale())
}
).start();
} else {
this.value().nativeElement.innerHTML = '*****';
}
} }
} });
} }
public onShowErrors() { protected onShowErrors() {
const errorMessageParts = []; const errors = this.errors();
if (!errors?.length) {
return;
}
const errorMessageParts: string[] = [];
for (const error of this.errors) { for (const error of errors) {
errorMessageParts.push(`${error.symbol} (${error.dataSource})`); errorMessageParts.push(`${error.symbol} (${error.dataSource})`);
} }

2
apps/client/src/app/components/user-account-membership/user-account-membership.component.ts

@ -52,7 +52,7 @@ export class GfUserAccountMembershipComponent {
public priceId: string; public priceId: string;
public routerLinkPricing = publicRoutes.pricing.routerLink; public routerLinkPricing = publicRoutes.pricing.routerLink;
public trySubscriptionMail = public trySubscriptionMail =
'mailto:hi@ghostfol.io?Subject=Ghostfolio Premium Trial&body=Hello%0D%0DI am interested in Ghostfolio Premium. Can you please send me a coupon code to try it for some time?%0D%0DKind regards'; 'mailto:hi@ghostfol.io?subject=Ghostfolio Premium Trial&body=Hello%0D%0DI am interested in Ghostfolio Premium. Can you please send me a coupon code to try it for some time?%0D%0DKind regards';
public user: User; public user: User;
public constructor( public constructor(

2
apps/client/src/app/pages/faq/saas/saas-page.html

@ -96,7 +96,7 @@
</mat-card-header> </mat-card-header>
<mat-card-content <mat-card-content
>Request your student discount >Request your student discount
<a href="mailto:hi@ghostfol.io?Subject=Student Discount">here</a> with <a href="mailto:hi@ghostfol.io?subject=Student Discount">here</a> with
your university e-mail address.</mat-card-content your university e-mail address.</mat-card-content
> >
</mat-card> </mat-card>

4
apps/client/src/app/pages/pricing/pricing-page.html

@ -332,7 +332,7 @@
} }
<ng-container i18n>please</ng-container> <ng-container i18n>please</ng-container>
<ng-container>&nbsp;</ng-container> <ng-container>&nbsp;</ng-container>
<a href="mailto:hi@ghostfol.io?Subject=Referral link for..." i18n <a href="mailto:hi@ghostfol.io?subject=Referral link for..." i18n
>contact us</a >contact us</a
> >
<ng-container>&nbsp;</ng-container> <ng-container>&nbsp;</ng-container>
@ -343,7 +343,7 @@
<ng-container>&nbsp;</ng-container> <ng-container>&nbsp;</ng-container>
<ng-container i18n>Request it</ng-container> <ng-container i18n>Request it</ng-container>
<ng-container>&nbsp;</ng-container> <ng-container>&nbsp;</ng-container>
<a href="mailto:hi@ghostfol.io?Subject=Student Discount" i18n>here</a> <a href="mailto:hi@ghostfol.io?subject=Student Discount" i18n>here</a>
<ng-container>&nbsp;</ng-container> <ng-container>&nbsp;</ng-container>
<ng-container i18n>with your university e-mail address</ng-container>. <ng-container i18n>with your university e-mail address</ng-container>.
</p> </p>

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

@ -311,7 +311,7 @@
</trans-unit> </trans-unit>
<trans-unit id="8282940047848889809" datatype="html"> <trans-unit id="8282940047848889809" datatype="html">
<source>Paid</source> <source>Paid</source>
<target state="new">Paid</target> <target state="translated">Betaald</target>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">apps/client/src/app/components/user-detail-dialog/user-detail-dialog.component.ts</context> <context context-type="sourcefile">apps/client/src/app/components/user-detail-dialog/user-detail-dialog.component.ts</context>
<context context-type="linenumber">122</context> <context context-type="linenumber">122</context>
@ -387,7 +387,7 @@
</trans-unit> </trans-unit>
<trans-unit id="5611965261696422586" datatype="html"> <trans-unit id="5611965261696422586" datatype="html">
<source>and is driven by the efforts of its <x id="START_LINK" ctype="x-a" equiv-text="&lt;a href=&quot;https://github.com/ghostfolio/ghostfolio/graphs/contributors&quot; i18n-title title=&quot;Contributors to Ghostfolio&quot; &gt;"/>contributors<x id="CLOSE_LINK" ctype="x-a" equiv-text="&lt;/a &gt;"/></source> <source>and is driven by the efforts of its <x id="START_LINK" ctype="x-a" equiv-text="&lt;a href=&quot;https://github.com/ghostfolio/ghostfolio/graphs/contributors&quot; i18n-title title=&quot;Contributors to Ghostfolio&quot; &gt;"/>contributors<x id="CLOSE_LINK" ctype="x-a" equiv-text="&lt;/a &gt;"/></source>
<target state="new">en wordt gedreven door de inspanningen van zijn <x id="START_LINK" ctype="x-a" equiv-text="&lt;a href=&quot;https://github.com/ghostfolio/ghostfolio/graphs/contributors&quot; title=&quot;Contributors to Ghostfolio&quot; &gt;"/>bijdragers<x id="CLOSE_LINK" ctype="x-a" equiv-text="&lt;/a &gt;"/></target> <target state="translated">en wordt gedreven door de inspanningen van zijn <x id="START_LINK" ctype="x-a" equiv-text="&lt;a href=&quot;https://github.com/ghostfolio/ghostfolio/graphs/contributors&quot; title=&quot;Contributors to Ghostfolio&quot; &gt;"/>bijdragers<x id="CLOSE_LINK" ctype="x-a" equiv-text="&lt;/a &gt;"/></target>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">apps/client/src/app/pages/about/overview/about-overview-page.html</context> <context context-type="sourcefile">apps/client/src/app/pages/about/overview/about-overview-page.html</context>
<context context-type="linenumber">50</context> <context context-type="linenumber">50</context>
@ -479,7 +479,7 @@
</trans-unit> </trans-unit>
<trans-unit id="8410000928786197012" datatype="html"> <trans-unit id="8410000928786197012" datatype="html">
<source>Watch the Ghostfol.io Trailer on YouTube</source> <source>Watch the Ghostfol.io Trailer on YouTube</source>
<target state="new">Watch the Ghostfol.io Trailer on YouTube</target> <target state="translated">Bekijk de Ghostfol.io-trailer op YouTube</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">19</context> <context context-type="linenumber">19</context>
@ -751,7 +751,7 @@
</trans-unit> </trans-unit>
<trans-unit id="2047393478951255414" datatype="html"> <trans-unit id="2047393478951255414" datatype="html">
<source>Creation</source> <source>Creation</source>
<target state="new">Creation</target> <target state="translated">Aanmaakdatum</target>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">apps/client/src/app/components/user-detail-dialog/user-detail-dialog.html</context> <context context-type="sourcefile">apps/client/src/app/components/user-detail-dialog/user-detail-dialog.html</context>
<context context-type="linenumber">145</context> <context context-type="linenumber">145</context>
@ -899,7 +899,7 @@
</trans-unit> </trans-unit>
<trans-unit id="273949409065292025" datatype="html"> <trans-unit id="273949409065292025" datatype="html">
<source>Energy</source> <source>Energy</source>
<target state="new">Energy</target> <target state="translated">Energie</target>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">libs/ui/src/lib/i18n.ts</context> <context context-type="sourcefile">libs/ui/src/lib/i18n.ts</context>
<context context-type="linenumber">94</context> <context context-type="linenumber">94</context>
@ -1127,7 +1127,7 @@
</trans-unit> </trans-unit>
<trans-unit id="8793726805339626615" datatype="html"> <trans-unit id="8793726805339626615" datatype="html">
<source>Ghostfolio in Numbers: Monthly Active Users (MAU)</source> <source>Ghostfolio in Numbers: Monthly Active Users (MAU)</source>
<target state="new">Ghostfolio in Numbers: Monthly Active Users (MAU)</target> <target state="translated">Ghostfolio in cijfers: maandelijks actieve gebruikers (MAU)</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">63</context> <context context-type="linenumber">63</context>
@ -1251,7 +1251,7 @@
</trans-unit> </trans-unit>
<trans-unit id="4432485267082955422" datatype="html"> <trans-unit id="4432485267082955422" datatype="html">
<source>Consumer Defensive</source> <source>Consumer Defensive</source>
<target state="new">Consumer Defensive</target> <target state="translated">Basisconsumptiegoederen</target>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">libs/ui/src/lib/i18n.ts</context> <context context-type="sourcefile">libs/ui/src/lib/i18n.ts</context>
<context context-type="linenumber">93</context> <context context-type="linenumber">93</context>
@ -1319,7 +1319,7 @@
</trans-unit> </trans-unit>
<trans-unit id="3848479214898655176" datatype="html"> <trans-unit id="3848479214898655176" datatype="html">
<source>Utilities</source> <source>Utilities</source>
<target state="new">Utilities</target> <target state="translated">Nutsbedrijven</target>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">libs/ui/src/lib/i18n.ts</context> <context context-type="sourcefile">libs/ui/src/lib/i18n.ts</context>
<context context-type="linenumber">101</context> <context context-type="linenumber">101</context>
@ -1343,7 +1343,7 @@
</trans-unit> </trans-unit>
<trans-unit id="5463045633785723738" datatype="html"> <trans-unit id="5463045633785723738" datatype="html">
<source>Coupon</source> <source>Coupon</source>
<target state="new">Coupon</target> <target state="translated">Coupon</target>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">apps/client/src/app/components/user-detail-dialog/user-detail-dialog.component.ts</context> <context context-type="sourcefile">apps/client/src/app/components/user-detail-dialog/user-detail-dialog.component.ts</context>
<context context-type="linenumber">127</context> <context context-type="linenumber">127</context>
@ -1563,7 +1563,7 @@
</trans-unit> </trans-unit>
<trans-unit id="8643034887919513109" datatype="html"> <trans-unit id="8643034887919513109" datatype="html">
<source>Financial Planning</source> <source>Financial Planning</source>
<target state="new">Financial Planning</target> <target state="translated">Financiële planning</target>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">libs/ui/src/lib/i18n.ts</context> <context context-type="sourcefile">libs/ui/src/lib/i18n.ts</context>
<context context-type="linenumber">108</context> <context context-type="linenumber">108</context>
@ -1707,7 +1707,7 @@
</trans-unit> </trans-unit>
<trans-unit id="7410432243549869948" datatype="html"> <trans-unit id="7410432243549869948" datatype="html">
<source>Duration</source> <source>Duration</source>
<target state="new">Duration</target> <target state="translated">Looptijd</target>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">apps/client/src/app/components/admin-overview/admin-overview.html</context> <context context-type="sourcefile">apps/client/src/app/components/admin-overview/admin-overview.html</context>
<context context-type="linenumber">172</context> <context context-type="linenumber">172</context>
@ -1923,7 +1923,7 @@
</trans-unit> </trans-unit>
<trans-unit id="6999515396807067782" datatype="html"> <trans-unit id="6999515396807067782" datatype="html">
<source>Trial</source> <source>Trial</source>
<target state="new">Trial</target> <target state="translated">Proefperiode</target>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">apps/client/src/app/components/user-detail-dialog/user-detail-dialog.component.ts</context> <context context-type="sourcefile">apps/client/src/app/components/user-detail-dialog/user-detail-dialog.component.ts</context>
<context context-type="linenumber">126</context> <context context-type="linenumber">126</context>
@ -2071,7 +2071,7 @@
</trans-unit> </trans-unit>
<trans-unit id="2691624743109891676" datatype="html"> <trans-unit id="2691624743109891676" datatype="html">
<source>Consumer Cyclical</source> <source>Consumer Cyclical</source>
<target state="new">Consumer Cyclical</target> <target state="translated">Cyclische consumptiegoederen</target>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">libs/ui/src/lib/i18n.ts</context> <context context-type="sourcefile">libs/ui/src/lib/i18n.ts</context>
<context context-type="linenumber">92</context> <context context-type="linenumber">92</context>
@ -2467,7 +2467,7 @@
</trans-unit> </trans-unit>
<trans-unit id="1541521390115871091" datatype="html"> <trans-unit id="1541521390115871091" datatype="html">
<source>{VAR_PLURAL, plural, =1 {Profile} other {Profiles}}</source> <source>{VAR_PLURAL, plural, =1 {Profile} other {Profiles}}</source>
<target state="new">{VAR_PLURAL, plural, =1 {Profile} other {Profiles}}</target> <target state="translated">{VAR_PLURAL, plural, =1 {Profiel} other {Profielen}}</target>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">apps/client/src/app/components/admin-market-data/admin-market-data.html</context> <context context-type="sourcefile">apps/client/src/app/components/admin-market-data/admin-market-data.html</context>
<context context-type="linenumber">249</context> <context context-type="linenumber">249</context>
@ -2707,7 +2707,7 @@
</trans-unit> </trans-unit>
<trans-unit id="6131560364436366828" datatype="html"> <trans-unit id="6131560364436366828" datatype="html">
<source>Apply current market price</source> <source>Apply current market price</source>
<target state="new">Apply current market price</target> <target state="translated">Huidige marktprijs toepassen</target>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">apps/client/src/app/pages/portfolio/activities/create-or-update-activity-dialog/create-or-update-activity-dialog.html</context> <context context-type="sourcefile">apps/client/src/app/pages/portfolio/activities/create-or-update-activity-dialog/create-or-update-activity-dialog.html</context>
<context context-type="linenumber">238</context> <context context-type="linenumber">238</context>
@ -2715,7 +2715,7 @@
</trans-unit> </trans-unit>
<trans-unit id="6135731497699355929" datatype="html"> <trans-unit id="6135731497699355929" datatype="html">
<source>Subscription History</source> <source>Subscription History</source>
<target state="new">Subscription History</target> <target state="translated">Abonnementsgeschiedenis</target>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">apps/client/src/app/components/user-detail-dialog/user-detail-dialog.html</context> <context context-type="sourcefile">apps/client/src/app/components/user-detail-dialog/user-detail-dialog.html</context>
<context context-type="linenumber">136</context> <context context-type="linenumber">136</context>
@ -2867,7 +2867,7 @@
</trans-unit> </trans-unit>
<trans-unit id="4102764207131986196" datatype="html"> <trans-unit id="4102764207131986196" datatype="html">
<source>Contributors to Ghostfolio</source> <source>Contributors to Ghostfolio</source>
<target state="new">Contributors to Ghostfolio</target> <target state="translated">Bijdragers aan Ghostfolio</target>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">apps/client/src/app/pages/about/overview/about-overview-page.html</context> <context context-type="sourcefile">apps/client/src/app/pages/about/overview/about-overview-page.html</context>
<context context-type="linenumber">54</context> <context context-type="linenumber">54</context>
@ -2907,7 +2907,7 @@
</trans-unit> </trans-unit>
<trans-unit id="8186013988289067040" datatype="html"> <trans-unit id="8186013988289067040" datatype="html">
<source>Code</source> <source>Code</source>
<target state="new">Code</target> <target state="translated">Code</target>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">apps/client/src/app/components/admin-overview/admin-overview.html</context> <context context-type="sourcefile">apps/client/src/app/components/admin-overview/admin-overview.html</context>
<context context-type="linenumber">159</context> <context context-type="linenumber">159</context>
@ -3215,7 +3215,7 @@
</trans-unit> </trans-unit>
<trans-unit id="8340410730497371637" datatype="html"> <trans-unit id="8340410730497371637" datatype="html">
<source>Communication Services</source> <source>Communication Services</source>
<target state="new">Communication Services</target> <target state="translated">Communicatiediensten</target>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">libs/ui/src/lib/i18n.ts</context> <context context-type="sourcefile">libs/ui/src/lib/i18n.ts</context>
<context context-type="linenumber">91</context> <context context-type="linenumber">91</context>
@ -3275,7 +3275,7 @@
</trans-unit> </trans-unit>
<trans-unit id="8894377483833272091" datatype="html"> <trans-unit id="8894377483833272091" datatype="html">
<source>Price</source> <source>Price</source>
<target state="new">Price</target> <target state="translated">Prijs</target>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">apps/client/src/app/components/user-detail-dialog/user-detail-dialog.html</context> <context context-type="sourcefile">apps/client/src/app/components/user-detail-dialog/user-detail-dialog.html</context>
<context context-type="linenumber">171</context> <context context-type="linenumber">171</context>
@ -3283,7 +3283,7 @@
</trans-unit> </trans-unit>
<trans-unit id="6418462810730461014" datatype="html"> <trans-unit id="6418462810730461014" datatype="html">
<source>Data Gathering Frequency</source> <source>Data Gathering Frequency</source>
<target state="new">Data Gathering Frequency</target> <target state="translated">Frequentie van gegevensverzameling</target>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html</context> <context context-type="sourcefile">apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html</context>
<context context-type="linenumber">454</context> <context context-type="linenumber">454</context>
@ -3447,7 +3447,7 @@
</trans-unit> </trans-unit>
<trans-unit id="4733690367258997247" datatype="html"> <trans-unit id="4733690367258997247" datatype="html">
<source>just now</source> <source>just now</source>
<target state="new">just now</target> <target state="translated">zojuist</target>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">apps/client/src/app/components/admin-users/admin-users.component.ts</context> <context context-type="sourcefile">apps/client/src/app/components/admin-users/admin-users.component.ts</context>
<context context-type="linenumber">211</context> <context context-type="linenumber">211</context>
@ -3739,7 +3739,7 @@
</trans-unit> </trans-unit>
<trans-unit id="2640607428459636406" datatype="html"> <trans-unit id="2640607428459636406" datatype="html">
<source>Hourly</source> <source>Hourly</source>
<target state="new">Hourly</target> <target state="translated">Elk uur</target>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.component.ts</context> <context context-type="sourcefile">apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.component.ts</context>
<context context-type="linenumber">214</context> <context context-type="linenumber">214</context>
@ -3831,7 +3831,7 @@
</trans-unit> </trans-unit>
<trans-unit id="3323137014509063489" datatype="html"> <trans-unit id="3323137014509063489" datatype="html">
<source>Expiration</source> <source>Expiration</source>
<target state="new">Expiration</target> <target state="translated">Vervaldatum</target>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">apps/client/src/app/components/user-detail-dialog/user-detail-dialog.html</context> <context context-type="sourcefile">apps/client/src/app/components/user-detail-dialog/user-detail-dialog.html</context>
<context context-type="linenumber">204</context> <context context-type="linenumber">204</context>
@ -3951,7 +3951,7 @@
</trans-unit> </trans-unit>
<trans-unit id="5515771028435710194" datatype="html"> <trans-unit id="5515771028435710194" datatype="html">
<source>Loan</source> <source>Loan</source>
<target state="new">Loan</target> <target state="translated">Lening</target>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">libs/ui/src/lib/i18n.ts</context> <context context-type="sourcefile">libs/ui/src/lib/i18n.ts</context>
<context context-type="linenumber">64</context> <context context-type="linenumber">64</context>
@ -4051,7 +4051,7 @@
</trans-unit> </trans-unit>
<trans-unit id="7701575534145602925" datatype="html"> <trans-unit id="7701575534145602925" datatype="html">
<source>Explore <x id="INTERPOLATION" equiv-text="{{ item.title }}"/></source> <source>Explore <x id="INTERPOLATION" equiv-text="{{ item.title }}"/></source>
<target state="new">Explore <x id="INTERPOLATION" equiv-text="{{ item.title }}"/></target> <target state="translated">Verken <x id="INTERPOLATION" equiv-text="{{ item.title }}"/></target>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">apps/client/src/app/pages/resources/overview/resources-overview.component.html</context> <context context-type="sourcefile">apps/client/src/app/pages/resources/overview/resources-overview.component.html</context>
<context context-type="linenumber">11</context> <context context-type="linenumber">11</context>
@ -4463,7 +4463,7 @@
</trans-unit> </trans-unit>
<trans-unit id="5765523585863707029" datatype="html"> <trans-unit id="5765523585863707029" datatype="html">
<source>Technology</source> <source>Technology</source>
<target state="new">Technology</target> <target state="translated">Technologie</target>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">libs/ui/src/lib/i18n.ts</context> <context context-type="sourcefile">libs/ui/src/lib/i18n.ts</context>
<context context-type="linenumber">100</context> <context context-type="linenumber">100</context>
@ -4479,7 +4479,7 @@
</trans-unit> </trans-unit>
<trans-unit id="5915287617703658226" datatype="html"> <trans-unit id="5915287617703658226" datatype="html">
<source>Total</source> <source>Total</source>
<target state="new">Total</target> <target state="translated">Totaal</target>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">apps/client/src/app/components/user-detail-dialog/user-detail-dialog.html</context> <context context-type="sourcefile">apps/client/src/app/components/user-detail-dialog/user-detail-dialog.html</context>
<context context-type="linenumber">155</context> <context context-type="linenumber">155</context>
@ -4599,7 +4599,7 @@
</trans-unit> </trans-unit>
<trans-unit id="237127378624497814" datatype="html"> <trans-unit id="237127378624497814" datatype="html">
<source>Upgrade to Ghostfolio Premium</source> <source>Upgrade to Ghostfolio Premium</source>
<target state="new">Upgrade to Ghostfolio Premium</target> <target state="translated">Upgraden naar Ghostfolio Premium</target>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">libs/ui/src/lib/premium-indicator/premium-indicator.component.html</context> <context context-type="sourcefile">libs/ui/src/lib/premium-indicator/premium-indicator.component.html</context>
<context context-type="linenumber">4</context> <context context-type="linenumber">4</context>
@ -4675,7 +4675,7 @@
</trans-unit> </trans-unit>
<trans-unit id="9167786874272926575" datatype="html"> <trans-unit id="9167786874272926575" datatype="html">
<source>Web</source> <source>Web</source>
<target state="new">Web</target> <target state="translated">Web</target>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">libs/ui/src/lib/i18n.ts</context> <context context-type="sourcefile">libs/ui/src/lib/i18n.ts</context>
<context context-type="linenumber">120</context> <context context-type="linenumber">120</context>
@ -4747,7 +4747,7 @@
</trans-unit> </trans-unit>
<trans-unit id="1806667489382256324" datatype="html"> <trans-unit id="1806667489382256324" datatype="html">
<source>Category</source> <source>Category</source>
<target state="new">Category</target> <target state="translated">Categorie</target>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">apps/client/src/app/pages/resources/personal-finance-tools/product-page.html</context> <context context-type="sourcefile">apps/client/src/app/pages/resources/personal-finance-tools/product-page.html</context>
<context context-type="linenumber">77</context> <context context-type="linenumber">77</context>
@ -4779,7 +4779,7 @@
</trans-unit> </trans-unit>
<trans-unit id="6300009182465422833" datatype="html"> <trans-unit id="6300009182465422833" datatype="html">
<source>Ghostfolio in Numbers: Pulls on Docker Hub</source> <source>Ghostfolio in Numbers: Pulls on Docker Hub</source>
<target state="new">Ghostfolio in Numbers: Pulls on Docker Hub</target> <target state="translated">Ghostfolio in cijfers: downloads op Docker Hub</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">101</context> <context context-type="linenumber">101</context>
@ -5151,7 +5151,7 @@
</trans-unit> </trans-unit>
<trans-unit id="6945194064393203435" datatype="html"> <trans-unit id="6945194064393203435" datatype="html">
<source>Basic Materials</source> <source>Basic Materials</source>
<target state="new">Basic Materials</target> <target state="translated">Basismaterialen</target>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">libs/ui/src/lib/i18n.ts</context> <context context-type="sourcefile">libs/ui/src/lib/i18n.ts</context>
<context context-type="linenumber">90</context> <context context-type="linenumber">90</context>
@ -5279,7 +5279,7 @@
</trans-unit> </trans-unit>
<trans-unit id="2756436642316668410" datatype="html"> <trans-unit id="2756436642316668410" datatype="html">
<source>Oops! Could not delete the asset profiles.</source> <source>Oops! Could not delete the asset profiles.</source>
<target state="new">Oops! Could not delete the asset profiles.</target> <target state="translated">Oeps! De activaprofielen konden niet worden verwijderd.</target>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">apps/client/src/app/components/admin-market-data/admin-market-data.service.ts</context> <context context-type="sourcefile">apps/client/src/app/components/admin-market-data/admin-market-data.service.ts</context>
<context context-type="linenumber">52</context> <context context-type="linenumber">52</context>
@ -5609,7 +5609,7 @@
</trans-unit> </trans-unit>
<trans-unit id="2191562378582791940" datatype="html"> <trans-unit id="2191562378582791940" datatype="html">
<source>Stock Tracking</source> <source>Stock Tracking</source>
<target state="new">Stock Tracking</target> <target state="translated">Aandelen volgen</target>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">libs/ui/src/lib/i18n.ts</context> <context context-type="sourcefile">libs/ui/src/lib/i18n.ts</context>
<context context-type="linenumber">111</context> <context context-type="linenumber">111</context>
@ -5689,7 +5689,7 @@
</trans-unit> </trans-unit>
<trans-unit id="6075566839446502414" datatype="html"> <trans-unit id="6075566839446502414" datatype="html">
<source>Available on</source> <source>Available on</source>
<target state="new">Available on</target> <target state="translated">Beschikbaar op</target>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">apps/client/src/app/pages/resources/personal-finance-tools/product-page.html</context> <context context-type="sourcefile">apps/client/src/app/pages/resources/personal-finance-tools/product-page.html</context>
<context context-type="linenumber">130</context> <context context-type="linenumber">130</context>
@ -5897,7 +5897,7 @@
</trans-unit> </trans-unit>
<trans-unit id="4581276194280068721" datatype="html"> <trans-unit id="4581276194280068721" datatype="html">
<source>Industrials</source> <source>Industrials</source>
<target state="new">Industrials</target> <target state="translated">Industrie</target>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">libs/ui/src/lib/i18n.ts</context> <context context-type="sourcefile">libs/ui/src/lib/i18n.ts</context>
<context context-type="linenumber">97</context> <context context-type="linenumber">97</context>
@ -6013,7 +6013,7 @@
</trans-unit> </trans-unit>
<trans-unit id="7194017842579795231" datatype="html"> <trans-unit id="7194017842579795231" datatype="html">
<source>Healthcare</source> <source>Healthcare</source>
<target state="new">Healthcare</target> <target state="translated">Gezondheidszorg</target>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">libs/ui/src/lib/i18n.ts</context> <context context-type="sourcefile">libs/ui/src/lib/i18n.ts</context>
<context context-type="linenumber">96</context> <context context-type="linenumber">96</context>
@ -6029,7 +6029,7 @@
</trans-unit> </trans-unit>
<trans-unit id="9028573429495160158" datatype="html"> <trans-unit id="9028573429495160158" datatype="html">
<source>Portfolio Filters</source> <source>Portfolio Filters</source>
<target state="new">Portfolio Filters</target> <target state="translated">Portefeuillefilters</target>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">apps/client/src/app/components/user-account-access/create-or-update-access-dialog/create-or-update-access-dialog.html</context> <context context-type="sourcefile">apps/client/src/app/components/user-account-access/create-or-update-access-dialog/create-or-update-access-dialog.html</context>
<context context-type="linenumber">63</context> <context context-type="linenumber">63</context>
@ -6285,7 +6285,7 @@
</trans-unit> </trans-unit>
<trans-unit id="3995811497329884593" datatype="html"> <trans-unit id="3995811497329884593" datatype="html">
<source>Expires <x id="INTERPOLATION" equiv-text="{{ formatDistanceToNow(element.subscription.expiresAt) }}"/> (<x id="INTERPOLATION_1" equiv-text="{{ element.subscription.expiresAt | date: defaultDateFormat }}"/>)</source> <source>Expires <x id="INTERPOLATION" equiv-text="{{ formatDistanceToNow(element.subscription.expiresAt) }}"/> (<x id="INTERPOLATION_1" equiv-text="{{ element.subscription.expiresAt | date: defaultDateFormat }}"/>)</source>
<target state="new">Expires <x id="INTERPOLATION" equiv-text="{{ formatDistanceToNow(element.subscription.expiresAt) }}"/> (<x id="INTERPOLATION_1" equiv-text="{{ element.subscription.expiresAt | date: defaultDateFormat }}"/>)</target> <target state="translated">Verloopt <x id="INTERPOLATION" equiv-text="{{ formatDistanceToNow(element.subscription.expiresAt) }}"/> (<x id="INTERPOLATION_1" equiv-text="{{ element.subscription.expiresAt | date: defaultDateFormat }}"/>)</target>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">apps/client/src/app/components/admin-users/admin-users.html</context> <context context-type="sourcefile">apps/client/src/app/components/admin-users/admin-users.html</context>
<context context-type="linenumber">34</context> <context context-type="linenumber">34</context>
@ -6313,7 +6313,7 @@
</trans-unit> </trans-unit>
<trans-unit id="2522011507610634749" datatype="html"> <trans-unit id="2522011507610634749" datatype="html">
<source>Fetch market price</source> <source>Fetch market price</source>
<target state="new">Fetch market price</target> <target state="translated">Marktprijs ophalen</target>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">libs/ui/src/lib/historical-market-data-editor/historical-market-data-editor-dialog/historical-market-data-editor-dialog.html</context> <context context-type="sourcefile">libs/ui/src/lib/historical-market-data-editor/historical-market-data-editor-dialog/historical-market-data-editor-dialog.html</context>
<context context-type="linenumber">40</context> <context context-type="linenumber">40</context>
@ -6389,7 +6389,7 @@
</trans-unit> </trans-unit>
<trans-unit id="2839679566742557360" datatype="html"> <trans-unit id="2839679566742557360" datatype="html">
<source>Find a holding...</source> <source>Find a holding...</source>
<target state="new">Find a holding...</target> <target state="translated">Zoek een positie...</target>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">libs/ui/src/lib/assistant/assistant.component.ts</context> <context context-type="sourcefile">libs/ui/src/lib/assistant/assistant.component.ts</context>
<context context-type="linenumber">448</context> <context context-type="linenumber">448</context>
@ -6442,7 +6442,7 @@
</trans-unit> </trans-unit>
<trans-unit id="2988589012964101797" datatype="html"> <trans-unit id="2988589012964101797" datatype="html">
<source>Daily</source> <source>Daily</source>
<target state="new">Daily</target> <target state="translated">Dagelijks</target>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.component.ts</context> <context context-type="sourcefile">apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.component.ts</context>
<context context-type="linenumber">210</context> <context context-type="linenumber">210</context>
@ -6570,7 +6570,7 @@
</trans-unit> </trans-unit>
<trans-unit id="4943376738492797606" datatype="html"> <trans-unit id="4943376738492797606" datatype="html">
<source>Jump to a page...</source> <source>Jump to a page...</source>
<target state="new">Jump to a page...</target> <target state="translated">Ga naar een pagina...</target>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">libs/ui/src/lib/assistant/assistant.component.ts</context> <context context-type="sourcefile">libs/ui/src/lib/assistant/assistant.component.ts</context>
<context context-type="linenumber">449</context> <context context-type="linenumber">449</context>
@ -6758,7 +6758,7 @@
</trans-unit> </trans-unit>
<trans-unit id="1284643802050750978" datatype="html"> <trans-unit id="1284643802050750978" datatype="html">
<source>Oops! Could not delete the asset profile.</source> <source>Oops! Could not delete the asset profile.</source>
<target state="new">Oops! Could not delete the asset profile.</target> <target state="translated">Oeps! Het activaprofiel kon niet worden verwijderd.</target>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">apps/client/src/app/components/admin-market-data/admin-market-data.service.ts</context> <context context-type="sourcefile">apps/client/src/app/components/admin-market-data/admin-market-data.service.ts</context>
<context context-type="linenumber">51</context> <context context-type="linenumber">51</context>
@ -6862,7 +6862,7 @@
</trans-unit> </trans-unit>
<trans-unit id="1518717392874668219" datatype="html"> <trans-unit id="1518717392874668219" datatype="html">
<source>Do you really want to delete these <x id="count" equiv-text="assetProfileCount"/> asset profiles?</source> <source>Do you really want to delete these <x id="count" equiv-text="assetProfileCount"/> asset profiles?</source>
<target state="new">Do you really want to delete these <x id="count" equiv-text="assetProfileCount"/> asset profiles?</target> <target state="translated">Wil je deze <x id="count" equiv-text="assetProfileCount"/> activaprofielen echt verwijderen?</target>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">apps/client/src/app/components/admin-market-data/admin-market-data.service.ts</context> <context context-type="sourcefile">apps/client/src/app/components/admin-market-data/admin-market-data.service.ts</context>
<context context-type="linenumber">67</context> <context context-type="linenumber">67</context>
@ -7062,7 +7062,7 @@
</trans-unit> </trans-unit>
<trans-unit id="8375528527939577247" datatype="html"> <trans-unit id="8375528527939577247" datatype="html">
<source><x id="START_BLOCK_IF" equiv-text="@if ( assetProfile?.currency &amp;&amp; data.baseCurrency !== assetProfile?.currency ) {"/> Change with currency effect <x id="CLOSE_BLOCK_IF" equiv-text="}"/><x id="START_BLOCK_ELSE" equiv-text="@else {"/> Change <x id="CLOSE_BLOCK_ELSE" equiv-text="}"/></source> <source><x id="START_BLOCK_IF" equiv-text="@if ( assetProfile?.currency &amp;&amp; data.baseCurrency !== assetProfile?.currency ) {"/> Change with currency effect <x id="CLOSE_BLOCK_IF" equiv-text="}"/><x id="START_BLOCK_ELSE" equiv-text="@else {"/> Change <x id="CLOSE_BLOCK_ELSE" equiv-text="}"/></source>
<target state="new"><x id="START_BLOCK_IF" equiv-text="@if ( SymbolProfile?.currency &amp;&amp; data.baseCurrency !== SymbolProfile?.currency ) {"/> Verandering met valuta effect <x id="CLOSE_BLOCK_IF" equiv-text="}"/><x id="START_BLOCK_ELSE" equiv-text="@else {"/> Verandering <x id="CLOSE_BLOCK_ELSE" equiv-text="}"/></target> <target state="translated"><x id="START_BLOCK_IF" equiv-text="@if ( assetProfile?.currency &amp;&amp; data.baseCurrency !== assetProfile?.currency ) {"/> Verandering met valuta-effect <x id="CLOSE_BLOCK_IF" equiv-text="}"/><x id="START_BLOCK_ELSE" equiv-text="@else {"/> Verandering <x id="CLOSE_BLOCK_ELSE" equiv-text="}"/></target>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">apps/client/src/app/components/holding-detail-dialog/holding-detail-dialog.html</context> <context context-type="sourcefile">apps/client/src/app/components/holding-detail-dialog/holding-detail-dialog.html</context>
<context context-type="linenumber">63</context> <context context-type="linenumber">63</context>
@ -7078,7 +7078,7 @@
</trans-unit> </trans-unit>
<trans-unit id="6608617124920241143" datatype="html"> <trans-unit id="6608617124920241143" datatype="html">
<source><x id="START_BLOCK_IF" equiv-text="@if ( assetProfile?.currency &amp;&amp; data.baseCurrency !== assetProfile?.currency ) {"/> Performance with currency effect <x id="CLOSE_BLOCK_IF" equiv-text="}"/><x id="START_BLOCK_ELSE" equiv-text="@else {"/> Performance <x id="CLOSE_BLOCK_ELSE" equiv-text="}"/></source> <source><x id="START_BLOCK_IF" equiv-text="@if ( assetProfile?.currency &amp;&amp; data.baseCurrency !== assetProfile?.currency ) {"/> Performance with currency effect <x id="CLOSE_BLOCK_IF" equiv-text="}"/><x id="START_BLOCK_ELSE" equiv-text="@else {"/> Performance <x id="CLOSE_BLOCK_ELSE" equiv-text="}"/></source>
<target state="new"><x id="START_BLOCK_IF" equiv-text="@if ( SymbolProfile?.currency &amp;&amp; data.baseCurrency !== SymbolProfile?.currency ) {"/> Prestatie met valuta effect <x id="CLOSE_BLOCK_IF" equiv-text="}"/><x id="START_BLOCK_ELSE" equiv-text="@else {"/> Prestatie <x id="CLOSE_BLOCK_ELSE" equiv-text="}"/></target> <target state="translated"><x id="START_BLOCK_IF" equiv-text="@if ( assetProfile?.currency &amp;&amp; data.baseCurrency !== assetProfile?.currency ) {"/> Prestaties met valuta-effect <x id="CLOSE_BLOCK_IF" equiv-text="}"/><x id="START_BLOCK_ELSE" equiv-text="@else {"/> Prestaties <x id="CLOSE_BLOCK_ELSE" equiv-text="}"/></target>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">apps/client/src/app/components/holding-detail-dialog/holding-detail-dialog.html</context> <context context-type="sourcefile">apps/client/src/app/components/holding-detail-dialog/holding-detail-dialog.html</context>
<context context-type="linenumber">83</context> <context context-type="linenumber">83</context>
@ -7126,7 +7126,7 @@
</trans-unit> </trans-unit>
<trans-unit id="8466521722895614996" datatype="html"> <trans-unit id="8466521722895614996" datatype="html">
<source><x id="PH" equiv-text="codeToCopy"/> has been copied to the clipboard</source> <source><x id="PH" equiv-text="codeToCopy"/> has been copied to the clipboard</source>
<target state="new"><x id="PH" equiv-text="codeToCopy"/> has been copied to the clipboard</target> <target state="translated"><x id="PH" equiv-text="codeToCopy"/> is naar het klembord gekopieerd</target>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">apps/client/src/app/components/admin-overview/admin-overview.component.ts</context> <context context-type="sourcefile">apps/client/src/app/components/admin-overview/admin-overview.component.ts</context>
<context context-type="linenumber">382</context> <context context-type="linenumber">382</context>
@ -7146,7 +7146,7 @@
</trans-unit> </trans-unit>
<trans-unit id="6389025757025171607" datatype="html"> <trans-unit id="6389025757025171607" datatype="html">
<source>Compare Ghostfolio to <x id="INTERPOLATION" equiv-text="{{ personalFinanceTool.name }}"/> - <x id="INTERPOLATION_1" equiv-text="{{ personalFinanceTool.slogan }}"/></source> <source>Compare Ghostfolio to <x id="INTERPOLATION" equiv-text="{{ personalFinanceTool.name }}"/> - <x id="INTERPOLATION_1" equiv-text="{{ personalFinanceTool.slogan }}"/></source>
<target state="new">Compare Ghostfolio to <x id="INTERPOLATION" equiv-text="{{ personalFinanceTool.name }}"/> - <x id="INTERPOLATION_1" equiv-text="{{ personalFinanceTool.slogan }}"/></target> <target state="translated">Vergelijk Ghostfolio met <x id="INTERPOLATION" equiv-text="{{ personalFinanceTool.name }}"/> - <x id="INTERPOLATION_1" equiv-text="{{ personalFinanceTool.slogan }}"/></target>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">apps/client/src/app/pages/resources/personal-finance-tools/personal-finance-tools-page.html</context> <context context-type="sourcefile">apps/client/src/app/pages/resources/personal-finance-tools/personal-finance-tools-page.html</context>
<context context-type="linenumber">32</context> <context context-type="linenumber">32</context>
@ -7202,7 +7202,7 @@
</trans-unit> </trans-unit>
<trans-unit id="7521745345796915891" datatype="html"> <trans-unit id="7521745345796915891" datatype="html">
<source>Financial Services</source> <source>Financial Services</source>
<target state="new">Financial Services</target> <target state="translated">Financiële diensten</target>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">libs/ui/src/lib/i18n.ts</context> <context context-type="sourcefile">libs/ui/src/lib/i18n.ts</context>
<context context-type="linenumber">95</context> <context context-type="linenumber">95</context>
@ -7230,7 +7230,7 @@
</trans-unit> </trans-unit>
<trans-unit id="7547813413369998179" datatype="html"> <trans-unit id="7547813413369998179" datatype="html">
<source>Delete <x id="INTERPOLATION" equiv-text="{{ selection.selected.length &gt; 1 ? selection.selected.length : &apos;&apos; }}"/> <x id="ICU" equiv-text="{selection.selected.length, plural, =1 {Profile} other {Profiles} }"/></source> <source>Delete <x id="INTERPOLATION" equiv-text="{{ selection.selected.length &gt; 1 ? selection.selected.length : &apos;&apos; }}"/> <x id="ICU" equiv-text="{selection.selected.length, plural, =1 {Profile} other {Profiles} }"/></source>
<target state="new">Delete <x id="INTERPOLATION" equiv-text="{{ selection.selected.length &gt; 1 ? selection.selected.length : &apos;&apos; }}"/> <x id="ICU" equiv-text="{selection.selected.length, plural, =1 {Profile} other {Profiles} }"/></target> <target state="translated">Verwijder <x id="INTERPOLATION" equiv-text="{{ selection.selected.length &gt; 1 ? selection.selected.length : &apos;&apos; }}"/> <x id="ICU" equiv-text="{selection.selected.length, plural, =1 {Profile} other {Profiles} }"/></target>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">apps/client/src/app/components/admin-market-data/admin-market-data.html</context> <context context-type="sourcefile">apps/client/src/app/components/admin-market-data/admin-market-data.html</context>
<context context-type="linenumber">244</context> <context context-type="linenumber">244</context>
@ -7286,7 +7286,7 @@
</trans-unit> </trans-unit>
<trans-unit id="3527222903865200876" datatype="html"> <trans-unit id="3527222903865200876" datatype="html">
<source>Dividend Tracking</source> <source>Dividend Tracking</source>
<target state="new">Dividend Tracking</target> <target state="translated">Dividend volgen</target>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">libs/ui/src/lib/i18n.ts</context> <context context-type="sourcefile">libs/ui/src/lib/i18n.ts</context>
<context context-type="linenumber">105</context> <context context-type="linenumber">105</context>
@ -7346,7 +7346,7 @@
</trans-unit> </trans-unit>
<trans-unit id="1550367033316836764" datatype="html"> <trans-unit id="1550367033316836764" datatype="html">
<source>Investment Research</source> <source>Investment Research</source>
<target state="new">Investment Research</target> <target state="translated">Beleggingsonderzoek</target>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">libs/ui/src/lib/i18n.ts</context> <context context-type="sourcefile">libs/ui/src/lib/i18n.ts</context>
<context context-type="linenumber">109</context> <context context-type="linenumber">109</context>
@ -7620,7 +7620,7 @@
</trans-unit> </trans-unit>
<trans-unit id="1789421195684815451" datatype="html"> <trans-unit id="1789421195684815451" datatype="html">
<source>Check the system status at</source> <source>Check the system status at</source>
<target state="new">Check the system status at</target> <target state="translated">Controleer de systeemstatus op</target>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">apps/client/src/app/pages/about/overview/about-overview-page.html</context> <context context-type="sourcefile">apps/client/src/app/pages/about/overview/about-overview-page.html</context>
<context context-type="linenumber">59</context> <context context-type="linenumber">59</context>
@ -7760,7 +7760,7 @@
</trans-unit> </trans-unit>
<trans-unit id="1237494164624005096" datatype="html"> <trans-unit id="1237494164624005096" datatype="html">
<source>Ghostfolio in Numbers: Stars on GitHub</source> <source>Ghostfolio in Numbers: Stars on GitHub</source>
<target state="new">Ghostfolio in Numbers: Stars on GitHub</target> <target state="translated">Ghostfolio in cijfers: sterren op GitHub</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">82</context> <context context-type="linenumber">82</context>
@ -8082,7 +8082,7 @@
</trans-unit> </trans-unit>
<trans-unit id="3910789128199500333" datatype="html"> <trans-unit id="3910789128199500333" datatype="html">
<source>ETF Tracking</source> <source>ETF Tracking</source>
<target state="new">ETF Tracking</target> <target state="translated">ETF’s volgen</target>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">libs/ui/src/lib/i18n.ts</context> <context context-type="sourcefile">libs/ui/src/lib/i18n.ts</context>
<context context-type="linenumber">106</context> <context context-type="linenumber">106</context>

2
prisma/schema.prisma

@ -203,11 +203,11 @@ model SymbolProfile {
isActive Boolean @default(true) isActive Boolean @default(true)
isin String? isin String?
name String? name String?
updatedAt DateTime @updatedAt
scraperConfiguration Json? scraperConfiguration Json?
sectors Json? sectors Json?
symbol String symbol String
symbolMapping Json? symbolMapping Json?
updatedAt DateTime @updatedAt
url String? url String?
user User? @relation(fields: [userId], onDelete: Cascade, references: [id]) user User? @relation(fields: [userId], onDelete: Cascade, references: [id])
userId String? userId String?

Loading…
Cancel
Save