"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_jupyter-notebook_application_lib_index_js"],{

/***/ "../node_modules/@jupyter-notebook/application/lib/app.js":
/*!****************************************************************!*\
  !*** ../node_modules/@jupyter-notebook/application/lib/app.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 */   \"NotebookApp\": () => (/* binding */ NotebookApp)\n/* harmony export */ });\n/* harmony import */ var _jupyterlab_application__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @jupyterlab/application */ \"webpack/sharing/consume/default/@jupyterlab/application/@jupyterlab/application\");\n/* harmony import */ var _jupyterlab_application__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_jupyterlab_application__WEBPACK_IMPORTED_MODULE_0__);\n/* harmony import */ var _jupyterlab_docregistry__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @jupyterlab/docregistry */ \"webpack/sharing/consume/default/@jupyterlab/docregistry/@jupyterlab/docregistry\");\n/* harmony import */ var _jupyterlab_docregistry__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_jupyterlab_docregistry__WEBPACK_IMPORTED_MODULE_1__);\n/* harmony import */ var _jupyterlab_application_lib_mimerenderers__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! @jupyterlab/application/lib/mimerenderers */ \"../node_modules/@jupyterlab/application/lib/mimerenderers.js\");\n/* harmony import */ var _jupyterlab_application_lib_status__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! @jupyterlab/application/lib/status */ \"../node_modules/@jupyterlab/application/lib/status.js\");\n/* harmony import */ var _jupyterlab_coreutils__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! @jupyterlab/coreutils */ \"webpack/sharing/consume/default/@jupyterlab/coreutils/@jupyterlab/coreutils\");\n/* harmony import */ var _jupyterlab_coreutils__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(_jupyterlab_coreutils__WEBPACK_IMPORTED_MODULE_2__);\n/* harmony import */ var _lumino_polling__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! @lumino/polling */ \"webpack/sharing/consume/default/@lumino/polling/@lumino/polling\");\n/* harmony import */ var _lumino_polling__WEBPACK_IMPORTED_MODULE_3___default = /*#__PURE__*/__webpack_require__.n(_lumino_polling__WEBPACK_IMPORTED_MODULE_3__);\n/* harmony import */ var _shell__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ./shell */ \"../node_modules/@jupyter-notebook/application/lib/shell.js\");\n// Copyright (c) Jupyter Development Team.\n// Distributed under the terms of the Modified BSD License.\n\n\n\n\n\n\n\n/**\n * App is the main application class. It is instantiated once and shared.\n */\nclass NotebookApp extends _jupyterlab_application__WEBPACK_IMPORTED_MODULE_0__.JupyterFrontEnd {\n    /**\n     * Construct a new NotebookApp object.\n     *\n     * @param options The instantiation options for an application.\n     */\n    constructor(options = { shell: new _shell__WEBPACK_IMPORTED_MODULE_4__.NotebookShell() }) {\n        var _a, _b;\n        super({ ...options, shell: (_a = options.shell) !== null && _a !== void 0 ? _a : new _shell__WEBPACK_IMPORTED_MODULE_4__.NotebookShell() });\n        /**\n         * The name of the application.\n         */\n        this.name = 'Jupyter Notebook';\n        /**\n         * A namespace/prefix plugins may use to denote their provenance.\n         */\n        this.namespace = this.name;\n        /**\n         * The application busy and dirty status signals and flags.\n         */\n        this.status = new _jupyterlab_application_lib_status__WEBPACK_IMPORTED_MODULE_5__.LabStatus(this);\n        /**\n         * The version of the application.\n         */\n        this.version = (_b = _jupyterlab_coreutils__WEBPACK_IMPORTED_MODULE_2__.PageConfig.getOption('appVersion')) !== null && _b !== void 0 ? _b : 'unknown';\n        this._formatter = new _lumino_polling__WEBPACK_IMPORTED_MODULE_3__.Throttler(() => {\n            Private.setFormat(this);\n        }, 250);\n        // Add initial model factory.\n        this.docRegistry.addModelFactory(new _jupyterlab_docregistry__WEBPACK_IMPORTED_MODULE_1__.Base64ModelFactory());\n        if (options.mimeExtensions) {\n            for (const plugin of (0,_jupyterlab_application_lib_mimerenderers__WEBPACK_IMPORTED_MODULE_6__.createRendermimePlugins)(options.mimeExtensions)) {\n                this.registerPlugin(plugin);\n            }\n        }\n        this.restored = this.shell.restored;\n        this.restored.then(() => this._formatter.invoke());\n    }\n    /**\n     * The JupyterLab application paths dictionary.\n     */\n    get paths() {\n        return {\n            urls: {\n                base: _jupyterlab_coreutils__WEBPACK_IMPORTED_MODULE_2__.PageConfig.getOption('baseUrl'),\n                notFound: _jupyterlab_coreutils__WEBPACK_IMPORTED_MODULE_2__.PageConfig.getOption('notFoundUrl'),\n                app: _jupyterlab_coreutils__WEBPACK_IMPORTED_MODULE_2__.PageConfig.getOption('appUrl'),\n                static: _jupyterlab_coreutils__WEBPACK_IMPORTED_MODULE_2__.PageConfig.getOption('staticUrl'),\n                settings: _jupyterlab_coreutils__WEBPACK_IMPORTED_MODULE_2__.PageConfig.getOption('settingsUrl'),\n                themes: _jupyterlab_coreutils__WEBPACK_IMPORTED_MODULE_2__.PageConfig.getOption('themesUrl'),\n                doc: _jupyterlab_coreutils__WEBPACK_IMPORTED_MODULE_2__.PageConfig.getOption('docUrl'),\n                translations: _jupyterlab_coreutils__WEBPACK_IMPORTED_MODULE_2__.PageConfig.getOption('translationsApiUrl'),\n                hubHost: _jupyterlab_coreutils__WEBPACK_IMPORTED_MODULE_2__.PageConfig.getOption('hubHost') || undefined,\n                hubPrefix: _jupyterlab_coreutils__WEBPACK_IMPORTED_MODULE_2__.PageConfig.getOption('hubPrefix') || undefined,\n                hubUser: _jupyterlab_coreutils__WEBPACK_IMPORTED_MODULE_2__.PageConfig.getOption('hubUser') || undefined,\n                hubServerName: _jupyterlab_coreutils__WEBPACK_IMPORTED_MODULE_2__.PageConfig.getOption('hubServerName') || undefined,\n            },\n            directories: {\n                appSettings: _jupyterlab_coreutils__WEBPACK_IMPORTED_MODULE_2__.PageConfig.getOption('appSettingsDir'),\n                schemas: _jupyterlab_coreutils__WEBPACK_IMPORTED_MODULE_2__.PageConfig.getOption('schemasDir'),\n                static: _jupyterlab_coreutils__WEBPACK_IMPORTED_MODULE_2__.PageConfig.getOption('staticDir'),\n                templates: _jupyterlab_coreutils__WEBPACK_IMPORTED_MODULE_2__.PageConfig.getOption('templatesDir'),\n                themes: _jupyterlab_coreutils__WEBPACK_IMPORTED_MODULE_2__.PageConfig.getOption('themesDir'),\n                userSettings: _jupyterlab_coreutils__WEBPACK_IMPORTED_MODULE_2__.PageConfig.getOption('userSettingsDir'),\n                serverRoot: _jupyterlab_coreutils__WEBPACK_IMPORTED_MODULE_2__.PageConfig.getOption('serverRoot'),\n                workspaces: _jupyterlab_coreutils__WEBPACK_IMPORTED_MODULE_2__.PageConfig.getOption('workspacesDir'),\n            },\n        };\n    }\n    /**\n     * Handle the DOM events for the application.\n     *\n     * @param event - The DOM event sent to the application.\n     */\n    handleEvent(event) {\n        super.handleEvent(event);\n        if (event.type === 'resize') {\n            void this._formatter.invoke();\n        }\n    }\n    /**\n     * Register plugins from a plugin module.\n     *\n     * @param mod - The plugin module to register.\n     */\n    registerPluginModule(mod) {\n        let data = mod.default;\n        // Handle commonjs exports.\n        if (!Object.prototype.hasOwnProperty.call(mod, '__esModule')) {\n            data = mod;\n        }\n        if (!Array.isArray(data)) {\n            data = [data];\n        }\n        data.forEach((item) => {\n            try {\n                this.registerPlugin(item);\n            }\n            catch (error) {\n                console.error(error);\n            }\n        });\n    }\n    /**\n     * Register the plugins from multiple plugin modules.\n     *\n     * @param mods - The plugin modules to register.\n     */\n    registerPluginModules(mods) {\n        mods.forEach((mod) => {\n            this.registerPluginModule(mod);\n        });\n    }\n}\n/**\n * A namespace for module-private functionality.\n */\nvar Private;\n(function (Private) {\n    /**\n     * Media query for mobile devices.\n     */\n    const MOBILE_QUERY = 'only screen and (max-width: 760px)';\n    /**\n     * Sets the `format` of a Jupyter front-end application.\n     *\n     * @param app The front-end application whose format is set.\n     */\n    function setFormat(app) {\n        app.format = window.matchMedia(MOBILE_QUERY).matches ? 'mobile' : 'desktop';\n    }\n    Private.setFormat = setFormat;\n})(Private || (Private = {}));\n\n\n//# sourceURL=webpack://_JUPYTERLAB.CORE_OUTPUT/../node_modules/@jupyter-notebook/application/lib/app.js?");

