{"version":3,"file":"opinions.bundle.js","mappings":"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","sources":["webpack://4tochki/./webpack/src/modules/opinionsFilter/index.js","webpack://4tochki/./webpack/bundles/opinions/index.js","webpack://4tochki/./node_modules/bootstrap/js/dist/tooltip.js","webpack://4tochki/./node_modules/bootstrap/js/dist/util/sanitizer.js","webpack://4tochki/./node_modules/bootstrap/js/dist/util/template-factory.js"],"sourcesContent":["import './index.scss';\r\nimport * as jQuery from 'jquery';\r\nwindow.$ = jQuery;\r\nimport {config} from 'core/config';\r\nimport Tooltip from 'bootstrap/js/dist/tooltip';\r\n\r\nconst SELECT = {\r\n 'filter': '.news-sideFilter',\r\n 'filterInput': '.news-sideFilter .form-check-input',\r\n 'searchResult': '#searchResult',\r\n 'content': '.content',\r\n 'tooltip': '.tooltip.show',\r\n 'tooltipInner': '.tooltip.show .tooltip-inner',\r\n};\r\n\r\nexport const opinionsFilter = {\r\n init: function() {\r\n this.bindEvents();\r\n },\r\n bindEvents: function() {\r\n document.querySelectorAll('.news-sideFilter input').forEach((element) => {\r\n element.addEventListener('change', () => {\r\n const $container = element.closest('.form-check');\r\n opinionsFilter.hideAllTooltips();\r\n const tooltip = new Tooltip(element, {\r\n trigger: 'manual',\r\n placement: 'left',\r\n html: true,\r\n container: $container,\r\n title: `Показать: `, boundary: document.body, // or document.querySelector('#boundary')\r\n });\r\n tooltip.show();\r\n opinionsFilter.doSearchByForm(0, 1);\r\n });\r\n });\r\n\r\n // const $$filterInputs = document.querySelectorAll(SELECT.filterInput);\r\n // if ($$filterInputs.length > 0) {\r\n // $$filterInputs.forEach((element) => {\r\n // element.addEventListener('change', function() {\r\n // $(SELECT.tooltip).tooltip('hide'); // bootstrap\r\n // $(element).tooltip('toggle'); // bootstrap\r\n // opinionsFilter.doSearchByForm(0, 1);\r\n // });\r\n // });\r\n // }\r\n document.querySelector('form.opinions__search').addEventListener('submit', function(event) {\r\n event.preventDefault();\r\n opinionsFilter.doSearchByForm(this, 0);\r\n });\r\n },\r\n doSearchByForm: function(form = 0, count = 0) {\r\n if (!form) {\r\n form = document.querySelector(SELECT.filter);\r\n }\r\n const doSearchByFormParams = new FormData(form);\r\n opinionsFilter.doSearch(doSearchByFormParams, count);\r\n return false;\r\n },\r\n doSearch: function(params, count = 0) {\r\n if (!count) {\r\n document.querySelector(SELECT.searchResult).innerHTML = '';\r\n }\r\n const sort = document.querySelector('#sort').value;\r\n const modelId = document.querySelector('#modelId').value;\r\n params.set('count', count);\r\n params.set('page', 1);\r\n params.set('sort', sort);\r\n params.set('model', modelId);\r\n config.post('/opinions/search/', params, 'html').then((response) => {\r\n if (count > 0) {\r\n document.querySelector(SELECT.tooltipInner).innerHTML = response;\r\n // $(SELECT.tooltip).tooltip('update'); // bootstrap\r\n document.querySelector(SELECT.tooltip).addEventListener('click', function() {\r\n opinionsFilter.doSearchByForm(0, 0);\r\n document.querySelector(SELECT.content).scrollIntoView({\r\n block: 'center',\r\n behavior: 'smooth',\r\n });\r\n });\r\n } else {\r\n opinionsFilter.hideAllTooltips();\r\n document.querySelector(SELECT.searchResult).innerHTML = response;\r\n }\r\n });\r\n },\r\n hideAllTooltips: function() {\r\n console.log('hideAllTooltips');\r\n const $$tooltips = document.querySelectorAll('.news-sideFilter input');\r\n $$tooltips.forEach((tooltip) => {\r\n const instance = Tooltip.getOrCreateInstance(tooltip, {trigger: 'manual'});\r\n instance.hide();\r\n });\r\n },\r\n};\r\n","import './index.scss';\r\nimport {opinionsFilter} from 'modules/opinionsFilter';\r\n\r\nopinionsFilter.init();\r\n","/*!\n * Bootstrap tooltip.js v5.3.3 (https://getbootstrap.com/)\n * Copyright 2011-2024 The Bootstrap Authors (https://github.com/twbs/bootstrap/graphs/contributors)\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)\n */\n(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined' ? module.exports = factory(require('@popperjs/core'), require('./base-component.js'), require('./dom/event-handler.js'), require('./dom/manipulator.js'), require('./util/index.js'), require('./util/sanitizer.js'), require('./util/template-factory.js')) :\n typeof define === 'function' && define.amd ? define(['@popperjs/core', './base-component', './dom/event-handler', './dom/manipulator', './util/index', './util/sanitizer', './util/template-factory'], factory) :\n (global = typeof globalThis !== 'undefined' ? globalThis : global || self, global.Tooltip = factory(global[\"@popperjs/core\"], global.BaseComponent, global.EventHandler, global.Manipulator, global.Index, global.Sanitizer, global.TemplateFactory));\n})(this, (function (Popper, BaseComponent, EventHandler, Manipulator, index_js, sanitizer_js, TemplateFactory) { 'use strict';\n\n function _interopNamespaceDefault(e) {\n const n = Object.create(null, { [Symbol.toStringTag]: { value: 'Module' } });\n if (e) {\n for (const k in e) {\n if (k !== 'default') {\n const d = Object.getOwnPropertyDescriptor(e, k);\n Object.defineProperty(n, k, d.get ? d : {\n enumerable: true,\n get: () => e[k]\n });\n }\n }\n }\n n.default = e;\n return Object.freeze(n);\n }\n\n const Popper__namespace = /*#__PURE__*/_interopNamespaceDefault(Popper);\n\n /**\n * --------------------------------------------------------------------------\n * Bootstrap tooltip.js\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)\n * --------------------------------------------------------------------------\n */\n\n\n /**\n * Constants\n */\n\n const NAME = 'tooltip';\n const DISALLOWED_ATTRIBUTES = new Set(['sanitize', 'allowList', 'sanitizeFn']);\n const CLASS_NAME_FADE = 'fade';\n const CLASS_NAME_MODAL = 'modal';\n const CLASS_NAME_SHOW = 'show';\n const SELECTOR_TOOLTIP_INNER = '.tooltip-inner';\n const SELECTOR_MODAL = `.${CLASS_NAME_MODAL}`;\n const EVENT_MODAL_HIDE = 'hide.bs.modal';\n const TRIGGER_HOVER = 'hover';\n const TRIGGER_FOCUS = 'focus';\n const TRIGGER_CLICK = 'click';\n const TRIGGER_MANUAL = 'manual';\n const EVENT_HIDE = 'hide';\n const EVENT_HIDDEN = 'hidden';\n const EVENT_SHOW = 'show';\n const EVENT_SHOWN = 'shown';\n const EVENT_INSERTED = 'inserted';\n const EVENT_CLICK = 'click';\n const EVENT_FOCUSIN = 'focusin';\n const EVENT_FOCUSOUT = 'focusout';\n const EVENT_MOUSEENTER = 'mouseenter';\n const EVENT_MOUSELEAVE = 'mouseleave';\n const AttachmentMap = {\n AUTO: 'auto',\n TOP: 'top',\n RIGHT: index_js.isRTL() ? 'left' : 'right',\n BOTTOM: 'bottom',\n LEFT: index_js.isRTL() ? 'right' : 'left'\n };\n const Default = {\n allowList: sanitizer_js.DefaultAllowlist,\n animation: true,\n boundary: 'clippingParents',\n container: false,\n customClass: '',\n delay: 0,\n fallbackPlacements: ['top', 'right', 'bottom', 'left'],\n html: false,\n offset: [0, 6],\n placement: 'top',\n popperConfig: null,\n sanitize: true,\n sanitizeFn: null,\n selector: false,\n template: '
' + '
' + '
' + '
',\n title: '',\n trigger: 'hover focus'\n };\n const DefaultType = {\n allowList: 'object',\n animation: 'boolean',\n boundary: '(string|element)',\n container: '(string|element|boolean)',\n customClass: '(string|function)',\n delay: '(number|object)',\n fallbackPlacements: 'array',\n html: 'boolean',\n offset: '(array|string|function)',\n placement: '(string|function)',\n popperConfig: '(null|object|function)',\n sanitize: 'boolean',\n sanitizeFn: '(null|function)',\n selector: '(string|boolean)',\n template: 'string',\n title: '(string|element|function)',\n trigger: 'string'\n };\n\n /**\n * Class definition\n */\n\n class Tooltip extends BaseComponent {\n constructor(element, config) {\n if (typeof Popper__namespace === 'undefined') {\n throw new TypeError('Bootstrap\\'s tooltips require Popper (https://popper.js.org)');\n }\n super(element, config);\n\n // Private\n this._isEnabled = true;\n this._timeout = 0;\n this._isHovered = null;\n this._activeTrigger = {};\n this._popper = null;\n this._templateFactory = null;\n this._newContent = null;\n\n // Protected\n this.tip = null;\n this._setListeners();\n if (!this._config.selector) {\n this._fixTitle();\n }\n }\n\n // Getters\n static get Default() {\n return Default;\n }\n static get DefaultType() {\n return DefaultType;\n }\n static get NAME() {\n return NAME;\n }\n\n // Public\n enable() {\n this._isEnabled = true;\n }\n disable() {\n this._isEnabled = false;\n }\n toggleEnabled() {\n this._isEnabled = !this._isEnabled;\n }\n toggle() {\n if (!this._isEnabled) {\n return;\n }\n this._activeTrigger.click = !this._activeTrigger.click;\n if (this._isShown()) {\n this._leave();\n return;\n }\n this._enter();\n }\n dispose() {\n clearTimeout(this._timeout);\n EventHandler.off(this._element.closest(SELECTOR_MODAL), EVENT_MODAL_HIDE, this._hideModalHandler);\n if (this._element.getAttribute('data-bs-original-title')) {\n this._element.setAttribute('title', this._element.getAttribute('data-bs-original-title'));\n }\n this._disposePopper();\n super.dispose();\n }\n show() {\n if (this._element.style.display === 'none') {\n throw new Error('Please use show on visible elements');\n }\n if (!(this._isWithContent() && this._isEnabled)) {\n return;\n }\n const showEvent = EventHandler.trigger(this._element, this.constructor.eventName(EVENT_SHOW));\n const shadowRoot = index_js.findShadowRoot(this._element);\n const isInTheDom = (shadowRoot || this._element.ownerDocument.documentElement).contains(this._element);\n if (showEvent.defaultPrevented || !isInTheDom) {\n return;\n }\n\n // TODO: v6 remove this or make it optional\n this._disposePopper();\n const tip = this._getTipElement();\n this._element.setAttribute('aria-describedby', tip.getAttribute('id'));\n const {\n container\n } = this._config;\n if (!this._element.ownerDocument.documentElement.contains(this.tip)) {\n container.append(tip);\n EventHandler.trigger(this._element, this.constructor.eventName(EVENT_INSERTED));\n }\n this._popper = this._createPopper(tip);\n tip.classList.add(CLASS_NAME_SHOW);\n\n // If this is a touch-enabled device we add extra\n // empty mouseover listeners to the body's immediate children;\n // only needed because of broken event delegation on iOS\n // https://www.quirksmode.org/blog/archives/2014/02/mouse_event_bub.html\n if ('ontouchstart' in document.documentElement) {\n for (const element of [].concat(...document.body.children)) {\n EventHandler.on(element, 'mouseover', index_js.noop);\n }\n }\n const complete = () => {\n EventHandler.trigger(this._element, this.constructor.eventName(EVENT_SHOWN));\n if (this._isHovered === false) {\n this._leave();\n }\n this._isHovered = false;\n };\n this._queueCallback(complete, this.tip, this._isAnimated());\n }\n hide() {\n if (!this._isShown()) {\n return;\n }\n const hideEvent = EventHandler.trigger(this._element, this.constructor.eventName(EVENT_HIDE));\n if (hideEvent.defaultPrevented) {\n return;\n }\n const tip = this._getTipElement();\n tip.classList.remove(CLASS_NAME_SHOW);\n\n // If this is a touch-enabled device we remove the extra\n // empty mouseover listeners we added for iOS support\n if ('ontouchstart' in document.documentElement) {\n for (const element of [].concat(...document.body.children)) {\n EventHandler.off(element, 'mouseover', index_js.noop);\n }\n }\n this._activeTrigger[TRIGGER_CLICK] = false;\n this._activeTrigger[TRIGGER_FOCUS] = false;\n this._activeTrigger[TRIGGER_HOVER] = false;\n this._isHovered = null; // it is a trick to support manual triggering\n\n const complete = () => {\n if (this._isWithActiveTrigger()) {\n return;\n }\n if (!this._isHovered) {\n this._disposePopper();\n }\n this._element.removeAttribute('aria-describedby');\n EventHandler.trigger(this._element, this.constructor.eventName(EVENT_HIDDEN));\n };\n this._queueCallback(complete, this.tip, this._isAnimated());\n }\n update() {\n if (this._popper) {\n this._popper.update();\n }\n }\n\n // Protected\n _isWithContent() {\n return Boolean(this._getTitle());\n }\n _getTipElement() {\n if (!this.tip) {\n this.tip = this._createTipElement(this._newContent || this._getContentForTemplate());\n }\n return this.tip;\n }\n _createTipElement(content) {\n const tip = this._getTemplateFactory(content).toHtml();\n\n // TODO: remove this check in v6\n if (!tip) {\n return null;\n }\n tip.classList.remove(CLASS_NAME_FADE, CLASS_NAME_SHOW);\n // TODO: v6 the following can be achieved with CSS only\n tip.classList.add(`bs-${this.constructor.NAME}-auto`);\n const tipId = index_js.getUID(this.constructor.NAME).toString();\n tip.setAttribute('id', tipId);\n if (this._isAnimated()) {\n tip.classList.add(CLASS_NAME_FADE);\n }\n return tip;\n }\n setContent(content) {\n this._newContent = content;\n if (this._isShown()) {\n this._disposePopper();\n this.show();\n }\n }\n _getTemplateFactory(content) {\n if (this._templateFactory) {\n this._templateFactory.changeContent(content);\n } else {\n this._templateFactory = new TemplateFactory({\n ...this._config,\n // the `content` var has to be after `this._config`\n // to override config.content in case of popover\n content,\n extraClass: this._resolvePossibleFunction(this._config.customClass)\n });\n }\n return this._templateFactory;\n }\n _getContentForTemplate() {\n return {\n [SELECTOR_TOOLTIP_INNER]: this._getTitle()\n };\n }\n _getTitle() {\n return this._resolvePossibleFunction(this._config.title) || this._element.getAttribute('data-bs-original-title');\n }\n\n // Private\n _initializeOnDelegatedTarget(event) {\n return this.constructor.getOrCreateInstance(event.delegateTarget, this._getDelegateConfig());\n }\n _isAnimated() {\n return this._config.animation || this.tip && this.tip.classList.contains(CLASS_NAME_FADE);\n }\n _isShown() {\n return this.tip && this.tip.classList.contains(CLASS_NAME_SHOW);\n }\n _createPopper(tip) {\n const placement = index_js.execute(this._config.placement, [this, tip, this._element]);\n const attachment = AttachmentMap[placement.toUpperCase()];\n return Popper__namespace.createPopper(this._element, tip, this._getPopperConfig(attachment));\n }\n _getOffset() {\n const {\n offset\n } = this._config;\n if (typeof offset === 'string') {\n return offset.split(',').map(value => Number.parseInt(value, 10));\n }\n if (typeof offset === 'function') {\n return popperData => offset(popperData, this._element);\n }\n return offset;\n }\n _resolvePossibleFunction(arg) {\n return index_js.execute(arg, [this._element]);\n }\n _getPopperConfig(attachment) {\n const defaultBsPopperConfig = {\n placement: attachment,\n modifiers: [{\n name: 'flip',\n options: {\n fallbackPlacements: this._config.fallbackPlacements\n }\n }, {\n name: 'offset',\n options: {\n offset: this._getOffset()\n }\n }, {\n name: 'preventOverflow',\n options: {\n boundary: this._config.boundary\n }\n }, {\n name: 'arrow',\n options: {\n element: `.${this.constructor.NAME}-arrow`\n }\n }, {\n name: 'preSetPlacement',\n enabled: true,\n phase: 'beforeMain',\n fn: data => {\n // Pre-set Popper's placement attribute in order to read the arrow sizes properly.\n // Otherwise, Popper mixes up the width and height dimensions since the initial arrow style is for top placement\n this._getTipElement().setAttribute('data-popper-placement', data.state.placement);\n }\n }]\n };\n return {\n ...defaultBsPopperConfig,\n ...index_js.execute(this._config.popperConfig, [defaultBsPopperConfig])\n };\n }\n _setListeners() {\n const triggers = this._config.trigger.split(' ');\n for (const trigger of triggers) {\n if (trigger === 'click') {\n EventHandler.on(this._element, this.constructor.eventName(EVENT_CLICK), this._config.selector, event => {\n const context = this._initializeOnDelegatedTarget(event);\n context.toggle();\n });\n } else if (trigger !== TRIGGER_MANUAL) {\n const eventIn = trigger === TRIGGER_HOVER ? this.constructor.eventName(EVENT_MOUSEENTER) : this.constructor.eventName(EVENT_FOCUSIN);\n const eventOut = trigger === TRIGGER_HOVER ? this.constructor.eventName(EVENT_MOUSELEAVE) : this.constructor.eventName(EVENT_FOCUSOUT);\n EventHandler.on(this._element, eventIn, this._config.selector, event => {\n const context = this._initializeOnDelegatedTarget(event);\n context._activeTrigger[event.type === 'focusin' ? TRIGGER_FOCUS : TRIGGER_HOVER] = true;\n context._enter();\n });\n EventHandler.on(this._element, eventOut, this._config.selector, event => {\n const context = this._initializeOnDelegatedTarget(event);\n context._activeTrigger[event.type === 'focusout' ? TRIGGER_FOCUS : TRIGGER_HOVER] = context._element.contains(event.relatedTarget);\n context._leave();\n });\n }\n }\n this._hideModalHandler = () => {\n if (this._element) {\n this.hide();\n }\n };\n EventHandler.on(this._element.closest(SELECTOR_MODAL), EVENT_MODAL_HIDE, this._hideModalHandler);\n }\n _fixTitle() {\n const title = this._element.getAttribute('title');\n if (!title) {\n return;\n }\n if (!this._element.getAttribute('aria-label') && !this._element.textContent.trim()) {\n this._element.setAttribute('aria-label', title);\n }\n this._element.setAttribute('data-bs-original-title', title); // DO NOT USE IT. Is only for backwards compatibility\n this._element.removeAttribute('title');\n }\n _enter() {\n if (this._isShown() || this._isHovered) {\n this._isHovered = true;\n return;\n }\n this._isHovered = true;\n this._setTimeout(() => {\n if (this._isHovered) {\n this.show();\n }\n }, this._config.delay.show);\n }\n _leave() {\n if (this._isWithActiveTrigger()) {\n return;\n }\n this._isHovered = false;\n this._setTimeout(() => {\n if (!this._isHovered) {\n this.hide();\n }\n }, this._config.delay.hide);\n }\n _setTimeout(handler, timeout) {\n clearTimeout(this._timeout);\n this._timeout = setTimeout(handler, timeout);\n }\n _isWithActiveTrigger() {\n return Object.values(this._activeTrigger).includes(true);\n }\n _getConfig(config) {\n const dataAttributes = Manipulator.getDataAttributes(this._element);\n for (const dataAttribute of Object.keys(dataAttributes)) {\n if (DISALLOWED_ATTRIBUTES.has(dataAttribute)) {\n delete dataAttributes[dataAttribute];\n }\n }\n config = {\n ...dataAttributes,\n ...(typeof config === 'object' && config ? config : {})\n };\n config = this._mergeConfigObj(config);\n config = this._configAfterMerge(config);\n this._typeCheckConfig(config);\n return config;\n }\n _configAfterMerge(config) {\n config.container = config.container === false ? document.body : index_js.getElement(config.container);\n if (typeof config.delay === 'number') {\n config.delay = {\n show: config.delay,\n hide: config.delay\n };\n }\n if (typeof config.title === 'number') {\n config.title = config.title.toString();\n }\n if (typeof config.content === 'number') {\n config.content = config.content.toString();\n }\n return config;\n }\n _getDelegateConfig() {\n const config = {};\n for (const [key, value] of Object.entries(this._config)) {\n if (this.constructor.Default[key] !== value) {\n config[key] = value;\n }\n }\n config.selector = false;\n config.trigger = 'manual';\n\n // In the future can be replaced with:\n // const keysWithDifferentValues = Object.entries(this._config).filter(entry => this.constructor.Default[entry[0]] !== this._config[entry[0]])\n // `Object.fromEntries(keysWithDifferentValues)`\n return config;\n }\n _disposePopper() {\n if (this._popper) {\n this._popper.destroy();\n this._popper = null;\n }\n if (this.tip) {\n this.tip.remove();\n this.tip = null;\n }\n }\n\n // Static\n static jQueryInterface(config) {\n return this.each(function () {\n const data = Tooltip.getOrCreateInstance(this, config);\n if (typeof config !== 'string') {\n return;\n }\n if (typeof data[config] === 'undefined') {\n throw new TypeError(`No method named \"${config}\"`);\n }\n data[config]();\n });\n }\n }\n\n /**\n * jQuery\n */\n\n index_js.defineJQueryPlugin(Tooltip);\n\n return Tooltip;\n\n}));\n//# sourceMappingURL=tooltip.js.map\n","/*!\n * Bootstrap sanitizer.js v5.3.3 (https://getbootstrap.com/)\n * Copyright 2011-2024 The Bootstrap Authors (https://github.com/twbs/bootstrap/graphs/contributors)\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)\n */\n(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined' ? factory(exports) :\n typeof define === 'function' && define.amd ? define(['exports'], factory) :\n (global = typeof globalThis !== 'undefined' ? globalThis : global || self, factory(global.Sanitizer = {}));\n})(this, (function (exports) { 'use strict';\n\n /**\n * --------------------------------------------------------------------------\n * Bootstrap util/sanitizer.js\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)\n * --------------------------------------------------------------------------\n */\n\n // js-docs-start allow-list\n const ARIA_ATTRIBUTE_PATTERN = /^aria-[\\w-]*$/i;\n const DefaultAllowlist = {\n // Global attributes allowed on any supplied element below.\n '*': ['class', 'dir', 'id', 'lang', 'role', ARIA_ATTRIBUTE_PATTERN],\n a: ['target', 'href', 'title', 'rel'],\n area: [],\n b: [],\n br: [],\n col: [],\n code: [],\n dd: [],\n div: [],\n dl: [],\n dt: [],\n em: [],\n hr: [],\n h1: [],\n h2: [],\n h3: [],\n h4: [],\n h5: [],\n h6: [],\n i: [],\n img: ['src', 'srcset', 'alt', 'title', 'width', 'height'],\n li: [],\n ol: [],\n p: [],\n pre: [],\n s: [],\n small: [],\n span: [],\n sub: [],\n sup: [],\n strong: [],\n u: [],\n ul: []\n };\n // js-docs-end allow-list\n\n const uriAttributes = new Set(['background', 'cite', 'href', 'itemtype', 'longdesc', 'poster', 'src', 'xlink:href']);\n\n /**\n * A pattern that recognizes URLs that are safe wrt. XSS in URL navigation\n * contexts.\n *\n * Shout-out to Angular https://github.com/angular/angular/blob/15.2.8/packages/core/src/sanitization/url_sanitizer.ts#L38\n */\n // eslint-disable-next-line unicorn/better-regex\n const SAFE_URL_PATTERN = /^(?!javascript:)(?:[a-z0-9+.-]+:|[^&:/?#]*(?:[/?#]|$))/i;\n const allowedAttribute = (attribute, allowedAttributeList) => {\n const attributeName = attribute.nodeName.toLowerCase();\n if (allowedAttributeList.includes(attributeName)) {\n if (uriAttributes.has(attributeName)) {\n return Boolean(SAFE_URL_PATTERN.test(attribute.nodeValue));\n }\n return true;\n }\n\n // Check if a regular expression validates the attribute.\n return allowedAttributeList.filter(attributeRegex => attributeRegex instanceof RegExp).some(regex => regex.test(attributeName));\n };\n function sanitizeHtml(unsafeHtml, allowList, sanitizeFunction) {\n if (!unsafeHtml.length) {\n return unsafeHtml;\n }\n if (sanitizeFunction && typeof sanitizeFunction === 'function') {\n return sanitizeFunction(unsafeHtml);\n }\n const domParser = new window.DOMParser();\n const createdDocument = domParser.parseFromString(unsafeHtml, 'text/html');\n const elements = [].concat(...createdDocument.body.querySelectorAll('*'));\n for (const element of elements) {\n const elementName = element.nodeName.toLowerCase();\n if (!Object.keys(allowList).includes(elementName)) {\n element.remove();\n continue;\n }\n const attributeList = [].concat(...element.attributes);\n const allowedAttributes = [].concat(allowList['*'] || [], allowList[elementName] || []);\n for (const attribute of attributeList) {\n if (!allowedAttribute(attribute, allowedAttributes)) {\n element.removeAttribute(attribute.nodeName);\n }\n }\n }\n return createdDocument.body.innerHTML;\n }\n\n exports.DefaultAllowlist = DefaultAllowlist;\n exports.sanitizeHtml = sanitizeHtml;\n\n Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n\n}));\n//# sourceMappingURL=sanitizer.js.map\n","/*!\n * Bootstrap template-factory.js v5.3.3 (https://getbootstrap.com/)\n * Copyright 2011-2024 The Bootstrap Authors (https://github.com/twbs/bootstrap/graphs/contributors)\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)\n */\n(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined' ? module.exports = factory(require('../dom/selector-engine.js'), require('./config.js'), require('./sanitizer.js'), require('./index.js')) :\n typeof define === 'function' && define.amd ? define(['../dom/selector-engine', './config', './sanitizer', './index'], factory) :\n (global = typeof globalThis !== 'undefined' ? globalThis : global || self, global.TemplateFactory = factory(global.SelectorEngine, global.Config, global.Sanitizer, global.Index));\n})(this, (function (SelectorEngine, Config, sanitizer_js, index_js) { 'use strict';\n\n /**\n * --------------------------------------------------------------------------\n * Bootstrap util/template-factory.js\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)\n * --------------------------------------------------------------------------\n */\n\n\n /**\n * Constants\n */\n\n const NAME = 'TemplateFactory';\n const Default = {\n allowList: sanitizer_js.DefaultAllowlist,\n content: {},\n // { selector : text , selector2 : text2 , }\n extraClass: '',\n html: false,\n sanitize: true,\n sanitizeFn: null,\n template: '
'\n };\n const DefaultType = {\n allowList: 'object',\n content: 'object',\n extraClass: '(string|function)',\n html: 'boolean',\n sanitize: 'boolean',\n sanitizeFn: '(null|function)',\n template: 'string'\n };\n const DefaultContentType = {\n entry: '(string|element|function|null)',\n selector: '(string|element)'\n };\n\n /**\n * Class definition\n */\n\n class TemplateFactory extends Config {\n constructor(config) {\n super();\n this._config = this._getConfig(config);\n }\n\n // Getters\n static get Default() {\n return Default;\n }\n static get DefaultType() {\n return DefaultType;\n }\n static get NAME() {\n return NAME;\n }\n\n // Public\n getContent() {\n return Object.values(this._config.content).map(config => this._resolvePossibleFunction(config)).filter(Boolean);\n }\n hasContent() {\n return this.getContent().length > 0;\n }\n changeContent(content) {\n this._checkContent(content);\n this._config.content = {\n ...this._config.content,\n ...content\n };\n return this;\n }\n toHtml() {\n const templateWrapper = document.createElement('div');\n templateWrapper.innerHTML = this._maybeSanitize(this._config.template);\n for (const [selector, text] of Object.entries(this._config.content)) {\n this._setContent(templateWrapper, text, selector);\n }\n const template = templateWrapper.children[0];\n const extraClass = this._resolvePossibleFunction(this._config.extraClass);\n if (extraClass) {\n template.classList.add(...extraClass.split(' '));\n }\n return template;\n }\n\n // Private\n _typeCheckConfig(config) {\n super._typeCheckConfig(config);\n this._checkContent(config.content);\n }\n _checkContent(arg) {\n for (const [selector, content] of Object.entries(arg)) {\n super._typeCheckConfig({\n selector,\n entry: content\n }, DefaultContentType);\n }\n }\n _setContent(template, content, selector) {\n const templateElement = SelectorEngine.findOne(selector, template);\n if (!templateElement) {\n return;\n }\n content = this._resolvePossibleFunction(content);\n if (!content) {\n templateElement.remove();\n return;\n }\n if (index_js.isElement(content)) {\n this._putElementInTemplate(index_js.getElement(content), templateElement);\n return;\n }\n if (this._config.html) {\n templateElement.innerHTML = this._maybeSanitize(content);\n return;\n }\n templateElement.textContent = content;\n }\n _maybeSanitize(arg) {\n return this._config.sanitize ? sanitizer_js.sanitizeHtml(arg, this._config.allowList, this._config.sanitizeFn) : arg;\n }\n _resolvePossibleFunction(arg) {\n return index_js.execute(arg, [this]);\n }\n _putElementInTemplate(element, templateElement) {\n if (this._config.html) {\n templateElement.innerHTML = '';\n templateElement.append(element);\n return;\n }\n templateElement.textContent = element.textContent;\n }\n }\n\n return TemplateFactory;\n\n}));\n//# sourceMappingURL=template-factory.js.map\n"],"names":["window","$","jQuery","SELECT","opinionsFilter","init","this","bindEvents","document","querySelectorAll","forEach","element","addEventListener","$container","closest","hideAllTooltips","Tooltip","trigger","placement","html","container","title","boundary","body","show","doSearchByForm","querySelector","event","preventDefault","form","count","doSearchByFormParams","FormData","doSearch","params","innerHTML","sort","value","modelId","set","config","then","response","scrollIntoView","block","behavior","console","log","tooltip","hide","module","exports","Popper","BaseComponent","EventHandler","Manipulator","index_js","sanitizer_js","TemplateFactory","_interopNamespaceDefault","e","n","Object","create","Symbol","toStringTag","k","d","getOwnPropertyDescriptor","defineProperty","get","enumerable","default","freeze","Popper__namespace","NAME","DISALLOWED_ATTRIBUTES","Set","CLASS_NAME_FADE","CLASS_NAME_SHOW","SELECTOR_TOOLTIP_INNER","SELECTOR_MODAL","EVENT_MODAL_HIDE","TRIGGER_HOVER","TRIGGER_FOCUS","TRIGGER_CLICK","TRIGGER_MANUAL","EVENT_HIDE","EVENT_HIDDEN","EVENT_SHOW","EVENT_SHOWN","EVENT_INSERTED","EVENT_CLICK","EVENT_FOCUSIN","EVENT_FOCUSOUT","EVENT_MOUSEENTER","EVENT_MOUSELEAVE","AttachmentMap","AUTO","TOP","RIGHT","isRTL","BOTTOM","LEFT","Default","allowList","DefaultAllowlist","animation","customClass","delay","fallbackPlacements","offset","popperConfig","sanitize","sanitizeFn","selector","template","DefaultType","constructor","TypeError","super","_isEnabled","_timeout","_isHovered","_activeTrigger","_popper","_templateFactory","_newContent","tip","_setListeners","_config","_fixTitle","enable","disable","toggleEnabled","toggle","click","_isShown","_leave","_enter","dispose","clearTimeout","off","_element","_hideModalHandler","getAttribute","setAttribute","_disposePopper","style","display","Error","_isWithContent","showEvent","eventName","isInTheDom","findShadowRoot","ownerDocument","documentElement","contains","defaultPrevented","_getTipElement","append","_createPopper","classList","add","concat","children","on","noop","complete","_queueCallback","_isAnimated","remove","_isWithActiveTrigger","removeAttribute","update","Boolean","_getTitle","_createTipElement","_getContentForTemplate","content","_getTemplateFactory","toHtml","tipId","getUID","toString","setContent","changeContent","extraClass","_resolvePossibleFunction","_initializeOnDelegatedTarget","getOrCreateInstance","delegateTarget","_getDelegateConfig","execute","attachment","toUpperCase","createPopper","_getPopperConfig","_getOffset","split","map","Number","parseInt","popperData","arg","defaultBsPopperConfig","modifiers","name","options","enabled","phase","fn","data","state","triggers","eventIn","eventOut","context","type","relatedTarget","textContent","trim","_setTimeout","handler","timeout","setTimeout","values","includes","_getConfig","dataAttributes","getDataAttributes","dataAttribute","keys","has","_mergeConfigObj","_configAfterMerge","_typeCheckConfig","getElement","key","entries","destroy","static","each","defineJQueryPlugin","factory","a","area","b","br","col","code","dd","div","dl","dt","em","hr","h1","h2","h3","h4","h5","h6","i","img","li","ol","p","pre","s","small","span","sub","sup","strong","u","ul","uriAttributes","SAFE_URL_PATTERN","allowedAttribute","attribute","allowedAttributeList","attributeName","nodeName","toLowerCase","test","nodeValue","filter","attributeRegex","RegExp","some","regex","sanitizeHtml","unsafeHtml","sanitizeFunction","length","createdDocument","DOMParser","parseFromString","elements","elementName","attributeList","attributes","allowedAttributes","SelectorEngine","Config","DefaultContentType","entry","getContent","hasContent","_checkContent","templateWrapper","createElement","_maybeSanitize","text","_setContent","templateElement","findOne","isElement","_putElementInTemplate"],"sourceRoot":""}