@linkdlab/funcnodes_react_flow 0.2.0 → 0.2.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1546,7 +1546,7 @@ eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpac
1546
1546
  \********************************************************************/
1547
1547
  /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
1548
1548
 
1549
- eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ SVGInjector: () => (/* binding */ SVGInjector)\n/* harmony export */ });\n/* harmony import */ var tslib__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! tslib */ \"../node_modules/@tanem/svg-injector/node_modules/tslib/tslib.es6.mjs\");\n/* harmony import */ var content_type__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! content-type */ \"../node_modules/content-type/index.js\");\n\n\nvar cache = new Map();\nvar cloneSvg = function cloneSvg(sourceSvg) {\n return sourceSvg.cloneNode(true);\n};\nvar isLocal = function isLocal() {\n return window.location.protocol === 'file:';\n};\nvar makeAjaxRequest = function makeAjaxRequest(url, httpRequestWithCredentials, callback) {\n var httpRequest = new XMLHttpRequest();\n httpRequest.onreadystatechange = function () {\n try {\n if (!/\\.svg/i.test(url) && httpRequest.readyState === 2) {\n var contentType = httpRequest.getResponseHeader('Content-Type');\n if (!contentType) {\n throw new Error('Content type not found');\n }\n var type = (0,content_type__WEBPACK_IMPORTED_MODULE_0__.parse)(contentType).type;\n if (!(type === 'image/svg+xml' || type === 'text/plain')) {\n throw new Error(\"Invalid content type: \".concat(type));\n }\n }\n if (httpRequest.readyState === 4) {\n if (httpRequest.status === 404 || httpRequest.responseXML === null) {\n throw new Error(isLocal() ? 'Note: SVG injection ajax calls do not work locally without ' + 'adjusting security settings in your browser. Or consider ' + 'using a local webserver.' : 'Unable to load SVG file: ' + url);\n }\n if (httpRequest.status === 200 || isLocal() && httpRequest.status === 0) {\n callback(null, httpRequest);\n } else {\n throw new Error('There was a problem injecting the SVG: ' + httpRequest.status + ' ' + httpRequest.statusText);\n }\n }\n } catch (error) {\n httpRequest.abort();\n if (error instanceof Error) {\n callback(error, httpRequest);\n } else {\n throw error;\n }\n }\n };\n httpRequest.open('GET', url);\n httpRequest.withCredentials = httpRequestWithCredentials;\n if (httpRequest.overrideMimeType) {\n httpRequest.overrideMimeType('text/xml');\n }\n httpRequest.send();\n};\nvar requestQueue = {};\nvar queueRequest = function queueRequest(url, callback) {\n requestQueue[url] = requestQueue[url] || [];\n requestQueue[url].push(callback);\n};\nvar processRequestQueue = function processRequestQueue(url) {\n var _loop_1 = function _loop_1(i, len) {\n setTimeout(function () {\n if (Array.isArray(requestQueue[url])) {\n var cacheValue = cache.get(url);\n var callback = requestQueue[url][i];\n if (cacheValue instanceof SVGSVGElement) {\n callback(null, cloneSvg(cacheValue));\n }\n if (cacheValue instanceof Error) {\n callback(cacheValue);\n }\n if (i === requestQueue[url].length - 1) {\n delete requestQueue[url];\n }\n }\n }, 0);\n };\n for (var i = 0, len = requestQueue[url].length; i < len; i++) {\n _loop_1(i);\n }\n};\nvar loadSvgCached = function loadSvgCached(url, httpRequestWithCredentials, callback) {\n if (cache.has(url)) {\n var cacheValue = cache.get(url);\n if (cacheValue === undefined) {\n queueRequest(url, callback);\n return;\n }\n if (cacheValue instanceof SVGSVGElement) {\n callback(null, cloneSvg(cacheValue));\n return;\n }\n }\n cache.set(url, undefined);\n queueRequest(url, callback);\n makeAjaxRequest(url, httpRequestWithCredentials, function (error, httpRequest) {\n var _a;\n if (error) {\n cache.set(url, error);\n } else if (((_a = httpRequest.responseXML) === null || _a === void 0 ? void 0 : _a.documentElement) instanceof SVGSVGElement) {\n cache.set(url, httpRequest.responseXML.documentElement);\n }\n processRequestQueue(url);\n });\n};\nvar loadSvgUncached = function loadSvgUncached(url, httpRequestWithCredentials, callback) {\n makeAjaxRequest(url, httpRequestWithCredentials, function (error, httpRequest) {\n var _a;\n if (error) {\n callback(error);\n } else if (((_a = httpRequest.responseXML) === null || _a === void 0 ? void 0 : _a.documentElement) instanceof SVGSVGElement) {\n callback(null, httpRequest.responseXML.documentElement);\n }\n });\n};\nvar idCounter = 0;\nvar uniqueId = function uniqueId() {\n return ++idCounter;\n};\nvar injectedElements = [];\nvar ranScripts = {};\nvar svgNamespace = 'http://www.w3.org/2000/svg';\nvar xlinkNamespace = 'http://www.w3.org/1999/xlink';\nvar injectElement = function injectElement(el, evalScripts, renumerateIRIElements, cacheRequests, httpRequestWithCredentials, beforeEach, callback) {\n var elUrl = el.getAttribute('data-src') || el.getAttribute('src');\n if (!elUrl) {\n callback(new Error('Invalid data-src or src attribute'));\n return;\n }\n if (injectedElements.indexOf(el) !== -1) {\n injectedElements.splice(injectedElements.indexOf(el), 1);\n el = null;\n return;\n }\n injectedElements.push(el);\n el.setAttribute('src', '');\n var loadSvg = cacheRequests ? loadSvgCached : loadSvgUncached;\n loadSvg(elUrl, httpRequestWithCredentials, function (error, svg) {\n if (!svg) {\n injectedElements.splice(injectedElements.indexOf(el), 1);\n el = null;\n callback(error);\n return;\n }\n var elId = el.getAttribute('id');\n if (elId) {\n svg.setAttribute('id', elId);\n }\n var elTitle = el.getAttribute('title');\n if (elTitle) {\n svg.setAttribute('title', elTitle);\n }\n var elWidth = el.getAttribute('width');\n if (elWidth) {\n svg.setAttribute('width', elWidth);\n }\n var elHeight = el.getAttribute('height');\n if (elHeight) {\n svg.setAttribute('height', elHeight);\n }\n var mergedClasses = Array.from(new Set((0,tslib__WEBPACK_IMPORTED_MODULE_1__.__spreadArray)((0,tslib__WEBPACK_IMPORTED_MODULE_1__.__spreadArray)((0,tslib__WEBPACK_IMPORTED_MODULE_1__.__spreadArray)([], (svg.getAttribute('class') || '').split(' '), true), ['injected-svg'], false), (el.getAttribute('class') || '').split(' '), true))).join(' ').trim();\n svg.setAttribute('class', mergedClasses);\n var elStyle = el.getAttribute('style');\n if (elStyle) {\n svg.setAttribute('style', elStyle);\n }\n svg.setAttribute('data-src', elUrl);\n var elData = [].filter.call(el.attributes, function (at) {\n return /^data-\\w[\\w-]*$/.test(at.name);\n });\n Array.prototype.forEach.call(elData, function (dataAttr) {\n if (dataAttr.name && dataAttr.value) {\n svg.setAttribute(dataAttr.name, dataAttr.value);\n }\n });\n if (renumerateIRIElements) {\n var iriElementsAndProperties_1 = {\n clipPath: ['clip-path'],\n 'color-profile': ['color-profile'],\n cursor: ['cursor'],\n filter: ['filter'],\n linearGradient: ['fill', 'stroke'],\n marker: ['marker', 'marker-start', 'marker-mid', 'marker-end'],\n mask: ['mask'],\n path: [],\n pattern: ['fill', 'stroke'],\n radialGradient: ['fill', 'stroke']\n };\n var element_1;\n var elements_1;\n var properties_1;\n var currentId_1;\n var newId_1;\n Object.keys(iriElementsAndProperties_1).forEach(function (key) {\n element_1 = key;\n properties_1 = iriElementsAndProperties_1[key];\n elements_1 = svg.querySelectorAll(element_1 + '[id]');\n var _loop_1 = function _loop_1(a, elementsLen) {\n currentId_1 = elements_1[a].id;\n newId_1 = currentId_1 + '-' + uniqueId();\n var referencingElements;\n Array.prototype.forEach.call(properties_1, function (property) {\n referencingElements = svg.querySelectorAll('[' + property + '*=\"' + currentId_1 + '\"]');\n for (var b = 0, referencingElementLen = referencingElements.length; b < referencingElementLen; b++) {\n var attrValue = referencingElements[b].getAttribute(property);\n if (attrValue && !attrValue.match(new RegExp('url\\\\(\"?#' + currentId_1 + '\"?\\\\)'))) {\n continue;\n }\n referencingElements[b].setAttribute(property, 'url(#' + newId_1 + ')');\n }\n });\n var allLinks = svg.querySelectorAll('[*|href]');\n var links = [];\n for (var c = 0, allLinksLen = allLinks.length; c < allLinksLen; c++) {\n var href = allLinks[c].getAttributeNS(xlinkNamespace, 'href');\n if (href && href.toString() === '#' + elements_1[a].id) {\n links.push(allLinks[c]);\n }\n }\n for (var d = 0, linksLen = links.length; d < linksLen; d++) {\n links[d].setAttributeNS(xlinkNamespace, 'href', '#' + newId_1);\n }\n elements_1[a].id = newId_1;\n };\n for (var a = 0, elementsLen = elements_1.length; a < elementsLen; a++) {\n _loop_1(a);\n }\n });\n }\n svg.removeAttribute('xmlns:a');\n var scripts = svg.querySelectorAll('script');\n var scriptsToEval = [];\n var script;\n var scriptType;\n for (var i = 0, scriptsLen = scripts.length; i < scriptsLen; i++) {\n scriptType = scripts[i].getAttribute('type');\n if (!scriptType || scriptType === 'application/ecmascript' || scriptType === 'application/javascript' || scriptType === 'text/javascript') {\n script = scripts[i].innerText || scripts[i].textContent;\n if (script) {\n scriptsToEval.push(script);\n }\n svg.removeChild(scripts[i]);\n }\n }\n if (scriptsToEval.length > 0 && (evalScripts === 'always' || evalScripts === 'once' && !ranScripts[elUrl])) {\n for (var l = 0, scriptsToEvalLen = scriptsToEval.length; l < scriptsToEvalLen; l++) {\n new Function(scriptsToEval[l])(window);\n }\n ranScripts[elUrl] = true;\n }\n var styleTags = svg.querySelectorAll('style');\n Array.prototype.forEach.call(styleTags, function (styleTag) {\n styleTag.textContent += '';\n });\n svg.setAttribute('xmlns', svgNamespace);\n svg.setAttribute('xmlns:xlink', xlinkNamespace);\n beforeEach(svg);\n if (!el.parentNode) {\n injectedElements.splice(injectedElements.indexOf(el), 1);\n el = null;\n callback(new Error('Parent node is null'));\n return;\n }\n el.parentNode.replaceChild(svg, el);\n injectedElements.splice(injectedElements.indexOf(el), 1);\n el = null;\n callback(null, svg);\n });\n};\nvar SVGInjector = function SVGInjector(elements, _a) {\n var _b = _a === void 0 ? {} : _a,\n _c = _b.afterAll,\n afterAll = _c === void 0 ? function () {\n return undefined;\n } : _c,\n _d = _b.afterEach,\n afterEach = _d === void 0 ? function () {\n return undefined;\n } : _d,\n _e = _b.beforeEach,\n beforeEach = _e === void 0 ? function () {\n return undefined;\n } : _e,\n _f = _b.cacheRequests,\n cacheRequests = _f === void 0 ? true : _f,\n _g = _b.evalScripts,\n evalScripts = _g === void 0 ? 'never' : _g,\n _h = _b.httpRequestWithCredentials,\n httpRequestWithCredentials = _h === void 0 ? false : _h,\n _j = _b.renumerateIRIElements,\n renumerateIRIElements = _j === void 0 ? true : _j;\n if (elements && 'length' in elements) {\n var elementsLoaded_1 = 0;\n for (var i = 0, j = elements.length; i < j; i++) {\n injectElement(elements[i], evalScripts, renumerateIRIElements, cacheRequests, httpRequestWithCredentials, beforeEach, function (error, svg) {\n afterEach(error, svg);\n if (elements && 'length' in elements && elements.length === ++elementsLoaded_1) {\n afterAll(elementsLoaded_1);\n }\n });\n }\n } else if (elements) {\n injectElement(elements, evalScripts, renumerateIRIElements, cacheRequests, httpRequestWithCredentials, beforeEach, function (error, svg) {\n afterEach(error, svg);\n afterAll(1);\n elements = null;\n });\n } else {\n afterAll(0);\n }\n};\n\n\n//# sourceURL=webpack://@linkdlab/funcnodes_react_flow/../node_modules/@tanem/svg-injector/dist/svg-injector.esm.js?");
1549
+ eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ SVGInjector: () => (/* binding */ SVGInjector)\n/* harmony export */ });\n/* harmony import */ var tslib__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! tslib */ \"../node_modules/tslib/tslib.es6.mjs\");\n/* harmony import */ var content_type__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! content-type */ \"../node_modules/content-type/index.js\");\n\n\nvar cache = new Map();\nvar cloneSvg = function cloneSvg(sourceSvg) {\n return sourceSvg.cloneNode(true);\n};\nvar isLocal = function isLocal() {\n return window.location.protocol === 'file:';\n};\nvar makeAjaxRequest = function makeAjaxRequest(url, httpRequestWithCredentials, callback) {\n var httpRequest = new XMLHttpRequest();\n httpRequest.onreadystatechange = function () {\n try {\n if (!/\\.svg/i.test(url) && httpRequest.readyState === 2) {\n var contentType = httpRequest.getResponseHeader('Content-Type');\n if (!contentType) {\n throw new Error('Content type not found');\n }\n var type = (0,content_type__WEBPACK_IMPORTED_MODULE_0__.parse)(contentType).type;\n if (!(type === 'image/svg+xml' || type === 'text/plain')) {\n throw new Error(\"Invalid content type: \".concat(type));\n }\n }\n if (httpRequest.readyState === 4) {\n if (httpRequest.status === 404 || httpRequest.responseXML === null) {\n throw new Error(isLocal() ? 'Note: SVG injection ajax calls do not work locally without ' + 'adjusting security settings in your browser. Or consider ' + 'using a local webserver.' : 'Unable to load SVG file: ' + url);\n }\n if (httpRequest.status === 200 || isLocal() && httpRequest.status === 0) {\n callback(null, httpRequest);\n } else {\n throw new Error('There was a problem injecting the SVG: ' + httpRequest.status + ' ' + httpRequest.statusText);\n }\n }\n } catch (error) {\n httpRequest.abort();\n if (error instanceof Error) {\n callback(error, httpRequest);\n } else {\n throw error;\n }\n }\n };\n httpRequest.open('GET', url);\n httpRequest.withCredentials = httpRequestWithCredentials;\n if (httpRequest.overrideMimeType) {\n httpRequest.overrideMimeType('text/xml');\n }\n httpRequest.send();\n};\nvar requestQueue = {};\nvar queueRequest = function queueRequest(url, callback) {\n requestQueue[url] = requestQueue[url] || [];\n requestQueue[url].push(callback);\n};\nvar processRequestQueue = function processRequestQueue(url) {\n var _loop_1 = function _loop_1(i, len) {\n setTimeout(function () {\n if (Array.isArray(requestQueue[url])) {\n var cacheValue = cache.get(url);\n var callback = requestQueue[url][i];\n if (cacheValue instanceof SVGSVGElement) {\n callback(null, cloneSvg(cacheValue));\n }\n if (cacheValue instanceof Error) {\n callback(cacheValue);\n }\n if (i === requestQueue[url].length - 1) {\n delete requestQueue[url];\n }\n }\n }, 0);\n };\n for (var i = 0, len = requestQueue[url].length; i < len; i++) {\n _loop_1(i);\n }\n};\nvar loadSvgCached = function loadSvgCached(url, httpRequestWithCredentials, callback) {\n if (cache.has(url)) {\n var cacheValue = cache.get(url);\n if (cacheValue === undefined) {\n queueRequest(url, callback);\n return;\n }\n if (cacheValue instanceof SVGSVGElement) {\n callback(null, cloneSvg(cacheValue));\n return;\n }\n }\n cache.set(url, undefined);\n queueRequest(url, callback);\n makeAjaxRequest(url, httpRequestWithCredentials, function (error, httpRequest) {\n var _a;\n if (error) {\n cache.set(url, error);\n } else if (((_a = httpRequest.responseXML) === null || _a === void 0 ? void 0 : _a.documentElement) instanceof SVGSVGElement) {\n cache.set(url, httpRequest.responseXML.documentElement);\n }\n processRequestQueue(url);\n });\n};\nvar loadSvgUncached = function loadSvgUncached(url, httpRequestWithCredentials, callback) {\n makeAjaxRequest(url, httpRequestWithCredentials, function (error, httpRequest) {\n var _a;\n if (error) {\n callback(error);\n } else if (((_a = httpRequest.responseXML) === null || _a === void 0 ? void 0 : _a.documentElement) instanceof SVGSVGElement) {\n callback(null, httpRequest.responseXML.documentElement);\n }\n });\n};\nvar idCounter = 0;\nvar uniqueId = function uniqueId() {\n return ++idCounter;\n};\nvar injectedElements = [];\nvar ranScripts = {};\nvar svgNamespace = 'http://www.w3.org/2000/svg';\nvar xlinkNamespace = 'http://www.w3.org/1999/xlink';\nvar injectElement = function injectElement(el, evalScripts, renumerateIRIElements, cacheRequests, httpRequestWithCredentials, beforeEach, callback) {\n var elUrl = el.getAttribute('data-src') || el.getAttribute('src');\n if (!elUrl) {\n callback(new Error('Invalid data-src or src attribute'));\n return;\n }\n if (injectedElements.indexOf(el) !== -1) {\n injectedElements.splice(injectedElements.indexOf(el), 1);\n el = null;\n return;\n }\n injectedElements.push(el);\n el.setAttribute('src', '');\n var loadSvg = cacheRequests ? loadSvgCached : loadSvgUncached;\n loadSvg(elUrl, httpRequestWithCredentials, function (error, svg) {\n if (!svg) {\n injectedElements.splice(injectedElements.indexOf(el), 1);\n el = null;\n callback(error);\n return;\n }\n var elId = el.getAttribute('id');\n if (elId) {\n svg.setAttribute('id', elId);\n }\n var elTitle = el.getAttribute('title');\n if (elTitle) {\n svg.setAttribute('title', elTitle);\n }\n var elWidth = el.getAttribute('width');\n if (elWidth) {\n svg.setAttribute('width', elWidth);\n }\n var elHeight = el.getAttribute('height');\n if (elHeight) {\n svg.setAttribute('height', elHeight);\n }\n var mergedClasses = Array.from(new Set((0,tslib__WEBPACK_IMPORTED_MODULE_1__.__spreadArray)((0,tslib__WEBPACK_IMPORTED_MODULE_1__.__spreadArray)((0,tslib__WEBPACK_IMPORTED_MODULE_1__.__spreadArray)([], (svg.getAttribute('class') || '').split(' '), true), ['injected-svg'], false), (el.getAttribute('class') || '').split(' '), true))).join(' ').trim();\n svg.setAttribute('class', mergedClasses);\n var elStyle = el.getAttribute('style');\n if (elStyle) {\n svg.setAttribute('style', elStyle);\n }\n svg.setAttribute('data-src', elUrl);\n var elData = [].filter.call(el.attributes, function (at) {\n return /^data-\\w[\\w-]*$/.test(at.name);\n });\n Array.prototype.forEach.call(elData, function (dataAttr) {\n if (dataAttr.name && dataAttr.value) {\n svg.setAttribute(dataAttr.name, dataAttr.value);\n }\n });\n if (renumerateIRIElements) {\n var iriElementsAndProperties_1 = {\n clipPath: ['clip-path'],\n 'color-profile': ['color-profile'],\n cursor: ['cursor'],\n filter: ['filter'],\n linearGradient: ['fill', 'stroke'],\n marker: ['marker', 'marker-start', 'marker-mid', 'marker-end'],\n mask: ['mask'],\n path: [],\n pattern: ['fill', 'stroke'],\n radialGradient: ['fill', 'stroke']\n };\n var element_1;\n var elements_1;\n var properties_1;\n var currentId_1;\n var newId_1;\n Object.keys(iriElementsAndProperties_1).forEach(function (key) {\n element_1 = key;\n properties_1 = iriElementsAndProperties_1[key];\n elements_1 = svg.querySelectorAll(element_1 + '[id]');\n var _loop_1 = function _loop_1(a, elementsLen) {\n currentId_1 = elements_1[a].id;\n newId_1 = currentId_1 + '-' + uniqueId();\n var referencingElements;\n Array.prototype.forEach.call(properties_1, function (property) {\n referencingElements = svg.querySelectorAll('[' + property + '*=\"' + currentId_1 + '\"]');\n for (var b = 0, referencingElementLen = referencingElements.length; b < referencingElementLen; b++) {\n var attrValue = referencingElements[b].getAttribute(property);\n if (attrValue && !attrValue.match(new RegExp('url\\\\(\"?#' + currentId_1 + '\"?\\\\)'))) {\n continue;\n }\n referencingElements[b].setAttribute(property, 'url(#' + newId_1 + ')');\n }\n });\n var allLinks = svg.querySelectorAll('[*|href]');\n var links = [];\n for (var c = 0, allLinksLen = allLinks.length; c < allLinksLen; c++) {\n var href = allLinks[c].getAttributeNS(xlinkNamespace, 'href');\n if (href && href.toString() === '#' + elements_1[a].id) {\n links.push(allLinks[c]);\n }\n }\n for (var d = 0, linksLen = links.length; d < linksLen; d++) {\n links[d].setAttributeNS(xlinkNamespace, 'href', '#' + newId_1);\n }\n elements_1[a].id = newId_1;\n };\n for (var a = 0, elementsLen = elements_1.length; a < elementsLen; a++) {\n _loop_1(a);\n }\n });\n }\n svg.removeAttribute('xmlns:a');\n var scripts = svg.querySelectorAll('script');\n var scriptsToEval = [];\n var script;\n var scriptType;\n for (var i = 0, scriptsLen = scripts.length; i < scriptsLen; i++) {\n scriptType = scripts[i].getAttribute('type');\n if (!scriptType || scriptType === 'application/ecmascript' || scriptType === 'application/javascript' || scriptType === 'text/javascript') {\n script = scripts[i].innerText || scripts[i].textContent;\n if (script) {\n scriptsToEval.push(script);\n }\n svg.removeChild(scripts[i]);\n }\n }\n if (scriptsToEval.length > 0 && (evalScripts === 'always' || evalScripts === 'once' && !ranScripts[elUrl])) {\n for (var l = 0, scriptsToEvalLen = scriptsToEval.length; l < scriptsToEvalLen; l++) {\n new Function(scriptsToEval[l])(window);\n }\n ranScripts[elUrl] = true;\n }\n var styleTags = svg.querySelectorAll('style');\n Array.prototype.forEach.call(styleTags, function (styleTag) {\n styleTag.textContent += '';\n });\n svg.setAttribute('xmlns', svgNamespace);\n svg.setAttribute('xmlns:xlink', xlinkNamespace);\n beforeEach(svg);\n if (!el.parentNode) {\n injectedElements.splice(injectedElements.indexOf(el), 1);\n el = null;\n callback(new Error('Parent node is null'));\n return;\n }\n el.parentNode.replaceChild(svg, el);\n injectedElements.splice(injectedElements.indexOf(el), 1);\n el = null;\n callback(null, svg);\n });\n};\nvar SVGInjector = function SVGInjector(elements, _a) {\n var _b = _a === void 0 ? {} : _a,\n _c = _b.afterAll,\n afterAll = _c === void 0 ? function () {\n return undefined;\n } : _c,\n _d = _b.afterEach,\n afterEach = _d === void 0 ? function () {\n return undefined;\n } : _d,\n _e = _b.beforeEach,\n beforeEach = _e === void 0 ? function () {\n return undefined;\n } : _e,\n _f = _b.cacheRequests,\n cacheRequests = _f === void 0 ? true : _f,\n _g = _b.evalScripts,\n evalScripts = _g === void 0 ? 'never' : _g,\n _h = _b.httpRequestWithCredentials,\n httpRequestWithCredentials = _h === void 0 ? false : _h,\n _j = _b.renumerateIRIElements,\n renumerateIRIElements = _j === void 0 ? true : _j;\n if (elements && 'length' in elements) {\n var elementsLoaded_1 = 0;\n for (var i = 0, j = elements.length; i < j; i++) {\n injectElement(elements[i], evalScripts, renumerateIRIElements, cacheRequests, httpRequestWithCredentials, beforeEach, function (error, svg) {\n afterEach(error, svg);\n if (elements && 'length' in elements && elements.length === ++elementsLoaded_1) {\n afterAll(elementsLoaded_1);\n }\n });\n }\n } else if (elements) {\n injectElement(elements, evalScripts, renumerateIRIElements, cacheRequests, httpRequestWithCredentials, beforeEach, function (error, svg) {\n afterEach(error, svg);\n afterAll(1);\n elements = null;\n });\n } else {\n afterAll(0);\n }\n};\n\n\n//# sourceURL=webpack://@linkdlab/funcnodes_react_flow/../node_modules/@tanem/svg-injector/dist/svg-injector.esm.js?");
1550
1550
 
1551
1551
  /***/ }),
1552
1552
 
@@ -1966,7 +1966,7 @@ eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpac
1966
1966
  \*******************************************************/
1967
1967
  /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
1968
1968
 
