/*
 * 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/).
 */
var charts_test;
/******/ (() => { // webpackBootstrap
/******/ 	"use strict";
/******/ 	var __webpack_modules__ = ({

/***/ "./node_modules/@datagrok-libraries/utils/src/test.js":
/*!************************************************************!*\
  !*** ./node_modules/@datagrok-libraries/utils/src/test.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 */   \"Test\": () => (/* binding */ Test),\n/* harmony export */   \"TestContext\": () => (/* binding */ TestContext),\n/* harmony export */   \"after\": () => (/* binding */ after),\n/* harmony export */   \"assure\": () => (/* binding */ assure),\n/* harmony export */   \"awaitCheck\": () => (/* binding */ awaitCheck),\n/* harmony export */   \"before\": () => (/* binding */ before),\n/* harmony export */   \"category\": () => (/* binding */ category),\n/* harmony export */   \"currentCategory\": () => (/* binding */ currentCategory),\n/* harmony export */   \"delay\": () => (/* binding */ delay),\n/* harmony export */   \"expect\": () => (/* binding */ expect),\n/* harmony export */   \"expectArray\": () => (/* binding */ expectArray),\n/* harmony export */   \"expectFloat\": () => (/* binding */ expectFloat),\n/* harmony export */   \"expectObject\": () => (/* binding */ expectObject),\n/* harmony export */   \"isDialogPresent\": () => (/* binding */ isDialogPresent),\n/* harmony export */   \"runTests\": () => (/* binding */ runTests),\n/* harmony export */   \"test\": () => (/* binding */ test),\n/* harmony export */   \"testEvent\": () => (/* binding */ testEvent),\n/* harmony export */   \"testViewer\": () => (/* binding */ testViewer),\n/* harmony export */   \"tests\": () => (/* binding */ tests)\n/* harmony export */ });\n/* harmony import */ var datagrok_api_grok__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! datagrok-api/grok */ \"datagrok-api/grok\");\n/* harmony import */ var datagrok_api_grok__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(datagrok_api_grok__WEBPACK_IMPORTED_MODULE_0__);\n/* harmony import */ var datagrok_api_dg__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! datagrok-api/dg */ \"datagrok-api/dg\");\n/* harmony import */ var datagrok_api_dg__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(datagrok_api_dg__WEBPACK_IMPORTED_MODULE_1__);\nvar __awaiter = (undefined && undefined.__awaiter) || function (thisArg, _arguments, P, generator) {\n    function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }\n    return new (P || (P = Promise))(function (resolve, reject) {\n        function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }\n        function rejected(value) { try { step(generator[\"throw\"](value)); } catch (e) { reject(e); } }\n        function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }\n        step((generator = generator.apply(thisArg, _arguments || [])).next());\n    });\n};\n\n\nconst tests = {};\nlet currentCategory;\nvar assure;\n(function (assure) {\n    function notNull(value, name) {\n        if (value == null)\n            throw new Error(`${name == null ? 'Value' : name} not defined`);\n    }\n    assure.notNull = notNull;\n})(assure || (assure = {}));\nclass TestContext {\n    constructor(catchUnhandled, report) {\n        this.catchUnhandled = true;\n        this.report = false;\n        if (catchUnhandled !== undefined)\n            this.catchUnhandled = catchUnhandled;\n        if (report !== undefined)\n            this.report = report;\n    }\n    ;\n}\nclass Test {\n    constructor(category, name, test, options) {\n        var _a;\n        this.category = category;\n        this.name = name;\n        options !== null && options !== void 0 ? options : (options = {});\n        (_a = options.timeout) !== null && _a !== void 0 ? _a : (options.timeout = 30000);\n        this.options = options;\n        this.test = () => __awaiter(this, void 0, void 0, function* () {\n            return new Promise((resolve, reject) => __awaiter(this, void 0, void 0, function* () {\n                let result = '';\n                try {\n                    result = yield test();\n                }\n                catch (e) {\n                    reject(e);\n                }\n                resolve(result);\n            }));\n        });\n    }\n}\nfunction testEvent(event, handler, trigger, ms = 0) {\n    return __awaiter(this, void 0, void 0, function* () {\n        let sub;\n        return new Promise((resolve, reject) => {\n            sub = event.subscribe((args) => {\n                try {\n                    handler(args);\n                }\n                catch (e) {\n                    reject(e);\n                }\n                sub.unsubscribe();\n                resolve('OK');\n            });\n            setTimeout(() => {\n                sub.unsubscribe();\n                // eslint-disable-next-line prefer-promise-reject-errors\n                reject('timeout');\n            }, ms);\n            trigger();\n        });\n    });\n}\nfunction test(name, test, options) {\n    if (tests[currentCategory] == undefined)\n        tests[currentCategory] = {};\n    if (tests[currentCategory].tests == undefined)\n        tests[currentCategory].tests = [];\n    tests[currentCategory].tests.push(new Test(currentCategory, name, test, options));\n}\n/* Tests two objects for equality, throws an exception if they are not equal. */\nfunction expect(actual, expected) {\n    if (actual !== expected)\n        throw new Error(`Expected \"${expected}\", got \"${actual}\"`);\n}\nfunction expectFloat(actual, expected, tolerance = 0.001) {\n    const areEqual = Math.abs(actual - expected) < tolerance;\n    if (!areEqual)\n        throw new Error(`Expected ${expected}, got ${actual} (tolerance = ${tolerance})`);\n}\nfunction expectObject(actual, expected) {\n    for (const [expectedKey, expectedValue] of Object.entries(expected)) {\n        if (!actual.hasOwnProperty(expectedKey))\n            throw new Error(`Expected property \"${expectedKey}\" not found`);\n        const actualValue = actual[expectedKey];\n        if (actualValue instanceof Array && expectedValue instanceof Array)\n            expectArray(actualValue, expectedValue);\n        else if (actualValue instanceof Object && expectedValue instanceof Object)\n            expectObject(actualValue, expectedValue);\n        else if (Number.isFinite(actualValue) && Number.isFinite(expectedValue))\n            expectFloat(actualValue, expectedValue);\n        else if (actualValue != expectedValue)\n            throw new Error(`Expected (${expectedValue}) for key '${expectedKey}', got (${actualValue})`);\n    }\n}\nfunction expectArray(actual, expected) {\n    const actualLength = actual.length;\n    const expectedLength = expected.length;\n    if (actualLength != expectedLength) {\n        throw new Error(`Arrays are of different length: actual array length is ${actualLength} ` +\n            `and expected array length is ${expectedLength}`);\n    }\n    for (let i = 0; i < actualLength; i++) {\n        if (actual[i] instanceof Array && expected[i] instanceof Array)\n            expectArray(actual[i], expected[i]);\n        else if (actual[i] instanceof Object && expected[i] instanceof Object)\n            expectObject(actual[i], expected[i]);\n        else if (actual[i] != expected[i])\n            throw new Error(`Expected ${expected[i]} at position ${i}, got ${actual[i]}`);\n    }\n}\n/* Defines a test suite. */\nfunction category(category, tests) {\n    currentCategory = category;\n    tests();\n}\n/* Defines a function to be executed before the tests in this category are executed. */\nfunction before(before) {\n    if (tests[currentCategory] == undefined)\n        tests[currentCategory] = {};\n    tests[currentCategory].before = before;\n}\n/* Defines a function to be executed after the tests in this category are executed. */\nfunction after(after) {\n    if (tests[currentCategory] == undefined)\n        tests[currentCategory] = {};\n    tests[currentCategory].after = after;\n}\nfunction runTests(options) {\n    var _a, _b, _c, _d;\n    var _e;\n    return __awaiter(this, void 0, void 0, function* () {\n        const results = [];\n        const packageName = (_b = (_a = datagrok_api_grok__WEBPACK_IMPORTED_MODULE_0__.functions.getCurrentCall()) === null || _a === void 0 ? void 0 : _a.func) === null || _b === void 0 ? void 0 : _b.package;\n        console.log(`Running tests`);\n        options !== null && options !== void 0 ? options : (options = {});\n        (_c = (_e = options).testContext) !== null && _c !== void 0 ? _c : (_e.testContext = new TestContext());\n        datagrok_api_grok__WEBPACK_IMPORTED_MODULE_0__.shell.lastError = '';\n        for (const [key, value] of Object.entries(tests)) {\n            if ((options === null || options === void 0 ? void 0 : options.category) != undefined) {\n                if (!key.toLowerCase().startsWith(options === null || options === void 0 ? void 0 : options.category.toLowerCase()))\n                    continue;\n            }\n            console.log(`Started ${key} category`);\n            try {\n                if (value.before)\n                    yield value.before();\n            }\n            catch (x) {\n                value.beforeStatus = x.toString();\n            }\n            const t = (_d = value.tests) !== null && _d !== void 0 ? _d : [];\n            const res = [];\n            for (let i = 0; i < t.length; i++)\n                res.push(yield execTest(t[i], options === null || options === void 0 ? void 0 : options.test));\n            const data = (yield Promise.all(res)).filter((d) => d.result != 'skipped');\n            try {\n                if (value.after)\n                    yield value.after();\n            }\n            catch (x) {\n                value.afterStatus = x.toString();\n            }\n            if (value.afterStatus)\n                data.push({ category: key, name: 'init', result: value.afterStatus, success: false, ms: 0, skipped: false });\n            if (value.beforeStatus)\n                data.push({ category: key, name: 'init', result: value.beforeStatus, success: false, ms: 0, skipped: false });\n            results.push(...data);\n        }\n        if (options.testContext.catchUnhandled) {\n            yield delay(1000);\n            if (datagrok_api_grok__WEBPACK_IMPORTED_MODULE_0__.shell.lastError.length > 0) {\n                results.push({\n                    category: 'Unhandled exceptions',\n                    name: 'exceptions',\n                    result: datagrok_api_grok__WEBPACK_IMPORTED_MODULE_0__.shell.lastError, success: false, ms: 0, skipped: false\n                });\n            }\n        }\n        if (options.testContext.report) {\n            const logger = new datagrok_api_dg__WEBPACK_IMPORTED_MODULE_1__.Logger();\n            const successful = results.filter((r) => r.success).length;\n            const skipped = results.filter((r) => r.skipped).length;\n            const failed = results.filter((r) => !r.success);\n            const description = 'Package @package tested: @successful successful, @skipped skipped, @failed failed tests';\n            const params = {\n                successful: successful,\n                skipped: skipped,\n                failed: failed.length,\n                package: packageName\n            };\n            for (const r of failed)\n                Object.assign(params, { [`${r.category} | ${r.name}`]: r.result });\n            logger.log(description, params, 'package-tested');\n        }\n        return results;\n    });\n}\nfunction execTest(t, predicate) {\n    var _a, _b, _c;\n    return __awaiter(this, void 0, void 0, function* () {\n        let r;\n        const filter = predicate != undefined && (!t.name.toLowerCase().startsWith(predicate.toLowerCase()));\n        const skip = ((_a = t.options) === null || _a === void 0 ? void 0 : _a.skipReason) || filter;\n        const skipReason = filter ? 'skipped' : (_b = t.options) === null || _b === void 0 ? void 0 : _b.skipReason;\n        if (!skip)\n            console.log(`Started ${t.category} ${t.name}`);\n        const start = new Date();\n        try {\n            if (skip)\n                r = { success: true, result: skipReason, ms: 0, skipped: true };\n            else\n                r = { success: true, result: (_c = yield t.test()) !== null && _c !== void 0 ? _c : 'OK', ms: 0, skipped: false };\n        }\n        catch (x) {\n            r = { success: false, result: x.toString(), ms: 0, skipped: false };\n        }\n        const stop = new Date();\n        // @ts-ignore\n        r.ms = stop - start;\n        if (!skip)\n            console.log(`Finished ${t.category} ${t.name} for ${r.ms} ms`);\n        r.category = t.category;\n        r.name = t.name;\n        return r;\n    });\n}\n/* Waits [ms] milliseconds */\nfunction delay(ms) {\n    return __awaiter(this, void 0, void 0, function* () {\n        yield new Promise((r) => setTimeout(r, ms));\n    });\n}\nfunction awaitCheck(checkHandler, error = 'Timeout exceeded', wait = 500) {\n    return __awaiter(this, void 0, void 0, function* () {\n        return new Promise((resolve, reject) => {\n            setTimeout(() => {\n                clearInterval(interval);\n                reject(new Error(error));\n            }, wait);\n            // @ts-ignore\n            const interval = setInterval(() => {\n                if (checkHandler()) {\n                    clearInterval(interval);\n                    resolve();\n                }\n            }, 50);\n        });\n    });\n}\nfunction isDialogPresent(dialogTitle) {\n    for (let i = 0; i < datagrok_api_dg__WEBPACK_IMPORTED_MODULE_1__.Dialog.getOpenDialogs().length; i++) {\n        if (datagrok_api_dg__WEBPACK_IMPORTED_MODULE_1__.Dialog.getOpenDialogs()[i].title == dialogTitle)\n            return true;\n    }\n    return false;\n}\nfunction testViewer(v, df, detectSemanticTypes = false) {\n    return __awaiter(this, void 0, void 0, function* () {\n        if (detectSemanticTypes)\n            yield datagrok_api_grok__WEBPACK_IMPORTED_MODULE_0__.data.detectSemanticTypes(df);\n        const tv = datagrok_api_grok__WEBPACK_IMPORTED_MODULE_0__.shell.addTableView(df);\n        const viewerName = `[name=viewer-${v.replace(/\\s+/g, '-')} i]`;\n        const selector = `${viewerName} canvas,${viewerName} svg,${viewerName} img,\n    ${viewerName} input,${viewerName} h1,${viewerName} a`;\n        const res = [];\n        try {\n            let viewer = tv.addViewer(v);\n            yield awaitCheck(() => document.querySelector(selector) !== null, 'cannot load viewer', 3000);\n            res.push(Array.from(tv.viewers).length);\n            Array.from(df.row(0).cells).forEach((c) => c.value = null);\n            df.rows.select((row) => row.idx > 1 && row.idx < 7);\n            for (let i = 7; i < 12; i++)\n                df.filter.set(i, false);\n            df.currentRowIdx = 1;\n            const props = viewer.getOptions(true).look;\n            const newProps = {};\n            Object.keys(props).filter((k) => typeof props[k] === 'boolean').forEach((k) => newProps[k] = !props[k]);\n            viewer.setOptions(newProps);\n            yield delay(250);\n            const layout = tv.saveLayout();\n            const oldProps = viewer.getOptions().look;\n            tv.resetLayout();\n            res.push(Array.from(tv.viewers).length);\n            tv.loadLayout(layout);\n            yield awaitCheck(() => document.querySelector(selector) !== null, 'cannot load viewer from layout', 3000);\n            yield delay(250);\n            res.push(Array.from(tv.viewers).length);\n            viewer = Array.from(tv.viewers).find((v) => v.type !== 'Grid');\n            expectArray(res, [2, 1, 2]);\n            expect(JSON.stringify(viewer.getOptions().look), JSON.stringify(oldProps));\n        }\n        finally {\n            tv.close();\n            datagrok_api_grok__WEBPACK_IMPORTED_MODULE_0__.shell.closeTable(df);\n        }\n    });\n}\n//# sourceMappingURL=data:application/json;base64, \n\n//# sourceURL=webpack://charts/./node_modules/@datagrok-libraries/utils/src/test.js?");

/***/ }),

/***/ "./src/package-test.ts":
/*!*****************************!*\
  !*** ./src/package-test.ts ***!
  \*****************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */   \"_package\": () => (/* binding */ _package),\n/* harmony export */   \"test\": () => (/* binding */ test),\n/* harmony export */   \"tests\": () => (/* reexport safe */ _datagrok_libraries_utils_src_test__WEBPACK_IMPORTED_MODULE_1__.tests)\n/* harmony export */ });\n/* harmony import */ var datagrok_api_dg__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! datagrok-api/dg */ \"datagrok-api/dg\");\n/* harmony import */ var datagrok_api_dg__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(datagrok_api_dg__WEBPACK_IMPORTED_MODULE_0__);\n/* harmony import */ var _datagrok_libraries_utils_src_test__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @datagrok-libraries/utils/src/test */ \"./node_modules/@datagrok-libraries/utils/src/test.js\");\n/* harmony import */ var _tests_timelines_viewer_test__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./tests/timelines-viewer-test */ \"./src/tests/timelines-viewer-test.ts\");\n/* harmony import */ var _tests_tree_viewer_test__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./tests/tree-viewer-test */ \"./src/tests/tree-viewer-test.ts\");\n/* harmony import */ var _tests_radar_viewer_test__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ./tests/radar-viewer-test */ \"./src/tests/radar-viewer-test.ts\");\n/* harmony import */ var _tests_viewers__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ./tests/viewers */ \"./src/tests/viewers.ts\");\nvar __awaiter = (undefined && undefined.__awaiter) || function (thisArg, _arguments, P, generator) {\n    function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }\n    return new (P || (P = Promise))(function (resolve, reject) {\n        function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }\n        function rejected(value) { try { step(generator[\"throw\"](value)); } catch (e) { reject(e); } }\n        function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }\n        step((generator = generator.apply(thisArg, _arguments || [])).next());\n    });\n};\n\n\n\n\n\n\nconst _package = new datagrok_api_dg__WEBPACK_IMPORTED_MODULE_0__.Package();\n\n//name: test\n//input: string category {optional: true}\n//input: string test {optional: true}\n//input: object testContext {optional: true}\n//output: dataframe result\nfunction test(category, test, testContext) {\n    return __awaiter(this, void 0, void 0, function* () {\n        const data = yield (0,_datagrok_libraries_utils_src_test__WEBPACK_IMPORTED_MODULE_1__.runTests)({ category, test, testContext });\n        return datagrok_api_dg__WEBPACK_IMPORTED_MODULE_0__.DataFrame.fromObjects(data);\n    });\n}\n\n\n//# sourceURL=webpack://charts/./src/package-test.ts?");

