"use strict";
/*
 * 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/).
 */
(self["webpackChunk_JUPYTERLAB_CORE_OUTPUT"] = self["webpackChunk_JUPYTERLAB_CORE_OUTPUT"] || []).push([["vendors-node_modules_jupyterlab_statusbar_lib_index_js"],{

/***/ "../node_modules/@jupyterlab/statusbar/lib/components/group.js":
/*!*********************************************************************!*\
  !*** ../node_modules/@jupyterlab/statusbar/lib/components/group.js ***!
  \*********************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */   GroupItem: () => (/* binding */ GroupItem)\n/* harmony export */ });\n/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! react */ \"webpack/sharing/consume/default/react/react\");\n/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_0__);\n// Copyright (c) Jupyter Development Team.\n// Distributed under the terms of the Modified BSD License.\n\n/**\n * A tsx component for a set of items logically grouped together.\n */\nfunction GroupItem(props) {\n    const { spacing, children, className, ...rest } = props;\n    // Filter out null or undefined children for clean rendering.\n    const validChildren = react__WEBPACK_IMPORTED_MODULE_0__.Children.toArray(children).filter(Boolean);\n    const numChildren = validChildren.length;\n    return (react__WEBPACK_IMPORTED_MODULE_0__.createElement(\"div\", { className: `jp-StatusBar-GroupItem ${className || ''}`, ...rest }, validChildren.map((child, i) => {\n        const key = `group-item-${i}`;\n        if (i === 0) {\n            return (react__WEBPACK_IMPORTED_MODULE_0__.createElement(\"div\", { key: key, style: { marginRight: `${spacing}px` } }, child));\n        }\n        else if (i === numChildren - 1) {\n            return (react__WEBPACK_IMPORTED_MODULE_0__.createElement(\"div\", { key: key, style: { marginLeft: `${spacing}px` } }, child));\n        }\n        else {\n            return (react__WEBPACK_IMPORTED_MODULE_0__.createElement(\"div\", { key: key, style: { margin: `0px ${spacing}px` } }, child));\n        }\n    })));\n}\n//# sourceMappingURL=group.js.map\n\n//# sourceURL=webpack://_JUPYTERLAB.CORE_OUTPUT/../node_modules/@jupyterlab/statusbar/lib/components/group.js?");

/***/ }),