1969
- eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ ReactSVG: () => (/* binding */ ReactSVG)\n/* harmony export */ });\n/* harmony import */ var _babel_runtime_helpers_objectWithoutPropertiesLoose__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @babel/runtime/helpers/objectWithoutPropertiesLoose */ \"../node_modules/react-svg/node_modules/@babel/runtime/helpers/esm/objectWithoutPropertiesLoose.js\");\n/* harmony import */ var _babel_runtime_helpers_extends__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @babel/runtime/helpers/extends */ \"../node_modules/react-svg/node_modules/@babel/runtime/helpers/esm/extends.js\");\n/* harmony import */ var _babel_runtime_helpers_inheritsLoose__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! @babel/runtime/helpers/inheritsLoose */ \"../node_modules/react-svg/node_modules/@babel/runtime/helpers/esm/inheritsLoose.js\");\n/* harmony import */ var _tanem_svg_injector__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! @tanem/svg-injector */ \"../node_modules/@tanem/svg-injector/dist/svg-injector.esm.js\");\n/* harmony import */ var prop_types__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! prop-types */ \"../node_modules/prop-types/index.js\");\n/* harmony import */ var prop_types__WEBPACK_IMPORTED_MODULE_5___default = /*#__PURE__*/__webpack_require__.n(prop_types__WEBPACK_IMPORTED_MODULE_5__);\n/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! react */ \"react\");\n\n\n\n\n\n\n\n// Hat-tip: https://github.com/mui/material-ui/tree/master/packages/mui-utils/src.\nvar ownerWindow = function ownerWindow(node) {\n var doc = (node == null ? void 0 : node.ownerDocument) || document;\n return doc.defaultView || window;\n};\n\n// Hat-tip: https://github.com/developit/preact-compat/blob/master/src/index.js#L402.\nvar shallowDiffers = function shallowDiffers(a, b) {\n for (var i in a) {\n if (!(i in b)) {\n return true;\n }\n }\n for (var _i in b) {\n if (a[_i] !== b[_i]) {\n return true;\n }\n }\n return false;\n};\nvar _excluded = [\"afterInjection\", \"beforeInjection\", \"desc\", \"evalScripts\", \"fallback\", \"httpRequestWithCredentials\", \"loading\", \"renumerateIRIElements\", \"src\", \"title\", \"useRequestCache\", \"wrapper\"];\nvar svgNamespace = 'http://www.w3.org/2000/svg';\nvar xlinkNamespace = 'http://www.w3.org/1999/xlink';\nvar ReactSVG = /*#__PURE__*/function (_React$Component) {\n function ReactSVG() {\n var _this;\n for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n _this = _React$Component.call.apply(_React$Component, [this].concat(args)) || this;\n _this.initialState = {\n hasError: false,\n isLoading: true\n };\n _this.state = _this.initialState;\n _this._isMounted = false;\n _this.reactWrapper = void 0;\n _this.nonReactWrapper = void 0;\n _this.refCallback = function (reactWrapper) {\n _this.reactWrapper = reactWrapper;\n };\n return _this;\n }\n (0,_babel_runtime_helpers_inheritsLoose__WEBPACK_IMPORTED_MODULE_2__[\"default\"])(ReactSVG, _React$Component);\n var _proto = ReactSVG.prototype;\n _proto.renderSVG = function renderSVG() {\n var _this2 = this;\n /* istanbul ignore else */\n if (this.reactWrapper instanceof ownerWindow(this.reactWrapper).Node) {\n var _this$props = this.props,\n desc = _this$props.desc,\n evalScripts = _this$props.evalScripts,\n httpRequestWithCredentials = _this$props.httpRequestWithCredentials,\n renumerateIRIElements = _this$props.renumerateIRIElements,\n src = _this$props.src,\n title = _this$props.title,\n useRequestCache = _this$props.useRequestCache;\n /* eslint-disable @typescript-eslint/no-non-null-assertion */\n var onError = this.props.onError;\n var beforeInjection = this.props.beforeInjection;\n var afterInjection = this.props.afterInjection;\n var wrapper = this.props.wrapper;\n var nonReactWrapper;\n var nonReactTarget;\n if (wrapper === 'svg') {\n nonReactWrapper = document.createElementNS(svgNamespace, wrapper);\n nonReactWrapper.setAttribute('xmlns', svgNamespace);\n nonReactWrapper.setAttribute('xmlns:xlink', xlinkNamespace);\n nonReactTarget = document.createElementNS(svgNamespace, wrapper);\n } else {\n nonReactWrapper = document.createElement(wrapper);\n nonReactTarget = document.createElement(wrapper);\n }\n nonReactWrapper.appendChild(nonReactTarget);\n nonReactTarget.dataset.src = src;\n this.nonReactWrapper = this.reactWrapper.appendChild(nonReactWrapper);\n var handleError = function handleError(error) {\n _this2.removeSVG();\n if (!_this2._isMounted) {\n onError(error);\n return;\n }\n _this2.setState(function () {\n return {\n hasError: true,\n isLoading: false\n };\n }, function () {\n onError(error);\n });\n };\n var afterEach = function afterEach(error, svg) {\n if (error) {\n handleError(error);\n return;\n }\n // TODO (Tane): It'd be better to cleanly unsubscribe from SVGInjector\n // callbacks instead of tracking a property like this.\n if (_this2._isMounted) {\n _this2.setState(function () {\n return {\n isLoading: false\n };\n }, function () {\n try {\n afterInjection(svg);\n } catch (afterInjectionError) {\n handleError(afterInjectionError);\n }\n });\n }\n };\n var beforeEach = function beforeEach(svg) {\n svg.setAttribute('role', 'img');\n if (desc) {\n var originalDesc = svg.querySelector(':scope > desc');\n if (originalDesc) {\n svg.removeChild(originalDesc);\n }\n var newDesc = document.createElement('desc');\n newDesc.innerHTML = desc;\n svg.prepend(newDesc);\n }\n if (title) {\n var originalTitle = svg.querySelector(':scope > title');\n if (originalTitle) {\n svg.removeChild(originalTitle);\n }\n var newTitle = document.createElement('title');\n newTitle.innerHTML = title;\n svg.prepend(newTitle);\n }\n try {\n beforeInjection(svg);\n } catch (error) {\n handleError(error);\n }\n };\n (0,_tanem_svg_injector__WEBPACK_IMPORTED_MODULE_3__.SVGInjector)(nonReactTarget, {\n afterEach: afterEach,\n beforeEach: beforeEach,\n cacheRequests: useRequestCache,\n evalScripts: evalScripts,\n httpRequestWithCredentials: httpRequestWithCredentials,\n renumerateIRIElements: renumerateIRIElements\n });\n }\n };\n _proto.removeSVG = function removeSVG() {\n var _this$nonReactWrapper;\n if ((_this$nonReactWrapper = this.nonReactWrapper) != null && _this$nonReactWrapper.parentNode) {\n this.nonReactWrapper.parentNode.removeChild(this.nonReactWrapper);\n this.nonReactWrapper = null;\n }\n };\n _proto.componentDidMount = function componentDidMount() {\n this._isMounted = true;\n this.renderSVG();\n };\n _proto.componentDidUpdate = function componentDidUpdate(prevProps) {\n var _this3 = this;\n if (shallowDiffers((0,_babel_runtime_helpers_extends__WEBPACK_IMPORTED_MODULE_1__[\"default\"])({}, prevProps), this.props)) {\n this.setState(function () {\n return _this3.initialState;\n }, function () {\n _this3.removeSVG();\n _this3.renderSVG();\n });\n }\n };\n _proto.componentWillUnmount = function componentWillUnmount() {\n this._isMounted = false;\n this.removeSVG();\n };\n _proto.render = function render() {\n /* eslint-disable @typescript-eslint/no-unused-vars */\n var _this$props2 = this.props;\n _this$props2.afterInjection;\n _this$props2.beforeInjection;\n _this$props2.desc;\n _this$props2.evalScripts;\n var Fallback = _this$props2.fallback;\n _this$props2.httpRequestWithCredentials;\n var Loading = _this$props2.loading;\n _this$props2.renumerateIRIElements;\n _this$props2.src;\n _this$props2.title;\n _this$props2.useRequestCache;\n var wrapper = _this$props2.wrapper,\n rest = (0,_babel_runtime_helpers_objectWithoutPropertiesLoose__WEBPACK_IMPORTED_MODULE_0__[\"default\"])(_this$props2, _excluded);\n /* eslint-enable @typescript-eslint/no-unused-vars */\n // eslint-disable-next-line @typescript-eslint/no-non-null-assertion\n var Wrapper = wrapper;\n return /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_4__.createElement(Wrapper, (0,_babel_runtime_helpers_extends__WEBPACK_IMPORTED_MODULE_1__[\"default\"])({}, rest, {\n ref: this.refCallback\n }, wrapper === 'svg' ? {\n xmlns: svgNamespace,\n xmlnsXlink: xlinkNamespace\n } : {}), this.state.isLoading && Loading && /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_4__.createElement(Loading, null), this.state.hasError && Fallback && /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_4__.createElement(Fallback, null));\n };\n return ReactSVG;\n}(react__WEBPACK_IMPORTED_MODULE_4__.Component);\nReactSVG.defaultProps = {\n afterInjection: function afterInjection() {\n return undefined;\n },\n beforeInjection: function beforeInjection() {\n return undefined;\n },\n desc: '',\n evalScripts: 'never',\n fallback: null,\n httpRequestWithCredentials: false,\n loading: null,\n onError: function onError() {\n return undefined;\n },\n renumerateIRIElements: true,\n title: '',\n useRequestCache: true,\n wrapper: 'div'\n};\nReactSVG.propTypes = {\n afterInjection: prop_types__WEBPACK_IMPORTED_MODULE_5__.func,\n beforeInjection: prop_types__WEBPACK_IMPORTED_MODULE_5__.func,\n desc: prop_types__WEBPACK_IMPORTED_MODULE_5__.string,\n evalScripts: prop_types__WEBPACK_IMPORTED_MODULE_5__.oneOf(['always', 'once', 'never']),\n fallback: prop_types__WEBPACK_IMPORTED_MODULE_5__.oneOfType([prop_types__WEBPACK_IMPORTED_MODULE_5__.func, prop_types__WEBPACK_IMPORTED_MODULE_5__.object, prop_types__WEBPACK_IMPORTED_MODULE_5__.string]),\n httpRequestWithCredentials: prop_types__WEBPACK_IMPORTED_MODULE_5__.bool,\n loading: prop_types__WEBPACK_IMPORTED_MODULE_5__.oneOfType([prop_types__WEBPACK_IMPORTED_MODULE_5__.func, prop_types__WEBPACK_IMPORTED_MODULE_5__.object, prop_types__WEBPACK_IMPORTED_MODULE_5__.string]),\n onError: prop_types__WEBPACK_IMPORTED_MODULE_5__.func,\n renumerateIRIElements: prop_types__WEBPACK_IMPORTED_MODULE_5__.bool,\n src: prop_types__WEBPACK_IMPORTED_MODULE_5__.string.isRequired,\n title: prop_types__WEBPACK_IMPORTED_MODULE_5__.string,\n useRequestCache: prop_types__WEBPACK_IMPORTED_MODULE_5__.bool,\n wrapper: prop_types__WEBPACK_IMPORTED_MODULE_5__.oneOf(['div', 'span', 'svg'])\n};\n\n\n//# sourceURL=webpack://@linkdlab/funcnodes_react_flow/../node_modules/react-svg/dist/react-svg.esm.js?");
1969
+ eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ ReactSVG: () => (/* binding */ ReactSVG)\n/* harmony export */ });\n/* harmony import */ var _babel_runtime_helpers_objectWithoutPropertiesLoose__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @babel/runtime/helpers/objectWithoutPropertiesLoose */ \"../node_modules/@babel/runtime/helpers/esm/objectWithoutPropertiesLoose.js\");\n/* harmony import */ var _babel_runtime_helpers_extends__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @babel/runtime/helpers/extends */ \"../node_modules/@babel/runtime/helpers/esm/extends.js\");\n/* harmony import */ var _babel_runtime_helpers_inheritsLoose__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! @babel/runtime/helpers/inheritsLoose */ \"../node_modules/@babel/runtime/helpers/esm/inheritsLoose.js\");\n/* harmony import */ var _tanem_svg_injector__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! @tanem/svg-injector */ \"../node_modules/@tanem/svg-injector/dist/svg-injector.esm.js\");\n/* harmony import */ var prop_types__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! prop-types */ \"../node_modules/prop-types/index.js\");\n/* harmony import */ var prop_types__WEBPACK_IMPORTED_MODULE_5___default = /*#__PURE__*/__webpack_require__.n(prop_types__WEBPACK_IMPORTED_MODULE_5__);\n/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! react */ \"react\");\n\n\n\n\n\n\n\n// Hat-tip: https://github.com/mui/material-ui/tree/master/packages/mui-utils/src.\nvar ownerWindow = function ownerWindow(node) {\n var doc = (node == null ? void 0 : node.ownerDocument) || document;\n return doc.defaultView || window;\n};\n\n// Hat-tip: https://github.com/developit/preact-compat/blob/master/src/index.js#L402.\nvar shallowDiffers = function shallowDiffers(a, b) {\n for (var i in a) {\n if (!(i in b)) {\n return true;\n }\n }\n for (var _i in b) {\n if (a[_i] !== b[_i]) {\n return true;\n }\n }\n return false;\n};\nvar _excluded = [\"afterInjection\", \"beforeInjection\", \"desc\", \"evalScripts\", \"fallback\", \"httpRequestWithCredentials\", \"loading\", \"renumerateIRIElements\", \"src\", \"title\", \"useRequestCache\", \"wrapper\"];\nvar svgNamespace = 'http://www.w3.org/2000/svg';\nvar xlinkNamespace = 'http://www.w3.org/1999/xlink';\nvar ReactSVG = /*#__PURE__*/function (_React$Component) {\n function ReactSVG() {\n var _this;\n for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n _this = _React$Component.call.apply(_React$Component, [this].concat(args)) || this;\n _this.initialState = {\n hasError: false,\n isLoading: true\n };\n _this.state = _this.initialState;\n _this._isMounted = false;\n _this.reactWrapper = void 0;\n _this.nonReactWrapper = void 0;\n _this.refCallback = function (reactWrapper) {\n _this.reactWrapper = reactWrapper;\n };\n return _this;\n }\n (0,_babel_runtime_helpers_inheritsLoose__WEBPACK_IMPORTED_MODULE_2__[\"default\"])(ReactSVG, _React$Component);\n var _proto = ReactSVG.prototype;\n _proto.renderSVG = function renderSVG() {\n var _this2 = this;\n /* istanbul ignore else */\n if (this.reactWrapper instanceof ownerWindow(this.reactWrapper).Node) {\n var _this$props = this.props,\n desc = _this$props.desc,\n evalScripts = _this$props.evalScripts,\n httpRequestWithCredentials = _this$props.httpRequestWithCredentials,\n renumerateIRIElements = _this$props.renumerateIRIElements,\n src = _this$props.src,\n title = _this$props.title,\n useRequestCache = _this$props.useRequestCache;\n /* eslint-disable @typescript-eslint/no-non-null-assertion */\n var onError = this.props.onError;\n var beforeInjection = this.props.beforeInjection;\n var afterInjection = this.props.afterInjection;\n var wrapper = this.props.wrapper;\n var nonReactWrapper;\n var nonReactTarget;\n if (wrapper === 'svg') {\n nonReactWrapper = document.createElementNS(svgNamespace, wrapper);\n nonReactWrapper.setAttribute('xmlns', svgNamespace);\n nonReactWrapper.setAttribute('xmlns:xlink', xlinkNamespace);\n nonReactTarget = document.createElementNS(svgNamespace, wrapper);\n } else {\n nonReactWrapper = document.createElement(wrapper);\n nonReactTarget = document.createElement(wrapper);\n }\n nonReactWrapper.appendChild(nonReactTarget);\n nonReactTarget.dataset.src = src;\n this.nonReactWrapper = this.reactWrapper.appendChild(nonReactWrapper);\n var handleError = function handleError(error) {\n _this2.removeSVG();\n if (!_this2._isMounted) {\n onError(error);\n return;\n }\n _this2.setState(function () {\n return {\n hasError: true,\n isLoading: false\n };\n }, function () {\n onError(error);\n });\n };\n var afterEach = function afterEach(error, svg) {\n if (error) {\n handleError(error);\n return;\n }\n // TODO (Tane): It'd be better to cleanly unsubscribe from SVGInjector\n // callbacks instead of tracking a property like this.\n if (_this2._isMounted) {\n _this2.setState(function () {\n return {\n isLoading: false\n };\n }, function () {\n try {\n afterInjection(svg);\n } catch (afterInjectionError) {\n handleError(afterInjectionError);\n }\n });\n }\n };\n var beforeEach = function beforeEach(svg) {\n svg.setAttribute('role', 'img');\n if (desc) {\n var originalDesc = svg.querySelector(':scope > desc');\n if (originalDesc) {\n svg.removeChild(originalDesc);\n }\n var newDesc = document.createElement('desc');\n newDesc.innerHTML = desc;\n svg.prepend(newDesc);\n }\n if (title) {\n var originalTitle = svg.querySelector(':scope > title');\n if (originalTitle) {\n svg.removeChild(originalTitle);\n }\n var newTitle = document.createElement('title');\n newTitle.innerHTML = title;\n svg.prepend(newTitle);\n }\n try {\n beforeInjection(svg);\n } catch (error) {\n handleError(error);\n }\n };\n (0,_tanem_svg_injector__WEBPACK_IMPORTED_MODULE_3__.SVGInjector)(nonReactTarget, {\n afterEach: afterEach,\n beforeEach: beforeEach,\n cacheRequests: useRequestCache,\n evalScripts: evalScripts,\n httpRequestWithCredentials: httpRequestWithCredentials,\n renumerateIRIElements: renumerateIRIElements\n });\n }\n };\n _proto.removeSVG = function removeSVG() {\n var _this$nonReactWrapper;\n if ((_this$nonReactWrapper = this.nonReactWrapper) != null && _this$nonReactWrapper.parentNode) {\n this.nonReactWrapper.parentNode.removeChild(this.nonReactWrapper);\n this.nonReactWrapper = null;\n }\n };\n _proto.componentDidMount = function componentDidMount() {\n this._isMounted = true;\n this.renderSVG();\n };\n _proto.componentDidUpdate = function componentDidUpdate(prevProps) {\n var _this3 = this;\n if (shallowDiffers((0,_babel_runtime_helpers_extends__WEBPACK_IMPORTED_MODULE_1__[\"default\"])({}, prevProps), this.props)) {\n this.setState(function () {\n return _this3.initialState;\n }, function () {\n _this3.removeSVG();\n _this3.renderSVG();\n });\n }\n };\n _proto.componentWillUnmount = function componentWillUnmount() {\n this._isMounted = false;\n this.removeSVG();\n };\n _proto.render = function render() {\n /* eslint-disable @typescript-eslint/no-unused-vars */\n var _this$props2 = this.props;\n _this$props2.afterInjection;\n _this$props2.beforeInjection;\n _this$props2.desc;\n _this$props2.evalScripts;\n var Fallback = _this$props2.fallback;\n _this$props2.httpRequestWithCredentials;\n var Loading = _this$props2.loading;\n _this$props2.renumerateIRIElements;\n _this$props2.src;\n _this$props2.title;\n _this$props2.useRequestCache;\n var wrapper = _this$props2.wrapper,\n rest = (0,_babel_runtime_helpers_objectWithoutPropertiesLoose__WEBPACK_IMPORTED_MODULE_0__[\"default\"])(_this$props2, _excluded);\n /* eslint-enable @typescript-eslint/no-unused-vars */\n // eslint-disable-next-line @typescript-eslint/no-non-null-assertion\n var Wrapper = wrapper;\n return /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_4__.createElement(Wrapper, (0,_babel_runtime_helpers_extends__WEBPACK_IMPORTED_MODULE_1__[\"default\"])({}, rest, {\n ref: this.refCallback\n }, wrapper === 'svg' ? {\n xmlns: svgNamespace,\n xmlnsXlink: xlinkNamespace\n } : {}), this.state.isLoading && Loading && /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_4__.createElement(Loading, null), this.state.hasError && Fallback && /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_4__.createElement(Fallback, null));\n };\n return ReactSVG;\n}(react__WEBPACK_IMPORTED_MODULE_4__.Component);\nReactSVG.defaultProps = {\n afterInjection: function afterInjection() {\n return undefined;\n },\n beforeInjection: function beforeInjection() {\n return undefined;\n },\n desc: '',\n evalScripts: 'never',\n fallback: null,\n httpRequestWithCredentials: false,\n loading: null,\n onError: function onError() {\n return undefined;\n },\n renumerateIRIElements: true,\n title: '',\n useRequestCache: true,\n wrapper: 'div'\n};\nReactSVG.propTypes = {\n afterInjection: prop_types__WEBPACK_IMPORTED_MODULE_5__.func,\n beforeInjection: prop_types__WEBPACK_IMPORTED_MODULE_5__.func,\n desc: prop_types__WEBPACK_IMPORTED_MODULE_5__.string,\n evalScripts: prop_types__WEBPACK_IMPORTED_MODULE_5__.oneOf(['always', 'once', 'never']),\n fallback: prop_types__WEBPACK_IMPORTED_MODULE_5__.oneOfType([prop_types__WEBPACK_IMPORTED_MODULE_5__.func, prop_types__WEBPACK_IMPORTED_MODULE_5__.object, prop_types__WEBPACK_IMPORTED_MODULE_5__.string]),\n httpRequestWithCredentials: prop_types__WEBPACK_IMPORTED_MODULE_5__.bool,\n loading: prop_types__WEBPACK_IMPORTED_MODULE_5__.oneOfType([prop_types__WEBPACK_IMPORTED_MODULE_5__.func, prop_types__WEBPACK_IMPORTED_MODULE_5__.object, prop_types__WEBPACK_IMPORTED_MODULE_5__.string]),\n onError: prop_types__WEBPACK_IMPORTED_MODULE_5__.func,\n renumerateIRIElements: prop_types__WEBPACK_IMPORTED_MODULE_5__.bool,\n src: prop_types__WEBPACK_IMPORTED_MODULE_5__.string.isRequired,\n title: prop_types__WEBPACK_IMPORTED_MODULE_5__.string,\n useRequestCache: prop_types__WEBPACK_IMPORTED_MODULE_5__.bool,\n wrapper: prop_types__WEBPACK_IMPORTED_MODULE_5__.oneOf(['div', 'span', 'svg'])\n};\n\n\n//# sourceURL=webpack://@linkdlab/funcnodes_react_flow/../node_modules/react-svg/dist/react-svg.esm.js?");
1970
1970
 
1971
1971
  /***/ }),
1972
1972
 
@@ -2326,7 +2326,7 @@ eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpac
2326
2326
  \**********************************************/
2327
2327
  /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
2328
2328
 
2329
- eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ Base64ImageRenderer: () => (/* binding */ Base64ImageRenderer),\n/* harmony export */ SVGImageRenderer: () => (/* binding */ SVGImageRenderer)\n/* harmony export */ });\n/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! react */ \"react\");\n/* harmony import */ var react_svg__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! react-svg */ \"../node_modules/react-svg/dist/react-svg.esm.js\");\n\n\nvar Base64ImageRenderer = function (_a) {\n var value = _a.value, renderoptions = _a.renderoptions;\n if (renderoptions === undefined)\n renderoptions = {};\n if (renderoptions.format === undefined)\n renderoptions.format = \"jpeg\";\n return (react__WEBPACK_IMPORTED_MODULE_0__[\"default\"].createElement(\"img\", { src: \"data:image/\" + renderoptions.format + \";base64,\" + value, style: {\n maxWidth: \"100%\",\n maxHeight: \"100%\",\n } }));\n};\nvar SVGImageRenderer = function (_a) {\n var value = _a.value;\n return (react__WEBPACK_IMPORTED_MODULE_0__[\"default\"].createElement(react_svg__WEBPACK_IMPORTED_MODULE_1__.ReactSVG, { src: \"data:image/svg+xml;base64,\".concat(btoa(value)), style: {\n maxWidth: \"100%\",\n maxHeight: \"100%\",\n }, beforeInjection: function (svg) {\n // Add a class name to the SVG element. Note: You'll need a classList\n // polyfill if you're using this in older browsers.\n svg.classList.add(\"svg-class-name\");\n // Add inline style to the SVG element.\n svg.setAttribute(\"style\", \"max-width: 100%; max-height: 100%;\");\n svg.setAttribute(\"width\", \"100%\");\n svg.setAttribute(\"height\", \"100%\");\n } }));\n};\n\n\n\n//# sourceURL=webpack://@linkdlab/funcnodes_react_flow/./src/frontend/datarenderer/images.tsx?");
2329
+ eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ Base64ImageRenderer: () => (/* binding */ Base64ImageRenderer),\n/* harmony export */ SVGImageRenderer: () => (/* binding */ SVGImageRenderer)\n/* harmony export */ });\n/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! react */ \"react\");\n/* harmony import */ var react_svg__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! react-svg */ \"../node_modules/react-svg/dist/react-svg.esm.js\");\n\n\nvar Base64ImageRenderer = function (_a) {\n var value = _a.value, renderoptions = _a.renderoptions;\n if (renderoptions === undefined)\n renderoptions = {};\n if (renderoptions.format === undefined)\n renderoptions.format = \"jpeg\";\n return (react__WEBPACK_IMPORTED_MODULE_0__[\"default\"].createElement(\"img\", { src: \"data:image/\" + renderoptions.format + \";base64, \" + value, style: {\n maxWidth: \"100%\",\n maxHeight: \"100%\",\n } }));\n};\nvar SVGImageRenderer = function (_a) {\n var value = _a.value;\n return (react__WEBPACK_IMPORTED_MODULE_0__[\"default\"].createElement(react_svg__WEBPACK_IMPORTED_MODULE_1__.ReactSVG, { src: \"data:image/svg+xml;base64,\".concat(btoa(value)), style: {\n maxWidth: \"100%\",\n maxHeight: \"100%\",\n }, beforeInjection: function (svg) {\n // Add a class name to the SVG element. Note: You'll need a classList\n // polyfill if you're using this in older browsers.\n svg.classList.add(\"svg-class-name\");\n // Add inline style to the SVG element.\n svg.setAttribute(\"style\", \"max-width: 100%; max-height: 100%;\");\n svg.setAttribute(\"width\", \"100%\");\n svg.setAttribute(\"height\", \"100%\");\n } }));\n};\n\n\n\n//# sourceURL=webpack://@linkdlab/funcnodes_react_flow/./src/frontend/datarenderer/images.tsx?");
2330
2330
 
2331
2331
  /***/ }),
2332
2332
 
@@ -2436,7 +2436,7 @@ eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpac
2436
2436
  \*********************************************************/
2437
2437
  /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
2438
2438
 