/***/ }),

/***/ "./src/tests/radar-viewer-test.ts":
/*!****************************************!*\
  !*** ./src/tests/radar-viewer-test.ts ***!
  \****************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

eval("__webpack_require__.r(__webpack_exports__);\n/* harmony import */ var datagrok_api_grok__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! datagrok-api/grok */ \"datagrok-api/grok\");\n/* harmony import */ var datagrok_api_grok__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(datagrok_api_grok__WEBPACK_IMPORTED_MODULE_0__);\n/* harmony import */ var datagrok_api_dg__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! datagrok-api/dg */ \"datagrok-api/dg\");\n/* harmony import */ var datagrok_api_dg__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(datagrok_api_dg__WEBPACK_IMPORTED_MODULE_1__);\n/* harmony import */ var _datagrok_libraries_utils_src_test__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! @datagrok-libraries/utils/src/test */ \"./node_modules/@datagrok-libraries/utils/src/test.js\");\n/* harmony import */ var _utils_utils__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./utils/utils */ \"./src/tests/utils/utils.ts\");\nvar __awaiter = (undefined && undefined.__awaiter) || function (thisArg, _arguments, P, generator) {\n    function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }\n    return new (P || (P = Promise))(function (resolve, reject) {\n        function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }\n        function rejected(value) { try { step(generator[\"throw\"](value)); } catch (e) { reject(e); } }\n        function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }\n        step((generator = generator.apply(thisArg, _arguments || [])).next());\n    });\n};\n\n\n\n\n(0,_datagrok_libraries_utils_src_test__WEBPACK_IMPORTED_MODULE_2__.category)('Radar', () => {\n    const TYPE = 'RadarViewer';\n    let df;\n    let tv;\n    const subs = [];\n    (0,_datagrok_libraries_utils_src_test__WEBPACK_IMPORTED_MODULE_2__.before)(() => __awaiter(void 0, void 0, void 0, function* () {\n        df = datagrok_api_dg__WEBPACK_IMPORTED_MODULE_1__.DataFrame.fromCsv(`USUBJID, SEX, AGE, COUNTRYID\n      s1, F, 48, 12\n      s2, M, 51, 3\n      s3, F, 39, 5\n      s4, M, 43, 89`);\n        tv = datagrok_api_grok__WEBPACK_IMPORTED_MODULE_0__.shell.addTableView(df);\n    }));\n    (0,_datagrok_libraries_utils_src_test__WEBPACK_IMPORTED_MODULE_2__.test)('Creation', () => __awaiter(void 0, void 0, void 0, function* () {\n        const viewer = datagrok_api_dg__WEBPACK_IMPORTED_MODULE_1__.Viewer.fromType(TYPE, df);\n        (0,_datagrok_libraries_utils_src_test__WEBPACK_IMPORTED_MODULE_2__.expect)(viewer instanceof datagrok_api_dg__WEBPACK_IMPORTED_MODULE_1__.JsViewer, true);\n        (0,_datagrok_libraries_utils_src_test__WEBPACK_IMPORTED_MODULE_2__.expect)(viewer.type, TYPE);\n        (0,_datagrok_libraries_utils_src_test__WEBPACK_IMPORTED_MODULE_2__.expect)(viewer.table.id, df.id);\n    }));\n    (0,_datagrok_libraries_utils_src_test__WEBPACK_IMPORTED_MODULE_2__.test)('Standard Properties', () => __awaiter(void 0, void 0, void 0, function* () {\n        const viewer = datagrok_api_dg__WEBPACK_IMPORTED_MODULE_1__.Viewer.fromType(TYPE, df);\n        const standardOptions = {\n            min: '5',\n            max: '95',\n            showCurrentRow: false,\n            showTooltip: true,\n            showAllRows: false,\n            backgroundMinColor: 0xFFB0D7FF,\n            backgroundMaxColor: 0xFFBCE2F5,\n            showMin: true,\n            showMax: true,\n            showValues: true,\n            valuesColumnNames: ['AGE', 'COUNTRYID'],\n        };\n        (0,_datagrok_libraries_utils_src_test__WEBPACK_IMPORTED_MODULE_2__.expect)(JSON.stringify(standardOptions), JSON.stringify(yield (0,_utils_utils__WEBPACK_IMPORTED_MODULE_3__.getOptions)(viewer)));\n    }));\n    (0,_datagrok_libraries_utils_src_test__WEBPACK_IMPORTED_MODULE_2__.test)('Changed properties', () => __awaiter(void 0, void 0, void 0, function* () {\n        const changedViewer = datagrok_api_dg__WEBPACK_IMPORTED_MODULE_1__.Viewer.fromType(TYPE, df, {\n            min: '10',\n            showTooltip: false,\n            backgroundMaxColor: 0xFF4F616F,\n            showValues: false,\n        });\n        const options = yield (0,_utils_utils__WEBPACK_IMPORTED_MODULE_3__.getOptions)(changedViewer);\n        (0,_datagrok_libraries_utils_src_test__WEBPACK_IMPORTED_MODULE_2__.expect)(options.min, '10');\n        (0,_datagrok_libraries_utils_src_test__WEBPACK_IMPORTED_MODULE_2__.expect)(options.showTooltip, false);\n        (0,_datagrok_libraries_utils_src_test__WEBPACK_IMPORTED_MODULE_2__.expect)(options.backgroundMaxColor, 0xFF4F616F);\n        (0,_datagrok_libraries_utils_src_test__WEBPACK_IMPORTED_MODULE_2__.expect)(options.showValues, false);\n    }));\n    (0,_datagrok_libraries_utils_src_test__WEBPACK_IMPORTED_MODULE_2__.after)(() => __awaiter(void 0, void 0, void 0, function* () {\n        subs.forEach((sub) => sub.unsubscribe());\n        tv.close();\n        datagrok_api_grok__WEBPACK_IMPORTED_MODULE_0__.shell.closeTable(df);\n    }));\n});\n\n\n//# sourceURL=webpack://charts/./src/tests/radar-viewer-test.ts?");