/***/ }),

/***/ "../node_modules/@jupyter-notebook/application/lib/index.js":
/*!******************************************************************!*\
  !*** ../node_modules/@jupyter-notebook/application/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 */   \"INotebookShell\": () => (/* reexport safe */ _shell__WEBPACK_IMPORTED_MODULE_1__.INotebookShell),\n/* harmony export */   \"NotebookApp\": () => (/* reexport safe */ _app__WEBPACK_IMPORTED_MODULE_0__.NotebookApp),\n/* harmony export */   \"NotebookShell\": () => (/* reexport safe */ _shell__WEBPACK_IMPORTED_MODULE_1__.NotebookShell),\n/* harmony export */   \"PanelHandler\": () => (/* reexport safe */ _panelhandler__WEBPACK_IMPORTED_MODULE_2__.PanelHandler),\n/* harmony export */   \"Private\": () => (/* reexport safe */ _shell__WEBPACK_IMPORTED_MODULE_1__.Private),\n/* harmony export */   \"SidePanelHandler\": () => (/* reexport safe */ _panelhandler__WEBPACK_IMPORTED_MODULE_2__.SidePanelHandler),\n/* harmony export */   \"SidePanelPalette\": () => (/* reexport safe */ _panelhandler__WEBPACK_IMPORTED_MODULE_2__.SidePanelPalette)\n/* harmony export */ });\n/* harmony import */ var _app__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./app */ \"../node_modules/@jupyter-notebook/application/lib/app.js\");\n/* harmony import */ var _shell__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./shell */ \"../node_modules/@jupyter-notebook/application/lib/shell.js\");\n/* harmony import */ var _panelhandler__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./panelhandler */ \"../node_modules/@jupyter-notebook/application/lib/panelhandler.js\");\n// Copyright (c) Jupyter Development Team.\n// Distributed under the terms of the Modified BSD License.\n\n\n\n\n\n//# sourceURL=webpack://_JUPYTERLAB.CORE_OUTPUT/../node_modules/@jupyter-notebook/application/lib/index.js?");