2439
- eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ BooleanInput: () => (/* binding */ BooleanInput),\n/* harmony export */ ColorInput: () => (/* binding */ ColorInput),\n/* harmony export */ FloatInput: () => (/* binding */ FloatInput),\n/* harmony export */ IntegerInput: () => (/* binding */ IntegerInput),\n/* harmony export */ SelectionInput: () => (/* binding */ SelectionInput),\n/* harmony export */ StringInput: () => (/* binding */ StringInput)\n/* harmony export */ });\n/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! react */ \"react\");\n/* harmony import */ var _funcnodesreactflow__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../funcnodesreactflow */ \"./src/frontend/funcnodesreactflow/index.tsx\");\n/* harmony import */ var _utils_colorpicker__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../utils/colorpicker */ \"./src/frontend/utils/colorpicker.tsx\");\n/* harmony import */ var _radix_ui_react_slider__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! @radix-ui/react-slider */ \"../node_modules/@radix-ui/react-slider/dist/index.mjs\");\n/* harmony import */ var _radix_ui_react_tooltip__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! @radix-ui/react-tooltip */ \"../node_modules/@radix-ui/react-tooltip/dist/index.mjs\");\n/* harmony import */ var _utils_select__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../../utils/select */ \"./src/frontend/utils/select.tsx\");\n\n\n\n\n\n\n\nvar BooleanInput = function (_a) {\n var io = _a.io, inputconverter = _a.inputconverter;\n var fnrf_zst = (0,react__WEBPACK_IMPORTED_MODULE_0__.useContext)(_funcnodesreactflow__WEBPACK_IMPORTED_MODULE_1__.FuncNodesContext);\n var indeterminate = io.value === undefined;\n var cRef = (0,react__WEBPACK_IMPORTED_MODULE_0__.useRef)(null);\n (0,react__WEBPACK_IMPORTED_MODULE_0__.useEffect)(function () {\n if (!cRef.current)\n return;\n cRef.current.indeterminate = indeterminate;\n }, [cRef, indeterminate]);\n var on_change = function (e) {\n var _a;\n var new_value = e.target.checked;\n try {\n new_value = inputconverter[0](e.target.checked);\n }\n catch (e) { }\n (_a = fnrf_zst.worker) === null || _a === void 0 ? void 0 : _a.set_io_value({\n nid: io.node,\n ioid: io.id,\n value: new_value,\n set_default: io.render_options.set_default,\n });\n };\n return (react__WEBPACK_IMPORTED_MODULE_0__[\"default\"].createElement(\"input\", { ref: cRef, type: \"checkbox\", className: \"styledcheckbox booleaninput\", checked: !!inputconverter[1](io.value), onChange: on_change, disabled: io.connected }));\n};\nvar NumberInput = function (_a) {\n var _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m;\n var io = _a.io, inputconverter = _a.inputconverter, _o = _a.parser, parser = _o === void 0 ? function (n) { return parseFloat(n); } : _o;\n var fnrf_zst = (0,react__WEBPACK_IMPORTED_MODULE_0__.useContext)(_funcnodesreactflow__WEBPACK_IMPORTED_MODULE_1__.FuncNodesContext);\n var _p = (0,react__WEBPACK_IMPORTED_MODULE_0__.useState)(inputconverter[1](io.value)), tempvalue = _p[0], setTempValue = _p[1];\n (0,react__WEBPACK_IMPORTED_MODULE_0__.useEffect)(function () {\n setTempValue(inputconverter[1](io.value));\n }, [io.value]);\n var set_new_value = function (new_value) {\n var _a, _b, _c;\n new_value = parser(parseFloat(new_value.toString()).toString() // parse float for e notation\n );\n if (isNaN(new_value)) {\n new_value = \"<NoValue>\";\n setTempValue(\"\");\n }\n else {\n if (((_a = io.value_options) === null || _a === void 0 ? void 0 : _a.min) !== undefined &&\n new_value < io.value_options.min)\n new_value = io.value_options.min;\n if (((_b = io.value_options) === null || _b === void 0 ? void 0 : _b.max) !== undefined &&\n new_value > io.value_options.max)\n new_value = io.value_options.max;\n setTempValue(new_value.toString());\n }\n try {\n new_value = inputconverter[0](new_value);\n }\n catch (e) { }\n (_c = fnrf_zst.worker) === null || _c === void 0 ? void 0 : _c.set_io_value({\n nid: io.node,\n ioid: io.id,\n value: new_value,\n set_default: io.render_options.set_default,\n });\n };\n var on_change = function (e) {\n set_new_value(e.target.value);\n };\n var v = io.connected ? inputconverter[1](io.value) : tempvalue;\n if (v === undefined)\n v = (_b = io.value_options) === null || _b === void 0 ? void 0 : _b.min;\n if (v === undefined)\n v = (_c = io.value_options) === null || _c === void 0 ? void 0 : _c.max;\n if (v === undefined)\n v = \"\";\n if (v === null)\n v = \"\";\n if (((_d = io.value_options) === null || _d === void 0 ? void 0 : _d.max) !== undefined &&\n ((_e = io.value_options) === null || _e === void 0 ? void 0 : _e.min) !== undefined) {\n return (react__WEBPACK_IMPORTED_MODULE_0__[\"default\"].createElement(\"div\", { style: { minWidth: \"100px\" }, className: \"SliderContainer\" },\n react__WEBPACK_IMPORTED_MODULE_0__[\"default\"].createElement(_radix_ui_react_slider__WEBPACK_IMPORTED_MODULE_4__.Root, { className: \"SliderRoot\", value: [v === undefined ? (_f = io.value_options) === null || _f === void 0 ? void 0 : _f.min : v], min: (_g = io.value_options) === null || _g === void 0 ? void 0 : _g.min, max: (_h = io.value_options) === null || _h === void 0 ? void 0 : _h.max, step: io.render_options.step ||\n (((_j = io.value_options) === null || _j === void 0 ? void 0 : _j.max) - ((_k = io.value_options) === null || _k === void 0 ? void 0 : _k.min)) / 1000, disabled: io.connected, onValueCommit: function (value) {\n if (isNaN(value[0]))\n return;\n set_new_value(value[0]);\n }, onValueChange: function (value) {\n if (isNaN(value[0]))\n return;\n setTempValue(value[0].toString());\n } },\n react__WEBPACK_IMPORTED_MODULE_0__[\"default\"].createElement(_radix_ui_react_slider__WEBPACK_IMPORTED_MODULE_4__.Track, { className: \"SliderTrack\" },\n react__WEBPACK_IMPORTED_MODULE_0__[\"default\"].createElement(_radix_ui_react_slider__WEBPACK_IMPORTED_MODULE_4__.Range, { className: \"SliderRange\" })),\n react__WEBPACK_IMPORTED_MODULE_0__[\"default\"].createElement(_radix_ui_react_tooltip__WEBPACK_IMPORTED_MODULE_5__.TooltipProvider, null,\n react__WEBPACK_IMPORTED_MODULE_0__[\"default\"].createElement(_radix_ui_react_tooltip__WEBPACK_IMPORTED_MODULE_5__.Root, { open: true },\n react__WEBPACK_IMPORTED_MODULE_0__[\"default\"].createElement(_radix_ui_react_tooltip__WEBPACK_IMPORTED_MODULE_5__.Trigger, { asChild: true },\n react__WEBPACK_IMPORTED_MODULE_0__[\"default\"].createElement(_radix_ui_react_slider__WEBPACK_IMPORTED_MODULE_4__.Thumb, { className: \"SliderThumb\" })),\n react__WEBPACK_IMPORTED_MODULE_0__[\"default\"].createElement(_radix_ui_react_tooltip__WEBPACK_IMPORTED_MODULE_5__.Content, { className: \"SliderTooltipContent\" }, v))))));\n }\n return (react__WEBPACK_IMPORTED_MODULE_0__[\"default\"].createElement(\"input\", { type: \"text\", className: \"nodedatainput styledinput numberinput\", value: v, onChange: function (e) { return setTempValue(e.target.value); }, onBlur: on_change, onKeyDown: function (e) {\n // on key up add step to value\n if (e.key === \"ArrowUp\") {\n var step = io.render_options.step || 1;\n if (e.shiftKey)\n step *= 10;\n var new_value = (parseFloat(v) || 0) + step;\n // setTempValue(new_value.toString());\n set_new_value(new_value);\n return;\n }\n // on key down subtract step to value\n if (e.key === \"ArrowDown\") {\n var step = io.render_options.step || 1;\n if (e.shiftKey)\n step *= 10;\n var new_value = (parseFloat(v) || 0) - step;\n // setTempValue(new_value.toString());\n set_new_value(new_value);\n return;\n }\n //accept only numbers\n if (!/^[0-9.eE+-]$/.test(e.key) &&\n ![\"Backspace\", \"ArrowLeft\", \"ArrowRight\", \"Delete\", \"Tab\"].includes(e.key)) {\n e.preventDefault();\n }\n }, disabled: io.connected, step: io.render_options.step, min: (_l = io.value_options) === null || _l === void 0 ? void 0 : _l.min, max: (_m = io.value_options) === null || _m === void 0 ? void 0 : _m.max }));\n};\nvar FloatInput = function (_a) {\n var io = _a.io, inputconverter = _a.inputconverter;\n return NumberInput({ io: io, inputconverter: inputconverter, parser: parseFloat });\n};\nvar IntegerInput = function (_a) {\n var io = _a.io, inputconverter = _a.inputconverter;\n return NumberInput({ io: io, inputconverter: inputconverter, parser: parseInt });\n};\nvar StringInput = function (_a) {\n var io = _a.io, inputconverter = _a.inputconverter;\n var fnrf_zst = (0,react__WEBPACK_IMPORTED_MODULE_0__.useContext)(_funcnodesreactflow__WEBPACK_IMPORTED_MODULE_1__.FuncNodesContext);\n var _b = (0,react__WEBPACK_IMPORTED_MODULE_0__.useState)(inputconverter[1](io.value)), tempvalue = _b[0], setTempValue = _b[1];\n (0,react__WEBPACK_IMPORTED_MODULE_0__.useEffect)(function () {\n setTempValue(inputconverter[1](io.value));\n }, [io.value]);\n var on_change = function (e) {\n var _a;\n var new_value = e.target.value;\n if (!new_value)\n new_value = \"<NoValue>\";\n try {\n new_value = inputconverter[0](new_value);\n }\n catch (e) { }\n (_a = fnrf_zst.worker) === null || _a === void 0 ? void 0 : _a.set_io_value({\n nid: io.node,\n ioid: io.id,\n value: new_value,\n set_default: io.render_options.set_default,\n });\n };\n var v = io.connected ? inputconverter[1](io.value) : tempvalue;\n if (v === undefined || v === null)\n v = \"\";\n return (react__WEBPACK_IMPORTED_MODULE_0__[\"default\"].createElement(\"input\", { className: \"nodedatainput styledinput stringinput\", value: v, onChange: function (e) { return setTempValue(e.target.value); }, onBlur: on_change, disabled: io.connected }));\n};\nvar _parse_string = function (s) { return s; };\nvar _parse_number = function (s) { return parseFloat(s); };\nvar _parse_boolean = function (s) { return !!s; };\nvar _parse_null = function (s) { return (s === \"null\" ? null : s); };\nvar get_parser = function (datatype) {\n if (datatype === \"nuinputconvertermber\") {\n return _parse_number;\n }\n if (datatype === \"boolean\") {\n return _parse_boolean;\n }\n if (datatype === \"undefined\") {\n return _parse_null;\n }\n return _parse_string;\n};\nvar SelectionInput = function (_a) {\n var _b;\n var io = _a.io, inputconverter = _a.inputconverter, parser = _a.parser;\n var options = ((_b = io.value_options) === null || _b === void 0 ? void 0 : _b.options) || [];\n console.log(\"options\", io.value_options);\n if (Array.isArray(options)) {\n options = {\n type: \"enum\",\n values: options,\n keys: options.map(function (x) { return x.toString(); }),\n nullable: false,\n };\n }\n options = options;\n if (options.nullable &&\n !options.values.includes(null) &&\n !options.keys.includes(\"None\")) {\n options.values.unshift(null);\n options.keys.unshift(\"None\");\n }\n //make key value pairs\n var optionsmap = [];\n for (var i = 0; i < options.values.length; i++) {\n // set const t to \"string\", \"number\",\"boolean\" \"null\" depenting on the type of options.values[i]\n var t = options.values[i] === null || options.values[i] === undefined\n ? \"undefined\"\n : typeof options.values[i];\n var v_1 = options.values[i];\n if (v_1 === null) {\n v_1 = \"null\";\n }\n if (v_1 === undefined) {\n v_1 = \"undefined\";\n }\n optionsmap.push([options.keys[i], v_1.toString(), t]);\n }\n var fnrf_zst = (0,react__WEBPACK_IMPORTED_MODULE_0__.useContext)(_funcnodesreactflow__WEBPACK_IMPORTED_MODULE_1__.FuncNodesContext);\n var on_change_value = function (_a) {\n var _b;\n var value = _a.value, \n // label\n datatype = _a.datatype;\n // Use the existing parser or get a new one based on the datatype\n var p = parser || get_parser(datatype);\n var new_value = p(value);\n try {\n new_value = inputconverter[0](value);\n }\n catch (e) { }\n (_b = fnrf_zst.worker) === null || _b === void 0 ? void 0 : _b.set_io_value({\n nid: io.node,\n ioid: io.id,\n value: new_value,\n set_default: io.render_options.set_default,\n });\n };\n var on_change = function (e) {\n // Find the selected option element\n var selectedOption = e.target.options[e.target.selectedIndex];\n // Retrieve the datatype attribute from the selected option\n var datatype = selectedOption.getAttribute(\"datatype\");\n on_change_value({\n value: e.target.value,\n // label: selectedOption.text,\n datatype: datatype || \"string\",\n });\n };\n var v = io.value;\n if (v === null) {\n v = \"null\";\n }\n if (v === undefined) {\n v = \"undefined\";\n }\n var default_entry = optionsmap.find(function (option) { return option[1] === v; });\n var default_value;\n if (default_entry !== undefined) {\n default_value = {\n value: default_entry[1],\n label: default_entry[0],\n datatype: default_entry[2],\n };\n }\n return (react__WEBPACK_IMPORTED_MODULE_0__[\"default\"].createElement(_utils_select__WEBPACK_IMPORTED_MODULE_3__[\"default\"], { className: \"nodedatainput styleddropdown\", options: optionsmap.map(function (option) { return ({\n value: option[1],\n label: option[0],\n datatype: option[2],\n }); }), defaultValue: default_value, onChange: function (newValue) {\n if (newValue === null)\n newValue = {\n value: \"<NoValue>\",\n label: \"<NoValue>\",\n datatype: \"string\",\n };\n on_change_value(newValue);\n } }));\n return (react__WEBPACK_IMPORTED_MODULE_0__[\"default\"].createElement(\"select\", { value: v, onChange: on_change, disabled: io.connected, className: \"nodedatainput styleddropdown\" },\n react__WEBPACK_IMPORTED_MODULE_0__[\"default\"].createElement(\"option\", { value: \"<NoValue>\", disabled: true }, \"select\"),\n optionsmap.map(function (option) { return (react__WEBPACK_IMPORTED_MODULE_0__[\"default\"].createElement(\"option\", { key: option[0], value: option[1], datatype: option[2] }, option[0])); })));\n};\nvar ColorInput = function (_a) {\n var _b;\n var io = _a.io;\n var fnrf_zst = (0,react__WEBPACK_IMPORTED_MODULE_0__.useContext)(_funcnodesreactflow__WEBPACK_IMPORTED_MODULE_1__.FuncNodesContext);\n var colorspace = ((_b = io.value_options) === null || _b === void 0 ? void 0 : _b.colorspace) || \"hex\";\n var on_change = function (colorconverter) {\n var _a;\n var new_value = \"<NoValue>\";\n if (colorconverter) {\n if (colorconverter[colorspace])\n new_value = colorconverter[colorspace]();\n else\n new_value = colorconverter.hex();\n }\n if (colorconverter === null)\n new_value = null;\n try {\n new_value = new_value;\n }\n catch (e) { }\n (_a = fnrf_zst.worker) === null || _a === void 0 ? void 0 : _a.set_io_value({\n nid: io.node,\n ioid: io.id,\n value: new_value,\n set_default: io.render_options.set_default,\n });\n };\n var allow_null = false;\n if (typeof io.type !== \"string\" &&\n \"anyOf\" in io.type &&\n io.type.anyOf !== undefined) {\n allow_null = io.type.anyOf.some(function (x) { return x === \"None\"; });\n }\n return (react__WEBPACK_IMPORTED_MODULE_0__[\"default\"].createElement(_utils_colorpicker__WEBPACK_IMPORTED_MODULE_2__[\"default\"], { onChange: on_change, inicolordata: io.value, allow_null: allow_null, inicolorspace: colorspace }));\n};\n\n\n\n//# sourceURL=webpack://@linkdlab/funcnodes_react_flow/./src/frontend/node/io/default_input_renderer.tsx?");
2439
+ eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ BooleanInput: () => (/* binding */ BooleanInput),\n/* harmony export */ ColorInput: () => (/* binding */ ColorInput),\n/* harmony export */ FloatInput: () => (/* binding */ FloatInput),\n/* harmony export */ IntegerInput: () => (/* binding */ IntegerInput),\n/* harmony export */ SelectionInput: () => (/* binding */ SelectionInput),\n/* harmony export */ StringInput: () => (/* binding */ StringInput)\n/* harmony export */ });\n/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! react */ \"react\");\n/* harmony import */ var _funcnodesreactflow__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../funcnodesreactflow */ \"./src/frontend/funcnodesreactflow/index.tsx\");\n/* harmony import */ var _utils_colorpicker__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../utils/colorpicker */ \"./src/frontend/utils/colorpicker.tsx\");\n/* harmony import */ var _radix_ui_react_slider__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! @radix-ui/react-slider */ \"../node_modules/@radix-ui/react-slider/dist/index.mjs\");\n/* harmony import */ var _radix_ui_react_tooltip__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! @radix-ui/react-tooltip */ \"../node_modules/@radix-ui/react-tooltip/dist/index.mjs\");\n/* harmony import */ var _utils_select__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../../utils/select */ \"./src/frontend/utils/select.tsx\");\n\n\n\n\n\n\n\nvar BooleanInput = function (_a) {\n var io = _a.io, inputconverter = _a.inputconverter;\n var fnrf_zst = (0,react__WEBPACK_IMPORTED_MODULE_0__.useContext)(_funcnodesreactflow__WEBPACK_IMPORTED_MODULE_1__.FuncNodesContext);\n var indeterminate = io.value === undefined;\n var cRef = (0,react__WEBPACK_IMPORTED_MODULE_0__.useRef)(null);\n (0,react__WEBPACK_IMPORTED_MODULE_0__.useEffect)(function () {\n if (!cRef.current)\n return;\n cRef.current.indeterminate = indeterminate;\n }, [cRef, indeterminate]);\n var on_change = function (e) {\n var _a;\n var new_value = e.target.checked;\n try {\n new_value = inputconverter[0](e.target.checked);\n }\n catch (e) { }\n (_a = fnrf_zst.worker) === null || _a === void 0 ? void 0 : _a.set_io_value({\n nid: io.node,\n ioid: io.id,\n value: new_value,\n set_default: io.render_options.set_default,\n });\n };\n return (react__WEBPACK_IMPORTED_MODULE_0__[\"default\"].createElement(\"input\", { ref: cRef, type: \"checkbox\", className: \"styledcheckbox booleaninput\", checked: !!inputconverter[1](io.value), onChange: on_change, disabled: io.connected }));\n};\nvar NumberInput = function (_a) {\n var _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m;\n var io = _a.io, inputconverter = _a.inputconverter, _o = _a.parser, parser = _o === void 0 ? function (n) { return parseFloat(n); } : _o;\n var fnrf_zst = (0,react__WEBPACK_IMPORTED_MODULE_0__.useContext)(_funcnodesreactflow__WEBPACK_IMPORTED_MODULE_1__.FuncNodesContext);\n var _p = (0,react__WEBPACK_IMPORTED_MODULE_0__.useState)(inputconverter[1](io.value)), tempvalue = _p[0], setTempValue = _p[1];\n (0,react__WEBPACK_IMPORTED_MODULE_0__.useEffect)(function () {\n setTempValue(inputconverter[1](io.value));\n }, [io.value]);\n var set_new_value = function (new_value) {\n var _a, _b, _c;\n new_value = parser(parseFloat(new_value.toString()).toString() // parse float for e notation\n );\n if (isNaN(new_value)) {\n new_value = \"<NoValue>\";\n setTempValue(\"\");\n }\n else {\n if (((_a = io.value_options) === null || _a === void 0 ? void 0 : _a.min) !== undefined &&\n new_value < io.value_options.min)\n new_value = io.value_options.min;\n if (((_b = io.value_options) === null || _b === void 0 ? void 0 : _b.max) !== undefined &&\n new_value > io.value_options.max)\n new_value = io.value_options.max;\n setTempValue(new_value.toString());\n }\n try {\n new_value = inputconverter[0](new_value);\n }\n catch (e) { }\n (_c = fnrf_zst.worker) === null || _c === void 0 ? void 0 : _c.set_io_value({\n nid: io.node,\n ioid: io.id,\n value: new_value,\n set_default: io.render_options.set_default,\n });\n };\n var on_change = function (e) {\n set_new_value(e.target.value);\n };\n var v = io.connected ? inputconverter[1](io.value) : tempvalue;\n if (v === undefined)\n v = (_b = io.value_options) === null || _b === void 0 ? void 0 : _b.min;\n if (v === undefined)\n v = (_c = io.value_options) === null || _c === void 0 ? void 0 : _c.max;\n if (v === undefined)\n v = \"\";\n if (v === null)\n v = \"\";\n if (((_d = io.value_options) === null || _d === void 0 ? void 0 : _d.max) !== undefined &&\n ((_e = io.value_options) === null || _e === void 0 ? void 0 : _e.min) !== undefined) {\n return (react__WEBPACK_IMPORTED_MODULE_0__[\"default\"].createElement(\"div\", { style: { minWidth: \"100px\" }, className: \"SliderContainer\" },\n react__WEBPACK_IMPORTED_MODULE_0__[\"default\"].createElement(_radix_ui_react_slider__WEBPACK_IMPORTED_MODULE_4__.Root, { className: \"SliderRoot\", value: [v === undefined ? (_f = io.value_options) === null || _f === void 0 ? void 0 : _f.min : v], min: (_g = io.value_options) === null || _g === void 0 ? void 0 : _g.min, max: (_h = io.value_options) === null || _h === void 0 ? void 0 : _h.max, step: io.render_options.step ||\n (((_j = io.value_options) === null || _j === void 0 ? void 0 : _j.max) - ((_k = io.value_options) === null || _k === void 0 ? void 0 : _k.min)) / 1000, disabled: io.connected, onValueCommit: function (value) {\n if (isNaN(value[0]))\n return;\n set_new_value(value[0]);\n }, onValueChange: function (value) {\n if (isNaN(value[0]))\n return;\n setTempValue(value[0].toString());\n } },\n react__WEBPACK_IMPORTED_MODULE_0__[\"default\"].createElement(_radix_ui_react_slider__WEBPACK_IMPORTED_MODULE_4__.Track, { className: \"SliderTrack\" },\n react__WEBPACK_IMPORTED_MODULE_0__[\"default\"].createElement(_radix_ui_react_slider__WEBPACK_IMPORTED_MODULE_4__.Range, { className: \"SliderRange\" })),\n react__WEBPACK_IMPORTED_MODULE_0__[\"default\"].createElement(_radix_ui_react_tooltip__WEBPACK_IMPORTED_MODULE_5__.TooltipProvider, null,\n react__WEBPACK_IMPORTED_MODULE_0__[\"default\"].createElement(_radix_ui_react_tooltip__WEBPACK_IMPORTED_MODULE_5__.Root, { open: true },\n react__WEBPACK_IMPORTED_MODULE_0__[\"default\"].createElement(_radix_ui_react_tooltip__WEBPACK_IMPORTED_MODULE_5__.Trigger, { asChild: true },\n react__WEBPACK_IMPORTED_MODULE_0__[\"default\"].createElement(_radix_ui_react_slider__WEBPACK_IMPORTED_MODULE_4__.Thumb, { className: \"SliderThumb\" })),\n react__WEBPACK_IMPORTED_MODULE_0__[\"default\"].createElement(_radix_ui_react_tooltip__WEBPACK_IMPORTED_MODULE_5__.Content, { className: \"SliderTooltipContent\" }, v))))));\n }\n return (react__WEBPACK_IMPORTED_MODULE_0__[\"default\"].createElement(\"input\", { type: \"text\", className: \"nodedatainput styledinput numberinput\", value: v, onChange: function (e) { return setTempValue(e.target.value); }, onBlur: on_change, onKeyDown: function (e) {\n // on key up add step to value\n if (e.key === \"ArrowUp\") {\n var step = io.render_options.step || 1;\n if (e.shiftKey)\n step *= 10;\n var new_value = (parseFloat(v) || 0) + step;\n // setTempValue(new_value.toString());\n set_new_value(new_value);\n return;\n }\n // on key down subtract step to value\n if (e.key === \"ArrowDown\") {\n var step = io.render_options.step || 1;\n if (e.shiftKey)\n step *= 10;\n var new_value = (parseFloat(v) || 0) - step;\n // setTempValue(new_value.toString());\n set_new_value(new_value);\n return;\n }\n //accept only numbers\n if (!/^[0-9.eE+-]$/.test(e.key) &&\n ![\"Backspace\", \"ArrowLeft\", \"ArrowRight\", \"Delete\", \"Tab\"].includes(e.key)) {\n e.preventDefault();\n }\n }, disabled: io.connected, step: io.render_options.step, min: (_l = io.value_options) === null || _l === void 0 ? void 0 : _l.min, max: (_m = io.value_options) === null || _m === void 0 ? void 0 : _m.max }));\n};\nvar FloatInput = function (_a) {\n var io = _a.io, inputconverter = _a.inputconverter;\n return NumberInput({ io: io, inputconverter: inputconverter, parser: parseFloat });\n};\nvar IntegerInput = function (_a) {\n var io = _a.io, inputconverter = _a.inputconverter;\n return NumberInput({ io: io, inputconverter: inputconverter, parser: parseInt });\n};\nvar StringInput = function (_a) {\n var io = _a.io, inputconverter = _a.inputconverter;\n var fnrf_zst = (0,react__WEBPACK_IMPORTED_MODULE_0__.useContext)(_funcnodesreactflow__WEBPACK_IMPORTED_MODULE_1__.FuncNodesContext);\n var _b = (0,react__WEBPACK_IMPORTED_MODULE_0__.useState)(inputconverter[1](io.value)), tempvalue = _b[0], setTempValue = _b[1];\n (0,react__WEBPACK_IMPORTED_MODULE_0__.useEffect)(function () {\n setTempValue(inputconverter[1](io.value));\n }, [io.value]);\n var on_change = function (e) {\n var _a;\n var new_value = e.target.value;\n if (!new_value)\n new_value = \"<NoValue>\";\n try {\n new_value = inputconverter[0](new_value);\n }\n catch (e) { }\n (_a = fnrf_zst.worker) === null || _a === void 0 ? void 0 : _a.set_io_value({\n nid: io.node,\n ioid: io.id,\n value: new_value,\n set_default: io.render_options.set_default,\n });\n };\n var v = io.connected ? inputconverter[1](io.value) : tempvalue;\n if (v === undefined || v === null)\n v = \"\";\n return (react__WEBPACK_IMPORTED_MODULE_0__[\"default\"].createElement(\"input\", { className: \"nodedatainput styledinput stringinput\", value: v, onChange: function (e) { return setTempValue(e.target.value); }, onBlur: on_change, disabled: io.connected }));\n};\nvar _parse_string = function (s) { return s; };\nvar _parse_number = function (s) { return parseFloat(s); };\nvar _parse_boolean = function (s) { return !!s; };\nvar _parse_null = function (s) { return (s === \"null\" ? null : s); };\nvar get_parser = function (datatype) {\n if (datatype === \"nuinputconvertermber\") {\n return _parse_number;\n }\n if (datatype === \"boolean\") {\n return _parse_boolean;\n }\n if (datatype === \"undefined\") {\n return _parse_null;\n }\n return _parse_string;\n};\nvar SelectionInput = function (_a) {\n var _b;\n var io = _a.io, inputconverter = _a.inputconverter, parser = _a.parser;\n var options = ((_b = io.value_options) === null || _b === void 0 ? void 0 : _b.options) || [];\n console.log(\"options\", io.value_options, io);\n if (Array.isArray(options)) {\n options = {\n type: \"enum\",\n values: options,\n keys: options.map(function (x) { return (x === null ? \"None\" : x.toString()); }),\n nullable: false,\n };\n }\n options = options;\n if (options.nullable &&\n !options.values.includes(null) &&\n !options.keys.includes(\"None\")) {\n options.values.unshift(null);\n options.keys.unshift(\"None\");\n }\n //make key value pairs\n var optionsmap = [];\n for (var i = 0; i < options.values.length; i++) {\n // set const t to \"string\", \"number\",\"boolean\" \"null\" depenting on the type of options.values[i]\n var t = options.values[i] === null || options.values[i] === undefined\n ? \"undefined\"\n : typeof options.values[i];\n var v_1 = options.values[i];\n if (v_1 === null) {\n v_1 = \"null\";\n }\n if (v_1 === undefined) {\n v_1 = \"undefined\";\n }\n optionsmap.push([options.keys[i], v_1.toString(), t]);\n }\n var fnrf_zst = (0,react__WEBPACK_IMPORTED_MODULE_0__.useContext)(_funcnodesreactflow__WEBPACK_IMPORTED_MODULE_1__.FuncNodesContext);\n var on_change_value = function (_a) {\n var _b;\n var value = _a.value, \n // label\n datatype = _a.datatype;\n // Use the existing parser or get a new one based on the datatype\n var p = parser || get_parser(datatype);\n var new_value = p(value);\n try {\n new_value = inputconverter[0](value);\n }\n catch (e) { }\n (_b = fnrf_zst.worker) === null || _b === void 0 ? void 0 : _b.set_io_value({\n nid: io.node,\n ioid: io.id,\n value: new_value,\n set_default: io.render_options.set_default,\n });\n };\n var on_change = function (e) {\n // Find the selected option element\n var selectedOption = e.target.options[e.target.selectedIndex];\n // Retrieve the datatype attribute from the selected option\n var datatype = selectedOption.getAttribute(\"datatype\");\n on_change_value({\n value: e.target.value,\n // label: selectedOption.text,\n datatype: datatype || \"string\",\n });\n };\n var v = io.value;\n if (v === null) {\n v = \"null\";\n }\n if (v === undefined) {\n v = \"undefined\";\n }\n var default_entry = optionsmap.find(function (option) { return option[1] === v; });\n var default_value;\n if (default_entry !== undefined) {\n default_value = {\n value: default_entry[1],\n label: default_entry[0],\n datatype: default_entry[2],\n };\n }\n return (react__WEBPACK_IMPORTED_MODULE_0__[\"default\"].createElement(_utils_select__WEBPACK_IMPORTED_MODULE_3__[\"default\"], { className: \"nodedatainput styleddropdown\", options: optionsmap.map(function (option) { return ({\n value: option[1],\n label: option[0],\n datatype: option[2],\n }); }), defaultValue: default_value, onChange: function (newValue) {\n if (newValue === null)\n newValue = {\n value: \"<NoValue>\",\n label: \"<NoValue>\",\n datatype: \"string\",\n };\n on_change_value(newValue);\n } }));\n return (react__WEBPACK_IMPORTED_MODULE_0__[\"default\"].createElement(\"select\", { value: v, onChange: on_change, disabled: io.connected, className: \"nodedatainput styleddropdown\" },\n react__WEBPACK_IMPORTED_MODULE_0__[\"default\"].createElement(\"option\", { value: \"<NoValue>\", disabled: true }, \"select\"),\n optionsmap.map(function (option) { return (react__WEBPACK_IMPORTED_MODULE_0__[\"default\"].createElement(\"option\", { key: option[0], value: option[1], datatype: option[2] }, option[0])); })));\n};\nvar ColorInput = function (_a) {\n var _b;\n var io = _a.io;\n var fnrf_zst = (0,react__WEBPACK_IMPORTED_MODULE_0__.useContext)(_funcnodesreactflow__WEBPACK_IMPORTED_MODULE_1__.FuncNodesContext);\n var colorspace = ((_b = io.value_options) === null || _b === void 0 ? void 0 : _b.colorspace) || \"hex\";\n var on_change = function (colorconverter) {\n var _a;\n var new_value = \"<NoValue>\";\n if (colorconverter) {\n if (colorconverter[colorspace])\n new_value = colorconverter[colorspace]();\n else\n new_value = colorconverter.hex();\n }\n if (colorconverter === null)\n new_value = null;\n try {\n new_value = new_value;\n }\n catch (e) { }\n (_a = fnrf_zst.worker) === null || _a === void 0 ? void 0 : _a.set_io_value({\n nid: io.node,\n ioid: io.id,\n value: new_value,\n set_default: io.render_options.set_default,\n });\n };\n var allow_null = false;\n if (typeof io.type !== \"string\" &&\n \"anyOf\" in io.type &&\n io.type.anyOf !== undefined) {\n allow_null = io.type.anyOf.some(function (x) { return x === \"None\"; });\n }\n return (react__WEBPACK_IMPORTED_MODULE_0__[\"default\"].createElement(_utils_colorpicker__WEBPACK_IMPORTED_MODULE_2__[\"default\"], { onChange: on_change, inicolordata: io.value, allow_null: allow_null, inicolorspace: colorspace }));\n};\n\n\n\n//# sourceURL=webpack://@linkdlab/funcnodes_react_flow/./src/frontend/node/io/default_input_renderer.tsx?");
2440
2440
 
