/*
 * 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_typestyle_lib_index_js"],{

/***/ "../node_modules/free-style/dist.es2015/index.js":
/*!*******************************************************!*\
  !*** ../node_modules/free-style/dist.es2015/index.js ***!
  \*******************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */   \"Cache\": () => (/* binding */ Cache),\n/* harmony export */   \"Selector\": () => (/* binding */ Selector),\n/* harmony export */   \"Style\": () => (/* binding */ Style),\n/* harmony export */   \"Rule\": () => (/* binding */ Rule),\n/* harmony export */   \"FreeStyle\": () => (/* binding */ FreeStyle),\n/* harmony export */   \"create\": () => (/* binding */ create)\n/* harmony export */ });\n/**\n * The unique id is used for unique hashes.\n */\nlet uniqueId = 0;\n/**\n * Quick dictionary lookup for unit-less numbers.\n */\nconst CSS_NUMBER = Object.create(null);\n/**\n * CSS properties that are valid unit-less numbers.\n *\n * Ref: https://github.com/facebook/react/blob/master/packages/react-dom/src/shared/CSSProperty.js\n */\nconst CSS_NUMBER_KEYS = [\n    \"animation-iteration-count\",\n    \"border-image-outset\",\n    \"border-image-slice\",\n    \"border-image-width\",\n    \"box-flex\",\n    \"box-flex-group\",\n    \"box-ordinal-group\",\n    \"column-count\",\n    \"columns\",\n    \"counter-increment\",\n    \"counter-reset\",\n    \"flex\",\n    \"flex-grow\",\n    \"flex-positive\",\n    \"flex-shrink\",\n    \"flex-negative\",\n    \"flex-order\",\n    \"font-weight\",\n    \"grid-area\",\n    \"grid-column\",\n    \"grid-column-end\",\n    \"grid-column-span\",\n    \"grid-column-start\",\n    \"grid-row\",\n    \"grid-row-end\",\n    \"grid-row-span\",\n    \"grid-row-start\",\n    \"line-clamp\",\n    \"line-height\",\n    \"opacity\",\n    \"order\",\n    \"orphans\",\n    \"tab-size\",\n    \"widows\",\n    \"z-index\",\n    \"zoom\",\n    // SVG properties.\n    \"fill-opacity\",\n    \"flood-opacity\",\n    \"stop-opacity\",\n    \"stroke-dasharray\",\n    \"stroke-dashoffset\",\n    \"stroke-miterlimit\",\n    \"stroke-opacity\",\n    \"stroke-width\"\n];\n// Add vendor prefixes to all unit-less properties.\nfor (const property of CSS_NUMBER_KEYS) {\n    for (const prefix of [\"-webkit-\", \"-ms-\", \"-moz-\", \"-o-\", \"\"]) {\n        CSS_NUMBER[prefix + property] = true;\n    }\n}\n/**\n * Escape a CSS class name.\n */\nfunction escape(str) {\n    return str.replace(/[ !#$%&()*+,./;<=>?@[\\]^`{|}~\"'\\\\]/g, \"\\\\$&\");\n}\n/**\n * Transform a JavaScript property into a CSS property.\n */\nfunction hyphenate(propertyName) {\n    return propertyName\n        .replace(/[A-Z]/g, (m) => `-${m.toLowerCase()}`)\n        .replace(/^ms-/, \"-ms-\"); // Internet Explorer vendor prefix.\n}\n/**\n * Generate a hash value from a string.\n */\nfunction stringHash(str) {\n    let value = 5381;\n    let len = str.length;\n    while (len--)\n        value = (value * 33) ^ str.charCodeAt(len);\n    return (value >>> 0).toString(36);\n}\n/**\n * Transform a style string to a CSS string.\n */\nfunction styleToString(key, value) {\n    if (value && typeof value === \"number\" && !CSS_NUMBER[key]) {\n        return `${key}:${value}px`;\n    }\n    return `${key}:${value}`;\n}\n/**\n * Sort an array of tuples by first value.\n */\nfunction sortTuples(value) {\n    return value.sort((a, b) => (a[0] > b[0] ? 1 : -1));\n}\n/**\n * Categorize user styles.\n */\nfunction parseStyles(styles, hasNestedStyles) {\n    const properties = [];\n    const nestedStyles = [];\n    // Sort keys before adding to styles.\n    for (const key of Object.keys(styles)) {\n        const name = key.trim();\n        const value = styles[key];\n        if (name.charCodeAt(0) !== 36 /* $ */ && value != null) {\n            if (typeof value === \"object\" && !Array.isArray(value)) {\n                nestedStyles.push([name, value]);\n            }\n            else {\n                properties.push([hyphenate(name), value]);\n            }\n        }\n    }\n    return {\n        style: stringifyProperties(sortTuples(properties)),\n        nested: hasNestedStyles ? nestedStyles : sortTuples(nestedStyles),\n        isUnique: !!styles.$unique\n    };\n}\n/**\n * Stringify an array of property tuples.\n */\nfunction stringifyProperties(properties) {\n    return properties\n        .map(([name, value]) => {\n        if (!Array.isArray(value))\n            return styleToString(name, value);\n        return value.map(x => styleToString(name, x)).join(\";\");\n    })\n        .join(\";\");\n}\n/**\n * Interpolate CSS selectors.\n */\nfunction interpolate(selector, parent) {\n    if (selector.indexOf(\"&\") === -1)\n        return `${parent} ${selector}`;\n    return selector.replace(/&/g, parent);\n}\n/**\n * Recursive loop building styles with deferred selectors.\n */\nfunction stylize(selector, styles, rulesList, stylesList, parent) {\n    const { style, nested, isUnique } = parseStyles(styles, selector !== \"\");\n    let pid = style;\n    if (selector.charCodeAt(0) === 64 /* @ */) {\n        const child = {\n            selector,\n            styles: [],\n            rules: [],\n            style: parent ? \"\" : style\n        };\n        rulesList.push(child);\n        // Nested styles support (e.g. `.foo > @media > .bar`).\n        if (style && parent) {\n            child.styles.push({ selector: parent, style, isUnique });\n        }\n        for (const [name, value] of nested) {\n            pid += name + stylize(name, value, child.rules, child.styles, parent);\n        }\n    }\n    else {\n        const key = parent ? interpolate(selector, parent) : selector;\n        if (style)\n            stylesList.push({ selector: key, style, isUnique });\n        for (const [name, value] of nested) {\n            pid += name + stylize(name, value, rulesList, stylesList, key);\n        }\n    }\n    return pid;\n}\n/**\n * Transform `stylize` tree into style objects.\n */\nfunction composeStylize(cache, pid, rulesList, stylesList, className, isStyle) {\n    for (const { selector, style, isUnique } of stylesList) {\n        const key = isStyle ? interpolate(selector, className) : selector;\n        const id = isUnique\n            ? `u\\0${(++uniqueId).toString(36)}`\n            : `s\\0${pid}\\0${style}`;\n        const item = new Style(style, id);\n        item.add(new Selector(key, `k\\0${pid}\\0${key}`));\n        cache.add(item);\n    }\n    for (const { selector, style, rules, styles } of rulesList) {\n        const item = new Rule(selector, style, `r\\0${pid}\\0${selector}\\0${style}`);\n        composeStylize(item, pid, rules, styles, className, isStyle);\n        cache.add(item);\n    }\n}\n/**\n * Cache to list to styles.\n */\nfunction join(arr) {\n    let res = \"\";\n    for (let i = 0; i < arr.length; i++)\n        res += arr[i];\n    return res;\n}\n/**\n * Noop changes.\n */\nconst noopChanges = {\n    add: () => undefined,\n    change: () => undefined,\n    remove: () => undefined\n};\n/**\n * Implement a cache/event emitter.\n */\nclass Cache {\n    constructor(changes = noopChanges) {\n        this.changes = changes;\n        this.sheet = [];\n        this.changeId = 0;\n        this._keys = [];\n        this._children = Object.create(null);\n        this._counters = Object.create(null);\n    }\n    add(style) {\n        const count = this._counters[style.id] || 0;\n        const item = this._children[style.id] || style.clone();\n        this._counters[style.id] = count + 1;\n        if (count === 0) {\n            this._children[item.id] = item;\n            this._keys.push(item.id);\n            this.sheet.push(item.getStyles());\n            this.changeId++;\n            this.changes.add(item, this._keys.length - 1);\n        }\n        else if (item instanceof Cache && style instanceof Cache) {\n            const curIndex = this._keys.indexOf(style.id);\n            const prevItemChangeId = item.changeId;\n            item.merge(style);\n            if (item.changeId !== prevItemChangeId) {\n                this.sheet.splice(curIndex, 1, item.getStyles());\n                this.changeId++;\n                this.changes.change(item, curIndex, curIndex);\n            }\n        }\n    }\n    remove(style) {\n        const count = this._counters[style.id];\n        if (count) {\n            this._counters[style.id] = count - 1;\n            const item = this._children[style.id];\n            const index = this._keys.indexOf(item.id);\n            if (count === 1) {\n                delete this._counters[style.id];\n                delete this._children[style.id];\n                this._keys.splice(index, 1);\n                this.sheet.splice(index, 1);\n                this.changeId++;\n                this.changes.remove(item, index);\n            }\n            else if (item instanceof Cache && style instanceof Cache) {\n                const prevChangeId = item.changeId;\n                item.unmerge(style);\n                if (item.changeId !== prevChangeId) {\n                    this.sheet.splice(index, 1, item.getStyles());\n                    this.changeId++;\n                    this.changes.change(item, index, index);\n                }\n            }\n        }\n    }\n    values() {\n        return this._keys.map(key => this._children[key]);\n    }\n    merge(cache) {\n        for (const item of cache.values())\n            this.add(item);\n        return this;\n    }\n    unmerge(cache) {\n        for (const item of cache.values())\n            this.remove(item);\n        return this;\n    }\n    clone() {\n        return new Cache().merge(this);\n    }\n}\n/**\n * Selector is a dumb class made to represent nested CSS selectors.\n */\nclass Selector {\n    constructor(selector, id) {\n        this.selector = selector;\n        this.id = id;\n    }\n    getStyles() {\n        return this.selector;\n    }\n    clone() {\n        return this;\n    }\n}\n/**\n * The style container registers a style string with selectors.\n */\nclass Style extends Cache {\n    constructor(style, id) {\n        super();\n        this.style = style;\n        this.id = id;\n    }\n    getStyles() {\n        return `${this.sheet.join(\",\")}{${this.style}}`;\n    }\n    clone() {\n        return new Style(this.style, this.id).merge(this);\n    }\n}\n/**\n * Implement rule logic for style output.\n */\nclass Rule extends Cache {\n    constructor(rule, style, id) {\n        super();\n        this.rule = rule;\n        this.style = style;\n        this.id = id;\n    }\n    getStyles() {\n        return `${this.rule}{${this.style}${join(this.sheet)}}`;\n    }\n    clone() {\n        return new Rule(this.rule, this.style, this.id).merge(this);\n    }\n}\nfunction key(pid, styles) {\n    const key = `f${stringHash(pid)}`;\n    if ( false || !styles.$displayName)\n        return key;\n    return `${styles.$displayName}_${key}`;\n}\n/**\n * The FreeStyle class implements the API for everything else.\n */\nclass FreeStyle extends Cache {\n    constructor(id, changes) {\n        super(changes);\n        this.id = id;\n    }\n    registerStyle(styles) {\n        const rulesList = [];\n        const stylesList = [];\n        const pid = stylize(\"&\", styles, rulesList, stylesList);\n        const id = key(pid, styles);\n        const selector = `.${ false ? 0 : escape(id)}`;\n        composeStylize(this, pid, rulesList, stylesList, selector, true);\n        return id;\n    }\n    registerKeyframes(keyframes) {\n        return this.registerHashRule(\"@keyframes\", keyframes);\n    }\n    registerHashRule(prefix, styles) {\n        const rulesList = [];\n        const stylesList = [];\n        const pid = stylize(\"\", styles, rulesList, stylesList);\n        const id = key(pid, styles);\n        const selector = `${prefix} ${ false ? 0 : escape(id)}`;\n        const rule = new Rule(selector, \"\", `h\\0${pid}\\0${prefix}`);\n        composeStylize(rule, pid, rulesList, stylesList, \"\", false);\n        this.add(rule);\n        return id;\n    }\n    registerRule(rule, styles) {\n        const rulesList = [];\n        const stylesList = [];\n        const pid = stylize(rule, styles, rulesList, stylesList);\n        composeStylize(this, pid, rulesList, stylesList, \"\", false);\n    }\n    registerCss(styles) {\n        return this.registerRule(\"\", styles);\n    }\n    getStyles() {\n        return join(this.sheet);\n    }\n    clone() {\n        return new FreeStyle(this.id, this.changes).merge(this);\n    }\n}\n/**\n * Exports a simple function to create a new instance.\n */\nfunction create(changes) {\n    return new FreeStyle(`f${(++uniqueId).toString(36)}`, changes);\n}\n//# sourceMappingURL=index.js.map\n\n//# sourceURL=webpack://_JUPYTERLAB.CORE_OUTPUT/../node_modules/free-style/dist.es2015/index.js?");