/***/ }),

/***/ "../node_modules/@jupyter-notebook/application/lib/panelhandler.js":
/*!*************************************************************************!*\
  !*** ../node_modules/@jupyter-notebook/application/lib/panelhandler.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 */   \"PanelHandler\": () => (/* binding */ PanelHandler),\n/* harmony export */   \"SidePanelHandler\": () => (/* binding */ SidePanelHandler),\n/* harmony export */   \"SidePanelPalette\": () => (/* binding */ SidePanelPalette)\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_algorithm__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @lumino/algorithm */ \"webpack/sharing/consume/default/@lumino/algorithm/@lumino/algorithm\");\n/* harmony import */ var _lumino_algorithm__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_lumino_algorithm__WEBPACK_IMPORTED_MODULE_1__);\n/* harmony import */ var _lumino_messaging__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! @lumino/messaging */ \"webpack/sharing/consume/default/@lumino/messaging/@lumino/messaging\");\n/* harmony import */ var _lumino_messaging__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(_lumino_messaging__WEBPACK_IMPORTED_MODULE_2__);\n/* harmony import */ var _lumino_signaling__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! @lumino/signaling */ \"webpack/sharing/consume/default/@lumino/signaling/@lumino/signaling\");\n/* harmony import */ var _lumino_signaling__WEBPACK_IMPORTED_MODULE_3___default = /*#__PURE__*/__webpack_require__.n(_lumino_signaling__WEBPACK_IMPORTED_MODULE_3__);\n/* harmony import */ var _lumino_widgets__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! @lumino/widgets */ \"webpack/sharing/consume/default/@lumino/widgets/@lumino/widgets\");\n/* harmony import */ var _lumino_widgets__WEBPACK_IMPORTED_MODULE_4___default = /*#__PURE__*/__webpack_require__.n(_lumino_widgets__WEBPACK_IMPORTED_MODULE_4__);\n// Copyright (c) Jupyter Development Team.\n// Distributed under the terms of the Modified BSD License.\n\n\n\n\n\n/**\n * A class which manages a panel and sorts its widgets by rank.\n */\nclass PanelHandler {\n    constructor() {\n        /**\n         * A message hook for child remove messages on the panel handler.\n         */\n        this._panelChildHook = (handler, msg) => {\n            switch (msg.type) {\n                case 'child-removed':\n                    {\n                        const widget = msg.child;\n                        _lumino_algorithm__WEBPACK_IMPORTED_MODULE_1__.ArrayExt.removeFirstWhere(this._items, (v) => v.widget === widget);\n                    }\n                    break;\n                default:\n                    break;\n            }\n            return true;\n        };\n        this._items = new Array();\n        this._panel = new _lumino_widgets__WEBPACK_IMPORTED_MODULE_4__.Panel();\n        _lumino_messaging__WEBPACK_IMPORTED_MODULE_2__.MessageLoop.installMessageHook(this._panel, this._panelChildHook);\n    }\n    /**\n     * Get the panel managed by the handler.\n     */\n    get panel() {\n        return this._panel;\n    }\n    /**\n     * Add a widget to the panel.\n     *\n     * If the widget is already added, it will be moved.\n     */\n    addWidget(widget, rank) {\n        widget.parent = null;\n        const item = { widget, rank };\n        const index = _lumino_algorithm__WEBPACK_IMPORTED_MODULE_1__.ArrayExt.upperBound(this._items, item, Private.itemCmp);\n        _lumino_algorithm__WEBPACK_IMPORTED_MODULE_1__.ArrayExt.insert(this._items, index, item);\n        this._panel.insertWidget(index, widget);\n    }\n}\n/**\n * A class which manages a side panel that can show at most one widget at a time.\n */\nclass SidePanelHandler extends PanelHandler {\n    /**\n     * Construct a new side panel handler.\n     */\n    constructor(area) {\n        super();\n        this._isHiddenByUser = false;\n        this._widgetAdded = new _lumino_signaling__WEBPACK_IMPORTED_MODULE_3__.Signal(this);\n        this._widgetRemoved = new _lumino_signaling__WEBPACK_IMPORTED_MODULE_3__.Signal(this);\n        this._area = area;\n        this._panel.hide();\n        this._currentWidget = null;\n        this._lastCurrentWidget = null;\n        this._widgetPanel = new _lumino_widgets__WEBPACK_IMPORTED_MODULE_4__.StackedPanel();\n        this._widgetPanel.widgetRemoved.connect(this._onWidgetRemoved, this);\n        this._closeButton = document.createElement('button');\n        _jupyterlab_ui_components__WEBPACK_IMPORTED_MODULE_0__.closeIcon.element({\n            container: this._closeButton,\n            height: '16px',\n            width: 'auto',\n        });\n        this._closeButton.onclick = () => {\n            this.collapse();\n            this.hide();\n        };\n        this._closeButton.className = 'jp-Button jp-SidePanel-collapse';\n        this._closeButton.title = 'Collapse side panel';\n        const icon = new _lumino_widgets__WEBPACK_IMPORTED_MODULE_4__.Widget({ node: this._closeButton });\n        this._panel.addWidget(icon);\n        this._panel.addWidget(this._widgetPanel);\n    }\n    /**\n     * Get the current widget in the sidebar panel.\n     */\n    get currentWidget() {\n        return (this._currentWidget ||\n            this._lastCurrentWidget ||\n            (this._items.length > 0 ? this._items[0].widget : null));\n    }\n    /**\n     * Get the area of the side panel\n     */\n    get area() {\n        return this._area;\n    }\n    /**\n     * Whether the panel is visible\n     */\n    get isVisible() {\n        return this._panel.isVisible;\n    }\n    /**\n     * Get the stacked panel managed by the handler\n     */\n    get panel() {\n        return this._panel;\n    }\n    /**\n     * Get the widgets list.\n     */\n    get widgets() {\n        return this._items.map((obj) => obj.widget);\n    }\n    /**\n     * Signal fired when a widget is added to the panel\n     */\n    get widgetAdded() {\n        return this._widgetAdded;\n    }\n    /**\n     * Signal fired when a widget is removed from the panel\n     */\n    get widgetRemoved() {\n        return this._widgetRemoved;\n    }\n    /**\n     * Get the close button element.\n     */\n    get closeButton() {\n        return this._closeButton;\n    }\n    /**\n     * Expand the sidebar.\n     *\n     * #### Notes\n     * This will open the most recently used widget, or the first widget\n     * if there is no most recently used.\n     */\n    expand(id) {\n        if (this._currentWidget) {\n            this.collapse();\n        }\n        if (id) {\n            this.activate(id);\n        }\n        else {\n            const visibleWidget = this.currentWidget;\n            if (visibleWidget) {\n                this._currentWidget = visibleWidget;\n                this.activate(visibleWidget.id);\n            }\n        }\n    }\n    /**\n     * Activate a widget residing in the stacked panel by ID.\n     *\n     * @param id - The widget's unique ID.\n     */\n    activate(id) {\n        const widget = this._findWidgetByID(id);\n        if (widget) {\n            this._currentWidget = widget;\n            widget.show();\n            widget.activate();\n        }\n    }\n    /**\n     * Test whether the sidebar has the given widget by id.\n     */\n    has(id) {\n        return this._findWidgetByID(id) !== null;\n    }\n    /**\n     * Collapse the sidebar so no items are expanded.\n     */\n    collapse() {\n        var _a;\n        (_a = this._currentWidget) === null || _a === void 0 ? void 0 : _a.hide();\n        this._currentWidget = null;\n    }\n    /**\n     * Add a widget and its title to the stacked panel.\n     *\n     * If the widget is already added, it will be moved.\n     */\n    addWidget(widget, rank) {\n        widget.parent = null;\n        widget.hide();\n        const item = { widget, rank };\n        const index = this._findInsertIndex(item);\n        _lumino_algorithm__WEBPACK_IMPORTED_MODULE_1__.ArrayExt.insert(this._items, index, item);\n        this._widgetPanel.insertWidget(index, widget);\n        this._refreshVisibility();\n        this._widgetAdded.emit(widget);\n    }\n    /**\n     * Hide the side panel\n     */\n    hide() {\n        this._isHiddenByUser = true;\n        this._refreshVisibility();\n    }\n    /**\n     * Show the side panel\n     */\n    show() {\n        this._isHiddenByUser = false;\n        this._refreshVisibility();\n    }\n    /**\n     * Find the insertion index for a rank item.\n     */\n    _findInsertIndex(item) {\n        return _lumino_algorithm__WEBPACK_IMPORTED_MODULE_1__.ArrayExt.upperBound(this._items, item, Private.itemCmp);\n    }\n    /**\n     * Find the index of the item with the given widget, or `-1`.\n     */\n    _findWidgetIndex(widget) {\n        return _lumino_algorithm__WEBPACK_IMPORTED_MODULE_1__.ArrayExt.findFirstIndex(this._items, (i) => i.widget === widget);\n    }\n    /**\n     * Find the widget with the given id, or `null`.\n     */\n    _findWidgetByID(id) {\n        const item = (0,_lumino_algorithm__WEBPACK_IMPORTED_MODULE_1__.find)(this._items, (value) => value.widget.id === id);\n        return item ? item.widget : null;\n    }\n    /**\n     * Refresh the visibility of the stacked panel.\n     */\n    _refreshVisibility() {\n        this._panel.setHidden(this._isHiddenByUser);\n    }\n    /*\n     * Handle the `widgetRemoved` signal from the panel.\n     */\n    _onWidgetRemoved(sender, widget) {\n        if (widget === this._lastCurrentWidget) {\n            this._lastCurrentWidget = null;\n        }\n        _lumino_algorithm__WEBPACK_IMPORTED_MODULE_1__.ArrayExt.removeAt(this._items, this._findWidgetIndex(widget));\n        this._refreshVisibility();\n        this._widgetRemoved.emit(widget);\n    }\n}\n/**\n * A class to manages the palette entries associated to the side panels.\n */\nclass SidePanelPalette {\n    /**\n     * Construct a new side panel palette.\n     */\n    constructor(options) {\n        this._items = [];\n        this._commandPalette = options.commandPalette;\n        this._command = options.command;\n    }\n    /**\n     * Get a command palette item from the widget id and the area.\n     */\n    getItem(widget, area) {\n        const itemList = this._items;\n        for (let i = 0; i < itemList.length; i++) {\n            const item = itemList[i];\n            if (item.widgetId === widget.id && item.area === area) {\n                return item;\n            }\n        }\n        return null;\n    }\n    /**\n     * Add an item to the command palette.\n     */\n    addItem(widget, area) {\n        // Check if the item does not already exist.\n        if (this.getItem(widget, area)) {\n            return;\n        }\n        // Add a new item in command palette.\n        const disposableDelegate = this._commandPalette.addItem({\n            command: this._command,\n            category: 'View',\n            args: {\n                side: area,\n                title: `Show ${widget.title.caption}`,\n                id: widget.id,\n            },\n        });\n        // Keep the disposableDelegate objet to be able to dispose of the item if the widget\n        // is remove from the side panel.\n        this._items.push({\n            widgetId: widget.id,\n            area: area,\n            disposable: disposableDelegate,\n        });\n    }\n    /**\n     * Remove an item from the command palette.\n     */\n    removeItem(widget, area) {\n        const item = this.getItem(widget, area);\n        if (item) {\n            item.disposable.dispose();\n        }\n    }\n}\n/**\n * A namespace for private module data.\n */\nvar Private;\n(function (Private) {\n    /**\n     * A less-than comparison function for side bar rank items.\n     */\n    function itemCmp(first, second) {\n        return first.rank - second.rank;\n    }\n    Private.itemCmp = itemCmp;\n})(Private || (Private = {}));\n\n\n//# sourceURL=webpack://_JUPYTERLAB.CORE_OUTPUT/../node_modules/@jupyter-notebook/application/lib/panelhandler.js?");

