/* Copyright (c) 2020, 2023, The Unified Company. This code is part of Unify. This program is free software; you can redistribute it and/or modify it under the terms of the ESA Software Community License - Strong Copyleft LICENSE, as published by the ESA. See the ESA Software Community License - Strong Copyleft LICENSE, for more details. https://unifyjs.org */ class documentTool { createElementDummy( object ) { object.createElement = function( tag ){ var object = new Object(); object.tag = tag; return false; } } createElementNSDummy( object ) { object.createElementNS = function( tag ){ var object = new Object(); object.tag = tag; return false; } } createDummyDomMethods( object ) { this.createElementDummy( object ); this.createElementNSDummy( object ); } bindCustomStyleTerms( object ) { object.customStyleTerms = ["background", "width", "height", "flexDirection", "color", "border", "margin", "padding", "boxBackground"]; } addBoxProperties( object ) { for( var c = 0; c < object.customStyleTerms.length; c++ ) { object.customStyleTerms[ object.customStyleTerms[ c ] ] = ""; object.customStyleTerms[ "box" + this.CamelCase( object.customStyleTerms[ c ] ) ] = ""; } } createCustomStyleTerms( object ) { this.bindCustomStyleTerms( object ); this.addBoxProperties( object ); } getDocument(){ if( typeof document == "undefined" ){ var object = new Object(); this.createDummyDomMethods( object ); this.createCustomStyleTerms( object ); this.type = "server"; return object; } 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 object = new documentTool(); export default object.getDocument();