Browse Source
Feature/rename asset profile icon component to entity logo component (#4861)
* Rename asset profile icon component to entity logo component
* Update changelog
pull/4864/head
Thomas Kaul
3 weeks ago
committed by
GitHub
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
28 changed files with
44 additions and
48 deletions
-
CHANGELOG.md
-
apps/client/src/app/components/accounts-table/accounts-table.component.html
-
apps/client/src/app/components/accounts-table/accounts-table.module.ts
-
apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html
-
apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.module.ts
-
apps/client/src/app/components/admin-platform/admin-platform.component.html
-
apps/client/src/app/components/admin-platform/admin-platform.module.ts
-
apps/client/src/app/components/admin-platform/create-or-update-platform-dialog/create-or-update-platform-dialog.html
-
apps/client/src/app/components/admin-platform/create-or-update-platform-dialog/create-or-update-platform-dialog.module.ts
-
apps/client/src/app/components/admin-settings/admin-settings.component.html
-
apps/client/src/app/components/admin-settings/admin-settings.module.ts
-
apps/client/src/app/pages/accounts/create-or-update-account-dialog/create-or-update-account-dialog.html
-
apps/client/src/app/pages/accounts/create-or-update-account-dialog/create-or-update-account-dialog.module.ts
-
apps/client/src/app/pages/accounts/transfer-balance/transfer-balance-dialog.html
-
apps/client/src/app/pages/accounts/transfer-balance/transfer-balance-dialog.module.ts
-
apps/client/src/app/pages/portfolio/activities/create-or-update-activity-dialog/create-or-update-activity-dialog.html
-
apps/client/src/app/pages/portfolio/activities/create-or-update-activity-dialog/create-or-update-activity-dialog.module.ts
-
libs/ui/src/lib/activities-table/activities-table.component.html
-
libs/ui/src/lib/activities-table/activities-table.component.ts
-
libs/ui/src/lib/asset-profile-icon/index.ts
-
libs/ui/src/lib/assistant/assistant.component.ts
-
libs/ui/src/lib/assistant/assistant.html
-
libs/ui/src/lib/entity-logo/entity-logo.component.html
-
libs/ui/src/lib/entity-logo/entity-logo.component.scss
-
libs/ui/src/lib/entity-logo/entity-logo.component.ts
-
libs/ui/src/lib/entity-logo/index.ts
-
libs/ui/src/lib/holdings-table/holdings-table.component.html
-
libs/ui/src/lib/holdings-table/holdings-table.component.ts
|
|
@ -9,7 +9,7 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 |
|
|
|
|
|
|
|
### Changed |
|
|
|
|
|
|
|
- Moved the asset profile icon component to `@ghostfolio/ui` |
|
|
|
- Renamed the asset profile icon component to entity logo component and moved to `@ghostfolio/ui` |
|
|
|
- Renamed `Account` to `accounts` in the `User` database schema |
|
|
|
|
|
|
|
### Fixed |
|
|
|
|
|
@ -44,10 +44,10 @@ |
|
|
|
</th> |
|
|
|
<td *matCellDef="let element" class="px-1" mat-cell> |
|
|
|
@if (element.Platform?.url) { |
|
|
|
<gf-asset-profile-icon |
|
|
|
<gf-entity-logo |
|
|
|
class="d-inline d-sm-none mr-1" |
|
|
|
[tooltip]="element.Platform?.name" |
|
|
|
[url]="element.Platform?.url" |
|
|
|
[url]="element.Platform.url" |
|
|
|
/> |
|
|
|
} |
|
|
|
<span>{{ element.name }}</span> |
|
|
@ -92,10 +92,10 @@ |
|
|
|
> |
|
|
|
<div class="d-flex"> |
|
|
|
@if (element.Platform?.url) { |
|
|
|
<gf-asset-profile-icon |
|
|
|
<gf-entity-logo |
|
|
|
class="mr-1" |
|
|
|
[tooltip]="element.Platform?.name" |
|
|
|
[url]="element.Platform?.url" |
|
|
|
[url]="element.Platform.url" |
|
|
|
/> |
|
|
|
} |
|
|
|
<span>{{ element.Platform?.name }}</span> |
|
|
|
|
|
@ -1,4 +1,4 @@ |
|
|
|
import { GfAssetProfileIconComponent } from '@ghostfolio/ui/asset-profile-icon'; |
|
|
|
import { GfEntityLogoComponent } from '@ghostfolio/ui/entity-logo'; |
|
|
|
import { GfValueComponent } from '@ghostfolio/ui/value'; |
|
|
|
|
|
|
|
import { CommonModule } from '@angular/common'; |
|
|
@ -17,7 +17,7 @@ import { AccountsTableComponent } from './accounts-table.component'; |
|
|
|
exports: [AccountsTableComponent], |
|
|
|
imports: [ |
|
|
|
CommonModule, |
|
|
|
GfAssetProfileIconComponent, |
|
|
|
GfEntityLogoComponent, |
|
|
|
GfValueComponent, |
|
|
|
MatButtonModule, |
|
|
|
MatMenuModule, |
|
|
|
|
|
@ -507,7 +507,7 @@ |
|
|
|
<mat-label i18n>Url</mat-label> |
|
|
|
<input formControlName="url" matInput type="text" /> |
|
|
|
@if (assetProfileForm.get('url').value) { |
|
|
|
<gf-asset-profile-icon |
|
|
|
<gf-entity-logo |
|
|
|
class="mr-3" |
|
|
|
matSuffix |
|
|
|
[url]="assetProfileForm.get('url').value" |
|
|
|
|
|
@ -1,6 +1,6 @@ |
|
|
|
import { AdminMarketDataService } from '@ghostfolio/client/components/admin-market-data/admin-market-data.service'; |
|
|
|
import { GfAssetProfileIconComponent } from '@ghostfolio/ui/asset-profile-icon'; |
|
|
|
import { GfCurrencySelectorComponent } from '@ghostfolio/ui/currency-selector'; |
|
|
|
import { GfEntityLogoComponent } from '@ghostfolio/ui/entity-logo'; |
|
|
|
import { GfHistoricalMarketDataEditorComponent } from '@ghostfolio/ui/historical-market-data-editor'; |
|
|
|
import { GfLineChartComponent } from '@ghostfolio/ui/line-chart'; |
|
|
|
import { GfPortfolioProportionChartComponent } from '@ghostfolio/ui/portfolio-proportion-chart'; |
|
|
@ -27,8 +27,8 @@ import { AssetProfileDialog } from './asset-profile-dialog.component'; |
|
|
|
imports: [ |
|
|
|
CommonModule, |
|
|
|
FormsModule, |
|
|
|
GfAssetProfileIconComponent, |
|
|
|
GfCurrencySelectorComponent, |
|
|
|
GfEntityLogoComponent, |
|
|
|
GfHistoricalMarketDataEditorComponent, |
|
|
|
GfLineChartComponent, |
|
|
|
GfPortfolioProportionChartComponent, |
|
|
|
|
|
@ -23,7 +23,7 @@ |
|
|
|
</th> |
|
|
|
<td *matCellDef="let element" class="px-1" mat-cell> |
|
|
|
@if (element.url) { |
|
|
|
<gf-asset-profile-icon |
|
|
|
<gf-entity-logo |
|
|
|
class="d-inline mr-1" |
|
|
|
[tooltip]="element.name" |
|
|
|
[url]="element.url" |
|
|
|
|
|
@ -1,4 +1,4 @@ |
|
|
|
import { GfAssetProfileIconComponent } from '@ghostfolio/ui/asset-profile-icon'; |
|
|
|
import { GfEntityLogoComponent } from '@ghostfolio/ui/entity-logo'; |
|
|
|
|
|
|
|
import { CommonModule } from '@angular/common'; |
|
|
|
import { CUSTOM_ELEMENTS_SCHEMA, NgModule } from '@angular/core'; |
|
|
@ -16,8 +16,8 @@ import { GfCreateOrUpdatePlatformDialogModule } from './create-or-update-platfor |
|
|
|
exports: [AdminPlatformComponent], |
|
|
|
imports: [ |
|
|
|
CommonModule, |
|
|
|
GfAssetProfileIconComponent, |
|
|
|
GfCreateOrUpdatePlatformDialogModule, |
|
|
|
GfEntityLogoComponent, |
|
|
|
MatButtonModule, |
|
|
|
MatMenuModule, |
|
|
|
MatSortModule, |
|
|
|
|
|
@ -29,11 +29,7 @@ |
|
|
|
(keydown.enter)="$event.stopPropagation()" |
|
|
|
/> |
|
|
|
@if (data.platform.url) { |
|
|
|
<gf-asset-profile-icon |
|
|
|
class="mr-3" |
|
|
|
matSuffix |
|
|
|
[url]="data.platform.url" |
|
|
|
/> |
|
|
|
<gf-entity-logo class="mr-3" matSuffix [url]="data.platform.url" /> |
|
|
|
} |
|
|
|
</mat-form-field> |
|
|
|
</div> |
|
|
|
|
|
@ -1,4 +1,4 @@ |
|
|
|
import { GfAssetProfileIconComponent } from '@ghostfolio/ui/asset-profile-icon'; |
|
|
|
import { GfEntityLogoComponent } from '@ghostfolio/ui/entity-logo'; |
|
|
|
|
|
|
|
import { CommonModule } from '@angular/common'; |
|
|
|
import { NgModule } from '@angular/core'; |
|
|
@ -14,8 +14,8 @@ import { CreateOrUpdatePlatformDialog } from './create-or-update-platform-dialog |
|
|
|
declarations: [CreateOrUpdatePlatformDialog], |
|
|
|
imports: [ |
|
|
|
CommonModule, |
|
|
|
GfAssetProfileIconComponent, |
|
|
|
FormsModule, |
|
|
|
GfEntityLogoComponent, |
|
|
|
MatButtonModule, |
|
|
|
MatDialogModule, |
|
|
|
MatFormFieldModule, |
|
|
|
|
|
@ -9,7 +9,7 @@ |
|
|
|
</th> |
|
|
|
<td *matCellDef="let element" class="px-1 py-2" mat-cell> |
|
|
|
<div class="d-flex align-items-center"> |
|
|
|
<gf-asset-profile-icon class="mr-1" [url]="element.url" /> |
|
|
|
<gf-entity-logo class="mr-1" [url]="element.url" /> |
|
|
|
<div> |
|
|
|
@if (isGhostfolioDataProvider(element)) { |
|
|
|
<a |
|
|
|
|
|
@ -1,6 +1,6 @@ |
|
|
|
import { GfAdminPlatformModule } from '@ghostfolio/client/components/admin-platform/admin-platform.module'; |
|
|
|
import { GfAdminTagModule } from '@ghostfolio/client/components/admin-tag/admin-tag.module'; |
|
|
|
import { GfAssetProfileIconComponent } from '@ghostfolio/ui/asset-profile-icon'; |
|
|
|
import { GfEntityLogoComponent } from '@ghostfolio/ui/entity-logo'; |
|
|
|
import { GfPremiumIndicatorComponent } from '@ghostfolio/ui/premium-indicator'; |
|
|
|
|
|
|
|
import { CommonModule } from '@angular/common'; |
|
|
@ -20,7 +20,7 @@ import { AdminSettingsComponent } from './admin-settings.component'; |
|
|
|
CommonModule, |
|
|
|
GfAdminPlatformModule, |
|
|
|
GfAdminTagModule, |
|
|
|
GfAssetProfileIconComponent, |
|
|
|
GfEntityLogoComponent, |
|
|
|
GfPremiumIndicatorComponent, |
|
|
|
MatButtonModule, |
|
|
|
MatMenuModule, |
|
|
|
|
|
@ -61,7 +61,7 @@ |
|
|
|
) { |
|
|
|
<mat-option [value]="platformEntry"> |
|
|
|
<span class="d-flex"> |
|
|
|
<gf-asset-profile-icon |
|
|
|
<gf-entity-logo |
|
|
|
class="mr-1" |
|
|
|
[tooltip]="platformEntry.name" |
|
|
|
[url]="platformEntry.url" |
|
|
|
|
|
@ -1,5 +1,5 @@ |
|
|
|
import { GfAssetProfileIconComponent } from '@ghostfolio/ui/asset-profile-icon'; |
|
|
|
import { GfCurrencySelectorComponent } from '@ghostfolio/ui/currency-selector'; |
|
|
|
import { GfEntityLogoComponent } from '@ghostfolio/ui/entity-logo'; |
|
|
|
|
|
|
|
import { CommonModule } from '@angular/common'; |
|
|
|
import { NgModule } from '@angular/core'; |
|
|
@ -18,8 +18,8 @@ import { CreateOrUpdateAccountDialog } from './create-or-update-account-dialog.c |
|
|
|
imports: [ |
|
|
|
CommonModule, |
|
|
|
FormsModule, |
|
|
|
GfAssetProfileIconComponent, |
|
|
|
GfCurrencySelectorComponent, |
|
|
|
GfEntityLogoComponent, |
|
|
|
MatAutocompleteModule, |
|
|
|
MatButtonModule, |
|
|
|
MatCheckboxModule, |
|
|
|
|
|
@ -14,7 +14,7 @@ |
|
|
|
<mat-option [value]="account.id"> |
|
|
|
<div class="d-flex"> |
|
|
|
@if (account.Platform?.url) { |
|
|
|
<gf-asset-profile-icon |
|
|
|
<gf-entity-logo |
|
|
|
class="mr-1" |
|
|
|
[tooltip]="account.Platform?.name" |
|
|
|
[url]="account.Platform?.url" |
|
|
@ -35,7 +35,7 @@ |
|
|
|
<mat-option [value]="account.id"> |
|
|
|
<div class="d-flex"> |
|
|
|
@if (account.Platform?.url) { |
|
|
|
<gf-asset-profile-icon |
|
|
|
<gf-entity-logo |
|
|
|
class="mr-1" |
|
|
|
[tooltip]="account.Platform?.name" |
|
|
|
[url]="account.Platform?.url" |
|
|
|
|
|
@ -1,4 +1,4 @@ |
|
|
|
import { GfAssetProfileIconComponent } from '@ghostfolio/ui/asset-profile-icon'; |
|
|
|
import { GfEntityLogoComponent } from '@ghostfolio/ui/entity-logo'; |
|
|
|
|
|
|
|
import { CommonModule } from '@angular/common'; |
|
|
|
import { NgModule } from '@angular/core'; |
|
|
@ -15,7 +15,7 @@ import { TransferBalanceDialog } from './transfer-balance-dialog.component'; |
|
|
|
declarations: [TransferBalanceDialog], |
|
|
|
imports: [ |
|
|
|
CommonModule, |
|
|
|
GfAssetProfileIconComponent, |
|
|
|
GfEntityLogoComponent, |
|
|
|
MatButtonModule, |
|
|
|
MatDialogModule, |
|
|
|
MatFormFieldModule, |
|
|
|
|
|
@ -94,7 +94,7 @@ |
|
|
|
<mat-option [value]="account.id"> |
|
|
|
<div class="d-flex"> |
|
|
|
@if (account.Platform?.url) { |
|
|
|
<gf-asset-profile-icon |
|
|
|
<gf-entity-logo |
|
|
|
class="mr-1" |
|
|
|
[tooltip]="account.Platform?.name" |
|
|
|
[url]="account.Platform?.url" |
|
|
|
|
|
@ -1,4 +1,4 @@ |
|
|
|
import { GfAssetProfileIconComponent } from '@ghostfolio/ui/asset-profile-icon'; |
|
|
|
import { GfEntityLogoComponent } from '@ghostfolio/ui/entity-logo'; |
|
|
|
import { GfSymbolAutocompleteComponent } from '@ghostfolio/ui/symbol-autocomplete'; |
|
|
|
import { GfTagsSelectorComponent } from '@ghostfolio/ui/tags-selector'; |
|
|
|
import { GfValueComponent } from '@ghostfolio/ui/value'; |
|
|
@ -21,7 +21,7 @@ import { CreateOrUpdateActivityDialog } from './create-or-update-activity-dialog |
|
|
|
imports: [ |
|
|
|
CommonModule, |
|
|
|
FormsModule, |
|
|
|
GfAssetProfileIconComponent, |
|
|
|
GfEntityLogoComponent, |
|
|
|
GfSymbolAutocompleteComponent, |
|
|
|
GfTagsSelectorComponent, |
|
|
|
GfValueComponent, |
|
|
|
|
|
@ -124,7 +124,7 @@ |
|
|
|
<ng-container matColumnDef="icon" sticky> |
|
|
|
<th *matHeaderCellDef class="px-1" mat-header-cell></th> |
|
|
|
<td *matCellDef="let element" class="px-1 text-center" mat-cell> |
|
|
|
<gf-asset-profile-icon |
|
|
|
<gf-entity-logo |
|
|
|
[dataSource]="element.SymbolProfile?.dataSource" |
|
|
|
[symbol]="element.SymbolProfile?.symbol" |
|
|
|
[tooltip]="element.SymbolProfile?.name" |
|
|
@ -310,7 +310,7 @@ |
|
|
|
<td *matCellDef="let element" class="px-1" mat-cell> |
|
|
|
<div class="d-flex"> |
|
|
|
@if (element.Account?.Platform?.url) { |
|
|
|
<gf-asset-profile-icon |
|
|
|
<gf-entity-logo |
|
|
|
class="mr-1" |
|
|
|
[tooltip]="element.Account?.Platform?.name" |
|
|
|
[url]="element.Account?.Platform?.url" |
|
|
|
|
|
@ -7,7 +7,7 @@ import { getDateFormatString, getLocale } from '@ghostfolio/common/helper'; |
|
|
|
import { AssetProfileIdentifier } from '@ghostfolio/common/interfaces'; |
|
|
|
import { OrderWithAccount } from '@ghostfolio/common/types'; |
|
|
|
import { GfActivityTypeComponent } from '@ghostfolio/ui/activity-type'; |
|
|
|
import { GfAssetProfileIconComponent } from '@ghostfolio/ui/asset-profile-icon'; |
|
|
|
import { GfEntityLogoComponent } from '@ghostfolio/ui/entity-logo'; |
|
|
|
import { GfNoTransactionsInfoComponent } from '@ghostfolio/ui/no-transactions-info'; |
|
|
|
import { GfValueComponent } from '@ghostfolio/ui/value'; |
|
|
|
|
|
|
@ -52,7 +52,7 @@ import { Subject, Subscription, takeUntil } from 'rxjs'; |
|
|
|
imports: [ |
|
|
|
CommonModule, |
|
|
|
GfActivityTypeComponent, |
|
|
|
GfAssetProfileIconComponent, |
|
|
|
GfEntityLogoComponent, |
|
|
|
GfNoTransactionsInfoComponent, |
|
|
|
GfSymbolModule, |
|
|
|
GfValueComponent, |
|
|
|
|
|
@ -1 +0,0 @@ |
|
|
|
export * from './asset-profile-icon.component'; |
|
|
@ -4,7 +4,7 @@ import { DataService } from '@ghostfolio/client/services/data.service'; |
|
|
|
import { getAssetProfileIdentifier } from '@ghostfolio/common/helper'; |
|
|
|
import { Filter, PortfolioPosition, User } from '@ghostfolio/common/interfaces'; |
|
|
|
import { DateRange } from '@ghostfolio/common/types'; |
|
|
|
import { GfAssetProfileIconComponent } from '@ghostfolio/ui/asset-profile-icon'; |
|
|
|
import { GfEntityLogoComponent } from '@ghostfolio/ui/entity-logo'; |
|
|
|
import { translate } from '@ghostfolio/ui/i18n'; |
|
|
|
|
|
|
|
import { FocusKeyManager } from '@angular/cdk/a11y'; |
|
|
@ -61,8 +61,8 @@ import { |
|
|
|
imports: [ |
|
|
|
CommonModule, |
|
|
|
FormsModule, |
|
|
|
GfAssetProfileIconComponent, |
|
|
|
GfAssistantListItemComponent, |
|
|
|
GfEntityLogoComponent, |
|
|
|
GfSymbolModule, |
|
|
|
MatButtonModule, |
|
|
|
MatFormFieldModule, |
|
|
|
|
|
@ -112,7 +112,7 @@ |
|
|
|
@for (account of accounts; track account.id) { |
|
|
|
<mat-option [value]="account.id"> |
|
|
|
<div class="d-flex"> |
|
|
|
<gf-asset-profile-icon |
|
|
|
<gf-entity-logo |
|
|
|
*ngIf="account.Platform?.url" |
|
|
|
class="mr-1" |
|
|
|
[tooltip]="account.Platform?.name" |
|
|
|
|
|
@ -10,11 +10,11 @@ import { DataSource } from '@prisma/client'; |
|
|
|
@Component({ |
|
|
|
changeDetection: ChangeDetectionStrategy.OnPush, |
|
|
|
schemas: [CUSTOM_ELEMENTS_SCHEMA], |
|
|
|
selector: 'gf-asset-profile-icon', |
|
|
|
styleUrls: ['./asset-profile-icon.component.scss'], |
|
|
|
templateUrl: './asset-profile-icon.component.html' |
|
|
|
selector: 'gf-entity-logo', |
|
|
|
styleUrls: ['./entity-logo.component.scss'], |
|
|
|
templateUrl: './entity-logo.component.html' |
|
|
|
}) |
|
|
|
export class GfAssetProfileIconComponent implements OnChanges { |
|
|
|
export class GfEntityLogoComponent implements OnChanges { |
|
|
|
@Input() dataSource: DataSource; |
|
|
|
@Input() size: 'large'; |
|
|
|
@Input() symbol: string; |
|
|
@ -0,0 +1 @@ |
|
|
|
export * from './entity-logo.component'; |
|
|
@ -10,7 +10,7 @@ |
|
|
|
<ng-container matColumnDef="icon" sticky> |
|
|
|
<th *matHeaderCellDef class="px-1" mat-header-cell></th> |
|
|
|
<td *matCellDef="let element" class="px-1 text-center" mat-cell> |
|
|
|
<gf-asset-profile-icon |
|
|
|
<gf-entity-logo |
|
|
|
[dataSource]="element.dataSource" |
|
|
|
[symbol]="element.symbol" |
|
|
|
[tooltip]="element.name" |
|
|
|
|
|
@ -4,7 +4,7 @@ import { |
|
|
|
AssetProfileIdentifier, |
|
|
|
PortfolioPosition |
|
|
|
} from '@ghostfolio/common/interfaces'; |
|
|
|
import { GfAssetProfileIconComponent } from '@ghostfolio/ui/asset-profile-icon'; |
|
|
|
import { GfEntityLogoComponent } from '@ghostfolio/ui/entity-logo'; |
|
|
|
import { GfValueComponent } from '@ghostfolio/ui/value'; |
|
|
|
|
|
|
|
import { CommonModule } from '@angular/common'; |
|
|
@ -32,7 +32,7 @@ import { Subject, Subscription } from 'rxjs'; |
|
|
|
changeDetection: ChangeDetectionStrategy.OnPush, |
|
|
|
imports: [ |
|
|
|
CommonModule, |
|
|
|
GfAssetProfileIconComponent, |
|
|
|
GfEntityLogoComponent, |
|
|
|
GfSymbolModule, |
|
|
|
GfValueComponent, |
|
|
|
MatButtonModule, |
|
|
|