'use strict'; System.register(['angular', 'jquery'], function (_export, _context) { "use strict"; var angular, $, Drop; return { setters: [function (_angular) { angular = _angular.default; }, function (_jquery) { $ = _jquery.default; }], execute: function () { System.config({ paths: { tether: System.getConfig().baseURL + "plugins/alexanderzobnin-zabbix-app/vendor/npm/tether.min.js" } }); Drop = void 0; System.amdRequire(["plugins/alexanderzobnin-zabbix-app/vendor/npm/drop.min.js"], function (drop) { Drop = drop; }); /** @ngInject */ angular.module('grafana.directives').directive('ackTooltip', function ($sanitize, $compile) { var buttonTemplate = ''; return { scope: { ack: "=", trigger: "=", onAck: "=", context: "=" }, link: function link(scope, element) { var acknowledges = scope.ack; var $button = $(buttonTemplate); $button.appendTo(element); $button.click(function () { var tooltip = '
'; if (acknowledges && acknowledges.length) { tooltip += '' + '' + '' + '' + ''; var _iteratorNormalCompletion = true; var _didIteratorError = false; var _iteratorError = undefined; try { for (var _iterator = acknowledges[Symbol.iterator](), _step; !(_iteratorNormalCompletion = (_step = _iterator.next()).done); _iteratorNormalCompletion = true) { var ack = _step.value; tooltip += '' + '' + ''; } } catch (err) { _didIteratorError = true; _iteratorError = err; } finally { try { if (!_iteratorNormalCompletion && _iterator.return) { _iterator.return(); } } finally { if (_didIteratorError) { throw _iteratorError; } } } tooltip += '
TimeUserComments
' + ack.time + '' + ack.user + '' + ack.message + '
'; } else { tooltip += 'Add acknowledge'; } var addAckButtonTemplate = '
' + '
'; tooltip += addAckButtonTemplate; tooltip += '
'; var drop = new Drop({ target: element[0], content: tooltip, position: "bottom left", classes: 'drop-popover ack-tooltip', openOn: 'hover', hoverCloseDelay: 500, tetherOptions: { constraints: [{ to: 'window', pin: true, attachment: "both" }] } }); drop.open(); drop.on('close', closeDrop); $('#add-acknowledge-btn').on('click', onAddAckButtonClick); function onAddAckButtonClick() { var inputTemplate = '
' + '' + '' + '
'; var $input = $(inputTemplate); var $addAckButton = $('.ack-tooltip .ack-add-button'); $addAckButton.replaceWith($input); $('.ack-tooltip #cancel-ack-button').on('click', onAckCancelButtonClick); $('.ack-tooltip #send-ack-button').on('click', onAckSendlButtonClick); } function onAckCancelButtonClick() { $('.ack-tooltip .ack-input-group').replaceWith(addAckButtonTemplate); $('#add-acknowledge-btn').on('click', onAddAckButtonClick); } function onAckSendlButtonClick() { var message = $('.ack-tooltip #ack-message')[0].value; var onAck = scope.onAck.bind(scope.context); onAck(scope.trigger, message).then(function () { closeDrop(); }); } function closeDrop() { setTimeout(function () { try { drop.destroy(); } catch (err) { console.log('drop.destroy() error: ', err.message); } }); } }); $compile(element.contents())(scope); } }; }); } }; }); //# sourceMappingURL=ack-tooltip.directive.js.map