mirror of
https://github.com/Alfresco/alfresco-ng2-components.git
synced 2025-07-24 17:32:15 +00:00
Improved ESLint configuration, integrated spellcheck and error fixes (#8931)
* integrate cspell with eslint, improved configuration * core: fix linting errors * core: fix lint warnings * content: lint fixes * process service lint fixes * lint: process services cloud * lint: insights * lint: extensions * [ci:force] lint: cli fixes * [ci:force] comment out dead code * [ci:force] exclude dead code * fix code and tests * rollback some changes * fix testing lib * fix demo shell * minor lint warning fixes * minor lint fixes * fix process services
This commit is contained in:
@@ -129,9 +129,9 @@ describe('AspectListComponent', () => {
|
||||
});
|
||||
|
||||
it('should show the loading spinner when result is loading', () => {
|
||||
const delayReusult = of(null).pipe(delay(0));
|
||||
spyOn(nodeService, 'getNode').and.returnValue(delayReusult);
|
||||
spyOn(aspectListService, 'getAspects').and.returnValue(delayReusult);
|
||||
const delayResult = of(null).pipe(delay(0));
|
||||
spyOn(nodeService, 'getNode').and.returnValue(delayResult);
|
||||
spyOn(aspectListService, 'getAspects').and.returnValue(delayResult);
|
||||
fixture.detectChanges();
|
||||
const spinner = fixture.nativeElement.querySelector('#adf-aspect-spinner');
|
||||
expect(spinner).toBeDefined();
|
||||
|
@@ -140,9 +140,9 @@ describe('CategoriesManagementComponent', () => {
|
||||
});
|
||||
|
||||
it('should unassign/remove specific category after clicking at remove icon and emit categories change', () => {
|
||||
const removeBtns = getRemoveCategoryButtons();
|
||||
const removeButtons = getRemoveCategoryButtons();
|
||||
const categoriesChangeSpy = spyOn(component.categoriesChange, 'emit');
|
||||
removeBtns[0].click();
|
||||
removeButtons[0].click();
|
||||
|
||||
fixture.detectChanges();
|
||||
|
||||
@@ -156,9 +156,9 @@ describe('CategoriesManagementComponent', () => {
|
||||
it('should disable unassigning/removing categories when disableRemoval is set', () => {
|
||||
component.disableRemoval = true;
|
||||
fixture.detectChanges();
|
||||
const removeBtns = getRemoveCategoryButtons();
|
||||
const allBtnsDisabled = removeBtns.every((removeBtn) => removeBtn.disabled);
|
||||
expect(allBtnsDisabled).toBeTrue();
|
||||
const removeButtons = getRemoveCategoryButtons();
|
||||
const allButtonsDisabled = removeButtons.every((removeBtn) => removeBtn.disabled);
|
||||
expect(allButtonsDisabled).toBeTrue();
|
||||
});
|
||||
});
|
||||
|
||||
@@ -269,8 +269,8 @@ describe('CategoriesManagementComponent', () => {
|
||||
});
|
||||
|
||||
it('should have correct remove category title', () => {
|
||||
const removeBtns = getRemoveCategoryButtons();
|
||||
const isTitleCorrect = removeBtns.every((removeBtn) => removeBtn.attributes.getNamedItem('title').textContent === 'CATEGORIES_MANAGEMENT.UNASSIGN_CATEGORY');
|
||||
const removeButtons = getRemoveCategoryButtons();
|
||||
const isTitleCorrect = removeButtons.every((removeBtn) => removeBtn.attributes.getNamedItem('title').textContent === 'CATEGORIES_MANAGEMENT.UNASSIGN_CATEGORY');
|
||||
expect(isTitleCorrect).toBeTrue();
|
||||
});
|
||||
|
||||
@@ -329,8 +329,8 @@ describe('CategoriesManagementComponent', () => {
|
||||
fixture.detectChanges();
|
||||
|
||||
const categoriesChangeSpy = spyOn(component.categoriesChange, 'emit').and.callThrough();
|
||||
const removeCategoryBtns = getRemoveCategoryButtons();
|
||||
removeCategoryBtns[2].click();
|
||||
const removeCategoryButtons = getRemoveCategoryButtons();
|
||||
removeCategoryButtons[2].click();
|
||||
fixture.detectChanges();
|
||||
|
||||
expect(component.categories.length).toBe(2);
|
||||
@@ -345,8 +345,8 @@ describe('CategoriesManagementComponent', () => {
|
||||
typeCategory('test');
|
||||
expect(component.existingCategories.length).toBe(2);
|
||||
const categoriesChangeSpy = spyOn(component.categoriesChange, 'emit').and.callThrough();
|
||||
const removeCategoryBtns = getRemoveCategoryButtons();
|
||||
removeCategoryBtns[0].click();
|
||||
const removeCategoryButtons = getRemoveCategoryButtons();
|
||||
removeCategoryButtons[0].click();
|
||||
fixture.detectChanges();
|
||||
|
||||
expect(component.categories.length).toBe(1);
|
||||
@@ -375,8 +375,8 @@ describe('CategoriesManagementComponent', () => {
|
||||
});
|
||||
|
||||
it('should have correct remove category title', () => {
|
||||
const removeBtns = getRemoveCategoryButtons();
|
||||
const isTitleCorrect = removeBtns.every((removeBtn) => removeBtn.attributes.getNamedItem('title').textContent === 'CATEGORIES_MANAGEMENT.DELETE_CATEGORY');
|
||||
const removeButtons = getRemoveCategoryButtons();
|
||||
const isTitleCorrect = removeButtons.every((removeBtn) => removeBtn.attributes.getNamedItem('title').textContent === 'CATEGORIES_MANAGEMENT.DELETE_CATEGORY');
|
||||
expect(isTitleCorrect).toBeTrue();
|
||||
});
|
||||
|
||||
@@ -434,8 +434,8 @@ describe('CategoriesManagementComponent', () => {
|
||||
createCategory('test');
|
||||
|
||||
const categoriesChangeSpy = spyOn(component.categoriesChange, 'emit');
|
||||
const removeCategoryBtns = getRemoveCategoryButtons();
|
||||
removeCategoryBtns[2].click();
|
||||
const removeCategoryButtons = getRemoveCategoryButtons();
|
||||
removeCategoryButtons[2].click();
|
||||
fixture.detectChanges();
|
||||
|
||||
expect(component.categories.length).toBe(2);
|
||||
|
@@ -64,17 +64,15 @@ export class CategoryTreeDatasourceService extends TreeService<CategoryNode> {
|
||||
.join(pathSeparator);
|
||||
|
||||
return this.categoryService.getCategory(category.entry.id).pipe(
|
||||
map((res) => {
|
||||
return {
|
||||
id: category.entry.id,
|
||||
nodeName: path ? `${path}/${category.entry.name}` : category.entry.name,
|
||||
parentId: category.entry.parentId,
|
||||
level: 0,
|
||||
nodeType: TreeNodeType.RegularNode,
|
||||
hasChildren: res.entry.hasChildren,
|
||||
isLoading: false
|
||||
};
|
||||
})
|
||||
map((res) => ({
|
||||
id: category.entry.id,
|
||||
nodeName: path ? `${path}/${category.entry.name}` : category.entry.name,
|
||||
parentId: category.entry.parentId,
|
||||
level: 0,
|
||||
nodeType: TreeNodeType.RegularNode,
|
||||
hasChildren: res.entry.hasChildren,
|
||||
isLoading: false
|
||||
}))
|
||||
);
|
||||
}),
|
||||
toArray(),
|
||||
|
@@ -610,7 +610,7 @@ describe('ContentMetadataComponent', () => {
|
||||
let classesApi: ClassesApi;
|
||||
let expectedNode: Node;
|
||||
|
||||
const versionableResponse: PropertyGroup = {
|
||||
const verResponse: PropertyGroup = {
|
||||
name: 'cm:versionable',
|
||||
title: 'Versionable',
|
||||
properties: {
|
||||
@@ -705,7 +705,7 @@ describe('ContentMetadataComponent', () => {
|
||||
'cm:versionable': '*'
|
||||
});
|
||||
|
||||
spyOn(classesApi, 'getClass').and.returnValue(Promise.resolve(versionableResponse));
|
||||
spyOn(classesApi, 'getClass').and.returnValue(Promise.resolve(verResponse));
|
||||
|
||||
component.ngOnChanges({ node: new SimpleChange(node, expectedNode, false) });
|
||||
fixture.detectChanges();
|
||||
@@ -713,9 +713,9 @@ describe('ContentMetadataComponent', () => {
|
||||
await component.groupedProperties$.toPromise();
|
||||
fixture.detectChanges();
|
||||
|
||||
const versionableProp = queryDom(fixture, 'Versionable');
|
||||
const verProp = queryDom(fixture, 'Versionable');
|
||||
|
||||
expect(versionableProp).toBeTruthy();
|
||||
expect(verProp).toBeTruthy();
|
||||
expect(classesApi.getClass).toHaveBeenCalledWith('cm_versionable');
|
||||
});
|
||||
|
||||
@@ -725,7 +725,7 @@ describe('ContentMetadataComponent', () => {
|
||||
'cm:versionable': '*'
|
||||
});
|
||||
|
||||
spyOn(classesApi, 'getClass').and.returnValue(Promise.resolve(versionableResponse));
|
||||
spyOn(classesApi, 'getClass').and.returnValue(Promise.resolve(verResponse));
|
||||
|
||||
component.ngOnChanges({ node: new SimpleChange(node, expectedNode, false) });
|
||||
fixture.detectChanges();
|
||||
@@ -733,9 +733,9 @@ describe('ContentMetadataComponent', () => {
|
||||
await component.groupedProperties$.toPromise();
|
||||
fixture.detectChanges();
|
||||
|
||||
const versionableProps = fixture.debugElement.queryAll(By.css('[data-automation-id="adf-metadata-group-Versionable"]'));
|
||||
const verProps = fixture.debugElement.queryAll(By.css('[data-automation-id="adf-metadata-group-Versionable"]'));
|
||||
|
||||
expect(versionableProps.length).toEqual(2);
|
||||
expect(verProps.length).toEqual(2);
|
||||
expect(classesApi.getClass).toHaveBeenCalledWith('cm_versionable');
|
||||
});
|
||||
|
||||
@@ -745,7 +745,7 @@ describe('ContentMetadataComponent', () => {
|
||||
exclude: 'cm:versionable'
|
||||
});
|
||||
|
||||
spyOn(classesApi, 'getClass').and.returnValue(Promise.resolve(versionableResponse));
|
||||
spyOn(classesApi, 'getClass').and.returnValue(Promise.resolve(verResponse));
|
||||
|
||||
component.ngOnChanges({ node: new SimpleChange(node, expectedNode, false) });
|
||||
fixture.detectChanges();
|
||||
@@ -753,9 +753,9 @@ describe('ContentMetadataComponent', () => {
|
||||
await component.groupedProperties$.toPromise();
|
||||
fixture.detectChanges();
|
||||
|
||||
const versionableProp = queryDom(fixture, 'Versionable');
|
||||
const verProp = queryDom(fixture, 'Versionable');
|
||||
|
||||
expect(versionableProp).toBeNull();
|
||||
expect(verProp).toBeNull();
|
||||
expect(classesApi.getClass).toHaveBeenCalledWith('cm_versionable');
|
||||
});
|
||||
|
||||
@@ -766,7 +766,7 @@ describe('ContentMetadataComponent', () => {
|
||||
'cm:versionable': '*'
|
||||
});
|
||||
|
||||
spyOn(classesApi, 'getClass').and.returnValue(Promise.resolve(versionableResponse));
|
||||
spyOn(classesApi, 'getClass').and.returnValue(Promise.resolve(verResponse));
|
||||
|
||||
component.ngOnChanges({ node: new SimpleChange(node, expectedNode, false) });
|
||||
fixture.detectChanges();
|
||||
@@ -774,9 +774,9 @@ describe('ContentMetadataComponent', () => {
|
||||
await component.groupedProperties$.toPromise();
|
||||
fixture.detectChanges();
|
||||
|
||||
const versionableProp = queryDom(fixture, 'Versionable');
|
||||
const verProp = queryDom(fixture, 'Versionable');
|
||||
|
||||
expect(versionableProp).toBeTruthy();
|
||||
expect(verProp).toBeTruthy();
|
||||
expect(classesApi.getClass).toHaveBeenCalledWith('cm_versionable');
|
||||
});
|
||||
|
||||
@@ -786,7 +786,7 @@ describe('ContentMetadataComponent', () => {
|
||||
exclude: ['cm:versionable', 'cm:auditable']
|
||||
});
|
||||
|
||||
spyOn(classesApi, 'getClass').and.returnValue(Promise.resolve(versionableResponse));
|
||||
spyOn(classesApi, 'getClass').and.returnValue(Promise.resolve(verResponse));
|
||||
|
||||
component.ngOnChanges({ node: new SimpleChange(node, expectedNode, false) });
|
||||
fixture.detectChanges();
|
||||
@@ -794,8 +794,8 @@ describe('ContentMetadataComponent', () => {
|
||||
await component.groupedProperties$.toPromise();
|
||||
fixture.detectChanges();
|
||||
|
||||
const versionableProp = queryDom(fixture, 'Versionable');
|
||||
expect(versionableProp).toBeNull();
|
||||
const verProp = queryDom(fixture, 'Versionable');
|
||||
expect(verProp).toBeNull();
|
||||
|
||||
const auditableProp = queryDom(fixture, 'Auditable');
|
||||
expect(auditableProp).toBeNull();
|
||||
@@ -825,17 +825,17 @@ describe('ContentMetadataComponent', () => {
|
||||
|
||||
exifProp.nativeElement.click();
|
||||
|
||||
const pixelXDimentionElement = fixture.debugElement.query(
|
||||
const pixelXDimensionElement = fixture.debugElement.query(
|
||||
By.css('[data-automation-id="card-textitem-label-properties.exif:pixelXDimension"]')
|
||||
);
|
||||
expect(pixelXDimentionElement).toBeTruthy();
|
||||
expect(pixelXDimentionElement.nativeElement.textContent.trim()).toEqual('Image Width');
|
||||
expect(pixelXDimensionElement).toBeTruthy();
|
||||
expect(pixelXDimensionElement.nativeElement.textContent.trim()).toEqual('Image Width');
|
||||
|
||||
const pixelYDimentionElement = fixture.debugElement.query(
|
||||
const pixelYDimensionElement = fixture.debugElement.query(
|
||||
By.css('[data-automation-id="card-textitem-label-properties.exif:pixelYDimension"]')
|
||||
);
|
||||
expect(pixelYDimentionElement).toBeTruthy();
|
||||
expect(pixelYDimentionElement.nativeElement.textContent.trim()).toEqual('Image Height');
|
||||
expect(pixelYDimensionElement).toBeTruthy();
|
||||
expect(pixelYDimensionElement.nativeElement.textContent.trim()).toEqual('Image Height');
|
||||
});
|
||||
|
||||
it('should show Exif twice when includeAll is set to true', async () => {
|
||||
|
@@ -330,7 +330,7 @@ export class ContentMetadataComponent implements OnChanges, OnInit, OnDestroy {
|
||||
this.loadTagsForNode(this.node.id);
|
||||
}
|
||||
if (this.displayCategories && !!result.LinkingCategories) {
|
||||
this.assignedCategories = !!result.LinkingCategories.list ?
|
||||
this.assignedCategories = result.LinkingCategories.list ?
|
||||
result.LinkingCategories.list.entries.map((entry: CategoryEntry) => entry.entry) :
|
||||
[result.LinkingCategories.entry];
|
||||
}
|
||||
|
@@ -110,7 +110,7 @@ describe('ContentMetaDataService', () => {
|
||||
}
|
||||
};
|
||||
|
||||
const versionableResponse: PropertyGroup = {
|
||||
const verResponse: PropertyGroup = {
|
||||
name: 'cm:versionable',
|
||||
title: 'Versionable',
|
||||
properties: {
|
||||
@@ -232,7 +232,7 @@ describe('ContentMetaDataService', () => {
|
||||
'cm:versionable': '*'
|
||||
});
|
||||
|
||||
spyOn(classesApi, 'getClass').and.returnValue(Promise.resolve(versionableResponse));
|
||||
spyOn(classesApi, 'getClass').and.returnValue(Promise.resolve(verResponse));
|
||||
|
||||
const groupedProperties = await service.getGroupedProperties(fakeContentNode).toPromise();
|
||||
|
||||
@@ -249,7 +249,7 @@ describe('ContentMetaDataService', () => {
|
||||
'cm:versionable': '*'
|
||||
});
|
||||
|
||||
spyOn(classesApi, 'getClass').and.returnValue(Promise.resolve(versionableResponse));
|
||||
spyOn(classesApi, 'getClass').and.returnValue(Promise.resolve(verResponse));
|
||||
|
||||
const groupedProperties = await service.getGroupedProperties(fakeContentNode).toPromise();
|
||||
|
||||
@@ -267,7 +267,7 @@ describe('ContentMetaDataService', () => {
|
||||
exclude: 'cm:versionable'
|
||||
});
|
||||
|
||||
spyOn(classesApi, 'getClass').and.returnValue(Promise.resolve(versionableResponse));
|
||||
spyOn(classesApi, 'getClass').and.returnValue(Promise.resolve(verResponse));
|
||||
|
||||
const groupedProperties = await service.getGroupedProperties(fakeContentNode).toPromise();
|
||||
expect(groupedProperties.length).toEqual(0);
|
||||
@@ -283,7 +283,7 @@ describe('ContentMetaDataService', () => {
|
||||
'cm:versionable': '*'
|
||||
});
|
||||
|
||||
spyOn(classesApi, 'getClass').and.returnValue(Promise.resolve(versionableResponse));
|
||||
spyOn(classesApi, 'getClass').and.returnValue(Promise.resolve(verResponse));
|
||||
|
||||
const groupedProperties = await service.getGroupedProperties(fakeContentNode).toPromise();
|
||||
expect(groupedProperties.length).toEqual(1);
|
||||
@@ -299,7 +299,7 @@ describe('ContentMetaDataService', () => {
|
||||
exclude: ['cm:versionable', 'cm:auditable']
|
||||
});
|
||||
|
||||
spyOn(classesApi, 'getClass').and.returnValue(Promise.resolve(versionableResponse));
|
||||
spyOn(classesApi, 'getClass').and.returnValue(Promise.resolve(verResponse));
|
||||
|
||||
const groupedProperties = await service.getGroupedProperties(fakeContentNode).toPromise();
|
||||
expect(groupedProperties.length).toEqual(0);
|
||||
|
@@ -147,9 +147,9 @@ describe('Content Type Dialog Component', () => {
|
||||
});
|
||||
|
||||
it('should show the property with the aspect prefix not the inherited ones', async () => {
|
||||
const showPropertyAccordon: HTMLButtonElement = fixture.nativeElement.querySelector('.adf-content-type-accordion .mat-expansion-panel-header');
|
||||
expect(showPropertyAccordon).toBeDefined();
|
||||
showPropertyAccordon.click();
|
||||
const showPropertyAccordion: HTMLButtonElement = fixture.nativeElement.querySelector('.adf-content-type-accordion .mat-expansion-panel-header');
|
||||
expect(showPropertyAccordion).toBeDefined();
|
||||
showPropertyAccordion.click();
|
||||
fixture.detectChanges();
|
||||
await fixture.whenStable();
|
||||
const propertyShowed: NodeList = fixture.nativeElement.querySelectorAll('.adf-content-type-table .mat-row');
|
||||
|
@@ -20,6 +20,7 @@ import { UntypedFormControl } from '@angular/forms';
|
||||
const I18N_ERRORS_PATH = 'CORE.FOLDER_DIALOG.FOLDER_NAME.ERRORS';
|
||||
|
||||
export const forbidSpecialCharacters = ({ value }: UntypedFormControl) => {
|
||||
// eslint-disable-next-line no-useless-escape
|
||||
const specialCharacters: RegExp = /([\*\"\<\>\\\/\?\:\|])/;
|
||||
const isValid: boolean = !specialCharacters.test(value);
|
||||
|
||||
|
@@ -59,7 +59,7 @@ export class NodeLockDialogComponent implements OnInit {
|
||||
isLocked: node.isLocked || false,
|
||||
allowOwner: node.properties['cm:lockType'] === 'WRITE_LOCK',
|
||||
isTimeLock: !!node.properties['cm:expiryDate'],
|
||||
time: !!node.properties['cm:expiryDate'] ? moment(node.properties['cm:expiryDate']) : moment()
|
||||
time: node.properties['cm:expiryDate'] ? moment(node.properties['cm:expiryDate']) : moment()
|
||||
});
|
||||
}
|
||||
|
||||
|
@@ -24,10 +24,10 @@ import { TranslateModule } from '@ngx-translate/core';
|
||||
@Component({
|
||||
template: `<div tabindex="0" adf-auto-focus> Test</div>`
|
||||
})
|
||||
class AutoFoucsTestComponent {}
|
||||
class AutoFocusTestComponent {}
|
||||
|
||||
describe('AutoFocusDirective', () => {
|
||||
let fixture: ComponentFixture<AutoFoucsTestComponent>;
|
||||
let fixture: ComponentFixture<AutoFocusTestComponent>;
|
||||
|
||||
beforeEach(() => {
|
||||
TestBed.configureTestingModule({
|
||||
@@ -36,10 +36,10 @@ describe('AutoFocusDirective', () => {
|
||||
],
|
||||
declarations: [
|
||||
AutoFocusDirective,
|
||||
AutoFoucsTestComponent
|
||||
AutoFocusTestComponent
|
||||
]
|
||||
});
|
||||
fixture = TestBed.createComponent(AutoFoucsTestComponent);
|
||||
fixture = TestBed.createComponent(AutoFocusTestComponent);
|
||||
});
|
||||
|
||||
it('should focus the element after content is initialized', fakeAsync(() => {
|
||||
|
@@ -118,7 +118,7 @@ export class NodeDeleteDirective implements OnChanges {
|
||||
|
||||
let promise: Promise<any>;
|
||||
|
||||
if (node.entry.hasOwnProperty('archivedAt') && node.entry['archivedAt']) {
|
||||
if (Object.prototype.hasOwnProperty.call(node.entry, 'archivedAt') && node.entry['archivedAt']) {
|
||||
promise = this.trashcanApi.deleteDeletedNode(id);
|
||||
} else {
|
||||
promise = this.nodesApi.deleteNode(id, { permanent: this.permanent });
|
||||
|
@@ -130,7 +130,7 @@ export class NodeFavoriteDirective implements OnChanges {
|
||||
const node: Node | SharedLink = selected.entry;
|
||||
|
||||
// ACS 6.x with 'isFavorite' include
|
||||
if (node?.hasOwnProperty('isFavorite')) {
|
||||
if (node && Object.prototype.hasOwnProperty.call(node, 'isFavorite')) {
|
||||
return of(selected);
|
||||
}
|
||||
|
||||
|
@@ -39,11 +39,11 @@ export class ContentActionModel {
|
||||
this.permission = obj.permission;
|
||||
this.disableWithNoPermission = obj.disableWithNoPermission;
|
||||
|
||||
if (obj.hasOwnProperty('disabled')) {
|
||||
if (Object.prototype.hasOwnProperty.call(obj, 'disabled')) {
|
||||
this.disabled = obj.disabled;
|
||||
}
|
||||
|
||||
if (obj.hasOwnProperty('visible')) {
|
||||
if (Object.prototype.hasOwnProperty.call(obj, 'visible')) {
|
||||
this.visible = obj.visible;
|
||||
}
|
||||
}
|
||||
|
@@ -56,7 +56,7 @@ export class AddPermissionDialogComponent {
|
||||
|
||||
this.selectedMembers.forEach((member) => {
|
||||
const existingMember = this.existingMembers.find(({authorityId}) => authorityId === member.id);
|
||||
if (!!existingMember) {
|
||||
if (existingMember) {
|
||||
member.role = existingMember.name;
|
||||
member.accessStatus = existingMember.accessStatus;
|
||||
member.readonly = true; // make role non editable
|
||||
@@ -66,7 +66,7 @@ export class AddPermissionDialogComponent {
|
||||
}
|
||||
|
||||
canCloseDialog() {
|
||||
if (!!this.selectedMembers.length) {
|
||||
if (this.selectedMembers.length) {
|
||||
this.disableSearch();
|
||||
} else {
|
||||
this.dialogRef.close();
|
||||
|
@@ -54,7 +54,7 @@ export class SearchPermissionConfigurationService implements SearchConfiguration
|
||||
if (this.queryProvider?.query) {
|
||||
query = this.queryProvider.query.replace(new RegExp(/\${([^}]+)}/g), searchTerm);
|
||||
} else {
|
||||
query = `(email:*${searchTerm}* OR firstName:*${searchTerm}* OR lastName:*${searchTerm}* OR displayName:*${searchTerm}* OR authorityName:*${searchTerm}* OR authorityDisplayName:*${searchTerm}*) AND ANAME:(\"0/APP.DEFAULT\")`;
|
||||
query = `(email:*${searchTerm}* OR firstName:*${searchTerm}* OR lastName:*${searchTerm}* OR displayName:*${searchTerm}* OR authorityName:*${searchTerm}* OR authorityDisplayName:*${searchTerm}*) AND ANAME:("0/APP.DEFAULT")`;
|
||||
}
|
||||
return query;
|
||||
}
|
||||
|
@@ -65,6 +65,7 @@ export class NodePermissionService {
|
||||
|
||||
/**
|
||||
* Get permissions for a given node
|
||||
*
|
||||
* @param node Node to check permissions for
|
||||
*/
|
||||
getNodePermissions(node: Node): PermissionDisplayModel[] {
|
||||
|
@@ -89,7 +89,7 @@ export class SearchLogicalFilterComponent implements SearchWidget, OnInit {
|
||||
fieldQuery += field + '"' + this.searchCondition[key].trim() + '"';
|
||||
} else {
|
||||
this.searchCondition[key].split(' ').filter((condition: string) => condition !== '').forEach((phrase: string) => {
|
||||
const refinedPhrase = '\"' + phrase + '\"';
|
||||
const refinedPhrase = '"' + phrase + '"';
|
||||
fieldQuery += fieldQuery === '(' ?
|
||||
`${key === LogicalSearchFields.EXCLUDE ? 'NOT ' : ''}${field}${refinedPhrase}` :
|
||||
` ${connector} ${field}${refinedPhrase}`;
|
||||
|
@@ -49,15 +49,15 @@ export class SearchSliderComponent implements SearchWidget, OnInit {
|
||||
|
||||
ngOnInit() {
|
||||
if (this.settings) {
|
||||
if (this.settings.hasOwnProperty('min')) {
|
||||
if (Object.prototype.hasOwnProperty.call(this.settings, 'min')) {
|
||||
this.min = this.settings['min'];
|
||||
}
|
||||
|
||||
if (this.settings.hasOwnProperty('max')) {
|
||||
if (Object.prototype.hasOwnProperty.call(this.settings, 'max')) {
|
||||
this.max = this.settings['max'];
|
||||
}
|
||||
|
||||
if (this.settings.hasOwnProperty('step')) {
|
||||
if (Object.prototype.hasOwnProperty.call(this.settings, 'step')) {
|
||||
this.step = this.settings['step'];
|
||||
}
|
||||
|
||||
|
@@ -150,7 +150,7 @@ export abstract class BaseQueryBuilderService {
|
||||
default: configuration.default || false,
|
||||
selected: this.selectedConfiguration !== undefined ? index === this.selectedConfiguration : configuration.default
|
||||
}));
|
||||
} else if (!!configurations) {
|
||||
} else if (configurations) {
|
||||
return [
|
||||
{
|
||||
index: 0,
|
||||
|
@@ -103,7 +103,7 @@ export abstract class UploadBase implements OnInit, OnDestroy {
|
||||
*/
|
||||
uploadFiles(files: File[]): void {
|
||||
const filteredFiles: FileModel[] = files
|
||||
.map<FileModel>((file: File) => this.createFileModel(file, this.rootFolderId, ((file as any).webkitRelativePath || '').replace(/\/[^\/]*$/, '')));
|
||||
.map<FileModel>((file: File) => this.createFileModel(file, this.rootFolderId, ((file as any).webkitRelativePath || '').replace(/\/[^/]*$/, '')));
|
||||
|
||||
this.uploadQueue(filteredFiles);
|
||||
}
|
||||
|
@@ -306,7 +306,7 @@ describe('UploadDragAreaComponent', () => {
|
||||
});
|
||||
|
||||
it('should upload a file to a specific target folder when dropped onto one', () => {
|
||||
const fakePippoItem = {
|
||||
const fakePngItem = {
|
||||
fullPath: '/folder-fake/file-fake.png',
|
||||
isDirectory: false,
|
||||
isFile: true,
|
||||
@@ -321,7 +321,7 @@ describe('UploadDragAreaComponent', () => {
|
||||
const fakeCustomEvent: CustomEvent = new CustomEvent('CustomEvent', {
|
||||
detail: {
|
||||
data: getFakeShareDataRow(),
|
||||
files: [fakePippoItem]
|
||||
files: [fakePngItem]
|
||||
}
|
||||
});
|
||||
|
||||
|
@@ -39,7 +39,7 @@ export class UploadVersionButtonComponent extends UploadButtonComponent implemen
|
||||
node: Node;
|
||||
|
||||
protected createFileModel(file: File): FileModel {
|
||||
const fileModel = super.createFileModel(file, this.rootFolderId, ((file as any).webkitRelativePath || '').replace(/\/[^\/]*$/, ''), this.node.id);
|
||||
const fileModel = super.createFileModel(file, this.rootFolderId, ((file as any).webkitRelativePath || '').replace(/\/[^/]*$/, ''), this.node.id);
|
||||
|
||||
if (!this.isFileAcceptable(fileModel)) {
|
||||
const message = this.translationService.instant('FILE_UPLOAD.VERSION.MESSAGES.INCOMPATIBLE_VERSION');
|
||||
|
@@ -52,7 +52,7 @@ describe('VersionCompatibilityDirective', () => {
|
||||
let fixture: ComponentFixture<TestComponent>;
|
||||
let versionCompatibilityService: VersionCompatibilityService;
|
||||
|
||||
const acsResponceMock = new VersionInfo({
|
||||
const acsResponseMock = new VersionInfo({
|
||||
display: '7.0.1',
|
||||
major: '7',
|
||||
minor: '0',
|
||||
@@ -70,7 +70,7 @@ describe('VersionCompatibilityDirective', () => {
|
||||
});
|
||||
fixture = TestBed.createComponent(TestComponent);
|
||||
versionCompatibilityService = TestBed.inject(VersionCompatibilityService);
|
||||
spyOn(versionCompatibilityService, 'getAcsVersion').and.returnValue(acsResponceMock);
|
||||
spyOn(versionCompatibilityService, 'getAcsVersion').and.returnValue(acsResponseMock);
|
||||
});
|
||||
|
||||
it('should display component when the version is supported', () => {
|
||||
|
@@ -28,7 +28,7 @@ describe('VersionCompatibilityService', () => {
|
||||
let discoveryApiService: DiscoveryApiService;
|
||||
const mockProductInfo = new BehaviorSubject<RepositoryInfo>(null);
|
||||
|
||||
const acsResponceMock = {
|
||||
const acsResponseMock = {
|
||||
version: {
|
||||
display: '7.0.1',
|
||||
major: '7',
|
||||
@@ -54,7 +54,7 @@ describe('VersionCompatibilityService', () => {
|
||||
});
|
||||
discoveryApiService = TestBed.inject(DiscoveryApiService);
|
||||
versionCompatibilityService = TestBed.inject(VersionCompatibilityService);
|
||||
mockProductInfo.next(acsResponceMock as RepositoryInfo);
|
||||
mockProductInfo.next(acsResponseMock as RepositoryInfo);
|
||||
versionCompatibilityService = new VersionCompatibilityService(discoveryApiService);
|
||||
});
|
||||
|
||||
|
Reference in New Issue
Block a user