diff --git a/CHANGELOG.md b/CHANGELOG.md index b4a0d8891..580cefd54 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -5,18 +5,49 @@ All notable changes to this project will be documented in this file. The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/), and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html). -## Unreleased +## 3.39.0 - 2026-08-01 ### Changed +- Harmonized the data format of the export functionality +- Removed the deprecated `firstOrderDate` attribute from the `GET api/v2/portfolio/performance` endpoint response +- Removed the deprecated `isExcluded` attribute of the account in favor of the _Exclude from Analysis_ tag including a data migration +- Improved the language localization for German (`de`) +- Upgraded `prisma` from version `7.8.0` to `7.9.1` + +### Fixed + +- Fixed the scroll behavior of the page content behind an open dialog +- Fixed the export functionality to only include the accounts of the exported activities if a filter is applied + +## 3.38.0 - 2026-07-31 + +### Added + +- Added support for the date range filter in the export functionality +- Added support for the date range filter on the portfolio activities page + +### Changed + +- Improved the style of the tabs in the account detail dialog on mobile +- Improved the style of the tabs in the holding detail dialog on mobile +- Improved the style of the tabs in the asset profile dialog of the admin control panel on mobile - Improved the style of the empty state in the _Fear & Greed Index_ component +- Added the activity count to the delete menu item of the activities table +- Added the activity count to the deletion confirmation dialog of the activities table - Improved the style of the type filter in the activities table component (experimental) +- Improved the search functionality by trimming the query +- Improved the log output in the search functionality of the _Yahoo Finance_ service for unsupported queries - Improved the performance of the property service by caching the properties in memory +- Improved the validation of the query parameters in the activities endpoints - Improved the language localization for German (`de`) ### Fixed - Fixed the duplicate detection during the activity import so it treats an omitted comment the same as null and matches holdings imported by ISIN against holdings imported by ticker symbol +- Fixed the calendar year date range in time zones with a negative _UTC_ offset +- Fixed the deletion of activities to respect the activity type filter on the activities page (experimental) +- Fixed the deletion of activities to respect the date range filter on the activities page - Fixed the static portfolio analysis rule for a portfolio with no holdings: _Asset Class Cluster Risks_ (Equity) - Fixed the static portfolio analysis rule for a portfolio with no holdings: _Asset Class Cluster Risks_ (Fixed Income) - Fixed the static portfolio analysis rule for a portfolio with no holdings: _Currency Cluster Risks_ (Investment) diff --git a/apps/api/src/app/activities/activities-filter.dto.ts b/apps/api/src/app/activities/activities-filter.dto.ts new file mode 100644 index 000000000..e5a22c020 --- /dev/null +++ b/apps/api/src/app/activities/activities-filter.dto.ts @@ -0,0 +1,43 @@ +import { DATE_RANGES } from '@ghostfolio/common/config'; +import { DateRange } from '@ghostfolio/common/types'; + +import { Type as ActivityType } from '@prisma/client'; +import { Transform, TransformFnParams } from 'class-transformer'; +import { IsEnum, IsOptional, IsString, Matches } from 'class-validator'; +import { isString } from 'lodash'; + +// A named date range or a calendar year like '2024', '2023', '2022', etc. +const DATE_RANGE_PATTERN = new RegExp(`^(${DATE_RANGES.join('|')}|\\d{4})$`); + +export class ActivitiesFilterDto { + @IsOptional() + @IsString() + accounts?: string; + + @IsEnum(ActivityType, { each: true }) + @IsOptional() + @Transform(({ value }: TransformFnParams) => { + return isString(value) ? value.split(',') : value; + }) + activityTypes?: ActivityType[]; + + @IsOptional() + @IsString() + assetClasses?: string; + + @IsOptional() + @IsString() + dataSource?: string; + + @IsOptional() + @Matches(DATE_RANGE_PATTERN) + range?: DateRange; + + @IsOptional() + @IsString() + symbol?: string; + + @IsOptional() + @IsString() + tags?: string; +} diff --git a/apps/api/src/app/activities/activities.controller.ts b/apps/api/src/app/activities/activities.controller.ts index 21dabc639..daade2a59 100644 --- a/apps/api/src/app/activities/activities.controller.ts +++ b/apps/api/src/app/activities/activities.controller.ts @@ -18,7 +18,7 @@ import { ActivityResponse } from '@ghostfolio/common/interfaces'; import { permissions } from '@ghostfolio/common/permissions'; -import type { DateRange, RequestWithUser } from '@ghostfolio/common/types'; +import type { RequestWithUser } from '@ghostfolio/common/types'; import { Body, @@ -29,7 +29,6 @@ import { HttpException, Inject, Param, - ParseIntPipe, Post, Put, Query, @@ -38,11 +37,13 @@ import { } from '@nestjs/common'; import { REQUEST } from '@nestjs/core'; import { AuthGuard } from '@nestjs/passport'; -import { Order, Prisma, Type as ActivityType } from '@prisma/client'; +import { Order } from '@prisma/client'; import { parseISO } from 'date-fns'; import { StatusCodes, getReasonPhrase } from 'http-status-codes'; +import { ActivitiesFilterDto } from './activities-filter.dto'; import { ActivitiesService } from './activities.service'; +import { GetActivitiesDto } from './get-activities.dto'; @Controller('activities') export class ActivitiesController { @@ -60,22 +61,38 @@ export class ActivitiesController { @UseGuards(AuthGuard('jwt'), HasPermissionGuard) @UseInterceptors(TransformDataSourceInRequestInterceptor) public async deleteActivities( - @Query('accounts') filterByAccounts?: string, - @Query('assetClasses') filterByAssetClasses?: string, - @Query('dataSource') filterByDataSource?: string, - @Query('symbol') filterBySymbol?: string, - @Query('tags') filterByTags?: string + @Headers(HEADER_KEY_IMPERSONATION.toLowerCase()) impersonationId: string, + @Query() query: ActivitiesFilterDto ): Promise { + if (impersonationId) { + throw new HttpException( + getReasonPhrase(StatusCodes.FORBIDDEN), + StatusCodes.FORBIDDEN + ); + } + + let endDate: Date; + let startDate: Date; + + if (query.range) { + ({ endDate, startDate } = getIntervalFromDateRange({ + dateRange: query.range + })); + } + const filters = this.apiService.buildFiltersFromQueryParams({ - filterByAccounts, - filterByAssetClasses, - filterByDataSource, - filterBySymbol, - filterByTags + filterByAccounts: query.accounts, + filterByAssetClasses: query.assetClasses, + filterByDataSource: query.dataSource, + filterBySymbol: query.symbol, + filterByTags: query.tags }); return this.activitiesService.deleteActivities({ + endDate, filters, + startDate, + types: query.activityTypes, userId: this.request.user.id }); } @@ -108,51 +125,41 @@ export class ActivitiesController { @UseInterceptors(TransformDataSourceInResponseInterceptor) public async getAllActivities( @Headers(HEADER_KEY_IMPERSONATION.toLowerCase()) impersonationId: string, - @Query('accounts') filterByAccounts?: string, - @Query('activityTypes') filterByTypes?: string, - @Query('assetClasses') filterByAssetClasses?: string, - @Query('dataSource') filterByDataSource?: string, - @Query('range') dateRange?: DateRange, - @Query('skip', new ParseIntPipe({ optional: true })) skip?: number, - @Query('sortColumn') sortColumn?: string, - @Query('sortDirection') sortDirection?: Prisma.SortOrder, - @Query('symbol') filterBySymbol?: string, - @Query('tags') filterByTags?: string, - @Query('take', new ParseIntPipe({ optional: true })) take?: number + @Query() query: GetActivitiesDto ): Promise { let endDate: Date; let startDate: Date; - if (dateRange) { - ({ endDate, startDate } = getIntervalFromDateRange({ dateRange })); + if (query.range) { + ({ endDate, startDate } = getIntervalFromDateRange({ + dateRange: query.range + })); } const filters = this.apiService.buildFiltersFromQueryParams({ - filterByAccounts, - filterByAssetClasses, - filterByDataSource, - filterBySymbol, - filterByTags + filterByAccounts: query.accounts, + filterByAssetClasses: query.assetClasses, + filterByDataSource: query.dataSource, + filterBySymbol: query.symbol, + filterByTags: query.tags }); const impersonationUserId = await this.impersonationService.validateImpersonationId(impersonationId); - const types = (filterByTypes?.split(',') as ActivityType[]) ?? []; - const userCurrency = this.request.user.settings.settings.baseCurrency; const { activities, count } = await this.activitiesService.getActivities({ endDate, filters, - skip, - sortColumn, - sortDirection, startDate, - take, - types, userCurrency, includeDrafts: true, + skip: query.skip, + sortColumn: query.sortColumn, + sortDirection: query.sortDirection, + take: query.take, + types: query.activityTypes, userId: impersonationUserId || this.request.user.id, withExcludedAccountsAndActivities: true }); diff --git a/apps/api/src/app/activities/activities.service.ts b/apps/api/src/app/activities/activities.service.ts index 7d6e822c5..da3e99312 100644 --- a/apps/api/src/app/activities/activities.service.ts +++ b/apps/api/src/app/activities/activities.service.ts @@ -361,14 +361,23 @@ export class ActivitiesService { } public async deleteActivities({ + endDate, filters, + startDate, + types, userId }: { + endDate?: Date; filters?: Filter[]; + startDate?: Date; + types?: ActivityType[]; userId: string; }): Promise { const { activities } = await this.getActivities({ + endDate, filters, + startDate, + types, userId, includeDrafts: true, userCurrency: undefined, diff --git a/apps/api/src/app/activities/get-activities.dto.ts b/apps/api/src/app/activities/get-activities.dto.ts new file mode 100644 index 000000000..0430a89c1 --- /dev/null +++ b/apps/api/src/app/activities/get-activities.dto.ts @@ -0,0 +1,27 @@ +import { Prisma } from '@prisma/client'; +import { Type } from 'class-transformer'; +import { IsIn, IsInt, IsOptional, Min } from 'class-validator'; + +import { ActivitiesFilterDto } from './activities-filter.dto'; + +export class GetActivitiesDto extends ActivitiesFilterDto { + @IsInt() + @IsOptional() + @Min(0) + @Type(() => Number) + skip?: number; + + @IsIn(Object.values(Prisma.OrderScalarFieldEnum)) + @IsOptional() + sortColumn?: keyof typeof Prisma.OrderScalarFieldEnum; + + @IsIn(['asc', 'desc'] as Prisma.SortOrder[]) + @IsOptional() + sortDirection?: Prisma.SortOrder; + + @IsInt() + @IsOptional() + @Min(0) + @Type(() => Number) + take?: number; +} diff --git a/apps/api/src/app/auth/api-key.strategy.ts b/apps/api/src/app/auth/api-key.strategy.ts index f9937aaa7..232a272bc 100644 --- a/apps/api/src/app/auth/api-key.strategy.ts +++ b/apps/api/src/app/auth/api-key.strategy.ts @@ -35,6 +35,13 @@ export class ApiKeyStrategy extends PassportStrategy( ); } + if (await this.userService.isDailyRequestLimitExceeded({ user })) { + throw new HttpException( + getReasonPhrase(StatusCodes.TOO_MANY_REQUESTS), + StatusCodes.TOO_MANY_REQUESTS + ); + } + await this.prismaService.analytics.upsert({ create: { user: { connect: { id: user.id } } }, update: { diff --git a/apps/api/src/app/auth/jwt.strategy.ts b/apps/api/src/app/auth/jwt.strategy.ts index c70e8fb60..189389a86 100644 --- a/apps/api/src/app/auth/jwt.strategy.ts +++ b/apps/api/src/app/auth/jwt.strategy.ts @@ -42,6 +42,13 @@ export class JwtStrategy extends PassportStrategy(Strategy, 'jwt') { ); } + if (await this.userService.isDailyRequestLimitExceeded({ user })) { + throw new HttpException( + getReasonPhrase(StatusCodes.TOO_MANY_REQUESTS), + StatusCodes.TOO_MANY_REQUESTS + ); + } + const country = countriesAndTimezones.getCountryForTimezone(timezone)?.id; diff --git a/apps/api/src/app/endpoints/data-providers/ghostfolio/ghostfolio.controller.ts b/apps/api/src/app/endpoints/data-providers/ghostfolio/ghostfolio.controller.ts index 5d6979acc..6e5f48d63 100644 --- a/apps/api/src/app/endpoints/data-providers/ghostfolio/ghostfolio.controller.ts +++ b/apps/api/src/app/endpoints/data-providers/ghostfolio/ghostfolio.controller.ts @@ -51,7 +51,7 @@ export class GhostfolioController { const maxDailyRequests = await this.ghostfolioService.getMaxDailyRequests(); if ( - this.request.user.dataProviderGhostfolioDailyRequests > maxDailyRequests + this.request.user.dataProviderGhostfolioDailyRequests >= maxDailyRequests ) { throw new HttpException( getReasonPhrase(StatusCodes.TOO_MANY_REQUESTS), @@ -95,7 +95,7 @@ export class GhostfolioController { const maxDailyRequests = await this.ghostfolioService.getMaxDailyRequests(); if ( - this.request.user.dataProviderGhostfolioDailyRequests > maxDailyRequests + this.request.user.dataProviderGhostfolioDailyRequests >= maxDailyRequests ) { throw new HttpException( getReasonPhrase(StatusCodes.TOO_MANY_REQUESTS), @@ -135,7 +135,7 @@ export class GhostfolioController { const maxDailyRequests = await this.ghostfolioService.getMaxDailyRequests(); if ( - this.request.user.dataProviderGhostfolioDailyRequests > maxDailyRequests + this.request.user.dataProviderGhostfolioDailyRequests >= maxDailyRequests ) { throw new HttpException( getReasonPhrase(StatusCodes.TOO_MANY_REQUESTS), @@ -176,7 +176,7 @@ export class GhostfolioController { const maxDailyRequests = await this.ghostfolioService.getMaxDailyRequests(); if ( - this.request.user.dataProviderGhostfolioDailyRequests > maxDailyRequests + this.request.user.dataProviderGhostfolioDailyRequests >= maxDailyRequests ) { throw new HttpException( getReasonPhrase(StatusCodes.TOO_MANY_REQUESTS), @@ -215,7 +215,7 @@ export class GhostfolioController { const maxDailyRequests = await this.ghostfolioService.getMaxDailyRequests(); if ( - this.request.user.dataProviderGhostfolioDailyRequests > maxDailyRequests + this.request.user.dataProviderGhostfolioDailyRequests >= maxDailyRequests ) { throw new HttpException( getReasonPhrase(StatusCodes.TOO_MANY_REQUESTS), @@ -252,7 +252,7 @@ export class GhostfolioController { const maxDailyRequests = await this.ghostfolioService.getMaxDailyRequests(); if ( - this.request.user.dataProviderGhostfolioDailyRequests > maxDailyRequests + this.request.user.dataProviderGhostfolioDailyRequests >= maxDailyRequests ) { throw new HttpException( getReasonPhrase(StatusCodes.TOO_MANY_REQUESTS), diff --git a/apps/api/src/app/endpoints/data-providers/ghostfolio/ghostfolio.service.ts b/apps/api/src/app/endpoints/data-providers/ghostfolio/ghostfolio.service.ts index 2c22f0c10..b858688c2 100644 --- a/apps/api/src/app/endpoints/data-providers/ghostfolio/ghostfolio.service.ts +++ b/apps/api/src/app/endpoints/data-providers/ghostfolio/ghostfolio.service.ts @@ -17,7 +17,10 @@ import { DERIVED_CURRENCIES } from '@ghostfolio/common/config'; import { PROPERTY_DATA_SOURCES_GHOSTFOLIO_DATA_PROVIDER_MAX_REQUESTS } from '@ghostfolio/common/config'; -import { getAssetProfileIdentifier } from '@ghostfolio/common/helper'; +import { + getAssetProfileIdentifier, + isValidSearchQuery +} from '@ghostfolio/common/helper'; import { DataProviderGhostfolioAssetProfileResponse, DataProviderHistoricalResponse, @@ -326,8 +329,12 @@ export class GhostfolioService { } public async incrementDailyRequests({ userId }: { userId: string }) { - await this.prismaService.analytics.update({ - data: { + await this.prismaService.analytics.upsert({ + create: { + dataProviderGhostfolioDailyRequests: 1, + user: { connect: { id: userId } } + }, + update: { dataProviderGhostfolioDailyRequests: { increment: 1 } }, where: { userId } @@ -340,7 +347,9 @@ export class GhostfolioService { }: GetSearchParams): Promise { const results: LookupResponse = { items: [] }; - if (!query) { + query = query?.trim(); + + if (!isValidSearchQuery(query)) { return results; } @@ -348,10 +357,6 @@ export class GhostfolioService { let lookupItems: LookupItem[] = []; const promises: Promise<{ items: LookupItem[] }>[] = []; - if (query?.length < 2) { - return { items: lookupItems }; - } - for (const dataProviderService of this.getDataProviderServices()) { promises.push( dataProviderService.search({ diff --git a/apps/api/src/app/export/export.controller.ts b/apps/api/src/app/export/export.controller.ts index 4f4f4e6dd..f503088d4 100644 --- a/apps/api/src/app/export/export.controller.ts +++ b/apps/api/src/app/export/export.controller.ts @@ -2,6 +2,7 @@ import { HasPermissionGuard } from '@ghostfolio/api/guards/has-permission.guard' import { TransformDataSourceInRequestInterceptor } from '@ghostfolio/api/interceptors/transform-data-source-in-request/transform-data-source-in-request.interceptor'; import { TransformDataSourceInResponseInterceptor } from '@ghostfolio/api/interceptors/transform-data-source-in-response/transform-data-source-in-response.interceptor'; import { ApiService } from '@ghostfolio/api/services/api/api.service'; +import { getIntervalFromDateRange } from '@ghostfolio/common/calculation-helper'; import { ExportResponse } from '@ghostfolio/common/interfaces'; import type { RequestWithUser } from '@ghostfolio/common/types'; @@ -15,9 +16,9 @@ import { } from '@nestjs/common'; import { REQUEST } from '@nestjs/core'; import { AuthGuard } from '@nestjs/passport'; -import { Type as ActivityType } from '@prisma/client'; import { ExportService } from './export.service'; +import { GetExportDto } from './get-export.dto'; @Controller('export') export class ExportController { @@ -31,30 +32,30 @@ export class ExportController { @UseGuards(AuthGuard('jwt'), HasPermissionGuard) @UseInterceptors(TransformDataSourceInRequestInterceptor) @UseInterceptors(TransformDataSourceInResponseInterceptor) - public async export( - @Query('accounts') filterByAccounts?: string, - @Query('activityIds') filterByActivityIds?: string, - @Query('activityTypes') filterByTypes?: string, - @Query('assetClasses') filterByAssetClasses?: string, - @Query('dataSource') filterByDataSource?: string, - @Query('symbol') filterBySymbol?: string, - @Query('tags') filterByTags?: string - ): Promise { - const activityIds = filterByActivityIds?.split(',') ?? []; - const activityTypes = (filterByTypes?.split(',') as ActivityType[]) ?? []; + public async export(@Query() query: GetExportDto): Promise { + let endDate: Date; + let startDate: Date; + + if (query.range) { + ({ endDate, startDate } = getIntervalFromDateRange({ + dateRange: query.range + })); + } const filters = this.apiService.buildFiltersFromQueryParams({ - filterByAccounts, - filterByAssetClasses, - filterByDataSource, - filterBySymbol, - filterByTags + filterByAccounts: query.accounts, + filterByAssetClasses: query.assetClasses, + filterByDataSource: query.dataSource, + filterBySymbol: query.symbol, + filterByTags: query.tags }); return this.exportService.export({ - activityIds, - activityTypes, + endDate, filters, + startDate, + activityIds: query.activityIds, + activityTypes: query.activityTypes, userId: this.request.user.id, userSettings: this.request.user.settings.settings }); diff --git a/apps/api/src/app/export/export.service.ts b/apps/api/src/app/export/export.service.ts index a94479562..02ccb46b3 100644 --- a/apps/api/src/app/export/export.service.ts +++ b/apps/api/src/app/export/export.service.ts @@ -25,13 +25,17 @@ export class ExportService { public async export({ activityIds, activityTypes, + endDate, filters, + startDate, userId, userSettings }: { activityIds?: string[]; activityTypes?: ActivityType[]; + endDate?: Date; filters?: Filter[]; + startDate?: Date; userId: string; userSettings: UserSettings; }): Promise { @@ -41,7 +45,9 @@ export class ExportService { const platformsMap: { [platformId: string]: Platform } = {}; let { activities } = await this.activitiesService.getActivities({ + endDate, filters, + startDate, userId, includeDrafts: true, sortColumn: 'date', @@ -67,6 +73,13 @@ export class ExportService { }; } + const isFilteredExport = + activityIds?.length > 0 || + activityTypes?.length > 0 || + filters?.length > 0 || + !!endDate || + !!startDate; + const accounts = ( await this.accountService.accounts({ where, @@ -81,7 +94,7 @@ export class ExportService { }) ) .filter(({ id }) => { - return activityIds?.length > 0 + return isFilteredExport ? activities.some(({ accountId }) => { return accountId === id; }) @@ -94,7 +107,6 @@ export class ExportService { comment, currency, id, - isExcluded, name, platform, platformId, @@ -112,7 +124,6 @@ export class ExportService { comment, currency, id, - isExcluded, name, platformId, tags: tags.map(({ id: tagId }) => { diff --git a/apps/api/src/app/export/get-export.dto.ts b/apps/api/src/app/export/get-export.dto.ts new file mode 100644 index 000000000..5fc3c81ba --- /dev/null +++ b/apps/api/src/app/export/get-export.dto.ts @@ -0,0 +1,14 @@ +import { ActivitiesFilterDto } from '@ghostfolio/api/app/activities/activities-filter.dto'; + +import { Transform, TransformFnParams } from 'class-transformer'; +import { IsOptional, IsUUID } from 'class-validator'; +import { isString } from 'lodash'; + +export class GetExportDto extends ActivitiesFilterDto { + @IsOptional() + @IsUUID(undefined, { each: true }) + @Transform(({ value }: TransformFnParams) => { + return isString(value) ? value.split(',') : value; + }) + activityIds?: string[]; +} diff --git a/apps/api/src/app/import/import.service.ts b/apps/api/src/app/import/import.service.ts index 1f964f874..c2615ff81 100644 --- a/apps/api/src/app/import/import.service.ts +++ b/apps/api/src/app/import/import.service.ts @@ -9,7 +9,10 @@ import { MarketDataService } from '@ghostfolio/api/services/market-data/market-d import { DataGatheringService } from '@ghostfolio/api/services/queues/data-gathering/data-gathering.service'; import { SymbolProfileService } from '@ghostfolio/api/services/symbol-profile/symbol-profile.service'; import { TagService } from '@ghostfolio/api/services/tag/tag.service'; -import { DATA_GATHERING_QUEUE_PRIORITY_HIGH } from '@ghostfolio/common/config'; +import { + DATA_GATHERING_QUEUE_PRIORITY_HIGH, + TAG_ID_EXCLUDE_FROM_ANALYSIS +} from '@ghostfolio/common/config'; import { CreateAssetProfileDto, CreateOrderDto } from '@ghostfolio/common/dtos'; import { getAssetProfileIdentifier, @@ -272,7 +275,11 @@ export class ImportService { // If there is no account or if the account belongs to a different user then create a new account if (!accountWithSameId || accountWithSameId.userId !== user.id) { - const account = omit(accountWithBalances, ['balances', 'tags']); + const account = omit(accountWithBalances, [ + 'balances', + 'isExcluded', + 'tags' + ]); let oldAccountId: string; const platformId = account.platformId; @@ -292,6 +299,16 @@ export class ImportService { return existingTagIds.has(tagId); }); + // Map the legacy isExcluded attribute of old export files to + // the "Exclude from Analysis" tag + if ( + accountWithBalances.isExcluded && + existingTagIds.has(TAG_ID_EXCLUDE_FROM_ANALYSIS) && + !tagIds.includes(TAG_ID_EXCLUDE_FROM_ANALYSIS) + ) { + tagIds.push(TAG_ID_EXCLUDE_FROM_ANALYSIS); + } + let accountObject: Prisma.AccountCreateInput = { ...account, balances: { diff --git a/apps/api/src/app/portfolio/calculator/roai/portfolio-calculator-cash.spec.ts b/apps/api/src/app/portfolio/calculator/roai/portfolio-calculator-cash.spec.ts index 1fc705b46..aaa2f63cf 100644 --- a/apps/api/src/app/portfolio/calculator/roai/portfolio-calculator-cash.spec.ts +++ b/apps/api/src/app/portfolio/calculator/roai/portfolio-calculator-cash.spec.ts @@ -186,7 +186,6 @@ describe('PortfolioCalculator', () => { createdAt: parseDate('2023-12-31'), currency: 'USD', id: accountId, - isExcluded: false, name: 'USD', platformId: null, updatedAt: parseDate('2023-12-31'), @@ -362,7 +361,6 @@ describe('PortfolioCalculator', () => { createdAt: parseDate('2023-12-31'), currency: 'CHF', id: accountId, - isExcluded: false, name: 'CHF', platformId: null, updatedAt: parseDate('2023-12-31'), @@ -494,7 +492,6 @@ describe('PortfolioCalculator', () => { createdAt: parseDate('2023-12-31'), currency: 'CHF', id: accountId, - isExcluded: false, name: 'CHF', platformId: null, updatedAt: parseDate('2023-12-31'), diff --git a/apps/api/src/app/portfolio/portfolio.service.spec.ts b/apps/api/src/app/portfolio/portfolio.service.spec.ts index c16590cce..97635553f 100644 --- a/apps/api/src/app/portfolio/portfolio.service.spec.ts +++ b/apps/api/src/app/portfolio/portfolio.service.spec.ts @@ -1,6 +1,7 @@ import { AccountService } from '@ghostfolio/api/app/account/account.service'; import { CashDetails } from '@ghostfolio/api/app/account/interfaces/cash-details.interface'; import { ActivitiesService } from '@ghostfolio/api/app/activities/activities.service'; +import { PortfolioCalculator } from '@ghostfolio/api/app/portfolio/calculator/portfolio-calculator'; import { userDummyData } from '@ghostfolio/api/app/portfolio/calculator/portfolio-calculator-test-utils'; import { PortfolioCalculatorFactory } from '@ghostfolio/api/app/portfolio/calculator/portfolio-calculator.factory'; import { UserService } from '@ghostfolio/api/app/user/user.service'; @@ -11,7 +12,10 @@ import { ImpersonationService } from '@ghostfolio/api/services/impersonation/imp import { SymbolProfileService } from '@ghostfolio/api/services/symbol-profile/symbol-profile.service'; import { UNKNOWN_KEY } from '@ghostfolio/common/config'; import { parseDate } from '@ghostfolio/common/helper'; -import { AssetProfileIdentifier } from '@ghostfolio/common/interfaces'; +import { + AssetProfileIdentifier, + PortfolioSummary +} from '@ghostfolio/common/interfaces'; import { Account, DataSource } from '@prisma/client'; import { Big } from 'big.js'; @@ -92,6 +96,7 @@ describe('PortfolioService', () => { null, null, null, + null, null ); @@ -187,7 +192,6 @@ describe('PortfolioService', () => { createdAt: parseDate('2024-01-01'), currency: 'USD', id: randomUUID(), - isExcluded: false, name: 'USD', platformId: null, updatedAt: parseDate('2024-01-01'), @@ -221,7 +225,6 @@ describe('PortfolioService', () => { createdAt: parseDate('2024-01-01'), currency: 'USD', id: accountId, - isExcluded: false, name: 'USD', platformId: null, updatedAt: parseDate('2024-01-01'), @@ -337,6 +340,86 @@ describe('PortfolioService', () => { }); }); + describe('getSummary', () => { + const getSummary = (args: object) => { + return ( + portfolioService as unknown as { + getSummary: (aArgs: object) => Promise; + } + ).getSummary(args); + }; + + function createPortfolioCalculator() { + return { + getDividendInBaseCurrency: jest.fn().mockResolvedValue(new Big(0)), + getFeesInBaseCurrency: jest.fn().mockResolvedValue(new Big(0)), + getInterestInBaseCurrency: jest.fn().mockResolvedValue(new Big(0)), + getLiabilitiesInBaseCurrency: jest.fn().mockResolvedValue(new Big(0)), + getSnapshot: jest.fn().mockResolvedValue({ + currentValueInBaseCurrency: new Big(3000), + totalCashInBaseCurrency: new Big(1000), + totalInvestment: new Big(2000), + totalInvestmentWithCurrencyEffect: new Big(2000) + }), + getStartDate: jest.fn().mockReturnValue(parseDate('2024-01-01')) + } as unknown as PortfolioCalculator; + } + + beforeEach(() => { + jest + .spyOn(activitiesService, 'getActivities') + .mockResolvedValue({ activities: [], count: 0 }); + + jest + .spyOn(impersonationService, 'validateImpersonationId') + .mockResolvedValue(null); + + jest.spyOn(portfolioService, 'getPerformance').mockResolvedValue({ + performance: { + currentValueInBaseCurrency: 3000, + netPerformance: 500, + netPerformancePercentage: 0.2, + netPerformancePercentageWithCurrencyEffect: 0.2, + netPerformanceWithCurrencyEffect: 500 + } + } as Awaited>); + + jest.spyOn(userService, 'user').mockResolvedValue({ + id: userDummyData.id, + settings: { + settings: { + baseCurrency: 'CHF' + } + } + } as unknown as Awaited>); + }); + + it('should derive the cash and net worth from the account balance when there are no excluded accounts, no emergency fund and no liabilities', async () => { + jest.spyOn(accountService, 'getCashDetails').mockResolvedValue({ + accounts: [], + balanceInBaseCurrency: 1000 + }); + + const portfolioCalculator = createPortfolioCalculator(); + + const summary = await getSummary({ + portfolioCalculator, + balanceInBaseCurrency: 1000, + emergencyFundHoldingsValueInBaseCurrency: 0, + filteredValueInBaseCurrency: new Big(3000), + impersonationId: undefined, + userCurrency: 'CHF', + userId: userDummyData.id + }); + + expect(summary.cash).toBe(1000); + expect(summary.emergencyFund.total).toBe(0); + expect(summary.excludedAccountsAndActivities).toBe(0); + expect(summary.totalAssetsInBaseCurrency).toBe(3000); + expect(summary.totalValueInBaseCurrency).toBe(3000); + }); + }); + describe('getValueOfAccountsAndPlatforms', () => { const getValueOfAccountsAndPlatforms = (args: object) => { return ( @@ -353,7 +436,6 @@ describe('PortfolioService', () => { balance: 100, currency: 'USD', id: randomUUID(), - isExcluded: false, name: 'Account 1', platform: { name: 'Platform 1' }, platformId: randomUUID() diff --git a/apps/api/src/app/portfolio/portfolio.service.ts b/apps/api/src/app/portfolio/portfolio.service.ts index d1aff3811..0a69cf32d 100644 --- a/apps/api/src/app/portfolio/portfolio.service.ts +++ b/apps/api/src/app/portfolio/portfolio.service.ts @@ -1035,7 +1035,6 @@ export class PortfolioService { return { chart: [], dateOfFirstActivity: undefined, - firstOrderDate: undefined, hasErrors: false, performance: { currentNetWorth: 0, @@ -1093,7 +1092,6 @@ export class PortfolioService { errors, hasErrors, dateOfFirstActivity: parseDate(historicalData[0]?.date), - firstOrderDate: parseDate(historicalData[0]?.date), performance: { netPerformance, netPerformanceWithCurrencyEffect, diff --git a/apps/api/src/app/user/user.service.ts b/apps/api/src/app/user/user.service.ts index 7f3631c54..b706e4702 100644 --- a/apps/api/src/app/user/user.service.ts +++ b/apps/api/src/app/user/user.service.ts @@ -31,9 +31,12 @@ import { DEFAULT_LOCALE, PROPERTY_API_KEY_GHOSTFOLIO, PROPERTY_IS_READ_ONLY_MODE, + PROPERTY_MAX_DAILY_REQUESTS, PROPERTY_REFERRAL_PARTNERS, PROPERTY_SYSTEM_MESSAGE, - TAG_ID_EXCLUDE_FROM_ANALYSIS + TAG_ID_EXCLUDE_FROM_ANALYSIS, + THROTTLE_DAILY_KEY, + THROTTLE_DAILY_TTL } from '@ghostfolio/common/config'; import { SubscriptionType } from '@ghostfolio/common/enums'; import { @@ -50,15 +53,18 @@ import { import { UserWithSettings } from '@ghostfolio/common/types'; import { PerformanceCalculationType } from '@ghostfolio/common/types/performance-calculation-type.type'; -import { Injectable } from '@nestjs/common'; +import { Injectable, Logger } from '@nestjs/common'; import { EventEmitter2 } from '@nestjs/event-emitter'; +import { InjectThrottlerStorage, ThrottlerStorage } from '@nestjs/throttler'; import { Prisma, Role, Settings, User } from '@prisma/client'; import { differenceInDays, subDays } from 'date-fns'; -import { without } from 'lodash'; +import { isNil, without } from 'lodash'; import { createHmac } from 'node:crypto'; @Injectable() export class UserService { + private readonly logger = new Logger(UserService.name); + public constructor( private readonly activitiesService: ActivitiesService, private readonly configurationService: ConfigurationService, @@ -67,7 +73,9 @@ export class UserService { private readonly prismaService: PrismaService, private readonly propertyService: PropertyService, private readonly subscriptionService: SubscriptionService, - private readonly tagService: TagService + private readonly tagService: TagService, + @InjectThrottlerStorage() + private readonly throttlerStorage: ThrottlerStorage ) {} public async count(args?: Prisma.UserCountArgs) { @@ -228,6 +236,38 @@ export class UserService { return usersWithAdminRole.length > 0; } + public async isDailyRequestLimitExceeded({ + user + }: { + user: UserWithSettings; + }) { + if (user.subscription?.type === SubscriptionType.Premium) { + return false; + } + + const maxDailyRequests = await this.getMaxDailyRequests(); + + if (maxDailyRequests === undefined) { + return false; + } + + try { + const { isBlocked } = await this.throttlerStorage.increment( + `${THROTTLE_DAILY_KEY}-${user.id}`, + THROTTLE_DAILY_TTL, + maxDailyRequests, + THROTTLE_DAILY_TTL, + THROTTLE_DAILY_KEY + ); + + return isBlocked; + } catch (error) { + this.logger.error(error); + + return false; + } + } + public async user( userWhereUniqueInput: Prisma.UserWhereUniqueInput ): Promise { @@ -286,7 +326,7 @@ export class UserService { updatedAt, activityCount: analytics?.activityCount, dataProviderGhostfolioDailyRequests: - analytics?.dataProviderGhostfolioDailyRequests + analytics?.dataProviderGhostfolioDailyRequests ?? 0 }; if (user.settings) { @@ -782,4 +822,26 @@ export class UserService { return settings; } + + private async getMaxDailyRequests() { + const value = await this.propertyService.getByKey( + PROPERTY_MAX_DAILY_REQUESTS + ); + + if (isNil(value) || value === '') { + return undefined; + } + + const maxDailyRequests = Number(value); + + if (!Number.isInteger(maxDailyRequests) || maxDailyRequests < 0) { + this.logger.warn( + `The property ${PROPERTY_MAX_DAILY_REQUESTS} is not a non-negative integer ("${value}"), the daily request limit is not applied` + ); + + return undefined; + } + + return maxDailyRequests; + } } diff --git a/apps/api/src/helper/account.helper.ts b/apps/api/src/helper/account.helper.ts index 8e7520d0a..da0762ba5 100644 --- a/apps/api/src/helper/account.helper.ts +++ b/apps/api/src/helper/account.helper.ts @@ -4,7 +4,6 @@ import { Prisma } from '@prisma/client'; import { endOfToday, isAfter } from 'date-fns'; export const WHERE_ACCOUNT_NOT_EXCLUDED: Prisma.AccountWhereInput = { - isExcluded: false, tags: { none: { tagId: TAG_ID_EXCLUDE_FROM_ANALYSIS diff --git a/apps/api/src/services/data-provider/data-provider.service.ts b/apps/api/src/services/data-provider/data-provider.service.ts index e8d5f5030..4c273f2da 100644 --- a/apps/api/src/services/data-provider/data-provider.service.ts +++ b/apps/api/src/services/data-provider/data-provider.service.ts @@ -20,7 +20,8 @@ import { getCurrencyFromSymbol, getStartOfUtcDate, isCurrency, - isDerivedCurrency + isDerivedCurrency, + isValidSearchQuery } from '@ghostfolio/common/helper'; import { AssetProfileIdentifier, @@ -838,7 +839,9 @@ export class DataProviderService implements OnModuleInit { let lookupItems: LookupItem[] = []; const promises: Promise[] = []; - if (query?.length < 2) { + query = query?.trim(); + + if (!isValidSearchQuery(query)) { return { items: lookupItems }; } diff --git a/apps/api/src/services/data-provider/yahoo-finance/yahoo-finance.service.ts b/apps/api/src/services/data-provider/yahoo-finance/yahoo-finance.service.ts index 52fb5d5a8..364354f6b 100644 --- a/apps/api/src/services/data-provider/yahoo-finance/yahoo-finance.service.ts +++ b/apps/api/src/services/data-provider/yahoo-finance/yahoo-finance.service.ts @@ -330,7 +330,11 @@ export class YahooFinanceService implements DataProviderInterface { }); } } catch (error) { - this.logger.error(error); + if (error?.name === 'BadRequestError') { + this.logger.warn(`Could not search for "${query}": ${error.message}`); + } else { + this.logger.error(error); + } } return { items }; diff --git a/apps/client/src/app/app.component.ts b/apps/client/src/app/app.component.ts index ff67daf5e..fd17bcd6e 100644 --- a/apps/client/src/app/app.component.ts +++ b/apps/client/src/app/app.component.ts @@ -135,7 +135,10 @@ export class GfAppComponent implements OnInit { this.currentSubRoute === internalRoutes.home.subRoutes?.holdings.path) || (this.currentRoute === internalRoutes.portfolio.path && - !this.currentSubRoute)) && + !this.currentSubRoute) || + (this.currentRoute === internalRoutes.portfolio.path && + this.currentSubRoute === + internalRoutes.portfolio.subRoutes?.activities.path)) && this.user?.settings?.viewMode !== 'ZEN' ) { this.hasPermissionToChangeDateRange = true; diff --git a/apps/client/src/app/components/account-detail-dialog/account-detail-dialog.html b/apps/client/src/app/components/account-detail-dialog/account-detail-dialog.html index 32a11717f..ff39f23b3 100644 --- a/apps/client/src/app/components/account-detail-dialog/account-detail-dialog.html +++ b/apps/client/src/app/components/account-detail-dialog/account-detail-dialog.html @@ -33,6 +33,7 @@ diff --git a/apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html b/apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html index c9abdeeb7..f0b914b1c 100644 --- a/apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html +++ b/apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html @@ -105,6 +105,7 @@ 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 464f0b6b2..c4f53497f 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 @@ -39,6 +39,7 @@ diff --git a/apps/client/src/app/components/user-account-settings/user-account-settings.component.ts b/apps/client/src/app/components/user-account-settings/user-account-settings.component.ts index a556a68d6..0a049a7ae 100644 --- a/apps/client/src/app/components/user-account-settings/user-account-settings.component.ts +++ b/apps/client/src/app/components/user-account-settings/user-account-settings.component.ts @@ -266,10 +266,6 @@ export class GfUserAccountSettingsComponent implements OnInit { .fetchExport() .pipe(takeUntilDestroyed(this.destroyRef)) .subscribe((data) => { - for (const activity of data.activities) { - delete (activity as Omit & { id?: string }).id; - } - downloadAsFile({ content: data, fileName: `ghostfolio-export-${format( diff --git a/apps/client/src/app/pages/accounts/accounts-page.component.ts b/apps/client/src/app/pages/accounts/accounts-page.component.ts index 1cf0e44a7..291a7f3f9 100644 --- a/apps/client/src/app/pages/accounts/accounts-page.component.ts +++ b/apps/client/src/app/pages/accounts/accounts-page.component.ts @@ -191,7 +191,6 @@ export class GfAccountsPageComponent implements OnInit { comment, currency, id, - isExcluded, name, platformId, tags @@ -206,7 +205,6 @@ export class GfAccountsPageComponent implements OnInit { comment, currency, id, - isExcluded, name, platformId, tags @@ -288,7 +286,6 @@ export class GfAccountsPageComponent implements OnInit { comment: null, currency: this.user?.settings?.baseCurrency ?? null, id: null, - isExcluded: false, name: null, platformId: null, tags: [] diff --git a/apps/client/src/app/pages/accounts/create-or-update-account-dialog/create-or-update-account-dialog.component.ts b/apps/client/src/app/pages/accounts/create-or-update-account-dialog/create-or-update-account-dialog.component.ts index de0172eac..8b0536ebf 100644 --- a/apps/client/src/app/pages/accounts/create-or-update-account-dialog/create-or-update-account-dialog.component.ts +++ b/apps/client/src/app/pages/accounts/create-or-update-account-dialog/create-or-update-account-dialog.component.ts @@ -27,7 +27,6 @@ import { } from '@angular/forms'; import { MatAutocompleteModule } from '@angular/material/autocomplete'; import { MatButtonModule } from '@angular/material/button'; -import { MatCheckboxModule } from '@angular/material/checkbox'; import { MAT_DIALOG_DATA, MatDialogModule, @@ -51,7 +50,6 @@ import { CreateOrUpdateAccountDialogParams } from './interfaces/interfaces'; GfTagsSelectorComponent, MatAutocompleteModule, MatButtonModule, - MatCheckboxModule, MatDialogModule, MatFormFieldModule, MatInputModule, @@ -106,7 +104,6 @@ export class GfCreateOrUpdateAccountDialogComponent { balance: [this.data.account.balance, Validators.required], comment: [this.data.account.comment], currency: [this.data.account.currency, Validators.required], - isExcluded: [this.data.account.isExcluded], name: [this.data.account.name, Validators.required], platformId: [null, this.autocompleteObjectValidator()], tags: [ @@ -204,7 +201,6 @@ export class GfCreateOrUpdateAccountDialogComponent { comment: this.accountForm.get('comment')?.value ?? null, currency: this.accountForm.get('currency')?.value, id: this.accountForm.get('accountId')?.value, - isExcluded: this.accountForm.get('isExcluded')?.value, name: this.accountForm.get('name')?.value, platformId: this.accountForm.get('platformId')?.value?.id ?? null, tags: this.accountForm diff --git a/apps/client/src/app/pages/accounts/create-or-update-account-dialog/create-or-update-account-dialog.html b/apps/client/src/app/pages/accounts/create-or-update-account-dialog/create-or-update-account-dialog.html index d5743313d..4e4c62b6f 100644 --- a/apps/client/src/app/pages/accounts/create-or-update-account-dialog/create-or-update-account-dialog.html +++ b/apps/client/src/app/pages/accounts/create-or-update-account-dialog/create-or-update-account-dialog.html @@ -92,11 +92,6 @@ [tagsAvailable]="tagsAvailable" /> -
- Exclude from Analysis -
@if (data.account.id) {
diff --git a/apps/client/src/app/pages/portfolio/activities/activities-page.component.ts b/apps/client/src/app/pages/portfolio/activities/activities-page.component.ts index 3362dc5d5..0ff4168ac 100644 --- a/apps/client/src/app/pages/portfolio/activities/activities-page.component.ts +++ b/apps/client/src/app/pages/portfolio/activities/activities-page.component.ts @@ -10,7 +10,6 @@ import { } from '@ghostfolio/common/interfaces'; import { hasPermission, permissions } from '@ghostfolio/common/permissions'; import { internalRoutes } from '@ghostfolio/common/routes/routes'; -import { DateRange } from '@ghostfolio/common/types'; import { GfActivitiesTableComponent } from '@ghostfolio/ui/activities-table'; import { GfFabComponent } from '@ghostfolio/ui/fab'; import { DataService } from '@ghostfolio/ui/services'; @@ -92,8 +91,14 @@ export class GfActivitiesPageComponent implements OnInit { .pipe(takeUntilDestroyed(this.destroyRef)) .subscribe((state) => { if (state?.user) { + const previousDateRange = this.getDateRange(); + this.updateUser(state.user); + if (previousDateRange !== this.getDateRange()) { + this.pageIndex = 0; + } + this.fetchActivities(); this.changeDetectorRef.markForCheck(); @@ -120,7 +125,11 @@ export class GfActivitiesPageComponent implements OnInit { protected onDeleteActivities() { this.dataService .deleteActivities({ - filters: this.userService.getFilters() + activityTypes: this.activityTypesFilter.length + ? this.activityTypesFilter + : undefined, + filters: this.userService.getFilters(), + range: this.getDateRange() }) .pipe(takeUntilDestroyed(this.destroyRef)) .subscribe(() => { @@ -159,7 +168,8 @@ export class GfActivitiesPageComponent implements OnInit { activityTypes: this.activityTypesFilter.length ? this.activityTypesFilter : undefined, - filters: this.userService.getFilters() + filters: this.userService.getFilters(), + range: this.getDateRange() }; } @@ -167,10 +177,6 @@ export class GfActivitiesPageComponent implements OnInit { .fetchExport(fetchExportParams) .pipe(takeUntilDestroyed(this.destroyRef)) .subscribe((data) => { - for (const activity of data.activities) { - delete (activity as Omit & { id?: string }).id; - } - downloadAsFile({ content: data, fileName: `ghostfolio-export-${format( @@ -184,7 +190,7 @@ export class GfActivitiesPageComponent implements OnInit { protected onExportDrafts(activityIds?: string[]) { this.dataService - .fetchExport({ activityIds }) + .fetchExport({ activityIds, withActivityIds: true }) .pipe(takeUntilDestroyed(this.destroyRef)) .subscribe((data) => { downloadAsFile({ @@ -277,16 +283,13 @@ export class GfActivitiesPageComponent implements OnInit { this.dataSource = undefined; this.totalItems = undefined; - const dateRange = this.user?.settings?.dateRange; - const range = this.isCalendarYear(dateRange) ? dateRange : undefined; - this.dataService .fetchActivities({ - range, activityTypes: this.activityTypesFilter.length ? this.activityTypesFilter : undefined, filters: this.userService.getFilters(), + range: this.getDateRange(), skip: this.pageIndex * this.pageSize, sortColumn: this.sortColumn, sortDirection: this.sortDirection, @@ -311,12 +314,16 @@ export class GfActivitiesPageComponent implements OnInit { }); } - private isCalendarYear(dateRange?: DateRange) { - if (!dateRange) { - return false; + private getDateRange() { + const dateRange = this.user?.settings?.dateRange; + + // Omit the date ranges which do not apply to activities: '1d' spans today + // only, while 'max' would exclude drafts dated in the future + if (!dateRange || ['1d', 'max'].includes(dateRange)) { + return undefined; } - return /^\d{4}$/.test(dateRange); + return dateRange; } private updateUser(aUser: User) { diff --git a/apps/client/src/index.html b/apps/client/src/index.html index 61953bca8..105e7bcae 100644 --- a/apps/client/src/index.html +++ b/apps/client/src/index.html @@ -1,5 +1,5 @@ - + Ghostfolio diff --git a/apps/client/src/locales/messages.ca.xlf b/apps/client/src/locales/messages.ca.xlf index a7bb8abdd..b760aa9a3 100644 --- a/apps/client/src/locales/messages.ca.xlf +++ b/apps/client/src/locales/messages.ca.xlf @@ -383,7 +383,7 @@ Balanç de Caixa apps/client/src/app/components/account-detail-dialog/account-detail-dialog.html - 54 + 55 apps/client/src/app/pages/accounts/create-or-update-account-dialog/create-or-update-account-dialog.html @@ -399,7 +399,7 @@ Plataforma apps/client/src/app/components/account-detail-dialog/account-detail-dialog.html - 112 + 113 apps/client/src/app/pages/accounts/create-or-update-account-dialog/create-or-update-account-dialog.html @@ -415,7 +415,7 @@ Balanç de Caixa apps/client/src/app/components/account-detail-dialog/account-detail-dialog.html - 169 + 170 @@ -439,7 +439,7 @@ apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 332 + 333 apps/client/src/app/components/admin-platform/admin-platform.component.html @@ -475,7 +475,7 @@ libs/ui/src/lib/activities-table/activities-table.component.html - 161 + 175 libs/ui/src/lib/benchmark/benchmark.component.html @@ -515,11 +515,11 @@ Divisa apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 216 + 217 apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 339 + 340 apps/client/src/app/components/admin-market-data/create-asset-profile-dialog/create-asset-profile-dialog.html @@ -539,7 +539,7 @@ libs/ui/src/lib/activities-table/activities-table.component.html - 303 + 317 @@ -575,11 +575,11 @@ libs/ui/src/lib/activities-table/activities-table.component.html - 284 + 298 libs/ui/src/lib/activities-table/activities-table.component.html - 320 + 334 libs/ui/src/lib/holdings-table/holdings-table.component.html @@ -619,7 +619,7 @@ libs/ui/src/lib/activities-table/activities-table.component.html - 483 + 497 @@ -659,7 +659,7 @@ libs/ui/src/lib/activities-table/activities-table.component.html - 513 + 527 libs/ui/src/lib/benchmark/benchmark.component.html @@ -703,11 +703,11 @@ libs/ui/src/lib/activities-table/activities-table.component.html - 5 + 7 libs/ui/src/lib/activities-table/activities-table.component.html - 183 + 197 @@ -727,7 +727,7 @@ apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 486 + 487 @@ -743,7 +743,7 @@ apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 197 + 198 apps/client/src/app/pages/portfolio/activities/create-or-update-activity-dialog/create-or-update-activity-dialog.html @@ -867,7 +867,7 @@ Find an account... libs/ui/src/lib/assistant/assistant.component.ts - 447 + 448 @@ -883,7 +883,7 @@ libs/ui/src/lib/activities-table/activities-table.component.html - 192 + 206 libs/ui/src/lib/historical-market-data-editor/historical-market-data-editor-dialog/historical-market-data-editor-dialog.html @@ -907,7 +907,7 @@ apps/client/src/app/components/holding-detail-dialog/holding-detail-dialog.html - 113 + 114 libs/ui/src/lib/historical-market-data-editor/historical-market-data-editor-dialog/historical-market-data-editor-dialog.html @@ -983,11 +983,11 @@ apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 235 + 236 apps/client/src/app/components/holding-detail-dialog/holding-detail-dialog.html - 221 + 222 libs/ui/src/lib/holdings-table/holdings-table.component.html @@ -999,7 +999,7 @@ Data Gathering Frequency apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 467 + 468 @@ -1139,11 +1139,11 @@ Sector apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 280 + 281 apps/client/src/app/components/holding-detail-dialog/holding-detail-dialog.html - 270 + 271 @@ -1151,7 +1151,7 @@ País apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 295 + 296 apps/client/src/app/components/admin-users/admin-users.html @@ -1159,7 +1159,7 @@ apps/client/src/app/components/holding-detail-dialog/holding-detail-dialog.html - 284 + 285 apps/client/src/app/components/user-detail-dialog/user-detail-dialog.html @@ -1171,15 +1171,15 @@ Sectors apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 301 + 302 apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 420 + 421 apps/client/src/app/components/holding-detail-dialog/holding-detail-dialog.html - 290 + 291 apps/client/src/app/pages/public/public-page.html @@ -1191,15 +1191,15 @@ Països apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 311 + 312 apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 431 + 432 apps/client/src/app/components/holding-detail-dialog/holding-detail-dialog.html - 302 + 303 @@ -1207,7 +1207,7 @@ Mapatge de Símbols apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 409 + 410 @@ -1247,7 +1247,7 @@ Configuració del Proveïdor de Dades apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 509 + 510 @@ -1255,7 +1255,7 @@ Prova apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 606 + 607 @@ -1263,11 +1263,11 @@ Url apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 442 + 443 apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 588 + 589 apps/client/src/app/components/admin-platform/admin-platform.component.html @@ -1291,7 +1291,7 @@ Notes apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 455 + 456 apps/client/src/app/pages/accounts/create-or-update-account-dialog/create-or-update-account-dialog.html @@ -1307,7 +1307,7 @@ libs/ui/src/lib/activities-table/activities-table.component.html - 370 + 384 @@ -1347,7 +1347,7 @@ Nom, símbol o ISIN apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 133 + 134 apps/client/src/app/components/admin-market-data/create-asset-profile-dialog/create-asset-profile-dialog.html @@ -1447,7 +1447,7 @@ Recollida de Dades apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 629 + 630 apps/client/src/app/components/admin-overview/admin-overview.html @@ -1459,7 +1459,7 @@ Find a holding... libs/ui/src/lib/assistant/assistant.component.ts - 448 + 449 @@ -1743,7 +1743,7 @@ Punt de Referència apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 401 + 402 apps/client/src/app/components/benchmark-comparator/benchmark-comparator.component.ts @@ -1755,7 +1755,7 @@ Sentiment del Mercat libs/ui/src/lib/fear-and-greed-index/fear-and-greed-index.component.html - 22 + 23 @@ -1835,7 +1835,7 @@ Preu Mínim apps/client/src/app/components/holding-detail-dialog/holding-detail-dialog.html - 131 + 132 @@ -1843,7 +1843,7 @@ Preu Màxim apps/client/src/app/components/holding-detail-dialog/holding-detail-dialog.html - 149 + 150 @@ -1851,7 +1851,7 @@ Quantitat apps/client/src/app/components/holding-detail-dialog/holding-detail-dialog.html - 159 + 160 apps/client/src/app/pages/portfolio/activities/create-or-update-activity-dialog/create-or-update-activity-dialog.html @@ -1859,7 +1859,7 @@ libs/ui/src/lib/activities-table/activities-table.component.html - 213 + 227 libs/ui/src/lib/holdings-table/holdings-table.component.html @@ -1871,7 +1871,7 @@ Rendiment del Dividend apps/client/src/app/components/holding-detail-dialog/holding-detail-dialog.html - 198 + 199 @@ -1879,7 +1879,7 @@ Comissions apps/client/src/app/components/holding-detail-dialog/holding-detail-dialog.html - 210 + 211 apps/client/src/app/components/portfolio-summary/portfolio-summary.component.html @@ -1891,11 +1891,11 @@ Activitat apps/client/src/app/components/account-detail-dialog/account-detail-dialog.html - 100 + 101 apps/client/src/app/components/holding-detail-dialog/holding-detail-dialog.html - 231 + 232 @@ -1903,7 +1903,7 @@ Informar d’un Problema amb les Dades apps/client/src/app/components/holding-detail-dialog/holding-detail-dialog.html - 463 + 464 @@ -2135,7 +2135,7 @@ o apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 167 + 168 apps/client/src/app/components/admin-settings/admin-settings.component.html @@ -2467,7 +2467,7 @@ libs/ui/src/lib/assistant/assistant.component.ts - 365 + 366 @@ -2479,7 +2479,7 @@ libs/ui/src/lib/assistant/assistant.component.ts - 377 + 378 @@ -2491,7 +2491,7 @@ libs/ui/src/lib/assistant/assistant.component.ts - 387 + 388 @@ -2511,7 +2511,7 @@ libs/ui/src/lib/assistant/assistant.component.ts - 409 + 410 @@ -2531,7 +2531,7 @@ libs/ui/src/lib/assistant/assistant.component.ts - 415 + 416 @@ -2695,7 +2695,7 @@ Jump to a page... libs/ui/src/lib/assistant/assistant.component.ts - 449 + 450 @@ -2719,7 +2719,7 @@ Include in apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 399 + 400 @@ -2791,7 +2791,7 @@ Localització apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 547 + 548 apps/client/src/app/components/user-account-settings/user-account-settings.html @@ -3135,7 +3135,7 @@ apps/client/src/app/components/holding-detail-dialog/holding-detail-dialog.html - 395 + 396 apps/client/src/app/components/user-detail-dialog/user-detail-dialog.html @@ -3251,7 +3251,7 @@ Dades de mercat apps/client/src/app/components/holding-detail-dialog/holding-detail-dialog.html - 417 + 418 libs/common/src/lib/routes/routes.ts @@ -3291,11 +3291,11 @@ Visió general apps/client/src/app/components/account-detail-dialog/account-detail-dialog.html - 41 + 42 apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 114 + 115 apps/client/src/app/components/header/header.component.html @@ -3307,7 +3307,7 @@ apps/client/src/app/components/holding-detail-dialog/holding-detail-dialog.html - 47 + 48 apps/client/src/app/pages/admin/admin-page.component.ts @@ -3708,7 +3708,7 @@ Explotacions apps/client/src/app/components/account-detail-dialog/account-detail-dialog.html - 126 + 127 apps/client/src/app/components/home-holdings/home-holdings.html @@ -3760,7 +3760,7 @@ Mercats apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 403 + 404 apps/client/src/app/components/footer/footer.component.html @@ -3963,6 +3963,14 @@ 84 + + Do you really want to delete these activities? + Do you really want to delete these activities? + + libs/ui/src/lib/activities-table/activities-table.component.ts + 334 + + Why Ghostfolio? Per què Ghostfolio? @@ -4212,7 +4220,7 @@ Convert to apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 174 + 175 @@ -4288,15 +4296,15 @@ Activitats apps/client/src/app/components/account-detail-dialog/account-detail-dialog.html - 102 + 103 apps/client/src/app/components/account-detail-dialog/account-detail-dialog.html - 137 + 138 apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 244 + 245 apps/client/src/app/components/admin-overview/admin-overview.html @@ -4312,11 +4320,11 @@ apps/client/src/app/components/holding-detail-dialog/holding-detail-dialog.html - 233 + 234 apps/client/src/app/components/holding-detail-dialog/holding-detail-dialog.html - 361 + 362 apps/client/src/app/components/user-detail-dialog/user-detail-dialog.html @@ -4412,7 +4420,7 @@ libs/ui/src/lib/activities-table/activities-table.component.html - 237 + 251 @@ -4424,11 +4432,11 @@ libs/ui/src/lib/activities-table/activities-table.component.html - 28 + 30 libs/ui/src/lib/activities-table/activities-table.component.html - 406 + 420 @@ -4440,11 +4448,11 @@ libs/ui/src/lib/activities-table/activities-table.component.html - 52 + 54 libs/ui/src/lib/activities-table/activities-table.component.html - 420 + 434 @@ -4796,11 +4804,11 @@ Dividend apps/client/src/app/components/account-detail-dialog/account-detail-dialog.html - 90 + 91 apps/client/src/app/components/holding-detail-dialog/holding-detail-dialog.html - 188 + 189 apps/client/src/app/components/portfolio-summary/portfolio-summary.component.html @@ -4864,7 +4872,7 @@ Close Holding apps/client/src/app/components/holding-detail-dialog/holding-detail-dialog.html - 450 + 451 @@ -5689,11 +5697,11 @@ Activitats d’exportació libs/ui/src/lib/activities-table/activities-table.component.html - 64 + 72 libs/ui/src/lib/activities-table/activities-table.component.html - 434 + 448 @@ -5701,11 +5709,11 @@ Exporta esborranys com a ICS libs/ui/src/lib/activities-table/activities-table.component.html - 77 + 86 libs/ui/src/lib/activities-table/activities-table.component.html - 447 + 461 @@ -5713,7 +5721,7 @@ Suprimeix les activitats libs/ui/src/lib/activities-table/activities-table.component.html - 92 + 105 @@ -5721,7 +5729,7 @@ Esborrany libs/ui/src/lib/activities-table/activities-table.component.html - 167 + 181 @@ -5729,7 +5737,7 @@ Clonar libs/ui/src/lib/activities-table/activities-table.component.html - 492 + 506 @@ -5737,15 +5745,7 @@ Exporta l’esborrany com a ICS libs/ui/src/lib/activities-table/activities-table.component.html - 502 - - - - Do you really want to delete these activities? - De veritat vols suprimir aquestes activitats? - - libs/ui/src/lib/activities-table/activities-table.component.ts - 317 + 516 @@ -5753,7 +5753,11 @@ Realment vols suprimir aquesta activitat? libs/ui/src/lib/activities-table/activities-table.component.ts - 327 + 333 + + + libs/ui/src/lib/activities-table/activities-table.component.ts + 344 @@ -5761,7 +5765,7 @@ Setmana fins avui libs/ui/src/lib/assistant/assistant.component.ts - 369 + 370 @@ -5773,7 +5777,7 @@ libs/ui/src/lib/assistant/assistant.component.ts - 369 + 370 @@ -5781,7 +5785,7 @@ Mes fins a la data libs/ui/src/lib/assistant/assistant.component.ts - 373 + 374 @@ -5793,7 +5797,7 @@ libs/ui/src/lib/assistant/assistant.component.ts - 373 + 374 @@ -5809,7 +5813,7 @@ Any fins a la data libs/ui/src/lib/assistant/assistant.component.ts - 377 + 378 @@ -5829,7 +5833,7 @@ libs/ui/src/lib/assistant/assistant.component.ts - 387 + 388 @@ -5841,7 +5845,7 @@ libs/ui/src/lib/assistant/assistant.component.ts - 409 + 410 @@ -6005,7 +6009,7 @@ Interès apps/client/src/app/components/account-detail-dialog/account-detail-dialog.html - 78 + 79 apps/client/src/app/components/portfolio-summary/portfolio-summary.component.html @@ -6073,7 +6077,7 @@ libs/ui/src/lib/activities-table/activities-table.component.html - 335 + 349 libs/ui/src/lib/i18n.ts @@ -6101,15 +6105,15 @@ apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 253 + 254 apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 349 + 350 apps/client/src/app/components/holding-detail-dialog/holding-detail-dialog.html - 244 + 245 apps/client/src/app/pages/portfolio/activities/create-or-update-activity-dialog/create-or-update-activity-dialog.html @@ -6133,15 +6137,15 @@ apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 262 + 263 apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 365 + 366 apps/client/src/app/components/holding-detail-dialog/holding-detail-dialog.html - 253 + 254 apps/client/src/app/pages/portfolio/activities/create-or-update-activity-dialog/create-or-update-activity-dialog.html @@ -6333,7 +6337,7 @@ apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 186 + 187 apps/client/src/app/components/admin-market-data/create-asset-profile-dialog/create-asset-profile-dialog.html @@ -6341,13 +6345,21 @@ apps/client/src/app/components/holding-detail-dialog/holding-detail-dialog.html - 322 + 323 libs/ui/src/lib/i18n.ts 35 + + Export + Export + + libs/ui/src/lib/activities-table/activities-table.component.html + 68 + + Tag Etiqueta @@ -6417,7 +6429,7 @@ libs/ui/src/lib/activities-table/activities-table.component.html - 261 + 275 libs/ui/src/lib/i18n.ts @@ -6477,7 +6489,7 @@ Patrimoni apps/client/src/app/components/account-detail-dialog/account-detail-dialog.html - 66 + 67 libs/ui/src/lib/i18n.ts @@ -6637,7 +6649,7 @@ Invested Capital apps/client/src/app/components/holding-detail-dialog/holding-detail-dialog.html - 173 + 174 apps/client/src/app/components/portfolio-summary/portfolio-summary.component.html @@ -6921,7 +6933,7 @@ View Holding libs/ui/src/lib/activities-table/activities-table.component.html - 473 + 487 @@ -6977,11 +6989,11 @@ Cancel apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 162 + 163 apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 634 + 635 apps/client/src/app/components/admin-market-data/create-asset-profile-dialog/create-asset-profile-dialog.html @@ -7033,7 +7045,7 @@ Close apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 636 + 637 apps/client/src/app/components/admin-market-data/create-asset-profile-dialog/create-asset-profile-dialog.html @@ -7125,7 +7137,7 @@ Change with currency effect Change apps/client/src/app/components/holding-detail-dialog/holding-detail-dialog.html - 63 + 64 @@ -7141,7 +7153,7 @@ Performance with currency effect Performance apps/client/src/app/components/holding-detail-dialog/holding-detail-dialog.html - 83 + 84 @@ -7287,6 +7299,10 @@ apps/client/src/app/components/admin-market-data/admin-market-data.html 270 + + libs/ui/src/lib/activities-table/activities-table.component.html + 101 + cannot be self-hosted @@ -7607,7 +7623,7 @@ Save apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 645 + 646 apps/client/src/app/components/admin-market-data/create-asset-profile-dialog/create-asset-profile-dialog.html @@ -7739,7 +7755,7 @@ Default Market Price apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 519 + 520 @@ -7747,7 +7763,7 @@ Mode apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 556 + 557 @@ -7763,7 +7779,7 @@ Selector apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 572 + 573 @@ -7771,7 +7787,7 @@ HTTP Request Headers apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 532 + 533 @@ -8016,7 +8032,7 @@ Apply apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 154 + 155 @@ -8107,6 +8123,18 @@ 142 + + {VAR_PLURAL, plural, =1 {Activity} other {Activities}} + {VAR_PLURAL, plural, =1 {Activity} other {Activities}} + + libs/ui/src/lib/activities-table/activities-table.component.html + 69 + + + libs/ui/src/lib/activities-table/activities-table.component.html + 102 + + Log out Log out @@ -8576,7 +8604,7 @@ Manage Asset Profile apps/client/src/app/components/holding-detail-dialog/holding-detail-dialog.html - 478 + 479 @@ -8604,7 +8632,7 @@ apps/client/src/app/components/holding-detail-dialog/holding-detail-dialog.html - 101 + 102 diff --git a/apps/client/src/locales/messages.de.xlf b/apps/client/src/locales/messages.de.xlf index 0378b1068..b2800165a 100644 --- a/apps/client/src/locales/messages.de.xlf +++ b/apps/client/src/locales/messages.de.xlf @@ -66,11 +66,11 @@ libs/ui/src/lib/activities-table/activities-table.component.html - 5 + 7 libs/ui/src/lib/activities-table/activities-table.component.html - 183 + 197 @@ -114,7 +114,7 @@ apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 332 + 333 apps/client/src/app/components/admin-platform/admin-platform.component.html @@ -150,7 +150,7 @@ libs/ui/src/lib/activities-table/activities-table.component.html - 161 + 175 libs/ui/src/lib/benchmark/benchmark.component.html @@ -210,11 +210,11 @@ libs/ui/src/lib/activities-table/activities-table.component.html - 284 + 298 libs/ui/src/lib/activities-table/activities-table.component.html - 320 + 334 libs/ui/src/lib/holdings-table/holdings-table.component.html @@ -254,7 +254,7 @@ libs/ui/src/lib/activities-table/activities-table.component.html - 483 + 497 @@ -294,7 +294,7 @@ libs/ui/src/lib/activities-table/activities-table.component.html - 513 + 527 libs/ui/src/lib/benchmark/benchmark.component.html @@ -338,7 +338,7 @@ apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 197 + 198 apps/client/src/app/pages/portfolio/activities/create-or-update-activity-dialog/create-or-update-activity-dialog.html @@ -422,7 +422,7 @@ apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 486 + 487 @@ -462,7 +462,7 @@ Finde ein Konto... libs/ui/src/lib/assistant/assistant.component.ts - 447 + 448 @@ -478,7 +478,7 @@ libs/ui/src/lib/activities-table/activities-table.component.html - 192 + 206 libs/ui/src/lib/historical-market-data-editor/historical-market-data-editor-dialog/historical-market-data-editor-dialog.html @@ -502,7 +502,7 @@ apps/client/src/app/components/holding-detail-dialog/holding-detail-dialog.html - 113 + 114 libs/ui/src/lib/historical-market-data-editor/historical-market-data-editor-dialog/historical-market-data-editor-dialog.html @@ -518,11 +518,11 @@ apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 235 + 236 apps/client/src/app/components/holding-detail-dialog/holding-detail-dialog.html - 221 + 222 libs/ui/src/lib/holdings-table/holdings-table.component.html @@ -726,7 +726,7 @@ Aktuelle Marktstimmung libs/ui/src/lib/fear-and-greed-index/fear-and-greed-index.component.html - 22 + 23 @@ -870,7 +870,7 @@ oder apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 167 + 168 apps/client/src/app/components/admin-settings/admin-settings.component.html @@ -1014,15 +1014,15 @@ Sektoren apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 301 + 302 apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 420 + 421 apps/client/src/app/components/holding-detail-dialog/holding-detail-dialog.html - 290 + 291 apps/client/src/app/pages/public/public-page.html @@ -1034,15 +1034,15 @@ Länder apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 311 + 312 apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 431 + 432 apps/client/src/app/components/holding-detail-dialog/holding-detail-dialog.html - 302 + 303 @@ -1066,7 +1066,7 @@ Datenfehler melden apps/client/src/app/components/holding-detail-dialog/holding-detail-dialog.html - 463 + 464 @@ -1114,7 +1114,7 @@ libs/ui/src/lib/assistant/assistant.component.ts - 365 + 366 @@ -1126,7 +1126,7 @@ libs/ui/src/lib/assistant/assistant.component.ts - 377 + 378 @@ -1138,7 +1138,7 @@ libs/ui/src/lib/assistant/assistant.component.ts - 387 + 388 @@ -1158,7 +1158,7 @@ libs/ui/src/lib/assistant/assistant.component.ts - 409 + 410 @@ -1178,7 +1178,7 @@ libs/ui/src/lib/assistant/assistant.component.ts - 415 + 416 @@ -1358,7 +1358,7 @@ Lokalität apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 547 + 548 apps/client/src/app/components/user-account-settings/user-account-settings.html @@ -1470,7 +1470,7 @@ apps/client/src/app/components/holding-detail-dialog/holding-detail-dialog.html - 395 + 396 apps/client/src/app/components/user-detail-dialog/user-detail-dialog.html @@ -1518,11 +1518,11 @@ Währung apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 216 + 217 apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 339 + 340 apps/client/src/app/components/admin-market-data/create-asset-profile-dialog/create-asset-profile-dialog.html @@ -1542,7 +1542,7 @@ libs/ui/src/lib/activities-table/activities-table.component.html - 303 + 317 @@ -1550,7 +1550,7 @@ Cash-Bestand apps/client/src/app/components/account-detail-dialog/account-detail-dialog.html - 54 + 55 apps/client/src/app/pages/accounts/create-or-update-account-dialog/create-or-update-account-dialog.html @@ -1566,7 +1566,7 @@ Plattform apps/client/src/app/components/account-detail-dialog/account-detail-dialog.html - 112 + 113 apps/client/src/app/pages/accounts/create-or-update-account-dialog/create-or-update-account-dialog.html @@ -1798,11 +1798,11 @@ Übersicht apps/client/src/app/components/account-detail-dialog/account-detail-dialog.html - 41 + 42 apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 114 + 115 apps/client/src/app/components/header/header.component.html @@ -1814,7 +1814,7 @@ apps/client/src/app/components/holding-detail-dialog/holding-detail-dialog.html - 47 + 48 apps/client/src/app/pages/admin/admin-page.component.ts @@ -1838,7 +1838,7 @@ Märkte apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 403 + 404 apps/client/src/app/components/footer/footer.component.html @@ -2022,7 +2022,7 @@ Positionen apps/client/src/app/components/account-detail-dialog/account-detail-dialog.html - 126 + 127 apps/client/src/app/components/home-holdings/home-holdings.html @@ -2094,7 +2094,7 @@ Name, Symbol oder ISIN apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 133 + 134 apps/client/src/app/components/admin-market-data/create-asset-profile-dialog/create-asset-profile-dialog.html @@ -2122,7 +2122,7 @@ Anzahl apps/client/src/app/components/holding-detail-dialog/holding-detail-dialog.html - 159 + 160 apps/client/src/app/pages/portfolio/activities/create-or-update-activity-dialog/create-or-update-activity-dialog.html @@ -2130,7 +2130,7 @@ libs/ui/src/lib/activities-table/activities-table.component.html - 213 + 227 libs/ui/src/lib/holdings-table/holdings-table.component.html @@ -2146,7 +2146,7 @@ libs/ui/src/lib/activities-table/activities-table.component.html - 237 + 251 @@ -2154,7 +2154,7 @@ Kommentar apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 455 + 456 apps/client/src/app/pages/accounts/create-or-update-account-dialog/create-or-update-account-dialog.html @@ -2170,7 +2170,7 @@ libs/ui/src/lib/activities-table/activities-table.component.html - 370 + 384 @@ -2178,15 +2178,15 @@ Aktivitäten apps/client/src/app/components/account-detail-dialog/account-detail-dialog.html - 102 + 103 apps/client/src/app/components/account-detail-dialog/account-detail-dialog.html - 137 + 138 apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 244 + 245 apps/client/src/app/components/admin-overview/admin-overview.html @@ -2202,11 +2202,11 @@ apps/client/src/app/components/holding-detail-dialog/holding-detail-dialog.html - 233 + 234 apps/client/src/app/components/holding-detail-dialog/holding-detail-dialog.html - 361 + 362 apps/client/src/app/components/user-detail-dialog/user-detail-dialog.html @@ -2414,7 +2414,7 @@ Geplant libs/ui/src/lib/activities-table/activities-table.component.html - 167 + 181 @@ -2426,11 +2426,11 @@ libs/ui/src/lib/activities-table/activities-table.component.html - 28 + 30 libs/ui/src/lib/activities-table/activities-table.component.html - 406 + 420 @@ -2438,11 +2438,11 @@ Aktivitäten exportieren libs/ui/src/lib/activities-table/activities-table.component.html - 64 + 72 libs/ui/src/lib/activities-table/activities-table.component.html - 434 + 448 @@ -2450,11 +2450,11 @@ Geplante Aktivitäten als ICS exportieren libs/ui/src/lib/activities-table/activities-table.component.html - 77 + 86 libs/ui/src/lib/activities-table/activities-table.component.html - 447 + 461 @@ -2462,7 +2462,7 @@ Kopieren libs/ui/src/lib/activities-table/activities-table.component.html - 492 + 506 @@ -2470,7 +2470,7 @@ Geplante Aktivität als ICS exportieren libs/ui/src/lib/activities-table/activities-table.component.html - 502 + 516 @@ -2478,7 +2478,11 @@ Möchtest du diese Aktivität wirklich löschen? libs/ui/src/lib/activities-table/activities-table.component.ts - 327 + 333 + + + libs/ui/src/lib/activities-table/activities-table.component.ts + 344 @@ -2578,7 +2582,7 @@ Minimum Preis apps/client/src/app/components/holding-detail-dialog/holding-detail-dialog.html - 131 + 132 @@ -2586,7 +2590,7 @@ Maximum Preis apps/client/src/app/components/holding-detail-dialog/holding-detail-dialog.html - 149 + 150 @@ -2602,11 +2606,11 @@ Sektor apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 280 + 281 apps/client/src/app/components/holding-detail-dialog/holding-detail-dialog.html - 270 + 271 @@ -2614,7 +2618,7 @@ Land apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 295 + 296 apps/client/src/app/components/admin-users/admin-users.html @@ -2622,7 +2626,7 @@ apps/client/src/app/components/holding-detail-dialog/holding-detail-dialog.html - 284 + 285 apps/client/src/app/components/user-detail-dialog/user-detail-dialog.html @@ -2714,7 +2718,7 @@ Verzinsung apps/client/src/app/components/account-detail-dialog/account-detail-dialog.html - 78 + 79 apps/client/src/app/components/portfolio-summary/portfolio-summary.component.html @@ -2854,7 +2858,7 @@ Benchmark apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 401 + 402 apps/client/src/app/components/benchmark-comparator/benchmark-comparator.component.ts @@ -2974,7 +2978,7 @@ libs/ui/src/lib/activities-table/activities-table.component.html - 335 + 349 libs/ui/src/lib/i18n.ts @@ -2994,15 +2998,15 @@ apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 253 + 254 apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 349 + 350 apps/client/src/app/components/holding-detail-dialog/holding-detail-dialog.html - 244 + 245 apps/client/src/app/pages/portfolio/activities/create-or-update-activity-dialog/create-or-update-activity-dialog.html @@ -3030,7 +3034,7 @@ apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 186 + 187 apps/client/src/app/components/admin-market-data/create-asset-profile-dialog/create-asset-profile-dialog.html @@ -3038,13 +3042,21 @@ apps/client/src/app/components/holding-detail-dialog/holding-detail-dialog.html - 322 + 323 libs/ui/src/lib/i18n.ts 35 + + Export + exportieren + + libs/ui/src/lib/activities-table/activities-table.component.html + 68 + + Tag Tag @@ -3082,7 +3094,7 @@ Beteiligungskapital apps/client/src/app/components/account-detail-dialog/account-detail-dialog.html - 66 + 67 libs/ui/src/lib/i18n.ts @@ -3302,7 +3314,7 @@ Investiertes Kapital apps/client/src/app/components/holding-detail-dialog/holding-detail-dialog.html - 173 + 174 apps/client/src/app/components/portfolio-summary/portfolio-summary.component.html @@ -3362,7 +3374,7 @@ Häufigkeit der Datensynchronisierung apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 467 + 468 @@ -3386,7 +3398,7 @@ Symbol Zuordnung apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 409 + 410 @@ -3410,11 +3422,11 @@ Dividenden apps/client/src/app/components/account-detail-dialog/account-detail-dialog.html - 90 + 91 apps/client/src/app/components/holding-detail-dialog/holding-detail-dialog.html - 188 + 189 apps/client/src/app/components/portfolio-summary/portfolio-summary.component.html @@ -3446,15 +3458,15 @@ apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 262 + 263 apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 365 + 366 apps/client/src/app/components/holding-detail-dialog/holding-detail-dialog.html - 253 + 254 apps/client/src/app/pages/portfolio/activities/create-or-update-activity-dialog/create-or-update-activity-dialog.html @@ -3502,7 +3514,7 @@ Marktdaten apps/client/src/app/components/holding-detail-dialog/holding-detail-dialog.html - 417 + 418 libs/common/src/lib/routes/routes.ts @@ -3578,11 +3590,11 @@ libs/ui/src/lib/activities-table/activities-table.component.html - 52 + 54 libs/ui/src/lib/activities-table/activities-table.component.html - 420 + 434 @@ -3954,7 +3966,7 @@ Gebühren apps/client/src/app/components/holding-detail-dialog/holding-detail-dialog.html - 210 + 211 apps/client/src/app/components/portfolio-summary/portfolio-summary.component.html @@ -4125,14 +4137,6 @@ 254 - - Do you really want to delete these activities? - Möchtest du diese Aktivitäten wirklich löschen? - - libs/ui/src/lib/activities-table/activities-table.component.ts - 317 - - By ETF Provider Nach ETF-Anbieter @@ -4178,11 +4182,11 @@ Url apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 442 + 443 apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 588 + 589 apps/client/src/app/components/admin-platform/admin-platform.component.html @@ -4590,7 +4594,7 @@ Scraper Konfiguration apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 509 + 510 @@ -5281,6 +5285,14 @@ 84 + + Do you really want to delete these activities? + Möchtest du diese Aktivitäten wirklich löschen? + + libs/ui/src/lib/activities-table/activities-table.component.ts + 334 + + Why Ghostfolio? Warum Ghostfolio? @@ -5780,7 +5792,7 @@ In umwandeln apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 174 + 175 @@ -5852,7 +5864,7 @@ libs/ui/src/lib/activities-table/activities-table.component.html - 261 + 275 libs/ui/src/lib/i18n.ts @@ -6144,7 +6156,7 @@ Cash-Bestände apps/client/src/app/components/account-detail-dialog/account-detail-dialog.html - 169 + 170 @@ -6188,7 +6200,7 @@ Test apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 606 + 607 @@ -6284,7 +6296,7 @@ Position abschliessen apps/client/src/app/components/holding-detail-dialog/holding-detail-dialog.html - 450 + 451 @@ -6324,7 +6336,7 @@ Seit Wochenbeginn libs/ui/src/lib/assistant/assistant.component.ts - 369 + 370 @@ -6336,7 +6348,7 @@ libs/ui/src/lib/assistant/assistant.component.ts - 369 + 370 @@ -6344,7 +6356,7 @@ Seit Monatsbeginn libs/ui/src/lib/assistant/assistant.component.ts - 373 + 374 @@ -6356,7 +6368,7 @@ libs/ui/src/lib/assistant/assistant.component.ts - 373 + 374 @@ -6372,7 +6384,7 @@ Seit Jahresbeginn libs/ui/src/lib/assistant/assistant.component.ts - 377 + 378 @@ -6428,7 +6440,7 @@ libs/ui/src/lib/assistant/assistant.component.ts - 387 + 388 @@ -6440,7 +6452,7 @@ libs/ui/src/lib/assistant/assistant.component.ts - 409 + 410 @@ -6456,7 +6468,7 @@ Finanzmarktdaten synchronisieren apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 629 + 630 apps/client/src/app/components/admin-overview/admin-overview.html @@ -6468,7 +6480,7 @@ Finde eine Position... libs/ui/src/lib/assistant/assistant.component.ts - 448 + 449 @@ -6561,11 +6573,11 @@ Aktivität apps/client/src/app/components/account-detail-dialog/account-detail-dialog.html - 100 + 101 apps/client/src/app/components/holding-detail-dialog/holding-detail-dialog.html - 231 + 232 @@ -6573,7 +6585,7 @@ Dividendenrendite apps/client/src/app/components/holding-detail-dialog/holding-detail-dialog.html - 198 + 199 @@ -6629,7 +6641,7 @@ Aktivitäten löschen libs/ui/src/lib/activities-table/activities-table.component.html - 92 + 105 @@ -6653,7 +6665,7 @@ Springe zu einer Seite... libs/ui/src/lib/assistant/assistant.component.ts - 449 + 450 @@ -6709,7 +6721,7 @@ Berücksichtigen in apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 399 + 400 @@ -6945,7 +6957,7 @@ Position ansehen libs/ui/src/lib/activities-table/activities-table.component.html - 473 + 487 @@ -7001,11 +7013,11 @@ Abbrechen apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 162 + 163 apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 634 + 635 apps/client/src/app/components/admin-market-data/create-asset-profile-dialog/create-asset-profile-dialog.html @@ -7057,7 +7069,7 @@ Schliessen apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 636 + 637 apps/client/src/app/components/admin-market-data/create-asset-profile-dialog/create-asset-profile-dialog.html @@ -7149,7 +7161,7 @@ Änderung mit Währungseffekt Änderung apps/client/src/app/components/holding-detail-dialog/holding-detail-dialog.html - 63 + 64 @@ -7165,7 +7177,7 @@ Performance mit Währungseffekt Performance apps/client/src/app/components/holding-detail-dialog/holding-detail-dialog.html - 83 + 84 @@ -7311,6 +7323,10 @@ apps/client/src/app/components/admin-market-data/admin-market-data.html 270 + + libs/ui/src/lib/activities-table/activities-table.component.html + 101 + cannot be self-hosted @@ -7631,7 +7647,7 @@ Speichern apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 645 + 646 apps/client/src/app/components/admin-market-data/create-asset-profile-dialog/create-asset-profile-dialog.html @@ -7763,7 +7779,7 @@ Standardmarktpreis apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 519 + 520 @@ -7771,7 +7787,7 @@ Modus apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 556 + 557 @@ -7787,7 +7803,7 @@ Selektor apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 572 + 573 @@ -7795,7 +7811,7 @@ HTTP Request-Headers apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 532 + 533 @@ -8040,7 +8056,7 @@ Übernehmen apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 154 + 155 @@ -8107,6 +8123,18 @@ 142 + + {VAR_PLURAL, plural, =1 {Activity} other {Activities}} + {VAR_PLURAL, plural, =1 {Aktivität} other {Aktivitäten}} + + libs/ui/src/lib/activities-table/activities-table.component.html + 69 + + + libs/ui/src/lib/activities-table/activities-table.component.html + 102 + + Log out Ausloggen @@ -8576,7 +8604,7 @@ Anlageprofil verwalten apps/client/src/app/components/holding-detail-dialog/holding-detail-dialog.html - 478 + 479 @@ -8604,7 +8632,7 @@ apps/client/src/app/components/holding-detail-dialog/holding-detail-dialog.html - 101 + 102 diff --git a/apps/client/src/locales/messages.es.xlf b/apps/client/src/locales/messages.es.xlf index 87c434b2c..81e2e9968 100644 --- a/apps/client/src/locales/messages.es.xlf +++ b/apps/client/src/locales/messages.es.xlf @@ -67,11 +67,11 @@ libs/ui/src/lib/activities-table/activities-table.component.html - 5 + 7 libs/ui/src/lib/activities-table/activities-table.component.html - 183 + 197 @@ -115,7 +115,7 @@ apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 332 + 333 apps/client/src/app/components/admin-platform/admin-platform.component.html @@ -151,7 +151,7 @@ libs/ui/src/lib/activities-table/activities-table.component.html - 161 + 175 libs/ui/src/lib/benchmark/benchmark.component.html @@ -211,11 +211,11 @@ libs/ui/src/lib/activities-table/activities-table.component.html - 284 + 298 libs/ui/src/lib/activities-table/activities-table.component.html - 320 + 334 libs/ui/src/lib/holdings-table/holdings-table.component.html @@ -255,7 +255,7 @@ libs/ui/src/lib/activities-table/activities-table.component.html - 483 + 497 @@ -295,7 +295,7 @@ libs/ui/src/lib/activities-table/activities-table.component.html - 513 + 527 libs/ui/src/lib/benchmark/benchmark.component.html @@ -339,7 +339,7 @@ apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 197 + 198 apps/client/src/app/pages/portfolio/activities/create-or-update-activity-dialog/create-or-update-activity-dialog.html @@ -423,7 +423,7 @@ apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 486 + 487 @@ -463,7 +463,7 @@ Buscar una cuenta... libs/ui/src/lib/assistant/assistant.component.ts - 447 + 448 @@ -479,7 +479,7 @@ libs/ui/src/lib/activities-table/activities-table.component.html - 192 + 206 libs/ui/src/lib/historical-market-data-editor/historical-market-data-editor-dialog/historical-market-data-editor-dialog.html @@ -503,7 +503,7 @@ apps/client/src/app/components/holding-detail-dialog/holding-detail-dialog.html - 113 + 114 libs/ui/src/lib/historical-market-data-editor/historical-market-data-editor-dialog/historical-market-data-editor-dialog.html @@ -519,11 +519,11 @@ apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 235 + 236 apps/client/src/app/components/holding-detail-dialog/holding-detail-dialog.html - 221 + 222 libs/ui/src/lib/holdings-table/holdings-table.component.html @@ -711,7 +711,7 @@ Sentimiento del mercado libs/ui/src/lib/fear-and-greed-index/fear-and-greed-index.component.html - 22 + 23 @@ -855,7 +855,7 @@ o apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 167 + 168 apps/client/src/app/components/admin-settings/admin-settings.component.html @@ -999,15 +999,15 @@ Sectores apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 301 + 302 apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 420 + 421 apps/client/src/app/components/holding-detail-dialog/holding-detail-dialog.html - 290 + 291 apps/client/src/app/pages/public/public-page.html @@ -1019,15 +1019,15 @@ Países apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 311 + 312 apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 431 + 432 apps/client/src/app/components/holding-detail-dialog/holding-detail-dialog.html - 302 + 303 @@ -1051,7 +1051,7 @@ Reportar anomalía en los datos apps/client/src/app/components/holding-detail-dialog/holding-detail-dialog.html - 463 + 464 @@ -1099,7 +1099,7 @@ libs/ui/src/lib/assistant/assistant.component.ts - 365 + 366 @@ -1111,7 +1111,7 @@ libs/ui/src/lib/assistant/assistant.component.ts - 377 + 378 @@ -1123,7 +1123,7 @@ libs/ui/src/lib/assistant/assistant.component.ts - 387 + 388 @@ -1143,7 +1143,7 @@ libs/ui/src/lib/assistant/assistant.component.ts - 409 + 410 @@ -1163,7 +1163,7 @@ libs/ui/src/lib/assistant/assistant.component.ts - 415 + 416 @@ -1343,7 +1343,7 @@ Configuración regional apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 547 + 548 apps/client/src/app/components/user-account-settings/user-account-settings.html @@ -1455,7 +1455,7 @@ apps/client/src/app/components/holding-detail-dialog/holding-detail-dialog.html - 395 + 396 apps/client/src/app/components/user-detail-dialog/user-detail-dialog.html @@ -1503,11 +1503,11 @@ Divisa apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 216 + 217 apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 339 + 340 apps/client/src/app/components/admin-market-data/create-asset-profile-dialog/create-asset-profile-dialog.html @@ -1527,7 +1527,7 @@ libs/ui/src/lib/activities-table/activities-table.component.html - 303 + 317 @@ -1535,7 +1535,7 @@ Saldo en efectivo apps/client/src/app/components/account-detail-dialog/account-detail-dialog.html - 54 + 55 apps/client/src/app/pages/accounts/create-or-update-account-dialog/create-or-update-account-dialog.html @@ -1551,7 +1551,7 @@ Plataforma apps/client/src/app/components/account-detail-dialog/account-detail-dialog.html - 112 + 113 apps/client/src/app/pages/accounts/create-or-update-account-dialog/create-or-update-account-dialog.html @@ -1783,11 +1783,11 @@ Visión general apps/client/src/app/components/account-detail-dialog/account-detail-dialog.html - 41 + 42 apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 114 + 115 apps/client/src/app/components/header/header.component.html @@ -1799,7 +1799,7 @@ apps/client/src/app/components/holding-detail-dialog/holding-detail-dialog.html - 47 + 48 apps/client/src/app/pages/admin/admin-page.component.ts @@ -1823,7 +1823,7 @@ Mercados apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 403 + 404 apps/client/src/app/components/footer/footer.component.html @@ -2007,7 +2007,7 @@ Posiciones apps/client/src/app/components/account-detail-dialog/account-detail-dialog.html - 126 + 127 apps/client/src/app/components/home-holdings/home-holdings.html @@ -2079,7 +2079,7 @@ Nombre, símbolo o ISIN apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 133 + 134 apps/client/src/app/components/admin-market-data/create-asset-profile-dialog/create-asset-profile-dialog.html @@ -2107,7 +2107,7 @@ Cantidad apps/client/src/app/components/holding-detail-dialog/holding-detail-dialog.html - 159 + 160 apps/client/src/app/pages/portfolio/activities/create-or-update-activity-dialog/create-or-update-activity-dialog.html @@ -2115,7 +2115,7 @@ libs/ui/src/lib/activities-table/activities-table.component.html - 213 + 227 libs/ui/src/lib/holdings-table/holdings-table.component.html @@ -2131,7 +2131,7 @@ libs/ui/src/lib/activities-table/activities-table.component.html - 237 + 251 @@ -2139,7 +2139,7 @@ Nota apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 455 + 456 apps/client/src/app/pages/accounts/create-or-update-account-dialog/create-or-update-account-dialog.html @@ -2155,7 +2155,7 @@ libs/ui/src/lib/activities-table/activities-table.component.html - 370 + 384 @@ -2163,15 +2163,15 @@ Operaciones apps/client/src/app/components/account-detail-dialog/account-detail-dialog.html - 102 + 103 apps/client/src/app/components/account-detail-dialog/account-detail-dialog.html - 137 + 138 apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 244 + 245 apps/client/src/app/components/admin-overview/admin-overview.html @@ -2187,11 +2187,11 @@ apps/client/src/app/components/holding-detail-dialog/holding-detail-dialog.html - 233 + 234 apps/client/src/app/components/holding-detail-dialog/holding-detail-dialog.html - 361 + 362 apps/client/src/app/components/user-detail-dialog/user-detail-dialog.html @@ -2399,7 +2399,7 @@ Borrador libs/ui/src/lib/activities-table/activities-table.component.html - 167 + 181 @@ -2411,11 +2411,11 @@ libs/ui/src/lib/activities-table/activities-table.component.html - 28 + 30 libs/ui/src/lib/activities-table/activities-table.component.html - 406 + 420 @@ -2423,11 +2423,11 @@ Exportar operaciones libs/ui/src/lib/activities-table/activities-table.component.html - 64 + 72 libs/ui/src/lib/activities-table/activities-table.component.html - 434 + 448 @@ -2435,11 +2435,11 @@ Exportar borrador como ICS libs/ui/src/lib/activities-table/activities-table.component.html - 77 + 86 libs/ui/src/lib/activities-table/activities-table.component.html - 447 + 461 @@ -2447,7 +2447,7 @@ Clonar libs/ui/src/lib/activities-table/activities-table.component.html - 492 + 506 @@ -2455,7 +2455,7 @@ Exportar borrador como ICS libs/ui/src/lib/activities-table/activities-table.component.html - 502 + 516 @@ -2463,7 +2463,11 @@ ¿Seguro que quieres eliminar esta operación? libs/ui/src/lib/activities-table/activities-table.component.ts - 327 + 333 + + + libs/ui/src/lib/activities-table/activities-table.component.ts + 344 @@ -2595,7 +2599,7 @@ Precio máximo apps/client/src/app/components/holding-detail-dialog/holding-detail-dialog.html - 149 + 150 @@ -2635,11 +2639,11 @@ Sector apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 280 + 281 apps/client/src/app/components/holding-detail-dialog/holding-detail-dialog.html - 270 + 271 @@ -2647,7 +2651,7 @@ País apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 295 + 296 apps/client/src/app/components/admin-users/admin-users.html @@ -2655,7 +2659,7 @@ apps/client/src/app/components/holding-detail-dialog/holding-detail-dialog.html - 284 + 285 apps/client/src/app/components/user-detail-dialog/user-detail-dialog.html @@ -2667,7 +2671,7 @@ Precio mínimo apps/client/src/app/components/holding-detail-dialog/holding-detail-dialog.html - 131 + 132 @@ -2691,7 +2695,7 @@ Interés apps/client/src/app/components/account-detail-dialog/account-detail-dialog.html - 78 + 79 apps/client/src/app/components/portfolio-summary/portfolio-summary.component.html @@ -2819,7 +2823,7 @@ Índice de referencia apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 401 + 402 apps/client/src/app/components/benchmark-comparator/benchmark-comparator.component.ts @@ -2959,7 +2963,7 @@ libs/ui/src/lib/activities-table/activities-table.component.html - 335 + 349 libs/ui/src/lib/i18n.ts @@ -2979,15 +2983,15 @@ apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 253 + 254 apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 349 + 350 apps/client/src/app/components/holding-detail-dialog/holding-detail-dialog.html - 244 + 245 apps/client/src/app/pages/portfolio/activities/create-or-update-activity-dialog/create-or-update-activity-dialog.html @@ -3015,7 +3019,7 @@ apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 186 + 187 apps/client/src/app/components/admin-market-data/create-asset-profile-dialog/create-asset-profile-dialog.html @@ -3023,13 +3027,21 @@ apps/client/src/app/components/holding-detail-dialog/holding-detail-dialog.html - 322 + 323 libs/ui/src/lib/i18n.ts 35 + + Export + Export + + libs/ui/src/lib/activities-table/activities-table.component.html + 68 + + Tag Etiqueta @@ -3067,7 +3079,7 @@ Renta variable apps/client/src/app/components/account-detail-dialog/account-detail-dialog.html - 66 + 67 libs/ui/src/lib/i18n.ts @@ -3287,7 +3299,7 @@ Capital invertido apps/client/src/app/components/holding-detail-dialog/holding-detail-dialog.html - 173 + 174 apps/client/src/app/components/portfolio-summary/portfolio-summary.component.html @@ -3347,7 +3359,7 @@ Frecuencia de recopilación de datos apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 467 + 468 @@ -3371,7 +3383,7 @@ Mapeo de símbolos apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 409 + 410 @@ -3387,11 +3399,11 @@ Dividendo apps/client/src/app/components/account-detail-dialog/account-detail-dialog.html - 90 + 91 apps/client/src/app/components/holding-detail-dialog/holding-detail-dialog.html - 188 + 189 apps/client/src/app/components/portfolio-summary/portfolio-summary.component.html @@ -3431,15 +3443,15 @@ apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 262 + 263 apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 365 + 366 apps/client/src/app/components/holding-detail-dialog/holding-detail-dialog.html - 253 + 254 apps/client/src/app/pages/portfolio/activities/create-or-update-activity-dialog/create-or-update-activity-dialog.html @@ -3487,7 +3499,7 @@ Datos del mercado apps/client/src/app/components/holding-detail-dialog/holding-detail-dialog.html - 417 + 418 libs/common/src/lib/routes/routes.ts @@ -3563,11 +3575,11 @@ libs/ui/src/lib/activities-table/activities-table.component.html - 52 + 54 libs/ui/src/lib/activities-table/activities-table.component.html - 420 + 434 @@ -3939,7 +3951,7 @@ Comisiones apps/client/src/app/components/holding-detail-dialog/holding-detail-dialog.html - 210 + 211 apps/client/src/app/components/portfolio-summary/portfolio-summary.component.html @@ -4102,14 +4114,6 @@ 254 - - Do you really want to delete these activities? - ¿Seguro que quieres eliminar estas operaciones? - - libs/ui/src/lib/activities-table/activities-table.component.ts - 317 - - By ETF Provider Por proveedor de ETF @@ -4155,11 +4159,11 @@ Url apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 442 + 443 apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 588 + 589 apps/client/src/app/components/admin-platform/admin-platform.component.html @@ -4567,7 +4571,7 @@ Configuración del scraper apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 509 + 510 @@ -5258,6 +5262,14 @@ 84 + + Do you really want to delete these activities? + Do you really want to delete these activities? + + libs/ui/src/lib/activities-table/activities-table.component.ts + 334 + + Why Ghostfolio? ¿Por qué Ghostfolio? @@ -5757,7 +5769,7 @@ Convertir a apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 174 + 175 @@ -5829,7 +5841,7 @@ libs/ui/src/lib/activities-table/activities-table.component.html - 261 + 275 libs/ui/src/lib/i18n.ts @@ -6121,7 +6133,7 @@ Saldos de efectivo apps/client/src/app/components/account-detail-dialog/account-detail-dialog.html - 169 + 170 @@ -6165,7 +6177,7 @@ Prueba apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 606 + 607 @@ -6261,7 +6273,7 @@ Cerrar posición apps/client/src/app/components/holding-detail-dialog/holding-detail-dialog.html - 450 + 451 @@ -6301,7 +6313,7 @@ Semana hasta la fecha libs/ui/src/lib/assistant/assistant.component.ts - 369 + 370 @@ -6313,7 +6325,7 @@ libs/ui/src/lib/assistant/assistant.component.ts - 369 + 370 @@ -6321,7 +6333,7 @@ Mes hasta la fecha libs/ui/src/lib/assistant/assistant.component.ts - 373 + 374 @@ -6333,7 +6345,7 @@ libs/ui/src/lib/assistant/assistant.component.ts - 373 + 374 @@ -6349,7 +6361,7 @@ Año hasta la fecha libs/ui/src/lib/assistant/assistant.component.ts - 377 + 378 @@ -6405,7 +6417,7 @@ libs/ui/src/lib/assistant/assistant.component.ts - 387 + 388 @@ -6417,7 +6429,7 @@ libs/ui/src/lib/assistant/assistant.component.ts - 409 + 410 @@ -6433,7 +6445,7 @@ Recopilación de datos apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 629 + 630 apps/client/src/app/components/admin-overview/admin-overview.html @@ -6445,7 +6457,7 @@ Buscar una posición... libs/ui/src/lib/assistant/assistant.component.ts - 448 + 449 @@ -6538,11 +6550,11 @@ Operación apps/client/src/app/components/account-detail-dialog/account-detail-dialog.html - 100 + 101 apps/client/src/app/components/holding-detail-dialog/holding-detail-dialog.html - 231 + 232 @@ -6550,7 +6562,7 @@ Rendimiento por dividendo apps/client/src/app/components/holding-detail-dialog/holding-detail-dialog.html - 198 + 199 @@ -6606,7 +6618,7 @@ Eliminar operaciones libs/ui/src/lib/activities-table/activities-table.component.html - 92 + 105 @@ -6630,7 +6642,7 @@ Saltar a una página... libs/ui/src/lib/assistant/assistant.component.ts - 449 + 450 @@ -6686,7 +6698,7 @@ Incluir en apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 399 + 400 @@ -6922,7 +6934,7 @@ Ver posición libs/ui/src/lib/activities-table/activities-table.component.html - 473 + 487 @@ -6978,11 +6990,11 @@ Cancelar apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 162 + 163 apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 634 + 635 apps/client/src/app/components/admin-market-data/create-asset-profile-dialog/create-asset-profile-dialog.html @@ -7034,7 +7046,7 @@ Cerrar apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 636 + 637 apps/client/src/app/components/admin-market-data/create-asset-profile-dialog/create-asset-profile-dialog.html @@ -7126,7 +7138,7 @@ Cambio con el efecto de la divisa Cambio apps/client/src/app/components/holding-detail-dialog/holding-detail-dialog.html - 63 + 64 @@ -7142,7 +7154,7 @@ Rendimiento con el efecto de la divisa Rendimiento apps/client/src/app/components/holding-detail-dialog/holding-detail-dialog.html - 83 + 84 @@ -7288,6 +7300,10 @@ apps/client/src/app/components/admin-market-data/admin-market-data.html 270 + + libs/ui/src/lib/activities-table/activities-table.component.html + 101 + cannot be self-hosted @@ -7608,7 +7624,7 @@ Guardar apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 645 + 646 apps/client/src/app/components/admin-market-data/create-asset-profile-dialog/create-asset-profile-dialog.html @@ -7740,7 +7756,7 @@ Precio de mercado por defecto apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 519 + 520 @@ -7748,7 +7764,7 @@ Modo apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 556 + 557 @@ -7764,7 +7780,7 @@ Selector apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 572 + 573 @@ -7772,7 +7788,7 @@ Encabezados de solicitud HTTP apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 532 + 533 @@ -8017,7 +8033,7 @@ Aplicar apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 154 + 155 @@ -8108,6 +8124,18 @@ 142 + + {VAR_PLURAL, plural, =1 {Activity} other {Activities}} + {VAR_PLURAL, plural, =1 {Activity} other {Activities}} + + libs/ui/src/lib/activities-table/activities-table.component.html + 69 + + + libs/ui/src/lib/activities-table/activities-table.component.html + 102 + + Log out Cerrar sesión @@ -8577,7 +8605,7 @@ Gestionar perfil de activo apps/client/src/app/components/holding-detail-dialog/holding-detail-dialog.html - 478 + 479 @@ -8605,7 +8633,7 @@ apps/client/src/app/components/holding-detail-dialog/holding-detail-dialog.html - 101 + 102 diff --git a/apps/client/src/locales/messages.fr.xlf b/apps/client/src/locales/messages.fr.xlf index f091a56df..8d4f182bf 100644 --- a/apps/client/src/locales/messages.fr.xlf +++ b/apps/client/src/locales/messages.fr.xlf @@ -58,11 +58,11 @@ libs/ui/src/lib/activities-table/activities-table.component.html - 5 + 7 libs/ui/src/lib/activities-table/activities-table.component.html - 183 + 197 @@ -102,7 +102,7 @@ Plateforme apps/client/src/app/components/account-detail-dialog/account-detail-dialog.html - 112 + 113 apps/client/src/app/pages/accounts/create-or-update-account-dialog/create-or-update-account-dialog.html @@ -122,7 +122,7 @@ apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 332 + 333 apps/client/src/app/components/admin-platform/admin-platform.component.html @@ -158,7 +158,7 @@ libs/ui/src/lib/activities-table/activities-table.component.html - 161 + 175 libs/ui/src/lib/benchmark/benchmark.component.html @@ -198,11 +198,11 @@ Devise apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 216 + 217 apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 339 + 340 apps/client/src/app/components/admin-market-data/create-asset-profile-dialog/create-asset-profile-dialog.html @@ -222,7 +222,7 @@ libs/ui/src/lib/activities-table/activities-table.component.html - 303 + 317 @@ -230,7 +230,7 @@ Balance Cash apps/client/src/app/components/account-detail-dialog/account-detail-dialog.html - 54 + 55 apps/client/src/app/pages/accounts/create-or-update-account-dialog/create-or-update-account-dialog.html @@ -274,11 +274,11 @@ libs/ui/src/lib/activities-table/activities-table.component.html - 284 + 298 libs/ui/src/lib/activities-table/activities-table.component.html - 320 + 334 libs/ui/src/lib/holdings-table/holdings-table.component.html @@ -318,7 +318,7 @@ libs/ui/src/lib/activities-table/activities-table.component.html - 483 + 497 @@ -358,7 +358,7 @@ libs/ui/src/lib/activities-table/activities-table.component.html - 513 + 527 libs/ui/src/lib/benchmark/benchmark.component.html @@ -394,7 +394,7 @@ apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 197 + 198 apps/client/src/app/pages/portfolio/activities/create-or-update-activity-dialog/create-or-update-activity-dialog.html @@ -486,7 +486,7 @@ apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 486 + 487 @@ -526,7 +526,7 @@ Rechercher un compte... libs/ui/src/lib/assistant/assistant.component.ts - 447 + 448 @@ -542,7 +542,7 @@ libs/ui/src/lib/activities-table/activities-table.component.html - 192 + 206 libs/ui/src/lib/historical-market-data-editor/historical-market-data-editor-dialog/historical-market-data-editor-dialog.html @@ -566,7 +566,7 @@ apps/client/src/app/components/holding-detail-dialog/holding-detail-dialog.html - 113 + 114 libs/ui/src/lib/historical-market-data-editor/historical-market-data-editor-dialog/historical-market-data-editor-dialog.html @@ -590,11 +590,11 @@ apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 235 + 236 apps/client/src/app/components/holding-detail-dialog/holding-detail-dialog.html - 221 + 222 libs/ui/src/lib/holdings-table/holdings-table.component.html @@ -606,7 +606,7 @@ Fréquence de collecte des données apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 467 + 468 @@ -694,11 +694,11 @@ Secteur apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 280 + 281 apps/client/src/app/components/holding-detail-dialog/holding-detail-dialog.html - 270 + 271 @@ -706,7 +706,7 @@ Pays apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 295 + 296 apps/client/src/app/components/admin-users/admin-users.html @@ -714,7 +714,7 @@ apps/client/src/app/components/holding-detail-dialog/holding-detail-dialog.html - 284 + 285 apps/client/src/app/components/user-detail-dialog/user-detail-dialog.html @@ -726,15 +726,15 @@ Secteurs apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 301 + 302 apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 420 + 421 apps/client/src/app/components/holding-detail-dialog/holding-detail-dialog.html - 290 + 291 apps/client/src/app/pages/public/public-page.html @@ -746,15 +746,15 @@ Pays apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 311 + 312 apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 431 + 432 apps/client/src/app/components/holding-detail-dialog/holding-detail-dialog.html - 302 + 303 @@ -762,7 +762,7 @@ Équivalence de Symboles apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 409 + 410 @@ -770,7 +770,7 @@ Note apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 455 + 456 apps/client/src/app/pages/accounts/create-or-update-account-dialog/create-or-update-account-dialog.html @@ -786,7 +786,7 @@ libs/ui/src/lib/activities-table/activities-table.component.html - 370 + 384 @@ -1014,7 +1014,7 @@ Référence apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 401 + 402 apps/client/src/app/components/benchmark-comparator/benchmark-comparator.component.ts @@ -1026,7 +1026,7 @@ Sentiment actuel du marché libs/ui/src/lib/fear-and-greed-index/fear-and-greed-index.component.html - 22 + 23 @@ -1174,7 +1174,7 @@ ou apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 167 + 168 apps/client/src/app/components/admin-settings/admin-settings.component.html @@ -1326,7 +1326,7 @@ Prix Minimum apps/client/src/app/components/holding-detail-dialog/holding-detail-dialog.html - 131 + 132 @@ -1334,7 +1334,7 @@ Prix Maximum apps/client/src/app/components/holding-detail-dialog/holding-detail-dialog.html - 149 + 150 @@ -1342,7 +1342,7 @@ Quantité apps/client/src/app/components/holding-detail-dialog/holding-detail-dialog.html - 159 + 160 apps/client/src/app/pages/portfolio/activities/create-or-update-activity-dialog/create-or-update-activity-dialog.html @@ -1350,7 +1350,7 @@ libs/ui/src/lib/activities-table/activities-table.component.html - 213 + 227 libs/ui/src/lib/holdings-table/holdings-table.component.html @@ -1362,7 +1362,7 @@ Signaler une Erreur de Données apps/client/src/app/components/holding-detail-dialog/holding-detail-dialog.html - 463 + 464 @@ -1374,7 +1374,7 @@ libs/ui/src/lib/assistant/assistant.component.ts - 365 + 366 @@ -1386,7 +1386,7 @@ libs/ui/src/lib/assistant/assistant.component.ts - 377 + 378 @@ -1398,7 +1398,7 @@ libs/ui/src/lib/assistant/assistant.component.ts - 387 + 388 @@ -1418,7 +1418,7 @@ libs/ui/src/lib/assistant/assistant.component.ts - 409 + 410 @@ -1438,7 +1438,7 @@ libs/ui/src/lib/assistant/assistant.component.ts - 415 + 416 @@ -1674,7 +1674,7 @@ Paramètres régionaux apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 547 + 548 apps/client/src/app/components/user-account-settings/user-account-settings.html @@ -1838,7 +1838,7 @@ apps/client/src/app/components/holding-detail-dialog/holding-detail-dialog.html - 395 + 396 apps/client/src/app/components/user-detail-dialog/user-detail-dialog.html @@ -1894,7 +1894,7 @@ Données du marché apps/client/src/app/components/holding-detail-dialog/holding-detail-dialog.html - 417 + 418 libs/common/src/lib/routes/routes.ts @@ -2118,7 +2118,7 @@ Positions apps/client/src/app/components/account-detail-dialog/account-detail-dialog.html - 126 + 127 apps/client/src/app/components/home-holdings/home-holdings.html @@ -2170,7 +2170,7 @@ Marchés apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 403 + 404 apps/client/src/app/components/footer/footer.component.html @@ -2210,15 +2210,15 @@ Activités apps/client/src/app/components/account-detail-dialog/account-detail-dialog.html - 102 + 103 apps/client/src/app/components/account-detail-dialog/account-detail-dialog.html - 137 + 138 apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 244 + 245 apps/client/src/app/components/admin-overview/admin-overview.html @@ -2234,11 +2234,11 @@ apps/client/src/app/components/holding-detail-dialog/holding-detail-dialog.html - 233 + 234 apps/client/src/app/components/holding-detail-dialog/holding-detail-dialog.html - 361 + 362 apps/client/src/app/components/user-detail-dialog/user-detail-dialog.html @@ -2302,7 +2302,7 @@ Nom, symbole, ou ISIN apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 133 + 134 apps/client/src/app/components/admin-market-data/create-asset-profile-dialog/create-asset-profile-dialog.html @@ -2334,7 +2334,7 @@ libs/ui/src/lib/activities-table/activities-table.component.html - 237 + 251 @@ -2602,11 +2602,11 @@ Dividende apps/client/src/app/components/account-detail-dialog/account-detail-dialog.html - 90 + 91 apps/client/src/app/components/holding-detail-dialog/holding-detail-dialog.html - 188 + 189 apps/client/src/app/components/portfolio-summary/portfolio-summary.component.html @@ -2914,11 +2914,11 @@ Aperçu apps/client/src/app/components/account-detail-dialog/account-detail-dialog.html - 41 + 42 apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 114 + 115 apps/client/src/app/components/header/header.component.html @@ -2930,7 +2930,7 @@ apps/client/src/app/components/holding-detail-dialog/holding-detail-dialog.html - 47 + 48 apps/client/src/app/pages/admin/admin-page.component.ts @@ -2954,7 +2954,7 @@ Brouillon libs/ui/src/lib/activities-table/activities-table.component.html - 167 + 181 @@ -2966,11 +2966,11 @@ libs/ui/src/lib/activities-table/activities-table.component.html - 28 + 30 libs/ui/src/lib/activities-table/activities-table.component.html - 406 + 420 @@ -2978,11 +2978,11 @@ Exporter Activités libs/ui/src/lib/activities-table/activities-table.component.html - 64 + 72 libs/ui/src/lib/activities-table/activities-table.component.html - 434 + 448 @@ -2990,11 +2990,11 @@ Exporter Brouillons sous ICS libs/ui/src/lib/activities-table/activities-table.component.html - 77 + 86 libs/ui/src/lib/activities-table/activities-table.component.html - 447 + 461 @@ -3002,7 +3002,7 @@ Dupliquer libs/ui/src/lib/activities-table/activities-table.component.html - 492 + 506 @@ -3010,7 +3010,7 @@ Exporter Brouillon sous ICS libs/ui/src/lib/activities-table/activities-table.component.html - 502 + 516 @@ -3018,7 +3018,11 @@ Voulez-vous vraiment supprimer cette activité ? libs/ui/src/lib/activities-table/activities-table.component.ts - 327 + 333 + + + libs/ui/src/lib/activities-table/activities-table.component.ts + 344 @@ -3074,7 +3078,7 @@ Intérêt apps/client/src/app/components/account-detail-dialog/account-detail-dialog.html - 78 + 79 apps/client/src/app/components/portfolio-summary/portfolio-summary.component.html @@ -3142,7 +3146,7 @@ libs/ui/src/lib/activities-table/activities-table.component.html - 335 + 349 libs/ui/src/lib/i18n.ts @@ -3162,15 +3166,15 @@ apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 253 + 254 apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 349 + 350 apps/client/src/app/components/holding-detail-dialog/holding-detail-dialog.html - 244 + 245 apps/client/src/app/pages/portfolio/activities/create-or-update-activity-dialog/create-or-update-activity-dialog.html @@ -3194,15 +3198,15 @@ apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 262 + 263 apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 365 + 366 apps/client/src/app/components/holding-detail-dialog/holding-detail-dialog.html - 253 + 254 apps/client/src/app/pages/portfolio/activities/create-or-update-activity-dialog/create-or-update-activity-dialog.html @@ -3266,7 +3270,7 @@ apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 186 + 187 apps/client/src/app/components/admin-market-data/create-asset-profile-dialog/create-asset-profile-dialog.html @@ -3274,13 +3278,21 @@ apps/client/src/app/components/holding-detail-dialog/holding-detail-dialog.html - 322 + 323 libs/ui/src/lib/i18n.ts 35 + + Export + Export + + libs/ui/src/lib/activities-table/activities-table.component.html + 68 + + Tag Étiquette @@ -3318,7 +3330,7 @@ Capital apps/client/src/app/components/account-detail-dialog/account-detail-dialog.html - 66 + 67 libs/ui/src/lib/i18n.ts @@ -3470,7 +3482,7 @@ Invested Capital apps/client/src/app/components/holding-detail-dialog/holding-detail-dialog.html - 173 + 174 apps/client/src/app/components/portfolio-summary/portfolio-summary.component.html @@ -3562,11 +3574,11 @@ libs/ui/src/lib/activities-table/activities-table.component.html - 52 + 54 libs/ui/src/lib/activities-table/activities-table.component.html - 420 + 434 @@ -3938,7 +3950,7 @@ Frais apps/client/src/app/components/holding-detail-dialog/holding-detail-dialog.html - 210 + 211 apps/client/src/app/components/portfolio-summary/portfolio-summary.component.html @@ -4101,14 +4113,6 @@ 254 - - Do you really want to delete these activities? - Voulez-vous vraiment supprimer toutes vos activités ? - - libs/ui/src/lib/activities-table/activities-table.component.ts - 317 - - By ETF Provider Par Émetteur d’ETF @@ -4154,11 +4158,11 @@ Lien apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 442 + 443 apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 588 + 589 apps/client/src/app/components/admin-platform/admin-platform.component.html @@ -4566,7 +4570,7 @@ Configuration du Scraper apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 509 + 510 @@ -5257,6 +5261,14 @@ 84 + + Do you really want to delete these activities? + Do you really want to delete these activities? + + libs/ui/src/lib/activities-table/activities-table.component.ts + 334 + + Why Ghostfolio? Pourquoi Ghostfolio? @@ -5756,7 +5768,7 @@ Convert to apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 174 + 175 @@ -5828,7 +5840,7 @@ libs/ui/src/lib/activities-table/activities-table.component.html - 261 + 275 libs/ui/src/lib/i18n.ts @@ -6120,7 +6132,7 @@ Cash Balances apps/client/src/app/components/account-detail-dialog/account-detail-dialog.html - 169 + 170 @@ -6164,7 +6176,7 @@ Test apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 606 + 607 @@ -6260,7 +6272,7 @@ Clôturer la Position apps/client/src/app/components/holding-detail-dialog/holding-detail-dialog.html - 450 + 451 @@ -6300,7 +6312,7 @@ Week to date libs/ui/src/lib/assistant/assistant.component.ts - 369 + 370 @@ -6312,7 +6324,7 @@ libs/ui/src/lib/assistant/assistant.component.ts - 369 + 370 @@ -6320,7 +6332,7 @@ Month to date libs/ui/src/lib/assistant/assistant.component.ts - 373 + 374 @@ -6332,7 +6344,7 @@ libs/ui/src/lib/assistant/assistant.component.ts - 373 + 374 @@ -6348,7 +6360,7 @@ Year to date libs/ui/src/lib/assistant/assistant.component.ts - 377 + 378 @@ -6404,7 +6416,7 @@ libs/ui/src/lib/assistant/assistant.component.ts - 387 + 388 @@ -6416,7 +6428,7 @@ libs/ui/src/lib/assistant/assistant.component.ts - 409 + 410 @@ -6432,7 +6444,7 @@ Collecter les données apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 629 + 630 apps/client/src/app/components/admin-overview/admin-overview.html @@ -6444,7 +6456,7 @@ Rechercher une position... libs/ui/src/lib/assistant/assistant.component.ts - 448 + 449 @@ -6537,11 +6549,11 @@ Activitées apps/client/src/app/components/account-detail-dialog/account-detail-dialog.html - 100 + 101 apps/client/src/app/components/holding-detail-dialog/holding-detail-dialog.html - 231 + 232 @@ -6549,7 +6561,7 @@ Rendement en Dividende apps/client/src/app/components/holding-detail-dialog/holding-detail-dialog.html - 198 + 199 @@ -6605,7 +6617,7 @@ Supprimer les Activitées libs/ui/src/lib/activities-table/activities-table.component.html - 92 + 105 @@ -6629,7 +6641,7 @@ Aller à une page... libs/ui/src/lib/assistant/assistant.component.ts - 449 + 450 @@ -6685,7 +6697,7 @@ Inclure dans apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 399 + 400 @@ -6921,7 +6933,7 @@ Voir la Position libs/ui/src/lib/activities-table/activities-table.component.html - 473 + 487 @@ -6977,11 +6989,11 @@ Annuler apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 162 + 163 apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 634 + 635 apps/client/src/app/components/admin-market-data/create-asset-profile-dialog/create-asset-profile-dialog.html @@ -7033,7 +7045,7 @@ Fermer apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 636 + 637 apps/client/src/app/components/admin-market-data/create-asset-profile-dialog/create-asset-profile-dialog.html @@ -7125,7 +7137,7 @@ Variation avec taux de change appliqué Variation apps/client/src/app/components/holding-detail-dialog/holding-detail-dialog.html - 63 + 64 @@ -7141,7 +7153,7 @@ Performance avec taux de change appliqué Performance apps/client/src/app/components/holding-detail-dialog/holding-detail-dialog.html - 83 + 84 @@ -7287,6 +7299,10 @@ apps/client/src/app/components/admin-market-data/admin-market-data.html 270 + + libs/ui/src/lib/activities-table/activities-table.component.html + 101 + cannot be self-hosted @@ -7607,7 +7623,7 @@ Sauvegarder apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 645 + 646 apps/client/src/app/components/admin-market-data/create-asset-profile-dialog/create-asset-profile-dialog.html @@ -7739,7 +7755,7 @@ Prix du marché par défaut apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 519 + 520 @@ -7747,7 +7763,7 @@ Mode apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 556 + 557 @@ -7763,7 +7779,7 @@ Selecteur apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 572 + 573 @@ -7771,7 +7787,7 @@ En-têtes de requête HTTP apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 532 + 533 @@ -8016,7 +8032,7 @@ Appliquer apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 154 + 155 @@ -8107,6 +8123,18 @@ 142 + + {VAR_PLURAL, plural, =1 {Activity} other {Activities}} + {VAR_PLURAL, plural, =1 {Activity} other {Activities}} + + libs/ui/src/lib/activities-table/activities-table.component.html + 69 + + + libs/ui/src/lib/activities-table/activities-table.component.html + 102 + + Log out Se déconnecter @@ -8576,7 +8604,7 @@ Gérer le profil d’actif apps/client/src/app/components/holding-detail-dialog/holding-detail-dialog.html - 478 + 479 @@ -8604,7 +8632,7 @@ apps/client/src/app/components/holding-detail-dialog/holding-detail-dialog.html - 101 + 102 diff --git a/apps/client/src/locales/messages.it.xlf b/apps/client/src/locales/messages.it.xlf index fa0680d82..92dc8372a 100644 --- a/apps/client/src/locales/messages.it.xlf +++ b/apps/client/src/locales/messages.it.xlf @@ -67,11 +67,11 @@ libs/ui/src/lib/activities-table/activities-table.component.html - 5 + 7 libs/ui/src/lib/activities-table/activities-table.component.html - 183 + 197 @@ -115,7 +115,7 @@ apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 332 + 333 apps/client/src/app/components/admin-platform/admin-platform.component.html @@ -151,7 +151,7 @@ libs/ui/src/lib/activities-table/activities-table.component.html - 161 + 175 libs/ui/src/lib/benchmark/benchmark.component.html @@ -211,11 +211,11 @@ libs/ui/src/lib/activities-table/activities-table.component.html - 284 + 298 libs/ui/src/lib/activities-table/activities-table.component.html - 320 + 334 libs/ui/src/lib/holdings-table/holdings-table.component.html @@ -255,7 +255,7 @@ libs/ui/src/lib/activities-table/activities-table.component.html - 483 + 497 @@ -295,7 +295,7 @@ libs/ui/src/lib/activities-table/activities-table.component.html - 513 + 527 libs/ui/src/lib/benchmark/benchmark.component.html @@ -339,7 +339,7 @@ apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 197 + 198 apps/client/src/app/pages/portfolio/activities/create-or-update-activity-dialog/create-or-update-activity-dialog.html @@ -423,7 +423,7 @@ apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 486 + 487 @@ -463,7 +463,7 @@ Find an account... libs/ui/src/lib/assistant/assistant.component.ts - 447 + 448 @@ -479,7 +479,7 @@ libs/ui/src/lib/activities-table/activities-table.component.html - 192 + 206 libs/ui/src/lib/historical-market-data-editor/historical-market-data-editor-dialog/historical-market-data-editor-dialog.html @@ -503,7 +503,7 @@ apps/client/src/app/components/holding-detail-dialog/holding-detail-dialog.html - 113 + 114 libs/ui/src/lib/historical-market-data-editor/historical-market-data-editor-dialog/historical-market-data-editor-dialog.html @@ -519,11 +519,11 @@ apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 235 + 236 apps/client/src/app/components/holding-detail-dialog/holding-detail-dialog.html - 221 + 222 libs/ui/src/lib/holdings-table/holdings-table.component.html @@ -711,7 +711,7 @@ Stato d’animo attuale del mercato libs/ui/src/lib/fear-and-greed-index/fear-and-greed-index.component.html - 22 + 23 @@ -855,7 +855,7 @@ oppure apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 167 + 168 apps/client/src/app/components/admin-settings/admin-settings.component.html @@ -999,15 +999,15 @@ Settori apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 301 + 302 apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 420 + 421 apps/client/src/app/components/holding-detail-dialog/holding-detail-dialog.html - 290 + 291 apps/client/src/app/pages/public/public-page.html @@ -1019,15 +1019,15 @@ Paesi apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 311 + 312 apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 431 + 432 apps/client/src/app/components/holding-detail-dialog/holding-detail-dialog.html - 302 + 303 @@ -1051,7 +1051,7 @@ Segnala un’anomalia dei dati apps/client/src/app/components/holding-detail-dialog/holding-detail-dialog.html - 463 + 464 @@ -1099,7 +1099,7 @@ libs/ui/src/lib/assistant/assistant.component.ts - 365 + 366 @@ -1111,7 +1111,7 @@ libs/ui/src/lib/assistant/assistant.component.ts - 377 + 378 @@ -1123,7 +1123,7 @@ libs/ui/src/lib/assistant/assistant.component.ts - 387 + 388 @@ -1143,7 +1143,7 @@ libs/ui/src/lib/assistant/assistant.component.ts - 409 + 410 @@ -1163,7 +1163,7 @@ libs/ui/src/lib/assistant/assistant.component.ts - 415 + 416 @@ -1343,7 +1343,7 @@ Locale apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 547 + 548 apps/client/src/app/components/user-account-settings/user-account-settings.html @@ -1455,7 +1455,7 @@ apps/client/src/app/components/holding-detail-dialog/holding-detail-dialog.html - 395 + 396 apps/client/src/app/components/user-detail-dialog/user-detail-dialog.html @@ -1503,11 +1503,11 @@ Valuta apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 216 + 217 apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 339 + 340 apps/client/src/app/components/admin-market-data/create-asset-profile-dialog/create-asset-profile-dialog.html @@ -1527,7 +1527,7 @@ libs/ui/src/lib/activities-table/activities-table.component.html - 303 + 317 @@ -1535,7 +1535,7 @@ Saldo di cassa apps/client/src/app/components/account-detail-dialog/account-detail-dialog.html - 54 + 55 apps/client/src/app/pages/accounts/create-or-update-account-dialog/create-or-update-account-dialog.html @@ -1551,7 +1551,7 @@ Piattaforma apps/client/src/app/components/account-detail-dialog/account-detail-dialog.html - 112 + 113 apps/client/src/app/pages/accounts/create-or-update-account-dialog/create-or-update-account-dialog.html @@ -1783,11 +1783,11 @@ Panoramica apps/client/src/app/components/account-detail-dialog/account-detail-dialog.html - 41 + 42 apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 114 + 115 apps/client/src/app/components/header/header.component.html @@ -1799,7 +1799,7 @@ apps/client/src/app/components/holding-detail-dialog/holding-detail-dialog.html - 47 + 48 apps/client/src/app/pages/admin/admin-page.component.ts @@ -1823,7 +1823,7 @@ Mercati apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 403 + 404 apps/client/src/app/components/footer/footer.component.html @@ -2007,7 +2007,7 @@ Partecipazioni apps/client/src/app/components/account-detail-dialog/account-detail-dialog.html - 126 + 127 apps/client/src/app/components/home-holdings/home-holdings.html @@ -2079,7 +2079,7 @@ Nome, simbolo o ISIN apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 133 + 134 apps/client/src/app/components/admin-market-data/create-asset-profile-dialog/create-asset-profile-dialog.html @@ -2107,7 +2107,7 @@ Quantità apps/client/src/app/components/holding-detail-dialog/holding-detail-dialog.html - 159 + 160 apps/client/src/app/pages/portfolio/activities/create-or-update-activity-dialog/create-or-update-activity-dialog.html @@ -2115,7 +2115,7 @@ libs/ui/src/lib/activities-table/activities-table.component.html - 213 + 227 libs/ui/src/lib/holdings-table/holdings-table.component.html @@ -2131,7 +2131,7 @@ libs/ui/src/lib/activities-table/activities-table.component.html - 237 + 251 @@ -2139,7 +2139,7 @@ Nota apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 455 + 456 apps/client/src/app/pages/accounts/create-or-update-account-dialog/create-or-update-account-dialog.html @@ -2155,7 +2155,7 @@ libs/ui/src/lib/activities-table/activities-table.component.html - 370 + 384 @@ -2163,15 +2163,15 @@ Attività apps/client/src/app/components/account-detail-dialog/account-detail-dialog.html - 102 + 103 apps/client/src/app/components/account-detail-dialog/account-detail-dialog.html - 137 + 138 apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 244 + 245 apps/client/src/app/components/admin-overview/admin-overview.html @@ -2187,11 +2187,11 @@ apps/client/src/app/components/holding-detail-dialog/holding-detail-dialog.html - 233 + 234 apps/client/src/app/components/holding-detail-dialog/holding-detail-dialog.html - 361 + 362 apps/client/src/app/components/user-detail-dialog/user-detail-dialog.html @@ -2399,7 +2399,7 @@ Bozza libs/ui/src/lib/activities-table/activities-table.component.html - 167 + 181 @@ -2411,11 +2411,11 @@ libs/ui/src/lib/activities-table/activities-table.component.html - 28 + 30 libs/ui/src/lib/activities-table/activities-table.component.html - 406 + 420 @@ -2423,11 +2423,11 @@ Esporta le attività libs/ui/src/lib/activities-table/activities-table.component.html - 64 + 72 libs/ui/src/lib/activities-table/activities-table.component.html - 434 + 448 @@ -2435,11 +2435,11 @@ Esporta le bozze come ICS libs/ui/src/lib/activities-table/activities-table.component.html - 77 + 86 libs/ui/src/lib/activities-table/activities-table.component.html - 447 + 461 @@ -2447,7 +2447,7 @@ Clona libs/ui/src/lib/activities-table/activities-table.component.html - 492 + 506 @@ -2455,7 +2455,7 @@ Esporta la bozza come ICS libs/ui/src/lib/activities-table/activities-table.component.html - 502 + 516 @@ -2463,7 +2463,11 @@ Vuoi davvero eliminare questa attività? libs/ui/src/lib/activities-table/activities-table.component.ts - 327 + 333 + + + libs/ui/src/lib/activities-table/activities-table.component.ts + 344 @@ -2595,7 +2599,7 @@ Prezzo massimo apps/client/src/app/components/holding-detail-dialog/holding-detail-dialog.html - 149 + 150 @@ -2635,11 +2639,11 @@ Settore apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 280 + 281 apps/client/src/app/components/holding-detail-dialog/holding-detail-dialog.html - 270 + 271 @@ -2647,7 +2651,7 @@ Paese apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 295 + 296 apps/client/src/app/components/admin-users/admin-users.html @@ -2655,7 +2659,7 @@ apps/client/src/app/components/holding-detail-dialog/holding-detail-dialog.html - 284 + 285 apps/client/src/app/components/user-detail-dialog/user-detail-dialog.html @@ -2667,7 +2671,7 @@ Prezzo minimo apps/client/src/app/components/holding-detail-dialog/holding-detail-dialog.html - 131 + 132 @@ -2691,7 +2695,7 @@ Interesse apps/client/src/app/components/account-detail-dialog/account-detail-dialog.html - 78 + 79 apps/client/src/app/components/portfolio-summary/portfolio-summary.component.html @@ -2819,7 +2823,7 @@ Benchmark apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 401 + 402 apps/client/src/app/components/benchmark-comparator/benchmark-comparator.component.ts @@ -2959,7 +2963,7 @@ libs/ui/src/lib/activities-table/activities-table.component.html - 335 + 349 libs/ui/src/lib/i18n.ts @@ -2979,15 +2983,15 @@ apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 253 + 254 apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 349 + 350 apps/client/src/app/components/holding-detail-dialog/holding-detail-dialog.html - 244 + 245 apps/client/src/app/pages/portfolio/activities/create-or-update-activity-dialog/create-or-update-activity-dialog.html @@ -3015,7 +3019,7 @@ apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 186 + 187 apps/client/src/app/components/admin-market-data/create-asset-profile-dialog/create-asset-profile-dialog.html @@ -3023,13 +3027,21 @@ apps/client/src/app/components/holding-detail-dialog/holding-detail-dialog.html - 322 + 323 libs/ui/src/lib/i18n.ts 35 + + Export + Export + + libs/ui/src/lib/activities-table/activities-table.component.html + 68 + + Tag Etichetta @@ -3067,7 +3079,7 @@ Azione ordinaria apps/client/src/app/components/account-detail-dialog/account-detail-dialog.html - 66 + 67 libs/ui/src/lib/i18n.ts @@ -3287,7 +3299,7 @@ Invested Capital apps/client/src/app/components/holding-detail-dialog/holding-detail-dialog.html - 173 + 174 apps/client/src/app/components/portfolio-summary/portfolio-summary.component.html @@ -3347,7 +3359,7 @@ Data Gathering Frequency apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 467 + 468 @@ -3371,7 +3383,7 @@ Mappatura dei simboli apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 409 + 410 @@ -3387,11 +3399,11 @@ Dividendi apps/client/src/app/components/account-detail-dialog/account-detail-dialog.html - 90 + 91 apps/client/src/app/components/holding-detail-dialog/holding-detail-dialog.html - 188 + 189 apps/client/src/app/components/portfolio-summary/portfolio-summary.component.html @@ -3431,15 +3443,15 @@ apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 262 + 263 apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 365 + 366 apps/client/src/app/components/holding-detail-dialog/holding-detail-dialog.html - 253 + 254 apps/client/src/app/pages/portfolio/activities/create-or-update-activity-dialog/create-or-update-activity-dialog.html @@ -3487,7 +3499,7 @@ Dati del mercato apps/client/src/app/components/holding-detail-dialog/holding-detail-dialog.html - 417 + 418 libs/common/src/lib/routes/routes.ts @@ -3563,11 +3575,11 @@ libs/ui/src/lib/activities-table/activities-table.component.html - 52 + 54 libs/ui/src/lib/activities-table/activities-table.component.html - 420 + 434 @@ -3939,7 +3951,7 @@ Commissioni apps/client/src/app/components/holding-detail-dialog/holding-detail-dialog.html - 210 + 211 apps/client/src/app/components/portfolio-summary/portfolio-summary.component.html @@ -4102,14 +4114,6 @@ 254 - - Do you really want to delete these activities? - Vuoi davvero eliminare tutte le tue attività? - - libs/ui/src/lib/activities-table/activities-table.component.ts - 317 - - By ETF Provider Per fornitore di ETF @@ -4155,11 +4159,11 @@ Url apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 442 + 443 apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 588 + 589 apps/client/src/app/components/admin-platform/admin-platform.component.html @@ -4567,7 +4571,7 @@ Configurazione dello scraper apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 509 + 510 @@ -5258,6 +5262,14 @@ 84 + + Do you really want to delete these activities? + Do you really want to delete these activities? + + libs/ui/src/lib/activities-table/activities-table.component.ts + 334 + + Why Ghostfolio? Perché Ghostfolio? @@ -5757,7 +5769,7 @@ Convert to apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 174 + 175 @@ -5829,7 +5841,7 @@ libs/ui/src/lib/activities-table/activities-table.component.html - 261 + 275 libs/ui/src/lib/i18n.ts @@ -6121,7 +6133,7 @@ Saldi di cassa apps/client/src/app/components/account-detail-dialog/account-detail-dialog.html - 169 + 170 @@ -6165,7 +6177,7 @@ Prova apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 606 + 607 @@ -6261,7 +6273,7 @@ Close Holding apps/client/src/app/components/holding-detail-dialog/holding-detail-dialog.html - 450 + 451 @@ -6301,7 +6313,7 @@ Da inizio settimana libs/ui/src/lib/assistant/assistant.component.ts - 369 + 370 @@ -6313,7 +6325,7 @@ libs/ui/src/lib/assistant/assistant.component.ts - 369 + 370 @@ -6321,7 +6333,7 @@ Da inizio mese libs/ui/src/lib/assistant/assistant.component.ts - 373 + 374 @@ -6333,7 +6345,7 @@ libs/ui/src/lib/assistant/assistant.component.ts - 373 + 374 @@ -6349,7 +6361,7 @@ Da inizio anno libs/ui/src/lib/assistant/assistant.component.ts - 377 + 378 @@ -6405,7 +6417,7 @@ libs/ui/src/lib/assistant/assistant.component.ts - 387 + 388 @@ -6417,7 +6429,7 @@ libs/ui/src/lib/assistant/assistant.component.ts - 409 + 410 @@ -6433,7 +6445,7 @@ Raccolta Dati apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 629 + 630 apps/client/src/app/components/admin-overview/admin-overview.html @@ -6445,7 +6457,7 @@ Find a holding... libs/ui/src/lib/assistant/assistant.component.ts - 448 + 449 @@ -6538,11 +6550,11 @@ Attività apps/client/src/app/components/account-detail-dialog/account-detail-dialog.html - 100 + 101 apps/client/src/app/components/holding-detail-dialog/holding-detail-dialog.html - 231 + 232 @@ -6550,7 +6562,7 @@ Rendimento da Dividendi apps/client/src/app/components/holding-detail-dialog/holding-detail-dialog.html - 198 + 199 @@ -6606,7 +6618,7 @@ Elimina le attività libs/ui/src/lib/activities-table/activities-table.component.html - 92 + 105 @@ -6630,7 +6642,7 @@ Jump to a page... libs/ui/src/lib/assistant/assistant.component.ts - 449 + 450 @@ -6686,7 +6698,7 @@ Include in apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 399 + 400 @@ -6922,7 +6934,7 @@ View Holding libs/ui/src/lib/activities-table/activities-table.component.html - 473 + 487 @@ -6978,11 +6990,11 @@ Annulla apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 162 + 163 apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 634 + 635 apps/client/src/app/components/admin-market-data/create-asset-profile-dialog/create-asset-profile-dialog.html @@ -7034,7 +7046,7 @@ Chiudi apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 636 + 637 apps/client/src/app/components/admin-market-data/create-asset-profile-dialog/create-asset-profile-dialog.html @@ -7126,7 +7138,7 @@ Cambio con effetto valuta Cambia apps/client/src/app/components/holding-detail-dialog/holding-detail-dialog.html - 63 + 64 @@ -7142,7 +7154,7 @@ Prestazioni con effetto valuta Prestazioni apps/client/src/app/components/holding-detail-dialog/holding-detail-dialog.html - 83 + 84 @@ -7288,6 +7300,10 @@ apps/client/src/app/components/admin-market-data/admin-market-data.html 270 + + libs/ui/src/lib/activities-table/activities-table.component.html + 101 + cannot be self-hosted @@ -7608,7 +7624,7 @@ Salva apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 645 + 646 apps/client/src/app/components/admin-market-data/create-asset-profile-dialog/create-asset-profile-dialog.html @@ -7740,7 +7756,7 @@ Prezzo di mercato predefinito apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 519 + 520 @@ -7748,7 +7764,7 @@ Modalità apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 556 + 557 @@ -7764,7 +7780,7 @@ Selettore apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 572 + 573 @@ -7772,7 +7788,7 @@ Intestazioni della richiesta HTTP apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 532 + 533 @@ -8017,7 +8033,7 @@ Applica apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 154 + 155 @@ -8108,6 +8124,18 @@ 142 + + {VAR_PLURAL, plural, =1 {Activity} other {Activities}} + {VAR_PLURAL, plural, =1 {Activity} other {Activities}} + + libs/ui/src/lib/activities-table/activities-table.component.html + 69 + + + libs/ui/src/lib/activities-table/activities-table.component.html + 102 + + Log out Esci @@ -8577,7 +8605,7 @@ Gestisci profilo risorsa apps/client/src/app/components/holding-detail-dialog/holding-detail-dialog.html - 478 + 479 @@ -8605,7 +8633,7 @@ apps/client/src/app/components/holding-detail-dialog/holding-detail-dialog.html - 101 + 102 diff --git a/apps/client/src/locales/messages.ja.xlf b/apps/client/src/locales/messages.ja.xlf index 3507d24d2..14781a583 100644 --- a/apps/client/src/locales/messages.ja.xlf +++ b/apps/client/src/locales/messages.ja.xlf @@ -268,11 +268,11 @@ libs/ui/src/lib/activities-table/activities-table.component.html - 5 + 7 libs/ui/src/lib/activities-table/activities-table.component.html - 183 + 197 @@ -312,7 +312,7 @@ 現金残高 apps/client/src/app/components/account-detail-dialog/account-detail-dialog.html - 54 + 55 apps/client/src/app/pages/accounts/create-or-update-account-dialog/create-or-update-account-dialog.html @@ -328,7 +328,7 @@ プラットフォーム apps/client/src/app/components/account-detail-dialog/account-detail-dialog.html - 112 + 113 apps/client/src/app/pages/accounts/create-or-update-account-dialog/create-or-update-account-dialog.html @@ -344,7 +344,7 @@ 現金残高 apps/client/src/app/components/account-detail-dialog/account-detail-dialog.html - 169 + 170 @@ -368,7 +368,7 @@ apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 332 + 333 apps/client/src/app/components/admin-platform/admin-platform.component.html @@ -404,7 +404,7 @@ libs/ui/src/lib/activities-table/activities-table.component.html - 161 + 175 libs/ui/src/lib/benchmark/benchmark.component.html @@ -444,11 +444,11 @@ 通貨 apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 216 + 217 apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 339 + 340 apps/client/src/app/components/admin-market-data/create-asset-profile-dialog/create-asset-profile-dialog.html @@ -468,7 +468,7 @@ libs/ui/src/lib/activities-table/activities-table.component.html - 303 + 317 @@ -504,11 +504,11 @@ libs/ui/src/lib/activities-table/activities-table.component.html - 284 + 298 libs/ui/src/lib/activities-table/activities-table.component.html - 320 + 334 libs/ui/src/lib/holdings-table/holdings-table.component.html @@ -548,7 +548,7 @@ libs/ui/src/lib/activities-table/activities-table.component.html - 483 + 497 @@ -588,7 +588,7 @@ libs/ui/src/lib/activities-table/activities-table.component.html - 513 + 527 libs/ui/src/lib/benchmark/benchmark.component.html @@ -628,7 +628,7 @@ apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 486 + 487 @@ -644,7 +644,7 @@ apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 197 + 198 apps/client/src/app/pages/portfolio/activities/create-or-update-activity-dialog/create-or-update-activity-dialog.html @@ -752,7 +752,7 @@ アカウントを検索... libs/ui/src/lib/assistant/assistant.component.ts - 447 + 448 @@ -768,7 +768,7 @@ libs/ui/src/lib/activities-table/activities-table.component.html - 192 + 206 libs/ui/src/lib/historical-market-data-editor/historical-market-data-editor-dialog/historical-market-data-editor-dialog.html @@ -792,7 +792,7 @@ apps/client/src/app/components/holding-detail-dialog/holding-detail-dialog.html - 113 + 114 libs/ui/src/lib/historical-market-data-editor/historical-market-data-editor-dialog/historical-market-data-editor-dialog.html @@ -872,11 +872,11 @@ apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 235 + 236 apps/client/src/app/components/holding-detail-dialog/holding-detail-dialog.html - 221 + 222 libs/ui/src/lib/holdings-table/holdings-table.component.html @@ -888,7 +888,7 @@ データ収集頻度 apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 467 + 468 @@ -1032,11 +1032,11 @@ セクター apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 280 + 281 apps/client/src/app/components/holding-detail-dialog/holding-detail-dialog.html - 270 + 271 @@ -1044,7 +1044,7 @@ apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 295 + 296 apps/client/src/app/components/admin-users/admin-users.html @@ -1052,7 +1052,7 @@ apps/client/src/app/components/holding-detail-dialog/holding-detail-dialog.html - 284 + 285 apps/client/src/app/components/user-detail-dialog/user-detail-dialog.html @@ -1064,15 +1064,15 @@ セクター apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 301 + 302 apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 420 + 421 apps/client/src/app/components/holding-detail-dialog/holding-detail-dialog.html - 290 + 291 apps/client/src/app/pages/public/public-page.html @@ -1084,15 +1084,15 @@ apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 311 + 312 apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 431 + 432 apps/client/src/app/components/holding-detail-dialog/holding-detail-dialog.html - 302 + 303 @@ -1100,7 +1100,7 @@ シンボルマッピング apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 409 + 410 @@ -1140,7 +1140,7 @@ スクレイパーの設定 apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 509 + 510 @@ -1148,7 +1148,7 @@ メモ apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 455 + 456 apps/client/src/app/pages/accounts/create-or-update-account-dialog/create-or-update-account-dialog.html @@ -1164,7 +1164,7 @@ libs/ui/src/lib/activities-table/activities-table.component.html - 370 + 384 @@ -1204,7 +1204,7 @@ 名称、シンボル、またはISIN apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 133 + 134 apps/client/src/app/components/admin-market-data/create-asset-profile-dialog/create-asset-profile-dialog.html @@ -1364,11 +1364,11 @@ Url apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 442 + 443 apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 588 + 589 apps/client/src/app/components/admin-platform/admin-platform.component.html @@ -1608,7 +1608,7 @@ ベンチマーク apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 401 + 402 apps/client/src/app/components/benchmark-comparator/benchmark-comparator.component.ts @@ -1620,7 +1620,7 @@ 現在の市場心理 libs/ui/src/lib/fear-and-greed-index/fear-and-greed-index.component.html - 22 + 23 @@ -1868,7 +1868,7 @@ または apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 167 + 168 apps/client/src/app/components/admin-settings/admin-settings.component.html @@ -1948,7 +1948,7 @@ 手数料 apps/client/src/app/components/holding-detail-dialog/holding-detail-dialog.html - 210 + 211 apps/client/src/app/components/portfolio-summary/portfolio-summary.component.html @@ -2044,7 +2044,7 @@ 最低価格 apps/client/src/app/components/holding-detail-dialog/holding-detail-dialog.html - 131 + 132 @@ -2052,7 +2052,7 @@ 最高価格 apps/client/src/app/components/holding-detail-dialog/holding-detail-dialog.html - 149 + 150 @@ -2060,7 +2060,7 @@ 数量 apps/client/src/app/components/holding-detail-dialog/holding-detail-dialog.html - 159 + 160 apps/client/src/app/pages/portfolio/activities/create-or-update-activity-dialog/create-or-update-activity-dialog.html @@ -2068,7 +2068,7 @@ libs/ui/src/lib/activities-table/activities-table.component.html - 213 + 227 libs/ui/src/lib/holdings-table/holdings-table.component.html @@ -2080,7 +2080,7 @@ データグリッチの報告 apps/client/src/app/components/holding-detail-dialog/holding-detail-dialog.html - 463 + 464 @@ -2260,7 +2260,7 @@ libs/ui/src/lib/assistant/assistant.component.ts - 365 + 366 @@ -2272,7 +2272,7 @@ libs/ui/src/lib/assistant/assistant.component.ts - 377 + 378 @@ -2284,7 +2284,7 @@ libs/ui/src/lib/assistant/assistant.component.ts - 387 + 388 @@ -2304,7 +2304,7 @@ libs/ui/src/lib/assistant/assistant.component.ts - 409 + 410 @@ -2324,7 +2324,7 @@ libs/ui/src/lib/assistant/assistant.component.ts - 415 + 416 @@ -2504,7 +2504,7 @@ ロケール apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 547 + 548 apps/client/src/app/components/user-account-settings/user-account-settings.html @@ -2824,7 +2824,7 @@ apps/client/src/app/components/holding-detail-dialog/holding-detail-dialog.html - 395 + 396 apps/client/src/app/components/user-detail-dialog/user-detail-dialog.html @@ -2928,7 +2928,7 @@ マーケットデータ apps/client/src/app/components/holding-detail-dialog/holding-detail-dialog.html - 417 + 418 libs/common/src/lib/routes/routes.ts @@ -2968,11 +2968,11 @@ 概要 apps/client/src/app/components/account-detail-dialog/account-detail-dialog.html - 41 + 42 apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 114 + 115 apps/client/src/app/components/header/header.component.html @@ -2984,7 +2984,7 @@ apps/client/src/app/components/holding-detail-dialog/holding-detail-dialog.html - 47 + 48 apps/client/src/app/pages/admin/admin-page.component.ts @@ -3368,7 +3368,7 @@ 保有資産 apps/client/src/app/components/account-detail-dialog/account-detail-dialog.html - 126 + 127 apps/client/src/app/components/home-holdings/home-holdings.html @@ -3420,7 +3420,7 @@ マーケット apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 403 + 404 apps/client/src/app/components/footer/footer.component.html @@ -3615,6 +3615,14 @@ 84 + + Do you really want to delete these activities? + Do you really want to delete these activities? + + libs/ui/src/lib/activities-table/activities-table.component.ts + 334 + + Why Ghostfolio? なぜGhostfolioなのか? @@ -3864,7 +3872,7 @@ Convert to apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 174 + 175 @@ -3940,15 +3948,15 @@ アクティビティ apps/client/src/app/components/account-detail-dialog/account-detail-dialog.html - 102 + 103 apps/client/src/app/components/account-detail-dialog/account-detail-dialog.html - 137 + 138 apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 244 + 245 apps/client/src/app/components/admin-overview/admin-overview.html @@ -3964,11 +3972,11 @@ apps/client/src/app/components/holding-detail-dialog/holding-detail-dialog.html - 233 + 234 apps/client/src/app/components/holding-detail-dialog/holding-detail-dialog.html - 361 + 362 apps/client/src/app/components/user-detail-dialog/user-detail-dialog.html @@ -3987,14 +3995,6 @@ 126 - - Do you really want to delete these activities? - 本当にこれらのアクティビティを削除したいですか? - - libs/ui/src/lib/activities-table/activities-table.component.ts - 317 - - Update activity アクティビティを更新 @@ -4072,7 +4072,7 @@ libs/ui/src/lib/activities-table/activities-table.component.html - 237 + 251 @@ -4084,11 +4084,11 @@ libs/ui/src/lib/activities-table/activities-table.component.html - 28 + 30 libs/ui/src/lib/activities-table/activities-table.component.html - 406 + 420 @@ -4100,11 +4100,11 @@ libs/ui/src/lib/activities-table/activities-table.component.html - 52 + 54 libs/ui/src/lib/activities-table/activities-table.component.html - 420 + 434 @@ -4440,11 +4440,11 @@ 配当金 apps/client/src/app/components/account-detail-dialog/account-detail-dialog.html - 90 + 91 apps/client/src/app/components/holding-detail-dialog/holding-detail-dialog.html - 188 + 189 apps/client/src/app/components/portfolio-summary/portfolio-summary.component.html @@ -5289,11 +5289,11 @@ アクティビティをエクスポート libs/ui/src/lib/activities-table/activities-table.component.html - 64 + 72 libs/ui/src/lib/activities-table/activities-table.component.html - 434 + 448 @@ -5301,11 +5301,11 @@ ドラフトをICSとしてエクスポート libs/ui/src/lib/activities-table/activities-table.component.html - 77 + 86 libs/ui/src/lib/activities-table/activities-table.component.html - 447 + 461 @@ -5313,7 +5313,7 @@ ドラフト libs/ui/src/lib/activities-table/activities-table.component.html - 167 + 181 @@ -5321,7 +5321,7 @@ クローン libs/ui/src/lib/activities-table/activities-table.component.html - 492 + 506 @@ -5329,7 +5329,7 @@ ドラフトをICSとしてエクスポート libs/ui/src/lib/activities-table/activities-table.component.html - 502 + 516 @@ -5337,7 +5337,11 @@ 本当にこのアクティビティを削除したいですか? libs/ui/src/lib/activities-table/activities-table.component.ts - 327 + 333 + + + libs/ui/src/lib/activities-table/activities-table.component.ts + 344 @@ -5469,7 +5473,7 @@ 利息 apps/client/src/app/components/account-detail-dialog/account-detail-dialog.html - 78 + 79 apps/client/src/app/components/portfolio-summary/portfolio-summary.component.html @@ -5537,7 +5541,7 @@ libs/ui/src/lib/activities-table/activities-table.component.html - 335 + 349 libs/ui/src/lib/i18n.ts @@ -5565,15 +5569,15 @@ apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 253 + 254 apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 349 + 350 apps/client/src/app/components/holding-detail-dialog/holding-detail-dialog.html - 244 + 245 apps/client/src/app/pages/portfolio/activities/create-or-update-activity-dialog/create-or-update-activity-dialog.html @@ -5597,15 +5601,15 @@ apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 262 + 263 apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 365 + 366 apps/client/src/app/components/holding-detail-dialog/holding-detail-dialog.html - 253 + 254 apps/client/src/app/pages/portfolio/activities/create-or-update-activity-dialog/create-or-update-activity-dialog.html @@ -5781,7 +5785,7 @@ apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 186 + 187 apps/client/src/app/components/admin-market-data/create-asset-profile-dialog/create-asset-profile-dialog.html @@ -5789,13 +5793,21 @@ apps/client/src/app/components/holding-detail-dialog/holding-detail-dialog.html - 322 + 323 libs/ui/src/lib/i18n.ts 35 + + Export + Export + + libs/ui/src/lib/activities-table/activities-table.component.html + 68 + + Tag タグ @@ -5865,7 +5877,7 @@ libs/ui/src/lib/activities-table/activities-table.component.html - 261 + 275 libs/ui/src/lib/i18n.ts @@ -5925,7 +5937,7 @@ 株式 apps/client/src/app/components/account-detail-dialog/account-detail-dialog.html - 66 + 67 libs/ui/src/lib/i18n.ts @@ -6077,7 +6089,7 @@ Invested Capital apps/client/src/app/components/holding-detail-dialog/holding-detail-dialog.html - 173 + 174 apps/client/src/app/components/portfolio-summary/portfolio-summary.component.html @@ -6197,7 +6209,7 @@ テスト apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 606 + 607 @@ -6273,7 +6285,7 @@ Close Holding apps/client/src/app/components/holding-detail-dialog/holding-detail-dialog.html - 450 + 451 @@ -6325,7 +6337,7 @@ 年初来 libs/ui/src/lib/assistant/assistant.component.ts - 377 + 378 @@ -6333,7 +6345,7 @@ 週初来 libs/ui/src/lib/assistant/assistant.component.ts - 369 + 370 @@ -6341,7 +6353,7 @@ 月初来 libs/ui/src/lib/assistant/assistant.component.ts - 373 + 374 @@ -6353,7 +6365,7 @@ libs/ui/src/lib/assistant/assistant.component.ts - 373 + 374 @@ -6373,7 +6385,7 @@ libs/ui/src/lib/assistant/assistant.component.ts - 369 + 370 @@ -6429,7 +6441,7 @@ libs/ui/src/lib/assistant/assistant.component.ts - 387 + 388 @@ -6441,7 +6453,7 @@ libs/ui/src/lib/assistant/assistant.component.ts - 409 + 410 @@ -6482,7 +6494,7 @@ データ収集 apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 629 + 630 apps/client/src/app/components/admin-overview/admin-overview.html @@ -6494,7 +6506,7 @@ 保有資産を検索... libs/ui/src/lib/assistant/assistant.component.ts - 448 + 449 @@ -6562,11 +6574,11 @@ アクティビティ apps/client/src/app/components/account-detail-dialog/account-detail-dialog.html - 100 + 101 apps/client/src/app/components/holding-detail-dialog/holding-detail-dialog.html - 231 + 232 @@ -6574,7 +6586,7 @@ 配当利回り apps/client/src/app/components/holding-detail-dialog/holding-detail-dialog.html - 198 + 199 @@ -6630,7 +6642,7 @@ アクティビティを削除する libs/ui/src/lib/activities-table/activities-table.component.html - 92 + 105 @@ -6662,7 +6674,7 @@ ページにジャンプ... libs/ui/src/lib/assistant/assistant.component.ts - 449 + 450 @@ -6710,7 +6722,7 @@ Include in apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 399 + 400 @@ -6882,7 +6894,7 @@ View Holding libs/ui/src/lib/activities-table/activities-table.component.html - 473 + 487 @@ -6970,11 +6982,11 @@ キャンセル apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 162 + 163 apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 634 + 635 apps/client/src/app/components/admin-market-data/create-asset-profile-dialog/create-asset-profile-dialog.html @@ -7050,7 +7062,7 @@ Close apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 636 + 637 apps/client/src/app/components/admin-market-data/create-asset-profile-dialog/create-asset-profile-dialog.html @@ -7174,7 +7186,7 @@ Performance with currency effect Performance apps/client/src/app/components/holding-detail-dialog/holding-detail-dialog.html - 83 + 84 @@ -7198,7 +7210,7 @@ Change with currency effect Change apps/client/src/app/components/holding-detail-dialog/holding-detail-dialog.html - 63 + 64 @@ -7312,6 +7324,10 @@ apps/client/src/app/components/admin-market-data/admin-market-data.html 270 + + libs/ui/src/lib/activities-table/activities-table.component.html + 101 + cannot be self-hosted @@ -7632,7 +7648,7 @@ 保存 apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 645 + 646 apps/client/src/app/components/admin-market-data/create-asset-profile-dialog/create-asset-profile-dialog.html @@ -7748,7 +7764,7 @@ Mode apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 556 + 557 @@ -7764,7 +7780,7 @@ Default Market Price apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 519 + 520 @@ -7772,7 +7788,7 @@ Selector apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 572 + 573 @@ -7796,7 +7812,7 @@ HTTP Request Headers apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 532 + 533 @@ -8041,7 +8057,7 @@ Apply apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 154 + 155 @@ -8108,6 +8124,18 @@ 142 + + {VAR_PLURAL, plural, =1 {Activity} other {Activities}} + {VAR_PLURAL, plural, =1 {Activity} other {Activities}} + + libs/ui/src/lib/activities-table/activities-table.component.html + 69 + + + libs/ui/src/lib/activities-table/activities-table.component.html + 102 + + Log out Log out @@ -8577,7 +8605,7 @@ Manage Asset Profile apps/client/src/app/components/holding-detail-dialog/holding-detail-dialog.html - 478 + 479 @@ -8605,7 +8633,7 @@ apps/client/src/app/components/holding-detail-dialog/holding-detail-dialog.html - 101 + 102 diff --git a/apps/client/src/locales/messages.ko.xlf b/apps/client/src/locales/messages.ko.xlf index 5efe7b365..5ee8c49b7 100644 --- a/apps/client/src/locales/messages.ko.xlf +++ b/apps/client/src/locales/messages.ko.xlf @@ -268,11 +268,11 @@ libs/ui/src/lib/activities-table/activities-table.component.html - 5 + 7 libs/ui/src/lib/activities-table/activities-table.component.html - 183 + 197 @@ -312,7 +312,7 @@ 현금 잔액 apps/client/src/app/components/account-detail-dialog/account-detail-dialog.html - 54 + 55 apps/client/src/app/pages/accounts/create-or-update-account-dialog/create-or-update-account-dialog.html @@ -328,7 +328,7 @@ 플랫폼 apps/client/src/app/components/account-detail-dialog/account-detail-dialog.html - 112 + 113 apps/client/src/app/pages/accounts/create-or-update-account-dialog/create-or-update-account-dialog.html @@ -344,7 +344,7 @@ 현금 잔액 apps/client/src/app/components/account-detail-dialog/account-detail-dialog.html - 169 + 170 @@ -368,7 +368,7 @@ apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 332 + 333 apps/client/src/app/components/admin-platform/admin-platform.component.html @@ -404,7 +404,7 @@ libs/ui/src/lib/activities-table/activities-table.component.html - 161 + 175 libs/ui/src/lib/benchmark/benchmark.component.html @@ -444,11 +444,11 @@ 통화 apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 216 + 217 apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 339 + 340 apps/client/src/app/components/admin-market-data/create-asset-profile-dialog/create-asset-profile-dialog.html @@ -468,7 +468,7 @@ libs/ui/src/lib/activities-table/activities-table.component.html - 303 + 317 @@ -504,11 +504,11 @@ libs/ui/src/lib/activities-table/activities-table.component.html - 284 + 298 libs/ui/src/lib/activities-table/activities-table.component.html - 320 + 334 libs/ui/src/lib/holdings-table/holdings-table.component.html @@ -548,7 +548,7 @@ libs/ui/src/lib/activities-table/activities-table.component.html - 483 + 497 @@ -588,7 +588,7 @@ libs/ui/src/lib/activities-table/activities-table.component.html - 513 + 527 libs/ui/src/lib/benchmark/benchmark.component.html @@ -628,7 +628,7 @@ apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 486 + 487 @@ -644,7 +644,7 @@ apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 197 + 198 apps/client/src/app/pages/portfolio/activities/create-or-update-activity-dialog/create-or-update-activity-dialog.html @@ -752,7 +752,7 @@ 계좌 검색... libs/ui/src/lib/assistant/assistant.component.ts - 447 + 448 @@ -768,7 +768,7 @@ libs/ui/src/lib/activities-table/activities-table.component.html - 192 + 206 libs/ui/src/lib/historical-market-data-editor/historical-market-data-editor-dialog/historical-market-data-editor-dialog.html @@ -792,7 +792,7 @@ apps/client/src/app/components/holding-detail-dialog/holding-detail-dialog.html - 113 + 114 libs/ui/src/lib/historical-market-data-editor/historical-market-data-editor-dialog/historical-market-data-editor-dialog.html @@ -872,11 +872,11 @@ apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 235 + 236 apps/client/src/app/components/holding-detail-dialog/holding-detail-dialog.html - 221 + 222 libs/ui/src/lib/holdings-table/holdings-table.component.html @@ -888,7 +888,7 @@ 데이터 수집 빈도 apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 467 + 468 @@ -1032,11 +1032,11 @@ 섹터 apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 280 + 281 apps/client/src/app/components/holding-detail-dialog/holding-detail-dialog.html - 270 + 271 @@ -1044,7 +1044,7 @@ 국가 apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 295 + 296 apps/client/src/app/components/admin-users/admin-users.html @@ -1052,7 +1052,7 @@ apps/client/src/app/components/holding-detail-dialog/holding-detail-dialog.html - 284 + 285 apps/client/src/app/components/user-detail-dialog/user-detail-dialog.html @@ -1064,15 +1064,15 @@ 섹터 apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 301 + 302 apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 420 + 421 apps/client/src/app/components/holding-detail-dialog/holding-detail-dialog.html - 290 + 291 apps/client/src/app/pages/public/public-page.html @@ -1084,15 +1084,15 @@ 국가 apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 311 + 312 apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 431 + 432 apps/client/src/app/components/holding-detail-dialog/holding-detail-dialog.html - 302 + 303 @@ -1100,7 +1100,7 @@ 심볼 매핑 apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 409 + 410 @@ -1140,7 +1140,7 @@ 스크래퍼 설정 apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 509 + 510 @@ -1148,7 +1148,7 @@ 메모 apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 455 + 456 apps/client/src/app/pages/accounts/create-or-update-account-dialog/create-or-update-account-dialog.html @@ -1164,7 +1164,7 @@ libs/ui/src/lib/activities-table/activities-table.component.html - 370 + 384 @@ -1204,7 +1204,7 @@ 이름, 심볼 또는 ISIN apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 133 + 134 apps/client/src/app/components/admin-market-data/create-asset-profile-dialog/create-asset-profile-dialog.html @@ -1364,11 +1364,11 @@ 링크 apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 442 + 443 apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 588 + 589 apps/client/src/app/components/admin-platform/admin-platform.component.html @@ -1608,7 +1608,7 @@ 기준 apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 401 + 402 apps/client/src/app/components/benchmark-comparator/benchmark-comparator.component.ts @@ -1620,7 +1620,7 @@ 현재 시장 분위기 libs/ui/src/lib/fear-and-greed-index/fear-and-greed-index.component.html - 22 + 23 @@ -1868,7 +1868,7 @@ 또는 apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 167 + 168 apps/client/src/app/components/admin-settings/admin-settings.component.html @@ -1948,7 +1948,7 @@ 수수료 apps/client/src/app/components/holding-detail-dialog/holding-detail-dialog.html - 210 + 211 apps/client/src/app/components/portfolio-summary/portfolio-summary.component.html @@ -2044,7 +2044,7 @@ 최저가 apps/client/src/app/components/holding-detail-dialog/holding-detail-dialog.html - 131 + 132 @@ -2052,7 +2052,7 @@ 최고가 apps/client/src/app/components/holding-detail-dialog/holding-detail-dialog.html - 149 + 150 @@ -2060,7 +2060,7 @@ 수량 apps/client/src/app/components/holding-detail-dialog/holding-detail-dialog.html - 159 + 160 apps/client/src/app/pages/portfolio/activities/create-or-update-activity-dialog/create-or-update-activity-dialog.html @@ -2068,7 +2068,7 @@ libs/ui/src/lib/activities-table/activities-table.component.html - 213 + 227 libs/ui/src/lib/holdings-table/holdings-table.component.html @@ -2080,7 +2080,7 @@ 데이터 결함 보고 apps/client/src/app/components/holding-detail-dialog/holding-detail-dialog.html - 463 + 464 @@ -2260,7 +2260,7 @@ libs/ui/src/lib/assistant/assistant.component.ts - 365 + 366 @@ -2272,7 +2272,7 @@ libs/ui/src/lib/assistant/assistant.component.ts - 377 + 378 @@ -2284,7 +2284,7 @@ libs/ui/src/lib/assistant/assistant.component.ts - 387 + 388 @@ -2304,7 +2304,7 @@ libs/ui/src/lib/assistant/assistant.component.ts - 409 + 410 @@ -2324,7 +2324,7 @@ libs/ui/src/lib/assistant/assistant.component.ts - 415 + 416 @@ -2504,7 +2504,7 @@ 장소 apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 547 + 548 apps/client/src/app/components/user-account-settings/user-account-settings.html @@ -2824,7 +2824,7 @@ apps/client/src/app/components/holding-detail-dialog/holding-detail-dialog.html - 395 + 396 apps/client/src/app/components/user-detail-dialog/user-detail-dialog.html @@ -2928,7 +2928,7 @@ 시장 데이터 apps/client/src/app/components/holding-detail-dialog/holding-detail-dialog.html - 417 + 418 libs/common/src/lib/routes/routes.ts @@ -2968,11 +2968,11 @@ 개요 apps/client/src/app/components/account-detail-dialog/account-detail-dialog.html - 41 + 42 apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 114 + 115 apps/client/src/app/components/header/header.component.html @@ -2984,7 +2984,7 @@ apps/client/src/app/components/holding-detail-dialog/holding-detail-dialog.html - 47 + 48 apps/client/src/app/pages/admin/admin-page.component.ts @@ -3368,7 +3368,7 @@ 보유 종목 apps/client/src/app/components/account-detail-dialog/account-detail-dialog.html - 126 + 127 apps/client/src/app/components/home-holdings/home-holdings.html @@ -3420,7 +3420,7 @@ 시장 apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 403 + 404 apps/client/src/app/components/footer/footer.component.html @@ -3615,6 +3615,14 @@ 84 + + Do you really want to delete these activities? + Do you really want to delete these activities? + + libs/ui/src/lib/activities-table/activities-table.component.ts + 334 + + Why Ghostfolio? Ghostfolio인가요? @@ -3856,7 +3864,7 @@ Convert to apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 174 + 175 @@ -3932,15 +3940,15 @@ 거래 내역 apps/client/src/app/components/account-detail-dialog/account-detail-dialog.html - 102 + 103 apps/client/src/app/components/account-detail-dialog/account-detail-dialog.html - 137 + 138 apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 244 + 245 apps/client/src/app/components/admin-overview/admin-overview.html @@ -3956,11 +3964,11 @@ apps/client/src/app/components/holding-detail-dialog/holding-detail-dialog.html - 233 + 234 apps/client/src/app/components/holding-detail-dialog/holding-detail-dialog.html - 361 + 362 apps/client/src/app/components/user-detail-dialog/user-detail-dialog.html @@ -3979,14 +3987,6 @@ 126 - - Do you really want to delete these activities? - 정말로 이 거래들을 삭제하시겠습니까? - - libs/ui/src/lib/activities-table/activities-table.component.ts - 317 - - Update activity 거래 수정 @@ -4064,7 +4064,7 @@ libs/ui/src/lib/activities-table/activities-table.component.html - 237 + 251 @@ -4076,11 +4076,11 @@ libs/ui/src/lib/activities-table/activities-table.component.html - 28 + 30 libs/ui/src/lib/activities-table/activities-table.component.html - 406 + 420 @@ -4092,11 +4092,11 @@ libs/ui/src/lib/activities-table/activities-table.component.html - 52 + 54 libs/ui/src/lib/activities-table/activities-table.component.html - 420 + 434 @@ -4432,11 +4432,11 @@ 배당금 apps/client/src/app/components/account-detail-dialog/account-detail-dialog.html - 90 + 91 apps/client/src/app/components/holding-detail-dialog/holding-detail-dialog.html - 188 + 189 apps/client/src/app/components/portfolio-summary/portfolio-summary.component.html @@ -5281,11 +5281,11 @@ 거래 내역 내보내기 libs/ui/src/lib/activities-table/activities-table.component.html - 64 + 72 libs/ui/src/lib/activities-table/activities-table.component.html - 434 + 448 @@ -5293,11 +5293,11 @@ 초안을 달력 파일로 내보내기 libs/ui/src/lib/activities-table/activities-table.component.html - 77 + 86 libs/ui/src/lib/activities-table/activities-table.component.html - 447 + 461 @@ -5305,7 +5305,7 @@ 초안 libs/ui/src/lib/activities-table/activities-table.component.html - 167 + 181 @@ -5313,7 +5313,7 @@ 클론 libs/ui/src/lib/activities-table/activities-table.component.html - 492 + 506 @@ -5321,7 +5321,7 @@ 초안을 달력 파일로 내보내기 libs/ui/src/lib/activities-table/activities-table.component.html - 502 + 516 @@ -5329,7 +5329,11 @@ 정말로 이 거래를 삭제하시겠습니까? libs/ui/src/lib/activities-table/activities-table.component.ts - 327 + 333 + + + libs/ui/src/lib/activities-table/activities-table.component.ts + 344 @@ -5461,7 +5465,7 @@ 관심 apps/client/src/app/components/account-detail-dialog/account-detail-dialog.html - 78 + 79 apps/client/src/app/components/portfolio-summary/portfolio-summary.component.html @@ -5529,7 +5533,7 @@ libs/ui/src/lib/activities-table/activities-table.component.html - 335 + 349 libs/ui/src/lib/i18n.ts @@ -5557,15 +5561,15 @@ apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 253 + 254 apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 349 + 350 apps/client/src/app/components/holding-detail-dialog/holding-detail-dialog.html - 244 + 245 apps/client/src/app/pages/portfolio/activities/create-or-update-activity-dialog/create-or-update-activity-dialog.html @@ -5589,15 +5593,15 @@ apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 262 + 263 apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 365 + 366 apps/client/src/app/components/holding-detail-dialog/holding-detail-dialog.html - 253 + 254 apps/client/src/app/pages/portfolio/activities/create-or-update-activity-dialog/create-or-update-activity-dialog.html @@ -5781,7 +5785,7 @@ apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 186 + 187 apps/client/src/app/components/admin-market-data/create-asset-profile-dialog/create-asset-profile-dialog.html @@ -5789,13 +5793,21 @@ apps/client/src/app/components/holding-detail-dialog/holding-detail-dialog.html - 322 + 323 libs/ui/src/lib/i18n.ts 35 + + Export + Export + + libs/ui/src/lib/activities-table/activities-table.component.html + 68 + + Tag 꼬리표 @@ -5865,7 +5877,7 @@ libs/ui/src/lib/activities-table/activities-table.component.html - 261 + 275 libs/ui/src/lib/i18n.ts @@ -5925,7 +5937,7 @@ 주식 apps/client/src/app/components/account-detail-dialog/account-detail-dialog.html - 66 + 67 libs/ui/src/lib/i18n.ts @@ -6077,7 +6089,7 @@ Invested Capital apps/client/src/app/components/holding-detail-dialog/holding-detail-dialog.html - 173 + 174 apps/client/src/app/components/portfolio-summary/portfolio-summary.component.html @@ -6197,7 +6209,7 @@ 시험 apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 606 + 607 @@ -6273,7 +6285,7 @@ 보유 포지션 종료 apps/client/src/app/components/holding-detail-dialog/holding-detail-dialog.html - 450 + 451 @@ -6325,7 +6337,7 @@ 연초 현재 libs/ui/src/lib/assistant/assistant.component.ts - 377 + 378 @@ -6333,7 +6345,7 @@ 이번주 현재까지 libs/ui/src/lib/assistant/assistant.component.ts - 369 + 370 @@ -6341,7 +6353,7 @@ 월간 누계 libs/ui/src/lib/assistant/assistant.component.ts - 373 + 374 @@ -6353,7 +6365,7 @@ libs/ui/src/lib/assistant/assistant.component.ts - 373 + 374 @@ -6373,7 +6385,7 @@ libs/ui/src/lib/assistant/assistant.component.ts - 369 + 370 @@ -6429,7 +6441,7 @@ libs/ui/src/lib/assistant/assistant.component.ts - 387 + 388 @@ -6441,7 +6453,7 @@ libs/ui/src/lib/assistant/assistant.component.ts - 409 + 410 @@ -6482,7 +6494,7 @@ 데이터 수집 apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 629 + 630 apps/client/src/app/components/admin-overview/admin-overview.html @@ -6494,7 +6506,7 @@ 보유 종목 검색... libs/ui/src/lib/assistant/assistant.component.ts - 448 + 449 @@ -6562,11 +6574,11 @@ 거래 apps/client/src/app/components/account-detail-dialog/account-detail-dialog.html - 100 + 101 apps/client/src/app/components/holding-detail-dialog/holding-detail-dialog.html - 231 + 232 @@ -6574,7 +6586,7 @@ 배당수익률 apps/client/src/app/components/holding-detail-dialog/holding-detail-dialog.html - 198 + 199 @@ -6630,7 +6642,7 @@ 거래 삭제 libs/ui/src/lib/activities-table/activities-table.component.html - 92 + 105 @@ -6662,7 +6674,7 @@ 페이지 이동... libs/ui/src/lib/assistant/assistant.component.ts - 449 + 450 @@ -6710,7 +6722,7 @@ 포함 apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 399 + 400 @@ -6882,7 +6894,7 @@ 보유 종목 보기 libs/ui/src/lib/activities-table/activities-table.component.html - 473 + 487 @@ -6970,11 +6982,11 @@ 취소 apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 162 + 163 apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 634 + 635 apps/client/src/app/components/admin-market-data/create-asset-profile-dialog/create-asset-profile-dialog.html @@ -7050,7 +7062,7 @@ 닫다 apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 636 + 637 apps/client/src/app/components/admin-market-data/create-asset-profile-dialog/create-asset-profile-dialog.html @@ -7174,7 +7186,7 @@ 환율 효과 반영 수익률 수익률 apps/client/src/app/components/holding-detail-dialog/holding-detail-dialog.html - 83 + 84 @@ -7198,7 +7210,7 @@ 환율 효과 반영 변동 변동 apps/client/src/app/components/holding-detail-dialog/holding-detail-dialog.html - 63 + 64 @@ -7312,6 +7324,10 @@ apps/client/src/app/components/admin-market-data/admin-market-data.html 270 + + libs/ui/src/lib/activities-table/activities-table.component.html + 101 + cannot be self-hosted @@ -7632,7 +7648,7 @@ 구하다 apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 645 + 646 apps/client/src/app/components/admin-market-data/create-asset-profile-dialog/create-asset-profile-dialog.html @@ -7748,7 +7764,7 @@ 방법 apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 556 + 557 @@ -7764,7 +7780,7 @@ 기본 시장 가격 apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 519 + 520 @@ -7772,7 +7788,7 @@ 선택자 apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 572 + 573 @@ -7796,7 +7812,7 @@ HTTP 요청 헤더 apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 532 + 533 @@ -8041,7 +8057,7 @@ 적용하다 apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 154 + 155 @@ -8108,6 +8124,18 @@ 142 + + {VAR_PLURAL, plural, =1 {Activity} other {Activities}} + {VAR_PLURAL, plural, =1 {Activity} other {Activities}} + + libs/ui/src/lib/activities-table/activities-table.component.html + 69 + + + libs/ui/src/lib/activities-table/activities-table.component.html + 102 + + Log out 로그아웃 @@ -8577,7 +8605,7 @@ 자산 프로필 관리 apps/client/src/app/components/holding-detail-dialog/holding-detail-dialog.html - 478 + 479 @@ -8605,7 +8633,7 @@ apps/client/src/app/components/holding-detail-dialog/holding-detail-dialog.html - 101 + 102 diff --git a/apps/client/src/locales/messages.nl.xlf b/apps/client/src/locales/messages.nl.xlf index 585a06f79..fccb994a9 100644 --- a/apps/client/src/locales/messages.nl.xlf +++ b/apps/client/src/locales/messages.nl.xlf @@ -66,11 +66,11 @@ libs/ui/src/lib/activities-table/activities-table.component.html - 5 + 7 libs/ui/src/lib/activities-table/activities-table.component.html - 183 + 197 @@ -114,7 +114,7 @@ apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 332 + 333 apps/client/src/app/components/admin-platform/admin-platform.component.html @@ -150,7 +150,7 @@ libs/ui/src/lib/activities-table/activities-table.component.html - 161 + 175 libs/ui/src/lib/benchmark/benchmark.component.html @@ -210,11 +210,11 @@ libs/ui/src/lib/activities-table/activities-table.component.html - 284 + 298 libs/ui/src/lib/activities-table/activities-table.component.html - 320 + 334 libs/ui/src/lib/holdings-table/holdings-table.component.html @@ -254,7 +254,7 @@ libs/ui/src/lib/activities-table/activities-table.component.html - 483 + 497 @@ -294,7 +294,7 @@ libs/ui/src/lib/activities-table/activities-table.component.html - 513 + 527 libs/ui/src/lib/benchmark/benchmark.component.html @@ -338,7 +338,7 @@ apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 197 + 198 apps/client/src/app/pages/portfolio/activities/create-or-update-activity-dialog/create-or-update-activity-dialog.html @@ -422,7 +422,7 @@ apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 486 + 487 @@ -462,7 +462,7 @@ Zoek een account... libs/ui/src/lib/assistant/assistant.component.ts - 447 + 448 @@ -478,7 +478,7 @@ libs/ui/src/lib/activities-table/activities-table.component.html - 192 + 206 libs/ui/src/lib/historical-market-data-editor/historical-market-data-editor-dialog/historical-market-data-editor-dialog.html @@ -502,7 +502,7 @@ apps/client/src/app/components/holding-detail-dialog/holding-detail-dialog.html - 113 + 114 libs/ui/src/lib/historical-market-data-editor/historical-market-data-editor-dialog/historical-market-data-editor-dialog.html @@ -518,11 +518,11 @@ apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 235 + 236 apps/client/src/app/components/holding-detail-dialog/holding-detail-dialog.html - 221 + 222 libs/ui/src/lib/holdings-table/holdings-table.component.html @@ -710,7 +710,7 @@ Huidig marktsentiment libs/ui/src/lib/fear-and-greed-index/fear-and-greed-index.component.html - 22 + 23 @@ -854,7 +854,7 @@ of apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 167 + 168 apps/client/src/app/components/admin-settings/admin-settings.component.html @@ -998,15 +998,15 @@ Sectoren apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 301 + 302 apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 420 + 421 apps/client/src/app/components/holding-detail-dialog/holding-detail-dialog.html - 290 + 291 apps/client/src/app/pages/public/public-page.html @@ -1018,15 +1018,15 @@ Landen apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 311 + 312 apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 431 + 432 apps/client/src/app/components/holding-detail-dialog/holding-detail-dialog.html - 302 + 303 @@ -1050,7 +1050,7 @@ Gegevensstoring melden apps/client/src/app/components/holding-detail-dialog/holding-detail-dialog.html - 463 + 464 @@ -1098,7 +1098,7 @@ libs/ui/src/lib/assistant/assistant.component.ts - 365 + 366 @@ -1110,7 +1110,7 @@ libs/ui/src/lib/assistant/assistant.component.ts - 377 + 378 @@ -1122,7 +1122,7 @@ libs/ui/src/lib/assistant/assistant.component.ts - 387 + 388 @@ -1142,7 +1142,7 @@ libs/ui/src/lib/assistant/assistant.component.ts - 409 + 410 @@ -1162,7 +1162,7 @@ libs/ui/src/lib/assistant/assistant.component.ts - 415 + 416 @@ -1342,7 +1342,7 @@ Locatie apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 547 + 548 apps/client/src/app/components/user-account-settings/user-account-settings.html @@ -1454,7 +1454,7 @@ apps/client/src/app/components/holding-detail-dialog/holding-detail-dialog.html - 395 + 396 apps/client/src/app/components/user-detail-dialog/user-detail-dialog.html @@ -1502,11 +1502,11 @@ Valuta apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 216 + 217 apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 339 + 340 apps/client/src/app/components/admin-market-data/create-asset-profile-dialog/create-asset-profile-dialog.html @@ -1526,7 +1526,7 @@ libs/ui/src/lib/activities-table/activities-table.component.html - 303 + 317 @@ -1534,7 +1534,7 @@ Saldo apps/client/src/app/components/account-detail-dialog/account-detail-dialog.html - 54 + 55 apps/client/src/app/pages/accounts/create-or-update-account-dialog/create-or-update-account-dialog.html @@ -1550,7 +1550,7 @@ Platform apps/client/src/app/components/account-detail-dialog/account-detail-dialog.html - 112 + 113 apps/client/src/app/pages/accounts/create-or-update-account-dialog/create-or-update-account-dialog.html @@ -1782,11 +1782,11 @@ Overzicht apps/client/src/app/components/account-detail-dialog/account-detail-dialog.html - 41 + 42 apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 114 + 115 apps/client/src/app/components/header/header.component.html @@ -1798,7 +1798,7 @@ apps/client/src/app/components/holding-detail-dialog/holding-detail-dialog.html - 47 + 48 apps/client/src/app/pages/admin/admin-page.component.ts @@ -1822,7 +1822,7 @@ Markten apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 403 + 404 apps/client/src/app/components/footer/footer.component.html @@ -2006,7 +2006,7 @@ Posities apps/client/src/app/components/account-detail-dialog/account-detail-dialog.html - 126 + 127 apps/client/src/app/components/home-holdings/home-holdings.html @@ -2078,7 +2078,7 @@ Naam, symbool of ISIN apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 133 + 134 apps/client/src/app/components/admin-market-data/create-asset-profile-dialog/create-asset-profile-dialog.html @@ -2106,7 +2106,7 @@ Hoeveelheid apps/client/src/app/components/holding-detail-dialog/holding-detail-dialog.html - 159 + 160 apps/client/src/app/pages/portfolio/activities/create-or-update-activity-dialog/create-or-update-activity-dialog.html @@ -2114,7 +2114,7 @@ libs/ui/src/lib/activities-table/activities-table.component.html - 213 + 227 libs/ui/src/lib/holdings-table/holdings-table.component.html @@ -2130,7 +2130,7 @@ libs/ui/src/lib/activities-table/activities-table.component.html - 237 + 251 @@ -2138,7 +2138,7 @@ Opmerking apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 455 + 456 apps/client/src/app/pages/accounts/create-or-update-account-dialog/create-or-update-account-dialog.html @@ -2154,7 +2154,7 @@ libs/ui/src/lib/activities-table/activities-table.component.html - 370 + 384 @@ -2162,15 +2162,15 @@ Activiteiten apps/client/src/app/components/account-detail-dialog/account-detail-dialog.html - 102 + 103 apps/client/src/app/components/account-detail-dialog/account-detail-dialog.html - 137 + 138 apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 244 + 245 apps/client/src/app/components/admin-overview/admin-overview.html @@ -2186,11 +2186,11 @@ apps/client/src/app/components/holding-detail-dialog/holding-detail-dialog.html - 233 + 234 apps/client/src/app/components/holding-detail-dialog/holding-detail-dialog.html - 361 + 362 apps/client/src/app/components/user-detail-dialog/user-detail-dialog.html @@ -2398,7 +2398,7 @@ Concept libs/ui/src/lib/activities-table/activities-table.component.html - 167 + 181 @@ -2410,11 +2410,11 @@ libs/ui/src/lib/activities-table/activities-table.component.html - 28 + 30 libs/ui/src/lib/activities-table/activities-table.component.html - 406 + 420 @@ -2422,11 +2422,11 @@ Activiteiten exporteren libs/ui/src/lib/activities-table/activities-table.component.html - 64 + 72 libs/ui/src/lib/activities-table/activities-table.component.html - 434 + 448 @@ -2434,11 +2434,11 @@ Concept exporteren als ICS libs/ui/src/lib/activities-table/activities-table.component.html - 77 + 86 libs/ui/src/lib/activities-table/activities-table.component.html - 447 + 461 @@ -2446,7 +2446,7 @@ Kloon libs/ui/src/lib/activities-table/activities-table.component.html - 492 + 506 @@ -2454,7 +2454,7 @@ Concept exporteren als ICS libs/ui/src/lib/activities-table/activities-table.component.html - 502 + 516 @@ -2462,7 +2462,11 @@ Wil je deze activiteit echt verwijderen? libs/ui/src/lib/activities-table/activities-table.component.ts - 327 + 333 + + + libs/ui/src/lib/activities-table/activities-table.component.ts + 344 @@ -2594,7 +2598,7 @@ Maximale prijs apps/client/src/app/components/holding-detail-dialog/holding-detail-dialog.html - 149 + 150 @@ -2634,11 +2638,11 @@ Sector apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 280 + 281 apps/client/src/app/components/holding-detail-dialog/holding-detail-dialog.html - 270 + 271 @@ -2646,7 +2650,7 @@ Land apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 295 + 296 apps/client/src/app/components/admin-users/admin-users.html @@ -2654,7 +2658,7 @@ apps/client/src/app/components/holding-detail-dialog/holding-detail-dialog.html - 284 + 285 apps/client/src/app/components/user-detail-dialog/user-detail-dialog.html @@ -2666,7 +2670,7 @@ Minimale prijs apps/client/src/app/components/holding-detail-dialog/holding-detail-dialog.html - 131 + 132 @@ -2690,7 +2694,7 @@ Rente apps/client/src/app/components/account-detail-dialog/account-detail-dialog.html - 78 + 79 apps/client/src/app/components/portfolio-summary/portfolio-summary.component.html @@ -2818,7 +2822,7 @@ Benchmark apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 401 + 402 apps/client/src/app/components/benchmark-comparator/benchmark-comparator.component.ts @@ -2958,7 +2962,7 @@ libs/ui/src/lib/activities-table/activities-table.component.html - 335 + 349 libs/ui/src/lib/i18n.ts @@ -2978,15 +2982,15 @@ apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 253 + 254 apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 349 + 350 apps/client/src/app/components/holding-detail-dialog/holding-detail-dialog.html - 244 + 245 apps/client/src/app/pages/portfolio/activities/create-or-update-activity-dialog/create-or-update-activity-dialog.html @@ -3014,7 +3018,7 @@ apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 186 + 187 apps/client/src/app/components/admin-market-data/create-asset-profile-dialog/create-asset-profile-dialog.html @@ -3022,13 +3026,21 @@ apps/client/src/app/components/holding-detail-dialog/holding-detail-dialog.html - 322 + 323 libs/ui/src/lib/i18n.ts 35 + + Export + Export + + libs/ui/src/lib/activities-table/activities-table.component.html + 68 + + Tag Label @@ -3066,7 +3078,7 @@ Equity apps/client/src/app/components/account-detail-dialog/account-detail-dialog.html - 66 + 67 libs/ui/src/lib/i18n.ts @@ -3286,7 +3298,7 @@ Invested Capital apps/client/src/app/components/holding-detail-dialog/holding-detail-dialog.html - 173 + 174 apps/client/src/app/components/portfolio-summary/portfolio-summary.component.html @@ -3346,7 +3358,7 @@ Frequentie van gegevensverzameling apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 467 + 468 @@ -3370,7 +3382,7 @@ Symbool toewijzen apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 409 + 410 @@ -3386,11 +3398,11 @@ Dividend apps/client/src/app/components/account-detail-dialog/account-detail-dialog.html - 90 + 91 apps/client/src/app/components/holding-detail-dialog/holding-detail-dialog.html - 188 + 189 apps/client/src/app/components/portfolio-summary/portfolio-summary.component.html @@ -3430,15 +3442,15 @@ apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 262 + 263 apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 365 + 366 apps/client/src/app/components/holding-detail-dialog/holding-detail-dialog.html - 253 + 254 apps/client/src/app/pages/portfolio/activities/create-or-update-activity-dialog/create-or-update-activity-dialog.html @@ -3486,7 +3498,7 @@ Marktgegevens apps/client/src/app/components/holding-detail-dialog/holding-detail-dialog.html - 417 + 418 libs/common/src/lib/routes/routes.ts @@ -3562,11 +3574,11 @@ libs/ui/src/lib/activities-table/activities-table.component.html - 52 + 54 libs/ui/src/lib/activities-table/activities-table.component.html - 420 + 434 @@ -3938,7 +3950,7 @@ Kosten apps/client/src/app/components/holding-detail-dialog/holding-detail-dialog.html - 210 + 211 apps/client/src/app/components/portfolio-summary/portfolio-summary.component.html @@ -4101,14 +4113,6 @@ 254 - - Do you really want to delete these activities? - Weet je zeker dat je alle activiteiten wilt verwijderen? - - libs/ui/src/lib/activities-table/activities-table.component.ts - 317 - - By ETF Provider Per ETF-aanbieder @@ -4154,11 +4158,11 @@ Url apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 442 + 443 apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 588 + 589 apps/client/src/app/components/admin-platform/admin-platform.component.html @@ -4566,7 +4570,7 @@ Scraper instellingen apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 509 + 510 @@ -5257,6 +5261,14 @@ 84 + + Do you really want to delete these activities? + Do you really want to delete these activities? + + libs/ui/src/lib/activities-table/activities-table.component.ts + 334 + + Why Ghostfolio? Waarom Ghostfolio? @@ -5756,7 +5768,7 @@ Convert to apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 174 + 175 @@ -5828,7 +5840,7 @@ libs/ui/src/lib/activities-table/activities-table.component.html - 261 + 275 libs/ui/src/lib/i18n.ts @@ -6120,7 +6132,7 @@ Contant Saldo apps/client/src/app/components/account-detail-dialog/account-detail-dialog.html - 169 + 170 @@ -6164,7 +6176,7 @@ Test apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 606 + 607 @@ -6260,7 +6272,7 @@ Sluit Holding apps/client/src/app/components/holding-detail-dialog/holding-detail-dialog.html - 450 + 451 @@ -6300,7 +6312,7 @@ Week tot nu toe libs/ui/src/lib/assistant/assistant.component.ts - 369 + 370 @@ -6312,7 +6324,7 @@ libs/ui/src/lib/assistant/assistant.component.ts - 369 + 370 @@ -6320,7 +6332,7 @@ Maand tot nu toe libs/ui/src/lib/assistant/assistant.component.ts - 373 + 374 @@ -6332,7 +6344,7 @@ libs/ui/src/lib/assistant/assistant.component.ts - 373 + 374 @@ -6348,7 +6360,7 @@ Jaar tot nu toe libs/ui/src/lib/assistant/assistant.component.ts - 377 + 378 @@ -6404,7 +6416,7 @@ libs/ui/src/lib/assistant/assistant.component.ts - 387 + 388 @@ -6416,7 +6428,7 @@ libs/ui/src/lib/assistant/assistant.component.ts - 409 + 410 @@ -6432,7 +6444,7 @@ Data Verzamelen apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 629 + 630 apps/client/src/app/components/admin-overview/admin-overview.html @@ -6444,7 +6456,7 @@ Zoek een positie... libs/ui/src/lib/assistant/assistant.component.ts - 448 + 449 @@ -6537,11 +6549,11 @@ Activiteit apps/client/src/app/components/account-detail-dialog/account-detail-dialog.html - 100 + 101 apps/client/src/app/components/holding-detail-dialog/holding-detail-dialog.html - 231 + 232 @@ -6549,7 +6561,7 @@ Dividendrendement apps/client/src/app/components/holding-detail-dialog/holding-detail-dialog.html - 198 + 199 @@ -6605,7 +6617,7 @@ Verwijder Activiteiten libs/ui/src/lib/activities-table/activities-table.component.html - 92 + 105 @@ -6629,7 +6641,7 @@ Ga naar een pagina... libs/ui/src/lib/assistant/assistant.component.ts - 449 + 450 @@ -6685,7 +6697,7 @@ Opnemen in apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 399 + 400 @@ -6921,7 +6933,7 @@ Bekijk Holding libs/ui/src/lib/activities-table/activities-table.component.html - 473 + 487 @@ -6977,11 +6989,11 @@ Annuleren apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 162 + 163 apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 634 + 635 apps/client/src/app/components/admin-market-data/create-asset-profile-dialog/create-asset-profile-dialog.html @@ -7033,7 +7045,7 @@ Sluiten apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 636 + 637 apps/client/src/app/components/admin-market-data/create-asset-profile-dialog/create-asset-profile-dialog.html @@ -7125,7 +7137,7 @@ Verandering met valuta-effect Verandering apps/client/src/app/components/holding-detail-dialog/holding-detail-dialog.html - 63 + 64 @@ -7141,7 +7153,7 @@ Prestaties met valuta-effect Prestaties apps/client/src/app/components/holding-detail-dialog/holding-detail-dialog.html - 83 + 84 @@ -7287,6 +7299,10 @@ apps/client/src/app/components/admin-market-data/admin-market-data.html 270 + + libs/ui/src/lib/activities-table/activities-table.component.html + 101 + cannot be self-hosted @@ -7607,7 +7623,7 @@ Opslaan apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 645 + 646 apps/client/src/app/components/admin-market-data/create-asset-profile-dialog/create-asset-profile-dialog.html @@ -7739,7 +7755,7 @@ Standaard Marktprijs apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 519 + 520 @@ -7747,7 +7763,7 @@ Modus apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 556 + 557 @@ -7763,7 +7779,7 @@ Kiezer apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 572 + 573 @@ -7771,7 +7787,7 @@ HTTP Verzoek Headers apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 532 + 533 @@ -8016,7 +8032,7 @@ Toepassen apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 154 + 155 @@ -8107,6 +8123,18 @@ 142 + + {VAR_PLURAL, plural, =1 {Activity} other {Activities}} + {VAR_PLURAL, plural, =1 {Activity} other {Activities}} + + libs/ui/src/lib/activities-table/activities-table.component.html + 69 + + + libs/ui/src/lib/activities-table/activities-table.component.html + 102 + + Log out Uitloggen @@ -8576,7 +8604,7 @@ Beheer activaprofiel apps/client/src/app/components/holding-detail-dialog/holding-detail-dialog.html - 478 + 479 @@ -8604,7 +8632,7 @@ apps/client/src/app/components/holding-detail-dialog/holding-detail-dialog.html - 101 + 102 diff --git a/apps/client/src/locales/messages.pl.xlf b/apps/client/src/locales/messages.pl.xlf index d07646ecd..502faf9f6 100644 --- a/apps/client/src/locales/messages.pl.xlf +++ b/apps/client/src/locales/messages.pl.xlf @@ -267,11 +267,11 @@ libs/ui/src/lib/activities-table/activities-table.component.html - 5 + 7 libs/ui/src/lib/activities-table/activities-table.component.html - 183 + 197 @@ -311,7 +311,7 @@ Saldo Gotówkowe apps/client/src/app/components/account-detail-dialog/account-detail-dialog.html - 54 + 55 apps/client/src/app/pages/accounts/create-or-update-account-dialog/create-or-update-account-dialog.html @@ -327,7 +327,7 @@ Platforma apps/client/src/app/components/account-detail-dialog/account-detail-dialog.html - 112 + 113 apps/client/src/app/pages/accounts/create-or-update-account-dialog/create-or-update-account-dialog.html @@ -359,7 +359,7 @@ apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 332 + 333 apps/client/src/app/components/admin-platform/admin-platform.component.html @@ -395,7 +395,7 @@ libs/ui/src/lib/activities-table/activities-table.component.html - 161 + 175 libs/ui/src/lib/benchmark/benchmark.component.html @@ -435,11 +435,11 @@ Waluta apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 216 + 217 apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 339 + 340 apps/client/src/app/components/admin-market-data/create-asset-profile-dialog/create-asset-profile-dialog.html @@ -459,7 +459,7 @@ libs/ui/src/lib/activities-table/activities-table.component.html - 303 + 317 @@ -495,11 +495,11 @@ libs/ui/src/lib/activities-table/activities-table.component.html - 284 + 298 libs/ui/src/lib/activities-table/activities-table.component.html - 320 + 334 libs/ui/src/lib/holdings-table/holdings-table.component.html @@ -539,7 +539,7 @@ libs/ui/src/lib/activities-table/activities-table.component.html - 483 + 497 @@ -579,7 +579,7 @@ libs/ui/src/lib/activities-table/activities-table.component.html - 513 + 527 libs/ui/src/lib/benchmark/benchmark.component.html @@ -619,7 +619,7 @@ apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 486 + 487 @@ -635,7 +635,7 @@ apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 197 + 198 apps/client/src/app/pages/portfolio/activities/create-or-update-activity-dialog/create-or-update-activity-dialog.html @@ -743,7 +743,7 @@ Find an account... libs/ui/src/lib/assistant/assistant.component.ts - 447 + 448 @@ -759,7 +759,7 @@ libs/ui/src/lib/activities-table/activities-table.component.html - 192 + 206 libs/ui/src/lib/historical-market-data-editor/historical-market-data-editor-dialog/historical-market-data-editor-dialog.html @@ -783,7 +783,7 @@ apps/client/src/app/components/holding-detail-dialog/holding-detail-dialog.html - 113 + 114 libs/ui/src/lib/historical-market-data-editor/historical-market-data-editor-dialog/historical-market-data-editor-dialog.html @@ -863,11 +863,11 @@ apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 235 + 236 apps/client/src/app/components/holding-detail-dialog/holding-detail-dialog.html - 221 + 222 libs/ui/src/lib/holdings-table/holdings-table.component.html @@ -879,7 +879,7 @@ Data Gathering Frequency apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 467 + 468 @@ -999,11 +999,11 @@ Sektor apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 280 + 281 apps/client/src/app/components/holding-detail-dialog/holding-detail-dialog.html - 270 + 271 @@ -1011,7 +1011,7 @@ Kraj apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 295 + 296 apps/client/src/app/components/admin-users/admin-users.html @@ -1019,7 +1019,7 @@ apps/client/src/app/components/holding-detail-dialog/holding-detail-dialog.html - 284 + 285 apps/client/src/app/components/user-detail-dialog/user-detail-dialog.html @@ -1031,15 +1031,15 @@ Sektory apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 301 + 302 apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 420 + 421 apps/client/src/app/components/holding-detail-dialog/holding-detail-dialog.html - 290 + 291 apps/client/src/app/pages/public/public-page.html @@ -1051,15 +1051,15 @@ Kraje apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 311 + 312 apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 431 + 432 apps/client/src/app/components/holding-detail-dialog/holding-detail-dialog.html - 302 + 303 @@ -1067,7 +1067,7 @@ Mapowanie Symboli apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 409 + 410 @@ -1107,7 +1107,7 @@ Konfiguracja Scrapera apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 509 + 510 @@ -1115,7 +1115,7 @@ Notatka apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 455 + 456 apps/client/src/app/pages/accounts/create-or-update-account-dialog/create-or-update-account-dialog.html @@ -1131,7 +1131,7 @@ libs/ui/src/lib/activities-table/activities-table.component.html - 370 + 384 @@ -1171,7 +1171,7 @@ Nazwa, symbol lub ISIN apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 133 + 134 apps/client/src/app/components/admin-market-data/create-asset-profile-dialog/create-asset-profile-dialog.html @@ -1331,11 +1331,11 @@ Url apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 442 + 443 apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 588 + 589 apps/client/src/app/components/admin-platform/admin-platform.component.html @@ -1575,7 +1575,7 @@ Poziom Odniesienia (Benchmark) apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 401 + 402 apps/client/src/app/components/benchmark-comparator/benchmark-comparator.component.ts @@ -1587,7 +1587,7 @@ Obecny Nastrój Rynkowy libs/ui/src/lib/fear-and-greed-index/fear-and-greed-index.component.html - 22 + 23 @@ -1835,7 +1835,7 @@ lub apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 167 + 168 apps/client/src/app/components/admin-settings/admin-settings.component.html @@ -1915,7 +1915,7 @@ Opłaty apps/client/src/app/components/holding-detail-dialog/holding-detail-dialog.html - 210 + 211 apps/client/src/app/components/portfolio-summary/portfolio-summary.component.html @@ -2011,7 +2011,7 @@ Cena Minimalna apps/client/src/app/components/holding-detail-dialog/holding-detail-dialog.html - 131 + 132 @@ -2019,7 +2019,7 @@ Cena Maksymalna apps/client/src/app/components/holding-detail-dialog/holding-detail-dialog.html - 149 + 150 @@ -2027,7 +2027,7 @@ Ilość apps/client/src/app/components/holding-detail-dialog/holding-detail-dialog.html - 159 + 160 apps/client/src/app/pages/portfolio/activities/create-or-update-activity-dialog/create-or-update-activity-dialog.html @@ -2035,7 +2035,7 @@ libs/ui/src/lib/activities-table/activities-table.component.html - 213 + 227 libs/ui/src/lib/holdings-table/holdings-table.component.html @@ -2047,7 +2047,7 @@ Zgłoś Błąd Danych apps/client/src/app/components/holding-detail-dialog/holding-detail-dialog.html - 463 + 464 @@ -2227,7 +2227,7 @@ libs/ui/src/lib/assistant/assistant.component.ts - 365 + 366 @@ -2239,7 +2239,7 @@ libs/ui/src/lib/assistant/assistant.component.ts - 377 + 378 @@ -2251,7 +2251,7 @@ libs/ui/src/lib/assistant/assistant.component.ts - 387 + 388 @@ -2271,7 +2271,7 @@ libs/ui/src/lib/assistant/assistant.component.ts - 409 + 410 @@ -2291,7 +2291,7 @@ libs/ui/src/lib/assistant/assistant.component.ts - 415 + 416 @@ -2471,7 +2471,7 @@ Ustawienia Regionalne apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 547 + 548 apps/client/src/app/components/user-account-settings/user-account-settings.html @@ -2791,7 +2791,7 @@ apps/client/src/app/components/holding-detail-dialog/holding-detail-dialog.html - 395 + 396 apps/client/src/app/components/user-detail-dialog/user-detail-dialog.html @@ -2895,7 +2895,7 @@ Dane Rynkowe apps/client/src/app/components/holding-detail-dialog/holding-detail-dialog.html - 417 + 418 libs/common/src/lib/routes/routes.ts @@ -2935,11 +2935,11 @@ Przegląd apps/client/src/app/components/account-detail-dialog/account-detail-dialog.html - 41 + 42 apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 114 + 115 apps/client/src/app/components/header/header.component.html @@ -2951,7 +2951,7 @@ apps/client/src/app/components/holding-detail-dialog/holding-detail-dialog.html - 47 + 48 apps/client/src/app/pages/admin/admin-page.component.ts @@ -3335,7 +3335,7 @@ Inwestycje apps/client/src/app/components/account-detail-dialog/account-detail-dialog.html - 126 + 127 apps/client/src/app/components/home-holdings/home-holdings.html @@ -3387,7 +3387,7 @@ Rynki apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 403 + 404 apps/client/src/app/components/footer/footer.component.html @@ -3582,6 +3582,14 @@ 84 + + Do you really want to delete these activities? + Do you really want to delete these activities? + + libs/ui/src/lib/activities-table/activities-table.component.ts + 334 + + Why Ghostfolio? Dlaczego Ghostfolio? @@ -3823,7 +3831,7 @@ Convert to apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 174 + 175 @@ -3899,15 +3907,15 @@ Aktywności apps/client/src/app/components/account-detail-dialog/account-detail-dialog.html - 102 + 103 apps/client/src/app/components/account-detail-dialog/account-detail-dialog.html - 137 + 138 apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 244 + 245 apps/client/src/app/components/admin-overview/admin-overview.html @@ -3923,11 +3931,11 @@ apps/client/src/app/components/holding-detail-dialog/holding-detail-dialog.html - 233 + 234 apps/client/src/app/components/holding-detail-dialog/holding-detail-dialog.html - 361 + 362 apps/client/src/app/components/user-detail-dialog/user-detail-dialog.html @@ -3946,14 +3954,6 @@ 126 - - Do you really want to delete these activities? - Czy na pewno chcesz usunąć te aktywności? - - libs/ui/src/lib/activities-table/activities-table.component.ts - 317 - - Update activity Aktualizuj aktywność @@ -4031,7 +4031,7 @@ libs/ui/src/lib/activities-table/activities-table.component.html - 237 + 251 @@ -4043,11 +4043,11 @@ libs/ui/src/lib/activities-table/activities-table.component.html - 28 + 30 libs/ui/src/lib/activities-table/activities-table.component.html - 406 + 420 @@ -4059,11 +4059,11 @@ libs/ui/src/lib/activities-table/activities-table.component.html - 52 + 54 libs/ui/src/lib/activities-table/activities-table.component.html - 420 + 434 @@ -4399,11 +4399,11 @@ Dywidenda apps/client/src/app/components/account-detail-dialog/account-detail-dialog.html - 90 + 91 apps/client/src/app/components/holding-detail-dialog/holding-detail-dialog.html - 188 + 189 apps/client/src/app/components/portfolio-summary/portfolio-summary.component.html @@ -5228,11 +5228,11 @@ Eksportuj Działalności libs/ui/src/lib/activities-table/activities-table.component.html - 64 + 72 libs/ui/src/lib/activities-table/activities-table.component.html - 434 + 448 @@ -5240,11 +5240,11 @@ Eksportuj Wersje Robocze jako ICS libs/ui/src/lib/activities-table/activities-table.component.html - 77 + 86 libs/ui/src/lib/activities-table/activities-table.component.html - 447 + 461 @@ -5252,7 +5252,7 @@ Przygotuj Wstępną Wersję libs/ui/src/lib/activities-table/activities-table.component.html - 167 + 181 @@ -5260,7 +5260,7 @@ Sklonuj libs/ui/src/lib/activities-table/activities-table.component.html - 492 + 506 @@ -5268,7 +5268,7 @@ Eksportuj Wersję Roboczą jako ICS libs/ui/src/lib/activities-table/activities-table.component.html - 502 + 516 @@ -5276,7 +5276,11 @@ Czy na pewno chcesz usunąć tę działalność? libs/ui/src/lib/activities-table/activities-table.component.ts - 327 + 333 + + + libs/ui/src/lib/activities-table/activities-table.component.ts + 344 @@ -5384,7 +5388,7 @@ Odsetki apps/client/src/app/components/account-detail-dialog/account-detail-dialog.html - 78 + 79 apps/client/src/app/components/portfolio-summary/portfolio-summary.component.html @@ -5452,7 +5456,7 @@ libs/ui/src/lib/activities-table/activities-table.component.html - 335 + 349 libs/ui/src/lib/i18n.ts @@ -5480,15 +5484,15 @@ apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 253 + 254 apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 349 + 350 apps/client/src/app/components/holding-detail-dialog/holding-detail-dialog.html - 244 + 245 apps/client/src/app/pages/portfolio/activities/create-or-update-activity-dialog/create-or-update-activity-dialog.html @@ -5512,15 +5516,15 @@ apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 262 + 263 apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 365 + 366 apps/client/src/app/components/holding-detail-dialog/holding-detail-dialog.html - 253 + 254 apps/client/src/app/pages/portfolio/activities/create-or-update-activity-dialog/create-or-update-activity-dialog.html @@ -5704,7 +5708,7 @@ apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 186 + 187 apps/client/src/app/components/admin-market-data/create-asset-profile-dialog/create-asset-profile-dialog.html @@ -5712,13 +5716,21 @@ apps/client/src/app/components/holding-detail-dialog/holding-detail-dialog.html - 322 + 323 libs/ui/src/lib/i18n.ts 35 + + Export + Export + + libs/ui/src/lib/activities-table/activities-table.component.html + 68 + + Tag Tag @@ -5788,7 +5800,7 @@ libs/ui/src/lib/activities-table/activities-table.component.html - 261 + 275 libs/ui/src/lib/i18n.ts @@ -5848,7 +5860,7 @@ Kapitał apps/client/src/app/components/account-detail-dialog/account-detail-dialog.html - 66 + 67 libs/ui/src/lib/i18n.ts @@ -6000,7 +6012,7 @@ Invested Capital apps/client/src/app/components/holding-detail-dialog/holding-detail-dialog.html - 173 + 174 apps/client/src/app/components/portfolio-summary/portfolio-summary.component.html @@ -6120,7 +6132,7 @@ Salda Gotówkowe apps/client/src/app/components/account-detail-dialog/account-detail-dialog.html - 169 + 170 @@ -6164,7 +6176,7 @@ Test apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 606 + 607 @@ -6260,7 +6272,7 @@ Zamknij pozycję apps/client/src/app/components/holding-detail-dialog/holding-detail-dialog.html - 450 + 451 @@ -6300,7 +6312,7 @@ Dotychczasowy tydzień libs/ui/src/lib/assistant/assistant.component.ts - 369 + 370 @@ -6312,7 +6324,7 @@ libs/ui/src/lib/assistant/assistant.component.ts - 369 + 370 @@ -6320,7 +6332,7 @@ Od początku miesiąca libs/ui/src/lib/assistant/assistant.component.ts - 373 + 374 @@ -6332,7 +6344,7 @@ libs/ui/src/lib/assistant/assistant.component.ts - 373 + 374 @@ -6348,7 +6360,7 @@ Od początku roku libs/ui/src/lib/assistant/assistant.component.ts - 377 + 378 @@ -6404,7 +6416,7 @@ libs/ui/src/lib/assistant/assistant.component.ts - 387 + 388 @@ -6416,7 +6428,7 @@ libs/ui/src/lib/assistant/assistant.component.ts - 409 + 410 @@ -6432,7 +6444,7 @@ Gromadzenie Danych apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 629 + 630 apps/client/src/app/components/admin-overview/admin-overview.html @@ -6444,7 +6456,7 @@ Find a holding... libs/ui/src/lib/assistant/assistant.component.ts - 448 + 449 @@ -6537,11 +6549,11 @@ Aktywność apps/client/src/app/components/account-detail-dialog/account-detail-dialog.html - 100 + 101 apps/client/src/app/components/holding-detail-dialog/holding-detail-dialog.html - 231 + 232 @@ -6549,7 +6561,7 @@ Dochód z Dywidendy apps/client/src/app/components/holding-detail-dialog/holding-detail-dialog.html - 198 + 199 @@ -6605,7 +6617,7 @@ Usuń aktywności libs/ui/src/lib/activities-table/activities-table.component.html - 92 + 105 @@ -6629,7 +6641,7 @@ Jump to a page... libs/ui/src/lib/assistant/assistant.component.ts - 449 + 450 @@ -6685,7 +6697,7 @@ Uwzględnij w apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 399 + 400 @@ -6921,7 +6933,7 @@ Podgląd inwestycji libs/ui/src/lib/activities-table/activities-table.component.html - 473 + 487 @@ -6977,11 +6989,11 @@ Anuluj apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 162 + 163 apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 634 + 635 apps/client/src/app/components/admin-market-data/create-asset-profile-dialog/create-asset-profile-dialog.html @@ -7033,7 +7045,7 @@ Zamknij apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 636 + 637 apps/client/src/app/components/admin-market-data/create-asset-profile-dialog/create-asset-profile-dialog.html @@ -7125,7 +7137,7 @@ Zmiana z efektem walutowym Zmiana apps/client/src/app/components/holding-detail-dialog/holding-detail-dialog.html - 63 + 64 @@ -7141,7 +7153,7 @@ Wydajność z efektem walutowym Wydajność apps/client/src/app/components/holding-detail-dialog/holding-detail-dialog.html - 83 + 84 @@ -7287,6 +7299,10 @@ apps/client/src/app/components/admin-market-data/admin-market-data.html 270 + + libs/ui/src/lib/activities-table/activities-table.component.html + 101 + cannot be self-hosted @@ -7607,7 +7623,7 @@ Zapisz apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 645 + 646 apps/client/src/app/components/admin-market-data/create-asset-profile-dialog/create-asset-profile-dialog.html @@ -7739,7 +7755,7 @@ Domyślna cena rynkowa apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 519 + 520 @@ -7747,7 +7763,7 @@ Tryb apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 556 + 557 @@ -7763,7 +7779,7 @@ Selektor apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 572 + 573 @@ -7771,7 +7787,7 @@ Nagłówki żądań HTTP apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 532 + 533 @@ -8016,7 +8032,7 @@ Zatwierdź apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 154 + 155 @@ -8107,6 +8123,18 @@ 142 + + {VAR_PLURAL, plural, =1 {Activity} other {Activities}} + {VAR_PLURAL, plural, =1 {Activity} other {Activities}} + + libs/ui/src/lib/activities-table/activities-table.component.html + 69 + + + libs/ui/src/lib/activities-table/activities-table.component.html + 102 + + Log out Wyloguj się @@ -8576,7 +8604,7 @@ Zarządzaj profilem aktywów apps/client/src/app/components/holding-detail-dialog/holding-detail-dialog.html - 478 + 479 @@ -8604,7 +8632,7 @@ apps/client/src/app/components/holding-detail-dialog/holding-detail-dialog.html - 101 + 102 diff --git a/apps/client/src/locales/messages.pt.xlf b/apps/client/src/locales/messages.pt.xlf index 8aa2ecf93..a89f05adb 100644 --- a/apps/client/src/locales/messages.pt.xlf +++ b/apps/client/src/locales/messages.pt.xlf @@ -58,11 +58,11 @@ libs/ui/src/lib/activities-table/activities-table.component.html - 5 + 7 libs/ui/src/lib/activities-table/activities-table.component.html - 183 + 197 @@ -102,7 +102,7 @@ Plataforma apps/client/src/app/components/account-detail-dialog/account-detail-dialog.html - 112 + 113 apps/client/src/app/pages/accounts/create-or-update-account-dialog/create-or-update-account-dialog.html @@ -122,7 +122,7 @@ apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 332 + 333 apps/client/src/app/components/admin-platform/admin-platform.component.html @@ -158,7 +158,7 @@ libs/ui/src/lib/activities-table/activities-table.component.html - 161 + 175 libs/ui/src/lib/benchmark/benchmark.component.html @@ -198,11 +198,11 @@ Moeda apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 216 + 217 apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 339 + 340 apps/client/src/app/components/admin-market-data/create-asset-profile-dialog/create-asset-profile-dialog.html @@ -222,7 +222,7 @@ libs/ui/src/lib/activities-table/activities-table.component.html - 303 + 317 @@ -230,7 +230,7 @@ Saldo disponível em dinheiro apps/client/src/app/components/account-detail-dialog/account-detail-dialog.html - 54 + 55 apps/client/src/app/pages/accounts/create-or-update-account-dialog/create-or-update-account-dialog.html @@ -274,11 +274,11 @@ libs/ui/src/lib/activities-table/activities-table.component.html - 284 + 298 libs/ui/src/lib/activities-table/activities-table.component.html - 320 + 334 libs/ui/src/lib/holdings-table/holdings-table.component.html @@ -318,7 +318,7 @@ libs/ui/src/lib/activities-table/activities-table.component.html - 483 + 497 @@ -358,7 +358,7 @@ libs/ui/src/lib/activities-table/activities-table.component.html - 513 + 527 libs/ui/src/lib/benchmark/benchmark.component.html @@ -394,7 +394,7 @@ apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 197 + 198 apps/client/src/app/pages/portfolio/activities/create-or-update-activity-dialog/create-or-update-activity-dialog.html @@ -486,7 +486,7 @@ apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 486 + 487 @@ -526,7 +526,7 @@ Find an account... libs/ui/src/lib/assistant/assistant.component.ts - 447 + 448 @@ -542,7 +542,7 @@ libs/ui/src/lib/activities-table/activities-table.component.html - 192 + 206 libs/ui/src/lib/historical-market-data-editor/historical-market-data-editor-dialog/historical-market-data-editor-dialog.html @@ -566,7 +566,7 @@ apps/client/src/app/components/holding-detail-dialog/holding-detail-dialog.html - 113 + 114 libs/ui/src/lib/historical-market-data-editor/historical-market-data-editor-dialog/historical-market-data-editor-dialog.html @@ -590,11 +590,11 @@ apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 235 + 236 apps/client/src/app/components/holding-detail-dialog/holding-detail-dialog.html - 221 + 222 libs/ui/src/lib/holdings-table/holdings-table.component.html @@ -858,7 +858,7 @@ Referência apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 401 + 402 apps/client/src/app/components/benchmark-comparator/benchmark-comparator.component.ts @@ -870,7 +870,7 @@ Tom do Mercado Atual libs/ui/src/lib/fear-and-greed-index/fear-and-greed-index.component.html - 22 + 23 @@ -1026,7 +1026,7 @@ ou apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 167 + 168 apps/client/src/app/components/admin-settings/admin-settings.component.html @@ -1178,7 +1178,7 @@ Preço Mínimo apps/client/src/app/components/holding-detail-dialog/holding-detail-dialog.html - 131 + 132 @@ -1186,7 +1186,7 @@ Preço Máximo apps/client/src/app/components/holding-detail-dialog/holding-detail-dialog.html - 149 + 150 @@ -1194,7 +1194,7 @@ Quantidade apps/client/src/app/components/holding-detail-dialog/holding-detail-dialog.html - 159 + 160 apps/client/src/app/pages/portfolio/activities/create-or-update-activity-dialog/create-or-update-activity-dialog.html @@ -1202,7 +1202,7 @@ libs/ui/src/lib/activities-table/activities-table.component.html - 213 + 227 libs/ui/src/lib/holdings-table/holdings-table.component.html @@ -1222,11 +1222,11 @@ Setor apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 280 + 281 apps/client/src/app/components/holding-detail-dialog/holding-detail-dialog.html - 270 + 271 @@ -1234,7 +1234,7 @@ País apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 295 + 296 apps/client/src/app/components/admin-users/admin-users.html @@ -1242,7 +1242,7 @@ apps/client/src/app/components/holding-detail-dialog/holding-detail-dialog.html - 284 + 285 apps/client/src/app/components/user-detail-dialog/user-detail-dialog.html @@ -1254,15 +1254,15 @@ Setores apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 301 + 302 apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 420 + 421 apps/client/src/app/components/holding-detail-dialog/holding-detail-dialog.html - 290 + 291 apps/client/src/app/pages/public/public-page.html @@ -1274,15 +1274,15 @@ Países apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 311 + 312 apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 431 + 432 apps/client/src/app/components/holding-detail-dialog/holding-detail-dialog.html - 302 + 303 @@ -1306,7 +1306,7 @@ Dados do Relatório com Problema apps/client/src/app/components/holding-detail-dialog/holding-detail-dialog.html - 463 + 464 @@ -1354,7 +1354,7 @@ libs/ui/src/lib/assistant/assistant.component.ts - 365 + 366 @@ -1366,7 +1366,7 @@ libs/ui/src/lib/assistant/assistant.component.ts - 377 + 378 @@ -1378,7 +1378,7 @@ libs/ui/src/lib/assistant/assistant.component.ts - 387 + 388 @@ -1398,7 +1398,7 @@ libs/ui/src/lib/assistant/assistant.component.ts - 409 + 410 @@ -1418,7 +1418,7 @@ libs/ui/src/lib/assistant/assistant.component.ts - 415 + 416 @@ -1666,7 +1666,7 @@ Localidade apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 547 + 548 apps/client/src/app/components/user-account-settings/user-account-settings.html @@ -1830,7 +1830,7 @@ apps/client/src/app/components/holding-detail-dialog/holding-detail-dialog.html - 395 + 396 apps/client/src/app/components/user-detail-dialog/user-detail-dialog.html @@ -2086,11 +2086,11 @@ Visão geral apps/client/src/app/components/account-detail-dialog/account-detail-dialog.html - 41 + 42 apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 114 + 115 apps/client/src/app/components/header/header.component.html @@ -2102,7 +2102,7 @@ apps/client/src/app/components/holding-detail-dialog/holding-detail-dialog.html - 47 + 48 apps/client/src/app/pages/admin/admin-page.component.ts @@ -2126,7 +2126,7 @@ Mercados apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 403 + 404 apps/client/src/app/components/footer/footer.component.html @@ -2166,15 +2166,15 @@ Atividades apps/client/src/app/components/account-detail-dialog/account-detail-dialog.html - 102 + 103 apps/client/src/app/components/account-detail-dialog/account-detail-dialog.html - 137 + 138 apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 244 + 245 apps/client/src/app/components/admin-overview/admin-overview.html @@ -2190,11 +2190,11 @@ apps/client/src/app/components/holding-detail-dialog/holding-detail-dialog.html - 233 + 234 apps/client/src/app/components/holding-detail-dialog/holding-detail-dialog.html - 361 + 362 apps/client/src/app/components/user-detail-dialog/user-detail-dialog.html @@ -2258,7 +2258,7 @@ Nome, símbolo or ISIN apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 133 + 134 apps/client/src/app/components/admin-market-data/create-asset-profile-dialog/create-asset-profile-dialog.html @@ -2290,7 +2290,7 @@ libs/ui/src/lib/activities-table/activities-table.component.html - 237 + 251 @@ -2298,7 +2298,7 @@ Nota apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 455 + 456 apps/client/src/app/pages/accounts/create-or-update-account-dialog/create-or-update-account-dialog.html @@ -2314,7 +2314,7 @@ libs/ui/src/lib/activities-table/activities-table.component.html - 370 + 384 @@ -2606,7 +2606,7 @@ Posições apps/client/src/app/components/account-detail-dialog/account-detail-dialog.html - 126 + 127 apps/client/src/app/components/home-holdings/home-holdings.html @@ -2846,7 +2846,7 @@ Rascunho libs/ui/src/lib/activities-table/activities-table.component.html - 167 + 181 @@ -2858,11 +2858,11 @@ libs/ui/src/lib/activities-table/activities-table.component.html - 28 + 30 libs/ui/src/lib/activities-table/activities-table.component.html - 406 + 420 @@ -2870,11 +2870,11 @@ Exportar Atividades libs/ui/src/lib/activities-table/activities-table.component.html - 64 + 72 libs/ui/src/lib/activities-table/activities-table.component.html - 434 + 448 @@ -2882,11 +2882,11 @@ Exportar Rascunhos como ICS libs/ui/src/lib/activities-table/activities-table.component.html - 77 + 86 libs/ui/src/lib/activities-table/activities-table.component.html - 447 + 461 @@ -2894,7 +2894,7 @@ Clonar libs/ui/src/lib/activities-table/activities-table.component.html - 492 + 506 @@ -2902,7 +2902,7 @@ Exportar Rascunho como ICS libs/ui/src/lib/activities-table/activities-table.component.html - 502 + 516 @@ -2910,7 +2910,11 @@ Deseja realmente eliminar esta atividade? libs/ui/src/lib/activities-table/activities-table.component.ts - 327 + 333 + + + libs/ui/src/lib/activities-table/activities-table.component.ts + 344 @@ -2966,7 +2970,7 @@ Juros apps/client/src/app/components/account-detail-dialog/account-detail-dialog.html - 78 + 79 apps/client/src/app/components/portfolio-summary/portfolio-summary.component.html @@ -2998,7 +3002,7 @@ libs/ui/src/lib/activities-table/activities-table.component.html - 335 + 349 libs/ui/src/lib/i18n.ts @@ -3018,15 +3022,15 @@ apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 253 + 254 apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 349 + 350 apps/client/src/app/components/holding-detail-dialog/holding-detail-dialog.html - 244 + 245 apps/client/src/app/pages/portfolio/activities/create-or-update-activity-dialog/create-or-update-activity-dialog.html @@ -3094,7 +3098,7 @@ apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 186 + 187 apps/client/src/app/components/admin-market-data/create-asset-profile-dialog/create-asset-profile-dialog.html @@ -3102,13 +3106,21 @@ apps/client/src/app/components/holding-detail-dialog/holding-detail-dialog.html - 322 + 323 libs/ui/src/lib/i18n.ts 35 + + Export + Export + + libs/ui/src/lib/activities-table/activities-table.component.html + 68 + + Tag Marcador @@ -3146,7 +3158,7 @@ Ações apps/client/src/app/components/account-detail-dialog/account-detail-dialog.html - 66 + 67 libs/ui/src/lib/i18n.ts @@ -3298,7 +3310,7 @@ Invested Capital apps/client/src/app/components/holding-detail-dialog/holding-detail-dialog.html - 173 + 174 apps/client/src/app/components/portfolio-summary/portfolio-summary.component.html @@ -3358,7 +3370,7 @@ Data Gathering Frequency apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 467 + 468 @@ -3382,7 +3394,7 @@ Mapeamento de Símbolo apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 409 + 410 @@ -3398,7 +3410,7 @@ Dados de Mercado apps/client/src/app/components/holding-detail-dialog/holding-detail-dialog.html - 417 + 418 libs/common/src/lib/routes/routes.ts @@ -3462,11 +3474,11 @@ Dividendos apps/client/src/app/components/account-detail-dialog/account-detail-dialog.html - 90 + 91 apps/client/src/app/components/holding-detail-dialog/holding-detail-dialog.html - 188 + 189 apps/client/src/app/components/portfolio-summary/portfolio-summary.component.html @@ -3506,15 +3518,15 @@ apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 262 + 263 apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 365 + 366 apps/client/src/app/components/holding-detail-dialog/holding-detail-dialog.html - 253 + 254 apps/client/src/app/pages/portfolio/activities/create-or-update-activity-dialog/create-or-update-activity-dialog.html @@ -3562,11 +3574,11 @@ libs/ui/src/lib/activities-table/activities-table.component.html - 52 + 54 libs/ui/src/lib/activities-table/activities-table.component.html - 420 + 434 @@ -3938,7 +3950,7 @@ Taxas apps/client/src/app/components/holding-detail-dialog/holding-detail-dialog.html - 210 + 211 apps/client/src/app/components/portfolio-summary/portfolio-summary.component.html @@ -4101,14 +4113,6 @@ 254 - - Do you really want to delete these activities? - Deseja mesmo eliminar estas atividades? - - libs/ui/src/lib/activities-table/activities-table.component.ts - 317 - - By ETF Provider Por Prestador de ETF @@ -4154,11 +4158,11 @@ Url apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 442 + 443 apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 588 + 589 apps/client/src/app/components/admin-platform/admin-platform.component.html @@ -4566,7 +4570,7 @@ Configuração do raspador apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 509 + 510 @@ -5257,6 +5261,14 @@ 84 + + Do you really want to delete these activities? + Do you really want to delete these activities? + + libs/ui/src/lib/activities-table/activities-table.component.ts + 334 + + Why Ghostfolio? Por que Ghostfolio? @@ -5756,7 +5768,7 @@ Convert to apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 174 + 175 @@ -5828,7 +5840,7 @@ libs/ui/src/lib/activities-table/activities-table.component.html - 261 + 275 libs/ui/src/lib/i18n.ts @@ -6120,7 +6132,7 @@ Saldos de caixa apps/client/src/app/components/account-detail-dialog/account-detail-dialog.html - 169 + 170 @@ -6164,7 +6176,7 @@ Teste apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 606 + 607 @@ -6260,7 +6272,7 @@ Close Holding apps/client/src/app/components/holding-detail-dialog/holding-detail-dialog.html - 450 + 451 @@ -6300,7 +6312,7 @@ Semana até agora libs/ui/src/lib/assistant/assistant.component.ts - 369 + 370 @@ -6312,7 +6324,7 @@ libs/ui/src/lib/assistant/assistant.component.ts - 369 + 370 @@ -6320,7 +6332,7 @@ Do mês até a data libs/ui/src/lib/assistant/assistant.component.ts - 373 + 374 @@ -6332,7 +6344,7 @@ libs/ui/src/lib/assistant/assistant.component.ts - 373 + 374 @@ -6348,7 +6360,7 @@ No acumulado do ano libs/ui/src/lib/assistant/assistant.component.ts - 377 + 378 @@ -6404,7 +6416,7 @@ libs/ui/src/lib/assistant/assistant.component.ts - 387 + 388 @@ -6416,7 +6428,7 @@ libs/ui/src/lib/assistant/assistant.component.ts - 409 + 410 @@ -6432,7 +6444,7 @@ Coleta de dados apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 629 + 630 apps/client/src/app/components/admin-overview/admin-overview.html @@ -6444,7 +6456,7 @@ Find a holding... libs/ui/src/lib/assistant/assistant.component.ts - 448 + 449 @@ -6537,11 +6549,11 @@ Atividade apps/client/src/app/components/account-detail-dialog/account-detail-dialog.html - 100 + 101 apps/client/src/app/components/holding-detail-dialog/holding-detail-dialog.html - 231 + 232 @@ -6549,7 +6561,7 @@ Rendimento de dividendos apps/client/src/app/components/holding-detail-dialog/holding-detail-dialog.html - 198 + 199 @@ -6605,7 +6617,7 @@ Excluir atividades libs/ui/src/lib/activities-table/activities-table.component.html - 92 + 105 @@ -6629,7 +6641,7 @@ Jump to a page... libs/ui/src/lib/assistant/assistant.component.ts - 449 + 450 @@ -6685,7 +6697,7 @@ Include in apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 399 + 400 @@ -6921,7 +6933,7 @@ View Holding libs/ui/src/lib/activities-table/activities-table.component.html - 473 + 487 @@ -6977,11 +6989,11 @@ Cancelar apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 162 + 163 apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 634 + 635 apps/client/src/app/components/admin-market-data/create-asset-profile-dialog/create-asset-profile-dialog.html @@ -7033,7 +7045,7 @@ Fechar apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 636 + 637 apps/client/src/app/components/admin-market-data/create-asset-profile-dialog/create-asset-profile-dialog.html @@ -7125,7 +7137,7 @@ Change with currency effect Change apps/client/src/app/components/holding-detail-dialog/holding-detail-dialog.html - 63 + 64 @@ -7141,7 +7153,7 @@ Performance with currency effect Performance apps/client/src/app/components/holding-detail-dialog/holding-detail-dialog.html - 83 + 84 @@ -7287,6 +7299,10 @@ apps/client/src/app/components/admin-market-data/admin-market-data.html 270 + + libs/ui/src/lib/activities-table/activities-table.component.html + 101 + cannot be self-hosted @@ -7607,7 +7623,7 @@ Guardar apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 645 + 646 apps/client/src/app/components/admin-market-data/create-asset-profile-dialog/create-asset-profile-dialog.html @@ -7739,7 +7755,7 @@ Preço de mercado padrão apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 519 + 520 @@ -7747,7 +7763,7 @@ Mode apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 556 + 557 @@ -7763,7 +7779,7 @@ Selector apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 572 + 573 @@ -7771,7 +7787,7 @@ HTTP Request Headers apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 532 + 533 @@ -8016,7 +8032,7 @@ Apply apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 154 + 155 @@ -8107,6 +8123,18 @@ 142 + + {VAR_PLURAL, plural, =1 {Activity} other {Activities}} + {VAR_PLURAL, plural, =1 {Activity} other {Activities}} + + libs/ui/src/lib/activities-table/activities-table.component.html + 69 + + + libs/ui/src/lib/activities-table/activities-table.component.html + 102 + + Log out Log out @@ -8576,7 +8604,7 @@ Gerenciar perfil de ativos apps/client/src/app/components/holding-detail-dialog/holding-detail-dialog.html - 478 + 479 @@ -8604,7 +8632,7 @@ apps/client/src/app/components/holding-detail-dialog/holding-detail-dialog.html - 101 + 102 diff --git a/apps/client/src/locales/messages.tr.xlf b/apps/client/src/locales/messages.tr.xlf index 8630fea58..dce74dcfa 100644 --- a/apps/client/src/locales/messages.tr.xlf +++ b/apps/client/src/locales/messages.tr.xlf @@ -239,11 +239,11 @@ libs/ui/src/lib/activities-table/activities-table.component.html - 5 + 7 libs/ui/src/lib/activities-table/activities-table.component.html - 183 + 197 @@ -283,7 +283,7 @@ Nakit Bakiye apps/client/src/app/components/account-detail-dialog/account-detail-dialog.html - 54 + 55 apps/client/src/app/pages/accounts/create-or-update-account-dialog/create-or-update-account-dialog.html @@ -299,7 +299,7 @@ Platform apps/client/src/app/components/account-detail-dialog/account-detail-dialog.html - 112 + 113 apps/client/src/app/pages/accounts/create-or-update-account-dialog/create-or-update-account-dialog.html @@ -319,7 +319,7 @@ apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 332 + 333 apps/client/src/app/components/admin-platform/admin-platform.component.html @@ -355,7 +355,7 @@ libs/ui/src/lib/activities-table/activities-table.component.html - 161 + 175 libs/ui/src/lib/benchmark/benchmark.component.html @@ -395,11 +395,11 @@ Para Birimi apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 216 + 217 apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 339 + 340 apps/client/src/app/components/admin-market-data/create-asset-profile-dialog/create-asset-profile-dialog.html @@ -419,7 +419,7 @@ libs/ui/src/lib/activities-table/activities-table.component.html - 303 + 317 @@ -455,11 +455,11 @@ libs/ui/src/lib/activities-table/activities-table.component.html - 284 + 298 libs/ui/src/lib/activities-table/activities-table.component.html - 320 + 334 libs/ui/src/lib/holdings-table/holdings-table.component.html @@ -499,7 +499,7 @@ libs/ui/src/lib/activities-table/activities-table.component.html - 483 + 497 @@ -539,7 +539,7 @@ libs/ui/src/lib/activities-table/activities-table.component.html - 513 + 527 libs/ui/src/lib/benchmark/benchmark.component.html @@ -575,7 +575,7 @@ apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 197 + 198 apps/client/src/app/pages/portfolio/activities/create-or-update-activity-dialog/create-or-update-activity-dialog.html @@ -667,7 +667,7 @@ apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 486 + 487 @@ -707,7 +707,7 @@ Find an account... libs/ui/src/lib/assistant/assistant.component.ts - 447 + 448 @@ -723,7 +723,7 @@ libs/ui/src/lib/activities-table/activities-table.component.html - 192 + 206 libs/ui/src/lib/historical-market-data-editor/historical-market-data-editor-dialog/historical-market-data-editor-dialog.html @@ -747,7 +747,7 @@ apps/client/src/app/components/holding-detail-dialog/holding-detail-dialog.html - 113 + 114 libs/ui/src/lib/historical-market-data-editor/historical-market-data-editor-dialog/historical-market-data-editor-dialog.html @@ -815,11 +815,11 @@ apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 235 + 236 apps/client/src/app/components/holding-detail-dialog/holding-detail-dialog.html - 221 + 222 libs/ui/src/lib/holdings-table/holdings-table.component.html @@ -831,7 +831,7 @@ Data Gathering Frequency apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 467 + 468 @@ -919,11 +919,11 @@ Sektör apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 280 + 281 apps/client/src/app/components/holding-detail-dialog/holding-detail-dialog.html - 270 + 271 @@ -931,7 +931,7 @@ Ülke apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 295 + 296 apps/client/src/app/components/admin-users/admin-users.html @@ -939,7 +939,7 @@ apps/client/src/app/components/holding-detail-dialog/holding-detail-dialog.html - 284 + 285 apps/client/src/app/components/user-detail-dialog/user-detail-dialog.html @@ -951,15 +951,15 @@ Sektörler apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 301 + 302 apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 420 + 421 apps/client/src/app/components/holding-detail-dialog/holding-detail-dialog.html - 290 + 291 apps/client/src/app/pages/public/public-page.html @@ -971,15 +971,15 @@ Ülkeler apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 311 + 312 apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 431 + 432 apps/client/src/app/components/holding-detail-dialog/holding-detail-dialog.html - 302 + 303 @@ -987,7 +987,7 @@ Sembol Eşleştirme apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 409 + 410 @@ -1027,7 +1027,7 @@ Veri Toplayıcı Yapılandırması apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 509 + 510 @@ -1035,7 +1035,7 @@ Not apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 455 + 456 apps/client/src/app/pages/accounts/create-or-update-account-dialog/create-or-update-account-dialog.html @@ -1051,7 +1051,7 @@ libs/ui/src/lib/activities-table/activities-table.component.html - 370 + 384 @@ -1067,7 +1067,7 @@ Ad, sembol ya da ISIN apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 133 + 134 apps/client/src/app/components/admin-market-data/create-asset-profile-dialog/create-asset-profile-dialog.html @@ -1227,11 +1227,11 @@ Url apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 442 + 443 apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 588 + 589 apps/client/src/app/components/admin-platform/admin-platform.component.html @@ -1423,7 +1423,7 @@ Karşılaştırma Ölçütü apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 401 + 402 apps/client/src/app/components/benchmark-comparator/benchmark-comparator.component.ts @@ -1435,7 +1435,7 @@ Piyasa Psikolojisi libs/ui/src/lib/fear-and-greed-index/fear-and-greed-index.component.html - 22 + 23 @@ -1683,7 +1683,7 @@ veya apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 167 + 168 apps/client/src/app/components/admin-settings/admin-settings.component.html @@ -1847,7 +1847,7 @@ Asgari Fiyat apps/client/src/app/components/holding-detail-dialog/holding-detail-dialog.html - 131 + 132 @@ -1855,7 +1855,7 @@ Azami Fiyat apps/client/src/app/components/holding-detail-dialog/holding-detail-dialog.html - 149 + 150 @@ -1863,7 +1863,7 @@ Miktar apps/client/src/app/components/holding-detail-dialog/holding-detail-dialog.html - 159 + 160 apps/client/src/app/pages/portfolio/activities/create-or-update-activity-dialog/create-or-update-activity-dialog.html @@ -1871,7 +1871,7 @@ libs/ui/src/lib/activities-table/activities-table.component.html - 213 + 227 libs/ui/src/lib/holdings-table/holdings-table.component.html @@ -1883,7 +1883,7 @@ Komisyon apps/client/src/app/components/holding-detail-dialog/holding-detail-dialog.html - 210 + 211 apps/client/src/app/components/portfolio-summary/portfolio-summary.component.html @@ -1895,7 +1895,7 @@ Rapor Veri Sorunu apps/client/src/app/components/holding-detail-dialog/holding-detail-dialog.html - 463 + 464 @@ -2075,7 +2075,7 @@ libs/ui/src/lib/assistant/assistant.component.ts - 365 + 366 @@ -2087,7 +2087,7 @@ libs/ui/src/lib/assistant/assistant.component.ts - 377 + 378 @@ -2099,7 +2099,7 @@ libs/ui/src/lib/assistant/assistant.component.ts - 387 + 388 @@ -2119,7 +2119,7 @@ libs/ui/src/lib/assistant/assistant.component.ts - 409 + 410 @@ -2139,7 +2139,7 @@ libs/ui/src/lib/assistant/assistant.component.ts - 415 + 416 @@ -2319,7 +2319,7 @@ apps/client/src/app/components/holding-detail-dialog/holding-detail-dialog.html - 395 + 396 apps/client/src/app/components/user-detail-dialog/user-detail-dialog.html @@ -2391,7 +2391,7 @@ Piyasa Verileri apps/client/src/app/components/holding-detail-dialog/holding-detail-dialog.html - 417 + 418 libs/common/src/lib/routes/routes.ts @@ -2431,11 +2431,11 @@ Özet apps/client/src/app/components/account-detail-dialog/account-detail-dialog.html - 41 + 42 apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 114 + 115 apps/client/src/app/components/header/header.component.html @@ -2447,7 +2447,7 @@ apps/client/src/app/components/holding-detail-dialog/holding-detail-dialog.html - 47 + 48 apps/client/src/app/pages/admin/admin-page.component.ts @@ -2843,7 +2843,7 @@ Varlıklar apps/client/src/app/components/account-detail-dialog/account-detail-dialog.html - 126 + 127 apps/client/src/app/components/home-holdings/home-holdings.html @@ -2895,7 +2895,7 @@ Piyasalar apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 403 + 404 apps/client/src/app/components/footer/footer.component.html @@ -3066,6 +3066,14 @@ 84 + + Do you really want to delete these activities? + Do you really want to delete these activities? + + libs/ui/src/lib/activities-table/activities-table.component.ts + 334 + + Why Ghostfolio? Neden Ghostfolio? @@ -3323,15 +3331,15 @@ İşlemler apps/client/src/app/components/account-detail-dialog/account-detail-dialog.html - 102 + 103 apps/client/src/app/components/account-detail-dialog/account-detail-dialog.html - 137 + 138 apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 244 + 245 apps/client/src/app/components/admin-overview/admin-overview.html @@ -3347,11 +3355,11 @@ apps/client/src/app/components/holding-detail-dialog/holding-detail-dialog.html - 233 + 234 apps/client/src/app/components/holding-detail-dialog/holding-detail-dialog.html - 361 + 362 apps/client/src/app/components/user-detail-dialog/user-detail-dialog.html @@ -3370,14 +3378,6 @@ 126 - - Do you really want to delete these activities? - Tüm işlemlerinizi silmeyi gerçekten istiyor musunuz? - - libs/ui/src/lib/activities-table/activities-table.component.ts - 317 - - Update activity İşlemi Güncelle @@ -3431,7 +3431,7 @@ libs/ui/src/lib/activities-table/activities-table.component.html - 237 + 251 @@ -3443,11 +3443,11 @@ libs/ui/src/lib/activities-table/activities-table.component.html - 28 + 30 libs/ui/src/lib/activities-table/activities-table.component.html - 406 + 420 @@ -3459,11 +3459,11 @@ libs/ui/src/lib/activities-table/activities-table.component.html - 52 + 54 libs/ui/src/lib/activities-table/activities-table.component.html - 420 + 434 @@ -3807,11 +3807,11 @@ Temettü apps/client/src/app/components/account-detail-dialog/account-detail-dialog.html - 90 + 91 apps/client/src/app/components/holding-detail-dialog/holding-detail-dialog.html - 188 + 189 apps/client/src/app/components/portfolio-summary/portfolio-summary.component.html @@ -4768,7 +4768,7 @@ Yerel Ayarlar apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 547 + 548 apps/client/src/app/components/user-account-settings/user-account-settings.html @@ -4936,11 +4936,11 @@ İşlemleri Dışa Aktar libs/ui/src/lib/activities-table/activities-table.component.html - 64 + 72 libs/ui/src/lib/activities-table/activities-table.component.html - 434 + 448 @@ -4948,11 +4948,11 @@ Taslakları ICS Olarak Dışa Aktar libs/ui/src/lib/activities-table/activities-table.component.html - 77 + 86 libs/ui/src/lib/activities-table/activities-table.component.html - 447 + 461 @@ -4960,7 +4960,7 @@ Taslak libs/ui/src/lib/activities-table/activities-table.component.html - 167 + 181 @@ -4968,7 +4968,7 @@ Klonla libs/ui/src/lib/activities-table/activities-table.component.html - 492 + 506 @@ -4976,7 +4976,7 @@ Taslakları ICS Olarak Dışa Aktar libs/ui/src/lib/activities-table/activities-table.component.html - 502 + 516 @@ -4984,7 +4984,11 @@ TBu işlemi silmeyi gerçekten istiyor musunuz? libs/ui/src/lib/activities-table/activities-table.component.ts - 327 + 333 + + + libs/ui/src/lib/activities-table/activities-table.component.ts + 344 @@ -5072,7 +5076,7 @@ Faiz apps/client/src/app/components/account-detail-dialog/account-detail-dialog.html - 78 + 79 apps/client/src/app/components/portfolio-summary/portfolio-summary.component.html @@ -5140,7 +5144,7 @@ libs/ui/src/lib/activities-table/activities-table.component.html - 335 + 349 libs/ui/src/lib/i18n.ts @@ -5168,15 +5172,15 @@ apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 253 + 254 apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 349 + 350 apps/client/src/app/components/holding-detail-dialog/holding-detail-dialog.html - 244 + 245 apps/client/src/app/pages/portfolio/activities/create-or-update-activity-dialog/create-or-update-activity-dialog.html @@ -5200,15 +5204,15 @@ apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 262 + 263 apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 365 + 366 apps/client/src/app/components/holding-detail-dialog/holding-detail-dialog.html - 253 + 254 apps/client/src/app/pages/portfolio/activities/create-or-update-activity-dialog/create-or-update-activity-dialog.html @@ -5392,7 +5396,7 @@ apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 186 + 187 apps/client/src/app/components/admin-market-data/create-asset-profile-dialog/create-asset-profile-dialog.html @@ -5400,13 +5404,21 @@ apps/client/src/app/components/holding-detail-dialog/holding-detail-dialog.html - 322 + 323 libs/ui/src/lib/i18n.ts 35 + + Export + Export + + libs/ui/src/lib/activities-table/activities-table.component.html + 68 + + Tag Etiket @@ -5520,7 +5532,7 @@ Menkul Kıymet apps/client/src/app/components/account-detail-dialog/account-detail-dialog.html - 66 + 67 libs/ui/src/lib/i18n.ts @@ -5672,7 +5684,7 @@ Invested Capital apps/client/src/app/components/holding-detail-dialog/holding-detail-dialog.html - 173 + 174 apps/client/src/app/components/portfolio-summary/portfolio-summary.component.html @@ -5764,7 +5776,7 @@ Convert to apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 174 + 175 @@ -5836,7 +5848,7 @@ libs/ui/src/lib/activities-table/activities-table.component.html - 261 + 275 libs/ui/src/lib/i18n.ts @@ -6120,7 +6132,7 @@ Nakit Bakiyeleri apps/client/src/app/components/account-detail-dialog/account-detail-dialog.html - 169 + 170 @@ -6164,7 +6176,7 @@ Test apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 606 + 607 @@ -6260,7 +6272,7 @@ Close Holding apps/client/src/app/components/holding-detail-dialog/holding-detail-dialog.html - 450 + 451 @@ -6300,7 +6312,7 @@ Hafta içi libs/ui/src/lib/assistant/assistant.component.ts - 369 + 370 @@ -6312,7 +6324,7 @@ libs/ui/src/lib/assistant/assistant.component.ts - 369 + 370 @@ -6320,7 +6332,7 @@ Ay içi libs/ui/src/lib/assistant/assistant.component.ts - 373 + 374 @@ -6332,7 +6344,7 @@ libs/ui/src/lib/assistant/assistant.component.ts - 373 + 374 @@ -6348,7 +6360,7 @@ Yıl içi libs/ui/src/lib/assistant/assistant.component.ts - 377 + 378 @@ -6404,7 +6416,7 @@ libs/ui/src/lib/assistant/assistant.component.ts - 387 + 388 @@ -6416,7 +6428,7 @@ libs/ui/src/lib/assistant/assistant.component.ts - 409 + 410 @@ -6432,7 +6444,7 @@ Veri Toplama apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 629 + 630 apps/client/src/app/components/admin-overview/admin-overview.html @@ -6444,7 +6456,7 @@ Find a holding... libs/ui/src/lib/assistant/assistant.component.ts - 448 + 449 @@ -6537,11 +6549,11 @@ Etkinlik apps/client/src/app/components/account-detail-dialog/account-detail-dialog.html - 100 + 101 apps/client/src/app/components/holding-detail-dialog/holding-detail-dialog.html - 231 + 232 @@ -6549,7 +6561,7 @@ Temettü Getiri apps/client/src/app/components/holding-detail-dialog/holding-detail-dialog.html - 198 + 199 @@ -6605,7 +6617,7 @@ Etkinlikleri Sil libs/ui/src/lib/activities-table/activities-table.component.html - 92 + 105 @@ -6629,7 +6641,7 @@ Jump to a page... libs/ui/src/lib/assistant/assistant.component.ts - 449 + 450 @@ -6685,7 +6697,7 @@ Include in apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 399 + 400 @@ -6921,7 +6933,7 @@ View Holding libs/ui/src/lib/activities-table/activities-table.component.html - 473 + 487 @@ -6977,11 +6989,11 @@ İptal Et apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 162 + 163 apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 634 + 635 apps/client/src/app/components/admin-market-data/create-asset-profile-dialog/create-asset-profile-dialog.html @@ -7033,7 +7045,7 @@ Kapat apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 636 + 637 apps/client/src/app/components/admin-market-data/create-asset-profile-dialog/create-asset-profile-dialog.html @@ -7125,7 +7137,7 @@ Kur farkı etkisiyle değişim Değişim apps/client/src/app/components/holding-detail-dialog/holding-detail-dialog.html - 63 + 64 @@ -7141,7 +7153,7 @@ Kur farkı etkisiyle performans Performans apps/client/src/app/components/holding-detail-dialog/holding-detail-dialog.html - 83 + 84 @@ -7287,6 +7299,10 @@ apps/client/src/app/components/admin-market-data/admin-market-data.html 270 + + libs/ui/src/lib/activities-table/activities-table.component.html + 101 + cannot be self-hosted @@ -7607,7 +7623,7 @@ Kaydet apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 645 + 646 apps/client/src/app/components/admin-market-data/create-asset-profile-dialog/create-asset-profile-dialog.html @@ -7739,7 +7755,7 @@ Varsayılan Piyasa Fiyatı apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 519 + 520 @@ -7747,7 +7763,7 @@ Mod apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 556 + 557 @@ -7763,7 +7779,7 @@ Seçici apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 572 + 573 @@ -7771,7 +7787,7 @@ HTTP İstek Başlıkları apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 532 + 533 @@ -8016,7 +8032,7 @@ Uygula apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 154 + 155 @@ -8107,6 +8123,18 @@ 142 + + {VAR_PLURAL, plural, =1 {Activity} other {Activities}} + {VAR_PLURAL, plural, =1 {Activity} other {Activities}} + + libs/ui/src/lib/activities-table/activities-table.component.html + 69 + + + libs/ui/src/lib/activities-table/activities-table.component.html + 102 + + Log out Oturumu kapat @@ -8576,7 +8604,7 @@ Manage Asset Profile apps/client/src/app/components/holding-detail-dialog/holding-detail-dialog.html - 478 + 479 @@ -8604,7 +8632,7 @@ apps/client/src/app/components/holding-detail-dialog/holding-detail-dialog.html - 101 + 102 diff --git a/apps/client/src/locales/messages.uk.xlf b/apps/client/src/locales/messages.uk.xlf index fa110490a..be6b41b0f 100644 --- a/apps/client/src/locales/messages.uk.xlf +++ b/apps/client/src/locales/messages.uk.xlf @@ -407,7 +407,7 @@ Баланс готівки apps/client/src/app/components/account-detail-dialog/account-detail-dialog.html - 54 + 55 apps/client/src/app/pages/accounts/create-or-update-account-dialog/create-or-update-account-dialog.html @@ -423,7 +423,7 @@ Платформа apps/client/src/app/components/account-detail-dialog/account-detail-dialog.html - 112 + 113 apps/client/src/app/pages/accounts/create-or-update-account-dialog/create-or-update-account-dialog.html @@ -439,7 +439,7 @@ Баланс готівки apps/client/src/app/components/account-detail-dialog/account-detail-dialog.html - 169 + 170 @@ -463,7 +463,7 @@ apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 332 + 333 apps/client/src/app/components/admin-platform/admin-platform.component.html @@ -499,7 +499,7 @@ libs/ui/src/lib/activities-table/activities-table.component.html - 161 + 175 libs/ui/src/lib/benchmark/benchmark.component.html @@ -539,11 +539,11 @@ Валюта apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 216 + 217 apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 339 + 340 apps/client/src/app/components/admin-market-data/create-asset-profile-dialog/create-asset-profile-dialog.html @@ -563,7 +563,7 @@ libs/ui/src/lib/activities-table/activities-table.component.html - 303 + 317 @@ -599,11 +599,11 @@ libs/ui/src/lib/activities-table/activities-table.component.html - 284 + 298 libs/ui/src/lib/activities-table/activities-table.component.html - 320 + 334 libs/ui/src/lib/holdings-table/holdings-table.component.html @@ -643,7 +643,7 @@ libs/ui/src/lib/activities-table/activities-table.component.html - 483 + 497 @@ -683,7 +683,7 @@ libs/ui/src/lib/activities-table/activities-table.component.html - 513 + 527 libs/ui/src/lib/benchmark/benchmark.component.html @@ -727,11 +727,11 @@ libs/ui/src/lib/activities-table/activities-table.component.html - 5 + 7 libs/ui/src/lib/activities-table/activities-table.component.html - 183 + 197 @@ -751,7 +751,7 @@ apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 486 + 487 @@ -775,7 +775,7 @@ apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 197 + 198 apps/client/src/app/pages/portfolio/activities/create-or-update-activity-dialog/create-or-update-activity-dialog.html @@ -963,7 +963,7 @@ apps/client/src/app/components/holding-detail-dialog/holding-detail-dialog.html - 113 + 114 libs/ui/src/lib/historical-market-data-editor/historical-market-data-editor-dialog/historical-market-data-editor-dialog.html @@ -979,11 +979,11 @@ apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 235 + 236 apps/client/src/app/components/holding-detail-dialog/holding-detail-dialog.html - 221 + 222 libs/ui/src/lib/holdings-table/holdings-table.component.html @@ -995,7 +995,7 @@ Частота збору даних apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 467 + 468 @@ -1119,11 +1119,11 @@ Сектор apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 280 + 281 apps/client/src/app/components/holding-detail-dialog/holding-detail-dialog.html - 270 + 271 @@ -1131,7 +1131,7 @@ Країна apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 295 + 296 apps/client/src/app/components/admin-users/admin-users.html @@ -1139,7 +1139,7 @@ apps/client/src/app/components/holding-detail-dialog/holding-detail-dialog.html - 284 + 285 apps/client/src/app/components/user-detail-dialog/user-detail-dialog.html @@ -1151,15 +1151,15 @@ Сектори apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 301 + 302 apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 420 + 421 apps/client/src/app/components/holding-detail-dialog/holding-detail-dialog.html - 290 + 291 apps/client/src/app/pages/public/public-page.html @@ -1171,15 +1171,15 @@ Країни apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 311 + 312 apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 431 + 432 apps/client/src/app/components/holding-detail-dialog/holding-detail-dialog.html - 302 + 303 @@ -1187,7 +1187,7 @@ Зіставлення символів apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 409 + 410 @@ -1227,7 +1227,7 @@ Конфігурація скребка apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 509 + 510 @@ -1235,7 +1235,7 @@ Тест apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 606 + 607 @@ -1243,11 +1243,11 @@ URL apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 442 + 443 apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 588 + 589 apps/client/src/app/components/admin-platform/admin-platform.component.html @@ -1271,7 +1271,7 @@ Примітка apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 455 + 456 apps/client/src/app/pages/accounts/create-or-update-account-dialog/create-or-update-account-dialog.html @@ -1287,7 +1287,7 @@ libs/ui/src/lib/activities-table/activities-table.component.html - 370 + 384 @@ -1335,7 +1335,7 @@ Назва, символ або ISIN apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 133 + 134 apps/client/src/app/components/admin-market-data/create-asset-profile-dialog/create-asset-profile-dialog.html @@ -1435,7 +1435,7 @@ Збір даних apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 629 + 630 apps/client/src/app/components/admin-overview/admin-overview.html @@ -1447,7 +1447,7 @@ Знайти актив... libs/ui/src/lib/assistant/assistant.component.ts - 448 + 449 @@ -1655,7 +1655,7 @@ або apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 167 + 168 apps/client/src/app/components/admin-settings/admin-settings.component.html @@ -1859,7 +1859,7 @@ Порівняльний показник apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 401 + 402 apps/client/src/app/components/benchmark-comparator/benchmark-comparator.component.ts @@ -1871,7 +1871,7 @@ Поточний ринковий настрій libs/ui/src/lib/fear-and-greed-index/fear-and-greed-index.component.html - 22 + 23 @@ -1951,7 +1951,7 @@ Зміна з урахуванням валютного ефекту Зміна apps/client/src/app/components/holding-detail-dialog/holding-detail-dialog.html - 63 + 64 @@ -1967,7 +1967,7 @@ Прибутковість з урахуванням валютного ефекту валюти Прибутковість apps/client/src/app/components/holding-detail-dialog/holding-detail-dialog.html - 83 + 84 @@ -1975,7 +1975,7 @@ Мінімальна ціна apps/client/src/app/components/holding-detail-dialog/holding-detail-dialog.html - 131 + 132 @@ -1983,7 +1983,7 @@ Максимальна ціна apps/client/src/app/components/holding-detail-dialog/holding-detail-dialog.html - 149 + 150 @@ -1991,7 +1991,7 @@ Кількість apps/client/src/app/components/holding-detail-dialog/holding-detail-dialog.html - 159 + 160 apps/client/src/app/pages/portfolio/activities/create-or-update-activity-dialog/create-or-update-activity-dialog.html @@ -1999,7 +1999,7 @@ libs/ui/src/lib/activities-table/activities-table.component.html - 213 + 227 libs/ui/src/lib/holdings-table/holdings-table.component.html @@ -2011,7 +2011,7 @@ Дохідність дивіденду apps/client/src/app/components/holding-detail-dialog/holding-detail-dialog.html - 198 + 199 @@ -2019,7 +2019,7 @@ Комісії apps/client/src/app/components/holding-detail-dialog/holding-detail-dialog.html - 210 + 211 apps/client/src/app/components/portfolio-summary/portfolio-summary.component.html @@ -2031,11 +2031,11 @@ Активність apps/client/src/app/components/account-detail-dialog/account-detail-dialog.html - 100 + 101 apps/client/src/app/components/holding-detail-dialog/holding-detail-dialog.html - 231 + 232 @@ -2043,7 +2043,7 @@ Повідомити про збій даних apps/client/src/app/components/holding-detail-dialog/holding-detail-dialog.html - 463 + 464 @@ -2415,7 +2415,7 @@ Зберегти apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 645 + 646 apps/client/src/app/components/admin-market-data/create-asset-profile-dialog/create-asset-profile-dialog.html @@ -2695,7 +2695,7 @@ libs/ui/src/lib/assistant/assistant.component.ts - 365 + 366 @@ -2707,7 +2707,7 @@ libs/ui/src/lib/assistant/assistant.component.ts - 377 + 378 @@ -2719,7 +2719,7 @@ libs/ui/src/lib/assistant/assistant.component.ts - 387 + 388 @@ -2739,7 +2739,7 @@ libs/ui/src/lib/assistant/assistant.component.ts - 409 + 410 @@ -2759,7 +2759,7 @@ libs/ui/src/lib/assistant/assistant.component.ts - 415 + 416 @@ -2995,7 +2995,7 @@ Перейти до сторінки... libs/ui/src/lib/assistant/assistant.component.ts - 449 + 450 @@ -3019,7 +3019,7 @@ Включити до apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 399 + 400 @@ -3091,7 +3091,7 @@ Локалізація apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 547 + 548 apps/client/src/app/components/user-account-settings/user-account-settings.html @@ -3423,7 +3423,7 @@ apps/client/src/app/components/holding-detail-dialog/holding-detail-dialog.html - 395 + 396 apps/client/src/app/components/user-detail-dialog/user-detail-dialog.html @@ -3539,7 +3539,7 @@ Ринкові дані apps/client/src/app/components/holding-detail-dialog/holding-detail-dialog.html - 417 + 418 libs/common/src/lib/routes/routes.ts @@ -3579,11 +3579,11 @@ Огляд apps/client/src/app/components/account-detail-dialog/account-detail-dialog.html - 41 + 42 apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 114 + 115 apps/client/src/app/components/header/header.component.html @@ -3595,7 +3595,7 @@ apps/client/src/app/components/holding-detail-dialog/holding-detail-dialog.html - 47 + 48 apps/client/src/app/pages/admin/admin-page.component.ts @@ -4004,7 +4004,7 @@ Активи apps/client/src/app/components/account-detail-dialog/account-detail-dialog.html - 126 + 127 apps/client/src/app/components/home-holdings/home-holdings.html @@ -4056,7 +4056,7 @@ Ринки apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 403 + 404 apps/client/src/app/components/footer/footer.component.html @@ -4259,6 +4259,14 @@ 84 + + Do you really want to delete these activities? + Do you really want to delete these activities? + + libs/ui/src/lib/activities-table/activities-table.component.ts + 334 + + Why Ghostfolio? Чому Ghostfolio? @@ -4508,7 +4516,7 @@ Конвертувати в apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 174 + 175 @@ -4584,15 +4592,15 @@ Активності apps/client/src/app/components/account-detail-dialog/account-detail-dialog.html - 102 + 103 apps/client/src/app/components/account-detail-dialog/account-detail-dialog.html - 137 + 138 apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 244 + 245 apps/client/src/app/components/admin-overview/admin-overview.html @@ -4608,11 +4616,11 @@ apps/client/src/app/components/holding-detail-dialog/holding-detail-dialog.html - 233 + 234 apps/client/src/app/components/holding-detail-dialog/holding-detail-dialog.html - 361 + 362 apps/client/src/app/components/user-detail-dialog/user-detail-dialog.html @@ -4704,7 +4712,7 @@ Знайти рахунок... libs/ui/src/lib/assistant/assistant.component.ts - 447 + 448 @@ -4720,7 +4728,7 @@ libs/ui/src/lib/activities-table/activities-table.component.html - 192 + 206 libs/ui/src/lib/historical-market-data-editor/historical-market-data-editor-dialog/historical-market-data-editor-dialog.html @@ -4736,7 +4744,7 @@ libs/ui/src/lib/activities-table/activities-table.component.html - 237 + 251 @@ -4748,11 +4756,11 @@ libs/ui/src/lib/activities-table/activities-table.component.html - 28 + 30 libs/ui/src/lib/activities-table/activities-table.component.html - 406 + 420 @@ -4764,11 +4772,11 @@ libs/ui/src/lib/activities-table/activities-table.component.html - 52 + 54 libs/ui/src/lib/activities-table/activities-table.component.html - 420 + 434 @@ -5136,11 +5144,11 @@ Дивіденди apps/client/src/app/components/account-detail-dialog/account-detail-dialog.html - 90 + 91 apps/client/src/app/components/holding-detail-dialog/holding-detail-dialog.html - 188 + 189 apps/client/src/app/components/portfolio-summary/portfolio-summary.component.html @@ -5204,7 +5212,7 @@ Закрити позицію apps/client/src/app/components/holding-detail-dialog/holding-detail-dialog.html - 450 + 451 @@ -6221,6 +6229,10 @@ apps/client/src/app/components/admin-market-data/admin-market-data.html 270 + + libs/ui/src/lib/activities-table/activities-table.component.html + 101 + cannot be self-hosted @@ -6479,11 +6491,11 @@ Експорт активності libs/ui/src/lib/activities-table/activities-table.component.html - 64 + 72 libs/ui/src/lib/activities-table/activities-table.component.html - 434 + 448 @@ -6491,11 +6503,11 @@ Експортувати чернетки як ICS libs/ui/src/lib/activities-table/activities-table.component.html - 77 + 86 libs/ui/src/lib/activities-table/activities-table.component.html - 447 + 461 @@ -6503,7 +6515,7 @@ Видалити активності libs/ui/src/lib/activities-table/activities-table.component.html - 92 + 105 @@ -6511,7 +6523,7 @@ Чернетка libs/ui/src/lib/activities-table/activities-table.component.html - 167 + 181 @@ -6519,7 +6531,7 @@ Клонувати libs/ui/src/lib/activities-table/activities-table.component.html - 492 + 506 @@ -6527,15 +6539,7 @@ Експортувати чернетку як ICS libs/ui/src/lib/activities-table/activities-table.component.html - 502 - - - - Do you really want to delete these activities? - Ви дійсно хочете видалити ці дії? - - libs/ui/src/lib/activities-table/activities-table.component.ts - 317 + 516 @@ -6543,7 +6547,11 @@ Ви дійсно хочете видалити цю активність? libs/ui/src/lib/activities-table/activities-table.component.ts - 327 + 333 + + + libs/ui/src/lib/activities-table/activities-table.component.ts + 344 @@ -6551,7 +6559,7 @@ Тиждень до дати libs/ui/src/lib/assistant/assistant.component.ts - 369 + 370 @@ -6563,7 +6571,7 @@ libs/ui/src/lib/assistant/assistant.component.ts - 369 + 370 @@ -6571,7 +6579,7 @@ Місяць до дати libs/ui/src/lib/assistant/assistant.component.ts - 373 + 374 @@ -6583,7 +6591,7 @@ libs/ui/src/lib/assistant/assistant.component.ts - 373 + 374 @@ -6599,7 +6607,7 @@ Рік до дати libs/ui/src/lib/assistant/assistant.component.ts - 377 + 378 @@ -6619,7 +6627,7 @@ libs/ui/src/lib/assistant/assistant.component.ts - 387 + 388 @@ -6631,7 +6639,7 @@ libs/ui/src/lib/assistant/assistant.component.ts - 409 + 410 @@ -6795,7 +6803,7 @@ Відсотки apps/client/src/app/components/account-detail-dialog/account-detail-dialog.html - 78 + 79 apps/client/src/app/components/portfolio-summary/portfolio-summary.component.html @@ -6887,7 +6895,7 @@ libs/ui/src/lib/activities-table/activities-table.component.html - 335 + 349 libs/ui/src/lib/i18n.ts @@ -6915,15 +6923,15 @@ apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 253 + 254 apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 349 + 350 apps/client/src/app/components/holding-detail-dialog/holding-detail-dialog.html - 244 + 245 apps/client/src/app/pages/portfolio/activities/create-or-update-activity-dialog/create-or-update-activity-dialog.html @@ -6947,15 +6955,15 @@ apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 262 + 263 apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 365 + 366 apps/client/src/app/components/holding-detail-dialog/holding-detail-dialog.html - 253 + 254 apps/client/src/app/pages/portfolio/activities/create-or-update-activity-dialog/create-or-update-activity-dialog.html @@ -6979,11 +6987,11 @@ Скасувати apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 162 + 163 apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 634 + 635 apps/client/src/app/components/admin-market-data/create-asset-profile-dialog/create-asset-profile-dialog.html @@ -7043,7 +7051,7 @@ Закрити apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 636 + 637 apps/client/src/app/components/admin-market-data/create-asset-profile-dialog/create-asset-profile-dialog.html @@ -7263,7 +7271,7 @@ apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 186 + 187 apps/client/src/app/components/admin-market-data/create-asset-profile-dialog/create-asset-profile-dialog.html @@ -7271,13 +7279,21 @@ apps/client/src/app/components/holding-detail-dialog/holding-detail-dialog.html - 322 + 323 libs/ui/src/lib/i18n.ts 35 + + Export + Export + + libs/ui/src/lib/activities-table/activities-table.component.html + 68 + + Tag Тег @@ -7363,7 +7379,7 @@ libs/ui/src/lib/activities-table/activities-table.component.html - 261 + 275 libs/ui/src/lib/i18n.ts @@ -7423,7 +7439,7 @@ Капітал apps/client/src/app/components/account-detail-dialog/account-detail-dialog.html - 66 + 67 libs/ui/src/lib/i18n.ts @@ -7583,7 +7599,7 @@ Інвестований капітал apps/client/src/app/components/holding-detail-dialog/holding-detail-dialog.html - 173 + 174 apps/client/src/app/components/portfolio-summary/portfolio-summary.component.html @@ -7607,7 +7623,7 @@ Переглянути позицію libs/ui/src/lib/activities-table/activities-table.component.html - 473 + 487 @@ -7739,7 +7755,7 @@ Стандартна ринкова ціна apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 519 + 520 @@ -7747,7 +7763,7 @@ Режим apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 556 + 557 @@ -7763,7 +7779,7 @@ Селектор apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 572 + 573 @@ -7771,7 +7787,7 @@ Заголовки HTTP-запиту apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 532 + 533 @@ -8016,7 +8032,7 @@ Застосувати apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 154 + 155 @@ -8107,6 +8123,18 @@ 142 + + {VAR_PLURAL, plural, =1 {Activity} other {Activities}} + {VAR_PLURAL, plural, =1 {Activity} other {Activities}} + + libs/ui/src/lib/activities-table/activities-table.component.html + 69 + + + libs/ui/src/lib/activities-table/activities-table.component.html + 102 + + Log out Вийти @@ -8576,7 +8604,7 @@ Керувати профілем активу apps/client/src/app/components/holding-detail-dialog/holding-detail-dialog.html - 478 + 479 @@ -8604,7 +8632,7 @@ apps/client/src/app/components/holding-detail-dialog/holding-detail-dialog.html - 101 + 102 diff --git a/apps/client/src/locales/messages.xlf b/apps/client/src/locales/messages.xlf index 528c478ca..c0297b1fa 100644 --- a/apps/client/src/locales/messages.xlf +++ b/apps/client/src/locales/messages.xlf @@ -251,11 +251,11 @@ libs/ui/src/lib/activities-table/activities-table.component.html - 5 + 7 libs/ui/src/lib/activities-table/activities-table.component.html - 183 + 197 @@ -290,7 +290,7 @@ Cash Balance apps/client/src/app/components/account-detail-dialog/account-detail-dialog.html - 54 + 55 apps/client/src/app/pages/accounts/create-or-update-account-dialog/create-or-update-account-dialog.html @@ -305,7 +305,7 @@ Platform apps/client/src/app/components/account-detail-dialog/account-detail-dialog.html - 112 + 113 apps/client/src/app/pages/accounts/create-or-update-account-dialog/create-or-update-account-dialog.html @@ -320,7 +320,7 @@ Cash Balances apps/client/src/app/components/account-detail-dialog/account-detail-dialog.html - 169 + 170 @@ -342,7 +342,7 @@ apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 332 + 333 apps/client/src/app/components/admin-platform/admin-platform.component.html @@ -378,7 +378,7 @@ libs/ui/src/lib/activities-table/activities-table.component.html - 161 + 175 libs/ui/src/lib/benchmark/benchmark.component.html @@ -415,11 +415,11 @@ Currency apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 216 + 217 apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 339 + 340 apps/client/src/app/components/admin-market-data/create-asset-profile-dialog/create-asset-profile-dialog.html @@ -439,7 +439,7 @@ libs/ui/src/lib/activities-table/activities-table.component.html - 303 + 317 @@ -474,11 +474,11 @@ libs/ui/src/lib/activities-table/activities-table.component.html - 284 + 298 libs/ui/src/lib/activities-table/activities-table.component.html - 320 + 334 libs/ui/src/lib/holdings-table/holdings-table.component.html @@ -517,7 +517,7 @@ libs/ui/src/lib/activities-table/activities-table.component.html - 483 + 497 @@ -556,7 +556,7 @@ libs/ui/src/lib/activities-table/activities-table.component.html - 513 + 527 libs/ui/src/lib/benchmark/benchmark.component.html @@ -592,7 +592,7 @@ apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 486 + 487 @@ -607,7 +607,7 @@ apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 197 + 198 apps/client/src/app/pages/portfolio/activities/create-or-update-activity-dialog/create-or-update-activity-dialog.html @@ -703,7 +703,7 @@ Find an account... libs/ui/src/lib/assistant/assistant.component.ts - 447 + 448 @@ -718,7 +718,7 @@ libs/ui/src/lib/activities-table/activities-table.component.html - 192 + 206 libs/ui/src/lib/historical-market-data-editor/historical-market-data-editor-dialog/historical-market-data-editor-dialog.html @@ -740,7 +740,7 @@ apps/client/src/app/components/holding-detail-dialog/holding-detail-dialog.html - 113 + 114 libs/ui/src/lib/historical-market-data-editor/historical-market-data-editor-dialog/historical-market-data-editor-dialog.html @@ -812,11 +812,11 @@ apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 235 + 236 apps/client/src/app/components/holding-detail-dialog/holding-detail-dialog.html - 221 + 222 libs/ui/src/lib/holdings-table/holdings-table.component.html @@ -827,7 +827,7 @@ Data Gathering Frequency apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 467 + 468 @@ -955,18 +955,18 @@ Sector apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 280 + 281 apps/client/src/app/components/holding-detail-dialog/holding-detail-dialog.html - 270 + 271 Country apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 295 + 296 apps/client/src/app/components/admin-users/admin-users.html @@ -974,7 +974,7 @@ apps/client/src/app/components/holding-detail-dialog/holding-detail-dialog.html - 284 + 285 apps/client/src/app/components/user-detail-dialog/user-detail-dialog.html @@ -985,15 +985,15 @@ Sectors apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 301 + 302 apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 420 + 421 apps/client/src/app/components/holding-detail-dialog/holding-detail-dialog.html - 290 + 291 apps/client/src/app/pages/public/public-page.html @@ -1004,22 +1004,22 @@ Countries apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 311 + 312 apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 431 + 432 apps/client/src/app/components/holding-detail-dialog/holding-detail-dialog.html - 302 + 303 Symbol Mapping apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 409 + 410 @@ -1054,14 +1054,14 @@ Scraper Configuration apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 509 + 510 Note apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 455 + 456 apps/client/src/app/pages/accounts/create-or-update-account-dialog/create-or-update-account-dialog.html @@ -1077,7 +1077,7 @@ libs/ui/src/lib/activities-table/activities-table.component.html - 370 + 384 @@ -1112,7 +1112,7 @@ Name, symbol or ISIN apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 133 + 134 apps/client/src/app/components/admin-market-data/create-asset-profile-dialog/create-asset-profile-dialog.html @@ -1254,11 +1254,11 @@ Url apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 442 + 443 apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 588 + 589 apps/client/src/app/components/admin-platform/admin-platform.component.html @@ -1474,7 +1474,7 @@ Benchmark apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 401 + 402 apps/client/src/app/components/benchmark-comparator/benchmark-comparator.component.ts @@ -1485,7 +1485,7 @@ Current Market Mood libs/ui/src/lib/fear-and-greed-index/fear-and-greed-index.component.html - 22 + 23 @@ -1709,7 +1709,7 @@ or apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 167 + 168 apps/client/src/app/components/admin-settings/admin-settings.component.html @@ -1783,7 +1783,7 @@ Fees apps/client/src/app/components/holding-detail-dialog/holding-detail-dialog.html - 210 + 211 apps/client/src/app/components/portfolio-summary/portfolio-summary.component.html @@ -1869,21 +1869,21 @@ Minimum Price apps/client/src/app/components/holding-detail-dialog/holding-detail-dialog.html - 131 + 132 Maximum Price apps/client/src/app/components/holding-detail-dialog/holding-detail-dialog.html - 149 + 150 Quantity apps/client/src/app/components/holding-detail-dialog/holding-detail-dialog.html - 159 + 160 apps/client/src/app/pages/portfolio/activities/create-or-update-activity-dialog/create-or-update-activity-dialog.html @@ -1891,7 +1891,7 @@ libs/ui/src/lib/activities-table/activities-table.component.html - 213 + 227 libs/ui/src/lib/holdings-table/holdings-table.component.html @@ -1902,7 +1902,7 @@ Report Data Glitch apps/client/src/app/components/holding-detail-dialog/holding-detail-dialog.html - 463 + 464 @@ -2070,7 +2070,7 @@ libs/ui/src/lib/assistant/assistant.component.ts - 365 + 366 @@ -2081,7 +2081,7 @@ libs/ui/src/lib/assistant/assistant.component.ts - 377 + 378 @@ -2092,7 +2092,7 @@ libs/ui/src/lib/assistant/assistant.component.ts - 387 + 388 @@ -2110,7 +2110,7 @@ libs/ui/src/lib/assistant/assistant.component.ts - 409 + 410 @@ -2128,7 +2128,7 @@ libs/ui/src/lib/assistant/assistant.component.ts - 415 + 416 @@ -2287,7 +2287,7 @@ Locale apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 547 + 548 apps/client/src/app/components/user-account-settings/user-account-settings.html @@ -2579,7 +2579,7 @@ apps/client/src/app/components/holding-detail-dialog/holding-detail-dialog.html - 395 + 396 apps/client/src/app/components/user-detail-dialog/user-detail-dialog.html @@ -2673,7 +2673,7 @@ Market Data apps/client/src/app/components/holding-detail-dialog/holding-detail-dialog.html - 417 + 418 libs/common/src/lib/routes/routes.ts @@ -2710,11 +2710,11 @@ Overview apps/client/src/app/components/account-detail-dialog/account-detail-dialog.html - 41 + 42 apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 114 + 115 apps/client/src/app/components/header/header.component.html @@ -2726,7 +2726,7 @@ apps/client/src/app/components/holding-detail-dialog/holding-detail-dialog.html - 47 + 48 apps/client/src/app/pages/admin/admin-page.component.ts @@ -3084,7 +3084,7 @@ Holdings apps/client/src/app/components/account-detail-dialog/account-detail-dialog.html - 126 + 127 apps/client/src/app/components/home-holdings/home-holdings.html @@ -3133,7 +3133,7 @@ Markets apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 403 + 404 apps/client/src/app/components/footer/footer.component.html @@ -3309,6 +3309,13 @@ 84 + + Do you really want to delete these activities? + + libs/ui/src/lib/activities-table/activities-table.component.ts + 334 + + Why Ghostfolio? @@ -3527,7 +3534,7 @@ Convert to apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 174 + 175 @@ -3594,15 +3601,15 @@ Activities apps/client/src/app/components/account-detail-dialog/account-detail-dialog.html - 102 + 103 apps/client/src/app/components/account-detail-dialog/account-detail-dialog.html - 137 + 138 apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 244 + 245 apps/client/src/app/components/admin-overview/admin-overview.html @@ -3618,11 +3625,11 @@ apps/client/src/app/components/holding-detail-dialog/holding-detail-dialog.html - 233 + 234 apps/client/src/app/components/holding-detail-dialog/holding-detail-dialog.html - 361 + 362 apps/client/src/app/components/user-detail-dialog/user-detail-dialog.html @@ -3641,13 +3648,6 @@ 126 - - Do you really want to delete these activities? - - libs/ui/src/lib/activities-table/activities-table.component.ts - 317 - - Update activity @@ -3716,7 +3716,7 @@ libs/ui/src/lib/activities-table/activities-table.component.html - 237 + 251 @@ -3727,11 +3727,11 @@ libs/ui/src/lib/activities-table/activities-table.component.html - 28 + 30 libs/ui/src/lib/activities-table/activities-table.component.html - 406 + 420 @@ -3742,11 +3742,11 @@ libs/ui/src/lib/activities-table/activities-table.component.html - 52 + 54 libs/ui/src/lib/activities-table/activities-table.component.html - 420 + 434 @@ -4045,11 +4045,11 @@ Dividend apps/client/src/app/components/account-detail-dialog/account-detail-dialog.html - 90 + 91 apps/client/src/app/components/holding-detail-dialog/holding-detail-dialog.html - 188 + 189 apps/client/src/app/components/portfolio-summary/portfolio-summary.component.html @@ -4812,50 +4812,54 @@ Export Activities libs/ui/src/lib/activities-table/activities-table.component.html - 64 + 72 libs/ui/src/lib/activities-table/activities-table.component.html - 434 + 448 Export Drafts as ICS libs/ui/src/lib/activities-table/activities-table.component.html - 77 + 86 libs/ui/src/lib/activities-table/activities-table.component.html - 447 + 461 Draft libs/ui/src/lib/activities-table/activities-table.component.html - 167 + 181 Clone libs/ui/src/lib/activities-table/activities-table.component.html - 492 + 506 Export Draft as ICS libs/ui/src/lib/activities-table/activities-table.component.html - 502 + 516 Do you really want to delete this activity? libs/ui/src/lib/activities-table/activities-table.component.ts - 327 + 333 + + + libs/ui/src/lib/activities-table/activities-table.component.ts + 344 @@ -4971,7 +4975,7 @@ Interest apps/client/src/app/components/account-detail-dialog/account-detail-dialog.html - 78 + 79 apps/client/src/app/components/portfolio-summary/portfolio-summary.component.html @@ -5035,7 +5039,7 @@ libs/ui/src/lib/activities-table/activities-table.component.html - 335 + 349 libs/ui/src/lib/i18n.ts @@ -5061,15 +5065,15 @@ apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 253 + 254 apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 349 + 350 apps/client/src/app/components/holding-detail-dialog/holding-detail-dialog.html - 244 + 245 apps/client/src/app/pages/portfolio/activities/create-or-update-activity-dialog/create-or-update-activity-dialog.html @@ -5092,15 +5096,15 @@ apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 262 + 263 apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 365 + 366 apps/client/src/app/components/holding-detail-dialog/holding-detail-dialog.html - 253 + 254 apps/client/src/app/pages/portfolio/activities/create-or-update-activity-dialog/create-or-update-activity-dialog.html @@ -5259,7 +5263,7 @@ apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 186 + 187 apps/client/src/app/components/admin-market-data/create-asset-profile-dialog/create-asset-profile-dialog.html @@ -5267,13 +5271,20 @@ apps/client/src/app/components/holding-detail-dialog/holding-detail-dialog.html - 322 + 323 libs/ui/src/lib/i18n.ts 35 + + Export + + libs/ui/src/lib/activities-table/activities-table.component.html + 68 + + Tag @@ -5336,7 +5347,7 @@ libs/ui/src/lib/activities-table/activities-table.component.html - 261 + 275 libs/ui/src/lib/i18n.ts @@ -5390,7 +5401,7 @@ Equity apps/client/src/app/components/account-detail-dialog/account-detail-dialog.html - 66 + 67 libs/ui/src/lib/i18n.ts @@ -5524,7 +5535,7 @@ Invested Capital apps/client/src/app/components/holding-detail-dialog/holding-detail-dialog.html - 173 + 174 apps/client/src/app/components/portfolio-summary/portfolio-summary.component.html @@ -5633,7 +5644,7 @@ Test apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 606 + 607 @@ -5701,7 +5712,7 @@ Close Holding apps/client/src/app/components/holding-detail-dialog/holding-detail-dialog.html - 450 + 451 @@ -5747,21 +5758,21 @@ Year to date libs/ui/src/lib/assistant/assistant.component.ts - 377 + 378 Week to date libs/ui/src/lib/assistant/assistant.component.ts - 369 + 370 Month to date libs/ui/src/lib/assistant/assistant.component.ts - 373 + 374 @@ -5772,7 +5783,7 @@ libs/ui/src/lib/assistant/assistant.component.ts - 373 + 374 @@ -5790,7 +5801,7 @@ libs/ui/src/lib/assistant/assistant.component.ts - 369 + 370 @@ -5841,7 +5852,7 @@ libs/ui/src/lib/assistant/assistant.component.ts - 387 + 388 @@ -5852,7 +5863,7 @@ libs/ui/src/lib/assistant/assistant.component.ts - 409 + 410 @@ -5889,7 +5900,7 @@ Data Gathering apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 629 + 630 apps/client/src/app/components/admin-overview/admin-overview.html @@ -5900,7 +5911,7 @@ Find a holding... libs/ui/src/lib/assistant/assistant.component.ts - 448 + 449 @@ -5960,18 +5971,18 @@ Activity apps/client/src/app/components/account-detail-dialog/account-detail-dialog.html - 100 + 101 apps/client/src/app/components/holding-detail-dialog/holding-detail-dialog.html - 231 + 232 Dividend Yield apps/client/src/app/components/holding-detail-dialog/holding-detail-dialog.html - 198 + 199 @@ -6020,7 +6031,7 @@ Delete Activities libs/ui/src/lib/activities-table/activities-table.component.html - 92 + 105 @@ -6048,7 +6059,7 @@ Jump to a page... libs/ui/src/lib/assistant/assistant.component.ts - 449 + 450 @@ -6090,7 +6101,7 @@ Include in apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 399 + 400 @@ -6247,7 +6258,7 @@ View Holding libs/ui/src/lib/activities-table/activities-table.component.html - 473 + 487 @@ -6325,11 +6336,11 @@ Cancel apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 162 + 163 apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 634 + 635 apps/client/src/app/components/admin-market-data/create-asset-profile-dialog/create-asset-profile-dialog.html @@ -6401,7 +6412,7 @@ Close apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 636 + 637 apps/client/src/app/components/admin-market-data/create-asset-profile-dialog/create-asset-profile-dialog.html @@ -6515,7 +6526,7 @@ Performance with currency effect Performance apps/client/src/app/components/holding-detail-dialog/holding-detail-dialog.html - 83 + 84 @@ -6536,7 +6547,7 @@ Change with currency effect Change apps/client/src/app/components/holding-detail-dialog/holding-detail-dialog.html - 63 + 64 @@ -6638,6 +6649,10 @@ apps/client/src/app/components/admin-market-data/admin-market-data.html 270 + + libs/ui/src/lib/activities-table/activities-table.component.html + 101 + cannot be self-hosted @@ -6924,7 +6939,7 @@ Save apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 645 + 646 apps/client/src/app/components/admin-market-data/create-asset-profile-dialog/create-asset-profile-dialog.html @@ -7031,7 +7046,7 @@ Mode apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 556 + 557 @@ -7045,14 +7060,14 @@ Default Market Price apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 519 + 520 Selector apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 572 + 573 @@ -7073,7 +7088,7 @@ HTTP Request Headers apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 532 + 533 @@ -7292,7 +7307,7 @@ Apply apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 154 + 155 @@ -7352,6 +7367,17 @@ 142 + + {VAR_PLURAL, plural, =1 {Activity} other {Activities}} + + libs/ui/src/lib/activities-table/activities-table.component.html + 69 + + + libs/ui/src/lib/activities-table/activities-table.component.html + 102 + + Log out @@ -7768,7 +7794,7 @@ Manage Asset Profile apps/client/src/app/components/holding-detail-dialog/holding-detail-dialog.html - 478 + 479 @@ -7793,7 +7819,7 @@ apps/client/src/app/components/holding-detail-dialog/holding-detail-dialog.html - 101 + 102 diff --git a/apps/client/src/locales/messages.zh.xlf b/apps/client/src/locales/messages.zh.xlf index 9cb1e72ba..a70be75d6 100644 --- a/apps/client/src/locales/messages.zh.xlf +++ b/apps/client/src/locales/messages.zh.xlf @@ -268,11 +268,11 @@ libs/ui/src/lib/activities-table/activities-table.component.html - 5 + 7 libs/ui/src/lib/activities-table/activities-table.component.html - 183 + 197 @@ -312,7 +312,7 @@ 现金余额 apps/client/src/app/components/account-detail-dialog/account-detail-dialog.html - 54 + 55 apps/client/src/app/pages/accounts/create-or-update-account-dialog/create-or-update-account-dialog.html @@ -328,7 +328,7 @@ 平台 apps/client/src/app/components/account-detail-dialog/account-detail-dialog.html - 112 + 113 apps/client/src/app/pages/accounts/create-or-update-account-dialog/create-or-update-account-dialog.html @@ -344,7 +344,7 @@ 现金余额 apps/client/src/app/components/account-detail-dialog/account-detail-dialog.html - 169 + 170 @@ -368,7 +368,7 @@ apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 332 + 333 apps/client/src/app/components/admin-platform/admin-platform.component.html @@ -404,7 +404,7 @@ libs/ui/src/lib/activities-table/activities-table.component.html - 161 + 175 libs/ui/src/lib/benchmark/benchmark.component.html @@ -444,11 +444,11 @@ 货币 apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 216 + 217 apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 339 + 340 apps/client/src/app/components/admin-market-data/create-asset-profile-dialog/create-asset-profile-dialog.html @@ -468,7 +468,7 @@ libs/ui/src/lib/activities-table/activities-table.component.html - 303 + 317 @@ -504,11 +504,11 @@ libs/ui/src/lib/activities-table/activities-table.component.html - 284 + 298 libs/ui/src/lib/activities-table/activities-table.component.html - 320 + 334 libs/ui/src/lib/holdings-table/holdings-table.component.html @@ -548,7 +548,7 @@ libs/ui/src/lib/activities-table/activities-table.component.html - 483 + 497 @@ -588,7 +588,7 @@ libs/ui/src/lib/activities-table/activities-table.component.html - 513 + 527 libs/ui/src/lib/benchmark/benchmark.component.html @@ -628,7 +628,7 @@ apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 486 + 487 @@ -644,7 +644,7 @@ apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 197 + 198 apps/client/src/app/pages/portfolio/activities/create-or-update-activity-dialog/create-or-update-activity-dialog.html @@ -752,7 +752,7 @@ Find an account... libs/ui/src/lib/assistant/assistant.component.ts - 447 + 448 @@ -768,7 +768,7 @@ libs/ui/src/lib/activities-table/activities-table.component.html - 192 + 206 libs/ui/src/lib/historical-market-data-editor/historical-market-data-editor-dialog/historical-market-data-editor-dialog.html @@ -792,7 +792,7 @@ apps/client/src/app/components/holding-detail-dialog/holding-detail-dialog.html - 113 + 114 libs/ui/src/lib/historical-market-data-editor/historical-market-data-editor-dialog/historical-market-data-editor-dialog.html @@ -872,11 +872,11 @@ apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 235 + 236 apps/client/src/app/components/holding-detail-dialog/holding-detail-dialog.html - 221 + 222 libs/ui/src/lib/holdings-table/holdings-table.component.html @@ -888,7 +888,7 @@ Data Gathering Frequency apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 467 + 468 @@ -1008,11 +1008,11 @@ 行业 apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 280 + 281 apps/client/src/app/components/holding-detail-dialog/holding-detail-dialog.html - 270 + 271 @@ -1020,7 +1020,7 @@ 国家 apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 295 + 296 apps/client/src/app/components/admin-users/admin-users.html @@ -1028,7 +1028,7 @@ apps/client/src/app/components/holding-detail-dialog/holding-detail-dialog.html - 284 + 285 apps/client/src/app/components/user-detail-dialog/user-detail-dialog.html @@ -1040,15 +1040,15 @@ 行业 apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 301 + 302 apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 420 + 421 apps/client/src/app/components/holding-detail-dialog/holding-detail-dialog.html - 290 + 291 apps/client/src/app/pages/public/public-page.html @@ -1060,15 +1060,15 @@ 国家 apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 311 + 312 apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 431 + 432 apps/client/src/app/components/holding-detail-dialog/holding-detail-dialog.html - 302 + 303 @@ -1076,7 +1076,7 @@ 代码映射 apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 409 + 410 @@ -1116,7 +1116,7 @@ 刮削配置 apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 509 + 510 @@ -1124,7 +1124,7 @@ 笔记 apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 455 + 456 apps/client/src/app/pages/accounts/create-or-update-account-dialog/create-or-update-account-dialog.html @@ -1140,7 +1140,7 @@ libs/ui/src/lib/activities-table/activities-table.component.html - 370 + 384 @@ -1180,7 +1180,7 @@ 名称、代码或 ISIN apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 133 + 134 apps/client/src/app/components/admin-market-data/create-asset-profile-dialog/create-asset-profile-dialog.html @@ -1340,11 +1340,11 @@ 网址 apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 442 + 443 apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 588 + 589 apps/client/src/app/components/admin-platform/admin-platform.component.html @@ -1584,7 +1584,7 @@ 基准 apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 401 + 402 apps/client/src/app/components/benchmark-comparator/benchmark-comparator.component.ts @@ -1596,7 +1596,7 @@ 当前市场情绪 libs/ui/src/lib/fear-and-greed-index/fear-and-greed-index.component.html - 22 + 23 @@ -1844,7 +1844,7 @@ apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 167 + 168 apps/client/src/app/components/admin-settings/admin-settings.component.html @@ -1924,7 +1924,7 @@ 费用 apps/client/src/app/components/holding-detail-dialog/holding-detail-dialog.html - 210 + 211 apps/client/src/app/components/portfolio-summary/portfolio-summary.component.html @@ -2020,7 +2020,7 @@ 最低价格 apps/client/src/app/components/holding-detail-dialog/holding-detail-dialog.html - 131 + 132 @@ -2028,7 +2028,7 @@ 最高价格 apps/client/src/app/components/holding-detail-dialog/holding-detail-dialog.html - 149 + 150 @@ -2036,7 +2036,7 @@ 数量 apps/client/src/app/components/holding-detail-dialog/holding-detail-dialog.html - 159 + 160 apps/client/src/app/pages/portfolio/activities/create-or-update-activity-dialog/create-or-update-activity-dialog.html @@ -2044,7 +2044,7 @@ libs/ui/src/lib/activities-table/activities-table.component.html - 213 + 227 libs/ui/src/lib/holdings-table/holdings-table.component.html @@ -2056,7 +2056,7 @@ 报告数据故障 apps/client/src/app/components/holding-detail-dialog/holding-detail-dialog.html - 463 + 464 @@ -2236,7 +2236,7 @@ libs/ui/src/lib/assistant/assistant.component.ts - 365 + 366 @@ -2248,7 +2248,7 @@ libs/ui/src/lib/assistant/assistant.component.ts - 377 + 378 @@ -2260,7 +2260,7 @@ libs/ui/src/lib/assistant/assistant.component.ts - 387 + 388 @@ -2280,7 +2280,7 @@ libs/ui/src/lib/assistant/assistant.component.ts - 409 + 410 @@ -2300,7 +2300,7 @@ libs/ui/src/lib/assistant/assistant.component.ts - 415 + 416 @@ -2480,7 +2480,7 @@ 语言环境 apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 547 + 548 apps/client/src/app/components/user-account-settings/user-account-settings.html @@ -2800,7 +2800,7 @@ apps/client/src/app/components/holding-detail-dialog/holding-detail-dialog.html - 395 + 396 apps/client/src/app/components/user-detail-dialog/user-detail-dialog.html @@ -2904,7 +2904,7 @@ 市场数据 apps/client/src/app/components/holding-detail-dialog/holding-detail-dialog.html - 417 + 418 libs/common/src/lib/routes/routes.ts @@ -2944,11 +2944,11 @@ 概述 apps/client/src/app/components/account-detail-dialog/account-detail-dialog.html - 41 + 42 apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 114 + 115 apps/client/src/app/components/header/header.component.html @@ -2960,7 +2960,7 @@ apps/client/src/app/components/holding-detail-dialog/holding-detail-dialog.html - 47 + 48 apps/client/src/app/pages/admin/admin-page.component.ts @@ -3344,7 +3344,7 @@ 持仓 apps/client/src/app/components/account-detail-dialog/account-detail-dialog.html - 126 + 127 apps/client/src/app/components/home-holdings/home-holdings.html @@ -3396,7 +3396,7 @@ 市场 apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 403 + 404 apps/client/src/app/components/footer/footer.component.html @@ -3591,6 +3591,14 @@ 84 + + Do you really want to delete these activities? + Do you really want to delete these activities? + + libs/ui/src/lib/activities-table/activities-table.component.ts + 334 + + Why Ghostfolio? 为什么使用Ghostfolio @@ -3840,7 +3848,7 @@ Convert to apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 174 + 175 @@ -3916,15 +3924,15 @@ 活动 apps/client/src/app/components/account-detail-dialog/account-detail-dialog.html - 102 + 103 apps/client/src/app/components/account-detail-dialog/account-detail-dialog.html - 137 + 138 apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 244 + 245 apps/client/src/app/components/admin-overview/admin-overview.html @@ -3940,11 +3948,11 @@ apps/client/src/app/components/holding-detail-dialog/holding-detail-dialog.html - 233 + 234 apps/client/src/app/components/holding-detail-dialog/holding-detail-dialog.html - 361 + 362 apps/client/src/app/components/user-detail-dialog/user-detail-dialog.html @@ -3963,14 +3971,6 @@ 126 - - Do you really want to delete these activities? - 您确定要删除这些活动吗? - - libs/ui/src/lib/activities-table/activities-table.component.ts - 317 - - Update activity 更新活动 @@ -4048,7 +4048,7 @@ libs/ui/src/lib/activities-table/activities-table.component.html - 237 + 251 @@ -4060,11 +4060,11 @@ libs/ui/src/lib/activities-table/activities-table.component.html - 28 + 30 libs/ui/src/lib/activities-table/activities-table.component.html - 406 + 420 @@ -4076,11 +4076,11 @@ libs/ui/src/lib/activities-table/activities-table.component.html - 52 + 54 libs/ui/src/lib/activities-table/activities-table.component.html - 420 + 434 @@ -4416,11 +4416,11 @@ 股息 apps/client/src/app/components/account-detail-dialog/account-detail-dialog.html - 90 + 91 apps/client/src/app/components/holding-detail-dialog/holding-detail-dialog.html - 188 + 189 apps/client/src/app/components/portfolio-summary/portfolio-summary.component.html @@ -5265,11 +5265,11 @@ 导出活动记录 libs/ui/src/lib/activities-table/activities-table.component.html - 64 + 72 libs/ui/src/lib/activities-table/activities-table.component.html - 434 + 448 @@ -5277,11 +5277,11 @@ 将汇票导出为 ICS libs/ui/src/lib/activities-table/activities-table.component.html - 77 + 86 libs/ui/src/lib/activities-table/activities-table.component.html - 447 + 461 @@ -5289,7 +5289,7 @@ 草稿 libs/ui/src/lib/activities-table/activities-table.component.html - 167 + 181 @@ -5297,7 +5297,7 @@ 克隆 libs/ui/src/lib/activities-table/activities-table.component.html - 492 + 506 @@ -5305,7 +5305,7 @@ 将汇票导出为 ICS libs/ui/src/lib/activities-table/activities-table.component.html - 502 + 516 @@ -5313,7 +5313,11 @@ 您确实要删除此活动吗? libs/ui/src/lib/activities-table/activities-table.component.ts - 327 + 333 + + + libs/ui/src/lib/activities-table/activities-table.component.ts + 344 @@ -5445,7 +5449,7 @@ 利息 apps/client/src/app/components/account-detail-dialog/account-detail-dialog.html - 78 + 79 apps/client/src/app/components/portfolio-summary/portfolio-summary.component.html @@ -5513,7 +5517,7 @@ libs/ui/src/lib/activities-table/activities-table.component.html - 335 + 349 libs/ui/src/lib/i18n.ts @@ -5541,15 +5545,15 @@ apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 253 + 254 apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 349 + 350 apps/client/src/app/components/holding-detail-dialog/holding-detail-dialog.html - 244 + 245 apps/client/src/app/pages/portfolio/activities/create-or-update-activity-dialog/create-or-update-activity-dialog.html @@ -5573,15 +5577,15 @@ apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 262 + 263 apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 365 + 366 apps/client/src/app/components/holding-detail-dialog/holding-detail-dialog.html - 253 + 254 apps/client/src/app/pages/portfolio/activities/create-or-update-activity-dialog/create-or-update-activity-dialog.html @@ -5757,7 +5761,7 @@ apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 186 + 187 apps/client/src/app/components/admin-market-data/create-asset-profile-dialog/create-asset-profile-dialog.html @@ -5765,13 +5769,21 @@ apps/client/src/app/components/holding-detail-dialog/holding-detail-dialog.html - 322 + 323 libs/ui/src/lib/i18n.ts 35 + + Export + Export + + libs/ui/src/lib/activities-table/activities-table.component.html + 68 + + Tag 标签 @@ -5841,7 +5853,7 @@ libs/ui/src/lib/activities-table/activities-table.component.html - 261 + 275 libs/ui/src/lib/i18n.ts @@ -5901,7 +5913,7 @@ 股权 apps/client/src/app/components/account-detail-dialog/account-detail-dialog.html - 66 + 67 libs/ui/src/lib/i18n.ts @@ -6053,7 +6065,7 @@ Invested Capital apps/client/src/app/components/holding-detail-dialog/holding-detail-dialog.html - 173 + 174 apps/client/src/app/components/portfolio-summary/portfolio-summary.component.html @@ -6173,7 +6185,7 @@ 测试 apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 606 + 607 @@ -6249,7 +6261,7 @@ 关闭持仓 apps/client/src/app/components/holding-detail-dialog/holding-detail-dialog.html - 450 + 451 @@ -6301,7 +6313,7 @@ 今年迄今为止 libs/ui/src/lib/assistant/assistant.component.ts - 377 + 378 @@ -6309,7 +6321,7 @@ 本周至今 libs/ui/src/lib/assistant/assistant.component.ts - 369 + 370 @@ -6317,7 +6329,7 @@ 本月至今 libs/ui/src/lib/assistant/assistant.component.ts - 373 + 374 @@ -6329,7 +6341,7 @@ libs/ui/src/lib/assistant/assistant.component.ts - 373 + 374 @@ -6349,7 +6361,7 @@ libs/ui/src/lib/assistant/assistant.component.ts - 369 + 370 @@ -6405,7 +6417,7 @@ libs/ui/src/lib/assistant/assistant.component.ts - 387 + 388 @@ -6417,7 +6429,7 @@ libs/ui/src/lib/assistant/assistant.component.ts - 409 + 410 @@ -6458,7 +6470,7 @@ 数据收集 apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 629 + 630 apps/client/src/app/components/admin-overview/admin-overview.html @@ -6470,7 +6482,7 @@ Find a holding... libs/ui/src/lib/assistant/assistant.component.ts - 448 + 449 @@ -6538,11 +6550,11 @@ 活动 apps/client/src/app/components/account-detail-dialog/account-detail-dialog.html - 100 + 101 apps/client/src/app/components/holding-detail-dialog/holding-detail-dialog.html - 231 + 232 @@ -6550,7 +6562,7 @@ 股息收益率 apps/client/src/app/components/holding-detail-dialog/holding-detail-dialog.html - 198 + 199 @@ -6606,7 +6618,7 @@ 删除活动 libs/ui/src/lib/activities-table/activities-table.component.html - 92 + 105 @@ -6630,7 +6642,7 @@ Jump to a page... libs/ui/src/lib/assistant/assistant.component.ts - 449 + 450 @@ -6686,7 +6698,7 @@ 包含在 apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 399 + 400 @@ -6922,7 +6934,7 @@ 查看持仓 libs/ui/src/lib/activities-table/activities-table.component.html - 473 + 487 @@ -6978,11 +6990,11 @@ 取消 apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 162 + 163 apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 634 + 635 apps/client/src/app/components/admin-market-data/create-asset-profile-dialog/create-asset-profile-dialog.html @@ -7034,7 +7046,7 @@ 关闭 apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 636 + 637 apps/client/src/app/components/admin-market-data/create-asset-profile-dialog/create-asset-profile-dialog.html @@ -7126,7 +7138,7 @@ 含货币影响的涨跌 涨跌 apps/client/src/app/components/holding-detail-dialog/holding-detail-dialog.html - 63 + 64 @@ -7142,7 +7154,7 @@ 含货币影响的表现 表现 apps/client/src/app/components/holding-detail-dialog/holding-detail-dialog.html - 83 + 84 @@ -7288,6 +7300,10 @@ apps/client/src/app/components/admin-market-data/admin-market-data.html 270 + + libs/ui/src/lib/activities-table/activities-table.component.html + 101 + cannot be self-hosted @@ -7608,7 +7624,7 @@ 保存 apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 645 + 646 apps/client/src/app/components/admin-market-data/create-asset-profile-dialog/create-asset-profile-dialog.html @@ -7740,7 +7756,7 @@ 默认市场价格 apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 519 + 520 @@ -7748,7 +7764,7 @@ 模式 apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 556 + 557 @@ -7764,7 +7780,7 @@ 选择器 apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 572 + 573 @@ -7772,7 +7788,7 @@ HTTP 请求标头 apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 532 + 533 @@ -8017,7 +8033,7 @@ 应用 apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html - 154 + 155 @@ -8108,6 +8124,18 @@ 142 + + {VAR_PLURAL, plural, =1 {Activity} other {Activities}} + {VAR_PLURAL, plural, =1 {Activity} other {Activities}} + + libs/ui/src/lib/activities-table/activities-table.component.html + 69 + + + libs/ui/src/lib/activities-table/activities-table.component.html + 102 + + Log out 登出 @@ -8577,7 +8605,7 @@ 管理资产概况 apps/client/src/app/components/holding-detail-dialog/holding-detail-dialog.html - 478 + 479 @@ -8605,7 +8633,7 @@ apps/client/src/app/components/holding-detail-dialog/holding-detail-dialog.html - 101 + 102 diff --git a/apps/client/src/styles.scss b/apps/client/src/styles.scss index 6ef55cb32..739af30ae 100644 --- a/apps/client/src/styles.scss +++ b/apps/client/src/styles.scss @@ -411,6 +411,17 @@ ngx-skeleton-loader { .mdc-dialog__content { --mat-dialog-supporting-text-color: rgba(var(--dark-primary-text)); } + + @media (max-width: 575.98px) { + // Tabs fill the available width on mobile + .mat-mdc-tab-group { + .mat-mdc-tab { + flex-grow: 1; + min-width: unset; + padding: 0 0.5rem; + } + } + } } .mat-mdc-fab, diff --git a/apps/client/src/styles/theme.scss b/apps/client/src/styles/theme.scss index 75ecc210d..3f8125011 100644 --- a/apps/client/src/styles/theme.scss +++ b/apps/client/src/styles/theme.scss @@ -364,6 +364,12 @@ $gf-typography: ( ) ); + @include mat.pseudo-checkbox-overrides( + ( + full-selected-icon-color: var(--gf-theme-primary-500) + ) + ); + @include mat.slide-toggle-overrides( ( selected-focus-handle-color: var(--gf-theme-primary-500), diff --git a/libs/common/src/lib/calculation-helper.spec.ts b/libs/common/src/lib/calculation-helper.spec.ts index 69621ec0a..75a24edba 100644 --- a/libs/common/src/lib/calculation-helper.spec.ts +++ b/libs/common/src/lib/calculation-helper.spec.ts @@ -1,8 +1,30 @@ import { Big } from 'big.js'; +import { format } from 'date-fns'; -import { getAnnualizedPerformancePercent } from './calculation-helper'; +import { + getAnnualizedPerformancePercent, + getIntervalFromDateRange +} from './calculation-helper'; +import { DATE_FORMAT } from './helper'; describe('CalculationHelper', () => { + describe('interval from date range', () => { + it('Get interval of a calendar year', async () => { + const { endDate, startDate } = getIntervalFromDateRange({ + dateRange: '2024' + }); + + // The boundaries are expressed in the local time zone, therefore the + // calendar days must hold independently of the time zone the tests run in + expect(format(startDate, DATE_FORMAT)).toEqual('2023-12-31'); + expect(format(endDate, DATE_FORMAT)).toEqual('2024-12-31'); + + // The start date is exclusive, hence the first instant of the year is + // part of the interval + expect(startDate.getTime()).toEqual(new Date(2024, 0, 1).getTime() - 1); + }); + }); + describe('annualized performance percentage', () => { it('Get annualized performance', async () => { expect( diff --git a/libs/common/src/lib/calculation-helper.ts b/libs/common/src/lib/calculation-helper.ts index 2097fa52a..d49663d6c 100644 --- a/libs/common/src/lib/calculation-helper.ts +++ b/libs/common/src/lib/calculation-helper.ts @@ -7,6 +7,7 @@ import { startOfWeek, startOfYear, subDays, + subMilliseconds, subYears } from 'date-fns'; import { isFinite, isNumber } from 'lodash'; @@ -75,10 +76,16 @@ export function getIntervalFromDateRange(params: { break; case 'max': break; - default: + default: { // '2024', '2023', '2022', etc. - endDate = endOfYear(new Date(dateRange)); - startDate = max([startDate, new Date(dateRange)]); + const yearStartDate = new Date(Number(dateRange), 0, 1); + + // Derive the boundaries of the calendar year in the local time zone, as + // the consumers apply local time zone semantics. As the start date is + // exclusive, the last millisecond of the preceding year is used. + endDate = endOfYear(yearStartDate); + startDate = max([startDate, subMilliseconds(yearStartDate, 1)]); + } } return { endDate, startDate }; diff --git a/libs/common/src/lib/config.ts b/libs/common/src/lib/config.ts index 6b070755f..bb4ace0c5 100644 --- a/libs/common/src/lib/config.ts +++ b/libs/common/src/lib/config.ts @@ -67,6 +67,20 @@ export const DATA_GATHERING_QUEUE_PRIORITY_MEDIUM = Math.round( DATA_GATHERING_QUEUE_PRIORITY_LOW / 2 ); +/** + * The named date ranges, complemented by the calendar years like '2024', + * '2023', '2022', etc. + */ +export const DATE_RANGES = [ + '1d', + '1y', + '5y', + 'max', + 'mtd', + 'wtd', + 'ytd' +] as const; + export const PORTFOLIO_SNAPSHOT_COMPUTATION_QUEUE = 'PORTFOLIO_SNAPSHOT_COMPUTATION_QUEUE'; export const PORTFOLIO_SNAPSHOT_COMPUTATION_QUEUE_PRIORITY_HIGH = 1; @@ -253,6 +267,7 @@ export const PROPERTY_DEMO_USER_ID = 'DEMO_USER_ID'; export const PROPERTY_IS_DATA_GATHERING_ENABLED = 'IS_DATA_GATHERING_ENABLED'; export const PROPERTY_IS_READ_ONLY_MODE = 'IS_READ_ONLY_MODE'; export const PROPERTY_IS_USER_SIGNUP_ENABLED = 'IS_USER_SIGNUP_ENABLED'; +export const PROPERTY_MAX_DAILY_REQUESTS = 'MAX_DAILY_REQUESTS'; export const PROPERTY_OPENROUTER_MODEL = 'OPENROUTER_MODEL'; export const PROPERTY_OPENROUTER_MODEL_WEB_FETCH = 'OPENROUTER_MODEL_WEB_FETCH'; export const PROPERTY_PROXY_ROUTES = 'PROXY_ROUTES'; @@ -287,6 +302,8 @@ export const REPLACE_NAME_PARTS = [ 'Xtrackers (IE) Plc -' ]; +export const SEARCH_QUERY_MINIMUM_LENGTH = 2; + export const SECTORS = [ 'Basic Materials', 'Communication Services', @@ -326,6 +343,8 @@ export const TAG_ID_EXCLUDE_FROM_ANALYSIS = 'f2e868af-8333-459f-b161-cbc6544c24bd'; export const TAG_ID_DEMO = 'efa08cb3-9b9d-4974-ac68-db13a19c4874'; +export const THROTTLE_DAILY_KEY = 'daily'; +export const THROTTLE_DAILY_TTL = ms('1 day'); export const THROTTLE_DEFAULT_LIMIT = 10; export const THROTTLE_DEFAULT_TTL = ms('1 minute'); export const THROTTLE_SIGNUP_LIMIT = 5; diff --git a/libs/common/src/lib/dtos/create-account-with-balances.dto.ts b/libs/common/src/lib/dtos/create-account-with-balances.dto.ts index 2d1d3ed2a..8fc6f78e4 100644 --- a/libs/common/src/lib/dtos/create-account-with-balances.dto.ts +++ b/libs/common/src/lib/dtos/create-account-with-balances.dto.ts @@ -1,6 +1,6 @@ import { AccountBalance } from '@ghostfolio/common/interfaces'; -import { IsArray, IsOptional } from 'class-validator'; +import { IsArray, IsBoolean, IsOptional } from 'class-validator'; import { CreateAccountDto } from './create-account.dto'; @@ -8,4 +8,12 @@ export class CreateAccountWithBalancesDto extends CreateAccountDto { @IsArray() @IsOptional() balances?: AccountBalance[]; + + /** + * @deprecated Accepted for backward compatibility with old export files + * and mapped to the "Exclude from Analysis" tag (`TAG_ID_EXCLUDE_FROM_ANALYSIS`) + */ + @IsBoolean() + @IsOptional() + isExcluded?: boolean; } diff --git a/libs/common/src/lib/dtos/create-account.dto.ts b/libs/common/src/lib/dtos/create-account.dto.ts index b04193020..e4a0c64fe 100644 --- a/libs/common/src/lib/dtos/create-account.dto.ts +++ b/libs/common/src/lib/dtos/create-account.dto.ts @@ -4,7 +4,6 @@ import { Transform, TransformFnParams } from 'class-transformer'; import { ArrayUnique, IsArray, - IsBoolean, IsNumber, IsOptional, IsString, @@ -30,13 +29,6 @@ export class CreateAccountDto { @IsString() id?: string; - /** - * @deprecated Use the "Exclude from Analysis" tag (`TAG_ID_EXCLUDE_FROM_ANALYSIS`) instead - */ - @IsBoolean() - @IsOptional() - isExcluded?: boolean; - @IsString() name: string; diff --git a/libs/common/src/lib/dtos/update-account.dto.ts b/libs/common/src/lib/dtos/update-account.dto.ts index 7a33da2df..a6a3e6ac6 100644 --- a/libs/common/src/lib/dtos/update-account.dto.ts +++ b/libs/common/src/lib/dtos/update-account.dto.ts @@ -4,7 +4,6 @@ import { Transform, TransformFnParams } from 'class-transformer'; import { ArrayUnique, IsArray, - IsBoolean, IsNumber, IsOptional, IsString, @@ -29,13 +28,6 @@ export class UpdateAccountDto { @IsString() id: string; - /** - * @deprecated Use the "Exclude from Analysis" tag (`TAG_ID_EXCLUDE_FROM_ANALYSIS`) instead - */ - @IsBoolean() - @IsOptional() - isExcluded?: boolean; - @IsString() name: string; diff --git a/libs/common/src/lib/helper.ts b/libs/common/src/lib/helper.ts index b2a3ab419..db1d3c2a2 100644 --- a/libs/common/src/lib/helper.ts +++ b/libs/common/src/lib/helper.ts @@ -41,6 +41,7 @@ import { DERIVED_CURRENCIES, ghostfolioFearAndGreedIndexSymbolCryptocurrencies, ghostfolioFearAndGreedIndexSymbolStocks, + SEARCH_QUERY_MINIMUM_LENGTH, TAG_ID_EXCLUDE_FROM_ANALYSIS } from './config'; import { @@ -455,12 +456,8 @@ export function interpolate(template: string, context: any) { }); } -export function isAccountExcluded(account: { - isExcluded: boolean; - tags?: { id: string }[]; -}) { +export function isAccountExcluded(account: { tags?: { id: string }[] }) { return ( - account.isExcluded || account.tags?.some(({ id }) => { return id === TAG_ID_EXCLUDE_FROM_ANALYSIS; }) === true @@ -509,6 +506,10 @@ export function isRootCurrency(aCurrency: string) { }); } +export function isValidSearchQuery(aQuery: string) { + return aQuery?.trim().length >= SEARCH_QUERY_MINIMUM_LENGTH; +} + export function parseDate(date: string): Date | undefined { if (!date) { return undefined; diff --git a/libs/common/src/lib/interfaces/responses/portfolio-performance-response.interface.ts b/libs/common/src/lib/interfaces/responses/portfolio-performance-response.interface.ts index 104302de3..8177bd533 100644 --- a/libs/common/src/lib/interfaces/responses/portfolio-performance-response.interface.ts +++ b/libs/common/src/lib/interfaces/responses/portfolio-performance-response.interface.ts @@ -5,11 +5,5 @@ import { ResponseError } from './errors.interface'; export interface PortfolioPerformanceResponse extends ResponseError { chart?: HistoricalDataItem[]; dateOfFirstActivity: Date; - - /** - * @deprecated Use `dateOfFirstActivity` instead - */ - firstOrderDate: Date; - performance: PortfolioPerformance; } diff --git a/libs/common/src/lib/types/date-range.type.ts b/libs/common/src/lib/types/date-range.type.ts index 09fa3c15b..5c25cfe39 100644 --- a/libs/common/src/lib/types/date-range.type.ts +++ b/libs/common/src/lib/types/date-range.type.ts @@ -1,9 +1,3 @@ -export type DateRange = - | '1d' - | '1y' - | '5y' - | 'max' - | 'mtd' - | 'wtd' - | 'ytd' - | string; // '2024', '2023', '2022', etc. +import type { DATE_RANGES } from '../config'; + +export type DateRange = (typeof DATE_RANGES)[number] | string; // '2024', '2023', '2022', etc. diff --git a/libs/ui/src/lib/accounts-table/accounts-table.component.stories.ts b/libs/ui/src/lib/accounts-table/accounts-table.component.stories.ts index 62a01164f..a38ca826c 100644 --- a/libs/ui/src/lib/accounts-table/accounts-table.component.stories.ts +++ b/libs/ui/src/lib/accounts-table/accounts-table.component.stories.ts @@ -24,7 +24,6 @@ const accounts = [ createdAt: new Date('2025-06-01T06:52:49.063Z'), currency: 'USD', id: '460d7401-ca43-4ed4-b08e-349f1822e9db', - isExcluded: false, name: 'Coinbase Account', platform: { id: '8dc24b88-bb92-4152-af25-fe6a31643e26', @@ -46,7 +45,6 @@ const accounts = [ createdAt: new Date('2025-06-01T06:48:53.055Z'), currency: 'USD', id: '6d773e31-0583-4c85-a247-e69870b4f1ee', - isExcluded: false, name: 'Private Banking Account', platform: { id: '43e8fcd1-5b79-4100-b678-d2229bd1660d', @@ -68,7 +66,6 @@ const accounts = [ createdAt: new Date('2025-05-31T13:00:13.940Z'), currency: 'USD', id: '776bd1e9-b2f6-4f7e-933d-18756c2f0625', - isExcluded: false, name: 'Trading Account', platform: { id: '9da3a8a7-4795-43e3-a6db-ccb914189737', diff --git a/libs/ui/src/lib/activities-table/activities-table.component.html b/libs/ui/src/lib/activities-table/activities-table.component.html index 3d91852a0..ffcc77832 100644 --- a/libs/ui/src/lib/activities-table/activities-table.component.html +++ b/libs/ui/src/lib/activities-table/activities-table.component.html @@ -58,12 +58,19 @@ } @@ -84,14 +91,19 @@ diff --git a/libs/ui/src/lib/activities-table/activities-table.component.stories.ts b/libs/ui/src/lib/activities-table/activities-table.component.stories.ts index 057747cf1..0136545cf 100644 --- a/libs/ui/src/lib/activities-table/activities-table.component.stories.ts +++ b/libs/ui/src/lib/activities-table/activities-table.component.stories.ts @@ -44,7 +44,6 @@ const activities: Activity[] = [ createdAt: new Date('2025-05-31T13:00:13.940Z'), currency: 'USD', id: '776bd1e9-b2f6-4f7e-933d-18756c2f0625', - isExcluded: false, name: 'Trading Account', platformId: '9da3a8a7-4795-43e3-a6db-ccb914189737', updatedAt: new Date('2025-06-01T06:53:10.569Z'), @@ -111,7 +110,6 @@ const activities: Activity[] = [ createdAt: new Date('2025-05-31T13:00:13.940Z'), currency: 'USD', id: '776bd1e9-b2f6-4f7e-933d-18756c2f0625', - isExcluded: false, name: 'Trading Account', platformId: '9da3a8a7-4795-43e3-a6db-ccb914189737', updatedAt: new Date('2025-06-01T06:53:10.569Z'), @@ -178,7 +176,6 @@ const activities: Activity[] = [ createdAt: new Date('2025-05-31T13:00:13.940Z'), currency: 'USD', id: '776bd1e9-b2f6-4f7e-933d-18756c2f0625', - isExcluded: false, name: 'Trading Account', platformId: '9da3a8a7-4795-43e3-a6db-ccb914189737', updatedAt: new Date('2025-06-01T06:53:10.569Z'), @@ -245,7 +242,6 @@ const activities: Activity[] = [ createdAt: new Date('2025-05-31T13:00:13.940Z'), currency: 'USD', id: '776bd1e9-b2f6-4f7e-933d-18756c2f0625', - isExcluded: false, name: 'Trading Account', platformId: '9da3a8a7-4795-43e3-a6db-ccb914189737', updatedAt: new Date('2025-06-01T06:53:10.569Z'), @@ -312,7 +308,6 @@ const activities: Activity[] = [ createdAt: new Date('2025-05-31T13:00:13.940Z'), currency: 'USD', id: '776bd1e9-b2f6-4f7e-933d-18756c2f0625', - isExcluded: false, name: 'Trading Account', platformId: '9da3a8a7-4795-43e3-a6db-ccb914189737', updatedAt: new Date('2025-06-01T06:53:10.569Z'), diff --git a/libs/ui/src/lib/activities-table/activities-table.component.ts b/libs/ui/src/lib/activities-table/activities-table.component.ts index 573c8c93a..6fac6d162 100644 --- a/libs/ui/src/lib/activities-table/activities-table.component.ts +++ b/libs/ui/src/lib/activities-table/activities-table.component.ts @@ -282,6 +282,20 @@ export class GfActivitiesTableComponent implements AfterViewInit, OnInit { ); } + public canDeleteActivities() { + return ( + (this.dataSource()?.data.length ?? 0) > 0 && + this.hasPermissionToDeleteActivity + ); + } + + public canExportActivities() { + return ( + (this.dataSource()?.data.length ?? 0) > 0 && + this.hasPermissionToExportActivities + ); + } + public isExcludedFromAnalysis(activity: Activity) { return ( (activity.account && isAccountExcluded(activity.account)) ?? @@ -314,7 +328,10 @@ export class GfActivitiesTableComponent implements AfterViewInit, OnInit { this.activitiesDeleted.emit(); }, confirmType: ConfirmationDialogType.Warn, - title: $localize`Do you really want to delete these activities?` + title: + this.totalItems === 1 + ? $localize`Do you really want to delete this activity?` + : $localize`Do you really want to delete these ${this.totalItems}:count: activities?` }); } diff --git a/libs/ui/src/lib/assistant/assistant.component.ts b/libs/ui/src/lib/assistant/assistant.component.ts index 471420937..9ef6c9f1c 100644 --- a/libs/ui/src/lib/assistant/assistant.component.ts +++ b/libs/ui/src/lib/assistant/assistant.component.ts @@ -202,6 +202,11 @@ export class GfAssistantComponent implements OnChanges, OnDestroy, OnInit { this.searchFormControl.valueChanges .pipe( map((searchTerm) => { + return searchTerm?.trim(); + }), + debounceTime(300), + distinctUntilChanged(), + tap(() => { this.isLoading = { accounts: true, assetProfiles: true, @@ -216,11 +221,7 @@ export class GfAssistantComponent implements OnChanges, OnDestroy, OnInit { }; this.changeDetectorRef.markForCheck(); - - return searchTerm?.trim(); }), - debounceTime(300), - distinctUntilChanged(), switchMap((searchTerm) => { const results = { accounts: [], diff --git a/libs/ui/src/lib/services/data.service.ts b/libs/ui/src/lib/services/data.service.ts index 23c654ae6..bc1512550 100644 --- a/libs/ui/src/lib/services/data.service.ts +++ b/libs/ui/src/lib/services/data.service.ts @@ -329,8 +329,24 @@ export class DataService { return this.http.delete(`/api/v1/account-balance/${aId}`); } - public deleteActivities({ filters }: { filters?: Filter[] }) { - const params = this.buildFiltersAsQueryParams({ filters }); + public deleteActivities({ + activityTypes, + filters, + range + }: { + activityTypes?: string[]; + filters?: Filter[]; + range?: DateRange; + }) { + let params = this.buildFiltersAsQueryParams({ filters }); + + if (activityTypes?.length) { + params = params.append('activityTypes', activityTypes.join(',')); + } + + if (range) { + params = params.append('range', range); + } return this.http.delete('/api/v1/activities', { params }); } @@ -459,11 +475,15 @@ export class DataService { public fetchExport({ activityIds, activityTypes, - filters + filters, + range, + withActivityIds = false }: { activityIds?: string[]; activityTypes?: string[]; filters?: Filter[]; + range?: DateRange; + withActivityIds?: boolean; } = {}) { let params = this.buildFiltersAsQueryParams({ filters }); @@ -475,9 +495,26 @@ export class DataService { params = params.append('activityTypes', activityTypes.join(',')); } - return this.http.get('/api/v1/export', { - params - }); + if (range) { + params = params.append('range', range); + } + + return this.http + .get('/api/v1/export', { + params + }) + .pipe( + map((exportResponse) => { + if (!withActivityIds) { + for (const activity of exportResponse.activities) { + delete (activity as Omit & { id?: string }) + .id; + } + } + + return exportResponse; + }) + ); } public fetchHoldingDetail({ @@ -509,8 +546,7 @@ export class DataService { public fetchInfo(): InfoItem { const info = cloneDeep((window as any).info); const utmSource = window.localStorage.getItem('utm_source') as - | 'ios' - | 'trusted-web-activity'; + 'ios' | 'trusted-web-activity'; info.globalPermissions = filterGlobalPermissions( info.globalPermissions, @@ -949,8 +985,7 @@ export class DataService { public updateInfo() { this.http.get('/api/v1/info').subscribe((info) => { const utmSource = window.localStorage.getItem('utm_source') as - | 'ios' - | 'trusted-web-activity'; + 'ios' | 'trusted-web-activity'; info.globalPermissions = filterGlobalPermissions( info.globalPermissions, diff --git a/libs/ui/src/lib/symbol-autocomplete/symbol-autocomplete.component.ts b/libs/ui/src/lib/symbol-autocomplete/symbol-autocomplete.component.ts index cab911ef2..704c4ed44 100644 --- a/libs/ui/src/lib/symbol-autocomplete/symbol-autocomplete.component.ts +++ b/libs/ui/src/lib/symbol-autocomplete/symbol-autocomplete.component.ts @@ -41,6 +41,7 @@ import { debounceTime, distinctUntilChanged, filter, + map, switchMap } from 'rxjs/operators'; @@ -128,6 +129,9 @@ export class GfSymbolAutocompleteComponent this.control.valueChanges .pipe( + map((query) => { + return isString(query) ? query.trim() : query; + }), filter((query) => { if (query?.length === 0) { this.showDefaultOptions(); @@ -137,13 +141,13 @@ export class GfSymbolAutocompleteComponent return isString(query); }), + debounceTime(400), + distinctUntilChanged(), tap(() => { this.isLoading = true; this.changeDetectorRef.markForCheck(); }), - debounceTime(400), - distinctUntilChanged(), takeUntilDestroyed(this.destroyRef), switchMap((query: string) => { return this.dataService.fetchSymbols({ diff --git a/package-lock.json b/package-lock.json index f43ed2cbf..9009b4f29 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1,12 +1,12 @@ { "name": "ghostfolio", - "version": "3.37.0", + "version": "3.39.0", "lockfileVersion": 3, "requires": true, "packages": { "": { "name": "ghostfolio", - "version": "3.37.0", + "version": "3.39.0", "hasInstallScript": true, "license": "AGPL-3.0", "dependencies": { @@ -43,8 +43,8 @@ "@nestjs/serve-static": "5.0.5", "@nestjs/throttler": "6.5.0", "@openrouter/ai-sdk-provider": "3.0.0", - "@prisma/adapter-pg": "7.8.0", - "@prisma/client": "7.8.0", + "@prisma/adapter-pg": "7.9.1", + "@prisma/client": "7.9.1", "@simplewebauthn/browser": "13.3.0", "@simplewebauthn/server": "13.3.1", "ai": "7.0.37", @@ -127,7 +127,7 @@ "@nx/storybook": "23.0.2", "@nx/web": "23.0.2", "@nx/workspace": "23.0.2", - "@prisma/config": "7.8.0", + "@prisma/config": "7.9.1", "@schematics/angular": "21.2.6", "@storybook/addon-docs": "10.1.10", "@storybook/addon-themes": "10.1.10", @@ -157,7 +157,7 @@ "nx": "23.0.2", "prettier": "3.9.6", "prettier-plugin-organize-attributes": "1.0.0", - "prisma": "7.8.0", + "prisma": "7.9.1", "react": "18.2.0", "react-dom": "18.2.0", "replace-in-file": "8.4.0", @@ -3908,33 +3908,33 @@ } }, "node_modules/@electric-sql/pglite": { - "version": "0.4.1", - "resolved": "https://registry.npmjs.org/@electric-sql/pglite/-/pglite-0.4.1.tgz", - "integrity": "sha512-mZ9NzzUSYPOCnxHH1oAHPRzoMFJHY472raDKwXl/+6oPbpdJ7g8LsCN4FSaIIfkiCKHhb3iF/Zqo3NYxaIhU7Q==", + "version": "0.4.3", + "resolved": "https://registry.npmjs.org/@electric-sql/pglite/-/pglite-0.4.3.tgz", + "integrity": "sha512-ichuWTgtd4mOM1G4SpyGJa5trT03lWbMypDV0fUXUCXg5hiHqVAz/bZyV68NqmkLB7WcYmj1RMJVSp8HV/v/ZQ==", "devOptional": true, "license": "Apache-2.0" }, "node_modules/@electric-sql/pglite-socket": { - "version": "0.1.1", - "resolved": "https://registry.npmjs.org/@electric-sql/pglite-socket/-/pglite-socket-0.1.1.tgz", - "integrity": "sha512-p2hoXw3Z3LQHwTeikdZNsFBOvXGqKY2hk51BBw+8NKND8eoH+8LFOtW9Z8CQKmTJ2qqGYu82ipqiyFZOTTXNfw==", + "version": "0.1.3", + "resolved": "https://registry.npmjs.org/@electric-sql/pglite-socket/-/pglite-socket-0.1.3.tgz", + "integrity": "sha512-LAciWM0M1dCL8hlsxu2venbVZcdxema0BtDfpWYVqr+Y468UADw0pFWidhKw1M8sfJ8rdLT71tjMmnirf/IZRQ==", "devOptional": true, "license": "Apache-2.0", "bin": { "pglite-server": "dist/scripts/server.js" }, "peerDependencies": { - "@electric-sql/pglite": "0.4.1" + "@electric-sql/pglite": "0.4.3" } }, "node_modules/@electric-sql/pglite-tools": { - "version": "0.3.1", - "resolved": "https://registry.npmjs.org/@electric-sql/pglite-tools/-/pglite-tools-0.3.1.tgz", - "integrity": "sha512-C+T3oivmy9bpQvSxVqXA1UDY8cB9Eb9vZHL9zxWwEUfDixbXv4G3r2LjoTdR33LD8aomR3O9ZXEO3XEwr/cUCA==", + "version": "0.3.3", + "resolved": "https://registry.npmjs.org/@electric-sql/pglite-tools/-/pglite-tools-0.3.3.tgz", + "integrity": "sha512-AlzLJTRJ8+UFgK8CmxIpyIpJ0+YaFw02IiOSdYrqxwPXdSyeIShz8aa9Tq+tYFXdPwcaMp/Fc80mQZ1dkOQ/wg==", "devOptional": true, "license": "Apache-2.0", "peerDependencies": { - "@electric-sql/pglite": "0.4.1" + "@electric-sql/pglite": "0.4.3" } }, "node_modules/@emnapi/core": { @@ -10041,24 +10041,24 @@ } }, "node_modules/@prisma/adapter-pg": { - "version": "7.8.0", - "resolved": "https://registry.npmjs.org/@prisma/adapter-pg/-/adapter-pg-7.8.0.tgz", - "integrity": "sha512-ygb3UkerK3v8MDpXVgCISdRNDozpxh6+JVJgiIGbSr5KBgz10LLf5ejUskPGoXlsIjxsOu6nuy1JVQr2EKGSlg==", + "version": "7.9.1", + "resolved": "https://registry.npmjs.org/@prisma/adapter-pg/-/adapter-pg-7.9.1.tgz", + "integrity": "sha512-Ho2RK1KanQxLNSC0sR5bpiiVep10sWPLXCcxK+KXfI/Q69TMRbiafSvLPv3V9snimX72rMCqGlyJ4sBO4lKTAw==", "license": "Apache-2.0", "dependencies": { - "@prisma/driver-adapter-utils": "7.8.0", + "@prisma/driver-adapter-utils": "7.9.1", "@types/pg": "^8.16.0", "pg": "^8.16.3", "postgres-array": "3.0.4" } }, "node_modules/@prisma/client": { - "version": "7.8.0", - "resolved": "https://registry.npmjs.org/@prisma/client/-/client-7.8.0.tgz", - "integrity": "sha512-HFp3Dawv/3sU3JtlPha90IB+48lS7zHiH4LKZPjmcE8YH5P9DOXGPvo8dqOtO7MqLDd1p2hOWMcFlRT1DMblHw==", + "version": "7.9.1", + "resolved": "https://registry.npmjs.org/@prisma/client/-/client-7.9.1.tgz", + "integrity": "sha512-+xgrh2EhJVF79wC0yX5G4PI1Rdcm7Qn/nekNQ+t/O153wtNggruHal+fXHSa0QE+Tp/Cw5wvxeCEhZZ59xGm8Q==", "license": "Apache-2.0", "dependencies": { - "@prisma/client-runtime-utils": "7.8.0" + "@prisma/client-runtime-utils": "7.9.1" }, "engines": { "node": "^20.19 || ^22.12 || >=24.0" @@ -10077,15 +10077,15 @@ } }, "node_modules/@prisma/client-runtime-utils": { - "version": "7.8.0", - "resolved": "https://registry.npmjs.org/@prisma/client-runtime-utils/-/client-runtime-utils-7.8.0.tgz", - "integrity": "sha512-5NQZztQ0oY/ADFkmd9gPuweH5A1/CCY8YQPorLLO0Mu6a87mY5gsnDkzmFmIHs9NFaLnZojzgddFVN4RpKYrdw==", + "version": "7.9.1", + "resolved": "https://registry.npmjs.org/@prisma/client-runtime-utils/-/client-runtime-utils-7.9.1.tgz", + "integrity": "sha512-mVIBGYdO5CFmK0HvjxrtfIyQQcPdb88pSCeVQriVQPVZyDovIWblpHfOgcS8QO187j3QF0ePArH8qPhp0AU2vg==", "license": "Apache-2.0" }, "node_modules/@prisma/config": { - "version": "7.8.0", - "resolved": "https://registry.npmjs.org/@prisma/config/-/config-7.8.0.tgz", - "integrity": "sha512-HFESzd9rx2ZQxlK+TL7tu1HPvCqrHiL6LCxYykI2c34mvaUuIVVl3lYuicJD/MNnzgPnyeBEMlK4WTomJCV5jw==", + "version": "7.9.1", + "resolved": "https://registry.npmjs.org/@prisma/config/-/config-7.9.1.tgz", + "integrity": "sha512-4znKhxTmXmuPye9Z6pbIyYb5VZlkZ05qG1L6Dr4g+7oTwc6V50Bs9XirFBDdjWt+H/AabMn9aUnxBcvj8z05aA==", "devOptional": true, "license": "Apache-2.0", "dependencies": { @@ -10096,97 +10096,95 @@ } }, "node_modules/@prisma/debug": { - "version": "7.8.0", - "resolved": "https://registry.npmjs.org/@prisma/debug/-/debug-7.8.0.tgz", - "integrity": "sha512-p+QZReysDUqXC+mk17q9a+Y/qzh4c2KYliDK30buYUyfrGeTGSyfmc0AIrJRhZJrLHhRiJa9Au/J72h3C+szvA==", + "version": "7.9.1", + "resolved": "https://registry.npmjs.org/@prisma/debug/-/debug-7.9.1.tgz", + "integrity": "sha512-/cpVZ4itxtcgB8GHBvZtcmuEjq+lWsLrRJxFMbwZrT1RIdtuKmUm7PPGo/wzfbYpBrk+9WmmBE8CHJw2rybKDQ==", "license": "Apache-2.0" }, "node_modules/@prisma/dev": { - "version": "0.24.3", - "resolved": "https://registry.npmjs.org/@prisma/dev/-/dev-0.24.3.tgz", - "integrity": "sha512-ffHlQuKXZiaDt9Go0OnCTdJZrHxK0k7omJKNV86/VjpsXu5EIHZLK0T7JSWgvNlJwh56kW9JFu9v0qJciFzepg==", + "version": "0.24.17", + "resolved": "https://registry.npmjs.org/@prisma/dev/-/dev-0.24.17.tgz", + "integrity": "sha512-UvdZzmpFwknnfreh6Jije84ekkYGPYEJhXG1tFzCsCfQyzJifrOo38eZc0qajzvaC6OLUOrN9ML5XfCnEZL9DA==", "devOptional": true, "license": "ISC", "dependencies": { - "@electric-sql/pglite": "0.4.1", - "@electric-sql/pglite-socket": "0.1.1", - "@electric-sql/pglite-tools": "0.3.1", - "@hono/node-server": "1.19.11", + "@electric-sql/pglite": "0.4.3", + "@electric-sql/pglite-socket": "0.1.3", + "@electric-sql/pglite-tools": "0.3.3", "@prisma/get-platform": "7.2.0", "@prisma/query-plan-executor": "7.2.0", - "@prisma/streams-local": "0.1.2", + "@prisma/streams-local": "0.1.11", + "find-my-way": "9.7.0", "foreground-child": "3.3.1", "get-port-please": "3.2.0", - "hono": "^4.12.8", - "http-status-codes": "2.3.0", "pathe": "2.0.3", "proper-lockfile": "4.1.2", "remeda": "2.33.4", "std-env": "3.10.0", - "valibot": "1.2.0", + "valibot": "1.4.2", "zeptomatch": "2.1.0" } }, "node_modules/@prisma/driver-adapter-utils": { - "version": "7.8.0", - "resolved": "https://registry.npmjs.org/@prisma/driver-adapter-utils/-/driver-adapter-utils-7.8.0.tgz", - "integrity": "sha512-/Q13o0ZT0rjc1Xk0Q9KhZYwuq2EW/vSbWUBKfgEKkaCuB/Sg6bqnjmTZqC5cD4d6y1vfFAEwBRzfzoSMIVJ55A==", + "version": "7.9.1", + "resolved": "https://registry.npmjs.org/@prisma/driver-adapter-utils/-/driver-adapter-utils-7.9.1.tgz", + "integrity": "sha512-vmHehG7nn/heW32DXXpp13DxxAxVVe6n250oEt3dOL2E/4bt3olktKZN0mzSuxMMronyMSkbeW2uCOn3F4g8RQ==", "license": "Apache-2.0", "dependencies": { - "@prisma/debug": "7.8.0" + "@prisma/debug": "7.9.1" } }, "node_modules/@prisma/engines": { - "version": "7.8.0", - "resolved": "https://registry.npmjs.org/@prisma/engines/-/engines-7.8.0.tgz", - "integrity": "sha512-jx3rCnNNrt5uzbkKlegtQ2GZHxSlihMCzutgT/BP6UIDF1r9tDI39hV/0T/cHZgzJ3ELbuQPXlVZy+Y1n0pcgw==", + "version": "7.9.1", + "resolved": "https://registry.npmjs.org/@prisma/engines/-/engines-7.9.1.tgz", + "integrity": "sha512-UprXSMNXx2NF5ow4pqaQtE8OuBz6K78B0wc0tn2L28G5r933iWp1DR9Do2qWrsNvvFIP3x6mpEWnQtckMO0Uhg==", "devOptional": true, "hasInstallScript": true, "license": "Apache-2.0", "dependencies": { - "@prisma/debug": "7.8.0", - "@prisma/engines-version": "7.8.0-6.3c6e192761c0362d496ed980de936e2f3cebcd3a", - "@prisma/fetch-engine": "7.8.0", - "@prisma/get-platform": "7.8.0" + "@prisma/debug": "7.9.1", + "@prisma/engines-version": "7.9.0-1.e922089b7d7502aff4249d5da3420f6fa55fc6ad", + "@prisma/fetch-engine": "7.9.1", + "@prisma/get-platform": "7.9.1" } }, "node_modules/@prisma/engines-version": { - "version": "7.8.0-6.3c6e192761c0362d496ed980de936e2f3cebcd3a", - "resolved": "https://registry.npmjs.org/@prisma/engines-version/-/engines-version-7.8.0-6.3c6e192761c0362d496ed980de936e2f3cebcd3a.tgz", - "integrity": "sha512-fJPQxCkLgA5EayWaW8eArgCvjJ+N+Kz3VyeNKMEeYiQC4alNkxRKFVAGxv/ZUzuJISKqdw+zGeDbS6mn6RCPOA==", + "version": "7.9.0-1.e922089b7d7502aff4249d5da3420f6fa55fc6ad", + "resolved": "https://registry.npmjs.org/@prisma/engines-version/-/engines-version-7.9.0-1.e922089b7d7502aff4249d5da3420f6fa55fc6ad.tgz", + "integrity": "sha512-2BsPPFksz3CQUXG6af3rVCtJKg6+JJGJTtfgu2fU8DdXhOfkBjulCq8mwybCd6ge0/jhZq2kOtLAbmUDMyI1nA==", "devOptional": true, "license": "Apache-2.0" }, "node_modules/@prisma/engines/node_modules/@prisma/get-platform": { - "version": "7.8.0", - "resolved": "https://registry.npmjs.org/@prisma/get-platform/-/get-platform-7.8.0.tgz", - "integrity": "sha512-WlxgRGnolL8VH2EmkH1R/DkKNr/mVdS3G2h42IZFFZ3eUrH9OT6t73kIOSlkkrv50wG123Iq8d96ufv5LlZktw==", + "version": "7.9.1", + "resolved": "https://registry.npmjs.org/@prisma/get-platform/-/get-platform-7.9.1.tgz", + "integrity": "sha512-PK8R60YZRQvYxBrGG9i7l2/rFyzy+2MuI1dKtmtrCqPH8YpiJx/MfiC7LRzX5786rZDEv7BngcjfIJW4/9ADuw==", "devOptional": true, "license": "Apache-2.0", "dependencies": { - "@prisma/debug": "7.8.0" + "@prisma/debug": "7.9.1" } }, "node_modules/@prisma/fetch-engine": { - "version": "7.8.0", - "resolved": "https://registry.npmjs.org/@prisma/fetch-engine/-/fetch-engine-7.8.0.tgz", - "integrity": "sha512-gwB0Euiz/DDRyxFRpLXYlK3RfaZUj1c5dAYMuhZYfApg7arknJlcb9bIsOHDppJmbqYaVA+yBIiFMDBfprsNPQ==", + "version": "7.9.1", + "resolved": "https://registry.npmjs.org/@prisma/fetch-engine/-/fetch-engine-7.9.1.tgz", + "integrity": "sha512-9DwxrNTeT25Orbu9CWh0CZvVlyY1lmscpbaeLZcOnuR7zcuFrt91YSmmOfIm7zJ08YOZ6mVzURKwLoMwEBcK8w==", "devOptional": true, "license": "Apache-2.0", "dependencies": { - "@prisma/debug": "7.8.0", - "@prisma/engines-version": "7.8.0-6.3c6e192761c0362d496ed980de936e2f3cebcd3a", - "@prisma/get-platform": "7.8.0" + "@prisma/debug": "7.9.1", + "@prisma/engines-version": "7.9.0-1.e922089b7d7502aff4249d5da3420f6fa55fc6ad", + "@prisma/get-platform": "7.9.1" } }, "node_modules/@prisma/fetch-engine/node_modules/@prisma/get-platform": { - "version": "7.8.0", - "resolved": "https://registry.npmjs.org/@prisma/get-platform/-/get-platform-7.8.0.tgz", - "integrity": "sha512-WlxgRGnolL8VH2EmkH1R/DkKNr/mVdS3G2h42IZFFZ3eUrH9OT6t73kIOSlkkrv50wG123Iq8d96ufv5LlZktw==", + "version": "7.9.1", + "resolved": "https://registry.npmjs.org/@prisma/get-platform/-/get-platform-7.9.1.tgz", + "integrity": "sha512-PK8R60YZRQvYxBrGG9i7l2/rFyzy+2MuI1dKtmtrCqPH8YpiJx/MfiC7LRzX5786rZDEv7BngcjfIJW4/9ADuw==", "devOptional": true, "license": "Apache-2.0", "dependencies": { - "@prisma/debug": "7.8.0" + "@prisma/debug": "7.9.1" } }, "node_modules/@prisma/get-platform": { @@ -10214,9 +10212,9 @@ "license": "Apache-2.0" }, "node_modules/@prisma/streams-local": { - "version": "0.1.2", - "resolved": "https://registry.npmjs.org/@prisma/streams-local/-/streams-local-0.1.2.tgz", - "integrity": "sha512-l49yTxKKF2odFxaAXTmwmkBKL3+bVQ1tFOooGifu4xkdb9NMNLxHj27XAhTylWZod8I+ISGM5erU1xcl/oBCtg==", + "version": "0.1.11", + "resolved": "https://registry.npmjs.org/@prisma/streams-local/-/streams-local-0.1.11.tgz", + "integrity": "sha512-0TcebL559MByKqTJ+SsrFIEg228iw8UCVRFckzgfRSiJqczhs+MuAgWOF9lnOIV/IVqvu+KMnFTH0eDeTQMpUg==", "devOptional": true, "license": "Apache-2.0", "dependencies": { @@ -10226,7 +10224,7 @@ "proper-lockfile": "^4.1.2" }, "engines": { - "bun": ">=1.3.6", + "bun": ">=1.2.0", "node": ">=22.0.0" } }, @@ -10244,14 +10242,23 @@ } }, "node_modules/@prisma/studio-core": { - "version": "0.27.3", - "resolved": "https://registry.npmjs.org/@prisma/studio-core/-/studio-core-0.27.3.tgz", - "integrity": "sha512-AADjNFPdsrglxHQVTmHFqv6DuKQZ5WY4p5/gVFY017twvNrSwpLJ9lqUbYYxEu2W7nbvVxTZA8deJ8LseNALsw==", + "version": "0.33.0", + "resolved": "https://registry.npmjs.org/@prisma/studio-core/-/studio-core-0.33.0.tgz", + "integrity": "sha512-V2fX/nKEymNTrHXwfP26PGjoLStO35Ogu+ex7CFJbLrMYEcZxxZpiSNOs7px23Hk5mzLWvM5RsqG6Ka+rha+wg==", "devOptional": true, "license": "Apache-2.0", "dependencies": { "@radix-ui/react-toggle": "1.1.10", - "chart.js": "4.5.1" + "@visx/curve": "4.0.1-alpha.0", + "@visx/event": "4.0.1-alpha.0", + "@visx/grid": "4.0.1-alpha.0", + "@visx/group": "4.0.1-alpha.0", + "@visx/responsive": "4.0.1-alpha.0", + "@visx/scale": "4.0.1-alpha.0", + "@visx/shape": "4.0.1-alpha.0", + "d3-array": "3.2.4", + "d3-shape": "3.2.0", + "elkjs": "0.11.1" }, "engines": { "node": "^20.19 || ^22.12 || >=24.0", @@ -12501,9 +12508,8 @@ "version": "3.1.0", "resolved": "https://registry.npmjs.org/@types/d3-geo/-/d3-geo-3.1.0.tgz", "integrity": "sha512-856sckF0oP/diXtS4jNsiQw/UuK5fQG8l/a9VVLeSouf1/PPbBE1i1W852zVwKwYCBkFJJB7nCFTbk6UMEXBOQ==", + "devOptional": true, "license": "MIT", - "optional": true, - "peer": true, "dependencies": { "@types/geojson": "*" } @@ -12531,9 +12537,8 @@ "version": "3.1.1", "resolved": "https://registry.npmjs.org/@types/d3-path/-/d3-path-3.1.1.tgz", "integrity": "sha512-VMZBYyQvbGmWyWVea0EHs/BwLgxc+MKi1zLDCONksozI4YJMcTt8ZEuIR4Sb1MMTE8MMW49v0IwI5+b7RmfWlg==", - "license": "MIT", - "optional": true, - "peer": true + "devOptional": true, + "license": "MIT" }, "node_modules/@types/d3-polygon": { "version": "3.0.2", @@ -12756,9 +12761,8 @@ "version": "7946.0.16", "resolved": "https://registry.npmjs.org/@types/geojson/-/geojson-7946.0.16.tgz", "integrity": "sha512-6C8nqWur3j98U6+lXDfTUWIfgvZU+EumvpHKcYjujKH7woYyLj2sUmff0tRhrqM7BohUw7Pz3ZB1jj2gW9Fvmg==", - "license": "MIT", - "optional": true, - "peer": true + "devOptional": true, + "license": "MIT" }, "node_modules/@types/google-spreadsheet": { "version": "3.1.5", @@ -12902,7 +12906,7 @@ "version": "4.17.24", "resolved": "https://registry.npmjs.org/@types/lodash/-/lodash-4.17.24.tgz", "integrity": "sha512-gIW7lQLZbue7lRSWEFql49QJJWThrTFFeIMJdp3eH4tKoxm1OvEPg02rm4wCCSHS0cL3/Fizimb35b7k8atwsQ==", - "dev": true, + "devOptional": true, "license": "MIT" }, "node_modules/@types/luxon": { @@ -13056,7 +13060,6 @@ "integrity": "sha512-cMoR+FoAf/Jyq6+Df2/Z41jISvGZZ2eTlnsaJRptmZ76Caldwy1odD4xTr/gNV9VLj0AWgg/nmkevIyUfIIq5w==", "devOptional": true, "license": "MIT", - "peer": true, "dependencies": { "csstype": "^3.2.2" } @@ -14168,6 +14171,265 @@ "node": ">= 20" } }, + "node_modules/@visx/curve": { + "version": "4.0.1-alpha.0", + "resolved": "https://registry.npmjs.org/@visx/curve/-/curve-4.0.1-alpha.0.tgz", + "integrity": "sha512-jRu61Uz274pV1zyioXmboyrLutYbnKsgjj4njSGCnhdXj5GkZvZbg+ThDb6oOzoAnJOBRLz4rzPlWvNJOzuVMg==", + "devOptional": true, + "license": "MIT", + "dependencies": { + "@visx/vendor": "4.0.0-alpha.0" + } + }, + "node_modules/@visx/event": { + "version": "4.0.1-alpha.0", + "resolved": "https://registry.npmjs.org/@visx/event/-/event-4.0.1-alpha.0.tgz", + "integrity": "sha512-EQqCMSv/s8NbFjo+hz3FKsvvYfP+2QslsFJ/24/O5l/W+7UC6J6aAvO0ujVwrTwdYbuQ+vhxKi1xdPdKR/qj1g==", + "devOptional": true, + "license": "MIT", + "dependencies": { + "@types/react": "*", + "@visx/point": "4.0.1-alpha.0" + } + }, + "node_modules/@visx/grid": { + "version": "4.0.1-alpha.0", + "resolved": "https://registry.npmjs.org/@visx/grid/-/grid-4.0.1-alpha.0.tgz", + "integrity": "sha512-rycutGmTHO+znNdPumheWMglm7YfpffvRwUkVy5zy4WoORIuKTMkDxwnOzHG2xMxU3EE/YCd37xFV5AxA30yeg==", + "devOptional": true, + "license": "MIT", + "dependencies": { + "@types/react": "*", + "@visx/curve": "4.0.1-alpha.0", + "@visx/group": "4.0.1-alpha.0", + "@visx/point": "4.0.1-alpha.0", + "@visx/scale": "4.0.1-alpha.0", + "@visx/shape": "4.0.1-alpha.0", + "classnames": "^2.3.1" + }, + "peerDependencies": { + "react": "^16.14.0 || ^17.0.0-0 || ^18.0.0-0 || ^19.0.0-0" + } + }, + "node_modules/@visx/group": { + "version": "4.0.1-alpha.0", + "resolved": "https://registry.npmjs.org/@visx/group/-/group-4.0.1-alpha.0.tgz", + "integrity": "sha512-V19l7iQ7jccBv8kao/EByuI6o4xtxzzLV9nqVI1hRvmdzTVsuLpqlwzYCZUXJaTVvUWf8s4D2SQFjGkj/Nw+0w==", + "devOptional": true, + "license": "MIT", + "dependencies": { + "@types/react": "*", + "classnames": "^2.3.1" + }, + "peerDependencies": { + "react": "^16.14.0 || ^17.0.0-0 || ^18.0.0-0 || ^19.0.0-0" + } + }, + "node_modules/@visx/point": { + "version": "4.0.1-alpha.0", + "resolved": "https://registry.npmjs.org/@visx/point/-/point-4.0.1-alpha.0.tgz", + "integrity": "sha512-ijTfr/Nx09f03vIj9nyTr3z4Xth4Y75427UaogJh6dnIRLMEFHQOwNu791sbfiNj0a+ZXuaE32h0vKrFe4/8Qg==", + "devOptional": true, + "license": "MIT" + }, + "node_modules/@visx/responsive": { + "version": "4.0.1-alpha.0", + "resolved": "https://registry.npmjs.org/@visx/responsive/-/responsive-4.0.1-alpha.0.tgz", + "integrity": "sha512-o+1zGywQZY0+yOx3Iw87wc4bbPJRr/HnIukTwfOz4UVyj9pB1OQNVHB7OORO1+LBHJceWpB31co/ZV9KHncKrA==", + "devOptional": true, + "license": "MIT", + "dependencies": { + "@types/lodash": "^4.17.13", + "@types/react": "*", + "lodash": "^4.17.21" + }, + "peerDependencies": { + "react": "^16.14.0 || ^17.0.0-0 || ^18.0.0-0 || ^19.0.0-0" + } + }, + "node_modules/@visx/scale": { + "version": "4.0.1-alpha.0", + "resolved": "https://registry.npmjs.org/@visx/scale/-/scale-4.0.1-alpha.0.tgz", + "integrity": "sha512-nzjeE87vFSAXGWFiiNfBpNLAf0Q8Qmf6syvKLjqNi4kGZkdhbUll3E/59YsgWXmjM8+llPLWzGsP+JPvo5eq1A==", + "devOptional": true, + "license": "MIT", + "dependencies": { + "@visx/vendor": "4.0.0-alpha.0" + } + }, + "node_modules/@visx/shape": { + "version": "4.0.1-alpha.0", + "resolved": "https://registry.npmjs.org/@visx/shape/-/shape-4.0.1-alpha.0.tgz", + "integrity": "sha512-62QeiVNmPlterQGwhkEDcbq7M0MqY0lBsK5QKXtM9ZoPZWkuGV3aykA3+Xu20B2FAvyJq4LqJzBc7Sxr+EAdbA==", + "devOptional": true, + "license": "MIT", + "dependencies": { + "@types/lodash": "^4.17.13", + "@types/react": "*", + "@visx/curve": "4.0.1-alpha.0", + "@visx/group": "4.0.1-alpha.0", + "@visx/scale": "4.0.1-alpha.0", + "@visx/vendor": "4.0.0-alpha.0", + "classnames": "^2.3.1", + "lodash": "^4.17.21" + }, + "peerDependencies": { + "react": "^16.14.0 || ^17.0.0-0 || ^18.0.0-0 || ^19.0.0-0" + } + }, + "node_modules/@visx/vendor": { + "version": "4.0.0-alpha.0", + "resolved": "https://registry.npmjs.org/@visx/vendor/-/vendor-4.0.0-alpha.0.tgz", + "integrity": "sha512-6I+MuqXBcv9jnlcVowHoHKSdk9gXTWkHLKyqBwRWg7LY6A3Ei8SHfubpqGV5rBUSppxMq2RszPJUS6w+H0YgmQ==", + "devOptional": true, + "license": "MIT and ISC", + "dependencies": { + "@types/d3-array": "3.0.3", + "@types/d3-color": "3.1.0", + "@types/d3-delaunay": "6.0.1", + "@types/d3-format": "3.0.1", + "@types/d3-geo": "3.1.0", + "@types/d3-interpolate": "3.0.1", + "@types/d3-path": "3.1.1", + "@types/d3-scale": "4.0.2", + "@types/d3-shape": "3.1.7", + "@types/d3-time": "3.0.0", + "@types/d3-time-format": "2.1.0", + "d3-array": "3.2.1", + "d3-color": "3.1.0", + "d3-delaunay": "6.0.2", + "d3-format": "3.1.0", + "d3-geo": "3.1.0", + "d3-interpolate": "3.0.1", + "d3-path": "3.1.0", + "d3-scale": "4.0.2", + "d3-shape": "3.2.0", + "d3-time": "3.1.0", + "d3-time-format": "4.1.0", + "internmap": "2.0.3" + } + }, + "node_modules/@visx/vendor/node_modules/@types/d3-array": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/@types/d3-array/-/d3-array-3.0.3.tgz", + "integrity": "sha512-Reoy+pKnvsksN0lQUlcH6dOGjRZ/3WRwXR//m+/8lt1BXeI4xyaUZoqULNjyXXRuh0Mj4LNpkCvhUpQlY3X5xQ==", + "devOptional": true, + "license": "MIT" + }, + "node_modules/@visx/vendor/node_modules/@types/d3-color": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/@types/d3-color/-/d3-color-3.1.0.tgz", + "integrity": "sha512-HKuicPHJuvPgCD+np6Se9MQvS6OCbJmOjGvylzMJRlDwUXjKTTXs6Pwgk79O09Vj/ho3u1ofXnhFOaEWWPrlwA==", + "devOptional": true, + "license": "MIT" + }, + "node_modules/@visx/vendor/node_modules/@types/d3-delaunay": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/@types/d3-delaunay/-/d3-delaunay-6.0.1.tgz", + "integrity": "sha512-tLxQ2sfT0p6sxdG75c6f/ekqxjyYR0+LwPrsO1mbC9YDBzPJhs2HbJJRrn8Ez1DBoHRo2yx7YEATI+8V1nGMnQ==", + "devOptional": true, + "license": "MIT" + }, + "node_modules/@visx/vendor/node_modules/@types/d3-format": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/@types/d3-format/-/d3-format-3.0.1.tgz", + "integrity": "sha512-5KY70ifCCzorkLuIkDe0Z9YTf9RR2CjBX1iaJG+rgM/cPP+sO+q9YdQ9WdhQcgPj1EQiJ2/0+yUkkziTG6Lubg==", + "devOptional": true, + "license": "MIT" + }, + "node_modules/@visx/vendor/node_modules/@types/d3-interpolate": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/@types/d3-interpolate/-/d3-interpolate-3.0.1.tgz", + "integrity": "sha512-jx5leotSeac3jr0RePOH1KdR9rISG91QIE4Q2PYTu4OymLTZfA3SrnURSLzKH48HmXVUru50b8nje4E79oQSQw==", + "devOptional": true, + "license": "MIT", + "dependencies": { + "@types/d3-color": "*" + } + }, + "node_modules/@visx/vendor/node_modules/@types/d3-scale": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/@types/d3-scale/-/d3-scale-4.0.2.tgz", + "integrity": "sha512-Yk4htunhPAwN0XGlIwArRomOjdoBFXC3+kCxK2Ubg7I9shQlVSJy/pG/Ht5ASN+gdMIalpk8TJ5xV74jFsetLA==", + "devOptional": true, + "license": "MIT", + "dependencies": { + "@types/d3-time": "*" + } + }, + "node_modules/@visx/vendor/node_modules/@types/d3-shape": { + "version": "3.1.7", + "resolved": "https://registry.npmjs.org/@types/d3-shape/-/d3-shape-3.1.7.tgz", + "integrity": "sha512-VLvUQ33C+3J+8p+Daf+nYSOsjB4GXp19/S/aGo60m9h1v6XaxjiT82lKVWJCfzhtuZ3yD7i/TPeC/fuKLLOSmg==", + "devOptional": true, + "license": "MIT", + "dependencies": { + "@types/d3-path": "*" + } + }, + "node_modules/@visx/vendor/node_modules/@types/d3-time": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/@types/d3-time/-/d3-time-3.0.0.tgz", + "integrity": "sha512-sZLCdHvBUcNby1cB6Fd3ZBrABbjz3v1Vm90nysCQ6Vt7vd6e/h9Lt7SiJUoEX0l4Dzc7P5llKyhqSi1ycSf1Hg==", + "devOptional": true, + "license": "MIT" + }, + "node_modules/@visx/vendor/node_modules/@types/d3-time-format": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/@types/d3-time-format/-/d3-time-format-2.1.0.tgz", + "integrity": "sha512-/myT3I7EwlukNOX2xVdMzb8FRgNzRMpsZddwst9Ld/VFe6LyJyRp0s32l/V9XoUzk+Gqu56F/oGk6507+8BxrA==", + "devOptional": true, + "license": "MIT" + }, + "node_modules/@visx/vendor/node_modules/d3-array": { + "version": "3.2.1", + "resolved": "https://registry.npmjs.org/d3-array/-/d3-array-3.2.1.tgz", + "integrity": "sha512-gUY/qeHq/yNqqoCKNq4vtpFLdoCdvyNpWoC/KNjhGbhDuQpAM9sIQQKkXSNpXa9h5KySs/gzm7R88WkUutgwWQ==", + "devOptional": true, + "license": "ISC", + "dependencies": { + "internmap": "1 - 2" + }, + "engines": { + "node": ">=12" + } + }, + "node_modules/@visx/vendor/node_modules/d3-delaunay": { + "version": "6.0.2", + "resolved": "https://registry.npmjs.org/d3-delaunay/-/d3-delaunay-6.0.2.tgz", + "integrity": "sha512-IMLNldruDQScrcfT+MWnazhHbDJhcRJyOEBAJfwQnHle1RPh6WDuLvxNArUju2VSMSUuKlY5BGHRJ2cYyoFLQQ==", + "devOptional": true, + "license": "ISC", + "dependencies": { + "delaunator": "5" + }, + "engines": { + "node": ">=12" + } + }, + "node_modules/@visx/vendor/node_modules/d3-format": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/d3-format/-/d3-format-3.1.0.tgz", + "integrity": "sha512-YyUI6AEuY/Wpt8KWLgZHsIU86atmikuoOmCfommt0LYHiQSPjvX2AcFc38PX0CBpr2RCyZhjex+NS/LPOv6YqA==", + "devOptional": true, + "license": "ISC", + "engines": { + "node": ">=12" + } + }, + "node_modules/@visx/vendor/node_modules/d3-geo": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/d3-geo/-/d3-geo-3.1.0.tgz", + "integrity": "sha512-JEo5HxXDdDYXCaWdwLRt79y7giK8SbhZJbFWXqbRTolCHFI5jRqteLzCsq51NKbUoX0PjBVSohxrx+NoOUujYA==", + "devOptional": true, + "license": "ISC", + "dependencies": { + "d3-array": "2.5.0 - 3" + }, + "engines": { + "node": ">=12" + } + }, "node_modules/@vitejs/plugin-basic-ssl": { "version": "2.1.4", "resolved": "https://registry.npmjs.org/@vitejs/plugin-basic-ssl/-/plugin-basic-ssl-2.1.4.tgz", @@ -15462,9 +15724,9 @@ } }, "node_modules/better-result": { - "version": "2.8.2", - "resolved": "https://registry.npmjs.org/better-result/-/better-result-2.8.2.tgz", - "integrity": "sha512-YOf0VSj5nUPI27doTtXF+BBnsiRq3qY7avHqfIWnppxTLGyvkLq1QV2RTxkwoZwJ60ywLfZ0raFF4J/G886i7A==", + "version": "2.10.0", + "resolved": "https://registry.npmjs.org/better-result/-/better-result-2.10.0.tgz", + "integrity": "sha512-oQhh0y1qo2/ZKdAAEvHZAqKKiHOFU5k/bW96fE2ScgQOVkJRiHwB+nOS1SgFsYqRlxMDWvefXi9Q3px7QvgNDw==", "devOptional": true, "license": "MIT" }, @@ -16392,6 +16654,13 @@ "validator": "^13.15.22" } }, + "node_modules/classnames": { + "version": "2.5.1", + "resolved": "https://registry.npmjs.org/classnames/-/classnames-2.5.1.tgz", + "integrity": "sha512-saHYOzhIQs6wy2sVxTM6bUDsQO4F50V9RQ22qBpEdCW+I+/Wmke2HOl6lS6dTpdxVhb88/I6+Hs+438c3lfUow==", + "devOptional": true, + "license": "MIT" + }, "node_modules/clean-css": { "version": "5.3.3", "resolved": "https://registry.npmjs.org/clean-css/-/clean-css-5.3.3.tgz", @@ -18049,8 +18318,7 @@ "resolved": "https://registry.npmjs.org/csstype/-/csstype-3.2.3.tgz", "integrity": "sha512-z1HGKcYy2xA8AGQfwrn0PAy+PB7X/GSj3UVJW9qKyn43xWa+gl5nXmU4qqLMRzWVLFC8KusUX8T/0kCiOYpAIQ==", "devOptional": true, - "license": "MIT", - "peer": true + "license": "MIT" }, "node_modules/cytoscape": { "version": "3.33.2", @@ -18157,9 +18425,8 @@ "version": "3.2.4", "resolved": "https://registry.npmjs.org/d3-array/-/d3-array-3.2.4.tgz", "integrity": "sha512-tdQAmyA18i4J7wprpYq8ClcxZy3SC31QMeByyCFyRt7BVHdREQZ5lpzoe5mFEYZUWe+oq8HBvk9JjpibyEV4Jg==", + "devOptional": true, "license": "ISC", - "optional": true, - "peer": true, "dependencies": { "internmap": "1 - 2" }, @@ -18214,9 +18481,8 @@ "version": "3.1.0", "resolved": "https://registry.npmjs.org/d3-color/-/d3-color-3.1.0.tgz", "integrity": "sha512-zg/chbXyeBtMQ1LbD/WSoW2DpC3I0mpmPdW+ynRTj/x2DAWYrIY7qeZIHidozwV24m4iavr15lNwIwLxRmOxhA==", + "devOptional": true, "license": "ISC", - "optional": true, - "peer": true, "engines": { "node": ">=12" } @@ -18372,9 +18638,8 @@ "version": "3.1.2", "resolved": "https://registry.npmjs.org/d3-format/-/d3-format-3.1.2.tgz", "integrity": "sha512-AJDdYOdnyRDV5b6ArilzCPPwc1ejkHcoyFarqlPqT7zRYjhavcT3uSrqcMvsgh2CgoPbK3RCwyHaVyxYcP2Arg==", + "devOptional": true, "license": "ISC", - "optional": true, - "peer": true, "engines": { "node": ">=12" } @@ -18408,9 +18673,8 @@ "version": "3.0.1", "resolved": "https://registry.npmjs.org/d3-interpolate/-/d3-interpolate-3.0.1.tgz", "integrity": "sha512-3bYs1rOD33uo8aqJfKP3JWPAibgw8Zm2+L9vBKEHJ2Rg+viTR7o5Mmv5mZcieN+FRYaAOWX5SJATX6k1PWz72g==", + "devOptional": true, "license": "ISC", - "optional": true, - "peer": true, "dependencies": { "d3-color": "1 - 3" }, @@ -18422,9 +18686,8 @@ "version": "3.1.0", "resolved": "https://registry.npmjs.org/d3-path/-/d3-path-3.1.0.tgz", "integrity": "sha512-p3KP5HCf/bvjBSSKuXid6Zqijx7wIfNW+J/maPs+iwR35at5JCbLUT0LzF1cnjbCHWhqzQTIN2Jpe8pRebIEFQ==", + "devOptional": true, "license": "ISC", - "optional": true, - "peer": true, "engines": { "node": ">=12" } @@ -18516,9 +18779,8 @@ "version": "4.0.2", "resolved": "https://registry.npmjs.org/d3-scale/-/d3-scale-4.0.2.tgz", "integrity": "sha512-GZW464g1SH7ag3Y7hXjf8RoUuAFIqklOAq3MRl4OaWabTFJY9PN/E1YklhXLh+OQ3fM9yS2nOkCoS+WLZ6kvxQ==", + "devOptional": true, "license": "ISC", - "optional": true, - "peer": true, "dependencies": { "d3-array": "2.10.0 - 3", "d3-format": "1 - 3", @@ -18560,9 +18822,8 @@ "version": "3.2.0", "resolved": "https://registry.npmjs.org/d3-shape/-/d3-shape-3.2.0.tgz", "integrity": "sha512-SaLBuwGm3MOViRq2ABk3eLoxwZELpH6zhl3FbAoJ7Vm1gofKx6El1Ib5z23NUEhF9AsGl7y+dzLe5Cw2AArGTA==", + "devOptional": true, "license": "ISC", - "optional": true, - "peer": true, "dependencies": { "d3-path": "^3.1.0" }, @@ -18574,9 +18835,8 @@ "version": "3.1.0", "resolved": "https://registry.npmjs.org/d3-time/-/d3-time-3.1.0.tgz", "integrity": "sha512-VqKjzBLejbSMT4IgbmVgDjpkYrNWUYJnbCGo874u7MMKIWsILRX+OpX/gTk8MqjpT1A/c6HY2dCA77ZN0lkQ2Q==", + "devOptional": true, "license": "ISC", - "optional": true, - "peer": true, "dependencies": { "d3-array": "2 - 3" }, @@ -18588,9 +18848,8 @@ "version": "4.1.0", "resolved": "https://registry.npmjs.org/d3-time-format/-/d3-time-format-4.1.0.tgz", "integrity": "sha512-dJxPBlzC7NugB2PDLwo9Q8JiTR3M3e4/XANkreKSUxF8vvXKqm1Yfq4Q5dl8budlunRVlUUaDUgFt7eA8D6NLg==", + "devOptional": true, "license": "ISC", - "optional": true, - "peer": true, "dependencies": { "d3-time": "1 - 3" }, @@ -18943,9 +19202,8 @@ "version": "5.1.0", "resolved": "https://registry.npmjs.org/delaunator/-/delaunator-5.1.0.tgz", "integrity": "sha512-AGrQ4QSgssa1NGmWmLPqN5NY2KajF5MqxetNEO+o0n3ZwZZeTmt7bBnvzHWrmkZFxGgr4HdyFgelzgi06otLuQ==", + "devOptional": true, "license": "ISC", - "optional": true, - "peer": true, "dependencies": { "robust-predicates": "^3.0.2" } @@ -19286,6 +19544,13 @@ "integrity": "sha512-mgjZAz7Jyx1SRCwEpy9wefDS7GvNPazLthHg8eQMJ76wBdGQQDW33TCrUTvQ4wzpmOrv2zrFoD3oNufMdyMpog==", "license": "ISC" }, + "node_modules/elkjs": { + "version": "0.11.1", + "resolved": "https://registry.npmjs.org/elkjs/-/elkjs-0.11.1.tgz", + "integrity": "sha512-zxxR9k+rx5ktMwT/FwyLdPCrq7xN6e4VGGHH8hA01vVYKjTFik7nHOxBnAYtrgYUB1RpAiLvA1/U2YraWxyKKg==", + "devOptional": true, + "license": "EPL-2.0" + }, "node_modules/emittery": { "version": "0.13.1", "resolved": "https://registry.npmjs.org/emittery/-/emittery-0.13.1.tgz", @@ -20460,6 +20725,13 @@ ], "license": "MIT" }, + "node_modules/fast-decode-uri-component": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/fast-decode-uri-component/-/fast-decode-uri-component-1.0.1.tgz", + "integrity": "sha512-WKgKWg5eUxvRZGwW8FvfbaH7AXSh2cL+3j5fMGzUMCxWBJ3dV3a7Wz8y2f/uQ0e3B6WmodD3oS54jTQ9HVTIIg==", + "devOptional": true, + "license": "MIT" + }, "node_modules/fast-deep-equal": { "version": "3.1.3", "resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-3.1.3.tgz", @@ -20510,6 +20782,16 @@ "dev": true, "license": "MIT" }, + "node_modules/fast-querystring": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/fast-querystring/-/fast-querystring-1.1.2.tgz", + "integrity": "sha512-g6KuKWmFXc0fID8WWH0jit4g0AGBoJhCkJMb1RmbsSEUNvQ+ZC8D6CUZ+GtF8nMzSPXnhiePyyqqipzNNEnHjg==", + "devOptional": true, + "license": "MIT", + "dependencies": { + "fast-decode-uri-component": "^1.0.1" + } + }, "node_modules/fast-redact": { "version": "3.5.0", "resolved": "https://registry.npmjs.org/fast-redact/-/fast-redact-3.5.0.tgz", @@ -20898,6 +21180,21 @@ "url": "https://github.com/sponsors/sindresorhus" } }, + "node_modules/find-my-way": { + "version": "9.7.0", + "resolved": "https://registry.npmjs.org/find-my-way/-/find-my-way-9.7.0.tgz", + "integrity": "sha512-f2JHn75x2JlwUwLenZypgczR7YWMb/uO9BvUXtus+JMgkbIkLADd38cI4EiV+OQqrGo1Zlq6V8wnqMJ8e62wUQ==", + "devOptional": true, + "license": "MIT", + "dependencies": { + "fast-deep-equal": "^3.1.3", + "fast-querystring": "^1.0.0", + "safe-regex2": "^5.0.0" + }, + "engines": { + "node": ">=20" + } + }, "node_modules/find-up": { "version": "5.0.0", "resolved": "https://registry.npmjs.org/find-up/-/find-up-5.0.0.tgz", @@ -21768,9 +22065,9 @@ "license": "ISC" }, "node_modules/grammex": { - "version": "3.1.12", - "resolved": "https://registry.npmjs.org/grammex/-/grammex-3.1.12.tgz", - "integrity": "sha512-6ufJOsSA7LcQehIJNCO7HIBykfM7DXQual0Ny780/DEcJIpBlHRvcqEBWGPYd7hrXL2GJ3oJI1MIhaXjWmLQOQ==", + "version": "3.1.13", + "resolved": "https://registry.npmjs.org/grammex/-/grammex-3.1.13.tgz", + "integrity": "sha512-LnPnhOBLEJEVKS8WFDVaA397L9Kq55Q9oSITJiVLHVdhAclfUkWzQv74KhvZHKL2Q09Pb1XdsrOsZ4LfTFFTEg==", "devOptional": true, "license": "MIT" }, @@ -22645,9 +22942,8 @@ "version": "2.0.3", "resolved": "https://registry.npmjs.org/internmap/-/internmap-2.0.3.tgz", "integrity": "sha512-5Hh7Y1wQbvY5ooGgPbDaL5iYLAPzMTUrjMulskHLH6wnv/A+1q5rgEaiuqEjB+oxGXIVZs1FF+R/KPN3ZSQYYg==", + "devOptional": true, "license": "ISC", - "optional": true, - "peer": true, "engines": { "node": ">=12" } @@ -29188,17 +29484,17 @@ } }, "node_modules/prisma": { - "version": "7.8.0", - "resolved": "https://registry.npmjs.org/prisma/-/prisma-7.8.0.tgz", - "integrity": "sha512-yfN4yrw7HV9kEJhoy1+jgah0jafEIQsf7uWouSsM8MvJtlubsk+kM7AIBWZ8+GJl74Yj3c+nbYqBkMOxtsZ3Lw==", + "version": "7.9.1", + "resolved": "https://registry.npmjs.org/prisma/-/prisma-7.9.1.tgz", + "integrity": "sha512-aPqePoZIqwlAchbgbFDO/wHqGB+7H1nj9gaM+OsL9h77S5S3TnLd9BgD3LnoeDikULo7cl2HSUrEyQ55Z7DYbg==", "devOptional": true, "hasInstallScript": true, "license": "Apache-2.0", "dependencies": { - "@prisma/config": "7.8.0", - "@prisma/dev": "0.24.3", - "@prisma/engines": "7.8.0", - "@prisma/studio-core": "0.27.3", + "@prisma/config": "7.9.1", + "@prisma/dev": "0.24.17", + "@prisma/engines": "7.9.1", + "@prisma/studio-core": "0.33.0", "mysql2": "3.15.3", "postgres": "3.4.7" }, @@ -30152,6 +30448,16 @@ "url": "https://github.com/sponsors/sindresorhus" } }, + "node_modules/ret": { + "version": "0.5.0", + "resolved": "https://registry.npmjs.org/ret/-/ret-0.5.0.tgz", + "integrity": "sha512-I1XxrZSQ+oErkRR4jYbAyEEu2I0avBvvMM5JN+6EBprOGRCs63ENqZ3vjavq8fBw2+62G5LF5XelKwuJpcvcxw==", + "devOptional": true, + "license": "MIT", + "engines": { + "node": ">=10" + } + }, "node_modules/retry": { "version": "0.13.1", "resolved": "https://registry.npmjs.org/retry/-/retry-0.13.1.tgz", @@ -30183,9 +30489,8 @@ "version": "3.0.3", "resolved": "https://registry.npmjs.org/robust-predicates/-/robust-predicates-3.0.3.tgz", "integrity": "sha512-NS3levdsRIUOmiJ8FZWCP7LG3QpJyrs/TE0Zpf1yvZu8cAJJ6QMW92H1c7kWpdIHo8RvmLxN/o2JXTKHp74lUA==", - "license": "Unlicense", - "optional": true, - "peer": true + "devOptional": true, + "license": "Unlicense" }, "node_modules/rolldown": { "version": "1.0.0-rc.4", @@ -30532,6 +30837,29 @@ "url": "https://github.com/sponsors/ljharb" } }, + "node_modules/safe-regex2": { + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/safe-regex2/-/safe-regex2-5.1.1.tgz", + "integrity": "sha512-mOSBvHGDZMuIEZMdOz/aCEYDCv0E7nfcNsIhUF+/P+xC7Hyf3FkvymqgPbg9D1EdSGu+uKbJgy09K/RKKc7kJA==", + "devOptional": true, + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/fastify" + }, + { + "type": "opencollective", + "url": "https://opencollective.com/fastify" + } + ], + "license": "MIT", + "dependencies": { + "ret": "~0.5.0" + }, + "bin": { + "safe-regex2": "bin/safe-regex2.js" + } + }, "node_modules/safer-buffer": { "version": "2.1.2", "resolved": "https://registry.npmjs.org/safer-buffer/-/safer-buffer-2.1.2.tgz", @@ -34374,9 +34702,9 @@ "license": "MIT" }, "node_modules/valibot": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/valibot/-/valibot-1.2.0.tgz", - "integrity": "sha512-mm1rxUsmOxzrwnX5arGS+U4T25RdvpPjPN4yR0u9pUBov9+zGVtO84tif1eY4r6zWxVxu3KzIyknJy3rxfRZZg==", + "version": "1.4.2", + "resolved": "https://registry.npmjs.org/valibot/-/valibot-1.4.2.tgz", + "integrity": "sha512-gjdCvJ6d3RyHAneqxMYMW9QMCwYMb3jpOO0IyHZV1bnRHFBHrX3VkIILt5XYR0WhwHiH7Mty8ovuPZ/O3gamrg==", "devOptional": true, "license": "MIT", "peerDependencies": { diff --git a/package.json b/package.json index b0ca3ea20..ded794ce4 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "ghostfolio", - "version": "3.37.0", + "version": "3.39.0", "homepage": "https://ghostfol.io", "license": "AGPL-3.0", "repository": "https://github.com/ghostfolio/ghostfolio", @@ -87,8 +87,8 @@ "@nestjs/serve-static": "5.0.5", "@nestjs/throttler": "6.5.0", "@openrouter/ai-sdk-provider": "3.0.0", - "@prisma/adapter-pg": "7.8.0", - "@prisma/client": "7.8.0", + "@prisma/adapter-pg": "7.9.1", + "@prisma/client": "7.9.1", "@simplewebauthn/browser": "13.3.0", "@simplewebauthn/server": "13.3.1", "ai": "7.0.37", @@ -171,7 +171,7 @@ "@nx/storybook": "23.0.2", "@nx/web": "23.0.2", "@nx/workspace": "23.0.2", - "@prisma/config": "7.8.0", + "@prisma/config": "7.9.1", "@schematics/angular": "21.2.6", "@storybook/addon-docs": "10.1.10", "@storybook/addon-themes": "10.1.10", @@ -201,7 +201,7 @@ "nx": "23.0.2", "prettier": "3.9.6", "prettier-plugin-organize-attributes": "1.0.0", - "prisma": "7.8.0", + "prisma": "7.9.1", "react": "18.2.0", "react-dom": "18.2.0", "replace-in-file": "8.4.0", diff --git a/prisma/migrations/20260801103609_removed_is_excluded_from_account/migration.sql b/prisma/migrations/20260801103609_removed_is_excluded_from_account/migration.sql new file mode 100644 index 000000000..5fb01f5d2 --- /dev/null +++ b/prisma/migrations/20260801103609_removed_is_excluded_from_account/migration.sql @@ -0,0 +1,21 @@ +-- Create the "EXCLUDE_FROM_ANALYSIS" tag if it does not exist yet +INSERT INTO "Tag" ("id", "name") +VALUES ('f2e868af-8333-459f-b161-cbc6544c24bd', 'EXCLUDE_FROM_ANALYSIS') +ON CONFLICT DO NOTHING; + +-- Migrate accounts with "isExcluded" to the "EXCLUDE_FROM_ANALYSIS" tag +INSERT INTO "TagsOnAccounts" ("accountId", "tagId", "updatedAt", "userId") +SELECT + "id", + 'f2e868af-8333-459f-b161-cbc6544c24bd', + CURRENT_TIMESTAMP, + "userId" +FROM "Account" +WHERE "isExcluded" = true +ON CONFLICT DO NOTHING; + +-- DropIndex +DROP INDEX "Account_isExcluded_idx"; + +-- AlterTable +ALTER TABLE "Account" DROP COLUMN "isExcluded"; diff --git a/prisma/schema.prisma b/prisma/schema.prisma index 733399506..faf7a9259 100644 --- a/prisma/schema.prisma +++ b/prisma/schema.prisma @@ -33,8 +33,6 @@ model Account { createdAt DateTime @default(now()) currency String? id String @default(uuid()) - /// @deprecated Use the "Exclude from Analysis" tag (`TAG_ID_EXCLUDE_FROM_ANALYSIS`) instead - isExcluded Boolean @default(false) name String? platform Platform? @relation(fields: [platformId], references: [id]) platformId String? @@ -46,7 +44,6 @@ model Account { @@id([id, userId]) @@index([currency]) @@index([id]) - @@index([isExcluded]) @@index([name]) @@index([userId]) }