2441
2441
  /***/ }),
2442
2442
 
@@ -2486,7 +2486,7 @@ eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpac
2486
2486
  \********************************************/
2487
2487
  /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
2488
2488
 
2489
- eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"default\": () => (__WEBPACK_DEFAULT_EXPORT__)\n/* harmony export */ });\n/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! react */ \"react\");\n/* harmony import */ var ___WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../.. */ \"./src/frontend/index.tsx\");\n/* harmony import */ var reactflow__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! reactflow */ \"../node_modules/@reactflow/core/dist/esm/index.mjs\");\n/* harmony import */ var _io__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./io */ \"./src/frontend/node/io/io.tsx\");\n/* harmony import */ var _default_input_renderer__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./default_input_renderer */ \"./src/frontend/node/io/default_input_renderer.tsx\");\n/* harmony import */ var _datarenderer_rendermappings__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../../datarenderer/rendermappings */ \"./src/frontend/datarenderer/rendermappings.tsx\");\n\n\n\n\n\n\n\nvar INPUTCONVERTER = {\n \"\": [function (v) { return v; }, function (v) { return v; }],\n str_to_json: [\n function (v) {\n return JSON.parse(v);\n },\n function (v) {\n if (typeof v === \"string\")\n return v;\n return JSON.stringify(v);\n },\n ],\n str_to_list: [\n function (v) {\n try {\n var a = JSON.parse(v);\n if (Array.isArray(a))\n return a;\n return [a];\n }\n catch (e) {\n try {\n return JSON.parse(\"[\" + v + \"]\");\n }\n catch (e) { }\n }\n throw new Error(\"Invalid list\");\n },\n function (v) { return JSON.stringify(v); },\n ],\n};\nvar NodeInput = function (_a) {\n var _b, _c, _d;\n var io = _a.io;\n var fnrf_zst = (0,react__WEBPACK_IMPORTED_MODULE_0__.useContext)(___WEBPACK_IMPORTED_MODULE_1__.FuncNodesContext);\n var render = fnrf_zst.render_options();\n var _e = (0,_io__WEBPACK_IMPORTED_MODULE_2__.pick_best_io_type)(io.render_options.type, render.typemap || {}), typestring = _e[0], otypestring = _e[1];\n var Inputrenderer = (0,react__WEBPACK_IMPORTED_MODULE_0__.useContext)(_datarenderer_rendermappings__WEBPACK_IMPORTED_MODULE_4__.RenderMappingContext).Inputrenderer;\n var Input = typestring\n ? ((_b = io.value_options) === null || _b === void 0 ? void 0 : _b.options)\n ? _default_input_renderer__WEBPACK_IMPORTED_MODULE_3__.SelectionInput\n : Inputrenderer[typestring]\n : undefined;\n var inputconverterf = INPUTCONVERTER[(_d = (otypestring && ((_c = render.inputconverter) === null || _c === void 0 ? void 0 : _c[otypestring]))) !== null && _d !== void 0 ? _d : \"\"];\n return (react__WEBPACK_IMPORTED_MODULE_0__[\"default\"].createElement(\"div\", { className: \"nodeinput\" },\n react__WEBPACK_IMPORTED_MODULE_0__[\"default\"].createElement(_io__WEBPACK_IMPORTED_MODULE_2__.HandleWithPreview, { io: io, typestring: typestring, position: reactflow__WEBPACK_IMPORTED_MODULE_5__.Position.Left, type: \"target\" }),\n Input && (react__WEBPACK_IMPORTED_MODULE_0__[\"default\"].createElement(\"div\", { className: \"iovaluefield nodrag\" },\n react__WEBPACK_IMPORTED_MODULE_0__[\"default\"].createElement(Input, { io: io, inputconverter: inputconverterf }))),\n react__WEBPACK_IMPORTED_MODULE_0__[\"default\"].createElement(\"div\", { className: \"ioname\" }, io.name)));\n};\n/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (NodeInput);\n\n\n//# sourceURL=webpack://@linkdlab/funcnodes_react_flow/./src/frontend/node/io/nodeinput.tsx?");
2489
+ eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"default\": () => (__WEBPACK_DEFAULT_EXPORT__)\n/* harmony export */ });\n/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! react */ \"react\");\n/* harmony import */ var ___WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../.. */ \"./src/frontend/index.tsx\");\n/* harmony import */ var reactflow__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! reactflow */ \"../node_modules/@reactflow/core/dist/esm/index.mjs\");\n/* harmony import */ var _io__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./io */ \"./src/frontend/node/io/io.tsx\");\n/* harmony import */ var _default_input_renderer__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./default_input_renderer */ \"./src/frontend/node/io/default_input_renderer.tsx\");\n/* harmony import */ var _datarenderer_rendermappings__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../../datarenderer/rendermappings */ \"./src/frontend/datarenderer/rendermappings.tsx\");\n\n\n\n\n\n\n\nvar INPUTCONVERTER = {\n \"\": [function (v) { return v; }, function (v) { return v; }],\n str_to_json: [\n function (v) {\n return JSON.parse(v);\n },\n function (v) {\n if (typeof v === \"string\")\n return v;\n return JSON.stringify(v);\n },\n ],\n str_to_list: [\n function (v) {\n try {\n var a = JSON.parse(v);\n if (Array.isArray(a))\n return a;\n return [a];\n }\n catch (e) {\n try {\n return JSON.parse(\"[\" + v + \"]\");\n }\n catch (e) { }\n }\n throw new Error(\"Invalid list\");\n },\n function (v) { return JSON.stringify(v); },\n ],\n};\nvar NodeInput = function (_a) {\n var _b, _c, _d;\n var io = _a.io;\n var fnrf_zst = (0,react__WEBPACK_IMPORTED_MODULE_0__.useContext)(___WEBPACK_IMPORTED_MODULE_1__.FuncNodesContext);\n var render = fnrf_zst.render_options();\n var _e = (0,_io__WEBPACK_IMPORTED_MODULE_2__.pick_best_io_type)(io.render_options.type, render.typemap || {}), typestring = _e[0], otypestring = _e[1];\n var Inputrenderer = (0,react__WEBPACK_IMPORTED_MODULE_0__.useContext)(_datarenderer_rendermappings__WEBPACK_IMPORTED_MODULE_4__.RenderMappingContext).Inputrenderer;\n var Input = typestring\n ? ((_b = io.value_options) === null || _b === void 0 ? void 0 : _b.options)\n ? _default_input_renderer__WEBPACK_IMPORTED_MODULE_3__.SelectionInput\n : Inputrenderer[typestring]\n : undefined;\n console.log(\"Inputrenderer\", Input, \"typestring\", typestring, \"Inputrenderers\", Inputrenderer, \"select\", Inputrenderer[typestring]);\n var inputconverterf = INPUTCONVERTER[(_d = (otypestring && ((_c = render.inputconverter) === null || _c === void 0 ? void 0 : _c[otypestring]))) !== null && _d !== void 0 ? _d : \"\"];\n return (react__WEBPACK_IMPORTED_MODULE_0__[\"default\"].createElement(\"div\", { className: \"nodeinput\" },\n react__WEBPACK_IMPORTED_MODULE_0__[\"default\"].createElement(_io__WEBPACK_IMPORTED_MODULE_2__.HandleWithPreview, { io: io, typestring: typestring, position: reactflow__WEBPACK_IMPORTED_MODULE_5__.Position.Left, type: \"target\" }),\n Input && (react__WEBPACK_IMPORTED_MODULE_0__[\"default\"].createElement(\"div\", { className: \"iovaluefield nodrag\" },\n react__WEBPACK_IMPORTED_MODULE_0__[\"default\"].createElement(Input, { io: io, inputconverter: inputconverterf }))),\n react__WEBPACK_IMPORTED_MODULE_0__[\"default\"].createElement(\"div\", { className: \"ioname\" }, io.name)));\n};\n/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (NodeInput);\n\n\n//# sourceURL=webpack://@linkdlab/funcnodes_react_flow/./src/frontend/node/io/nodeinput.tsx?");
2490
2490
 
2491
2491
  /***/ }),
2492
2492
 
@@ -2556,7 +2556,7 @@ eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpac
2556
2556
  \******************************************/
2557
2557
  /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
2558
2558
 