/***/ "../node_modules/@jupyterlab/statusbar/lib/components/hover.js":
/*!*********************************************************************!*\
  !*** ../node_modules/@jupyterlab/statusbar/lib/components/hover.js ***!
  \*********************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */   Popup: () => (/* binding */ Popup),\n/* harmony export */   showPopup: () => (/* binding */ showPopup)\n/* harmony export */ });\n/* harmony import */ var _jupyterlab_ui_components__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @jupyterlab/ui-components */ \"webpack/sharing/consume/default/@jupyterlab/ui-components/@jupyterlab/ui-components\");\n/* harmony import */ var _jupyterlab_ui_components__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_jupyterlab_ui_components__WEBPACK_IMPORTED_MODULE_0__);\n/* harmony import */ var _lumino_widgets__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @lumino/widgets */ \"webpack/sharing/consume/default/@lumino/widgets/@lumino/widgets\");\n/* harmony import */ var _lumino_widgets__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_lumino_widgets__WEBPACK_IMPORTED_MODULE_1__);\n// Copyright (c) Jupyter Development Team.\n// Distributed under the terms of the Modified BSD License.\n\n\n/**\n * Create and show a popup component.\n *\n * @param options - options for the popup\n *\n * @returns the popup that was created.\n */\nfunction showPopup(options) {\n    const dialog = new Popup(options);\n    if (!options.startHidden) {\n        dialog.launch();\n    }\n    return dialog;\n}\n/**\n * A class for a Popup widget.\n */\nclass Popup extends _lumino_widgets__WEBPACK_IMPORTED_MODULE_1__.Widget {\n    /**\n     * Construct a new Popup.\n     */\n    constructor(options) {\n        super();\n        this.addClass('jp-ThemedContainer');\n        this._body = options.body;\n        this._body.addClass('jp-StatusBar-HoverItem');\n        this._anchor = options.anchor;\n        this._align = options.align;\n        if (options.hasDynamicSize) {\n            this._observer = new ResizeObserver(() => {\n                this.update();\n            });\n        }\n        const layout = (this.layout = new _lumino_widgets__WEBPACK_IMPORTED_MODULE_1__.PanelLayout());\n        layout.addWidget(options.body);\n        this._body.node.addEventListener('resize', () => {\n            this.update();\n        });\n    }\n    /**\n     * Attach the popup widget to the page.\n     */\n    launch() {\n        this._setGeometry();\n        _lumino_widgets__WEBPACK_IMPORTED_MODULE_1__.Widget.attach(this, document.body);\n        this.update();\n        this._anchor.addClass('jp-mod-clicked');\n        this._anchor.removeClass('jp-mod-highlight');\n    }\n    /**\n     * Handle `'update'` messages for the widget.\n     */\n    onUpdateRequest(msg) {\n        this._setGeometry();\n        super.onUpdateRequest(msg);\n    }\n    /**\n     * Handle `'after-attach'` messages for the widget.\n     */\n    onAfterAttach(msg) {\n        var _a;\n        document.addEventListener('click', this, false);\n        this.node.addEventListener('keydown', this, false);\n        window.addEventListener('resize', this, false);\n        (_a = this._observer) === null || _a === void 0 ? void 0 : _a.observe(this._body.node);\n    }\n    /**\n     * Handle `'before-detach'` messages for the widget.\n     */\n    onBeforeDetach(msg) {\n        var _a;\n        (_a = this._observer) === null || _a === void 0 ? void 0 : _a.disconnect();\n        document.removeEventListener('click', this, false);\n        this.node.removeEventListener('keydown', this, false);\n        window.removeEventListener('resize', this, false);\n    }\n    /**\n     * Handle `'resize'` messages for the widget.\n     */\n    onResize() {\n        this.update();\n    }\n    /**\n     * Dispose of the widget.\n     */\n    dispose() {\n        var _a;\n        (_a = this._observer) === null || _a === void 0 ? void 0 : _a.disconnect();\n        super.dispose();\n        this._anchor.removeClass('jp-mod-clicked');\n        this._anchor.addClass('jp-mod-highlight');\n    }\n    /**\n     * Handle DOM events for the widget.\n     */\n    handleEvent(event) {\n        switch (event.type) {\n            case 'keydown':\n                this._evtKeydown(event);\n                break;\n            case 'click':\n                this._evtClick(event);\n                break;\n            case 'resize':\n                this.onResize();\n                break;\n            default:\n                break;\n        }\n    }\n    _evtClick(event) {\n        if (!!event.target &&\n            !(this._body.node.contains(event.target) ||\n                this._anchor.node.contains(event.target))) {\n            this.dispose();\n        }\n    }\n    _evtKeydown(event) {\n        // Check for escape key\n        switch (event.keyCode) {\n            case 27: // Escape.\n                event.stopPropagation();\n                event.preventDefault();\n                this.dispose();\n                break;\n            default:\n                break;\n        }\n    }\n    _setGeometry() {\n        let aligned = 0;\n        const anchorRect = this._anchor.node.getBoundingClientRect();\n        const bodyRect = this._body.node.getBoundingClientRect();\n        if (this._align === 'right') {\n            aligned = -(bodyRect.width - anchorRect.width);\n        }\n        const style = window.getComputedStyle(this._body.node);\n        _jupyterlab_ui_components__WEBPACK_IMPORTED_MODULE_0__.HoverBox.setGeometry({\n            anchor: anchorRect,\n            host: document.body,\n            maxHeight: 500,\n            minHeight: 20,\n            node: this._body.node,\n            offset: {\n                horizontal: aligned\n            },\n            privilege: 'forceAbove',\n            style\n        });\n    }\n}\n//# sourceMappingURL=hover.js.map\n\n//# sourceURL=webpack://_JUPYTERLAB.CORE_OUTPUT/../node_modules/@jupyterlab/statusbar/lib/components/hover.js?");

/***/ }),