/***/ }),

/***/ "../node_modules/typestyle/lib/index.js":
/*!**********************************************!*\
  !*** ../node_modules/typestyle/lib/index.js ***!
  \**********************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";
eval("\nObject.defineProperty(exports, \"__esModule\", ({ value: true }));\nvar typestyle_1 = __webpack_require__(/*! ./internal/typestyle */ \"../node_modules/typestyle/lib/internal/typestyle.js\");\nexports.TypeStyle = typestyle_1.TypeStyle;\n/**\n * All the CSS types in the 'types' namespace\n */\nvar types = __webpack_require__(/*! ./types */ \"../node_modules/typestyle/lib/types.js\");\nexports.types = types;\n/**\n * Export certain utilities\n */\nvar utilities_1 = __webpack_require__(/*! ./internal/utilities */ \"../node_modules/typestyle/lib/internal/utilities.js\");\nexports.extend = utilities_1.extend;\nexports.classes = utilities_1.classes;\nexports.media = utilities_1.media;\n/** Zero configuration, default instance of TypeStyle */\nvar ts = new typestyle_1.TypeStyle({ autoGenerateTag: true });\n/** Sets the target tag where we write the css on style updates */\nexports.setStylesTarget = ts.setStylesTarget;\n/**\n * Insert `raw` CSS as a string. This is useful for e.g.\n * - third party CSS that you are customizing with template strings\n * - generating raw CSS in JavaScript\n * - reset libraries like normalize.css that you can use without loaders\n */\nexports.cssRaw = ts.cssRaw;\n/**\n * Takes CSSProperties and registers it to a global selector (body, html, etc.)\n */\nexports.cssRule = ts.cssRule;\n/**\n * Renders styles to the singleton tag imediately\n * NOTE: You should only call it on initial render to prevent any non CSS flash.\n * After that it is kept sync using `requestAnimationFrame` and we haven't noticed any bad flashes.\n **/\nexports.forceRenderStyles = ts.forceRenderStyles;\n/**\n * Utility function to register an @font-face\n */\nexports.fontFace = ts.fontFace;\n/**\n * Allows use to use the stylesheet in a node.js environment\n */\nexports.getStyles = ts.getStyles;\n/**\n * Takes keyframes and returns a generated animationName\n */\nexports.keyframes = ts.keyframes;\n/**\n * Helps with testing. Reinitializes FreeStyle + raw\n */\nexports.reinit = ts.reinit;\n/**\n * Takes CSSProperties and return a generated className you can use on your component\n */\nexports.style = ts.style;\n/**\n * Takes an object where property names are ideal class names and property values are CSSProperties, and\n * returns an object where property names are the same ideal class names and the property values are\n * the actual generated class names using the ideal class name as the $debugName\n */\nexports.stylesheet = ts.stylesheet;\n/**\n * Creates a new instance of TypeStyle separate from the default instance.\n *\n * - Use this for creating a different typestyle instance for a shadow dom component.\n * - Use this if you don't want an auto tag generated and you just want to collect the CSS.\n *\n * NOTE: styles aren't shared between different instances.\n */\nfunction createTypeStyle(target) {\n    var instance = new typestyle_1.TypeStyle({ autoGenerateTag: false });\n    if (target) {\n        instance.setStylesTarget(target);\n    }\n    return instance;\n}\nexports.createTypeStyle = createTypeStyle;\n\n\n//# sourceURL=webpack://_JUPYTERLAB.CORE_OUTPUT/../node_modules/typestyle/lib/index.js?");

