bootstrap-italia 2.11.2 → 2.12.0

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.
Files changed (68) hide show
  1. package/dist/css/bootstrap-italia.min.css +1 -1
  2. package/dist/css/bootstrap-italia.min.css.map +1 -1
  3. package/dist/js/bootstrap-italia.bundle.min.js +17 -510
  4. package/dist/js/bootstrap-italia.min.js +3 -234
  5. package/dist/plugins/accept-overlay.js.map +1 -1
  6. package/dist/plugins/accordion.js.map +1 -1
  7. package/dist/plugins/backToTop.js.map +1 -1
  8. package/dist/plugins/carousel-bi.js.map +1 -1
  9. package/dist/plugins/cookiebar.js.map +1 -1
  10. package/dist/plugins/dimmer.js.map +1 -1
  11. package/dist/plugins/fonts-loader.js.map +1 -1
  12. package/dist/plugins/form-validate.js.map +1 -1
  13. package/dist/plugins/forward.js.map +1 -1
  14. package/dist/plugins/header-sticky.js +0 -1
  15. package/dist/plugins/header-sticky.js.map +1 -1
  16. package/dist/plugins/history-back.js.map +1 -1
  17. package/dist/plugins/init.js.map +1 -1
  18. package/dist/plugins/input-label.js.map +1 -1
  19. package/dist/plugins/input-number.js.map +1 -1
  20. package/dist/plugins/input-password.js.map +1 -1
  21. package/dist/plugins/input-search-autocomplete.js +1 -0
  22. package/dist/plugins/input-search-autocomplete.js.map +1 -1
  23. package/dist/plugins/input.js.map +1 -1
  24. package/dist/plugins/list.js.map +1 -1
  25. package/dist/plugins/masonry.js.map +1 -1
  26. package/dist/plugins/navbar-collapsible.js.map +1 -1
  27. package/dist/plugins/navscroll.js.map +1 -1
  28. package/dist/plugins/notification.js.map +1 -1
  29. package/dist/plugins/progress-donut.js.map +1 -1
  30. package/dist/plugins/select-autocomplete.js.map +1 -1
  31. package/dist/plugins/sticky.js.map +1 -1
  32. package/dist/plugins/tab.js.map +1 -1
  33. package/dist/plugins/track-focus.js.map +1 -1
  34. package/dist/plugins/transfer.js.map +1 -1
  35. package/dist/plugins/upload-dragdrop.js.map +1 -1
  36. package/dist/plugins/util/cookies.js.map +1 -1
  37. package/dist/plugins/util/device.js.map +1 -1
  38. package/dist/plugins/util/dom.js.map +1 -1
  39. package/dist/plugins/util/observer.js +2 -2
  40. package/dist/plugins/util/observer.js.map +1 -1
  41. package/dist/plugins/util/on-document-scroll.js.map +1 -1
  42. package/dist/plugins/util/pageScroll.js.map +1 -1
  43. package/dist/plugins/util/tween.js.map +1 -1
  44. package/dist/plugins/util/youtube-video.js.map +1 -1
  45. package/dist/plugins/videoplayer.js.map +1 -1
  46. package/dist/version.js +2 -2
  47. package/dist/version.js.map +1 -1
  48. package/package.json +24 -22
  49. package/src/js/plugins/header-sticky.js +0 -1
  50. package/src/js/plugins/util/observer.js +2 -2
  51. package/src/js/version.js +2 -2
  52. package/src/scss/_variables.scss +3 -4
  53. package/src/scss/custom/_back-to-top.scss +10 -2
  54. package/src/scss/custom/_badge.scss +5 -1
  55. package/src/scss/custom/_buttons.scss +2 -20
  56. package/src/scss/custom/_card.scss +15 -5
  57. package/src/scss/custom/_carousel.scss +6 -0
  58. package/src/scss/custom/_chips.scss +6 -9
  59. package/src/scss/custom/_form-datepicker.scss +0 -1
  60. package/src/scss/custom/_form-input-file.scss +0 -1
  61. package/src/scss/custom/_form-input-upload.scss +4 -10
  62. package/src/scss/custom/_form-toggles.scss +4 -1
  63. package/src/scss/custom/_forms.scss +24 -14
  64. package/src/scss/custom/_navscroll.scss +6 -2
  65. package/src/scss/custom/_version.scss +1 -1
  66. package/src/scss/custom/mixins/_buttons.scss +11 -42
  67. package/src/scss/utilities/colors_vars.scss +1 -0
  68. package/src/scss/utilities/focus.scss +76 -4
