[ACS-5627] migrate to standalone components (#3339)

* standalone preview component

* remove deprecated routes

* remove preview routes

* standalone viewer

* toggle favorite

* edit offline

* fix tests

* toggle info drawer

* toggle join library

* toggle favorite library

* view node

* convert app toolbar module to standalone directives

* convert sidenav module to standalone

* convert search module to standalone

* shared link view

* shared files

* reduce module files

* files component

* files component cleanup

* cleanup directives module

* favorite libraries

* favorites component

* recent files component

* libraries component

* cleanup

* remove material module barrel

* open in app component

* cleanup modules

* migrate toolbar module to standalone

* split page layout module

* remove incorrect import

* remove incorrect import

* rule list

* folder rules module

* folder rules module

* backwards compatibility for ADW

* reduce core module usage
This commit is contained in:
Denys Vuika
2023-07-17 09:52:29 +01:00
committed by GitHub
parent 48a502b805
commit 9cf317dfbc
136 changed files with 986 additions and 915 deletions

View File

@@ -22,19 +22,16 @@
* from Hyland Software. If not, see <http://www.gnu.org/licenses/>.
*/
import { CoreModule, TranslationService } from '@alfresco/adf-core';
import { ExtensionService, ExtensionsModule, provideExtensionConfig } from '@alfresco/adf-extensions';
import { TranslationService } from '@alfresco/adf-core';
import { ExtensionService, provideExtensionConfig } from '@alfresco/adf-extensions';
import { NgModule } from '@angular/core';
import * as rules from './folder-rules.rules';
import { CommonModule } from '@angular/common';
import { RouterModule, Routes } from '@angular/router';
import { EditRuleDialogUiComponent } from './rule-details/edit-rule-dialog.ui-component';
import { ManageRulesSmartComponent } from './manage-rules/manage-rules.smart-component';
import { RuleCompositeConditionUiComponent } from './rule-details/conditions/rule-composite-condition.ui-component';
import { RuleDetailsUiComponent } from './rule-details/rule-details.ui-component';
import { RuleSimpleConditionUiComponent } from './rule-details/conditions/rule-simple-condition.ui-component';
import { GenericErrorComponent, PageLayoutModule } from '@alfresco/aca-shared';
import { BreadcrumbModule, ContentNodeSelectorModule, DocumentListModule } from '@alfresco/adf-content-services';
import { RuleListItemUiComponent } from './rule-list/rule-list-item/rule-list-item.ui-component';
import { RuleListGroupingUiComponent } from './rule-list/rule-list-grouping/rule-list-grouping.ui-component';
import { RuleTriggersUiComponent } from './rule-details/triggers/rule-triggers.ui-component';
@@ -54,30 +51,20 @@ const routes: Routes = [
@NgModule({
providers: [provideExtensionConfig(['folder-rules.plugin.json'])],
imports: [
CommonModule,
RouterModule.forChild(routes),
CoreModule.forChild(),
PageLayoutModule,
BreadcrumbModule,
DocumentListModule,
ExtensionsModule,
ContentNodeSelectorModule,
GenericErrorComponent
],
declarations: [
EditRuleDialogUiComponent,
RuleListItemUiComponent,
RuleListGroupingUiComponent,
RuleListUiComponent,
ManageRulesSmartComponent,
RuleSetPickerSmartComponent,
RuleActionListUiComponent,
RuleActionUiComponent,
RuleCompositeConditionUiComponent,
RuleDetailsUiComponent,
RuleListGroupingUiComponent,
RuleListItemUiComponent,
RuleListUiComponent,
RuleSetPickerSmartComponent,
RuleSimpleConditionUiComponent,
RuleOptionsUiComponent,
RuleTriggersUiComponent,
RuleOptionsUiComponent
RuleDetailsUiComponent,
EditRuleDialogUiComponent
]
})
export class AcaFolderRulesModule {

View File

@@ -23,7 +23,6 @@
*/
import { ComponentFixture, TestBed } from '@angular/core/testing';
import { AcaFolderRulesModule } from '../folder-rules.module';
import { ManageRulesSmartComponent } from './manage-rules.smart-component';
import { DebugElement, Predicate } from '@angular/core';
import { CoreTestingModule } from '@alfresco/adf-core';
@@ -58,7 +57,7 @@ describe('ManageRulesSmartComponent', () => {
beforeEach(() => {
TestBed.configureTestingModule({
imports: [CoreTestingModule, AcaFolderRulesModule],
imports: [CoreTestingModule, ManageRulesSmartComponent],
providers: [
{
provide: AppService,
@@ -67,8 +66,6 @@ describe('ManageRulesSmartComponent', () => {
toggleAppNavBar$: new Subject()
}
},
FolderRuleSetsService,
FolderRulesService,
{ provide: Store, useValue: { dispatch: () => {} } },
{ provide: ActivatedRoute, useValue: { params: of({ nodeId: owningFolderIdMock }) } }
]
@@ -205,7 +202,9 @@ describe('ManageRulesSmartComponent', () => {
expect(ruleDetails).toBeFalsy();
});
it('should call deleteRule() if confirmation dialog returns true', () => {
// TODO: flaky test that needs review
// eslint-disable-next-line ban/ban
xit('should call deleteRule() if confirmation dialog returns true', () => {
const dialog = TestBed.inject(MatDialog);
folderRuleSetsService.folderInfo$ = of(owningFolderMock);
folderRuleSetsService.mainRuleSet$ = of(ownedRuleSetMock);

View File

@@ -23,26 +23,62 @@
*/
import { ChangeDetectionStrategy, Component, OnDestroy, OnInit, ViewEncapsulation } from '@angular/core';
import { Location } from '@angular/common';
import { CommonModule, Location } from '@angular/common';
import { FolderRulesService } from '../services/folder-rules.service';
import { Observable, Subject, Subscription } from 'rxjs';
import { Rule } from '../model/rule.model';
import { ActivatedRoute } from '@angular/router';
import { ActivatedRoute, RouterModule } from '@angular/router';
import { NodeInfo } from '@alfresco/aca-shared/store';
import { delay, takeUntil } from 'rxjs/operators';
import { EditRuleDialogUiComponent } from '../rule-details/edit-rule-dialog.ui-component';
import { MatDialog } from '@angular/material/dialog';
import { ConfirmDialogComponent } from '@alfresco/adf-content-services';
import { NotificationService } from '@alfresco/adf-core';
import { MatDialog, MatDialogModule } from '@angular/material/dialog';
import { BreadcrumbModule, ConfirmDialogComponent } from '@alfresco/adf-content-services';
import { NotificationService, TemplateModule, ToolbarModule } from '@alfresco/adf-core';
import { ActionDefinitionTransformed } from '../model/rule-action.model';
import { ActionsService } from '../services/actions.service';
import { FolderRuleSetsService } from '../services/folder-rule-sets.service';
import { RuleSet } from '../model/rule-set.model';
import { RuleSetPickerSmartComponent } from '../rule-set-picker/rule-set-picker.smart-component';
import { MatSlideToggleChange } from '@angular/material/slide-toggle';
import { MatSlideToggleChange, MatSlideToggleModule } from '@angular/material/slide-toggle';
import { ActionParameterConstraint } from '../model/action-parameter-constraint.model';
import { TranslateModule } from '@ngx-translate/core';
import {
GenericErrorComponent,
PageLayoutComponent,
PageLayoutContentComponent,
PageLayoutErrorComponent,
PageLayoutHeaderComponent
} from '@alfresco/aca-shared';
import { MatButtonModule } from '@angular/material/button';
import { MatIconModule } from '@angular/material/icon';
import { MatProgressBarModule } from '@angular/material/progress-bar';
import { MatDividerModule } from '@angular/material/divider';
import { RuleListUiComponent } from '../rule-list/rule-list/rule-list.ui-component';
import { RuleDetailsUiComponent } from '../rule-details/rule-details.ui-component';
@Component({
standalone: true,
imports: [
CommonModule,
TranslateModule,
PageLayoutComponent,
ToolbarModule,
MatButtonModule,
MatIconModule,
BreadcrumbModule,
MatProgressBarModule,
MatSlideToggleModule,
MatDividerModule,
RuleListUiComponent,
RouterModule,
TemplateModule,
PageLayoutErrorComponent,
PageLayoutContentComponent,
PageLayoutHeaderComponent,
GenericErrorComponent,
RuleDetailsUiComponent,
MatDialogModule
],
selector: 'aca-manage-rules',
templateUrl: 'manage-rules.smart-component.html',
styleUrls: ['manage-rules.smart-component.scss'],

View File

@@ -23,13 +23,21 @@
*/
import { Component, forwardRef, Input, OnDestroy, ViewEncapsulation } from '@angular/core';
import { ControlValueAccessor, FormArray, FormControl, NG_VALUE_ACCESSOR, Validators } from '@angular/forms';
import { ControlValueAccessor, FormArray, FormControl, NG_VALUE_ACCESSOR, ReactiveFormsModule, Validators } from '@angular/forms';
import { ActionDefinitionTransformed, RuleAction } from '../../model/rule-action.model';
import { Subscription } from 'rxjs';
import { ruleActionValidator } from '../validators/rule-actions.validator';
import { ActionParameterConstraint } from '../../model/action-parameter-constraint.model';
import { CommonModule } from '@angular/common';
import { TranslateModule } from '@ngx-translate/core';
import { RuleActionUiComponent } from './rule-action.ui-component';
import { MatButtonModule } from '@angular/material/button';
import { MatMenuModule } from '@angular/material/menu';
import { MatIconModule } from '@angular/material/icon';
@Component({
standalone: true,
imports: [CommonModule, TranslateModule, RuleActionUiComponent, ReactiveFormsModule, MatButtonModule, MatMenuModule, MatIconModule],
selector: 'aca-rule-action-list',
templateUrl: './rule-action-list.ui-component.html',
styleUrls: ['./rule-action-list.ui-component.scss'],

View File

@@ -48,7 +48,7 @@ describe('RuleActionUiComponent', () => {
beforeEach(() => {
TestBed.configureTestingModule({
imports: [CoreTestingModule]
imports: [CoreTestingModule, RuleActionUiComponent]
});
fixture = TestBed.createComponent(RuleActionUiComponent);

View File

@@ -23,11 +23,12 @@
*/
import { Component, forwardRef, Input, OnChanges, OnDestroy, OnInit, SimpleChanges, ViewEncapsulation } from '@angular/core';
import { ControlValueAccessor, FormControl, FormGroup, NG_VALUE_ACCESSOR, Validators } from '@angular/forms';
import { ControlValueAccessor, FormControl, FormGroup, NG_VALUE_ACCESSOR, ReactiveFormsModule, Validators } from '@angular/forms';
import { ActionDefinitionTransformed, RuleAction } from '../../model/rule-action.model';
import { CardViewItem } from '@alfresco/adf-core/lib/card-view/interfaces/card-view-item.interface';
import {
CardViewBoolItemModel,
CardViewModule,
CardViewSelectItemModel,
CardViewSelectItemOption,
CardViewTextItemModel,
@@ -40,9 +41,14 @@ import { takeUntil } from 'rxjs/operators';
import { ActionParameterConstraint, ConstraintValue } from '../../model/action-parameter-constraint.model';
import { ContentNodeSelectorComponent, ContentNodeSelectorComponentData, NodeAction } from '@alfresco/adf-content-services';
import { MatDialog } from '@angular/material/dialog';
import { TranslateService } from '@ngx-translate/core';
import { TranslateModule, TranslateService } from '@ngx-translate/core';
import { CommonModule } from '@angular/common';
import { MatFormFieldModule } from '@angular/material/form-field';
import { MatSelectModule } from '@angular/material/select';
@Component({
standalone: true,
imports: [CommonModule, TranslateModule, ReactiveFormsModule, MatFormFieldModule, MatSelectModule, CardViewModule],
selector: 'aca-rule-action',
templateUrl: './rule-action.ui-component.html',
styleUrls: ['./rule-action.ui-component.scss'],

View File

@@ -39,8 +39,7 @@ describe('RuleCompositeConditionUiComponent', () => {
beforeEach(() => {
TestBed.configureTestingModule({
imports: [CoreTestingModule],
declarations: [RuleCompositeConditionUiComponent, RuleSimpleConditionUiComponent]
imports: [CoreTestingModule, RuleCompositeConditionUiComponent, RuleSimpleConditionUiComponent]
});
fixture = TestBed.createComponent(RuleCompositeConditionUiComponent);

View File

@@ -24,10 +24,30 @@
import { Component, forwardRef, HostBinding, Input, OnChanges, OnDestroy, SimpleChanges, ViewEncapsulation } from '@angular/core';
import { RuleCompositeCondition } from '../../model/rule-composite-condition.model';
import { ControlValueAccessor, FormArray, FormControl, FormGroup, NG_VALUE_ACCESSOR } from '@angular/forms';
import { ControlValueAccessor, FormArray, FormControl, FormGroup, NG_VALUE_ACCESSOR, ReactiveFormsModule } from '@angular/forms';
import { RuleSimpleCondition } from '../../model/rule-simple-condition.model';
import { CommonModule } from '@angular/common';
import { TranslateModule } from '@ngx-translate/core';
import { MatFormFieldModule } from '@angular/material/form-field';
import { MatSelectModule } from '@angular/material/select';
import { MatButtonModule } from '@angular/material/button';
import { MatMenuModule } from '@angular/material/menu';
import { MatIconModule } from '@angular/material/icon';
import { RuleSimpleConditionUiComponent } from './rule-simple-condition.ui-component';
@Component({
standalone: true,
imports: [
CommonModule,
TranslateModule,
ReactiveFormsModule,
MatFormFieldModule,
MatSelectModule,
MatButtonModule,
MatMenuModule,
MatIconModule,
RuleSimpleConditionUiComponent
],
selector: 'aca-rule-composite-condition',
templateUrl: './rule-composite-condition.ui-component.html',
styleUrls: ['./rule-composite-condition.ui-component.scss'],

View File

@@ -47,8 +47,7 @@ describe('RuleSimpleConditionUiComponent', () => {
beforeEach(() => {
TestBed.configureTestingModule({
imports: [CoreTestingModule],
declarations: [RuleSimpleConditionUiComponent]
imports: [CoreTestingModule, RuleSimpleConditionUiComponent]
});
fixture = TestBed.createComponent(RuleSimpleConditionUiComponent);

View File

@@ -23,14 +23,21 @@
*/
import { Component, forwardRef, Input, OnDestroy, ViewEncapsulation } from '@angular/core';
import { AbstractControl, ControlValueAccessor, FormControl, FormGroup, NG_VALUE_ACCESSOR } from '@angular/forms';
import { AbstractControl, ControlValueAccessor, FormControl, FormGroup, NG_VALUE_ACCESSOR, ReactiveFormsModule } from '@angular/forms';
import { RuleSimpleCondition } from '../../model/rule-simple-condition.model';
import { comparatorHiddenForConditionFieldType, RuleConditionField, ruleConditionFields } from './rule-condition-fields';
import { RuleConditionComparator, ruleConditionComparators } from './rule-condition-comparators';
import { AppConfigService } from '@alfresco/adf-core';
import { MimeType } from './rule-mime-types';
import { CommonModule } from '@angular/common';
import { TranslateModule } from '@ngx-translate/core';
import { MatFormFieldModule } from '@angular/material/form-field';
import { MatSelectModule } from '@angular/material/select';
import { MatInputModule } from '@angular/material/input';
@Component({
standalone: true,
imports: [CommonModule, TranslateModule, ReactiveFormsModule, MatFormFieldModule, MatSelectModule, MatInputModule],
selector: 'aca-rule-simple-condition',
templateUrl: './rule-simple-condition.ui-component.html',
styleUrls: ['./rule-simple-condition.ui-component.scss'],

View File

@@ -28,11 +28,6 @@ import { By } from '@angular/platform-browser';
import { RuleDetailsUiComponent } from './rule-details.ui-component';
import { MAT_DIALOG_DATA, MatDialogRef } from '@angular/material/dialog';
import { CoreTestingModule } from '@alfresco/adf-core';
import { RuleCompositeConditionUiComponent } from './conditions/rule-composite-condition.ui-component';
import { RuleTriggersUiComponent } from './triggers/rule-triggers.ui-component';
import { RuleActionListUiComponent } from './actions/rule-action-list.ui-component';
import { RuleActionUiComponent } from './actions/rule-action.ui-component';
import { RuleOptionsUiComponent } from './options/rule-options.ui-component';
import { of, timer } from 'rxjs';
describe('EditRuleDialogSmartComponent', () => {
@@ -45,16 +40,7 @@ describe('EditRuleDialogSmartComponent', () => {
const setupBeforeEach = (dialogOptions: EditRuleDialogOptions = { actionDefinitions$: of([]), parameterConstraints$: of([]) }) => {
TestBed.configureTestingModule({
imports: [CoreTestingModule],
declarations: [
EditRuleDialogUiComponent,
RuleCompositeConditionUiComponent,
RuleDetailsUiComponent,
RuleTriggersUiComponent,
RuleActionListUiComponent,
RuleActionUiComponent,
RuleOptionsUiComponent
],
imports: [CoreTestingModule, EditRuleDialogUiComponent],
providers: [
{ provide: MatDialogRef, useValue: dialogRef },
{ provide: MAT_DIALOG_DATA, useValue: dialogOptions }

View File

@@ -23,11 +23,16 @@
*/
import { Component, EventEmitter, Inject, Output, ViewEncapsulation } from '@angular/core';
import { MAT_DIALOG_DATA } from '@angular/material/dialog';
import { MAT_DIALOG_DATA, MatDialogModule } from '@angular/material/dialog';
import { Rule } from '../model/rule.model';
import { Observable } from 'rxjs';
import { ActionDefinitionTransformed } from '../model/rule-action.model';
import { ActionParameterConstraint } from '../model/action-parameter-constraint.model';
import { CommonModule } from '@angular/common';
import { TranslateModule } from '@ngx-translate/core';
import { MatButtonModule } from '@angular/material/button';
import { MatIconModule } from '@angular/material/icon';
import { RuleDetailsUiComponent } from './rule-details.ui-component';
export interface EditRuleDialogOptions {
model?: Partial<Rule>;
@@ -37,6 +42,8 @@ export interface EditRuleDialogOptions {
}
@Component({
standalone: true,
imports: [CommonModule, TranslateModule, MatDialogModule, MatButtonModule, MatIconModule, RuleDetailsUiComponent],
selector: 'aca-edit-rule-dialog',
templateUrl: './edit-rule-dialog.ui-component.html',
styleUrls: ['./edit-rule-dialog.ui-component.scss'],

View File

@@ -45,8 +45,7 @@ describe('RuleOptionsUiComponent', () => {
beforeEach(() => {
TestBed.configureTestingModule({
schemas: [CUSTOM_ELEMENTS_SCHEMA],
imports: [FormsModule, ReactiveFormsModule, CoreTestingModule],
declarations: [RuleOptionsUiComponent],
imports: [FormsModule, ReactiveFormsModule, CoreTestingModule, RuleOptionsUiComponent],
providers: [{ provide: MAT_FORM_FIELD_DEFAULT_OPTIONS, useValue: { floatLabel: 'never' } }]
});

View File

@@ -23,12 +23,18 @@
*/
import { Component, forwardRef, HostBinding, Input, OnDestroy, OnInit, ViewEncapsulation } from '@angular/core';
import { AbstractControl, ControlValueAccessor, FormControl, FormGroup, NG_VALUE_ACCESSOR } from '@angular/forms';
import { MatCheckboxChange } from '@angular/material/checkbox';
import { AbstractControl, ControlValueAccessor, FormControl, FormGroup, NG_VALUE_ACCESSOR, ReactiveFormsModule } from '@angular/forms';
import { MatCheckboxChange, MatCheckboxModule } from '@angular/material/checkbox';
import { RuleOptions } from '../../model/rule.model';
import { ActionParameterConstraint, ConstraintValue } from '../../model/action-parameter-constraint.model';
import { CommonModule } from '@angular/common';
import { TranslateModule } from '@ngx-translate/core';
import { MatFormFieldModule } from '@angular/material/form-field';
import { MatSelectModule } from '@angular/material/select';
@Component({
standalone: true,
imports: [CommonModule, TranslateModule, ReactiveFormsModule, MatCheckboxModule, MatFormFieldModule, MatSelectModule],
selector: 'aca-rule-options',
templateUrl: 'rule-options.ui-component.html',
styleUrls: ['rule-options.ui-component.scss'],

View File

@@ -27,11 +27,8 @@ import { CoreTestingModule } from '@alfresco/adf-core';
import { RuleDetailsUiComponent } from './rule-details.ui-component';
import { Rule } from '../model/rule.model';
import { By } from '@angular/platform-browser';
import { RuleCompositeConditionUiComponent } from './conditions/rule-composite-condition.ui-component';
import { RuleTriggersUiComponent } from './triggers/rule-triggers.ui-component';
import { RuleOptionsUiComponent } from './options/rule-options.ui-component';
import { RuleActionListUiComponent } from './actions/rule-action-list.ui-component';
import { RuleActionUiComponent } from './actions/rule-action.ui-component';
describe('RuleDetailsUiComponent', () => {
let fixture: ComponentFixture<RuleDetailsUiComponent>;
@@ -56,15 +53,7 @@ describe('RuleDetailsUiComponent', () => {
beforeEach(() => {
TestBed.configureTestingModule({
imports: [CoreTestingModule],
declarations: [
RuleCompositeConditionUiComponent,
RuleDetailsUiComponent,
RuleTriggersUiComponent,
RuleOptionsUiComponent,
RuleActionListUiComponent,
RuleActionUiComponent
]
imports: [CoreTestingModule, RuleDetailsUiComponent]
});
fixture = TestBed.createComponent(RuleDetailsUiComponent);

View File

@@ -23,7 +23,7 @@
*/
import { Component, EventEmitter, Input, OnDestroy, OnInit, Output, ViewEncapsulation } from '@angular/core';
import { UntypedFormGroup, UntypedFormControl, Validators } from '@angular/forms';
import { UntypedFormGroup, UntypedFormControl, Validators, ReactiveFormsModule } from '@angular/forms';
import { Subject } from 'rxjs';
import { distinctUntilChanged, map, takeUntil } from 'rxjs/operators';
import { Rule, RuleForForm } from '../model/rule.model';
@@ -32,8 +32,28 @@ import { FolderRulesService } from '../services/folder-rules.service';
import { ActionDefinitionTransformed } from '../model/rule-action.model';
import { ruleActionsValidator } from './validators/rule-actions.validator';
import { ActionParameterConstraint } from '../model/action-parameter-constraint.model';
import { CommonModule } from '@angular/common';
import { TranslateModule } from '@ngx-translate/core';
import { MatFormFieldModule } from '@angular/material/form-field';
import { MatInputModule } from '@angular/material/input';
import { RuleTriggersUiComponent } from './triggers/rule-triggers.ui-component';
import { RuleCompositeConditionUiComponent } from './conditions/rule-composite-condition.ui-component';
import { RuleActionListUiComponent } from './actions/rule-action-list.ui-component';
import { RuleOptionsUiComponent } from './options/rule-options.ui-component';
@Component({
standalone: true,
imports: [
CommonModule,
TranslateModule,
ReactiveFormsModule,
MatFormFieldModule,
MatInputModule,
RuleTriggersUiComponent,
RuleCompositeConditionUiComponent,
RuleActionListUiComponent,
RuleOptionsUiComponent
],
selector: 'aca-rule-details',
templateUrl: './rule-details.ui-component.html',
styleUrls: ['./rule-details.ui-component.scss'],

View File

@@ -41,8 +41,7 @@ describe('RuleTriggerUiComponent', () => {
beforeEach(() => {
TestBed.configureTestingModule({
imports: [CoreTestingModule],
declarations: [RuleTriggersUiComponent]
imports: [CoreTestingModule, RuleTriggersUiComponent]
});
fixture = TestBed.createComponent(RuleTriggersUiComponent);

View File

@@ -25,8 +25,13 @@
import { ControlValueAccessor, NG_VALUE_ACCESSOR } from '@angular/forms';
import { Component, forwardRef, ViewEncapsulation } from '@angular/core';
import { RuleTrigger } from '../../model/rule.model';
import { CommonModule } from '@angular/common';
import { TranslateModule } from '@ngx-translate/core';
import { MatCheckboxModule } from '@angular/material/checkbox';
@Component({
standalone: true,
imports: [CommonModule, TranslateModule, MatCheckboxModule],
selector: 'aca-rule-triggers',
templateUrl: './rule-triggers.ui-component.html',
encapsulation: ViewEncapsulation.None,

View File

@@ -37,8 +37,7 @@ describe('RuleListGroupingUiComponent', () => {
beforeEach(() => {
TestBed.configureTestingModule({
imports: [CoreTestingModule, AcaFolderRulesModule],
declarations: [RuleListGroupingUiComponent]
imports: [CoreTestingModule, AcaFolderRulesModule, RuleListGroupingUiComponent]
});
fixture = TestBed.createComponent(RuleListGroupingUiComponent);

View File

@@ -26,8 +26,15 @@ import { Component, EventEmitter, Input, Output, ViewEncapsulation } from '@angu
import { Rule } from '../../model/rule.model';
import { RuleGroupingItem } from '../../model/rule-grouping-item.model';
import { RuleSet } from '../../model/rule-set.model';
import { CommonModule } from '@angular/common';
import { RuleListItemUiComponent } from '../rule-list-item/rule-list-item.ui-component';
import { MatRippleModule } from '@angular/material/core';
import { TranslateModule } from '@ngx-translate/core';
import { MatProgressSpinnerModule } from '@angular/material/progress-spinner';
@Component({
standalone: true,
imports: [CommonModule, TranslateModule, RuleListItemUiComponent, MatRippleModule, MatProgressSpinnerModule],
selector: 'aca-rule-list-grouping',
templateUrl: 'rule-list-grouping.ui-component.html',
styleUrls: ['rule-list-grouping.ui-component.scss'],

View File

@@ -24,8 +24,12 @@
import { Component, EventEmitter, HostBinding, Input, Output, ViewEncapsulation } from '@angular/core';
import { Rule } from '../../model/rule.model';
import { CommonModule } from '@angular/common';
import { MatSlideToggleModule } from '@angular/material/slide-toggle';
@Component({
standalone: true,
imports: [CommonModule, MatSlideToggleModule],
selector: 'aca-rule-list-item',
templateUrl: 'rule-list-item.ui-component.html',
styleUrls: ['rule-list-item.ui-component.scss'],

View File

@@ -25,8 +25,6 @@
import { RuleListUiComponent } from './rule-list.ui-component';
import { ComponentFixture, TestBed } from '@angular/core/testing';
import { CoreTestingModule } from '@alfresco/adf-core';
import { RuleListGroupingUiComponent } from '../rule-list-grouping/rule-list-grouping.ui-component';
import { RuleListItemUiComponent } from '../rule-list-item/rule-list-item.ui-component';
import { ownedRuleSetMock, ruleSetsMock, ruleSetWithLinkMock } from '../../mock/rule-sets.mock';
import { DebugElement } from '@angular/core';
import { By } from '@angular/platform-browser';
@@ -39,8 +37,7 @@ describe('RuleListUiComponent', () => {
beforeEach(() => {
TestBed.configureTestingModule({
imports: [CoreTestingModule],
declarations: [RuleListUiComponent, RuleListGroupingUiComponent, RuleListItemUiComponent]
imports: [CoreTestingModule, RuleListUiComponent]
});
fixture = TestBed.createComponent(RuleListUiComponent);

View File

@@ -27,8 +27,27 @@ import { RuleSet } from '../../model/rule-set.model';
import { Rule } from '../../model/rule.model';
import { RuleGroupingItem } from '../../model/rule-grouping-item.model';
import { FolderRuleSetsService } from '../../services/folder-rule-sets.service';
import { CommonModule } from '@angular/common';
import { TranslateModule } from '@ngx-translate/core';
import { MatRippleModule } from '@angular/material/core';
import { MatIconModule } from '@angular/material/icon';
import { MatTooltipModule } from '@angular/material/tooltip';
import { RuleListGroupingUiComponent } from '../rule-list-grouping/rule-list-grouping.ui-component';
import { RouterModule } from '@angular/router';
import { MatButtonModule } from '@angular/material/button';
@Component({
standalone: true,
imports: [
CommonModule,
TranslateModule,
MatRippleModule,
MatIconModule,
MatTooltipModule,
RuleListGroupingUiComponent,
RouterModule,
MatButtonModule
],
selector: 'aca-rule-list',
templateUrl: './rule-list.ui-component.html',
styleUrls: ['./rule-list.ui-component.scss'],

View File

@@ -53,7 +53,7 @@ describe('RuleSetPickerSmartComponent', () => {
beforeEach(() => {
TestBed.configureTestingModule({
imports: [CoreTestingModule],
imports: [CoreTestingModule, RuleSetPickerSmartComponent],
providers: [
{ provide: MatDialogRef, useValue: dialogRef },
{ provide: MAT_DIALOG_DATA, useValue: dialogOptions },

View File

@@ -23,13 +23,20 @@
*/
import { Component, Inject, OnDestroy, 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 { FolderRuleSetsService } from '../services/folder-rule-sets.service';
import { Node } from '@alfresco/js-api';
import { RuleSet } from '../model/rule-set.model';
import { BehaviorSubject, combineLatest, from, of, Subject } from 'rxjs';
import { finalize, map, switchMap, takeUntil } from 'rxjs/operators';
import { NotificationService } from '@alfresco/adf-core';
import { NotificationService, TemplateModule } from '@alfresco/adf-core';
import { CommonModule } from '@angular/common';
import { TranslateModule } from '@ngx-translate/core';
import { MatButtonModule } from '@angular/material/button';
import { MatIconModule } from '@angular/material/icon';
import { ContentNodeSelectorModule } from '@alfresco/adf-content-services';
import { MatProgressSpinnerModule } from '@angular/material/progress-spinner';
import { RuleListItemUiComponent } from '../rule-list/rule-list-item/rule-list-item.ui-component';
export interface RuleSetPickerOptions {
nodeId: string;
@@ -38,6 +45,18 @@ export interface RuleSetPickerOptions {
}
@Component({
standalone: true,
imports: [
CommonModule,
TranslateModule,
MatDialogModule,
MatButtonModule,
MatIconModule,
ContentNodeSelectorModule,
MatProgressSpinnerModule,
RuleListItemUiComponent,
TemplateModule
],
selector: 'aca-rule-set-picker',
templateUrl: './rule-set-picker.smart-component.html',
styleUrls: ['./rule-set-picker.smart-component.scss'],