diff --git a/lib/process-services-cloud/src/lib/process/process-cloud.module.ts b/lib/process-services-cloud/src/lib/process/process-cloud.module.ts index 764365a29a..3eb697de0a 100644 --- a/lib/process-services-cloud/src/lib/process/process-cloud.module.ts +++ b/lib/process-services-cloud/src/lib/process/process-cloud.module.ts @@ -16,7 +16,7 @@ */ import { NgModule } from '@angular/core'; -import { ProcessFiltersCloudModule } from './process-filters/process-filters-cloud.module'; +import { PROCESS_FILTERS_CLOUD_DIRECTIVES } from './process-filters/process-filters-cloud.module'; import { CoreModule } from '@alfresco/adf-core'; import { ProcessNameCloudPipe } from '../pipes/process-name-cloud.pipe'; import { ProcessListCloudComponent } from './process-list/components/process-list-cloud.component'; @@ -27,13 +27,19 @@ import { ProcessHeaderCloudComponent } from './process-header/components/process @NgModule({ imports: [ CoreModule, - ProcessFiltersCloudModule, + ...PROCESS_FILTERS_CLOUD_DIRECTIVES, + ProcessListCloudComponent, + StartProcessCloudComponent, + ProcessHeaderCloudComponent, + CancelProcessDirective + ], + exports: [ + ...PROCESS_FILTERS_CLOUD_DIRECTIVES, ProcessListCloudComponent, StartProcessCloudComponent, ProcessHeaderCloudComponent, CancelProcessDirective ], - exports: [ProcessFiltersCloudModule, ProcessListCloudComponent, StartProcessCloudComponent, ProcessHeaderCloudComponent, CancelProcessDirective], providers: [ProcessNameCloudPipe] }) export class ProcessCloudModule {} diff --git a/lib/process-services-cloud/src/lib/process/process-filters/components/edit-process-filter-cloud.component.spec.ts b/lib/process-services-cloud/src/lib/process/process-filters/components/edit-process-filter-cloud.component.spec.ts index d94aa24dc8..db8f007b2c 100644 --- a/lib/process-services-cloud/src/lib/process/process-filters/components/edit-process-filter-cloud.component.spec.ts +++ b/lib/process-services-cloud/src/lib/process/process-filters/components/edit-process-filter-cloud.component.spec.ts @@ -16,42 +16,31 @@ */ import { AlfrescoApiService } from '@alfresco/adf-content-services'; -import { ADF_DATE_FORMATS, FullNamePipe, NoopTranslateModule, UserPreferencesService } from '@alfresco/adf-core'; +import { ADF_DATE_FORMATS, UserPreferencesService } from '@alfresco/adf-core'; import { HarnessLoader } from '@angular/cdk/testing'; import { TestbedHarnessEnvironment } from '@angular/cdk/testing/testbed'; import { SimpleChange } from '@angular/core'; import { ComponentFixture, TestBed } from '@angular/core/testing'; -import { ReactiveFormsModule } from '@angular/forms'; import { DateFnsAdapter } from '@angular/material-date-fns-adapter'; -import { MatAutocompleteModule } from '@angular/material/autocomplete'; -import { MatChipsModule } from '@angular/material/chips'; import { DateAdapter, MAT_DATE_FORMATS, MAT_DATE_LOCALE } from '@angular/material/core'; -import { MatDatepickerModule } from '@angular/material/datepicker'; -import { MatDialog, MatDialogModule } from '@angular/material/dialog'; +import { MatDialog } from '@angular/material/dialog'; import { MatExpansionPanelHarness } from '@angular/material/expansion/testing'; -import { MatFormFieldModule } from '@angular/material/form-field'; -import { MatIconTestingModule } from '@angular/material/icon/testing'; -import { MatInputModule } from '@angular/material/input'; -import { MatProgressBarModule } from '@angular/material/progress-bar'; import { MatProgressSpinnerHarness } from '@angular/material/progress-spinner/testing'; -import { MatSelectModule } from '@angular/material/select'; import { MatSelectHarness } from '@angular/material/select/testing'; -import { NoopAnimationsModule } from '@angular/platform-browser/animations'; import { endOfDay, format, isValid, startOfDay, subYears } from 'date-fns'; import { enUS } from 'date-fns/locale'; import { of } from 'rxjs'; +import { ProcessFilterDialogCloudComponent } from './process-filter-dialog-cloud.component'; import { AppsProcessCloudService } from '../../../app/services/apps-process-cloud.service'; -import { DateRangeFilterComponent } from '../../../common/date-range-filter/date-range-filter.component'; import { fakeEnvironmentList } from '../../../common/mock/environment.mock'; -import { DateCloudFilterType } from '../../../models/date-cloud-filter.model'; -import { ProcessDefinitionCloud } from '../../../models/process-definition-cloud.model'; -import { PeopleCloudComponent } from '../../../people/components/people-cloud.component'; import { IdentityUserServiceMock } from '../../../people/mock/people-cloud.mock'; import { IDENTITY_USER_SERVICE_TOKEN } from '../../../people/services/identity-user-service.token'; import { PROCESS_FILTERS_SERVICE_TOKEN } from '../../../services/cloud-token.service'; import { LocalPreferenceCloudService } from '../../../services/local-preference-cloud.service'; import { NotificationCloudService } from '../../../services/notification-cloud.service'; import { ProcessCloudService } from '../../services/process-cloud.service'; +import { DateCloudFilterType } from '../../../models/date-cloud-filter.model'; +import { ProcessDefinitionCloud } from '../../../models/process-definition-cloud.model'; import { mockAppVersions } from '../mock/process-filters-cloud.mock'; import { ProcessFilterCloudModel } from '../models/process-filter-cloud.model'; import { ProcessFilterCloudService } from '../services/process-filter-cloud.service'; @@ -61,7 +50,7 @@ import { PROCESS_FILTER_ACTION_RESTORE, PROCESS_FILTER_ACTION_SAVE_DEFAULT } from './edit-process-filter-cloud.component'; -import { ProcessFilterDialogCloudComponent } from './process-filter-dialog-cloud.component'; +import { ProcessServiceCloudTestingModule } from '../../../testing/process-service-cloud.testing.module'; describe('EditProcessFilterCloudComponent', () => { let loader: HarnessLoader; @@ -101,29 +90,18 @@ describe('EditProcessFilterCloudComponent', () => { beforeEach(() => { TestBed.configureTestingModule({ imports: [ - MatIconTestingModule, - MatDialogModule, - NoopTranslateModule, - NoopAnimationsModule, - MatSelectModule, - MatDatepickerModule, - MatAutocompleteModule, - FullNamePipe, - MatFormFieldModule, - MatInputModule, - ReactiveFormsModule, - MatChipsModule, - MatProgressBarModule + ProcessServiceCloudTestingModule, + EditProcessFilterCloudComponent ], providers: [ + MatDialog, { provide: PROCESS_FILTERS_SERVICE_TOKEN, useClass: LocalPreferenceCloudService }, { provide: MAT_DATE_LOCALE, useValue: enUS }, { provide: DateAdapter, useClass: DateFnsAdapter }, { provide: NotificationCloudService, useValue: { makeGQLQuery: () => of([]) } }, { provide: MAT_DATE_FORMATS, useValue: ADF_DATE_FORMATS }, { provide: IDENTITY_USER_SERVICE_TOKEN, useExisting: IdentityUserServiceMock } - ], - declarations: [PeopleCloudComponent, DateRangeFilterComponent] + ] }); fixture = TestBed.createComponent(EditProcessFilterCloudComponent); component = fixture.componentInstance; diff --git a/lib/process-services-cloud/src/lib/process/process-filters/components/edit-process-filter-cloud.component.ts b/lib/process-services-cloud/src/lib/process/process-filters/components/edit-process-filter-cloud.component.ts index bed8034971..0fcc17369a 100644 --- a/lib/process-services-cloud/src/lib/process/process-filters/components/edit-process-filter-cloud.component.ts +++ b/lib/process-services-cloud/src/lib/process/process-filters/components/edit-process-filter-cloud.component.ts @@ -16,8 +16,8 @@ */ import { Component, Input, Output, EventEmitter, OnInit, OnChanges, SimpleChanges, OnDestroy, ViewEncapsulation } from '@angular/core'; -import { FormBuilder, AbstractControl, FormGroup, FormControl } from '@angular/forms'; -import { DateAdapter } from '@angular/material/core'; +import { FormBuilder, AbstractControl, FormGroup, FormControl, ReactiveFormsModule } from '@angular/forms'; +import { DateAdapter, MatOptionModule } from '@angular/material/core'; import { MatDialog } from '@angular/material/dialog'; import { debounceTime, filter, takeUntil, finalize, switchMap, tap } from 'rxjs/operators'; import { Subject, Observable, Subscription } from 'rxjs'; @@ -29,7 +29,7 @@ import { ProcessFilterOptions, ProcessSortFilterProperty } from '../models/process-filter-cloud.model'; -import { DateFnsUtils, TranslationService, UserPreferencesService, UserPreferenceValues } from '@alfresco/adf-core'; +import { DateFnsUtils, IconComponent, TranslationService, UserPreferencesService, UserPreferenceValues } from '@alfresco/adf-core'; import { ProcessFilterCloudService } from '../services/process-filter-cloud.service'; import { ProcessFilterDialogCloudComponent } from './process-filter-dialog-cloud.component'; import { ProcessCloudService } from '../../services/process-cloud.service'; @@ -37,6 +37,18 @@ import { DateCloudFilterType, DateRangeFilter } from '../../../models/date-cloud import { IdentityUserModel } from '../../../people/models/identity-user.model'; import { Environment } from '../../../common/interface/environment.interface'; import { endOfDay, isValid, startOfDay } from 'date-fns'; +import { CommonModule } from '@angular/common'; +import { TranslateModule } from '@ngx-translate/core'; +import { PeopleCloudComponent } from '../../../people/components/people-cloud.component'; +import { DateRangeFilterComponent } from '../../../common/date-range-filter/date-range-filter.component'; +import { MatIconModule } from '@angular/material/icon'; +import { MatDatepickerModule } from '@angular/material/datepicker'; +import { MatFormFieldModule } from '@angular/material/form-field'; +import { MatInputModule } from '@angular/material/input'; +import { MatSelectModule } from '@angular/material/select'; +import { MatProgressSpinnerModule } from '@angular/material/progress-spinner'; +import { MatButtonModule } from '@angular/material/button'; +import { MatExpansionModule } from '@angular/material/expansion'; export const PROCESS_FILTER_ACTION_SAVE = 'save'; export const PROCESS_FILTER_ACTION_SAVE_AS = 'saveAs'; @@ -67,6 +79,24 @@ interface ProcessFilterFormProps { @Component({ selector: 'adf-cloud-edit-process-filter', + standalone: true, + imports: [ + CommonModule, + TranslateModule, + PeopleCloudComponent, + DateRangeFilterComponent, + MatIconModule, + MatDatepickerModule, + MatFormFieldModule, + ReactiveFormsModule, + MatInputModule, + MatOptionModule, + MatSelectModule, + MatProgressSpinnerModule, + IconComponent, + MatButtonModule, + MatExpansionModule + ], templateUrl: './edit-process-filter-cloud.component.html', styleUrls: ['./edit-process-filter-cloud.component.scss'], encapsulation: ViewEncapsulation.None diff --git a/lib/process-services-cloud/src/lib/process/process-filters/components/process-filter-dialog-cloud.component.spec.ts b/lib/process-services-cloud/src/lib/process/process-filters/components/process-filter-dialog-cloud.component.spec.ts index 9f33a73925..9cec7bf717 100644 --- a/lib/process-services-cloud/src/lib/process/process-filters/components/process-filter-dialog-cloud.component.spec.ts +++ b/lib/process-services-cloud/src/lib/process/process-filters/components/process-filter-dialog-cloud.component.spec.ts @@ -19,7 +19,6 @@ import { ComponentFixture, TestBed } from '@angular/core/testing'; import { MatDialogRef, MAT_DIALOG_DATA } from '@angular/material/dialog'; import { ProcessFilterDialogCloudComponent } from './process-filter-dialog-cloud.component'; import { ProcessServiceCloudTestingModule } from '../../../testing/process-service-cloud.testing.module'; -import { ProcessFiltersCloudModule } from '../process-filters-cloud.module'; describe('ProcessFilterDialogCloudComponent', () => { let component: ProcessFilterDialogCloudComponent; @@ -36,7 +35,7 @@ describe('ProcessFilterDialogCloudComponent', () => { beforeEach(() => { TestBed.configureTestingModule({ - imports: [ProcessServiceCloudTestingModule, ProcessFiltersCloudModule], + imports: [ProcessServiceCloudTestingModule, ProcessFilterDialogCloudComponent], providers: [ { provide: MatDialogRef, useValue: mockDialogRef }, { provide: MAT_DIALOG_DATA, useValue: mockDialogData } diff --git a/lib/process-services-cloud/src/lib/process/process-filters/components/process-filter-dialog-cloud.component.ts b/lib/process-services-cloud/src/lib/process/process-filters/components/process-filter-dialog-cloud.component.ts index e23f94b60a..072dc04328 100644 --- a/lib/process-services-cloud/src/lib/process/process-filters/components/process-filter-dialog-cloud.component.ts +++ b/lib/process-services-cloud/src/lib/process/process-filters/components/process-filter-dialog-cloud.component.ts @@ -16,11 +16,28 @@ */ import { ChangeDetectionStrategy, Component, inject, ViewEncapsulation } from '@angular/core'; -import { FormControl, FormGroup, Validators } from '@angular/forms'; -import { MAT_DIALOG_DATA, MatDialogRef } from '@angular/material/dialog'; +import { FormControl, FormGroup, ReactiveFormsModule, Validators } from '@angular/forms'; +import { MAT_DIALOG_DATA, MatDialogModule, MatDialogRef } from '@angular/material/dialog'; +import { CommonModule } from '@angular/common'; +import { TranslateModule } from '@ngx-translate/core'; +import { MatButtonModule } from '@angular/material/button'; +import { MatCardModule } from '@angular/material/card'; +import { MatFormFieldModule } from '@angular/material/form-field'; +import { MatInputModule } from '@angular/material/input'; @Component({ selector: 'adf-cloud-process-filter-dialog-cloud', + standalone: true, + imports: [ + CommonModule, + TranslateModule, + MatButtonModule, + MatCardModule, + MatFormFieldModule, + ReactiveFormsModule, + MatInputModule, + MatDialogModule + ], templateUrl: './process-filter-dialog-cloud.component.html', styleUrls: ['./process-filter-dialog-cloud.component.scss'], changeDetection: ChangeDetectionStrategy.OnPush, diff --git a/lib/process-services-cloud/src/lib/process/process-filters/components/process-filters-cloud.component.spec.ts b/lib/process-services-cloud/src/lib/process/process-filters/components/process-filters-cloud.component.spec.ts index 37d6df01b9..04b881ec86 100644 --- a/lib/process-services-cloud/src/lib/process/process-filters/components/process-filters-cloud.component.spec.ts +++ b/lib/process-services-cloud/src/lib/process/process-filters/components/process-filters-cloud.component.spec.ts @@ -21,15 +21,14 @@ import { of, throwError } from 'rxjs'; import { ProcessFilterCloudService } from '../services/process-filter-cloud.service'; import { ProcessFiltersCloudComponent } from './process-filters-cloud.component'; import { By } from '@angular/platform-browser'; +import { ProcessServiceCloudTestingModule } from '../../../testing/process-service-cloud.testing.module'; import { PROCESS_FILTERS_SERVICE_TOKEN } from '../../../services/cloud-token.service'; import { LocalPreferenceCloudService } from '../../../services/local-preference-cloud.service'; import { mockProcessFilters } from '../mock/process-filters-cloud.mock'; -import { AppConfigService, AppConfigServiceMock, NoopTranslateModule } from '@alfresco/adf-core'; +import { AppConfigService, AppConfigServiceMock } from '@alfresco/adf-core'; import { ProcessListCloudService } from '../../../process/process-list/services/process-list-cloud.service'; import { NotificationCloudService } from '../../../services/notification-cloud.service'; import { ApolloModule } from 'apollo-angular'; -import { NoopAnimationsModule } from '@angular/platform-browser/animations'; -import { MatListModule } from '@angular/material/list'; const ProcessFilterCloudServiceMock = { getProcessFilters: () => of(mockProcessFilters), @@ -45,7 +44,7 @@ describe('ProcessFiltersCloudComponent', () => { beforeEach(() => { TestBed.configureTestingModule({ - imports: [NoopTranslateModule, NoopAnimationsModule, MatListModule], + imports: [ProcessServiceCloudTestingModule, ProcessFiltersCloudComponent], providers: [ { provide: PROCESS_FILTERS_SERVICE_TOKEN, useClass: LocalPreferenceCloudService }, { provide: AppConfigService, useClass: AppConfigServiceMock }, diff --git a/lib/process-services-cloud/src/lib/process/process-filters/components/process-filters-cloud.component.ts b/lib/process-services-cloud/src/lib/process/process-filters/components/process-filters-cloud.component.ts index c113029c41..f95565205e 100644 --- a/lib/process-services-cloud/src/lib/process/process-filters/components/process-filters-cloud.component.ts +++ b/lib/process-services-cloud/src/lib/process/process-filters/components/process-filters-cloud.component.ts @@ -19,13 +19,19 @@ import { Component, EventEmitter, Input, OnChanges, Output, SimpleChanges, OnDes import { Observable, Subject } from 'rxjs'; import { ProcessFilterCloudService } from '../services/process-filter-cloud.service'; import { ProcessFilterCloudModel } from '../models/process-filter-cloud.model'; -import { AppConfigService, TranslationService } from '@alfresco/adf-core'; +import { IconComponent, TranslationService, AppConfigService } from '@alfresco/adf-core'; import { FilterParamsModel } from '../../../task/task-filters/models/filter-cloud.model'; +import { CommonModule } from '@angular/common'; +import { TranslateModule } from '@ngx-translate/core'; +import { MatProgressSpinnerModule } from '@angular/material/progress-spinner'; +import { MatListModule } from '@angular/material/list'; import { debounceTime, takeUntil, tap } from 'rxjs/operators'; import { ProcessListCloudService } from '../../../process/process-list/services/process-list-cloud.service'; @Component({ selector: 'adf-cloud-process-filters', + standalone: true, + imports: [CommonModule, TranslateModule, MatProgressSpinnerModule, IconComponent, MatListModule], templateUrl: './process-filters-cloud.component.html', styleUrls: ['./process-filters-cloud.component.scss'], encapsulation: ViewEncapsulation.None diff --git a/lib/process-services-cloud/src/lib/process/process-filters/process-filters-cloud.module.ts b/lib/process-services-cloud/src/lib/process/process-filters/process-filters-cloud.module.ts index 6c6355f048..6001c85008 100644 --- a/lib/process-services-cloud/src/lib/process/process-filters/process-filters-cloud.module.ts +++ b/lib/process-services-cloud/src/lib/process/process-filters/process-filters-cloud.module.ts @@ -16,31 +16,19 @@ */ import { NgModule } from '@angular/core'; -import { CommonModule } from '@angular/common'; -import { FormsModule, ReactiveFormsModule } from '@angular/forms'; import { ProcessFiltersCloudComponent } from './components/process-filters-cloud.component'; -import { MaterialModule } from '../../material.module'; -import { CoreModule } from '@alfresco/adf-core'; -import { HttpClientModule } from '@angular/common/http'; import { EditProcessFilterCloudComponent } from './components/edit-process-filter-cloud.component'; import { ProcessFilterDialogCloudComponent } from './components/process-filter-dialog-cloud.component'; -import { APP_LIST_CLOUD_DIRECTIVES } from './../../app/app-list-cloud.module'; -import { DateRangeFilterComponent } from '../../common/date-range-filter/date-range-filter.component'; -import { PeopleCloudComponent } from '../../people/components/people-cloud.component'; +export const PROCESS_FILTERS_CLOUD_DIRECTIVES = [ + ProcessFiltersCloudComponent, + EditProcessFilterCloudComponent, + ProcessFilterDialogCloudComponent +] as const; + +/** @deprecated import individual standalone components instead */ @NgModule({ - imports: [ - FormsModule, - ReactiveFormsModule, - HttpClientModule, - CommonModule, - MaterialModule, - ...APP_LIST_CLOUD_DIRECTIVES, - CoreModule, - DateRangeFilterComponent, - PeopleCloudComponent - ], - declarations: [ProcessFiltersCloudComponent, EditProcessFilterCloudComponent, ProcessFilterDialogCloudComponent], - exports: [ProcessFiltersCloudComponent, EditProcessFilterCloudComponent, ProcessFilterDialogCloudComponent] + imports: [...PROCESS_FILTERS_CLOUD_DIRECTIVES], + exports: [...PROCESS_FILTERS_CLOUD_DIRECTIVES] }) export class ProcessFiltersCloudModule {}