mirror of https://github.com/ghostfolio/ghostfolio
66 changed files with 3100 additions and 2495 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 {} |
||||
File diff suppressed because it is too large
File diff suppressed because it is too large
File diff suppressed because it is too large
File diff suppressed because it is too large
File diff suppressed because it is too large
File diff suppressed because it is too large
File diff suppressed because it is too large
File diff suppressed because it is too large
File diff suppressed because it is too large
File diff suppressed because it is too large
File diff suppressed because it is too large
File diff suppressed because it is too large
File diff suppressed because it is too large
File diff suppressed because it is too large
@ -0,0 +1,3 @@ |
|||||
|
export interface ExchangeRateResponse { |
||||
|
marketPrice: number; |
||||
|
} |
||||
@ -1,7 +1,10 @@ |
|||||
@if (deviceType === 'mobile') { |
@if (deviceType === 'mobile') { |
||||
<div class="d-flex justify-content-center" mat-dialog-actions> |
<div class="d-flex justify-content-center" mat-dialog-actions> |
||||
<button mat-button (click)="onClickCloseButton()"> |
<button mat-icon-button (click)="onClickCloseButton()"> |
||||
<ion-icon name="close" size="large" /> |
<ion-icon |
||||
|
class="d-block mat-icon text-body-secondary" |
||||
|
name="close-outline" |
||||
|
/> |
||||
</button> |
</button> |
||||
</div> |
</div> |
||||
} |
} |
||||
|
|||||
@ -1,3 +1,7 @@ |
|||||
:host { |
:host { |
||||
display: block; |
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 |
<span |
||||
class="flex-grow-1 text-truncate" |
class="flex-grow-1 text-truncate" |
||||
[class.text-center]="position() === 'center'" |
[class.text-center]="position() === 'center'" |
||||
>{{ title() }}</span |
>{{ title() }}</span |
||||
> |
> |
||||
@if (deviceType() !== 'mobile') { |
@if (deviceType() !== 'mobile') { |
||||
<button class="no-min-width px-0" mat-button (click)="onClickCloseButton()"> |
<button mat-icon-button (click)="onClickCloseButton()"> |
||||
<ion-icon name="close" size="large" /> |
<ion-icon |
||||
|
class="d-block mat-icon text-body-secondary" |
||||
|
name="close-outline" |
||||
|
/> |
||||
</button> |
</button> |
||||
} |
} |
||||
</div> |
</div> |
||||
|
|||||
@ -1,3 +1,14 @@ |
|||||
:host { |
:host { |
||||
display: block; |
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