/***/ }),

/***/ "../node_modules/typestyle/lib/internal/formatting.js":
/*!************************************************************!*\
  !*** ../node_modules/typestyle/lib/internal/formatting.js ***!
  \************************************************************/
/***/ ((__unused_webpack_module, exports) => {

"use strict";
eval("\nObject.defineProperty(exports, \"__esModule\", ({ value: true }));\n/**\n * We need to do the following to *our* objects before passing to freestyle:\n * - For any `$nest` directive move up to FreeStyle style nesting\n * - For any `$unique` directive map to FreeStyle Unique\n * - For any `$debugName` directive return the debug name\n */\nfunction convertToStyles(object) {\n    /** The final result we will return */\n    var styles = {};\n    for (var key in object) {\n        /** Grab the value upfront */\n        var val = object[key];\n        /** TypeStyle configuration options */\n        if (key === '$nest') {\n            var nested = val;\n            for (var selector in nested) {\n                var subproperties = nested[selector];\n                styles[selector] = convertToStyles(subproperties);\n            }\n        }\n        else if (key === '$debugName') {\n            styles.$displayName = val;\n        }\n        else {\n            styles[key] = val;\n        }\n    }\n    return styles;\n}\nexports.convertToStyles = convertToStyles;\n// todo: better name here\nfunction convertToKeyframes(frames) {\n    var result = {};\n    for (var offset in frames) {\n        if (offset !== '$debugName') {\n            result[offset] = frames[offset];\n        }\n    }\n    if (frames.$debugName) {\n        result.$displayName = frames.$debugName;\n    }\n    return result;\n}\nexports.convertToKeyframes = convertToKeyframes;\n\n\n//# sourceURL=webpack://_JUPYTERLAB.CORE_OUTPUT/../node_modules/typestyle/lib/internal/formatting.js?");

/***/ }),

