{"version":3,"file":"splitter.esm.CObT9B7x.js","sources":["../../../../node_modules/primevue/splitter/style/splitterstyle.esm.js","../../../../node_modules/primevue/splitter/splitter.esm.js"],"sourcesContent":["import BaseStyle from 'primevue/base/style';\n\nvar classes = {\n root: function root(_ref) {\n var props = _ref.props;\n return ['p-splitter p-component', 'p-splitter-' + props.layout];\n },\n gutter: 'p-splitter-gutter',\n gutterHandler: 'p-splitter-gutter-handle'\n};\nvar inlineStyles = {\n root: function root(_ref2) {\n var props = _ref2.props;\n return [{\n display: 'flex',\n 'flex-wrap': 'nowrap'\n }, props.layout === 'vertical' ? {\n 'flex-direction': 'column'\n } : ''];\n }\n};\nvar SplitterStyle = BaseStyle.extend({\n name: 'splitter',\n classes: classes,\n inlineStyles: inlineStyles\n});\n\nexport { SplitterStyle as default };\n","import { DomHandler, ObjectUtils } from 'primevue/utils';\nimport BaseComponent from 'primevue/basecomponent';\nimport SplitterStyle from 'primevue/splitter/style';\nimport { openBlock, createElementBlock, mergeProps, Fragment, renderList, createBlock, resolveDynamicComponent, createElementVNode, createCommentVNode } from 'vue';\n\nvar script$1 = {\n name: 'BaseSplitter',\n \"extends\": BaseComponent,\n props: {\n layout: {\n type: String,\n \"default\": 'horizontal'\n },\n gutterSize: {\n type: Number,\n \"default\": 4\n },\n stateKey: {\n type: String,\n \"default\": null\n },\n stateStorage: {\n type: String,\n \"default\": 'session'\n },\n step: {\n type: Number,\n \"default\": 5\n }\n },\n style: SplitterStyle,\n provide: function provide() {\n return {\n $parentInstance: this\n };\n }\n};\n\nfunction _toConsumableArray(arr) { return _arrayWithoutHoles(arr) || _iterableToArray(arr) || _unsupportedIterableToArray(arr) || _nonIterableSpread(); }\nfunction _nonIterableSpread() { throw new TypeError(\"Invalid attempt to spread non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.\"); }\nfunction _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === \"string\") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === \"Object\" && o.constructor) n = o.constructor.name; if (n === \"Map\" || n === \"Set\") return Array.from(o); if (n === \"Arguments\" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }\nfunction _iterableToArray(iter) { if (typeof Symbol !== \"undefined\" && iter[Symbol.iterator] != null || iter[\"@@iterator\"] != null) return Array.from(iter); }\nfunction _arrayWithoutHoles(arr) { if (Array.isArray(arr)) return _arrayLikeToArray(arr); }\nfunction _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) arr2[i] = arr[i]; return arr2; }\nvar script = {\n name: 'Splitter',\n \"extends\": script$1,\n inheritAttrs: false,\n emits: ['resizestart', 'resizeend', 'resize'],\n dragging: false,\n mouseMoveListener: null,\n mouseUpListener: null,\n touchMoveListener: null,\n touchEndListener: null,\n size: null,\n gutterElement: null,\n startPos: null,\n prevPanelElement: null,\n nextPanelElement: null,\n nextPanelSize: null,\n prevPanelSize: null,\n panelSizes: null,\n prevPanelIndex: null,\n timer: null,\n data: function data() {\n return {\n prevSize: null\n };\n },\n mounted: function mounted() {\n var _this = this;\n if (this.panels && this.panels.length) {\n var initialized = false;\n if (this.isStateful()) {\n initialized = this.restoreState();\n }\n if (!initialized) {\n var children = _toConsumableArray(this.$el.children).filter(function (child) {\n return child.getAttribute('data-pc-name') === 'splitterpanel';\n });\n var _panelSizes = [];\n this.panels.map(function (panel, i) {\n var panelInitialSize = panel.props && panel.props.size ? panel.props.size : null;\n var panelSize = panelInitialSize || 100 / _this.panels.length;\n _panelSizes[i] = panelSize;\n children[i].style.flexBasis = 'calc(' + panelSize + '% - ' + (_this.panels.length - 1) * _this.gutterSize + 'px)';\n });\n this.panelSizes = _panelSizes;\n this.prevSize = parseFloat(_panelSizes[0]).toFixed(4);\n }\n }\n },\n beforeUnmount: function beforeUnmount() {\n this.clear();\n this.unbindMouseListeners();\n },\n methods: {\n isSplitterPanel: function isSplitterPanel(child) {\n return child.type.name === 'SplitterPanel';\n },\n onResizeStart: function onResizeStart(event, index, isKeyDown) {\n this.gutterElement = event.currentTarget || event.target.parentElement;\n this.size = this.horizontal ? DomHandler.getWidth(this.$el) : DomHandler.getHeight(this.$el);\n if (!isKeyDown) {\n this.dragging = true;\n this.startPos = this.layout === 'horizontal' ? event.pageX || event.changedTouches[0].pageX : event.pageY || event.changedTouches[0].pageY;\n }\n this.prevPanelElement = this.gutterElement.previousElementSibling;\n this.nextPanelElement = this.gutterElement.nextElementSibling;\n if (isKeyDown) {\n this.prevPanelSize = this.horizontal ? DomHandler.getOuterWidth(this.prevPanelElement, true) : DomHandler.getOuterHeight(this.prevPanelElement, true);\n this.nextPanelSize = this.horizontal ? DomHandler.getOuterWidth(this.nextPanelElement, true) : DomHandler.getOuterHeight(this.nextPanelElement, true);\n } else {\n this.prevPanelSize = 100 * (this.horizontal ? DomHandler.getOuterWidth(this.prevPanelElement, true) : DomHandler.getOuterHeight(this.prevPanelElement, true)) / this.size;\n this.nextPanelSize = 100 * (this.horizontal ? DomHandler.getOuterWidth(this.nextPanelElement, true) : DomHandler.getOuterHeight(this.nextPanelElement, true)) / this.size;\n }\n this.prevPanelIndex = index;\n this.$emit('resizestart', {\n originalEvent: event,\n sizes: this.panelSizes\n });\n this.$refs.gutter[index].setAttribute('data-p-gutter-resizing', true);\n this.$el.setAttribute('data-p-resizing', true);\n },\n onResize: function onResize(event, step, isKeyDown) {\n var newPos, newPrevPanelSize, newNextPanelSize;\n if (isKeyDown) {\n if (this.horizontal) {\n newPrevPanelSize = 100 * (this.prevPanelSize + step) / this.size;\n newNextPanelSize = 100 * (this.nextPanelSize - step) / this.size;\n } else {\n newPrevPanelSize = 100 * (this.prevPanelSize - step) / this.size;\n newNextPanelSize = 100 * (this.nextPanelSize + step) / this.size;\n }\n } else {\n if (this.horizontal) newPos = event.pageX * 100 / this.size - this.startPos * 100 / this.size;else newPos = event.pageY * 100 / this.size - this.startPos * 100 / this.size;\n newPrevPanelSize = this.prevPanelSize + newPos;\n newNextPanelSize = this.nextPanelSize - newPos;\n }\n if (this.validateResize(newPrevPanelSize, newNextPanelSize)) {\n this.prevPanelElement.style.flexBasis = 'calc(' + newPrevPanelSize + '% - ' + (this.panels.length - 1) * this.gutterSize + 'px)';\n this.nextPanelElement.style.flexBasis = 'calc(' + newNextPanelSize + '% - ' + (this.panels.length - 1) * this.gutterSize + 'px)';\n this.panelSizes[this.prevPanelIndex] = newPrevPanelSize;\n this.panelSizes[this.prevPanelIndex + 1] = newNextPanelSize;\n this.prevSize = parseFloat(newPrevPanelSize).toFixed(4);\n }\n this.$emit('resize', {\n originalEvent: event,\n sizes: this.panelSizes\n });\n },\n onResizeEnd: function onResizeEnd(event) {\n if (this.isStateful()) {\n this.saveState();\n }\n this.$emit('resizeend', {\n originalEvent: event,\n sizes: this.panelSizes\n });\n this.$refs.gutter.forEach(function (gutter) {\n return gutter.setAttribute('data-p-gutter-resizing', false);\n });\n this.$el.setAttribute('data-p-resizing', false);\n this.clear();\n },\n repeat: function repeat(event, index, step) {\n this.onResizeStart(event, index, true);\n this.onResize(event, step, true);\n },\n setTimer: function setTimer(event, index, step) {\n var _this2 = this;\n if (!this.timer) {\n this.timer = setInterval(function () {\n _this2.repeat(event, index, step);\n }, 40);\n }\n },\n clearTimer: function clearTimer() {\n if (this.timer) {\n clearInterval(this.timer);\n this.timer = null;\n }\n },\n onGutterKeyUp: function onGutterKeyUp() {\n this.clearTimer();\n this.onResizeEnd();\n },\n onGutterKeyDown: function onGutterKeyDown(event, index) {\n switch (event.code) {\n case 'ArrowLeft':\n {\n if (this.layout === 'horizontal') {\n this.setTimer(event, index, this.step * -1);\n }\n event.preventDefault();\n break;\n }\n case 'ArrowRight':\n {\n if (this.layout === 'horizontal') {\n this.setTimer(event, index, this.step);\n }\n event.preventDefault();\n break;\n }\n case 'ArrowDown':\n {\n if (this.layout === 'vertical') {\n this.setTimer(event, index, this.step * -1);\n }\n event.preventDefault();\n break;\n }\n case 'ArrowUp':\n {\n if (this.layout === 'vertical') {\n this.setTimer(event, index, this.step);\n }\n event.preventDefault();\n break;\n }\n }\n },\n onGutterMouseDown: function onGutterMouseDown(event, index) {\n this.onResizeStart(event, index);\n this.bindMouseListeners();\n },\n onGutterTouchStart: function onGutterTouchStart(event, index) {\n this.onResizeStart(event, index);\n this.bindTouchListeners();\n event.preventDefault();\n },\n onGutterTouchMove: function onGutterTouchMove(event) {\n this.onResize(event);\n event.preventDefault();\n },\n onGutterTouchEnd: function onGutterTouchEnd(event) {\n this.onResizeEnd(event);\n this.unbindTouchListeners();\n event.preventDefault();\n },\n bindMouseListeners: function bindMouseListeners() {\n var _this3 = this;\n if (!this.mouseMoveListener) {\n this.mouseMoveListener = function (event) {\n return _this3.onResize(event);\n };\n document.addEventListener('mousemove', this.mouseMoveListener);\n }\n if (!this.mouseUpListener) {\n this.mouseUpListener = function (event) {\n _this3.onResizeEnd(event);\n _this3.unbindMouseListeners();\n };\n document.addEventListener('mouseup', this.mouseUpListener);\n }\n },\n bindTouchListeners: function bindTouchListeners() {\n var _this4 = this;\n if (!this.touchMoveListener) {\n this.touchMoveListener = function (event) {\n return _this4.onResize(event.changedTouches[0]);\n };\n document.addEventListener('touchmove', this.touchMoveListener);\n }\n if (!this.touchEndListener) {\n this.touchEndListener = function (event) {\n _this4.resizeEnd(event);\n _this4.unbindTouchListeners();\n };\n document.addEventListener('touchend', this.touchEndListener);\n }\n },\n validateResize: function validateResize(newPrevPanelSize, newNextPanelSize) {\n if (newPrevPanelSize > 100 || newPrevPanelSize < 0) return false;\n if (newNextPanelSize > 100 || newNextPanelSize < 0) return false;\n var prevPanelMinSize = ObjectUtils.getVNodeProp(this.panels[this.prevPanelIndex], 'minSize');\n if (this.panels[this.prevPanelIndex].props && prevPanelMinSize && prevPanelMinSize > newPrevPanelSize) {\n return false;\n }\n var newPanelMinSize = ObjectUtils.getVNodeProp(this.panels[this.prevPanelIndex + 1], 'minSize');\n if (this.panels[this.prevPanelIndex + 1].props && newPanelMinSize && newPanelMinSize > newNextPanelSize) {\n return false;\n }\n return true;\n },\n unbindMouseListeners: function unbindMouseListeners() {\n if (this.mouseMoveListener) {\n document.removeEventListener('mousemove', this.mouseMoveListener);\n this.mouseMoveListener = null;\n }\n if (this.mouseUpListener) {\n document.removeEventListener('mouseup', this.mouseUpListener);\n this.mouseUpListener = null;\n }\n },\n unbindTouchListeners: function unbindTouchListeners() {\n if (this.touchMoveListener) {\n document.removeEventListener('touchmove', this.touchMoveListener);\n this.touchMoveListener = null;\n }\n if (this.touchEndListener) {\n document.removeEventListener('touchend', this.touchEndListener);\n this.touchEndListener = null;\n }\n },\n clear: function clear() {\n this.dragging = false;\n this.size = null;\n this.startPos = null;\n this.prevPanelElement = null;\n this.nextPanelElement = null;\n this.prevPanelSize = null;\n this.nextPanelSize = null;\n this.gutterElement = null;\n this.prevPanelIndex = null;\n },\n isStateful: function isStateful() {\n return this.stateKey != null;\n },\n getStorage: function getStorage() {\n switch (this.stateStorage) {\n case 'local':\n return window.localStorage;\n case 'session':\n return window.sessionStorage;\n default:\n throw new Error(this.stateStorage + ' is not a valid value for the state storage, supported values are \"local\" and \"session\".');\n }\n },\n saveState: function saveState() {\n if (ObjectUtils.isArray(this.panelSizes)) {\n this.getStorage().setItem(this.stateKey, JSON.stringify(this.panelSizes));\n }\n },\n restoreState: function restoreState() {\n var _this5 = this;\n var storage = this.getStorage();\n var stateString = storage.getItem(this.stateKey);\n if (stateString) {\n this.panelSizes = JSON.parse(stateString);\n var children = _toConsumableArray(this.$el.children).filter(function (child) {\n return child.getAttribute('data-pc-name') === 'splitterpanel';\n });\n children.forEach(function (child, i) {\n child.style.flexBasis = 'calc(' + _this5.panelSizes[i] + '% - ' + (_this5.panels.length - 1) * _this5.gutterSize + 'px)';\n });\n return true;\n }\n return false;\n }\n },\n computed: {\n panels: function panels() {\n var _this6 = this;\n var panels = [];\n this.$slots[\"default\"]().forEach(function (child) {\n if (_this6.isSplitterPanel(child)) {\n panels.push(child);\n } else if (child.children instanceof Array) {\n child.children.forEach(function (nestedChild) {\n if (_this6.isSplitterPanel(nestedChild)) {\n panels.push(nestedChild);\n }\n });\n }\n });\n return panels;\n },\n gutterStyle: function gutterStyle() {\n if (this.horizontal) return {\n width: this.gutterSize + 'px'\n };else return {\n height: this.gutterSize + 'px'\n };\n },\n horizontal: function horizontal() {\n return this.layout === 'horizontal';\n },\n getPTOptions: function getPTOptions() {\n var _this$$parentInstance;\n return {\n context: {\n nested: (_this$$parentInstance = this.$parentInstance) === null || _this$$parentInstance === void 0 ? void 0 : _this$$parentInstance.nestedState\n }\n };\n }\n }\n};\n\nvar _hoisted_1 = [\"onMousedown\", \"onTouchstart\", \"onTouchmove\", \"onTouchend\"];\nvar _hoisted_2 = [\"aria-orientation\", \"aria-valuenow\", \"onKeydown\"];\nfunction render(_ctx, _cache, $props, $setup, $data, $options) {\n return openBlock(), createElementBlock(\"div\", mergeProps({\n \"class\": _ctx.cx('root'),\n style: _ctx.sx('root'),\n \"data-p-resizing\": false\n }, _ctx.ptmi('root', $options.getPTOptions)), [(openBlock(true), createElementBlock(Fragment, null, renderList($options.panels, function (panel, i) {\n return openBlock(), createElementBlock(Fragment, {\n key: i\n }, [(openBlock(), createBlock(resolveDynamicComponent(panel), {\n tabindex: \"-1\"\n })), i !== $options.panels.length - 1 ? (openBlock(), createElementBlock(\"div\", mergeProps({\n key: 0,\n ref_for: true,\n ref: \"gutter\",\n \"class\": _ctx.cx('gutter'),\n role: \"separator\",\n tabindex: \"-1\",\n onMousedown: function onMousedown($event) {\n return $options.onGutterMouseDown($event, i);\n },\n onTouchstart: function onTouchstart($event) {\n return $options.onGutterTouchStart($event, i);\n },\n onTouchmove: function onTouchmove($event) {\n return $options.onGutterTouchMove($event, i);\n },\n onTouchend: function onTouchend($event) {\n return $options.onGutterTouchEnd($event, i);\n },\n \"data-p-gutter-resizing\": false\n }, _ctx.ptm('gutter')), [createElementVNode(\"div\", mergeProps({\n \"class\": _ctx.cx('gutterHandler'),\n tabindex: \"0\",\n style: [$options.gutterStyle],\n \"aria-orientation\": _ctx.layout,\n \"aria-valuenow\": $data.prevSize,\n onKeyup: _cache[0] || (_cache[0] = function () {\n return $options.onGutterKeyUp && $options.onGutterKeyUp.apply($options, arguments);\n }),\n onKeydown: function onKeydown($event) {\n return $options.onGutterKeyDown($event, i);\n }\n }, _ctx.ptm('gutterHandler')), null, 16, _hoisted_2)], 16, _hoisted_1)) : createCommentVNode(\"\", true)], 64);\n }), 128))], 16);\n}\n\nscript.render = render;\n\nexport { script as default };\n"],"names":["classes","_ref","props","inlineStyles","_ref2","SplitterStyle","BaseStyle","script$1","BaseComponent","_toConsumableArray","arr","_arrayWithoutHoles","_iterableToArray","_unsupportedIterableToArray","_nonIterableSpread","o","minLen","_arrayLikeToArray","iter","len","i","arr2","script","_this","initialized","children","child","_panelSizes","panel","panelInitialSize","panelSize","event","index","isKeyDown","DomHandler","step","newPos","newPrevPanelSize","newNextPanelSize","gutter","_this2","_this3","_this4","prevPanelMinSize","ObjectUtils","newPanelMinSize","_this5","storage","stateString","_this6","panels","nestedChild","_this$$parentInstance","_hoisted_1","_hoisted_2","render","_ctx","_cache","$props","$setup","$data","$options","openBlock","createElementBlock","mergeProps","Fragment","renderList","createBlock","resolveDynamicComponent","$event","createElementVNode","createCommentVNode"],"mappings":"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","x_google_ignoreList":[0,1]}