@colijnit/corecomponents_v12 12.0.21 → 12.0.24

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.
Files changed (87) hide show
  1. package/bundles/colijnit-corecomponents_v12.umd.js +988 -158
  2. package/bundles/colijnit-corecomponents_v12.umd.js.map +1 -1
  3. package/colijnit-corecomponents_v12-12.0.24.tgz +0 -0
  4. package/colijnit-corecomponents_v12.d.ts +15 -9
  5. package/colijnit-corecomponents_v12.metadata.json +1 -1
  6. package/esm2015/colijnit-corecomponents_v12.js +16 -10
  7. package/esm2015/lib/components/base/base-input.component.js +43 -10
  8. package/esm2015/lib/components/base/commit-buttons/commit-buttons.component.js +92 -0
  9. package/esm2015/lib/components/base/commit-buttons/commit-buttons.module.js +19 -0
  10. package/esm2015/lib/components/button/button.component.js +1 -1
  11. package/esm2015/lib/components/carousel-3d/carousel-3d.component.js +2 -6
  12. package/esm2015/lib/components/co-dialog-wizard/co-dialog-wizard.component.js +51 -0
  13. package/esm2015/lib/components/co-dialog-wizard/co-dialog-wizard.module.js +17 -0
  14. package/esm2015/lib/components/drop-down-list/drop-down-list.component.js +4 -1
  15. package/esm2015/lib/components/form/form.component.js +8 -3
  16. package/esm2015/lib/components/grid/base/base-grid.component.js +7 -3
  17. package/esm2015/lib/components/grid/base/base-inline-edit-grid.component.js +47 -3
  18. package/esm2015/lib/components/grid/base/base-selection-grid.component.js +12 -2
  19. package/esm2015/lib/components/grid/co-grid.component.js +35 -32
  20. package/esm2015/lib/components/grid/co-grid.module.js +4 -2
  21. package/esm2015/lib/components/grid-toolbar/grid-toolbar.component.js +41 -0
  22. package/esm2015/lib/components/grid-toolbar/grid-toolbar.module.js +23 -0
  23. package/esm2015/lib/components/input-checkbox/input-checkbox.component.js +4 -1
  24. package/esm2015/lib/components/input-checkbox-multi-select/input-checkbox-multi-select.component.js +4 -1
  25. package/esm2015/lib/components/input-combo-box/input-combo-box.component.js +5 -4
  26. package/esm2015/lib/components/input-date-picker/input-date-picker.component.js +4 -1
  27. package/esm2015/lib/components/input-listbox/input-listbox.component.js +4 -1
  28. package/esm2015/lib/components/input-number-picker/input-number-picker.component.js +22 -24
  29. package/esm2015/lib/components/input-radio-button/input-radio-button.component.js +4 -1
  30. package/esm2015/lib/components/input-text/input-text.component.js +11 -13
  31. package/esm2015/lib/components/input-text/input-text.module.js +4 -2
  32. package/esm2015/lib/components/input-textarea/input-textarea.component.js +4 -1
  33. package/esm2015/lib/components/multi-select-list/multi-select-list.component.js +4 -1
  34. package/esm2015/lib/components/simple-grid/base-simple-grid.component.js +86 -0
  35. package/esm2015/lib/components/simple-grid/simple-grid-cell.component.js +163 -0
  36. package/esm2015/lib/components/simple-grid/simple-grid-column.directive.js +43 -4
  37. package/esm2015/lib/components/simple-grid/simple-grid.component.js +257 -59
  38. package/esm2015/lib/components/simple-grid/simple-grid.module.js +11 -2
  39. package/esm2015/lib/core/constant/number-inputs-key-down-white-list.js +2 -1
  40. package/esm2015/public-api.js +3 -1
  41. package/fesm2015/colijnit-corecomponents_v12.js +1032 -205
  42. package/fesm2015/colijnit-corecomponents_v12.js.map +1 -1
  43. package/lib/components/base/base-input.component.d.ts +5 -2
  44. package/lib/components/base/commit-buttons/commit-buttons.component.d.ts +19 -0
  45. package/lib/components/base/commit-buttons/commit-buttons.module.d.ts +2 -0
  46. package/lib/components/base/commit-buttons/style/_layout.scss +127 -0
  47. package/lib/components/base/commit-buttons/style/_material-definition.scss +5 -0
  48. package/lib/components/base/commit-buttons/style/_theme.scss +34 -0
  49. package/lib/components/base/commit-buttons/style/material.scss +4 -0
  50. package/lib/components/co-dialog/style/_layout.scss +3 -0
  51. package/lib/components/co-dialog-wizard/co-dialog-wizard.component.d.ts +9 -0
  52. package/lib/components/co-dialog-wizard/co-dialog-wizard.module.d.ts +2 -0
  53. package/lib/components/co-dialog-wizard/style/_layout.scss +51 -0
  54. package/lib/components/co-dialog-wizard/style/_material-definition.scss +25 -0
  55. package/lib/components/co-dialog-wizard/style/_theme.scss +16 -0
  56. package/lib/components/co-dialog-wizard/style/material.scss +5 -0
  57. package/lib/components/collapsible/style/_layout.scss +1 -1
  58. package/lib/components/collapsible/style/_material-definition.scss +1 -0
  59. package/lib/components/form/form.component.d.ts +1 -0
  60. package/lib/components/grid/base/base-grid.component.d.ts +3 -0
  61. package/lib/components/grid/base/base-inline-edit-grid.component.d.ts +11 -2
  62. package/lib/components/grid/base/base-selection-grid.component.d.ts +4 -0
  63. package/lib/components/grid-toolbar/grid-toolbar.component.d.ts +13 -0
  64. package/lib/components/grid-toolbar/grid-toolbar.module.d.ts +2 -0
  65. package/lib/components/grid-toolbar/style/_layout.scss +10 -0
  66. package/lib/components/grid-toolbar/style/_material-definition.scss +0 -0
  67. package/lib/components/grid-toolbar/style/_theme.scss +5 -0
  68. package/lib/components/grid-toolbar/style/material.scss +5 -0
  69. package/lib/components/input-combo-box/input-combo-box.component.d.ts +0 -1
  70. package/lib/components/input-number-picker/input-number-picker.component.d.ts +1 -6
  71. package/lib/components/input-radio-button/style/_material-definition.scss +1 -1
  72. package/lib/components/input-text/style/_layout.scss +0 -32
  73. package/lib/components/input-text/style/_material-definition.scss +0 -3
  74. package/lib/components/input-text/style/_theme.scss +0 -16
  75. package/lib/components/input-text/style/material.scss +1 -0
  76. package/lib/components/simple-grid/base-simple-grid.component.d.ts +31 -0
  77. package/lib/components/simple-grid/simple-grid-cell.component.d.ts +28 -0
  78. package/lib/components/simple-grid/simple-grid-column.directive.d.ts +15 -2
  79. package/lib/components/simple-grid/simple-grid.component.d.ts +39 -22
  80. package/lib/components/simple-grid/style/_layout.scss +23 -0
  81. package/lib/components/simple-grid/style/_material-definition.scss +13 -4
  82. package/lib/components/simple-grid/style/_theme.scss +17 -0
  83. package/lib/components/simple-grid/style/material.scss +1 -0
  84. package/lib/style/_input.mixins.scss +1 -1
  85. package/lib/style/_variables.scss +5 -1
  86. package/package.json +2 -2
  87. package/public-api.d.ts +2 -0