/***/ "../node_modules/typestyle/lib/internal/typestyle.js":
/*!***********************************************************!*\
  !*** ../node_modules/typestyle/lib/internal/typestyle.js ***!
  \***********************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";
eval("\nObject.defineProperty(exports, \"__esModule\", ({ value: true }));\nvar FreeStyle = __webpack_require__(/*! free-style */ \"../node_modules/free-style/dist.es2015/index.js\");\nvar formatting_1 = __webpack_require__(/*! ./formatting */ \"../node_modules/typestyle/lib/internal/formatting.js\");\nvar utilities_1 = __webpack_require__(/*! ./utilities */ \"../node_modules/typestyle/lib/internal/utilities.js\");\n/**\n * Creates an instance of free style with our options\n */\nvar createFreeStyle = function () { return FreeStyle.create(); };\n/**\n * Maintains a single stylesheet and keeps it in sync with requested styles\n */\nvar TypeStyle = /** @class */ (function () {\n    function TypeStyle(_a) {\n        var _this = this;\n        var autoGenerateTag = _a.autoGenerateTag;\n        /**\n         * Insert `raw` CSS as a string. This is useful for e.g.\n         * - third party CSS that you are customizing with template strings\n         * - generating raw CSS in JavaScript\n         * - reset libraries like normalize.css that you can use without loaders\n         */\n        this.cssRaw = function (mustBeValidCSS) {\n            if (!mustBeValidCSS) {\n                return;\n            }\n            _this._raw += mustBeValidCSS || '';\n            _this._pendingRawChange = true;\n            _this._styleUpdated();\n        };\n        /**\n         * Takes CSSProperties and registers it to a global selector (body, html, etc.)\n         */\n        this.cssRule = function (selector) {\n            var objects = [];\n            for (var _i = 1; _i < arguments.length; _i++) {\n                objects[_i - 1] = arguments[_i];\n            }\n            var styles = formatting_1.convertToStyles(utilities_1.extend.apply(void 0, objects));\n            _this._freeStyle.registerRule(selector, styles);\n            _this._styleUpdated();\n            return;\n        };\n        /**\n         * Renders styles to the singleton tag imediately\n         * NOTE: You should only call it on initial render to prevent any non CSS flash.\n         * After that it is kept sync using `requestAnimationFrame` and we haven't noticed any bad flashes.\n         **/\n        this.forceRenderStyles = function () {\n            var target = _this._getTag();\n            if (!target) {\n                return;\n            }\n            target.textContent = _this.getStyles();\n        };\n        /**\n         * Utility function to register an @font-face\n         */\n        this.fontFace = function () {\n            var fontFace = [];\n            for (var _i = 0; _i < arguments.length; _i++) {\n                fontFace[_i] = arguments[_i];\n            }\n            var freeStyle = _this._freeStyle;\n            for (var _a = 0, _b = fontFace; _a < _b.length; _a++) {\n                var face = _b[_a];\n                freeStyle.registerRule('@font-face', face);\n            }\n            _this._styleUpdated();\n            return;\n        };\n        /**\n         * Allows use to use the stylesheet in a node.js environment\n         */\n        this.getStyles = function () {\n            return (_this._raw || '') + _this._freeStyle.getStyles();\n        };\n        /**\n         * Takes keyframes and returns a generated animationName\n         */\n        this.keyframes = function (frames) {\n            var keyframes = formatting_1.convertToKeyframes(frames);\n            // TODO: replace $debugName with display name\n            var animationName = _this._freeStyle.registerKeyframes(keyframes);\n            _this._styleUpdated();\n            return animationName;\n        };\n        /**\n         * Helps with testing. Reinitializes FreeStyle + raw\n         */\n        this.reinit = function () {\n            /** reinit freestyle */\n            var freeStyle = createFreeStyle();\n            _this._freeStyle = freeStyle;\n            _this._lastFreeStyleChangeId = freeStyle.changeId;\n            /** reinit raw */\n            _this._raw = '';\n            _this._pendingRawChange = false;\n            /** Clear any styles that were flushed */\n            var target = _this._getTag();\n            if (target) {\n                target.textContent = '';\n            }\n        };\n        /** Sets the target tag where we write the css on style updates */\n        this.setStylesTarget = function (tag) {\n            /** Clear any data in any previous tag */\n            if (_this._tag) {\n                _this._tag.textContent = '';\n            }\n            _this._tag = tag;\n            /** This special time buffer immediately */\n            _this.forceRenderStyles();\n        };\n        /**\n         * Takes an object where property names are ideal class names and property values are CSSProperties, and\n         * returns an object where property names are the same ideal class names and the property values are\n         * the actual generated class names using the ideal class name as the $debugName\n         */\n        this.stylesheet = function (classes) {\n            var classNames = Object.getOwnPropertyNames(classes);\n            var result = {};\n            for (var _i = 0, classNames_1 = classNames; _i < classNames_1.length; _i++) {\n                var className = classNames_1[_i];\n                var classDef = classes[className];\n                if (classDef) {\n                    classDef.$debugName = className;\n                    result[className] = _this.style(classDef);\n                }\n            }\n            return result;\n        };\n        var freeStyle = createFreeStyle();\n        this._autoGenerateTag = autoGenerateTag;\n        this._freeStyle = freeStyle;\n        this._lastFreeStyleChangeId = freeStyle.changeId;\n        this._pending = 0;\n        this._pendingRawChange = false;\n        this._raw = '';\n        this._tag = undefined;\n        // rebind prototype to TypeStyle.  It might be better to do a function() { return this.style.apply(this, arguments)}\n        this.style = this.style.bind(this);\n    }\n    /**\n     * Only calls cb all sync operations settle\n     */\n    TypeStyle.prototype._afterAllSync = function (cb) {\n        var _this = this;\n        this._pending++;\n        var pending = this._pending;\n        utilities_1.raf(function () {\n            if (pending !== _this._pending) {\n                return;\n            }\n            cb();\n        });\n    };\n    TypeStyle.prototype._getTag = function () {\n        if (this._tag) {\n            return this._tag;\n        }\n        if (this._autoGenerateTag) {\n            var tag = typeof window === 'undefined'\n                ? { textContent: '' }\n                : document.createElement('style');\n            if (typeof document !== 'undefined') {\n                document.head.appendChild(tag);\n            }\n            this._tag = tag;\n            return tag;\n        }\n        return undefined;\n    };\n    /** Checks if the style tag needs updating and if so queues up the change */\n    TypeStyle.prototype._styleUpdated = function () {\n        var _this = this;\n        var changeId = this._freeStyle.changeId;\n        var lastChangeId = this._lastFreeStyleChangeId;\n        if (!this._pendingRawChange && changeId === lastChangeId) {\n            return;\n        }\n        this._lastFreeStyleChangeId = changeId;\n        this._pendingRawChange = false;\n        this._afterAllSync(function () { return _this.forceRenderStyles(); });\n    };\n    TypeStyle.prototype.style = function () {\n        var className = this._freeStyle.registerStyle(formatting_1.convertToStyles(utilities_1.extend.apply(undefined, arguments)));\n        this._styleUpdated();\n        return className;\n    };\n    return TypeStyle;\n}());\nexports.TypeStyle = TypeStyle;\n\n\n//# sourceURL=webpack://_JUPYTERLAB.CORE_OUTPUT/../node_modules/typestyle/lib/internal/typestyle.js?");