/***/ "../node_modules/@jupyterlab/statusbar/lib/components/index.js":
/*!*********************************************************************!*\
  !*** ../node_modules/@jupyterlab/statusbar/lib/components/index.js ***!
  \*********************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */   GroupItem: () => (/* reexport safe */ _group__WEBPACK_IMPORTED_MODULE_0__.GroupItem),\n/* harmony export */   Popup: () => (/* reexport safe */ _hover__WEBPACK_IMPORTED_MODULE_1__.Popup),\n/* harmony export */   ProgressBar: () => (/* reexport safe */ _progressBar__WEBPACK_IMPORTED_MODULE_2__.ProgressBar),\n/* harmony export */   ProgressCircle: () => (/* reexport safe */ _progressCircle__WEBPACK_IMPORTED_MODULE_4__.ProgressCircle),\n/* harmony export */   TextItem: () => (/* reexport safe */ _text__WEBPACK_IMPORTED_MODULE_3__.TextItem),\n/* harmony export */   showPopup: () => (/* reexport safe */ _hover__WEBPACK_IMPORTED_MODULE_1__.showPopup)\n/* harmony export */ });\n/* harmony import */ var _group__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./group */ \"../node_modules/@jupyterlab/statusbar/lib/components/group.js\");\n/* harmony import */ var _hover__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./hover */ \"../node_modules/@jupyterlab/statusbar/lib/components/hover.js\");\n/* harmony import */ var _progressBar__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./progressBar */ \"../node_modules/@jupyterlab/statusbar/lib/components/progressBar.js\");\n/* harmony import */ var _text__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./text */ \"../node_modules/@jupyterlab/statusbar/lib/components/text.js\");\n/* harmony import */ var _progressCircle__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ./progressCircle */ \"../node_modules/@jupyterlab/statusbar/lib/components/progressCircle.js\");\n// Copyright (c) Jupyter Development Team.\n// Distributed under the terms of the Modified BSD License.\n\n\n\n\n\n//# sourceMappingURL=index.js.map\n\n//# sourceURL=webpack://_JUPYTERLAB.CORE_OUTPUT/../node_modules/@jupyterlab/statusbar/lib/components/index.js?");

/***/ }),

/***/ "../node_modules/@jupyterlab/statusbar/lib/components/progressBar.js":
/*!***************************************************************************!*\
  !*** ../node_modules/@jupyterlab/statusbar/lib/components/progressBar.js ***!
  \***************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */   ProgressBar: () => (/* binding */ ProgressBar)\n/* harmony export */ });\n/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! react */ \"webpack/sharing/consume/default/react/react\");\n/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_0__);\n// Copyright (c) Jupyter Development Team.\n// Distributed under the terms of the Modified BSD License.\n\n/**\n * A functional tsx component for a progress bar.\n */\nfunction ProgressBar(props) {\n    const { width, percentage, ...rest } = props;\n    return (react__WEBPACK_IMPORTED_MODULE_0__.createElement(\"div\", { className: 'jp-Statusbar-ProgressBar-progress-bar', role: \"progressbar\", \"aria-valuemin\": 0, \"aria-valuemax\": 100, \"aria-valuenow\": percentage },\n        react__WEBPACK_IMPORTED_MODULE_0__.createElement(Filler, { percentage, ...rest, contentWidth: width })));\n}\n/**\n * A functional tsx component for a partially filled div.\n */\nfunction Filler(props) {\n    return (react__WEBPACK_IMPORTED_MODULE_0__.createElement(\"div\", { style: {\n            width: `${props.percentage}%`\n        } },\n        react__WEBPACK_IMPORTED_MODULE_0__.createElement(\"p\", null, props.content)));\n}\n//# sourceMappingURL=progressBar.js.map\n\n//# sourceURL=webpack://_JUPYTERLAB.CORE_OUTPUT/../node_modules/@jupyterlab/statusbar/lib/components/progressBar.js?");

/***/ }),

/***/ "../node_modules/@jupyterlab/statusbar/lib/components/progressCircle.js":
/*!******************************************************************************!*\
  !*** ../node_modules/@jupyterlab/statusbar/lib/components/progressCircle.js ***!
  \******************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */   ProgressCircle: () => (/* binding */ ProgressCircle)\n/* harmony export */ });\n/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! react */ \"webpack/sharing/consume/default/react/react\");\n/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_0__);\n/*\n * Copyright (c) Jupyter Development Team.\n * Distributed under the terms of the Modified BSD License.\n */\n\nfunction ProgressCircle(props) {\n    const radius = 104;\n    const d = (progress) => {\n        const angle = Math.max(progress * 3.6, 0.1);\n        const rad = (angle * Math.PI) / 180, x = Math.sin(rad) * radius, y = Math.cos(rad) * -radius, mid = angle < 180 ? 1 : 0, shape = `M 0 0 v -${radius} A ${radius} ${radius} 1 ` +\n            mid +\n            ' 0 ' +\n            x.toFixed(4) +\n            ' ' +\n            y.toFixed(4) +\n            ' z';\n        return shape;\n    };\n    return (react__WEBPACK_IMPORTED_MODULE_0___default().createElement(\"div\", { className: 'jp-Statusbar-ProgressCircle', role: \"progressbar\", \"aria-label\": props.label || 'Unlabelled progress circle', \"aria-valuemin\": 0, \"aria-valuemax\": 100, \"aria-valuenow\": props.progress },\n        react__WEBPACK_IMPORTED_MODULE_0___default().createElement(\"svg\", { viewBox: \"0 0 250 250\" },\n            react__WEBPACK_IMPORTED_MODULE_0___default().createElement(\"circle\", { cx: \"125\", cy: \"125\", r: `${radius}`, stroke: \"var(--jp-inverse-layout-color3)\", strokeWidth: \"20\", fill: \"none\" }),\n            react__WEBPACK_IMPORTED_MODULE_0___default().createElement(\"path\", { className: 'jp-Statusbar-ProgressCirclePath', transform: \"translate(125,125) scale(.9)\", d: d(props.progress), fill: 'var(--jp-inverse-layout-color3)' }))));\n}\n//# sourceMappingURL=progressCircle.js.map\n\n//# sourceURL=webpack://_JUPYTERLAB.CORE_OUTPUT/../node_modules/@jupyterlab/statusbar/lib/components/progressCircle.js?");