2559
- eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"default\": () => (__WEBPACK_DEFAULT_EXPORT__)\n/* harmony export */ });\n/* harmony import */ var uuid__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! uuid */ \"../node_modules/uuid/dist/esm-browser/v4.js\");\n/* harmony import */ var _utils__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../utils */ \"./src/utils/index.ts\");\nvar __assign = (undefined && undefined.__assign) || function () {\n __assign = Object.assign || function(t) {\n for (var s, i = 1, n = arguments.length; i < n; i++) {\n s = arguments[i];\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))\n t[p] = s[p];\n }\n return t;\n };\n return __assign.apply(this, arguments);\n};\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};\nvar __generator = (undefined && undefined.__generator) || function (thisArg, body) {\n var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;\n return g = { next: verb(0), \"throw\": verb(1), \"return\": verb(2) }, typeof Symbol === \"function\" && (g[Symbol.iterator] = function() { return this; }), g;\n function verb(n) { return function (v) { return step([n, v]); }; }\n function step(op) {\n if (f) throw new TypeError(\"Generator is already executing.\");\n while (g && (g = 0, op[0] && (_ = 0)), _) try {\n if (f = 1, y && (t = op[0] & 2 ? y[\"return\"] : op[0] ? y[\"throw\"] || ((t = y[\"return\"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;\n if (y = 0, t) op = [op[0] & 2, t.value];\n switch (op[0]) {\n case 0: case 1: t = op; break;\n case 4: _.label++; return { value: op[1], done: false };\n case 5: _.label++; y = op[1]; op = [0]; continue;\n case 7: op = _.ops.pop(); _.trys.pop(); continue;\n default:\n if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }\n if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }\n if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }\n if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }\n if (t[2]) _.ops.pop();\n _.trys.pop(); continue;\n }\n op = body.call(thisArg, _);\n } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }\n if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };\n }\n};\n\n\nvar FuncNodesWorker = /** @class */ (function () {\n function FuncNodesWorker(data) {\n var _this = this;\n this.uuid = data.uuid;\n this.on_error = data.on_error || console.error;\n this.messagePromises = new Map();\n this._local_nodeupdates = new Map();\n this._nodeupdatetimer = setTimeout(function () {\n _this.sync_local_node_updates();\n }, 1000);\n this.is_open = true;\n if (data.zustand)\n this.set_zustand(data.zustand);\n }\n FuncNodesWorker.prototype.set_zustand = function (zustand) {\n this._zustand = zustand;\n this._zustand.auto_progress();\n this.stepwise_fullsync();\n };\n FuncNodesWorker.prototype.stepwise_fullsync = function () {\n return __awaiter(this, void 0, void 0, function () {\n return __generator(this, function (_a) {\n switch (_a.label) {\n case 0:\n if (!this._zustand)\n return [2 /*return*/];\n if (!this.is_open)\n return [2 /*return*/];\n return [4 /*yield*/, this.sync_lib()];\n case 1:\n _a.sent();\n return [4 /*yield*/, this.sync_external_worker()];\n case 2:\n _a.sent();\n return [4 /*yield*/, this.sync_funcnodes_plugins()];\n case 3:\n _a.sent();\n return [4 /*yield*/, this.sync_nodespace()];\n case 4:\n _a.sent();\n return [4 /*yield*/, this.sync_view_state()];\n case 5:\n _a.sent();\n return [2 /*return*/];\n }\n });\n });\n };\n FuncNodesWorker.prototype.sync_lib = function () {\n return __awaiter(this, void 0, void 0, function () {\n var resp;\n return __generator(this, function (_a) {\n switch (_a.label) {\n case 0:\n if (!this._zustand)\n return [2 /*return*/];\n if (!this.is_open)\n return [2 /*return*/];\n return [4 /*yield*/, this._send_cmd({\n cmd: \"get_library\",\n wait_for_response: true,\n retries: 2,\n })];\n case 1:\n resp = _a.sent();\n this._zustand.lib.libstate.getState().set({\n lib: resp,\n });\n return [2 /*return*/];\n }\n });\n });\n };\n FuncNodesWorker.prototype.sync_external_worker = function () {\n return __awaiter(this, void 0, void 0, function () {\n var resp;\n return __generator(this, function (_a) {\n switch (_a.label) {\n case 0:\n if (!this._zustand)\n return [2 /*return*/];\n if (!this.is_open)\n return [2 /*return*/];\n return [4 /*yield*/, this._send_cmd({\n cmd: \"get_worker_dependencies\",\n wait_for_response: true,\n })];\n case 1:\n resp = _a.sent();\n this._zustand.lib.libstate.getState().set({\n external_worker: resp,\n });\n return [2 /*return*/];\n }\n });\n });\n };\n FuncNodesWorker.prototype.sync_funcnodes_plugins = function () {\n return __awaiter(this, void 0, void 0, function () {\n var resp, _i, resp_1, key, plugin, binaryString, binaryLen, bytes, i, blob, blobUrl, module;\n return __generator(this, function (_a) {\n switch (_a.label) {\n case 0:\n if (!this._zustand)\n return [2 /*return*/];\n if (!this.is_open)\n return [2 /*return*/];\n return [4 /*yield*/, this._send_cmd({\n cmd: \"get_plugin_keys\",\n wait_for_response: true,\n kwargs: { type: \"react\" },\n })];\n case 1:\n resp = (_a.sent());\n _i = 0, resp_1 = resp;\n _a.label = 2;\n case 2:\n if (!(_i < resp_1.length)) return [3 /*break*/, 6];\n key = resp_1[_i];\n return [4 /*yield*/, this._send_cmd({\n cmd: \"get_plugin\",\n wait_for_response: true,\n kwargs: { key: key, type: \"react\" },\n })];\n case 3:\n plugin = _a.sent();\n if (!(plugin.js !== undefined)) return [3 /*break*/, 5];\n binaryString = atob(plugin.js);\n binaryLen = binaryString.length;\n bytes = new Uint8Array(binaryLen);\n for (i = 0; i < binaryLen; i++) {\n bytes[i] = binaryString.charCodeAt(i);\n }\n blob = new Blob([bytes], { type: \"application/javascript\" });\n blobUrl = URL.createObjectURL(blob);\n return [4 /*yield*/, import(/* webpackIgnore: true */ blobUrl)];\n case 4:\n module = _a.sent();\n // gc the blob\n URL.revokeObjectURL(blobUrl);\n this._zustand.add_plugin(key, module.default);\n _a.label = 5;\n case 5:\n _i++;\n return [3 /*break*/, 2];\n case 6: return [2 /*return*/];\n }\n });\n });\n };\n FuncNodesWorker.prototype.sync_view_state = function () {\n return __awaiter(this, void 0, void 0, function () {\n var resp, nodeview, nodeid, nodev;\n return __generator(this, function (_a) {\n switch (_a.label) {\n case 0:\n if (!this._zustand)\n return [2 /*return*/];\n if (!this.is_open)\n return [2 /*return*/];\n return [4 /*yield*/, this._send_cmd({\n cmd: \"view_state\",\n wait_for_response: true,\n })];\n case 1:\n resp = (_a.sent());\n if (resp.renderoptions)\n this._zustand.update_render_options(resp.renderoptions);\n nodeview = resp.nodes;\n if (nodeview) {\n for (nodeid in nodeview) {\n nodev = nodeview[nodeid];\n this._zustand.on_node_action({\n type: \"update\",\n node: {\n frontend: nodev,\n },\n id: nodeid,\n from_remote: true,\n });\n }\n }\n return [2 /*return*/];\n }\n });\n });\n };\n FuncNodesWorker.prototype.sync_nodespace = function () {\n return __awaiter(this, void 0, void 0, function () {\n var resp, _i, resp_2, node, edges, _a, edges_1, edge;\n return __generator(this, function (_b) {\n switch (_b.label) {\n case 0:\n if (!this._zustand)\n return [2 /*return*/];\n if (!this.is_open)\n return [2 /*return*/];\n return [4 /*yield*/, this._send_cmd({\n cmd: \"get_nodes\",\n kwargs: { with_frontend: true },\n wait_for_response: true,\n })];\n case 1:\n resp = (_b.sent());\n for (_i = 0, resp_2 = resp; _i < resp_2.length; _i++) {\n node = resp_2[_i];\n this._recieve_node_added(node);\n }\n return [4 /*yield*/, this._send_cmd({\n cmd: \"get_edges\",\n wait_for_response: true,\n })];\n case 2:\n edges = (_b.sent());\n for (_a = 0, edges_1 = edges; _a < edges_1.length; _a++) {\n edge = edges_1[_a];\n this._recieve_edge_added.apply(this, edge);\n }\n return [2 /*return*/];\n }\n });\n });\n };\n FuncNodesWorker.prototype.fullsync = function () {\n return __awaiter(this, void 0, void 0, function () {\n var resp, e_1, nodeview, _i, _a, node, _b, _c, edge;\n return __generator(this, function (_d) {\n switch (_d.label) {\n case 0:\n if (!this._zustand)\n return [2 /*return*/];\n if (!this.is_open)\n return [2 /*return*/];\n _d.label = 1;\n case 1:\n if (false) {}\n _d.label = 2;\n case 2:\n _d.trys.push([2, 4, , 5]);\n return [4 /*yield*/, this._send_cmd({ cmd: \"full_state\" })];\n case 3:\n resp = (_d.sent());\n return [3 /*break*/, 6];\n case 4:\n e_1 = _d.sent();\n console.error(\"Error in fullsync\", e_1);\n return [3 /*break*/, 5];\n case 5: return [3 /*break*/, 1];\n case 6:\n console.log(\"Full state\", resp);\n this._zustand.lib.libstate.getState().set({\n lib: resp.backend.lib,\n external_worker: resp.worker_dependencies,\n });\n if (resp.view.renderoptions)\n this._zustand.update_render_options(resp.view.renderoptions);\n nodeview = resp.view.nodes;\n for (_i = 0, _a = resp.backend.nodes; _i < _a.length; _i++) {\n node = _a[_i];\n if (nodeview[node.id] !== undefined) {\n node.frontend = nodeview[node.id];\n }\n this._recieve_node_added(node);\n }\n for (_b = 0, _c = resp.backend.edges; _b < _c.length; _b++) {\n edge = _c[_b];\n this._recieve_edge_added.apply(this, edge);\n }\n return [2 /*return*/];\n }\n });\n });\n };\n FuncNodesWorker.prototype._recieve_edge_added = function (src_nid, src_ioid, trg_nid, trg_ioid) {\n return __awaiter(this, void 0, void 0, function () {\n return __generator(this, function (_a) {\n if (!this._zustand)\n return [2 /*return*/];\n this._zustand.on_edge_action(__assign({ type: \"add\", from_remote: true }, { src_nid: src_nid, src_ioid: src_ioid, trg_nid: trg_nid, trg_ioid: trg_ioid }));\n return [2 /*return*/];\n });\n });\n };\n FuncNodesWorker.prototype.trigger_node = function (node_id) {\n return __awaiter(this, void 0, void 0, function () {\n return __generator(this, function (_a) {\n switch (_a.label) {\n case 0: return [4 /*yield*/, this._send_cmd({\n cmd: \"trigger_node\",\n kwargs: { nid: node_id },\n wait_for_response: false,\n })];\n case 1:\n _a.sent();\n return [2 /*return*/];\n }\n });\n });\n };\n FuncNodesWorker.prototype.add_node = function (node_id) {\n return __awaiter(this, void 0, void 0, function () {\n var resp;\n return __generator(this, function (_a) {\n switch (_a.label) {\n case 0: return [4 /*yield*/, this._send_cmd({\n cmd: \"add_node\",\n kwargs: { id: node_id },\n })];\n case 1:\n resp = _a.sent();\n this._recieve_node_added(resp);\n return [2 /*return*/];\n }\n });\n });\n };\n FuncNodesWorker.prototype.remove_node = function (node_id) {\n return __awaiter(this, void 0, void 0, function () {\n return __generator(this, function (_a) {\n switch (_a.label) {\n case 0: return [4 /*yield*/, this._send_cmd({\n cmd: \"remove_node\",\n kwargs: { id: node_id },\n })];\n case 1:\n _a.sent();\n return [2 /*return*/];\n }\n });\n });\n };\n FuncNodesWorker.prototype._recieve_node_added = function (data) {\n return __awaiter(this, void 0, void 0, function () {\n return __generator(this, function (_a) {\n if (!this._zustand)\n return [2 /*return*/];\n this._zustand.on_node_action({\n type: \"add\",\n node: data,\n id: data.id,\n from_remote: true,\n });\n return [2 /*return*/];\n });\n });\n };\n FuncNodesWorker.prototype.add_edge = function (_a) {\n var src_nid = _a.src_nid, src_ioid = _a.src_ioid, trg_nid = _a.trg_nid, trg_ioid = _a.trg_ioid, _b = _a.replace, replace = _b === void 0 ? false : _b;\n return this._send_cmd({\n cmd: \"add_edge\",\n kwargs: { src_nid: src_nid, src_ioid: src_ioid, trg_nid: trg_nid, trg_ioid: trg_ioid, replace: replace },\n });\n };\n FuncNodesWorker.prototype.remove_edge = function (_a) {\n var src_nid = _a.src_nid, src_ioid = _a.src_ioid, trg_nid = _a.trg_nid, trg_ioid = _a.trg_ioid;\n return this._send_cmd({\n cmd: \"remove_edge\",\n kwargs: { src_nid: src_nid, src_ioid: src_ioid, trg_nid: trg_nid, trg_ioid: trg_ioid },\n });\n };\n FuncNodesWorker.prototype.add_external_worker = function (_a) {\n return __awaiter(this, arguments, void 0, function (_b) {\n var module = _b.module, cls_module = _b.cls_module, cls_name = _b.cls_name;\n return __generator(this, function (_c) {\n switch (_c.label) {\n case 0: return [4 /*yield*/, this._send_cmd({\n cmd: \"add_external_worker\",\n kwargs: { module: module, cls_module: cls_module, cls_name: cls_name },\n })];\n case 1: return [2 /*return*/, _c.sent()];\n }\n });\n });\n };\n FuncNodesWorker.prototype.sync_local_node_updates = function () {\n var _this = this;\n clearTimeout(this._nodeupdatetimer);\n this._local_nodeupdates.forEach(function (node, id) { return __awaiter(_this, void 0, void 0, function () {\n var ans;\n return __generator(this, function (_a) {\n switch (_a.label) {\n case 0: return [4 /*yield*/, this._send_cmd({\n cmd: \"update_node\",\n kwargs: { nid: id, data: node },\n wait_for_response: true,\n })];\n case 1:\n ans = _a.sent();\n if (!this._zustand)\n return [2 /*return*/];\n this._zustand.on_node_action({\n type: \"update\",\n node: ans,\n id: id,\n from_remote: true,\n });\n return [2 /*return*/];\n }\n });\n }); });\n this._local_nodeupdates.clear();\n this._nodeupdatetimer = setTimeout(function () {\n _this.sync_local_node_updates();\n }, 200);\n };\n FuncNodesWorker.prototype.locally_update_node = function (action) {\n // Add the type to the parameter\n var currentstate = this._local_nodeupdates.get(action.id);\n if (currentstate) {\n var _a = (0,_utils__WEBPACK_IMPORTED_MODULE_0__.deep_merge)(currentstate, action.node), new_obj = _a.new_obj, change = _a.change;\n if (change) {\n this._local_nodeupdates.set(action.id, new_obj);\n }\n }\n else {\n this._local_nodeupdates.set(action.id, action.node);\n }\n if (action.immediate) {\n this.sync_local_node_updates();\n }\n };\n FuncNodesWorker.prototype.get_remote_node_state = function (nid) {\n return __awaiter(this, void 0, void 0, function () {\n var ans;\n return __generator(this, function (_a) {\n switch (_a.label) {\n case 0: return [4 /*yield*/, this._send_cmd({\n cmd: \"get_node_state\",\n kwargs: { nid: nid },\n wait_for_response: true,\n })];\n case 1:\n ans = _a.sent();\n if (!this._zustand)\n return [2 /*return*/];\n this._zustand.on_node_action({\n type: \"update\",\n node: ans,\n id: ans.id,\n from_remote: true,\n });\n return [2 /*return*/];\n }\n });\n });\n };\n FuncNodesWorker.prototype.set_io_value = function (_a) {\n var nid = _a.nid, ioid = _a.ioid, value = _a.value, _b = _a.set_default, set_default = _b === void 0 ? false : _b;\n if (set_default && value == \"<NoValue>\")\n set_default = false;\n return this._send_cmd({\n cmd: \"set_io_value\",\n kwargs: { nid: nid, ioid: ioid, value: value, set_default: set_default },\n wait_for_response: true,\n });\n };\n FuncNodesWorker.prototype.clear = function () {\n return this._send_cmd({ cmd: \"clear\" });\n };\n FuncNodesWorker.prototype.save = function () {\n return this._send_cmd({ cmd: \"save\", wait_for_response: true });\n };\n FuncNodesWorker.prototype.load = function (data) {\n var _this = this;\n return this._send_cmd({\n cmd: \"load_data\",\n kwargs: { data: data },\n wait_for_response: true,\n }).then(function () {\n _this.stepwise_fullsync();\n });\n };\n FuncNodesWorker.prototype.get_io_value = function (_a) {\n var nid = _a.nid, ioid = _a.ioid;\n return this._send_cmd({\n cmd: \"get_io_value\",\n kwargs: { nid: nid, ioid: ioid },\n wait_for_response: true,\n });\n };\n FuncNodesWorker.prototype._send_cmd = function (_a) {\n return __awaiter(this, arguments, void 0, function (_b) {\n var msg, wait_for_response_callback;\n var _this = this;\n var cmd = _b.cmd, kwargs = _b.kwargs, _c = _b.wait_for_response, wait_for_response = _c === void 0 ? true : _c, _d = _b.response_timeout, response_timeout = _d === void 0 ? 5000 : _d, _e = _b.retries, retries = _e === void 0 ? 2 : _e;\n return __generator(this, function (_f) {\n msg = {\n type: \"cmd\",\n cmd: cmd,\n kwargs: kwargs || {},\n };\n if (wait_for_response) {\n if (retries < 0)\n retries = 0;\n wait_for_response_callback = function () { return __awaiter(_this, void 0, void 0, function () {\n var response, _loop_1, this_1, state_1;\n var _this = this;\n return __generator(this, function (_a) {\n switch (_a.label) {\n case 0:\n _loop_1 = function () {\n var msid, promise, e_2;\n return __generator(this, function (_b) {\n switch (_b.label) {\n case 0:\n msid = msg.id || (0,uuid__WEBPACK_IMPORTED_MODULE_1__[\"default\"])();\n msg.id = msid;\n promise = new Promise(function (resolve, reject) {\n var timeout = setTimeout(function () {\n reject(\"Timeout@wait_for_response for \" + cmd);\n }, response_timeout);\n _this.messagePromises.set(msid, {\n resolve: function (data) {\n clearTimeout(timeout);\n resolve(data);\n _this.messagePromises.delete(msid);\n },\n reject: function (err) {\n clearTimeout(timeout);\n reject(err);\n _this.messagePromises.delete(msid);\n },\n });\n });\n return [4 /*yield*/, this_1.send(msg)];\n case 1:\n _b.sent();\n _b.label = 2;\n case 2:\n _b.trys.push([2, 4, , 5]);\n return [4 /*yield*/, promise];\n case 3:\n response = _b.sent();\n return [2 /*return*/, \"break\"];\n case 4:\n e_2 = _b.sent();\n if (retries === 0)\n throw e_2;\n retries -= 1;\n return [2 /*return*/, \"continue\"];\n case 5: return [2 /*return*/];\n }\n });\n };\n this_1 = this;\n _a.label = 1;\n case 1:\n if (!(retries >= 0)) return [3 /*break*/, 3];\n return [5 /*yield**/, _loop_1()];\n case 2:\n state_1 = _a.sent();\n if (state_1 === \"break\")\n return [3 /*break*/, 3];\n return [3 /*break*/, 1];\n case 3: return [2 /*return*/, response];\n }\n });\n }); };\n return [2 /*return*/, wait_for_response_callback()];\n }\n return [2 /*return*/, this.send(msg)];\n });\n });\n };\n FuncNodesWorker.prototype.send = function (_data) {\n return __awaiter(this, void 0, void 0, function () {\n return __generator(this, function (_a) {\n // this is the abstract method that should be implemented by subclasses\n throw new Error(\"Not implemented\");\n });\n });\n };\n FuncNodesWorker.prototype.recieve_nodespace_event = function (_a) {\n return __awaiter(this, arguments, void 0, function (_b) {\n var _c, _d;\n var event = _b.event, data = _b.data;\n return __generator(this, function (_e) {\n switch (event) {\n case \"after_set_value\":\n if (!this._zustand)\n return [2 /*return*/];\n return [2 /*return*/, this._zustand.on_node_action({\n type: \"update\",\n node: {\n id: data.node,\n io: (_c = {},\n _c[data.io] = {\n value: data.result,\n },\n _c),\n },\n id: data.node,\n from_remote: true,\n })];\n case \"after_update_value_options\":\n if (!this._zustand)\n return [2 /*return*/];\n return [2 /*return*/, this._zustand.on_node_action({\n type: \"update\",\n node: {\n id: data.node,\n io: (_d = {},\n _d[data.io] = {\n value_options: data.result,\n },\n _d),\n },\n id: data.node,\n from_remote: true,\n })];\n case \"triggerstart\":\n if (!this._zustand)\n return [2 /*return*/];\n return [2 /*return*/, this._zustand.on_node_action({\n type: \"update\",\n node: {\n id: data.node,\n in_trigger: true,\n },\n id: data.node,\n from_remote: true,\n })];\n case \"triggerdone\":\n if (!this._zustand)\n return [2 /*return*/];\n return [2 /*return*/, this._zustand.on_node_action({\n type: \"update\",\n node: {\n id: data.node,\n in_trigger: false,\n },\n id: data.node,\n from_remote: true,\n })];\n case \"node_trigger_error\":\n if (!this._zustand)\n return [2 /*return*/];\n return [2 /*return*/, this._zustand.on_node_action({\n type: \"error\",\n errortype: \"trigger\",\n error: data.error,\n id: data.node,\n from_remote: true,\n })];\n case \"node_removed\":\n if (!this._zustand)\n return [2 /*return*/];\n return [2 /*return*/, this._zustand.on_node_action({\n type: \"delete\",\n id: data.node,\n from_remote: true,\n })];\n case \"node_added\":\n return [2 /*return*/, this._recieve_node_added(data.node)];\n case \"after_disconnect\":\n if (!data.result)\n return [2 /*return*/];\n if (!Array.isArray(data.result))\n return [2 /*return*/];\n if (data.result.length !== 4)\n return [2 /*return*/];\n if (!this._zustand)\n return [2 /*return*/];\n return [2 /*return*/, this._zustand.on_edge_action({\n type: \"delete\",\n from_remote: true,\n src_nid: data.result[0],\n src_ioid: data.result[1],\n trg_nid: data.result[2],\n trg_ioid: data.result[3],\n })];\n case \"after_connect\":\n if (!data.result)\n return [2 /*return*/];\n if (!Array.isArray(data.result))\n return [2 /*return*/];\n if (data.result.length !== 4)\n return [2 /*return*/];\n return [2 /*return*/, this._recieve_edge_added.apply(this, data.result)];\n case \"after_add_shelf\":\n if (!data.result)\n return [2 /*return*/];\n if (!this._zustand)\n return [2 /*return*/];\n return [2 /*return*/, this._zustand.lib.libstate.getState().set({\n lib: data.result,\n })];\n default:\n console.warn(\"Unhandled nodepsace event\", event, data);\n break;\n }\n return [2 /*return*/];\n });\n });\n };\n FuncNodesWorker.prototype.add_lib = function (lib) {\n return __awaiter(this, void 0, void 0, function () {\n var ans;\n return __generator(this, function (_a) {\n switch (_a.label) {\n case 0: return [4 /*yield*/, this._send_cmd({\n cmd: \"add_shelf\",\n kwargs: { src: lib },\n wait_for_response: false,\n })];\n case 1:\n ans = _a.sent();\n return [2 /*return*/, ans];\n }\n });\n });\n };\n FuncNodesWorker.prototype.add_worker_package = function (pkg) {\n return __awaiter(this, void 0, void 0, function () {\n var ans;\n return __generator(this, function (_a) {\n switch (_a.label) {\n case 0: return [4 /*yield*/, this._send_cmd({\n cmd: \"add_worker_package\",\n kwargs: { src: pkg },\n wait_for_response: false,\n })];\n case 1:\n ans = _a.sent();\n return [2 /*return*/, ans];\n }\n });\n });\n };\n FuncNodesWorker.prototype.recieve = function (data) {\n return __awaiter(this, void 0, void 0, function () {\n var promise, _a;\n return __generator(this, function (_b) {\n switch (_b.label) {\n case 0:\n _a = data.type;\n switch (_a) {\n case \"nsevent\": return [3 /*break*/, 1];\n case \"result\": return [3 /*break*/, 3];\n case \"error\": return [3 /*break*/, 4];\n case \"progress\": return [3 /*break*/, 5];\n }\n return [3 /*break*/, 6];\n case 1: return [4 /*yield*/, this.recieve_nodespace_event(data)];\n case 2: return [2 /*return*/, _b.sent()];\n case 3:\n promise = data.id && this.messagePromises.get(data.id);\n if (promise) {\n return [2 /*return*/, promise.resolve(data.result)];\n }\n return [3 /*break*/, 7];\n case 4:\n this.on_error(data.tb + \"\\n\" + data.error);\n promise = data.id && this.messagePromises.get(data.id);\n if (promise) {\n return [2 /*return*/, promise.reject(data.error)];\n }\n return [3 /*break*/, 7];\n case 5:\n if (!this._zustand)\n return [2 /*return*/];\n this._zustand.set_progress(data);\n return [3 /*break*/, 7];\n case 6:\n console.warn(\"Unhandled message\", data);\n return [3 /*break*/, 7];\n case 7: return [2 /*return*/];\n }\n });\n });\n };\n FuncNodesWorker.prototype.disconnect = function () { };\n FuncNodesWorker.prototype.onclose = function () {\n this.is_open = false;\n if (!this._zustand)\n return;\n this._zustand.auto_progress();\n };\n FuncNodesWorker.prototype.reconnect = function () {\n return __awaiter(this, void 0, void 0, function () { return __generator(this, function (_a) {\n return [2 /*return*/];\n }); });\n };\n FuncNodesWorker.prototype.stop = function () {\n return __awaiter(this, void 0, void 0, function () {\n var oldonclose;\n var _this = this;\n return __generator(this, function (_a) {\n switch (_a.label) {\n case 0: return [4 /*yield*/, this._send_cmd({ cmd: \"stop_worker\", wait_for_response: false })];\n case 1:\n _a.sent();\n oldonclose = this.onclose.bind(this);\n this.onclose = function () {\n oldonclose();\n if (!_this._zustand)\n return;\n if (_this._zustand.worker === _this) {\n _this._zustand.clear_all();\n }\n _this.onclose = oldonclose;\n };\n return [2 /*return*/];\n }\n });\n });\n };\n FuncNodesWorker.prototype.get_io_full_value = function (_a) {\n return __awaiter(this, arguments, void 0, function (_b) {\n var res;\n var _c;\n var nid = _b.nid, ioid = _b.ioid;\n return __generator(this, function (_d) {\n switch (_d.label) {\n case 0: return [4 /*yield*/, this._send_cmd({\n cmd: \"get_io_full_value\",\n kwargs: { nid: nid, ioid: ioid },\n wait_for_response: true,\n })];\n case 1:\n res = _d.sent();\n //console.log(\"Full value\", res);\n if (!this._zustand)\n return [2 /*return*/];\n this._zustand.on_node_action({\n type: \"update\",\n node: {\n io: (_c = {},\n _c[ioid] = {\n fullvalue: res,\n },\n _c),\n },\n id: nid,\n from_remote: true,\n });\n return [2 /*return*/, res];\n }\n });\n });\n };\n FuncNodesWorker.prototype.get_node_status = function (nid) {\n return __awaiter(this, void 0, void 0, function () {\n var res;\n return __generator(this, function (_a) {\n switch (_a.label) {\n case 0: return [4 /*yield*/, this._send_cmd({\n cmd: \"get_node_state\",\n kwargs: { nid: nid },\n wait_for_response: true,\n })];\n case 1:\n res = _a.sent();\n return [2 /*return*/, res];\n }\n });\n });\n };\n return FuncNodesWorker;\n}());\n/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (FuncNodesWorker);\n\n\n//# sourceURL=webpack://@linkdlab/funcnodes_react_flow/./src/funcnodes/funcnodesworker.ts?");
2559
+ eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"default\": () => (__WEBPACK_DEFAULT_EXPORT__)\n/* harmony export */ });\n/* harmony import */ var uuid__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! uuid */ \"../node_modules/uuid/dist/esm-browser/v4.js\");\n/* harmony import */ var _utils__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../utils */ \"./src/utils/index.ts\");\nvar __assign = (undefined && undefined.__assign) || function () {\n __assign = Object.assign || function(t) {\n for (var s, i = 1, n = arguments.length; i < n; i++) {\n s = arguments[i];\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))\n t[p] = s[p];\n }\n return t;\n };\n return __assign.apply(this, arguments);\n};\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};\nvar __generator = (undefined && undefined.__generator) || function (thisArg, body) {\n var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;\n return g = { next: verb(0), \"throw\": verb(1), \"return\": verb(2) }, typeof Symbol === \"function\" && (g[Symbol.iterator] = function() { return this; }), g;\n function verb(n) { return function (v) { return step([n, v]); }; }\n function step(op) {\n if (f) throw new TypeError(\"Generator is already executing.\");\n while (g && (g = 0, op[0] && (_ = 0)), _) try {\n if (f = 1, y && (t = op[0] & 2 ? y[\"return\"] : op[0] ? y[\"throw\"] || ((t = y[\"return\"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;\n if (y = 0, t) op = [op[0] & 2, t.value];\n switch (op[0]) {\n case 0: case 1: t = op; break;\n case 4: _.label++; return { value: op[1], done: false };\n case 5: _.label++; y = op[1]; op = [0]; continue;\n case 7: op = _.ops.pop(); _.trys.pop(); continue;\n default:\n if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }\n if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }\n if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }\n if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }\n if (t[2]) _.ops.pop();\n _.trys.pop(); continue;\n }\n op = body.call(thisArg, _);\n } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }\n if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };\n }\n};\n\n\nvar FuncNodesWorker = /** @class */ (function () {\n function FuncNodesWorker(data) {\n var _this = this;\n this.uuid = data.uuid;\n this.on_error = data.on_error || console.error;\n this.messagePromises = new Map();\n this._local_nodeupdates = new Map();\n this._nodeupdatetimer = setTimeout(function () {\n _this.sync_local_node_updates();\n }, 1000);\n this.is_open = true;\n if (data.zustand)\n this.set_zustand(data.zustand);\n }\n FuncNodesWorker.prototype.set_zustand = function (zustand) {\n this._zustand = zustand;\n this._zustand.auto_progress();\n this.stepwise_fullsync();\n };\n FuncNodesWorker.prototype.stepwise_fullsync = function () {\n return __awaiter(this, void 0, void 0, function () {\n return __generator(this, function (_a) {\n switch (_a.label) {\n case 0:\n if (!this._zustand)\n return [2 /*return*/];\n if (!this.is_open)\n return [2 /*return*/];\n return [4 /*yield*/, this.sync_lib()];\n case 1:\n _a.sent();\n return [4 /*yield*/, this.sync_external_worker()];\n case 2:\n _a.sent();\n return [4 /*yield*/, this.sync_funcnodes_plugins()];\n case 3:\n _a.sent();\n return [4 /*yield*/, this.sync_nodespace()];\n case 4:\n _a.sent();\n return [4 /*yield*/, this.sync_view_state()];\n case 5:\n _a.sent();\n return [2 /*return*/];\n }\n });\n });\n };\n FuncNodesWorker.prototype.sync_lib = function () {\n return __awaiter(this, void 0, void 0, function () {\n var resp;\n return __generator(this, function (_a) {\n switch (_a.label) {\n case 0:\n if (!this._zustand)\n return [2 /*return*/];\n if (!this.is_open)\n return [2 /*return*/];\n return [4 /*yield*/, this._send_cmd({\n cmd: \"get_library\",\n wait_for_response: true,\n retries: 2,\n })];\n case 1:\n resp = _a.sent();\n this._zustand.lib.libstate.getState().set({\n lib: resp,\n });\n return [2 /*return*/];\n }\n });\n });\n };\n FuncNodesWorker.prototype.sync_external_worker = function () {\n return __awaiter(this, void 0, void 0, function () {\n var resp;\n return __generator(this, function (_a) {\n switch (_a.label) {\n case 0:\n if (!this._zustand)\n return [2 /*return*/];\n if (!this.is_open)\n return [2 /*return*/];\n return [4 /*yield*/, this._send_cmd({\n cmd: \"get_worker_dependencies\",\n wait_for_response: true,\n })];\n case 1:\n resp = _a.sent();\n this._zustand.lib.libstate.getState().set({\n external_worker: resp,\n });\n return [2 /*return*/];\n }\n });\n });\n };\n FuncNodesWorker.prototype.sync_funcnodes_plugins = function () {\n return __awaiter(this, void 0, void 0, function () {\n var resp, _i, resp_1, key, plugin, _a, _b, js, scripttag, _c, _d, css, styletag, binaryString, binaryLen, bytes, i, blob, blobUrl, module;\n return __generator(this, function (_e) {\n switch (_e.label) {\n case 0:\n if (!this._zustand)\n return [2 /*return*/];\n if (!this.is_open)\n return [2 /*return*/];\n return [4 /*yield*/, this._send_cmd({\n cmd: \"get_plugin_keys\",\n wait_for_response: true,\n kwargs: { type: \"react\" },\n })];\n case 1:\n resp = (_e.sent());\n _i = 0, resp_1 = resp;\n _e.label = 2;\n case 2:\n if (!(_i < resp_1.length)) return [3 /*break*/, 6];\n key = resp_1[_i];\n return [4 /*yield*/, this._send_cmd({\n cmd: \"get_plugin\",\n wait_for_response: true,\n kwargs: { key: key, type: \"react\" },\n })];\n case 3:\n plugin = _e.sent();\n if (plugin.js) {\n for (_a = 0, _b = plugin.js; _a < _b.length; _a++) {\n js = _b[_a];\n scripttag = document.createElement(\"script\");\n scripttag.text = atob(js);\n document.body.appendChild(scripttag);\n }\n }\n if (plugin.css) {\n for (_c = 0, _d = plugin.css; _c < _d.length; _c++) {\n css = _d[_c];\n styletag = document.createElement(\"style\");\n styletag.innerHTML = atob(css);\n document.head.appendChild(styletag);\n }\n }\n if (!(plugin.module !== undefined)) return [3 /*break*/, 5];\n binaryString = atob(plugin.module);\n binaryLen = binaryString.length;\n bytes = new Uint8Array(binaryLen);\n for (i = 0; i < binaryLen; i++) {\n bytes[i] = binaryString.charCodeAt(i);\n }\n blob = new Blob([bytes], { type: \"application/javascript\" });\n blobUrl = URL.createObjectURL(blob);\n return [4 /*yield*/, import(/* webpackIgnore: true */ blobUrl)];\n case 4:\n module = _e.sent();\n // gc the blob\n URL.revokeObjectURL(blobUrl);\n this._zustand.add_plugin(key, module.default);\n _e.label = 5;\n case 5:\n _i++;\n return [3 /*break*/, 2];\n case 6: return [2 /*return*/];\n }\n });\n });\n };\n FuncNodesWorker.prototype.sync_view_state = function () {\n return __awaiter(this, void 0, void 0, function () {\n var resp, nodeview, nodeid, nodev;\n return __generator(this, function (_a) {\n switch (_a.label) {\n case 0:\n if (!this._zustand)\n return [2 /*return*/];\n if (!this.is_open)\n return [2 /*return*/];\n return [4 /*yield*/, this._send_cmd({\n cmd: \"view_state\",\n wait_for_response: true,\n })];\n case 1:\n resp = (_a.sent());\n if (resp.renderoptions)\n this._zustand.update_render_options(resp.renderoptions);\n nodeview = resp.nodes;\n if (nodeview) {\n for (nodeid in nodeview) {\n nodev = nodeview[nodeid];\n this._zustand.on_node_action({\n type: \"update\",\n node: {\n frontend: nodev,\n },\n id: nodeid,\n from_remote: true,\n });\n }\n }\n return [2 /*return*/];\n }\n });\n });\n };\n FuncNodesWorker.prototype.sync_nodespace = function () {\n return __awaiter(this, void 0, void 0, function () {\n var resp, _i, resp_2, node, edges, _a, edges_1, edge;\n return __generator(this, function (_b) {\n switch (_b.label) {\n case 0:\n if (!this._zustand)\n return [2 /*return*/];\n if (!this.is_open)\n return [2 /*return*/];\n return [4 /*yield*/, this._send_cmd({\n cmd: \"get_nodes\",\n kwargs: { with_frontend: true },\n wait_for_response: true,\n })];\n case 1:\n resp = (_b.sent());\n for (_i = 0, resp_2 = resp; _i < resp_2.length; _i++) {\n node = resp_2[_i];\n this._recieve_node_added(node);\n }\n return [4 /*yield*/, this._send_cmd({\n cmd: \"get_edges\",\n wait_for_response: true,\n })];\n case 2:\n edges = (_b.sent());\n for (_a = 0, edges_1 = edges; _a < edges_1.length; _a++) {\n edge = edges_1[_a];\n this._recieve_edge_added.apply(this, edge);\n }\n return [2 /*return*/];\n }\n });\n });\n };\n FuncNodesWorker.prototype.fullsync = function () {\n return __awaiter(this, void 0, void 0, function () {\n var resp, e_1, nodeview, _i, _a, node, _b, _c, edge;\n return __generator(this, function (_d) {\n switch (_d.label) {\n case 0:\n if (!this._zustand)\n return [2 /*return*/];\n if (!this.is_open)\n return [2 /*return*/];\n _d.label = 1;\n case 1:\n if (false) {}\n _d.label = 2;\n case 2:\n _d.trys.push([2, 4, , 5]);\n return [4 /*yield*/, this._send_cmd({ cmd: \"full_state\" })];\n case 3:\n resp = (_d.sent());\n return [3 /*break*/, 6];\n case 4:\n e_1 = _d.sent();\n console.error(\"Error in fullsync\", e_1);\n return [3 /*break*/, 5];\n case 5: return [3 /*break*/, 1];\n case 6:\n console.log(\"Full state\", resp);\n this._zustand.lib.libstate.getState().set({\n lib: resp.backend.lib,\n external_worker: resp.worker_dependencies,\n });\n if (resp.view.renderoptions)\n this._zustand.update_render_options(resp.view.renderoptions);\n nodeview = resp.view.nodes;\n for (_i = 0, _a = resp.backend.nodes; _i < _a.length; _i++) {\n node = _a[_i];\n if (nodeview[node.id] !== undefined) {\n node.frontend = nodeview[node.id];\n }\n this._recieve_node_added(node);\n }\n for (_b = 0, _c = resp.backend.edges; _b < _c.length; _b++) {\n edge = _c[_b];\n this._recieve_edge_added.apply(this, edge);\n }\n return [2 /*return*/];\n }\n });\n });\n };\n FuncNodesWorker.prototype._recieve_edge_added = function (src_nid, src_ioid, trg_nid, trg_ioid) {\n return __awaiter(this, void 0, void 0, function () {\n return __generator(this, function (_a) {\n if (!this._zustand)\n return [2 /*return*/];\n this._zustand.on_edge_action(__assign({ type: \"add\", from_remote: true }, { src_nid: src_nid, src_ioid: src_ioid, trg_nid: trg_nid, trg_ioid: trg_ioid }));\n return [2 /*return*/];\n });\n });\n };\n FuncNodesWorker.prototype.trigger_node = function (node_id) {\n return __awaiter(this, void 0, void 0, function () {\n return __generator(this, function (_a) {\n switch (_a.label) {\n case 0: return [4 /*yield*/, this._send_cmd({\n cmd: \"trigger_node\",\n kwargs: { nid: node_id },\n wait_for_response: false,\n })];\n case 1:\n _a.sent();\n return [2 /*return*/];\n }\n });\n });\n };\n FuncNodesWorker.prototype.add_node = function (node_id) {\n return __awaiter(this, void 0, void 0, function () {\n var resp;\n return __generator(this, function (_a) {\n switch (_a.label) {\n case 0: return [4 /*yield*/, this._send_cmd({\n cmd: \"add_node\",\n kwargs: { id: node_id },\n })];\n case 1:\n resp = _a.sent();\n this._recieve_node_added(resp);\n return [2 /*return*/];\n }\n });\n });\n };\n FuncNodesWorker.prototype.remove_node = function (node_id) {\n return __awaiter(this, void 0, void 0, function () {\n return __generator(this, function (_a) {\n switch (_a.label) {\n case 0: return [4 /*yield*/, this._send_cmd({\n cmd: \"remove_node\",\n kwargs: { id: node_id },\n })];\n case 1:\n _a.sent();\n return [2 /*return*/];\n }\n });\n });\n };\n FuncNodesWorker.prototype._recieve_node_added = function (data) {\n return __awaiter(this, void 0, void 0, function () {\n return __generator(this, function (_a) {\n if (!this._zustand)\n return [2 /*return*/];\n this._zustand.on_node_action({\n type: \"add\",\n node: data,\n id: data.id,\n from_remote: true,\n });\n return [2 /*return*/];\n });\n });\n };\n FuncNodesWorker.prototype.add_edge = function (_a) {\n var src_nid = _a.src_nid, src_ioid = _a.src_ioid, trg_nid = _a.trg_nid, trg_ioid = _a.trg_ioid, _b = _a.replace, replace = _b === void 0 ? false : _b;\n return this._send_cmd({\n cmd: \"add_edge\",\n kwargs: { src_nid: src_nid, src_ioid: src_ioid, trg_nid: trg_nid, trg_ioid: trg_ioid, replace: replace },\n });\n };\n FuncNodesWorker.prototype.remove_edge = function (_a) {\n var src_nid = _a.src_nid, src_ioid = _a.src_ioid, trg_nid = _a.trg_nid, trg_ioid = _a.trg_ioid;\n return this._send_cmd({\n cmd: \"remove_edge\",\n kwargs: { src_nid: src_nid, src_ioid: src_ioid, trg_nid: trg_nid, trg_ioid: trg_ioid },\n });\n };\n FuncNodesWorker.prototype.add_external_worker = function (_a) {\n return __awaiter(this, arguments, void 0, function (_b) {\n var module = _b.module, cls_module = _b.cls_module, cls_name = _b.cls_name;\n return __generator(this, function (_c) {\n switch (_c.label) {\n case 0: return [4 /*yield*/, this._send_cmd({\n cmd: \"add_external_worker\",\n kwargs: { module: module, cls_module: cls_module, cls_name: cls_name },\n })];\n case 1: return [2 /*return*/, _c.sent()];\n }\n });\n });\n };\n FuncNodesWorker.prototype.sync_local_node_updates = function () {\n var _this = this;\n clearTimeout(this._nodeupdatetimer);\n this._local_nodeupdates.forEach(function (node, id) { return __awaiter(_this, void 0, void 0, function () {\n var ans;\n return __generator(this, function (_a) {\n switch (_a.label) {\n case 0: return [4 /*yield*/, this._send_cmd({\n cmd: \"update_node\",\n kwargs: { nid: id, data: node },\n wait_for_response: true,\n })];\n case 1:\n ans = _a.sent();\n if (!this._zustand)\n return [2 /*return*/];\n this._zustand.on_node_action({\n type: \"update\",\n node: ans,\n id: id,\n from_remote: true,\n });\n return [2 /*return*/];\n }\n });\n }); });\n this._local_nodeupdates.clear();\n this._nodeupdatetimer = setTimeout(function () {\n _this.sync_local_node_updates();\n }, 200);\n };\n FuncNodesWorker.prototype.locally_update_node = function (action) {\n // Add the type to the parameter\n var currentstate = this._local_nodeupdates.get(action.id);\n if (currentstate) {\n var _a = (0,_utils__WEBPACK_IMPORTED_MODULE_0__.deep_merge)(currentstate, action.node), new_obj = _a.new_obj, change = _a.change;\n if (change) {\n this._local_nodeupdates.set(action.id, new_obj);\n }\n }\n else {\n this._local_nodeupdates.set(action.id, action.node);\n }\n if (action.immediate) {\n this.sync_local_node_updates();\n }\n };\n FuncNodesWorker.prototype.get_remote_node_state = function (nid) {\n return __awaiter(this, void 0, void 0, function () {\n var ans;\n return __generator(this, function (_a) {\n switch (_a.label) {\n case 0: return [4 /*yield*/, this._send_cmd({\n cmd: \"get_node_state\",\n kwargs: { nid: nid },\n wait_for_response: true,\n })];\n case 1:\n ans = _a.sent();\n if (!this._zustand)\n return [2 /*return*/];\n this._zustand.on_node_action({\n type: \"update\",\n node: ans,\n id: ans.id,\n from_remote: true,\n });\n return [2 /*return*/];\n }\n });\n });\n };\n FuncNodesWorker.prototype.set_io_value = function (_a) {\n var nid = _a.nid, ioid = _a.ioid, value = _a.value, _b = _a.set_default, set_default = _b === void 0 ? false : _b;\n if (set_default && value == \"<NoValue>\")\n set_default = false;\n return this._send_cmd({\n cmd: \"set_io_value\",\n kwargs: { nid: nid, ioid: ioid, value: value, set_default: set_default },\n wait_for_response: true,\n });\n };\n FuncNodesWorker.prototype.clear = function () {\n return this._send_cmd({ cmd: \"clear\" });\n };\n FuncNodesWorker.prototype.save = function () {\n return this._send_cmd({ cmd: \"save\", wait_for_response: true });\n };\n FuncNodesWorker.prototype.load = function (data) {\n var _this = this;\n return this._send_cmd({\n cmd: \"load_data\",\n kwargs: { data: data },\n wait_for_response: true,\n }).then(function () {\n _this.stepwise_fullsync();\n });\n };\n FuncNodesWorker.prototype.get_io_value = function (_a) {\n var nid = _a.nid, ioid = _a.ioid;\n return this._send_cmd({\n cmd: \"get_io_value\",\n kwargs: { nid: nid, ioid: ioid },\n wait_for_response: true,\n });\n };\n FuncNodesWorker.prototype._send_cmd = function (_a) {\n return __awaiter(this, arguments, void 0, function (_b) {\n var msg, wait_for_response_callback;\n var _this = this;\n var cmd = _b.cmd, kwargs = _b.kwargs, _c = _b.wait_for_response, wait_for_response = _c === void 0 ? true : _c, _d = _b.response_timeout, response_timeout = _d === void 0 ? 5000 : _d, _e = _b.retries, retries = _e === void 0 ? 2 : _e;\n return __generator(this, function (_f) {\n msg = {\n type: \"cmd\",\n cmd: cmd,\n kwargs: kwargs || {},\n };\n if (wait_for_response) {\n if (retries < 0)\n retries = 0;\n wait_for_response_callback = function () { return __awaiter(_this, void 0, void 0, function () {\n var response, _loop_1, this_1, state_1;\n var _this = this;\n return __generator(this, function (_a) {\n switch (_a.label) {\n case 0:\n _loop_1 = function () {\n var msid, promise, e_2;\n return __generator(this, function (_b) {\n switch (_b.label) {\n case 0:\n msid = msg.id || (0,uuid__WEBPACK_IMPORTED_MODULE_1__[\"default\"])();\n msg.id = msid;\n promise = new Promise(function (resolve, reject) {\n var timeout = setTimeout(function () {\n reject(\"Timeout@wait_for_response for \" + cmd);\n }, response_timeout);\n _this.messagePromises.set(msid, {\n resolve: function (data) {\n clearTimeout(timeout);\n resolve(data);\n _this.messagePromises.delete(msid);\n },\n reject: function (err) {\n clearTimeout(timeout);\n reject(err);\n _this.messagePromises.delete(msid);\n },\n });\n });\n return [4 /*yield*/, this_1.send(msg)];\n case 1:\n _b.sent();\n _b.label = 2;\n case 2:\n _b.trys.push([2, 4, , 5]);\n return [4 /*yield*/, promise];\n case 3:\n response = _b.sent();\n return [2 /*return*/, \"break\"];\n case 4:\n e_2 = _b.sent();\n if (retries === 0)\n throw e_2;\n retries -= 1;\n return [2 /*return*/, \"continue\"];\n case 5: return [2 /*return*/];\n }\n });\n };\n this_1 = this;\n _a.label = 1;\n case 1:\n if (!(retries >= 0)) return [3 /*break*/, 3];\n return [5 /*yield**/, _loop_1()];\n case 2:\n state_1 = _a.sent();\n if (state_1 === \"break\")\n return [3 /*break*/, 3];\n return [3 /*break*/, 1];\n case 3: return [2 /*return*/, response];\n }\n });\n }); };\n return [2 /*return*/, wait_for_response_callback()];\n }\n return [2 /*return*/, this.send(msg)];\n });\n });\n };\n FuncNodesWorker.prototype.send = function (_data) {\n return __awaiter(this, void 0, void 0, function () {\n return __generator(this, function (_a) {\n // this is the abstract method that should be implemented by subclasses\n throw new Error(\"Not implemented\");\n });\n });\n };\n FuncNodesWorker.prototype.recieve_nodespace_event = function (_a) {\n return __awaiter(this, arguments, void 0, function (_b) {\n var _c, _d;\n var event = _b.event, data = _b.data;\n return __generator(this, function (_e) {\n switch (event) {\n case \"after_set_value\":\n if (!this._zustand)\n return [2 /*return*/];\n return [2 /*return*/, this._zustand.on_node_action({\n type: \"update\",\n node: {\n id: data.node,\n io: (_c = {},\n _c[data.io] = {\n value: data.result,\n },\n _c),\n },\n id: data.node,\n from_remote: true,\n })];\n case \"after_update_value_options\":\n if (!this._zustand)\n return [2 /*return*/];\n return [2 /*return*/, this._zustand.on_node_action({\n type: \"update\",\n node: {\n id: data.node,\n io: (_d = {},\n _d[data.io] = {\n value_options: data.result,\n },\n _d),\n },\n id: data.node,\n from_remote: true,\n })];\n case \"triggerstart\":\n if (!this._zustand)\n return [2 /*return*/];\n return [2 /*return*/, this._zustand.on_node_action({\n type: \"update\",\n node: {\n id: data.node,\n in_trigger: true,\n },\n id: data.node,\n from_remote: true,\n })];\n case \"triggerdone\":\n if (!this._zustand)\n return [2 /*return*/];\n return [2 /*return*/, this._zustand.on_node_action({\n type: \"update\",\n node: {\n id: data.node,\n in_trigger: false,\n },\n id: data.node,\n from_remote: true,\n })];\n case \"node_trigger_error\":\n if (!this._zustand)\n return [2 /*return*/];\n return [2 /*return*/, this._zustand.on_node_action({\n type: \"error\",\n errortype: \"trigger\",\n error: data.error,\n id: data.node,\n from_remote: true,\n })];\n case \"node_removed\":\n if (!this._zustand)\n return [2 /*return*/];\n return [2 /*return*/, this._zustand.on_node_action({\n type: \"delete\",\n id: data.node,\n from_remote: true,\n })];\n case \"node_added\":\n return [2 /*return*/, this._recieve_node_added(data.node)];\n case \"after_disconnect\":\n if (!data.result)\n return [2 /*return*/];\n if (!Array.isArray(data.result))\n return [2 /*return*/];\n if (data.result.length !== 4)\n return [2 /*return*/];\n if (!this._zustand)\n return [2 /*return*/];\n return [2 /*return*/, this._zustand.on_edge_action({\n type: \"delete\",\n from_remote: true,\n src_nid: data.result[0],\n src_ioid: data.result[1],\n trg_nid: data.result[2],\n trg_ioid: data.result[3],\n })];\n case \"after_connect\":\n if (!data.result)\n return [2 /*return*/];\n if (!Array.isArray(data.result))\n return [2 /*return*/];\n if (data.result.length !== 4)\n return [2 /*return*/];\n return [2 /*return*/, this._recieve_edge_added.apply(this, data.result)];\n case \"after_add_shelf\":\n if (!data.result)\n return [2 /*return*/];\n if (!this._zustand)\n return [2 /*return*/];\n return [2 /*return*/, this._zustand.lib.libstate.getState().set({\n lib: data.result,\n })];\n default:\n console.warn(\"Unhandled nodepsace event\", event, data);\n break;\n }\n return [2 /*return*/];\n });\n });\n };\n FuncNodesWorker.prototype.add_lib = function (lib) {\n return __awaiter(this, void 0, void 0, function () {\n var ans;\n return __generator(this, function (_a) {\n switch (_a.label) {\n case 0: return [4 /*yield*/, this._send_cmd({\n cmd: \"add_shelf\",\n kwargs: { src: lib },\n wait_for_response: false,\n })];\n case 1:\n ans = _a.sent();\n return [2 /*return*/, ans];\n }\n });\n });\n };\n FuncNodesWorker.prototype.add_worker_package = function (pkg) {\n return __awaiter(this, void 0, void 0, function () {\n var ans;\n return __generator(this, function (_a) {\n switch (_a.label) {\n case 0: return [4 /*yield*/, this._send_cmd({\n cmd: \"add_worker_package\",\n kwargs: { src: pkg },\n wait_for_response: false,\n })];\n case 1:\n ans = _a.sent();\n return [2 /*return*/, ans];\n }\n });\n });\n };\n FuncNodesWorker.prototype.recieve = function (data) {\n return __awaiter(this, void 0, void 0, function () {\n var promise, _a;\n return __generator(this, function (_b) {\n switch (_b.label) {\n case 0:\n _a = data.type;\n switch (_a) {\n case \"nsevent\": return [3 /*break*/, 1];\n case \"result\": return [3 /*break*/, 3];\n case \"error\": return [3 /*break*/, 4];\n case \"progress\": return [3 /*break*/, 5];\n }\n return [3 /*break*/, 6];\n case 1: return [4 /*yield*/, this.recieve_nodespace_event(data)];\n case 2: return [2 /*return*/, _b.sent()];\n case 3:\n promise = data.id && this.messagePromises.get(data.id);\n if (promise) {\n return [2 /*return*/, promise.resolve(data.result)];\n }\n return [3 /*break*/, 7];\n case 4:\n this.on_error(data.tb + \"\\n\" + data.error);\n promise = data.id && this.messagePromises.get(data.id);\n if (promise) {\n return [2 /*return*/, promise.reject(data.error)];\n }\n return [3 /*break*/, 7];\n case 5:\n if (!this._zustand)\n return [2 /*return*/];\n this._zustand.set_progress(data);\n return [3 /*break*/, 7];\n case 6:\n console.warn(\"Unhandled message\", data);\n return [3 /*break*/, 7];\n case 7: return [2 /*return*/];\n }\n });\n });\n };\n FuncNodesWorker.prototype.disconnect = function () { };\n FuncNodesWorker.prototype.onclose = function () {\n this.is_open = false;\n if (!this._zustand)\n return;\n this._zustand.auto_progress();\n };\n FuncNodesWorker.prototype.reconnect = function () {\n return __awaiter(this, void 0, void 0, function () { return __generator(this, function (_a) {\n return [2 /*return*/];\n }); });\n };\n FuncNodesWorker.prototype.stop = function () {\n return __awaiter(this, void 0, void 0, function () {\n var oldonclose;\n var _this = this;\n return __generator(this, function (_a) {\n switch (_a.label) {\n case 0: return [4 /*yield*/, this._send_cmd({ cmd: \"stop_worker\", wait_for_response: false })];\n case 1:\n _a.sent();\n oldonclose = this.onclose.bind(this);\n this.onclose = function () {\n oldonclose();\n if (!_this._zustand)\n return;\n if (_this._zustand.worker === _this) {\n _this._zustand.clear_all();\n }\n _this.onclose = oldonclose;\n };\n return [2 /*return*/];\n }\n });\n });\n };\n FuncNodesWorker.prototype.get_io_full_value = function (_a) {\n return __awaiter(this, arguments, void 0, function (_b) {\n var res;\n var _c;\n var nid = _b.nid, ioid = _b.ioid;\n return __generator(this, function (_d) {\n switch (_d.label) {\n case 0: return [4 /*yield*/, this._send_cmd({\n cmd: \"get_io_full_value\",\n kwargs: { nid: nid, ioid: ioid },\n wait_for_response: true,\n })];\n case 1:\n res = _d.sent();\n //console.log(\"Full value\", res);\n if (!this._zustand)\n return [2 /*return*/];\n this._zustand.on_node_action({\n type: \"update\",\n node: {\n io: (_c = {},\n _c[ioid] = {\n fullvalue: res,\n },\n _c),\n },\n id: nid,\n from_remote: true,\n });\n return [2 /*return*/, res];\n }\n });\n });\n };\n FuncNodesWorker.prototype.get_node_status = function (nid) {\n return __awaiter(this, void 0, void 0, function () {\n var res;\n return __generator(this, function (_a) {\n switch (_a.label) {\n case 0: return [4 /*yield*/, this._send_cmd({\n cmd: \"get_node_state\",\n kwargs: { nid: nid },\n wait_for_response: true,\n })];\n case 1:\n res = _a.sent();\n return [2 /*return*/, res];\n }\n });\n });\n };\n return FuncNodesWorker;\n}());\n/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (FuncNodesWorker);\n\n\n//# sourceURL=webpack://@linkdlab/funcnodes_react_flow/./src/funcnodes/funcnodesworker.ts?");
2560
2560
 
