geminis-ng
Version:
This library was generated with [Angular CLI](https://github.com/angular/angular-cli) version 8.2.14.
104 lines • 12.7 kB
JavaScript
var GnJsonTableComponent_1;
import { __decorate } from "tslib";
import { ChangeDetectorRef, Component, EventEmitter, forwardRef, Input, Output, ViewChild } from '@angular/core';
import { HttpClient } from '@angular/common/http';
import { GnTableComponent } from '../table/table.component';
import { ActivatedRoute } from '@angular/router';
import { GnMessageService } from '../message-service/message-service';
import { GnTableButtonComponent } from '../table-button/table-button.component';
import { NG_VALUE_ACCESSOR } from '@angular/forms';
import { GnFormItem } from '../json-form/json-form-item/FormItem';
let GnJsonTableComponent = GnJsonTableComponent_1 = class GnJsonTableComponent {
constructor(http, messageService, changeDetectorRef, route) {
this.http = http;
this.messageService = messageService;
this.changeDetectorRef = changeDetectorRef;
this.route = route;
this.changed = false;
this.configLoaded = new EventEmitter();
this.dataLoaded = new EventEmitter();
this.valueChange = (value) => {
};
this.route.data
.subscribe((data) => {
this.url = data.url;
this.loadConfig();
});
}
set config(config) {
this.configValue = config;
this.changed = true;
}
get config() {
return this.configValue;
}
set url(url) {
this.urlValue = url;
this.changed = true;
}
get url() {
return this.urlValue;
}
ngOnInit() {
this.loadConfig();
}
loadConfig() {
if (this.changed && this.url) {
this.changed = false;
this.http.get(this.url)
.subscribe((resp) => {
this.config = resp;
this.changeDetectorRef.detectChanges();
this.configLoaded.emit(this.config);
if (this.config.autoLoadData === undefined || this.config.autoLoadData) {
this.table.dataLoaded.subscribe(() => this.dataLoaded.emit());
this.table.loadData();
}
}, (err) => {
this.messageService.error('获取表格配置错误');
console.error(err);
});
}
}
writeValue(obj) {
if (obj) {
this.table.refreshData(obj);
}
}
registerOnChange(fn) {
this.valueChange = fn;
}
registerOnTouched(fn) {
}
};
GnJsonTableComponent.decorators = [
{ type: Component, args: [{
selector: 'gn-json-table',
template: "<gn-table-button *ngIf=\"config?.showButtons !== false\" [table]=\"table\"\n [config]=\"config?.buttons\"></gn-table-button>\n<gn-table #table\n [autoLoadData]=\"false\"\n [dataStrategy]=\"config?.dataStrategy || 'remote'\"\n [url]=\"config?.url\"\n [dataKey]=\"config?.dataKey\"\n [includes]=\"config?.includes\"\n [filterGroup]=\"config?.filterGroup\"\n [sorts]=\"config?.sorts||[]\"\n [selectionMode]=\"config?.selectionMode || 'none'\"\n [showPagination]=\"config?.showPagination !== false\"\n [showSizeChanger]=\"config?.showSizeChanger !== false\"\n [pageSize]=\"config?.pageSize || 10\"\n (dataSaved)=\"valueChange(this.table.data)\"\n (dataDeleted)=\"valueChange(this.table.data)\"\n>\n <ng-container *ngFor=\"let column of config?.columns\">\n <td *ngIf=\"!column.type\" gnTableColumn [id]=\"column.field\" [title]=\"column.title\" [pipe]=\"column.pipe\"\n [pipeArgs]=\"column.pipeArgs\"></td>\n <ng-template *ngIf=\"column.type\" gnTableColumn [title]=\"column.title\" let-row>\n <ng-container [gnCustomTableColumn]=\"column\" [row]=\"row\"></ng-container>\n </ng-template>\n </ng-container>\n</gn-table>\n",
providers: [{
provide: NG_VALUE_ACCESSOR,
useExisting: forwardRef(() => GnJsonTableComponent_1),
multi: true
}],
styles: [""]
},] }
];
GnJsonTableComponent.ctorParameters = () => [
{ type: HttpClient },
{ type: GnMessageService },
{ type: ChangeDetectorRef },
{ type: ActivatedRoute }
];
GnJsonTableComponent.propDecorators = {
config: [{ type: Input }],
url: [{ type: Input }],
configLoaded: [{ type: Output }],
dataLoaded: [{ type: Output }],
table: [{ type: ViewChild, args: [GnTableComponent,] }],
button: [{ type: ViewChild, args: [GnTableButtonComponent,] }]
};
GnJsonTableComponent = GnJsonTableComponent_1 = __decorate([
GnFormItem('table')
], GnJsonTableComponent);
export { GnJsonTableComponent };
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoianNvbi10YWJsZS5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wcm9qZWN0cy9nZW1pbmlzLW5nL3NyYy9qc29uLXRhYmxlL2pzb24tdGFibGUuY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7O0FBQUEsT0FBTyxFQUFDLGlCQUFpQixFQUFFLFNBQVMsRUFBRSxZQUFZLEVBQUUsVUFBVSxFQUFFLEtBQUssRUFBVSxNQUFNLEVBQUUsU0FBUyxFQUFDLE1BQU0sZUFBZSxDQUFDO0FBRXZILE9BQU8sRUFBQyxVQUFVLEVBQUMsTUFBTSxzQkFBc0IsQ0FBQztBQUNoRCxPQUFPLEVBQUMsZ0JBQWdCLEVBQUMsTUFBTSwwQkFBMEIsQ0FBQztBQUMxRCxPQUFPLEVBQUMsY0FBYyxFQUFDLE1BQU0saUJBQWlCLENBQUM7QUFDL0MsT0FBTyxFQUFDLGdCQUFnQixFQUFDLE1BQU0sb0NBQW9DLENBQUM7QUFDcEUsT0FBTyxFQUFDLHNCQUFzQixFQUFDLE1BQU0sd0NBQXdDLENBQUM7QUFDOUUsT0FBTyxFQUF1QixpQkFBaUIsRUFBQyxNQUFNLGdCQUFnQixDQUFDO0FBQ3ZFLE9BQU8sRUFBQyxVQUFVLEVBQUMsTUFBTSxzQ0FBc0MsQ0FBQztJQWFuRCxvQkFBb0Isa0NBQXBCLG9CQUFvQjtJQThCL0IsWUFBb0IsSUFBZ0IsRUFDaEIsY0FBZ0MsRUFDaEMsaUJBQW9DLEVBQ3BDLEtBQXFCO1FBSHJCLFNBQUksR0FBSixJQUFJLENBQVk7UUFDaEIsbUJBQWMsR0FBZCxjQUFjLENBQWtCO1FBQ2hDLHNCQUFpQixHQUFqQixpQkFBaUIsQ0FBbUI7UUFDcEMsVUFBSyxHQUFMLEtBQUssQ0FBZ0I7UUEvQmpDLFlBQU8sR0FBRyxLQUFLLENBQUM7UUFzQmQsaUJBQVksR0FBRyxJQUFJLFlBQVksRUFBaUIsQ0FBQztRQUNqRCxlQUFVLEdBQUcsSUFBSSxZQUFZLEVBQUUsQ0FBQztRQXdDMUMsZ0JBQVcsR0FBRyxD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TCxLQUFLOzJCQVNMLE1BQU07eUJBQ04sTUFBTTtvQkFFTixTQUFTLFNBQUMsZ0JBQWdCO3FCQUMxQixTQUFTLFNBQUMsc0JBQXNCOztBQTVCdEIsb0JBQW9CO0lBRGhDLFVBQVUsQ0FBQyxPQUFPLENBQUM7R0FDUCxvQkFBb0IsQ0FpRmhDO1NBakZZLG9CQUFvQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7Q2hhbmdlRGV0ZWN0b3JSZWYsIENvbXBvbmVudCwgRXZlbnRFbWl0dGVyLCBmb3J3YXJkUmVmLCBJbnB1dCwgT25Jbml0LCBPdXRwdXQsIFZpZXdDaGlsZH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge0duVGFibGVDb25maWd9IGZyb20gJy4vVGFibGVDb25maWcnO1xuaW1wb3J0IHtIdHRwQ2xpZW50fSBmcm9tICdAYW5ndWxhci9jb21tb24vaHR0cCc7XG5pbXBvcnQge0duVGFibGVDb21wb25lbnR9IGZyb20gJy4uL3RhYmxlL3RhYmxlLmNvbXBvbmVudCc7XG5pbXBvcnQge0FjdGl2YXRlZFJvdXRlfSBmcm9tICdAYW5ndWxhci9yb3V0ZXInO1xuaW1wb3J0IHtHbk1lc3NhZ2VTZXJ2aWNlfSBmcm9tICcuLi9tZXNzYWdlLXNlcnZpY2UvbWVzc2FnZS1zZXJ2aWNlJztcbmltcG9ydCB7R25UYWJsZUJ1dHRvbkNvbXBvbmVudH0gZnJvbSAnLi4vdGFibGUtYnV0dG9uL3RhYmxlLWJ1dHRvbi5jb21wb25lbnQnO1xuaW1wb3J0IHtDb250cm9sVmFsdWVBY2Nlc3NvciwgTkdfVkFMVUVfQUNDRVNTT1J9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcbmltcG9ydCB7R25Gb3JtSXRlbX0gZnJvbSAnLi4vanNvbi1mb3JtL2pzb24tZm9ybS1pdGVtL0Zvcm1JdGVtJztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnZ24tanNvbi10YWJsZScsXG4gIHRlbXBsYXRlVXJsOiAnLi9qc29uLXRhYmxlLmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vanNvbi10YWJsZS5jb21wb25lbnQuY3NzJ10sXG4gIHByb3ZpZGVyczogW3tcbiAgICBwcm92aWRlOiBOR19WQUxVRV9BQ0NFU1NPUixcbiAgICB1c2VFeGlzdGluZzogZm9yd2FyZFJlZigoKSA9PiBHbkpzb25UYWJsZUNvbXBvbmVudCksXG4gICAgbXVsdGk6IHRydWVcbiAgfV1cbn0pXG5AR25Gb3JtSXRlbSgndGFibGUnKVxuZXhwb3J0IGNsYXNzIEduSnNvblRhYmxlQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0LCBDb250cm9sVmFsdWVBY2Nlc3NvciB7XG5cbiAgcHJpdmF0ZSBjaGFuZ2VkID0gZmFsc2U7XG4gIHByaXZhdGUgY29uZmlnVmFsdWU6IEduVGFibGVDb25maWc7XG4gIHByaXZhdGUgdXJsVmFsdWU6IHN0cmluZztcblxuICBASW5wdXQoKSBzZXQgY29uZmlnKGNvbmZpZzogR25UYWJsZUNvbmZpZykge1xuICAgIHRoaXMuY29uZmlnVmFsdWUgPSBjb25maWc7XG4gICAgdGhpcy5jaGFuZ2VkID0gdHJ1ZTtcbiAgfVxuXG4gIGdldCBjb25maWcoKTogR25UYWJsZUNvbmZpZyB7XG4gICAgcmV0dXJuIHRoaXMuY29uZmlnVmFsdWU7XG4gIH1cblxuICBASW5wdXQoKSBzZXQgdXJsKHVybDogc3RyaW5nKSB7XG4gICAgdGhpcy51cmxWYWx1ZSA9IHVybDtcbiAgICB0aGlzLmNoYW5nZWQgPSB0cnVlO1xuICB9XG5cbiAgZ2V0IHVybCgpOiBzdHJpbmcge1xuICAgIHJldHVybiB0aGlzLnVybFZhbHVlO1xuICB9XG5cbiAgQE91dHB1dCgpIGNvbmZpZ0xvYWRlZCA9IG5ldyBFdmVudEVtaXR0ZXI8R25UYWJsZUNvbmZpZz4oKTtcbiAgQE91dHB1dCgpIGRhdGFMb2FkZWQgPSBuZXcgRXZlbnRFbWl0dGVyKCk7XG5cbiAgQFZpZXdDaGlsZChHblRhYmxlQ29tcG9uZW50KSB0YWJsZTogR25UYWJsZUNvbXBvbmVudDtcbiAgQFZpZXdDaGlsZChHblRhYmxlQnV0dG9uQ29tcG9uZW50KSBidXR0b246IEduVGFibGVCdXR0b25Db21wb25lbnQ7XG5cbiAgY29uc3RydWN0b3IocHJpdmF0ZSBodHRwOiBIdHRwQ2xpZW50LFxuICAgICAgICAgICAgICBwcml2YXRlIG1lc3NhZ2VTZXJ2aWNlOiBHbk1lc3NhZ2VTZXJ2aWNlLFxuICAgICAgICAgICAgICBwcml2YXRlIGNoYW5nZURldGVjdG9yUmVmOiBDaGFuZ2VEZXRlY3RvclJlZixcbiAgICAgICAgICAgICAgcHJpdmF0ZSByb3V0ZTogQWN0aXZhdGVkUm91dGUpIHtcbiAgICB0aGlzLnJvdXRlLmRhdGFcbiAgICAgIC5zdWJzY3JpYmUoKGRhdGE6IGFueSkgPT4ge1xuICAgICAgICB0aGlzLnVybCA9IGRhdGEudXJsO1xuICAgICAgICB0aGlzLmxvYWRDb25maWcoKTtcbiAgICAgIH0pO1xuICB9XG5cbiAgbmdPbkluaXQoKSB7XG4gICAgdGhpcy5sb2FkQ29uZmlnKCk7XG4gIH1cblxuICBwcml2YXRlIGxvYWRDb25maWcoKTogdm9pZCB7XG4gICAgaWYgKHRoaXMuY2hhbmdlZCAmJiB0aGlzLnVybCkge1xuICAgICAgdGhpcy5jaGFuZ2VkID0gZmFsc2U7XG4gICAgICB0aGlzLmh0dHAuZ2V0KHRoaXMudXJsKVxuICAgICAgICAuc3Vic2NyaWJlKChyZXNwOiBHblRhYmxlQ29uZmlnKSA9PiB7XG4gICAgICAgICAgICB0aGlzLmNvbmZpZyA9IHJlc3A7XG4gICAgICAgICAgICB0aGlzLmNoYW5nZURldGVjdG9yUmVmLmRldGVjdENoYW5nZXMoKTtcbiAgICAgICAgICAgIHRoaXMuY29uZmlnTG9hZGVkLmVtaXQodGhpcy5jb25maWcpO1xuICAgICAgICAgICAgaWYgKHRoaXMuY29uZmlnLmF1dG9Mb2FkRGF0YSA9PT0gdW5kZWZpbmVkIHx8IHRoaXMuY29uZmlnLmF1dG9Mb2FkRGF0YSkge1xuICAgICAgICAgICAgICB0aGlzLnRhYmxlLmRhdGFMb2FkZWQuc3Vic2NyaWJlKCgpID0+IHRoaXMuZGF0YUxvYWRlZC5lbWl0KCkpO1xuICAgICAgICAgICAgICB0aGlzLnRhYmxlLmxvYWREYXRhKCk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfSxcbiAgICAgICAgICAoZXJyKSA9PiB7XG4gICAgICAgICAgICB0aGlzLm1lc3NhZ2VTZXJ2aWNlLmVycm9yKCfojrflj5booajmoLzphY3nva7plJnor68nKTtcbiAgICAgICAgICAgIGNvbnNvbGUuZXJyb3IoZXJyKTtcbiAgICAgICAgICB9KTtcbiAgICB9XG4gIH1cblxuICB2YWx1ZUNoYW5nZSA9ICh2YWx1ZTogYW55W10pID0+IHtcbiAgfVxuXG4gIHdyaXRlVmFsdWUob2JqOiBhbnlbXSk6IHZvaWQge1xuICAgIGlmIChvYmopIHtcbiAgICAgIHRoaXMudGFibGUucmVmcmVzaERhdGEob2JqKTtcbiAgICB9XG4gIH1cblxuICByZWdpc3Rlck9uQ2hhbmdlKGZuOiBhbnkpOiB2b2lkIHtcbiAgICB0aGlzLnZhbHVlQ2hhbmdlID0gZm47XG4gIH1cblxuICByZWdpc3Rlck9uVG91Y2hlZChmbjogYW55KTogdm9pZCB7XG4gIH1cblxufVxuIl19