/***/ }),

/***/ "../node_modules/@jupyterlab/statusbar/lib/components/text.js":
/*!********************************************************************!*\
  !*** ../node_modules/@jupyterlab/statusbar/lib/components/text.js ***!
  \********************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */   TextItem: () => (/* binding */ TextItem)\n/* harmony export */ });\n/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! react */ \"webpack/sharing/consume/default/react/react\");\n/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_0__);\n// Copyright (c) Jupyter Development Team.\n// Distributed under the terms of the Modified BSD License.\n\n/**\n * A functional tsx component for a text item.\n */\nfunction TextItem(props) {\n    const { title, source, className, ...rest } = props;\n    return (react__WEBPACK_IMPORTED_MODULE_0__.createElement(\"span\", { className: className\n            ? `jp-StatusBar-TextItem ${className}`\n            : 'jp-StatusBar-TextItem', title: title, ...rest }, source));\n}\n//# sourceMappingURL=text.js.map\n\n//# sourceURL=webpack://_JUPYTERLAB.CORE_OUTPUT/../node_modules/@jupyterlab/statusbar/lib/components/text.js?");

/***/ }),

/***/ "../node_modules/@jupyterlab/statusbar/lib/index.js":
/*!**********************************************************!*\
  !*** ../node_modules/@jupyterlab/statusbar/lib/index.js ***!
  \**********************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */   GroupItem: () => (/* reexport safe */ _components__WEBPACK_IMPORTED_MODULE_0__.GroupItem),\n/* harmony export */   IStatusBar: () => (/* reexport safe */ _tokens__WEBPACK_IMPORTED_MODULE_2__.IStatusBar),\n/* harmony export */   Popup: () => (/* reexport safe */ _components__WEBPACK_IMPORTED_MODULE_0__.Popup),\n/* harmony export */   ProgressBar: () => (/* reexport safe */ _components__WEBPACK_IMPORTED_MODULE_0__.ProgressBar),\n/* harmony export */   ProgressCircle: () => (/* reexport safe */ _components__WEBPACK_IMPORTED_MODULE_0__.ProgressCircle),\n/* harmony export */   StatusBar: () => (/* reexport safe */ _statusbar__WEBPACK_IMPORTED_MODULE_1__.StatusBar),\n/* harmony export */   TextItem: () => (/* reexport safe */ _components__WEBPACK_IMPORTED_MODULE_0__.TextItem),\n/* harmony export */   showPopup: () => (/* reexport safe */ _components__WEBPACK_IMPORTED_MODULE_0__.showPopup)\n/* harmony export */ });\n/* harmony import */ var _components__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./components */ \"../node_modules/@jupyterlab/statusbar/lib/components/index.js\");\n/* harmony import */ var _statusbar__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./statusbar */ \"../node_modules/@jupyterlab/statusbar/lib/statusbar.js\");\n/* harmony import */ var _tokens__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./tokens */ \"../node_modules/@jupyterlab/statusbar/lib/tokens.js\");\n/* -----------------------------------------------------------------------------\n| Copyright (c) Jupyter Development Team.\n| Distributed under the terms of the Modified BSD License.\n|----------------------------------------------------------------------------*/\n/**\n * @packageDocumentation\n * @module statusbar\n */\n\n\n\n//# sourceMappingURL=index.js.map\n\n//# sourceURL=webpack://_JUPYTERLAB.CORE_OUTPUT/../node_modules/@jupyterlab/statusbar/lib/index.js?");

