var __defProp = Object.defineProperty; var __name = (target, value2) => __defProp(target, "name", { value: value2, configurable: true }); // framework/unify/document.js var documentTool = class { static { __name(this, "documentTool"); } createElementDummy(object93) { object93.createElement = function(tag) { var object94 = new Object(); object94.tag = tag; return false; }; } createElementNSDummy(object93) { object93.createElementNS = function(tag) { var object94 = new Object(); object94.tag = tag; return false; }; } createDummyDomMethods(object93) { this.createElementDummy(object93); this.createElementNSDummy(object93); } bindCustomStyleTerms(object93) { object93.customStyleTerms = ["background", "width", "height", "flexDirection", "color", "border", "margin", "padding", "boxBackground"]; } addBoxProperties(object93) { for (var c31 = 0; c31 < object93.customStyleTerms.length; c31++) { object93.customStyleTerms[object93.customStyleTerms[c31]] = ""; object93.customStyleTerms["box" + this.CamelCase(object93.customStyleTerms[c31])] = ""; } } createCustomStyleTerms(object93) { this.bindCustomStyleTerms(object93); this.addBoxProperties(object93); } getDocument() { if (typeof document == "undefined") { var object93 = new Object(); this.createDummyDomMethods(object93); this.createCustomStyleTerms(object93); this.type = "server"; return object93; } else { document.type = "client"; return document; } } CamelCase(string) { if (string) { string = string.toUpperCase(); string = string[0].toUpperCase() + string.slice(1, string.lenth).toLowerCase(); return string; } } }; var object2 = new documentTool(); var document_default = object2.getDocument(); // framework/client/cssRules.js var cssRules = class { static { __name(this, "cssRules"); } style = ""; styleTypes = new Array(); addStyleListener(propertyTerm, cssSuffix) { var styleType = new Object(); styleType.propertyTerm = propertyTerm; styleType.cssSuffix = cssSuffix; styleType.css = ""; this.styleTypes.push(styleType); } }; // framework/client/cssManager.js var cssManager = class { static { __name(this, "cssManager"); } rules = new Array(); addRule(selector, body61) { var rule = new Object(); rule.selector = selector; rule.body = body61; this.rules[selector] = body61; } composeCss(selector, body61) { if (body61 == "") { return ""; } return "\n" + selector + "{ \n" + body61 + "\n } \n"; } getRule(selector, body61) { selector = tools_default.cleanRollup(selector); if (this.rules[selector]) { return ""; } else { this.addRule(selector, body61); return this.composeCss(selector, body61); } } }; // framework/unify/definitions.js var definitions = class { static { __name(this, "definitions"); } css = JSON.parse('{"accentColor":"","additiveSymbols":"","alignContent":"","alignItems":"","alignSelf":"","alignmentBaseline":"","all":"","animation":"","animationDelay":"","animationDirection":"","animationDuration":"","animationFillMode":"","animationIterationCount":"","animationName":"","animationPlayState":"","animationTimingFunction":"","appRegion":"","appearance":"","ascentOverride":"","aspectRatio":"","backdropFilter":"","backfaceVisibility":"","background":"","backgroundAttachment":"","backgroundBlendMode":"","backgroundClip":"","backgroundColor":"","backgroundImage":"","backgroundOrigin":"","backgroundPosition":"","backgroundPositionX":"","backgroundPositionY":"","backgroundRepeat":"","backgroundRepeatX":"","backgroundRepeatY":"","backgroundSize":"","baselineShift":"","blockSize":"","border":"","borderBlock":"","borderBlockColor":"","borderBlockEnd":"","borderBlockEndColor":"","borderBlockEndStyle":"","borderBlockEndWidth":"","borderBlockStart":"","borderBlockStartColor":"","borderBlockStartStyle":"","borderBlockStartWidth":"","borderBlockStyle":"","borderBlockWidth":"","borderBottom":"","borderBottomColor":"","borderBottomLeftRadius":"","borderBottomRightRadius":"","borderBottomStyle":"","borderBottomWidth":"","borderCollapse":"","borderColor":"","borderEndEndRadius":"","borderEndStartRadius":"","borderImage":"","borderImageOutset":"","borderImageRepeat":"","borderImageSlice":"","borderImageSource":"","borderImageWidth":"","borderInline":"","borderInlineColor":"","borderInlineEnd":"","borderInlineEndColor":"","borderInlineEndStyle":"","borderInlineEndWidth":"","borderInlineStart":"","borderInlineStartColor":"","borderInlineStartStyle":"","borderInlineStartWidth":"","borderInlineStyle":"","borderInlineWidth":"","borderLeft":"","borderLeftColor":"","borderLeftStyle":"","borderLeftWidth":"","borderRadius":"","borderRight":"","borderRightColor":"","borderRightStyle":"","borderRightWidth":"","borderSpacing":"","borderStartEndRadius":"","borderStartStartRadius":"","borderStyle":"","borderTop":"","borderTopColor":"","borderTopLeftRadius":"","borderTopRightRadius":"","borderTopStyle":"","borderTopWidth":"","borderWidth":"","bottom":"","boxShadow":"","boxSizing":"","breakAfter":"","breakBefore":"","breakInside":"","bufferedRendering":"","captionSide":"","caretColor":"","clear":"","clip":"","clipPath":"","clipRule":"","color":"","colorInterpolation":"","colorInterpolationFilters":"","colorRendering":"","colorScheme":"","columnCount":"","columnFill":"","columnGap":"","columnRule":"","columnRuleColor":"","columnRuleStyle":"","columnRuleWidth":"","columnSpan":"","columnWidth":"","columns":"","contain":"","containIntrinsicBlockSize":"","containIntrinsicHeight":"","containIntrinsicInlineSize":"","containIntrinsicSize":"","containIntrinsicWidth":"","content":"","contentVisibility":"","counterIncrement":"","counterReset":"","counterSet":"","cursor":"","cx":"","cy":"","d":"","descentOverride":"","direction":"","display":"","dominantBaseline":"","emptyCells":"","fallback":"","fill":"","fillOpacity":"","fillRule":"","filter":"","flex":"","flexBasis":"","flexDirection":"","flexFlow":"","flexGrow":"","flexShrink":"","flexWrap":"","float":"","floodColor":"","floodOpacity":"","font":"","fontDisplay":"","fontFamily":"","fontFeatureSettings":"","fontKerning":"","fontOpticalSizing":"","fontSize":"","fontStretch":"","fontStyle":"","fontSynthesis":"","fontSynthesisSmallCaps":"","fontSynthesisStyle":"","fontSynthesisWeight":"","fontVariant":"","fontVariantCaps":"","fontVariantEastAsian":"","fontVariantLigatures":"","fontVariantNumeric":"","fontVariationSettings":"","fontWeight":"","forcedColorAdjust":"","gap":"","grid":"","gridArea":"","gridAutoColumns":"","gridAutoFlow":"","gridAutoRows":"","gridColumn":"","gridColumnEnd":"","gridColumnGap":"","gridColumnStart":"","gridGap":"","gridRow":"","gridRowEnd":"","gridRowGap":"","gridRowStart":"","gridTemplate":"","gridTemplateAreas":"","gridTemplateColumns":"","gridTemplateRows":"","height":"","hyphens":"","imageOrientation":"","imageRendering":"","inherits":"","initialValue":"","inlineSize":"","inset":"","insetBlock":"","insetBlockEnd":"","insetBlockStart":"","insetInline":"","insetInlineEnd":"","insetInlineStart":"","isolation":"","justifyContent":"","justifyItems":"","justifySelf":"","left":"","letterSpacing":"","lightingColor":"","lineBreak":"","lineGapOverride":"","lineHeight":"","listStyle":"","listStyleImage":"","listStylePosition":"","listStyleType":"","margin":"","marginBlock":"","marginBlockEnd":"","marginBlockStart":"","marginBottom":"","marginInline":"","marginInlineEnd":"","marginInlineStart":"","marginLeft":"","marginRight":"","marginTop":"","marker":"","markerEnd":"","markerMid":"","markerStart":"","mask":"","maskType":"","maxBlockSize":"","maxHeight":"","maxInlineSize":"","maxWidth":"","maxZoom":"","minBlockSize":"","minHeight":"","minInlineSize":"","minWidth":"","minZoom":"","mixBlendMode":"","negative":"","objectFit":"","objectPosition":"","offset":"","offsetDistance":"","offsetPath":"","offsetRotate":"","opacity":"","order":"","orientation":"","orphans":"","outline":"","outlineColor":"","outlineOffset":"","outlineStyle":"","outlineWidth":"","overflow":"","overflowAnchor":"","overflowClipMargin":"","overflowWrap":"","overflowX":"","overflowY":"","overscrollBehavior":"","overscrollBehaviorBlock":"","overscrollBehaviorInline":"","overscrollBehaviorX":"","overscrollBehaviorY":"","pad":"","padding":"","paddingBlock":"","paddingBlockEnd":"","paddingBlockStart":"","paddingBottom":"","paddingInline":"","paddingInlineEnd":"","paddingInlineStart":"","paddingLeft":"","paddingRight":"","paddingTop":"","page":"","pageBreakAfter":"","pageBreakBefore":"","pageBreakInside":"","pageOrientation":"","paintOrder":"","perspective":"","perspectiveOrigin":"","placeContent":"","placeItems":"","placeSelf":"","pointerEvents":"","position":"","prefix":"","quotes":"","r":"","range":"","resize":"","right":"","rowGap":"","rubyPosition":"","rx":"","ry":"","scrollBehavior":"","scrollMargin":"","scrollMarginBlock":"","scrollMarginBlockEnd":"","scrollMarginBlockStart":"","scrollMarginBottom":"","scrollMarginInline":"","scrollMarginInlineEnd":"","scrollMarginInlineStart":"","scrollMarginLeft":"","scrollMarginRight":"","scrollMarginTop":"","scrollPadding":"","scrollPaddingBlock":"","scrollPaddingBlockEnd":"","scrollPaddingBlockStart":"","scrollPaddingBottom":"","scrollPaddingInline":"","scrollPaddingInlineEnd":"","scrollPaddingInlineStart":"","scrollPaddingLeft":"","scrollPaddingRight":"","scrollPaddingTop":"","scrollSnapAlign":"","scrollSnapStop":"","scrollSnapType":"","scrollbarGutter":"","shapeImageThreshold":"","shapeMargin":"","shapeOutside":"","shapeRendering":"","size":"","sizeAdjust":"","speak":"","speakAs":"","src":"","stopColor":"","stopOpacity":"","stroke":"","strokeDasharray":"","strokeDashoffset":"","strokeLinecap":"","strokeLinejoin":"","strokeMiterlimit":"","strokeOpacity":"","strokeWidth":"","suffix":"","symbols":"","syntax":"","system":"","tabSize":"","tableLayout":"","textAlign":"","textAlignLast":"","textAnchor":"","textCombineUpright":"","textDecoration":"","textDecorationColor":"","textDecorationLine":"","textDecorationSkipInk":"","textDecorationStyle":"","textDecorationThickness":"","textIndent":"","textOrientation":"","textOverflow":"","textRendering":"","textShadow":"","textSizeAdjust":"","textTransform":"","textUnderlineOffset":"","textUnderlinePosition":"","top":"","touchAction":"","transform":"","transformBox":"","transformOrigin":"","transformStyle":"","transition":"","transitionDelay":"","transitionDuration":"","transitionProperty":"","transitionTimingFunction":"","unicodeBidi":"","unicodeRange":"","userSelect":"","userZoom":"","vectorEffect":"","verticalAlign":"","visibility":"","webkitAlignContent":"","webkitAlignItems":"","webkitAlignSelf":"","webkitAnimation":"","webkitAnimationDelay":"","webkitAnimationDirection":"","webkitAnimationDuration":"","webkitAnimationFillMode":"","webkitAnimationIterationCount":"","webkitAnimationName":"","webkitAnimationPlayState":"","webkitAnimationTimingFunction":"","webkitAppRegion":"","webkitAppearance":"","webkitBackfaceVisibility":"","webkitBackgroundClip":"","webkitBackgroundOrigin":"","webkitBackgroundSize":"","webkitBorderAfter":"","webkitBorderAfterColor":"","webkitBorderAfterStyle":"","webkitBorderAfterWidth":"","webkitBorderBefore":"","webkitBorderBeforeColor":"","webkitBorderBeforeStyle":"","webkitBorderBeforeWidth":"","webkitBorderBottomLeftRadius":"","webkitBorderBottomRightRadius":"","webkitBorderEnd":"","webkitBorderEndColor":"","webkitBorderEndStyle":"","webkitBorderEndWidth":"","webkitBorderHorizontalSpacing":"","webkitBorderImage":"","webkitBorderRadius":"","webkitBorderStart":"","webkitBorderStartColor":"","webkitBorderStartStyle":"","webkitBorderStartWidth":"","webkitBorderTopLeftRadius":"","webkitBorderTopRightRadius":"","webkitBorderVerticalSpacing":"","webkitBoxAlign":"","webkitBoxDecorationBreak":"","webkitBoxDirection":"","webkitBoxFlex":"","webkitBoxOrdinalGroup":"","webkitBoxOrient":"","webkitBoxPack":"","webkitBoxReflect":"","webkitBoxShadow":"","webkitBoxSizing":"","webkitClipPath":"","webkitColumnBreakAfter":"","webkitColumnBreakBefore":"","webkitColumnBreakInside":"","webkitColumnCount":"","webkitColumnGap":"","webkitColumnRule":"","webkitColumnRuleColor":"","webkitColumnRuleStyle":"","webkitColumnRuleWidth":"","webkitColumnSpan":"","webkitColumnWidth":"","webkitColumns":"","webkitFilter":"","webkitFlex":"","webkitFlexBasis":"","webkitFlexDirection":"","webkitFlexFlow":"","webkitFlexGrow":"","webkitFlexShrink":"","webkitFlexWrap":"","webkitFontFeatureSettings":"","webkitFontSmoothing":"","webkitHighlight":"","webkitHyphenateCharacter":"","webkitJustifyContent":"","webkitLineBreak":"","webkitLineClamp":"","webkitLocale":"","webkitLogicalHeight":"","webkitLogicalWidth":"","webkitMarginAfter":"","webkitMarginBefore":"","webkitMarginEnd":"","webkitMarginStart":"","webkitMask":"","webkitMaskBoxImage":"","webkitMaskBoxImageOutset":"","webkitMaskBoxImageRepeat":"","webkitMaskBoxImageSlice":"","webkitMaskBoxImageSource":"","webkitMaskBoxImageWidth":"","webkitMaskClip":"","webkitMaskComposite":"","webkitMaskImage":"","webkitMaskOrigin":"","webkitMaskPosition":"","webkitMaskPositionX":"","webkitMaskPositionY":"","webkitMaskRepeat":"","webkitMaskRepeatX":"","webkitMaskRepeatY":"","webkitMaskSize":"","webkitMaxLogicalHeight":"","webkitMaxLogicalWidth":"","webkitMinLogicalHeight":"","webkitMinLogicalWidth":"","webkitOpacity":"","webkitOrder":"","webkitPaddingAfter":"","webkitPaddingBefore":"","webkitPaddingEnd":"","webkitPaddingStart":"","webkitPerspective":"","webkitPerspectiveOrigin":"","webkitPerspectiveOriginX":"","webkitPerspectiveOriginY":"","webkitPrintColorAdjust":"","webkitRtlOrdering":"","webkitRubyPosition":"","webkitShapeImageThreshold":"","webkitShapeMargin":"","webkitShapeOutside":"","webkitTapHighlightColor":"","webkitTextCombine":"","webkitTextDecorationsInEffect":"","webkitTextEmphasis":"","webkitTextEmphasisColor":"","webkitTextEmphasisPosition":"","webkitTextEmphasisStyle":"","webkitTextFillColor":"","webkitTextOrientation":"","webkitTextSecurity":"","webkitTextSizeAdjust":"","webkitTextStroke":"","webkitTextStrokeColor":"","webkitTextStrokeWidth":"","webkitTransform":"","webkitTransformOrigin":"","webkitTransformOriginX":"","webkitTransformOriginY":"","webkitTransformOriginZ":"","webkitTransformStyle":"","webkitTransition":"","webkitTransitionDelay":"","webkitTransitionDuration":"","webkitTransitionProperty":"","webkitTransitionTimingFunction":"","webkitUserDrag":"","webkitUserModify":"","webkitUserSelect":"","webkitWritingMode":"","whiteSpace":"","widows":"","width":"","willChange":"","wordBreak":"","wordSpacing":"","wordWrap":"","writingMode":"","x":"","y":"","zIndex":"","zoom":""}'); alphabet = new Array("A", "B", "C", "D", "E", "F", "G", "H", "I", "J", "K", "L", "M", "N", "O", "P", "Q", "R", "S", "T", "U", "V", "W", "X", "Y", "Z"); browserEvents = new Array("screenchange", "fullscreenerror", "webkitfullscreenchange", "webkitfullscreenerror", "beforexrselect", "abort", "blur", "cancel", "canplay", "canplaythrough", "change", "click", "close", "contextmenu", "cuechange", "dblclick", "drag", "dragend", "dragenter", "dragleave", "dragover", "dragstart", "drop", "durationchange", "emptied", "ended", "error", "focus", "formdata", "input", "invalid", "keydown", "keypress", "keyup", "load", "loadeddata", "loadedmetadata", "loadstart", "mousedown", "mouseenter", "mouseleave", "mousemove", "mouseout", "mouseover", "mouseup", "mousewheel", "pause", "play", "playing", "progress", "ratechange", "reset", "resize", "scroll", "securitypolicyviolation", "seeked", "seeking", "select", "slotchange", "stalled", "submit", "suspend", "timeupdate", "toggle", "volumechange", "waiting", "webkitanimationend", "webkitanimationiteration", "webkitanimationstart", "webkittransitionend", "wheel", "auxclick", "gotpointercapture", "lostpointercapture", "pointerdown", "pointermove", "pointerup", "pointercancel", "pointerover", "pointerout", "pointerenter", "pointerleave", "selectstart", "selectionchange", "animationend", "animationiteration", "animationstart", "transitionrun", "transitionstart", "transitionend", "transitioncancel", "copy", "cut", "paste", "contextlost", "contextrestored", "pointerrawupdate"); invalid = new Array("display", "__display", "propertyName", "__text", "text", "__sourcePath", "os", "tint", "device", "__os", "__device", "__tint"); }; var definitions_default = new definitions(); // framework/client/css.js var css = class { static { __name(this, "css"); } cssCache = new cssManager(); global_css = ""; skipBoxTerms = new Array("box-sizing", "box-shadow", "box-reflect", "box-decoration-break"); constructor() { this.boxTermWithoutPrefix = new Array(); for (var i = 0; i < this.skipBoxTerms.length; i++) { var boxTerm = this.skipBoxTerms[i]; this.boxTermWithoutPrefix[i] = boxTerm.replace("box-"); } } PerformPropertyGridCorrection(property2) { for (var i = 0; i < this.skipBoxTerms.length; i++) { if (this.boxTermWithoutPrefix[i].includes(property2)) { property2 = this.skipBoxTerms[i]; } } return property2; } parseObject(object93) { var objectName = object93.propertyName; object93.css = new cssRules(); object93.boxRules = new cssRules(); object93.cssRules = new cssRules(); object93.cssRules.addStyleListener("hover", ":hover"); object93.cssRules.addStyleListener("visited", ":visited"); object93.cssRules.addStyleListener("link", ":link"); object93.cssRules.addStyleListener("active", ":active"); object93.cssRules.addStyleListener("placeholder", "::placeholder"); object93.cssRules.addStyleListener("scrollbar", "::-webkit-scrollbar"); object93.cssRules.addStyleListener("scrollbarTrack", "::-webkit-scrollbar-track"); object93.cssRules.addStyleListener("scrollbarThumb", "::-webkit-scrollbar-thumb"); object93.cssRules.addStyleListener("scrollbarThumbHover", "::-webkit-scrollbar-thumb:hover"); } parseCSSValue(value2) { if (typeof value2 == "number") { value2 += "px"; } return value2; } createStyleRule(normalizedProperty, value2) { if (!value2) { return ""; } value2 = this.parseCSSValue(value2); normalizedProperty = this.PerformPropertyGridCorrection(normalizedProperty); return " " + normalizedProperty + ":" + value2 + "; \n"; } compareUpperCase(term) { const compare = /* @__PURE__ */ __name(function(current) { if (term.indexOf(current) != -1) { return true; } }, "compare"); const n = definitions_default.alphabet; var map = n.map(compare); return map; } hasUpperCase(a32) { let regExp = /[A-Z]/; return regExp.test(a32); } replaceUpperCase(word) { var map = this.compareUpperCase(word); var letter = definitions_default.alphabet[map.indexOf(true)]; return word.replace(letter, "-" + letter.toLowerCase()); } normalizePropertyName(name) { return tools_default.firstLowerCase(name.replace("__", "").replace("box", "")); } // needs caching normalizeProperty(name) { if (name.slice(0, 6) == "webkit") { name = "-" + name; } for (var i = 0; i < 6; i++) { if (this.hasUpperCase(name)) { name = this.replaceUpperCase(name); } } return name; } setter(object93, domStyleObject, propertyName2, property2, value2) { object93["__" + propertyName2] = value2; value2 = this.parseCSSValue(value2); property2 = this.PerformPropertyGridCorrection(property2); var NSTabNames = new Array("svg", "circle"); domStyleObject.setProperty(property2, value2); } createSetter(property2, objectProperty, object93, domStyleObject) { var css2 = this; object93["__" + objectProperty] = object93[objectProperty]; object93.__defineSetter__(objectProperty, this.setter.bind(this, object93, domStyleObject, objectProperty, property2)); } getter(object93, objectProperty, value2) { var newValue = object93["__" + objectProperty]; if (typeof newValue == "string") { var chars = newValue.split(); if (chars[chars.length - 2] == "p" && chars[chars.length - 1] == "x") { chars = chars.slice(0, -2); newValue = chars.join(); } } if (tools_default.isCustomNumber(newValue)) { return parseFloat(newValue); } else { return newValue; } } createGetter(property2, objectProperty, object93, domStyleObject) { object93.__defineGetter__(objectProperty, this.getter.bind(this, object93, objectProperty)); } parseProperty(property2, object93) { var propertyName2 = property2.name; var propertyValue = property2.value; var normalizedProperty = this.normalizeProperty(propertyName2); var slicedProperty = propertyName2.toLowerCase().slice(0, 3); if (slicedProperty == "box") { object93.boxRules.style += this.parseCssTerm(object93, propertyName2, propertyValue, object93.elements[0], "box"); } else { object93.css.style += this.parseCssTerm(object93, propertyName2, propertyValue, object93.element); } this.parseExtraStyleSuffixes(object93, propertyName2, propertyValue); } parseExtraStyleSuffixes(object93, propertyName2, propertyValue) { var styleTypes = object93.cssRules.styleTypes; for (var i = 0; i < styleTypes.length; i++) { var cssType = styleTypes[i]; var propertyTerm = cssType.propertyTerm; var slicedProperty = propertyName2.slice(0, propertyTerm.length); if (slicedProperty == propertyTerm && propertyName2.length > slicedProperty.length) { cssType.css += this.parseCssTerm(object93, propertyName2, propertyValue, object93.elements[0], propertyTerm); } } } parseCssTerm(object93, propertyName2, propertyValue, element2, term = "") { var cssPropertyName = tools_default.firstLowerCase(propertyName2.replace(term, "")); var normalizedProperty = this.normalizeProperty(cssPropertyName); if (this.propertyIsStyle(normalizedProperty)) { if (!term || term == "box") { this.createSetter(normalizedProperty, propertyName2, object93, element2.style); this.createGetter(normalizedProperty, propertyName2, object93, element2.style); } return this.createStyleRule(normalizedProperty, propertyValue); } else { return ""; } } clearCache() { this.cssCache.rules = new Array(); } parseCssRule(object93, objectPropertyName, propertyName2, propertyValue) { var normalizedProperty = this.normalizeProperty(objectPropertyName); object93.boxRules.style += this.createStyleRule(normalizedProperty, propertyValue); this.createSetter(objectPropertyName, propertyName2, object93, object93.elements[0].style); this.createGetter(objectPropertyName, propertyName2, object93, object93.elements[0].style); } createSelector(className2, afterTerm) { var selector = "." + className2; selector += "." + this.device; selector += "." + this.os; selector += "." + this.tint; if (afterTerm) { selector += afterTerm; } return selector; } createStyleSheet(object93) { var objectName = tools_default.createCSSClassName(object93); var body61 = object93.css.style; if (object93.customElement) { var selector = this.createSelector(objectName + "Element"); this.global_css += this.cssCache.getRule(selector, body61); var selector = this.createSelector(objectName + "Grid"); this.global_css += this.cssCache.getRule(selector, body61); } else { var selector = this.createSelector(objectName + "Grid"); this.global_css += this.cssCache.getRule(selector, body61); } if (object93.boxRules) { var selector = this.createSelector(objectName + "Box"); var body61 = object93.boxRules.style; this.global_css += this.cssCache.getRule(selector, body61); } var styleTypes = object93.cssRules.styleTypes; for (var i = 0; i < styleTypes.length; i++) { var cssType = styleTypes[i]; if (object93.useCustomElement) { var selector = this.createSelector(objectName + "Element", cssType.cssSuffix); } else { var selector = this.createSelector(objectName + "Grid", cssType.cssSuffix); } var body61 = cssType.css; if (body61 != "") { this.global_css += this.cssCache.getRule(selector, body61); } } if (!object93.parent) { this.writeCssToPage(this.global_css); this.global_css = ""; } if (object93.dynamic) { this.writeCssToPage(this.global_css); this.global_css = ""; } } writeCssToPage(css2) { if (css2 == "") { return false; } var style = document_default.createElement("style"); style.innerHTML = css2; document_default.head.appendChild(style); } removeStripe(name) { var splitName = name.split("-"); if (splitName.length > 1) { return splitName[1].toLowerCase(); } else { return name; } } getStyleSheetObject() { if (!document_default.body) { return definitions_default.css; return object; } if (document_default.body.style) { var bodyStyle = document_default.body.style; bodyStyle.webkitBoxShadow = ""; return bodyStyle; } if (document_default.body.styleSheets) { return document_default.styleSheets[1].cssRules[0].style; } else { return document_default.customStyleTerms; } } camelCaseToDash(name) { for (var i = 0; i < 4; i++) { if (this.hasUpperCase(name)) { name = this.replaceUpperCase(name); } } return name; } removeBoxPrefix(name) { if (!name.includes("webkit-box")) { name = name.replace("box", "").toLowerCase(); } return name; } checkBoxSpecialCase(name) { for (var i = 0; i < this.boxTermWithoutPrefix.length; i++) { if (this.boxTermWithoutPrefix[i].includes(name)) { return true; } } } propertyIsStyle(name) { name = this.camelCaseToDash(name); name = this.removeBoxPrefix(name); if (this.checkBoxSpecialCase(name)) { return true; } var styleTerms = this.getStyleSheetObject(); if (typeof styleTerms[name] == "string") { return true; } else { return false; } } propertyHasStyle(name) { var styleTerms = Object.keys(definitions_default.css); if (styleTerms.includes(name.toLowerCase())) { return true; } else { return false; } } }; // framework/unify/math/vector2.js var vector2 = class { static { __name(this, "vector2"); } constructor(x, y) { this.x = x; this.y = y; } x = 0; y = 0; }; // framework/unify/consoleColors.js var consoleColors = class { static { __name(this, "consoleColors"); } colors = new Array(); backgroundColors = new Array(); addColor(colorName, colorCode) { var color = new Object(); color.name = colorName; color.code = colorCode; this.colors.push(color); } addBackgroundColor(colorName, colorCode) { var color = new Object(); color.name = colorName; color.code = colorCode; this.backgroundColors.push(color); } constructor() { this.createTextColors(); this.createBackgroundColors(); return this.createMethods(); } createTextColors() { this.addColor("white", 37); this.addColor("black", 30); this.addColor("blue", 34); this.addColor("cyan", 36); this.addColor("green", 32); this.addColor("magenta", 35); this.addColor("red", 31); this.addColor("yellow", 33); this.addColor("brightBlack", 90); this.addColor("brightRed", 91); this.addColor("brightGreen", 92); this.addColor("brightYellow", 93); this.addColor("brightBlue", 94); this.addColor("brightMagenta", 95); this.addColor("brightCyan", 96); this.addColor("brightWhite", 97); } createBackgroundColors() { this.addBackgroundColor("bgBlack", 40); this.addBackgroundColor("bgRed", 41); this.addBackgroundColor("bgGreen", 42); this.addBackgroundColor("bgYellow", 43); this.addBackgroundColor("bgBlue", 44); this.addBackgroundColor("bgMagenta", 45); this.addBackgroundColor("bgCyan", 46); this.addBackgroundColor("bgWhite", 47); this.addBackgroundColor("bgBrightBlack", 100); this.addBackgroundColor("bgBrightRed", 101); this.addBackgroundColor("bgBrightGreen", 102); this.addBackgroundColor("bgBrightYellow", 103); this.addBackgroundColor("bgBrightBlue", 104); this.addBackgroundColor("bgBrightMagenta", 105); this.addBackgroundColor("bgBrightCyan", 106); this.addBackgroundColor("bgBrightWhite", 107); } createMethodsForTextColor(color, colorMethods) { var name = color.name; var code = color.code; var open = "\x1B[" + code + "m"; var close = "\x1B[39m"; colorMethods[name] = function(value2) { return open + value2 + close; }; } createMethodsForBackgroundColor(color, colorMethods) { var name = color.name; var code = color.code; var open = "\x1B[" + code + "m"; var close = "\x1B[49m"; colorMethods[name] = function(value2) { return open + value2 + close; }; } createMethods() { var colors = this.colors; var colorMethods = new Array(); for (var i = 0; i < colors.length; i++) { var textColor = colors[i]; this.createMethodsForTextColor(textColor, colorMethods); } var backgroundColors = this.backgroundColors; for (var i = 0; i < backgroundColors.length; i++) { var backgroundColor = backgroundColors[i]; this.createMethodsForBackgroundColor(backgroundColor, colorMethods); } return colorMethods; } }; var consoleColors_default = new consoleColors(); // framework/unify/tools.js var tools2 = class { static { __name(this, "tools"); } css = new css(); isUnifyObject(propertyName2, propertyValue) { const rejectClassNames = new Array("core", "cssRules", "stateMachine", "socketManager", "animationManager", "permissionManager", "permissionObject", "fileLoader", "WriteStream", "client"); const rejectPropertyNames = new Array("objectToManipulate", "parent", "client", "queryRoot", "queryChildren", "queryCount"); if (propertyValue && typeof propertyValue.parseUnify == "boolean" && propertyValue.parseUnify == false) { return false; } if (propertyValue == null) { return false; } if (!propertyValue) { return false; } var className2 = this.getClassName(propertyValue); if (rejectPropertyNames.includes(propertyName2)) { return false; } if (rejectClassNames.includes(className2)) { return false; } if (Array.isArray(propertyValue)) { return false; } if (this.getEnvironment() == "Browser") { if (propertyValue instanceof HTMLElement) { return false; } } if (typeof propertyValue == "object") { return true; } else { return false; } } reverseString(string) { var splitString = string.split(""); var reverseArray = splitString.reverse(); var joinArray = reverseArray.join(""); return joinArray; } slash(path2) { const isExtendedLengthPath = /^\\\\\?\\/.test(path2); if (isExtendedLengthPath) { return path2; } return path2.replace(/\\/g, "/"); } serializeString(json) { if (Buffer.isBuffer(json)) { return json.toString(); } else { return json; } } isJsonString(str) { try { JSON.parse(str); } catch (e) { return false; } return true; } serializeJSON(json) { if (this.isJsonString(json)) { return JSON.parse(json); } } createOrderedArray(array) { var keys2 = Object.keys(array); var output = new Array(); for (var i = 0; i < keys2.length; i++) { var key = keys2[i]; output[i] = array[key]; } return output; } getEnvironment() { if (typeof document != "undefined") { return "Browser"; } if (global) { return "Node"; } } // Security getObjectByPath(application32, applicationPath) { var objectName = applicationPath.pop(); if (!application32[objectName] || typeof application32[objectName] != "string") { } var currentApplication = application32[objectName]; if (!currentApplication) { } if (applicationPath.length > 0) { return this.getObjectByPath(currentApplication, applicationPath); } else { return currentApplication; } } isNumber(value2) { return typeof value2 === "number" && isFinite(value2); } isNumberObject(n) { return Object.prototype.toString.apply(n) === "[object Number]"; } isCustomNumber(n) { return this.isNumber(n) || this.isNumberObject(n); } structuredClone(object93) { var prototype = Object.getPrototypeOf(object93); var create2 = Object.create(prototype); return Object.assign(create2, object93); } extendedClassIsColumn() { } isUnifyColumn(object93) { var extendedClasses = this.getExtendedClassesMulti(object93); var isColumn = false; for (var j = 0; j < extendedClasses.length; j++) { var extendedClass = extendedClasses[j]; var className2 = this.getClassName(extendedClass); if (className2 == "column") { isColumn = object93; } } return isColumn; } filterPrims(item, prims, type) { if (prims[type].hasOwnProperty(item)) { return false; } else { prims[type][item] = true; return true; } } filterObjects(item) { var filterObjects = this.filterObjects; if (filterObjects.indexOf(item) >= 0) { return false; } else { filterObjects.push(item); return filterObjects; } } uniqueFilter(item) { var type = typeof item; var prims = this.prims; if (type in prims) { return this.filterPrims(item, prims, type); } else { return this.filterObjects(item); } } uniqueArrayRows(a32) { this.prims = new Object(); this.prims.boolean = new Object(); this.prims.number = new Object(); this.prims.string = new Object(); this.filterObjects = new Array(); return a32.filter(this.uniqueFilter.bind(this)); } simpleClone(object93) { var prototype = Object.getPrototypeOf(object93); var created = Object.create(prototype); let clone2 = Object.assign(created, object93); return clone2; } getPrototypeRecursive(object93, properties = new Array()) { properties.push(...Object.getOwnPropertyNames(object93)); var prototype = Object.getPrototypeOf(object93); if (prototype) { return this.getPrototypeRecursive(prototype, properties); } else { return properties; } } filterFunctions(element2, index, arr) { var nextElement = arr[index + 1]; var elementType = typeof this[element2]; if (element2 != nextElement && elementType == "function") { return true; } } getAllFuncs(object93) { var properties = this.getPrototypeRecursive(object93); var sorted = properties.sort(); var filterd = sorted.filter(this.filterFunctions.bind(object93)); return filterd; } createRandomKey(numCharacters) { var token = ""; for (var i = 0; i < numCharacters; i++) { token += Math.floor(Math.random() * 10); } return token; } isCSSProperty(propertyName2) { var object93 = definitions_default.css; if (typeof object93[propertyName2] !== "undefined") { return true; } else { return false; } } hasUserPrototype(obj) { return obj.constructor !== Object; } addTabToArrayLines(lines, numSpaces) { var tabbedRows = new Array(); for (var i = 0; i < lines.length; i++) { var row181 = lines[i]; tabbedRows[i] = "".padEnd(numSpaces) + row181; } return tabbedRows; } addTabToBeginOfString(string, numSpaces) { var lines = string.split("\n"); var tabbedRows = this.addTabToArrayLines(lines, numSpaces); return tabbedRows.join("\n"); } addTabToBegin(string, numSpaces) { if (typeof string == "string") { return this.addTabToBeginOfString(string, numSpaces); } else { return string; } } getChildFromEntry(parent, entry, children) { const invalid = new Array("parent", "table", "user"); var name = this.getClassNameByEntry(entry); var child = this.getObjectByEntry(entry); if (!this.isUnifyObject(name, child)) { return false; } if (invalid.includes(name)) { return false; } child.propertyName = name; child.parent = parent; children.push(child); } getChildren(object93, bindParent = true) { var children = new Array(); var entries = Object.entries(object93); for (var c31 = 0; c31 < entries.length; c31++) { var entry = entries[c31]; this.getChildFromEntry(object93, entry, children); } return children; } addPropertyToArray(property2, properties) { const invalid = new Array("user"); if (this.isUnifyObject(property2.name, property2.value)) { return false; } if (invalid.includes(property2.name)) { return false; } properties.push(property2); } createPropertyFromEntry(entry) { var name = this.getClassNameByEntry(entry); var object93 = this.getObjectByEntry(entry); var property2 = new Object(); property2.name = name; property2.value = object93; return property2; } getProperties(object93) { var properties = new Array(); var entries = Object.entries(object93); for (var c31 = 0; c31 < entries.length; c31++) { var entry = entries[c31]; var property2 = this.createPropertyFromEntry(entry); this.addPropertyToArray(property2, properties); } return properties; } replaceChildWithFragment(source, newType) { const frag = document.createDocumentFragment(); while (source.firstChild) { frag.appendChild(source.firstChild); } const newElem = document.createElement(newType); newElem.appendChild(frag); source.parentNode.replaceChild(newElem, source); } replaceElement(source, newType, parentElement) { if (parentElement) { source.parentNode = parentElement; } if (source.tagName != newType.toUpperCase()) { this.replaceChildWithFragment(source, newType); } } parseObject(object93) { var entries = Object.entries(object93); return entries[0]; } getFirstEntry(object93) { var entries = Object.entries(object93); if (entries[0]) { return entries[0]; } else { return false; } } getExtendedClass(object93) { if (!object93.prototype) { object93 = object93.constructor; } return object93.prototype.__proto__; } removeDuplicates(arr) { return arr.filter((item, index) => arr.indexOf(item) === index); } removeEmptyRows(arr) { return arr.filter((n) => n); } isVisible(element2) { if (!element2) { return false; } if (!element2.offsetWidth) { return false; } return element2.offsetWidth > 0 || element2.offsetHeight > 0; } getExtendedObjects(object93) { if (!object93.getClassName) { return false; } if (typeof document == "undefined") { var extendedObjects = global.extendMap[object93.getClassName()]; } else { var extendedObjects = document.extendMap[object93.getClassName()]; } return extendedObjects; } getSingleExtendedClassInArray(object93) { if (!object93.prototype) { object93 = object93.constructor; } var extendedClass = this.getExtendedClass(object93); if (!extendedClass) { return false; } else { return new Array(new extendedClass.constructor()); } } getExtendedClassesMulti(object93) { var extendedObjects = this.getExtendedObjects(object93); if (extendedObjects) { return extendedObjects; } else { return this.getSingleExtendedClassInArray(object93); } } getExtendedClassName(object93) { return this.getClassName(this.getExtendedClass(object93)); } logError(message) { console.log(this.consoleColors().red(message)); } debugVar(object93, variable) { var colors = this.consoleColors(); var path2 = this.getApplicationPath(object93); var pathColor = colors.red("(" + path2.toString() + ")"); var variableColor = colors.magenta(variable); console.log(variableColor + pathColor); } logParameter2(parameter2) { if (typeof parameter2 == "string") { console.log(parameter2); } else { this.logObject(parameter2); } } log(parameter1, parameter2, parameter3) { var colors = this.consoleColors(); if (typeof parameter1 == "string") { console.log(colors.yellow("\n\n" + parameter1)); } else { this.logObject(parameter1); } if (parameter2) { this.logParameter2(parameter2); } } logObject(object93) { var colors = this.consoleColors(); var path2 = this.getApplicationPath(object93); var pathColor = colors.red("(" + path2.reverse().toString() + ")"); console.log(pathColor + " " + this.getClassName(object93)); console.log(this.serialize(object93)); } saveImportDefault(importObject) { if (importObject.default) { return importObject.default; } else { console.log("error2 ", url, " does not exist"); } } async saveImport(url2) { var importObject = await import(url2); if (importObject) { return this.saveImportDefault(importObject); } else { console.log("error1 ", url2, " does not exist"); } } getApplicationDepth(object93) { return this.getApplicationPath(object93).length; } getParentApplicationPath(object93, array) { array.push(object93.propertyName); return this.getApplicationPath(object93.parent, array); } getApplicationPath(object93, array = new Array()) { if (object93.parent) { return this.getParentApplicationPath(object93, array); } else { return array; } } getClassName(object93) { if (object93.__className) { return object93.__className; } if (!object93) { return false; } return object93.constructor.name; } getID(object93) { if (object93.id) { return object93.id; } else { return ""; } } getClassNameByObject(object93) { if (typeof object93 == "string") { return object93; } var entry = this.parseObject(object93); var className2 = this.getClassNameByEntry(entry); return className2; } getClassNameByEntry(entry) { return entry[0]; } getObjectByEntry(entry) { if (entry[1]) { return entry[1]; } else { return false; } } logObject(object93, message) { if (object93.debug) { console.log(message, object93.getClassName(), "\n"); } } getFirstEntryName(object93) { var entries = Object.entries(object93); return entries[0][0]; } getPropertyNameWithID(object93) { if (object93.id) { return this.CamelCase(object93.propertyName) + "_" + object93.id; } else { return this.CamelCase(object93.propertyName); } if (!propertyName) { return ""; } } createCSSClassName(object93) { var propertyName2 = this.getPropertyNameWithID(object93); if (object93.parent) { object93 = object93.parent; } return this.getClassName(object93) + propertyName2; } CamelCase(string) { if (!string) { return false; } string = string.toUpperCase(); string = string[0].toUpperCase() + string.slice(1, string.length).toLowerCase(); return string; } firstLowerCase(string) { if (string) { return string[0].toLowerCase() + string.slice(1, string.length); } else { return false; } } cleanRollup(term) { return term; } cleanEntry(entry) { const invalid = new Array("parent", "table", "user", "objectToManipulate"); var name = this.getClassNameByEntry(entry); var object93 = this.getObjectByEntry(entry); if (invalid.includes(name)) { delete object93[name]; } } cleanObject(object93) { var entries = Object.entries(this); for (var i = 0; i < entries.length; i++) { var entry = entries[i]; this.cleanEntry(entry); } } objectExtendsTablePrimitive(object93) { var extendedClass = this.getExtendedClass(object93); if (!extendedClass) { return false; } var className2 = this.getClassName(extendedClass); if (className2 == "table") { return true; } else { return false; } } objectIsTable(object93) { if (!object93) { return false; } if (!object93.prototype) { object93 = object93.constructor; } return this.objectExtendsTablePrimitive(object93); } extendIsRenderCollection(object93) { var extendedClass = this.getExtendedClass(object93); var className2 = this.getClassName(extendedClass); if (className2 == "renderCollection") { return true; } else { return false; } } objectIsRenderCollection(object93) { var className2 = this.getClassName(object93); if (className2 == "renderCollection") { return true; } if (!object93.prototype) { object93 = object93.constructor; } return this.extendIsRenderCollection(object93); } getTableName(object93) { if (!this.objectIsTable(object93)) { object93 = this.getTableFromObject(object93); } var className2 = this.getClassName(object93); return className2; } isTableInHierarchy(object93) { } getParentWithTable(object93, tableName) { if (this.getClassName(this.getTableFromObject(object93)) == tableName) { return object93; } else { return this.getParentWithTable(object93.parent, tableName); } } classNameIsTable(className2) { if (className2 == "table") { return true; } else { return false; } } evaluateExtendedClass(object93, extendedClass) { var className2 = this.getClassName(extendedClass); if (this.classNameIsTable(className2)) { return object93; } var table33 = this.getTableFromObject(extendedClass); if (table33) { return table33; } else { return false; } } getTableFromExtendedClasses(object93, extendedClasses) { for (var i = 0; i < extendedClasses.length; i++) { var extendedClass = extendedClasses[i]; var table33 = this.evaluateExtendedClass(object93, extendedClass); if (table33) { return table33; } } } getTableFromObject(object93) { var className2 = this.getClassName(object93); if (className2) { var extendedClasses = this.getExtendedClassesMulti(object93); return this.getTableFromExtendedClasses(object93, extendedClasses); } else { console.log("classname not found", object93); } } isServerValue(name, value2) { const invalid = new Array("style", "type", "label", "flexDirection", "boxPadding", "width", "DOM_ELEMENT"); const valid = new Array("rows"); if (valid.includes(name)) { return true; } if (invalid.includes(name)) { return false; } if (this.css.propertyIsStyle(name)) { return false; } if (typeof value2 == "number") { return true; } if (typeof value2 == "string") { return true; } else { return false; } } deleteNormalBrowserEvent(object93, browserEvent) { if (object93[browserEvent]) { delete object93[browserEvent]; } } deleteServerBrowserEvent(object93, browserEvent) { if (object93["server" + this.CamelCase(browserEvent)]) { delete object93["server" + this.CamelCase(browserEvent)]; } } groomBrowserEvents(object93) { var browserEvents = definitions_default.browserEvents; for (var i = 0; i < browserEvents.length; i++) { var browserEvent = browserEvents[i]; this.deleteNormalBrowserEvent(object93, browserEvent); this.deleteServerBrowserEvent(object93, browserEvent); } } getCircularReplacer(key, value2) { if (typeof value2 === "object" && value2 !== null) { if (this.seen.has(value2)) { return; } this.seen.add(value2); } return value2; } sizeOf(object93) { this.seen = /* @__PURE__ */ new WeakSet(); var stringObject = JSON.stringify(object93, this.getCircularReplacer.bind(this)); var finalObject = JSON.parse(stringObject); return global.objectSizeof(finalObject); } groomCssProperties(object93, propertyName2) { var propertyNameWithoutBox = propertyName2.replace("box", ""); if (this.css.propertyHasStyle(propertyNameWithoutBox)) { delete object93[propertyName2]; } } groomRemainingProperties(object93, propertyName2, propertyValue) { } groomPermissionMethods(object93) { if (object93.enableWRITE) { delete object93.enableWRITE; } if (object93.disableWRITE) { delete object93.disableWRITE; } if (object93.enableREAD) { delete object93.enableREAD; } if (object93.disableREAD) { delete object93.disableREAD; } if (object93.enableDELETE) { delete object93.enableDELETE; } if (object93.disableDELETE) { delete object93.disableDELETE; } } groomBrowserMethods(object93) { if (object93.create) { delete object93.create; } if (object93.update) { delete object93.update; } if (object93.afterLoad) { delete object93.afterLoad; } } groomEntry(entry, object93) { var propertyName2 = this.getClassNameByEntry(entry); var propertyValue = this.getObjectByEntry(entry); this.groomPermissionMethods(object93); this.groomBrowserMethods(object93); this.groomBrowserEvents(object93); this.groomCssProperties(object93, propertyName2); this.groomRemainingProperties(object93, propertyName2, propertyValue); if (this.isUnifyObject(propertyName2, propertyValue)) { this.groomApplicationObject(propertyValue); } return object93; } groomApplicationObject(object93) { var entries = Object.entries(object93); for (var c31 = 0; c31 < entries.length; c31++) { var entry = entries[c31]; this.groomEntry(entry, object93); } return object93; } serializeEntry(entry, serializedObject2) { var propertyName2 = this.getClassNameByEntry(entry); var propertyValue = this.getObjectByEntry(entry); this.serializeProperty(propertyName2, propertyValue, serializedObject2); } serializeEntries(entries) { var serializedObject2 = new Object(); for (var c31 = 0; c31 < entries.length; c31++) { var entry = entries[c31]; this.serializeEntry(entry, serializedObject2); } return serializedObject2; } serialize(object93, is_root = true, cut) { var entries = Object.entries(object93); this.serializeEntries(entries); return this.createOuterObject(object93, serializedObject, is_root); } serializeServerProperty(object93, propertyName2, propertyValue) { object93[propertyName2] = propertyValue; } serializedUnifyObject(object93, propertyName2, propertyValue) { object93[propertyName2] = this.serialize(propertyValue, false); } serializeProperty(propertyName2, propertyValue, object93) { if (this.isServerValue(propertyName2, propertyValue)) { this.serializeServerProperty(object93, propertyName2, propertyValue); } if (this.isUnifyObject(propertyName2, propertyValue)) { this.serializedUnifyObject(object93, propertyName2, propertyValue); } return object93; } isArray(array) { if (!array) { return false; } return Array.isArray(array); } validateNumber(value2) { if (typeof value2 == "number") { return value2; } else { return false; } } validateString(value2) { if (typeof value2 == "string") { return value2; } else { return false; } } validateValue(value2) { if (typeof value2 == "string" || typeof value2 == "number" || typeof value2 == "boolean") { return value2; } else { return false; } } validateBoolean(value2) { if (typeof value2 == "boolean") { return value2; } else { return false; } } validateArray(values) { if (!this.isArray(values)) { return false; } for (var c31 = 0; c31 < values.length; c31++) { values[c31] = this.validateString(values[c31]); } return values; } is_allowed_value(value2) { if (this.is_int(value2)) { return true; } if (this.is_text(value2)) { return true; } if (this.is_boolean(value2)) { return true; } if (this.is_object(value2)) { return true; } return false; } is_float(value2) { if (typeof value2 == "number") { return true; } else { return false; } } is_number(value2) { if (typeof value2 == "number") { return true; } else { return false; } } is_object(value2) { if (typeof value2 == "object") { return true; } else { return false; } } is_text(value2) { if (typeof value2 == "string") { return true; } else { return false; } } is_string(value2) { if (typeof value2 == "string") { return true; } else { return false; } } is_boolean() { if (typeof value == "boolean") { return true; } else { return false; } } is_int(value2) { if (typeof value2 == "number") { return true; } else { return false; } } createOuterObjectWithRoot() { var objectName = this.getClassName(object); var output = new Object(); output[objectName] = serializedObject; return output; } createOuterObject(object93, serializedObject2, is_root) { if (is_root) { return this.createOuterObjectWithRoot(object93, serializedObject2); } else { return serializedObject2; } } consoleColors() { return consoleColors_default; } getFirstObjectFromEntries(entries) { var firstChild = entries[0][1]; if (firstChild) { return firstChild; } else { return object; } } getFirstChild(object93) { var entries = Object.entries(object93); if (entries[0]) { return this.getFirstObjectFromEntries(entries); } } }; String.prototype.replaceAll = /* @__PURE__ */ __name(function replaceAll(search, replace) { return this.split(search).join(replace); }, "replaceAll"); var tools_default = new tools2(); // framework/client/dom.js var dom = class { static { __name(this, "dom"); } addDOMToSelector = true; setElement() { var objectName = tools_default.createCSSClassName(object); element.className = this.getClassName(object.editable, objectName); } getClassName(editable, objectName) { if (editable) { return objectName + "Element"; } else { return objectName + "Grid grid"; } } createSetter(object93) { object93.__defineSetter__("text", function(value2) { if (typeof value2 == "number") { value2 = value2.toString(); } object93.__text = value2; object93.updateElementContent(); }); } createGetter(object93) { object93.__defineGetter__("text", function() { return object93.__text; }); } createSetterAndGetters(object93) { object93.__text = object93.text; this.createSetter(object93); this.createGetter(object93); } createDOMElements(object93, objectName) { object93.elements = []; if (object93.layers == 2) { object93.boxElement = this.createDiv(objectName, "box", object93.id); object93.elements.push(object93.boxElement); } object93.defaultElement = this.createDiv(objectName, "grid", object93.id); if (object93.useCustomElement) { object93.element = object93.customElement; } else { object93.element = object93.defaultElement; } object93.elements.push(object93.element); } addClasses(object93, objectName) { var type = "Element"; var mainClassName = objectName; object93.customElement.classList.add(mainClassName + type); object93.customElement.classList.add(type); object93.customElement.classList.add(this.device); object93.customElement.classList.add(this.tint); object93.customElement.classList.add(this.os); } updateZIndex(object93) { if (!object93.zIndex && object93.setZIndex) { object93.element.style["z-index"] = tools_default.getApplicationDepth(object93); if (object93.inverseZIndex) { object93.element.style["z-index"] = 1e3 - tools_default.getApplicationDepth(object93); } } } attachUnifyObjectToElements(object93) { for (var c31 = 0; c31 < object93.elements.length; c31++) { object93.elements[c31].object = object93; } } parseObject(object93) { var objectName = tools_default.createCSSClassName(object93); this.createDOMElements(object93, objectName); if (object93.customElement) { this.addClasses(object93, objectName); } else { object93.customElement = object93.defaultElement; } this.createSetterAndGetters(object93); object93.updateElementContent(); this.updateZIndex(object93); this.attachUnifyObjectToElements(object93); if (!object93.selector && object93.parent && object93.addToDom) { this.parseProperty(objectName, object93, object93.parent); } } addElementToDOMParent(object93, propertyValue) { if (propertyValue.propertyName[0] == "_") { object93.elements[object93.elements.length - 1].prepend(propertyValue.elements[0]); } else { if (object93.elements) { object93.elements[object93.elements.length - 1].appendChild(propertyValue.elements[0]); } } } addElementToBody(propertyValue) { document_default.body.appendChild(propertyValue.elements[0]); } parseProperty(propertyName2, propertyValue, object93) { if (tools_default.isUnifyObject(propertyName2, propertyValue)) { if (propertyValue.absolute) { this.addElementToBody(propertyValue); return true; } this.addElementToDOMParent(object93, propertyValue); } } parseInnerElements(object93) { var elements = object93.elements; for (var c31 = elements.length - 1; c31 > 0; c31--) { elements[c31 - 1].appendChild(elements[c31]); } if (object93.selector && this.addDOMToSelector) { this.appendToSelector(object93, elements); } } appendToSelector(object93, elements) { var selector = object93.selector; var element2 = document_default.querySelector(selector); if (element2) { element2.appendChild(elements[0]); } } createDiv(divName, type, id2) { var div = document_default.createElement("div"); var mainClassName = divName + tools_default.CamelCase(type.toUpperCase()); div.classList.add(mainClassName); if (id2) { div.classList.add(mainClassName.replace("_" + id2, "").replace(id2, "")); } div.classList.add(type); div.classList.add(this.device); div.classList.add(this.tint); div.classList.add(this.os); return div; } }; // framework/client/event.js var event = class { static { __name(this, "event"); } name; className; callback; }; // framework/client/eventManager.js var eventManager = class { static { __name(this, "eventManager"); } events = new Array(); eventTerms = new Array(); constructor() { var prototype = Object.getPrototypeOf(document.body); var innerPrototype = Object.getPrototypeOf(prototype); var objectProperties = Object.getOwnPropertyNames(innerPrototype); var eventProperties = objectProperties.filter(this.filterEvent); var properEventTerms = eventProperties.map(this.removeOn); this.eventTerms = properEventTerms; } filterEvent(name) { if (name[0] == "o" && name[1] == "n") { return true; } else { return false; } } removeOn(name) { return name.substr(2, name.length); } addClientEvent(className2, eventName, callback) { var newEvent = new event(); newEvent.className = className2; newEvent.name = eventName; newEvent.callback = callback; this.events.push(newEvent); } getClientEvents(classname, eventName) { var events = []; for (var c31 = 0; c31 < this.events.length; c31++) { var event2 = this.events[c31]; if (event2.className == classname && event2.name == eventName) { events.push(event2); } } return events; } parentHasEvent(object93, eventTerm) { if (!object93) { return false; } if (object93[eventTerm]) { return true; } if (object93.parent) { return this.parentHasEvent(object93.parent, eventTerm); } else { return false; } } update_value(object93) { if (object93.value && object93.value != "undefined") { object93._value = object93.value; } } createInputSetter(object93, element2) { object93.__defineSetter__("value", function(value2) { if (object93.datatype == "BOOLEAN") { object93._value = value2; element2.value = object93._value; } if (value2 && value2 != void 0 && value2 != "undefined") { object93._value = value2; element2.value = object93._value; } if (value2 == "") { object93._value = false; element2.value = ""; } if (typeof value2 == "number") { object93._value = value2; element2.value = object93._value; } }); } createUploadSetter(object93, element2) { object93.__defineSetter__("value", function(value2) { if (value2 != "undefined") { object93._value = value2; } if (element2.value) { } }); } createSetter(object93, element2) { this.update_value(object93); if (object93.inputType != "file") { this.createInputSetter(object93, element2); } else { this.createUploadSetter(object93, element2); } } createGetter(object93) { object93.__defineGetter__("value", function(value2) { if (typeof object93._value == "undefined") { return ""; } else { return object93._value; } }); } parseEvents(object93) { if (object93.defaultElement) { this.createSetter(object93, object93.defaultElement); this.createGetter(object93); } if (object93.customElement) { this.createSetter(object93, object93.customElement); this.createGetter(object93); } var eventTerms = this.eventTerms; for (var c31 = 0; c31 < eventTerms.length; c31++) { var eventTerm = eventTerms[c31]; this.parseEvent(object93, eventTerm); } } defineEventCallback(object93, element2, eventTerm) { var eventManager2 = this; if (!this.parentHasEvent(object93.parent, eventTerm) || object93.selector) { var eventNormalized = eventTerm.replace("box", ""); if (object93.getClassName() != "fileChooserSelectButton") { element2["on" + eventNormalized] = function(event2) { eventManager2.createEventCallback(event2, eventManager2); }; } } } createWindowResizeEventListener(object93) { } parseElement(object93, element2, eventTerm, box = false) { element2.object = object93; element2.eventTerm = eventTerm; this.defineEventCallback(object93, element2, eventTerm); } parseDefaultElement(object93, eventTerm) { if (object93[eventTerm]) { this.parseElement(object93, object93.defaultElement, eventTerm); if (object93.customElement) { this.parseElement(object93, object93.customElement, eventTerm); } } } parseBoxElement(object93, eventTerm) { if (object93["box" + tools_default.CamelCase(eventTerm)]) { if (object93.boxElement) { var element2 = object93.boxElement; } else { var element2 = object93.defaultElement; } this.parseElement(object93, element2, "box" + tools_default.CamelCase(eventTerm), true); } } parseEvent(object93, eventTerm) { this.parseDefaultElement(object93, eventTerm); this.parseBoxElement(object93, eventTerm); } callMethod(object93, event2, eventTerm) { if (object93[eventTerm]) { object93.lastEvent = eventTerm; object93[eventTerm](event2, object93); } } createEventListener(event2, object93, box = false) { var eventTerm = event2.type.replace("on", ""); if (box) { eventTerm = "box" + tools_default.CamelCase(eventTerm); } this.callMethod(object93, event2, eventTerm); if (!object93.isRoot && object93.parent) { if (object93.propegateEvent) { this.createEventListener(event2, object93.parent); } } } createEventListeners(event2, target, eventManager2, object93) { if (object93.boxElement && target.className == object93.boxElement.className) { eventManager2.createEventListener(event2, object93, true); } else if (target.className == object93.defaultElement.className) { eventManager2.createEventListener(event2, object93); } else if (target.className == object93.customElement.className) { eventManager2.createEventListener(event2, object93); } } logEvent(event2, target) { } createEventCallback(event2, eventManager2) { var target = event2.target; var object93 = target.object; if (!object93) { console.error("This element does not have an object", target); return false; } this.logEvent(event2, target); this.createEventListeners(event2, target, eventManager2, object93); } }; // framework/unify/socketMessage.js var socketMessage = class { static { __name(this, "socketMessage"); } id = 0; type = "promise"; data = false; }; // framework/client/promiseManager.js var promiseManager = class { static { __name(this, "promiseManager"); } promises = new Array(); messages = new Array(); socketManager; addPromise(promiseObject) { this.promises.push(promiseObject); } addMessage(message) { this.messages.push(message); } getPromiseByID(id2) { var promises = this.promises; for (var c31 = 0; c31 < promises.length; c31++) { var currentPromise = promises[c31]; if (currentPromise.id == id2) { return currentPromise; } } console.error("Promise with id " + id2 + " not found:", this); return false; } getMessageByID(id2) { var messages = this.messages; for (var c31 = 0; c31 < messages.length; c31++) { var message = messages[c31]; if (message.id == id2) { return message; } } } createPromiseFunction(messageID, object93 = false) { var promiseManager32 = this; function promiseFunction(resolveFunction) { var promiseObject = {}; promiseObject.id = messageID; promiseObject.resolve = resolveFunction; promiseObject.object = object93; promiseManager32.addPromise(promiseObject); } __name(promiseFunction, "promiseFunction"); return promiseFunction; } }; // framework/unify/clonedeep.js var LARGE_ARRAY_SIZE = 200; var HASH_UNDEFINED = "__lodash_hash_undefined__"; var MAX_SAFE_INTEGER = 9007199254740991; var argsTag = "[object Arguments]"; var arrayTag = "[object Array]"; var boolTag = "[object Boolean]"; var dateTag = "[object Date]"; var errorTag = "[object Error]"; var funcTag = "[object Function]"; var genTag = "[object GeneratorFunction]"; var mapTag = "[object Map]"; var numberTag = "[object Number]"; var objectTag = "[object Object]"; var promiseTag = "[object Promise]"; var regexpTag = "[object RegExp]"; var setTag = "[object Set]"; var stringTag = "[object String]"; var symbolTag = "[object Symbol]"; var weakMapTag = "[object WeakMap]"; var arrayBufferTag = "[object ArrayBuffer]"; var dataViewTag = "[object DataView]"; var float32Tag = "[object Float32Array]"; var float64Tag = "[object Float64Array]"; var int8Tag = "[object Int8Array]"; var int16Tag = "[object Int16Array]"; var int32Tag = "[object Int32Array]"; var uint8Tag = "[object Uint8Array]"; var uint8ClampedTag = "[object Uint8ClampedArray]"; var uint16Tag = "[object Uint16Array]"; var uint32Tag = "[object Uint32Array]"; var reRegExpChar = /[\\^$.*+?()[\]{}|]/g; var reFlags = /\w*$/; var reIsHostCtor = /^\[object .+?Constructor\]$/; var reIsUint = /^(?:0|[1-9]\d*)$/; var cloneableTags = {}; cloneableTags[argsTag] = cloneableTags[arrayTag] = cloneableTags[arrayBufferTag] = cloneableTags[dataViewTag] = cloneableTags[boolTag] = cloneableTags[dateTag] = cloneableTags[float32Tag] = cloneableTags[float64Tag] = cloneableTags[int8Tag] = cloneableTags[int16Tag] = cloneableTags[int32Tag] = cloneableTags[mapTag] = cloneableTags[numberTag] = cloneableTags[objectTag] = cloneableTags[regexpTag] = cloneableTags[setTag] = cloneableTags[stringTag] = cloneableTags[symbolTag] = cloneableTags[uint8Tag] = cloneableTags[uint8ClampedTag] = cloneableTags[uint16Tag] = cloneableTags[uint32Tag] = true; cloneableTags[errorTag] = cloneableTags[funcTag] = cloneableTags[weakMapTag] = false; var freeGlobal = typeof global == "object" && global && global.Object === Object && global; var freeSelf = typeof self == "object" && self && self.Object === Object && self; var root = freeGlobal || freeSelf || Function("return this")(); var freeExports = typeof exports == "object" && exports && !exports.nodeType && exports; var freeModule = freeExports && typeof module == "object" && module && !module.nodeType && module; var moduleExports = freeModule && freeModule.exports === freeExports; function addMapEntry(map, pair) { map.set(pair[0], pair[1]); return map; } __name(addMapEntry, "addMapEntry"); function addSetEntry(set, value2) { set.add(value2); return set; } __name(addSetEntry, "addSetEntry"); function arrayEach(array, iteratee) { var index = -1, length = array ? array.length : 0; while (++index < length) { if (iteratee(array[index], index, array) === false) { break; } } return array; } __name(arrayEach, "arrayEach"); function arrayPush(array, values) { var index = -1, length = values.length, offset = array.length; while (++index < length) { array[offset + index] = values[index]; } return array; } __name(arrayPush, "arrayPush"); function arrayReduce(array, iteratee, accumulator, initAccum) { var index = -1, length = array ? array.length : 0; if (initAccum && length) { accumulator = array[++index]; } while (++index < length) { accumulator = iteratee(accumulator, array[index], index, array); } return accumulator; } __name(arrayReduce, "arrayReduce"); function baseTimes(n, iteratee) { var index = -1, result = Array(n); while (++index < n) { result[index] = iteratee(index); } return result; } __name(baseTimes, "baseTimes"); function getValue(object93, key) { return object93 == null ? void 0 : object93[key]; } __name(getValue, "getValue"); function isHostObject(value2) { var result = false; if (value2 != null && typeof value2.toString != "function") { try { result = !!(value2 + ""); } catch (e) { } } return result; } __name(isHostObject, "isHostObject"); function mapToArray(map) { var index = -1, result = Array(map.size); map.forEach(function(value2, key) { result[++index] = [key, value2]; }); return result; } __name(mapToArray, "mapToArray"); function overArg(func, transform) { return function(arg2) { return func(transform(arg2)); }; } __name(overArg, "overArg"); function setToArray(set) { var index = -1, result = Array(set.size); set.forEach(function(value2) { result[++index] = value2; }); return result; } __name(setToArray, "setToArray"); var arrayProto = Array.prototype; var funcProto = Function.prototype; var objectProto = Object.prototype; var coreJsData = root["__core-js_shared__"]; var maskSrcKey = function() { var uid = /[^.]+$/.exec(coreJsData && coreJsData.keys && coreJsData.keys.IE_PROTO || ""); return uid ? "Symbol(src)_1." + uid : ""; }(); var funcToString = funcProto.toString; var hasOwnProperty = objectProto.hasOwnProperty; var objectToString = objectProto.toString; var reIsNative = RegExp( "^" + funcToString.call(hasOwnProperty).replace(reRegExpChar, "\\$&").replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g, "$1.*?") + "$" ); var Buffer2 = moduleExports ? root.Buffer : void 0; var Symbol2 = root.Symbol; var Uint8Array2 = root.Uint8Array; var getPrototype = overArg(Object.getPrototypeOf, Object); var objectCreate = Object.create; var propertyIsEnumerable = objectProto.propertyIsEnumerable; var splice = arrayProto.splice; var nativeGetSymbols = Object.getOwnPropertySymbols; var nativeIsBuffer = Buffer2 ? Buffer2.isBuffer : void 0; var nativeKeys = overArg(Object.keys, Object); var DataView = getNative(root, "DataView"); var Map = getNative(root, "Map"); var Promise2 = getNative(root, "Promise"); var Set = getNative(root, "Set"); var WeakMap = getNative(root, "WeakMap"); var nativeCreate = getNative(Object, "create"); var dataViewCtorString = toSource(DataView); var mapCtorString = toSource(Map); var promiseCtorString = toSource(Promise2); var setCtorString = toSource(Set); var weakMapCtorString = toSource(WeakMap); var symbolProto = Symbol2 ? Symbol2.prototype : void 0; var symbolValueOf = symbolProto ? symbolProto.valueOf : void 0; function Hash(entries) { var index = -1, length = entries ? entries.length : 0; this.clear(); while (++index < length) { var entry = entries[index]; this.set(entry[0], entry[1]); } } __name(Hash, "Hash"); function hashClear() { this.__data__ = nativeCreate ? nativeCreate(null) : {}; } __name(hashClear, "hashClear"); function hashDelete(key) { return this.has(key) && delete this.__data__[key]; } __name(hashDelete, "hashDelete"); function hashGet(key) { var data2 = this.__data__; if (nativeCreate) { var result = data2[key]; return result === HASH_UNDEFINED ? void 0 : result; } return hasOwnProperty.call(data2, key) ? data2[key] : void 0; } __name(hashGet, "hashGet"); function hashHas(key) { var data2 = this.__data__; return nativeCreate ? data2[key] !== void 0 : hasOwnProperty.call(data2, key); } __name(hashHas, "hashHas"); function hashSet(key, value2) { var data2 = this.__data__; data2[key] = nativeCreate && value2 === void 0 ? HASH_UNDEFINED : value2; return this; } __name(hashSet, "hashSet"); Hash.prototype.clear = hashClear; Hash.prototype["delete"] = hashDelete; Hash.prototype.get = hashGet; Hash.prototype.has = hashHas; Hash.prototype.set = hashSet; function ListCache(entries) { var index = -1, length = entries ? entries.length : 0; this.clear(); while (++index < length) { var entry = entries[index]; this.set(entry[0], entry[1]); } } __name(ListCache, "ListCache"); function listCacheClear() { this.__data__ = []; } __name(listCacheClear, "listCacheClear"); function listCacheDelete(key) { var data2 = this.__data__, index = assocIndexOf(data2, key); if (index < 0) { return false; } var lastIndex = data2.length - 1; if (index == lastIndex) { data2.pop(); } else { splice.call(data2, index, 1); } return true; } __name(listCacheDelete, "listCacheDelete"); function listCacheGet(key) { var data2 = this.__data__, index = assocIndexOf(data2, key); return index < 0 ? void 0 : data2[index][1]; } __name(listCacheGet, "listCacheGet"); function listCacheHas(key) { return assocIndexOf(this.__data__, key) > -1; } __name(listCacheHas, "listCacheHas"); function listCacheSet(key, value2) { var data2 = this.__data__, index = assocIndexOf(data2, key); if (index < 0) { data2.push([key, value2]); } else { data2[index][1] = value2; } return this; } __name(listCacheSet, "listCacheSet"); ListCache.prototype.clear = listCacheClear; ListCache.prototype["delete"] = listCacheDelete; ListCache.prototype.get = listCacheGet; ListCache.prototype.has = listCacheHas; ListCache.prototype.set = listCacheSet; function MapCache(entries) { var index = -1, length = entries ? entries.length : 0; this.clear(); while (++index < length) { var entry = entries[index]; this.set(entry[0], entry[1]); } } __name(MapCache, "MapCache"); function mapCacheClear() { this.__data__ = { "hash": new Hash(), "map": new (Map || ListCache)(), "string": new Hash() }; } __name(mapCacheClear, "mapCacheClear"); function mapCacheDelete(key) { return getMapData(this, key)["delete"](key); } __name(mapCacheDelete, "mapCacheDelete"); function mapCacheGet(key) { return getMapData(this, key).get(key); } __name(mapCacheGet, "mapCacheGet"); function mapCacheHas(key) { return getMapData(this, key).has(key); } __name(mapCacheHas, "mapCacheHas"); function mapCacheSet(key, value2) { getMapData(this, key).set(key, value2); return this; } __name(mapCacheSet, "mapCacheSet"); MapCache.prototype.clear = mapCacheClear; MapCache.prototype["delete"] = mapCacheDelete; MapCache.prototype.get = mapCacheGet; MapCache.prototype.has = mapCacheHas; MapCache.prototype.set = mapCacheSet; function Stack(entries) { this.__data__ = new ListCache(entries); } __name(Stack, "Stack"); function stackClear() { this.__data__ = new ListCache(); } __name(stackClear, "stackClear"); function stackDelete(key) { return this.__data__["delete"](key); } __name(stackDelete, "stackDelete"); function stackGet(key) { return this.__data__.get(key); } __name(stackGet, "stackGet"); function stackHas(key) { return this.__data__.has(key); } __name(stackHas, "stackHas"); function stackSet(key, value2) { var cache = this.__data__; if (cache instanceof ListCache) { var pairs = cache.__data__; if (!Map || pairs.length < LARGE_ARRAY_SIZE - 1) { pairs.push([key, value2]); return this; } cache = this.__data__ = new MapCache(pairs); } cache.set(key, value2); return this; } __name(stackSet, "stackSet"); Stack.prototype.clear = stackClear; Stack.prototype["delete"] = stackDelete; Stack.prototype.get = stackGet; Stack.prototype.has = stackHas; Stack.prototype.set = stackSet; function arrayLikeKeys(value2, inherited) { var result = isArray(value2) || isArguments(value2) ? baseTimes(value2.length, String) : []; var length = result.length, skipIndexes = !!length; for (var key in value2) { if ((inherited || hasOwnProperty.call(value2, key)) && !(skipIndexes && (key == "length" || isIndex(key, length)))) { result.push(key); } } return result; } __name(arrayLikeKeys, "arrayLikeKeys"); function assignValue(object93, key, value2) { var objValue = object93[key]; if (!(hasOwnProperty.call(object93, key) && eq(objValue, value2)) || value2 === void 0 && !(key in object93)) { object93[key] = value2; } } __name(assignValue, "assignValue"); function assocIndexOf(array, key) { var length = array.length; while (length--) { if (eq(array[length][0], key)) { return length; } } return -1; } __name(assocIndexOf, "assocIndexOf"); function baseAssign(object93, source) { return object93 && copyObject(source, keys(source), object93); } __name(baseAssign, "baseAssign"); function baseClone(value2, isDeep, isFull, customizer, key, object93, stack) { var result; if (customizer) { result = object93 ? customizer(value2, key, object93, stack) : customizer(value2); } if (result !== void 0) { return result; } if (!isObject(value2)) { return value2; } var isArr = isArray(value2); if (isArr) { result = initCloneArray(value2); if (!isDeep) { return copyArray(value2, result); } } else { var tag = getTag(value2), isFunc = tag == funcTag || tag == genTag; if (isBuffer(value2)) { return cloneBuffer(value2, isDeep); } if (tag == objectTag || tag == argsTag || isFunc && !object93) { if (isHostObject(value2)) { return object93 ? value2 : {}; } result = initCloneObject(isFunc ? {} : value2); if (!isDeep) { return copySymbols(value2, baseAssign(result, value2)); } } else { if (!cloneableTags[tag]) { return object93 ? value2 : {}; } result = initCloneByTag(value2, tag, baseClone, isDeep); } } stack || (stack = new Stack()); var stacked = stack.get(value2); if (stacked) { return stacked; } stack.set(value2, result); if (!isArr) { var props = isFull ? getAllKeys(value2) : keys(value2); } arrayEach(props || value2, function(subValue, key2) { if (props) { key2 = subValue; subValue = value2[key2]; } assignValue(result, key2, baseClone(subValue, isDeep, isFull, customizer, key2, value2, stack)); }); return result; } __name(baseClone, "baseClone"); function baseCreate(proto) { return isObject(proto) ? objectCreate(proto) : {}; } __name(baseCreate, "baseCreate"); function baseGetAllKeys(object93, keysFunc, symbolsFunc) { var result = keysFunc(object93); return isArray(object93) ? result : arrayPush(result, symbolsFunc(object93)); } __name(baseGetAllKeys, "baseGetAllKeys"); function baseGetTag(value2) { return objectToString.call(value2); } __name(baseGetTag, "baseGetTag"); function baseIsNative(value2) { if (!isObject(value2) || isMasked(value2)) { return false; } var pattern = isFunction(value2) || isHostObject(value2) ? reIsNative : reIsHostCtor; return pattern.test(toSource(value2)); } __name(baseIsNative, "baseIsNative"); function baseKeys(object93) { if (!isPrototype(object93)) { return nativeKeys(object93); } var result = []; for (var key in Object(object93)) { if (hasOwnProperty.call(object93, key) && key != "constructor") { result.push(key); } } return result; } __name(baseKeys, "baseKeys"); function cloneBuffer(buffer, isDeep) { if (isDeep) { return buffer.slice(); } var result = new buffer.constructor(buffer.length); buffer.copy(result); return result; } __name(cloneBuffer, "cloneBuffer"); function cloneArrayBuffer(arrayBuffer) { var result = new arrayBuffer.constructor(arrayBuffer.byteLength); new Uint8Array2(result).set(new Uint8Array2(arrayBuffer)); return result; } __name(cloneArrayBuffer, "cloneArrayBuffer"); function cloneDataView(dataView, isDeep) { var buffer = isDeep ? cloneArrayBuffer(dataView.buffer) : dataView.buffer; return new dataView.constructor(buffer, dataView.byteOffset, dataView.byteLength); } __name(cloneDataView, "cloneDataView"); function cloneMap(map, isDeep, cloneFunc) { var array = isDeep ? cloneFunc(mapToArray(map), true) : mapToArray(map); return arrayReduce(array, addMapEntry, new map.constructor()); } __name(cloneMap, "cloneMap"); function cloneRegExp(regexp) { var result = new regexp.constructor(regexp.source, reFlags.exec(regexp)); result.lastIndex = regexp.lastIndex; return result; } __name(cloneRegExp, "cloneRegExp"); function cloneSet(set, isDeep, cloneFunc) { var array = isDeep ? cloneFunc(setToArray(set), true) : setToArray(set); return arrayReduce(array, addSetEntry, new set.constructor()); } __name(cloneSet, "cloneSet"); function cloneSymbol(symbol) { return symbolValueOf ? Object(symbolValueOf.call(symbol)) : {}; } __name(cloneSymbol, "cloneSymbol"); function cloneTypedArray(typedArray, isDeep) { var buffer = isDeep ? cloneArrayBuffer(typedArray.buffer) : typedArray.buffer; return new typedArray.constructor(buffer, typedArray.byteOffset, typedArray.length); } __name(cloneTypedArray, "cloneTypedArray"); function copyArray(source, array) { var index = -1, length = source.length; array || (array = Array(length)); while (++index < length) { array[index] = source[index]; } return array; } __name(copyArray, "copyArray"); function copyObject(source, props, object93, customizer) { object93 || (object93 = {}); var index = -1, length = props.length; while (++index < length) { var key = props[index]; var newValue = customizer ? customizer(object93[key], source[key], key, object93, source) : void 0; assignValue(object93, key, newValue === void 0 ? source[key] : newValue); } return object93; } __name(copyObject, "copyObject"); function copySymbols(source, object93) { return copyObject(source, getSymbols(source), object93); } __name(copySymbols, "copySymbols"); function getAllKeys(object93) { return baseGetAllKeys(object93, keys, getSymbols); } __name(getAllKeys, "getAllKeys"); function getMapData(map, key) { var data2 = map.__data__; return isKeyable(key) ? data2[typeof key == "string" ? "string" : "hash"] : data2.map; } __name(getMapData, "getMapData"); function getNative(object93, key) { var value2 = getValue(object93, key); return baseIsNative(value2) ? value2 : void 0; } __name(getNative, "getNative"); var getSymbols = nativeGetSymbols ? overArg(nativeGetSymbols, Object) : stubArray; var getTag = baseGetTag; if (DataView && getTag(new DataView(new ArrayBuffer(1))) != dataViewTag || Map && getTag(new Map()) != mapTag || Promise2 && getTag(Promise2.resolve()) != promiseTag || Set && getTag(new Set()) != setTag || WeakMap && getTag(new WeakMap()) != weakMapTag) { getTag = /* @__PURE__ */ __name(function(value2) { var result = objectToString.call(value2), Ctor = result == objectTag ? value2.constructor : void 0, ctorString = Ctor ? toSource(Ctor) : void 0; if (ctorString) { switch (ctorString) { case dataViewCtorString: return dataViewTag; case mapCtorString: return mapTag; case promiseCtorString: return promiseTag; case setCtorString: return setTag; case weakMapCtorString: return weakMapTag; } } return result; }, "getTag"); } function initCloneArray(array) { var length = array.length, result = array.constructor(length); if (length && typeof array[0] == "string" && hasOwnProperty.call(array, "index")) { result.index = array.index; result.input = array.input; } return result; } __name(initCloneArray, "initCloneArray"); function initCloneObject(object93) { return typeof object93.constructor == "function" && !isPrototype(object93) ? baseCreate(getPrototype(object93)) : {}; } __name(initCloneObject, "initCloneObject"); function initCloneByTag(object93, tag, cloneFunc, isDeep) { var Ctor = object93.constructor; switch (tag) { case arrayBufferTag: return cloneArrayBuffer(object93); case boolTag: case dateTag: return new Ctor(+object93); case dataViewTag: return cloneDataView(object93, isDeep); case float32Tag: case float64Tag: case int8Tag: case int16Tag: case int32Tag: case uint8Tag: case uint8ClampedTag: case uint16Tag: case uint32Tag: return cloneTypedArray(object93, isDeep); case mapTag: return cloneMap(object93, isDeep, cloneFunc); case numberTag: case stringTag: return new Ctor(object93); case regexpTag: return cloneRegExp(object93); case setTag: return cloneSet(object93, isDeep, cloneFunc); case symbolTag: return cloneSymbol(object93); } } __name(initCloneByTag, "initCloneByTag"); function isIndex(value2, length) { length = length == null ? MAX_SAFE_INTEGER : length; return !!length && (typeof value2 == "number" || reIsUint.test(value2)) && (value2 > -1 && value2 % 1 == 0 && value2 < length); } __name(isIndex, "isIndex"); function isKeyable(value2) { var type = typeof value2; return type == "string" || type == "number" || type == "symbol" || type == "boolean" ? value2 !== "__proto__" : value2 === null; } __name(isKeyable, "isKeyable"); function isMasked(func) { return !!maskSrcKey && maskSrcKey in func; } __name(isMasked, "isMasked"); function isPrototype(value2) { var Ctor = value2 && value2.constructor, proto = typeof Ctor == "function" && Ctor.prototype || objectProto; return value2 === proto; } __name(isPrototype, "isPrototype"); function toSource(func) { if (func != null) { try { return funcToString.call(func); } catch (e) { } try { return func + ""; } catch (e) { } } return ""; } __name(toSource, "toSource"); function cloneDeep(value2) { return baseClone(value2, true, true); } __name(cloneDeep, "cloneDeep"); function eq(value2, other) { return value2 === other || value2 !== value2 && other !== other; } __name(eq, "eq"); function isArguments(value2) { return isArrayLikeObject(value2) && hasOwnProperty.call(value2, "callee") && (!propertyIsEnumerable.call(value2, "callee") || objectToString.call(value2) == argsTag); } __name(isArguments, "isArguments"); var isArray = Array.isArray; function isArrayLike(value2) { return value2 != null && isLength(value2.length) && !isFunction(value2); } __name(isArrayLike, "isArrayLike"); function isArrayLikeObject(value2) { return isObjectLike(value2) && isArrayLike(value2); } __name(isArrayLikeObject, "isArrayLikeObject"); var isBuffer = nativeIsBuffer || stubFalse; function isFunction(value2) { var tag = isObject(value2) ? objectToString.call(value2) : ""; return tag == funcTag || tag == genTag; } __name(isFunction, "isFunction"); function isLength(value2) { return typeof value2 == "number" && value2 > -1 && value2 % 1 == 0 && value2 <= MAX_SAFE_INTEGER; } __name(isLength, "isLength"); function isObject(value2) { var type = typeof value2; return !!value2 && (type == "object" || type == "function"); } __name(isObject, "isObject"); function isObjectLike(value2) { return !!value2 && typeof value2 == "object"; } __name(isObjectLike, "isObjectLike"); function keys(object93) { return isArrayLike(object93) ? arrayLikeKeys(object93) : baseKeys(object93); } __name(keys, "keys"); function stubArray() { return []; } __name(stubArray, "stubArray"); function stubFalse() { return false; } __name(stubFalse, "stubFalse"); var clonedeep_default = cloneDeep; // framework/server/console.js var Console = class { static { __name(this, "Console"); } objects = new Array(); currentObject = false; filename = false; enabled = false; enabledPaths = new Array(); rows = new Array(); tableName = false; maxChars = new Array(0, 0, 0, 0, 0, 0); padding = 4; setFilename(filename) { this.filename = filename; } createNameObject(parameter) { if (!parameter) { return false; } if (typeof parameter == "string") { return parameter; } var object93 = {}; object93[tools_default.getClassName(parameter)] = parameter; return object93; } getObjectByPath(objectA) { var objects = this.objects; for (var c31 = 0; c31 < objects.length; c31++) { var objectB = objects[c31]; if (objectA.applicationPathString == objectB.applicationPathString) { return objectB; } } return false; } enableLog(path2) { this.enabledPaths.push(path2); } register(object93) { this.log("--------------------------", object93.getClassName()); } sendObjectToDebugger(object93) { var parameters = {}; parameters.action = "addObject"; parameters.object = cycle.decycle(object93); var socketManager2 = global.socketManager; var clients = socketManager2.clients; for (var c31 = 0; c31 < clients.length; c31++) { var client2 = clients[c31]; if (this.enabled) { client2.debugMessage(parameters); } } } table(parameter1) { if (global.clusterID == 1) { console.table(parameter1); } } warning(parameter1, parameter2, parameter3) { if (global.clusterID == 1) { if (parameter3) { console.log(parameter1, parameter2, parameter3); } else if (parameter2) { console.log(parameter1, parameter2); } else if (parameter1) { console.log(tools_default.consoleColors().green(parameter1)); } } } valid(parameter1, parameter2, parameter3) { if (global.clusterID == 1) { if (parameter3) { console.log(parameter1, parameter2, parameter3); } else if (parameter2) { console.log(tools_default.consoleColors().cyan(parameter1), tools_default.consoleColors().cyan(parameter2)); } else if (parameter1) { console.log(tools_default.consoleColors().green(parameter1)); } } } log(parameter1, parameter2, parameter3) { if (parameter3) { console.log(parameter1, parameter2, parameter3); } else if (parameter2) { console.log(parameter1, parameter2); } else if (parameter1) { var parameter1 = clonedeep_default(parameter1); tools_default.cleanObject(parameter1); console.log(parameter1); } } setWidth(width) { this.maxChars = width; } addColumn(a32, b32, c31, d31) { var row181 = new Array(); if (a32) { row181.push(a32); this.maxChars[0] = Math.max(this.maxChars[0], a32.length); if (b32) { row181.push(b32); this.maxChars[1] = Math.max(this.maxChars[1], b32.length); } if (c31) { row181.push(c31); this.maxChars[2] = Math.max(this.maxChars[2], c31.length); } if (d31) { row181.push(d31); this.maxChars[3] = Math.max(this.maxChars[3], d31.length); } } this.rows.push(row181); } logTable() { for (var i = 0; i < this.rows.length; i++) { var row181 = this.rows[i]; if (row181[0]) { console.log(" ", row181[0].padEnd(this.maxChars[0] + this.padding), row181[1]); } else if (row181[0]) { } } console.log("\n"); this.rows = new Array(); } }; var console_default = new Console(); // framework/unify/querySQL.js var querySQL = class { static { __name(this, "querySQL"); } __className = "querySQL"; type = "select"; columns = new Array(); table; sync = true; values = new Array(); objects = new Array(); where = new Array(); groups = new Array(); union = new Array(); order = new Array(); direction; limit; count; from; to; joins = new Array(); filter = false; filterAddress = ""; constructor(query) { if (query) { var items = Object.entries(query); var queryString = ""; for (var c31 = 0; c31 < items.length; c31++) { var currentQuery = items[c31]; var name = tools_default.getClassNameByEntry(currentQuery); var value2 = tools_default.getObjectByEntry(currentQuery); this[name] = value2; } } } orderBy(order) { this.order.push(order); } addUnion(unionQuery) { this.union.push(unionQuery); } setFilterAddress(filter) { this.filterAddress = filter; } setFilter(filterAddress) { this.filter = filterAddress; } addJoin(join) { if (!join.name) { console.error("join requires name", this, join); } this.joins.push(join); } addColumn(columnName) { this.columns.push(columnName); } addGroup(columnName) { var group = new Object(); group.columnName = columnName; this.groups.push(group); } getWhereByColumnName(name) { for (var i = 0; i < this.where.length; i++) { var where = this.where[i]; if (where.columnName == name) { return where.value; } } return false; } find(columnName, value2, type = "=", quotation = true, or = false) { var where = {}; where.columnName = columnName; where.value = value2; where.type = type; where.quotation = quotation; where.or = or; this.where.push(where); } getColumnByName(name) { for (var i = 0; i < this.values.length; i++) { var column31 = this.values[i]; if (column31.name == name) { return column31; } } return false; } setColumn(columnName, value2) { if (typeof value2 == "boolean") { if (value2) { value2 = "true"; } else { value2 = "false"; } } var column31 = {}; column31.name = columnName; column31.value = value2; this.values.push(column31); } setValue(columnName, value2) { var column31 = {}; if (typeof value2 == "boolean") { if (value2) { value2 = "true"; } else { value2 = "false"; } } column31.name = columnName; column31.value = value2; this.values.push(column31); } set(columnName, value2) { var column31 = {}; column31.name = columnName; column31.value = value2; this.values.push(column31); } getColumnNames() { var columnNames = new Array(); for (var c31 = 0; c31 < this.values.length; c31++) { columnNames.push(this.values[c31].name); } return columnNames.join(", "); } getValues() { var values = new Array(); for (var c31 = 0; c31 < this.values.length; c31++) { values.push(this.values[c31].value); } return values; } extractColumns(object93, queryName) { var children = object93.getChildren(); this.addColumn(queryName + ".id"); for (var c31 = 0; c31 < children.length; c31++) { var child = children[c31]; if (child.datatype) { this.addColumn(queryName + "." + child.propertyName); } if (child.type == "table") { var name = child.propertyName; var columnName = name + "_id"; this.addColumn(queryName + "." + columnName); } } } /* doesnt make sense addRows( rows ) { for (var i = 0; i < rows.length; i++) { this.addRow( rows[i] ); } } */ addRow(row181) { const entries = Object.entries(row181); for (var i = 0; i < entries.length; i++) { var entry = entries[i]; this.addColumn(entry[0]); this.setColumn(entry[0], entry[1]); } } addObject(object93) { if (this.objects.length == 0) { this.table = tools_default.getTableName(object93); if (!this.table) { this.table = tools_default.getTableName(object93.parent); this.setColumn(object93.propertyName, object93.value); } else { if (object93.user && object93.user.id) { var properties = object93.getProperties(); for (var c31 = 0; c31 < properties.length; c31++) { var property2 = properties[c31]; if (property2.value == "userplaceholder" && property2.name != "user") { this.setColumn(property2.name + "_id", object93.user.id); } } } var children = object93.getChildren(); for (var c31 = 0; c31 < children.length; c31++) { var child = children[c31]; if (child.datatype) { if (typeof child.constraints == "object") { if (child.constraints.includes("AUTOINCREMENT")) { continue; } } this.setColumn(child.propertyName, child.value, child.extendsClass("table")); } if (child.type == "table" && child.extendsTable()) { var name = child.propertyName; var columnName = name + "_id"; var id2 = child.id; if (id2) { this.setColumn(columnName, id2); } } } } if (this.type.toLowerCase() == "update") { this.find("id", object93.id); } } this.objects.push(object93); } queryUpdateChildren() { var objects = this.objects; var id2 = 0; for (var c31 = 0; c31 < objects.length; c31++) { var object93 = objects[c31]; var values = new Array(); var children = object93.getChildren(); for (var c31 = 0; c31 < children.length; c31++) { var child = children[c31]; if (child.datatype) { values.push(child.value); } } values.push(object93.id); } } }; // framework/unify/joinSQL.js var joinSide = class { static { __name(this, "joinSide"); } table; column; }; var joinSQL = class extends querySQL { static { __name(this, "joinSQL"); } __className = "joinSQL"; type = "join"; left = new joinSide(); right = new joinSide(); joins = new Array(); querys = new Array(); addJoin(join) { this.joins.push(join); } addQuery(query) { this.querys.push(query); } }; // framework/server/collection/collection.queryChildren.js var queryChildren = class { static { __name(this, "queryChildren"); } createQuery(joinTableName, joinQuery, id2) { var query = new querySQL(); query.table = joinTableName; query.debug = joinQuery.debug; query.find(this.collection.getLeft() + "_id", id2); return query; } createJoin(joinQuery) { var join = new joinSQL(joinQuery); join.table = this.collection.tableName; join.name = "children"; join.left.table = join.name; join.right.column = this.collection.getRight() + "_id"; join.find("signed", "true"); return join; } query(joinQuery, filterObject) { var object93 = this.collection.getObject(); var leftTable = this.collection.getParentName(); var rightTable = object93.propertyName; var id2 = this.collection.getID(object93); var joinTableName = leftTable + "_" + rightTable; var query = this.createQuery(joinTableName, joinQuery, id2); var join = this.createJoin(joinQuery, join); if (filterObject) { this.collection.filterQuery(join, filterObject); if (filterObject.search) { this.collection.searchQuery(join, filterObject); } } query.addJoin(join); var result = global.database.query(query); return result; } }; // framework/server/collection/collection.queryRoot.js var queryRoot = class { static { __name(this, "queryRoot"); } prepareSelectQuery(query, object93, userQuery) { query.table = this.collection.getTableName(); query.type = "select"; query.setFilterAddress("./"); query.extractColumns(object93, query.table); query.find("signed", "true"); query.find("joined", "false"); query.debug = userQuery.debug; return query; } createChildrenJoin(joinTableName, collectionObject, object93) { var childObject = new collectionObject.object(); var childObjectName = tools_default.getClassName(childObject); var childrenJoin = new joinSQL(); childrenJoin.table = childObjectName; childrenJoin.joinType = "INNER"; childrenJoin.name = "childrenJoin"; childrenJoin.left.table = joinTableName; childrenJoin.left.column = collectionObject.getRight() + "_id"; childrenJoin.right.table = childrenJoin.name; childrenJoin.right.column = "id"; childrenJoin.find("signed", "true"); childrenJoin.find("joined", "true"); return childrenJoin; } createParentJoin(joinTableName, collectionObject) { var parentJoin = new joinSQL(); parentJoin.table = this.collection.getTableName(); parentJoin.joinType = "INNER"; parentJoin.name = "parentJoin"; parentJoin.left.table = joinTableName; parentJoin.left.column = collectionObject.getLeft() + "_id"; parentJoin.right.table = parentJoin.name; parentJoin.right.column = "id"; return parentJoin; } createJoinQuery(joinTableName, object93) { var query = new querySQL(); query.table = joinTableName; query.type = "select"; query.extractColumns(object93, "parentJoin"); return query; } searchChildrenJoin(child, childrenJoin, filterObject) { if (filterObject.search) { var searchables = filterObject.search.findPath("./" + child.propertyName); for (var i = 0; i < searchables.length; i++) { var currentSearchable = searchables[i]; var columnName = currentSearchable.getColumnName(); var searchValue = currentSearchable.getValue(); var operator = currentSearchable.getOperator(); if (!searchValue) { var searchValue = ""; } childrenJoin.find(columnName, searchValue, operator, true, true); } } } composeJoinQuery(query, collectionObject, childrenJoin, parentJoin) { query.addGroup(collectionObject.getLeft() + "_id"); query.addJoin(childrenJoin); query.addJoin(parentJoin); } createJoinTableName(collectionObject) { var leftTable = this.collection.getTableName(); var rightTable = collectionObject.propertyName; var joinTableName = leftTable + "_" + rightTable; return joinTableName; } queryFilterChild(unionQuery, object93, child, filterObject) { var collectionObject = object93[child.propertyName]; var tableName = collectionObject.tableName; var joinTableName = this.createJoinTableName(collectionObject); var joinQuery = this.createJoinQuery(joinTableName, object93); var childrenJoin = this.createChildrenJoin(joinTableName, collectionObject, object93); var parentJoin = this.createParentJoin(joinTableName, collectionObject); this.composeJoinQuery(joinQuery, collectionObject, childrenJoin, parentJoin); this.searchChildrenJoin(child, childrenJoin, filterObject); unionQuery.addUnion(joinQuery); } queryChildren(filterObject, unionQuery, client2) { var children = filterObject.getChildren(); var joined = false; for (var c31 = 0; c31 < children.length; c31++) { var child = children[c31]; if (child.type == "collection") { var object93 = new this.collection.object(); core.parse(object93, client2); if (filterObject.search && filterObject.search.findPath("./" + child.propertyName)) { this.queryFilterChild(unionQuery, object93, child, filterObject); } } } } query(userQuery, filterObject, client2) { var core3 = this.collection.getCore(); var object93 = new this.collection.object(); var query = new querySQL(); this.prepareSelectQuery(query, object93, userQuery); this.collection.searchQuery(query, filterObject); var unionQuery = new querySQL(); unionQuery.addUnion(query); this.collection.filterQuery(unionQuery, filterObject); this.queryChildren(filterObject, unionQuery, client2); unionQuery.debug = userQuery.debug; var parentResult = global.database.query(unionQuery); return parentResult; } }; // framework/server/collection/collection.queryCount.js var queryCount = class { static { __name(this, "queryCount"); } createJoin() { var join = new joinSQL(); join.table = this.tableName; join.name = "children"; join.left.table = join.name; join.right.column = this.getRight() + "_id"; join.find("signed", "true"); return join; } createQuery() { var object93 = this.getObject(); var leftTable = this.parentName; var rightTable = object93.propertyName; var id2 = this.collection.getID(); var joinTableName = leftTable + "_" + rightTable; var query = new querySQL(); query.table = joinTableName; query.find(this.getLeft() + "_id", id2); return query; } query() { var query = this.createQuery(); var join = this.createJoin(); query.addJoin(join); return global.database.query(query).length; } }; // framework/server/collection/collection.js var collection2 = class { static { __name(this, "collection"); } __className = "collection"; queryChildren = new queryChildren(); queryRoot = new queryRoot(); queryCount = new queryCount(); constructor() { this.queryChildren.collection = this; this.queryRoot.collection = this; this.queryCount.collection = this; } querySelect(userQuery, filterObject, client2) { if (!userQuery) { userQuery = new querySQL(); } if (this.parent) { return this.queryChildren.query(userQuery, filterObject); } else { return this.queryRoot.query(userQuery, filterObject, client2); } } countRows() { return this.queryCount.query(); } filterQuery(query, filterObject) { this.prepareOrder(query, filterObject); if (filterObject.direction) { query.direction = filterObject.direction; } if (filterObject.limit) { query.limit = filterObject.limit; } if (filterObject.from) { query.offset = filterObject.from; } if (filterObject.offset) { query.offset = filterObject.offset; } } prepareOrder(unionQuery, filterObject) { if (filterObject.order) { var searchable2 = filterObject.order.findPath(".")[0]; if (searchable2) { var columnName = searchable2.getColumnName(); unionQuery.orderBy(columnName); } } } searchQuery(query, filterObject) { if (filterObject.search) { var searchables = filterObject.search.findPath("."); for (var i = 0; i < searchables.length; i++) { var currentSearchable = searchables[i]; var columnName = currentSearchable.getColumnName(); var searchValue = currentSearchable.getValue(); var operator = currentSearchable.getOperator(); if (!searchValue) { var searchValue = ""; } query.find(columnName, searchValue, operator, true, true); } } } getID(object93) { var id2 = object93.id; if (!id2) { id2 = object93.parent.id; } if (!id2) { id2 = this.id; } return id2; } rowExists(id2) { var rows = this.rows; for (var i = 0; i < rows.length; i++) { var currentChild = rows[i]; if (id2 == currentChild.id) { return true; } } return false; } getRowByID(id2) { var rows = this.rows; for (var i = 0; i < rows.length; i++) { var currentChild = rows[i]; if (id2 == currentChild.id) { return currentChild; } } return false; } findID(rows, id2) { for (var i = 0; i < rows.length; i++) { var currentChild = rows[i]; console.log("find id", id2, currentChild.id); if (id2 == currentChild.id) { return true; } } return false; } delete(object93) { this.remove(object93); } remove(object93) { var row_id = object93.id; var joinTable = this.tableName + "_" + this.propertyName; var query = new querySQL(); query.type = "delete"; query.table = joinTable; query.find(this.getLeft() + "_id", this.parent.id); query.find(this.getRight() + "_id", row_id); global.database.query(query); } add(object93) { var row_id = object93.id; var query = new querySQL(); var parentName = this.getParentName(); var joinTable = parentName + "_" + this.propertyName; query.type = "insert"; query.table = joinTable; query.setColumn(this.getLeft() + "_id", this.parent.id); query.setColumn(this.getRight() + "_id", row_id); global.database.query(query); } getObject() { if (this.propertyName == "storageCollection") { return this.parent; } else { return this; } } queryInsert(parent_id, last_insert_id) { var joinTable = this.parentName + "_" + this.propertyName; var left = this.getLeft(); var right = this.getRight(); var query = new querySQL(); query.type = "insert"; query.table = joinTable; query.setValue(right + "_id", last_insert_id); query.setValue(left + "_id", parent_id); return global.database.query(query); } }; // framework/unify/emptyObject.js var emptyObject = class { static { __name(this, "emptyObject"); } }; // framework/unify/purify.js function _typeof(obj) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function(obj2) { return typeof obj2; } : function(obj2) { return obj2 && "function" == typeof Symbol && obj2.constructor === Symbol && obj2 !== Symbol.prototype ? "symbol" : typeof obj2; }, _typeof(obj); } __name(_typeof, "_typeof"); function _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf || /* @__PURE__ */ __name(function _setPrototypeOf2(o2, p2) { o2.__proto__ = p2; return o2; }, "_setPrototypeOf"); return _setPrototypeOf(o, p); } __name(_setPrototypeOf, "_setPrototypeOf"); function _isNativeReflectConstruct() { if (typeof Reflect === "undefined" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === "function") return true; try { Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function() { })); return true; } catch (e) { return false; } } __name(_isNativeReflectConstruct, "_isNativeReflectConstruct"); function _construct(Parent, args, Class) { if (_isNativeReflectConstruct()) { _construct = Reflect.construct; } else { _construct = /* @__PURE__ */ __name(function _construct2(Parent2, args2, Class2) { var a32 = [null]; a32.push.apply(a32, args2); var Constructor = Function.bind.apply(Parent2, a32); var instance = new Constructor(); if (Class2) _setPrototypeOf(instance, Class2.prototype); return instance; }, "_construct"); } return _construct.apply(null, arguments); } __name(_construct, "_construct"); function _toConsumableArray(arr) { return _arrayWithoutHoles(arr) || _iterableToArray(arr) || _unsupportedIterableToArray(arr) || _nonIterableSpread(); } __name(_toConsumableArray, "_toConsumableArray"); function _arrayWithoutHoles(arr) { if (Array.isArray(arr)) return _arrayLikeToArray(arr); } __name(_arrayWithoutHoles, "_arrayWithoutHoles"); function _iterableToArray(iter) { if (typeof Symbol !== "undefined" && iter[Symbol.iterator] != null || iter["@@iterator"] != null) return Array.from(iter); } __name(_iterableToArray, "_iterableToArray"); function _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === "string") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === "Object" && o.constructor) n = o.constructor.name; if (n === "Map" || n === "Set") return Array.from(o); if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); } __name(_unsupportedIterableToArray, "_unsupportedIterableToArray"); function _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) arr2[i] = arr[i]; return arr2; } __name(_arrayLikeToArray, "_arrayLikeToArray"); function _nonIterableSpread() { throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); } __name(_nonIterableSpread, "_nonIterableSpread"); var hasOwnProperty2 = Object.hasOwnProperty; var setPrototypeOf = Object.setPrototypeOf; var isFrozen = Object.isFrozen; var getPrototypeOf = Object.getPrototypeOf; var getOwnPropertyDescriptor = Object.getOwnPropertyDescriptor; var freeze = Object.freeze; var seal = Object.seal; var create = Object.create; var _ref = typeof Reflect !== "undefined" && Reflect; var apply = _ref.apply; var construct = _ref.construct; if (!apply) { apply = /* @__PURE__ */ __name(function apply2(fun, thisValue, args) { return fun.apply(thisValue, args); }, "apply"); } if (!freeze) { freeze = /* @__PURE__ */ __name(function freeze2(x) { return x; }, "freeze"); } if (!seal) { seal = /* @__PURE__ */ __name(function seal2(x) { return x; }, "seal"); } if (!construct) { construct = /* @__PURE__ */ __name(function construct2(Func, args) { return _construct(Func, _toConsumableArray(args)); }, "construct"); } var arrayForEach = unapply(Array.prototype.forEach); var arrayPop = unapply(Array.prototype.pop); var arrayPush2 = unapply(Array.prototype.push); var stringToLowerCase = unapply(String.prototype.toLowerCase); var stringMatch = unapply(String.prototype.match); var stringReplace = unapply(String.prototype.replace); var stringIndexOf = unapply(String.prototype.indexOf); var stringTrim = unapply(String.prototype.trim); var regExpTest = unapply(RegExp.prototype.test); var typeErrorCreate = unconstruct(TypeError); function unapply(func) { return function(thisArg) { for (var _len = arguments.length, args = new Array(_len > 1 ? _len - 1 : 0), _key = 1; _key < _len; _key++) { args[_key - 1] = arguments[_key]; } return apply(func, thisArg, args); }; } __name(unapply, "unapply"); function unconstruct(func) { return function() { for (var _len2 = arguments.length, args = new Array(_len2), _key2 = 0; _key2 < _len2; _key2++) { args[_key2] = arguments[_key2]; } return construct(func, args); }; } __name(unconstruct, "unconstruct"); function addToSet(set, array, transformCaseFunc) { transformCaseFunc = transformCaseFunc ? transformCaseFunc : stringToLowerCase; if (setPrototypeOf) { setPrototypeOf(set, null); } var l = array.length; while (l--) { var element2 = array[l]; if (typeof element2 === "string") { var lcElement = transformCaseFunc(element2); if (lcElement !== element2) { if (!isFrozen(array)) { array[l] = lcElement; } element2 = lcElement; } } set[element2] = true; } return set; } __name(addToSet, "addToSet"); function clone(object93) { var newObject = create(null); var property2; for (property2 in object93) { if (apply(hasOwnProperty2, object93, [property2])) { newObject[property2] = object93[property2]; } } return newObject; } __name(clone, "clone"); function lookupGetter(object93, prop) { while (object93 !== null) { var desc = getOwnPropertyDescriptor(object93, prop); if (desc) { if (desc.get) { return unapply(desc.get); } if (typeof desc.value === "function") { return unapply(desc.value); } } object93 = getPrototypeOf(object93); } function fallbackValue(element2) { console.warn("fallback value for", element2); return null; } __name(fallbackValue, "fallbackValue"); return fallbackValue; } __name(lookupGetter, "lookupGetter"); var html$1 = freeze(["a", "abbr", "acronym", "address", "area", "article", "aside", "audio", "b", "bdi", "bdo", "big", "blink", "blockquote", "body", "br", "button", "canvas", "caption", "center", "cite", "code", "col", "colgroup", "content", "data", "datalist", "dd", "decorator", "del", "details", "dfn", "dialog", "dir", "div", "dl", "dt", "element", "em", "fieldset", "figcaption", "figure", "font", "footer", "form", "h1", "h2", "h3", "h4", "h5", "h6", "head", "header", "hgroup", "hr", "html", "i", "img", "input", "ins", "kbd", "label", "legend", "li", "main", "map", "mark", "marquee", "menu", "menuitem", "meter", "nav", "nobr", "ol", "optgroup", "option", "output", "p", "picture", "pre", "progress", "q", "rp", "rt", "ruby", "s", "samp", "section", "select", "shadow", "small", "source", "spacer", "span", "strike", "strong", "style", "sub", "summary", "sup", "table", "tbody", "td", "template", "textarea", "tfoot", "th", "thead", "time", "tr", "track", "tt", "u", "ul", "var", "video", "wbr"]); var svg$1 = freeze(["svg", "a", "altglyph", "altglyphdef", "altglyphitem", "animatecolor", "animatemotion", "animatetransform", "circle", "clippath", "defs", "desc", "ellipse", "filter", "font", "g", "glyph", "glyphref", "hkern", "image", "line", "lineargradient", "marker", "mask", "metadata", "mpath", "path", "pattern", "polygon", "polyline", "radialgradient", "rect", "stop", "style", "switch", "symbol", "text", "textpath", "title", "tref", "tspan", "view", "vkern"]); var svgFilters = freeze(["feBlend", "feColorMatrix", "feComponentTransfer", "feComposite", "feConvolveMatrix", "feDiffuseLighting", "feDisplacementMap", "feDistantLight", "feFlood", "feFuncA", "feFuncB", "feFuncG", "feFuncR", "feGaussianBlur", "feImage", "feMerge", "feMergeNode", "feMorphology", "feOffset", "fePointLight", "feSpecularLighting", "feSpotLight", "feTile", "feTurbulence"]); var svgDisallowed = freeze(["animate", "color-profile", "cursor", "discard", "fedropshadow", "font-face", "font-face-format", "font-face-name", "font-face-src", "font-face-uri", "foreignobject", "hatch", "hatchpath", "mesh", "meshgradient", "meshpatch", "meshrow", "missing-glyph", "script", "set", "solidcolor", "unknown", "use"]); var mathMl$1 = freeze(["math", "menclose", "merror", "mfenced", "mfrac", "mglyph", "mi", "mlabeledtr", "mmultiscripts", "mn", "mo", "mover", "mpadded", "mphantom", "mroot", "mrow", "ms", "mspace", "msqrt", "mstyle", "msub", "msup", "msubsup", "mtable", "mtd", "mtext", "mtr", "munder", "munderover"]); var mathMlDisallowed = freeze(["maction", "maligngroup", "malignmark", "mlongdiv", "mscarries", "mscarry", "msgroup", "mstack", "msline", "msrow", "semantics", "annotation", "annotation-xml", "mprescripts", "none"]); var text = freeze(["#text"]); var html = freeze(["accept", "action", "align", "alt", "autocapitalize", "autocomplete", "autopictureinpicture", "autoplay", "background", "bgcolor", "border", "capture", "cellpadding", "cellspacing", "checked", "cite", "class", "clear", "color", "cols", "colspan", "controls", "controlslist", "coords", "crossorigin", "datetime", "decoding", "default", "dir", "disabled", "disablepictureinpicture", "disableremoteplayback", "download", "draggable", "enctype", "enterkeyhint", "face", "for", "headers", "height", "hidden", "high", "href", "hreflang", "id", "inputmode", "integrity", "ismap", "kind", "label", "lang", "list", "loading", "loop", "low", "max", "maxlength", "media", "method", "min", "minlength", "multiple", "muted", "name", "nonce", "noshade", "novalidate", "nowrap", "open", "optimum", "pattern", "placeholder", "playsinline", "poster", "preload", "pubdate", "radiogroup", "readonly", "rel", "required", "rev", "reversed", "role", "rows", "rowspan", "spellcheck", "scope", "selected", "shape", "size", "sizes", "span", "srclang", "start", "src", "srcset", "step", "style", "summary", "tabindex", "title", "translate", "type", "usemap", "valign", "value", "width", "xmlns", "slot"]); var svg = freeze(["accent-height", "accumulate", "additive", "alignment-baseline", "ascent", "attributename", "attributetype", "azimuth", "basefrequency", "baseline-shift", "begin", "bias", "by", "class", "clip", "clippathunits", "clip-path", "clip-rule", "color", "color-interpolation", "color-interpolation-filters", "color-profile", "color-rendering", "cx", "cy", "d", "dx", "dy", "diffuseconstant", "direction", "display", "divisor", "dur", "edgemode", "elevation", "end", "fill", "fill-opacity", "fill-rule", "filter", "filterunits", "flood-color", "flood-opacity", "font-family", "font-size", "font-size-adjust", "font-stretch", "font-style", "font-variant", "font-weight", "fx", "fy", "g1", "g2", "glyph-name", "glyphref", "gradientunits", "gradienttransform", "height", "href", "id", "image-rendering", "in", "in2", "k", "k1", "k2", "k3", "k4", "kerning", "keypoints", "keysplines", "keytimes", "lang", "lengthadjust", "letter-spacing", "kernelmatrix", "kernelunitlength", "lighting-color", "local", "marker-end", "marker-mid", "marker-start", "markerheight", "markerunits", "markerwidth", "maskcontentunits", "maskunits", "max", "mask", "media", "method", "mode", "min", "name", "numoctaves", "offset", "operator", "opacity", "order", "orient", "orientation", "origin", "overflow", "paint-order", "path", "pathlength", "patterncontentunits", "patterntransform", "patternunits", "points", "preservealpha", "preserveaspectratio", "primitiveunits", "r", "rx", "ry", "radius", "refx", "refy", "repeatcount", "repeatdur", "restart", "result", "rotate", "scale", "seed", "shape-rendering", "specularconstant", "specularexponent", "spreadmethod", "startoffset", "stddeviation", "stitchtiles", "stop-color", "stop-opacity", "stroke-dasharray", "stroke-dashoffset", "stroke-linecap", "stroke-linejoin", "stroke-miterlimit", "stroke-opacity", "stroke", "stroke-width", "style", "surfacescale", "systemlanguage", "tabindex", "targetx", "targety", "transform", "transform-origin", "text-anchor", "text-decoration", "text-rendering", "textlength", "type", "u1", "u2", "unicode", "values", "viewbox", "visibility", "version", "vert-adv-y", "vert-origin-x", "vert-origin-y", "width", "word-spacing", "wrap", "writing-mode", "xchannelselector", "ychannelselector", "x", "x1", "x2", "xmlns", "y", "y1", "y2", "z", "zoomandpan"]); var mathMl = freeze(["accent", "accentunder", "align", "bevelled", "close", "columnsalign", "columnlines", "columnspan", "denomalign", "depth", "dir", "display", "displaystyle", "encoding", "fence", "frame", "height", "href", "id", "largeop", "length", "linethickness", "lspace", "lquote", "mathbackground", "mathcolor", "mathsize", "mathvariant", "maxsize", "minsize", "movablelimits", "notation", "numalign", "open", "rowalign", "rowlines", "rowspacing", "rowspan", "rspace", "rquote", "scriptlevel", "scriptminsize", "scriptsizemultiplier", "selection", "separator", "separators", "stretchy", "subscriptshift", "supscriptshift", "symmetric", "voffset", "width", "xmlns"]); var xml = freeze(["xlink:href", "xml:id", "xlink:title", "xml:space", "xmlns:xlink"]); var MUSTACHE_EXPR = seal(/\{\{[\w\W]*|[\w\W]*\}\}/gm); var ERB_EXPR = seal(/<%[\w\W]*|[\w\W]*%>/gm); var DATA_ATTR = seal(/^data-[\-\w.\u00B7-\uFFFF]/); var ARIA_ATTR = seal(/^aria-[\-\w]+$/); var IS_ALLOWED_URI = seal( /^(?:(?:(?:f|ht)tps?|mailto|tel|callto|cid|xmpp):|[^a-z]|[a-z+.\-]+(?:[^a-z+.\-:]|$))/i // eslint-disable-line no-useless-escape ); var IS_SCRIPT_OR_DATA = seal(/^(?:\w+script|data):/i); var ATTR_WHITESPACE = seal( /[\u0000-\u0020\u00A0\u1680\u180E\u2000-\u2029\u205F\u3000]/g // eslint-disable-line no-control-regex ); var DOCTYPE_NAME = seal(/^html$/i); var getGlobal = /* @__PURE__ */ __name(function getGlobal2() { return typeof window === "undefined" ? null : window; }, "getGlobal"); var _createTrustedTypesPolicy = /* @__PURE__ */ __name(function _createTrustedTypesPolicy2(trustedTypes, document2) { if (_typeof(trustedTypes) !== "object" || typeof trustedTypes.createPolicy !== "function") { return null; } var suffix = null; var ATTR_NAME = "data-tt-policy-suffix"; if (document2.currentScript && document2.currentScript.hasAttribute(ATTR_NAME)) { suffix = document2.currentScript.getAttribute(ATTR_NAME); } var policyName = "dompurify" + (suffix ? "#" + suffix : ""); try { return trustedTypes.createPolicy(policyName, { createHTML: /* @__PURE__ */ __name(function createHTML(html2) { return html2; }, "createHTML"), createScriptURL: /* @__PURE__ */ __name(function createScriptURL(scriptUrl) { return scriptUrl; }, "createScriptURL") }); } catch (_) { console.warn("TrustedTypes policy " + policyName + " could not be created."); return null; } }, "_createTrustedTypesPolicy"); function createDOMPurify() { var window2 = arguments.length > 0 && arguments[0] !== void 0 ? arguments[0] : getGlobal(); var DOMPurify = /* @__PURE__ */ __name(function DOMPurify2(root2) { return createDOMPurify(root2); }, "DOMPurify"); DOMPurify.version = "2.3.10"; DOMPurify.removed = []; if (!window2 || !window2.document || window2.document.nodeType !== 9) { DOMPurify.isSupported = false; return DOMPurify; } var originalDocument = window2.document; var document2 = window2.document; var DocumentFragment = window2.DocumentFragment, HTMLTemplateElement = window2.HTMLTemplateElement, Node = window2.Node, Element = window2.Element, NodeFilter = window2.NodeFilter, _window$NamedNodeMap = window2.NamedNodeMap, NamedNodeMap = _window$NamedNodeMap === void 0 ? window2.NamedNodeMap || window2.MozNamedAttrMap : _window$NamedNodeMap, HTMLFormElement = window2.HTMLFormElement, DOMParser = window2.DOMParser, trustedTypes = window2.trustedTypes; var ElementPrototype = Element.prototype; var cloneNode = lookupGetter(ElementPrototype, "cloneNode"); var getNextSibling = lookupGetter(ElementPrototype, "nextSibling"); var getChildNodes = lookupGetter(ElementPrototype, "childNodes"); var getParentNode = lookupGetter(ElementPrototype, "parentNode"); if (typeof HTMLTemplateElement === "function") { var template = document2.createElement("template"); if (template.content && template.content.ownerDocument) { document2 = template.content.ownerDocument; } } var trustedTypesPolicy = _createTrustedTypesPolicy(trustedTypes, originalDocument); var emptyHTML = trustedTypesPolicy ? trustedTypesPolicy.createHTML("") : ""; var _document = document2, implementation = _document.implementation, createNodeIterator = _document.createNodeIterator, createDocumentFragment = _document.createDocumentFragment, getElementsByTagName = _document.getElementsByTagName; var importNode = originalDocument.importNode; var documentMode = {}; try { documentMode = clone(document2).documentMode ? document2.documentMode : {}; } catch (_) { } var hooks = {}; DOMPurify.isSupported = typeof getParentNode === "function" && implementation && typeof implementation.createHTMLDocument !== "undefined" && documentMode !== 9; var MUSTACHE_EXPR$1 = MUSTACHE_EXPR, ERB_EXPR$1 = ERB_EXPR, DATA_ATTR$1 = DATA_ATTR, ARIA_ATTR$1 = ARIA_ATTR, IS_SCRIPT_OR_DATA$1 = IS_SCRIPT_OR_DATA, ATTR_WHITESPACE$1 = ATTR_WHITESPACE; var IS_ALLOWED_URI$1 = IS_ALLOWED_URI; var ALLOWED_TAGS = null; var DEFAULT_ALLOWED_TAGS = addToSet({}, [].concat(_toConsumableArray(html$1), _toConsumableArray(svg$1), _toConsumableArray(svgFilters), _toConsumableArray(mathMl$1), _toConsumableArray(text))); var ALLOWED_ATTR = null; var DEFAULT_ALLOWED_ATTR = addToSet({}, [].concat(_toConsumableArray(html), _toConsumableArray(svg), _toConsumableArray(mathMl), _toConsumableArray(xml))); var CUSTOM_ELEMENT_HANDLING = Object.seal(Object.create(null, { tagNameCheck: { writable: true, configurable: false, enumerable: true, value: null }, attributeNameCheck: { writable: true, configurable: false, enumerable: true, value: null }, allowCustomizedBuiltInElements: { writable: true, configurable: false, enumerable: true, value: false } })); var FORBID_TAGS = null; var FORBID_ATTR = null; var ALLOW_ARIA_ATTR = true; var ALLOW_DATA_ATTR = true; var ALLOW_UNKNOWN_PROTOCOLS = false; var SAFE_FOR_TEMPLATES = false; var WHOLE_DOCUMENT = false; var SET_CONFIG = false; var FORCE_BODY = false; var RETURN_DOM = false; var RETURN_DOM_FRAGMENT = false; var RETURN_TRUSTED_TYPE = false; var SANITIZE_DOM = true; var KEEP_CONTENT = true; var IN_PLACE = false; var USE_PROFILES = {}; var FORBID_CONTENTS = null; var DEFAULT_FORBID_CONTENTS = addToSet({}, ["annotation-xml", "audio", "colgroup", "desc", "foreignobject", "head", "iframe", "math", "mi", "mn", "mo", "ms", "mtext", "noembed", "noframes", "noscript", "plaintext", "script", "style", "svg", "template", "thead", "title", "video", "xmp"]); var DATA_URI_TAGS = null; var DEFAULT_DATA_URI_TAGS = addToSet({}, ["audio", "video", "img", "source", "image", "track"]); var URI_SAFE_ATTRIBUTES = null; var DEFAULT_URI_SAFE_ATTRIBUTES = addToSet({}, ["alt", "class", "for", "id", "label", "name", "pattern", "placeholder", "role", "summary", "title", "value", "style", "xmlns"]); var MATHML_NAMESPACE = "http://www.w3.org/1998/Math/MathML"; var SVG_NAMESPACE = "http://www.w3.org/2000/svg"; var HTML_NAMESPACE = "http://www.w3.org/1999/xhtml"; var NAMESPACE = HTML_NAMESPACE; var IS_EMPTY_INPUT = false; var PARSER_MEDIA_TYPE; var SUPPORTED_PARSER_MEDIA_TYPES = ["application/xhtml+xml", "text/html"]; var DEFAULT_PARSER_MEDIA_TYPE = "text/html"; var transformCaseFunc; var CONFIG = null; var formElement = document2.createElement("form"); var isRegexOrFunction = /* @__PURE__ */ __name(function isRegexOrFunction2(testValue) { return testValue instanceof RegExp || testValue instanceof Function; }, "isRegexOrFunction"); var _parseConfig = /* @__PURE__ */ __name(function _parseConfig2(cfg) { if (CONFIG && CONFIG === cfg) { return; } if (!cfg || _typeof(cfg) !== "object") { cfg = {}; } cfg = clone(cfg); PARSER_MEDIA_TYPE = // eslint-disable-next-line unicorn/prefer-includes SUPPORTED_PARSER_MEDIA_TYPES.indexOf(cfg.PARSER_MEDIA_TYPE) === -1 ? PARSER_MEDIA_TYPE = DEFAULT_PARSER_MEDIA_TYPE : PARSER_MEDIA_TYPE = cfg.PARSER_MEDIA_TYPE; transformCaseFunc = PARSER_MEDIA_TYPE === "application/xhtml+xml" ? function(x) { return x; } : stringToLowerCase; ALLOWED_TAGS = "ALLOWED_TAGS" in cfg ? addToSet({}, cfg.ALLOWED_TAGS, transformCaseFunc) : DEFAULT_ALLOWED_TAGS; ALLOWED_ATTR = "ALLOWED_ATTR" in cfg ? addToSet({}, cfg.ALLOWED_ATTR, transformCaseFunc) : DEFAULT_ALLOWED_ATTR; URI_SAFE_ATTRIBUTES = "ADD_URI_SAFE_ATTR" in cfg ? addToSet( clone(DEFAULT_URI_SAFE_ATTRIBUTES), // eslint-disable-line indent cfg.ADD_URI_SAFE_ATTR, // eslint-disable-line indent transformCaseFunc // eslint-disable-line indent ) : DEFAULT_URI_SAFE_ATTRIBUTES; DATA_URI_TAGS = "ADD_DATA_URI_TAGS" in cfg ? addToSet( clone(DEFAULT_DATA_URI_TAGS), // eslint-disable-line indent cfg.ADD_DATA_URI_TAGS, // eslint-disable-line indent transformCaseFunc // eslint-disable-line indent ) : DEFAULT_DATA_URI_TAGS; FORBID_CONTENTS = "FORBID_CONTENTS" in cfg ? addToSet({}, cfg.FORBID_CONTENTS, transformCaseFunc) : DEFAULT_FORBID_CONTENTS; FORBID_TAGS = "FORBID_TAGS" in cfg ? addToSet({}, cfg.FORBID_TAGS, transformCaseFunc) : {}; FORBID_ATTR = "FORBID_ATTR" in cfg ? addToSet({}, cfg.FORBID_ATTR, transformCaseFunc) : {}; USE_PROFILES = "USE_PROFILES" in cfg ? cfg.USE_PROFILES : false; ALLOW_ARIA_ATTR = cfg.ALLOW_ARIA_ATTR !== false; ALLOW_DATA_ATTR = cfg.ALLOW_DATA_ATTR !== false; ALLOW_UNKNOWN_PROTOCOLS = cfg.ALLOW_UNKNOWN_PROTOCOLS || false; SAFE_FOR_TEMPLATES = cfg.SAFE_FOR_TEMPLATES || false; WHOLE_DOCUMENT = cfg.WHOLE_DOCUMENT || false; RETURN_DOM = cfg.RETURN_DOM || false; RETURN_DOM_FRAGMENT = cfg.RETURN_DOM_FRAGMENT || false; RETURN_TRUSTED_TYPE = cfg.RETURN_TRUSTED_TYPE || false; FORCE_BODY = cfg.FORCE_BODY || false; SANITIZE_DOM = cfg.SANITIZE_DOM !== false; KEEP_CONTENT = cfg.KEEP_CONTENT !== false; IN_PLACE = cfg.IN_PLACE || false; IS_ALLOWED_URI$1 = cfg.ALLOWED_URI_REGEXP || IS_ALLOWED_URI$1; NAMESPACE = cfg.NAMESPACE || HTML_NAMESPACE; if (cfg.CUSTOM_ELEMENT_HANDLING && isRegexOrFunction(cfg.CUSTOM_ELEMENT_HANDLING.tagNameCheck)) { CUSTOM_ELEMENT_HANDLING.tagNameCheck = cfg.CUSTOM_ELEMENT_HANDLING.tagNameCheck; } if (cfg.CUSTOM_ELEMENT_HANDLING && isRegexOrFunction(cfg.CUSTOM_ELEMENT_HANDLING.attributeNameCheck)) { CUSTOM_ELEMENT_HANDLING.attributeNameCheck = cfg.CUSTOM_ELEMENT_HANDLING.attributeNameCheck; } if (cfg.CUSTOM_ELEMENT_HANDLING && typeof cfg.CUSTOM_ELEMENT_HANDLING.allowCustomizedBuiltInElements === "boolean") { CUSTOM_ELEMENT_HANDLING.allowCustomizedBuiltInElements = cfg.CUSTOM_ELEMENT_HANDLING.allowCustomizedBuiltInElements; } if (SAFE_FOR_TEMPLATES) { ALLOW_DATA_ATTR = false; } if (RETURN_DOM_FRAGMENT) { RETURN_DOM = true; } if (USE_PROFILES) { ALLOWED_TAGS = addToSet({}, _toConsumableArray(text)); ALLOWED_ATTR = []; if (USE_PROFILES.html === true) { addToSet(ALLOWED_TAGS, html$1); addToSet(ALLOWED_ATTR, html); } if (USE_PROFILES.svg === true) { addToSet(ALLOWED_TAGS, svg$1); addToSet(ALLOWED_ATTR, svg); addToSet(ALLOWED_ATTR, xml); } if (USE_PROFILES.svgFilters === true) { addToSet(ALLOWED_TAGS, svgFilters); addToSet(ALLOWED_ATTR, svg); addToSet(ALLOWED_ATTR, xml); } if (USE_PROFILES.mathMl === true) { addToSet(ALLOWED_TAGS, mathMl$1); addToSet(ALLOWED_ATTR, mathMl); addToSet(ALLOWED_ATTR, xml); } } if (cfg.ADD_TAGS) { if (ALLOWED_TAGS === DEFAULT_ALLOWED_TAGS) { ALLOWED_TAGS = clone(ALLOWED_TAGS); } addToSet(ALLOWED_TAGS, cfg.ADD_TAGS, transformCaseFunc); } if (cfg.ADD_ATTR) { if (ALLOWED_ATTR === DEFAULT_ALLOWED_ATTR) { ALLOWED_ATTR = clone(ALLOWED_ATTR); } addToSet(ALLOWED_ATTR, cfg.ADD_ATTR, transformCaseFunc); } if (cfg.ADD_URI_SAFE_ATTR) { addToSet(URI_SAFE_ATTRIBUTES, cfg.ADD_URI_SAFE_ATTR, transformCaseFunc); } if (cfg.FORBID_CONTENTS) { if (FORBID_CONTENTS === DEFAULT_FORBID_CONTENTS) { FORBID_CONTENTS = clone(FORBID_CONTENTS); } addToSet(FORBID_CONTENTS, cfg.FORBID_CONTENTS, transformCaseFunc); } if (KEEP_CONTENT) { ALLOWED_TAGS["#text"] = true; } if (WHOLE_DOCUMENT) { addToSet(ALLOWED_TAGS, ["html", "head", "body"]); } if (ALLOWED_TAGS.table) { addToSet(ALLOWED_TAGS, ["tbody"]); delete FORBID_TAGS.tbody; } if (freeze) { freeze(cfg); } CONFIG = cfg; }, "_parseConfig"); var MATHML_TEXT_INTEGRATION_POINTS = addToSet({}, ["mi", "mo", "mn", "ms", "mtext"]); var HTML_INTEGRATION_POINTS = addToSet({}, ["foreignobject", "desc", "title", "annotation-xml"]); var COMMON_SVG_AND_HTML_ELEMENTS = addToSet({}, ["title", "style", "font", "a", "script"]); var ALL_SVG_TAGS = addToSet({}, svg$1); addToSet(ALL_SVG_TAGS, svgFilters); addToSet(ALL_SVG_TAGS, svgDisallowed); var ALL_MATHML_TAGS = addToSet({}, mathMl$1); addToSet(ALL_MATHML_TAGS, mathMlDisallowed); var _checkValidNamespace = /* @__PURE__ */ __name(function _checkValidNamespace2(element2) { var parent = getParentNode(element2); if (!parent || !parent.tagName) { parent = { namespaceURI: HTML_NAMESPACE, tagName: "template" }; } var tagName = stringToLowerCase(element2.tagName); var parentTagName = stringToLowerCase(parent.tagName); if (element2.namespaceURI === SVG_NAMESPACE) { if (parent.namespaceURI === HTML_NAMESPACE) { return tagName === "svg"; } if (parent.namespaceURI === MATHML_NAMESPACE) { return tagName === "svg" && (parentTagName === "annotation-xml" || MATHML_TEXT_INTEGRATION_POINTS[parentTagName]); } return Boolean(ALL_SVG_TAGS[tagName]); } if (element2.namespaceURI === MATHML_NAMESPACE) { if (parent.namespaceURI === HTML_NAMESPACE) { return tagName === "math"; } if (parent.namespaceURI === SVG_NAMESPACE) { return tagName === "math" && HTML_INTEGRATION_POINTS[parentTagName]; } return Boolean(ALL_MATHML_TAGS[tagName]); } if (element2.namespaceURI === HTML_NAMESPACE) { if (parent.namespaceURI === SVG_NAMESPACE && !HTML_INTEGRATION_POINTS[parentTagName]) { return false; } if (parent.namespaceURI === MATHML_NAMESPACE && !MATHML_TEXT_INTEGRATION_POINTS[parentTagName]) { return false; } return !ALL_MATHML_TAGS[tagName] && (COMMON_SVG_AND_HTML_ELEMENTS[tagName] || !ALL_SVG_TAGS[tagName]); } return false; }, "_checkValidNamespace"); var _forceRemove = /* @__PURE__ */ __name(function _forceRemove2(node) { arrayPush2(DOMPurify.removed, { element: node }); try { node.parentNode.removeChild(node); } catch (_) { try { node.outerHTML = emptyHTML; } catch (_2) { node.remove(); } } }, "_forceRemove"); var _removeAttribute = /* @__PURE__ */ __name(function _removeAttribute2(name, node) { try { arrayPush2(DOMPurify.removed, { attribute: node.getAttributeNode(name), from: node }); } catch (_) { arrayPush2(DOMPurify.removed, { attribute: null, from: node }); } node.removeAttribute(name); if (name === "is" && !ALLOWED_ATTR[name]) { if (RETURN_DOM || RETURN_DOM_FRAGMENT) { try { _forceRemove(node); } catch (_) { } } else { try { node.setAttribute(name, ""); } catch (_) { } } } }, "_removeAttribute"); var _initDocument = /* @__PURE__ */ __name(function _initDocument2(dirty) { var doc; var leadingWhitespace; if (FORCE_BODY) { dirty = "" + dirty; } else { var matches = stringMatch(dirty, /^[\r\n\t ]+/); leadingWhitespace = matches && matches[0]; } if (PARSER_MEDIA_TYPE === "application/xhtml+xml") { dirty = '' + dirty + ""; } var dirtyPayload = trustedTypesPolicy ? trustedTypesPolicy.createHTML(dirty) : dirty; if (NAMESPACE === HTML_NAMESPACE) { try { doc = new DOMParser().parseFromString(dirtyPayload, PARSER_MEDIA_TYPE); } catch (_) { } } if (!doc || !doc.documentElement) { doc = implementation.createDocument(NAMESPACE, "template", null); try { doc.documentElement.innerHTML = IS_EMPTY_INPUT ? "" : dirtyPayload; } catch (_) { } } var body61 = doc.body || doc.documentElement; if (dirty && leadingWhitespace) { body61.insertBefore(document2.createTextNode(leadingWhitespace), body61.childNodes[0] || null); } if (NAMESPACE === HTML_NAMESPACE) { return getElementsByTagName.call(doc, WHOLE_DOCUMENT ? "html" : "body")[0]; } return WHOLE_DOCUMENT ? doc.documentElement : body61; }, "_initDocument"); var _createIterator = /* @__PURE__ */ __name(function _createIterator2(root2) { return createNodeIterator.call( root2.ownerDocument || root2, root2, // eslint-disable-next-line no-bitwise NodeFilter.SHOW_ELEMENT | NodeFilter.SHOW_COMMENT | NodeFilter.SHOW_TEXT, null, false ); }, "_createIterator"); var _isClobbered = /* @__PURE__ */ __name(function _isClobbered2(elm) { return elm instanceof HTMLFormElement && (typeof elm.nodeName !== "string" || typeof elm.textContent !== "string" || typeof elm.removeChild !== "function" || !(elm.attributes instanceof NamedNodeMap) || typeof elm.removeAttribute !== "function" || typeof elm.setAttribute !== "function" || typeof elm.namespaceURI !== "string" || typeof elm.insertBefore !== "function"); }, "_isClobbered"); var _isNode = /* @__PURE__ */ __name(function _isNode2(object93) { return _typeof(Node) === "object" ? object93 instanceof Node : object93 && _typeof(object93) === "object" && typeof object93.nodeType === "number" && typeof object93.nodeName === "string"; }, "_isNode"); var _executeHook = /* @__PURE__ */ __name(function _executeHook2(entryPoint, currentNode, data2) { if (!hooks[entryPoint]) { return; } arrayForEach(hooks[entryPoint], function(hook) { hook.call(DOMPurify, currentNode, data2, CONFIG); }); }, "_executeHook"); var _sanitizeElements = /* @__PURE__ */ __name(function _sanitizeElements2(currentNode) { var content; _executeHook("beforeSanitizeElements", currentNode, null); if (_isClobbered(currentNode)) { _forceRemove(currentNode); return true; } if (regExpTest(/[\u0080-\uFFFF]/, currentNode.nodeName)) { _forceRemove(currentNode); return true; } var tagName = transformCaseFunc(currentNode.nodeName); _executeHook("uponSanitizeElement", currentNode, { tagName, allowedTags: ALLOWED_TAGS }); if (currentNode.hasChildNodes() && !_isNode(currentNode.firstElementChild) && (!_isNode(currentNode.content) || !_isNode(currentNode.content.firstElementChild)) && regExpTest(/<[/\w]/g, currentNode.innerHTML) && regExpTest(/<[/\w]/g, currentNode.textContent)) { _forceRemove(currentNode); return true; } if (tagName === "select" && regExpTest(/