mirror of
https://github.com/Alfresco/alfresco-ng2-components.git
synced 2025-05-26 17:24:56 +00:00
Merge branch 'development' into dev-denys-70
This commit is contained in:
commit
00c28ecd52
@ -47,7 +47,7 @@
|
|||||||
[context-menu]="getContextMenuActions(row, col)">
|
[context-menu]="getContextMenuActions(row, col)">
|
||||||
<div *ngSwitchCase="'image'" class="cell-value">
|
<div *ngSwitchCase="'image'" class="cell-value">
|
||||||
<i *ngIf="isIconValue(row, col)" class="material-icons icon-cell">{{asIconValue(row, col)}}</i>
|
<i *ngIf="isIconValue(row, col)" class="material-icons icon-cell">{{asIconValue(row, col)}}</i>
|
||||||
<img *ngIf="!isIconValue(row, col)" class="image-cell" alt="" src="{{data.getValue(row, col)}}">
|
<img *ngIf="!isIconValue(row, col)" class="image-cell" alt="{{iconAltTextKey(data.getValue(row, col))|translate}}" src="{{data.getValue(row, col)}}">
|
||||||
</div>
|
</div>
|
||||||
<div *ngSwitchCase="'date'" class="cell-value">
|
<div *ngSwitchCase="'date'" class="cell-value">
|
||||||
{{data.getValue(row, col)}}
|
{{data.getValue(row, col)}}
|
||||||
|
@ -298,6 +298,12 @@ describe('DataTable', () => {
|
|||||||
expect(dataTable.asIconValue(<DataRow> row, column)).toBe(null);
|
expect(dataTable.asIconValue(<DataRow> row, column)).toBe(null);
|
||||||
});
|
});
|
||||||
|
|
||||||
|
it('should parse icon values to a valid i18n key', () => {
|
||||||
|
expect(dataTable.iconAltTextKey('custom')).toBe('ICONS.custom');
|
||||||
|
expect(dataTable.iconAltTextKey('/path/to/custom')).toBe('ICONS.custom');
|
||||||
|
expect(dataTable.iconAltTextKey('/path/to/custom.svg')).toBe('ICONS.custom');
|
||||||
|
});
|
||||||
|
|
||||||
it('should require column and direction to evaluate sorting state', () => {
|
it('should require column and direction to evaluate sorting state', () => {
|
||||||
expect(dataTable.isColumnSorted(null, null)).toBeFalsy();
|
expect(dataTable.isColumnSorted(null, null)).toBeFalsy();
|
||||||
expect(dataTable.isColumnSorted(<DataColumn> {}, null)).toBeFalsy();
|
expect(dataTable.isColumnSorted(<DataColumn> {}, null)).toBeFalsy();
|
||||||
|
@ -26,7 +26,10 @@ import {
|
|||||||
TemplateRef
|
TemplateRef
|
||||||
} from '@angular/core';
|
} from '@angular/core';
|
||||||
|
|
||||||
import { CONTEXT_MENU_DIRECTIVES } from 'ng2-alfresco-core';
|
import {
|
||||||
|
CONTEXT_MENU_DIRECTIVES,
|
||||||
|
AlfrescoPipeTranslate
|
||||||
|
} from 'ng2-alfresco-core';
|
||||||
|
|
||||||
import {
|
import {
|
||||||
DataTableAdapter,
|
DataTableAdapter,
|
||||||
@ -45,7 +48,8 @@ declare let __moduleName: string;
|
|||||||
selector: 'alfresco-datatable',
|
selector: 'alfresco-datatable',
|
||||||
styleUrls: ['./datatable.component.css'],
|
styleUrls: ['./datatable.component.css'],
|
||||||
templateUrl: './datatable.component.html',
|
templateUrl: './datatable.component.html',
|
||||||
directives: [CONTEXT_MENU_DIRECTIVES]
|
directives: [CONTEXT_MENU_DIRECTIVES],
|
||||||
|
pipes: [AlfrescoPipeTranslate]
|
||||||
})
|
})
|
||||||
export class DataTableComponent implements OnInit, AfterViewChecked {
|
export class DataTableComponent implements OnInit, AfterViewChecked {
|
||||||
|
|
||||||
@ -166,6 +170,10 @@ export class DataTableComponent implements OnInit, AfterViewChecked {
|
|||||||
return null;
|
return null;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
iconAltTextKey(value: string) {
|
||||||
|
return 'ICONS.' + value.substring(value.lastIndexOf('/') + 1).replace(/\.[a-z]+/, '');
|
||||||
|
}
|
||||||
|
|
||||||
isColumnSorted(col: DataColumn, direction: string) {
|
isColumnSorted(col: DataColumn, direction: string) {
|
||||||
if (col && direction) {
|
if (col && direction) {
|
||||||
let sorting = this.data.getSorting();
|
let sorting = this.data.getSorting();
|
||||||
|
16
ng2-components/ng2-alfresco-documentlist/i18n/en.json
Normal file
16
ng2-components/ng2-alfresco-documentlist/i18n/en.json
Normal file
@ -0,0 +1,16 @@
|
|||||||
|
{
|
||||||
|
"ICONS": {
|
||||||
|
"ft_ic_folder": "Folder",
|
||||||
|
"ft_ic_raster_image": "Image file",
|
||||||
|
"ft_ic_pdf": "PDF document",
|
||||||
|
"ft_ic_ms_excel": "Microsoft Excel file",
|
||||||
|
"ft_ic_ms_word": "Microsoft Word document",
|
||||||
|
"ft_ic_ms_powerpoint": "Microsoft PowerPoint file",
|
||||||
|
"ft_ic_video": "Video file",
|
||||||
|
"ft_ic_document": "Document file",
|
||||||
|
"ft_ic_website": "Web resource",
|
||||||
|
"ft_ic_archive": "Archive file",
|
||||||
|
"ft_ic_presentation": "Presentation file",
|
||||||
|
"ft_ic_spreadsheet": "Spreadsheet file"
|
||||||
|
}
|
||||||
|
}
|
@ -96,7 +96,7 @@ describe('DocumentListBreadcrumb', () => {
|
|||||||
});
|
});
|
||||||
|
|
||||||
it('should update document list on click', () => {
|
it('should update document list on click', () => {
|
||||||
let documentList = new DocumentList(null, null);
|
let documentList = new DocumentList(null, null, null);
|
||||||
spyOn(documentList, 'displayFolderContent').and.stub();
|
spyOn(documentList, 'displayFolderContent').and.stub();
|
||||||
|
|
||||||
let node = <PathNode> { name: 'name', path: '/path' };
|
let node = <PathNode> { name: 'name', path: '/path' };
|
||||||
|
@ -34,7 +34,7 @@ describe('ContentColumnList', () => {
|
|||||||
|
|
||||||
beforeEach(() => {
|
beforeEach(() => {
|
||||||
let documentListService = new DocumentListServiceMock();
|
let documentListService = new DocumentListServiceMock();
|
||||||
documentList = new DocumentList(documentListService, null);
|
documentList = new DocumentList(documentListService, null, null);
|
||||||
actionList = new ContentActionList(documentList);
|
actionList = new ContentActionList(documentList);
|
||||||
});
|
});
|
||||||
|
|
||||||
|
@ -44,7 +44,7 @@ describe('ContentAction', () => {
|
|||||||
documentActions = new DocumentActionsService(null, null);
|
documentActions = new DocumentActionsService(null, null);
|
||||||
folderActions = new FolderActionsService(null);
|
folderActions = new FolderActionsService(null);
|
||||||
|
|
||||||
documentList = new DocumentList(documentServiceMock, null);
|
documentList = new DocumentList(documentServiceMock, null, null);
|
||||||
actionList = new ContentActionList(documentList);
|
actionList = new ContentActionList(documentList);
|
||||||
});
|
});
|
||||||
|
|
||||||
|
@ -35,7 +35,7 @@ describe('ContentColumnList', () => {
|
|||||||
|
|
||||||
beforeEach(() => {
|
beforeEach(() => {
|
||||||
let service = new DocumentListServiceMock();
|
let service = new DocumentListServiceMock();
|
||||||
documentList = new DocumentList(service, null);
|
documentList = new DocumentList(service, null, null);
|
||||||
columnList = new ContentColumnList(documentList);
|
columnList = new ContentColumnList(documentList);
|
||||||
});
|
});
|
||||||
|
|
||||||
|
@ -34,7 +34,7 @@ describe('ContentColumn', () => {
|
|||||||
|
|
||||||
beforeEach(() => {
|
beforeEach(() => {
|
||||||
let service = new DocumentListServiceMock();
|
let service = new DocumentListServiceMock();
|
||||||
documentList = new DocumentList(service, null);
|
documentList = new DocumentList(service, null, null);
|
||||||
columnList = new ContentColumnList(documentList);
|
columnList = new ContentColumnList(documentList);
|
||||||
});
|
});
|
||||||
|
|
||||||
|
@ -34,7 +34,7 @@ describe('DocumentList', () => {
|
|||||||
beforeEach(() => {
|
beforeEach(() => {
|
||||||
documentListService = new DocumentListServiceMock();
|
documentListService = new DocumentListServiceMock();
|
||||||
let zone = new NgZone(false);
|
let zone = new NgZone(false);
|
||||||
documentList = new DocumentList(documentListService, zone);
|
documentList = new DocumentList(documentListService, zone, null);
|
||||||
|
|
||||||
eventMock = {
|
eventMock = {
|
||||||
preventDefault: function () {
|
preventDefault: function () {
|
||||||
|
@ -31,7 +31,10 @@ import {
|
|||||||
HostListener
|
HostListener
|
||||||
} from '@angular/core';
|
} from '@angular/core';
|
||||||
import { Subject } from 'rxjs/Rx';
|
import { Subject } from 'rxjs/Rx';
|
||||||
import { CONTEXT_MENU_DIRECTIVES } from 'ng2-alfresco-core';
|
import {
|
||||||
|
CONTEXT_MENU_DIRECTIVES,
|
||||||
|
AlfrescoTranslationService
|
||||||
|
} from 'ng2-alfresco-core';
|
||||||
|
|
||||||
import {
|
import {
|
||||||
ALFRESCO_DATATABLE_DIRECTIVES,
|
ALFRESCO_DATATABLE_DIRECTIVES,
|
||||||
@ -127,9 +130,14 @@ export class DocumentList implements OnInit, AfterViewInit, AfterViewChecked, Af
|
|||||||
|
|
||||||
constructor(
|
constructor(
|
||||||
private documentListService: DocumentListService,
|
private documentListService: DocumentListService,
|
||||||
private ngZone: NgZone) {
|
private ngZone: NgZone,
|
||||||
|
private translate: AlfrescoTranslationService) {
|
||||||
|
|
||||||
this.data = new ShareDataTableAdapter(this.documentListService, this.baseComponentPath, []);
|
this.data = new ShareDataTableAdapter(this.documentListService, this.baseComponentPath, []);
|
||||||
|
|
||||||
|
if (translate) {
|
||||||
|
translate.addTranslationFolder('node_modules/ng2-alfresco-documentlist');
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
getContextActions(node: MinimalNodeEntity) {
|
getContextActions(node: MinimalNodeEntity) {
|
||||||
|
Loading…
x
Reference in New Issue
Block a user