@@ -0,0 +1,163 @@
1
+ import { ChangeDetectionStrategy, ChangeDetectorRef, Component, EventEmitter, HostBinding, HostListener, Input, Output, ViewChild, ViewEncapsulation } from "@angular/core";
2
+ import { ColumnAlign } from "./simple-grid-column.directive";
3
+ import { BaseInputComponent } from "../base/base-input.component";
4
+ export class SimpleGridCellComponent {
5
+ constructor(_changeDetector) {
6
+ this._changeDetector = _changeDetector;
7
+ this.defaultTextAlign = ColumnAlign.Left;
8
+ this.editMode = false;
9
+ this.cellClick = new EventEmitter();
10
+ this._fieldEditMode = false;
11
+ this._focused = false;
12
+ }
13
+ set editTemplateContent(template) {
14
+ if (template) {
15
+ this._editTemplate = template;
16
+ this._setFocusComponent();
17
+ }
18
+ }
19
+ set noEditTemplateContent(template) {
20
+ if (template) {
21
+ this._template = template;
22
+ this._setFocusComponent();
23
+ }
24
+ }
25
+ set noTemplateContent(template) {
26
+ if (template) {
27
+ this._inputTemplate = template;
28
+ this._setFocusComponent();
29
+ }
30
+ }
31
+ set fieldEditMode(value) {
32
+ this._fieldEditMode = value;
33
+ this._setFocusComponent();
34
+ }
35
+ get fieldEditMode() {
36
+ return this._fieldEditMode;
37
+ }
38
+ showClass() {
39
+ return true;
40
+ }
41
+ handleClick(event) {
42
+ if (this.column && !this.column.readonly) {
43
+ this.cellClick.next();
44
+ }
45
+ }
46
+ _setFocusComponent() {
47
+ if (this.editMode && this.fieldEditMode) {
48
+ const element = this._getElement();
49
+ if (element) {
50
+ const focusEvent = this._createNewEvent(element, 'focus');
51
+ element.focus();
52
+ element.dispatchEvent(focusEvent);
53
+ this._focused = true;
54
+ }
55
+ }
56
+ else {
57
+ if (this._focused) {
58
+ const element = this._getElement();
59
+ if (element) {
60
+ const blurEvent = this._createNewEvent(element, 'blur');
61
+ element.blur();
62
+ element.dispatchEvent(blurEvent);
63
+ }
64
+ this._focused = false;
65
+ }
66
+ }
67
+ this._detectChanges();
68
+ }
69
+ _getFirstFormInput(parent) {
70
+ if (parent) {
71
+ const collection = Array.from(parent.getElementsByTagName('input'));
72
+ const otherCollection = Array.from(parent.getElementsByTagName('textarea'));
73
+ otherCollection.map(o => collection.push(o));
74
+ if (collection.length > 0) {
75
+ return collection[0];
76
+ }
77
+ }
78
+ }
79
+ _createNewEvent(element, eventType) {
80
+ let event;
81
+ if ("createEvent" in document) {
82
+ event = document.createEvent("Event");
83
+ event.initEvent(eventType, true, true);
84
+ }
85
+ else if ("Event" in window) {
86
+ event = new Event(eventType, { bubbles: true, cancelable: true });
87
+ }
88
+ return event;
89
+ }
90
+ _getElement() {
91
+ let templ;
92
+ if (this._editTemplate) {
93
+ templ = this._editTemplate;
94
+ }
95
+ else if (this._template) {
96
+ templ = this._template;
97
+ }
98
+ else {
99
+ templ = this._inputTemplate;
100
+ }
101
+ if (templ) {
102
+ if (templ && templ.elementRef) {
103
+ const inputElement = this._getFirstFormInput(templ.elementRef.nativeElement.parentElement);
104
+ if (inputElement) {
105
+ return inputElement;
106
+ }
107
+ }
108
+ }
109
+ }
110
+ _detectChanges() {
111
+ this._changeDetector.detectChanges();
112
+ }
113
+ }
114
+ SimpleGridCellComponent.decorators = [
115
+ { type: Component, args: [{
116
+ selector: "co-simple-grid-cell",
117
+ template: `
118
+ <div class="simple-grid-column-cell-value" [ngClass]="column.textAlign ? column.textAlign : defaultTextAlign">
119
+ <ng-container *ngIf="editMode; else noInlineEdit">
120
+ <ng-container #editTemplate *ngIf="column.editTemplate; else noEditTemplate"
121
+ [ngTemplateOutlet]="column.editTemplate"
122
+ [ngTemplateOutletContext]="{value: row[column.field], row: row}"></ng-container>
123
+ <ng-template #noEditTemplate>
124
+ <ng-container *ngIf="column.template; else noTemplate">
125
+ <ng-container [ngTemplateOutlet]="column.template"
126
+ [ngTemplateOutletContext]="{value: row[column.field], row: row}"></ng-container>
127
+ </ng-container>
128
+ <ng-template #noTemplate>
129
+ <co-input-text [(model)]="row[column.field]" [required]="column.required"></co-input-text>
130
+ </ng-template>
131
+ </ng-template>
132
+ </ng-container>
133
+ <ng-template #noInlineEdit>
134
+ <ng-container *ngIf="column.template; else noTemplate">
135
+ <ng-container [ngTemplateOutlet]="column.template"
136
+ [ngTemplateOutletContext]="{value: row[column.field], row: row}"></ng-container>
137
+ </ng-container>
138
+ <ng-template #noTemplate>
139
+ <div [textContent]="column.getFieldValue(row[column.field])"></div>
140
+ </ng-template>
141
+ </ng-template>
142
+ </div>
143
+ `,
144
+ encapsulation: ViewEncapsulation.None,
145
+ changeDetection: ChangeDetectionStrategy.OnPush
146
+ },] }
147
+ ];
148
+ SimpleGridCellComponent.ctorParameters = () => [
149
+ { type: ChangeDetectorRef }
150
+ ];
151
+ SimpleGridCellComponent.propDecorators = {
152
+ editTemplateContent: [{ type: ViewChild, args: ["editTemplate", { read: BaseInputComponent },] }],
153
+ noEditTemplateContent: [{ type: ViewChild, args: ["noEditTemplate",] }],
154
+ noTemplateContent: [{ type: ViewChild, args: ["noTemplate",] }],
155
+ column: [{ type: Input }],
156
+ row: [{ type: Input }],
157
+ editMode: [{ type: Input }],
158
+ fieldEditMode: [{ type: Input }],
159
+ cellClick: [{ type: Output }],
160
+ showClass: [{ type: HostBinding, args: ["class.co-simple-grid-cell",] }],
161
+ handleClick: [{ type: HostListener, args: ['click', ['$event'],] }]
162
+ };
163
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2ltcGxlLWdyaWQtY2VsbC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jb3JlY29tcG9uZW50cy9zcmMvbGliL2NvbXBvbmVudHMvc2ltcGxlLWdyaWQvc2ltcGxlLWdyaWQtY2VsbC5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUNMLHVCQUF1QixFQUN2QixpQkFBaUIsRUFDakIsU0FBUyxFQUNULFlBQVksRUFDWixXQUFXLEVBQ1gsWUFBWSxFQUNaLEtBQUssRUFDTCxNQUFNLEVBRU4sU0FBUyxFQUNULGlCQUFpQixFQUNsQixNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQUUsV0FBVyxFQUE2QixNQUFNLGdDQUFnQyxDQUFDO0FBQ3hGLE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLDhCQUE4QixDQUFDO0FBa0NsRSxNQUFNLE9BQU8sdUJBQXVCO0lBZ0VsQyxZQUFvQixlQUFrQztRQUFsQyxvQkFBZSxHQUFmLGVBQWUsQ0FBbUI7UUEvRHRDLHFCQUFnQixHQUFnQixXQUFXLENBQUMsSUFBSSxDQUFDO1FBOEIxRCxhQUFRLEdBQVksS0FBSyxDQUFDO1FBYTFCLGNBQVMsR0FBdUIsSUFBSSxZQUFZLEVBQVEsQ0FBQztRQWN4RCxtQkFBYyxHQUFZLEtBQUssQ0FBQztRQUNoQyxhQUFRLEdBQVksS0FBSyxDQUFDO0lBTWxDLENBQUM7SUE5REQsSUFBMkQsbUJBQW1CLENBQUMsUUFBUTtRQUNyRixJQUFJLFFBQVEsRUFBRTtZQUNaLElBQUksQ0FBQyxhQUFhLEdBQUcsUUFBUSxDQUFDO1lBQzlCLElBQUksQ0FBQyxrQkFBa0IsRUFBRSxDQUFDO1NBQzNCO0lBQ0gsQ0FBQztJQUVELElBQWlDLHFCQUFxQixDQUFDLFFBQVE7UUFDN0QsSUFBSSxRQUFRLEVBQUU7WUFDWixJQUFJLENBQUMsU0FBUyxHQUFHLFFBQVEsQ0FBQztZQUMxQixJ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QixTQUFTLFNBQUMsWUFBWTtxQkFPdEIsS0FBSztrQkFHTCxLQUFLO3VCQUdMLEtBQUs7NEJBR0wsS0FBSzt3QkFVTCxNQUFNO3dCQUdOLFdBQVcsU0FBQywyQkFBMkI7MEJBS3ZDLFlBQVksU0FBQyxPQUFPLEVBQUUsQ0FBQyxRQUFRLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xyXG4gIENoYW5nZURldGVjdGlvblN0cmF0ZWd5LFxyXG4gIENoYW5nZURldGVjdG9yUmVmLFxyXG4gIENvbXBvbmVudCxcclxuICBFdmVudEVtaXR0ZXIsXHJcbiAgSG9zdEJpbmRpbmcsXHJcbiAgSG9zdExpc3RlbmVyLFxyXG4gIElucHV0LFxyXG4gIE91dHB1dCxcclxuICBUZW1wbGF0ZVJlZixcclxuICBWaWV3Q2hpbGQsXHJcbiAgVmlld0VuY2Fwc3VsYXRpb25cclxufSBmcm9tIFwiQGFuZ3VsYXIvY29yZVwiO1xyXG5pbXBvcnQgeyBDb2x1bW5BbGlnbiwgU2ltcGxlR3JpZENvbHVtbkRpcmVjdGl2ZSB9IGZyb20gXCIuL3NpbXBsZS1ncmlkLWNvbHVtbi5kaXJlY3RpdmVcIjtcclxuaW1wb3J0IHsgQmFzZUlucHV0Q29tcG9uZW50IH0gZnJvbSBcIi4uL2Jhc2UvYmFzZS1pbnB1dC5jb21wb25lbnRcIjtcclxuXHJcbkBDb21wb25lbnQoe1xyXG4gIHNlbGVjdG9yOiBcImNvLXNpbXBsZS1ncmlkLWNlbGxcIixcclxuICB0ZW1wbGF0ZTogYFxyXG4gICAgPGRpdiBjbGFzcz1cInNpbXBsZS1ncmlkLWNvbHVtbi1jZWxsLXZhbHVlXCIgW25nQ2xhc3NdPVwiY29sdW1uLnRleHRBbGlnbiA/IGNvbHVtbi50ZXh0QWxpZ24gOiBkZWZhdWx0VGV4dEFsaWduXCI+XHJcbiAgICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCJlZGl0TW9kZTsgZWxzZSBub0lubGluZUVkaXRcIj5cclxuICAgICAgICA8bmctY29udGFpbmVyICNlZGl0VGVtcGxhdGUgKm5nSWY9XCJjb2x1bW4uZWRpdFRlbXBsYXRlOyBlbHNlIG5vRWRpdFRlbXBsYXRlXCJcclxuICAgICAgICAgICAgICAgICAgICAgIFtuZ1RlbXBsYXRlT3V0bGV0XT1cImNvbHVtbi5lZGl0VGVtcGxhdGVcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgW25nVGVtcGxhdGVPdXRsZXRDb250ZXh0XT1cInt2YWx1ZTogcm93W2NvbHVtbi5maWVsZF0sIHJvdzogcm93fVwiPjwvbmctY29udGFpbmVyPlxyXG4gICAgICAgIDxuZy10ZW1wbGF0ZSAjbm9FZGl0VGVtcGxhdGU+XHJcbiAgICAgICAgICA8bmctY29udGFpbmVyICpuZ0lmPVwiY29sdW1uLnRlbXBsYXRlOyBlbHNlIG5vVGVtcGxhdGVcIj5cclxuICAgICAgICAgICAgPG5nLWNvbnRhaW5lciBbbmdUZW1wbGF0ZU91dGxldF09XCJjb2x1bW4udGVtcGxhdGVcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgIFtuZ1RlbXBsYXRlT3V0bGV0Q29udGV4dF09XCJ7dmFsdWU6IHJvd1tjb2x1bW4uZmllbGRdLCByb3c6IHJvd31cIj48L25nLWNvbnRhaW5lcj5cclxuICAgICAgICAgIDwvbmctY29udGFpbmVyPlxyXG4gICAgICAgICAgPG5nLXRlbXBsYXRlICNub1RlbXBsYXRlPlxyXG4gICAgICAgICAgICA8Y28taW5wdXQtdGV4dCBbKG1vZGVsKV09XCJyb3dbY29sdW1uLmZpZWxkXVwiIFtyZXF1aXJlZF09XCJjb2x1bW4ucmVxdWlyZWRcIj48L2NvLWlucHV0LXRleHQ+XHJcbiAgICAgICAgICA8L25nLXRlbXBsYXRlPlxyXG4gICAgICAgIDwvbmctdGVtcGxhdGU+XHJcbiAgICAgIDwvbmctY29udGFpbmVyPlxyXG4gICAgICA8bmctdGVtcGxhdGUgI25vSW5saW5lRWRpdD5cclxuICAgICAgICA8bmctY29udGFpbmVyICpuZ0lmPVwiY29sdW1uLnRlbXBsYXRlOyBlbHNlIG5vVGVtcGxhdGVcIj5cclxuICAgICAgICAgIDxuZy1jb250YWluZXIgW25nVGVtcGxhdGVPdXRsZXRdPVwiY29sdW1uLnRlbXBsYXRlXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgW25nVGVtcGxhdGVPdXRsZXRDb250ZXh0XT1cInt2YWx1ZTogcm93W2NvbHVtbi5maWVsZF0sIHJvdzogcm93fVwiPjwvbmctY29udGFpbmVyPlxyXG4gICAgICAgIDwvbmctY29udGFpbmVyPlxyXG4gICAgICAgIDxuZy10ZW1wbGF0ZSAjbm9UZW1wbGF0ZT5cclxuICAgICAgICAgIDxkaXYgW3RleHRDb250ZW50XT1cImNvbHVtbi5nZXRGaWVsZFZhbHVlKHJvd1tjb2x1bW4uZmllbGRdKVwiPjwvZGl2PlxyXG4gICAgICAgIDwvbmctdGVtcGxhdGU+XHJcbiAgICAgIDwvbmctdGVtcGxhdGU+XHJcbiAgICA8L2Rpdj5cclxuICBgLFxyXG4gIGVuY2Fwc3VsYXRpb246IFZpZXdFbmNhcHN1bGF0aW9uLk5vbmUsXHJcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2hcclxufSlcclxuZXhwb3J0IGNsYXNzIFNpbXBsZUdyaWRDZWxsQ29tcG9uZW50IHtcclxuICBwdWJsaWMgcmVhZG9ubHkgZGVmYXVsdFRleHRBbGlnbjogQ29sdW1uQWxpZ24gPSBDb2x1bW5BbGlnbi5MZWZ0O1xyXG5cclxuICBAVmlld0NoaWxkKFwiZWRpdFRlbXBsYXRlXCIsIHtyZWFkOiBCYXNlSW5wdXRDb21wb25lbnR9KSBzZXQgZWRpdFRlbXBsYXRlQ29udGVudCh0ZW1wbGF0ZSkge1xyXG4gICAgaWYgKHRlbXBsYXRlKSB7XHJcbiAgICAgIHRoaXMuX2VkaXRUZW1wbGF0ZSA9IHRlbXBsYXRlO1xyXG4gICAgICB0aGlzLl9zZXRGb2N1c0NvbXBvbmVudCgpO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgQFZpZXdDaGlsZChcIm5vRWRpdFRlbXBsYXRlXCIpIHNldCBub0VkaXRUZW1wbGF0ZUNvbnRlbnQodGVtcGxhdGUpIHtcclxuICAgIGlmICh0ZW1wbGF0ZSkge1xyXG4gICAgICB0aGlzLl90ZW1wbGF0ZSA9IHRlbXBsYXRlO1xyXG4gICAgICB0aGlzLl9zZXRGb2N1c0NvbXBvbmVudCgpO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgQFZpZXdDaGlsZChcIm5vVGVtcGxhdGVcIikgc2V0IG5vVGVtcGxhdGVDb250ZW50KHRlbXBsYXRlKSB7XHJcbiAgICBpZiAodGVtcGxhdGUpIHtcclxuICAgICAgdGhpcy5faW5wdXRUZW1wbGF0ZSA9IHRlbXBsYXRlO1xyXG4gICAgICB0aGlzLl9zZXRGb2N1c0NvbXBvbmVudCgpO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgQElucHV0KClcclxuICBwdWJsaWMgY29sdW1uOiBTaW1wbGVHcmlkQ29sdW1uRGlyZWN0aXZlO1xyXG5cclxuICBASW5wdXQoKVxyXG4gIHB1YmxpYyByb3c6IHt9O1xyXG5cclxuICBASW5wdXQoKVxyXG4gIHB1YmxpYyBlZGl0TW9kZTogYm9vbGVhbiA9IGZhbHNlO1xyXG5cclxuICBASW5wdXQoKVxyXG4gIHB1YmxpYyBzZXQgZmllbGRFZGl0TW9kZSh2YWx1ZTogYm9vbGVhbikge1xyXG4gICAgdGhpcy5fZmllbGRFZGl0TW9kZSA9IHZhbHVlO1xyXG4gICAgdGhpcy5fc2V0Rm9jdXNDb21wb25lbnQoKTtcclxuICB9XHJcblxyXG4gIHB1YmxpYyBnZXQgZmllbGRFZGl0TW9kZSgpOiBib29sZWFuIHtcclxuICAgIHJldHVybiB0aGlzLl9maWVsZEVkaXRNb2RlO1xyXG4gIH1cclxuXHJcbiAgQE91dHB1dCgpXHJcbiAgcHVibGljIGNlbGxDbGljazogRXZlbnRFbWl0dGVyPHZvaWQ+ID0gbmV3IEV2ZW50RW1pdHRlcjx2b2lkPigpO1xyXG5cclxuICBASG9zdEJpbmRpbmcoXCJjbGFzcy5jby1zaW1wbGUtZ3JpZC1jZWxsXCIpXHJcbiAgcHVibGljIHNob3dDbGFzcygpOiBib29sZWFuIHtcclxuICAgIHJldHVybiB0cnVlO1xyXG4gIH1cclxuXHJcbiAgQEhvc3RMaXN0ZW5lcignY2xpY2snLCBbJyRldmVudCddKVxyXG4gIHB1YmxpYyBoYW5kbGVDbGljayhldmVudDogTW91c2VFdmVudCk6IHZvaWQge1xyXG4gICAgaWYgKHRoaXMuY29sdW1uICYmICF0aGlzLmNvbHVtbi5yZWFkb25seSkge1xyXG4gICAgICB0aGlzLmNlbGxDbGljay5uZXh0KCk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIF9maWVsZEVkaXRNb2RlOiBib29sZWFuID0gZmFsc2U7XHJcbiAgcHJpdmF0ZSBfZm9jdXNlZDogYm9vbGVhbiA9IGZhbHNlO1xyXG4gIHByaXZhdGUgX2VkaXRUZW1wbGF0ZTogVGVtcGxhdGVSZWY8YW55PjtcclxuICBwcml2YXRlIF90ZW1wbGF0ZTogVGVtcGxhdGVSZWY8YW55PjtcclxuICBwcml2YXRlIF9pbnB1dFRlbXBsYXRlOiBUZW1wbGF0ZVJlZjxhbnk+O1xyXG5cclxuICBjb25zdHJ1Y3Rvcihwcml2YXRlIF9jaGFuZ2VEZXRlY3RvcjogQ2hhbmdlRGV0ZWN0b3JSZWYpIHtcclxuICB9XHJcblxyXG4gIHByaXZhdGUgX3NldEZvY3VzQ29tcG9uZW50KCk6IHZvaWQge1xyXG4gICAgaWYgKHRoaXMuZWRpdE1vZGUgJiYgdGhpcy5maWVsZEVkaXRNb2RlKSB7XHJcbiAgICAgIGNvbnN0IGVsZW1lbnQgPSB0aGlzLl9nZXRFbGVtZW50KCk7XHJcbiAgICAgIGlmIChlbGVtZW50KSB7XHJcbiAgICAgICAgY29uc3QgZm9jdXNFdmVudCA9IHRoaXMuX2NyZWF0ZU5ld0V2ZW50KGVsZW1lbnQsICdmb2N1cycpO1xyXG4gICAgICAgIGVsZW1lbnQuZm9jdXMoKTtcclxuICAgICAgICBlbGVtZW50LmRpc3BhdGNoRXZlbnQoZm9jdXNFdmVudCk7XHJcbiAgICAgICAgdGhpcy5fZm9jdXNlZCA9IHRydWU7XHJcbiAgICAgIH1cclxuICAgIH0gZWxzZSB7XHJcbiAgICAgIGlmICh0aGlzLl9mb2N1c2VkKSB7XHJcbiAgICAgICAgY29uc3QgZWxlbWVudCA9IHRoaXMuX2dldEVsZW1lbnQoKTtcclxuICAgICAgICBpZiAoZWxlbWVudCkge1xyXG4gICAgICAgICAgY29uc3QgYmx1ckV2ZW50ID0gdGhpcy5fY3JlYXRlTmV3RXZlbnQoZWxlbWVudCwgJ2JsdXInKTtcclxuICAgICAgICAgIGVsZW1lbnQuYmx1cigpO1xyXG4gICAgICAgICAgZWxlbWVudC5kaXNwYXRjaEV2ZW50KGJsdXJFdmVudCk7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIHRoaXMuX2ZvY3VzZWQgPSBmYWxzZTtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gICAgdGhpcy5fZGV0ZWN0Q2hhbmdlcygpO1xyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSBfZ2V0Rmlyc3RGb3JtSW5wdXQocGFyZW50OiBhbnkpOiBhbnkge1xyXG4gICAgaWYgKHBhcmVudCkge1xyXG4gICAgICBjb25zdCBjb2xsZWN0aW9uID0gQXJyYXkuZnJvbShwYXJlbnQuZ2V0RWxlbWVudHNCeVRhZ05hbWUoJ2lucHV0JykpO1xyXG4gICAgICBjb25zdCBvdGhlckNvbGxlY3Rpb24gPSBBcnJheS5mcm9tKHBhcmVudC5nZXRFbGVtZW50c0J5VGFnTmFtZSgndGV4dGFyZWEnKSk7XHJcbiAgICAgIG90aGVyQ29sbGVjdGlvbi5tYXAobyA9PiBjb2xsZWN0aW9uLnB1c2gobykpO1xyXG4gICAgICBpZiAoY29sbGVjdGlvbi5sZW5ndGggPiAwKSB7XHJcbiAgICAgICAgcmV0dXJuIGNvbGxlY3Rpb25bMF07XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcblxyXG4gIHByaXZhdGUgX2NyZWF0ZU5ld0V2ZW50KGVsZW1lbnQ6IGFueSwgZXZlbnRUeXBlOiBzdHJpbmcpOiBFdmVudCB7XHJcbiAgICBsZXQgZXZlbnQ7XHJcbiAgICBpZiAoXCJjcmVhdGVFdmVudFwiIGluIGRvY3VtZW50KSB7XHJcbiAgICAgIGV2ZW50ID0gZG9jdW1lbnQuY3JlYXRlRXZlbnQoXCJFdmVudFwiKTtcclxuICAgICAgZXZlbnQuaW5pdEV2ZW50KGV2ZW50VHlwZSwgdHJ1ZSwgdHJ1ZSk7XHJcbiAgICB9IGVsc2UgaWYgKFwiRXZlbnRcIiBpbiB3aW5kb3cpIHtcclxuICAgICAgZXZlbnQgPSBuZXcgRXZlbnQoZXZlbnRUeXBlLCB7IGJ1YmJsZXM6IHRydWUsIGNhbmNlbGFibGU6IHRydWUgfSk7XHJcbiAgICB9XHJcbiAgICByZXR1cm4gZXZlbnQ7XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIF9nZXRFbGVtZW50KCk6IEhUTUxFbGVtZW50IHtcclxuICAgIGxldCB0ZW1wbDogVGVtcGxhdGVSZWY8YW55PjtcclxuICAgIGlmICh0aGlzLl9lZGl0VGVtcGxhdGUpIHtcclxuICAgICAgdGVtcGwgPSB0aGlzLl9lZGl0VGVtcGxhdGU7XHJcbiAgICB9IGVsc2UgaWYgKHRoaXMuX3RlbXBsYXRlKSB7XHJcbiAgICAgIHRlbXBsID0gdGhpcy5fdGVtcGxhdGU7XHJcbiAgICB9IGVsc2Uge1xyXG4gICAgICB0ZW1wbCA9IHRoaXMuX2lucHV0VGVtcGxhdGU7XHJcbiAgICB9XHJcbiAgICBpZiAodGVtcGwpIHtcclxuICAgICAgaWYgKHRlbXBsICYmIHRlbXBsLmVsZW1lbnRSZWYpIHtcclxuICAgICAgICBjb25zdCBpbnB1dEVsZW1lbnQgPSB0aGlzLl9nZXRGaXJzdEZvcm1JbnB1dCh0ZW1wbC5lbGVtZW50UmVmLm5hdGl2ZUVsZW1lbnQucGFyZW50RWxlbWVudCk7XHJcbiAgICAgICAgaWYgKGlucHV0RWxlbWVudCkge1xyXG4gICAgICAgICAgcmV0dXJuIGlucHV0RWxlbWVudDtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcblxyXG4gIHByaXZhdGUgX2RldGVjdENoYW5nZXMoKTogdm9pZCB7XHJcbiAgICB0aGlzLl9jaGFuZ2VEZXRlY3Rvci5kZXRlY3RDaGFuZ2VzKCk7XHJcbiAgfVxyXG59XHJcbiJdfQ==
@@ -1,4 +1,4 @@
1
- import { ContentChild, Directive, Input, TemplateRef } from "@angular/core";
1
+ import { ContentChild, Directive, Input } from "@angular/core";
2
2
  export var ColumnAlign;
