WEB-215 Merge angular-update-19 into dev to upgrade Angular from v18 to v19 (#2530)

This commit is contained in:
Gopi Kishan
2025-06-20 19:03:06 -06:00
committed by GitHub
parent 263ddf0198
commit 6ee9897bd1
722 changed files with 17740 additions and 4075 deletions
@@ -1,11 +1,19 @@
import { Component, Input, OnDestroy, OnInit } from '@angular/core';
import { SystemService } from 'app/system/system.service';
import { environment } from 'environments/environment';
import { environment } from '../../../../environments/environment';
import { FaIconComponent } from '@fortawesome/angular-fontawesome';
import { LoanLockedComponent } from './loan-locked/loan-locked.component';
import { STANDALONE_SHARED_IMPORTS } from 'app/standalone-shared.module';
@Component({
selector: 'mifosx-cob-workflow',
templateUrl: './cob-workflow.component.html',
styleUrls: ['./cob-workflow.component.scss']
styleUrls: ['./cob-workflow.component.scss'],
imports: [
...STANDALONE_SHARED_IMPORTS,
FaIconComponent,
LoanLockedComponent
]
})
export class CobWorkflowComponent implements OnInit, OnDestroy {
/** Wait time between API status calls 30 seg */
@@ -2,18 +2,55 @@ import { SelectionModel } from '@angular/cdk/collections';
import { Component, OnInit, ViewChild } from '@angular/core';
import { MatDialog } from '@angular/material/dialog';
import { MatPaginator } from '@angular/material/paginator';
import { MatTableDataSource } from '@angular/material/table';
import {
MatTableDataSource,
MatTable,
MatColumnDef,
MatHeaderCellDef,
MatHeaderCell,
MatCellDef,
MatCell,
MatHeaderRowDef,
MatHeaderRow,
MatRowDef,
MatRow
} from '@angular/material/table';
import { ActivatedRoute, Router } from '@angular/router';
import { TranslateService } from '@ngx-translate/core';
import { LoansService } from 'app/loans/loans.service';
import { ErrorDialogComponent } from 'app/shared/error-dialog/error-dialog.component';
import { SystemService } from 'app/system/system.service';
import { TasksService } from 'app/tasks/tasks.service';
import { MatButton, MatIconButton } from '@angular/material/button';
import { FaIconComponent } from '@fortawesome/angular-fontawesome';
import { MatCheckbox } from '@angular/material/checkbox';
import { MatTooltip } from '@angular/material/tooltip';
import { DatetimeFormatPipe } from '../../../../pipes/datetime-format.pipe';
import { STANDALONE_SHARED_IMPORTS } from 'app/standalone-shared.module';
@Component({
selector: 'mifosx-loan-locked',
templateUrl: './loan-locked.component.html',
styleUrls: ['./loan-locked.component.scss']
styleUrls: ['./loan-locked.component.scss'],
imports: [
...STANDALONE_SHARED_IMPORTS,
FaIconComponent,
MatTable,
MatColumnDef,
MatHeaderCellDef,
MatHeaderCell,
MatCheckbox,
MatCellDef,
MatCell,
MatIconButton,
MatTooltip,
MatHeaderRowDef,
MatHeaderRow,
MatRowDef,
MatRow,
MatPaginator,
DatetimeFormatPipe
]
})
export class LoanLockedComponent implements OnInit {
/** Loans Data */
@@ -1,12 +1,24 @@
import { Component } from '@angular/core';
import { MatTabChangeEvent } from '@angular/material/tabs';
import { MatTabChangeEvent, MatTabGroup, MatTab } from '@angular/material/tabs';
import { SystemService } from '../system.service';
import { TranslateService } from '@ngx-translate/core';
import { ManageSchedulerJobsComponent } from './scheduler-jobs/manage-scheduler-jobs.component';
import { WorkflowJobsComponent } from './workflow-jobs/workflow-jobs.component';
import { CobWorkflowComponent } from './cob-workflow/cob-workflow.component';
import { STANDALONE_SHARED_IMPORTS } from 'app/standalone-shared.module';
@Component({
selector: 'mifosx-manage-jobs',
templateUrl: './manage-jobs.component.html',
styleUrls: ['./manage-jobs.component.scss']
styleUrls: ['./manage-jobs.component.scss'],
imports: [
...STANDALONE_SHARED_IMPORTS,
MatTabGroup,
MatTab,
ManageSchedulerJobsComponent,
WorkflowJobsComponent,
CobWorkflowComponent
]
})
export class ManageJobsComponent {
/** Process running flag */
@@ -1,8 +1,19 @@
import { SelectionModel } from '@angular/cdk/collections';
import { Component, Inject, OnInit, QueryList, ViewChildren } from '@angular/core';
import { MAT_DIALOG_DATA } from '@angular/material/dialog';
import {
MAT_DIALOG_DATA,
MatDialogTitle,
MatDialogContent,
MatDialogActions,
MatDialogClose
} from '@angular/material/dialog';
import { CustomParametersTableComponent } from './custom-parameters-table/custom-parameters-table.component';
import { SystemService } from 'app/system/system.service';
import { CdkScrollable } from '@angular/cdk/scrolling';
import { NgFor, NgClass } from '@angular/common';
import { MatList, MatListItem } from '@angular/material/list';
import { FaIconComponent } from '@fortawesome/angular-fontawesome';
import { STANDALONE_SHARED_IMPORTS } from 'app/standalone-shared.module';
interface SelectedJobsDataType {
selectedJobs: SelectionModel<JobDataType>;
@@ -44,7 +55,20 @@ interface JobDataType {
@Component({
selector: 'mifosx-custom-parameters-popover',
templateUrl: './custom-parameters-popover.component.html',
styleUrls: ['./custom-parameters-popover.component.scss']
styleUrls: ['./custom-parameters-popover.component.scss'],
imports: [
...STANDALONE_SHARED_IMPORTS,
MatDialogTitle,
CdkScrollable,
MatDialogContent,
CustomParametersTableComponent,
MatList,
MatListItem,
NgClass,
MatDialogActions,
FaIconComponent,
MatDialogClose
]
})
export class CustomParametersPopoverComponent implements OnInit {
/* Job table childer */
@@ -65,7 +89,7 @@ export class CustomParametersPopoverComponent implements OnInit {
ngOnInit(): void {
this.selectedJobs = this.data.selectedJobs.selected.map((jobJSON) => ({
...jobJSON,
jobParameters: []
jobParameters: [] as JobParameterType[]
}));
}
@@ -1,10 +1,44 @@
import { Component, EventEmitter, Input, OnInit, Output } from '@angular/core';
import { JobIdAndParameterType, JobParameterType } from '../custom-parameters-popover.component';
import {
MatTable,
MatColumnDef,
MatHeaderCellDef,
MatHeaderCell,
MatCellDef,
MatCell,
MatHeaderRowDef,
MatHeaderRow,
MatRowDef,
MatRow
} from '@angular/material/table';
import { ReactiveFormsModule, FormsModule } from '@angular/forms';
import { MatIconButton, MatButton } from '@angular/material/button';
import { MatTooltip } from '@angular/material/tooltip';
import { FaIconComponent } from '@fortawesome/angular-fontawesome';
import { STANDALONE_SHARED_IMPORTS } from 'app/standalone-shared.module';
@Component({
selector: 'mifosx-custom-parameters-table',
templateUrl: './custom-parameters-table.component.html',
styleUrls: ['./custom-parameters-table.component.scss']
styleUrls: ['./custom-parameters-table.component.scss'],
imports: [
...STANDALONE_SHARED_IMPORTS,
MatTable,
MatColumnDef,
MatHeaderCellDef,
MatHeaderCell,
MatCellDef,
MatCell,
FormsModule,
MatIconButton,
MatTooltip,
FaIconComponent,
MatHeaderRowDef,
MatHeaderRow,
MatRowDef,
MatRow
]
})
export class CustomParametersTableComponent implements OnInit {
/* Job name for table title */
@@ -1,10 +1,12 @@
/** Angular Imports */
import { Component, OnInit } from '@angular/core';
import { ActivatedRoute, Router } from '@angular/router';
import { UntypedFormBuilder, Validators } from '@angular/forms';
import { ActivatedRoute, Router, RouterLink } from '@angular/router';
import { UntypedFormBuilder, Validators, ReactiveFormsModule } from '@angular/forms';
/** Custom Services */
import { SystemService } from 'app/system/system.service';
import { MatCheckbox } from '@angular/material/checkbox';
import { STANDALONE_SHARED_IMPORTS } from 'app/standalone-shared.module';
/**
* Edit scheduler job component.
@@ -12,7 +14,11 @@ import { SystemService } from 'app/system/system.service';
@Component({
selector: 'mifosx-edit-scheduler-job',
templateUrl: './edit-scheduler-job.component.html',
styleUrls: ['./edit-scheduler-job.component.scss']
styleUrls: ['./edit-scheduler-job.component.scss'],
imports: [
...STANDALONE_SHARED_IMPORTS,
MatCheckbox
]
})
export class EditSchedulerJobComponent implements OnInit {
/** Job Data. */
@@ -1,7 +1,16 @@
import { Component, Inject, OnInit } from '@angular/core';
import { MAT_DIALOG_DATA } from '@angular/material/dialog';
import {
MAT_DIALOG_DATA,
MatDialogTitle,
MatDialogContent,
MatDialogActions,
MatDialogClose
} from '@angular/material/dialog';
import { TranslateService } from '@ngx-translate/core';
import { SchedulerJob } from '../models/scheduler-job.model';
import { CdkScrollable } from '@angular/cdk/scrolling';
import { DatetimeFormatPipe } from '../../../../pipes/datetime-format.pipe';
import { STANDALONE_SHARED_IMPORTS } from 'app/standalone-shared.module';
interface ErrorJobDataType {
job: SchedulerJob;
@@ -10,7 +19,16 @@ interface ErrorJobDataType {
@Component({
selector: 'mifosx-error-log-popover',
templateUrl: './error-log-popover.component.html',
styleUrls: ['./error-log-popover.component.scss']
styleUrls: ['./error-log-popover.component.scss'],
imports: [
...STANDALONE_SHARED_IMPORTS,
MatDialogTitle,
CdkScrollable,
MatDialogContent,
MatDialogActions,
MatDialogClose,
DatetimeFormatPipe
]
})
export class ErrorLogPopoverComponent implements OnInit {
show = false;
@@ -1,9 +1,21 @@
/** Angular Imports */
import { Component, OnInit, TemplateRef, ElementRef, ViewChild, AfterViewInit } from '@angular/core';
import { MatPaginator } from '@angular/material/paginator';
import { MatSort } from '@angular/material/sort';
import { MatTableDataSource } from '@angular/material/table';
import { ActivatedRoute, Router } from '@angular/router';
import { MatSort, MatSortHeader } from '@angular/material/sort';
import {
MatTableDataSource,
MatTable,
MatColumnDef,
MatHeaderCellDef,
MatHeaderCell,
MatCellDef,
MatCell,
MatHeaderRowDef,
MatHeaderRow,
MatRowDef,
MatRow
} from '@angular/material/table';
import { ActivatedRoute, Router, RouterLink } from '@angular/router';
import { SelectionModel } from '@angular/cdk/collections';
import { MatDialog } from '@angular/material/dialog';
@@ -20,6 +32,14 @@ import { CustomParametersPopoverComponent } from './custom-parameters-popover/cu
import { SchedulerJob } from './models/scheduler-job.model';
import { ErrorLogPopoverComponent } from './error-log-popover/error-log-popover.component';
import { RunSelectedJobsPopoverComponent } from './run-selected-jobs-popover/run-selected-jobs-popover.component';
import { NgIf, NgClass } from '@angular/common';
import { MatButton, MatIconButton } from '@angular/material/button';
import { FaIconComponent } from '@fortawesome/angular-fontawesome';
import { MatCheckbox } from '@angular/material/checkbox';
import { MatTooltip } from '@angular/material/tooltip';
import { DatetimeFormatPipe } from '../../../pipes/datetime-format.pipe';
import { YesnoPipe } from '../../../pipes/yesno.pipe';
import { STANDALONE_SHARED_IMPORTS } from 'app/standalone-shared.module';
/**
* Manage scheduler jobs component.
@@ -27,7 +47,30 @@ import { RunSelectedJobsPopoverComponent } from './run-selected-jobs-popover/run
@Component({
selector: 'mifosx-manage-scheduler-jobs',
templateUrl: './manage-scheduler-jobs.component.html',
styleUrls: ['./manage-scheduler-jobs.component.scss']
styleUrls: ['./manage-scheduler-jobs.component.scss'],
imports: [
...STANDALONE_SHARED_IMPORTS,
FaIconComponent,
MatTable,
MatSort,
MatColumnDef,
MatHeaderCellDef,
MatHeaderCell,
MatCheckbox,
MatCellDef,
MatCell,
MatSortHeader,
MatTooltip,
MatIconButton,
MatHeaderRowDef,
MatHeaderRow,
MatRowDef,
MatRow,
NgClass,
MatPaginator,
DatetimeFormatPipe,
YesnoPipe
]
})
export class ManageSchedulerJobsComponent implements OnInit, AfterViewInit {
/** Jobs data. */
@@ -1,8 +1,18 @@
import { SelectionModel } from '@angular/cdk/collections';
import { Component, EventEmitter, Inject, OnInit, Output, QueryList, ViewChildren } from '@angular/core';
import { MAT_DIALOG_DATA } from '@angular/material/dialog';
import {
MAT_DIALOG_DATA,
MatDialogTitle,
MatDialogContent,
MatDialogActions,
MatDialogClose
} from '@angular/material/dialog';
import { SystemService } from 'app/system/system.service';
import { RunSelectedJobsTableComponent } from './run-selected-jobs-table/run-selected-jobs-table.component';
import { CdkScrollable } from '@angular/cdk/scrolling';
import { MatList, MatListItem } from '@angular/material/list';
import { FaIconComponent } from '@fortawesome/angular-fontawesome';
import { STANDALONE_SHARED_IMPORTS } from 'app/standalone-shared.module';
interface SelectedJobsDataType {
selectedJobs: SelectionModel<JobDataType>;
@@ -27,7 +37,19 @@ export interface JobDataType {
@Component({
selector: 'mifosx-run-selected-jobs-popover',
templateUrl: './run-selected-jobs-popover.component.html',
styleUrls: ['./run-selected-jobs-popover.component.scss']
styleUrls: ['./run-selected-jobs-popover.component.scss'],
imports: [
...STANDALONE_SHARED_IMPORTS,
MatDialogTitle,
CdkScrollable,
MatDialogContent,
RunSelectedJobsTableComponent,
MatList,
MatListItem,
MatDialogActions,
FaIconComponent,
MatDialogClose
]
})
export class RunSelectedJobsPopoverComponent implements OnInit {
/** Confirmed jobs event emitter */
@@ -1,5 +1,21 @@
import { Component, EventEmitter, Input, Output } from '@angular/core';
import { JobDataType } from '../run-selected-jobs-popover.component';
import {
MatTable,
MatColumnDef,
MatHeaderCellDef,
MatHeaderCell,
MatCellDef,
MatCell,
MatHeaderRowDef,
MatHeaderRow,
MatRowDef,
MatRow
} from '@angular/material/table';
import { MatIconButton } from '@angular/material/button';
import { MatTooltip } from '@angular/material/tooltip';
import { FaIconComponent } from '@fortawesome/angular-fontawesome';
import { STANDALONE_SHARED_IMPORTS } from 'app/standalone-shared.module';
/**
* Run Selected Jobs Table Component
@@ -7,7 +23,23 @@ import { JobDataType } from '../run-selected-jobs-popover.component';
@Component({
selector: 'mifosx-run-selected-jobs-table',
templateUrl: './run-selected-jobs-table.component.html',
styleUrls: ['./run-selected-jobs-table.component.scss']
styleUrls: ['./run-selected-jobs-table.component.scss'],
imports: [
...STANDALONE_SHARED_IMPORTS,
MatTable,
MatColumnDef,
MatHeaderCellDef,
MatHeaderCell,
MatCellDef,
MatCell,
MatIconButton,
MatTooltip,
FaIconComponent,
MatHeaderRowDef,
MatHeaderRow,
MatRowDef,
MatRow
]
})
export class RunSelectedJobsTableComponent {
/** Selected Jobs For Table */
@@ -1,16 +1,53 @@
/** Angular Imports. */
import { Component, OnInit, ViewChild } from '@angular/core';
import { MatPaginator } from '@angular/material/paginator';
import { MatTableDataSource } from '@angular/material/table';
import { MatSort } from '@angular/material/sort';
import {
MatTableDataSource,
MatTable,
MatColumnDef,
MatHeaderCellDef,
MatHeaderCell,
MatCellDef,
MatCell,
MatHeaderRowDef,
MatHeaderRow,
MatRowDef,
MatRow
} from '@angular/material/table';
import { MatSort, MatSortHeader } from '@angular/material/sort';
import { MatDialog } from '@angular/material/dialog';
import { ErrorDialogComponent } from 'app/shared/error-dialog/error-dialog.component';
import { ActivatedRoute, Router } from '@angular/router';
import { ActivatedRoute, Router, RouterLink } from '@angular/router';
import { FaIconComponent } from '@fortawesome/angular-fontawesome';
import { MatTooltip } from '@angular/material/tooltip';
import { MatIconButton, MatButton } from '@angular/material/button';
import { DatetimeFormatPipe } from '../../../../pipes/datetime-format.pipe';
import { STANDALONE_SHARED_IMPORTS } from 'app/standalone-shared.module';
@Component({
selector: 'mifosx-view-history-scheduler-job',
templateUrl: './view-history-scheduler-job.component.html',
styleUrls: ['./view-history-scheduler-job.component.scss']
styleUrls: ['./view-history-scheduler-job.component.scss'],
imports: [
...STANDALONE_SHARED_IMPORTS,
MatTable,
MatSort,
MatColumnDef,
MatHeaderCellDef,
MatHeaderCell,
MatSortHeader,
MatCellDef,
MatCell,
FaIconComponent,
MatTooltip,
MatIconButton,
MatHeaderRowDef,
MatHeaderRow,
MatRowDef,
MatRow,
MatPaginator,
DatetimeFormatPipe
]
})
export class ViewHistorySchedulerJobComponent implements OnInit {
/** Job History data. */
@@ -1,6 +1,9 @@
/** Angular Imports */
import { Component } from '@angular/core';
import { ActivatedRoute } from '@angular/router';
import { ActivatedRoute, RouterLink } from '@angular/router';
import { FaIconComponent } from '@fortawesome/angular-fontawesome';
import { YesnoPipe } from '../../../../pipes/yesno.pipe';
import { STANDALONE_SHARED_IMPORTS } from 'app/standalone-shared.module';
/**
* View Scheduler Job component.
@@ -8,7 +11,12 @@ import { ActivatedRoute } from '@angular/router';
@Component({
selector: 'mifosx-view-scheduler-job',
templateUrl: './view-scheduler-job.component.html',
styleUrls: ['./view-scheduler-job.component.scss']
styleUrls: ['./view-scheduler-job.component.scss'],
imports: [
...STANDALONE_SHARED_IMPORTS,
FaIconComponent,
YesnoPipe
]
})
export class ViewSchedulerJobComponent {
/** Job Data. */
@@ -1,7 +1,8 @@
import { Component, Input, OnInit } from '@angular/core';
import { DagreNodesOnlyLayout, Edge, Layout, Node } from '@swimlane/ngx-graph';
import { DagreNodesOnlyLayout, Edge, Layout, Node, GraphModule } from '@swimlane/ngx-graph';
import * as shape from 'd3-shape';
import { Subject } from 'rxjs';
import { STANDALONE_SHARED_IMPORTS } from 'app/standalone-shared.module';
export class JobStep {
id: number;
@@ -12,7 +13,11 @@ export class JobStep {
@Component({
selector: 'mifosx-workflow-diagram',
templateUrl: './workflow-diagram.component.html',
styleUrls: ['./workflow-diagram.component.scss']
styleUrls: ['./workflow-diagram.component.scss'],
imports: [
...STANDALONE_SHARED_IMPORTS,
GraphModule
]
})
export class WorkflowDiagramComponent implements OnInit {
@Input() jobStepsData: JobStep[] = [];
@@ -1,14 +1,30 @@
import { CdkDragDrop, moveItemInArray } from '@angular/cdk/drag-drop';
import { CdkDragDrop, moveItemInArray, CdkDropList, CdkDrag } from '@angular/cdk/drag-drop';
import { Component, OnInit, ViewChild } from '@angular/core';
import { UntypedFormControl, Validators } from '@angular/forms';
import { UntypedFormControl, Validators, ReactiveFormsModule } from '@angular/forms';
import { MatDialog } from '@angular/material/dialog';
import { MatTable } from '@angular/material/table';
import {
MatTable,
MatColumnDef,
MatHeaderCellDef,
MatHeaderCell,
MatCellDef,
MatCell,
MatHeaderRowDef,
MatHeaderRow,
MatRowDef,
MatRow
} from '@angular/material/table';
import { TranslateService } from '@ngx-translate/core';
import { DeleteDialogComponent } from 'app/shared/delete-dialog/delete-dialog.component';
import { FormDialogComponent } from 'app/shared/form-dialog/form-dialog.component';
import { FormfieldBase } from 'app/shared/form-dialog/formfield/model/formfield-base';
import { SelectBase } from 'app/shared/form-dialog/formfield/model/select-base';
import { SystemService } from 'app/system/system.service';
import { MatButton, MatIconButton } from '@angular/material/button';
import { FaIconComponent } from '@fortawesome/angular-fontawesome';
import { MatTooltip } from '@angular/material/tooltip';
import { WorkflowDiagramComponent } from './workflow-diagram/workflow-diagram.component';
import { STANDALONE_SHARED_IMPORTS } from 'app/standalone-shared.module';
export interface JobStep {
stepName: string;
@@ -19,7 +35,26 @@ export interface JobStep {
@Component({
selector: 'mifosx-workflow-jobs',
templateUrl: './workflow-jobs.component.html',
styleUrls: ['./workflow-jobs.component.scss']
styleUrls: ['./workflow-jobs.component.scss'],
imports: [
...STANDALONE_SHARED_IMPORTS,
FaIconComponent,
MatTable,
CdkDropList,
MatColumnDef,
MatHeaderCellDef,
MatHeaderCell,
MatCellDef,
MatCell,
MatIconButton,
MatTooltip,
MatHeaderRowDef,
MatHeaderRow,
MatRowDef,
MatRow,
CdkDrag,
WorkflowDiagramComponent
]
})
export class WorkflowJobsComponent implements OnInit {
stepOrderHasChanged = false;