contextMenu.item.directive.js 7.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123
  1. /**
  2. * @fileoverview added by tsickle
  3. * @suppress {checkTypes,constantProperty,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
  4. */
  5. import { Directive, ElementRef, EventEmitter, Input, Output, TemplateRef } from '@angular/core';
  6. var ContextMenuItemDirective = /** @class */ (function () {
  7. function ContextMenuItemDirective(template, elementRef) {
  8. this.template = template;
  9. this.elementRef = elementRef;
  10. this.divider = false;
  11. this.enabled = true;
  12. this.passive = false;
  13. this.visible = true;
  14. this.execute = new EventEmitter();
  15. this.isActive = false;
  16. }
  17. Object.defineProperty(ContextMenuItemDirective.prototype, "disabled", {
  18. get: /**
  19. * @return {?}
  20. */
  21. function () {
  22. return this.passive ||
  23. this.divider ||
  24. !this.evaluateIfFunction(this.enabled, this.currentItem);
  25. },
  26. enumerable: true,
  27. configurable: true
  28. });
  29. /**
  30. * @param {?} value
  31. * @param {?} item
  32. * @return {?}
  33. */
  34. ContextMenuItemDirective.prototype.evaluateIfFunction = /**
  35. * @param {?} value
  36. * @param {?} item
  37. * @return {?}
  38. */
  39. function (value, item) {
  40. if (value instanceof Function) {
  41. return value(item);
  42. }
  43. return value;
  44. };
  45. /**
  46. * @return {?}
  47. */
  48. ContextMenuItemDirective.prototype.setActiveStyles = /**
  49. * @return {?}
  50. */
  51. function () {
  52. this.isActive = true;
  53. };
  54. /**
  55. * @return {?}
  56. */
  57. ContextMenuItemDirective.prototype.setInactiveStyles = /**
  58. * @return {?}
  59. */
  60. function () {
  61. this.isActive = false;
  62. };
  63. /**
  64. * @param {?} item
  65. * @param {?=} $event
  66. * @return {?}
  67. */
  68. ContextMenuItemDirective.prototype.triggerExecute = /**
  69. * @param {?} item
  70. * @param {?=} $event
  71. * @return {?}
  72. */
  73. function (item, $event) {
  74. if (!this.evaluateIfFunction(this.enabled, item)) {
  75. return;
  76. }
  77. this.execute.emit({ event: $event, item: item });
  78. };
  79. ContextMenuItemDirective.decorators = [
  80. { type: Directive, args: [{
  81. /* tslint:disable:directive-selector-type */
  82. selector: '[contextMenuItem]',
  83. },] }
  84. ];
  85. /** @nocollapse */
  86. ContextMenuItemDirective.ctorParameters = function () { return [
  87. { type: TemplateRef },
  88. { type: ElementRef }
  89. ]; };
  90. ContextMenuItemDirective.propDecorators = {
  91. subMenu: [{ type: Input }],
  92. divider: [{ type: Input }],
  93. enabled: [{ type: Input }],
  94. passive: [{ type: Input }],
  95. visible: [{ type: Input }],
  96. execute: [{ type: Output }]
  97. };
  98. return ContextMenuItemDirective;
  99. }());
  100. export { ContextMenuItemDirective };
  101. if (false) {
  102. /** @type {?} */
  103. ContextMenuItemDirective.prototype.subMenu;
  104. /** @type {?} */
  105. ContextMenuItemDirective.prototype.divider;
  106. /** @type {?} */
  107. ContextMenuItemDirective.prototype.enabled;
  108. /** @type {?} */
  109. ContextMenuItemDirective.prototype.passive;
  110. /** @type {?} */
  111. ContextMenuItemDirective.prototype.visible;
  112. /** @type {?} */
  113. ContextMenuItemDirective.prototype.execute;
  114. /** @type {?} */
  115. ContextMenuItemDirective.prototype.currentItem;
  116. /** @type {?} */
  117. ContextMenuItemDirective.prototype.isActive;
  118. /** @type {?} */
  119. ContextMenuItemDirective.prototype.template;
  120. /** @type {?} */
  121. ContextMenuItemDirective.prototype.elementRef;
  122. }
  123. //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29udGV4dE1lbnUuaXRlbS5kaXJlY3RpdmUuanMiLCJzb3VyY2VSb290Ijoibmc6Ly9uZ3gtY29udGV4dG1lbnUvIiwic291cmNlcyI6WyJsaWIvY29udGV4dE1lbnUuaXRlbS5kaXJlY3RpdmUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7OztBQUNBLE9BQU8sRUFBRSxTQUFTLEVBQUUsVUFBVSxFQUFFLFlBQVksRUFBRSxLQUFLLEVBQUUsTUFBTSxFQUFFLFdBQVcsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUVoRztJQXFCRSxrQ0FBbUIsUUFBb0MsRUFBUyxVQUFzQjtRQUFuRSxhQUFRLEdBQVIsUUFBUSxDQUE0QjtRQUFTLGVBQVUsR0FBVixVQUFVLENBQVk7UUFkdEUsWUFBTyxHQUFHLEtBQUssQ0FBQztRQUNoQixZQUFPLEdBQXVDLElBQUksQ0FBQztRQUNuRCxZQUFPLEdBQUcsS0FBSyxDQUFDO1FBQ2hCLFlBQU8sR0FBdUMsSUFBSSxDQUFDO1FBQ2xELFlBQU8sR0FBOEMsSUFBSSxZQUFZLEVBQUUsQ0FBQztRQUdsRixhQUFRLEdBQUcsS0FBSyxDQUFDO0lBT2tFLENBQUM7SUFOM0Ysc0JBQVcsOENBQVE7Ozs7UUFBbkI7WUFDRSxPQUFPLElBQUksQ0FBQyxPQUFPO2dCQUNqQixJQUFJLENBQUMsT0FBTztnQkFDWixDQUFDLElBQUksQ0FBQyxrQkFBa0IsQ0FBQyxJQUFJLENBQUMsT0FBTyxFQUFFLElBQUksQ0FBQyxXQUFXLENBQUMsQ0FBQztRQUM3RCxDQUFDOzs7T0FBQTs7Ozs7O0lBSU0scURBQWtCOzs7OztJQUF6QixVQUEwQixLQUFVLEVBQUUsSUFBUztRQUM3QyxJQUFJLEtBQUssWUFBWSxRQUFRLEVBQUU7WUFDN0IsT0FBTyxLQUFLLENBQUMsSUFBSSxDQUFDLENBQUM7U0FDcEI7UUFDRCxPQUFPLEtBQUssQ0FBQztJQUNmLENBQUM7Ozs7SUFFTSxrREFBZTs7O0lBQXRCO1FBQ0UsSUFBSSxDQUFDLFFBQVEsR0FBRyxJQUFJLENBQUM7SUFDdkIsQ0FBQzs7OztJQUNNLG9EQUFpQjs7O0lBQXhCO1FBQ0UsSUFBSSxDQUFDLFFBQVEsR0FBRyxLQUFLLENBQUM7SUFDeEIsQ0FBQzs7Ozs7O0lBRU0saURBQWM7Ozs7O0lBQXJCLFVBQXNCLElBQVMsRUFBRSxNQUFtQztRQUNsRSxJQUFJLENBQUMsSUFBSSxDQUFDLGtCQUFrQixDQUFDLElBQUksQ0FBQyxPQUFPLEVBQUUsSUFBSSxDQUFDLEVBQUU7WUFDaEQsT0FBTztTQUNSO1FBQ0QsSUFBSSxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsRUFBRSxLQUFLLEVBQUUsTUFBTSxFQUFFLElBQUksTUFBQSxFQUFFLENBQUMsQ0FBQztJQUM3QyxDQUFDOztnQkExQ0YsU0FBUyxTQUFDOztvQkFFVCxRQUFRLEVBQUUsbUJBQW1CO2lCQUU5Qjs7OztnQkFONEQsV0FBVztnQkFBcEQsVUFBVTs7OzBCQVEzQixLQUFLOzBCQUNMLEtBQUs7MEJBQ0wsS0FBSzswQkFDTCxLQUFLOzBCQUNMLEtBQUs7MEJBQ0wsTUFBTTs7SUFnQ1QsK0JBQUM7Q0FBQSxBQTNDRCxJQTJDQztTQXRDWSx3QkFBd0I7OztJQUNuQywyQ0FBNkI7O0lBQzdCLDJDQUFnQzs7SUFDaEMsMkNBQW1FOztJQUNuRSwyQ0FBZ0M7O0lBQ2hDLDJDQUFtRTs7SUFDbkUsMkNBQXlGOztJQUV6RiwrQ0FBd0I7O0lBQ3hCLDRDQUF3Qjs7SUFPWiw0Q0FBMkM7O0lBQUUsOENBQTZCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSGlnaGxpZ2h0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2Nkay9hMTF5JztcbmltcG9ydCB7IERpcmVjdGl2ZSwgRWxlbWVudFJlZiwgRXZlbnRFbWl0dGVyLCBJbnB1dCwgT3V0cHV0LCBUZW1wbGF0ZVJlZiB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuXG5ARGlyZWN0aXZlKHtcbiAgLyogdHNsaW50OmRpc2FibGU6ZGlyZWN0aXZlLXNlbGVjdG9yLXR5cGUgKi9cbiAgc2VsZWN0b3I6ICdbY29udGV4dE1lbnVJdGVtXScsXG4gIC8qIHRzbGludDplbmFibGU6ZGlyZWN0aXZlLXNlbGVjdG9yLXR5cGUgKi9cbn0pXG5leHBvcnQgY2xhc3MgQ29udGV4dE1lbnVJdGVtRGlyZWN0aXZlIGltcGxlbWVudHMgSGlnaGxpZ2h0YWJsZSB7XG4gIEBJbnB1dCgpIHB1YmxpYyBzdWJNZW51OiBhbnk7XG4gIEBJbnB1dCgpIHB1YmxpYyBkaXZpZGVyID0gZmFsc2U7XG4gIEBJbnB1dCgpIHB1YmxpYyBlbmFibGVkOiBib29sZWFuIHwgKChpdGVtOiBhbnkpID0+IGJvb2xlYW4pID0gdHJ1ZTtcbiAgQElucHV0KCkgcHVibGljIHBhc3NpdmUgPSBmYWxzZTtcbiAgQElucHV0KCkgcHVibGljIHZpc2libGU6IGJvb2xlYW4gfCAoKGl0ZW06IGFueSkgPT4gYm9vbGVhbikgPSB0cnVlO1xuICBAT3V0cHV0KCkgcHVibGljIGV4ZWN1dGU6IEV2ZW50RW1pdHRlcjx7IGV2ZW50OiBFdmVudCwgaXRlbTogYW55IH0+ID0gbmV3IEV2ZW50RW1pdHRlcigpO1xuXG4gIHB1YmxpYyBjdXJyZW50SXRlbTogYW55O1xuICBwdWJsaWMgaXNBY3RpdmUgPSBmYWxzZTtcbiAgcHVibGljIGdldCBkaXNhYmxlZCgpIHtcbiAgICByZXR1cm4gdGhpcy5wYXNzaXZlIHx8XG4gICAgICB0aGlzLmRpdmlkZXIgfHxcbiAgICAgICF0aGlzLmV2YWx1YXRlSWZGdW5jdGlvbih0aGlzLmVuYWJsZWQsIHRoaXMuY3VycmVudEl0ZW0pO1xuICB9XG5cbiAgY29uc3RydWN0b3IocHVibGljIHRlbXBsYXRlOiBUZW1wbGF0ZVJlZjx7IGl0ZW06IGFueSB9PiwgcHVibGljIGVsZW1lbnRSZWY6IEVsZW1lbnRSZWYpIHsgfVxuXG4gIHB1YmxpYyBldmFsdWF0ZUlmRnVuY3Rpb24odmFsdWU6IGFueSwgaXRlbTogYW55KTogYW55IHtcbiAgICBpZiAodmFsdWUgaW5zdGFuY2VvZiBGdW5jdGlvbikge1xuICAgICAgcmV0dXJuIHZhbHVlKGl0ZW0pO1xuICAgIH1cbiAgICByZXR1cm4gdmFsdWU7XG4gIH1cblxuICBwdWJsaWMgc2V0QWN0aXZlU3R5bGVzKCk6IHZvaWQge1xuICAgIHRoaXMuaXNBY3RpdmUgPSB0cnVlO1xuICB9XG4gIHB1YmxpYyBzZXRJbmFjdGl2ZVN0eWxlcygpOiB2b2lkIHtcbiAgICB0aGlzLmlzQWN0aXZlID0gZmFsc2U7XG4gIH1cblxuICBwdWJsaWMgdHJpZ2dlckV4ZWN1dGUoaXRlbTogYW55LCAkZXZlbnQ/OiBNb3VzZUV2ZW50IHwgS2V5Ym9hcmRFdmVudCk6IHZvaWQge1xuICAgIGlmICghdGhpcy5ldmFsdWF0ZUlmRnVuY3Rpb24odGhpcy5lbmFibGVkLCBpdGVtKSkge1xuICAgICAgcmV0dXJuO1xuICAgIH1cbiAgICB0aGlzLmV4ZWN1dGUuZW1pdCh7IGV2ZW50OiAkZXZlbnQsIGl0ZW0gfSk7XG4gIH1cbn1cbiJdfQ==