UNPKG

flexlayout-react-v7-react-19

Version:

A multi-tab docking layout manager

139 lines (104 loc) 323 kB
/* * ATTENTION: The "eval" devtool has been used (maybe by default in mode: "development"). * This devtool is neither made for production nor for readable output files. * It uses "eval()" calls to create a separate source file in the browser devtools. * If you are trying to read the output file, select a different devtool (https://webpack.js.org/configuration/devtool/) * or disable the default devtool with "devtool: false". * If you are looking for production-ready output files, see mode: "production" (https://webpack.js.org/configuration/mode/). */ (function webpackUniversalModuleDefinition(root, factory) { if(typeof exports === 'object' && typeof module === 'object') module.exports = factory(require("react"), require("react-dom")); else if(typeof define === 'function' && define.amd) define(["react", "react-dom"], factory); else if(typeof exports === 'object') exports["FlexLayout"] = factory(require("react"), require("react-dom")); else root["FlexLayout"] = factory(root["React"], root["ReactDOM"]); })(self, (__WEBPACK_EXTERNAL_MODULE_react__, __WEBPACK_EXTERNAL_MODULE_react_dom__) => { return /******/ (() => { // webpackBootstrap /******/ "use strict"; /******/ var __webpack_modules__ = ({ /***/ "./src/Attribute.ts": /*!**************************!*\ !*** ./src/Attribute.ts ***! \**************************/ /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"Attribute\": () => (/* binding */ Attribute)\n/* harmony export */ });\n/** @internal */\nclass Attribute {\n constructor(name, modelName, defaultValue, alwaysWriteJson) {\n this.name = name;\n this.modelName = modelName;\n this.defaultValue = defaultValue;\n this.alwaysWriteJson = alwaysWriteJson;\n this.required = false;\n this.fixed = false;\n this.type = \"any\";\n }\n setType(value) {\n this.type = value;\n return this;\n }\n setRequired() {\n this.required = true;\n return this;\n }\n setFixed() {\n this.fixed = true;\n return this;\n }\n}\nAttribute.NUMBER = \"number\";\nAttribute.STRING = \"string\";\nAttribute.BOOLEAN = \"boolean\";\n\n\n//# sourceURL=webpack://FlexLayout/./src/Attribute.ts?"); /***/ }), /***/ "./src/AttributeDefinitions.ts": /*!*************************************!*\ !*** ./src/AttributeDefinitions.ts ***! \*************************************/ /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"AttributeDefinitions\": () => (/* binding */ AttributeDefinitions)\n/* harmony export */ });\n/* harmony import */ var _Attribute__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./Attribute */ \"./src/Attribute.ts\");\n\n/** @internal */\nclass AttributeDefinitions {\n constructor() {\n this.attributes = [];\n this.nameToAttribute = {};\n }\n addWithAll(name, modelName, defaultValue, alwaysWriteJson) {\n const attr = new _Attribute__WEBPACK_IMPORTED_MODULE_0__.Attribute(name, modelName, defaultValue, alwaysWriteJson);\n this.attributes.push(attr);\n this.nameToAttribute[name] = attr;\n return attr;\n }\n addInherited(name, modelName) {\n return this.addWithAll(name, modelName, undefined, false);\n }\n add(name, defaultValue, alwaysWriteJson) {\n return this.addWithAll(name, undefined, defaultValue, alwaysWriteJson);\n }\n getAttributes() {\n return this.attributes;\n }\n getModelName(name) {\n const conversion = this.nameToAttribute[name];\n if (conversion !== undefined) {\n return conversion.modelName;\n }\n return undefined;\n }\n toJson(jsonObj, obj) {\n for (const attr of this.attributes) {\n const fromValue = obj[attr.name];\n if (attr.alwaysWriteJson || fromValue !== attr.defaultValue) {\n jsonObj[attr.name] = fromValue;\n }\n }\n }\n fromJson(jsonObj, obj) {\n for (const attr of this.attributes) {\n const fromValue = jsonObj[attr.name];\n if (fromValue === undefined) {\n obj[attr.name] = attr.defaultValue;\n }\n else {\n obj[attr.name] = fromValue;\n }\n }\n }\n update(jsonObj, obj) {\n for (const attr of this.attributes) {\n if (jsonObj.hasOwnProperty(attr.name)) {\n const fromValue = jsonObj[attr.name];\n if (fromValue === undefined) {\n delete obj[attr.name];\n }\n else {\n obj[attr.name] = fromValue;\n }\n }\n }\n }\n setDefaults(obj) {\n for (const attr of this.attributes) {\n obj[attr.name] = attr.defaultValue;\n }\n }\n toTypescriptInterface(name, parentAttributes) {\n const lines = [];\n const sorted = this.attributes.sort((a, b) => a.name.localeCompare(b.name));\n // const sorted = this.attributes;\n lines.push(\"export interface I\" + name + \"Attributes {\");\n for (let i = 0; i < sorted.length; i++) {\n const c = sorted[i];\n let type = c.type;\n let defaultValue = undefined;\n let attr = c;\n let inherited = undefined;\n if (attr.defaultValue !== undefined) {\n defaultValue = attr.defaultValue;\n }\n else if (attr.modelName !== undefined\n && parentAttributes !== undefined\n && parentAttributes.nameToAttribute[attr.modelName] !== undefined) {\n inherited = attr.modelName;\n attr = parentAttributes.nameToAttribute[attr.modelName];\n defaultValue = attr.defaultValue;\n type = attr.type;\n }\n let defValue = JSON.stringify(defaultValue);\n const required = attr.required || attr.fixed ? \"\" : \"?\";\n if (c.fixed) {\n lines.push(\"\\t\" + c.name + \": \" + defValue + \";\");\n }\n else {\n const comment = (defaultValue !== undefined ? \"default: \" + defValue : \"\") +\n (inherited !== undefined ? \" - inherited from global \" + inherited : \"\");\n lines.push(\"\\t\" + c.name + required + \": \" + type + \";\" +\n (comment.length > 0 ? \" // \" + comment : \"\"));\n }\n }\n lines.push(\"}\");\n return lines.join(\"\\n\");\n }\n}\n\n\n//# sourceURL=webpack://FlexLayout/./src/AttributeDefinitions.ts?"); /***/ }), /***/ "./src/DockLocation.ts": /*!*****************************!*\ !*** ./src/DockLocation.ts ***! \*****************************/ /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"DockLocation\": () => (/* binding */ DockLocation)\n/* harmony export */ });\n/* harmony import */ var _Orientation__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./Orientation */ \"./src/Orientation.ts\");\n/* harmony import */ var _Rect__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./Rect */ \"./src/Rect.ts\");\n\n\nclass DockLocation {\n /** @internal */\n static getByName(name) {\n return DockLocation.values[name];\n }\n /** @internal */\n static getLocation(rect, x, y) {\n x = (x - rect.x) / rect.width;\n y = (y - rect.y) / rect.height;\n if (x >= 0.25 && x < 0.75 && y >= 0.25 && y < 0.75) {\n return DockLocation.CENTER;\n }\n // Whether or not the point is in the bottom-left half of the rect\n // +-----+\n // |\\ |\n // |x\\ |\n // |xx\\ |\n // |xxx\\ |\n // |xxxx\\|\n // +-----+\n const bl = y >= x;\n // Whether or not the point is in the bottom-right half of the rect\n // +-----+\n // | /|\n // | /x|\n // | /xx|\n // | /xxx|\n // |/xxxx|\n // +-----+\n const br = y >= 1 - x;\n if (bl) {\n return br ? DockLocation.BOTTOM : DockLocation.LEFT;\n }\n else {\n return br ? DockLocation.RIGHT : DockLocation.TOP;\n }\n }\n /** @internal */\n constructor(name, orientation, indexPlus) {\n this._name = name;\n this._orientation = orientation;\n this._indexPlus = indexPlus;\n DockLocation.values[this._name] = this;\n }\n getName() {\n return this._name;\n }\n getOrientation() {\n return this._orientation;\n }\n /** @internal */\n getDockRect(r) {\n if (this === DockLocation.TOP) {\n return new _Rect__WEBPACK_IMPORTED_MODULE_1__.Rect(r.x, r.y, r.width, r.height / 2);\n }\n else if (this === DockLocation.BOTTOM) {\n return new _Rect__WEBPACK_IMPORTED_MODULE_1__.Rect(r.x, r.getBottom() - r.height / 2, r.width, r.height / 2);\n }\n if (this === DockLocation.LEFT) {\n return new _Rect__WEBPACK_IMPORTED_MODULE_1__.Rect(r.x, r.y, r.width / 2, r.height);\n }\n else if (this === DockLocation.RIGHT) {\n return new _Rect__WEBPACK_IMPORTED_MODULE_1__.Rect(r.getRight() - r.width / 2, r.y, r.width / 2, r.height);\n }\n else {\n return r.clone();\n }\n }\n /** @internal */\n split(rect, size) {\n if (this === DockLocation.TOP) {\n const r1 = new _Rect__WEBPACK_IMPORTED_MODULE_1__.Rect(rect.x, rect.y, rect.width, size);\n const r2 = new _Rect__WEBPACK_IMPORTED_MODULE_1__.Rect(rect.x, rect.y + size, rect.width, rect.height - size);\n return { start: r1, end: r2 };\n }\n else if (this === DockLocation.LEFT) {\n const r1 = new _Rect__WEBPACK_IMPORTED_MODULE_1__.Rect(rect.x, rect.y, size, rect.height);\n const r2 = new _Rect__WEBPACK_IMPORTED_MODULE_1__.Rect(rect.x + size, rect.y, rect.width - size, rect.height);\n return { start: r1, end: r2 };\n }\n if (this === DockLocation.RIGHT) {\n const r1 = new _Rect__WEBPACK_IMPORTED_MODULE_1__.Rect(rect.getRight() - size, rect.y, size, rect.height);\n const r2 = new _Rect__WEBPACK_IMPORTED_MODULE_1__.Rect(rect.x, rect.y, rect.width - size, rect.height);\n return { start: r1, end: r2 };\n }\n else {\n // if (this === DockLocation.BOTTOM) {\n const r1 = new _Rect__WEBPACK_IMPORTED_MODULE_1__.Rect(rect.x, rect.getBottom() - size, rect.width, size);\n const r2 = new _Rect__WEBPACK_IMPORTED_MODULE_1__.Rect(rect.x, rect.y, rect.width, rect.height - size);\n return { start: r1, end: r2 };\n }\n }\n /** @internal */\n reflect() {\n if (this === DockLocation.TOP) {\n return DockLocation.BOTTOM;\n }\n else if (this === DockLocation.LEFT) {\n return DockLocation.RIGHT;\n }\n if (this === DockLocation.RIGHT) {\n return DockLocation.LEFT;\n }\n else {\n // if (this === DockLocation.BOTTOM) {\n return DockLocation.TOP;\n }\n }\n toString() {\n return \"(DockLocation: name=\" + this._name + \", orientation=\" + this._orientation + \")\";\n }\n}\nDockLocation.values = {};\nDockLocation.TOP = new DockLocation(\"top\", _Orientation__WEBPACK_IMPORTED_MODULE_0__.Orientation.VERT, 0);\nDockLocation.BOTTOM = new DockLocation(\"bottom\", _Orientation__WEBPACK_IMPORTED_MODULE_0__.Orientation.VERT, 1);\nDockLocation.LEFT = new DockLocation(\"left\", _Orientation__WEBPACK_IMPORTED_MODULE_0__.Orientation.HORZ, 0);\nDockLocation.RIGHT = new DockLocation(\"right\", _Orientation__WEBPACK_IMPORTED_MODULE_0__.Orientation.HORZ, 1);\nDockLocation.CENTER = new DockLocation(\"center\", _Orientation__WEBPACK_IMPORTED_MODULE_0__.Orientation.VERT, 0);\n\n\n//# sourceURL=webpack://FlexLayout/./src/DockLocation.ts?"); /***/ }), /***/ "./src/DragDrop.ts": /*!*************************!*\ !*** ./src/DragDrop.ts ***! \*************************/ /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"DragDrop\": () => (/* binding */ DragDrop)\n/* harmony export */ });\n/* harmony import */ var _Rect__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./Rect */ \"./src/Rect.ts\");\n\n/** @internal */\nconst canUseDOM = !!(typeof window !== \"undefined\" && window.document && window.document.createElement);\nclass DragDrop {\n /** @internal */\n constructor() {\n /** @internal */\n this._manualGlassManagement = false;\n /** @internal */\n this._startX = 0;\n /** @internal */\n this._startY = 0;\n /** @internal */\n this._dragDepth = 0;\n /** @internal */\n this._glassShowing = false;\n /** @internal */\n this._dragging = false;\n /** @internal */\n this._active = false; // drag and drop is in progress, can be used on ios to prevent body scrolling (see demo)\n if (canUseDOM) {\n // check for serverside rendering\n this._glass = document.createElement(\"div\");\n this._glass.style.zIndex = \"998\";\n this._glass.style.backgroundColor = \"transparent\";\n this._glass.style.outline = \"none\";\n }\n this._defaultGlassCursor = \"default\";\n this._onMouseMove = this._onMouseMove.bind(this);\n this._onMouseUp = this._onMouseUp.bind(this);\n this._onKeyPress = this._onKeyPress.bind(this);\n this._onDragCancel = this._onDragCancel.bind(this);\n this._onDragEnter = this._onDragEnter.bind(this);\n this._onDragLeave = this._onDragLeave.bind(this);\n this.resizeGlass = this.resizeGlass.bind(this);\n this._lastClick = 0;\n this._clickX = 0;\n this._clickY = 0;\n }\n // if you add the glass pane then you should remove it\n addGlass(fCancel) {\n var _a;\n if (!this._glassShowing) {\n if (!this._document) {\n this._document = window.document;\n }\n if (!this._rootElement) {\n this._rootElement = this._document.body;\n }\n this.resizeGlass();\n (_a = this._document.defaultView) === null || _a === void 0 ? void 0 : _a.addEventListener('resize', this.resizeGlass);\n this._document.body.appendChild(this._glass);\n this._glass.tabIndex = -1;\n this._glass.focus();\n this._glass.addEventListener(\"keydown\", this._onKeyPress);\n this._glass.addEventListener(\"dragenter\", this._onDragEnter, { passive: false });\n this._glass.addEventListener(\"dragover\", this._onMouseMove, { passive: false });\n this._glass.addEventListener(\"dragleave\", this._onDragLeave, { passive: false });\n this._glassShowing = true;\n this._fDragCancel = fCancel;\n this._manualGlassManagement = false;\n }\n else {\n // second call to addGlass (via dragstart)\n this._manualGlassManagement = true;\n }\n }\n resizeGlass() {\n const glassRect = _Rect__WEBPACK_IMPORTED_MODULE_0__.Rect.fromElement(this._rootElement);\n glassRect.positionElement(this._glass, \"fixed\");\n }\n hideGlass() {\n var _a;\n if (this._glassShowing) {\n this._document.body.removeChild(this._glass);\n (_a = this._document.defaultView) === null || _a === void 0 ? void 0 : _a.removeEventListener('resize', this.resizeGlass);\n this._glassShowing = false;\n this._document = undefined;\n this._rootElement = undefined;\n this.setGlassCursorOverride(undefined);\n }\n }\n /** @internal */\n _updateGlassCursor() {\n var _a;\n this._glass.style.cursor = (_a = this._glassCursorOverride) !== null && _a !== void 0 ? _a : this._defaultGlassCursor;\n }\n /** @internal */\n _setDefaultGlassCursor(cursor) {\n this._defaultGlassCursor = cursor;\n this._updateGlassCursor();\n }\n setGlassCursorOverride(cursor) {\n this._glassCursorOverride = cursor;\n this._updateGlassCursor();\n }\n startDrag(event, fDragStart, fDragMove, fDragEnd, fDragCancel, fClick, fDblClick, currentDocument, rootElement) {\n // prevent 'duplicate' action (mouse event for same action as previous touch event (a fix for ios))\n if (event && this._lastEvent && this._lastEvent.type.startsWith(\"touch\") && event.type.startsWith(\"mouse\") && event.timeStamp - this._lastEvent.timeStamp < 500) {\n return;\n }\n if (this._dragging) {\n return;\n }\n this._lastEvent = event;\n if (currentDocument) {\n this._document = currentDocument;\n }\n else {\n this._document = window.document;\n }\n if (rootElement) {\n this._rootElement = rootElement;\n }\n else {\n this._rootElement = this._document.body;\n }\n const posEvent = this._getLocationEvent(event);\n this.addGlass(fDragCancel);\n if (event) {\n this._startX = posEvent.clientX;\n this._startY = posEvent.clientY;\n if (!window.matchMedia || window.matchMedia(\"(pointer: fine)\").matches) {\n this._setDefaultGlassCursor(getComputedStyle(event.target).cursor);\n }\n this._stopPropagation(event);\n this._preventDefault(event);\n }\n else {\n this._startX = 0;\n this._startY = 0;\n this._setDefaultGlassCursor(\"default\");\n }\n this._dragging = false;\n this._fDragStart = fDragStart;\n this._fDragMove = fDragMove;\n this._fDragEnd = fDragEnd;\n this._fDragCancel = fDragCancel;\n this._fClick = fClick;\n this._fDblClick = fDblClick;\n this._active = true;\n if ((event === null || event === void 0 ? void 0 : event.type) === 'dragenter') {\n this._dragDepth = 1;\n this._rootElement.addEventListener(\"dragenter\", this._onDragEnter, { passive: false });\n this._rootElement.addEventListener(\"dragover\", this._onMouseMove, { passive: false });\n this._rootElement.addEventListener(\"dragleave\", this._onDragLeave, { passive: false });\n this._document.addEventListener(\"dragend\", this._onDragCancel, { passive: false });\n this._document.addEventListener(\"drop\", this._onMouseUp, { passive: false });\n }\n else {\n this._document.addEventListener(\"mouseup\", this._onMouseUp, { passive: false });\n this._document.addEventListener(\"mousemove\", this._onMouseMove, { passive: false });\n this._document.addEventListener(\"touchend\", this._onMouseUp, { passive: false });\n this._document.addEventListener(\"touchmove\", this._onMouseMove, { passive: false });\n }\n }\n isDragging() {\n return this._dragging;\n }\n isActive() {\n return this._active;\n }\n toString() {\n const rtn = \"(DragDrop: \" + \"startX=\" + this._startX + \", startY=\" + this._startY + \", dragging=\" + this._dragging + \")\";\n return rtn;\n }\n /** @internal */\n _onKeyPress(event) {\n if (event.code === 'Escape') {\n // esc\n this._onDragCancel();\n }\n }\n /** @internal */\n _onDragCancel() {\n this._rootElement.removeEventListener(\"dragenter\", this._onDragEnter);\n this._rootElement.removeEventListener(\"dragover\", this._onMouseMove);\n this._rootElement.removeEventListener(\"dragleave\", this._onDragLeave);\n this._document.removeEventListener(\"dragend\", this._onDragCancel);\n this._document.removeEventListener(\"drop\", this._onMouseUp);\n this._document.removeEventListener(\"mousemove\", this._onMouseMove);\n this._document.removeEventListener(\"mouseup\", this._onMouseUp);\n this._document.removeEventListener(\"touchend\", this._onMouseUp);\n this._document.removeEventListener(\"touchmove\", this._onMouseMove);\n this.hideGlass();\n if (this._fDragCancel !== undefined) {\n this._fDragCancel(this._dragging);\n }\n this._dragging = false;\n this._active = false;\n }\n /** @internal */\n _getLocationEvent(event) {\n let posEvent = event;\n if (event && event.touches) {\n posEvent = event.touches[0];\n }\n return posEvent;\n }\n /** @internal */\n _getLocationEventEnd(event) {\n let posEvent = event;\n if (event.changedTouches) {\n posEvent = event.changedTouches[0];\n }\n return posEvent;\n }\n /** @internal */\n _stopPropagation(event) {\n if (event.stopPropagation) {\n event.stopPropagation();\n }\n }\n /** @internal */\n _preventDefault(event) {\n if (event.preventDefault && event.cancelable) {\n event.preventDefault();\n }\n return event;\n }\n /** @internal */\n _onMouseMove(event) {\n this._lastEvent = event;\n const posEvent = this._getLocationEvent(event);\n this._stopPropagation(event);\n this._preventDefault(event);\n if (!this._dragging && (Math.abs(this._startX - posEvent.clientX) > 5 || Math.abs(this._startY - posEvent.clientY) > 5)) {\n this._dragging = true;\n if (this._fDragStart) {\n this._setDefaultGlassCursor(\"move\");\n this._dragging = this._fDragStart({ clientX: this._startX, clientY: this._startY });\n }\n }\n if (this._dragging) {\n if (this._fDragMove) {\n this._fDragMove(posEvent);\n }\n }\n return false;\n }\n /** @internal */\n _onMouseUp(event) {\n this._lastEvent = event;\n const posEvent = this._getLocationEventEnd(event);\n this._stopPropagation(event);\n this._preventDefault(event);\n this._active = false;\n this._rootElement.removeEventListener(\"dragenter\", this._onDragEnter);\n this._rootElement.removeEventListener(\"dragover\", this._onMouseMove);\n this._rootElement.removeEventListener(\"dragleave\", this._onDragLeave);\n this._document.removeEventListener(\"dragend\", this._onDragCancel);\n this._document.removeEventListener(\"drop\", this._onMouseUp);\n this._document.removeEventListener(\"mousemove\", this._onMouseMove);\n this._document.removeEventListener(\"mouseup\", this._onMouseUp);\n this._document.removeEventListener(\"touchend\", this._onMouseUp);\n this._document.removeEventListener(\"touchmove\", this._onMouseMove);\n if (!this._manualGlassManagement) {\n this.hideGlass();\n }\n if (this._dragging) {\n this._dragging = false;\n if (this._fDragEnd) {\n this._fDragEnd(event);\n }\n // dump(\"set dragging = false\\n\");\n }\n else {\n if (this._fDragCancel) {\n this._fDragCancel(this._dragging);\n }\n if (Math.abs(this._startX - posEvent.clientX) <= 5 && Math.abs(this._startY - posEvent.clientY) <= 5) {\n let isDoubleClick = false;\n const clickTime = new Date().getTime();\n // check for double click\n if (Math.abs(this._clickX - posEvent.clientX) <= 5 && Math.abs(this._clickY - posEvent.clientY) <= 5) {\n if (clickTime - this._lastClick < 500) {\n if (this._fDblClick) {\n this._fDblClick(event);\n isDoubleClick = true;\n }\n }\n }\n if (!isDoubleClick && this._fClick) {\n this._fClick(event);\n }\n this._lastClick = clickTime;\n this._clickX = posEvent.clientX;\n this._clickY = posEvent.clientY;\n }\n }\n return false;\n }\n /** @internal */\n _onDragEnter(event) {\n this._preventDefault(event);\n this._stopPropagation(event);\n this._dragDepth++;\n return false;\n }\n /** @internal */\n _onDragLeave(event) {\n this._preventDefault(event);\n this._stopPropagation(event);\n this._dragDepth--;\n if (this._dragDepth <= 0) {\n this._onDragCancel();\n }\n return false;\n }\n}\nDragDrop.instance = new DragDrop();\n\n\n//# sourceURL=webpack://FlexLayout/./src/DragDrop.ts?"); /***/ }), /***/ "./src/DropInfo.ts": /*!*************************!*\ !*** ./src/DropInfo.ts ***! \*************************/ /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"DropInfo\": () => (/* binding */ DropInfo)\n/* harmony export */ });\nclass DropInfo {\n constructor(node, rect, location, index, className) {\n this.node = node;\n this.rect = rect;\n this.location = location;\n this.index = index;\n this.className = className;\n }\n}\n\n\n//# sourceURL=webpack://FlexLayout/./src/DropInfo.ts?"); /***/ }), /***/ "./src/I18nLabel.ts": /*!**************************!*\ !*** ./src/I18nLabel.ts ***! \**************************/ /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"I18nLabel\": () => (/* binding */ I18nLabel)\n/* harmony export */ });\nvar I18nLabel;\n(function (I18nLabel) {\n I18nLabel[\"Close_Tab\"] = \"Close\";\n I18nLabel[\"Close_Tabset\"] = \"Close tabset\";\n I18nLabel[\"Move_Tab\"] = \"Move: \";\n I18nLabel[\"Move_Tabset\"] = \"Move tabset\";\n I18nLabel[\"Maximize\"] = \"Maximize tabset\";\n I18nLabel[\"Restore\"] = \"Restore tabset\";\n I18nLabel[\"Float_Tab\"] = \"Show selected tab in floating window\";\n I18nLabel[\"Overflow_Menu_Tooltip\"] = \"Hidden tabs\";\n I18nLabel[\"Floating_Window_Message\"] = \"This panel is shown in a floating window\";\n I18nLabel[\"Floating_Window_Show_Window\"] = \"Show window\";\n I18nLabel[\"Floating_Window_Dock_Window\"] = \"Dock window\";\n I18nLabel[\"Error_rendering_component\"] = \"Error rendering component\";\n})(I18nLabel || (I18nLabel = {}));\n\n\n//# sourceURL=webpack://FlexLayout/./src/I18nLabel.ts?"); /***/ }), /***/ "./src/Orientation.ts": /*!****************************!*\ !*** ./src/Orientation.ts ***! \****************************/ /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"Orientation\": () => (/* binding */ Orientation)\n/* harmony export */ });\nclass Orientation {\n static flip(from) {\n if (from === Orientation.HORZ) {\n return Orientation.VERT;\n }\n else {\n return Orientation.HORZ;\n }\n }\n /** @internal */\n constructor(name) {\n this._name = name;\n }\n getName() {\n return this._name;\n }\n toString() {\n return this._name;\n }\n}\nOrientation.HORZ = new Orientation(\"horz\");\nOrientation.VERT = new Orientation(\"vert\");\n\n\n//# sourceURL=webpack://FlexLayout/./src/Orientation.ts?"); /***/ }), /***/ "./src/PopupMenu.tsx": /*!***************************!*\ !*** ./src/PopupMenu.tsx ***! \***************************/ /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"showPopup\": () => (/* binding */ showPopup)\n/* harmony export */ });\n/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! react */ \"react\");\n/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_0__);\n/* harmony import */ var _DragDrop__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./DragDrop */ \"./src/DragDrop.ts\");\n/* harmony import */ var _Types__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./Types */ \"./src/Types.ts\");\n/* harmony import */ var _view_TabButtonStamp__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./view/TabButtonStamp */ \"./src/view/TabButtonStamp.tsx\");\n\n\n\n\n/** @internal */\nfunction showPopup(triggerElement, items, onSelect, layout, iconFactory, titleFactory) {\n var _a;\n const layoutDiv = layout.getRootDiv();\n const classNameMapper = layout.getClassName;\n const currentDocument = triggerElement.ownerDocument;\n const triggerRect = triggerElement.getBoundingClientRect();\n const layoutRect = (_a = layoutDiv === null || layoutDiv === void 0 ? void 0 : layoutDiv.getBoundingClientRect()) !== null && _a !== void 0 ? _a : new DOMRect(0, 0, 100, 100);\n const elm = currentDocument.createElement(\"div\");\n elm.className = classNameMapper(_Types__WEBPACK_IMPORTED_MODULE_2__.CLASSES.FLEXLAYOUT__POPUP_MENU_CONTAINER);\n if (triggerRect.left < layoutRect.left + layoutRect.width / 2) {\n elm.style.left = triggerRect.left - layoutRect.left + \"px\";\n }\n else {\n elm.style.right = layoutRect.right - triggerRect.right + \"px\";\n }\n if (triggerRect.top < layoutRect.top + layoutRect.height / 2) {\n elm.style.top = triggerRect.top - layoutRect.top + \"px\";\n }\n else {\n elm.style.bottom = layoutRect.bottom - triggerRect.bottom + \"px\";\n }\n _DragDrop__WEBPACK_IMPORTED_MODULE_1__.DragDrop.instance.addGlass(() => onHide());\n _DragDrop__WEBPACK_IMPORTED_MODULE_1__.DragDrop.instance.setGlassCursorOverride(\"default\");\n if (layoutDiv) {\n layoutDiv.appendChild(elm);\n }\n const onHide = () => {\n layout.hidePortal();\n _DragDrop__WEBPACK_IMPORTED_MODULE_1__.DragDrop.instance.hideGlass();\n if (layoutDiv) {\n layoutDiv.removeChild(elm);\n }\n elm.removeEventListener(\"mousedown\", onElementMouseDown);\n currentDocument.removeEventListener(\"mousedown\", onDocMouseDown);\n };\n const onElementMouseDown = (event) => {\n event.stopPropagation();\n };\n const onDocMouseDown = (_event) => {\n onHide();\n };\n elm.addEventListener(\"mousedown\", onElementMouseDown);\n currentDocument.addEventListener(\"mousedown\", onDocMouseDown);\n layout.showPortal(react__WEBPACK_IMPORTED_MODULE_0__.createElement(PopupMenu, { currentDocument: currentDocument, onSelect: onSelect, onHide: onHide, items: items, classNameMapper: classNameMapper, layout: layout, iconFactory: iconFactory, titleFactory: titleFactory }), elm);\n}\n/** @internal */\nconst PopupMenu = (props) => {\n const { items, onHide, onSelect, classNameMapper, layout, iconFactory, titleFactory } = props;\n const onItemClick = (item, event) => {\n onSelect(item);\n onHide();\n event.stopPropagation();\n };\n const itemElements = items.map((item, i) => (react__WEBPACK_IMPORTED_MODULE_0__.createElement(\"div\", { key: item.index, className: classNameMapper(_Types__WEBPACK_IMPORTED_MODULE_2__.CLASSES.FLEXLAYOUT__POPUP_MENU_ITEM), \"data-layout-path\": \"/popup-menu/tb\" + i, onClick: (event) => onItemClick(item, event), title: item.node.getHelpText() }, item.node.getModel().isLegacyOverflowMenu() ?\n item.node._getNameForOverflowMenu() :\n react__WEBPACK_IMPORTED_MODULE_0__.createElement(_view_TabButtonStamp__WEBPACK_IMPORTED_MODULE_3__.TabButtonStamp, { node: item.node, layout: layout, iconFactory: iconFactory, titleFactory: titleFactory }))));\n return (react__WEBPACK_IMPORTED_MODULE_0__.createElement(\"div\", { className: classNameMapper(_Types__WEBPACK_IMPORTED_MODULE_2__.CLASSES.FLEXLAYOUT__POPUP_MENU), \"data-layout-path\": \"/popup-menu\" }, itemElements));\n};\n\n\n//# sourceURL=webpack://FlexLayout/./src/PopupMenu.tsx?"); /***/ }), /***/ "./src/Rect.ts": /*!*********************!*\ !*** ./src/Rect.ts ***! \*********************/ /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"Rect\": () => (/* binding */ Rect)\n/* harmony export */ });\n/* harmony import */ var _Orientation__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./Orientation */ \"./src/Orientation.ts\");\n\nclass Rect {\n static empty() {\n return new Rect(0, 0, 0, 0);\n }\n constructor(x, y, width, height) {\n this.x = x;\n this.y = y;\n this.width = width;\n this.height = height;\n }\n static fromElement(element) {\n let { x, y, width, height } = element.getBoundingClientRect();\n return new Rect(x, y, width, height);\n }\n clone() {\n return new Rect(this.x, this.y, this.width, this.height);\n }\n equals(rect) {\n return this.x === (rect === null || rect === void 0 ? void 0 : rect.x) && this.y === (rect === null || rect === void 0 ? void 0 : rect.y) && this.width === (rect === null || rect === void 0 ? void 0 : rect.width) && this.height === (rect === null || rect === void 0 ? void 0 : rect.height);\n }\n getBottom() {\n return this.y + this.height;\n }\n getRight() {\n return this.x + this.width;\n }\n getCenter() {\n return { x: this.x + this.width / 2, y: this.y + this.height / 2 };\n }\n positionElement(element, position) {\n this.styleWithPosition(element.style, position);\n }\n styleWithPosition(style, position = \"absolute\") {\n style.left = this.x + \"px\";\n style.top = this.y + \"px\";\n style.width = Math.max(0, this.width) + \"px\"; // need Math.max to prevent -ve, cause error in IE\n style.height = Math.max(0, this.height) + \"px\";\n style.position = position;\n return style;\n }\n contains(x, y) {\n if (this.x <= x && x <= this.getRight() && this.y <= y && y <= this.getBottom()) {\n return true;\n }\n else {\n return false;\n }\n }\n removeInsets(insets) {\n return new Rect(this.x + insets.left, this.y + insets.top, Math.max(0, this.width - insets.left - insets.right), Math.max(0, this.height - insets.top - insets.bottom));\n }\n centerInRect(outerRect) {\n this.x = (outerRect.width - this.width) / 2;\n this.y = (outerRect.height - this.height) / 2;\n }\n /** @internal */\n _getSize(orientation) {\n let prefSize = this.width;\n if (orientation === _Orientation__WEBPACK_IMPORTED_MODULE_0__.Orientation.VERT) {\n prefSize = this.height;\n }\n return prefSize;\n }\n toString() {\n return \"(Rect: x=\" + this.x + \", y=\" + this.y + \", width=\" + this.width + \", height=\" + this.height + \")\";\n }\n}\n\n\n//# sourceURL=webpack://FlexLayout/./src/Rect.ts?"); /***/ }), /***/ "./src/Types.ts": /*!**********************!*\ !*** ./src/Types.ts ***! \**********************/ /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"CLASSES\": () => (/* binding */ CLASSES)\n/* harmony export */ });\nvar CLASSES;\n(function (CLASSES) {\n CLASSES[\"FLEXLAYOUT__BORDER\"] = \"flexlayout__border\";\n CLASSES[\"FLEXLAYOUT__BORDER_\"] = \"flexlayout__border_\";\n CLASSES[\"FLEXLAYOUT__BORDER_BUTTON\"] = \"flexlayout__border_button\";\n CLASSES[\"FLEXLAYOUT__BORDER_BUTTON_\"] = \"flexlayout__border_button_\";\n CLASSES[\"FLEXLAYOUT__BORDER_BUTTON_CONTENT\"] = \"flexlayout__border_button_content\";\n CLASSES[\"FLEXLAYOUT__BORDER_BUTTON_LEADING\"] = \"flexlayout__border_button_leading\";\n CLASSES[\"FLEXLAYOUT__BORDER_BUTTON_TRAILING\"] = \"flexlayout__border_button_trailing\";\n CLASSES[\"FLEXLAYOUT__BORDER_BUTTON__SELECTED\"] = \"flexlayout__border_button--selected\";\n CLASSES[\"FLEXLAYOUT__BORDER_BUTTON__UNSELECTED\"] = \"flexlayout__border_button--unselected\";\n CLASSES[\"FLEXLAYOUT__BORDER_TOOLBAR_BUTTON_OVERFLOW\"] = \"flexlayout__border_toolbar_button_overflow\";\n CLASSES[\"FLEXLAYOUT__BORDER_TOOLBAR_BUTTON_OVERFLOW_\"] = \"flexlayout__border_toolbar_button_overflow_\";\n CLASSES[\"FLEXLAYOUT__BORDER_INNER\"] = \"flexlayout__border_inner\";\n CLASSES[\"FLEXLAYOUT__BORDER_INNER_\"] = \"flexlayout__border_inner_\";\n CLASSES[\"FLEXLAYOUT__BORDER_INNER_TAB_CONTAINER\"] = \"flexlayout__border_inner_tab_container\";\n CLASSES[\"FLEXLAYOUT__BORDER_INNER_TAB_CONTAINER_\"] = \"flexlayout__border_inner_tab_container_\";\n CLASSES[\"FLEXLAYOUT__BORDER_TAB_DIVIDER\"] = \"flexlayout__border_tab_divider\";\n CLASSES[\"FLEXLAYOUT__BORDER_SIZER\"] = \"flexlayout__border_sizer\";\n CLASSES[\"FLEXLAYOUT__BORDER_TOOLBAR\"] = \"flexlayout__border_toolbar\";\n CLASSES[\"FLEXLAYOUT__BORDER_TOOLBAR_\"] = \"flexlayout__border_toolbar_\";\n CLASSES[\"FLEXLAYOUT__BORDER_TOOLBAR_BUTTON\"] = \"flexlayout__border_toolbar_button\";\n CLASSES[\"FLEXLAYOUT__BORDER_TOOLBAR_BUTTON_FLOAT\"] = \"flexlayout__border_toolbar_button-float\";\n CLASSES[\"FLEXLAYOUT__DRAG_RECT\"] = \"flexlayout__drag_rect\";\n CLASSES[\"FLEXLAYOUT__EDGE_RECT\"] = \"flexlayout__edge_rect\";\n CLASSES[\"FLEXLAYOUT__EDGE_RECT_TOP\"] = \"flexlayout__edge_rect_top\";\n CLASSES[\"FLEXLAYOUT__EDGE_RECT_LEFT\"] = \"flexlayout__edge_rect_left\";\n CLASSES[\"FLEXLAYOUT__EDGE_RECT_BOTTOM\"] = \"flexlayout__edge_rect_bottom\";\n CLASSES[\"FLEXLAYOUT__EDGE_RECT_RIGHT\"] = \"flexlayout__edge_rect_right\";\n CLASSES[\"FLEXLAYOUT__ERROR_BOUNDARY_CONTAINER\"] = \"flexlayout__error_boundary_container\";\n CLASSES[\"FLEXLAYOUT__ERROR_BOUNDARY_CONTENT\"] = \"flexlayout__error_boundary_content\";\n CLASSES[\"FLEXLAYOUT__FLOATING_WINDOW_CONTENT\"] = \"flexlayout__floating_window_content\";\n CLASSES[\"FLEXLAYOUT__FLOATING_WINDOW_TAB\"] = \"flexlayout__floating_window_tab\";\n CLASSES[\"FLEXLAYOUT__LAYOUT\"] = \"flexlayout__layout\";\n CLASSES[\"FLEXLAYOUT__OUTLINE_RECT\"] = \"flexlayout__outline_rect\";\n CLASSES[\"FLEXLAYOUT__OUTLINE_RECT_EDGE\"] = \"flexlayout__outline_rect_edge\";\n CLASSES[\"FLEXLAYOUT__SPLITTER\"] = \"flexlayout__splitter\";\n CLASSES[\"FLEXLAYOUT__SPLITTER_EXTRA\"] = \"flexlayout__splitter_extra\";\n CLASSES[\"FLEXLAYOUT__SPLITTER_\"] = \"flexlayout__splitter_\";\n CLASSES[\"FLEXLAYOUT__SPLITTER_BORDER\"] = \"flexlayout__splitter_border\";\n CLASSES[\"FLEXLAYOUT__SPLITTER_DRAG\"] = \"flexlayout__splitter_drag\";\n CLASSES[\"FLEXLAYOUT__TAB\"] = \"flexlayout__tab\";\n CLASSES[\"FLEXLAYOUT__TABSET\"] = \"flexlayout__tabset\";\n CLASSES[\"FLEXLAYOUT__TABSET_HEADER\"] = \"flexlayout__tabset_header\";\n CLASSES[\"FLEXLAYOUT__TABSET_HEADER_SIZER\"] = \"flexlayout__tabset_header_sizer\";\n CLASSES[\"FLEXLAYOUT__TABSET_HEADER_CONTENT\"] = \"flexlayout__tabset_header_content\";\n CLASSES[\"FLEXLAYOUT__TABSET_MAXIMIZED\"] = \"flexlayout__tabset-maximized\";\n CLASSES[\"FLEXLAYOUT__TABSET_SELECTED\"] = \"flexlayout__tabset-selected\";\n CLASSES[\"FLEXLAYOUT__TABSET_SIZER\"] = \"flexlayout__tabset_sizer\";\n CLASSES[\"FLEXLAYOUT__TABSET_TAB_DIVIDER\"] = \"flexlayout__tabset_tab_divider\";\n CLASSES[\"FLEXLAYOUT__TABSET_CONTENT\"] = \"flexlayout__tabset_content\";\n CLASSES[\"FLEXLAYOUT__TABSET_TABBAR_INNER\"] = \"flexlayout__tabset_tabbar_inner\";\n CLASSES[\"FLEXLAYOUT__TABSET_TABBAR_INNER_\"] = \"flexlayout__tabset_tabbar_inner_\";\n CLASSES[\"FLEXLAYOUT__TABSET_TABBAR_INNER_TAB_CONTAINER\"] = \"flexlayout__tabset_tabbar_inner_tab_container\";\n CLASSES[\"FLEXLAYOUT__TABSET_TABBAR_INNER_TAB_CONTAINER_\"] = \"flexlayout__tabset_tabbar_inner_tab_container_\";\n CLASSES[\"FLEXLAYOUT__TABSET_TABBAR_OUTER\"] = \"flexlayout__tabset_tabbar_outer\";\n CLASSES[\"FLEXLAYOUT__TABSET_TABBAR_OUTER_\"] = \"flexlayout__tabset_tabbar_outer_\";\n CLASSES[\"FLEXLAYOUT__TAB_BORDER\"] = \"flexlayout__tab_border\";\n CLASSES[\"FLEXLAYOUT__TAB_BORDER_\"] = \"flexlayout__tab_border_\";\n CLASSES[\"FLEXLAYOUT__TAB_BUTTON\"] = \"flexlayout__tab_button\";\n CLASSES[\"FLEXLAYOUT__TAB_BUTTON_STRETCH\"] = \"flexlayout__tab_button_stretch\";\n CLASSES[\"FLEXLAYOUT__TAB_BUTTON_CONTENT\"] = \"flexlayout__tab_button_content\";\n CLASSES[\"FLEXLAYOUT__TAB_BUTTON_LEADING\"] = \"flexlayout__tab_button_leading\";\n CLASSES[\"FLEXLAYOUT__TAB_BUTTON_OVERFLOW\"] = \"flexlayout__tab_button_overflow\";\n CLASSES[\"FLEXLAYOUT__TAB_BUTTON_OVERFLOW_COUNT\"] = \"flexlayout__tab_button_overflow_count\";\n CLASSES[\"FLEXLAYOUT__TAB_BUTTON_TEXTBOX\"] = \"flexlayout__tab_button_textbox\";\n CLASSES[\"FLEXLAYOUT__TAB_BUTTON_TRAILING\"] = \"flexlayout__tab_button_trailing\";\n CLASSES[\"FLEXLAYOUT__TAB_BUTTON_STAMP\"] = \"flexlayout__tab_button_stamp\";\n CLASSES[\"FLEXLAYOUT__TAB_FLOATING\"] = \"flexlayout__tab_floating\";\n CLASSES[\"FLEXLAYOUT__TAB_FLOATING_INNER\"] = \"flexlayout__tab_floating_inner\";\n CLASSES[\"FLEXLAYOUT__TAB_TOOLBAR\"] = \"flexlayout__tab_toolbar\";\n CLASSES[\"FLEXLAYOUT__TAB_TOOLBAR_BUTTON\"] = \"flexlayout__tab_toolbar_button\";\n CLASSES[\"FLEXLAYOUT__TAB_TOOLBAR_BUTTON_\"] = \"flexlayout__tab_toolbar_button-\";\n CLASSES[\"FLEXLAYOUT__TAB_TOOLBAR_BUTTON_FLOAT\"] = \"flexlayout__tab_toolbar_button-float\";\n CLASSES[\"FLEXLAYOUT__TAB_TOOLBAR_STICKY_BUTTONS_CONTAINER\"] = \"flexlayout__tab_toolbar_sticky_buttons_container\";\n CLASSES[\"FLEXLAYOUT__TAB_TOOLBAR_BUTTON_CLOSE\"] = \"flexlayout__tab_toolbar_button-close\";\n CLASSES[\"FLEXLAYOUT__POPUP_MENU_CONTAINER\"] = \"flexlayout__popup_menu_container\";\n CLASSES[\"FLEXLAYOUT__POPUP_MENU_ITEM\"] = \"flexlayout__popup_menu_item\";\n CLASSES[\"FLEXLAYOUT__POPUP_MENU\"] = \"flexlayout__popup_menu\";\n})(CLASSES || (CLASSES = {}));\n\n\n//# sourceURL=webpack://FlexLayout/./src/Types.ts?"); /***/ }), /***/ "./src/index.ts": /*!**********************!*\ !*** ./src/index.ts ***! \**********************/ /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"Action\": () => (/* reexport safe */ _model_Action__WEBPACK_IMPORTED_MODULE_1__.Action),\n/* harmony export */ \"Actions\": () => (/* reexport safe */ _model_Actions__WEBPACK_IMPORTED_MODULE_2__.Actions),\n/* harmony export */ \"BorderNode\": () => (/* reexport safe */ _model_BorderNode__WEBPACK_IMPORTED_MODULE_3__.BorderNode),\n/* harmony export */ \"BorderSet\": () => (/* reexport safe */ _model_BorderSet__WEBPACK_IMPORTED_MODULE_4__.BorderSet),\n/* harmony export */ \"CLASSES\": () => (/* reexport safe */ _Types__WEBPACK_IMPORTED_MODULE_21__.CLASSES),\n/* harmony export */ \"DockLocation\": () => (/* reexport safe */ _DockLocation__WEBPACK_IMPORTED_MODULE_15__.DockLocation),\n/* harmony export */ \"DragDrop\": () => (/* reexport safe */ _DragDrop__WEBPACK_IMPORTED_MODULE_16__.DragDrop),\n/* harmony export */ \"DropInfo\": () => (/* reexport safe */ _DropInfo__WEBPACK_IMPORTED_MODULE_17__.DropInfo),\n/* harmony export */ \"I18nLabel\": () => (/* reexport safe */ _I18nLabel__WEBPACK_IMPORTED_MODULE_18__.I18nLabel),\n/* harmony export */ \"ICloseType\": () => (/* reexport safe */ _model_ICloseType__WEBPACK_IMPORTED_MODULE_5__.ICloseType),\n/* harmony export */ \"Layout\": () => (/* reexport safe */ _view_Layout__WEBPACK_IMPORTED_MODULE_0__.Layout),\n/* harmony export */ \"Model\": () => (/* reexport safe */ _model_Model__WEBPACK_IMPORTED_MODULE_9__.Model),\n/* harmony export */ \"Node\": () => (/* reexport safe */ _model_Node__WEBPACK_IMPORTED_MODULE_10__.Node),\n/* harmony export */ \"Orientation\": () => (/* reexport safe */ _Orientation__WEBPACK_IMPORTED_MODULE_19__.Orientation),\n/* harmony export */ \"Rect\": () => (/* reexport safe */ _Rect__WEBPACK_IMPORTED_MODULE_20__.Rect),\n/* harmony export */ \"RowNode\": () => (/* reexport safe */ _model_RowNode__WEBPACK_IMPORTED_MODULE_11__.RowNode),\n/* harmony export */ \"SplitterNode\": () => (/* reexport safe */ _model_SplitterNode__WEBPACK_IMPORTED_MODULE_12__.SplitterNode),\n/* harmony export */ \"TabNode\": () => (/* reexport safe */ _model_TabNode__WEBPACK_IMPORTED_MODULE_13__.TabNode),\n/* harmony export */ \"TabSetNode\": () => (/* reexport safe */ _model_TabSetNode__WEBPACK_IMPORTED_MODULE_14__.TabSetNode)\n/* harmony export */ });\n/* harmony import */ var _view_Layout__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./view/Layout */ \"./src/view/Layout.tsx\");\n/* harmony import */ var _model_Action__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./model/Action */ \"./src/model/Action.ts\");\n/* harmony import */ var _model_Actions__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./model/Actions */ \"./src/model/Actions.ts\");\n/* harmony import */ var _model_BorderNode__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./model/BorderNode */ \"./src/model/BorderNode.ts\");\n/* harmony import */ var _model_BorderSet__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ./model/BorderSet */ \"./src/model/BorderSet.ts\");\n/* harmony import */ var _model_ICloseType__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ./model/ICloseType */ \"./src/model/ICloseType.ts\");\n/* harmony import */ var _model_IDraggable__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ./model/IDraggable */ \"./src/model/IDraggable.ts\");\n/* harmony import */ var _model_IDropTarget__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ./model/IDropTarget */ \"./src/model/IDropTarget.ts\");\n/* harmony import */ var _model_IJsonModel__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! ./model/IJsonModel */ \"./src/model/IJsonModel.ts\");\n/* harmony import */ var _model_Model__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(/*! ./model/Model */ \"./src/model/Model.ts\");\n/* harmony import */ var _model_Node__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(/*! ./model/Node */ \"./src/model/Node.ts\");\n/* harmony import */ var _model_RowNode__WEBPACK_IMPORTED_MODULE_11__ = __webpack_require__(/*! ./model/RowNode */ \"./src/model/RowNode.ts\");\n/* harmony import */ var _model_SplitterNode__WEBPACK_IMPORTED_MODULE_12__ = __webpack_require__(/*! ./model/SplitterNode */ \"./src/model/SplitterNode.ts\");\n/* harmony import */ var _model_TabNode__WEBPACK_IMPORTED_MODULE_13__ = __webpack_require__(/*! ./model/TabNode */ \"./src/model/TabNode.ts\");\n/* harmony import */ var _model_TabSetNode__WEBPACK_IMPORTED_MODULE_14__ = __webpack_require__(/*! ./model/TabSetNode */ \"./src/model/TabSetNode.ts\");\n/* harmony import */ var _DockLocation__WEBPACK_IMPORTED_MODULE_15__ = __webpack_require__(/*! ./DockLocation */ \"./src/DockLocation.ts\");\n/* harmony import */ var _DragDrop__WEBPACK_IMPORTED_MODULE_16__ = __webpack_require__(/*! ./DragDrop */ \"./src/DragDrop.ts\");\n/* harmony import */ var _DropInfo__WEBPACK_IMPORTED_MODULE_17__ = __webpack_require__(/*! ./DropInfo */ \"./src/DropInfo.ts\");\n/* harmony import */ var _I18nLabel__WEBPACK_IMPORTED_MODULE_18__ = __webpack_require__(/*! ./I18nLabel */ \"./src/I18nLabel.ts\");\n/* harmony import */ var _Orientation__WEBPACK_IMPORTED_MODULE_19__ = __webpack_require__(/*! ./Orientation */ \"./src/Orientation.ts\");\n/* harmony import */ var _Rect__WEBPACK_IMPORTED_MODULE_20__ = __webpack_require__(/*! ./Rect */ \"./src/Rect.ts\");\n/* harmony import */ var _Types__WEBPACK_IMPORTED_MODULE_21__ = __webpack_require__(/*! ./Types */ \"./src/Types.ts\");\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n//# sourceURL=webpack://FlexLayout/./src/index.ts?"); /***/ }), /***/ "./src/model/Action.ts": /*!*****************************!*\ !*** ./src/model/Action.ts ***! \*****************************/ /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"Action\": () => (/* binding */ A