/***/ }),

/***/ "./src/tests/timelines-viewer-test.ts":
/*!********************************************!*\
  !*** ./src/tests/timelines-viewer-test.ts ***!
  \********************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

eval("__webpack_require__.r(__webpack_exports__);\n/* harmony import */ var datagrok_api_grok__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! datagrok-api/grok */ \"datagrok-api/grok\");\n/* harmony import */ var datagrok_api_grok__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(datagrok_api_grok__WEBPACK_IMPORTED_MODULE_0__);\n/* harmony import */ var datagrok_api_dg__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! datagrok-api/dg */ \"datagrok-api/dg\");\n/* harmony import */ var datagrok_api_dg__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(datagrok_api_dg__WEBPACK_IMPORTED_MODULE_1__);\n/* harmony import */ var _datagrok_libraries_utils_src_test__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! @datagrok-libraries/utils/src/test */ \"./node_modules/@datagrok-libraries/utils/src/test.js\");\n/* harmony import */ var _utils_utils__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./utils/utils */ \"./src/tests/utils/utils.ts\");\nvar __awaiter = (undefined && undefined.__awaiter) || function (thisArg, _arguments, P, generator) {\n    function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }\n    return new (P || (P = Promise))(function (resolve, reject) {\n        function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }\n        function rejected(value) { try { step(generator[\"throw\"](value)); } catch (e) { reject(e); } }\n        function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }\n        step((generator = generator.apply(thisArg, _arguments || [])).next());\n    });\n};\n\n\n//import $ from 'cash-dom';\n\n\n(0,_datagrok_libraries_utils_src_test__WEBPACK_IMPORTED_MODULE_2__.category)('Timelines', () => {\n    const TYPE = 'TimelinesViewer';\n    let df;\n    let tv;\n    const subs = [];\n    (0,_datagrok_libraries_utils_src_test__WEBPACK_IMPORTED_MODULE_2__.before)(() => __awaiter(void 0, void 0, void 0, function* () {\n        df = datagrok_api_dg__WEBPACK_IMPORTED_MODULE_1__.DataFrame.fromCsv(`USUBJID, AESTDY, AEENDY, SEX, AGE\n      s1, 10/02/2018, 10/09/2018, F, 48\n      s2, 10/04/2018, 10/07/2018, M, 51\n      s3, 10/02/2018, 10/05/2018, F, 39\n      s4, 10/07/2018, 10/08/2018, M, 43`);\n        tv = datagrok_api_grok__WEBPACK_IMPORTED_MODULE_0__.shell.addTableView(df);\n    }));\n    (0,_datagrok_libraries_utils_src_test__WEBPACK_IMPORTED_MODULE_2__.test)('Creation', () => __awaiter(void 0, void 0, void 0, function* () {\n        const viewer = datagrok_api_dg__WEBPACK_IMPORTED_MODULE_1__.Viewer.fromType(TYPE, df);\n        (0,_datagrok_libraries_utils_src_test__WEBPACK_IMPORTED_MODULE_2__.expect)(viewer instanceof datagrok_api_dg__WEBPACK_IMPORTED_MODULE_1__.JsViewer, true);\n        (0,_datagrok_libraries_utils_src_test__WEBPACK_IMPORTED_MODULE_2__.expect)(viewer.type, TYPE);\n        (0,_datagrok_libraries_utils_src_test__WEBPACK_IMPORTED_MODULE_2__.expect)(viewer.table.id, df.id);\n    }));\n    (0,_datagrok_libraries_utils_src_test__WEBPACK_IMPORTED_MODULE_2__.test)('Properties', () => __awaiter(void 0, void 0, void 0, function* () {\n        const viewer = datagrok_api_dg__WEBPACK_IMPORTED_MODULE_1__.Viewer.fromType(TYPE, df);\n        const standardOptions = {\n            splitByColumnName: 'USUBJID',\n            startColumnName: 'AESTDY',\n            endColumnName: 'AEENDY',\n            colorByColumnName: 'SEX',\n            showOpenIntervals: false,\n            eventColumnName: 'SEX',\n            eventsColumnNames: null,\n            showEventInTooltip: true,\n            marker: 'circle',\n            markerSize: 6,\n            markerPosition: 'main line',\n            lineWidth: 3,\n            dateFormat: '{MMM} {d}',\n            axisPointer: 'shadow',\n            showZoomSliders: true,\n            legendVisibility: 'Auto',\n        };\n        (0,_datagrok_libraries_utils_src_test__WEBPACK_IMPORTED_MODULE_2__.expect)(JSON.stringify(standardOptions), JSON.stringify(yield (0,_utils_utils__WEBPACK_IMPORTED_MODULE_3__.getOptions)(viewer)));\n        viewer.setOptions({\n            colorByColumnName: 'USUBJID',\n            markerSize: 4,\n            dateFormat: '{yyyy}-{MM}-{dd}',\n            showZoomSliders: false,\n        });\n        const options = yield (0,_utils_utils__WEBPACK_IMPORTED_MODULE_3__.getOptions)(viewer);\n        (0,_datagrok_libraries_utils_src_test__WEBPACK_IMPORTED_MODULE_2__.expect)(options.colorByColumnName, 'USUBJID');\n        (0,_datagrok_libraries_utils_src_test__WEBPACK_IMPORTED_MODULE_2__.expect)(options.markerSize, 4);\n        (0,_datagrok_libraries_utils_src_test__WEBPACK_IMPORTED_MODULE_2__.expect)(options.dateFormat, '{yyyy}-{MM}-{dd}');\n        (0,_datagrok_libraries_utils_src_test__WEBPACK_IMPORTED_MODULE_2__.expect)(options.showZoomSliders, false);\n    }));\n    // test('Context menu', () => new Promise((resolve, reject) => {\n    //   const viewer = DG.Viewer.fromType(TYPE, df);\n    //   subs.push(viewer.onContextMenu.subscribe((menu) => {\n    //     const customCommand = menu.find('Reset View');\n    //     if (customCommand == null)\n    //       reject('Command not found');\n    //     else\n    //       resolve('OK');\n    //   }));\n    //   setTimeout(() => reject('Timeout'), 50);\n    //   $(viewer.root).trigger('contextmenu');\n    // }));\n    (0,_datagrok_libraries_utils_src_test__WEBPACK_IMPORTED_MODULE_2__.after)(() => __awaiter(void 0, void 0, void 0, function* () {\n        subs.forEach((sub) => sub.unsubscribe());\n        tv.close();\n        datagrok_api_grok__WEBPACK_IMPORTED_MODULE_0__.shell.closeTable(df);\n    }));\n});\n\n\n//# sourceURL=webpack://charts/./src/tests/timelines-viewer-test.ts?");