/***/ }),

/***/ "../node_modules/@jupyter-notebook/application/lib/shell.js":
/*!******************************************************************!*\
  !*** ../node_modules/@jupyter-notebook/application/lib/shell.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 */   \"INotebookShell\": () => (/* binding */ INotebookShell),\n/* harmony export */   \"NotebookShell\": () => (/* binding */ NotebookShell),\n/* harmony export */   \"Private\": () => (/* binding */ Private)\n/* harmony export */ });\n/* harmony import */ var _jupyterlab_translation__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @jupyterlab/translation */ \"webpack/sharing/consume/default/@jupyterlab/translation/@jupyterlab/translation\");\n/* harmony import */ var _jupyterlab_translation__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_jupyterlab_translation__WEBPACK_IMPORTED_MODULE_0__);\n/* harmony import */ var _lumino_algorithm__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @lumino/algorithm */ \"webpack/sharing/consume/default/@lumino/algorithm/@lumino/algorithm\");\n/* harmony import */ var _lumino_algorithm__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_lumino_algorithm__WEBPACK_IMPORTED_MODULE_1__);\n/* harmony import */ var _lumino_coreutils__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! @lumino/coreutils */ \"webpack/sharing/consume/default/@lumino/coreutils/@lumino/coreutils\");\n/* harmony import */ var _lumino_coreutils__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(_lumino_coreutils__WEBPACK_IMPORTED_MODULE_2__);\n/* harmony import */ var _lumino_signaling__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! @lumino/signaling */ \"webpack/sharing/consume/default/@lumino/signaling/@lumino/signaling\");\n/* harmony import */ var _lumino_signaling__WEBPACK_IMPORTED_MODULE_3___default = /*#__PURE__*/__webpack_require__.n(_lumino_signaling__WEBPACK_IMPORTED_MODULE_3__);\n/* harmony import */ var _lumino_widgets__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! @lumino/widgets */ \"webpack/sharing/consume/default/@lumino/widgets/@lumino/widgets\");\n/* harmony import */ var _lumino_widgets__WEBPACK_IMPORTED_MODULE_4___default = /*#__PURE__*/__webpack_require__.n(_lumino_widgets__WEBPACK_IMPORTED_MODULE_4__);\n/* harmony import */ var _panelhandler__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ./panelhandler */ \"../node_modules/@jupyter-notebook/application/lib/panelhandler.js\");\n// Copyright (c) Jupyter Development Team.\n// Distributed under the terms of the Modified BSD License.\n\n\n\n\n\n\n/**\n * The Jupyter Notebook application shell token.\n */\nconst INotebookShell = new _lumino_coreutils__WEBPACK_IMPORTED_MODULE_2__.Token('@jupyter-notebook/application:INotebookShell');\n/**\n * The default rank for ranked panels.\n */\nconst DEFAULT_RANK = 900;\n/**\n * The application shell.\n */\nclass NotebookShell extends _lumino_widgets__WEBPACK_IMPORTED_MODULE_4__.Widget {\n    constructor() {\n        super();\n        this._translator = _jupyterlab_translation__WEBPACK_IMPORTED_MODULE_0__.nullTranslator;\n        this._currentChanged = new _lumino_signaling__WEBPACK_IMPORTED_MODULE_3__.Signal(this);\n        this._mainWidgetLoaded = new _lumino_coreutils__WEBPACK_IMPORTED_MODULE_2__.PromiseDelegate();\n        this.id = 'main';\n        this._userLayout = {};\n        this._topHandler = new _panelhandler__WEBPACK_IMPORTED_MODULE_5__.PanelHandler();\n        this._menuHandler = new _panelhandler__WEBPACK_IMPORTED_MODULE_5__.PanelHandler();\n        this._leftHandler = new _panelhandler__WEBPACK_IMPORTED_MODULE_5__.SidePanelHandler('left');\n        this._rightHandler = new _panelhandler__WEBPACK_IMPORTED_MODULE_5__.SidePanelHandler('right');\n        this._main = new _lumino_widgets__WEBPACK_IMPORTED_MODULE_4__.Panel();\n        const topWrapper = (this._topWrapper = new _lumino_widgets__WEBPACK_IMPORTED_MODULE_4__.Panel());\n        const menuWrapper = (this._menuWrapper = new _lumino_widgets__WEBPACK_IMPORTED_MODULE_4__.Panel());\n        this._topHandler.panel.id = 'top-panel';\n        this._topHandler.panel.node.setAttribute('role', 'banner');\n        this._menuHandler.panel.id = 'menu-panel';\n        this._menuHandler.panel.node.setAttribute('role', 'navigation');\n        this._main.id = 'main-panel';\n        this._main.node.setAttribute('role', 'main');\n        this._spacer_top = new _lumino_widgets__WEBPACK_IMPORTED_MODULE_4__.Widget();\n        this._spacer_top.id = 'spacer-widget-top';\n        this._spacer_bottom = new _lumino_widgets__WEBPACK_IMPORTED_MODULE_4__.Widget();\n        this._spacer_bottom.id = 'spacer-widget-bottom';\n        // create wrappers around the top and menu areas\n        topWrapper.id = 'top-panel-wrapper';\n        topWrapper.addWidget(this._topHandler.panel);\n        menuWrapper.id = 'menu-panel-wrapper';\n        menuWrapper.addWidget(this._menuHandler.panel);\n        const rootLayout = new _lumino_widgets__WEBPACK_IMPORTED_MODULE_4__.BoxLayout();\n        const leftHandler = this._leftHandler;\n        const rightHandler = this._rightHandler;\n        leftHandler.panel.id = 'jp-left-stack';\n        leftHandler.panel.node.setAttribute('role', 'complementary');\n        rightHandler.panel.id = 'jp-right-stack';\n        rightHandler.panel.node.setAttribute('role', 'complementary');\n        // Hide the side panels by default.\n        leftHandler.hide();\n        rightHandler.hide();\n        const middleLayout = new _lumino_widgets__WEBPACK_IMPORTED_MODULE_4__.BoxLayout({\n            spacing: 0,\n            direction: 'top-to-bottom',\n        });\n        _lumino_widgets__WEBPACK_IMPORTED_MODULE_4__.BoxLayout.setStretch(this._topWrapper, 0);\n        _lumino_widgets__WEBPACK_IMPORTED_MODULE_4__.BoxLayout.setStretch(this._menuWrapper, 0);\n        _lumino_widgets__WEBPACK_IMPORTED_MODULE_4__.BoxLayout.setStretch(this._main, 1);\n        const middlePanel = new _lumino_widgets__WEBPACK_IMPORTED_MODULE_4__.Panel({ layout: middleLayout });\n        middlePanel.addWidget(this._topWrapper);\n        middlePanel.addWidget(this._menuWrapper);\n        middlePanel.addWidget(this._spacer_top);\n        middlePanel.addWidget(this._main);\n        middlePanel.addWidget(this._spacer_bottom);\n        middlePanel.layout = middleLayout;\n        // TODO: Consider storing this as an attribute this._hsplitPanel if saving/restoring layout needed\n        const hsplitPanel = new _lumino_widgets__WEBPACK_IMPORTED_MODULE_4__.SplitPanel();\n        hsplitPanel.id = 'main-split-panel';\n        hsplitPanel.spacing = 1;\n        _lumino_widgets__WEBPACK_IMPORTED_MODULE_4__.BoxLayout.setStretch(hsplitPanel, 1);\n        _lumino_widgets__WEBPACK_IMPORTED_MODULE_4__.SplitPanel.setStretch(leftHandler.panel, 0);\n        _lumino_widgets__WEBPACK_IMPORTED_MODULE_4__.SplitPanel.setStretch(rightHandler.panel, 0);\n        _lumino_widgets__WEBPACK_IMPORTED_MODULE_4__.SplitPanel.setStretch(middlePanel, 1);\n        hsplitPanel.addWidget(leftHandler.panel);\n        hsplitPanel.addWidget(middlePanel);\n        hsplitPanel.addWidget(rightHandler.panel);\n        // Use relative sizing to set the width of the side panels.\n        // This will still respect the min-size of children widget in the stacked\n        // panel.\n        hsplitPanel.setRelativeSizes([1, 2.5, 1]);\n        rootLayout.spacing = 0;\n        rootLayout.addWidget(hsplitPanel);\n        this.layout = rootLayout;\n        // Added Skip to Main Link\n        const skipLinkWidgetHandler = (this._skipLinkWidgetHandler =\n            new Private.SkipLinkWidgetHandler(this));\n        this.add(skipLinkWidgetHandler.skipLinkWidget, 'top', { rank: 0 });\n        this._skipLinkWidgetHandler.show();\n    }\n    /**\n     * A signal emitted when the current widget changes.\n     */\n    get currentChanged() {\n        return this._currentChanged;\n    }\n    /**\n     * The current widget in the shell's main area.\n     */\n    get currentWidget() {\n        var _a;\n        return (_a = this._main.widgets[0]) !== null && _a !== void 0 ? _a : null;\n    }\n    /**\n     * Get the top area wrapper panel\n     */\n    get top() {\n        return this._topWrapper;\n    }\n    /**\n     * Get the menu area wrapper panel\n     */\n    get menu() {\n        return this._menuWrapper;\n    }\n    /**\n     * Get the left area handler\n     */\n    get leftHandler() {\n        return this._leftHandler;\n    }\n    /**\n     * Get the right area handler\n     */\n    get rightHandler() {\n        return this._rightHandler;\n    }\n    /**\n     * Is the left sidebar visible?\n     */\n    get leftCollapsed() {\n        return !(this._leftHandler.isVisible && this._leftHandler.panel.isVisible);\n    }\n    /**\n     * Is the right sidebar visible?\n     */\n    get rightCollapsed() {\n        return !(this._rightHandler.isVisible && this._rightHandler.panel.isVisible);\n    }\n    /**\n     * Promise that resolves when the main widget is loaded\n     */\n    get restored() {\n        return this._mainWidgetLoaded.promise;\n    }\n    /**\n     * Getter and setter for the translator.\n     */\n    get translator() {\n        var _a;\n        return (_a = this._translator) !== null && _a !== void 0 ? _a : _jupyterlab_translation__WEBPACK_IMPORTED_MODULE_0__.nullTranslator;\n    }\n    set translator(value) {\n        if (value !== this._translator) {\n            this._translator = value;\n            const trans = value.load('notebook');\n            this._leftHandler.closeButton.title = trans.__('Collapse %1 side panel', this._leftHandler.area);\n            this._rightHandler.closeButton.title = trans.__('Collapse %1 side panel', this._rightHandler.area);\n        }\n    }\n    /**\n     * User custom shell layout.\n     */\n    get userLayout() {\n        return _lumino_coreutils__WEBPACK_IMPORTED_MODULE_2__.JSONExt.deepCopy(this._userLayout);\n    }\n    /**\n     * Activate a widget in its area.\n     */\n    activateById(id) {\n        // Search all areas that can have widgets for this widget, starting with main.\n        for (const area of ['main', 'top', 'left', 'right', 'menu']) {\n            const widget = (0,_lumino_algorithm__WEBPACK_IMPORTED_MODULE_1__.find)(this.widgets(area), (w) => w.id === id);\n            if (widget) {\n                if (area === 'left') {\n                    this.expandLeft(id);\n                }\n                else if (area === 'right') {\n                    this.expandRight(id);\n                }\n                else {\n                    widget.activate();\n                }\n            }\n        }\n    }\n    /**\n     * Add a widget to the application shell.\n     *\n     * @param widget - The widget being added.\n     *\n     * @param area - Optional region in the shell into which the widget should\n     * be added.\n     *\n     * @param options - Optional open options.\n     *\n     */\n    add(widget, area, options) {\n        var _a, _b;\n        let userPosition;\n        if ((options === null || options === void 0 ? void 0 : options.type) && this._userLayout[options.type]) {\n            userPosition = this._userLayout[options.type];\n        }\n        else {\n            userPosition = this._userLayout[widget.id];\n        }\n        area = (_a = userPosition === null || userPosition === void 0 ? void 0 : userPosition.area) !== null && _a !== void 0 ? _a : area;\n        options =\n            options || (userPosition === null || userPosition === void 0 ? void 0 : userPosition.options)\n                ? {\n                    ...options,\n                    ...userPosition === null || userPosition === void 0 ? void 0 : userPosition.options,\n                }\n                : undefined;\n        const rank = (_b = options === null || options === void 0 ? void 0 : options.rank) !== null && _b !== void 0 ? _b : DEFAULT_RANK;\n        switch (area) {\n            case 'top':\n                return this._topHandler.addWidget(widget, rank);\n            case 'menu':\n                return this._menuHandler.addWidget(widget, rank);\n            case 'main':\n            case undefined:\n                if (this._main.widgets.length > 0) {\n                    // do not add the widget if there is already one\n                    return;\n                }\n                this._main.addWidget(widget);\n                this._main.update();\n                this._currentChanged.emit(void 0);\n                this._mainWidgetLoaded.resolve();\n                break;\n            case 'left':\n                return this._leftHandler.addWidget(widget, rank);\n            case 'right':\n                return this._rightHandler.addWidget(widget, rank);\n            default:\n                console.warn(`Cannot add widget to area: ${area}`);\n        }\n    }\n    /**\n     * Collapse the top area and the spacer to make the view more compact.\n     */\n    collapseTop() {\n        this._topWrapper.setHidden(true);\n        this._spacer_top.setHidden(true);\n    }\n    /**\n     * Expand the top area to show the header and the spacer.\n     */\n    expandTop() {\n        this._topWrapper.setHidden(false);\n        this._spacer_top.setHidden(false);\n    }\n    /**\n     * Return the list of widgets for the given area.\n     *\n     * @param area The area\n     */\n    *widgets(area) {\n        switch (area !== null && area !== void 0 ? area : 'main') {\n            case 'top':\n                yield* this._topHandler.panel.widgets;\n                return;\n            case 'menu':\n                yield* this._menuHandler.panel.widgets;\n                return;\n            case 'main':\n                yield* this._main.widgets;\n                return;\n            case 'left':\n                yield* this._leftHandler.widgets;\n                return;\n            case 'right':\n                yield* this._rightHandler.widgets;\n                return;\n            default:\n                console.error(`This shell has no area called \"${area}\"`);\n                return;\n        }\n    }\n    /**\n     * Expand the left panel to show the sidebar with its widget.\n     */\n    expandLeft(id) {\n        this._leftHandler.panel.show();\n        this._leftHandler.expand(id); // Show the current widget, if any\n    }\n    /**\n     * Collapse the left panel\n     */\n    collapseLeft() {\n        this._leftHandler.collapse();\n        this._leftHandler.panel.hide();\n    }\n    /**\n     * Expand the right panel to show the sidebar with its widget.\n     */\n    expandRight(id) {\n        this._rightHandler.panel.show();\n        this._rightHandler.expand(id); // Show the current widget, if any\n    }\n    /**\n     * Collapse the right panel\n     */\n    collapseRight() {\n        this._rightHandler.collapse();\n        this._rightHandler.panel.hide();\n    }\n    /**\n     * Restore the layout state and configuration for the application shell.\n     */\n    async restoreLayout(configuration) {\n        this._userLayout = configuration;\n    }\n}\nvar Private;\n(function (Private) {\n    class SkipLinkWidgetHandler {\n        /**\n         * Construct a new skipLink widget handler.\n         */\n        constructor(shell) {\n            this._isDisposed = false;\n            const skipLinkWidget = (this._skipLinkWidget = new _lumino_widgets__WEBPACK_IMPORTED_MODULE_4__.Widget());\n            const skipToMain = document.createElement('a');\n            skipToMain.href = '#first-cell';\n            skipToMain.tabIndex = 1;\n            skipToMain.text = 'Skip to Main';\n            skipToMain.className = 'skip-link';\n            skipToMain.addEventListener('click', this);\n            skipLinkWidget.addClass('jp-skiplink');\n            skipLinkWidget.id = 'jp-skiplink';\n            skipLinkWidget.node.appendChild(skipToMain);\n        }\n        handleEvent(event) {\n            switch (event.type) {\n                case 'click':\n                    this._focusMain();\n                    break;\n            }\n        }\n        _focusMain() {\n            const input = document.querySelector('#main-panel .jp-InputArea-editor');\n            input.tabIndex = 1;\n            input.focus();\n        }\n        /**\n         * Get the input element managed by the handler.\n         */\n        get skipLinkWidget() {\n            return this._skipLinkWidget;\n        }\n        /**\n         * Dispose of the handler and the resources it holds.\n         */\n        dispose() {\n            if (this.isDisposed) {\n                return;\n            }\n            this._isDisposed = true;\n            this._skipLinkWidget.node.removeEventListener('click', this);\n            this._skipLinkWidget.dispose();\n        }\n        /**\n         * Hide the skipLink widget.\n         */\n        hide() {\n            this._skipLinkWidget.hide();\n        }\n        /**\n         * Show the skipLink widget.\n         */\n        show() {\n            this._skipLinkWidget.show();\n        }\n        /**\n         * Test whether the handler has been disposed.\n         */\n        get isDisposed() {\n            return this._isDisposed;\n        }\n    }\n    Private.SkipLinkWidgetHandler = SkipLinkWidgetHandler;\n})(Private || (Private = {}));\n\n\n//# sourceURL=webpack://_JUPYTERLAB.CORE_OUTPUT/../node_modules/@jupyter-notebook/application/lib/shell.js?");

/***/ })

}]);