/***/ }),

/***/ "../node_modules/@jupyterlab/statusbar/lib/statusbar.js":
/*!**************************************************************!*\
  !*** ../node_modules/@jupyterlab/statusbar/lib/statusbar.js ***!
  \**************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */   StatusBar: () => (/* binding */ StatusBar)\n/* harmony export */ });\n/* harmony import */ var _lumino_algorithm__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @lumino/algorithm */ \"webpack/sharing/consume/default/@lumino/algorithm/@lumino/algorithm\");\n/* harmony import */ var _lumino_algorithm__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_lumino_algorithm__WEBPACK_IMPORTED_MODULE_0__);\n/* harmony import */ var _lumino_disposable__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @lumino/disposable */ \"webpack/sharing/consume/default/@lumino/disposable/@lumino/disposable\");\n/* harmony import */ var _lumino_disposable__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_lumino_disposable__WEBPACK_IMPORTED_MODULE_1__);\n/* harmony import */ var _lumino_widgets__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! @lumino/widgets */ \"webpack/sharing/consume/default/@lumino/widgets/@lumino/widgets\");\n/* harmony import */ var _lumino_widgets__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(_lumino_widgets__WEBPACK_IMPORTED_MODULE_2__);\n// Copyright (c) Jupyter Development Team.\n// Distributed under the terms of the Modified BSD License.\n\n\n\n/**\n * Main status bar object which contains all items.\n */\nclass StatusBar extends _lumino_widgets__WEBPACK_IMPORTED_MODULE_2__.Widget {\n    constructor() {\n        super();\n        this._isWindowNarrow = () => {\n            // The value for 630px was chosen by trial and error.\n            // When the screen width drops below 630px, there is no\n            // longer enough space for all the items in the status bar\n            // (with notebook open), and items become clipped.\n            return window.innerWidth <= 630;\n        };\n        this._leftRankItems = [];\n        this._rightRankItems = [];\n        this._statusItems = {};\n        this._disposables = new _lumino_disposable__WEBPACK_IMPORTED_MODULE_1__.DisposableSet();\n        this.addClass('jp-StatusBar-Widget');\n        const rootLayout = (this.layout = new _lumino_widgets__WEBPACK_IMPORTED_MODULE_2__.PanelLayout());\n        const leftPanel = (this._leftSide = new _lumino_widgets__WEBPACK_IMPORTED_MODULE_2__.Panel());\n        const middlePanel = (this._middlePanel = new _lumino_widgets__WEBPACK_IMPORTED_MODULE_2__.Panel());\n        const rightPanel = (this._rightSide = new _lumino_widgets__WEBPACK_IMPORTED_MODULE_2__.Panel());\n        leftPanel.addClass('jp-StatusBar-Left');\n        middlePanel.addClass('jp-StatusBar-Middle');\n        rightPanel.addClass('jp-StatusBar-Right');\n        rightPanel.node.style.flexDirection = 'row';\n        rootLayout.addWidget(leftPanel);\n        rootLayout.addWidget(middlePanel);\n        rootLayout.addWidget(rightPanel);\n    }\n    /**\n     * Register a new status item.\n     *\n     * @param id - a unique id for the status item.\n     * @param statusItem - The item to add to the status bar.\n     *\n     * @returns Disposable status bar item\n     */\n    registerStatusItem(id, statusItem) {\n        if (id in this._statusItems) {\n            throw new Error(`Status item ${id} already registered.`);\n        }\n        // Populate defaults for the optional properties of the status item.\n        const fullStatusItem = {\n            ...Private.statusItemDefaults,\n            ...statusItem\n        };\n        const { align, item, rank, priority } = fullStatusItem;\n        // Connect the activeStateChanged signal to refreshing the status item,\n        // if the signal was provided.\n        const onActiveStateChanged = () => {\n            this._refreshItem(id);\n        };\n        if (fullStatusItem.activeStateChanged) {\n            fullStatusItem.activeStateChanged.connect(onActiveStateChanged);\n        }\n        const rankItem = { id, rank, priority };\n        fullStatusItem.item.addClass('jp-StatusBar-Item');\n        this._statusItems[id] = fullStatusItem;\n        if (align === 'left') {\n            const insertIndex = this._findInsertIndex(this._leftRankItems, rankItem);\n            if (insertIndex === -1) {\n                this._leftSide.addWidget(item);\n                this._leftRankItems.push(rankItem);\n            }\n            else {\n                _lumino_algorithm__WEBPACK_IMPORTED_MODULE_0__.ArrayExt.insert(this._leftRankItems, insertIndex, rankItem);\n                this._leftSide.insertWidget(insertIndex, item);\n            }\n        }\n        else if (align === 'right') {\n            const insertIndex = _lumino_algorithm__WEBPACK_IMPORTED_MODULE_0__.ArrayExt.findFirstIndex(this._rightRankItems, item => item.rank < rankItem.rank);\n            if (insertIndex === -1) {\n                this._rightSide.addWidget(item);\n                this._rightRankItems.push(rankItem);\n            }\n            else {\n                _lumino_algorithm__WEBPACK_IMPORTED_MODULE_0__.ArrayExt.insert(this._rightRankItems, insertIndex, rankItem);\n                this._rightSide.insertWidget(insertIndex, item);\n            }\n        }\n        else {\n            this._middlePanel.addWidget(item);\n        }\n        this._refreshItem(id); // Initially refresh the status item.\n        const disposable = new _lumino_disposable__WEBPACK_IMPORTED_MODULE_1__.DisposableDelegate(() => {\n            delete this._statusItems[id];\n            if (fullStatusItem.activeStateChanged) {\n                fullStatusItem.activeStateChanged.disconnect(onActiveStateChanged);\n            }\n            item.parent = null;\n            item.dispose();\n        });\n        this._disposables.add(disposable);\n        return disposable;\n    }\n    /**\n     * Dispose of the status bar.\n     */\n    dispose() {\n        this._leftRankItems.length = 0;\n        this._rightRankItems.length = 0;\n        this._disposables.dispose();\n        super.dispose();\n    }\n    /**\n     * Handle an 'update-request' message to the status bar.\n     */\n    onUpdateRequest(msg) {\n        this._refreshAll();\n        super.onUpdateRequest(msg);\n    }\n    _findInsertIndex(side, newItem) {\n        return _lumino_algorithm__WEBPACK_IMPORTED_MODULE_0__.ArrayExt.findFirstIndex(side, item => item.rank > newItem.rank);\n    }\n    _refreshItem(id) {\n        const statusItem = this._statusItems[id];\n        if (statusItem.isActive() &&\n            !(statusItem.priority === 0 && this._isWindowNarrow())) {\n            statusItem.item.show();\n            statusItem.item.update();\n        }\n        else {\n            statusItem.item.hide();\n        }\n    }\n    _refreshAll() {\n        Object.keys(this._statusItems).forEach(id => {\n            this._refreshItem(id);\n        });\n    }\n}\n/**\n * A namespace for private functionality.\n */\nvar Private;\n(function (Private) {\n    /**\n     * Default options for a status item, less the item itself.\n     */\n    Private.statusItemDefaults = {\n        align: 'left',\n        rank: 0,\n        priority: 0,\n        isActive: () => true,\n        activeStateChanged: undefined\n    };\n})(Private || (Private = {}));\n//# sourceMappingURL=statusbar.js.map\n\n//# sourceURL=webpack://_JUPYTERLAB.CORE_OUTPUT/../node_modules/@jupyterlab/statusbar/lib/statusbar.js?");

/***/ }),

/***/ "../node_modules/@jupyterlab/statusbar/lib/tokens.js":
/*!***********************************************************!*\
  !*** ../node_modules/@jupyterlab/statusbar/lib/tokens.js ***!
  \***********************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */   IStatusBar: () => (/* binding */ IStatusBar)\n/* harmony export */ });\n/* harmony import */ var _lumino_coreutils__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @lumino/coreutils */ \"webpack/sharing/consume/default/@lumino/coreutils/@lumino/coreutils\");\n/* harmony import */ var _lumino_coreutils__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_lumino_coreutils__WEBPACK_IMPORTED_MODULE_0__);\n// Copyright (c) Jupyter Development Team.\n// Distributed under the terms of the Modified BSD License.\n\n// tslint:disable-next-line:variable-name\nconst IStatusBar = new _lumino_coreutils__WEBPACK_IMPORTED_MODULE_0__.Token('@jupyterlab/statusbar:IStatusBar', 'A service for the status bar on the application. Use this if you want to add new status bar items.');\n//# sourceMappingURL=tokens.js.map\n\n//# sourceURL=webpack://_JUPYTERLAB.CORE_OUTPUT/../node_modules/@jupyterlab/statusbar/lib/tokens.js?");

/***/ })

}]);