/***/ }),

/***/ "./src/tests/tree-viewer-test.ts":
/*!***************************************!*\
  !*** ./src/tests/tree-viewer-test.ts ***!
  \***************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

eval("__webpack_require__.r(__webpack_exports__);\n/* harmony import */ var datagrok_api_grok__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! datagrok-api/grok */ \"datagrok-api/grok\");\n/* harmony import */ var datagrok_api_grok__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(datagrok_api_grok__WEBPACK_IMPORTED_MODULE_0__);\n/* harmony import */ var datagrok_api_dg__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! datagrok-api/dg */ \"datagrok-api/dg\");\n/* harmony import */ var datagrok_api_dg__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(datagrok_api_dg__WEBPACK_IMPORTED_MODULE_1__);\n/* harmony import */ var _datagrok_libraries_utils_src_test__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! @datagrok-libraries/utils/src/test */ \"./node_modules/@datagrok-libraries/utils/src/test.js\");\n/* harmony import */ var _utils_utils__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./utils/utils */ \"./src/tests/utils/utils.ts\");\nvar __awaiter = (undefined && undefined.__awaiter) || function (thisArg, _arguments, P, generator) {\n    function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }\n    return new (P || (P = Promise))(function (resolve, reject) {\n        function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }\n        function rejected(value) { try { step(generator[\"throw\"](value)); } catch (e) { reject(e); } }\n        function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }\n        step((generator = generator.apply(thisArg, _arguments || [])).next());\n    });\n};\n\n\n\n\n(0,_datagrok_libraries_utils_src_test__WEBPACK_IMPORTED_MODULE_2__.category)('TreeViewer', () => {\n    const TYPE = 'TreeViewer';\n    let df;\n    let tv;\n    (0,_datagrok_libraries_utils_src_test__WEBPACK_IMPORTED_MODULE_2__.before)(() => __awaiter(void 0, void 0, void 0, function* () {\n        df = datagrok_api_grok__WEBPACK_IMPORTED_MODULE_0__.data.demo.demog(20);\n        tv = datagrok_api_grok__WEBPACK_IMPORTED_MODULE_0__.shell.addTableView(df);\n    }));\n    (0,_datagrok_libraries_utils_src_test__WEBPACK_IMPORTED_MODULE_2__.test)('Creation', () => __awaiter(void 0, void 0, void 0, function* () {\n        const viewer = datagrok_api_dg__WEBPACK_IMPORTED_MODULE_1__.Viewer.fromType(TYPE, df);\n        (0,_datagrok_libraries_utils_src_test__WEBPACK_IMPORTED_MODULE_2__.expect)(viewer instanceof datagrok_api_dg__WEBPACK_IMPORTED_MODULE_1__.JsViewer, true);\n        (0,_datagrok_libraries_utils_src_test__WEBPACK_IMPORTED_MODULE_2__.expect)(viewer.type, TYPE);\n        (0,_datagrok_libraries_utils_src_test__WEBPACK_IMPORTED_MODULE_2__.expect)(viewer.table.id, df.id);\n    }));\n    (0,_datagrok_libraries_utils_src_test__WEBPACK_IMPORTED_MODULE_2__.test)('Properties', () => __awaiter(void 0, void 0, void 0, function* () {\n        const viewer = datagrok_api_dg__WEBPACK_IMPORTED_MODULE_1__.Viewer.fromType(TYPE, df);\n        const standardOptions = {\n            top: '5px',\n            left: '5px',\n            bottom: '5px',\n            right: '5px',\n            animationDuration: 750,\n            animationDurationUpdate: 750,\n            animation: true,\n            layout: 'orthogonal',\n            orient: 'LR',\n            expandAndCollapse: true,\n            initialTreeDepth: 3,\n            edgeShape: 'curve',\n            symbol: 'emptyCircle',\n            symbolSize: 7,\n            sizeColumnName: null,\n            sizeAggrType: datagrok_api_dg__WEBPACK_IMPORTED_MODULE_1__.AGG.AVG,\n            colorColumnName: null,\n            colorAggrType: datagrok_api_dg__WEBPACK_IMPORTED_MODULE_1__.AGG.AVG,\n            hierarchyColumnNames: ['sex', 'disease', 'site'],\n        };\n        (0,_datagrok_libraries_utils_src_test__WEBPACK_IMPORTED_MODULE_2__.expect)(JSON.stringify(standardOptions), JSON.stringify(yield (0,_utils_utils__WEBPACK_IMPORTED_MODULE_3__.getOptions)(viewer)));\n        viewer.setOptions({\n            symbolSize: 5,\n            sizeColumnName: 'age',\n            colorColumnName: 'weight',\n            hierarchyColumnNames: ['disease', 'sex'],\n        });\n        const options = yield (0,_utils_utils__WEBPACK_IMPORTED_MODULE_3__.getOptions)(viewer);\n        (0,_datagrok_libraries_utils_src_test__WEBPACK_IMPORTED_MODULE_2__.expect)(options.symbolSize, 5);\n        (0,_datagrok_libraries_utils_src_test__WEBPACK_IMPORTED_MODULE_2__.expect)(options.sizeColumnName, 'age');\n        (0,_datagrok_libraries_utils_src_test__WEBPACK_IMPORTED_MODULE_2__.expect)(options.colorColumnName, 'weight');\n        (0,_datagrok_libraries_utils_src_test__WEBPACK_IMPORTED_MODULE_2__.expectArray)(options.hierarchyColumnNames, ['disease', 'sex']);\n    }));\n    (0,_datagrok_libraries_utils_src_test__WEBPACK_IMPORTED_MODULE_2__.after)(() => __awaiter(void 0, void 0, void 0, function* () {\n        tv.close();\n        datagrok_api_grok__WEBPACK_IMPORTED_MODULE_0__.shell.closeTable(df);\n    }));\n});\n\n\n//# sourceURL=webpack://charts/./src/tests/tree-viewer-test.ts?");

