@finqu/cool 1.1.9 → 1.2.3
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.
- package/dist/css/cool-grid.css +2 -2
- package/dist/css/cool-grid.css.map +3 -3
- package/dist/css/cool-grid.min.css +1 -1
- package/dist/css/cool-grid.min.css.map +1 -1
- package/dist/css/cool-reboot.css +6 -2
- package/dist/css/cool-reboot.css.map +11 -9
- package/dist/css/cool-reboot.min.css +2 -2
- package/dist/css/cool-reboot.min.css.map +1 -1
- package/dist/css/cool.css +2848 -771
- package/dist/css/cool.css.map +33 -29
- package/dist/css/cool.min.css +2 -2
- package/dist/css/cool.min.css.map +1 -1
- package/dist/js/cool.bundle.js +659 -185
- package/dist/js/cool.bundle.js.map +1 -1
- package/dist/js/cool.bundle.min.js +2 -2
- package/dist/js/cool.bundle.min.js.map +1 -1
- package/dist/js/cool.esm.js +659 -185
- package/dist/js/cool.esm.js.map +1 -1
- package/dist/js/cool.esm.min.js +2 -2
- package/dist/js/cool.esm.min.js.map +1 -1
- package/dist/js/cool.js +659 -185
- package/dist/js/cool.js.map +1 -1
- package/dist/js/cool.min.js +2 -2
- package/dist/js/cool.min.js.map +1 -1
- package/html/dropdown-test.html +200 -0
- package/html/index.html +1418 -101
- package/js/dist/collapse.js +1043 -629
- package/js/dist/collapse.js.map +1 -1
- package/js/dist/common.js +876 -506
- package/js/dist/common.js.map +1 -1
- package/js/dist/dropdown.js +3451 -1867
- package/js/dist/dropdown.js.map +1 -1
- package/js/dist/popover.js +273 -58
- package/js/dist/popover.js.map +1 -1
- package/js/dist/sectiontabs.js +273 -58
- package/js/dist/sectiontabs.js.map +1 -1
- package/js/dist/select.js +10031 -3660
- package/js/dist/select.js.map +1 -1
- package/js/dist/tooltip.js +1703 -1434
- package/js/dist/tooltip.js.map +1 -1
- package/js/src/abstract-ui-component.js +16 -5
- package/js/src/collapse.js +24 -10
- package/js/src/common.js +26 -0
- package/js/src/dialog.js +12 -18
- package/js/src/dropdown.js +79 -7
- package/js/src/popover.js +2 -2
- package/js/src/section-tabs.js +2 -2
- package/js/src/select.js +582 -181
- package/js/src/toast.js +2 -2
- package/js/src/tooltip.js +7 -2
- package/js/src/util/index.js +10 -0
- package/package.json +21 -21
- package/scss/_alert.scss +79 -82
- package/scss/_badge.scss +16 -22
- package/scss/_button-group.scss +4 -0
- package/scss/_buttons.scss +3 -3
- package/scss/_custom-forms.scss +14 -12
- package/scss/_dialog.scss +17 -5
- package/scss/_dropdown.scss +1 -4
- package/scss/_frame.scss +24 -3
- package/scss/_functions.scss +10 -0
- package/scss/_images.scss +52 -2
- package/scss/_input-group.scss +12 -6
- package/scss/_mixins.scss +1 -0
- package/scss/_navbar.scss +40 -0
- package/scss/_notification.scss +13 -0
- package/scss/_reboot.scss +4 -0
- package/scss/_section.scss +28 -2
- package/scss/_select.scss +10 -1
- package/scss/_tables.scss +2 -1
- package/scss/_type.scss +37 -6
- package/scss/_variables.scss +6 -5
- package/scss/cool-grid.scss +1 -1
- package/scss/cool-reboot.scss +1 -1
- package/scss/cool.scss +3 -2
- package/scss/mixins/_alert-variant.scss +13 -28
- package/scss/mixins/_badge-variant.scss +27 -5
- package/scss/mixins/_notification-variant.scss +7 -0
- package/scss/mixins/_text-truncate.scss +77 -4
- package/scss/utilities/_collapse.scss +2 -2
- package/scss/utilities/_cursor.scss +14 -2
- package/scss/utilities/_text.scss +4 -2
package/js/dist/tooltip.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tooltip.js","sources":["../src/util/index.js","../src/abstract-ui-component.js","../src/tooltip.js"],"sourcesContent":["import 'jquery';\n\nconst debounce = function (func, wait, immediate) {\n\n\tlet timeout;\n\n\treturn function() {\n\n\t\tlet context = this;\n\t\tlet args = arguments;\n\t\tlet later = function() {\n\n\t\t\ttimeout = null;\n\n\t\t\tif (!immediate) {\n\t\t\t\tfunc.apply(context, args)\n\t\t\t};\n\t\t};\n\n\t\tlet callNow = immediate && !timeout;\n\n\t\tclearTimeout(timeout);\n\n\t\ttimeout = setTimeout(later, wait);\n\n\t\tif (callNow) {\n\t\t\tfunc.apply(context, args);\n\t\t}\n\t};\n};\n\nconst shallowProperty = function(key) {\n\n\treturn function(obj) {\n\n\t\treturn obj == null ? void 0 : obj[key];\n\t};\n};\n\nconst isArrayLike = function(collection) {\n\n\tlet length = shallowProperty('length');\n\n\treturn typeof length == 'number' && length >= 0 && length <= Math.pow(2, 53) - 1;\n};\n\nconst optimizeCb = function(func, context, argCount) {\n\n if (context === void 0) {\n \treturn func;\n\t}\n\n\tswitch (argCount == null ? 3 : argCount) {\n\n\t\tcase 1: return function(value) {\n\t\t\treturn func.call(context, value);\n\t\t};\n\n\t\tcase 3: return function(value, index, collection) {\n\t\t\treturn func.call(context, value, index, collection);\n\t\t};\n\t\tcase 4: return function(accumulator, value, index, collection) {\n\t\t\treturn func.call(context, accumulator, value, index, collection);\n\t\t};\n\t}\n\n return function() {\n\t\treturn func.apply(context, arguments);\n };\n};\n\nconst each = function(obj, iteratee, context) {\n\n\titeratee = optimizeCb(iteratee, context);\n\n\tlet i;\n\tlet length;\n\n\tif (isArrayLike(obj)) {\n\n\t\tfor (i = 0, length = obj.length; i < length; i++) {\n\t\t\titeratee(obj[i], i, obj);\n\t\t}\n\n\t} else {\n\n\t\tlet keys = Object.keys(obj);\n\n\t\tfor (i = 0, length = keys.length; i < length; i++) {\n\t\t\titeratee(obj[keys[i]], keys[i], obj);\n\t\t}\n\t}\n\n\treturn obj;\n};\n\nconst touchEvents = function () {\n\n\tlet result = false;\n\n\tif (('ontouchstart' in window) || window.DocumentTouch && document instanceof DocumentTouch) {\n\t\tresult = true;\n\t}\n\n\treturn result;\n};\n\nexport {\n\tdebounce,\n\ttouchEvents,\n\teach\n}","export default class AbstractUIComponent {\n\n\t// Init callback\n onInit() {\n\n let onInit = this.opts.onInit;\n\n if (typeof onInit === 'function') {\n\n onInit.call(this.el);\n }\n }\n\n // Update callback\n onUpdate() {\n\n let onUpdate = this.opts.onUpdate;\n\n if (typeof onUpdate === 'function') {\n\n onUpdate.call(this.el);\n }\n }\n\n // Destroy callback\n onDestroy() {\n\n let onDestroy = this.opts.onDestroy;\n\n if (typeof onDestroy === 'function') {\n\n onDestroy.call(this.el);\n }\n }\n\n // Show callback\n onShow() {\n\n let onShow = this.opts.onShow;\n\n if (typeof onShow === 'function') {\n\n onShow.call(this.el);\n }\n }\n\n // Close callback\n onClose() {\n\n let onClose = this.opts.onClose;\n\n if (typeof onClose === 'function') {\n\n onClose.call(this.el);\n }\n }\n\n // Debug log\n log(...args) {\n\n \tif (this.debug) {\n\n if (typeof this.debug === 'function') {\n this.debug(...args);\n } else {\n \t \tconsole.log(...args);\n }\n \t}\n }\n}","import 'jquery';\nimport { debounce, touchEvents } from './util/index';\nimport AbstractUIComponent from './abstract-ui-component';\n\nconst NAME = 'coolTooltip';\nconst DATA_KEY = 'plugin_coolTooltip';\n\nclass Tooltip extends AbstractUIComponent {\n\n constructor(el, opts) {\n\n super();\n\n this.opts = {};\n\n if (window.Cool.settings.tooltip) {\n\n $.extend(true, this.opts, $.fn[NAME].defaults, window.Cool.settings.tooltip, opts);\n\n } else {\n\n $.extend(true, this.opts, $.fn[NAME].defaults, opts);\n }\n\n this.el = el;\n this.debug = this.opts.debug;\n this.init();\n }\n\n // Init plugin\n init() {\n\n this.buildCache();\n this.bindEvents();\n this.onInit();\n }\n\n // Remove plugin instance completely\n destroy() {\n\n this.unbindEvents();\n this.$el.removeData(DATA_KEY);\n this.onDestroy();\n }\n\n // Update plugin data\n update() {\n\n this.buildCache();\n this.onUpdate();\n }\n\n // Cache DOM nodes for performance\n buildCache() {\n\n this.$el = $(this.el);\n this.$container = this.$el.data('container') ? $(this.$el.data('container')) : $(this.opts.container);\n this.id = 'tooltip-'+this.generateUUID();\n this.animation = this.$el.data('animation') ? this.$el.data('animation') : this.opts.animation;\n this.animationIn = this.$el.data('animationIn') ? this.$el.data('animationIn') : this.opts.animationIn;\n this.animationOut = this.$el.data('animationOut') ? this.$el.data('animationOut') : this.opts.animationOut;\n this.animationSpeed = this.$el.data('animationSpeed') ? this.$el.data('animationSpeed') : this.opts.animationSpeed;\n this.placement = this.$el.data('placement') ? this.$el.data('placement') : this.opts.placement;\n this.placementChanged = false;\n this.content = this.$el.data('content') ? this.$el.data('content') : this.opts.content;\n }\n\n // Bind events that trigger methods\n bindEvents() {\n\n this.$el.on('mouseenter'+'.'+NAME, () => {\n\n this.show();\n });\n\n this.$el.on('mouseleave'+'.'+NAME, () => {\n\n this.close();\n });\n\n $(window).on('resize', debounce(() => {\n\n if (this.$tooltip) {\n this.setPosition();\n this.onUpdate();\n }\n }, 250));\n }\n\n // Unbind events that trigger methods\n unbindEvents() {\n\n this.$el.off('.'+NAME);\n }\n\n // Generate UUID\n generateUUID() {\n\n return 'xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx'.replace(/[xy]/g, function(c) {\n let r = Math.random() * 16 | 0, v = c == 'x' ? r : (r & 0x3 | 0x8);\n return v.toString(16);\n });\n }\n\n // Build tooltip\n buildTooltip() {\n\n this.$tooltip = $(`\n\n <div class=\"tooltip\" role=\"tooltip\" id=\"${this.id}\">\n\n <div class=\"arrow\"></div>\n\n <div class=\"tooltip-inner\">${this.content}</div>\n\n </div>\n\n `);\n\n this.$container.append(this.$tooltip);\n this.$arrow = this.$tooltip.find('.arrow');\n\n this.log(this.$el);\n this.log(this.$container);\n this.log(this.$tooltip);\n this.log(this.$arrow);\n this.log('Id: '+this.id);\n this.log('Animation: '+this.animation);\n this.log('Animation in: '+this.animationIn);\n this.log('Animation out: '+this.animationOut);\n this.log('Animation speed: '+this.animationSpeed);\n this.log('Placement: '+this.placement);\n this.log('Content: '+this.content);\n }\n\n // Set positions\n setPosition(placement) {\n\n if (typeof placement === 'undefined' || placement === null) {\n placement = this.placement;\n }\n\n this.$tooltip.addClass('tooltip-'+placement);\n\n let containerInnerWidth = this.$container.innerWidth();\n let containerInnerHeight = this.$container.innerHeight();\n let tooltipWidth = this.$tooltip.outerWidth(true);\n let tooltipHeight = this.$tooltip.outerHeight(true);\n let tooltipTriggerWidth = this.$el.outerWidth();\n let tooltipTriggerHeight = this.$el.outerHeight();\n let tooltipTriggerPosX = this.$el.offset().left;\n let tooltipTriggerPosY = this.$el.offset().top;\n let arrowWidth = this.$arrow.outerWidth(true);\n let arrowHeight = this.$arrow.outerHeight(true);\n let arrowPos;\n let tooltipPosX;\n let tooltipPosY;\n\n if (placement === 'top') {\n\n tooltipPosX = Math.round(tooltipTriggerPosX - (tooltipWidth - tooltipTriggerWidth) / 2);\n tooltipPosY = Math.round(tooltipTriggerPosY - tooltipHeight);\n arrowPos = Math.round(tooltipWidth / 2 - arrowWidth / 2);\n\n this.$arrow.css({\n left: arrowPos+'px'\n });\n\n } else if (placement === 'right') {\n\n tooltipPosX = Math.round(tooltipTriggerPosX + tooltipTriggerWidth);\n tooltipPosY = Math.round(tooltipTriggerPosY - (tooltipHeight - tooltipTriggerHeight) / 2);\n arrowPos = Math.round(tooltipHeight / 2 - arrowHeight / 2);\n\n this.$arrow.css({\n top: arrowPos+'px'\n });\n\n } else if (placement === 'bottom') {\n\n tooltipPosX = Math.round(tooltipTriggerPosX - (tooltipWidth - tooltipTriggerWidth) / 2);\n tooltipPosY = Math.round(tooltipTriggerPosY + tooltipTriggerHeight);\n arrowPos = Math.round(tooltipWidth / 2 - arrowWidth / 2);\n\n this.$arrow.css({\n left: arrowPos+'px'\n });\n\n } else if (placement === 'left') {\n\n tooltipPosX = Math.round(tooltipTriggerPosX - tooltipWidth);\n tooltipPosY = Math.round(tooltipTriggerPosY - (tooltipHeight - tooltipTriggerHeight) / 2);\n arrowPos = Math.round(tooltipHeight / 2 - arrowHeight / 2);\n\n this.$arrow.css({\n top: arrowPos+'px'\n });\n }\n\n this.$tooltip.css({\n position: 'absolute',\n top: '0px',\n left: '0px',\n transform: 'translate3d('+tooltipPosX+'px, '+tooltipPosY+'px, 0px)',\n 'will-change': 'transform'\n });\n\n // Correct placement if tooltip goes outside of container\n let tooltipOverflowCount = 0;\n let tooltipPosition = {\n left: this.$tooltip.position().left,\n top: this.$tooltip.position().top,\n right: containerInnerWidth - (this.$tooltip.position().left + tooltipWidth),\n bottom: containerInnerHeight - (this.$tooltip.position().top + tooltipHeight),\n };\n let tooltipOverflow = {\n left: false,\n top: false,\n right: false,\n bottom: false\n };\n\n if (tooltipPosition.right < 0) {\n\n tooltipOverflow.right = true;\n tooltipOverflowCount++;\n\n this.log('Tooltip overflowing from right');\n }\n\n if (tooltipPosition.left < 0) {\n\n tooltipOverflow.left = true;\n tooltipOverflowCount++;\n\n this.log('Tooltip overflowing from left');\n }\n\n if (tooltipPosition.bottom < 0) {\n\n tooltipOverflow.bottom = true;\n tooltipOverflowCount++;\n\n this.log('Tooltip overflowing from bottom');\n }\n\n if (tooltipPosition.top < 0) {\n\n tooltipOverflow.top = true;\n tooltipOverflowCount++;\n\n this.log('Tooltip overflowing from top');\n }\n\n if (tooltipOverflowCount > 0) {\n\n if (!this.placementChanged && tooltipOverflow.left && tooltipPosition.right > tooltipWidth) {\n\n this.log('Changing tooltip placement to right');\n\n this.placementChanged = true;\n this.$tooltip.removeClass('tooltip-'+placement);\n this.$arrow.removeAttr('style');\n this.setPosition('right');\n\n } else if (!this.placementChanged && tooltipOverflow.top && tooltipPosition.top > tooltipHeight) {\n\n this.log('Changing tooltip placement to bottom');\n\n this.placementChanged = true;\n this.$tooltip.removeClass('tooltip-'+placement);\n this.$arrow.removeAttr('style');\n this.setPosition('bottom');\n\n } else if (!this.placementChanged && tooltipOverflow.right && tooltipPosition.left > tooltipWidth) {\n\n this.log('Changing tooltip placement to left');\n\n this.placementChanged = true;\n this.$tooltip.removeClass('tooltip-'+placement);\n this.$arrow.removeAttr('style');\n this.setPosition('left');\n\n } else if (!this.placementChanged && tooltipOverflow.bottom && tooltipPosition.top > tooltipHeight) {\n\n this.log('Changing tooltip placement to top');\n\n this.placementChanged = true;\n this.$tooltip.removeClass('tooltip-'+placement);\n this.$arrow.removeAttr('style');\n this.setPosition('top');\n\n } else if (!this.placementChanged && (placement !== 'top' || placement !== 'bottom') && (tooltipOverflow.left || tooltipOverflow.right)) {\n\n if (tooltipPosition.top > tooltipPosition.bottom) {\n\n this.log('Changing tooltip placement to top');\n\n this.placementChanged = true;\n this.$tooltip.removeClass('tooltip-'+placement);\n this.$arrow.removeAttr('style');\n this.setPosition('top');\n\n } else {\n\n this.log('Changing tooltip placement to bottom');\n\n this.placementChanged = true;\n this.$tooltip.removeClass('tooltip-'+placement);\n this.$arrow.removeAttr('style');\n this.setPosition('bottom');\n }\n\n } else {\n\n this.fixTooltipPosition = true;\n }\n\n if (this.fixTooltipPosition) {\n\n this.log('Adjusting tooltip size or position in order to tooltip fit in the container');\n\n if (tooltipOverflow.left) {\n\n this.log('Tooltip overflowing from left');\n\n let overflowAmount = Math.abs(tooltipPosition.left);\n let excludePlacements = ['top', 'bottom'];\n\n if ((tooltipTriggerPosX >= tooltipPosX + overflowAmount) && excludePlacements.indexOf(placement) < 0) {\n\n this.log('Tooltip adjusting width');\n\n tooltipWidth -= overflowAmount;\n tooltipPosX += overflowAmount;\n\n } else {\n\n this.log('Tooltip adjusting position x');\n\n tooltipPosX += overflowAmount;\n arrowPos -= overflowAmount;\n }\n }\n\n if (tooltipOverflow.top) {\n\n this.log('Tooltip overflowing from top');\n\n let overflowAmount = Math.abs(tooltipPosition.top);\n\n this.log('Tooltip adjusting position y');\n\n tooltipPosY += overflowAmount;\n arrowPos -= overflowAmount;\n }\n\n if (tooltipOverflow.right) {\n\n this.log('Tooltip overflowing from right');\n\n let overflowAmount = Math.abs(tooltipPosition.right);\n let excludePlacements = ['top', 'bottom'];\n\n if ((tooltipTriggerPosX <= tooltipPosX - overflowAmount) && excludePlacements.indexOf(placement) < 0) {\n\n this.log('Tooltip adjusting width');\n\n tooltipWidth -= overflowAmount;\n\n } else {\n\n this.log('Tooltip adjusting position x');\n\n tooltipPosX -= overflowAmount;\n arrowPos += overflowAmount;\n }\n }\n\n if (tooltipOverflow.bottom) {\n\n this.log('Tooltip overflowing from bottom');\n\n let overflowAmount = Math.abs(tooltipPosition.bottom);\n\n this.log('Tooltip adjusting position y');\n\n tooltipPosY -= overflowAmount;\n arrowPos += overflowAmount;\n }\n\n if (placement === 'top') {\n\n this.$arrow.css({\n left: arrowPos+'px'\n });\n\n } else if (placement === 'right') {\n\n this.$arrow.css({\n top: arrowPos+'px'\n });\n\n } else if (placement === 'bottom') {\n\n this.$arrow.css({\n left: arrowPos+'px'\n });\n\n } else if (placement === 'left') {\n\n this.$arrow.css({\n top: arrowPos+'px'\n });\n }\n\n this.$tooltip.css({\n width: tooltipWidth,\n transform: 'translate3d('+tooltipPosX+'px, '+tooltipPosY+'px, 0px)'\n });\n\n this.fixTooltipPosition = false;\n\n this.log('Tooltip placement changed: '+this.placementChanged);\n this.log('Tooltip container inner width: '+containerInnerWidth+'px');\n this.log('Tooltip container inner height: '+containerInnerHeight+'px');\n this.log('Tooltip trigger width: '+tooltipTriggerWidth+'px');\n this.log('Tooltip trigger height: '+tooltipTriggerHeight+'px');\n this.log('Tooltip trigger position x: '+tooltipTriggerPosX+'px');\n this.log('Tooltip trigger position Y: '+tooltipTriggerPosY+'px');\n this.log('Tooltip width: '+tooltipWidth+'px');\n this.log('Tooltip height: '+tooltipHeight+'px');\n this.log('Tooltip position x: '+tooltipPosX+'px');\n this.log('Tooltip position y: '+tooltipPosY+'px');\n this.log('Tooltip position left: '+tooltipPosition.left+'px');\n this.log('Tooltip position top: '+tooltipPosition.top+'px');\n this.log('Tooltip position right: '+tooltipPosition.right+'px');\n this.log('Tooltip position bottom: '+tooltipPosition.bottom+'px');\n }\n\n } else {\n\n this.log('Tooltip placement changed: '+this.placementChanged);\n this.log('Tooltip container inner width: '+containerInnerWidth+'px');\n this.log('Tooltip container inner height: '+containerInnerHeight+'px');\n this.log('Tooltip trigger width: '+tooltipTriggerWidth+'px');\n this.log('Tooltip trigger height: '+tooltipTriggerHeight+'px');\n this.log('Tooltip trigger position x: '+tooltipTriggerPosX+'px');\n this.log('Tooltip trigger position Y: '+tooltipTriggerPosY+'px');\n this.log('Tooltip width: '+tooltipWidth+'px');\n this.log('Tooltip height: '+tooltipHeight+'px');\n this.log('Tooltip position x: '+tooltipPosX+'px');\n this.log('Tooltip position y: '+tooltipPosY+'px');\n this.log('Tooltip position left: '+tooltipPosition.left+'px');\n this.log('Tooltip position top: '+tooltipPosition.top+'px');\n this.log('Tooltip position right: '+tooltipPosition.right+'px');\n this.log('Tooltip position bottom: '+tooltipPosition.bottom+'px');\n }\n }\n\n // Show\n show() {\n\n if (this.$tooltip) {\n return;\n }\n\n this.buildTooltip();\n this.setPosition();\n\n if (this.animation) {\n\n this.$tooltip.addClass(this.animationSpeed);\n this.$tooltip.animateCss(this.animationIn);\n this.$tooltip.addClass('show');\n this.$tooltip.attr('id', this.id);\n this.$el.attr('data-tooltip', this.id);\n\n } else {\n\n this.$tooltip.addClass('show');\n this.$tooltip.attr('id', this.id);\n this.$el.attr('data-tooltip', this.id);\n }\n\n this.onShow();\n }\n\n // Close\n close() {\n\n if (!this.$tooltip) {\n return;\n }\n\n if (this.animation && !this.$tooltip.hasClass('animated')) {\n\n this.$tooltip.animateCss(this.animationOut, () => {\n\n this.$tooltip.remove();\n this.$el.removeAttr('data-tooltip');\n this.$tooltip = null;\n this.placementChanged = false;\n\n this.onClose();\n });\n\n } else {\n\n this.$tooltip.remove();\n this.$el.removeAttr('data-tooltip');\n this.$tooltip = null;\n this.placementChanged = false;\n\n this.onClose();\n }\n }\n\n static _jQueryInterface(config) {\n\n return this.each(function() {\n\n let data = $(this).data(DATA_KEY);\n const _config = typeof config === 'object' && config;\n\n if (!data) {\n data = new Tooltip(this, _config);\n $(this).data(DATA_KEY, data);\n }\n\n if (typeof config === 'string') {\n\n if (typeof data[config] === 'undefined') {\n throw new TypeError(`No method named \"${config}\"`)\n }\n\n data[config]()\n }\n });\n }\n}\n\nif (typeof $ !== 'undefined') {\n\n // jQuery\n const JQUERY_NO_CONFLICT = $.fn[NAME];\n\n $.fn[NAME] = Tooltip._jQueryInterface;\n $.fn[NAME].Constructor = Tooltip;\n\n $.fn[NAME].noConflict = () => {\n\n $.fn[NAME] = JQUERY_NO_CONFLICT\n\n return Tooltip._jQueryInterface\n }\n\n $.fn[NAME].defaults = {\n container: 'body',\n animation: false,\n animationIn: 'fadeIn',\n animationOut: 'fadeOut',\n animationSpeed: 'fastest',\n placement: 'bottom',\n content: '',\n onInit: null,\n onUpdate: null,\n onDestroy: null,\n onShow: null,\n onClose: null,\n debug: false\n }\n}\n\nexport default Tooltip;"],"names":["debounce","func","wait","immediate","timeout","context","args","arguments","later","apply","callNow","clearTimeout","setTimeout","AbstractUIComponent","onInit","opts","call","el","onUpdate","onDestroy","onShow","onClose","log","debug","console","NAME","DATA_KEY","Tooltip","window","Cool","settings","tooltip","$","extend","fn","defaults","init","buildCache","bindEvents","destroy","unbindEvents","$el","removeData","update","$container","data","container","id","generateUUID","animation","animationIn","animationOut","animationSpeed","placement","placementChanged","content","on","show","close","$tooltip","setPosition","off","replace","c","r","Math","random","v","toString","buildTooltip","append","$arrow","find","addClass","containerInnerWidth","innerWidth","containerInnerHeight","innerHeight","tooltipWidth","outerWidth","tooltipHeight","outerHeight","tooltipTriggerWidth","tooltipTriggerHeight","tooltipTriggerPosX","offset","left","tooltipTriggerPosY","top","arrowWidth","arrowHeight","arrowPos","tooltipPosX","tooltipPosY","round","css","position","transform","tooltipOverflowCount","tooltipPosition","right","bottom","tooltipOverflow","removeClass","removeAttr","fixTooltipPosition","overflowAmount","abs","excludePlacements","indexOf","width","animateCss","attr","hasClass","remove","_jQueryInterface","config","each","_config","TypeError","JQUERY_NO_CONFLICT","Constructor","noConflict"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;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;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;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"}
|
|
1
|
+
{"version":3,"file":"tooltip.js","sources":["../src/util/index.js","../src/abstract-ui-component.js","../src/tooltip.js"],"sourcesContent":["import 'jquery';\n\nconst debounce = function (func, wait, immediate) {\n\n\tlet timeout;\n\n\treturn function() {\n\n\t\tlet context = this;\n\t\tlet args = arguments;\n\t\tlet later = function() {\n\n\t\t\ttimeout = null;\n\n\t\t\tif (!immediate) {\n\t\t\t\tfunc.apply(context, args)\n\t\t\t};\n\t\t};\n\n\t\tlet callNow = immediate && !timeout;\n\n\t\tclearTimeout(timeout);\n\n\t\ttimeout = setTimeout(later, wait);\n\n\t\tif (callNow) {\n\t\t\tfunc.apply(context, args);\n\t\t}\n\t};\n};\n\nconst shallowProperty = function(key) {\n\n\treturn function(obj) {\n\n\t\treturn obj == null ? void 0 : obj[key];\n\t};\n};\n\nconst isArrayLike = function(collection) {\n\n\tlet length = shallowProperty('length');\n\n\treturn typeof length == 'number' && length >= 0 && length <= Math.pow(2, 53) - 1;\n};\n\nconst optimizeCb = function(func, context, argCount) {\n\n if (context === void 0) {\n \treturn func;\n\t}\n\n\tswitch (argCount == null ? 3 : argCount) {\n\n\t\tcase 1: return function(value) {\n\t\t\treturn func.call(context, value);\n\t\t};\n\n\t\tcase 3: return function(value, index, collection) {\n\t\t\treturn func.call(context, value, index, collection);\n\t\t};\n\t\tcase 4: return function(accumulator, value, index, collection) {\n\t\t\treturn func.call(context, accumulator, value, index, collection);\n\t\t};\n\t}\n\n return function() {\n\t\treturn func.apply(context, arguments);\n };\n};\n\nconst each = function(obj, iteratee, context) {\n\n\titeratee = optimizeCb(iteratee, context);\n\n\tlet i;\n\tlet length;\n\n\tif (isArrayLike(obj)) {\n\n\t\tfor (i = 0, length = obj.length; i < length; i++) {\n\t\t\titeratee(obj[i], i, obj);\n\t\t}\n\n\t} else {\n\n\t\tlet keys = Object.keys(obj);\n\n\t\tfor (i = 0, length = keys.length; i < length; i++) {\n\t\t\titeratee(obj[keys[i]], keys[i], obj);\n\t\t}\n\t}\n\n\treturn obj;\n};\n\nconst touchEvents = function () {\n\n\tlet result = false;\n\n\tif (('ontouchstart' in window) || window.DocumentTouch && document instanceof DocumentTouch) {\n\t\tresult = true;\n\t}\n\n\treturn result;\n};\n\n$.event.special.destroyed = {\n\n\tremove: function(obj) {\n\n\t\tif (obj.handler) {\n\t\t\tobj.handler();\n\t\t}\n\t}\n}\n\nexport {\n\tdebounce,\n\ttouchEvents,\n\teach\n}","export default class AbstractUIComponent {\n\n\t// Init callback\n onInit() {\n\n let onInit = this.opts.onInit;\n\n if (typeof onInit === 'function') {\n\n onInit.call(this);\n }\n }\n\n // Update callback\n onUpdate() {\n\n let onUpdate = this.opts.onUpdate;\n\n if (typeof onUpdate === 'function') {\n\n onUpdate.call(this);\n }\n }\n\n // Destroy callback\n onDestroy() {\n\n let onDestroy = this.opts.onDestroy;\n\n if (typeof onDestroy === 'function') {\n\n onDestroy.call(this);\n }\n }\n\n // Show callback\n onShow() {\n\n let onShow = this.opts.onShow;\n\n if (typeof onShow === 'function') {\n\n onShow.call(this);\n }\n }\n\n // Close callback\n onClose() {\n\n let onClose = this.opts.onClose;\n\n if (typeof onClose === 'function') {\n\n onClose.call(this);\n }\n }\n\n // Reset callback\n onReset() {\n\n let onReset = this.opts.onReset;\n\n if (typeof onReset === 'function') {\n\n onReset.call(this);\n }\n }\n\n // Debug log\n log(...args) {\n\n \tif (this.debug) {\n\n if (typeof this.debug === 'function') {\n this.debug(...args);\n } else {\n \t \tconsole.log(...args);\n }\n \t}\n }\n}","import 'jquery';\nimport { debounce, touchEvents } from './util/index';\nimport AbstractUIComponent from './abstract-ui-component';\n\nconst NAME = 'coolTooltip';\nconst DATA_KEY = 'plugin_coolTooltip';\n\nclass Tooltip extends AbstractUIComponent {\n\n constructor(el, opts) {\n\n super();\n\n this.opts = {};\n\n if (window.Cool.settings.tooltip) {\n\n $.extend(true, this.opts, $.fn[NAME].defaults, window.Cool.settings.tooltip, opts);\n\n } else {\n\n $.extend(true, this.opts, $.fn[NAME].defaults, opts);\n }\n\n this.el = el;\n this.debug = this.opts.debug;\n this.init();\n }\n\n // Init plugin\n init() {\n\n this.buildCache();\n this.bindEvents();\n this.onInit();\n }\n\n // Remove plugin instance completely\n destroy() {\n\n this.unbindEvents();\n this.$el.removeData(DATA_KEY);\n this.onDestroy();\n }\n\n // Update plugin data\n update() {\n\n this.buildCache();\n this.onUpdate();\n }\n\n // Cache DOM nodes for performance\n buildCache() {\n\n this.$el = $(this.el);\n this.$container = this.$el.data('container') ? $(this.$el.data('container')) : $(this.opts.container);\n this.id = 'tooltip-'+this.generateUUID();\n this.animation = this.$el.data('animation') ? this.$el.data('animation') : this.opts.animation;\n this.animationIn = this.$el.data('animationIn') ? this.$el.data('animationIn') : this.opts.animationIn;\n this.animationOut = this.$el.data('animationOut') ? this.$el.data('animationOut') : this.opts.animationOut;\n this.animationSpeed = this.$el.data('animationSpeed') ? this.$el.data('animationSpeed') : this.opts.animationSpeed;\n this.placement = this.$el.data('placement') ? this.$el.data('placement') : this.opts.placement;\n this.placementChanged = false;\n this.content = this.$el.data('content') ? this.$el.data('content') : this.opts.content;\n }\n\n // Bind events that trigger methods\n bindEvents() {\n\n this.$el.on('mouseenter'+'.'+NAME, () => {\n\n this.show();\n });\n\n this.$el.on('mouseleave'+'.'+NAME, () => {\n\n this.close();\n });\n\n this.$el.on('destroyed'+'.'+NAME, () => {\n\n this.close();\n });\n\n $(window).on('resize', debounce(() => {\n\n if (this.$tooltip) {\n this.setPosition();\n this.onUpdate();\n }\n }, 250));\n }\n\n // Unbind events that trigger methods\n unbindEvents() {\n\n this.$el.off('.'+NAME);\n }\n\n // Generate UUID\n generateUUID() {\n\n return 'xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx'.replace(/[xy]/g, function(c) {\n let r = Math.random() * 16 | 0, v = c == 'x' ? r : (r & 0x3 | 0x8);\n return v.toString(16);\n });\n }\n\n // Build tooltip\n buildTooltip() {\n\n this.$tooltip = $(`\n\n <div class=\"tooltip\" role=\"tooltip\" id=\"${this.id}\">\n\n <div class=\"arrow\"></div>\n\n <div class=\"tooltip-inner\">${this.content}</div>\n\n </div>\n\n `);\n\n this.$container.append(this.$tooltip);\n this.$arrow = this.$tooltip.find('.arrow');\n\n this.log(this.$el);\n this.log(this.$container);\n this.log(this.$tooltip);\n this.log(this.$arrow);\n this.log('Id: '+this.id);\n this.log('Animation: '+this.animation);\n this.log('Animation in: '+this.animationIn);\n this.log('Animation out: '+this.animationOut);\n this.log('Animation speed: '+this.animationSpeed);\n this.log('Placement: '+this.placement);\n this.log('Content: '+this.content);\n }\n\n // Set positions\n setPosition(placement) {\n\n if (typeof placement === 'undefined' || placement === null) {\n placement = this.placement;\n }\n\n this.$tooltip.addClass('tooltip-'+placement);\n\n let containerInnerWidth = this.$container.innerWidth();\n let containerInnerHeight = this.$container.innerHeight();\n let tooltipWidth = this.$tooltip.outerWidth(true);\n let tooltipHeight = this.$tooltip.outerHeight(true);\n let tooltipTriggerWidth = this.$el.outerWidth();\n let tooltipTriggerHeight = this.$el.outerHeight();\n let tooltipTriggerPosX = this.$el.offset().left;\n let tooltipTriggerPosY = this.$el.offset().top;\n let arrowWidth = this.$arrow.outerWidth(true);\n let arrowHeight = this.$arrow.outerHeight(true);\n let arrowPos;\n let tooltipPosX;\n let tooltipPosY;\n\n if (placement === 'top') {\n\n tooltipPosX = Math.round(tooltipTriggerPosX - (tooltipWidth - tooltipTriggerWidth) / 2);\n tooltipPosY = Math.round(tooltipTriggerPosY - tooltipHeight);\n arrowPos = Math.round(tooltipWidth / 2 - arrowWidth / 2);\n\n this.$arrow.css({\n left: arrowPos+'px'\n });\n\n } else if (placement === 'right') {\n\n tooltipPosX = Math.round(tooltipTriggerPosX + tooltipTriggerWidth);\n tooltipPosY = Math.round(tooltipTriggerPosY - (tooltipHeight - tooltipTriggerHeight) / 2);\n arrowPos = Math.round(tooltipHeight / 2 - arrowHeight / 2);\n\n this.$arrow.css({\n top: arrowPos+'px'\n });\n\n } else if (placement === 'bottom') {\n\n tooltipPosX = Math.round(tooltipTriggerPosX - (tooltipWidth - tooltipTriggerWidth) / 2);\n tooltipPosY = Math.round(tooltipTriggerPosY + tooltipTriggerHeight);\n arrowPos = Math.round(tooltipWidth / 2 - arrowWidth / 2);\n\n this.$arrow.css({\n left: arrowPos+'px'\n });\n\n } else if (placement === 'left') {\n\n tooltipPosX = Math.round(tooltipTriggerPosX - tooltipWidth);\n tooltipPosY = Math.round(tooltipTriggerPosY - (tooltipHeight - tooltipTriggerHeight) / 2);\n arrowPos = Math.round(tooltipHeight / 2 - arrowHeight / 2);\n\n this.$arrow.css({\n top: arrowPos+'px'\n });\n }\n\n this.$tooltip.css({\n position: 'absolute',\n top: '0px',\n left: '0px',\n transform: 'translate3d('+tooltipPosX+'px, '+tooltipPosY+'px, 0px)',\n 'will-change': 'transform'\n });\n\n // Correct placement if tooltip goes outside of container\n let tooltipOverflowCount = 0;\n let tooltipPosition = {\n left: this.$tooltip.position().left,\n top: this.$tooltip.position().top,\n right: containerInnerWidth - (this.$tooltip.position().left + tooltipWidth),\n bottom: containerInnerHeight - (this.$tooltip.position().top + tooltipHeight),\n };\n let tooltipOverflow = {\n left: false,\n top: false,\n right: false,\n bottom: false\n };\n\n if (tooltipPosition.right < 0) {\n\n tooltipOverflow.right = true;\n tooltipOverflowCount++;\n\n this.log('Tooltip overflowing from right');\n }\n\n if (tooltipPosition.left < 0) {\n\n tooltipOverflow.left = true;\n tooltipOverflowCount++;\n\n this.log('Tooltip overflowing from left');\n }\n\n if (tooltipPosition.bottom < 0) {\n\n tooltipOverflow.bottom = true;\n tooltipOverflowCount++;\n\n this.log('Tooltip overflowing from bottom');\n }\n\n if (tooltipPosition.top < 0) {\n\n tooltipOverflow.top = true;\n tooltipOverflowCount++;\n\n this.log('Tooltip overflowing from top');\n }\n\n if (tooltipOverflowCount > 0) {\n\n if (!this.placementChanged && tooltipOverflow.left && tooltipPosition.right > tooltipWidth) {\n\n this.log('Changing tooltip placement to right');\n\n this.placementChanged = true;\n this.$tooltip.removeClass('tooltip-'+placement);\n this.$arrow.removeAttr('style');\n this.setPosition('right');\n\n } else if (!this.placementChanged && tooltipOverflow.top && tooltipPosition.top > tooltipHeight) {\n\n this.log('Changing tooltip placement to bottom');\n\n this.placementChanged = true;\n this.$tooltip.removeClass('tooltip-'+placement);\n this.$arrow.removeAttr('style');\n this.setPosition('bottom');\n\n } else if (!this.placementChanged && tooltipOverflow.right && tooltipPosition.left > tooltipWidth) {\n\n this.log('Changing tooltip placement to left');\n\n this.placementChanged = true;\n this.$tooltip.removeClass('tooltip-'+placement);\n this.$arrow.removeAttr('style');\n this.setPosition('left');\n\n } else if (!this.placementChanged && tooltipOverflow.bottom && tooltipPosition.top > tooltipHeight) {\n\n this.log('Changing tooltip placement to top');\n\n this.placementChanged = true;\n this.$tooltip.removeClass('tooltip-'+placement);\n this.$arrow.removeAttr('style');\n this.setPosition('top');\n\n } else if (!this.placementChanged && (placement !== 'top' || placement !== 'bottom') && (tooltipOverflow.left || tooltipOverflow.right)) {\n\n if (tooltipPosition.top > tooltipPosition.bottom) {\n\n this.log('Changing tooltip placement to top');\n\n this.placementChanged = true;\n this.$tooltip.removeClass('tooltip-'+placement);\n this.$arrow.removeAttr('style');\n this.setPosition('top');\n\n } else {\n\n this.log('Changing tooltip placement to bottom');\n\n this.placementChanged = true;\n this.$tooltip.removeClass('tooltip-'+placement);\n this.$arrow.removeAttr('style');\n this.setPosition('bottom');\n }\n\n } else {\n\n this.fixTooltipPosition = true;\n }\n\n if (this.fixTooltipPosition) {\n\n this.log('Adjusting tooltip size or position in order to tooltip fit in the container');\n\n if (tooltipOverflow.left) {\n\n this.log('Tooltip overflowing from left');\n\n let overflowAmount = Math.abs(tooltipPosition.left);\n let excludePlacements = ['top', 'bottom'];\n\n if ((tooltipTriggerPosX >= tooltipPosX + overflowAmount) && excludePlacements.indexOf(placement) < 0) {\n\n this.log('Tooltip adjusting width');\n\n tooltipWidth -= overflowAmount;\n tooltipPosX += overflowAmount;\n\n } else {\n\n this.log('Tooltip adjusting position x');\n\n tooltipPosX += overflowAmount;\n arrowPos -= overflowAmount;\n }\n }\n\n if (tooltipOverflow.top) {\n\n this.log('Tooltip overflowing from top');\n\n let overflowAmount = Math.abs(tooltipPosition.top);\n\n this.log('Tooltip adjusting position y');\n\n tooltipPosY += overflowAmount;\n arrowPos -= overflowAmount;\n }\n\n if (tooltipOverflow.right) {\n\n this.log('Tooltip overflowing from right');\n\n let overflowAmount = Math.abs(tooltipPosition.right);\n let excludePlacements = ['top', 'bottom'];\n\n if ((tooltipTriggerPosX <= tooltipPosX - overflowAmount) && excludePlacements.indexOf(placement) < 0) {\n\n this.log('Tooltip adjusting width');\n\n tooltipWidth -= overflowAmount;\n\n } else {\n\n this.log('Tooltip adjusting position x');\n\n tooltipPosX -= overflowAmount;\n arrowPos += overflowAmount;\n }\n }\n\n if (tooltipOverflow.bottom) {\n\n this.log('Tooltip overflowing from bottom');\n\n let overflowAmount = Math.abs(tooltipPosition.bottom);\n\n this.log('Tooltip adjusting position y');\n\n tooltipPosY -= overflowAmount;\n arrowPos += overflowAmount;\n }\n\n if (placement === 'top') {\n\n this.$arrow.css({\n left: arrowPos+'px'\n });\n\n } else if (placement === 'right') {\n\n this.$arrow.css({\n top: arrowPos+'px'\n });\n\n } else if (placement === 'bottom') {\n\n this.$arrow.css({\n left: arrowPos+'px'\n });\n\n } else if (placement === 'left') {\n\n this.$arrow.css({\n top: arrowPos+'px'\n });\n }\n\n this.$tooltip.css({\n width: tooltipWidth,\n transform: 'translate3d('+tooltipPosX+'px, '+tooltipPosY+'px, 0px)'\n });\n\n this.fixTooltipPosition = false;\n\n this.log('Tooltip placement changed: '+this.placementChanged);\n this.log('Tooltip container inner width: '+containerInnerWidth+'px');\n this.log('Tooltip container inner height: '+containerInnerHeight+'px');\n this.log('Tooltip trigger width: '+tooltipTriggerWidth+'px');\n this.log('Tooltip trigger height: '+tooltipTriggerHeight+'px');\n this.log('Tooltip trigger position x: '+tooltipTriggerPosX+'px');\n this.log('Tooltip trigger position Y: '+tooltipTriggerPosY+'px');\n this.log('Tooltip width: '+tooltipWidth+'px');\n this.log('Tooltip height: '+tooltipHeight+'px');\n this.log('Tooltip position x: '+tooltipPosX+'px');\n this.log('Tooltip position y: '+tooltipPosY+'px');\n this.log('Tooltip position left: '+tooltipPosition.left+'px');\n this.log('Tooltip position top: '+tooltipPosition.top+'px');\n this.log('Tooltip position right: '+tooltipPosition.right+'px');\n this.log('Tooltip position bottom: '+tooltipPosition.bottom+'px');\n }\n\n } else {\n\n this.log('Tooltip placement changed: '+this.placementChanged);\n this.log('Tooltip container inner width: '+containerInnerWidth+'px');\n this.log('Tooltip container inner height: '+containerInnerHeight+'px');\n this.log('Tooltip trigger width: '+tooltipTriggerWidth+'px');\n this.log('Tooltip trigger height: '+tooltipTriggerHeight+'px');\n this.log('Tooltip trigger position x: '+tooltipTriggerPosX+'px');\n this.log('Tooltip trigger position Y: '+tooltipTriggerPosY+'px');\n this.log('Tooltip width: '+tooltipWidth+'px');\n this.log('Tooltip height: '+tooltipHeight+'px');\n this.log('Tooltip position x: '+tooltipPosX+'px');\n this.log('Tooltip position y: '+tooltipPosY+'px');\n this.log('Tooltip position left: '+tooltipPosition.left+'px');\n this.log('Tooltip position top: '+tooltipPosition.top+'px');\n this.log('Tooltip position right: '+tooltipPosition.right+'px');\n this.log('Tooltip position bottom: '+tooltipPosition.bottom+'px');\n }\n }\n\n // Show\n show() {\n\n if (this.$tooltip) {\n return;\n }\n\n this.buildTooltip();\n this.setPosition();\n\n if (this.animation) {\n\n this.$tooltip.addClass(this.animationSpeed);\n this.$tooltip.animateCss(this.animationIn);\n this.$tooltip.addClass('show');\n this.$tooltip.attr('id', this.id);\n this.$el.attr('data-tooltip', this.id);\n\n } else {\n\n this.$tooltip.addClass('show');\n this.$tooltip.attr('id', this.id);\n this.$el.attr('data-tooltip', this.id);\n }\n\n this.onShow();\n }\n\n // Close\n close() {\n\n if (!this.$tooltip) {\n return;\n }\n\n if (this.animation && !this.$tooltip.hasClass('animated')) {\n\n this.$tooltip.animateCss(this.animationOut, () => {\n\n this.$tooltip.remove();\n this.$el.removeAttr('data-tooltip');\n this.$tooltip = null;\n this.placementChanged = false;\n\n this.onClose();\n });\n\n } else {\n\n this.$tooltip.remove();\n this.$el.removeAttr('data-tooltip');\n this.$tooltip = null;\n this.placementChanged = false;\n\n this.onClose();\n }\n }\n\n static _jQueryInterface(config) {\n\n return this.each(function() {\n\n let data = $(this).data(DATA_KEY);\n const _config = typeof config === 'object' && config;\n\n if (!data) {\n data = new Tooltip(this, _config);\n $(this).data(DATA_KEY, data);\n }\n\n if (typeof config === 'string') {\n\n if (typeof data[config] === 'undefined') {\n throw new TypeError(`No method named \"${config}\"`)\n }\n\n data[config]()\n }\n });\n }\n}\n\nif (typeof $ !== 'undefined') {\n\n // jQuery\n const JQUERY_NO_CONFLICT = $.fn[NAME];\n\n $.fn[NAME] = Tooltip._jQueryInterface;\n $.fn[NAME].Constructor = Tooltip;\n\n $.fn[NAME].noConflict = () => {\n\n $.fn[NAME] = JQUERY_NO_CONFLICT;\n\n return Tooltip._jQueryInterface;\n }\n\n $.fn[NAME].defaults = {\n container: 'body',\n animation: false,\n animationIn: 'fadeIn',\n animationOut: 'fadeOut',\n animationSpeed: 'fastest',\n placement: 'bottom',\n content: '',\n onInit: null,\n onUpdate: null,\n onDestroy: null,\n onShow: null,\n onClose: null,\n debug: false\n }\n}\n\nexport default Tooltip;"],"names":["debounce","func","wait","immediate","timeout","context","args","arguments","later","apply","callNow","clearTimeout","setTimeout","$","event","special","destroyed","remove","obj","handler","AbstractUIComponent","onInit","opts","call","onUpdate","onDestroy","onShow","onClose","onReset","log","debug","console","NAME","DATA_KEY","Tooltip","el","window","Cool","settings","tooltip","extend","fn","defaults","init","buildCache","bindEvents","destroy","unbindEvents","$el","removeData","update","$container","data","container","id","generateUUID","animation","animationIn","animationOut","animationSpeed","placement","placementChanged","content","on","show","close","$tooltip","setPosition","off","replace","c","r","Math","random","v","toString","buildTooltip","append","$arrow","find","addClass","containerInnerWidth","innerWidth","containerInnerHeight","innerHeight","tooltipWidth","outerWidth","tooltipHeight","outerHeight","tooltipTriggerWidth","tooltipTriggerHeight","tooltipTriggerPosX","offset","left","tooltipTriggerPosY","top","arrowWidth","arrowHeight","arrowPos","tooltipPosX","tooltipPosY","round","css","position","transform","tooltipOverflowCount","tooltipPosition","right","bottom","tooltipOverflow","removeClass","removeAttr","fixTooltipPosition","overflowAmount","abs","excludePlacements","indexOf","width","animateCss","attr","hasClass","_jQueryInterface","config","each","_config","TypeError","JQUERY_NO_CONFLICT","Constructor","noConflict"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;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;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;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"}
|
|
@@ -7,7 +7,7 @@ export default class AbstractUIComponent {
|
|
|
7
7
|
|
|
8
8
|
if (typeof onInit === 'function') {
|
|
9
9
|
|
|
10
|
-
onInit.call(this
|
|
10
|
+
onInit.call(this);
|
|
11
11
|
}
|
|
12
12
|
}
|
|
13
13
|
|
|
@@ -18,7 +18,7 @@ export default class AbstractUIComponent {
|
|
|
18
18
|
|
|
19
19
|
if (typeof onUpdate === 'function') {
|
|
20
20
|
|
|
21
|
-
onUpdate.call(this
|
|
21
|
+
onUpdate.call(this);
|
|
22
22
|
}
|
|
23
23
|
}
|
|
24
24
|
|
|
@@ -29,7 +29,7 @@ export default class AbstractUIComponent {
|
|
|
29
29
|
|
|
30
30
|
if (typeof onDestroy === 'function') {
|
|
31
31
|
|
|
32
|
-
onDestroy.call(this
|
|
32
|
+
onDestroy.call(this);
|
|
33
33
|
}
|
|
34
34
|
}
|
|
35
35
|
|
|
@@ -40,7 +40,7 @@ export default class AbstractUIComponent {
|
|
|
40
40
|
|
|
41
41
|
if (typeof onShow === 'function') {
|
|
42
42
|
|
|
43
|
-
onShow.call(this
|
|
43
|
+
onShow.call(this);
|
|
44
44
|
}
|
|
45
45
|
}
|
|
46
46
|
|
|
@@ -51,7 +51,18 @@ export default class AbstractUIComponent {
|
|
|
51
51
|
|
|
52
52
|
if (typeof onClose === 'function') {
|
|
53
53
|
|
|
54
|
-
onClose.call(this
|
|
54
|
+
onClose.call(this);
|
|
55
|
+
}
|
|
56
|
+
}
|
|
57
|
+
|
|
58
|
+
// Reset callback
|
|
59
|
+
onReset() {
|
|
60
|
+
|
|
61
|
+
let onReset = this.opts.onReset;
|
|
62
|
+
|
|
63
|
+
if (typeof onReset === 'function') {
|
|
64
|
+
|
|
65
|
+
onReset.call(this);
|
|
55
66
|
}
|
|
56
67
|
}
|
|
57
68
|
|
package/js/src/collapse.js
CHANGED
|
@@ -71,6 +71,10 @@ class Collapse extends AbstractUIComponent {
|
|
|
71
71
|
this.$indicator = $(this.$el).parent().find('[data-collapse-indicator]');
|
|
72
72
|
}
|
|
73
73
|
|
|
74
|
+
if (this.expanded) {
|
|
75
|
+
this.$target.css('height', 'auto');
|
|
76
|
+
}
|
|
77
|
+
|
|
74
78
|
this.log(this.$el);
|
|
75
79
|
this.log(this.$target);
|
|
76
80
|
this.log(this.$container);
|
|
@@ -128,7 +132,12 @@ class Collapse extends AbstractUIComponent {
|
|
|
128
132
|
// Show
|
|
129
133
|
show() {
|
|
130
134
|
|
|
131
|
-
|
|
135
|
+
// Update target height if something is added to dom which causes height to change
|
|
136
|
+
if (this.targetHeight !== this.$target.height()) {
|
|
137
|
+
this.targetHeight = this.$target.height();
|
|
138
|
+
}
|
|
139
|
+
|
|
140
|
+
this.$target.removeClass('collapse show');
|
|
132
141
|
this.$target.addClass('collapsing');
|
|
133
142
|
|
|
134
143
|
if (this.$el.is('button')) {
|
|
@@ -136,14 +145,14 @@ class Collapse extends AbstractUIComponent {
|
|
|
136
145
|
}
|
|
137
146
|
|
|
138
147
|
if (this.$container.length) {
|
|
139
|
-
this.$container.addClass('
|
|
148
|
+
this.$container.addClass('show');
|
|
140
149
|
}
|
|
141
150
|
|
|
142
151
|
this.$target.css('height');
|
|
143
152
|
this.$target.css('height', this.targetHeight);
|
|
144
153
|
|
|
145
154
|
if (this.$indicator.length) {
|
|
146
|
-
this.$indicator.addClass('
|
|
155
|
+
this.$indicator.addClass('show');
|
|
147
156
|
}
|
|
148
157
|
|
|
149
158
|
this.$target.one(this.whichTransitionEvent(), () => {
|
|
@@ -155,7 +164,7 @@ class Collapse extends AbstractUIComponent {
|
|
|
155
164
|
}
|
|
156
165
|
|
|
157
166
|
this.$target.removeAttr('style');
|
|
158
|
-
this.$target.addClass('collapse
|
|
167
|
+
this.$target.addClass('collapse show');
|
|
159
168
|
this.$el.attr('aria-expanded', true);
|
|
160
169
|
this.$target.css('height', 'auto');
|
|
161
170
|
this.expanded = true;
|
|
@@ -167,7 +176,7 @@ class Collapse extends AbstractUIComponent {
|
|
|
167
176
|
// Close
|
|
168
177
|
close() {
|
|
169
178
|
|
|
170
|
-
this.$target.removeClass('collapse
|
|
179
|
+
this.$target.removeClass('collapse show');
|
|
171
180
|
this.$target.addClass('collapsing');
|
|
172
181
|
|
|
173
182
|
if (this.$el.is('button')) {
|
|
@@ -175,7 +184,7 @@ class Collapse extends AbstractUIComponent {
|
|
|
175
184
|
}
|
|
176
185
|
|
|
177
186
|
if (this.$container.length) {
|
|
178
|
-
this.$container.removeClass('
|
|
187
|
+
this.$container.removeClass('show');
|
|
179
188
|
}
|
|
180
189
|
|
|
181
190
|
this.$target.css('height', this.$target.height());
|
|
@@ -184,8 +193,8 @@ class Collapse extends AbstractUIComponent {
|
|
|
184
193
|
this.$target.css('height', 0);
|
|
185
194
|
}, 10);
|
|
186
195
|
|
|
187
|
-
if (this.$indicator.length && this.$indicator.hasClass('
|
|
188
|
-
this.$indicator.removeClass('
|
|
196
|
+
if (this.$indicator.length && this.$indicator.hasClass('show')) {
|
|
197
|
+
this.$indicator.removeClass('show');
|
|
189
198
|
}
|
|
190
199
|
|
|
191
200
|
this.$target.one(this.whichTransitionEvent(), () => {
|
|
@@ -200,6 +209,11 @@ class Collapse extends AbstractUIComponent {
|
|
|
200
209
|
this.$target.addClass('collapse');
|
|
201
210
|
this.$el.attr('aria-expanded', false);
|
|
202
211
|
this.expanded = false;
|
|
212
|
+
|
|
213
|
+
// Update target height if something is added to dom which causes height to change
|
|
214
|
+
if (this.targetHeight !== this.$target.height()) {
|
|
215
|
+
this.targetHeight = this.$target.height();
|
|
216
|
+
}
|
|
203
217
|
});
|
|
204
218
|
|
|
205
219
|
this.onClose();
|
|
@@ -239,9 +253,9 @@ if (typeof $ !== 'undefined') {
|
|
|
239
253
|
|
|
240
254
|
$.fn[NAME].noConflict = () => {
|
|
241
255
|
|
|
242
|
-
$.fn[NAME] = JQUERY_NO_CONFLICT
|
|
256
|
+
$.fn[NAME] = JQUERY_NO_CONFLICT;
|
|
243
257
|
|
|
244
|
-
return Collapse._jQueryInterface
|
|
258
|
+
return Collapse._jQueryInterface;
|
|
245
259
|
}
|
|
246
260
|
|
|
247
261
|
$.fn[NAME].defaults = {
|
package/js/src/common.js
CHANGED
|
@@ -99,6 +99,10 @@ class Common {
|
|
|
99
99
|
linkDisabled = true;
|
|
100
100
|
}
|
|
101
101
|
|
|
102
|
+
if (target.hasClass('table-link-exclude')) {
|
|
103
|
+
linkDisabled = true;
|
|
104
|
+
}
|
|
105
|
+
|
|
102
106
|
if (target.is('td, .td, img') && !linkDisabled) {
|
|
103
107
|
|
|
104
108
|
if (e.ctrlKey || e.metaKey) {
|
|
@@ -145,6 +149,10 @@ class Common {
|
|
|
145
149
|
btnDisabled = true;
|
|
146
150
|
}
|
|
147
151
|
|
|
152
|
+
if (target.hasClass('table-btn-exclude')) {
|
|
153
|
+
btnDisabled = true;
|
|
154
|
+
}
|
|
155
|
+
|
|
148
156
|
if (target.is('td, .td, img') && !btnDisabled) {
|
|
149
157
|
|
|
150
158
|
$(btn).click();
|
|
@@ -155,6 +163,24 @@ class Common {
|
|
|
155
163
|
}
|
|
156
164
|
});
|
|
157
165
|
|
|
166
|
+
// button toggle
|
|
167
|
+
$(document).on('click', '.btn-group-toggle .btn > input', function(e) {
|
|
168
|
+
e.stopPropagation();
|
|
169
|
+
});
|
|
170
|
+
|
|
171
|
+
$(document).on('click', '.btn-group-toggle .btn', function() {
|
|
172
|
+
$(this).find('input').trigger('click');
|
|
173
|
+
$(this).parent().find('input').trigger('change');
|
|
174
|
+
});
|
|
175
|
+
|
|
176
|
+
$(document).on('change', '.btn-group-toggle .btn > input', function() {
|
|
177
|
+
if ($(this).is(':checked')) {
|
|
178
|
+
$(this).parent().addClass('active');
|
|
179
|
+
} else {
|
|
180
|
+
$(this).parent().removeClass('active');
|
|
181
|
+
}
|
|
182
|
+
});
|
|
183
|
+
|
|
158
184
|
// Force select element unfocus after change
|
|
159
185
|
$('select').on('change', function() {
|
|
160
186
|
$(this).blur();
|
package/js/src/dialog.js
CHANGED
|
@@ -1,5 +1,4 @@
|
|
|
1
1
|
import 'jquery';
|
|
2
|
-
import PerfectScrollbar from './util/perfect-scrollbar';
|
|
3
2
|
import { debounce, touchEvents } from './util/index';
|
|
4
3
|
|
|
5
4
|
const NAME = 'coolDialog';
|
|
@@ -74,12 +73,18 @@ class Dialog {
|
|
|
74
73
|
animationSpeed: settings.animationSpeed,
|
|
75
74
|
callbacks: settings.callbacks,
|
|
76
75
|
maxBodyHeight: settings.maxBodyHeight,
|
|
76
|
+
overflowVisible: settings.overflowVisible,
|
|
77
77
|
actions: settings.actions,
|
|
78
78
|
onInit: settings.onInit,
|
|
79
79
|
onShow: settings.onShow,
|
|
80
80
|
onClose: settings.onClose
|
|
81
81
|
};
|
|
82
82
|
|
|
83
|
+
if (dialog.maxBodyHeight == null) {
|
|
84
|
+
|
|
85
|
+
dialog.maxBodyHeight = window.innerHeight - 200;
|
|
86
|
+
}
|
|
87
|
+
|
|
83
88
|
if (typeof dialog.template === 'function') {
|
|
84
89
|
|
|
85
90
|
dialog.$el = $(dialog.template());
|
|
@@ -204,19 +209,6 @@ class Dialog {
|
|
|
204
209
|
|
|
205
210
|
this.$container.append(dialog.$el);
|
|
206
211
|
|
|
207
|
-
if (dialog.template === '' && touchEvents() == false) {
|
|
208
|
-
|
|
209
|
-
dialog.$el.find('.dialog-body').addClass('ps-dark');
|
|
210
|
-
|
|
211
|
-
new PerfectScrollbar(dialog.$el.find('.dialog-body')[0], {
|
|
212
|
-
wheelSpeed: 1,
|
|
213
|
-
wheelPropagation: false,
|
|
214
|
-
minScrollbarLength: 20
|
|
215
|
-
});
|
|
216
|
-
|
|
217
|
-
dialog.$el.find('.dialog-body').addClass('ps-show-rail-y');
|
|
218
|
-
}
|
|
219
|
-
|
|
220
212
|
if (dialog.animation) {
|
|
221
213
|
dialog.$el.find('.dialog-content').addClass(dialog.animationSpeed).animateCss(dialog.animationIn);
|
|
222
214
|
}
|
|
@@ -444,6 +436,7 @@ class Dialog {
|
|
|
444
436
|
let classes = dialog.classes ? ' '+dialog.classes : '';
|
|
445
437
|
let centered = dialog.centered ? ' dialog-centered' : '';
|
|
446
438
|
let size = dialog.size ? ' dialog-'+dialog.size : '';
|
|
439
|
+
let overFlowVisible = dialog.overflowVisible ? ' dialog-overflow-visible' : '';
|
|
447
440
|
let uuid = ' data-dialog-uuid="'+dialog.uuid+'"';
|
|
448
441
|
let backdrop = dialog.backdrop ? ' data-dialog-backdrop="true"' : ' data-dialog-backdrop="false"';
|
|
449
442
|
let title = dialog.title;
|
|
@@ -462,7 +455,7 @@ class Dialog {
|
|
|
462
455
|
}
|
|
463
456
|
|
|
464
457
|
return `
|
|
465
|
-
<div class="dialog${classes}${centered}${size}"${uuid}${backdrop}>
|
|
458
|
+
<div class="dialog${classes}${centered}${size}${overFlowVisible}"${uuid}${backdrop}>
|
|
466
459
|
|
|
467
460
|
<div class="dialog-container">
|
|
468
461
|
|
|
@@ -525,9 +518,9 @@ if (typeof $ !== 'undefined') {
|
|
|
525
518
|
|
|
526
519
|
$.fn[NAME].noConflict = () => {
|
|
527
520
|
|
|
528
|
-
$.fn[NAME] = JQUERY_NO_CONFLICT
|
|
521
|
+
$.fn[NAME] = JQUERY_NO_CONFLICT;
|
|
529
522
|
|
|
530
|
-
return Dialog._jQueryInterface
|
|
523
|
+
return Dialog._jQueryInterface;
|
|
531
524
|
}
|
|
532
525
|
|
|
533
526
|
$.fn[NAME].defaults = {
|
|
@@ -546,7 +539,8 @@ if (typeof $ !== 'undefined') {
|
|
|
546
539
|
animationOut: 'fadeOut',
|
|
547
540
|
animationSpeed: 'fastest',
|
|
548
541
|
callbacks: {},
|
|
549
|
-
maxBodyHeight:
|
|
542
|
+
maxBodyHeight: null,
|
|
543
|
+
overflowVisible: false,
|
|
550
544
|
faPro: false,
|
|
551
545
|
debug: true,
|
|
552
546
|
onInitialize: null,
|