@colijnit/corecomponents_v12 12.0.21 → 12.0.22

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 (73) hide show
  1. package/bundles/colijnit-corecomponents_v12.umd.js +724 -53
  2. package/bundles/colijnit-corecomponents_v12.umd.js.map +1 -1
  3. package/colijnit-corecomponents_v12.d.ts +13 -9
  4. package/colijnit-corecomponents_v12.metadata.json +1 -1
  5. package/esm2015/colijnit-corecomponents_v12.js +14 -10
  6. package/esm2015/lib/components/base/base-input.component.js +4 -2
  7. package/esm2015/lib/components/button/button.component.js +1 -1
  8. package/esm2015/lib/components/carousel-3d/carousel-3d.component.js +2 -6
  9. package/esm2015/lib/components/co-dialog-wizard/co-dialog-wizard.component.js +51 -0
  10. package/esm2015/lib/components/co-dialog-wizard/co-dialog-wizard.module.js +17 -0
  11. package/esm2015/lib/components/drop-down-list/drop-down-list.component.js +4 -1
  12. package/esm2015/lib/components/form/form.component.js +8 -3
  13. package/esm2015/lib/components/grid/base/base-grid.component.js +7 -3
  14. package/esm2015/lib/components/grid/base/base-inline-edit-grid.component.js +48 -3
  15. package/esm2015/lib/components/grid/base/base-selection-grid.component.js +12 -2
  16. package/esm2015/lib/components/grid/co-grid.component.js +36 -32
  17. package/esm2015/lib/components/grid/co-grid.module.js +4 -2
  18. package/esm2015/lib/components/grid-toolbar/grid-toolbar.component.js +41 -0
  19. package/esm2015/lib/components/grid-toolbar/grid-toolbar.module.js +23 -0
  20. package/esm2015/lib/components/input-checkbox/input-checkbox.component.js +4 -1
  21. package/esm2015/lib/components/input-checkbox-multi-select/input-checkbox-multi-select.component.js +4 -1
  22. package/esm2015/lib/components/input-combo-box/input-combo-box.component.js +5 -4
  23. package/esm2015/lib/components/input-date-picker/input-date-picker.component.js +4 -1
  24. package/esm2015/lib/components/input-listbox/input-listbox.component.js +4 -1
  25. package/esm2015/lib/components/input-number-picker/input-number-picker.component.js +4 -1
  26. package/esm2015/lib/components/input-radio-button/input-radio-button.component.js +4 -1
  27. package/esm2015/lib/components/input-text/input-text.component.js +4 -1
  28. package/esm2015/lib/components/input-textarea/input-textarea.component.js +4 -1
  29. package/esm2015/lib/components/multi-select-list/multi-select-list.component.js +4 -1
  30. package/esm2015/lib/components/simple-grid/base-simple-grid.component.js +78 -0
  31. package/esm2015/lib/components/simple-grid/simple-grid-cell.component.js +162 -0
  32. package/esm2015/lib/components/simple-grid/simple-grid-column.directive.js +29 -4
  33. package/esm2015/lib/components/simple-grid/simple-grid.component.js +252 -59
  34. package/esm2015/lib/components/simple-grid/simple-grid.module.js +11 -2
  35. package/esm2015/public-api.js +3 -1
  36. package/fesm2015/colijnit-corecomponents_v12.js +744 -74
  37. package/fesm2015/colijnit-corecomponents_v12.js.map +1 -1
  38. package/lib/components/base/base-input.component.d.ts +1 -1
  39. package/lib/components/co-dialog/style/_layout.scss +3 -0
  40. package/lib/components/co-dialog-wizard/co-dialog-wizard.component.d.ts +9 -0
  41. package/lib/components/co-dialog-wizard/co-dialog-wizard.module.d.ts +2 -0
  42. package/lib/components/co-dialog-wizard/style/_layout.scss +51 -0
  43. package/lib/components/co-dialog-wizard/style/_material-definition.scss +25 -0
  44. package/lib/components/co-dialog-wizard/style/_theme.scss +16 -0
  45. package/lib/components/co-dialog-wizard/style/material.scss +5 -0
  46. package/lib/components/collapsible/style/_layout.scss +1 -1
  47. package/lib/components/collapsible/style/_material-definition.scss +1 -0
  48. package/lib/components/form/form.component.d.ts +1 -0
  49. package/lib/components/grid/base/base-grid.component.d.ts +3 -0
  50. package/lib/components/grid/base/base-inline-edit-grid.component.d.ts +11 -2
  51. package/lib/components/grid/base/base-selection-grid.component.d.ts +4 -0
  52. package/lib/components/grid-toolbar/grid-toolbar.component.d.ts +13 -0
  53. package/lib/components/grid-toolbar/grid-toolbar.module.d.ts +2 -0
  54. package/lib/components/grid-toolbar/style/_layout.scss +10 -0
  55. package/lib/components/grid-toolbar/style/_material-definition.scss +0 -0
  56. package/lib/components/grid-toolbar/style/_theme.scss +5 -0
  57. package/lib/components/grid-toolbar/style/material.scss +5 -0
  58. package/lib/components/input-combo-box/input-combo-box.component.d.ts +0 -1
  59. package/lib/components/input-radio-button/style/_material-definition.scss +1 -1
  60. package/lib/components/input-text/style/_layout.scss +10 -3
  61. package/lib/components/input-text/style/_material-definition.scss +1 -0
  62. package/lib/components/simple-grid/base-simple-grid.component.d.ts +29 -0
  63. package/lib/components/simple-grid/simple-grid-cell.component.d.ts +28 -0
  64. package/lib/components/simple-grid/simple-grid-column.directive.d.ts +9 -0
  65. package/lib/components/simple-grid/simple-grid.component.d.ts +37 -22
  66. package/lib/components/simple-grid/style/_layout.scss +23 -0
  67. package/lib/components/simple-grid/style/_material-definition.scss +13 -4
  68. package/lib/components/simple-grid/style/_theme.scss +17 -0
  69. package/lib/components/simple-grid/style/material.scss +1 -0
  70. package/lib/style/_input.mixins.scss +1 -1
  71. package/lib/style/_variables.scss +5 -1
  72. package/package.json +1 -1
  73. package/public-api.d.ts +2 -0
@@ -69,6 +69,9 @@ MultiSelectListComponent.decorators = [
69
69
  {
70
70
  provide: COMPONENT_INTERFACE_NAME,
71
71
  useExisting: forwardRef(() => MultiSelectListComponent)
72
+ }, {
73
+ provide: BaseInputComponent,
74
+ useExisting: MultiSelectListComponent
72
75
  }
73
76
  ],
74
77
  encapsulation: ViewEncapsulation.None
@@ -94,4 +97,4 @@ MultiSelectListComponent.propDecorators = {
94
97
  showCheckbox: [{ type: Input }],
95
98
  showClass: [{ type: HostBinding, args: ["class.co-multi-select-list",] }]
96
99
  };