/***/ }),

/***/ "./src/tests/utils/utils.ts":
/*!**********************************!*\
  !*** ./src/tests/utils/utils.ts ***!
  \**********************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */   \"getOptions\": () => (/* binding */ getOptions)\n/* harmony export */ });\n/* harmony import */ var _datagrok_libraries_utils_src_test__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @datagrok-libraries/utils/src/test */ \"./node_modules/@datagrok-libraries/utils/src/test.js\");\nvar __awaiter = (undefined && undefined.__awaiter) || function (thisArg, _arguments, P, generator) {\n    function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }\n    return new (P || (P = Promise))(function (resolve, reject) {\n        function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }\n        function rejected(value) { try { step(generator[\"throw\"](value)); } catch (e) { reject(e); } }\n        function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }\n        step((generator = generator.apply(thisArg, _arguments || [])).next());\n    });\n};\n\nfunction getOptions(viewer) {\n    return __awaiter(this, void 0, void 0, function* () {\n        yield (0,_datagrok_libraries_utils_src_test__WEBPACK_IMPORTED_MODULE_0__.delay)(100);\n        const options = viewer.getOptions(true).look;\n        delete options['#type'];\n        delete options.table;\n        return options;\n    });\n}\n\n\n//# sourceURL=webpack://charts/./src/tests/utils/utils.ts?");