2561
2561
  /***/ }),
2562
2562
 
@@ -2596,7 +2596,7 @@ eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpac
2596
2596
  \***********************/
2597
2597
  /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
2598
2598
 
2599
- eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ WebSocketWorker: () => (/* reexport safe */ _funcnodes_websocketworker__WEBPACK_IMPORTED_MODULE_2__[\"default\"]),\n/* harmony export */ \"default\": () => (__WEBPACK_DEFAULT_EXPORT__)\n/* harmony export */ });\n/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! react */ \"react\");\n/* harmony import */ var _frontend__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./frontend */ \"./src/frontend/index.tsx\");\n/* harmony import */ var _funcnodes_websocketworker__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./funcnodes/websocketworker */ \"./src/funcnodes/websocketworker.ts\");\n\n\n\n/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (_frontend__WEBPACK_IMPORTED_MODULE_1__[\"default\"]);\n// import ReactDOM from \"react-dom\";\n// (async () => {\n// // @ts-ignore\n// window.React = await import(\"react\");\n// })();\n// window.ReactDOM = ReactDOM;\n// @ts-ignore\nwindow.React = react__WEBPACK_IMPORTED_MODULE_0__[\"default\"];\n\n\n\n//# sourceURL=webpack://@linkdlab/funcnodes_react_flow/./src/index.tsx?");
2599
+ eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ WebSocketWorker: () => (/* reexport safe */ _funcnodes_websocketworker__WEBPACK_IMPORTED_MODULE_2__[\"default\"]),\n/* harmony export */ \"default\": () => (__WEBPACK_DEFAULT_EXPORT__),\n/* harmony export */ helperfunctions: () => (/* reexport safe */ _utils_helperfunctions__WEBPACK_IMPORTED_MODULE_3__[\"default\"])\n/* harmony export */ });\n/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! react */ \"react\");\n/* harmony import */ var _frontend__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./frontend */ \"./src/frontend/index.tsx\");\n/* harmony import */ var _funcnodes_websocketworker__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./funcnodes/websocketworker */ \"./src/funcnodes/websocketworker.ts\");\n/* harmony import */ var _utils_helperfunctions__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./utils/helperfunctions */ \"./src/utils/helperfunctions.ts\");\n\n\n\n\n/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (_frontend__WEBPACK_IMPORTED_MODULE_1__[\"default\"]);\n// import ReactDOM from \"react-dom\";\n// (async () => {\n// // @ts-ignore\n// window.React = await import(\"react\");\n// })();\n// window.ReactDOM = ReactDOM;\n// @ts-ignore\nwindow.React = react__WEBPACK_IMPORTED_MODULE_0__[\"default\"];\n\n\n\n//# sourceURL=webpack://@linkdlab/funcnodes_react_flow/./src/index.tsx?");
2600
2600
 
2601
2601
  /***/ }),
2602
2602
 
@@ -2660,6 +2660,16 @@ eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpac
2660
2660
 
2661
2661
  /***/ }),
2662
2662
 
2663
+ /***/ "./src/utils/helperfunctions.ts":
2664
+ /*!**************************************!*\
2665
+ !*** ./src/utils/helperfunctions.ts ***!
2666
+ \**************************************/
2667
+ /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
2668
+
2669
+ eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"default\": () => (__WEBPACK_DEFAULT_EXPORT__),\n/* harmony export */ set_io_value: () => (/* binding */ set_io_value)\n/* harmony export */ });\n/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! react */ \"react\");\n/* harmony import */ var _frontend__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../frontend */ \"./src/frontend/index.tsx\");\n\n\nvar set_io_value = function (_a) {\n var _b;\n var nid = _a.nid, ioid = _a.ioid, value = _a.value, _c = _a.set_default, set_default = _c === void 0 ? false : _c;\n var fnrf_zst = (0,react__WEBPACK_IMPORTED_MODULE_0__.useContext)(_frontend__WEBPACK_IMPORTED_MODULE_1__.FuncNodesContext);\n (_b = fnrf_zst.worker) === null || _b === void 0 ? void 0 : _b.set_io_value({\n nid: nid,\n ioid: ioid,\n value: value,\n set_default: set_default,\n });\n};\nvar helperfunctions = { set_io_value: set_io_value };\n/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (helperfunctions);\n\n\n\n//# sourceURL=webpack://@linkdlab/funcnodes_react_flow/./src/utils/helperfunctions.ts?");
2670
+
2671
+ /***/ }),
2672
+
2663
2673
  /***/ "./src/utils/index.ts":
2664
2674
  /*!****************************!*\
2665
2675
  !*** ./src/utils/index.ts ***!
@@ -3088,16 +3098,6 @@ eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpac
3088
3098
 
3089
3099
  /***/ }),
3090
3100
 