97
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibXVsdGktc2VsZWN0LWxpc3QuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY29yZWNvbXBvbmVudHMvc3JjL2xpYi9jb21wb25lbnRzL211bHRpLXNlbGVjdC1saXN0L211bHRpLXNlbGVjdC1saXN0LmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQ0wsaUJBQWlCLEVBQ2pCLFNBQVMsRUFDVCx3QkFBd0IsRUFDeEIsVUFBVSxFQUNWLFVBQVUsRUFDVixXQUFXLEVBQ1gsS0FBSyxFQUNMLFFBQVEsRUFFUixpQkFBaUIsRUFDbEIsTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUFDLHdCQUF3QixFQUFDLE1BQU0sa0NBQWtDLENBQUM7QUFDMUUsT0FBTyxFQUFDLGtCQUFrQixFQUFDLE1BQU0sOEJBQThCLENBQUM7QUFDaEUsT0FBTyxFQUFDLHdCQUF3QixFQUFDLE1BQU0sbUNBQW1DLENBQUM7QUFDM0UsT0FBTyxFQUFDLHVDQUF1QyxFQUFDLE1BQU0sNERBQTRELENBQUM7QUFDbkgsT0FBTyxFQUFDLG9CQUFvQixFQUFDLE1BQU0sNENBQTRDLENBQUM7QUFDaEYsT0FBTyxFQUFDLGFBQWEsRUFBQyxNQUFNLHdCQUF3QixDQUFDO0FBa0NyRCxNQUFNLE9BQU8sd0JBQXlCLFNBQVEsa0JBQXlCO0lBMENyRSxZQUNxQixhQUE0QixFQUNyQyxjQUFpQyxFQUNqQyx3QkFBa0QsRUFDbEQsc0JBQWdFLEVBQ2hFLGFBQW9DLEVBQ3ZDLFVBQXVCO1FBRTlCLEtBQUssQ0FBQyxjQUFjLEVBQUUsd0JBQXdCLEVBQUUsc0JBQXNCLEVBQUUsYUFBYSxFQUFFLFVBQVUsQ0FBQyxDQUFDO1FBUGhGLGtCQUFhLEdBQWIsYUFBYSxDQUFlO1FBQ3JDLG1CQUFjLEdBQWQsY0FBYyxDQUFtQjtRQUNqQyw2QkFBd0IsR0FBeEIsd0JBQXdCLENBQTBCO1FBQ2xELDJCQUFzQixHQUF0QixzQkFBc0IsQ0FBMEM7UUFDaEUsa0JBQWEsR0FBYixhQUFhLENBQXVCO1FBQ3ZDLGVBQVUsR0FBVixVQUFVLENBQWE7UUEzQ2hDOzs7V0FHRztRQUVJLFdBQU0sR0FBVyxFQUFFLENBQUM7UUFrQnBCLGtCQUFhLEdBQVksSUFBSSxDQUFDO1FBMEI5QixTQUFJLEdBQVEsU0FBUyxDQUFDO1FBSDNCLEtBQUssQ0FBQyxhQUFhLEVBQUUsQ0FBQztJQUN4QixDQUFDO0lBdEJELElBQ1csWUFBWSxDQUFDLEtBQWM7UUFDcEMsSUFBSSxLQUFLLEVBQUU7WUFDVCxJQUFJLENBQUMsSUFBSSxHQUFHLFVBQVUsQ0FBQztTQUN4QjtJQUNILENBQUM7SUFHTSxTQUFTO1FBQ2QsT0FBTyxJQUFJLENBQUM7SUFDZCxDQUFDO0lBZ0JNLGlCQUFpQixDQUFDLEdBQVE7UUFDL0IsSUFBSSxLQUFLLENBQUMsT0FBTyxDQUFDLEdBQUcsQ0FBQyxFQUFFO1lBQ3RCLElBQUksR0FBRyxDQUFDLE1BQU0sR0FBRyxDQUFDLEVBQUU7Z0JBQ2xCLEdBQUcsR0FBRyxTQUFTLENBQUM7YUFDakI7U0FDRjtRQUNELElBQUksQ0FBQyxXQUFXLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxDQUFDO0lBQzdCLENBQUM7OztZQS9GRixTQUFTLFNBQUM7Z0JBQ1QsUUFBUSxFQUFFLHNCQUFzQjtnQkFDaEMsUUFBUSxFQUFFOzs7Ozs7Ozs7Ozs7Ozs7Ozs7OztHQW9CVDtnQkFDRCxTQUFTLEVBQUU7b0JBQ1Qsd0JBQXdCO29CQUN4Qjt3QkFDRSxPQUFPLEVBQUUsd0JBQXdCO3dCQUNqQyxXQUFXLEVBQUUsVUFBVSxDQUFDLEdBQUcsRUFBRSxDQUFDLHdCQUF3QixDQUFDO3FCQUN4RDtpQkFDRjtnQkFDRCxhQUFhLEVBQUUsaUJBQWlCLENBQUMsSUFBSTthQUN0Qzs7O1lBakNPLGFBQWEsdUJBNkVoQixRQUFRO1lBN0ZYLGlCQUFpQjtZQUVqQix3QkFBd0I7WUFZbEIsdUNBQXVDO1lBQ3ZDLG9CQUFvQjtZQVoxQixVQUFVOzs7eUJBaURULEtBQUs7cUJBT0wsS0FBSzswQkFHTCxLQUFLOzJCQUdMLEtBQUs7NkJBR0wsS0FBSzs0QkFHTCxLQUFLOzZCQUdMLEtBQUs7NEJBR0wsS0FBSzsyQkFHTCxLQUFLO3dCQU9MLFdBQVcsU0FBQyw0QkFBNEIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xyXG4gIENoYW5nZURldGVjdG9yUmVmLFxyXG4gIENvbXBvbmVudCxcclxuICBDb21wb25lbnRGYWN0b3J5UmVzb2x2ZXIsXHJcbiAgRWxlbWVudFJlZixcclxuICBmb3J3YXJkUmVmLFxyXG4gIEhvc3RCaW5kaW5nLFxyXG4gIElucHV0LFxyXG4gIE9wdGlvbmFsLFxyXG4gIFRlbXBsYXRlUmVmLFxyXG4gIFZpZXdFbmNhcHN1bGF0aW9uXHJcbn0gZnJvbSBcIkBhbmd1bGFyL2NvcmVcIjtcclxuaW1wb3J0IHtDT01QT05FTlRfSU5URVJGQUNFX05BTUV9IGZyb20gXCIuLi9iYXNlL2NvbXBvbmVudC1pbnRlcmZhY2UtbmFtZVwiO1xyXG5pbXBvcnQge0Jhc2VJbnB1dENvbXBvbmVudH0gZnJvbSBcIi4uL2Jhc2UvYmFzZS1pbnB1dC5jb21wb25lbnRcIjtcclxuaW1wb3J0IHtDaGVja0JveFNlbGVjdGlvblNlcnZpY2V9IGZyb20gXCJAc3luY2Z1c2lvbi9lajItYW5ndWxhci1kcm9wZG93bnNcIjtcclxuaW1wb3J0IHtGb3JtSW5wdXRVc2VyTW9kZWxDaGFuZ2VMaXN0ZW5lclNlcnZpY2V9IGZyb20gXCIuLi8uLi9jb3JlL3NlcnZpY2UvZm9ybS1pbnB1dC11c2VyLWNoYW5nZS1saXN0ZW5lci5zZXJ2aWNlXCI7XHJcbmltcG9ydCB7Tmdab25lV3JhcHBlclNlcnZpY2V9IGZyb20gXCIuLi8uLi9jb3JlL3NlcnZpY2Uvbmctem9uZS13cmFwcGVyLnNlcnZpY2VcIjtcclxuaW1wb3J0IHtGb3JtQ29tcG9uZW50fSBmcm9tIFwiLi4vZm9ybS9mb3JtLmNvbXBvbmVudFwiO1xyXG5cclxuQENvbXBvbmVudCh7XHJcbiAgc2VsZWN0b3I6IFwiY28tbXVsdGktc2VsZWN0LWxpc3RcIixcclxuICB0ZW1wbGF0ZTogYFxyXG4gICAgPGVqcy1tdWx0aXNlbGVjdFxyXG4gICAgICBbZGF0YVNvdXJjZV09XCJjb2xsZWN0aW9uXCJcclxuICAgICAgW3BsYWNlaG9sZGVyXT1cInBsYWNlaG9sZGVyXCJcclxuICAgICAgW3ZhbHVlXT1cIm1vZGVsXCJcclxuICAgICAgW21vZGVdPVwibW9kZVwiXHJcbiAgICAgIFtmaWVsZHNdPVwiZmllbGRzXCJcclxuICAgICAgW3JlYWRvbmx5XT1cInJlYWRvbmx5XCJcclxuICAgICAgW2l0ZW1UZW1wbGF0ZV09XCJpdGVtVGVtcGxhdGVcIlxyXG4gICAgICBbaGVhZGVyVGVtcGxhdGVdPVwiaGVhZGVyVGVtcGxhdGVcIlxyXG4gICAgICBbdmFsdWVUZW1wbGF0ZV09XCJ2YWx1ZVRlbXBsYXRlXCJcclxuICAgICAgW2Zvb3RlclRlbXBsYXRlXT1cImZvb3RlclRlbXBsYXRlXCJcclxuICAgICAgW3NlbGVjdEFsbFRleHRdPVwiJ1NlbGVjdCBBbGwnXCJcclxuICAgICAgW3Nob3dTZWxlY3RBbGxdPXNob3dTZWxlY3RBbGxcclxuICAgICAgW25nTW9kZWxdPVwibW9kZWxcIlxyXG4gICAgICAobmdNb2RlbENoYW5nZSk9XCJoYW5kbGVNb2RlbENoYW5nZSgkZXZlbnQpXCJcclxuICAgICAgKHZhbHVlQ2hhbmdlKT1cImhhbmRsZU1vZGVsQ2hhbmdlKCRldmVudClcIlxyXG4gICAgPjwvZWpzLW11bHRpc2VsZWN0PlxyXG4gICAgPGRpdiBjbGFzcz1cInJlcXVpcmVkLWluZGljYXRvclwiPjwvZGl2PlxyXG4gICAgPG5nLXRlbXBsYXRlICN2YWxpZGF0aW9uRXJyb3I+PC9uZy10ZW1wbGF0ZT5cclxuICBgLFxyXG4gIHByb3ZpZGVyczogW1xyXG4gICAgQ2hlY2tCb3hTZWxlY3Rpb25TZXJ2aWNlLFxyXG4gICAge1xyXG4gICAgICBwcm92aWRlOiBDT01QT05FTlRfSU5URVJGQUNFX05BTUUsXHJcbiAgICAgIHVzZUV4aXN0aW5nOiBmb3J3YXJkUmVmKCgpID0+IE11bHRpU2VsZWN0TGlzdENvbXBvbmVudClcclxuICAgIH1cclxuICBdLFxyXG4gIGVuY2Fwc3VsYXRpb246IFZpZXdFbmNhcHN1bGF0aW9uLk5vbmVcclxufSlcclxuZXhwb3J0IGNsYXNzIE11bHRpU2VsZWN0TGlzdENvbXBvbmVudCBleHRlbmRzIEJhc2VJbnB1dENvbXBvbmVudDxhbnlbXT4ge1xyXG5cclxuICBASW5wdXQoKVxyXG4gIHB1YmxpYyBjb2xsZWN0aW9uOiBhbnlbXTtcclxuXHJcbiAgLyoqXHJcbiAgICogSW4gdGhlIGZvcm0geyB0ZXh0OiAnbmFtZScsIHZhbHVlOiAnaWQnIH1cclxuICAgKiBXaGVyZSAndGV4dCcgaXMgc2hvd2luZyBpbiB0aGUgZHJvcGRvd24gYW5kICdpZCcgdXNlZCBmb3IgdGhlIG1vZGVsIGJpbmRpbmdcclxuICAgKi9cclxuICBASW5wdXQoKVxyXG4gIHB1YmxpYyBmaWVsZHM6IE9iamVjdCA9IHt9O1xyXG5cclxuICBASW5wdXQoKVxyXG4gIHB1YmxpYyBwbGFjZWhvbGRlcjogc3RyaW5nO1xyXG5cclxuICBASW5wdXQoKVxyXG4gIHB1YmxpYyBpdGVtVGVtcGxhdGU6IFRlbXBsYXRlUmVmPGFueT47XHJcblxyXG4gIEBJbnB1dCgpXHJcbiAgcHVibGljIGhlYWRlclRlbXBsYXRlOiBUZW1wbGF0ZVJlZjxhbnk+O1xyXG5cclxuICBASW5wdXQoKVxyXG4gIHB1YmxpYyB2YWx1ZVRlbXBsYXRlOiBUZW1wbGF0ZVJlZjxhbnk+O1xyXG5cclxuICBASW5wdXQoKVxyXG4gIHB1YmxpYyBmb290ZXJUZW1wbGF0ZTogVGVtcGxhdGVSZWY8YW55PjtcclxuXHJcbiAgQElucHV0KClcclxuICBwdWJsaWMgc2hvd1NlbGVjdEFsbDogYm9vbGVhbiA9IHRydWU7XHJcblxyXG4gIEBJbnB1dCgpXHJcbiAgcHVibGljIHNldCBzaG93Q2hlY2tib3godmFsdWU6IGJvb2xlYW4pIHtcclxuICAgIGlmICh2YWx1ZSkge1xyXG4gICAgICB0aGlzLm1vZGUgPSBcIkNoZWNrQm94XCI7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBASG9zdEJpbmRpbmcoXCJjbGFzcy5jby1tdWx0aS1zZWxlY3QtbGlzdFwiKVxyXG4gIHB1YmxpYyBzaG93Q2xhc3MoKSB7XHJcbiAgICByZXR1cm4gdHJ1ZTtcclxuICB9XHJcblxyXG4gIGNvbnN0cnVjdG9yKFxyXG4gICAgQE9wdGlvbmFsKCkgcHVibGljIGZvcm1Db21wb25lbnQ6IEZvcm1Db21wb25lbnQsXHJcbiAgICBwcm90ZWN0ZWQgY2hhbmdlRGV0ZWN0b3I6IENoYW5nZURldGVjdG9yUmVmLFxyXG4gICAgcHJvdGVjdGVkIGNvbXBvbmVudEZhY3RvcnlSZXNvbHZlcjogQ29tcG9uZW50RmFjdG9yeVJlc29sdmVyLFxyXG4gICAgcHJvdGVjdGVkIGZvcm1Vc2VyQ2hhbmdlTGlzdGVuZXI/OiBGb3JtSW5wdXRVc2VyTW9kZWxDaGFuZ2VMaXN0ZW5lclNlcnZpY2UsXHJcbiAgICBwcm90ZWN0ZWQgbmdab25lV3JhcHBlcj86IE5nWm9uZVdyYXBwZXJTZXJ2aWNlLFxyXG4gICAgcHVibGljIGVsZW1lbnRSZWY/OiBFbGVtZW50UmVmLFxyXG4gICkge1xyXG4gICAgc3VwZXIoY2hhbmdlRGV0ZWN0b3IsIGNvbXBvbmVudEZhY3RvcnlSZXNvbHZlciwgZm9ybVVzZXJDaGFuZ2VMaXN0ZW5lciwgbmdab25lV3JhcHBlciwgZWxlbWVudFJlZik7XHJcbiAgICBzdXBlci5fbWFya0FzT25QdXNoKCk7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgbW9kZTogYW55ID0gXCJEZWZhdWx0XCI7XHJcblxyXG4gIHB1YmxpYyBoYW5kbGVNb2RlbENoYW5nZSh2YWw6IGFueSk6IHZvaWQge1xyXG4gICAgaWYgKEFycmF5LmlzQXJyYXkodmFsKSkge1xyXG4gICAgICBpZiAodmFsLmxlbmd0aCA8IDEpIHtcclxuICAgICAgICB2YWwgPSB1bmRlZmluZWQ7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICAgIHRoaXMubW9kZWxDaGFuZ2UubmV4dCh2YWwpO1xyXG4gIH1cclxufVxyXG4iXX0=
100
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibXVsdGktc2VsZWN0LWxpc3QuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY29yZWNvbXBvbmVudHMvc3JjL2xpYi9jb21wb25lbnRzL211bHRpLXNlbGVjdC1saXN0L211bHRpLXNlbGVjdC1saXN0LmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQ0wsaUJBQWlCLEVBQ2pCLFNBQVMsRUFDVCx3QkFBd0IsRUFDeEIsVUFBVSxFQUNWLFVBQVUsRUFDVixXQUFXLEVBQ1gsS0FBSyxFQUNMLFFBQVEsRUFFUixpQkFBaUIsRUFDbEIsTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUFDLHdCQUF3QixFQUFDLE1BQU0sa0NBQWtDLENBQUM7QUFDMUUsT0FBTyxFQUFDLGtCQUFrQixFQUFDLE1BQU0sOEJBQThCLENBQUM7QUFDaEUsT0FBTyxFQUFDLHdCQUF3QixFQUFDLE1BQU0sbUNBQW1DLENBQUM7QUFDM0UsT0FBTyxFQUFDLHVDQUF1QyxFQUFDLE1BQU0sNERBQTRELENBQUM7QUFDbkgsT0FBTyxFQUFDLG9CQUFvQixFQUFDLE1BQU0sNENBQTRDLENBQUM7QUFDaEYsT0FBTyxFQUFDLGFBQWEsRUFBQyxNQUFNLHdCQUF3QixDQUFDO0FBcUNyRCxNQUFNLE9BQU8sd0JBQXlCLFNBQVEsa0JBQXlCO0lBMENyRSxZQUNxQixhQUE0QixFQUNyQyxjQUFpQyxFQUNqQyx3QkFBa0QsRUFDbEQsc0JBQWdFLEVBQ2hFLGFBQW9DLEVBQ3ZDLFVBQXVCO1FBRTlCLEtBQUssQ0FBQyxjQUFjLEVBQUUsd0JBQXdCLEVBQUUsc0JBQXNCLEVBQUUsYUFBYSxFQUFFLFVBQVUsQ0FBQyxDQUFDO1FBUGhGLGtCQUFhLEdBQWIsYUFBYSxDQUFlO1FBQ3JDLG1CQUFjLEdBQWQsY0FBYyxDQUFtQjtRQUNqQyw2QkFBd0IsR0FBeEIsd0JBQXdCLENBQTBCO1FBQ2xELDJCQUFzQixHQUF0QixzQkFBc0IsQ0FBMEM7UUFDaEUsa0JBQWEsR0FBYixhQUFhLENBQXVCO1FBQ3ZDLGVBQVUsR0FBVixVQUFVLENBQWE7UUEzQ2hDOzs7V0FHRztRQUVJLFdBQU0sR0FBVyxFQUFFLENBQUM7UUFrQnBCLGtCQUFhLEdBQVksSUFBSSxDQUFDO1FBMEI5QixTQUFJLEdBQVEsU0FBUyxDQUFDO1FBSDNCLEtBQUssQ0FBQyxhQUFhLEVBQUUsQ0FBQztJQUN4QixDQUFDO0lBdEJELElBQ1csWUFBWSxDQUFDLEtBQWM7UUFDcEMsSUFBSSxLQUFLLEVBQUU7WUFDVCxJQUFJLENBQUMsSUFBSSxHQUFHLFVBQVUsQ0FBQztTQUN4QjtJQUNILENBQUM7SUFHTSxTQUFTO1FBQ2QsT0FBTyxJQUFJLENBQUM7SUFDZCxDQUFDO0lBZ0JNLGlCQUFpQixDQUFDLEdBQVE7UUFDL0IsSUFBSSxLQUFLLENBQUMsT0FBTyxDQUFDLEdBQUcsQ0FBQyxFQUFFO1lBQ3RCLElBQUksR0FBRyxDQUFDLE1BQU0sR0FBRyxDQUFDLEVBQUU7Z0JBQ2xCLEdBQUcsR0FBRyxTQUFTLENBQUM7YUFDakI7U0FDRjtRQUNELElBQUksQ0FBQyxXQUFXLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxDQUFDO0lBQzdCLENBQUM7OztZQWxHRixTQUFTLFNBQUM7Z0JBQ1QsUUFBUSxFQUFFLHNCQUFzQjtnQkFDaEMsUUFBUSxFQUFFOzs7Ozs7Ozs7Ozs7Ozs7Ozs7OztHQW9CVDtnQkFDRCxTQUFTLEVBQUU7b0JBQ1Qsd0JBQXdCO29CQUN4Qjt3QkFDRSxPQUFPLEVBQUUsd0JBQXdCO3dCQUNqQyxXQUFXLEVBQUUsVUFBVSxDQUFDLEdBQUcsRUFBRSxDQUFDLHdCQUF3QixDQUFDO3FCQUN4RCxFQUFFO3dCQUNELE9BQU8sRUFBRSxrQkFBa0I7d0JBQzNCLFdBQVcsRUFBRSx3QkFBd0I7cUJBQ3RDO2lCQUNGO2dCQUNELGFBQWEsRUFBRSxpQkFBaUIsQ0FBQyxJQUFJO2FBQ3RDOzs7WUFwQ08sYUFBYSx1QkFnRmhCLFFBQVE7WUFoR1gsaUJBQWlCO1lBRWpCLHdCQUF3QjtZQVlsQix1Q0FBdUM7WUFDdkMsb0JBQW9CO1lBWjFCLFVBQVU7Ozt5QkFvRFQsS0FBSztxQkFPTCxLQUFLOzBCQUdMLEtBQUs7MkJBR0wsS0FBSzs2QkFHTCxLQUFLOzRCQUdMLEtBQUs7NkJBR0wsS0FBSzs0QkFHTCxLQUFLOzJCQUdMLEtBQUs7d0JBT0wsV0FBVyxTQUFDLDRCQUE0QiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XHJcbiAgQ2hhbmdlRGV0ZWN0b3JSZWYsXHJcbiAgQ29tcG9uZW50LFxyXG4gIENvbXBvbmVudEZhY3RvcnlSZXNvbHZlcixcclxuICBFbGVtZW50UmVmLFxyXG4gIGZvcndhcmRSZWYsXHJcbiAgSG9zdEJpbmRpbmcsXHJcbiAgSW5wdXQsXHJcbiAgT3B0aW9uYWwsXHJcbiAgVGVtcGxhdGVSZWYsXHJcbiAgVmlld0VuY2Fwc3VsYXRpb25cclxufSBmcm9tIFwiQGFuZ3VsYXIvY29yZVwiO1xyXG5pbXBvcnQge0NPTVBPTkVOVF9JTlRFUkZBQ0VfTkFNRX0gZnJvbSBcIi4uL2Jhc2UvY29tcG9uZW50LWludGVyZmFjZS1uYW1lXCI7XHJcbmltcG9ydCB7QmFzZUlucHV0Q29tcG9uZW50fSBmcm9tIFwiLi4vYmFzZS9iYXNlLWlucHV0LmNvbXBvbmVudFwiO1xyXG5pbXBvcnQge0NoZWNrQm94U2VsZWN0aW9uU2VydmljZX0gZnJvbSBcIkBzeW5jZnVzaW9uL2VqMi1hbmd1bGFyLWRyb3Bkb3duc1wiO1xyXG5pbXBvcnQge0Zvcm1JbnB1dFVzZXJNb2RlbENoYW5nZUxpc3RlbmVyU2VydmljZX0gZnJvbSBcIi4uLy4uL2NvcmUvc2VydmljZS9mb3JtLWlucHV0LXVzZXItY2hhbmdlLWxpc3RlbmVyLnNlcnZpY2VcIjtcclxuaW1wb3J0IHtOZ1pvbmVXcmFwcGVyU2VydmljZX0gZnJvbSBcIi4uLy4uL2NvcmUvc2VydmljZS9uZy16b25lLXdyYXBwZXIuc2VydmljZVwiO1xyXG5pbXBvcnQge0Zvcm1Db21wb25lbnR9IGZyb20gXCIuLi9mb3JtL2Zvcm0uY29tcG9uZW50XCI7XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICBzZWxlY3RvcjogXCJjby1tdWx0aS1zZWxlY3QtbGlzdFwiLFxyXG4gIHRlbXBsYXRlOiBgXHJcbiAgICA8ZWpzLW11bHRpc2VsZWN0XHJcbiAgICAgIFtkYXRhU291cmNlXT1cImNvbGxlY3Rpb25cIlxyXG4gICAgICBbcGxhY2Vob2xkZXJdPVwicGxhY2Vob2xkZXJcIlxyXG4gICAgICBbdmFsdWVdPVwibW9kZWxcIlxyXG4gICAgICBbbW9kZV09XCJtb2RlXCJcclxuICAgICAgW2ZpZWxkc109XCJmaWVsZHNcIlxyXG4gICAgICBbcmVhZG9ubHldPVwicmVhZG9ubHlcIlxyXG4gICAgICBbaXRlbVRlbXBsYXRlXT1cIml0ZW1UZW1wbGF0ZVwiXHJcbiAgICAgIFtoZWFkZXJUZW1wbGF0ZV09XCJoZWFkZXJUZW1wbGF0ZVwiXHJcbiAgICAgIFt2YWx1ZVRlbXBsYXRlXT1cInZhbHVlVGVtcGxhdGVcIlxyXG4gICAgICBbZm9vdGVyVGVtcGxhdGVdPVwiZm9vdGVyVGVtcGxhdGVcIlxyXG4gICAgICBbc2VsZWN0QWxsVGV4dF09XCInU2VsZWN0IEFsbCdcIlxyXG4gICAgICBbc2hvd1NlbGVjdEFsbF09c2hvd1NlbGVjdEFsbFxyXG4gICAgICBbbmdNb2RlbF09XCJtb2RlbFwiXHJcbiAgICAgIChuZ01vZGVsQ2hhbmdlKT1cImhhbmRsZU1vZGVsQ2hhbmdlKCRldmVudClcIlxyXG4gICAgICAodmFsdWVDaGFuZ2UpPVwiaGFuZGxlTW9kZWxDaGFuZ2UoJGV2ZW50KVwiXHJcbiAgICA+PC9lanMtbXVsdGlzZWxlY3Q+XHJcbiAgICA8ZGl2IGNsYXNzPVwicmVxdWlyZWQtaW5kaWNhdG9yXCI+PC9kaXY+XHJcbiAgICA8bmctdGVtcGxhdGUgI3ZhbGlkYXRpb25FcnJvcj48L25nLXRlbXBsYXRlPlxyXG4gIGAsXHJcbiAgcHJvdmlkZXJzOiBbXHJcbiAgICBDaGVja0JveFNlbGVjdGlvblNlcnZpY2UsXHJcbiAgICB7XHJcbiAgICAgIHByb3ZpZGU6IENPTVBPTkVOVF9JTlRFUkZBQ0VfTkFNRSxcclxuICAgICAgdXNlRXhpc3Rpbmc6IGZvcndhcmRSZWYoKCkgPT4gTXVsdGlTZWxlY3RMaXN0Q29tcG9uZW50KVxyXG4gICAgfSwge1xyXG4gICAgICBwcm92aWRlOiBCYXNlSW5wdXRDb21wb25lbnQsXHJcbiAgICAgIHVzZUV4aXN0aW5nOiBNdWx0aVNlbGVjdExpc3RDb21wb25lbnRcclxuICAgIH1cclxuICBdLFxyXG4gIGVuY2Fwc3VsYXRpb246IFZpZXdFbmNhcHN1bGF0aW9uLk5vbmVcclxufSlcclxuZXhwb3J0IGNsYXNzIE11bHRpU2VsZWN0TGlzdENvbXBvbmVudCBleHRlbmRzIEJhc2VJbnB1dENvbXBvbmVudDxhbnlbXT4ge1xyXG5cclxuICBASW5wdXQoKVxyXG4gIHB1YmxpYyBjb2xsZWN0aW9uOiBhbnlbXTtcclxuXHJcbiAgLyoqXHJcbiAgICogSW4gdGhlIGZvcm0geyB0ZXh0OiAnbmFtZScsIHZhbHVlOiAnaWQnIH1cclxuICAgKiBXaGVyZSAndGV4dCcgaXMgc2hvd2luZyBpbiB0aGUgZHJvcGRvd24gYW5kICdpZCcgdXNlZCBmb3IgdGhlIG1vZGVsIGJpbmRpbmdcclxuICAgKi9cclxuICBASW5wdXQoKVxyXG4gIHB1YmxpYyBmaWVsZHM6IE9iamVjdCA9IHt9O1xyXG5cclxuICBASW5wdXQoKVxyXG4gIHB1YmxpYyBwbGFjZWhvbGRlcjogc3RyaW5nO1xyXG5cclxuICBASW5wdXQoKVxyXG4gIHB1YmxpYyBpdGVtVGVtcGxhdGU6IFRlbXBsYXRlUmVmPGFueT47XHJcblxyXG4gIEBJbnB1dCgpXHJcbiAgcHVibGljIGhlYWRlclRlbXBsYXRlOiBUZW1wbGF0ZVJlZjxhbnk+O1xyXG5cclxuICBASW5wdXQoKVxyXG4gIHB1YmxpYyB2YWx1ZVRlbXBsYXRlOiBUZW1wbGF0ZVJlZjxhbnk+O1xyXG5cclxuICBASW5wdXQoKVxyXG4gIHB1YmxpYyBmb290ZXJUZW1wbGF0ZTogVGVtcGxhdGVSZWY8YW55PjtcclxuXHJcbiAgQElucHV0KClcclxuICBwdWJsaWMgc2hvd1NlbGVjdEFsbDogYm9vbGVhbiA9IHRydWU7XHJcblxyXG4gIEBJbnB1dCgpXHJcbiAgcHVibGljIHNldCBzaG93Q2hlY2tib3godmFsdWU6IGJvb2xlYW4pIHtcclxuICAgIGlmICh2YWx1ZSkge1xyXG4gICAgICB0aGlzLm1vZGUgPSBcIkNoZWNrQm94XCI7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBASG9zdEJpbmRpbmcoXCJjbGFzcy5jby1tdWx0aS1zZWxlY3QtbGlzdFwiKVxyXG4gIHB1YmxpYyBzaG93Q2xhc3MoKSB7XHJcbiAgICByZXR1cm4gdHJ1ZTtcclxuICB9XHJcblxyXG4gIGNvbnN0cnVjdG9yKFxyXG4gICAgQE9wdGlvbmFsKCkgcHVibGljIGZvcm1Db21wb25lbnQ6IEZvcm1Db21wb25lbnQsXHJcbiAgICBwcm90ZWN0ZWQgY2hhbmdlRGV0ZWN0b3I6IENoYW5nZURldGVjdG9yUmVmLFxyXG4gICAgcHJvdGVjdGVkIGNvbXBvbmVudEZhY3RvcnlSZXNvbHZlcjogQ29tcG9uZW50RmFjdG9yeVJlc29sdmVyLFxyXG4gICAgcHJvdGVjdGVkIGZvcm1Vc2VyQ2hhbmdlTGlzdGVuZXI/OiBGb3JtSW5wdXRVc2VyTW9kZWxDaGFuZ2VMaXN0ZW5lclNlcnZpY2UsXHJcbiAgICBwcm90ZWN0ZWQgbmdab25lV3JhcHBlcj86IE5nWm9uZVdyYXBwZXJTZXJ2aWNlLFxyXG4gICAgcHVibGljIGVsZW1lbnRSZWY/OiBFbGVtZW50UmVmLFxyXG4gICkge1xyXG4gICAgc3VwZXIoY2hhbmdlRGV0ZWN0b3IsIGNvbXBvbmVudEZhY3RvcnlSZXNvbHZlciwgZm9ybVVzZXJDaGFuZ2VMaXN0ZW5lciwgbmdab25lV3JhcHBlciwgZWxlbWVudFJlZik7XHJcbiAgICBzdXBlci5fbWFya0FzT25QdXNoKCk7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgbW9kZTogYW55ID0gXCJEZWZhdWx0XCI7XHJcblxyXG4gIHB1YmxpYyBoYW5kbGVNb2RlbENoYW5nZSh2YWw6IGFueSk6IHZvaWQge1xyXG4gICAgaWYgKEFycmF5LmlzQXJyYXkodmFsKSkge1xyXG4gICAgICBpZiAodmFsLmxlbmd0aCA8IDEpIHtcclxuICAgICAgICB2YWwgPSB1bmRlZmluZWQ7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICAgIHRoaXMubW9kZWxDaGFuZ2UubmV4dCh2YWwpO1xyXG4gIH1cclxufVxyXG4iXX0=
@@ -0,0 +1,78 @@
1
+ import { ContentChildren, Directive, EventEmitter, HostListener, Input, Output } from "@angular/core";
2
+ import { SimpleGridColumnDirective } from "./simple-grid-column.directive";
3
+ import { moveItemInArray } from "@angular/cdk/drag-drop";
4
+ export class BaseSimpleGridComponent {
5
+ constructor() {
6
+ this.data = [];
7
+ this.dragDropEnabled = false;
8
+ this.inlineEdit = false;
9
+ this.showToolbar = false;
10
+ /**
11
+ * Should component emit drag and drop actions instead of handle
12
+ * (update collection) by itself
13
+ */
14
+ this.emitDragDrop = false;
15
+ this.onDrop = new EventEmitter();
16
+ this.selectRow = new EventEmitter();
17
+ this.dblClickRow = new EventEmitter();
18
+ this.saveRow = new EventEmitter();
19
+ this.columns = [];
20
+ }
21
+ set content(columnComponents) {
22
+ this.columns = columnComponents.toArray();
23
+ }
24
+ handleMouseMove(event) {
25
+ if (event.buttons === 1 && this._columnForResize) {
26
+ if (!this._columnForResize.width) {
27
+ const rect = event.target.parentElement.getBoundingClientRect();
28
+ this._columnForResize.width = rect.width;
29
+ }
30
+ this._columnForResize.width += event.movementX;
31
+ }
32
+ }
33
+ handleMouseUp(event) {
34
+ this._columnForResize = undefined;
35
+ }
36
+ handleSizerMouseDown(event, column) {
37
+ this._columnForResize = column;
38
+ }
39
+ handleCanDragDrop(drag, drop) {
40
+ return true;
41
+ }
42
+ handleDrop(event) {
43
+ try {
44
+ const from = event.previousIndex;
45
+ const to = event.currentIndex;
46
+ if (from === to) {
47
+ return;
48
+ }
49
+ if (this.emitDragDrop) {
50
+ this.onDrop.next({ from: from, to: to });
51
+ }
52
+ else {
53
+ moveItemInArray(this.data, from, to);
54
+ }
55
+ }
56
+ catch (e) {
57
+ console.error(e);
58
+ }
59
+ }
60
+ }
61
+ BaseSimpleGridComponent.decorators = [
62
+ { type: Directive }
63
+ ];
64
+ BaseSimpleGridComponent.propDecorators = {
65
+ content: [{ type: ContentChildren, args: [SimpleGridColumnDirective,] }],
66
+ data: [{ type: Input }],
67
+ dragDropEnabled: [{ type: Input }],
68
+ inlineEdit: [{ type: Input }],
69
+ showToolbar: [{ type: Input }],
70
+ emitDragDrop: [{ type: Input }],
71
+ onDrop: [{ type: Output }],
72
+ selectRow: [{ type: Output }],
73
+ dblClickRow: [{ type: Output }],
74
+ saveRow: [{ type: Output }],
75
+ handleMouseMove: [{ type: HostListener, args: ['document:mousemove', ['$event'],] }],
76
+ handleMouseUp: [{ type: HostListener, args: ['document:mouseup', ['$event'],] }]
77
+ };
78
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmFzZS1zaW1wbGUtZ3JpZC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jb3JlY29tcG9uZW50cy9zcmMvbGliL2NvbXBvbmVudHMvc2ltcGxlLWdyaWQvYmFzZS1zaW1wbGUtZ3JpZC5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFDLGVBQWUsRUFBRSxTQUFTLEVBQUUsWUFBWSxFQUFFLFlBQVksRUFBRSxLQUFLLEVBQUUsTUFBTSxFQUFZLE1BQU0sZUFBZSxDQUFDO0FBQy9HLE9BQU8sRUFBYyx5QkFBeUIsRUFBQyxNQUFNLGdDQUFnQyxDQUFDO0FBQ3RGLE9BQU8sRUFBb0MsZUFBZSxFQUFDLE1BQU0sd0JBQXdCLENBQUM7QUFHMUYsTUFBTSxPQUFnQix1QkFBdUI7SUFEN0M7UUFPUyxTQUFJLEdBQWEsRUFBRSxDQUFDO1FBR3BCLG9CQUFlLEdBQVksS0FBSyxDQUFDO1FBR2pDLGVBQVUsR0FBWSxLQUFLLENBQUM7UUFHNUIsZ0JBQVcsR0FBWSxLQUFLLENBQUM7UUFFcEM7OztXQUdHO1FBRUksaUJBQVksR0FBWSxLQUFLLENBQUM7UUFHOUIsV0FBTSxHQUE2QyxJQUFJLFlBQVksRUFBOEIsQ0FBQztRQUdsRyxjQUFTLEdBQXFCLElBQUksWUFBWSxFQUFNLENBQUM7UUFHckQsZ0JBQVcsR0FBcUIsSUFBSSxZQUFZLEVBQU0sQ0FBQztRQUd2RCxZQUFPLEdBQXFCLElBQUksWUFBWSxFQUFNLENBQUM7UUFrQm5ELFlBQU8sR0FBZ0MsRUFBRSxDQUFDO0lBNkJuRCxDQUFDO0lBaEZDLElBQWdELE9BQU8sQ0FBQyxnQkFBc0Q7UUFDNUcsSUFBSSxDQUFDLE9BQU8sR0FBRyxnQkFBZ0IsQ0FBQyxPQUFPLEVBQUUsQ0FBQztJQUM1QyxDQUFDO0lBa0NNLGVBQWUsQ0FBQyxLQUFpQjtRQUN0QyxJQUFJLEtBQUssQ0FBQyxPQUFPLEtBQUssQ0FBQyxJQUFJLElBQUksQ0FBQyxnQkFBZ0IsRUFBRTtZQUNoRCxJQUFJLENBQUMsSUFBSSxDQUFDLGdCQUFnQixDQUFDLEtBQUssRUFBRTtnQkFDaEMsTUFBTSxJQUFJLEdBQWdCLEtBQUssQ0FBQyxNQUFjLENBQUMsYUFBYSxDQUFDLHFCQUFxQixFQUFFLENBQUM7Z0JBQ3JGLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxLQUFLLEdBQUcsSUFBSSxDQUFDLEtBQUssQ0FBQzthQUMxQztZQUNELElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxLQUFLLElBQUksS0FBSyxDQUFDLFNBQVMsQ0FBQztTQUNoRDtJQUNILENBQUM7SUFHTSxhQUFhLENBQUMsS0FBaUI7UUFDcEMsSUFBSSxDQUFDLGdCQUFnQixHQUFHLFNBQVMsQ0FBQztJQUNwQyxDQUFDO0lBTU0sb0JBQW9CLENBQUMsS0FBaUIsRUFBRSxNQUFpQztRQUM5RSxJQUFJLENBQUMsZ0JBQWdCLEdBQUcsTUFBTSxDQUFDO0lBQ2pDLENBQUM7SUFFTSxpQkFBaUIsQ0FBQyxJQUFhLEVBQUUsSUFBaUI7UUFDdkQsT0FBTyxJQUFJLENBQUM7SUFDZCxDQUFDO0lBRU0sVUFBVSxDQUFDLEtBQTRCO1FBQzVDLElBQUk7WUFDRixNQUFNLElBQUksR0FBVyxLQUFLLENBQUMsYUFBYSxDQUFDO1lBQ3pDLE1BQU0sRUFBRSxHQUFXLEtBQUssQ0FBQyxZQUFZLENBQUM7WUFDdEMsSUFBSSxJQUFJLEtBQUssRUFBRSxFQUFFO2dCQUNmLE9BQU87YUFDUjtZQUNELElBQUksSUFBSSxDQUFDLFlBQVksRUFBRTtnQkFDckIsSUFBSSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsRUFBQyxJQUFJLEVBQUUsSUFBSSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUMsQ0FBQyxDQUFDO2FBQ3hDO2lCQUFNO2dCQUNMLGVBQWUsQ0FBQyxJQUFJLENBQUMsSUFBSSxFQUFFLElBQUksRUFBRSxFQUFFLENBQUMsQ0FBQzthQUN0QztTQUNGO1FBQUMsT0FBTyxDQUFDLEVBQUU7WUFDVixPQUFPLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUFDO1NBQ2xCO0lBQ0gsQ0FBQzs7O1lBaEZGLFNBQVM7OztzQkFFUCxlQUFlLFNBQUMseUJBQXlCO21CQUl6QyxLQUFLOzhCQUdMLEtBQUs7eUJBR0wsS0FBSzswQkFHTCxLQUFLOzJCQU9MLEtBQUs7cUJBR0wsTUFBTTt3QkFHTixNQUFNOzBCQUdOLE1BQU07c0JBR04sTUFBTTs4QkFHTixZQUFZLFNBQUMsb0JBQW9CLEVBQUUsQ0FBQyxRQUFRLENBQUM7NEJBVzdDLFlBQVksU0FBQyxrQkFBa0IsRUFBRSxDQUFDLFFBQVEsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7Q29udGVudENoaWxkcmVuLCBEaXJlY3RpdmUsIEV2ZW50RW1pdHRlciwgSG9zdExpc3RlbmVyLCBJbnB1dCwgT3V0cHV0LCBRdWVyeUxpc3R9IGZyb20gXCJAYW5ndWxhci9jb3JlXCI7XHJcbmltcG9ydCB7Q29sdW1uQWxpZ24sIFNpbXBsZUdyaWRDb2x1bW5EaXJlY3RpdmV9IGZyb20gXCIuL3NpbXBsZS1ncmlkLWNvbHVtbi5kaXJlY3RpdmVcIjtcclxuaW1wb3J0IHtDZGtEcmFnLCBDZGtEcmFnRHJvcCwgQ2RrRHJvcExpc3QsIG1vdmVJdGVtSW5BcnJheX0gZnJvbSBcIkBhbmd1bGFyL2Nkay9kcmFnLWRyb3BcIjtcclxuXHJcbkBEaXJlY3RpdmUoKVxyXG5leHBvcnQgYWJzdHJhY3QgY2xhc3MgQmFzZVNpbXBsZUdyaWRDb21wb25lbnQge1xyXG4gIEBDb250ZW50Q2hpbGRyZW4oU2ltcGxlR3JpZENvbHVtbkRpcmVjdGl2ZSkgc2V0IGNvbnRlbnQoY29sdW1uQ29tcG9uZW50czogUXVlcnlMaXN0PFNpbXBsZUdyaWRDb2x1bW5EaXJlY3RpdmU+KSB7XHJcbiAgICB0aGlzLmNvbHVtbnMgPSBjb2x1bW5Db21wb25lbnRzLnRvQXJyYXkoKTtcclxuICB9XHJcblxyXG4gIEBJbnB1dCgpXHJcbiAgcHVibGljIGRhdGE6IE9iamVjdFtdID0gW107XHJcblxyXG4gIEBJbnB1dCgpXHJcbiAgcHVibGljIGRyYWdEcm9wRW5hYmxlZDogYm9vbGVhbiA9IGZhbHNlO1xyXG5cclxuICBASW5wdXQoKVxyXG4gIHB1YmxpYyBpbmxpbmVFZGl0OiBib29sZWFuID0gZmFsc2U7XHJcblxyXG4gIEBJbnB1dCgpXHJcbiAgcHVibGljIHNob3dUb29sYmFyOiBib29sZWFuID0gZmFsc2U7XHJcblxyXG4gIC8qKlxyXG4gICAqIFNob3VsZCBjb21wb25lbnQgZW1pdCBkcmFnIGFuZCBkcm9wIGFjdGlvbnMgaW5zdGVhZCBvZiBoYW5kbGVcclxuICAgKiAodXBkYXRlIGNvbGxlY3Rpb24pIGJ5IGl0c2VsZlxyXG4gICAqL1xyXG4gIEBJbnB1dCgpXHJcbiAgcHVibGljIGVtaXREcmFnRHJvcDogYm9vbGVhbiA9IGZhbHNlO1xyXG5cclxuICBAT3V0cHV0KClcclxuICBwdWJsaWMgb25Ecm9wOiBFdmVudEVtaXR0ZXI8e2Zyb206IG51bWJlciwgdG86IG51bWJlcn0+ID0gbmV3IEV2ZW50RW1pdHRlcjx7ZnJvbTogbnVtYmVyOyB0bzogbnVtYmVyfT4oKTtcclxuXHJcbiAgQE91dHB1dCgpXHJcbiAgcHVibGljIHNlbGVjdFJvdzogRXZlbnRFbWl0dGVyPHt9PiA9IG5ldyBFdmVudEVtaXR0ZXI8e30+KCk7XHJcblxyXG4gIEBPdXRwdXQoKVxyXG4gIHB1YmxpYyBkYmxDbGlja1JvdzogRXZlbnRFbWl0dGVyPHt9PiA9IG5ldyBFdmVudEVtaXR0ZXI8e30+KCk7XHJcblxyXG4gIEBPdXRwdXQoKVxyXG4gIHB1YmxpYyBzYXZlUm93OiBFdmVudEVtaXR0ZXI8e30+ID0gbmV3IEV2ZW50RW1pdHRlcjx7fT4oKTtcclxuXHJcbiAgQEhvc3RMaXN0ZW5lcignZG9jdW1lbnQ6bW91c2Vtb3ZlJywgWyckZXZlbnQnXSlcclxuICBwdWJsaWMgaGFuZGxlTW91c2VNb3ZlKGV2ZW50OiBNb3VzZUV2ZW50KTogdm9pZCB7XHJcbiAgICBpZiAoZXZlbnQuYnV0dG9ucyA9PT0gMSAmJiB0aGlzLl9jb2x1bW5Gb3JSZXNpemUpIHtcclxuICAgICAgaWYgKCF0aGlzLl9jb2x1bW5Gb3JSZXNpemUud2lkdGgpIHtcclxuICAgICAgICBjb25zdCByZWN0OiBDbGllbnRSZWN0ID0gKGV2ZW50LnRhcmdldCBhcyBhbnkpLnBhcmVudEVsZW1lbnQuZ2V0Qm91bmRpbmdDbGllbnRSZWN0KCk7XHJcbiAgICAgICAgdGhpcy5fY29sdW1uRm9yUmVzaXplLndpZHRoID0gcmVjdC53aWR0aDtcclxuICAgICAgfVxyXG4gICAgICB0aGlzLl9jb2x1bW5Gb3JSZXNpemUud2lkdGggKz0gZXZlbnQubW92ZW1lbnRYO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgQEhvc3RMaXN0ZW5lcignZG9jdW1lbnQ6bW91c2V1cCcsIFsnJGV2ZW50J10pXHJcbiAgcHVibGljIGhhbmRsZU1vdXNlVXAoZXZlbnQ6IE1vdXNlRXZlbnQpOiB2b2lkIHtcclxuICAgIHRoaXMuX2NvbHVtbkZvclJlc2l6ZSA9IHVuZGVmaW5lZDtcclxuICB9XHJcblxyXG4gIHB1YmxpYyBjb2x1bW5zOiBTaW1wbGVHcmlkQ29sdW1uRGlyZWN0aXZlW10gPSBbXTtcclxuXHJcbiAgcHJpdmF0ZSBfY29sdW1uRm9yUmVzaXplOiBTaW1wbGVHcmlkQ29sdW1uRGlyZWN0aXZlO1xyXG5cclxuICBwdWJsaWMgaGFuZGxlU2l6ZXJNb3VzZURvd24oZXZlbnQ6IE1vdXNlRXZlbnQsIGNvbHVtbjogU2ltcGxlR3JpZENvbHVtbkRpcmVjdGl2ZSk6IHZvaWQge1xyXG4gICAgdGhpcy5fY29sdW1uRm9yUmVzaXplID0gY29sdW1uO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIGhhbmRsZUNhbkRyYWdEcm9wKGRyYWc6IENka0RyYWcsIGRyb3A6IENka0Ryb3BMaXN0KTogYm9vbGVhbiB7XHJcbiAgICByZXR1cm4gdHJ1ZTtcclxuICB9XHJcblxyXG4gIHB1YmxpYyBoYW5kbGVEcm9wKGV2ZW50OiBDZGtEcmFnRHJvcDxPYmplY3RbXT4pOiB2b2lkIHtcclxuICAgIHRyeSB7XHJcbiAgICAgIGNvbnN0IGZyb206IG51bWJlciA9IGV2ZW50LnByZXZpb3VzSW5kZXg7XHJcbiAgICAgIGNvbnN0IHRvOiBudW1iZXIgPSBldmVudC5jdXJyZW50SW5kZXg7XHJcbiAgICAgIGlmIChmcm9tID09PSB0bykge1xyXG4gICAgICAgIHJldHVybjtcclxuICAgICAgfVxyXG4gICAgICBpZiAodGhpcy5lbWl0RHJhZ0Ryb3ApIHtcclxuICAgICAgICB0aGlzLm9uRHJvcC5uZXh0KHtmcm9tOiBmcm9tLCB0bzogdG99KTtcclxuICAgICAgfSBlbHNlIHtcclxuICAgICAgICBtb3ZlSXRlbUluQXJyYXkodGhpcy5kYXRhLCBmcm9tLCB0byk7XHJcbiAgICAgIH1cclxuICAgIH0gY2F0Y2ggKGUpIHtcclxuICAgICAgY29uc29sZS5lcnJvcihlKTtcclxuICAgIH1cclxuICB9XHJcblxyXG59XHJcbiJdfQ==
@@ -0,0 +1,162 @@
1
+ import { 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
+ // setTimeout(() => {
112
+ this._changeDetector.markForCheck();
113
+ // this._changeDetector.detectChanges();
114
+ // });
115
+ }
116
+ }
117
+ SimpleGridCellComponent.decorators = [
118
+ { type: Component, args: [{
119
+ selector: "co-simple-grid-cell",
120
+ template: `
121
+ <div class="simple-grid-column-cell-value" [ngClass]="column.textAlign ? column.textAlign : defaultTextAlign">
122
+ <ng-container *ngIf="editMode; else noInlineEdit">
123
+ <ng-container #editTemplate *ngIf="column.editTemplate; else noEditTemplate" [ngTemplateOutlet]="column.editTemplate" [ngTemplateOutletContext]="{value: row[column.field], row: row}"></ng-container>
124
+ <ng-template #noEditTemplate>
125
+ <ng-container *ngIf="column.template; else noTemplate">
126
+ <ng-container [ngTemplateOutlet]="column.template" [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" [ngTemplateOutletContext]="{value: row[column.field], row: row}"></ng-container>
136
+ </ng-container>
137
+ <ng-template #noTemplate>
138
+ <div [textContent]="column.getFieldValue(row[column.field])"></div>
139
+ </ng-template>
140
+ </ng-template>
141
+ </div>
142
+ `,
143
+ encapsulation: ViewEncapsulation.None //,
144
+ // changeDetection: ChangeDetectionStrategy.OnPush
145
+ },] }
146
+ ];
147
+ SimpleGridCellComponent.ctorParameters = () => [
148
+ { type: ChangeDetectorRef }
149
+ ];
150
+ SimpleGridCellComponent.propDecorators = {
151
+ editTemplateContent: [{ type: ViewChild, args: ["editTemplate", { read: BaseInputComponent },] }],
152
+ noEditTemplateContent: [{ type: ViewChild, args: ["noEditTemplate",] }],
153
+ noTemplateContent: [{ type: ViewChild, args: ["noTemplate",] }],
154
+ column: [{ type: Input }],
155
+ row: [{ type: Input }],
156
+ editMode: [{ type: Input }],
157
+ fieldEditMode: [{ type: Input }],
158
+ cellClick: [{ type: Output }],
159
+ showClass: [{ type: HostBinding, args: ["class.co-simple-grid-cell",] }],
160
+ handleClick: [{ type: HostListener, args: ['click', ['$event'],] }]
161
+ };
162
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2ltcGxlLWdyaWQtY2VsbC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jb3JlY29tcG9uZW50cy9zcmMvbGliL2NvbXBvbmVudHMvc2ltcGxlLWdyaWQvc2ltcGxlLWdyaWQtY2VsbC5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUNMLGlCQUFpQixFQUNqQixTQUFTLEVBQ1QsWUFBWSxFQUNaLFdBQVcsRUFDWCxZQUFZLEVBQ1osS0FBSyxFQUNMLE1BQU0sRUFFTixTQUFTLEVBQ1QsaUJBQWlCLEVBQ2xCLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFBQyxXQUFXLEVBQTRCLE1BQU0sZ0NBQWdDLENBQUM7QUFDdEYsT0FBTyxFQUFDLGtCQUFrQixFQUFDLE1BQU0sOEJBQThCLENBQUM7QUE4QmhFLE1BQU0sT0FBTyx1QkFBdUI7SUFnRWxDLFlBQW9CLGVBQWtDO1FBQWxDLG9CQUFlLEdBQWYsZUFBZSxDQUFtQjtRQS9EdEMscUJBQWdCLEdBQWdCLFdBQVcsQ0FBQyxJQUFJLENBQUM7UUE4QjFELGFBQVEsR0FBWSxLQUFLLENBQUM7UUFhMUIsY0FBUyxHQUF1QixJQUFJLFlBQVksRUFBUSxDQUFDO1FBY3hELG1CQUFjLEdBQVksS0FBSyxDQUFDO1FBQ2hDLGFBQVEsR0FBWSxLQUFLLENBQUM7SUFNbEMsQ0FBQztJQTlERCxJQUE2RCxtQkFBbUIsQ0FBQyxRQUFRO1FBQ3ZGLElBQUksUUFBUSxFQUFFO1lBQ1osSUFBSSxDQUFDLGFBQWEsR0FBRyxRQUFRLENBQUM7WUFDOUIsSUFBSSxDQUFDLGtCQUFrQixFQUFFLENBQUM7U0FDM0I7SUFDSCxDQUFDO0lBRUQsSUFBaUMscUJBQXFCLENBQUMsUUFBUTtRQUM3RCxJQUFJLFFBQVEsRUFBRTtZQUNaLElBQUksQ0FBQyxTQUFTLEdBQUcsUUFBUSxDQUFDO1lBQzFCLElBQUksQ0FBQyxrQkFB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QWdCO2dDQU8xQixTQUFTLFNBQUMsWUFBWTtxQkFPdEIsS0FBSztrQkFHTCxLQUFLO3VCQUdMLEtBQUs7NEJBR0wsS0FBSzt3QkFVTCxNQUFNO3dCQUdOLFdBQVcsU0FBQywyQkFBMkI7MEJBS3ZDLFlBQVksU0FBQyxPQUFPLEVBQUUsQ0FBQyxRQUFRLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xyXG4gIENoYW5nZURldGVjdG9yUmVmLFxyXG4gIENvbXBvbmVudCxcclxuICBFdmVudEVtaXR0ZXIsXHJcbiAgSG9zdEJpbmRpbmcsXHJcbiAgSG9zdExpc3RlbmVyLFxyXG4gIElucHV0LFxyXG4gIE91dHB1dCxcclxuICBUZW1wbGF0ZVJlZixcclxuICBWaWV3Q2hpbGQsXHJcbiAgVmlld0VuY2Fwc3VsYXRpb25cclxufSBmcm9tIFwiQGFuZ3VsYXIvY29yZVwiO1xyXG5pbXBvcnQge0NvbHVtbkFsaWduLCBTaW1wbGVHcmlkQ29sdW1uRGlyZWN0aXZlfSBmcm9tIFwiLi9zaW1wbGUtZ3JpZC1jb2x1bW4uZGlyZWN0aXZlXCI7XHJcbmltcG9ydCB7QmFzZUlucHV0Q29tcG9uZW50fSBmcm9tIFwiLi4vYmFzZS9iYXNlLWlucHV0LmNvbXBvbmVudFwiO1xyXG5cclxuQENvbXBvbmVudCh7XHJcbiAgc2VsZWN0b3I6IFwiY28tc2ltcGxlLWdyaWQtY2VsbFwiLFxyXG4gIHRlbXBsYXRlOiBgXHJcbiAgICA8ZGl2IGNsYXNzPVwic2ltcGxlLWdyaWQtY29sdW1uLWNlbGwtdmFsdWVcIiBbbmdDbGFzc109XCJjb2x1bW4udGV4dEFsaWduID8gY29sdW1uLnRleHRBbGlnbiA6IGRlZmF1bHRUZXh0QWxpZ25cIj5cclxuICAgICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cImVkaXRNb2RlOyBlbHNlIG5vSW5saW5lRWRpdFwiPlxyXG4gICAgICAgIDxuZy1jb250YWluZXIgI2VkaXRUZW1wbGF0ZSAqbmdJZj1cImNvbHVtbi5lZGl0VGVtcGxhdGU7IGVsc2Ugbm9FZGl0VGVtcGxhdGVcIiBbbmdUZW1wbGF0ZU91dGxldF09XCJjb2x1bW4uZWRpdFRlbXBsYXRlXCIgW25nVGVtcGxhdGVPdXRsZXRDb250ZXh0XT1cInt2YWx1ZTogcm93W2NvbHVtbi5maWVsZF0sIHJvdzogcm93fVwiPjwvbmctY29udGFpbmVyPlxyXG4gICAgICAgIDxuZy10ZW1wbGF0ZSAjbm9FZGl0VGVtcGxhdGU+XHJcbiAgICAgICAgICA8bmctY29udGFpbmVyICpuZ0lmPVwiY29sdW1uLnRlbXBsYXRlOyBlbHNlIG5vVGVtcGxhdGVcIj5cclxuICAgICAgICAgICAgPG5nLWNvbnRhaW5lciBbbmdUZW1wbGF0ZU91dGxldF09XCJjb2x1bW4udGVtcGxhdGVcIiBbbmdUZW1wbGF0ZU91dGxldENvbnRleHRdPVwie3ZhbHVlOiByb3dbY29sdW1uLmZpZWxkXSwgcm93OiByb3d9XCI+PC9uZy1jb250YWluZXI+XHJcbiAgICAgICAgICA8L25nLWNvbnRhaW5lcj5cclxuICAgICAgICAgIDxuZy10ZW1wbGF0ZSAjbm9UZW1wbGF0ZT5cclxuICAgICAgICAgICAgPGNvLWlucHV0LXRleHQgWyhtb2RlbCldPVwicm93W2NvbHVtbi5maWVsZF1cIiBbcmVxdWlyZWRdPVwiY29sdW1uLnJlcXVpcmVkXCI+PC9jby1pbnB1dC10ZXh0PlxyXG4gICAgICAgICAgPC9uZy10ZW1wbGF0ZT5cclxuICAgICAgICA8L25nLXRlbXBsYXRlPlxyXG4gICAgICA8L25nLWNvbnRhaW5lcj5cclxuICAgICAgPG5nLXRlbXBsYXRlICNub0lubGluZUVkaXQ+XHJcbiAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cImNvbHVtbi50ZW1wbGF0ZTsgZWxzZSBub1RlbXBsYXRlXCI+XHJcbiAgICAgICAgICA8bmctY29udGFpbmVyIFtuZ1RlbXBsYXRlT3V0bGV0XT1cImNvbHVtbi50ZW1wbGF0ZVwiIFtuZ1RlbXBsYXRlT3V0bGV0Q29udGV4dF09XCJ7dmFsdWU6IHJvd1tjb2x1bW4uZmllbGRdLCByb3c6IHJvd31cIj48L25nLWNvbnRhaW5lcj5cclxuICAgICAgICA8L25nLWNvbnRhaW5lcj5cclxuICAgICAgICA8bmctdGVtcGxhdGUgI25vVGVtcGxhdGU+XHJcbiAgICAgICAgICAgIDxkaXYgW3RleHRDb250ZW50XT1cImNvbHVtbi5nZXRGaWVsZFZhbHVlKHJvd1tjb2x1bW4uZmllbGRdKVwiPjwvZGl2PlxyXG4gICAgICAgIDwvbmctdGVtcGxhdGU+XHJcbiAgICAgIDwvbmctdGVtcGxhdGU+XHJcbiAgICA8L2Rpdj5cclxuICBgLFxyXG4gIGVuY2Fwc3VsYXRpb246IFZpZXdFbmNhcHN1bGF0aW9uLk5vbmUvLyxcclxuICAvLyBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaFxyXG59KVxyXG5leHBvcnQgY2xhc3MgU2ltcGxlR3JpZENlbGxDb21wb25lbnQge1xyXG4gIHB1YmxpYyByZWFkb25seSBkZWZhdWx0VGV4dEFsaWduOiBDb2x1bW5BbGlnbiA9IENvbHVtbkFsaWduLkxlZnQ7XHJcblxyXG4gIEBWaWV3Q2hpbGQoXCJlZGl0VGVtcGxhdGVcIiwgeyByZWFkOiBCYXNlSW5wdXRDb21wb25lbnQgfSkgc2V0IGVkaXRUZW1wbGF0ZUNvbnRlbnQodGVtcGxhdGUpIHtcclxuICAgIGlmICh0ZW1wbGF0ZSkge1xyXG4gICAgICB0aGlzLl9lZGl0VGVtcGxhdGUgPSB0ZW1wbGF0ZTtcclxuICAgICAgdGhpcy5fc2V0Rm9jdXNDb21wb25lbnQoKTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIEBWaWV3Q2hpbGQoXCJub0VkaXRUZW1wbGF0ZVwiKSBzZXQgbm9FZGl0VGVtcGxhdGVDb250ZW50KHRlbXBsYXRlKSB7XHJcbiAgICBpZiAodGVtcGxhdGUpIHtcclxuICAgICAgdGhpcy5fdGVtcGxhdGUgPSB0ZW1wbGF0ZTtcclxuICAgICAgdGhpcy5fc2V0Rm9jdXNDb21wb25lbnQoKTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIEBWaWV3Q2hpbGQoXCJub1RlbXBsYXRlXCIpIHNldCBub1RlbXBsYXRlQ29udGVudCh0ZW1wbGF0ZSkge1xyXG4gICAgaWYgKHRlbXBsYXRlKSB7XHJcbiAgICAgIHRoaXMuX2lucHV0VGVtcGxhdGUgPSB0ZW1wbGF0ZTtcclxuICAgICAgdGhpcy5fc2V0Rm9jdXNDb21wb25lbnQoKTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIEBJbnB1dCgpXHJcbiAgcHVibGljIGNvbHVtbjogU2ltcGxlR3JpZENvbHVtbkRpcmVjdGl2ZTtcclxuXHJcbiAgQElucHV0KClcclxuICBwdWJsaWMgcm93OiB7fTtcclxuXHJcbiAgQElucHV0KClcclxuICBwdWJsaWMgZWRpdE1vZGU6IGJvb2xlYW4gPSBmYWxzZTtcclxuXHJcbiAgQElucHV0KClcclxuICBwdWJsaWMgc2V0IGZpZWxkRWRpdE1vZGUodmFsdWU6IGJvb2xlYW4pIHtcclxuICAgIHRoaXMuX2ZpZWxkRWRpdE1vZGUgPSB2YWx1ZTtcclxuICAgIHRoaXMuX3NldEZvY3VzQ29tcG9uZW50KCk7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgZ2V0IGZpZWxkRWRpdE1vZGUoKTogYm9vbGVhbiB7XHJcbiAgICByZXR1cm4gdGhpcy5fZmllbGRFZGl0TW9kZTtcclxuICB9XHJcblxyXG4gIEBPdXRwdXQoKVxyXG4gIHB1YmxpYyBjZWxsQ2xpY2s6IEV2ZW50RW1pdHRlcjx2b2lkPiA9IG5ldyBFdmVudEVtaXR0ZXI8dm9pZD4oKTtcclxuXHJcbiAgQEhvc3RCaW5kaW5nKFwiY2xhc3MuY28tc2ltcGxlLWdyaWQtY2VsbFwiKVxyXG4gIHB1YmxpYyBzaG93Q2xhc3MoKTogYm9vbGVhbiB7XHJcbiAgICByZXR1cm4gdHJ1ZTtcclxuICB9XHJcblxyXG4gIEBIb3N0TGlzdGVuZXIoJ2NsaWNrJywgWyckZXZlbnQnXSlcclxuICBwdWJsaWMgaGFuZGxlQ2xpY2soZXZlbnQ6IE1vdXNlRXZlbnQpOiB2b2lkIHtcclxuICAgIGlmICh0aGlzLmNvbHVtbiAmJiAhdGhpcy5jb2x1bW4ucmVhZG9ubHkpIHtcclxuICAgICAgdGhpcy5jZWxsQ2xpY2submV4dCgpO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSBfZmllbGRFZGl0TW9kZTogYm9vbGVhbiA9IGZhbHNlO1xyXG4gIHByaXZhdGUgX2ZvY3VzZWQ6IGJvb2xlYW4gPSBmYWxzZTtcclxuICBwcml2YXRlIF9lZGl0VGVtcGxhdGU6IFRlbXBsYXRlUmVmPGFueT47XHJcbiAgcHJpdmF0ZSBfdGVtcGxhdGU6IFRlbXBsYXRlUmVmPGFueT47XHJcbiAgcHJpdmF0ZSBfaW5wdXRUZW1wbGF0ZTogVGVtcGxhdGVSZWY8YW55PjtcclxuXHJcbiAgY29uc3RydWN0b3IocHJpdmF0ZSBfY2hhbmdlRGV0ZWN0b3I6IENoYW5nZURldGVjdG9yUmVmKSB7XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIF9zZXRGb2N1c0NvbXBvbmVudCgpOiB2b2lkIHtcclxuICAgIGlmICh0aGlzLmVkaXRNb2RlICYmIHRoaXMuZmllbGRFZGl0TW9kZSkge1xyXG4gICAgICBjb25zdCBlbGVtZW50ID0gdGhpcy5fZ2V0RWxlbWVudCgpO1xyXG4gICAgICBpZiAoZWxlbWVudCkge1xyXG4gICAgICAgIGNvbnN0IGZvY3VzRXZlbnQgPSB0aGlzLl9jcmVhdGVOZXdFdmVudChlbGVtZW50LCAnZm9jdXMnKTtcclxuICAgICAgICBlbGVtZW50LmZvY3VzKCk7XHJcbiAgICAgICAgZWxlbWVudC5kaXNwYXRjaEV2ZW50KGZvY3VzRXZlbnQpO1xyXG4gICAgICAgIHRoaXMuX2ZvY3VzZWQgPSB0cnVlO1xyXG4gICAgICB9XHJcbiAgICB9IGVsc2Uge1xyXG4gICAgICBpZiAodGhpcy5fZm9jdXNlZCkge1xyXG4gICAgICAgIGNvbnN0IGVsZW1lbnQgPSB0aGlzLl9nZXRFbGVtZW50KCk7XHJcbiAgICAgICAgaWYgKGVsZW1lbnQpIHtcclxuICAgICAgICAgIGNvbnN0IGJsdXJFdmVudCA9IHRoaXMuX2NyZWF0ZU5ld0V2ZW50KGVsZW1lbnQsICdibHVyJyk7XHJcbiAgICAgICAgICBlbGVtZW50LmJsdXIoKTtcclxuICAgICAgICAgIGVsZW1lbnQuZGlzcGF0Y2hFdmVudChibHVyRXZlbnQpO1xyXG4gICAgICAgIH1cclxuICAgICAgICB0aGlzLl9mb2N1c2VkID0gZmFsc2U7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICAgIHRoaXMuX2RldGVjdENoYW5nZXMoKTtcclxuICB9XHJcblxyXG4gIHByaXZhdGUgX2dldEZpcnN0Rm9ybUlucHV0KHBhcmVudDogYW55KTogYW55IHtcclxuICAgIGlmIChwYXJlbnQpIHtcclxuICAgICAgY29uc3QgY29sbGVjdGlvbiA9IEFycmF5LmZyb20ocGFyZW50LmdldEVsZW1lbnRzQnlUYWdOYW1lKCdpbnB1dCcpKTtcclxuICAgICAgY29uc3Qgb3RoZXJDb2xsZWN0aW9uID0gQXJyYXkuZnJvbShwYXJlbnQuZ2V0RWxlbWVudHNCeVRhZ05hbWUoJ3RleHRhcmVhJykpO1xyXG4gICAgICBvdGhlckNvbGxlY3Rpb24ubWFwKG8gPT4gY29sbGVjdGlvbi5wdXNoKG8pKTtcclxuICAgICAgaWYgKGNvbGxlY3Rpb24ubGVuZ3RoID4gMCkge1xyXG4gICAgICAgIHJldHVybiBjb2xsZWN0aW9uWzBdO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIF9jcmVhdGVOZXdFdmVudChlbGVtZW50OiBhbnksIGV2ZW50VHlwZTogc3RyaW5nKTogRXZlbnQge1xyXG4gICAgbGV0IGV2ZW50O1xyXG4gICAgaWYgKFwiY3JlYXRlRXZlbnRcIiBpbiBkb2N1bWVudCkge1xyXG4gICAgICBldmVudCA9IGRvY3VtZW50LmNyZWF0ZUV2ZW50KFwiRXZlbnRcIik7XHJcbiAgICAgIGV2ZW50LmluaXRFdmVudChldmVudFR5cGUsIHRydWUsIHRydWUpO1xyXG4gICAgfSBlbHNlIGlmIChcIkV2ZW50XCIgaW4gd2luZG93KSB7XHJcbiAgICAgIGV2ZW50ID0gbmV3IEV2ZW50KGV2ZW50VHlwZSwgeyBidWJibGVzOiB0cnVlLCBjYW5jZWxhYmxlOiB0cnVlIH0pO1xyXG4gICAgfVxyXG4gICAgcmV0dXJuIGV2ZW50O1xyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSBfZ2V0RWxlbWVudCgpOiBIVE1MRWxlbWVudCB7XHJcbiAgICBsZXQgdGVtcGw6IFRlbXBsYXRlUmVmPGFueT47XHJcbiAgICBpZiAodGhpcy5fZWRpdFRlbXBsYXRlKSB7XHJcbiAgICAgIHRlbXBsID0gdGhpcy5fZWRpdFRlbXBsYXRlO1xyXG4gICAgfSBlbHNlIGlmICh0aGlzLl90ZW1wbGF0ZSkge1xyXG4gICAgICB0ZW1wbCA9IHRoaXMuX3RlbXBsYXRlO1xyXG4gICAgfSBlbHNlIHtcclxuICAgICAgdGVtcGwgPSB0aGlzLl9pbnB1dFRlbXBsYXRlO1xyXG4gICAgfVxyXG4gICAgaWYgKHRlbXBsKSB7XHJcbiAgICAgIGlmICh0ZW1wbCAmJiB0ZW1wbC5lbGVtZW50UmVmKSB7XHJcbiAgICAgICAgY29uc3QgaW5wdXRFbGVtZW50ID0gdGhpcy5fZ2V0Rmlyc3RGb3JtSW5wdXQodGVtcGwuZWxlbWVudFJlZi5uYXRpdmVFbGVtZW50LnBhcmVudEVsZW1lbnQpO1xyXG4gICAgICAgIGlmIChpbnB1dEVsZW1lbnQpIHtcclxuICAgICAgICAgIHJldHVybiBpbnB1dEVsZW1lbnQ7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIF9kZXRlY3RDaGFuZ2VzKCk6IHZvaWQge1xyXG4gICAgLy8gc2V0VGltZW91dCgoKSA9PiB7XHJcbiAgICAgIHRoaXMuX2NoYW5nZURldGVjdG9yLm1hcmtGb3JDaGVjaygpO1xyXG4gICAgICAvLyB0aGlzLl9jaGFuZ2VEZXRlY3Rvci5kZXRlY3RDaGFuZ2VzKCk7XHJcbiAgICAvLyB9KTtcclxuICB9XHJcbn1cclxuIl19
@@ -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,8 @@ export var ColumnAlign;
8
8
  export class SimpleGridColumnDirective {
9
9
  constructor() {
10
10
  this.resizable = true;
11
+ this.required = false;
12
+ this.readonly = false;
11
13
  }
12
14
  set template(template) {
13
15
  if (template) {
@@ -17,6 +19,23 @@ export class SimpleGridColumnDirective {
17
19
  get template() {
18
20
  return this._template;
19
21
  }
22
+ set editTemplate(template) {
23
+ if (template) {
24
+ this._editTemplate = template;
25
+ }
26
+ }
27
+ get editTemplate() {
28
+ return this._editTemplate;
29
+ }
30
+ getFieldValue(value) {
31
+ if (this.collection && this.displayField) {
32
+ const result = this.collection.find(c => c[this.codeField] === value);
33
+ if (result) {
34
+ return result[this.displayField];
35
+ }
36
+ }
37
+ return value;
38
+ }
20
39
  }
21
40
  SimpleGridColumnDirective._MinManualResizeWidthPx = 50;
22
41
  SimpleGridColumnDirective.decorators = [
@@ -25,12 +44,18 @@ SimpleGridColumnDirective.decorators = [
25
44
  },] }
26
45
  ];
27
46
  SimpleGridColumnDirective.propDecorators = {
28
- template: [{ type: ContentChild, args: [TemplateRef,] }],
47
+ template: [{ type: ContentChild, args: ['template',] }],
48
+ editTemplate: [{ type: ContentChild, args: ['editTemplate',] }],
29
49
  headerText: [{ type: Input }],
30
50
  field: [{ type: Input }],
51
+ codeField: [{ type: Input }],
52
+ displayField: [{ type: Input }],
31
53
  textAlign: [{ type: Input }],
32
54
  format: [{ type: Input }],
33
55
  resizable: [{ type: Input }],
34
- width: [{ type: Input }]
56
+ required: [{ type: Input }],
57
+ width: [{ type: Input }],
58
+ readonly: [{ type: Input }],
59
+ collection: [{ type: Input }]
35
60
  };
36
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2ltcGxlLWdyaWQtY29sdW1uLmRpcmVjdGl2ZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NvcmVjb21wb25lbnRzL3NyYy9saWIvY29tcG9uZW50cy9zaW1wbGUtZ3JpZC9zaW1wbGUtZ3JpZC1jb2x1bW4uZGlyZWN0aXZlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBQyxZQUFZLEVBQUUsU0FBUyxFQUFFLEtBQUssRUFBRSxXQUFXLEVBQUMsTUFBTSxlQUFlLENBQUM7QUFFMUUsTUFBTSxDQUFOLElBQVksV0FJWDtBQUpELFdBQVksV0FBVztJQUNyQixrQ0FBbUIsQ0FBQTtJQUNuQixzQ0FBdUIsQ0FBQTtJQUN2QixvQ0FBcUIsQ0FBQTtBQUN2QixDQUFDLEVBSlcsV0FBVyxLQUFYLFdBQVcsUUFJdEI7QUFLRCxNQUFNLE9BQU8seUJBQXlCO0lBSHRDO1FBOEJTLGNBQVMsR0FBWSxJQUFJLENBQUM7SUFPbkMsQ0FBQztJQS9CQyxJQUNXLFFBQVEsQ0FBQyxRQUEwQjtRQUM1QyxJQUFJLFFBQVEsRUFBRTtZQUNaLElBQUksQ0FBQyxTQUFTLEdBQUcsUUFBUSxDQUFDO1NBQzNCO0lBQ0gsQ0FBQztJQUVELElBQVcsUUFBUTtRQUNqQixPQUFPLElBQUksQ0FBQyxTQUFTLENBQUM7SUFDeEIsQ0FBQzs7QUFYYyxpREFBdUIsR0FBVyxFQUFFLENBQUM7O1lBSnJELFNBQVMsU0FBQztnQkFDVCxRQUFRLEVBQUUsdUJBQXVCO2FBQ2xDOzs7dUJBSUUsWUFBWSxTQUFDLFdBQVc7eUJBV3hCLEtBQUs7b0JBR0wsS0FBSzt3QkFHTCxLQUFLO3FCQUdMLEtBQUs7d0JBR0wsS0FBSztvQkFHTCxLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtDb250ZW50Q2hpbGQsIERpcmVjdGl2ZSwgSW5wdXQsIFRlbXBsYXRlUmVmfSBmcm9tIFwiQGFuZ3VsYXIvY29yZVwiO1xyXG5cclxuZXhwb3J0IGVudW0gQ29sdW1uQWxpZ24ge1xyXG4gIExlZnQgPSBcImxlZnQtYWxpZ25cIixcclxuICBDZW50ZXIgPSBcImNlbnRlci1hbGlnblwiLFxyXG4gIFJpZ2h0ID0gXCJyaWdodC1hbGlnblwiXHJcbn1cclxuXHJcbkBEaXJlY3RpdmUoe1xyXG4gIHNlbGVjdG9yOiBcImNvLXNpbXBsZS1ncmlkLWNvbHVtblwiXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBTaW1wbGVHcmlkQ29sdW1uRGlyZWN0aXZlIHtcclxuICBwcml2YXRlIHN0YXRpYyBfTWluTWFudWFsUmVzaXplV2lkdGhQeDogbnVtYmVyID0gNTA7XHJcblxyXG4gIEBDb250ZW50Q2hpbGQoVGVtcGxhdGVSZWYpXHJcbiAgcHVibGljIHNldCB0ZW1wbGF0ZSh0ZW1wbGF0ZTogVGVtcGxhdGVSZWY8YW55Pikge1xyXG4gICAgaWYgKHRlbXBsYXRlKSB7XHJcbiAgICAgIHRoaXMuX3RlbXBsYXRlID0gdGVtcGxhdGU7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgZ2V0IHRlbXBsYXRlKCk6IFRlbXBsYXRlUmVmPGFueT4ge1xyXG4gICAgcmV0dXJuIHRoaXMuX3RlbXBsYXRlO1xyXG4gIH1cclxuXHJcbiAgQElucHV0KClcclxuICBwdWJsaWMgaGVhZGVyVGV4dDogc3RyaW5nO1xyXG5cclxuICBASW5wdXQoKVxyXG4gIHB1YmxpYyBmaWVsZDogc3RyaW5nO1xyXG5cclxuICBASW5wdXQoKVxyXG4gIHB1YmxpYyB0ZXh0QWxpZ246IENvbHVtbkFsaWduO1xyXG5cclxuICBASW5wdXQoKVxyXG4gIHB1YmxpYyBmb3JtYXQ6IHN0cmluZztcclxuXHJcbiAgQElucHV0KClcclxuICBwdWJsaWMgcmVzaXphYmxlOiBib29sZWFuID0gdHJ1ZTtcclxuXHJcbiAgQElucHV0KClcclxuICBwdWJsaWMgd2lkdGg6IG51bWJlcjtcclxuXHJcbiAgcHJpdmF0ZSBfdGVtcGxhdGU6IFRlbXBsYXRlUmVmPGFueT47XHJcblxyXG59XHJcbiJdfQ==
61
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2ltcGxlLWdyaWQtY29sdW1uLmRpcmVjdGl2ZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NvcmVjb21wb25lbnRzL3NyYy9saWIvY29tcG9uZW50cy9zaW1wbGUtZ3JpZC9zaW1wbGUtZ3JpZC1jb2x1bW4uZGlyZWN0aXZlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBQyxZQUFZLEVBQUUsU0FBUyxFQUFFLEtBQUssRUFBYyxNQUFNLGVBQWUsQ0FBQztBQUUxRSxNQUFNLENBQU4sSUFBWSxXQUlYO0FBSkQsV0FBWSxXQUFXO0lBQ3JCLGtDQUFtQixDQUFBO0lBQ25CLHNDQUF1QixDQUFBO0lBQ3ZCLG9DQUFxQixDQUFBO0FBQ3ZCLENBQUMsRUFKVyxXQUFXLEtBQVgsV0FBVyxRQUl0QjtBQUtELE1BQU0sT0FBTyx5QkFBeUI7SUFIdEM7UUErQ1MsY0FBUyxHQUFZLElBQUksQ0FBQztRQUcxQixhQUFRLEdBQVksS0FBSyxDQUFDO1FBTTFCLGFBQVEsR0FBWSxLQUFLLENBQUM7SUFrQm5DLENBQUM7SUFwRUMsSUFDVyxRQUFRLENBQUMsUUFBMEI7UUFDNUMsSUFBSSxRQUFRLEVBQUU7WUFDWixJQUFJLENBQUMsU0FBUyxHQUFHLFFBQVEsQ0FBQztTQUMzQjtJQUNILENBQUM7SUFFRCxJQUFXLFFBQVE7UUFDakIsT0FBTyxJQUFJLENBQUMsU0FBUyxDQUFDO0lBQ3hCLENBQUM7SUFFRCxJQUNXLFlBQVksQ0FBQyxRQUEwQjtRQUNoRCxJQUFJLFFBQVEsRUFBRTtZQUNaLElBQUksQ0FBQyxhQUFhLEdBQUcsUUFBUSxDQUFDO1NBQy9CO0lBQ0gsQ0FBQztJQUVELElBQVcsWUFBWTtRQUNyQixPQUFPLElBQUksQ0FBQyxhQUFhLENBQUM7SUFDNUIsQ0FBQztJQW1DTSxhQUFhLENBQUMsS0FBVTtRQUM3QixJQUFJLElBQUksQ0FBQyxVQUFVLElBQUksSUFBSSxDQUFDLFlBQVksRUFBRTtZQUN4QyxNQUFNLE1BQU0sR0FBRyxJQUFJLENBQUMsVUFBVSxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLEtBQUssS0FBSyxDQUFDLENBQUM7WUFDdEUsSUFBSSxNQUFNLEVBQUU7Z0JBQ1YsT0FBTyxNQUFNLENBQUMsSUFBSSxDQUFDLFlBQVksQ0FBQyxDQUFDO2FBQ2xDO1NBQ0Y7UUFDRCxPQUFPLEtBQUssQ0FBQztJQUNmLENBQUM7O0FBakVjLGlEQUF1QixHQUFXLEVBQUUsQ0FBQzs7WUFKckQsU0FBUyxTQUFDO2dCQUNULFFBQVEsRUFBRSx1QkFBdUI7YUFDbEM7Ozt1QkFJRSxZQUFZLFNBQUMsVUFBVTsyQkFXdkIsWUFBWSxTQUFDLGNBQWM7eUJBVzNCLEtBQUs7b0JBR0wsS0FBSzt3QkFHTCxLQUFLOzJCQUdMLEtBQUs7d0JBR0wsS0FBSztxQkFHTCxLQUFLO3dCQUdMLEtBQUs7dUJBR0wsS0FBSztvQkFHTCxLQUFLO3VCQUdMLEtBQUs7eUJBR0wsS0FBSyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7Q29udGVudENoaWxkLCBEaXJlY3RpdmUsIElucHV0LCBUZW1wbGF0ZVJlZn0gZnJvbSBcIkBhbmd1bGFyL2NvcmVcIjtcclxuXHJcbmV4cG9ydCBlbnVtIENvbHVtbkFsaWduIHtcclxuICBMZWZ0ID0gXCJsZWZ0LWFsaWduXCIsXHJcbiAgQ2VudGVyID0gXCJjZW50ZXItYWxpZ25cIixcclxuICBSaWdodCA9IFwicmlnaHQtYWxpZ25cIlxyXG59XHJcblxyXG5ARGlyZWN0aXZlKHtcclxuICBzZWxlY3RvcjogXCJjby1zaW1wbGUtZ3JpZC1jb2x1bW5cIlxyXG59KVxyXG5leHBvcnQgY2xhc3MgU2ltcGxlR3JpZENvbHVtbkRpcmVjdGl2ZSB7XHJcbiAgcHJpdmF0ZSBzdGF0aWMgX01pbk1hbnVhbFJlc2l6ZVdpZHRoUHg6IG51bWJlciA9IDUwO1xyXG5cclxuICBAQ29udGVudENoaWxkKCd0ZW1wbGF0ZScpXHJcbiAgcHVibGljIHNldCB0ZW1wbGF0ZSh0ZW1wbGF0ZTogVGVtcGxhdGVSZWY8YW55Pikge1xyXG4gICAgaWYgKHRlbXBsYXRlKSB7XHJcbiAgICAgIHRoaXMuX3RlbXBsYXRlID0gdGVtcGxhdGU7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgZ2V0IHRlbXBsYXRlKCk6IFRlbXBsYXRlUmVmPGFueT4ge1xyXG4gICAgcmV0dXJuIHRoaXMuX3RlbXBsYXRlO1xyXG4gIH1cclxuXHJcbiAgQENvbnRlbnRDaGlsZCgnZWRpdFRlbXBsYXRlJylcclxuICBwdWJsaWMgc2V0IGVkaXRUZW1wbGF0ZSh0ZW1wbGF0ZTogVGVtcGxhdGVSZWY8YW55Pikge1xyXG4gICAgaWYgKHRlbXBsYXRlKSB7XHJcbiAgICAgIHRoaXMuX2VkaXRUZW1wbGF0ZSA9IHRlbXBsYXRlO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgcHVibGljIGdldCBlZGl0VGVtcGxhdGUoKTogVGVtcGxhdGVSZWY8YW55PiB7XHJcbiAgICByZXR1cm4gdGhpcy5fZWRpdFRlbXBsYXRlO1xyXG4gIH1cclxuXHJcbiAgQElucHV0KClcclxuICBwdWJsaWMgaGVhZGVyVGV4dDogc3RyaW5nO1xyXG5cclxuICBASW5wdXQoKVxyXG4gIHB1YmxpYyBmaWVsZDogc3RyaW5nO1xyXG5cclxuICBASW5wdXQoKVxyXG4gIHB1YmxpYyBjb2RlRmllbGQ6IHN0cmluZztcclxuXHJcbiAgQElucHV0KClcclxuICBwdWJsaWMgZGlzcGxheUZpZWxkOiBzdHJpbmc7XHJcblxyXG4gIEBJbnB1dCgpXHJcbiAgcHVibGljIHRleHRBbGlnbjogQ29sdW1uQWxpZ247XHJcblxyXG4gIEBJbnB1dCgpXHJcbiAgcHVibGljIGZvcm1hdDogc3RyaW5nO1xyXG5cclxuICBASW5wdXQoKVxyXG4gIHB1YmxpYyByZXNpemFibGU6IGJvb2xlYW4gPSB0cnVlO1xyXG5cclxuICBASW5wdXQoKVxyXG4gIHB1YmxpYyByZXF1aXJlZDogYm9vbGVhbiA9IGZhbHNlO1xyXG5cclxuICBASW5wdXQoKVxyXG4gIHB1YmxpYyB3aWR0aDogbnVtYmVyO1xyXG5cclxuICBASW5wdXQoKVxyXG4gIHB1YmxpYyByZWFkb25seTogYm9vbGVhbiA9IGZhbHNlO1xyXG5cclxuICBASW5wdXQoKVxyXG4gIHB1YmxpYyBjb2xsZWN0aW9uOiB7fVtdO1xyXG5cclxuICBwdWJsaWMgZ2V0RmllbGRWYWx1ZSh2YWx1ZTogYW55KTogc3RyaW5nIHtcclxuICAgIGlmICh0aGlzLmNvbGxlY3Rpb24gJiYgdGhpcy5kaXNwbGF5RmllbGQpIHtcclxuICAgICAgY29uc3QgcmVzdWx0ID0gdGhpcy5jb2xsZWN0aW9uLmZpbmQoYyA9PiBjW3RoaXMuY29kZUZpZWxkXSA9PT0gdmFsdWUpO1xyXG4gICAgICBpZiAocmVzdWx0KSB7XHJcbiAgICAgICAgcmV0dXJuIHJlc3VsdFt0aGlzLmRpc3BsYXlGaWVsZF07XHJcbiAgICAgIH1cclxuICAgIH1cclxuICAgIHJldHVybiB2YWx1ZTtcclxuICB9XHJcblxyXG4gIHByaXZhdGUgX3RlbXBsYXRlOiBUZW1wbGF0ZVJlZjxhbnk+O1xyXG4gIHByaXZhdGUgX2VkaXRUZW1wbGF0ZTogVGVtcGxhdGVSZWY8YW55PjtcclxuXHJcbn1cclxuIl19