mirror of https://github.com/ghostfolio/ghostfolio
committed by
GitHub
50 changed files with 279 additions and 137 deletions
@ -1,17 +0,0 @@ |
|||
import { AssetProfilesModule } from '@ghostfolio/api/app/endpoints/asset-profiles/asset-profiles.module'; |
|||
import { TransformDataSourceInRequestModule } from '@ghostfolio/api/interceptors/transform-data-source-in-request/transform-data-source-in-request.module'; |
|||
import { TransformDataSourceInResponseModule } from '@ghostfolio/api/interceptors/transform-data-source-in-response/transform-data-source-in-response.module'; |
|||
|
|||
import { Module } from '@nestjs/common'; |
|||
|
|||
import { AssetController } from './asset.controller'; |
|||
|
|||
@Module({ |
|||
controllers: [AssetController], |
|||
imports: [ |
|||
AssetProfilesModule, |
|||
TransformDataSourceInRequestModule, |
|||
TransformDataSourceInResponseModule |
|||
] |
|||
}) |
|||
export class AssetModule {} |
|||
@ -1,19 +0,0 @@ |
|||
import { AuthDeviceController } from '@ghostfolio/api/app/auth-device/auth-device.controller'; |
|||
import { AuthDeviceService } from '@ghostfolio/api/app/auth-device/auth-device.service'; |
|||
import { PrismaModule } from '@ghostfolio/api/services/prisma/prisma.module'; |
|||
|
|||
import { Module } from '@nestjs/common'; |
|||
import { JwtModule } from '@nestjs/jwt'; |
|||
|
|||
@Module({ |
|||
controllers: [AuthDeviceController], |
|||
imports: [ |
|||
JwtModule.register({ |
|||
secret: process.env.JWT_SECRET_KEY, |
|||
signOptions: { expiresIn: '180 days' } |
|||
}), |
|||
PrismaModule |
|||
], |
|||
providers: [AuthDeviceService] |
|||
}) |
|||
export class AuthDeviceModule {} |
|||
@ -0,0 +1,11 @@ |
|||
import { AuthDeviceModule } from '@ghostfolio/api/services/auth-device/auth-device.module'; |
|||
|
|||
import { Module } from '@nestjs/common'; |
|||
|
|||
import { AuthDevicesController } from './auth-devices.controller'; |
|||
|
|||
@Module({ |
|||
controllers: [AuthDevicesController], |
|||
imports: [AuthDeviceModule] |
|||
}) |
|||
export class AuthDevicesModule {} |
|||
@ -0,0 +1,13 @@ |
|||
import { ExchangeRateDataModule } from '@ghostfolio/api/services/exchange-rate-data/exchange-rate-data.module'; |
|||
|
|||
import { Module } from '@nestjs/common'; |
|||
|
|||
import { ExchangeRatesController } from './exchange-rates.controller'; |
|||
import { ExchangeRatesService } from './exchange-rates.service'; |
|||
|
|||
@Module({ |
|||
controllers: [ExchangeRatesController], |
|||
imports: [ExchangeRateDataModule], |
|||
providers: [ExchangeRatesService] |
|||
}) |
|||
export class ExchangeRatesModule {} |
|||
@ -1,14 +0,0 @@ |
|||
import { ExchangeRateDataModule } from '@ghostfolio/api/services/exchange-rate-data/exchange-rate-data.module'; |
|||
|
|||
import { Module } from '@nestjs/common'; |
|||
|
|||
import { ExchangeRateController } from './exchange-rate.controller'; |
|||
import { ExchangeRateService } from './exchange-rate.service'; |
|||
|
|||
@Module({ |
|||
controllers: [ExchangeRateController], |
|||
exports: [ExchangeRateService], |
|||
imports: [ExchangeRateDataModule], |
|||
providers: [ExchangeRateService] |
|||
}) |
|||
export class ExchangeRateModule {} |
|||
@ -0,0 +1,12 @@ |
|||
import { PrismaModule } from '@ghostfolio/api/services/prisma/prisma.module'; |
|||
|
|||
import { Module } from '@nestjs/common'; |
|||
|
|||
import { AuthDeviceService } from './auth-device.service'; |
|||
|
|||
@Module({ |
|||
exports: [AuthDeviceService], |
|||
imports: [PrismaModule], |
|||
providers: [AuthDeviceService] |
|||
}) |
|||
export class AuthDeviceModule {} |
|||
@ -0,0 +1,3 @@ |
|||
export interface ExchangeRateResponse { |
|||
marketPrice: number; |
|||
} |
|||
@ -1,7 +1,10 @@ |
|||
@if (deviceType === 'mobile') { |
|||
<div class="d-flex justify-content-center" mat-dialog-actions> |
|||
<button mat-button (click)="onClickCloseButton()"> |
|||
<ion-icon name="close" size="large" /> |
|||
<button mat-icon-button (click)="onClickCloseButton()"> |
|||
<ion-icon |
|||
class="d-block mat-icon text-body-secondary" |
|||
name="close-outline" |
|||
/> |
|||
</button> |
|||
</div> |
|||
} |
|||
|
|||
@ -1,3 +1,7 @@ |
|||
:host { |
|||
display: block; |
|||
|
|||
button[mat-icon-button] { |
|||
--mat-icon-button-touch-target-display: block; |
|||
} |
|||
} |
|||
|
|||
@ -1,12 +1,19 @@ |
|||
<div class="d-flex" mat-dialog-title> |
|||
<div |
|||
class="d-flex" |
|||
mat-dialog-title |
|||
[class.with-close-button]="deviceType() !== 'mobile'" |
|||
> |
|||
<span |
|||
class="flex-grow-1 text-truncate" |
|||
[class.text-center]="position() === 'center'" |
|||
>{{ title() }}</span |
|||
> |
|||
@if (deviceType() !== 'mobile') { |
|||
<button class="no-min-width px-0" mat-button (click)="onClickCloseButton()"> |
|||
<ion-icon name="close" size="large" /> |
|||
<button mat-icon-button (click)="onClickCloseButton()"> |
|||
<ion-icon |
|||
class="d-block mat-icon text-body-secondary" |
|||
name="close-outline" |
|||
/> |
|||
</button> |
|||
} |
|||
</div> |
|||
|
|||
@ -1,3 +1,14 @@ |
|||
:host { |
|||
display: block; |
|||
|
|||
button[mat-icon-button] { |
|||
margin-right: -0.8125rem; |
|||
margin-top: 0.125rem; |
|||
} |
|||
|
|||
.with-close-button { |
|||
.text-center { |
|||
padding-left: 0.9375rem; |
|||
} |
|||
} |
|||
} |
|||
|
|||
Loading…
Reference in new issue