3091
- /***/ "../node_modules/@tanem/svg-injector/node_modules/tslib/tslib.es6.mjs":
3092
- /*!****************************************************************************!*\
3093
- !*** ../node_modules/@tanem/svg-injector/node_modules/tslib/tslib.es6.mjs ***!
3094
- \****************************************************************************/
3095
- /***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => {
3096
-
3097
- eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ __addDisposableResource: () => (/* binding */ __addDisposableResource),\n/* harmony export */ __assign: () => (/* binding */ __assign),\n/* harmony export */ __asyncDelegator: () => (/* binding */ __asyncDelegator),\n/* harmony export */ __asyncGenerator: () => (/* binding */ __asyncGenerator),\n/* harmony export */ __asyncValues: () => (/* binding */ __asyncValues),\n/* harmony export */ __await: () => (/* binding */ __await),\n/* harmony export */ __awaiter: () => (/* binding */ __awaiter),\n/* harmony export */ __classPrivateFieldGet: () => (/* binding */ __classPrivateFieldGet),\n/* harmony export */ __classPrivateFieldIn: () => (/* binding */ __classPrivateFieldIn),\n/* harmony export */ __classPrivateFieldSet: () => (/* binding */ __classPrivateFieldSet),\n/* harmony export */ __createBinding: () => (/* binding */ __createBinding),\n/* harmony export */ __decorate: () => (/* binding */ __decorate),\n/* harmony export */ __disposeResources: () => (/* binding */ __disposeResources),\n/* harmony export */ __esDecorate: () => (/* binding */ __esDecorate),\n/* harmony export */ __exportStar: () => (/* binding */ __exportStar),\n/* harmony export */ __extends: () => (/* binding */ __extends),\n/* harmony export */ __generator: () => (/* binding */ __generator),\n/* harmony export */ __importDefault: () => (/* binding */ __importDefault),\n/* harmony export */ __importStar: () => (/* binding */ __importStar),\n/* harmony export */ __makeTemplateObject: () => (/* binding */ __makeTemplateObject),\n/* harmony export */ __metadata: () => (/* binding */ __metadata),\n/* harmony export */ __param: () => (/* binding */ __param),\n/* harmony export */ __propKey: () => (/* binding */ __propKey),\n/* harmony export */ __read: () => (/* binding */ __read),\n/* harmony export */ __rest: () => (/* binding */ __rest),\n/* harmony export */ __runInitializers: () => (/* binding */ __runInitializers),\n/* harmony export */ __setFunctionName: () => (/* binding */ __setFunctionName),\n/* harmony export */ __spread: () => (/* binding */ __spread),\n/* harmony export */ __spreadArray: () => (/* binding */ __spreadArray),\n/* harmony export */ __spreadArrays: () => (/* binding */ __spreadArrays),\n/* harmony export */ __values: () => (/* binding */ __values),\n/* harmony export */ \"default\": () => (__WEBPACK_DEFAULT_EXPORT__)\n/* harmony export */ });\n/******************************************************************************\nCopyright (c) Microsoft Corporation.\n\nPermission to use, copy, modify, and/or distribute this software for any\npurpose with or without fee is hereby granted.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH\nREGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY\nAND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,\nINDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM\nLOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR\nOTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR\nPERFORMANCE OF THIS SOFTWARE.\n***************************************************************************** */\n/* global Reflect, Promise, SuppressedError, Symbol */\n\nvar extendStatics = function(d, b) {\n extendStatics = Object.setPrototypeOf ||\n ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\n function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };\n return extendStatics(d, b);\n};\n\nfunction __extends(d, b) {\n if (typeof b !== \"function\" && b !== null)\n throw new TypeError(\"Class extends value \" + String(b) + \" is not a constructor or null\");\n extendStatics(d, b);\n function __() { this.constructor = d; }\n d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\n}\n\nvar __assign = function() {\n __assign = Object.assign || function __assign(t) {\n for (var s, i = 1, n = arguments.length; i < n; i++) {\n s = arguments[i];\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p)) t[p] = s[p];\n }\n return t;\n }\n return __assign.apply(this, arguments);\n}\n\nfunction __rest(s, e) {\n var t = {};\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)\n t[p] = s[p];\n if (s != null && typeof Object.getOwnPropertySymbols === \"function\")\n for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {\n if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))\n t[p[i]] = s[p[i]];\n }\n return t;\n}\n\nfunction __decorate(decorators, target, key, desc) {\n var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;\n if (typeof Reflect === \"object\" && typeof Reflect.decorate === \"function\") r = Reflect.decorate(decorators, target, key, desc);\n else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;\n return c > 3 && r && Object.defineProperty(target, key, r), r;\n}\n\nfunction __param(paramIndex, decorator) {\n return function (target, key) { decorator(target, key, paramIndex); }\n}\n\nfunction __esDecorate(ctor, descriptorIn, decorators, contextIn, initializers, extraInitializers) {\n function accept(f) { if (f !== void 0 && typeof f !== \"function\") throw new TypeError(\"Function expected\"); return f; }\n var kind = contextIn.kind, key = kind === \"getter\" ? \"get\" : kind === \"setter\" ? \"set\" : \"value\";\n var target = !descriptorIn && ctor ? contextIn[\"static\"] ? ctor : ctor.prototype : null;\n var descriptor = descriptorIn || (target ? Object.getOwnPropertyDescriptor(target, contextIn.name) : {});\n var _, done = false;\n for (var i = decorators.length - 1; i >= 0; i--) {\n var context = {};\n for (var p in contextIn) context[p] = p === \"access\" ? {} : contextIn[p];\n for (var p in contextIn.access) context.access[p] = contextIn.access[p];\n context.addInitializer = function (f) { if (done) throw new TypeError(\"Cannot add initializers after decoration has completed\"); extraInitializers.push(accept(f || null)); };\n var result = (0, decorators[i])(kind === \"accessor\" ? { get: descriptor.get, set: descriptor.set } : descriptor[key], context);\n if (kind === \"accessor\") {\n if (result === void 0) continue;\n if (result === null || typeof result !== \"object\") throw new TypeError(\"Object expected\");\n if (_ = accept(result.get)) descriptor.get = _;\n if (_ = accept(result.set)) descriptor.set = _;\n if (_ = accept(result.init)) initializers.unshift(_);\n }\n else if (_ = accept(result)) {\n if (kind === \"field\") initializers.unshift(_);\n else descriptor[key] = _;\n }\n }\n if (target) Object.defineProperty(target, contextIn.name, descriptor);\n done = true;\n};\n\nfunction __runInitializers(thisArg, initializers, value) {\n var useValue = arguments.length > 2;\n for (var i = 0; i < initializers.length; i++) {\n value = useValue ? initializers[i].call(thisArg, value) : initializers[i].call(thisArg);\n }\n return useValue ? value : void 0;\n};\n\nfunction __propKey(x) {\n return typeof x === \"symbol\" ? x : \"\".concat(x);\n};\n\nfunction __setFunctionName(f, name, prefix) {\n if (typeof name === \"symbol\") name = name.description ? \"[\".concat(name.description, \"]\") : \"\";\n return Object.defineProperty(f, \"name\", { configurable: true, value: prefix ? \"\".concat(prefix, \" \", name) : name });\n};\n\nfunction __metadata(metadataKey, metadataValue) {\n if (typeof Reflect === \"object\" && typeof Reflect.metadata === \"function\") return Reflect.metadata(metadataKey, metadataValue);\n}\n\nfunction __awaiter(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 __generator(thisArg, body) {\n var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;\n return g = { next: verb(0), \"throw\": verb(1), \"return\": verb(2) }, typeof Symbol === \"function\" && (g[Symbol.iterator] = function() { return this; }), g;\n function verb(n) { return function (v) { return step([n, v]); }; }\n function step(op) {\n if (f) throw new TypeError(\"Generator is already executing.\");\n while (g && (g = 0, op[0] && (_ = 0)), _) try {\n if (f = 1, y && (t = op[0] & 2 ? y[\"return\"] : op[0] ? y[\"throw\"] || ((t = y[\"return\"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;\n if (y = 0, t) op = [op[0] & 2, t.value];\n switch (op[0]) {\n case 0: case 1: t = op; break;\n case 4: _.label++; return { value: op[1], done: false };\n case 5: _.label++; y = op[1]; op = [0]; continue;\n case 7: op = _.ops.pop(); _.trys.pop(); continue;\n default:\n if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }\n if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }\n if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }\n if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }\n if (t[2]) _.ops.pop();\n _.trys.pop(); continue;\n }\n op = body.call(thisArg, _);\n } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }\n if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };\n }\n}\n\nvar __createBinding = Object.create ? (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n var desc = Object.getOwnPropertyDescriptor(m, k);\n if (!desc || (\"get\" in desc ? !m.__esModule : desc.writable || desc.configurable)) {\n desc = { enumerable: true, get: function() { return m[k]; } };\n }\n Object.defineProperty(o, k2, desc);\n}) : (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n o[k2] = m[k];\n});\n\nfunction __exportStar(m, o) {\n for (var p in m) if (p !== \"default\" && !Object.prototype.hasOwnProperty.call(o, p)) __createBinding(o, m, p);\n}\n\nfunction __values(o) {\n var s = typeof Symbol === \"function\" && Symbol.iterator, m = s && o[s], i = 0;\n if (m) return m.call(o);\n if (o && typeof o.length === \"number\") return {\n next: function () {\n if (o && i >= o.length) o = void 0;\n return { value: o && o[i++], done: !o };\n }\n };\n throw new TypeError(s ? \"Object is not iterable.\" : \"Symbol.iterator is not defined.\");\n}\n\nfunction __read(o, n) {\n var m = typeof Symbol === \"function\" && o[Symbol.iterator];\n if (!m) return o;\n var i = m.call(o), r, ar = [], e;\n try {\n while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);\n }\n catch (error) { e = { error: error }; }\n finally {\n try {\n if (r && !r.done && (m = i[\"return\"])) m.call(i);\n }\n finally { if (e) throw e.error; }\n }\n return ar;\n}\n\n/** @deprecated */\nfunction __spread() {\n for (var ar = [], i = 0; i < arguments.length; i++)\n ar = ar.concat(__read(arguments[i]));\n return ar;\n}\n\n/** @deprecated */\nfunction __spreadArrays() {\n for (var s = 0, i = 0, il = arguments.length; i < il; i++) s += arguments[i].length;\n for (var r = Array(s), k = 0, i = 0; i < il; i++)\n for (var a = arguments[i], j = 0, jl = a.length; j < jl; j++, k++)\n r[k] = a[j];\n return r;\n}\n\nfunction __spreadArray(to, from, pack) {\n if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {\n if (ar || !(i in from)) {\n if (!ar) ar = Array.prototype.slice.call(from, 0, i);\n ar[i] = from[i];\n }\n }\n return to.concat(ar || Array.prototype.slice.call(from));\n}\n\nfunction __await(v) {\n return this instanceof __await ? (this.v = v, this) : new __await(v);\n}\n\nfunction __asyncGenerator(thisArg, _arguments, generator) {\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\n var g = generator.apply(thisArg, _arguments || []), i, q = [];\n return i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\", awaitReturn), i[Symbol.asyncIterator] = function () { return this; }, i;\n function awaitReturn(f) { return function (v) { return Promise.resolve(v).then(f, reject); }; }\n function verb(n, f) { if (g[n]) { i[n] = function (v) { return new Promise(function (a, b) { q.push([n, v, a, b]) > 1 || resume(n, v); }); }; if (f) i[n] = f(i[n]); } }\n function resume(n, v) { try { step(g[n](v)); } catch (e) { settle(q[0][3], e); } }\n function step(r) { r.value instanceof __await ? Promise.resolve(r.value.v).then(fulfill, reject) : settle(q[0][2], r); }\n function fulfill(value) { resume(\"next\", value); }\n function reject(value) { resume(\"throw\", value); }\n function settle(f, v) { if (f(v), q.shift(), q.length) resume(q[0][0], q[0][1]); }\n}\n\nfunction __asyncDelegator(o) {\n var i, p;\n return i = {}, verb(\"next\"), verb(\"throw\", function (e) { throw e; }), verb(\"return\"), i[Symbol.iterator] = function () { return this; }, i;\n function verb(n, f) { i[n] = o[n] ? function (v) { return (p = !p) ? { value: __await(o[n](v)), done: false } : f ? f(v) : v; } : f; }\n}\n\nfunction __asyncValues(o) {\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\n var m = o[Symbol.asyncIterator], i;\n return m ? m.call(o) : (o = typeof __values === \"function\" ? __values(o) : o[Symbol.iterator](), i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i);\n function verb(n) { i[n] = o[n] && function (v) { return new Promise(function (resolve, reject) { v = o[n](v), settle(resolve, reject, v.done, v.value); }); }; }\n function settle(resolve, reject, d, v) { Promise.resolve(v).then(function(v) { resolve({ value: v, done: d }); }, reject); }\n}\n\nfunction __makeTemplateObject(cooked, raw) {\n if (Object.defineProperty) { Object.defineProperty(cooked, \"raw\", { value: raw }); } else { cooked.raw = raw; }\n return cooked;\n};\n\nvar __setModuleDefault = Object.create ? (function(o, v) {\n Object.defineProperty(o, \"default\", { enumerable: true, value: v });\n}) : function(o, v) {\n o[\"default\"] = v;\n};\n\nfunction __importStar(mod) {\n if (mod && mod.__esModule) return mod;\n var result = {};\n if (mod != null) for (var k in mod) if (k !== \"default\" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);\n __setModuleDefault(result, mod);\n return result;\n}\n\nfunction __importDefault(mod) {\n return (mod && mod.__esModule) ? mod : { default: mod };\n}\n\nfunction __classPrivateFieldGet(receiver, state, kind, f) {\n if (kind === \"a\" && !f) throw new TypeError(\"Private accessor was defined without a getter\");\n if (typeof state === \"function\" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError(\"Cannot read private member from an object whose class did not declare it\");\n return kind === \"m\" ? f : kind === \"a\" ? f.call(receiver) : f ? f.value : state.get(receiver);\n}\n\nfunction __classPrivateFieldSet(receiver, state, value, kind, f) {\n if (kind === \"m\") throw new TypeError(\"Private method is not writable\");\n if (kind === \"a\" && !f) throw new TypeError(\"Private accessor was defined without a setter\");\n if (typeof state === \"function\" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError(\"Cannot write private member to an object whose class did not declare it\");\n return (kind === \"a\" ? f.call(receiver, value) : f ? f.value = value : state.set(receiver, value)), value;\n}\n\nfunction __classPrivateFieldIn(state, receiver) {\n if (receiver === null || (typeof receiver !== \"object\" && typeof receiver !== \"function\")) throw new TypeError(\"Cannot use 'in' operator on non-object\");\n return typeof state === \"function\" ? receiver === state : state.has(receiver);\n}\n\nfunction __addDisposableResource(env, value, async) {\n if (value !== null && value !== void 0) {\n if (typeof value !== \"object\" && typeof value !== \"function\") throw new TypeError(\"Object expected.\");\n var dispose, inner;\n if (async) {\n if (!Symbol.asyncDispose) throw new TypeError(\"Symbol.asyncDispose is not defined.\");\n dispose = value[Symbol.asyncDispose];\n }\n if (dispose === void 0) {\n if (!Symbol.dispose) throw new TypeError(\"Symbol.dispose is not defined.\");\n dispose = value[Symbol.dispose];\n if (async) inner = dispose;\n }\n if (typeof dispose !== \"function\") throw new TypeError(\"Object not disposable.\");\n if (inner) dispose = function() { try { inner.call(this); } catch (e) { return Promise.reject(e); } };\n env.stack.push({ value: value, dispose: dispose, async: async });\n }\n else if (async) {\n env.stack.push({ async: true });\n }\n return value;\n}\n\nvar _SuppressedError = typeof SuppressedError === \"function\" ? SuppressedError : function (error, suppressed, message) {\n var e = new Error(message);\n return e.name = \"SuppressedError\", e.error = error, e.suppressed = suppressed, e;\n};\n\nfunction __disposeResources(env) {\n function fail(e) {\n env.error = env.hasError ? new _SuppressedError(e, env.error, \"An error was suppressed during disposal.\") : e;\n env.hasError = true;\n }\n function next() {\n while (env.stack.length) {\n var rec = env.stack.pop();\n try {\n var result = rec.dispose && rec.dispose.call(rec.value);\n if (rec.async) return Promise.resolve(result).then(next, function(e) { fail(e); return next(); });\n }\n catch (e) {\n fail(e);\n }\n }\n if (env.hasError) throw env.error;\n }\n return next();\n}\n\n/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ({\n __extends,\n __assign,\n __rest,\n __decorate,\n __param,\n __metadata,\n __awaiter,\n __generator,\n __createBinding,\n __exportStar,\n __values,\n __read,\n __spread,\n __spreadArrays,\n __spreadArray,\n __await,\n __asyncGenerator,\n __asyncDelegator,\n __asyncValues,\n __makeTemplateObject,\n __importStar,\n __importDefault,\n __classPrivateFieldGet,\n __classPrivateFieldSet,\n __classPrivateFieldIn,\n __addDisposableResource,\n __disposeResources,\n});\n\n\n//# sourceURL=webpack://@linkdlab/funcnodes_react_flow/../node_modules/@tanem/svg-injector/node_modules/tslib/tslib.es6.mjs?");
3098
-
3099
- /***/ }),
3100
-
3101
3101
  /***/ "../node_modules/@babel/runtime/helpers/esm/arrayLikeToArray.js":
3102
3102
  /*!**********************************************************************!*\
3103
3103
  !*** ../node_modules/@babel/runtime/helpers/esm/arrayLikeToArray.js ***!
@@ -4448,46 +4448,6 @@ eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpac
4448
4448
 
4449
4449
  /***/ }),
4450
4450
 
4451
- /***/ "../node_modules/react-svg/node_modules/@babel/runtime/helpers/esm/extends.js":
4452
- /*!************************************************************************************!*\
4453
- !*** ../node_modules/react-svg/node_modules/@babel/runtime/helpers/esm/extends.js ***!
4454
- \************************************************************************************/
4455
- /***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => {
4456
-
4457
- eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"default\": () => (/* binding */ _extends)\n/* harmony export */ });\nfunction _extends() {\n return _extends = Object.assign ? Object.assign.bind() : function (n) {\n for (var e = 1; e < arguments.length; e++) {\n var t = arguments[e];\n for (var r in t) ({}).hasOwnProperty.call(t, r) && (n[r] = t[r]);\n }\n return n;\n }, _extends.apply(null, arguments);\n}\n\n\n//# sourceURL=webpack://@linkdlab/funcnodes_react_flow/../node_modules/react-svg/node_modules/@babel/runtime/helpers/esm/extends.js?");
4458
-
4459
- /***/ }),
4460
-
4461
- /***/ "../node_modules/react-svg/node_modules/@babel/runtime/helpers/esm/inheritsLoose.js":
4462
- /*!******************************************************************************************!*\
4463
- !*** ../node_modules/react-svg/node_modules/@babel/runtime/helpers/esm/inheritsLoose.js ***!
4464
- \******************************************************************************************/
4465
- /***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => {
4466
-
4467
- eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"default\": () => (/* binding */ _inheritsLoose)\n/* harmony export */ });\n/* harmony import */ var _setPrototypeOf_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./setPrototypeOf.js */ \"../node_modules/react-svg/node_modules/@babel/runtime/helpers/esm/setPrototypeOf.js\");\n\nfunction _inheritsLoose(t, o) {\n t.prototype = Object.create(o.prototype), t.prototype.constructor = t, (0,_setPrototypeOf_js__WEBPACK_IMPORTED_MODULE_0__[\"default\"])(t, o);\n}\n\n\n//# sourceURL=webpack://@linkdlab/funcnodes_react_flow/../node_modules/react-svg/node_modules/@babel/runtime/helpers/esm/inheritsLoose.js?");
4468
-
4469
- /***/ }),
4470
-
4471
- /***/ "../node_modules/react-svg/node_modules/@babel/runtime/helpers/esm/objectWithoutPropertiesLoose.js":
4472
- /*!*********************************************************************************************************!*\
4473
- !*** ../node_modules/react-svg/node_modules/@babel/runtime/helpers/esm/objectWithoutPropertiesLoose.js ***!
4474
- \*********************************************************************************************************/
4475
- /***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => {
4476
-
4477
- eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"default\": () => (/* binding */ _objectWithoutPropertiesLoose)\n/* harmony export */ });\nfunction _objectWithoutPropertiesLoose(r, e) {\n if (null == r) return {};\n var t = {};\n for (var n in r) if ({}.hasOwnProperty.call(r, n)) {\n if (e.indexOf(n) >= 0) continue;\n t[n] = r[n];\n }\n return t;\n}\n\n\n//# sourceURL=webpack://@linkdlab/funcnodes_react_flow/../node_modules/react-svg/node_modules/@babel/runtime/helpers/esm/objectWithoutPropertiesLoose.js?");
4478
-
4479
- /***/ }),
4480
-
4481
- /***/ "../node_modules/react-svg/node_modules/@babel/runtime/helpers/esm/setPrototypeOf.js":
4482
- /*!*******************************************************************************************!*\
4483
- !*** ../node_modules/react-svg/node_modules/@babel/runtime/helpers/esm/setPrototypeOf.js ***!
4484
- \*******************************************************************************************/
4485
- /***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => {
4486
-
4487
- eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"default\": () => (/* binding */ _setPrototypeOf)\n/* harmony export */ });\nfunction _setPrototypeOf(t, e) {\n return _setPrototypeOf = Object.setPrototypeOf ? Object.setPrototypeOf.bind() : function (t, e) {\n return t.__proto__ = e, t;\n }, _setPrototypeOf(t, e);\n}\n\n\n//# sourceURL=webpack://@linkdlab/funcnodes_react_flow/../node_modules/react-svg/node_modules/@babel/runtime/helpers/esm/setPrototypeOf.js?");
4488
-
4489
- /***/ }),
4490
-
4491
4451
  /***/ "../node_modules/stylis/src/Enum.js":
4492
4452
  /*!******************************************!*\
4493
4453
  !*** ../node_modules/stylis/src/Enum.js ***!
@@ -4574,7 +4534,7 @@ eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpac
4574
4534
  \*******************************************/
