@coolon/angular-ui-powerups 2.0.0-alpha.4 → 2.0.0-alpha.6

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 (100) hide show
  1. package/CHANGELOG.md +14 -0
  2. package/bundles/coolon-angular-ui-powerups.umd.js +93 -36
  3. package/bundles/coolon-angular-ui-powerups.umd.js.map +1 -1
  4. package/bundles/coolon-angular-ui-powerups.umd.min.js +1 -1
  5. package/bundles/coolon-angular-ui-powerups.umd.min.js.map +1 -1
  6. package/coolon-angular-ui-powerups.metadata.json +1 -1
  7. package/esm2015/lib/components/forms/abstract-input.component.js.map +1 -1
  8. package/esm2015/lib/components/forms/abstract-list-input.component.js +37 -5
  9. package/esm2015/lib/components/forms/abstract-list-input.component.js.map +1 -1
  10. package/esm2015/lib/components/forms/abstract-list-input.component.metadata.json +1 -1
  11. package/esm2015/lib/components/forms/abstract-value-input.component.js +30 -2
  12. package/esm2015/lib/components/forms/abstract-value-input.component.js.map +1 -1
  13. package/esm2015/lib/components/forms/abstract-value-input.component.metadata.json +1 -1
  14. package/esm2015/lib/components/forms/checkbox-input/checkbox-input.component.js +2 -5
  15. package/esm2015/lib/components/forms/checkbox-input/checkbox-input.component.js.map +1 -1
  16. package/esm2015/lib/components/forms/checkbox-input/checkbox-input.component.metadata.json +1 -1
  17. package/esm2015/lib/components/forms/multiple-select-input/multiple-select-input.component.js +0 -4
  18. package/esm2015/lib/components/forms/multiple-select-input/multiple-select-input.component.js.map +1 -1
  19. package/esm2015/lib/components/forms/multiple-select-input/multiple-select-input.component.metadata.json +1 -1
  20. package/esm2015/lib/components/forms/number-input/number-input.component.js +2 -5
  21. package/esm2015/lib/components/forms/number-input/number-input.component.js.map +1 -1
  22. package/esm2015/lib/components/forms/number-input/number-input.component.metadata.json +1 -1
  23. package/esm2015/lib/components/forms/password-input/password-input.component.js +3 -6
  24. package/esm2015/lib/components/forms/password-input/password-input.component.js.map +1 -1
  25. package/esm2015/lib/components/forms/password-input/password-input.component.metadata.json +1 -1
  26. package/esm2015/lib/components/forms/select-input/select-input.component.js +0 -4
  27. package/esm2015/lib/components/forms/select-input/select-input.component.js.map +1 -1
  28. package/esm2015/lib/components/forms/select-input/select-input.component.metadata.json +1 -1
  29. package/esm2015/lib/components/forms/string-input/string-input.component.js +0 -4
  30. package/esm2015/lib/components/forms/string-input/string-input.component.js.map +1 -1
  31. package/esm2015/lib/components/forms/string-input/string-input.component.metadata.json +1 -1
  32. package/esm2015/lib/components/forms/text-input/text-input.component.js +2 -5
  33. package/esm2015/lib/components/forms/text-input/text-input.component.js.map +1 -1
  34. package/esm2015/lib/components/forms/text-input/text-input.component.metadata.json +1 -1
  35. package/esm2015/lib/components/index.js +1 -1
  36. package/esm2015/lib/components/index.js.map +1 -1
  37. package/esm2015/lib/components/index.metadata.json +1 -1
  38. package/esm2015/lib/components/table/cell-editors.js.map +1 -1
  39. package/esm2015/lib/components/table/{cell-protal-ref.js → cell-portal-ref.js} +7 -3
  40. package/esm2015/lib/components/table/cell-portal-ref.js.map +1 -0
  41. package/esm2015/lib/components/table/{cell-protal-ref.metadata.json → cell-portal-ref.metadata.json} +1 -1
  42. package/esm2015/lib/components/table/column-model.js +8 -5
  43. package/esm2015/lib/components/table/column-model.js.map +1 -1
  44. package/esm2015/lib/components/table/column-model.metadata.json +1 -1
  45. package/esm2015/lib/components/table/table-cell-renderer/table-cell-renderer.component.js +1 -1
  46. package/esm2015/lib/components/table/table-cell-renderer/table-cell-renderer.component.js.map +1 -1
  47. package/esm2015/lib/components/table/table-header-cell-renderer/table-header-cell-renderer.component.js +1 -1
  48. package/esm2015/lib/components/table/table-header-cell-renderer/table-header-cell-renderer.component.js.map +1 -1
  49. package/esm5/lib/components/forms/abstract-input.component.js.map +1 -1
  50. package/esm5/lib/components/forms/abstract-list-input.component.js +42 -5
  51. package/esm5/lib/components/forms/abstract-list-input.component.js.map +1 -1
  52. package/esm5/lib/components/forms/abstract-value-input.component.js +35 -2
  53. package/esm5/lib/components/forms/abstract-value-input.component.js.map +1 -1
  54. package/esm5/lib/components/forms/checkbox-input/checkbox-input.component.js +2 -5
  55. package/esm5/lib/components/forms/checkbox-input/checkbox-input.component.js.map +1 -1
  56. package/esm5/lib/components/forms/multiple-select-input/multiple-select-input.component.js +0 -4
  57. package/esm5/lib/components/forms/multiple-select-input/multiple-select-input.component.js.map +1 -1
  58. package/esm5/lib/components/forms/number-input/number-input.component.js +2 -5
  59. package/esm5/lib/components/forms/number-input/number-input.component.js.map +1 -1
  60. package/esm5/lib/components/forms/password-input/password-input.component.js +3 -6
  61. package/esm5/lib/components/forms/password-input/password-input.component.js.map +1 -1
  62. package/esm5/lib/components/forms/select-input/select-input.component.js +0 -4
  63. package/esm5/lib/components/forms/select-input/select-input.component.js.map +1 -1
  64. package/esm5/lib/components/forms/string-input/string-input.component.js +0 -4
  65. package/esm5/lib/components/forms/string-input/string-input.component.js.map +1 -1
  66. package/esm5/lib/components/forms/text-input/text-input.component.js +2 -5
  67. package/esm5/lib/components/forms/text-input/text-input.component.js.map +1 -1
  68. package/esm5/lib/components/index.js +1 -1
  69. package/esm5/lib/components/index.js.map +1 -1
  70. package/esm5/lib/components/table/cell-editors.js.map +1 -1
  71. package/esm5/lib/components/table/{cell-protal-ref.js → cell-portal-ref.js} +7 -3
  72. package/esm5/lib/components/table/cell-portal-ref.js.map +1 -0
  73. package/esm5/lib/components/table/column-model.js +8 -5
  74. package/esm5/lib/components/table/column-model.js.map +1 -1
  75. package/esm5/lib/components/table/table-cell-renderer/table-cell-renderer.component.js +1 -1
  76. package/esm5/lib/components/table/table-cell-renderer/table-cell-renderer.component.js.map +1 -1
  77. package/esm5/lib/components/table/table-header-cell-renderer/table-header-cell-renderer.component.js +1 -1
  78. package/esm5/lib/components/table/table-header-cell-renderer/table-header-cell-renderer.component.js.map +1 -1
  79. package/fesm2015/coolon-angular-ui-powerups.js +84 -37
  80. package/fesm2015/coolon-angular-ui-powerups.js.map +1 -1
  81. package/fesm5/coolon-angular-ui-powerups.js +94 -37
  82. package/fesm5/coolon-angular-ui-powerups.js.map +1 -1
  83. package/lib/components/forms/abstract-list-input.component.d.ts +8 -2
  84. package/lib/components/forms/abstract-value-input.component.d.ts +7 -2
  85. package/lib/components/forms/checkbox-input/checkbox-input.component.d.ts +0 -2
  86. package/lib/components/forms/multiple-select-input/multiple-select-input.component.d.ts +1 -2
  87. package/lib/components/forms/number-input/number-input.component.d.ts +0 -2
  88. package/lib/components/forms/password-input/password-input.component.d.ts +0 -2
  89. package/lib/components/forms/select-input/select-input.component.d.ts +1 -2
  90. package/lib/components/forms/string-input/string-input.component.d.ts +1 -2
  91. package/lib/components/forms/text-input/text-input.component.d.ts +0 -2
  92. package/lib/components/index.d.ts +1 -1
  93. package/lib/components/table/cell-editors.d.ts +3 -3
  94. package/lib/components/table/{cell-protal-ref.d.ts → cell-portal-ref.d.ts} +4 -4
  95. package/lib/components/table/column-model.d.ts +3 -3
  96. package/lib/components/table/table-cell-renderer/table-cell-renderer.component.d.ts +1 -1
  97. package/lib/components/table/table-header-cell-renderer/table-header-cell-renderer.component.d.ts +1 -1
  98. package/package.json +1 -1
  99. package/esm2015/lib/components/table/cell-protal-ref.js.map +0 -1
  100. package/esm5/lib/components/table/cell-protal-ref.js.map +0 -1
@@ -1,21 +1,18 @@
1
1
  import { __decorate, __extends, __metadata } from "tslib";
2
2
  import { Component, Input } from '@angular/core';
3
- import { TrackExternal } from '@coolon/pectin';
4
3
  import { AbstractValueInputComponent } from '../abstract-value-input.component';