/***/ }),

/***/ "../node_modules/typestyle/lib/internal/utilities.js":
/*!***********************************************************!*\
  !*** ../node_modules/typestyle/lib/internal/utilities.js ***!
  \***********************************************************/
/***/ ((__unused_webpack_module, exports) => {

"use strict";
eval("\nObject.defineProperty(exports, \"__esModule\", ({ value: true }));\n/** Raf for node + browser */\nexports.raf = typeof requestAnimationFrame === 'undefined'\n    /**\n     * Make sure setTimeout is always invoked with\n     * `this` set to `window` or `global` automatically\n     **/\n    ? function (cb) { return setTimeout(cb); }\n    /**\n     * Make sure window.requestAnimationFrame is always invoked with `this` window\n     * We might have raf without window in case of `raf/polyfill` (recommended by React)\n     **/\n    : typeof window === 'undefined'\n        ? requestAnimationFrame\n        : requestAnimationFrame.bind(window);\n/**\n * Utility to join classes conditionally\n */\nfunction classes() {\n    var classes = [];\n    for (var _i = 0; _i < arguments.length; _i++) {\n        classes[_i] = arguments[_i];\n    }\n    return classes\n        .map(function (c) { return c && typeof c === 'object' ? Object.keys(c).map(function (key) { return !!c[key] && key; }) : [c]; })\n        .reduce(function (flattened, c) { return flattened.concat(c); }, [])\n        .filter(function (c) { return !!c; })\n        .join(' ');\n}\nexports.classes = classes;\n/**\n * Merges various styles into a single style object.\n * Note: if two objects have the same property the last one wins\n */\nfunction extend() {\n    var objects = [];\n    for (var _i = 0; _i < arguments.length; _i++) {\n        objects[_i] = arguments[_i];\n    }\n    /** The final result we will return */\n    var result = {};\n    for (var _a = 0, objects_1 = objects; _a < objects_1.length; _a++) {\n        var object = objects_1[_a];\n        if (object == null || object === false) {\n            continue;\n        }\n        for (var key in object) {\n            /** Falsy values except a explicit 0 is ignored */\n            var val = object[key];\n            if (!val && val !== 0) {\n                continue;\n            }\n            /** if nested media or pseudo selector */\n            if (key === '$nest' && val) {\n                result[key] = result['$nest'] ? extend(result['$nest'], val) : val;\n            }\n            /** if freestyle sub key that needs merging. We come here due to our recursive calls */\n            else if ((key.indexOf('&') !== -1 || key.indexOf('@media') === 0)) {\n                result[key] = result[key] ? extend(result[key], val) : val;\n            }\n            else {\n                result[key] = val;\n            }\n        }\n    }\n    return result;\n}\nexports.extend = extend;\n/**\n * Utility to help customize styles with media queries. e.g.\n * ```\n * style(\n *  media({maxWidth:500}, {color:'red'})\n * )\n * ```\n */\nexports.media = function (mediaQuery) {\n    var _a;\n    var objects = [];\n    for (var _i = 1; _i < arguments.length; _i++) {\n        objects[_i - 1] = arguments[_i];\n    }\n    var mediaQuerySections = [];\n    if (mediaQuery.type)\n        mediaQuerySections.push(mediaQuery.type);\n    if (mediaQuery.orientation)\n        mediaQuerySections.push(\"(orientation: \" + mediaQuery.orientation + \")\");\n    if (mediaQuery.minWidth)\n        mediaQuerySections.push(\"(min-width: \" + mediaLength(mediaQuery.minWidth) + \")\");\n    if (mediaQuery.maxWidth)\n        mediaQuerySections.push(\"(max-width: \" + mediaLength(mediaQuery.maxWidth) + \")\");\n    if (mediaQuery.minHeight)\n        mediaQuerySections.push(\"(min-height: \" + mediaLength(mediaQuery.minHeight) + \")\");\n    if (mediaQuery.maxHeight)\n        mediaQuerySections.push(\"(max-height: \" + mediaLength(mediaQuery.maxHeight) + \")\");\n    var stringMediaQuery = \"@media \" + mediaQuerySections.join(' and ');\n    var object = {\n        $nest: (_a = {},\n            _a[stringMediaQuery] = extend.apply(void 0, objects),\n            _a)\n    };\n    return object;\n};\nvar mediaLength = function (value) {\n    return typeof value === 'string' ? value : value + \"px\";\n};\n\n\n//# sourceURL=webpack://_JUPYTERLAB.CORE_OUTPUT/../node_modules/typestyle/lib/internal/utilities.js?");

/***/ }),

/***/ "../node_modules/typestyle/lib/types.js":
/*!**********************************************!*\
  !*** ../node_modules/typestyle/lib/types.js ***!
  \**********************************************/
/***/ ((__unused_webpack_module, exports) => {

"use strict";
eval("\nObject.defineProperty(exports, \"__esModule\", ({ value: true }));\n\n\n//# sourceURL=webpack://_JUPYTERLAB.CORE_OUTPUT/../node_modules/typestyle/lib/types.js?");

/***/ })

}]);