@cause-911/devextreme
Version:
Run `npm install @cause-911/devextreme --save` to add this library to your project
192 lines • 14.2 kB
JavaScript
/**
* @fileoverview added by tsickle
* @suppress {checkTypes,constantProperty,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
*/
import { Component, ElementRef, Input, NgZone, PlatformRef } from '@angular/core';
import { DxDataGridComponent, DxTemplateHost, IterableDifferHelper, NestedOptionHost, WatcherHelper } from 'devextreme-angular';
import { TransferState } from '@angular/platform-browser';
import { Location, LocationStrategy, PathLocationStrategy } from '@angular/common';
export class CauseDataGridComponent extends DxDataGridComponent {
/**
* @param {?} element
* @param {?} ngZone
* @param {?} templateHost
* @param {?} watcherHelper
* @param {?} idh
* @param {?} optionHost
* @param {?} transferState
* @param {?} platform
* @param {?} location
* @param {?} locationStrategy
*/
constructor(element, ngZone, templateHost, watcherHelper, idh, optionHost, transferState, platform, location, locationStrategy) {
super(element, ngZone, templateHost, watcherHelper, idh, optionHost, transferState, platform);
this.location = location;
this.locationStrategy = locationStrategy;
this.allowPrint = true;
this.hoverStateEnabled = true;
this.rowAlternationEnabled = true;
this.showBorders = true;
this.export = {
allowExportSelectedData: false,
enabled: true,
fileName: 'export',
};
this.filterRow = {
visible: true,
};
this.pager = {
showPageSizeSelector: true,
showNavigationButtons: true,
showInfo: true,
visible: true,
};
this.isEditing = false;
optionHost.setHost(this);
locationStrategy.onPopState((/**
* @return {?}
*/
() => {
if (this.isEditing) {
this.isEditing = false;
this.instance.cancelEditData();
}
}));
}
/**
* @return {?}
*/
ngOnInit() {
super.ngOnInit();
this.onToolbarPreparing.subscribe((/**
* @param {?} e
* @return {?}
*/
e => this.toolbarPreparing(e)));
this.onInitialized.subscribe((/**
* @param {?} e
* @return {?}
*/
e => this.initialized(e)));
}
/**
* @private
* @param {?} e
* @return {?}
*/
toolbarPreparing(e) {
/** @type {?} */
const toolbarItems = e.toolbarOptions.items;
if (this.allowPrint) {
toolbarItems.push({
widget: 'dxButton',
location: 'after',
options: {
icon: 'print',
onClick: (/**
* @param {?} ev
* @return {?}
*/
(ev) => {
this.print(e.element);
}),
}
});
}
}
/**
* @private
* @param {?} e
* @return {?}
*/
initialized(e) {
/** @type {?} */
const options = e.component.option('editing');
options.popup.onShowing = (/**
* @param {?} ev
* @return {?}
*/
(ev) => {
this.location.go(this.location.path() + '#editing');
this.isEditing = true;
});
options.popup.onHiding = (/**
* @param {?} ev
* @return {?}
*/
(ev) => {
if (this.isEditing) {
this.location.back();
}
this.isEditing = false;
});
}
/**
* @private
* @param {?} element
* @return {?}
*/
print(element) {
element.classList.add('only-div-to-print');
window.print();
setTimeout((/**
* @return {?}
*/
function () {
element.classList.remove('only-div-to-print');
}), 1000);
}
}
CauseDataGridComponent.decorators = [
{ type: Component, args: [{
selector: 'cause-dx-data-grid',
template: "<ng-content></ng-content>",
providers: [NestedOptionHost, Location, { provide: LocationStrategy, useClass: PathLocationStrategy }],
styles: [""]
}] }
];
/** @nocollapse */
CauseDataGridComponent.ctorParameters = () => [
{ type: ElementRef },
{ type: NgZone },
{ type: DxTemplateHost },
{ type: WatcherHelper },
{ type: IterableDifferHelper },
{ type: NestedOptionHost },
{ type: TransferState },
{ type: PlatformRef },
{ type: Location },
{ type: LocationStrategy }
];
CauseDataGridComponent.propDecorators = {
allowPrint: [{ type: Input }]
};
if (false) {
/** @type {?} */
CauseDataGridComponent.prototype.allowPrint;
/** @type {?} */
CauseDataGridComponent.prototype.hoverStateEnabled;
/** @type {?} */
CauseDataGridComponent.prototype.rowAlternationEnabled;
/** @type {?} */
CauseDataGridComponent.prototype.showBorders;
/** @type {?} */
CauseDataGridComponent.prototype.export;
/** @type {?} */
CauseDataGridComponent.prototype.filterRow;
/** @type {?} */
CauseDataGridComponent.prototype.pager;
/** @type {?} */
CauseDataGridComponent.prototype.isEditing;
/**
* @type {?}
* @private
*/
CauseDataGridComponent.prototype.location;
/**
* @type {?}
* @private
*/
CauseDataGridComponent.prototype.locationStrategy;
}
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2F1c2UtZGF0YS1ncmlkLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiJuZzovL0BjYXVzZS05MTEvZGV2ZXh0cmVtZS8iLCJzb3VyY2VzIjpbImxpYi9jYXVzZS1kYXRhLWdyaWQvY2F1c2UtZGF0YS1ncmlkLmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7O0FBQUEsT0FBTyxFQUFDLFNBQVMsRUFBRSxVQUFVLEVBQUUsS0FBSyxFQUFFLE1BQU0sRUFBVSxXQUFXLEVBQUMsTUFBTSxlQUFlLENBQUM7QUFDeEYsT0FBTyxFQUNILG1CQUFtQixFQUNuQixjQUFjLEVBQ2Qsb0JBQW9CLEVBQUUsZ0JBQWdCLEVBQ3RDLGFBQWEsRUFDaEIsTUFBTSxvQkFBb0IsQ0FBQztBQUM1QixPQUFPLEVBQUMsYUFBYSxFQUFDLE1BQU0sMkJBQTJCLENBQUM7QUFDeEQsT0FBTyxFQUFDLFFBQVEsRUFBRSxnQkFBZ0IsRUFBRSxvQkFBb0IsRUFBQyxNQUFNLGlCQUFpQixDQUFDO0FBUWpGLE1BQU0sT0FBTyxzQkFBdUIsU0FBUSxtQkFBbUI7Ozs7Ozs7Ozs7Ozs7SUFzQjNELFlBQ0ksT0FBbUIsRUFDbkIsTUFBYyxFQUNkLFlBQTRCLEVBQzVCLGFBQTRCLEVBQzVCLEdBQXlCLEVBQ3pCLFVBQTRCLEVBQzVCLGFBQTRCLEVBQzVCLFFBQXFCLEVBQ2IsUUFBa0IsRUFDbEIsZ0JBQWtDO1FBRTFDLEtBQUssQ0FBQyxPQUFPLEVBQUUsTUFBTSxFQUFFLFlBQVksRUFBRSxhQUFhLEVBQUUsR0FBRyxFQUFFLFVBQVUsRUFBRSxhQUFhLEVBQUUsUUFBUSxDQUFDLENBQUM7UUFIdEYsYUFBUSxHQUFSLFFBQVEsQ0FBVTtRQUNsQixxQkFBZ0IsR0FBaEIsZ0JBQWdCLENBQWtCO1FBL0J2QyxlQUFVLEdBQUcsSUFBSSxDQUFDO1FBRTNCLHNCQUFpQixHQUFHLElBQUksQ0FBQztRQUN2QiwwQkFBcUIsR0FBRyxJQUFJLENBQUM7UUFDN0IsZ0JBQVcsR0FBRyxJQUFJLENBQUM7UUFDbkIsV0FBTSxHQUFHO1lBQ0wsdUJBQXVCLEVBQUUsS0FBSztZQUM5QixPQUFPLEVBQUUsSUFBSTtZQUNiLFFBQVEsRUFBRSxRQUFRO1NBQ3JCLENBQUM7UUFDRixjQUFTLEdBQUc7WUFDUixPQUFPLEVBQUUsSUFBSTtTQUNoQixDQUFDO1FBQ0YsVUFBSyxHQUFHO1lBQ0osb0JBQW9CLEVBQUUsSUFBSTtZQUMxQixxQkFBcUIsRUFBRSxJQUFJO1lBQzNCLFFBQVEsRUFBRSxJQUFJO1lBQ2QsT0FBTyxFQUFFLElBQUk7U0FDaEIsQ0FBQztRQUNGLGNBQVMsR0FBRyxLQUFLLENBQUM7UUFlZCxVQUFVLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxDQUFDO1FBRXpCLGdCQUFnQixDQUFDLFVBQVU7OztRQUFDLEdBQUcsRUFBRTtZQUMvQixJQUFJLElBQUksQ0FBQyxTQUFTLEVBQUU7Z0JBQ2xCLElBQUksQ0FBQyxTQUFTLEdBQUcsS0FBSyxDQUFDO2dCQUN2QixJQUFJLENBQUMsUUFBUSxDQUFDLGNBQWMsRUFBRSxDQUFDO2FBQ2hDO1FBQ0gsQ0FBQyxFQUFDLENBQUM7SUFDUCxDQUFDOzs7O0lBRUQsUUFBUTtRQUNKLEtBQUssQ0FBQyxRQUFRLEVBQUUsQ0FBQztRQUVqQixJQUFJLENBQUMsa0JBQWtCLENBQUMsU0FBUzs7OztRQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsSUFBSSxDQUFDLGdCQUFnQixDQUFDLENBQUMsQ0FBQyxFQUFDLENBQUM7UUFDakUsSUFBSSxDQUFDLGFBQWEsQ0FBQyxTQUFTOzs7O1FBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxJQUFJLENBQUMsV0FBVyxDQUFDLENBQUMsQ0FBQyxFQUFDLENBQUM7SUFDM0QsQ0FBQzs7Ozs7O0lBRU8sZ0JBQWdCLENBQUMsQ0FBQzs7Y0FDbEIsWUFBWSxHQUFHLENBQUMsQ0FBQyxjQUFjLENBQUMsS0FBSztRQUMzQyxJQUFJLElBQUksQ0FBQyxVQUFVLEVBQUU7WUFDbkIsWUFBWSxDQUFDLElBQUksQ0FBQztnQkFDaEIsTUFBTSxFQUFFLFVBQVU7Z0JBQ2xCLFFBQVEsRUFBRSxPQUFPO2dCQUNqQixPQUFPLEVBQUU7b0JBQ1AsSUFBSSxFQUFFLE9BQU87b0JBQ2IsT0FBTzs7OztvQkFBRSxDQUFDLEVBQUUsRUFBRSxFQUFFO3dCQUNkLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLE9BQU8sQ0FBQyxDQUFDO29CQUN4QixDQUFDLENBQUE7aUJBQ0Y7YUFDRixDQUFDLENBQUM7U0FDSjtJQUNILENBQUM7Ozs7OztJQUVPLFdBQVcsQ0FBQyxDQUFDOztjQUNiLE9BQU8sR0FBRyxDQUFDLENBQUMsU0FBUyxDQUFDLE1BQU0sQ0FBQyxTQUFTLENBQUM7UUFDN0MsT0FBTyxDQUFDLEtBQUssQ0FBQyxTQUFTOzs7O1FBQUcsQ0FBQyxFQUFFLEVBQUUsRUFBRTtZQUMvQixJQUFJLENBQUMsUUFBUSxDQUFDLEVBQUUsQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLElBQUksRUFBRSxHQUFHLFVBQVUsQ0FBQyxDQUFDO1lBQ3BELElBQUksQ0FBQyxTQUFTLEdBQUcsSUFBSSxDQUFDO1FBQ3hCLENBQUMsQ0FBQSxDQUFDO1FBQ0YsT0FBTyxDQUFDLEtBQUssQ0FBQyxRQUFROzs7O1FBQUcsQ0FBQyxFQUFFLEVBQUUsRUFBRTtZQUM5QixJQUFJLElBQUksQ0FBQyxTQUFTLEVBQUU7Z0JBQ2xCLElBQUksQ0FBQyxRQUFRLENBQUMsSUFBSSxFQUFFLENBQUM7YUFDdEI7WUFDRCxJQUFJLENBQUMsU0FBUyxHQUFHLEtBQUssQ0FBQztRQUN6QixDQUFDLENBQUEsQ0FBQztJQUNKLENBQUM7Ozs7OztJQUVPLEtBQUssQ0FBQyxPQUFPO1FBQ2pCLE9BQU8sQ0FBQyxTQUFTLENBQUMsR0FBRyxDQUFDLG1CQUFtQixDQUFDLENBQUM7UUFFM0MsTUFBTSxDQUFDLEtBQUssRUFBRSxDQUFDO1FBRWYsVUFBVTs7O1FBQUM7WUFDUCxPQUFPLENBQUMsU0FBUyxDQUFDLE1BQU0sQ0FBQyxtQkFBbUIsQ0FBQyxDQUFDO1FBQ2xELENBQUMsR0FBRSxJQUFJLENBQUMsQ0FBQztJQUNiLENBQUM7OztZQWhHSixTQUFTLFNBQUM7Z0JBQ1AsUUFBUSxFQUFFLG9CQUFvQjtnQkFDOUIscUNBQStDO2dCQUUvQyxTQUFTLEVBQUUsQ0FBQyxnQkFBZ0IsRUFBRSxRQUFRLEVBQUUsRUFBQyxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsUUFBUSxFQUFFLG9CQUFvQixFQUFDLENBQUM7O2FBQ3ZHOzs7O1lBZmtCLFVBQVU7WUFBUyxNQUFNO1lBR3hDLGNBQWM7WUFFZCxhQUFhO1lBRGIsb0JBQW9CO1lBQUUsZ0JBQWdCO1lBR2xDLGFBQWE7WUFQaUMsV0FBVztZQVF6RCxRQUFRO1lBQUUsZ0JBQWdCOzs7eUJBUy9CLEtBQUs7Ozs7SUFBTiw0Q0FBMkI7O0lBRTNCLG1EQUF5Qjs7SUFDdkIsdURBQTZCOztJQUM3Qiw2Q0FBbUI7O0lBQ25CLHdDQUlFOztJQUNGLDJDQUVFOztJQUNGLHVDQUtFOztJQUNGLDJDQUFrQjs7Ozs7SUFXZCwwQ0FBMEI7Ozs7O0lBQzFCLGtEQUEwQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7Q29tcG9uZW50LCBFbGVtZW50UmVmLCBJbnB1dCwgTmdab25lLCBPbkluaXQsIFBsYXRmb3JtUmVmfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7XG4gICAgRHhEYXRhR3JpZENvbXBvbmVudCxcbiAgICBEeFRlbXBsYXRlSG9zdCwgSU5lc3RlZE9wdGlvbkNvbnRhaW5lcixcbiAgICBJdGVyYWJsZURpZmZlckhlbHBlciwgTmVzdGVkT3B0aW9uSG9zdCxcbiAgICBXYXRjaGVySGVscGVyXG59IGZyb20gJ2RldmV4dHJlbWUtYW5ndWxhcic7XG5pbXBvcnQge1RyYW5zZmVyU3RhdGV9IGZyb20gJ0Bhbmd1bGFyL3BsYXRmb3JtLWJyb3dzZXInO1xuaW1wb3J0IHtMb2NhdGlvbiwgTG9jYXRpb25TdHJhdGVneSwgUGF0aExvY2F0aW9uU3RyYXRlZ3l9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5cbkBDb21wb25lbnQoe1xuICAgIHNlbGVjdG9yOiAnY2F1c2UtZHgtZGF0YS1ncmlkJyxcbiAgICB0ZW1wbGF0ZVVybDogJy4vY2F1c2UtZGF0YS1ncmlkLmNvbXBvbmVudC5odG1sJyxcbiAgICBzdHlsZVVybHM6IFsnLi9jYXVzZS1kYXRhLWdyaWQuY29tcG9uZW50LnNjc3MnXSxcbiAgICBwcm92aWRlcnM6IFtOZXN0ZWRPcHRpb25Ib3N0LCBMb2NhdGlvbiwge3Byb3ZpZGU6IExvY2F0aW9uU3RyYXRlZ3ksIHVzZUNsYXNzOiBQYXRoTG9jYXRpb25TdHJhdGVneX1dLFxufSlcbmV4cG9ydCBjbGFzcyBDYXVzZURhdGFHcmlkQ29tcG9uZW50IGV4dGVuZHMgRHhEYXRhR3JpZENvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCwgSU5lc3RlZE9wdGlvbkNvbnRhaW5lciB7XG4gIEBJbnB1dCgpIGFsbG93UHJpbnQgPSB0cnVlO1xuXG4gIGhvdmVyU3RhdGVFbmFibGVkID0gdHJ1ZTtcbiAgICByb3dBbHRlcm5hdGlvbkVuYWJsZWQgPSB0cnVlO1xuICAgIHNob3dCb3JkZXJzID0gdHJ1ZTtcbiAgICBleHBvcnQgPSB7XG4gICAgICAgIGFsbG93RXhwb3J0U2VsZWN0ZWREYXRhOiBmYWxzZSxcbiAgICAgICAgZW5hYmxlZDogdHJ1ZSxcbiAgICAgICAgZmlsZU5hbWU6ICdleHBvcnQnLFxuICAgIH07XG4gICAgZmlsdGVyUm93ID0ge1xuICAgICAgICB2aXNpYmxlOiB0cnVlLFxuICAgIH07XG4gICAgcGFnZXIgPSB7XG4gICAgICAgIHNob3dQYWdlU2l6ZVNlbGVjdG9yOiB0cnVlLFxuICAgICAgICBzaG93TmF2aWdhdGlvbkJ1dHRvbnM6IHRydWUsXG4gICAgICAgIHNob3dJbmZvOiB0cnVlLFxuICAgICAgICB2aXNpYmxlOiB0cnVlLFxuICAgIH07XG4gICAgaXNFZGl0aW5nID0gZmFsc2U7XG5cbiAgICBjb25zdHJ1Y3RvcihcbiAgICAgICAgZWxlbWVudDogRWxlbWVudFJlZixcbiAgICAgICAgbmdab25lOiBOZ1pvbmUsXG4gICAgICAgIHRlbXBsYXRlSG9zdDogRHhUZW1wbGF0ZUhvc3QsXG4gICAgICAgIHdhdGNoZXJIZWxwZXI6IFdhdGNoZXJIZWxwZXIsXG4gICAgICAgIGlkaDogSXRlcmFibGVEaWZmZXJIZWxwZXIsXG4gICAgICAgIG9wdGlvbkhvc3Q6IE5lc3RlZE9wdGlvbkhvc3QsXG4gICAgICAgIHRyYW5zZmVyU3RhdGU6IFRyYW5zZmVyU3RhdGUsXG4gICAgICAgIHBsYXRmb3JtOiBQbGF0Zm9ybVJlZixcbiAgICAgICAgcHJpdmF0ZSBsb2NhdGlvbjogTG9jYXRpb24sXG4gICAgICAgIHByaXZhdGUgbG9jYXRpb25TdHJhdGVneTogTG9jYXRpb25TdHJhdGVneVxuICAgICkge1xuICAgICAgICBzdXBlcihlbGVtZW50LCBuZ1pvbmUsIHRlbXBsYXRlSG9zdCwgd2F0Y2hlckhlbHBlciwgaWRoLCBvcHRpb25Ib3N0LCB0cmFuc2ZlclN0YXRlLCBwbGF0Zm9ybSk7XG4gICAgICAgIG9wdGlvbkhvc3Quc2V0SG9zdCh0aGlzKTtcblxuICAgICAgICBsb2NhdGlvblN0cmF0ZWd5Lm9uUG9wU3RhdGUoKCkgPT4ge1xuICAgICAgICAgIGlmICh0aGlzLmlzRWRpdGluZykge1xuICAgICAgICAgICAgdGhpcy5pc0VkaXRpbmcgPSBmYWxzZTtcbiAgICAgICAgICAgIHRoaXMuaW5zdGFuY2UuY2FuY2VsRWRpdERhdGEoKTtcbiAgICAgICAgICB9XG4gICAgICAgIH0pO1xuICAgIH1cblxuICAgIG5nT25Jbml0KCk6IHZvaWQge1xuICAgICAgICBzdXBlci5uZ09uSW5pdCgpO1xuXG4gICAgICAgIHRoaXMub25Ub29sYmFyUHJlcGFyaW5nLnN1YnNjcmliZShlID0+IHRoaXMudG9vbGJhclByZXBhcmluZyhlKSk7XG4gICAgICAgIHRoaXMub25Jbml0aWFsaXplZC5zdWJzY3JpYmUoZSA9PiB0aGlzLmluaXRpYWxpemVkKGUpKTtcbiAgICB9XG5cbiAgICBwcml2YXRlIHRvb2xiYXJQcmVwYXJpbmcoZSkge1xuICAgICAgY29uc3QgdG9vbGJhckl0ZW1zID0gZS50b29sYmFyT3B0aW9ucy5pdGVtcztcbiAgICAgIGlmICh0aGlzLmFsbG93UHJpbnQpIHtcbiAgICAgICAgdG9vbGJhckl0ZW1zLnB1c2goe1xuICAgICAgICAgIHdpZGdldDogJ2R4QnV0dG9uJyxcbiAgICAgICAgICBsb2NhdGlvbjogJ2FmdGVyJyxcbiAgICAgICAgICBvcHRpb25zOiB7XG4gICAgICAgICAgICBpY29uOiAncHJpbnQnLFxuICAgICAgICAgICAgb25DbGljazogKGV2KSA9PiB7XG4gICAgICAgICAgICAgIHRoaXMucHJpbnQoZS5lbGVtZW50KTtcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgfVxuICAgICAgICB9KTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICBwcml2YXRlIGluaXRpYWxpemVkKGUpIHtcbiAgICAgIGNvbnN0IG9wdGlvbnMgPSBlLmNvbXBvbmVudC5vcHRpb24oJ2VkaXRpbmcnKTtcbiAgICAgIG9wdGlvbnMucG9wdXAub25TaG93aW5nID0gKGV2KSA9PiB7XG4gICAgICAgIHRoaXMubG9jYXRpb24uZ28odGhpcy5sb2NhdGlvbi5wYXRoKCkgKyAnI2VkaXRpbmcnKTtcbiAgICAgICAgdGhpcy5pc0VkaXRpbmcgPSB0cnVlO1xuICAgICAgfTtcbiAgICAgIG9wdGlvbnMucG9wdXAub25IaWRpbmcgPSAoZXYpID0+IHtcbiAgICAgICAgaWYgKHRoaXMuaXNFZGl0aW5nKSB7XG4gICAgICAgICAgdGhpcy5sb2NhdGlvbi5iYWNrKCk7XG4gICAgICAgIH1cbiAgICAgICAgdGhpcy5pc0VkaXRpbmcgPSBmYWxzZTtcbiAgICAgIH07XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBwcmludChlbGVtZW50KSB7XG4gICAgICAgIGVsZW1lbnQuY2xhc3NMaXN0LmFkZCgnb25seS1kaXYtdG8tcHJpbnQnKTtcblxuICAgICAgICB3aW5kb3cucHJpbnQoKTtcblxuICAgICAgICBzZXRUaW1lb3V0KGZ1bmN0aW9uICgpIHtcbiAgICAgICAgICAgIGVsZW1lbnQuY2xhc3NMaXN0LnJlbW92ZSgnb25seS1kaXYtdG8tcHJpbnQnKTtcbiAgICAgICAgfSwgMTAwMCk7XG4gICAgfVxufVxuXG4iXX0=