/***/ }),

/***/ "./src/tests/viewers.ts":
/*!******************************!*\
  !*** ./src/tests/viewers.ts ***!
  \******************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

eval("__webpack_require__.r(__webpack_exports__);\n/* harmony import */ var datagrok_api_dg__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! datagrok-api/dg */ \"datagrok-api/dg\");\n/* harmony import */ var datagrok_api_dg__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(datagrok_api_dg__WEBPACK_IMPORTED_MODULE_0__);\n/* harmony import */ var datagrok_api_grok__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! datagrok-api/grok */ \"datagrok-api/grok\");\n/* harmony import */ var datagrok_api_grok__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(datagrok_api_grok__WEBPACK_IMPORTED_MODULE_1__);\n/* harmony import */ var _datagrok_libraries_utils_src_test__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! @datagrok-libraries/utils/src/test */ \"./node_modules/@datagrok-libraries/utils/src/test.js\");\nvar __awaiter = (undefined && undefined.__awaiter) || function (thisArg, _arguments, P, generator) {\n    function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }\n    return new (P || (P = Promise))(function (resolve, reject) {\n        function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }\n        function rejected(value) { try { step(generator[\"throw\"](value)); } catch (e) { reject(e); } }\n        function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }\n        step((generator = generator.apply(thisArg, _arguments || [])).next());\n    });\n};\n\n\n\n(0,_datagrok_libraries_utils_src_test__WEBPACK_IMPORTED_MODULE_2__.category)('Viewers', () => {\n    const df = datagrok_api_grok__WEBPACK_IMPORTED_MODULE_1__.data.demo.demog(100);\n    const viewers = datagrok_api_dg__WEBPACK_IMPORTED_MODULE_0__.Func.find({ package: 'Charts', tags: ['viewer'] }).map((f) => f.friendlyName);\n    for (const v of viewers) {\n        (0,_datagrok_libraries_utils_src_test__WEBPACK_IMPORTED_MODULE_2__.test)(v, () => __awaiter(void 0, void 0, void 0, function* () {\n            yield (0,_datagrok_libraries_utils_src_test__WEBPACK_IMPORTED_MODULE_2__.testViewer)(v, yield (() => __awaiter(void 0, void 0, void 0, function* () {\n                if (['SankeyViewer', 'ChordViewer'].includes(v))\n                    return (yield datagrok_api_grok__WEBPACK_IMPORTED_MODULE_1__.data.getDemoTable('energy_uk.csv'));\n                else if (['TreeMapViewer', 'SunburstViewer'].includes(v))\n                    return (yield datagrok_api_grok__WEBPACK_IMPORTED_MODULE_1__.data.getDemoTable('demog.csv'));\n                else if (v === 'GlobeViewer')\n                    return (yield datagrok_api_grok__WEBPACK_IMPORTED_MODULE_1__.data.getDemoTable('geo/earthquakes.csv'));\n                return df.clone();\n            }))(), true);\n        }));\n    }\n});\n\n\n//# sourceURL=webpack://charts/./src/tests/viewers.ts?");