5
4
  var CheckboxInputComponent = /** @class */ (function (_super) {
6
5
  __extends(CheckboxInputComponent, _super);
7
6
  function CheckboxInputComponent() {
8
7
  var _this = _super.call(this) || this;
8
+ // @Input() @TrackExternal({ delegateTo: 'inputModel' })
9
+ // valueModel: Form.ValueModelBase<boolean> | IMutableValueModel<boolean>;
9
10
  _this.color = 'accent';
10
11
  _this.labelPosition = 'after';
11
12
  return _this;
12
13
  }
13
14
  CheckboxInputComponent.prototype.ngOnInit = function () {
14
15
  };
15
- __decorate([
16
- Input(), TrackExternal({ delegateTo: 'inputModel' }),
17
- __metadata("design:type", Object)
18
- ], CheckboxInputComponent.prototype, "valueModel", void 0);
19
16
  __decorate([
20
17
  Input(),
21
18
  __metadata("design:type", String)
@@ -1 +1 @@
1
- {"version":3,"file":"checkbox-input.component.js","sourceRoot":"ng://@coolon/angular-ui-powerups/","sources":["lib/components/forms/checkbox-input/checkbox-input.component.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,SAAS,EAAE,KAAK,EAAU,MAAM,eAAe,CAAC;AACzD,OAAO,EAA4B,aAAa,EAAE,MAAM,gBAAgB,CAAC;AACzE,OAAO,EAAE,2BAA2B,EAAE,MAAM,mCAAmC,CAAC;AAOhF;IAA4C,0CAAoC;IAW9E;QAAA,YACE,iBAAO,SACR;QAPD,WAAK,GAAkC,QAAQ,CAAC;QAGhD,mBAAa,GAAuB,OAAO,CAAC;;IAI5C,CAAC;IAED,yCAAQ,GAAR;IACA,CAAC;IAbD;QADC,KAAK,EAAE,EAAE,aAAa,CAAC,EAAE,UAAU,EAAE,YAAY,EAAE,CAAC;;8DACkB;IAGvE;QADC,KAAK,EAAE;;yDACwC;IAGhD;QADC,KAAK,EAAE;;iEACoC;IATjC,sBAAsB;QALlC,SAAS,CAAC;YACT,QAAQ,EAAE,oBAAoB;YAC9B,kUAA8C;;SAE/C,CAAC;;OACW,sBAAsB,CAkBlC;IAAD,6BAAC;CAAA,AAlBD,CAA4C,2BAA2B,GAkBtE;SAlBY,sBAAsB","sourcesContent":["import { Component, Input, OnInit } from '@angular/core';\nimport { Form, IMutableValueModel, TrackExternal } from '@coolon/pectin';\nimport { AbstractValueInputComponent } from '../abstract-value-input.component';\n\n@Component({\n selector: 'aup-checkbox-input',\n templateUrl: './checkbox-input.component.html',\n styleUrls: ['./checkbox-input.component.scss']\n})\nexport class CheckboxInputComponent extends AbstractValueInputComponent<boolean> implements OnInit {\n\n @Input() @TrackExternal({ delegateTo: 'inputModel' })\n valueModel: Form.ValueModelBase<boolean> | IMutableValueModel<boolean>;\n\n @Input()\n color: 'primary' | 'warn' | 'accent' = 'accent';\n\n @Input()\n labelPosition: 'before' | 'after' = 'after';\n\n constructor() {\n super();\n }\n\n ngOnInit() {\n }\n\n}\n"]}
1
+ {"version":3,"file":"checkbox-input.component.js","sourceRoot":"ng://@coolon/angular-ui-powerups/","sources":["lib/components/forms/checkbox-input/checkbox-input.component.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,SAAS,EAAE,KAAK,EAAU,MAAM,eAAe,CAAC;AAEzD,OAAO,EAAE,2BAA2B,EAAE,MAAM,mCAAmC,CAAC;AAOhF;IAA4C,0CAAoC;IAW9E;QAAA,YACE,iBAAO,SACR;QAXD,wDAAwD;QACxD,0EAA0E;QAG1E,WAAK,GAAkC,QAAQ,CAAC;QAGhD,mBAAa,GAAuB,OAAO,CAAC;;IAI5C,CAAC;IAED,yCAAQ,GAAR;IACA,CAAC;IAVD;QADC,KAAK,EAAE;;yDACwC;IAGhD;QADC,KAAK,EAAE;;iEACoC;IATjC,sBAAsB;QALlC,SAAS,CAAC;YACT,QAAQ,EAAE,oBAAoB;YAC9B,kUAA8C;;SAE/C,CAAC;;OACW,sBAAsB,CAkBlC;IAAD,6BAAC;CAAA,AAlBD,CAA4C,2BAA2B,GAkBtE;SAlBY,sBAAsB","sourcesContent":["import { Component, Input, OnInit } from '@angular/core';\nimport { Form, IMutableValueModel, TrackExternal } from '@coolon/pectin';\nimport { AbstractValueInputComponent } from '../abstract-value-input.component';\n\n@Component({\n selector: 'aup-checkbox-input',\n templateUrl: './checkbox-input.component.html',\n styleUrls: ['./checkbox-input.component.scss']\n})\nexport class CheckboxInputComponent extends AbstractValueInputComponent<boolean> implements OnInit {\n\n // @Input() @TrackExternal({ delegateTo: 'inputModel' })\n // valueModel: Form.ValueModelBase<boolean> | IMutableValueModel<boolean>;\n\n @Input()\n color: 'primary' | 'warn' | 'accent' = 'accent';\n\n @Input()\n labelPosition: 'before' | 'after' = 'after';\n\n constructor() {\n super();\n }\n\n ngOnInit() {\n }\n\n}\n"]}
@@ -11,10 +11,6 @@ var MultipleSelectInputComponent = /** @class */ (function (_super) {
11
11
  }
12
12
  MultipleSelectInputComponent.prototype.ngOnInit = function () {
13
13
  };
14
- __decorate([
15
- Input(), TrackExternal({ delegateTo: 'inputModel' }),
16
- __metadata("design:type", Object)
17
- ], MultipleSelectInputComponent.prototype, "listModel", void 0);
18
14
  __decorate([
19
15
  Input(), TrackExternal(),
20
16
  __metadata("design:type", ListModel)
@@ -1 +1 @@
1
- {"version":3,"file":"multiple-select-input.component.js","sourceRoot":"ng://@coolon/angular-ui-powerups/","sources":["lib/components/forms/multiple-select-input/multiple-select-input.component.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,SAAS,EAAE,YAAY,EAAE,KAAK,EAAU,WAAW,EAAE,MAAM,eAAe,CAAC;AACpF,OAAO,EAA2B,SAAS,EAAE,gBAAgB,EAAE,aAAa,EAAE,MAAM,gBAAgB,CAAC;AACrG,OAAO,EAAE,0BAA0B,EAAE,MAAM,kCAAkC,CAAC;AAO9E;IAA2D,gDAA6B;IA0BtF;QAAA,YACE,iBAAO,SACR;QAJD,uBAAiB,GAAuB,UAAC,MAAM,IAAK,OAAA,CAAC,MAAM,IAAI,KAAI,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,KAAI,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,MAAM,EAAhE,CAAgE,CAAC;;IAIrH,CAAC;IAED,+CAAQ,GAAR;IACA,CAAC;IA5BD;QADC,KAAK,EAAE,EAAE,aAAa,CAAC,EAAE,UAAU,EAAE,YAAY,EAAE,CAAC;;mEACG;IAGxD;QADC,KAAK,EAAE,EAAE,aAAa,EAAE;kCACX,SAAS;sEAAI;IAG3B;QADC,KAAK,EAAE,EAAE,gBAAgB,CAAC,cAAc,CAAC;;iEAC7B;IAGb;QADC,KAAK,EAAE;;qEACa;IAGrB;QADC,KAAK,EAAE;;kEACU;IAGlB;QADC,YAAY,CAAC,gBAAgB,CAAC;kCACZ,WAAW;2EAAM;IAGpC;QADC,YAAY,CAAC,mBAAmB,CAAC;kCACZ,WAAW;8EAAM;IAGvC;QADC,KAAK,EAAE;;2EAC6G;IAxB1G,4BAA4B;QALxC,SAAS,CAAC;YACT,QAAQ,EAAE,2BAA2B;YACrC,wnCAAqD;;SAEtD,CAAC;;OACW,4BAA4B,CAiCxC;IAAD,mCAAC;CAAA,AAjCD,CAA2D,0BAA0B,GAiCpF;SAjCY,4BAA4B","sourcesContent":["import { Component, ContentChild, Input, OnInit, TemplateRef } from '@angular/core';\nimport { Form, IMutableListModel, ListModel, StoreInListModel, TrackExternal } from '@coolon/pectin';\nimport { AbstractListInputComponent } from '../abstract-list-input.component';\n\n@Component({\n selector: 'aup-multiple-select-input',\n templateUrl: './multiple-select-input.component.html',\n styleUrls: ['./multiple-select-input.component.scss']\n})\nexport class MultipleSelectInputComponent<T = any> extends AbstractListInputComponent<T> implements OnInit {\n\n @Input() @TrackExternal({ delegateTo: 'inputModel' })\n listModel: Form.ListModelBase<T> | IMutableListModel<T>;\n\n @Input() @TrackExternal()\n optionsModel: ListModel<T>;\n\n @Input() @StoreInListModel('optionsModel')\n options: T[];\n\n @Input()\n optionLabel: keyof T;\n\n @Input()\n allowNil: boolean;\n\n @ContentChild('optionTemplate')\n optionTemplateRef: TemplateRef<any>;\n\n @ContentChild('nilOptionTemplate')\n nilOptionTemplateRef: TemplateRef<any>;\n\n @Input()\n optionLabelFormat: (option: T) => any = (option) => (option && this.optionLabel) ? option[this.optionLabel] : option;\n\n constructor() {\n super();\n }\n\n ngOnInit() {\n }\n\n}\n"]}
1
+ {"version":3,"file":"multiple-select-input.component.js","sourceRoot":"ng://@coolon/angular-ui-powerups/","sources":["lib/components/forms/multiple-select-input/multiple-select-input.component.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,SAAS,EAAE,YAAY,EAAE,KAAK,EAAU,WAAW,EAAE,MAAM,eAAe,CAAC;AACpF,OAAO,EAA2B,SAAS,EAAE,gBAAgB,EAAE,aAAa,EAAE,MAAM,gBAAgB,CAAC;AACrG,OAAO,EAAE,0BAA0B,EAAE,MAAM,kCAAkC,CAAC;AAO9E;IAA2D,gDAA6B;IAuBtF;QAAA,YACE,iBAAO,SACR;QAJD,uBAAiB,GAAuB,UAAC,MAAM,IAAK,OAAA,CAAC,MAAM,IAAI,KAAI,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,KAAI,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,MAAM,EAAhE,CAAgE,CAAC;;IAIrH,CAAC;IAED,+CAAQ,GAAR;IACA,CAAC;IAzBD;QADC,KAAK,EAAE,EAAE,aAAa,EAAE;kCACX,SAAS;sEAAI;IAG3B;QADC,KAAK,EAAE,EAAE,gBAAgB,CAAC,cAAc,CAAC;;iEAC7B;IAGb;QADC,KAAK,EAAE;;qEACa;IAGrB;QADC,KAAK,EAAE;;kEACU;IAGlB;QADC,YAAY,CAAC,gBAAgB,CAAC;kCACZ,WAAW;2EAAM;IAGpC;QADC,YAAY,CAAC,mBAAmB,CAAC;kCACZ,WAAW;8EAAM;IAGvC;QADC,KAAK,EAAE;;2EAC6G;IArB1G,4BAA4B;QALxC,SAAS,CAAC;YACT,QAAQ,EAAE,2BAA2B;YACrC,wnCAAqD;;SAEtD,CAAC;;OACW,4BAA4B,CA8BxC;IAAD,mCAAC;CAAA,AA9BD,CAA2D,0BAA0B,GA8BpF;SA9BY,4BAA4B","sourcesContent":["import { Component, ContentChild, Input, OnInit, TemplateRef } from '@angular/core';\nimport { Form, IMutableListModel, ListModel, StoreInListModel, TrackExternal } from '@coolon/pectin';\nimport { AbstractListInputComponent } from '../abstract-list-input.component';\n\n@Component({\n selector: 'aup-multiple-select-input',\n templateUrl: './multiple-select-input.component.html',\n styleUrls: ['./multiple-select-input.component.scss']\n})\nexport class MultipleSelectInputComponent<T = any> extends AbstractListInputComponent<T> implements OnInit {\n\n @Input() @TrackExternal()\n optionsModel: ListModel<T>;\n\n @Input() @StoreInListModel('optionsModel')\n options: T[];\n\n @Input()\n optionLabel: keyof T;\n\n @Input()\n allowNil: boolean;\n\n @ContentChild('optionTemplate')\n optionTemplateRef: TemplateRef<any>;\n\n @ContentChild('nilOptionTemplate')\n nilOptionTemplateRef: TemplateRef<any>;\n\n @Input()\n optionLabelFormat: (option: T) => any = (option) => (option && this.optionLabel) ? option[this.optionLabel] : option;\n\n constructor() {\n super();\n }\n\n ngOnInit() {\n }\n\n}\n"]}
@@ -1,21 +1,18 @@
1
1
  import { __decorate, __extends, __metadata } from "tslib";
2
2
  import { Component, Input } from '@angular/core';
3
- import { TrackExternal } from '@coolon/pectin';
4
3
  import { AbstractValueInputComponent } from '../abstract-value-input.component';
5
4
  var NumberInputComponent = /** @class */ (function (_super) {
6
5
  __extends(NumberInputComponent, _super);
7
6
  function NumberInputComponent() {
8
7
  var _this = _super.call(this) || this;
8
+ // @Input() @TrackExternal({ delegateTo: 'inputModel' })
9
+ // valueModel: Form.ValueModelBase<number> | IMutableValueModel<number>;
9
10
  _this.min = Number.MIN_SAFE_INTEGER;
10
11
  _this.max = Number.MAX_SAFE_INTEGER;
11
12
  return _this;
12
13
  }
13
14
  NumberInputComponent.prototype.ngOnInit = function () {
14
15
  };
15
- __decorate([
16
- Input(), TrackExternal({ delegateTo: 'inputModel' }),
17
- __metadata("design:type", Object)
18
- ], NumberInputComponent.prototype, "valueModel", void 0);
19
16
  __decorate([
20
17
  Input(),
21
18
  __metadata("design:type", Object)
@@ -1 +1 @@
1
- {"version":3,"file":"number-input.component.js","sourceRoot":"ng://@coolon/angular-ui-powerups/","sources":["lib/components/forms/number-input/number-input.component.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,SAAS,EAAE,KAAK,EAAU,MAAM,eAAe,CAAC;AACzD,OAAO,EAAiC,aAAa,EAAE,MAAM,gBAAgB,CAAC;AAC9E,OAAO,EAAE,2BAA2B,EAAE,MAAM,mCAAmC,CAAC;AAQhF;IAA0C,wCAAmC;IAW3E;QAAA,YACE,iBAAO,SACR;QAPD,SAAG,GAAG,MAAM,CAAC,gBAAgB,CAAC;QAG9B,SAAG,GAAG,MAAM,CAAC,gBAAgB,CAAC;;IAI9B,CAAC;IAED,uCAAQ,GAAR;IACA,CAAC;IAbD;QADC,KAAK,EAAE,EAAE,aAAa,CAAC,EAAE,UAAU,EAAE,YAAY,EAAE,CAAC;;4DACgB;IAGrE;QADC,KAAK,EAAE;;qDACsB;IAG9B;QADC,KAAK,EAAE;;qDACsB;IATnB,oBAAoB;QALhC,SAAS,CAAC;YACT,QAAQ,EAAE,kBAAkB;YAC5B,orBAA4C;;SAE7C,CAAC;;OACW,oBAAoB,CAkBhC;IAAD,2BAAC;CAAA,AAlBD,CAA0C,2BAA2B,GAkBpE;SAlBY,oBAAoB","sourcesContent":["import { Component, Input, OnInit } from '@angular/core';\nimport { Dsl, Form, IMutableValueModel, TrackExternal } from '@coolon/pectin';\nimport { AbstractValueInputComponent } from '../abstract-value-input.component';\n\n\n@Component({\n selector: 'aup-number-input',\n templateUrl: './number-input.component.html',\n styleUrls: ['./number-input.component.scss']\n})\nexport class NumberInputComponent extends AbstractValueInputComponent<number> implements OnInit {\n\n @Input() @TrackExternal({ delegateTo: 'inputModel' })\n valueModel: Form.ValueModelBase<number> | IMutableValueModel<number>;\n\n @Input()\n min = Number.MIN_SAFE_INTEGER;\n\n @Input()\n max = Number.MAX_SAFE_INTEGER;\n\n constructor() {\n super();\n }\n\n ngOnInit() {\n }\n\n}\n"]}
1
+ {"version":3,"file":"number-input.component.js","sourceRoot":"ng://@coolon/angular-ui-powerups/","sources":["lib/components/forms/number-input/number-input.component.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,SAAS,EAAE,KAAK,EAAU,MAAM,eAAe,CAAC;AAEzD,OAAO,EAAE,2BAA2B,EAAE,MAAM,mCAAmC,CAAC;AAQhF;IAA0C,wCAAmC;IAW3E;QAAA,YACE,iBAAO,SACR;QAXD,wDAAwD;QACxD,wEAAwE;QAGxE,SAAG,GAAG,MAAM,CAAC,gBAAgB,CAAC;QAG9B,SAAG,GAAG,MAAM,CAAC,gBAAgB,CAAC;;IAI9B,CAAC;IAED,uCAAQ,GAAR;IACA,CAAC;IAVD;QADC,KAAK,EAAE;;qDACsB;IAG9B;QADC,KAAK,EAAE;;qDACsB;IATnB,oBAAoB;QALhC,SAAS,CAAC;YACT,QAAQ,EAAE,kBAAkB;YAC5B,orBAA4C;;SAE7C,CAAC;;OACW,oBAAoB,CAkBhC;IAAD,2BAAC;CAAA,AAlBD,CAA0C,2BAA2B,GAkBpE;SAlBY,oBAAoB","sourcesContent":["import { Component, Input, OnInit } from '@angular/core';\nimport { Dsl, Form, IMutableValueModel, TrackExternal } from '@coolon/pectin';\nimport { AbstractValueInputComponent } from '../abstract-value-input.component';\n\n\n@Component({\n selector: 'aup-number-input',\n templateUrl: './number-input.component.html',\n styleUrls: ['./number-input.component.scss']\n})\nexport class NumberInputComponent extends AbstractValueInputComponent<number> implements OnInit {\n\n // @Input() @TrackExternal({ delegateTo: 'inputModel' })\n // valueModel: Form.ValueModelBase<number> | IMutableValueModel<number>;\n\n @Input()\n min = Number.MIN_SAFE_INTEGER;\n\n @Input()\n max = Number.MAX_SAFE_INTEGER;\n\n constructor() {\n super();\n }\n\n ngOnInit() {\n }\n\n}\n"]}
@@ -1,18 +1,15 @@
1
1
  import { __decorate, __extends, __metadata } from "tslib";
2
- import { Component, Input } from '@angular/core';
3
- import { TrackExternal } from '@coolon/pectin';
2
+ import { Component } from '@angular/core';
4
3
  import { AbstractValueInputComponent } from '../abstract-value-input.component';
5
4
  var PasswordInputComponent = /** @class */ (function (_super) {
6
5
  __extends(PasswordInputComponent, _super);
6
+ // @Input() @TrackExternal({ delegateTo: 'inputModel' })
7
+ // valueModel: Form.ValueModelBase<string> | IMutableValueModel<string>;
7
8
  function PasswordInputComponent() {
8
9
  return _super.call(this) || this;
9
10
  }
10
11
  PasswordInputComponent.prototype.ngOnInit = function () {
11
12
  };
12
- __decorate([
13
- Input(), TrackExternal({ delegateTo: 'inputModel' }),
14
- __metadata("design:type", Object)
15
- ], PasswordInputComponent.prototype, "valueModel", void 0);
16
13
  PasswordInputComponent = __decorate([
17
14
  Component({
18
15
  selector: 'aup-password-input',
@@ -1 +1 @@
1
- {"version":3,"file":"password-input.component.js","sourceRoot":"ng://@coolon/angular-ui-powerups/","sources":["lib/components/forms/password-input/password-input.component.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,SAAS,EAAE,KAAK,EAAU,MAAM,eAAe,CAAC;AACzD,OAAO,EAA4B,aAAa,EAAE,MAAM,gBAAgB,CAAC;AACzE,OAAO,EAAE,2BAA2B,EAAE,MAAM,mCAAmC,CAAC;AAOhF;IAA4C,0CAAmC;IAK7E;eACE,iBAAO;IACT,CAAC;IAED,yCAAQ,GAAR;IACA,CAAC;IAPD;QADC,KAAK,EAAE,EAAE,aAAa,CAAC,EAAE,UAAU,EAAE,YAAY,EAAE,CAAC;;8DACgB;IAH1D,sBAAsB;QALlC,SAAS,CAAC;YACT,QAAQ,EAAE,oBAAoB;YAC9B,ioBAA8C;;SAE/C,CAAC;;OACW,sBAAsB,CAYlC;IAAD,6BAAC;CAAA,AAZD,CAA4C,2BAA2B,GAYtE;SAZY,sBAAsB","sourcesContent":["import { Component, Input, OnInit } from '@angular/core';\nimport { Form, IMutableValueModel, TrackExternal } from '@coolon/pectin';\nimport { AbstractValueInputComponent } from '../abstract-value-input.component';\n\n@Component({\n selector: 'aup-password-input',\n templateUrl: './password-input.component.html',\n styleUrls: ['./password-input.component.scss']\n})\nexport class PasswordInputComponent extends AbstractValueInputComponent<string> implements OnInit {\n\n @Input() @TrackExternal({ delegateTo: 'inputModel' })\n valueModel: Form.ValueModelBase<string> | IMutableValueModel<string>;\n\n constructor() {\n super();\n }\n\n ngOnInit() {\n }\n\n}\n"]}
1
+ {"version":3,"file":"password-input.component.js","sourceRoot":"ng://@coolon/angular-ui-powerups/","sources":["lib/components/forms/password-input/password-input.component.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,SAAS,EAAiB,MAAM,eAAe,CAAC;AAEzD,OAAO,EAAE,2BAA2B,EAAE,MAAM,mCAAmC,CAAC;AAOhF;IAA4C,0CAAmC;IAE7E,wDAAwD;IACxD,wEAAwE;IAExE;eACE,iBAAO;IACT,CAAC;IAED,yCAAQ,GAAR;IACA,CAAC;IAVU,sBAAsB;QALlC,SAAS,CAAC;YACT,QAAQ,EAAE,oBAAoB;YAC9B,ioBAA8C;;SAE/C,CAAC;;OACW,sBAAsB,CAYlC;IAAD,6BAAC;CAAA,AAZD,CAA4C,2BAA2B,GAYtE;SAZY,sBAAsB","sourcesContent":["import { Component, Input, OnInit } from '@angular/core';\nimport { Form, IMutableValueModel, TrackExternal } from '@coolon/pectin';\nimport { AbstractValueInputComponent } from '../abstract-value-input.component';\n\n@Component({\n selector: 'aup-password-input',\n templateUrl: './password-input.component.html',\n styleUrls: ['./password-input.component.scss']\n})\nexport class PasswordInputComponent extends AbstractValueInputComponent<string> implements OnInit {\n\n // @Input() @TrackExternal({ delegateTo: 'inputModel' })\n // valueModel: Form.ValueModelBase<string> | IMutableValueModel<string>;\n\n constructor() {\n super();\n }\n\n ngOnInit() {\n }\n\n}\n"]}
@@ -17,10 +17,6 @@ var SelectInputComponent = /** @class */ (function (_super) {
17
17
  }
18
18
  SelectInputComponent.prototype.ngOnInit = function () {
19
19
  };
20
- __decorate([
21
- Input(), TrackExternal({ delegateTo: 'inputModel' }),
22
- __metadata("design:type", Object)
23
- ], SelectInputComponent.prototype, "valueModel", void 0);
24
20
  __decorate([
25
21
  Input(), TrackExternal(),
26
22
  __metadata("design:type", ListModel)
@@ -1 +1 @@
1
- {"version":3,"file":"select-input.component.js","sourceRoot":"ng://@coolon/angular-ui-powerups/","sources":["lib/components/forms/select-input/select-input.component.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,SAAS,EAAE,YAAY,EAAE,KAAK,EAAU,WAAW,EAAE,MAAM,eAAe,CAAC;AACpF,OAAO,EAAsB,SAAS,EAAE,gBAAgB,EAAE,aAAa,EAAQ,MAAM,gBAAgB,CAAC;AACtG,OAAO,EAAE,2BAA2B,EAAE,MAAM,mCAAmC,CAAC;AAEhF;;;;;GAKG;AAMH;IAAmD,wCAA8B;IA0B/E;QAAA,YACE,iBAAO,SACR;QAJD,uBAAiB,GAAuB,UAAC,MAAM,IAAK,OAAA,CAAC,MAAM,IAAI,KAAI,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,KAAI,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,MAAM,EAAhE,CAAgE,CAAC;;IAIrH,CAAC;IAED,uCAAQ,GAAR;IACA,CAAC;IA5BD;QADC,KAAK,EAAE,EAAE,aAAa,CAAC,EAAE,UAAU,EAAE,YAAY,EAAE,CAAC;;4DACM;IAG3D;QADC,KAAK,EAAE,EAAE,aAAa,EAAE;kCACX,SAAS;8DAAI;IAG3B;QADC,KAAK,EAAE,EAAE,gBAAgB,CAAC,cAAc,CAAC;;yDAC7B;IAGb;QADC,KAAK,EAAE;;6DACa;IAGrB;QADC,KAAK,EAAE;;0DACU;IAGlB;QADC,YAAY,CAAC,gBAAgB,CAAC;kCACZ,WAAW;mEAAM;IAGpC;QADC,YAAY,CAAC,mBAAmB,CAAC;kCACZ,WAAW;sEAAM;IAGvC;QADC,KAAK,EAAE;;mEAC6G;IAxB1G,oBAAoB;QALhC,SAAS,CAAC;YACT,QAAQ,EAAE,kBAAkB;YAC5B,imCAA4C;;SAE7C,CAAC;;OACW,oBAAoB,CAiChC;IAAD,2BAAC;CAAA,AAjCD,CAAmD,2BAA2B,GAiC7E;SAjCY,oBAAoB","sourcesContent":["import { Component, ContentChild, Input, OnInit, TemplateRef } from '@angular/core';\nimport { IMutableValueModel, ListModel, StoreInListModel, TrackExternal, Form } from '@coolon/pectin';\nimport { AbstractValueInputComponent } from '../abstract-value-input.component';\n\n/**\n * Using templates:\n * <aup-select-input [valueModel]=\"myModel\" [options]=\"myOptions\">\n * <ng-template #optionTemplate let-option>{{option.thePropertyYouWant}}</ng-template>\n * </aup-select_input>\n */\n@Component({\n selector: 'aup-select-input',\n templateUrl: './select-input.component.html',\n styleUrls: ['./select-input.component.scss']\n})\nexport class SelectInputComponent<T = any> extends AbstractValueInputComponent<T> implements OnInit {\n\n @Input() @TrackExternal({ delegateTo: 'inputModel' })\n valueModel: Form.ValueModelBase<T> | IMutableValueModel<T>;\n\n @Input() @TrackExternal()\n optionsModel: ListModel<T>;\n\n @Input() @StoreInListModel('optionsModel')\n options: T[];\n\n @Input()\n optionLabel: keyof T;\n\n @Input()\n allowNil: boolean;\n\n @ContentChild('optionTemplate')\n optionTemplateRef: TemplateRef<any>;\n\n @ContentChild('nilOptionTemplate')\n nilOptionTemplateRef: TemplateRef<any>;\n\n @Input()\n optionLabelFormat: (option: T) => any = (option) => (option && this.optionLabel) ? option[this.optionLabel] : option;\n\n constructor() {\n super();\n }\n\n ngOnInit() {\n }\n\n}\n"]}
1
+ {"version":3,"file":"select-input.component.js","sourceRoot":"ng://@coolon/angular-ui-powerups/","sources":["lib/components/forms/select-input/select-input.component.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,SAAS,EAAE,YAAY,EAAE,KAAK,EAAU,WAAW,EAAE,MAAM,eAAe,CAAC;AACpF,OAAO,EAAsB,SAAS,EAAE,gBAAgB,EAAE,aAAa,EAAQ,MAAM,gBAAgB,CAAC;AACtG,OAAO,EAAE,2BAA2B,EAAE,MAAM,mCAAmC,CAAC;AAEhF;;;;;GAKG;AAMH;IAAmD,wCAA8B;IA0B/E;QAAA,YACE,iBAAO,SACR;QAJD,uBAAiB,GAAuB,UAAC,MAAM,IAAK,OAAA,CAAC,MAAM,IAAI,KAAI,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,KAAI,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,MAAM,EAAhE,CAAgE,CAAC;;IAIrH,CAAC;IAED,uCAAQ,GAAR;IACA,CAAC;IAzBD;QADC,KAAK,EAAE,EAAE,aAAa,EAAE;kCACX,SAAS;8DAAI;IAG3B;QADC,KAAK,EAAE,EAAE,gBAAgB,CAAC,cAAc,CAAC;;yDAC7B;IAGb;QADC,KAAK,EAAE;;6DACa;IAGrB;QADC,KAAK,EAAE;;0DACU;IAGlB;QADC,YAAY,CAAC,gBAAgB,CAAC;kCACZ,WAAW;mEAAM;IAGpC;QADC,YAAY,CAAC,mBAAmB,CAAC;kCACZ,WAAW;sEAAM;IAGvC;QADC,KAAK,EAAE;;mEAC6G;IAxB1G,oBAAoB;QALhC,SAAS,CAAC;YACT,QAAQ,EAAE,kBAAkB;YAC5B,imCAA4C;;SAE7C,CAAC;;OACW,oBAAoB,CAiChC;IAAD,2BAAC;CAAA,AAjCD,CAAmD,2BAA2B,GAiC7E;SAjCY,oBAAoB","sourcesContent":["import { Component, ContentChild, Input, OnInit, TemplateRef } from '@angular/core';\nimport { IMutableValueModel, ListModel, StoreInListModel, TrackExternal, Form } from '@coolon/pectin';\nimport { AbstractValueInputComponent } from '../abstract-value-input.component';\n\n/**\n * Using templates:\n * <aup-select-input [valueModel]=\"myModel\" [options]=\"myOptions\">\n * <ng-template #optionTemplate let-option>{{option.thePropertyYouWant}}</ng-template>\n * </aup-select_input>\n */\n@Component({\n selector: 'aup-select-input',\n templateUrl: './select-input.component.html',\n styleUrls: ['./select-input.component.scss']\n})\nexport class SelectInputComponent<T = any> extends AbstractValueInputComponent<T> implements OnInit {\n\n // @Input() @TrackExternal({ delegateTo: 'inputModel' })\n // valueModel: Form.ValueModelBase<T> | IMutableValueModel<T>;\n\n @Input() @TrackExternal()\n optionsModel: ListModel<T>;\n\n @Input() @StoreInListModel('optionsModel')\n options: T[];\n\n @Input()\n optionLabel: keyof T;\n\n @Input()\n allowNil: boolean;\n\n @ContentChild('optionTemplate')\n optionTemplateRef: TemplateRef<any>;\n\n @ContentChild('nilOptionTemplate')\n nilOptionTemplateRef: TemplateRef<any>;\n\n @Input()\n optionLabelFormat: (option: T) => any = (option) => (option && this.optionLabel) ? option[this.optionLabel] : option;\n\n constructor() {\n super();\n }\n\n ngOnInit() {\n }\n\n}\n"]}
@@ -15,10 +15,6 @@ var StringInputComponent = /** @class */ (function (_super) {
15
15
  }
16
16
  StringInputComponent.prototype.ngOnInit = function () {
17
17
  };
18
- __decorate([
19
- Input(), TrackExternal({ delegateTo: 'inputModel' }),
20
- __metadata("design:type", Object)
21
- ], StringInputComponent.prototype, "valueModel", void 0);
22
18
  __decorate([
23
19
  Input(), TrackExternal({ defaultValue: false }),
24
20
  __metadata("design:type", ValueModel)
@@ -1 +1 @@
1
- {"version":3,"file":"string-input.component.js","sourceRoot":"ng://@coolon/angular-ui-powerups/","sources":["lib/components/forms/string-input/string-input.component.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,SAAS,EAAE,KAAK,EAAU,MAAM,eAAe,CAAC;AACzD,OAAO,EAAE,OAAO,EAAE,GAAG,EAA4B,iBAAiB,EAAE,aAAa,EAAE,UAAU,EAAE,MAAM,gBAAgB,CAAC;AACtH,OAAO,EAAE,2BAA2B,EAAE,MAAM,mCAAmC,CAAC;AAOhF;IAA0C,wCAAmC;IAa3E;QAAA,YACE,iBAAO,SAMR;QALO,IAAA,2BAAkF,EAAhF,gBAAK,EAAE,oBAAO,EAAE,kBAAM,EAAE,cAAI,EAAE,gBAAK,EAAE,oBAAO,EAAE,sBAAkC,CAAC;QACzF,KAAI,CAAC,YAAY,GAAG,OAAO,CAAC,MAAM,CAAC;YACjC,KAAI,CAAC,UAAU,CAAC,KAAK,GAAG,IAAI,CAAC;QAC/B,CAAC,CAAC,CAAC;QACH,KAAI,CAAC,YAAY,CAAC,YAAY,CAAC,KAAK,CAAC,WAAW,CAAC,KAAI,CAAC,UAAU,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC;;IAC/E,CAAC;IAED,uCAAQ,GAAR;IACA,CAAC;IApBD;QADC,KAAK,EAAE,EAAE,aAAa,CAAC,EAAE,UAAU,EAAE,YAAY,EAAE,CAAC;;4DACiB;IAGtE;QADC,KAAK,EAAE,EAAE,aAAa,CAAC,EAAE,YAAY,EAAE,KAAK,EAAE,CAAC;kCAC9B,UAAU;kEAAU;IAGtC;QADC,KAAK,EAAE,EAAE,iBAAiB,CAAC,kBAAkB,CAAC;;6DAC1B;IATV,oBAAoB;QALhC,SAAS,CAAC;YACT,QAAQ,EAAE,kBAAkB;YAC5B,wwBAA4C;;SAE7C,CAAC;;OACW,oBAAoB,CAyBhC;IAAD,2BAAC;CAAA,AAzBD,CAA0C,2BAA2B,GAyBpE;SAzBY,oBAAoB","sourcesContent":["import { Component, Input, OnInit } from '@angular/core';\nimport { Command, Dsl, Form, IMutableValueModel, StoreInValueModel, TrackExternal, ValueModel } from '@coolon/pectin';\nimport { AbstractValueInputComponent } from '../abstract-value-input.component';\n\n@Component({\n selector: 'aup-string-input',\n templateUrl: './string-input.component.html',\n styleUrls: ['./string-input.component.scss']\n})\nexport class StringInputComponent extends AbstractValueInputComponent<string> implements OnInit {\n\n @Input() @TrackExternal({ delegateTo: 'inputModel' })\n valueModel: Form.ValueModelBase<string> | IMutableValueModel<string>;\n\n @Input() @TrackExternal({ defaultValue: false })\n enableClearModel: ValueModel<boolean>;\n\n @Input() @StoreInValueModel('enableClearModel')\n enableClear: boolean;\n\n readonly clearCommand: Command<void>;\n\n constructor() {\n super();\n const { chain, valueOf, before, when, after, observe, switchOn } = Dsl.disposeWith(this);\n this.clearCommand = Command.create(() => {\n this.valueModel.value = null;\n });\n this.clearCommand.disableWhile(chain.stringValue(this.valueModel).isBlank());\n }\n\n ngOnInit() {\n }\n\n}\n"]}
1
+ {"version":3,"file":"string-input.component.js","sourceRoot":"ng://@coolon/angular-ui-powerups/","sources":["lib/components/forms/string-input/string-input.component.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,SAAS,EAAE,KAAK,EAAU,MAAM,eAAe,CAAC;AACzD,OAAO,EAAE,OAAO,EAAE,GAAG,EAA4B,iBAAiB,EAAE,aAAa,EAAE,UAAU,EAAE,MAAM,gBAAgB,CAAC;AACtH,OAAO,EAAE,2BAA2B,EAAE,MAAM,mCAAmC,CAAC;AAOhF;IAA0C,wCAAmC;IAU3E;QAAA,YACE,iBAAO,SAMR;QALO,IAAA,2BAAkF,EAAhF,gBAAK,EAAE,oBAAO,EAAE,kBAAM,EAAE,cAAI,EAAE,gBAAK,EAAE,oBAAO,EAAE,sBAAkC,CAAC;QACzF,KAAI,CAAC,YAAY,GAAG,OAAO,CAAC,MAAM,CAAC;YACjC,KAAI,CAAC,UAAU,CAAC,KAAK,GAAG,IAAI,CAAC;QAC/B,CAAC,CAAC,CAAC;QACH,KAAI,CAAC,YAAY,CAAC,YAAY,CAAC,KAAK,CAAC,WAAW,CAAC,KAAI,CAAC,UAAU,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC;;IAC/E,CAAC;IAED,uCAAQ,GAAR;IACA,CAAC;IAjBD;QADC,KAAK,EAAE,EAAE,aAAa,CAAC,EAAE,YAAY,EAAE,KAAK,EAAE,CAAC;kCAC9B,UAAU;kEAAU;IAGtC;QADC,KAAK,EAAE,EAAE,iBAAiB,CAAC,kBAAkB,CAAC;;6DAC1B;IANV,oBAAoB;QALhC,SAAS,CAAC;YACT,QAAQ,EAAE,kBAAkB;YAC5B,wwBAA4C;;SAE7C,CAAC;;OACW,oBAAoB,CAsBhC;IAAD,2BAAC;CAAA,AAtBD,CAA0C,2BAA2B,GAsBpE;SAtBY,oBAAoB","sourcesContent":["import { Component, Input, OnInit } from '@angular/core';\nimport { Command, Dsl, Form, IMutableValueModel, StoreInValueModel, TrackExternal, ValueModel } from '@coolon/pectin';\nimport { AbstractValueInputComponent } from '../abstract-value-input.component';\n\n@Component({\n selector: 'aup-string-input',\n templateUrl: './string-input.component.html',\n styleUrls: ['./string-input.component.scss']\n})\nexport class StringInputComponent extends AbstractValueInputComponent<string> implements OnInit {\n\n @Input() @TrackExternal({ defaultValue: false })\n enableClearModel: ValueModel<boolean>;\n\n @Input() @StoreInValueModel('enableClearModel')\n enableClear: boolean;\n\n readonly clearCommand: Command<void>;\n\n constructor() {\n super();\n const { chain, valueOf, before, when, after, observe, switchOn } = Dsl.disposeWith(this);\n this.clearCommand = Command.create(() => {\n this.valueModel.value = null;\n });\n this.clearCommand.disableWhile(chain.stringValue(this.valueModel).isBlank());\n }\n\n ngOnInit() {\n }\n\n}\n"]}
@@ -1,21 +1,18 @@
1
1
  import { __decorate, __extends, __metadata } from "tslib";
2
2
  import { Component, Input } from '@angular/core';
3
- import { TrackExternal } from '@coolon/pectin';
4
3
  import { AbstractValueInputComponent } from '../abstract-value-input.component';
5
4
  var TextInputComponent = /** @class */ (function (_super) {
6
5
  __extends(TextInputComponent, _super);
7
6
  function TextInputComponent() {
8
7
  var _this = _super.call(this) || this;
8
+ // @Input() @TrackExternal({ delegateTo: 'inputModel' })
9
+ // valueModel: Form.ValueModelBase<string> | IMutableValueModel<string>;
9
10
  _this.rows = 2;
10
11
  return _this;
11
12
  // const { chain, valueOf, before, when, after, observe, switchOn } = Dsl.disposeWith(this);
12
13
  }
13
14
  TextInputComponent.prototype.ngOnInit = function () {
14
15
  };
15
- __decorate([
16
- Input(), TrackExternal({ delegateTo: 'inputModel' }),
17
- __metadata("design:type", Object)
18
- ], TextInputComponent.prototype, "valueModel", void 0);
19
16
  __decorate([
20
17
  Input(),
21
18
  __metadata("design:type", Object)
@@ -1 +1 @@
1
- {"version":3,"file":"text-input.component.js","sourceRoot":"ng://@coolon/angular-ui-powerups/","sources":["lib/components/forms/text-input/text-input.component.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,SAAS,EAAE,KAAK,EAAU,MAAM,eAAe,CAAC;AACzD,OAAO,EAA4B,aAAa,EAAE,MAAM,gBAAgB,CAAC;AACzE,OAAO,EAAE,2BAA2B,EAAE,MAAM,mCAAmC,CAAC;AAOhF;IAAwC,sCAAmC;IAQzE;QAAA,YACE,iBAAO,SAER;QANQ,UAAI,GAAG,CAAC,CAAC;;QAKhB,4FAA4F;IAC9F,CAAC;IAED,qCAAQ,GAAR;IACA,CAAC;IAXD;QADC,KAAK,EAAE,EAAE,aAAa,CAAC,EAAE,UAAU,EAAE,YAAY,EAAE,CAAC;;0DACgB;IAE5D;QAAR,KAAK,EAAE;;oDAAU;IACT;QAAR,KAAK,EAAE;;oDAAc;IANX,kBAAkB;QAL9B,SAAS,CAAC;YACT,QAAQ,EAAE,gBAAgB;YAC1B,ssBAA0C;;SAE3C,CAAC;;OACW,kBAAkB,CAgB9B;IAAD,yBAAC;CAAA,AAhBD,CAAwC,2BAA2B,GAgBlE;SAhBY,kBAAkB","sourcesContent":["import { Component, Input, OnInit } from '@angular/core';\nimport { Form, IMutableValueModel, TrackExternal } from '@coolon/pectin';\nimport { AbstractValueInputComponent } from '../abstract-value-input.component';\n\n@Component({\n selector: 'aup-text-input',\n templateUrl: './text-input.component.html',\n styleUrls: ['./text-input.component.scss']\n})\nexport class TextInputComponent extends AbstractValueInputComponent<string> implements OnInit {\n\n @Input() @TrackExternal({ delegateTo: 'inputModel' })\n valueModel: Form.ValueModelBase<string> | IMutableValueModel<string>;\n\n @Input() rows = 2;\n @Input() cols: number;\n\n constructor() {\n super();\n // const { chain, valueOf, before, when, after, observe, switchOn } = Dsl.disposeWith(this);\n }\n\n ngOnInit() {\n }\n\n}\n"]}
1
+ {"version":3,"file":"text-input.component.js","sourceRoot":"ng://@coolon/angular-ui-powerups/","sources":["lib/components/forms/text-input/text-input.component.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,SAAS,EAAE,KAAK,EAAU,MAAM,eAAe,CAAC;AAEzD,OAAO,EAAE,2BAA2B,EAAE,MAAM,mCAAmC,CAAC;AAOhF;IAAwC,sCAAmC;IAQzE;QAAA,YACE,iBAAO,SAER;QATD,wDAAwD;QACxD,wEAAwE;QAE/D,UAAI,GAAG,CAAC,CAAC;;QAKhB,4FAA4F;IAC9F,CAAC;IAED,qCAAQ,GAAR;IACA,CAAC;IATQ;QAAR,KAAK,EAAE;;oDAAU;IACT;QAAR,KAAK,EAAE;;oDAAc;IANX,kBAAkB;QAL9B,SAAS,CAAC;YACT,QAAQ,EAAE,gBAAgB;YAC1B,ssBAA0C;;SAE3C,CAAC;;OACW,kBAAkB,CAgB9B;IAAD,yBAAC;CAAA,AAhBD,CAAwC,2BAA2B,GAgBlE;SAhBY,kBAAkB","sourcesContent":["import { Component, Input, OnInit } from '@angular/core';\nimport { Form, IMutableValueModel, TrackExternal } from '@coolon/pectin';\nimport { AbstractValueInputComponent } from '../abstract-value-input.component';\n\n@Component({\n selector: 'aup-text-input',\n templateUrl: './text-input.component.html',\n styleUrls: ['./text-input.component.scss']\n})\nexport class TextInputComponent extends AbstractValueInputComponent<string> implements OnInit {\n\n // @Input() @TrackExternal({ delegateTo: 'inputModel' })\n // valueModel: Form.ValueModelBase<string> | IMutableValueModel<string>;\n\n @Input() rows = 2;\n @Input() cols: number;\n\n constructor() {\n super();\n // const { chain, valueOf, before, when, after, observe, switchOn } = Dsl.disposeWith(this);\n }\n\n ngOnInit() {\n }\n\n}\n"]}
@@ -22,7 +22,7 @@ export * from "./noop/noop.component";
22
22
  export * from "./scroll-container/scroll-container.component";
23
23
  export * from "./section-header/section-header.component";
24
24
  export * from "./switch-case/switch-case.component";
25
- export * from "./table/cell-protal-ref";
25
+ export * from "./table/cell-portal-ref";
26
26
  export * from "./table/column-model";
27
27
  export * from "./table/edit-session";
28
28
  export * from "./table/table-model";
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"ng://@coolon/angular-ui-powerups/","sources":["lib/components/index.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,cAAc,qBAAqB,CAAC;AACpC,cAAc,wBAAwB,CAAC;AACvC,cAAc,uBAAuB,CAAC;AACtC,cAAc,0BAA0B,CAAC;AACzC,cAAc,2CAA2C,CAAC;AAC1D,cAAc,6CAA6C,CAAC;AAC5D,cAAc,kCAAkC,CAAC;AACjD,cAAc,uCAAuC,CAAC;AACtD,cAAc,wCAAwC,CAAC;AACvD,cAAc,iDAAiD,CAAC;AAChE,cAAc,+DAA+D,CAAC;AAC9E,cAAc,6CAA6C,CAAC;AAC5D,cAAc,iDAAiD,CAAC;AAChE,cAAc,6CAA6C,CAAC;AAC5D,cAAc,6CAA6C,CAAC;AAC5D,cAAc,yCAAyC,CAAC;AACxD,cAAc,uBAAuB,CAAC;AACtC,cAAc,uBAAuB,CAAC;AACtC,cAAc,+CAA+C,CAAC;AAC9D,cAAc,2CAA2C,CAAC;AAC1D,cAAc,qCAAqC,CAAC;AAEpD,cAAc,yBAAyB,CAAC;AAExC,cAAc,sBAAsB,CAAC;AAErC,cAAc,sBAAsB,CAAC;AAErC,cAAc,qBAAqB,CAAC;AACpC,cAAc,yBAAyB,CAAC;AACxC,cAAc,mDAAmD,CAAC;AAClE,cAAc,+DAA+D,CAAC;AAC9E,cAAc,6EAA6E,CAAC;AAC5F,cAAc,uDAAuD,CAAC;AACtE,cAAc,6DAA6D,CAAC;AAC5E,cAAc,2EAA2E,CAAC;AAC1F,cAAc,2DAA2D,CAAC;AAC1E,cAAc,yEAAyE,CAAC;AACxF,cAAc,sBAAsB,CAAC;AACrC,cAAc,yBAAyB,CAAC;AACxC,cAAc,qBAAqB,CAAC;AACpC,cAAc,+DAA+D,CAAC","sourcesContent":["/**\n * @file Automatically generated by barrelsby.\n */\n\nexport * from \"./components.module\";\nexport * from \"./disposable-component\";\nexport * from \"./focusable.component\";\nexport * from \"./resize-aware.component\";\nexport * from \"./card-container/card-container.component\";\nexport * from \"./focus-container/focus-container.component\";\nexport * from \"./forms/abstract-input.component\";\nexport * from \"./forms/abstract-list-input.component\";\nexport * from \"./forms/abstract-value-input.component\";\nexport * from \"./forms/checkbox-input/checkbox-input.component\";\nexport * from \"./forms/multiple-select-input/multiple-select-input.component\";\nexport * from \"./forms/number-input/number-input.component\";\nexport * from \"./forms/password-input/password-input.component\";\nexport * from \"./forms/select-input/select-input.component\";\nexport * from \"./forms/string-input/string-input.component\";\nexport * from \"./forms/text-input/text-input.component\";\nexport * from \"./icon/icon.component\";\nexport * from \"./noop/noop.component\";\nexport * from \"./scroll-container/scroll-container.component\";\nexport * from \"./section-header/section-header.component\";\nexport * from \"./switch-case/switch-case.component\";\nexport * from \"./table/cell-editors\";\nexport * from \"./table/cell-protal-ref\";\nexport * from \"./table/cell-renderer\";\nexport * from \"./table/column-model\";\nexport * from \"./table/column-text-properties\";\nexport * from \"./table/edit-session\";\nexport * from \"./table/table-def\";\nexport * from \"./table/table-model\";\nexport * from \"./table/table.component\";\nexport * from \"./table/column-template/column-template.directive\";\nexport * from \"./table/default-cell-renderer/default-cell-renderer.component\";\nexport * from \"./table/default-header-cell-renderer/default-header-cell-renderer.component\";\nexport * from \"./table/edit-row-controls/edit-row-controls.component\";\nexport * from \"./table/select-cell-renderer/select-cell-renderer.component\";\nexport * from \"./table/select-header-cell-renderer/select-header-cell-renderer.component\";\nexport * from \"./table/table-cell-renderer/table-cell-renderer.component\";\nexport * from \"./table/table-header-cell-renderer/table-header-cell-renderer.component\";\nexport * from \"./types/bounds.class\";\nexport * from \"./types/dimension.class\";\nexport * from \"./types/point.class\";\nexport * from \"./vertical-focus-container/vertical-focus-container.component\";\n"]}
1
+ {"version":3,"file":"index.js","sourceRoot":"ng://@coolon/angular-ui-powerups/","sources":["lib/components/index.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,cAAc,qBAAqB,CAAC;AACpC,cAAc,wBAAwB,CAAC;AACvC,cAAc,uBAAuB,CAAC;AACtC,cAAc,0BAA0B,CAAC;AACzC,cAAc,2CAA2C,CAAC;AAC1D,cAAc,6CAA6C,CAAC;AAC5D,cAAc,kCAAkC,CAAC;AACjD,cAAc,uCAAuC,CAAC;AACtD,cAAc,wCAAwC,CAAC;AACvD,cAAc,iDAAiD,CAAC;AAChE,cAAc,+DAA+D,CAAC;AAC9E,cAAc,6CAA6C,CAAC;AAC5D,cAAc,iDAAiD,CAAC;AAChE,cAAc,6CAA6C,CAAC;AAC5D,cAAc,6CAA6C,CAAC;AAC5D,cAAc,yCAAyC,CAAC;AACxD,cAAc,uBAAuB,CAAC;AACtC,cAAc,uBAAuB,CAAC;AACtC,cAAc,+CAA+C,CAAC;AAC9D,cAAc,2CAA2C,CAAC;AAC1D,cAAc,qCAAqC,CAAC;AAEpD,cAAc,yBAAyB,CAAC;AAExC,cAAc,sBAAsB,CAAC;AAErC,cAAc,sBAAsB,CAAC;AAErC,cAAc,qBAAqB,CAAC;AACpC,cAAc,yBAAyB,CAAC;AACxC,cAAc,mDAAmD,CAAC;AAClE,cAAc,+DAA+D,CAAC;AAC9E,cAAc,6EAA6E,CAAC;AAC5F,cAAc,uDAAuD,CAAC;AACtE,cAAc,6DAA6D,CAAC;AAC5E,cAAc,2EAA2E,CAAC;AAC1F,cAAc,2DAA2D,CAAC;AAC1E,cAAc,yEAAyE,CAAC;AACxF,cAAc,sBAAsB,CAAC;AACrC,cAAc,yBAAyB,CAAC;AACxC,cAAc,qBAAqB,CAAC;AACpC,cAAc,+DAA+D,CAAC","sourcesContent":["/**\n * @file Automatically generated by barrelsby.\n */\n\nexport * from \"./components.module\";\nexport * from \"./disposable-component\";\nexport * from \"./focusable.component\";\nexport * from \"./resize-aware.component\";\nexport * from \"./card-container/card-container.component\";\nexport * from \"./focus-container/focus-container.component\";\nexport * from \"./forms/abstract-input.component\";\nexport * from \"./forms/abstract-list-input.component\";\nexport * from \"./forms/abstract-value-input.component\";\nexport * from \"./forms/checkbox-input/checkbox-input.component\";\nexport * from \"./forms/multiple-select-input/multiple-select-input.component\";\nexport * from \"./forms/number-input/number-input.component\";\nexport * from \"./forms/password-input/password-input.component\";\nexport * from \"./forms/select-input/select-input.component\";\nexport * from \"./forms/string-input/string-input.component\";\nexport * from \"./forms/text-input/text-input.component\";\nexport * from \"./icon/icon.component\";\nexport * from \"./noop/noop.component\";\nexport * from \"./scroll-container/scroll-container.component\";\nexport * from \"./section-header/section-header.component\";\nexport * from \"./switch-case/switch-case.component\";\nexport * from \"./table/cell-editors\";\nexport * from \"./table/cell-portal-ref\";\nexport * from \"./table/cell-renderer\";\nexport * from \"./table/column-model\";\nexport * from \"./table/column-text-properties\";\nexport * from \"./table/edit-session\";\nexport * from \"./table/table-def\";\nexport * from \"./table/table-model\";\nexport * from \"./table/table.component\";\nexport * from \"./table/column-template/column-template.directive\";\nexport * from \"./table/default-cell-renderer/default-cell-renderer.component\";\nexport * from \"./table/default-header-cell-renderer/default-header-cell-renderer.component\";\nexport * from \"./table/edit-row-controls/edit-row-controls.component\";\nexport * from \"./table/select-cell-renderer/select-cell-renderer.component\";\nexport * from \"./table/select-header-cell-renderer/select-header-cell-renderer.component\";\nexport * from \"./table/table-cell-renderer/table-cell-renderer.component\";\nexport * from \"./table/table-header-cell-renderer/table-header-cell-renderer.component\";\nexport * from \"./types/bounds.class\";\nexport * from \"./types/dimension.class\";\nexport * from \"./types/point.class\";\nexport * from \"./vertical-focus-container/vertical-focus-container.component\";\n"]}
@@ -1 +1 @@
1
- {"version":3,"file":"cell-editors.js","sourceRoot":"ng://@coolon/angular-ui-powerups/","sources":["lib/components/table/cell-editors.ts"],"names":[],"mappings":"","sourcesContent":["import { Form, ListModel, ValueModel } from '@coolon/pectin';\n\nexport interface CellEditorComponent<T> {\n valueModel: ValueModel<T> | Form.ValueModelBase<T>\n\n requestFocus?();\n}\n\nexport interface CellListEditorComponent<T> {\n listModel: ListModel<T> | Form.ListModelBase<T>\n\n requestFocus?();\n}\n"]}
1
+ {"version":3,"file":"cell-editors.js","sourceRoot":"ng://@coolon/angular-ui-powerups/","sources":["lib/components/table/cell-editors.ts"],"names":[],"mappings":"","sourcesContent":["import { Form, IMutableListModel, IMutableValueModel, ListModel, ValueModel } from '@coolon/pectin';\n\nexport interface CellEditorComponent<T> {\n valueModel: IMutableValueModel<T> | Form.ValueModelBase<T>\n\n requestFocus?();\n}\n\nexport interface CellListEditorComponent<T> {\n listModel: IMutableListModel<T> | Form.ListModelBase<T>\n\n requestFocus?();\n}\n"]}
@@ -24,6 +24,7 @@ var CellHeaderPortalRef = /** @class */ (function (_super) {
24
24
  assert.isTruthy(host);
25
25
  host[HEADER_CELL_RENDERER_PORTAL] = new ComponentPortal(this.componentType);
26
26
  };
27
+ // @Trace()
27
28
  CellHeaderPortalRef.prototype.onPortalAttached = function (host, portalComponent) {
28
29
  this.initialiseHeader(portalComponent, host.column);
29
30
  };
@@ -49,13 +50,15 @@ var ComponentCellRendererPortalRef = /** @class */ (function (_super) {
49
50
  ComponentCellRendererPortalRef.prototype.initialiseHost = function (host, columnModel) {
50
51
  host[CELL_RENDERER_PORTAL] = new ComponentPortal(this.componentType);
51
52
  };
53
+ // @Trace()
52
54
  ComponentCellRendererPortalRef.prototype.onPortalAttached = function (host, portalComponent) {
53
55
  host[PORTAL_RENDERER_COMPONENT] = portalComponent;
54
- this.updateComponent(portalComponent, host.getRowData());
56
+ this.updateComponent(portalComponent, host.getRowData(), true);
55
57
  };
58
+ // @Trace()
56
59
  ComponentCellRendererPortalRef.prototype.pushState = function (host) {
57
60
  if (host[PORTAL_RENDERER_COMPONENT]) {
58
- this.updateComponent(host[PORTAL_RENDERER_COMPONENT], host.getRowData());
61
+ this.updateComponent(host[PORTAL_RENDERER_COMPONENT], host.getRowData(), false);
59
62
  }
60
63
  };
61
64
  return ComponentCellRendererPortalRef;
@@ -99,6 +102,7 @@ var TemplateCellRendererPortalRef = /** @class */ (function (_super) {
99
102
  TemplateCellRendererPortalRef.prototype.onPortalAttached = function (host, portalComponent) {
100
103
  // don't care
101
104
  };
105
+ // @Trace()
102
106
  TemplateCellRendererPortalRef.prototype.pushState = function (host) {
103
107
  host[CELL_RENDERER_PORTAL] = this.createPortal(host.getRowData());
104
108
  host.fillCell = this.fillCell;
@@ -110,4 +114,4 @@ var TemplateCellRendererPortalRef = /** @class */ (function (_super) {
110
114
  return TemplateCellRendererPortalRef;
111
115
  }(CellRendererPortalRef));
112
116
  export { TemplateCellRendererPortalRef };
113
- //# sourceMappingURL=cell-protal-ref.js.map
117
+ //# sourceMappingURL=cell-portal-ref.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"cell-portal-ref.js","sourceRoot":"ng://@coolon/angular-ui-powerups/","sources":["lib/components/table/cell-portal-ref.ts"],"names":[],"mappings":"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","sourcesContent":["import { ComponentType } from '@angular/cdk/overlay';\nimport { ComponentPortal, TemplatePortal } from '@angular/cdk/portal';\nimport { TemplateRef, ViewContainerRef } from '@angular/core';\nimport { Trace } from '@coolon/pectin';\nimport { assert } from '@coolon/typescript-utilities';\nimport { ColumnModel, RowData } from './column-model';\nimport { EditSession } from './edit-session';\nimport { TableCellRendererComponent } from './table-cell-renderer/table-cell-renderer.component';\nimport { TableHeaderCellRendererComponent } from './table-header-cell-renderer/table-header-cell-renderer.component';\n\nexport const HEADER_CELL_RENDERER_PORTAL = Symbol('aup-cell-header-renderer-component-ref');\nexport const CELL_RENDERER_PORTAL = Symbol('aup-cell-renderer-component-ref');\nexport const CELL_EDITOR_PORTAL = Symbol('aup-cell-editor-component-ref');\nexport const PORTAL_RENDERER_COMPONENT = Symbol('aup-cell-renderer-portal-component');\nexport const PORTAL_EDITOR_COMPONENT = Symbol('aup-cell-editor-portal-component');\n\n\nexport abstract class CellPortalRef<Row, Host, Portal> {\n constructor() {\n }\n\n abstract initialiseHost(host: Host, columnModel: ColumnModel<Row>)\n\n abstract onPortalAttached(host: Host, portalComponent: Portal);\n}\n\nexport class CellHeaderPortalRef<Row, C> extends CellPortalRef<Row, TableHeaderCellRendererComponent, C> {\n constructor(readonly componentType: ComponentType<C>, readonly initialiseHeader: (component: C, columnModel: ColumnModel<Row>) => void) {\n super();\n }\n\n initialiseHost(host: TableHeaderCellRendererComponent, columnModel: ColumnModel<Row>) {\n assert.isTruthy(host);\n host[HEADER_CELL_RENDERER_PORTAL] = new ComponentPortal(this.componentType);\n }\n\n // @Trace()\n onPortalAttached(host: TableHeaderCellRendererComponent, portalComponent: C) {\n this.initialiseHeader(portalComponent, host.column);\n }\n\n}\n\nexport abstract class CellRendererPortalRef<Row, Portal> extends CellPortalRef<Row, TableCellRendererComponent<Row>, Portal> {\n abstract pushState(host: TableCellRendererComponent<Row>): void;\n}\n\nexport class ComponentCellRendererPortalRef<Row, Portal> extends CellRendererPortalRef<Row, Portal> {\n\n\n constructor(readonly componentType: ComponentType<Portal>, readonly updateComponent: (component: Portal, rowData: RowData<Row>, firstTime: boolean) => void) {\n super();\n }\n\n initialiseHost(host: TableCellRendererComponent<Row>, columnModel: ColumnModel<Row>) {\n host[CELL_RENDERER_PORTAL] = new ComponentPortal(this.componentType);\n }\n\n // @Trace()\n onPortalAttached(host: TableCellRendererComponent<Row>, portalComponent: Portal) {\n host[PORTAL_RENDERER_COMPONENT] = portalComponent;\n this.updateComponent(portalComponent, host.getRowData(), true);\n }\n\n // @Trace()\n pushState(host: TableCellRendererComponent<Row>): void {\n if (host[PORTAL_RENDERER_COMPONENT]) {\n this.updateComponent(host[PORTAL_RENDERER_COMPONENT], host.getRowData(), false);\n }\n }\n\n}\n\nexport class CellEditorPortalRef<Row, Portal> extends CellPortalRef<Row, TableCellRendererComponent<Row>, Portal> {\n\n constructor(readonly componentType: ComponentType<Portal>, readonly initialiseEditorSession: (component: Portal, editSession: EditSession<Row>) => void) {\n super();\n }\n\n initialiseHost(host: TableCellRendererComponent<Row>, columnModel: ColumnModel<Row>) {\n assert.isTruthy(host);\n host[CELL_EDITOR_PORTAL] = new ComponentPortal(this.componentType);\n }\n\n // @Trace()\n onPortalAttached(host: TableCellRendererComponent<Row>, portalComponent: Portal) {\n host[PORTAL_EDITOR_COMPONENT] = portalComponent;\n this.initialiseEditorSession(portalComponent, host.editSession);\n }\n\n}\n\nexport class TemplateCellRendererPortalRef<Row> extends CellRendererPortalRef<Row, undefined> {\n\n private templateRef: TemplateRef<any>;\n private viewContainer: ViewContainerRef;\n private fillCell: boolean;\n private padChild: boolean;\n\n constructor() {\n super();\n }\n\n public registerPortal(templateRef: TemplateRef<any>, viewContainer: ViewContainerRef, fillCell: boolean, padChild: boolean) {\n this.templateRef = templateRef;\n this.viewContainer = viewContainer;\n this.fillCell = fillCell;\n this.padChild = padChild;\n }\n\n initialiseHost(host: TableCellRendererComponent<Row>, columnModel: ColumnModel<Row>) {\n assert.isTruthy(host);\n }\n\n // @Trace()\n onPortalAttached(host: TableCellRendererComponent<Row>, portalComponent: undefined) {\n // don't care\n }\n\n // @Trace()\n pushState(host: TableCellRendererComponent<Row>): void {\n host[CELL_RENDERER_PORTAL] = this.createPortal(host.getRowData());\n host.fillCell = this.fillCell;\n host.padChild = this.padChild;\n }\n\n private createPortal(data: RowData<Row>) {\n return new TemplatePortal<any>(this.templateRef, this.viewContainer, { ...(data), $implicit: data.row });\n }\n}\n"]}
@@ -3,7 +3,7 @@ import { MultipleSelectionModel } from '@coolon/pectin';
3
3
  import { assert } from '@coolon/typescript-utilities';
4
4
  import { Memoize } from '@typescript-plus/fast-memoize-decorator/dist/src';
5
5
  import _ from 'lodash';
6
- import { CellEditorPortalRef, CellHeaderPortalRef, ComponentCellRendererPortalRef, TemplateCellRendererPortalRef } from './cell-protal-ref';
6
+ import { CellEditorPortalRef, CellHeaderPortalRef, ComponentCellRendererPortalRef, TemplateCellRendererPortalRef } from './cell-portal-ref';
7
7
  import { DefaultCellRendererComponent } from './default-cell-renderer/default-cell-renderer.component';
8
8
  import { DefaultHeaderCellRendererComponent } from './default-header-cell-renderer/default-header-cell-renderer.component';
9
9
  import { EditRowControls } from './edit-row-controls/edit-row-controls.component';
@@ -110,17 +110,20 @@ var PropertyColumnModel = /** @class */ (function (_super) {
110
110
  _this.cellRenderer(DefaultCellRendererComponent);
111
111
  return _this;
112
112
  }
113
- PropertyColumnModel.prototype.cellRenderer = function (componentType) {
113
+ PropertyColumnModel.prototype.cellRenderer = function (componentType, onComponentInit) {
114
114
  var _this = this;
115
- this.configureCellRenderer(new ComponentCellRendererPortalRef(componentType, function (component, rowData) {
115
+ this.configureCellRenderer(new ComponentCellRendererPortalRef(componentType, function (component, rowData, firstTime) {
116
+ if (firstTime && onComponentInit) {
117
+ onComponentInit(component);
118
+ }
116
119
  component.value = _this._format(rowData.row[_this.property]);
117
120
  }));
118
121
  return this;
119
122
  };
120
- PropertyColumnModel.prototype.cellEditor = function (editor, validatorsOrInitialiser, initialiseComponent) {
123
+ PropertyColumnModel.prototype.cellEditor = function (editor, validatorsOrInitialiser, onComponentInit) {
121
124
  var _this = this;
122
125
  var validators = Array.isArray(validatorsOrInitialiser) ? validatorsOrInitialiser : undefined;
123
- var initialiser = _.isFunction(validatorsOrInitialiser) ? validatorsOrInitialiser : initialiseComponent;
126
+ var initialiser = _.isFunction(validatorsOrInitialiser) ? validatorsOrInitialiser : onComponentInit;
124
127
  this.configureCellEditor(new CellEditorPortalRef(editor, function (component, editSession) {
125
128
  var formValueModel = editSession.form.pluck(_this.property);
126
129
  if (validators) {
@@ -1 +1 @@
1
- {"version":3,"file":"column-model.js","sourceRoot":"ng://@coolon/angular-ui-powerups/","sources":["lib/components/table/column-model.ts"],"names":[],"mappings":"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","sourcesContent":["import { ComponentType } from '@angular/cdk/overlay';\nimport { TemplateRef, ViewContainerRef } from '@angular/core';\nimport {\n Command,\n DirtyTrackingForm,\n Form,\n MultipleSelectionModel,\n SelectionModel,\n Types,\n UnaryCommand,\n Validator\n} from '@coolon/pectin';\nimport { assert } from '@coolon/typescript-utilities';\nimport { Memoize } from '@typescript-plus/fast-memoize-decorator/dist/src';\nimport _ from 'lodash';\nimport { CellEditorComponent, CellListEditorComponent } from './cell-editors';\nimport {\n CellEditorPortalRef,\n CellHeaderPortalRef,\n CellRendererPortalRef,\n ComponentCellRendererPortalRef,\n TemplateCellRendererPortalRef\n} from './cell-protal-ref';\nimport { ColumnTextProperties } from './column-text-properties';\nimport { DefaultCellRendererComponent } from './default-cell-renderer/default-cell-renderer.component';\nimport { DefaultHeaderCellRendererComponent } from './default-header-cell-renderer/default-header-cell-renderer.component';\nimport { EditRowControls } from './edit-row-controls/edit-row-controls.component';\nimport { EditSession } from './edit-session';\nimport { SelectCellRendererComponent } from './select-cell-renderer/select-cell-renderer.component';\nimport { SelectHeaderCellRendererComponent } from './select-header-cell-renderer/select-header-cell-renderer.component';\nimport { TableCellRendererComponent } from './table-cell-renderer/table-cell-renderer.component';\nimport { TableHeaderCellRendererComponent } from './table-header-cell-renderer/table-header-cell-renderer.component';\n\n\nconst noop = () => {\n};\n\nexport interface RowData<Row> {\n row: Row;\n editSession?: EditSession<Row>;\n editRowCommand: Command<void>;\n}\n\n\nexport class ColumnModel<Row> {\n\n private _columnTextProperties: ColumnTextProperties;\n\n private _columnHeaderPortalRef: CellHeaderPortalRef<Row, any>;\n private _cellRendererPortalRef: CellRendererPortalRef<Row, any>;\n private _cellEditorPortalRef: CellEditorPortalRef<Row, any>;\n\n private _selectRowOnClick = undefined;\n\n constructor(readonly columnId: string, private defaults: ColumnModel.Defaults) {\n this.cellHeaderRenderer(DefaultHeaderCellRendererComponent, (component, column) => {\n component.headerText = column.getHeaderText();\n });\n }\n\n @Memoize()\n getHeaderText(): string {\n return this.getColumnTextProperties()?.headerText() || this.getDefaultHeaderText();\n }\n\n protected getDefaultHeaderText() {\n return this.columnId;\n }\n\n @Memoize()\n getColumnTextProperties(): ColumnTextProperties {\n return this._columnTextProperties || this.defaults.getColumnTextProperties(this);\n }\n\n textProperties(columnTextProperties: ColumnTextProperties): this {\n this._columnTextProperties = columnTextProperties;\n return this;\n }\n\n protected configureHeaderRenderer<C>(config: CellHeaderPortalRef<Row, any>): void {\n this._columnHeaderPortalRef = config;\n }\n\n protected configureCellRenderer<C>(config: CellRendererPortalRef<Row, any>): void {\n this._cellRendererPortalRef = config;\n }\n\n protected configureCellEditor<E>(cellEditor: CellEditorPortalRef<Row, E>): void {\n this._cellEditorPortalRef = cellEditor;\n }\n\n cellHeaderRenderer<C>(componentType: ComponentType<C>, initialiser: (component: C, column: ColumnModel<Row>) => void): this {\n this.configureHeaderRenderer(new CellHeaderPortalRef<Row, C>(componentType, initialiser));\n return this;\n }\n\n hasEditorPortal() {\n return !!this._cellEditorPortalRef;\n }\n\n attachHeaderCell(host: any) {\n this._columnHeaderPortalRef.initialiseHost(host, this);\n }\n\n attachCell(host: any) {\n this._cellRendererPortalRef.initialiseHost(host, this);\n if (this.hasEditorPortal()) {\n this._cellEditorPortalRef.initialiseHost(host, this);\n }\n }\n\n onHeaderAttached(host: TableHeaderCellRendererComponent, component: any) {\n this._columnHeaderPortalRef.onPortalAttached(host, component);\n }\n\n onRendererAttached(host: TableCellRendererComponent<Row>, component: any) {\n this._cellRendererPortalRef.onPortalAttached(host, component);\n }\n\n // @Trace()\n onEditorAttached(host: TableCellRendererComponent<Row>, component: any) {\n this._cellEditorPortalRef.onPortalAttached(host, component);\n }\n\n updatePortalContent(host: TableCellRendererComponent<Row>) {\n this._cellRendererPortalRef.pushState(host);\n }\n\n protected selectRowOnClick(selectOnRowClick: boolean): this {\n this._selectRowOnClick = selectOnRowClick;\n return this;\n }\n\n isRowSelectionEnabled(): boolean | undefined {\n return this._selectRowOnClick;\n }\n\n isRowSelectionExplicitlyEnabled(): boolean {\n return this._selectRowOnClick === true;\n }\n\n isRowSelectionExplicitlyDisabled(): boolean {\n return this._selectRowOnClick === false;\n }\n}\n\nexport namespace ColumnModel {\n export interface Defaults {\n getColumnTextProperties(columnModel: ColumnModel<any>): ColumnTextProperties;\n }\n}\n\nexport interface CellEditorOptions<V, C> { //extends CellRendererOptions<E> {\n validators?: Validator<V>[];\n\n initialiseComponent?(component: C);\n}\n\nexport class PropertyColumnModel<Row, P extends Types.ValuePropertiesOf<Row>> extends ColumnModel<Row> {\n\n\n private _format: (value: Row[P]) => any = (value) => value;\n\n constructor(readonly property: P, defaults: ColumnModel.Defaults) {\n super(property.toString(), defaults);\n this.cellRenderer(DefaultCellRendererComponent);\n }\n\n cellRenderer(componentType: ComponentType<{ value: Row[P] }>): this {\n this.configureCellRenderer(new ComponentCellRendererPortalRef(componentType, (component, rowData) => {\n component.value = this._format(rowData.row[this.property]);\n }));\n return this;\n }\n\n cellEditor<E extends CellEditorComponent<Row[P]>>(editor: ComponentType<E>, validators?: Validator<Row[P]>[], initialiseComponent?: (component: E) => void): this\n cellEditor<E extends CellEditorComponent<Row[P]>>(editor: ComponentType<E>, initialiseComponent?: (component: E) => void): this\n cellEditor<E extends CellEditorComponent<Row[P]>>(editor: ComponentType<E>, validatorsOrInitialiser?: Validator<Row[P]>[] | ((component: E) => void), initialiseComponent?: (component: E) => void): this {\n const validators = Array.isArray(validatorsOrInitialiser) ? validatorsOrInitialiser : undefined;\n const initialiser = _.isFunction(validatorsOrInitialiser) ? validatorsOrInitialiser : initialiseComponent;\n this.configureCellEditor(new CellEditorPortalRef(editor, (component: E, editSession: EditSession<Row>) => {\n const formValueModel = editSession.form.pluck(this.property);\n if (validators) {\n formValueModel.validateUsing(validators);\n }\n component.valueModel = formValueModel;\n if (initialiser) {\n initialiser(component);\n }\n }));\n return this;\n }\n\n format(formatter: (value: Row[P]) => any): this {\n assert.isFunction(formatter);\n this._format = formatter;\n return this;\n }\n\n public selectRowOnClick(selectOnRowClick: boolean): this {\n return super.selectRowOnClick(selectOnRowClick);\n }\n\n}\n\nexport class ListPropertyColumnModel<Row, P extends Types.ArrayPropertiesOf<Row>> extends ColumnModel<Row> {\n\n private _format: (value: Types.ArrayElementType<Row, P>[]) => any = (value) => value.map(v => v?.toString()).join(', ');\n\n constructor(readonly property: P, defaults: ColumnModel.Defaults) {\n super(property.toString(), defaults);\n this.cellRenderer(DefaultCellRendererComponent);\n }\n\n cellRenderer(componentType: ComponentType<{ value: Types.ArrayElementType<Row, P>[] }>): this {\n this.configureCellRenderer(new ComponentCellRendererPortalRef(componentType, (component, rowData) => {\n component.value = this._format(rowData.row[this.property]);\n }));\n return this;\n }\n\n cellEditor<C extends CellListEditorComponent<Types.ArrayElementType<Row, P>>>(editor: ComponentType<C>, validators?: Validator<Types.ArrayElementType<Row, P>[]>[], initialiseComponent?: (component: C) => void): this\n cellEditor<C extends CellListEditorComponent<Types.ArrayElementType<Row, P>>>(editor: ComponentType<C>, initialiseComponent?: (component: C) => void): this\n cellEditor<C extends CellListEditorComponent<Types.ArrayElementType<Row, P>>>(editor: ComponentType<C>, validatorsOrInitialiser?: Validator<Types.ArrayElementType<Row, P>[]>[] | ((component: C) => void), initialiseComponent?: (component: C) => void): this {\n const validators = Array.isArray(validatorsOrInitialiser) ? validatorsOrInitialiser : undefined;\n const initialiser = _.isFunction(validatorsOrInitialiser) ? validatorsOrInitialiser : initialiseComponent;\n\n this.configureCellEditor(new CellEditorPortalRef(editor, (component: C, editSession: EditSession<Row>) => {\n const formListModel = editSession.form.pluckList(this.property);\n if (validators) {\n formListModel.validateUsing(validators);\n }\n component.listModel = formListModel;\n if (initialiser) {\n initialiser(component);\n }\n }));\n return this;\n }\n\n format(formatter: (value: Types.ArrayElementType<Row, P>[]) => any): this {\n assert.isFunction(formatter);\n this._format = formatter;\n return this;\n }\n\n public selectRowOnClick(selectOnRowClick: boolean): this {\n return super.selectRowOnClick(selectOnRowClick);\n }\n\n}\n\nexport class CustomValueColumnModel<Row, V> extends ColumnModel<Row> {\n constructor(columnId: string, defaults: ColumnModel.Defaults, private getValue: (row: Row) => V) {\n super(columnId, defaults);\n this.cellRenderer(DefaultCellRendererComponent);\n }\n\n cellRenderer(componentType: ComponentType<{ value: V }>): this {\n this.configureCellRenderer(new ComponentCellRendererPortalRef(componentType, (component, rowData) => {\n component.value = this.getValue(rowData.row);\n }));\n return this;\n }\n\n public selectRowOnClick(selectOnRowClick: boolean): this {\n return super.selectRowOnClick(selectOnRowClick);\n }\n\n}\n\nexport class EditorControlColumnModel<Row> extends ColumnModel<Row> {\n\n constructor(columnId: string, saveCommand: UnaryCommand<DirtyTrackingForm<Row>, boolean>, defaults: ColumnModel.Defaults) {\n super(columnId, defaults);\n this.cellRenderer(EditRowControls);\n }\n\n cellRenderer(componentType: ComponentType<{ row: Row, editSession: EditSession<Row>, editRowCommand: Command<void> }>): this {\n this.configureCellRenderer(new ComponentCellRendererPortalRef(componentType, (component, rowData: RowData<Row>) => {\n component.row = rowData.row;\n component.editSession = rowData.editSession;\n component.editRowCommand = rowData.editRowCommand;\n }));\n return this;\n }\n\n protected getDefaultHeaderText(): string {\n return '';\n }\n}\n\nexport class CustomTemplateColumnModel<Row> extends ColumnModel<Row> {\n private readonly config = new TemplateCellRendererPortalRef<Row>();\n\n constructor(columnId: string, defaults: ColumnModel.Defaults) {\n super(columnId, defaults);\n this.configureCellRenderer(this.config);\n }\n\n setTemplate(templateRef: TemplateRef<any>, viewContainer: ViewContainerRef, fillCell: boolean, padChild: boolean) {\n this.config.registerPortal(templateRef, viewContainer, fillCell, padChild);\n }\n\n public selectRowOnClick(selectOnRowClick: boolean): this {\n return super.selectRowOnClick(selectOnRowClick);\n }\n\n}\n\nexport class SelectionColumnModel<Row> extends ColumnModel<Row> {\n\n private _enableHeaderControls = true;\n\n constructor(columnId: string, defaults: ColumnModel.Defaults, private readonly selectionModel: SelectionModel<Row>) {\n super(columnId, defaults);\n this.selectOnRowClick(false);\n if (selectionModel instanceof MultipleSelectionModel) {\n this.cellHeaderRenderer(SelectHeaderCellRendererComponent, (component) => {\n component.selectionModel = selectionModel;\n component.enableHeaderControls = this._enableHeaderControls;\n });\n }\n this.configureCellRenderer(new ComponentCellRendererPortalRef(SelectCellRendererComponent, (component, rowData: RowData<Row>) => {\n component.row = rowData.row;\n component.selectionModel = selectionModel;\n }));\n }\n\n protected getDefaultHeaderText(): string {\n return '';\n }\n\n isRowSelectionEnabledByDefault(): boolean | undefined {\n return this.isRowSelectionExplicitlyEnabled();\n }\n\n selectOnRowClick(selectOnRowClick: boolean): this {\n // note we're using different method name as the selection column treats this\n // state as the default for all columns.\n return super.selectRowOnClick(selectOnRowClick);\n }\n\n enableHeaderControls(enable: boolean): this {\n this._enableHeaderControls = enable;\n return this;\n }\n\n selectRow(row: Row) {\n this.selectionModel.selectCommand.execute(row);\n }\n}\n\n\n"]}
1
+ {"version":3,"file":"column-model.js","sourceRoot":"ng://@coolon/angular-ui-powerups/","sources":["lib/components/table/column-model.ts"],"names":[],"mappings":"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","sourcesContent":["import { ComponentType } from '@angular/cdk/overlay';\nimport { TemplateRef, ViewContainerRef } from '@angular/core';\nimport {\n Command,\n DirtyTrackingForm,\n Form,\n MultipleSelectionModel,\n SelectionModel,\n Types,\n UnaryCommand,\n Validator\n} from '@coolon/pectin';\nimport { assert } from '@coolon/typescript-utilities';\nimport { Memoize } from '@typescript-plus/fast-memoize-decorator/dist/src';\nimport _ from 'lodash';\nimport { CellEditorComponent, CellListEditorComponent } from './cell-editors';\nimport {\n CellEditorPortalRef,\n CellHeaderPortalRef,\n CellRendererPortalRef,\n ComponentCellRendererPortalRef,\n TemplateCellRendererPortalRef\n} from './cell-portal-ref';\nimport { ColumnTextProperties } from './column-text-properties';\nimport { DefaultCellRendererComponent } from './default-cell-renderer/default-cell-renderer.component';\nimport { DefaultHeaderCellRendererComponent } from './default-header-cell-renderer/default-header-cell-renderer.component';\nimport { EditRowControls } from './edit-row-controls/edit-row-controls.component';\nimport { EditSession } from './edit-session';\nimport { SelectCellRendererComponent } from './select-cell-renderer/select-cell-renderer.component';\nimport { SelectHeaderCellRendererComponent } from './select-header-cell-renderer/select-header-cell-renderer.component';\nimport { TableCellRendererComponent } from './table-cell-renderer/table-cell-renderer.component';\nimport { TableHeaderCellRendererComponent } from './table-header-cell-renderer/table-header-cell-renderer.component';\n\n\nconst noop = () => {\n};\n\nexport interface RowData<Row> {\n row: Row;\n editSession?: EditSession<Row>;\n editRowCommand: Command<void>;\n}\n\n\nexport class ColumnModel<Row> {\n\n private _columnTextProperties: ColumnTextProperties;\n\n private _columnHeaderPortalRef: CellHeaderPortalRef<Row, any>;\n private _cellRendererPortalRef: CellRendererPortalRef<Row, any>;\n private _cellEditorPortalRef: CellEditorPortalRef<Row, any>;\n\n private _selectRowOnClick = undefined;\n\n constructor(readonly columnId: string, private defaults: ColumnModel.Defaults) {\n this.cellHeaderRenderer(DefaultHeaderCellRendererComponent, (component, column) => {\n component.headerText = column.getHeaderText();\n });\n }\n\n @Memoize()\n getHeaderText(): string {\n return this.getColumnTextProperties()?.headerText() || this.getDefaultHeaderText();\n }\n\n protected getDefaultHeaderText() {\n return this.columnId;\n }\n\n @Memoize()\n getColumnTextProperties(): ColumnTextProperties {\n return this._columnTextProperties || this.defaults.getColumnTextProperties(this);\n }\n\n textProperties(columnTextProperties: ColumnTextProperties): this {\n this._columnTextProperties = columnTextProperties;\n return this;\n }\n\n protected configureHeaderRenderer<C>(config: CellHeaderPortalRef<Row, any>): void {\n this._columnHeaderPortalRef = config;\n }\n\n protected configureCellRenderer<C>(config: CellRendererPortalRef<Row, any>): void {\n this._cellRendererPortalRef = config;\n }\n\n protected configureCellEditor<E>(cellEditor: CellEditorPortalRef<Row, E>): void {\n this._cellEditorPortalRef = cellEditor;\n }\n\n cellHeaderRenderer<C>(componentType: ComponentType<C>, initialiser: (component: C, column: ColumnModel<Row>) => void): this {\n this.configureHeaderRenderer(new CellHeaderPortalRef<Row, C>(componentType, initialiser));\n return this;\n }\n\n hasEditorPortal() {\n return !!this._cellEditorPortalRef;\n }\n\n attachHeaderCell(host: any) {\n this._columnHeaderPortalRef.initialiseHost(host, this);\n }\n\n attachCell(host: any) {\n this._cellRendererPortalRef.initialiseHost(host, this);\n if (this.hasEditorPortal()) {\n this._cellEditorPortalRef.initialiseHost(host, this);\n }\n }\n\n onHeaderAttached(host: TableHeaderCellRendererComponent, component: any) {\n this._columnHeaderPortalRef.onPortalAttached(host, component);\n }\n\n onRendererAttached(host: TableCellRendererComponent<Row>, component: any) {\n this._cellRendererPortalRef.onPortalAttached(host, component);\n }\n\n // @Trace()\n onEditorAttached(host: TableCellRendererComponent<Row>, component: any) {\n this._cellEditorPortalRef.onPortalAttached(host, component);\n }\n\n updatePortalContent(host: TableCellRendererComponent<Row>) {\n this._cellRendererPortalRef.pushState(host);\n }\n\n protected selectRowOnClick(selectOnRowClick: boolean): this {\n this._selectRowOnClick = selectOnRowClick;\n return this;\n }\n\n isRowSelectionEnabled(): boolean | undefined {\n return this._selectRowOnClick;\n }\n\n isRowSelectionExplicitlyEnabled(): boolean {\n return this._selectRowOnClick === true;\n }\n\n isRowSelectionExplicitlyDisabled(): boolean {\n return this._selectRowOnClick === false;\n }\n}\n\nexport namespace ColumnModel {\n export interface Defaults {\n getColumnTextProperties(columnModel: ColumnModel<any>): ColumnTextProperties;\n }\n}\n\nexport interface CellEditorOptions<V, C> { //extends CellRendererOptions<E> {\n validators?: Validator<V>[];\n\n initialiseComponent?(component: C);\n}\n\nexport class PropertyColumnModel<Row, P extends Types.ValuePropertiesOf<Row>> extends ColumnModel<Row> {\n\n\n private _format: (value: Row[P]) => any = (value) => value;\n\n constructor(readonly property: P, defaults: ColumnModel.Defaults) {\n super(property.toString(), defaults);\n this.cellRenderer(DefaultCellRendererComponent);\n }\n\n cellRenderer<E extends { value: Row[P] }>(componentType: ComponentType<E>, onComponentInit?: (component: E) => void): this {\n this.configureCellRenderer(new ComponentCellRendererPortalRef(componentType, (component, rowData, firstTime) => {\n if (firstTime && onComponentInit) {\n onComponentInit(component)\n }\n component.value = this._format(rowData.row[this.property]);\n }));\n return this;\n }\n\n cellEditor<E extends CellEditorComponent<Row[P]>>(editor: ComponentType<E>, validators?: Validator<Row[P]>[], initialiseComponent?: (component: E) => void): this\n cellEditor<E extends CellEditorComponent<Row[P]>>(editor: ComponentType<E>, initialiseComponent?: (component: E) => void): this\n cellEditor<E extends CellEditorComponent<Row[P]>>(editor: ComponentType<E>, validatorsOrInitialiser?: Validator<Row[P]>[] | ((component: E) => void), onComponentInit?: (component: E) => void): this {\n const validators = Array.isArray(validatorsOrInitialiser) ? validatorsOrInitialiser : undefined;\n const initialiser = _.isFunction(validatorsOrInitialiser) ? validatorsOrInitialiser : onComponentInit;\n this.configureCellEditor(new CellEditorPortalRef(editor, (component: E, editSession: EditSession<Row>) => {\n const formValueModel = editSession.form.pluck(this.property);\n if (validators) {\n formValueModel.validateUsing(validators);\n }\n component.valueModel = formValueModel;\n if (initialiser) {\n initialiser(component);\n }\n }));\n return this;\n }\n\n format(formatter: (value: Row[P]) => any): this {\n assert.isFunction(formatter);\n this._format = formatter;\n return this;\n }\n\n public selectRowOnClick(selectOnRowClick: boolean): this {\n return super.selectRowOnClick(selectOnRowClick);\n }\n\n}\n\nexport class ListPropertyColumnModel<Row, P extends Types.ArrayPropertiesOf<Row>> extends ColumnModel<Row> {\n\n private _format: (value: Types.ArrayElementType<Row, P>[]) => any = (value) => value.map(v => v?.toString()).join(', ');\n\n constructor(readonly property: P, defaults: ColumnModel.Defaults) {\n super(property.toString(), defaults);\n this.cellRenderer(DefaultCellRendererComponent);\n }\n\n cellRenderer(componentType: ComponentType<{ value: Types.ArrayElementType<Row, P>[] }>): this {\n this.configureCellRenderer(new ComponentCellRendererPortalRef(componentType, (component, rowData) => {\n component.value = this._format(rowData.row[this.property]);\n }));\n return this;\n }\n\n cellEditor<C extends CellListEditorComponent<Types.ArrayElementType<Row, P>>>(editor: ComponentType<C>, validators?: Validator<Types.ArrayElementType<Row, P>[]>[], initialiseComponent?: (component: C) => void): this\n cellEditor<C extends CellListEditorComponent<Types.ArrayElementType<Row, P>>>(editor: ComponentType<C>, initialiseComponent?: (component: C) => void): this\n cellEditor<C extends CellListEditorComponent<Types.ArrayElementType<Row, P>>>(editor: ComponentType<C>, validatorsOrInitialiser?: Validator<Types.ArrayElementType<Row, P>[]>[] | ((component: C) => void), initialiseComponent?: (component: C) => void): this {\n const validators = Array.isArray(validatorsOrInitialiser) ? validatorsOrInitialiser : undefined;\n const initialiser = _.isFunction(validatorsOrInitialiser) ? validatorsOrInitialiser : initialiseComponent;\n\n this.configureCellEditor(new CellEditorPortalRef(editor, (component: C, editSession: EditSession<Row>) => {\n const formListModel = editSession.form.pluckList(this.property);\n if (validators) {\n formListModel.validateUsing(validators);\n }\n component.listModel = formListModel;\n if (initialiser) {\n initialiser(component);\n }\n }));\n return this;\n }\n\n format(formatter: (value: Types.ArrayElementType<Row, P>[]) => any): this {\n assert.isFunction(formatter);\n this._format = formatter;\n return this;\n }\n\n public selectRowOnClick(selectOnRowClick: boolean): this {\n return super.selectRowOnClick(selectOnRowClick);\n }\n\n}\n\nexport class CustomValueColumnModel<Row, V> extends ColumnModel<Row> {\n constructor(columnId: string, defaults: ColumnModel.Defaults, private getValue: (row: Row) => V) {\n super(columnId, defaults);\n this.cellRenderer(DefaultCellRendererComponent);\n }\n\n cellRenderer(componentType: ComponentType<{ value: V }>): this {\n this.configureCellRenderer(new ComponentCellRendererPortalRef(componentType, (component, rowData) => {\n component.value = this.getValue(rowData.row);\n }));\n return this;\n }\n\n public selectRowOnClick(selectOnRowClick: boolean): this {\n return super.selectRowOnClick(selectOnRowClick);\n }\n\n}\n\nexport class EditorControlColumnModel<Row> extends ColumnModel<Row> {\n\n constructor(columnId: string, saveCommand: UnaryCommand<DirtyTrackingForm<Row>, boolean>, defaults: ColumnModel.Defaults) {\n super(columnId, defaults);\n this.cellRenderer(EditRowControls);\n }\n\n cellRenderer(componentType: ComponentType<{ row: Row, editSession: EditSession<Row>, editRowCommand: Command<void> }>): this {\n this.configureCellRenderer(new ComponentCellRendererPortalRef(componentType, (component, rowData: RowData<Row>) => {\n component.row = rowData.row;\n component.editSession = rowData.editSession;\n component.editRowCommand = rowData.editRowCommand;\n }));\n return this;\n }\n\n protected getDefaultHeaderText(): string {\n return '';\n }\n}\n\nexport class CustomTemplateColumnModel<Row> extends ColumnModel<Row> {\n private readonly config = new TemplateCellRendererPortalRef<Row>();\n\n constructor(columnId: string, defaults: ColumnModel.Defaults) {\n super(columnId, defaults);\n this.configureCellRenderer(this.config);\n }\n\n setTemplate(templateRef: TemplateRef<any>, viewContainer: ViewContainerRef, fillCell: boolean, padChild: boolean) {\n this.config.registerPortal(templateRef, viewContainer, fillCell, padChild);\n }\n\n public selectRowOnClick(selectOnRowClick: boolean): this {\n return super.selectRowOnClick(selectOnRowClick);\n }\n\n}\n\nexport class SelectionColumnModel<Row> extends ColumnModel<Row> {\n\n private _enableHeaderControls = true;\n\n constructor(columnId: string, defaults: ColumnModel.Defaults, private readonly selectionModel: SelectionModel<Row>) {\n super(columnId, defaults);\n this.selectOnRowClick(false);\n if (selectionModel instanceof MultipleSelectionModel) {\n this.cellHeaderRenderer(SelectHeaderCellRendererComponent, (component) => {\n component.selectionModel = selectionModel;\n component.enableHeaderControls = this._enableHeaderControls;\n });\n }\n this.configureCellRenderer(new ComponentCellRendererPortalRef(SelectCellRendererComponent, (component, rowData: RowData<Row>) => {\n component.row = rowData.row;\n component.selectionModel = selectionModel;\n }));\n }\n\n protected getDefaultHeaderText(): string {\n return '';\n }\n\n isRowSelectionEnabledByDefault(): boolean | undefined {\n return this.isRowSelectionExplicitlyEnabled();\n }\n\n selectOnRowClick(selectOnRowClick: boolean): this {\n // note we're using different method name as the selection column treats this\n // state as the default for all columns.\n return super.selectRowOnClick(selectOnRowClick);\n }\n\n enableHeaderControls(enable: boolean): this {\n this._enableHeaderControls = enable;\n return this;\n }\n\n selectRow(row: Row) {\n this.selectionModel.selectCommand.execute(row);\n }\n}\n\n\n"]}
@@ -5,7 +5,7 @@ import { DisposableComponent } from '../../disposable-component';
5
5
  import { ColumnModel } from '../column-model';
6
6
  import { EditSession } from '../edit-session';
7
7
  import { TableModel } from '../table-model';
8
- import { CELL_RENDERER_PORTAL, CELL_EDITOR_PORTAL } from '../cell-protal-ref';
8
+ import { CELL_RENDERER_PORTAL, CELL_EDITOR_PORTAL } from '../cell-portal-ref';
9
9
  var TableCellRendererComponent = /** @class */ (function (_super) {
10
10
  __extends(TableCellRendererComponent, _super);
11
11
  function TableCellRendererComponent() {
@@ -1 +1 @@
1
- {"version":3,"file":"table-cell-renderer.component.js","sourceRoot":"ng://@coolon/angular-ui-powerups/","sources":["lib/components/table/table-cell-renderer/table-cell-renderer.component.ts"],"names":[],"mappings":";AACA,OAAO,EAAE,SAAS,EAAE,WAAW,EAAE,KAAK,EAAoC,MAAM,eAAe,CAAC;AAChG,OAAO,EAA0B,OAAO,EAAE,GAAG,EAAmB,MAAM,gBAAgB,CAAC;AACvF,OAAO,EAAE,mBAAmB,EAAE,MAAM,4BAA4B,CAAC;AAEjE,OAAO,EAAE,WAAW,EAAW,MAAM,iBAAiB,CAAC;AACvD,OAAO,EAAE,WAAW,EAAE,MAAM,iBAAiB,CAAC;AAC9C,OAAO,EAAE,UAAU,EAAE,MAAM,gBAAgB,CAAC;AAC5C,OAAO,EAAE,oBAAoB,EAAE,kBAAkB,EAAE,MAAM,oBAAoB,CAAC;AAO9E;IAAqD,8CAAmB;IA8BtE;QAAA,YACE,iBAAO,SAIR;QAfD,uBAAiB,GAAG,mBAAmB,CAAC;QAGxC,cAAQ,GAAG,KAAK,CAAC;QAGjB,cAAQ,GAAG,KAAK,CAAC;QAMf,KAAI,CAAC,cAAc,GAAG,OAAO,CAAC,MAAM,CAAC;YACnC,KAAI,CAAC,UAAU,CAAC,gBAAgB,CAAC,KAAI,CAAC,GAAG,CAAC,CAAC;QAC7C,CAAC,CAAC,CAAC;;IACL,CAAC;IAED,6CAAQ,GAAR;QACQ,IAAA,0BAAkF,EAAhF,gBAAK,EAAE,oBAAO,EAAE,kBAAM,EAAE,cAAI,EAAE,gBAAK,EAAE,oBAAO,EAAE,sBAAkC,CAAC;QACzF,IAAI,CAAC,mBAAmB,GAAG,KAAK,CAAC,IAAI,CAAC,UAAU,CAAC,mBAAmB,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,0CAA0C;QACrI,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC;IAC/B,CAAC;IAED,oDAAe,GAAf;QACE,OAAO,CAAC,CAAC,IAAI,CAAC,WAAW,IAAI,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,eAAe,EAAE,CAAC;IAC/D,CAAC;IAED,uDAAkB,GAAlB,UAAmB,QAAa;QAC9B,IAAI,CAAC,MAAM,CAAC,kBAAkB,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAC;IACjD,CAAC;IAED,qDAAgB,GAAhB,UAAiB,QAAiE;QAAlF,iBAMC;QALC,IAAI,CAAC,MAAM,CAAC,gBAAgB,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAC;QAC7C,IAAI,IAAI,CAAC,mBAAmB,CAAC,KAAK,EAAE;YAClC,0DAA0D;YAC1D,UAAU,CAAC,cAAM,OAAA,KAAI,CAAC,iBAAiB,CAAC,QAAQ,CAAC,EAAhC,CAAgC,CAAC,CAAC;SACpD;IACH,CAAC;IAEO,sDAAiB,GAAzB,UAA0B,MAA+D;;QACvF,IAAI,MAAM,CAAC,YAAY,EAAE;YACvB,MAAM,CAAC,YAAY,EAAE,CAAC;SACvB;aAAM;YACL,IAAM,KAAK,GAAG,CAAC,MAAM,CAAC,YAAY,CAAC,IAAI,MAAM,CAAC,WAAW,CAAC,CAAoB,CAAC;YAC/E,MAAA,KAAK,aAAL,KAAK,uBAAL,KAAK,CAAE,YAAY,0CAAE,YAAY,GAAG;SACrC;IACH,CAAC;IAED,WAAW;IACX,gDAAW,GAAX,UAAY,OAAsB;QAChC,IAAI,CAAC,MAAM,CAAC,mBAAmB,CAAC,IAAI,CAAC,CAAC;IACxC,CAAC;IAED,sDAAiB,GAAjB;QACE,OAAO,IAAI,CAAC,oBAAoB,CAAC,CAAC;IACpC,CAAC;IAED,oDAAe,GAAf;QACE,OAAO,IAAI,CAAC,kBAAkB,CAAC,CAAC;IAClC,CAAC;IAED,+CAAU,GAAV;QACE,OAAO;YACL,GAAG,EAAE,IAAI,CAAC,GAAG;YACb,WAAW,EAAE,IAAI,CAAC,WAAW;YAC7B,cAAc,EAAE,IAAI,CAAC,cAAc;SACpC,CAAC;IACJ,CAAC;IApFD;QADC,KAAK,EAAE;;2DACC;IAGT;QADC,KAAK,EAAE;kCACA,WAAW;8DAAM;IAGzB;QADC,KAAK,EAAE;kCACK,WAAW;mEAAM;IAG9B;QADC,KAAK,EAAE;kCACI,UAAU;kEAAM;IAQ5B;QADC,WAAW,CAAC,OAAO,CAAC;;yEACmB;IAGxC;QADC,WAAW,CAAC,gBAAgB,CAAC;;gEACb;IAGjB;QADC,WAAW,CAAC,gBAAgB,CAAC;;gEACb;IA1BN,0BAA0B;QALtC,SAAS,CAAC;YACT,QAAQ,EAAE,yBAAyB;YACnC,yTAAmD;;SAEpD,CAAC;;OACW,0BAA0B,CAwFtC;IAAD,iCAAC;CAAA,AAxFD,CAAqD,mBAAmB,GAwFvE;SAxFY,0BAA0B","sourcesContent":["import { Portal } from '@angular/cdk/portal';\nimport { Component, HostBinding, Input, OnChanges, OnInit, SimpleChanges } from '@angular/core';\nimport { BooleanValueModelChain, Command, Dsl, HasFocusContext } from '@coolon/pectin';\nimport { DisposableComponent } from '../../disposable-component';\nimport { CellEditorComponent, CellListEditorComponent } from '../cell-editors';\nimport { ColumnModel, RowData } from '../column-model';\nimport { EditSession } from '../edit-session';\nimport { TableModel } from '../table-model';\nimport { CELL_RENDERER_PORTAL, CELL_EDITOR_PORTAL } from '../cell-protal-ref';\n\n@Component({\n selector: 'aup-table-cell-renderer',\n templateUrl: './table-cell-renderer.component.html',\n styleUrls: ['./table-cell-renderer.component.scss']\n})\nexport class TableCellRendererComponent<Row> extends DisposableComponent implements OnInit, OnChanges {\n\n @Input()\n row: Row;\n\n @Input()\n column: ColumnModel<Row>;\n\n @Input()\n editSession: EditSession<Row>;\n\n @Input()\n tableModel: TableModel<Row>;\n\n private editRowCommand: Command<void>;\n\n [CELL_RENDERER_PORTAL]: Portal<any>;\n [CELL_EDITOR_PORTAL]: Portal<any>;\n\n @HostBinding('class')\n defaultClassNames = 'aup-cell-renderer';\n\n @HostBinding('class.fillCell')\n fillCell = false;\n\n @HostBinding('class.padChild')\n padChild = false;\n\n private firstEditableColumn: BooleanValueModelChain;\n\n constructor() {\n super();\n this.editRowCommand = Command.create(() => {\n this.tableModel.startEditSession(this.row);\n });\n }\n\n ngOnInit(): void {\n const { chain, valueOf, before, when, after, observe, switchOn } = Dsl.disposeWith(this);\n this.firstEditableColumn = chain(this.tableModel.firstEditableColumn).equals(this.column); // this would break if the column changed.\n this.column.attachCell(this);\n }\n\n hasActiveEditor(): boolean {\n return !!this.editSession && !!this.column.hasEditorPortal();\n }\n\n initialiseRenderer(instance: any) {\n this.column.onRendererAttached(this, instance);\n }\n\n initialiseEditor(instance: CellEditorComponent<Row> | CellListEditorComponent<Row>) {\n this.column.onEditorAttached(this, instance);\n if (this.firstEditableColumn.value) {\n // @see https://github.com/angular/components/issues/12070\n setTimeout(() => this.tryAndFocusEditor(instance));\n }\n }\n\n private tryAndFocusEditor(editor: CellEditorComponent<Row> | CellListEditorComponent<Row>) {\n if (editor.requestFocus) {\n editor.requestFocus();\n } else {\n const model = (editor['valueModel'] || editor['listModel']) as HasFocusContext;\n model?.focusContext?.requestFocus();\n }\n }\n\n // @Trace()\n ngOnChanges(changes: SimpleChanges): void {\n this.column.updatePortalContent(this);\n }\n\n getRendererPortal() {\n return this[CELL_RENDERER_PORTAL];\n }\n\n getEditorPortal() {\n return this[CELL_EDITOR_PORTAL];\n }\n\n getRowData(): RowData<Row> {\n return {\n row: this.row,\n editSession: this.editSession,\n editRowCommand: this.editRowCommand\n };\n }\n}\n"]}
1
+ {"version":3,"file":"table-cell-renderer.component.js","sourceRoot":"ng://@coolon/angular-ui-powerups/","sources":["lib/components/table/table-cell-renderer/table-cell-renderer.component.ts"],"names":[],"mappings":"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","sourcesContent":["import { Portal } from '@angular/cdk/portal';\nimport { Component, HostBinding, Input, OnChanges, OnInit, SimpleChanges } from '@angular/core';\nimport { BooleanValueModelChain, Command, Dsl, HasFocusContext, Trace } from '@coolon/pectin';\nimport { DisposableComponent } from '../../disposable-component';\nimport { CellEditorComponent, CellListEditorComponent } from '../cell-editors';\nimport { ColumnModel, RowData } from '../column-model';\nimport { EditSession } from '../edit-session';\nimport { TableModel } from '../table-model';\nimport { CELL_RENDERER_PORTAL, CELL_EDITOR_PORTAL } from '../cell-portal-ref';\n\n@Component({\n selector: 'aup-table-cell-renderer',\n templateUrl: './table-cell-renderer.component.html',\n styleUrls: ['./table-cell-renderer.component.scss']\n})\nexport class TableCellRendererComponent<Row> extends DisposableComponent implements OnInit, OnChanges {\n\n @Input()\n row: Row;\n\n @Input()\n column: ColumnModel<Row>;\n\n @Input()\n editSession: EditSession<Row>;\n\n @Input()\n tableModel: TableModel<Row>;\n\n private editRowCommand: Command<void>;\n\n [CELL_RENDERER_PORTAL]: Portal<any>;\n [CELL_EDITOR_PORTAL]: Portal<any>;\n\n @HostBinding('class')\n defaultClassNames = 'aup-cell-renderer';\n\n @HostBinding('class.fillCell')\n fillCell = false;\n\n @HostBinding('class.padChild')\n padChild = false;\n\n private firstEditableColumn: BooleanValueModelChain;\n\n constructor() {\n super();\n this.editRowCommand = Command.create(() => {\n this.tableModel.startEditSession(this.row);\n });\n }\n\n ngOnInit(): void {\n const { chain, valueOf, before, when, after, observe, switchOn } = Dsl.disposeWith(this);\n this.firstEditableColumn = chain(this.tableModel.firstEditableColumn).equals(this.column); // this would break if the column changed.\n this.column.attachCell(this);\n }\n\n hasActiveEditor(): boolean {\n return !!this.editSession && !!this.column.hasEditorPortal();\n }\n\n initialiseRenderer(instance: any) {\n this.column.onRendererAttached(this, instance);\n }\n\n initialiseEditor(instance: CellEditorComponent<Row> | CellListEditorComponent<Row>) {\n this.column.onEditorAttached(this, instance);\n if (this.firstEditableColumn.value) {\n // @see https://github.com/angular/components/issues/12070\n setTimeout(() => this.tryAndFocusEditor(instance));\n }\n }\n\n private tryAndFocusEditor(editor: CellEditorComponent<Row> | CellListEditorComponent<Row>) {\n if (editor.requestFocus) {\n editor.requestFocus();\n } else {\n const model = (editor['valueModel'] || editor['listModel']) as HasFocusContext;\n model?.focusContext?.requestFocus();\n }\n }\n\n // @Trace()\n ngOnChanges(changes: SimpleChanges): void {\n this.column.updatePortalContent(this);\n }\n\n getRendererPortal() {\n return this[CELL_RENDERER_PORTAL];\n }\n\n getEditorPortal() {\n return this[CELL_EDITOR_PORTAL];\n }\n\n getRowData(): RowData<Row> {\n return {\n row: this.row,\n editSession: this.editSession,\n editRowCommand: this.editRowCommand\n };\n }\n}\n"]}
@@ -1,7 +1,7 @@
1
1
  import { __decorate, __metadata } from "tslib";
2
2
  import { Component, HostBinding, Input } from '@angular/core';
3
3
  import { ColumnModel } from '../column-model';
4
- import { HEADER_CELL_RENDERER_PORTAL } from '../cell-protal-ref';
4
+ import { HEADER_CELL_RENDERER_PORTAL } from '../cell-portal-ref';
5
5
  var TableHeaderCellRendererComponent = /** @class */ (function () {
6
6
  function TableHeaderCellRendererComponent() {
7
7
  this.defaultClassNames = 'aup-header-cell-renderer';
@@ -1 +1 @@
1
- {"version":3,"file":"table-header-cell-renderer.component.js","sourceRoot":"ng://@coolon/angular-ui-powerups/","sources":["lib/components/table/table-header-cell-renderer/table-header-cell-renderer.component.ts"],"names":[],"mappings":";AACA,OAAO,EAAE,SAAS,EAAE,WAAW,EAAE,KAAK,EAAU,MAAM,eAAe,CAAC;AACtE,OAAO,EAAE,WAAW,EAAE,MAAM,iBAAiB,CAAC;AAC9C,OAAO,EAAE,2BAA2B,EAAE,MAAM,oBAAoB,CAAC;AAOjE;IAUE;QAJA,sBAAiB,GAAG,0BAA0B,CAAC;IAK/C,CAAC;IAED,mDAAQ,GAAR;QACE,IAAI,CAAC,MAAM,CAAC,gBAAgB,CAAC,IAAI,CAAC,CAAC;IACrC,CAAC;IAED,WAAW;IACX,2DAAgB,GAAhB,UAAiB,QAAa;QAC5B,IAAI,CAAC,MAAM,CAAC,gBAAgB,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAC;IAC/C,CAAC;IAED,oDAAS,GAAT;QACE,OAAO,IAAI,CAAC,2BAA2B,CAAC,CAAC;IAC3C,CAAC;IArBD;QADC,KAAK,EAAE;kCACA,WAAW;oEAAM;IAGzB;QADC,WAAW,CAAC,OAAO,CAAC;;+EAC0B;IANpC,gCAAgC;QAL5C,SAAS,CAAC;YACT,QAAQ,EAAE,gCAAgC;YAC1C,8HAA0D;;SAE3D,CAAC;;OACW,gCAAgC,CAyB5C;IAAD,uCAAC;CAAA,AAzBD,IAyBC;SAzBY,gCAAgC","sourcesContent":["import { Portal } from '@angular/cdk/portal';\nimport { Component, HostBinding, Input, OnInit } from '@angular/core';\nimport { ColumnModel } from '../column-model';\nimport { HEADER_CELL_RENDERER_PORTAL } from '../cell-protal-ref';\n\n@Component({\n selector: 'aup-table-header-cell-renderer',\n templateUrl: './table-header-cell-renderer.component.html',\n styleUrls: ['./table-header-cell-renderer.component.scss']\n})\nexport class TableHeaderCellRendererComponent implements OnInit {\n\n @Input()\n column: ColumnModel<any>;\n\n @HostBinding('class')\n defaultClassNames = 'aup-header-cell-renderer';\n\n [HEADER_CELL_RENDERER_PORTAL]: Portal<any>;\n\n constructor() {\n }\n\n ngOnInit() {\n this.column.attachHeaderCell(this);\n }\n\n // @Trace()\n initialiseHeader(instance: any) {\n this.column.onHeaderAttached(this, instance);\n }\n\n getPortal() {\n return this[HEADER_CELL_RENDERER_PORTAL];\n }\n}\n"]}
1
+ {"version":3,"file":"table-header-cell-renderer.component.js","sourceRoot":"ng://@coolon/angular-ui-powerups/","sources":["lib/components/table/table-header-cell-renderer/table-header-cell-renderer.component.ts"],"names":[],"mappings":";AACA,OAAO,EAAE,SAAS,EAAE,WAAW,EAAE,KAAK,EAAU,MAAM,eAAe,CAAC;AACtE,OAAO,EAAE,WAAW,EAAE,MAAM,iBAAiB,CAAC;AAC9C,OAAO,EAAE,2BAA2B,EAAE,MAAM,oBAAoB,CAAC;AAOjE;IAUE;QAJA,sBAAiB,GAAG,0BAA0B,CAAC;IAK/C,CAAC;IAED,mDAAQ,GAAR;QACE,IAAI,CAAC,MAAM,CAAC,gBAAgB,CAAC,IAAI,CAAC,CAAC;IACrC,CAAC;IAED,WAAW;IACX,2DAAgB,GAAhB,UAAiB,QAAa;QAC5B,IAAI,CAAC,MAAM,CAAC,gBAAgB,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAC;IAC/C,CAAC;IAED,oDAAS,GAAT;QACE,OAAO,IAAI,CAAC,2BAA2B,CAAC,CAAC;IAC3C,CAAC;IArBD;QADC,KAAK,EAAE;kCACA,WAAW;oEAAM;IAGzB;QADC,WAAW,CAAC,OAAO,CAAC;;+EAC0B;IANpC,gCAAgC;QAL5C,SAAS,CAAC;YACT,QAAQ,EAAE,gCAAgC;YAC1C,8HAA0D;;SAE3D,CAAC;;OACW,gCAAgC,CAyB5C;IAAD,uCAAC;CAAA,AAzBD,IAyBC;SAzBY,gCAAgC","sourcesContent":["import { Portal } from '@angular/cdk/portal';\nimport { Component, HostBinding, Input, OnInit } from '@angular/core';\nimport { ColumnModel } from '../column-model';\nimport { HEADER_CELL_RENDERER_PORTAL } from '../cell-portal-ref';\n\n@Component({\n selector: 'aup-table-header-cell-renderer',\n templateUrl: './table-header-cell-renderer.component.html',\n styleUrls: ['./table-header-cell-renderer.component.scss']\n})\nexport class TableHeaderCellRendererComponent implements OnInit {\n\n @Input()\n column: ColumnModel<any>;\n\n @HostBinding('class')\n defaultClassNames = 'aup-header-cell-renderer';\n\n [HEADER_CELL_RENDERER_PORTAL]: Portal<any>;\n\n constructor() {\n }\n\n ngOnInit() {\n this.column.attachHeaderCell(this);\n }\n\n // @Trace()\n initialiseHeader(instance: any) {\n this.column.onHeaderAttached(this, instance);\n }\n\n getPortal() {\n return this[HEADER_CELL_RENDERER_PORTAL];\n }\n}\n"]}