diff --git a/README.md b/README.md index 049f2f54..8ddf526c 100755 --- a/README.md +++ b/README.md @@ -2,15 +2,15 @@ JsonTree.js [![Tweet](https://img.shields.io/twitter/url/http/shields.io.svg?style=social)](https://twitter.com/intent/tweet?text=JsonTree.js%2C%20a%20free%20JavaScript%json%20treeview&url=https://github.com/williamtroup/JsonTree.js&hashtags=javascript,treeview,json) -[![npm](https://img.shields.io/badge/npmjs-v4.4.0-blue)](https://www.npmjs.com/package/jjsontree.js) -[![nuget](https://img.shields.io/badge/nuget-v4.4.0-purple)](https://www.nuget.org/packages/jJsonTree.js/) +[![npm](https://img.shields.io/badge/npmjs-v4.5.0-blue)](https://www.npmjs.com/package/jjsontree.js) +[![nuget](https://img.shields.io/badge/nuget-v4.5.0-purple)](https://www.nuget.org/packages/jJsonTree.js/) [![license](https://img.shields.io/badge/license-MIT-green)](https://github.com/williamtroup/JsonTree.js/blob/main/LICENSE.txt) [![discussions Welcome](https://img.shields.io/badge/discussions-Welcome-red)](https://github.com/williamtroup/JsonTree.js/discussions) [![coded by William Troup](https://img.shields.io/badge/coded_by-William_Troup-yellow)](https://william-troup.com/) >

🔗 A lightweight JavaScript library that generates customizable tree views to better visualize, and edit, JSON data.

->

v4.4.0

+>

v4.5.0


![JsonTree.js](docs/images/main.png) @@ -173,8 +173,8 @@ Or, you can download the latest zipped up version [here](https://www.william-tro Or, you can also use the following CDN links: ```markdown -https://cdn.jsdelivr.net/gh/williamtroup/JsonTree.js@4.4.0/dist/jsontree.min.js -https://cdn.jsdelivr.net/gh/williamtroup/JsonTree.js@4.4.0/dist/jsontree.js.min.css +https://cdn.jsdelivr.net/gh/williamtroup/JsonTree.js@4.5.0/dist/jsontree.min.js +https://cdn.jsdelivr.net/gh/williamtroup/JsonTree.js@4.5.0/dist/jsontree.js.min.css ```

diff --git a/README_NUGET.md b/README_NUGET.md index 2ee0b1d0..7cf5402f 100755 --- a/README_NUGET.md +++ b/README_NUGET.md @@ -1,8 +1,8 @@ -# JsonTree.js v4.4.0 +# JsonTree.js v4.5.0 [![Tweet](https://img.shields.io/twitter/url/http/shields.io.svg?style=social)](https://twitter.com/intent/tweet?text=JsonTree.js%2C%20a%20free%20JavaScript%json%20treeview&url=https://github.com/williamtroup/JsonTree.js&hashtags=javascript,treeview,json) -[![npm](https://img.shields.io/badge/npmjs-v4.4.0-blue)](https://www.npmjs.com/package/jjsontree.js) -[![nuget](https://img.shields.io/badge/nuget-v4.4.0-purple)](https://www.nuget.org/packages/jJsonTree.js/) +[![npm](https://img.shields.io/badge/npmjs-v4.5.0-blue)](https://www.npmjs.com/package/jjsontree.js) +[![nuget](https://img.shields.io/badge/nuget-v4.5.0-purple)](https://www.nuget.org/packages/jJsonTree.js/) [![license](https://img.shields.io/badge/license-MIT-green)](https://github.com/williamtroup/JsonTree.js/blob/main/LICENSE.txt) [![discussions Welcome](https://img.shields.io/badge/discussions-Welcome-red)](https://github.com/williamtroup/JsonTree.js/discussions) [![coded by William Troup](https://img.shields.io/badge/coded_by-William_Troup-yellow)](https://william-troup.com/) @@ -152,8 +152,8 @@ Or, you can download the latest zipped up version [here](https://www.william-tro Or, you can also use the following CDN links: ```markdown -https://cdn.jsdelivr.net/gh/williamtroup/JsonTree.js@4.4.0/dist/jsontree.min.js -https://cdn.jsdelivr.net/gh/williamtroup/JsonTree.js@4.4.0/dist/jsontree.js.min.css +https://cdn.jsdelivr.net/gh/williamtroup/JsonTree.js@4.5.0/dist/jsontree.min.js +https://cdn.jsdelivr.net/gh/williamtroup/JsonTree.js@4.5.0/dist/jsontree.js.min.css ``` diff --git a/dist/jsontree.esm.js b/dist/jsontree.esm.js index 5f5b90ef..ea1e3cbc 100644 --- a/dist/jsontree.esm.js +++ b/dist/jsontree.esm.js @@ -245,7 +245,7 @@ var Convert2; n = parseFloat(t); } else if (Is.definedNumber(e) && !isNaN(+t)) { n = parseInt(t); - } else if (Is.definedString(e)) { + } else if (Is.definedStringAny(e)) { n = t; } else if (Is.definedDate(e)) { n = new Date(t); @@ -364,7 +364,7 @@ var Convert2; Convert.stringToBoolean = stringToBoolean; function stringToParsedValue(e, t) { let n = null; - if (Is.definedString(e)) { + if (Is.definedString(e) && e.trim() !== "") { const o = parseFloat(e); if (t.parse.stringsToBooleans && Is.String.boolean(e)) { n = Convert.stringToBoolean(e); @@ -383,8 +383,45 @@ var Convert2; return n; } Convert.stringToParsedValue = stringToParsedValue; + function symbolToSpacedOutString(e) { + let t = e.toString(); + if (t.indexOf("()") === -1) { + t = t.replace("(", `(${" "}`).replace(")", `${" "})`); + } else { + t = t.replace("()", ""); + } + return t; + } + Convert.symbolToSpacedOutString = symbolToSpacedOutString; })(Convert2 || (Convert2 = {})); +var Str; + +(e => { + function t(e, t = 1, n = "0") { + const o = e.toString(); + let l = o; + if (o.length < t) { + const e = t - o.length + 1; + l = `${Array(e).join(n)}${o}`; + } + return l; + } + e.padNumber = t; + function n(e) { + return `${e.charAt(0).toUpperCase()}${e.slice(1)}`; + } + e.capitalizeFirstLetter = n; + function o(e, t, n) { + let o = e; + if (t > 0 && o.length > t) { + o = `${o.substring(0, t)}${" "}${n}${" "}`; + } + return o; + } + e.getMaximumLengthDisplay = o; +})(Str || (Str = {})); + var Default; (e => { @@ -439,20 +476,23 @@ var Default; return n; } e.getStringOrArray = c; - function d(e, t) { - let n; - let o = false; - const l = e.toString().split("("); - const r = l[0].split(" "); - const i = "()"; - n = `${r.join(" ")}${i}`; - if (n.trim() === i) { - n = `${t.text.functionText}${i}`; - o = true; + function d(e, t, n) { + const o = e.toString(); + const l = o.substring(0, o.indexOf(")") + 1); + let r = l.trim(); + let i = false; + if (l[0] === "(") { + r = `${t.text.functionText}${r}`; + i = true; + } + if (!i) { + r = Str.getMaximumLengthDisplay(r, n.maximum.functionLength, t.text.ellipsisText); + } else { + r = Str.getMaximumLengthDisplay(r, n.maximum.lambdaLength, t.text.ellipsisText); } return { - name: n, - isLambda: o + name: r, + isLambda: i }; } e.getFunctionName = d; @@ -610,33 +650,6 @@ var DomElement; e.getStyleValueByName = d; })(DomElement || (DomElement = {})); -var Str; - -(e => { - function t(e, t = 1, n = "0") { - const o = e.toString(); - let l = o; - if (o.length < t) { - const e = t - o.length + 1; - l = `${Array(e).join(n)}${o}`; - } - return l; - } - e.padNumber = t; - function n(e) { - return `${e.charAt(0).toUpperCase()}${e.slice(1)}`; - } - e.capitalizeFirstLetter = n; - function o(e, t, n) { - let o = e; - if (t > 0 && o.length > t) { - o = `${o.substring(0, t)}${" "}${n}${" "}`; - } - return o; - } - e.getMaximumLengthDisplay = o; -})(Str || (Str = {})); - var DateTime; (e => { @@ -797,6 +810,7 @@ var Binding; t.rootName = Default.getString(t.rootName, "root"); t.emptyStringValue = Default.getString(t.emptyStringValue, ""); t.expandIconType = Default.getString(t.expandIconType, "arrow"); + t.openUrlsInSameWindow = Default.getBoolean(t.openUrlsInSameWindow, false); t.maximum = l(t); t.paging = r(t); t.title = i(t); @@ -823,6 +837,8 @@ var Binding; e.maximum.bigIntLength = Default.getNumber(e.maximum.bigIntLength, 0); e.maximum.inspectionLevels = Default.getNumber(e.maximum.inspectionLevels, 10); e.maximum.propertyNameLength = Default.getNumber(e.maximum.propertyNameLength, 0); + e.maximum.functionLength = Default.getNumber(e.maximum.functionLength, 0); + e.maximum.lambdaLength = Default.getNumber(e.maximum.lambdaLength, 0); return e.maximum; } function r(e) { @@ -1504,6 +1520,7 @@ var ContextMenu; } function s(t, n, o, l, r, i, a) { const s = DomElement.create(n, "div", i > 1 ? "contents-column-multiple" : "contents-column"); + const c = o._currentView.currentColumnBuildingIndex; if (!Is.defined(t)) { const t = DomElement.create(s, "div", "no-json"); DomElement.createWithHTML(t, "span", "no-json-text", e.text.noJsonToViewText); @@ -1512,7 +1529,7 @@ var ContextMenu; n.onclick = () => M(o); } } else { - s.onscroll = () => d(s, o, o._currentView.currentColumnBuildingIndex); + s.onscroll = () => d(s, o, c); if (o.paging.enabled && Is.definedNumber(l)) { s.setAttribute(Constants.JSONTREE_JS_ATTRIBUTE_ARRAY_INDEX_NAME, l.toString()); } @@ -1531,13 +1548,13 @@ var ContextMenu; i = DomElement.create(s, "div", "contents-column-lines"); e = i; } - const c = { + const p = { column: s, lineNumbers: n, lines: i, controlButtons: null }; - o._currentView.currentContentColumns.push(c); + o._currentView.currentContentColumns.push(p); o._currentView.currentColumnBuildingIndex = o._currentView.currentContentColumns.length - 1; if (Is.definedArray(t)) { q(e, o, t, "array"); @@ -1635,28 +1652,22 @@ var ContextMenu; const l = e.scrollLeft; const r = t._currentView.currentContentColumns.length; if (t.controlPanel.enabled) { - const e = t._currentView.currentContentColumns[n].controlButtons; - if (Is.defined(e)) { - e.style.top = `${t._currentView.currentContentColumns[n].column.scrollTop}px`; - e.style.right = `-${t._currentView.currentContentColumns[n].column.scrollLeft}px`; + const e = t._currentView.currentContentColumns[n]; + if (Is.defined(e.controlButtons)) { + e.controlButtons.style.top = `${e.column.scrollTop}px`; + e.controlButtons.style.right = `-${e.column.scrollLeft}px`; } } - if (t.paging.synchronizeScrolling) { - for (let e = 0; e < r; e++) { - if (n !== e) { - t._currentView.currentContentColumns[e].column.scrollTop = o; - t._currentView.currentContentColumns[e].column.scrollLeft = l; + for (let n = 0; n < r; n++) { + const r = t._currentView.currentContentColumns[n]; + if (r.column !== e) { + if (t.paging.synchronizeScrolling) { + r.column.scrollTop = o; + r.column.scrollLeft = l; } - } - } - if (t.controlPanel.enabled) { - for (let e = 0; e < r; e++) { - if (n !== e) { - const n = t._currentView.currentContentColumns[e].controlButtons; - if (Is.defined(n)) { - n.style.top = `${t._currentView.currentContentColumns[e].column.scrollTop}px`; - n.style.right = `-${t._currentView.currentContentColumns[e].column.scrollLeft}px`; - } + if (t.controlPanel.enabled && Is.defined(r.controlButtons)) { + r.controlButtons.style.top = `${r.column.scrollTop}px`; + r.controlButtons.style.right = `-${r.column.scrollLeft}px`; } } } @@ -2459,7 +2470,7 @@ var ContextMenu; T = true; } } else if (Is.definedFunction(r)) { - const t = Default.getFunctionName(r, e); + const t = Default.getFunctionName(r, e, o); if (t.isLambda) { y = "lambda"; if (!o.ignore.lambdaValues) { @@ -2568,7 +2579,13 @@ var ContextMenu; w = o.allowEditing.urlValues && !c; if (o.showUrlOpenButtons) { v = DomElement.createWithHTML(g, "span", o.showValueColors ? "open-button-color" : "open-button", `${e.text.openText}${" "}${e.text.openSymbolText}`); - v.onclick = () => window.open(r); + v.onclick = () => { + if (o.openUrlsInSameWindow) { + window.location = r; + } else { + window.open(r); + } + }; } te(o, t, l, r, x, a, w, v); Trigger.customEvent(o.events.onUrlRender, o._currentView.element, x); @@ -2642,7 +2659,7 @@ var ContextMenu; y = "symbol"; if (!o.ignore.symbolValues) { p = o.showValueColors ? `${y} value` : "value"; - x = DomElement.createWithHTML(g, "span", p, r.toString()); + x = DomElement.createWithHTML(g, "span", p, Convert2.symbolToSpacedOutString(r)); w = o.allowEditing.symbolValues && !c; te(o, t, l, r, x, a, w); Trigger.customEvent(o.events.onSymbolRender, o._currentView.element, x); @@ -3435,7 +3452,10 @@ var ContextMenu; function Ve(e, l) { o = Be(e); if (l.shortcutKeysEnabled && n === 1 && t.hasOwnProperty(l._currentView.element.id) && !l._currentView.editMode) { - if (Be(e) && e.code === "F11") { + if (Be(e) && e.code === "KeyC") { + e.preventDefault(); + v(l, l.data); + } else if (Be(e) && e.code === "F11") { e.preventDefault(); V(l); } else if (e.code === "ArrowLeft") { @@ -3652,7 +3672,7 @@ var ContextMenu; return e; }, getVersion: function() { - return "4.4.0"; + return "4.5.0"; } }; (() => { diff --git a/dist/jsontree.esm.js.map b/dist/jsontree.esm.js.map index 855745d2..7c762e19 100644 --- a/dist/jsontree.esm.js.map +++ b/dist/jsontree.esm.js.map @@ -1 +1 @@ -{"version":3,"sources":["/Users/williamtroup/Documents/GitHub%20Repos/JsonTree.js/dist/jsontree.esm.js"],"names":["ImportedFilename","constructor","this","filename","object","DataType","DataType2","Is","Is2","String","String2","hexColor","value","valid","length","isNaN","substring","rgbColor","startsWith","endsWith","boolean","toString","toLowerCase","trim","date","dateTimeString","regExp","match","guid","regex","test","bigInt","result2","symbol","defined","definedObject","definedBoolean","definedString","definedStringAny","definedFunction","definedNumber","definedBigInt","definedArray","Array","definedDate","Date","definedFloat","definedSymbol","definedRegExp","RegExp","definedMap","Map","WeakMap","definedSet","Set","WeakSet","definedImage","Image","definedHtml","HTMLElement","definedUrl","data","url","URL","protocol","definedEmail","invalidOptionArray","array","minimumLength","definedImportedFilename","Convert2","Convert","toJsonStringifyClone","configuration2","bindingOptions","includeTimeZoneInDates","JSON","stringify","replace","symbolToString","Default","getFunctionName","name","source","src","htmlToObject","showCssStylesForHtmlObjects","arrayLength","arrayIndex","push","setToArray","obj","mapToObject","key","hasOwnProperty","stringToDataTypeValue","oldValue","newValue","parseFloat","parseInt","BigInt","Symbol","exception","addCssStyles","attributesLength","attributes","childrenLength","children","childrenKeyName","textKeyName","valueCloned","cloneNode","valueClonedChildrenLength","nodeType","Node","TEXT_NODE","removeChild","innerText","attributeIndex","attribute","nodeName","nodeValue","childIndex","computedStyles","getComputedStyle","computedStylesLength","cssComputedStyleIndex","cssComputedStyleName","cssComputedStyleNameStorage","cssComputedValue","getPropertyValue","map","Object","fromEntries","entries","set","from","values","jsonStringToObject","objectString","configuration","result","parsed","parse","exception1","eval","exception2","safeMode","console","error","text","objectErrorText","message","numberToFloatWithDecimalPlaces","decimalPlaces","stringToBigInt","stringToBoolean","stringToParsedValue","parsedValue","floatValue","stringsToBooleans","stringsToBigInts","stringsToNumbers","stringsToFloats","stringsToDates","stringsToSymbols","Default2","getAnyString","defaultValue","getString","getBoolean","getNumber","getFunction","getArray","getObject","getNumberMinimum","minimum","getNumberMaximum","maximum","getStringOrArray","split","isLambda","valueParts","valueNameParts","functionBrackets","join","functionText","getObjectFromUrl","callback","request","XMLHttpRequest","open","send","onreadystatechange","readyState","status","responseText","dataJson","DomElement","DomElement2","find","tagTypes","func","tagTypesLength","tagTypeIndex","domElements","document","getElementsByTagName","elements","slice","call","elementsLength","elementIndex","create","container","type","className","beforeNode","isText","createTextNode","createElement","insertBefore","appendChild","createWithHTML","html","element","innerHTML","createWithNoContainer","cancelBubble","ev","preventDefault","stopPropagation","getScrollPosition","documentElement","left","scrollLeft","clientLeft","top","scrollTop","clientTop","showElementAtMousePosition","offset","pageX","pageY","scrollPosition","style","display","offsetWidth","window","innerWidth","offsetHeight","innerHeight","selectAllText","range","createRange","selectNodeContents","selection","getSelection","removeAllRanges","addRange","createCheckBox","labelText","checked","spanClass","additionalText","lineContainer","label","input","autocomplete","getOffset","position","offsetLeft","offsetTop","offsetParent","getStyleValueByName","stylePropertyName","toNumber","styles","Str","Str2","padNumber","number","paddingCharacter","numberString","numberResult","capitalizeFirstLetter","string","charAt","toUpperCase","getMaximumLengthDisplay","maximumLength","ellipsisText","DateTime","DateTime2","getWeekdayNumber","getDay","getDayOrdinal","thText","stText","ndText","rdText","getCustomFormattedDateText","dateFormat","actualDate","weekDayNumber","getHours","getMinutes","getSeconds","getMilliseconds","dayNames","dayNamesAbbreviated","getDate","monthNames","getMonth","monthNamesAbbreviated","getFullYear","Number","Constants","Constants2","JSONTREE_JS_ATTRIBUTE_NAME","JSONTREE_JS_ATTRIBUTE_ARRAY_INDEX_NAME","JSONTREE_JS_ATTRIBUTE_PATH_NAME","Binding","Binding2","Options","Options2","getForNewInstance","get","allowEditing","_currentView","currentDataArrayPageIndex","paging","startPage","columnsPerPage","titleBarButtons","valueClickTimerId","editMode","idSet","contentPanelsOpen","contentPanelsIndex","contentPanelsDataIndex","backPageButton","nextPageButton","disabledBackground","sideMenu","sideMenuChanged","toggleFullScreenButton","fullScreenOn","dragAndDropBackground","initialized","currentContentColumns","footer","footerStatusText","footerDataTypeText","footerLengthText","footerSizeText","footerPageText","footerStatusTextTimerId","columnDragging","columnDraggingDataIndex","dataTypeCounts","contextMenu","currentColumnBuildingIndex","selectedValues","enabled","bulk","newOptions","options","id","class","showObjectSizes","useZeroIndexingForArrays","dateTimeFormat","showExpandIcons","showStringQuotes","showAllAsClosed","sortPropertyNames","sortPropertyNamesInAlphabeticalOrder","showCommas","reverseArrayValues","addArrayIndexPadding","showValueColors","fileDroppingEnabled","jsonIndentSpaces","showArrayIndexBrackets","showOpeningClosingCurlyBraces","showOpeningClosingSquaredBrackets","shortcutKeysEnabled","openInFullScreenMode","valueToolTips","editingValueClickDelay","showDataTypes","logJsonValueToolTipPaths","exportFilenameFormat","showPropertyNameQuotes","showOpenedObjectArrayBorders","showPropertyNameAndIndexColors","showUrlOpenButtons","showEmailOpenButtons","minimumArrayIndexPadding","arrayIndexPaddingCharacter","jsonPathAny","jsonPathSeparator","showChildIndexes","showClosedArraySquaredBrackets","showClosedObjectCurlyBraces","convertClickedValuesToString","rootName","emptyStringValue","expandIconType","getMaximum","getPaging","title","getTitle","getFooter","controlPanel","getControlPanel","lineNumbers","getLineNumbers","ignore","getIgnore","tooltip","getToolTip","getParse","getAllowEditing","getSideMenu","autoClose","getAutoClose","events","getCustomTriggers","stringLength","urlLength","emailLength","numberLength","bigIntLength","inspectionLevels","propertyNameLength","synchronizeScrolling","allowColumnReordering","allowComparisons","showCloseOpenAllButtons","showCopyButton","enableFullScreenToggling","showFullScreenButton","showLengths","showSizes","showPageOf","statusResetDelay","showMovingButtons","showRemoveButton","showEditButton","showSwitchToPagesButton","showImportButton","showExportButton","padNumbers","addDots","nullValues","functionValues","unknownValues","booleanValues","floatValues","numberValues","stringValues","dateValues","objectValues","arrayValues","bigintValues","symbolValues","emptyObjects","undefinedValues","guidValues","colorValues","regexpValues","mapValues","setValues","urlValues","imageValues","emailValues","htmlValues","lambdaValues","delay","defaultFlag","bigIntValues","regExpValues","propertyNames","properties","property","titleText","showAvailableDataTypeCounts","showOnlyDataTypesAvailable","showClearJsonButton","updateDisplayDelay","objectSize","arraySize","mapSize","setSize","htmlSize","onBeforeRender","onRenderComplete","onValueClick","onRefresh","onCopyAll","onOpenAll","onCloseAll","onDestroy","onBooleanRender","onFloatRender","onNumberRender","onBigIntRender","onStringRender","onDateRender","onFunctionRender","onNullRender","onUnknownRender","onSymbolRender","onCopyJsonReplacer","onUndefinedRender","onGuidRender","onColorRender","onJsonEdit","onRegExpRender","onExport","onUrlRender","onImageRender","onEmailRender","onLambdaRender","onCopy","onFullScreenChange","onSelectionChange","onCustomDataTypeRender","Config","Config2","newConfiguration","domElementTypes","getText","objectText","arrayText","mapText","setText","htmlText","closeAllButtonText","openAllButtonText","copyAllButtonText","attributeNotValidErrorText","attributeNotSetErrorText","closeAllButtonSymbolText","openAllButtonSymbolText","copyButtonSymbolText","backButtonText","nextButtonText","backButtonSymbolText","nextButtonSymbolText","noJsonToViewText","sideMenuButtonSymbolText","sideMenuButtonText","closeButtonSymbolText","closeButtonText","showDataTypesText","selectNoneText","importButtonSymbolText","importButtonText","fullScreenOnButtonSymbolText","fullScreenOffButtonSymbolText","fullScreenButtonText","copyButtonText","dragAndDropSymbolText","dragAndDropTitleText","dragAndDropDescriptionText","exportButtonSymbolText","exportButtonText","propertyColonCharacter","noPropertiesText","openText","openSymbolText","waitingText","pageOfText","sizeText","copiedText","exportedText","importedText","ignoreDataTypesUpdated","lengthText","valueUpdatedText","jsonUpdatedText","nameUpdatedText","indexUpdatedText","itemDeletedText","arrayJsonItemDeleted","dataTypeText","editSymbolButtonText","editButtonText","moveRightSymbolButtonText","moveRightButtonText","moveLeftSymbolButtonText","moveLeftButtonText","removeSymbolButtonText","removeButtonText","switchToPagesSymbolText","switchToPagesText","clearJsonSymbolText","clearJsonText","maximumInspectionLevelsReached","Trigger","Trigger2","customEvent","triggerFunction","args","apply","ToolTip","ToolTip2","renderControl","body","assignToEvents","add2","addEventListener_Window","addEventListener","removeEventListener","addEventListener_Document","hide","add","tooltipClass","show","tooltipTimerId","setTimeout","clearTimeout","remove","parentNode","Arr","Arr2","getIndex","index","getIndexName","largestValue","paddingLength","getIndexFromBrackets","propertyName","moveIndex","arrayData","oldIndex","newIndex","splice","removeNullOrUndefinedEntries","dataLength","dataIndex","Size","Size2","of","bytes","getSize","Math","floor","log","pow","itemKey","Obj","Obj2","getPropertyNames","collator","Intl","Collator","numeric","sensitivity","sort","compare","reverse","createFromValue","crypto","randomUUID","ContextMenu","ContextMenu2","addMenuItem","symbolText","menuItem","_configuration","_elements_Data","_elements_Data_Count","_key_Control_Pressed","render","hasAttribute","bindingOptionsData","getAttribute","classList","removeAttribute","classes","classesLength","classIndex","renderControlContainer","buildDocumentEvents","isForPageSwitch","ajaxData","renderControlContainerForData","scrollTopsForColumns","getContentColumnScrollTops","renderControlTitleBar","contents","updatedData","pageIndex","actualDataIndex","actualData","renderControlContentsPanel","renderControlDisabledBackground","renderControlSideMenu","renderControlFooterBar","renderControlDragAndDrop","totalColumns","enableColumnOrder","contentsColumn","noJson","importText","onclick","onSideMenuImportClick","onscroll","onContentsColumnScroll","setAttribute","ondragstart","onContentsColumnDragStart","ondragend","onContentsColumnDragEnd","ondragover","ondrop","onContentsColumnDrop","renderValuesContainer","lines","columnLayout","column","controlButtons","renderRootArray","renderRootObject","renderControlColumnLineNumbers","renderControlContentsControlButtons","ondblclick","enableContentsColumnEditMode","statusBarMessage","focus","onblur","setFooterStatusText","onkeydown","ev2","code","isCommandKey","newData","execCommand","contentColumnsLength","contentColumnIndex","columnsLength","right","columnIndex","moveDataArrayIndex","dataArray1","dataArray2","dataPanelsOpen1","dataPanelsOpen2","columnLayoutIndex","lineNumberCount","firstLineTop","largestLineNumberWidth","valueElements","querySelectorAll","valueElementsLength","valueElementIndex","valueElement","elementTop","lineNumber","lineNumberDot","newTop","max","height","width","isPagingEnabled","editButton","moveRightButton","disabled","moveLeftButton","copyButton","openAllButton","onOpenAllForPage","closeAllButton","onCloseAllForPage","exportButton","importButton","removeButton","onRemoveArrayJson","switchToPagesButton","onSwitchToPages","paddingLeft","minHeight","paddingRight","panels","panelId","copyDataJson","navigator","clipboard","writeText","titleBar","onTitleBarDblClick","sideMenuButton","onSideMenuOpen","onTitleBarCopyAllClick","onBackPage","onNextPage","buttonText","contains","updateFooterDisplay","onSideMenuClose","titleBarText","titleBarControls","clearJsonButton","onSideMenuClearJson","closeButton","addSideMenuIgnoreTypes","insertDataIndex","accept","multiple","onchange","importFromFiles","files","click","closed","checkboxes","ignoreTypes","selectAll","selectNone","changeSidePanelCheckboxSelection","ignoreTypesContent","dataTypes","keys","dataType","indexOf","forEach","_","createSideMenuIgnoreTypeCheckBox","flag","checkboxesLength","checkboxIndex","dataTypeDisplayCount","checkBoxName","checkBoxAdditionalText","getFooterPageText","currentPage","ceil","totalPages","currentReplacement","toFixed","outerHTML","totalReplacement","addFooterDataTypeStatus","replacement","addFooterLengthStatus","addFooterSizeStatus","size","statusText","propertyCount","mainTitle","objectTypeTitle","objectTypeContents","expandIcon","rootNameTitle","openingBrace","closedBraces","addObjectContentsBorder","dataArrayIndex","renderObjectValues","addValueClickEvent","renderValueContextMenuItems","openingBracket","closedBrackets","renderArrayValues","coma","addNoExpandIconToClosingSymbol","isLastItem","jsonPath","parentType","preventEditing","indentationLevel","propertiesAdded","propertiesLength","propertiesLengthForAutoClose","renderValue","propertyIndex","newJsonPath","createClosingSymbol","addExpandIconEvent","dataLengthForAutoClose","dataIndex1","actualIndex","dataIndex2","isArrayItem","objectTypeValue","objectTypeValueTitle","valueClass","ignored","ignoredDataType","nameElement","typeElement","isForEmptyProperties","assignClickEvent","openButton","nameValue","makePropertyNameEditable","selectItemAndCompareProperties","renderCustomDataType","ignoreValues","dataTypeKeyName","makePropertyValueEditable","createComma","functionName","newNumberValue","newBigIntValue","color","newUrlValue","newEmailValue","newStringValue","image","htmlObject","objectTitle","arrayTypeContents","valueObject","updateDataTypeCount","addValueElementToolTip","objectContents","jsonPathParts","jsonPathPartsLength","jsonPathPartIndex","originalPropertyName","originalArrayIndex","newPropertyName","newArrayIndex","originalValue","originalPropertyValue","propertyValue","enableValueEditingMode","newPropertyValue","newDataPropertyValue","clickValue","openingSymbol","closedSymbols","columnLayoutProcessingIndex","hideFunc","updateLineNumbers","showFunc","removeSelectedItemsAndComparedProperties","conditionFunc","condition","isClosed","addNoExpandIcon","symbolContainer","currentColumnIndex","itemIsSelected","columns","elementsHighlighted","isCompareColumnValuesEnabled","valueJsonPath","classesRemoved","oncontextmenu","editMenuItem","onContextMenuItemEdit","copyMenuItem","onContextMenuItemCopy","removeMenuItem","onContextMenuItemRemove","copyValue","dragAndDropText","onDragStart","ondragenter","ondragleave","onDropFiles","FileReader","dataTransfer","filesLength","filesRead","filesData","onFileLoad","importLoadedFiles","fileIndex","file","fileExtension","pop","importFromJson","reader","renderData","onloadend","onload","json","target","readAsText","keyIndex","onSetJson","tempLink","encodeURIComponent","getExportFilename","addEvents","documentFunc","windowFunc","onDocumentKeyDown","onDocumentKeyUp","onWindowContextMenuOrClick","ctrlKey","metaKey","destroyElement","_public","refresh","elementId","refreshAll","renderAll","openAll","closeAll","backPage","nextPage","getPageNumber","setJson","jsonObject","jsonResult","getJson","getSelectedJsonValues","updateBindingOptions","currentView","getBindingOptions","destroy","destroyAll","setConfiguration","configurationHasChanged","newInternalConfiguration","getIds","getVersion","$jsontree"],"mappings":"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","sourcesContent":[null]} \ No newline at end of file +{"version":3,"sources":["/Users/williamtroup/Documents/GitHub%20Repos/JsonTree.js/dist/jsontree.esm.js"],"names":["ImportedFilename","constructor","this","filename","object","DataType","DataType2","Is","Is2","String","String2","hexColor","value","valid","length","isNaN","substring","rgbColor","startsWith","endsWith","boolean","toString","toLowerCase","trim","date","dateTimeString","regExp","match","guid","regex","test","bigInt","result2","symbol","defined","definedObject","definedBoolean","definedString","definedStringAny","definedFunction","definedNumber","definedBigInt","definedArray","Array","definedDate","Date","definedFloat","definedSymbol","definedRegExp","RegExp","definedMap","Map","WeakMap","definedSet","Set","WeakSet","definedImage","Image","definedHtml","HTMLElement","definedUrl","data","url","URL","protocol","definedEmail","invalidOptionArray","array","minimumLength","definedImportedFilename","Convert2","Convert","toJsonStringifyClone","configuration2","bindingOptions","includeTimeZoneInDates","JSON","stringify","replace","symbolToString","Default","getFunctionName","name","source","src","htmlToObject","showCssStylesForHtmlObjects","arrayLength","arrayIndex","push","setToArray","obj","mapToObject","key","hasOwnProperty","stringToDataTypeValue","oldValue","newValue","parseFloat","parseInt","BigInt","Symbol","exception","addCssStyles","attributesLength","attributes","childrenLength","children","childrenKeyName","textKeyName","valueCloned","cloneNode","valueClonedChildrenLength","nodeType","Node","TEXT_NODE","removeChild","innerText","attributeIndex","attribute","nodeName","nodeValue","childIndex","computedStyles","getComputedStyle","computedStylesLength","cssComputedStyleIndex","cssComputedStyleName","cssComputedStyleNameStorage","cssComputedValue","getPropertyValue","map","Object","fromEntries","entries","set","from","values","jsonStringToObject","objectString","configuration","result","parsed","parse","exception1","eval","exception2","safeMode","console","error","text","objectErrorText","message","numberToFloatWithDecimalPlaces","decimalPlaces","stringToBigInt","stringToBoolean","stringToParsedValue","parsedValue","floatValue","stringsToBooleans","stringsToBigInts","stringsToNumbers","stringsToFloats","stringsToDates","stringsToSymbols","symbolToSpacedOutString","indexOf","Str","Str2","padNumber","number","paddingCharacter","numberString","numberResult","join","capitalizeFirstLetter","string","charAt","toUpperCase","slice","getMaximumLengthDisplay","maximumLength","ellipsisText","Default2","getAnyString","defaultValue","getString","getBoolean","getNumber","getFunction","getArray","getObject","getNumberMinimum","minimum","getNumberMaximum","maximum","getStringOrArray","split","functionName","functionNameWithParameters","isLambda","functionText","functionLength","lambdaLength","getObjectFromUrl","callback","request","XMLHttpRequest","open","send","onreadystatechange","readyState","status","responseText","dataJson","DomElement","DomElement2","find","tagTypes","func","tagTypesLength","tagTypeIndex","domElements","document","getElementsByTagName","elements","call","elementsLength","elementIndex","create","container","type","className","beforeNode","isText","createTextNode","createElement","insertBefore","appendChild","createWithHTML","html","element","innerHTML","createWithNoContainer","cancelBubble","ev","preventDefault","stopPropagation","getScrollPosition","documentElement","left","scrollLeft","clientLeft","top","scrollTop","clientTop","showElementAtMousePosition","offset","pageX","pageY","scrollPosition","style","display","offsetWidth","window","innerWidth","offsetHeight","innerHeight","selectAllText","range","createRange","selectNodeContents","selection","getSelection","removeAllRanges","addRange","createCheckBox","labelText","checked","spanClass","additionalText","lineContainer","label","input","autocomplete","getOffset","position","offsetLeft","offsetTop","offsetParent","getStyleValueByName","stylePropertyName","toNumber","styles","DateTime","DateTime2","getWeekdayNumber","getDay","getDayOrdinal","thText","stText","ndText","rdText","getCustomFormattedDateText","dateFormat","actualDate","weekDayNumber","getHours","getMinutes","getSeconds","getMilliseconds","dayNames","dayNamesAbbreviated","getDate","monthNames","getMonth","monthNamesAbbreviated","getFullYear","Number","Constants","Constants2","JSONTREE_JS_ATTRIBUTE_NAME","JSONTREE_JS_ATTRIBUTE_ARRAY_INDEX_NAME","JSONTREE_JS_ATTRIBUTE_PATH_NAME","Binding","Binding2","Options","Options2","getForNewInstance","get","allowEditing","_currentView","currentDataArrayPageIndex","paging","startPage","columnsPerPage","titleBarButtons","valueClickTimerId","editMode","idSet","contentPanelsOpen","contentPanelsIndex","contentPanelsDataIndex","backPageButton","nextPageButton","disabledBackground","sideMenu","sideMenuChanged","toggleFullScreenButton","fullScreenOn","dragAndDropBackground","initialized","currentContentColumns","footer","footerStatusText","footerDataTypeText","footerLengthText","footerSizeText","footerPageText","footerStatusTextTimerId","columnDragging","columnDraggingDataIndex","dataTypeCounts","contextMenu","currentColumnBuildingIndex","selectedValues","enabled","bulk","newOptions","options","id","class","showObjectSizes","useZeroIndexingForArrays","dateTimeFormat","showExpandIcons","showStringQuotes","showAllAsClosed","sortPropertyNames","sortPropertyNamesInAlphabeticalOrder","showCommas","reverseArrayValues","addArrayIndexPadding","showValueColors","fileDroppingEnabled","jsonIndentSpaces","showArrayIndexBrackets","showOpeningClosingCurlyBraces","showOpeningClosingSquaredBrackets","shortcutKeysEnabled","openInFullScreenMode","valueToolTips","editingValueClickDelay","showDataTypes","logJsonValueToolTipPaths","exportFilenameFormat","showPropertyNameQuotes","showOpenedObjectArrayBorders","showPropertyNameAndIndexColors","showUrlOpenButtons","showEmailOpenButtons","minimumArrayIndexPadding","arrayIndexPaddingCharacter","jsonPathAny","jsonPathSeparator","showChildIndexes","showClosedArraySquaredBrackets","showClosedObjectCurlyBraces","convertClickedValuesToString","rootName","emptyStringValue","expandIconType","openUrlsInSameWindow","getMaximum","getPaging","title","getTitle","getFooter","controlPanel","getControlPanel","lineNumbers","getLineNumbers","ignore","getIgnore","tooltip","getToolTip","getParse","getAllowEditing","getSideMenu","autoClose","getAutoClose","events","getCustomTriggers","stringLength","urlLength","emailLength","numberLength","bigIntLength","inspectionLevels","propertyNameLength","synchronizeScrolling","allowColumnReordering","allowComparisons","showCloseOpenAllButtons","showCopyButton","enableFullScreenToggling","showFullScreenButton","showLengths","showSizes","showPageOf","statusResetDelay","showMovingButtons","showRemoveButton","showEditButton","showSwitchToPagesButton","showImportButton","showExportButton","padNumbers","addDots","nullValues","functionValues","unknownValues","booleanValues","floatValues","numberValues","stringValues","dateValues","objectValues","arrayValues","bigintValues","symbolValues","emptyObjects","undefinedValues","guidValues","colorValues","regexpValues","mapValues","setValues","urlValues","imageValues","emailValues","htmlValues","lambdaValues","delay","defaultFlag","bigIntValues","regExpValues","propertyNames","properties","property","titleText","showAvailableDataTypeCounts","showOnlyDataTypesAvailable","showClearJsonButton","updateDisplayDelay","objectSize","arraySize","mapSize","setSize","htmlSize","onBeforeRender","onRenderComplete","onValueClick","onRefresh","onCopyAll","onOpenAll","onCloseAll","onDestroy","onBooleanRender","onFloatRender","onNumberRender","onBigIntRender","onStringRender","onDateRender","onFunctionRender","onNullRender","onUnknownRender","onSymbolRender","onCopyJsonReplacer","onUndefinedRender","onGuidRender","onColorRender","onJsonEdit","onRegExpRender","onExport","onUrlRender","onImageRender","onEmailRender","onLambdaRender","onCopy","onFullScreenChange","onSelectionChange","onCustomDataTypeRender","Config","Config2","newConfiguration","domElementTypes","getText","objectText","arrayText","mapText","setText","htmlText","closeAllButtonText","openAllButtonText","copyAllButtonText","attributeNotValidErrorText","attributeNotSetErrorText","closeAllButtonSymbolText","openAllButtonSymbolText","copyButtonSymbolText","backButtonText","nextButtonText","backButtonSymbolText","nextButtonSymbolText","noJsonToViewText","sideMenuButtonSymbolText","sideMenuButtonText","closeButtonSymbolText","closeButtonText","showDataTypesText","selectNoneText","importButtonSymbolText","importButtonText","fullScreenOnButtonSymbolText","fullScreenOffButtonSymbolText","fullScreenButtonText","copyButtonText","dragAndDropSymbolText","dragAndDropTitleText","dragAndDropDescriptionText","exportButtonSymbolText","exportButtonText","propertyColonCharacter","noPropertiesText","openText","openSymbolText","waitingText","pageOfText","sizeText","copiedText","exportedText","importedText","ignoreDataTypesUpdated","lengthText","valueUpdatedText","jsonUpdatedText","nameUpdatedText","indexUpdatedText","itemDeletedText","arrayJsonItemDeleted","dataTypeText","editSymbolButtonText","editButtonText","moveRightSymbolButtonText","moveRightButtonText","moveLeftSymbolButtonText","moveLeftButtonText","removeSymbolButtonText","removeButtonText","switchToPagesSymbolText","switchToPagesText","clearJsonSymbolText","clearJsonText","maximumInspectionLevelsReached","Trigger","Trigger2","customEvent","triggerFunction","args","apply","ToolTip","ToolTip2","renderControl","body","assignToEvents","add2","addEventListener_Window","addEventListener","removeEventListener","addEventListener_Document","hide","add","tooltipClass","show","tooltipTimerId","setTimeout","clearTimeout","remove","parentNode","Arr","Arr2","getIndex","index","getIndexName","largestValue","paddingLength","getIndexFromBrackets","propertyName","moveIndex","arrayData","oldIndex","newIndex","splice","removeNullOrUndefinedEntries","dataLength","dataIndex","Size","Size2","of","bytes","getSize","Math","floor","log","pow","itemKey","Obj","Obj2","getPropertyNames","collator","Intl","Collator","numeric","sensitivity","sort","compare","reverse","createFromValue","crypto","randomUUID","ContextMenu","ContextMenu2","addMenuItem","symbolText","menuItem","_configuration","_elements_Data","_elements_Data_Count","_key_Control_Pressed","render","hasAttribute","bindingOptionsData","getAttribute","classList","removeAttribute","classes","classesLength","classIndex","renderControlContainer","buildDocumentEvents","isForPageSwitch","ajaxData","renderControlContainerForData","scrollTopsForColumns","getContentColumnScrollTops","renderControlTitleBar","contents","updatedData","pageIndex","actualDataIndex","actualData","renderControlContentsPanel","renderControlDisabledBackground","renderControlSideMenu","renderControlFooterBar","renderControlDragAndDrop","totalColumns","enableColumnOrder","contentsColumn","contentsColumnIndex","noJson","importText","onclick","onSideMenuImportClick","onscroll","onContentsColumnScroll","setAttribute","ondragstart","onContentsColumnDragStart","ondragend","onContentsColumnDragEnd","ondragover","ondrop","onContentsColumnDrop","renderValuesContainer","lines","columnLayout","column","controlButtons","renderRootArray","renderRootObject","renderControlColumnLineNumbers","renderControlContentsControlButtons","ondblclick","enableContentsColumnEditMode","statusBarMessage","focus","onblur","setFooterStatusText","onkeydown","ev2","code","isCommandKey","newData","execCommand","contentColumnsLength","contentColumnIndex","columnsLength","right","columnIndex","moveDataArrayIndex","dataArray1","dataArray2","dataPanelsOpen1","dataPanelsOpen2","columnLayoutIndex","lineNumberCount","firstLineTop","largestLineNumberWidth","valueElements","querySelectorAll","valueElementsLength","valueElementIndex","valueElement","elementTop","lineNumber","lineNumberDot","newTop","max","height","width","isPagingEnabled","editButton","moveRightButton","disabled","moveLeftButton","copyButton","openAllButton","onOpenAllForPage","closeAllButton","onCloseAllForPage","exportButton","importButton","removeButton","onRemoveArrayJson","switchToPagesButton","onSwitchToPages","paddingLeft","minHeight","paddingRight","panels","panelId","copyDataJson","navigator","clipboard","writeText","titleBar","onTitleBarDblClick","sideMenuButton","onSideMenuOpen","onTitleBarCopyAllClick","onBackPage","onNextPage","buttonText","contains","updateFooterDisplay","onSideMenuClose","titleBarText","titleBarControls","clearJsonButton","onSideMenuClearJson","closeButton","addSideMenuIgnoreTypes","insertDataIndex","accept","multiple","onchange","importFromFiles","files","click","closed","checkboxes","ignoreTypes","selectAll","selectNone","changeSidePanelCheckboxSelection","ignoreTypesContent","dataTypes","keys","dataType","forEach","_","createSideMenuIgnoreTypeCheckBox","flag","checkboxesLength","checkboxIndex","dataTypeDisplayCount","checkBoxName","checkBoxAdditionalText","getFooterPageText","currentPage","ceil","totalPages","currentReplacement","toFixed","outerHTML","totalReplacement","addFooterDataTypeStatus","replacement","addFooterLengthStatus","addFooterSizeStatus","size","statusText","propertyCount","mainTitle","objectTypeTitle","objectTypeContents","expandIcon","rootNameTitle","openingBrace","closedBraces","addObjectContentsBorder","dataArrayIndex","renderObjectValues","addValueClickEvent","renderValueContextMenuItems","openingBracket","closedBrackets","renderArrayValues","coma","addNoExpandIconToClosingSymbol","isLastItem","jsonPath","parentType","preventEditing","indentationLevel","propertiesAdded","propertiesLength","propertiesLengthForAutoClose","renderValue","propertyIndex","newJsonPath","createClosingSymbol","addExpandIconEvent","dataLengthForAutoClose","dataIndex1","actualIndex","dataIndex2","isArrayItem","objectTypeValue","objectTypeValueTitle","valueClass","ignored","ignoredDataType","nameElement","typeElement","isForEmptyProperties","assignClickEvent","openButton","nameValue","makePropertyNameEditable","selectItemAndCompareProperties","renderCustomDataType","ignoreValues","dataTypeKeyName","makePropertyValueEditable","createComma","newNumberValue","newBigIntValue","color","newUrlValue","location","newEmailValue","newStringValue","image","htmlObject","objectTitle","arrayTypeContents","valueObject","updateDataTypeCount","addValueElementToolTip","objectContents","jsonPathParts","jsonPathPartsLength","jsonPathPartIndex","originalPropertyName","originalArrayIndex","newPropertyName","newArrayIndex","originalValue","originalPropertyValue","propertyValue","enableValueEditingMode","newPropertyValue","newDataPropertyValue","clickValue","openingSymbol","closedSymbols","columnLayoutProcessingIndex","hideFunc","updateLineNumbers","showFunc","removeSelectedItemsAndComparedProperties","conditionFunc","condition","isClosed","addNoExpandIcon","symbolContainer","currentColumnIndex","itemIsSelected","columns","elementsHighlighted","isCompareColumnValuesEnabled","valueJsonPath","classesRemoved","oncontextmenu","editMenuItem","onContextMenuItemEdit","copyMenuItem","onContextMenuItemCopy","removeMenuItem","onContextMenuItemRemove","copyValue","dragAndDropText","onDragStart","ondragenter","ondragleave","onDropFiles","FileReader","dataTransfer","filesLength","filesRead","filesData","onFileLoad","importLoadedFiles","fileIndex","file","fileExtension","pop","importFromJson","reader","renderData","onloadend","onload","json","target","readAsText","keyIndex","onSetJson","tempLink","encodeURIComponent","getExportFilename","addEvents","documentFunc","windowFunc","onDocumentKeyDown","onDocumentKeyUp","onWindowContextMenuOrClick","ctrlKey","metaKey","destroyElement","_public","refresh","elementId","refreshAll","renderAll","openAll","closeAll","backPage","nextPage","getPageNumber","setJson","jsonObject","jsonResult","getJson","getSelectedJsonValues","updateBindingOptions","currentView","getBindingOptions","destroy","destroyAll","setConfiguration","configurationHasChanged","newInternalConfiguration","getIds","getVersion","$jsontree"],"mappings":"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","sourcesContent":[null]} \ No newline at end of file diff --git a/dist/jsontree.js b/dist/jsontree.js index 56482858..3d4875eb 100644 --- a/dist/jsontree.js +++ b/dist/jsontree.js @@ -247,7 +247,7 @@ var Convert2; n = parseFloat(t); } else if (Is.definedNumber(e) && !isNaN(+t)) { n = parseInt(t); - } else if (Is.definedString(e)) { + } else if (Is.definedStringAny(e)) { n = t; } else if (Is.definedDate(e)) { n = new Date(t); @@ -366,7 +366,7 @@ var Convert2; Convert.stringToBoolean = stringToBoolean; function stringToParsedValue(e, t) { let n = null; - if (Is.definedString(e)) { + if (Is.definedString(e) && e.trim() !== "") { const o = parseFloat(e); if (t.parse.stringsToBooleans && Is.String.boolean(e)) { n = Convert.stringToBoolean(e); @@ -385,8 +385,45 @@ var Convert2; return n; } Convert.stringToParsedValue = stringToParsedValue; + function symbolToSpacedOutString(e) { + let t = e.toString(); + if (t.indexOf("()") === -1) { + t = t.replace("(", `(${" "}`).replace(")", `${" "})`); + } else { + t = t.replace("()", ""); + } + return t; + } + Convert.symbolToSpacedOutString = symbolToSpacedOutString; })(Convert2 || (Convert2 = {})); +var Str; + +(e => { + function t(e, t = 1, n = "0") { + const o = e.toString(); + let l = o; + if (o.length < t) { + const e = t - o.length + 1; + l = `${Array(e).join(n)}${o}`; + } + return l; + } + e.padNumber = t; + function n(e) { + return `${e.charAt(0).toUpperCase()}${e.slice(1)}`; + } + e.capitalizeFirstLetter = n; + function o(e, t, n) { + let o = e; + if (t > 0 && o.length > t) { + o = `${o.substring(0, t)}${" "}${n}${" "}`; + } + return o; + } + e.getMaximumLengthDisplay = o; +})(Str || (Str = {})); + var Default; (e => { @@ -441,20 +478,23 @@ var Default; return n; } e.getStringOrArray = c; - function d(e, t) { - let n; - let o = false; - const l = e.toString().split("("); - const r = l[0].split(" "); - const i = "()"; - n = `${r.join(" ")}${i}`; - if (n.trim() === i) { - n = `${t.text.functionText}${i}`; - o = true; + function d(e, t, n) { + const o = e.toString(); + const l = o.substring(0, o.indexOf(")") + 1); + let r = l.trim(); + let i = false; + if (l[0] === "(") { + r = `${t.text.functionText}${r}`; + i = true; + } + if (!i) { + r = Str.getMaximumLengthDisplay(r, n.maximum.functionLength, t.text.ellipsisText); + } else { + r = Str.getMaximumLengthDisplay(r, n.maximum.lambdaLength, t.text.ellipsisText); } return { - name: n, - isLambda: o + name: r, + isLambda: i }; } e.getFunctionName = d; @@ -612,33 +652,6 @@ var DomElement; e.getStyleValueByName = d; })(DomElement || (DomElement = {})); -var Str; - -(e => { - function t(e, t = 1, n = "0") { - const o = e.toString(); - let l = o; - if (o.length < t) { - const e = t - o.length + 1; - l = `${Array(e).join(n)}${o}`; - } - return l; - } - e.padNumber = t; - function n(e) { - return `${e.charAt(0).toUpperCase()}${e.slice(1)}`; - } - e.capitalizeFirstLetter = n; - function o(e, t, n) { - let o = e; - if (t > 0 && o.length > t) { - o = `${o.substring(0, t)}${" "}${n}${" "}`; - } - return o; - } - e.getMaximumLengthDisplay = o; -})(Str || (Str = {})); - var DateTime; (e => { @@ -799,6 +812,7 @@ var Binding; t.rootName = Default.getString(t.rootName, "root"); t.emptyStringValue = Default.getString(t.emptyStringValue, ""); t.expandIconType = Default.getString(t.expandIconType, "arrow"); + t.openUrlsInSameWindow = Default.getBoolean(t.openUrlsInSameWindow, false); t.maximum = l(t); t.paging = r(t); t.title = i(t); @@ -825,6 +839,8 @@ var Binding; e.maximum.bigIntLength = Default.getNumber(e.maximum.bigIntLength, 0); e.maximum.inspectionLevels = Default.getNumber(e.maximum.inspectionLevels, 10); e.maximum.propertyNameLength = Default.getNumber(e.maximum.propertyNameLength, 0); + e.maximum.functionLength = Default.getNumber(e.maximum.functionLength, 0); + e.maximum.lambdaLength = Default.getNumber(e.maximum.lambdaLength, 0); return e.maximum; } function r(e) { @@ -1506,6 +1522,7 @@ var ContextMenu; } function s(t, n, o, l, r, i, a) { const s = DomElement.create(n, "div", i > 1 ? "contents-column-multiple" : "contents-column"); + const c = o._currentView.currentColumnBuildingIndex; if (!Is.defined(t)) { const t = DomElement.create(s, "div", "no-json"); DomElement.createWithHTML(t, "span", "no-json-text", e.text.noJsonToViewText); @@ -1514,7 +1531,7 @@ var ContextMenu; n.onclick = () => M(o); } } else { - s.onscroll = () => d(s, o, o._currentView.currentColumnBuildingIndex); + s.onscroll = () => d(s, o, c); if (o.paging.enabled && Is.definedNumber(l)) { s.setAttribute(Constants.JSONTREE_JS_ATTRIBUTE_ARRAY_INDEX_NAME, l.toString()); } @@ -1533,13 +1550,13 @@ var ContextMenu; i = DomElement.create(s, "div", "contents-column-lines"); e = i; } - const c = { + const p = { column: s, lineNumbers: n, lines: i, controlButtons: null }; - o._currentView.currentContentColumns.push(c); + o._currentView.currentContentColumns.push(p); o._currentView.currentColumnBuildingIndex = o._currentView.currentContentColumns.length - 1; if (Is.definedArray(t)) { q(e, o, t, "array"); @@ -1637,28 +1654,22 @@ var ContextMenu; const l = e.scrollLeft; const r = t._currentView.currentContentColumns.length; if (t.controlPanel.enabled) { - const e = t._currentView.currentContentColumns[n].controlButtons; - if (Is.defined(e)) { - e.style.top = `${t._currentView.currentContentColumns[n].column.scrollTop}px`; - e.style.right = `-${t._currentView.currentContentColumns[n].column.scrollLeft}px`; + const e = t._currentView.currentContentColumns[n]; + if (Is.defined(e.controlButtons)) { + e.controlButtons.style.top = `${e.column.scrollTop}px`; + e.controlButtons.style.right = `-${e.column.scrollLeft}px`; } } - if (t.paging.synchronizeScrolling) { - for (let e = 0; e < r; e++) { - if (n !== e) { - t._currentView.currentContentColumns[e].column.scrollTop = o; - t._currentView.currentContentColumns[e].column.scrollLeft = l; + for (let n = 0; n < r; n++) { + const r = t._currentView.currentContentColumns[n]; + if (r.column !== e) { + if (t.paging.synchronizeScrolling) { + r.column.scrollTop = o; + r.column.scrollLeft = l; } - } - } - if (t.controlPanel.enabled) { - for (let e = 0; e < r; e++) { - if (n !== e) { - const n = t._currentView.currentContentColumns[e].controlButtons; - if (Is.defined(n)) { - n.style.top = `${t._currentView.currentContentColumns[e].column.scrollTop}px`; - n.style.right = `-${t._currentView.currentContentColumns[e].column.scrollLeft}px`; - } + if (t.controlPanel.enabled && Is.defined(r.controlButtons)) { + r.controlButtons.style.top = `${r.column.scrollTop}px`; + r.controlButtons.style.right = `-${r.column.scrollLeft}px`; } } } @@ -2461,7 +2472,7 @@ var ContextMenu; T = true; } } else if (Is.definedFunction(r)) { - const t = Default.getFunctionName(r, e); + const t = Default.getFunctionName(r, e, o); if (t.isLambda) { y = "lambda"; if (!o.ignore.lambdaValues) { @@ -2570,7 +2581,13 @@ var ContextMenu; w = o.allowEditing.urlValues && !c; if (o.showUrlOpenButtons) { v = DomElement.createWithHTML(g, "span", o.showValueColors ? "open-button-color" : "open-button", `${e.text.openText}${" "}${e.text.openSymbolText}`); - v.onclick = () => window.open(r); + v.onclick = () => { + if (o.openUrlsInSameWindow) { + window.location = r; + } else { + window.open(r); + } + }; } te(o, t, l, r, x, a, w, v); Trigger.customEvent(o.events.onUrlRender, o._currentView.element, x); @@ -2644,7 +2661,7 @@ var ContextMenu; y = "symbol"; if (!o.ignore.symbolValues) { p = o.showValueColors ? `${y} value` : "value"; - x = DomElement.createWithHTML(g, "span", p, r.toString()); + x = DomElement.createWithHTML(g, "span", p, Convert2.symbolToSpacedOutString(r)); w = o.allowEditing.symbolValues && !c; te(o, t, l, r, x, a, w); Trigger.customEvent(o.events.onSymbolRender, o._currentView.element, x); @@ -3437,7 +3454,10 @@ var ContextMenu; function Ve(e, l) { o = Be(e); if (l.shortcutKeysEnabled && n === 1 && t.hasOwnProperty(l._currentView.element.id) && !l._currentView.editMode) { - if (Be(e) && e.code === "F11") { + if (Be(e) && e.code === "KeyC") { + e.preventDefault(); + v(l, l.data); + } else if (Be(e) && e.code === "F11") { e.preventDefault(); V(l); } else if (e.code === "ArrowLeft") { @@ -3654,7 +3674,7 @@ var ContextMenu; return e; }, getVersion: function() { - return "4.4.0"; + return "4.5.0"; } }; (() => { diff --git a/dist/jsontree.js.css b/dist/jsontree.js.css index 2fe9ee7a..c6ce0822 100644 --- a/dist/jsontree.js.css +++ b/dist/jsontree.js.css @@ -1,5 +1,5 @@ /* - * JsonTree.js Library v4.4.0 + * JsonTree.js Library v4.5.0 * * Copyright 2024 Bunoon * Released under the MIT License @@ -224,6 +224,7 @@ div.json-tree-js div.closed-square { display: inline-block; width: 10px; height: 10px; + margin-left: 1px; margin-right: calc(var(--json-tree-js-spacing)); border-radius: var(--json-tree-js-border-radius-toggle); } @@ -255,6 +256,7 @@ div.json-tree-js div.closed-circle { display: inline-block; width: 10px; height: 10px; + margin-left: 1px; margin-right: calc(var(--json-tree-js-spacing)); border-radius: 50%; } @@ -286,6 +288,7 @@ div.json-tree-js div.closed-plus-minus { display: inline-block; width: 10px; height: 10px; + margin-left: 1px; margin-right: calc(var(--json-tree-js-spacing)); } div.json-tree-js div.opened-plus-minus, @@ -978,7 +981,7 @@ div.json-tree-js div.object-type-contents img { } div.json-tree-js div.object-border { border-left: var(--json-tree-js-border-size) dotted var(--json-tree-js-container-object-left-border-color); - margin-left: 5px; + margin-left: 5.5px; } div.json-tree-js div.object-border-no-toggles { margin-left: var(--json-tree-js-border-size); diff --git a/dist/jsontree.js.css.map b/dist/jsontree.js.css.map index 3ddf57a0..e5e80994 100644 --- a/dist/jsontree.js.css.map +++ b/dist/jsontree.js.css.map @@ -1 +1 @@ -{"version":3,"sourceRoot":"","sources":["../src/jsontree.js.scss","../src/sass/_styles.scss"],"names":[],"mappings":"AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAUA;EAEI;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;EAcA;EACA;EACA;EACA;EAGA;EACA;EACA;EACA;EAGA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EAGA;EACA;EACA;EAGA;EACA;EACA;EAGA;EAGA;EACA;EACA;EAGA;EACA;EAGA;EACA;EACA;EAGA;EACA;EAGA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EAGA;EACA;EACA;EACA;EACA;EACA;EACA;EAGA;EAGA;EACA;EACA;EACA;EAGA;EACA;EACA;EACA;EAGA;EACA;EACA;EACA;EAGA;EACA;EAGA;;;AAIJ;AAAA;AAAA;AAAA;AAAA;AAMA;EChJI;EACA;EACA;EACA;EACA;EACA;EAUA;EACA;EDmIA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;AAEA;EACI;;AAGJ;EACI;;AAGJ;EACI;;AAGJ;EACI;;AAGJ;EClKA;EACA;;ADoKI;ECrKJ;EACA;;;AD2KJ;EACI;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;AAEA;AAAA;EAEI;;AAGJ;EACI;EACA;EACA;EACA;;AAEA;EACI;EACA;EACA;EACA;;;AAMZ;AAAA;AAAA;AAAA;AAAA;AAOI;EACI;EACA;EACA;EACA;;AAGJ;AAAA;EAEI;EACA;EACA;EACA;EACA;EACA;EACA;;AAEA;AAAA;EACI;;AAIR;EACI;EACA;EACA;;AAGJ;EACI;EACA;EACA;;;AAKR;AAAA;AAAA;AAAA;AAAA;AAOI;AAAA;AAAA;EAGI;EACA;EACA;EACA;EACA;;AAGJ;EACI;;AAGJ;EACI;;AAGJ;AAAA;EAEI;EACA;EACA;;AAEA;AAAA;EACI;;;AAMZ;AAAA;AAAA;AAAA;AAAA;AAOI;AAAA;AAAA;EAGI;EACA;EACA;EACA;EACA;;AAGJ;EACI;;AAGJ;EACI;;AAGJ;AAAA;EAEI;EACA;EACA;;AAEA;AAAA;EACI;;;AAMZ;AAAA;AAAA;AAAA;AAAA;AAOI;AAAA;AAAA;EAGI;EACA;EACA;EACA;;AAGJ;AAAA;EAEI;;AAEA;AAAA;EACI;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;AAKJ;EACI;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;AAIR;AAAA;EAEI;EACA;EACA;;AAEA;AAAA;EACI;;;AAMZ;AAAA;AAAA;AAAA;AAAA;AAOI;EACI;EACA;EACA;EACA;EACA;EACA;EACA;;AC1YJ;EACI;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;AAEA;EACI;;AAGJ;EACI;EACA;;AAGJ;EACI;EACA;EACA;;ADsXJ;ECvRJ;EACA;EACA;EACA;;ADwRI;EACI;;AAGJ;EACI;EACA;EACA;EACA;EACA;EACA;;AAGJ;EACI;EACA;EACA;EACA;;AAEA;EACI;;AAGJ;EACI;;AAEA;EAHJ;IAIQ;;;;AAQpB;AAAA;AAAA;AAAA;AAAA;AAOI;EACI;EACA;EACA;EACA;EACA;EACA;EACA;;AAEA;EACI;EACA;;AAGJ;AAAA;AAAA;AAAA;EAII;;AAGJ;AAAA;AAAA;EAGI;;AAGJ;EACI;;;AAMZ;AAAA;AAAA;AAAA;AAAA;AAOI;EACI;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;;AAKR;AAAA;AAAA;AAAA;AAAA;AAOI;EACI;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;AAEA;EACI;EACA;EACA;EACA;EACA;EACA;EACA;;AAEA;EACI;EACA;EACA;EACA;EACA;EACA;;AAGJ;EACI;EACA;EACA;EACA;;AC/hBZ;EACI;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;AAEA;EACI;;AAGJ;EACI;EACA;;AAGJ;EACI;EACA;EACA;;AD2gBI;EACI;EC7ahB;EACA;EACA;EACA;;ADibI;EACI;EACA;EACA;EACA;;AAEA;EACI;EACA;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;AAGJ;AAAA;EAEI;;AAEA;AAAA;EACI;EACA;;AAIR;EACI;;;AAOhB;AAAA;AAAA;AAAA;AAAA;AAOI;EACI;;AAEA;EC9lCJ;EACA;EACA;EACA;EACA;EACA;ED2lCQ;EACA;EACA;EACA;EACA;EACA;;AAEA;EACI;;AAEA;EACI;EACA;;AAGJ;EACI;;AAGJ;EAEI;;AAGJ;EACI;;AAIR;EACI;;AAGJ;EACI;;AAGJ;EACI;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;AAEA;EACI;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;;AAQpB;AAAA;AAAA;AAAA;AAAA;AAMA;ECxqCI;EACA;EACA;EACA;EACA;EACA;EAUA;EACA;ED2pCA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;AAEA;EACI;EACA;EACA;EACA;EACA;;AAEA;EACI;EACA;;AAGJ;EACI;;AAGJ;EACI;EACA;;AAGJ;EACI;EACA;EACA;;AAGJ;EACI;;;AAMZ;AAAA;AAAA;AAAA;AAAA;AAMA;AAAA;ECjuCI;EACA;EACA;EACA;EACA;EACA;EAUA;EACA;EDqtCA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;;AAIJ;AAAA;AAAA;AAAA;AAAA;AAMA;EACI;IACI;;EAEJ;IACI","file":"jsontree.js.css"} \ No newline at end of file +{"version":3,"sourceRoot":"","sources":["../src/jsontree.js.scss","../src/sass/_styles.scss"],"names":[],"mappings":"AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAUA;EAEI;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;EAcA;EACA;EACA;EACA;EAGA;EACA;EACA;EACA;EAGA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EAGA;EACA;EACA;EAGA;EACA;EACA;EAGA;EAGA;EACA;EACA;EAGA;EACA;EAGA;EACA;EACA;EAGA;EACA;EAGA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EAGA;EACA;EACA;EACA;EACA;EACA;EACA;EAGA;EAGA;EACA;EACA;EACA;EAGA;EACA;EACA;EACA;EAGA;EACA;EACA;EACA;EAGA;EACA;EAGA;;;AAIJ;AAAA;AAAA;AAAA;AAAA;AAMA;EChJI;EACA;EACA;EACA;EACA;EACA;EAUA;EACA;EDmIA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;AAEA;EACI;;AAGJ;EACI;;AAGJ;EACI;;AAGJ;EACI;;AAGJ;EClKA;EACA;;ADoKI;ECrKJ;EACA;;;AD2KJ;EACI;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;AAEA;AAAA;EAEI;;AAGJ;EACI;EACA;EACA;EACA;;AAEA;EACI;EACA;EACA;EACA;;;AAMZ;AAAA;AAAA;AAAA;AAAA;AAOI;EACI;EACA;EACA;EACA;;AAGJ;AAAA;EAEI;EACA;EACA;EACA;EACA;EACA;EACA;;AAEA;AAAA;EACI;;AAIR;EACI;EACA;EACA;;AAGJ;EACI;EACA;EACA;;;AAKR;AAAA;AAAA;AAAA;AAAA;AAOI;AAAA;AAAA;EAGI;EACA;EACA;EACA;EACA;EACA;;AAGJ;EACI;;AAGJ;EACI;;AAGJ;AAAA;EAEI;EACA;EACA;;AAEA;AAAA;EACI;;;AAMZ;AAAA;AAAA;AAAA;AAAA;AAOI;AAAA;AAAA;EAGI;EACA;EACA;EACA;EACA;EACA;;AAGJ;EACI;;AAGJ;EACI;;AAGJ;AAAA;EAEI;EACA;EACA;;AAEA;AAAA;EACI;;;AAMZ;AAAA;AAAA;AAAA;AAAA;AAOI;AAAA;AAAA;EAGI;EACA;EACA;EACA;EACA;;AAGJ;AAAA;EAEI;;AAEA;AAAA;EACI;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;AAKJ;EACI;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;AAIR;AAAA;EAEI;EACA;EACA;;AAEA;AAAA;EACI;;;AAMZ;AAAA;AAAA;AAAA;AAAA;AAOI;EACI;EACA;EACA;EACA;EACA;EACA;EACA;;AC7YJ;EACI;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;AAEA;EACI;;AAGJ;EACI;EACA;;AAGJ;EACI;EACA;EACA;;ADyXJ;EC1RJ;EACA;EACA;EACA;;AD2RI;EACI;;AAGJ;EACI;EACA;EACA;EACA;EACA;EACA;;AAGJ;EACI;EACA;EACA;EACA;;AAEA;EACI;;AAGJ;EACI;;AAEA;EAHJ;IAIQ;;;;AAQpB;AAAA;AAAA;AAAA;AAAA;AAOI;EACI;EACA;EACA;EACA;EACA;EACA;EACA;;AAEA;EACI;EACA;;AAGJ;AAAA;AAAA;AAAA;EAII;;AAGJ;AAAA;AAAA;EAGI;;AAGJ;EACI;;;AAMZ;AAAA;AAAA;AAAA;AAAA;AAOI;EACI;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;;AAKR;AAAA;AAAA;AAAA;AAAA;AAOI;EACI;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;AAEA;EACI;EACA;EACA;EACA;EACA;EACA;EACA;;AAEA;EACI;EACA;EACA;EACA;EACA;EACA;;AAGJ;EACI;EACA;EACA;EACA;;ACliBZ;EACI;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;AAEA;EACI;;AAGJ;EACI;EACA;;AAGJ;EACI;EACA;EACA;;AD8gBI;EACI;EChbhB;EACA;EACA;EACA;;ADobI;EACI;EACA;EACA;EACA;;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EACI;EACA;EACA;;AAGJ;AAAA;EAEI;;AAEA;AAAA;EACI;EACA;;AAIR;EACI;;;AAOhB;AAAA;AAAA;AAAA;AAAA;AAOI;EACI;;AAEA;ECjmCJ;EACA;EACA;EACA;EACA;EACA;ED8lCQ;EACA;EACA;EACA;EACA;EACA;;AAEA;EACI;;AAEA;EACI;EACA;;AAGJ;EACI;;AAGJ;EAEI;;AAGJ;EACI;;AAIR;EACI;;AAGJ;EACI;;AAGJ;EACI;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;AAEA;EACI;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;;AAQpB;AAAA;AAAA;AAAA;AAAA;AAMA;EC3qCI;EACA;EACA;EACA;EACA;EACA;EAUA;EACA;ED8pCA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;AAEA;EACI;EACA;EACA;EACA;EACA;;AAEA;EACI;EACA;;AAGJ;EACI;;AAGJ;EACI;EACA;;AAGJ;EACI;EACA;EACA;;AAGJ;EACI;;;AAMZ;AAAA;AAAA;AAAA;AAAA;AAMA;AAAA;ECpuCI;EACA;EACA;EACA;EACA;EACA;EAUA;EACA;EDwtCA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;;AAIJ;AAAA;AAAA;AAAA;AAAA;AAMA;EACI;IACI;;EAEJ;IACI","file":"jsontree.js.css"} \ No newline at end of file diff --git a/dist/jsontree.js.map b/dist/jsontree.js.map index 4e98366a..ea3a57fa 100644 --- a/dist/jsontree.js.map +++ b/dist/jsontree.js.map @@ -1 +1 @@ -{"version":3,"sources":["/Users/williamtroup/Documents/GitHub%20Repos/JsonTree.js/dist/jsontree.js"],"names":["ImportedFilename","constructor","this","filename","object","DataType","DataType2","Is","Is2","String","String2","hexColor","value","valid","length","isNaN","substring","rgbColor","startsWith","endsWith","boolean","toString","toLowerCase","trim","date","dateTimeString","regExp","match","guid","regex","test","bigInt","result2","symbol","defined","definedObject","definedBoolean","definedString","definedStringAny","definedFunction","definedNumber","definedBigInt","definedArray","Array","definedDate","Date","definedFloat","definedSymbol","definedRegExp","RegExp","definedMap","Map","WeakMap","definedSet","Set","WeakSet","definedImage","Image","definedHtml","HTMLElement","definedUrl","data","url","URL","protocol","definedEmail","invalidOptionArray","array","minimumLength","definedImportedFilename","Convert2","Convert","toJsonStringifyClone","configuration2","bindingOptions","includeTimeZoneInDates","JSON","stringify","replace","symbolToString","Default","getFunctionName","name","source","src","htmlToObject","showCssStylesForHtmlObjects","arrayLength","arrayIndex","push","setToArray","obj","mapToObject","key","hasOwnProperty","stringToDataTypeValue","oldValue","newValue","parseFloat","parseInt","BigInt","Symbol","exception","addCssStyles","attributesLength","attributes","childrenLength","children","childrenKeyName","textKeyName","valueCloned","cloneNode","valueClonedChildrenLength","nodeType","Node","TEXT_NODE","removeChild","innerText","attributeIndex","attribute","nodeName","nodeValue","childIndex","computedStyles","getComputedStyle","computedStylesLength","cssComputedStyleIndex","cssComputedStyleName","cssComputedStyleNameStorage","cssComputedValue","getPropertyValue","map","Object","fromEntries","entries","set","from","values","jsonStringToObject","objectString","configuration","result","parsed","parse","exception1","eval","exception2","safeMode","console","error","text","objectErrorText","message","numberToFloatWithDecimalPlaces","decimalPlaces","stringToBigInt","stringToBoolean","stringToParsedValue","parsedValue","floatValue","stringsToBooleans","stringsToBigInts","stringsToNumbers","stringsToFloats","stringsToDates","stringsToSymbols","Default2","getAnyString","defaultValue","getString","getBoolean","getNumber","getFunction","getArray","getObject","getNumberMinimum","minimum","getNumberMaximum","maximum","getStringOrArray","split","isLambda","valueParts","valueNameParts","functionBrackets","join","functionText","getObjectFromUrl","callback","request","XMLHttpRequest","open","send","onreadystatechange","readyState","status","responseText","dataJson","DomElement","DomElement2","find","tagTypes","func","tagTypesLength","tagTypeIndex","domElements","document","getElementsByTagName","elements","slice","call","elementsLength","elementIndex","create","container","type","className","beforeNode","isText","createTextNode","createElement","insertBefore","appendChild","createWithHTML","html","element","innerHTML","createWithNoContainer","cancelBubble","ev","preventDefault","stopPropagation","getScrollPosition","documentElement","left","scrollLeft","clientLeft","top","scrollTop","clientTop","showElementAtMousePosition","offset","pageX","pageY","scrollPosition","style","display","offsetWidth","window","innerWidth","offsetHeight","innerHeight","selectAllText","range","createRange","selectNodeContents","selection","getSelection","removeAllRanges","addRange","createCheckBox","labelText","checked","spanClass","additionalText","lineContainer","label","input","autocomplete","getOffset","position","offsetLeft","offsetTop","offsetParent","getStyleValueByName","stylePropertyName","toNumber","styles","Str","Str2","padNumber","number","paddingCharacter","numberString","numberResult","capitalizeFirstLetter","string","charAt","toUpperCase","getMaximumLengthDisplay","maximumLength","ellipsisText","DateTime","DateTime2","getWeekdayNumber","getDay","getDayOrdinal","thText","stText","ndText","rdText","getCustomFormattedDateText","dateFormat","actualDate","weekDayNumber","getHours","getMinutes","getSeconds","getMilliseconds","dayNames","dayNamesAbbreviated","getDate","monthNames","getMonth","monthNamesAbbreviated","getFullYear","Number","Constants","Constants2","JSONTREE_JS_ATTRIBUTE_NAME","JSONTREE_JS_ATTRIBUTE_ARRAY_INDEX_NAME","JSONTREE_JS_ATTRIBUTE_PATH_NAME","Binding","Binding2","Options","Options2","getForNewInstance","get","allowEditing","_currentView","currentDataArrayPageIndex","paging","startPage","columnsPerPage","titleBarButtons","valueClickTimerId","editMode","idSet","contentPanelsOpen","contentPanelsIndex","contentPanelsDataIndex","backPageButton","nextPageButton","disabledBackground","sideMenu","sideMenuChanged","toggleFullScreenButton","fullScreenOn","dragAndDropBackground","initialized","currentContentColumns","footer","footerStatusText","footerDataTypeText","footerLengthText","footerSizeText","footerPageText","footerStatusTextTimerId","columnDragging","columnDraggingDataIndex","dataTypeCounts","contextMenu","currentColumnBuildingIndex","selectedValues","enabled","bulk","newOptions","options","id","class","showObjectSizes","useZeroIndexingForArrays","dateTimeFormat","showExpandIcons","showStringQuotes","showAllAsClosed","sortPropertyNames","sortPropertyNamesInAlphabeticalOrder","showCommas","reverseArrayValues","addArrayIndexPadding","showValueColors","fileDroppingEnabled","jsonIndentSpaces","showArrayIndexBrackets","showOpeningClosingCurlyBraces","showOpeningClosingSquaredBrackets","shortcutKeysEnabled","openInFullScreenMode","valueToolTips","editingValueClickDelay","showDataTypes","logJsonValueToolTipPaths","exportFilenameFormat","showPropertyNameQuotes","showOpenedObjectArrayBorders","showPropertyNameAndIndexColors","showUrlOpenButtons","showEmailOpenButtons","minimumArrayIndexPadding","arrayIndexPaddingCharacter","jsonPathAny","jsonPathSeparator","showChildIndexes","showClosedArraySquaredBrackets","showClosedObjectCurlyBraces","convertClickedValuesToString","rootName","emptyStringValue","expandIconType","getMaximum","getPaging","title","getTitle","getFooter","controlPanel","getControlPanel","lineNumbers","getLineNumbers","ignore","getIgnore","tooltip","getToolTip","getParse","getAllowEditing","getSideMenu","autoClose","getAutoClose","events","getCustomTriggers","stringLength","urlLength","emailLength","numberLength","bigIntLength","inspectionLevels","propertyNameLength","synchronizeScrolling","allowColumnReordering","allowComparisons","showCloseOpenAllButtons","showCopyButton","enableFullScreenToggling","showFullScreenButton","showLengths","showSizes","showPageOf","statusResetDelay","showMovingButtons","showRemoveButton","showEditButton","showSwitchToPagesButton","showImportButton","showExportButton","padNumbers","addDots","nullValues","functionValues","unknownValues","booleanValues","floatValues","numberValues","stringValues","dateValues","objectValues","arrayValues","bigintValues","symbolValues","emptyObjects","undefinedValues","guidValues","colorValues","regexpValues","mapValues","setValues","urlValues","imageValues","emailValues","htmlValues","lambdaValues","delay","defaultFlag","bigIntValues","regExpValues","propertyNames","properties","property","titleText","showAvailableDataTypeCounts","showOnlyDataTypesAvailable","showClearJsonButton","updateDisplayDelay","objectSize","arraySize","mapSize","setSize","htmlSize","onBeforeRender","onRenderComplete","onValueClick","onRefresh","onCopyAll","onOpenAll","onCloseAll","onDestroy","onBooleanRender","onFloatRender","onNumberRender","onBigIntRender","onStringRender","onDateRender","onFunctionRender","onNullRender","onUnknownRender","onSymbolRender","onCopyJsonReplacer","onUndefinedRender","onGuidRender","onColorRender","onJsonEdit","onRegExpRender","onExport","onUrlRender","onImageRender","onEmailRender","onLambdaRender","onCopy","onFullScreenChange","onSelectionChange","onCustomDataTypeRender","Config","Config2","newConfiguration","domElementTypes","getText","objectText","arrayText","mapText","setText","htmlText","closeAllButtonText","openAllButtonText","copyAllButtonText","attributeNotValidErrorText","attributeNotSetErrorText","closeAllButtonSymbolText","openAllButtonSymbolText","copyButtonSymbolText","backButtonText","nextButtonText","backButtonSymbolText","nextButtonSymbolText","noJsonToViewText","sideMenuButtonSymbolText","sideMenuButtonText","closeButtonSymbolText","closeButtonText","showDataTypesText","selectNoneText","importButtonSymbolText","importButtonText","fullScreenOnButtonSymbolText","fullScreenOffButtonSymbolText","fullScreenButtonText","copyButtonText","dragAndDropSymbolText","dragAndDropTitleText","dragAndDropDescriptionText","exportButtonSymbolText","exportButtonText","propertyColonCharacter","noPropertiesText","openText","openSymbolText","waitingText","pageOfText","sizeText","copiedText","exportedText","importedText","ignoreDataTypesUpdated","lengthText","valueUpdatedText","jsonUpdatedText","nameUpdatedText","indexUpdatedText","itemDeletedText","arrayJsonItemDeleted","dataTypeText","editSymbolButtonText","editButtonText","moveRightSymbolButtonText","moveRightButtonText","moveLeftSymbolButtonText","moveLeftButtonText","removeSymbolButtonText","removeButtonText","switchToPagesSymbolText","switchToPagesText","clearJsonSymbolText","clearJsonText","maximumInspectionLevelsReached","Trigger","Trigger2","customEvent","triggerFunction","args","apply","ToolTip","ToolTip2","renderControl","body","assignToEvents","add2","addEventListener_Window","addEventListener","removeEventListener","addEventListener_Document","hide","add","tooltipClass","show","tooltipTimerId","setTimeout","clearTimeout","remove","parentNode","Arr","Arr2","getIndex","index","getIndexName","largestValue","paddingLength","getIndexFromBrackets","propertyName","moveIndex","arrayData","oldIndex","newIndex","splice","removeNullOrUndefinedEntries","dataLength","dataIndex","Size","Size2","of","bytes","getSize","Math","floor","log","pow","itemKey","Obj","Obj2","getPropertyNames","collator","Intl","Collator","numeric","sensitivity","sort","compare","reverse","createFromValue","crypto","randomUUID","ContextMenu","ContextMenu2","addMenuItem","symbolText","menuItem","_configuration","_elements_Data","_elements_Data_Count","_key_Control_Pressed","render","hasAttribute","bindingOptionsData","getAttribute","classList","removeAttribute","classes","classesLength","classIndex","renderControlContainer","buildDocumentEvents","isForPageSwitch","ajaxData","renderControlContainerForData","scrollTopsForColumns","getContentColumnScrollTops","renderControlTitleBar","contents","updatedData","pageIndex","actualDataIndex","actualData","renderControlContentsPanel","renderControlDisabledBackground","renderControlSideMenu","renderControlFooterBar","renderControlDragAndDrop","totalColumns","enableColumnOrder","contentsColumn","noJson","importText","onclick","onSideMenuImportClick","onscroll","onContentsColumnScroll","setAttribute","ondragstart","onContentsColumnDragStart","ondragend","onContentsColumnDragEnd","ondragover","ondrop","onContentsColumnDrop","renderValuesContainer","lines","columnLayout","column","controlButtons","renderRootArray","renderRootObject","renderControlColumnLineNumbers","renderControlContentsControlButtons","ondblclick","enableContentsColumnEditMode","statusBarMessage","focus","onblur","setFooterStatusText","onkeydown","ev2","code","isCommandKey","newData","execCommand","contentColumnsLength","contentColumnIndex","columnsLength","right","columnIndex","moveDataArrayIndex","dataArray1","dataArray2","dataPanelsOpen1","dataPanelsOpen2","columnLayoutIndex","lineNumberCount","firstLineTop","largestLineNumberWidth","valueElements","querySelectorAll","valueElementsLength","valueElementIndex","valueElement","elementTop","lineNumber","lineNumberDot","newTop","max","height","width","isPagingEnabled","editButton","moveRightButton","disabled","moveLeftButton","copyButton","openAllButton","onOpenAllForPage","closeAllButton","onCloseAllForPage","exportButton","importButton","removeButton","onRemoveArrayJson","switchToPagesButton","onSwitchToPages","paddingLeft","minHeight","paddingRight","panels","panelId","copyDataJson","navigator","clipboard","writeText","titleBar","onTitleBarDblClick","sideMenuButton","onSideMenuOpen","onTitleBarCopyAllClick","onBackPage","onNextPage","buttonText","contains","updateFooterDisplay","onSideMenuClose","titleBarText","titleBarControls","clearJsonButton","onSideMenuClearJson","closeButton","addSideMenuIgnoreTypes","insertDataIndex","accept","multiple","onchange","importFromFiles","files","click","closed","checkboxes","ignoreTypes","selectAll","selectNone","changeSidePanelCheckboxSelection","ignoreTypesContent","dataTypes","keys","dataType","indexOf","forEach","_","createSideMenuIgnoreTypeCheckBox","flag","checkboxesLength","checkboxIndex","dataTypeDisplayCount","checkBoxName","checkBoxAdditionalText","getFooterPageText","currentPage","ceil","totalPages","currentReplacement","toFixed","outerHTML","totalReplacement","addFooterDataTypeStatus","replacement","addFooterLengthStatus","addFooterSizeStatus","size","statusText","propertyCount","mainTitle","objectTypeTitle","objectTypeContents","expandIcon","rootNameTitle","openingBrace","closedBraces","addObjectContentsBorder","dataArrayIndex","renderObjectValues","addValueClickEvent","renderValueContextMenuItems","openingBracket","closedBrackets","renderArrayValues","coma","addNoExpandIconToClosingSymbol","isLastItem","jsonPath","parentType","preventEditing","indentationLevel","propertiesAdded","propertiesLength","propertiesLengthForAutoClose","renderValue","propertyIndex","newJsonPath","createClosingSymbol","addExpandIconEvent","dataLengthForAutoClose","dataIndex1","actualIndex","dataIndex2","isArrayItem","objectTypeValue","objectTypeValueTitle","valueClass","ignored","ignoredDataType","nameElement","typeElement","isForEmptyProperties","assignClickEvent","openButton","nameValue","makePropertyNameEditable","selectItemAndCompareProperties","renderCustomDataType","ignoreValues","dataTypeKeyName","makePropertyValueEditable","createComma","functionName","newNumberValue","newBigIntValue","color","newUrlValue","newEmailValue","newStringValue","image","htmlObject","objectTitle","arrayTypeContents","valueObject","updateDataTypeCount","addValueElementToolTip","objectContents","jsonPathParts","jsonPathPartsLength","jsonPathPartIndex","originalPropertyName","originalArrayIndex","newPropertyName","newArrayIndex","originalValue","originalPropertyValue","propertyValue","enableValueEditingMode","newPropertyValue","newDataPropertyValue","clickValue","openingSymbol","closedSymbols","columnLayoutProcessingIndex","hideFunc","updateLineNumbers","showFunc","removeSelectedItemsAndComparedProperties","conditionFunc","condition","isClosed","addNoExpandIcon","symbolContainer","currentColumnIndex","itemIsSelected","columns","elementsHighlighted","isCompareColumnValuesEnabled","valueJsonPath","classesRemoved","oncontextmenu","editMenuItem","onContextMenuItemEdit","copyMenuItem","onContextMenuItemCopy","removeMenuItem","onContextMenuItemRemove","copyValue","dragAndDropText","onDragStart","ondragenter","ondragleave","onDropFiles","FileReader","dataTransfer","filesLength","filesRead","filesData","onFileLoad","importLoadedFiles","fileIndex","file","fileExtension","pop","importFromJson","reader","renderData","onloadend","onload","json","target","readAsText","keyIndex","onSetJson","tempLink","encodeURIComponent","getExportFilename","addEvents","documentFunc","windowFunc","onDocumentKeyDown","onDocumentKeyUp","onWindowContextMenuOrClick","ctrlKey","metaKey","destroyElement","_public","refresh","elementId","refreshAll","renderAll","openAll","closeAll","backPage","nextPage","getPageNumber","setJson","jsonObject","jsonResult","getJson","getSelectedJsonValues","updateBindingOptions","currentView","getBindingOptions","destroy","destroyAll","setConfiguration","configurationHasChanged","newInternalConfiguration","getIds","getVersion","$jsontree"],"mappings":"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","sourcesContent":[null]} \ No newline at end of file +{"version":3,"sources":["/Users/williamtroup/Documents/GitHub%20Repos/JsonTree.js/dist/jsontree.js"],"names":["ImportedFilename","constructor","this","filename","object","DataType","DataType2","Is","Is2","String","String2","hexColor","value","valid","length","isNaN","substring","rgbColor","startsWith","endsWith","boolean","toString","toLowerCase","trim","date","dateTimeString","regExp","match","guid","regex","test","bigInt","result2","symbol","defined","definedObject","definedBoolean","definedString","definedStringAny","definedFunction","definedNumber","definedBigInt","definedArray","Array","definedDate","Date","definedFloat","definedSymbol","definedRegExp","RegExp","definedMap","Map","WeakMap","definedSet","Set","WeakSet","definedImage","Image","definedHtml","HTMLElement","definedUrl","data","url","URL","protocol","definedEmail","invalidOptionArray","array","minimumLength","definedImportedFilename","Convert2","Convert","toJsonStringifyClone","configuration2","bindingOptions","includeTimeZoneInDates","JSON","stringify","replace","symbolToString","Default","getFunctionName","name","source","src","htmlToObject","showCssStylesForHtmlObjects","arrayLength","arrayIndex","push","setToArray","obj","mapToObject","key","hasOwnProperty","stringToDataTypeValue","oldValue","newValue","parseFloat","parseInt","BigInt","Symbol","exception","addCssStyles","attributesLength","attributes","childrenLength","children","childrenKeyName","textKeyName","valueCloned","cloneNode","valueClonedChildrenLength","nodeType","Node","TEXT_NODE","removeChild","innerText","attributeIndex","attribute","nodeName","nodeValue","childIndex","computedStyles","getComputedStyle","computedStylesLength","cssComputedStyleIndex","cssComputedStyleName","cssComputedStyleNameStorage","cssComputedValue","getPropertyValue","map","Object","fromEntries","entries","set","from","values","jsonStringToObject","objectString","configuration","result","parsed","parse","exception1","eval","exception2","safeMode","console","error","text","objectErrorText","message","numberToFloatWithDecimalPlaces","decimalPlaces","stringToBigInt","stringToBoolean","stringToParsedValue","parsedValue","floatValue","stringsToBooleans","stringsToBigInts","stringsToNumbers","stringsToFloats","stringsToDates","stringsToSymbols","symbolToSpacedOutString","indexOf","Str","Str2","padNumber","number","paddingCharacter","numberString","numberResult","join","capitalizeFirstLetter","string","charAt","toUpperCase","slice","getMaximumLengthDisplay","maximumLength","ellipsisText","Default2","getAnyString","defaultValue","getString","getBoolean","getNumber","getFunction","getArray","getObject","getNumberMinimum","minimum","getNumberMaximum","maximum","getStringOrArray","split","functionName","functionNameWithParameters","isLambda","functionText","functionLength","lambdaLength","getObjectFromUrl","callback","request","XMLHttpRequest","open","send","onreadystatechange","readyState","status","responseText","dataJson","DomElement","DomElement2","find","tagTypes","func","tagTypesLength","tagTypeIndex","domElements","document","getElementsByTagName","elements","call","elementsLength","elementIndex","create","container","type","className","beforeNode","isText","createTextNode","createElement","insertBefore","appendChild","createWithHTML","html","element","innerHTML","createWithNoContainer","cancelBubble","ev","preventDefault","stopPropagation","getScrollPosition","documentElement","left","scrollLeft","clientLeft","top","scrollTop","clientTop","showElementAtMousePosition","offset","pageX","pageY","scrollPosition","style","display","offsetWidth","window","innerWidth","offsetHeight","innerHeight","selectAllText","range","createRange","selectNodeContents","selection","getSelection","removeAllRanges","addRange","createCheckBox","labelText","checked","spanClass","additionalText","lineContainer","label","input","autocomplete","getOffset","position","offsetLeft","offsetTop","offsetParent","getStyleValueByName","stylePropertyName","toNumber","styles","DateTime","DateTime2","getWeekdayNumber","getDay","getDayOrdinal","thText","stText","ndText","rdText","getCustomFormattedDateText","dateFormat","actualDate","weekDayNumber","getHours","getMinutes","getSeconds","getMilliseconds","dayNames","dayNamesAbbreviated","getDate","monthNames","getMonth","monthNamesAbbreviated","getFullYear","Number","Constants","Constants2","JSONTREE_JS_ATTRIBUTE_NAME","JSONTREE_JS_ATTRIBUTE_ARRAY_INDEX_NAME","JSONTREE_JS_ATTRIBUTE_PATH_NAME","Binding","Binding2","Options","Options2","getForNewInstance","get","allowEditing","_currentView","currentDataArrayPageIndex","paging","startPage","columnsPerPage","titleBarButtons","valueClickTimerId","editMode","idSet","contentPanelsOpen","contentPanelsIndex","contentPanelsDataIndex","backPageButton","nextPageButton","disabledBackground","sideMenu","sideMenuChanged","toggleFullScreenButton","fullScreenOn","dragAndDropBackground","initialized","currentContentColumns","footer","footerStatusText","footerDataTypeText","footerLengthText","footerSizeText","footerPageText","footerStatusTextTimerId","columnDragging","columnDraggingDataIndex","dataTypeCounts","contextMenu","currentColumnBuildingIndex","selectedValues","enabled","bulk","newOptions","options","id","class","showObjectSizes","useZeroIndexingForArrays","dateTimeFormat","showExpandIcons","showStringQuotes","showAllAsClosed","sortPropertyNames","sortPropertyNamesInAlphabeticalOrder","showCommas","reverseArrayValues","addArrayIndexPadding","showValueColors","fileDroppingEnabled","jsonIndentSpaces","showArrayIndexBrackets","showOpeningClosingCurlyBraces","showOpeningClosingSquaredBrackets","shortcutKeysEnabled","openInFullScreenMode","valueToolTips","editingValueClickDelay","showDataTypes","logJsonValueToolTipPaths","exportFilenameFormat","showPropertyNameQuotes","showOpenedObjectArrayBorders","showPropertyNameAndIndexColors","showUrlOpenButtons","showEmailOpenButtons","minimumArrayIndexPadding","arrayIndexPaddingCharacter","jsonPathAny","jsonPathSeparator","showChildIndexes","showClosedArraySquaredBrackets","showClosedObjectCurlyBraces","convertClickedValuesToString","rootName","emptyStringValue","expandIconType","openUrlsInSameWindow","getMaximum","getPaging","title","getTitle","getFooter","controlPanel","getControlPanel","lineNumbers","getLineNumbers","ignore","getIgnore","tooltip","getToolTip","getParse","getAllowEditing","getSideMenu","autoClose","getAutoClose","events","getCustomTriggers","stringLength","urlLength","emailLength","numberLength","bigIntLength","inspectionLevels","propertyNameLength","synchronizeScrolling","allowColumnReordering","allowComparisons","showCloseOpenAllButtons","showCopyButton","enableFullScreenToggling","showFullScreenButton","showLengths","showSizes","showPageOf","statusResetDelay","showMovingButtons","showRemoveButton","showEditButton","showSwitchToPagesButton","showImportButton","showExportButton","padNumbers","addDots","nullValues","functionValues","unknownValues","booleanValues","floatValues","numberValues","stringValues","dateValues","objectValues","arrayValues","bigintValues","symbolValues","emptyObjects","undefinedValues","guidValues","colorValues","regexpValues","mapValues","setValues","urlValues","imageValues","emailValues","htmlValues","lambdaValues","delay","defaultFlag","bigIntValues","regExpValues","propertyNames","properties","property","titleText","showAvailableDataTypeCounts","showOnlyDataTypesAvailable","showClearJsonButton","updateDisplayDelay","objectSize","arraySize","mapSize","setSize","htmlSize","onBeforeRender","onRenderComplete","onValueClick","onRefresh","onCopyAll","onOpenAll","onCloseAll","onDestroy","onBooleanRender","onFloatRender","onNumberRender","onBigIntRender","onStringRender","onDateRender","onFunctionRender","onNullRender","onUnknownRender","onSymbolRender","onCopyJsonReplacer","onUndefinedRender","onGuidRender","onColorRender","onJsonEdit","onRegExpRender","onExport","onUrlRender","onImageRender","onEmailRender","onLambdaRender","onCopy","onFullScreenChange","onSelectionChange","onCustomDataTypeRender","Config","Config2","newConfiguration","domElementTypes","getText","objectText","arrayText","mapText","setText","htmlText","closeAllButtonText","openAllButtonText","copyAllButtonText","attributeNotValidErrorText","attributeNotSetErrorText","closeAllButtonSymbolText","openAllButtonSymbolText","copyButtonSymbolText","backButtonText","nextButtonText","backButtonSymbolText","nextButtonSymbolText","noJsonToViewText","sideMenuButtonSymbolText","sideMenuButtonText","closeButtonSymbolText","closeButtonText","showDataTypesText","selectNoneText","importButtonSymbolText","importButtonText","fullScreenOnButtonSymbolText","fullScreenOffButtonSymbolText","fullScreenButtonText","copyButtonText","dragAndDropSymbolText","dragAndDropTitleText","dragAndDropDescriptionText","exportButtonSymbolText","exportButtonText","propertyColonCharacter","noPropertiesText","openText","openSymbolText","waitingText","pageOfText","sizeText","copiedText","exportedText","importedText","ignoreDataTypesUpdated","lengthText","valueUpdatedText","jsonUpdatedText","nameUpdatedText","indexUpdatedText","itemDeletedText","arrayJsonItemDeleted","dataTypeText","editSymbolButtonText","editButtonText","moveRightSymbolButtonText","moveRightButtonText","moveLeftSymbolButtonText","moveLeftButtonText","removeSymbolButtonText","removeButtonText","switchToPagesSymbolText","switchToPagesText","clearJsonSymbolText","clearJsonText","maximumInspectionLevelsReached","Trigger","Trigger2","customEvent","triggerFunction","args","apply","ToolTip","ToolTip2","renderControl","body","assignToEvents","add2","addEventListener_Window","addEventListener","removeEventListener","addEventListener_Document","hide","add","tooltipClass","show","tooltipTimerId","setTimeout","clearTimeout","remove","parentNode","Arr","Arr2","getIndex","index","getIndexName","largestValue","paddingLength","getIndexFromBrackets","propertyName","moveIndex","arrayData","oldIndex","newIndex","splice","removeNullOrUndefinedEntries","dataLength","dataIndex","Size","Size2","of","bytes","getSize","Math","floor","log","pow","itemKey","Obj","Obj2","getPropertyNames","collator","Intl","Collator","numeric","sensitivity","sort","compare","reverse","createFromValue","crypto","randomUUID","ContextMenu","ContextMenu2","addMenuItem","symbolText","menuItem","_configuration","_elements_Data","_elements_Data_Count","_key_Control_Pressed","render","hasAttribute","bindingOptionsData","getAttribute","classList","removeAttribute","classes","classesLength","classIndex","renderControlContainer","buildDocumentEvents","isForPageSwitch","ajaxData","renderControlContainerForData","scrollTopsForColumns","getContentColumnScrollTops","renderControlTitleBar","contents","updatedData","pageIndex","actualDataIndex","actualData","renderControlContentsPanel","renderControlDisabledBackground","renderControlSideMenu","renderControlFooterBar","renderControlDragAndDrop","totalColumns","enableColumnOrder","contentsColumn","contentsColumnIndex","noJson","importText","onclick","onSideMenuImportClick","onscroll","onContentsColumnScroll","setAttribute","ondragstart","onContentsColumnDragStart","ondragend","onContentsColumnDragEnd","ondragover","ondrop","onContentsColumnDrop","renderValuesContainer","lines","columnLayout","column","controlButtons","renderRootArray","renderRootObject","renderControlColumnLineNumbers","renderControlContentsControlButtons","ondblclick","enableContentsColumnEditMode","statusBarMessage","focus","onblur","setFooterStatusText","onkeydown","ev2","code","isCommandKey","newData","execCommand","contentColumnsLength","contentColumnIndex","columnsLength","right","columnIndex","moveDataArrayIndex","dataArray1","dataArray2","dataPanelsOpen1","dataPanelsOpen2","columnLayoutIndex","lineNumberCount","firstLineTop","largestLineNumberWidth","valueElements","querySelectorAll","valueElementsLength","valueElementIndex","valueElement","elementTop","lineNumber","lineNumberDot","newTop","max","height","width","isPagingEnabled","editButton","moveRightButton","disabled","moveLeftButton","copyButton","openAllButton","onOpenAllForPage","closeAllButton","onCloseAllForPage","exportButton","importButton","removeButton","onRemoveArrayJson","switchToPagesButton","onSwitchToPages","paddingLeft","minHeight","paddingRight","panels","panelId","copyDataJson","navigator","clipboard","writeText","titleBar","onTitleBarDblClick","sideMenuButton","onSideMenuOpen","onTitleBarCopyAllClick","onBackPage","onNextPage","buttonText","contains","updateFooterDisplay","onSideMenuClose","titleBarText","titleBarControls","clearJsonButton","onSideMenuClearJson","closeButton","addSideMenuIgnoreTypes","insertDataIndex","accept","multiple","onchange","importFromFiles","files","click","closed","checkboxes","ignoreTypes","selectAll","selectNone","changeSidePanelCheckboxSelection","ignoreTypesContent","dataTypes","keys","dataType","forEach","_","createSideMenuIgnoreTypeCheckBox","flag","checkboxesLength","checkboxIndex","dataTypeDisplayCount","checkBoxName","checkBoxAdditionalText","getFooterPageText","currentPage","ceil","totalPages","currentReplacement","toFixed","outerHTML","totalReplacement","addFooterDataTypeStatus","replacement","addFooterLengthStatus","addFooterSizeStatus","size","statusText","propertyCount","mainTitle","objectTypeTitle","objectTypeContents","expandIcon","rootNameTitle","openingBrace","closedBraces","addObjectContentsBorder","dataArrayIndex","renderObjectValues","addValueClickEvent","renderValueContextMenuItems","openingBracket","closedBrackets","renderArrayValues","coma","addNoExpandIconToClosingSymbol","isLastItem","jsonPath","parentType","preventEditing","indentationLevel","propertiesAdded","propertiesLength","propertiesLengthForAutoClose","renderValue","propertyIndex","newJsonPath","createClosingSymbol","addExpandIconEvent","dataLengthForAutoClose","dataIndex1","actualIndex","dataIndex2","isArrayItem","objectTypeValue","objectTypeValueTitle","valueClass","ignored","ignoredDataType","nameElement","typeElement","isForEmptyProperties","assignClickEvent","openButton","nameValue","makePropertyNameEditable","selectItemAndCompareProperties","renderCustomDataType","ignoreValues","dataTypeKeyName","makePropertyValueEditable","createComma","newNumberValue","newBigIntValue","color","newUrlValue","location","newEmailValue","newStringValue","image","htmlObject","objectTitle","arrayTypeContents","valueObject","updateDataTypeCount","addValueElementToolTip","objectContents","jsonPathParts","jsonPathPartsLength","jsonPathPartIndex","originalPropertyName","originalArrayIndex","newPropertyName","newArrayIndex","originalValue","originalPropertyValue","propertyValue","enableValueEditingMode","newPropertyValue","newDataPropertyValue","clickValue","openingSymbol","closedSymbols","columnLayoutProcessingIndex","hideFunc","updateLineNumbers","showFunc","removeSelectedItemsAndComparedProperties","conditionFunc","condition","isClosed","addNoExpandIcon","symbolContainer","currentColumnIndex","itemIsSelected","columns","elementsHighlighted","isCompareColumnValuesEnabled","valueJsonPath","classesRemoved","oncontextmenu","editMenuItem","onContextMenuItemEdit","copyMenuItem","onContextMenuItemCopy","removeMenuItem","onContextMenuItemRemove","copyValue","dragAndDropText","onDragStart","ondragenter","ondragleave","onDropFiles","FileReader","dataTransfer","filesLength","filesRead","filesData","onFileLoad","importLoadedFiles","fileIndex","file","fileExtension","pop","importFromJson","reader","renderData","onloadend","onload","json","target","readAsText","keyIndex","onSetJson","tempLink","encodeURIComponent","getExportFilename","addEvents","documentFunc","windowFunc","onDocumentKeyDown","onDocumentKeyUp","onWindowContextMenuOrClick","ctrlKey","metaKey","destroyElement","_public","refresh","elementId","refreshAll","renderAll","openAll","closeAll","backPage","nextPage","getPageNumber","setJson","jsonObject","jsonResult","getJson","getSelectedJsonValues","updateBindingOptions","currentView","getBindingOptions","destroy","destroyAll","setConfiguration","configurationHasChanged","newInternalConfiguration","getIds","getVersion","$jsontree"],"mappings":"AAAA;;AAGA,IAAIA,mBAAmB;IACrB,WAAAC;QACEC,KAAKC,WAAW;QAChBD,KAAKE,SAAS;AAChB;;;AAIF,IAAIC,WAA2B,CAAEC;IAC/BA,EAAU,UAAU;IACpBA,EAAU,cAAc;IACxBA,EAAU,aAAa;IACvBA,EAAU,WAAW;IACrBA,EAAU,YAAY;IACtBA,EAAU,YAAY;IACtBA,EAAU,YAAY;IACtBA,EAAU,UAAU;IACpBA,EAAU,YAAY;IACtBA,EAAU,YAAY;IACtBA,EAAU,WAAW;IACrBA,EAAU,aAAa;IACvBA,EAAU,eAAe;IACzBA,EAAU,WAAW;IACrBA,EAAU,UAAU;IACpBA,EAAU,YAAY;IACtBA,EAAU,SAAS;IACnBA,EAAU,SAAS;IACnBA,EAAU,SAAS;IACnBA,EAAU,WAAW;IACrBA,EAAU,WAAW;IACrBA,EAAU,UAAU;IACpBA,EAAU,YAAY;IACtB,OAAOA;AACR,EAzB8B,CAyB5BD,YAAY,CAAC;;AAGhB,IAAIE;;AACJ,CAAEC;IACA,IAAIC;IACJ,CAAEC;QACA,SAASC,EAASC;YAChB,IAAIC,IAAQD,EAAME,UAAU,KAAKF,EAAME,UAAU;YACjD,IAAID,KAASD,EAAM,OAAO,KAAgB;gBACxCC,IAAQE,OAAOH,EAAMI,UAAU,GAAGJ,EAAME,SAAS;AACnD,mBAAO;gBACLD,IAAQ;AACV;YACA,OAAOA;AACT;QACAH,EAAQC,WAAWA;QACnB,SAASM,EAASL;YAChB,QAAQA,EAAMM,WAAW,WAAWN,EAAMM,WAAW,aAAaN,EAAMO,SAAS;AACnF;QACAT,EAAQO,WAAWA;QACnB,SAASG,EAAQhB;YACf,OAAOA,EAAOiB,WAAWC,cAAcC,WAAW,UAAUnB,EAAOiB,WAAWC,cAAcC,WAAW;AACzG;QACAb,EAAQU,UAAUA;QAClB,SAASI,EAAKC;YACZ,MAAMC,IAAS;YACf,OAAOD,EAAeE,MAAMD;AAC9B;QACAhB,EAAQc,OAAOA;QACf,SAASI,EAAKhB;YACZ,MAAMiB,IAAQ;YACd,OAAOA,EAAMC,KAAKlB;AACpB;QACAF,EAAQkB,OAAOA;QACf,SAASG,EAAOnB;YACd,IAAIoB,IAAUpB,EAAMO,SAAS;YAC7B,IAAIa,GAAS;gBACXA,KAAWjB,OAAOH,EAAMI,UAAU,GAAGJ,EAAME,SAAS;AACtD;YACA,OAAOkB;AACT;QACAtB,EAAQqB,SAASA;QACjB,SAASE,EAAOrB;YACd,OAAOA,EAAMM,WAAW,cAAcN,EAAMO,SAAS;AACvD;QACAT,EAAQuB,SAASA;AAClB,MAzCD,CAyCGxB,IAASD,EAAIC,WAAWD,EAAIC,SAAS,CAAC;IACzC,SAASyB,EAAQ9B;QACf,OAAOA,MAAW,QAAQA,WAAgB,KAAKA,EAAOiB,eAAe;AACvE;IACAb,EAAI0B,UAAUA;IACd,SAASC,EAAc/B;QACrB,OAAO8B,EAAQ9B,aAAkBA,MAAW;AAC9C;IACAI,EAAI2B,gBAAgBA;IACpB,SAASC,EAAehC;QACtB,OAAO8B,EAAQ9B,aAAkBA,MAAW;AAC9C;IACAI,EAAI4B,iBAAiBA;IACrB,SAASC,EAAcjC;QACrB,OAAO8B,EAAQ9B,aAAkBA,MAAW;AAC9C;IACAI,EAAI6B,gBAAgBA;IACpB,SAASC,EAAiBlC;QACxB,OAAOA,MAAW,QAAQA,WAAgB,YAAYA,MAAW;AACnE;IACAI,EAAI8B,mBAAmBA;IACvB,SAASC,EAAgBnC;QACvB,OAAO8B,EAAQ9B,aAAkBA,MAAW;AAC9C;IACAI,EAAI+B,kBAAkBA;IACtB,SAASC,EAAcpC;QACrB,OAAO8B,EAAQ9B,aAAkBA,MAAW;AAC9C;IACAI,EAAIgC,gBAAgBA;IACpB,SAASC,EAAcrC;QACrB,OAAO8B,EAAQ9B,aAAkBA,MAAW;AAC9C;IACAI,EAAIiC,gBAAgBA;IACpB,SAASC,EAAatC;QACpB,OAAOA,MAAW,QAAQA,WAAgB,KAAKA,aAAkBuC;AACnE;IACAnC,EAAIkC,eAAeA;IACnB,SAASE,EAAYxC;QACnB,OAAO+B,EAAc/B,MAAWA,aAAkByC;AACpD;IACArC,EAAIoC,cAAcA;IAClB,SAASE,EAAa1C;QACpB,OAAO8B,EAAQ9B,aAAkBA,MAAW,YAAYA,IAAS,MAAM;AACzE;IACAI,EAAIsC,eAAeA;IACnB,SAASC,EAAc3C;QACrB,OAAO8B,EAAQ9B,aAAkBA,MAAW;AAC9C;IACAI,EAAIuC,gBAAgBA;IACpB,SAASC,EAAc5C;QACrB,OAAO8B,EAAQ9B,MAAWA,aAAkB6C;AAC9C;IACAzC,EAAIwC,gBAAgBA;IACpB,SAASE,EAAW9C;QAClB,OAAO8B,EAAQ9B,OAAYA,aAAkB+C,OAAO/C,aAAkBgD;AACxE;IACA5C,EAAI0C,aAAaA;IACjB,SAASG,EAAWjD;QAClB,OAAO8B,EAAQ9B,OAAYA,aAAkBkD,OAAOlD,aAAkBmD;AACxE;IACA/C,EAAI6C,aAAaA;IACjB,SAASG,EAAapD;QACpB,OAAO8B,EAAQ9B,MAAWA,aAAkBqD;AAC9C;IACAjD,EAAIgD,eAAeA;IACnB,SAASE,EAAYtD;QACnB,OAAO8B,EAAQ9B,MAAWA,aAAkBuD;AAC9C;IACAnD,EAAIkD,cAAcA;IAClB,SAASE,EAAWC;QAClB,IAAIC;QACJ;YACEA,IAAM,IAAIC,IAAIF;AAChB,UAAE;YACAC,IAAM;AACR;QACA,OAAOA,MAAQ,SAASA,EAAIE,aAAa,WAAWF,EAAIE,aAAa;AACvE;IACAxD,EAAIoD,aAAaA;IACjB,SAASK,EAAaJ;QACpB,MAAMhC,IAAQ;QACd,OAAOA,EAAMC,KAAK+B;AACpB;IACArD,EAAIyD,eAAeA;IACnB,SAASC,EAAmBC,GAAOC,IAAgB;QACjD,QAAQ1B,EAAayB,MAAUA,EAAMrD,SAASsD;AAChD;IACA5D,EAAI0D,qBAAqBA;IACzB,SAASG,EAAwBjE;QAC/B,OAAO8B,EAAQ9B,MAAWA,aAAkBJ;AAC9C;IACAQ,EAAI6D,0BAA0BA;AAC/B,EAvID,CAuIG9D,OAAOA,KAAK,CAAC;;AAGhB,IAAI+D;;AACJ,CAAEC;IACA,SAASC,qBAAqBpE,GAAQqE,GAAgBC;QACpD,IAAI1C,IAAU;QACd,KAAKzB,GAAG2B,QAAQ9B,IAAS;YACvB4B,IAAU;AACZ,eAAO,IAAIzB,GAAG8D,wBAAwBjE,IAAS;YAC7C4B,IAAU5B,EAAOA;AACnB,eAAO,IAAIG,GAAGqC,YAAYxC,IAAS;YACjC,KAAKsE,EAAeC,wBAAwB;gBAC1C3C,IAAU4C,KAAKC,UAAUzE,GAAQ0E,QAAQ,UAAU;AACrD,mBAAO;gBACL9C,IAAU5B,EAAOiB;AACnB;AACF,eAAO,IAAId,GAAGwC,cAAc3C,IAAS;YACnC4B,IAAU+C,eAAe3E;AAC3B,eAAO,IAAIG,GAAGkC,cAAcrC,IAAS;YACnC4B,IAAU5B,EAAOiB;AACnB,eAAO,IAAId,GAAGgC,gBAAgBnC,IAAS;YACrC4B,IAAUgD,QAAQC,gBAAgB7E,GAAQqE,GAAgBS;AAC5D,eAAO,IAAI3E,GAAGyC,cAAc5C,IAAS;YACnC4B,IAAU5B,EAAO+E;AACnB,eAAO,IAAI5E,GAAGiD,aAAapD,IAAS;YAClC4B,IAAU5B,EAAOgF;AACnB,eAAO,IAAI7E,GAAGmD,YAAYtD,IAAS;YACjC4B,IAAUqD,aAAajF,GAAQsE,EAAeY;AAChD,eAAO,IAAI/E,GAAGmC,aAAatC,IAAS;YAClC4B,IAAU;YACV,MAAMuD,IAAcnF,EAAOU;YAC3B,KAAK,IAAI0E,IAAa,GAAGA,IAAaD,GAAaC,KAAc;gBAC/DxD,EAAQyD,KAAKjB,qBAAqBpE,EAAOoF,IAAaf,GAAgBC;AACxE;AACF,eAAO,IAAInE,GAAG8C,WAAWjD,IAAS;YAChC4B,IAAU;YACV,MAAMmC,IAAQuB,WAAWtF;YACzB,MAAMmF,IAAcpB,EAAMrD;YAC1B,KAAK,IAAI0E,IAAa,GAAGA,IAAaD,GAAaC,KAAc;gBAC/DxD,EAAQyD,KAAKjB,qBAAqBL,EAAMqB,IAAaf,GAAgBC;AACvE;AACF,eAAO,IAAInE,GAAG2C,WAAW9C,IAAS;YAChC4B,IAAU,CAAC;YACX,MAAM2D,IAAMC,YAAYxF;YACxB,KAAK,MAAMyF,KAAOF,GAAK;gBACrB,IAAIA,EAAIG,eAAeD,IAAM;oBAC3B7D,EAAQ6D,KAAOrB,qBAAqBmB,EAAIE,IAAMpB,GAAgBC;AAChE;AACF;AACF,eAAO,IAAInE,GAAG4B,cAAc/B,IAAS;YACnC4B,IAAU,CAAC;YACX,KAAK,MAAM6D,KAAOzF,GAAQ;gBACxB,IAAIA,EAAO0F,eAAeD,IAAM;oBAC9B7D,EAAQ6D,KAAOrB,qBAAqBpE,EAAOyF,IAAMpB,GAAgBC;AACnE;AACF;AACF,eAAO;YACL1C,IAAU5B;AACZ;QACA,OAAO4B;AACT;IACAuC,QAAQC,uBAAuBA;IAC/B,SAASuB,sBAAsBC,GAAUC;QACvC,IAAIjE,IAAU;QACd;YACE,IAAIzB,GAAG6B,eAAe4D,IAAW;gBAC/B,IAAIC,EAAS3E,cAAcC,WAAW,QAAQ;oBAC5CS,IAAU;AACZ,uBAAO,IAAIiE,EAAS3E,cAAcC,WAAW,SAAS;oBACpDS,IAAU;AACZ;AACF,mBAAO,IAAIzB,GAAGuC,aAAakD,OAAcjF,OAAOkF,IAAW;gBACzDjE,IAAUkE,WAAWD;AACvB,mBAAO,IAAI1F,GAAGiC,cAAcwD,OAAcjF,OAAOkF,IAAW;gBAC1DjE,IAAUmE,SAASF;AACrB,mBAAO,IAAI1F,GAAG+B,iBAAiB0D,IAAW;gBACxChE,IAAUiE;AACZ,mBAAO,IAAI1F,GAAGqC,YAAYoD,IAAW;gBACnChE,IAAU,IAAIa,KAAKoD;AACrB,mBAAO,IAAI1F,GAAGkC,cAAcuD,IAAW;gBACrChE,IAAUoE,OAAOH;AACnB,mBAAO,IAAI1F,GAAGyC,cAAcgD,IAAW;gBACrChE,IAAU,IAAIiB,OAAOgD;AACvB,mBAAO,IAAI1F,GAAGwC,cAAciD,IAAW;gBACrChE,IAAUqE,OAAOJ;AACnB,mBAAO,IAAI1F,GAAGiD,aAAawC,IAAW;gBACpChE,IAAU,IAAIyB;gBACdzB,EAAQoD,MAAMa;AAChB;AACF,UAAE,OAAOK;YACPtE,IAAU;AACZ;QACA,OAAOA;AACT;IACAuC,QAAQwB,wBAAwBA;IAChC,SAASV,aAAazE,GAAO2F;QAC3B,MAAMvE,IAAU,CAAC;QACjB,MAAMwE,IAAmB5F,EAAM6F,WAAW3F;QAC1C,MAAM4F,IAAiB9F,EAAM+F,SAAS7F;QACtC,MAAM8F,IAAkB;QACxB,MAAMC,IAAc;QACpB,MAAMC,IAAclG,EAAMmG,UAAU;QACpC,IAAIC,IAA4BF,EAAYH,SAAS7F;QACrD,OAAOkG,IAA4B,GAAG;YACpC,IAAIF,EAAYH,SAAS,GAAGM,aAAaC,KAAKC,WAAW;gBACvDL,EAAYM,YAAYN,EAAYH,SAAS;AAC/C;YACAK;AACF;QACAhF,EAAQ4E,KAAmB;QAC3B5E,EAAQ6E,KAAeC,EAAYO;QACnC,KAAK,IAAIC,IAAiB,GAAGA,IAAiBd,GAAkBc,KAAkB;YAChF,MAAMC,IAAY3G,EAAM6F,WAAWa;YACnC,IAAI/G,GAAG8B,cAAckF,EAAUC,WAAW;gBACxCxF,EAAQ,IAAIuF,EAAUC,cAAcD,EAAUE;AAChD;AACF;QACA,KAAK,IAAIC,IAAa,GAAGA,IAAahB,GAAgBgB,KAAc;YAClE1F,EAAQ4E,GAAiBnB,KAAK7E,EAAM+F,SAASe;AAC/C;QACA,IAAInB,GAAc;YAChB,MAAMoB,IAAiBC,iBAAiBhH;YACxC,MAAMiH,IAAuBF,EAAe7G;YAC5C,KAAK,IAAIgH,IAAwB,GAAGA,IAAwBD,GAAsBC,KAAyB;gBACzG,MAAMC,IAAuBJ,EAAeG;gBAC5C,MAAME,IAA8B,IAAID;gBACxC,MAAME,IAAmBN,EAAeO,iBAAiBH;gBACzD/F,EAAQgG,KAA+BC;AACzC;AACF;QACA,IAAIjG,EAAQ4E,GAAiB9F,WAAW,GAAG;mBAClCkB,EAAQ4E;AACjB;QACA,KAAKrG,GAAG8B,cAAcL,EAAQ6E,KAAe;mBACpC7E,EAAQ6E;AACjB;QACA,OAAO7E;AACT;IACAuC,QAAQc,eAAeA;IACvB,SAASO,YAAYuC;QACnB,MAAMnG,IAAUoG,OAAOC,YAAYF,EAAIG;QACvC,OAAOtG;AACT;IACAuC,QAAQqB,cAAcA;IACtB,SAASF,WAAW6C;QAClB,MAAMvG,IAAUW,MAAM6F,KAAKD,EAAIE;QAC/B,OAAOzG;AACT;IACAuC,QAAQmB,aAAaA;IACrB,SAASgD,mBAAmBC,cAAcC;QACxC,MAAMC,SAAS;YACbC,QAAQ;YACR1I,QAAQ;;QAEV;YACE,IAAIG,GAAG8B,cAAcsG,eAAe;gBAClCE,OAAOzI,SAASwE,KAAKmE,MAAMJ;AAC7B;AACF,UAAE,OAAOK;YACP;gBACEH,OAAOzI,SAAS6I,KAAK,IAAIN;gBACzB,IAAIpI,GAAGgC,gBAAgBsG,OAAOzI,SAAS;oBACrCyI,OAAOzI,SAASyI,OAAOzI;AACzB;AACF,cAAE,OAAO8I;gBACP,KAAKN,cAAcO,UAAU;oBAC3BC,QAAQC,MAAMT,cAAcU,KAAKC,gBAAgBzE,QAAQ,eAAekE,WAAWQ,SAAS1E,QAAQ,eAAeoE,EAAWM;oBAC9HX,OAAOC,SAAS;AAClB;gBACAD,OAAOzI,SAAS;AAClB;AACF;QACA,OAAOyI;AACT;IACAtE,QAAQmE,qBAAqBA;IAC7B,SAASe,+BAA+B7I,GAAO8I;QAC7C,MAAMhI,IAAS,IAAIuB,OAAO,oBAAoByG,MAAkB;QAChE,OAAO9I,EAAMS,WAAWM,MAAMD,KAAU,MAAM;AAChD;IACA6C,QAAQkF,iCAAiCA;IACzC,SAASE,eAAe/I;QACtB,OAAOwF,OAAOxF,EAAMI,UAAU,GAAGJ,EAAME,SAAS;AAClD;IACAyD,QAAQoF,iBAAiBA;IACzB,SAAS5E,eAAenE;QACtB,OAAOA,EAAMS,WAAWyD,QAAQ,WAAW,IAAgBA,QAAQ,KAAK;AAC1E;IACAP,QAAQQ,iBAAiBA;IACzB,SAAS6E,gBAAgBhJ;QACvB,OAAOA,EAAMS,WAAWC,cAAcC,WAAW;AACnD;IACAgD,QAAQqF,kBAAkBA;IAC1B,SAASC,oBAAoBjJ,GAAO8D;QAClC,IAAIoF,IAAc;QAClB,IAAIvJ,GAAG8B,cAAczB,MAAUA,EAAMW,WAAW,IAAgB;YAC9D,MAAMwI,IAAa7D,WAAWtF;YAC9B,IAAI8D,EAAeqE,MAAMiB,qBAAqBzJ,GAAGE,OAAOW,QAAQR,IAAQ;gBACtEkJ,IAAcvF,QAAQqF,gBAAgBhJ;AAExC,mBAAO,IAAI8D,EAAeqE,MAAMkB,oBAAoB1J,GAAGE,OAAOsB,OAAOnB,IAAQ;gBAC3EkJ,IAAcvF,QAAQoF,eAAe/I;AACvC,mBAAO,IAAI8D,EAAeqE,MAAMmB,qBAAqBnJ,MAAMH,OAAWL,GAAGuC,aAAaiH,IAAa;gBACjGD,IAAc3D,SAASvF;AACzB,mBAAO,IAAI8D,EAAeqE,MAAMoB,oBAAoBpJ,MAAMH,MAAUL,GAAGuC,aAAaiH,IAAa;gBAC/FD,IAAcC;AAChB,mBAAO,IAAIrF,EAAeqE,MAAMqB,kBAAkB7J,GAAGE,OAAOe,KAAKZ,IAAQ;gBACvEkJ,IAAc,IAAIjH,KAAKjC;AACzB,mBAAO,IAAI8D,EAAeqE,MAAMsB,oBAAoB9J,GAAGE,OAAOwB,OAAOrB,IAAQ;gBAC3EkJ,IAAczD,OAAO9B,QAAQQ,eAAenE;AAC9C;AACF;QACA,OAAOkJ;AACT;IACAvF,QAAQsF,sBAAsBA;IAC9B,SAASS,wBAAwB1J;QAC/B,IAAIoB,IAAUpB,EAAMS;QACpB,IAAIW,EAAQuI,QAAQ,WAAW,GAAkB;YAC/CvI,IAAUA,EAAQ8C,QAAQ,KAAK,IAAI,OAAmBA,QAAQ,KAAK,GAAG;AACxE,eAAO;YACL9C,IAAUA,EAAQ8C,QAAQ,MAAM;AAClC;QACA,OAAO9C;AACT;IACAuC,QAAQ+F,0BAA0BA;AACnC,EA7ND,CA6NGhG,aAAaA,WAAW,CAAC;;AAG5B,IAAIkG;;AACJ,CAAEC;IACA,SAASC,EAAUC,GAAQ7J,IAAS,GAAG8J,IAAmB;QACxD,MAAMC,IAAeF,EAAOtJ;QAC5B,IAAIyJ,IAAeD;QACnB,IAAIA,EAAa/J,SAASA,GAAQ;YAChC,MAAMyE,IAAczE,IAAS+J,EAAa/J,SAAS;YACnDgK,IAAe,GAAGnI,MAAM4C,GAAawF,KAAKH,KAAoBC;AAChE;QACA,OAAOC;AACT;IACAL,EAAKC,YAAYA;IACjB,SAASM,EAAsBC;QAC7B,OAAO,GAAGA,EAAOC,OAAO,GAAGC,gBAAgBF,EAAOG,MAAM;AAC1D;IACAX,EAAKO,wBAAwBA;IAC7B,SAASK,EAAwBzK,GAAO0K,GAAeC;QACrD,IAAItF,IAAWrF;QACf,IAAI0K,IAAgB,KAAKrF,EAASnF,SAASwK,GAAe;YACxDrF,IAAW,GAAGA,EAASjF,UAAU,GAAGsK,KAAiB,MAAkBC,IAAe;AACxF;QACA,OAAOtF;AACT;IACAwE,EAAKY,0BAA0BA;AAChC,EAvBD,CAuBGb,QAAQA,MAAM,CAAC;;AAGlB,IAAIxF;;AACJ,CAAEwG;IACA,SAASC,EAAa7K,GAAO8K;QAC3B,cAAc9K,MAAU,WAAWA,IAAQ8K;AAC7C;IACAF,EAASC,eAAeA;IACxB,SAASE,EAAU/K,GAAO8K;QACxB,OAAOnL,GAAG8B,cAAczB,KAASA,IAAQ8K;AAC3C;IACAF,EAASG,YAAYA;IACrB,SAASC,EAAWhL,GAAO8K;QACzB,OAAOnL,GAAG6B,eAAexB,KAASA,IAAQ8K;AAC5C;IACAF,EAASI,aAAaA;IACtB,SAASC,EAAUjL,GAAO8K;QACxB,OAAOnL,GAAGiC,cAAc5B,KAASA,IAAQ8K;AAC3C;IACAF,EAASK,YAAYA;IACrB,SAASC,EAAYlL,GAAO8K;QAC1B,OAAOnL,GAAGgC,gBAAgB3B,KAASA,IAAQ8K;AAC7C;IACAF,EAASM,cAAcA;IACvB,SAASC,EAASnL,GAAO8K;QACvB,OAAOnL,GAAGmC,aAAa9B,KAASA,IAAQ8K;AAC1C;IACAF,EAASO,WAAWA;IACpB,SAASC,EAAUpL,GAAO8K;QACxB,OAAOnL,GAAG4B,cAAcvB,KAASA,IAAQ8K;AAC3C;IACAF,EAASQ,YAAYA;IACrB,SAASC,EAAiBrL,GAAO8K,GAAcQ;QAC7C,OAAO3L,GAAGiC,cAAc5B,KAASA,KAASsL,IAAUtL,IAAQsL,IAAUR;AACxE;IACAF,EAASS,mBAAmBA;IAC5B,SAASE,EAAiBvL,GAAO8K,GAAcU;QAC7C,OAAO7L,GAAGiC,cAAc5B,KAASA,IAAQwL,IAAUA,IAAUxL,IAAQ8K;AACvE;IACAF,EAASW,mBAAmBA;IAC5B,SAASE,EAAiBzL,GAAO8K;QAC/B,IAAI1J,IAAU0J;QACd,IAAInL,GAAG8B,cAAczB,IAAQ;YAC3B,MAAM6H,IAAS7H,EAAMS,WAAWiL,MAAM;YACtC,IAAI7D,EAAO3H,WAAW,GAAG;gBACvBF,IAAQ8K;AACV,mBAAO;gBACL1J,IAAUyG;AACZ;AACF,eAAO;YACLzG,IAAU+J,EAASnL,GAAO8K;AAC5B;QACA,OAAO1J;AACT;IACAwJ,EAASa,mBAAmBA;IAC5B,SAASpH,EAAgBrE,GAAO6D,GAAgBC;QAC9C,MAAM6H,IAAe3L,EAAMS;QAC3B,MAAMmL,IAA6BD,EAAavL,UAAU,GAAGuL,EAAahC,QAAQ,OAAO;QACzF,IAAIrF,IAAOsH,EAA2BjL;QACtC,IAAIkL,IAAW;QACf,IAAID,EAA2B,OAAO,KAAK;YACzCtH,IAAO,GAAGT,EAAe6E,KAAKoD,eAAexH;YAC7CuH,IAAW;AACb;QACA,KAAKA,GAAU;YACbvH,IAAOsF,IAAIa,wBAAwBnG,GAAMR,EAAe0H,QAAQO,gBAAgBlI,EAAe6E,KAAKiC;AACtG,eAAO;YACLrG,IAAOsF,IAAIa,wBAAwBnG,GAAMR,EAAe0H,QAAQQ,cAAcnI,EAAe6E,KAAKiC;AACpG;QACA,OAAO;YACLrG;YACAuH;;AAEJ;IACAjB,EAASvG,kBAAkBA;IAC3B,SAAS4H,EAAiB/I,GAAKW,GAAgBqI;QAC7C,MAAMC,IAAU,IAAIC;QACpBD,EAAQE,KAAK,OAAOnJ,GAAK;QACzBiJ,EAAQG;QACRH,EAAQI,qBAAqB;YAC3B,IAAIJ,EAAQK,eAAe,KAAKL,EAAQM,WAAW,KAAK;gBACtD,MAAMxJ,IAAOkJ,EAAQO;gBACrB,MAAMC,IAAWjJ,SAASoE,mBAAmB7E,GAAMY;gBACnD,IAAI8I,EAASzE,QAAQ;oBACnBgE,EAASS,EAASnN;AACpB;AACF,mBAAO;gBACL0M,EAAS;AACX;AAAA;AAEJ;IACAtB,EAASqB,mBAAmBA;AAC7B,EAzFD,CAyFG7H,YAAYA,UAAU,CAAC;;AAG1B,IAAIwI;;AACJ,CAAEC;IACA,SAASC,EAAKC,GAAUC;QACtB,MAAMC,IAAiBF,EAAS7M;QAChC,KAAK,IAAIgN,IAAe,GAAGA,IAAeD,GAAgBC,KAAgB;YACxE,MAAMC,IAAcC,SAASC,qBAAqBN,EAASG;YAC3D,MAAMI,IAAW,GAAG9C,MAAM+C,KAAKJ;YAC/B,MAAMK,IAAiBF,EAASpN;YAChC,KAAK,IAAIuN,IAAe,GAAGA,IAAeD,GAAgBC,KAAgB;gBACxE,KAAKT,EAAKM,EAASG,KAAgB;oBACjC;AACF;AACF;AACF;AACF;IACAZ,EAAYC,OAAOA;IACnB,SAASY,EAAOC,GAAWC,GAAMC,IAAY,IAAgBC,IAAa;QACxE,MAAMzH,IAAWuH,EAAKlN;QACtB,MAAMqN,IAAS1H,MAAa;QAC5B,MAAMjF,IAAU2M,IAASX,SAASY,eAAe,MAAkBZ,SAASa,cAAc5H;QAC1F,IAAI1G,GAAG2B,QAAQuM,IAAY;YACzBzM,EAAQyM,YAAYA;AACtB;QACA,IAAIlO,GAAG2B,QAAQqM,IAAY;YACzB,IAAIhO,GAAG2B,QAAQwM,IAAa;gBAC1BH,EAAUO,aAAa9M,GAAS0M;AAClC,mBAAO;gBACLH,EAAUQ,YAAY/M;AACxB;AACF;QACA,OAAOA;AACT;IACAyL,EAAYa,SAASA;IACrB,SAASU,EAAeT,GAAWC,GAAMC,GAAWQ,GAAMP,IAAa;QACrE,MAAMQ,IAAUZ,EAAOC,GAAWC,GAAMC,GAAWC;QACnDQ,EAAQC,YAAYF;QACpB,OAAOC;AACT;IACAzB,EAAYuB,iBAAiBA;IAC7B,SAASI,EAAsBZ;QAC7B,MAAMvH,IAAWuH,EAAKlN;QACtB,MAAMqN,IAAS1H,MAAa;QAC5B,MAAMjF,IAAU2M,IAASX,SAASY,eAAe,MAAkBZ,SAASa,cAAc5H;QAC1F,OAAOjF;AACT;IACAyL,EAAY2B,wBAAwBA;IACpC,SAASC,EAAaC;QACpBA,EAAGC;QACHD,EAAGE;AACL;IACA/B,EAAY4B,eAAeA;IAC3B,SAASI;QACP,MAAMC,IAAkB1B,SAAS0B;QACjC,MAAM1N,IAAU;YACd2N,MAAMD,EAAgBE,cAAcF,EAAgBG,cAAc;YAClEC,KAAKJ,EAAgBK,aAAaL,EAAgBM,aAAa;;QAEjE,OAAOhO;AACT;IACAyL,EAAYgC,oBAAoBA;IAChC,SAASQ,EAA2BX,GAAIJ,GAASgB;QAC/C,IAAIP,IAAOL,EAAGa;QACd,IAAIL,IAAMR,EAAGc;QACb,MAAMC,IAAiBZ;QACvBP,EAAQoB,MAAMC,UAAU;QACxB,IAAIZ,IAAOT,EAAQsB,cAAcC,OAAOC,YAAY;YAClDf,KAAQT,EAAQsB,cAAcN;AAChC,eAAO;YACLP;YACAA,KAAQO;AACV;QACA,IAAIJ,IAAMZ,EAAQyB,eAAeF,OAAOG,aAAa;YACnDd,KAAOZ,EAAQyB,eAAeT;AAChC,eAAO;YACLJ;YACAA,KAAOI;AACT;QACA,IAAIP,IAAOU,EAAeV,MAAM;YAC9BA,IAAOL,EAAGa,QAAQ;AACpB;QACA,IAAIL,IAAMO,EAAeP,KAAK;YAC5BA,IAAMR,EAAGc,QAAQ;AACnB;QACAlB,EAAQoB,MAAMX,OAAO,GAAGA;QACxBT,EAAQoB,MAAMR,MAAM,GAAGA;AACzB;IACArC,EAAYwC,6BAA6BA;IACzC,SAASY,EAAc3B;QACrB,MAAM4B,IAAQ9C,SAAS+C;QACvBD,EAAME,mBAAmB9B;QACzB,MAAM+B,IAAYR,OAAOS;QACzBD,EAAUE;QACVF,EAAUG,SAASN;AACrB;IACArD,EAAYoD,gBAAgBA;IAC5B,SAASQ,EAAe9C,GAAW+C,GAAWpM,GAAMqM,GAASC,GAAWC;QACtE,MAAMC,IAAgBpD,EAAOC,GAAW,OAAO;QAC/C,MAAMoD,IAAQrD,EAAOoD,GAAe,SAAS;QAC7C,MAAME,IAAQtD,EAAOqD,GAAO;QAC5BC,EAAMpD,OAAO;QACboD,EAAM1M,OAAOA;QACb0M,EAAML,UAAUA;QAChBK,EAAMC,eAAe;QACrBvD,EAAOqD,GAAO,QAAQ;QACtB3C,EAAe2C,GAAO,QAAQ,QAAQH,KAAaF;QACnD,IAAI/Q,GAAG8B,cAAcoP,IAAiB;YACpCzC,EAAe2C,GAAO,QAAQ,mBAAmBF;AACnD;QACA,OAAOG;AACT;IACAnE,EAAY4D,iBAAiBA;IAC7B,SAASS,EAAU5C;QACjB,MAAM6C,IAAW,CAAC;QAClBA,EAASpC,OAAO;QAChBoC,EAASjC,MAAM;QACf,OAAOZ,MAAYnO,MAAMmO,EAAQ8C,gBAAgBjR,MAAMmO,EAAQ+C,YAAY;YACzEF,EAASpC,QAAQT,EAAQ8C,aAAa9C,EAAQU;YAC9CmC,EAASjC,OAAOZ,EAAQ+C,YAAY/C,EAAQa;YAC5Cb,IAAUA,EAAQgD;AACpB;QACA,OAAOH;AACT;IACAtE,EAAYqE,YAAYA;IACxB,SAASK,EAAoBjD,GAASkD,GAAmBC,IAAW;QAClE,MAAMC,IAAS1K,iBAAiBsH;QAChC,IAAIoB,IAAQgC,EAAOpK,iBAAiBkK;QACpC,IAAIC,GAAU;YACZ/B,IAAQpK,WAAWoK;AACrB;QACA,OAAOA;AACT;IACA7C,EAAY0E,sBAAsBA;AACnC,EAnID,CAmIG3E,eAAeA,aAAa,CAAC;;AAGhC,IAAI+E;;AACJ,CAAEC;IACA,SAASC,EAAiBjR;QACxB,OAAOA,EAAKkR,WAAW,IAAI,IAAI,IAAIlR,EAAKkR,WAAW;AACrD;IACAF,EAAUC,mBAAmBA;IAC7B,SAASE,EAAclO,GAAgB7D;QACrC,IAAIoB,IAAUyC,EAAe6E,KAAKsJ;QAClC,IAAIhS,MAAU,MAAMA,MAAU,MAAMA,MAAU,GAAG;YAC/CoB,IAAUyC,EAAe6E,KAAKuJ;AAChC,eAAO,IAAIjS,MAAU,MAAMA,MAAU,GAAG;YACtCoB,IAAUyC,EAAe6E,KAAKwJ;AAChC,eAAO,IAAIlS,MAAU,MAAMA,MAAU,GAAG;YACtCoB,IAAUyC,EAAe6E,KAAKyJ;AAChC;QACA,IAAIxS,GAAG8B,cAAcL,IAAU;YAC7BA,IAAU,QAAQA;AACpB;QACA,OAAOA;AACT;IACAwQ,EAAUG,gBAAgBA;IAC1B,SAASK,EAA2BvO,GAAgBjD,GAAMyR;QACxD,MAAMC,IAAanS,OAAOS,KAAwB,IAAIqB,OAASrB;QAC/D,IAAIQ,IAAUiR;QACd,MAAME,IAAgBV,EAAiBS;QACvClR,IAAUA,EAAQ8C,QAAQ,QAAQ0F,IAAIE,UAAUwI,EAAWE,YAAY;QACvEpR,IAAUA,EAAQ8C,QAAQ,OAAOoO,EAAWE,WAAW/R;QACvDW,IAAUA,EAAQ8C,QAAQ,QAAQ0F,IAAIE,UAAUwI,EAAWG,cAAc;QACzErR,IAAUA,EAAQ8C,QAAQ,OAAOoO,EAAWG,aAAahS;QACzDW,IAAUA,EAAQ8C,QAAQ,QAAQ0F,IAAIE,UAAUwI,EAAWI,cAAc;QACzEtR,IAAUA,EAAQ8C,QAAQ,OAAOoO,EAAWI,aAAajS;QACzDW,IAAUA,EAAQ8C,QAAQ,SAAS0F,IAAIE,UAAUwI,EAAWK,mBAAmB;QAC/EvR,IAAUA,EAAQ8C,QAAQ,QAAQ0F,IAAIE,UAAUwI,EAAWK,mBAAmB;QAC9EvR,IAAUA,EAAQ8C,QAAQ,OAAOoO,EAAWK,kBAAkBlS;QAC9DW,IAAUA,EAAQ8C,QAAQ,UAAUL,EAAe6E,KAAKkK,SAASL;QACjEnR,IAAUA,EAAQ8C,QAAQ,SAASL,EAAe6E,KAAKmK,oBAAoBN;QAC3EnR,IAAUA,EAAQ8C,QAAQ,QAAQ0F,IAAIE,UAAUwI,EAAWQ;QAC3D1R,IAAUA,EAAQ8C,QAAQ,OAAOoO,EAAWQ,UAAUrS;QACtDW,IAAUA,EAAQ8C,QAAQ,OAAO6N,EAAclO,GAAgByO,EAAWQ;QAC1E1R,IAAUA,EAAQ8C,QAAQ,UAAUL,EAAe6E,KAAKqK,WAAWT,EAAWU;QAC9E5R,IAAUA,EAAQ8C,QAAQ,SAASL,EAAe6E,KAAKuK,sBAAsBX,EAAWU;QACxF5R,IAAUA,EAAQ8C,QAAQ,QAAQ0F,IAAIE,UAAUwI,EAAWU,aAAa;QACxE5R,IAAUA,EAAQ8C,QAAQ,QAAQoO,EAAWU,aAAa,GAAGvS;QAC7DW,IAAUA,EAAQ8C,QAAQ,UAAUoO,EAAWY,cAAczS;QAC7DW,IAAUA,EAAQ8C,QAAQ,SAASoO,EAAWY,cAAczS,WAAWL,UAAU;QACjFgB,IAAUA,EAAQ8C,QAAQ,QAAQoO,EAAWY,cAAczS,WAAWL,UAAU;QAChFgB,IAAUA,EAAQ8C,QAAQ,OAAOiP,OAAO5N,SAAS+M,EAAWY,cAAczS,WAAWL,UAAU,IAAIK;QACnG,OAAOW;AACT;IACAwQ,EAAUQ,6BAA6BA;AACxC,EAjDD,CAiDGT,aAAaA,WAAW,CAAC;;AAG5B,IAAIyB;;AACJ,CAAEC;IACAA,EAAWC,6BAA6B;IACxCD,EAAWE,yCAAyC;IACpDF,EAAWG,kCAAkC;AAC9C,EAJD,CAIGJ,cAAcA,YAAY,CAAC;;AAG9B,IAAIK;;AACJ,CAAEC;IACA,IAAIC;IACJ,CAAEC;QACA,SAASC,EAAkB5Q,GAAMqL;YAC/B,MAAMxK,IAAiB4P,EAASC,QAAQG,IAAI7Q;YAC5C,MAAM8Q,IAAejQ,EAAeiQ;YACpCjQ,EAAekQ,eAAe,CAAC;YAC/BlQ,EAAekQ,aAAa1F,UAAUA;YACtCxK,EAAekQ,aAAaC,6BAA6BnQ,EAAeoQ,OAAOC,YAAY,KAAKrQ,EAAeoQ,OAAOE;YACtHtQ,EAAekQ,aAAaK,kBAAkB;YAC9CvQ,EAAekQ,aAAaM,oBAAoB;YAChDxQ,EAAekQ,aAAaO,WAAW;YACvCzQ,EAAekQ,aAAaQ,QAAQ;YACpC1Q,EAAekQ,aAAaS,oBAAoB,CAAC;YACjD3Q,EAAekQ,aAAaU,qBAAqB;YACjD5Q,EAAekQ,aAAaW,yBAAyB;YACrD7Q,EAAekQ,aAAaY,iBAAiB;YAC7C9Q,EAAekQ,aAAaa,iBAAiB;YAC7C/Q,EAAekQ,aAAac,qBAAqB;YACjDhR,EAAekQ,aAAae,WAAW;YACvCjR,EAAekQ,aAAagB,kBAAkB;YAC9ClR,EAAekQ,aAAaiB,yBAAyB;YACrDnR,EAAekQ,aAAakB,eAAe;YAC3CpR,EAAekQ,aAAamB,wBAAwB;YACpDrR,EAAekQ,aAAaoB,cAAc;YAC1CtR,EAAekQ,aAAaqB,wBAAwB;YACpDvR,EAAekQ,aAAasB,SAAS;YACrCxR,EAAekQ,aAAauB,mBAAmB;YAC/CzR,EAAekQ,aAAawB,qBAAqB;YACjD1R,EAAekQ,aAAayB,mBAAmB;YAC/C3R,EAAekQ,aAAa0B,iBAAiB;YAC7C5R,EAAekQ,aAAa2B,iBAAiB;YAC7C7R,EAAekQ,aAAa4B,0BAA0B;YACtD9R,EAAekQ,aAAa6B,iBAAiB;YAC7C/R,EAAekQ,aAAa8B,0BAA0B;YACtDhS,EAAekQ,aAAa+B,iBAAiB,CAAC;YAC9CjS,EAAekQ,aAAagC,cAAc;YAC1ClS,EAAekQ,aAAaiC,6BAA6B;YACzDnS,EAAekQ,aAAakC,iBAAiB;YAC7C,IAAIpS,EAAeoQ,OAAOiC,WAAWxW,GAAGmC,aAAagC,EAAeb,SAASa,EAAeb,KAAK/C,SAAS,KAAK4D,EAAekQ,aAAaC,4BAA4BnQ,EAAeb,KAAK/C,SAAS,GAAG;gBACrM4D,EAAekQ,aAAaC,4BAA4B;AAC1D;YACA,KAAK,MAAMhP,KAAO8O,GAAc;gBAC9B,KAAKA,EAAa9O,IAAM;oBACtBnB,EAAeiQ,aAAaqC,OAAO;oBACnC;AACF;AACF;YACA,OAAOtS;AACT;QACA8P,EAASC,oBAAoBA;QAC7B,SAASC,EAAIuC;YACX,MAAMC,IAAUlS,QAAQgH,UAAUiL,GAAY,CAAC;YAC/CC,EAAQC,KAAKnS,QAAQ2G,UAAUuL,EAAQC,IAAI;YAC3CD,EAAQE,QAAQpS,QAAQ2G,UAAUuL,EAAQE,OAAO;YACjDF,EAAQG,kBAAkBrS,QAAQ4G,WAAWsL,EAAQG,iBAAiB;YACtEH,EAAQI,2BAA2BtS,QAAQ4G,WAAWsL,EAAQI,0BAA0B;YACxFJ,EAAQK,iBAAiBvS,QAAQ2G,UAAUuL,EAAQK,gBAAgB;YACnEL,EAAQM,kBAAkBxS,QAAQ4G,WAAWsL,EAAQM,iBAAiB;YACtEN,EAAQO,mBAAmBzS,QAAQ4G,WAAWsL,EAAQO,kBAAkB;YACxEP,EAAQQ,kBAAkB1S,QAAQ4G,WAAWsL,EAAQQ,iBAAiB;YACtER,EAAQS,oBAAoB3S,QAAQ4G,WAAWsL,EAAQS,mBAAmB;YAC1ET,EAAQU,uCAAuC5S,QAAQ4G,WAAWsL,EAAQU,sCAAsC;YAChHV,EAAQW,aAAa7S,QAAQ4G,WAAWsL,EAAQW,YAAY;YAC5DX,EAAQY,qBAAqB9S,QAAQ4G,WAAWsL,EAAQY,oBAAoB;YAC5EZ,EAAQa,uBAAuB/S,QAAQ4G,WAAWsL,EAAQa,sBAAsB;YAChFb,EAAQc,kBAAkBhT,QAAQ4G,WAAWsL,EAAQc,iBAAiB;YACtEd,EAAQe,sBAAsBjT,QAAQ4G,WAAWsL,EAAQe,qBAAqB;YAC9Ef,EAAQgB,mBAAmBlT,QAAQ6G,UAAUqL,EAAQgB,kBAAkB;YACvEhB,EAAQiB,yBAAyBnT,QAAQ4G,WAAWsL,EAAQiB,wBAAwB;YACpFjB,EAAQkB,gCAAgCpT,QAAQ4G,WAAWsL,EAAQkB,+BAA+B;YAClGlB,EAAQmB,oCAAoCrT,QAAQ4G,WAAWsL,EAAQmB,mCAAmC;YAC1GnB,EAAQvS,yBAAyBK,QAAQ4G,WAAWsL,EAAQvS,wBAAwB;YACpFuS,EAAQoB,sBAAsBtT,QAAQ4G,WAAWsL,EAAQoB,qBAAqB;YAC9EpB,EAAQqB,uBAAuBvT,QAAQ4G,WAAWsL,EAAQqB,sBAAsB;YAChFrB,EAAQsB,gBAAgBxT,QAAQgH,UAAUkL,EAAQsB,eAAe;YACjEtB,EAAQuB,yBAAyBzT,QAAQ6G,UAAUqL,EAAQuB,wBAAwB;YACnFvB,EAAQwB,gBAAgB1T,QAAQ4G,WAAWsL,EAAQwB,eAAe;YAClExB,EAAQyB,2BAA2B3T,QAAQ4G,WAAWsL,EAAQyB,0BAA0B;YACxFzB,EAAQ0B,uBAAuB5T,QAAQ2G,UAAUuL,EAAQ0B,sBAAsB;YAC/E1B,EAAQ2B,yBAAyB7T,QAAQ4G,WAAWsL,EAAQ2B,wBAAwB;YACpF3B,EAAQ4B,+BAA+B9T,QAAQ4G,WAAWsL,EAAQ4B,8BAA8B;YAChG5B,EAAQ6B,iCAAiC/T,QAAQ4G,WAAWsL,EAAQ6B,gCAAgC;YACpG7B,EAAQ8B,qBAAqBhU,QAAQ4G,WAAWsL,EAAQ8B,oBAAoB;YAC5E9B,EAAQ+B,uBAAuBjU,QAAQ4G,WAAWsL,EAAQ+B,sBAAsB;YAChF/B,EAAQgC,2BAA2BlU,QAAQ6G,UAAUqL,EAAQgC,0BAA0B;YACvFhC,EAAQiC,6BAA6BnU,QAAQ2G,UAAUuL,EAAQiC,4BAA4B;YAC3FjC,EAAQ5R,8BAA8BN,QAAQ4G,WAAWsL,EAAQ5R,6BAA6B;YAC9F4R,EAAQkC,cAAcpU,QAAQ2G,UAAUuL,EAAQkC,aAAa;YAC7DlC,EAAQmC,oBAAoBrU,QAAQ2G,UAAUuL,EAAQmC,mBAAmB;YACzEnC,EAAQoC,mBAAmBtU,QAAQ4G,WAAWsL,EAAQoC,kBAAkB;YACxEpC,EAAQqC,iCAAiCvU,QAAQ4G,WAAWsL,EAAQqC,gCAAgC;YACpGrC,EAAQsC,8BAA8BxU,QAAQ4G,WAAWsL,EAAQsC,6BAA6B;YAC9FtC,EAAQuC,+BAA+BzU,QAAQ4G,WAAWsL,EAAQuC,8BAA8B;YAChGvC,EAAQwC,WAAW1U,QAAQ2G,UAAUuL,EAAQwC,UAAU;YACvDxC,EAAQyC,mBAAmB3U,QAAQ2G,UAAUuL,EAAQyC,kBAAkB;YACvEzC,EAAQ0C,iBAAiB5U,QAAQ2G,UAAUuL,EAAQ0C,gBAAgB;YACnE1C,EAAQ2C,uBAAuB7U,QAAQ4G,WAAWsL,EAAQ2C,sBAAsB;YAChF3C,EAAQ9K,UAAU0N,EAAW5C;YAC7BA,EAAQpC,SAASiF,EAAU7C;YAC3BA,EAAQ8C,QAAQC,EAAS/C;YACzBA,EAAQhB,SAASgE,EAAUhD;YAC3BA,EAAQiD,eAAeC,EAAgBlD;YACvCA,EAAQmD,cAAcC,EAAepD;YACrCA,EAAQqD,SAASC,EAAUtD;YAC3BA,EAAQuD,UAAUC,EAAWxD;YAC7BA,EAAQnO,QAAQ4R,EAASzD;YACzBA,EAAQvC,eAAeiG,EAAgB1D;YACvCA,EAAQvB,WAAWkF,EAAY3D;YAC/BA,EAAQ4D,YAAYC,EAAa7D;YACjCA,EAAQ8D,SAASC,EAAkB/D;YACnC,OAAOA;AACT;QACA1C,EAASE,MAAMA;QACf,SAASoF,EAAW5C;YAClBA,EAAQ9K,UAAUpH,QAAQgH,UAAUkL,EAAQ9K,SAAS,CAAC;YACtD8K,EAAQ9K,QAAQ1C,gBAAgB1E,QAAQ6G,UAAUqL,EAAQ9K,QAAQ1C,eAAe;YACjFwN,EAAQ9K,QAAQ8O,eAAelW,QAAQ6G,UAAUqL,EAAQ9K,QAAQ8O,cAAc;YAC/EhE,EAAQ9K,QAAQ+O,YAAYnW,QAAQ6G,UAAUqL,EAAQ9K,QAAQ+O,WAAW;YACzEjE,EAAQ9K,QAAQgP,cAAcpW,QAAQ6G,UAAUqL,EAAQ9K,QAAQgP,aAAa;YAC7ElE,EAAQ9K,QAAQiP,eAAerW,QAAQ6G,UAAUqL,EAAQ9K,QAAQiP,cAAc;YAC/EnE,EAAQ9K,QAAQkP,eAAetW,QAAQ6G,UAAUqL,EAAQ9K,QAAQkP,cAAc;YAC/EpE,EAAQ9K,QAAQmP,mBAAmBvW,QAAQ6G,UAAUqL,EAAQ9K,QAAQmP,kBAAkB;YACvFrE,EAAQ9K,QAAQoP,qBAAqBxW,QAAQ6G,UAAUqL,EAAQ9K,QAAQoP,oBAAoB;YAC3FtE,EAAQ9K,QAAQO,iBAAiB3H,QAAQ6G,UAAUqL,EAAQ9K,QAAQO,gBAAgB;YACnFuK,EAAQ9K,QAAQQ,eAAe5H,QAAQ6G,UAAUqL,EAAQ9K,QAAQQ,cAAc;YAC/E,OAAOsK,EAAQ9K;AACjB;QACA,SAAS2N,EAAU7C;YACjBA,EAAQpC,SAAS9P,QAAQgH,UAAUkL,EAAQpC,QAAQ,CAAC;YACpDoC,EAAQpC,OAAOiC,UAAU/R,QAAQ4G,WAAWsL,EAAQpC,OAAOiC,SAAS;YACpEG,EAAQpC,OAAOE,iBAAiBhQ,QAAQmH,iBAAiB+K,EAAQpC,OAAOE,gBAAgB,GAAG;YAC3FkC,EAAQpC,OAAOC,YAAY/P,QAAQiH,iBAAiBiL,EAAQpC,OAAOC,WAAW,GAAG;YACjFmC,EAAQpC,OAAO2G,uBAAuBzW,QAAQ4G,WAAWsL,EAAQpC,OAAO2G,sBAAsB;YAC9FvE,EAAQpC,OAAO4G,wBAAwB1W,QAAQ4G,WAAWsL,EAAQpC,OAAO4G,uBAAuB;YAChGxE,EAAQpC,OAAO6G,mBAAmB3W,QAAQ4G,WAAWsL,EAAQpC,OAAO6G,kBAAkB;YACtF,OAAOzE,EAAQpC;AACjB;QACA,SAASmF,EAAS/C;YAChBA,EAAQ8C,QAAQhV,QAAQgH,UAAUkL,EAAQ8C,OAAO,CAAC;YAClD9C,EAAQ8C,MAAM1Q,OAAOtE,QAAQyG,aAAayL,EAAQ8C,MAAM1Q,MAAM;YAC9D4N,EAAQ8C,MAAM4B,0BAA0B5W,QAAQ4G,WAAWsL,EAAQ8C,MAAM4B,yBAAyB;YAClG1E,EAAQ8C,MAAM6B,iBAAiB7W,QAAQ4G,WAAWsL,EAAQ8C,MAAM6B,gBAAgB;YAChF3E,EAAQ8C,MAAM8B,2BAA2B9W,QAAQ4G,WAAWsL,EAAQ8C,MAAM8B,0BAA0B;YACpG5E,EAAQ8C,MAAM+B,uBAAuB/W,QAAQ4G,WAAWsL,EAAQ8C,MAAM+B,sBAAsB;YAC5F,OAAO7E,EAAQ8C;AACjB;QACA,SAASE,EAAUhD;YACjBA,EAAQhB,SAASlR,QAAQgH,UAAUkL,EAAQhB,QAAQ,CAAC;YACpDgB,EAAQhB,OAAOa,UAAU/R,QAAQ4G,WAAWsL,EAAQhB,OAAOa,SAAS;YACpEG,EAAQhB,OAAOwC,gBAAgB1T,QAAQ4G,WAAWsL,EAAQhB,OAAOwC,eAAe;YAChFxB,EAAQhB,OAAO8F,cAAchX,QAAQ4G,WAAWsL,EAAQhB,OAAO8F,aAAa;YAC5E9E,EAAQhB,OAAO+F,YAAYjX,QAAQ4G,WAAWsL,EAAQhB,OAAO+F,WAAW;YACxE/E,EAAQhB,OAAOgG,aAAalX,QAAQ4G,WAAWsL,EAAQhB,OAAOgG,YAAY;YAC1EhF,EAAQhB,OAAOiG,mBAAmBnX,QAAQ6G,UAAUqL,EAAQhB,OAAOiG,kBAAkB;YACrF,OAAOjF,EAAQhB;AACjB;QACA,SAASkE,EAAgBlD;YACvBA,EAAQiD,eAAenV,QAAQgH,UAAUkL,EAAQiD,cAAc,CAAC;YAChEjD,EAAQiD,aAAapD,UAAU/R,QAAQ4G,WAAWsL,EAAQiD,aAAapD,SAAS;YAChFG,EAAQiD,aAAa0B,iBAAiB7W,QAAQ4G,WAAWsL,EAAQiD,aAAa0B,gBAAgB;YAC9F3E,EAAQiD,aAAaiC,oBAAoBpX,QAAQ4G,WAAWsL,EAAQiD,aAAaiC,mBAAmB;YACpGlF,EAAQiD,aAAakC,mBAAmBrX,QAAQ4G,WAAWsL,EAAQiD,aAAakC,kBAAkB;YAClGnF,EAAQiD,aAAamC,iBAAiBtX,QAAQ4G,WAAWsL,EAAQiD,aAAamC,gBAAgB;YAC9FpF,EAAQiD,aAAayB,0BAA0B5W,QAAQ4G,WAAWsL,EAAQiD,aAAayB,yBAAyB;YAChH1E,EAAQiD,aAAaoC,0BAA0BvX,QAAQ4G,WAAWsL,EAAQiD,aAAaoC,yBAAyB;YAChHrF,EAAQiD,aAAaqC,mBAAmBxX,QAAQ4G,WAAWsL,EAAQiD,aAAaqC,kBAAkB;YAClGtF,EAAQiD,aAAasC,mBAAmBzX,QAAQ4G,WAAWsL,EAAQiD,aAAasC,kBAAkB;YAClG,OAAOvF,EAAQiD;AACjB;QACA,SAASG,EAAepD;YACtBA,EAAQmD,cAAcrV,QAAQgH,UAAUkL,EAAQmD,aAAa,CAAC;YAC9DnD,EAAQmD,YAAYtD,UAAU/R,QAAQ4G,WAAWsL,EAAQmD,YAAYtD,SAAS;YAC9EG,EAAQmD,YAAYqC,aAAa1X,QAAQ4G,WAAWsL,EAAQmD,YAAYqC,YAAY;YACpFxF,EAAQmD,YAAYsC,UAAU3X,QAAQ4G,WAAWsL,EAAQmD,YAAYsC,SAAS;YAC9E,OAAOzF,EAAQmD;AACjB;QACA,SAASG,EAAUtD;YACjBA,EAAQqD,SAASvV,QAAQgH,UAAUkL,EAAQqD,QAAQ,CAAC;YACpDrD,EAAQqD,OAAOqC,aAAa5X,QAAQ4G,WAAWsL,EAAQqD,OAAOqC,YAAY;YAC1E1F,EAAQqD,OAAOsC,iBAAiB7X,QAAQ4G,WAAWsL,EAAQqD,OAAOsC,gBAAgB;YAClF3F,EAAQqD,OAAOuC,gBAAgB9X,QAAQ4G,WAAWsL,EAAQqD,OAAOuC,eAAe;YAChF5F,EAAQqD,OAAOwC,gBAAgB/X,QAAQ4G,WAAWsL,EAAQqD,OAAOwC,eAAe;YAChF7F,EAAQqD,OAAOyC,cAAchY,QAAQ4G,WAAWsL,EAAQqD,OAAOyC,aAAa;YAC5E9F,EAAQqD,OAAO0C,eAAejY,QAAQ4G,WAAWsL,EAAQqD,OAAO0C,cAAc;YAC9E/F,EAAQqD,OAAO2C,eAAelY,QAAQ4G,WAAWsL,EAAQqD,OAAO2C,cAAc;YAC9EhG,EAAQqD,OAAO4C,aAAanY,QAAQ4G,WAAWsL,EAAQqD,OAAO4C,YAAY;YAC1EjG,EAAQqD,OAAO6C,eAAepY,QAAQ4G,WAAWsL,EAAQqD,OAAO6C,cAAc;YAC9ElG,EAAQqD,OAAO8C,cAAcrY,QAAQ4G,WAAWsL,EAAQqD,OAAO8C,aAAa;YAC5EnG,EAAQqD,OAAO+C,eAAetY,QAAQ4G,WAAWsL,EAAQqD,OAAO+C,cAAc;YAC9EpG,EAAQqD,OAAOgD,eAAevY,QAAQ4G,WAAWsL,EAAQqD,OAAOgD,cAAc;YAC9ErG,EAAQqD,OAAOiD,eAAexY,QAAQ4G,WAAWsL,EAAQqD,OAAOiD,cAAc;YAC9EtG,EAAQqD,OAAOkD,kBAAkBzY,QAAQ4G,WAAWsL,EAAQqD,OAAOkD,iBAAiB;YACpFvG,EAAQqD,OAAOmD,aAAa1Y,QAAQ4G,WAAWsL,EAAQqD,OAAOmD,YAAY;YAC1ExG,EAAQqD,OAAOoD,cAAc3Y,QAAQ4G,WAAWsL,EAAQqD,OAAOoD,aAAa;YAC5EzG,EAAQqD,OAAOqD,eAAe5Y,QAAQ4G,WAAWsL,EAAQqD,OAAOqD,cAAc;YAC9E1G,EAAQqD,OAAOsD,YAAY7Y,QAAQ4G,WAAWsL,EAAQqD,OAAOsD,WAAW;YACxE3G,EAAQqD,OAAOuD,YAAY9Y,QAAQ4G,WAAWsL,EAAQqD,OAAOuD,WAAW;YACxE5G,EAAQqD,OAAOwD,YAAY/Y,QAAQ4G,WAAWsL,EAAQqD,OAAOwD,WAAW;YACxE7G,EAAQqD,OAAOyD,cAAchZ,QAAQ4G,WAAWsL,EAAQqD,OAAOyD,aAAa;YAC5E9G,EAAQqD,OAAO0D,cAAcjZ,QAAQ4G,WAAWsL,EAAQqD,OAAO0D,aAAa;YAC5E/G,EAAQqD,OAAO2D,aAAalZ,QAAQ4G,WAAWsL,EAAQqD,OAAO2D,YAAY;YAC1EhH,EAAQqD,OAAO4D,eAAenZ,QAAQ4G,WAAWsL,EAAQqD,OAAO4D,cAAc;YAC9E,OAAOjH,EAAQqD;AACjB;QACA,SAASG,EAAWxD;YAClBA,EAAQuD,UAAUzV,QAAQgH,UAAUkL,EAAQuD,SAAS,CAAC;YACtDvD,EAAQuD,QAAQ2D,QAAQpZ,QAAQ6G,UAAUqL,EAAQuD,QAAQ2D,OAAO;YACjElH,EAAQuD,QAAQvK,SAASlL,QAAQ6G,UAAUqL,EAAQuD,QAAQvK,QAAQ;YACnE,OAAOgH,EAAQuD;AACjB;QACA,SAASE,EAASzD;YAChBA,EAAQnO,QAAQ/D,QAAQgH,UAAUkL,EAAQnO,OAAO,CAAC;YAClDmO,EAAQnO,MAAMqB,iBAAiBpF,QAAQ4G,WAAWsL,EAAQnO,MAAMqB,gBAAgB;YAChF8M,EAAQnO,MAAMiB,oBAAoBhF,QAAQ4G,WAAWsL,EAAQnO,MAAMiB,mBAAmB;YACtFkN,EAAQnO,MAAMmB,mBAAmBlF,QAAQ4G,WAAWsL,EAAQnO,MAAMmB,kBAAkB;YACpFgN,EAAQnO,MAAMsB,mBAAmBrF,QAAQ4G,WAAWsL,EAAQnO,MAAMsB,kBAAkB;YACpF6M,EAAQnO,MAAMoB,kBAAkBnF,QAAQ4G,WAAWsL,EAAQnO,MAAMoB,iBAAiB;YAClF+M,EAAQnO,MAAMkB,mBAAmBjF,QAAQ4G,WAAWsL,EAAQnO,MAAMkB,kBAAkB;YACpF,OAAOiN,EAAQnO;AACjB;QACA,SAAS6R,EAAgB1D;YACvB,IAAImH,IAAcrZ,QAAQ4G,WAAWsL,EAAQvC,cAAc;YAC3DuC,EAAQvC,eAAe3P,QAAQgH,UAAUkL,EAAQvC,cAAc,CAAC;YAChEuC,EAAQvC,aAAaoI,gBAAgB/X,QAAQ4G,WAAWsL,EAAQvC,aAAaoI,eAAesB;YAC5FnH,EAAQvC,aAAaqI,cAAchY,QAAQ4G,WAAWsL,EAAQvC,aAAaqI,aAAaqB;YACxFnH,EAAQvC,aAAasI,eAAejY,QAAQ4G,WAAWsL,EAAQvC,aAAasI,cAAcoB;YAC1FnH,EAAQvC,aAAauI,eAAelY,QAAQ4G,WAAWsL,EAAQvC,aAAauI,cAAcmB;YAC1FnH,EAAQvC,aAAawI,aAAanY,QAAQ4G,WAAWsL,EAAQvC,aAAawI,YAAYkB;YACtFnH,EAAQvC,aAAa2J,eAAetZ,QAAQ4G,WAAWsL,EAAQvC,aAAa2J,cAAcD;YAC1FnH,EAAQvC,aAAa+I,aAAa1Y,QAAQ4G,WAAWsL,EAAQvC,aAAa+I,YAAYW;YACtFnH,EAAQvC,aAAagJ,cAAc3Y,QAAQ4G,WAAWsL,EAAQvC,aAAagJ,aAAaU;YACxFnH,EAAQvC,aAAaoJ,YAAY/Y,QAAQ4G,WAAWsL,EAAQvC,aAAaoJ,WAAWM;YACpFnH,EAAQvC,aAAasJ,cAAcjZ,QAAQ4G,WAAWsL,EAAQvC,aAAasJ,aAAaI;YACxFnH,EAAQvC,aAAa4J,eAAevZ,QAAQ4G,WAAWsL,EAAQvC,aAAa4J,cAAcF;YAC1FnH,EAAQvC,aAAa4I,eAAevY,QAAQ4G,WAAWsL,EAAQvC,aAAa4I,cAAcc;YAC1FnH,EAAQvC,aAAaqJ,cAAchZ,QAAQ4G,WAAWsL,EAAQvC,aAAaqJ,aAAaK;YACxFnH,EAAQvC,aAAa6J,gBAAgBxZ,QAAQ4G,WAAWsL,EAAQvC,aAAa6J,eAAeH;YAC5FnH,EAAQvC,aAAaqC,OAAOhS,QAAQ4G,WAAWsL,EAAQvC,aAAaqC,MAAMqH;YAC1E,MAAMI,IAAavH,EAAQvC;YAC3B,KAAK,MAAM+J,KAAYD,GAAY;gBACjC,IAAIA,EAAW3Y,eAAe4Y,OAAcD,EAAWC,IAAW;oBAChExH,EAAQvC,aAAaqC,OAAO;oBAC5B;AACF;AACF;YACA,OAAOE,EAAQvC;AACjB;QACA,SAASkG,EAAY3D;YACnBA,EAAQvB,WAAW3Q,QAAQgH,UAAUkL,EAAQvB,UAAU,CAAC;YACxDuB,EAAQvB,SAASoB,UAAU/R,QAAQ4G,WAAWsL,EAAQvB,SAASoB,SAAS;YACxEG,EAAQvB,SAAS6G,mBAAmBxX,QAAQ4G,WAAWsL,EAAQvB,SAAS6G,kBAAkB;YAC1FtF,EAAQvB,SAAS8G,mBAAmBzX,QAAQ4G,WAAWsL,EAAQvB,SAAS8G,kBAAkB;YAC1FvF,EAAQvB,SAASgJ,YAAY3Z,QAAQyG,aAAayL,EAAQvB,SAASgJ,WAAWzH,EAAQ8C,MAAM1Q;YAC5F4N,EAAQvB,SAASiJ,8BAA8B5Z,QAAQ4G,WAAWsL,EAAQvB,SAASiJ,6BAA6B;YAChH1H,EAAQvB,SAASkJ,6BAA6B7Z,QAAQ4G,WAAWsL,EAAQvB,SAASkJ,4BAA4B;YAC9G3H,EAAQvB,SAASmJ,sBAAsB9Z,QAAQ4G,WAAWsL,EAAQvB,SAASmJ,qBAAqB;YAChG5H,EAAQvB,SAASoJ,qBAAqB/Z,QAAQ6G,UAAUqL,EAAQvB,SAASoJ,oBAAoB;YAC7F,OAAO7H,EAAQvB;AACjB;QACA,SAASoF,EAAa7D;YACpBA,EAAQ4D,YAAY9V,QAAQgH,UAAUkL,EAAQ4D,WAAW,CAAC;YAC1D5D,EAAQ4D,UAAUkE,aAAaha,QAAQ6G,UAAUqL,EAAQ4D,UAAUkE,YAAY;YAC/E9H,EAAQ4D,UAAUmE,YAAYja,QAAQ6G,UAAUqL,EAAQ4D,UAAUmE,WAAW;YAC7E/H,EAAQ4D,UAAUoE,UAAUla,QAAQ6G,UAAUqL,EAAQ4D,UAAUoE,SAAS;YACzEhI,EAAQ4D,UAAUqE,UAAUna,QAAQ6G,UAAUqL,EAAQ4D,UAAUqE,SAAS;YACzEjI,EAAQ4D,UAAUsE,WAAWpa,QAAQ6G,UAAUqL,EAAQ4D,UAAUsE,UAAU;YAC3E,OAAOlI,EAAQ4D;AACjB;QACA,SAASG,EAAkB/D;YACzBA,EAAQ8D,SAAShW,QAAQgH,UAAUkL,EAAQ8D,QAAQ,CAAC;YACpD9D,EAAQ8D,OAAOqE,iBAAiBra,QAAQ8G,YAAYoL,EAAQ8D,OAAOqE,gBAAgB;YACnFnI,EAAQ8D,OAAOsE,mBAAmBta,QAAQ8G,YAAYoL,EAAQ8D,OAAOsE,kBAAkB;YACvFpI,EAAQ8D,OAAOuE,eAAeva,QAAQ8G,YAAYoL,EAAQ8D,OAAOuE,cAAc;YAC/ErI,EAAQ8D,OAAOwE,YAAYxa,QAAQ8G,YAAYoL,EAAQ8D,OAAOwE,WAAW;YACzEtI,EAAQ8D,OAAOyE,YAAYza,QAAQ8G,YAAYoL,EAAQ8D,OAAOyE,WAAW;YACzEvI,EAAQ8D,OAAO0E,YAAY1a,QAAQ8G,YAAYoL,EAAQ8D,OAAO0E,WAAW;YACzExI,EAAQ8D,OAAO2E,aAAa3a,QAAQ8G,YAAYoL,EAAQ8D,OAAO2E,YAAY;YAC3EzI,EAAQ8D,OAAO4E,YAAY5a,QAAQ8G,YAAYoL,EAAQ8D,OAAO4E,WAAW;YACzE1I,EAAQ8D,OAAO6E,kBAAkB7a,QAAQ8G,YAAYoL,EAAQ8D,OAAO6E,iBAAiB;YACrF3I,EAAQ8D,OAAO8E,gBAAgB9a,QAAQ8G,YAAYoL,EAAQ8D,OAAO8E,eAAe;YACjF5I,EAAQ8D,OAAO+E,iBAAiB/a,QAAQ8G,YAAYoL,EAAQ8D,OAAO+E,gBAAgB;YACnF7I,EAAQ8D,OAAOgF,iBAAiBhb,QAAQ8G,YAAYoL,EAAQ8D,OAAOgF,gBAAgB;YACnF9I,EAAQ8D,OAAOiF,iBAAiBjb,QAAQ8G,YAAYoL,EAAQ8D,OAAOiF,gBAAgB;YACnF/I,EAAQ8D,OAAOkF,eAAelb,QAAQ8G,YAAYoL,EAAQ8D,OAAOkF,cAAc;YAC/EhJ,EAAQ8D,OAAOmF,mBAAmBnb,QAAQ8G,YAAYoL,EAAQ8D,OAAOmF,kBAAkB;YACvFjJ,EAAQ8D,OAAOoF,eAAepb,QAAQ8G,YAAYoL,EAAQ8D,OAAOoF,cAAc;YAC/ElJ,EAAQ8D,OAAOqF,kBAAkBrb,QAAQ8G,YAAYoL,EAAQ8D,OAAOqF,iBAAiB;YACrFnJ,EAAQ8D,OAAOsF,iBAAiBtb,QAAQ8G,YAAYoL,EAAQ8D,OAAOsF,gBAAgB;YACnFpJ,EAAQ8D,OAAOuF,qBAAqBvb,QAAQ8G,YAAYoL,EAAQ8D,OAAOuF,oBAAoB;YAC3FrJ,EAAQ8D,OAAOwF,oBAAoBxb,QAAQ8G,YAAYoL,EAAQ8D,OAAOwF,mBAAmB;YACzFtJ,EAAQ8D,OAAOyF,eAAezb,QAAQ8G,YAAYoL,EAAQ8D,OAAOyF,cAAc;YAC/EvJ,EAAQ8D,OAAO0F,gBAAgB1b,QAAQ8G,YAAYoL,EAAQ8D,OAAO0F,eAAe;YACjFxJ,EAAQ8D,OAAO2F,aAAa3b,QAAQ8G,YAAYoL,EAAQ8D,OAAO2F,YAAY;YAC3EzJ,EAAQ8D,OAAO4F,iBAAiB5b,QAAQ8G,YAAYoL,EAAQ8D,OAAO4F,gBAAgB;YACnF1J,EAAQ8D,OAAO6F,WAAW7b,QAAQ8G,YAAYoL,EAAQ8D,OAAO6F,UAAU;YACvE3J,EAAQ8D,OAAO8F,cAAc9b,QAAQ8G,YAAYoL,EAAQ8D,OAAO8F,aAAa;YAC7E5J,EAAQ8D,OAAO+F,gBAAgB/b,QAAQ8G,YAAYoL,EAAQ8D,OAAO+F,eAAe;YACjF7J,EAAQ8D,OAAOgG,gBAAgBhc,QAAQ8G,YAAYoL,EAAQ8D,OAAOgG,eAAe;YACjF9J,EAAQ8D,OAAOiG,iBAAiBjc,QAAQ8G,YAAYoL,EAAQ8D,OAAOiG,gBAAgB;YACnF/J,EAAQ8D,OAAOkG,SAASlc,QAAQ8G,YAAYoL,EAAQ8D,OAAOkG,QAAQ;YACnEhK,EAAQ8D,OAAOmG,qBAAqBnc,QAAQ8G,YAAYoL,EAAQ8D,OAAOmG,oBAAoB;YAC3FjK,EAAQ8D,OAAOoG,oBAAoBpc,QAAQ8G,YAAYoL,EAAQ8D,OAAOoG,mBAAmB;YACzFlK,EAAQ8D,OAAOqG,yBAAyBrc,QAAQ8G,YAAYoL,EAAQ8D,OAAOqG,wBAAwB;YACnG,OAAOnK,EAAQ8D;AACjB;AACD,MAhTD,CAgTGzG,IAAUD,EAASC,YAAYD,EAASC,UAAU,CAAC;AACvD,EAnTD,CAmTGF,YAAYA,UAAU,CAAC;;AAG1B,IAAIiN;;AACJ,CAAEC;IACA,IAAIhN;IACJ,CAAEC;QACA,SAASE,EAAI8M,IAAmB;YAC9B,MAAM/c,IAAiBO,QAAQgH,UAAUwV,GAAkB,CAAC;YAC5D/c,EAAe0E,WAAWnE,QAAQ4G,WAAWnH,EAAe0E,UAAU;YACtE1E,EAAegd,kBAAkBzc,QAAQqH,iBAAiB5H,EAAegd,iBAAiB,EAAC;YAC3Fhd,EAAe6E,OAAOoY,EAAQjd;YAC9B,OAAOA;AACT;QACA+P,EAASE,MAAMA;QACf,SAASgN,EAAQjd;YACfA,EAAe6E,OAAOtE,QAAQgH,UAAUvH,EAAe6E,MAAM,CAAC;YAC9D7E,EAAe6E,KAAKqY,aAAa3c,QAAQyG,aAAahH,EAAe6E,KAAKqY,YAAY;YACtFld,EAAe6E,KAAKsY,YAAY5c,QAAQyG,aAAahH,EAAe6E,KAAKsY,WAAW;YACpFnd,EAAe6E,KAAKuY,UAAU7c,QAAQyG,aAAahH,EAAe6E,KAAKuY,SAAS;YAChFpd,EAAe6E,KAAKwY,UAAU9c,QAAQyG,aAAahH,EAAe6E,KAAKwY,SAAS;YAChFrd,EAAe6E,KAAKyY,WAAW/c,QAAQyG,aAAahH,EAAe6E,KAAKyY,UAAU;YAClFtd,EAAe6E,KAAK0Y,qBAAqBhd,QAAQyG,aAAahH,EAAe6E,KAAK0Y,oBAAoB;YACtGvd,EAAe6E,KAAK2Y,oBAAoBjd,QAAQyG,aAAahH,EAAe6E,KAAK2Y,mBAAmB;YACpGxd,EAAe6E,KAAK4Y,oBAAoBld,QAAQyG,aAAahH,EAAe6E,KAAK4Y,mBAAmB;YACpGzd,EAAe6E,KAAKC,kBAAkBvE,QAAQyG,aAAahH,EAAe6E,KAAKC,iBAAiB;YAChG9E,EAAe6E,KAAK6Y,6BAA6Bnd,QAAQyG,aAAahH,EAAe6E,KAAK6Y,4BAA4B;YACtH1d,EAAe6E,KAAK8Y,2BAA2Bpd,QAAQyG,aAAahH,EAAe6E,KAAK8Y,0BAA0B;YAClH3d,EAAe6E,KAAKuJ,SAAS7N,QAAQyG,aAAahH,EAAe6E,KAAKuJ,QAAQ;YAC9EpO,EAAe6E,KAAKwJ,SAAS9N,QAAQyG,aAAahH,EAAe6E,KAAKwJ,QAAQ;YAC9ErO,EAAe6E,KAAKyJ,SAAS/N,QAAQyG,aAAahH,EAAe6E,KAAKyJ,QAAQ;YAC9EtO,EAAe6E,KAAKsJ,SAAS5N,QAAQyG,aAAahH,EAAe6E,KAAKsJ,QAAQ;YAC9EnO,EAAe6E,KAAKiC,eAAevG,QAAQyG,aAAahH,EAAe6E,KAAKiC,cAAc;YAC1F9G,EAAe6E,KAAK+Y,2BAA2Brd,QAAQyG,aAAahH,EAAe6E,KAAK+Y,0BAA0B;YAClH5d,EAAe6E,KAAKgZ,0BAA0Btd,QAAQyG,aAAahH,EAAe6E,KAAKgZ,yBAAyB;YAChH7d,EAAe6E,KAAKiZ,uBAAuBvd,QAAQyG,aAAahH,EAAe6E,KAAKiZ,sBAAsB;YAC1G9d,EAAe6E,KAAKkZ,iBAAiBxd,QAAQyG,aAAahH,EAAe6E,KAAKkZ,gBAAgB;YAC9F/d,EAAe6E,KAAKmZ,iBAAiBzd,QAAQyG,aAAahH,EAAe6E,KAAKmZ,gBAAgB;YAC9Fhe,EAAe6E,KAAKoZ,uBAAuB1d,QAAQyG,aAAahH,EAAe6E,KAAKoZ,sBAAsB;YAC1Gje,EAAe6E,KAAKqZ,uBAAuB3d,QAAQyG,aAAahH,EAAe6E,KAAKqZ,sBAAsB;YAC1Gle,EAAe6E,KAAKsZ,mBAAmB5d,QAAQyG,aAAahH,EAAe6E,KAAKsZ,kBAAkB;YAClGne,EAAe6E,KAAKoD,eAAe1H,QAAQyG,aAAahH,EAAe6E,KAAKoD,cAAc;YAC1FjI,EAAe6E,KAAKuZ,2BAA2B7d,QAAQyG,aAAahH,EAAe6E,KAAKuZ,0BAA0B;YAClHpe,EAAe6E,KAAKwZ,qBAAqB9d,QAAQyG,aAAahH,EAAe6E,KAAKwZ,oBAAoB;YACtGre,EAAe6E,KAAKyZ,wBAAwB/d,QAAQyG,aAAahH,EAAe6E,KAAKyZ,uBAAuB;YAC5Gte,EAAe6E,KAAK0Z,kBAAkBhe,QAAQyG,aAAahH,EAAe6E,KAAK0Z,iBAAiB;YAChGve,EAAe6E,KAAK2Z,oBAAoBje,QAAQyG,aAAahH,EAAe6E,KAAK2Z,mBAAmB;YACpGxe,EAAe6E,KAAKuH,gBAAgB7L,QAAQyG,aAAahH,EAAe6E,KAAKuH,eAAe;YAC5FpM,EAAe6E,KAAK4Z,iBAAiBle,QAAQyG,aAAahH,EAAe6E,KAAK4Z,gBAAgB;YAC9Fze,EAAe6E,KAAK6Z,yBAAyBne,QAAQyG,aAAahH,EAAe6E,KAAK6Z,wBAAwB;YAC9G1e,EAAe6E,KAAK8Z,mBAAmBpe,QAAQyG,aAAahH,EAAe6E,KAAK8Z,kBAAkB;YAClG3e,EAAe6E,KAAK+Z,+BAA+Bre,QAAQyG,aAAahH,EAAe6E,KAAK+Z,8BAA8B;YAC1H5e,EAAe6E,KAAKga,gCAAgCte,QAAQyG,aAAahH,EAAe6E,KAAKga,+BAA+B;YAC5H7e,EAAe6E,KAAKia,uBAAuBve,QAAQyG,aAAahH,EAAe6E,KAAKia,sBAAsB;YAC1G9e,EAAe6E,KAAKka,iBAAiBxe,QAAQyG,aAAahH,EAAe6E,KAAKka,gBAAgB;YAC9F/e,EAAe6E,KAAKma,wBAAwBze,QAAQyG,aAAahH,EAAe6E,KAAKma,uBAAuB;YAC5Ghf,EAAe6E,KAAKoa,uBAAuB1e,QAAQyG,aAAahH,EAAe6E,KAAKoa,sBAAsB;YAC1Gjf,EAAe6E,KAAKqa,6BAA6B3e,QAAQyG,aAAahH,EAAe6E,KAAKqa,4BAA4B;YACtHlf,EAAe6E,KAAKsa,yBAAyB5e,QAAQyG,aAAahH,EAAe6E,KAAKsa,wBAAwB;YAC9Gnf,EAAe6E,KAAKua,mBAAmB7e,QAAQyG,aAAahH,EAAe6E,KAAKua,kBAAkB;YAClGpf,EAAe6E,KAAKwa,yBAAyB9e,QAAQyG,aAAahH,EAAe6E,KAAKwa,wBAAwB;YAC9Grf,EAAe6E,KAAKya,mBAAmB/e,QAAQyG,aAAahH,EAAe6E,KAAKya,kBAAkB;YAClGtf,EAAe6E,KAAK0a,WAAWhf,QAAQyG,aAAahH,EAAe6E,KAAK0a,UAAU;YAClFvf,EAAe6E,KAAK2a,iBAAiBjf,QAAQyG,aAAahH,EAAe6E,KAAK2a,gBAAgB;YAC9Fxf,EAAe6E,KAAK4a,cAAclf,QAAQyG,aAAahH,EAAe6E,KAAK4a,aAAa;YACxFzf,EAAe6E,KAAK6a,aAAanf,QAAQyG,aAAahH,EAAe6E,KAAK6a,YAAY;YACtF1f,EAAe6E,KAAK8a,WAAWpf,QAAQyG,aAAahH,EAAe6E,KAAK8a,UAAU;YAClF3f,EAAe6E,KAAK+a,aAAarf,QAAQyG,aAAahH,EAAe6E,KAAK+a,YAAY;YACtF5f,EAAe6E,KAAKgb,eAAetf,QAAQyG,aAAahH,EAAe6E,KAAKgb,cAAc;YAC1F7f,EAAe6E,KAAKib,eAAevf,QAAQyG,aAAahH,EAAe6E,KAAKib,cAAc;YAC1F9f,EAAe6E,KAAKkb,yBAAyBxf,QAAQyG,aAAahH,EAAe6E,KAAKkb,wBAAwB;YAC9G/f,EAAe6E,KAAKmb,aAAazf,QAAQyG,aAAahH,EAAe6E,KAAKmb,YAAY;YACtFhgB,EAAe6E,KAAKob,mBAAmB1f,QAAQyG,aAAahH,EAAe6E,KAAKob,kBAAkB;YAClGjgB,EAAe6E,KAAKqb,kBAAkB3f,QAAQyG,aAAahH,EAAe6E,KAAKqb,iBAAiB;YAChGlgB,EAAe6E,KAAKsb,kBAAkB5f,QAAQyG,aAAahH,EAAe6E,KAAKsb,iBAAiB;YAChGngB,EAAe6E,KAAKub,mBAAmB7f,QAAQyG,aAAahH,EAAe6E,KAAKub,kBAAkB;YAClGpgB,EAAe6E,KAAKwb,kBAAkB9f,QAAQyG,aAAahH,EAAe6E,KAAKwb,iBAAiB;YAChGrgB,EAAe6E,KAAKyb,uBAAuB/f,QAAQyG,aAAahH,EAAe6E,KAAKyb,sBAAsB;YAC1GtgB,EAAe6E,KAAK0b,eAAehgB,QAAQyG,aAAahH,EAAe6E,KAAK0b,cAAc;YAC1FvgB,EAAe6E,KAAK2b,uBAAuBjgB,QAAQyG,aAAahH,EAAe6E,KAAK2b,sBAAsB;YAC1GxgB,EAAe6E,KAAK4b,iBAAiBlgB,QAAQyG,aAAahH,EAAe6E,KAAK4b,gBAAgB;YAC9FzgB,EAAe6E,KAAK6b,4BAA4BngB,QAAQyG,aAAahH,EAAe6E,KAAK6b,2BAA2B;YACpH1gB,EAAe6E,KAAK8b,sBAAsBpgB,QAAQyG,aAAahH,EAAe6E,KAAK8b,qBAAqB;YACxG3gB,EAAe6E,KAAK+b,2BAA2BrgB,QAAQyG,aAAahH,EAAe6E,KAAK+b,0BAA0B;YAClH5gB,EAAe6E,KAAKgc,qBAAqBtgB,QAAQyG,aAAahH,EAAe6E,KAAKgc,oBAAoB;YACtG7gB,EAAe6E,KAAKic,yBAAyBvgB,QAAQyG,aAAahH,EAAe6E,KAAKic,wBAAwB;YAC9G9gB,EAAe6E,KAAKkc,mBAAmBxgB,QAAQyG,aAAahH,EAAe6E,KAAKkc,kBAAkB;YAClG/gB,EAAe6E,KAAKmc,0BAA0BzgB,QAAQyG,aAAahH,EAAe6E,KAAKmc,yBAAyB;YAChHhhB,EAAe6E,KAAKoc,oBAAoB1gB,QAAQyG,aAAahH,EAAe6E,KAAKoc,mBAAmB;YACpGjhB,EAAe6E,KAAKqc,sBAAsB3gB,QAAQyG,aAAahH,EAAe6E,KAAKqc,qBAAqB;YACxGlhB,EAAe6E,KAAKsc,gBAAgB5gB,QAAQyG,aAAahH,EAAe6E,KAAKsc,eAAe;YAC5FnhB,EAAe6E,KAAKuc,iCAAiC7gB,QAAQyG,aAAahH,EAAe6E,KAAKuc,gCAAgC;YAC9H,IAAItlB,GAAG2D,mBAAmBO,EAAe6E,KAAKkK,UAAU,IAAI;gBAC1D/O,EAAe6E,KAAKkK,WAAW,EAC7B,UACA,WACA,aACA,YACA,UACA,YACA;AAEJ;YACA,IAAIjT,GAAG2D,mBAAmBO,EAAe6E,KAAKmK,qBAAqB,IAAI;gBACrEhP,EAAe6E,KAAKmK,sBAAsB,EACxC,OACA,OACA,OACA,OACA,OACA,OACA;AAEJ;YACA,IAAIlT,GAAG2D,mBAAmBO,EAAe6E,KAAKqK,YAAY,KAAK;gBAC7DlP,EAAe6E,KAAKqK,aAAa,EAC/B,WACA,YACA,SACA,SACA,OACA,QACA,QACA,UACA,aACA,WACA,YACA;AAEJ;YACA,IAAIpT,GAAG2D,mBAAmBO,EAAe6E,KAAKuK,uBAAuB,KAAK;gBACxEpP,EAAe6E,KAAKuK,wBAAwB,EAC1C,OACA,OACA,OACA,OACA,OACA,OACA,OACA,OACA,OACA,OACA,OACA;AAEJ;YACA,OAAOpP,EAAe6E;AACxB;AACD,MA9ID,CA8IGiL,IAAUgN,EAAQhN,YAAYgN,EAAQhN,UAAU,CAAC;AACrD,EAjJD,CAiJG+M,WAAWA,SAAS,CAAC;;AAGxB,IAAIwE;;AACJ,CAAEC;IACA,SAASC,EAAYC,MAAoBC;QACvC,IAAIlkB,IAAU;QACd,IAAIzB,GAAGgC,gBAAgB0jB,IAAkB;YACvCjkB,IAAUikB,EAAgBE,MAAM,MAAM,GAAG/a,MAAM+C,KAAK+X,GAAM;AAC5D;QACA,OAAOlkB;AACT;IACA+jB,EAASC,cAAcA;AACxB,EATD,CASGF,YAAYA,UAAU,CAAC;;AAG1B,IAAIM;;AACJ,CAAEC;IACA,SAASC,EAAc5hB;QACrB,KAAKnE,GAAG2B,QAAQwC,EAAekQ,aAAa6F,UAAU;YACpD/V,EAAekQ,aAAa6F,UAAUjN,WAAWc,OAAON,SAASuY,MAAM,OAAO;YAC9E7hB,EAAekQ,aAAa6F,QAAQnK,MAAMC,UAAU;YACpDiW,EAAe9hB;AACjB;AACF;IACA2hB,EAASC,gBAAgBA;IACzB,SAASE,EAAe9hB,GAAgB+hB,IAAO;QAC7C,MAAMC,IAA0BD,IAAOhW,OAAOkW,mBAAmBlW,OAAOmW;QACxE,MAAMC,IAA4BJ,IAAOzY,SAAS2Y,mBAAmB3Y,SAAS4Y;QAC9EF,EAAwB,cAAa,MAAMI,EAAKpiB;QAChDmiB,EAA0B,WAAU,MAAMC,EAAKpiB;AACjD;IACA2hB,EAASG,iBAAiBA;IAC1B,SAASO,EAAI7X,GAASxK,GAAgB4E,GAAM0d,IAAe;QACzD,IAAI9X,MAAY,MAAM;YACpBA,EAAQyX,iBAAiB,cAAcrX,KAAO2X,EAAK3X,GAAI5K,GAAgB4E,GAAM0d;AAC/E;AACF;IACAX,EAASU,MAAMA;IACf,SAASE,EAAK3X,GAAI5K,GAAgB4E,GAAM0d;QACtCxZ,WAAW6B,aAAaC;QACxBwX,EAAKpiB;QACLA,EAAekQ,aAAasS,iBAAiBC,YAAW;YACtDziB,EAAekQ,aAAa6F,QAAQhM,YAAYuY;YAChDtiB,EAAekQ,aAAa6F,QAAQtL,YAAY7F;YAChD5E,EAAekQ,aAAa6F,QAAQnK,MAAMC,UAAU;YACpD/C,WAAWyC,2BAA2BX,GAAI5K,EAAekQ,aAAa6F,SAAS/V,EAAe+V,QAAQvK;AAAO,YAC5GxL,EAAe+V,QAAQ2D;AAC5B;IACAiI,EAASY,OAAOA;IAChB,SAASH,EAAKpiB;QACZ,IAAInE,GAAG2B,QAAQwC,EAAekQ,aAAa6F,UAAU;YACnD,IAAI/V,EAAekQ,aAAasS,mBAAmB,GAAG;gBACpDE,aAAa1iB,EAAekQ,aAAasS;gBACzCxiB,EAAekQ,aAAasS,iBAAiB;AAC/C;YACA,IAAIxiB,EAAekQ,aAAa6F,QAAQnK,MAAMC,YAAY,QAAQ;gBAChE7L,EAAekQ,aAAa6F,QAAQnK,MAAMC,UAAU;AACtD;AACF;AACF;IACA8V,EAASS,OAAOA;IAChB,SAASO,EAAO3iB;QACd,IAAInE,GAAG2B,QAAQwC,EAAekQ,aAAa6F,UAAU;YACnD/V,EAAekQ,aAAa6F,QAAQ6M,WAAWlgB,YAAY1C,EAAekQ,aAAa6F;AACzF;AACF;IACA4L,EAASgB,SAASA;AACnB,EAnDD,CAmDGjB,YAAYA,UAAU,CAAC;;AAG1B,IAAImB;;AACJ,CAAEC;IACA,SAASC,EAASC,GAAOhjB;QACvB,OAAOA,EAAe4S,2BAA2BoQ,IAAQA,IAAQ;AACnE;IACAF,EAAKC,WAAWA;IAChB,SAASE,EAAajjB,GAAgBgjB,GAAOE;QAC3C,IAAI5lB,IAAU0lB,EAAMrmB;QACpB,IAAIqD,EAAeqT,sBAAsB;YACvC,IAAI8P,IAAgBD,EAAavmB,WAAWP;YAC5C,IAAI+mB,IAAgBnjB,EAAewU,2BAA2B,GAAG;gBAC/D2O,IAAgBnjB,EAAewU,2BAA2B;AAC5D;YACAlX,IAAUwI,IAAIE,UAAUvE,SAASnE,IAAU6lB,GAAenjB,EAAeyU;AAC3E;QACA,IAAIzU,EAAeyT,wBAAwB;YACzCnW,IAAU,IAAIA;AAChB;QACA,OAAOA;AACT;IACAwlB,EAAKG,eAAeA;IACpB,SAASG,EAAqBC;QAC5B,OAAO5hB,SAAS4hB,EAAajjB,QAAQ,SAAS;AAChD;IACA0iB,EAAKM,uBAAuBA;IAC5B,SAASE,EAAUC,GAAWC,GAAUC;QACtC,IAAIA,IAAW,GAAG;YAChBA,IAAW;AACb,eAAO,IAAIA,IAAWF,EAAUnnB,SAAS,GAAG;YAC1CqnB,IAAWF,EAAUnnB,SAAS;AAChC;QACAmnB,EAAUG,OAAOD,GAAU,GAAGF,EAAUG,OAAOF,GAAU,GAAG;AAC9D;IACAV,EAAKQ,YAAYA;IAEjB,SAASK,EAA6BxkB;QACpC,IAAI7B,IAAU;QACd,MAAMsmB,IAAazkB,EAAK/C;QACxB,KAAK,IAAIynB,IAAY,GAAGA,IAAYD,GAAYC,KAAa;YAC3D,MAAM3nB,IAAQiD,EAAK0kB;YACnB,IAAIhoB,GAAG2B,QAAQtB,IAAQ;gBACrBoB,EAAQyD,KAAK7E;AACf;AACF;QACA,OAAOoB;AACT;IACAwlB,EAAKa,+BAA+BA;AACrC,EA9CD,CA8CGd,QAAQA,MAAM,CAAC;;AAGlB,IAAIiB;;AACJ,CAAEC;IACA,SAASC,EAAG9nB,GAAO2F;QACjB,IAAIvE,IAAU;QACd,MAAM2mB,IAAQC,EAAQhoB,GAAO2F;QAC7B,IAAIoiB,IAAQ,GAAG;YACb,MAAMna,IAAOqa,KAAKC,MAAMD,KAAKE,IAAIJ,KAASE,KAAKE,IAAI;YACnD,OAAO,GAAGzkB,SAASmF,+BAA+Bkf,IAAQE,KAAKG,IAAI,MAAMxa,IAAO,MAAM,SAAStD,OAAOsD;AACxG;QACA,OAAOxM;AACT;IACAymB,EAAMC,KAAKA;IACX,SAAS5nB,EAAOF,GAAO2F;QACrB,IAAIvE,IAAU;QACd,IAAIzB,GAAG2B,QAAQtB,IAAQ;YACrB,IAAIL,GAAGqC,YAAYhC,IAAQ;gBACzBoB,IAAUpB,EAAMS,WAAWP;AAC7B,mBAAO,IAAIP,GAAGiD,aAAa5C,IAAQ;gBACjCoB,IAAUpB,EAAMwE,IAAItE;AACtB,mBAAO,IAAIP,GAAGyC,cAAcpC,IAAQ;gBAClCoB,IAAUpB,EAAMuE,OAAOrE;AACzB,mBAAO,IAAIP,GAAG8C,WAAWzC,IAAQ;gBAC/BoB,IAAUlB,EAAOwD,SAASoB,WAAW9E,IAAQ2F;AAC/C,mBAAO,IAAIhG,GAAG2C,WAAWtC,IAAQ;gBAC/BoB,IAAUlB,EAAOwD,SAASsB,YAAYhF,IAAQ2F;AAChD,mBAAO,IAAIhG,GAAGmD,YAAY9C,IAAQ;gBAChCoB,IAAUlB,EAAOwD,SAASe,aAAazE,GAAO2F,IAAeA;AAC/D,mBAAO,IAAIhG,GAAGmC,aAAa9B,IAAQ;gBACjCoB,IAAUpB,EAAME;AAClB,mBAAO,IAAIP,GAAG4B,cAAcvB,IAAQ;gBAClC,KAAK,MAAMqoB,KAAWroB,GAAO;oBAC3B,IAAIA,EAAMkF,eAAemjB,IAAU;wBACjCjnB;AACF;AACF;AACF,mBAAO;gBACL,KAAKzB,GAAGgC,gBAAgB3B,OAAWL,GAAGwC,cAAcnC,IAAQ;oBAC1DoB,IAAUpB,EAAMS,WAAWP;AAC7B;AACF;AACF;QACA,OAAOkB;AACT;IACAymB,EAAM3nB,SAASA;IACf,SAAS8nB,EAAQhoB,GAAO2F;QACtB,IAAIoiB,IAAQ;QACZ,IAAIpoB,GAAG2B,QAAQtB,IAAQ;YACrB,IAAIL,GAAGiC,cAAc5B,IAAQ;gBAC3B+nB,IAAQ;AACV,mBAAO,IAAIpoB,GAAG8B,cAAczB,IAAQ;gBAClC+nB,IAAQ/nB,EAAME,SAAS;AACzB,mBAAO,IAAIP,GAAG6B,eAAexB,IAAQ;gBACnC+nB,IAAQ;AACV,mBAAO,IAAIpoB,GAAGkC,cAAc7B,IAAQ;gBAClC+nB,IAAQC,EAAQhoB,EAAMS,YAAYkF;AACpC,mBAAO,IAAIhG,GAAGyC,cAAcpC,IAAQ;gBAClC+nB,IAAQC,EAAQhoB,EAAMS,YAAYkF;AACpC,mBAAO,IAAIhG,GAAGqC,YAAYhC,IAAQ;gBAChC+nB,IAAQC,EAAQhoB,EAAMS,YAAYkF;AACpC,mBAAO,IAAIhG,GAAG8C,WAAWzC,IAAQ;gBAC/B+nB,IAAQC,EAAQtkB,SAASoB,WAAW9E,IAAQ2F;AAC9C,mBAAO,IAAIhG,GAAG2C,WAAWtC,IAAQ;gBAC/B+nB,IAAQC,EAAQtkB,SAASsB,YAAYhF,IAAQ2F;AAC/C,mBAAO,IAAIhG,GAAGmD,YAAY9C,IAAQ;gBAChC+nB,IAAQC,EAAQtkB,SAASe,aAAazE,GAAO2F,IAAeA;AAC9D,mBAAO,IAAIhG,GAAGmC,aAAa9B,IAAQ;gBACjC,MAAM2E,IAAc3E,EAAME;gBAC1B,KAAK,IAAI0E,IAAa,GAAGA,IAAaD,GAAaC,KAAc;oBAC/DmjB,KAASC,EAAQhoB,EAAM4E,IAAae;AACtC;AACF,mBAAO,IAAIhG,GAAG4B,cAAcvB,IAAQ;gBAClC,KAAK,MAAMqoB,KAAWroB,GAAO;oBAC3B,IAAIA,EAAMkF,eAAemjB,IAAU;wBACjCN,KAASC,EAAQK,GAAS1iB,KAAgBqiB,EAAQhoB,EAAMqoB,IAAU1iB;AACpE;AACF;AACF;AACF;QACA,OAAOoiB;AACT;AACD,EA/ED,CA+EGH,SAASA,OAAO,CAAC;;AAGpB,IAAIU;;AACJ,CAAEC;IACA,SAASC,EAAiBvlB,GAAMa;QAC9B,IAAI+Z,IAAa;QACjB,KAAK,MAAM5Y,KAAOhC,GAAM;YACtB,IAAIA,EAAKiC,eAAeD,IAAM;gBAC5B4Y,EAAWhZ,KAAKI;AAClB;AACF;QACA,IAAInB,EAAeiT,mBAAmB;YACpC,IAAI0R,IAAW,IAAIC,KAAKC,cAAc,GAAG;gBACvCC,SAAS;gBACTC,aAAa;;YAEfhL,IAAaA,EAAWiL,KAAKL,EAASM;YACtC,KAAKjlB,EAAekT,sCAAsC;gBACxD6G,IAAaA,EAAWmL;AAC1B;AACF;QACA,OAAOnL;AACT;IACA0K,EAAKC,mBAAmBA;IACxB,SAASS,EAAgBjpB;QACvB,MAAMR,IAAS,CAAC;QAChBA,EAAO0pB,OAAOC,gBAAgBnpB;QAC9B,OAAOR;AACT;IACA+oB,EAAKU,kBAAkBA;AACxB,EA3BD,CA2BGX,QAAQA,MAAM,CAAC;;AAGlB,IAAIc;;AACJ,CAAEC;IACA,SAAS3D,EAAc5hB;QACrB,KAAKnE,GAAG2B,QAAQwC,EAAekQ,aAAagC,cAAc;YACxDlS,EAAekQ,aAAagC,cAAcpJ,WAAWc,OAAON,SAASuY,MAAM,OAAO;YAClF7hB,EAAekQ,aAAagC,YAAYtG,MAAMC,UAAU;YACxDiW,EAAe9hB;AACjB;AACF;IACAulB,EAAa3D,gBAAgBA;IAC7B,SAASE,EAAe9hB,GAAgBqiB,IAAM;QAC5C,MAAML,IAA0BK,IAAMtW,OAAOkW,mBAAmBlW,OAAOmW;QACvE,MAAMC,IAA4BE,IAAM/Y,SAAS2Y,mBAAmB3Y,SAAS4Y;QAC7EF,EAAwB,gBAAe,MAAMI,EAAKpiB;QAClDgiB,EAAwB,UAAS,MAAMI,EAAKpiB;QAC5CmiB,EAA0B,WAAU,MAAMC,EAAKpiB;AACjD;IACAulB,EAAazD,iBAAiBA;IAC9B,SAASS,EAAK3X,GAAI5K;QAChB8I,WAAW6B,aAAaC;QACxB9B,WAAWyC,2BAA2BX,GAAI5K,EAAekQ,aAAagC,aAAa;AACrF;IACAqT,EAAahD,OAAOA;IACpB,SAASH,EAAKpiB;QACZ,IAAInE,GAAG2B,QAAQwC,EAAekQ,aAAagC,gBAAgBlS,EAAekQ,aAAagC,YAAYtG,MAAMC,YAAY,QAAQ;YAC3H7L,EAAekQ,aAAagC,YAAYtG,MAAMC,UAAU;AAC1D;AACF;IACA0Z,EAAanD,OAAOA;IACpB,SAASO,EAAO3iB;QACd,IAAInE,GAAG2B,QAAQwC,EAAekQ,aAAagC,cAAc;YACvDlS,EAAekQ,aAAagC,YAAY0Q,WAAWlgB,YAAY1C,EAAekQ,aAAagC;AAC7F;AACF;IACAqT,EAAa5C,SAASA;IACtB,SAAS6C,EAAYxlB,GAAgBylB,GAAY7gB;QAC/C,MAAM8gB,IAAW5c,WAAWc,OAAO5J,EAAekQ,aAAagC,aAAa,OAAO;QACnFpJ,WAAWwB,eAAeob,GAAU,QAAQ,UAAUD;QACtD3c,WAAWwB,eAAeob,GAAU,QAAQ,QAAQ9gB;QACpD,OAAO8gB;AACT;IACAH,EAAaC,cAAcA;AAC5B,EAzCD,CAyCGF,gBAAgBA,cAAc,CAAC;;AAGlC;IACE,IAAIK,IAAiB,CAAC;IACtB,IAAIC,IAAiB,CAAC;IACtB,IAAIC,IAAuB;IAC3B,IAAIC,IAAuB;IAC3B,SAASC;QACPjd,WAAWE,KAAK2c,EAAe5I,kBAAkBvS;YAC/C,IAAIlN,IAAU;YACd,IAAIzB,GAAG2B,QAAQgN,MAAYA,EAAQwb,aAAa1W,UAAUE,6BAA6B;gBACrF,MAAMyW,IAAqBzb,EAAQ0b,aAAa5W,UAAUE;gBAC1D,IAAI3T,GAAG8B,cAAcsoB,IAAqB;oBACxC,MAAMjmB,IAAiBJ,SAASoE,mBAAmBiiB,GAAoBN;oBACvE,IAAI3lB,EAAeoE,UAAUvI,GAAG4B,cAAcuC,EAAetE,SAAS;wBACpEkmB,EAAcjS,QAAQE,QAAQE,kBAAkB/P,EAAetE,QAAQ8O;AACzE,2BAAO;wBACL,KAAKmb,EAAelhB,UAAU;4BAC5BC,QAAQC,MAAMghB,EAAe/gB,KAAK6Y,2BAA2Brd,QAAQ,sBAAsBkP,UAAUE;4BACrGlS,IAAU;AACZ;AACF;AACF,uBAAO;oBACL,KAAKqoB,EAAelhB,UAAU;wBAC5BC,QAAQC,MAAMghB,EAAe/gB,KAAK8Y,yBAAyBtd,QAAQ,sBAAsBkP,UAAUE;wBACnGlS,IAAU;AACZ;AACF;AACF;YACA,OAAOA;AAAO;AAElB;IACA,SAASskB,EAAc5hB;QACrBohB,QAAQE,YAAYthB,EAAesW,OAAOqE,gBAAgB3a,EAAekQ,aAAa1F;QACtFkX,QAAQE,cAAc5hB;QACtBslB,YAAY1D,cAAc5hB;QAC1B,KAAKnE,GAAG8B,cAAcqC,EAAekQ,aAAa1F,QAAQiI,KAAK;YAC7D,IAAI5W,GAAG8B,cAAcqC,EAAeyS,KAAK;gBACvCzS,EAAekQ,aAAa1F,QAAQiI,KAAKzS,EAAeyS;AAC1D,mBAAO;gBACLzS,EAAekQ,aAAa1F,QAAQiI,KAAK2S,OAAOC;AAClD;YACArlB,EAAekQ,aAAaQ,QAAQ;AACtC;QACA1Q,EAAekQ,aAAa1F,QAAQ2b,UAAU9D,IAAI;QAClDriB,EAAekQ,aAAa1F,QAAQ4b,gBAAgB9W,UAAUE;QAC9D,IAAI3T,GAAG8B,cAAcqC,EAAe0S,QAAQ;YAC1C,MAAM2T,IAAUrmB,EAAe0S,MAAM9K,MAAM;YAC3C,MAAM0e,IAAgBD,EAAQjqB;YAC9B,KAAK,IAAImqB,IAAa,GAAGA,IAAaD,GAAeC,KAAc;gBACjEvmB,EAAekQ,aAAa1F,QAAQ2b,UAAU9D,IAAIgE,EAAQE,GAAY1pB;AACxE;AACF;QACA,IAAImD,EAAe6T,sBAAsB;YACvC7T,EAAekQ,aAAa1F,QAAQ2b,UAAU9D,IAAI;YAClDriB,EAAekQ,aAAakB,eAAe;AAC7C;QACA,KAAKwU,EAAexkB,eAAepB,EAAekQ,aAAa1F,QAAQiI,KAAK;YAC1EmT,EAAe5lB,EAAekQ,aAAa1F,QAAQiI,MAAMzS;YACzD6lB;AACF;QACAW,EAAuBxmB;QACvBymB,GAAoBzmB;QACpBohB,QAAQE,YAAYthB,EAAesW,OAAOsE,kBAAkB5a,EAAekQ,aAAa1F;AAC1F;IACA,SAASgc,EAAuBxmB,GAAgB0mB,IAAkB;QAChE,IAAIvnB,IAAOymB,EAAe5lB,EAAekQ,aAAa1F,QAAQiI,IAAItT;QAClE,IAAItD,GAAGqD,WAAWC,IAAO;YACvBmB,QAAQ6H,iBAAiBhJ,GAAMwmB,IAAiBgB;gBAC9CC,EAA8B5mB,GAAgB0mB,GAAiBC;AAAS;AAE5E,eAAO;YACLC,EAA8B5mB,GAAgB0mB,GAAiBvnB;AACjE;AACF;IACA,SAASynB,EAA8B5mB,GAAgB0mB,GAAiBvnB;QACtE,MAAM0nB,IAAuBC,EAA2B9mB;QACxD0hB,QAAQU,KAAKpiB;QACbslB,YAAYlD,KAAKpiB;QACjBA,EAAeb,OAAOA;QACtBa,EAAekQ,aAAa1F,QAAQC,YAAY;QAChDzK,EAAekQ,aAAaO,WAAW;QACvCzQ,EAAekQ,aAAaU,qBAAqB;QACjD5Q,EAAekQ,aAAagB,kBAAkB;QAC9ClR,EAAekQ,aAAaqB,wBAAwB;QACpDvR,EAAekQ,aAAa+B,iBAAiB,CAAC;QAC9C8U,EAAsB/mB,GAAgBb;QACtC,MAAM6nB,IAAWle,WAAWc,OAAO5J,EAAekQ,aAAa1F,SAAS,OAAO;QAC/E,IAAIkc,GAAiB;YACnBM,EAASb,UAAU9D,IAAI;AACzB;QACA,IAAIriB,EAAeoQ,OAAOiC,WAAWxW,GAAGmC,aAAamB,IAAO;YAC1D,MAAM6X,IAAwBnb,GAAG2B,QAAQ2B,EAAKa,EAAekQ,aAAaC,4BAA4B;YACtG,MAAM8W,IAAcpE,IAAIc,6BAA6BxkB;YACrDa,EAAeb,OAAO8nB;YACtB,KAAK,IAAIC,IAAY,GAAGA,IAAYlnB,EAAeoQ,OAAOE,gBAAgB4W,KAAa;gBACrF,MAAMC,IAAkBD,IAAYlnB,EAAekQ,aAAaC;gBAChE,IAAIgX,KAAmBF,EAAY7qB,SAAS,GAAG;oBAC7C,MAAMgrB,IAAaH,EAAYE;oBAC/BnnB,EAAekQ,aAAaU,qBAAqB;oBACjD5Q,EAAekQ,aAAaW,yBAAyBsW;oBACrDE,EAA2BD,GAAYJ,GAAUhnB,GAAgBmnB,GAAiBN,EAAqBK,IAAYlnB,EAAeoQ,OAAOE,gBAAgB0G;AAC3J;AACF;AACF,eAAO;YACLhX,EAAekQ,aAAaU,qBAAqB;YACjD5Q,EAAekQ,aAAaW,yBAAyB;YACrDwW,EAA2BloB,GAAM6nB,GAAUhnB,GAAgB,MAAM6mB,EAAqB,IAAI,GAAG;AAC/F;QACAS,EAAgCtnB;QAChCunB,EAAsBvnB;QACtBwnB,EAAuBxnB;QACvBynB,GAAyBznB;QACzBA,EAAekQ,aAAaoB,cAAc;AAC5C;IACA,SAAS+V,EAA2BloB,GAAM6nB,GAAUhnB,GAAgB6jB,GAAWxY,GAAWqc,GAAcC;QACtG,MAAMC,IAAiB9e,WAAWc,OAAOod,GAAU,OAAOU,IAAe,IAAI,6BAA6B;QAC1G,MAAMG,IAAsB7nB,EAAekQ,aAAaiC;QACxD,KAAKtW,GAAG2B,QAAQ2B,IAAO;YACrB,MAAM2oB,IAAShf,WAAWc,OAAOge,GAAgB,OAAO;YACxD9e,WAAWwB,eAAewd,GAAQ,QAAQ,gBAAgBnC,EAAe/gB,KAAKsZ;YAC9E,IAAIle,EAAeiR,SAAS6G,kBAAkB;gBAC5C,MAAMiQ,IAAajf,WAAWwB,eAAewd,GAAQ,QAAQ,uBAAuB,GAAGnC,EAAe/gB,KAAK8Z,mBAAmBiH,EAAe/gB,KAAKiC;gBAClJkhB,EAAWC,UAAU,MAAMC,EAAsBjoB;AACnD;AACF,eAAO;YACL4nB,EAAeM,WAAW,MAAMC,EAAuBP,GAAgB5nB,GAAgB6nB;YACvF,IAAI7nB,EAAeoQ,OAAOiC,WAAWxW,GAAGiC,cAAc+lB,IAAY;gBAChE+D,EAAeQ,aAAa9Y,UAAUG,wCAAwCoU,EAAUlnB;AAC1F;YACA,IAAIgrB,KAAqB3nB,EAAeoQ,OAAO4G,yBAAyBhX,EAAeoQ,OAAOE,iBAAiB,KAAKtQ,EAAeiQ,aAAaqC,MAAM;gBACpJsV,EAAeQ,aAAa,aAAa;gBACzCR,EAAeS,cAAc,MAAMC,EAA0BV,GAAgB5nB,GAAgB6jB;gBAC7F+D,EAAeW,YAAY,MAAMC,EAAwBZ,GAAgB5nB;gBACzE4nB,EAAea,aAAc7d,KAAOA,EAAGC;gBACvC+c,EAAec,SAAS,MAAMC,EAAqB3oB,GAAgB6jB;AACrE;YACA,IAAI+E,IAAwBhB;YAC5B,IAAIjS,IAAc;YAClB,IAAIkT,IAAQ;YACZ,IAAI7oB,EAAe2V,YAAYtD,SAAS;gBACtCsD,IAAc7M,WAAWc,OAAOge,GAAgB,OAAO;gBACvDiB,IAAQ/f,WAAWc,OAAOge,GAAgB,OAAO;gBACjDgB,IAAwBC;AAC1B;YACA,MAAMC,IAAe;gBACnBC,QAAQnB;gBACRjS;gBACAkT;gBACAG,gBAAgB;;YAElBhpB,EAAekQ,aAAaqB,sBAAsBxQ,KAAK+nB;YACvD9oB,EAAekQ,aAAaiC,6BAA6BnS,EAAekQ,aAAaqB,sBAAsBnV,SAAS;YACpH,IAAIP,GAAGmC,aAAamB,IAAO;gBACzB8pB,EAAgBL,GAAuB5oB,GAAgBb,GAAM;AAC/D,mBAAO,IAAItD,GAAG8C,WAAWQ,IAAO;gBAC9B8pB,EAAgBL,GAAuB5oB,GAAgBJ,SAASoB,WAAW7B,IAAO;AACpF,mBAAO,IAAItD,GAAGmD,YAAYG,IAAO;gBAC/B+pB,EAAiBN,GAAuB5oB,GAAgBJ,SAASe,aAAaxB,GAAMa,EAAeY,8BAA8BijB,GAAW;AAC9I,mBAAO,IAAIhoB,GAAG2C,WAAWW,IAAO;gBAC9B+pB,EAAiBN,GAAuB5oB,GAAgBJ,SAASsB,YAAY/B,IAAO0kB,GAAW;AACjG,mBAAO,IAAIhoB,GAAG4B,cAAc0B,IAAO;gBACjC+pB,EAAiBN,GAAuB5oB,GAAgBb,GAAM0kB,GAAW;AAC3E,mBAAO;gBACLqF,EAAiBN,GAAuB5oB,GAAgBwkB,IAAIW,gBAAgBhmB,IAAO0kB,GAAW;AAChG;YACAsF,EAA+BnpB,EAAekQ,aAAaiC,4BAA4BnS;YACvFopB,EAAoCppB,GAAgB4nB,GAAgBzoB,GAAM0kB;YAC1E,IAAIhoB,GAAG2B,QAAQ6N,IAAY;gBACzBuc,EAAevc,YAAYA;AAC7B;YACArL,EAAekQ,aAAaK,gBAAgB3E,MAAMC,UAAU;YAC5D,IAAI7L,EAAeiQ,aAAaqC,MAAM;gBACpCsV,EAAeyB,aAAcze;oBAC3B0e,EAA6B1e,GAAI5K,GAAgBb,GAAMyoB,GAAgB/D;AAAU;AAErF;AACF;AACF;IACA,SAASyF,EAA6B1e,GAAI5K,GAAgBb,GAAMyoB,GAAgB/D;QAC9E,IAAI0F,IAAmB;QACvB,IAAI1tB,GAAG2B,QAAQoN,IAAK;YAClB9B,WAAW6B,aAAaC;AAC1B;QACA8X,aAAa1iB,EAAekQ,aAAaM;QACzCxQ,EAAekQ,aAAaM,oBAAoB;QAChDxQ,EAAekQ,aAAaO,WAAW;QACvCmX,EAAezB,UAAU9D,IAAI;QAC7BuF,EAAeQ,aAAa,mBAAmB;QAC/CR,EAAeQ,aAAa,aAAa;QACzCR,EAAejlB,YAAYzC,KAAKC,UAAUP,SAASE,qBAAqBX,GAAMwmB,GAAgB3lB,IAAiBA,EAAesW,OAAOuF,oBAAoB7b,EAAewT;QACxKoU,EAAe4B;QACf1gB,WAAWqD,cAAcyb;QACzBA,EAAe6B,SAAS;YACtBjD,EAAuBxmB,GAAgB;YACvC,IAAInE,GAAG8B,cAAc4rB,IAAmB;gBACtCG,EAAoB1pB,GAAgBupB;AACtC;AAAA;QAEF3B,EAAe+B,YAAaC;YAC1B,IAAIA,EAAIC,SAAS,UAAuB;gBACtCD,EAAI/e;gBACJ+c,EAAeQ,aAAa,mBAAmB;AACjD,mBAAO,IAAI0B,GAAaF,MAAQA,EAAIC,SAAS,SAAqB;gBAChED,EAAI/e;gBACJ,MAAMtJ,IAAWqmB,EAAejlB;gBAChC,MAAMonB,IAAUnqB,SAASoE,mBAAmBzC,GAAUokB;gBACtD,IAAIoE,EAAQ3lB,QAAQ;oBAClBmlB,IAAmB5D,EAAe/gB,KAAKqb;oBACvC,IAAIjgB,EAAeoQ,OAAOiC,SAAS;wBACjC,IAAIxW,GAAG2B,QAAQusB,EAAQruB,SAAS;4BAC9BsE,EAAeb,KAAK0kB,KAAakG,EAAQruB;AAC3C,+BAAO;4BACLsE,EAAeb,KAAKukB,OAAOG,GAAW;4BACtC0F,IAAmB5D,EAAe/gB,KAAKyb;4BACvC,IAAIwD,MAAc7jB,EAAekQ,aAAaC,6BAA6BnQ,EAAekQ,aAAaC,4BAA4B,GAAG;gCACpInQ,EAAekQ,aAAaC,6BAA6BnQ,EAAeoQ,OAAOE;AACjF;AACF;AACF,2BAAO;wBACLtQ,EAAeb,OAAO4qB,EAAQruB;AAChC;AACF;gBACAksB,EAAeQ,aAAa,mBAAmB;AACjD,mBAAO,IAAIwB,EAAIC,SAAS,SAAqB;gBAC3CD,EAAI/e;gBACJvB,SAAS0gB,YAAY;AACvB;AAAA;AAEJ;IACA,SAASlD,EAA2B9mB;QAClC,MAAM1C,IAAU;QAChBokB,QAAQU,KAAKpiB;QACbslB,YAAYlD,KAAKpiB;QACjB,IAAIA,EAAekQ,aAAaO,YAAYzQ,EAAekQ,aAAagB,iBAAiB;YACvF,MAAM+Y,IAAuBjqB,EAAekQ,aAAaqB,sBAAsBnV;YAC/E,KAAK,IAAI8tB,IAAqB,GAAGA,IAAqBD,GAAsBC,KAAsB;gBAChG5sB,EAAQyD,KAAKf,EAAekQ,aAAaqB,sBAAsB2Y,GAAoBnB,OAAO1d;AAC5F;AACF;QACA,OAAO/N;AACT;IACA,SAAS6qB,EAAuBY,GAAQ/oB,GAAgB6jB;QACtDnC,QAAQU,KAAKpiB;QACbslB,YAAYlD,KAAKpiB;QACjB,MAAMqL,IAAY0d,EAAO1d;QACzB,MAAMH,IAAa6d,EAAO7d;QAC1B,MAAMif,IAAgBnqB,EAAekQ,aAAaqB,sBAAsBnV;QACxE,IAAI4D,EAAeyV,aAAapD,SAAS;YACvC,MAAMyW,IAAe9oB,EAAekQ,aAAaqB,sBAAsBsS;YACvE,IAAIhoB,GAAG2B,QAAQsrB,EAAaE,iBAAiB;gBAC3CF,EAAaE,eAAepd,MAAMR,MAAM,GAAG0d,EAAaC,OAAO1d;gBAC/Dyd,EAAaE,eAAepd,MAAMwe,QAAQ,IAAItB,EAAaC,OAAO7d;AACpE;AACF;QACA,KAAK,IAAImf,IAAc,GAAGA,IAAcF,GAAeE,KAAe;YACpE,MAAMvB,IAAe9oB,EAAekQ,aAAaqB,sBAAsB8Y;YACvE,IAAIvB,EAAaC,WAAWA,GAAQ;gBAClC,IAAI/oB,EAAeoQ,OAAO2G,sBAAsB;oBAC9C+R,EAAaC,OAAO1d,YAAYA;oBAChCyd,EAAaC,OAAO7d,aAAaA;AACnC;gBACA,IAAIlL,EAAeyV,aAAapD,WAAWxW,GAAG2B,QAAQsrB,EAAaE,iBAAiB;oBAClFF,EAAaE,eAAepd,MAAMR,MAAM,GAAG0d,EAAaC,OAAO1d;oBAC/Dyd,EAAaE,eAAepd,MAAMwe,QAAQ,IAAItB,EAAaC,OAAO7d;AACpE;AACF;AACF;AACF;IACA,SAASod,EAA0BS,GAAQ/oB,GAAgB6jB;QACzD7jB,EAAekQ,aAAa6B,iBAAiB;QAC7C/R,EAAekQ,aAAa8B,0BAA0B6R;QACtDkF,EAAO5C,UAAU9D,IAAI;AACvB;IACA,SAASmG,EAAwBO,GAAQ/oB;QACvCA,EAAekQ,aAAa6B,iBAAiB;QAC7CgX,EAAO5C,UAAUxD,OAAO;AAC1B;IACA,SAASgG,EAAqB3oB,GAAgB6jB;QAC5C7jB,EAAekQ,aAAa6B,iBAAiB;QAC7CuY,EAAmBtqB,GAAgBA,EAAekQ,aAAa8B,yBAAyB6R;AAC1F;IACA,SAASyG,EAAmBtqB,GAAgBwjB,GAAUC;QACpD,IAAID,MAAaC,GAAU;YACzB,MAAM8G,IAAavqB,EAAeb,KAAKskB;YACvC,MAAM+G,IAAaxqB,EAAeb,KAAKqkB;YACvC,IAAIiH,IAAkBzqB,EAAekQ,aAAaS,kBAAkB8S;YACpE,IAAIiH,IAAkB1qB,EAAekQ,aAAaS,kBAAkB6S;YACpE,KAAK3nB,GAAG2B,QAAQitB,IAAkB;gBAChCA,IAAkB,CAAC;AACrB;YACA,KAAK5uB,GAAG2B,QAAQktB,IAAkB;gBAChCA,IAAkB,CAAC;AACrB;YACA1qB,EAAeb,KAAKskB,KAAY+G;YAChCxqB,EAAeb,KAAKqkB,KAAY+G;YAChCvqB,EAAekQ,aAAaS,kBAAkB8S,KAAYiH;YAC1D1qB,EAAekQ,aAAaS,kBAAkB6S,KAAYiH;YAC1D,IAAIzqB,EAAekQ,aAAaC,6BAA6BnQ,EAAeoQ,OAAOE,iBAAiB,KAAKmT,GAAU;gBACjHzjB,EAAekQ,aAAaC,6BAA6BnQ,EAAeoQ,OAAOE;AACjF,mBAAO,IAAImT,IAAWzjB,EAAekQ,aAAaC,2BAA2B;gBAC3EnQ,EAAekQ,aAAaC,6BAA6BnQ,EAAeoQ,OAAOE;AACjF;YACAkW,EAAuBxmB;YACvB0pB,EAAoB1pB,GAAgB2lB,EAAe/gB,KAAKqb;AAC1D;AACF;IACA,SAASkJ,EAA+BwB,GAAmB3qB;QACzD,MAAM8oB,IAAe9oB,EAAekQ,aAAaqB,sBAAsBoZ;QACvE,IAAI3qB,EAAe2V,YAAYtD,SAAS;YACtC,IAAIuY,IAAkB;YACtB,IAAIC,IAAe;YACnB,IAAIC,IAAyB;YAC7B,MAAMC,IAAgBjC,EAAaC,OAAOiC,iBAAiB;YAC3D,MAAMC,IAAsBF,EAAc3uB;YAC1C0sB,EAAanT,YAAYlL,YAAY;YACrC,KAAK,IAAIygB,IAAoB,GAAGA,IAAoBD,GAAqBC,KAAqB;gBAC5F,MAAMC,IAAeJ,EAAcG;gBACnC,IAAIC,EAAalf,eAAe,GAAG;oBACjC,IAAImf,IAAatiB,WAAWsE,UAAU+d,GAAc/f;oBACpD,IAAIwf,MAAoB,GAAG;wBACzBC,IAAeO;AACjB;oBACAA,KAAcP;oBACd,MAAMQ,IAAaviB,WAAWc,OAAOkf,EAAanT,aAAa,OAAO;oBACtE,MAAM2V,IAAgBtrB,EAAe2V,YAAYsC,UAAU,MAAgB;oBAC3E,IAAIjY,EAAe2V,YAAYqC,YAAY;wBACzCqT,EAAW5gB,YAAY,GAAG3E,IAAIE,UAAU4kB,GAAiBK,EAAoBtuB,WAAWP,UAAUkvB;AACpG,2BAAO;wBACLD,EAAW5gB,YAAY,GAAGmgB,IAAkBU;AAC9C;oBACA,MAAMC,IAASH,IAAaD,EAAalf,eAAe,IAAIof,EAAWpf,eAAe;oBACtFof,EAAWzf,MAAMR,MAAM,GAAGmgB;oBAC1BT,IAAyB3G,KAAKqH,IAAIV,GAAwBO,EAAWvf;AACvE;gBACA8e;AACF;YACA9B,EAAanT,YAAY/J,MAAM6f,SAAS,GAAG3C,EAAaD,MAAM5c;YAC9D6c,EAAanT,YAAY/J,MAAM8f,QAAQ,GAAGZ;AAC5C,eAAO;YACL,IAAIjvB,GAAG2B,QAAQsrB,EAAanT,cAAc;gBACxCmT,EAAanT,YAAYiN,WAAWlgB,YAAYomB,EAAanT;gBAC7DmT,EAAanT,cAAc;AAC7B;AACF;AACF;IACA,SAASyT,EAAoCppB,GAAgB4nB,GAAgBzoB,GAAM0kB;QACjF,IAAI7jB,EAAeyV,aAAapD,SAAS;YACvC,MAAMgY,IAAcrqB,EAAekQ,aAAaiC;YAChD,MAAM6W,IAAiBlgB,WAAWc,OAAOge,GAAgB,OAAO;YAChEoB,EAAeK,aAAavgB,WAAW6B;YACvC,MAAMghB,IAAkB3rB,EAAeoQ,OAAOiC,WAAWxW,GAAGmC,aAAagC,EAAeb,SAASa,EAAeb,KAAK/C,SAAS;YAC9H,IAAI4D,EAAeiQ,aAAaqC,QAAQtS,EAAeyV,aAAamC,gBAAgB;gBAClF,MAAMgU,IAAa9iB,WAAWwB,eAAe0e,GAAgB,UAAU,QAAQrD,EAAe/gB,KAAK2b;gBACnGqL,EAAW5D,UAAU,MAAMsB,EAA6B,MAAMtpB,GAAgBb,GAAMyoB,GAAgB/D;gBAEpG+H,EAAWvC,aAAavgB,WAAW6B;gBACnC+W,QAAQW,IAAIuJ,GAAY5rB,GAAgB2lB,EAAe/gB,KAAK4b;AAC9D;YACA,IAAImL,KAAmB3rB,EAAeiQ,aAAaqC,QAAQtS,EAAeoQ,OAAO4G,yBAAyBhX,EAAeyV,aAAaiC,mBAAmB;gBACvJ,MAAMmU,IAAkB/iB,WAAWwB,eAAe0e,GAAgB,UAAU,cAAcrD,EAAe/gB,KAAK6b;gBAC9GoL,EAAgBxC,aAAavgB,WAAW6B;gBACxC,IAAIkZ,IAAY,IAAI7jB,EAAeb,KAAK/C,SAAS,GAAG;oBAClDyvB,EAAgBC,WAAW;AAC7B,uBAAO;oBACLD,EAAgB7D,UAAU,MAAMsC,EAAmBtqB,GAAgB6jB,GAAWA,IAAY;AAC5F;gBACAnC,QAAQW,IAAIwJ,GAAiB7rB,GAAgB2lB,EAAe/gB,KAAK8b;gBACjE,MAAMqL,IAAiBjjB,WAAWwB,eAAe0e,GAAgB,UAAU,aAAarD,EAAe/gB,KAAK+b;gBAC5GoL,EAAe1C,aAAavgB,WAAW6B;gBACvC,IAAIkZ,IAAY,IAAI,GAAG;oBACrBkI,EAAeD,WAAW;AAC5B,uBAAO;oBACLC,EAAe/D,UAAU,MAAMsC,EAAmBtqB,GAAgB6jB,GAAWA,IAAY;AAC3F;gBACAnC,QAAQW,IAAI0J,GAAgB/rB,GAAgB2lB,EAAe/gB,KAAKgc;AAClE;YACA,IAAI+K,KAAmB3rB,EAAeyV,aAAa0B,gBAAgB;gBACjE,MAAM6U,IAAaljB,WAAWwB,eAAe0e,GAAgB,UAAU,QAAQrD,EAAe/gB,KAAKiZ;gBACnGmO,EAAWhE,UAAU,MAAMxL,EAAOxc,GAAgBb;gBAClD6sB,EAAW3C,aAAavgB,WAAW6B;gBACnC+W,QAAQW,IAAI2J,GAAYhsB,GAAgB2lB,EAAe/gB,KAAKka;AAC9D;YACA,IAAI6M,KAAmB3rB,EAAeyV,aAAayB,yBAAyB;gBAC1E,MAAM+U,IAAgBnjB,WAAWwB,eAAe0e,GAAgB,UAAU,YAAYrD,EAAe/gB,KAAKgZ;gBAC1GqO,EAAcjE,UAAU,MAAMkE,EAAiBlsB,GAAgB6jB;gBAC/DoI,EAAc5C,aAAavgB,WAAW6B;gBACtC+W,QAAQW,IAAI4J,GAAejsB,GAAgB2lB,EAAe/gB,KAAK2Y;gBAC/D,MAAM4O,IAAiBrjB,WAAWwB,eAAe0e,GAAgB,UAAU,aAAarD,EAAe/gB,KAAK+Y;gBAC5GwO,EAAenE,UAAU,MAAMoE,EAAkBpsB,GAAgB6jB;gBACjEsI,EAAe9C,aAAavgB,WAAW6B;gBACvC+W,QAAQW,IAAI8J,GAAgBnsB,GAAgB2lB,EAAe/gB,KAAK0Y;AAClE;YACA,IAAIqO,KAAmB3rB,EAAeyV,aAAasC,kBAAkB;gBACnE,MAAMsU,IAAevjB,WAAWwB,eAAe0e,GAAgB,UAAU,UAAUrD,EAAe/gB,KAAKsa;gBACvGmN,EAAarE,UAAU,MAAM7L,GAASnc,GAAgBb;gBACtDuiB,QAAQW,IAAIgK,GAAcrsB,GAAgB2lB,EAAe/gB,KAAKua;AAChE;YACA,IAAIwM,KAAmB3rB,EAAeiQ,aAAaqC,QAAQtS,EAAeyV,aAAaqC,kBAAkB;gBACvG,MAAMwU,IAAexjB,WAAWwB,eAAe0e,GAAgB,UAAU,UAAUrD,EAAe/gB,KAAK6Z;gBACvG6N,EAAatE,UAAU,MAAMC,EAAsBjoB,GAAgB6jB,IAAY;gBAC/EnC,QAAQW,IAAIiK,GAActsB,GAAgB2lB,EAAe/gB,KAAK8Z;AAChE;YACA,IAAI1e,EAAeiQ,aAAaqC,QAAQtS,EAAeyV,aAAakC,kBAAkB;gBACpF,MAAM4U,IAAezjB,WAAWwB,eAAe0e,GAAgB,UAAU,UAAUrD,EAAe/gB,KAAKic;gBACvG0L,EAAavE,UAAU,MAAMwE,EAAkBxsB,GAAgB6jB;gBAC/D0I,EAAalD,aAAavgB,WAAW6B;gBACrC+W,QAAQW,IAAIkK,GAAcvsB,GAAgB2lB,EAAe/gB,KAAKkc;AAChE;YACA,KAAK6K,KAAmB9vB,GAAGmC,aAAagC,EAAeb,SAASa,EAAeb,KAAK/C,SAAS,KAAK4D,EAAeyV,aAAaoC,yBAAyB;gBACrJ,MAAM4U,IAAsB3jB,WAAWwB,eAAe0e,GAAgB,UAAU,mBAAmBrD,EAAe/gB,KAAKmc;gBACvH0L,EAAoBzE,UAAU,MAAM0E,EAAgB1sB;gBACpDysB,EAAoBpD,aAAavgB,WAAW6B;gBAC5C+W,QAAQW,IAAIoK,GAAqBzsB,GAAgB2lB,EAAe/gB,KAAKoc;AACvE;YACA,IAAIgI,EAAeve,cAAc,IAAgB;gBAC/C,MAAMkiB,IAAc7jB,WAAW2E,oBAAoBma,GAAgB,gBAAgB;gBACnF5nB,EAAekQ,aAAaqB,sBAAsB8Y,GAAarB,iBAAiBA;gBAChFpB,EAAehc,MAAMghB,YAAY,GAAG5D,EAAe/c;gBACnD2b,EAAehc,MAAMihB,eAAe,GAAG7D,EAAeld,cAAc6gB;AACtE,mBAAO;gBACL/E,EAAellB,YAAYsmB;AAC7B;AACF;AACF;IACA,SAAS0D,EAAgB1sB;QACvBA,EAAeoQ,OAAOiC,UAAU;QAChCmU,EAAuBxmB;AACzB;IACA,SAASksB,EAAiBlsB,GAAgB6jB;QACxC,MAAMiJ,IAAS9sB,EAAekQ,aAAaS,kBAAkBkT;QAC7D,KAAK,MAAMkJ,KAAWD,GAAQ;YAC5B,IAAIA,EAAO1rB,eAAe2rB,IAAU;gBAClCD,EAAOC,KAAW;AACpB;AACF;QACAvG,EAAuBxmB;AACzB;IACA,SAASosB,EAAkBpsB,GAAgB6jB;QACzC,MAAMiJ,IAAS9sB,EAAekQ,aAAaS,kBAAkBkT;QAC7D,KAAK,MAAMkJ,KAAWD,GAAQ;YAC5B,IAAIA,EAAO1rB,eAAe2rB,IAAU;gBAClCD,EAAOC,KAAW;AACpB;AACF;QACAvG,EAAuBxmB;AACzB;IACA,SAASwsB,EAAkBxsB,GAAgB6jB;QACzC,IAAI7jB,EAAeoQ,OAAOiC,SAAS;YACjCrS,EAAeb,KAAKukB,OAAOG,GAAW;YACtC,IAAIA,MAAc7jB,EAAekQ,aAAaC,6BAA6BnQ,EAAekQ,aAAaC,4BAA4B,GAAG;gBACpInQ,EAAekQ,aAAaC,6BAA6BnQ,EAAeoQ,OAAOE;AACjF;AACF,eAAO;YACLtQ,EAAeb,OAAO;AACxB;QACAqnB,EAAuBxmB;QACvB0pB,EAAoB1pB,GAAgB2lB,EAAe/gB,KAAKyb;AAC1D;IACA,SAAS7D,EAAOxc,GAAgBb;QAC9B,MAAM6tB,IAAe9sB,KAAKC,UAAUP,SAASE,qBAAqBX,GAAMwmB,GAAgB3lB,IAAiBA,EAAesW,OAAOuF,oBAAoB7b,EAAewT;QAClKyZ,UAAUC,UAAUC,UAAUH;QAC9BtD,EAAoB1pB,GAAgB2lB,EAAe/gB,KAAK+a;QACxDyB,QAAQE,YAAYthB,EAAesW,OAAOkG,QAAQxc,EAAekQ,aAAa1F,SAASwiB;AACzF;IACA,SAASjG,EAAsB/mB,GAAgBb;QAC7C,IAAItD,GAAG8B,cAAcqC,EAAesV,MAAM1Q,SAAS5E,EAAesV,MAAM4B,2BAA2BlX,EAAesV,MAAM6B,kBAAkBnX,EAAeiR,SAASoB,WAAWrS,EAAeoQ,OAAOiC,WAAWrS,EAAesV,MAAM8B,0BAA0B;YAC3P,MAAMgW,IAAWtkB,WAAWc,OAAO5J,EAAekQ,aAAa1F,SAAS,OAAO;YAC/E,IAAIxK,EAAesV,MAAM8B,0BAA0B;gBACjDgW,EAAS/D,aAAa,MAAMgE,EAAmBrtB;AACjD;YACA,IAAIA,EAAeiR,SAASoB,SAAS;gBACnC,MAAMib,IAAiBxkB,WAAWwB,eAAe8iB,GAAU,UAAU,aAAazH,EAAe/gB,KAAKuZ;gBACtGmP,EAAetF,UAAU,MAAMuF,EAAevtB;gBAC9CstB,EAAejE,aAAavgB,WAAW6B;gBACvC+W,QAAQW,IAAIiL,GAAgBttB,GAAgB2lB,EAAe/gB,KAAKwZ;AAClE;YACApe,EAAekQ,aAAaK,kBAAkBzH,WAAWc,OAAOwjB,GAAU,OAAO;YACjF,IAAIvxB,GAAG8B,cAAcqC,EAAesV,MAAM1Q,OAAO;gBAC/CkE,WAAWwB,eAAe8iB,GAAU,OAAO,SAASptB,EAAesV,MAAM1Q,MAAM5E,EAAekQ,aAAaK;AAC7G;YACA,IAAIvQ,EAAesV,MAAM6B,kBAAkBtb,GAAG2B,QAAQ2B,IAAO;gBAC3D,MAAM6sB,IAAaljB,WAAWwB,eAAetK,EAAekQ,aAAaK,iBAAiB,UAAU,YAAYoV,EAAe/gB,KAAKiZ;gBACpImO,EAAWhE,UAAU,MAAMwF,EAAuBxtB,GAAgBb;gBAClE6sB,EAAW3C,aAAavgB,WAAW6B;gBACnC+W,QAAQW,IAAI2J,GAAYhsB,GAAgB2lB,EAAe/gB,KAAK4Y;AAC9D;YACA,IAAIxd,EAAesV,MAAM4B,2BAA2Brb,GAAG2B,QAAQ2B,IAAO;gBACpE,MAAM8sB,IAAgBnjB,WAAWwB,eAAetK,EAAekQ,aAAaK,iBAAiB,UAAU,YAAYoV,EAAe/gB,KAAKgZ;gBACvIqO,EAAcjE,UAAU,MAAMhN,EAAUhb;gBACxCisB,EAAc5C,aAAavgB,WAAW6B;gBACtC+W,QAAQW,IAAI4J,GAAejsB,GAAgB2lB,EAAe/gB,KAAK2Y;gBAC/D,MAAM4O,IAAiBrjB,WAAWwB,eAAetK,EAAekQ,aAAaK,iBAAiB,UAAU,aAAaoV,EAAe/gB,KAAK+Y;gBACzIwO,EAAenE,UAAU,MAAM/M,EAAWjb;gBAC1CmsB,EAAe9C,aAAavgB,WAAW6B;gBACvC+W,QAAQW,IAAI8J,GAAgBnsB,GAAgB2lB,EAAe/gB,KAAK0Y;AAClE;YACA,IAAItd,EAAeoQ,OAAOiC,WAAWxW,GAAGmC,aAAamB,MAASA,EAAK/C,SAAS,GAAG;gBAC7E4D,EAAekQ,aAAaY,iBAAiBhI,WAAWwB,eAAetK,EAAekQ,aAAaK,iBAAiB,UAAU,aAAaoV,EAAe/gB,KAAKoZ;gBAC/Jhe,EAAekQ,aAAaY,eAAeuY,aAAavgB,WAAW6B;gBACnE+W,QAAQW,IAAIriB,EAAekQ,aAAaY,gBAAgB9Q,GAAgB2lB,EAAe/gB,KAAKkZ;gBAC5F,IAAI9d,EAAekQ,aAAaC,4BAA4B,GAAG;oBAC7DnQ,EAAekQ,aAAaY,eAAekX,UAAU,MAAMyF,EAAWztB;AACxE,uBAAO;oBACLA,EAAekQ,aAAaY,eAAegb,WAAW;AACxD;gBACA9rB,EAAekQ,aAAaa,iBAAiBjI,WAAWwB,eAAetK,EAAekQ,aAAaK,iBAAiB,UAAU,aAAaoV,EAAe/gB,KAAKqZ;gBAC/Jje,EAAekQ,aAAaa,eAAesY,aAAavgB,WAAW6B;gBACnE+W,QAAQW,IAAIriB,EAAekQ,aAAaa,gBAAgB/Q,GAAgB2lB,EAAe/gB,KAAKmZ;gBAC5F,IAAI/d,EAAekQ,aAAaC,6BAA6BnQ,EAAeoQ,OAAOE,iBAAiB,KAAKnR,EAAK/C,SAAS,GAAG;oBACxH4D,EAAekQ,aAAaa,eAAeiX,UAAU,MAAM0F,EAAW1tB;AACxE,uBAAO;oBACLA,EAAekQ,aAAaa,eAAe+a,WAAW;AACxD;AACF,mBAAO;gBACL,IAAIjwB,GAAGmC,aAAamB,IAAO;oBACzBa,EAAeoQ,OAAOiC,UAAU;AAClC;AACF;YACA,IAAIrS,EAAesV,MAAM8B,4BAA4BpX,EAAesV,MAAM+B,sBAAsB;gBAC9F,MAAMsW,KAAc3tB,EAAekQ,aAAakB,eAAeuU,EAAe/gB,KAAK+Z,+BAA+BgH,EAAe/gB,KAAKga;gBACtI5e,EAAekQ,aAAaiB,yBAAyBrI,WAAWwB,eAAetK,EAAekQ,aAAaK,iBAAiB,UAAU,sBAAsBod;gBAC5J3tB,EAAekQ,aAAaiB,uBAAuB6W,UAAU,MAAMqF,EAAmBrtB;gBACtFA,EAAekQ,aAAaiB,uBAAuBkY,aAAavgB,WAAW6B;gBAC3E+W,QAAQW,IAAIriB,EAAekQ,aAAaiB,wBAAwBnR,GAAgB2lB,EAAe/gB,KAAKia;AACtG;AACF;AACF;IACA,SAASwO,EAAmBrtB;QAC1B,IAAIA,EAAesV,MAAM8B,0BAA0B;YACjD,IAAIpX,EAAekQ,aAAa1F,QAAQ2b,UAAUyH,SAAS,gBAAgB;gBACzE5tB,EAAekQ,aAAa1F,QAAQ2b,UAAUxD,OAAO;gBACrD3iB,EAAekQ,aAAaiB,uBAAuB1G,YAAYkb,EAAe/gB,KAAK+Z;gBACnF3e,EAAekQ,aAAakB,eAAe;AAC7C,mBAAO;gBACLpR,EAAekQ,aAAa1F,QAAQ2b,UAAU9D,IAAI;gBAClDriB,EAAekQ,aAAaiB,uBAAuB1G,YAAYkb,EAAe/gB,KAAKga;gBACnF5e,EAAekQ,aAAakB,eAAe;AAC7C;YACAsQ,QAAQU,KAAKpiB;YACbslB,YAAYlD,KAAKpiB;YACjB6tB,EAAoB7tB;YACpBohB,QAAQE,YAAYthB,EAAesW,OAAOmG,oBAAoBzc,EAAekQ,aAAa1F,SAASxK,EAAekQ,aAAa1F,QAAQ2b,UAAUyH,SAAS;AAC5J;AACF;IACA,SAASJ,EAAuBxtB,GAAgBb;QAC9C,MAAM6tB,IAAe9sB,KAAKC,UAAUP,SAASE,qBAAqBX,GAAMwmB,GAAgB3lB,IAAiBA,EAAesW,OAAOuF,oBAAoB7b,EAAewT;QAClKyZ,UAAUC,UAAUC,UAAUH;QAC9BtD,EAAoB1pB,GAAgB2lB,EAAe/gB,KAAK+a;QACxDyB,QAAQE,YAAYthB,EAAesW,OAAOyE,WAAW/a,EAAekQ,aAAa1F,SAASwiB;AAC5F;IACA,SAAShS,EAAUhb;QACjBA,EAAegT,kBAAkB;QACjChT,EAAekQ,aAAaS,oBAAoB,CAAC;QACjD6V,EAAuBxmB;QACvBohB,QAAQE,YAAYthB,EAAesW,OAAO0E,WAAWhb,EAAekQ,aAAa1F;AACnF;IACA,SAASyQ,EAAWjb;QAClBA,EAAegT,kBAAkB;QACjChT,EAAekQ,aAAaS,oBAAoB,CAAC;QACjD6V,EAAuBxmB;QACvBohB,QAAQE,YAAYthB,EAAesW,OAAO2E,YAAYjb,EAAekQ,aAAa1F;AACpF;IACA,SAASijB,EAAWztB;QAClB,IAAIA,EAAekQ,aAAaY,mBAAmB,SAAS9Q,EAAekQ,aAAaY,eAAegb,UAAU;YAC/G9rB,EAAekQ,aAAaC,6BAA6BnQ,EAAeoQ,OAAOE;YAC/EkW,EAAuBxmB,GAAgB;YACvCohB,QAAQE,YAAYthB,EAAesW,OAAOmX,YAAYztB,EAAekQ,aAAa1F;AACpF;AACF;IACA,SAASkjB,EAAW1tB;QAClB,IAAIA,EAAekQ,aAAaa,mBAAmB,SAAS/Q,EAAekQ,aAAaa,eAAe+a,UAAU;YAC/G9rB,EAAekQ,aAAaC,6BAA6BnQ,EAAeoQ,OAAOE;YAC/EkW,EAAuBxmB,GAAgB;YACvCohB,QAAQE,YAAYthB,EAAesW,OAAOoX,YAAY1tB,EAAekQ,aAAa1F;AACpF;AACF;IACA,SAAS8c,EAAgCtnB;QACvCA,EAAekQ,aAAac,qBAAqBlI,WAAWc,OAAO5J,EAAekQ,aAAa1F,SAAS,OAAO;QAC/GxK,EAAekQ,aAAac,mBAAmBgX,UAAU,MAAM8F,EAAgB9tB;AACjF;IACA,SAASunB,EAAsBvnB;QAC7B,IAAIA,EAAeiR,SAASoB,SAAS;YACnCrS,EAAekQ,aAAae,WAAWnI,WAAWc,OAAO5J,EAAekQ,aAAa1F,SAAS,OAAO;YACrG,MAAM4iB,IAAWtkB,WAAWc,OAAO5J,EAAekQ,aAAae,UAAU,OAAO;YAChF,IAAIpV,GAAG8B,cAAcqC,EAAeiR,SAASgJ,YAAY;gBACvD,MAAM8T,IAAejlB,WAAWc,OAAOwjB,GAAU,OAAO;gBACxDW,EAAatjB,YAAYzK,EAAeiR,SAASgJ;AACnD;YACA,MAAM+T,IAAmBllB,WAAWc,OAAOwjB,GAAU,OAAO;YAC5D,IAAIptB,EAAeiR,SAASmJ,uBAAuBve,GAAG4B,cAAcuC,EAAeb,OAAO;gBACxF,MAAM8uB,IAAkBnlB,WAAWwB,eAAe0jB,GAAkB,UAAU,cAAcrI,EAAe/gB,KAAKqc;gBAChHgN,EAAgBjG,UAAU,MAAMkG,EAAoBluB;gBACpD0hB,QAAQW,IAAI4L,GAAiBjuB,GAAgB2lB,EAAe/gB,KAAKsc;AACnE;YACA,IAAIlhB,EAAeiR,SAAS8G,oBAAoBlc,GAAG4B,cAAcuC,EAAeb,OAAO;gBACrF,MAAMktB,IAAevjB,WAAWwB,eAAe0jB,GAAkB,UAAU,UAAUrI,EAAe/gB,KAAKsa;gBACzGmN,EAAarE,UAAU,MAAM7L,GAASnc,GAAgBA,EAAeb;gBACrEuiB,QAAQW,IAAIgK,GAAcrsB,GAAgB2lB,EAAe/gB,KAAKua;AAChE;YACA,IAAInf,EAAeiR,SAAS6G,kBAAkB;gBAC5C,MAAMwU,IAAexjB,WAAWwB,eAAe0jB,GAAkB,UAAU,UAAUrI,EAAe/gB,KAAK6Z;gBACzG6N,EAAatE,UAAU,MAAMC,EAAsBjoB;gBACnD0hB,QAAQW,IAAIiK,GAActsB,GAAgB2lB,EAAe/gB,KAAK8Z;AAChE;YACA,MAAMyP,IAAcrlB,WAAWwB,eAAe0jB,GAAkB,UAAU,SAASrI,EAAe/gB,KAAKyZ;YACvG8P,EAAYnG,UAAU,MAAM8F,EAAgB9tB;YAC5C0hB,QAAQW,IAAI8L,GAAanuB,GAAgB2lB,EAAe/gB,KAAK0Z;YAC7D,IAAIziB,GAAG4B,cAAcuC,EAAeb,OAAO;gBACzC,MAAM6nB,IAAWle,WAAWc,OAAO5J,EAAekQ,aAAae,UAAU,OAAO;gBAChFmd,EAAuBpH,GAAUhnB;AACnC;AACF;AACF;IACA,SAASioB,EAAsBjoB,GAAgBquB,IAAkB;QAC/D,MAAMnhB,IAAQpE,WAAW4B,sBAAsB;QAC/CwC,EAAMpD,OAAO;QACboD,EAAMohB,SAAS;QACfphB,EAAMqhB,WAAW;QACjBT,EAAgB9tB;QAChBkN,EAAMshB,WAAW,MAAMC,GAAgBvhB,EAAMwhB,OAAO1uB,GAAgBquB;QACpEnhB,EAAMyhB;AACR;IACA,SAASpB,EAAevtB;QACtB,KAAKA,EAAekQ,aAAae,SAASkV,UAAUyH,SAAS,mBAAmB;YAC9E5tB,EAAekQ,aAAae,SAASkV,UAAU9D,IAAI;YACnDriB,EAAekQ,aAAac,mBAAmBpF,MAAMC,UAAU;YAC/D6V,QAAQU,KAAKpiB;YACbslB,YAAYlD,KAAKpiB;AACnB;AACF;IACA,SAAS8tB,EAAgB9tB;QACvB,IAAI4uB,IAAS;QACb,IAAI5uB,EAAekQ,aAAae,SAASkV,UAAUyH,SAAS,mBAAmB;YAC7E5tB,EAAekQ,aAAae,SAASkV,UAAUxD,OAAO;YACtD3iB,EAAekQ,aAAac,mBAAmBpF,MAAMC,UAAU;YAC/D6V,QAAQU,KAAKpiB;YACbslB,YAAYlD,KAAKpiB;YACjB,IAAIA,EAAekQ,aAAagB,iBAAiB;gBAC/CuR,YAAW;oBACT+D,EAAuBxmB;oBACvB0pB,EAAoB1pB,GAAgB2lB,EAAe/gB,KAAKkb;AAAuB,oBAC9E9f,EAAeiR,SAASoJ;AAC7B;YACAuU,IAAS;AACX;QACA,OAAOA;AACT;IACA,SAASV,EAAoBluB;QAC3BA,EAAeb,OAAO;QACtBqnB,EAAuBxmB;QACvB0pB,EAAoB1pB,GAAgB2lB,EAAe/gB,KAAKqb;AAC1D;IACA,SAASmO,EAAuBpH,GAAUhnB;QACxC,MAAM6uB,IAAa;QACnB,MAAMC,IAAchmB,WAAWc,OAAOod,GAAU,OAAO;QACvD,MAAMoG,IAAWtkB,WAAWc,OAAOklB,GAAa,OAAO;QACvDhmB,WAAWwB,eAAe8iB,GAAU,OAAO,6BAA6B,GAAGzH,EAAe/gB,KAAK2Z;QAC/F,MAAMyK,IAAiBlgB,WAAWc,OAAOwjB,GAAU,OAAO;QAC1D,MAAM2B,IAAYjmB,WAAWc,OAAOof,GAAgB,OAAO;QAC3D,MAAMgG,IAAalmB,WAAWc,OAAOof,GAAgB,OAAO;QAC5D+F,EAAU/G,UAAU,MAAMiH,EAAiCjvB,GAAgB6uB,GAAY;QACvFG,EAAWhH,UAAU,MAAMiH,EAAiCjvB,GAAgB6uB,GAAY;QACxFnN,QAAQW,IAAI0M,GAAW/uB,GAAgB2lB,EAAe/gB,KAAKuH;QAC3DuV,QAAQW,IAAI2M,GAAYhvB,GAAgB2lB,EAAe/gB,KAAK4Z;QAC5D,MAAM0Q,IAAqBpmB,WAAWc,OAAOklB,GAAa,OAAO;QACjE,MAAMK,IAAYzrB,OAAO0rB,KAAKzzB;QAC9B,MAAMka,IAAS7V,EAAe6V;QAC9B,KAAK,MAAMwZ,KAAYrvB,EAAekQ,aAAa+B,gBAAgB;YACjE,IAAIkd,EAAUtpB,QAAQwpB,QAAe,GAAkB;gBACrDF,EAAUpuB,KAAKsuB;AACjB;AACF;QACAF,EAAUnK;QACVmK,EAAUG,SAAQ,CAACnuB,GAAKouB;YACtB,MAAMriB,IAAQsiB,EAAiCN,GAAoB/tB,GAAKnB,IAAiB6V,EAAO,GAAG1U;YACnG,IAAItF,GAAG2B,QAAQ0P,IAAQ;gBACrB2hB,EAAW9tB,KAAKmM;AAClB;AAAA;AAEJ;IACA,SAAS+hB,EAAiCjvB,GAAgB6uB,GAAYY;QACpE,MAAMC,IAAmBb,EAAWzyB;QACpC,MAAM0yB,IAAc9uB,EAAe6V;QACnC,KAAK,IAAI8Z,IAAgB,GAAGA,IAAgBD,GAAkBC,KAAiB;YAC7Ed,EAAWc,GAAe9iB,UAAU4iB;YACpCX,EAAY,GAAGD,EAAWc,GAAenvB,iBAAiBivB;AAC5D;QACAzvB,EAAekQ,aAAagB,kBAAkB;AAChD;IACA,SAASse,EAAiCN,GAAoB/tB,GAAKnB,GAAgB6M;QACjF,IAAIvP,IAAU;QACd,MAAMsyB,IAAuB5vB,EAAekQ,aAAa+B,eAAe9Q;QACxE,KAAKnB,EAAeiR,SAASkJ,8BAA8ByV,IAAuB,GAAG;YACnF,IAAIC,IAAe/pB,IAAIQ,sBAAsBnF;YAC7C,IAAI2uB,IAAyB;YAC7B,IAAI9vB,EAAeiR,SAASiJ,6BAA6B;gBACvD,IAAIla,EAAekQ,aAAa+B,eAAe7Q,eAAeD,IAAM;oBAClE2uB,IAAyB,IAAIF;AAC/B;AACF;YACAtyB,IAAUwL,WAAW6D,eAAeuiB,GAAoBW,GAAc1uB,GAAK0L,GAAS7M,EAAesT,kBAAkBnS,IAAM,IAAgB2uB;YAC3IxyB,EAAQkxB,WAAW;gBACjB,MAAMM,IAAc9uB,EAAe6V;gBACnCiZ,EAAY,GAAG3tB,cAAgB7D,EAAQuP;gBACvC7M,EAAe6V,SAASiZ;gBACxB9uB,EAAekQ,aAAagB,kBAAkB;AAAI;AAEtD;QACA,OAAO5T;AACT;IACA,SAASkqB,EAAuBxnB;QAC9B,IAAIA,EAAewR,OAAOa,WAAWxW,GAAG2B,QAAQwC,EAAeb,OAAO;YACpEa,EAAekQ,aAAasB,SAAS1I,WAAWc,OAAO5J,EAAekQ,aAAa1F,SAAS,OAAO;YACnGqjB,EAAoB7tB;YACpBA,EAAekQ,aAAauB,mBAAmB3I,WAAWwB,eAAetK,EAAekQ,aAAasB,QAAQ,OAAO,eAAemU,EAAe/gB,KAAK4a;YACvJ,IAAIxf,EAAewR,OAAOwC,eAAe;gBACvChU,EAAekQ,aAAawB,qBAAqB5I,WAAWc,OAAO5J,EAAekQ,aAAasB,QAAQ,OAAO;gBAC9GxR,EAAekQ,aAAawB,mBAAmB9F,MAAMC,UAAU;AACjE;YACA,IAAI7L,EAAewR,OAAO8F,aAAa;gBACrCtX,EAAekQ,aAAayB,mBAAmB7I,WAAWc,OAAO5J,EAAekQ,aAAasB,QAAQ,OAAO;gBAC5GxR,EAAekQ,aAAayB,iBAAiB/F,MAAMC,UAAU;AAC/D;YACA,IAAI7L,EAAewR,OAAO+F,WAAW;gBACnCvX,EAAekQ,aAAa0B,iBAAiB9I,WAAWc,OAAO5J,EAAekQ,aAAasB,QAAQ,OAAO;gBAC1GxR,EAAekQ,aAAa0B,eAAehG,MAAMC,UAAU;AAC7D;YACA,IAAI7L,EAAeoQ,OAAOiC,WAAWxW,GAAGmC,aAAagC,EAAeb,SAASa,EAAeb,KAAK/C,SAAS,KAAK4D,EAAewR,OAAOgG,YAAY;gBAC/IxX,EAAekQ,aAAa2B,iBAAiB/I,WAAWc,OAAO5J,EAAekQ,aAAasB,QAAQ,OAAO;gBAC1Gue,EAAkB/vB;AACpB;AACF;AACF;IACA,SAAS+vB,EAAkB/vB;QACzB,IAAIA,EAAeoQ,OAAOiC,SAAS;YACjC,MAAM2d,IAAc7L,KAAK8L,MAAMjwB,EAAekQ,aAAaC,4BAA4B,KAAKnQ,EAAeoQ,OAAOE;YAClH,MAAM4f,IAAa/L,KAAK8L,KAAKjwB,EAAeb,KAAK/C,SAAS4D,EAAeoQ,OAAOE;YAChF,MAAM6f,IAAqBrnB,WAAWwB,eAAe,MAAM,QAAQ,gBAAgB0lB,EAAYI,WAAWC;YAC1G,MAAMC,IAAmBxnB,WAAWwB,eAAe,MAAM,QAAQ,gBAAgB4lB,EAAWE,WAAWC;YACvG,MAAMzrB,IAAO+gB,EAAe/gB,KAAK6a,WAAWrf,QAAQ,OAAO+vB,GAAoB/vB,QAAQ,OAAOkwB;YAC9FtwB,EAAekQ,aAAa2B,eAAepH,YAAY7F;AACzD;AACF;IACA,SAASipB,EAAoB7tB;QAC3B,IAAInE,GAAG2B,QAAQwC,EAAekQ,aAAasB,SAAS;YAClDxR,EAAekQ,aAAasB,OAAO5F,MAAMC,UAAU7L,EAAekQ,aAAakB,eAAe,SAAS;AACzG;AACF;IACA,SAASmf,EAAwBvwB,GAAgBqvB,GAAUlE;QACzD,IAAInrB,EAAewR,OAAOa,WAAWrS,EAAewR,OAAOwC,eAAe;YACxEmX,EAAalJ,iBAAiB,cAAa;gBACzC,MAAMuO,IAAc1nB,WAAWwB,eAAe,MAAM,QAAQ,gBAAgB+kB,GAAUgB;gBACtF,MAAM3Q,IAAWiG,EAAe/gB,KAAK0b,aAAalgB,QAAQ,OAAOowB;gBACjExwB,EAAekQ,aAAawB,mBAAmB9F,MAAMC,UAAU;gBAC/D7L,EAAekQ,aAAawB,mBAAmBjH,YAAYiV;AAAQ;YAErEyL,EAAalJ,iBAAiB,eAAc;gBAC1CjiB,EAAekQ,aAAawB,mBAAmB9F,MAAMC,UAAU;gBAC/D7L,EAAekQ,aAAawB,mBAAmBjH,YAAY;AAAc;AAE7E;AACF;IACA,SAASgmB,EAAsBzwB,GAAgB9D,GAAOivB;QACpD,IAAInrB,EAAewR,OAAOa,WAAWrS,EAAewR,OAAO8F,aAAa;YACtE,MAAMlb,IAAS0nB,KAAK1nB,OAAOF,GAAO8D,EAAeY;YACjD,IAAIxE,IAAS,GAAG;gBACd+uB,EAAalJ,iBAAiB,cAAa;oBACzC,MAAMuO,IAAc1nB,WAAWwB,eAAe,MAAM,QAAQ,gBAAgBlO,EAAOO,YAAY0zB;oBAC/F,MAAM3Q,IAAWiG,EAAe/gB,KAAKmb,WAAW3f,QAAQ,OAAOowB;oBAC/DxwB,EAAekQ,aAAayB,iBAAiB/F,MAAMC,UAAU;oBAC7D7L,EAAekQ,aAAayB,iBAAiBlH,YAAYiV;AAAQ;gBAEnEyL,EAAalJ,iBAAiB,eAAc;oBAC1CjiB,EAAekQ,aAAayB,iBAAiB/F,MAAMC,UAAU;oBAC7D7L,EAAekQ,aAAayB,iBAAiBlH,YAAY;AAAc;AAE3E;AACF;AACF;IACA,SAASimB,EAAoB1wB,GAAgB9D,GAAOivB;QAClD,IAAInrB,EAAewR,OAAOa,WAAWrS,EAAewR,OAAO+F,WAAW;YACpE,MAAMoZ,IAAO7M,KAAKE,GAAG9nB,GAAO8D,EAAeY;YAC3C,IAAI/E,GAAG8B,cAAcgzB,IAAO;gBAC1BxF,EAAalJ,iBAAiB,cAAa;oBACzC,MAAMuO,IAAc1nB,WAAWwB,eAAe,MAAM,QAAQ,gBAAgBqmB,EAAKh0B,YAAY0zB;oBAC7F,MAAM3Q,IAAWiG,EAAe/gB,KAAK8a,SAAStf,QAAQ,OAAOowB;oBAC7DxwB,EAAekQ,aAAa0B,eAAehG,MAAMC,UAAU;oBAC3D7L,EAAekQ,aAAa0B,eAAenH,YAAYiV;AAAQ;gBAEjEyL,EAAalJ,iBAAiB,eAAc;oBAC1CjiB,EAAekQ,aAAa0B,eAAehG,MAAMC,UAAU;oBAC3D7L,EAAekQ,aAAa0B,eAAenH,YAAY;AAAc;AAEzE;AACF;AACF;IACA,SAASif,EAAoB1pB,GAAgB4wB;QAC3C,IAAI5wB,EAAewR,OAAOa,SAAS;YACjCrS,EAAekQ,aAAauB,iBAAiBhH,YAAYmmB;YACzDlO,aAAa1iB,EAAekQ,aAAa4B;YACzC9R,EAAekQ,aAAa4B,0BAA0B2Q,YAAW;gBAC/DziB,EAAekQ,aAAauB,iBAAiBhH,YAAYkb,EAAe/gB,KAAK4a;AAAW,gBACvFxf,EAAewR,OAAOiG;AAC3B;AACF;IACA,SAASyR,EAAiBrf,GAAW7J,GAAgBb,GAAM0kB,GAAWwL;QACpE,IAAIjI,IAAajoB;QACjB,IAAItD,GAAG8D,wBAAwBR,IAAO;YACpCioB,IAAaA,EAAW1rB;AAC1B;QACA,MAAMoe,IAAgB0K,IAAIE,iBAAiB0C,GAAYpnB;QACvD,MAAM6wB,IAAgB/W,EAAc1d;QACpC,IAAIy0B,MAAkB,MAAM7wB,EAAe6V,OAAOiD,cAAc;YAC9D,IAAIgY,IAAY;YAChB,IAAIzB,MAAa,UAAuB;gBACtCyB,IAAYnL,EAAe/gB,KAAKqY;AAClC,mBAAO,IAAIoS,MAAa,OAAiB;gBACvCyB,IAAYnL,EAAe/gB,KAAKuY;AAClC,mBAAO,IAAIkS,MAAa,QAAmB;gBACzCyB,IAAYnL,EAAe/gB,KAAKyY;AAClC;YACA,MAAM0T,IAAkBjoB,WAAWc,OAAOC,GAAW,OAAO;YAC5D,MAAMmnB,IAAqBloB,WAAWc,OAAOC,GAAW,OAAO;YAC/D,MAAMonB,IAAajxB,EAAe8S,kBAAkBhK,WAAWc,OAAOmnB,GAAiB,OAAO,UAAU/wB,EAAekV,oBAAoB;YAC3I,IAAIgc,IAAgB;YACpB,KAAKlxB,EAAeoQ,OAAOiC,YAAYxW,GAAGiC,cAAc+lB,MAAchoB,GAAG8D,wBAAwBR,IAAO;gBACtG,IAAI6V,IAAWhV,EAAegV;gBAC9B,IAAInZ,GAAG8D,wBAAwBR,IAAO;oBACpC6V,IAAW7V,EAAK1D;AAClB;gBACA,IAAIuE,EAAemU,wBAAwB;oBACzCa,IAAW,IAAIA;AACjB;gBACAkc,IAAgBpoB,WAAWwB,eAAeymB,GAAiB,QAAQ,aAAa/b;gBAChFlM,WAAWwB,eAAeymB,GAAiB,QAAQ,SAASpL,EAAe/gB,KAAKwa;AAClF;YACA,MAAMnF,IAAYnR,WAAWwB,eAAeymB,GAAiB,QAAQ/wB,EAAesT,kBAAkB,GAAG+b,iBAAwB,cAAcyB;YAC/I,IAAIK,IAAe;YACnB,IAAIC,IAAe;YACnBC,EAAwBL,GAAoBhxB;YAC5C,IAAIA,EAAeoQ,OAAOiC,WAAWxW,GAAGiC,cAAc+lB,IAAY;gBAChE,IAAIyN,IAAiBtxB,EAAe4S,2BAA2BiR,EAAUlnB,cAAcknB,IAAY,GAAGlnB;gBACtG,IAAIqD,EAAeyT,wBAAwB;oBACzC6d,IAAiB,IAAIA;AACvB;gBACA,MAAMtnB,IAAanO,GAAG2B,QAAQ0zB,KAAiBA,IAAgBjX;gBAC/DnR,WAAWwB,eAAeymB,GAAiB,QAAQ/wB,EAAesT,kBAAkB,GAAG+b,uBAA8B,oBAAoBiC,GAAgBtnB;gBACzJlB,WAAWwB,eAAeymB,GAAiB,QAAQ,SAASpL,EAAe/gB,KAAKwa,wBAAwBpV;AAC1G;YACA,IAAIhK,EAAe2S,mBAAmBke,IAAgB,GAAG;gBACvD,IAAIxB,MAAa,QAAmB;oBAClCvmB,WAAWwB,eAAeymB,GAAiB,QAAQ/wB,EAAesT,kBAAkB,GAAG+b,WAAkB,QAAQ,IAAIwB;AACvH,uBAAO;oBACL/nB,WAAWwB,eAAeymB,GAAiB,QAAQ/wB,EAAesT,kBAAkB,GAAG+b,WAAkB,QAAQ,IAAIwB;AACvH;AACF;YACA,IAAI7wB,EAAe0T,+BAA+B;gBAChDyd,IAAeroB,WAAWwB,eAAeymB,GAAiB,QAAQ,kBAAkB;AACtF;YACA,IAAI/wB,EAAe8U,6BAA6B;gBAC9Csc,IAAetoB,WAAWwB,eAAeymB,GAAiB,QAAQ,kBAAkB;AACtF;YACAQ,EAAmBN,GAAY,MAAMD,GAAoBhxB,GAAgBonB,GAAYtN,GAAeqX,GAAcC,GAAc,OAAO,MAAM,IAAgB/B,GAAUA,MAAa,UAAuB;YAC3MmC,GAAmBxxB,GAAgBia,GAAWmN,GAAYiI,GAAU;YACpEqB,EAAoB1wB,GAAgBonB,GAAYnN;YAChDwW,EAAsBzwB,GAAgBonB,GAAYnN;YAClDwX,GAA4BzxB,GAAgB+wB,GAAiB,OAAO3J,GAAYA,GAAY,MAAM,OAAO;AAC3G;AACF;IACA,SAAS6B,EAAgBpf,GAAW7J,GAAgBb,GAAMkwB;QACxD,IAAIjI,IAAajoB;QACjB,IAAItD,GAAG8D,wBAAwBR,IAAO;YACpCioB,IAAaA,EAAW1rB;AAC1B;QACA,IAAIo1B,IAAY;QAChB,IAAIzB,MAAa,OAAiB;YAChCyB,IAAYnL,EAAe/gB,KAAKwY;AAClC,eAAO,IAAIiS,MAAa,SAAqB;YAC3CyB,IAAYnL,EAAe/gB,KAAKsY;AAClC;QACA,MAAM6T,IAAkBjoB,WAAWc,OAAOC,GAAW,OAAO;QAC5D,MAAMmnB,IAAqBloB,WAAWc,OAAOC,GAAW,OAAO;QAC/D,MAAMonB,IAAajxB,EAAe8S,kBAAkBhK,WAAWc,OAAOmnB,GAAiB,OAAO,UAAU/wB,EAAekV,oBAAoB;QAC3I,KAAKlV,EAAeoQ,OAAOiC,WAAWxW,GAAG8D,wBAAwBR,IAAO;YACtE,IAAI6V,IAAWhV,EAAegV;YAC9B,IAAInZ,GAAG8D,wBAAwBR,IAAO;gBACpC6V,IAAW7V,EAAK1D;AAClB;YACA,IAAIuE,EAAemU,wBAAwB;gBACzCa,IAAW,IAAIA;AACjB;YACAlM,WAAWwB,eAAeymB,GAAiB,QAAQ,aAAa/b;YAChElM,WAAWwB,eAAeymB,GAAiB,QAAQ,SAASpL,EAAe/gB,KAAKwa;AAClF;QACA,MAAMnF,IAAYnR,WAAWwB,eAAeymB,GAAiB,QAAQ/wB,EAAesT,kBAAkB,GAAG+b,iBAAwB,cAAcyB;QAC/I,IAAIY,IAAiB;QACrB,IAAIC,IAAiB;QACrBN,EAAwBL,GAAoBhxB;QAC5C,IAAIA,EAAe2S,iBAAiB;YAClC7J,WAAWwB,eAAeymB,GAAiB,QAAQ/wB,EAAesT,kBAAkB,GAAG+b,WAAkB,QAAQ,IAAIlwB,EAAK/C;AAC5H;QACA,IAAI4D,EAAe2T,mCAAmC;YACpD+d,IAAiB5oB,WAAWwB,eAAeymB,GAAiB,QAAQ,kBAAkB;AACxF;QACA,IAAI/wB,EAAe6U,gCAAgC;YACjD8c,IAAiB7oB,WAAWwB,eAAeymB,GAAiB,QAAQ,kBAAkB;AACxF;QACAa,EAAkBX,GAAY,MAAMD,GAAoBhxB,GAAgBb,GAAMuyB,GAAgBC,GAAgB,OAAO,MAAM,IAAgBtC,GAAUA,MAAa,SAAqB;QACvLmC,GAAmBxxB,GAAgBia,GAAW9a,GAAMkwB,GAAU;QAC9DqB,EAAoB1wB,GAAgBb,GAAM8a;QAC1CwW,EAAsBzwB,GAAgBb,GAAM8a;QAC5CwX,GAA4BzxB,GAAgB+wB,GAAiB,OAAO5xB,GAAMA,GAAM,MAAM,OAAO;AAC/F;IACA,SAASoyB,EAAmBN,GAAYY,GAAMb,GAAoBhxB,GAAgBb,GAAM2a,GAAeqX,GAAcC,GAAcU,GAAgCC,GAAYC,GAAUC,GAAYC,GAAgBC;QACnN,IAAIC,IAAkB;QACtB,MAAMC,IAAmBvY,EAAc1d;QACvC,MAAMk2B,IAA+BN,MAAa,KAAiBK,IAAmB;QACtF,IAAIA,MAAqB,MAAMryB,EAAe6V,OAAOiD,cAAc;YACjEyZ,EAAYpzB,GAAM6xB,GAAoBhxB,GAAgB,IAAgB2lB,EAAe/gB,KAAKya,kBAAkB,MAAM,OAAO,IAAgB4S,GAAYC,GAAgBC;YACrKC,IAAkB;AACpB,eAAO,IAAIpyB,EAAe0H,QAAQmP,mBAAmB,KAAKsb,IAAmBnyB,EAAe0H,QAAQmP,kBAAkB;YACpH0b,EAAYpzB,GAAM6xB,GAAoBhxB,GAAgB,IAAgB2lB,EAAe/gB,KAAKuc,gCAAgC,MAAM,OAAO,IAAgB8Q,GAAYC,GAAgBC;YACnLC,IAAkB;AACpB,eAAO;YACL,KAAK,IAAII,IAAgB,GAAGA,IAAgBH,GAAkBG,KAAiB;gBAC7E,MAAMnP,IAAevJ,EAAc0Y;gBACnC,MAAMC,IAAcT,MAAa,KAAiB3O,IAAe,GAAG2O,IAAW,OAAuB3O;gBACtG,IAAIlkB,EAAKiC,eAAeiiB,IAAe;oBACrCkP,EAAYpzB,GAAM6xB,GAAoBhxB,GAAgBqjB,GAAclkB,EAAKkkB,IAAemP,MAAkBH,IAAmB,GAAG,OAAOI,GAAaR,GAAYC,GAAgBC;AAClL;AACF;YACA,IAAInB,EAAmB/uB,SAAS7F,WAAW,KAAK4D,EAAeoU,gCAAgC4c,EAAmB/uB,SAAS7F,WAAW,GAAG;gBACvIm2B,EAAYpzB,GAAM6xB,GAAoBhxB,GAAgB,IAAgB2lB,EAAe/gB,KAAKya,kBAAkB,MAAM,OAAO,IAAgB4S,GAAYC,GAAgBC;gBACrKC,IAAkB;AACpB,mBAAO;gBACL,IAAIpyB,EAAe0T,+BAA+B;oBAChDgf,GAAoB1yB,GAAgBgxB,GAAoB,KAAKc,GAAgCC;AAC/F;AACF;AACF;QACAY,GAAmB3yB,GAAgBixB,GAAYY,GAAMb,GAAoBG,GAAcC,GAAckB,GAA8BL;QACnI,OAAOG;AACT;IACA,SAASR,EAAkBX,GAAYY,GAAMb,GAAoBhxB,GAAgBb,GAAMuyB,GAAgBC,GAAgBG,GAAgCC,GAAYC,GAAUC,GAAYC,GAAgBC;QACvM,IAAIC,IAAkB;QACtB,MAAMxO,IAAazkB,EAAK/C;QACxB,MAAMw2B,IAAyBZ,MAAa,KAAiBpO,IAAa;QAC1E,IAAI5jB,EAAe0H,QAAQmP,mBAAmB,KAAKsb,IAAmBnyB,EAAe0H,QAAQmP,kBAAkB;YAC7G0b,EAAYpzB,GAAM6xB,GAAoBhxB,GAAgB,IAAgB2lB,EAAe/gB,KAAKuc,gCAAgC,MAAM,OAAO,IAAgB8Q,GAAYC,GAAgBC;YACnLC,IAAkB;AACpB,eAAO;YACL,KAAKpyB,EAAeoT,oBAAoB;gBACtC,KAAK,IAAIyf,IAAa,GAAGA,IAAajP,GAAYiP,KAAc;oBAC9D,MAAMC,IAAcjQ,IAAIE,SAAS8P,GAAY7yB;oBAC7C,MAAMyyB,IAAcT,MAAa,KAAiBc,EAAYn2B,aAAa,GAAGq1B,IAAW,OAAuBc;oBAChHP,EAAYpzB,GAAM6xB,GAAoBhxB,GAAgB6iB,IAAII,aAAajjB,GAAgB8yB,GAAalP,IAAazkB,EAAK0zB,IAAaA,MAAejP,IAAa,GAAG,MAAM6O,GAAaR,GAAYC,GAAgBC;AACnN;AACF,mBAAO;gBACL,KAAK,IAAIY,IAAanP,GAAYmP,OAAgB;oBAChD,MAAMD,IAAcjQ,IAAIE,SAASgQ,GAAY/yB;oBAC7C,MAAMyyB,IAAcT,MAAa,KAAiBc,EAAYn2B,aAAa,GAAGq1B,IAAW,OAAuBc;oBAChHP,EAAYpzB,GAAM6xB,GAAoBhxB,GAAgB6iB,IAAII,aAAajjB,GAAgB8yB,GAAalP,IAAazkB,EAAK4zB,IAAaA,MAAe,GAAG,MAAMN,GAAaR,GAAYC,GAAgBC;AACtM;AACF;YACA,IAAInB,EAAmB/uB,SAAS7F,WAAW,KAAK4D,EAAeoU,gCAAgC4c,EAAmB/uB,SAAS7F,WAAW,GAAG;gBACvIm2B,EAAYpzB,GAAM6xB,GAAoBhxB,GAAgB,IAAgB2lB,EAAe/gB,KAAKya,kBAAkB,MAAM,OAAO,IAAgB4S,GAAYC,GAAgBC;gBACrKC,IAAkB;AACpB,mBAAO;gBACL,IAAIpyB,EAAe2T,mCAAmC;oBACpD+e,GAAoB1yB,GAAgBgxB,GAAoB,KAAKc,GAAgCC;AAC/F;AACF;AACF;QACAY,GAAmB3yB,GAAgBixB,GAAYY,GAAMb,GAAoBU,GAAgBC,GAAgBiB,GAAwBX;QACjI,OAAOG;AACT;IACA,SAASG,EAAYpzB,GAAM0K,GAAW7J,GAAgBQ,GAAMtE,GAAO61B,GAAYiB,GAAahB,GAAUC,GAAYC,GAAgBC;QAChI,MAAMc,IAAkBnqB,WAAWc,OAAOC,GAAW,OAAO;QAC5D,MAAMqpB,IAAuBpqB,WAAWc,OAAOqpB,GAAiB,OAAO;QACvE,MAAMhC,IAAajxB,EAAe8S,kBAAkBhK,WAAWc,OAAOspB,GAAsB,OAAO,MAAMlzB,EAAekV,oBAAoB;QAC5I,IAAIie,IAAa;QACjB,IAAIhI,IAAe;QACnB,IAAIiI,IAAU;QACd,IAAIC,IAAkB;QACtB,IAAIhE,IAAW;QACf,IAAIiE,IAAcxqB,WAAWc,OAAOspB,GAAsB;QAC1D,IAAIjjB,IAAe;QACnB,IAAIsjB,IAAc;QAClB,MAAMC,KAAwB33B,GAAG8B,cAAc6C;QAC/C,IAAIizB,IAAmB;QACvB,IAAIC,IAAa;QACjB,MAAMrJ,IAAcrqB,EAAekQ,aAAaiC;QAChD,KAAKqhB,GAAsB;YACzB,IAAIG,IAAY7tB,IAAIa,wBAAwBnG,GAAMR,EAAe0H,QAAQoP,oBAAoB6O,EAAe/gB,KAAKiC;YACjH,IAAImsB,MAAgBhzB,EAAemU,wBAAwB;gBACzDmf,EAAY7oB,YAAYkpB;AAC1B,mBAAO;gBACLL,EAAY7oB,YAAY,IAAIkpB;AAC9B;YACA,IAAIX,MAAgBhzB,EAAe4U,kBAAkB;gBACnD0e,EAAY1Q,WAAWlgB,YAAY4wB;gBACnCA,IAAc;AAChB;AACF,eAAO;YACLA,EAAY1Q,WAAWlgB,YAAY4wB;YACnCA,IAAc;AAChB;QACA,IAAIvB,GAAY;YACdkB,EAAgB9M,UAAU9D,IAAI;AAChC;QACA,IAAIriB,EAAegU,kBAAkBwf,GAAsB;YACzDD,IAAczqB,WAAWwB,eAAe4oB,GAAsB,QAAQlzB,EAAesT,kBAAkB,oBAAoB,aAAa;AAC1I;QACA,IAAIzX,GAAG2B,QAAQ81B,OAAiBE,KAAwBxzB,EAAesT,mBAAmBtT,EAAeqU,gCAAgC;YACvIif,EAAYnN,UAAU9D,IAAI4P;AAC5B;QACA,IAAIp2B,GAAG2B,QAAQ81B,OAAiBE,GAAsB;YACpD1qB,WAAWwB,eAAe4oB,GAAsB,QAAQ,SAASvN,EAAe/gB,KAAKwa;YACrF,KAAK8S,GAAgB;gBACnB0B,GAAyB5zB,GAAgBb,GAAMqB,GAAM8yB,GAAaN;AACpE,mBAAO;gBACLM,EAAYjK,aAAavgB,WAAW6B;AACtC;YACA,IAAI9O,GAAG8B,cAAcq0B,IAAW;gBAC9BkB,EAAqB9K,aAAa9Y,UAAUI,iCAAiCsiB;AAC/E;YACA,KAAKgB,GAAa;gBAChBtC,EAAoB1wB,GAAgBQ,GAAM8yB;gBAC1C7C,EAAsBzwB,GAAgBQ,GAAM8yB;AAC9C;YACAO,GAA+B7zB,GAAgBkzB,GAAsBlB,GAAU3H,GAAanuB;AAC9F;QACA,MAAM43B,IAAuB1S,QAAQE,YAAYthB,EAAesW,OAAOqG,wBAAwB3c,EAAekQ,aAAa1F,SAAStO;QACpI,IAAIL,GAAG2B,QAAQs2B,MAAyBA,MAAyB,OAAO;YACtEzE,IAAWyE,EAAqBzE;YAChC,MAAM0E,IAAe/zB,EAAe6V;YACpC,MAAMme,IAAkB,GAAGF,EAAqBzE;YAChD,KAAK0E,EAAa3yB,eAAe4yB,OAAqBD,EAAaC,IAAkB;gBACnFb,IAAanzB,EAAesT,kBAAkB,GAAG+b,YAAmB;gBACpElE,IAAeriB,WAAWwB,eAAe4oB,GAAsB,QAAQY,EAAqBphB,OAAOohB,EAAqBvpB;gBACxH0F,IAAe6jB,EAAqB7jB;gBACpCgkB,GAA0Bj0B,GAAgBb,GAAMqB,GAAMtE,GAAOivB,GAAc6H,GAAa/iB;gBACxFikB,GAAYl0B,GAAgBkzB,GAAsBnB;AACpD,mBAAO;gBACLqB,IAAU;AACZ;AACF,eAAO,IAAIl3B,MAAU,MAAM;YACzBmzB,IAAW;YACX,KAAKrvB,EAAe6V,OAAOqC,YAAY;gBACrCib,IAAanzB,EAAesT,kBAAkB,GAAG+b,8BAAqC;gBACtFlE,IAAeriB,WAAWwB,eAAe4oB,GAAsB,QAAQC,GAAY;gBACnF/R,QAAQE,YAAYthB,EAAesW,OAAOoF,cAAc1b,EAAekQ,aAAa1F,SAAS2gB;gBAC7F+I,GAAYl0B,GAAgBkzB,GAAsBnB;AACpD,mBAAO;gBACLqB,IAAU;AACZ;AACF,eAAO,IAAIl3B,WAAe,GAAG;YAC3BmzB,IAAW;YACX,KAAKrvB,EAAe6V,OAAOkD,iBAAiB;gBAC1Coa,IAAanzB,EAAesT,kBAAkB,GAAG+b,8BAAqC;gBACtFlE,IAAeriB,WAAWwB,eAAe4oB,GAAsB,QAAQC,GAAY;gBACnF/R,QAAQE,YAAYthB,EAAesW,OAAOwF,mBAAmB9b,EAAekQ,aAAa1F,SAAS2gB;gBAClG+I,GAAYl0B,GAAgBkzB,GAAsBnB;AACpD,mBAAO;gBACLqB,IAAU;AACZ;AACF,eAAO,IAAIv3B,GAAGgC,gBAAgB3B,IAAQ;YACpC,MAAM2L,IAAevH,QAAQC,gBAAgBrE,GAAOypB,GAAgB3lB;YACpE,IAAI6H,EAAaE,UAAU;gBACzBsnB,IAAW;gBACX,KAAKrvB,EAAe6V,OAAO4D,cAAc;oBACvC0Z,IAAanzB,EAAesT,kBAAkB,GAAG+b,sBAA6B;oBAC9ElE,IAAeriB,WAAWwB,eAAe4oB,GAAsB,QAAQC,GAAYtrB,EAAarH;oBAChG4gB,QAAQE,YAAYthB,EAAesW,OAAOiG,gBAAgBvc,EAAekQ,aAAa1F,SAAS2gB;oBAC/F+I,GAAYl0B,GAAgBkzB,GAAsBnB;AACpD,uBAAO;oBACLqB,IAAU;AACZ;AACF,mBAAO;gBACL/D,IAAW;gBACX,KAAKrvB,EAAe6V,OAAOsC,gBAAgB;oBACzCgb,IAAanzB,EAAesT,kBAAkB,GAAG+b,sBAA6B;oBAC9ElE,IAAeriB,WAAWwB,eAAe4oB,GAAsB,QAAQC,GAAYtrB,EAAarH;oBAChG4gB,QAAQE,YAAYthB,EAAesW,OAAOmF,kBAAkBzb,EAAekQ,aAAa1F,SAAS2gB;oBACjG+I,GAAYl0B,GAAgBkzB,GAAsBnB;AACpD,uBAAO;oBACLqB,IAAU;AACZ;AACF;AACF,eAAO,IAAIv3B,GAAG6B,eAAexB,IAAQ;YACnCmzB,IAAW;YACX,KAAKrvB,EAAe6V,OAAOwC,eAAe;gBACxC8a,IAAanzB,EAAesT,kBAAkB,GAAG+b,YAAmB;gBACpElE,IAAeriB,WAAWwB,eAAe4oB,GAAsB,QAAQC,GAAYj3B;gBACnF+T,IAAejQ,EAAeiQ,aAAaoI,kBAAkB6Z;gBAC7D+B,GAA0Bj0B,GAAgBb,GAAMqB,GAAMtE,GAAOivB,GAAc6H,GAAa/iB;gBACxFmR,QAAQE,YAAYthB,EAAesW,OAAO6E,iBAAiBnb,EAAekQ,aAAa1F,SAAS2gB;gBAChG+I,GAAYl0B,GAAgBkzB,GAAsBnB;AACpD,mBAAO;gBACLqB,IAAU;AACZ;AACF,eAAO,IAAIv3B,GAAGuC,aAAalC,IAAQ;YACjCmzB,IAAW;YACX,KAAKrvB,EAAe6V,OAAOyC,aAAa;gBACtC,MAAM/W,IAAW3B,SAASmF,+BAA+B7I,GAAO8D,EAAe0H,QAAQ1C;gBACvFmuB,IAAanzB,EAAesT,kBAAkB,GAAG+b,YAAmB;gBACpElE,IAAeriB,WAAWwB,eAAe4oB,GAAsB,QAAQC,GAAY5xB;gBACnF0O,IAAejQ,EAAeiQ,aAAaqI,gBAAgB4Z;gBAC3D+B,GAA0Bj0B,GAAgBb,GAAMqB,GAAMtE,GAAOivB,GAAc6H,GAAa/iB;gBACxFmR,QAAQE,YAAYthB,EAAesW,OAAO8E,eAAepb,EAAekQ,aAAa1F,SAAS2gB;gBAC9F+I,GAAYl0B,GAAgBkzB,GAAsBnB;AACpD,mBAAO;gBACLqB,IAAU;AACZ;AACF,eAAO,IAAIv3B,GAAGiC,cAAc5B,IAAQ;YAClCmzB,IAAW;YACX,KAAKrvB,EAAe6V,OAAO0C,cAAc;gBACvC,IAAI4b,IAAiBruB,IAAIa,wBAAwBzK,EAAMS,YAAYqD,EAAe0H,QAAQiP,cAAcgP,EAAe/gB,KAAKiC;gBAC5HssB,IAAanzB,EAAesT,kBAAkB,GAAG+b,YAAmB;gBACpElE,IAAeriB,WAAWwB,eAAe4oB,GAAsB,QAAQC,GAAYgB;gBACnFlkB,IAAejQ,EAAeiQ,aAAasI,iBAAiB2Z;gBAC5D+B,GAA0Bj0B,GAAgBb,GAAMqB,GAAMtE,GAAOivB,GAAc6H,GAAa/iB;gBACxFmR,QAAQE,YAAYthB,EAAesW,OAAO+E,gBAAgBrb,EAAekQ,aAAa1F,SAAS2gB;gBAC/F+I,GAAYl0B,GAAgBkzB,GAAsBnB;AACpD,mBAAO;gBACLqB,IAAU;AACZ;AACF,eAAO,IAAIv3B,GAAGkC,cAAc7B,IAAQ;YAClCmzB,IAAW;YACX,KAAKrvB,EAAe6V,OAAO+C,cAAc;gBACvC,IAAIwb,IAAiBtuB,IAAIa,wBAAwBzK,EAAMS,YAAYqD,EAAe0H,QAAQkP,cAAc+O,EAAe/gB,KAAKiC;gBAC5HssB,IAAanzB,EAAesT,kBAAkB,GAAG+b,YAAmB;gBACpElE,IAAeriB,WAAWwB,eAAe4oB,GAAsB,QAAQC,GAAYiB;gBACnFnkB,IAAejQ,EAAeiQ,aAAa2J,iBAAiBsY;gBAC5D+B,GAA0Bj0B,GAAgBb,GAAMqB,GAAMtE,GAAOivB,GAAc6H,GAAa/iB;gBACxFmR,QAAQE,YAAYthB,EAAesW,OAAOgF,gBAAgBtb,EAAekQ,aAAa1F,SAAS2gB;gBAC/F+I,GAAYl0B,GAAgBkzB,GAAsBnB;AACpD,mBAAO;gBACLqB,IAAU;AACZ;AACF,eAAO,IAAIv3B,GAAG8B,cAAczB,MAAUL,GAAGE,OAAOmB,KAAKhB,IAAQ;YAC3DmzB,IAAW;YACX,KAAKrvB,EAAe6V,OAAOmD,YAAY;gBACrCma,IAAanzB,EAAesT,kBAAkB,GAAG+b,YAAmB;gBACpElE,IAAeriB,WAAWwB,eAAe4oB,GAAsB,QAAQC,GAAYj3B;gBACnF+T,IAAejQ,EAAeiQ,aAAa+I,eAAekZ;gBAC1D+B,GAA0Bj0B,GAAgBb,GAAMqB,GAAMtE,GAAOivB,GAAc6H,GAAa/iB;gBACxFmR,QAAQE,YAAYthB,EAAesW,OAAOyF,cAAc/b,EAAekQ,aAAa1F,SAAS2gB;gBAC7F+I,GAAYl0B,GAAgBkzB,GAAsBnB;AACpD,mBAAO;gBACLqB,IAAU;AACZ;AACF,eAAO,IAAIv3B,GAAG8B,cAAczB,OAAWL,GAAGE,OAAOE,SAASC,MAAUL,GAAGE,OAAOQ,SAASL,KAAS;YAC9FmzB,IAAW;YACX,KAAKrvB,EAAe6V,OAAOoD,aAAa;gBACtCka,IAAanzB,EAAesT,kBAAkB,GAAG+b,YAAmB;gBACpElE,IAAeriB,WAAWwB,eAAe4oB,GAAsB,QAAQC,GAAYj3B;gBACnF+T,IAAejQ,EAAeiQ,aAAagJ,gBAAgBiZ;gBAC3D,IAAIlyB,EAAesT,iBAAiB;oBAClC6X,EAAavf,MAAMyoB,QAAQn4B;AAC7B;gBACA+3B,GAA0Bj0B,GAAgBb,GAAMqB,GAAMtE,GAAOivB,GAAc6H,GAAa/iB;gBACxFmR,QAAQE,YAAYthB,EAAesW,OAAO0F,eAAehc,EAAekQ,aAAa1F,SAAS2gB;gBAC9F+I,GAAYl0B,GAAgBkzB,GAAsBnB;AACpD,mBAAO;gBACLqB,IAAU;AACZ;AACF,eAAO,IAAIv3B,GAAG8B,cAAczB,MAAUL,GAAGqD,WAAWhD,IAAQ;YAC1DmzB,IAAW;YACX,KAAKrvB,EAAe6V,OAAOwD,WAAW;gBACpC,IAAIib,IAAcxuB,IAAIa,wBAAwBzK,GAAO8D,EAAe0H,QAAQ+O,WAAWkP,EAAe/gB,KAAKiC;gBAC3GssB,IAAanzB,EAAesT,kBAAkB,GAAG+b,YAAmB;gBACpElE,IAAeriB,WAAWwB,eAAe4oB,GAAsB,QAAQC,GAAYmB;gBACnFrkB,IAAejQ,EAAeiQ,aAAaoJ,cAAc6Y;gBACzD,IAAIlyB,EAAesU,oBAAoB;oBACrCof,IAAa5qB,WAAWwB,eAAe4oB,GAAsB,QAAQlzB,EAAesT,kBAAkB,sBAAsB,eAAe,GAAGqS,EAAe/gB,KAAK0a,WAAW,MAAkBqG,EAAe/gB,KAAK2a;oBACnNmU,EAAW1L,UAAU;wBACnB,IAAIhoB,EAAemV,sBAAsB;4BACvCpJ,OAAOwoB,WAAWr4B;AACpB,+BAAO;4BACL6P,OAAOxD,KAAKrM;AACd;AAAA;AAEJ;gBACA+3B,GAA0Bj0B,GAAgBb,GAAMqB,GAAMtE,GAAOivB,GAAc6H,GAAa/iB,GAAcyjB;gBACtGtS,QAAQE,YAAYthB,EAAesW,OAAO8F,aAAapc,EAAekQ,aAAa1F,SAAS2gB;gBAC5F+I,GAAYl0B,GAAgBkzB,GAAsBnB;AACpD,mBAAO;gBACLqB,IAAU;AACZ;AACF,eAAO,IAAIv3B,GAAG8B,cAAczB,MAAUL,GAAG0D,aAAarD,IAAQ;YAC5DmzB,IAAW;YACX,KAAKrvB,EAAe6V,OAAO0D,aAAa;gBACtC,IAAIib,IAAgB1uB,IAAIa,wBAAwBzK,GAAO8D,EAAe0H,QAAQgP,aAAaiP,EAAe/gB,KAAKiC;gBAC/GssB,IAAanzB,EAAesT,kBAAkB,GAAG+b,YAAmB;gBACpElE,IAAeriB,WAAWwB,eAAe4oB,GAAsB,QAAQC,GAAYqB;gBACnFvkB,IAAejQ,EAAeiQ,aAAasJ,gBAAgB2Y;gBAC3D,IAAIlyB,EAAeuU,sBAAsB;oBACvCmf,IAAa5qB,WAAWwB,eAAe4oB,GAAsB,QAAQlzB,EAAesT,kBAAkB,sBAAsB,eAAe,GAAGqS,EAAe/gB,KAAK0a,WAAW,MAAkBqG,EAAe/gB,KAAK2a;oBACnNmU,EAAW1L,UAAU,MAAMjc,OAAOxD,KAAK,UAAUrM;AACnD;gBACA+3B,GAA0Bj0B,GAAgBb,GAAMqB,GAAMtE,GAAOivB,GAAc6H,GAAa/iB,GAAcyjB;gBACtGtS,QAAQE,YAAYthB,EAAesW,OAAOgG,eAAetc,EAAekQ,aAAa1F,SAAS2gB;gBAC9F+I,GAAYl0B,GAAgBkzB,GAAsBnB;AACpD,mBAAO;gBACLqB,IAAU;AACZ;AACF,eAAO,IAAIv3B,GAAG+B,iBAAiB1B,IAAQ;YACrCmzB,IAAW;YACX,KAAKrvB,EAAe6V,OAAO2C,gBAAgBgb,GAAsB;gBAC/D,MAAMpuB,IAAcxF,SAASuF,oBAAoBjJ,GAAO8D;gBACxD,IAAInE,GAAG2B,QAAQ4H,IAAc;oBAC3BmtB,EAAYpzB,GAAM0K,GAAW7J,GAAgBQ,GAAM4E,GAAa2sB,GAAYiB,GAAahB,GAAUC,GAAYC,GAAgBC;oBAC/HiB,IAAU;oBACVC,IAAkB;AACpB,uBAAO;oBACL,IAAIoB,IAAiBv4B;oBACrB,KAAKs3B,GAAsB;wBACzB,KAAK33B,GAAG8B,cAAc82B,IAAiB;4BACrCA,IAAiBz0B,EAAeiV;AAClC;wBACAwf,IAAiB3uB,IAAIa,wBAAwB8tB,GAAgBz0B,EAAe0H,QAAQ8O,cAAcmP,EAAe/gB,KAAKiC;wBACtH4tB,IAAiBz0B,EAAe+S,mBAAmB,IAAI0hB,OAAoBA;wBAC3EtB,IAAanzB,EAAesT,kBAAkB,GAAG+b,YAAmB;wBACpEpf,IAAejQ,EAAeiQ,aAAauI,iBAAiB0Z;AAC9D,2BAAO;wBACLiB,IAAa;wBACbljB,IAAe;wBACfwjB,IAAmB;AACrB;oBACAtI,IAAeriB,WAAWwB,eAAe4oB,GAAsB,QAAQC,GAAYsB;oBACnF,KAAKjB,GAAsB;wBACzBS,GAA0Bj0B,GAAgBb,GAAMqB,GAAMtE,GAAOivB,GAAc6H,GAAa/iB;wBACxFmR,QAAQE,YAAYthB,EAAesW,OAAOiF,gBAAgBvb,EAAekQ,aAAa1F,SAAS2gB;wBAC/F+I,GAAYl0B,GAAgBkzB,GAAsBnB;AACpD;AACF;AACF,mBAAO;gBACLqB,IAAU;AACZ;AACF,eAAO,IAAIv3B,GAAGqC,YAAYhC,IAAQ;YAChCmzB,IAAW;YACX,KAAKrvB,EAAe6V,OAAO4C,YAAY;gBACrC0a,IAAanzB,EAAesT,kBAAkB,GAAG+b,YAAmB;gBACpElE,IAAeriB,WAAWwB,eAAe4oB,GAAsB,QAAQC,GAAYtlB,SAASS,2BAA2BqX,GAAgBzpB,GAAO8D,EAAe6S;gBAC7J5C,IAAejQ,EAAeiQ,aAAawI,eAAeyZ;gBAC1D+B,GAA0Bj0B,GAAgBb,GAAMqB,GAAMtE,GAAOivB,GAAc6H,GAAa/iB;gBACxFmR,QAAQE,YAAYthB,EAAesW,OAAOkF,cAAcxb,EAAekQ,aAAa1F,SAAS2gB;gBAC7F+I,GAAYl0B,GAAgBkzB,GAAsBnB;AACpD,mBAAO;gBACLqB,IAAU;AACZ;AACF,eAAO,IAAIv3B,GAAGwC,cAAcnC,IAAQ;YAClCmzB,IAAW;YACX,KAAKrvB,EAAe6V,OAAOgD,cAAc;gBACvCsa,IAAanzB,EAAesT,kBAAkB,GAAG+b,YAAmB;gBACpElE,IAAeriB,WAAWwB,eAAe4oB,GAAsB,QAAQC,GAAYvzB,SAASgG,wBAAwB1J;gBACpH+T,IAAejQ,EAAeiQ,aAAa4I,iBAAiBqZ;gBAC5D+B,GAA0Bj0B,GAAgBb,GAAMqB,GAAMtE,GAAOivB,GAAc6H,GAAa/iB;gBACxFmR,QAAQE,YAAYthB,EAAesW,OAAOsF,gBAAgB5b,EAAekQ,aAAa1F,SAAS2gB;gBAC/F+I,GAAYl0B,GAAgBkzB,GAAsBnB;AACpD,mBAAO;gBACLqB,IAAU;AACZ;AACF,eAAO,IAAIv3B,GAAGyC,cAAcpC,IAAQ;YAClCmzB,IAAW;YACX,KAAKrvB,EAAe6V,OAAOqD,cAAc;gBACvCia,IAAanzB,EAAesT,kBAAkB,GAAG+b,YAAmB;gBACpElE,IAAeriB,WAAWwB,eAAe4oB,GAAsB,QAAQC,GAAYj3B,EAAMuE,OAAO9D;gBAChGsT,IAAejQ,EAAeiQ,aAAa4J,iBAAiBqY;gBAC5D+B,GAA0Bj0B,GAAgBb,GAAMqB,GAAMtE,GAAOivB,GAAc6H,GAAa/iB;gBACxFmR,QAAQE,YAAYthB,EAAesW,OAAO4F,gBAAgBlc,EAAekQ,aAAa1F,SAAS2gB;gBAC/F+I,GAAYl0B,GAAgBkzB,GAAsBnB;AACpD,mBAAO;gBACLqB,IAAU;AACZ;AACF,eAAO,IAAIv3B,GAAGiD,aAAa5C,IAAQ;YACjCmzB,IAAW;YACX,KAAKrvB,EAAe6V,OAAOyD,aAAa;gBACtC6Z,IAAanzB,EAAesT,kBAAkB,GAAG+b,YAAmB;gBACpElE,IAAeriB,WAAWc,OAAOspB,GAAsB,QAAQC;gBAC/DljB,IAAejQ,EAAeiQ,aAAaqJ,gBAAgB4Y;gBAC3D+B,GAA0Bj0B,GAAgBb,GAAMqB,GAAMtE,GAAOivB,GAAc6H,GAAa/iB;gBACxF,MAAMykB,IAAQ5rB,WAAWc,OAAOuhB,GAAc;gBAC9CuJ,EAAMh0B,MAAMxE,EAAMwE;gBAClB0gB,QAAQE,YAAYthB,EAAesW,OAAO+F,eAAerc,EAAekQ,aAAa1F,SAAS2gB;gBAC9F+I,GAAYl0B,GAAgBkzB,GAAsBnB;AACpD,mBAAO;gBACLqB,IAAU;AACZ;AACF,eAAO,IAAIv3B,GAAGmD,YAAY9C,IAAQ;YAChCmzB,IAAW;YACX,KAAKrvB,EAAe6V,OAAO2D,YAAY;gBACrC,MAAMmb,IAAa/0B,SAASe,aAAazE,GAAO8D,EAAeY;gBAC/D,MAAMkZ,IAAgB0K,IAAIE,iBAAiBiQ,GAAY30B;gBACvD,MAAM6wB,IAAgB/W,EAAc1d;gBACpC,IAAIy0B,MAAkB,KAAK7wB,EAAe6V,OAAOiD,cAAc;oBAC7Dsa,IAAU;AACZ,uBAAO;oBACL,MAAMwB,IAAc9rB,WAAWc,OAAOspB,GAAsB,QAAQlzB,EAAesT,kBAAkB+b,IAAW;oBAChH,MAAM2B,IAAqBloB,WAAWc,OAAOqpB,GAAiB,OAAO;oBACrE,IAAI9B,IAAe;oBACnB,IAAIC,IAAe;oBACnBC,EAAwBL,GAAoBhxB;oBAC5C,IAAI+xB,GAAY;wBACdf,EAAmB7K,UAAU9D,IAAI;AACnC;oBACA8I,IAAeriB,WAAWwB,eAAesqB,GAAa,QAAQ,cAAcjP,EAAe/gB,KAAKyY;oBAChG,IAAIrd,EAAe2S,oBAAoBke,IAAgB,MAAM7wB,EAAe6V,OAAOiD,eAAe;wBAChGhQ,WAAWwB,eAAesqB,GAAa,QAAQ,QAAQ,IAAI/D;AAC7D;oBACA,IAAI7wB,EAAe0T,+BAA+B;wBAChDyd,IAAeroB,WAAWwB,eAAesqB,GAAa,QAAQ,kBAAkB;AAClF;oBACA,IAAI50B,EAAe8U,6BAA6B;wBAC9Csc,IAAetoB,WAAWwB,eAAesqB,GAAa,QAAQ,kBAAkB;AAClF;oBACA,MAAM/C,IAAOqC,GAAYl0B,GAAgB40B,GAAa7C;oBACtD,MAAMK,IAAkBb,EAAmBN,GAAYY,GAAMb,GAAoBhxB,GAAgB20B,GAAY7a,GAAeqX,GAAcC,GAAc,MAAMW,GAAYC,GAAU3C,GAAU,MAAM8C,IAAmB;oBACvN,KAAKC,KAAmBpyB,EAAe0T,+BAA+B;wBACpEyd,EAAavO,WAAWlgB,YAAYyuB;wBACpCC,EAAaxO,WAAWlgB,YAAY0uB;AACtC;AACF;AACF,mBAAO;gBACLgC,IAAU;AACZ;AACF,eAAO,IAAIv3B,GAAG8C,WAAWzC,IAAQ;YAC/BmzB,IAAW;YACX,KAAKrvB,EAAe6V,OAAOuD,WAAW;gBACpC,MAAMT,IAAc/Y,SAASoB,WAAW9E;gBACxC,MAAM04B,IAAc9rB,WAAWc,OAAOspB,GAAsB,QAAQlzB,EAAesT,kBAAkB+b,IAAW;gBAChH,MAAMwF,IAAoB/rB,WAAWc,OAAOqpB,GAAiB,OAAO;gBACpE,IAAIvB,IAAiB;gBACrB,IAAIC,IAAiB;gBACrBN,EAAwBwD,GAAmB70B;gBAC3C,IAAI+xB,GAAY;oBACd8C,EAAkB1O,UAAU9D,IAAI;AAClC;gBACA8I,IAAeriB,WAAWwB,eAAesqB,GAAa,QAAQ,cAAcjP,EAAe/gB,KAAKwY;gBAChG,IAAIpd,EAAe2S,iBAAiB;oBAClC7J,WAAWwB,eAAesqB,GAAa,QAAQ,QAAQ,IAAIjc,EAAYvc;AACzE;gBACA,IAAI4D,EAAe2T,mCAAmC;oBACpD+d,IAAiB5oB,WAAWwB,eAAesqB,GAAa,QAAQ,kBAAkB;AACpF;gBACA,IAAI50B,EAAe6U,gCAAgC;oBACjD8c,IAAiB7oB,WAAWwB,eAAesqB,GAAa,QAAQ,kBAAkB;AACpF;gBACA,MAAM/C,IAAOqC,GAAYl0B,GAAgB40B,GAAa7C;gBACtD,MAAMK,IAAkBR,EAAkBX,GAAYY,GAAMgD,GAAmB70B,GAAgB2Y,GAAa+Y,GAAgBC,GAAgB,MAAMI,GAAYC,GAAU3C,GAAU,MAAM8C,IAAmB;gBAC3M,KAAKC,KAAmBpyB,EAAe2T,mCAAmC;oBACxE+d,EAAe9O,WAAWlgB,YAAYgvB;oBACtCC,EAAe/O,WAAWlgB,YAAYivB;AACxC;AACF,mBAAO;gBACLyB,IAAU;AACZ;AACF,eAAO,IAAIv3B,GAAGmC,aAAa9B,IAAQ;YACjCmzB,IAAW;YACX,KAAKrvB,EAAe6V,OAAO8C,aAAa;gBACtC,MAAMic,IAAc9rB,WAAWc,OAAOspB,GAAsB,QAAQlzB,EAAesT,kBAAkB+b,IAAW;gBAChH,MAAMwF,IAAoB/rB,WAAWc,OAAOqpB,GAAiB,OAAO;gBACpE,IAAIvB,IAAiB;gBACrB,IAAIC,IAAiB;gBACrBN,EAAwBwD,GAAmB70B;gBAC3C,IAAI+xB,GAAY;oBACd8C,EAAkB1O,UAAU9D,IAAI;AAClC;gBACA8I,IAAeriB,WAAWwB,eAAesqB,GAAa,QAAQ,cAAcjP,EAAe/gB,KAAKsY;gBAChG,IAAIld,EAAe2S,iBAAiB;oBAClC7J,WAAWwB,eAAesqB,GAAa,QAAQ,QAAQ,IAAI14B,EAAME;AACnE;gBACA,IAAI4D,EAAe2T,mCAAmC;oBACpD+d,IAAiB5oB,WAAWwB,eAAesqB,GAAa,QAAQ,kBAAkB;AACpF;gBACA,IAAI50B,EAAe6U,gCAAgC;oBACjD8c,IAAiB7oB,WAAWwB,eAAesqB,GAAa,QAAQ,kBAAkB;AACpF;gBACA,MAAM/C,IAAOqC,GAAYl0B,GAAgB40B,GAAa7C;gBACtD,MAAMK,IAAkBR,EAAkBX,GAAYY,GAAMgD,GAAmB70B,GAAgB9D,GAAOw1B,GAAgBC,GAAgB,MAAMI,GAAYC,GAAU3C,GAAU,OAAO8C,IAAmB;gBACtM,KAAKC,KAAmBpyB,EAAe2T,mCAAmC;oBACxE+d,EAAe9O,WAAWlgB,YAAYgvB;oBACtCC,EAAe/O,WAAWlgB,YAAYivB;AACxC;AACF,mBAAO;gBACLyB,IAAU;AACZ;AACF,eAAO,IAAIv3B,GAAG2C,WAAWtC,IAAQ;YAC/BmzB,IAAW;YACX,KAAKrvB,EAAe6V,OAAOsD,WAAW;gBACpC,MAAM2b,IAAcl1B,SAASsB,YAAYhF;gBACzC,MAAM4d,IAAgB0K,IAAIE,iBAAiBoQ,GAAa90B;gBACxD,MAAM6wB,IAAgB/W,EAAc1d;gBACpC,IAAIy0B,MAAkB,KAAK7wB,EAAe6V,OAAOiD,cAAc;oBAC7Dsa,IAAU;AACZ,uBAAO;oBACL,MAAMwB,IAAc9rB,WAAWc,OAAOspB,GAAsB,QAAQlzB,EAAesT,kBAAkB+b,IAAW;oBAChH,MAAM2B,IAAqBloB,WAAWc,OAAOqpB,GAAiB,OAAO;oBACrE,IAAI9B,IAAe;oBACnB,IAAIC,IAAe;oBACnBC,EAAwBL,GAAoBhxB;oBAC5C,IAAI+xB,GAAY;wBACdf,EAAmB7K,UAAU9D,IAAI;AACnC;oBACA8I,IAAeriB,WAAWwB,eAAesqB,GAAa,QAAQ,cAAcjP,EAAe/gB,KAAKuY;oBAChG,IAAInd,EAAe2S,oBAAoBke,IAAgB,MAAM7wB,EAAe6V,OAAOiD,eAAe;wBAChGhQ,WAAWwB,eAAesqB,GAAa,QAAQ,QAAQ,IAAI/D;AAC7D;oBACA,IAAI7wB,EAAe0T,+BAA+B;wBAChDyd,IAAeroB,WAAWwB,eAAesqB,GAAa,QAAQ,kBAAkB;AAClF;oBACA,IAAI50B,EAAe8U,6BAA6B;wBAC9Csc,IAAetoB,WAAWwB,eAAesqB,GAAa,QAAQ,kBAAkB;AAClF;oBACA,MAAM/C,IAAOqC,GAAYl0B,GAAgB40B,GAAa7C;oBACtD,MAAMK,IAAkBb,EAAmBN,GAAYY,GAAMb,GAAoBhxB,GAAgB80B,GAAahb,GAAeqX,GAAcC,GAAc,MAAMW,GAAYC,GAAU3C,GAAU,MAAM8C,IAAmB;oBACxN,KAAKC,KAAmBpyB,EAAe0T,+BAA+B;wBACpEyd,EAAavO,WAAWlgB,YAAYyuB;wBACpCC,EAAaxO,WAAWlgB,YAAY0uB;AACtC;AACF;AACF,mBAAO;gBACLgC,IAAU;AACZ;AACF,eAAO,IAAIv3B,GAAG4B,cAAcvB,IAAQ;YAClCmzB,IAAW;YACX,KAAKrvB,EAAe6V,OAAO6C,cAAc;gBACvC,MAAMoB,IAAgB0K,IAAIE,iBAAiBxoB,GAAO8D;gBAClD,MAAM6wB,IAAgB/W,EAAc1d;gBACpC,IAAIy0B,MAAkB,KAAK7wB,EAAe6V,OAAOiD,cAAc;oBAC7Dsa,IAAU;AACZ,uBAAO;oBACL,MAAMwB,IAAc9rB,WAAWc,OAAOspB,GAAsB,QAAQlzB,EAAesT,kBAAkB+b,IAAW;oBAChH,MAAM2B,IAAqBloB,WAAWc,OAAOqpB,GAAiB,OAAO;oBACrE,IAAI9B,IAAe;oBACnB,IAAIC,IAAe;oBACnBC,EAAwBL,GAAoBhxB;oBAC5C,IAAI+xB,GAAY;wBACdf,EAAmB7K,UAAU9D,IAAI;AACnC;oBACA8I,IAAeriB,WAAWwB,eAAesqB,GAAa,QAAQ,cAAcjP,EAAe/gB,KAAKqY;oBAChG,IAAIjd,EAAe2S,oBAAoBke,IAAgB,MAAM7wB,EAAe6V,OAAOiD,eAAe;wBAChGhQ,WAAWwB,eAAesqB,GAAa,QAAQ,QAAQ,IAAI/D;AAC7D;oBACA,IAAI7wB,EAAe0T,+BAA+B;wBAChDyd,IAAeroB,WAAWwB,eAAesqB,GAAa,QAAQ,kBAAkB;AAClF;oBACA,IAAI50B,EAAe8U,6BAA6B;wBAC9Csc,IAAetoB,WAAWwB,eAAesqB,GAAa,QAAQ,kBAAkB;AAClF;oBACA,MAAM/C,IAAOqC,GAAYl0B,GAAgB40B,GAAa7C;oBACtD,MAAMK,IAAkBb,EAAmBN,GAAYY,GAAMb,GAAoBhxB,GAAgB9D,GAAO4d,GAAeqX,GAAcC,GAAc,MAAMW,GAAYC,GAAU3C,GAAU,OAAO8C,IAAmB;oBACnN,KAAKC,KAAmBpyB,EAAe0T,+BAA+B;wBACpEyd,EAAavO,WAAWlgB,YAAYyuB;wBACpCC,EAAaxO,WAAWlgB,YAAY0uB;AACtC;AACF;AACF,mBAAO;gBACLgC,IAAU;AACZ;AACF,eAAO;YACL/D,IAAW;YACX,KAAKrvB,EAAe6V,OAAOuC,eAAe;gBACxC+a,IAAanzB,EAAesT,kBAAkB,GAAG+b,sBAA6B;gBAC9ElE,IAAeriB,WAAWwB,eAAe4oB,GAAsB,QAAQC,GAAYj3B,EAAMS;gBACzFykB,QAAQE,YAAYthB,EAAesW,OAAOqF,iBAAiB3b,EAAekQ,aAAa1F,SAAS2gB;gBAChG+I,GAAYl0B,GAAgBkzB,GAAsBnB;AACpD,mBAAO;gBACLqB,IAAU;AACZ;AACF;QACA,KAAKI,MAAyBH,GAAiB;YAC7C0B,EAAoB/0B,GAAgBqvB;AACtC;QACA,IAAI+D,GAAS;YACXvpB,EAAUnH,YAAYuwB;AACxB,eAAO;YACL,IAAIp3B,GAAG2B,QAAQ2tB,IAAe;gBAC5B,KAAKqI,GAAsB;oBACzB9C,EAAoB1wB,GAAgB9D,GAAOivB;oBAC3CsF,EAAsBzwB,GAAgB9D,GAAOivB;oBAC7CoF,EAAwBvwB,GAAgBqvB,GAAUlE;oBAClDsG,GAA4BzxB,GAAgBmrB,GAAclb,GAAc9Q,GAAMjD,GAAOsE,GAAMwyB,GAAaU;AAC1G;gBACA,IAAI73B,GAAG2B,QAAQ+1B,IAAc;oBAC3B,IAAIlE,MAAa,UAAqBA,MAAa,eAA+BA,MAAa,WAAuBA,MAAa,YAAyBA,MAAa,SAAmBA,MAAa,OAAiB;wBACxNkE,EAAY9oB,YAAY,IAAI4kB;AAC9B,2BAAO;wBACLkE,EAAY3Q,WAAWlgB,YAAY6wB;wBACnCA,IAAc;AAChB;AACF;gBACA,IAAIE,GAAkB;oBACpBuB,EAAuBh1B,GAAgBgyB,GAAUsB,GAAaC,GAAapI;oBAC3EqG,GAAmBxxB,GAAgBmrB,GAAcjvB,GAAOmzB,GAAUpf;AACpE,uBAAO;oBACLkb,EAAa9B,aAAavgB,WAAW6B;AACvC;AACF;AACF;AACF;IACA,SAASoqB,EAAoB/0B,GAAgBqvB;QAC3C,KAAKrvB,EAAekQ,aAAa+B,eAAe7Q,eAAeiuB,IAAW;YACxErvB,EAAekQ,aAAa+B,eAAeod,KAAY;AACzD;QACArvB,EAAekQ,aAAa+B,eAAeod;AAC7C;IACA,SAASgC,EAAwB4D,GAAgBj1B;QAC/C,IAAIA,EAAeoU,8BAA8B;YAC/C6gB,EAAe9O,UAAU9D,IAAI;YAC7B,KAAKriB,EAAe8S,iBAAiB;gBACnCmiB,EAAe9O,UAAU9D,IAAI;AAC/B;YACAvZ,WAAWc,OAAOqrB,GAAgB,OAAO;AAC3C;AACF;IACA,SAASD,EAAuBh1B,GAAgBgyB,GAAUsB,GAAaC,GAAapI;QAClF,IAAItvB,GAAG4B,cAAcuC,EAAe8T,gBAAgB;YAClD,IAAI9T,EAAeiU,0BAA0B;gBAC3CvP,QAAQ2f,IAAI2N;AACd;YACA,KAAKhyB,EAAe8T,cAAc1S,eAAe4wB,IAAW;gBAC1D,MAAMkD,IAAgBlD,EAASpqB,MAAM;gBACrC,MAAMutB,IAAsBD,EAAc94B,SAAS;gBACnD,KAAK,IAAIg5B,IAAoB,GAAGA,IAAoBD,GAAqBC,KAAqB;oBAC5FF,EAAcE,KAAqBp1B,EAAe0U;AACpD;gBACAsd,IAAWkD,EAAc7uB,KAAKrG,EAAe2U;AAC/C;YACA,IAAI3U,EAAe8T,cAAc1S,eAAe4wB,IAAW;gBACzDtQ,QAAQW,IAAIiR,GAAatzB,GAAgBA,EAAe8T,cAAcke,IAAW;gBACjFtQ,QAAQW,IAAIkR,GAAavzB,GAAgBA,EAAe8T,cAAcke,IAAW;gBACjFtQ,QAAQW,IAAI8I,GAAcnrB,GAAgBA,EAAe8T,cAAcke,IAAW;AACpF;AACF;AACF;IACA,SAAS4B,GAAyB5zB,GAAgBb,GAAMk2B,GAAsBhS,GAAc2P;QAC1F,IAAIhzB,EAAeiQ,aAAa6J,eAAe;YAC7CuJ,EAAagG,aAAcze;gBACzB9B,WAAW6B,aAAaC;gBACxB,IAAI0qB,IAAqB;gBACzB,IAAI/L,IAAmB;gBACvB7G,aAAa1iB,EAAekQ,aAAaM;gBACzCxQ,EAAekQ,aAAaM,oBAAoB;gBAChDxQ,EAAekQ,aAAaO,WAAW;gBACvC4S,EAAa8C,UAAU9D,IAAI;gBAC3B,IAAI2Q,GAAa;oBACf3P,EAAa5Y,YAAYoY,IAAIO,qBAAqBiS,GAAsB14B;AAC1E,uBAAO;oBACL0mB,EAAa5Y,YAAY4qB;AAC3B;gBACAhS,EAAa+E,aAAa,mBAAmB;gBAC7C/E,EAAamG;gBACb1gB,WAAWqD,cAAckX;gBACzBA,EAAaoG,SAAS;oBACpBjD,EAAuBxmB,GAAgB;oBACvC,IAAInE,GAAG8B,cAAc4rB,IAAmB;wBACtCG,EAAoB1pB,GAAgBupB;AACtC;AAAA;gBAEFlG,EAAasG,YAAaC;oBACxB,IAAIA,EAAIC,SAAS,UAAuB;wBACtCD,EAAI/e;wBACJwY,EAAa+E,aAAa,mBAAmB;AAC/C,2BAAO,IAAIwB,EAAIC,SAAS,SAAqB;wBAC3CD,EAAI/e;wBACJ,MAAM0qB,IAAkBlS,EAAa1gB;wBACrC,IAAIqwB,GAAa;4BACf,IAAIn3B,GAAG8B,cAAc43B,OAAqBl5B,OAAOk5B,IAAkB;gCACjE,IAAIC,KAAiBD;gCACrB,KAAKv1B,EAAe4S,0BAA0B;oCAC5C4iB;AACF;gCACA,IAAIF,MAAuBE,GAAe;oCACxCjM,IAAmB5D,EAAe/gB,KAAKub;oCACvC0C,IAAIS,UAAUnkB,GAAMm2B,GAAoBE;oCACxCpU,QAAQE,YAAYthB,EAAesW,OAAO2F,YAAYjc,EAAekQ,aAAa1F;AACpF;AACF,mCAAO;gCACLrL,EAAKukB,OAAOb,IAAIO,qBAAqBiS,IAAuB;gCAC5D9L,IAAmB5D,EAAe/gB,KAAKwb;AACzC;AACF,+BAAO;4BACL,IAAImV,MAAoBF,GAAsB;gCAC5C,IAAIE,EAAgB14B,WAAW,IAAgB;oCAC7C0sB,IAAmB5D,EAAe/gB,KAAKwb;2CAChCjhB,EAAKk2B;AACd,uCAAO;oCACL,KAAKl2B,EAAKiC,eAAem0B,IAAkB;wCACzChM,IAAmB5D,EAAe/gB,KAAKsb;wCACvC,MAAMuV,IAAgBt2B,EAAKk2B;+CACpBl2B,EAAKk2B;wCACZl2B,EAAKo2B,KAAmBE;AAC1B;AACF;gCACArU,QAAQE,YAAYthB,EAAesW,OAAO2F,YAAYjc,EAAekQ,aAAa1F;AACpF;AACF;wBACA6Y,EAAa+E,aAAa,mBAAmB;AAC/C;AAAA;AACD;AAEL;AACF;IACA,SAAS6L,GAA0Bj0B,GAAgBb,GAAMk2B,GAAsBK,GAAuBC,GAAe3C,GAAa/iB,GAAcyjB,IAAa;QAC3J,IAAIzjB,GAAc;YAChB0lB,EAActM,aAAcze;gBAC1BgrB,GAAuBhrB,GAAI5K,GAAgBb,GAAMk2B,GAAsBK,GAAuBC,GAAe3C,GAAaU;AAAW;AAEzI;AACF;IACA,SAASkC,GAAuBhrB,GAAI5K,GAAgBb,GAAMk2B,GAAsBK,GAAuBC,GAAe3C,GAAaU,IAAa;QAC9I,IAAInK,IAAmB;QACvBzgB,WAAW6B,aAAaC;QACxB8X,aAAa1iB,EAAekQ,aAAaM;QACzCxQ,EAAekQ,aAAaM,oBAAoB;QAChDxQ,EAAekQ,aAAaO,WAAW;QACvCklB,EAAcxP,UAAU9D,IAAI;QAC5BsT,EAAcvN,aAAa,mBAAmB;QAC9C,IAAIvsB,GAAGqC,YAAYw3B,OAA2B11B,EAAeC,wBAAwB;YACnF01B,EAAchzB,YAAYzC,KAAKC,UAAUu1B,GAAuBt1B,QAAQ,UAAU;AACpF,eAAO,IAAIvE,GAAGyC,cAAco3B,IAAwB;YAClDC,EAAchzB,YAAY+yB,EAAsBj1B;AAClD,eAAO,IAAI5E,GAAGwC,cAAcq3B,IAAwB;YAClDC,EAAchzB,YAAY/C,SAASS,eAAeq1B;AACpD,eAAO,IAAI75B,GAAGiD,aAAa42B,IAAwB;YACjDC,EAAchzB,YAAY+yB,EAAsBh1B;AAClD,eAAO;YACLi1B,EAAchzB,YAAY+yB,EAAsB/4B;AAClD;QACAg5B,EAAcnM;QACd1gB,WAAWqD,cAAcwpB;QACzB,IAAI95B,GAAG2B,QAAQk2B,IAAa;YAC1BA,EAAW9Q,WAAWlgB,YAAYgxB;AACpC;QACAiC,EAAclM,SAAS;YACrBjD,EAAuBxmB,GAAgB;YACvC,IAAInE,GAAG8B,cAAc4rB,IAAmB;gBACtCG,EAAoB1pB,GAAgBupB;AACtC;AAAA;QAEFoM,EAAchM,YAAaC;YACzB,IAAIA,EAAIC,SAAS,UAAuB;gBACtCD,EAAI/e;gBACJ8qB,EAAcvN,aAAa,mBAAmB;AAChD,mBAAO,IAAIwB,EAAIC,SAAS,SAAqB;gBAC3CD,EAAI/e;gBACJ,MAAMgrB,IAAmBF,EAAchzB;gBACvC,IAAIkzB,EAAiBh5B,WAAW,IAAgB;oBAC9C,IAAIm2B,GAAa;wBACf7zB,EAAKukB,OAAOb,IAAIO,qBAAqBiS,IAAuB;AAC9D,2BAAO;+BACEl2B,EAAKk2B;AACd;oBACA9L,IAAmB5D,EAAe/gB,KAAKwb;AACzC,uBAAO;oBACL,IAAI0V,IAAuBl2B,SAASyB,sBAAsBq0B,GAAuBG;oBACjF,IAAIC,MAAyB,MAAM;wBACjC,IAAI9C,GAAa;4BACf7zB,EAAK0jB,IAAIO,qBAAqBiS,MAAyBS;AACzD,+BAAO;4BACL32B,EAAKk2B,KAAwBS;AAC/B;wBACAvM,IAAmB5D,EAAe/gB,KAAKob;wBACvCoB,QAAQE,YAAYthB,EAAesW,OAAO2F,YAAYjc,EAAekQ,aAAa1F;AACpF;AACF;gBACAmrB,EAAcvN,aAAa,mBAAmB;AAChD;AAAA;AAEJ;IACA,SAASoJ,GAAmBxxB,GAAgBmrB,GAAcjvB,GAAO4N,GAAMmG;QACrE,IAAIpU,GAAGgC,gBAAgBmC,EAAesW,OAAOuE,eAAe;YAC1DsQ,EAAanD,UAAU;gBACrB,IAAI+N,IAAa75B;gBACjB,IAAI8D,EAAe+U,8BAA8B;oBAC/CghB,IAAa71B,KAAKC,UAAUP,SAASE,qBAAqB5D,GAAOypB,GAAgB3lB,IAAiBA,EAAesW,OAAOuF,oBAAoB7b,EAAewT;AAC7J;gBACA,IAAIvD,GAAc;oBAChBjQ,EAAekQ,aAAaM,oBAAoBiS,YAAW;wBACzD,KAAKziB,EAAekQ,aAAaO,UAAU;4BACzC2Q,QAAQE,YAAYthB,EAAesW,OAAOuE,cAAc7a,EAAekQ,aAAa1F,SAASurB,GAAYjsB;AAC3G;AAAA,wBACC9J,EAAe+T;AACpB,uBAAO;oBACLoX,EAAa9B,aAAavgB,WAAW6B;oBACrCyW,QAAQE,YAAYthB,EAAesW,OAAOuE,cAAc7a,EAAekQ,aAAa1F,SAASurB,GAAYjsB;AAC3G;AAAA;AAEJ,eAAO;YACLqhB,EAAahF,UAAU9D,IAAI;AAC7B;AACF;IACA,SAASsQ,GAAmB3yB,GAAgBixB,GAAYY,GAAMb,GAAoBgF,GAAeC,GAAerS,GAAYyL;QAC1H,MAAMtC,IAAU/sB,EAAekQ,aAAaU;QAC5C,MAAM0gB,IAAiBtxB,EAAekQ,aAAaW;QACnD,MAAMqlB,IAA8Bl2B,EAAekQ,aAAaiC;QAChE,KAAKnS,EAAekQ,aAAaS,kBAAkBvP,eAAekwB,IAAiB;YACjFtxB,EAAekQ,aAAaS,kBAAkB2gB,KAAkB,CAAC;AACnE;QACA,MAAM6E,IAAW,CAACC,IAAoB;YACpCpF,EAAmBplB,MAAMC,UAAU;YACnC7L,EAAekQ,aAAaS,kBAAkB2gB,GAAgBvE,KAAW;YACzE,IAAIlxB,GAAG2B,QAAQyzB,IAAa;gBAC1BA,EAAWlnB,YAAY,UAAU/J,EAAekV;AAClD;YACA,IAAIrZ,GAAG2B,QAAQw4B,IAAgB;gBAC7BA,EAAcpqB,MAAMC,UAAU;AAChC;YACA,IAAIhQ,GAAG2B,QAAQy4B,IAAgB;gBAC7BA,EAAcrqB,MAAMC,UAAU;AAChC;YACA,IAAIhQ,GAAG2B,QAAQq0B,IAAO;gBACpBA,EAAKjmB,MAAMC,UAAU;AACvB;YACA,IAAIuqB,GAAmB;gBACrBjN,EAA+B+M,GAA6Bl2B;AAC9D;AAAA;QAEF,MAAMq2B,IAAW,CAACzrB,GAAIwrB,IAAoB;YACxC,IAAIv6B,GAAG2B,QAAQoN,IAAK;gBAClB9B,WAAW6B,aAAaC;gBACxB,KAAKkb,GAAsB;oBACzBwQ,GAAyCt2B;AAC3C;AACF;YACAgxB,EAAmBplB,MAAMC,UAAU;YACnC7L,EAAekQ,aAAaS,kBAAkB2gB,GAAgBvE,KAAW;YACzE,IAAIlxB,GAAG2B,QAAQyzB,IAAa;gBAC1BA,EAAWlnB,YAAY,UAAU/J,EAAekV;AAClD;YACA,IAAIrZ,GAAG2B,QAAQw4B,IAAgB;gBAC7BA,EAAcpqB,MAAMC,UAAU;AAChC;YACA,IAAIhQ,GAAG2B,QAAQy4B,IAAgB;gBAC7BA,EAAcrqB,MAAMC,UAAU;AAChC;YACA,IAAIhQ,GAAG2B,QAAQq0B,IAAO;gBACpBA,EAAKjmB,MAAMC,UAAU;AACvB;YACA,IAAIuqB,GAAmB;gBACrBjN,EAA+B+M,GAA6Bl2B;AAC9D;AAAA;QAEF,MAAMu2B,IAAgB,CAAC3rB,GAAI4rB,GAAWJ,IAAoB;YACxD,IAAIv6B,GAAG2B,QAAQoN,IAAK;gBAClB9B,WAAW6B,aAAaC;gBACxB,KAAKkb,GAAsB;oBACzBwQ,GAAyCt2B;AAC3C;AACF;YACA,IAAIw2B,GAAW;gBACbL,EAASC;AACX,mBAAO;gBACLC,EAAS,MAAMD;AACjB;AAAA;QAEF,IAAIK,IAAWz2B,EAAegT;QAC9B,IAAIhT,EAAekQ,aAAaS,kBAAkB2gB,GAAgBlwB,eAAe2rB,IAAU;YACzF0J,IAAWz2B,EAAekQ,aAAaS,kBAAkB2gB,GAAgBvE;AAC3E,eAAO;YACL,KAAK/sB,EAAekQ,aAAaoB,aAAa;gBAC5C,IAAI+d,MAAa,YAAyBrvB,EAAeoW,UAAUkE,aAAa,KAAKsJ,KAAc5jB,EAAeoW,UAAUkE,YAAY;oBACtImc,IAAW;AACb,uBAAO,IAAIpH,MAAa,WAAuBrvB,EAAeoW,UAAUmE,YAAY,KAAKqJ,KAAc5jB,EAAeoW,UAAUmE,WAAW;oBACzIkc,IAAW;AACb,uBAAO,IAAIpH,MAAa,SAAmBrvB,EAAeoW,UAAUoE,UAAU,KAAKoJ,KAAc5jB,EAAeoW,UAAUoE,SAAS;oBACjIic,IAAW;AACb,uBAAO,IAAIpH,MAAa,SAAmBrvB,EAAeoW,UAAUqE,UAAU,KAAKmJ,KAAc5jB,EAAeoW,UAAUqE,SAAS;oBACjIgc,IAAW;AACb,uBAAO,IAAIpH,MAAa,UAAqBrvB,EAAeoW,UAAUsE,WAAW,KAAKkJ,KAAc5jB,EAAeoW,UAAUsE,UAAU;oBACrI+b,IAAW;AACb;AACF;YACAz2B,EAAekQ,aAAaS,kBAAkB2gB,GAAgBvE,KAAW0J;AAC3E;QACA,IAAI56B,GAAG2B,QAAQyzB,IAAa;YAC1BA,EAAWjJ,UAAWpd,KAAO2rB,EAAc3rB,GAAIqmB,EAAWlnB,cAAc,UAAU/J,EAAekV;YACjG+b,EAAW5H,aAAavgB,WAAW6B;AACrC;QACA,IAAI9O,GAAG2B,QAAQy4B,IAAgB;YAC7BA,EAAcjO,UAAWpd,KAAOyrB,EAASzrB;YACzCqrB,EAAc5M,aAAavgB,WAAW6B;AACxC;QACA4rB,EAAc,MAAME,GAAU;QAC9Bz2B,EAAekQ,aAAaU;AAC9B;IACA,SAASsjB,GAAYl0B,GAAgBizB,GAAiBlB;QACpD,IAAIz0B,IAAU;QACd,IAAI0C,EAAemT,eAAe4e,GAAY;YAC5Cz0B,IAAUwL,WAAWwB,eAAe2oB,GAAiB,QAAQ,SAAS;AACxE;QACA,OAAO31B;AACT;IACA,SAASo1B,GAAoB1yB,GAAgB6J,GAAWtM,GAAQm5B,GAAiB3E;QAC/E,MAAM4E,IAAkB7tB,WAAWc,OAAOC,GAAW,OAAO;QAC5D,IAAI6sB,KAAmB12B,EAAe8S,mBAAmB9S,EAAeoU,8BAA8B;YACpGtL,WAAWc,OAAO+sB,GAAiB,OAAO,MAAM32B,EAAekV;AACjE;QACApM,WAAWwB,eAAeqsB,GAAiB,OAAO,mBAAmBp5B;QACrE22B,GAAYl0B,GAAgB22B,GAAiB5E;AAC/C;IACA,SAAS8B,GAA+B7zB,GAAgBkzB,GAAsBlB,GAAU4E,GAAoBz3B;QAC1G+zB,EAAqBlL,UAAWpd;YAC9B9B,WAAW6B,aAAaC;YACxB,MAAMisB,IAAiB3D,EAAqB/M,UAAUyH,SAAS,yBAAyB9H;YACxF,MAAMgR,IAAU92B,EAAekQ,aAAaqB;YAC5C,MAAM4Y,IAAgBnqB,EAAekQ,aAAaqB,sBAAsBnV;YACxE,IAAI26B,IAAsB;YAC1B,KAAKjR,GAAsB;gBACzB9lB,EAAekQ,aAAakC,iBAAiB;AAC/C;YACA,KAAK,IAAIiY,IAAc,GAAGA,IAAcF,GAAeE,KAAe;gBACpE,MAAMU,IAAgB+L,EAAQzM,GAAatB,OAAOiC,iBAAiB;gBACnE,MAAMC,IAAsBF,EAAc3uB;gBAC1C,KAAK,IAAI8uB,IAAoB,GAAGA,IAAoBD,GAAqBC,KAAqB;oBAC5F,MAAMC,IAAeJ,EAAcG;oBACnC,KAAKpF,GAAsB;wBACzBqF,EAAahF,UAAUxD,OAAO;wBAC9BwI,EAAahF,UAAUxD,OAAO;AAChC;oBACA,IAAIqU,GAA6Bh3B,MAAmBqqB,MAAgBuM,GAAoB;wBACtF,MAAMK,IAAgB9L,EAAajF,aAAa5W,UAAUI;wBAC1D,IAAI7T,GAAG8B,cAAcs5B,MAAkBA,MAAkBjF,GAAU;4BACjE,KAAK6E,GAAgB;gCACnB1L,EAAahF,UAAU9D,IAAI;AAC7B,mCAAO;gCACL8I,EAAahF,UAAUxD,OAAO;AAChC;4BACAoU,IAAsB;AACxB;AACF;AACF;gBACA,IAAIA,GAAqB;oBACvB5N,EAA+BkB,GAAarqB;AAC9C;AACF;YACA,KAAK62B,GAAgB;gBACnB3D,EAAqB/M,UAAU9D,IAAI;gBACnCriB,EAAekQ,aAAakC,eAAerR,KAAK5B;AAClD,mBAAO;gBACL+zB,EAAqB/M,UAAUxD,OAAO;gBACtC3iB,EAAekQ,aAAakC,eAAesR,OAAO1jB,EAAekQ,aAAakC,eAAevM,QAAQ1G,IAAO;AAC9G;YACAiiB,QAAQE,YAAYthB,EAAesW,OAAOoG,mBAAmB1c,EAAekQ,aAAa1F;YACzF2e,EAA+ByN,GAAoB52B;AAAe;AAEtE;IACA,SAASs2B,GAAyCt2B;QAChD,IAAIA,EAAekQ,aAAakC,eAAehW,SAAS,GAAG;YACzD,MAAM06B,IAAU92B,EAAekQ,aAAaqB;YAC5C,MAAM4Y,IAAgBnqB,EAAekQ,aAAaqB,sBAAsBnV;YACxE4D,EAAekQ,aAAakC,iBAAiB;YAC7C,KAAK,IAAIiY,IAAc,GAAGA,IAAcF,GAAeE,KAAe;gBACpE,IAAI6M,IAAiB;gBACrB,MAAMnM,IAAgB+L,EAAQzM,GAAatB,OAAOiC,iBAAiB;gBACnE,MAAMC,IAAsBF,EAAc3uB;gBAC1C,KAAK,IAAI8uB,IAAoB,GAAGA,IAAoBD,GAAqBC,KAAqB;oBAC5F,MAAMC,IAAeJ,EAAcG;oBACnC,IAAIC,EAAahF,UAAUyH,SAAS,uBAAuB;wBACzDzC,EAAahF,UAAUxD,OAAO;wBAC9BuU,IAAiB;AACnB;oBACA,IAAIF,GAA6Bh3B,MAAmBmrB,EAAahF,UAAUyH,SAAS,sBAAsB;wBACxGzC,EAAahF,UAAUxD,OAAO;wBAC9BuU,IAAiB;AACnB;AACF;gBACA,IAAIA,GAAgB;oBAClB/N,EAA+BkB,GAAarqB;oBAC5CohB,QAAQE,YAAYthB,EAAesW,OAAOoG,mBAAmB1c,EAAekQ,aAAa1F;AAC3F;AACF;AACF;AACF;IACA,SAASwsB,GAA6Bh3B;QACpC,OAAOA,EAAeoQ,OAAOiC,WAAWrS,EAAeoQ,OAAOE,iBAAiB,KAAKtQ,EAAeoQ,OAAO6G;AAC5G;IACA,SAASwa,GAA4BzxB,GAAgBmrB,GAAclb,GAAc9Q,GAAMjD,GAAOmnB,GAAc2P,GAAaU;QACvHvI,EAAagM,gBAAiBvsB;YAC5B9B,WAAW6B,aAAaC;YACxB5K,EAAekQ,aAAagC,YAAYzH,YAAY;YACpD,IAAIwF,KAAgBjQ,EAAekQ,aAAakC,eAAehW,UAAU,GAAG;gBAC1E,MAAMg7B,IAAe9R,YAAYE,YAAYxlB,GAAgB2lB,EAAe/gB,KAAK2b,sBAAsBoF,EAAe/gB,KAAK4b;gBAC3H4W,EAAapP,UAAW4B,KAAQyN,GAAsBzN,GAAK5pB,GAAgBmrB,GAAchsB,GAAMkkB,GAAcnnB,GAAO82B,GAAaU;AACnI;YACA,MAAM4D,IAAehS,YAAYE,YAAYxlB,GAAgB2lB,EAAe/gB,KAAKiZ,sBAAsB8H,EAAe/gB,KAAKka;YAC3HwY,EAAatP,UAAW4B,KAAQ2N,GAAsB3N,GAAK5pB,GAAgB9D;YAC3E,IAAI+T,KAAgBjQ,EAAekQ,aAAakC,eAAehW,UAAU,GAAG;gBAC1E,MAAMo7B,IAAiBlS,YAAYE,YAAYxlB,GAAgB2lB,EAAe/gB,KAAKic,wBAAwB8E,EAAe/gB,KAAKkc;gBAC/H0W,EAAexP,UAAW4B,KAAQ6N,GAAwB7N,GAAK5pB,GAAgBb,GAAMkkB,GAAc2P;AACrG;YACAlqB,WAAWyC,2BAA2BX,GAAI5K,EAAekQ,aAAagC,aAAa;AAAE;AAEzF;IACA,SAASmlB,GAAsBzsB,GAAI5K,GAAgBmrB,GAAchsB,GAAMkkB,GAAcnnB,GAAO82B,GAAaU;QACvG5qB,WAAW6B,aAAaC;QACxBgrB,GAAuBhrB,GAAI5K,GAAgBb,GAAMkkB,GAAcnnB,GAAOivB,GAAc6H,GAAaU;QACjGpO,YAAYlD,KAAKpiB;AACnB;IACA,SAASu3B,GAAsB3sB,GAAI5K,GAAgB9D;QACjD4M,WAAW6B,aAAaC;QACxB,IAAI8sB,IAAYx7B;QAChB,IAAI8D,EAAekQ,aAAakC,eAAehW,WAAW,GAAG;YAC3Ds7B,IAAY13B,EAAekQ,aAAakC;AAC1C;QACAoK,EAAOxc,GAAgB03B;QACvBpS,YAAYlD,KAAKpiB;AACnB;IACA,SAASy3B,GAAwB7sB,GAAI5K,GAAgBb,GAAMkkB,GAAc2P;QACvElqB,WAAW6B,aAAaC;QACxB,IAAIooB,GAAa;YACf7zB,EAAKukB,OAAOb,IAAIO,qBAAqBC,IAAe;AACtD,eAAO;mBACElkB,EAAKkkB;AACd;QACAiC,YAAYlD,KAAKpiB;QACjBwmB,EAAuBxmB,GAAgB;QACvC0pB,EAAoB1pB,GAAgB2lB,EAAe/gB,KAAKwb;AAC1D;IACA,SAASqH,GAAyBznB;QAChC,IAAIA,EAAeuT,qBAAqB;YACtC,MAAMlC,IAAwBvI,WAAWc,OAAO5J,EAAekQ,aAAa1F,SAAS,OAAO;YAC5F,MAAMmtB,IAAkB7uB,WAAWc,OAAOyH,GAAuB,OAAO;YACxEvI,WAAWwB,eAAeqtB,GAAiB,KAAK,sBAAsBhS,EAAe/gB,KAAKma;YAC1FjW,WAAWwB,eAAeqtB,GAAiB,KAAK,qBAAqBhS,EAAe/gB,KAAKoa;YACzFlW,WAAWwB,eAAeqtB,GAAiB,KAAK,2BAA2BhS,EAAe/gB,KAAKqa;YAC/Fjf,EAAekQ,aAAamB,wBAAwBA;YACpDrR,EAAekQ,aAAa1F,QAAQie,aAAa,MAAMmP,GAAY53B,GAAgBqR;YACnFrR,EAAekQ,aAAa1F,QAAQqtB,cAAc,MAAMD,GAAY53B,GAAgBqR;YACpFA,EAAsBoX,aAAa3f,WAAW6B;YAC9C0G,EAAsBwmB,cAAc/uB,WAAW6B;YAC/C0G,EAAsBymB,cAAc,MAAMzmB,EAAsBzF,MAAMC,UAAU;YAChFwF,EAAsBqX,SAAU9d,KAAOmtB,GAAYntB,GAAI5K;AACzD;AACF;IACA,SAAS43B,GAAY53B,GAAgBqR;QACnC,KAAKrR,EAAekQ,aAAa6B,gBAAgB;YAC/CV,EAAsBzF,MAAMC,UAAU;AACxC;AACF;IACA,SAASksB,GAAYntB,GAAI5K;QACvB8I,WAAW6B,aAAaC;QACxB5K,EAAekQ,aAAamB,sBAAsBzF,MAAMC,UAAU;QAClE,IAAIhQ,GAAG2B,QAAQuO,OAAOisB,eAAeptB,EAAGqtB,aAAavJ,MAAMtyB,SAAS,GAAG;YACrEqyB,GAAgB7jB,EAAGqtB,aAAavJ,OAAO1uB;AACzC;AACF;IACA,SAASyuB,GAAgBC,GAAO1uB,GAAgBquB,IAAkB;QAChE,IAAI6J,IAAcxJ,EAAMtyB;QACxB,IAAI+7B,IAAY;QAChB,IAAIC,IAAY,CAAC;QACjB,MAAMC,IAAa,CAACl5B,GAAM1D;YACxB08B;YACAC,EAAU38B,KAAY0D;YACtB,IAAIg5B,MAAcD,GAAa;gBAC7BI,GAAkBt4B,GAAgBo4B,GAAW/J,GAAiB8J,GAAWD;AAC3E;AAAA;QAEF,KAAK,IAAIK,IAAY,GAAGA,IAAYL,GAAaK,KAAa;YAC5D,MAAMC,IAAO9J,EAAM6J;YACnB,MAAME,IAAgBD,EAAKh4B,KAAKoH,MAAM,KAAe8wB,MAAM97B;YAC3D,IAAI67B,MAAkB,QAAQ;gBAC5BE,GAAeH,GAAMH;AACvB,mBAAO;gBACLH;AACF;AACF;AACF;IACA,SAASS,GAAeH,GAAMH;QAC5B,MAAMO,IAAS,IAAIZ;QACnB,IAAIa,IAAa;QACjBD,EAAOE,YAAY,MAAMT,EAAWQ,GAAYL,EAAKh4B;QACrDo4B,EAAOG,SAAUnuB;YACf,MAAMouB,IAAOp5B,SAASoE,mBAAmB4G,EAAGquB,OAAO90B,QAAQwhB;YAC3D,IAAIqT,EAAK50B,UAAUvI,GAAG4B,cAAcu7B,EAAKt9B,SAAS;gBAChDm9B,IAAa,IAAIv9B;gBACjBu9B,EAAWp9B,WAAW+8B,EAAKh4B;gBAC3Bq4B,EAAWn9B,SAASs9B,EAAKt9B;AAC3B;AAAA;QAEFk9B,EAAOM,WAAWV;AACpB;IACA,SAASF,GAAkBt4B,GAAgBo4B,GAAW/J,GAAiB8J,GAAWD;QAChFl4B,EAAekQ,aAAaS,oBAAoB,CAAC;QACjD,MAAMye,IAAO1rB,OAAO0rB,KAAKgJ;QACzBhJ,EAAKpK;QACL,IAAInpB,GAAGiC,cAAcuwB,IAAkB;YACrC,KAAK,IAAI8K,IAAW,GAAGA,IAAWhB,GAAWgB,KAAY;gBACvD,IAAI9K,IAAkBruB,EAAeb,KAAK/C,SAAS,GAAG;oBACpD4D,EAAeb,KAAK4B,KAAKq3B,EAAUhJ,EAAK+J;AAC1C,uBAAO;oBACLn5B,EAAeb,KAAKukB,OAAO2K,GAAiB,GAAG+J,EAAUhJ,EAAK+J;AAChE;AACF;YACAn5B,EAAekQ,aAAaC,4BAA4Bke,IAAkBA,IAAkBruB,EAAeoQ,OAAOE;AACpH,eAAO;YACLtQ,EAAekQ,aAAaC,4BAA4B;YACxD,IAAIgoB,MAAc,GAAG;gBACnBn4B,EAAeb,OAAOi5B,EAAUhJ,EAAK;AACvC,mBAAO;gBACLpvB,EAAeb,OAAO;gBACtB,KAAK,IAAIg6B,IAAW,GAAGA,IAAWhB,GAAWgB,KAAY;oBACvDn5B,EAAeb,KAAK4B,KAAKq3B,EAAUhJ,EAAK+J;AAC1C;AACF;AACF;QACA3S,EAAuBxmB;QACvB0pB,EAAoB1pB,GAAgB2lB,EAAe/gB,KAAKib,aAAazf,QAAQ,OAAO83B,EAAYv7B;QAChGykB,QAAQE,YAAYthB,EAAesW,OAAO8iB,WAAWp5B,EAAekQ,aAAa1F;AACnF;IACA,SAAS2R,GAASnc,GAAgBb;QAChC,MAAM6nB,IAAW9mB,KAAKC,UAAUP,SAASE,qBAAqBX,GAAMwmB,GAAgB3lB,IAAiBA,EAAesW,OAAOuF,oBAAoB7b,EAAewT;QAC9J,IAAI3X,GAAG8B,cAAcqpB,IAAW;YAC9B,MAAMqS,IAAWvwB,WAAWc,OAAON,SAASuY,MAAM;YAClDwX,EAASztB,MAAMC,UAAU;YACzBwtB,EAASjR,aAAa,UAAU;YAChCiR,EAASjR,aAAa,QAAQ,uCAAuCkR,mBAAmBtS;YACxFqS,EAASjR,aAAa,YAAYmR,GAAkBv5B;YACpDq5B,EAAS1K;YACTrlB,SAASuY,KAAKnf,YAAY22B;YAC1BvL,EAAgB9tB;YAChB0pB,EAAoB1pB,GAAgB2lB,EAAe/gB,KAAKgb;YACxDwB,QAAQE,YAAYthB,EAAesW,OAAO6F,UAAUnc,EAAekQ,aAAa1F;AAClF;AACF;IACA,SAAS+uB,GAAkBv5B;QACzB,MAAMlD,IAAuB,IAAIqB;QACjC,MAAM1C,IAAWoS,SAASS,2BAA2BqX,GAAgB7oB,GAAMkD,EAAekU;QAC1F,OAAOzY;AACT;IACA,SAASgrB,GAAoBzmB,GAAgBw5B,IAAY;QACvD,MAAMC,IAAeD,IAAYlwB,SAAS2Y,mBAAmB3Y,SAAS4Y;QACtE,MAAMwX,IAAaF,IAAYztB,OAAOkW,mBAAmBlW,OAAOmW;QAChEuX,EAAa,YAAY7uB,KAAO+uB,GAAkB/uB,GAAI5K;QACtDy5B,EAAa,UAAU7uB,KAAOgvB,GAAgBhvB;QAC9C6uB,EAAa,gBAAe,MAAMI,GAA2B75B;QAC7D05B,EAAW,UAAS,MAAMG,GAA2B75B;QACrD05B,EAAW,UAAS,MAAM5T,IAAuB;AACnD;IACA,SAAS+T,GAA2B75B;QAClC,KAAK8lB,GAAsB;YACzBwQ,GAAyCt2B;AAC3C;AACF;IACA,SAAS25B,GAAkB/uB,GAAI5K;QAC7B8lB,IAAuBgE,GAAalf;QACpC,IAAI5K,EAAe4T,uBAAuBiS,MAAyB,KAAKD,EAAexkB,eAAepB,EAAekQ,aAAa1F,QAAQiI,QAAQzS,EAAekQ,aAAaO,UAAU;YACtL,IAAIqZ,GAAalf,MAAOA,EAAGif,SAAS,QAAgB;gBAClDjf,EAAGC;gBACH2iB,EAAuBxtB,GAAgBA,EAAeb;AACxD,mBAAO,IAAI2qB,GAAalf,MAAOA,EAAGif,SAAS,OAAiB;gBAC1Djf,EAAGC;gBACHwiB,EAAmBrtB;AACrB,mBAAO,IAAI4K,EAAGif,SAAS,aAAwB;gBAC7Cjf,EAAGC;gBACH4iB,EAAWztB;AACb,mBAAO,IAAI4K,EAAGif,SAAS,cAA0B;gBAC/Cjf,EAAGC;gBACH6iB,EAAW1tB;AACb,mBAAO,IAAI4K,EAAGif,SAAS,WAAoB;gBACzCjf,EAAGC;gBACHoQ,EAAWjb;AACb,mBAAO,IAAI4K,EAAGif,SAAS,aAAwB;gBAC7Cjf,EAAGC;gBACHmQ,EAAUhb;AACZ,mBAAO,IAAI4K,EAAGif,SAAS,UAAuB;gBAC5Cjf,EAAGC;gBACH,KAAKijB,EAAgB9tB,OAAoB8lB,GAAsB;oBAC7DwQ,GAAyCt2B;AAC3C;AACF;AACF;AACF;IACA,SAAS45B,GAAgBhvB;QACvBkb,IAAuBgE,GAAalf;AACtC;IACA,SAASkf,GAAalf;QACpB,OAAOA,EAAGkvB,WAAWlvB,EAAGmvB;AAC1B;IACA,SAASC,GAAeh6B;QACtBA,EAAekQ,aAAa1F,QAAQC,YAAY;QAChDzK,EAAekQ,aAAa1F,QAAQ2b,UAAUxD,OAAO;QACrD3iB,EAAekQ,aAAa1F,QAAQ2b,UAAUxD,OAAO;QACrD,IAAI9mB,GAAG8B,cAAcqC,EAAe0S,QAAQ;YAC1C,MAAM2T,IAAUrmB,EAAe0S,MAAM9K,MAAM;YAC3C,MAAM0e,IAAgBD,EAAQjqB;YAC9B,KAAK,IAAImqB,IAAa,GAAGA,IAAaD,GAAeC,KAAc;gBACjEvmB,EAAekQ,aAAa1F,QAAQ2b,UAAUxD,OAAO0D,EAAQE,GAAY1pB;AAC3E;AACF;QACA,IAAImD,EAAekQ,aAAa1F,QAAQT,UAAUlN,WAAW,IAAgB;YAC3EmD,EAAekQ,aAAa1F,QAAQ4b,gBAAgB;AACtD;QACA,IAAIpmB,EAAekQ,aAAaQ,OAAO;YACrC1Q,EAAekQ,aAAa1F,QAAQ4b,gBAAgB;AACtD;QACAK,GAAoBzmB,GAAgB;QACpC0hB,QAAQI,eAAe9hB,GAAgB;QACvCslB,YAAYxD,eAAe9hB,GAAgB;QAC3C0hB,QAAQiB,OAAO3iB;QACfslB,YAAY3C,OAAO3iB;QACnBohB,QAAQE,YAAYthB,EAAesW,OAAO4E,WAAWlb,EAAekQ,aAAa1F;AACnF;IACA,MAAMyvB,KAAU;QAMdC,SAAS,SAASC;YAChB,IAAIt+B,GAAG8B,cAAcw8B,MAAcvU,EAAexkB,eAAe+4B,IAAY;gBAC3E,MAAMn6B,IAAiB4lB,EAAeuU;gBACtC3T,EAAuBxmB;gBACvBohB,QAAQE,YAAYthB,EAAesW,OAAOwE,WAAW9a,EAAekQ,aAAa1F;AACnF;YACA,OAAOyvB;AACT;QACAG,YAAY;YACV,KAAK,MAAMD,KAAavU,GAAgB;gBACtC,IAAIA,EAAexkB,eAAe+4B,IAAY;oBAC5C,MAAMn6B,IAAiB4lB,EAAeuU;oBACtC3T,EAAuBxmB;oBACvBohB,QAAQE,YAAYthB,EAAesW,OAAOwE,WAAW9a,EAAekQ,aAAa1F;AACnF;AACF;YACA,OAAOyvB;AACT;QACAlU,QAAQ,SAASvb,GAASgI;YACxB,IAAI3W,GAAG4B,cAAc+M,MAAY3O,GAAG4B,cAAc+U,IAAU;gBAC1DoP,EAAcjS,QAAQE,QAAQE,kBAAkByC,GAAShI;AAC3D;YACA,OAAOyvB;AACT;QACAI,WAAW;YACTtU;YACA,OAAOkU;AACT;QACAK,SAAS,SAASH;YAChB,IAAIt+B,GAAG8B,cAAcw8B,MAAcvU,EAAexkB,eAAe+4B,IAAY;gBAC3Enf,EAAU4K,EAAeuU;AAC3B;YACA,OAAOF;AACT;QACAM,UAAU,SAASJ;YACjB,IAAIt+B,GAAG8B,cAAcw8B,MAAcvU,EAAexkB,eAAe+4B,IAAY;gBAC3Elf,EAAW2K,EAAeuU;AAC5B;YACA,OAAOF;AACT;QACAO,UAAU,SAASL;YACjB,IAAIt+B,GAAG8B,cAAcw8B,MAAcvU,EAAexkB,eAAe+4B,IAAY;gBAC3E,MAAMn6B,IAAiB4lB,EAAeuU;gBACtC,IAAIn6B,EAAeoQ,OAAOiC,SAAS;oBACjCob,EAAW7H,EAAeuU;AAC5B;AACF;YACA,OAAOF;AACT;QACAQ,UAAU,SAASN;YACjB,IAAIt+B,GAAG8B,cAAcw8B,MAAcvU,EAAexkB,eAAe+4B,IAAY;gBAC3E,MAAMn6B,IAAiB4lB,EAAeuU;gBACtC,IAAIn6B,EAAeoQ,OAAOiC,SAAS;oBACjCqb,EAAW9H,EAAeuU;AAC5B;AACF;YACA,OAAOF;AACT;QACAS,eAAe,SAASP;YACtB,IAAI78B,IAAU;YACd,IAAIzB,GAAG8B,cAAcw8B,MAAcvU,EAAexkB,eAAe+4B,IAAY;gBAC3E,MAAMn6B,IAAiB4lB,EAAeuU;gBACtC78B,IAAU6mB,KAAK8L,MAAMjwB,EAAekQ,aAAaC,4BAA4B,KAAKnQ,EAAeoQ,OAAOE;AAC1G;YACA,OAAOhT;AACT;QAMAq9B,SAAS,SAASR,GAAWnB;YAC3B,IAAIn9B,GAAG8B,cAAcw8B,MAAct+B,GAAG2B,QAAQw7B,MAASpT,EAAexkB,eAAe+4B,IAAY;gBAC/F,IAAIS,IAAa;gBACjB,IAAI/+B,GAAG8B,cAAcq7B,IAAO;oBAC1B,MAAM6B,IAAaj7B,SAASoE,mBAAmBg1B,GAAMrT;oBACrD,IAAIkV,EAAWz2B,QAAQ;wBACrBw2B,IAAaC,EAAWn/B;AAC1B;AACF,uBAAO;oBACLk/B,IAAa5B;AACf;gBACA,MAAMh5B,IAAiB4lB,EAAeuU;gBACtCn6B,EAAekQ,aAAaC,4BAA4B;gBACxDnQ,EAAekQ,aAAaS,oBAAoB,CAAC;gBACjD3Q,EAAeb,OAAOy7B;gBACtBpU,EAAuBxmB;gBACvBohB,QAAQE,YAAYthB,EAAesW,OAAO8iB,WAAWp5B,EAAekQ,aAAa1F;AACnF;YACA,OAAOyvB;AACT;QACAa,SAAS,SAASX;YAChB,IAAI78B,IAAU;YACd,IAAIzB,GAAG8B,cAAcw8B,MAAcvU,EAAexkB,eAAe+4B,IAAY;gBAC3E78B,IAAUsoB,EAAeuU,GAAWh7B;AACtC;YACA,OAAO7B;AACT;QACAy9B,uBAAuB,SAASZ;YAC9B,IAAI78B,IAAU;YACd,IAAIzB,GAAG8B,cAAcw8B,MAAcvU,EAAexkB,eAAe+4B,IAAY;gBAC3E78B,IAAUsoB,EAAeuU,GAAWjqB,aAAakC;AACnD;YACA,OAAO9U;AACT;QAMA09B,sBAAsB,SAASb,GAAW5nB;YACxC,IAAI1W,GAAG8B,cAAcw8B,MAAcvU,EAAexkB,eAAe+4B,IAAY;gBAC3E,MAAMn6B,IAAiB4lB,EAAeuU;gBACtC,MAAMh7B,IAAOa,EAAeb;gBAC5B,MAAM87B,IAAcj7B,EAAekQ;gBACnC0V,EAAeuU,KAAaxqB,QAAQE,QAAQG,IAAIuC;gBAChDqT,EAAeuU,GAAWh7B,OAAOA;gBACjCymB,EAAeuU,GAAWjqB,eAAe+qB;gBACzCzU,EAAuBZ,EAAeuU;AACxC;YACA,OAAOF;AACT;QACAiB,mBAAmB,SAASf;YAC1B,IAAI78B,IAAU;YACd,IAAIzB,GAAG8B,cAAcw8B,MAAcvU,EAAexkB,eAAe+4B,IAAY;gBAC3E78B,IAAUsoB,EAAeuU;AAC3B;YACA,OAAO78B;AACT;QAMA69B,SAAS,SAAShB;YAChB,IAAIt+B,GAAG8B,cAAcw8B,MAAcvU,EAAexkB,eAAe+4B,IAAY;gBAC3EH,GAAepU,EAAeuU;uBACvBvU,EAAeuU;gBACtBtU;AACF;YACA,OAAOoU;AACT;QACAmB,YAAY;YACV,KAAK,MAAMjB,KAAavU,GAAgB;gBACtC,IAAIA,EAAexkB,eAAe+4B,IAAY;oBAC5CH,GAAepU,EAAeuU;AAChC;AACF;YACAvU,IAAiB,CAAC;YAClBC,IAAuB;YACvB,OAAOoU;AACT;QAMAoB,kBAAkB,SAASve;YACzB,IAAIjhB,GAAG4B,cAAcqf,IAAmB;gBACtC,IAAIwe,IAA0B;gBAC9B,MAAMC,IAA2B5V;gBACjC,KAAK,MAAMtC,KAAgBvG,GAAkB;oBAC3C,IAAIA,EAAiB1b,eAAeiiB,MAAiBsC,EAAevkB,eAAeiiB,MAAiBkY,EAAyBlY,OAAkBvG,EAAiBuG,IAAe;wBAC7KkY,EAAyBlY,KAAgBvG,EAAiBuG;wBAC1DiY,IAA0B;AAC5B;AACF;gBACA,IAAIA,GAAyB;oBAC3B3V,IAAiB/I,OAAO/M,QAAQG,IAAIurB;AACtC;AACF;YACA,OAAOtB;AACT;QAMAuB,QAAQ;YACN,MAAMl+B,IAAU;YAChB,KAAK,MAAM68B,KAAavU,GAAgB;gBACtC,IAAIA,EAAexkB,eAAe+4B,IAAY;oBAC5C78B,EAAQyD,KAAKo5B;AACf;AACF;YACA,OAAO78B;AACT;QACAm+B,YAAY;YACV,OAAO;AACT;;IAEF;QACE9V,IAAiB/I,OAAO/M,QAAQG;QAChC1G,SAAS2Y,iBAAiB,qBAAoB,MAAM8D;QACpD,KAAKlqB,GAAG2B,QAAQuO,OAAO2vB,YAAY;YACjC3vB,OAAO2vB,YAAYzB;AACrB;AACD,MAND;AAOD,EApwED","sourcesContent":[null]} \ No newline at end of file diff --git a/dist/jsontree.js.min.css b/dist/jsontree.js.min.css index 0a04fec0..f1e245d6 100644 --- a/dist/jsontree.js.min.css +++ b/dist/jsontree.js.min.css @@ -1 +1 @@ -:root{--json-tree-js-default-font: system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", "Noto Sans", "Liberation Sans", Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";--json-tree-js-bold-weight-light: 300;--json-tree-js-bold-weight-medium: 600;--json-tree-js-bold-weight-heavy: 900;--json-tree-js-title-bold-weight: var(--json-tree-js-bold-weight-heavy);--json-tree-js-color-dark-black: #1c2128;--json-tree-js-color-black: #3b3a3a;--json-tree-js-color-snow-white: #F5F5F5;--json-tree-js-color-light-gray: #BBBBBB;--json-tree-js-color-array: #F28C28;--json-tree-js-color-object: var(--json-tree-js-color-snow-white);--json-tree-js-color-map: #BDB5D5;--json-tree-js-color-set: #FFD700;--json-tree-js-color-boolean: #FF0000;--json-tree-js-color-float: #e3c868;--json-tree-js-color-number: #666bf9;--json-tree-js-color-bigint: #6495ED;--json-tree-js-color-string: #78b13f;--json-tree-js-color-date: #a656f5;--json-tree-js-color-null: var(--json-tree-js-color-light-gray);--json-tree-js-color-undefined: var(--json-tree-js-color-null);--json-tree-js-color-symbol: #DAA06D;--json-tree-js-color-function: var(--json-tree-js-color-null);--json-tree-js-color-lambda: var(--json-tree-js-color-function);--json-tree-js-color-unknown: var(--json-tree-js-color-null);--json-tree-js-color-guid: #c45600;--json-tree-js-color-regexp: #AA336A;--json-tree-js-color-url: #00FFFF;--json-tree-js-color-email: #FA8072;--json-tree-js-color-link: #89CFF0;--json-tree-js-color-html: #FF00FF;--json-tree-js-editable-text-color: var(--json-tree-js-color-snow-white);--json-tree-js-editable-background-color: #2d333b;--json-tree-js-editable-border-color: #454c56;--json-tree-js-highlight-selected-color: #353e4b;--json-tree-js-highlight-compare-color: #4a5768;--json-tree-js-highlight-selected-border-color: #97a4b5;--json-tree-js-drag-and-drop-color: #F5F5F5;--json-tree-js-tooltip-background-color: var(--json-tree-js-container-background-color);--json-tree-js-tooltip-border-color: var(--json-tree-js-container-border-color);--json-tree-js-tooltip-text-color: var(--json-tree-js-color-snow-white);--json-tree-js-side-menu-width: 320px;--json-tree-js-side-menu-right-border-width: calc( var(--json-tree-js-border-size) * 12 );--json-tree-js-container-background-color: #22272e;--json-tree-js-container-border-color: #454c56;--json-tree-js-container-object-left-border-color: #677180;--json-tree-js-paging-column-background-color: #272e37;--json-tree-js-paging-column-border-color: var(--json-tree-js-container-border-color);--json-tree-js-button-background-color: #2d333b;--json-tree-js-button-border-color: var(--json-tree-js-container-border-color);--json-tree-js-button-text-color: var(--json-tree-js-color-snow-white);--json-tree-js-button-background-color-hover: var(--json-tree-js-container-border-color);--json-tree-js-button-text-color-hover: var(--json-tree-js-color-snow-white);--json-tree-js-button-background-color-active: #616b79;--json-tree-js-button-text-color-active: var(--json-tree-js-color-snow-white);--json-tree-js-button-color-disabled: var(--json-tree-js-container-border-color);--json-tree-js-context-menu-background-color: var(--json-tree-js-container-background-color);--json-tree-js-context-menu-border-color: var(--json-tree-js-container-border-color);--json-tree-js-context-menu-text-color: var(--json-tree-js-color-snow-white);--json-tree-js-context-menu-item-background-color-hover: var(--json-tree-js-container-border-color);--json-tree-js-context-menu-item-text-color-hover: var(--json-tree-js-color-snow-white);--json-tree-js-context-menu-item-background-color-active: var(--json-tree-js-button-background-color-active);--json-tree-js-context-menu-item-text-color-active: var(--json-tree-js-color-snow-white);--json-tree-js-setting-panel-background-color: var(--json-tree-js-button-background-color);--json-tree-js-checkbox-background-color-checked: var(--json-tree-js-color-snow-white);--json-tree-js-checkbox-background-color: var(--json-tree-js-setting-panel-background-color);--json-tree-js-checkbox-border-color-checked: var(--json-tree-js-checkbox-background-color-checked);--json-tree-js-checkbox-border-color: var(--json-tree-js-color-snow-white);--json-tree-js-border-radius-editable: 0.25rem;--json-tree-js-border-radius: 0.5rem;--json-tree-js-border-size: 0.5px;--json-tree-js-border-radius-toggle: 0.15rem;--json-tree-js-spacing: 10px;--json-tree-js-spacing-font-size: 0.85rem;--json-tree-js-spacing-toggle-size: 12px;--json-tree-js-spacing-title-bar: calc( ( var(--json-tree-js-spacing) / 2 ) + 2px );--json-tree-js-transition: all .3s;--json-tree-js-animation-length: 0.5s;--json-tree-js-indentation-size: calc( var(--json-tree-js-spacing) * 2 )}div.json-tree-js{-moz-user-select:none;-webkit-user-select:none;-ms-user-select:none;-o-user-select:none;user-select:none;cursor:default;box-sizing:border-box;line-height:normal;font-family:var(--json-tree-js-default-font) !important;display:inline-block;position:relative;border-radius:var(--json-tree-js-border-radius);background-color:var(--json-tree-js-container-background-color);color:var(--json-tree-js-color-snow-white);border:var(--json-tree-js-border-size) solid var(--json-tree-js-container-border-color);font-size:var(--json-tree-js-spacing-font-size);font-weight:var(--json-tree-js-bold-weight-light);width:100%;overflow:hidden;margin:0 !important;max-width:500px}div.json-tree-js *.draggable-item{overflow:hidden !important}div.json-tree-js button{font-family:var(--json-tree-js-default-font)}div.json-tree-js div.no-click{pointer-events:none !important}div.json-tree-js div.page-switch{animation:fade-in-animation var(--json-tree-js-animation-length)}div.json-tree-js *{box-sizing:border-box;line-height:normal}div.json-tree-js *::before,div.json-tree-js *::after{box-sizing:border-box;line-height:normal}div.full-screen{position:fixed;display:flex;flex-direction:column;top:0;left:0;height:100%;width:100%;max-width:none;border-radius:0;border:none;z-index:1000}div.full-screen div.title-bar,div.full-screen div.footer-bar{border-radius:0 !important}div.full-screen div.contents{flex-grow:1;position:relative;max-height:none !important;overflow:auto}div.full-screen div.contents div.no-json{position:absolute;left:50%;top:50%;transform:translate(-50%, -50%)}div.json-tree-js div.no-arrow{display:inline-block;width:var(--json-tree-js-spacing-toggle-size);height:8px;margin-right:calc(var(--json-tree-js-spacing))}div.json-tree-js div.opened-arrow,div.json-tree-js div.closed-arrow{display:inline-block;width:0;height:0;margin-right:calc(var(--json-tree-js-spacing));cursor:pointer;transition:var(--json-tree-js-transition);transition-property:opacity}div.json-tree-js div.opened-arrow:hover,div.json-tree-js div.closed-arrow:hover{opacity:.7}div.json-tree-js div.opened-arrow{border-left:6px solid rgba(0,0,0,0);border-right:6px solid rgba(0,0,0,0);border-top:8px solid var(--json-tree-js-color-snow-white)}div.json-tree-js div.closed-arrow{border-top:5px solid rgba(0,0,0,0);border-bottom:5px solid rgba(0,0,0,0);border-left:var(--json-tree-js-spacing-toggle-size) solid var(--json-tree-js-color-snow-white)}div.json-tree-js div.no-square,div.json-tree-js div.opened-square,div.json-tree-js div.closed-square{display:inline-block;width:10px;height:10px;margin-right:calc(var(--json-tree-js-spacing));border-radius:var(--json-tree-js-border-radius-toggle)}div.json-tree-js div.opened-square{border:3px solid var(--json-tree-js-color-snow-white)}div.json-tree-js div.closed-square{background-color:var(--json-tree-js-color-snow-white)}div.json-tree-js div.opened-square,div.json-tree-js div.closed-square{cursor:pointer;transition:var(--json-tree-js-transition);transition-property:opacity}div.json-tree-js div.opened-square:hover,div.json-tree-js div.closed-square:hover{opacity:.7}div.json-tree-js div.no-circle,div.json-tree-js div.opened-circle,div.json-tree-js div.closed-circle{display:inline-block;width:10px;height:10px;margin-right:calc(var(--json-tree-js-spacing));border-radius:50%}div.json-tree-js div.opened-circle{border:3px solid var(--json-tree-js-color-snow-white)}div.json-tree-js div.closed-circle{background-color:var(--json-tree-js-color-snow-white)}div.json-tree-js div.opened-circle,div.json-tree-js div.closed-circle{cursor:pointer;transition:var(--json-tree-js-transition);transition-property:opacity}div.json-tree-js div.opened-circle:hover,div.json-tree-js div.closed-circle:hover{opacity:.7}div.json-tree-js div.no-plus-minus,div.json-tree-js div.opened-plus-minus,div.json-tree-js div.closed-plus-minus{display:inline-block;width:10px;height:10px;margin-right:calc(var(--json-tree-js-spacing))}div.json-tree-js div.opened-plus-minus,div.json-tree-js div.closed-plus-minus{position:relative}div.json-tree-js div.opened-plus-minus::before,div.json-tree-js div.closed-plus-minus::before{content:"";position:absolute;top:50%;left:0;width:100%;height:3px;margin-top:-1.5px;background-color:var(--json-tree-js-color-snow-white);border-radius:var(--json-tree-js-border-radius-toggle)}div.json-tree-js div.closed-plus-minus::after{content:"";position:absolute;top:0;left:50%;width:3px;height:100%;margin-left:-1.5px;background-color:var(--json-tree-js-color-snow-white);border-radius:var(--json-tree-js-border-radius-toggle)}div.json-tree-js div.opened-plus-minus,div.json-tree-js div.closed-plus-minus{cursor:pointer;transition:var(--json-tree-js-transition);transition-property:opacity}div.json-tree-js div.opened-plus-minus:hover,div.json-tree-js div.closed-plus-minus:hover{opacity:.7}div.json-tree-js div.title-bar{display:flex;padding:var(--json-tree-js-spacing-title-bar);background-color:var(--json-tree-js-color-dark-black);border-radius:var(--json-tree-js-border-radius);border-bottom:var(--json-tree-js-container-border-color) solid var(--json-tree-js-border-size);justify-content:left;align-items:center}div.json-tree-js div.title-bar button{background-color:var(--json-tree-js-button-background-color);border:var(--json-tree-js-border-size) solid var(--json-tree-js-button-border-color);color:var(--json-tree-js-button-text-color);border-radius:var(--json-tree-js-border-radius);padding-top:5px;padding-bottom:5px;padding-left:9px;padding-right:9px;outline:none;transition:var(--json-tree-js-transition)}div.json-tree-js div.title-bar button:disabled{color:var(--json-tree-js-button-color-disabled)}div.json-tree-js div.title-bar button:not(.active):not(:disabled):active{background:var(--json-tree-js-button-background-color-active) !important;color:var(--json-tree-js-button-text-color-active) !important}div.json-tree-js div.title-bar button:not(.active):not(:disabled):hover{cursor:pointer;background:var(--json-tree-js-button-background-color-hover);color:var(--json-tree-js-button-text-color-hover)}div.json-tree-js div.title-bar button{font-weight:var(--json-tree-js-bold-weight-heavy);min-width:30px;min-height:30px;text-align:center}div.json-tree-js div.title-bar button.side-menu{margin-right:calc(var(--json-tree-js-spacing)/2) !important}div.json-tree-js div.title-bar div.title{text-align:left;width:auto;font-weight:var(--json-tree-js-title-bold-weight);font-size:1.2rem;margin:3px;margin-left:calc(var(--json-tree-js-spacing)/2)}div.json-tree-js div.title-bar div.controls{margin-left:calc(var(--json-tree-js-spacing)*2);flex-grow:1;text-align:right;white-space:nowrap}div.json-tree-js div.title-bar div.controls button{margin-left:var(--json-tree-js-spacing-title-bar) !important}div.json-tree-js div.title-bar div.controls button.copy-all{display:none}@media(min-width: 768px){div.json-tree-js div.title-bar div.controls button.copy-all{display:inline-block}}div.json-tree-js div.footer-bar{display:flex;padding:calc(var(--json-tree-js-spacing));background-color:var(--json-tree-js-color-dark-black);border-radius:var(--json-tree-js-border-radius);border-top:var(--json-tree-js-container-border-color) solid var(--json-tree-js-border-size);justify-content:left;align-items:center}div.json-tree-js div.footer-bar div.status-text{flex-grow:1;text-align:left !important}div.json-tree-js div.footer-bar div.status-value-data-type,div.json-tree-js div.footer-bar div.status-value-length,div.json-tree-js div.footer-bar div.status-value-size,div.json-tree-js div.footer-bar div.status-page-index{margin-left:calc(var(--json-tree-js-spacing)*3)}div.json-tree-js div.footer-bar div.status-value-data-type,div.json-tree-js div.footer-bar div.status-value-length,div.json-tree-js div.footer-bar div.status-value-size{animation:fade-in-animation var(--json-tree-js-animation-length)}div.json-tree-js div.footer-bar span.status-count{font-weight:var(--json-tree-js-bold-weight-heavy)}div.json-tree-js div.disabled-background{position:absolute;background-color:rgba(0,0,0,.3);top:0;left:0;height:100%;width:100%;z-index:1000;display:none}div.json-tree-js div.side-menu{display:flex;flex-direction:column;position:absolute;height:100%;top:0;z-index:1500;transition:var(--json-tree-js-transition);background-color:var(--json-tree-js-container-background-color);border-right:var(--json-tree-js-side-menu-right-border-width) solid var(--json-tree-js-color-snow-white);border-radius:var(--json-tree-js-border-radius);width:var(--json-tree-js-side-menu-width);left:calc(0px - (var(--json-tree-js-side-menu-width) + var(--json-tree-js-side-menu-right-border-width)));overflow-x:hidden;overflow-y:auto}div.json-tree-js div.side-menu div.side-menu-title-bar{display:flex;padding:var(--json-tree-js-spacing-title-bar);background-color:var(--json-tree-js-color-dark-black);border-radius:var(--json-tree-js-border-radius);border-bottom:var(--json-tree-js-container-border-color) solid var(--json-tree-js-border-size);justify-content:left;align-items:center}div.json-tree-js div.side-menu div.side-menu-title-bar div.side-menu-title-bar-text{text-align:left;width:auto;font-weight:var(--json-tree-js-title-bold-weight);font-size:1.2rem;margin:3px;margin-left:calc(var(--json-tree-js-spacing)/2)}div.json-tree-js div.side-menu div.side-menu-title-bar div.side-menu-title-controls{margin-left:calc(var(--json-tree-js-spacing)*3);flex-grow:1;text-align:right;white-space:nowrap}div.json-tree-js div.side-menu div.side-menu-title-bar div.side-menu-title-controls button{background-color:var(--json-tree-js-button-background-color);border:var(--json-tree-js-border-size) solid var(--json-tree-js-button-border-color);color:var(--json-tree-js-button-text-color);border-radius:var(--json-tree-js-border-radius);padding-top:5px;padding-bottom:5px;padding-left:9px;padding-right:9px;outline:none;transition:var(--json-tree-js-transition)}div.json-tree-js div.side-menu div.side-menu-title-bar div.side-menu-title-controls button:disabled{color:var(--json-tree-js-button-color-disabled)}div.json-tree-js div.side-menu div.side-menu-title-bar div.side-menu-title-controls button:not(.active):not(:disabled):active{background:var(--json-tree-js-button-background-color-active) !important;color:var(--json-tree-js-button-text-color-active) !important}div.json-tree-js div.side-menu div.side-menu-title-bar div.side-menu-title-controls button:not(.active):not(:disabled):hover{cursor:pointer;background:var(--json-tree-js-button-background-color-hover);color:var(--json-tree-js-button-text-color-hover)}div.json-tree-js div.side-menu div.side-menu-title-bar div.side-menu-title-controls button{margin-left:var(--json-tree-js-spacing-title-bar) !important;font-weight:var(--json-tree-js-bold-weight-heavy);min-width:30px;min-height:30px;text-align:center}div.json-tree-js div.side-menu div.side-menu-contents{flex-grow:1;overflow-x:hidden;overflow-y:auto;margin:var(--json-tree-js-spacing)}div.json-tree-js div.side-menu div.side-menu-contents div.settings-panel{padding:var(--json-tree-js-spacing);background-color:var(--json-tree-js-setting-panel-background-color);color:var(--json-tree-js-color-snow-white);border-radius:var(--json-tree-js-border-radius);border:var(--json-tree-js-border-size) solid var(--json-tree-js-container-border-color)}div.json-tree-js div.side-menu div.side-menu-contents div.settings-panel div.settings-panel-title-bar{display:flex;justify-content:left;align-items:center}div.json-tree-js div.side-menu div.side-menu-contents div.settings-panel div.settings-panel-title-bar div.settings-panel-title-text{text-align:left;font-weight:var(--json-tree-js-title-bold-weight);font-size:.9rem;margin:3px;color:var(--json-tree-js-color-snow-white)}div.json-tree-js div.side-menu div.side-menu-contents div.settings-panel div.settings-panel-title-bar div.settings-panel-control-buttons{flex-grow:1;text-align:right}div.json-tree-js div.side-menu div.side-menu-contents div.settings-panel div.settings-panel-title-bar div.settings-panel-control-buttons div.settings-panel-control-button{margin-left:calc(var(--json-tree-js-spacing)/2);border:4px solid var(--json-tree-js-color-snow-white);height:15px;width:15px;border-radius:var(--json-tree-js-border-radius-editable);display:inline-block;transition:var(--json-tree-js-transition);transition-property:opacity}div.json-tree-js div.side-menu div.side-menu-contents div.settings-panel div.settings-panel-title-bar div.settings-panel-control-buttons div.settings-panel-control-button:not(.no-hover):hover{cursor:pointer;opacity:.7}div.json-tree-js div.side-menu div.side-menu-contents div.settings-panel div.settings-panel-title-bar div.settings-panel-control-buttons div.settings-panel-fill{background-color:var(--json-tree-js-color-snow-white)}div.json-tree-js div.side-menu div.side-menu-contents div.settings-panel div.settings-panel-contents{margin-top:var(--json-tree-js-spacing);margin-left:var(--json-tree-js-spacing);text-align:left}div.json-tree-js div.side-menu div.side-menu-contents div.settings-panel div.settings-panel-contents span.array{color:var(--json-tree-js-color-array)}div.json-tree-js div.side-menu div.side-menu-contents div.settings-panel div.settings-panel-contents span.object{color:var(--json-tree-js-color-object)}div.json-tree-js div.side-menu div.side-menu-contents div.settings-panel div.settings-panel-contents span.map{color:var(--json-tree-js-color-map)}div.json-tree-js div.side-menu div.side-menu-contents div.settings-panel div.settings-panel-contents span.set{color:var(--json-tree-js-color-set)}div.json-tree-js div.side-menu div.side-menu-contents div.settings-panel div.settings-panel-contents span.boolean{color:var(--json-tree-js-color-boolean)}div.json-tree-js div.side-menu div.side-menu-contents div.settings-panel div.settings-panel-contents span.float{color:var(--json-tree-js-color-float)}div.json-tree-js div.side-menu div.side-menu-contents div.settings-panel div.settings-panel-contents span.number{color:var(--json-tree-js-color-number)}div.json-tree-js div.side-menu div.side-menu-contents div.settings-panel div.settings-panel-contents span.bigint{color:var(--json-tree-js-color-bigint)}div.json-tree-js div.side-menu div.side-menu-contents div.settings-panel div.settings-panel-contents span.string{color:var(--json-tree-js-color-string)}div.json-tree-js div.side-menu div.side-menu-contents div.settings-panel div.settings-panel-contents span.date{color:var(--json-tree-js-color-date)}div.json-tree-js div.side-menu div.side-menu-contents div.settings-panel div.settings-panel-contents span.symbol{color:var(--json-tree-js-color-symbol)}div.json-tree-js div.side-menu div.side-menu-contents div.settings-panel div.settings-panel-contents span.function{color:var(--json-tree-js-color-function)}div.json-tree-js div.side-menu div.side-menu-contents div.settings-panel div.settings-panel-contents span.unknown{color:var(--json-tree-js-color-unknown)}div.json-tree-js div.side-menu div.side-menu-contents div.settings-panel div.settings-panel-contents span.guid{color:var(--json-tree-js-color-guid)}div.json-tree-js div.side-menu div.side-menu-contents div.settings-panel div.settings-panel-contents span.regexp{color:var(--json-tree-js-color-regexp)}div.json-tree-js div.side-menu div.side-menu-contents div.settings-panel div.settings-panel-contents span.url{color:var(--json-tree-js-color-url)}div.json-tree-js div.side-menu div.side-menu-contents div.settings-panel div.settings-panel-contents span.email{color:var(--json-tree-js-color-email)}div.json-tree-js div.side-menu div.side-menu-contents div.settings-panel div.settings-panel-contents span.html{color:var(--json-tree-js-color-html)}div.json-tree-js div.side-menu div.side-menu-contents div.settings-panel div.settings-panel-contents span.lambda{color:var(--json-tree-js-color-lambda)}div.json-tree-js div.side-menu div.side-menu-contents div.settings-panel div.settings-panel-contents span.null,div.json-tree-js div.side-menu div.side-menu-contents div.settings-panel div.settings-panel-contents span.undefined{background-color:var(--json-tree-js-color-null);border-radius:var(--json-tree-js-border-radius-editable);padding-top:2px;padding-bottom:2px;padding-left:4px;padding-right:4px;color:var(--json-tree-js-color-dark-black)}div.json-tree-js div.side-menu div.side-menu-contents div.settings-panel div.settings-panel-contents div.checkbox:last-child{margin-bottom:0}div.json-tree-js div.side-menu-open{left:0 !important;transition:var(--json-tree-js-transition);box-shadow:0 0 10px 10px var(--json-tree-js-color-black)}div.json-tree-js div.editable{cursor:text !important;outline:none;box-shadow:none;white-space:pre !important}div.json-tree-js div.contents{display:flex;padding:var(--json-tree-js-spacing);margin:0 !important;width:100%}div.json-tree-js div.contents div.contents-column div.column-control-buttons{border-radius:var(--json-tree-js-border-radius);border:var(--json-tree-js-border-size) solid var(--json-tree-js-paging-column-border-color)}div.json-tree-js div.contents div.contents-column,div.json-tree-js div.contents div.contents-column-multiple{position:relative;flex-basis:100%;overflow:auto;padding-right:var(--json-tree-js-spacing);margin-right:var(--json-tree-js-spacing);white-space:nowrap;text-align:left}div.json-tree-js div.contents div.contents-column div.contents-column-line-numbers,div.json-tree-js div.contents div.contents-column-multiple div.contents-column-line-numbers{position:sticky;vertical-align:top;display:inline-block;left:0;z-index:2}div.json-tree-js div.contents div.contents-column div.contents-column-line-numbers div.contents-column-line-number,div.json-tree-js div.contents div.contents-column-multiple div.contents-column-line-numbers div.contents-column-line-number{position:absolute;display:flex;align-items:center;left:0;padding-right:var(--json-tree-js-spacing)}div.json-tree-js div.contents div.contents-column div.contents-column-lines,div.json-tree-js div.contents div.contents-column-multiple div.contents-column-lines{vertical-align:top;display:inline-block;width:fit-content;height:fit-content;z-index:1}div.json-tree-js div.contents div.contents-column div.column-control-buttons,div.json-tree-js div.contents div.contents-column-multiple div.column-control-buttons{position:absolute;display:flex;flex-direction:column;top:0;right:0;background-color:var(--json-tree-js-color-dark-black);border-bottom-left-radius:var(--json-tree-js-border-radius);border-bottom:var(--json-tree-js-border-size) solid var(--json-tree-js-paging-column-border-color);border-left:var(--json-tree-js-border-size) solid var(--json-tree-js-paging-column-border-color);padding:var(--json-tree-js-spacing-title-bar);z-index:50}div.json-tree-js div.contents div.contents-column div.column-control-buttons button,div.json-tree-js div.contents div.contents-column-multiple div.column-control-buttons button{background-color:var(--json-tree-js-button-background-color);border:var(--json-tree-js-border-size) solid var(--json-tree-js-button-border-color);color:var(--json-tree-js-button-text-color);border-radius:var(--json-tree-js-border-radius);padding-top:5px;padding-bottom:5px;padding-left:9px;padding-right:9px;outline:none;transition:var(--json-tree-js-transition)}div.json-tree-js div.contents div.contents-column div.column-control-buttons button:disabled,div.json-tree-js div.contents div.contents-column-multiple div.column-control-buttons button:disabled{color:var(--json-tree-js-button-color-disabled)}div.json-tree-js div.contents div.contents-column div.column-control-buttons button:not(.active):not(:disabled):active,div.json-tree-js div.contents div.contents-column-multiple div.column-control-buttons button:not(.active):not(:disabled):active{background:var(--json-tree-js-button-background-color-active) !important;color:var(--json-tree-js-button-text-color-active) !important}div.json-tree-js div.contents div.contents-column div.column-control-buttons button:not(.active):not(:disabled):hover,div.json-tree-js div.contents div.contents-column-multiple div.column-control-buttons button:not(.active):not(:disabled):hover{cursor:pointer;background:var(--json-tree-js-button-background-color-hover);color:var(--json-tree-js-button-text-color-hover)}div.json-tree-js div.contents div.contents-column div.column-control-buttons button,div.json-tree-js div.contents div.contents-column-multiple div.column-control-buttons button{margin-bottom:var(--json-tree-js-spacing-title-bar);font-weight:var(--json-tree-js-bold-weight-heavy);min-width:30px;min-height:30px;text-align:center}div.json-tree-js div.contents div.contents-column div.column-control-buttons button:last-child,div.json-tree-js div.contents div.contents-column-multiple div.column-control-buttons button:last-child{margin-bottom:0}div.json-tree-js div.contents div.contents-column:last-child,div.json-tree-js div.contents div.contents-column-multiple:last-child{padding-right:0;margin-right:0}div.json-tree-js div.contents div.contents-column div.contents-column-line-numbers{background-color:var(--json-tree-js-container-background-color)}div.json-tree-js div.contents div.contents-column-multiple{background-color:var(--json-tree-js-paging-column-background-color);border:var(--json-tree-js-border-size) solid var(--json-tree-js-paging-column-border-color);padding:var(--json-tree-js-spacing);border-radius:var(--json-tree-js-border-radius)}div.json-tree-js div.contents div.contents-column-multiple div.contents-column-line-numbers{background-color:var(--json-tree-js-paging-column-background-color);margin-left:calc(-1*var(--json-tree-js-spacing));left:calc(-1*var(--json-tree-js-spacing))}div.json-tree-js div.contents div.contents-column-multiple div.contents-column-line-numbers div.contents-column-line-number{padding-left:var(--json-tree-js-spacing)}div.json-tree-js div.contents span.array{color:var(--json-tree-js-color-array)}div.json-tree-js div.contents span.object{color:var(--json-tree-js-color-object)}div.json-tree-js div.contents span.map{color:var(--json-tree-js-color-map)}div.json-tree-js div.contents span.set{color:var(--json-tree-js-color-set)}div.json-tree-js div.contents span.boolean{color:var(--json-tree-js-color-boolean)}div.json-tree-js div.contents span.float{color:var(--json-tree-js-color-float)}div.json-tree-js div.contents span.number{color:var(--json-tree-js-color-number)}div.json-tree-js div.contents span.bigint{color:var(--json-tree-js-color-bigint)}div.json-tree-js div.contents span.string{color:var(--json-tree-js-color-string)}div.json-tree-js div.contents span.date{color:var(--json-tree-js-color-date)}div.json-tree-js div.contents span.symbol{color:var(--json-tree-js-color-symbol)}div.json-tree-js div.contents span.function{color:var(--json-tree-js-color-function)}div.json-tree-js div.contents span.unknown{color:var(--json-tree-js-color-unknown)}div.json-tree-js div.contents span.guid{color:var(--json-tree-js-color-guid)}div.json-tree-js div.contents span.regexp{color:var(--json-tree-js-color-regexp)}div.json-tree-js div.contents span.url{color:var(--json-tree-js-color-url)}div.json-tree-js div.contents span.email{color:var(--json-tree-js-color-email)}div.json-tree-js div.contents span.html{color:var(--json-tree-js-color-html)}div.json-tree-js div.contents span.lambda{color:var(--json-tree-js-color-lambda)}div.json-tree-js div.contents span.null,div.json-tree-js div.contents span.undefined{background-color:var(--json-tree-js-color-null);border-radius:var(--json-tree-js-border-radius-editable);padding-top:2px;padding-bottom:2px;padding-left:4px;padding-right:4px;color:var(--json-tree-js-color-dark-black)}div.json-tree-js div.contents span.size{margin-left:calc(var(--json-tree-js-spacing)/2);font-weight:var(--json-tree-js-bold-weight-light)}div.json-tree-js div.contents div.last-item{margin-bottom:0 !important}div.json-tree-js div.contents div.no-json{font-style:italic}div.json-tree-js div.contents div.no-json span.no-json-text{color:var(--json-tree-js-color-light-gray) !important}div.json-tree-js div.contents div.no-json span.no-json-import-text{margin-left:calc(var(--json-tree-js-spacing)/2);text-decoration:underline;transition:var(--json-tree-js-transition);transition-property:opacity}div.json-tree-js div.contents div.no-json span.no-json-import-text:not(.no-hover):hover{cursor:pointer;opacity:.7}div.json-tree-js div.drag-and-drop-background{position:absolute;background-color:rgba(0,0,0,.7);top:0;left:0;height:100%;width:100%;z-index:1000;display:none;text-align:center;color:var(--json-tree-js-drag-and-drop-color)}div.json-tree-js div.drag-and-drop-background div.notice-text{position:absolute;left:50%;top:50%;transform:translate(-50%, -50%);font-size:1rem;pointer-events:none}div.json-tree-js div.drag-and-drop-background div.notice-text p{margin:0;padding:0}div.json-tree-js div.drag-and-drop-background div.notice-text p.notice-text-symbol{font-size:4.5rem;font-weight:var(--json-tree-js-bold-weight-light)}div.json-tree-js div.drag-and-drop-background div.notice-text p.notice-text-title{margin-top:calc(var(--json-tree-js-spacing));font-weight:var(--json-tree-js-title-bold-weight)}div.json-tree-js div.drag-and-drop-background div.notice-text p.notice-text-description{margin-top:calc(var(--json-tree-js-spacing));font-weight:var(--json-tree-js-bold-weight-light)}div.json-tree-js div.object-type-title{font-weight:var(--json-tree-js-bold-weight-heavy);text-align:left !important;width:fit-content}div.json-tree-js div.object-type-title span.main-title{transition:var(--json-tree-js-transition);transition-property:opacity}div.json-tree-js div.object-type-title span.main-title:not(.no-hover):hover{cursor:pointer;opacity:.7}div.json-tree-js div.object-type-title span.root-name{margin-right:calc(var(--json-tree-js-spacing)/2);font-weight:var(--json-tree-js-bold-weight-light)}div.json-tree-js div.object-type-title span.data-array-index{margin-right:calc(var(--json-tree-js-spacing)/2);font-weight:var(--json-tree-js-bold-weight-light)}div.json-tree-js div.object-type-title span.split{margin-right:calc(var(--json-tree-js-spacing)/2);font-weight:var(--json-tree-js-bold-weight-light)}div.json-tree-js div.object-type-title span.opening-symbol,div.json-tree-js div.object-type-title span.closed-symbols{margin-left:calc(var(--json-tree-js-spacing)/2);font-weight:var(--json-tree-js-bold-weight-light);color:var(--json-tree-js-color-snow-white) !important}div.json-tree-js div.object-type-title span.closed-symbols:hover{transition:var(--json-tree-js-transition);transition-property:opacity}div.json-tree-js div.object-type-title span.closed-symbols:hover:not(.no-hover):not(.editable):hover{cursor:pointer;opacity:.7}div.json-tree-js div.object-type-contents{margin-top:calc(var(--json-tree-js-spacing)/2);text-align:left !important;width:fit-content;margin-bottom:var(--json-tree-js-spacing);position:relative}div.json-tree-js div.object-type-contents img{height:30px;width:30px;border-radius:var(--json-tree-js-border-radius-editable)}div.json-tree-js div.object-border{border-left:var(--json-tree-js-border-size) dotted var(--json-tree-js-container-object-left-border-color);margin-left:5px}div.json-tree-js div.object-border-no-toggles{margin-left:var(--json-tree-js-border-size)}div.json-tree-js div.object-border-bottom{position:absolute;bottom:0;left:var(--json-tree-js-border-size);height:var(--json-tree-js-border-size);width:var(--json-tree-js-spacing-toggle-size);border-bottom:var(--json-tree-js-border-size) dotted var(--json-tree-js-container-object-left-border-color)}div.json-tree-js div.object-type-contents span.opening-symbol,div.json-tree-js div.object-type-contents span.closed-symbols{margin-left:calc(var(--json-tree-js-spacing)/2);font-weight:var(--json-tree-js-bold-weight-light);color:var(--json-tree-js-color-snow-white) !important}div.json-tree-js div.object-type-contents span.closed-symbols{transition:var(--json-tree-js-transition);transition-property:opacity}div.json-tree-js div.object-type-contents span.closed-symbols:not(.no-hover):not(.editable):hover{cursor:pointer;opacity:.7}div.json-tree-js div.object-type-contents div.closing-symbol div{display:inline-block !important}div.json-tree-js div.object-type-contents div.closing-symbol div.object-type-end{margin-top:3px;font-weight:var(--json-tree-js-bold-weight-light)}div.json-tree-js div.object-type-contents div.object-type-value{white-space:nowrap;margin-top:calc(var(--json-tree-js-spacing)/2);margin-bottom:calc(var(--json-tree-js-spacing)/2);margin-left:var(--json-tree-js-indentation-size)}div.json-tree-js div.object-type-contents div.object-type-value div.object-type-value-title{width:fit-content}div.json-tree-js div.object-type-contents div.object-type-value img{vertical-align:middle}div.json-tree-js div.object-type-contents div.object-type-value span.split{margin-left:calc(var(--json-tree-js-spacing)/2);margin-right:calc(var(--json-tree-js-spacing)/2);font-weight:var(--json-tree-js-bold-weight-light)}div.json-tree-js div.object-type-contents div.object-type-value div.highlight-selected,div.json-tree-js div.object-type-contents div.object-type-value div.highlight-compare{padding:calc(var(--json-tree-js-spacing)/2);border-radius:var(--json-tree-js-border-radius);transition:var(--json-tree-js-transition);transition-property:background-color}div.json-tree-js div.object-type-contents div.object-type-value div.highlight-selected{background-color:var(--json-tree-js-highlight-selected-color);border:var(--json-tree-js-border-size) dashed var(--json-tree-js-highlight-selected-border-color)}div.json-tree-js div.object-type-contents div.object-type-value div.highlight-compare{background-color:var(--json-tree-js-highlight-compare-color)}div.json-tree-js div.object-type-contents div.object-type-value span.data-type,div.json-tree-js div.object-type-contents div.object-type-value span.data-type-color{margin-left:calc(var(--json-tree-js-spacing)/2);font-style:italic;font-size:smaller}div.json-tree-js div.object-type-contents div.object-type-value span.data-type-color{color:var(--json-tree-js-color-light-gray)}div.json-tree-js div.object-type-contents div.object-type-value span.value,div.json-tree-js div.object-type-contents div.object-type-value span.main-title{transition:var(--json-tree-js-transition);transition-property:opacity}div.json-tree-js div.object-type-contents div.object-type-value span.value:not(.no-hover):not(.editable):hover,div.json-tree-js div.object-type-contents div.object-type-value span.main-title:not(.no-hover):not(.editable):hover{cursor:pointer;opacity:.7}div.json-tree-js div.object-type-contents div.object-type-value span.editable,div.json-tree-js div.object-type-contents div.object-type-value span.editable-name{display:inline-block;background-color:var(--json-tree-js-editable-background-color) !important;color:var(--json-tree-js-editable-text-color) !important;border:var(--json-tree-js-border-size) solid var(--json-tree-js-editable-border-color);outline:none !important;box-shadow:none !important;padding:calc(var(--json-tree-js-spacing)/2) !important;border-radius:var(--json-tree-js-border-radius-editable) !important;max-width:250px;cursor:text !important;overflow:scroll;vertical-align:middle}div.json-tree-js div.object-type-contents div.object-type-value span.editable{min-width:70px}div.json-tree-js div.object-type-contents div.object-type-value span.main-title{font-weight:var(--json-tree-js-bold-weight-heavy)}div.json-tree-js div.object-type-contents div.object-type-value span.non-value{font-style:italic}div.json-tree-js div.object-type-contents div.object-type-value span.undefined-or-null{font-style:italic;padding-right:5px;text-transform:uppercase;font-weight:var(--json-tree-js-bold-weight-medium)}div.json-tree-js div.object-type-contents div.object-type-value span.no-properties-text{font-style:italic}div.json-tree-js div.object-type-contents div.object-type-value span.comma{color:var(--json-tree-js-color-snow-white);font-weight:var(--json-tree-js-bold-weight-medium);margin-left:2px}div.json-tree-js div.object-type-contents div.object-type-value span.open-button,div.json-tree-js div.object-type-contents div.object-type-value span.open-button-color{margin-left:calc(var(--json-tree-js-spacing)*2)}div.json-tree-js div.object-type-contents div.object-type-value span.open-button:hover,div.json-tree-js div.object-type-contents div.object-type-value span.open-button-color:hover{text-decoration:underline;cursor:pointer}div.json-tree-js div.object-type-contents div.object-type-value span.open-button-color{color:var(--json-tree-js-color-link)}div.json-tree-js div.checkbox{margin-bottom:calc(var(--json-tree-js-spacing)/3)}div.json-tree-js div.checkbox label.checkbox{-moz-user-select:none;-webkit-user-select:none;-ms-user-select:none;-o-user-select:none;user-select:none;cursor:default;display:inline-block;position:relative;padding-left:20px;padding-top:1px;padding-bottom:2px;color:var(--json-tree-js-color-snow-white)}div.json-tree-js div.checkbox label.checkbox input{display:none !important}div.json-tree-js div.checkbox label.checkbox input:checked~span.check-mark{background-color:var(--json-tree-js-checkbox-background-color-checked);border:var(--json-tree-js-border-size) solid var(--json-tree-js-checkbox-border-color-checked)}div.json-tree-js div.checkbox label.checkbox input:checked~span.check-mark::before{display:block}div.json-tree-js div.checkbox label.checkbox input:disabled~span.check-mark,div.json-tree-js div.checkbox label.checkbox input:disabled~span.text{opacity:.5}div.json-tree-js div.checkbox label.checkbox input:disabled~span.check-mark{border:var(--json-tree-js-border-size) solid var(--json-tree-js-color-black) !important}div.json-tree-js div.checkbox label.checkbox span.text{margin-left:calc(var(--json-tree-js-spacing)/3)}div.json-tree-js div.checkbox label.checkbox span.additional-text{margin-left:calc(var(--json-tree-js-spacing)/2)}div.json-tree-js div.checkbox label.checkbox span.check-mark{position:absolute;top:1px;left:0;height:15px;width:15px;background-color:var(--json-tree-js-checkbox-background-color);border-radius:var(--json-tree-js-border-radius-editable);border:var(--json-tree-js-border-size) solid var(--json-tree-js-checkbox-border-color);transition:var(--json-tree-js-transition)}div.json-tree-js div.checkbox label.checkbox span.check-mark::before{content:"";transform:rotate(45deg);position:absolute;display:none;left:4px;top:.5px;width:6px;height:11px;border:solid var(--json-tree-js-color-black);border-width:0 3px 3px 0}div.jsontree-js-context-menu{-moz-user-select:none;-webkit-user-select:none;-ms-user-select:none;-o-user-select:none;user-select:none;cursor:default;box-sizing:border-box;line-height:normal;font-family:var(--json-tree-js-default-font);animation:fade-in-animation var(--json-tree-js-animation-length);position:absolute;background-color:var(--json-tree-js-context-menu-background-color);border:var(--json-tree-js-border-size) solid var(--json-tree-js-context-menu-border-color);color:var(--json-tree-js-context-menu-text-color);border-radius:var(--json-tree-js-border-radius);z-index:2000;max-width:300px;font-size:var(--json-tree-js-spacing-font-size);font-weight:var(--json-tree-js-bold-weight-light);overflow:hidden;display:none}div.jsontree-js-context-menu div.context-menu-item{border-bottom:var(--json-tree-js-border-size) dotted var(--json-tree-js-tooltip-border-color);padding:var(--json-tree-js-spacing);transition:var(--json-tree-js-transition);transition-property:background-color,color;padding-right:40px}div.jsontree-js-context-menu div.context-menu-item span.symbol{margin-right:var(--json-tree-js-spacing);font-weight:var(--json-tree-js-bold-weight-heavy)}div.jsontree-js-context-menu div.context-menu-item span.text{font-weight:var(--json-tree-js-bold-weight-light)}div.jsontree-js-context-menu div.context-menu-item:active{background:var(--json-tree-js-context-menu-item-background-color-active) !important;color:var(--json-tree-js-context-menu-item-text-color-active) !important}div.jsontree-js-context-menu div.context-menu-item:hover{cursor:pointer;background:var(--json-tree-js-context-menu-item-background-color-hover);color:var(--json-tree-js-context-menu-item-text-color-hover)}div.jsontree-js-context-menu div.context-menu-item:last-child{border-bottom:none}div.jsontree-js-tooltip,div.jsontree-js-tooltip-value{-moz-user-select:none;-webkit-user-select:none;-ms-user-select:none;-o-user-select:none;user-select:none;cursor:default;box-sizing:border-box;line-height:normal;font-family:var(--json-tree-js-default-font);animation:fade-in-animation var(--json-tree-js-animation-length);position:absolute;background-color:var(--json-tree-js-tooltip-background-color);border:var(--json-tree-js-border-size) solid var(--json-tree-js-tooltip-border-color);color:var(--json-tree-js-tooltip-text-color);border-radius:var(--json-tree-js-border-radius);z-index:2000;max-width:300px;padding:var(--json-tree-js-spacing);font-size:var(--json-tree-js-spacing-font-size);font-weight:var(--json-tree-js-bold-weight-light);display:none}@keyframes fade-in-animation{0%{opacity:0}100%{opacity:1}} +:root{--json-tree-js-default-font: system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", "Noto Sans", "Liberation Sans", Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";--json-tree-js-bold-weight-light: 300;--json-tree-js-bold-weight-medium: 600;--json-tree-js-bold-weight-heavy: 900;--json-tree-js-title-bold-weight: var(--json-tree-js-bold-weight-heavy);--json-tree-js-color-dark-black: #1c2128;--json-tree-js-color-black: #3b3a3a;--json-tree-js-color-snow-white: #F5F5F5;--json-tree-js-color-light-gray: #BBBBBB;--json-tree-js-color-array: #F28C28;--json-tree-js-color-object: var(--json-tree-js-color-snow-white);--json-tree-js-color-map: #BDB5D5;--json-tree-js-color-set: #FFD700;--json-tree-js-color-boolean: #FF0000;--json-tree-js-color-float: #e3c868;--json-tree-js-color-number: #666bf9;--json-tree-js-color-bigint: #6495ED;--json-tree-js-color-string: #78b13f;--json-tree-js-color-date: #a656f5;--json-tree-js-color-null: var(--json-tree-js-color-light-gray);--json-tree-js-color-undefined: var(--json-tree-js-color-null);--json-tree-js-color-symbol: #DAA06D;--json-tree-js-color-function: var(--json-tree-js-color-null);--json-tree-js-color-lambda: var(--json-tree-js-color-function);--json-tree-js-color-unknown: var(--json-tree-js-color-null);--json-tree-js-color-guid: #c45600;--json-tree-js-color-regexp: #AA336A;--json-tree-js-color-url: #00FFFF;--json-tree-js-color-email: #FA8072;--json-tree-js-color-link: #89CFF0;--json-tree-js-color-html: #FF00FF;--json-tree-js-editable-text-color: var(--json-tree-js-color-snow-white);--json-tree-js-editable-background-color: #2d333b;--json-tree-js-editable-border-color: #454c56;--json-tree-js-highlight-selected-color: #353e4b;--json-tree-js-highlight-compare-color: #4a5768;--json-tree-js-highlight-selected-border-color: #97a4b5;--json-tree-js-drag-and-drop-color: #F5F5F5;--json-tree-js-tooltip-background-color: var(--json-tree-js-container-background-color);--json-tree-js-tooltip-border-color: var(--json-tree-js-container-border-color);--json-tree-js-tooltip-text-color: var(--json-tree-js-color-snow-white);--json-tree-js-side-menu-width: 320px;--json-tree-js-side-menu-right-border-width: calc( var(--json-tree-js-border-size) * 12 );--json-tree-js-container-background-color: #22272e;--json-tree-js-container-border-color: #454c56;--json-tree-js-container-object-left-border-color: #677180;--json-tree-js-paging-column-background-color: #272e37;--json-tree-js-paging-column-border-color: var(--json-tree-js-container-border-color);--json-tree-js-button-background-color: #2d333b;--json-tree-js-button-border-color: var(--json-tree-js-container-border-color);--json-tree-js-button-text-color: var(--json-tree-js-color-snow-white);--json-tree-js-button-background-color-hover: var(--json-tree-js-container-border-color);--json-tree-js-button-text-color-hover: var(--json-tree-js-color-snow-white);--json-tree-js-button-background-color-active: #616b79;--json-tree-js-button-text-color-active: var(--json-tree-js-color-snow-white);--json-tree-js-button-color-disabled: var(--json-tree-js-container-border-color);--json-tree-js-context-menu-background-color: var(--json-tree-js-container-background-color);--json-tree-js-context-menu-border-color: var(--json-tree-js-container-border-color);--json-tree-js-context-menu-text-color: var(--json-tree-js-color-snow-white);--json-tree-js-context-menu-item-background-color-hover: var(--json-tree-js-container-border-color);--json-tree-js-context-menu-item-text-color-hover: var(--json-tree-js-color-snow-white);--json-tree-js-context-menu-item-background-color-active: var(--json-tree-js-button-background-color-active);--json-tree-js-context-menu-item-text-color-active: var(--json-tree-js-color-snow-white);--json-tree-js-setting-panel-background-color: var(--json-tree-js-button-background-color);--json-tree-js-checkbox-background-color-checked: var(--json-tree-js-color-snow-white);--json-tree-js-checkbox-background-color: var(--json-tree-js-setting-panel-background-color);--json-tree-js-checkbox-border-color-checked: var(--json-tree-js-checkbox-background-color-checked);--json-tree-js-checkbox-border-color: var(--json-tree-js-color-snow-white);--json-tree-js-border-radius-editable: 0.25rem;--json-tree-js-border-radius: 0.5rem;--json-tree-js-border-size: 0.5px;--json-tree-js-border-radius-toggle: 0.15rem;--json-tree-js-spacing: 10px;--json-tree-js-spacing-font-size: 0.85rem;--json-tree-js-spacing-toggle-size: 12px;--json-tree-js-spacing-title-bar: calc( ( var(--json-tree-js-spacing) / 2 ) + 2px );--json-tree-js-transition: all .3s;--json-tree-js-animation-length: 0.5s;--json-tree-js-indentation-size: calc( var(--json-tree-js-spacing) * 2 )}div.json-tree-js{-moz-user-select:none;-webkit-user-select:none;-ms-user-select:none;-o-user-select:none;user-select:none;cursor:default;box-sizing:border-box;line-height:normal;font-family:var(--json-tree-js-default-font) !important;display:inline-block;position:relative;border-radius:var(--json-tree-js-border-radius);background-color:var(--json-tree-js-container-background-color);color:var(--json-tree-js-color-snow-white);border:var(--json-tree-js-border-size) solid var(--json-tree-js-container-border-color);font-size:var(--json-tree-js-spacing-font-size);font-weight:var(--json-tree-js-bold-weight-light);width:100%;overflow:hidden;margin:0 !important;max-width:500px}div.json-tree-js *.draggable-item{overflow:hidden !important}div.json-tree-js button{font-family:var(--json-tree-js-default-font)}div.json-tree-js div.no-click{pointer-events:none !important}div.json-tree-js div.page-switch{animation:fade-in-animation var(--json-tree-js-animation-length)}div.json-tree-js *{box-sizing:border-box;line-height:normal}div.json-tree-js *::before,div.json-tree-js *::after{box-sizing:border-box;line-height:normal}div.full-screen{position:fixed;display:flex;flex-direction:column;top:0;left:0;height:100%;width:100%;max-width:none;border-radius:0;border:none;z-index:1000}div.full-screen div.title-bar,div.full-screen div.footer-bar{border-radius:0 !important}div.full-screen div.contents{flex-grow:1;position:relative;max-height:none !important;overflow:auto}div.full-screen div.contents div.no-json{position:absolute;left:50%;top:50%;transform:translate(-50%, -50%)}div.json-tree-js div.no-arrow{display:inline-block;width:var(--json-tree-js-spacing-toggle-size);height:8px;margin-right:calc(var(--json-tree-js-spacing))}div.json-tree-js div.opened-arrow,div.json-tree-js div.closed-arrow{display:inline-block;width:0;height:0;margin-right:calc(var(--json-tree-js-spacing));cursor:pointer;transition:var(--json-tree-js-transition);transition-property:opacity}div.json-tree-js div.opened-arrow:hover,div.json-tree-js div.closed-arrow:hover{opacity:.7}div.json-tree-js div.opened-arrow{border-left:6px solid rgba(0,0,0,0);border-right:6px solid rgba(0,0,0,0);border-top:8px solid var(--json-tree-js-color-snow-white)}div.json-tree-js div.closed-arrow{border-top:5px solid rgba(0,0,0,0);border-bottom:5px solid rgba(0,0,0,0);border-left:var(--json-tree-js-spacing-toggle-size) solid var(--json-tree-js-color-snow-white)}div.json-tree-js div.no-square,div.json-tree-js div.opened-square,div.json-tree-js div.closed-square{display:inline-block;width:10px;height:10px;margin-left:1px;margin-right:calc(var(--json-tree-js-spacing));border-radius:var(--json-tree-js-border-radius-toggle)}div.json-tree-js div.opened-square{border:3px solid var(--json-tree-js-color-snow-white)}div.json-tree-js div.closed-square{background-color:var(--json-tree-js-color-snow-white)}div.json-tree-js div.opened-square,div.json-tree-js div.closed-square{cursor:pointer;transition:var(--json-tree-js-transition);transition-property:opacity}div.json-tree-js div.opened-square:hover,div.json-tree-js div.closed-square:hover{opacity:.7}div.json-tree-js div.no-circle,div.json-tree-js div.opened-circle,div.json-tree-js div.closed-circle{display:inline-block;width:10px;height:10px;margin-left:1px;margin-right:calc(var(--json-tree-js-spacing));border-radius:50%}div.json-tree-js div.opened-circle{border:3px solid var(--json-tree-js-color-snow-white)}div.json-tree-js div.closed-circle{background-color:var(--json-tree-js-color-snow-white)}div.json-tree-js div.opened-circle,div.json-tree-js div.closed-circle{cursor:pointer;transition:var(--json-tree-js-transition);transition-property:opacity}div.json-tree-js div.opened-circle:hover,div.json-tree-js div.closed-circle:hover{opacity:.7}div.json-tree-js div.no-plus-minus,div.json-tree-js div.opened-plus-minus,div.json-tree-js div.closed-plus-minus{display:inline-block;width:10px;height:10px;margin-left:1px;margin-right:calc(var(--json-tree-js-spacing))}div.json-tree-js div.opened-plus-minus,div.json-tree-js div.closed-plus-minus{position:relative}div.json-tree-js div.opened-plus-minus::before,div.json-tree-js div.closed-plus-minus::before{content:"";position:absolute;top:50%;left:0;width:100%;height:3px;margin-top:-1.5px;background-color:var(--json-tree-js-color-snow-white);border-radius:var(--json-tree-js-border-radius-toggle)}div.json-tree-js div.closed-plus-minus::after{content:"";position:absolute;top:0;left:50%;width:3px;height:100%;margin-left:-1.5px;background-color:var(--json-tree-js-color-snow-white);border-radius:var(--json-tree-js-border-radius-toggle)}div.json-tree-js div.opened-plus-minus,div.json-tree-js div.closed-plus-minus{cursor:pointer;transition:var(--json-tree-js-transition);transition-property:opacity}div.json-tree-js div.opened-plus-minus:hover,div.json-tree-js div.closed-plus-minus:hover{opacity:.7}div.json-tree-js div.title-bar{display:flex;padding:var(--json-tree-js-spacing-title-bar);background-color:var(--json-tree-js-color-dark-black);border-radius:var(--json-tree-js-border-radius);border-bottom:var(--json-tree-js-container-border-color) solid var(--json-tree-js-border-size);justify-content:left;align-items:center}div.json-tree-js div.title-bar button{background-color:var(--json-tree-js-button-background-color);border:var(--json-tree-js-border-size) solid var(--json-tree-js-button-border-color);color:var(--json-tree-js-button-text-color);border-radius:var(--json-tree-js-border-radius);padding-top:5px;padding-bottom:5px;padding-left:9px;padding-right:9px;outline:none;transition:var(--json-tree-js-transition)}div.json-tree-js div.title-bar button:disabled{color:var(--json-tree-js-button-color-disabled)}div.json-tree-js div.title-bar button:not(.active):not(:disabled):active{background:var(--json-tree-js-button-background-color-active) !important;color:var(--json-tree-js-button-text-color-active) !important}div.json-tree-js div.title-bar button:not(.active):not(:disabled):hover{cursor:pointer;background:var(--json-tree-js-button-background-color-hover);color:var(--json-tree-js-button-text-color-hover)}div.json-tree-js div.title-bar button{font-weight:var(--json-tree-js-bold-weight-heavy);min-width:30px;min-height:30px;text-align:center}div.json-tree-js div.title-bar button.side-menu{margin-right:calc(var(--json-tree-js-spacing)/2) !important}div.json-tree-js div.title-bar div.title{text-align:left;width:auto;font-weight:var(--json-tree-js-title-bold-weight);font-size:1.2rem;margin:3px;margin-left:calc(var(--json-tree-js-spacing)/2)}div.json-tree-js div.title-bar div.controls{margin-left:calc(var(--json-tree-js-spacing)*2);flex-grow:1;text-align:right;white-space:nowrap}div.json-tree-js div.title-bar div.controls button{margin-left:var(--json-tree-js-spacing-title-bar) !important}div.json-tree-js div.title-bar div.controls button.copy-all{display:none}@media(min-width: 768px){div.json-tree-js div.title-bar div.controls button.copy-all{display:inline-block}}div.json-tree-js div.footer-bar{display:flex;padding:calc(var(--json-tree-js-spacing));background-color:var(--json-tree-js-color-dark-black);border-radius:var(--json-tree-js-border-radius);border-top:var(--json-tree-js-container-border-color) solid var(--json-tree-js-border-size);justify-content:left;align-items:center}div.json-tree-js div.footer-bar div.status-text{flex-grow:1;text-align:left !important}div.json-tree-js div.footer-bar div.status-value-data-type,div.json-tree-js div.footer-bar div.status-value-length,div.json-tree-js div.footer-bar div.status-value-size,div.json-tree-js div.footer-bar div.status-page-index{margin-left:calc(var(--json-tree-js-spacing)*3)}div.json-tree-js div.footer-bar div.status-value-data-type,div.json-tree-js div.footer-bar div.status-value-length,div.json-tree-js div.footer-bar div.status-value-size{animation:fade-in-animation var(--json-tree-js-animation-length)}div.json-tree-js div.footer-bar span.status-count{font-weight:var(--json-tree-js-bold-weight-heavy)}div.json-tree-js div.disabled-background{position:absolute;background-color:rgba(0,0,0,.3);top:0;left:0;height:100%;width:100%;z-index:1000;display:none}div.json-tree-js div.side-menu{display:flex;flex-direction:column;position:absolute;height:100%;top:0;z-index:1500;transition:var(--json-tree-js-transition);background-color:var(--json-tree-js-container-background-color);border-right:var(--json-tree-js-side-menu-right-border-width) solid var(--json-tree-js-color-snow-white);border-radius:var(--json-tree-js-border-radius);width:var(--json-tree-js-side-menu-width);left:calc(0px - (var(--json-tree-js-side-menu-width) + var(--json-tree-js-side-menu-right-border-width)));overflow-x:hidden;overflow-y:auto}div.json-tree-js div.side-menu div.side-menu-title-bar{display:flex;padding:var(--json-tree-js-spacing-title-bar);background-color:var(--json-tree-js-color-dark-black);border-radius:var(--json-tree-js-border-radius);border-bottom:var(--json-tree-js-container-border-color) solid var(--json-tree-js-border-size);justify-content:left;align-items:center}div.json-tree-js div.side-menu div.side-menu-title-bar div.side-menu-title-bar-text{text-align:left;width:auto;font-weight:var(--json-tree-js-title-bold-weight);font-size:1.2rem;margin:3px;margin-left:calc(var(--json-tree-js-spacing)/2)}div.json-tree-js div.side-menu div.side-menu-title-bar div.side-menu-title-controls{margin-left:calc(var(--json-tree-js-spacing)*3);flex-grow:1;text-align:right;white-space:nowrap}div.json-tree-js div.side-menu div.side-menu-title-bar div.side-menu-title-controls button{background-color:var(--json-tree-js-button-background-color);border:var(--json-tree-js-border-size) solid var(--json-tree-js-button-border-color);color:var(--json-tree-js-button-text-color);border-radius:var(--json-tree-js-border-radius);padding-top:5px;padding-bottom:5px;padding-left:9px;padding-right:9px;outline:none;transition:var(--json-tree-js-transition)}div.json-tree-js div.side-menu div.side-menu-title-bar div.side-menu-title-controls button:disabled{color:var(--json-tree-js-button-color-disabled)}div.json-tree-js div.side-menu div.side-menu-title-bar div.side-menu-title-controls button:not(.active):not(:disabled):active{background:var(--json-tree-js-button-background-color-active) !important;color:var(--json-tree-js-button-text-color-active) !important}div.json-tree-js div.side-menu div.side-menu-title-bar div.side-menu-title-controls button:not(.active):not(:disabled):hover{cursor:pointer;background:var(--json-tree-js-button-background-color-hover);color:var(--json-tree-js-button-text-color-hover)}div.json-tree-js div.side-menu div.side-menu-title-bar div.side-menu-title-controls button{margin-left:var(--json-tree-js-spacing-title-bar) !important;font-weight:var(--json-tree-js-bold-weight-heavy);min-width:30px;min-height:30px;text-align:center}div.json-tree-js div.side-menu div.side-menu-contents{flex-grow:1;overflow-x:hidden;overflow-y:auto;margin:var(--json-tree-js-spacing)}div.json-tree-js div.side-menu div.side-menu-contents div.settings-panel{padding:var(--json-tree-js-spacing);background-color:var(--json-tree-js-setting-panel-background-color);color:var(--json-tree-js-color-snow-white);border-radius:var(--json-tree-js-border-radius);border:var(--json-tree-js-border-size) solid var(--json-tree-js-container-border-color)}div.json-tree-js div.side-menu div.side-menu-contents div.settings-panel div.settings-panel-title-bar{display:flex;justify-content:left;align-items:center}div.json-tree-js div.side-menu div.side-menu-contents div.settings-panel div.settings-panel-title-bar div.settings-panel-title-text{text-align:left;font-weight:var(--json-tree-js-title-bold-weight);font-size:.9rem;margin:3px;color:var(--json-tree-js-color-snow-white)}div.json-tree-js div.side-menu div.side-menu-contents div.settings-panel div.settings-panel-title-bar div.settings-panel-control-buttons{flex-grow:1;text-align:right}div.json-tree-js div.side-menu div.side-menu-contents div.settings-panel div.settings-panel-title-bar div.settings-panel-control-buttons div.settings-panel-control-button{margin-left:calc(var(--json-tree-js-spacing)/2);border:4px solid var(--json-tree-js-color-snow-white);height:15px;width:15px;border-radius:var(--json-tree-js-border-radius-editable);display:inline-block;transition:var(--json-tree-js-transition);transition-property:opacity}div.json-tree-js div.side-menu div.side-menu-contents div.settings-panel div.settings-panel-title-bar div.settings-panel-control-buttons div.settings-panel-control-button:not(.no-hover):hover{cursor:pointer;opacity:.7}div.json-tree-js div.side-menu div.side-menu-contents div.settings-panel div.settings-panel-title-bar div.settings-panel-control-buttons div.settings-panel-fill{background-color:var(--json-tree-js-color-snow-white)}div.json-tree-js div.side-menu div.side-menu-contents div.settings-panel div.settings-panel-contents{margin-top:var(--json-tree-js-spacing);margin-left:var(--json-tree-js-spacing);text-align:left}div.json-tree-js div.side-menu div.side-menu-contents div.settings-panel div.settings-panel-contents span.array{color:var(--json-tree-js-color-array)}div.json-tree-js div.side-menu div.side-menu-contents div.settings-panel div.settings-panel-contents span.object{color:var(--json-tree-js-color-object)}div.json-tree-js div.side-menu div.side-menu-contents div.settings-panel div.settings-panel-contents span.map{color:var(--json-tree-js-color-map)}div.json-tree-js div.side-menu div.side-menu-contents div.settings-panel div.settings-panel-contents span.set{color:var(--json-tree-js-color-set)}div.json-tree-js div.side-menu div.side-menu-contents div.settings-panel div.settings-panel-contents span.boolean{color:var(--json-tree-js-color-boolean)}div.json-tree-js div.side-menu div.side-menu-contents div.settings-panel div.settings-panel-contents span.float{color:var(--json-tree-js-color-float)}div.json-tree-js div.side-menu div.side-menu-contents div.settings-panel div.settings-panel-contents span.number{color:var(--json-tree-js-color-number)}div.json-tree-js div.side-menu div.side-menu-contents div.settings-panel div.settings-panel-contents span.bigint{color:var(--json-tree-js-color-bigint)}div.json-tree-js div.side-menu div.side-menu-contents div.settings-panel div.settings-panel-contents span.string{color:var(--json-tree-js-color-string)}div.json-tree-js div.side-menu div.side-menu-contents div.settings-panel div.settings-panel-contents span.date{color:var(--json-tree-js-color-date)}div.json-tree-js div.side-menu div.side-menu-contents div.settings-panel div.settings-panel-contents span.symbol{color:var(--json-tree-js-color-symbol)}div.json-tree-js div.side-menu div.side-menu-contents div.settings-panel div.settings-panel-contents span.function{color:var(--json-tree-js-color-function)}div.json-tree-js div.side-menu div.side-menu-contents div.settings-panel div.settings-panel-contents span.unknown{color:var(--json-tree-js-color-unknown)}div.json-tree-js div.side-menu div.side-menu-contents div.settings-panel div.settings-panel-contents span.guid{color:var(--json-tree-js-color-guid)}div.json-tree-js div.side-menu div.side-menu-contents div.settings-panel div.settings-panel-contents span.regexp{color:var(--json-tree-js-color-regexp)}div.json-tree-js div.side-menu div.side-menu-contents div.settings-panel div.settings-panel-contents span.url{color:var(--json-tree-js-color-url)}div.json-tree-js div.side-menu div.side-menu-contents div.settings-panel div.settings-panel-contents span.email{color:var(--json-tree-js-color-email)}div.json-tree-js div.side-menu div.side-menu-contents div.settings-panel div.settings-panel-contents span.html{color:var(--json-tree-js-color-html)}div.json-tree-js div.side-menu div.side-menu-contents div.settings-panel div.settings-panel-contents span.lambda{color:var(--json-tree-js-color-lambda)}div.json-tree-js div.side-menu div.side-menu-contents div.settings-panel div.settings-panel-contents span.null,div.json-tree-js div.side-menu div.side-menu-contents div.settings-panel div.settings-panel-contents span.undefined{background-color:var(--json-tree-js-color-null);border-radius:var(--json-tree-js-border-radius-editable);padding-top:2px;padding-bottom:2px;padding-left:4px;padding-right:4px;color:var(--json-tree-js-color-dark-black)}div.json-tree-js div.side-menu div.side-menu-contents div.settings-panel div.settings-panel-contents div.checkbox:last-child{margin-bottom:0}div.json-tree-js div.side-menu-open{left:0 !important;transition:var(--json-tree-js-transition);box-shadow:0 0 10px 10px var(--json-tree-js-color-black)}div.json-tree-js div.editable{cursor:text !important;outline:none;box-shadow:none;white-space:pre !important}div.json-tree-js div.contents{display:flex;padding:var(--json-tree-js-spacing);margin:0 !important;width:100%}div.json-tree-js div.contents div.contents-column div.column-control-buttons{border-radius:var(--json-tree-js-border-radius);border:var(--json-tree-js-border-size) solid var(--json-tree-js-paging-column-border-color)}div.json-tree-js div.contents div.contents-column,div.json-tree-js div.contents div.contents-column-multiple{position:relative;flex-basis:100%;overflow:auto;padding-right:var(--json-tree-js-spacing);margin-right:var(--json-tree-js-spacing);white-space:nowrap;text-align:left}div.json-tree-js div.contents div.contents-column div.contents-column-line-numbers,div.json-tree-js div.contents div.contents-column-multiple div.contents-column-line-numbers{position:sticky;vertical-align:top;display:inline-block;left:0;z-index:2}div.json-tree-js div.contents div.contents-column div.contents-column-line-numbers div.contents-column-line-number,div.json-tree-js div.contents div.contents-column-multiple div.contents-column-line-numbers div.contents-column-line-number{position:absolute;display:flex;align-items:center;left:0;padding-right:var(--json-tree-js-spacing)}div.json-tree-js div.contents div.contents-column div.contents-column-lines,div.json-tree-js div.contents div.contents-column-multiple div.contents-column-lines{vertical-align:top;display:inline-block;width:fit-content;height:fit-content;z-index:1}div.json-tree-js div.contents div.contents-column div.column-control-buttons,div.json-tree-js div.contents div.contents-column-multiple div.column-control-buttons{position:absolute;display:flex;flex-direction:column;top:0;right:0;background-color:var(--json-tree-js-color-dark-black);border-bottom-left-radius:var(--json-tree-js-border-radius);border-bottom:var(--json-tree-js-border-size) solid var(--json-tree-js-paging-column-border-color);border-left:var(--json-tree-js-border-size) solid var(--json-tree-js-paging-column-border-color);padding:var(--json-tree-js-spacing-title-bar);z-index:50}div.json-tree-js div.contents div.contents-column div.column-control-buttons button,div.json-tree-js div.contents div.contents-column-multiple div.column-control-buttons button{background-color:var(--json-tree-js-button-background-color);border:var(--json-tree-js-border-size) solid var(--json-tree-js-button-border-color);color:var(--json-tree-js-button-text-color);border-radius:var(--json-tree-js-border-radius);padding-top:5px;padding-bottom:5px;padding-left:9px;padding-right:9px;outline:none;transition:var(--json-tree-js-transition)}div.json-tree-js div.contents div.contents-column div.column-control-buttons button:disabled,div.json-tree-js div.contents div.contents-column-multiple div.column-control-buttons button:disabled{color:var(--json-tree-js-button-color-disabled)}div.json-tree-js div.contents div.contents-column div.column-control-buttons button:not(.active):not(:disabled):active,div.json-tree-js div.contents div.contents-column-multiple div.column-control-buttons button:not(.active):not(:disabled):active{background:var(--json-tree-js-button-background-color-active) !important;color:var(--json-tree-js-button-text-color-active) !important}div.json-tree-js div.contents div.contents-column div.column-control-buttons button:not(.active):not(:disabled):hover,div.json-tree-js div.contents div.contents-column-multiple div.column-control-buttons button:not(.active):not(:disabled):hover{cursor:pointer;background:var(--json-tree-js-button-background-color-hover);color:var(--json-tree-js-button-text-color-hover)}div.json-tree-js div.contents div.contents-column div.column-control-buttons button,div.json-tree-js div.contents div.contents-column-multiple div.column-control-buttons button{margin-bottom:var(--json-tree-js-spacing-title-bar);font-weight:var(--json-tree-js-bold-weight-heavy);min-width:30px;min-height:30px;text-align:center}div.json-tree-js div.contents div.contents-column div.column-control-buttons button:last-child,div.json-tree-js div.contents div.contents-column-multiple div.column-control-buttons button:last-child{margin-bottom:0}div.json-tree-js div.contents div.contents-column:last-child,div.json-tree-js div.contents div.contents-column-multiple:last-child{padding-right:0;margin-right:0}div.json-tree-js div.contents div.contents-column div.contents-column-line-numbers{background-color:var(--json-tree-js-container-background-color)}div.json-tree-js div.contents div.contents-column-multiple{background-color:var(--json-tree-js-paging-column-background-color);border:var(--json-tree-js-border-size) solid var(--json-tree-js-paging-column-border-color);padding:var(--json-tree-js-spacing);border-radius:var(--json-tree-js-border-radius)}div.json-tree-js div.contents div.contents-column-multiple div.contents-column-line-numbers{background-color:var(--json-tree-js-paging-column-background-color);margin-left:calc(-1*var(--json-tree-js-spacing));left:calc(-1*var(--json-tree-js-spacing))}div.json-tree-js div.contents div.contents-column-multiple div.contents-column-line-numbers div.contents-column-line-number{padding-left:var(--json-tree-js-spacing)}div.json-tree-js div.contents span.array{color:var(--json-tree-js-color-array)}div.json-tree-js div.contents span.object{color:var(--json-tree-js-color-object)}div.json-tree-js div.contents span.map{color:var(--json-tree-js-color-map)}div.json-tree-js div.contents span.set{color:var(--json-tree-js-color-set)}div.json-tree-js div.contents span.boolean{color:var(--json-tree-js-color-boolean)}div.json-tree-js div.contents span.float{color:var(--json-tree-js-color-float)}div.json-tree-js div.contents span.number{color:var(--json-tree-js-color-number)}div.json-tree-js div.contents span.bigint{color:var(--json-tree-js-color-bigint)}div.json-tree-js div.contents span.string{color:var(--json-tree-js-color-string)}div.json-tree-js div.contents span.date{color:var(--json-tree-js-color-date)}div.json-tree-js div.contents span.symbol{color:var(--json-tree-js-color-symbol)}div.json-tree-js div.contents span.function{color:var(--json-tree-js-color-function)}div.json-tree-js div.contents span.unknown{color:var(--json-tree-js-color-unknown)}div.json-tree-js div.contents span.guid{color:var(--json-tree-js-color-guid)}div.json-tree-js div.contents span.regexp{color:var(--json-tree-js-color-regexp)}div.json-tree-js div.contents span.url{color:var(--json-tree-js-color-url)}div.json-tree-js div.contents span.email{color:var(--json-tree-js-color-email)}div.json-tree-js div.contents span.html{color:var(--json-tree-js-color-html)}div.json-tree-js div.contents span.lambda{color:var(--json-tree-js-color-lambda)}div.json-tree-js div.contents span.null,div.json-tree-js div.contents span.undefined{background-color:var(--json-tree-js-color-null);border-radius:var(--json-tree-js-border-radius-editable);padding-top:2px;padding-bottom:2px;padding-left:4px;padding-right:4px;color:var(--json-tree-js-color-dark-black)}div.json-tree-js div.contents span.size{margin-left:calc(var(--json-tree-js-spacing)/2);font-weight:var(--json-tree-js-bold-weight-light)}div.json-tree-js div.contents div.last-item{margin-bottom:0 !important}div.json-tree-js div.contents div.no-json{font-style:italic}div.json-tree-js div.contents div.no-json span.no-json-text{color:var(--json-tree-js-color-light-gray) !important}div.json-tree-js div.contents div.no-json span.no-json-import-text{margin-left:calc(var(--json-tree-js-spacing)/2);text-decoration:underline;transition:var(--json-tree-js-transition);transition-property:opacity}div.json-tree-js div.contents div.no-json span.no-json-import-text:not(.no-hover):hover{cursor:pointer;opacity:.7}div.json-tree-js div.drag-and-drop-background{position:absolute;background-color:rgba(0,0,0,.7);top:0;left:0;height:100%;width:100%;z-index:1000;display:none;text-align:center;color:var(--json-tree-js-drag-and-drop-color)}div.json-tree-js div.drag-and-drop-background div.notice-text{position:absolute;left:50%;top:50%;transform:translate(-50%, -50%);font-size:1rem;pointer-events:none}div.json-tree-js div.drag-and-drop-background div.notice-text p{margin:0;padding:0}div.json-tree-js div.drag-and-drop-background div.notice-text p.notice-text-symbol{font-size:4.5rem;font-weight:var(--json-tree-js-bold-weight-light)}div.json-tree-js div.drag-and-drop-background div.notice-text p.notice-text-title{margin-top:calc(var(--json-tree-js-spacing));font-weight:var(--json-tree-js-title-bold-weight)}div.json-tree-js div.drag-and-drop-background div.notice-text p.notice-text-description{margin-top:calc(var(--json-tree-js-spacing));font-weight:var(--json-tree-js-bold-weight-light)}div.json-tree-js div.object-type-title{font-weight:var(--json-tree-js-bold-weight-heavy);text-align:left !important;width:fit-content}div.json-tree-js div.object-type-title span.main-title{transition:var(--json-tree-js-transition);transition-property:opacity}div.json-tree-js div.object-type-title span.main-title:not(.no-hover):hover{cursor:pointer;opacity:.7}div.json-tree-js div.object-type-title span.root-name{margin-right:calc(var(--json-tree-js-spacing)/2);font-weight:var(--json-tree-js-bold-weight-light)}div.json-tree-js div.object-type-title span.data-array-index{margin-right:calc(var(--json-tree-js-spacing)/2);font-weight:var(--json-tree-js-bold-weight-light)}div.json-tree-js div.object-type-title span.split{margin-right:calc(var(--json-tree-js-spacing)/2);font-weight:var(--json-tree-js-bold-weight-light)}div.json-tree-js div.object-type-title span.opening-symbol,div.json-tree-js div.object-type-title span.closed-symbols{margin-left:calc(var(--json-tree-js-spacing)/2);font-weight:var(--json-tree-js-bold-weight-light);color:var(--json-tree-js-color-snow-white) !important}div.json-tree-js div.object-type-title span.closed-symbols:hover{transition:var(--json-tree-js-transition);transition-property:opacity}div.json-tree-js div.object-type-title span.closed-symbols:hover:not(.no-hover):not(.editable):hover{cursor:pointer;opacity:.7}div.json-tree-js div.object-type-contents{margin-top:calc(var(--json-tree-js-spacing)/2);text-align:left !important;width:fit-content;margin-bottom:var(--json-tree-js-spacing);position:relative}div.json-tree-js div.object-type-contents img{height:30px;width:30px;border-radius:var(--json-tree-js-border-radius-editable)}div.json-tree-js div.object-border{border-left:var(--json-tree-js-border-size) dotted var(--json-tree-js-container-object-left-border-color);margin-left:5.5px}div.json-tree-js div.object-border-no-toggles{margin-left:var(--json-tree-js-border-size)}div.json-tree-js div.object-border-bottom{position:absolute;bottom:0;left:var(--json-tree-js-border-size);height:var(--json-tree-js-border-size);width:var(--json-tree-js-spacing-toggle-size);border-bottom:var(--json-tree-js-border-size) dotted var(--json-tree-js-container-object-left-border-color)}div.json-tree-js div.object-type-contents span.opening-symbol,div.json-tree-js div.object-type-contents span.closed-symbols{margin-left:calc(var(--json-tree-js-spacing)/2);font-weight:var(--json-tree-js-bold-weight-light);color:var(--json-tree-js-color-snow-white) !important}div.json-tree-js div.object-type-contents span.closed-symbols{transition:var(--json-tree-js-transition);transition-property:opacity}div.json-tree-js div.object-type-contents span.closed-symbols:not(.no-hover):not(.editable):hover{cursor:pointer;opacity:.7}div.json-tree-js div.object-type-contents div.closing-symbol div{display:inline-block !important}div.json-tree-js div.object-type-contents div.closing-symbol div.object-type-end{margin-top:3px;font-weight:var(--json-tree-js-bold-weight-light)}div.json-tree-js div.object-type-contents div.object-type-value{white-space:nowrap;margin-top:calc(var(--json-tree-js-spacing)/2);margin-bottom:calc(var(--json-tree-js-spacing)/2);margin-left:var(--json-tree-js-indentation-size)}div.json-tree-js div.object-type-contents div.object-type-value div.object-type-value-title{width:fit-content}div.json-tree-js div.object-type-contents div.object-type-value img{vertical-align:middle}div.json-tree-js div.object-type-contents div.object-type-value span.split{margin-left:calc(var(--json-tree-js-spacing)/2);margin-right:calc(var(--json-tree-js-spacing)/2);font-weight:var(--json-tree-js-bold-weight-light)}div.json-tree-js div.object-type-contents div.object-type-value div.highlight-selected,div.json-tree-js div.object-type-contents div.object-type-value div.highlight-compare{padding:calc(var(--json-tree-js-spacing)/2);border-radius:var(--json-tree-js-border-radius);transition:var(--json-tree-js-transition);transition-property:background-color}div.json-tree-js div.object-type-contents div.object-type-value div.highlight-selected{background-color:var(--json-tree-js-highlight-selected-color);border:var(--json-tree-js-border-size) dashed var(--json-tree-js-highlight-selected-border-color)}div.json-tree-js div.object-type-contents div.object-type-value div.highlight-compare{background-color:var(--json-tree-js-highlight-compare-color)}div.json-tree-js div.object-type-contents div.object-type-value span.data-type,div.json-tree-js div.object-type-contents div.object-type-value span.data-type-color{margin-left:calc(var(--json-tree-js-spacing)/2);font-style:italic;font-size:smaller}div.json-tree-js div.object-type-contents div.object-type-value span.data-type-color{color:var(--json-tree-js-color-light-gray)}div.json-tree-js div.object-type-contents div.object-type-value span.value,div.json-tree-js div.object-type-contents div.object-type-value span.main-title{transition:var(--json-tree-js-transition);transition-property:opacity}div.json-tree-js div.object-type-contents div.object-type-value span.value:not(.no-hover):not(.editable):hover,div.json-tree-js div.object-type-contents div.object-type-value span.main-title:not(.no-hover):not(.editable):hover{cursor:pointer;opacity:.7}div.json-tree-js div.object-type-contents div.object-type-value span.editable,div.json-tree-js div.object-type-contents div.object-type-value span.editable-name{display:inline-block;background-color:var(--json-tree-js-editable-background-color) !important;color:var(--json-tree-js-editable-text-color) !important;border:var(--json-tree-js-border-size) solid var(--json-tree-js-editable-border-color);outline:none !important;box-shadow:none !important;padding:calc(var(--json-tree-js-spacing)/2) !important;border-radius:var(--json-tree-js-border-radius-editable) !important;max-width:250px;cursor:text !important;overflow:scroll;vertical-align:middle}div.json-tree-js div.object-type-contents div.object-type-value span.editable{min-width:70px}div.json-tree-js div.object-type-contents div.object-type-value span.main-title{font-weight:var(--json-tree-js-bold-weight-heavy)}div.json-tree-js div.object-type-contents div.object-type-value span.non-value{font-style:italic}div.json-tree-js div.object-type-contents div.object-type-value span.undefined-or-null{font-style:italic;padding-right:5px;text-transform:uppercase;font-weight:var(--json-tree-js-bold-weight-medium)}div.json-tree-js div.object-type-contents div.object-type-value span.no-properties-text{font-style:italic}div.json-tree-js div.object-type-contents div.object-type-value span.comma{color:var(--json-tree-js-color-snow-white);font-weight:var(--json-tree-js-bold-weight-medium);margin-left:2px}div.json-tree-js div.object-type-contents div.object-type-value span.open-button,div.json-tree-js div.object-type-contents div.object-type-value span.open-button-color{margin-left:calc(var(--json-tree-js-spacing)*2)}div.json-tree-js div.object-type-contents div.object-type-value span.open-button:hover,div.json-tree-js div.object-type-contents div.object-type-value span.open-button-color:hover{text-decoration:underline;cursor:pointer}div.json-tree-js div.object-type-contents div.object-type-value span.open-button-color{color:var(--json-tree-js-color-link)}div.json-tree-js div.checkbox{margin-bottom:calc(var(--json-tree-js-spacing)/3)}div.json-tree-js div.checkbox label.checkbox{-moz-user-select:none;-webkit-user-select:none;-ms-user-select:none;-o-user-select:none;user-select:none;cursor:default;display:inline-block;position:relative;padding-left:20px;padding-top:1px;padding-bottom:2px;color:var(--json-tree-js-color-snow-white)}div.json-tree-js div.checkbox label.checkbox input{display:none !important}div.json-tree-js div.checkbox label.checkbox input:checked~span.check-mark{background-color:var(--json-tree-js-checkbox-background-color-checked);border:var(--json-tree-js-border-size) solid var(--json-tree-js-checkbox-border-color-checked)}div.json-tree-js div.checkbox label.checkbox input:checked~span.check-mark::before{display:block}div.json-tree-js div.checkbox label.checkbox input:disabled~span.check-mark,div.json-tree-js div.checkbox label.checkbox input:disabled~span.text{opacity:.5}div.json-tree-js div.checkbox label.checkbox input:disabled~span.check-mark{border:var(--json-tree-js-border-size) solid var(--json-tree-js-color-black) !important}div.json-tree-js div.checkbox label.checkbox span.text{margin-left:calc(var(--json-tree-js-spacing)/3)}div.json-tree-js div.checkbox label.checkbox span.additional-text{margin-left:calc(var(--json-tree-js-spacing)/2)}div.json-tree-js div.checkbox label.checkbox span.check-mark{position:absolute;top:1px;left:0;height:15px;width:15px;background-color:var(--json-tree-js-checkbox-background-color);border-radius:var(--json-tree-js-border-radius-editable);border:var(--json-tree-js-border-size) solid var(--json-tree-js-checkbox-border-color);transition:var(--json-tree-js-transition)}div.json-tree-js div.checkbox label.checkbox span.check-mark::before{content:"";transform:rotate(45deg);position:absolute;display:none;left:4px;top:.5px;width:6px;height:11px;border:solid var(--json-tree-js-color-black);border-width:0 3px 3px 0}div.jsontree-js-context-menu{-moz-user-select:none;-webkit-user-select:none;-ms-user-select:none;-o-user-select:none;user-select:none;cursor:default;box-sizing:border-box;line-height:normal;font-family:var(--json-tree-js-default-font);animation:fade-in-animation var(--json-tree-js-animation-length);position:absolute;background-color:var(--json-tree-js-context-menu-background-color);border:var(--json-tree-js-border-size) solid var(--json-tree-js-context-menu-border-color);color:var(--json-tree-js-context-menu-text-color);border-radius:var(--json-tree-js-border-radius);z-index:2000;max-width:300px;font-size:var(--json-tree-js-spacing-font-size);font-weight:var(--json-tree-js-bold-weight-light);overflow:hidden;display:none}div.jsontree-js-context-menu div.context-menu-item{border-bottom:var(--json-tree-js-border-size) dotted var(--json-tree-js-tooltip-border-color);padding:var(--json-tree-js-spacing);transition:var(--json-tree-js-transition);transition-property:background-color,color;padding-right:40px}div.jsontree-js-context-menu div.context-menu-item span.symbol{margin-right:var(--json-tree-js-spacing);font-weight:var(--json-tree-js-bold-weight-heavy)}div.jsontree-js-context-menu div.context-menu-item span.text{font-weight:var(--json-tree-js-bold-weight-light)}div.jsontree-js-context-menu div.context-menu-item:active{background:var(--json-tree-js-context-menu-item-background-color-active) !important;color:var(--json-tree-js-context-menu-item-text-color-active) !important}div.jsontree-js-context-menu div.context-menu-item:hover{cursor:pointer;background:var(--json-tree-js-context-menu-item-background-color-hover);color:var(--json-tree-js-context-menu-item-text-color-hover)}div.jsontree-js-context-menu div.context-menu-item:last-child{border-bottom:none}div.jsontree-js-tooltip,div.jsontree-js-tooltip-value{-moz-user-select:none;-webkit-user-select:none;-ms-user-select:none;-o-user-select:none;user-select:none;cursor:default;box-sizing:border-box;line-height:normal;font-family:var(--json-tree-js-default-font);animation:fade-in-animation var(--json-tree-js-animation-length);position:absolute;background-color:var(--json-tree-js-tooltip-background-color);border:var(--json-tree-js-border-size) solid var(--json-tree-js-tooltip-border-color);color:var(--json-tree-js-tooltip-text-color);border-radius:var(--json-tree-js-border-radius);z-index:2000;max-width:300px;padding:var(--json-tree-js-spacing);font-size:var(--json-tree-js-spacing-font-size);font-weight:var(--json-tree-js-bold-weight-light);display:none}@keyframes fade-in-animation{0%{opacity:0}100%{opacity:1}} diff --git a/dist/jsontree.min.js b/dist/jsontree.min.js index 6895c0fb..14f7ce79 100644 --- a/dist/jsontree.min.js +++ b/dist/jsontree.min.js @@ -1 +1 @@ -"use strict";var ImportedFilename=class{constructor(){this.filename=null,this.object=null}},DataType=(e=>(e.null="null",e.function="function",e.boolean="boolean",e.float="float",e.number="number",e.bigint="bigint",e.string="string",e.date="date",e.symbol="symbol",e.object="object",e.array="array",e.unknown="unknown",e[void 0]="undefined",e.color="color",e.guid="guid",e.regexp="regexp",e.map="map",e.set="set",e.url="url",e.image="image",e.email="email",e.html="html",e.lambda="lambda",e))(DataType||{}),Is,Convert2,Default,DomElement,Str,Str2,DateTime,Constants,Constants2,Binding,Config,Trigger,ToolTip,Arr,Arr2,Size,Obj,Obj2,ContextMenu;(e=>{let t;var n;function o(e){return null!=e&&""!==e.toString()}function l(e){return o(e)&&"object"==typeof e}function r(e){return null!=e&&e instanceof Array}(n=t=e.String||(e.String={})).hexColor=function(e){let t=e.length>=2&&e.length<=7;return t=!(!t||"#"!==e[0])&&isNaN(+e.substring(1,e.length-1)),t},n.rgbColor=function(e){return(e.startsWith("rgb(")||e.startsWith("rgba("))&&e.endsWith(")")},n.boolean=function(e){return"true"===e.toString().toLowerCase().trim()||"false"===e.toString().toLowerCase().trim()},n.date=function(e){return e.match(/\d{4}-(?:0[1-9]|1[0-2])-(?:0[1-9]|[1-2]\d|3[0-1])T(?:[0-1]\d|2[0-3]):[0-5]\d:[0-5]\d(?:\.\d+|)(?:Z|(?:\+|\-)(?:\d{2}):?(?:\d{2}))/)},n.guid=function(e){return/^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-5][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}$/.test(e)},n.bigInt=function(e){let t=e.endsWith("n");return t&&(t=!isNaN(+e.substring(0,e.length-1))),t},n.symbol=function(e){return e.startsWith("Symbol(")&&e.endsWith(")")},e.defined=o,e.definedObject=l,e.definedBoolean=function(e){return o(e)&&"boolean"==typeof e},e.definedString=function(e){return o(e)&&"string"==typeof e},e.definedStringAny=function(e){return null!=e&&"string"==typeof e},e.definedFunction=function(e){return o(e)&&"function"==typeof e},e.definedNumber=function(e){return o(e)&&"number"==typeof e},e.definedBigInt=function(e){return o(e)&&"bigint"==typeof e},e.definedArray=r,e.definedDate=function(e){return l(e)&&e instanceof Date},e.definedFloat=function(e){return o(e)&&"number"==typeof e&&e%1!=0},e.definedSymbol=function(e){return o(e)&&"symbol"==typeof e},e.definedRegExp=function(e){return o(e)&&e instanceof RegExp},e.definedMap=function(e){return o(e)&&(e instanceof Map||e instanceof WeakMap)},e.definedSet=function(e){return o(e)&&(e instanceof Set||e instanceof WeakSet)},e.definedImage=function(e){return o(e)&&e instanceof Image},e.definedHtml=function(e){return o(e)&&e instanceof HTMLElement},e.definedUrl=function(e){let t;try{t=new URL(e)}catch{t=null}return null!==t&&("http:"===t.protocol||"https:"===t.protocol)},e.definedEmail=function(e){return/^(([^<>()[\]\\.,;:\s@"]+(\.[^<>()[\]\\.,;:\s@"]+)*)|(".+"))@((\[[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\])|(([a-zA-Z\-0-9]+\.)+[a-zA-Z]{2,}))$/.test(e)},e.invalidOptionArray=function(e,t=1){return!r(e)||e.length{function toJsonStringifyClone(e,t,n){let o=null;if(Is.defined(e))if(Is.definedImportedFilename(e))o=e.object;else if(Is.definedDate(e))o=n.includeTimeZoneInDates?e.toString():JSON.stringify(e).replace(/['"]+/g,"");else if(Is.definedSymbol(e))o=symbolToString(e);else if(Is.definedBigInt(e))o=e.toString();else if(Is.definedFunction(e))o=Default.getFunctionName(e,t).name;else if(Is.definedRegExp(e))o=e.source;else if(Is.definedImage(e))o=e.src;else if(Is.definedHtml(e))o=htmlToObject(e,n.showCssStylesForHtmlObjects);else if(Is.definedArray(e)){o=[];const l=e.length;for(let r=0;r0;)a.children[0].nodeType!==Node.TEXT_NODE&&a.removeChild(a.children[0]),s--;n[r]=[],n[i]=a.innerText;for(let t=0;t{function t(e,t){return Is.definedArray(e)?e:t}e.getAnyString=function(e,t){return"string"==typeof e?e:t},e.getString=function(e,t){return Is.definedString(e)?e:t},e.getBoolean=function(e,t){return Is.definedBoolean(e)?e:t},e.getNumber=function(e,t){return Is.definedNumber(e)?e:t},e.getFunction=function(e,t){return Is.definedFunction(e)?e:t},e.getArray=t,e.getObject=function(e,t){return Is.definedObject(e)?e:t},e.getNumberMinimum=function(e,t,n){return Is.definedNumber(e)?e>=n?e:n:t},e.getNumberMaximum=function(e,t,n){return Is.definedNumber(e)?e>n?n:e:t},e.getStringOrArray=function(e,n){let o=n;if(Is.definedString(e)){const t=e.toString().split(" ");0===t.length?e=n:o=t}else o=t(e,n);return o},e.getFunctionName=function(e,t){let n,o=!1;const l="()";return n=`${e.toString().split("(")[0].split(" ").join(" ")}${l}`,n.trim()===l&&(n=`${t.text.functionText}${l}`,o=!0),{name:n,isLambda:o}},e.getObjectFromUrl=function(e,t,n){const o=new XMLHttpRequest;o.open("GET",e,!0),o.send(),o.onreadystatechange=()=>{if(4===o.readyState&&200===o.status){const e=o.responseText,l=Convert2.jsonStringToObject(e,t);l.parsed&&n(l.object)}else n(null)}}})(Default||(Default={})),(e=>{function t(e,t,n="",o=null){const l=t.toLowerCase(),r="text"===l?document.createTextNode(""):document.createElement(l);return Is.defined(n)&&(r.className=n),Is.defined(e)&&(Is.defined(o)?e.insertBefore(r,o):e.appendChild(r)),r}function n(e,n,o,l,r=null){const i=t(e,n,o,r);return i.innerHTML=l,i}function o(){const e=document.documentElement;return{left:e.scrollLeft-(e.clientLeft||0),top:e.scrollTop-(e.clientTop||0)}}e.find=function(e,t){const n=e.length;for(let o=0;owindow.innerWidth?l-=t.offsetWidth+n:(l++,l+=n),r+t.offsetHeight>window.innerHeight?r-=t.offsetHeight+n:(r++,r+=n),l0&&o.length>t&&(o=`${o.substring(0,t)} ${n} `),o},(e=>{function t(e){return e.getDay()-1<0?6:e.getDay()-1}function n(e,t){let n=e.text.thText;return 31===t||21===t||1===t?n=e.text.stText:22===t||2===t?n=e.text.ndText:23!==t&&3!==t||(n=e.text.rdText),Is.definedString(n)&&(n=`${n}`),n}e.getWeekdayNumber=t,e.getDayOrdinal=n,e.getCustomFormattedDateText=function(e,o,l){const r=isNaN(+o)?new Date:o;let i=l;const a=t(r);return i=i.replace("{hh}",Str.padNumber(r.getHours(),2)),i=i.replace("{h}",r.getHours().toString()),i=i.replace("{MM}",Str.padNumber(r.getMinutes(),2)),i=i.replace("{M}",r.getMinutes().toString()),i=i.replace("{ss}",Str.padNumber(r.getSeconds(),2)),i=i.replace("{s}",r.getSeconds().toString()),i=i.replace("{fff}",Str.padNumber(r.getMilliseconds(),3)),i=i.replace("{ff}",Str.padNumber(r.getMilliseconds(),2)),i=i.replace("{f}",r.getMilliseconds().toString()),i=i.replace("{dddd}",e.text.dayNames[a]),i=i.replace("{ddd}",e.text.dayNamesAbbreviated[a]),i=i.replace("{dd}",Str.padNumber(r.getDate())),i=i.replace("{d}",r.getDate().toString()),i=i.replace("{o}",n(e,r.getDate())),i=i.replace("{mmmm}",e.text.monthNames[r.getMonth()]),i=i.replace("{mmm}",e.text.monthNamesAbbreviated[r.getMonth()]),i=i.replace("{mm}",Str.padNumber(r.getMonth()+1)),i=i.replace("{m}",(r.getMonth()+1).toString()),i=i.replace("{yyyy}",r.getFullYear().toString()),i=i.replace("{yyy}",r.getFullYear().toString().substring(1)),i=i.replace("{yy}",r.getFullYear().toString().substring(2)),i=i.replace("{y}",Number.parseInt(r.getFullYear().toString().substring(2)).toString()),i}})(DateTime||(DateTime={})),Constants2=Constants||(Constants={}),Constants2.JSONTREE_JS_ATTRIBUTE_NAME="data-jsontree-js",Constants2.JSONTREE_JS_ATTRIBUTE_ARRAY_INDEX_NAME="data-jsontree-js-array-index",Constants2.JSONTREE_JS_ATTRIBUTE_PATH_NAME="data-jsontree-js-path",(e=>{let t;var n;(n=t=e.Options||(e.Options={})).getForNewInstance=function(t,n){const o=e.Options.get(t),l=o.allowEditing;o._currentView={},o._currentView.element=n,o._currentView.currentDataArrayPageIndex=(o.paging.startPage-1)*o.paging.columnsPerPage,o._currentView.titleBarButtons=null,o._currentView.valueClickTimerId=0,o._currentView.editMode=!1,o._currentView.idSet=!1,o._currentView.contentPanelsOpen={},o._currentView.contentPanelsIndex=0,o._currentView.contentPanelsDataIndex=0,o._currentView.backPageButton=null,o._currentView.nextPageButton=null,o._currentView.disabledBackground=null,o._currentView.sideMenu=null,o._currentView.sideMenuChanged=!1,o._currentView.toggleFullScreenButton=null,o._currentView.fullScreenOn=!1,o._currentView.dragAndDropBackground=null,o._currentView.initialized=!1,o._currentView.currentContentColumns=[],o._currentView.footer=null,o._currentView.footerStatusText=null,o._currentView.footerDataTypeText=null,o._currentView.footerLengthText=null,o._currentView.footerSizeText=null,o._currentView.footerPageText=null,o._currentView.footerStatusTextTimerId=0,o._currentView.columnDragging=!1,o._currentView.columnDraggingDataIndex=0,o._currentView.dataTypeCounts={},o._currentView.contextMenu=null,o._currentView.currentColumnBuildingIndex=0,o._currentView.selectedValues=[],o.paging.enabled&&Is.definedArray(o.data)&&o.data.length>1&&o._currentView.currentDataArrayPageIndex>o.data.length-1&&(o._currentView.currentDataArrayPageIndex=0);for(const e in l)if(!l[e]){o.allowEditing.bulk=!1;break}return o},n.get=function(e){const t=Default.getObject(e,{});return t.id=Default.getString(t.id,""),t.class=Default.getString(t.class,""),t.showObjectSizes=Default.getBoolean(t.showObjectSizes,!0),t.useZeroIndexingForArrays=Default.getBoolean(t.useZeroIndexingForArrays,!0),t.dateTimeFormat=Default.getString(t.dateTimeFormat,"{dd}{o} {mmmm} {yyyy} {hh}:{MM}:{ss}"),t.showExpandIcons=Default.getBoolean(t.showExpandIcons,!0),t.showStringQuotes=Default.getBoolean(t.showStringQuotes,!0),t.showAllAsClosed=Default.getBoolean(t.showAllAsClosed,!1),t.sortPropertyNames=Default.getBoolean(t.sortPropertyNames,!0),t.sortPropertyNamesInAlphabeticalOrder=Default.getBoolean(t.sortPropertyNamesInAlphabeticalOrder,!0),t.showCommas=Default.getBoolean(t.showCommas,!0),t.reverseArrayValues=Default.getBoolean(t.reverseArrayValues,!1),t.addArrayIndexPadding=Default.getBoolean(t.addArrayIndexPadding,!1),t.showValueColors=Default.getBoolean(t.showValueColors,!0),t.fileDroppingEnabled=Default.getBoolean(t.fileDroppingEnabled,!0),t.jsonIndentSpaces=Default.getNumber(t.jsonIndentSpaces,8),t.showArrayIndexBrackets=Default.getBoolean(t.showArrayIndexBrackets,!0),t.showOpeningClosingCurlyBraces=Default.getBoolean(t.showOpeningClosingCurlyBraces,!1),t.showOpeningClosingSquaredBrackets=Default.getBoolean(t.showOpeningClosingSquaredBrackets,!1),t.includeTimeZoneInDates=Default.getBoolean(t.includeTimeZoneInDates,!0),t.shortcutKeysEnabled=Default.getBoolean(t.shortcutKeysEnabled,!0),t.openInFullScreenMode=Default.getBoolean(t.openInFullScreenMode,!1),t.valueToolTips=Default.getObject(t.valueToolTips,null),t.editingValueClickDelay=Default.getNumber(t.editingValueClickDelay,500),t.showDataTypes=Default.getBoolean(t.showDataTypes,!1),t.logJsonValueToolTipPaths=Default.getBoolean(t.logJsonValueToolTipPaths,!1),t.exportFilenameFormat=Default.getString(t.exportFilenameFormat,"JsonTree_{dd}-{mm}-{yyyy}_{hh}-{MM}-{ss}.json"),t.showPropertyNameQuotes=Default.getBoolean(t.showPropertyNameQuotes,!0),t.showOpenedObjectArrayBorders=Default.getBoolean(t.showOpenedObjectArrayBorders,!0),t.showPropertyNameAndIndexColors=Default.getBoolean(t.showPropertyNameAndIndexColors,!0),t.showUrlOpenButtons=Default.getBoolean(t.showUrlOpenButtons,!0),t.showEmailOpenButtons=Default.getBoolean(t.showEmailOpenButtons,!0),t.minimumArrayIndexPadding=Default.getNumber(t.minimumArrayIndexPadding,0),t.arrayIndexPaddingCharacter=Default.getString(t.arrayIndexPaddingCharacter,"0"),t.showCssStylesForHtmlObjects=Default.getBoolean(t.showCssStylesForHtmlObjects,!1),t.jsonPathAny=Default.getString(t.jsonPathAny,".."),t.jsonPathSeparator=Default.getString(t.jsonPathSeparator,"\\"),t.showChildIndexes=Default.getBoolean(t.showChildIndexes,!0),t.showClosedArraySquaredBrackets=Default.getBoolean(t.showClosedArraySquaredBrackets,!0),t.showClosedObjectCurlyBraces=Default.getBoolean(t.showClosedObjectCurlyBraces,!0),t.convertClickedValuesToString=Default.getBoolean(t.convertClickedValuesToString,!1),t.rootName=Default.getString(t.rootName,"root"),t.emptyStringValue=Default.getString(t.emptyStringValue,""),t.expandIconType=Default.getString(t.expandIconType,"arrow"),t.maximum=function(e){return e.maximum=Default.getObject(e.maximum,{}),e.maximum.decimalPlaces=Default.getNumber(e.maximum.decimalPlaces,2),e.maximum.stringLength=Default.getNumber(e.maximum.stringLength,0),e.maximum.urlLength=Default.getNumber(e.maximum.urlLength,0),e.maximum.emailLength=Default.getNumber(e.maximum.emailLength,0),e.maximum.numberLength=Default.getNumber(e.maximum.numberLength,0),e.maximum.bigIntLength=Default.getNumber(e.maximum.bigIntLength,0),e.maximum.inspectionLevels=Default.getNumber(e.maximum.inspectionLevels,10),e.maximum.propertyNameLength=Default.getNumber(e.maximum.propertyNameLength,0),e.maximum}(t),t.paging=function(e){return e.paging=Default.getObject(e.paging,{}),e.paging.enabled=Default.getBoolean(e.paging.enabled,!0),e.paging.columnsPerPage=Default.getNumberMaximum(e.paging.columnsPerPage,1,6),e.paging.startPage=Default.getNumberMinimum(e.paging.startPage,1,1),e.paging.synchronizeScrolling=Default.getBoolean(e.paging.synchronizeScrolling,!1),e.paging.allowColumnReordering=Default.getBoolean(e.paging.allowColumnReordering,!0),e.paging.allowComparisons=Default.getBoolean(e.paging.allowComparisons,!1),e.paging}(t),t.title=function(e){return e.title=Default.getObject(e.title,{}),e.title.text=Default.getAnyString(e.title.text,"JsonTree.js"),e.title.showCloseOpenAllButtons=Default.getBoolean(e.title.showCloseOpenAllButtons,!0),e.title.showCopyButton=Default.getBoolean(e.title.showCopyButton,!0),e.title.enableFullScreenToggling=Default.getBoolean(e.title.enableFullScreenToggling,!0),e.title.showFullScreenButton=Default.getBoolean(e.title.showFullScreenButton,!0),e.title}(t),t.footer=function(e){return e.footer=Default.getObject(e.footer,{}),e.footer.enabled=Default.getBoolean(e.footer.enabled,!0),e.footer.showDataTypes=Default.getBoolean(e.footer.showDataTypes,!0),e.footer.showLengths=Default.getBoolean(e.footer.showLengths,!0),e.footer.showSizes=Default.getBoolean(e.footer.showSizes,!0),e.footer.showPageOf=Default.getBoolean(e.footer.showPageOf,!0),e.footer.statusResetDelay=Default.getNumber(e.footer.statusResetDelay,5e3),e.footer}(t),t.controlPanel=function(e){return e.controlPanel=Default.getObject(e.controlPanel,{}),e.controlPanel.enabled=Default.getBoolean(e.controlPanel.enabled,!0),e.controlPanel.showCopyButton=Default.getBoolean(e.controlPanel.showCopyButton,!0),e.controlPanel.showMovingButtons=Default.getBoolean(e.controlPanel.showMovingButtons,!0),e.controlPanel.showRemoveButton=Default.getBoolean(e.controlPanel.showRemoveButton,!1),e.controlPanel.showEditButton=Default.getBoolean(e.controlPanel.showEditButton,!0),e.controlPanel.showCloseOpenAllButtons=Default.getBoolean(e.controlPanel.showCloseOpenAllButtons,!0),e.controlPanel.showSwitchToPagesButton=Default.getBoolean(e.controlPanel.showSwitchToPagesButton,!0),e.controlPanel.showImportButton=Default.getBoolean(e.controlPanel.showImportButton,!0),e.controlPanel.showExportButton=Default.getBoolean(e.controlPanel.showExportButton,!0),e.controlPanel}(t),t.lineNumbers=function(e){return e.lineNumbers=Default.getObject(e.lineNumbers,{}),e.lineNumbers.enabled=Default.getBoolean(e.lineNumbers.enabled,!0),e.lineNumbers.padNumbers=Default.getBoolean(e.lineNumbers.padNumbers,!1),e.lineNumbers.addDots=Default.getBoolean(e.lineNumbers.addDots,!0),e.lineNumbers}(t),t.ignore=function(e){return e.ignore=Default.getObject(e.ignore,{}),e.ignore.nullValues=Default.getBoolean(e.ignore.nullValues,!1),e.ignore.functionValues=Default.getBoolean(e.ignore.functionValues,!1),e.ignore.unknownValues=Default.getBoolean(e.ignore.unknownValues,!1),e.ignore.booleanValues=Default.getBoolean(e.ignore.booleanValues,!1),e.ignore.floatValues=Default.getBoolean(e.ignore.floatValues,!1),e.ignore.numberValues=Default.getBoolean(e.ignore.numberValues,!1),e.ignore.stringValues=Default.getBoolean(e.ignore.stringValues,!1),e.ignore.dateValues=Default.getBoolean(e.ignore.dateValues,!1),e.ignore.objectValues=Default.getBoolean(e.ignore.objectValues,!1),e.ignore.arrayValues=Default.getBoolean(e.ignore.arrayValues,!1),e.ignore.bigintValues=Default.getBoolean(e.ignore.bigintValues,!1),e.ignore.symbolValues=Default.getBoolean(e.ignore.symbolValues,!1),e.ignore.emptyObjects=Default.getBoolean(e.ignore.emptyObjects,!1),e.ignore.undefinedValues=Default.getBoolean(e.ignore.undefinedValues,!1),e.ignore.guidValues=Default.getBoolean(e.ignore.guidValues,!1),e.ignore.colorValues=Default.getBoolean(e.ignore.colorValues,!1),e.ignore.regexpValues=Default.getBoolean(e.ignore.regexpValues,!1),e.ignore.mapValues=Default.getBoolean(e.ignore.mapValues,!1),e.ignore.setValues=Default.getBoolean(e.ignore.setValues,!1),e.ignore.urlValues=Default.getBoolean(e.ignore.urlValues,!1),e.ignore.imageValues=Default.getBoolean(e.ignore.imageValues,!1),e.ignore.emailValues=Default.getBoolean(e.ignore.emailValues,!1),e.ignore.htmlValues=Default.getBoolean(e.ignore.htmlValues,!1),e.ignore.lambdaValues=Default.getBoolean(e.ignore.lambdaValues,!1),e.ignore}(t),t.tooltip=function(e){return e.tooltip=Default.getObject(e.tooltip,{}),e.tooltip.delay=Default.getNumber(e.tooltip.delay,750),e.tooltip.offset=Default.getNumber(e.tooltip.offset,0),e.tooltip}(t),t.parse=function(e){return e.parse=Default.getObject(e.parse,{}),e.parse.stringsToDates=Default.getBoolean(e.parse.stringsToDates,!1),e.parse.stringsToBooleans=Default.getBoolean(e.parse.stringsToBooleans,!1),e.parse.stringsToNumbers=Default.getBoolean(e.parse.stringsToNumbers,!1),e.parse.stringsToSymbols=Default.getBoolean(e.parse.stringsToSymbols,!1),e.parse.stringsToFloats=Default.getBoolean(e.parse.stringsToFloats,!1),e.parse.stringsToBigInts=Default.getBoolean(e.parse.stringsToBigInts,!1),e.parse}(t),t.allowEditing=function(e){let t=Default.getBoolean(e.allowEditing,!0);e.allowEditing=Default.getObject(e.allowEditing,{}),e.allowEditing.booleanValues=Default.getBoolean(e.allowEditing.booleanValues,t),e.allowEditing.floatValues=Default.getBoolean(e.allowEditing.floatValues,t),e.allowEditing.numberValues=Default.getBoolean(e.allowEditing.numberValues,t),e.allowEditing.stringValues=Default.getBoolean(e.allowEditing.stringValues,t),e.allowEditing.dateValues=Default.getBoolean(e.allowEditing.dateValues,t),e.allowEditing.bigIntValues=Default.getBoolean(e.allowEditing.bigIntValues,t),e.allowEditing.guidValues=Default.getBoolean(e.allowEditing.guidValues,t),e.allowEditing.colorValues=Default.getBoolean(e.allowEditing.colorValues,t),e.allowEditing.urlValues=Default.getBoolean(e.allowEditing.urlValues,t),e.allowEditing.emailValues=Default.getBoolean(e.allowEditing.emailValues,t),e.allowEditing.regExpValues=Default.getBoolean(e.allowEditing.regExpValues,t),e.allowEditing.symbolValues=Default.getBoolean(e.allowEditing.symbolValues,t),e.allowEditing.imageValues=Default.getBoolean(e.allowEditing.imageValues,t),e.allowEditing.propertyNames=Default.getBoolean(e.allowEditing.propertyNames,t),e.allowEditing.bulk=Default.getBoolean(e.allowEditing.bulk,t);const n=e.allowEditing;for(const t in n)if(n.hasOwnProperty(t)&&!n[t]){e.allowEditing.bulk=!1;break}return e.allowEditing}(t),t.sideMenu=function(e){return e.sideMenu=Default.getObject(e.sideMenu,{}),e.sideMenu.enabled=Default.getBoolean(e.sideMenu.enabled,!0),e.sideMenu.showImportButton=Default.getBoolean(e.sideMenu.showImportButton,!0),e.sideMenu.showExportButton=Default.getBoolean(e.sideMenu.showExportButton,!0),e.sideMenu.titleText=Default.getAnyString(e.sideMenu.titleText,e.title.text),e.sideMenu.showAvailableDataTypeCounts=Default.getBoolean(e.sideMenu.showAvailableDataTypeCounts,!0),e.sideMenu.showOnlyDataTypesAvailable=Default.getBoolean(e.sideMenu.showOnlyDataTypesAvailable,!1),e.sideMenu.showClearJsonButton=Default.getBoolean(e.sideMenu.showClearJsonButton,!0),e.sideMenu.updateDisplayDelay=Default.getNumber(e.sideMenu.updateDisplayDelay,500),e.sideMenu}(t),t.autoClose=function(e){return e.autoClose=Default.getObject(e.autoClose,{}),e.autoClose.objectSize=Default.getNumber(e.autoClose.objectSize,0),e.autoClose.arraySize=Default.getNumber(e.autoClose.arraySize,0),e.autoClose.mapSize=Default.getNumber(e.autoClose.mapSize,0),e.autoClose.setSize=Default.getNumber(e.autoClose.setSize,0),e.autoClose.htmlSize=Default.getNumber(e.autoClose.htmlSize,0),e.autoClose}(t),t.events=function(e){return e.events=Default.getObject(e.events,{}),e.events.onBeforeRender=Default.getFunction(e.events.onBeforeRender,null),e.events.onRenderComplete=Default.getFunction(e.events.onRenderComplete,null),e.events.onValueClick=Default.getFunction(e.events.onValueClick,null),e.events.onRefresh=Default.getFunction(e.events.onRefresh,null),e.events.onCopyAll=Default.getFunction(e.events.onCopyAll,null),e.events.onOpenAll=Default.getFunction(e.events.onOpenAll,null),e.events.onCloseAll=Default.getFunction(e.events.onCloseAll,null),e.events.onDestroy=Default.getFunction(e.events.onDestroy,null),e.events.onBooleanRender=Default.getFunction(e.events.onBooleanRender,null),e.events.onFloatRender=Default.getFunction(e.events.onFloatRender,null),e.events.onNumberRender=Default.getFunction(e.events.onNumberRender,null),e.events.onBigIntRender=Default.getFunction(e.events.onBigIntRender,null),e.events.onStringRender=Default.getFunction(e.events.onStringRender,null),e.events.onDateRender=Default.getFunction(e.events.onDateRender,null),e.events.onFunctionRender=Default.getFunction(e.events.onFunctionRender,null),e.events.onNullRender=Default.getFunction(e.events.onNullRender,null),e.events.onUnknownRender=Default.getFunction(e.events.onUnknownRender,null),e.events.onSymbolRender=Default.getFunction(e.events.onSymbolRender,null),e.events.onCopyJsonReplacer=Default.getFunction(e.events.onCopyJsonReplacer,null),e.events.onUndefinedRender=Default.getFunction(e.events.onUndefinedRender,null),e.events.onGuidRender=Default.getFunction(e.events.onGuidRender,null),e.events.onColorRender=Default.getFunction(e.events.onColorRender,null),e.events.onJsonEdit=Default.getFunction(e.events.onJsonEdit,null),e.events.onRegExpRender=Default.getFunction(e.events.onRegExpRender,null),e.events.onExport=Default.getFunction(e.events.onExport,null),e.events.onUrlRender=Default.getFunction(e.events.onUrlRender,null),e.events.onImageRender=Default.getFunction(e.events.onImageRender,null),e.events.onEmailRender=Default.getFunction(e.events.onEmailRender,null),e.events.onLambdaRender=Default.getFunction(e.events.onLambdaRender,null),e.events.onCopy=Default.getFunction(e.events.onCopy,null),e.events.onFullScreenChange=Default.getFunction(e.events.onFullScreenChange,null),e.events.onSelectionChange=Default.getFunction(e.events.onSelectionChange,null),e.events.onCustomDataTypeRender=Default.getFunction(e.events.onCustomDataTypeRender,null),e.events}(t),t}})(Binding||(Binding={})),(e=>{let t;(t=e.Options||(e.Options={})).get=function(e=null){const t=Default.getObject(e,{});return t.safeMode=Default.getBoolean(t.safeMode,!0),t.domElementTypes=Default.getStringOrArray(t.domElementTypes,["*"]),t.text=function(e){return e.text=Default.getObject(e.text,{}),e.text.objectText=Default.getAnyString(e.text.objectText,"object"),e.text.arrayText=Default.getAnyString(e.text.arrayText,"array"),e.text.mapText=Default.getAnyString(e.text.mapText,"map"),e.text.setText=Default.getAnyString(e.text.setText,"set"),e.text.htmlText=Default.getAnyString(e.text.htmlText,"html"),e.text.closeAllButtonText=Default.getAnyString(e.text.closeAllButtonText,"Close All"),e.text.openAllButtonText=Default.getAnyString(e.text.openAllButtonText,"Open All"),e.text.copyAllButtonText=Default.getAnyString(e.text.copyAllButtonText,"Copy All"),e.text.objectErrorText=Default.getAnyString(e.text.objectErrorText,"Errors in object: {{error_1}}, {{error_2}}"),e.text.attributeNotValidErrorText=Default.getAnyString(e.text.attributeNotValidErrorText,"The attribute '{{attribute_name}}' is not a valid object."),e.text.attributeNotSetErrorText=Default.getAnyString(e.text.attributeNotSetErrorText,"The attribute '{{attribute_name}}' has not been set correctly."),e.text.stText=Default.getAnyString(e.text.stText,"st"),e.text.ndText=Default.getAnyString(e.text.ndText,"nd"),e.text.rdText=Default.getAnyString(e.text.rdText,"rd"),e.text.thText=Default.getAnyString(e.text.thText,"th"),e.text.ellipsisText=Default.getAnyString(e.text.ellipsisText,"..."),e.text.closeAllButtonSymbolText=Default.getAnyString(e.text.closeAllButtonSymbolText,"⇈"),e.text.openAllButtonSymbolText=Default.getAnyString(e.text.openAllButtonSymbolText,"⇊"),e.text.copyButtonSymbolText=Default.getAnyString(e.text.copyButtonSymbolText,"❐"),e.text.backButtonText=Default.getAnyString(e.text.backButtonText,"Back"),e.text.nextButtonText=Default.getAnyString(e.text.nextButtonText,"Next"),e.text.backButtonSymbolText=Default.getAnyString(e.text.backButtonSymbolText,"←"),e.text.nextButtonSymbolText=Default.getAnyString(e.text.nextButtonSymbolText,"→"),e.text.noJsonToViewText=Default.getAnyString(e.text.noJsonToViewText,"There is currently no JSON to view."),e.text.functionText=Default.getAnyString(e.text.functionText,"function"),e.text.sideMenuButtonSymbolText=Default.getAnyString(e.text.sideMenuButtonSymbolText,"☰"),e.text.sideMenuButtonText=Default.getAnyString(e.text.sideMenuButtonText,"Show Menu"),e.text.closeButtonSymbolText=Default.getAnyString(e.text.closeButtonSymbolText,"✕"),e.text.closeButtonText=Default.getAnyString(e.text.closeButtonText,"Close"),e.text.showDataTypesText=Default.getAnyString(e.text.showDataTypesText,"Show Data Types"),e.text.selectAllText=Default.getAnyString(e.text.selectAllText,"Select All"),e.text.selectNoneText=Default.getAnyString(e.text.selectNoneText,"Select None"),e.text.importButtonSymbolText=Default.getAnyString(e.text.importButtonSymbolText,"↑"),e.text.importButtonText=Default.getAnyString(e.text.importButtonText,"Import"),e.text.fullScreenOnButtonSymbolText=Default.getAnyString(e.text.fullScreenOnButtonSymbolText,"↗"),e.text.fullScreenOffButtonSymbolText=Default.getAnyString(e.text.fullScreenOffButtonSymbolText,"↙"),e.text.fullScreenButtonText=Default.getAnyString(e.text.fullScreenButtonText,"Toggle Full-Screen"),e.text.copyButtonText=Default.getAnyString(e.text.copyButtonText,"Copy"),e.text.dragAndDropSymbolText=Default.getAnyString(e.text.dragAndDropSymbolText,"⇪"),e.text.dragAndDropTitleText=Default.getAnyString(e.text.dragAndDropTitleText,"Drag and drop your JSON files to upload"),e.text.dragAndDropDescriptionText=Default.getAnyString(e.text.dragAndDropDescriptionText,"Multiple files will be joined as an array"),e.text.exportButtonSymbolText=Default.getAnyString(e.text.exportButtonSymbolText,"↓"),e.text.exportButtonText=Default.getAnyString(e.text.exportButtonText,"Export"),e.text.propertyColonCharacter=Default.getAnyString(e.text.propertyColonCharacter,":"),e.text.noPropertiesText=Default.getAnyString(e.text.noPropertiesText,"There are no properties to view."),e.text.openText=Default.getAnyString(e.text.openText,"open"),e.text.openSymbolText=Default.getAnyString(e.text.openSymbolText,"⤤"),e.text.waitingText=Default.getAnyString(e.text.waitingText,"Waiting..."),e.text.pageOfText=Default.getAnyString(e.text.pageOfText,"Page {0} of {1}"),e.text.sizeText=Default.getAnyString(e.text.sizeText,"Size: {0}"),e.text.copiedText=Default.getAnyString(e.text.copiedText,"JSON copied to clipboard."),e.text.exportedText=Default.getAnyString(e.text.exportedText,"JSON exported."),e.text.importedText=Default.getAnyString(e.text.importedText,"{0} JSON files imported."),e.text.ignoreDataTypesUpdated=Default.getAnyString(e.text.ignoreDataTypesUpdated,"Ignore data types updated."),e.text.lengthText=Default.getAnyString(e.text.lengthText,"Length: {0}"),e.text.valueUpdatedText=Default.getAnyString(e.text.valueUpdatedText,"Value updated."),e.text.jsonUpdatedText=Default.getAnyString(e.text.jsonUpdatedText,"JSON updated."),e.text.nameUpdatedText=Default.getAnyString(e.text.nameUpdatedText,"Property name updated."),e.text.indexUpdatedText=Default.getAnyString(e.text.indexUpdatedText,"Array index updated."),e.text.itemDeletedText=Default.getAnyString(e.text.itemDeletedText,"Item deleted."),e.text.arrayJsonItemDeleted=Default.getAnyString(e.text.arrayJsonItemDeleted,"Array JSON item deleted."),e.text.dataTypeText=Default.getAnyString(e.text.dataTypeText,"Data Type: {0}"),e.text.editSymbolButtonText=Default.getAnyString(e.text.editSymbolButtonText,"✎"),e.text.editButtonText=Default.getAnyString(e.text.editButtonText,"Edit"),e.text.moveRightSymbolButtonText=Default.getAnyString(e.text.moveRightSymbolButtonText,"→"),e.text.moveRightButtonText=Default.getAnyString(e.text.moveRightButtonText,"Move Right"),e.text.moveLeftSymbolButtonText=Default.getAnyString(e.text.moveLeftSymbolButtonText,"←"),e.text.moveLeftButtonText=Default.getAnyString(e.text.moveLeftButtonText,"Move Left"),e.text.removeSymbolButtonText=Default.getAnyString(e.text.removeSymbolButtonText,"✕"),e.text.removeButtonText=Default.getAnyString(e.text.removeButtonText,"Remove"),e.text.switchToPagesSymbolText=Default.getAnyString(e.text.switchToPagesSymbolText,"☷"),e.text.switchToPagesText=Default.getAnyString(e.text.switchToPagesText,"Switch To Pages"),e.text.clearJsonSymbolText=Default.getAnyString(e.text.clearJsonSymbolText,"⏎"),e.text.clearJsonText=Default.getAnyString(e.text.clearJsonText,"Clear JSON"),e.text.maximumInspectionLevelsReached=Default.getAnyString(e.text.maximumInspectionLevelsReached,"Maximum inspection levels have been reached."),Is.invalidOptionArray(e.text.dayNames,7)&&(e.text.dayNames=["Monday","Tuesday","Wednesday","Thursday","Friday","Saturday","Sunday"]),Is.invalidOptionArray(e.text.dayNamesAbbreviated,7)&&(e.text.dayNamesAbbreviated=["Mon","Tue","Wed","Thu","Fri","Sat","Sun"]),Is.invalidOptionArray(e.text.monthNames,12)&&(e.text.monthNames=["January","February","March","April","May","June","July","August","September","October","November","December"]),Is.invalidOptionArray(e.text.monthNamesAbbreviated,12)&&(e.text.monthNamesAbbreviated=["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"]),e.text}(t),t}})(Config||(Config={})),(Trigger||(Trigger={})).customEvent=function(e,...t){let n=null;return Is.definedFunction(e)&&(n=e.apply(null,[].slice.call(t,0))),n},(e=>{function t(e,t=!0){const n=t?window.addEventListener:window.removeEventListener,l=t?document.addEventListener:document.removeEventListener;n("mousemove",(()=>o(e))),l("scroll",(()=>o(e)))}function n(e,t,n,l){DomElement.cancelBubble(e),o(t),t._currentView.tooltipTimerId=setTimeout((()=>{t._currentView.tooltip.className=l,t._currentView.tooltip.innerHTML=n,t._currentView.tooltip.style.display="block",DomElement.showElementAtMousePosition(e,t._currentView.tooltip,t.tooltip.offset)}),t.tooltip.delay)}function o(e){Is.defined(e._currentView.tooltip)&&(0!==e._currentView.tooltipTimerId&&(clearTimeout(e._currentView.tooltipTimerId),e._currentView.tooltipTimerId=0),"none"!==e._currentView.tooltip.style.display&&(e._currentView.tooltip.style.display="none"))}e.renderControl=function(e){Is.defined(e._currentView.tooltip)||(e._currentView.tooltip=DomElement.create(document.body,"div","jsontree-js-tooltip"),e._currentView.tooltip.style.display="none",t(e))},e.assignToEvents=t,e.add=function(e,t,o,l="jsontree-js-tooltip"){null!==e&&e.addEventListener("mousemove",(e=>n(e,t,o,l)))},e.show=n,e.hide=o,e.remove=function(e){Is.defined(e._currentView.tooltip)&&e._currentView.tooltip.parentNode.removeChild(e._currentView.tooltip)}})(ToolTip||(ToolTip={})),Arr2=Arr||(Arr={}),Arr2.getIndex=function(e,t){return t.useZeroIndexingForArrays?e:e+1},Arr2.getIndexName=function(e,t,n){let o=t.toString();if(e.addArrayIndexPadding){let t=n.toString().length;te.length-1&&(n=e.length-1),e.splice(n,0,e.splice(t,1)[0])},Arr2.removeNullOrUndefinedEntries=function(e){let t=[];const n=e.length;for(let o=0;o{function t(e,n){let o=0;if(Is.defined(e))if(Is.definedNumber(e))o=8;else if(Is.definedString(e))o=2*e.length;else if(Is.definedBoolean(e))o=4;else if(Is.definedBigInt(e))o=t(e.toString(),n);else if(Is.definedRegExp(e))o=t(e.toString(),n);else if(Is.definedDate(e))o=t(e.toString(),n);else if(Is.definedSet(e))o=t(Convert2.setToArray(e),n);else if(Is.definedMap(e))o=t(Convert2.mapToObject(e),n);else if(Is.definedHtml(e))o=t(Convert2.htmlToObject(e,n),n);else if(Is.definedArray(e)){const l=e.length;for(let r=0;r0){const e=Math.floor(Math.log(o)/Math.log(1024));return`${Convert2.numberToFloatWithDecimalPlaces(o/Math.pow(1024,e),2)} ${" KMGTP".charAt(e)}B`}return null},e.length=function e(t,n){let o=0;if(Is.defined(t))if(Is.definedDate(t))o=t.toString().length;else if(Is.definedImage(t))o=t.src.length;else if(Is.definedRegExp(t))o=t.source.length;else if(Is.definedSet(t))o=e(Convert2.setToArray(t),n);else if(Is.definedMap(t))o=e(Convert2.mapToObject(t),n);else if(Is.definedHtml(t))o=e(Convert2.htmlToObject(t,n),n);else if(Is.definedArray(t))o=t.length;else if(Is.definedObject(t))for(const e in t)t.hasOwnProperty(e)&&o++;else Is.definedFunction(t)||Is.definedSymbol(t)||(o=t.toString().length);return o}})(Size||(Size={})),Obj2=Obj||(Obj={}),Obj2.getPropertyNames=function(e,t){let n=[];for(const t in e)e.hasOwnProperty(t)&&n.push(t);if(t.sortPropertyNames){let e=new Intl.Collator(void 0,{numeric:!0,sensitivity:"base"});n=n.sort(e.compare),t.sortPropertyNamesInAlphabeticalOrder||(n=n.reverse())}return n},Obj2.createFromValue=function(e){const t={};return t[crypto.randomUUID()]=e,t},(e=>{function t(e,t=!0){const o=t?window.addEventListener:window.removeEventListener,l=t?document.addEventListener:document.removeEventListener;o("contextmenu",(()=>n(e))),o("click",(()=>n(e))),l("scroll",(()=>n(e)))}function n(e){Is.defined(e._currentView.contextMenu)&&"none"!==e._currentView.contextMenu.style.display&&(e._currentView.contextMenu.style.display="none")}e.renderControl=function(e){Is.defined(e._currentView.contextMenu)||(e._currentView.contextMenu=DomElement.create(document.body,"div","jsontree-js-context-menu"),e._currentView.contextMenu.style.display="none",t(e))},e.assignToEvents=t,e.show=function(e,t){DomElement.cancelBubble(e),DomElement.showElementAtMousePosition(e,t._currentView.contextMenu,0)},e.hide=n,e.remove=function(e){Is.defined(e._currentView.contextMenu)&&e._currentView.contextMenu.parentNode.removeChild(e._currentView.contextMenu)},e.addMenuItem=function(e,t,n){const o=DomElement.create(e._currentView.contextMenu,"div","context-menu-item");return DomElement.createWithHTML(o,"span","symbol",t),DomElement.createWithHTML(o,"span","text",n),o}})(ContextMenu||(ContextMenu={})),(()=>{let e={},t={},n=0,o=!1;function l(){DomElement.find(e.domElementTypes,(t=>{let n=!0;if(Is.defined(t)&&t.hasAttribute(Constants.JSONTREE_JS_ATTRIBUTE_NAME)){const o=t.getAttribute(Constants.JSONTREE_JS_ATTRIBUTE_NAME);if(Is.definedString(o)){const l=Convert2.jsonStringToObject(o,e);l.parsed&&Is.definedObject(l.object)?r(Binding.Options.getForNewInstance(l.object,t)):e.safeMode||(console.error(e.text.attributeNotValidErrorText.replace("{{attribute_name}}",Constants.JSONTREE_JS_ATTRIBUTE_NAME)),n=!1)}else e.safeMode||(console.error(e.text.attributeNotSetErrorText.replace("{{attribute_name}}",Constants.JSONTREE_JS_ATTRIBUTE_NAME)),n=!1)}return n}))}function r(e){if(Trigger.customEvent(e.events.onBeforeRender,e._currentView.element),ToolTip.renderControl(e),ContextMenu.renderControl(e),Is.definedString(e._currentView.element.id)||(Is.definedString(e.id)?e._currentView.element.id=e.id:e._currentView.element.id=crypto.randomUUID(),e._currentView.idSet=!0),e._currentView.element.classList.add("json-tree-js"),e._currentView.element.removeAttribute(Constants.JSONTREE_JS_ATTRIBUTE_NAME),Is.definedString(e.class)){const t=e.class.split(" "),n=t.length;for(let o=0;o{a(n,o,e)})):a(n,o,l)}function a(t,n,o){const l=function(e){const t=[];if(ToolTip.hide(e),ContextMenu.hide(e),e._currentView.editMode||e._currentView.sideMenuChanged){const n=e._currentView.currentContentColumns.length;for(let o=0;om(t)),t.sideMenu.enabled){const n=DomElement.createWithHTML(o,"button","side-menu",e.text.sideMenuButtonSymbolText);n.onclick=()=>function(e){e._currentView.sideMenu.classList.contains("side-menu-open")||(e._currentView.sideMenu.classList.add("side-menu-open"),e._currentView.disabledBackground.style.display="block",ToolTip.hide(e),ContextMenu.hide(e))}(t),n.ondblclick=DomElement.cancelBubble,ToolTip.add(n,t,e.text.sideMenuButtonText)}if(t._currentView.titleBarButtons=DomElement.create(o,"div","controls"),Is.definedString(t.title.text)&&DomElement.createWithHTML(o,"div","title",t.title.text,t._currentView.titleBarButtons),t.title.showCopyButton&&Is.defined(n)){const o=DomElement.createWithHTML(t._currentView.titleBarButtons,"button","copy-all",e.text.copyButtonSymbolText);o.onclick=()=>function(t,n){const o=JSON.stringify(Convert2.toJsonStringifyClone(n,e,t),t.events.onCopyJsonReplacer,t.jsonIndentSpaces);navigator.clipboard.writeText(o),V(t,e.text.copiedText),Trigger.customEvent(t.events.onCopyAll,t._currentView.element,o)}(t,n),o.ondblclick=DomElement.cancelBubble,ToolTip.add(o,t,e.text.copyAllButtonText)}if(t.title.showCloseOpenAllButtons&&Is.defined(n)){const n=DomElement.createWithHTML(t._currentView.titleBarButtons,"button","open-all",e.text.openAllButtonSymbolText);n.onclick=()=>f(t),n.ondblclick=DomElement.cancelBubble,ToolTip.add(n,t,e.text.openAllButtonText);const o=DomElement.createWithHTML(t._currentView.titleBarButtons,"button","close-all",e.text.closeAllButtonSymbolText);o.onclick=()=>p(t),o.ondblclick=DomElement.cancelBubble,ToolTip.add(o,t,e.text.closeAllButtonText)}if(t.paging.enabled&&Is.definedArray(n)&&n.length>1?(t._currentView.backPageButton=DomElement.createWithHTML(t._currentView.titleBarButtons,"button","back-page",e.text.backButtonSymbolText),t._currentView.backPageButton.ondblclick=DomElement.cancelBubble,ToolTip.add(t._currentView.backPageButton,t,e.text.backButtonText),t._currentView.currentDataArrayPageIndex>0?t._currentView.backPageButton.onclick=()=>x(t):t._currentView.backPageButton.disabled=!0,t._currentView.nextPageButton=DomElement.createWithHTML(t._currentView.titleBarButtons,"button","next-page",e.text.nextButtonSymbolText),t._currentView.nextPageButton.ondblclick=DomElement.cancelBubble,ToolTip.add(t._currentView.nextPageButton,t,e.text.nextButtonText),t._currentView.currentDataArrayPageIndex+(t.paging.columnsPerPage-1)T(t):t._currentView.nextPageButton.disabled=!0):Is.definedArray(n)&&(t.paging.enabled=!1),t.title.enableFullScreenToggling&&t.title.showFullScreenButton){const n=t._currentView.fullScreenOn?e.text.fullScreenOffButtonSymbolText:e.text.fullScreenOnButtonSymbolText;t._currentView.toggleFullScreenButton=DomElement.createWithHTML(t._currentView.titleBarButtons,"button","toggle-full-screen",n),t._currentView.toggleFullScreenButton.onclick=()=>m(t),t._currentView.toggleFullScreenButton.ondblclick=DomElement.cancelBubble,ToolTip.add(t._currentView.toggleFullScreenButton,t,e.text.fullScreenButtonText)}}}(t,o);const r=DomElement.create(t._currentView.element,"div","contents");if(n&&r.classList.add("page-switch"),t.paging.enabled&&Is.definedArray(o)){const e=Is.defined(o[t._currentView.currentDataArrayPageIndex+1]),n=Arr.removeNullOrUndefinedEntries(o);t.data=n;for(let o=0;oy(e)}(t),function(t){if(t.sideMenu.enabled){t._currentView.sideMenu=DomElement.create(t._currentView.element,"div","side-menu");const n=DomElement.create(t._currentView.sideMenu,"div","side-menu-title-bar");if(Is.definedString(t.sideMenu.titleText)){DomElement.create(n,"div","side-menu-title-bar-text").innerHTML=t.sideMenu.titleText}const o=DomElement.create(n,"div","side-menu-title-controls");if(t.sideMenu.showClearJsonButton&&Is.definedObject(t.data)){const n=DomElement.createWithHTML(o,"button","clear-json",e.text.clearJsonSymbolText);n.onclick=()=>function(t){t.data=null,i(t),V(t,e.text.jsonUpdatedText)}(t),ToolTip.add(n,t,e.text.clearJsonText)}if(t.sideMenu.showExportButton&&Is.definedObject(t.data)){const n=DomElement.createWithHTML(o,"button","export",e.text.exportButtonSymbolText);n.onclick=()=>$(t,t.data),ToolTip.add(n,t,e.text.exportButtonText)}if(t.sideMenu.showImportButton){const n=DomElement.createWithHTML(o,"button","import",e.text.importButtonSymbolText);n.onclick=()=>b(t),ToolTip.add(n,t,e.text.importButtonText)}const l=DomElement.createWithHTML(o,"button","close",e.text.closeButtonSymbolText);if(l.onclick=()=>y(t),ToolTip.add(l,t,e.text.closeButtonText),Is.definedObject(t.data)){!function(t,n){const o=[],l=DomElement.create(t,"div","settings-panel"),r=DomElement.create(l,"div","settings-panel-title-bar");DomElement.createWithHTML(r,"div","settings-panel-title-text",`${e.text.showDataTypesText}:`);const i=DomElement.create(r,"div","settings-panel-control-buttons"),a=DomElement.create(i,"div","settings-panel-control-button settings-panel-fill"),s=DomElement.create(i,"div","settings-panel-control-button");a.onclick=()=>h(n,o,!0),s.onclick=()=>h(n,o,!1),ToolTip.add(a,n,e.text.selectAllText),ToolTip.add(s,n,e.text.selectNoneText);const u=DomElement.create(l,"div","settings-panel-contents"),c=Object.keys(DataType),d=n.ignore;for(const e in n._currentView.dataTypeCounts)-1===c.indexOf(e)&&c.push(e);c.sort(),c.forEach(((e,t)=>{const l=function(e,t,n,o){let l=null;const r=n._currentView.dataTypeCounts[t];if(!n.sideMenu.showOnlyDataTypesAvailable||r>0){let i=Str.capitalizeFirstLetter(t),a="";n.sideMenu.showAvailableDataTypeCounts&&n._currentView.dataTypeCounts.hasOwnProperty(t)&&(a=`(${r})`),l=DomElement.createCheckBox(e,i,t,o,n.showValueColors?t:"",a),l.onchange=()=>{const e=n.ignore;e[`${t}Values`]=!l.checked,n.ignore=e,n._currentView.sideMenuChanged=!0}}return l}(u,e,n,!d[`${e}Values`]);Is.defined(l)&&o.push(l)}))}(DomElement.create(t._currentView.sideMenu,"div","side-menu-contents"),t)}}}(t),function(t){t.footer.enabled&&Is.defined(t.data)&&(t._currentView.footer=DomElement.create(t._currentView.element,"div","footer-bar"),w(t),t._currentView.footerStatusText=DomElement.createWithHTML(t._currentView.footer,"div","status-text",e.text.waitingText),t.footer.showDataTypes&&(t._currentView.footerDataTypeText=DomElement.create(t._currentView.footer,"div","status-value-data-type"),t._currentView.footerDataTypeText.style.display="none"),t.footer.showLengths&&(t._currentView.footerLengthText=DomElement.create(t._currentView.footer,"div","status-value-length"),t._currentView.footerLengthText.style.display="none"),t.footer.showSizes&&(t._currentView.footerSizeText=DomElement.create(t._currentView.footer,"div","status-value-size"),t._currentView.footerSizeText.style.display="none"),t.paging.enabled&&Is.definedArray(t.data)&&t.data.length>1&&t.footer.showPageOf&&(t._currentView.footerPageText=DomElement.create(t._currentView.footer,"div","status-page-index"),function(t){if(t.paging.enabled){const n=Math.ceil((t._currentView.currentDataArrayPageIndex+1)/t.paging.columnsPerPage),o=Math.ceil(t.data.length/t.paging.columnsPerPage),l=DomElement.createWithHTML(null,"span","status-count",n.toFixed()).outerHTML,r=DomElement.createWithHTML(null,"span","status-count",o.toFixed()).outerHTML,i=e.text.pageOfText.replace("{0}",l).replace("{1}",r);t._currentView.footerPageText.innerHTML=i}}(t)))}(t),function(t){if(t.fileDroppingEnabled){const n=DomElement.create(t._currentView.element,"div","drag-and-drop-background"),o=DomElement.create(n,"div","notice-text");DomElement.createWithHTML(o,"p","notice-text-symbol",e.text.dragAndDropSymbolText),DomElement.createWithHTML(o,"p","notice-text-title",e.text.dragAndDropTitleText),DomElement.createWithHTML(o,"p","notice-text-description",e.text.dragAndDropDescriptionText),t._currentView.dragAndDropBackground=n,t._currentView.element.ondragover=()=>H(t,n),t._currentView.element.ondragenter=()=>H(t,n),n.ondragover=DomElement.cancelBubble,n.ondragenter=DomElement.cancelBubble,n.ondragleave=()=>n.style.display="none",n.ondrop=e=>function(e,t){DomElement.cancelBubble(e),t._currentView.dragAndDropBackground.style.display="none",Is.defined(window.FileReader)&&e.dataTransfer.files.length>0&&R(e.dataTransfer.files,t)}(e,t)}}(t),t._currentView.initialized=!0}function s(t,n,o,l,r,a,s){const m=DomElement.create(n,"div",a>1?"contents-column-multiple":"contents-column");if(Is.defined(t)){m.onscroll=()=>function(e,t,n){ToolTip.hide(t),ContextMenu.hide(t);const o=e.scrollTop,l=e.scrollLeft,r=t._currentView.currentContentColumns.length;if(t.controlPanel.enabled){const e=t._currentView.currentContentColumns[n].controlButtons;Is.defined(e)&&(e.style.top=`${t._currentView.currentContentColumns[n].column.scrollTop}px`,e.style.right=`-${t._currentView.currentContentColumns[n].column.scrollLeft}px`)}if(t.paging.synchronizeScrolling)for(let e=0;e1&&o.allowEditing.bulk&&(m.setAttribute("draggable","true"),m.ondragstart=()=>function(e,t,n){t._currentView.columnDragging=!0,t._currentView.columnDraggingDataIndex=n,e.classList.add("draggable-item")}(m,o,l),m.ondragend=()=>function(e,t){t._currentView.columnDragging=!1,e.classList.remove("draggable-item")}(m,o),m.ondragover=e=>e.preventDefault(),m.ondrop=()=>function(e,t){e._currentView.columnDragging=!1,c(e,e._currentView.columnDraggingDataIndex,t)}(o,l));let n=m,a=null,f=null;o.lineNumbers.enabled&&(a=DomElement.create(m,"div","contents-column-line-numbers"),f=DomElement.create(m,"div","contents-column-lines"),n=f);const p={column:m,lineNumbers:a,lines:f,controlButtons:null};o._currentView.currentContentColumns.push(p),o._currentView.currentColumnBuildingIndex=o._currentView.currentContentColumns.length-1,Is.definedArray(t)?B(n,o,t,"array"):Is.definedSet(t)?B(n,o,Convert2.setToArray(t),"set"):Is.definedHtml(t)?v(n,o,Convert2.htmlToObject(t,o.showCssStylesForHtmlObjects),l,"html"):Is.definedMap(t)?v(n,o,Convert2.mapToObject(t),l,"map"):Is.definedObject(t)?v(n,o,t,l,"object"):v(n,o,Obj.createFromValue(t),l,"object"),d(o._currentView.currentColumnBuildingIndex,o),function(t,n,o,l){if(t.controlPanel.enabled){const r=t._currentView.currentColumnBuildingIndex,a=DomElement.create(n,"div","column-control-buttons");a.ondblclick=DomElement.cancelBubble;const s=t.paging.enabled&&Is.definedArray(t.data)&&t.data.length>1;if(t.allowEditing.bulk&&t.controlPanel.showEditButton){const r=DomElement.createWithHTML(a,"button","edit",e.text.editSymbolButtonText);r.onclick=()=>u(null,t,o,n,l),r.ondblclick=DomElement.cancelBubble,ToolTip.add(r,t,e.text.editButtonText)}if(s&&t.allowEditing.bulk&&t.paging.allowColumnReordering&&t.controlPanel.showMovingButtons){const n=DomElement.createWithHTML(a,"button","move-right",e.text.moveRightSymbolButtonText);n.ondblclick=DomElement.cancelBubble,l+1>t.data.length-1?n.disabled=!0:n.onclick=()=>c(t,l,l+1),ToolTip.add(n,t,e.text.moveRightButtonText);const o=DomElement.createWithHTML(a,"button","move-left",e.text.moveLeftSymbolButtonText);o.ondblclick=DomElement.cancelBubble,l-1<0?o.disabled=!0:o.onclick=()=>c(t,l,l-1),ToolTip.add(o,t,e.text.moveLeftButtonText)}if(s&&t.controlPanel.showCopyButton){const n=DomElement.createWithHTML(a,"button","copy",e.text.copyButtonSymbolText);n.onclick=()=>g(t,o),n.ondblclick=DomElement.cancelBubble,ToolTip.add(n,t,e.text.copyButtonText)}if(s&&t.controlPanel.showCloseOpenAllButtons){const n=DomElement.createWithHTML(a,"button","open-all",e.text.openAllButtonSymbolText);n.onclick=()=>function(e,t){const n=e._currentView.contentPanelsOpen[t];for(const e in n)n.hasOwnProperty(e)&&(n[e]=!1);i(e)}(t,l),n.ondblclick=DomElement.cancelBubble,ToolTip.add(n,t,e.text.openAllButtonText);const o=DomElement.createWithHTML(a,"button","close-all",e.text.closeAllButtonSymbolText);o.onclick=()=>function(e,t){const n=e._currentView.contentPanelsOpen[t];for(const e in n)n.hasOwnProperty(e)&&(n[e]=!0);i(e)}(t,l),o.ondblclick=DomElement.cancelBubble,ToolTip.add(o,t,e.text.closeAllButtonText)}if(s&&t.controlPanel.showExportButton){const n=DomElement.createWithHTML(a,"button","export",e.text.exportButtonSymbolText);n.onclick=()=>$(t,o),ToolTip.add(n,t,e.text.exportButtonText)}if(s&&t.allowEditing.bulk&&t.controlPanel.showImportButton){const n=DomElement.createWithHTML(a,"button","import",e.text.importButtonSymbolText);n.onclick=()=>b(t,l+1),ToolTip.add(n,t,e.text.importButtonText)}if(t.allowEditing.bulk&&t.controlPanel.showRemoveButton){const n=DomElement.createWithHTML(a,"button","remove",e.text.removeSymbolButtonText);n.onclick=()=>function(t,n){t.paging.enabled?(t.data.splice(n,1),n===t._currentView.currentDataArrayPageIndex&&t._currentView.currentDataArrayPageIndex>0&&(t._currentView.currentDataArrayPageIndex-=t.paging.columnsPerPage)):t.data=null;i(t),V(t,e.text.arrayJsonItemDeleted)}(t,l),n.ondblclick=DomElement.cancelBubble,ToolTip.add(n,t,e.text.removeButtonText)}if(!s&&Is.definedArray(t.data)&&t.data.length>1&&t.controlPanel.showSwitchToPagesButton){const n=DomElement.createWithHTML(a,"button","switch-to-pages",e.text.switchToPagesSymbolText);n.onclick=()=>function(e){e.paging.enabled=!0,i(e)}(t),n.ondblclick=DomElement.cancelBubble,ToolTip.add(n,t,e.text.switchToPagesText)}if(""!==a.innerHTML){const e=DomElement.getStyleValueByName(n,"padding-left",!0);t._currentView.currentContentColumns[r].controlButtons=a,n.style.minHeight=`${a.offsetHeight}px`,n.style.paddingRight=`${a.offsetWidth+e}px`}else n.removeChild(a)}}(o,m,t,l),Is.defined(r)&&(m.scrollTop=r),o._currentView.titleBarButtons.style.display="block",o.allowEditing.bulk&&(m.ondblclick=e=>{u(e,o,t,m,l)})}else{const t=DomElement.create(m,"div","no-json");if(DomElement.createWithHTML(t,"span","no-json-text",e.text.noJsonToViewText),o.sideMenu.showImportButton){DomElement.createWithHTML(t,"span","no-json-import-text",`${e.text.importButtonText}${e.text.ellipsisText}`).onclick=()=>b(o)}}}function u(t,n,o,l,r){let a=null;Is.defined(t)&&DomElement.cancelBubble(t),clearTimeout(n._currentView.valueClickTimerId),n._currentView.valueClickTimerId=0,n._currentView.editMode=!0,l.classList.add("editable"),l.setAttribute("contenteditable","true"),l.setAttribute("draggable","false"),l.innerText=JSON.stringify(Convert2.toJsonStringifyClone(o,e,n),n.events.onCopyJsonReplacer,n.jsonIndentSpaces),l.focus(),DomElement.selectAllText(l),l.onblur=()=>{i(n,!1),Is.definedString(a)&&V(n,a)},l.onkeydown=t=>{if("Escape"===t.code)t.preventDefault(),l.setAttribute("contenteditable","false");else if(U(t)&&"Enter"===t.code){t.preventDefault();const o=l.innerText,i=Convert2.jsonStringToObject(o,e);i.parsed&&(a=e.text.jsonUpdatedText,n.paging.enabled?Is.defined(i.object)?n.data[r]=i.object:(n.data.splice(r,1),a=e.text.arrayJsonItemDeleted,r===n._currentView.currentDataArrayPageIndex&&n._currentView.currentDataArrayPageIndex>0&&(n._currentView.currentDataArrayPageIndex-=n.paging.columnsPerPage)):n.data=i.object),l.setAttribute("contenteditable","false")}else"Enter"===t.code&&(t.preventDefault(),document.execCommand("insertLineBreak"))}}function c(t,n,o){if(n!==o){const l=t.data[o],r=t.data[n];let a=t._currentView.contentPanelsOpen[o],s=t._currentView.contentPanelsOpen[n];Is.defined(a)||(a={}),Is.defined(s)||(s={}),t.data[o]=r,t.data[n]=l,t._currentView.contentPanelsOpen[o]=s,t._currentView.contentPanelsOpen[n]=a,t._currentView.currentDataArrayPageIndex+(t.paging.columnsPerPage-1)0){let r=DomElement.getOffset(s).top;1===e&&(o=r),r-=o;const a=DomElement.create(n.lineNumbers,"div","contents-column-line-number"),u=t.lineNumbers.addDots?".":"";t.lineNumbers.padNumbers?a.innerHTML=`${Str.padNumber(e,i.toString().length)}${u}`:a.innerHTML=`${e}${u}`;const c=r+s.offsetHeight/2-a.offsetHeight/2;a.style.top=`${c}px`,l=Math.max(l,a.offsetWidth)}e++}n.lineNumbers.style.height=`${n.lines.offsetHeight}px`,n.lineNumbers.style.width=`${l}px`}else Is.defined(n.lineNumbers)&&(n.lineNumbers.parentNode.removeChild(n.lineNumbers),n.lineNumbers=null)}function g(t,n){const o=JSON.stringify(Convert2.toJsonStringifyClone(n,e,t),t.events.onCopyJsonReplacer,t.jsonIndentSpaces);navigator.clipboard.writeText(o),V(t,e.text.copiedText),Trigger.customEvent(t.events.onCopy,t._currentView.element,o)}function m(t){t.title.enableFullScreenToggling&&(t._currentView.element.classList.contains("full-screen")?(t._currentView.element.classList.remove("full-screen"),t._currentView.toggleFullScreenButton.innerHTML=e.text.fullScreenOnButtonSymbolText,t._currentView.fullScreenOn=!1):(t._currentView.element.classList.add("full-screen"),t._currentView.toggleFullScreenButton.innerHTML=e.text.fullScreenOffButtonSymbolText,t._currentView.fullScreenOn=!0),ToolTip.hide(t),ContextMenu.hide(t),w(t),Trigger.customEvent(t.events.onFullScreenChange,t._currentView.element,t._currentView.element.classList.contains("full-screen")))}function f(e){e.showAllAsClosed=!1,e._currentView.contentPanelsOpen={},i(e),Trigger.customEvent(e.events.onOpenAll,e._currentView.element)}function p(e){e.showAllAsClosed=!0,e._currentView.contentPanelsOpen={},i(e),Trigger.customEvent(e.events.onCloseAll,e._currentView.element)}function x(e){null===e._currentView.backPageButton||e._currentView.backPageButton.disabled||(e._currentView.currentDataArrayPageIndex-=e.paging.columnsPerPage,i(e,!0),Trigger.customEvent(e.events.onBackPage,e._currentView.element))}function T(e){null===e._currentView.nextPageButton||e._currentView.nextPageButton.disabled||(e._currentView.currentDataArrayPageIndex+=e.paging.columnsPerPage,i(e,!0),Trigger.customEvent(e.events.onNextPage,e._currentView.element))}function b(e,t=null){const n=DomElement.createWithNoContainer("input");n.type="file",n.accept=".json",n.multiple=!0,y(e),n.onchange=()=>R(n.files,e,t),n.click()}function y(t){let n=!1;return t._currentView.sideMenu.classList.contains("side-menu-open")&&(t._currentView.sideMenu.classList.remove("side-menu-open"),t._currentView.disabledBackground.style.display="none",ToolTip.hide(t),ContextMenu.hide(t),t._currentView.sideMenuChanged&&setTimeout((()=>{i(t),V(t,e.text.ignoreDataTypesUpdated)}),t.sideMenu.updateDisplayDelay),n=!0),n}function h(e,t,n){const o=t.length,l=e.ignore;for(let e=0;e0&&(o.addEventListener("mousemove",(()=>{const n=DomElement.createWithHTML(null,"span","status-count",l.toString()).outerHTML,o=e.text.lengthText.replace("{0}",n);t._currentView.footerLengthText.style.display="block",t._currentView.footerLengthText.innerHTML=o})),o.addEventListener("mouseleave",(()=>{t._currentView.footerLengthText.style.display="none",t._currentView.footerLengthText.innerHTML=""})))}}function S(t,n,o){if(t.footer.enabled&&t.footer.showSizes){const l=Size.of(n,t.showCssStylesForHtmlObjects);Is.definedString(l)&&(o.addEventListener("mousemove",(()=>{const n=DomElement.createWithHTML(null,"span","status-count",l.toString()).outerHTML,o=e.text.sizeText.replace("{0}",n);t._currentView.footerSizeText.style.display="block",t._currentView.footerSizeText.innerHTML=o})),o.addEventListener("mouseleave",(()=>{t._currentView.footerSizeText.style.display="none",t._currentView.footerSizeText.innerHTML=""})))}}function V(t,n){t.footer.enabled&&(t._currentView.footerStatusText.innerHTML=n,clearTimeout(t._currentView.footerStatusTextTimerId),t._currentView.footerStatusTextTimerId=setTimeout((()=>{t._currentView.footerStatusText.innerHTML=e.text.waitingText}),t.footer.statusResetDelay))}function v(t,n,o,l,r){let i=o;Is.definedImportedFilename(o)&&(i=i.object);const a=Obj.getPropertyNames(i,n),s=a.length;if(0!==s||!n.ignore.emptyObjects){let u=null;"object"===r?u=e.text.objectText:"map"===r?u=e.text.mapText:"html"===r&&(u=e.text.htmlText);const c=DomElement.create(t,"div","object-type-title"),d=DomElement.create(t,"div","object-type-contents last-item"),g=n.showExpandIcons?DomElement.create(c,"div",`opened-${n.expandIconType}`):null;let m=null;if(!n.paging.enabled||!Is.definedNumber(l)||Is.definedImportedFilename(o)){let t=n.rootName;Is.definedImportedFilename(o)&&(t=o.filename),n.showPropertyNameQuotes&&(t=`"${t}"`),m=DomElement.createWithHTML(c,"span","root-name",t),DomElement.createWithHTML(c,"span","split",e.text.propertyColonCharacter)}const f=DomElement.createWithHTML(c,"span",n.showValueColors?`${r} main-title`:"main-title",u);let p=null,x=null;if(_(d,n),n.paging.enabled&&Is.definedNumber(l)){let t=n.useZeroIndexingForArrays?l.toString():(l+1).toString();n.showArrayIndexBrackets&&(t=`[${t}]`);const o=Is.defined(m)?m:f;DomElement.createWithHTML(c,"span",n.showValueColors?`${r} data-array-index`:"data-array-index",t,o),DomElement.createWithHTML(c,"span","split",e.text.propertyColonCharacter,o)}n.showObjectSizes&&s>0&&("html"===r?DomElement.createWithHTML(c,"span",n.showValueColors?`${r} size`:"size",`<${s}>`):DomElement.createWithHTML(c,"span",n.showValueColors?`${r} size`:"size",`{${s}}`)),n.showOpeningClosingCurlyBraces&&(p=DomElement.createWithHTML(c,"span","opening-symbol","{")),n.showClosedObjectCurlyBraces&&(x=DomElement.createWithHTML(c,"span","closed-symbols","{ ... }")),E(g,null,d,n,i,a,p,x,!1,!0,"",r,"object"!==r,1),O(n,f,i,r,!1),S(n,i,f),D(n,i,f),F(n,c,!1,i,i,null,!1,null)}}function B(t,n,o,l){let r=o;Is.definedImportedFilename(o)&&(r=r.object);let i=null;"set"===l?i=e.text.setText:"array"===l&&(i=e.text.arrayText);const a=DomElement.create(t,"div","object-type-title"),s=DomElement.create(t,"div","object-type-contents last-item"),u=n.showExpandIcons?DomElement.create(a,"div",`opened-${n.expandIconType}`):null;if(!n.paging.enabled||Is.definedImportedFilename(o)){let t=n.rootName;Is.definedImportedFilename(o)&&(t=o.filename),n.showPropertyNameQuotes&&(t=`"${t}"`),DomElement.createWithHTML(a,"span","root-name",t),DomElement.createWithHTML(a,"span","split",e.text.propertyColonCharacter)}const c=DomElement.createWithHTML(a,"span",n.showValueColors?`${l} main-title`:"main-title",i);let d=null,g=null;_(s,n),n.showObjectSizes&&DomElement.createWithHTML(a,"span",n.showValueColors?`${l} size`:"size",`[${o.length}]`),n.showOpeningClosingSquaredBrackets&&(d=DomElement.createWithHTML(a,"span","opening-symbol","[")),n.showClosedArraySquaredBrackets&&(g=DomElement.createWithHTML(a,"span","closed-symbols","[ ... ]")),I(u,null,s,n,o,d,g,!1,!0,"",l,"array"!==l,1),O(n,c,o,l,!1),S(n,o,c),D(n,o,c),F(n,a,!1,o,o,null,!1,null)}function E(t,n,o,l,r,i,a,s,u,c,d,g,m,f){let p=!0;const x=i.length,T=""!==d?x:0;if(0!==x||l.ignore.emptyObjects)if(l.maximum.inspectionLevels>0&&f>l.maximum.inspectionLevels)C(r,o,l,"",e.text.maximumInspectionLevelsReached,!0,!1,"",g,m,f),p=!1;else{for(let e=0;e0&&m>l.maximum.inspectionLevels)C(r,o,l,"",e.text.maximumInspectionLevelsReached,!0,!1,"",d,g,m),f=!1;else{if(l.reverseArrayValues)for(let e=p;e--;){const t=Arr.getIndex(e,l),n=""===c?t.toString():`${c}\\${t}`;C(r,o,l,Arr.getIndexName(l,t,p),r[e],0===e,!0,n,d,g,m)}else for(let e=0;e{DomElement.cancelBubble(a);let s=0,u=null;clearTimeout(t._currentView.valueClickTimerId),t._currentView.valueClickTimerId=0,t._currentView.editMode=!0,l.classList.add("editable-name"),l.innerHTML=r?Arr.getIndexFromBrackets(o).toString():o,l.setAttribute("contenteditable","true"),l.focus(),DomElement.selectAllText(l),l.onblur=()=>{i(t,!1),Is.definedString(u)&&V(t,u)},l.onkeydown=i=>{if("Escape"===i.code)i.preventDefault(),l.setAttribute("contenteditable","false");else if("Enter"===i.code){i.preventDefault();const a=l.innerText;if(r)if(Is.definedString(a)&&!isNaN(+a)){let o=+a;t.useZeroIndexingForArrays||o--,s!==o&&(u=e.text.indexUpdatedText,Arr.moveIndex(n,s,o),Trigger.customEvent(t.events.onJsonEdit,t._currentView.element))}else n.splice(Arr.getIndexFromBrackets(o),1),u=e.text.itemDeletedText;else if(a!==o){if(""===a.trim())u=e.text.itemDeletedText,delete n[o];else if(!n.hasOwnProperty(a)){u=e.text.nameUpdatedText;const t=n[o];delete n[o],n[a]=t}Trigger.customEvent(t.events.onJsonEdit,t._currentView.element)}l.setAttribute("contenteditable","false")}}})}(l,t,r,B,u),Is.definedString(c)&&x.setAttribute(Constants.JSONTREE_JS_ATTRIBUTE_PATH_NAME,c),u||(S(l,r,B),D(l,r,B)),function(e,t,n,l,r){t.onclick=i=>{DomElement.cancelBubble(i);const a=t.classList.contains("highlight-selected")&&o,s=e._currentView.currentContentColumns,u=e._currentView.currentContentColumns.length;let c=!1;o||(e._currentView.selectedValues=[]);for(let t=0;twindow.open(a)),A(l,t,r,a,y,u,M,H),Trigger.customEvent(l.events.onUrlRender,l._currentView.element,y),P(l,x,s)}else if(Is.definedString(a)&&Is.definedEmail(a))if(v="email",l.ignore.emailValues)h=!0;else{let n=Str.getMaximumLengthDisplay(a,l.maximum.emailLength,e.text.ellipsisText);b=l.showValueColors?`${v} value`:"value",y=DomElement.createWithHTML(x,"span",b,n),M=l.allowEditing.emailValues&&!m,l.showEmailOpenButtons&&(H=DomElement.createWithHTML(x,"span",l.showValueColors?"open-button-color":"open-button",`${e.text.openText} ${e.text.openSymbolText}`),H.onclick=()=>window.open(`mailto:${a}`)),A(l,t,r,a,y,u,M,H),Trigger.customEvent(l.events.onEmailRender,l._currentView.element,y),P(l,x,s)}else if(Is.definedStringAny(a))if(v="string",!l.ignore.stringValues||j){const o=Convert2.stringToParsedValue(a,l);if(Is.defined(o))C(t,n,l,r,o,s,u,c,g,m,f),h=!0,w=!0;else{let n=a;j?(b="no-properties-text",M=!1,N=!1):(Is.definedString(n)||(n=l.emptyStringValue),n=Str.getMaximumLengthDisplay(n,l.maximum.stringLength,e.text.ellipsisText),n=l.showStringQuotes?`"${n}"`:n,b=l.showValueColors?`${v} value`:"value",M=l.allowEditing.stringValues&&!m),y=DomElement.createWithHTML(x,"span",b,n),j||(A(l,t,r,a,y,u,M),Trigger.customEvent(l.events.onStringRender,l._currentView.element,y),P(l,x,s))}}else h=!0;else if(Is.definedDate(a))v="date",l.ignore.dateValues?h=!0:(b=l.showValueColors?`${v} value`:"value",y=DomElement.createWithHTML(x,"span",b,DateTime.getCustomFormattedDateText(e,a,l.dateTimeFormat)),M=l.allowEditing.dateValues&&!m,A(l,t,r,a,y,u,M),Trigger.customEvent(l.events.onDateRender,l._currentView.element,y),P(l,x,s));else if(Is.definedSymbol(a))v="symbol",l.ignore.symbolValues?h=!0:(b=l.showValueColors?`${v} value`:"value",y=DomElement.createWithHTML(x,"span",b,a.toString()),M=l.allowEditing.symbolValues&&!m,A(l,t,r,a,y,u,M),Trigger.customEvent(l.events.onSymbolRender,l._currentView.element,y),P(l,x,s));else if(Is.definedRegExp(a))v="regexp",l.ignore.regexpValues?h=!0:(b=l.showValueColors?`${v} value`:"value",y=DomElement.createWithHTML(x,"span",b,a.source.toString()),M=l.allowEditing.regExpValues&&!m,A(l,t,r,a,y,u,M),Trigger.customEvent(l.events.onRegExpRender,l._currentView.element,y),P(l,x,s));else if(Is.definedImage(a))if(v="image",l.ignore.imageValues)h=!0;else{b=l.showValueColors?`${v} value`:"value",y=DomElement.create(x,"span",b),M=l.allowEditing.imageValues&&!m,A(l,t,r,a,y,u,M);DomElement.create(y,"img").src=a.src,Trigger.customEvent(l.events.onImageRender,l._currentView.element,y),P(l,x,s)}else if(Is.definedHtml(a))if(v="html",l.ignore.htmlValues)h=!0;else{const t=Convert2.htmlToObject(a,l.showCssStylesForHtmlObjects),n=Obj.getPropertyNames(t,l),o=n.length;if(0===o&&l.ignore.emptyObjects)h=!0;else{const r=DomElement.create(x,"span",l.showValueColors?v:""),i=DomElement.create(p,"div","object-type-contents");let a=null,u=null;_(i,l),s&&i.classList.add("last-item"),y=DomElement.createWithHTML(r,"span","main-title",e.text.htmlText),l.showObjectSizes&&(o>0||!l.ignore.emptyObjects)&&DomElement.createWithHTML(r,"span","size",`<${o}>`),l.showOpeningClosingCurlyBraces&&(a=DomElement.createWithHTML(r,"span","opening-symbol","{")),l.showClosedObjectCurlyBraces&&(u=DomElement.createWithHTML(r,"span","closed-symbols","{ ... }"));!E(T,P(l,r,s),i,l,t,n,a,u,!0,s,c,v,!0,f+1)&&l.showOpeningClosingCurlyBraces&&(a.parentNode.removeChild(a),u.parentNode.removeChild(u))}}else if(Is.definedSet(a))if(v="set",l.ignore.setValues)h=!0;else{const t=Convert2.setToArray(a),n=DomElement.create(x,"span",l.showValueColors?v:""),o=DomElement.create(p,"div","object-type-contents");let r=null,i=null;_(o,l),s&&o.classList.add("last-item"),y=DomElement.createWithHTML(n,"span","main-title",e.text.setText),l.showObjectSizes&&DomElement.createWithHTML(n,"span","size",`[${t.length}]`),l.showOpeningClosingSquaredBrackets&&(r=DomElement.createWithHTML(n,"span","opening-symbol","[")),l.showClosedArraySquaredBrackets&&(i=DomElement.createWithHTML(n,"span","closed-symbols","[ ... ]"));!I(T,P(l,n,s),o,l,t,r,i,!0,s,c,v,!0,f+1)&&l.showOpeningClosingSquaredBrackets&&(r.parentNode.removeChild(r),i.parentNode.removeChild(i))}else if(Is.definedArray(a))if(v="array",l.ignore.arrayValues)h=!0;else{const t=DomElement.create(x,"span",l.showValueColors?v:""),n=DomElement.create(p,"div","object-type-contents");let o=null,r=null;_(n,l),s&&n.classList.add("last-item"),y=DomElement.createWithHTML(t,"span","main-title",e.text.arrayText),l.showObjectSizes&&DomElement.createWithHTML(t,"span","size",`[${a.length}]`),l.showOpeningClosingSquaredBrackets&&(o=DomElement.createWithHTML(t,"span","opening-symbol","[")),l.showClosedArraySquaredBrackets&&(r=DomElement.createWithHTML(t,"span","closed-symbols","[ ... ]"));!I(T,P(l,t,s),n,l,a,o,r,!0,s,c,v,!1,f+1)&&l.showOpeningClosingSquaredBrackets&&(o.parentNode.removeChild(o),r.parentNode.removeChild(r))}else if(Is.definedMap(a))if(v="map",l.ignore.mapValues)h=!0;else{const t=Convert2.mapToObject(a),n=Obj.getPropertyNames(t,l),o=n.length;if(0===o&&l.ignore.emptyObjects)h=!0;else{const r=DomElement.create(x,"span",l.showValueColors?v:""),i=DomElement.create(p,"div","object-type-contents");let a=null,u=null;_(i,l),s&&i.classList.add("last-item"),y=DomElement.createWithHTML(r,"span","main-title",e.text.mapText),l.showObjectSizes&&(o>0||!l.ignore.emptyObjects)&&DomElement.createWithHTML(r,"span","size",`{${o}}`),l.showOpeningClosingCurlyBraces&&(a=DomElement.createWithHTML(r,"span","opening-symbol","{")),l.showClosedObjectCurlyBraces&&(u=DomElement.createWithHTML(r,"span","closed-symbols","{ ... }"));!E(T,P(l,r,s),i,l,t,n,a,u,!0,s,c,v,!0,f+1)&&l.showOpeningClosingCurlyBraces&&(a.parentNode.removeChild(a),u.parentNode.removeChild(u))}}else if(Is.definedObject(a))if(v="object",l.ignore.objectValues)h=!0;else{const t=Obj.getPropertyNames(a,l),n=t.length;if(0===n&&l.ignore.emptyObjects)h=!0;else{const o=DomElement.create(x,"span",l.showValueColors?v:""),r=DomElement.create(p,"div","object-type-contents");let i=null,u=null;_(r,l),s&&r.classList.add("last-item"),y=DomElement.createWithHTML(o,"span","main-title",e.text.objectText),l.showObjectSizes&&(n>0||!l.ignore.emptyObjects)&&DomElement.createWithHTML(o,"span","size",`{${n}}`),l.showOpeningClosingCurlyBraces&&(i=DomElement.createWithHTML(o,"span","opening-symbol","{")),l.showClosedObjectCurlyBraces&&(u=DomElement.createWithHTML(o,"span","closed-symbols","{ ... }"));!E(T,P(l,o,s),r,l,a,t,i,u,!0,s,c,v,!1,f+1)&&l.showOpeningClosingCurlyBraces&&(i.parentNode.removeChild(i),u.parentNode.removeChild(u))}}else v="unknown",l.ignore.unknownValues?h=!0:(b=l.showValueColors?`${v} value non-value`:"value non-value",y=DomElement.createWithHTML(x,"span",b,a.toString()),Trigger.customEvent(l.events.onUnknownRender,l._currentView.element,y),P(l,x,s));j||w||function(e,t){e._currentView.dataTypeCounts.hasOwnProperty(t)||(e._currentView.dataTypeCounts[t]=0);e._currentView.dataTypeCounts[t]++}(l,v),h?n.removeChild(p):Is.defined(y)&&(j||(S(l,a,y),D(l,a,y),function(t,n,o){t.footer.enabled&&t.footer.showDataTypes&&(o.addEventListener("mousemove",(()=>{const o=DomElement.createWithHTML(null,"span","status-count",n).outerHTML,l=e.text.dataTypeText.replace("{0}",o);t._currentView.footerDataTypeText.style.display="block",t._currentView.footerDataTypeText.innerHTML=l})),o.addEventListener("mouseleave",(()=>{t._currentView.footerDataTypeText.style.display="none",t._currentView.footerDataTypeText.innerHTML=""})))}(l,v,y),F(l,y,M,t,a,r,u,H)),Is.defined(L)&&("null"!==v&&"undefined"!==v&&"array"!==v&&"object"!==v&&"map"!==v&&"set"!==v?L.innerHTML=`(${v})`:(L.parentNode.removeChild(L),L=null)),N?(!function(e,t,n,o,l){if(Is.definedObject(e.valueToolTips)){if(e.logJsonValueToolTipPaths&&console.log(t),!e.valueToolTips.hasOwnProperty(t)){const n=t.split("\\"),o=n.length-1;for(let t=0;t{M(i,e,t,n,o,l,r,a)})}function M(t,n,o,l,r,a,s,u=null){let c=null;DomElement.cancelBubble(t),clearTimeout(n._currentView.valueClickTimerId),n._currentView.valueClickTimerId=0,n._currentView.editMode=!0,a.classList.add("editable"),a.setAttribute("contenteditable","true"),Is.definedDate(r)&&!n.includeTimeZoneInDates?a.innerText=JSON.stringify(r).replace(/['"]+/g,""):Is.definedRegExp(r)?a.innerText=r.source:Is.definedSymbol(r)?a.innerText=Convert2.symbolToString(r):Is.definedImage(r)?a.innerText=r.src:a.innerText=r.toString(),a.focus(),DomElement.selectAllText(a),Is.defined(u)&&u.parentNode.removeChild(u),a.onblur=()=>{i(n,!1),Is.definedString(c)&&V(n,c)},a.onkeydown=t=>{if("Escape"===t.code)t.preventDefault(),a.setAttribute("contenteditable","false");else if("Enter"===t.code){t.preventDefault();const i=a.innerText;if(""===i.trim())s?o.splice(Arr.getIndexFromBrackets(l),1):delete o[l],c=e.text.itemDeletedText;else{let t=Convert2.stringToDataTypeValue(r,i);null!==t&&(s?o[Arr.getIndexFromBrackets(l)]=t:o[l]=t,c=e.text.valueUpdatedText,Trigger.customEvent(n.events.onJsonEdit,n._currentView.element))}a.setAttribute("contenteditable","false")}}}function O(t,n,o,l,r){Is.definedFunction(t.events.onValueClick)?n.onclick=()=>{let i=o;t.convertClickedValuesToString&&(i=JSON.stringify(Convert2.toJsonStringifyClone(o,e,t),t.events.onCopyJsonReplacer,t.jsonIndentSpaces)),r?t._currentView.valueClickTimerId=setTimeout((()=>{t._currentView.editMode||Trigger.customEvent(t.events.onValueClick,t._currentView.element,i,l)}),t.editingValueClickDelay):(n.ondblclick=DomElement.cancelBubble,Trigger.customEvent(t.events.onValueClick,t._currentView.element,i,l))}:n.classList.add("no-hover")}function L(e,t,n,l,r,i,a,s){const u=e._currentView.contentPanelsIndex,c=e._currentView.contentPanelsDataIndex,g=e._currentView.currentColumnBuildingIndex;e._currentView.contentPanelsOpen.hasOwnProperty(c)||(e._currentView.contentPanelsOpen[c]={});const m=(a,s=!0)=>{Is.defined(a)&&(DomElement.cancelBubble(a),o||N(e)),l.style.display="block",e._currentView.contentPanelsOpen[c][u]=!1,Is.defined(t)&&(t.className=`opened-${e.expandIconType}`),Is.defined(r)&&(r.style.display="inline-block"),Is.defined(i)&&(i.style.display="none"),Is.defined(n)&&(n.style.display="none"),s&&d(g,e)},f=(a,s,f=!0)=>{Is.defined(a)&&(DomElement.cancelBubble(a),o||N(e)),s?((o=!0)=>{l.style.display="none",e._currentView.contentPanelsOpen[c][u]=!0,Is.defined(t)&&(t.className=`closed-${e.expandIconType}`),Is.defined(r)&&(r.style.display="none"),Is.defined(i)&&(i.style.display="inline-block"),Is.defined(n)&&(n.style.display="inline-block"),o&&d(g,e)})(f):m(null,f)};let p=e.showAllAsClosed;e._currentView.contentPanelsOpen[c].hasOwnProperty(u)?p=e._currentView.contentPanelsOpen[c][u]:(e._currentView.initialized||("object"===s&&e.autoClose.objectSize>0&&a>=e.autoClose.objectSize||"array"===s&&e.autoClose.arraySize>0&&a>=e.autoClose.arraySize||"map"===s&&e.autoClose.mapSize>0&&a>=e.autoClose.mapSize||"set"===s&&e.autoClose.setSize>0&&a>=e.autoClose.setSize||"html"===s&&e.autoClose.htmlSize>0&&a>=e.autoClose.htmlSize)&&(p=!0),e._currentView.contentPanelsOpen[c][u]=p),Is.defined(t)&&(t.onclick=n=>f(n,t.className===`opened-${e.expandIconType}`),t.ondblclick=DomElement.cancelBubble),Is.defined(i)&&(i.onclick=e=>m(e),i.ondblclick=DomElement.cancelBubble),f(null,p,!1),e._currentView.contentPanelsIndex++}function P(e,t,n){let o=null;return e.showCommas&&!n&&(o=DomElement.createWithHTML(t,"span","comma",",")),o}function j(e,t,n,o,l){const r=DomElement.create(t,"div","closing-symbol");(o&&e.showExpandIcons||e.showOpenedObjectArrayBorders)&&DomElement.create(r,"div",`no-${e.expandIconType}`),DomElement.createWithHTML(r,"div","object-type-end",n),P(e,r,l)}function N(e){if(e._currentView.selectedValues.length>0){const t=e._currentView.currentContentColumns,n=e._currentView.currentContentColumns.length;e._currentView.selectedValues=[];for(let o=0;o1&&e.paging.allowComparisons}function F(t,n,o,l,r,a,s,u){n.oncontextmenu=c=>{if(DomElement.cancelBubble(c),t._currentView.contextMenu.innerHTML="",o&&t._currentView.selectedValues.length<=1){ContextMenu.addMenuItem(t,e.text.editSymbolButtonText,e.text.editButtonText).onclick=e=>function(e,t,n,o,l,r,i,a){DomElement.cancelBubble(e),M(e,t,o,l,r,n,i,a),ContextMenu.hide(t)}(e,t,n,l,a,r,s,u)}if(ContextMenu.addMenuItem(t,e.text.copyButtonSymbolText,e.text.copyButtonText).onclick=e=>function(e,t,n){DomElement.cancelBubble(e);let o=n;0!==t._currentView.selectedValues.length&&(o=t._currentView.selectedValues);g(t,o),ContextMenu.hide(t)}(e,t,r),o&&t._currentView.selectedValues.length<=1){ContextMenu.addMenuItem(t,e.text.removeSymbolButtonText,e.text.removeButtonText).onclick=n=>function(t,n,o,l,r){DomElement.cancelBubble(t),r?o.splice(Arr.getIndexFromBrackets(l),1):delete o[l];ContextMenu.hide(n),i(n,!1),V(n,e.text.itemDeletedText)}(n,t,l,a,s)}DomElement.showElementAtMousePosition(c,t._currentView.contextMenu,0)}}function H(e,t){e._currentView.columnDragging||(t.style.display="block")}function R(t,n,o=null){let l=t.length,r=0,a={};const s=(t,s)=>{r++,a[s]=t,r===l&&function(t,n,o,l,r){t._currentView.contentPanelsOpen={};const a=Object.keys(n);if(a.sort(),Is.definedNumber(o)){for(let e=0;et.data.length-1?t.data.push(n[a[e]]):t.data.splice(o,0,n[a[e]]);t._currentView.currentDataArrayPageIndex=o-o%t.paging.columnsPerPage}else if(t._currentView.currentDataArrayPageIndex=0,1===l)t.data=n[a[0]];else{t.data=[];for(let e=0;en(l,t.name),o.onload=n=>{const o=Convert2.jsonStringToObject(n.target.result,e);o.parsed&&Is.definedObject(o.object)&&(l=new ImportedFilename,l.filename=t.name,l.object=o.object)},o.readAsText(t)}function $(t,n){const o=JSON.stringify(Convert2.toJsonStringifyClone(n,e,t),t.events.onCopyJsonReplacer,t.jsonIndentSpaces);if(Is.definedString(o)){const n=DomElement.create(document.body,"a");n.style.display="none",n.setAttribute("target","_blank"),n.setAttribute("href",`data:application/json;charset=utf-8,${encodeURIComponent(o)}`),n.setAttribute("download",function(t){const n=new Date,o=DateTime.getCustomFormattedDateText(e,n,t.exportFilenameFormat);return o}(t)),n.click(),document.body.removeChild(n),y(t),V(t,e.text.exportedText),Trigger.customEvent(t.events.onExport,t._currentView.element)}}function J(e,l=!0){const r=l?document.addEventListener:document.removeEventListener,i=l?window.addEventListener:window.removeEventListener;r("keydown",(l=>function(e,l){o=U(e),l.shortcutKeysEnabled&&1===n&&t.hasOwnProperty(l._currentView.element.id)&&!l._currentView.editMode&&(U(e)&&"F11"===e.code?(e.preventDefault(),m(l)):"ArrowLeft"===e.code?(e.preventDefault(),x(l)):"ArrowRight"===e.code?(e.preventDefault(),T(l)):"ArrowUp"===e.code?(e.preventDefault(),p(l)):"ArrowDown"===e.code?(e.preventDefault(),f(l)):"Escape"===e.code&&(e.preventDefault(),y(l)||o||N(l)))}(l,e))),r("keyup",(e=>function(e){o=U(e)}(e))),r("contextmenu",(()=>z(e))),i("click",(()=>z(e))),i("focus",(()=>o=!1))}function z(e){o||N(e)}function U(e){return e.ctrlKey||e.metaKey}function q(e){if(e._currentView.element.innerHTML="",e._currentView.element.classList.remove("json-tree-js"),e._currentView.element.classList.remove("full-screen"),Is.definedString(e.class)){const t=e.class.split(" "),n=t.length;for(let o=0;ol())),Is.defined(window.$jsontree)||(window.$jsontree=Z)})(); \ No newline at end of file +"use strict";var ImportedFilename=class{constructor(){this.filename=null,this.object=null}},DataType=(e=>(e.null="null",e.function="function",e.boolean="boolean",e.float="float",e.number="number",e.bigint="bigint",e.string="string",e.date="date",e.symbol="symbol",e.object="object",e.array="array",e.unknown="unknown",e[void 0]="undefined",e.color="color",e.guid="guid",e.regexp="regexp",e.map="map",e.set="set",e.url="url",e.image="image",e.email="email",e.html="html",e.lambda="lambda",e))(DataType||{}),Is,Convert2,Str,Str2,Default,DomElement,DateTime,Constants,Constants2,Binding,Config,Trigger,ToolTip,Arr,Arr2,Size,Obj,Obj2,ContextMenu;(e=>{let t;var n;function o(e){return null!=e&&""!==e.toString()}function l(e){return o(e)&&"object"==typeof e}function r(e){return null!=e&&e instanceof Array}(n=t=e.String||(e.String={})).hexColor=function(e){let t=e.length>=2&&e.length<=7;return t=!(!t||"#"!==e[0])&&isNaN(+e.substring(1,e.length-1)),t},n.rgbColor=function(e){return(e.startsWith("rgb(")||e.startsWith("rgba("))&&e.endsWith(")")},n.boolean=function(e){return"true"===e.toString().toLowerCase().trim()||"false"===e.toString().toLowerCase().trim()},n.date=function(e){return e.match(/\d{4}-(?:0[1-9]|1[0-2])-(?:0[1-9]|[1-2]\d|3[0-1])T(?:[0-1]\d|2[0-3]):[0-5]\d:[0-5]\d(?:\.\d+|)(?:Z|(?:\+|\-)(?:\d{2}):?(?:\d{2}))/)},n.guid=function(e){return/^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-5][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}$/.test(e)},n.bigInt=function(e){let t=e.endsWith("n");return t&&(t=!isNaN(+e.substring(0,e.length-1))),t},n.symbol=function(e){return e.startsWith("Symbol(")&&e.endsWith(")")},e.defined=o,e.definedObject=l,e.definedBoolean=function(e){return o(e)&&"boolean"==typeof e},e.definedString=function(e){return o(e)&&"string"==typeof e},e.definedStringAny=function(e){return null!=e&&"string"==typeof e},e.definedFunction=function(e){return o(e)&&"function"==typeof e},e.definedNumber=function(e){return o(e)&&"number"==typeof e},e.definedBigInt=function(e){return o(e)&&"bigint"==typeof e},e.definedArray=r,e.definedDate=function(e){return l(e)&&e instanceof Date},e.definedFloat=function(e){return o(e)&&"number"==typeof e&&e%1!=0},e.definedSymbol=function(e){return o(e)&&"symbol"==typeof e},e.definedRegExp=function(e){return o(e)&&e instanceof RegExp},e.definedMap=function(e){return o(e)&&(e instanceof Map||e instanceof WeakMap)},e.definedSet=function(e){return o(e)&&(e instanceof Set||e instanceof WeakSet)},e.definedImage=function(e){return o(e)&&e instanceof Image},e.definedHtml=function(e){return o(e)&&e instanceof HTMLElement},e.definedUrl=function(e){let t;try{t=new URL(e)}catch{t=null}return null!==t&&("http:"===t.protocol||"https:"===t.protocol)},e.definedEmail=function(e){return/^(([^<>()[\]\\.,;:\s@"]+(\.[^<>()[\]\\.,;:\s@"]+)*)|(".+"))@((\[[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\])|(([a-zA-Z\-0-9]+\.)+[a-zA-Z]{2,}))$/.test(e)},e.invalidOptionArray=function(e,t=1){return!r(e)||e.length{function toJsonStringifyClone(e,t,n){let o=null;if(Is.defined(e))if(Is.definedImportedFilename(e))o=e.object;else if(Is.definedDate(e))o=n.includeTimeZoneInDates?e.toString():JSON.stringify(e).replace(/['"]+/g,"");else if(Is.definedSymbol(e))o=symbolToString(e);else if(Is.definedBigInt(e))o=e.toString();else if(Is.definedFunction(e))o=Default.getFunctionName(e,t).name;else if(Is.definedRegExp(e))o=e.source;else if(Is.definedImage(e))o=e.src;else if(Is.definedHtml(e))o=htmlToObject(e,n.showCssStylesForHtmlObjects);else if(Is.definedArray(e)){o=[];const l=e.length;for(let r=0;r0;)a.children[0].nodeType!==Node.TEXT_NODE&&a.removeChild(a.children[0]),s--;n[r]=[],n[i]=a.innerText;for(let t=0;t0&&o.length>t&&(o=`${o.substring(0,t)} ${n} `),o},(e=>{function t(e,t){return Is.definedArray(e)?e:t}e.getAnyString=function(e,t){return"string"==typeof e?e:t},e.getString=function(e,t){return Is.definedString(e)?e:t},e.getBoolean=function(e,t){return Is.definedBoolean(e)?e:t},e.getNumber=function(e,t){return Is.definedNumber(e)?e:t},e.getFunction=function(e,t){return Is.definedFunction(e)?e:t},e.getArray=t,e.getObject=function(e,t){return Is.definedObject(e)?e:t},e.getNumberMinimum=function(e,t,n){return Is.definedNumber(e)?e>=n?e:n:t},e.getNumberMaximum=function(e,t,n){return Is.definedNumber(e)?e>n?n:e:t},e.getStringOrArray=function(e,n){let o=n;if(Is.definedString(e)){const t=e.toString().split(" ");0===t.length?e=n:o=t}else o=t(e,n);return o},e.getFunctionName=function(e,t,n){const o=e.toString(),l=o.substring(0,o.indexOf(")")+1);let r=l.trim(),i=!1;return"("===l[0]&&(r=`${t.text.functionText}${r}`,i=!0),r=i?Str.getMaximumLengthDisplay(r,n.maximum.lambdaLength,t.text.ellipsisText):Str.getMaximumLengthDisplay(r,n.maximum.functionLength,t.text.ellipsisText),{name:r,isLambda:i}},e.getObjectFromUrl=function(e,t,n){const o=new XMLHttpRequest;o.open("GET",e,!0),o.send(),o.onreadystatechange=()=>{if(4===o.readyState&&200===o.status){const e=o.responseText,l=Convert2.jsonStringToObject(e,t);l.parsed&&n(l.object)}else n(null)}}})(Default||(Default={})),(e=>{function t(e,t,n="",o=null){const l=t.toLowerCase(),r="text"===l?document.createTextNode(""):document.createElement(l);return Is.defined(n)&&(r.className=n),Is.defined(e)&&(Is.defined(o)?e.insertBefore(r,o):e.appendChild(r)),r}function n(e,n,o,l,r=null){const i=t(e,n,o,r);return i.innerHTML=l,i}function o(){const e=document.documentElement;return{left:e.scrollLeft-(e.clientLeft||0),top:e.scrollTop-(e.clientTop||0)}}e.find=function(e,t){const n=e.length;for(let o=0;owindow.innerWidth?l-=t.offsetWidth+n:(l++,l+=n),r+t.offsetHeight>window.innerHeight?r-=t.offsetHeight+n:(r++,r+=n),l{function t(e){return e.getDay()-1<0?6:e.getDay()-1}function n(e,t){let n=e.text.thText;return 31===t||21===t||1===t?n=e.text.stText:22===t||2===t?n=e.text.ndText:23!==t&&3!==t||(n=e.text.rdText),Is.definedString(n)&&(n=`${n}`),n}e.getWeekdayNumber=t,e.getDayOrdinal=n,e.getCustomFormattedDateText=function(e,o,l){const r=isNaN(+o)?new Date:o;let i=l;const a=t(r);return i=i.replace("{hh}",Str.padNumber(r.getHours(),2)),i=i.replace("{h}",r.getHours().toString()),i=i.replace("{MM}",Str.padNumber(r.getMinutes(),2)),i=i.replace("{M}",r.getMinutes().toString()),i=i.replace("{ss}",Str.padNumber(r.getSeconds(),2)),i=i.replace("{s}",r.getSeconds().toString()),i=i.replace("{fff}",Str.padNumber(r.getMilliseconds(),3)),i=i.replace("{ff}",Str.padNumber(r.getMilliseconds(),2)),i=i.replace("{f}",r.getMilliseconds().toString()),i=i.replace("{dddd}",e.text.dayNames[a]),i=i.replace("{ddd}",e.text.dayNamesAbbreviated[a]),i=i.replace("{dd}",Str.padNumber(r.getDate())),i=i.replace("{d}",r.getDate().toString()),i=i.replace("{o}",n(e,r.getDate())),i=i.replace("{mmmm}",e.text.monthNames[r.getMonth()]),i=i.replace("{mmm}",e.text.monthNamesAbbreviated[r.getMonth()]),i=i.replace("{mm}",Str.padNumber(r.getMonth()+1)),i=i.replace("{m}",(r.getMonth()+1).toString()),i=i.replace("{yyyy}",r.getFullYear().toString()),i=i.replace("{yyy}",r.getFullYear().toString().substring(1)),i=i.replace("{yy}",r.getFullYear().toString().substring(2)),i=i.replace("{y}",Number.parseInt(r.getFullYear().toString().substring(2)).toString()),i}})(DateTime||(DateTime={})),Constants2=Constants||(Constants={}),Constants2.JSONTREE_JS_ATTRIBUTE_NAME="data-jsontree-js",Constants2.JSONTREE_JS_ATTRIBUTE_ARRAY_INDEX_NAME="data-jsontree-js-array-index",Constants2.JSONTREE_JS_ATTRIBUTE_PATH_NAME="data-jsontree-js-path",(e=>{let t;var n;(n=t=e.Options||(e.Options={})).getForNewInstance=function(t,n){const o=e.Options.get(t),l=o.allowEditing;o._currentView={},o._currentView.element=n,o._currentView.currentDataArrayPageIndex=(o.paging.startPage-1)*o.paging.columnsPerPage,o._currentView.titleBarButtons=null,o._currentView.valueClickTimerId=0,o._currentView.editMode=!1,o._currentView.idSet=!1,o._currentView.contentPanelsOpen={},o._currentView.contentPanelsIndex=0,o._currentView.contentPanelsDataIndex=0,o._currentView.backPageButton=null,o._currentView.nextPageButton=null,o._currentView.disabledBackground=null,o._currentView.sideMenu=null,o._currentView.sideMenuChanged=!1,o._currentView.toggleFullScreenButton=null,o._currentView.fullScreenOn=!1,o._currentView.dragAndDropBackground=null,o._currentView.initialized=!1,o._currentView.currentContentColumns=[],o._currentView.footer=null,o._currentView.footerStatusText=null,o._currentView.footerDataTypeText=null,o._currentView.footerLengthText=null,o._currentView.footerSizeText=null,o._currentView.footerPageText=null,o._currentView.footerStatusTextTimerId=0,o._currentView.columnDragging=!1,o._currentView.columnDraggingDataIndex=0,o._currentView.dataTypeCounts={},o._currentView.contextMenu=null,o._currentView.currentColumnBuildingIndex=0,o._currentView.selectedValues=[],o.paging.enabled&&Is.definedArray(o.data)&&o.data.length>1&&o._currentView.currentDataArrayPageIndex>o.data.length-1&&(o._currentView.currentDataArrayPageIndex=0);for(const e in l)if(!l[e]){o.allowEditing.bulk=!1;break}return o},n.get=function(e){const t=Default.getObject(e,{});return t.id=Default.getString(t.id,""),t.class=Default.getString(t.class,""),t.showObjectSizes=Default.getBoolean(t.showObjectSizes,!0),t.useZeroIndexingForArrays=Default.getBoolean(t.useZeroIndexingForArrays,!0),t.dateTimeFormat=Default.getString(t.dateTimeFormat,"{dd}{o} {mmmm} {yyyy} {hh}:{MM}:{ss}"),t.showExpandIcons=Default.getBoolean(t.showExpandIcons,!0),t.showStringQuotes=Default.getBoolean(t.showStringQuotes,!0),t.showAllAsClosed=Default.getBoolean(t.showAllAsClosed,!1),t.sortPropertyNames=Default.getBoolean(t.sortPropertyNames,!0),t.sortPropertyNamesInAlphabeticalOrder=Default.getBoolean(t.sortPropertyNamesInAlphabeticalOrder,!0),t.showCommas=Default.getBoolean(t.showCommas,!0),t.reverseArrayValues=Default.getBoolean(t.reverseArrayValues,!1),t.addArrayIndexPadding=Default.getBoolean(t.addArrayIndexPadding,!1),t.showValueColors=Default.getBoolean(t.showValueColors,!0),t.fileDroppingEnabled=Default.getBoolean(t.fileDroppingEnabled,!0),t.jsonIndentSpaces=Default.getNumber(t.jsonIndentSpaces,8),t.showArrayIndexBrackets=Default.getBoolean(t.showArrayIndexBrackets,!0),t.showOpeningClosingCurlyBraces=Default.getBoolean(t.showOpeningClosingCurlyBraces,!1),t.showOpeningClosingSquaredBrackets=Default.getBoolean(t.showOpeningClosingSquaredBrackets,!1),t.includeTimeZoneInDates=Default.getBoolean(t.includeTimeZoneInDates,!0),t.shortcutKeysEnabled=Default.getBoolean(t.shortcutKeysEnabled,!0),t.openInFullScreenMode=Default.getBoolean(t.openInFullScreenMode,!1),t.valueToolTips=Default.getObject(t.valueToolTips,null),t.editingValueClickDelay=Default.getNumber(t.editingValueClickDelay,500),t.showDataTypes=Default.getBoolean(t.showDataTypes,!1),t.logJsonValueToolTipPaths=Default.getBoolean(t.logJsonValueToolTipPaths,!1),t.exportFilenameFormat=Default.getString(t.exportFilenameFormat,"JsonTree_{dd}-{mm}-{yyyy}_{hh}-{MM}-{ss}.json"),t.showPropertyNameQuotes=Default.getBoolean(t.showPropertyNameQuotes,!0),t.showOpenedObjectArrayBorders=Default.getBoolean(t.showOpenedObjectArrayBorders,!0),t.showPropertyNameAndIndexColors=Default.getBoolean(t.showPropertyNameAndIndexColors,!0),t.showUrlOpenButtons=Default.getBoolean(t.showUrlOpenButtons,!0),t.showEmailOpenButtons=Default.getBoolean(t.showEmailOpenButtons,!0),t.minimumArrayIndexPadding=Default.getNumber(t.minimumArrayIndexPadding,0),t.arrayIndexPaddingCharacter=Default.getString(t.arrayIndexPaddingCharacter,"0"),t.showCssStylesForHtmlObjects=Default.getBoolean(t.showCssStylesForHtmlObjects,!1),t.jsonPathAny=Default.getString(t.jsonPathAny,".."),t.jsonPathSeparator=Default.getString(t.jsonPathSeparator,"\\"),t.showChildIndexes=Default.getBoolean(t.showChildIndexes,!0),t.showClosedArraySquaredBrackets=Default.getBoolean(t.showClosedArraySquaredBrackets,!0),t.showClosedObjectCurlyBraces=Default.getBoolean(t.showClosedObjectCurlyBraces,!0),t.convertClickedValuesToString=Default.getBoolean(t.convertClickedValuesToString,!1),t.rootName=Default.getString(t.rootName,"root"),t.emptyStringValue=Default.getString(t.emptyStringValue,""),t.expandIconType=Default.getString(t.expandIconType,"arrow"),t.openUrlsInSameWindow=Default.getBoolean(t.openUrlsInSameWindow,!1),t.maximum=function(e){return e.maximum=Default.getObject(e.maximum,{}),e.maximum.decimalPlaces=Default.getNumber(e.maximum.decimalPlaces,2),e.maximum.stringLength=Default.getNumber(e.maximum.stringLength,0),e.maximum.urlLength=Default.getNumber(e.maximum.urlLength,0),e.maximum.emailLength=Default.getNumber(e.maximum.emailLength,0),e.maximum.numberLength=Default.getNumber(e.maximum.numberLength,0),e.maximum.bigIntLength=Default.getNumber(e.maximum.bigIntLength,0),e.maximum.inspectionLevels=Default.getNumber(e.maximum.inspectionLevels,10),e.maximum.propertyNameLength=Default.getNumber(e.maximum.propertyNameLength,0),e.maximum.functionLength=Default.getNumber(e.maximum.functionLength,0),e.maximum.lambdaLength=Default.getNumber(e.maximum.lambdaLength,0),e.maximum}(t),t.paging=function(e){return e.paging=Default.getObject(e.paging,{}),e.paging.enabled=Default.getBoolean(e.paging.enabled,!0),e.paging.columnsPerPage=Default.getNumberMaximum(e.paging.columnsPerPage,1,6),e.paging.startPage=Default.getNumberMinimum(e.paging.startPage,1,1),e.paging.synchronizeScrolling=Default.getBoolean(e.paging.synchronizeScrolling,!1),e.paging.allowColumnReordering=Default.getBoolean(e.paging.allowColumnReordering,!0),e.paging.allowComparisons=Default.getBoolean(e.paging.allowComparisons,!1),e.paging}(t),t.title=function(e){return e.title=Default.getObject(e.title,{}),e.title.text=Default.getAnyString(e.title.text,"JsonTree.js"),e.title.showCloseOpenAllButtons=Default.getBoolean(e.title.showCloseOpenAllButtons,!0),e.title.showCopyButton=Default.getBoolean(e.title.showCopyButton,!0),e.title.enableFullScreenToggling=Default.getBoolean(e.title.enableFullScreenToggling,!0),e.title.showFullScreenButton=Default.getBoolean(e.title.showFullScreenButton,!0),e.title}(t),t.footer=function(e){return e.footer=Default.getObject(e.footer,{}),e.footer.enabled=Default.getBoolean(e.footer.enabled,!0),e.footer.showDataTypes=Default.getBoolean(e.footer.showDataTypes,!0),e.footer.showLengths=Default.getBoolean(e.footer.showLengths,!0),e.footer.showSizes=Default.getBoolean(e.footer.showSizes,!0),e.footer.showPageOf=Default.getBoolean(e.footer.showPageOf,!0),e.footer.statusResetDelay=Default.getNumber(e.footer.statusResetDelay,5e3),e.footer}(t),t.controlPanel=function(e){return e.controlPanel=Default.getObject(e.controlPanel,{}),e.controlPanel.enabled=Default.getBoolean(e.controlPanel.enabled,!0),e.controlPanel.showCopyButton=Default.getBoolean(e.controlPanel.showCopyButton,!0),e.controlPanel.showMovingButtons=Default.getBoolean(e.controlPanel.showMovingButtons,!0),e.controlPanel.showRemoveButton=Default.getBoolean(e.controlPanel.showRemoveButton,!1),e.controlPanel.showEditButton=Default.getBoolean(e.controlPanel.showEditButton,!0),e.controlPanel.showCloseOpenAllButtons=Default.getBoolean(e.controlPanel.showCloseOpenAllButtons,!0),e.controlPanel.showSwitchToPagesButton=Default.getBoolean(e.controlPanel.showSwitchToPagesButton,!0),e.controlPanel.showImportButton=Default.getBoolean(e.controlPanel.showImportButton,!0),e.controlPanel.showExportButton=Default.getBoolean(e.controlPanel.showExportButton,!0),e.controlPanel}(t),t.lineNumbers=function(e){return e.lineNumbers=Default.getObject(e.lineNumbers,{}),e.lineNumbers.enabled=Default.getBoolean(e.lineNumbers.enabled,!0),e.lineNumbers.padNumbers=Default.getBoolean(e.lineNumbers.padNumbers,!1),e.lineNumbers.addDots=Default.getBoolean(e.lineNumbers.addDots,!0),e.lineNumbers}(t),t.ignore=function(e){return e.ignore=Default.getObject(e.ignore,{}),e.ignore.nullValues=Default.getBoolean(e.ignore.nullValues,!1),e.ignore.functionValues=Default.getBoolean(e.ignore.functionValues,!1),e.ignore.unknownValues=Default.getBoolean(e.ignore.unknownValues,!1),e.ignore.booleanValues=Default.getBoolean(e.ignore.booleanValues,!1),e.ignore.floatValues=Default.getBoolean(e.ignore.floatValues,!1),e.ignore.numberValues=Default.getBoolean(e.ignore.numberValues,!1),e.ignore.stringValues=Default.getBoolean(e.ignore.stringValues,!1),e.ignore.dateValues=Default.getBoolean(e.ignore.dateValues,!1),e.ignore.objectValues=Default.getBoolean(e.ignore.objectValues,!1),e.ignore.arrayValues=Default.getBoolean(e.ignore.arrayValues,!1),e.ignore.bigintValues=Default.getBoolean(e.ignore.bigintValues,!1),e.ignore.symbolValues=Default.getBoolean(e.ignore.symbolValues,!1),e.ignore.emptyObjects=Default.getBoolean(e.ignore.emptyObjects,!1),e.ignore.undefinedValues=Default.getBoolean(e.ignore.undefinedValues,!1),e.ignore.guidValues=Default.getBoolean(e.ignore.guidValues,!1),e.ignore.colorValues=Default.getBoolean(e.ignore.colorValues,!1),e.ignore.regexpValues=Default.getBoolean(e.ignore.regexpValues,!1),e.ignore.mapValues=Default.getBoolean(e.ignore.mapValues,!1),e.ignore.setValues=Default.getBoolean(e.ignore.setValues,!1),e.ignore.urlValues=Default.getBoolean(e.ignore.urlValues,!1),e.ignore.imageValues=Default.getBoolean(e.ignore.imageValues,!1),e.ignore.emailValues=Default.getBoolean(e.ignore.emailValues,!1),e.ignore.htmlValues=Default.getBoolean(e.ignore.htmlValues,!1),e.ignore.lambdaValues=Default.getBoolean(e.ignore.lambdaValues,!1),e.ignore}(t),t.tooltip=function(e){return e.tooltip=Default.getObject(e.tooltip,{}),e.tooltip.delay=Default.getNumber(e.tooltip.delay,750),e.tooltip.offset=Default.getNumber(e.tooltip.offset,0),e.tooltip}(t),t.parse=function(e){return e.parse=Default.getObject(e.parse,{}),e.parse.stringsToDates=Default.getBoolean(e.parse.stringsToDates,!1),e.parse.stringsToBooleans=Default.getBoolean(e.parse.stringsToBooleans,!1),e.parse.stringsToNumbers=Default.getBoolean(e.parse.stringsToNumbers,!1),e.parse.stringsToSymbols=Default.getBoolean(e.parse.stringsToSymbols,!1),e.parse.stringsToFloats=Default.getBoolean(e.parse.stringsToFloats,!1),e.parse.stringsToBigInts=Default.getBoolean(e.parse.stringsToBigInts,!1),e.parse}(t),t.allowEditing=function(e){let t=Default.getBoolean(e.allowEditing,!0);e.allowEditing=Default.getObject(e.allowEditing,{}),e.allowEditing.booleanValues=Default.getBoolean(e.allowEditing.booleanValues,t),e.allowEditing.floatValues=Default.getBoolean(e.allowEditing.floatValues,t),e.allowEditing.numberValues=Default.getBoolean(e.allowEditing.numberValues,t),e.allowEditing.stringValues=Default.getBoolean(e.allowEditing.stringValues,t),e.allowEditing.dateValues=Default.getBoolean(e.allowEditing.dateValues,t),e.allowEditing.bigIntValues=Default.getBoolean(e.allowEditing.bigIntValues,t),e.allowEditing.guidValues=Default.getBoolean(e.allowEditing.guidValues,t),e.allowEditing.colorValues=Default.getBoolean(e.allowEditing.colorValues,t),e.allowEditing.urlValues=Default.getBoolean(e.allowEditing.urlValues,t),e.allowEditing.emailValues=Default.getBoolean(e.allowEditing.emailValues,t),e.allowEditing.regExpValues=Default.getBoolean(e.allowEditing.regExpValues,t),e.allowEditing.symbolValues=Default.getBoolean(e.allowEditing.symbolValues,t),e.allowEditing.imageValues=Default.getBoolean(e.allowEditing.imageValues,t),e.allowEditing.propertyNames=Default.getBoolean(e.allowEditing.propertyNames,t),e.allowEditing.bulk=Default.getBoolean(e.allowEditing.bulk,t);const n=e.allowEditing;for(const t in n)if(n.hasOwnProperty(t)&&!n[t]){e.allowEditing.bulk=!1;break}return e.allowEditing}(t),t.sideMenu=function(e){return e.sideMenu=Default.getObject(e.sideMenu,{}),e.sideMenu.enabled=Default.getBoolean(e.sideMenu.enabled,!0),e.sideMenu.showImportButton=Default.getBoolean(e.sideMenu.showImportButton,!0),e.sideMenu.showExportButton=Default.getBoolean(e.sideMenu.showExportButton,!0),e.sideMenu.titleText=Default.getAnyString(e.sideMenu.titleText,e.title.text),e.sideMenu.showAvailableDataTypeCounts=Default.getBoolean(e.sideMenu.showAvailableDataTypeCounts,!0),e.sideMenu.showOnlyDataTypesAvailable=Default.getBoolean(e.sideMenu.showOnlyDataTypesAvailable,!1),e.sideMenu.showClearJsonButton=Default.getBoolean(e.sideMenu.showClearJsonButton,!0),e.sideMenu.updateDisplayDelay=Default.getNumber(e.sideMenu.updateDisplayDelay,500),e.sideMenu}(t),t.autoClose=function(e){return e.autoClose=Default.getObject(e.autoClose,{}),e.autoClose.objectSize=Default.getNumber(e.autoClose.objectSize,0),e.autoClose.arraySize=Default.getNumber(e.autoClose.arraySize,0),e.autoClose.mapSize=Default.getNumber(e.autoClose.mapSize,0),e.autoClose.setSize=Default.getNumber(e.autoClose.setSize,0),e.autoClose.htmlSize=Default.getNumber(e.autoClose.htmlSize,0),e.autoClose}(t),t.events=function(e){return e.events=Default.getObject(e.events,{}),e.events.onBeforeRender=Default.getFunction(e.events.onBeforeRender,null),e.events.onRenderComplete=Default.getFunction(e.events.onRenderComplete,null),e.events.onValueClick=Default.getFunction(e.events.onValueClick,null),e.events.onRefresh=Default.getFunction(e.events.onRefresh,null),e.events.onCopyAll=Default.getFunction(e.events.onCopyAll,null),e.events.onOpenAll=Default.getFunction(e.events.onOpenAll,null),e.events.onCloseAll=Default.getFunction(e.events.onCloseAll,null),e.events.onDestroy=Default.getFunction(e.events.onDestroy,null),e.events.onBooleanRender=Default.getFunction(e.events.onBooleanRender,null),e.events.onFloatRender=Default.getFunction(e.events.onFloatRender,null),e.events.onNumberRender=Default.getFunction(e.events.onNumberRender,null),e.events.onBigIntRender=Default.getFunction(e.events.onBigIntRender,null),e.events.onStringRender=Default.getFunction(e.events.onStringRender,null),e.events.onDateRender=Default.getFunction(e.events.onDateRender,null),e.events.onFunctionRender=Default.getFunction(e.events.onFunctionRender,null),e.events.onNullRender=Default.getFunction(e.events.onNullRender,null),e.events.onUnknownRender=Default.getFunction(e.events.onUnknownRender,null),e.events.onSymbolRender=Default.getFunction(e.events.onSymbolRender,null),e.events.onCopyJsonReplacer=Default.getFunction(e.events.onCopyJsonReplacer,null),e.events.onUndefinedRender=Default.getFunction(e.events.onUndefinedRender,null),e.events.onGuidRender=Default.getFunction(e.events.onGuidRender,null),e.events.onColorRender=Default.getFunction(e.events.onColorRender,null),e.events.onJsonEdit=Default.getFunction(e.events.onJsonEdit,null),e.events.onRegExpRender=Default.getFunction(e.events.onRegExpRender,null),e.events.onExport=Default.getFunction(e.events.onExport,null),e.events.onUrlRender=Default.getFunction(e.events.onUrlRender,null),e.events.onImageRender=Default.getFunction(e.events.onImageRender,null),e.events.onEmailRender=Default.getFunction(e.events.onEmailRender,null),e.events.onLambdaRender=Default.getFunction(e.events.onLambdaRender,null),e.events.onCopy=Default.getFunction(e.events.onCopy,null),e.events.onFullScreenChange=Default.getFunction(e.events.onFullScreenChange,null),e.events.onSelectionChange=Default.getFunction(e.events.onSelectionChange,null),e.events.onCustomDataTypeRender=Default.getFunction(e.events.onCustomDataTypeRender,null),e.events}(t),t}})(Binding||(Binding={})),(e=>{let t;(t=e.Options||(e.Options={})).get=function(e=null){const t=Default.getObject(e,{});return t.safeMode=Default.getBoolean(t.safeMode,!0),t.domElementTypes=Default.getStringOrArray(t.domElementTypes,["*"]),t.text=function(e){return e.text=Default.getObject(e.text,{}),e.text.objectText=Default.getAnyString(e.text.objectText,"object"),e.text.arrayText=Default.getAnyString(e.text.arrayText,"array"),e.text.mapText=Default.getAnyString(e.text.mapText,"map"),e.text.setText=Default.getAnyString(e.text.setText,"set"),e.text.htmlText=Default.getAnyString(e.text.htmlText,"html"),e.text.closeAllButtonText=Default.getAnyString(e.text.closeAllButtonText,"Close All"),e.text.openAllButtonText=Default.getAnyString(e.text.openAllButtonText,"Open All"),e.text.copyAllButtonText=Default.getAnyString(e.text.copyAllButtonText,"Copy All"),e.text.objectErrorText=Default.getAnyString(e.text.objectErrorText,"Errors in object: {{error_1}}, {{error_2}}"),e.text.attributeNotValidErrorText=Default.getAnyString(e.text.attributeNotValidErrorText,"The attribute '{{attribute_name}}' is not a valid object."),e.text.attributeNotSetErrorText=Default.getAnyString(e.text.attributeNotSetErrorText,"The attribute '{{attribute_name}}' has not been set correctly."),e.text.stText=Default.getAnyString(e.text.stText,"st"),e.text.ndText=Default.getAnyString(e.text.ndText,"nd"),e.text.rdText=Default.getAnyString(e.text.rdText,"rd"),e.text.thText=Default.getAnyString(e.text.thText,"th"),e.text.ellipsisText=Default.getAnyString(e.text.ellipsisText,"..."),e.text.closeAllButtonSymbolText=Default.getAnyString(e.text.closeAllButtonSymbolText,"⇈"),e.text.openAllButtonSymbolText=Default.getAnyString(e.text.openAllButtonSymbolText,"⇊"),e.text.copyButtonSymbolText=Default.getAnyString(e.text.copyButtonSymbolText,"❐"),e.text.backButtonText=Default.getAnyString(e.text.backButtonText,"Back"),e.text.nextButtonText=Default.getAnyString(e.text.nextButtonText,"Next"),e.text.backButtonSymbolText=Default.getAnyString(e.text.backButtonSymbolText,"←"),e.text.nextButtonSymbolText=Default.getAnyString(e.text.nextButtonSymbolText,"→"),e.text.noJsonToViewText=Default.getAnyString(e.text.noJsonToViewText,"There is currently no JSON to view."),e.text.functionText=Default.getAnyString(e.text.functionText,"function"),e.text.sideMenuButtonSymbolText=Default.getAnyString(e.text.sideMenuButtonSymbolText,"☰"),e.text.sideMenuButtonText=Default.getAnyString(e.text.sideMenuButtonText,"Show Menu"),e.text.closeButtonSymbolText=Default.getAnyString(e.text.closeButtonSymbolText,"✕"),e.text.closeButtonText=Default.getAnyString(e.text.closeButtonText,"Close"),e.text.showDataTypesText=Default.getAnyString(e.text.showDataTypesText,"Show Data Types"),e.text.selectAllText=Default.getAnyString(e.text.selectAllText,"Select All"),e.text.selectNoneText=Default.getAnyString(e.text.selectNoneText,"Select None"),e.text.importButtonSymbolText=Default.getAnyString(e.text.importButtonSymbolText,"↑"),e.text.importButtonText=Default.getAnyString(e.text.importButtonText,"Import"),e.text.fullScreenOnButtonSymbolText=Default.getAnyString(e.text.fullScreenOnButtonSymbolText,"↗"),e.text.fullScreenOffButtonSymbolText=Default.getAnyString(e.text.fullScreenOffButtonSymbolText,"↙"),e.text.fullScreenButtonText=Default.getAnyString(e.text.fullScreenButtonText,"Toggle Full-Screen"),e.text.copyButtonText=Default.getAnyString(e.text.copyButtonText,"Copy"),e.text.dragAndDropSymbolText=Default.getAnyString(e.text.dragAndDropSymbolText,"⇪"),e.text.dragAndDropTitleText=Default.getAnyString(e.text.dragAndDropTitleText,"Drag and drop your JSON files to upload"),e.text.dragAndDropDescriptionText=Default.getAnyString(e.text.dragAndDropDescriptionText,"Multiple files will be joined as an array"),e.text.exportButtonSymbolText=Default.getAnyString(e.text.exportButtonSymbolText,"↓"),e.text.exportButtonText=Default.getAnyString(e.text.exportButtonText,"Export"),e.text.propertyColonCharacter=Default.getAnyString(e.text.propertyColonCharacter,":"),e.text.noPropertiesText=Default.getAnyString(e.text.noPropertiesText,"There are no properties to view."),e.text.openText=Default.getAnyString(e.text.openText,"open"),e.text.openSymbolText=Default.getAnyString(e.text.openSymbolText,"⤤"),e.text.waitingText=Default.getAnyString(e.text.waitingText,"Waiting..."),e.text.pageOfText=Default.getAnyString(e.text.pageOfText,"Page {0} of {1}"),e.text.sizeText=Default.getAnyString(e.text.sizeText,"Size: {0}"),e.text.copiedText=Default.getAnyString(e.text.copiedText,"JSON copied to clipboard."),e.text.exportedText=Default.getAnyString(e.text.exportedText,"JSON exported."),e.text.importedText=Default.getAnyString(e.text.importedText,"{0} JSON files imported."),e.text.ignoreDataTypesUpdated=Default.getAnyString(e.text.ignoreDataTypesUpdated,"Ignore data types updated."),e.text.lengthText=Default.getAnyString(e.text.lengthText,"Length: {0}"),e.text.valueUpdatedText=Default.getAnyString(e.text.valueUpdatedText,"Value updated."),e.text.jsonUpdatedText=Default.getAnyString(e.text.jsonUpdatedText,"JSON updated."),e.text.nameUpdatedText=Default.getAnyString(e.text.nameUpdatedText,"Property name updated."),e.text.indexUpdatedText=Default.getAnyString(e.text.indexUpdatedText,"Array index updated."),e.text.itemDeletedText=Default.getAnyString(e.text.itemDeletedText,"Item deleted."),e.text.arrayJsonItemDeleted=Default.getAnyString(e.text.arrayJsonItemDeleted,"Array JSON item deleted."),e.text.dataTypeText=Default.getAnyString(e.text.dataTypeText,"Data Type: {0}"),e.text.editSymbolButtonText=Default.getAnyString(e.text.editSymbolButtonText,"✎"),e.text.editButtonText=Default.getAnyString(e.text.editButtonText,"Edit"),e.text.moveRightSymbolButtonText=Default.getAnyString(e.text.moveRightSymbolButtonText,"→"),e.text.moveRightButtonText=Default.getAnyString(e.text.moveRightButtonText,"Move Right"),e.text.moveLeftSymbolButtonText=Default.getAnyString(e.text.moveLeftSymbolButtonText,"←"),e.text.moveLeftButtonText=Default.getAnyString(e.text.moveLeftButtonText,"Move Left"),e.text.removeSymbolButtonText=Default.getAnyString(e.text.removeSymbolButtonText,"✕"),e.text.removeButtonText=Default.getAnyString(e.text.removeButtonText,"Remove"),e.text.switchToPagesSymbolText=Default.getAnyString(e.text.switchToPagesSymbolText,"☷"),e.text.switchToPagesText=Default.getAnyString(e.text.switchToPagesText,"Switch To Pages"),e.text.clearJsonSymbolText=Default.getAnyString(e.text.clearJsonSymbolText,"⏎"),e.text.clearJsonText=Default.getAnyString(e.text.clearJsonText,"Clear JSON"),e.text.maximumInspectionLevelsReached=Default.getAnyString(e.text.maximumInspectionLevelsReached,"Maximum inspection levels have been reached."),Is.invalidOptionArray(e.text.dayNames,7)&&(e.text.dayNames=["Monday","Tuesday","Wednesday","Thursday","Friday","Saturday","Sunday"]),Is.invalidOptionArray(e.text.dayNamesAbbreviated,7)&&(e.text.dayNamesAbbreviated=["Mon","Tue","Wed","Thu","Fri","Sat","Sun"]),Is.invalidOptionArray(e.text.monthNames,12)&&(e.text.monthNames=["January","February","March","April","May","June","July","August","September","October","November","December"]),Is.invalidOptionArray(e.text.monthNamesAbbreviated,12)&&(e.text.monthNamesAbbreviated=["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"]),e.text}(t),t}})(Config||(Config={})),(Trigger||(Trigger={})).customEvent=function(e,...t){let n=null;return Is.definedFunction(e)&&(n=e.apply(null,[].slice.call(t,0))),n},(e=>{function t(e,t=!0){const n=t?window.addEventListener:window.removeEventListener,l=t?document.addEventListener:document.removeEventListener;n("mousemove",(()=>o(e))),l("scroll",(()=>o(e)))}function n(e,t,n,l){DomElement.cancelBubble(e),o(t),t._currentView.tooltipTimerId=setTimeout((()=>{t._currentView.tooltip.className=l,t._currentView.tooltip.innerHTML=n,t._currentView.tooltip.style.display="block",DomElement.showElementAtMousePosition(e,t._currentView.tooltip,t.tooltip.offset)}),t.tooltip.delay)}function o(e){Is.defined(e._currentView.tooltip)&&(0!==e._currentView.tooltipTimerId&&(clearTimeout(e._currentView.tooltipTimerId),e._currentView.tooltipTimerId=0),"none"!==e._currentView.tooltip.style.display&&(e._currentView.tooltip.style.display="none"))}e.renderControl=function(e){Is.defined(e._currentView.tooltip)||(e._currentView.tooltip=DomElement.create(document.body,"div","jsontree-js-tooltip"),e._currentView.tooltip.style.display="none",t(e))},e.assignToEvents=t,e.add=function(e,t,o,l="jsontree-js-tooltip"){null!==e&&e.addEventListener("mousemove",(e=>n(e,t,o,l)))},e.show=n,e.hide=o,e.remove=function(e){Is.defined(e._currentView.tooltip)&&e._currentView.tooltip.parentNode.removeChild(e._currentView.tooltip)}})(ToolTip||(ToolTip={})),Arr2=Arr||(Arr={}),Arr2.getIndex=function(e,t){return t.useZeroIndexingForArrays?e:e+1},Arr2.getIndexName=function(e,t,n){let o=t.toString();if(e.addArrayIndexPadding){let t=n.toString().length;te.length-1&&(n=e.length-1),e.splice(n,0,e.splice(t,1)[0])},Arr2.removeNullOrUndefinedEntries=function(e){let t=[];const n=e.length;for(let o=0;o{function t(e,n){let o=0;if(Is.defined(e))if(Is.definedNumber(e))o=8;else if(Is.definedString(e))o=2*e.length;else if(Is.definedBoolean(e))o=4;else if(Is.definedBigInt(e))o=t(e.toString(),n);else if(Is.definedRegExp(e))o=t(e.toString(),n);else if(Is.definedDate(e))o=t(e.toString(),n);else if(Is.definedSet(e))o=t(Convert2.setToArray(e),n);else if(Is.definedMap(e))o=t(Convert2.mapToObject(e),n);else if(Is.definedHtml(e))o=t(Convert2.htmlToObject(e,n),n);else if(Is.definedArray(e)){const l=e.length;for(let r=0;r0){const e=Math.floor(Math.log(o)/Math.log(1024));return`${Convert2.numberToFloatWithDecimalPlaces(o/Math.pow(1024,e),2)} ${" KMGTP".charAt(e)}B`}return null},e.length=function e(t,n){let o=0;if(Is.defined(t))if(Is.definedDate(t))o=t.toString().length;else if(Is.definedImage(t))o=t.src.length;else if(Is.definedRegExp(t))o=t.source.length;else if(Is.definedSet(t))o=e(Convert2.setToArray(t),n);else if(Is.definedMap(t))o=e(Convert2.mapToObject(t),n);else if(Is.definedHtml(t))o=e(Convert2.htmlToObject(t,n),n);else if(Is.definedArray(t))o=t.length;else if(Is.definedObject(t))for(const e in t)t.hasOwnProperty(e)&&o++;else Is.definedFunction(t)||Is.definedSymbol(t)||(o=t.toString().length);return o}})(Size||(Size={})),Obj2=Obj||(Obj={}),Obj2.getPropertyNames=function(e,t){let n=[];for(const t in e)e.hasOwnProperty(t)&&n.push(t);if(t.sortPropertyNames){let e=new Intl.Collator(void 0,{numeric:!0,sensitivity:"base"});n=n.sort(e.compare),t.sortPropertyNamesInAlphabeticalOrder||(n=n.reverse())}return n},Obj2.createFromValue=function(e){const t={};return t[crypto.randomUUID()]=e,t},(e=>{function t(e,t=!0){const o=t?window.addEventListener:window.removeEventListener,l=t?document.addEventListener:document.removeEventListener;o("contextmenu",(()=>n(e))),o("click",(()=>n(e))),l("scroll",(()=>n(e)))}function n(e){Is.defined(e._currentView.contextMenu)&&"none"!==e._currentView.contextMenu.style.display&&(e._currentView.contextMenu.style.display="none")}e.renderControl=function(e){Is.defined(e._currentView.contextMenu)||(e._currentView.contextMenu=DomElement.create(document.body,"div","jsontree-js-context-menu"),e._currentView.contextMenu.style.display="none",t(e))},e.assignToEvents=t,e.show=function(e,t){DomElement.cancelBubble(e),DomElement.showElementAtMousePosition(e,t._currentView.contextMenu,0)},e.hide=n,e.remove=function(e){Is.defined(e._currentView.contextMenu)&&e._currentView.contextMenu.parentNode.removeChild(e._currentView.contextMenu)},e.addMenuItem=function(e,t,n){const o=DomElement.create(e._currentView.contextMenu,"div","context-menu-item");return DomElement.createWithHTML(o,"span","symbol",t),DomElement.createWithHTML(o,"span","text",n),o}})(ContextMenu||(ContextMenu={})),(()=>{let e={},t={},n=0,o=!1;function l(){DomElement.find(e.domElementTypes,(t=>{let n=!0;if(Is.defined(t)&&t.hasAttribute(Constants.JSONTREE_JS_ATTRIBUTE_NAME)){const o=t.getAttribute(Constants.JSONTREE_JS_ATTRIBUTE_NAME);if(Is.definedString(o)){const l=Convert2.jsonStringToObject(o,e);l.parsed&&Is.definedObject(l.object)?r(Binding.Options.getForNewInstance(l.object,t)):e.safeMode||(console.error(e.text.attributeNotValidErrorText.replace("{{attribute_name}}",Constants.JSONTREE_JS_ATTRIBUTE_NAME)),n=!1)}else e.safeMode||(console.error(e.text.attributeNotSetErrorText.replace("{{attribute_name}}",Constants.JSONTREE_JS_ATTRIBUTE_NAME)),n=!1)}return n}))}function r(e){if(Trigger.customEvent(e.events.onBeforeRender,e._currentView.element),ToolTip.renderControl(e),ContextMenu.renderControl(e),Is.definedString(e._currentView.element.id)||(Is.definedString(e.id)?e._currentView.element.id=e.id:e._currentView.element.id=crypto.randomUUID(),e._currentView.idSet=!0),e._currentView.element.classList.add("json-tree-js"),e._currentView.element.removeAttribute(Constants.JSONTREE_JS_ATTRIBUTE_NAME),Is.definedString(e.class)){const t=e.class.split(" "),n=t.length;for(let o=0;o{a(n,o,e)})):a(n,o,l)}function a(t,n,o){const l=function(e){const t=[];if(ToolTip.hide(e),ContextMenu.hide(e),e._currentView.editMode||e._currentView.sideMenuChanged){const n=e._currentView.currentContentColumns.length;for(let o=0;om(t)),t.sideMenu.enabled){const n=DomElement.createWithHTML(o,"button","side-menu",e.text.sideMenuButtonSymbolText);n.onclick=()=>function(e){e._currentView.sideMenu.classList.contains("side-menu-open")||(e._currentView.sideMenu.classList.add("side-menu-open"),e._currentView.disabledBackground.style.display="block",ToolTip.hide(e),ContextMenu.hide(e))}(t),n.ondblclick=DomElement.cancelBubble,ToolTip.add(n,t,e.text.sideMenuButtonText)}if(t._currentView.titleBarButtons=DomElement.create(o,"div","controls"),Is.definedString(t.title.text)&&DomElement.createWithHTML(o,"div","title",t.title.text,t._currentView.titleBarButtons),t.title.showCopyButton&&Is.defined(n)){const o=DomElement.createWithHTML(t._currentView.titleBarButtons,"button","copy-all",e.text.copyButtonSymbolText);o.onclick=()=>f(t,n),o.ondblclick=DomElement.cancelBubble,ToolTip.add(o,t,e.text.copyAllButtonText)}if(t.title.showCloseOpenAllButtons&&Is.defined(n)){const n=DomElement.createWithHTML(t._currentView.titleBarButtons,"button","open-all",e.text.openAllButtonSymbolText);n.onclick=()=>p(t),n.ondblclick=DomElement.cancelBubble,ToolTip.add(n,t,e.text.openAllButtonText);const o=DomElement.createWithHTML(t._currentView.titleBarButtons,"button","close-all",e.text.closeAllButtonSymbolText);o.onclick=()=>x(t),o.ondblclick=DomElement.cancelBubble,ToolTip.add(o,t,e.text.closeAllButtonText)}if(t.paging.enabled&&Is.definedArray(n)&&n.length>1?(t._currentView.backPageButton=DomElement.createWithHTML(t._currentView.titleBarButtons,"button","back-page",e.text.backButtonSymbolText),t._currentView.backPageButton.ondblclick=DomElement.cancelBubble,ToolTip.add(t._currentView.backPageButton,t,e.text.backButtonText),t._currentView.currentDataArrayPageIndex>0?t._currentView.backPageButton.onclick=()=>T(t):t._currentView.backPageButton.disabled=!0,t._currentView.nextPageButton=DomElement.createWithHTML(t._currentView.titleBarButtons,"button","next-page",e.text.nextButtonSymbolText),t._currentView.nextPageButton.ondblclick=DomElement.cancelBubble,ToolTip.add(t._currentView.nextPageButton,t,e.text.nextButtonText),t._currentView.currentDataArrayPageIndex+(t.paging.columnsPerPage-1)b(t):t._currentView.nextPageButton.disabled=!0):Is.definedArray(n)&&(t.paging.enabled=!1),t.title.enableFullScreenToggling&&t.title.showFullScreenButton){const n=t._currentView.fullScreenOn?e.text.fullScreenOffButtonSymbolText:e.text.fullScreenOnButtonSymbolText;t._currentView.toggleFullScreenButton=DomElement.createWithHTML(t._currentView.titleBarButtons,"button","toggle-full-screen",n),t._currentView.toggleFullScreenButton.onclick=()=>m(t),t._currentView.toggleFullScreenButton.ondblclick=DomElement.cancelBubble,ToolTip.add(t._currentView.toggleFullScreenButton,t,e.text.fullScreenButtonText)}}}(t,o);const r=DomElement.create(t._currentView.element,"div","contents");if(n&&r.classList.add("page-switch"),t.paging.enabled&&Is.definedArray(o)){const e=Is.defined(o[t._currentView.currentDataArrayPageIndex+1]),n=Arr.removeNullOrUndefinedEntries(o);t.data=n;for(let o=0;oh(e)}(t),function(t){if(t.sideMenu.enabled){t._currentView.sideMenu=DomElement.create(t._currentView.element,"div","side-menu");const n=DomElement.create(t._currentView.sideMenu,"div","side-menu-title-bar");if(Is.definedString(t.sideMenu.titleText)){DomElement.create(n,"div","side-menu-title-bar-text").innerHTML=t.sideMenu.titleText}const o=DomElement.create(n,"div","side-menu-title-controls");if(t.sideMenu.showClearJsonButton&&Is.definedObject(t.data)){const n=DomElement.createWithHTML(o,"button","clear-json",e.text.clearJsonSymbolText);n.onclick=()=>function(t){t.data=null,i(t),v(t,e.text.jsonUpdatedText)}(t),ToolTip.add(n,t,e.text.clearJsonText)}if(t.sideMenu.showExportButton&&Is.definedObject(t.data)){const n=DomElement.createWithHTML(o,"button","export",e.text.exportButtonSymbolText);n.onclick=()=>J(t,t.data),ToolTip.add(n,t,e.text.exportButtonText)}if(t.sideMenu.showImportButton){const n=DomElement.createWithHTML(o,"button","import",e.text.importButtonSymbolText);n.onclick=()=>y(t),ToolTip.add(n,t,e.text.importButtonText)}const l=DomElement.createWithHTML(o,"button","close",e.text.closeButtonSymbolText);if(l.onclick=()=>h(t),ToolTip.add(l,t,e.text.closeButtonText),Is.definedObject(t.data)){!function(t,n){const o=[],l=DomElement.create(t,"div","settings-panel"),r=DomElement.create(l,"div","settings-panel-title-bar");DomElement.createWithHTML(r,"div","settings-panel-title-text",`${e.text.showDataTypesText}:`);const i=DomElement.create(r,"div","settings-panel-control-buttons"),a=DomElement.create(i,"div","settings-panel-control-button settings-panel-fill"),s=DomElement.create(i,"div","settings-panel-control-button");a.onclick=()=>w(n,o,!0),s.onclick=()=>w(n,o,!1),ToolTip.add(a,n,e.text.selectAllText),ToolTip.add(s,n,e.text.selectNoneText);const u=DomElement.create(l,"div","settings-panel-contents"),c=Object.keys(DataType),d=n.ignore;for(const e in n._currentView.dataTypeCounts)-1===c.indexOf(e)&&c.push(e);c.sort(),c.forEach(((e,t)=>{const l=function(e,t,n,o){let l=null;const r=n._currentView.dataTypeCounts[t];if(!n.sideMenu.showOnlyDataTypesAvailable||r>0){let i=Str.capitalizeFirstLetter(t),a="";n.sideMenu.showAvailableDataTypeCounts&&n._currentView.dataTypeCounts.hasOwnProperty(t)&&(a=`(${r})`),l=DomElement.createCheckBox(e,i,t,o,n.showValueColors?t:"",a),l.onchange=()=>{const e=n.ignore;e[`${t}Values`]=!l.checked,n.ignore=e,n._currentView.sideMenuChanged=!0}}return l}(u,e,n,!d[`${e}Values`]);Is.defined(l)&&o.push(l)}))}(DomElement.create(t._currentView.sideMenu,"div","side-menu-contents"),t)}}}(t),function(t){t.footer.enabled&&Is.defined(t.data)&&(t._currentView.footer=DomElement.create(t._currentView.element,"div","footer-bar"),D(t),t._currentView.footerStatusText=DomElement.createWithHTML(t._currentView.footer,"div","status-text",e.text.waitingText),t.footer.showDataTypes&&(t._currentView.footerDataTypeText=DomElement.create(t._currentView.footer,"div","status-value-data-type"),t._currentView.footerDataTypeText.style.display="none"),t.footer.showLengths&&(t._currentView.footerLengthText=DomElement.create(t._currentView.footer,"div","status-value-length"),t._currentView.footerLengthText.style.display="none"),t.footer.showSizes&&(t._currentView.footerSizeText=DomElement.create(t._currentView.footer,"div","status-value-size"),t._currentView.footerSizeText.style.display="none"),t.paging.enabled&&Is.definedArray(t.data)&&t.data.length>1&&t.footer.showPageOf&&(t._currentView.footerPageText=DomElement.create(t._currentView.footer,"div","status-page-index"),function(t){if(t.paging.enabled){const n=Math.ceil((t._currentView.currentDataArrayPageIndex+1)/t.paging.columnsPerPage),o=Math.ceil(t.data.length/t.paging.columnsPerPage),l=DomElement.createWithHTML(null,"span","status-count",n.toFixed()).outerHTML,r=DomElement.createWithHTML(null,"span","status-count",o.toFixed()).outerHTML,i=e.text.pageOfText.replace("{0}",l).replace("{1}",r);t._currentView.footerPageText.innerHTML=i}}(t)))}(t),function(t){if(t.fileDroppingEnabled){const n=DomElement.create(t._currentView.element,"div","drag-and-drop-background"),o=DomElement.create(n,"div","notice-text");DomElement.createWithHTML(o,"p","notice-text-symbol",e.text.dragAndDropSymbolText),DomElement.createWithHTML(o,"p","notice-text-title",e.text.dragAndDropTitleText),DomElement.createWithHTML(o,"p","notice-text-description",e.text.dragAndDropDescriptionText),t._currentView.dragAndDropBackground=n,t._currentView.element.ondragover=()=>R(t,n),t._currentView.element.ondragenter=()=>R(t,n),n.ondragover=DomElement.cancelBubble,n.ondragenter=DomElement.cancelBubble,n.ondragleave=()=>n.style.display="none",n.ondrop=e=>function(e,t){DomElement.cancelBubble(e),t._currentView.dragAndDropBackground.style.display="none",Is.defined(window.FileReader)&&e.dataTransfer.files.length>0&&W(e.dataTransfer.files,t)}(e,t)}}(t),t._currentView.initialized=!0}function s(t,n,o,l,r,a,s){const m=DomElement.create(n,"div",a>1?"contents-column-multiple":"contents-column"),f=o._currentView.currentColumnBuildingIndex;if(Is.defined(t)){m.onscroll=()=>function(e,t,n){ToolTip.hide(t),ContextMenu.hide(t);const o=e.scrollTop,l=e.scrollLeft,r=t._currentView.currentContentColumns.length;if(t.controlPanel.enabled){const e=t._currentView.currentContentColumns[n];Is.defined(e.controlButtons)&&(e.controlButtons.style.top=`${e.column.scrollTop}px`,e.controlButtons.style.right=`-${e.column.scrollLeft}px`)}for(let n=0;n1&&o.allowEditing.bulk&&(m.setAttribute("draggable","true"),m.ondragstart=()=>function(e,t,n){t._currentView.columnDragging=!0,t._currentView.columnDraggingDataIndex=n,e.classList.add("draggable-item")}(m,o,l),m.ondragend=()=>function(e,t){t._currentView.columnDragging=!1,e.classList.remove("draggable-item")}(m,o),m.ondragover=e=>e.preventDefault(),m.ondrop=()=>function(e,t){e._currentView.columnDragging=!1,c(e,e._currentView.columnDraggingDataIndex,t)}(o,l));let n=m,a=null,p=null;o.lineNumbers.enabled&&(a=DomElement.create(m,"div","contents-column-line-numbers"),p=DomElement.create(m,"div","contents-column-lines"),n=p);const x={column:m,lineNumbers:a,lines:p,controlButtons:null};o._currentView.currentContentColumns.push(x),o._currentView.currentColumnBuildingIndex=o._currentView.currentContentColumns.length-1,Is.definedArray(t)?E(n,o,t,"array"):Is.definedSet(t)?E(n,o,Convert2.setToArray(t),"set"):Is.definedHtml(t)?B(n,o,Convert2.htmlToObject(t,o.showCssStylesForHtmlObjects),l,"html"):Is.definedMap(t)?B(n,o,Convert2.mapToObject(t),l,"map"):Is.definedObject(t)?B(n,o,t,l,"object"):B(n,o,Obj.createFromValue(t),l,"object"),d(o._currentView.currentColumnBuildingIndex,o),function(t,n,o,l){if(t.controlPanel.enabled){const r=t._currentView.currentColumnBuildingIndex,a=DomElement.create(n,"div","column-control-buttons");a.ondblclick=DomElement.cancelBubble;const s=t.paging.enabled&&Is.definedArray(t.data)&&t.data.length>1;if(t.allowEditing.bulk&&t.controlPanel.showEditButton){const r=DomElement.createWithHTML(a,"button","edit",e.text.editSymbolButtonText);r.onclick=()=>u(null,t,o,n,l),r.ondblclick=DomElement.cancelBubble,ToolTip.add(r,t,e.text.editButtonText)}if(s&&t.allowEditing.bulk&&t.paging.allowColumnReordering&&t.controlPanel.showMovingButtons){const n=DomElement.createWithHTML(a,"button","move-right",e.text.moveRightSymbolButtonText);n.ondblclick=DomElement.cancelBubble,l+1>t.data.length-1?n.disabled=!0:n.onclick=()=>c(t,l,l+1),ToolTip.add(n,t,e.text.moveRightButtonText);const o=DomElement.createWithHTML(a,"button","move-left",e.text.moveLeftSymbolButtonText);o.ondblclick=DomElement.cancelBubble,l-1<0?o.disabled=!0:o.onclick=()=>c(t,l,l-1),ToolTip.add(o,t,e.text.moveLeftButtonText)}if(s&&t.controlPanel.showCopyButton){const n=DomElement.createWithHTML(a,"button","copy",e.text.copyButtonSymbolText);n.onclick=()=>g(t,o),n.ondblclick=DomElement.cancelBubble,ToolTip.add(n,t,e.text.copyButtonText)}if(s&&t.controlPanel.showCloseOpenAllButtons){const n=DomElement.createWithHTML(a,"button","open-all",e.text.openAllButtonSymbolText);n.onclick=()=>function(e,t){const n=e._currentView.contentPanelsOpen[t];for(const e in n)n.hasOwnProperty(e)&&(n[e]=!1);i(e)}(t,l),n.ondblclick=DomElement.cancelBubble,ToolTip.add(n,t,e.text.openAllButtonText);const o=DomElement.createWithHTML(a,"button","close-all",e.text.closeAllButtonSymbolText);o.onclick=()=>function(e,t){const n=e._currentView.contentPanelsOpen[t];for(const e in n)n.hasOwnProperty(e)&&(n[e]=!0);i(e)}(t,l),o.ondblclick=DomElement.cancelBubble,ToolTip.add(o,t,e.text.closeAllButtonText)}if(s&&t.controlPanel.showExportButton){const n=DomElement.createWithHTML(a,"button","export",e.text.exportButtonSymbolText);n.onclick=()=>J(t,o),ToolTip.add(n,t,e.text.exportButtonText)}if(s&&t.allowEditing.bulk&&t.controlPanel.showImportButton){const n=DomElement.createWithHTML(a,"button","import",e.text.importButtonSymbolText);n.onclick=()=>y(t,l+1),ToolTip.add(n,t,e.text.importButtonText)}if(t.allowEditing.bulk&&t.controlPanel.showRemoveButton){const n=DomElement.createWithHTML(a,"button","remove",e.text.removeSymbolButtonText);n.onclick=()=>function(t,n){t.paging.enabled?(t.data.splice(n,1),n===t._currentView.currentDataArrayPageIndex&&t._currentView.currentDataArrayPageIndex>0&&(t._currentView.currentDataArrayPageIndex-=t.paging.columnsPerPage)):t.data=null;i(t),v(t,e.text.arrayJsonItemDeleted)}(t,l),n.ondblclick=DomElement.cancelBubble,ToolTip.add(n,t,e.text.removeButtonText)}if(!s&&Is.definedArray(t.data)&&t.data.length>1&&t.controlPanel.showSwitchToPagesButton){const n=DomElement.createWithHTML(a,"button","switch-to-pages",e.text.switchToPagesSymbolText);n.onclick=()=>function(e){e.paging.enabled=!0,i(e)}(t),n.ondblclick=DomElement.cancelBubble,ToolTip.add(n,t,e.text.switchToPagesText)}if(""!==a.innerHTML){const e=DomElement.getStyleValueByName(n,"padding-left",!0);t._currentView.currentContentColumns[r].controlButtons=a,n.style.minHeight=`${a.offsetHeight}px`,n.style.paddingRight=`${a.offsetWidth+e}px`}else n.removeChild(a)}}(o,m,t,l),Is.defined(r)&&(m.scrollTop=r),o._currentView.titleBarButtons.style.display="block",o.allowEditing.bulk&&(m.ondblclick=e=>{u(e,o,t,m,l)})}else{const t=DomElement.create(m,"div","no-json");if(DomElement.createWithHTML(t,"span","no-json-text",e.text.noJsonToViewText),o.sideMenu.showImportButton){DomElement.createWithHTML(t,"span","no-json-import-text",`${e.text.importButtonText}${e.text.ellipsisText}`).onclick=()=>y(o)}}}function u(t,n,o,l,r){let a=null;Is.defined(t)&&DomElement.cancelBubble(t),clearTimeout(n._currentView.valueClickTimerId),n._currentView.valueClickTimerId=0,n._currentView.editMode=!0,l.classList.add("editable"),l.setAttribute("contenteditable","true"),l.setAttribute("draggable","false"),l.innerText=JSON.stringify(Convert2.toJsonStringifyClone(o,e,n),n.events.onCopyJsonReplacer,n.jsonIndentSpaces),l.focus(),DomElement.selectAllText(l),l.onblur=()=>{i(n,!1),Is.definedString(a)&&v(n,a)},l.onkeydown=t=>{if("Escape"===t.code)t.preventDefault(),l.setAttribute("contenteditable","false");else if(q(t)&&"Enter"===t.code){t.preventDefault();const o=l.innerText,i=Convert2.jsonStringToObject(o,e);i.parsed&&(a=e.text.jsonUpdatedText,n.paging.enabled?Is.defined(i.object)?n.data[r]=i.object:(n.data.splice(r,1),a=e.text.arrayJsonItemDeleted,r===n._currentView.currentDataArrayPageIndex&&n._currentView.currentDataArrayPageIndex>0&&(n._currentView.currentDataArrayPageIndex-=n.paging.columnsPerPage)):n.data=i.object),l.setAttribute("contenteditable","false")}else"Enter"===t.code&&(t.preventDefault(),document.execCommand("insertLineBreak"))}}function c(t,n,o){if(n!==o){const l=t.data[o],r=t.data[n];let a=t._currentView.contentPanelsOpen[o],s=t._currentView.contentPanelsOpen[n];Is.defined(a)||(a={}),Is.defined(s)||(s={}),t.data[o]=r,t.data[n]=l,t._currentView.contentPanelsOpen[o]=s,t._currentView.contentPanelsOpen[n]=a,t._currentView.currentDataArrayPageIndex+(t.paging.columnsPerPage-1)0){let r=DomElement.getOffset(s).top;1===e&&(o=r),r-=o;const a=DomElement.create(n.lineNumbers,"div","contents-column-line-number"),u=t.lineNumbers.addDots?".":"";t.lineNumbers.padNumbers?a.innerHTML=`${Str.padNumber(e,i.toString().length)}${u}`:a.innerHTML=`${e}${u}`;const c=r+s.offsetHeight/2-a.offsetHeight/2;a.style.top=`${c}px`,l=Math.max(l,a.offsetWidth)}e++}n.lineNumbers.style.height=`${n.lines.offsetHeight}px`,n.lineNumbers.style.width=`${l}px`}else Is.defined(n.lineNumbers)&&(n.lineNumbers.parentNode.removeChild(n.lineNumbers),n.lineNumbers=null)}function g(t,n){const o=JSON.stringify(Convert2.toJsonStringifyClone(n,e,t),t.events.onCopyJsonReplacer,t.jsonIndentSpaces);navigator.clipboard.writeText(o),v(t,e.text.copiedText),Trigger.customEvent(t.events.onCopy,t._currentView.element,o)}function m(t){t.title.enableFullScreenToggling&&(t._currentView.element.classList.contains("full-screen")?(t._currentView.element.classList.remove("full-screen"),t._currentView.toggleFullScreenButton.innerHTML=e.text.fullScreenOnButtonSymbolText,t._currentView.fullScreenOn=!1):(t._currentView.element.classList.add("full-screen"),t._currentView.toggleFullScreenButton.innerHTML=e.text.fullScreenOffButtonSymbolText,t._currentView.fullScreenOn=!0),ToolTip.hide(t),ContextMenu.hide(t),D(t),Trigger.customEvent(t.events.onFullScreenChange,t._currentView.element,t._currentView.element.classList.contains("full-screen")))}function f(t,n){const o=JSON.stringify(Convert2.toJsonStringifyClone(n,e,t),t.events.onCopyJsonReplacer,t.jsonIndentSpaces);navigator.clipboard.writeText(o),v(t,e.text.copiedText),Trigger.customEvent(t.events.onCopyAll,t._currentView.element,o)}function p(e){e.showAllAsClosed=!1,e._currentView.contentPanelsOpen={},i(e),Trigger.customEvent(e.events.onOpenAll,e._currentView.element)}function x(e){e.showAllAsClosed=!0,e._currentView.contentPanelsOpen={},i(e),Trigger.customEvent(e.events.onCloseAll,e._currentView.element)}function T(e){null===e._currentView.backPageButton||e._currentView.backPageButton.disabled||(e._currentView.currentDataArrayPageIndex-=e.paging.columnsPerPage,i(e,!0),Trigger.customEvent(e.events.onBackPage,e._currentView.element))}function b(e){null===e._currentView.nextPageButton||e._currentView.nextPageButton.disabled||(e._currentView.currentDataArrayPageIndex+=e.paging.columnsPerPage,i(e,!0),Trigger.customEvent(e.events.onNextPage,e._currentView.element))}function y(e,t=null){const n=DomElement.createWithNoContainer("input");n.type="file",n.accept=".json",n.multiple=!0,h(e),n.onchange=()=>W(n.files,e,t),n.click()}function h(t){let n=!1;return t._currentView.sideMenu.classList.contains("side-menu-open")&&(t._currentView.sideMenu.classList.remove("side-menu-open"),t._currentView.disabledBackground.style.display="none",ToolTip.hide(t),ContextMenu.hide(t),t._currentView.sideMenuChanged&&setTimeout((()=>{i(t),v(t,e.text.ignoreDataTypesUpdated)}),t.sideMenu.updateDisplayDelay),n=!0),n}function w(e,t,n){const o=t.length,l=e.ignore;for(let e=0;e0&&(o.addEventListener("mousemove",(()=>{const n=DomElement.createWithHTML(null,"span","status-count",l.toString()).outerHTML,o=e.text.lengthText.replace("{0}",n);t._currentView.footerLengthText.style.display="block",t._currentView.footerLengthText.innerHTML=o})),o.addEventListener("mouseleave",(()=>{t._currentView.footerLengthText.style.display="none",t._currentView.footerLengthText.innerHTML=""})))}}function V(t,n,o){if(t.footer.enabled&&t.footer.showSizes){const l=Size.of(n,t.showCssStylesForHtmlObjects);Is.definedString(l)&&(o.addEventListener("mousemove",(()=>{const n=DomElement.createWithHTML(null,"span","status-count",l.toString()).outerHTML,o=e.text.sizeText.replace("{0}",n);t._currentView.footerSizeText.style.display="block",t._currentView.footerSizeText.innerHTML=o})),o.addEventListener("mouseleave",(()=>{t._currentView.footerSizeText.style.display="none",t._currentView.footerSizeText.innerHTML=""})))}}function v(t,n){t.footer.enabled&&(t._currentView.footerStatusText.innerHTML=n,clearTimeout(t._currentView.footerStatusTextTimerId),t._currentView.footerStatusTextTimerId=setTimeout((()=>{t._currentView.footerStatusText.innerHTML=e.text.waitingText}),t.footer.statusResetDelay))}function B(t,n,o,l,r){let i=o;Is.definedImportedFilename(o)&&(i=i.object);const a=Obj.getPropertyNames(i,n),s=a.length;if(0!==s||!n.ignore.emptyObjects){let u=null;"object"===r?u=e.text.objectText:"map"===r?u=e.text.mapText:"html"===r&&(u=e.text.htmlText);const c=DomElement.create(t,"div","object-type-title"),d=DomElement.create(t,"div","object-type-contents last-item"),g=n.showExpandIcons?DomElement.create(c,"div",`opened-${n.expandIconType}`):null;let m=null;if(!n.paging.enabled||!Is.definedNumber(l)||Is.definedImportedFilename(o)){let t=n.rootName;Is.definedImportedFilename(o)&&(t=o.filename),n.showPropertyNameQuotes&&(t=`"${t}"`),m=DomElement.createWithHTML(c,"span","root-name",t),DomElement.createWithHTML(c,"span","split",e.text.propertyColonCharacter)}const f=DomElement.createWithHTML(c,"span",n.showValueColors?`${r} main-title`:"main-title",u);let p=null,x=null;if(A(d,n),n.paging.enabled&&Is.definedNumber(l)){let t=n.useZeroIndexingForArrays?l.toString():(l+1).toString();n.showArrayIndexBrackets&&(t=`[${t}]`);const o=Is.defined(m)?m:f;DomElement.createWithHTML(c,"span",n.showValueColors?`${r} data-array-index`:"data-array-index",t,o),DomElement.createWithHTML(c,"span","split",e.text.propertyColonCharacter,o)}n.showObjectSizes&&s>0&&("html"===r?DomElement.createWithHTML(c,"span",n.showValueColors?`${r} size`:"size",`<${s}>`):DomElement.createWithHTML(c,"span",n.showValueColors?`${r} size`:"size",`{${s}}`)),n.showOpeningClosingCurlyBraces&&(p=DomElement.createWithHTML(c,"span","opening-symbol","{")),n.showClosedObjectCurlyBraces&&(x=DomElement.createWithHTML(c,"span","closed-symbols","{ ... }")),I(g,null,d,n,i,a,p,x,!1,!0,"",r,"object"!==r,1),L(n,f,i,r,!1),V(n,i,f),S(n,i,f),H(n,c,!1,i,i,null,!1,null)}}function E(t,n,o,l){let r=o;Is.definedImportedFilename(o)&&(r=r.object);let i=null;"set"===l?i=e.text.setText:"array"===l&&(i=e.text.arrayText);const a=DomElement.create(t,"div","object-type-title"),s=DomElement.create(t,"div","object-type-contents last-item"),u=n.showExpandIcons?DomElement.create(a,"div",`opened-${n.expandIconType}`):null;if(!n.paging.enabled||Is.definedImportedFilename(o)){let t=n.rootName;Is.definedImportedFilename(o)&&(t=o.filename),n.showPropertyNameQuotes&&(t=`"${t}"`),DomElement.createWithHTML(a,"span","root-name",t),DomElement.createWithHTML(a,"span","split",e.text.propertyColonCharacter)}const c=DomElement.createWithHTML(a,"span",n.showValueColors?`${l} main-title`:"main-title",i);let d=null,g=null;A(s,n),n.showObjectSizes&&DomElement.createWithHTML(a,"span",n.showValueColors?`${l} size`:"size",`[${o.length}]`),n.showOpeningClosingSquaredBrackets&&(d=DomElement.createWithHTML(a,"span","opening-symbol","[")),n.showClosedArraySquaredBrackets&&(g=DomElement.createWithHTML(a,"span","closed-symbols","[ ... ]")),C(u,null,s,n,o,d,g,!1,!0,"",l,"array"!==l,1),L(n,c,o,l,!1),V(n,o,c),S(n,o,c),H(n,a,!1,o,o,null,!1,null)}function I(t,n,o,l,r,i,a,s,u,c,d,g,m,f){let p=!0;const x=i.length,T=""!==d?x:0;if(0!==x||l.ignore.emptyObjects)if(l.maximum.inspectionLevels>0&&f>l.maximum.inspectionLevels)_(r,o,l,"",e.text.maximumInspectionLevelsReached,!0,!1,"",g,m,f),p=!1;else{for(let e=0;e0&&m>l.maximum.inspectionLevels)_(r,o,l,"",e.text.maximumInspectionLevelsReached,!0,!1,"",d,g,m),f=!1;else{if(l.reverseArrayValues)for(let e=p;e--;){const t=Arr.getIndex(e,l),n=""===c?t.toString():`${c}\\${t}`;_(r,o,l,Arr.getIndexName(l,t,p),r[e],0===e,!0,n,d,g,m)}else for(let e=0;e{DomElement.cancelBubble(a);let s=0,u=null;clearTimeout(t._currentView.valueClickTimerId),t._currentView.valueClickTimerId=0,t._currentView.editMode=!0,l.classList.add("editable-name"),l.innerHTML=r?Arr.getIndexFromBrackets(o).toString():o,l.setAttribute("contenteditable","true"),l.focus(),DomElement.selectAllText(l),l.onblur=()=>{i(t,!1),Is.definedString(u)&&v(t,u)},l.onkeydown=i=>{if("Escape"===i.code)i.preventDefault(),l.setAttribute("contenteditable","false");else if("Enter"===i.code){i.preventDefault();const a=l.innerText;if(r)if(Is.definedString(a)&&!isNaN(+a)){let o=+a;t.useZeroIndexingForArrays||o--,s!==o&&(u=e.text.indexUpdatedText,Arr.moveIndex(n,s,o),Trigger.customEvent(t.events.onJsonEdit,t._currentView.element))}else n.splice(Arr.getIndexFromBrackets(o),1),u=e.text.itemDeletedText;else if(a!==o){if(""===a.trim())u=e.text.itemDeletedText,delete n[o];else if(!n.hasOwnProperty(a)){u=e.text.nameUpdatedText;const t=n[o];delete n[o],n[a]=t}Trigger.customEvent(t.events.onJsonEdit,t._currentView.element)}l.setAttribute("contenteditable","false")}}})}(l,t,r,B,u),Is.definedString(c)&&x.setAttribute(Constants.JSONTREE_JS_ATTRIBUTE_PATH_NAME,c),u||(V(l,r,B),S(l,r,B)),function(e,t,n,l,r){t.onclick=i=>{DomElement.cancelBubble(i);const a=t.classList.contains("highlight-selected")&&o,s=e._currentView.currentContentColumns,u=e._currentView.currentContentColumns.length;let c=!1;o||(e._currentView.selectedValues=[]);for(let t=0;t{l.openUrlsInSameWindow?window.location=a:window.open(a)}),M(l,t,r,a,y,u,E,k),Trigger.customEvent(l.events.onUrlRender,l._currentView.element,y),N(l,x,s)}else if(Is.definedString(a)&&Is.definedEmail(a))if(D="email",l.ignore.emailValues)h=!0;else{let n=Str.getMaximumLengthDisplay(a,l.maximum.emailLength,e.text.ellipsisText);b=l.showValueColors?`${D} value`:"value",y=DomElement.createWithHTML(x,"span",b,n),E=l.allowEditing.emailValues&&!m,l.showEmailOpenButtons&&(k=DomElement.createWithHTML(x,"span",l.showValueColors?"open-button-color":"open-button",`${e.text.openText} ${e.text.openSymbolText}`),k.onclick=()=>window.open(`mailto:${a}`)),M(l,t,r,a,y,u,E,k),Trigger.customEvent(l.events.onEmailRender,l._currentView.element,y),N(l,x,s)}else if(Is.definedStringAny(a))if(D="string",!l.ignore.stringValues||P){const o=Convert2.stringToParsedValue(a,l);if(Is.defined(o))_(t,n,l,r,o,s,u,c,g,m,f),h=!0,w=!0;else{let n=a;P?(b="no-properties-text",E=!1,j=!1):(Is.definedString(n)||(n=l.emptyStringValue),n=Str.getMaximumLengthDisplay(n,l.maximum.stringLength,e.text.ellipsisText),n=l.showStringQuotes?`"${n}"`:n,b=l.showValueColors?`${D} value`:"value",E=l.allowEditing.stringValues&&!m),y=DomElement.createWithHTML(x,"span",b,n),P||(M(l,t,r,a,y,u,E),Trigger.customEvent(l.events.onStringRender,l._currentView.element,y),N(l,x,s))}}else h=!0;else if(Is.definedDate(a))D="date",l.ignore.dateValues?h=!0:(b=l.showValueColors?`${D} value`:"value",y=DomElement.createWithHTML(x,"span",b,DateTime.getCustomFormattedDateText(e,a,l.dateTimeFormat)),E=l.allowEditing.dateValues&&!m,M(l,t,r,a,y,u,E),Trigger.customEvent(l.events.onDateRender,l._currentView.element,y),N(l,x,s));else if(Is.definedSymbol(a))D="symbol",l.ignore.symbolValues?h=!0:(b=l.showValueColors?`${D} value`:"value",y=DomElement.createWithHTML(x,"span",b,Convert2.symbolToSpacedOutString(a)),E=l.allowEditing.symbolValues&&!m,M(l,t,r,a,y,u,E),Trigger.customEvent(l.events.onSymbolRender,l._currentView.element,y),N(l,x,s));else if(Is.definedRegExp(a))D="regexp",l.ignore.regexpValues?h=!0:(b=l.showValueColors?`${D} value`:"value",y=DomElement.createWithHTML(x,"span",b,a.source.toString()),E=l.allowEditing.regExpValues&&!m,M(l,t,r,a,y,u,E),Trigger.customEvent(l.events.onRegExpRender,l._currentView.element,y),N(l,x,s));else if(Is.definedImage(a))if(D="image",l.ignore.imageValues)h=!0;else{b=l.showValueColors?`${D} value`:"value",y=DomElement.create(x,"span",b),E=l.allowEditing.imageValues&&!m,M(l,t,r,a,y,u,E);DomElement.create(y,"img").src=a.src,Trigger.customEvent(l.events.onImageRender,l._currentView.element,y),N(l,x,s)}else if(Is.definedHtml(a))if(D="html",l.ignore.htmlValues)h=!0;else{const t=Convert2.htmlToObject(a,l.showCssStylesForHtmlObjects),n=Obj.getPropertyNames(t,l),o=n.length;if(0===o&&l.ignore.emptyObjects)h=!0;else{const r=DomElement.create(x,"span",l.showValueColors?D:""),i=DomElement.create(p,"div","object-type-contents");let a=null,u=null;A(i,l),s&&i.classList.add("last-item"),y=DomElement.createWithHTML(r,"span","main-title",e.text.htmlText),l.showObjectSizes&&(o>0||!l.ignore.emptyObjects)&&DomElement.createWithHTML(r,"span","size",`<${o}>`),l.showOpeningClosingCurlyBraces&&(a=DomElement.createWithHTML(r,"span","opening-symbol","{")),l.showClosedObjectCurlyBraces&&(u=DomElement.createWithHTML(r,"span","closed-symbols","{ ... }"));!I(T,N(l,r,s),i,l,t,n,a,u,!0,s,c,D,!0,f+1)&&l.showOpeningClosingCurlyBraces&&(a.parentNode.removeChild(a),u.parentNode.removeChild(u))}}else if(Is.definedSet(a))if(D="set",l.ignore.setValues)h=!0;else{const t=Convert2.setToArray(a),n=DomElement.create(x,"span",l.showValueColors?D:""),o=DomElement.create(p,"div","object-type-contents");let r=null,i=null;A(o,l),s&&o.classList.add("last-item"),y=DomElement.createWithHTML(n,"span","main-title",e.text.setText),l.showObjectSizes&&DomElement.createWithHTML(n,"span","size",`[${t.length}]`),l.showOpeningClosingSquaredBrackets&&(r=DomElement.createWithHTML(n,"span","opening-symbol","[")),l.showClosedArraySquaredBrackets&&(i=DomElement.createWithHTML(n,"span","closed-symbols","[ ... ]"));!C(T,N(l,n,s),o,l,t,r,i,!0,s,c,D,!0,f+1)&&l.showOpeningClosingSquaredBrackets&&(r.parentNode.removeChild(r),i.parentNode.removeChild(i))}else if(Is.definedArray(a))if(D="array",l.ignore.arrayValues)h=!0;else{const t=DomElement.create(x,"span",l.showValueColors?D:""),n=DomElement.create(p,"div","object-type-contents");let o=null,r=null;A(n,l),s&&n.classList.add("last-item"),y=DomElement.createWithHTML(t,"span","main-title",e.text.arrayText),l.showObjectSizes&&DomElement.createWithHTML(t,"span","size",`[${a.length}]`),l.showOpeningClosingSquaredBrackets&&(o=DomElement.createWithHTML(t,"span","opening-symbol","[")),l.showClosedArraySquaredBrackets&&(r=DomElement.createWithHTML(t,"span","closed-symbols","[ ... ]"));!C(T,N(l,t,s),n,l,a,o,r,!0,s,c,D,!1,f+1)&&l.showOpeningClosingSquaredBrackets&&(o.parentNode.removeChild(o),r.parentNode.removeChild(r))}else if(Is.definedMap(a))if(D="map",l.ignore.mapValues)h=!0;else{const t=Convert2.mapToObject(a),n=Obj.getPropertyNames(t,l),o=n.length;if(0===o&&l.ignore.emptyObjects)h=!0;else{const r=DomElement.create(x,"span",l.showValueColors?D:""),i=DomElement.create(p,"div","object-type-contents");let a=null,u=null;A(i,l),s&&i.classList.add("last-item"),y=DomElement.createWithHTML(r,"span","main-title",e.text.mapText),l.showObjectSizes&&(o>0||!l.ignore.emptyObjects)&&DomElement.createWithHTML(r,"span","size",`{${o}}`),l.showOpeningClosingCurlyBraces&&(a=DomElement.createWithHTML(r,"span","opening-symbol","{")),l.showClosedObjectCurlyBraces&&(u=DomElement.createWithHTML(r,"span","closed-symbols","{ ... }"));!I(T,N(l,r,s),i,l,t,n,a,u,!0,s,c,D,!0,f+1)&&l.showOpeningClosingCurlyBraces&&(a.parentNode.removeChild(a),u.parentNode.removeChild(u))}}else if(Is.definedObject(a))if(D="object",l.ignore.objectValues)h=!0;else{const t=Obj.getPropertyNames(a,l),n=t.length;if(0===n&&l.ignore.emptyObjects)h=!0;else{const o=DomElement.create(x,"span",l.showValueColors?D:""),r=DomElement.create(p,"div","object-type-contents");let i=null,u=null;A(r,l),s&&r.classList.add("last-item"),y=DomElement.createWithHTML(o,"span","main-title",e.text.objectText),l.showObjectSizes&&(n>0||!l.ignore.emptyObjects)&&DomElement.createWithHTML(o,"span","size",`{${n}}`),l.showOpeningClosingCurlyBraces&&(i=DomElement.createWithHTML(o,"span","opening-symbol","{")),l.showClosedObjectCurlyBraces&&(u=DomElement.createWithHTML(o,"span","closed-symbols","{ ... }"));!I(T,N(l,o,s),r,l,a,t,i,u,!0,s,c,D,!1,f+1)&&l.showOpeningClosingCurlyBraces&&(i.parentNode.removeChild(i),u.parentNode.removeChild(u))}}else D="unknown",l.ignore.unknownValues?h=!0:(b=l.showValueColors?`${D} value non-value`:"value non-value",y=DomElement.createWithHTML(x,"span",b,a.toString()),Trigger.customEvent(l.events.onUnknownRender,l._currentView.element,y),N(l,x,s));P||w||function(e,t){e._currentView.dataTypeCounts.hasOwnProperty(t)||(e._currentView.dataTypeCounts[t]=0);e._currentView.dataTypeCounts[t]++}(l,D),h?n.removeChild(p):Is.defined(y)&&(P||(V(l,a,y),S(l,a,y),function(t,n,o){t.footer.enabled&&t.footer.showDataTypes&&(o.addEventListener("mousemove",(()=>{const o=DomElement.createWithHTML(null,"span","status-count",n).outerHTML,l=e.text.dataTypeText.replace("{0}",o);t._currentView.footerDataTypeText.style.display="block",t._currentView.footerDataTypeText.innerHTML=l})),o.addEventListener("mouseleave",(()=>{t._currentView.footerDataTypeText.style.display="none",t._currentView.footerDataTypeText.innerHTML=""})))}(l,D,y),H(l,y,E,t,a,r,u,k)),Is.defined(O)&&("null"!==D&&"undefined"!==D&&"array"!==D&&"object"!==D&&"map"!==D&&"set"!==D?O.innerHTML=`(${D})`:(O.parentNode.removeChild(O),O=null)),j?(!function(e,t,n,o,l){if(Is.definedObject(e.valueToolTips)){if(e.logJsonValueToolTipPaths&&console.log(t),!e.valueToolTips.hasOwnProperty(t)){const n=t.split("\\"),o=n.length-1;for(let t=0;t{O(i,e,t,n,o,l,r,a)})}function O(t,n,o,l,r,a,s,u=null){let c=null;DomElement.cancelBubble(t),clearTimeout(n._currentView.valueClickTimerId),n._currentView.valueClickTimerId=0,n._currentView.editMode=!0,a.classList.add("editable"),a.setAttribute("contenteditable","true"),Is.definedDate(r)&&!n.includeTimeZoneInDates?a.innerText=JSON.stringify(r).replace(/['"]+/g,""):Is.definedRegExp(r)?a.innerText=r.source:Is.definedSymbol(r)?a.innerText=Convert2.symbolToString(r):Is.definedImage(r)?a.innerText=r.src:a.innerText=r.toString(),a.focus(),DomElement.selectAllText(a),Is.defined(u)&&u.parentNode.removeChild(u),a.onblur=()=>{i(n,!1),Is.definedString(c)&&v(n,c)},a.onkeydown=t=>{if("Escape"===t.code)t.preventDefault(),a.setAttribute("contenteditable","false");else if("Enter"===t.code){t.preventDefault();const i=a.innerText;if(""===i.trim())s?o.splice(Arr.getIndexFromBrackets(l),1):delete o[l],c=e.text.itemDeletedText;else{let t=Convert2.stringToDataTypeValue(r,i);null!==t&&(s?o[Arr.getIndexFromBrackets(l)]=t:o[l]=t,c=e.text.valueUpdatedText,Trigger.customEvent(n.events.onJsonEdit,n._currentView.element))}a.setAttribute("contenteditable","false")}}}function L(t,n,o,l,r){Is.definedFunction(t.events.onValueClick)?n.onclick=()=>{let i=o;t.convertClickedValuesToString&&(i=JSON.stringify(Convert2.toJsonStringifyClone(o,e,t),t.events.onCopyJsonReplacer,t.jsonIndentSpaces)),r?t._currentView.valueClickTimerId=setTimeout((()=>{t._currentView.editMode||Trigger.customEvent(t.events.onValueClick,t._currentView.element,i,l)}),t.editingValueClickDelay):(n.ondblclick=DomElement.cancelBubble,Trigger.customEvent(t.events.onValueClick,t._currentView.element,i,l))}:n.classList.add("no-hover")}function P(e,t,n,l,r,i,a,s){const u=e._currentView.contentPanelsIndex,c=e._currentView.contentPanelsDataIndex,g=e._currentView.currentColumnBuildingIndex;e._currentView.contentPanelsOpen.hasOwnProperty(c)||(e._currentView.contentPanelsOpen[c]={});const m=(a,s=!0)=>{Is.defined(a)&&(DomElement.cancelBubble(a),o||k(e)),l.style.display="block",e._currentView.contentPanelsOpen[c][u]=!1,Is.defined(t)&&(t.className=`opened-${e.expandIconType}`),Is.defined(r)&&(r.style.display="inline-block"),Is.defined(i)&&(i.style.display="none"),Is.defined(n)&&(n.style.display="none"),s&&d(g,e)},f=(a,s,f=!0)=>{Is.defined(a)&&(DomElement.cancelBubble(a),o||k(e)),s?((o=!0)=>{l.style.display="none",e._currentView.contentPanelsOpen[c][u]=!0,Is.defined(t)&&(t.className=`closed-${e.expandIconType}`),Is.defined(r)&&(r.style.display="none"),Is.defined(i)&&(i.style.display="inline-block"),Is.defined(n)&&(n.style.display="inline-block"),o&&d(g,e)})(f):m(null,f)};let p=e.showAllAsClosed;e._currentView.contentPanelsOpen[c].hasOwnProperty(u)?p=e._currentView.contentPanelsOpen[c][u]:(e._currentView.initialized||("object"===s&&e.autoClose.objectSize>0&&a>=e.autoClose.objectSize||"array"===s&&e.autoClose.arraySize>0&&a>=e.autoClose.arraySize||"map"===s&&e.autoClose.mapSize>0&&a>=e.autoClose.mapSize||"set"===s&&e.autoClose.setSize>0&&a>=e.autoClose.setSize||"html"===s&&e.autoClose.htmlSize>0&&a>=e.autoClose.htmlSize)&&(p=!0),e._currentView.contentPanelsOpen[c][u]=p),Is.defined(t)&&(t.onclick=n=>f(n,t.className===`opened-${e.expandIconType}`),t.ondblclick=DomElement.cancelBubble),Is.defined(i)&&(i.onclick=e=>m(e),i.ondblclick=DomElement.cancelBubble),f(null,p,!1),e._currentView.contentPanelsIndex++}function N(e,t,n){let o=null;return e.showCommas&&!n&&(o=DomElement.createWithHTML(t,"span","comma",",")),o}function j(e,t,n,o,l){const r=DomElement.create(t,"div","closing-symbol");(o&&e.showExpandIcons||e.showOpenedObjectArrayBorders)&&DomElement.create(r,"div",`no-${e.expandIconType}`),DomElement.createWithHTML(r,"div","object-type-end",n),N(e,r,l)}function k(e){if(e._currentView.selectedValues.length>0){const t=e._currentView.currentContentColumns,n=e._currentView.currentContentColumns.length;e._currentView.selectedValues=[];for(let o=0;o1&&e.paging.allowComparisons}function H(t,n,o,l,r,a,s,u){n.oncontextmenu=c=>{if(DomElement.cancelBubble(c),t._currentView.contextMenu.innerHTML="",o&&t._currentView.selectedValues.length<=1){ContextMenu.addMenuItem(t,e.text.editSymbolButtonText,e.text.editButtonText).onclick=e=>function(e,t,n,o,l,r,i,a){DomElement.cancelBubble(e),O(e,t,o,l,r,n,i,a),ContextMenu.hide(t)}(e,t,n,l,a,r,s,u)}if(ContextMenu.addMenuItem(t,e.text.copyButtonSymbolText,e.text.copyButtonText).onclick=e=>function(e,t,n){DomElement.cancelBubble(e);let o=n;0!==t._currentView.selectedValues.length&&(o=t._currentView.selectedValues);g(t,o),ContextMenu.hide(t)}(e,t,r),o&&t._currentView.selectedValues.length<=1){ContextMenu.addMenuItem(t,e.text.removeSymbolButtonText,e.text.removeButtonText).onclick=n=>function(t,n,o,l,r){DomElement.cancelBubble(t),r?o.splice(Arr.getIndexFromBrackets(l),1):delete o[l];ContextMenu.hide(n),i(n,!1),v(n,e.text.itemDeletedText)}(n,t,l,a,s)}DomElement.showElementAtMousePosition(c,t._currentView.contextMenu,0)}}function R(e,t){e._currentView.columnDragging||(t.style.display="block")}function W(t,n,o=null){let l=t.length,r=0,a={};const s=(t,s)=>{r++,a[s]=t,r===l&&function(t,n,o,l,r){t._currentView.contentPanelsOpen={};const a=Object.keys(n);if(a.sort(),Is.definedNumber(o)){for(let e=0;et.data.length-1?t.data.push(n[a[e]]):t.data.splice(o,0,n[a[e]]);t._currentView.currentDataArrayPageIndex=o-o%t.paging.columnsPerPage}else if(t._currentView.currentDataArrayPageIndex=0,1===l)t.data=n[a[0]];else{t.data=[];for(let e=0;en(l,t.name),o.onload=n=>{const o=Convert2.jsonStringToObject(n.target.result,e);o.parsed&&Is.definedObject(o.object)&&(l=new ImportedFilename,l.filename=t.name,l.object=o.object)},o.readAsText(t)}function J(t,n){const o=JSON.stringify(Convert2.toJsonStringifyClone(n,e,t),t.events.onCopyJsonReplacer,t.jsonIndentSpaces);if(Is.definedString(o)){const n=DomElement.create(document.body,"a");n.style.display="none",n.setAttribute("target","_blank"),n.setAttribute("href",`data:application/json;charset=utf-8,${encodeURIComponent(o)}`),n.setAttribute("download",function(t){const n=new Date,o=DateTime.getCustomFormattedDateText(e,n,t.exportFilenameFormat);return o}(t)),n.click(),document.body.removeChild(n),h(t),v(t,e.text.exportedText),Trigger.customEvent(t.events.onExport,t._currentView.element)}}function z(e,l=!0){const r=l?document.addEventListener:document.removeEventListener,i=l?window.addEventListener:window.removeEventListener;r("keydown",(l=>function(e,l){o=q(e),l.shortcutKeysEnabled&&1===n&&t.hasOwnProperty(l._currentView.element.id)&&!l._currentView.editMode&&(q(e)&&"KeyC"===e.code?(e.preventDefault(),f(l,l.data)):q(e)&&"F11"===e.code?(e.preventDefault(),m(l)):"ArrowLeft"===e.code?(e.preventDefault(),T(l)):"ArrowRight"===e.code?(e.preventDefault(),b(l)):"ArrowUp"===e.code?(e.preventDefault(),x(l)):"ArrowDown"===e.code?(e.preventDefault(),p(l)):"Escape"===e.code&&(e.preventDefault(),h(l)||o||k(l)))}(l,e))),r("keyup",(e=>function(e){o=q(e)}(e))),r("contextmenu",(()=>U(e))),i("click",(()=>U(e))),i("focus",(()=>o=!1))}function U(e){o||k(e)}function q(e){return e.ctrlKey||e.metaKey}function Z(e){if(e._currentView.element.innerHTML="",e._currentView.element.classList.remove("json-tree-js"),e._currentView.element.classList.remove("full-screen"),Is.definedString(e.class)){const t=e.class.split(" "),n=t.length;for(let o=0;ol())),Is.defined(window.$jsontree)||(window.$jsontree=Q)})(); \ No newline at end of file diff --git a/dist/themes/dark/jsontree.js.default.theme.css b/dist/themes/dark/jsontree.js.default.theme.css index 576a1f4a..1891d9aa 100644 --- a/dist/themes/dark/jsontree.js.default.theme.css +++ b/dist/themes/dark/jsontree.js.default.theme.css @@ -20,11 +20,14 @@ --json-tree-js-color-undefined: var(--json-tree-js-color-null); --json-tree-js-color-symbol: #DAA06D; --json-tree-js-color-function: var(--json-tree-js-color-null); + --json-tree-js-color-lambda: var(--json-tree-js-color-function); --json-tree-js-color-unknown: var(--json-tree-js-color-null); --json-tree-js-color-guid: #c45600; --json-tree-js-color-regexp: #AA336A; --json-tree-js-color-url: #00FFFF; + --json-tree-js-color-email: #FA8072; --json-tree-js-color-link: #89CFF0; + --json-tree-js-color-html: #FF00FF; /* ToolTip */ --json-tree-js-tooltip-background-color: var(--json-tree-js-container-background-color); diff --git a/dist/themes/light/jsontree.js.light.theme.css b/dist/themes/light/jsontree.js.light.theme.css index 6c4526ba..c76e4497 100644 --- a/dist/themes/light/jsontree.js.light.theme.css +++ b/dist/themes/light/jsontree.js.light.theme.css @@ -20,11 +20,14 @@ --json-tree-js-color-undefined: var(--json-tree-js-color-null); --json-tree-js-color-symbol: #DAA06D; --json-tree-js-color-function: var(--json-tree-js-color-null); + --json-tree-js-color-lambda: var(--json-tree-js-color-function); --json-tree-js-color-unknown: var(--json-tree-js-color-null); --json-tree-js-color-guid: #c45600; --json-tree-js-color-regexp: #AA336A; --json-tree-js-color-url: #89CFF0; + --json-tree-js-color-email: #FA8072; --json-tree-js-color-link: #0047AB; + --json-tree-js-color-html: #FF00FF; /* Colors - Editable Fields */ --json-tree-js-editable-text-color: var(--json-tree-js-color-snow-white); diff --git a/dist/translations/jsontree.translations.af.js b/dist/translations/jsontree.translations.af.js index 9af796ac..a40ac367 100644 --- a/dist/translations/jsontree.translations.af.js +++ b/dist/translations/jsontree.translations.af.js @@ -1,4 +1,4 @@ -/*! JsonTree.js v4.4.0 - Afrikaans | (c) Bunoon 2024 | MIT License */ +/*! JsonTree.js v4.5.0 - Afrikaans | (c) Bunoon 2024 | MIT License */ $jsontree.setConfiguration( { "text": { "dayNames": [ diff --git a/dist/translations/jsontree.translations.ar.js b/dist/translations/jsontree.translations.ar.js index 217e161a..798d495b 100644 --- a/dist/translations/jsontree.translations.ar.js +++ b/dist/translations/jsontree.translations.ar.js @@ -1,4 +1,4 @@ -/*! JsonTree.js v4.4.0 - Arabic | (c) Bunoon 2024 | MIT License */ +/*! JsonTree.js v4.5.0 - Arabic | (c) Bunoon 2024 | MIT License */ $jsontree.setConfiguration( { "text": { "dayNames": [ diff --git a/dist/translations/jsontree.translations.be.js b/dist/translations/jsontree.translations.be.js index 4632aa00..52a7a2b6 100644 --- a/dist/translations/jsontree.translations.be.js +++ b/dist/translations/jsontree.translations.be.js @@ -1,4 +1,4 @@ -/*! JsonTree.js v4.4.0 - Belarusian | (c) Bunoon 2024 | MIT License */ +/*! JsonTree.js v4.5.0 - Belarusian | (c) Bunoon 2024 | MIT License */ $jsontree.setConfiguration( { "text": { "dayHeaderNames": [ diff --git a/dist/translations/jsontree.translations.bg.js b/dist/translations/jsontree.translations.bg.js index 231cc756..2ababda2 100644 --- a/dist/translations/jsontree.translations.bg.js +++ b/dist/translations/jsontree.translations.bg.js @@ -1,4 +1,4 @@ -/*! JsonTree.js v4.4.0 - Bulgarian | (c) Bunoon 2024 | MIT License */ +/*! JsonTree.js v4.5.0 - Bulgarian | (c) Bunoon 2024 | MIT License */ $jsontree.setConfiguration( { "text": { "dayNames": [ diff --git a/dist/translations/jsontree.translations.bn.js b/dist/translations/jsontree.translations.bn.js index 0ebf2ced..2a4142b9 100644 --- a/dist/translations/jsontree.translations.bn.js +++ b/dist/translations/jsontree.translations.bn.js @@ -1,4 +1,4 @@ -/*! JsonTree.js v4.4.0 - Bengali | (c) Bunoon 2024 | MIT License */ +/*! JsonTree.js v4.5.0 - Bengali | (c) Bunoon 2024 | MIT License */ $jsontree.setConfiguration( { "text": { "dayNames": [ diff --git a/dist/translations/jsontree.translations.da.js b/dist/translations/jsontree.translations.da.js index 2072223d..4ae49572 100644 --- a/dist/translations/jsontree.translations.da.js +++ b/dist/translations/jsontree.translations.da.js @@ -1,4 +1,4 @@ -/*! JsonTree.js v4.4.0 - Danish | (c) Bunoon 2024 | MIT License */ +/*! JsonTree.js v4.5.0 - Danish | (c) Bunoon 2024 | MIT License */ $jsontree.setConfiguration( { "text": { "dayNames": [ diff --git a/dist/translations/jsontree.translations.de.js b/dist/translations/jsontree.translations.de.js index af4597d6..7375ce08 100644 --- a/dist/translations/jsontree.translations.de.js +++ b/dist/translations/jsontree.translations.de.js @@ -1,4 +1,4 @@ -/*! JsonTree.js v4.4.0 - German | (c) Bunoon 2024 | MIT License */ +/*! JsonTree.js v4.5.0 - German | (c) Bunoon 2024 | MIT License */ $jsontree.setConfiguration( { "text": { "dayNames": [ diff --git a/dist/translations/jsontree.translations.el.js b/dist/translations/jsontree.translations.el.js index e97a742c..15e06e54 100644 --- a/dist/translations/jsontree.translations.el.js +++ b/dist/translations/jsontree.translations.el.js @@ -1,4 +1,4 @@ -/*! JsonTree.js v4.4.0 - Greek | (c) Bunoon 2024 | MIT License */ +/*! JsonTree.js v4.5.0 - Greek | (c) Bunoon 2024 | MIT License */ $jsontree.setConfiguration( { "text": { "dayNames": [ diff --git a/dist/translations/jsontree.translations.en.js b/dist/translations/jsontree.translations.en.js index 41f82263..ca39bdc4 100644 --- a/dist/translations/jsontree.translations.en.js +++ b/dist/translations/jsontree.translations.en.js @@ -1,4 +1,4 @@ -/*! JsonTree.js v4.4.0 - English | (c) Bunoon 2024 | MIT License */ +/*! JsonTree.js v4.5.0 - English | (c) Bunoon 2024 | MIT License */ $jsontree.setConfiguration( { "text": { "dayNames": [ diff --git a/dist/translations/jsontree.translations.eo.js b/dist/translations/jsontree.translations.eo.js index 4f91798c..1540f0e8 100644 --- a/dist/translations/jsontree.translations.eo.js +++ b/dist/translations/jsontree.translations.eo.js @@ -1,4 +1,4 @@ -/*! JsonTree.js v4.4.0 - Esperanto | (c) Bunoon 2024 | MIT License */ +/*! JsonTree.js v4.5.0 - Esperanto | (c) Bunoon 2024 | MIT License */ $jsontree.setConfiguration( { "text": { "dayNames": [ diff --git a/dist/translations/jsontree.translations.es.js b/dist/translations/jsontree.translations.es.js index 78783636..e0dce1f6 100644 --- a/dist/translations/jsontree.translations.es.js +++ b/dist/translations/jsontree.translations.es.js @@ -1,4 +1,4 @@ -/*! JsonTree.js v4.4.0 - Spanish | (c) Bunoon 2024 | MIT License */ +/*! JsonTree.js v4.5.0 - Spanish | (c) Bunoon 2024 | MIT License */ $jsontree.setConfiguration( { "text": { "dayNames": [ diff --git a/dist/translations/jsontree.translations.et.js b/dist/translations/jsontree.translations.et.js index da7c7c87..75eae006 100644 --- a/dist/translations/jsontree.translations.et.js +++ b/dist/translations/jsontree.translations.et.js @@ -1,4 +1,4 @@ -/*! JsonTree.js v4.4.0 - Estonian | (c) Bunoon 2024 | MIT License */ +/*! JsonTree.js v4.5.0 - Estonian | (c) Bunoon 2024 | MIT License */ $jsontree.setConfiguration( { "text": { "dayNames": [ diff --git a/dist/translations/jsontree.translations.fa.js b/dist/translations/jsontree.translations.fa.js index fd4165ff..e51547c9 100644 --- a/dist/translations/jsontree.translations.fa.js +++ b/dist/translations/jsontree.translations.fa.js @@ -1,4 +1,4 @@ -/*! JsonTree.js v4.4.0 - Farsi | (c) Bunoon 2024 | MIT License */ +/*! JsonTree.js v4.5.0 - Farsi | (c) Bunoon 2024 | MIT License */ $jsontree.setConfiguration( { "text": { "dayNames": [ diff --git a/dist/translations/jsontree.translations.fi.js b/dist/translations/jsontree.translations.fi.js index 0c231b5e..ed3843fc 100644 --- a/dist/translations/jsontree.translations.fi.js +++ b/dist/translations/jsontree.translations.fi.js @@ -1,4 +1,4 @@ -/*! JsonTree.js v4.4.0 - Finnish | (c) Bunoon 2024 | MIT License */ +/*! JsonTree.js v4.5.0 - Finnish | (c) Bunoon 2024 | MIT License */ $jsontree.setConfiguration( { "text": { "dayNames": [ diff --git a/dist/translations/jsontree.translations.fr.js b/dist/translations/jsontree.translations.fr.js index cc9b4c94..47cb7cd3 100644 --- a/dist/translations/jsontree.translations.fr.js +++ b/dist/translations/jsontree.translations.fr.js @@ -1,4 +1,4 @@ -/*! JsonTree.js v4.4.0 - French | (c) Bunoon 2024 | MIT License */ +/*! JsonTree.js v4.5.0 - French | (c) Bunoon 2024 | MIT License */ $jsontree.setConfiguration( { "text": { "dayNames": [ diff --git a/dist/translations/jsontree.translations.fy.js b/dist/translations/jsontree.translations.fy.js index 56f17060..7c43345f 100644 --- a/dist/translations/jsontree.translations.fy.js +++ b/dist/translations/jsontree.translations.fy.js @@ -1,4 +1,4 @@ -/*! JsonTree.js v4.4.0 - Frisian | (c) Bunoon 2024 | MIT License */ +/*! JsonTree.js v4.5.0 - Frisian | (c) Bunoon 2024 | MIT License */ $jsontree.setConfiguration( { "text": { "dayNames": [ diff --git a/dist/translations/jsontree.translations.ga.js b/dist/translations/jsontree.translations.ga.js index 2f0422a7..dbd20a2d 100644 --- a/dist/translations/jsontree.translations.ga.js +++ b/dist/translations/jsontree.translations.ga.js @@ -1,4 +1,4 @@ -/*! JsonTree.js v4.4.0 - Irish | (c) Bunoon 2024 | MIT License */ +/*! JsonTree.js v4.5.0 - Irish | (c) Bunoon 2024 | MIT License */ $jsontree.setConfiguration( { "text": { "dayNames": [ diff --git a/dist/translations/jsontree.translations.gl.js b/dist/translations/jsontree.translations.gl.js index 0184653b..a4aacfb3 100644 --- a/dist/translations/jsontree.translations.gl.js +++ b/dist/translations/jsontree.translations.gl.js @@ -1,4 +1,4 @@ -/*! JsonTree.js v4.4.0 - Galician | (c) Bunoon 2024 | MIT License */ +/*! JsonTree.js v4.5.0 - Galician | (c) Bunoon 2024 | MIT License */ $jsontree.setConfiguration( { "text": { "dayNames": [ diff --git a/dist/translations/jsontree.translations.he.js b/dist/translations/jsontree.translations.he.js index 3ff0898c..f9bae0b9 100644 --- a/dist/translations/jsontree.translations.he.js +++ b/dist/translations/jsontree.translations.he.js @@ -1,4 +1,4 @@ -/*! JsonTree.js v4.4.0 - Hebrew | (c) Bunoon 2024 | MIT License */ +/*! JsonTree.js v4.5.0 - Hebrew | (c) Bunoon 2024 | MIT License */ $jsontree.setConfiguration( { "text": { "dayNames": [ diff --git a/dist/translations/jsontree.translations.hi.js b/dist/translations/jsontree.translations.hi.js index a2bfcef2..578cfd7f 100644 --- a/dist/translations/jsontree.translations.hi.js +++ b/dist/translations/jsontree.translations.hi.js @@ -1,4 +1,4 @@ -/*! JsonTree.js v4.4.0 - Hindi | (c) Bunoon 2024 | MIT License */ +/*! JsonTree.js v4.5.0 - Hindi | (c) Bunoon 2024 | MIT License */ $jsontree.setConfiguration( { "text": { "dayNames": [ diff --git a/dist/translations/jsontree.translations.hu.js b/dist/translations/jsontree.translations.hu.js index a3538023..217b3e09 100644 --- a/dist/translations/jsontree.translations.hu.js +++ b/dist/translations/jsontree.translations.hu.js @@ -1,4 +1,4 @@ -/*! JsonTree.js v4.4.0 - Hungarian | (c) Bunoon 2024 | MIT License */ +/*! JsonTree.js v4.5.0 - Hungarian | (c) Bunoon 2024 | MIT License */ $jsontree.setConfiguration( { "text": { "dayNames": [ diff --git a/dist/translations/jsontree.translations.hy.js b/dist/translations/jsontree.translations.hy.js index 90b2bc04..b82fd12e 100644 --- a/dist/translations/jsontree.translations.hy.js +++ b/dist/translations/jsontree.translations.hy.js @@ -1,4 +1,4 @@ -/*! JsonTree.js v4.4.0 - Armenian | (c) Bunoon 2024 | MIT License */ +/*! JsonTree.js v4.5.0 - Armenian | (c) Bunoon 2024 | MIT License */ $jsontree.setConfiguration( { "text": { "dayNames": [ diff --git a/dist/translations/jsontree.translations.id.js b/dist/translations/jsontree.translations.id.js index 9bffcee3..b40d1d3f 100644 --- a/dist/translations/jsontree.translations.id.js +++ b/dist/translations/jsontree.translations.id.js @@ -1,4 +1,4 @@ -/*! JsonTree.js v4.4.0 - Indonesian | (c) Bunoon 2024 | MIT License */ +/*! JsonTree.js v4.5.0 - Indonesian | (c) Bunoon 2024 | MIT License */ $jsontree.setConfiguration( { "text": { "dayNames": [ diff --git a/dist/translations/jsontree.translations.is.js b/dist/translations/jsontree.translations.is.js index 2a7f5c1e..0272d801 100644 --- a/dist/translations/jsontree.translations.is.js +++ b/dist/translations/jsontree.translations.is.js @@ -1,4 +1,4 @@ -/*! JsonTree.js v4.4.0 - Icelandic | (c) Bunoon 2024 | MIT License */ +/*! JsonTree.js v4.5.0 - Icelandic | (c) Bunoon 2024 | MIT License */ $jsontree.setConfiguration( { "text": { "dayNames": [ diff --git a/dist/translations/jsontree.translations.it.js b/dist/translations/jsontree.translations.it.js index b763ce97..d529ed34 100644 --- a/dist/translations/jsontree.translations.it.js +++ b/dist/translations/jsontree.translations.it.js @@ -1,4 +1,4 @@ -/*! JsonTree.js v4.4.0 - Italian | (c) Bunoon 2024 | MIT License */ +/*! JsonTree.js v4.5.0 - Italian | (c) Bunoon 2024 | MIT License */ $jsontree.setConfiguration( { "text": { "dayNames": [ diff --git a/dist/translations/jsontree.translations.ja.js b/dist/translations/jsontree.translations.ja.js index 980cc59f..0b470ed7 100644 --- a/dist/translations/jsontree.translations.ja.js +++ b/dist/translations/jsontree.translations.ja.js @@ -1,4 +1,4 @@ -/*! JsonTree.js v4.4.0 - Japanese | (c) Bunoon 2024 | MIT License */ +/*! JsonTree.js v4.5.0 - Japanese | (c) Bunoon 2024 | MIT License */ $jsontree.setConfiguration( { "text": { "dayNames": [ diff --git a/dist/translations/jsontree.translations.ka.js b/dist/translations/jsontree.translations.ka.js index 16d9724d..2cbc9c64 100644 --- a/dist/translations/jsontree.translations.ka.js +++ b/dist/translations/jsontree.translations.ka.js @@ -1,4 +1,4 @@ -/*! JsonTree.js v4.4.0 - Georgian | (c) Bunoon 2024 | MIT License */ +/*! JsonTree.js v4.5.0 - Georgian | (c) Bunoon 2024 | MIT License */ $jsontree.setConfiguration( { "text": { "dayNames": [ diff --git a/dist/translations/jsontree.translations.ko.js b/dist/translations/jsontree.translations.ko.js index 3e31b31e..2964d215 100644 --- a/dist/translations/jsontree.translations.ko.js +++ b/dist/translations/jsontree.translations.ko.js @@ -1,4 +1,4 @@ -/*! JsonTree.js v4.4.0 - Korean | (c) Bunoon 2024 | MIT License */ +/*! JsonTree.js v4.5.0 - Korean | (c) Bunoon 2024 | MIT License */ $jsontree.setConfiguration( { "text": { "dayNames": [ diff --git a/dist/translations/jsontree.translations.lb.js b/dist/translations/jsontree.translations.lb.js index 422aec82..60444f62 100644 --- a/dist/translations/jsontree.translations.lb.js +++ b/dist/translations/jsontree.translations.lb.js @@ -1,4 +1,4 @@ -/*! JsonTree.js v4.4.0 - Luxembourgish | (c) Bunoon 2024 | MIT License */ +/*! JsonTree.js v4.5.0 - Luxembourgish | (c) Bunoon 2024 | MIT License */ $jsontree.setConfiguration( { "text": { "dayNames": [ diff --git a/dist/translations/jsontree.translations.lt.js b/dist/translations/jsontree.translations.lt.js index feccbf4c..4b0151c9 100644 --- a/dist/translations/jsontree.translations.lt.js +++ b/dist/translations/jsontree.translations.lt.js @@ -1,4 +1,4 @@ -/*! JsonTree.js v4.4.0 - Lithuanian | (c) Bunoon 2024 | MIT License */ +/*! JsonTree.js v4.5.0 - Lithuanian | (c) Bunoon 2024 | MIT License */ $jsontree.setConfiguration( { "text": { "dayNames": [ diff --git a/dist/translations/jsontree.translations.lv.js b/dist/translations/jsontree.translations.lv.js index b416a9cb..0f6ca1ff 100644 --- a/dist/translations/jsontree.translations.lv.js +++ b/dist/translations/jsontree.translations.lv.js @@ -1,4 +1,4 @@ -/*! JsonTree.js v4.4.0 - Latvian | (c) Bunoon 2024 | MIT License */ +/*! JsonTree.js v4.5.0 - Latvian | (c) Bunoon 2024 | MIT License */ $jsontree.setConfiguration( { "text": { "dayNames": [ diff --git a/dist/translations/jsontree.translations.ms.js b/dist/translations/jsontree.translations.ms.js index e7a9215b..d071dfb4 100644 --- a/dist/translations/jsontree.translations.ms.js +++ b/dist/translations/jsontree.translations.ms.js @@ -1,4 +1,4 @@ -/*! JsonTree.js v4.4.0 - Malay | (c) Bunoon 2024 | MIT License */ +/*! JsonTree.js v4.5.0 - Malay | (c) Bunoon 2024 | MIT License */ $jsontree.setConfiguration( { "text": { "dayNames": [ diff --git a/dist/translations/jsontree.translations.ne.js b/dist/translations/jsontree.translations.ne.js index 3d918472..8e204a09 100644 --- a/dist/translations/jsontree.translations.ne.js +++ b/dist/translations/jsontree.translations.ne.js @@ -1,4 +1,4 @@ -/*! JsonTree.js v4.4.0 - Nepali | (c) Bunoon 2024 | MIT License */ +/*! JsonTree.js v4.5.0 - Nepali | (c) Bunoon 2024 | MIT License */ $jsontree.setConfiguration( { "text": { "dayNames": [ diff --git a/dist/translations/jsontree.translations.nl.js b/dist/translations/jsontree.translations.nl.js index c65b8a2b..a40a6fc2 100644 --- a/dist/translations/jsontree.translations.nl.js +++ b/dist/translations/jsontree.translations.nl.js @@ -1,4 +1,4 @@ -/*! JsonTree.js v4.4.0 - Dutch | (c) Bunoon 2024 | MIT License */ +/*! JsonTree.js v4.5.0 - Dutch | (c) Bunoon 2024 | MIT License */ $jsontree.setConfiguration( { "text": { "dayNames": [ diff --git a/dist/translations/jsontree.translations.no.js b/dist/translations/jsontree.translations.no.js index 2c5e0df9..37812ee0 100644 --- a/dist/translations/jsontree.translations.no.js +++ b/dist/translations/jsontree.translations.no.js @@ -1,4 +1,4 @@ -/*! JsonTree.js v4.4.0 - Norwegian | (c) Bunoon 2024 | MIT License */ +/*! JsonTree.js v4.5.0 - Norwegian | (c) Bunoon 2024 | MIT License */ $jsontree.setConfiguration( { "text": { "dayNames": [ diff --git a/dist/translations/jsontree.translations.pl.js b/dist/translations/jsontree.translations.pl.js index 2a66df9a..fc71936d 100644 --- a/dist/translations/jsontree.translations.pl.js +++ b/dist/translations/jsontree.translations.pl.js @@ -1,4 +1,4 @@ -/*! JsonTree.js v4.4.0 - Portuguese | (c) Bunoon 2024 | MIT License */ +/*! JsonTree.js v4.5.0 - Portuguese | (c) Bunoon 2024 | MIT License */ $jsontree.setConfiguration( { "text": { "dayNames": [ diff --git a/dist/translations/jsontree.translations.pt.js b/dist/translations/jsontree.translations.pt.js index 83817f28..dd0ac4ce 100644 --- a/dist/translations/jsontree.translations.pt.js +++ b/dist/translations/jsontree.translations.pt.js @@ -1,4 +1,4 @@ -/*! JsonTree.js v4.4.0 - Polish | (c) Bunoon 2024 | MIT License */ +/*! JsonTree.js v4.5.0 - Polish | (c) Bunoon 2024 | MIT License */ $jsontree.setConfiguration( { "text": { "dayNames": [ diff --git a/dist/translations/jsontree.translations.ro.js b/dist/translations/jsontree.translations.ro.js index acd1494d..4304458a 100644 --- a/dist/translations/jsontree.translations.ro.js +++ b/dist/translations/jsontree.translations.ro.js @@ -1,4 +1,4 @@ -/*! JsonTree.js v4.4.0 - Romanian | (c) Bunoon 2024 | MIT License */ +/*! JsonTree.js v4.5.0 - Romanian | (c) Bunoon 2024 | MIT License */ $jsontree.setConfiguration( { "text": { "dayNames": [ diff --git a/dist/translations/jsontree.translations.si.js b/dist/translations/jsontree.translations.si.js index 51564f2c..8649d285 100644 --- a/dist/translations/jsontree.translations.si.js +++ b/dist/translations/jsontree.translations.si.js @@ -1,4 +1,4 @@ -/*! JsonTree.js v4.4.0 - Sinhalese | (c) Bunoon 2024 | MIT License */ +/*! JsonTree.js v4.5.0 - Sinhalese | (c) Bunoon 2024 | MIT License */ $jsontree.setConfiguration( { "text": { "dayNames": [ diff --git a/dist/translations/jsontree.translations.sk.js b/dist/translations/jsontree.translations.sk.js index 2078f5a7..3cb8bd57 100644 --- a/dist/translations/jsontree.translations.sk.js +++ b/dist/translations/jsontree.translations.sk.js @@ -1,4 +1,4 @@ -/*! JsonTree.js v4.4.0 - Slovak | (c) Bunoon 2024 | MIT License */ +/*! JsonTree.js v4.5.0 - Slovak | (c) Bunoon 2024 | MIT License */ $jsontree.setConfiguration( { "text": { "dayNames": [ diff --git a/dist/translations/jsontree.translations.sl.js b/dist/translations/jsontree.translations.sl.js index a48a97ca..9248c651 100644 --- a/dist/translations/jsontree.translations.sl.js +++ b/dist/translations/jsontree.translations.sl.js @@ -1,4 +1,4 @@ -/*! JsonTree.js v4.4.0 - Slovenian | (c) Bunoon 2024 | MIT License */ +/*! JsonTree.js v4.5.0 - Slovenian | (c) Bunoon 2024 | MIT License */ $jsontree.setConfiguration( { "text": { "dayNames": [ diff --git a/dist/translations/jsontree.translations.sv.js b/dist/translations/jsontree.translations.sv.js index f07e75fe..8d6acc70 100644 --- a/dist/translations/jsontree.translations.sv.js +++ b/dist/translations/jsontree.translations.sv.js @@ -1,4 +1,4 @@ -/*! JsonTree.js v4.4.0 - Swedish | (c) Bunoon 2024 | MIT License */ +/*! JsonTree.js v4.5.0 - Swedish | (c) Bunoon 2024 | MIT License */ $jsontree.setConfiguration( { "text": { "dayNames": [ diff --git a/dist/translations/jsontree.translations.ta.js b/dist/translations/jsontree.translations.ta.js index c1470cd7..65f37df4 100644 --- a/dist/translations/jsontree.translations.ta.js +++ b/dist/translations/jsontree.translations.ta.js @@ -1,4 +1,4 @@ -/*! JsonTree.js v4.4.0 - Tamil | (c) Bunoon 2024 | MIT License */ +/*! JsonTree.js v4.5.0 - Tamil | (c) Bunoon 2024 | MIT License */ $jsontree.setConfiguration( { "text": { "dayNames": [ diff --git a/dist/translations/jsontree.translations.te.js b/dist/translations/jsontree.translations.te.js index 35794927..b7adaca4 100644 --- a/dist/translations/jsontree.translations.te.js +++ b/dist/translations/jsontree.translations.te.js @@ -1,4 +1,4 @@ -/*! JsonTree.js v4.4.0 - Telugu | (c) Bunoon 2024 | MIT License */ +/*! JsonTree.js v4.5.0 - Telugu | (c) Bunoon 2024 | MIT License */ $jsontree.setConfiguration( { "text": { "dayNames": [ diff --git a/dist/translations/jsontree.translations.th.js b/dist/translations/jsontree.translations.th.js index 6315185f..76e4e337 100644 --- a/dist/translations/jsontree.translations.th.js +++ b/dist/translations/jsontree.translations.th.js @@ -1,4 +1,4 @@ -/*! JsonTree.js v4.4.0 - Thai | (c) Bunoon 2024 | MIT License */ +/*! JsonTree.js v4.5.0 - Thai | (c) Bunoon 2024 | MIT License */ $jsontree.setConfiguration( { "text": { "dayNames": [ diff --git a/dist/translations/jsontree.translations.tl.js b/dist/translations/jsontree.translations.tl.js index 1920194c..adf632db 100644 --- a/dist/translations/jsontree.translations.tl.js +++ b/dist/translations/jsontree.translations.tl.js @@ -1,4 +1,4 @@ -/*! JsonTree.js v4.4.0 - Tagalog | (c) Bunoon 2024 | MIT License */ +/*! JsonTree.js v4.5.0 - Tagalog | (c) Bunoon 2024 | MIT License */ $jsontree.setConfiguration( { "text": { "dayNames": [ diff --git a/dist/translations/jsontree.translations.tr.js b/dist/translations/jsontree.translations.tr.js index 33cfce10..12f8812c 100644 --- a/dist/translations/jsontree.translations.tr.js +++ b/dist/translations/jsontree.translations.tr.js @@ -1,4 +1,4 @@ -/*! JsonTree.js v4.4.0 - Turkish | (c) Bunoon 2024 | MIT License */ +/*! JsonTree.js v4.5.0 - Turkish | (c) Bunoon 2024 | MIT License */ $jsontree.setConfiguration( { "text": { "dayNames": [ diff --git a/dist/translations/jsontree.translations.uk.js b/dist/translations/jsontree.translations.uk.js index bdc5a5cc..fe404aec 100644 --- a/dist/translations/jsontree.translations.uk.js +++ b/dist/translations/jsontree.translations.uk.js @@ -1,4 +1,4 @@ -/*! JsonTree.js v4.4.0 - Ukrainian | (c) Bunoon 2024 | MIT License */ +/*! JsonTree.js v4.5.0 - Ukrainian | (c) Bunoon 2024 | MIT License */ $jsontree.setConfiguration( { "text": { "dayNames": [ diff --git a/dist/translations/jsontree.translations.vi.js b/dist/translations/jsontree.translations.vi.js index e457b32c..caffbaa4 100644 --- a/dist/translations/jsontree.translations.vi.js +++ b/dist/translations/jsontree.translations.vi.js @@ -1,4 +1,4 @@ -/*! JsonTree.js v4.4.0 - Vietnamese | (c) Bunoon 2024 | MIT License */ +/*! JsonTree.js v4.5.0 - Vietnamese | (c) Bunoon 2024 | MIT License */ $jsontree.setConfiguration( { "text": { "dayNames": [ diff --git a/dist/translations/jsontree.translations.zh-tw.js b/dist/translations/jsontree.translations.zh-tw.js index d4962d87..f0addd49 100644 --- a/dist/translations/jsontree.translations.zh-tw.js +++ b/dist/translations/jsontree.translations.zh-tw.js @@ -1,4 +1,4 @@ -/*! JsonTree.js v4.4.0 - Taiwanese | (c) Bunoon 2024 | MIT License */ +/*! JsonTree.js v4.5.0 - Taiwanese | (c) Bunoon 2024 | MIT License */ $jsontree.setConfiguration( { "text": { "dayNames": [ diff --git a/dist/translations/jsontree.translations.zh.js b/dist/translations/jsontree.translations.zh.js index d28c6a7a..bc29f372 100644 --- a/dist/translations/jsontree.translations.zh.js +++ b/dist/translations/jsontree.translations.zh.js @@ -1,4 +1,4 @@ -/*! JsonTree.js v4.4.0 - Chinese (simplified) | (c) Bunoon 2024 | MIT License */ +/*! JsonTree.js v4.5.0 - Chinese (simplified) | (c) Bunoon 2024 | MIT License */ $jsontree.setConfiguration( { "text": { "dayNames": [ diff --git a/jsontree.js.nuspec b/jsontree.js.nuspec index e7ebb7c6..f06c038e 100755 --- a/jsontree.js.nuspec +++ b/jsontree.js.nuspec @@ -2,7 +2,7 @@ jJsonTree.js - 4.4.0 + 4.5.0 JsonTree.js A lightweight JavaScript library that generates customizable tree views to better visualize, and edit, JSON data. William Troup diff --git a/package-lock.json b/package-lock.json index 7991fcd5..b3b63a91 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1,12 +1,12 @@ { "name": "jjsontree.js", - "version": "4.4.0", + "version": "4.5.0", "lockfileVersion": 3, "requires": true, "packages": { "": { "name": "jjsontree.js", - "version": "4.4.0", + "version": "4.5.0", "license": "MIT", "devDependencies": { "@swc/core": "^1.7.26", diff --git a/package.json b/package.json index 9bfb21ee..3a69fb89 100755 --- a/package.json +++ b/package.json @@ -2,7 +2,7 @@ "name": "jjsontree.js", "title": "JsonTree.js", "description": "A lightweight JavaScript library that generates customizable tree views to better visualize, and edit, JSON data.", - "version": "4.4.0", + "version": "4.5.0", "homepage": "https://www.william-troup.com/jsontree-js/", "author": { "name": "Bunoon" diff --git a/src/jsontree.js.scss b/src/jsontree.js.scss index edc86924..832dbe33 100755 --- a/src/jsontree.js.scss +++ b/src/jsontree.js.scss @@ -1,5 +1,5 @@ /* - * JsonTree.js Library v4.4.0 + * JsonTree.js Library v4.5.0 * * Copyright 2024 Bunoon * Released under the MIT License @@ -278,6 +278,7 @@ div.json-tree-js { display: inline-block; width: 10px; height: 10px; + margin-left: 1px; margin-right: calc( var(--json-tree-js-spacing) ); border-radius: var(--json-tree-js-border-radius-toggle); } @@ -316,6 +317,7 @@ div.json-tree-js { display: inline-block; width: 10px; height: 10px; + margin-left: 1px; margin-right: calc( var(--json-tree-js-spacing) ); border-radius: 50%; } @@ -354,6 +356,7 @@ div.json-tree-js { display: inline-block; width: 10px; height: 10px; + margin-left: 1px; margin-right: calc( var(--json-tree-js-spacing) ); } @@ -933,7 +936,7 @@ div.json-tree-js { div.object-border { border-left: var(--json-tree-js-border-size) dotted var(--json-tree-js-container-object-left-border-color); - margin-left: 5px; + margin-left: 5.5px; } div.object-border-no-toggles { diff --git a/src/jsontree.ts b/src/jsontree.ts index 54e4d242..d985ed6a 100644 --- a/src/jsontree.ts +++ b/src/jsontree.ts @@ -4,7 +4,7 @@ * A lightweight JavaScript library that generates customizable tree views to better visualize, and edit, JSON data. * * @file jsontree.ts - * @version v4.4.0 + * @version v4.5.0 * @author Bunoon * @license MIT License * @copyright Bunoon 2024 @@ -208,6 +208,7 @@ type JsonTreeData = Record; function renderControlContentsPanel( data: any, contents: HTMLElement, bindingOptions: BindingOptions, dataIndex: number, scrollTop: number, totalColumns: number, enableColumnOrder: boolean ) : void { const contentsColumn: HTMLElement = DomElement.create( contents, "div", totalColumns > 1 ? "contents-column-multiple" : "contents-column" ); + const contentsColumnIndex: number = bindingOptions._currentView.currentColumnBuildingIndex; if ( !Is.defined( data ) ) { const noJson: HTMLElement = DomElement.create( contentsColumn, "div", "no-json" ); @@ -219,7 +220,7 @@ type JsonTreeData = Record; } } else { - contentsColumn.onscroll = () => onContentsColumnScroll( contentsColumn, bindingOptions, bindingOptions._currentView.currentColumnBuildingIndex ); + contentsColumn.onscroll = () => onContentsColumnScroll( contentsColumn, bindingOptions, contentsColumnIndex ); if ( bindingOptions.paging!.enabled && Is.definedNumber( dataIndex ) ) { contentsColumn.setAttribute( Constants.JSONTREE_JS_ATTRIBUTE_ARRAY_INDEX_NAME, dataIndex.toString() ); @@ -379,32 +380,26 @@ type JsonTreeData = Record; const columnsLength: number = bindingOptions._currentView.currentContentColumns.length; if ( bindingOptions.controlPanel!.enabled ) { - const controlButtons: HTMLElement = bindingOptions._currentView.currentContentColumns[ dataIndex ].controlButtons; + const columnLayout: ColumnLayout = bindingOptions._currentView.currentContentColumns[ dataIndex ]; - if ( Is.defined( controlButtons ) ) { - controlButtons.style.top = `${bindingOptions._currentView.currentContentColumns[ dataIndex ].column.scrollTop}px`; - controlButtons.style.right = `-${bindingOptions._currentView.currentContentColumns[ dataIndex ].column.scrollLeft}px`; + if ( Is.defined( columnLayout.controlButtons ) ) { + columnLayout.controlButtons.style.top = `${columnLayout.column.scrollTop}px`; + columnLayout.controlButtons.style.right = `-${columnLayout.column.scrollLeft}px`; } } - if ( bindingOptions.paging!.synchronizeScrolling ) { - for ( let columnIndex: number = 0; columnIndex < columnsLength; columnIndex++ ) { - if ( dataIndex !== columnIndex ) { - bindingOptions._currentView.currentContentColumns[ columnIndex ].column.scrollTop = scrollTop; - bindingOptions._currentView.currentContentColumns[ columnIndex ].column.scrollLeft = scrollLeft; + for ( let columnIndex: number = 0; columnIndex < columnsLength; columnIndex++ ) { + const columnLayout: ColumnLayout = bindingOptions._currentView.currentContentColumns[ columnIndex ]; + + if ( columnLayout.column !== column ) { + if ( bindingOptions.paging!.synchronizeScrolling ) { + columnLayout.column.scrollTop = scrollTop; + columnLayout.column.scrollLeft = scrollLeft; } - } - } - if ( bindingOptions.controlPanel!.enabled ) { - for ( let columnIndex: number = 0; columnIndex < columnsLength; columnIndex++ ) { - if ( dataIndex !== columnIndex ) { - const controlButtons: HTMLElement = bindingOptions._currentView.currentContentColumns[ columnIndex ].controlButtons; - - if ( Is.defined( controlButtons ) ) { - controlButtons.style.top = `${bindingOptions._currentView.currentContentColumns[ columnIndex ].column.scrollTop}px`; - controlButtons.style.right = `-${bindingOptions._currentView.currentContentColumns[ columnIndex ].column.scrollLeft}px`; - } + if ( bindingOptions.controlPanel!.enabled && Is.defined( columnLayout.controlButtons ) ) { + columnLayout.controlButtons.style.top = `${columnLayout.column.scrollTop}px`; + columnLayout.controlButtons.style.right = `-${columnLayout.column.scrollLeft}px`; } } } @@ -1528,7 +1523,7 @@ type JsonTreeData = Record; } } else if ( Is.definedFunction( value ) ) { - const functionName: FunctionName = Default.getFunctionName( value, _configuration ); + const functionName: FunctionName = Default.getFunctionName( value, _configuration, bindingOptions ); if ( functionName.isLambda ) { dataType = DataType.lambda; @@ -1677,7 +1672,13 @@ type JsonTreeData = Record; if ( bindingOptions.showUrlOpenButtons ) { openButton = DomElement.createWithHTML( objectTypeValueTitle, "span", bindingOptions.showValueColors ? "open-button-color" : "open-button", `${_configuration.text!.openText}${Char.space}${_configuration.text!.openSymbolText}` ); - openButton.onclick = () => window.open( value ); + openButton.onclick = () => { + if ( bindingOptions.openUrlsInSameWindow ) { + window.location = value; + } else { + window.open( value ) + } + }; } makePropertyValueEditable( bindingOptions, data, name, value, valueElement, isArrayItem, allowEditing, openButton ); @@ -1776,7 +1777,7 @@ type JsonTreeData = Record; if ( !bindingOptions.ignore!.symbolValues ) { valueClass = bindingOptions.showValueColors ? `${dataType} value` : "value"; - valueElement = DomElement.createWithHTML( objectTypeValueTitle, "span", valueClass, value.toString() ); + valueElement = DomElement.createWithHTML( objectTypeValueTitle, "span", valueClass, Convert.symbolToSpacedOutString( value ) ); allowEditing = bindingOptions.allowEditing!.symbolValues! && !preventEditing; makePropertyValueEditable( bindingOptions, data, name, value, valueElement, isArrayItem, allowEditing ); @@ -2864,7 +2865,11 @@ type JsonTreeData = Record; _key_Control_Pressed = isCommandKey( ev ); if ( bindingOptions.shortcutKeysEnabled && _elements_Data_Count === 1 && _elements_Data.hasOwnProperty( bindingOptions._currentView.element.id ) && !bindingOptions._currentView.editMode ) { - if ( isCommandKey( ev ) && ev.code === KeyCode.f11 ) { + if ( isCommandKey( ev ) && ev.code === KeyCode.C ) { + ev.preventDefault(); + onTitleBarCopyAllClick( bindingOptions, bindingOptions.data ); + + } else if ( isCommandKey( ev ) && ev.code === KeyCode.f11 ) { ev.preventDefault(); onTitleBarDblClick( bindingOptions ); @@ -3210,7 +3215,7 @@ type JsonTreeData = Record; }, getVersion: function () : string { - return "4.4.0"; + return "4.5.0"; } }; diff --git a/src/ts/api.ts b/src/ts/api.ts index ec6ca848..0649ff16 100644 --- a/src/ts/api.ts +++ b/src/ts/api.ts @@ -4,7 +4,7 @@ * A lightweight JavaScript library that generates customizable tree views to better visualize, and edit, JSON data. * * @file api.ts - * @version v4.4.0 + * @version v4.5.0 * @author Bunoon * @license MIT License * @copyright Bunoon 2024 diff --git a/src/ts/area/context-menu.ts b/src/ts/area/context-menu.ts index 0ced4d7c..a36e4688 100644 --- a/src/ts/area/context-menu.ts +++ b/src/ts/area/context-menu.ts @@ -4,7 +4,7 @@ * A lightweight JavaScript library that generates customizable tree views to better visualize, and edit, JSON data. * * @file context-menu.ts - * @version v4.4.0 + * @version v4.5.0 * @author Bunoon * @license MIT License * @copyright Bunoon 2024 diff --git a/src/ts/area/tooltip.ts b/src/ts/area/tooltip.ts index 3e7de76e..5f4e36a4 100644 --- a/src/ts/area/tooltip.ts +++ b/src/ts/area/tooltip.ts @@ -4,7 +4,7 @@ * A lightweight JavaScript library that generates customizable tree views to better visualize, and edit, JSON data. * * @file tooltip.ts - * @version v4.4.0 + * @version v4.5.0 * @author Bunoon * @license MIT License * @copyright Bunoon 2024 diff --git a/src/ts/area/trigger.ts b/src/ts/area/trigger.ts index 619c9caa..83ae0014 100644 --- a/src/ts/area/trigger.ts +++ b/src/ts/area/trigger.ts @@ -4,7 +4,7 @@ * A lightweight JavaScript library that generates customizable tree views to better visualize, and edit, JSON data. * * @file trigger.ts - * @version v4.4.0 + * @version v4.5.0 * @author Bunoon * @license MIT License * @copyright Bunoon 2024 diff --git a/src/ts/constant.ts b/src/ts/constant.ts index b9d0cf30..5d1314cd 100644 --- a/src/ts/constant.ts +++ b/src/ts/constant.ts @@ -4,7 +4,7 @@ * A lightweight JavaScript library that generates customizable tree views to better visualize, and edit, JSON data. * * @file constant.ts - * @version v4.4.0 + * @version v4.5.0 * @author Bunoon * @license MIT License * @copyright Bunoon 2024 diff --git a/src/ts/data/arr.ts b/src/ts/data/arr.ts index d12c69c0..76ad0690 100644 --- a/src/ts/data/arr.ts +++ b/src/ts/data/arr.ts @@ -4,7 +4,7 @@ * A lightweight JavaScript library that generates customizable tree views to better visualize, and edit, JSON data. * * @file arr.ts - * @version v4.4.0 + * @version v4.5.0 * @author Bunoon * @license MIT License * @copyright Bunoon 2024 diff --git a/src/ts/data/convert.ts b/src/ts/data/convert.ts index 6894ab4d..e2222995 100644 --- a/src/ts/data/convert.ts +++ b/src/ts/data/convert.ts @@ -4,7 +4,7 @@ * A lightweight JavaScript library that generates customizable tree views to better visualize, and edit, JSON data. * * @file convert.ts - * @version v4.4.0 + * @version v4.5.0 * @author Bunoon * @license MIT License * @copyright Bunoon 2024 @@ -17,7 +17,7 @@ import { type BindingOptions } from "../type"; import { Default } from "./default"; -import { Char } from "./enum"; +import { Char, Value } from "./enum"; import { Is } from "./is"; @@ -119,7 +119,7 @@ export namespace Convert { } else if ( Is.definedNumber( oldValue ) && !isNaN( +newValue ) ) { result = parseInt( newValue ); - } else if ( Is.definedString( oldValue ) ) { + } else if ( Is.definedStringAny( oldValue ) ) { result = newValue; } else if ( Is.definedDate( oldValue ) ) { @@ -267,7 +267,7 @@ export namespace Convert { export function stringToParsedValue( value: any, bindingOptions: BindingOptions ) : any { let parsedValue: any = null; - if ( Is.definedString( value ) ) { + if ( Is.definedString( value ) && value.trim() !== Char.empty ) { const floatValue: number = parseFloat( value ); if ( bindingOptions.parse!.stringsToBooleans && Is.String.boolean( value ) ) { @@ -292,4 +292,16 @@ export namespace Convert { return parsedValue; } + + export function symbolToSpacedOutString( value: Symbol ) : string { + let result: string = value.toString(); + + if ( result.indexOf( "()" ) === Value.notFound ) { + result = result.replace( "(", `(${Char.space}` ).replace( ")", `${Char.space})` ); + } else { + result = result.replace( "()", Char.empty ); + } + + return result; + } } \ No newline at end of file diff --git a/src/ts/data/datetime.ts b/src/ts/data/datetime.ts index 8cc80961..7fdf3bda 100644 --- a/src/ts/data/datetime.ts +++ b/src/ts/data/datetime.ts @@ -4,7 +4,7 @@ * A lightweight JavaScript library that generates customizable tree views to better visualize, and edit, JSON data. * * @file datetime.ts - * @version v4.4.0 + * @version v4.5.0 * @author Bunoon * @license MIT License * @copyright Bunoon 2024 diff --git a/src/ts/data/default.ts b/src/ts/data/default.ts index 35916e33..0c70e968 100644 --- a/src/ts/data/default.ts +++ b/src/ts/data/default.ts @@ -4,7 +4,7 @@ * A lightweight JavaScript library that generates customizable tree views to better visualize, and edit, JSON data. * * @file default.ts - * @version v4.4.0 + * @version v4.5.0 * @author Bunoon * @license MIT License * @copyright Bunoon 2024 @@ -14,11 +14,13 @@ import { type StringToJson, type Configuration, - type FunctionName } from "../type"; + type FunctionName, + type BindingOptions } from "../type"; import { Convert } from "./convert"; import { Char } from "./enum"; import { Is } from "./is"; +import { Str } from "./str"; export namespace Default { @@ -77,21 +79,23 @@ export namespace Default { return result; } - export function getFunctionName( value: any, configuration: Configuration ) : FunctionName { - let name: string; + export function getFunctionName( value: any, configuration: Configuration, bindingOptions: BindingOptions ) : FunctionName { + const functionName = value.toString(); + const functionNameWithParameters: string = functionName.substring( 0, functionName.indexOf( ")" ) + 1 ); + let name: string = functionNameWithParameters.trim(); let isLambda: boolean = false; - const valueParts: string[] = value.toString().split( "(" ); - const valueNameParts: string[] = valueParts[ 0 ].split( Char.space ); - const functionBrackets: string = "()"; - - name = `${valueNameParts.join(Char.space)}${functionBrackets}`; - - if ( name.trim() === functionBrackets ) { - name = `${configuration.text!.functionText!}${functionBrackets}`; + if ( functionNameWithParameters[ 0 ] === "(" ) { + name = `${configuration.text!.functionText!}${name}`; isLambda = true; } + if ( !isLambda ) { + name = Str.getMaximumLengthDisplay( name, bindingOptions.maximum!.functionLength!, configuration.text!.ellipsisText! ); + } else { + name = Str.getMaximumLengthDisplay( name, bindingOptions.maximum!.lambdaLength!, configuration.text!.ellipsisText! ); + } + return { name: name, isLambda: isLambda diff --git a/src/ts/data/enum.ts b/src/ts/data/enum.ts index a0b0352a..c14e8f61 100644 --- a/src/ts/data/enum.ts +++ b/src/ts/data/enum.ts @@ -4,7 +4,7 @@ * A lightweight JavaScript library that generates customizable tree views to better visualize, and edit, JSON data. * * @file enum.ts - * @version v4.4.0 + * @version v4.5.0 * @author Bunoon * @license MIT License * @copyright Bunoon 2024 @@ -54,6 +54,7 @@ export enum DataType { } export enum KeyCode { + C = "KeyC", escape = "Escape", enter = "Enter", left = "ArrowLeft", diff --git a/src/ts/data/is.ts b/src/ts/data/is.ts index daaa81d8..0f3eb338 100644 --- a/src/ts/data/is.ts +++ b/src/ts/data/is.ts @@ -4,7 +4,7 @@ * A lightweight JavaScript library that generates customizable tree views to better visualize, and edit, JSON data. * * @file is.ts - * @version v4.4.0 + * @version v4.5.0 * @author Bunoon * @license MIT License * @copyright Bunoon 2024 diff --git a/src/ts/data/obj.ts b/src/ts/data/obj.ts index 2254b57e..ad87a163 100644 --- a/src/ts/data/obj.ts +++ b/src/ts/data/obj.ts @@ -4,7 +4,7 @@ * A lightweight JavaScript library that generates customizable tree views to better visualize, and edit, JSON data. * * @file obj.ts - * @version v4.4.0 + * @version v4.5.0 * @author Bunoon * @license MIT License * @copyright Bunoon 2024 diff --git a/src/ts/data/size.ts b/src/ts/data/size.ts index 13a5f19d..f2eb97eb 100644 --- a/src/ts/data/size.ts +++ b/src/ts/data/size.ts @@ -4,7 +4,7 @@ * A lightweight JavaScript library that generates customizable tree views to better visualize, and edit, JSON data. * * @file size.ts - * @version v4.4.0 + * @version v4.5.0 * @author Bunoon * @license MIT License * @copyright Bunoon 2024 diff --git a/src/ts/data/str.ts b/src/ts/data/str.ts index a9fc107c..b86ed89c 100644 --- a/src/ts/data/str.ts +++ b/src/ts/data/str.ts @@ -4,7 +4,7 @@ * A lightweight JavaScript library that generates customizable tree views to better visualize, and edit, JSON data. * * @file str.ts - * @version v4.4.0 + * @version v4.5.0 * @author Bunoon * @license MIT License * @copyright Bunoon 2024 diff --git a/src/ts/dom/dom.ts b/src/ts/dom/dom.ts index 9e08f4e9..76aadc3b 100644 --- a/src/ts/dom/dom.ts +++ b/src/ts/dom/dom.ts @@ -4,7 +4,7 @@ * A lightweight JavaScript library that generates customizable tree views to better visualize, and edit, JSON data. * * @file dom.ts - * @version v4.4.0 + * @version v4.5.0 * @author Bunoon * @license MIT License * @copyright Bunoon 2024 diff --git a/src/ts/options/binding.ts b/src/ts/options/binding.ts index 21d95cb3..1c5ae57e 100644 --- a/src/ts/options/binding.ts +++ b/src/ts/options/binding.ts @@ -4,7 +4,7 @@ * A lightweight JavaScript library that generates customizable tree views to better visualize, and edit, JSON data. * * @file binding.ts - * @version v4.4.0 + * @version v4.5.0 * @author Bunoon * @license MIT License * @copyright Bunoon 2024 @@ -134,6 +134,7 @@ export namespace Binding { options.rootName = Default.getString( options.rootName, "root" ); options.emptyStringValue = Default.getString( options.emptyStringValue, Char.empty ); options.expandIconType = Default.getString( options.expandIconType, "arrow" ); + options.openUrlsInSameWindow = Default.getBoolean( options.openUrlsInSameWindow, false ); options.maximum = getMaximum( options ); options.paging = getPaging( options ); @@ -162,6 +163,8 @@ export namespace Binding { options.maximum!.bigIntLength = Default.getNumber( options.maximum!.bigIntLength, 0 ); options.maximum!.inspectionLevels = Default.getNumber( options.maximum!.inspectionLevels, 10 ); options.maximum!.propertyNameLength = Default.getNumber( options.maximum!.propertyNameLength, 0 ); + options.maximum!.functionLength = Default.getNumber( options.maximum!.functionLength, 0 ); + options.maximum!.lambdaLength = Default.getNumber( options.maximum!.lambdaLength, 0 ); return options.maximum!; } diff --git a/src/ts/options/config.ts b/src/ts/options/config.ts index 055b2f06..e0b9facc 100644 --- a/src/ts/options/config.ts +++ b/src/ts/options/config.ts @@ -4,7 +4,7 @@ * A lightweight JavaScript library that generates customizable tree views to better visualize, and edit, JSON data. * * @file config.ts - * @version v4.4.0 + * @version v4.5.0 * @author Bunoon * @license MIT License * @copyright Bunoon 2024 diff --git a/src/ts/type.ts b/src/ts/type.ts index 9ce2284b..450806ae 100644 --- a/src/ts/type.ts +++ b/src/ts/type.ts @@ -4,7 +4,7 @@ * A lightweight JavaScript library that generates customizable tree views to better visualize, and edit, JSON data. * * @file type.ts - * @version v4.4.0 + * @version v4.5.0 * @author Bunoon * @license MIT License * @copyright Bunoon 2024 @@ -183,6 +183,7 @@ export type BindingOptions = { rootName?: string; emptyStringValue?: string; expandIconType?: string; + openUrlsInSameWindow?: boolean; lineNumbers?: BindingOptionsLineNumbers; maximum?: BindingOptionsMaximum; controlPanel?: BindingOptionsControlPanel; @@ -244,6 +245,8 @@ export type BindingOptionsMaximum = { bigIntLength?: number; inspectionLevels?: number; propertyNameLength?: number; + functionLength?: number; + lambdaLength?: number; }; export type BindingOptionsPaging = { diff --git a/test/js/scripts.js b/test/js/scripts.js index 809c01d2..082bcaed 100644 --- a/test/js/scripts.js +++ b/test/js/scripts.js @@ -99,6 +99,7 @@ function bindingOptions( showValueColors = true, allowValueToolTips = true, show rootName: "root", emptyStringValue: "", expandIconType: "arrow", + openUrlsInSameWindow: false, valueToolTips: allowValueToolTips ? { "value1": "This is a boolean tooltip for Value 1", "value5\\1": "This is a string tooltip for Value 5 > Array Index 1", @@ -115,6 +116,8 @@ function bindingOptions( showValueColors = true, allowValueToolTips = true, show bigIntLength: 0, inspectionLevels: 10, propertyNameLength: 0, + functionLength: 0, + lambdaLength: 0, }, parse: { stringsToDates: true, @@ -244,7 +247,10 @@ function getArrayData() { namedFunction: testFunctionName, function: function( message ) { console.log( message ); - } + }, + functionNoParameters: function() { + console.log( "Function without parameters" ); + }, }, value13: "rgb(144, 238, 144)", value14: crypto.randomUUID(), @@ -291,6 +297,7 @@ function getArrayData() { array: [], html: document.createElement( "div" ), string: "", + blankString: " ", symbol: Symbol(), invalidDate: new Date( "" ), },