4575
4535
  /***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => {
4576
4536
 
4577
- eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ __addDisposableResource: () => (/* binding */ __addDisposableResource),\n/* harmony export */ __assign: () => (/* binding */ __assign),\n/* harmony export */ __asyncDelegator: () => (/* binding */ __asyncDelegator),\n/* harmony export */ __asyncGenerator: () => (/* binding */ __asyncGenerator),\n/* harmony export */ __asyncValues: () => (/* binding */ __asyncValues),\n/* harmony export */ __await: () => (/* binding */ __await),\n/* harmony export */ __awaiter: () => (/* binding */ __awaiter),\n/* harmony export */ __classPrivateFieldGet: () => (/* binding */ __classPrivateFieldGet),\n/* harmony export */ __classPrivateFieldIn: () => (/* binding */ __classPrivateFieldIn),\n/* harmony export */ __classPrivateFieldSet: () => (/* binding */ __classPrivateFieldSet),\n/* harmony export */ __createBinding: () => (/* binding */ __createBinding),\n/* harmony export */ __decorate: () => (/* binding */ __decorate),\n/* harmony export */ __disposeResources: () => (/* binding */ __disposeResources),\n/* harmony export */ __esDecorate: () => (/* binding */ __esDecorate),\n/* harmony export */ __exportStar: () => (/* binding */ __exportStar),\n/* harmony export */ __extends: () => (/* binding */ __extends),\n/* harmony export */ __generator: () => (/* binding */ __generator),\n/* harmony export */ __importDefault: () => (/* binding */ __importDefault),\n/* harmony export */ __importStar: () => (/* binding */ __importStar),\n/* harmony export */ __makeTemplateObject: () => (/* binding */ __makeTemplateObject),\n/* harmony export */ __metadata: () => (/* binding */ __metadata),\n/* harmony export */ __param: () => (/* binding */ __param),\n/* harmony export */ __propKey: () => (/* binding */ __propKey),\n/* harmony export */ __read: () => (/* binding */ __read),\n/* harmony export */ __rest: () => (/* binding */ __rest),\n/* harmony export */ __runInitializers: () => (/* binding */ __runInitializers),\n/* harmony export */ __setFunctionName: () => (/* binding */ __setFunctionName),\n/* harmony export */ __spread: () => (/* binding */ __spread),\n/* harmony export */ __spreadArray: () => (/* binding */ __spreadArray),\n/* harmony export */ __spreadArrays: () => (/* binding */ __spreadArrays),\n/* harmony export */ __values: () => (/* binding */ __values),\n/* harmony export */ \"default\": () => (__WEBPACK_DEFAULT_EXPORT__)\n/* harmony export */ });\n/******************************************************************************\nCopyright (c) Microsoft Corporation.\n\nPermission to use, copy, modify, and/or distribute this software for any\npurpose with or without fee is hereby granted.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH\nREGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY\nAND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,\nINDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM\nLOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR\nOTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR\nPERFORMANCE OF THIS SOFTWARE.\n***************************************************************************** */\n/* global Reflect, Promise, SuppressedError, Symbol */\n\nvar extendStatics = function(d, b) {\n extendStatics = Object.setPrototypeOf ||\n ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\n function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };\n return extendStatics(d, b);\n};\n\nfunction __extends(d, b) {\n if (typeof b !== \"function\" && b !== null)\n throw new TypeError(\"Class extends value \" + String(b) + \" is not a constructor or null\");\n extendStatics(d, b);\n function __() { this.constructor = d; }\n d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\n}\n\nvar __assign = function() {\n __assign = Object.assign || function __assign(t) {\n for (var s, i = 1, n = arguments.length; i < n; i++) {\n s = arguments[i];\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p)) t[p] = s[p];\n }\n return t;\n }\n return __assign.apply(this, arguments);\n}\n\nfunction __rest(s, e) {\n var t = {};\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)\n t[p] = s[p];\n if (s != null && typeof Object.getOwnPropertySymbols === \"function\")\n for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {\n if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))\n t[p[i]] = s[p[i]];\n }\n return t;\n}\n\nfunction __decorate(decorators, target, key, desc) {\n var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;\n if (typeof Reflect === \"object\" && typeof Reflect.decorate === \"function\") r = Reflect.decorate(decorators, target, key, desc);\n else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;\n return c > 3 && r && Object.defineProperty(target, key, r), r;\n}\n\nfunction __param(paramIndex, decorator) {\n return function (target, key) { decorator(target, key, paramIndex); }\n}\n\nfunction __esDecorate(ctor, descriptorIn, decorators, contextIn, initializers, extraInitializers) {\n function accept(f) { if (f !== void 0 && typeof f !== \"function\") throw new TypeError(\"Function expected\"); return f; }\n var kind = contextIn.kind, key = kind === \"getter\" ? \"get\" : kind === \"setter\" ? \"set\" : \"value\";\n var target = !descriptorIn && ctor ? contextIn[\"static\"] ? ctor : ctor.prototype : null;\n var descriptor = descriptorIn || (target ? Object.getOwnPropertyDescriptor(target, contextIn.name) : {});\n var _, done = false;\n for (var i = decorators.length - 1; i >= 0; i--) {\n var context = {};\n for (var p in contextIn) context[p] = p === \"access\" ? {} : contextIn[p];\n for (var p in contextIn.access) context.access[p] = contextIn.access[p];\n context.addInitializer = function (f) { if (done) throw new TypeError(\"Cannot add initializers after decoration has completed\"); extraInitializers.push(accept(f || null)); };\n var result = (0, decorators[i])(kind === \"accessor\" ? { get: descriptor.get, set: descriptor.set } : descriptor[key], context);\n if (kind === \"accessor\") {\n if (result === void 0) continue;\n if (result === null || typeof result !== \"object\") throw new TypeError(\"Object expected\");\n if (_ = accept(result.get)) descriptor.get = _;\n if (_ = accept(result.set)) descriptor.set = _;\n if (_ = accept(result.init)) initializers.unshift(_);\n }\n else if (_ = accept(result)) {\n if (kind === \"field\") initializers.unshift(_);\n else descriptor[key] = _;\n }\n }\n if (target) Object.defineProperty(target, contextIn.name, descriptor);\n done = true;\n};\n\nfunction __runInitializers(thisArg, initializers, value) {\n var useValue = arguments.length > 2;\n for (var i = 0; i < initializers.length; i++) {\n value = useValue ? initializers[i].call(thisArg, value) : initializers[i].call(thisArg);\n }\n return useValue ? value : void 0;\n};\n\nfunction __propKey(x) {\n return typeof x === \"symbol\" ? x : \"\".concat(x);\n};\n\nfunction __setFunctionName(f, name, prefix) {\n if (typeof name === \"symbol\") name = name.description ? \"[\".concat(name.description, \"]\") : \"\";\n return Object.defineProperty(f, \"name\", { configurable: true, value: prefix ? \"\".concat(prefix, \" \", name) : name });\n};\n\nfunction __metadata(metadataKey, metadataValue) {\n if (typeof Reflect === \"object\" && typeof Reflect.metadata === \"function\") return Reflect.metadata(metadataKey, metadataValue);\n}\n\nfunction __awaiter(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 __generator(thisArg, body) {\n var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;\n return g = { next: verb(0), \"throw\": verb(1), \"return\": verb(2) }, typeof Symbol === \"function\" && (g[Symbol.iterator] = function() { return this; }), g;\n function verb(n) { return function (v) { return step([n, v]); }; }\n function step(op) {\n if (f) throw new TypeError(\"Generator is already executing.\");\n while (g && (g = 0, op[0] && (_ = 0)), _) try {\n if (f = 1, y && (t = op[0] & 2 ? y[\"return\"] : op[0] ? y[\"throw\"] || ((t = y[\"return\"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;\n if (y = 0, t) op = [op[0] & 2, t.value];\n switch (op[0]) {\n case 0: case 1: t = op; break;\n case 4: _.label++; return { value: op[1], done: false };\n case 5: _.label++; y = op[1]; op = [0]; continue;\n case 7: op = _.ops.pop(); _.trys.pop(); continue;\n default:\n if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }\n if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }\n if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }\n if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }\n if (t[2]) _.ops.pop();\n _.trys.pop(); continue;\n }\n op = body.call(thisArg, _);\n } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }\n if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };\n }\n}\n\nvar __createBinding = Object.create ? (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n var desc = Object.getOwnPropertyDescriptor(m, k);\n if (!desc || (\"get\" in desc ? !m.__esModule : desc.writable || desc.configurable)) {\n desc = { enumerable: true, get: function() { return m[k]; } };\n }\n Object.defineProperty(o, k2, desc);\n}) : (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n o[k2] = m[k];\n});\n\nfunction __exportStar(m, o) {\n for (var p in m) if (p !== \"default\" && !Object.prototype.hasOwnProperty.call(o, p)) __createBinding(o, m, p);\n}\n\nfunction __values(o) {\n var s = typeof Symbol === \"function\" && Symbol.iterator, m = s && o[s], i = 0;\n if (m) return m.call(o);\n if (o && typeof o.length === \"number\") return {\n next: function () {\n if (o && i >= o.length) o = void 0;\n return { value: o && o[i++], done: !o };\n }\n };\n throw new TypeError(s ? \"Object is not iterable.\" : \"Symbol.iterator is not defined.\");\n}\n\nfunction __read(o, n) {\n var m = typeof Symbol === \"function\" && o[Symbol.iterator];\n if (!m) return o;\n var i = m.call(o), r, ar = [], e;\n try {\n while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);\n }\n catch (error) { e = { error: error }; }\n finally {\n try {\n if (r && !r.done && (m = i[\"return\"])) m.call(i);\n }\n finally { if (e) throw e.error; }\n }\n return ar;\n}\n\n/** @deprecated */\nfunction __spread() {\n for (var ar = [], i = 0; i < arguments.length; i++)\n ar = ar.concat(__read(arguments[i]));\n return ar;\n}\n\n/** @deprecated */\nfunction __spreadArrays() {\n for (var s = 0, i = 0, il = arguments.length; i < il; i++) s += arguments[i].length;\n for (var r = Array(s), k = 0, i = 0; i < il; i++)\n for (var a = arguments[i], j = 0, jl = a.length; j < jl; j++, k++)\n r[k] = a[j];\n return r;\n}\n\nfunction __spreadArray(to, from, pack) {\n if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {\n if (ar || !(i in from)) {\n if (!ar) ar = Array.prototype.slice.call(from, 0, i);\n ar[i] = from[i];\n }\n }\n return to.concat(ar || Array.prototype.slice.call(from));\n}\n\nfunction __await(v) {\n return this instanceof __await ? (this.v = v, this) : new __await(v);\n}\n\nfunction __asyncGenerator(thisArg, _arguments, generator) {\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\n var g = generator.apply(thisArg, _arguments || []), i, q = [];\n return i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i;\n function verb(n) { if (g[n]) i[n] = function (v) { return new Promise(function (a, b) { q.push([n, v, a, b]) > 1 || resume(n, v); }); }; }\n function resume(n, v) { try { step(g[n](v)); } catch (e) { settle(q[0][3], e); } }\n function step(r) { r.value instanceof __await ? Promise.resolve(r.value.v).then(fulfill, reject) : settle(q[0][2], r); }\n function fulfill(value) { resume(\"next\", value); }\n function reject(value) { resume(\"throw\", value); }\n function settle(f, v) { if (f(v), q.shift(), q.length) resume(q[0][0], q[0][1]); }\n}\n\nfunction __asyncDelegator(o) {\n var i, p;\n return i = {}, verb(\"next\"), verb(\"throw\", function (e) { throw e; }), verb(\"return\"), i[Symbol.iterator] = function () { return this; }, i;\n function verb(n, f) { i[n] = o[n] ? function (v) { return (p = !p) ? { value: __await(o[n](v)), done: false } : f ? f(v) : v; } : f; }\n}\n\nfunction __asyncValues(o) {\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\n var m = o[Symbol.asyncIterator], i;\n return m ? m.call(o) : (o = typeof __values === \"function\" ? __values(o) : o[Symbol.iterator](), i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i);\n function verb(n) { i[n] = o[n] && function (v) { return new Promise(function (resolve, reject) { v = o[n](v), settle(resolve, reject, v.done, v.value); }); }; }\n function settle(resolve, reject, d, v) { Promise.resolve(v).then(function(v) { resolve({ value: v, done: d }); }, reject); }\n}\n\nfunction __makeTemplateObject(cooked, raw) {\n if (Object.defineProperty) { Object.defineProperty(cooked, \"raw\", { value: raw }); } else { cooked.raw = raw; }\n return cooked;\n};\n\nvar __setModuleDefault = Object.create ? (function(o, v) {\n Object.defineProperty(o, \"default\", { enumerable: true, value: v });\n}) : function(o, v) {\n o[\"default\"] = v;\n};\n\nfunction __importStar(mod) {\n if (mod && mod.__esModule) return mod;\n var result = {};\n if (mod != null) for (var k in mod) if (k !== \"default\" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);\n __setModuleDefault(result, mod);\n return result;\n}\n\nfunction __importDefault(mod) {\n return (mod && mod.__esModule) ? mod : { default: mod };\n}\n\nfunction __classPrivateFieldGet(receiver, state, kind, f) {\n if (kind === \"a\" && !f) throw new TypeError(\"Private accessor was defined without a getter\");\n if (typeof state === \"function\" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError(\"Cannot read private member from an object whose class did not declare it\");\n return kind === \"m\" ? f : kind === \"a\" ? f.call(receiver) : f ? f.value : state.get(receiver);\n}\n\nfunction __classPrivateFieldSet(receiver, state, value, kind, f) {\n if (kind === \"m\") throw new TypeError(\"Private method is not writable\");\n if (kind === \"a\" && !f) throw new TypeError(\"Private accessor was defined without a setter\");\n if (typeof state === \"function\" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError(\"Cannot write private member to an object whose class did not declare it\");\n return (kind === \"a\" ? f.call(receiver, value) : f ? f.value = value : state.set(receiver, value)), value;\n}\n\nfunction __classPrivateFieldIn(state, receiver) {\n if (receiver === null || (typeof receiver !== \"object\" && typeof receiver !== \"function\")) throw new TypeError(\"Cannot use 'in' operator on non-object\");\n return typeof state === \"function\" ? receiver === state : state.has(receiver);\n}\n\nfunction __addDisposableResource(env, value, async) {\n if (value !== null && value !== void 0) {\n if (typeof value !== \"object\" && typeof value !== \"function\") throw new TypeError(\"Object expected.\");\n var dispose;\n if (async) {\n if (!Symbol.asyncDispose) throw new TypeError(\"Symbol.asyncDispose is not defined.\");\n dispose = value[Symbol.asyncDispose];\n }\n if (dispose === void 0) {\n if (!Symbol.dispose) throw new TypeError(\"Symbol.dispose is not defined.\");\n dispose = value[Symbol.dispose];\n }\n if (typeof dispose !== \"function\") throw new TypeError(\"Object not disposable.\");\n env.stack.push({ value: value, dispose: dispose, async: async });\n }\n else if (async) {\n env.stack.push({ async: true });\n }\n return value;\n}\n\nvar _SuppressedError = typeof SuppressedError === \"function\" ? SuppressedError : function (error, suppressed, message) {\n var e = new Error(message);\n return e.name = \"SuppressedError\", e.error = error, e.suppressed = suppressed, e;\n};\n\nfunction __disposeResources(env) {\n function fail(e) {\n env.error = env.hasError ? new _SuppressedError(e, env.error, \"An error was suppressed during disposal.\") : e;\n env.hasError = true;\n }\n function next() {\n while (env.stack.length) {\n var rec = env.stack.pop();\n try {\n var result = rec.dispose && rec.dispose.call(rec.value);\n if (rec.async) return Promise.resolve(result).then(next, function(e) { fail(e); return next(); });\n }\n catch (e) {\n fail(e);\n }\n }\n if (env.hasError) throw env.error;\n }\n return next();\n}\n\n/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ({\n __extends,\n __assign,\n __rest,\n __decorate,\n __param,\n __metadata,\n __awaiter,\n __generator,\n __createBinding,\n __exportStar,\n __values,\n __read,\n __spread,\n __spreadArrays,\n __spreadArray,\n __await,\n __asyncGenerator,\n __asyncDelegator,\n __asyncValues,\n __makeTemplateObject,\n __importStar,\n __importDefault,\n __classPrivateFieldGet,\n __classPrivateFieldSet,\n __classPrivateFieldIn,\n __addDisposableResource,\n __disposeResources,\n});\n\n\n//# sourceURL=webpack://@linkdlab/funcnodes_react_flow/../node_modules/tslib/tslib.es6.mjs?");
4537
+ eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ __addDisposableResource: () => (/* binding */ __addDisposableResource),\n/* harmony export */ __assign: () => (/* binding */ __assign),\n/* harmony export */ __asyncDelegator: () => (/* binding */ __asyncDelegator),\n/* harmony export */ __asyncGenerator: () => (/* binding */ __asyncGenerator),\n/* harmony export */ __asyncValues: () => (/* binding */ __asyncValues),\n/* harmony export */ __await: () => (/* binding */ __await),\n/* harmony export */ __awaiter: () => (/* binding */ __awaiter),\n/* harmony export */ __classPrivateFieldGet: () => (/* binding */ __classPrivateFieldGet),\n/* harmony export */ __classPrivateFieldIn: () => (/* binding */ __classPrivateFieldIn),\n/* harmony export */ __classPrivateFieldSet: () => (/* binding */ __classPrivateFieldSet),\n/* harmony export */ __createBinding: () => (/* binding */ __createBinding),\n/* harmony export */ __decorate: () => (/* binding */ __decorate),\n/* harmony export */ __disposeResources: () => (/* binding */ __disposeResources),\n/* harmony export */ __esDecorate: () => (/* binding */ __esDecorate),\n/* harmony export */ __exportStar: () => (/* binding */ __exportStar),\n/* harmony export */ __extends: () => (/* binding */ __extends),\n/* harmony export */ __generator: () => (/* binding */ __generator),\n/* harmony export */ __importDefault: () => (/* binding */ __importDefault),\n/* harmony export */ __importStar: () => (/* binding */ __importStar),\n/* harmony export */ __makeTemplateObject: () => (/* binding */ __makeTemplateObject),\n/* harmony export */ __metadata: () => (/* binding */ __metadata),\n/* harmony export */ __param: () => (/* binding */ __param),\n/* harmony export */ __propKey: () => (/* binding */ __propKey),\n/* harmony export */ __read: () => (/* binding */ __read),\n/* harmony export */ __rest: () => (/* binding */ __rest),\n/* harmony export */ __runInitializers: () => (/* binding */ __runInitializers),\n/* harmony export */ __setFunctionName: () => (/* binding */ __setFunctionName),\n/* harmony export */ __spread: () => (/* binding */ __spread),\n/* harmony export */ __spreadArray: () => (/* binding */ __spreadArray),\n/* harmony export */ __spreadArrays: () => (/* binding */ __spreadArrays),\n/* harmony export */ __values: () => (/* binding */ __values),\n/* harmony export */ \"default\": () => (__WEBPACK_DEFAULT_EXPORT__)\n/* harmony export */ });\n/******************************************************************************\nCopyright (c) Microsoft Corporation.\n\nPermission to use, copy, modify, and/or distribute this software for any\npurpose with or without fee is hereby granted.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH\nREGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY\nAND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,\nINDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM\nLOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR\nOTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR\nPERFORMANCE OF THIS SOFTWARE.\n***************************************************************************** */\n/* global Reflect, Promise, SuppressedError, Symbol */\n\nvar extendStatics = function(d, b) {\n extendStatics = Object.setPrototypeOf ||\n ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\n function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };\n return extendStatics(d, b);\n};\n\nfunction __extends(d, b) {\n if (typeof b !== \"function\" && b !== null)\n throw new TypeError(\"Class extends value \" + String(b) + \" is not a constructor or null\");\n extendStatics(d, b);\n function __() { this.constructor = d; }\n d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\n}\n\nvar __assign = function() {\n __assign = Object.assign || function __assign(t) {\n for (var s, i = 1, n = arguments.length; i < n; i++) {\n s = arguments[i];\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p)) t[p] = s[p];\n }\n return t;\n }\n return __assign.apply(this, arguments);\n}\n\nfunction __rest(s, e) {\n var t = {};\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)\n t[p] = s[p];\n if (s != null && typeof Object.getOwnPropertySymbols === \"function\")\n for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {\n if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))\n t[p[i]] = s[p[i]];\n }\n return t;\n}\n\nfunction __decorate(decorators, target, key, desc) {\n var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;\n if (typeof Reflect === \"object\" && typeof Reflect.decorate === \"function\") r = Reflect.decorate(decorators, target, key, desc);\n else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;\n return c > 3 && r && Object.defineProperty(target, key, r), r;\n}\n\nfunction __param(paramIndex, decorator) {\n return function (target, key) { decorator(target, key, paramIndex); }\n}\n\nfunction __esDecorate(ctor, descriptorIn, decorators, contextIn, initializers, extraInitializers) {\n function accept(f) { if (f !== void 0 && typeof f !== \"function\") throw new TypeError(\"Function expected\"); return f; }\n var kind = contextIn.kind, key = kind === \"getter\" ? \"get\" : kind === \"setter\" ? \"set\" : \"value\";\n var target = !descriptorIn && ctor ? contextIn[\"static\"] ? ctor : ctor.prototype : null;\n var descriptor = descriptorIn || (target ? Object.getOwnPropertyDescriptor(target, contextIn.name) : {});\n var _, done = false;\n for (var i = decorators.length - 1; i >= 0; i--) {\n var context = {};\n for (var p in contextIn) context[p] = p === \"access\" ? {} : contextIn[p];\n for (var p in contextIn.access) context.access[p] = contextIn.access[p];\n context.addInitializer = function (f) { if (done) throw new TypeError(\"Cannot add initializers after decoration has completed\"); extraInitializers.push(accept(f || null)); };\n var result = (0, decorators[i])(kind === \"accessor\" ? { get: descriptor.get, set: descriptor.set } : descriptor[key], context);\n if (kind === \"accessor\") {\n if (result === void 0) continue;\n if (result === null || typeof result !== \"object\") throw new TypeError(\"Object expected\");\n if (_ = accept(result.get)) descriptor.get = _;\n if (_ = accept(result.set)) descriptor.set = _;\n if (_ = accept(result.init)) initializers.unshift(_);\n }\n else if (_ = accept(result)) {\n if (kind === \"field\") initializers.unshift(_);\n else descriptor[key] = _;\n }\n }\n if (target) Object.defineProperty(target, contextIn.name, descriptor);\n done = true;\n};\n\nfunction __runInitializers(thisArg, initializers, value) {\n var useValue = arguments.length > 2;\n for (var i = 0; i < initializers.length; i++) {\n value = useValue ? initializers[i].call(thisArg, value) : initializers[i].call(thisArg);\n }\n return useValue ? value : void 0;\n};\n\nfunction __propKey(x) {\n return typeof x === \"symbol\" ? x : \"\".concat(x);\n};\n\nfunction __setFunctionName(f, name, prefix) {\n if (typeof name === \"symbol\") name = name.description ? \"[\".concat(name.description, \"]\") : \"\";\n return Object.defineProperty(f, \"name\", { configurable: true, value: prefix ? \"\".concat(prefix, \" \", name) : name });\n};\n\nfunction __metadata(metadataKey, metadataValue) {\n if (typeof Reflect === \"object\" && typeof Reflect.metadata === \"function\") return Reflect.metadata(metadataKey, metadataValue);\n}\n\nfunction __awaiter(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 __generator(thisArg, body) {\n var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;\n return g = { next: verb(0), \"throw\": verb(1), \"return\": verb(2) }, typeof Symbol === \"function\" && (g[Symbol.iterator] = function() { return this; }), g;\n function verb(n) { return function (v) { return step([n, v]); }; }\n function step(op) {\n if (f) throw new TypeError(\"Generator is already executing.\");\n while (g && (g = 0, op[0] && (_ = 0)), _) try {\n if (f = 1, y && (t = op[0] & 2 ? y[\"return\"] : op[0] ? y[\"throw\"] || ((t = y[\"return\"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;\n if (y = 0, t) op = [op[0] & 2, t.value];\n switch (op[0]) {\n case 0: case 1: t = op; break;\n case 4: _.label++; return { value: op[1], done: false };\n case 5: _.label++; y = op[1]; op = [0]; continue;\n case 7: op = _.ops.pop(); _.trys.pop(); continue;\n default:\n if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }\n if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }\n if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }\n if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }\n if (t[2]) _.ops.pop();\n _.trys.pop(); continue;\n }\n op = body.call(thisArg, _);\n } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }\n if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };\n }\n}\n\nvar __createBinding = Object.create ? (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n var desc = Object.getOwnPropertyDescriptor(m, k);\n if (!desc || (\"get\" in desc ? !m.__esModule : desc.writable || desc.configurable)) {\n desc = { enumerable: true, get: function() { return m[k]; } };\n }\n Object.defineProperty(o, k2, desc);\n}) : (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n o[k2] = m[k];\n});\n\nfunction __exportStar(m, o) {\n for (var p in m) if (p !== \"default\" && !Object.prototype.hasOwnProperty.call(o, p)) __createBinding(o, m, p);\n}\n\nfunction __values(o) {\n var s = typeof Symbol === \"function\" && Symbol.iterator, m = s && o[s], i = 0;\n if (m) return m.call(o);\n if (o && typeof o.length === \"number\") return {\n next: function () {\n if (o && i >= o.length) o = void 0;\n return { value: o && o[i++], done: !o };\n }\n };\n throw new TypeError(s ? \"Object is not iterable.\" : \"Symbol.iterator is not defined.\");\n}\n\nfunction __read(o, n) {\n var m = typeof Symbol === \"function\" && o[Symbol.iterator];\n if (!m) return o;\n var i = m.call(o), r, ar = [], e;\n try {\n while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);\n }\n catch (error) { e = { error: error }; }\n finally {\n try {\n if (r && !r.done && (m = i[\"return\"])) m.call(i);\n }\n finally { if (e) throw e.error; }\n }\n return ar;\n}\n\n/** @deprecated */\nfunction __spread() {\n for (var ar = [], i = 0; i < arguments.length; i++)\n ar = ar.concat(__read(arguments[i]));\n return ar;\n}\n\n/** @deprecated */\nfunction __spreadArrays() {\n for (var s = 0, i = 0, il = arguments.length; i < il; i++) s += arguments[i].length;\n for (var r = Array(s), k = 0, i = 0; i < il; i++)\n for (var a = arguments[i], j = 0, jl = a.length; j < jl; j++, k++)\n r[k] = a[j];\n return r;\n}\n\nfunction __spreadArray(to, from, pack) {\n if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {\n if (ar || !(i in from)) {\n if (!ar) ar = Array.prototype.slice.call(from, 0, i);\n ar[i] = from[i];\n }\n }\n return to.concat(ar || Array.prototype.slice.call(from));\n}\n\nfunction __await(v) {\n return this instanceof __await ? (this.v = v, this) : new __await(v);\n}\n\nfunction __asyncGenerator(thisArg, _arguments, generator) {\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\n var g = generator.apply(thisArg, _arguments || []), i, q = [];\n return i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\", awaitReturn), i[Symbol.asyncIterator] = function () { return this; }, i;\n function awaitReturn(f) { return function (v) { return Promise.resolve(v).then(f, reject); }; }\n function verb(n, f) { if (g[n]) { i[n] = function (v) { return new Promise(function (a, b) { q.push([n, v, a, b]) > 1 || resume(n, v); }); }; if (f) i[n] = f(i[n]); } }\n function resume(n, v) { try { step(g[n](v)); } catch (e) { settle(q[0][3], e); } }\n function step(r) { r.value instanceof __await ? Promise.resolve(r.value.v).then(fulfill, reject) : settle(q[0][2], r); }\n function fulfill(value) { resume(\"next\", value); }\n function reject(value) { resume(\"throw\", value); }\n function settle(f, v) { if (f(v), q.shift(), q.length) resume(q[0][0], q[0][1]); }\n}\n\nfunction __asyncDelegator(o) {\n var i, p;\n return i = {}, verb(\"next\"), verb(\"throw\", function (e) { throw e; }), verb(\"return\"), i[Symbol.iterator] = function () { return this; }, i;\n function verb(n, f) { i[n] = o[n] ? function (v) { return (p = !p) ? { value: __await(o[n](v)), done: false } : f ? f(v) : v; } : f; }\n}\n\nfunction __asyncValues(o) {\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\n var m = o[Symbol.asyncIterator], i;\n return m ? m.call(o) : (o = typeof __values === \"function\" ? __values(o) : o[Symbol.iterator](), i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i);\n function verb(n) { i[n] = o[n] && function (v) { return new Promise(function (resolve, reject) { v = o[n](v), settle(resolve, reject, v.done, v.value); }); }; }\n function settle(resolve, reject, d, v) { Promise.resolve(v).then(function(v) { resolve({ value: v, done: d }); }, reject); }\n}\n\nfunction __makeTemplateObject(cooked, raw) {\n if (Object.defineProperty) { Object.defineProperty(cooked, \"raw\", { value: raw }); } else { cooked.raw = raw; }\n return cooked;\n};\n\nvar __setModuleDefault = Object.create ? (function(o, v) {\n Object.defineProperty(o, \"default\", { enumerable: true, value: v });\n}) : function(o, v) {\n o[\"default\"] = v;\n};\n\nfunction __importStar(mod) {\n if (mod && mod.__esModule) return mod;\n var result = {};\n if (mod != null) for (var k in mod) if (k !== \"default\" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);\n __setModuleDefault(result, mod);\n return result;\n}\n\nfunction __importDefault(mod) {\n return (mod && mod.__esModule) ? mod : { default: mod };\n}\n\nfunction __classPrivateFieldGet(receiver, state, kind, f) {\n if (kind === \"a\" && !f) throw new TypeError(\"Private accessor was defined without a getter\");\n if (typeof state === \"function\" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError(\"Cannot read private member from an object whose class did not declare it\");\n return kind === \"m\" ? f : kind === \"a\" ? f.call(receiver) : f ? f.value : state.get(receiver);\n}\n\nfunction __classPrivateFieldSet(receiver, state, value, kind, f) {\n if (kind === \"m\") throw new TypeError(\"Private method is not writable\");\n if (kind === \"a\" && !f) throw new TypeError(\"Private accessor was defined without a setter\");\n if (typeof state === \"function\" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError(\"Cannot write private member to an object whose class did not declare it\");\n return (kind === \"a\" ? f.call(receiver, value) : f ? f.value = value : state.set(receiver, value)), value;\n}\n\nfunction __classPrivateFieldIn(state, receiver) {\n if (receiver === null || (typeof receiver !== \"object\" && typeof receiver !== \"function\")) throw new TypeError(\"Cannot use 'in' operator on non-object\");\n return typeof state === \"function\" ? receiver === state : state.has(receiver);\n}\n\nfunction __addDisposableResource(env, value, async) {\n if (value !== null && value !== void 0) {\n if (typeof value !== \"object\" && typeof value !== \"function\") throw new TypeError(\"Object expected.\");\n var dispose, inner;\n if (async) {\n if (!Symbol.asyncDispose) throw new TypeError(\"Symbol.asyncDispose is not defined.\");\n dispose = value[Symbol.asyncDispose];\n }\n if (dispose === void 0) {\n if (!Symbol.dispose) throw new TypeError(\"Symbol.dispose is not defined.\");\n dispose = value[Symbol.dispose];\n if (async) inner = dispose;\n }\n if (typeof dispose !== \"function\") throw new TypeError(\"Object not disposable.\");\n if (inner) dispose = function() { try { inner.call(this); } catch (e) { return Promise.reject(e); } };\n env.stack.push({ value: value, dispose: dispose, async: async });\n }\n else if (async) {\n env.stack.push({ async: true });\n }\n return value;\n}\n\nvar _SuppressedError = typeof SuppressedError === \"function\" ? SuppressedError : function (error, suppressed, message) {\n var e = new Error(message);\n return e.name = \"SuppressedError\", e.error = error, e.suppressed = suppressed, e;\n};\n\nfunction __disposeResources(env) {\n function fail(e) {\n env.error = env.hasError ? new _SuppressedError(e, env.error, \"An error was suppressed during disposal.\") : e;\n env.hasError = true;\n }\n function next() {\n while (env.stack.length) {\n var rec = env.stack.pop();\n try {\n var result = rec.dispose && rec.dispose.call(rec.value);\n if (rec.async) return Promise.resolve(result).then(next, function(e) { fail(e); return next(); });\n }\n catch (e) {\n fail(e);\n }\n }\n if (env.hasError) throw env.error;\n }\n return next();\n}\n\n/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ({\n __extends,\n __assign,\n __rest,\n __decorate,\n __param,\n __metadata,\n __awaiter,\n __generator,\n __createBinding,\n __exportStar,\n __values,\n __read,\n __spread,\n __spreadArrays,\n __spreadArray,\n __await,\n __asyncGenerator,\n __asyncDelegator,\n __asyncValues,\n __makeTemplateObject,\n __importStar,\n __importDefault,\n __classPrivateFieldGet,\n __classPrivateFieldSet,\n __classPrivateFieldIn,\n __addDisposableResource,\n __disposeResources,\n});\n\n\n//# sourceURL=webpack://@linkdlab/funcnodes_react_flow/../node_modules/tslib/tslib.es6.mjs?");
4578
4538
 
4579
4539
  /***/ }),
4580
4540
 
@@ -4720,5 +4680,6 @@ eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpac
4720
4680
  /******/ var __webpack_exports__ = __webpack_require__("./src/index.tsx");
4721
4681
  /******/ var __webpack_exports__WebSocketWorker = __webpack_exports__.WebSocketWorker;
4722
4682
  /******/ var __webpack_exports__default = __webpack_exports__["default"];
4723
- /******/ export { __webpack_exports__WebSocketWorker as WebSocketWorker, __webpack_exports__default as default };
4683
+ /******/ var __webpack_exports__helperfunctions = __webpack_exports__.helperfunctions;
4684
+ /******/ export { __webpack_exports__WebSocketWorker as WebSocketWorker, __webpack_exports__default as default, __webpack_exports__helperfunctions as helperfunctions };
4724
4685
  /******/