From ed37f82c0f0b618bc7d3fd3f63735ddc611223a5 Mon Sep 17 00:00:00 2001 From: shamoon <4887959+shamoon@users.noreply.github.com> Date: Sat, 16 Sep 2023 01:09:04 -0700 Subject: [PATCH] Frontend implementation of consumption templates Testing --- src-ui/src/app/app-routing.module.ts | 13 +- src-ui/src/app/app.module.ts | 4 + .../app-frame/app-frame.component.html | 7 + ...mption-template-edit-dialog.component.html | 73 ++++++++ ...mption-template-edit-dialog.component.scss | 0 ...ion-template-edit-dialog.component.spec.ts | 63 +++++++ ...sumption-template-edit-dialog.component.ts | 88 ++++++++++ .../common/input/tags/tags.component.html | 2 +- .../common/input/tags/tags.component.ts | 3 + .../consmption-templates-list.component.html | 33 ++++ .../consmption-templates-list.component.scss | 0 ...onsmption-templates-list.component.spec.ts | 166 ++++++++++++++++++ .../consmption-templates-list.component.ts | 111 ++++++++++++ .../consmption-templates.component.html | 1 + .../consmption-templates.component.scss | 0 .../consmption-templates.component.spec.ts | 21 +++ .../consmption-templates.component.ts | 8 + .../data/paperless-consumption-template.ts | 29 +++ src-ui/src/app/data/paperless-user.ts | 1 - .../app/services/permissions.service.spec.ts | 4 + .../src/app/services/permissions.service.ts | 1 + .../rest/consumption-template.service.spec.ts | 7 + .../rest/consumption-template.service.ts | 42 +++++ 23 files changed, 674 insertions(+), 3 deletions(-) create mode 100644 src-ui/src/app/components/common/edit-dialog/consumption-template-edit-dialog/consumption-template-edit-dialog.component.html create mode 100644 src-ui/src/app/components/common/edit-dialog/consumption-template-edit-dialog/consumption-template-edit-dialog.component.scss create mode 100644 src-ui/src/app/components/common/edit-dialog/consumption-template-edit-dialog/consumption-template-edit-dialog.component.spec.ts create mode 100644 src-ui/src/app/components/common/edit-dialog/consumption-template-edit-dialog/consumption-template-edit-dialog.component.ts create mode 100644 src-ui/src/app/components/manage/consmption-templates-list/consmption-templates-list.component.html create mode 100644 src-ui/src/app/components/manage/consmption-templates-list/consmption-templates-list.component.scss create mode 100644 src-ui/src/app/components/manage/consmption-templates-list/consmption-templates-list.component.spec.ts create mode 100644 src-ui/src/app/components/manage/consmption-templates-list/consmption-templates-list.component.ts create mode 100644 src-ui/src/app/components/manage/consmption-templates/consmption-templates.component.html create mode 100644 src-ui/src/app/components/manage/consmption-templates/consmption-templates.component.scss create mode 100644 src-ui/src/app/components/manage/consmption-templates/consmption-templates.component.spec.ts create mode 100644 src-ui/src/app/components/manage/consmption-templates/consmption-templates.component.ts create mode 100644 src-ui/src/app/data/paperless-consumption-template.ts create mode 100644 src-ui/src/app/services/rest/consumption-template.service.spec.ts create mode 100644 src-ui/src/app/services/rest/consumption-template.service.ts diff --git a/src-ui/src/app/app-routing.module.ts b/src-ui/src/app/app-routing.module.ts index d839274f8..ddedbc763 100644 --- a/src-ui/src/app/app-routing.module.ts +++ b/src-ui/src/app/app-routing.module.ts @@ -21,6 +21,7 @@ import { PermissionAction, PermissionType, } from './services/permissions.service' +import { ConsmptionTemplatesListComponent } from './components/manage/consmption-templates-list/consmption-templates-list.component' export const routes: Routes = [ { path: '', redirectTo: 'dashboard', pathMatch: 'full' }, @@ -182,7 +183,17 @@ export const routes: Routes = [ }, }, }, - { path: 'tasks', component: TasksComponent }, + { + path: 'templates', + component: ConsmptionTemplatesListComponent, + canActivate: [PermissionsGuard], + data: { + requiredPermission: { + action: PermissionAction.View, + type: PermissionType.ConsumptionTemplate, + }, + }, + }, ], }, diff --git a/src-ui/src/app/app.module.ts b/src-ui/src/app/app.module.ts index f46c06cb9..b5098025d 100644 --- a/src-ui/src/app/app.module.ts +++ b/src-ui/src/app/app.module.ts @@ -95,6 +95,8 @@ import { UsernamePipe } from './pipes/username.pipe' import { LogoComponent } from './components/common/logo/logo.component' import { IsNumberPipe } from './pipes/is-number.pipe' import { ShareLinksDropdownComponent } from './components/common/share-links-dropdown/share-links-dropdown.component' +import { ConsmptionTemplatesListComponent } from './components/manage/consmption-templates-list/consmption-templates-list.component' +import { ConsumptionTemplateEditDialogComponent } from './components/common/edit-dialog/consumption-template-edit-dialog/consumption-template-edit-dialog.component' import localeAf from '@angular/common/locales/af' import localeAr from '@angular/common/locales/ar' @@ -233,6 +235,8 @@ function initializeApp(settings: SettingsService) { LogoComponent, IsNumberPipe, ShareLinksDropdownComponent, + ConsmptionTemplatesListComponent, + ConsumptionTemplateEditDialogComponent, ], imports: [ BrowserModule, diff --git a/src-ui/src/app/components/app-frame/app-frame.component.html b/src-ui/src/app/components/app-frame/app-frame.component.html index 3d62c0932..61e716714 100644 --- a/src-ui/src/app/components/app-frame/app-frame.component.html +++ b/src-ui/src/app/components/app-frame/app-frame.component.html @@ -155,6 +155,13 @@  Storage paths +