3
3
  (function (ColumnAlign) {
4
4
  ColumnAlign["Left"] = "left-align";
@@ -8,6 +8,10 @@ export var ColumnAlign;
8
8
  export class SimpleGridColumnDirective {
9
9
  constructor() {
10
10
  this.resizable = true;
11
+ this.required = false;
12
+ this.readonly = false;
13
+ this.order = 0;
14
+ this.singleColumn = false;
11
15
  }
12
16
  set template(template) {
13
17
  if (template) {
@@ -17,6 +21,33 @@ export class SimpleGridColumnDirective {
17
21
  get template() {
18
22
  return this._template;
19
23
  }
24
+ set editTemplate(template) {
25
+ if (template) {
26
+ this._editTemplate = template;
27
+ }
28
+ }
29
+ get editTemplate() {
30
+ return this._editTemplate;
31
+ }
32
+ ngOnInit() {
33
+ this._setSingleColumnProps();
34
+ }
35
+ getFieldValue(value) {
36
+ if (this.collection && this.displayField) {
37
+ const result = this.collection.find(c => c[this.codeField] === value);
38
+ if (result) {
39
+ return result[this.displayField];
40
+ }
41
+ }
42
+ return value;
43
+ }
44
+ _setSingleColumnProps() {
45
+ if (this.singleColumn) {
46
+ this.resizable = false;
47
+ this.readonly = true;
48
+ this.width = 0;
49
+ }
50
+ }
20
51
  }
21
52
  SimpleGridColumnDirective._MinManualResizeWidthPx = 50;
22
53
  SimpleGridColumnDirective.decorators = [
@@ -25,12 +56,20 @@ SimpleGridColumnDirective.decorators = [
25
56
  },] }
26
57
  ];
27
58
  SimpleGridColumnDirective.propDecorators = {
28
- template: [{ type: ContentChild, args: [TemplateRef,] }],
59
+ template: [{ type: ContentChild, args: ['template',] }],
60
+ editTemplate: [{ type: ContentChild, args: ['editTemplate',] }],
29
61
  headerText: [{ type: Input }],
30
62
  field: [{ type: Input }],
63
+ codeField: [{ type: Input }],
64
+ displayField: [{ type: Input }],
31
65
  textAlign: [{ type: Input }],
32
66
  format: [{ type: Input }],
33
67
  resizable: [{ type: Input }],
34
- width: [{ type: Input }]
68
+ required: [{ type: Input }],
69
+ width: [{ type: Input }],
70
+ readonly: [{ type: Input }],
71
+ collection: [{ type: Input }],
72
+ order: [{ type: Input }],
73
+ singleColumn: [{ type: Input }]
35
74
  };
36
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2ltcGxlLWdyaWQtY29sdW1uLmRpcmVjdGl2ZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NvcmVjb21wb25lbnRzL3NyYy9saWIvY29tcG9uZW50cy9zaW1wbGUtZ3JpZC9zaW1wbGUtZ3JpZC1jb2x1bW4uZGlyZWN0aXZlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBQyxZQUFZLEVBQUUsU0FBUyxFQUFFLEtBQUssRUFBRSxXQUFXLEVBQUMsTUFBTSxlQUFlLENBQUM7QUFFMUUsTUFBTSxDQUFOLElBQVksV0FJWDtBQUpELFdBQVksV0FBVztJQUNyQixrQ0FBbUIsQ0FBQTtJQUNuQixzQ0FBdUIsQ0FBQTtJQUN2QixvQ0FBcUIsQ0FBQTtBQUN2QixDQUFDLEVBSlcsV0FBVyxLQUFYLFdBQVcsUUFJdEI7QUFLRCxNQUFNLE9BQU8seUJBQXlCO0lBSHRDO1FBOEJTLGNBQVMsR0FBWSxJQUFJLENBQUM7SUFPbkMsQ0FBQztJQS9CQyxJQUNXLFFBQVEsQ0FBQyxRQUEwQjtRQUM1QyxJQUFJLFFBQVEsRUFBRTtZQUNaLElBQUksQ0FBQyxTQUFTLEdBQUcsUUFBUSxDQUFDO1NBQzNCO0lBQ0gsQ0FBQztJQUVELElBQVcsUUFBUTtRQUNqQixPQUFPLElBQUksQ0FBQyxTQUFTLENBQUM7SUFDeEIsQ0FBQzs7QUFYYyxpREFBdUIsR0FBVyxFQUFFLENBQUM7O1lBSnJELFNBQVMsU0FBQztnQkFDVCxRQUFRLEVBQUUsdUJBQXVCO2FBQ2xDOzs7dUJBSUUsWUFBWSxTQUFDLFdBQVc7eUJBV3hCLEtBQUs7b0JBR0wsS0FBSzt3QkFHTCxLQUFLO3FCQUdMLEtBQUs7d0JBR0wsS0FBSztvQkFHTCxLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtDb250ZW50Q2hpbGQsIERpcmVjdGl2ZSwgSW5wdXQsIFRlbXBsYXRlUmVmfSBmcm9tIFwiQGFuZ3VsYXIvY29yZVwiO1xyXG5cclxuZXhwb3J0IGVudW0gQ29sdW1uQWxpZ24ge1xyXG4gIExlZnQgPSBcImxlZnQtYWxpZ25cIixcclxuICBDZW50ZXIgPSBcImNlbnRlci1hbGlnblwiLFxyXG4gIFJpZ2h0ID0gXCJyaWdodC1hbGlnblwiXHJcbn1cclxuXHJcbkBEaXJlY3RpdmUoe1xyXG4gIHNlbGVjdG9yOiBcImNvLXNpbXBsZS1ncmlkLWNvbHVtblwiXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBTaW1wbGVHcmlkQ29sdW1uRGlyZWN0aXZlIHtcclxuICBwcml2YXRlIHN0YXRpYyBfTWluTWFudWFsUmVzaXplV2lkdGhQeDogbnVtYmVyID0gNTA7XHJcblxyXG4gIEBDb250ZW50Q2hpbGQoVGVtcGxhdGVSZWYpXHJcbiAgcHVibGljIHNldCB0ZW1wbGF0ZSh0ZW1wbGF0ZTogVGVtcGxhdGVSZWY8YW55Pikge1xyXG4gICAgaWYgKHRlbXBsYXRlKSB7XHJcbiAgICAgIHRoaXMuX3RlbXBsYXRlID0gdGVtcGxhdGU7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgZ2V0IHRlbXBsYXRlKCk6IFRlbXBsYXRlUmVmPGFueT4ge1xyXG4gICAgcmV0dXJuIHRoaXMuX3RlbXBsYXRlO1xyXG4gIH1cclxuXHJcbiAgQElucHV0KClcclxuICBwdWJsaWMgaGVhZGVyVGV4dDogc3RyaW5nO1xyXG5cclxuICBASW5wdXQoKVxyXG4gIHB1YmxpYyBmaWVsZDogc3RyaW5nO1xyXG5cclxuICBASW5wdXQoKVxyXG4gIHB1YmxpYyB0ZXh0QWxpZ246IENvbHVtbkFsaWduO1xyXG5cclxuICBASW5wdXQoKVxyXG4gIHB1YmxpYyBmb3JtYXQ6IHN0cmluZztcclxuXHJcbiAgQElucHV0KClcclxuICBwdWJsaWMgcmVzaXphYmxlOiBib29sZWFuID0gdHJ1ZTtcclxuXHJcbiAgQElucHV0KClcclxuICBwdWJsaWMgd2lkdGg6IG51bWJlcjtcclxuXHJcbiAgcHJpdmF0ZSBfdGVtcGxhdGU6IFRlbXBsYXRlUmVmPGFueT47XHJcblxyXG59XHJcbiJdfQ==
75
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2ltcGxlLWdyaWQtY29sdW1uLmRpcmVjdGl2ZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NvcmVjb21wb25lbnRzL3NyYy9saWIvY29tcG9uZW50cy9zaW1wbGUtZ3JpZC9zaW1wbGUtZ3JpZC1jb2x1bW4uZGlyZWN0aXZlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxZQUFZLEVBQUUsU0FBUyxFQUFFLEtBQUssRUFBdUIsTUFBTSxlQUFlLENBQUM7QUFFcEYsTUFBTSxDQUFOLElBQVksV0FJWDtBQUpELFdBQVksV0FBVztJQUNyQixrQ0FBbUIsQ0FBQTtJQUNuQixzQ0FBdUIsQ0FBQTtJQUN2QixvQ0FBcUIsQ0FBQTtBQUN2QixDQUFDLEVBSlcsV0FBVyxLQUFYLFdBQVcsUUFJdEI7QUFLRCxNQUFNLE9BQU8seUJBQXlCO0lBSHRDO1FBK0NTLGNBQVMsR0FBWSxJQUFJLENBQUM7UUFHMUIsYUFBUSxHQUFZLEtBQUssQ0FBQztRQU0xQixhQUFRLEdBQVksS0FBSyxDQUFDO1FBTTFCLFVBQUssR0FBVyxDQUFDLENBQUM7UUFHbEIsaUJBQVksR0FBWSxLQUFLLENBQUM7SUEwQnZDLENBQUM7SUFyRkMsSUFDVyxRQUFRLENBQUMsUUFBMEI7UUFDNUMsSUFBSSxRQUFRLEVBQUU7WUFDWixJQUFJLENBQUMsU0FBUyxHQUFHLFFBQVEsQ0FBQztTQUMzQjtJQUNILENBQUM7SUFFRCxJQUFXLFFBQVE7UUFDakIsT0FBTyxJQUFJLENBQUMsU0FBUyxDQUFDO0lBQ3hCLENBQUM7SUFFRCxJQUNXLFlBQVksQ0FBQyxRQUEwQjtRQUNoRCxJQUFJLFFBQVEsRUFBRTtZQUNaLElBQUksQ0FBQyxhQUFhLEdBQUcsUUFBUSxDQUFDO1NBQy9CO0lBQ0gsQ0FBQztJQUVELElBQVcsWUFBWTtRQUNyQixPQUFPLElBQUksQ0FBQyxhQUFhLENBQUM7SUFDNUIsQ0FBQztJQXlDRCxRQUFRO1FBQ04sSUFBSSxDQUFDLHFCQUFxQixFQUFFLENBQUE7SUFDOUIsQ0FBQztJQUVNLGFBQWEsQ0FBQyxLQUFVO1FBQzdCLElBQUksSUFBSSxDQUFDLFVBQVUsSUFBSSxJQUFJLENBQUMsWUFBWSxFQUFFO1lBQ3hDLE1BQU0sTUFBTSxHQUFHLElBQUksQ0FBQyxVQUFVLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsS0FBSyxLQUFLLENBQUMsQ0FBQztZQUN0RSxJQUFJLE1BQU0sRUFBRTtnQkFDVixPQUFPLE1BQU0sQ0FBQyxJQUFJLENBQUMsWUFBWSxDQUFDLENBQUM7YUFDbEM7U0FDRjtRQUNELE9BQU8sS0FBSyxDQUFDO0lBQ2YsQ0FBQztJQUtPLHFCQUFxQjtRQUMzQixJQUFJLElBQUksQ0FBQyxZQUFZLEVBQUM7WUFDcEIsSUFBSSxDQUFDLFNBQVMsR0FBRyxLQUFLLENBQUM7WUFDdkIsSUFBSSxDQUFDLFFBQVEsR0FBRyxJQUFJLENBQUM7WUFDckIsSUFBSSxDQUFDLEtBQUssR0FBRyxDQUFDLENBQUM7U0FDaEI7SUFDSCxDQUFDOztBQXRGYyxpREFBdUIsR0FBVyxFQUFFLENBQUM7O1lBSnJELFNBQVMsU0FBQztnQkFDVCxRQUFRLEVBQUUsdUJBQXVCO2FBQ2xDOzs7dUJBSUUsWUFBWSxTQUFDLFVBQVU7MkJBV3ZCLFlBQVksU0FBQyxjQUFjO3lCQVczQixLQUFLO29CQUdMLEtBQUs7d0JBR0wsS0FBSzsyQkFHTCxLQUFLO3dCQUdMLEtBQUs7cUJBR0wsS0FBSzt3QkFHTCxLQUFLO3VCQUdMLEtBQUs7b0JBR0wsS0FBSzt1QkFHTCxLQUFLO3lCQUdMLEtBQUs7b0JBR0wsS0FBSzsyQkFHTCxLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29udGVudENoaWxkLCBEaXJlY3RpdmUsIElucHV0LCBPbkluaXQsIFRlbXBsYXRlUmVmIH0gZnJvbSBcIkBhbmd1bGFyL2NvcmVcIjtcclxuXHJcbmV4cG9ydCBlbnVtIENvbHVtbkFsaWduIHtcclxuICBMZWZ0ID0gXCJsZWZ0LWFsaWduXCIsXHJcbiAgQ2VudGVyID0gXCJjZW50ZXItYWxpZ25cIixcclxuICBSaWdodCA9IFwicmlnaHQtYWxpZ25cIlxyXG59XHJcblxyXG5ARGlyZWN0aXZlKHtcclxuICBzZWxlY3RvcjogXCJjby1zaW1wbGUtZ3JpZC1jb2x1bW5cIlxyXG59KVxyXG5leHBvcnQgY2xhc3MgU2ltcGxlR3JpZENvbHVtbkRpcmVjdGl2ZSBpbXBsZW1lbnRzIE9uSW5pdCB7XHJcbiAgcHJpdmF0ZSBzdGF0aWMgX01pbk1hbnVhbFJlc2l6ZVdpZHRoUHg6IG51bWJlciA9IDUwO1xyXG5cclxuICBAQ29udGVudENoaWxkKCd0ZW1wbGF0ZScpXHJcbiAgcHVibGljIHNldCB0ZW1wbGF0ZSh0ZW1wbGF0ZTogVGVtcGxhdGVSZWY8YW55Pikge1xyXG4gICAgaWYgKHRlbXBsYXRlKSB7XHJcbiAgICAgIHRoaXMuX3RlbXBsYXRlID0gdGVtcGxhdGU7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgZ2V0IHRlbXBsYXRlKCk6IFRlbXBsYXRlUmVmPGFueT4ge1xyXG4gICAgcmV0dXJuIHRoaXMuX3RlbXBsYXRlO1xyXG4gIH1cclxuXHJcbiAgQENvbnRlbnRDaGlsZCgnZWRpdFRlbXBsYXRlJylcclxuICBwdWJsaWMgc2V0IGVkaXRUZW1wbGF0ZSh0ZW1wbGF0ZTogVGVtcGxhdGVSZWY8YW55Pikge1xyXG4gICAgaWYgKHRlbXBsYXRlKSB7XHJcbiAgICAgIHRoaXMuX2VkaXRUZW1wbGF0ZSA9IHRlbXBsYXRlO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgcHVibGljIGdldCBlZGl0VGVtcGxhdGUoKTogVGVtcGxhdGVSZWY8YW55PiB7XHJcbiAgICByZXR1cm4gdGhpcy5fZWRpdFRlbXBsYXRlO1xyXG4gIH1cclxuXHJcbiAgQElucHV0KClcclxuICBwdWJsaWMgaGVhZGVyVGV4dDogc3RyaW5nO1xyXG5cclxuICBASW5wdXQoKVxyXG4gIHB1YmxpYyBmaWVsZDogc3RyaW5nO1xyXG5cclxuICBASW5wdXQoKVxyXG4gIHB1YmxpYyBjb2RlRmllbGQ6IHN0cmluZztcclxuXHJcbiAgQElucHV0KClcclxuICBwdWJsaWMgZGlzcGxheUZpZWxkOiBzdHJpbmc7XHJcblxyXG4gIEBJbnB1dCgpXHJcbiAgcHVibGljIHRleHRBbGlnbjogQ29sdW1uQWxpZ247XHJcblxyXG4gIEBJbnB1dCgpXHJcbiAgcHVibGljIGZvcm1hdDogc3RyaW5nO1xyXG5cclxuICBASW5wdXQoKVxyXG4gIHB1YmxpYyByZXNpemFibGU6IGJvb2xlYW4gPSB0cnVlO1xyXG5cclxuICBASW5wdXQoKVxyXG4gIHB1YmxpYyByZXF1aXJlZDogYm9vbGVhbiA9IGZhbHNlO1xyXG5cclxuICBASW5wdXQoKVxyXG4gIHB1YmxpYyB3aWR0aDogbnVtYmVyO1xyXG5cclxuICBASW5wdXQoKVxyXG4gIHB1YmxpYyByZWFkb25seTogYm9vbGVhbiA9IGZhbHNlO1xyXG5cclxuICBASW5wdXQoKVxyXG4gIHB1YmxpYyBjb2xsZWN0aW9uOiB7fVtdO1xyXG5cclxuICBASW5wdXQoKVxyXG4gIHB1YmxpYyBvcmRlcjogbnVtYmVyID0gMDtcclxuXHJcbiAgQElucHV0KClcclxuICBwdWJsaWMgc2luZ2xlQ29sdW1uOiBib29sZWFuID0gZmFsc2U7XHJcblxyXG4gIG5nT25Jbml0KCk6dm9pZCB7XHJcbiAgICB0aGlzLl9zZXRTaW5nbGVDb2x1bW5Qcm9wcygpXHJcbiAgfVxyXG5cclxuICBwdWJsaWMgZ2V0RmllbGRWYWx1ZSh2YWx1ZTogYW55KTogc3RyaW5nIHtcclxuICAgIGlmICh0aGlzLmNvbGxlY3Rpb24gJiYgdGhpcy5kaXNwbGF5RmllbGQpIHtcclxuICAgICAgY29uc3QgcmVzdWx0ID0gdGhpcy5jb2xsZWN0aW9uLmZpbmQoYyA9PiBjW3RoaXMuY29kZUZpZWxkXSA9PT0gdmFsdWUpO1xyXG4gICAgICBpZiAocmVzdWx0KSB7XHJcbiAgICAgICAgcmV0dXJuIHJlc3VsdFt0aGlzLmRpc3BsYXlGaWVsZF07XHJcbiAgICAgIH1cclxuICAgIH1cclxuICAgIHJldHVybiB2YWx1ZTtcclxuICB9XHJcblxyXG4gIHByaXZhdGUgX3RlbXBsYXRlOiBUZW1wbGF0ZVJlZjxhbnk+O1xyXG4gIHByaXZhdGUgX2VkaXRUZW1wbGF0ZTogVGVtcGxhdGVSZWY8YW55PjtcclxuXHJcbiAgcHJpdmF0ZSBfc2V0U2luZ2xlQ29sdW1uUHJvcHMoKXtcclxuICAgIGlmICh0aGlzLnNpbmdsZUNvbHVtbil7XHJcbiAgICAgIHRoaXMucmVzaXphYmxlID0gZmFsc2U7XHJcbiAgICAgIHRoaXMucmVhZG9ubHkgPSB0cnVlO1xyXG4gICAgICB0aGlzLndpZHRoID0gMDtcclxuICAgIH1cclxuICB9XHJcbn1cclxuIl19