/***/ }),

/***/ "datagrok-api/dg":
/*!*********************!*\
  !*** external "DG" ***!
  \*********************/
/***/ ((module) => {

module.exports = DG;

/***/ }),

/***/ "datagrok-api/grok":
/*!***********************!*\
  !*** external "grok" ***!
  \***********************/
/***/ ((module) => {

module.exports = grok;

/***/ })

/******/ 	});
/************************************************************************/
/******/ 	// The module cache
/******/ 	var __webpack_module_cache__ = {};
/******/ 	
/******/ 	// The require function
/******/ 	function __webpack_require__(moduleId) {
/******/ 		// Check if module is in cache
/******/ 		var cachedModule = __webpack_module_cache__[moduleId];
/******/ 		if (cachedModule !== undefined) {
/******/ 			return cachedModule.exports;
/******/ 		}
/******/ 		// Create a new module (and put it into the cache)
/******/ 		var module = __webpack_module_cache__[moduleId] = {
/******/ 			// no module.id needed
/******/ 			// no module.loaded needed
/******/ 			exports: {}
/******/ 		};
/******/ 	
/******/ 		// Execute the module function
/******/ 		__webpack_modules__[moduleId](module, module.exports, __webpack_require__);
/******/ 	
/******/ 		// Return the exports of the module
/******/ 		return module.exports;
/******/ 	}
/******/ 	
/************************************************************************/
/******/ 	/* webpack/runtime/compat get default export */
/******/ 	(() => {
/******/ 		// getDefaultExport function for compatibility with non-harmony modules
/******/ 		__webpack_require__.n = (module) => {
/******/ 			var getter = module && module.__esModule ?
/******/ 				() => (module['default']) :
/******/ 				() => (module);
/******/ 			__webpack_require__.d(getter, { a: getter });
/******/ 			return getter;
/******/ 		};
/******/ 	})();
/******/ 	
/******/ 	/* webpack/runtime/define property getters */
/******/ 	(() => {
/******/ 		// define getter functions for harmony exports
/******/ 		__webpack_require__.d = (exports, definition) => {
/******/ 			for(var key in definition) {
/******/ 				if(__webpack_require__.o(definition, key) && !__webpack_require__.o(exports, key)) {
/******/ 					Object.defineProperty(exports, key, { enumerable: true, get: definition[key] });
/******/ 				}
/******/ 			}
/******/ 		};
/******/ 	})();
/******/ 	
/******/ 	/* webpack/runtime/hasOwnProperty shorthand */
/******/ 	(() => {
/******/ 		__webpack_require__.o = (obj, prop) => (Object.prototype.hasOwnProperty.call(obj, prop))
/******/ 	})();
/******/ 	
/******/ 	/* webpack/runtime/make namespace object */
/******/ 	(() => {
/******/ 		// define __esModule on exports
/******/ 		__webpack_require__.r = (exports) => {
/******/ 			if(typeof Symbol !== 'undefined' && Symbol.toStringTag) {
/******/ 				Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });
/******/ 			}
/******/ 			Object.defineProperty(exports, '__esModule', { value: true });
/******/ 		};
/******/ 	})();
/******/ 	
/************************************************************************/
/******/ 	
/******/ 	// startup
/******/ 	// Load entry module and return exports
/******/ 	// This entry module can't be inlined because the eval devtool is used.
/******/ 	var __webpack_exports__ = __webpack_require__("./src/package-test.ts");
/******/ 	charts_test = __webpack_exports__;
/******/ 	
/******/ })()
;