button-radio-group.directive.js 6.0 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107
  1. /**
  2. * @fileoverview added by tsickle
  3. * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
  4. */
  5. import { ChangeDetectorRef, Directive, forwardRef } from '@angular/core';
  6. import { NG_VALUE_ACCESSOR } from '@angular/forms';
  7. /** @type {?} */
  8. export var RADIO_CONTROL_VALUE_ACCESSOR = {
  9. provide: NG_VALUE_ACCESSOR,
  10. /* tslint:disable-next-line: no-use-before-declare */
  11. useExisting: forwardRef((/**
  12. * @return {?}
  13. */
  14. function () { return ButtonRadioGroupDirective; })),
  15. multi: true
  16. };
  17. /**
  18. * A group of radio buttons.
  19. * A value of a selected button is bound to a variable specified via ngModel.
  20. */
  21. var ButtonRadioGroupDirective = /** @class */ (function () {
  22. function ButtonRadioGroupDirective(cdr) {
  23. this.cdr = cdr;
  24. this.onChange = Function.prototype;
  25. this.onTouched = Function.prototype;
  26. }
  27. Object.defineProperty(ButtonRadioGroupDirective.prototype, "value", {
  28. get: /**
  29. * @return {?}
  30. */
  31. function () {
  32. return this._value;
  33. },
  34. set: /**
  35. * @param {?} value
  36. * @return {?}
  37. */
  38. function (value) {
  39. this._value = value;
  40. },
  41. enumerable: true,
  42. configurable: true
  43. });
  44. /**
  45. * @param {?} value
  46. * @return {?}
  47. */
  48. ButtonRadioGroupDirective.prototype.writeValue = /**
  49. * @param {?} value
  50. * @return {?}
  51. */
  52. function (value) {
  53. this._value = value;
  54. this.cdr.markForCheck();
  55. };
  56. /**
  57. * @param {?} fn
  58. * @return {?}
  59. */
  60. ButtonRadioGroupDirective.prototype.registerOnChange = /**
  61. * @param {?} fn
  62. * @return {?}
  63. */
  64. function (fn) {
  65. this.onChange = fn;
  66. };
  67. /**
  68. * @param {?} fn
  69. * @return {?}
  70. */
  71. ButtonRadioGroupDirective.prototype.registerOnTouched = /**
  72. * @param {?} fn
  73. * @return {?}
  74. */
  75. function (fn) {
  76. this.onTouched = fn;
  77. };
  78. ButtonRadioGroupDirective.decorators = [
  79. { type: Directive, args: [{
  80. selector: '[btnRadioGroup]',
  81. providers: [RADIO_CONTROL_VALUE_ACCESSOR]
  82. },] }
  83. ];
  84. /** @nocollapse */
  85. ButtonRadioGroupDirective.ctorParameters = function () { return [
  86. { type: ChangeDetectorRef }
  87. ]; };
  88. return ButtonRadioGroupDirective;
  89. }());
  90. export { ButtonRadioGroupDirective };
  91. if (false) {
  92. /** @type {?} */
  93. ButtonRadioGroupDirective.prototype.onChange;
  94. /** @type {?} */
  95. ButtonRadioGroupDirective.prototype.onTouched;
  96. /**
  97. * @type {?}
  98. * @private
  99. */
  100. ButtonRadioGroupDirective.prototype._value;
  101. /**
  102. * @type {?}
  103. * @private
  104. */
  105. ButtonRadioGroupDirective.prototype.cdr;
  106. }
  107. //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYnV0dG9uLXJhZGlvLWdyb3VwLmRpcmVjdGl2ZS5qcyIsInNvdXJjZVJvb3QiOiJuZzovL25neC1ib290c3RyYXAvYnV0dG9ucy8iLCJzb3VyY2VzIjpbImJ1dHRvbi1yYWRpby1ncm91cC5kaXJlY3RpdmUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7OztBQUFBLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxTQUFTLEVBQUUsVUFBVSxFQUFZLE1BQU0sZUFBZSxDQUFDO0FBQ25GLE9BQU8sRUFBd0IsaUJBQWlCLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQzs7QUFFekUsTUFBTSxLQUFPLDRCQUE0QixHQUFhO0lBQ3BELE9BQU8sRUFBRSxpQkFBaUI7O0lBRTFCLFdBQVcsRUFBRSxVQUFVOzs7SUFBQyxjQUFNLE9BQUEseUJBQXlCLEVBQXpCLENBQXlCLEVBQUM7SUFDeEQsS0FBSyxFQUFFLElBQUk7Q0FDWjs7Ozs7QUFNRDtJQWlCRSxtQ0FBb0IsR0FBc0I7UUFBdEIsUUFBRyxHQUFILEdBQUcsQ0FBbUI7UUFaMUMsYUFBUSxHQUFHLFFBQVEsQ0FBQyxTQUFTLENBQUM7UUFDOUIsY0FBUyxHQUFHLFFBQVEsQ0FBQyxTQUFTLENBQUM7SUFXYyxDQUFDO0lBVDlDLHNCQUFJLDRDQUFLOzs7O1FBQVQ7WUFDRSxPQUFPLElBQUksQ0FBQyxNQUFNLENBQUM7UUFDckIsQ0FBQzs7Ozs7UUFDRCxVQUFVLEtBQW9CO1lBQzVCLElBQUksQ0FBQyxNQUFNLEdBQUcsS0FBSyxDQUFDO1FBQ3RCLENBQUM7OztPQUhBOzs7OztJQVNELDhDQUFVOzs7O0lBQVYsVUFBVyxLQUFvQjtRQUM3QixJQUFJLENBQUMsTUFBTSxHQUFHLEtBQUssQ0FBQztRQUNwQixJQUFJLENBQUMsR0FBRyxDQUFDLFlBQVksRUFBRSxDQUFDO0lBQzFCLENBQUM7Ozs7O0lBRUQsb0RBQWdCOzs7O0lBQWhCLFVBQWlCLEVBQVk7UUFDM0IsSUFBSSxDQUFDLFFBQVEsR0FBRyxFQUFFLENBQUM7SUFDckIsQ0FBQzs7Ozs7SUFFRCxxREFBaUI7Ozs7SUFBakIsVUFBa0IsRUFBWTtRQUM1QixJQUFJLENBQUMsU0FBUyxHQUFHLEVBQUUsQ0FBQztJQUN0QixDQUFDOztnQkE5QkYsU0FBUyxTQUFDO29CQUNULFFBQVEsRUFBRSxpQkFBaUI7b0JBQzNCLFNBQVMsRUFBRSxDQUFDLDRCQUE0QixDQUFDO2lCQUMxQzs7OztnQkFqQlEsaUJBQWlCOztJQTZDMUIsZ0NBQUM7Q0FBQSxBQS9CRCxJQStCQztTQTNCWSx5QkFBeUI7OztJQUNwQyw2Q0FBOEI7O0lBQzlCLDhDQUErQjs7Ozs7SUFTL0IsMkNBQThCOzs7OztJQUVsQix3Q0FBOEIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDaGFuZ2VEZXRlY3RvclJlZiwgRGlyZWN0aXZlLCBmb3J3YXJkUmVmLCBQcm92aWRlciB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQ29udHJvbFZhbHVlQWNjZXNzb3IsIE5HX1ZBTFVFX0FDQ0VTU09SIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xuXG5leHBvcnQgY29uc3QgUkFESU9fQ09OVFJPTF9WQUxVRV9BQ0NFU1NPUjogUHJvdmlkZXIgPSB7XG4gIHByb3ZpZGU6IE5HX1ZBTFVFX0FDQ0VTU09SLFxuICAvKiB0c2xpbnQ6ZGlzYWJsZS1uZXh0LWxpbmU6IG5vLXVzZS1iZWZvcmUtZGVjbGFyZSAqL1xuICB1c2VFeGlzdGluZzogZm9yd2FyZFJlZigoKSA9PiBCdXR0b25SYWRpb0dyb3VwRGlyZWN0aXZlKSxcbiAgbXVsdGk6IHRydWVcbn07XG5cbi8qKlxuICogQSBncm91cCBvZiByYWRpbyBidXR0b25zLlxuICogQSB2YWx1ZSBvZiBhIHNlbGVjdGVkIGJ1dHRvbiBpcyBib3VuZCB0byBhIHZhcmlhYmxlIHNwZWNpZmllZCB2aWEgbmdNb2RlbC5cbiAqL1xuQERpcmVjdGl2ZSh7XG4gIHNlbGVjdG9yOiAnW2J0blJhZGlvR3JvdXBdJyxcbiAgcHJvdmlkZXJzOiBbUkFESU9fQ09OVFJPTF9WQUxVRV9BQ0NFU1NPUl1cbn0pXG5leHBvcnQgY2xhc3MgQnV0dG9uUmFkaW9Hcm91cERpcmVjdGl2ZSBpbXBsZW1lbnRzIENvbnRyb2xWYWx1ZUFjY2Vzc29yIHtcbiAgb25DaGFuZ2UgPSBGdW5jdGlvbi5wcm90b3R5cGU7XG4gIG9uVG91Y2hlZCA9IEZ1bmN0aW9uLnByb3RvdHlwZTtcblxuICBnZXQgdmFsdWUoKSB7XG4gICAgcmV0dXJuIHRoaXMuX3ZhbHVlO1xuICB9XG4gIHNldCB2YWx1ZSh2YWx1ZTogc3RyaW5nIHwgbnVsbCkge1xuICAgIHRoaXMuX3ZhbHVlID0gdmFsdWU7XG4gIH1cblxuICBwcml2YXRlIF92YWx1ZTogc3RyaW5nIHwgbnVsbDtcblxuICBjb25zdHJ1Y3Rvcihwcml2YXRlIGNkcjogQ2hhbmdlRGV0ZWN0b3JSZWYpIHt9XG5cbiAgd3JpdGVWYWx1ZSh2YWx1ZTogc3RyaW5nIHwgbnVsbCk6IHZvaWQge1xuICAgIHRoaXMuX3ZhbHVlID0gdmFsdWU7XG4gICAgdGhpcy5jZHIubWFya0ZvckNoZWNrKCk7XG4gIH1cblxuICByZWdpc3Rlck9uQ2hhbmdlKGZuOiAoKSA9PiB7fSk6IHZvaWQge1xuICAgIHRoaXMub25DaGFuZ2UgPSBmbjtcbiAgfVxuXG4gIHJlZ2lzdGVyT25Ub3VjaGVkKGZuOiAoKSA9PiB7fSk6IHZvaWQge1xuICAgIHRoaXMub25Ub3VjaGVkID0gZm47XG4gIH1cbn1cbiJdfQ==