@@ -1 +1 @@
1
- {"version":3,"file":"progress-donut.js","sources":["../../src/js/plugins/progress-donut.js"],"sourcesContent":["import ProgressBar from 'progressbar.js'\nimport BaseComponent from 'bootstrap/js/src/base-component.js'\n\n//import EventHandler from 'bootstrap/js/src/dom/event-handler'\nimport SelectorEngine from 'bootstrap/js/src/dom/selector-engine'\nimport Manipulator from 'bootstrap/js/src/dom/manipulator'\n\nconst NAME = 'progressdonut'\n//const DATA_KEY = 'bs.progressdonut'\n//const EVENT_KEY = `.${DATA_KEY}`\n//const DATA_API_KEY = '.data-api'\n\nconst SELECTOR_DONUT = '[data-bs-progress-donut]'\n\nconst Default = {\n color: '#5C6F82',\n trailColor: '#D9DADB',\n // This has to be the same size as the maximum width to\n // prevent clipping\n strokeWidth: 24,\n trailWidth: 12,\n easing: 'easeInOut',\n duration: 1400,\n text: {\n autoStyleContainer: false,\n },\n animate: true,\n value: 0,\n //from: { color: '#aaa', width: 1 },\n //to: { color: '#333', width: 4 },\n}\n\nclass ProgressDonut extends BaseComponent {\n constructor(element, config) {\n super(element)\n\n this._config = this._getConfig(config)\n this._bar = null\n\n this._init()\n }\n\n // Getters\n\n static get NAME() {\n return NAME\n }\n\n // Public\n set(progess) {\n if (this._config.animate) {\n this._bar.animate(progess)\n } else {\n this._bar.set(progess)\n }\n }\n\n dispose() {\n this._bar.destroy()\n\n super.dispose()\n }\n\n // Private\n _getConfig(config) {\n config = {\n ...Default,\n ...{ step: this._getStepCallback() },\n ...Manipulator.getDataAttributes(this._element),\n ...(typeof config === 'object' ? config : {}),\n }\n //config.value = parseFloat(config.value)\n return config\n }\n\n _getStepCallback() {\n return (state, circle) => {\n //circle.path.setAttribute('stroke', state.color)\n //circle.path.setAttribute('stroke-width', state.width)\n\n const value = Math.round(circle.value() * 100)\n circle.setText(value + '%')\n /*if (value === 0) {\n circle.setText('')\n } else {\n circle.setText(value)\n }*/\n }\n }\n\n _init() {\n this._bar = new ProgressBar.Circle(this._element, this._config)\n\n if (this._config.value > 0) {\n this.set(this._config.value)\n }\n }\n}\n\n/**\n * ------------------------------------------------------------------------\n * Data Api implementation\n * ------------------------------------------------------------------------\n */\n\nSelectorEngine.find(SELECTOR_DONUT).forEach((donut) => {\n ProgressDonut.getOrCreateInstance(donut)\n})\n\nexport default ProgressDonut\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"progress-donut.js","sources":["../../src/js/plugins/progress-donut.js"],"sourcesContent":["import ProgressBar from 'progressbar.js'\nimport BaseComponent from 'bootstrap/js/src/base-component.js'\n\n//import EventHandler from 'bootstrap/js/src/dom/event-handler'\nimport SelectorEngine from 'bootstrap/js/src/dom/selector-engine'\nimport Manipulator from 'bootstrap/js/src/dom/manipulator'\n\nconst NAME = 'progressdonut'\n//const DATA_KEY = 'bs.progressdonut'\n//const EVENT_KEY = `.${DATA_KEY}`\n//const DATA_API_KEY = '.data-api'\n\nconst SELECTOR_DONUT = '[data-bs-progress-donut]'\n\nconst Default = {\n color: '#5C6F82',\n trailColor: '#D9DADB',\n // This has to be the same size as the maximum width to\n // prevent clipping\n strokeWidth: 24,\n trailWidth: 12,\n easing: 'easeInOut',\n duration: 1400,\n text: {\n autoStyleContainer: false,\n },\n animate: true,\n value: 0,\n //from: { color: '#aaa', width: 1 },\n //to: { color: '#333', width: 4 },\n}\n\nclass ProgressDonut extends BaseComponent {\n constructor(element, config) {\n super(element)\n\n this._config = this._getConfig(config)\n this._bar = null\n\n this._init()\n }\n\n // Getters\n\n static get NAME() {\n return NAME\n }\n\n // Public\n set(progess) {\n if (this._config.animate) {\n this._bar.animate(progess)\n } else {\n this._bar.set(progess)\n }\n }\n\n dispose() {\n this._bar.destroy()\n\n super.dispose()\n }\n\n // Private\n _getConfig(config) {\n config = {\n ...Default,\n ...{ step: this._getStepCallback() },\n ...Manipulator.getDataAttributes(this._element),\n ...(typeof config === 'object' ? config : {}),\n }\n //config.value = parseFloat(config.value)\n return config\n }\n\n _getStepCallback() {\n return (state, circle) => {\n //circle.path.setAttribute('stroke', state.color)\n //circle.path.setAttribute('stroke-width', state.width)\n\n const value = Math.round(circle.value() * 100)\n circle.setText(value + '%')\n /*if (value === 0) {\n circle.setText('')\n } else {\n circle.setText(value)\n }*/\n }\n }\n\n _init() {\n this._bar = new ProgressBar.Circle(this._element, this._config)\n\n if (this._config.value > 0) {\n this.set(this._config.value)\n }\n }\n}\n\n/**\n * ------------------------------------------------------------------------\n * Data Api implementation\n * ------------------------------------------------------------------------\n */\n\nSelectorEngine.find(SELECTOR_DONUT).forEach((donut) => {\n ProgressDonut.getOrCreateInstance(donut)\n})\n\nexport default ProgressDonut\n"],"names":[],"mappings":";;;;;AAOA,MAAM,IAAI,GAAG;AACb;AACA;AACA;;AAEA,MAAM,cAAc,GAAG;;AAEvB,MAAM,OAAO,GAAG;AAChB,EAAE,KAAK,EAAE,SAAS;AAClB,EAAE,UAAU,EAAE,SAAS;AACvB;AACA;AACA,EAAE,WAAW,EAAE,EAAE;AACjB,EAAE,UAAU,EAAE,EAAE;AAChB,EAAE,MAAM,EAAE,WAAW;AACrB,EAAE,QAAQ,EAAE,IAAI;AAChB,EAAE,IAAI,EAAE;AACR,IAAI,kBAAkB,EAAE,KAAK;AAC7B,GAAG;AACH,EAAE,OAAO,EAAE,IAAI;AACf,EAAE,KAAK,EAAE,CAAC;AACV;AACA;AACA;;AAEA,MAAM,aAAa,SAAS,aAAa,CAAC;AAC1C,EAAE,WAAW,CAAC,OAAO,EAAE,MAAM,EAAE;AAC/B,IAAI,KAAK,CAAC,OAAO;;AAEjB,IAAI,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC,UAAU,CAAC,MAAM;AACzC,IAAI,IAAI,CAAC,IAAI,GAAG;;AAEhB,IAAI,IAAI,CAAC,KAAK;AACd;;AAEA;;AAEA,EAAE,WAAW,IAAI,GAAG;AACpB,IAAI,OAAO;AACX;;AAEA;AACA,EAAE,GAAG,CAAC,OAAO,EAAE;AACf,IAAI,IAAI,IAAI,CAAC,OAAO,CAAC,OAAO,EAAE;AAC9B,MAAM,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,OAAO;AAC/B,KAAK,MAAM;AACX,MAAM,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,OAAO;AAC3B;AACA;;AAEA,EAAE,OAAO,GAAG;AACZ,IAAI,IAAI,CAAC,IAAI,CAAC,OAAO;;AAErB,IAAI,KAAK,CAAC,OAAO;AACjB;;AAEA;AACA,EAAE,UAAU,CAAC,MAAM,EAAE;AACrB,IAAI,MAAM,GAAG;AACb,MAAM,GAAG,OAAO;AAChB,MAAM,GAAG,EAAE,IAAI,EAAE,IAAI,CAAC,gBAAgB,EAAE,EAAE;AAC1C,MAAM,GAAG,WAAW,CAAC,iBAAiB,CAAC,IAAI,CAAC,QAAQ,CAAC;AACrD,MAAM,IAAI,OAAO,MAAM,KAAK,QAAQ,GAAG,MAAM,GAAG,EAAE,CAAC;AACnD;AACA;AACA,IAAI,OAAO;AACX;;AAEA,EAAE,gBAAgB,GAAG;AACrB,IAAI,OAAO,CAAC,KAAK,EAAE,MAAM,KAAK;AAC9B;AACA;;AAEA,MAAM,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,KAAK,EAAE,GAAG,GAAG;AACnD,MAAM,MAAM,CAAC,OAAO,CAAC,KAAK,GAAG,GAAG;AAChC;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA,EAAE,KAAK,GAAG;AACV,IAAI,IAAI,CAAC,IAAI,GAAG,IAAI,WAAW,CAAC,MAAM,CAAC,IAAI,CAAC,QAAQ,EAAE,IAAI,CAAC,OAAO;;AAElE,IAAI,IAAI,IAAI,CAAC,OAAO,CAAC,KAAK,GAAG,CAAC,EAAE;AAChC,MAAM,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,OAAO,CAAC,KAAK;AACjC;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA,cAAc,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC,OAAO,CAAC,CAAC,KAAK,KAAK;AACvD,EAAE,aAAa,CAAC,mBAAmB,CAAC,KAAK;AACzC,CAAC;;;;"}
@@ -1 +1 @@
1
- {"version":3,"file":"select-autocomplete.js","sources":["../../src/js/plugins/select-autocomplete.js"],"sourcesContent":["import accessibleAutocomplete from 'accessible-autocomplete'\n\nimport BaseComponent from 'bootstrap/js/src/base-component.js'\n\nconst NAME = 'selectautocomplete'\n\nfunction onClassChange(element, callback) {\n const observer = new MutationObserver((mutations) => {\n mutations.forEach((mutation) => {\n if (mutation.type === 'attributes' && mutation.attributeName === 'class') {\n callback(mutation.target)\n }\n })\n })\n observer.observe(element, { attributes: true })\n return observer.disconnect\n}\n\nclass SelectAutocomplete extends BaseComponent {\n constructor(element, config) {\n super(element)\n this._hasFormControl = element.classList.contains('form-control')\n this.element_original_id = this._element.id\n this._config = config\n if (!this._config.tAssistiveHint)\n this._config.tAssistiveHint = () =>\n 'Quando i risultati del completamento automatico sono disponibili, usa le frecce su e giù per rivedere e Invio per selezionare. Utenti di dispositivi touch, esplora tramite tocco o con gesti di scorrimento'\n if (!this._config.tNoResults) this._config.tNoResults = () => 'Nessun risultato trovato'\n if (!this._config.tStatusQueryTooShort)\n this._config.tStatusQueryTooShort = (minQueryLength) => `Digita ${minQueryLength} o più caratteri per mostrare le opzioni di ricerca`\n if (!this._config.tStatusNoResults) this._config.tStatusNoResults = () => 'Nessun risultato di ricerca'\n if (!this._config.tStatusSelectedOption)\n this._config.tStatusSelectedOption = (selectedOption, length, index) => `${selectedOption} ${index + 1} di ${length} è sottolineato`\n if (!this._config.tStatusResults)\n this._config.tStatusResults = (length, contentSelectedOption) => {\n const words = {\n result: length === 1 ? 'risultato' : 'risultati',\n is: length === 1 ? 'è' : 'sono',\n available: length === 1 ? 'disponibile' : 'disponibili',\n }\n\n return `${length} ${words.result} ${words.is} ${words.available}. ${contentSelectedOption}`\n }\n this._enhance()\n }\n\n // Getters\n\n static get NAME() {\n return NAME\n }\n\n // Private\n _enhance() {\n accessibleAutocomplete.enhanceSelectElement(Object.assign({}, { selectElement: this._element }, this._config))\n setTimeout(() => {\n if (this._hasFormControl) {\n if (typeof document === 'undefined') {\n return\n }\n const inputField = document.getElementById(this.element_original_id)\n inputField.classList.add('form-control')\n onClassChange(inputField, (node) => {\n if (!node.classList.contains('form-control')) {\n node.classList.add('form-control')\n }\n })\n }\n }, 100)\n }\n}\n\n/**\n * ------------------------------------------------------------------------\n * Data Api implementation\n * ------------------------------------------------------------------------\n */\n\nexport default SelectAutocomplete\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"select-autocomplete.js","sources":["../../src/js/plugins/select-autocomplete.js"],"sourcesContent":["import accessibleAutocomplete from 'accessible-autocomplete'\n\nimport BaseComponent from 'bootstrap/js/src/base-component.js'\n\nconst NAME = 'selectautocomplete'\n\nfunction onClassChange(element, callback) {\n const observer = new MutationObserver((mutations) => {\n mutations.forEach((mutation) => {\n if (mutation.type === 'attributes' && mutation.attributeName === 'class') {\n callback(mutation.target)\n }\n })\n })\n observer.observe(element, { attributes: true })\n return observer.disconnect\n}\n\nclass SelectAutocomplete extends BaseComponent {\n constructor(element, config) {\n super(element)\n this._hasFormControl = element.classList.contains('form-control')\n this.element_original_id = this._element.id\n this._config = config\n if (!this._config.tAssistiveHint)\n this._config.tAssistiveHint = () =>\n 'Quando i risultati del completamento automatico sono disponibili, usa le frecce su e giù per rivedere e Invio per selezionare. Utenti di dispositivi touch, esplora tramite tocco o con gesti di scorrimento'\n if (!this._config.tNoResults) this._config.tNoResults = () => 'Nessun risultato trovato'\n if (!this._config.tStatusQueryTooShort)\n this._config.tStatusQueryTooShort = (minQueryLength) => `Digita ${minQueryLength} o più caratteri per mostrare le opzioni di ricerca`\n if (!this._config.tStatusNoResults) this._config.tStatusNoResults = () => 'Nessun risultato di ricerca'\n if (!this._config.tStatusSelectedOption)\n this._config.tStatusSelectedOption = (selectedOption, length, index) => `${selectedOption} ${index + 1} di ${length} è sottolineato`\n if (!this._config.tStatusResults)\n this._config.tStatusResults = (length, contentSelectedOption) => {\n const words = {\n result: length === 1 ? 'risultato' : 'risultati',\n is: length === 1 ? 'è' : 'sono',\n available: length === 1 ? 'disponibile' : 'disponibili',\n }\n\n return `${length} ${words.result} ${words.is} ${words.available}. ${contentSelectedOption}`\n }\n this._enhance()\n }\n\n // Getters\n\n static get NAME() {\n return NAME\n }\n\n // Private\n _enhance() {\n accessibleAutocomplete.enhanceSelectElement(Object.assign({}, { selectElement: this._element }, this._config))\n setTimeout(() => {\n if (this._hasFormControl) {\n if (typeof document === 'undefined') {\n return\n }\n const inputField = document.getElementById(this.element_original_id)\n inputField.classList.add('form-control')\n onClassChange(inputField, (node) => {\n if (!node.classList.contains('form-control')) {\n node.classList.add('form-control')\n }\n })\n }\n }, 100)\n }\n}\n\n/**\n * ------------------------------------------------------------------------\n * Data Api implementation\n * ------------------------------------------------------------------------\n */\n\nexport default SelectAutocomplete\n"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"sticky.js","sources":["../../src/js/plugins/sticky.js"],"sourcesContent":["import BaseComponent from 'bootstrap/js/src/base-component.js'\n\nimport {\n //defineJQueryPlugin,\n //getElementFromSelector,\n //isVisible,\n //reflow,\n //typeCheckConfig,\n getSelectorFromElement, //in base al bs-target\n} from 'bootstrap/js/src/util'\nimport EventHandler from 'bootstrap/js/src/dom/event-handler'\nimport SelectorEngine from 'bootstrap/js/src/dom/selector-engine'\nimport Manipulator from 'bootstrap/js/src/dom/manipulator'\n\nimport { isScreenMobile } from './util/device'\nimport onDocumentScroll from './util/on-document-scroll'\n\nconst NAME = 'sticky'\nconst DATA_KEY = 'bs.sticky'\nconst EVENT_KEY = `.${DATA_KEY}`\n//const DATA_API_KEY = '.data-api'\n\n//const EVENT_SCROLL = `scroll${EVENT_KEY}`\nconst EVENT_RESIZE = `resize${EVENT_KEY}`\nconst EVENT_STICKY_ON = `on${EVENT_KEY}`\nconst EVENT_STICKY_OFF = `off${EVENT_KEY}`\n\nconst CLASS_NAME_WRAPPER = 'bs-it-sticky-wrapper'\nconst CLASS_NAME_STICKY = 'bs-is-sticky'\nconst CLASS_NAME_FIXED = 'bs-is-fixed'\n\nconst DATA_TARGET_MOBILE = 'data-bs-target-mobile'\n\nconst SELECTOR_DATA_TOGGLE = '[data-bs-toggle=\"sticky\"]'\n\nconst Default = {\n positionType: 'sticky', //fixed\n stickyClassName: '',\n stackable: false,\n paddingTop: 0,\n}\n\nclass Sticky extends BaseComponent {\n constructor(element, config) {\n super(element)\n\n this._config = this._getConfig(config)\n\n this._isSticky = false\n this._wrapper = null\n\n this._stickyTarget = SelectorEngine.findOne(getSelectorFromElement(this._element), this._element) || this._element\n this._stickyTargetMobile = SelectorEngine.findOne(this._element.getAttribute(DATA_TARGET_MOBILE), this._element) || this._stickyTarget //needed?\n this._stickyLimit = 0\n this._stickyLimitMobile = 0\n this._setLimit()\n\n this._scrollCb = null\n\n this._isMobile = isScreenMobile()\n\n this._prevTop = 0\n\n this._onScroll()\n this._bindEvents()\n }\n\n dispose() {\n EventHandler.off(window, EVENT_RESIZE)\n this._scrollCb.dispose()\n\n super.dispose()\n }\n // Getters\n\n static get NAME() {\n return NAME\n }\n\n // Public\n\n // Private\n _getConfig(config) {\n config = {\n ...Default,\n ...Manipulator.getDataAttributes(this._element),\n ...(typeof config === 'object' ? config : {}),\n }\n return config\n }\n\n _bindEvents() {\n EventHandler.on(window, EVENT_RESIZE, () => this._onResize())\n //EventHandler.on(window, EVENT_SCROLL, () => this._onScroll())\n this._scrollCb = onDocumentScroll(() => this._onScroll())\n }\n\n _onResize() {\n this._isMobile = isScreenMobile()\n this._setLimit()\n }\n\n _onScroll() {\n this._checkSticky()\n }\n\n _setLimit() {\n this._stickyLimit = this._cumulativeOffset(this._stickyTarget).top\n this._stickyLimitMobile = this._cumulativeOffset(this._stickyTargetMobile).top\n }\n\n _getLimit() {\n let newLimit = this._isMobile ? this._stickyLimitMobile : this._stickyLimit\n if (this._config.stackable) {\n this._getStickySimblings().forEach((sticky, idx) => {\n const data = sticky.getBoundingClientRect()\n newLimit -= data.height + (idx === 0 ? parseFloat(sticky.style.top) : 0)\n })\n }\n return newLimit > 0 ? newLimit : 0\n }\n\n /**\n * get the absolute position of an element\n * @param {*} element - the target element\n * @returns {Object} - absolute position top and left of the element\n */\n _cumulativeOffset(element) {\n let top = 0\n let left = 0\n do {\n top += element.offsetTop || 0\n left += element.offsetLeft || 0\n element = element.offsetParent\n } while (element)\n\n return {\n top: top,\n left: left,\n }\n }\n\n _isTypeSticky() {\n return this._config.positionType === 'sticky'\n }\n\n _checkSticky() {\n if (!this._isSticky) {\n //the target position can change dinamically\n this._setLimit()\n }\n const limit = this._getLimit()\n if (typeof window !== 'undefined' && window.pageYOffset > limit) {\n this._setSticky()\n } else {\n this._unsetSticky()\n }\n }\n _setSticky() {\n if (!this._isSticky) {\n this._isSticky = true\n let cssClass = CLASS_NAME_STICKY\n if (!this._isTypeSticky()) {\n cssClass = CLASS_NAME_FIXED\n this._wrapper = this._createWrapper()\n }\n this._element.classList.add(cssClass)\n if (this._config.stickyClassName) {\n this._element.classList.add(this._config.stickyClassName)\n }\n this._prevTop = this._element.style.top\n this._element.style.top = this._getPositionTop() + 'px'\n EventHandler.trigger(this._element, EVENT_STICKY_ON)\n }\n }\n _unsetSticky() {\n if (this._isSticky) {\n let cssClass = CLASS_NAME_STICKY\n if (!this._isTypeSticky()) {\n cssClass = CLASS_NAME_FIXED\n this._destroyWrapper()\n }\n this._element.classList.remove(cssClass)\n if (this._config.stickyClassName) {\n this._element.classList.remove(this._config.stickyClassName)\n }\n this._element.style.top = this._prevTop\n this._isSticky = false\n EventHandler.trigger(this._element, EVENT_STICKY_OFF)\n }\n }\n\n _createWrapper() {\n if (typeof document === 'undefined') {\n return\n }\n const wrapper = document.createElement('div')\n wrapper.classList.add(CLASS_NAME_WRAPPER)\n wrapper.style.width = '100%' //this._element.getBoundingClientRect().width + 'px'\n wrapper.style.height = this._element.getBoundingClientRect().height + 'px'\n wrapper.style.overflow = 'hidden'\n // insert wrapper before el in the DOM tree\n this._element.parentNode.insertBefore(wrapper, this._element)\n // move el into wrapper\n wrapper.appendChild(this._element)\n return wrapper\n }\n _destroyWrapper() {\n if (this._wrapper) {\n this._wrapper.parentNode.insertBefore(this._element, this._wrapper)\n this._wrapper.remove()\n }\n }\n\n _getStickySimblings() {\n const stickies = SelectorEngine.find(SELECTOR_DATA_TOGGLE)\n return stickies.filter((sticky) => {\n const instance = Sticky.getInstance(sticky)\n if (instance && instance._isSticky && sticky !== this._element) {\n return true\n }\n return false\n })\n }\n\n /**\n * returns the top position of the element considering the config and the other sticky elements\n */\n _getPositionTop() {\n let newTop = 0\n if (this._config.stackable) {\n this._getStickySimblings().forEach((sticky, idx) => {\n const data = sticky.getBoundingClientRect()\n newTop += data.height + (idx === 0 ? parseFloat(sticky.style.top) : 0)\n })\n return newTop\n } else {\n return newTop + this._config.paddingTop\n }\n }\n}\n\n/**\n * ------------------------------------------------------------------------\n * Data Api implementation\n * ------------------------------------------------------------------------\n */\n\nonDocumentScroll(() => {\n const stickies = SelectorEngine.find(SELECTOR_DATA_TOGGLE)\n stickies.map((sticky) => {\n Sticky.getOrCreateInstance(sticky)\n })\n})\n\nexport default Sticky\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"sticky.js","sources":["../../src/js/plugins/sticky.js"],"sourcesContent":["import BaseComponent from 'bootstrap/js/src/base-component.js'\n\nimport {\n //defineJQueryPlugin,\n //getElementFromSelector,\n //isVisible,\n //reflow,\n //typeCheckConfig,\n getSelectorFromElement, //in base al bs-target\n} from 'bootstrap/js/src/util'\nimport EventHandler from 'bootstrap/js/src/dom/event-handler'\nimport SelectorEngine from 'bootstrap/js/src/dom/selector-engine'\nimport Manipulator from 'bootstrap/js/src/dom/manipulator'\n\nimport { isScreenMobile } from './util/device'\nimport onDocumentScroll from './util/on-document-scroll'\n\nconst NAME = 'sticky'\nconst DATA_KEY = 'bs.sticky'\nconst EVENT_KEY = `.${DATA_KEY}`\n//const DATA_API_KEY = '.data-api'\n\n//const EVENT_SCROLL = `scroll${EVENT_KEY}`\nconst EVENT_RESIZE = `resize${EVENT_KEY}`\nconst EVENT_STICKY_ON = `on${EVENT_KEY}`\nconst EVENT_STICKY_OFF = `off${EVENT_KEY}`\n\nconst CLASS_NAME_WRAPPER = 'bs-it-sticky-wrapper'\nconst CLASS_NAME_STICKY = 'bs-is-sticky'\nconst CLASS_NAME_FIXED = 'bs-is-fixed'\n\nconst DATA_TARGET_MOBILE = 'data-bs-target-mobile'\n\nconst SELECTOR_DATA_TOGGLE = '[data-bs-toggle=\"sticky\"]'\n\nconst Default = {\n positionType: 'sticky', //fixed\n stickyClassName: '',\n stackable: false,\n paddingTop: 0,\n}\n\nclass Sticky extends BaseComponent {\n constructor(element, config) {\n super(element)\n\n this._config = this._getConfig(config)\n\n this._isSticky = false\n this._wrapper = null\n\n this._stickyTarget = SelectorEngine.findOne(getSelectorFromElement(this._element), this._element) || this._element\n this._stickyTargetMobile = SelectorEngine.findOne(this._element.getAttribute(DATA_TARGET_MOBILE), this._element) || this._stickyTarget //needed?\n this._stickyLimit = 0\n this._stickyLimitMobile = 0\n this._setLimit()\n\n this._scrollCb = null\n\n this._isMobile = isScreenMobile()\n\n this._prevTop = 0\n\n this._onScroll()\n this._bindEvents()\n }\n\n dispose() {\n EventHandler.off(window, EVENT_RESIZE)\n this._scrollCb.dispose()\n\n super.dispose()\n }\n // Getters\n\n static get NAME() {\n return NAME\n }\n\n // Public\n\n // Private\n _getConfig(config) {\n config = {\n ...Default,\n ...Manipulator.getDataAttributes(this._element),\n ...(typeof config === 'object' ? config : {}),\n }\n return config\n }\n\n _bindEvents() {\n EventHandler.on(window, EVENT_RESIZE, () => this._onResize())\n //EventHandler.on(window, EVENT_SCROLL, () => this._onScroll())\n this._scrollCb = onDocumentScroll(() => this._onScroll())\n }\n\n _onResize() {\n this._isMobile = isScreenMobile()\n this._setLimit()\n }\n\n _onScroll() {\n this._checkSticky()\n }\n\n _setLimit() {\n this._stickyLimit = this._cumulativeOffset(this._stickyTarget).top\n this._stickyLimitMobile = this._cumulativeOffset(this._stickyTargetMobile).top\n }\n\n _getLimit() {\n let newLimit = this._isMobile ? this._stickyLimitMobile : this._stickyLimit\n if (this._config.stackable) {\n this._getStickySimblings().forEach((sticky, idx) => {\n const data = sticky.getBoundingClientRect()\n newLimit -= data.height + (idx === 0 ? parseFloat(sticky.style.top) : 0)\n })\n }\n return newLimit > 0 ? newLimit : 0\n }\n\n /**\n * get the absolute position of an element\n * @param {*} element - the target element\n * @returns {Object} - absolute position top and left of the element\n */\n _cumulativeOffset(element) {\n let top = 0\n let left = 0\n do {\n top += element.offsetTop || 0\n left += element.offsetLeft || 0\n element = element.offsetParent\n } while (element)\n\n return {\n top: top,\n left: left,\n }\n }\n\n _isTypeSticky() {\n return this._config.positionType === 'sticky'\n }\n\n _checkSticky() {\n if (!this._isSticky) {\n //the target position can change dinamically\n this._setLimit()\n }\n const limit = this._getLimit()\n if (typeof window !== 'undefined' && window.pageYOffset > limit) {\n this._setSticky()\n } else {\n this._unsetSticky()\n }\n }\n _setSticky() {\n if (!this._isSticky) {\n this._isSticky = true\n let cssClass = CLASS_NAME_STICKY\n if (!this._isTypeSticky()) {\n cssClass = CLASS_NAME_FIXED\n this._wrapper = this._createWrapper()\n }\n this._element.classList.add(cssClass)\n if (this._config.stickyClassName) {\n this._element.classList.add(this._config.stickyClassName)\n }\n this._prevTop = this._element.style.top\n this._element.style.top = this._getPositionTop() + 'px'\n EventHandler.trigger(this._element, EVENT_STICKY_ON)\n }\n }\n _unsetSticky() {\n if (this._isSticky) {\n let cssClass = CLASS_NAME_STICKY\n if (!this._isTypeSticky()) {\n cssClass = CLASS_NAME_FIXED\n this._destroyWrapper()\n }\n this._element.classList.remove(cssClass)\n if (this._config.stickyClassName) {\n this._element.classList.remove(this._config.stickyClassName)\n }\n this._element.style.top = this._prevTop\n this._isSticky = false\n EventHandler.trigger(this._element, EVENT_STICKY_OFF)\n }\n }\n\n _createWrapper() {\n if (typeof document === 'undefined') {\n return\n }\n const wrapper = document.createElement('div')\n wrapper.classList.add(CLASS_NAME_WRAPPER)\n wrapper.style.width = '100%' //this._element.getBoundingClientRect().width + 'px'\n wrapper.style.height = this._element.getBoundingClientRect().height + 'px'\n wrapper.style.overflow = 'hidden'\n // insert wrapper before el in the DOM tree\n this._element.parentNode.insertBefore(wrapper, this._element)\n // move el into wrapper\n wrapper.appendChild(this._element)\n return wrapper\n }\n _destroyWrapper() {\n if (this._wrapper) {\n this._wrapper.parentNode.insertBefore(this._element, this._wrapper)\n this._wrapper.remove()\n }\n }\n\n _getStickySimblings() {\n const stickies = SelectorEngine.find(SELECTOR_DATA_TOGGLE)\n return stickies.filter((sticky) => {\n const instance = Sticky.getInstance(sticky)\n if (instance && instance._isSticky && sticky !== this._element) {\n return true\n }\n return false\n })\n }\n\n /**\n * returns the top position of the element considering the config and the other sticky elements\n */\n _getPositionTop() {\n let newTop = 0\n if (this._config.stackable) {\n this._getStickySimblings().forEach((sticky, idx) => {\n const data = sticky.getBoundingClientRect()\n newTop += data.height + (idx === 0 ? parseFloat(sticky.style.top) : 0)\n })\n return newTop\n } else {\n return newTop + this._config.paddingTop\n }\n }\n}\n\n/**\n * ------------------------------------------------------------------------\n * Data Api implementation\n * ------------------------------------------------------------------------\n */\n\nonDocumentScroll(() => {\n const stickies = SelectorEngine.find(SELECTOR_DATA_TOGGLE)\n stickies.map((sticky) => {\n Sticky.getOrCreateInstance(sticky)\n })\n})\n\nexport default Sticky\n"],"names":[],"mappings":";;;;;;;;AAiBA,MAAM,IAAI,GAAG;AACb,MAAM,QAAQ,GAAG;AACjB,MAAM,SAAS,GAAG,CAAC,CAAC,EAAE,QAAQ,CAAC;AAC/B;;AAEA;AACA,MAAM,YAAY,GAAG,CAAC,MAAM,EAAE,SAAS,CAAC;AACxC,MAAM,eAAe,GAAG,CAAC,EAAE,EAAE,SAAS,CAAC;AACvC,MAAM,gBAAgB,GAAG,CAAC,GAAG,EAAE,SAAS,CAAC;;AAEzC,MAAM,kBAAkB,GAAG;AAC3B,MAAM,iBAAiB,GAAG;AAC1B,MAAM,gBAAgB,GAAG;;AAEzB,MAAM,kBAAkB,GAAG;;AAE3B,MAAM,oBAAoB,GAAG;;AAE7B,MAAM,OAAO,GAAG;AAChB,EAAE,YAAY,EAAE,QAAQ;AACxB,EAAE,eAAe,EAAE,EAAE;AACrB,EAAE,SAAS,EAAE,KAAK;AAClB,EAAE,UAAU,EAAE,CAAC;AACf;;AAEA,MAAM,MAAM,SAAS,aAAa,CAAC;AACnC,EAAE,WAAW,CAAC,OAAO,EAAE,MAAM,EAAE;AAC/B,IAAI,KAAK,CAAC,OAAO;;AAEjB,IAAI,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC,UAAU,CAAC,MAAM;;AAEzC,IAAI,IAAI,CAAC,SAAS,GAAG;AACrB,IAAI,IAAI,CAAC,QAAQ,GAAG;;AAEpB,IAAI,IAAI,CAAC,aAAa,GAAG,cAAc,CAAC,OAAO,CAAC,sBAAsB,CAAC,IAAI,CAAC,QAAQ,CAAC,EAAE,IAAI,CAAC,QAAQ,CAAC,IAAI,IAAI,CAAC;AAC9G,IAAI,IAAI,CAAC,mBAAmB,GAAG,cAAc,CAAC,OAAO,CAAC,IAAI,CAAC,QAAQ,CAAC,YAAY,CAAC,kBAAkB,CAAC,EAAE,IAAI,CAAC,QAAQ,CAAC,IAAI,IAAI,CAAC,cAAa;AAC1I,IAAI,IAAI,CAAC,YAAY,GAAG;AACxB,IAAI,IAAI,CAAC,kBAAkB,GAAG;AAC9B,IAAI,IAAI,CAAC,SAAS;;AAElB,IAAI,IAAI,CAAC,SAAS,GAAG;;AAErB,IAAI,IAAI,CAAC,SAAS,GAAG,cAAc;;AAEnC,IAAI,IAAI,CAAC,QAAQ,GAAG;;AAEpB,IAAI,IAAI,CAAC,SAAS;AAClB,IAAI,IAAI,CAAC,WAAW;AACpB;;AAEA,EAAE,OAAO,GAAG;AACZ,IAAI,YAAY,CAAC,GAAG,CAAC,MAAM,EAAE,YAAY;AACzC,IAAI,IAAI,CAAC,SAAS,CAAC,OAAO;;AAE1B,IAAI,KAAK,CAAC,OAAO;AACjB;AACA;;AAEA,EAAE,WAAW,IAAI,GAAG;AACpB,IAAI,OAAO;AACX;;AAEA;;AAEA;AACA,EAAE,UAAU,CAAC,MAAM,EAAE;AACrB,IAAI,MAAM,GAAG;AACb,MAAM,GAAG,OAAO;AAChB,MAAM,GAAG,WAAW,CAAC,iBAAiB,CAAC,IAAI,CAAC,QAAQ,CAAC;AACrD,MAAM,IAAI,OAAO,MAAM,KAAK,QAAQ,GAAG,MAAM,GAAG,EAAE,CAAC;AACnD;AACA,IAAI,OAAO;AACX;;AAEA,EAAE,WAAW,GAAG;AAChB,IAAI,YAAY,CAAC,EAAE,CAAC,MAAM,EAAE,YAAY,EAAE,MAAM,IAAI,CAAC,SAAS,EAAE;AAChE;AACA,IAAI,IAAI,CAAC,SAAS,GAAG,gBAAgB,CAAC,MAAM,IAAI,CAAC,SAAS,EAAE;AAC5D;;AAEA,EAAE,SAAS,GAAG;AACd,IAAI,IAAI,CAAC,SAAS,GAAG,cAAc;AACnC,IAAI,IAAI,CAAC,SAAS;AAClB;;AAEA,EAAE,SAAS,GAAG;AACd,IAAI,IAAI,CAAC,YAAY;AACrB;;AAEA,EAAE,SAAS,GAAG;AACd,IAAI,IAAI,CAAC,YAAY,GAAG,IAAI,CAAC,iBAAiB,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;AACnE,IAAI,IAAI,CAAC,kBAAkB,GAAG,IAAI,CAAC,iBAAiB,CAAC,IAAI,CAAC,mBAAmB,CAAC,CAAC;AAC/E;;AAEA,EAAE,SAAS,GAAG;AACd,IAAI,IAAI,QAAQ,GAAG,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC,kBAAkB,GAAG,IAAI,CAAC;AACnE,IAAI,IAAI,IAAI,CAAC,OAAO,CAAC,SAAS,EAAE;AAChC,MAAM,IAAI,CAAC,mBAAmB,EAAE,CAAC,OAAO,CAAC,CAAC,MAAM,EAAE,GAAG,KAAK;AAC1D,QAAQ,MAAM,IAAI,GAAG,MAAM,CAAC,qBAAqB;AACjD,QAAQ,QAAQ,IAAI,IAAI,CAAC,MAAM,IAAI,GAAG,KAAK,CAAC,GAAG,UAAU,CAAC,MAAM,CAAC,KAAK,CAAC,GAAG,CAAC,GAAG,CAAC;AAC/E,OAAO;AACP;AACA,IAAI,OAAO,QAAQ,GAAG,CAAC,GAAG,QAAQ,GAAG;AACrC;;AAEA;AACA;AACA;AACA;AACA;AACA,EAAE,iBAAiB,CAAC,OAAO,EAAE;AAC7B,IAAI,IAAI,GAAG,GAAG;AACd,IAAI,IAAI,IAAI,GAAG;AACf,IAAI,GAAG;AACP,MAAM,GAAG,IAAI,OAAO,CAAC,SAAS,IAAI;AAClC,MAAM,IAAI,IAAI,OAAO,CAAC,UAAU,IAAI;AACpC,MAAM,OAAO,GAAG,OAAO,CAAC;AACxB,KAAK,QAAQ,OAAO;;AAEpB,IAAI,OAAO;AACX,MAAM,GAAG,EAAE,GAAG;AACd,MAAM,IAAI,EAAE,IAAI;AAChB;AACA;;AAEA,EAAE,aAAa,GAAG;AAClB,IAAI,OAAO,IAAI,CAAC,OAAO,CAAC,YAAY,KAAK;AACzC;;AAEA,EAAE,YAAY,GAAG;AACjB,IAAI,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE;AACzB;AACA,MAAM,IAAI,CAAC,SAAS;AACpB;AACA,IAAI,MAAM,KAAK,GAAG,IAAI,CAAC,SAAS;AAChC,IAAI,IAAI,OAAO,MAAM,KAAK,WAAW,IAAI,MAAM,CAAC,WAAW,GAAG,KAAK,EAAE;AACrE,MAAM,IAAI,CAAC,UAAU;AACrB,KAAK,MAAM;AACX,MAAM,IAAI,CAAC,YAAY;AACvB;AACA;AACA,EAAE,UAAU,GAAG;AACf,IAAI,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE;AACzB,MAAM,IAAI,CAAC,SAAS,GAAG;AACvB,MAAM,IAAI,QAAQ,GAAG;AACrB,MAAM,IAAI,CAAC,IAAI,CAAC,aAAa,EAAE,EAAE;AACjC,QAAQ,QAAQ,GAAG;AACnB,QAAQ,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC,cAAc;AAC3C;AACA,MAAM,IAAI,CAAC,QAAQ,CAAC,SAAS,CAAC,GAAG,CAAC,QAAQ;AAC1C,MAAM,IAAI,IAAI,CAAC,OAAO,CAAC,eAAe,EAAE;AACxC,QAAQ,IAAI,CAAC,QAAQ,CAAC,SAAS,CAAC,GAAG,CAAC,IAAI,CAAC,OAAO,CAAC,eAAe;AAChE;AACA,MAAM,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC;AAC1C,MAAM,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,GAAG,GAAG,IAAI,CAAC,eAAe,EAAE,GAAG;AACzD,MAAM,YAAY,CAAC,OAAO,CAAC,IAAI,CAAC,QAAQ,EAAE,eAAe;AACzD;AACA;AACA,EAAE,YAAY,GAAG;AACjB,IAAI,IAAI,IAAI,CAAC,SAAS,EAAE;AACxB,MAAM,IAAI,QAAQ,GAAG;AACrB,MAAM,IAAI,CAAC,IAAI,CAAC,aAAa,EAAE,EAAE;AACjC,QAAQ,QAAQ,GAAG;AACnB,QAAQ,IAAI,CAAC,eAAe;AAC5B;AACA,MAAM,IAAI,CAAC,QAAQ,CAAC,SAAS,CAAC,MAAM,CAAC,QAAQ;AAC7C,MAAM,IAAI,IAAI,CAAC,OAAO,CAAC,eAAe,EAAE;AACxC,QAAQ,IAAI,CAAC,QAAQ,CAAC,SAAS,CAAC,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,eAAe;AACnE;AACA,MAAM,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,GAAG,GAAG,IAAI,CAAC;AACrC,MAAM,IAAI,CAAC,SAAS,GAAG;AACvB,MAAM,YAAY,CAAC,OAAO,CAAC,IAAI,CAAC,QAAQ,EAAE,gBAAgB;AAC1D;AACA;;AAEA,EAAE,cAAc,GAAG;AACnB,IAAI,IAAI,OAAO,QAAQ,KAAK,WAAW,EAAE;AACzC,MAAM;AACN;AACA,IAAI,MAAM,OAAO,GAAG,QAAQ,CAAC,aAAa,CAAC,KAAK;AAChD,IAAI,OAAO,CAAC,SAAS,CAAC,GAAG,CAAC,kBAAkB;AAC5C,IAAI,OAAO,CAAC,KAAK,CAAC,KAAK,GAAG,OAAM;AAChC,IAAI,OAAO,CAAC,KAAK,CAAC,MAAM,GAAG,IAAI,CAAC,QAAQ,CAAC,qBAAqB,EAAE,CAAC,MAAM,GAAG;AAC1E,IAAI,OAAO,CAAC,KAAK,CAAC,QAAQ,GAAG;AAC7B;AACA,IAAI,IAAI,CAAC,QAAQ,CAAC,UAAU,CAAC,YAAY,CAAC,OAAO,EAAE,IAAI,CAAC,QAAQ;AAChE;AACA,IAAI,OAAO,CAAC,WAAW,CAAC,IAAI,CAAC,QAAQ;AACrC,IAAI,OAAO;AACX;AACA,EAAE,eAAe,GAAG;AACpB,IAAI,IAAI,IAAI,CAAC,QAAQ,EAAE;AACvB,MAAM,IAAI,CAAC,QAAQ,CAAC,UAAU,CAAC,YAAY,CAAC,IAAI,CAAC,QAAQ,EAAE,IAAI,CAAC,QAAQ;AACxE,MAAM,IAAI,CAAC,QAAQ,CAAC,MAAM;AAC1B;AACA;;AAEA,EAAE,mBAAmB,GAAG;AACxB,IAAI,MAAM,QAAQ,GAAG,cAAc,CAAC,IAAI,CAAC,oBAAoB;AAC7D,IAAI,OAAO,QAAQ,CAAC,MAAM,CAAC,CAAC,MAAM,KAAK;AACvC,MAAM,MAAM,QAAQ,GAAG,MAAM,CAAC,WAAW,CAAC,MAAM;AAChD,MAAM,IAAI,QAAQ,IAAI,QAAQ,CAAC,SAAS,IAAI,MAAM,KAAK,IAAI,CAAC,QAAQ,EAAE;AACtE,QAAQ,OAAO;AACf;AACA,MAAM,OAAO;AACb,KAAK;AACL;;AAEA;AACA;AACA;AACA,EAAE,eAAe,GAAG;AACpB,IAAI,IAAI,MAAM,GAAG;AACjB,IAAI,IAAI,IAAI,CAAC,OAAO,CAAC,SAAS,EAAE;AAChC,MAAM,IAAI,CAAC,mBAAmB,EAAE,CAAC,OAAO,CAAC,CAAC,MAAM,EAAE,GAAG,KAAK;AAC1D,QAAQ,MAAM,IAAI,GAAG,MAAM,CAAC,qBAAqB;AACjD,QAAQ,MAAM,IAAI,IAAI,CAAC,MAAM,IAAI,GAAG,KAAK,CAAC,GAAG,UAAU,CAAC,MAAM,CAAC,KAAK,CAAC,GAAG,CAAC,GAAG,CAAC;AAC7E,OAAO;AACP,MAAM,OAAO;AACb,KAAK,MAAM;AACX,MAAM,OAAO,MAAM,GAAG,IAAI,CAAC,OAAO,CAAC;AACnC;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA,gBAAgB,CAAC,MAAM;AACvB,EAAE,MAAM,QAAQ,GAAG,cAAc,CAAC,IAAI,CAAC,oBAAoB;AAC3D,EAAE,QAAQ,CAAC,GAAG,CAAC,CAAC,MAAM,KAAK;AAC3B,IAAI,MAAM,CAAC,mBAAmB,CAAC,MAAM;AACrC,GAAG;AACH,CAAC;;;;"}
@@ -1 +1 @@
1
- {"version":3,"file":"tab.js","sources":["../../src/js/plugins/tab.js"],"sourcesContent":["import { default as BSTab } from 'bootstrap/js/src/tab'\nimport { defineJQueryPlugin, getNextActiveElement, isDisabled } from 'bootstrap/js/src/util/index.js'\nimport EventHandler from 'bootstrap/js/src/dom/event-handler.js'\nimport SelectorEngine from 'bootstrap/js/src/dom/selector-engine.js'\n\nconst DATA_KEY = 'bs.tab'\nconst EVENT_KEY = `.${DATA_KEY}`\n\nconst EVENT_CLICK_DATA_API = `click${EVENT_KEY}`\nconst EVENT_LOAD_DATA_API = `load${EVENT_KEY}`\n\nconst ARROW_LEFT_KEY = 'ArrowLeft'\nconst ARROW_RIGHT_KEY = 'ArrowRight'\nconst ARROW_UP_KEY = 'ArrowUp'\nconst ARROW_DOWN_KEY = 'ArrowDown'\nconst ENTER_KEY = 'Enter'\nconst SPACE_BAR_KEY = ' '\n\nconst CLASS_NAME_ACTIVE = 'active'\n\nconst SELECTOR_DATA_TOGGLE = '[data-bs-toggle=\"tab\"], [data-bs-toggle=\"pill\"], [data-bs-toggle=\"list\"]' // todo:v6: could be only `tab`\n\nconst SELECTOR_DATA_TOGGLE_ACTIVE = `.${CLASS_NAME_ACTIVE}[data-bs-toggle=\"tab\"], .${CLASS_NAME_ACTIVE}[data-bs-toggle=\"pill\"], .${CLASS_NAME_ACTIVE}[data-bs-toggle=\"list\"]`\n\nclass Tab extends BSTab {\n constructor(element) {\n super(element)\n }\n\n _keydown(event) {\n if (![ARROW_LEFT_KEY, ARROW_RIGHT_KEY, ARROW_UP_KEY, ARROW_DOWN_KEY, ENTER_KEY, SPACE_BAR_KEY].includes(event.key)) {\n return\n }\n\n event.stopPropagation() // stopPropagation/preventDefault both added to support up/down keys without scrolling the page\n event.preventDefault()\n\n if (event.key === ENTER_KEY || event.key === SPACE_BAR_KEY) {\n Tab.getOrCreateInstance(event.target).show()\n return\n }\n\n const isNext = [ARROW_RIGHT_KEY, ARROW_DOWN_KEY].includes(event.key)\n const nextActiveElement = getNextActiveElement(\n this._getChildren().filter((element) => !isDisabled(element)),\n event.target,\n isNext,\n true\n )\n if (nextActiveElement) {\n nextActiveElement.focus({ preventScroll: true })\n }\n }\n}\n\nEventHandler.on(document, EVENT_CLICK_DATA_API, SELECTOR_DATA_TOGGLE, function (event) {\n if (['A', 'AREA'].includes(this.tagName)) {\n event.preventDefault()\n }\n\n if (isDisabled(this)) {\n return\n }\n\n const t = Tab.getOrCreateInstance(this)\n t.dispose()\n Tab.getOrCreateInstance(this).show()\n})\n\n/**\n * Initialize on focus\n */\nEventHandler.on(window, EVENT_LOAD_DATA_API, () => {\n for (const element of SelectorEngine.find(SELECTOR_DATA_TOGGLE_ACTIVE)) {\n const t = Tab.getOrCreateInstance(element)\n t.dispose()\n Tab.getOrCreateInstance(element)\n }\n})\n/**\n * jQuery\n */\n\ndefineJQueryPlugin(Tab)\n\nexport default Tab\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"tab.js","sources":["../../src/js/plugins/tab.js"],"sourcesContent":["import { default as BSTab } from 'bootstrap/js/src/tab'\nimport { defineJQueryPlugin, getNextActiveElement, isDisabled } from 'bootstrap/js/src/util/index.js'\nimport EventHandler from 'bootstrap/js/src/dom/event-handler.js'\nimport SelectorEngine from 'bootstrap/js/src/dom/selector-engine.js'\n\nconst DATA_KEY = 'bs.tab'\nconst EVENT_KEY = `.${DATA_KEY}`\n\nconst EVENT_CLICK_DATA_API = `click${EVENT_KEY}`\nconst EVENT_LOAD_DATA_API = `load${EVENT_KEY}`\n\nconst ARROW_LEFT_KEY = 'ArrowLeft'\nconst ARROW_RIGHT_KEY = 'ArrowRight'\nconst ARROW_UP_KEY = 'ArrowUp'\nconst ARROW_DOWN_KEY = 'ArrowDown'\nconst ENTER_KEY = 'Enter'\nconst SPACE_BAR_KEY = ' '\n\nconst CLASS_NAME_ACTIVE = 'active'\n\nconst SELECTOR_DATA_TOGGLE = '[data-bs-toggle=\"tab\"], [data-bs-toggle=\"pill\"], [data-bs-toggle=\"list\"]' // todo:v6: could be only `tab`\n\nconst SELECTOR_DATA_TOGGLE_ACTIVE = `.${CLASS_NAME_ACTIVE}[data-bs-toggle=\"tab\"], .${CLASS_NAME_ACTIVE}[data-bs-toggle=\"pill\"], .${CLASS_NAME_ACTIVE}[data-bs-toggle=\"list\"]`\n\nclass Tab extends BSTab {\n constructor(element) {\n super(element)\n }\n\n _keydown(event) {\n if (![ARROW_LEFT_KEY, ARROW_RIGHT_KEY, ARROW_UP_KEY, ARROW_DOWN_KEY, ENTER_KEY, SPACE_BAR_KEY].includes(event.key)) {\n return\n }\n\n event.stopPropagation() // stopPropagation/preventDefault both added to support up/down keys without scrolling the page\n event.preventDefault()\n\n if (event.key === ENTER_KEY || event.key === SPACE_BAR_KEY) {\n Tab.getOrCreateInstance(event.target).show()\n return\n }\n\n const isNext = [ARROW_RIGHT_KEY, ARROW_DOWN_KEY].includes(event.key)\n const nextActiveElement = getNextActiveElement(\n this._getChildren().filter((element) => !isDisabled(element)),\n event.target,\n isNext,\n true\n )\n if (nextActiveElement) {\n nextActiveElement.focus({ preventScroll: true })\n }\n }\n}\n\nEventHandler.on(document, EVENT_CLICK_DATA_API, SELECTOR_DATA_TOGGLE, function (event) {\n if (['A', 'AREA'].includes(this.tagName)) {\n event.preventDefault()\n }\n\n if (isDisabled(this)) {\n return\n }\n\n const t = Tab.getOrCreateInstance(this)\n t.dispose()\n Tab.getOrCreateInstance(this).show()\n})\n\n/**\n * Initialize on focus\n */\nEventHandler.on(window, EVENT_LOAD_DATA_API, () => {\n for (const element of SelectorEngine.find(SELECTOR_DATA_TOGGLE_ACTIVE)) {\n const t = Tab.getOrCreateInstance(element)\n t.dispose()\n Tab.getOrCreateInstance(element)\n }\n})\n/**\n * jQuery\n */\n\ndefineJQueryPlugin(Tab)\n\nexport default Tab\n"],"names":[],"mappings":";;;;;AAKA,MAAM,QAAQ,GAAG;AACjB,MAAM,SAAS,GAAG,CAAC,CAAC,EAAE,QAAQ,CAAC;;AAE/B,MAAM,oBAAoB,GAAG,CAAC,KAAK,EAAE,SAAS,CAAC;AAC/C,MAAM,mBAAmB,GAAG,CAAC,IAAI,EAAE,SAAS,CAAC;;AAE7C,MAAM,cAAc,GAAG;AACvB,MAAM,eAAe,GAAG;AACxB,MAAM,YAAY,GAAG;AACrB,MAAM,cAAc,GAAG;AACvB,MAAM,SAAS,GAAG;AAClB,MAAM,aAAa,GAAG;;AAEtB,MAAM,iBAAiB,GAAG;;AAE1B,MAAM,oBAAoB,GAAG,2EAA0E;;AAEvG,MAAM,2BAA2B,GAAG,CAAC,CAAC,EAAE,iBAAiB,CAAC,yBAAyB,EAAE,iBAAiB,CAAC,0BAA0B,EAAE,iBAAiB,CAAC,uBAAuB;;AAE5K,MAAM,GAAG,SAAS,KAAK,CAAC;AACxB,EAAE,WAAW,CAAC,OAAO,EAAE;AACvB,IAAI,KAAK,CAAC,OAAO;AACjB;;AAEA,EAAE,QAAQ,CAAC,KAAK,EAAE;AAClB,IAAI,IAAI,CAAC,CAAC,cAAc,EAAE,eAAe,EAAE,YAAY,EAAE,cAAc,EAAE,SAAS,EAAE,aAAa,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC,GAAG,CAAC,EAAE;AACxH,MAAM;AACN;;AAEA,IAAI,KAAK,CAAC,eAAe,GAAE;AAC3B,IAAI,KAAK,CAAC,cAAc;;AAExB,IAAI,IAAI,KAAK,CAAC,GAAG,KAAK,SAAS,IAAI,KAAK,CAAC,GAAG,KAAK,aAAa,EAAE;AAChE,MAAM,GAAG,CAAC,mBAAmB,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,IAAI;AAChD,MAAM;AACN;;AAEA,IAAI,MAAM,MAAM,GAAG,CAAC,eAAe,EAAE,cAAc,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC,GAAG;AACvE,IAAI,MAAM,iBAAiB,GAAG,oBAAoB;AAClD,MAAM,IAAI,CAAC,YAAY,EAAE,CAAC,MAAM,CAAC,CAAC,OAAO,KAAK,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC;AACnE,MAAM,KAAK,CAAC,MAAM;AAClB,MAAM,MAAM;AACZ,MAAM;AACN;AACA,IAAI,IAAI,iBAAiB,EAAE;AAC3B,MAAM,iBAAiB,CAAC,KAAK,CAAC,EAAE,aAAa,EAAE,IAAI,EAAE;AACrD;AACA;AACA;;AAEA,YAAY,CAAC,EAAE,CAAC,QAAQ,EAAE,oBAAoB,EAAE,oBAAoB,EAAE,UAAU,KAAK,EAAE;AACvF,EAAE,IAAI,CAAC,GAAG,EAAE,MAAM,CAAC,CAAC,QAAQ,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE;AAC5C,IAAI,KAAK,CAAC,cAAc;AACxB;;AAEA,EAAE,IAAI,UAAU,CAAC,IAAI,CAAC,EAAE;AACxB,IAAI;AACJ;;AAEA,EAAE,MAAM,CAAC,GAAG,GAAG,CAAC,mBAAmB,CAAC,IAAI;AACxC,EAAE,CAAC,CAAC,OAAO;AACX,EAAE,GAAG,CAAC,mBAAmB,CAAC,IAAI,CAAC,CAAC,IAAI;AACpC,CAAC;;AAED;AACA;AACA;AACA,YAAY,CAAC,EAAE,CAAC,MAAM,EAAE,mBAAmB,EAAE,MAAM;AACnD,EAAE,KAAK,MAAM,OAAO,IAAI,cAAc,CAAC,IAAI,CAAC,2BAA2B,CAAC,EAAE;AAC1E,IAAI,MAAM,CAAC,GAAG,GAAG,CAAC,mBAAmB,CAAC,OAAO;AAC7C,IAAI,CAAC,CAAC,OAAO;AACb,IAAI,GAAG,CAAC,mBAAmB,CAAC,OAAO;AACnC;AACA,CAAC;AACD;AACA;AACA;;AAEA,kBAAkB,CAAC,GAAG;;;;"}
@@ -1 +1 @@
1
- {"version":3,"file":"track-focus.js","sources":["../../src/js/plugins/track-focus.js"],"sourcesContent":["const DATA_MOUSE_FOCUS = 'data-focus-mouse'\nconst CLASS_NAME_MOUSE_FOCUS = 'focus--mouse'\n\nclass TrackFocus {\n constructor() {\n this._usingMouse = false\n\n this._bindEvents()\n }\n\n // Public\n\n // Private\n _bindEvents() {\n if (typeof document === 'undefined') {\n return\n }\n const events = ['keydown', 'mousedown']\n events.forEach((evtName) => {\n document.addEventListener(evtName, (evt) => {\n this._usingMouse = evt.type === 'mousedown'\n })\n })\n document.addEventListener('focusin', (evt) => {\n if (this._usingMouse) {\n if (evt.target) {\n evt.target.classList.add(CLASS_NAME_MOUSE_FOCUS)\n evt.target.setAttribute(DATA_MOUSE_FOCUS, true)\n }\n }\n })\n document.addEventListener('focusout', (evt) => {\n if (evt.target) {\n evt.target.classList.remove(CLASS_NAME_MOUSE_FOCUS)\n evt.target.setAttribute(DATA_MOUSE_FOCUS, false)\n }\n })\n }\n}\n\n/**\n * ------------------------------------------------------------------------\n * Data Api implementation\n * ------------------------------------------------------------------------\n */\n\nnew TrackFocus()\n\nexport default TrackFocus\n"],"names":[],"mappings":"AAAA,MAAM,gBAAgB,GAAG,mBAAkB;AAC3C,MAAM,sBAAsB,GAAG,eAAc;AAC7C;AACA,MAAM,UAAU,CAAC;AACjB,EAAE,WAAW,GAAG;AAChB,IAAI,IAAI,CAAC,WAAW,GAAG,MAAK;AAC5B;AACA,IAAI,IAAI,CAAC,WAAW,GAAE;AACtB,GAAG;AACH;AACA;AACA;AACA;AACA,EAAE,WAAW,GAAG;AAChB,IAAI,IAAI,OAAO,QAAQ,KAAK,WAAW,EAAE;AACzC,MAAM,MAAM;AACZ,KAAK;AACL,IAAI,MAAM,MAAM,GAAG,CAAC,SAAS,EAAE,WAAW,EAAC;AAC3C,IAAI,MAAM,CAAC,OAAO,CAAC,CAAC,OAAO,KAAK;AAChC,MAAM,QAAQ,CAAC,gBAAgB,CAAC,OAAO,EAAE,CAAC,GAAG,KAAK;AAClD,QAAQ,IAAI,CAAC,WAAW,GAAG,GAAG,CAAC,IAAI,KAAK,YAAW;AACnD,OAAO,EAAC;AACR,KAAK,EAAC;AACN,IAAI,QAAQ,CAAC,gBAAgB,CAAC,SAAS,EAAE,CAAC,GAAG,KAAK;AAClD,MAAM,IAAI,IAAI,CAAC,WAAW,EAAE;AAC5B,QAAQ,IAAI,GAAG,CAAC,MAAM,EAAE;AACxB,UAAU,GAAG,CAAC,MAAM,CAAC,SAAS,CAAC,GAAG,CAAC,sBAAsB,EAAC;AAC1D,UAAU,GAAG,CAAC,MAAM,CAAC,YAAY,CAAC,gBAAgB,EAAE,IAAI,EAAC;AACzD,SAAS;AACT,OAAO;AACP,KAAK,EAAC;AACN,IAAI,QAAQ,CAAC,gBAAgB,CAAC,UAAU,EAAE,CAAC,GAAG,KAAK;AACnD,MAAM,IAAI,GAAG,CAAC,MAAM,EAAE;AACtB,QAAQ,GAAG,CAAC,MAAM,CAAC,SAAS,CAAC,MAAM,CAAC,sBAAsB,EAAC;AAC3D,QAAQ,GAAG,CAAC,MAAM,CAAC,YAAY,CAAC,gBAAgB,EAAE,KAAK,EAAC;AACxD,OAAO;AACP,KAAK,EAAC;AACN,GAAG;AACH,CAAC;AACD;AACA;AACA;AACA;AACA;AACA;AACA;AACA,IAAI,UAAU;;;;"}
1
+ {"version":3,"file":"track-focus.js","sources":["../../src/js/plugins/track-focus.js"],"sourcesContent":["const DATA_MOUSE_FOCUS = 'data-focus-mouse'\nconst CLASS_NAME_MOUSE_FOCUS = 'focus--mouse'\n\nclass TrackFocus {\n constructor() {\n this._usingMouse = false\n\n this._bindEvents()\n }\n\n // Public\n\n // Private\n _bindEvents() {\n if (typeof document === 'undefined') {\n return\n }\n const events = ['keydown', 'mousedown']\n events.forEach((evtName) => {\n document.addEventListener(evtName, (evt) => {\n this._usingMouse = evt.type === 'mousedown'\n })\n })\n document.addEventListener('focusin', (evt) => {\n if (this._usingMouse) {\n if (evt.target) {\n evt.target.classList.add(CLASS_NAME_MOUSE_FOCUS)\n evt.target.setAttribute(DATA_MOUSE_FOCUS, true)\n }\n }\n })\n document.addEventListener('focusout', (evt) => {\n if (evt.target) {\n evt.target.classList.remove(CLASS_NAME_MOUSE_FOCUS)\n evt.target.setAttribute(DATA_MOUSE_FOCUS, false)\n }\n })\n }\n}\n\n/**\n * ------------------------------------------------------------------------\n * Data Api implementation\n * ------------------------------------------------------------------------\n */\n\nnew TrackFocus()\n\nexport default TrackFocus\n"],"names":[],"mappings":"AAAA,MAAM,gBAAgB,GAAG;AACzB,MAAM,sBAAsB,GAAG;;AAE/B,MAAM,UAAU,CAAC;AACjB,EAAE,WAAW,GAAG;AAChB,IAAI,IAAI,CAAC,WAAW,GAAG;;AAEvB,IAAI,IAAI,CAAC,WAAW;AACpB;;AAEA;;AAEA;AACA,EAAE,WAAW,GAAG;AAChB,IAAI,IAAI,OAAO,QAAQ,KAAK,WAAW,EAAE;AACzC,MAAM;AACN;AACA,IAAI,MAAM,MAAM,GAAG,CAAC,SAAS,EAAE,WAAW;AAC1C,IAAI,MAAM,CAAC,OAAO,CAAC,CAAC,OAAO,KAAK;AAChC,MAAM,QAAQ,CAAC,gBAAgB,CAAC,OAAO,EAAE,CAAC,GAAG,KAAK;AAClD,QAAQ,IAAI,CAAC,WAAW,GAAG,GAAG,CAAC,IAAI,KAAK;AACxC,OAAO;AACP,KAAK;AACL,IAAI,QAAQ,CAAC,gBAAgB,CAAC,SAAS,EAAE,CAAC,GAAG,KAAK;AAClD,MAAM,IAAI,IAAI,CAAC,WAAW,EAAE;AAC5B,QAAQ,IAAI,GAAG,CAAC,MAAM,EAAE;AACxB,UAAU,GAAG,CAAC,MAAM,CAAC,SAAS,CAAC,GAAG,CAAC,sBAAsB;AACzD,UAAU,GAAG,CAAC,MAAM,CAAC,YAAY,CAAC,gBAAgB,EAAE,IAAI;AACxD;AACA;AACA,KAAK;AACL,IAAI,QAAQ,CAAC,gBAAgB,CAAC,UAAU,EAAE,CAAC,GAAG,KAAK;AACnD,MAAM,IAAI,GAAG,CAAC,MAAM,EAAE;AACtB,QAAQ,GAAG,CAAC,MAAM,CAAC,SAAS,CAAC,MAAM,CAAC,sBAAsB;AAC1D,QAAQ,GAAG,CAAC,MAAM,CAAC,YAAY,CAAC,gBAAgB,EAAE,KAAK;AACvD;AACA,KAAK;AACL;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA,IAAI,UAAU;;;;"}
@@ -1 +1 @@
1
- {"version":3,"file":"transfer.js","sources":["../../src/js/plugins/transfer.js"],"sourcesContent":["import BaseComponent from 'bootstrap/js/src/base-component.js'\n\n/*import {\n //defineJQueryPlugin,\n //getElementFromSelector,\n //isVisible,\n //reflow,\n //typeCheckConfig,\n getSelectorFromElement, //in base al bs-target\n} from 'bootstrap/js/src/util'*/\nimport EventHandler from 'bootstrap/js/src/dom/event-handler'\nimport SelectorEngine from 'bootstrap/js/src/dom/selector-engine'\n//import Manipulator from 'bootstrap/js/src/dom/manipulator'\n\nconst NAME = 'transfer'\nconst DATA_KEY = 'bs.transfer'\nconst EVENT_KEY = `.${DATA_KEY}`\nconst DATA_API_KEY = '.data-api'\n\nconst EVENT_CLICK_DATA_API = `click${EVENT_KEY}${DATA_API_KEY}`\nconst EVENT_KEYUP_DATA_API = `keyup${EVENT_KEY}${DATA_API_KEY}`\n//const EVENT_SCROLL = `scroll${EVENT_KEY}`\nconst EVENT_CLICK = `click${EVENT_KEY}`\n\nconst CLASS_NAME_ACTIVE = 'active'\nconst CLASS_NAME_SOURCE = 'source'\nconst CLASS_NAME_SEMICHECKED = 'semi-checked'\n\nconst SELECTOR_BLOCK = '[data-bs-transfer]' //'.it-transfer-block'\nconst SELECTOR_BTN_TRANS = 'a.transfer'\nconst SELECTOR_BTN_TRANS_BACK = 'a.backtransfer'\nconst SELECTOR_BTN_RESET = 'a.reset'\nconst SELECTOR_HEAD = '.transfer-header'\nconst SELECTOR_HEAD_INPUT = '.transfer-header input'\nconst SELECTOR_HEAD_LABEL = '.transfer-header span.num'\nconst SELECTOR_LIST_INPUT = '.transfer-group input'\nconst SELECTOR_TRANS_WRAPPER = '.it-transfer-wrapper'\nconst SELECTOR_TRANS_GROUP = '.transfer-group'\nconst SELECTOR_SOURCE = `${SELECTOR_TRANS_WRAPPER}.source`\nconst SELECTOR_TARGET = `${SELECTOR_TRANS_WRAPPER}.target`\nconst SELECTOR_FORM_CHECK = '.form-check'\n\nclass Transfer extends BaseComponent {\n constructor(element) {\n super(element)\n\n this._addBtnElement = SelectorEngine.findOne(SELECTOR_BTN_TRANS, this._element)\n this._invBtnElement = SelectorEngine.findOne(SELECTOR_BTN_TRANS_BACK, this._element)\n this._resetBtnElement = SelectorEngine.findOne(SELECTOR_BTN_RESET, this._element)\n this._listDefault = {\n source: SelectorEngine.find(SELECTOR_SOURCE + ' ' + SELECTOR_TRANS_GROUP + ' ' + SELECTOR_FORM_CHECK, this._element),\n target: SelectorEngine.find(SELECTOR_TARGET + ' ' + SELECTOR_TRANS_GROUP + ' ' + SELECTOR_FORM_CHECK, this._element),\n }\n\n this._bindEvents()\n }\n\n // Getters\n\n static get NAME() {\n return NAME\n }\n\n // Public\n\n // Private\n\n _bindEvents() {\n SelectorEngine.find(SELECTOR_HEAD_INPUT, this._element).forEach((input) => {\n EventHandler.on(input, EVENT_CLICK, () => {\n this._checkListHeader(input.closest(SELECTOR_TRANS_WRAPPER))\n })\n })\n SelectorEngine.find(SELECTOR_LIST_INPUT, this._element).forEach((input) => {\n EventHandler.on(input, EVENT_CLICK, () => {\n this._checkList(input.closest(SELECTOR_TRANS_WRAPPER))\n })\n })\n\n EventHandler.on(this._addBtnElement, EVENT_CLICK, (evt) => {\n evt.preventDefault()\n // disattivo il pulsante corrente\n this._disableElement(this._addBtnElement)\n this._addItems()\n })\n EventHandler.on(this._invBtnElement, EVENT_CLICK, (evt) => {\n evt.preventDefault()\n // disattivo il pulsante corrente\n this._disableElement(this._invBtnElement)\n this._addItems(true)\n })\n\n EventHandler.on(this._resetBtnElement, EVENT_CLICK, (evt) => {\n evt.preventDefault()\n\n this._disableElement(this._addBtnElement)\n this._disableElement(this._invBtnElement)\n this._disableElement(this._resetBtnElement)\n\n this._resetAll()\n })\n }\n\n _disableElement(element) {\n element.classList.remove(CLASS_NAME_ACTIVE)\n element.setAttribute('disabled', 'disabled')\n element.setAttribute('aria-disabled', 'true')\n }\n\n _enableElement(element) {\n element.classList.add(CLASS_NAME_ACTIVE)\n element.removeAttribute('disabled')\n element.removeAttribute('aria-disabled')\n }\n\n _getScopeData(scope) {\n return {\n scope,\n list: SelectorEngine.find(SELECTOR_LIST_INPUT, scope),\n listChecked: SelectorEngine.find(SELECTOR_LIST_INPUT + ':checked', scope),\n head: SelectorEngine.findOne(SELECTOR_HEAD, scope),\n inputHead: SelectorEngine.findOne(SELECTOR_HEAD_INPUT, scope),\n labelNumHead: SelectorEngine.findOne(SELECTOR_HEAD_LABEL, scope),\n group: SelectorEngine.findOne(SELECTOR_TRANS_GROUP, scope),\n }\n }\n\n _checkList(scopeElControl) {\n const scopeData = this._getScopeData(scopeElControl)\n\n if (scopeData.listChecked.length == 0) {\n scopeData.inputHead.classList.remove(CLASS_NAME_SEMICHECKED)\n scopeData.inputHead.checked = true\n // controllo quale pulsante centrale disattivare\n if (scopeElControl.classList.contains(CLASS_NAME_SOURCE)) {\n this._disableElement(this._addBtnElement)\n } else {\n this._disableElement(this._invBtnElement)\n }\n } else {\n if (scopeData.listChecked.length == scopeData.list.length) {\n scopeData.inputHead.classList.remove(CLASS_NAME_SEMICHECKED)\n scopeData.inputHead.checked = true\n } else {\n scopeData.inputHead.classList.add(CLASS_NAME_SEMICHECKED)\n scopeData.inputHead.checked = false\n }\n // controllo quale pulsante centrale disattivare\n if (scopeElControl.classList.contains(CLASS_NAME_SOURCE)) {\n this._enableElement(this._addBtnElement)\n } else {\n this._enableElement(this._invBtnElement)\n }\n }\n }\n\n _checkListHeader(scopeElControl) {\n const scopeData = this._getScopeData(scopeElControl)\n\n if (scopeData.listChecked.length > 0) {\n scopeData.list.forEach((item) => {\n item.checked = false\n })\n scopeData.inputHead.classList.remove(CLASS_NAME_SEMICHECKED)\n scopeData.inputHead.checked = false\n\n // controllo quale pulsante centrale disattivare\n if (scopeElControl.classList.contains(CLASS_NAME_SOURCE)) {\n this._disableElement(this._addBtnElement)\n } else {\n this._disableElement(this._invBtnElement)\n }\n } else {\n scopeData.list.forEach((item) => {\n item.checked = true\n })\n // controllo quale pulsante centrale attivare\n if (scopeElControl.classList.contains(CLASS_NAME_SOURCE)) {\n this._enableElement(this._addBtnElement)\n } else {\n this._enableElement(this._invBtnElement)\n }\n }\n }\n\n _addItems(inverse) {\n const sourceData = this._getScopeData(SelectorEngine.findOne(inverse ? SELECTOR_TARGET : SELECTOR_SOURCE, this._element))\n const targetData = this._getScopeData(SelectorEngine.findOne(inverse ? SELECTOR_SOURCE : SELECTOR_TARGET, this._element))\n\n const sourceItems = sourceData.listChecked //sourceControl.find('.transfer-group input:checked')\n //const sourceItemsBlock = SelectorEngine.findOne('.form-check', sourceData.head) //sourceData.head('.form-check')\n const sourceHeadInput = sourceData.inputHead //sourceControl.find('.transfer-header input')\n const sourceHeadLabel = sourceData.labelNumHead //sourceControl.find('.transfer-header span.num')\n const sourceItemsQty = sourceItems.length\n const sourceTotalQty = sourceData.list.length\n\n const targetDiv = targetData.group\n const targetQty = targetData.list.length + sourceItemsQty\n const targetHeadLabel = targetData.labelNumHead\n const targetHeadInput = targetData.inputHead\n\n // ciclo di aggiunta\n sourceItems.forEach((item) => {\n const wrapper = item.closest(SELECTOR_FORM_CHECK)\n wrapper.remove()\n targetDiv.appendChild(wrapper)\n item.checked = false\n })\n\n // update label\n const totalSource = sourceTotalQty - sourceItemsQty\n const totalTarget = targetQty\n\n sourceHeadLabel.innerText = totalSource\n targetHeadLabel.innerText = totalTarget\n\n // disattivazione header input se non ci sono più elementi\n if (totalSource == 0) {\n sourceHeadInput.setAttribute('disabled', true)\n }\n if (totalTarget > 0) {\n targetHeadInput.removeAttribute('disabled')\n }\n\n // ripristino stato iniziale input header\n sourceHeadInput.classList.remove(CLASS_NAME_SEMICHECKED)\n sourceHeadInput.checked = false\n\n // attivo il pulsante di reset\n this._enableElement(this._resetBtnElement)\n }\n\n _resetAll() {\n const blocks = {\n source: this._getScopeData(SelectorEngine.findOne(SELECTOR_SOURCE, this._element)),\n target: this._getScopeData(SelectorEngine.findOne(SELECTOR_TARGET, this._element)),\n }\n\n Object.keys(blocks).forEach((key) => {\n blocks[key].list.forEach((item) => item.closest(SELECTOR_FORM_CHECK).remove())\n })\n\n Object.keys(blocks).forEach((key) => {\n this._listDefault[key].forEach((item) => {\n item.checked = false\n blocks[key].group.appendChild(item)\n })\n blocks[key].labelNumHead.innerText = this._listDefault[key].length\n\n blocks[key].inputHead.removeAttribute('disabled')\n blocks[key].inputHead.classList.remove(CLASS_NAME_SEMICHECKED)\n blocks[key].inputHead.checked = false\n })\n }\n}\n\n/**\n * ------------------------------------------------------------------------\n * Data Api implementation\n * ------------------------------------------------------------------------\n */\n\n/*SelectorEngine.find(SELECTOR_BLOCK).forEach((block) => {\n Transfer.getOrCreateInstance(block)\n})*/\n\nEventHandler.on(document, EVENT_CLICK_DATA_API, SELECTOR_BLOCK + ' .form-check label', function () {\n Transfer.getOrCreateInstance(this.closest(SELECTOR_BLOCK))\n})\nEventHandler.on(document, EVENT_KEYUP_DATA_API, SELECTOR_BLOCK + ' .form-check label', function () {\n Transfer.getOrCreateInstance(this.closest(SELECTOR_BLOCK))\n})\n\nexport default Transfer\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"transfer.js","sources":["../../src/js/plugins/transfer.js"],"sourcesContent":["import BaseComponent from 'bootstrap/js/src/base-component.js'\n\n/*import {\n //defineJQueryPlugin,\n //getElementFromSelector,\n //isVisible,\n //reflow,\n //typeCheckConfig,\n getSelectorFromElement, //in base al bs-target\n} from 'bootstrap/js/src/util'*/\nimport EventHandler from 'bootstrap/js/src/dom/event-handler'\nimport SelectorEngine from 'bootstrap/js/src/dom/selector-engine'\n//import Manipulator from 'bootstrap/js/src/dom/manipulator'\n\nconst NAME = 'transfer'\nconst DATA_KEY = 'bs.transfer'\nconst EVENT_KEY = `.${DATA_KEY}`\nconst DATA_API_KEY = '.data-api'\n\nconst EVENT_CLICK_DATA_API = `click${EVENT_KEY}${DATA_API_KEY}`\nconst EVENT_KEYUP_DATA_API = `keyup${EVENT_KEY}${DATA_API_KEY}`\n//const EVENT_SCROLL = `scroll${EVENT_KEY}`\nconst EVENT_CLICK = `click${EVENT_KEY}`\n\nconst CLASS_NAME_ACTIVE = 'active'\nconst CLASS_NAME_SOURCE = 'source'\nconst CLASS_NAME_SEMICHECKED = 'semi-checked'\n\nconst SELECTOR_BLOCK = '[data-bs-transfer]' //'.it-transfer-block'\nconst SELECTOR_BTN_TRANS = 'a.transfer'\nconst SELECTOR_BTN_TRANS_BACK = 'a.backtransfer'\nconst SELECTOR_BTN_RESET = 'a.reset'\nconst SELECTOR_HEAD = '.transfer-header'\nconst SELECTOR_HEAD_INPUT = '.transfer-header input'\nconst SELECTOR_HEAD_LABEL = '.transfer-header span.num'\nconst SELECTOR_LIST_INPUT = '.transfer-group input'\nconst SELECTOR_TRANS_WRAPPER = '.it-transfer-wrapper'\nconst SELECTOR_TRANS_GROUP = '.transfer-group'\nconst SELECTOR_SOURCE = `${SELECTOR_TRANS_WRAPPER}.source`\nconst SELECTOR_TARGET = `${SELECTOR_TRANS_WRAPPER}.target`\nconst SELECTOR_FORM_CHECK = '.form-check'\n\nclass Transfer extends BaseComponent {\n constructor(element) {\n super(element)\n\n this._addBtnElement = SelectorEngine.findOne(SELECTOR_BTN_TRANS, this._element)\n this._invBtnElement = SelectorEngine.findOne(SELECTOR_BTN_TRANS_BACK, this._element)\n this._resetBtnElement = SelectorEngine.findOne(SELECTOR_BTN_RESET, this._element)\n this._listDefault = {\n source: SelectorEngine.find(SELECTOR_SOURCE + ' ' + SELECTOR_TRANS_GROUP + ' ' + SELECTOR_FORM_CHECK, this._element),\n target: SelectorEngine.find(SELECTOR_TARGET + ' ' + SELECTOR_TRANS_GROUP + ' ' + SELECTOR_FORM_CHECK, this._element),\n }\n\n this._bindEvents()\n }\n\n // Getters\n\n static get NAME() {\n return NAME\n }\n\n // Public\n\n // Private\n\n _bindEvents() {\n SelectorEngine.find(SELECTOR_HEAD_INPUT, this._element).forEach((input) => {\n EventHandler.on(input, EVENT_CLICK, () => {\n this._checkListHeader(input.closest(SELECTOR_TRANS_WRAPPER))\n })\n })\n SelectorEngine.find(SELECTOR_LIST_INPUT, this._element).forEach((input) => {\n EventHandler.on(input, EVENT_CLICK, () => {\n this._checkList(input.closest(SELECTOR_TRANS_WRAPPER))\n })\n })\n\n EventHandler.on(this._addBtnElement, EVENT_CLICK, (evt) => {\n evt.preventDefault()\n // disattivo il pulsante corrente\n this._disableElement(this._addBtnElement)\n this._addItems()\n })\n EventHandler.on(this._invBtnElement, EVENT_CLICK, (evt) => {\n evt.preventDefault()\n // disattivo il pulsante corrente\n this._disableElement(this._invBtnElement)\n this._addItems(true)\n })\n\n EventHandler.on(this._resetBtnElement, EVENT_CLICK, (evt) => {\n evt.preventDefault()\n\n this._disableElement(this._addBtnElement)\n this._disableElement(this._invBtnElement)\n this._disableElement(this._resetBtnElement)\n\n this._resetAll()\n })\n }\n\n _disableElement(element) {\n element.classList.remove(CLASS_NAME_ACTIVE)\n element.setAttribute('disabled', 'disabled')\n element.setAttribute('aria-disabled', 'true')\n }\n\n _enableElement(element) {\n element.classList.add(CLASS_NAME_ACTIVE)\n element.removeAttribute('disabled')\n element.removeAttribute('aria-disabled')\n }\n\n _getScopeData(scope) {\n return {\n scope,\n list: SelectorEngine.find(SELECTOR_LIST_INPUT, scope),\n listChecked: SelectorEngine.find(SELECTOR_LIST_INPUT + ':checked', scope),\n head: SelectorEngine.findOne(SELECTOR_HEAD, scope),\n inputHead: SelectorEngine.findOne(SELECTOR_HEAD_INPUT, scope),\n labelNumHead: SelectorEngine.findOne(SELECTOR_HEAD_LABEL, scope),\n group: SelectorEngine.findOne(SELECTOR_TRANS_GROUP, scope),\n }\n }\n\n _checkList(scopeElControl) {\n const scopeData = this._getScopeData(scopeElControl)\n\n if (scopeData.listChecked.length == 0) {\n scopeData.inputHead.classList.remove(CLASS_NAME_SEMICHECKED)\n scopeData.inputHead.checked = true\n // controllo quale pulsante centrale disattivare\n if (scopeElControl.classList.contains(CLASS_NAME_SOURCE)) {\n this._disableElement(this._addBtnElement)\n } else {\n this._disableElement(this._invBtnElement)\n }\n } else {\n if (scopeData.listChecked.length == scopeData.list.length) {\n scopeData.inputHead.classList.remove(CLASS_NAME_SEMICHECKED)\n scopeData.inputHead.checked = true\n } else {\n scopeData.inputHead.classList.add(CLASS_NAME_SEMICHECKED)\n scopeData.inputHead.checked = false\n }\n // controllo quale pulsante centrale disattivare\n if (scopeElControl.classList.contains(CLASS_NAME_SOURCE)) {\n this._enableElement(this._addBtnElement)\n } else {\n this._enableElement(this._invBtnElement)\n }\n }\n }\n\n _checkListHeader(scopeElControl) {\n const scopeData = this._getScopeData(scopeElControl)\n\n if (scopeData.listChecked.length > 0) {\n scopeData.list.forEach((item) => {\n item.checked = false\n })\n scopeData.inputHead.classList.remove(CLASS_NAME_SEMICHECKED)\n scopeData.inputHead.checked = false\n\n // controllo quale pulsante centrale disattivare\n if (scopeElControl.classList.contains(CLASS_NAME_SOURCE)) {\n this._disableElement(this._addBtnElement)\n } else {\n this._disableElement(this._invBtnElement)\n }\n } else {\n scopeData.list.forEach((item) => {\n item.checked = true\n })\n // controllo quale pulsante centrale attivare\n if (scopeElControl.classList.contains(CLASS_NAME_SOURCE)) {\n this._enableElement(this._addBtnElement)\n } else {\n this._enableElement(this._invBtnElement)\n }\n }\n }\n\n _addItems(inverse) {\n const sourceData = this._getScopeData(SelectorEngine.findOne(inverse ? SELECTOR_TARGET : SELECTOR_SOURCE, this._element))\n const targetData = this._getScopeData(SelectorEngine.findOne(inverse ? SELECTOR_SOURCE : SELECTOR_TARGET, this._element))\n\n const sourceItems = sourceData.listChecked //sourceControl.find('.transfer-group input:checked')\n //const sourceItemsBlock = SelectorEngine.findOne('.form-check', sourceData.head) //sourceData.head('.form-check')\n const sourceHeadInput = sourceData.inputHead //sourceControl.find('.transfer-header input')\n const sourceHeadLabel = sourceData.labelNumHead //sourceControl.find('.transfer-header span.num')\n const sourceItemsQty = sourceItems.length\n const sourceTotalQty = sourceData.list.length\n\n const targetDiv = targetData.group\n const targetQty = targetData.list.length + sourceItemsQty\n const targetHeadLabel = targetData.labelNumHead\n const targetHeadInput = targetData.inputHead\n\n // ciclo di aggiunta\n sourceItems.forEach((item) => {\n const wrapper = item.closest(SELECTOR_FORM_CHECK)\n wrapper.remove()\n targetDiv.appendChild(wrapper)\n item.checked = false\n })\n\n // update label\n const totalSource = sourceTotalQty - sourceItemsQty\n const totalTarget = targetQty\n\n sourceHeadLabel.innerText = totalSource\n targetHeadLabel.innerText = totalTarget\n\n // disattivazione header input se non ci sono più elementi\n if (totalSource == 0) {\n sourceHeadInput.setAttribute('disabled', true)\n }\n if (totalTarget > 0) {\n targetHeadInput.removeAttribute('disabled')\n }\n\n // ripristino stato iniziale input header\n sourceHeadInput.classList.remove(CLASS_NAME_SEMICHECKED)\n sourceHeadInput.checked = false\n\n // attivo il pulsante di reset\n this._enableElement(this._resetBtnElement)\n }\n\n _resetAll() {\n const blocks = {\n source: this._getScopeData(SelectorEngine.findOne(SELECTOR_SOURCE, this._element)),\n target: this._getScopeData(SelectorEngine.findOne(SELECTOR_TARGET, this._element)),\n }\n\n Object.keys(blocks).forEach((key) => {\n blocks[key].list.forEach((item) => item.closest(SELECTOR_FORM_CHECK).remove())\n })\n\n Object.keys(blocks).forEach((key) => {\n this._listDefault[key].forEach((item) => {\n item.checked = false\n blocks[key].group.appendChild(item)\n })\n blocks[key].labelNumHead.innerText = this._listDefault[key].length\n\n blocks[key].inputHead.removeAttribute('disabled')\n blocks[key].inputHead.classList.remove(CLASS_NAME_SEMICHECKED)\n blocks[key].inputHead.checked = false\n })\n }\n}\n\n/**\n * ------------------------------------------------------------------------\n * Data Api implementation\n * ------------------------------------------------------------------------\n */\n\n/*SelectorEngine.find(SELECTOR_BLOCK).forEach((block) => {\n Transfer.getOrCreateInstance(block)\n})*/\n\nEventHandler.on(document, EVENT_CLICK_DATA_API, SELECTOR_BLOCK + ' .form-check label', function () {\n Transfer.getOrCreateInstance(this.closest(SELECTOR_BLOCK))\n})\nEventHandler.on(document, EVENT_KEYUP_DATA_API, SELECTOR_BLOCK + ' .form-check label', function () {\n Transfer.getOrCreateInstance(this.closest(SELECTOR_BLOCK))\n})\n\nexport default Transfer\n"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"upload-dragdrop.js","sources":["../../src/js/plugins/upload-dragdrop.js"],"sourcesContent":["import BaseComponent from 'bootstrap/js/src/base-component.js'\n\nimport EventHandler from 'bootstrap/js/src/dom/event-handler'\nimport SelectorEngine from 'bootstrap/js/src/dom/selector-engine'\n\nimport ProgressDonut from './progress-donut'\n\nconst NAME = 'upload'\nconst DATA_KEY = 'bs.upload'\nconst EVENT_KEY = `.${DATA_KEY}`\nconst DATA_API_KEY = '.data-api'\n\nconst EVENT_CLICK_DATA_API = `click${EVENT_KEY}${DATA_API_KEY}`\n\nconst EVENT_DRAG = `drag`\nconst EVENT_DRAG_START = `dragstart`\nconst EVENT_DRAG_END = `dragend`\nconst EVENT_DRAG_OVER = `dragover`\nconst EVENT_DRAG_ENTER = `dragenter`\nconst EVENT_DRAG_LEAVE = `dragleave`\nconst EVENT_DROP = `drop`\n\nconst CLASS_NAME_SUCCESS = 'success'\nconst CLASS_NAME_DRAGOVER = 'dragover'\nconst CLASS_NAME_LOADING = 'loading'\n\nconst SELECTOR_FORM = '[data-bs-upload-dragdrop]'\nconst SELECTOR_DONUT = '[data-bs-progress-donut]'\n\nclass UploadDragDrop extends BaseComponent {\n constructor(element) {\n super(element)\n\n const donutElement = SelectorEngine.findOne(SELECTOR_DONUT, this._element)\n if (donutElement) {\n this._donut = ProgressDonut.getOrCreateInstance(donutElement)\n }\n\n this._bindEvents()\n }\n\n // Getters\n\n static get NAME() {\n return NAME\n }\n\n // Public\n progress(value) {\n this._donut.set(value)\n }\n\n start() {\n this.reset()\n this._element.classList.add(CLASS_NAME_LOADING)\n }\n\n success() {\n this._element.classList.remove(CLASS_NAME_LOADING)\n this._element.classList.add(CLASS_NAME_SUCCESS)\n }\n\n reset() {\n this._element.classList.remove(CLASS_NAME_LOADING)\n this._element.classList.remove(CLASS_NAME_SUCCESS)\n this._donut.set(0)\n }\n\n dispose() {\n this._donut.dispose()\n\n super.dispose()\n }\n\n // Private\n _bindEvents() {\n EventHandler.on(this._element, EVENT_DRAG, (evt) => this._preventEvent(evt))\n EventHandler.on(this._element, EVENT_DRAG_START, (evt) => this._preventEvent(evt))\n EventHandler.on(this._element, EVENT_DRAG_END, (evt) => this._preventEvent(evt))\n EventHandler.on(this._element, EVENT_DRAG_OVER, (evt) => this._preventEvent(evt))\n EventHandler.on(this._element, EVENT_DRAG_ENTER, (evt) => this._preventEvent(evt))\n EventHandler.on(this._element, EVENT_DRAG_LEAVE, (evt) => this._preventEvent(evt))\n EventHandler.on(this._element, EVENT_DROP, (evt) => this._preventEvent(evt))\n\n EventHandler.on(this._element, EVENT_DRAG_OVER, () => this._dropIn())\n EventHandler.on(this._element, EVENT_DRAG_ENTER, () => this._dropIn())\n EventHandler.on(this._element, EVENT_DRAG_LEAVE, () => this._dropOut())\n EventHandler.on(this._element, EVENT_DRAG_END, () => this._dropOut())\n EventHandler.on(this._element, EVENT_DROP, () => this._dropOut())\n\n EventHandler.on(this._element, EVENT_DROP, () => this._drop())\n }\n _preventEvent(evt) {\n evt.preventDefault()\n evt.stopPropagation()\n }\n\n _dropIn() {\n if (!this._isSuccess()) {\n this._element.classList.add(CLASS_NAME_DRAGOVER)\n }\n }\n _dropOut() {\n if (!this._isSuccess()) {\n this._element.classList.remove(CLASS_NAME_DRAGOVER)\n }\n }\n _drop() {\n if (!this._isSuccess()) {\n this.start()\n }\n }\n\n _isSuccess() {\n return this._element.classList.contains(CLASS_NAME_SUCCESS)\n }\n}\n\n/**\n * ------------------------------------------------------------------------\n * Data Api implementation\n * ------------------------------------------------------------------------\n */\n\n/*SelectorEngine.find(SELECTOR_FORM).forEach((form) => {\n UploadDragDrop.getOrCreateInstance(form)\n})*/\n\nconst createInput = (element) => {\n let found = element.matches && element.matches(SELECTOR_FORM) ? element : element.closest ? element.closest(SELECTOR_FORM) : null\n if (found) {\n UploadDragDrop.getOrCreateInstance(found)\n }\n return null\n}\n\nif (typeof document !== 'undefined') {\n document.addEventListener('dragenter', function (evt) {\n createInput(evt.target)\n })\n EventHandler.on(document, EVENT_CLICK_DATA_API, SELECTOR_FORM + ' label', function () {\n createInput(this)\n })\n}\n\nexport default UploadDragDrop\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"upload-dragdrop.js","sources":["../../src/js/plugins/upload-dragdrop.js"],"sourcesContent":["import BaseComponent from 'bootstrap/js/src/base-component.js'\n\nimport EventHandler from 'bootstrap/js/src/dom/event-handler'\nimport SelectorEngine from 'bootstrap/js/src/dom/selector-engine'\n\nimport ProgressDonut from './progress-donut'\n\nconst NAME = 'upload'\nconst DATA_KEY = 'bs.upload'\nconst EVENT_KEY = `.${DATA_KEY}`\nconst DATA_API_KEY = '.data-api'\n\nconst EVENT_CLICK_DATA_API = `click${EVENT_KEY}${DATA_API_KEY}`\n\nconst EVENT_DRAG = `drag`\nconst EVENT_DRAG_START = `dragstart`\nconst EVENT_DRAG_END = `dragend`\nconst EVENT_DRAG_OVER = `dragover`\nconst EVENT_DRAG_ENTER = `dragenter`\nconst EVENT_DRAG_LEAVE = `dragleave`\nconst EVENT_DROP = `drop`\n\nconst CLASS_NAME_SUCCESS = 'success'\nconst CLASS_NAME_DRAGOVER = 'dragover'\nconst CLASS_NAME_LOADING = 'loading'\n\nconst SELECTOR_FORM = '[data-bs-upload-dragdrop]'\nconst SELECTOR_DONUT = '[data-bs-progress-donut]'\n\nclass UploadDragDrop extends BaseComponent {\n constructor(element) {\n super(element)\n\n const donutElement = SelectorEngine.findOne(SELECTOR_DONUT, this._element)\n if (donutElement) {\n this._donut = ProgressDonut.getOrCreateInstance(donutElement)\n }\n\n this._bindEvents()\n }\n\n // Getters\n\n static get NAME() {\n return NAME\n }\n\n // Public\n progress(value) {\n this._donut.set(value)\n }\n\n start() {\n this.reset()\n this._element.classList.add(CLASS_NAME_LOADING)\n }\n\n success() {\n this._element.classList.remove(CLASS_NAME_LOADING)\n this._element.classList.add(CLASS_NAME_SUCCESS)\n }\n\n reset() {\n this._element.classList.remove(CLASS_NAME_LOADING)\n this._element.classList.remove(CLASS_NAME_SUCCESS)\n this._donut.set(0)\n }\n\n dispose() {\n this._donut.dispose()\n\n super.dispose()\n }\n\n // Private\n _bindEvents() {\n EventHandler.on(this._element, EVENT_DRAG, (evt) => this._preventEvent(evt))\n EventHandler.on(this._element, EVENT_DRAG_START, (evt) => this._preventEvent(evt))\n EventHandler.on(this._element, EVENT_DRAG_END, (evt) => this._preventEvent(evt))\n EventHandler.on(this._element, EVENT_DRAG_OVER, (evt) => this._preventEvent(evt))\n EventHandler.on(this._element, EVENT_DRAG_ENTER, (evt) => this._preventEvent(evt))\n EventHandler.on(this._element, EVENT_DRAG_LEAVE, (evt) => this._preventEvent(evt))\n EventHandler.on(this._element, EVENT_DROP, (evt) => this._preventEvent(evt))\n\n EventHandler.on(this._element, EVENT_DRAG_OVER, () => this._dropIn())\n EventHandler.on(this._element, EVENT_DRAG_ENTER, () => this._dropIn())\n EventHandler.on(this._element, EVENT_DRAG_LEAVE, () => this._dropOut())\n EventHandler.on(this._element, EVENT_DRAG_END, () => this._dropOut())\n EventHandler.on(this._element, EVENT_DROP, () => this._dropOut())\n\n EventHandler.on(this._element, EVENT_DROP, () => this._drop())\n }\n _preventEvent(evt) {\n evt.preventDefault()\n evt.stopPropagation()\n }\n\n _dropIn() {\n if (!this._isSuccess()) {\n this._element.classList.add(CLASS_NAME_DRAGOVER)\n }\n }\n _dropOut() {\n if (!this._isSuccess()) {\n this._element.classList.remove(CLASS_NAME_DRAGOVER)\n }\n }\n _drop() {\n if (!this._isSuccess()) {\n this.start()\n }\n }\n\n _isSuccess() {\n return this._element.classList.contains(CLASS_NAME_SUCCESS)\n }\n}\n\n/**\n * ------------------------------------------------------------------------\n * Data Api implementation\n * ------------------------------------------------------------------------\n */\n\n/*SelectorEngine.find(SELECTOR_FORM).forEach((form) => {\n UploadDragDrop.getOrCreateInstance(form)\n})*/\n\nconst createInput = (element) => {\n let found = element.matches && element.matches(SELECTOR_FORM) ? element : element.closest ? element.closest(SELECTOR_FORM) : null\n if (found) {\n UploadDragDrop.getOrCreateInstance(found)\n }\n return null\n}\n\nif (typeof document !== 'undefined') {\n document.addEventListener('dragenter', function (evt) {\n createInput(evt.target)\n })\n EventHandler.on(document, EVENT_CLICK_DATA_API, SELECTOR_FORM + ' label', function () {\n createInput(this)\n })\n}\n\nexport default UploadDragDrop\n"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"cookies.js","sources":["../../../src/js/plugins/util/cookies.js"],"sourcesContent":["const preferencesMap = { ck3: {} }\n\n/*\n Possible choices:\n false => Accept once\n true => Accept always\n*/\nconst rememberChoice = (service, remember) => {\n preferencesMap.ck3[service] = remember\n localStorage.setItem('bs-ck3', JSON.stringify(preferencesMap.ck3))\n}\n\nconst isChoiceRemembered = (service) => {\n preferencesMap.ck3 = JSON.parse(localStorage.getItem('bs-ck3') || '{}')\n return preferencesMap.ck3[service] || false\n}\n\nconst clearAllRememberedChoices = () => {\n localStorage.removeItem('bs-ck3')\n}\n\nconst cookies = {\n rememberChoice,\n isChoiceRemembered,\n clearAllRememberedChoices,\n}\n\nexport { cookies }\n"],"names":[],"mappings":"AAAA,MAAM,cAAc,GAAG,EAAE,GAAG,EAAE,EAAE,GAAE;AAClC;AACA;AACA;AACA;AACA;AACA;AACA,MAAM,cAAc,GAAG,CAAC,OAAO,EAAE,QAAQ,KAAK;AAC9C,EAAE,cAAc,CAAC,GAAG,CAAC,OAAO,CAAC,GAAG,SAAQ;AACxC,EAAE,YAAY,CAAC,OAAO,CAAC,QAAQ,EAAE,IAAI,CAAC,SAAS,CAAC,cAAc,CAAC,GAAG,CAAC,EAAC;AACpE,EAAC;AACD;AACA,MAAM,kBAAkB,GAAG,CAAC,OAAO,KAAK;AACxC,EAAE,cAAc,CAAC,GAAG,GAAG,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC,OAAO,CAAC,QAAQ,CAAC,IAAI,IAAI,EAAC;AACzE,EAAE,OAAO,cAAc,CAAC,GAAG,CAAC,OAAO,CAAC,IAAI,KAAK;AAC7C,EAAC;AACD;AACA,MAAM,yBAAyB,GAAG,MAAM;AACxC,EAAE,YAAY,CAAC,UAAU,CAAC,QAAQ,EAAC;AACnC,EAAC;AACD;AACK,MAAC,OAAO,GAAG;AAChB,EAAE,cAAc;AAChB,EAAE,kBAAkB;AACpB,EAAE,yBAAyB;AAC3B;;;;"}
1
+ {"version":3,"file":"cookies.js","sources":["../../../src/js/plugins/util/cookies.js"],"sourcesContent":["const preferencesMap = { ck3: {} }\n\n/*\n Possible choices:\n false => Accept once\n true => Accept always\n*/\nconst rememberChoice = (service, remember) => {\n preferencesMap.ck3[service] = remember\n localStorage.setItem('bs-ck3', JSON.stringify(preferencesMap.ck3))\n}\n\nconst isChoiceRemembered = (service) => {\n preferencesMap.ck3 = JSON.parse(localStorage.getItem('bs-ck3') || '{}')\n return preferencesMap.ck3[service] || false\n}\n\nconst clearAllRememberedChoices = () => {\n localStorage.removeItem('bs-ck3')\n}\n\nconst cookies = {\n rememberChoice,\n isChoiceRemembered,\n clearAllRememberedChoices,\n}\n\nexport { cookies }\n"],"names":[],"mappings":"AAAA,MAAM,cAAc,GAAG,EAAE,GAAG,EAAE,EAAE;;AAEhC;AACA;AACA;AACA;AACA;AACA,MAAM,cAAc,GAAG,CAAC,OAAO,EAAE,QAAQ,KAAK;AAC9C,EAAE,cAAc,CAAC,GAAG,CAAC,OAAO,CAAC,GAAG;AAChC,EAAE,YAAY,CAAC,OAAO,CAAC,QAAQ,EAAE,IAAI,CAAC,SAAS,CAAC,cAAc,CAAC,GAAG,CAAC;AACnE;;AAEA,MAAM,kBAAkB,GAAG,CAAC,OAAO,KAAK;AACxC,EAAE,cAAc,CAAC,GAAG,GAAG,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC,OAAO,CAAC,QAAQ,CAAC,IAAI,IAAI;AACxE,EAAE,OAAO,cAAc,CAAC,GAAG,CAAC,OAAO,CAAC,IAAI;AACxC;;AAEA,MAAM,yBAAyB,GAAG,MAAM;AACxC,EAAE,YAAY,CAAC,UAAU,CAAC,QAAQ;AAClC;;AAEK,MAAC,OAAO,GAAG;AAChB,EAAE,cAAc;AAChB,EAAE,kBAAkB;AACpB,EAAE,yBAAyB;AAC3B;;;;"}
@@ -1 +1 @@
1
- {"version":3,"file":"device.js","sources":["../../../src/js/plugins/util/device.js"],"sourcesContent":["const MEDIA_MOBILE = '(max-width: 991px)'\n/*const MEDIA_TABLET = ''\nconst MEDIA_PHONE = ''\nconst MEDIA_DESKTOP = ''*/\n\nconst isScreenMobile = () => {\n if (typeof window !== 'undefined') {\n return window.matchMedia(MEDIA_MOBILE).matches\n }\n}\n\nexport { isScreenMobile }\n"],"names":[],"mappings":"AAAA,MAAM,YAAY,GAAG,qBAAoB;AACzC;AACA;AACA;AACA;AACK,MAAC,cAAc,GAAG,MAAM;AAC7B,EAAE,IAAI,OAAO,MAAM,KAAK,WAAW,EAAE;AACrC,IAAI,OAAO,MAAM,CAAC,UAAU,CAAC,YAAY,CAAC,CAAC,OAAO;AAClD,GAAG;AACH;;;;"}
1
+ {"version":3,"file":"device.js","sources":["../../../src/js/plugins/util/device.js"],"sourcesContent":["const MEDIA_MOBILE = '(max-width: 991px)'\n/*const MEDIA_TABLET = ''\nconst MEDIA_PHONE = ''\nconst MEDIA_DESKTOP = ''*/\n\nconst isScreenMobile = () => {\n if (typeof window !== 'undefined') {\n return window.matchMedia(MEDIA_MOBILE).matches\n }\n}\n\nexport { isScreenMobile }\n"],"names":[],"mappings":"AAAA,MAAM,YAAY,GAAG;AACrB;AACA;AACA;;AAEK,MAAC,cAAc,GAAG,MAAM;AAC7B,EAAE,IAAI,OAAO,MAAM,KAAK,WAAW,EAAE;AACrC,IAAI,OAAO,MAAM,CAAC,UAAU,CAAC,YAAY,CAAC,CAAC;AAC3C;AACA;;;;"}
@@ -1 +1 @@
1
- {"version":3,"file":"dom.js","sources":["../../../src/js/plugins/util/dom.js"],"sourcesContent":["/**\n * get the element index in a array of elements\n * @param {Object} target - the target element to find\n * @param {array} list - the elements list\n * @returns {int} the element index\n */\nexport const getElementIndex = (target, list) => {\n let foundIdx = null\n list.forEach((element, idx) => {\n if (element === target) {\n foundIdx = idx\n }\n })\n return foundIdx\n}\n\n/**\n * set focus on a simbling\n * @param {*} currentElement - the current focused element\n * @param {*} simblings - list of simblings\n * @param {Object} config - isDirectionTop, isLimit, loop\n */\nexport const focusSimbling = (currentElement, simblings, config) => {\n config = {\n isDirectionTop: false,\n isLimit: false,\n loop: false,\n ...(typeof config === 'object' ? config : {}),\n }\n const currIdx = getElementIndex(currentElement, simblings)\n\n let found = null\n if (config.isLimit && config.isDirectionTop && currIdx > 0) {\n //get first element\n found = simblings[0]\n } else if (config.isLimit && currIdx < simblings.length - 1) {\n //get last element\n found = simblings[simblings.length - 1]\n } else if (config.isDirectionTop) {\n //get prev element\n if (!config.loop && currIdx === 0) {\n return\n }\n found = simblings[currIdx === 0 ? simblings.length - 1 : currIdx - 1]\n } else {\n //get next element\n if (!config.loop && currIdx === simblings.length - 1) {\n return\n }\n found = simblings[currIdx === simblings.length - 1 ? 0 : currIdx + 1]\n }\n\n if (found) {\n found.focus()\n }\n}\n"],"names":[],"mappings":"AAAA;AACA;AACA;AACA;AACA;AACA;AACY,MAAC,eAAe,GAAG,CAAC,MAAM,EAAE,IAAI,KAAK;AACjD,EAAE,IAAI,QAAQ,GAAG,KAAI;AACrB,EAAE,IAAI,CAAC,OAAO,CAAC,CAAC,OAAO,EAAE,GAAG,KAAK;AACjC,IAAI,IAAI,OAAO,KAAK,MAAM,EAAE;AAC5B,MAAM,QAAQ,GAAG,IAAG;AACpB,KAAK;AACL,GAAG,EAAC;AACJ,EAAE,OAAO,QAAQ;AACjB,EAAC;AACD;AACA;AACA;AACA;AACA;AACA;AACA;AACY,MAAC,aAAa,GAAG,CAAC,cAAc,EAAE,SAAS,EAAE,MAAM,KAAK;AACpE,EAAE,MAAM,GAAG;AACX,IAAI,cAAc,EAAE,KAAK;AACzB,IAAI,OAAO,EAAE,KAAK;AAClB,IAAI,IAAI,EAAE,KAAK;AACf,IAAI,IAAI,OAAO,MAAM,KAAK,QAAQ,GAAG,MAAM,GAAG,EAAE,CAAC;AACjD,IAAG;AACH,EAAE,MAAM,OAAO,GAAG,eAAe,CAAC,cAAc,EAAE,SAAS,EAAC;AAC5D;AACA,EAAE,IAAI,KAAK,GAAG,KAAI;AAClB,EAAE,IAAI,MAAM,CAAC,OAAO,IAAI,MAAM,CAAC,cAAc,IAAI,OAAO,GAAG,CAAC,EAAE;AAC9D;AACA,IAAI,KAAK,GAAG,SAAS,CAAC,CAAC,EAAC;AACxB,GAAG,MAAM,IAAI,MAAM,CAAC,OAAO,IAAI,OAAO,GAAG,SAAS,CAAC,MAAM,GAAG,CAAC,EAAE;AAC/D;AACA,IAAI,KAAK,GAAG,SAAS,CAAC,SAAS,CAAC,MAAM,GAAG,CAAC,EAAC;AAC3C,GAAG,MAAM,IAAI,MAAM,CAAC,cAAc,EAAE;AACpC;AACA,IAAI,IAAI,CAAC,MAAM,CAAC,IAAI,IAAI,OAAO,KAAK,CAAC,EAAE;AACvC,MAAM,MAAM;AACZ,KAAK;AACL,IAAI,KAAK,GAAG,SAAS,CAAC,OAAO,KAAK,CAAC,GAAG,SAAS,CAAC,MAAM,GAAG,CAAC,GAAG,OAAO,GAAG,CAAC,EAAC;AACzE,GAAG,MAAM;AACT;AACA,IAAI,IAAI,CAAC,MAAM,CAAC,IAAI,IAAI,OAAO,KAAK,SAAS,CAAC,MAAM,GAAG,CAAC,EAAE;AAC1D,MAAM,MAAM;AACZ,KAAK;AACL,IAAI,KAAK,GAAG,SAAS,CAAC,OAAO,KAAK,SAAS,CAAC,MAAM,GAAG,CAAC,GAAG,CAAC,GAAG,OAAO,GAAG,CAAC,EAAC;AACzE,GAAG;AACH;AACA,EAAE,IAAI,KAAK,EAAE;AACb,IAAI,KAAK,CAAC,KAAK,GAAE;AACjB,GAAG;AACH;;;;"}
1
+ {"version":3,"file":"dom.js","sources":["../../../src/js/plugins/util/dom.js"],"sourcesContent":["/**\n * get the element index in a array of elements\n * @param {Object} target - the target element to find\n * @param {array} list - the elements list\n * @returns {int} the element index\n */\nexport const getElementIndex = (target, list) => {\n let foundIdx = null\n list.forEach((element, idx) => {\n if (element === target) {\n foundIdx = idx\n }\n })\n return foundIdx\n}\n\n/**\n * set focus on a simbling\n * @param {*} currentElement - the current focused element\n * @param {*} simblings - list of simblings\n * @param {Object} config - isDirectionTop, isLimit, loop\n */\nexport const focusSimbling = (currentElement, simblings, config) => {\n config = {\n isDirectionTop: false,\n isLimit: false,\n loop: false,\n ...(typeof config === 'object' ? config : {}),\n }\n const currIdx = getElementIndex(currentElement, simblings)\n\n let found = null\n if (config.isLimit && config.isDirectionTop && currIdx > 0) {\n //get first element\n found = simblings[0]\n } else if (config.isLimit && currIdx < simblings.length - 1) {\n //get last element\n found = simblings[simblings.length - 1]\n } else if (config.isDirectionTop) {\n //get prev element\n if (!config.loop && currIdx === 0) {\n return\n }\n found = simblings[currIdx === 0 ? simblings.length - 1 : currIdx - 1]\n } else {\n //get next element\n if (!config.loop && currIdx === simblings.length - 1) {\n return\n }\n found = simblings[currIdx === simblings.length - 1 ? 0 : currIdx + 1]\n }\n\n if (found) {\n found.focus()\n }\n}\n"],"names":[],"mappings":"AAAA;AACA;AACA;AACA;AACA;AACA;AACY,MAAC,eAAe,GAAG,CAAC,MAAM,EAAE,IAAI,KAAK;AACjD,EAAE,IAAI,QAAQ,GAAG;AACjB,EAAE,IAAI,CAAC,OAAO,CAAC,CAAC,OAAO,EAAE,GAAG,KAAK;AACjC,IAAI,IAAI,OAAO,KAAK,MAAM,EAAE;AAC5B,MAAM,QAAQ,GAAG;AACjB;AACA,GAAG;AACH,EAAE,OAAO;AACT;;AAEA;AACA;AACA;AACA;AACA;AACA;AACY,MAAC,aAAa,GAAG,CAAC,cAAc,EAAE,SAAS,EAAE,MAAM,KAAK;AACpE,EAAE,MAAM,GAAG;AACX,IAAI,cAAc,EAAE,KAAK;AACzB,IAAI,OAAO,EAAE,KAAK;AAClB,IAAI,IAAI,EAAE,KAAK;AACf,IAAI,IAAI,OAAO,MAAM,KAAK,QAAQ,GAAG,MAAM,GAAG,EAAE,CAAC;AACjD;AACA,EAAE,MAAM,OAAO,GAAG,eAAe,CAAC,cAAc,EAAE,SAAS;;AAE3D,EAAE,IAAI,KAAK,GAAG;AACd,EAAE,IAAI,MAAM,CAAC,OAAO,IAAI,MAAM,CAAC,cAAc,IAAI,OAAO,GAAG,CAAC,EAAE;AAC9D;AACA,IAAI,KAAK,GAAG,SAAS,CAAC,CAAC;AACvB,GAAG,MAAM,IAAI,MAAM,CAAC,OAAO,IAAI,OAAO,GAAG,SAAS,CAAC,MAAM,GAAG,CAAC,EAAE;AAC/D;AACA,IAAI,KAAK,GAAG,SAAS,CAAC,SAAS,CAAC,MAAM,GAAG,CAAC;AAC1C,GAAG,MAAM,IAAI,MAAM,CAAC,cAAc,EAAE;AACpC;AACA,IAAI,IAAI,CAAC,MAAM,CAAC,IAAI,IAAI,OAAO,KAAK,CAAC,EAAE;AACvC,MAAM;AACN;AACA,IAAI,KAAK,GAAG,SAAS,CAAC,OAAO,KAAK,CAAC,GAAG,SAAS,CAAC,MAAM,GAAG,CAAC,GAAG,OAAO,GAAG,CAAC;AACxE,GAAG,MAAM;AACT;AACA,IAAI,IAAI,CAAC,MAAM,CAAC,IAAI,IAAI,OAAO,KAAK,SAAS,CAAC,MAAM,GAAG,CAAC,EAAE;AAC1D,MAAM;AACN;AACA,IAAI,KAAK,GAAG,SAAS,CAAC,OAAO,KAAK,SAAS,CAAC,MAAM,GAAG,CAAC,GAAG,CAAC,GAAG,OAAO,GAAG,CAAC;AACxE;;AAEA,EAAE,IAAI,KAAK,EAAE;AACb,IAAI,KAAK,CAAC,KAAK;AACf;AACA;;;;"}
@@ -98,8 +98,8 @@ class ContentObserver {
98
98
  actionRemove && typeof this.contentRemovedCallback === 'function'
99
99
  ? this.contentRemovedCallback
100
100
  : typeof this.contentAddedCallback === 'function'
101
- ? this.contentAddedCallback
102
- : null;
101
+ ? this.contentAddedCallback
102
+ : null;
103
103
  if (foundNodes && callback) {
104
104
  foundNodes.forEach((node) => callback(node));
105
105
  }
@@ -1 +1 @@
1
- {"version":3,"file":"observer.js","sources":["../../../src/js/plugins/util/observer.js"],"sourcesContent":["/**\n * Mutation CSS Class Observer Object\n */\n//https://stackoverflow.com/a/53914092\n\nclass CssClassObserver {\n constructor(targetNode, classToWatch, classAddedCallback, classRemovedCallback, ignoreToggle) {\n this.targetNode = targetNode\n this.classToWatch = classToWatch\n this.classAddedCallback = classAddedCallback\n this.classRemovedCallback = classRemovedCallback\n this.observer = null\n this.lastClassState = targetNode.classList.contains(this.classToWatch)\n this.ignoreToggle = !!ignoreToggle\n\n this.init()\n }\n\n init() {\n this.observer = new MutationObserver((mutationsList) => this.mutationCallback(mutationsList))\n this.observe()\n }\n\n observe() {\n this.observer.observe(this.targetNode, { attributes: true })\n }\n\n disconnect() {\n this.observer.disconnect()\n }\n\n mutationCallback(mutationsList) {\n for (let mutation of mutationsList) {\n if (mutation.type === 'attributes' && mutation.attributeName === 'class') {\n let currentClassState = mutation.target.classList.contains(this.classToWatch)\n if (this.ignoreToggle || this.lastClassState !== currentClassState) {\n this.lastClassState = currentClassState\n if (currentClassState) {\n if (typeof this.classAddedCallback === 'function') {\n this.classAddedCallback()\n }\n } else if (typeof this.classRemovedCallback === 'function') {\n this.classRemovedCallback()\n }\n }\n }\n }\n }\n}\n\n/**\n * Mutation Content Class Observer Object\n */\n\nclass ContentObserver {\n constructor(targetNode, contentSelector, contentAddedCallback, contentRemovedCallback) {\n this.targetNode = targetNode\n this.contentSelector = contentSelector\n this.contentAddedCallback = contentAddedCallback\n this.contentRemovedCallback = contentRemovedCallback\n this.observer = null\n\n this.init()\n }\n\n //public\n\n init() {\n this.observer = new MutationObserver((mutationsList) => this.mutationCallback(mutationsList))\n this.observe()\n }\n\n observe() {\n this.observer.observe(this.targetNode, { childList: true, subtree: true })\n }\n\n disconnect() {\n this.observer.disconnect()\n }\n\n mutationCallback(mutationsList) {\n for (let mutation of mutationsList) {\n if (mutation.type === 'childList') {\n mutation.addedNodes.forEach((node) => {\n this._callbackExec(node)\n })\n mutation.removedNodes.forEach((node) => {\n this._callbackExec(node, true)\n })\n }\n }\n }\n\n //private\n _callbackExec(node, actionRemove) {\n const foundNodes = node.matches && node.matches(this.contentSelector) ? [node] : node.querySelectorAll ? node.querySelectorAll(this.contentSelector) : null\n const callback =\n actionRemove && typeof this.contentRemovedCallback === 'function'\n ? this.contentRemovedCallback\n : typeof this.contentAddedCallback === 'function'\n ? this.contentAddedCallback\n : null\n if (foundNodes && callback) {\n foundNodes.forEach((node) => callback(node))\n }\n }\n}\n\nexport { CssClassObserver, ContentObserver }\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"observer.js","sources":["../../../src/js/plugins/util/observer.js"],"sourcesContent":["/**\n * Mutation CSS Class Observer Object\n */\n//https://stackoverflow.com/a/53914092\n\nclass CssClassObserver {\n constructor(targetNode, classToWatch, classAddedCallback, classRemovedCallback, ignoreToggle) {\n this.targetNode = targetNode\n this.classToWatch = classToWatch\n this.classAddedCallback = classAddedCallback\n this.classRemovedCallback = classRemovedCallback\n this.observer = null\n this.lastClassState = targetNode.classList.contains(this.classToWatch)\n this.ignoreToggle = !!ignoreToggle\n\n this.init()\n }\n\n init() {\n this.observer = new MutationObserver((mutationsList) => this.mutationCallback(mutationsList))\n this.observe()\n }\n\n observe() {\n this.observer.observe(this.targetNode, { attributes: true })\n }\n\n disconnect() {\n this.observer.disconnect()\n }\n\n mutationCallback(mutationsList) {\n for (let mutation of mutationsList) {\n if (mutation.type === 'attributes' && mutation.attributeName === 'class') {\n let currentClassState = mutation.target.classList.contains(this.classToWatch)\n if (this.ignoreToggle || this.lastClassState !== currentClassState) {\n this.lastClassState = currentClassState\n if (currentClassState) {\n if (typeof this.classAddedCallback === 'function') {\n this.classAddedCallback()\n }\n } else if (typeof this.classRemovedCallback === 'function') {\n this.classRemovedCallback()\n }\n }\n }\n }\n }\n}\n\n/**\n * Mutation Content Class Observer Object\n */\n\nclass ContentObserver {\n constructor(targetNode, contentSelector, contentAddedCallback, contentRemovedCallback) {\n this.targetNode = targetNode\n this.contentSelector = contentSelector\n this.contentAddedCallback = contentAddedCallback\n this.contentRemovedCallback = contentRemovedCallback\n this.observer = null\n\n this.init()\n }\n\n //public\n\n init() {\n this.observer = new MutationObserver((mutationsList) => this.mutationCallback(mutationsList))\n this.observe()\n }\n\n observe() {\n this.observer.observe(this.targetNode, { childList: true, subtree: true })\n }\n\n disconnect() {\n this.observer.disconnect()\n }\n\n mutationCallback(mutationsList) {\n for (let mutation of mutationsList) {\n if (mutation.type === 'childList') {\n mutation.addedNodes.forEach((node) => {\n this._callbackExec(node)\n })\n mutation.removedNodes.forEach((node) => {\n this._callbackExec(node, true)\n })\n }\n }\n }\n\n //private\n _callbackExec(node, actionRemove) {\n const foundNodes = node.matches && node.matches(this.contentSelector) ? [node] : node.querySelectorAll ? node.querySelectorAll(this.contentSelector) : null\n const callback =\n actionRemove && typeof this.contentRemovedCallback === 'function'\n ? this.contentRemovedCallback\n : typeof this.contentAddedCallback === 'function'\n ? this.contentAddedCallback\n : null\n if (foundNodes && callback) {\n foundNodes.forEach((node) => callback(node))\n }\n }\n}\n\nexport { CssClassObserver, ContentObserver }\n"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"on-document-scroll.js","sources":["../../../src/js/plugins/util/on-document-scroll.js"],"sourcesContent":["import { v4 as uuidv4 } from 'uuid'\n\nlet ticking = false\nlet callbacks = []\n\nclass ScrollCallback {\n constructor(id, callback) {\n this.id = id\n this._callback = callback\n }\n\n //Public\n dispose() {\n removeCallBack(this.id)\n }\n\n //Private\n _execute(data) {\n this._callback(data)\n }\n}\n\nconst removeCallBack = (id) => {\n callbacks = callbacks.filter((cb) => cb.id !== id)\n}\n\nconst onDocumentScroll = (callback) => {\n if (typeof document === 'undefined') {\n return\n }\n if (!callbacks.length) {\n document.addEventListener('scroll', (evt) => {\n if (!ticking) {\n window.requestAnimationFrame(() => {\n callbacks.forEach((cbObj) => cbObj.cb._execute(evt))\n ticking = false\n })\n ticking = true\n }\n })\n }\n\n if (typeof callback === 'function') {\n const newCb = new ScrollCallback(uuidv4(), callback)\n callbacks.push({\n id: newCb.id,\n cb: newCb,\n })\n return newCb\n }\n\n console.error('[onDocumentScroll] the provided data has to be of type function')\n return null\n}\n\nexport default onDocumentScroll\n"],"names":["uuidv4"],"mappings":";;AAEA,IAAI,OAAO,GAAG,MAAK;AACnB,IAAI,SAAS,GAAG,GAAE;AAClB;AACA,MAAM,cAAc,CAAC;AACrB,EAAE,WAAW,CAAC,EAAE,EAAE,QAAQ,EAAE;AAC5B,IAAI,IAAI,CAAC,EAAE,GAAG,GAAE;AAChB,IAAI,IAAI,CAAC,SAAS,GAAG,SAAQ;AAC7B,GAAG;AACH;AACA;AACA,EAAE,OAAO,GAAG;AACZ,IAAI,cAAc,CAAC,IAAI,CAAC,EAAE,EAAC;AAC3B,GAAG;AACH;AACA;AACA,EAAE,QAAQ,CAAC,IAAI,EAAE;AACjB,IAAI,IAAI,CAAC,SAAS,CAAC,IAAI,EAAC;AACxB,GAAG;AACH,CAAC;AACD;AACA,MAAM,cAAc,GAAG,CAAC,EAAE,KAAK;AAC/B,EAAE,SAAS,GAAG,SAAS,CAAC,MAAM,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC,EAAE,KAAK,EAAE,EAAC;AACpD,EAAC;AACD;AACK,MAAC,gBAAgB,GAAG,CAAC,QAAQ,KAAK;AACvC,EAAE,IAAI,OAAO,QAAQ,KAAK,WAAW,EAAE;AACvC,IAAI,MAAM;AACV,GAAG;AACH,EAAE,IAAI,CAAC,SAAS,CAAC,MAAM,EAAE;AACzB,IAAI,QAAQ,CAAC,gBAAgB,CAAC,QAAQ,EAAE,CAAC,GAAG,KAAK;AACjD,MAAM,IAAI,CAAC,OAAO,EAAE;AACpB,QAAQ,MAAM,CAAC,qBAAqB,CAAC,MAAM;AAC3C,UAAU,SAAS,CAAC,OAAO,CAAC,CAAC,KAAK,KAAK,KAAK,CAAC,EAAE,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAC;AAC9D,UAAU,OAAO,GAAG,MAAK;AACzB,SAAS,EAAC;AACV,QAAQ,OAAO,GAAG,KAAI;AACtB,OAAO;AACP,KAAK,EAAC;AACN,GAAG;AACH;AACA,EAAE,IAAI,OAAO,QAAQ,KAAK,UAAU,EAAE;AACtC,IAAI,MAAM,KAAK,GAAG,IAAI,cAAc,CAACA,EAAM,EAAE,EAAE,QAAQ,EAAC;AACxD,IAAI,SAAS,CAAC,IAAI,CAAC;AACnB,MAAM,EAAE,EAAE,KAAK,CAAC,EAAE;AAClB,MAAM,EAAE,EAAE,KAAK;AACf,KAAK,EAAC;AACN,IAAI,OAAO,KAAK;AAChB,GAAG;AACH;AACA,EAAE,OAAO,CAAC,KAAK,CAAC,iEAAiE,EAAC;AAClF,EAAE,OAAO,IAAI;AACb;;;;"}
1
+ {"version":3,"file":"on-document-scroll.js","sources":["../../../src/js/plugins/util/on-document-scroll.js"],"sourcesContent":["import { v4 as uuidv4 } from 'uuid'\n\nlet ticking = false\nlet callbacks = []\n\nclass ScrollCallback {\n constructor(id, callback) {\n this.id = id\n this._callback = callback\n }\n\n //Public\n dispose() {\n removeCallBack(this.id)\n }\n\n //Private\n _execute(data) {\n this._callback(data)\n }\n}\n\nconst removeCallBack = (id) => {\n callbacks = callbacks.filter((cb) => cb.id !== id)\n}\n\nconst onDocumentScroll = (callback) => {\n if (typeof document === 'undefined') {\n return\n }\n if (!callbacks.length) {\n document.addEventListener('scroll', (evt) => {\n if (!ticking) {\n window.requestAnimationFrame(() => {\n callbacks.forEach((cbObj) => cbObj.cb._execute(evt))\n ticking = false\n })\n ticking = true\n }\n })\n }\n\n if (typeof callback === 'function') {\n const newCb = new ScrollCallback(uuidv4(), callback)\n callbacks.push({\n id: newCb.id,\n cb: newCb,\n })\n return newCb\n }\n\n console.error('[onDocumentScroll] the provided data has to be of type function')\n return null\n}\n\nexport default onDocumentScroll\n"],"names":["uuidv4"],"mappings":";;AAEA,IAAI,OAAO,GAAG;AACd,IAAI,SAAS,GAAG;;AAEhB,MAAM,cAAc,CAAC;AACrB,EAAE,WAAW,CAAC,EAAE,EAAE,QAAQ,EAAE;AAC5B,IAAI,IAAI,CAAC,EAAE,GAAG;AACd,IAAI,IAAI,CAAC,SAAS,GAAG;AACrB;;AAEA;AACA,EAAE,OAAO,GAAG;AACZ,IAAI,cAAc,CAAC,IAAI,CAAC,EAAE;AAC1B;;AAEA;AACA,EAAE,QAAQ,CAAC,IAAI,EAAE;AACjB,IAAI,IAAI,CAAC,SAAS,CAAC,IAAI;AACvB;AACA;;AAEA,MAAM,cAAc,GAAG,CAAC,EAAE,KAAK;AAC/B,EAAE,SAAS,GAAG,SAAS,CAAC,MAAM,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC,EAAE,KAAK,EAAE;AACnD;;AAEK,MAAC,gBAAgB,GAAG,CAAC,QAAQ,KAAK;AACvC,EAAE,IAAI,OAAO,QAAQ,KAAK,WAAW,EAAE;AACvC,IAAI;AACJ;AACA,EAAE,IAAI,CAAC,SAAS,CAAC,MAAM,EAAE;AACzB,IAAI,QAAQ,CAAC,gBAAgB,CAAC,QAAQ,EAAE,CAAC,GAAG,KAAK;AACjD,MAAM,IAAI,CAAC,OAAO,EAAE;AACpB,QAAQ,MAAM,CAAC,qBAAqB,CAAC,MAAM;AAC3C,UAAU,SAAS,CAAC,OAAO,CAAC,CAAC,KAAK,KAAK,KAAK,CAAC,EAAE,CAAC,QAAQ,CAAC,GAAG,CAAC;AAC7D,UAAU,OAAO,GAAG;AACpB,SAAS;AACT,QAAQ,OAAO,GAAG;AAClB;AACA,KAAK;AACL;;AAEA,EAAE,IAAI,OAAO,QAAQ,KAAK,UAAU,EAAE;AACtC,IAAI,MAAM,KAAK,GAAG,IAAI,cAAc,CAACA,EAAM,EAAE,EAAE,QAAQ;AACvD,IAAI,SAAS,CAAC,IAAI,CAAC;AACnB,MAAM,EAAE,EAAE,KAAK,CAAC,EAAE;AAClB,MAAM,EAAE,EAAE,KAAK;AACf,KAAK;AACL,IAAI,OAAO;AACX;;AAEA,EAAE,OAAO,CAAC,KAAK,CAAC,iEAAiE;AACjF,EAAE,OAAO;AACT;;;;"}
@@ -1 +1 @@
1
- {"version":3,"file":"pageScroll.js","sources":["../../../src/js/plugins/util/pageScroll.js"],"sourcesContent":["/**\n * Prevents page scroll\n */\n\nconst CLASS_SCROLL_DISABLED = 'pagescroll-scroll-disabled'\n\nlet disabled = false\nlet currentScrollPos = typeof document === 'undefined' ? 0 : document.scrollingElement.scrollTop\nconst htmlContainer = typeof document === 'undefined' ? null : document.querySelector('html')\n\nexport function disablePageScroll() {\n if (typeof document === 'undefined') {\n return\n }\n disabled = true\n currentScrollPos = document.scrollingElement.scrollTop\n htmlContainer.classList.add(CLASS_SCROLL_DISABLED)\n}\n\nexport function enablePageScroll() {\n if (typeof document === 'undefined') {\n return\n }\n disabled = false\n htmlContainer.classList.remove(CLASS_SCROLL_DISABLED)\n}\n\nif (typeof document !== 'undefined') {\n document.addEventListener('scroll', () => {\n if (disabled) {\n document.scrollingElement.scrollTop = currentScrollPos\n }\n })\n}\n"],"names":[],"mappings":"AAAA;AACA;AACA;AACA;AACA,MAAM,qBAAqB,GAAG,6BAA4B;AAC1D;AACA,IAAI,QAAQ,GAAG,MAAK;AACpB,IAAI,gBAAgB,GAAG,OAAO,QAAQ,KAAK,WAAW,GAAG,CAAC,GAAG,QAAQ,CAAC,gBAAgB,CAAC,UAAS;AAChG,MAAM,aAAa,GAAG,OAAO,QAAQ,KAAK,WAAW,GAAG,IAAI,GAAG,QAAQ,CAAC,aAAa,CAAC,MAAM,EAAC;AAC7F;AACO,SAAS,iBAAiB,GAAG;AACpC,EAAE,IAAI,OAAO,QAAQ,KAAK,WAAW,EAAE;AACvC,IAAI,MAAM;AACV,GAAG;AACH,EAAE,QAAQ,GAAG,KAAI;AACjB,EAAE,gBAAgB,GAAG,QAAQ,CAAC,gBAAgB,CAAC,UAAS;AACxD,EAAE,aAAa,CAAC,SAAS,CAAC,GAAG,CAAC,qBAAqB,EAAC;AACpD,CAAC;AACD;AACO,SAAS,gBAAgB,GAAG;AACnC,EAAE,IAAI,OAAO,QAAQ,KAAK,WAAW,EAAE;AACvC,IAAI,MAAM;AACV,GAAG;AACH,EAAE,QAAQ,GAAG,MAAK;AAClB,EAAE,aAAa,CAAC,SAAS,CAAC,MAAM,CAAC,qBAAqB,EAAC;AACvD,CAAC;AACD;AACA,IAAI,OAAO,QAAQ,KAAK,WAAW,EAAE;AACrC,EAAE,QAAQ,CAAC,gBAAgB,CAAC,QAAQ,EAAE,MAAM;AAC5C,IAAI,IAAI,QAAQ,EAAE;AAClB,MAAM,QAAQ,CAAC,gBAAgB,CAAC,SAAS,GAAG,iBAAgB;AAC5D,KAAK;AACL,GAAG,EAAC;AACJ;;;;"}
1
+ {"version":3,"file":"pageScroll.js","sources":["../../../src/js/plugins/util/pageScroll.js"],"sourcesContent":["/**\n * Prevents page scroll\n */\n\nconst CLASS_SCROLL_DISABLED = 'pagescroll-scroll-disabled'\n\nlet disabled = false\nlet currentScrollPos = typeof document === 'undefined' ? 0 : document.scrollingElement.scrollTop\nconst htmlContainer = typeof document === 'undefined' ? null : document.querySelector('html')\n\nexport function disablePageScroll() {\n if (typeof document === 'undefined') {\n return\n }\n disabled = true\n currentScrollPos = document.scrollingElement.scrollTop\n htmlContainer.classList.add(CLASS_SCROLL_DISABLED)\n}\n\nexport function enablePageScroll() {\n if (typeof document === 'undefined') {\n return\n }\n disabled = false\n htmlContainer.classList.remove(CLASS_SCROLL_DISABLED)\n}\n\nif (typeof document !== 'undefined') {\n document.addEventListener('scroll', () => {\n if (disabled) {\n document.scrollingElement.scrollTop = currentScrollPos\n }\n })\n}\n"],"names":[],"mappings":"AAAA;AACA;AACA;;AAEA,MAAM,qBAAqB,GAAG;;AAE9B,IAAI,QAAQ,GAAG;AACf,IAAI,gBAAgB,GAAG,OAAO,QAAQ,KAAK,WAAW,GAAG,CAAC,GAAG,QAAQ,CAAC,gBAAgB,CAAC;AACvF,MAAM,aAAa,GAAG,OAAO,QAAQ,KAAK,WAAW,GAAG,IAAI,GAAG,QAAQ,CAAC,aAAa,CAAC,MAAM;;AAErF,SAAS,iBAAiB,GAAG;AACpC,EAAE,IAAI,OAAO,QAAQ,KAAK,WAAW,EAAE;AACvC,IAAI;AACJ;AACA,EAAE,QAAQ,GAAG;AACb,EAAE,gBAAgB,GAAG,QAAQ,CAAC,gBAAgB,CAAC;AAC/C,EAAE,aAAa,CAAC,SAAS,CAAC,GAAG,CAAC,qBAAqB;AACnD;;AAEO,SAAS,gBAAgB,GAAG;AACnC,EAAE,IAAI,OAAO,QAAQ,KAAK,WAAW,EAAE;AACvC,IAAI;AACJ;AACA,EAAE,QAAQ,GAAG;AACb,EAAE,aAAa,CAAC,SAAS,CAAC,MAAM,CAAC,qBAAqB;AACtD;;AAEA,IAAI,OAAO,QAAQ,KAAK,WAAW,EAAE;AACrC,EAAE,QAAQ,CAAC,gBAAgB,CAAC,QAAQ,EAAE,MAAM;AAC5C,IAAI,IAAI,QAAQ,EAAE;AAClB,MAAM,QAAQ,CAAC,gBAAgB,CAAC,SAAS,GAAG;AAC5C;AACA,GAAG;AACH;;;;"}
@@ -1 +1 @@
1
- {"version":3,"file":"tween.js","sources":["../../../src/js/plugins/util/tween.js"],"sourcesContent":["import anime from 'animejs/lib/anime.es.js'\n\nconst AnimeDefault = {\n duration: 800,\n easing: 'easeInOutSine',\n}\n\n/**\n *\n * @param {number} scrollTop\n * @param {Object} config - duration, easing, complete, update, ...\n */\nexport const documentScrollTo = (scrollTop, config) => {\n if (typeof document === 'undefined') {\n return\n }\n const onComplete = (typeof config === 'object' ? config : {}).complete\n const scrollElement = window.document.scrollingElement || window.document.body || window.document.documentElement\n const prevScrollBehavior = scrollElement.style.scrollBehavior\n\n config = {\n scrollTop: scrollTop || 0,\n ...AnimeDefault,\n ...(typeof config === 'object' ? config : {}),\n }\n\n scrollElement.style.scrollBehavior = 'auto'\n\n config.complete = (anim) => {\n scrollElement.style.scrollBehavior = prevScrollBehavior\n if (typeof onComplete === 'function') {\n onComplete(anim)\n }\n }\n\n anime({\n targets: scrollElement,\n ...config,\n })\n}\n"],"names":[],"mappings":";;AAEA,MAAM,YAAY,GAAG;AACrB,EAAE,QAAQ,EAAE,GAAG;AACf,EAAE,MAAM,EAAE,eAAe;AACzB,EAAC;AACD;AACA;AACA;AACA;AACA;AACA;AACY,MAAC,gBAAgB,GAAG,CAAC,SAAS,EAAE,MAAM,KAAK;AACvD,EAAE,IAAI,OAAO,QAAQ,KAAK,WAAW,EAAE;AACvC,IAAI,MAAM;AACV,GAAG;AACH,EAAE,MAAM,UAAU,GAAG,CAAC,OAAO,MAAM,KAAK,QAAQ,GAAG,MAAM,GAAG,EAAE,EAAE,SAAQ;AACxE,EAAE,MAAM,aAAa,GAAG,MAAM,CAAC,QAAQ,CAAC,gBAAgB,IAAI,MAAM,CAAC,QAAQ,CAAC,IAAI,IAAI,MAAM,CAAC,QAAQ,CAAC,gBAAe;AACnH,EAAE,MAAM,kBAAkB,GAAG,aAAa,CAAC,KAAK,CAAC,eAAc;AAC/D;AACA,EAAE,MAAM,GAAG;AACX,IAAI,SAAS,EAAE,SAAS,IAAI,CAAC;AAC7B,IAAI,GAAG,YAAY;AACnB,IAAI,IAAI,OAAO,MAAM,KAAK,QAAQ,GAAG,MAAM,GAAG,EAAE,CAAC;AACjD,IAAG;AACH;AACA,EAAE,aAAa,CAAC,KAAK,CAAC,cAAc,GAAG,OAAM;AAC7C;AACA,EAAE,MAAM,CAAC,QAAQ,GAAG,CAAC,IAAI,KAAK;AAC9B,IAAI,aAAa,CAAC,KAAK,CAAC,cAAc,GAAG,mBAAkB;AAC3D,IAAI,IAAI,OAAO,UAAU,KAAK,UAAU,EAAE;AAC1C,MAAM,UAAU,CAAC,IAAI,EAAC;AACtB,KAAK;AACL,IAAG;AACH;AACA,EAAE,KAAK,CAAC;AACR,IAAI,OAAO,EAAE,aAAa;AAC1B,IAAI,GAAG,MAAM;AACb,GAAG,EAAC;AACJ;;;;"}
1
+ {"version":3,"file":"tween.js","sources":["../../../src/js/plugins/util/tween.js"],"sourcesContent":["import anime from 'animejs/lib/anime.es.js'\n\nconst AnimeDefault = {\n duration: 800,\n easing: 'easeInOutSine',\n}\n\n/**\n *\n * @param {number} scrollTop\n * @param {Object} config - duration, easing, complete, update, ...\n */\nexport const documentScrollTo = (scrollTop, config) => {\n if (typeof document === 'undefined') {\n return\n }\n const onComplete = (typeof config === 'object' ? config : {}).complete\n const scrollElement = window.document.scrollingElement || window.document.body || window.document.documentElement\n const prevScrollBehavior = scrollElement.style.scrollBehavior\n\n config = {\n scrollTop: scrollTop || 0,\n ...AnimeDefault,\n ...(typeof config === 'object' ? config : {}),\n }\n\n scrollElement.style.scrollBehavior = 'auto'\n\n config.complete = (anim) => {\n scrollElement.style.scrollBehavior = prevScrollBehavior\n if (typeof onComplete === 'function') {\n onComplete(anim)\n }\n }\n\n anime({\n targets: scrollElement,\n ...config,\n })\n}\n"],"names":[],"mappings":";;AAEA,MAAM,YAAY,GAAG;AACrB,EAAE,QAAQ,EAAE,GAAG;AACf,EAAE,MAAM,EAAE,eAAe;AACzB;;AAEA;AACA;AACA;AACA;AACA;AACY,MAAC,gBAAgB,GAAG,CAAC,SAAS,EAAE,MAAM,KAAK;AACvD,EAAE,IAAI,OAAO,QAAQ,KAAK,WAAW,EAAE;AACvC,IAAI;AACJ;AACA,EAAE,MAAM,UAAU,GAAG,CAAC,OAAO,MAAM,KAAK,QAAQ,GAAG,MAAM,GAAG,EAAE,EAAE;AAChE,EAAE,MAAM,aAAa,GAAG,MAAM,CAAC,QAAQ,CAAC,gBAAgB,IAAI,MAAM,CAAC,QAAQ,CAAC,IAAI,IAAI,MAAM,CAAC,QAAQ,CAAC;AACpG,EAAE,MAAM,kBAAkB,GAAG,aAAa,CAAC,KAAK,CAAC;;AAEjD,EAAE,MAAM,GAAG;AACX,IAAI,SAAS,EAAE,SAAS,IAAI,CAAC;AAC7B,IAAI,GAAG,YAAY;AACnB,IAAI,IAAI,OAAO,MAAM,KAAK,QAAQ,GAAG,MAAM,GAAG,EAAE,CAAC;AACjD;;AAEA,EAAE,aAAa,CAAC,KAAK,CAAC,cAAc,GAAG;;AAEvC,EAAE,MAAM,CAAC,QAAQ,GAAG,CAAC,IAAI,KAAK;AAC9B,IAAI,aAAa,CAAC,KAAK,CAAC,cAAc,GAAG;AACzC,IAAI,IAAI,OAAO,UAAU,KAAK,UAAU,EAAE;AAC1C,MAAM,UAAU,CAAC,IAAI;AACrB;AACA;;AAEA,EAAE,KAAK,CAAC;AACR,IAAI,OAAO,EAAE,aAAa;AAC1B,IAAI,GAAG,MAAM;AACb,GAAG;AACH;;;;"}