mirror of
https://github.com/Alfresco/alfresco-ng2-components.git
synced 2025-09-17 14:21:29 +00:00
migrate cloud components
This commit is contained in:
@@ -48,11 +48,11 @@ import { MatButtonModule } from '@angular/material/button';
|
|||||||
import { MatIconModule } from '@angular/material/icon';
|
import { MatIconModule } from '@angular/material/icon';
|
||||||
import { FilePropertiesTableCloudComponent } from './file-properties-table-cloud.component';
|
import { FilePropertiesTableCloudComponent } from './file-properties-table-cloud.component';
|
||||||
|
|
||||||
export const RETRIEVE_METADATA_OPTION = 'retrieveMetadata';
|
const RETRIEVE_METADATA_OPTION = 'retrieveMetadata';
|
||||||
export const ALIAS_ROOT_FOLDER = '-root-';
|
const ALIAS_ROOT_FOLDER = '-root-';
|
||||||
export const ALIAS_USER_FOLDER = '-my-';
|
const ALIAS_USER_FOLDER = '-my-';
|
||||||
export const APP_NAME = '-appname-';
|
const APP_NAME = '-appname-';
|
||||||
export const VALID_ALIAS = [ALIAS_ROOT_FOLDER, ALIAS_USER_FOLDER, '-shared-'];
|
const VALID_ALIAS = [ALIAS_ROOT_FOLDER, ALIAS_USER_FOLDER, '-shared-'];
|
||||||
|
|
||||||
@Component({
|
@Component({
|
||||||
selector: 'adf-cloud-attach-file-cloud-widget',
|
selector: 'adf-cloud-attach-file-cloud-widget',
|
||||||
|
@@ -30,7 +30,7 @@ import { MatTableModule } from '@angular/material/table';
|
|||||||
import { MatLineModule } from '@angular/material/core';
|
import { MatLineModule } from '@angular/material/core';
|
||||||
import { MatListModule } from '@angular/material/list';
|
import { MatListModule } from '@angular/material/list';
|
||||||
|
|
||||||
export const RETRIEVE_METADATA_OPTION = 'retrieveMetadata';
|
const RETRIEVE_METADATA_OPTION = 'retrieveMetadata';
|
||||||
|
|
||||||
@Component({
|
@Component({
|
||||||
selector: 'adf-cloud-file-properties-table',
|
selector: 'adf-cloud-file-properties-table',
|
||||||
|
@@ -17,18 +17,20 @@
|
|||||||
|
|
||||||
export * from './models/task-variable-cloud.model';
|
export * from './models/task-variable-cloud.model';
|
||||||
|
|
||||||
|
export * from './components/spinner/form-spinner.component';
|
||||||
export * from './components/form-cloud-custom-outcomes.component';
|
export * from './components/form-cloud-custom-outcomes.component';
|
||||||
export * from './components/form-cloud.component';
|
export * from './components/form-cloud.component';
|
||||||
export * from './components/form-definition-selector-cloud.component';
|
export * from './components/form-definition-selector-cloud.component';
|
||||||
export * from './components/cloud-form-rendering.service';
|
export * from './components/cloud-form-rendering.service';
|
||||||
|
|
||||||
export * from './components/widgets/attach-file/attach-file-cloud-widget.component';
|
export * from './components/widgets/attach-file/attach-file-cloud-widget.component';
|
||||||
|
export * from './components/widgets/attach-file/file-properties-table-cloud.component';
|
||||||
export * from './components/widgets/attach-file/upload-cloud.widget';
|
export * from './components/widgets/attach-file/upload-cloud.widget';
|
||||||
export * from './components/widgets/date/date-cloud.widget';
|
export * from './components/widgets/date/date-cloud.widget';
|
||||||
export * from './components/widgets/dropdown/dropdown-cloud.widget';
|
export * from './components/widgets/dropdown/dropdown-cloud.widget';
|
||||||
export * from './components/widgets/group/group-cloud.widget';
|
export * from './components/widgets/group/group-cloud.widget';
|
||||||
export * from './components/widgets/people/people-cloud.widget';
|
export * from './components/widgets/people/people-cloud.widget';
|
||||||
export * from './components/widgets/properties-viewer/properties-viewer.widget';
|
export * from './components/widgets/properties-viewer/properties-viewer.widget';
|
||||||
|
export * from './components/widgets/properties-viewer/properties-viewer-wrapper/properties-viewer-wrapper.component';
|
||||||
export * from './components/widgets/file-viewer/file-viewer.widget';
|
export * from './components/widgets/file-viewer/file-viewer.widget';
|
||||||
export * from './components/widgets/display-rich-text/display-rich-text.widget';
|
export * from './components/widgets/display-rich-text/display-rich-text.widget';
|
||||||
|
|
||||||
|
@@ -22,7 +22,6 @@ import { MatCardModule } from '@angular/material/card';
|
|||||||
import { MatCheckboxModule } from '@angular/material/checkbox';
|
import { MatCheckboxModule } from '@angular/material/checkbox';
|
||||||
import { MatChipsModule } from '@angular/material/chips';
|
import { MatChipsModule } from '@angular/material/chips';
|
||||||
import { MatNativeDateModule, MatRippleModule, MatOptionModule } from '@angular/material/core';
|
import { MatNativeDateModule, MatRippleModule, MatOptionModule } from '@angular/material/core';
|
||||||
import { MAT_FORM_FIELD_DEFAULT_OPTIONS } from '@angular/material/form-field';
|
|
||||||
import { MatDatepickerModule } from '@angular/material/datepicker';
|
import { MatDatepickerModule } from '@angular/material/datepicker';
|
||||||
import { MatDialogModule } from '@angular/material/dialog';
|
import { MatDialogModule } from '@angular/material/dialog';
|
||||||
import { MatExpansionModule } from '@angular/material/expansion';
|
import { MatExpansionModule } from '@angular/material/expansion';
|
||||||
@@ -38,8 +37,8 @@ import { MatSlideToggleModule } from '@angular/material/slide-toggle';
|
|||||||
import { MatTableModule } from '@angular/material/table';
|
import { MatTableModule } from '@angular/material/table';
|
||||||
import { MatTabsModule } from '@angular/material/tabs';
|
import { MatTabsModule } from '@angular/material/tabs';
|
||||||
|
|
||||||
|
/** @deprecated this module should not be used */
|
||||||
@NgModule({
|
@NgModule({
|
||||||
providers: [{ provide: MAT_FORM_FIELD_DEFAULT_OPTIONS, useValue: { floatLabel: 'never' } }],
|
|
||||||
imports: [
|
imports: [
|
||||||
MatAutocompleteModule,
|
MatAutocompleteModule,
|
||||||
MatButtonModule,
|
MatButtonModule,
|
||||||
|
@@ -42,6 +42,7 @@ import { IdentityGroupService } from './group/services/identity-group.service';
|
|||||||
import { IDENTITY_USER_SERVICE_TOKEN } from './people/services/identity-user-service.token';
|
import { IDENTITY_USER_SERVICE_TOKEN } from './people/services/identity-user-service.token';
|
||||||
import { IdentityUserService } from './people/services/identity-user.service';
|
import { IdentityUserService } from './people/services/identity-user.service';
|
||||||
import { TaskListCloudService } from './task/task-list/services/task-list-cloud.service';
|
import { TaskListCloudService } from './task/task-list/services/task-list-cloud.service';
|
||||||
|
import { MAT_FORM_FIELD_DEFAULT_OPTIONS } from '@angular/material/form-field';
|
||||||
|
|
||||||
@NgModule({
|
@NgModule({
|
||||||
imports: [
|
imports: [
|
||||||
@@ -57,7 +58,11 @@ import { TaskListCloudService } from './task/task-list/services/task-list-cloud.
|
|||||||
ApolloModule,
|
ApolloModule,
|
||||||
RichTextEditorComponent
|
RichTextEditorComponent
|
||||||
],
|
],
|
||||||
providers: [provideTranslations('adf-process-services-cloud', 'assets/adf-process-services-cloud'), ProcessNameCloudPipe],
|
providers: [
|
||||||
|
provideTranslations('adf-process-services-cloud', 'assets/adf-process-services-cloud'),
|
||||||
|
ProcessNameCloudPipe,
|
||||||
|
{ provide: MAT_FORM_FIELD_DEFAULT_OPTIONS, useValue: { floatLabel: 'never' } }
|
||||||
|
],
|
||||||
exports: [
|
exports: [
|
||||||
...APP_LIST_CLOUD_DIRECTIVES,
|
...APP_LIST_CLOUD_DIRECTIVES,
|
||||||
...PROCESS_CLOUD_DIRECTIVES,
|
...PROCESS_CLOUD_DIRECTIVES,
|
||||||
|
@@ -41,13 +41,13 @@ import { ProcessServiceCloudTestingModule } from '../../../testing/process-servi
|
|||||||
import { ProcessNameCloudPipe } from '../../../pipes/process-name-cloud.pipe';
|
import { ProcessNameCloudPipe } from '../../../pipes/process-name-cloud.pipe';
|
||||||
import { ProcessInstanceCloud } from '../models/process-instance-cloud.model';
|
import { ProcessInstanceCloud } from '../models/process-instance-cloud.model';
|
||||||
import { ESCAPE } from '@angular/cdk/keycodes';
|
import { ESCAPE } from '@angular/cdk/keycodes';
|
||||||
import { ProcessDefinitionCloud } from '../../../models/process-definition-cloud.model';
|
|
||||||
import { TaskVariableCloud } from '../../../form/models/task-variable-cloud.model';
|
|
||||||
import { first } from 'rxjs/operators';
|
import { first } from 'rxjs/operators';
|
||||||
import { HarnessLoader } from '@angular/cdk/testing';
|
import { HarnessLoader } from '@angular/cdk/testing';
|
||||||
import { TestbedHarnessEnvironment } from '@angular/cdk/testing/testbed';
|
import { TestbedHarnessEnvironment } from '@angular/cdk/testing/testbed';
|
||||||
import { MatAutocompleteHarness } from '@angular/material/autocomplete/testing';
|
import { MatAutocompleteHarness } from '@angular/material/autocomplete/testing';
|
||||||
import { MatButtonHarness } from '@angular/material/button/testing';
|
import { MatButtonHarness } from '@angular/material/button/testing';
|
||||||
|
import { TaskVariableCloud } from '../../../form/models/task-variable-cloud.model';
|
||||||
|
import { ProcessDefinitionCloud } from '../../../models/process-definition-cloud.model';
|
||||||
|
|
||||||
describe('StartProcessCloudComponent', () => {
|
describe('StartProcessCloudComponent', () => {
|
||||||
let loader: HarnessLoader;
|
let loader: HarnessLoader;
|
||||||
|
@@ -16,7 +16,7 @@
|
|||||||
*/
|
*/
|
||||||
|
|
||||||
import { NgModule } from '@angular/core';
|
import { NgModule } from '@angular/core';
|
||||||
import { TaskFiltersCloudModule } from './task-filters/task-filters-cloud.module';
|
import { TASK_FILTERS_CLOUD_DIRECTIVES } from './task-filters/task-filters-cloud.module';
|
||||||
import { TaskFormCloudComponent } from './task-form/components/task-form-cloud.component';
|
import { TaskFormCloudComponent } from './task-form/components/task-form-cloud.component';
|
||||||
import { StartTaskCloudComponent } from './start-task/components/start-task-cloud.component';
|
import { StartTaskCloudComponent } from './start-task/components/start-task-cloud.component';
|
||||||
import { TaskHeaderCloudComponent } from './task-header/components/task-header-cloud.component';
|
import { TaskHeaderCloudComponent } from './task-header/components/task-header-cloud.component';
|
||||||
@@ -29,7 +29,7 @@ import { ServiceTaskListCloudComponent } from './task-list/components/service-ta
|
|||||||
export const TASK_CLOUD_DIRECTIVES = [
|
export const TASK_CLOUD_DIRECTIVES = [
|
||||||
TaskListCloudComponent,
|
TaskListCloudComponent,
|
||||||
ServiceTaskListCloudComponent,
|
ServiceTaskListCloudComponent,
|
||||||
TaskFiltersCloudModule,
|
...TASK_FILTERS_CLOUD_DIRECTIVES,
|
||||||
StartTaskCloudComponent,
|
StartTaskCloudComponent,
|
||||||
TaskHeaderCloudComponent,
|
TaskHeaderCloudComponent,
|
||||||
TaskFormCloudComponent,
|
TaskFormCloudComponent,
|
||||||
|
@@ -24,12 +24,10 @@ import { LocalPreferenceCloudService } from '../../../../services/local-preferen
|
|||||||
import { ProcessServiceCloudTestingModule } from '../../../../testing/process-service-cloud.testing.module';
|
import { ProcessServiceCloudTestingModule } from '../../../../testing/process-service-cloud.testing.module';
|
||||||
import { AppsProcessCloudService } from '../../../../app/services/apps-process-cloud.service';
|
import { AppsProcessCloudService } from '../../../../app/services/apps-process-cloud.service';
|
||||||
import { fakeApplicationInstance, fakeApplicationInstanceWithEnvironment } from '../../../../app/mock/app-model.mock';
|
import { fakeApplicationInstance, fakeApplicationInstanceWithEnvironment } from '../../../../app/mock/app-model.mock';
|
||||||
import { TaskFiltersCloudModule } from '../../task-filters-cloud.module';
|
|
||||||
import { ServiceTaskFilterCloudService } from '../../services/service-task-filter-cloud.service';
|
import { ServiceTaskFilterCloudService } from '../../services/service-task-filter-cloud.service';
|
||||||
import { TaskCloudService } from '../../../services/task-cloud.service';
|
import { TaskCloudService } from '../../../services/task-cloud.service';
|
||||||
import { fakeServiceFilter } from '../../mock/task-filters-cloud.mock';
|
import { fakeServiceFilter } from '../../mock/task-filters-cloud.mock';
|
||||||
import { EditServiceTaskFilterCloudComponent } from './edit-service-task-filter-cloud.component';
|
import { EditServiceTaskFilterCloudComponent } from './edit-service-task-filter-cloud.component';
|
||||||
import { MatIconTestingModule } from '@angular/material/icon/testing';
|
|
||||||
import { ProcessDefinitionCloud } from '../../../../models/process-definition-cloud.model';
|
import { ProcessDefinitionCloud } from '../../../../models/process-definition-cloud.model';
|
||||||
import { TaskFilterDialogCloudComponent } from '../task-filter-dialog/task-filter-dialog-cloud.component';
|
import { TaskFilterDialogCloudComponent } from '../task-filter-dialog/task-filter-dialog-cloud.component';
|
||||||
import { fakeEnvironmentList } from '../../../../common/mock/environment.mock';
|
import { fakeEnvironmentList } from '../../../../common/mock/environment.mock';
|
||||||
@@ -54,7 +52,7 @@ describe('EditServiceTaskFilterCloudComponent', () => {
|
|||||||
|
|
||||||
beforeEach(() => {
|
beforeEach(() => {
|
||||||
TestBed.configureTestingModule({
|
TestBed.configureTestingModule({
|
||||||
imports: [ProcessServiceCloudTestingModule, TaskFiltersCloudModule, MatIconTestingModule],
|
imports: [ProcessServiceCloudTestingModule, EditServiceTaskFilterCloudComponent],
|
||||||
providers: [MatDialog, { provide: TASK_FILTERS_SERVICE_TOKEN, useClass: LocalPreferenceCloudService }]
|
providers: [MatDialog, { provide: TASK_FILTERS_SERVICE_TOKEN, useClass: LocalPreferenceCloudService }]
|
||||||
});
|
});
|
||||||
fixture = TestBed.createComponent(EditServiceTaskFilterCloudComponent);
|
fixture = TestBed.createComponent(EditServiceTaskFilterCloudComponent);
|
||||||
|
@@ -21,9 +21,44 @@ import { Observable } from 'rxjs';
|
|||||||
import { TaskFilterProperties, TaskFilterAction, ServiceTaskFilterCloudModel } from '../../models/filter-cloud.model';
|
import { TaskFilterProperties, TaskFilterAction, ServiceTaskFilterCloudModel } from '../../models/filter-cloud.model';
|
||||||
import { ServiceTaskFilterCloudService } from '../../services/service-task-filter-cloud.service';
|
import { ServiceTaskFilterCloudService } from '../../services/service-task-filter-cloud.service';
|
||||||
import { BaseEditTaskFilterCloudComponent, DropdownOption } from './base-edit-task-filter-cloud.component';
|
import { BaseEditTaskFilterCloudComponent, DropdownOption } from './base-edit-task-filter-cloud.component';
|
||||||
|
import { CommonModule } from '@angular/common';
|
||||||
|
import { TranslateModule } from '@ngx-translate/core';
|
||||||
|
import { IconComponent } from '@alfresco/adf-core';
|
||||||
|
import { MatButtonModule } from '@angular/material/button';
|
||||||
|
import { MatProgressSpinnerModule } from '@angular/material/progress-spinner';
|
||||||
|
import { ReactiveFormsModule } from '@angular/forms';
|
||||||
|
import { MatFormFieldModule } from '@angular/material/form-field';
|
||||||
|
import { MatSelectModule } from '@angular/material/select';
|
||||||
|
import { MatInputModule } from '@angular/material/input';
|
||||||
|
import { MatDatepickerModule } from '@angular/material/datepicker';
|
||||||
|
import { MatIconModule } from '@angular/material/icon';
|
||||||
|
import { MatCheckboxModule } from '@angular/material/checkbox';
|
||||||
|
import { DateRangeFilterComponent } from '../../../../common/date-range-filter/date-range-filter.component';
|
||||||
|
import { PeopleCloudComponent } from '../../../../people/components/people-cloud.component';
|
||||||
|
import { TaskAssignmentFilterCloudComponent } from '../task-assignment-filter/task-assignment-filter.component';
|
||||||
|
import { MatExpansionModule } from '@angular/material/expansion';
|
||||||
|
|
||||||
@Component({
|
@Component({
|
||||||
selector: 'adf-cloud-edit-service-task-filter',
|
selector: 'adf-cloud-edit-service-task-filter',
|
||||||
|
standalone: true,
|
||||||
|
imports: [
|
||||||
|
CommonModule,
|
||||||
|
TranslateModule,
|
||||||
|
IconComponent,
|
||||||
|
MatButtonModule,
|
||||||
|
MatProgressSpinnerModule,
|
||||||
|
ReactiveFormsModule,
|
||||||
|
MatFormFieldModule,
|
||||||
|
MatSelectModule,
|
||||||
|
MatInputModule,
|
||||||
|
MatDatepickerModule,
|
||||||
|
MatIconModule,
|
||||||
|
MatCheckboxModule,
|
||||||
|
DateRangeFilterComponent,
|
||||||
|
PeopleCloudComponent,
|
||||||
|
TaskAssignmentFilterCloudComponent,
|
||||||
|
MatExpansionModule
|
||||||
|
],
|
||||||
templateUrl: './base-edit-task-filter-cloud.component.html',
|
templateUrl: './base-edit-task-filter-cloud.component.html',
|
||||||
styleUrls: ['./base-edit-task-filter-cloud.component.scss'],
|
styleUrls: ['./base-edit-task-filter-cloud.component.scss'],
|
||||||
encapsulation: ViewEncapsulation.None
|
encapsulation: ViewEncapsulation.None
|
||||||
@@ -62,9 +97,7 @@ export class EditServiceTaskFilterCloudComponent extends BaseEditTaskFilterCloud
|
|||||||
}
|
}
|
||||||
|
|
||||||
protected addFilter(filterToAdd: ServiceTaskFilterCloudModel): Observable<any> {
|
protected addFilter(filterToAdd: ServiceTaskFilterCloudModel): Observable<any> {
|
||||||
return this.serviceTaskFilterCloudService
|
return this.serviceTaskFilterCloudService.addFilter(filterToAdd).pipe(takeUntil(this.onDestroy$));
|
||||||
.addFilter(filterToAdd)
|
|
||||||
.pipe(takeUntil(this.onDestroy$));
|
|
||||||
}
|
}
|
||||||
|
|
||||||
isDisabledForDefaultFilters(action: TaskFilterAction): boolean {
|
isDisabledForDefaultFilters(action: TaskFilterAction): boolean {
|
||||||
|
@@ -25,7 +25,6 @@ import { LocalPreferenceCloudService } from '../../../../services/local-preferen
|
|||||||
import { ProcessServiceCloudTestingModule } from '../../../../testing/process-service-cloud.testing.module';
|
import { ProcessServiceCloudTestingModule } from '../../../../testing/process-service-cloud.testing.module';
|
||||||
import { AppsProcessCloudService } from '../../../../app/services/apps-process-cloud.service';
|
import { AppsProcessCloudService } from '../../../../app/services/apps-process-cloud.service';
|
||||||
import { fakeApplicationInstance } from '../../../../app/mock/app-model.mock';
|
import { fakeApplicationInstance } from '../../../../app/mock/app-model.mock';
|
||||||
import { TaskFiltersCloudModule } from '../../task-filters-cloud.module';
|
|
||||||
import { EditTaskFilterCloudComponent } from './edit-task-filter-cloud.component';
|
import { EditTaskFilterCloudComponent } from './edit-task-filter-cloud.component';
|
||||||
import { TaskFilterCloudService } from '../../services/task-filter-cloud.service';
|
import { TaskFilterCloudService } from '../../services/task-filter-cloud.service';
|
||||||
import { TaskCloudService } from '../../../services/task-cloud.service';
|
import { TaskCloudService } from '../../../services/task-cloud.service';
|
||||||
@@ -55,7 +54,6 @@ import { TestbedHarnessEnvironment } from '@angular/cdk/testing/testbed';
|
|||||||
import { MatSelectHarness } from '@angular/material/select/testing';
|
import { MatSelectHarness } from '@angular/material/select/testing';
|
||||||
import { MatExpansionPanelHarness } from '@angular/material/expansion/testing';
|
import { MatExpansionPanelHarness } from '@angular/material/expansion/testing';
|
||||||
import { MatProgressSpinnerHarness } from '@angular/material/progress-spinner/testing';
|
import { MatProgressSpinnerHarness } from '@angular/material/progress-spinner/testing';
|
||||||
import { PeopleCloudComponent } from '@alfresco/adf-process-services-cloud';
|
|
||||||
|
|
||||||
describe('EditTaskFilterCloudComponent', () => {
|
describe('EditTaskFilterCloudComponent', () => {
|
||||||
let loader: HarnessLoader;
|
let loader: HarnessLoader;
|
||||||
@@ -73,7 +71,7 @@ describe('EditTaskFilterCloudComponent', () => {
|
|||||||
|
|
||||||
beforeEach(() => {
|
beforeEach(() => {
|
||||||
TestBed.configureTestingModule({
|
TestBed.configureTestingModule({
|
||||||
imports: [ProcessServiceCloudTestingModule, TaskFiltersCloudModule, PeopleCloudComponent],
|
imports: [ProcessServiceCloudTestingModule, EditTaskFilterCloudComponent],
|
||||||
providers: [MatDialog, { provide: TASK_FILTERS_SERVICE_TOKEN, useClass: LocalPreferenceCloudService }]
|
providers: [MatDialog, { provide: TASK_FILTERS_SERVICE_TOKEN, useClass: LocalPreferenceCloudService }]
|
||||||
});
|
});
|
||||||
fixture = TestBed.createComponent(EditTaskFilterCloudComponent);
|
fixture = TestBed.createComponent(EditTaskFilterCloudComponent);
|
||||||
|
@@ -23,9 +23,44 @@ import { TaskFilterCloudService } from '../../services/task-filter-cloud.service
|
|||||||
import { DateCloudFilterType } from '../../../../models/date-cloud-filter.model';
|
import { DateCloudFilterType } from '../../../../models/date-cloud-filter.model';
|
||||||
import { BaseEditTaskFilterCloudComponent, DropdownOption } from './base-edit-task-filter-cloud.component';
|
import { BaseEditTaskFilterCloudComponent, DropdownOption } from './base-edit-task-filter-cloud.component';
|
||||||
import { set } from 'date-fns';
|
import { set } from 'date-fns';
|
||||||
|
import { CommonModule } from '@angular/common';
|
||||||
|
import { TranslateModule } from '@ngx-translate/core';
|
||||||
|
import { IconComponent } from '@alfresco/adf-core';
|
||||||
|
import { MatButtonModule } from '@angular/material/button';
|
||||||
|
import { MatProgressSpinnerModule } from '@angular/material/progress-spinner';
|
||||||
|
import { ReactiveFormsModule } from '@angular/forms';
|
||||||
|
import { MatFormFieldModule } from '@angular/material/form-field';
|
||||||
|
import { MatSelectModule } from '@angular/material/select';
|
||||||
|
import { MatInputModule } from '@angular/material/input';
|
||||||
|
import { MatDatepickerModule } from '@angular/material/datepicker';
|
||||||
|
import { MatIconModule } from '@angular/material/icon';
|
||||||
|
import { MatCheckboxModule } from '@angular/material/checkbox';
|
||||||
|
import { DateRangeFilterComponent } from '../../../../common/date-range-filter/date-range-filter.component';
|
||||||
|
import { PeopleCloudComponent } from '../../../../people/components/people-cloud.component';
|
||||||
|
import { TaskAssignmentFilterCloudComponent } from '../task-assignment-filter/task-assignment-filter.component';
|
||||||
|
import { MatExpansionModule } from '@angular/material/expansion';
|
||||||
|
|
||||||
@Component({
|
@Component({
|
||||||
selector: 'adf-cloud-edit-task-filter',
|
selector: 'adf-cloud-edit-task-filter',
|
||||||
|
standalone: true,
|
||||||
|
imports: [
|
||||||
|
CommonModule,
|
||||||
|
TranslateModule,
|
||||||
|
IconComponent,
|
||||||
|
MatButtonModule,
|
||||||
|
MatProgressSpinnerModule,
|
||||||
|
ReactiveFormsModule,
|
||||||
|
MatFormFieldModule,
|
||||||
|
MatSelectModule,
|
||||||
|
MatInputModule,
|
||||||
|
MatDatepickerModule,
|
||||||
|
MatIconModule,
|
||||||
|
MatCheckboxModule,
|
||||||
|
DateRangeFilterComponent,
|
||||||
|
PeopleCloudComponent,
|
||||||
|
TaskAssignmentFilterCloudComponent,
|
||||||
|
MatExpansionModule
|
||||||
|
],
|
||||||
templateUrl: './base-edit-task-filter-cloud.component.html',
|
templateUrl: './base-edit-task-filter-cloud.component.html',
|
||||||
styleUrls: ['./base-edit-task-filter-cloud.component.scss'],
|
styleUrls: ['./base-edit-task-filter-cloud.component.scss'],
|
||||||
encapsulation: ViewEncapsulation.None
|
encapsulation: ViewEncapsulation.None
|
||||||
@@ -45,21 +80,14 @@ export class EditTaskFilterCloudComponent extends BaseEditTaskFilterCloudCompone
|
|||||||
}
|
}
|
||||||
|
|
||||||
protected getTaskFilterById(appName: string, id: string) {
|
protected getTaskFilterById(appName: string, id: string) {
|
||||||
return this.taskFilterCloudService
|
return this.taskFilterCloudService.getTaskFilterById(appName, id).pipe(map((response) => new TaskFilterCloudModel(response)));
|
||||||
.getTaskFilterById(appName, id)
|
|
||||||
.pipe(
|
|
||||||
map(response => new TaskFilterCloudModel(response))
|
|
||||||
);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
createAndFilterProperties() {
|
createAndFilterProperties() {
|
||||||
const result = super.createAndFilterProperties();
|
const result = super.createAndFilterProperties();
|
||||||
|
|
||||||
if (this.hasLastModifiedProperty()) {
|
if (this.hasLastModifiedProperty()) {
|
||||||
return [
|
return [...result, ...this.createLastModifiedProperty()];
|
||||||
...result,
|
|
||||||
...this.createLastModifiedProperty()
|
|
||||||
];
|
|
||||||
}
|
}
|
||||||
|
|
||||||
return result;
|
return result;
|
||||||
@@ -75,14 +103,11 @@ export class EditTaskFilterCloudComponent extends BaseEditTaskFilterCloudCompone
|
|||||||
|
|
||||||
private setLastModifiedToFilter(formValues: TaskFilterCloudModel) {
|
private setLastModifiedToFilter(formValues: TaskFilterCloudModel) {
|
||||||
if (formValues.lastModifiedTo && Date.parse(formValues.lastModifiedTo.toString())) {
|
if (formValues.lastModifiedTo && Date.parse(formValues.lastModifiedTo.toString())) {
|
||||||
const lastModifiedToFilterValue = set(
|
const lastModifiedToFilterValue = set(new Date(formValues.lastModifiedTo), {
|
||||||
new Date(formValues.lastModifiedTo),
|
hours: 23,
|
||||||
{
|
minutes: 59,
|
||||||
hours: 23,
|
seconds: 59
|
||||||
minutes: 59,
|
});
|
||||||
seconds: 59
|
|
||||||
}
|
|
||||||
);
|
|
||||||
formValues.lastModifiedTo = lastModifiedToFilterValue.toISOString();
|
formValues.lastModifiedTo = lastModifiedToFilterValue.toISOString();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -96,9 +121,7 @@ export class EditTaskFilterCloudComponent extends BaseEditTaskFilterCloudCompone
|
|||||||
}
|
}
|
||||||
|
|
||||||
protected addFilter(filterToAdd: TaskFilterCloudModel): Observable<any> {
|
protected addFilter(filterToAdd: TaskFilterCloudModel): Observable<any> {
|
||||||
return this.taskFilterCloudService
|
return this.taskFilterCloudService.addFilter(filterToAdd).pipe(takeUntil(this.onDestroy$));
|
||||||
.addFilter(filterToAdd)
|
|
||||||
.pipe(takeUntil(this.onDestroy$));
|
|
||||||
}
|
}
|
||||||
|
|
||||||
isDisabledForDefaultFilters(action: TaskFilterAction): boolean {
|
isDisabledForDefaultFilters(action: TaskFilterAction): boolean {
|
||||||
@@ -244,7 +267,7 @@ export class EditTaskFilterCloudComponent extends BaseEditTaskFilterCloudCompone
|
|||||||
label: 'ADF_CLOUD_EDIT_TASK_FILTER.LABEL.DUE_DATE',
|
label: 'ADF_CLOUD_EDIT_TASK_FILTER.LABEL.DUE_DATE',
|
||||||
type: 'date-range',
|
type: 'date-range',
|
||||||
key: 'dueDateRange',
|
key: 'dueDateRange',
|
||||||
attributes: { dateType: 'dueDateType', from: '_dueDateFrom', to: '_dueDateTo'},
|
attributes: { dateType: 'dueDateType', from: '_dueDateFrom', to: '_dueDateTo' },
|
||||||
value: {
|
value: {
|
||||||
dueDateType: this.taskFilter.dueDateType || null,
|
dueDateType: this.taskFilter.dueDateType || null,
|
||||||
_dueDateFrom: this.taskFilter.dueDateFrom || null,
|
_dueDateFrom: this.taskFilter.dueDateFrom || null,
|
||||||
@@ -262,7 +285,7 @@ export class EditTaskFilterCloudComponent extends BaseEditTaskFilterCloudCompone
|
|||||||
label: 'ADF_CLOUD_EDIT_TASK_FILTER.LABEL.COMPLETED_DATE',
|
label: 'ADF_CLOUD_EDIT_TASK_FILTER.LABEL.COMPLETED_DATE',
|
||||||
type: 'date-range',
|
type: 'date-range',
|
||||||
key: 'completedDateRange',
|
key: 'completedDateRange',
|
||||||
attributes: { dateType: 'completedDateType', from: '_completedFrom', to: '_completedTo'},
|
attributes: { dateType: 'completedDateType', from: '_completedFrom', to: '_completedTo' },
|
||||||
value: {
|
value: {
|
||||||
completedDateType: this.taskFilter.completedDateType || null,
|
completedDateType: this.taskFilter.completedDateType || null,
|
||||||
_completedFrom: this.taskFilter.completedFrom || null,
|
_completedFrom: this.taskFilter.completedFrom || null,
|
||||||
@@ -273,7 +296,7 @@ export class EditTaskFilterCloudComponent extends BaseEditTaskFilterCloudCompone
|
|||||||
label: 'ADF_CLOUD_EDIT_TASK_FILTER.LABEL.CREATED_DATE',
|
label: 'ADF_CLOUD_EDIT_TASK_FILTER.LABEL.CREATED_DATE',
|
||||||
type: 'date-range',
|
type: 'date-range',
|
||||||
key: 'createdDateRange',
|
key: 'createdDateRange',
|
||||||
attributes: { dateType: 'createdDateType', from: '_createdFrom', to: '_createdTo'},
|
attributes: { dateType: 'createdDateType', from: '_createdFrom', to: '_createdTo' },
|
||||||
value: {
|
value: {
|
||||||
createdDateType: this.taskFilter.createdDateType || null,
|
createdDateType: this.taskFilter.createdDateType || null,
|
||||||
_createdFrom: this.taskFilter.createdFrom || null,
|
_createdFrom: this.taskFilter.createdFrom || null,
|
||||||
@@ -291,7 +314,7 @@ export class EditTaskFilterCloudComponent extends BaseEditTaskFilterCloudCompone
|
|||||||
label: 'ADF_CLOUD_EDIT_TASK_FILTER.LABEL.ASSIGNMENT',
|
label: 'ADF_CLOUD_EDIT_TASK_FILTER.LABEL.ASSIGNMENT',
|
||||||
type: 'assignment',
|
type: 'assignment',
|
||||||
key: 'assignment',
|
key: 'assignment',
|
||||||
attributes: { assignedUsers: 'assignedUsers', candidateGroups: 'candidateGroups'},
|
attributes: { assignedUsers: 'assignedUsers', candidateGroups: 'candidateGroups' },
|
||||||
value: {
|
value: {
|
||||||
assignedUsers: this.taskFilter.assignedUsers || [],
|
assignedUsers: this.taskFilter.assignedUsers || [],
|
||||||
candidateGroups: this.taskFilter.candidateGroups || []
|
candidateGroups: this.taskFilter.candidateGroups || []
|
||||||
|
@@ -21,7 +21,6 @@
|
|||||||
<adf-cloud-group *ngIf="isCandidateGroupsType()"
|
<adf-cloud-group *ngIf="isCandidateGroupsType()"
|
||||||
class="adf-group-cloud-filter"
|
class="adf-group-cloud-filter"
|
||||||
data-automation-id="adf-group-cloud-candidate-groups-filter"
|
data-automation-id="adf-group-cloud-candidate-groups-filter"
|
||||||
[mode]="'multiple'"
|
|
||||||
[appName]="appName"
|
[appName]="appName"
|
||||||
[preSelectGroups]="candidateGroups"
|
[preSelectGroups]="candidateGroups"
|
||||||
[mode]="taskFilterProperty.selectionMode"
|
[mode]="taskFilterProperty.selectionMode"
|
||||||
|
@@ -17,7 +17,6 @@
|
|||||||
|
|
||||||
import { ComponentFixture, TestBed } from '@angular/core/testing';
|
import { ComponentFixture, TestBed } from '@angular/core/testing';
|
||||||
import { TaskAssignmentFilterCloudComponent } from './task-assignment-filter.component';
|
import { TaskAssignmentFilterCloudComponent } from './task-assignment-filter.component';
|
||||||
import { TaskFiltersCloudModule } from '../../task-filters-cloud.module';
|
|
||||||
import { AssignmentType, TaskStatusFilter } from '../../models/filter-cloud.model';
|
import { AssignmentType, TaskStatusFilter } from '../../models/filter-cloud.model';
|
||||||
import { IdentityUserService } from '../../../../people/services/identity-user.service';
|
import { IdentityUserService } from '../../../../people/services/identity-user.service';
|
||||||
import { By } from '@angular/platform-browser';
|
import { By } from '@angular/platform-browser';
|
||||||
@@ -29,7 +28,6 @@ import { TestbedHarnessEnvironment } from '@angular/cdk/testing/testbed';
|
|||||||
import { MatSelectHarness } from '@angular/material/select/testing';
|
import { MatSelectHarness } from '@angular/material/select/testing';
|
||||||
import { MatFormFieldHarness } from '@angular/material/form-field/testing';
|
import { MatFormFieldHarness } from '@angular/material/form-field/testing';
|
||||||
import { ProcessServiceCloudTestingModule } from '../../../../testing/process-service-cloud.testing.module';
|
import { ProcessServiceCloudTestingModule } from '../../../../testing/process-service-cloud.testing.module';
|
||||||
import { GroupCloudComponent } from '@alfresco/adf-process-services-cloud';
|
|
||||||
|
|
||||||
describe('TaskAssignmentFilterComponent', () => {
|
describe('TaskAssignmentFilterComponent', () => {
|
||||||
let component: TaskAssignmentFilterCloudComponent;
|
let component: TaskAssignmentFilterCloudComponent;
|
||||||
@@ -58,7 +56,7 @@ describe('TaskAssignmentFilterComponent', () => {
|
|||||||
|
|
||||||
beforeEach(() => {
|
beforeEach(() => {
|
||||||
TestBed.configureTestingModule({
|
TestBed.configureTestingModule({
|
||||||
imports: [ProcessServiceCloudTestingModule, GroupCloudComponent, TaskFiltersCloudModule]
|
imports: [ProcessServiceCloudTestingModule, TaskAssignmentFilterCloudComponent]
|
||||||
});
|
});
|
||||||
});
|
});
|
||||||
|
|
||||||
|
@@ -16,21 +16,26 @@
|
|||||||
*/
|
*/
|
||||||
|
|
||||||
import { Component, Input, Output, EventEmitter, OnInit, OnChanges, SimpleChanges } from '@angular/core';
|
import { Component, Input, Output, EventEmitter, OnInit, OnChanges, SimpleChanges } from '@angular/core';
|
||||||
import { MatSelectChange } from '@angular/material/select';
|
import { MatSelectChange, MatSelectModule } from '@angular/material/select';
|
||||||
import { AssignmentType, TaskFilterProperties, TaskStatusFilter } from '../../models/filter-cloud.model';
|
import { AssignmentType, TaskFilterProperties, TaskStatusFilter } from '../../models/filter-cloud.model';
|
||||||
import { IdentityUserModel } from '../../../../people/models/identity-user.model';
|
import { IdentityUserModel } from '../../../../people/models/identity-user.model';
|
||||||
import { IdentityUserService } from '../../../../people/services/identity-user.service';
|
import { IdentityUserService } from '../../../../people/services/identity-user.service';
|
||||||
import { IdentityGroupModel } from '../../../../group/models/identity-group.model';
|
import { IdentityGroupModel } from '../../../../group/models/identity-group.model';
|
||||||
import { DropdownOption } from '../edit-task-filters/base-edit-task-filter-cloud.component';
|
import { DropdownOption } from '../edit-task-filters/base-edit-task-filter-cloud.component';
|
||||||
import { FormControl } from '@angular/forms';
|
import { FormControl, FormsModule } from '@angular/forms';
|
||||||
|
import { CommonModule } from '@angular/common';
|
||||||
|
import { TranslateModule } from '@ngx-translate/core';
|
||||||
|
import { PeopleCloudComponent } from '../../../../people/components/people-cloud.component';
|
||||||
|
import { GroupCloudComponent } from '../../../../group/components/group-cloud.component';
|
||||||
|
|
||||||
@Component({
|
@Component({
|
||||||
selector: 'adf-cloud-task-assignment-filter',
|
selector: 'adf-cloud-task-assignment-filter',
|
||||||
|
standalone: true,
|
||||||
|
imports: [CommonModule, PeopleCloudComponent, GroupCloudComponent, TranslateModule, MatSelectModule, FormsModule],
|
||||||
templateUrl: './task-assignment-filter.component.html',
|
templateUrl: './task-assignment-filter.component.html',
|
||||||
styleUrls: ['./task-assignment-filter.component.scss']
|
styleUrls: ['./task-assignment-filter.component.scss']
|
||||||
})
|
})
|
||||||
export class TaskAssignmentFilterCloudComponent implements OnInit, OnChanges {
|
export class TaskAssignmentFilterCloudComponent implements OnInit, OnChanges {
|
||||||
|
|
||||||
@Input() appName: string;
|
@Input() appName: string;
|
||||||
|
|
||||||
@Input() taskFilterProperty: TaskFilterProperties;
|
@Input() taskFilterProperty: TaskFilterProperties;
|
||||||
|
@@ -18,7 +18,6 @@
|
|||||||
import { ComponentFixture, TestBed } from '@angular/core/testing';
|
import { ComponentFixture, TestBed } from '@angular/core/testing';
|
||||||
import { MatDialogRef, MAT_DIALOG_DATA } from '@angular/material/dialog';
|
import { MatDialogRef, MAT_DIALOG_DATA } from '@angular/material/dialog';
|
||||||
import { TaskFilterDialogCloudComponent } from './task-filter-dialog-cloud.component';
|
import { TaskFilterDialogCloudComponent } from './task-filter-dialog-cloud.component';
|
||||||
import { TaskFiltersCloudModule } from '../../task-filters-cloud.module';
|
|
||||||
import { ProcessServiceCloudTestingModule } from '../../../../testing/process-service-cloud.testing.module';
|
import { ProcessServiceCloudTestingModule } from '../../../../testing/process-service-cloud.testing.module';
|
||||||
|
|
||||||
describe('TaskFilterDialogCloudComponent', () => {
|
describe('TaskFilterDialogCloudComponent', () => {
|
||||||
@@ -36,7 +35,7 @@ describe('TaskFilterDialogCloudComponent', () => {
|
|||||||
|
|
||||||
beforeEach(() => {
|
beforeEach(() => {
|
||||||
TestBed.configureTestingModule({
|
TestBed.configureTestingModule({
|
||||||
imports: [ProcessServiceCloudTestingModule, TaskFiltersCloudModule],
|
imports: [ProcessServiceCloudTestingModule, TaskFilterDialogCloudComponent],
|
||||||
providers: [
|
providers: [
|
||||||
{ provide: MatDialogRef, useValue: mockDialogRef },
|
{ provide: MatDialogRef, useValue: mockDialogRef },
|
||||||
{ provide: MAT_DIALOG_DATA, useValue: mockDialogData }
|
{ provide: MAT_DIALOG_DATA, useValue: mockDialogData }
|
||||||
|
@@ -16,17 +16,23 @@
|
|||||||
*/
|
*/
|
||||||
|
|
||||||
import { Component, Inject, OnInit, ViewEncapsulation } from '@angular/core';
|
import { Component, Inject, OnInit, ViewEncapsulation } from '@angular/core';
|
||||||
import { MAT_DIALOG_DATA, MatDialogRef } from '@angular/material/dialog';
|
import { MAT_DIALOG_DATA, MatDialogModule, MatDialogRef } from '@angular/material/dialog';
|
||||||
import { AbstractControl, UntypedFormBuilder, UntypedFormGroup, Validators } from '@angular/forms';
|
import { AbstractControl, ReactiveFormsModule, UntypedFormBuilder, UntypedFormGroup, Validators } from '@angular/forms';
|
||||||
|
import { CommonModule } from '@angular/common';
|
||||||
|
import { TranslateModule } from '@ngx-translate/core';
|
||||||
|
import { MatButtonModule } from '@angular/material/button';
|
||||||
|
import { MatCardModule } from '@angular/material/card';
|
||||||
|
import { MatInputModule } from '@angular/material/input';
|
||||||
|
|
||||||
@Component({
|
@Component({
|
||||||
selector: 'adf-cloud-task-filter-dialog',
|
selector: 'adf-cloud-task-filter-dialog',
|
||||||
templateUrl: './task-filter-dialog-cloud.component.html',
|
standalone: true,
|
||||||
styleUrls: ['./task-filter-dialog-cloud.component.scss'],
|
imports: [CommonModule, TranslateModule, MatButtonModule, MatCardModule, MatInputModule, ReactiveFormsModule, MatDialogModule],
|
||||||
encapsulation: ViewEncapsulation.None
|
templateUrl: './task-filter-dialog-cloud.component.html',
|
||||||
|
styleUrls: ['./task-filter-dialog-cloud.component.scss'],
|
||||||
|
encapsulation: ViewEncapsulation.None
|
||||||
})
|
})
|
||||||
export class TaskFilterDialogCloudComponent implements OnInit {
|
export class TaskFilterDialogCloudComponent implements OnInit {
|
||||||
|
|
||||||
// eslint-disable-next-line @typescript-eslint/naming-convention
|
// eslint-disable-next-line @typescript-eslint/naming-convention
|
||||||
public static ACTION_SAVE = 'SAVE';
|
public static ACTION_SAVE = 'SAVE';
|
||||||
defaultIcon = 'inbox';
|
defaultIcon = 'inbox';
|
||||||
@@ -36,8 +42,8 @@ export class TaskFilterDialogCloudComponent implements OnInit {
|
|||||||
constructor(
|
constructor(
|
||||||
private fb: UntypedFormBuilder,
|
private fb: UntypedFormBuilder,
|
||||||
public dialogRef: MatDialogRef<TaskFilterDialogCloudComponent>,
|
public dialogRef: MatDialogRef<TaskFilterDialogCloudComponent>,
|
||||||
@Inject(MAT_DIALOG_DATA) public data) {
|
@Inject(MAT_DIALOG_DATA) public data
|
||||||
}
|
) {}
|
||||||
|
|
||||||
ngOnInit() {
|
ngOnInit() {
|
||||||
this.filterForm = this.fb.group({
|
this.filterForm = this.fb.group({
|
||||||
|
@@ -19,7 +19,8 @@ export * from './components/task-filters-cloud.component';
|
|||||||
export * from './components/service-task-filters-cloud.component';
|
export * from './components/service-task-filters-cloud.component';
|
||||||
export * from './components/edit-task-filters/edit-task-filter-cloud.component';
|
export * from './components/edit-task-filters/edit-task-filter-cloud.component';
|
||||||
export * from './components/edit-task-filters/edit-service-task-filter-cloud.component';
|
export * from './components/edit-task-filters/edit-service-task-filter-cloud.component';
|
||||||
|
export * from './components/task-filter-dialog/task-filter-dialog-cloud.component';
|
||||||
|
export * from './components/task-assignment-filter/task-assignment-filter.component';
|
||||||
export * from './models/filter-cloud.model';
|
export * from './models/filter-cloud.model';
|
||||||
|
|
||||||
export * from './services/task-filter-cloud.service';
|
export * from './services/task-filter-cloud.service';
|
||||||
|
@@ -16,46 +16,25 @@
|
|||||||
*/
|
*/
|
||||||
|
|
||||||
import { NgModule } from '@angular/core';
|
import { NgModule } from '@angular/core';
|
||||||
import { FormsModule, ReactiveFormsModule } from '@angular/forms';
|
|
||||||
import { CommonModule } from '@angular/common';
|
|
||||||
import { TaskFiltersCloudComponent } from './components/task-filters-cloud.component';
|
import { TaskFiltersCloudComponent } from './components/task-filters-cloud.component';
|
||||||
import { MaterialModule } from '../../material.module';
|
|
||||||
import { CoreModule } from '@alfresco/adf-core';
|
|
||||||
import { HttpClientModule } from '@angular/common/http';
|
|
||||||
import { APP_LIST_CLOUD_DIRECTIVES } from './../../app/app-list-cloud.module';
|
|
||||||
import { EditServiceTaskFilterCloudComponent } from './components/edit-task-filters/edit-service-task-filter-cloud.component';
|
import { EditServiceTaskFilterCloudComponent } from './components/edit-task-filters/edit-service-task-filter-cloud.component';
|
||||||
import { EditTaskFilterCloudComponent } from './components/edit-task-filters/edit-task-filter-cloud.component';
|
import { EditTaskFilterCloudComponent } from './components/edit-task-filters/edit-task-filter-cloud.component';
|
||||||
import { TaskFilterDialogCloudComponent } from './components/task-filter-dialog/task-filter-dialog-cloud.component';
|
import { TaskFilterDialogCloudComponent } from './components/task-filter-dialog/task-filter-dialog-cloud.component';
|
||||||
import { ServiceTaskFiltersCloudComponent } from './components/service-task-filters-cloud.component';
|
import { ServiceTaskFiltersCloudComponent } from './components/service-task-filters-cloud.component';
|
||||||
import { TaskAssignmentFilterCloudComponent } from './components/task-assignment-filter/task-assignment-filter.component';
|
import { TaskAssignmentFilterCloudComponent } from './components/task-assignment-filter/task-assignment-filter.component';
|
||||||
import { MatProgressSpinnerModule } from '@angular/material/progress-spinner';
|
|
||||||
import { DateRangeFilterComponent } from '../../common/date-range-filter/date-range-filter.component';
|
|
||||||
import { PeopleCloudComponent } from '../../people/components/people-cloud.component';
|
|
||||||
import { GroupCloudComponent } from '../../group/components/group-cloud.component';
|
|
||||||
|
|
||||||
|
export const TASK_FILTERS_CLOUD_DIRECTIVES = [
|
||||||
|
TaskFiltersCloudComponent,
|
||||||
|
ServiceTaskFiltersCloudComponent,
|
||||||
|
EditTaskFilterCloudComponent,
|
||||||
|
EditServiceTaskFilterCloudComponent,
|
||||||
|
TaskAssignmentFilterCloudComponent,
|
||||||
|
TaskFilterDialogCloudComponent
|
||||||
|
] as const;
|
||||||
|
|
||||||
|
/** @deprecated use individual standalone components instead */
|
||||||
@NgModule({
|
@NgModule({
|
||||||
imports: [
|
imports: [...TASK_FILTERS_CLOUD_DIRECTIVES],
|
||||||
FormsModule,
|
exports: [...TASK_FILTERS_CLOUD_DIRECTIVES]
|
||||||
ReactiveFormsModule,
|
|
||||||
HttpClientModule,
|
|
||||||
CommonModule,
|
|
||||||
MaterialModule,
|
|
||||||
...APP_LIST_CLOUD_DIRECTIVES,
|
|
||||||
CoreModule,
|
|
||||||
GroupCloudComponent,
|
|
||||||
DateRangeFilterComponent,
|
|
||||||
PeopleCloudComponent,
|
|
||||||
MatProgressSpinnerModule,
|
|
||||||
//
|
|
||||||
TaskFiltersCloudComponent,
|
|
||||||
ServiceTaskFiltersCloudComponent
|
|
||||||
],
|
|
||||||
declarations: [
|
|
||||||
EditTaskFilterCloudComponent,
|
|
||||||
EditServiceTaskFilterCloudComponent,
|
|
||||||
TaskFilterDialogCloudComponent,
|
|
||||||
TaskAssignmentFilterCloudComponent
|
|
||||||
],
|
|
||||||
exports: [TaskFiltersCloudComponent, ServiceTaskFiltersCloudComponent, EditTaskFilterCloudComponent, EditServiceTaskFilterCloudComponent]
|
|
||||||
})
|
})
|
||||||
export class TaskFiltersCloudModule {}
|
export class TaskFiltersCloudModule {}
|
||||||
|
Reference in New Issue
Block a user