From 4e51e402a7e3505afd4f3469607cc4a92825fe4a Mon Sep 17 00:00:00 2001 From: Dan Percic Date: Fri, 6 May 2022 11:56:43 +0300 Subject: [PATCH] RED-3765: add license module --- .../app/modules/admin/admin-routing.module.ts | 218 +++++++++--------- .../src/app/modules/admin/admin.module.ts | 16 +- .../combo-chart/combo-chart.component.html | 0 .../combo-chart/combo-chart.component.scss | 0 .../combo-chart/combo-chart.component.ts | 0 .../combo-series-vertical.component.ts | 0 .../license}/combo-chart/index.ts | 0 .../license}/combo-chart/models.ts | 0 .../license-chart.component.html | 0 .../license-chart.component.scss | 0 .../license-chart/license-chart.component.ts | 10 +- .../license-screen.component.html} | 6 +- .../license-screen.component.scss} | 0 .../license-screen.component.ts} | 12 +- .../license-select.component.html} | 0 .../license-select.component.scss} | 0 .../license-select.component.ts} | 12 +- .../admin/screens/license/license.module.ts | 32 +++ .../license/services/license.service.ts} | 2 +- .../utils}/constants.ts | 0 .../utils}/date-range.ts | 0 .../licence.ts => license/utils/license.ts} | 0 .../admin/shared/shared-admin.module.ts | 8 +- 23 files changed, 168 insertions(+), 148 deletions(-) rename apps/red-ui/src/app/modules/admin/{components => screens/license}/combo-chart/combo-chart.component.html (100%) rename apps/red-ui/src/app/modules/admin/{components => screens/license}/combo-chart/combo-chart.component.scss (100%) rename apps/red-ui/src/app/modules/admin/{components => screens/license}/combo-chart/combo-chart.component.ts (100%) rename apps/red-ui/src/app/modules/admin/{components => screens/license}/combo-chart/combo-series-vertical.component.ts (100%) rename apps/red-ui/src/app/modules/admin/{components => screens/license}/combo-chart/index.ts (100%) rename apps/red-ui/src/app/modules/admin/{components => screens/license}/combo-chart/models.ts (100%) rename apps/red-ui/src/app/modules/admin/screens/{license-information => license}/license-chart/license-chart.component.html (100%) rename apps/red-ui/src/app/modules/admin/screens/{license-information => license}/license-chart/license-chart.component.scss (100%) rename apps/red-ui/src/app/modules/admin/screens/{license-information => license}/license-chart/license-chart.component.ts (93%) rename apps/red-ui/src/app/modules/admin/screens/{license-information/license-information-screen.component.html => license/license-screen/license-screen.component.html} (94%) rename apps/red-ui/src/app/modules/admin/screens/{license-information/license-information-screen.component.scss => license/license-screen/license-screen.component.scss} (100%) rename apps/red-ui/src/app/modules/admin/screens/{license-information/license-information-screen.component.ts => license/license-screen/license-screen.component.ts} (90%) rename apps/red-ui/src/app/modules/admin/screens/{license-information/select-licence/select-license.component.html => license/license-select/license-select.component.html} (100%) rename apps/red-ui/src/app/modules/admin/screens/{license-information/select-licence/select-license.component.scss => license/license-select/license-select.component.scss} (100%) rename apps/red-ui/src/app/modules/admin/screens/{license-information/select-licence/select-license.component.ts => license/license-select/license-select.component.ts} (71%) create mode 100644 apps/red-ui/src/app/modules/admin/screens/license/license.module.ts rename apps/red-ui/src/app/modules/admin/{services/licence-report.service.ts => screens/license/services/license.service.ts} (95%) rename apps/red-ui/src/app/modules/admin/screens/{license-information => license/utils}/constants.ts (100%) rename apps/red-ui/src/app/modules/admin/screens/{license-information => license/utils}/date-range.ts (100%) rename apps/red-ui/src/app/modules/admin/screens/{license-information/licence.ts => license/utils/license.ts} (100%) diff --git a/apps/red-ui/src/app/modules/admin/admin-routing.module.ts b/apps/red-ui/src/app/modules/admin/admin-routing.module.ts index d142d6642..2fcbb5317 100644 --- a/apps/red-ui/src/app/modules/admin/admin-routing.module.ts +++ b/apps/red-ui/src/app/modules/admin/admin-routing.module.ts @@ -7,7 +7,6 @@ import { PendingChangesGuard } from '@guards/can-deactivate.guard'; import { FileAttributesListingScreenComponent } from './screens/file-attributes-listing/file-attributes-listing-screen.component'; import { DefaultColorsScreenComponent } from './screens/default-colors/default-colors-screen.component'; import { UserListingScreenComponent } from './screens/user-listing/user-listing-screen.component'; -import { LicenseInformationScreenComponent } from './screens/license-information/license-information-screen.component'; import { DigitalSignatureScreenComponent } from './screens/digital-signature/digital-signature-screen.component'; import { AuditScreenComponent } from './screens/audit/audit-screen.component'; import { RouterModule, Routes } from '@angular/router'; @@ -26,125 +25,127 @@ import { ACTIVE_DOSSIERS_SERVICE } from '../../tokens'; import { BaseEntityScreenComponent } from './base-entity-screen/base-entity-screen.component'; import { PermissionsGuard } from '../../guards/permissions-guard'; -const routes: Routes = [ - { path: '', redirectTo: 'dossier-templates', pathMatch: 'full' }, +const dossierTemplateIdRoutes = [ { - path: 'dossier-templates', + path: 'info', + canActivate: [CompositeRouteGuard], + component: BaseDossierTemplateScreenComponent, + loadChildren: () => import('./screens/info/dossier-template-info.module').then(m => m.DossierTemplateInfoModule), + }, + { + path: 'entities', children: [ { path: '', - component: BaseAdminScreenComponent, + component: EntitiesListingScreenComponent, canActivate: [CompositeRouteGuard], data: { routeGuards: [AuthGuard, RedRoleGuard], }, - loadChildren: () => - import('./screens/dossier-templates-listing/dossier-templates-listing.module').then( - m => m.DossierTemplatesListingModule, - ), }, { - path: `:${DOSSIER_TEMPLATE_ID}`, - children: [ - { - path: 'info', - canActivate: [CompositeRouteGuard], - component: BaseDossierTemplateScreenComponent, - loadChildren: () => import('./screens/info/dossier-template-info.module').then(m => m.DossierTemplateInfoModule), - }, - { - path: 'entities', - children: [ - { - path: '', - component: EntitiesListingScreenComponent, - canActivate: [CompositeRouteGuard], - data: { - routeGuards: [AuthGuard, RedRoleGuard], - }, - }, - { - path: `:${ENTITY_TYPE}`, - component: BaseEntityScreenComponent, - canActivate: [CompositeRouteGuard], - loadChildren: () => import('./screens/entities/entities.module').then(m => m.EntitiesModule), - data: { - routeGuards: [AuthGuard, RedRoleGuard, EntityExistsGuard], - }, - }, - ], - }, - { - path: 'rules', - component: BaseDossierTemplateScreenComponent, - canActivate: [CompositeRouteGuard], - data: { - routeGuards: [AuthGuard, RedRoleGuard], - }, - loadChildren: () => import('./screens/rules/rules.module').then(m => m.RulesModule), - }, - { - path: 'file-attributes', - component: FileAttributesListingScreenComponent, - canActivate: [CompositeRouteGuard], - data: { - routeGuards: [AuthGuard, RedRoleGuard], - }, - }, - { - path: 'watermark', - component: BaseDossierTemplateScreenComponent, - canActivate: [CompositeRouteGuard], - data: { - routeGuards: [AuthGuard, RedRoleGuard], - }, - loadChildren: () => import('./screens/watermark/watermark.module').then(m => m.WatermarkModule), - }, - { - path: 'reports', - component: BaseDossierTemplateScreenComponent, - canActivate: [CompositeRouteGuard], - data: { - routeGuards: [AuthGuard, RedRoleGuard], - }, - loadChildren: () => import('./screens/reports/reports.module').then(m => m.ReportsModule), - }, - { - path: 'dossier-attributes', - component: DossierAttributesListingScreenComponent, - canActivate: [CompositeRouteGuard], - data: { - routeGuards: [AuthGuard, RedRoleGuard], - }, - }, - { - path: 'dossier-states', - component: DossierStatesListingScreenComponent, - canActivate: [CompositeRouteGuard], - data: { - routeGuards: [AuthGuard, RedRoleGuard], - }, - }, - { - path: 'default-colors', - component: DefaultColorsScreenComponent, - canActivate: [CompositeRouteGuard], - data: { - routeGuards: [AuthGuard, RedRoleGuard], - }, - }, - { - path: 'justifications', - component: BaseDossierTemplateScreenComponent, - canActivate: [CompositeRouteGuard], - loadChildren: () => import('./screens/justifications/justifications.module').then(m => m.JustificationsModule), - }, - { path: '', redirectTo: 'info', pathMatch: 'full' }, - ], + path: `:${ENTITY_TYPE}`, + component: BaseEntityScreenComponent, canActivate: [CompositeRouteGuard], - data: { routeGuards: [DossierTemplateExistsGuard] }, + loadChildren: () => import('./screens/entities/entities.module').then(m => m.EntitiesModule), + data: { + routeGuards: [AuthGuard, RedRoleGuard, EntityExistsGuard], + }, }, ], + }, + { + path: 'rules', + component: BaseDossierTemplateScreenComponent, + canActivate: [CompositeRouteGuard], + data: { + routeGuards: [AuthGuard, RedRoleGuard], + }, + loadChildren: () => import('./screens/rules/rules.module').then(m => m.RulesModule), + }, + { + path: 'file-attributes', + component: FileAttributesListingScreenComponent, + canActivate: [CompositeRouteGuard], + data: { + routeGuards: [AuthGuard, RedRoleGuard], + }, + }, + { + path: 'watermark', + component: BaseDossierTemplateScreenComponent, + canActivate: [CompositeRouteGuard], + data: { + routeGuards: [AuthGuard, RedRoleGuard], + }, + loadChildren: () => import('./screens/watermark/watermark.module').then(m => m.WatermarkModule), + }, + { + path: 'reports', + component: BaseDossierTemplateScreenComponent, + canActivate: [CompositeRouteGuard], + data: { + routeGuards: [AuthGuard, RedRoleGuard], + }, + loadChildren: () => import('./screens/reports/reports.module').then(m => m.ReportsModule), + }, + { + path: 'dossier-attributes', + component: DossierAttributesListingScreenComponent, + canActivate: [CompositeRouteGuard], + data: { + routeGuards: [AuthGuard, RedRoleGuard], + }, + }, + { + path: 'dossier-states', + component: DossierStatesListingScreenComponent, + canActivate: [CompositeRouteGuard], + data: { + routeGuards: [AuthGuard, RedRoleGuard], + }, + }, + { + path: 'default-colors', + component: DefaultColorsScreenComponent, + canActivate: [CompositeRouteGuard], + data: { + routeGuards: [AuthGuard, RedRoleGuard], + }, + }, + { + path: 'justifications', + component: BaseDossierTemplateScreenComponent, + canActivate: [CompositeRouteGuard], + loadChildren: () => import('./screens/justifications/justifications.module').then(m => m.JustificationsModule), + }, + { path: '', redirectTo: 'info', pathMatch: 'full' }, +]; + +const dossierTemplatesRoutes: Routes = [ + { + path: '', + component: BaseAdminScreenComponent, + canActivate: [CompositeRouteGuard], + data: { + routeGuards: [AuthGuard, RedRoleGuard], + }, + loadChildren: () => + import('./screens/dossier-templates-listing/dossier-templates-listing.module').then(m => m.DossierTemplatesListingModule), + }, + { + path: `:${DOSSIER_TEMPLATE_ID}`, + children: dossierTemplateIdRoutes, + canActivate: [CompositeRouteGuard], + data: { routeGuards: [DossierTemplateExistsGuard] }, + }, +]; + +const routes: Routes = [ + { path: '', redirectTo: 'dossier-templates', pathMatch: 'full' }, + { + path: 'dossier-templates', + children: dossierTemplatesRoutes, canActivate: [CompositeRouteGuard], data: { routeGuards: [AuthGuard, RedRoleGuard, DossierTemplatesGuard], @@ -173,12 +174,13 @@ const routes: Routes = [ }, { path: 'license-info', - component: LicenseInformationScreenComponent, + component: BaseAdminScreenComponent, canActivate: [CompositeRouteGuard], data: { routeGuards: [AuthGuard, RedRoleGuard], requiredRoles: ['RED_ADMIN'], }, + loadChildren: () => import('./screens/license/license.module').then(m => m.LicenseModule), }, { path: 'digital-signature', diff --git a/apps/red-ui/src/app/modules/admin/admin.module.ts b/apps/red-ui/src/app/modules/admin/admin.module.ts index 4693a3792..f3be32ed2 100644 --- a/apps/red-ui/src/app/modules/admin/admin.module.ts +++ b/apps/red-ui/src/app/modules/admin/admin.module.ts @@ -7,7 +7,6 @@ import { DefaultColorsScreenComponent } from './screens/default-colors/default-c import { EntitiesListingScreenComponent } from './screens/entities-listing/entities-listing-screen.component'; import { DigitalSignatureScreenComponent } from './screens/digital-signature/digital-signature-screen.component'; import { FileAttributesListingScreenComponent } from './screens/file-attributes-listing/file-attributes-listing-screen.component'; -import { LicenseInformationScreenComponent } from './screens/license-information/license-information-screen.component'; import { UserListingScreenComponent } from './screens/user-listing/user-listing-screen.component'; import { DossierTemplateBreadcrumbsComponent } from './components/dossier-template-breadcrumbs/dossier-template-breadcrumbs.component'; import { ColorPickerModule } from 'ngx-color-picker'; @@ -15,8 +14,6 @@ import { AddEditFileAttributeDialogComponent } from './dialogs/add-edit-file-att import { AddEditDossierTemplateDialogComponent } from './dialogs/add-edit-dossier-template-dialog/add-edit-dossier-template-dialog.component'; import { AddEntityDialogComponent } from './dialogs/add-entity-dialog/add-entity-dialog.component'; import { EditColorDialogComponent } from './dialogs/edit-color-dialog/edit-color-dialog.component'; -import { ComboChartComponent, ComboSeriesVerticalComponent } from './components/combo-chart'; -import { NgxChartsModule } from '@swimlane/ngx-charts'; import { AdminDialogService } from './services/admin-dialog.service'; import { GeneralConfigScreenComponent } from './screens/general-config/general-config-screen.component'; import { SmtpAuthDialogComponent } from './dialogs/smtp-auth-dialog/smtp-auth-dialog.component'; @@ -24,7 +21,6 @@ import { AddEditUserDialogComponent } from './dialogs/add-edit-user-dialog/add-e import { UsersStatsComponent } from './components/users-stats/users-stats.component'; import { FileAttributesCsvImportDialogComponent } from './dialogs/file-attributes-csv-import-dialog/file-attributes-csv-import-dialog.component'; import { ActiveFieldsListingComponent } from './dialogs/file-attributes-csv-import-dialog/active-fields-listing/active-fields-listing.component'; -import { AdminSideNavComponent } from './admin-side-nav/admin-side-nav.component'; import { ResetPasswordComponent } from './dialogs/add-edit-user-dialog/reset-password/reset-password.component'; import { UserDetailsComponent } from './dialogs/add-edit-user-dialog/user-details/user-details.component'; import { AddEditDossierAttributeDialogComponent } from './dialogs/add-edit-dossier-attribute-dialog/add-edit-dossier-attribute-dialog.component'; @@ -48,8 +44,7 @@ import { ConfirmDeleteDossierStateDialogComponent } from './dialogs/confirm-dele import { TrashTableItemComponent } from './screens/trash/trash-table-item/trash-table-item.component'; import { BaseEntityScreenComponent } from './base-entity-screen/base-entity-screen.component'; import { CloneDossierTemplateDialogComponent } from './dialogs/clone-dossier-template-dialog/clone-dossier-template-dialog.component'; -import { SelectLicenseComponent } from './screens/license-information/select-licence/select-license.component'; -import { LicenseChartComponent } from './screens/license-information/license-chart/license-chart.component'; +import { AdminSideNavComponent } from './admin-side-nav/admin-side-nav.component'; const dialogs = [ AddEditDossierTemplateDialogComponent, @@ -71,7 +66,6 @@ const screens = [ EntitiesListingScreenComponent, DigitalSignatureScreenComponent, FileAttributesListingScreenComponent, - LicenseInformationScreenComponent, UserListingScreenComponent, GeneralConfigScreenComponent, DossierAttributesListingScreenComponent, @@ -80,11 +74,9 @@ const screens = [ const components = [ DossierTemplateBreadcrumbsComponent, - ComboChartComponent, - ComboSeriesVerticalComponent, UsersStatsComponent, - ActiveFieldsListingComponent, AdminSideNavComponent, + ActiveFieldsListingComponent, ResetPasswordComponent, UserDetailsComponent, BaseAdminScreenComponent, @@ -104,10 +96,8 @@ const components = [ AddEditDossierStateDialogComponent, ConfirmDeleteDossierStateDialogComponent, TrashTableItemComponent, - SelectLicenseComponent, - LicenseChartComponent, ], providers: [AdminDialogService, AuditService, DigitalSignatureService, RulesService, SmtpConfigService], - imports: [CommonModule, SharedModule, AdminRoutingModule, SharedAdminModule, NgxChartsModule, ColorPickerModule, A11yModule], + imports: [CommonModule, SharedModule, AdminRoutingModule, SharedAdminModule, ColorPickerModule, A11yModule], }) export class AdminModule {} diff --git a/apps/red-ui/src/app/modules/admin/components/combo-chart/combo-chart.component.html b/apps/red-ui/src/app/modules/admin/screens/license/combo-chart/combo-chart.component.html similarity index 100% rename from apps/red-ui/src/app/modules/admin/components/combo-chart/combo-chart.component.html rename to apps/red-ui/src/app/modules/admin/screens/license/combo-chart/combo-chart.component.html diff --git a/apps/red-ui/src/app/modules/admin/components/combo-chart/combo-chart.component.scss b/apps/red-ui/src/app/modules/admin/screens/license/combo-chart/combo-chart.component.scss similarity index 100% rename from apps/red-ui/src/app/modules/admin/components/combo-chart/combo-chart.component.scss rename to apps/red-ui/src/app/modules/admin/screens/license/combo-chart/combo-chart.component.scss diff --git a/apps/red-ui/src/app/modules/admin/components/combo-chart/combo-chart.component.ts b/apps/red-ui/src/app/modules/admin/screens/license/combo-chart/combo-chart.component.ts similarity index 100% rename from apps/red-ui/src/app/modules/admin/components/combo-chart/combo-chart.component.ts rename to apps/red-ui/src/app/modules/admin/screens/license/combo-chart/combo-chart.component.ts diff --git a/apps/red-ui/src/app/modules/admin/components/combo-chart/combo-series-vertical.component.ts b/apps/red-ui/src/app/modules/admin/screens/license/combo-chart/combo-series-vertical.component.ts similarity index 100% rename from apps/red-ui/src/app/modules/admin/components/combo-chart/combo-series-vertical.component.ts rename to apps/red-ui/src/app/modules/admin/screens/license/combo-chart/combo-series-vertical.component.ts diff --git a/apps/red-ui/src/app/modules/admin/components/combo-chart/index.ts b/apps/red-ui/src/app/modules/admin/screens/license/combo-chart/index.ts similarity index 100% rename from apps/red-ui/src/app/modules/admin/components/combo-chart/index.ts rename to apps/red-ui/src/app/modules/admin/screens/license/combo-chart/index.ts diff --git a/apps/red-ui/src/app/modules/admin/components/combo-chart/models.ts b/apps/red-ui/src/app/modules/admin/screens/license/combo-chart/models.ts similarity index 100% rename from apps/red-ui/src/app/modules/admin/components/combo-chart/models.ts rename to apps/red-ui/src/app/modules/admin/screens/license/combo-chart/models.ts diff --git a/apps/red-ui/src/app/modules/admin/screens/license-information/license-chart/license-chart.component.html b/apps/red-ui/src/app/modules/admin/screens/license/license-chart/license-chart.component.html similarity index 100% rename from apps/red-ui/src/app/modules/admin/screens/license-information/license-chart/license-chart.component.html rename to apps/red-ui/src/app/modules/admin/screens/license/license-chart/license-chart.component.html diff --git a/apps/red-ui/src/app/modules/admin/screens/license-information/license-chart/license-chart.component.scss b/apps/red-ui/src/app/modules/admin/screens/license/license-chart/license-chart.component.scss similarity index 100% rename from apps/red-ui/src/app/modules/admin/screens/license-information/license-chart/license-chart.component.scss rename to apps/red-ui/src/app/modules/admin/screens/license/license-chart/license-chart.component.scss diff --git a/apps/red-ui/src/app/modules/admin/screens/license-information/license-chart/license-chart.component.ts b/apps/red-ui/src/app/modules/admin/screens/license/license-chart/license-chart.component.ts similarity index 93% rename from apps/red-ui/src/app/modules/admin/screens/license-information/license-chart/license-chart.component.ts rename to apps/red-ui/src/app/modules/admin/screens/license/license-chart/license-chart.component.ts index 207c1eca6..1f64cec27 100644 --- a/apps/red-ui/src/app/modules/admin/screens/license-information/license-chart/license-chart.component.ts +++ b/apps/red-ui/src/app/modules/admin/screens/license/license-chart/license-chart.component.ts @@ -1,13 +1,13 @@ import { Component } from '@angular/core'; -import { ComboBarScheme, LineChartScheme } from '../constants'; +import { ComboBarScheme, LineChartScheme } from '../utils/constants'; import dayjs from 'dayjs'; import { TranslateService } from '@ngx-translate/core'; import { ILicenseReport } from '@red/domain'; -import { LicenseService } from '../../../services/licence-report.service'; -import { IDateRange } from '../date-range'; -import { ILicense } from '../licence'; +import { LicenseService } from '../services/license.service'; +import { IDateRange } from '../utils/date-range'; +import { ILicense } from '../utils/license'; import { switchMap } from 'rxjs/operators'; -import { ILineChartSeries } from '../../../components/combo-chart/models'; +import { ILineChartSeries } from '../combo-chart/models'; import { ConfigService } from '../../../../../services/config.service'; const monthNames = dayjs.monthsShort(); diff --git a/apps/red-ui/src/app/modules/admin/screens/license-information/license-information-screen.component.html b/apps/red-ui/src/app/modules/admin/screens/license/license-screen/license-screen.component.html similarity index 94% rename from apps/red-ui/src/app/modules/admin/screens/license-information/license-information-screen.component.html rename to apps/red-ui/src/app/modules/admin/screens/license/license-screen/license-screen.component.html index 5d0f57dd6..a762eefda 100644 --- a/apps/red-ui/src/app/modules/admin/screens/license-information/license-information-screen.component.html +++ b/apps/red-ui/src/app/modules/admin/screens/license/license-screen/license-screen.component.html @@ -1,8 +1,4 @@
-
- - -
- +
diff --git a/apps/red-ui/src/app/modules/admin/screens/license-information/license-information-screen.component.scss b/apps/red-ui/src/app/modules/admin/screens/license/license-screen/license-screen.component.scss similarity index 100% rename from apps/red-ui/src/app/modules/admin/screens/license-information/license-information-screen.component.scss rename to apps/red-ui/src/app/modules/admin/screens/license/license-screen/license-screen.component.scss diff --git a/apps/red-ui/src/app/modules/admin/screens/license-information/license-information-screen.component.ts b/apps/red-ui/src/app/modules/admin/screens/license/license-screen/license-screen.component.ts similarity index 90% rename from apps/red-ui/src/app/modules/admin/screens/license-information/license-information-screen.component.ts rename to apps/red-ui/src/app/modules/admin/screens/license/license-screen/license-screen.component.ts index 0deef09ea..b42e04ca2 100644 --- a/apps/red-ui/src/app/modules/admin/screens/license-information/license-information-screen.component.ts +++ b/apps/red-ui/src/app/modules/admin/screens/license/license-screen/license-screen.component.ts @@ -5,18 +5,16 @@ import { ButtonConfig, IconButtonTypes, LoadingService } from '@iqser/common-ui' import { marker as _ } from '@biesbjerg/ngx-translate-extract-marker'; import { UserService } from '@services/user.service'; import { RouterHistoryService } from '@services/router-history.service'; -import { LicenseService } from '../../services/licence-report.service'; +import { LicenseService } from '../services/license.service'; import { ILicenseReport } from '@red/domain'; import dayjs from 'dayjs'; -import { ILicense } from './licence'; +import { ILicense } from '../utils/license'; @Component({ - selector: 'redaction-license-information-screen', - templateUrl: './license-information-screen.component.html', - styleUrls: ['./license-information-screen.component.scss'], - providers: [LicenseService], + templateUrl: './license-screen.component.html', + styleUrls: ['./license-screen.component.scss'], }) -export class LicenseInformationScreenComponent implements OnInit { +export class LicenseScreenComponent implements OnInit { readonly currentYear = new Date().getFullYear(); readonly currentUser = this._userService.currentUser; readonly buttonConfigs: readonly ButtonConfig[] = [ diff --git a/apps/red-ui/src/app/modules/admin/screens/license-information/select-licence/select-license.component.html b/apps/red-ui/src/app/modules/admin/screens/license/license-select/license-select.component.html similarity index 100% rename from apps/red-ui/src/app/modules/admin/screens/license-information/select-licence/select-license.component.html rename to apps/red-ui/src/app/modules/admin/screens/license/license-select/license-select.component.html diff --git a/apps/red-ui/src/app/modules/admin/screens/license-information/select-licence/select-license.component.scss b/apps/red-ui/src/app/modules/admin/screens/license/license-select/license-select.component.scss similarity index 100% rename from apps/red-ui/src/app/modules/admin/screens/license-information/select-licence/select-license.component.scss rename to apps/red-ui/src/app/modules/admin/screens/license/license-select/license-select.component.scss diff --git a/apps/red-ui/src/app/modules/admin/screens/license-information/select-licence/select-license.component.ts b/apps/red-ui/src/app/modules/admin/screens/license/license-select/license-select.component.ts similarity index 71% rename from apps/red-ui/src/app/modules/admin/screens/license-information/select-licence/select-license.component.ts rename to apps/red-ui/src/app/modules/admin/screens/license/license-select/license-select.component.ts index 954521f9c..6c088558d 100644 --- a/apps/red-ui/src/app/modules/admin/screens/license-information/select-licence/select-license.component.ts +++ b/apps/red-ui/src/app/modules/admin/screens/license/license-select/license-select.component.ts @@ -1,6 +1,6 @@ import { Component, EventEmitter, Output } from '@angular/core'; -import { LicenseService } from '../../../services/licence-report.service'; -import { ILicense } from '../licence'; +import { LicenseService } from '../services/license.service'; +import { ILicense } from '../utils/license'; import { marker as _ } from '@biesbjerg/ngx-translate-extract-marker'; const translations = { @@ -9,11 +9,11 @@ const translations = { } as const; @Component({ - selector: 'redaction-select-license', - templateUrl: './select-license.component.html', - styleUrls: ['./select-license.component.scss'], + selector: 'redaction-license-select', + templateUrl: './license-select.component.html', + styleUrls: ['./license-select.component.scss'], }) -export class SelectLicenseComponent { +export class LicenseSelectComponent { @Output() readonly valueChanges = new EventEmitter(); value = this.licenseService.getActiveLicense(); diff --git a/apps/red-ui/src/app/modules/admin/screens/license/license.module.ts b/apps/red-ui/src/app/modules/admin/screens/license/license.module.ts new file mode 100644 index 000000000..dbe83e1b0 --- /dev/null +++ b/apps/red-ui/src/app/modules/admin/screens/license/license.module.ts @@ -0,0 +1,32 @@ +import { NgModule } from '@angular/core'; +import { LicenseScreenComponent } from './license-screen/license-screen.component'; +import { LicenseSelectComponent } from './license-select/license-select.component'; +import { LicenseChartComponent } from './license-chart/license-chart.component'; +import { LicenseService } from './services/license.service'; +import { RouterModule, Routes } from '@angular/router'; +import { TranslateModule } from '@ngx-translate/core'; +import { MatSelectModule } from '@angular/material/select'; +import { IqserListingModule } from '@iqser/common-ui'; +import { NgxChartsModule } from '@swimlane/ngx-charts'; +import { ComboChartComponent, ComboSeriesVerticalComponent } from './combo-chart'; +import { FormsModule } from '@angular/forms'; + +const routes: Routes = [ + { + path: '', + component: LicenseScreenComponent, + }, +]; + +@NgModule({ + declarations: [ + LicenseScreenComponent, + LicenseSelectComponent, + LicenseChartComponent, + ComboChartComponent, + ComboSeriesVerticalComponent, + ], + imports: [RouterModule.forChild(routes), TranslateModule, MatSelectModule, FormsModule, NgxChartsModule, IqserListingModule], + providers: [LicenseService], +}) +export class LicenseModule {} diff --git a/apps/red-ui/src/app/modules/admin/services/licence-report.service.ts b/apps/red-ui/src/app/modules/admin/screens/license/services/license.service.ts similarity index 95% rename from apps/red-ui/src/app/modules/admin/services/licence-report.service.ts rename to apps/red-ui/src/app/modules/admin/screens/license/services/license.service.ts index 303112868..d16c98ca0 100644 --- a/apps/red-ui/src/app/modules/admin/services/licence-report.service.ts +++ b/apps/red-ui/src/app/modules/admin/screens/license/services/license.service.ts @@ -2,7 +2,7 @@ import { Injectable, Injector } from '@angular/core'; import { GenericService, QueryParam, RequiredParam, Validate } from '@iqser/common-ui'; import { ILicenseReport, ILicenseReportRequest } from '@red/domain'; import { BehaviorSubject, firstValueFrom } from 'rxjs'; -import { ILicense, LICENSE_DATA } from '../screens/license-information/licence'; +import { ILicense, LICENSE_DATA } from '../utils/license'; @Injectable() export class LicenseService extends GenericService { diff --git a/apps/red-ui/src/app/modules/admin/screens/license-information/constants.ts b/apps/red-ui/src/app/modules/admin/screens/license/utils/constants.ts similarity index 100% rename from apps/red-ui/src/app/modules/admin/screens/license-information/constants.ts rename to apps/red-ui/src/app/modules/admin/screens/license/utils/constants.ts diff --git a/apps/red-ui/src/app/modules/admin/screens/license-information/date-range.ts b/apps/red-ui/src/app/modules/admin/screens/license/utils/date-range.ts similarity index 100% rename from apps/red-ui/src/app/modules/admin/screens/license-information/date-range.ts rename to apps/red-ui/src/app/modules/admin/screens/license/utils/date-range.ts diff --git a/apps/red-ui/src/app/modules/admin/screens/license-information/licence.ts b/apps/red-ui/src/app/modules/admin/screens/license/utils/license.ts similarity index 100% rename from apps/red-ui/src/app/modules/admin/screens/license-information/licence.ts rename to apps/red-ui/src/app/modules/admin/screens/license/utils/license.ts diff --git a/apps/red-ui/src/app/modules/admin/shared/shared-admin.module.ts b/apps/red-ui/src/app/modules/admin/shared/shared-admin.module.ts index 32bdf41f4..285cc8f30 100644 --- a/apps/red-ui/src/app/modules/admin/shared/shared-admin.module.ts +++ b/apps/red-ui/src/app/modules/admin/shared/shared-admin.module.ts @@ -4,13 +4,15 @@ import { SharedModule } from '@shared/shared.module'; import { DossierTemplateActionsComponent } from './components/dossier-template-actions/dossier-template-actions.component'; import { AddEditEntityComponent } from './components/add-edit-entity/add-edit-entity.component'; import { ColorPickerModule } from 'ngx-color-picker'; +import { RouterModule } from '@angular/router'; const components = [DossierTemplateActionsComponent, AddEditEntityComponent]; +const modules = [CommonModule, SharedModule]; + @NgModule({ declarations: [...components], - exports: [...components], - providers: [], - imports: [CommonModule, SharedModule, ColorPickerModule], + exports: [...components, ...modules], + imports: [...modules, RouterModule, ColorPickerModule], }) export class SharedAdminModule {}