@swimlane/ngx-datatable 19.0.0 → 20.0.0-alpha-1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +0 -1
- package/esm2020/lib/components/body/body-cell.component.mjs +432 -0
- package/esm2020/lib/components/body/body-group-header-template.directive.mjs +16 -0
- package/esm2020/lib/components/body/body-group-header.directive.mjs +62 -0
- package/esm2020/lib/components/body/body-row-wrapper.component.mjs +140 -0
- package/esm2020/lib/components/body/body-row.component.mjs +262 -0
- package/esm2020/lib/components/body/body.component.mjs +863 -0
- package/esm2020/lib/components/body/progress-bar.component.mjs +27 -0
- package/esm2020/lib/components/body/scroller.component.mjs +91 -0
- package/esm2020/lib/components/body/selection.component.mjs +150 -0
- package/esm2020/lib/components/body/summary/summary-row.component.mjs +105 -0
- package/esm2020/lib/components/columns/column-cell.directive.mjs +14 -0
- package/esm2020/lib/components/columns/column-header.directive.mjs +14 -0
- package/esm2020/lib/components/columns/column.directive.mjs +98 -0
- package/esm2020/lib/components/columns/tree.directive.mjs +14 -0
- package/esm2020/lib/components/datatable.component.mjs +1008 -0
- package/esm2020/lib/components/footer/footer-template.directive.mjs +14 -0
- package/esm2020/lib/components/footer/footer.component.mjs +128 -0
- package/esm2020/lib/components/footer/footer.directive.mjs +35 -0
- package/esm2020/lib/components/footer/pager.component.mjs +181 -0
- package/esm2020/lib/components/header/header-cell.component.mjs +243 -0
- package/esm2020/lib/components/header/header.component.mjs +376 -0
- package/esm2020/lib/components/row-detail/row-detail-template.directive.mjs +16 -0
- package/esm2020/lib/components/row-detail/row-detail.directive.mjs +63 -0
- package/esm2020/lib/directives/draggable.directive.mjs +108 -0
- package/esm2020/lib/directives/long-press.directive.mjs +117 -0
- package/esm2020/lib/directives/orderable.directive.mjs +136 -0
- package/esm2020/lib/directives/resizeable.directive.mjs +93 -0
- package/esm2020/lib/directives/visibility.directive.mjs +63 -0
- package/esm2020/lib/events.mjs +7 -0
- package/esm2020/lib/ngx-datatable.module.mjs +139 -0
- package/esm2020/lib/services/column-changes.service.mjs +24 -0
- package/esm2020/lib/services/dimensions-helper.service.mjs +17 -0
- package/esm2020/lib/services/scrollbar-helper.service.mjs +37 -0
- package/esm2020/lib/types/click.type.mjs +6 -0
- package/esm2020/lib/types/column-mode.type.mjs +7 -0
- package/esm2020/lib/types/contextmenu.type.mjs +6 -0
- package/esm2020/lib/types/selection.type.mjs +9 -0
- package/esm2020/lib/types/sort-direction.type.mjs +6 -0
- package/esm2020/lib/types/sort-prop-dir.type.mjs +2 -0
- package/esm2020/lib/types/sort.type.mjs +6 -0
- package/esm2020/lib/types/table-column.type.mjs +2 -0
- package/esm2020/lib/utils/camel-case.mjs +28 -0
- package/esm2020/lib/utils/column-helper.mjs +95 -0
- package/esm2020/lib/utils/column-prop-getters.mjs +96 -0
- package/esm2020/lib/utils/column.mjs +69 -0
- package/esm2020/lib/utils/elm-from-point.mjs +38 -0
- package/esm2020/lib/utils/id.mjs +8 -0
- package/esm2020/lib/utils/keys.mjs +10 -0
- package/esm2020/lib/utils/math.mjs +146 -0
- package/esm2020/lib/utils/prefixes.mjs +38 -0
- package/esm2020/lib/utils/row-height-cache.mjs +138 -0
- package/esm2020/lib/utils/selection.mjs +40 -0
- package/esm2020/lib/utils/sort.mjs +127 -0
- package/esm2020/lib/utils/throttle.mjs +60 -0
- package/esm2020/lib/utils/translate.mjs +25 -0
- package/esm2020/lib/utils/tree.mjs +103 -0
- package/{esm2015/public-api.js → esm2020/public-api.mjs} +1 -1
- package/{esm2015/swimlane-ngx-datatable.js → esm2020/swimlane-ngx-datatable.mjs} +1 -1
- package/fesm2015/{swimlane-ngx-datatable.js → swimlane-ngx-datatable.mjs} +4104 -3337
- package/fesm2015/swimlane-ngx-datatable.mjs.map +1 -0
- package/fesm2020/swimlane-ngx-datatable.mjs +5974 -0
- package/fesm2020/swimlane-ngx-datatable.mjs.map +1 -0
- package/lib/components/body/body-cell.component.d.ts +3 -0
- package/lib/components/body/body-group-header-template.directive.d.ts +3 -0
- package/lib/components/body/body-group-header.directive.d.ts +3 -0
- package/lib/components/body/body-row-wrapper.component.d.ts +3 -0
- package/lib/components/body/body-row.component.d.ts +3 -0
- package/lib/components/body/body.component.d.ts +3 -0
- package/lib/components/body/progress-bar.component.d.ts +3 -0
- package/lib/components/body/scroller.component.d.ts +3 -0
- package/lib/components/body/selection.component.d.ts +3 -0
- package/lib/components/body/summary/summary-row.component.d.ts +3 -0
- package/lib/components/columns/column-cell.directive.d.ts +3 -0
- package/lib/components/columns/column-header.directive.d.ts +3 -0
- package/lib/components/columns/column.directive.d.ts +3 -0
- package/lib/components/columns/tree.directive.d.ts +3 -0
- package/lib/components/datatable.component.d.ts +3 -0
- package/lib/components/footer/footer-template.directive.d.ts +3 -0
- package/lib/components/footer/footer.component.d.ts +3 -0
- package/lib/components/footer/footer.directive.d.ts +3 -0
- package/lib/components/footer/pager.component.d.ts +3 -0
- package/lib/components/header/header-cell.component.d.ts +3 -0
- package/lib/components/header/header.component.d.ts +3 -0
- package/lib/components/row-detail/row-detail-template.directive.d.ts +3 -0
- package/lib/components/row-detail/row-detail.directive.d.ts +3 -0
- package/lib/directives/draggable.directive.d.ts +3 -0
- package/lib/directives/long-press.directive.d.ts +3 -0
- package/lib/directives/orderable.directive.d.ts +3 -0
- package/lib/directives/resizeable.directive.d.ts +3 -0
- package/lib/directives/visibility.directive.d.ts +3 -0
- package/lib/ngx-datatable.module.d.ts +33 -0
- package/lib/services/column-changes.service.d.ts +3 -0
- package/lib/services/dimensions-helper.service.d.ts +3 -0
- package/lib/services/scrollbar-helper.service.d.ts +3 -0
- package/package.json +24 -12
- package/swimlane-ngx-datatable.d.ts +1 -0
- package/bundles/swimlane-ngx-datatable.umd.js +0 -5876
- package/bundles/swimlane-ngx-datatable.umd.js.map +0 -1
- package/bundles/swimlane-ngx-datatable.umd.min.js +0 -2
- package/bundles/swimlane-ngx-datatable.umd.min.js.map +0 -1
- package/esm2015/lib/components/body/body-cell.component.js +0 -361
- package/esm2015/lib/components/body/body-group-header-template.directive.js +0 -15
- package/esm2015/lib/components/body/body-group-header.directive.js +0 -54
- package/esm2015/lib/components/body/body-row-wrapper.component.js +0 -106
- package/esm2015/lib/components/body/body-row.component.js +0 -212
- package/esm2015/lib/components/body/body.component.js +0 -713
- package/esm2015/lib/components/body/progress-bar.component.js +0 -17
- package/esm2015/lib/components/body/scroller.component.js +0 -83
- package/esm2015/lib/components/body/selection.component.js +0 -140
- package/esm2015/lib/components/body/summary/summary-row.component.js +0 -81
- package/esm2015/lib/components/columns/column-cell.directive.js +0 -13
- package/esm2015/lib/components/columns/column-header.directive.js +0 -13
- package/esm2015/lib/components/columns/column.directive.js +0 -65
- package/esm2015/lib/components/columns/tree.directive.js +0 -13
- package/esm2015/lib/components/datatable.component.js +0 -925
- package/esm2015/lib/components/footer/footer-template.directive.js +0 -13
- package/esm2015/lib/components/footer/footer.component.js +0 -75
- package/esm2015/lib/components/footer/footer.directive.js +0 -22
- package/esm2015/lib/components/footer/pager.component.js +0 -136
- package/esm2015/lib/components/header/header-cell.component.js +0 -191
- package/esm2015/lib/components/header/header.component.js +0 -295
- package/esm2015/lib/components/row-detail/row-detail-template.directive.js +0 -15
- package/esm2015/lib/components/row-detail/row-detail.directive.js +0 -55
- package/esm2015/lib/directives/draggable.directive.js +0 -102
- package/esm2015/lib/directives/long-press.directive.js +0 -103
- package/esm2015/lib/directives/orderable.directive.js +0 -131
- package/esm2015/lib/directives/resizeable.directive.js +0 -89
- package/esm2015/lib/directives/visibility.directive.js +0 -62
- package/esm2015/lib/events.js +0 -7
- package/esm2015/lib/ngx-datatable.module.js +0 -96
- package/esm2015/lib/services/column-changes.service.js +0 -21
- package/esm2015/lib/services/dimensions-helper.service.js +0 -14
- package/esm2015/lib/services/scrollbar-helper.service.js +0 -34
- package/esm2015/lib/types/click.type.js +0 -6
- package/esm2015/lib/types/column-mode.type.js +0 -7
- package/esm2015/lib/types/contextmenu.type.js +0 -6
- package/esm2015/lib/types/selection.type.js +0 -9
- package/esm2015/lib/types/sort-direction.type.js +0 -6
- package/esm2015/lib/types/sort-prop-dir.type.js +0 -2
- package/esm2015/lib/types/sort.type.js +0 -6
- package/esm2015/lib/types/table-column.type.js +0 -2
- package/esm2015/lib/utils/camel-case.js +0 -28
- package/esm2015/lib/utils/column-helper.js +0 -95
- package/esm2015/lib/utils/column-prop-getters.js +0 -96
- package/esm2015/lib/utils/column.js +0 -69
- package/esm2015/lib/utils/elm-from-point.js +0 -38
- package/esm2015/lib/utils/id.js +0 -8
- package/esm2015/lib/utils/keys.js +0 -10
- package/esm2015/lib/utils/math.js +0 -146
- package/esm2015/lib/utils/prefixes.js +0 -40
- package/esm2015/lib/utils/row-height-cache.js +0 -138
- package/esm2015/lib/utils/selection.js +0 -40
- package/esm2015/lib/utils/sort.js +0 -127
- package/esm2015/lib/utils/throttle.js +0 -60
- package/esm2015/lib/utils/translate.js +0 -25
- package/esm2015/lib/utils/tree.js +0 -103
- package/fesm2015/swimlane-ngx-datatable.js.map +0 -1
- package/swimlane-ngx-datatable.metadata.json +0 -1
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
import { Injectable } from '@angular/core';
|
|
2
|
+
import { Subject } from 'rxjs';
|
|
3
|
+
import * as i0 from "@angular/core";
|
|
4
|
+
/**
|
|
5
|
+
* service to make DatatableComponent aware of changes to
|
|
6
|
+
* input bindings of DataTableColumnDirective
|
|
7
|
+
*/
|
|
8
|
+
export class ColumnChangesService {
|
|
9
|
+
constructor() {
|
|
10
|
+
this.columnInputChanges = new Subject();
|
|
11
|
+
}
|
|
12
|
+
get columnInputChanges$() {
|
|
13
|
+
return this.columnInputChanges.asObservable();
|
|
14
|
+
}
|
|
15
|
+
onInputChange() {
|
|
16
|
+
this.columnInputChanges.next();
|
|
17
|
+
}
|
|
18
|
+
}
|
|
19
|
+
ColumnChangesService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: ColumnChangesService, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
|
|
20
|
+
ColumnChangesService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: ColumnChangesService });
|
|
21
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: ColumnChangesService, decorators: [{
|
|
22
|
+
type: Injectable
|
|
23
|
+
}] });
|
|
24
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29sdW1uLWNoYW5nZXMuc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3N3aW1sYW5lL25neC1kYXRhdGFibGUvc3JjL2xpYi9zZXJ2aWNlcy9jb2x1bW4tY2hhbmdlcy5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFFM0MsT0FBTyxFQUFjLE9BQU8sRUFBRSxNQUFNLE1BQU0sQ0FBQzs7QUFFM0M7OztHQUdHO0FBRUgsTUFBTSxPQUFPLG9CQUFvQjtJQURqQztRQUVVLHVCQUFrQixHQUFHLElBQUksT0FBTyxFQUFhLENBQUM7S0FTdkQ7SUFQQyxJQUFJLG1CQUFtQjtRQUNyQixPQUFPLElBQUksQ0FBQyxrQkFBa0IsQ0FBQyxZQUFZLEVBQUUsQ0FBQztJQUNoRCxDQUFDO0lBRUQsYUFBYTtRQUNYLElBQUksQ0FBQyxrQkFBa0IsQ0FBQyxJQUFJLEVBQUUsQ0FBQztJQUNqQyxDQUFDOztpSEFUVSxvQkFBb0I7cUhBQXBCLG9CQUFvQjsyRkFBcEIsb0JBQW9CO2tCQURoQyxVQUFVIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuXG5pbXBvcnQgeyBPYnNlcnZhYmxlLCBTdWJqZWN0IH0gZnJvbSAncnhqcyc7XG5cbi8qKlxuICogc2VydmljZSB0byBtYWtlIERhdGF0YWJsZUNvbXBvbmVudCBhd2FyZSBvZiBjaGFuZ2VzIHRvXG4gKiBpbnB1dCBiaW5kaW5ncyBvZiBEYXRhVGFibGVDb2x1bW5EaXJlY3RpdmVcbiAqL1xuQEluamVjdGFibGUoKVxuZXhwb3J0IGNsYXNzIENvbHVtbkNoYW5nZXNTZXJ2aWNlIHtcbiAgcHJpdmF0ZSBjb2x1bW5JbnB1dENoYW5nZXMgPSBuZXcgU3ViamVjdDx1bmRlZmluZWQ+KCk7XG5cbiAgZ2V0IGNvbHVtbklucHV0Q2hhbmdlcyQoKTogT2JzZXJ2YWJsZTx1bmRlZmluZWQ+IHtcbiAgICByZXR1cm4gdGhpcy5jb2x1bW5JbnB1dENoYW5nZXMuYXNPYnNlcnZhYmxlKCk7XG4gIH1cblxuICBvbklucHV0Q2hhbmdlKCk6IHZvaWQge1xuICAgIHRoaXMuY29sdW1uSW5wdXRDaGFuZ2VzLm5leHQoKTtcbiAgfVxufVxuIl19
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
import { Injectable } from '@angular/core';
|
|
2
|
+
import * as i0 from "@angular/core";
|
|
3
|
+
/**
|
|
4
|
+
* Gets the width of the scrollbar. Nesc for windows
|
|
5
|
+
* http://stackoverflow.com/a/13382873/888165
|
|
6
|
+
*/
|
|
7
|
+
export class DimensionsHelper {
|
|
8
|
+
getDimensions(element) {
|
|
9
|
+
return element.getBoundingClientRect();
|
|
10
|
+
}
|
|
11
|
+
}
|
|
12
|
+
DimensionsHelper.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: DimensionsHelper, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
|
|
13
|
+
DimensionsHelper.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: DimensionsHelper });
|
|
14
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: DimensionsHelper, decorators: [{
|
|
15
|
+
type: Injectable
|
|
16
|
+
}] });
|
|
17
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGltZW5zaW9ucy1oZWxwZXIuc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3N3aW1sYW5lL25neC1kYXRhdGFibGUvc3JjL2xpYi9zZXJ2aWNlcy9kaW1lbnNpb25zLWhlbHBlci5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBVSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7O0FBRW5EOzs7R0FHRztBQUVILE1BQU0sT0FBTyxnQkFBZ0I7SUFDM0IsYUFBYSxDQUFDLE9BQWdCO1FBQzVCLE9BQU8sT0FBTyxDQUFDLHFCQUFxQixFQUFFLENBQUM7SUFDekMsQ0FBQzs7NkdBSFUsZ0JBQWdCO2lIQUFoQixnQkFBZ0I7MkZBQWhCLGdCQUFnQjtrQkFENUIsVUFBVSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdCwgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuXG4vKipcbiAqIEdldHMgdGhlIHdpZHRoIG9mIHRoZSBzY3JvbGxiYXIuICBOZXNjIGZvciB3aW5kb3dzXG4gKiBodHRwOi8vc3RhY2tvdmVyZmxvdy5jb20vYS8xMzM4Mjg3My84ODgxNjVcbiAqL1xuQEluamVjdGFibGUoKVxuZXhwb3J0IGNsYXNzIERpbWVuc2lvbnNIZWxwZXIge1xuICBnZXREaW1lbnNpb25zKGVsZW1lbnQ6IEVsZW1lbnQpOiBDbGllbnRSZWN0IHtcbiAgICByZXR1cm4gZWxlbWVudC5nZXRCb3VuZGluZ0NsaWVudFJlY3QoKTtcbiAgfVxufVxuIl19
|
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
import { Inject, Injectable } from '@angular/core';
|
|
2
|
+
import { DOCUMENT } from '@angular/common';
|
|
3
|
+
import * as i0 from "@angular/core";
|
|
4
|
+
/**
|
|
5
|
+
* Gets the width of the scrollbar. Nesc for windows
|
|
6
|
+
* http://stackoverflow.com/a/13382873/888165
|
|
7
|
+
*/
|
|
8
|
+
export class ScrollbarHelper {
|
|
9
|
+
constructor(document) {
|
|
10
|
+
this.document = document;
|
|
11
|
+
this.width = this.getWidth();
|
|
12
|
+
}
|
|
13
|
+
getWidth() {
|
|
14
|
+
const outer = this.document.createElement('div');
|
|
15
|
+
outer.style.visibility = 'hidden';
|
|
16
|
+
outer.style.width = '100px';
|
|
17
|
+
outer.style.msOverflowStyle = 'scrollbar';
|
|
18
|
+
this.document.body.appendChild(outer);
|
|
19
|
+
const widthNoScroll = outer.offsetWidth;
|
|
20
|
+
outer.style.overflow = 'scroll';
|
|
21
|
+
const inner = this.document.createElement('div');
|
|
22
|
+
inner.style.width = '100%';
|
|
23
|
+
outer.appendChild(inner);
|
|
24
|
+
const widthWithScroll = inner.offsetWidth;
|
|
25
|
+
outer.parentNode.removeChild(outer);
|
|
26
|
+
return widthNoScroll - widthWithScroll;
|
|
27
|
+
}
|
|
28
|
+
}
|
|
29
|
+
ScrollbarHelper.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: ScrollbarHelper, deps: [{ token: DOCUMENT }], target: i0.ɵɵFactoryTarget.Injectable });
|
|
30
|
+
ScrollbarHelper.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: ScrollbarHelper });
|
|
31
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: ScrollbarHelper, decorators: [{
|
|
32
|
+
type: Injectable
|
|
33
|
+
}], ctorParameters: function () { return [{ type: undefined, decorators: [{
|
|
34
|
+
type: Inject,
|
|
35
|
+
args: [DOCUMENT]
|
|
36
|
+
}] }]; } });
|
|
37
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2Nyb2xsYmFyLWhlbHBlci5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvc3dpbWxhbmUvbmd4LWRhdGF0YWJsZS9zcmMvbGliL3NlcnZpY2VzL3Njcm9sbGJhci1oZWxwZXIuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsTUFBTSxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUNuRCxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0saUJBQWlCLENBQUM7O0FBRTNDOzs7R0FHRztBQUVILE1BQU0sT0FBTyxlQUFlO0lBRzFCLFlBQXNDLFFBQWE7UUFBYixhQUFRLEdBQVIsUUFBUSxDQUFLO1FBRm5ELFVBQUssR0FBVyxJQUFJLENBQUMsUUFBUSxFQUFFLENBQUM7SUFFc0IsQ0FBQztJQUV2RCxRQUFRO1FBQ04sTUFBTSxLQUFLLEdBQUcsSUFBSSxDQUFDLFFBQVEsQ0FBQyxhQUFhLENBQUMsS0FBSyxDQUFDLENBQUM7UUFDakQsS0FBSyxDQUFDLEtBQUssQ0FBQyxVQUFVLEdBQUcsUUFBUSxDQUFDO1FBQ2xDLEtBQUssQ0FBQyxLQUFLLENBQUMsS0FBSyxHQUFHLE9BQU8sQ0FBQztRQUM1QixLQUFLLENBQUMsS0FBSyxDQUFDLGVBQWUsR0FBRyxXQUFXLENBQUM7UUFDMUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsV0FBVyxDQUFDLEtBQUssQ0FBQyxDQUFDO1FBRXRDLE1BQU0sYUFBYSxHQUFHLEtBQUssQ0FBQyxXQUFXLENBQUM7UUFDeEMsS0FBSyxDQUFDLEtBQUssQ0FBQyxRQUFRLEdBQUcsUUFBUSxDQUFDO1FBRWhDLE1BQU0sS0FBSyxHQUFHLElBQUksQ0FBQyxRQUFRLENBQUMsYUFBYSxDQUFDLEtBQUssQ0FBQyxDQUFDO1FBQ2pELEtBQUssQ0FBQyxLQUFLLENBQUMsS0FBSyxHQUFHLE1BQU0sQ0FBQztRQUMzQixLQUFLLENBQUMsV0FBVyxDQUFDLEtBQUssQ0FBQyxDQUFDO1FBRXpCLE1BQU0sZUFBZSxHQUFHLEtBQUssQ0FBQyxXQUFXLENBQUM7UUFDMUMsS0FBSyxDQUFDLFVBQVUsQ0FBQyxXQUFXLENBQUMsS0FBSyxDQUFDLENBQUM7UUFFcEMsT0FBTyxhQUFhLEdBQUcsZUFBZSxDQUFDO0lBQ3pDLENBQUM7OzRHQXZCVSxlQUFlLGtCQUdOLFFBQVE7Z0hBSGpCLGVBQWU7MkZBQWYsZUFBZTtrQkFEM0IsVUFBVTs7MEJBSUksTUFBTTsyQkFBQyxRQUFRIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0LCBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBET0NVTUVOVCB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5cbi8qKlxuICogR2V0cyB0aGUgd2lkdGggb2YgdGhlIHNjcm9sbGJhci4gIE5lc2MgZm9yIHdpbmRvd3NcbiAqIGh0dHA6Ly9zdGFja292ZXJmbG93LmNvbS9hLzEzMzgyODczLzg4ODE2NVxuICovXG5ASW5qZWN0YWJsZSgpXG5leHBvcnQgY2xhc3MgU2Nyb2xsYmFySGVscGVyIHtcbiAgd2lkdGg6IG51bWJlciA9IHRoaXMuZ2V0V2lkdGgoKTtcblxuICBjb25zdHJ1Y3RvcihASW5qZWN0KERPQ1VNRU5UKSBwcml2YXRlIGRvY3VtZW50OiBhbnkpIHt9XG5cbiAgZ2V0V2lkdGgoKTogbnVtYmVyIHtcbiAgICBjb25zdCBvdXRlciA9IHRoaXMuZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgnZGl2Jyk7XG4gICAgb3V0ZXIuc3R5bGUudmlzaWJpbGl0eSA9ICdoaWRkZW4nO1xuICAgIG91dGVyLnN0eWxlLndpZHRoID0gJzEwMHB4JztcbiAgICBvdXRlci5zdHlsZS5tc092ZXJmbG93U3R5bGUgPSAnc2Nyb2xsYmFyJztcbiAgICB0aGlzLmRvY3VtZW50LmJvZHkuYXBwZW5kQ2hpbGQob3V0ZXIpO1xuXG4gICAgY29uc3Qgd2lkdGhOb1Njcm9sbCA9IG91dGVyLm9mZnNldFdpZHRoO1xuICAgIG91dGVyLnN0eWxlLm92ZXJmbG93ID0gJ3Njcm9sbCc7XG5cbiAgICBjb25zdCBpbm5lciA9IHRoaXMuZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgnZGl2Jyk7XG4gICAgaW5uZXIuc3R5bGUud2lkdGggPSAnMTAwJSc7XG4gICAgb3V0ZXIuYXBwZW5kQ2hpbGQoaW5uZXIpO1xuXG4gICAgY29uc3Qgd2lkdGhXaXRoU2Nyb2xsID0gaW5uZXIub2Zmc2V0V2lkdGg7XG4gICAgb3V0ZXIucGFyZW50Tm9kZS5yZW1vdmVDaGlsZChvdXRlcik7XG5cbiAgICByZXR1cm4gd2lkdGhOb1Njcm9sbCAtIHdpZHRoV2l0aFNjcm9sbDtcbiAgfVxufVxuIl19
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
export var ClickType;
|
|
2
|
+
(function (ClickType) {
|
|
3
|
+
ClickType["single"] = "single";
|
|
4
|
+
ClickType["double"] = "double";
|
|
5
|
+
})(ClickType || (ClickType = {}));
|
|
6
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2xpY2sudHlwZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3N3aW1sYW5lL25neC1kYXRhdGFibGUvc3JjL2xpYi90eXBlcy9jbGljay50eXBlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE1BQU0sQ0FBTixJQUFZLFNBR1g7QUFIRCxXQUFZLFNBQVM7SUFDbkIsOEJBQWlCLENBQUE7SUFDakIsOEJBQWlCLENBQUE7QUFDbkIsQ0FBQyxFQUhXLFNBQVMsS0FBVCxTQUFTLFFBR3BCIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0IGVudW0gQ2xpY2tUeXBlIHtcbiAgc2luZ2xlID0gJ3NpbmdsZScsXG4gIGRvdWJsZSA9ICdkb3VibGUnXG59XG4iXX0=
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
export var ColumnMode;
|
|
2
|
+
(function (ColumnMode) {
|
|
3
|
+
ColumnMode["standard"] = "standard";
|
|
4
|
+
ColumnMode["flex"] = "flex";
|
|
5
|
+
ColumnMode["force"] = "force";
|
|
6
|
+
})(ColumnMode || (ColumnMode = {}));
|
|
7
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29sdW1uLW1vZGUudHlwZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3N3aW1sYW5lL25neC1kYXRhdGFibGUvc3JjL2xpYi90eXBlcy9jb2x1bW4tbW9kZS50eXBlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE1BQU0sQ0FBTixJQUFZLFVBSVg7QUFKRCxXQUFZLFVBQVU7SUFDcEIsbUNBQXFCLENBQUE7SUFDckIsMkJBQWEsQ0FBQTtJQUNiLDZCQUFlLENBQUE7QUFDakIsQ0FBQyxFQUpXLFVBQVUsS0FBVixVQUFVLFFBSXJCIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0IGVudW0gQ29sdW1uTW9kZSB7XG4gIHN0YW5kYXJkID0gJ3N0YW5kYXJkJyxcbiAgZmxleCA9ICdmbGV4JyxcbiAgZm9yY2UgPSAnZm9yY2UnXG59XG4iXX0=
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
export var ContextmenuType;
|
|
2
|
+
(function (ContextmenuType) {
|
|
3
|
+
ContextmenuType["header"] = "header";
|
|
4
|
+
ContextmenuType["body"] = "body";
|
|
5
|
+
})(ContextmenuType || (ContextmenuType = {}));
|
|
6
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29udGV4dG1lbnUudHlwZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3N3aW1sYW5lL25neC1kYXRhdGFibGUvc3JjL2xpYi90eXBlcy9jb250ZXh0bWVudS50eXBlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE1BQU0sQ0FBTixJQUFZLGVBR1g7QUFIRCxXQUFZLGVBQWU7SUFDekIsb0NBQWlCLENBQUE7SUFDakIsZ0NBQWEsQ0FBQTtBQUNmLENBQUMsRUFIVyxlQUFlLEtBQWYsZUFBZSxRQUcxQiIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCBlbnVtIENvbnRleHRtZW51VHlwZSB7XG4gIGhlYWRlciA9ICdoZWFkZXInLFxuICBib2R5ID0gJ2JvZHknXG59XG4iXX0=
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
export var SelectionType;
|
|
2
|
+
(function (SelectionType) {
|
|
3
|
+
SelectionType["single"] = "single";
|
|
4
|
+
SelectionType["multi"] = "multi";
|
|
5
|
+
SelectionType["multiClick"] = "multiClick";
|
|
6
|
+
SelectionType["cell"] = "cell";
|
|
7
|
+
SelectionType["checkbox"] = "checkbox";
|
|
8
|
+
})(SelectionType || (SelectionType = {}));
|
|
9
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VsZWN0aW9uLnR5cGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9zd2ltbGFuZS9uZ3gtZGF0YXRhYmxlL3NyYy9saWIvdHlwZXMvc2VsZWN0aW9uLnR5cGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsTUFBTSxDQUFOLElBQVksYUFNWDtBQU5ELFdBQVksYUFBYTtJQUN2QixrQ0FBaUIsQ0FBQTtJQUNqQixnQ0FBZSxDQUFBO0lBQ2YsMENBQXlCLENBQUE7SUFDekIsOEJBQWEsQ0FBQTtJQUNiLHNDQUFxQixDQUFBO0FBQ3ZCLENBQUMsRUFOVyxhQUFhLEtBQWIsYUFBYSxRQU14QiIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCBlbnVtIFNlbGVjdGlvblR5cGUge1xuICBzaW5nbGUgPSAnc2luZ2xlJyxcbiAgbXVsdGkgPSAnbXVsdGknLFxuICBtdWx0aUNsaWNrID0gJ211bHRpQ2xpY2snLFxuICBjZWxsID0gJ2NlbGwnLFxuICBjaGVja2JveCA9ICdjaGVja2JveCdcbn1cbiJdfQ==
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
export var SortDirection;
|
|
2
|
+
(function (SortDirection) {
|
|
3
|
+
SortDirection["asc"] = "asc";
|
|
4
|
+
SortDirection["desc"] = "desc";
|
|
5
|
+
})(SortDirection || (SortDirection = {}));
|
|
6
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic29ydC1kaXJlY3Rpb24udHlwZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3N3aW1sYW5lL25neC1kYXRhdGFibGUvc3JjL2xpYi90eXBlcy9zb3J0LWRpcmVjdGlvbi50eXBlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE1BQU0sQ0FBTixJQUFZLGFBR1g7QUFIRCxXQUFZLGFBQWE7SUFDdkIsNEJBQVcsQ0FBQTtJQUNYLDhCQUFhLENBQUE7QUFDZixDQUFDLEVBSFcsYUFBYSxLQUFiLGFBQWEsUUFHeEIiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgZW51bSBTb3J0RGlyZWN0aW9uIHtcbiAgYXNjID0gJ2FzYycsXG4gIGRlc2MgPSAnZGVzYydcbn1cbiJdfQ==
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
export {};
|
|
2
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic29ydC1wcm9wLWRpci50eXBlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvc3dpbWxhbmUvbmd4LWRhdGF0YWJsZS9zcmMvbGliL3R5cGVzL3NvcnQtcHJvcC1kaXIudHlwZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgU29ydERpcmVjdGlvbiB9IGZyb20gJy4vc29ydC1kaXJlY3Rpb24udHlwZSc7XG5pbXBvcnQgeyBUYWJsZUNvbHVtblByb3AgfSBmcm9tICcuL3RhYmxlLWNvbHVtbi50eXBlJztcblxuZXhwb3J0IGludGVyZmFjZSBTb3J0UHJvcERpciB7XG4gIGRpcjogU29ydERpcmVjdGlvbjtcbiAgcHJvcDogVGFibGVDb2x1bW5Qcm9wO1xufVxuIl19
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
export var SortType;
|
|
2
|
+
(function (SortType) {
|
|
3
|
+
SortType["single"] = "single";
|
|
4
|
+
SortType["multi"] = "multi";
|
|
5
|
+
})(SortType || (SortType = {}));
|
|
6
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic29ydC50eXBlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvc3dpbWxhbmUvbmd4LWRhdGF0YWJsZS9zcmMvbGliL3R5cGVzL3NvcnQudHlwZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxNQUFNLENBQU4sSUFBWSxRQUdYO0FBSEQsV0FBWSxRQUFRO0lBQ2xCLDZCQUFpQixDQUFBO0lBQ2pCLDJCQUFlLENBQUE7QUFDakIsQ0FBQyxFQUhXLFFBQVEsS0FBUixRQUFRLFFBR25CIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0IGVudW0gU29ydFR5cGUge1xuICBzaW5nbGUgPSAnc2luZ2xlJyxcbiAgbXVsdGkgPSAnbXVsdGknXG59XG4iXX0=
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
export {};
|
|
2
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGFibGUtY29sdW1uLnR5cGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9zd2ltbGFuZS9uZ3gtZGF0YXRhYmxlL3NyYy9saWIvdHlwZXMvdGFibGUtY29sdW1uLnR5cGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IFBpcGVUcmFuc2Zvcm0gfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IFZhbHVlR2V0dGVyIH0gZnJvbSAnLi4vdXRpbHMvY29sdW1uLXByb3AtZ2V0dGVycyc7XG5cbi8qKlxuICogQ29sdW1uIHByb3BlcnR5IHRoYXQgaW5kaWNhdGVzIGhvdyB0byByZXRyaWV2ZSB0aGlzIGNvbHVtbidzXG4gKiB2YWx1ZSBmcm9tIGEgcm93LlxuICogJ2EuZGVlcC52YWx1ZScsICdub3JtYWxwcm9wJywgMCAobnVtZXJpYylcbiAqL1xuZXhwb3J0IHR5cGUgVGFibGVDb2x1bW5Qcm9wID0gc3RyaW5nIHwgbnVtYmVyO1xuXG4vKipcbiAqIENvbHVtbiBUeXBlXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgVGFibGVDb2x1bW4ge1xuICAvKipcbiAgICogSW50ZXJuYWwgdW5pcXVlIGlkXG4gICAqXG4gICAqIEBtZW1iZXJPZiBUYWJsZUNvbHVtblxuICAgKi9cbiAgJCRpZD86IHN0cmluZztcblxuICAvKipcbiAgICogSW50ZXJuYWwgZm9yIGNvbHVtbiB3aWR0aCBkaXN0cmlidXRpb25zXG4gICAqXG4gICAqIEBtZW1iZXJPZiBUYWJsZUNvbHVtblxuICAgKi9cbiAgJCRvbGRXaWR0aD86IG51bWJlcjtcblxuICAvKipcbiAgICogSW50ZXJuYWwgZm9yIHNldENvbHVtbkRlZmF1bHRzXG4gICAqXG4gICAqIEBtZW1iZXJPZiBUYWJsZUNvbHVtblxuICAgKi9cbiAgJCR2YWx1ZUdldHRlcj86IFZhbHVlR2V0dGVyO1xuXG4gIC8qKlxuICAgKiBEZXRlcm1pbmVzIGlmIGNvbHVtbiBpcyBjaGVja2JveFxuICAgKlxuICAgKiBAbWVtYmVyT2YgVGFibGVDb2x1bW5cbiAgICovXG4gIGNoZWNrYm94YWJsZT86IGJvb2xlYW47XG5cbiAgLyoqXG4gICAqIERldGVybWluZXMgaWYgdGhlIGNvbHVtbiBpcyBmcm96ZW4gdG8gdGhlIGxlZnRcbiAgICpcbiAgICogQG1lbWJlck9mIFRhYmxlQ29sdW1uXG4gICAqL1xuICBmcm96ZW5MZWZ0PzogYm9vbGVhbjtcblxuICAvKipcbiAgICogRGV0ZXJtaW5lcyBpZiB0aGUgY29sdW1uIGlzIGZyb3plbiB0byB0aGUgcmlnaHRcbiAgICpcbiAgICogQG1lbWJlck9mIFRhYmxlQ29sdW1uXG4gICAqL1xuICBmcm96ZW5SaWdodD86IGJvb2xlYW47XG5cbiAgLyoqXG4gICAqIFRoZSBncm93IGZhY3RvciByZWxhdGl2ZSB0byBvdGhlciBjb2x1bW5zLiBTYW1lIGFzIHRoZSBmbGV4LWdyb3dcbiAgICogQVBJIGZyb20gaHR0cCA9Ly93d3cudzMub3JnL1RSL2NzczMtZmxleGJveC8uIEJhc2ljYWxseTtcbiAgICogdGFrZSBhbnkgYXZhaWxhYmxlIGV4dHJhIHdpZHRoIGFuZCBkaXN0cmlidXRlIGl0IHByb3BvcnRpb25hbGx5XG4gICAqIGFjY29yZGluZyB0byBhbGwgY29sdW1ucycgZmxleEdyb3cgdmFsdWVzLlxuICAgKlxuICAgKiBAbWVtYmVyT2YgVGFibGVDb2x1bW5cbiAgICovXG4gIGZsZXhHcm93PzogbnVtYmVyO1xuXG4gIC8qKlxuICAgKiBNaW4gd2lkdGggb2YgdGhlIGNvbHVtblxuICAgKlxuICAgKiBAbWVtYmVyT2YgVGFibGVDb2x1bW5cbiAgICovXG4gIG1pbldpZHRoPzogbnVtYmVyO1xuXG4gIC8qKlxuICAgKiBNYXggd2lkdGggb2YgdGhlIGNvbHVtblxuICAgKlxuICAgKiBAbWVtYmVyT2YgVGFibGVDb2x1bW5cbiAgICovXG4gIG1heFdpZHRoPzogbnVtYmVyO1xuXG4gIC8qKlxuICAgKiBUaGUgZGVmYXVsdCB3aWR0aCBvZiB0aGUgY29sdW1uLCBpbiBwaXhlbHNcbiAgICpcbiAgICogQG1lbWJlck9mIFRhYmxlQ29sdW1uXG4gICAqL1xuICB3aWR0aD86IG51bWJlcjtcblxuICAvKipcbiAgICogQ2FuIHRoZSBjb2x1bW4gYmUgcmVzaXplZFxuICAgKlxuICAgKiBAbWVtYmVyT2YgVGFibGVDb2x1bW5cbiAgICovXG4gIHJlc2l6ZWFibGU/OiBib29sZWFuO1xuXG4gIC8qKlxuICAgKiBDdXN0b20gc29ydCBjb21wYXJhdG9yXG4gICAqXG4gICAqIEBtZW1iZXJPZiBUYWJsZUNvbHVtblxuICAgKi9cbiAgY29tcGFyYXRvcj86IGFueTtcblxuICAvKipcbiAgICogQ3VzdG9tIHBpcGUgdHJhbnNmb3Jtc1xuICAgKlxuICAgKiBAbWVtYmVyT2YgVGFibGVDb2x1bW5cbiAgICovXG4gIHBpcGU/OiBQaXBlVHJhbnNmb3JtO1xuXG4gIC8qKlxuICAgKiBDYW4gdGhlIGNvbHVtbiBiZSBzb3J0ZWRcbiAgICpcbiAgICogQG1lbWJlck9mIFRhYmxlQ29sdW1uXG4gICAqL1xuICBzb3J0YWJsZT86IGJvb2xlYW47XG5cbiAgLyoqXG4gICAqIENhbiB0aGUgY29sdW1uIGJlIHJlLWFycmFuZ2VkIGJ5IGRyYWdnaW5nXG4gICAqXG4gICAqIEBtZW1iZXJPZiBUYWJsZUNvbHVtblxuICAgKi9cbiAgZHJhZ2dhYmxlPzogYm9vbGVhbjtcblxuICAvKipcbiAgICogV2hldGhlciB0aGUgY29sdW1uIGNhbiBhdXRvbWF0aWNhbGx5IHJlc2l6ZSB0byBmaWxsIHNwYWNlIGluIHRoZSB0YWJsZS5cbiAgICpcbiAgICogQG1lbWJlck9mIFRhYmxlQ29sdW1uXG4gICAqL1xuICBjYW5BdXRvUmVzaXplPzogYm9vbGVhbjtcblxuICAvKipcbiAgICogQ29sdW1uIG5hbWUgb3IgbGFiZWxcbiAgICpcbiAgICogQG1lbWJlck9mIFRhYmxlQ29sdW1uXG4gICAqL1xuICBuYW1lPzogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBQcm9wZXJ0eSB0byBiaW5kIHRvIHRoZSByb3cuIEV4YW1wbGU6XG4gICAqXG4gICAqIGBzb21lRmllbGRgIG9yIGBzb21lLmZpZWxkLm5lc3RlZGAsIDAgKG51bWVyaWMpXG4gICAqXG4gICAqIElmIGxlZnQgYmxhbmssIHdpbGwgdXNlIHRoZSBuYW1lIGFzIGNhbWVsIGNhc2UgY29udmVyc2lvblxuICAgKlxuICAgKiBAbWVtYmVyT2YgVGFibGVDb2x1bW5cbiAgICovXG4gIHByb3A/OiBUYWJsZUNvbHVtblByb3A7XG5cbiAgLyoqXG4gICAqIENlbGwgdGVtcGxhdGUgcmVmXG4gICAqXG4gICAqIEBtZW1iZXJPZiBUYWJsZUNvbHVtblxuICAgKi9cbiAgY2VsbFRlbXBsYXRlPzogYW55O1xuXG4gIC8qKlxuICAgKiBIZWFkZXIgdGVtcGxhdGUgcmVmXG4gICAqXG4gICAqIEBtZW1iZXJPZiBUYWJsZUNvbHVtblxuICAgKi9cbiAgaGVhZGVyVGVtcGxhdGU/OiBhbnk7XG5cbiAgLyoqXG4gICAqIFRyZWUgdG9nZ2xlIHRlbXBsYXRlIHJlZlxuICAgKlxuICAgKiBAbWVtYmVyT2YgVGFibGVDb2x1bW5cbiAgICovXG4gIHRyZWVUb2dnbGVUZW1wbGF0ZT86IGFueTtcblxuICAvKipcbiAgICogQ1NTIENsYXNzZXMgZm9yIHRoZSBjZWxsXG4gICAqXG4gICAqXG4gICAqIEBtZW1iZXJPZiBUYWJsZUNvbHVtblxuICAgKi9cbiAgY2VsbENsYXNzPzogc3RyaW5nIHwgKChkYXRhOiBhbnkpID0+IHN0cmluZyB8IGFueSk7XG5cbiAgLyoqXG4gICAqIENTUyBjbGFzc2VzIGZvciB0aGUgaGVhZGVyXG4gICAqXG4gICAqXG4gICAqIEBtZW1iZXJPZiBUYWJsZUNvbHVtblxuICAgKi9cbiAgaGVhZGVyQ2xhc3M/OiBzdHJpbmcgfCAoKGRhdGE6IGFueSkgPT4gc3RyaW5nIHwgYW55KTtcblxuICAvKipcbiAgICogSGVhZGVyIGNoZWNrYm94IGVuYWJsZWRcbiAgICpcbiAgICogQG1lbWJlck9mIFRhYmxlQ29sdW1uXG4gICAqL1xuICBoZWFkZXJDaGVja2JveGFibGU/OiBib29sZWFuO1xuXG4gIC8qKlxuICAgKiBJcyB0cmVlIGRpc3BsYXllZCBvbiB0aGlzIGNvbHVtblxuICAgKlxuICAgKiBAbWVtYmVyT2YgVGFibGVDb2x1bW5cbiAgICovXG4gIGlzVHJlZUNvbHVtbj86IGJvb2xlYW47XG5cbiAgLyoqXG4gICAqIFdpZHRoIG9mIHRoZSB0cmVlIGxldmVsIGluZGVudFxuICAgKlxuICAgKiBAbWVtYmVyT2YgVGFibGVDb2x1bW5cbiAgICovXG4gIHRyZWVMZXZlbEluZGVudD86IG51bWJlcjtcblxuICAvKipcbiAgICogU3VtbWFyeSBmdW5jdGlvblxuICAgKlxuICAgKiBAbWVtYmVyT2YgVGFibGVDb2x1bW5cbiAgICovXG4gIHN1bW1hcnlGdW5jPzogKGNlbGxzOiBhbnlbXSkgPT4gYW55O1xuXG4gIC8qKlxuICAgKiBTdW1tYXJ5IGNlbGwgdGVtcGxhdGUgcmVmXG4gICAqXG4gICAqIEBtZW1iZXJPZiBUYWJsZUNvbHVtblxuICAgKi9cbiAgc3VtbWFyeVRlbXBsYXRlPzogYW55O1xufVxuIl19
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Converts strings from something to camel case
|
|
3
|
+
* http://stackoverflow.com/questions/10425287/convert-dash-separated-string-to-camelcase
|
|
4
|
+
*/
|
|
5
|
+
export function camelCase(str) {
|
|
6
|
+
// Replace special characters with a space
|
|
7
|
+
str = str.replace(/[^a-zA-Z0-9 ]/g, ' ');
|
|
8
|
+
// put a space before an uppercase letter
|
|
9
|
+
str = str.replace(/([a-z](?=[A-Z]))/g, '$1 ');
|
|
10
|
+
// Lower case first character and some other stuff
|
|
11
|
+
str = str
|
|
12
|
+
.replace(/([^a-zA-Z0-9 ])|^[0-9]+/g, '')
|
|
13
|
+
.trim()
|
|
14
|
+
.toLowerCase();
|
|
15
|
+
// uppercase characters preceded by a space or number
|
|
16
|
+
str = str.replace(/([ 0-9]+)([a-zA-Z])/g, function (a, b, c) {
|
|
17
|
+
return b.trim() + c.toUpperCase();
|
|
18
|
+
});
|
|
19
|
+
return str;
|
|
20
|
+
}
|
|
21
|
+
/**
|
|
22
|
+
* Converts strings from camel case to words
|
|
23
|
+
* http://stackoverflow.com/questions/7225407/convert-camelcasetext-to-camel-case-text
|
|
24
|
+
*/
|
|
25
|
+
export function deCamelCase(str) {
|
|
26
|
+
return str.replace(/([A-Z])/g, match => ` ${match}`).replace(/^./, match => match.toUpperCase());
|
|
27
|
+
}
|
|
28
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2FtZWwtY2FzZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3N3aW1sYW5lL25neC1kYXRhdGFibGUvc3JjL2xpYi91dGlscy9jYW1lbC1jYXNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOzs7R0FHRztBQUNILE1BQU0sVUFBVSxTQUFTLENBQUMsR0FBVztJQUNuQywwQ0FBMEM7SUFDMUMsR0FBRyxHQUFHLEdBQUcsQ0FBQyxPQUFPLENBQUMsZ0JBQWdCLEVBQUUsR0FBRyxDQUFDLENBQUM7SUFDekMseUNBQXlDO0lBQ3pDLEdBQUcsR0FBRyxHQUFHLENBQUMsT0FBTyxDQUFDLG1CQUFtQixFQUFFLEtBQUssQ0FBQyxDQUFDO0lBRTlDLGtEQUFrRDtJQUNsRCxHQUFHLEdBQUcsR0FBRztTQUNOLE9BQU8sQ0FBQywwQkFBMEIsRUFBRSxFQUFFLENBQUM7U0FDdkMsSUFBSSxFQUFFO1NBQ04sV0FBVyxFQUFFLENBQUM7SUFFakIscURBQXFEO0lBQ3JELEdBQUcsR0FBRyxHQUFHLENBQUMsT0FBTyxDQUFDLHNCQUFzQixFQUFFLFVBQVUsQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDO1FBQ3pELE9BQU8sQ0FBQyxDQUFDLElBQUksRUFBRSxHQUFHLENBQUMsQ0FBQyxXQUFXLEVBQUUsQ0FBQztJQUNwQyxDQUFDLENBQUMsQ0FBQztJQUVILE9BQU8sR0FBRyxDQUFDO0FBQ2IsQ0FBQztBQUVEOzs7R0FHRztBQUNILE1BQU0sVUFBVSxXQUFXLENBQUMsR0FBVztJQUNyQyxPQUFPLEdBQUcsQ0FBQyxPQUFPLENBQUMsVUFBVSxFQUFFLEtBQUssQ0FBQyxFQUFFLENBQUMsSUFBSSxLQUFLLEVBQUUsQ0FBQyxDQUFDLE9BQU8sQ0FBQyxJQUFJLEVBQUUsS0FBSyxDQUFDLEVBQUUsQ0FBQyxLQUFLLENBQUMsV0FBVyxFQUFFLENBQUMsQ0FBQztBQUNuRyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBDb252ZXJ0cyBzdHJpbmdzIGZyb20gc29tZXRoaW5nIHRvIGNhbWVsIGNhc2VcbiAqIGh0dHA6Ly9zdGFja292ZXJmbG93LmNvbS9xdWVzdGlvbnMvMTA0MjUyODcvY29udmVydC1kYXNoLXNlcGFyYXRlZC1zdHJpbmctdG8tY2FtZWxjYXNlXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBjYW1lbENhc2Uoc3RyOiBzdHJpbmcpOiBzdHJpbmcge1xuICAvLyBSZXBsYWNlIHNwZWNpYWwgY2hhcmFjdGVycyB3aXRoIGEgc3BhY2VcbiAgc3RyID0gc3RyLnJlcGxhY2UoL1teYS16QS1aMC05IF0vZywgJyAnKTtcbiAgLy8gcHV0IGEgc3BhY2UgYmVmb3JlIGFuIHVwcGVyY2FzZSBsZXR0ZXJcbiAgc3RyID0gc3RyLnJlcGxhY2UoLyhbYS16XSg/PVtBLVpdKSkvZywgJyQxICcpO1xuXG4gIC8vIExvd2VyIGNhc2UgZmlyc3QgY2hhcmFjdGVyIGFuZCBzb21lIG90aGVyIHN0dWZmXG4gIHN0ciA9IHN0clxuICAgIC5yZXBsYWNlKC8oW15hLXpBLVowLTkgXSl8XlswLTldKy9nLCAnJylcbiAgICAudHJpbSgpXG4gICAgLnRvTG93ZXJDYXNlKCk7XG5cbiAgLy8gdXBwZXJjYXNlIGNoYXJhY3RlcnMgcHJlY2VkZWQgYnkgYSBzcGFjZSBvciBudW1iZXJcbiAgc3RyID0gc3RyLnJlcGxhY2UoLyhbIDAtOV0rKShbYS16QS1aXSkvZywgZnVuY3Rpb24gKGEsIGIsIGMpIHtcbiAgICByZXR1cm4gYi50cmltKCkgKyBjLnRvVXBwZXJDYXNlKCk7XG4gIH0pO1xuXG4gIHJldHVybiBzdHI7XG59XG5cbi8qKlxuICogQ29udmVydHMgc3RyaW5ncyBmcm9tIGNhbWVsIGNhc2UgdG8gd29yZHNcbiAqIGh0dHA6Ly9zdGFja292ZXJmbG93LmNvbS9xdWVzdGlvbnMvNzIyNTQwNy9jb252ZXJ0LWNhbWVsY2FzZXRleHQtdG8tY2FtZWwtY2FzZS10ZXh0XG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBkZUNhbWVsQ2FzZShzdHI6IHN0cmluZyk6IHN0cmluZyB7XG4gIHJldHVybiBzdHIucmVwbGFjZSgvKFtBLVpdKS9nLCBtYXRjaCA9PiBgICR7bWF0Y2h9YCkucmVwbGFjZSgvXi4vLCBtYXRjaCA9PiBtYXRjaC50b1VwcGVyQ2FzZSgpKTtcbn1cbiJdfQ==
|
|
@@ -0,0 +1,95 @@
|
|
|
1
|
+
import { camelCase, deCamelCase } from './camel-case';
|
|
2
|
+
import { id } from './id';
|
|
3
|
+
import { getterForProp } from './column-prop-getters';
|
|
4
|
+
/**
|
|
5
|
+
* Sets the column defaults
|
|
6
|
+
*/
|
|
7
|
+
export function setColumnDefaults(columns) {
|
|
8
|
+
if (!columns)
|
|
9
|
+
return;
|
|
10
|
+
// Only one column should hold the tree view
|
|
11
|
+
// Thus if multiple columns are provided with
|
|
12
|
+
// isTreeColumn as true we take only the first one
|
|
13
|
+
let treeColumnFound = false;
|
|
14
|
+
for (const column of columns) {
|
|
15
|
+
if (!column.$$id) {
|
|
16
|
+
column.$$id = id();
|
|
17
|
+
}
|
|
18
|
+
// prop can be numeric; zero is valid not a missing prop
|
|
19
|
+
// translate name => prop
|
|
20
|
+
if (isNullOrUndefined(column.prop) && column.name) {
|
|
21
|
+
column.prop = camelCase(column.name);
|
|
22
|
+
}
|
|
23
|
+
if (!column.$$valueGetter) {
|
|
24
|
+
column.$$valueGetter = getterForProp(column.prop);
|
|
25
|
+
}
|
|
26
|
+
// format props if no name passed
|
|
27
|
+
if (!isNullOrUndefined(column.prop) && isNullOrUndefined(column.name)) {
|
|
28
|
+
column.name = deCamelCase(String(column.prop));
|
|
29
|
+
}
|
|
30
|
+
if (isNullOrUndefined(column.prop) && isNullOrUndefined(column.name)) {
|
|
31
|
+
column.name = ''; // Fixes IE and Edge displaying `null`
|
|
32
|
+
}
|
|
33
|
+
if (!column.hasOwnProperty('resizeable')) {
|
|
34
|
+
column.resizeable = true;
|
|
35
|
+
}
|
|
36
|
+
if (!column.hasOwnProperty('sortable')) {
|
|
37
|
+
column.sortable = true;
|
|
38
|
+
}
|
|
39
|
+
if (!column.hasOwnProperty('draggable')) {
|
|
40
|
+
column.draggable = true;
|
|
41
|
+
}
|
|
42
|
+
if (!column.hasOwnProperty('canAutoResize')) {
|
|
43
|
+
column.canAutoResize = true;
|
|
44
|
+
}
|
|
45
|
+
if (!column.hasOwnProperty('width')) {
|
|
46
|
+
column.width = 150;
|
|
47
|
+
}
|
|
48
|
+
if (!column.hasOwnProperty('isTreeColumn')) {
|
|
49
|
+
column.isTreeColumn = false;
|
|
50
|
+
}
|
|
51
|
+
else {
|
|
52
|
+
if (column.isTreeColumn && !treeColumnFound) {
|
|
53
|
+
// If the first column with isTreeColumn is true found
|
|
54
|
+
// we mark that treeCoulmn is found
|
|
55
|
+
treeColumnFound = true;
|
|
56
|
+
}
|
|
57
|
+
else {
|
|
58
|
+
// After that isTreeColumn property for any other column
|
|
59
|
+
// will be set as false
|
|
60
|
+
column.isTreeColumn = false;
|
|
61
|
+
}
|
|
62
|
+
}
|
|
63
|
+
}
|
|
64
|
+
}
|
|
65
|
+
export function isNullOrUndefined(value) {
|
|
66
|
+
return value === null || value === undefined;
|
|
67
|
+
}
|
|
68
|
+
/**
|
|
69
|
+
* Translates templates definitions to objects
|
|
70
|
+
*/
|
|
71
|
+
export function translateTemplates(templates) {
|
|
72
|
+
const result = [];
|
|
73
|
+
for (const temp of templates) {
|
|
74
|
+
const col = {};
|
|
75
|
+
const props = Object.getOwnPropertyNames(temp);
|
|
76
|
+
for (const prop of props) {
|
|
77
|
+
col[prop] = temp[prop];
|
|
78
|
+
}
|
|
79
|
+
if (temp.headerTemplate) {
|
|
80
|
+
col.headerTemplate = temp.headerTemplate;
|
|
81
|
+
}
|
|
82
|
+
if (temp.cellTemplate) {
|
|
83
|
+
col.cellTemplate = temp.cellTemplate;
|
|
84
|
+
}
|
|
85
|
+
if (temp.summaryFunc) {
|
|
86
|
+
col.summaryFunc = temp.summaryFunc;
|
|
87
|
+
}
|
|
88
|
+
if (temp.summaryTemplate) {
|
|
89
|
+
col.summaryTemplate = temp.summaryTemplate;
|
|
90
|
+
}
|
|
91
|
+
result.push(col);
|
|
92
|
+
}
|
|
93
|
+
return result;
|
|
94
|
+
}
|
|
95
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29sdW1uLWhlbHBlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3N3aW1sYW5lL25neC1kYXRhdGFibGUvc3JjL2xpYi91dGlscy9jb2x1bW4taGVscGVyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsV0FBVyxFQUFFLE1BQU0sY0FBYyxDQUFDO0FBQ3RELE9BQU8sRUFBRSxFQUFFLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFDMUIsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLHVCQUF1QixDQUFDO0FBSXREOztHQUVHO0FBQ0gsTUFBTSxVQUFVLGlCQUFpQixDQUFDLE9BQXNCO0lBQ3RELElBQUksQ0FBQyxPQUFPO1FBQUUsT0FBTztJQUVyQiw0Q0FBNEM7SUFDNUMsNkNBQTZDO0lBQzdDLGtEQUFrRDtJQUNsRCxJQUFJLGVBQWUsR0FBWSxLQUFLLENBQUM7SUFFckMsS0FBSyxNQUFNLE1BQU0sSUFBSSxPQUFPLEVBQUU7UUFDNUIsSUFBSSxDQUFDLE1BQU0sQ0FBQyxJQUFJLEVBQUU7WUFDaEIsTUFBTSxDQUFDLElBQUksR0FBRyxFQUFFLEVBQUUsQ0FBQztTQUNwQjtRQUVELHdEQUF3RDtRQUN4RCx5QkFBeUI7UUFDekIsSUFBSSxpQkFBaUIsQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLElBQUksTUFBTSxDQUFDLElBQUksRUFBRTtZQUNqRCxNQUFNLENBQUMsSUFBSSxHQUFHLFNBQVMsQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLENBQUM7U0FDdEM7UUFFRCxJQUFJLENBQUMsTUFBTSxDQUFDLGFBQWEsRUFBRTtZQUN6QixNQUFNLENBQUMsYUFBYSxHQUFHLGFBQWEsQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLENBQUM7U0FDbkQ7UUFFRCxpQ0FBaUM7UUFDakMsSUFBSSxDQUFDLGlCQUFpQixDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsSUFBSSxpQkFBaUIsQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLEVBQUU7WUFDckUsTUFBTSxDQUFDLElBQUksR0FBRyxXQUFXLENBQUMsTUFBTSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDO1NBQ2hEO1FBRUQsSUFBSSxpQkFBaUIsQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLElBQUksaUJBQWlCLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxFQUFFO1lBQ3BFLE1BQU0sQ0FBQyxJQUFJLEdBQUcsRUFBRSxDQUFDLENBQUMsc0NBQXNDO1NBQ3pEO1FBRUQsSUFBSSxDQUFDLE1BQU0sQ0FBQyxjQUFjLENBQUMsWUFBWSxDQUFDLEVBQUU7WUFDeEMsTUFBTSxDQUFDLFVBQVUsR0FBRyxJQUFJLENBQUM7U0FDMUI7UUFFRCxJQUFJLENBQUMsTUFBTSxDQUFDLGNBQWMsQ0FBQyxVQUFVLENBQUMsRUFBRTtZQUN0QyxNQUFNLENBQUMsUUFBUSxHQUFHLElBQUksQ0FBQztTQUN4QjtRQUVELElBQUksQ0FBQyxNQUFNLENBQUMsY0FBYyxDQUFDLFdBQVcsQ0FBQyxFQUFFO1lBQ3ZDLE1BQU0sQ0FBQyxTQUFTLEdBQUcsSUFBSSxDQUFDO1NBQ3pCO1FBRUQsSUFBSSxDQUFDLE1BQU0sQ0FBQyxjQUFjLENBQUMsZUFBZSxDQUFDLEVBQUU7WUFDM0MsTUFBTSxDQUFDLGFBQWEsR0FBRyxJQUFJLENBQUM7U0FDN0I7UUFFRCxJQUFJLENBQUMsTUFBTSxDQUFDLGNBQWMsQ0FBQyxPQUFPLENBQUMsRUFBRTtZQUNuQyxNQUFNLENBQUMsS0FBSyxHQUFHLEdBQUcsQ0FBQztTQUNwQjtRQUVELElBQUksQ0FBQyxNQUFNLENBQUMsY0FBYyxDQUFDLGNBQWMsQ0FBQyxFQUFFO1lBQzFDLE1BQU0sQ0FBQyxZQUFZLEdBQUcsS0FBSyxDQUFDO1NBQzdCO2FBQU07WUFDTCxJQUFJLE1BQU0sQ0FBQyxZQUFZLElBQUksQ0FBQyxlQUFlLEVBQUU7Z0JBQzNDLHNEQUFzRDtnQkFDdEQsbUNBQW1DO2dCQUNuQyxlQUFlLEdBQUcsSUFBSSxDQUFDO2FBQ3hCO2lCQUFNO2dCQUNMLHdEQUF3RDtnQkFDeEQsdUJBQXVCO2dCQUN2QixNQUFNLENBQUMsWUFBWSxHQUFHLEtBQUssQ0FBQzthQUM3QjtTQUNGO0tBQ0Y7QUFDSCxDQUFDO0FBRUQsTUFBTSxVQUFVLGlCQUFpQixDQUFJLEtBQTJCO0lBQzlELE9BQU8sS0FBSyxLQUFLLElBQUksSUFBSSxLQUFLLEtBQUssU0FBUyxDQUFDO0FBQy9DLENBQUM7QUFFRDs7R0FFRztBQUNILE1BQU0sVUFBVSxrQkFBa0IsQ0FBQyxTQUFxQztJQUN0RSxNQUFNLE1BQU0sR0FBVSxFQUFFLENBQUM7SUFDekIsS0FBSyxNQUFNLElBQUksSUFBSSxTQUFTLEVBQUU7UUFDNUIsTUFBTSxHQUFHLEdBQVEsRUFBRSxDQUFDO1FBRXBCLE1BQU0sS0FBSyxHQUFHLE1BQU0sQ0FBQyxtQkFBbUIsQ0FBQyxJQUFJLENBQUMsQ0FBQztRQUMvQyxLQUFLLE1BQU0sSUFBSSxJQUFJLEtBQUssRUFBRTtZQUN4QixHQUFHLENBQUMsSUFBSSxDQUFDLEdBQUcsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDO1NBQ3hCO1FBRUQsSUFBSSxJQUFJLENBQUMsY0FBYyxFQUFFO1lBQ3ZCLEdBQUcsQ0FBQyxjQUFjLEdBQUcsSUFBSSxDQUFDLGNBQWMsQ0FBQztTQUMxQztRQUVELElBQUksSUFBSSxDQUFDLFlBQVksRUFBRTtZQUNyQixHQUFHLENBQUMsWUFBWSxHQUFHLElBQUksQ0FBQyxZQUFZLENBQUM7U0FDdEM7UUFFRCxJQUFJLElBQUksQ0FBQyxXQUFXLEVBQUU7WUFDcEIsR0FBRyxDQUFDLFdBQVcsR0FBRyxJQUFJLENBQUMsV0FBVyxDQUFDO1NBQ3BDO1FBRUQsSUFBSSxJQUFJLENBQUMsZUFBZSxFQUFFO1lBQ3hCLEdBQUcsQ0FBQyxlQUFlLEdBQUcsSUFBSSxDQUFDLGVBQWUsQ0FBQztTQUM1QztRQUVELE1BQU0sQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLENBQUM7S0FDbEI7SUFFRCxPQUFPLE1BQU0sQ0FBQztBQUNoQixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgY2FtZWxDYXNlLCBkZUNhbWVsQ2FzZSB9IGZyb20gJy4vY2FtZWwtY2FzZSc7XG5pbXBvcnQgeyBpZCB9IGZyb20gJy4vaWQnO1xuaW1wb3J0IHsgZ2V0dGVyRm9yUHJvcCB9IGZyb20gJy4vY29sdW1uLXByb3AtZ2V0dGVycyc7XG5pbXBvcnQgeyBUYWJsZUNvbHVtbiB9IGZyb20gJy4uL3R5cGVzL3RhYmxlLWNvbHVtbi50eXBlJztcbmltcG9ydCB7IERhdGFUYWJsZUNvbHVtbkRpcmVjdGl2ZSB9IGZyb20gJy4uL2NvbXBvbmVudHMvY29sdW1ucy9jb2x1bW4uZGlyZWN0aXZlJztcblxuLyoqXG4gKiBTZXRzIHRoZSBjb2x1bW4gZGVmYXVsdHNcbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIHNldENvbHVtbkRlZmF1bHRzKGNvbHVtbnM6IFRhYmxlQ29sdW1uW10pIHtcbiAgaWYgKCFjb2x1bW5zKSByZXR1cm47XG5cbiAgLy8gT25seSBvbmUgY29sdW1uIHNob3VsZCBob2xkIHRoZSB0cmVlIHZpZXdcbiAgLy8gVGh1cyBpZiBtdWx0aXBsZSBjb2x1bW5zIGFyZSBwcm92aWRlZCB3aXRoXG4gIC8vIGlzVHJlZUNvbHVtbiBhcyB0cnVlIHdlIHRha2Ugb25seSB0aGUgZmlyc3Qgb25lXG4gIGxldCB0cmVlQ29sdW1uRm91bmQ6IGJvb2xlYW4gPSBmYWxzZTtcblxuICBmb3IgKGNvbnN0IGNvbHVtbiBvZiBjb2x1bW5zKSB7XG4gICAgaWYgKCFjb2x1bW4uJCRpZCkge1xuICAgICAgY29sdW1uLiQkaWQgPSBpZCgpO1xuICAgIH1cblxuICAgIC8vIHByb3AgY2FuIGJlIG51bWVyaWM7IHplcm8gaXMgdmFsaWQgbm90IGEgbWlzc2luZyBwcm9wXG4gICAgLy8gdHJhbnNsYXRlIG5hbWUgPT4gcHJvcFxuICAgIGlmIChpc051bGxPclVuZGVmaW5lZChjb2x1bW4ucHJvcCkgJiYgY29sdW1uLm5hbWUpIHtcbiAgICAgIGNvbHVtbi5wcm9wID0gY2FtZWxDYXNlKGNvbHVtbi5uYW1lKTtcbiAgICB9XG5cbiAgICBpZiAoIWNvbHVtbi4kJHZhbHVlR2V0dGVyKSB7XG4gICAgICBjb2x1bW4uJCR2YWx1ZUdldHRlciA9IGdldHRlckZvclByb3AoY29sdW1uLnByb3ApO1xuICAgIH1cblxuICAgIC8vIGZvcm1hdCBwcm9wcyBpZiBubyBuYW1lIHBhc3NlZFxuICAgIGlmICghaXNOdWxsT3JVbmRlZmluZWQoY29sdW1uLnByb3ApICYmIGlzTnVsbE9yVW5kZWZpbmVkKGNvbHVtbi5uYW1lKSkge1xuICAgICAgY29sdW1uLm5hbWUgPSBkZUNhbWVsQ2FzZShTdHJpbmcoY29sdW1uLnByb3ApKTtcbiAgICB9XG5cbiAgICBpZiAoaXNOdWxsT3JVbmRlZmluZWQoY29sdW1uLnByb3ApICYmIGlzTnVsbE9yVW5kZWZpbmVkKGNvbHVtbi5uYW1lKSkge1xuICAgICAgY29sdW1uLm5hbWUgPSAnJzsgLy8gRml4ZXMgSUUgYW5kIEVkZ2UgZGlzcGxheWluZyBgbnVsbGBcbiAgICB9XG5cbiAgICBpZiAoIWNvbHVtbi5oYXNPd25Qcm9wZXJ0eSgncmVzaXplYWJsZScpKSB7XG4gICAgICBjb2x1bW4ucmVzaXplYWJsZSA9IHRydWU7XG4gICAgfVxuXG4gICAgaWYgKCFjb2x1bW4uaGFzT3duUHJvcGVydHkoJ3NvcnRhYmxlJykpIHtcbiAgICAgIGNvbHVtbi5zb3J0YWJsZSA9IHRydWU7XG4gICAgfVxuXG4gICAgaWYgKCFjb2x1bW4uaGFzT3duUHJvcGVydHkoJ2RyYWdnYWJsZScpKSB7XG4gICAgICBjb2x1bW4uZHJhZ2dhYmxlID0gdHJ1ZTtcbiAgICB9XG5cbiAgICBpZiAoIWNvbHVtbi5oYXNPd25Qcm9wZXJ0eSgnY2FuQXV0b1Jlc2l6ZScpKSB7XG4gICAgICBjb2x1bW4uY2FuQXV0b1Jlc2l6ZSA9IHRydWU7XG4gICAgfVxuXG4gICAgaWYgKCFjb2x1bW4uaGFzT3duUHJvcGVydHkoJ3dpZHRoJykpIHtcbiAgICAgIGNvbHVtbi53aWR0aCA9IDE1MDtcbiAgICB9XG5cbiAgICBpZiAoIWNvbHVtbi5oYXNPd25Qcm9wZXJ0eSgnaXNUcmVlQ29sdW1uJykpIHtcbiAgICAgIGNvbHVtbi5pc1RyZWVDb2x1bW4gPSBmYWxzZTtcbiAgICB9IGVsc2Uge1xuICAgICAgaWYgKGNvbHVtbi5pc1RyZWVDb2x1bW4gJiYgIXRyZWVDb2x1bW5Gb3VuZCkge1xuICAgICAgICAvLyBJZiB0aGUgZmlyc3QgY29sdW1uIHdpdGggaXNUcmVlQ29sdW1uIGlzIHRydWUgZm91bmRcbiAgICAgICAgLy8gd2UgbWFyayB0aGF0IHRyZWVDb3VsbW4gaXMgZm91bmRcbiAgICAgICAgdHJlZUNvbHVtbkZvdW5kID0gdHJ1ZTtcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIC8vIEFmdGVyIHRoYXQgaXNUcmVlQ29sdW1uIHByb3BlcnR5IGZvciBhbnkgb3RoZXIgY29sdW1uXG4gICAgICAgIC8vIHdpbGwgYmUgc2V0IGFzIGZhbHNlXG4gICAgICAgIGNvbHVtbi5pc1RyZWVDb2x1bW4gPSBmYWxzZTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGlzTnVsbE9yVW5kZWZpbmVkPFQ+KHZhbHVlOiBUIHwgbnVsbCB8IHVuZGVmaW5lZCk6IHZhbHVlIGlzIG51bGwgfCB1bmRlZmluZWQge1xuICByZXR1cm4gdmFsdWUgPT09IG51bGwgfHwgdmFsdWUgPT09IHVuZGVmaW5lZDtcbn1cblxuLyoqXG4gKiBUcmFuc2xhdGVzIHRlbXBsYXRlcyBkZWZpbml0aW9ucyB0byBvYmplY3RzXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiB0cmFuc2xhdGVUZW1wbGF0ZXModGVtcGxhdGVzOiBEYXRhVGFibGVDb2x1bW5EaXJlY3RpdmVbXSk6IGFueVtdIHtcbiAgY29uc3QgcmVzdWx0OiBhbnlbXSA9IFtdO1xuICBmb3IgKGNvbnN0IHRlbXAgb2YgdGVtcGxhdGVzKSB7XG4gICAgY29uc3QgY29sOiBhbnkgPSB7fTtcblxuICAgIGNvbnN0IHByb3BzID0gT2JqZWN0LmdldE93blByb3BlcnR5TmFtZXModGVtcCk7XG4gICAgZm9yIChjb25zdCBwcm9wIG9mIHByb3BzKSB7XG4gICAgICBjb2xbcHJvcF0gPSB0ZW1wW3Byb3BdO1xuICAgIH1cblxuICAgIGlmICh0ZW1wLmhlYWRlclRlbXBsYXRlKSB7XG4gICAgICBjb2wuaGVhZGVyVGVtcGxhdGUgPSB0ZW1wLmhlYWRlclRlbXBsYXRlO1xuICAgIH1cblxuICAgIGlmICh0ZW1wLmNlbGxUZW1wbGF0ZSkge1xuICAgICAgY29sLmNlbGxUZW1wbGF0ZSA9IHRlbXAuY2VsbFRlbXBsYXRlO1xuICAgIH1cblxuICAgIGlmICh0ZW1wLnN1bW1hcnlGdW5jKSB7XG4gICAgICBjb2wuc3VtbWFyeUZ1bmMgPSB0ZW1wLnN1bW1hcnlGdW5jO1xuICAgIH1cblxuICAgIGlmICh0ZW1wLnN1bW1hcnlUZW1wbGF0ZSkge1xuICAgICAgY29sLnN1bW1hcnlUZW1wbGF0ZSA9IHRlbXAuc3VtbWFyeVRlbXBsYXRlO1xuICAgIH1cblxuICAgIHJlc3VsdC5wdXNoKGNvbCk7XG4gIH1cblxuICByZXR1cm4gcmVzdWx0O1xufVxuIl19
|
|
@@ -0,0 +1,96 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Always returns the empty string ''
|
|
3
|
+
*/
|
|
4
|
+
export function emptyStringGetter() {
|
|
5
|
+
return '';
|
|
6
|
+
}
|
|
7
|
+
/**
|
|
8
|
+
* Returns the appropriate getter function for this kind of prop.
|
|
9
|
+
* If prop == null, returns the emptyStringGetter.
|
|
10
|
+
*/
|
|
11
|
+
export function getterForProp(prop) {
|
|
12
|
+
if (prop == null) {
|
|
13
|
+
return emptyStringGetter;
|
|
14
|
+
}
|
|
15
|
+
if (typeof prop === 'number') {
|
|
16
|
+
return numericIndexGetter;
|
|
17
|
+
}
|
|
18
|
+
else {
|
|
19
|
+
// deep or simple
|
|
20
|
+
if (prop.indexOf('.') !== -1) {
|
|
21
|
+
return deepValueGetter;
|
|
22
|
+
}
|
|
23
|
+
else {
|
|
24
|
+
return shallowValueGetter;
|
|
25
|
+
}
|
|
26
|
+
}
|
|
27
|
+
}
|
|
28
|
+
/**
|
|
29
|
+
* Returns the value at this numeric index.
|
|
30
|
+
* @param row array of values
|
|
31
|
+
* @param index numeric index
|
|
32
|
+
* @returns any or '' if invalid index
|
|
33
|
+
*/
|
|
34
|
+
export function numericIndexGetter(row, index) {
|
|
35
|
+
if (row == null) {
|
|
36
|
+
return '';
|
|
37
|
+
}
|
|
38
|
+
// mimic behavior of deepValueGetter
|
|
39
|
+
if (!row || index == null) {
|
|
40
|
+
return row;
|
|
41
|
+
}
|
|
42
|
+
const value = row[index];
|
|
43
|
+
if (value == null) {
|
|
44
|
+
return '';
|
|
45
|
+
}
|
|
46
|
+
return value;
|
|
47
|
+
}
|
|
48
|
+
/**
|
|
49
|
+
* Returns the value of a field.
|
|
50
|
+
* (more efficient than deepValueGetter)
|
|
51
|
+
* @param obj object containing the field
|
|
52
|
+
* @param fieldName field name string
|
|
53
|
+
*/
|
|
54
|
+
export function shallowValueGetter(obj, fieldName) {
|
|
55
|
+
if (obj == null) {
|
|
56
|
+
return '';
|
|
57
|
+
}
|
|
58
|
+
if (!obj || !fieldName) {
|
|
59
|
+
return obj;
|
|
60
|
+
}
|
|
61
|
+
const value = obj[fieldName];
|
|
62
|
+
if (value == null) {
|
|
63
|
+
return '';
|
|
64
|
+
}
|
|
65
|
+
return value;
|
|
66
|
+
}
|
|
67
|
+
/**
|
|
68
|
+
* Returns a deep object given a string. zoo['animal.type']
|
|
69
|
+
*/
|
|
70
|
+
export function deepValueGetter(obj, path) {
|
|
71
|
+
if (obj == null) {
|
|
72
|
+
return '';
|
|
73
|
+
}
|
|
74
|
+
if (!obj || !path) {
|
|
75
|
+
return obj;
|
|
76
|
+
}
|
|
77
|
+
// check if path matches a root-level field
|
|
78
|
+
// { "a.b.c": 123 }
|
|
79
|
+
let current = obj[path];
|
|
80
|
+
if (current !== undefined) {
|
|
81
|
+
return current;
|
|
82
|
+
}
|
|
83
|
+
current = obj;
|
|
84
|
+
const split = path.split('.');
|
|
85
|
+
if (split.length) {
|
|
86
|
+
for (let i = 0; i < split.length; i++) {
|
|
87
|
+
current = current[split[i]];
|
|
88
|
+
// if found undefined, return empty string
|
|
89
|
+
if (current === undefined || current === null) {
|
|
90
|
+
return '';
|
|
91
|
+
}
|
|
92
|
+
}
|
|
93
|
+
}
|
|
94
|
+
return current;
|
|
95
|
+
}
|
|
96
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29sdW1uLXByb3AtZ2V0dGVycy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3N3aW1sYW5lL25neC1kYXRhdGFibGUvc3JjL2xpYi91dGlscy9jb2x1bW4tcHJvcC1nZXR0ZXJzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQU1BOztHQUVHO0FBQ0gsTUFBTSxVQUFVLGlCQUFpQjtJQUMvQixPQUFPLEVBQUUsQ0FBQztBQUNaLENBQUM7QUFFRDs7O0dBR0c7QUFDSCxNQUFNLFVBQVUsYUFBYSxDQUFDLElBQXFCO0lBQ2pELElBQUksSUFBSSxJQUFJLElBQUksRUFBRTtRQUNoQixPQUFPLGlCQUFpQixDQUFDO0tBQzFCO0lBRUQsSUFBSSxPQUFPLElBQUksS0FBSyxRQUFRLEVBQUU7UUFDNUIsT0FBTyxrQkFBa0IsQ0FBQztLQUMzQjtTQUFNO1FBQ0wsaUJBQWlCO1FBQ2pCLElBQUksSUFBSSxDQUFDLE9BQU8sQ0FBQyxHQUFHLENBQUMsS0FBSyxDQUFDLENBQUMsRUFBRTtZQUM1QixPQUFPLGVBQWUsQ0FBQztTQUN4QjthQUFNO1lBQ0wsT0FBTyxrQkFBa0IsQ0FBQztTQUMzQjtLQUNGO0FBQ0gsQ0FBQztBQUVEOzs7OztHQUtHO0FBQ0gsTUFBTSxVQUFVLGtCQUFrQixDQUFDLEdBQVUsRUFBRSxLQUFhO0lBQzFELElBQUksR0FBRyxJQUFJLElBQUksRUFBRTtRQUNmLE9BQU8sRUFBRSxDQUFDO0tBQ1g7SUFDRCxvQ0FBb0M7SUFDcEMsSUFBSSxDQUFDLEdBQUcsSUFBSSxLQUFLLElBQUksSUFBSSxFQUFFO1FBQ3pCLE9BQU8sR0FBRyxDQUFDO0tBQ1o7SUFFRCxNQUFNLEtBQUssR0FBRyxHQUFHLENBQUMsS0FBSyxDQUFDLENBQUM7SUFDekIsSUFBSSxLQUFLLElBQUksSUFBSSxFQUFFO1FBQ2pCLE9BQU8sRUFBRSxDQUFDO0tBQ1g7SUFDRCxPQUFPLEtBQUssQ0FBQztBQUNmLENBQUM7QUFFRDs7Ozs7R0FLRztBQUNILE1BQU0sVUFBVSxrQkFBa0IsQ0FBQyxHQUFRLEVBQUUsU0FBaUI7SUFDNUQsSUFBSSxHQUFHLElBQUksSUFBSSxFQUFFO1FBQ2YsT0FBTyxFQUFFLENBQUM7S0FDWDtJQUNELElBQUksQ0FBQyxHQUFHLElBQUksQ0FBQyxTQUFTLEVBQUU7UUFDdEIsT0FBTyxHQUFHLENBQUM7S0FDWjtJQUVELE1BQU0sS0FBSyxHQUFHLEdBQUcsQ0FBQyxTQUFTLENBQUMsQ0FBQztJQUM3QixJQUFJLEtBQUssSUFBSSxJQUFJLEVBQUU7UUFDakIsT0FBTyxFQUFFLENBQUM7S0FDWDtJQUNELE9BQU8sS0FBSyxDQUFDO0FBQ2YsQ0FBQztBQUVEOztHQUVHO0FBQ0gsTUFBTSxVQUFVLGVBQWUsQ0FBQyxHQUFRLEVBQUUsSUFBWTtJQUNwRCxJQUFJLEdBQUcsSUFBSSxJQUFJLEVBQUU7UUFDZixPQUFPLEVBQUUsQ0FBQztLQUNYO0lBQ0QsSUFBSSxDQUFDLEdBQUcsSUFBSSxDQUFDLElBQUksRUFBRTtRQUNqQixPQUFPLEdBQUcsQ0FBQztLQUNaO0lBRUQsMkNBQTJDO0lBQzNDLG1CQUFtQjtJQUNuQixJQUFJLE9BQU8sR0FBRyxHQUFHLENBQUMsSUFBSSxDQUFDLENBQUM7SUFDeEIsSUFBSSxPQUFPLEtBQUssU0FBUyxFQUFFO1FBQ3pCLE9BQU8sT0FBTyxDQUFDO0tBQ2hCO0lBRUQsT0FBTyxHQUFHLEdBQUcsQ0FBQztJQUNkLE1BQU0sS0FBSyxHQUFHLElBQUksQ0FBQyxLQUFLLENBQUMsR0FBRyxDQUFDLENBQUM7SUFFOUIsSUFBSSxLQUFLLENBQUMsTUFBTSxFQUFFO1FBQ2hCLEtBQUssSUFBSSxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsR0FBRyxLQUFLLENBQUMsTUFBTSxFQUFFLENBQUMsRUFBRSxFQUFFO1lBQ3JDLE9BQU8sR0FBRyxPQUFPLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUM7WUFFNUIsMENBQTBDO1lBQzFDLElBQUksT0FBTyxLQUFLLFNBQVMsSUFBSSxPQUFPLEtBQUssSUFBSSxFQUFFO2dCQUM3QyxPQUFPLEVBQUUsQ0FBQzthQUNYO1NBQ0Y7S0FDRjtJQUVELE9BQU8sT0FBTyxDQUFDO0FBQ2pCLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBUYWJsZUNvbHVtblByb3AgfSBmcm9tICcuLi90eXBlcy90YWJsZS1jb2x1bW4udHlwZSc7XG5cbi8vIG1heWJlIHJlbmFtZSB0aGlzIGZpbGUgdG8gcHJvcC1nZXR0ZXJzLnRzXG5cbmV4cG9ydCB0eXBlIFZhbHVlR2V0dGVyID0gKG9iajogYW55LCBwcm9wOiBUYWJsZUNvbHVtblByb3ApID0+IGFueTtcblxuLyoqXG4gKiBBbHdheXMgcmV0dXJucyB0aGUgZW1wdHkgc3RyaW5nICcnXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBlbXB0eVN0cmluZ0dldHRlcigpOiBzdHJpbmcge1xuICByZXR1cm4gJyc7XG59XG5cbi8qKlxuICogUmV0dXJucyB0aGUgYXBwcm9wcmlhdGUgZ2V0dGVyIGZ1bmN0aW9uIGZvciB0aGlzIGtpbmQgb2YgcHJvcC5cbiAqIElmIHByb3AgPT0gbnVsbCwgcmV0dXJucyB0aGUgZW1wdHlTdHJpbmdHZXR0ZXIuXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBnZXR0ZXJGb3JQcm9wKHByb3A6IFRhYmxlQ29sdW1uUHJvcCk6IFZhbHVlR2V0dGVyIHtcbiAgaWYgKHByb3AgPT0gbnVsbCkge1xuICAgIHJldHVybiBlbXB0eVN0cmluZ0dldHRlcjtcbiAgfVxuXG4gIGlmICh0eXBlb2YgcHJvcCA9PT0gJ251bWJlcicpIHtcbiAgICByZXR1cm4gbnVtZXJpY0luZGV4R2V0dGVyO1xuICB9IGVsc2Uge1xuICAgIC8vIGRlZXAgb3Igc2ltcGxlXG4gICAgaWYgKHByb3AuaW5kZXhPZignLicpICE9PSAtMSkge1xuICAgICAgcmV0dXJuIGRlZXBWYWx1ZUdldHRlcjtcbiAgICB9IGVsc2Uge1xuICAgICAgcmV0dXJuIHNoYWxsb3dWYWx1ZUdldHRlcjtcbiAgICB9XG4gIH1cbn1cblxuLyoqXG4gKiBSZXR1cm5zIHRoZSB2YWx1ZSBhdCB0aGlzIG51bWVyaWMgaW5kZXguXG4gKiBAcGFyYW0gcm93IGFycmF5IG9mIHZhbHVlc1xuICogQHBhcmFtIGluZGV4IG51bWVyaWMgaW5kZXhcbiAqIEByZXR1cm5zIGFueSBvciAnJyBpZiBpbnZhbGlkIGluZGV4XG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBudW1lcmljSW5kZXhHZXR0ZXIocm93OiBhbnlbXSwgaW5kZXg6IG51bWJlcik6IGFueSB7XG4gIGlmIChyb3cgPT0gbnVsbCkge1xuICAgIHJldHVybiAnJztcbiAgfVxuICAvLyBtaW1pYyBiZWhhdmlvciBvZiBkZWVwVmFsdWVHZXR0ZXJcbiAgaWYgKCFyb3cgfHwgaW5kZXggPT0gbnVsbCkge1xuICAgIHJldHVybiByb3c7XG4gIH1cblxuICBjb25zdCB2YWx1ZSA9IHJvd1tpbmRleF07XG4gIGlmICh2YWx1ZSA9PSBudWxsKSB7XG4gICAgcmV0dXJuICcnO1xuICB9XG4gIHJldHVybiB2YWx1ZTtcbn1cblxuLyoqXG4gKiBSZXR1cm5zIHRoZSB2YWx1ZSBvZiBhIGZpZWxkLlxuICogKG1vcmUgZWZmaWNpZW50IHRoYW4gZGVlcFZhbHVlR2V0dGVyKVxuICogQHBhcmFtIG9iaiBvYmplY3QgY29udGFpbmluZyB0aGUgZmllbGRcbiAqIEBwYXJhbSBmaWVsZE5hbWUgZmllbGQgbmFtZSBzdHJpbmdcbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIHNoYWxsb3dWYWx1ZUdldHRlcihvYmo6IGFueSwgZmllbGROYW1lOiBzdHJpbmcpOiBhbnkge1xuICBpZiAob2JqID09IG51bGwpIHtcbiAgICByZXR1cm4gJyc7XG4gIH1cbiAgaWYgKCFvYmogfHwgIWZpZWxkTmFtZSkge1xuICAgIHJldHVybiBvYmo7XG4gIH1cblxuICBjb25zdCB2YWx1ZSA9IG9ialtmaWVsZE5hbWVdO1xuICBpZiAodmFsdWUgPT0gbnVsbCkge1xuICAgIHJldHVybiAnJztcbiAgfVxuICByZXR1cm4gdmFsdWU7XG59XG5cbi8qKlxuICogUmV0dXJucyBhIGRlZXAgb2JqZWN0IGdpdmVuIGEgc3RyaW5nLiB6b29bJ2FuaW1hbC50eXBlJ11cbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGRlZXBWYWx1ZUdldHRlcihvYmo6IGFueSwgcGF0aDogc3RyaW5nKTogYW55IHtcbiAgaWYgKG9iaiA9PSBudWxsKSB7XG4gICAgcmV0dXJuICcnO1xuICB9XG4gIGlmICghb2JqIHx8ICFwYXRoKSB7XG4gICAgcmV0dXJuIG9iajtcbiAgfVxuXG4gIC8vIGNoZWNrIGlmIHBhdGggbWF0Y2hlcyBhIHJvb3QtbGV2ZWwgZmllbGRcbiAgLy8geyBcImEuYi5jXCI6IDEyMyB9XG4gIGxldCBjdXJyZW50ID0gb2JqW3BhdGhdO1xuICBpZiAoY3VycmVudCAhPT0gdW5kZWZpbmVkKSB7XG4gICAgcmV0dXJuIGN1cnJlbnQ7XG4gIH1cblxuICBjdXJyZW50ID0gb2JqO1xuICBjb25zdCBzcGxpdCA9IHBhdGguc3BsaXQoJy4nKTtcblxuICBpZiAoc3BsaXQubGVuZ3RoKSB7XG4gICAgZm9yIChsZXQgaSA9IDA7IGkgPCBzcGxpdC5sZW5ndGg7IGkrKykge1xuICAgICAgY3VycmVudCA9IGN1cnJlbnRbc3BsaXRbaV1dO1xuXG4gICAgICAvLyBpZiBmb3VuZCB1bmRlZmluZWQsIHJldHVybiBlbXB0eSBzdHJpbmdcbiAgICAgIGlmIChjdXJyZW50ID09PSB1bmRlZmluZWQgfHwgY3VycmVudCA9PT0gbnVsbCkge1xuICAgICAgICByZXR1cm4gJyc7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgcmV0dXJuIGN1cnJlbnQ7XG59XG4iXX0=
|
|
@@ -0,0 +1,69 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Returns the columns by pin.
|
|
3
|
+
*/
|
|
4
|
+
export function columnsByPin(cols) {
|
|
5
|
+
const ret = {
|
|
6
|
+
left: [],
|
|
7
|
+
center: [],
|
|
8
|
+
right: []
|
|
9
|
+
};
|
|
10
|
+
if (cols) {
|
|
11
|
+
for (const col of cols) {
|
|
12
|
+
if (col.frozenLeft) {
|
|
13
|
+
ret.left.push(col);
|
|
14
|
+
}
|
|
15
|
+
else if (col.frozenRight) {
|
|
16
|
+
ret.right.push(col);
|
|
17
|
+
}
|
|
18
|
+
else {
|
|
19
|
+
ret.center.push(col);
|
|
20
|
+
}
|
|
21
|
+
}
|
|
22
|
+
}
|
|
23
|
+
return ret;
|
|
24
|
+
}
|
|
25
|
+
/**
|
|
26
|
+
* Returns the widths of all group sets of a column
|
|
27
|
+
*/
|
|
28
|
+
export function columnGroupWidths(groups, all) {
|
|
29
|
+
return {
|
|
30
|
+
left: columnTotalWidth(groups.left),
|
|
31
|
+
center: columnTotalWidth(groups.center),
|
|
32
|
+
right: columnTotalWidth(groups.right),
|
|
33
|
+
total: Math.floor(columnTotalWidth(all))
|
|
34
|
+
};
|
|
35
|
+
}
|
|
36
|
+
/**
|
|
37
|
+
* Calculates the total width of all columns and their groups
|
|
38
|
+
*/
|
|
39
|
+
export function columnTotalWidth(columns, prop) {
|
|
40
|
+
let totalWidth = 0;
|
|
41
|
+
if (columns) {
|
|
42
|
+
for (const c of columns) {
|
|
43
|
+
const has = prop && c[prop];
|
|
44
|
+
const width = has ? c[prop] : c.width;
|
|
45
|
+
totalWidth = totalWidth + parseFloat(width);
|
|
46
|
+
}
|
|
47
|
+
}
|
|
48
|
+
return totalWidth;
|
|
49
|
+
}
|
|
50
|
+
/**
|
|
51
|
+
* Calculates the total width of all columns and their groups
|
|
52
|
+
*/
|
|
53
|
+
export function columnsTotalWidth(columns, prop) {
|
|
54
|
+
let totalWidth = 0;
|
|
55
|
+
for (const column of columns) {
|
|
56
|
+
const has = prop && column[prop];
|
|
57
|
+
totalWidth = totalWidth + (has ? column[prop] : column.width);
|
|
58
|
+
}
|
|
59
|
+
return totalWidth;
|
|
60
|
+
}
|
|
61
|
+
export function columnsByPinArr(val) {
|
|
62
|
+
const colsByPinArr = [];
|
|
63
|
+
const colsByPin = columnsByPin(val);
|
|
64
|
+
colsByPinArr.push({ type: 'left', columns: colsByPin['left'] });
|
|
65
|
+
colsByPinArr.push({ type: 'center', columns: colsByPin['center'] });
|
|
66
|
+
colsByPinArr.push({ type: 'right', columns: colsByPin['right'] });
|
|
67
|
+
return colsByPinArr;
|
|
68
|
+
}
|
|
69
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29sdW1uLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvc3dpbWxhbmUvbmd4LWRhdGF0YWJsZS9zcmMvbGliL3V0aWxzL2NvbHVtbi50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7R0FFRztBQUNILE1BQU0sVUFBVSxZQUFZLENBQUMsSUFBVztJQUN0QyxNQUFNLEdBQUcsR0FBMkM7UUFDbEQsSUFBSSxFQUFFLEVBQUU7UUFDUixNQUFNLEVBQUUsRUFBRTtRQUNWLEtBQUssRUFBRSxFQUFFO0tBQ1YsQ0FBQztJQUVGLElBQUksSUFBSSxFQUFFO1FBQ1IsS0FBSyxNQUFNLEdBQUcsSUFBSSxJQUFJLEVBQUU7WUFDdEIsSUFBSSxHQUFHLENBQUMsVUFBVSxFQUFFO2dCQUNsQixHQUFHLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsQ0FBQzthQUNwQjtpQkFBTSxJQUFJLEdBQUcsQ0FBQyxXQUFXLEVBQUU7Z0JBQzFCLEdBQUcsQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxDQUFDO2FBQ3JCO2lCQUFNO2dCQUNMLEdBQUcsQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxDQUFDO2FBQ3RCO1NBQ0Y7S0FDRjtJQUVELE9BQU8sR0FBRyxDQUFDO0FBQ2IsQ0FBQztBQUVEOztHQUVHO0FBQ0gsTUFBTSxVQUFVLGlCQUFpQixDQUFDLE1BQVcsRUFBRSxHQUFRO0lBQ3JELE9BQU87UUFDTCxJQUFJLEVBQUUsZ0JBQWdCLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQztRQUNuQyxNQUFNLEVBQUUsZ0JBQWdCLENBQUMsTUFBTSxDQUFDLE1BQU0sQ0FBQztRQUN2QyxLQUFLLEVBQUUsZ0JBQWdCLENBQUMsTUFBTSxDQUFDLEtBQUssQ0FBQztRQUNyQyxLQUFLLEVBQUUsSUFBSSxDQUFDLEtBQUssQ0FBQyxnQkFBZ0IsQ0FBQyxHQUFHLENBQUMsQ0FBQztLQUN6QyxDQUFDO0FBQ0osQ0FBQztBQUVEOztHQUVHO0FBQ0gsTUFBTSxVQUFVLGdCQUFnQixDQUFDLE9BQWMsRUFBRSxJQUFhO0lBQzVELElBQUksVUFBVSxHQUFHLENBQUMsQ0FBQztJQUVuQixJQUFJLE9BQU8sRUFBRTtRQUNYLEtBQUssTUFBTSxDQUFDLElBQUksT0FBTyxFQUFFO1lBQ3ZCLE1BQU0sR0FBRyxHQUFHLElBQUksSUFBSSxDQUFDLENBQUMsSUFBSSxDQUFDLENBQUM7WUFDNUIsTUFBTSxLQUFLLEdBQUcsR0FBRyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxLQUFLLENBQUM7WUFDdEMsVUFBVSxHQUFHLFVBQVUsR0FBRyxVQUFVLENBQUMsS0FBSyxDQUFDLENBQUM7U0FDN0M7S0FDRjtJQUVELE9BQU8sVUFBVSxDQUFDO0FBQ3BCLENBQUM7QUFFRDs7R0FFRztBQUNILE1BQU0sVUFBVSxpQkFBaUIsQ0FBQyxPQUFZLEVBQUUsSUFBVTtJQUN4RCxJQUFJLFVBQVUsR0FBRyxDQUFDLENBQUM7SUFFbkIsS0FBSyxNQUFNLE1BQU0sSUFBSSxPQUFPLEVBQUU7UUFDNUIsTUFBTSxHQUFHLEdBQUcsSUFBSSxJQUFJLE1BQU0sQ0FBQyxJQUFJLENBQUMsQ0FBQztRQUNqQyxVQUFVLEdBQUcsVUFBVSxHQUFHLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxLQUFLLENBQUMsQ0FBQztLQUMvRDtJQUVELE9BQU8sVUFBVSxDQUFDO0FBQ3BCLENBQUM7QUFFRCxNQUFNLFVBQVUsZUFBZSxDQUFDLEdBQVE7SUFDdEMsTUFBTSxZQUFZLEdBQUcsRUFBRSxDQUFDO0lBQ3hCLE1BQU0sU0FBUyxHQUFHLFlBQVksQ0FBQyxHQUFHLENBQUMsQ0FBQztJQUVwQyxZQUFZLENBQUMsSUFBSSxDQUFDLEVBQUUsSUFBSSxFQUFFLE1BQU0sRUFBRSxPQUFPLEVBQUUsU0FBUyxDQUFDLE1BQU0sQ0FBQyxFQUFFLENBQUMsQ0FBQztJQUNoRSxZQUFZLENBQUMsSUFBSSxDQUFDLEVBQUUsSUFBSSxFQUFFLFFBQVEsRUFBRSxPQUFPLEVBQUUsU0FBUyxDQUFDLFFBQVEsQ0FBQyxFQUFFLENBQUMsQ0FBQztJQUNwRSxZQUFZLENBQUMsSUFBSSxDQUFDLEVBQUUsSUFBSSxFQUFFLE9BQU8sRUFBRSxPQUFPLEVBQUUsU0FBUyxDQUFDLE9BQU8sQ0FBQyxFQUFFLENBQUMsQ0FBQztJQUVsRSxPQUFPLFlBQVksQ0FBQztBQUN0QixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBSZXR1cm5zIHRoZSBjb2x1bW5zIGJ5IHBpbi5cbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGNvbHVtbnNCeVBpbihjb2xzOiBhbnlbXSkge1xuICBjb25zdCByZXQ6IHsgbGVmdDogYW55OyBjZW50ZXI6IGFueTsgcmlnaHQ6IGFueSB9ID0ge1xuICAgIGxlZnQ6IFtdLFxuICAgIGNlbnRlcjogW10sXG4gICAgcmlnaHQ6IFtdXG4gIH07XG5cbiAgaWYgKGNvbHMpIHtcbiAgICBmb3IgKGNvbnN0IGNvbCBvZiBjb2xzKSB7XG4gICAgICBpZiAoY29sLmZyb3plbkxlZnQpIHtcbiAgICAgICAgcmV0LmxlZnQucHVzaChjb2wpO1xuICAgICAgfSBlbHNlIGlmIChjb2wuZnJvemVuUmlnaHQpIHtcbiAgICAgICAgcmV0LnJpZ2h0LnB1c2goY29sKTtcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIHJldC5jZW50ZXIucHVzaChjb2wpO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIHJldHVybiByZXQ7XG59XG5cbi8qKlxuICogUmV0dXJucyB0aGUgd2lkdGhzIG9mIGFsbCBncm91cCBzZXRzIG9mIGEgY29sdW1uXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBjb2x1bW5Hcm91cFdpZHRocyhncm91cHM6IGFueSwgYWxsOiBhbnkpIHtcbiAgcmV0dXJuIHtcbiAgICBsZWZ0OiBjb2x1bW5Ub3RhbFdpZHRoKGdyb3Vwcy5sZWZ0KSxcbiAgICBjZW50ZXI6IGNvbHVtblRvdGFsV2lkdGgoZ3JvdXBzLmNlbnRlciksXG4gICAgcmlnaHQ6IGNvbHVtblRvdGFsV2lkdGgoZ3JvdXBzLnJpZ2h0KSxcbiAgICB0b3RhbDogTWF0aC5mbG9vcihjb2x1bW5Ub3RhbFdpZHRoKGFsbCkpXG4gIH07XG59XG5cbi8qKlxuICogQ2FsY3VsYXRlcyB0aGUgdG90YWwgd2lkdGggb2YgYWxsIGNvbHVtbnMgYW5kIHRoZWlyIGdyb3Vwc1xuICovXG5leHBvcnQgZnVuY3Rpb24gY29sdW1uVG90YWxXaWR0aChjb2x1bW5zOiBhbnlbXSwgcHJvcD86IHN0cmluZykge1xuICBsZXQgdG90YWxXaWR0aCA9IDA7XG5cbiAgaWYgKGNvbHVtbnMpIHtcbiAgICBmb3IgKGNvbnN0IGMgb2YgY29sdW1ucykge1xuICAgICAgY29uc3QgaGFzID0gcHJvcCAmJiBjW3Byb3BdO1xuICAgICAgY29uc3Qgd2lkdGggPSBoYXMgPyBjW3Byb3BdIDogYy53aWR0aDtcbiAgICAgIHRvdGFsV2lkdGggPSB0b3RhbFdpZHRoICsgcGFyc2VGbG9hdCh3aWR0aCk7XG4gICAgfVxuICB9XG5cbiAgcmV0dXJuIHRvdGFsV2lkdGg7XG59XG5cbi8qKlxuICogQ2FsY3VsYXRlcyB0aGUgdG90YWwgd2lkdGggb2YgYWxsIGNvbHVtbnMgYW5kIHRoZWlyIGdyb3Vwc1xuICovXG5leHBvcnQgZnVuY3Rpb24gY29sdW1uc1RvdGFsV2lkdGgoY29sdW1uczogYW55LCBwcm9wPzogYW55KSB7XG4gIGxldCB0b3RhbFdpZHRoID0gMDtcblxuICBmb3IgKGNvbnN0IGNvbHVtbiBvZiBjb2x1bW5zKSB7XG4gICAgY29uc3QgaGFzID0gcHJvcCAmJiBjb2x1bW5bcHJvcF07XG4gICAgdG90YWxXaWR0aCA9IHRvdGFsV2lkdGggKyAoaGFzID8gY29sdW1uW3Byb3BdIDogY29sdW1uLndpZHRoKTtcbiAgfVxuXG4gIHJldHVybiB0b3RhbFdpZHRoO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gY29sdW1uc0J5UGluQXJyKHZhbDogYW55KSB7XG4gIGNvbnN0IGNvbHNCeVBpbkFyciA9IFtdO1xuICBjb25zdCBjb2xzQnlQaW4gPSBjb2x1bW5zQnlQaW4odmFsKTtcblxuICBjb2xzQnlQaW5BcnIucHVzaCh7IHR5cGU6ICdsZWZ0JywgY29sdW1uczogY29sc0J5UGluWydsZWZ0J10gfSk7XG4gIGNvbHNCeVBpbkFyci5wdXNoKHsgdHlwZTogJ2NlbnRlcicsIGNvbHVtbnM6IGNvbHNCeVBpblsnY2VudGVyJ10gfSk7XG4gIGNvbHNCeVBpbkFyci5wdXNoKHsgdHlwZTogJ3JpZ2h0JywgY29sdW1uczogY29sc0J5UGluWydyaWdodCddIH0pO1xuXG4gIHJldHVybiBjb2xzQnlQaW5BcnI7XG59XG4iXX0=
|
|
@@ -0,0 +1,38 @@
|
|
|
1
|
+
if (typeof document !== 'undefined' && !document.elementsFromPoint) {
|
|
2
|
+
document.elementsFromPoint = elementsFromPoint;
|
|
3
|
+
}
|
|
4
|
+
/*tslint:disable*/
|
|
5
|
+
/**
|
|
6
|
+
* Polyfill for `elementsFromPoint`
|
|
7
|
+
*
|
|
8
|
+
* https://developer.mozilla.org/en-US/docs/Web/API/Document/elementsFromPoint
|
|
9
|
+
* https://gist.github.com/iddan/54d5d9e58311b0495a91bf06de661380
|
|
10
|
+
* https://gist.github.com/oslego/7265412
|
|
11
|
+
*/
|
|
12
|
+
export function elementsFromPoint(x, y) {
|
|
13
|
+
const elements = [];
|
|
14
|
+
const previousPointerEvents = [];
|
|
15
|
+
let current; // TODO: window.getComputedStyle should be used with inferred type (Element)
|
|
16
|
+
let i;
|
|
17
|
+
let d;
|
|
18
|
+
//if (document === undefined) return elements;
|
|
19
|
+
// get all elements via elementFromPoint, and remove them from hit-testing in order
|
|
20
|
+
while ((current = document.elementFromPoint(x, y)) && elements.indexOf(current) === -1 && current != null) {
|
|
21
|
+
// push the element and its current style
|
|
22
|
+
elements.push(current);
|
|
23
|
+
previousPointerEvents.push({
|
|
24
|
+
value: current.style.getPropertyValue('pointer-events'),
|
|
25
|
+
priority: current.style.getPropertyPriority('pointer-events')
|
|
26
|
+
});
|
|
27
|
+
// add "pointer-events: none", to get to the underlying element
|
|
28
|
+
current.style.setProperty('pointer-events', 'none', 'important');
|
|
29
|
+
}
|
|
30
|
+
// restore the previous pointer-events values
|
|
31
|
+
for (i = previousPointerEvents.length; (d = previousPointerEvents[--i]);) {
|
|
32
|
+
elements[i].style.setProperty('pointer-events', d.value ? d.value : '', d.priority);
|
|
33
|
+
}
|
|
34
|
+
// return our results
|
|
35
|
+
return elements;
|
|
36
|
+
}
|
|
37
|
+
/*tslint:enable*/
|
|
38
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZWxtLWZyb20tcG9pbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9zd2ltbGFuZS9uZ3gtZGF0YXRhYmxlL3NyYy9saWIvdXRpbHMvZWxtLWZyb20tcG9pbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsSUFBSSxPQUFPLFFBQVEsS0FBSyxXQUFXLElBQUksQ0FBQyxRQUFRLENBQUMsaUJBQWlCLEVBQUU7SUFDbEUsUUFBUSxDQUFDLGlCQUFpQixHQUFHLGlCQUFpQixDQUFDO0NBQ2hEO0FBRUQsa0JBQWtCO0FBQ2xCOzs7Ozs7R0FNRztBQUNILE1BQU0sVUFBVSxpQkFBaUIsQ0FBQyxDQUFTLEVBQUUsQ0FBUztJQUNwRCxNQUFNLFFBQVEsR0FBRyxFQUFFLENBQUM7SUFDcEIsTUFBTSxxQkFBcUIsR0FBRyxFQUFFLENBQUM7SUFDakMsSUFBSSxPQUFZLENBQUMsQ0FBQyw0RUFBNEU7SUFDOUYsSUFBSSxDQUFDLENBQUM7SUFDTixJQUFJLENBQUMsQ0FBQztJQUVOLDhDQUE4QztJQUU5QyxtRkFBbUY7SUFDbkYsT0FBTyxDQUFDLE9BQU8sR0FBRyxRQUFRLENBQUMsZ0JBQWdCLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLElBQUksUUFBUSxDQUFDLE9BQU8sQ0FBQyxPQUFPLENBQUMsS0FBSyxDQUFDLENBQUMsSUFBSSxPQUFPLElBQUksSUFBSSxFQUFFO1FBQ3pHLHlDQUF5QztRQUN6QyxRQUFRLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxDQUFDO1FBQ3ZCLHFCQUFxQixDQUFDLElBQUksQ0FBQztZQUN6QixLQUFLLEVBQUUsT0FBTyxDQUFDLEtBQUssQ0FBQyxnQkFBZ0IsQ0FBQyxnQkFBZ0IsQ0FBQztZQUN2RCxRQUFRLEVBQUUsT0FBTyxDQUFDLEtBQUssQ0FBQyxtQkFBbUIsQ0FBQyxnQkFBZ0IsQ0FBQztTQUM5RCxDQUFDLENBQUM7UUFFSCwrREFBK0Q7UUFDL0QsT0FBTyxDQUFDLEtBQUssQ0FBQyxXQUFXLENBQUMsZ0JBQWdCLEVBQUUsTUFBTSxFQUFFLFdBQVcsQ0FBQyxDQUFDO0tBQ2xFO0lBRUQsNkNBQTZDO0lBQzdDLEtBQUssQ0FBQyxHQUFHLHFCQUFxQixDQUFDLE1BQU0sRUFBRSxDQUFDLENBQUMsR0FBRyxxQkFBcUIsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLEdBQUk7UUFDekUsUUFBUSxDQUFDLENBQUMsQ0FBQyxDQUFDLEtBQUssQ0FBQyxXQUFXLENBQUMsZ0JBQWdCLEVBQUUsQ0FBQyxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQyxRQUFRLENBQUMsQ0FBQztLQUNyRjtJQUVELHFCQUFxQjtJQUNyQixPQUFPLFFBQVEsQ0FBQztBQUNsQixDQUFDO0FBQ0QsaUJBQWlCIiwic291cmNlc0NvbnRlbnQiOlsiaWYgKHR5cGVvZiBkb2N1bWVudCAhPT0gJ3VuZGVmaW5lZCcgJiYgIWRvY3VtZW50LmVsZW1lbnRzRnJvbVBvaW50KSB7XG4gIGRvY3VtZW50LmVsZW1lbnRzRnJvbVBvaW50ID0gZWxlbWVudHNGcm9tUG9pbnQ7XG59XG5cbi8qdHNsaW50OmRpc2FibGUqL1xuLyoqXG4gKiBQb2x5ZmlsbCBmb3IgYGVsZW1lbnRzRnJvbVBvaW50YFxuICpcbiAqIGh0dHBzOi8vZGV2ZWxvcGVyLm1vemlsbGEub3JnL2VuLVVTL2RvY3MvV2ViL0FQSS9Eb2N1bWVudC9lbGVtZW50c0Zyb21Qb2ludFxuICogaHR0cHM6Ly9naXN0LmdpdGh1Yi5jb20vaWRkYW4vNTRkNWQ5ZTU4MzExYjA0OTVhOTFiZjA2ZGU2NjEzODBcbiAqIGh0dHBzOi8vZ2lzdC5naXRodWIuY29tL29zbGVnby83MjY1NDEyXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBlbGVtZW50c0Zyb21Qb2ludCh4OiBudW1iZXIsIHk6IG51bWJlcikge1xuICBjb25zdCBlbGVtZW50cyA9IFtdO1xuICBjb25zdCBwcmV2aW91c1BvaW50ZXJFdmVudHMgPSBbXTtcbiAgbGV0IGN1cnJlbnQ6IGFueTsgLy8gVE9ETzogd2luZG93LmdldENvbXB1dGVkU3R5bGUgc2hvdWxkIGJlIHVzZWQgd2l0aCBpbmZlcnJlZCB0eXBlIChFbGVtZW50KVxuICBsZXQgaTtcbiAgbGV0IGQ7XG5cbiAgLy9pZiAoZG9jdW1lbnQgPT09IHVuZGVmaW5lZCkgcmV0dXJuIGVsZW1lbnRzO1xuXG4gIC8vIGdldCBhbGwgZWxlbWVudHMgdmlhIGVsZW1lbnRGcm9tUG9pbnQsIGFuZCByZW1vdmUgdGhlbSBmcm9tIGhpdC10ZXN0aW5nIGluIG9yZGVyXG4gIHdoaWxlICgoY3VycmVudCA9IGRvY3VtZW50LmVsZW1lbnRGcm9tUG9pbnQoeCwgeSkpICYmIGVsZW1lbnRzLmluZGV4T2YoY3VycmVudCkgPT09IC0xICYmIGN1cnJlbnQgIT0gbnVsbCkge1xuICAgIC8vIHB1c2ggdGhlIGVsZW1lbnQgYW5kIGl0cyBjdXJyZW50IHN0eWxlXG4gICAgZWxlbWVudHMucHVzaChjdXJyZW50KTtcbiAgICBwcmV2aW91c1BvaW50ZXJFdmVudHMucHVzaCh7XG4gICAgICB2YWx1ZTogY3VycmVudC5zdHlsZS5nZXRQcm9wZXJ0eVZhbHVlKCdwb2ludGVyLWV2ZW50cycpLFxuICAgICAgcHJpb3JpdHk6IGN1cnJlbnQuc3R5bGUuZ2V0UHJvcGVydHlQcmlvcml0eSgncG9pbnRlci1ldmVudHMnKVxuICAgIH0pO1xuXG4gICAgLy8gYWRkIFwicG9pbnRlci1ldmVudHM6IG5vbmVcIiwgdG8gZ2V0IHRvIHRoZSB1bmRlcmx5aW5nIGVsZW1lbnRcbiAgICBjdXJyZW50LnN0eWxlLnNldFByb3BlcnR5KCdwb2ludGVyLWV2ZW50cycsICdub25lJywgJ2ltcG9ydGFudCcpO1xuICB9XG5cbiAgLy8gcmVzdG9yZSB0aGUgcHJldmlvdXMgcG9pbnRlci1ldmVudHMgdmFsdWVzXG4gIGZvciAoaSA9IHByZXZpb3VzUG9pbnRlckV2ZW50cy5sZW5ndGg7IChkID0gcHJldmlvdXNQb2ludGVyRXZlbnRzWy0taV0pOyApIHtcbiAgICBlbGVtZW50c1tpXS5zdHlsZS5zZXRQcm9wZXJ0eSgncG9pbnRlci1ldmVudHMnLCBkLnZhbHVlID8gZC52YWx1ZSA6ICcnLCBkLnByaW9yaXR5KTtcbiAgfVxuXG4gIC8vIHJldHVybiBvdXIgcmVzdWx0c1xuICByZXR1cm4gZWxlbWVudHM7XG59XG4vKnRzbGludDplbmFibGUqL1xuIl19
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Creates a unique object id.
|
|
3
|
+
* http://stackoverflow.com/questions/6248666/how-to-generate-short-uid-like-ax4j9z-in-js
|
|
4
|
+
*/
|
|
5
|
+
export function id() {
|
|
6
|
+
return ('0000' + ((Math.random() * Math.pow(36, 4)) << 0).toString(36)).slice(-4);
|
|
7
|
+
}
|
|
8
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaWQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9zd2ltbGFuZS9uZ3gtZGF0YXRhYmxlL3NyYy9saWIvdXRpbHMvaWQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7OztHQUdHO0FBQ0gsTUFBTSxVQUFVLEVBQUU7SUFDaEIsT0FBTyxDQUFDLE1BQU0sR0FBRyxDQUFDLENBQUMsSUFBSSxDQUFDLE1BQU0sRUFBRSxHQUFHLElBQUksQ0FBQyxHQUFHLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsUUFBUSxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUM7QUFDcEYsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogQ3JlYXRlcyBhIHVuaXF1ZSBvYmplY3QgaWQuXG4gKiBodHRwOi8vc3RhY2tvdmVyZmxvdy5jb20vcXVlc3Rpb25zLzYyNDg2NjYvaG93LXRvLWdlbmVyYXRlLXNob3J0LXVpZC1saWtlLWF4NGo5ei1pbi1qc1xuICovXG5leHBvcnQgZnVuY3Rpb24gaWQoKSB7XG4gIHJldHVybiAoJzAwMDAnICsgKChNYXRoLnJhbmRvbSgpICogTWF0aC5wb3coMzYsIDQpKSA8PCAwKS50b1N0cmluZygzNikpLnNsaWNlKC00KTtcbn1cbiJdfQ==
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
export var Keys;
|
|
2
|
+
(function (Keys) {
|
|
3
|
+
Keys[Keys["up"] = 38] = "up";
|
|
4
|
+
Keys[Keys["down"] = 40] = "down";
|
|
5
|
+
Keys[Keys["return"] = 13] = "return";
|
|
6
|
+
Keys[Keys["escape"] = 27] = "escape";
|
|
7
|
+
Keys[Keys["left"] = 37] = "left";
|
|
8
|
+
Keys[Keys["right"] = 39] = "right";
|
|
9
|
+
})(Keys || (Keys = {}));
|
|
10
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoia2V5cy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3N3aW1sYW5lL25neC1kYXRhdGFibGUvc3JjL2xpYi91dGlscy9rZXlzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE1BQU0sQ0FBTixJQUFZLElBT1g7QUFQRCxXQUFZLElBQUk7SUFDZCw0QkFBTyxDQUFBO0lBQ1AsZ0NBQVMsQ0FBQTtJQUNULG9DQUFXLENBQUE7SUFDWCxvQ0FBVyxDQUFBO0lBQ1gsZ0NBQVMsQ0FBQTtJQUNULGtDQUFVLENBQUE7QUFDWixDQUFDLEVBUFcsSUFBSSxLQUFKLElBQUksUUFPZiIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCBlbnVtIEtleXMge1xuICB1cCA9IDM4LFxuICBkb3duID0gNDAsXG4gIHJldHVybiA9IDEzLFxuICBlc2NhcGUgPSAyNyxcbiAgbGVmdCA9IDM3LFxuICByaWdodCA9IDM5XG59XG4iXX0=
|