qcobjects-sdk 2.4.61 → 2.4.64

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (67) hide show
  1. package/VERSION +1 -1
  2. package/build/QCObjects-SDK.js +97 -0
  3. package/build/css/base-modal.css +43 -0
  4. package/build/css/basic-layout-embedded-nav.css +14 -0
  5. package/build/css/basic-layout.css +76 -0
  6. package/build/css/components/horizontal-list.css +64 -0
  7. package/build/css/components/list.css +57 -0
  8. package/build/css/components/splashscreen.css +111 -0
  9. package/build/css/modal.css +46 -0
  10. package/build/index.cjs +4 -0
  11. package/build/index.js +27 -0
  12. package/build/index.mjs +2 -0
  13. package/build/js/org.qcobjects.cloud.auth.session.data.js +125 -0
  14. package/build/js/org.qcobjects.cloud.auth.session.usertoken.js +109 -0
  15. package/build/js/org.qcobjects.components.grid.js +81 -0
  16. package/build/js/org.qcobjects.components.js +292 -0
  17. package/build/js/org.qcobjects.components.list.js +71 -0
  18. package/build/js/org.qcobjects.components.notifications.js +179 -0
  19. package/build/js/org.qcobjects.components.slider.js +193 -0
  20. package/build/js/org.qcobjects.components.splashscreen.js +642 -0
  21. package/build/js/org.qcobjects.controllers.form.js +178 -0
  22. package/build/js/org.qcobjects.controllers.grid.js +258 -0
  23. package/build/js/org.qcobjects.controllers.js +34 -0
  24. package/build/js/org.qcobjects.controllers.list.js +228 -0
  25. package/build/js/org.qcobjects.controllers.slider.js +131 -0
  26. package/build/js/org.qcobjects.controllers.swagger.js +50 -0
  27. package/build/js/org.qcobjects.effects.js +417 -0
  28. package/build/js/org.qcobjects.i18n_messages.js +72 -0
  29. package/build/js/org.qcobjects.modal.controllers.js +38 -0
  30. package/build/js/org.qcobjects.modal.effects.js +51 -0
  31. package/build/js/org.qcobjects.models.js +34 -0
  32. package/build/js/org.qcobjects.tools.canvas.js +53 -0
  33. package/build/js/org.qcobjects.tools.js +64 -0
  34. package/build/js/org.qcobjects.tools.layouts.js +73 -0
  35. package/build/js/org.qcobjects.views.js +34 -0
  36. package/build/templates/components/modalyoulose.tpl.html +3 -0
  37. package/build/templates/components/modalyouwin.tpl.html +4 -0
  38. package/build/templates/components/splashscreen.tpl.html +128 -0
  39. package/build/templates/components/swagger-ui.tpl.html +22 -0
  40. package/package.json +3 -3
  41. package/public/QCObjects-SDK.js +696 -0
  42. package/public/QCObjects-SDK.js.map +7 -0
  43. package/public/css/base-modal.css +2 -0
  44. package/public/css/base-modal.css.map +7 -0
  45. package/public/css/basic-layout-embedded-nav.css +2 -0
  46. package/public/css/basic-layout-embedded-nav.css.map +7 -0
  47. package/public/css/basic-layout.css +2 -0
  48. package/public/css/basic-layout.css.map +7 -0
  49. package/public/css/components/horizontal-list.css +2 -0
  50. package/public/css/components/horizontal-list.css.map +7 -0
  51. package/public/css/components/list.css +2 -0
  52. package/public/css/components/list.css.map +7 -0
  53. package/public/css/components/splashscreen.css +2 -0
  54. package/public/css/components/splashscreen.css.map +7 -0
  55. package/public/css/modal.css +2 -0
  56. package/public/css/modal.css.map +7 -0
  57. package/public/index.cjs +4 -0
  58. package/public/index.js +27 -0
  59. package/public/index.mjs +2 -0
  60. package/public/templates/components/modalyoulose.tpl.html +3 -0
  61. package/public/templates/components/modalyouwin.tpl.html +4 -0
  62. package/public/templates/components/splashscreen.tpl.html +128 -0
  63. package/public/templates/components/swagger-ui.tpl.html +22 -0
  64. package/src/QCObjects-SDK.ts +0 -2
  65. package/src/js/org.qcobjects.controllers.list.ts +1 -1
  66. package/src/js/org.qcobjects.effects.ts +1 -1
  67. package/src/js/org.qcobjects.views.ts +1 -1
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../node_modules/qcobjects-sdk/src/QCObjects-SDK.js", "../node_modules/qcobjects-sdk/src/index.cjs", "../node_modules/qcobjects/src/QCObjects.js", "../node_modules/qcobjects/src/index.cjs", "../build/js/org.qcobjects.i18n_messages.js", "../build/js/org.qcobjects.models.js", "../build/js/org.qcobjects.effects.js", "../build/js/org.qcobjects.components.js", "../build/js/org.qcobjects.components.grid.js", "../build/js/org.qcobjects.components.list.js", "../build/js/org.qcobjects.components.slider.js", "../build/js/org.qcobjects.components.notifications.js", "../build/js/org.qcobjects.components.splashscreen.js", "../build/js/org.qcobjects.controllers.js", "../build/js/org.qcobjects.controllers.grid.js", "../build/js/org.qcobjects.controllers.list.js", "../build/js/org.qcobjects.controllers.slider.js", "../build/js/org.qcobjects.controllers.form.js", "../build/js/org.qcobjects.controllers.swagger.js", "../build/js/org.qcobjects.modal.controllers.js", "../build/js/org.qcobjects.views.js", "../build/js/org.qcobjects.tools.canvas.js", "../build/js/org.qcobjects.tools.layouts.js", "../build/js/org.qcobjects.cloud.auth.session.usertoken.js", "../build/js/org.qcobjects.cloud.auth.session.data.js", "../build/QCObjects-SDK.js"],
4
+ "sourcesContent": ["/**\n * QCObjects SDK 2.4\n * ________________\n *\n * Author: Jean Machuca <correojean@gmail.com>\n *\n * Cross Browser Javascript Framework for MVC Patterns\n * QuickCorp/QCObjects is licensed under the\n * GNU Lesser General Public License v3.0\n * [LICENSE] (https://github.com/QuickCorp/QCObjects/blob/master/LICENSE.txt)\n *\n * Permissions of this copyleft license are conditioned on making available\n * complete source code of licensed works and modifications under the same\n * license or the GNU GPLv3. Copyright and license notices must be preserved.\n * Contributors provide an express grant of patent rights. However, a larger\n * work using the licensed work through interfaces provided by the licensed\n * work may be distributed under different terms and without source code for\n * the larger work.\n *\n * Copyright (C) 2015 Jean Machuca,<correojean@gmail.com>\n *\n * Everyone is permitted to copy and distribute verbatim copies of this\n * license document, but changing it is not allowed.\n */\n(function __qcobjects_sdk__ (_top) {\n \"use strict\";\n if (typeof Object.defineProperty !== \"undefined\" && typeof _top !== \"undefined\"){\n try {\n Object.defineProperty(_top,\"__qcobjects_sdk__\", {\n enumerable: true,\n configurable: false,\n writable: false,\n value: __qcobjects_sdk__,\n });\n } catch (e){\n if (typeof _top.__qcobjects_sdk__ !== \"undefined\"){\n _top.__qcobjects_sdk__.__loaded__ = true;\n }\n }\n }\n\n if (typeof _top.__qcobjects_sdk__.__loaded__ === \"undefined\"){\n _top.__qcobjects_sdk__.__loaded__ = true;\n if (typeof _top === \"undefined\"){\n throw Error(\"Top context empty: It should either global, module or window\");\n }\n var global = _top;\n _top.global = global;\n var isBrowser = typeof window !== \"undefined\" && typeof window.self !== \"undefined\" && window === window.self;\n var isNodeCommonJS = (typeof module !== \"undefined\") ? (true): (false);\n var remoteImportsPath = CONFIG.get(\"remoteImportsPath\");\n var relativeImportPath = CONFIG.get(\"relativeImportPath\");\n var external = (!CONFIG.get(\"useLocalSDK\")) ? (true) : (false);\n if (external && !isNodeCommonJS) {\n CONFIG.set(\"remoteImportsPath\", \"https://sdk.qcobjects.dev/v2.4/src/js/\");\n } else {\n CONFIG.set(\"relativeImportPath\", \"qcobjects-sdk/src/js/\");\n }\n if (typeof _top._DOMCreateElement === \"undefined\") {\n _top._DOMCreateElement = function (elementName) {\n var _ret_;\n if (isBrowser) {\n _ret_ = document.createElement(elementName);\n } else {\n _ret_ = {};\n }\n return _ret_;\n };\n }\n var _imports_;\n if (isBrowser && !isNodeCommonJS) {\n _imports_ = [\n Import(\"org.qcobjects.i18n_messages\", function () {}, external),\n Import(\"org.qcobjects.models\", function () {}, external),\n Import(\"org.qcobjects.components\", function () {}, external),\n Import(\"org.qcobjects.components.grid\", function () {}, external),\n Import(\"org.qcobjects.components.list\", function () {}, external),\n Import(\"org.qcobjects.components.slider\", function () {}, external),\n Import(\"org.qcobjects.components.notifications\", function () {}, external),\n Import(\"org.qcobjects.components.splashscreen\", function () {}, external),\n Import(\"org.qcobjects.controllers\", function () {}, external),\n Import(\"org.qcobjects.controllers.grid\", function () {}, external),\n Import(\"org.qcobjects.controllers.list\", function () {}, external),\n Import(\"org.qcobjects.controllers.slider\", function () {}, external),\n Import(\"org.qcobjects.controllers.form\", function () {}, external),\n Import(\"org.qcobjects.controllers.swagger\", function () {}, external),\n Import(\"org.qcobjects.effects\", function () {}, external),\n Import(\"org.qcobjects.modal.controllers\", function () {}, external),\n Import(\"org.qcobjects.views\", function () {}, external),\n Import(\"org.qcobjects.tools.canvas\", function () {}, external),\n Import(\"org.qcobjects.tools.layouts\", function () {}, external),\n Import(\"org.qcobjects.cloud.auth.session.usertoken\", function () {}, external),\n Import(\"org.qcobjects.cloud.auth.session.data\", function () {}, external)\n ];\n } else {\n // non-browsers environment\n if (isNodeCommonJS){\n CONFIG.set(\"remoteImportsPath\", CONFIG.get(\"basePath\",\"\"));\n }\n \n var _relative_path_ = \"qcobjects-sdk/src/js/\";\n _imports_ = [\n Import(_relative_path_ + \"org.qcobjects.models\", function () {}, external),\n Import(_relative_path_ + \"org.qcobjects.components\", function () {}, external),\n Import(_relative_path_ + \"org.qcobjects.controllers\", function () {}, external),\n Import(_relative_path_ + \"org.qcobjects.views\", function () {}, external),\n Import(_relative_path_ + \"org.qcobjects.effects\", function () {}, external),\n Import(_relative_path_ + \"org.qcobjects.tools.canvas\", function () {}, external),\n Import(_relative_path_ + \"org.qcobjects.tools.layouts\", function () {}, external),\n Import(_relative_path_ + \"org.qcobjects.cloud.auth.session.usertoken\", function () {}, external),\n Import(_relative_path_ + \"org.qcobjects.cloud.auth.session.data\", function () {}, external)\n ];\n \n \n }\n const __start__ = GlobalSettings.__start__.bind(_top);\n _top._sdk_ = Promise.all(_imports_).then(()=>{\n CONFIG.set(\"useSDK\", true);\n CONFIG.set(\"remoteImportsPath\", remoteImportsPath);\n CONFIG.set(\"relativeImportPath\", relativeImportPath);\n __start__();\n });\n \n }\n\n}).call(null, (typeof module === \"object\" && typeof module.exports === \"object\") ? (\n module.exports = (typeof globalThis !== \"undefined\"\n ? globalThis\n : typeof self !== \"undefined\"\n ? self\n : typeof window !== \"undefined\"\n ? window\n : typeof global !== \"undefined\"\n ? global\n : {})\n) : ((typeof global === \"object\") ? (global) : (\n (typeof window === \"object\") ? (window) : ({})\n)));", "const sdk = require (\"./QCObjects-SDK\");\nmodule.exports = sdk;", "/**\n * QCObjects 2.4\n * ________________\n *\n * Author: Jean Machuca <correojean@gmail.com>\n *\n * Cross Browser Javascript Framework for MVC Patterns\n * QuickCorp/QCObjects is licensed under the\n * GNU Lesser General Public License v3.0\n * [LICENSE] (https://github.com/QuickCorp/QCObjects/blob/master/LICENSE.txt)\n *\n * Permissions of this copyleft license are conditioned on making available\n * complete source code of licensed works and modifications under the same\n * license or the GNU GPLv3. Copyright and license notices must be preserved.\n * Contributors provide an express grant of patent rights. However, a larger\n * work using the licensed work through interfaces provided by the licensed\n * work may be distributed under different terms and without source code for\n * the larger work.\n *\n * Copyright (C) 2015 Jean Machuca,<correojean@gmail.com>\n *\n * Everyone is permitted to copy and distribute verbatim copies of this\n * license document, but changing it is not allowed.\n */\n/*eslint no-unused-vars: \"off\"*/\n/*eslint no-redeclare: \"off\"*/\n/*eslint no-empty: \"off\"*/\n/*eslint strict: \"off\"*/\n\n/*eslint no-mixed-operators: \"off\"*/\n(function __qcobjects__ (_top) {\n \"use strict\";\n\n if (typeof Object.defineProperty !== \"undefined\" && typeof _top !== \"undefined\"){\n try {\n Object.defineProperty(_top,\"__qcobjects__\", {\n enumerable: true,\n configurable: false,\n writable: false,\n value: __qcobjects__,\n });\n } catch (e){\n if (typeof _top.__qcobjects__ !== \"undefined\"){\n _top.__qcobjects__.loaded = true;\n }\n }\n }\n if (typeof _top.__qcobjects__.loaded === \"undefined\"){\n _top.__qcobjects__.loaded = true;\n \n var global = _top;\n _top.global = global;\n \n var isDeno = (typeof window !== \"undefined\" && \"Deno\" in window);\n var isBrowser = (typeof window !== \"undefined\" && typeof window.self !== \"undefined\" && window === window.self) && !isDeno;\n var isNodeCommonJS = (typeof module !== \"undefined\") ? (true): (false);\n var deno_require = function (){ /* not yet implemented */};\n var _require_ = function (){\n return (isDeno)?(deno_require(...arguments)):(require(...arguments));\n };\n \n var _protected_code_ = function (_) {\n var __oldtoString = (typeof _.prototype !== \"undefined\") ? (_.prototype.toString) : (function () {\n return \"\";\n });\n if (typeof _.prototype !== \"undefined\") {\n _.prototype.toString = function () {\n var _protected_symbols = [\n \"__qcobjects__\",\n \"__qcobjects_sdk__\",\n \"__loaded__\",\n \"ComplexStorageCache\",\n \"css\",\n \"append\",\n \"attachIn\",\n \"debug\",\n \"info\",\n \"warn\",\n \"QC_Append\",\n \"set\",\n \"get\",\n \"done\",\n \"componentDone\",\n \"_new_\",\n \"__new__\",\n \"Class\",\n \"ClassFactory\",\n \"New\",\n \"Export\",\n \"Package\",\n \"Import\",\n \"subelements\",\n \"componentLoader\",\n \"buildComponents\",\n \"Controller\",\n \"View\",\n \"VO\",\n \"Service\",\n \"serviceLoader\",\n \"JSONService\",\n \"ConfigService\",\n \"SourceJS\",\n \"SourceCSS\",\n \"ArrayList\",\n \"ArrayCollection\",\n \"Effect\",\n \"Timer\",\n \"sum\",\n \"avg\",\n \"table\",\n \"max\",\n \"min\",\n \"range\",\n \"matrix\",\n \"matrix2d\",\n \"matrix3d\",\n \"unique\",\n \"uniqueId\",\n \"shortCode\",\n \"NamespaceRef\"\n ];\n var _ret_;\n if (_protected_symbols.includes(this.name)) {\n _ret_ = this.name + \"{ [QCObjects native code] }\";\n } else {\n _ret_ = __oldtoString.call(this);\n }\n return _ret_;\n };\n }\n };\n (_protected_code_)(Function);\n var _methods_ = function (_) {\n var _m = [];\n for (var i in _) {\n if ((typeof _[i]).toLowerCase() === \"function\") {\n _m.push(_[i]);\n }\n }\n return _m;\n };\n \n String.prototype.__mAll__ = function (regex) {\n // This is an alternative to old browsers that dont support String.prototype.matchAll\n // https://github.com/tc39/proposal-string-matchall\n var matches = [];\n this.replace(regex, function () {\n var match = Array.prototype.slice.call(arguments, 0, -2);\n match.input = arguments[arguments.length - 1];\n match.index = arguments[arguments.length - 2];\n matches.push(match);\n });\n return matches;\n };\n if (typeof String.prototype.matchAll === \"undefined\") {\n String.prototype.matchAll = String.prototype.__mAll__;\n }\n var _DOMCreateElement = function (elementName) {\n var _ret_;\n if (isBrowser) {\n _ret_ = document.createElement(elementName);\n } else {\n _ret_ = {};\n }\n return _ret_;\n };\n \n if (!isBrowser) {\n const fs = _require_(\"fs\");\n }\n \n var _DataStringify = function (data) {\n var getCircularReplacer = function () {\n var seen = new WeakSet();\n var _level = 0;\n return function (key, value) {\n if (typeof value === \"object\" && value !== null) {\n if (seen.has(value)) {\n _level += 1;\n return (_level <= 3) ? (_LegacyCopy(value)) : (null);\n }\n seen.add(value);\n }\n return value;\n };\n };\n return JSON.stringify(data, getCircularReplacer());\n };\n \n if (isBrowser) {\n var _subelements = function subelements(selector) {\n return [...this.querySelectorAll(selector)];\n };\n Element.prototype.subelements = _subelements;\n HTMLDocument.prototype.subelements = _subelements;\n HTMLElement.prototype.subelements = _subelements;\n if (typeof ShadowRoot !== \"undefined\") {\n ShadowRoot.prototype.subelements = _subelements;\n }\n }\n if (isBrowser) {\n try {\n _top = (typeof window.top !== \"undefined\") ? (window.top) : (window);\n _top[\"_allowed_\"] = true;\n } catch (e) {\n try {\n _top = document;\n _top[\"_allowed_\"] = true;\n } catch (e2) {\n try {\n _top = global;\n _top[\"_allowed_\"] = true;\n } catch (e3) {\n _top = {};\n _top[\"_allowed_\"] = true;\n }\n }\n }\n } else if (typeof global !== \"undefined\") {\n _top = global;\n }\n var _domain_, _basePath_;\n var _tag_filter_ = \"quick-component:not([loaded]),component:not([loaded])\";\n _basePath_ = (\n function () {\n var _basePath = \"\";\n if (isBrowser) {\n var baseURI = _top.document.baseURI.split(\"?\")[0].split(\"/\");\n baseURI.pop();\n _basePath = baseURI.join(\"/\") + \"/\";\n } else {\n var process;\n try {\n process = _require_(\"process\");\n } catch (e) {\n // not a process module\n }\n if (typeof process !== \"undefined\") {\n _basePath = `${process.cwd()}/`;\n } else {\n _basePath = \"\";\n }\n }\n return _basePath;\n }\n )();\n if (isBrowser) {\n /**\n * Polyfilling Promise\n */\n if (!(\"Promise\" in _top)) {\n _top.Promise = function (_f) {\n var _p = {\n then() {},\n catch () {},\n _then(response) {\n this.then.call(_p, response);\n },\n _catch(response) {\n this.catch.call(_p, response);\n }\n };\n _f.call(_p, _p._then, _p._catch);\n return _p;\n };\n }\n if (typeof _top.console === \"undefined\") {\n _top.console = function () {};\n _top.console.prototype.log = function (message) {};\n }\n \n _domain_ = (\n function () {\n return (typeof document !== \"undefined\" && document.domain !== \"\") ? (document.domain) : (\"localhost\");\n }\n )();\n \n var _secretKey = (\n function () {\n var __secretKey = _top[(![] + [])[((+!+[]) + (+!+[]))] + (typeof ![])[(+!+[])] + (typeof [])[((+!+[]) + (+!+[])) * ((+!+[]) + (+!+[]))] + (![] + [])[(+!+[])] + (!![] + [])[(+[])] + ([] + [] + [][\n []\n ])[(+[+!+[] + [+[]]]) / ((+!+[]) + (+!+[]))] + (typeof ![])[(+!+[])] + ([] + [] + [][\n []\n ])[(+!+[])]][\"h\" + (typeof ![])[(+!+[])] + (![] + [])[(+!+[] + ((+!+[]) + (+!+[])))] + (!![] + [])[(+[])]].toLowerCase();\n return __secretKey;\n }\n )();\n var is_phonegap = (\n function () {\n return (typeof cordova !== \"undefined\") ? (true) : (false);\n }\n )();\n \n } else {\n // This is only for code integrity purpose using non-browser implementations\n // like using node.js\n var _secretKey = \"secret\";\n _domain_ = \"localhost\";\n }\n \n _top._asyncLoad = [];\n var asyncLoad = function (callback, args) {\n var asyncCallback = {\n \"func\": callback,\n \"args\": args,\n \"dispatch\"() {\n this.func.apply(null, this.args);\n }\n };\n _top._asyncLoad.push(asyncCallback);\n return asyncCallback;\n };\n \n if (isBrowser) {\n var _fireAsyncLoad = function () {\n if (document.readyState === \"complete\") {\n _top._asyncLoad.map(function (fc) {\n fc.dispatch.call(fc);\n });\n }\n };\n document.onreadystatechange = _fireAsyncLoad;\n } else if (typeof _top.global !== \"undefined\") {\n _top.global._fireAsyncLoad = function () {\n _top._asyncLoad.map(function (fc) {\n fc.dispatch.call(fc);\n });\n };\n }\n \n _top.asyncLoad = asyncLoad;\n var Logger = function () {\n return {\n debugEnabled: true,\n infoEnabled: true,\n warnEnabled: true,\n debug(message) {\n if (this.debugEnabled) {\n console.log(\"\\x1b[35m%s\\x1b[0m\", `[DEBUG][${performance.now().toLocaleString()}] ${message}`);\n }\n },\n info(message) {\n var color;\n if (this.infoEnabled) {\n if (isBrowser) {\n color = \"\\x1b[103m%s\\x1b[0m\";\n } else {\n color = \"\\x1b[33m%s\\x1b[0m\";\n }\n console.info(color, `[INFO][${performance.now().toLocaleString()}] ${message}`);\n }\n },\n warn(message) {\n if (this.warnEnabled) {\n console.warn(\"\\x1b[31m%s\\x1b[0m\", `[WARN][${performance.now().toLocaleString()}] ${message}`);\n }\n }\n };\n };\n var logger = new Logger();\n logger.debugEnabled = false;\n logger.infoEnabled = true;\n _top.logger = logger;\n var Base64 = {\n _keyStr: \"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=\",\n encode(e) {\n var t = \"\";\n var n, r, i, s, o, u, a;\n var f = 0;\n e = Base64._utf8_encode(e);\n while (f < e.length) {\n n = e.charCodeAt(f++);\n r = e.charCodeAt(f++);\n i = e.charCodeAt(f++);\n s = n >> 2;\n o = (n & 3) << 4 | r >> 4;\n u = (r & 15) << 2 | i >> 6;\n a = i & 63;\n if (isNaN(r)) {\n u = a = 64;\n } else if (isNaN(i)) {\n a = 64;\n }\n t = t + this._keyStr.charAt(s) + this._keyStr.charAt(o) + this._keyStr.charAt(u) + this._keyStr.charAt(a);\n }\n return t;\n },\n decode(e) {\n var t = \"\";\n var n, r, i;\n var s, o, u, a;\n var f = 0;\n e = e.replace(/[^A-Za-z0-9+/=]/g, \"\");\n while (f < e.length) {\n s = this._keyStr.indexOf(e.charAt(f++));\n o = this._keyStr.indexOf(e.charAt(f++));\n u = this._keyStr.indexOf(e.charAt(f++));\n a = this._keyStr.indexOf(e.charAt(f++));\n n = s << 2 | o >> 4;\n r = (o & 15) << 4 | u >> 2;\n i = (u & 3) << 6 | a;\n t = t + String.fromCharCode(n);\n if (u !== 64) {\n t = t + String.fromCharCode(r);\n }\n if (a !== 64) {\n t = t + String.fromCharCode(i);\n }\n }\n t = Base64._utf8_decode(t);\n return t;\n },\n _utf8_encode(e) {\n e = e.replace(/rn/g, \"n\");\n var t = \"\";\n for (var n = 0; n < e.length; n++) {\n var r = e.charCodeAt(n);\n if (r < 128) {\n t += String.fromCharCode(r);\n } else if (r > 127 && r < 2048) {\n t += String.fromCharCode(r >> 6 | 192);\n t += String.fromCharCode(r & 63 | 128);\n } else {\n t += String.fromCharCode(r >> 12 | 224);\n t += String.fromCharCode(r >> 6 & 63 | 128);\n t += String.fromCharCode(r & 63 | 128);\n }\n }\n return t;\n },\n _utf8_decode(e) {\n var t = \"\";\n var n = 0;\n var r = 0;\n var c1 = 0;\n var c2 = 0;\n var c3;\n while (n < e.length) {\n r = e.charCodeAt(n);\n if (r < 128) {\n t += String.fromCharCode(r);\n n++;\n } else if (r > 191 && r < 224) {\n c2 = e.charCodeAt(n + 1);\n t += String.fromCharCode((r & 31) << 6 | c2 & 63);\n n += 2;\n } else {\n c2 = e.charCodeAt(n + 1);\n c3 = e.charCodeAt(n + 2);\n t += String.fromCharCode((r & 15) << 12 | (c2 & 63) << 6 | c3 & 63);\n n += 3;\n }\n }\n return t;\n }\n };\n var waitUntil = function (func, exp) {\n var _waitUntil = function (func, exp) {\n var maxWaitCycles = 2000;\n var _w = 0;\n var _t = setInterval(function () {\n if (exp.call()) {\n clearInterval(_t);\n func.call();\n logger.debug(\"Ejecuting \" + func.name + \" after wait\");\n } else {\n if (_w < maxWaitCycles) {\n _w += 1;\n logger.debug(\"WAIT UNTIL \" + func.name + \" is true, \" + _w.toString() + \" cycles\");\n } else {\n logger.debug(\"Max execution time for \" + func.name + \" expression until true\");\n clearInterval(_t);\n }\n }\n }, 1);\n };\n setTimeout(function () {\n _waitUntil(func, exp);\n }, 1);\n };\n if (typeof localStorage === \"undefined\") {\n /* Polyfill for localStorage */\n var localStorage = {\n getItem(name) {\n return (Object.hasOwnProperty.call(this, name)) ? (this[name]) : (null);\n },\n setItem(name, value) {\n this[name] = value;\n },\n removeItem(name) {\n delete this[name];\n }\n };\n /* end Polyfill for localStorage */\n }\n var ComplexStorageCache = function (params) {\n var object, load, alternate;\n object = params.index;\n if (typeof object !== \"undefined\") {\n load = params.load;\n alternate = params.alternate;\n var cachedObjectID = this.getID(object);\n var cachedResponse = localStorage.getItem(cachedObjectID);\n if (this.isEmpty(cachedResponse)) {\n var cachedNewResponse = load.call(null, {\n \"cachedObjectID\": cachedObjectID,\n \"cachedResponse\": cachedResponse,\n \"cache\": this\n });\n this.save(object, cachedNewResponse);\n logger.debug(\"RESPONSE OF {{cachedObjectID}} CACHED\".replace(\"{{cachedObjectID}}\", cachedObjectID));\n } else {\n var alternateResponse = alternate.call(null, {\n \"cachedObjectID\": cachedObjectID,\n \"cachedResponse\": cachedResponse,\n \"cache\": this\n });\n logger.debug(\"RESPONSE OF {{cachedObjectID}} IS ALREADY CACHED \".replace(\"{{cachedObjectID}}\", cachedObjectID));\n }\n \n } else {\n throw new Error(\"ComplexStorageCache: index is undefined\");\n }\n return this;\n };\n ComplexStorageCache.prototype.getItem = function (cachedObjectID) {\n var retrievedObject = localStorage.getItem(cachedObjectID);\n if (!this.isEmpty(retrievedObject)) {\n return JSON.parse(retrievedObject);\n } else {\n return null;\n }\n };\n ComplexStorageCache.prototype.setItem = function (cachedObjectID, value) {\n localStorage.setItem(cachedObjectID, _DataStringify(value));\n };\n ComplexStorageCache.prototype.isEmpty = function (object) {\n var r = false;\n switch (true) {\n case (typeof object === \"undefined\"):\n case (typeof object === \"string\" && object === \"\"):\n case (typeof object === \"string\" && object === \"undefined\"):\n case (typeof object === \"number\" && object === 0):\n case (object === null):\n r = true;\n break;\n default:\n r = false;\n }\n return r;\n };\n ComplexStorageCache.prototype.getID = function (object) {\n var cachedObjectID;\n if (typeof object !== \"undefined\") {\n cachedObjectID = \"cachedObject_\" + Base64.encode(_DataStringify(object).replace(/\\{|\\}|,/g, \"_\"));\n }\n return cachedObjectID;\n };\n ComplexStorageCache.prototype.save = function (object, cachedNewResponse) {\n var cachedObjectID = this.getID(object);\n logger.debug(\"CACHING THE RESPONSE OF {{cachedObjectID}} \".replace(\"{{cachedObjectID}}\", cachedObjectID));\n this.setItem(cachedObjectID, cachedNewResponse);\n };\n ComplexStorageCache.prototype.getCached = function (object) {\n var cachedObjectID = this.getID(object);\n return this.getItem(cachedObjectID);\n };\n ComplexStorageCache.prototype.clear = function () {\n Object.keys(localStorage).filter(function (k) {\n return k.startsWith(\"cachedObject_\");\n }).map(function (c) {\n localStorage.removeItem(c);\n });\n };\n \n /**\n * Detecting passive events feature\n *\n * https://github.com/WICG/EventListenerOptions/blob/gh-pages/explainer.md#feature-detection\n **/\n \n // Test via a getter in the options object to see if the passive property is accessed\n if (isBrowser) {\n var supportsPassive = false;\n try {\n var opts = Object.defineProperty({}, \"passive\", {\n get() {\n supportsPassive = true;\n return supportsPassive;\n }\n });\n window.addEventListener(\"testPassive\", null, opts);\n window.removeEventListener(\"testPassive\", null, opts);\n } catch (e) {}\n var captureFalse = function () {\n return (supportsPassive) ? ({\n passive: true\n }) : (false);\n };\n \n // Use our detect's results. passive applied if supported, capture will be false either way.\n //elem.addEventListener('touchstart', fn, captureFalse);\n \n }\n \n \n /**\n * Basic Type of all elements\n */\n if (isBrowser) {\n Element.prototype.find = function (tag) {\n var _oo = [];\n var _tags = document.subelements(tag);\n _tags.map(function (_tt, _t) {\n if ((typeof _tags[_t] !== \"undefined\") && _tags[_t].parentNode.tagName === this.parentNode.tagName) {\n _oo.push(_Cast(_tt, (new Object())));\n }\n });\n return _oo;\n };\n }\n \n /**\n * Primary instance ID of all objects\n */\n var __instanceID;\n // Adaptation of Production steps of ECMA-262, Edition 5, 15.2.3.5\n // Reference: http://es5.github.io/#x15.2.3.5\n var _Object_Create = (function () {\n \n // make a safe reference to Object.prototype.hasOwnProperty\n var hasOwn = Object.prototype.hasOwnProperty;\n \n return function (O) {\n // 1. If Type(O) is not Object or Null throw a TypeError exception.\n if (typeof O !== \"object\") {\n throw TypeError(\"Object prototype may only be an Object or null. The type is \" + typeof (O));\n }\n \n // 2. Let obj be the result of creating a new object as if by the\n //\t\texpression new Object() where Object is the standard built-in\n //\t\tconstructor with that name\n // 3. Set the [[Prototype]] internal property of obj to O.\n var QCObjects = function () {};\n QCObjects.prototype = O;\n var obj = new QCObjects();\n \n // Let's not keep a stray reference to O...\n \n // 4. If the argument Properties is present and not undefined, add\n //\t\town properties to obj as if by calling the standard built-in\n //\t\tfunction Object.defineProperties with arguments obj and\n //\t\tProperties.\n if (arguments.length > 1) {\n // Object.defineProperties does ToObject on its first argument.\n var Properties = Object(arguments[1]);\n for (var prop in Properties) {\n if (hasOwn.call(Properties, prop)) {\n obj[prop] = Properties[prop];\n }\n }\n }\n \n // 5. Return obj\n return obj;\n };\n })();\n \n // Object.assign Polyfilling\n // Reference: https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Object/assign#Polyfill\n if (typeof Object.assign !== \"function\") {\n // Must be writable: true, enumerable: false, configurable: true\n Object.defineProperty(Object, \"assign\", {\n value: function assign(target, varArgs) { // .length of function is 2\n \"use strict\";\n if (target === null) { // TypeError if undefined or null\n throw new TypeError(\"Cannot convert undefined or null to object\");\n }\n \n var to = Object(target);\n \n for (var index = 1; index < arguments.length; index++) {\n var nextSource = arguments[index];\n \n if (nextSource !== null) { // Skip over if undefined or null\n for (var nextKey in nextSource) {\n // Avoid bugs when hasOwnProperty is shadowed\n if (Object.prototype.hasOwnProperty.call(nextSource, nextKey)) {\n to[nextKey] = nextSource[nextKey];\n }\n }\n }\n }\n return to;\n },\n writable: true,\n configurable: true\n });\n }\n \n var __is_raw_class__ = function (o_c) {\n return (typeof o_c === \"function\" && o_c.toString().startsWith(\"class\")) ? (true) : (false);\n };\n \n var _LegacyCopy = function (obj) {\n var _value_;\n switch (true) {\n case typeof obj === \"string\":\n _value_ = obj;\n break;\n case typeof obj === \"number\":\n _value_ = obj;\n break;\n case typeof obj === \"object\":\n _value_ = Object.assign({}, obj);\n break;\n case typeof obj === \"function\":\n _value_ = obj.bind({});\n break;\n case __is_raw_class__(obj):\n _value_ = class extends obj {};\n break;\n default:\n break;\n }\n return _value_;\n };\n \n \n var _QC_CLASSES = {};\n var _QC_PACKAGES = {};\n var _QC_PACKAGES_IMPORTED = [];\n var _QC_READY_LISTENERS = [];\n \n /**\n * Returns the object or function name\n *\n * @param Object or function\n */\n var ObjectName = function (o) {\n var ret = \"\";\n if (typeof o === \"function\" && Object.hasOwnProperty.call(o, \"name\") && o.name !== \"\") {\n ret = o.name;\n } else if (typeof o !== \"undefined\" && typeof o.constructor === \"function\" && o.constructor.name !== \"\") {\n ret = o.constructor.name;\n } else if (typeof o !== \"undefined\" && typeof o.constructor === \"object\") {\n ret = o.constructor.toString().replace(/\\[(.*?)\\]/g, \"$1\").split(\" \").slice(1).join(\"\");\n }\n return ret;\n };\n \n /**\n * Casts an object to another object class type\n *\n * @param {Object} obj_source\n * @param {Object} obj_dest\n */\n var _Cast = function (obj_source, obj_dest) {\n for (var v in obj_source) {\n if (typeof obj_source[v] !== \"undefined\") {\n try {\n obj_dest[v] = obj_source[v];\n } catch (e) {\n \n }\n }\n }\n return obj_dest;\n };\n \n /**\n * Casts an object to another object class type. Only properties\n *\n * @param {Object} obj_source\n * @param {Object} obj_dest\n */\n var _CastProps = function (obj_source, obj_dest) {\n for (var v in obj_source) {\n if (typeof obj_source[v] !== \"undefined\" && typeof obj_source[v] !== \"function\") {\n try {\n obj_dest[v] = obj_source[v];\n } catch (e) {\n // DO NOTHING\n }\n } else if (typeof obj_source[v] === \"function\") {\n try {\n obj_dest[v] = obj_source[v].bind(obj_dest);\n } catch (e) {\n logger.warn(e);\n }\n }\n }\n return obj_dest;\n };\n \n /**\n * Internal use to determine the forbidden names for classes\n * Reserved words\n *\n * @param {String} name\n * @param {Object} type\n * @param {Object} definition\n */\n var __is__forbidden_name__ = function () {\n return ([\"__proto__\", \"prototype\", \"Object\", \"Map\", \"defineProperty\", \"indexOf\", \"toString\", \"__instanceID\"].indexOf(arguments[0]) !== -1) ? (true) : (false);\n };\n \n /**\n * Determine the type of the Object for any QCObjects Object\n *\n * @param {Object} object\n */\n var __getType__ = function __getType__(o_c) {\n var _ret_ = \"\";\n switch (true) {\n case __is_raw_class__(o_c) && !!o_c.name:\n _ret_ = o_c.name;\n break;\n case typeof o_c === \"object\" &&\n (!!o_c.constructor &&\n !!o_c.constructor.name) \n && o_c.constructor.name !== \"\":\n _ret_ = o_c.constructor.name;\n break;\n case (!!o_c && !!o_c.__classType) && o_c.__classType !== \"\":\n _ret_ = o_c.__classType;\n break;\n case (!!o_c && !!o_c.__definition) && (!!o_c.__definition.__classType) && o_c.__definition.__classType !== \"\":\n _ret_ = o_c.__definition.__classType;\n break;\n case typeof o_c === \"function\" && !!o_c.name:\n _ret_ = o_c.name;\n break;\n default:\n _ret_ = ObjectName(o_c);\n break;\n }\n return _ret_;\n };\n \n /**\n * Returns if a class or object is from a determinated type\n * @param {Object} object\n * @param {String} typeName\n */\n var is_a = function is_a(obj, typeName) {\n return (typeof obj !== \"undefined\" && obj !== null &&\n (((isQCObjects_Class(obj) || isQCObjects_Object(obj)) && (obj.hierarchy().includes(typeName))) ||\n __getType__(obj) === typeName ||\n ObjectName(obj) === typeName ||\n typeof obj === typeName)) ? (true) : (false);\n };\n \n \n var __make_global__ = function (f) {\n if (typeof f !== \"undefined\") {\n if (isBrowser) {\n try {\n _top[f.name] = f;\n window[f.name] = f;\n } catch (e) {}\n } else if (typeof global !== \"undefined\") {\n if (!Object.hasOwnProperty.call(global, f.name)) {\n global[f.name] = f;\n }\n }\n }\n \n };\n \n var __register_class__ = function (_class_, __namespace) {\n var name = _class_.name || __getType__(_class_);\n _class_.__definition.__classType = name;\n if (typeof __namespace !== \"undefined\"){\n _class_.__definition.__namespace = __namespace;\n }\n _QC_CLASSES[name] = _class_;\n _top[name] = _QC_CLASSES[name];\n return _top[name];\n };\n \n var RegisterClass = function (_class_, __namespace) {\n return __register_class__(_class_, __namespace);\n };\n __make_global__(RegisterClass);\n \n /**\n * Creates new object class of another object\n *\n * @param {String} name\n * @param {Object} type\n * @param {Object} definition\n */\n var Class = function () {\n var _types_ = {};\n var name, type, definition;\n \n switch (arguments.length) {\n case 0:\n return class {};\n case 1:\n name = arguments[0];\n type = class {};\n definition = {};\n break;\n case 2:\n name = arguments[0];\n type = class {};\n definition = arguments[1];\n break;\n case 3:\n name = arguments[0];\n type = arguments[1];\n definition = arguments[2];\n break;\n default:\n break;\n }\n \n if (typeof type !== \"function\") {\n throw new Error(\"Class type must be a function or class\");\n }\n \n if (__is__forbidden_name__.call(this, name)) {\n throw new Error(`${name} is not an allowed word in the name of a class`);\n }\n \n if (typeof type[\"__definition\"] !== \"undefined\") {\n definition[\"__definition\"] = Object.assign(_LegacyCopy(type.__definition), type);\n }\n \n _types_[type.name] = type;\n \n if (typeof definition === \"undefined\" || definition === null) {\n definition = {};\n } else {\n definition = _LegacyCopy(definition);\n }\n \n /* hack to prevent duplicate __instanceID */\n if (typeof definition[\"__instanceID\"] !== \"undefined\") {\n delete definition[\"__instanceID\"];\n }\n \n _QC_CLASSES[name] = class extends _types_[type.name] {\n __classType = name;\n __definition = {\n ...definition\n };\n \n static hierarchy(__class__) {\n var __classType = function (o_c) {\n return (Object.hasOwnProperty.call(o_c, \"__classType\")) ? (o_c.__classType) : (__getType__.call(__class__, o_c));\n };\n var __hierarchy__proto__ = (c) => {\n return (typeof c !== \"undefined\" && typeof c.__proto__ !== \"undefined\" && c.__proto__ !== null) ? (((__classType(c) !== \"\") ? ([__classType(c)]) : ([])).concat(__hierarchy__proto__(c.__proto__))) : ([]);\n };\n \n if (typeof __class__ === \"undefined\" || __class__ === null) {\n __class__ = this;\n }\n var __hierarchy = [];\n __hierarchy.push(__classType(__class__));\n __hierarchy = __hierarchy.concat(__hierarchy__proto__(__class__.__proto__));\n return __hierarchy;\n }\n \n static getParentClass() {\n return Object.getPrototypeOf(this.prototype.constructor);\n }\n \n constructor() {\n var _o_;\n if (arguments.length > 0) {\n _o_ = {\n ...arguments[0]\n };\n } else {\n _o_ = {};\n }\n super(_o_);\n \n let self = this;\n __instanceID = (typeof __instanceID === \"undefined\" || __instanceID === null) ? (0) : (__instanceID + 1);\n if (!self.__instanceID) {\n Object.defineProperty(self, \"__instanceID\", {\n value: __instanceID,\n writable: false\n });\n }\n \n if (typeof self.__definition !== \"undefined\") {\n Object.keys(self.__definition).filter(function (k) {\n return isNaN(k) && ![\"name\", \"__instanceID\", \"__classType\", \"__definition\"].includes(k);\n }).forEach(function (key) {\n if (typeof self.__definition[key] === \"function\") {\n self[key] = self.__definition[key].bind(self);\n } else {\n self[key] = self.__definition[key];\n }\n });\n }\n _methods_(_QC_CLASSES[self.__classType]).map(function (m) {\n self[m.name] = m.bind(self);\n });\n _methods_(self.__definition).map(function (m) {\n self[m.name] = m.bind(self);\n });\n\n if (!!self[\"body\"]){\n if (typeof self.__definition === \"undefined\" || (!Object.hasOwnProperty.call(self.__definition, \"body\")) || typeof self.__definition.body === \"undefined\") {\n try {\n if (isBrowser) {\n self[\"body\"] = _DOMCreateElement(self.__definition.__classType);\n } else {\n self[\"body\"] = {};\n }\n } catch (e) {\n self[\"body\"] = {};\n }\n } else if (Object.hasOwnProperty.call(self.__definition, \"body\")) {\n self[\"body\"] = self.__definition.body;\n } \n }\n \n \n try {\n if (typeof self.__new__ === \"function\") {\n self.__new__.call(self, _o_);\n } else if (typeof super.__new__ === \"function\") {\n self.__new__ = super.__new__.bind(self);\n self.__new__.call(self, _o_);\n }\n if (typeof self === \"object\" && Object.hasOwnProperty.call(self, \"_new_\") && typeof self._new_.isCalled === \"undefined\") {\n try {\n self._new_.call(self, _o_);\n self._new_.isCalled = true;\n } catch (e) {\n logger.warn(`${self.__classType}._new_() failed with error: ${e}`);\n }\n }\n } catch (e) {\n logger.warn(e);\n }\n }\n \n __new__(_o_) {\n _CastProps(_o_, this);\n }\n _new_() {}\n \n getClass() {\n return Object.getPrototypeOf(this.constructor);\n }\n \n css(_css) {\n if (typeof this[\"body\"] !== \"undefined\" && this[\"body\"][\"style\"] !== \"undefined\") {\n logger.debug(\"body style\");\n this[\"body\"][\"style\"] = _Cast(_css, this[\"body\"][\"style\"]);\n }\n return this[\"body\"][\"style\"];\n }\n \n hierarchy() {\n var __instance__ = this;\n return this.getClass().hierarchy(__instance__);\n }\n \n \n append(child) {\n logger.debug(\"append: start\");\n if (is_a(child, \"Component\")) {\n logger.debug(\"append: child is a Component\");\n logger.debug(`appending the body of ${child.name}`);\n }\n var child = (arguments.length > 0) ? (arguments[0]) : (this[\"body\"]);\n if (typeof this[\"body\"] !== \"undefined\") {\n logger.debug(\"append element\");\n if (arguments.lenght > 0) {\n logger.debug(\"append to element\");\n this[\"body\"].append(child);\n if (typeof this[\"childs\"] === \"undefined\") {\n this[\"childs\"] = [];\n }\n this[\"childs\"].push(child);\n } else {\n if (isBrowser) {\n logger.debug(\"append to body\");\n document.body.append(child);\n }\n }\n }\n }\n \n attachIn(tag) {\n if (isBrowser) {\n var tags = document.subelements(tag);\n for (var i = 0, j = tags.length; i < j; i++) {\n tags[i].append(this);\n }\n } else {\n throw new Error(\"attachIn not yet implemented for non browser platforms\");\n }\n }\n \n };\n \n // remove the keys from definition that exist in the prototype\n \n _QC_CLASSES[name] = _CastProps(definition, _QC_CLASSES[name]);\n _QC_CLASSES[name][\"__definition\"] = definition;\n _QC_CLASSES[name][\"__definition\"][\"__classType\"] = name;\n _QC_CLASSES[name][\"__definition\"][\"__new__\"] = function __new__(_o_) {\n _CastProps(_o_, this);\n };\n \n _top[name] = _QC_CLASSES[name];\n \n return _top[name];\n };\n \n Class.prototype.toString = function () {\n return \"Class(name, type, definition) { [QCObjects native code] }\";\n };\n \n /**\n * Returns the QCObjects Class Factory of a given ClassName\n *\n * @param {String} name\n */\n \n var ClassFactory = function (className) {\n var _classFactory;\n if (className !== null && className.indexOf(\".\") > -1) {\n var packageName = className.split(\".\").slice(0, className.split(\".\").length - 1).join(\".\");\n var _className = className.split(\".\").slice(-1).join(\"\");\n var _package = Package(packageName);\n var packageClasses = (typeof _package !== \"undefined\") ? (_package.filter(classFactory => {\n return isQCObjects_Class(classFactory) &&\n (classFactory.__definition.__classType === _className || (typeof classFactory === \"function\" && !!classFactory.name) ) ;\n }).reverse()) : ([]);\n if (packageClasses.length > 0) {\n _classFactory = packageClasses[0];\n } else {\n throw Error (`Class ${className} not found.`);\n }\n } else if (className !== null && Object.hasOwnProperty.call(_QC_CLASSES, className)) {\n _classFactory = _QC_CLASSES[className];\n }\n return _classFactory;\n };\n \n if (isBrowser) {\n Element.prototype.append = function QC_Append(child) {\n if (isQCObjects_Object(child) || typeof child.body !== \"undefined\") {\n this.appendChild(child.body);\n } else {\n this.appendChild(child);\n }\n };\n \n /**\n * A replacement for direct using of innerHTML\n * use: [element].render('content') where 'content' is the string corresponding\n * to the DOM to insert in the element\n **/\n Element.prototype.render = function QC_Render(content) {\n var _self = this;\n var _appendVDOM = function (_self, content) {\n if (typeof document.implementation.createHTMLDocument !== \"undefined\") {\n var doc = document.implementation.createHTMLDocument(\"\");\n doc.innerHTML = content;\n doc.body.subelements(\"*\").map(function (element) {\n return _self.append(element);\n });\n }\n };\n if (typeof this.innerHTML !== \"undefined\") {\n try {\n this.innerHTML += content;\n } catch (e) {\n _appendVDOM(_self, content);\n }\n } else {\n _appendVDOM(_self, content);\n }\n };\n }\n \n /**\n * Returns a method from a superior QCObjects Class\n * It is useful for Class Inheritance in the _new_ and __new__ method constructors\n * @example _super_('MySuperClass','MySuperMethod').call(this,params) #where this is the current instance and params are method parameters\n *\n * @param {String} className\n * @param {String} classMethodName\n * @param {Object} params\n */\n var _super_ = function (className, classMethodName, params) {\n return ClassFactory(className)[classMethodName];\n };\n _super_.prototype.toString = function () {\n return \"_super_(className,classMethodName,params) { [QCObjects native code] }\";\n };\n \n /**\n * Creates an object from a Class definition\n *\n * @param {QC_Object} o\n * @param {Object} args\n */\n \n var New = function (__class__, args) {\n args = (arguments.length > 1) ? (args) : ({});\n return (typeof __class__ === \"undefined\") ? (new Object()) : (new __class__(args));\n };\n \n New.prototype.toString = function () {\n return \"New(QCObjectsClassName, args) { [QCObjects native code] }\";\n };\n \n \n var Export = function (f) {\n return __make_global__(f);\n };\n Export.prototype.toString = function () {\n return \"Export(function or symbol) { [QCObjects native code] }\";\n };\n \n if (!isBrowser) {\n var findPackageNodePath = function (packagename) {\n const fs = _require_(\"fs\");\n var sdkPath = null;\n try {\n var sdkPaths = [\n `${_top.CONFIG.get(\"projectPath\")}${_top.CONFIG.get(\"relativeImportPath\")}`,\n `${_top.CONFIG.get(\"basePath\")}${_top.CONFIG.get(\"relativeImportPath\")}`,\n `${_top.CONFIG.get(\"projectPath\")}`,\n `${_top.CONFIG.get(\"basePath\")}`,\n `${_top.CONFIG.get(\"relativeImportPath\")}`,\n `${process.cwd()}${_top.CONFIG.get(\"relativeImportPath\")}`,\n `${process.cwd()}/node_modules/` + packagename,\n `${process.cwd()}/node_modules`,\n `${process.cwd()}`,\n \"node_modules\",\n \"./\",\n \"\"\n ].concat(module.paths);\n sdkPaths = sdkPaths.filter(p => {\n return fs.existsSync(p + \"/\" + packagename);\n });\n if (sdkPaths.length > 0) {\n sdkPath = sdkPaths[0];\n logger.info(packagename + \" is Installed.\");\n } else {\n // logger.debug(packagename + ' is not in a standard path.');\n }\n } catch (e) {\n // do nothing\n console.log(e);\n }\n return sdkPath;\n };\n Export(findPackageNodePath);\n }\n \n Class(\"_Crypt\", Object, {\n last_string: \"\",\n last_key: \"\",\n construct: false,\n _new_(o) {\n var string = o[\"string\"];\n var key = (o.hasOwnProperty.call(o, \"key\")) ? (o[\"key\"]) : (null);\n this.__new__(o);\n key = (key === null) ? (this.__instanceID) : (key);\n this.last_key = key;\n this.last_string = string;\n this.construct = true;\n },\n _encrypt() {\n var string = this.string;\n var key = this.key;\n var result = \"\";\n var char;\n var keychar;\n for (var i = 0; i < string.length; i++) {\n char = string.substr(i, 1);\n keychar = key.substr((i % key.length) - 1, 1);\n char = String.fromCharCode(char.charCodeAt(0) + keychar.charCodeAt(0));\n result += char;\n }\n this.last_string = Base64.encode(result);\n return this.last_string;\n },\n _decrypt() {\n var string = this.string;\n var key = this.key;\n var result = \"\";\n var char;\n var keychar;\n string = Base64.decode(string);\n for (var i = 0; i < string.length; i++) {\n char = string.substr(i, 1);\n keychar = key.substr((i % key.length) - 1, 1);\n char = String.fromCharCode(char.charCodeAt(0) - keychar.charCodeAt(0));\n result += char;\n }\n \n this.last_string = result;\n return this.last_string;\n },\n encrypt(string, key) {\n var crypt = New(ClassFactory(\"_Crypt\"), {\n string: string,\n key: (key !== \"\") ? (key) : (\"12345678ABC\")\n });\n return crypt._encrypt();\n },\n decrypt(string, key) {\n var crypt = New(ClassFactory(\"_Crypt\"), {\n string: string,\n key: (key !== \"\") ? (key) : (\"12345678ABC\")\n });\n return crypt._decrypt();\n }\n });\n \n var _CryptObject = function (o) {\n return ClassFactory(\"_Crypt\").encrypt(_DataStringify(o), _secretKey);\n };\n var _DecryptObject = function (s) {\n return (s === \"\") ? ({}) : (JSON.parse(ClassFactory(\"_Crypt\").decrypt(s, _secretKey)));\n };\n \n var shortCode = function () {\n var length = 1000;\n var code1 = ClassFactory(\"_Crypt\").encrypt((Math.random() * length).toString().replace(\".\", \"\"), (new Date()).getTime().toString());\n var code2 = ClassFactory(\"_Crypt\").encrypt((Math.random() * length).toString().replace(\".\", \"\"), (new Date((new Date()).getTime() - 1000 * 1000)).getTime().toString());\n var shortCode = code2.list().map((o1, index) => {\n return code1.list()[index] === o1 ? null : o1;\n }).filter(c => c !== null).join(\"\");\n return shortCode;\n };\n var uniqueId = shortCode;\n Class(\"InheritClass\", class {}, {});\n \n class Processor extends ClassFactory(\"InheritClass\") {\n component = null;\n __definition = {};\n __classType = \"Processor\";\n \n static processors= {\n \"config\"(component,arg) {\n return _top.CONFIG.get(arg, \"\");\n },\n \"ENV\"(component, arg) {\n return (typeof process !== \"undefined\") ? (process.env[arg]) : (\"\");\n },\n \"global\"(component, arg) {\n return (typeof global !== \"undefined\") ? (global[arg]) : (\"\");\n }\n };\n static setProcessor(_proc_) {\n if (typeof _proc_ === \"function\" && _proc_.name !== \"\") {\n this.processors[_proc_.name] = _proc_;\n }\n }\n \n constructor (){\n super(...arguments);\n this.processors = Processor.processors;\n this.process = Processor.process.bind(this);\n this.processObject = Processor.processObject.bind(this);\n this.setProcessor = Processor.setProcessor.bind(this);\n this.execute = Processor.execute.bind(this);\n }\n \n static execute(component,processorName, args) {\n var processorHandler = (typeof component !== \"undefined\" && component !== null)?(component.processorHandler):(this);\n return processorHandler.processors[processorName].bind(processorHandler).apply(processorHandler,[component,...args.split(\",\")]);\n }\n \n static process(template, component = null) {\n var processorHandler = (component !== null)?(component.processorHandler):( New(Processor,{component:null}) ) ;\n if (typeof template === \"string\") {\n Object.keys(processorHandler.processors).map(function (funcName) {\n [...template.matchAll(new RegExp(\"\\\\$\" + funcName + \"\\\\((.*)\\\\).*\", \"g\"))].map(\n function (procesorMatch) {\n var match0 = `$${funcName}(${procesorMatch[1]})`;\n template = template.replace(match0, processorHandler.execute.bind(processorHandler).call(processorHandler, component, funcName, procesorMatch[1]));\n }\n );\n });\n }\n return template;\n }\n \n static processObject(obj, component = null) {\n var __instance__ = (component === null)?(this):(component.processorHandler);\n if (typeof __instance__ === \"undefined\"){\n __instance__ = new Processor({component:component});\n }\n if (typeof obj === \"object\") {\n Object.keys(obj).map(\n function (_k) {\n if (typeof obj[_k] === \"object\" && !obj[_k].hasOwnProperty.call(obj[_k], \"call\")) {\n obj[_k] = __instance__.processObject.bind(__instance__)(obj[_k], component);\n } else if (typeof obj[_k] === \"string\") {\n obj[_k] = __instance__.process.bind(__instance__)(obj[_k], component);\n }\n }\n );\n } else if (typeof obj === \"string\") {\n obj = __instance__.process.bind(__instance__)(obj, component);\n }\n return obj;\n }\n \n }\n Processor.__definition = {};\n Processor.__classType = \"Processor\";\n RegisterClass(Processor,\"com.qcobjects\");\n __make_global__(Processor);\n \n \n class ConfigSettings {\n static _instance = null;\n static _CONFIG_ENC = null;\n static get instance() {\n \n if (this._instance === null) {\n var _config_settings = new ConfigSettings();\n _config_settings._CONFIG = {\n \"relativeImportPath\": \"\",\n \"remoteImportsPath\": \"\",\n \"remoteSDKPath\": \"https://sdk.qcobjects.dev/v2.4/\",\n \"asynchronousImportsLoad\": false,\n \"removePackageScriptAfterLoading\": true,\n \"componentsBasePath\": \"\",\n \"delayForReady\": 0,\n \"preserveComponentBodyTag\": false,\n \"useConfigService\": false,\n \"routingWay\": \"hash\",\n \"useSDK\": true,\n \"useLocalSDK\": false,\n \"basePath\": _basePath_\n };\n _config_settings._CONFIG_ENC = null;\n this._instance = _config_settings;\n }\n \n return this._instance;\n }\n \n static set instance(value) {\n this._instance = value;\n }\n }\n _QC_CLASSES[\"ConfigSettings\"] = ConfigSettings;\n \n Class(\"CONFIG\", Object, {\n \n get _CONFIG_ENC() {\n return ClassFactory(\"ConfigSettings\").instance._CONFIG_ENC;\n },\n \n get _CONFIG() {\n return ClassFactory(\"ConfigSettings\").instance._CONFIG;\n },\n \n set(name, value) {\n logger.debug(`CONFIG.set ${name}: ${value}`);\n // hack to force update basePath from CONFIG\n if (name === \"basePath\") {\n _basePath_ = value;\n }\n var _conf;\n try {\n _conf = (\n function (config) {\n if (config._CONFIG_ENC === null) {\n config._CONFIG_ENC = ClassFactory(\"_Crypt\").encrypt(_DataStringify({}), _secretKey);\n }\n var _protectedEnc = config._CONFIG_ENC.valueOf();\n var _protectedConf = config._CONFIG.valueOf();\n return _CastProps(_protectedConf, _DecryptObject(_protectedEnc));\n }\n )(ClassFactory(\"ConfigSettings\").instance);\n } catch (e) {\n _conf = {};\n console.error(e);\n logger.debug(\"failed to encrypt config\");\n }\n \n _conf[name] = value;\n ClassFactory(\"ConfigSettings\").instance._CONFIG_ENC = _CryptObject(_conf);\n if (Object.hasOwnProperty.call(ClassFactory(\"ConfigSettings\").instance, \"_CONFIG\") && Object.hasOwnProperty.call(ClassFactory(\"ConfigSettings\").instance._CONFIG, name)) {\n ClassFactory(\"ConfigSettings\").instance._CONFIG[name] = value;\n }\n },\n get(name, _default) {\n var _value;\n try {\n var _conf = (\n function (config) {\n if (config._CONFIG_ENC === null) {\n config._CONFIG_ENC = ClassFactory(\"_Crypt\").encrypt(_DataStringify({}), _secretKey);\n }\n var _protectedEnc = config._CONFIG_ENC.valueOf();\n var _protectedConf = config._CONFIG.valueOf();\n return _CastProps(_protectedConf, _DecryptObject(_protectedEnc));\n }\n )(ClassFactory(\"ConfigSettings\").instance);\n if (typeof _conf[name] !== \"undefined\") {\n _value = _conf[name];\n } else if (typeof _default !== \"undefined\") {\n _value = _default;\n }\n } catch (e) {\n console.error(e);\n logger.debug(\"Something wrong when trying to get CONFIG values\");\n logger.debug(\"No config value for: \" + name);\n _value = _default;\n }\n return Processor.processObject.call(Processor, _value);\n }\n });\n \n Export(waitUntil);\n Export(_super_);\n Export(ComplexStorageCache);\n Export(ClassFactory);\n Export(_DOMCreateElement);\n Export(shortCode);\n Export(__getType__);\n Export(is_a);\n \n var isQCObjects_Object = function (_) {\n return (typeof _ === \"object\" &&\n Object.hasOwnProperty.call(_, \"__classType\") &&\n (!!_.__instanceID) &&\n Object.hasOwnProperty.call(_, \"__definition\") &&\n typeof _.__definition !== \"undefined\"\n ) ? (true) : (false);\n };\n \n var isQCObjects_Class = function (_) {\n return (typeof _ === \"function\" &&\n (!_.__instanceID) &&\n (!!_.__definition) &&\n typeof _.__definition !== \"undefined\" &&\n !!_.__definition.__classType\n ) ? (true) : (false);\n };\n \n /**\n * Defines a package for Class classification\n *\n * @param {Object} namespace\n * @param {Object} classes\n */\n var Package = function (namespace, classes) {\n if (_QC_PACKAGES.hasOwnProperty.call(_QC_PACKAGES, namespace) &&\n typeof _QC_PACKAGES[namespace] !== \"undefined\" &&\n _QC_PACKAGES[namespace].hasOwnProperty.call(_QC_PACKAGES[namespace], \"length\") &&\n _QC_PACKAGES[namespace].length > 0 &&\n typeof classes !== \"undefined\" &&\n classes.hasOwnProperty.call(classes, \"length\") &&\n classes.length > 0\n ) {\n classes.filter(\n function (_c1) {\n return isQCObjects_Class(_c1);\n }\n ).map(function (_class_) {\n _class_.__definition.__namespace = namespace;\n _class_.__namespace = namespace;\n });\n _QC_PACKAGES[namespace] = _QC_PACKAGES[namespace].concat(classes);\n } else if (typeof classes !== \"undefined\") {\n if (typeof classes === \"object\" && classes.hasOwnProperty.call(classes, \"length\")) {\n classes.filter(\n function (_c1) {\n return isQCObjects_Class(_c1);\n }\n ).map(function (_class_) {\n _class_.__definition.__namespace = namespace;\n _class_.__namespace = namespace;\n });\n } else if (isQCObjects_Class(classes)) {\n classes.__definition.__namespace = namespace;\n classes.__namespace = namespace;\n }\n _QC_PACKAGES[namespace] = classes;\n }\n if (Object.hasOwnProperty.call(_QC_PACKAGES, namespace)) {\n _QC_PACKAGES[namespace].map(function (_class_) {\n __register_class__(_class_, namespace);\n });\n }\n return (Object.hasOwnProperty.call(_QC_PACKAGES, namespace)) ? (_QC_PACKAGES[namespace]) : (undefined);\n };\n Package.prototype.toString = function () {\n return \"Package(namespace, classes) { [QCObjects native code] }\";\n };\n \n Package(\"com.qcobjects\",[Processor]);\n \n /**\n * Declare Namespace\n *\n * @param {String} packageName\n * @param {Object} package\n */\n var NamespaceRef = function (namespace) {\n let packageInstance = Package(namespace);\n let classes = packageInstance.filter(c => isQCObjects_Class(c)).map(c => {\n return {\n [c.__definition.__classType]: c\n };\n }).reduce((a, b) => Object.assign(a, b));\n return namespace.split(\".\").map(c => {\n return {\n [c]: classes\n };\n }).reverse().reduce((a, b) => {\n b[Object.keys(b)] = a;\n return b;\n });\n };\n \n \n /**\n * Imports a script with the package nomenclature\n *\n * @param {Object} packagename\n * @param {Object} ready\n * @param {Boolean} external\n */\n var Import = function () {\n var packagename;\n var ready = function () {};\n var external = false;\n if (arguments.length < 1) {\n return;\n } else if (arguments.length === 1) {\n packagename = arguments[0];\n } else if (arguments.length === 2) {\n packagename = arguments[0];\n ready = arguments[1];\n } else if (arguments.length > 2) {\n packagename = arguments[0];\n ready = arguments[1];\n external = arguments[2];\n logger.debug(\"[Import] Setting external=\" + external.toString() + \" resource to import: \" + packagename);\n }\n if (external) {\n logger.debug(\"[Import] Registering external resource to import: \" + packagename);\n } else {\n logger.debug(\"[Import] Registering local resource to import: \" + packagename);\n }\n var _promise_import_;\n if (isBrowser) {\n _promise_import_ = new Promise(function (resolve, reject) {\n \n var allPackagesImported = function () {\n var ret = false;\n var cp = 0;\n for (var p in _QC_PACKAGES) {\n cp++;\n }\n if (cp < _QC_PACKAGES_IMPORTED.length) {\n ret = false;\n } else {\n ret = true;\n }\n return ret;\n };\n \n var readyImported = function (e) {\n _QC_PACKAGES_IMPORTED.push(ready);\n if (allPackagesImported()) {\n _QC_PACKAGES_IMPORTED.map(function (_imported_) {\n _QC_READY_LISTENERS.push(_imported_);\n });\n }\n if (isBrowser && _top.CONFIG.get(\"removePackageScriptAfterLoading\")) {\n e.target.remove();\n }\n resolve.call(_promise_import_, {\n \"_imported_\": e.target,\n \"_package_name_\": packagename\n });\n };\n \n if (!_QC_PACKAGES.hasOwnProperty.call(_QC_PACKAGES, packagename)) {\n var s1 = _DOMCreateElement(\"script\");\n s1.type = _top.CONFIG.get(\"sourceType\", \"text/javascript\");\n s1.async = (_top.CONFIG.get(\"asynchronousImportsLoad\")) ? (true) : (false);\n s1.onreadystatechange = function () {\n if (s1.readyState === \"complete\") {\n readyImported.call();\n }\n };\n s1.onload = readyImported;\n s1.onerror = function (e) {\n reject.call(_promise_import_, {\n \"_imported_\": s1,\n \"_package_name_\": packagename\n });\n };\n s1.src = (external) ? (_top.CONFIG.get(\"remoteImportsPath\") + packagename + \".js\") : (_basePath_ + _top.CONFIG.get(\"relativeImportPath\") + packagename + \".js\");\n document.getElementsByTagName(\"head\")[0].appendChild(s1);\n }\n });\n _promise_import_.catch(function () {\n logger.debug(\"Import: Error loading a package \");\n });\n \n } else {\n // support to be used in a nodejs environment\n _promise_import_ = new Promise(function (resolve, reject) {\n try {\n var standardNodePath = findPackageNodePath(packagename);\n var packageAbsoluteName = \"\";\n if (standardNodePath !== null) {\n packageAbsoluteName = standardNodePath + \"/\" + packagename;\n } else {\n var jsNodePath = findPackageNodePath(packagename + \".js\");\n if (jsNodePath !== null) {\n packageAbsoluteName = jsNodePath + \"/\" + packagename + \".js\";\n } else {\n packageAbsoluteName = _basePath_ + _top.CONFIG.get(\"relativeImportPath\") + packagename;\n }\n }\n try {\n resolve.call(_promise_import_, {\n \"_imported_\": _require_(`${packageAbsoluteName}`),\n \"_package_name_\": packagename\n });\n } catch (e) {\n reject.call(_promise_import_, {\n \"_imported_\": null,\n \"_package_name_\": packagename,\n \"error\": e\n });\n }\n } catch (e) {\n reject.call(_promise_import_, {\n \"_imported_\": null,\n \"_package_name_\": packagename,\n \"error\": e\n });\n }\n }).catch(function (e) {\n // something wrong importing a package\n logger.debug(\"Something happened when importing \" + packagename);\n console.warn(e);\n });\n }\n _promise_import_.catch(function (e) {\n logger.warn(_DataStringify(e));\n });\n return _promise_import_;\n };\n Import.prototype.toString = function () {\n return \"Import(packagename,ready,external) { [QCObjects native code] }\";\n };\n \n if (isBrowser) {\n /**\n * Adds a Cast functionality to every Element of DOM\n */\n Element.prototype.Cast = function QC_Object(_o) {\n _o.__definition.body = this;\n var _o = New(_o);\n return _o;\n };\n }\n \n Class(\"TagElements\", Array, {\n show() {\n this.map(function (element) {\n return element.style.opacity = 1;\n });\n },\n hide() {\n this.map(function (element) {\n return element.style.opacity = 0;\n });\n },\n effect() {\n var effectArguments = [...arguments].slice(1);\n var effectClass = arguments[0];\n if ((typeof effectClass).toLowerCase() === \"string\") {\n effectClass = ClassFactory(effectClass);\n }\n this.map(function (element) {\n return effectClass.apply.apply(effectClass, [element].concat(effectArguments));\n });\n },\n findElements(elementName) {\n var _o = New(ClassFactory(\"TagElements\"));\n if (isBrowser) {\n for (var _k in this) {\n if (typeof _k === \"number\" && typeof this[_k] !== \"function\" && this[_k].hasOwnProperty.call(this[_k], \"subelements\")) {\n _o.push(this[_k].subelements(elementName));\n }\n }\n } else {\n // not yet implemented.\n }\n return _o;\n }\n });\n \n /**\n * Gets the element of DOM found by tag name\n *\n * @param {Object} tagname\n * @param {Object} innerHTML\n */\n var Tag = function (tagname, innerHTML) {\n var _o = New(ClassFactory(\"TagElements\"));\n if (isBrowser) {\n var o = document.subelements(tagname);\n var addedKeys = [];\n for (var _i = 0; _i < o.length; _i++) {\n if (typeof innerHTML !== \"undefined\" && o[_i].hasOwnProperty.call(o[_i], \"innerHTML\")) {\n o[_i].innerHTML = innerHTML;\n }\n if (addedKeys.indexOf(_i) < 0) {\n _o.push(o[_i]);\n addedKeys.push(_i);\n }\n }\n } else {\n // not yet implemented.\n }\n return _o;\n };\n \n /**\n * Defines a Custom Ready listener\n */\n function Ready(e) {\n if (isBrowser) {\n _QC_READY_LISTENERS.push(e.bind(window));\n } else if (typeof global !== \"undefined\") {\n _QC_READY_LISTENERS.push(e.bind(global));\n }\n }\n var ready = Ready; // case insensitive ready option\n \n /**\n * Default Ready event function for window. Executes all micro ready events of Import calls\n *\n * @param {Object} e\n */\n var _Ready = function (e) {\n var _execReady = function () {\n _QC_READY_LISTENERS.map(function (_ready_listener_, _r) {\n if (typeof _ready_listener_ === \"function\") {\n _ready_listener_.call();\n delete _QC_READY_LISTENERS[_r];\n }\n });\n };\n if (_top.CONFIG.get(\"delayForReady\") > 0) {\n if (isBrowser) {\n setTimeout(_execReady.bind(window), _top.CONFIG.get(\"delayForReady\"));\n } else if (typeof global !== \"undefined\") {\n setTimeout(_execReady.bind(global), _top.CONFIG.get(\"delayForReady\"));\n }\n } else {\n _execReady.call(_top);\n }\n };\n \n if (isBrowser) {\n window.onload = _Ready;\n if (is_phonegap) {\n document.addEventListener(\"deviceready\", _Ready, captureFalse);\n }\n } else {\n global.onload = _Ready;\n }\n \n /**\n * Dynamic Data Objects Class\n * Usage:\n * Class('TestDDO',{\n * data: {},\n * _new_ (){\n * this.ddo = New(DDO,{\n * instance:this,\n * name:'data',\n * value:{},\n * fget (value){\n * logger.debug('returned value '+ value );\n * }\n * })\n * }\n * });\n *\n */\n class DDO extends ClassFactory(\"InheritClass\") {\n constructor({\n instance,\n name,\n fget,\n fset,\n value\n }) {\n super({\n instance,\n name,\n fget,\n fset,\n value\n });\n this._new_({\n instance,\n name,\n fget,\n fset,\n value\n });\n \n }\n \n _new_({\n instance,\n name,\n fget,\n fset,\n value\n }) {\n var ddoInstance = this;\n var name = (typeof name === \"undefined\") ? (ObjectName(ddoInstance)) : (name);\n \n Object.defineProperty(instance, name, {\n set(val) {\n let _value = val;\n logger.debug(\"value changed \" + name);\n var ret;\n if (typeof fset !== \"undefined\" && typeof fset === \"function\") {\n ret = fset(_value);\n } else {\n ret = _value;\n }\n instance[\"_\" + name] = ret;\n return;\n },\n get() {\n let _value = instance[\"_\" + name];\n logger.debug(\"returning value \" + name);\n var is_ddo = function (v) {\n if (typeof v === \"object\" && Object.hasOwnProperty.call(v, \"value\")) {\n return v.value;\n }\n return v;\n };\n var ret;\n if (typeof fget !== \"undefined\" && typeof fget === \"function\") {\n ret = fget(is_ddo(_value));\n } else {\n ret = is_ddo(_value);\n }\n return ret;\n }\n });\n }\n \n }\n Export(DDO);\n \n class DefaultTemplateHandler {\n template= \"\";\n __definition = {};\n constructor ({component, template}){\n this.component = component;\n this.template = template;\n }\n assign(data) {\n var templateInstance = this;\n if (typeof templateInstance.component === \"undefined\") {\n throw new Error(\"DefaultTemplateHandler.assign: component is undefined\");\n }\n if (typeof templateInstance.component.processorHandler === \"undefined\") {\n throw new Error(\"DefaultTemplateHandler.assign: component.processorHandler is undefined\");\n }\n var processorHandler = templateInstance.component.processorHandler;\n processorHandler.component = templateInstance.component;\n var parsedAssignmentText = (typeof templateInstance.template !== \"undefined\") ? (templateInstance.template) : (\"\");\n if (typeof data === \"object\") {\n [...Object.keys(data)].map(function (k) {\n var _value = data[k];\n if (typeof _value === \"string\" || typeof _value === \"number\" || (!isNaN(_value))) {\n try {\n _value = Processor.processObject.bind(processorHandler).call(processorHandler, _value, templateInstance.component);\n parsedAssignmentText = parsedAssignmentText.replace((new RegExp(`{{${k}}}`, \"g\")), _value);\n } catch (e) {\n logger.warn(`${templateInstance.component.name} could not parse processors.`);\n throw Error (`${templateInstance.component.name} could not parse processors. Reason: ${e.message}`);\n }\n }\n });\n } else {\n logger.debug(`${templateInstance.component.name}.data is not an object`);\n }\n try {\n parsedAssignmentText = Processor.processObject.call(processorHandler, parsedAssignmentText, templateInstance.component);\n }catch (e){\n logger.warn(`${templateInstance.component.name} could not parse processors.`);\n throw Error (`${templateInstance.component.name} could not parse processors. Reason: ${e.message}`);\n }\n return parsedAssignmentText;\n }\n \n }\n DefaultTemplateHandler.__definition = {};\n RegisterClass(DefaultTemplateHandler,\"com.qcobjects\");\n \n var __routing_params__ = function (routing, routingPath) {\n let standardRoutingPath = routing.path.replace(/{(.*?)}/g, \"(?<$1>.*)\"); //allowing {param}\n return {\n ...[...routingPath.matchAll((new RegExp(standardRoutingPath, \"g\")))][0][\"groups\"]\n };\n };\n \n var __valid_routings__ = function (routings, routingPath) {\n return routings.filter(function (routing) {\n var standardRoutingPath = routing.path.replace(/{(.*?)}/g, \"(?<$1>.*)\");\n return (new RegExp(standardRoutingPath, \"g\")).test(routingPath);\n }).reverse();\n };\n var __valid_routing_way__ = function (validRoutingWays, routingWay) {\n return validRoutingWays.includes(routingWay);\n };\n \n var _buildComponentFromElement_ = function (element, __parent__){\n var __shadowed_not_set = (element.getAttribute(\"shadowed\") === null) ? (true) : (false);\n var __tplsource_attr_not_set = (element.getAttribute(\"template-source\") === null) ? (true) : (false);\n var shadowed = (element.getAttribute(\"shadowed\") === \"true\") ? (true) : (false);\n var __cached_not_set = (element.getAttribute(\"cached\") === null) ? (true) : (false);\n var cached = (element.getAttribute(\"cached\") === \"true\") ? (true) : (false);\n var tplextension = (typeof _top.CONFIG.get(\"tplextension\") !== \"undefined\") ? (_top.CONFIG.get(\"tplextension\")) : (\"html\");\n tplextension = (element.getAttribute(\"tplextension\") !== null) ? (element.getAttribute(\"tplextension\")) : (tplextension);\n var _componentName = element.getAttribute(\"name\");\n var _componentClassName = (element.getAttribute(\"componentClass\") !== null) ? (element.getAttribute(\"componentClass\")) : (\"Component\");\n let __componentClassName = (_top.CONFIG.get(\"preserveComponentBodyTag\")) ? (\n (_componentName !== null) ? (\"com.qcobjects.components.\" + _componentName + \".ComponentBody\") : (\"com.qcobjects.components.ComponentBody\")\n ) : (_componentClassName);\n _componentName = (_componentName !== null) ? (_componentName) : (\n (ClassFactory(__componentClassName) &&\n typeof ClassFactory(__componentClassName).name !== \"undefined\"\n ) ? (\n ClassFactory(__componentClassName).name\n ) : (\"\")\n );\n var __classDefinition = ClassFactory(__componentClassName);\n var __tplsource_prop_set = (__componentClassName !== \"Component\" && ((typeof __classDefinition !== \"undefined\" && typeof __classDefinition.tplsource === \"string\") && __classDefinition.tplsource !== \"\")) ? (true) : (false);\n var tplsource = (__tplsource_attr_not_set && __tplsource_prop_set) ? (__classDefinition.tplsource) : ((__tplsource_attr_not_set) ? (\"default\") : (element.getAttribute(\"template-source\")));\n logger.debug(`template source for ${_componentName} is ${tplsource} `);\n logger.debug(`type for ${_componentName} is ${__getType__(__classDefinition)} `);\n \n var componentURI;\n componentURI = ComponentURI({\n \"COMPONENTS_BASE_PATH\": _top.CONFIG.get(\"componentsBasePath\"),\n \"COMPONENT_NAME\": _componentName,\n \"TPLEXTENSION\": tplextension,\n \"TPL_SOURCE\": tplsource\n });\n if (_top.CONFIG.get(\"preserveComponentBodyTag\")) {\n Package((_componentName !== \"\") ? (\"com.qcobjects.components.\" + _componentName + \"\") : (\"com.qcobjects.components\"), [\n Class(\"ComponentBody\", ClassFactory(\"Component\"), {\n name: _componentName,\n tplsource: tplsource,\n tplextension: tplextension,\n reload: true\n })\n ]);\n }\n \n var __create_component_instance_ = function () {\n var __shadowed = (__shadowed_not_set) ? ((__classDefinition && __classDefinition.shadowed) || ClassFactory(\"Component\").shadowed) : (shadowed);\n var __definition = {\n __parent__: __parent__,\n name: _componentName,\n cached: (__cached_not_set) ? (ClassFactory(\"Component\").cached) : (cached),\n shadowed: __shadowed,\n tplextension: tplextension,\n body: (_top.CONFIG.get(\"preserveComponentBodyTag\")) ? (_DOMCreateElement(\"componentBody\")) : (element),\n templateURI: componentURI,\n tplsource: tplsource\n };\n if (typeof _componentName === \"undefined\" || _componentName === \"\" || _componentName === null) {\n /* this allows to use the original property defined\n in the component definition if it is not present in the tag */\n delete __definition.name;\n }\n if (componentURI === \"\") {\n /* this allows to use the original property defined\n in the component definition if it is not present in the tag */\n delete __definition.templateURI;\n }\n var newComponent = New(__classDefinition, __definition);\n \n if (_top.CONFIG.get(\"preserveComponentBodyTag\")) {\n element.append(newComponent);\n }\n return newComponent;\n };\n var newComponent = __create_component_instance_.call(this);\n return newComponent;\n };\n \n var _buildComponentsFromElements_ = function (elements, __parent__) {\n var componentsBuiltWith = [];\n if (isBrowser){\n componentsBuiltWith = elements.map(\n function(element){\n return _buildComponentFromElement_(element, __parent__);\n }\n );\n } else {\n logger.debug(\"[_buildComponentsFromElements_] not implemented for Non-Browser environments\");\n }\n return componentsBuiltWith;\n };\n \n \n Package(\"com.qcobjects\", [\n class Component extends ClassFactory(\"InheritClass\") {\n validRoutingWays= [\"pathname\", \"hash\", \"search\"];\n basePath= _basePath_;\n domain= _domain_;\n templateHandler= \"DefaultTemplateHandler\";\n processorHandler= null;\n routingWay= null;\n routingNodes= [];\n routings= [];\n routingPath= \"\";\n routingPaths=[];\n _componentHelpers= [];\n subcomponents=[];\n splashScreenComponent=undefined;\n controller=undefined;\n view=undefined;\n effect=undefined;\n method = \"GET\";\n cached= true;\n __promise__ = null;\n __namespace = undefined;\n \n constructor ({\n templateURI= \"\",\n template,\n tplsource= \"default\",\n url= \"\",\n name= \"\",\n method= \"GET\",\n data= {},\n reload= false,\n shadowed= false,\n cached= true,\n _body=_DOMCreateElement(\"div\"),\n __promise__= null,\n __shadowRoot,\n body,\n shadowRoot,\n splashScreenComponent,\n controller,\n view\n }){\n super(...arguments);\n var self = this;\n \n if (typeof self.name === \"undefined\") {\n logger.warn(\"A name is not defined for \" + __getType__(self));\n }\n \n self.routingWay = _top.CONFIG.get(\"routingWay\");\n \n self.processorHandler = New(Processor, {\n component: self\n });\n \n /* assign body data attributes to data */\n self.data = (typeof self.data === \"undefined\" || self.data === null)?({}):(self.data);\n self.data = Object.assign(self.data, self.dataAttributes);\n \n self.createServiceInstance()\n .then(function (serviceResponse){\n if (typeof self.__new__ === \"function\") {\n self.__new__.call(self, self);\n }\n \n self._generateRoutingPaths(self.body)\n .then(function (){\n self._reroute_()\n .then(function () {\n return self.rebuild()\n .then(function () {\n logger.info(`Component._new_ The component ${self.name} was built successfully!`);\n }).catch(function (standardResponse) {\n logger.warn(`Component._new_ Something went wrong building the component ${self.name}`);\n console.error(standardResponse);\n });\n });\n });\n \n });\n \n }\n \n set body(value) {\n var self = this;\n self._body = value;\n }\n \n get body() {\n var self= this;\n return self._body;\n }\n \n set cacheIndex(value) {\n // readonly\n logger.debug(\"[cacheIndex] This property is readonly\");\n }\n \n get cacheIndex() {\n var self= this;\n var __routing_path__ = _DataStringify(self.routingPath);\n return Base64.encode(self.name + __routing_path__);\n }\n \n set parsedAssignmentText(value) {\n // readonly\n logger.debug(\"[parsedAssignmentText] This property is readonly\");\n }\n \n get parsedAssignmentText() {\n var self= this;\n self._parsedAssignmentText = self.parseTemplate(self.template);\n if (typeof self._parsedAssignmentText === \"undefined\"){\n throw Error (`[Component][${this.name}][parsedAssignmentText] Could not generate content!`);\n }\n return self._parsedAssignmentText;\n }\n \n \n set shadowRoot(value) {\n var self= this;\n if (typeof self.__shadowRoot == \"undefined\") {\n self.__shadowRoot = value;\n } else {\n logger.debug(\"[shadowRoot] This property can only be assigned once!\");\n }\n }\n \n get shadowRoot() {\n var self= this;\n return self.__shadowRoot;\n }\n \n \n set routingSelected(value){\n logger.debug(\"[routingSelected] This is a read-only property of the component\");\n }\n \n get routingSelected (){\n var self= this;\n return __valid_routings__(self.routings, self.routingPath);\n }\n \n set routingParams (value){\n logger.debug(\"[routingParams] This is a read-only property of the component\");\n }\n \n get routingParams (){\n var component = this;\n return [{}].concat(component.routingSelected.map(function (routing) {\n return __routing_params__(routing, component.routingPath);\n })).reduce(function (accumulator, colData, index) {\n return Object.assign(accumulator, colData);\n });\n }\n \n createServiceInstance (){\n var component = this;\n var body = component.body;\n var data = this.data;\n var __serviceClass;\n var __classDefinition = component.getClass().__definition;\n var _serviceClassName = (isBrowser && body.getAttribute(\"serviceClass\") !== null) ? (body.getAttribute(\"serviceClass\")) : (null);\n \n return new Promise (function (resolve, reject){\n /* __enable_service_class__ = true by default */\n var __enable_service_class__ = (\n (Object.hasOwnProperty.call(body, \"enableServiceClass\") && body.enableServiceClass) ||\n (!Object.hasOwnProperty.call(body, \"enableServiceClass\"))\n ) ? (true) : (false);\n var _response_to_data_ = (isBrowser && body.getAttribute(\"response-to\") !== null && body.getAttribute(\"response-to\") === \"data\") ? (true) : (false);\n var _response_to_template_ = (isBrowser && body.getAttribute(\"response-to\") !== null && body.getAttribute(\"response-to\") === \"template\") ? (true) : (false);\n \n if (__enable_service_class__ && _serviceClassName !== null) {\n __serviceClass = ClassFactory(_serviceClassName);\n }\n if (!_response_to_data_ && __classDefinition && Object.hasOwnProperty.call(__classDefinition, \"responseTo\")) {\n _response_to_data_ = (__classDefinition.responseTo === \"data\") ? (true) : (false);\n } else if (!_response_to_data_ && Object.hasOwnProperty.call(ClassFactory(\"Component\"), \"responseTo\")) {\n _response_to_data_ = (ClassFactory(\"Component\").responseTo === \"data\") ? (true) : (false);\n }\n if (!_response_to_template_ && __classDefinition && Object.hasOwnProperty.call(__classDefinition, \"responseTo\")) {\n _response_to_template_ = (__classDefinition.responseTo === \"template\") ? (true) : (false);\n } else if (!_response_to_template_ && Object.hasOwnProperty.call(ClassFactory(\"Component\"), \"responseTo\")) {\n _response_to_template_ = (ClassFactory(\"Component\").responseTo === \"template\") ? (true) : (false);\n }\n \n if (typeof __serviceClass !== \"undefined\" &&\n (typeof __enable_service_class__ !== \"undefined\" &&\n __enable_service_class__ === true) &&\n (_response_to_data_ || _response_to_template_)\n ) {\n logger.info(\"Loading service \" + _serviceClassName);\n var serviceInstance = New(__serviceClass, {\n data: data\n });\n serviceLoader(serviceInstance).then(function ({\n request,\n service\n }) {\n var serviceResponse;\n if (typeof service.JSONresponse !== \"undefined\" && service.JSONresponse !== null){\n serviceResponse = service.JSONresponse;\n } else {\n serviceResponse = service.template;\n }\n if (_response_to_data_) {\n if (typeof data === \"object\" && typeof serviceResponse === \"object\") {\n data = Object.assign(data, serviceResponse);\n } else {\n data = serviceResponse;\n }\n component.data = data;\n }\n component.serviceInstance = serviceInstance;\n component.serviceData = data;\n \n if (_response_to_template_) {\n component.template = serviceResponse;\n }\n resolve (serviceResponse);\n }, function (rejectedResponse){\n logger.debug(`Service loading rejected for ${_serviceClassName} in ${component.name}`);\n reject (rejectedResponse);\n } ).catch(function (e) {\n logger.debug(\"Something went wroing while trying to load the service \" + _serviceClassName);\n throw Error (`Error loading ${_serviceClassName} for ${component.name}. Detail: ${e}`);\n });\n } else {\n resolve(null);\n }\n });\n }\n \n _bindroute_ () {\n var _component_ = this;\n if (!_component_._bindroute_.loaded){\n if (isBrowser) {\n \n _component_.hostElements(\"a\").map(function (a) {\n a.oldclick = a.onclick;\n a.onclick = function (e) {\n var _ret_ = true;\n if (!_top.global.get(\"routingPaths\")) {\n _top.global.set(\"routingPaths\", []);\n }\n var routingWay = _top.CONFIG.get(\"routingWay\");\n var routingPath = e.target[routingWay];\n if (_top.global.get(\"routingPaths\").includes(routingPath) &&\n e.target[routingWay] !== document.location[routingWay] &&\n e.target.href !== document.location.href\n ) {\n logger.debug(\"A ROUTING WAS FOUND: \" + routingPath);\n window.history.pushState({\n href: e.target.href\n }, e.target.href, e.target.href);\n ClassFactory(\"Component\").route();\n _ret_ = false;\n } else {\n logger.debug(\"NO ROUTING FOUND FOR: \" + routingPath);\n }\n if (typeof e.target.oldclick !== \"undefined\" && typeof e.target.oldclick === \"function\") {\n e.target.oldclick.call(e.target, e);\n }\n return _ret_;\n };\n return null;\n });\n \n } else {\n // not yet implemented.\n }\n this._bindroute_.loaded = true;\n } else {\n logger.debug(`Routes already bound to popstate events for ${_component_.name}`);\n }\n \n }\n \n done(standardResponse) {\n var _ret_;\n if (typeof standardResponse !== \"undefined\"){\n var {request, component} = standardResponse;\n _ret_ = Promise.resolve({request, component});\n }\n return _ret_;\n }\n \n createControllerInstance (){\n var _Controller;\n if (isBrowser){\n if (typeof this.body === \"undefined\") {\n throw new Error(\"The component has no body\");\n }\n var controllerName = this.body.getAttribute(\"controllerClass\");\n if (!controllerName) {\n controllerName = \"Controller\";\n }\n _Controller = ClassFactory(controllerName);\n if (typeof _Controller !== \"undefined\"){\n this.controller = New(_Controller, {\n component: this\n });\n }\n \n }\n \n return new Promise ( (resolve, reject) => {\n if (isBrowser){\n if (typeof _Controller !== \"undefined\" && typeof this.controller !== \"undefined\") {\n if (typeof this.controller.done === \"function\") {\n try {\n this.controller.done.call(this.controller);\n } catch (e){\n throw Error (e);\n }\n } else {\n logger.debug(`${controllerName} does not have a done() method.`);\n reject(`${controllerName} does not have a done() method.`);\n }\n if (typeof this.controller.createRoutingController === \"function\") {\n this.controller.createRoutingController.call(this.controller);\n } else {\n logger.debug(`${controllerName} does not have a createRoutingController() method.`);\n }\n }\n }\n resolve ({component:this,controller:this.controller});\n });\n }\n \n createEffectInstance (){\n var _component_ = this;\n return new Promise (function (resolve, reject){\n if (isBrowser){\n var effectClassName = _component_.body.getAttribute(\"effectClass\");\n var applyEffectTo = _component_.body.getAttribute(\"apply-effect-to\");\n applyEffectTo = (applyEffectTo !== null) ? (applyEffectTo) : (\"load\");\n if (effectClassName !== null && applyEffectTo === \"observe\") {\n _component_.applyObserveTransitionEffect(effectClassName);\n } else if (effectClassName !== null && applyEffectTo === \"load\") {\n _component_.applyTransitionEffect(effectClassName);\n }\n }\n resolve({component:_component_, effect:_component_.effect});\n });\n }\n \n createViewInstance(){\n var _component_ = this;\n return new Promise (function (resolve, reject){\n var viewName = (isBrowser)?(_component_.body.getAttribute(\"viewClass\")):(null);\n if (viewName !== null){\n var _View = ClassFactory(viewName);\n if (typeof _View !== \"undefined\") {\n _component_.view = New(_View, {\n component: _component_\n }); // Initializes the main view for the component\n if (Object.hasOwnProperty.call(_component_.view, \"done\") && typeof _component_.view.done === \"function\") {\n _component_.view.done.call(_component_.view);\n }\n }\n \n }\n resolve({component:_component_, view:_component_.view});\n \n });\n }\n \n __done__ () {\n var _component_ = this;\n var componentDone = function () {\n if (typeof _component_ === \"undefined\") {\n throw new Error(\"componentDone() has lost its context\");\n }\n if (typeof _component_.body === \"undefined\") {\n throw new Error(\"The component has no body\");\n }\n _component_.createViewInstance();\n _component_.createControllerInstance();\n _component_.createEffectInstance();\n \n logger.debug(`Trying to run component helpers for ${_component_.name}...`);\n try {\n _component_.runComponentHelpers();\n logger.debug(`Component helpers for ${_component_.name} executed.`);\n } catch (e){\n logger.debug(`Component helpers for ${_component_.name} could not be executed.`);\n throw Error(e);\n }\n \n _component_.subcomponents = _component_.__buildSubComponents__();\n \n _component_._bindroute_();\n _component_.body.setAttribute(\"loaded\", true);\n };\n \n return new Promise (function (resolve, reject){\n try {\n Promise.resolve(componentDone.call(_component_));\n } catch (e){\n reject(e);\n }\n });\n \n }\n \n hostElements(tagFilter){\n var _component_ = this;\n var elementList = (_component_.shadowed && (typeof _component_.shadowRoot !== \"undefined\"))?(\n _component_.shadowRoot.subelements(tagFilter)\n ):(\n _component_.body.subelements(tagFilter)\n );\n return elementList;\n }\n \n get subtags(){\n var _component_ = this;\n var tagFilter = _tag_filter_;\n return _component_.hostElements(tagFilter);\n }\n \n get bodyAttributes() {\n var _component_ = this;\n var c = _component_.body;\n return (isBrowser)?([...c.getAttributeNames()].map (a => {return {[a]:c.getAttribute(a)};}).reduce ((accumulator,colData, index) => {return Object.assign(accumulator, colData);} )):({});\n }\n \n get dataAttributes(){\n var _component_ = this;\n var c = _component_.body;\n return (isBrowser)?([{}].concat([...c.getAttributeNames()].filter(n=>n.startsWith(\"data-\")).map (a => {return {[a.split(\"-\")[1]]:c.getAttribute(a)};})).reduce ((accumulator,colData, index) => {return Object.assign(accumulator, colData);} )):({});\n }\n \n __buildSubComponents__ (rebuildObjects = false) {\n var _component_ = this;\n var elementList = _component_.subtags;\n if (!rebuildObjects){\n elementList = elementList.filter(t=>t.getAttribute(\"loaded\") !== \"true\");\n }\n if ((typeof _component_ !== \"undefined\") || _component_.subcomponents.length<1){\n _component_.subcomponents = _buildComponentsFromElements_(elementList, _component_);\n }\n return _component_.subcomponents;\n }\n \n fail(standardResponse) {\n var _ret_;\n if (typeof standardResponse !== \"undefined\"){\n var {error, component} = standardResponse;\n _ret_ = Promise.resolve({error, component});\n }\n return _ret_;\n }\n \n set(name, value) {\n this[name] = value;\n }\n \n get(name) {\n return this[name];\n }\n \n feedComponent() {\n var _component_ = this;\n logger.debug(`[Component][${this.name}][feedComponent] start feeding component...`);\n var _feedComponent_InBrowser = function (_component_) {\n if (typeof _component_.container === \"undefined\" && typeof _component_.body === \"undefined\") {\n logger.warn(\"COMPONENT {{NAME}} has an undefined container and body\".replace(\"{{NAME}}\", _component_.name));\n return;\n }\n var container = (typeof _component_.container === \"undefined\" || _component_.container === null) ? (_component_.body) : (_component_.container);\n var parsedAssignmentText = _component_.parsedAssignmentText;\n _component_.innerHTML = parsedAssignmentText;\n if (_component_.shadowed) {\n logger.debug(\"COMPONENT {{NAME}} is shadowed\".replace(\"{{NAME}}\", _component_.name));\n logger.debug(\"Preparing slots for Shadowed COMPONENT {{NAME}}\".replace(\"{{NAME}}\", _component_.name));\n var tmp_shadowContainer = _DOMCreateElement(\"div\");\n container.subelements(\"[slot]\").map(\n function (c) {\n if (c.parentElement === container) {\n tmp_shadowContainer.appendChild(c);\n }\n });\n logger.debug(\"Creating shadowedContainer for COMPONENT {{NAME}}\".replace(\"{{NAME}}\", _component_.name));\n var shadowContainer = _DOMCreateElement(\"div\");\n shadowContainer.classList.add(\"shadowHost\");\n try {\n _component_.shadowRoot = shadowContainer.attachShadow({\n mode: \"open\"\n });\n } catch (e) {\n try {\n logger.debug(\"Shadowed COMPONENT {{NAME}} is repeated\".replace(\"{{NAME}}\", _component_.name));\n _component_.shadowRoot = shadowContainer.shadowRoot;\n } catch (e) {\n logger.warn(\"Shadowed COMPONENT {{NAME}} is not allowed on this browser\".replace(\"{{NAME}}\", _component_.name));\n }\n }\n if (typeof _component_.shadowRoot !== \"undefined\" && _component_.shadowRoot !== null) {\n if (_component_.reload) {\n logger.debug(\"FORCED RELOADING OF CONTAINER FOR Shadowed COMPONENT {{NAME}}\".replace(\"{{NAME}}\", _component_.name));\n shadowContainer.shadowRoot.innerHTML = _component_.innerHTML;\n } else {\n tmp_shadowContainer.innerHTML = _component_.parseTemplate(tmp_shadowContainer.innerHTML);\n logger.debug(\"ADDING Shadowed COMPONENT {{NAME}} \".replace(\"{{NAME}}\", _component_.name));\n shadowContainer.shadowRoot.innerHTML += _component_.innerHTML;\n }\n logger.debug(\"ADDING Slots to Shadowed COMPONENT {{NAME}} \".replace(\"{{NAME}}\", _component_.name));\n shadowContainer.innerHTML += tmp_shadowContainer.innerHTML;\n logger.debug(\"APPENDING Shadowed COMPONENT {{NAME}} to Container \".replace(\"{{NAME}}\", _component_.name));\n var qs = container.querySelector(\".shadowHost\");\n if (!(typeof qs !== \"undefined\" && qs !== null)) {\n container.appendChild(shadowContainer);\n } else {\n logger.debug(\"Shadowed Container for COMPONENT {{NAME}} is already present in the tree \".replace(\"{{NAME}}\", _component_.name));\n _component_.shadowRoot.innerHTML = shadowContainer.shadowRoot.innerHTML;\n }\n } else {\n logger.warn(\"Shadowed COMPONENT {{NAME}} is bad configured\".replace(\"{{NAME}}\", _component_.name));\n }\n } else {\n if (_component_.reload) {\n logger.debug(\"FORCED RELOADING OF CONTAINER FOR COMPONENT {{NAME}}\".replace(\"{{NAME}}\", _component_.name));\n container.innerHTML = _component_.innerHTML;\n } else if (container && _component_) {\n logger.debug(\"ADDING COMPONENT {{NAME}} \".replace(\"{{NAME}}\", _component_.name));\n container.innerHTML += _component_.innerHTML;\n } else {\n logger.warn(\"COMPONENT {{NAME}} is not added to the DOM\".replace(\"{{NAME}}\", _component_.name));\n }\n }\n \n };\n \n var _feedComponent_InNode = function (_component_) {\n var parsedAssignmentText = _component_.parsedAssignmentText;\n _component_.innerHTML = parsedAssignmentText;\n };\n \n var _ret_;\n if (!is_a(_component_, \"Component\")) {\n logger.warn(\"Trying to feed a non component object\");\n return;\n }\n if (isBrowser) {\n _ret_ = _feedComponent_InBrowser(_component_);\n } else {\n _ret_ = _feedComponent_InNode(_component_);\n }\n return _ret_;\n }\n \n rebuild() {\n var _component = this;\n var _promise = new Promise(function (resolve, reject) {\n if (typeof _component === \"undefined\" || _component === null) {\n reject(\"Component is undefined\");\n }\n if (isQCObjects_Object(_component) && is_a(_component, \"Component\")) {\n switch (true) {\n case (_component.get(\"tplsource\") === \"none\"):\n logger.debug(\"Component \" + _component.name + \" has specified template-source=none, so no template load was done\");\n var standardResponse = {\n request: null,\n component: _component\n };\n _component.__done__().then(function (){\n if (typeof _component.done === \"function\") {\n _component.done.call(_component, standardResponse);\n }\n resolve.call(_promise, standardResponse);\n }, function (){\n reject.call(_promise, standardResponse);\n });\n break;\n case (_component.get(\"tplsource\") === \"inline\"):\n logger.debug(\"Component \" + _component.name + \" has specified template-source=inline, so it is assumed that template is already declared\");\n (async function (_component){\n _component.feedComponent.bind(_component)();\n })(_component);\n var standardResponse = {\n request: null,\n component: _component\n };\n _component.__done__().then(function (){\n if (typeof _component.done === \"function\") {\n _component.done.call(_component, standardResponse);\n }\n resolve.call(_promise, standardResponse);\n }, function (){\n reject.call(_promise, standardResponse);\n });\n break;\n case (_component.get(\"tplsource\") === \"default\" &&\n _component.get(\"templateURI\") !== \"\"):\n _component.set(\"url\", _component.get(\"basePath\") + _component.get(\"templateURI\"));\n componentLoader(_component, false).then(\n function (standardResponse) {\n resolve.call(_promise, standardResponse);\n },\n function (standardResponse) {\n reject.call(_promise, standardResponse);\n });\n break;\n case (_component.get(\"tplsource\") === \"external\" &&\n _component.get(\"templateURI\") !== \"\"):\n _component.set(\"url\", _component.get(\"templateURI\"));\n componentLoader(_component, false).then(\n function (standardResponse) {\n resolve.call(_promise, standardResponse);\n },\n function (standardResponse) {\n reject.call(_promise, standardResponse);\n });\n break;\n case _component.get(\"tplsource\") === \"default\" && _component.get(\"templateURI\", \"\") === \"\":\n logger.debug(`Component ${_component.name} template-source is ${_component.get(\"tplsource\")} and no templateURI is present`);\n reject.call(_promise, `Component ${_component.name} template-source is ${_component.get(\"tplsource\")} and no templateURI is present`);\n break;\n default:\n logger.debug(\"Component \" + _component.name + \" will not be rebuilt because no templateURI is present\");\n reject.call(_promise, {\n request: null,\n component: _component\n });\n break;\n }\n \n }\n });\n return _promise;\n }\n \n Cast(oClass) {\n /* Cast method for components has been deprecated. Don't use this method, it is available only for compatibility purposes */\n let o = _methods_(oClass).map(m => m.name.replace(/bound /g, \"\")).map(m => {\n return {\n [m]: oClass[m].bind(this)\n };\n }).reduce((c, p) => Object.assign(c, p), {});\n return _Cast(this, o);\n }\n \n static route() {\n var componentClass = this; /* is can be class or object*/\n var _route_promise_;\n var isValidInstance = ( isQCObjects_Object(componentClass) && is_a(componentClass,\"Component\") ) ? (true) : (false);\n var __route__ = function (componentList) {\n var _componentNames_ = [];\n var _promises_ = componentList.filter(function (rc) {\n return typeof rc !== \"undefined\";\n }).map(function (rc) {\n if (typeof rc.name !== \"undefined\") {\n _componentNames_.push(rc.name);\n } else {\n throw new Error(__getType__(rc) + \" does not have a name\");\n }\n return new Promise(function (resolve, reject) {\n var _promise_;\n if (typeof rc !== \"undefined\" && !!rc._reroute_) {\n _promise_ = rc._reroute_()\n .then(function () {\n rc.reload = true;\n return rc.rebuild();\n })\n .then(function (_rc_) {\n if (Object.hasOwnProperty.call(rc, \"subcomponents\") &&\n typeof rc.subcomponents !== \"undefined\" &&\n rc.subcomponents.length > 0\n ) {\n logger.debug(\"LOOKING FOR ROUTINGS IN SUBCOMPONENTS FOR: \" + rc.name);\n return __route__.call(rc, rc.subcomponents);\n } else {\n logger.debug(\"No subcomponents to look for routings in: \" + rc.name);\n if (rc.subtags.length>0){\n rc.subcomponents = rc.__buildSubComponents__(true);\n }\n resolve(rc);\n }\n });\n } else if (typeof rc !== \"undefined\") {\n reject(\"Component \" + rc.name + \" is not an instance of Component\");\n }\n return _promise_;\n });\n });\n return Promise.all(_promises_)\n .then(function () {\n logger.debug(\"ROUTING COMPLETED FOR \" + _componentNames_.join(\", \"));\n }).catch(function (err) {\n logger.warn(\"ROUTING FAILED FOR \" + _componentNames_.join(\", \") + \": \" + err);\n });\n };\n if (isValidInstance || !!_top.componentsStack) {\n if (isValidInstance) {\n logger.debug(\"loading routings for instance \" + componentClass.name);\n }\n _route_promise_ = __route__.call(componentClass, (isValidInstance) ? (componentClass.subcomponents) : (_top.componentsStack));\n } else {\n logger.debug(\"An undetermined result expected if load routings. So will not be loaded this time.\");\n throw Error (`There is no valid instance and no components stack available to apply rountings`);\n }\n return _route_promise_;\n }\n \n fullscreen() {\n if (isBrowser) {\n var elem = this.body;\n if (elem.requestFullscreen) {\n elem.requestFullscreen();\n } else if (elem.mozRequestFullScreen) {\n /* Firefox */\n elem.mozRequestFullScreen();\n } else if (elem.webkitRequestFullscreen) {\n /* Chrome, Safari & Opera */\n elem.webkitRequestFullscreen();\n } else if (elem.msRequestFullscreen) {\n /* IE/Edge */\n elem.msRequestFullscreen();\n }\n } else {\n // not yet implemented.\n }\n }\n \n closefullscreen() {\n if (isBrowser) {\n if (document.exitFullscreen) {\n document.exitFullscreen();\n } else if (document.mozCancelFullScreen) {\n document.mozCancelFullScreen();\n } else if (document.webkitExitFullscreen) {\n document.webkitExitFullscreen();\n } else if (document.msExitFullscreen) {\n document.msExitFullscreen();\n }\n } else {\n // noy yet implemented.\n }\n }\n \n _generateRoutingPaths(componentBody) {\n var component = this;\n return new Promise(function (resolve, reject){\n if (isBrowser) {\n if (__valid_routing_way__(component.validRoutingWays, component.routingWay)) {\n if (typeof componentBody !== \"undefined\") {\n component.innerHTML = componentBody.innerHTML;\n component.routingNodes = componentBody.subelements(\"routing\");\n component.routings = [];\n component.routingNodes.map(function (routingNode, r) {\n var attributeNames = routingNode.getAttributeNames();\n var routing = {};\n attributeNames.map(function (attributeName, a) {\n routing[attributeNames[a]] = routingNode.getAttribute(attributeNames[a]);\n });\n component.routings.push(routing);\n if (!component.routingPaths) {\n component.routingPaths = [];\n }\n if (!component.routingPaths.includes(routing.path)) {\n component.routingPaths.push(routing.path);\n }\n if (!_top.global.get(\"routingPaths\")) {\n _top.global.set(\"routingPaths\", []);\n }\n if (!_top.global.get(\"routingPaths\").includes(routing.path)) {\n _top.global.get(\"routingPaths\").push(routing.path);\n }\n });\n }\n }\n } else {\n // not yet implemented.\n }\n resolve();\n \n });\n }\n \n parseTemplate(template) {\n var _self = this;\n var _parsedAssignmentText;\n var value = template;\n if (Object.hasOwnProperty.call(_self, \"templateHandler\")) {\n var templateHandlerName = _self.templateHandler;\n logger.debug(`[Component][${this.name}][parseTemplate] Attempting to use ${templateHandlerName} ...`);\n var templateHandlerClass = ClassFactory(templateHandlerName);\n var templateInstance = New(templateHandlerClass, {\n component: _self,\n template: value\n });\n templateInstance.component = _self;\n var selfData = _self.data;\n if (Object.hasOwnProperty.call(_self, \"assignRoutingParams\") && _self.assignRoutingParams) {\n try {\n selfData = Object.assign(selfData, _self.routingParams);\n } catch (e) {\n logger.debug(\"[parseTemplate] it was not possible to assign the routing params to the template\");\n }\n }\n _parsedAssignmentText = templateInstance.assign(selfData);\n } else {\n logger.debug(`[Component][${this.name}][parseTemplate] No value for templateHandler. Using raw content...`);\n _parsedAssignmentText = value;\n }\n return _parsedAssignmentText;\n }\n \n _reroute_() {\n /* This method set the selected routing and makes the switch to the templateURI */\n var rc = this;\n return new Promise(function (resolve, reject) {\n if (isBrowser) {\n if (__valid_routing_way__(rc.validRoutingWays, rc.routingWay)) {\n rc.routingPath = document.location[rc.routingWay];\n rc.routingSelected.map(function (routing, r) {\n var componentURI = ComponentURI({\n \"COMPONENTS_BASE_PATH\": _top.CONFIG.get(\"componentsBasePath\"),\n \"COMPONENT_NAME\": routing.name.toString(),\n \"TPLEXTENSION\": (Object.hasOwnProperty.call(routing, \"tplextension\")) ? (routing.tplextension) : (rc.tplextension),\n \"TPL_SOURCE\": \"default\" /* here is always default in order to get the right uri */\n });\n rc.templateURI = componentURI;\n });\n if (rc.routingSelected.length > 0) {\n rc.template = \"\";\n rc.body.innerHTML = \"\";\n }\n }\n }\n resolve(rc);\n \n });\n }\n \n lazyLoadImages() {\n if (isBrowser) {\n var component = this;\n var _componentRoot = (component.shadowed) ? (component.shadowRoot) : (component.body);\n var _imgLazyLoaded = [..._componentRoot.subelements(\"img[lazy-src]\")];\n var _lazyLoadImages = function (image) {\n image.setAttribute(\"src\", image.getAttribute(\"lazy-src\"));\n image.onload = () => {\n image.removeAttribute(\"lazy-src\");\n };\n };\n if (\"IntersectionObserver\" in window) {\n var observer = new IntersectionObserver((items, observer) => {\n items.forEach((item) => {\n if (item.isIntersecting) {\n _lazyLoadImages(item.target);\n observer.unobserve(item.target);\n }\n });\n });\n _imgLazyLoaded.map(function (img) {\n return observer.observe(img);\n });\n } else {\n _imgLazyLoaded.map(_lazyLoadImages);\n }\n \n } else {\n // not yet implemented\n }\n return null;\n }\n \n applyTransitionEffect(effectClassName) {\n var _Effect = ClassFactory(effectClassName);\n if (typeof _Effect === \"undefined\" ){\n throw Error (`${effectClassName} not found.`);\n }\n if (typeof _Effect !== \"undefined\" && is_a(_Effect, \"TransitionEffect\")) {\n this.effect = New(_Effect, {\n component: this\n });\n this.effect.apply(this.effect.defaultParams);\n } else {\n logger.debug(`${effectClassName} is ${__getType__(_Effect)} but is not a TransitionEffect`);\n }\n }\n \n applyObserveTransitionEffect(effectClassName) {\n if (isBrowser) {\n var component = this;\n var _componentRoot = (component.shadowed) ? (component.shadowRoot.host) : (component.body);\n var _applyEffect_ = function (element) {\n component.applyTransitionEffect(effectClassName);\n };\n if (\"IntersectionObserver\" in window) {\n var observer = new IntersectionObserver((items, observer) => {\n items.forEach((item) => {\n if (item.isIntersecting) {\n _applyEffect_(item.target);\n observer.unobserve(item.target);\n }\n });\n });\n observer.observe(_componentRoot);\n } else {\n _applyEffect_(_componentRoot);\n }\n } else {\n // not yet implemented\n }\n return null;\n }\n \n scrollIntoHash() {\n if (isBrowser) {\n var component = this;\n if (document.location.hash !== \"\") {\n var _componentRoot = (component.shadowed) ? (component.shadowRoot) : (component.body);\n _componentRoot.subelements(document.location.hash).map(\n function (element) {\n if (typeof element.scrollIntoView === \"function\") {\n element.scrollIntoView(\n _top.CONFIG.get(\"scrollIntoHash\", {\n behavior: \"auto\",\n block: \"top\",\n inline: \"top\"\n })\n );\n }\n }\n );\n }\n } else {\n // not yet implemented\n }\n }\n \n i18n_translate() {\n if (isBrowser) {\n if (_top.CONFIG.get(\"use_i18n\")) {\n var component = this;\n var _componentRoot = (component.shadowed) ? (component.shadowRoot) : (component.body);\n var lang1 = _top.CONFIG.get(\"lang\", \"en\");\n var lang2 = navigator.language.slice(0, 2);\n var i18n = _top.global.get(\"i18n\");\n if ((lang1 !== lang2) && (typeof i18n === \"object\" && Object.hasOwnProperty.call(i18n, \"messages\"))) {\n var callback_i18n = function () {\n var component = this;\n return new Promise(function (resolve, reject) {\n var messages = i18n.messages.filter(function (message) {\n return Object.hasOwnProperty.call(message, lang1) && Object.hasOwnProperty.call(message, lang2);\n });\n _componentRoot.subelements(\"ul,li,h1,h2,h3,a,b,p,input,textarea,summary,details,option,component\")\n .map(function (element) {\n messages.map(function (message) {\n var _innerHTML = element.innerHTML;\n _innerHTML = _innerHTML.replace(new RegExp(`${message[lang1]}`, \"g\"), message[lang2]);\n element.innerHTML = _innerHTML;\n return null;\n });\n return element;\n });\n resolve();\n });\n };\n callback_i18n.call(component).then(function () {\n logger.debug(\"i18n loaded for component: \" + component.name);\n });\n \n }\n }\n } else {\n // not yet implemented\n }\n }\n \n addComponentHelper(componentHelper) {\n var component = this;\n component._componentHelpers.push(componentHelper);\n }\n \n runComponentHelpers() {\n if (isBrowser) {\n var component = this;\n var __component_helpers__ = [];\n /*\n * BEGIN use i18n translation\n */\n __component_helpers__.push(component.i18n_translate.bind(component));\n /*\n * END use i18n translation\n */\n \n /*\n * BEGIN component scrollIntoHash\n */\n __component_helpers__.push(component.scrollIntoHash.bind(component));\n /*\n * END component scrollIntoHash\n */\n \n /*\n * BEGIN component images lazy-load\n */\n \n __component_helpers__.push(component.lazyLoadImages.bind(component));\n \n /*\n * END component images lazy-load\n */\n \n __component_helpers__ = __component_helpers__.concat(component._componentHelpers);\n \n __component_helpers__.map(\n function (_component_helper_) {\n logger.debug(`Executing ${_component_helper_.name} as component helper for ${component.name}...`);\n _component_helper_();\n }\n );\n \n } else {\n // not yet implemented\n }\n \n }\n \n }\n \n ]);\n \n (_methods_)(ClassFactory(\"Component\")).map(function (__c__) {\n (_protected_code_)(__c__);\n });\n \n if (isBrowser){\n window.addEventListener(\"popstate\",function (popStateEvent){\n popStateEvent.stopImmediatePropagation();\n popStateEvent.stopPropagation();\n ClassFactory(\"Component\").route();\n });\n }\n \n Package(\"com.qcobjects.controllers\", [\n class Controller extends ClassFactory(\"InheritClass\") {\n component = null;\n dependencies = [];\n constructor ({\n component,\n dependencies\n }){\n super ({component, dependencies});\n this.component = component;\n this.dependencies = dependencies;\n if (typeof this.component === \"undefined\" || this.component === \"null\"){\n throw Error (`${__getType__(this)} must be called with a component`);\n }\n }\n \n routingSelectedAttr(attrName) {\n return this.component.routingSelected.map(function (r) {\n return r[attrName];\n }).filter(function (v) {\n return v;\n }).pop();\n }\n \n isTouchable() {\n return (\"ontouchstart\" in window) ||\n (navigator.MaxTouchPoints > 0) ||\n (navigator.msMaxTouchPoints > 0);\n }\n \n onpress(subelementSelector, handler) {\n try {\n if (this.isTouchable()) {\n this.component.body.subelements(subelementSelector)[0].addEventListener(\"touchstart\", handler, {\n passive: true\n });\n } else {\n this.component.body.subelements(subelementSelector)[0].addEventListener(\"click\", handler, {\n passive: true\n });\n }\n } catch (e) {\n logger.debug(\"No button to assign press event\");\n }\n }\n \n createRoutingController() {\n var controller = this;\n var component = controller.component;\n var controllerName = controller.routingSelectedAttr(\"controllerclass\");\n if (typeof controllerName !== \"undefined\") {\n var _Controller = ClassFactory(controllerName);\n if (typeof _Controller !== \"undefined\") {\n component.routingController = New(_Controller, {\n component: component\n }); // Initializes the main controller for the component\n if (Object.hasOwnProperty.call(component.routingController, \"done\") && typeof component.routingController.done === \"function\") {\n component.routingController.done.call(component.routingController);\n }\n }\n }\n }\n \n done(){} \n }\n ]);\n \n Package(\"com.qcobjects.views\",[\n class View extends ClassFactory(\"InheritClass\") {\n constructor ({component = undefined, dependencies = []}){\n super(...arguments);\n if (typeof this.component === \"undefined\" || this.component === \"null\"){\n throw Error (`${__getType__(this)} must be called with a component`);\n }\n \n }\n }\n ]);\n \n Package(\"com.qcobjects.api\", [\n class Service extends ClassFactory(\"InheritClass\") {\n kind= \"rest\";\n /* it can be rest, mockup, local */\n domain= _domain_;\n basePath= _basePath_;\n url= \"\";\n method= \"GET\";\n data= {};\n reload= false;\n cached= false;\n \n constructor () {\n super(...arguments);\n }\n \n set(name, value) {\n this[name] = value;\n }\n \n get(name) {\n return this[name];\n }\n \n }\n \n ]);\n \n Package(\"com.qcobjects.api.services\", [\n class JSONService extends ClassFactory(\"Service\") {\n method= \"GET\";\n cached= false;\n headers= {\n \"Content-Type\": \"application/json\",\n \"charset\": \"utf-8\"\n };\n JSONresponse= null;\n done(result) {\n logger.debug(\"***** RECEIVED RESPONSE:\");\n logger.debug(result.service.template);\n this.JSONresponse = JSON.parse(result.service.template);\n }\n \n constructor (){\n super(...arguments);\n }\n \n }\n ]);\n \n Package(\"com.qcobjects.api.config\", [\n class ConfigService extends ClassFactory(\"JSONService\"){\n method= \"GET\";\n cached= false;\n configFileName= \"config.json\";\n headers= {\n \"Content-Type\": \"application/json\",\n \"charset\": \"utf-8\"\n };\n JSONresponse= null;\n done(result) {\n logger.debug(\"***** CONFIG LOADED:\");\n logger.debug(result.service.template);\n this.JSONresponse = JSON.parse(result.service.template);\n if (Object.hasOwnProperty.call(this.JSONresponse, \"__encoded__\")) {\n this.JSONresponse = JSON.parse(ClassFactory(\"_Crypt\").decrypt(this.JSONresponse.__encoded__, _secretKey));\n }\n for (var k in this.JSONresponse) {\n _top.CONFIG.set(k, this.JSONresponse[k]);\n }\n this.configLoaded.call(this);\n }\n fail(result) {\n this.configLoaded.call(this);\n }\n \n constructor (){\n super(...arguments);\n this.set(\"url\", this.get(\"basePath\") + this.get(\"configFileName\"));\n }\n }\n ]);\n \n Package(\"com.qcobjects.valueObjects\", [\n class VO extends ClassFactory(\"InheritClass\") {\n constructor (){\n super(...arguments);\n }\n }\n ]);\n \n /**\n * Returns a standarized uri for a component\n * @example\n * templateURI = ComponentURI({'COMPONENTS_BASE_PATH':'','COMPONENT_NAME':'','TPLEXTENSION':'','TPL_SOURCE':''})\n * @author: Jean Machuca <correojean@gmail.com>\n * @param params an object with the params to build the uri path\n */\n var ComponentURI = function (params) {\n var templateURI = \"\";\n if (params[\"TPL_SOURCE\"] === \"default\") {\n templateURI = \"{{COMPONENTS_BASE_PATH}}{{COMPONENT_NAME}}.{{TPLEXTENSION}}\";\n for (var k in params) {\n var param = params[k];\n templateURI = templateURI.replace(\"{{\" + k + \"}}\", params[k]);\n }\n }\n return templateURI;\n };\n \n /**\n * Loads a simple component from a template\n *\n * @author: Jean Machuca <correojean@gmail.com>\n * @param component a Component object\n */\n var componentLoader = function (component, _async) {\n var __promise__;\n var _componentLoaderInBrowser = function (component, _async) {\n __promise__ = new Promise(function (resolve, reject) {\n var _promise = component.__promise__;\n var container = (Object.hasOwnProperty.call(component, \"container\") && typeof component.container !== \"undefined\" && component.container !== null) ? (component.container) : (component.body);\n if (container !== null) {\n var _feedComponent_ = function (component) {\n component.feedComponent();\n var standardResponse = {\n \"request\": xhr,\n \"component\": component\n };\n resolve.call(_promise, standardResponse);\n };\n logger.debug(\"LOADING COMPONENT DATA {{DATA}} FROM {{URL}}\".replace(\"{{DATA}}\", _DataStringify(component.data)).replace(\"{{URL}}\", component.url));\n \n var _componentLoaded = function () {\n var successStatus = (is_file) ? (0) : (200);\n if (xhr.status === successStatus) {\n var response = xhr.responseText;\n logger.debug(\"Data received {{DATA}}\".replace(\"{{DATA}}\", _DataStringify(response)));\n logger.debug(\"CREATING COMPONENT {{NAME}}\".replace(\"{{NAME}}\", component.name));\n component.template = response;\n if (component.cached && (typeof cache !== \"undefined\")) {\n cache.save(component.name, component.template);\n }\n _feedComponent_.call(this, component);\n } else {\n var standardResponse = {\n \"request\": xhr,\n \"component\": component\n };\n reject.call(_promise, standardResponse);\n \n }\n };\n if (typeof component.template === \"string\" && component.template !== \"\") {\n // component already has a template it does not need to be reloaded\n _feedComponent_.call(this, component);\n } else {\n var is_file = (component.url.startsWith(\"file:\")) ? (true) : (false);\n var xhr = new XMLHttpRequest();\n if (!is_file) {\n try {\n logger.debug(\"Calling the url of component in async mode.\");\n xhr.open(component.method, component.url, true);\n } catch (e) {\n logger.debug(\"Last try has failed... The component cannot be loaded.\");\n }\n } else {\n if (\"fetch\" in _top) {\n logger.debug(\"I can use fetch...\");\n logger.debug(\"It is a file to be loaded, so I will try to use fetch\");\n var _p = fetch(component.url).then(response => {\n logger.debug(\"I got a response from fetch, so I'll feed the component\");\n response.text().then(text => {\n component.template = text;\n _feedComponent_.call(this, component);\n });\n });\n }\n }\n if (!is_phonegap && !is_file) {\n xhr.setRequestHeader(\"Content-Type\", \"text/html\");\n }\n if (!is_file) {\n xhr.onload = _componentLoaded;\n }\n var _directLoad = function (is_file) {\n is_file = (typeof is_file === \"undefined\" || !is_file) ? (false) : (true);\n logger.debug(\"SENDING THE NORMAL REQUEST \");\n if (is_file) {\n if (!(\"fetch\" in _top)) {\n logger.debug(\"I have to try to load the file using xhr... \");\n xhr.send(null);\n if (xhr.status === XMLHttpRequest.DONE) {\n _componentLoaded.call(this);\n }\n }\n } else {\n logger.debug(\"Trying to send the data to the component... \");\n xhr.send(_DataStringify(component.data));\n }\n };\n \n if (component.cached && (!is_file)) {\n logger.debug(\"USING CACHE FOR COMPONENT: \" + component.name);\n var cache = new ComplexStorageCache({\n index: component.cacheIndex,\n load(cacheController) {\n _directLoad.call(this, is_file);\n },\n alternate(cacheController) {\n if (component.method === \"GET\") {\n component.template = cacheController.cache.getCached(component.cacheIndex);\n _feedComponent_.call(this, component);\n } else {\n _directLoad.call(this, is_file);\n }\n return;\n }\n });\n global.lastCache = cache;\n } else {\n logger.debug(\"NOT USING CACHE FOR COMPONENT: \" + component.name);\n _directLoad.call(this, is_file);\n }\n \n }\n } else {\n logger.debug(\"CONTAINER DOESNT EXIST\");\n }\n });\n __promise__.then(function (standardResponse) {\n return component.__done__().then (function (){\n var _ret_;\n if (typeof component.done === \"function\") {\n _ret_ = component.done.call(component, standardResponse);\n }\n return Promise.resolve(_ret_);\n });\n }, function (standardResponse) {\n var _ret_;\n if (typeof component.fail === \"function\") {\n _ret_ = component.fail.call(component, standardResponse);\n }\n return Promise.reject(_ret_);\n }).catch(function (e) {\n logger.debug(\"Something wrong loading the component\");\n });\n return __promise__;\n };\n var _componentLoaderInNode = function (component, _async) {\n __promise__ = new Promise(function (resolve, reject) {\n var _promise = __promise__;\n var _feedComponent_ = function (component) {\n component.feedComponent();\n var standardResponse = {\n \"request\": null,\n \"component\": component\n };\n resolve.call(_promise, standardResponse);\n };\n logger.debug(\"LOADING COMPONENT DATA {{DATA}} FROM {{URL}}\".replace(\"{{DATA}}\", _DataStringify(component.data)).replace(\"{{URL}}\", component.url));\n \n var _componentLoaded = function (err, responseText) {\n if (!err) {\n var response = responseText.toString();\n logger.debug(\"Data received {{DATA}}\".replace(\"{{DATA}}\", _DataStringify(response)));\n logger.debug(\"CREATING COMPONENT {{NAME}}\".replace(\"{{NAME}}\", component.name));\n component.template = response;\n if (component.cached && (typeof cache !== \"undefined\")) {\n cache.save(component.name, component.template);\n }\n _feedComponent_.call(this, component);\n } else {\n var standardResponse = {\n \"request\": null,\n \"component\": component\n };\n reject.call(_promise, standardResponse);\n }\n };\n if (typeof component.template === \"string\" && component.template !== \"\") {\n // component already has a template it does not need to be reloaded\n _feedComponent_.call(this, component);\n } else {\n logger.debug(\"Loading the component as a local file in server...\");\n var _directLoad = function (is_file) {\n const fs = _require_(\"fs\");\n logger.debug(\"SENDING THE NORMAL REQUEST \");\n fs.readFile(component.url, _componentLoaded);\n };\n \n if (component.cached) {\n logger.debug(\"USING CACHE FOR COMPONENT: \" + component.name);\n var cache = new ComplexStorageCache({\n index: component.cacheIndex,\n load(cacheController) {\n _directLoad.call(this);\n },\n alternate(cacheController) {\n if (component.method === \"GET\") {\n component.template = cacheController.cache.getCached(component.cacheIndex);\n _feedComponent_.call(this, component);\n } else {\n _directLoad.call(this);\n }\n return;\n }\n });\n global.lastCache = cache;\n } else {\n logger.debug(\"NOT USING CACHE FOR COMPONENT: \" + component.name);\n _directLoad.call(this);\n }\n \n }\n });\n __promise__.then(function (standardResponse) {\n return component.__done__().then (function (){\n var _ret_;\n if (typeof component.done === \"function\") {\n _ret_ = component.done.call(component, standardResponse);\n }\n return Promise.resolve(_ret_);\n });\n }, function (standardResponse) {\n var _ret_;\n if (typeof component.fail === \"function\") {\n _ret_ = component.fail.call(component, standardResponse);\n }\n return Promise.reject(_ret_);\n }).catch(function (e) {\n logger.debug(\"Something wrong loading the component\");\n });\n return __promise__;\n };\n \n var _ret_;\n if (isBrowser) {\n if (typeof _async !== \"undefined\" && _async) {\n _ret_ = asyncLoad(_componentLoaderInBrowser, arguments);\n } else {\n _ret_ = _componentLoaderInBrowser(component, _async);\n }\n } else {\n _ret_ = _componentLoaderInNode(component, _async);\n }\n return _ret_;\n };\n \n /**\n * Loads a simple component from a template\n *\n * @author: Jean Machuca <correojean@gmail.com>\n * @param service a Service object\n */\n var serviceLoader = function (service, _async) {\n var _serviceLoaderInBrowser = function (service, _async) {\n var _promise = new Promise(\n function (resolve, reject) {\n \n logger.debug(\"LOADING SERVICE DATA {{DATA}} FROM {{URL}}\".replace(\"{{DATA}}\", _DataStringify(service.data)).replace(\"{{URL}}\", service.url));\n var xhr = new XMLHttpRequest();\n xhr.withCredentials = service.withCredentials;\n var xhrasync = true; // always async because xhr sync is deprecated\n xhr.open(service.method, service.url, xhrasync);\n for (var header in service.headers) {\n try {\n if (typeof service.headers[header] !== \"function\") {\n xhr.setRequestHeader(header, service.headers[header]);\n }\n } catch (e) {\n logger.debug(\"Something went wrong when assign the header \" + header);\n }\n }\n xhr.onload = function () {\n if (xhr.status === 200) {\n var response = xhr.responseText;\n logger.debug(\"Data received {{DATA}}\".replace(\"{{DATA}}\", _DataStringify(response)));\n logger.debug(\"CREATING SERVICE {{NAME}}\".replace(\"{{NAME}}\", service.name));\n service.template = response;\n if (service.cached && (typeof cache !== \"undefined\")) {\n cache.save(service.name, service.template);\n }\n if (typeof service.done === \"function\") {\n var standardResponse = {\n \"request\": xhr,\n \"service\": service\n };\n service.done.call(service, standardResponse);\n resolve.call(_promise, standardResponse);\n }\n } else {\n if (typeof service.fail === \"function\") {\n var standardResponse = {\n \"request\": xhr,\n \"service\": service\n };\n service.fail.call(service, standardResponse);\n reject.call(_promise, standardResponse);\n }\n }\n };\n \n var _directLoad = function () {\n logger.debug(\"SENDING THE NORMAL REQUEST \");\n try {\n xhr.send(_DataStringify(service.data));\n } catch (e) {\n logger.debug(\"SOMETHING WRONG WITH REQUEST \");\n reject.call(_promise, {\n request: xhr,\n service: service\n });\n }\n };\n \n if (service.cached) {\n var cache = new ComplexStorageCache({\n index: service.data,\n load(cacheController) {\n _directLoad.call(this);\n },\n alternate(cacheController) {\n if (service.method === \"GET\") {\n service.template = cacheController.cache.getCached(service.name);\n if (typeof service.done === \"function\") {\n var standardResponse = {\n \"request\": xhr,\n \"service\": service\n };\n service.done.call(service, standardResponse);\n resolve.call(_promise, standardResponse);\n }\n } else {\n _directLoad.call(this);\n }\n return;\n }\n });\n global.lastCache = cache;\n } else {\n _directLoad.call(this);\n }\n \n return xhr;\n }\n );\n return _promise;\n };\n \n var _serviceLoaderInNode = function (service, _async) {\n var _promise = new Promise(\n function (resolve, reject) {\n if (typeof URL === \"undefined\") {\n global.URL = _require_(\"url\").URL;\n let URL = global.URL;\n }\n var serviceURL = new URL(service.url);\n var req;\n service.useHTTP2 = Object.hasOwnProperty.call(service, \"useHTTP2\") && service.useHTTP2;\n \n \n var captureEvents = function (req) {\n logger.debug(\"LOADING SERVICE DATA (non-browser) {{DATA}} FROM {{URL}}\".replace(\"{{DATA}}\", _DataStringify(service.data)).replace(\"{{URL}}\", service.url));\n var dataXML;\n var standardResponse = {\n \"http2Client\": client,\n \"request\": req,\n \"service\": service,\n \"responseHeaders\": null\n };\n \n if (typeof service.data === \"object\" && service.data !== null) {\n if (service.useHTTP2) {\n try {\n logger.debug(\"Sending data...\");\n let buffer = new Buffer(_DataStringify(service.data));\n req.write(buffer);\n } catch (e) {\n logger.debug(\"It was not possible to send any data\");\n }\n }\n }\n \n dataXML = \"\";\n req.on(\"response\", (responseHeaders, flags) => {\n logger.debug(\"receiving response...\");\n standardResponse.responseHeaders = responseHeaders;\n /*\n for (const name in responseHeaders) {\n logger.debug(`${name}: ${responseHeaders[name]}`);\n }\n */\n dataXML = \"\";\n });\n req.on(\"data\", (chunk) => {\n logger.debug(\"receiving data...\");\n // do something with the data\n dataXML += \"\" + chunk.toString();\n service.template = dataXML;\n });\n if (service.useHTTP2) {\n req.resume();\n }\n req.on(\"end\", () => {\n logger.debug(\"ending call...\");\n service.template = dataXML;\n if (Object.hasOwnProperty.call(service, \"useHTTP2\") && service.useHTTP2) {\n client.destroy();\n } else {\n req.destroy();\n }\n service.done.call(service, standardResponse);\n resolve.call(_promise, standardResponse);\n });\n if (service.useHTTP2) {\n req.end();\n }\n \n };\n \n try {\n var requestOptions;\n if (service.useHTTP2) {\n logger.debug(\"using http2\");\n var http2 = _require_(\"http2\");\n var client = http2.connect(serviceURL.origin);\n requestOptions = Object.assign({\n \":method\": service.method,\n \":path\": serviceURL.pathname\n }, service.options);\n requestOptions = Object.assign(requestOptions, service.headers);\n req = client.request(requestOptions);\n req.setEncoding(\"utf8\");\n captureEvents(req);\n } else {\n if (serviceURL.protocol === \"http:\") {\n var http = _require_(\"http\");\n var request = http.request;\n requestOptions = Object.assign({\n \"url\": service.url,\n headers: service.headers\n }, service.options);\n var req = request(service.url);\n captureEvents(req);\n } else if (serviceURL.protocol === \"https:\") {\n var https = _require_(\"https\");\n requestOptions = Object.assign({\n hostname: serviceURL.hostname,\n port: serviceURL.port,\n path: serviceURL.pathname,\n method: service.method,\n headers: service.headers\n }, service.options);\n var _req_ = https.request(requestOptions, function (req) {\n captureEvents(req);\n });\n _req_.end();\n } else {\n var e = \"Protocol not supported: \" + serviceURL.protocol;\n logger.debug(e);\n throw new Error(e);\n }\n }\n \n \n } catch (e) {\n logger.debug(e);\n service.fail.call(service, e);\n reject.call(_promise, e);\n \n }\n }).catch(function (e) {\n console.log(e);\n logger.debug(\"Something happened when trying to call the service: \" + service.name);\n service.fail.call(service, e);\n });\n return _promise;\n \n };\n \n var _serviceLoaderMockup = function (service, _async) {\n var _promise = new Promise(\n function (resolve, reject) {\n logger.debug(`Calling mockup service ${service.name} ...`);\n var standardResponse = {\n \"request\": null,\n \"service\": service,\n \"responseHeaders\": service.responseHeaders\n };\n if (typeof service.mockup === \"function\") {\n service.mockup.call(service, standardResponse);\n } else {\n service.done.call(service, standardResponse);\n }\n resolve.call(_promise, standardResponse);\n });\n return _promise;\n };\n var _serviceLoaderLocal = function (service, _async) {\n var _promise = new Promise(\n function (resolve, reject) {\n logger.debug(`Calling local service ${service.name} ...`);\n var standardResponse = {\n \"request\": null,\n \"service\": service,\n \"responseHeaders\": service.responseHeaders\n };\n if (typeof service.local === \"function\") {\n service.local.call(service, standardResponse);\n } else {\n service.done.call(service, standardResponse);\n }\n resolve.call(_promise, standardResponse);\n });\n return _promise;\n };\n \n var _ret_;\n switch (service.kind) {\n case \"rest\":\n if (isBrowser) {\n if (typeof _async !== \"undefined\" && _async) {\n _ret_ = asyncLoad(_serviceLoaderInBrowser, arguments);\n } else {\n _ret_ = _serviceLoaderInBrowser(service, _async);\n }\n } else {\n _ret_ = _serviceLoaderInNode(service, _async);\n }\n break;\n case \"mockup\":\n _ret_ = _serviceLoaderMockup(service, _async);\n break;\n case \"local\":\n _ret_ = _serviceLoaderLocal(service, _async);\n break;\n default:\n logger.debug(`The value of the kind property of the service ${service.name} is not valid`);\n break;\n }\n return _ret_;\n };\n Export(serviceLoader);\n Export(componentLoader);\n Export(ComponentURI);\n Export(ObjectName);\n Export(_DataStringify);\n Export(isQCObjects_Class);\n Export(isQCObjects_Object);\n Export(NamespaceRef);\n \n \n if (isBrowser) {\n \n Element.prototype.buildComponents = function (rebuildObjects = false) {\n var tagFilter = _tag_filter_;\n var d = this;\n var elements = d.subelements(tagFilter);\n return _buildComponentsFromElements_(elements, null);\n };\n \n HTMLDocument.prototype.buildComponents = Element.prototype.buildComponents;\n HTMLElement.prototype.buildComponents = Element.prototype.buildComponents;\n var _ComponentWidget_ = class extends HTMLElement {\n constructor() {\n super(...arguments);\n const componentWidget = this;\n const componentName = componentWidget.nodeName.toLowerCase();\n const componentBody = _DOMCreateElement(\"quick-component\");\n const __enabled__atributes__ = componentWidget.getAttributeNames();\n componentBody.setAttribute(\"name\", componentName);\n \n if (!componentWidget.hasAttribute(\"shadowed\")) {\n componentBody.setAttribute(\"shadowed\", \"true\");\n }\n __enabled__atributes__.map(function (attributeName) {\n if (componentWidget.hasAttribute(attributeName)) {\n componentBody.setAttribute(attributeName, componentWidget.getAttribute(attributeName));\n componentWidget.removeAttribute(attributeName);\n }\n });\n var data_attributenames = componentWidget.getAttributeNames().filter(function (a) {\n return a.startsWith(\"data-\");\n }).map(function (a) {\n return a.split(\"-\")[1];\n });\n data_attributenames.map(function (_attribute_name_) {\n componentBody.setAttribute(\"data-\" + _attribute_name_, componentWidget.getAttribute(\"data-\" + _attribute_name_));\n componentWidget.removeAttribute(\"data-\" + _attribute_name_);\n });\n [...componentWidget.children].map(function (element) {\n componentBody.appendChild(element.cloneNode(true));\n element.remove();\n });\n \n componentWidget.append(componentBody);\n }\n };\n Export(_ComponentWidget_);\n var RegisterWidget = function (widgetName) {\n customElements.define(widgetName, class extends _ComponentWidget_ {});\n };\n var RegisterWidgets = function () {\n var widgetList = [...arguments];\n widgetList.filter(function (widgetName) {\n return typeof widgetName === \"string\";\n }).map(function (widgetName) {\n RegisterWidget(widgetName);\n });\n };\n (_protected_code_)(RegisterWidget);\n (_protected_code_)(RegisterWidgets);\n Export(RegisterWidget);\n Export(RegisterWidgets);\n \n } else {\n // not yet implemented.\n }\n \n if (!isBrowser) {\n \n Package(\"com.qcobjects.api\", [\n class BackendMicroservice extends ClassFactory(\"InheritClass\") {\n \n constructor ({\n domain= _domain_,\n basePath= _basePath_,\n body = null,\n stream= null,\n request= null\n }){\n super(...arguments);\n logger.debug(\"Initializing BackendMicroservice...\");\n let microservice = this;\n if (typeof this.body === \"undefined\") {\n this.body = null;\n }\n if (typeof body !== \"undefined\"){\n this.body = body;\n }\n this.cors();\n microservice.stream = stream;\n stream.on(\"data\", (data) => {\n // data from POST, GET\n var requestMethod = request.method.toLowerCase();\n var supportedMethods = {\n \"post\": microservice.post,\n };\n if (Object.hasOwnProperty.call(supportedMethods, requestMethod)) {\n supportedMethods[requestMethod].call(microservice, data);\n }\n });\n \n // data from POST, GET\n var requestMethod = request.method.toLowerCase();\n var supportedMethods = {\n \"get\": microservice.get,\n \"head\": microservice.head,\n \"put\": microservice.put,\n \"delete\": microservice.delete,\n \"connect\": microservice.connect,\n \"options\": microservice.options,\n \"trace\": microservice.trace,\n \"patch\": microservice.patch\n };\n if (Object.hasOwnProperty.call(supportedMethods, requestMethod)) {\n supportedMethods[requestMethod].call(microservice);\n }\n \n \n }\n \n cors() {\n if (this.route.cors) {\n logger.debug(\"Validating CORS...\");\n let {\n allow_origins,\n allow_credentials,\n allow_methods,\n allow_headers\n } = this.route.cors;\n var microservice = this;\n if (typeof microservice.headers !== \"object\") {\n microservice.headers = {};\n }\n if (typeof microservice.route.responseHeaders !== \"object\") {\n microservice.route.responseHeaders = {};\n }\n if (typeof allow_origins !== \"undefined\") {\n logger.debug(\"CORS: allow_origins available. Validating origins...\");\n // an example of allow_origins is ['https://example.com','http://www.example.com']\n if (allow_origins === \"*\" || (typeof microservice.request.headers.origin === \"undefined\") || [...allow_origins].indexOf(microservice.request.headers.origin) !== -1) {\n // for compatibility with all browsers allways return a wildcard when the origin is allowed\n logger.debug(\"CORS: Adding header Access-Control-Allow-Origin=*\");\n microservice.route.responseHeaders[\"Access-Control-Allow-Origin\"] = \"*\";\n } else {\n logger.debug(\"CORS: Origin is not allowed: \" + microservice.request.headers.origin);\n logger.debug(\"CORS: Forcing to finish the response...\");\n this.body = {};\n try {\n this.done();\n } catch (e) {\n logger.debug(`It was not possible to finish the call to the microservice: ${e}`);\n }\n }\n } else {\n logger.debug(\"CORS: no allow_origins available. Allowing all origins...\");\n logger.debug(\"CORS: Adding header Access-Control-Allow-Origin=*\");\n microservice.route.responseHeaders[\"Access-Control-Allow-Origin\"] = \"*\";\n }\n if (typeof allow_credentials !== \"undefined\") {\n logger.debug(`CORS: allow_credentials present. Allowing ${allow_credentials}...`);\n microservice.route.responseHeaders[\"Access-Control-Allow-Credentials\"] = allow_credentials.toString();\n } else {\n logger.debug(\"CORS: No allow_credentials present. Allowing all credentials.\");\n microservice.route.responseHeaders[\"Access-Control-Allow-Credentials\"] = \"true\";\n }\n if (typeof allow_methods !== \"undefined\") {\n logger.debug(`CORS: allow_methods present. Allowing ${allow_methods}...`);\n microservice.route.responseHeaders[\"Access-Control-Allow-Methods\"] = [...allow_methods].join(\",\");\n } else {\n logger.debug(\"CORS: No allow_methods present. Allowing only GET, OPTIONS and POST\");\n microservice.route.responseHeaders[\"Access-Control-Allow-Methods\"] = \"GET, OPTIONS, POST\";\n }\n if (typeof allow_headers !== \"undefined\") {\n logger.debug(`CORS: allow_headers present. Allowing ${allow_headers}...`);\n microservice.route.responseHeaders[\"Access-Control-Allow-Headers\"] = [...allow_headers].join(\",\");\n } else {\n logger.debug(`CORS: No allow_headers present. Allowing all headers...`);\n microservice.route.responseHeaders[\"Access-Control-Allow-Headers\"] = \"*\";\n }\n } else {\n logger.debug(\"No CORS validation available. You can specify cors in CONFIG.backend.routes[].cors\");\n }\n }\n \n \n head(formData) {\n this.done();\n }\n \n get(formData) {\n logger.debug(`[BackendMicroservice.get] Data received: ${_DataStringify(formData)}`);\n this.done();\n }\n \n post(formData) {\n this.done();\n }\n \n put(formData) {\n this.done();\n }\n \n delete(formData) {\n this.done();\n }\n \n connect(formData) {\n this.done();\n }\n \n options(formData) {\n this.done();\n }\n \n trace(formData) {\n this.done();\n }\n \n patch(formData) {\n this.done();\n }\n \n finishWithBody(stream) {\n try {\n logger.debug(\"[BackendMicroservice.finishWithBody] Ending the stream...\");\n logger.debug(`[BackendMicroservice.finishWithBody] type of body is: ${typeof this.body}`);\n if (typeof this.body !== \"string\"){\n this.body = _DataStringify(this.body);\n }\n logger.debug(`[BackendMicroservice.finishWithBody] \\n body: ${this.body} `);\n stream.write(this.body);\n stream.end();\n logger.debug(`[BackendMicroservice.finishWithBody] Stream ended.`);\n } catch (e) {\n logger.debug(`[BackendMicroservice.finishWithBody] Something went wrong ending the stream: ${e}`);\n }\n }\n \n done() {\n logger.debug(`[BackendMicroservice.done] Finalizing the response...`);\n var microservice = this;\n var stream = microservice.stream;\n try {\n logger.debug(`[BackendMicroservice.done] Sending response headers...`);\n if (microservice.route.responseHeaders){\n logger.debug(`[BackendMicroservice.done] Response headers present: ${Object.keys(microservice.route.responseHeaders)}`);\n stream.respond(microservice.route.responseHeaders);\n } else {\n throw Error(`[BackendMicroservice.done] No headers present.`);\n }\n } catch (e) {\n logger.debug(`[BackendMicroservice.done] Something went wrong sending response headers: ${e}`);\n }\n if (microservice.body !== null) {\n try {\n logger.debug(`[BackendMicroservice.done] A body of message is present. Finalizing the response...`);\n microservice.finishWithBody.call(microservice, stream);\n } catch (e) {\n logger.debug(`[BackendMicroservice.done] Something went wrong finalizing the response: ${e}`);\n }\n } else {\n logger.debug(\"[BackendMicroservice.done] No body present. Ending stream...\");\n stream.end();\n }\n }\n \n \n }\n ]);\n \n \n }\n \n Class(\"SourceJS\", Object, {\n domain: _domain_,\n basePath: _basePath_,\n body: _DOMCreateElement(\"script\"),\n type: \"text/javascript\",\n containerTag: \"body\",\n url: \"\",\n data: {},\n async: false,\n external: false,\n set(name, value) {\n this[name] = value;\n },\n get(name) {\n return this[name];\n },\n status: false,\n done() {},\n fail() {},\n rebuild() {\n var context = this;\n try {\n document.getElementsByTagName(context.containerTag)[0].appendChild(\n (function (s, url, context) {\n s.type = context.type;\n s.src = url;\n s.crossOrigin = (Object.hasOwnProperty.call(context, \"crossOrigin\")) ? (context.crossOrigin) : (\"anonymous\");\n s.async = context.async;\n s.onreadystatechange = function () {\n if (this.readyState === \"complete\") {\n context.done.call(context);\n }\n };\n s.onload = function (e) {\n context.status = true;\n context.done.call(context, e);\n };\n s.onerror = function (e) {\n context.status = false;\n context.fail.call(context, e);\n };\n context.body = s;\n return s;\n }).call(this,\n _DOMCreateElement(\"script\"),\n (this.external) ? (this.url) : (this.basePath + this.url), context));\n } catch (e) {\n context.status = false;\n context.fail.call(context, e);\n }\n },\n Cast(o) {\n return _Cast(this, o);\n },\n _new_(properties) {\n this.__new__(properties);\n this.rebuild();\n }\n });\n Class(\"SourceCSS\", Object, {\n domain: _domain_,\n basePath: _basePath_,\n body: _DOMCreateElement(\"link\"),\n url: \"\",\n data: {},\n async: false,\n external: false,\n set(name, value) {\n this[name] = value;\n },\n get(name) {\n return this[name];\n },\n done() {},\n rebuild() {\n var context = this;\n if (isBrowser) {\n window.document.getElementsByTagName(\"head\")[0].appendChild(\n (function (s, url, context) {\n s.type = \"text/css\";\n s.rel = \"stylesheet\";\n s.href = url;\n s.crossOrigin = \"anonymous\";\n s.onreadystatechange = function () {\n if (this.readyState === \"complete\") {\n context.done.call(context);\n }\n };\n s.onload = context.done;\n context.body = s;\n return s;\n }).call(this,\n _DOMCreateElement(\"link\"),\n (this.external) ? (this.url) : (this.basePath + this.url), context));\n }\n },\n Cast(o) {\n return _Cast(this, o);\n },\n _new_(properties) {\n this.__new__(properties);\n this.rebuild();\n }\n });\n \n /**\n * Array math functions\n */\n var __to_number = function (value) {\n return (isNaN(value)) ? (new Number(0)) : (new Number(value));\n };\n Array.prototype.unique = function () {\n return this.filter(function (value, index, self) {\n return self.indexOf(value) === index;\n });\n };\n Array.unique = function (a) {\n return a.unique();\n };\n (_protected_code_)(Array.unique);\n (_protected_code_)(Array.prototype.unique);\n Array.prototype.table = function () {\n console.table(this);\n };\n Array.table = function (a) {\n return a.table();\n };\n (_protected_code_)(Array.table);\n (_protected_code_)(Array.prototype.table);\n Array.prototype.sum = function () {\n return this.reduce(function (prev, current) {\n return __to_number(prev) + __to_number(current);\n }, 0);\n };\n Array.sum = function (a) {\n return a.sum();\n };\n (_protected_code_)(Array.sum);\n (_protected_code_)(Array.prototype.sum);\n Array.prototype.avg = function () {\n return (this.length < 1) ? (0) : (this.reduce(function (prev, current) {\n return ((__to_number(prev) + __to_number(current)) / 2);\n }));\n };\n Array.avg = function (a) {\n return a.avg();\n };\n (_protected_code_)(Array.avg);\n (_protected_code_)(Array.prototype.avg);\n Array.prototype.min = function () {\n return this.reduce(function (prev, current) {\n return (__to_number(prev) <= __to_number(current)) ? (prev) : (current);\n }, Infinity);\n };\n Array.min = function (a) {\n return a.min();\n };\n (_protected_code_)(Array.min);\n (_protected_code_)(Array.prototype.min);\n Array.prototype.max = function () {\n return this.reduce(function (prev, current) {\n return (__to_number(prev) >= __to_number(current)) ? (prev) : (current);\n }, 0);\n };\n Array.max = function (a) {\n return a.max();\n };\n (_protected_code_)(Array.max);\n (_protected_code_)(Array.prototype.max);\n Array.prototype.sortBy = function (propName, sortAsc = true) {\n var sort_function = (sortAsc) ? (\n function (prev, current) {\n return current[propName] < prev[propName] ? 1 : -1;\n }\n ) : (\n function (prev, current) {\n return current[propName] > prev[propName] ? 1 : -1;\n }\n );\n return this.sort(sort_function);\n };\n Array.sortBy = function (a, propName, sortAsc = true) {\n return a.sortBy(propName, sortAsc);\n };\n (_protected_code_)(Array.sortBy);\n (_protected_code_)(Array.prototype.sortBy);\n \n Array.matrix = function (_length, _fillValue = 0) {\n var x_func = function (x) {\n return _fillValue;\n };\n return Array.from({\n length: _length\n }, x_func);\n };\n (_protected_code_)(Array.matrix);\n \n Array.matrix2d = function (_length, _fillValue = 0) {\n var y_func = function (y) {\n return _fillValue;\n };\n var x_func = function (x) {\n return Array.from({\n length: _length\n }, y_func);\n };\n return Array.from({\n length: _length\n }, x_func);\n };\n (_protected_code_)(Array.matrix2d);\n \n Array.matrix3d = function (_length, _fillValue = 0) {\n var y_func = function (y) {\n return Array.from({\n length: _length\n }, function () {\n return _fillValue;\n });\n };\n var x_func = function (x) {\n return Array.from({\n length: _length\n }, y_func);\n };\n return Array.from({\n length: _length\n }, x_func);\n };\n (_protected_code_)(Array.matrix3d);\n \n _top.range = function (start, stop = 0, step = 1) {\n if (stop === 0 || typeof stop === \"undefined\") {\n stop = start;\n start = 0;\n }\n return Array.from({\n length: (stop - start) / step + 1\n }, function (_, i) {\n return start + (i * step);\n });\n };\n (_protected_code_)(_top.range);\n \n String.prototype.list = function () {\n var __instance = this;\n return _top.range(0, __instance.length - 1).map(function (i) {\n return __instance[i];\n });\n };\n (_protected_code_)(String.prototype.list);\n \n _top.getDocumentLayout = function () {\n var h = (w, h) => {\n return w > h ? \"landscape\" : null;\n };\n var v = (w, h) => {\n return h > w ? \"portrait\" : null;\n };\n var square = (w, h) => {\n return w === h ? \"square\" : null;\n };\n return [\n h(document.documentElement.clientWidth, document.documentElement.clientHeight),\n v(document.documentElement.clientWidth, document.documentElement.clientHeight),\n square(document.documentElement.clientWidth, document.documentElement.clientHeight)\n ].filter(e => e !== null).pop();\n };\n \n \n /**\n * End of array math functions\n */\n \n \n Class(\"ArrayList\", Array, []);\n ClassFactory(\"ArrayList\").matrix = Array.matrix;\n ClassFactory(\"ArrayList\").matrix2d = Array.matrix2d;\n ClassFactory(\"ArrayList\").matrix3d = Array.matrix3d;\n (_protected_code_)(ClassFactory(\"ArrayList\").matrix);\n (_protected_code_)(ClassFactory(\"ArrayList\").matrix2d);\n (_protected_code_)(ClassFactory(\"ArrayList\").matrix3d);\n \n Class(\"ArrayCollection\", Object, {\n source: New(ClassFactory(\"ArrayList\"), []),\n changed(prop, value) {\n logger.debug(\"VALUE CHANGED\");\n logger.debug(prop);\n logger.debug(value);\n },\n push(value) {\n var self = this;\n logger.debug(\"VALUE ADDED\");\n logger.debug(value);\n self.source.push(value);\n },\n pop(value) {\n var self = this;\n logger.debug(\"VALUE POPPED\");\n logger.debug(value);\n self.source.pop(value);\n },\n _new_(source) {\n var self = this;\n var _index = 0;\n self.source = New(ClassFactory(\"ArrayList\"), source);\n for (var _k in self.source) {\n if (!isNaN(_k)) {\n logger.debug(\"binding \" + _k.toString());\n (function (_pname) {\n Object.defineProperty(self, _pname, {\n set(value) {\n logger.debug(\"setting \" + _pname + \"=\" + value);\n self.source[_pname] = value;\n self.changed(_pname, value);\n },\n get() {\n return self.source[_pname];\n }\n });\n })(_k);\n _index++;\n }\n \n }\n self.source.length = _index;\n Object.defineProperty(self, \"length\", {\n get() {\n return self.source.length;\n }\n });\n }\n });\n \n Package(\"com.qcobjects.effects.base\", [\n class Effect extends ClassFactory(\"InheritClass\") {\n duration = 1000;\n \n constructor (){\n super(...arguments);\n }\n \n animate({\n timing,\n draw,\n duration\n }) {\n \n let start = performance.now();\n \n requestAnimationFrame(function animate(time) {\n // timeFraction goes from 0 to 1\n let timeFraction = (time - start) / duration;\n if (timeFraction > 1) timeFraction = 1;\n \n // calculate the current animation state\n let progress = timing(timeFraction);\n \n draw(Math.round(progress * 100)); // draw it\n \n if (timeFraction < 1) {\n requestAnimationFrame(animate);\n } else {\n // if this is an object with a done method\n if (typeof this !== \"undefined\" &&\n this !== null &&\n Object.hasOwnProperty.call(this, \"done\") &&\n (typeof this.done).toLowerCase() === \"function\") {\n this.done.call(this);\n }\n }\n \n });\n }\n \n }\n ]);\n \n Package(\"com.qcobjects.effects.transitions.base\", [\n \n class TransitionEffect extends ClassFactory(\"Effect\") {\n duration= 385;\n defaultParams= {\n alphaFrom: 0,\n alphaTo: 1,\n angleFrom: 180,\n angleTo: 0,\n radiusFrom: 0,\n radiusTo: 30,\n scaleFrom: 0,\n scaleTo: 1\n };\n fitToHeight= false;\n fitToWidth= false;\n effects= [];\n \n constructor (){\n super(...arguments);\n logger.info(\"DECLARING TransitionEffect \");\n this.component.defaultParams = this.defaultParams;\n }\n \n apply({\n alphaFrom,\n alphaTo,\n angleFrom,\n angleTo,\n radiusFrom,\n radiusTo,\n scaleFrom,\n scaleTo\n }) {\n var _transition_ = this;\n logger.info(\"EXECUTING TransitionEffect \");\n var componentRoot = (_transition_.component.shadowed)?(_transition_.component.shadowRoot.host):(_transition_.component.body);\n if (_transition_.fitToHeight) {\n componentRoot.height = (typeof componentRoot.offsetParent === \"object\" && componentRoot.offsetParent !== null)?(componentRoot.offsetParent.scrollHeight):(componentRoot.getBoundingClientRect().height);\n }\n if (_transition_.fitToWidth) {\n componentRoot.width = (typeof componentRoot.offsetParent === \"object\" && componentRoot.offsetParent !== null)?(componentRoot.offsetParent.scrollWidth):(componentRoot.getBoundingClientRect().width);\n }\n componentRoot.style.display = \"block\";\n _transition_.effects.map(function (effectClassName, eff) {\n var __effectClass__ = ClassFactory(effectClassName);\n var effectObj = new __effectClass__();\n var effectClassMethod = effectObj.apply;\n var args = [componentRoot].concat(Object.values({\n alphaFrom,\n alphaTo,\n angleFrom,\n angleTo,\n radiusFrom,\n radiusTo,\n scaleFrom,\n scaleTo\n }));\n effectClassMethod.apply(_transition_, args);\n });\n }\n \n }\n ]);\n \n Package(\"com.qcobjects.timing\", [\n class Timer extends ClassFactory(\"InheritClass\") {\n \n constructor (){\n super(...arguments);\n }\n \n duration= 1000;\n alive= true;\n thread({\n timing,\n intervalInterceptor,\n duration\n }) {\n var timer = this;\n \n let start = performance.now();\n \n requestAnimationFrame(function thread(time) {\n // timeFraction goes from 0 to 1\n let elapsed = (time - start);\n let timeFraction = elapsed / duration;\n if (timeFraction > 1) timeFraction = 1;\n \n // calculate the current progress state\n let progress = timing(timeFraction, elapsed);\n \n intervalInterceptor(Math.round(progress * 100)); // draw it\n \n if ((timeFraction < 1 || duration === -1) && timer.alive) {\n requestAnimationFrame(thread);\n }\n \n });\n }\n \n \n }\n ]);\n \n Package(\"com.qcobjects.tools.essentials\", [\n class Toggle extends ClassFactory(\"InheritClass\") {\n _toggle= false;\n _inverse= true;\n _positive= null;\n _negative= null;\n _dispatched= null;\n _args= {};\n \n constructor (){\n super(...arguments);\n this._new_(...arguments);\n }\n \n changeToggle() {\n this._toggle = (this._toggle) ? (false) : (true);\n }\n \n _new_({\n positive,\n negative,\n args\n }) {\n this._positive = positive;\n this._negative = negative;\n this._args = args;\n }\n \n fire() {\n var toggle = this;\n var _promise = new Promise(function (resolve, reject) {\n \n if (typeof toggle._positive === \"function\" && typeof toggle._negative === \"function\") {\n if (toggle._inverse) {\n toggle._dispatched = (toggle._toggle) ? (toggle._negative.bind(toggle)) : (toggle._positive.bind(toggle));\n } else {\n toggle._dispatched = (toggle._toggle) ? (toggle._positive.bind(toggle)) : (toggle._negative.bind(toggle));\n }\n toggle._dispatched.call(toggle, toggle._args);\n resolve.call(_promise, toggle);\n } else {\n logger.debug(\"Toggle functions are not declared\");\n reject.call(_promise, toggle);\n }\n }).then(function (toggle) {\n toggle.changeToggle();\n }).catch(function (e) {\n logger.debug(e.toString());\n });\n return _promise;\n }\n \n \n }\n \n ]);\n \n // Set Processors\n (function (_top) {\n \n let mapper = function (componentInstance,componentName, valueName) {\n /*\n * Mapper processor\n * @usage\n * $mapper(<componentName>,<valueName>)\n *\n * Where componentName is the name of the component (same value as in attribute tag name) without quotes\n * and valueName is the name of the variable that contains the value to map, it can be either a property of\n * the component instance, the data object or a global value\n */\n \n var self = this;\n if (typeof componentInstance === \"undefined\" || componentInstance === null){\n throw Error (`mapper.${componentName}.${valueName} does not have a component instance or it is null.`);\n }\n let globalValue = _top.global.get(valueName);\n let componentValue = componentInstance.get(valueName);\n let dataValue = componentInstance.data[valueName];\n let list = (typeof dataValue !== \"undefined\") ? (dataValue) : ((typeof componentValue !== \"undefined\") ? (componentValue) : (globalValue));\n let listItems = \"\";\n if (typeof list !== \"undefined\" && typeof list[\"map\"] !== \"undefined\") {\n listItems = list.map(function (element) {\n let dataItems = [...Object.keys(element)].map(k => ` data-${k}=\"${(typeof element[k] !== \"undefined\" && element[k] !== null)?(element[k].toString()):(\"\")}\"`).join(\"\");\n return `<quick-component name=\"${componentName}\" ${dataItems} ></quick-component>`;\n }).join(\"\");\n } else {\n logger.debug(`${componentName}.${valueName} does not have a map property`);\n }\n return listItems;\n };\n Processor.setProcessor(mapper);\n \n let layout = function (componentInstance, layoutname, cssfile) {\n /*\n * Layout processor\n * @usage\n * $layout(<layoutname>, <cssfile>)\n * Where layoutname can be \"portrait\" or \"landscape\" without quotes\n * cssfile is the uri for the css file to import\n */\n \n var layout_portrait = `\n /* CSS Document for Mobile Imports */\n @import url(\"${cssfile}\") (orientation:portrait);\n @import url(\"${cssfile}\") (max-width:460px);\n @import url(\"${cssfile}\") (aspect-ratio: 9/16);\n @import url(\"${cssfile}\") (aspect-ratio: 10/16);\n @import url(\"${cssfile}\") (aspect-ratio: 5/8);\n @import url(\"${cssfile}\") (aspect-ratio: 3/4);\n @import url(\"${cssfile}\") (aspect-ratio: 2/3);\n `;\n var layout_landscape = `\n @import url(\"${cssfile}\") (orientation:landscape) and (min-width:460px);\n @import url(\"${cssfile}\") (aspect-ratio: 16/9) and (min-width:460px);\n @import url(\"${cssfile}\") (aspect-ratio: 16/10) and (min-width:460px);\n @import url(\"${cssfile}\") (aspect-ratio: 8/5) and (min-width:460px);\n @import url(\"${cssfile}\") (aspect-ratio: 4/3) and (min-width:460px);\n @import url(\"${cssfile}\") (aspect-ratio: 3/2) and (min-width:460px);\n `;\n var layout_code = {\n \"landscape\": layout_landscape,\n \"portrait\": layout_portrait\n };\n \n return (Object.hasOwnProperty.call(layout_code, layoutname)) ? (layout_code[layoutname]) : (\"\");\n };\n \n Processor.setProcessor(layout);\n \n let component = function () {\n /*\n * component processor\n * @usage\n * $component(name=<name>, componentClass=<componentClass>, ...)\n * Returns a component tag declaration like:\n * <component name=<name> ...></component>\n */\n let arg = [...arguments].slice(1).map(function (a) {\n return {\n [a.split(\"=\")[0]]: a.split(\"=\")[1]\n };\n }).reduce(function (k1, k2) {\n return Object.assign(k1, k2);\n });\n let attrs = [...Object.keys(arg)].map(function (a) {\n return `${a}=${arg[a]}`;\n }).join(\" \");\n return `<component ${attrs}></component>`;\n };\n \n Processor.setProcessor(component);\n \n let quick_component = function () {\n /*\n * component processor\n * @usage\n * $quick_component(name=<name>, componentClass=<componentClass>, ...)\n * Returns a component tag declaration like:\n * <quick-component name=<name> ...></quick-component>\n */\n let arg = [...arguments].slice(1).map(function (a) {\n return {\n [a.split(\"=\")[0]]: a.split(\"=\")[1]\n };\n }).reduce(function (k1, k2) {\n return Object.assign(k1, k2);\n });\n let attrs = [...Object.keys(arg)].map(function (a) {\n return `${a}=${arg[a]}`;\n }).join(\" \");\n return `<quick-component ${attrs}></quick-component>`;\n };\n \n Processor.setProcessor(quick_component);\n \n \n let repeat = function (componentInstance, length, text) {\n /*\n * Repeat processor\n * @usage\n * $repeat(<length>, <text>)\n * Where length is the number of occurrences of text\n */\n return _top.range(length).map(\n function (index) {\n return text.replace(\"{{index}}\", index.toString());\n }\n ).join(\"\");\n };\n \n Processor.setProcessor(repeat);\n \n })(_top);\n \n \n /**\n * Load every component tag declared in the body\n **/\n Ready(function () {\n if (!_top.CONFIG.get(\"useSDK\")) {\n _top.__start__();\n }\n });\n \n /*\n Public variables and functions\n */\n Export(Export); /* exports the same Export function once */\n Export(Import);\n Export(Package);\n Export(Class);\n Export(New);\n Export(Tag);\n Export(Ready);\n Export(ready);\n Export(isBrowser);\n Export(_methods_);\n \n (function (_top){\n Package(\"com.qcobjects\", [\n class GlobalSettings extends ClassFactory(\"InheritClass\"){\n _GLOBAL= {};\n __definition = {};\n __classType = \"GlobalSettings\";\n \n constructor(){\n super(...arguments);\n this.set = GlobalSettings.set.bind(this);\n this.get = GlobalSettings.get.bind(this);\n this.__start__ = GlobalSettings.__start__.bind(this);\n }\n \n static set(name, value) {\n this._GLOBAL[name] = value;\n }\n \n static get(name, _default) {\n var _value;\n if (typeof this._GLOBAL[name] !== \"undefined\") {\n _value = this._GLOBAL[name];\n } else if (typeof _default !== \"undefined\") {\n _value = _default;\n }\n return _value;\n }\n \n static __start__() {\n var __load__serviceWorker = function () {\n var _promise;\n if (isBrowser) {\n _promise = new Promise(function (resolve, reject) {\n if ((\"serviceWorker\" in navigator) &&\n (typeof _top.CONFIG.get(\"serviceWorkerURI\") !== \"undefined\")) {\n _top.CONFIG.set(\"serviceWorkerScope\", _top.CONFIG.get(\"serviceWorkerScope\") ? (_top.CONFIG.get(\"serviceWorkerScope\")) : (\"/\"));\n navigator.serviceWorker.register(_top.CONFIG.get(\"serviceWorkerURI\"), {\n scope: _top.CONFIG.get(\"serviceWorkerScope\")\n })\n .then(function (registration) {\n logger.debug(\"Service Worker Registered\");\n resolve.call(_promise, registration);\n }, function (registration) {\n logger.debug(\"Error registering Service Worker\");\n reject.call(_promise, registration);\n });\n navigator.serviceWorker.ready.then(function (registration) {\n logger.debug(\"Service Worker Ready\");\n resolve.call(_promise, registration);\n }, function (registration) {\n logger.debug(\"Error loading Service Worker\");\n reject.call(_promise, registration);\n });\n }\n });\n }\n return _promise;\n };\n var _buildComponents = function () {\n return new Promise ((resolve, reject) => {\n if (isBrowser) {\n logger.debug(\"Starting to building components\");\n try {\n _top.componentsStack = document.buildComponents.call(document);\n }catch (e){\n throw Error (`Something went wrong trying to start components tree: ${e.message}`);\n }\n logger.debug(\"Initializing the service worker\");\n __load__serviceWorker.call(_top)\n .catch(function (e) {\n logger.debug(`error loading the service worker ${e}`);\n });\n }\n resolve();\n });\n };\n logger.debug(\"Starting to load the config settings...\");\n if (_top.CONFIG.get(\"useConfigService\", false)) {\n logger.debug(\"Loading settings using local configuration file...\");\n _top.global.configService = New(ClassFactory(\"ConfigService\"));\n _top.global.configService.configLoaded = _buildComponents;\n serviceLoader(_top.global.configService);\n } else {\n logger.debug(\"Starting to load the components...\");\n _buildComponents.call(this);\n }\n }\n \n }\n ]);\n Export(ClassFactory(\"GlobalSettings\"));\n global = New(ClassFactory(\"GlobalSettings\"));\n _top = _CastProps(global, _top);\n \n Object.defineProperty(_top, \"PackagesNameList\", {\n set(val) {\n logger.debug(\"PackagesNameList is readonly\");\n return;\n },\n get() {\n var _get_packages_names = function (_packages) {\n var _keys = [];\n for (var _k in _packages) {\n if (\n typeof _packages[_k] !== \"undefined\" &&\n typeof _packages[_k] !== \"function\" &&\n Object.hasOwnProperty.call(_packages[_k], \"length\") &&\n _packages[_k].length > 0\n ) {\n _keys.push(_k);\n _keys = _keys.concat(_get_packages_names(_packages[_k]));\n }\n }\n return _keys;\n };\n return _get_packages_names(_QC_PACKAGES);\n }\n });\n \n Object.defineProperty(_top, \"PackagesList\", {\n set(value) {\n logger.debug(\"PackagesList is readonly\");\n return;\n },\n get() {\n return _top.PackagesNameList.map(function (packagename) {\n let _classesList = Package(packagename);\n let _ret_;\n if (_classesList) {\n _ret_ = {\n packageName: packagename,\n classesList: _classesList.filter(function (_packageClass) {\n return isQCObjects_Class(_packageClass);\n })\n };\n }\n return _ret_;\n }).filter(function (_p) {\n return typeof _p !== \"undefined\";\n });\n }\n });\n \n Object.defineProperty(_top, \"ClassesList\", {\n set(value) {\n logger.debug(\"ClassesList is readonly\");\n return;\n },\n get() {\n var _classesList = [];\n _top.PackagesList.map(function (_package_element) {\n _classesList = _classesList.concat(_package_element.classesList.map(\n function (_class_element) {\n return {\n packageName: _package_element.packageName,\n className: _package_element.packageName + \".\" + _class_element.__definition.__classType,\n classFactory: _class_element\n };\n }\n ));\n return _package_element;\n });\n \n return _classesList;\n }\n });\n \n Object.defineProperty(_top, \"ClassesNameList\", {\n set(value) {\n logger.debug(\"ClassesNameList is readonly\");\n return;\n },\n get() {\n return _top.ClassesList.map(function (_class_element) {\n return _class_element.className;\n });\n }\n });\n \n if (isBrowser) {\n // use of GLOBAL word is deprecated in node.js\n // this is only for compatibility purpose with old versions of QCObjects in browsers\n Class(\"GLOBAL\", _QC_CLASSES[\"global\"]); // case insensitive for compatibility con old versions;\n Export(ClassFactory(\"GLOBAL\"));\n }\n Export(global);\n \n if (_top.CONFIG.get(\"useSDK\")) {\n (function (_top) {\n var remoteImportsPath = _top.CONFIG.get(\"remoteImportsPath\");\n var external = (!_top.CONFIG.get(\"useLocalSDK\")) ? (true) : (false);\n _top.CONFIG.set(\"remoteImportsPath\", _top.CONFIG.get(\"remoteSDKPath\"));\n \n var tryImportingSDK = false;\n var sdkName = \"QCObjects-SDK\";\n if (isBrowser) {\n tryImportingSDK = true;\n } else {\n var sdkPath = findPackageNodePath(\"qcobjects-sdk\");\n if (sdkPath !== null) {\n sdkName = \"qcobjects-sdk\";\n tryImportingSDK = true;\n } else {\n sdkName = \"node_modules/qcobjects-sdk/QCObjects-SDK\";\n tryImportingSDK = true;\n }\n }\n \n if (tryImportingSDK) {\n logger.info(\"Importing SDK... \" + sdkName);\n if (isNodeCommonJS && typeof require !== \"undefined\"){\n let sdk = require(\"qcobjects-sdk\");\n } else {\n Import(sdkName, function () {\n if (external) {\n logger.debug(\"QCObjects-SDK.js loaded from remote location\");\n } else {\n logger.debug(\"QCObjects-SDK.js loaded from local\");\n }\n _top.CONFIG.set(\"remoteImportsPath\", remoteImportsPath);\n }, external);\n }\n } else {\n logger.debug(\"SDK has not been imported as it is not available at the moment\");\n }\n })(_top);\n }\n })(_top);\n \n if (isBrowser) {\n asyncLoad(function () {\n Ready(function () {\n \n /*\n * scroll management custom events\n * usage: document.addEventListener('percentY90',function(e){console.log(e.detail.percentY)});\n * possible events: scrollpercent, defaultscroll, percentY0, percentY25, percentY50, percentY75, percentY90\n */\n \n (function (_top) {\n let lastKnownScrollPosition = 0;\n let ticking = false;\n let scrollHeight = Math.max(\n document.body.scrollHeight, document.documentElement.scrollHeight,\n document.body.offsetHeight, document.documentElement.offsetHeight,\n document.body.clientHeight, document.documentElement.clientHeight\n );\n \n let scrollWidth = Math.max(\n document.body.scrollWidth, document.documentElement.scrollWidth,\n document.body.offsetWidth, document.documentElement.offsetWidth,\n document.body.clientWidth, document.documentElement.clientWidth\n );\n \n function scrollDispatcher(event) {\n var percentY = Math.round(_top.scrollY * 100 / scrollHeight);\n var percentX = Math.round(_top.scrollX * 100 / scrollWidth);\n var scrollPercentEventEvent = new CustomEvent(\"scrollpercent\", {\n detail: {\n percentX: percentX,\n percentY: percentY\n }\n });\n event.target.dispatchEvent(scrollPercentEventEvent);\n var secondaryEventName = \"defaultscroll\";\n var __valid_scrolls__ = [0, 5, 10, 25, 50, 75, 90, 95, 100];\n __valid_scrolls__.filter(function (p) {\n return p === percentY;\n }).map(function (pY) {\n secondaryEventName = \"percentY\" + percentY.toString();\n var secondaryCustomEvent = new CustomEvent(secondaryEventName, {\n detail: {\n percentX: percentX,\n percentY: percentY\n }\n });\n event.target.dispatchEvent(secondaryCustomEvent);\n });\n \n }\n \n document.addEventListener(\"scroll\", function (event) {\n \n if (!ticking) {\n requestAnimationFrame(function () {\n scrollDispatcher(event);\n ticking = false;\n });\n \n ticking = true;\n }\n });\n \n })(_top);\n \n });\n }, null);\n }\n \n if (!isBrowser) {\n if (typeof _top.global !== \"undefined\" && Object.hasOwnProperty.call(_top.global, \"_fireAsyncLoad\")) {\n _top.global._fireAsyncLoad.call(this);\n }\n if (typeof _top.global !== \"undefined\" && Object.hasOwnProperty.call(_top.global, \"onload\")) {\n _top.global.onload.call(this);\n }\n }\n \n \n /* Freezing Object && Object.prototype to prevent prototype pollution risks */\n (function (isBrowser) {\n var __freeze__ = function () {\n Object.freeze(Object.prototype);\n Object.freeze(Object);\n };\n if (isBrowser && _top.CONFIG.get(\"secureObjects\", false)) {\n Ready(function () {\n __freeze__();\n });\n } else if (_top.CONFIG.get(\"secureObjects\", false)) {\n __freeze__();\n }\n })(isBrowser);\n }\n}).call(null, (typeof module === \"object\" && typeof module.exports === \"object\") ? (\n module.exports = (typeof globalThis !== \"undefined\"\n ? globalThis\n : typeof self !== \"undefined\"\n ? self\n : typeof window !== \"undefined\"\n ? window\n : typeof global !== \"undefined\"\n ? global\n : {})\n) : ((typeof global === \"object\") ? (global) : (\n (typeof window === \"object\") ? (window) : ({})\n)));", "const QCObjects = require(\"./QCObjects.js\");\nmodule.exports = QCObjects;", "\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nconst qcobjects_1 = require(\"qcobjects\");\n/**\n * QCObjects SDK 2.4\n * ________________\n *\n * Author: Jean Machuca <correojean@gmail.com>\n *\n * Cross Browser Javascript Framework for MVC Patterns\n * QuickCorp/QCObjects is licensed under the\n * GNU Lesser General Public License v3.0\n * [LICENSE] (https://github.com/QuickCorp/QCObjects/blob/master/LICENSE.txt)\n *\n * Permissions of this copyleft license are conditioned on making available\n * complete source code of licensed works and modifications under the same\n * license or the GNU GPLv3. Copyright and license notices must be preserved.\n * Contributors provide an express grant of patent rights. However, a larger\n * work using the licensed work through interfaces provided by the licensed\n * work may be distributed under different terms and without source code for\n * the larger work.\n *\n * Copyright (C) 2015 Jean Machuca,<correojean@gmail.com>\n *\n * Everyone is permitted to copy and distribute verbatim copies of this\n * license document, but changing it is not allowed.\n */\n(function (global) {\n \"use strict\";\n // eslint-disable-next-line camelcase\n class i18n_messages extends qcobjects_1.InheritClass {\n constructor({ messages = [] }) {\n super({\n messages\n });\n if (qcobjects_1.CONFIG.get(\"use_i18n\", false)) {\n qcobjects_1.CONFIG.set(\"lang\", \"en\");\n if (!global.get(\"i18n\")) {\n global.set(\"i18n\", {\n messages\n });\n }\n else {\n global.set(\"i18n\", {\n messages: global.get(\"i18n\").messages.concat(messages)\n });\n }\n }\n }\n _load_i18n_packages_() {\n // eslint-disable-next-line array-callback-return, camelcase\n return qcobjects_1.CONFIG.get(\"i18n_languages\", []).map((i18n_packagename) => {\n // eslint-disable-next-line camelcase\n (0, qcobjects_1.Import)(`org.quickcorp.i18n_messages.${i18n_packagename}`);\n });\n }\n }\n (0, qcobjects_1.Package)(\"org.qcobjects.i18n_messages\", [\n // eslint-disable-next-line camelcase\n i18n_messages\n ]);\n // eslint-disable-next-line new-cap\n (new i18n_messages({}))._load_i18n_packages_();\n})((typeof module === \"object\" && typeof module.exports === \"object\") ? (module.exports = (typeof globalThis !== \"undefined\"\n ? globalThis\n : typeof self !== \"undefined\"\n ? self\n : typeof window !== \"undefined\"\n ? window\n : typeof global !== \"undefined\"\n ? global\n : {})) : ((typeof global === \"object\") ? (global) : ((typeof window === \"object\") ? (window) : ({}))));\n", "\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nconst qcobjects_1 = require(\"qcobjects\");\n/**\n * QCObjects SDK 2.4\n * ________________\n *\n * Author: Jean Machuca <correojean@gmail.com>\n *\n * Cross Browser Javascript Framework for MVC Patterns\n * QuickCorp/QCObjects is licensed under the\n * GNU Lesser General Public License v3.0\n * [LICENSE] (https://github.com/QuickCorp/QCObjects/blob/master/LICENSE.txt)\n *\n * Permissions of this copyleft license are conditioned on making available\n * complete source code of licensed works and modifications under the same\n * license or the GNU GPLv3. Copyright and license notices must be preserved.\n * Contributors provide an express grant of patent rights. However, a larger\n * work using the licensed work through interfaces provided by the licensed\n * work may be distributed under different terms and without source code for\n * the larger work.\n *\n * Copyright (C) 2015 Jean Machuca,<correojean@gmail.com>\n *\n * Everyone is permitted to copy and distribute verbatim copies of this\n * license document, but changing it is not allowed.\n */\n(function () {\n \"use strict\";\n (0, qcobjects_1.Package)(\"org.qcobjects.models\", [\n class Contact extends qcobjects_1.VO {\n }\n ]);\n})();\n", "\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.ModalMoveUp = exports.ModalMoveDown = exports.ModalFade = exports.WipeDown = exports.WipeUp = exports.WipeRight = exports.WipeLeft = exports.Resize = exports.Radius = exports.Rotate = exports.RotateZ = exports.RotateY = exports.RotateX = exports.MoveYInFromTop = exports.MoveYInFromBottom = exports.MoveXInFromLeft = exports.MoveXInFromRight = exports.Move = exports.Fade = void 0;\nconst qcobjects_1 = require(\"qcobjects\");\n/**\n * QCObjects SDK 2.4\n * ________________\n *\n * Author: Jean Machuca <correojean@gmail.com>\n *\n * Cross Browser Javascript Framework for MVC Patterns\n * QuickCorp/QCObjects is licensed under the\n * GNU Lesser General Public License v3.0\n * [LICENSE] (https://github.com/QuickCorp/QCObjects/blob/master/LICENSE.txt)\n *\n * Permissions of this copyleft license are conditioned on making available\n * complete source code of licensed works and modifications under the same\n * license or the GNU GPLv3. Copyright and license notices must be preserved.\n * Contributors provide an express grant of patent rights. However, a larger\n * work using the licensed work through interfaces provided by the licensed\n * work may be distributed under different terms and without source code for\n * the larger work.\n *\n * Copyright (C) 2015 Jean Machuca,<correojean@gmail.com>\n *\n * Everyone is permitted to copy and distribute verbatim copies of this\n * license document, but changing it is not allowed.\n */\nconst _top = (typeof module === \"object\" && typeof module.exports === \"object\") ? (module.exports = (typeof globalThis !== \"undefined\"\n ? globalThis\n : typeof self !== \"undefined\"\n ? self\n : typeof window !== \"undefined\"\n ? window\n : typeof global !== \"undefined\"\n ? global\n : {})) : ((typeof global === \"object\") ? (global) : ((typeof window === \"object\") ? (window) : ({})));\n(function () {\n \"use strict\";\n class Fade extends qcobjects_1.Effect {\n constructor() {\n super(...arguments);\n this.duration = 1000;\n }\n apply(element, alphaFrom, alphaTo) {\n const da = alphaTo - alphaFrom;\n this.animate({\n duration: this.duration,\n timing(timeFraction) {\n return timeFraction;\n },\n draw(progress) {\n qcobjects_1.logger.debug(\"animation progress: \" + progress.toString());\n const alpha = alphaFrom + (progress * da / 100);\n qcobjects_1.logger.debug(\"alpha: \" + alpha.toString());\n element.style.opacity = alpha.toString();\n }\n });\n }\n }\n class Move extends qcobjects_1.Effect {\n constructor() {\n super(...arguments);\n this.duration = 1000;\n }\n apply(element, xfrom, yfrom, xto, yto) {\n const dx = xto - xfrom;\n const dy = yto - yfrom;\n element.style.transform = \"translate(\" + xfrom + \"px,\" + yfrom + \"px)\";\n this.animate({\n duration: this.duration,\n timing(timeFraction) {\n return timeFraction;\n },\n draw(progress) {\n qcobjects_1.logger.debug(\"animation progress: \" + progress.toString());\n const y = yfrom + (progress * dy / 100);\n const x = xfrom + (progress * dx / 100);\n qcobjects_1.logger.debug(\"x: \" + x.toString() + \" y:\" + y.toString());\n element.style.transform = \"translate(\" + x + \"px,\" + y + \"px)\";\n }\n });\n }\n }\n (0, qcobjects_1.Package)(\"org.qcobjects.effects.base\", [\n Fade,\n Move\n ]);\n class MoveXInFromRight extends Move {\n constructor() {\n super(...arguments);\n this.duration = 1000;\n }\n apply(element) {\n super.apply.call(this, element, element.width, 0, 0, 0);\n }\n }\n class MoveXInFromLeft extends Move {\n constructor() {\n super(...arguments);\n this.duration = 1000;\n }\n apply(element) {\n super.apply.call(this, element, -element.width, 0, 0, 0);\n }\n }\n class MoveYInFromBottom extends Move {\n constructor() {\n super(...arguments);\n this.duration = 1000;\n }\n apply(element) {\n super.apply.call(this, element, 0, element.height, 0, 0);\n }\n }\n class MoveYInFromTop extends Move {\n constructor() {\n super(...arguments);\n this.duration = 1000;\n }\n apply(element) {\n super.apply.call(this, element, 0, -element.height, 0, 0);\n }\n }\n class RotateX extends qcobjects_1.Effect {\n constructor() {\n super(...arguments);\n this.duration = 1000;\n }\n apply(element, angleFrom, angleTo) {\n const da = angleTo - angleFrom;\n this.animate({\n duration: this.duration,\n timing(timeFraction) {\n return timeFraction;\n },\n draw(progress) {\n qcobjects_1.logger.debug(\"animation progress: \" + progress.toString());\n const angle = Math.round(angleFrom + (progress * da / 100));\n qcobjects_1.logger.debug(\"angle: \" + angle.toString());\n element.style.transform = \"rotate3d(1,0,0,\" + angle.toString() + \"deg)\";\n }\n });\n }\n }\n class RotateY extends qcobjects_1.Effect {\n constructor() {\n super(...arguments);\n this.duration = 1000;\n }\n apply(element, angleFrom, angleTo) {\n const da = angleTo - angleFrom;\n this.animate({\n duration: this.duration,\n timing(timeFraction) {\n return timeFraction;\n },\n draw(progress) {\n qcobjects_1.logger.debug(\"animation progress: \" + progress.toString());\n const angle = Math.round(angleFrom + (progress * da / 100));\n qcobjects_1.logger.debug(\"angle: \" + angle.toString());\n element.style.transform = \"rotate3d(0,1,0,\" + angle.toString() + \"deg)\";\n }\n });\n }\n }\n class RotateZ extends qcobjects_1.Effect {\n constructor() {\n super(...arguments);\n this.duration = 1000;\n }\n apply(element, angleFrom, angleTo) {\n const da = angleTo - angleFrom;\n this.animate({\n duration: this.duration,\n timing(timeFraction) {\n return timeFraction;\n },\n draw(progress) {\n qcobjects_1.logger.debug(\"animation progress: \" + progress.toString());\n const angle = Math.round(angleFrom + (progress * da / 100));\n qcobjects_1.logger.debug(\"angle: \" + angle.toString());\n element.style.transform = \"rotate3d(0,0,1,\" + angle.toString() + \"deg)\";\n }\n });\n }\n }\n class Rotate extends qcobjects_1.Effect {\n constructor() {\n super(...arguments);\n this.duration = 1000;\n }\n apply(element, angleFrom, angleTo) {\n const da = angleTo - angleFrom;\n this.animate({\n duration: this.duration,\n timing(timeFraction) {\n return timeFraction;\n },\n draw(progress) {\n qcobjects_1.logger.debug(\"animation progress: \" + progress.toString());\n const angle = Math.round(angleFrom + (progress * da / 100));\n qcobjects_1.logger.debug(\"angle: \" + angle.toString());\n element.style.transform = \"rotate3d(1,1,1,\" + angle.toString() + \"deg)\";\n }\n });\n }\n }\n class Radius extends qcobjects_1.Effect {\n constructor() {\n super(...arguments);\n this.duration = 1000;\n }\n apply(element, radiusFrom, radiusTo) {\n const dr = radiusTo - radiusFrom;\n this.animate({\n duration: this.duration,\n timing(timeFraction) {\n return timeFraction;\n },\n draw(progress) {\n qcobjects_1.logger.debug(\"animation progress: \" + progress.toString());\n const radius = radiusFrom + (progress * dr / 100);\n qcobjects_1.logger.debug(\"radius: \" + radius.toString());\n element.style.borderRadius = radius.toString() + \"px\";\n }\n });\n }\n }\n class Resize extends qcobjects_1.Effect {\n constructor() {\n super(...arguments);\n this.duration = 1000;\n }\n apply(element, scaleFrom, scaleTo) {\n const ds = scaleTo - scaleFrom;\n this.animate({\n duration: this.duration,\n timing(timeFraction) {\n return timeFraction;\n },\n draw(progress) {\n qcobjects_1.logger.debug(\"animation progress: \" + progress.toString());\n const scale = scaleFrom + (progress * ds / 100);\n qcobjects_1.logger.debug(\"resize: \" + scale.toString());\n element.style.transformOrigin = \"center\";\n element.style.transform = \"scale(\" + scale + \",\" + scale + \")\";\n }\n });\n }\n }\n class WipeLeft extends qcobjects_1.Effect {\n constructor() {\n super(...arguments);\n this.duration = 1000;\n }\n apply(element, scaleFrom, scaleTo) {\n const ds = scaleTo - scaleFrom;\n this.animate({\n duration: this.duration,\n timing(timeFraction) {\n return timeFraction;\n },\n draw(progress) {\n qcobjects_1.logger.debug(\"animation progress: \" + progress.toString());\n const scale = scaleFrom + (progress * ds / 100);\n qcobjects_1.logger.debug(\"wipe: \" + scale.toString());\n element.style.transformOrigin = \"right\";\n element.style.transform = \"scaleX(\" + scale + \")\";\n }\n });\n }\n }\n class WipeRight extends qcobjects_1.Effect {\n constructor() {\n super(...arguments);\n this.duration = 1000;\n }\n apply(element, scaleFrom, scaleTo) {\n const ds = scaleTo - scaleFrom;\n this.animate({\n duration: this.duration,\n timing(timeFraction) {\n return timeFraction;\n },\n draw(progress) {\n qcobjects_1.logger.debug(\"animation progress: \" + progress.toString());\n const scale = scaleFrom + (progress * ds / 100);\n qcobjects_1.logger.debug(\"wipe: \" + scale.toString());\n element.style.transformOrigin = \"left\";\n element.style.transform = \"scaleX(\" + scale + \")\";\n }\n });\n }\n }\n class WipeUp extends qcobjects_1.Effect {\n constructor() {\n super(...arguments);\n this.duration = 1000;\n }\n apply(element, scaleFrom, scaleTo) {\n const ds = scaleTo - scaleFrom;\n this.animate({\n duration: this.duration,\n timing(timeFraction) {\n return timeFraction;\n },\n draw(progress) {\n qcobjects_1.logger.debug(\"animation progress: \" + progress.toString());\n const scale = scaleFrom + (progress * ds / 100);\n qcobjects_1.logger.debug(\"wipe: \" + scale.toString());\n element.style.transformOrigin = \"bottom\";\n element.style.transform = \"scaleY(\" + scale + \")\";\n }\n });\n }\n }\n class WipeDown extends qcobjects_1.Effect {\n constructor() {\n super(...arguments);\n this.duration = 1000;\n }\n apply(element, scaleFrom, scaleTo) {\n const ds = scaleTo - scaleFrom;\n this.animate({\n duration: this.duration,\n timing(timeFraction) {\n return timeFraction;\n },\n draw(progress) {\n qcobjects_1.logger.debug(\"animation progress: \" + progress.toString());\n const scale = scaleFrom + (progress * ds / 100);\n qcobjects_1.logger.debug(\"wipe: \" + scale.toString());\n element.style.transformOrigin = \"top\";\n element.style.transform = \"scaleY(\" + scale + \")\";\n }\n });\n }\n }\n (0, qcobjects_1.Package)(\"org.qcobjects.effects.extended\", [\n MoveXInFromRight,\n MoveXInFromLeft,\n MoveYInFromBottom,\n MoveYInFromTop,\n RotateX,\n RotateY,\n RotateZ,\n Rotate,\n Radius,\n Resize,\n WipeLeft,\n WipeRight,\n WipeUp,\n WipeDown\n ]);\n class ModalFade extends Fade {\n constructor() {\n super(...arguments);\n this.duration = 500;\n }\n }\n class ModalMoveDown extends Move {\n constructor() {\n super(...arguments);\n this.duration = 300;\n }\n }\n class ModalMoveUp extends Move {\n constructor() {\n super(...arguments);\n this.duration = 800;\n }\n }\n (0, qcobjects_1.Package)(\"org.qcobjects.modal.effects\", [\n ModalFade,\n ModalMoveDown,\n ModalMoveUp\n ]);\n})();\nconst Fade = _top.Fade;\nexports.Fade = Fade;\nconst Move = _top.Fade;\nexports.Move = Move;\nconst MoveXInFromRight = _top.MoveXInFromRight;\nexports.MoveXInFromRight = MoveXInFromRight;\nconst MoveXInFromLeft = _top.MoveXInFromLeft;\nexports.MoveXInFromLeft = MoveXInFromLeft;\nconst MoveYInFromBottom = _top.MoveYInFromBottom;\nexports.MoveYInFromBottom = MoveYInFromBottom;\nconst MoveYInFromTop = _top.MoveYInFromTop;\nexports.MoveYInFromTop = MoveYInFromTop;\nconst RotateX = _top.RotateX;\nexports.RotateX = RotateX;\nconst RotateY = _top.RotateY;\nexports.RotateY = RotateY;\nconst RotateZ = _top.RotateZ;\nexports.RotateZ = RotateZ;\nconst Rotate = _top.Rotate;\nexports.Rotate = Rotate;\nconst Radius = _top.Radius;\nexports.Radius = Radius;\nconst Resize = _top.Resize;\nexports.Resize = Resize;\nconst WipeLeft = _top.WipeLeft;\nexports.WipeLeft = WipeLeft;\nconst WipeRight = _top.WipeRight;\nexports.WipeRight = WipeRight;\nconst WipeUp = _top.WipeUp;\nexports.WipeUp = WipeUp;\nconst WipeDown = _top.WipeDown;\nexports.WipeDown = WipeDown;\nconst ModalFade = _top.ModalFade;\nexports.ModalFade = ModalFade;\nconst ModalMoveDown = _top.ModalMoveDown;\nexports.ModalMoveDown = ModalMoveDown;\nconst ModalMoveUp = _top.ModalMoveUp;\nexports.ModalMoveUp = ModalMoveUp;\n", "/**\n * QCObjects SDK 2.4\n * ________________\n *\n * Author: Jean Machuca <correojean@gmail.com>\n *\n * Cross Browser Javascript Framework for MVC Patterns\n * QuickCorp/QCObjects is licensed under the\n * GNU Lesser General Public License v3.0\n * [LICENSE] (https://github.com/QuickCorp/QCObjects/blob/master/LICENSE.txt)\n *\n * Permissions of this copyleft license are conditioned on making available\n * complete source code of licensed works and modifications under the same\n * license or the GNU GPLv3. Copyright and license notices must be preserved.\n * Contributors provide an express grant of patent rights. However, a larger\n * work using the licensed work through interfaces provided by the licensed\n * work may be distributed under different terms and without source code for\n * the larger work.\n *\n * Copyright (C) 2015 Jean Machuca,<correojean@gmail.com>\n *\n * Everyone is permitted to copy and distribute verbatim copies of this\n * license document, but changing it is not allowed.\n */\n\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.SwaggerUIComponent = exports.ModalEnclosureComponent = exports.ModalComponent = exports.EmailField = exports.TextField = exports.InputField = exports.ButtonField = exports.ShadowedComponent = exports.FormField = void 0;\nconst qcobjects_1 = require(\"qcobjects\");\nconst org_qcobjects_effects_1 = require(\"./org.qcobjects.effects\");\nconst _top = (typeof module === \"object\" && typeof module.exports === \"object\") ? (module.exports = (typeof globalThis !== \"undefined\"\n ? globalThis\n : typeof self !== \"undefined\"\n ? self\n : typeof window !== \"undefined\"\n ? window\n : typeof global !== \"undefined\"\n ? global\n : {})) : ((typeof global === \"object\") ? (global) : ((typeof window === \"object\") ? (window) : ({})));\n(function (global) {\n class FormField extends qcobjects_1.Component {\n constructor(o) {\n o.name = (typeof o.name !== \"undefined\") ? (o.name) : (\"form-field\");\n super(o);\n this.cached = false;\n this.reload = true;\n }\n createBindingEvents() {\n let _objList;\n if (typeof this.fieldType === \"undefined\" || this.fieldType == null) {\n _objList = this.body.subelements(\"*[data-field]\"); // every child with data-field set\n }\n else {\n _objList = this.body.subelements(this.fieldType + \"[data-field]\"); // every child with data-field set and tagname is equal to fieldType property\n }\n for (let _datak = 0; _datak < _objList.length; _datak++) {\n const _obj = _objList[_datak];\n _obj.addEventListener(\"change\", () => {\n qcobjects_1.logger.debug(\"Executing change event binding\");\n this.executeBindings();\n });\n _obj.addEventListener(\"blur\", () => {\n qcobjects_1.logger.debug(\"Executing change event binding\");\n this.executeBindings();\n });\n _obj.addEventListener(\"focus\", () => {\n qcobjects_1.logger.debug(\"Executing change event binding\");\n this.executeBindings();\n });\n _obj.addEventListener(\"keydown\", () => {\n qcobjects_1.logger.debug(\"Executing keydown event binding\");\n this.executeBindings();\n });\n }\n }\n executeBinding(_obj) {\n const _datamodel = _obj.getAttribute(\"data-field\");\n qcobjects_1.logger.debug(\"Binding \" + _datamodel + \" for \" + this.name);\n this.data[_datamodel] = _obj.value;\n }\n executeBindings() {\n let _objList;\n if (typeof this.fieldType === \"undefined\" || this.fieldType == null) {\n _objList = this.body.subelements(\"*[data-field]\"); // every child with data-field set\n }\n else {\n _objList = this.body.subelements(this.fieldType + \"[data-field]\"); // every child with data-field set and tagname is equal to fieldType property\n }\n for (let _datak = 0; _datak < _objList.length; _datak++) {\n const _obj = _objList[_datak];\n const _datamodel = _obj.getAttribute(\"data-field\");\n qcobjects_1.logger.debug(\"Binding \" + _datamodel + \" for \" + this.name);\n this.data[_datamodel] = _obj.value;\n }\n }\n done(standardResponse) {\n const _ret_ = super.done(standardResponse);\n this.executeBindings();\n this.createBindingEvents();\n qcobjects_1.logger.debug(\"Field loaded: \" + this.fieldType + \"[name=\" + this.name + \"]\");\n return _ret_;\n }\n }\n (0, qcobjects_1.Package)(\"org.qcobjects.base.components\", [\n FormField\n ]);\n class ShadowedComponent extends qcobjects_1.Component {\n constructor(o) {\n o.body = (0, qcobjects_1._DOMCreateElement)(\"div\");\n super(o);\n this.container = null;\n this.shadowed = true;\n this.cached = false;\n this.controller = null;\n this.view = null;\n this.data = {};\n }\n }\n class ButtonField extends FormField {\n constructor(o) {\n o.fieldType = \"button\";\n super(o);\n }\n }\n class InputField extends FormField {\n constructor(o) {\n o.fieldType = \"input\";\n super(o);\n }\n }\n class TextField extends FormField {\n constructor(o) {\n o.fieldType = \"textarea\";\n super(o);\n }\n }\n class EmailField extends FormField {\n constructor(o) {\n o.fieldType = \"input\";\n super(o);\n }\n }\n class ModalEnclosureComponent extends qcobjects_1.Component {\n constructor(o) {\n o.body = (0, qcobjects_1._DOMCreateElement)(\"div\");\n super(o);\n this.name = \"modalenclosure\";\n this.tplsource = \"inline\";\n this.cached = false;\n this.basePath = qcobjects_1.CONFIG.get(\"modalBasePath\", qcobjects_1.CONFIG.get(\"remoteSDKPath\", \"\"));\n this.template = `\n<!-- The Modal -->\n<style>\n@import url('https://sdk.qcobjects.dev/css/modal.css');\n</style>\n<div id=\"modalInstance_{{modalId}}\" class=\"modal\">\n\n<!-- Modal content -->\n<div class=\"modal-content\">\n<span class=\"close\">&times;</span>\n{{content}}\n</div>\n\n</div>\n`;\n this.data = {};\n }\n }\n class ModalComponent extends qcobjects_1.Component {\n constructor(o) {\n o.basePath = qcobjects_1.CONFIG.get(\"modalBasePath\", qcobjects_1.CONFIG.get(\"remoteSDKPath\", \"\"));\n super(o);\n this.name = \"modal\";\n this.cached = false;\n this.modalEnclosureComponentClass = \"ModalEnclosureComponent\";\n this.controller = null;\n this.view = null;\n this.tplsource = \"none\";\n this.closeOnClickOutside = false;\n this.data = {\n content: \"\",\n modalId: 0\n };\n this.submodal = null;\n this.data.modalId = this.__instanceID;\n const submodal = (0, qcobjects_1.New)((0, qcobjects_1.ClassFactory)(this.modalEnclosureComponentClass), {\n name: this.name,\n basePath: this.basePath,\n data: this.data\n });\n this.subcomponents.push(submodal);\n this.submodal = submodal;\n if (submodal.tplsource === \"none\") {\n this.body.innerHTML = submodal.parsedAssignmentText;\n }\n else {\n this.body.append(submodal.body);\n }\n }\n modal() {\n const modalId = this.data.modalId;\n (0, qcobjects_1.Tag)(\"#modalInstance_\" + modalId + \".modal\").map((modal) => {\n modal.style.display = \"block\";\n return (new org_qcobjects_effects_1.ModalFade({})).apply(modal, 0, 1);\n });\n (0, qcobjects_1.Tag)(\"#modalInstance_\" + modalId + \".modal .modal-content\").map((modalcontent) => {\n return (new org_qcobjects_effects_1.ModalMoveDown({})).apply(modalcontent, 0, -document.body.clientHeight, 0, 0);\n });\n (0, qcobjects_1.Tag)(\"#modalInstance_\" + modalId + \".modal .modal-content .close\").map((closebtn) => {\n return closebtn.addEventListener(\"click\", () => {\n this.close();\n }, false);\n });\n if (this.closeOnClickOutside) {\n window.addEventListener(\"click\", () => {\n this.close();\n }, false);\n }\n }\n close() {\n const modalId = this.data.modalId;\n (0, qcobjects_1.Tag)(\"#modalInstance_\" + modalId + \".modal\").map((modal) => {\n modal.style.display = \"block\";\n return (new org_qcobjects_effects_1.ModalFade({})).apply(modal, 1, 0);\n });\n (0, qcobjects_1.Tag)(\"#modalInstance_\" + modalId + \".modal .modal-content\").map(function (modalcontent) {\n return (new org_qcobjects_effects_1.ModalMoveUp({})).apply(modalcontent, 0, 0, 0, -document.body.clientHeight);\n });\n setTimeout(function () {\n (0, qcobjects_1.Tag)(\"#modalInstance_\" + modalId + \".modal\").map((modal) => {\n modal.style.display = \"none\";\n return true;\n });\n }, 900);\n }\n rebuild() {\n const _ret_ = super.rebuild();\n this.templateURI = (0, qcobjects_1.ComponentURI)({\n \"COMPONENTS_BASE_PATH\": qcobjects_1.CONFIG.get(\"componentsBasePath\", \"\"),\n \"COMPONENT_NAME\": \"modal\",\n \"TPLEXTENSION\": qcobjects_1.CONFIG.get(\"tplextension\", \"\"),\n \"TPL_SOURCE\": \"default\" // here is always default in order to get the right uri\n });\n return _ret_; // parent call\n }\n }\n class SwaggerUIComponent extends qcobjects_1.Component {\n constructor() {\n super(...arguments);\n this.cached = false;\n this.basePath = qcobjects_1.CONFIG.get(\"remoteSDKPath\", \"\");\n this.tplextension = \"tpl.html\";\n this.name = \"swagger-ui\";\n }\n }\n (0, qcobjects_1.Package)(\"org.qcobjects.form.components\", [\n ShadowedComponent,\n ButtonField,\n InputField,\n TextField,\n EmailField,\n ModalEnclosureComponent,\n ModalComponent,\n SwaggerUIComponent\n ]);\n global.FormField = FormField;\n global.ShadowedComponent = ShadowedComponent;\n global.ButtonField = ButtonField;\n global.InputField = InputField;\n global.TextField = TextField;\n global.EmailField = EmailField;\n global.ModalEnclosureComponent = ModalEnclosureComponent;\n global.ModalComponent = ModalComponent;\n global.SwaggerUIComponent = SwaggerUIComponent;\n})(_top);\nconst FormField = _top.FormField;\nexports.FormField = FormField;\nconst ShadowedComponent = _top.ShadowedComponent;\nexports.ShadowedComponent = ShadowedComponent;\nconst ButtonField = _top.ButtonField;\nexports.ButtonField = ButtonField;\nconst InputField = _top.InputField;\nexports.InputField = InputField;\nconst TextField = _top.TextField;\nexports.TextField = TextField;\nconst EmailField = _top.EmailField;\nexports.EmailField = EmailField;\nconst ModalEnclosureComponent = _top.ModalEnclosureComponent;\nexports.ModalEnclosureComponent = ModalEnclosureComponent;\nconst ModalComponent = _top.ModalComponent;\nexports.ModalComponent = ModalComponent;\nconst SwaggerUIComponent = _top.SwaggerUIComponent;\nexports.SwaggerUIComponent = SwaggerUIComponent;\n", "\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.GridItemComponent = exports.GridComponent = void 0;\nconst qcobjects_1 = require(\"qcobjects\");\n/**\n * QCObjects SDK 2.4\n * ________________\n *\n * Author: Jean Machuca <correojean@gmail.com>\n *\n * Cross Browser Javascript Framework for MVC Patterns\n * QuickCorp/QCObjects is licensed under the\n * GNU Lesser General Public License v3.0\n * [LICENSE] (https://github.com/QuickCorp/QCObjects/blob/master/LICENSE.txt)\n *\n * Permissions of this copyleft license are conditioned on making available\n * complete source code of licensed works and modifications under the same\n * license or the GNU GPLv3. Copyright and license notices must be preserved.\n * Contributors provide an express grant of patent rights. However, a larger\n * work using the licensed work through interfaces provided by the licensed\n * work may be distributed under different terms and without source code for\n * the larger work.\n *\n * Copyright (C) 2015 Jean Machuca,<correojean@gmail.com>\n *\n * Everyone is permitted to copy and distribute verbatim copies of this\n * license document, but changing it is not allowed.\n */\nconst _top = (typeof module === \"object\" && typeof module.exports === \"object\") ? (module.exports = (typeof globalThis !== \"undefined\"\n ? globalThis\n : typeof self !== \"undefined\"\n ? self\n : typeof window !== \"undefined\"\n ? window\n : typeof global !== \"undefined\"\n ? global\n : {})) : ((typeof global === \"object\") ? (global) : ((typeof window === \"object\") ? (window) : ({})));\n(function (global) {\n \"use strict\";\n class GridItemComponent extends qcobjects_1.Component {\n constructor() {\n super(...arguments);\n this.name = \"grid-item\";\n this.shadowed = true;\n this.tplsource = \"inline\";\n this.template = `\n<img src=\"{{image}}\" />\n<p>{{description}}</p>\n`;\n this.cached = false;\n }\n }\n class GridComponent extends qcobjects_1.Component {\n constructor(o) {\n super(o);\n this.name = \"grid\";\n this.cached = false;\n this.view = null;\n this.shadowed = true;\n this.rows = 3;\n this.cols = 3;\n this.templateURI = \"\";\n this.data = {};\n this.tplsource = \"inline\";\n this.template = \"<p>Loading...</p>\";\n this.body.setAttribute(\"controllerClass\", \"DataGridController\");\n const subcomponentClass = (this.body.getAttribute(\"subcomponentClass\") !== null) ? (this.body.getAttribute(\"subcomponentClass\")) : (\"GridItemComponent\");\n this.body.setAttribute(\"subcomponentClass\", subcomponentClass);\n }\n }\n (0, qcobjects_1.Package)(\"org.qcobjects.components.grid\", [\n GridComponent,\n GridItemComponent\n ]);\n global.GridComponent = GridComponent;\n global.GridItemComponent = GridItemComponent;\n})(_top);\nconst GridComponent = _top.GridComponent;\nexports.GridComponent = GridComponent;\nconst GridItemComponent = _top.GridItemComponent;\nexports.GridItemComponent = GridItemComponent;\n", "\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.ListItemComponent = exports.ListComponent = void 0;\nconst qcobjects_1 = require(\"qcobjects\");\n/**\n * QCObjects SDK 2.4\n * ________________\n *\n * Author: Jean Machuca <correojean@gmail.com>\n *\n * Cross Browser Javascript Framework for MVC Patterns\n * QuickCorp/QCObjects is licensed under the\n * GNU Lesser General Public License v3.0\n * [LICENSE] (https://github.com/QuickCorp/QCObjects/blob/master/LICENSE.txt)\n *\n * Permissions of this copyleft license are conditioned on making available\n * complete source code of licensed works and modifications under the same\n * license or the GNU GPLv3. Copyright and license notices must be preserved.\n * Contributors provide an express grant of patent rights. However, a larger\n * work using the licensed work through interfaces provided by the licensed\n * work may be distributed under different terms and without source code for\n * the larger work.\n *\n * Copyright (C) 2015 Jean Machuca,<correojean@gmail.com>\n *\n * Everyone is permitted to copy and distribute verbatim copies of this\n * license document, but changing it is not allowed.\n*/\nconst _top = (typeof module === \"object\" && typeof module.exports === \"object\") ? (module.exports = (typeof globalThis !== \"undefined\"\n ? globalThis\n : typeof self !== \"undefined\"\n ? self\n : typeof window !== \"undefined\"\n ? window\n : typeof global !== \"undefined\"\n ? global\n : {})) : ((typeof global === \"object\") ? (global) : ((typeof window === \"object\") ? (window) : ({})));\n(function (global) {\n \"use strict\";\n class ListItemComponent extends qcobjects_1.Component {\n constructor(o) {\n o.name = \"list-item\";\n super(o);\n this.shadowed = false;\n this.tplsource = \"inline\";\n this.template = \"<a href=\\\"{{value}}\\\">{{label}}</a>\";\n this.cached = false;\n }\n }\n class ListComponent extends qcobjects_1.Component {\n constructor(o) {\n o.name = \"list\";\n super(o);\n this.shadowed = true;\n this.tplsource = \"inline\";\n this.template = \"<p>Loading...</p>\";\n this.body.setAttribute(\"controllerClass\", \"ListController\");\n this.body.setAttribute(\"subcomponentClass\", \"ListItemComponent\");\n }\n }\n (0, qcobjects_1.Package)(\"org.qcobjects.components.list\", [\n ListItemComponent,\n ListComponent\n ]);\n global.ListComponent = ListComponent;\n global.ListItemComponent = ListItemComponent;\n})(_top);\nconst ListComponent = _top.ListComponent;\nexports.ListComponent = ListComponent;\nconst ListItemComponent = _top.ListItemComponent;\nexports.ListItemComponent = ListItemComponent;\n", "\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nconst qcobjects_1 = require(\"qcobjects\");\n/**\n * QCObjects SDK 2.4\n * ________________\n *\n * Author: Jean Machuca <correojean@gmail.com>\n *\n * Cross Browser Javascript Framework for MVC Patterns\n * QuickCorp/QCObjects is licensed under the\n * GNU Lesser General Public License v3.0\n * [LICENSE] (https://github.com/QuickCorp/QCObjects/blob/master/LICENSE.txt)\n *\n * Permissions of this copyleft license are conditioned on making available\n * complete source code of licensed works and modifications under the same\n * license or the GNU GPLv3. Copyright and license notices must be preserved.\n * Contributors provide an express grant of patent rights. However, a larger\n * work using the licensed work through interfaces provided by the licensed\n * work may be distributed under different terms and without source code for\n * the larger work.\n *\n * Copyright (C) 2015 Jean Machuca,<correojean@gmail.com>\n *\n * Everyone is permitted to copy and distribute verbatim copies of this\n * license document, but changing it is not allowed.\n*/\n(function () {\n \"use strict\";\n (0, qcobjects_1.Package)(\"org.qcobjects.components.slider\", [\n class SlideListComponent extends qcobjects_1.Component {\n constructor(o) {\n super(o);\n this.tplsource = \"inline\";\n this.template = \"<p>Loading...</p>\";\n this.name = \"slidelist\";\n this.body.setAttribute(\"controllerClass\", \"DataGridController\");\n const subcomponentClass = (this.body.getAttribute(\"subcomponentClass\") !== null) ? (this.body.getAttribute(\"subcomponentClass\")) : (\"GridItemComponent\");\n this.body.setAttribute(\"subcomponentClass\", subcomponentClass);\n }\n },\n class SlideItemComponent extends qcobjects_1.Component {\n constructor(o) {\n super(o);\n this.effectClass = \"Fade\";\n this.name = \"slider_item\";\n this.data.slideNumber = this.data.__dataIndex + 1;\n this.template = `\n <div class=\"qcoSlides\" style=\"display:none\">\n <div class=\"qco-slider__numbertext\">{{slideNumber}} / {{__dataLength}}</div>\n <img src=\"{{image}}\" alt=\"{{title}}\"/>\n <div class=\"qco-slider__text\">\n <p>{{label}} <a href=\"{{link}}\">{{category}}</a></p>\n </div>\n </div>\n `;\n this.tplsource = \"inline\";\n }\n },\n class SliderComponent extends qcobjects_1.Component {\n constructor(o) {\n super(o);\n this.name = \"slider\";\n this.template = `\n <style>\n /* Slideshow container */\n \n :host a:hover,\n :host a:active,\n :host a:visited {\n color: #ffffff;\n }\n \n {\n color: #ffffff;\n }\n \n :host .prev {left:0;}\n .qco-slider__container {\n max-width: 100%;\n position: relative;\n margin: auto;\n height: 300px;\n }\n :host .qco-slider__container .qcoSlides img {\n object-fit: cover;\n width: 100%;\n height: 300px;\n }\n \n /* Next & previous buttons */\n :host .prev,\n :host .next {\n cursor: pointer;\n position: absolute;\n top: 50%;\n width: auto;\n margin-top: -22px;\n padding: 16px;\n color: white;\n font-weight: bold;\n font-size: 18px;\n transition: 0.6s ease;\n border-radius: 0 3px 3px 0;\n background-color: rgba(1, 1, 1, 0.1);\n }\n \n /* Position the \"next button\" to the right */\n :host .next {\n right: 0;\n border-radius: 3px 0 0 3px;\n }\n \n /* On hover, add a black background color with a little bit see-through */\n :host .prev:hover,\n :host .next:hover {\n background-color: rgba(0, 0, 0, 0.8);\n }\n \n /* Caption text */\n :host .qco-slider__text {\n color: #f2f2f2;\n font-size: 15px;\n /* padding: 8px 12px;*/\n position: absolute;\n bottom: 8px;\n width: 100%;\n text-align: center;\n text-shadow: -1px 1px 3px #111111;\n background-color: rgba(1,1,1,0.7);\n }\n \n /* Number text (1/3 etc) */\n :host .qco-slider__numbertext {\n color: #f2f2f2;\n text-shadow: 0px 2px 3px #111111;\n font-size: 12px;\n padding: 8px 12px;\n position: absolute;\n top: 0;\n padding-top: 0;\n margin-top: 10px;\n }\n \n /* The dots/bullets/indicators */\n :host .qcoSlider__dots {\n text-align: center;\n margin: 0 auto;\n padding: 0;\n }\n :host .qcoSlider__dots--dot {\n cursor: pointer;\n height: 10px;\n width: 10px;\n margin: 0 2px;\n background-color: #bbb;\n border-radius: 50%;\n display: inline-block;\n transition: background-color 0.6s ease;\n }\n \n :host .active,\n :host .qcoSlider__dots--dot:hover {\n background-color: #717171;\n }\n \n :host .qco-slider__container .qcoSlides img {\n border-radius: 30px 30px 0px 0px;\n }\n \n </style>\n \n <div class=\"qco-slider__container\">\n <component name=\"slidelist\" componentClass=\"SlideListComponent\" subcomponentClass=\"SlideItemComponent\" serviceClass=\"{{SERVICE_CLASS}}\" ></component>\n \n <a class=\"prev\" onclick=\"global.get('{{sliderHandler}}').plusSlidesAndStop(-1)\">&#10094;</a>\n <a class=\"next\" onclick=\"global.get('{{sliderHandler}}').plusSlidesAndStop(1)\">&#10095;</a>\n </div>\n <br>\n \n <div class=\"qcoSlider__dots\" style=\"text-align:center\">\n </div>\n \n `;\n this.tplsource = \"inline\";\n this.shadowed = true;\n this.data.SERVICE_CLASS = this.body.getAttribute(\"serviceClass\");\n this.data.sliderHandler = \"slider_\" + this.__instanceID.toString();\n this.body.setAttribute(\"controllerClass\", \"SliderController\");\n }\n }\n ]);\n})();\n", "\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nconst qcobjects_1 = require(\"qcobjects\");\nconst org_qcobjects_effects_1 = require(\"./org.qcobjects.effects\");\n/**\n * QCObjects SDK 2.4\n * ________________\n *\n * Author: Jean Machuca <correojean@gmail.com>\n *\n * Cross Browser Javascript Framework for MVC Patterns\n * QuickCorp/QCObjects is licensed under the\n * GNU Lesser General Public License v3.0\n * [LICENSE] (https://github.com/QuickCorp/QCObjects/blob/master/LICENSE.txt)\n *\n * Permissions of this copyleft license are conditioned on making available\n * complete source code of licensed works and modifications under the same\n * license or the GNU GPLv3. Copyright and license notices must be preserved.\n * Contributors provide an express grant of patent rights. However, a larger\n * work using the licensed work through interfaces provided by the licensed\n * work may be distributed under different terms and without source code for\n * the larger work.\n *\n * Copyright (C) 2015 Jean Machuca,<correojean@gmail.com>\n *\n * Everyone is permitted to copy and distribute verbatim copies of this\n * license document, but changing it is not allowed.\n*/\n(function () {\n \"use strict\";\n class NotificationComponent extends qcobjects_1.Component {\n constructor(o) {\n o.name = \"notification\";\n o.body = (0, qcobjects_1._DOMCreateElement)(\"div\");\n super(o);\n this.cached = false;\n this.tplsource = \"inline\";\n this.shadowed = false;\n this.template = `\n <style>\n div.notification_background {\n display: block; /* Hidden by default */\n position: fixed; /* Stay in place */\n z-index: 1; /* Sit on top */\n padding-top: 100px; /* Location of the box */\n left: 0;\n top: 0;\n bottom:0;\n right:0;\n width: 100%; /* Full width */\n height: 100%; /* Full height */\n overflow: auto; /* Enable scroll if needed */\n background-color: rgb(0,0,0); /* Fallback color */\n background-color: rgba(0,0,0,0.4); /* Black w/ opacity */\n border: none !important;\n }\n div.notification {\n border-radius: 12px !important;\n margin-bottom: 15px;\n padding: 4px 12px;\n }\n .notification.danger {\n background-color: #ffdddd;\n border-left: 6px solid #f44336;\n }\n .notification.success {\n background-color: #ddffdd;\n border-left: 6px solid #4CAF50;\n }\n .notification.info {\n background-color: #e7f3fe;\n border-left: 6px solid #2196F3;\n }\n .notification.warning {\n background-color: #ffffcc;\n border-left: 6px solid #ffeb3b;\n }\n </style>\n <div class=\"notification_background\">\n <div class=\"notification {{kind}}\">\n <p><strong>{{title}}</strong> {{message}}</p>\n </div>\n </div>\n `;\n this.kinds = [\"danger\", \"success\", \"info\", \"warning\"];\n }\n display(element) {\n const _display_ = function (element) {\n element.style.display = \"block\";\n const appearEffect = (0, qcobjects_1.New)(org_qcobjects_effects_1.Move, {\n duration: 900,\n apply(element) {\n (0, qcobjects_1._super_)(\"Fade\", \"apply\").call(this, element, 0, 1);\n (0, qcobjects_1._super_)(\"Move\", \"apply\").call(this, element, 0, -document.body.clientHeight, 0, 0);\n }\n });\n const disappearEffect = (0, qcobjects_1.New)(org_qcobjects_effects_1.Move, {\n duration: 650,\n apply(element) {\n (0, qcobjects_1._super_)(\"Fade\", \"apply\").call(this, element, 1, 0);\n (0, qcobjects_1._super_)(\"Move\", \"apply\").call(this, element, 0, 0, 0, -document.body.clientHeight);\n }\n });\n appearEffect.apply(element);\n setTimeout(function () {\n disappearEffect.apply(element);\n }, 2000);\n };\n element.subelements(\"div.notification_background\").map(element => (0, qcobjects_1.New)(org_qcobjects_effects_1.Fade, { duration: 500 }).apply(element, 0, 1));\n element.subelements(\"div.notification\").map(element => _display_(element));\n setTimeout(function () {\n element.remove();\n }, 2200);\n }\n static success(message) {\n const c = (0, qcobjects_1.New)(NotificationComponent, {\n name: \"notification\",\n shadowed: true,\n body: (0, qcobjects_1._DOMCreateElement)(\"div\"),\n data: {\n kind: \"success\",\n title: \"Success!\",\n message: `${message}...`\n }\n });\n document.body.append(c);\n const _componentRoot = (c.shadowed) ? (c.shadowRoot.host) : (c.body);\n c.display(_componentRoot);\n }\n static danger(message) {\n const c = (0, qcobjects_1.New)(NotificationComponent, {\n name: \"notification\",\n shadowed: true,\n body: (0, qcobjects_1._DOMCreateElement)(\"div\"),\n data: {\n kind: \"danger\",\n title: \"Danger!\",\n message: `${message}...`\n }\n });\n document.body.append(c);\n const _componentRoot = (c.shadowed) ? (c.shadowRoot.host) : (c.body);\n c.display(_componentRoot);\n }\n static info(message) {\n const c = (0, qcobjects_1.New)(NotificationComponent, {\n name: \"notification\",\n shadowed: true,\n body: (0, qcobjects_1._DOMCreateElement)(\"div\"),\n data: {\n kind: \"info\",\n title: \"Info!\",\n message: `${message}...`\n }\n });\n document.body.append(c);\n const _componentRoot = (c.shadowed) ? (c.shadowRoot.host) : (c.body);\n c.display(_componentRoot);\n }\n static warning(message) {\n const c = (0, qcobjects_1.New)(NotificationComponent, {\n name: \"notification\",\n shadowed: true,\n body: (0, qcobjects_1._DOMCreateElement)(\"div\"),\n data: {\n kind: \"warning\",\n title: \"Warning!\",\n message: `${message}...`\n }\n });\n document.body.append(c);\n const _componentRoot = (c.shadowed) ? (c.shadowRoot.host) : (c.body);\n c.display(_componentRoot);\n }\n }\n (0, qcobjects_1.Package)(\"org.quickcorp.components.notifications\", [\n NotificationComponent\n ]);\n})();\n", "\"use strict\";\n/**\n * QCObjects SDK 2.4.0\n * ________________\n *\n * Author: Jean Machuca <correojean@gmail.com>\n *\n * Cross Browser Javascript Framework for MVC Patterns\n * QuickCorp/QCObjects is licensed under the\n * GNU Lesser General Public License v3.0\n * [LICENSE] (https://github.com/QuickCorp/QCObjects/blob/master/LICENSE.txt)\n *\n * Permissions of this copyleft license are conditioned on making available\n * complete source code of licensed works and modifications under the same\n * license or the GNU GPLv3. Copyright and license notices must be preserved.\n * Contributors provide an express grant of patent rights. However, a larger\n * work using the licensed work through interfaces provided by the licensed\n * work may be distributed under different terms and without source code for\n * the larger work.\n *\n * Copyright (C) 2015 Jean Machuca,<correojean@gmail.com>\n *\n * Everyone is permitted to copy and distribute verbatim copies of this\n * license document, but changing it is not allowed.\n*/\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.CubeSplashScreenComponent = exports.VideoSplashScreenComponent = exports.SplashScreenComponent = void 0;\nconst qcobjects_1 = require(\"qcobjects\");\nconst org_qcobjects_effects_1 = require(\"./org.qcobjects.effects\");\nconst _top = (typeof module === \"object\" && typeof module.exports === \"object\") ? (module.exports = (typeof globalThis !== \"undefined\"\n ? globalThis\n : typeof self !== \"undefined\"\n ? self\n : typeof window !== \"undefined\"\n ? window\n : typeof global !== \"undefined\"\n ? global\n : {})) : ((typeof global === \"object\") ? (global) : ((typeof window === \"object\") ? (window) : ({})));\n// eslint-disable-next-line camelcase\n(function __splash_screen__(global) {\n \"use strict\";\n class SplashScreenComponent extends qcobjects_1.Component {\n constructor(component) {\n component.name = (typeof component.name === \"undefined\") ? (\"splashscreen\") : (component.name);\n const isBrowser = typeof window !== \"undefined\" && typeof window.self !== \"undefined\" && window === window.self;\n const isStartURL = (location.hash === \"\"\n && location.pathname === \"/\" && location.search === \"\")\n || qcobjects_1.CONFIG.get(\"routingWay\", \"pathname\") === \"hash\" && qcobjects_1.CONFIG.get(\"start_url\", \"/\") === location.hash\n || qcobjects_1.CONFIG.get(\"routingWay\", \"pathname\") === \"pathname\" && qcobjects_1.CONFIG.get(\"start_url\", \"/\") === location.pathname\n || qcobjects_1.CONFIG.get(\"routingWay\", \"pathname\") === \"search\" && qcobjects_1.CONFIG.get(\"start_url\", \"/\") === location.search;\n const _enabled_ = isBrowser && isStartURL;\n if (_enabled_) {\n component.basePath = qcobjects_1.CONFIG.get(\"splashscreenBasePath\", qcobjects_1.CONFIG.get(\"remoteSDKPath\", \"\"));\n if (typeof component.data === \"undefined\") {\n component.data = {};\n }\n component.data.basePath = component.basePath;\n }\n else {\n if (typeof component !== \"undefined\" && typeof component.body !== \"undefined\") {\n component.body.style.display = \"none\";\n }\n }\n super(component);\n this.cached = false;\n this.shadowed = true;\n this._bgcolor = \"\";\n this._enabled_ = _enabled_;\n if (this._enabled_) {\n const displayEffectDuration = 1000;\n let duration = this.body.getAttribute(\"duration\");\n if (duration === null) {\n duration = displayEffectDuration;\n }\n else {\n duration = parseInt(duration.toString());\n }\n this._bgcolor = this.body.style.backgroundColor;\n const _helper_ = () => {\n setTimeout(() => {\n if (!_helper_.executed) {\n const _componentRoot = (this.shadowed) ? this.shadowRoot?.host : this.body;\n if (typeof global.componentsStack !== \"undefined\") {\n global.componentsStack.filter((c) => c.body.hasAttribute(\"splashscreen\")).map((mainComponent) => {\n qcobjects_1.logger.debug(`Splash Screen of Main Component: ${mainComponent.name}`);\n mainComponent.splashScreenComponent = this;\n const SplashScreenHandler = () => {\n if (!SplashScreenHandler.executed) {\n const component = mainComponent.splashScreenComponent;\n const mainElement = (mainComponent.shadowed) ? mainComponent.shadowRoot?.host : mainComponent.body;\n mainComponent._mainPosition = mainElement.style.position;\n if (typeof mainElement !== \"undefined\") {\n mainElement.style.position = \"fixed\";\n }\n mainComponent._mainOpacity = mainElement.style.opacity;\n _componentRoot.style.width = \"100%\";\n _componentRoot.style.height = \"100%\";\n document.body.style.backgroundColor = \"#111111\";\n mainElement.style.opacity = \"0\";\n setTimeout(function () {\n if (typeof _componentRoot !== \"undefined\") {\n document.body.style.backgroundColor = component?._bgcolor;\n _componentRoot.subelements(\"#slot-logo\").map((slotlogo) => {\n slotlogo.style.display = \"block\";\n slotlogo.style.transformOrigin = \"center\";\n return (new org_qcobjects_effects_1.Resize()).apply(slotlogo, 1, 0);\n });\n (new org_qcobjects_effects_1.Fade()).apply(_componentRoot, 1, 0);\n }\n }, (duration - displayEffectDuration));\n setTimeout(function () {\n (new org_qcobjects_effects_1.Fade()).apply(mainElement, 0, 1);\n mainElement.style.position = mainComponent._mainPosition;\n document.body.style.backgroundColor = component._bgcolor;\n if (_componentRoot.parentElement !== null) {\n _componentRoot.parentElement.remove();\n }\n }, duration);\n }\n SplashScreenHandler.executed = true;\n };\n return mainComponent.addComponentHelper(SplashScreenHandler.bind(mainComponent));\n });\n }\n _helper_.executed = true;\n }\n });\n };\n _helper_.executed = false;\n this.addComponentHelper(_helper_.bind(component));\n }\n }\n }\n (0, qcobjects_1.Package)(\"org.qcobjects.components.base\", [\n SplashScreenComponent\n ]);\n class VideoSplashScreenComponent extends SplashScreenComponent {\n constructor(o) {\n o.name = \"videosplashscreen\";\n super(o);\n this.cached = false;\n this.shadowed = true;\n this.tplsource = \"inline\";\n this.template = `\n <style>\n :host * {\n box-sizing: border-box;\n }\n\n :host {\n zoom: 1.0;\n width: device-width;\n margin: 0;\n top: 0;\n left: 0;\n right: 0;\n bottom: 0;\n position: absolute;\n padding: 0;\n min-width: 100vw;\n min-height: 100vh;\n width: 100vw;\n height: 100vh;\n overflow: hidden;\n background-color: black;\n }\n #slot-logo::slotted(img) {\n vertical-align: middle;\n display: block;\n width: 40vw;\n left: 0;\n margin: 0;\n padding: 0;\n z-index: 9999999999;\n transform-origin: center;\n transform-style: preserve-3d;\n filter: blur(0em);\n transition: filter 0.5s;\n max-width: 300px;\n position: absolute;\n top: 50%;\n left: 50%;\n transform: translate(-50%, -50%);\n animation: fadeIn 5s;\n -webkit-animation: fadeIn 5s;\n -moz-animation: fadeIn 5s;\n -o-animation: fadeIn 5s;\n -ms-animation: fadeIn 5s; \n }\n\n :host * {\n -webkit-user-select: none;\n -moz-user-select: none;\n -ms-user-select: none;\n user-select: none;\n -webkit-touch-callout: none;\n /* prevent callout to copy image, etc when tap to hold */\n -webkit-text-size-adjust: none;\n /* prevent webkit from resizing text to fit */\n -webkit-user-select: none;\n /* prevent copy paste, to allow, change 'none' to 'text' */\n }\n\n /* FOCUS */\n :host summary:focus,\n :host a:focus,\n :host button:focus {\n outline: none;\n }\n\n .splashscreen,\n .fullscreen-bg {\n padding: 0;\n margin: 0;\n top: 0;\n left: 0;\n right: 0;\n bottom: 0;\n padding: 0;\n background-attachment: fixed;\n background-position: center;\n background-clip: content-box;\n background-size: cover;\n position: absolute;\n min-width: 100vw;\n min-height: 100vh;\n width: 100vw;\n height: 100vh;\n z-index: 0;\n overflow: hidden;\n }\n\n .splashscreen .splashcontent {\n top: 0;\n left: 0;\n right: 0;\n bottom: 0;\n margin: 0 auto;\n width: 100vw;\n height: 100vh;\n padding: 0;\n overflow: hidden;\n z-index: 1;\n }\n\n .splashscreen .splashcontent p {\n color: white;\n }\n\n video.fullscreen-bg__video {\n top: 0;\n left: 0;\n bottom: 0;\n right: 0;\n margin: 0;\n padding: 0;\n position: absolute;\n min-width: 100vw;\n min-height: 100vh;\n overflow: hidden;\n z-index: 0;\n object-fit: cover;\n filter: brightness(0.3);\n }\n .splashscreen,\n .fullscreen-bg {\n background-image: url('{{background}}');\n }\n\n @keyframes fadeIn {\n 0% {opacity:0;}\n 100% {opacity:1;}\n }\n \n @-moz-keyframes fadeIn {\n 0% {opacity:0;}\n 100% {opacity:1;}\n }\n \n @-webkit-keyframes fadeIn {\n 0% {opacity:0;}\n 100% {opacity:1;}\n }\n \n @-o-keyframes fadeIn {\n 0% {opacity:0;}\n 100% {opacity:1;}\n }\n \n @-ms-keyframes fadeIn {\n 0% {opacity:0;}\n 100% {opacity:1;}\n } \n\n </style>\n <div class=\"splashscreen\">\n <div class=\"fullscreen-bg splashcontent\">\n <video loop muted autoplay playsinline name=\"media\" poster=\"{{background}}\" class=\"fullscreen-bg__video\" data-setup=\"{}\" height=\"100%\">\n <source src=\"{{video_mp4}}\" type=\"video/mp4\">\n <source src=\"{{video_ogg}}\" type=\"video/ogg\">\n <source src=\"{{video_webm}}\" type=\"video/webm\">\n </video>\n <slot id=\"slot-logo\" name=\"logo\"></slot>\n </div>\n </div>\n\n `;\n }\n }\n class CubeSplashScreenComponent extends SplashScreenComponent {\n constructor(o) {\n o.name = \"cubesplashscreen\";\n super(o);\n this.cached = false;\n this.shadowed = true;\n this.tplsource = \"inline\";\n this.template = `\n <style>\n @keyframes spin {\n 0% {\n transform: translateZ(-100px) rotateX(0deg) rotateY(0deg) rotateZ(0deg);\n }\n\n 16% {\n transform: translateZ(-100px) rotateX(180deg) rotateY(180deg) rotateZ(0deg);\n }\n\n 33% {\n transform: translateZ(-100px) rotateX(360deg) rotateY(90deg) rotateZ(180deg);\n }\n\n 50% {\n transform: translateZ(-100px) rotateX(360deg) rotateY(360deg) rotateZ(360deg);\n }\n\n 66% {\n transform: translateZ(-100px) rotateX(180deg) rotateY(360deg) rotateZ(270deg);\n }\n\n 83% {\n transform: translateZ(-100px) rotateX(270deg) rotateY(180deg) rotateZ(180deg);\n }\n\n 100% {\n transform: translateZ(-100px) rotateX(360deg) rotateY(360deg) rotateZ(360deg);\n }\n }\n\n @keyframes spin-duplicate {\n 0% {\n transform: translateZ(-100px) rotateX(0deg) rotateY(0deg) rotateZ(0deg);\n }\n\n 16% {\n transform: translateZ(-100px) rotateX(180deg) rotateY(180deg) rotateZ(0deg);\n }\n\n 33% {\n transform: translateZ(-100px) rotateX(360deg) rotateY(90deg) rotateZ(180deg);\n }\n\n 50% {\n transform: translateZ(-100px) rotateX(360deg) rotateY(360deg) rotateZ(360deg);\n }\n\n 66% {\n transform: translateZ(-100px) rotateX(180deg) rotateY(360deg) rotateZ(270deg);\n }\n\n 83% {\n transform: translateZ(-100px) rotateX(270deg) rotateY(180deg) rotateZ(180deg);\n }\n\n 100% {\n transform: translateZ(-100px) rotateX(360deg) rotateY(360deg) rotateZ(360deg);\n }\n }\n\n @keyframes roll {\n 0% {\n transform: translate3d(-200px, -50px, -400px)\n }\n\n 12% {\n transform: translate3d(0px, 0, -100px)\n }\n\n 25% {\n transform: translate3d(200px, -50px, -400px)\n }\n\n 37% {\n transform: translate3d(0px, -100px, -800px)\n }\n\n 50% {\n transform: translate3d(-200px, -50px, -400px)\n }\n\n 62% {\n transform: translate3d(0px, 0, -100px)\n }\n\n 75% {\n transform: translate3d(200px, -50px, -400px)\n }\n\n 87% {\n transform: translate3d(0px, -100px, -800px)\n }\n\n 100% {\n transform: translate3d(-200px, -50px, -400px)\n }\n }\n\n #wrapper {\n position: relative;\n width: 200px;\n padding-top: 100px;\n margin: 0 auto;\n perspective: 1200px;\n }\n\n #platform {\n margin-top: 100px;\n }\n\n #dice span {\n position: absolute;\n margin: 100px 0 0 100px;\n display: block;\n font-size: 2.5em;\n padding: 10px;\n }\n\n #dice {\n position: absolute;\n width: 200px;\n height: 200px;\n transform-style: preserve-3d;\n animation: spin 50s infinite linear;\n }\n\n .side {\n position: absolute;\n width: 200px;\n height: 200px;\n background: none;\n box-shadow: inset 0 0 40px #fff0;\n border-radius: 40px;\n }\n\n #dice .cover, #dice .inner {\n background: #e0e0e0;\n box-shadow: none;\n }\n\n #dice .cover {\n border-radius: 0;\n transform-origin: center;\n transform: translateZ(0px);\n }\n\n #dice .cover.x {\n transform-origin: center;\n transform: rotateY(90deg);\n }\n\n #dice .cover.z {\n transform-origin: center;\n transform: rotateX(90deg);\n }\n\n #dice .front {\n transform-origin: center;\n transform: translateZ(100px);\n }\n\n #dice .front.inner {\n transform-origin: center;\n transform: translateZ(98px);\n }\n\n #dice .back {\n transform-origin: center;\n transform: rotateX(-180deg) translateZ(100px);\n }\n\n #dice .back.inner {\n transform-origin: center;\n transform: rotateX(-180deg) translateZ(98px);\n }\n\n #dice .right {\n transform-origin: center;\n transform: rotateY(90deg) translateZ(100px);\n }\n\n #dice .right.inner {\n transform-origin: center;\n transform: rotateY(90deg) translateZ(98px);\n }\n\n #dice .left {\n transform-origin: center;\n transform: rotateY(-90deg) translateZ(100px);\n }\n\n #dice .left.inner {\n transform-origin: center;\n transform: rotateY(-90deg) translateZ(98px);\n }\n\n #dice .top {\n transform-origin: center;\n transform: rotateX(90deg) translateZ(100px);\n }\n\n #dice .top.inner {\n transform-origin: center;\n transform: rotateX(90deg) translateZ(98px);\n }\n\n #dice .bottom {\n transform-origin: center;\n transform: rotateX(-90deg) translateZ(100px);\n }\n\n #dice .bottom.inner {\n transform-origin: center;\n transform: rotateX(-90deg) translateZ(98px);\n }\n\n .dot {\n position: absolute;\n width: 46px;\n height: 46px;\n border-radius: 23px;\n background: #444;\n box-shadow: inset 5px 0 10px #000;\n }\n\n .dot.center {\n margin: 77px 0 0 77px;\n }\n\n .dot.dtop {\n margin-top: 20px;\n }\n\n .dot.dleft {\n margin-left: 134px;\n }\n\n .dot.dright {\n margin-left: 20px;\n }\n\n .dot.dbottom {\n margin-top: 134px;\n }\n\n .dot.center.dleft {\n margin: 77px 0 0 20px;\n }\n\n .dot.center.dright {\n margin: 77px 0 0 134px;\n }\n\n #background {\n top: 0px;\n left: 0px;\n position: fixed;\n z-index: -1;\n width: 100%;\n height: 100%;\n background: var(--root-background, transparent);\n background-size: cover;\n background-origin: border-box;\n }\n\n #dice .side.front,\n #dice .side.top,\n #dice .side.right,\n #dice .side.left,\n #dice .side.bottom,\n #dice .side.back {\n background-image: var(--background-3d-cube-image, \"none\");\n background-size: cover;\n background-origin: border-box;\n }\n\n\n :root, :host {\n --background-3d-cube-image: url('{{cube_image}}');\n --box-width: 200px;\n font-size:.9em;\n font-family:sans-serif;\n --root-background: {{background}};\n }\n </style>\n\n <div id=\"background\"></div>\n <div id=\"wrapper\">\n <div id=\"platform\">\n <div id=\"dice\">\n <div class=\"side front\">\n </div>\n <div class=\"side front inner\"></div>\n <div class=\"side top\"></div>\n <div class=\"side top inner\"></div>\n <div class=\"side right\"></div>\n <div class=\"side right inner\"></div>\n <div class=\"side left\"></div>\n <div class=\"side left inner\"></div>\n <div class=\"side bottom\"></div>\n <div class=\"side bottom inner\"></div>\n <div class=\"side back\"></div>\n <div class=\"side back inner\"></div>\n <div class=\"side cover x\"></div>\n <div class=\"side cover y\"></div>\n <div class=\"side cover z\"></div>\n </div>\n </div>\n </div>\n\n `;\n }\n }\n (0, qcobjects_1.Package)(\"org.qcobjects.components.splashscreen\", [\n VideoSplashScreenComponent,\n CubeSplashScreenComponent\n ]);\n})(_top);\nconst SplashScreenComponent = _top.SplashScreenComponent;\nexports.SplashScreenComponent = SplashScreenComponent;\nconst VideoSplashScreenComponent = _top.VideoSplashScreenComponent;\nexports.VideoSplashScreenComponent = VideoSplashScreenComponent;\nconst CubeSplashScreenComponent = _top.CubeSplashScreenComponent;\nexports.CubeSplashScreenComponent = CubeSplashScreenComponent;\n", "\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nconst qcobjects_1 = require(\"qcobjects\");\n/**\n * QCObjects SDK 2.4\n * ________________\n *\n * Author: Jean Machuca <correojean@gmail.com>\n *\n * Cross Browser Javascript Framework for MVC Patterns\n * QuickCorp/QCObjects is licensed under the\n * GNU Lesser General Public License v3.0\n * [LICENSE] (https://github.com/QuickCorp/QCObjects/blob/master/LICENSE.txt)\n *\n * Permissions of this copyleft license are conditioned on making available\n * complete source code of licensed works and modifications under the same\n * license or the GNU GPLv3. Copyright and license notices must be preserved.\n * Contributors provide an express grant of patent rights. However, a larger\n * work using the licensed work through interfaces provided by the licensed\n * work may be distributed under different terms and without source code for\n * the larger work.\n *\n * Copyright (C) 2015 Jean Machuca,<correojean@gmail.com>\n *\n * Everyone is permitted to copy and distribute verbatim copies of this\n * license document, but changing it is not allowed.\n*/\n(function () {\n \"use strict\";\n (0, qcobjects_1.Package)(\"org.qcobjects.controllers\", [\n class GenericController extends qcobjects_1.Controller {\n }\n ]);\n})();\n", "\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nconst qcobjects_1 = require(\"qcobjects\");\n/**\n * QCObjects SDK 2.4\n * ________________\n *\n * Author: Jean Machuca <correojean@gmail.com>\n *\n * Cross Browser Javascript Framework for MVC Patterns\n * QuickCorp/QCObjects is licensed under the\n * GNU Lesser General Public License v3.0\n * [LICENSE] (https://github.com/QuickCorp/QCObjects/blob/master/LICENSE.txt)\n *\n * Permissions of this copyleft license are conditioned on making available\n * complete source code of licensed works and modifications under the same\n * license or the GNU GPLv3. Copyright and license notices must be preserved.\n * Contributors provide an express grant of patent rights. However, a larger\n * work using the licensed work through interfaces provided by the licensed\n * work may be distributed under different terms and without source code for\n * the larger work.\n *\n * Copyright (C) 2015 Jean Machuca,<correojean@gmail.com>\n *\n * Everyone is permitted to copy and distribute verbatim copies of this\n * license document, but changing it is not allowed.\n*/\n(function () {\n \"use strict\";\n (0, qcobjects_1.Package)(\"org.qcobjects.controllers.grid\", [\n class GridController extends qcobjects_1.Controller {\n constructor(controller) {\n super(controller);\n this.rows = this.component.body.getAttribute(\"rows\");\n this.rows = (this.rows !== null) ? (this.rows) : (this.component.rows);\n this.cols = this.component.body.getAttribute(\"cols\");\n this.cols = (this.cols !== null) ? (this.cols) : (this.component.cols);\n }\n cssGrid() {\n const component = this.component;\n const _componentRoot = (component.shadowed) ? (component.shadowRoot) : (component.body);\n if (typeof this.rows !== \"undefined\" && typeof this.cols !== \"undefined\") {\n const s = (0, qcobjects_1._DOMCreateElement)(\"style\");\n const templateRows = \"auto \".repeat(this.rows);\n const templateCols = \"auto \".repeat(this.cols);\n const className = \"grid\" + this.__instanceID.toString();\n s.innerHTML = `.${className}{\n display: grid; \\\n grid-template-rows: ${templateRows}; \\\n grid-template-columns: ${templateCols}; \\\n margin:0 auto; \\\n }`;\n _componentRoot?.append(s);\n if (component.shadowed) {\n _componentRoot?.host.classList.add(className);\n }\n else {\n (_componentRoot.classList).add(className);\n }\n }\n }\n done() {\n this.cssGrid();\n qcobjects_1.logger.debug(\"GridComponent built\");\n }\n },\n class DataGridController extends qcobjects_1.Controller {\n constructor(controller) {\n super(controller);\n this._componentRoot = (controller.component.shadowed) ? (controller.component.shadowRoot) : (controller.component.body);\n this.rows = controller.component.body.getAttribute(\"rows\");\n this.rows = (controller.rows !== null) ? (controller.rows) : (controller.component.rows);\n this.cols = controller.component.body.getAttribute(\"cols\");\n this.cols = (controller.cols !== null) ? (controller.cols) : (controller.component.cols);\n qcobjects_1.logger.debug(\"DataGridController INIT\");\n }\n getPageIndex(page, totalPage, totalElements) {\n page = (page > 0) ? (page - 1) : (0);\n return [totalElements * page / totalPage, (totalElements * page / totalPage) + totalElements / totalPage];\n }\n addSubcomponents() {\n this.component.subcomponents = [];\n if (typeof this._componentRoot !== \"undefined\") {\n this._componentRoot.innerHTML = \"\";\n }\n this.cssGrid();\n qcobjects_1.logger.debug((0, qcobjects_1._DataStringify)(this.component.data));\n try {\n const subcomponentClass = this.component.body.getAttribute(\"subcomponentClass\");\n if (subcomponentClass != null) {\n let offset;\n let limit;\n let pagesNumber;\n let list = [...this.component.data];\n let paginateIn = this.component.body.getAttribute(\"paginate-in\");\n let page;\n paginateIn = (paginateIn !== null) ? (paginateIn) : (\"client\");\n if (paginateIn === \"client\") {\n page = this.component.body.getAttribute(\"page-number\");\n page = (isNaN(page) || page === null) ? (-1) : (page);\n if (page !== -1) {\n pagesNumber = this.component.body.getAttribute(\"total-pages\");\n pagesNumber = (isNaN(pagesNumber)) ? (1) : (pagesNumber);\n offset = this.getPageIndex(page, pagesNumber, list.length)[0];\n limit = this.getPageIndex(page, pagesNumber, list.length)[1];\n }\n else {\n offset = 0;\n limit = list.length;\n pagesNumber = 1;\n }\n list = list.slice(offset, limit);\n }\n else {\n offset = 0;\n limit = list.length;\n pagesNumber = 1;\n }\n list.map((record, dataIndex, list) => {\n const _ret_ = undefined;\n try {\n const _body = (0, qcobjects_1._DOMCreateElement)(\"component\");\n _body.setAttribute(\"name\", (0, qcobjects_1.ClassFactory)(subcomponentClass).name);\n _body.setAttribute(\"shadowed\", (0, qcobjects_1.ClassFactory)(subcomponentClass).shadowed);\n _body.setAttribute(\"cached\", (0, qcobjects_1.ClassFactory)(subcomponentClass).cached);\n record = Object.assign(record, {\n __dataIndex: dataIndex,\n __dataLength: list.length,\n __page: page,\n __totalPages: pagesNumber,\n __limit: limit,\n __offset: offset\n });\n const subcomponent = (0, qcobjects_1.New)((0, qcobjects_1.ClassFactory)(subcomponentClass), {\n name: \"item\",\n data: record,\n templateURI: (0, qcobjects_1.ComponentURI)({\n \"COMPONENTS_BASE_PATH\": qcobjects_1.CONFIG.get(\"componentsBasePath\", \"\"),\n \"COMPONENT_NAME\": (0, qcobjects_1.ClassFactory)(subcomponentClass).name,\n \"TPLEXTENSION\": qcobjects_1.CONFIG.get(\"tplextension\", \"\"),\n \"TPL_SOURCE\": (0, qcobjects_1.ClassFactory)(subcomponentClass).tplsource\n }),\n body: _body,\n template: (0, qcobjects_1.ClassFactory)(subcomponentClass).template\n });\n subcomponent.done = this.component.done.bind(subcomponent);\n try {\n if (subcomponent) {\n subcomponent.data.__dataIndex = dataIndex;\n if (Object.hasOwnProperty.call(this.component.data, \"length\")) {\n subcomponent.data.__dataLength = this.component.data.length;\n }\n qcobjects_1.logger.debug(\"adding subcomponent to body\");\n this._componentRoot?.append(subcomponent.body);\n try {\n this.component.subcomponents.push(subcomponent);\n }\n catch (e) {\n qcobjects_1.logger.debug(\"ERROR LOADING SUBCOMPONENT IN DATAGRID\");\n }\n }\n else {\n qcobjects_1.logger.debug(\"ERROR LOADING SUBCOMPONENT IN DATAGRID\");\n }\n }\n catch (e) {\n qcobjects_1.logger.debug(\"ERROR LOADING SUBCOMPONENT IN DATAGRID\");\n }\n }\n catch (e) {\n qcobjects_1.logger.debug(\"ERROR LOADING SUBCOMPONENT IN DATAGRID\");\n }\n return _ret_;\n });\n }\n else {\n qcobjects_1.logger.debug(\"NO SUBCOMPONENT CLASS IN COMPONENT\");\n }\n }\n catch (e) {\n qcobjects_1.logger.debug(\"No data for component\");\n }\n }\n cssGrid() {\n const component = this.component;\n const _componentRoot = (component.shadowed) ? (component.shadowRoot) : (component.body);\n if (typeof this.rows !== \"undefined\" && typeof this.cols !== \"undefined\") {\n const s = (0, qcobjects_1._DOMCreateElement)(\"style\");\n const templateRows = \"auto \".repeat(this.rows);\n const templateCols = \"auto \".repeat(this.cols);\n const className = \"grid\" + this.__instanceID.toString();\n s.innerHTML = `.${className}{\n display: grid; \\\n grid-template-rows: ${templateRows}; \\\n grid-template-columns: ${templateCols}; \\\n margin:0 auto; \\\n }`;\n if (component.shadowed) {\n component.body.append(s);\n _componentRoot.host.classList.add(className);\n }\n else {\n _componentRoot?.append(s);\n _componentRoot.classList.add(className);\n }\n }\n }\n done() {\n const componentInstance = this.component;\n qcobjects_1.logger.debug(\"DataGridController DONE\");\n const serviceClass = this.component.body.getAttribute(\"serviceClass\");\n if (serviceClass != null) {\n let offset;\n let limit;\n let paginateIn = componentInstance.body.getAttribute(\"paginate-in\");\n paginateIn = (paginateIn !== null) ? (paginateIn) : (\"client\");\n if (paginateIn === \"server\") {\n let page = componentInstance.body.getAttribute(\"page-number\");\n page = (isNaN(page) || page === null) ? (-1) : (page);\n let pagesNumber;\n if (page !== -1) {\n const serverDataCount = (this.component.body.getAttribute(\"server-data-count\") !== null) ? this.component.body.getAttribute(\"server-data-count\") : (1);\n pagesNumber = this.component.body.getAttribute(\"total-pages\");\n pagesNumber = (isNaN(pagesNumber)) ? (1) : (pagesNumber);\n offset = this.getPageIndex(page, pagesNumber, serverDataCount)[0];\n limit = this.getPageIndex(page, pagesNumber, serverDataCount)[1];\n // send params in jsonrpc 2.0 style\n componentInstance.serviceData = (typeof componentInstance.serviceData !== \"undefined\") ? (componentInstance.serviceData) : ({});\n componentInstance.serviceData.params = (typeof componentInstance.serviceData.params !== \"undefined\") ? (componentInstance.serviceData.params) : ({});\n componentInstance.serviceData.params.offset = offset;\n componentInstance.serviceData.params.limit = limit;\n }\n }\n (0, qcobjects_1.serviceLoader)((0, qcobjects_1.New)((0, qcobjects_1.ClassFactory)(serviceClass), {\n data: componentInstance.serviceData\n }), false).then((successfulResponse) => {\n // This will show the service response as a plain text\n qcobjects_1.logger.debug(\"DONE SERVICE COMPONENT\");\n successfulResponse.service.JSONresponse = JSON.parse(successfulResponse.service.template);\n if (typeof successfulResponse.service.JSONresponse.result !== \"undefined\") {\n qcobjects_1.logger.debug((0, qcobjects_1._DataStringify)(successfulResponse.service.JSONresponse.result));\n componentInstance.data = successfulResponse.service.JSONresponse.result;\n }\n else {\n componentInstance.data = successfulResponse.service.JSONresponse;\n }\n this.addSubcomponents();\n }, (failedResponse) => {\n qcobjects_1.logger.debug(failedResponse);\n }).catch((e) => {\n qcobjects_1.logger.debug(\"Something went wrong when calling the service from: \" + serviceClass);\n qcobjects_1.logger.debug(e.message);\n });\n }\n }\n }\n ]);\n})();\n", "\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nconst qcobjects_1 = require(\"qcobjects\");\n/**\n * QCObjects SDK 2.4\n * ________________\n *\n * Author: Jean Machuca <correojean@gmail.com>\n *\n * Cross Browser Javascript Framework for MVC Patterns\n * QuickCorp/QCObjects is licensed under the\n * GNU Lesser General Public License v3.0\n * [LICENSE] (https://github.com/QuickCorp/QCObjects/blob/master/LICENSE.txt)\n *\n * Permissions of this copyleft license are conditioned on making available\n * complete source code of licensed works and modifications under the same\n * license or the GNU GPLv3. Copyright and license notices must be preserved.\n * Contributors provide an express grant of patent rights. However, a larger\n * work using the licensed work through interfaces provided by the licensed\n * work may be distributed under different terms and without source code for\n * the larger work.\n *\n * Copyright (C) 2015 Jean Machuca,<correojean@gmail.com>\n *\n * Everyone is permitted to copy and distribute verbatim copies of this\n * license document, but changing it is not allowed.\n */\n(function () {\n \"use strict\";\n (0, qcobjects_1.Package)(\"org.qcobjects.controllers.list\", [\n class ListController extends qcobjects_1.Controller {\n constructor({ component, dependencies = [], valueField = undefined, labelField = undefined }) {\n super({ component, dependencies, valueField, labelField });\n this.component = component;\n this._componentRoot = (this.component.shadowed) ? (this.component.shadowRoot) : (this.component.body);\n this.labelField = this.component.body.getAttribute(\"label-field\");\n this.valueField = this.component.body.getAttribute(\"value-field\");\n this.rows = this.component.body.getAttribute(\"rows\");\n this.rows = (this.rows !== null) ? (this.rows) : (this.component.rows);\n this.cols = 1;\n qcobjects_1.logger.debug(\"ListController INIT\");\n }\n getPageIndex(page, totalPage, totalElements) {\n page = (page > 0) ? (page - 1) : (0);\n return [totalElements * page / totalPage, (totalElements * page / totalPage) + totalElements / totalPage];\n }\n addSubcomponents() {\n this.component.subcomponents = [];\n const layout = this.component.body.getAttribute(\"layout\");\n const basePath = qcobjects_1.CONFIG.get(\"listBasePath\", qcobjects_1.CONFIG.get(\"remoteSDKPath\", \"\"));\n let cssLayout = \"\";\n this.labelField = this.component.body.getAttribute(\"label-field\");\n this.valueField = this.component.body.getAttribute(\"value-field\");\n if (layout === \"horizontal\") {\n cssLayout = `@import url(\"${basePath}css/components/horizontal-list.css\");`;\n }\n else {\n cssLayout = `@import url(\"${basePath}css/components/list.css\");`;\n }\n if (typeof this._componentRoot !== \"undefined\") {\n this._componentRoot.innerHTML = `<style>${cssLayout}</style><ul></ul>`;\n }\n qcobjects_1.logger.debug((0, qcobjects_1._DataStringify)(this.component.data));\n try {\n const subcomponentClass = this.component.body.getAttribute(\"subcomponentClass\");\n if (subcomponentClass != null) {\n let offset;\n let limit;\n let pagesNumber;\n let list = [...this.component.data];\n let paginateIn = this.component.body.getAttribute(\"paginate-in\");\n paginateIn = (paginateIn !== null) ? (paginateIn) : (\"client\");\n let page;\n if (paginateIn === \"client\") {\n page = this.component.body.getAttribute(\"page-number\");\n page = (isNaN(page) || page === null) ? (-1) : (page);\n if (page !== -1) {\n pagesNumber = this.component.body.getAttribute(\"total-pages\");\n pagesNumber = (isNaN(pagesNumber)) ? (1) : (pagesNumber);\n offset = this.getPageIndex(page, pagesNumber, list.length)[0];\n limit = this.getPageIndex(page, pagesNumber, list.length)[1];\n }\n else {\n offset = 0;\n limit = list.length;\n pagesNumber = 1;\n }\n list = list.slice(offset, limit);\n }\n else {\n offset = 0;\n limit = list.length;\n pagesNumber = 1;\n }\n list.map((record, dataIndex) => {\n const _ret_ = undefined;\n try {\n const _body = (0, qcobjects_1._DOMCreateElement)(\"li\");\n record.label = record[this.labelField];\n record.value = record[this.valueField];\n const subcomponent = (0, qcobjects_1.New)((0, qcobjects_1.ClassFactory)(subcomponentClass), {\n name: \"list-item\",\n data: {\n label: record[this.labelField],\n value: record[this.valueField],\n __dataIndex: dataIndex,\n __page: page,\n __totalPages: pagesNumber,\n __limit: limit,\n __offset: offset\n },\n templateURI: (0, qcobjects_1.ComponentURI)({\n \"COMPONENTS_BASE_PATH\": qcobjects_1.CONFIG.get(\"componentsBasePath\", \"\"),\n \"COMPONENT_NAME\": (0, qcobjects_1.ClassFactory)(subcomponentClass).name,\n \"TPLEXTENSION\": qcobjects_1.CONFIG.get(\"tplextension\", \"\"),\n \"TPL_SOURCE\": (0, qcobjects_1.ClassFactory)(subcomponentClass).tplsource\n }),\n body: _body,\n template: (0, qcobjects_1.ClassFactory)(subcomponentClass).template\n });\n subcomponent.done = this.component.done.bind(subcomponent);\n try {\n if (subcomponent) {\n subcomponent.data.__dataIndex = dataIndex;\n if (Object.hasOwnProperty.call(this.component.data, \"length\")) {\n subcomponent.data.__dataLength = this.component.data.length;\n }\n qcobjects_1.logger.debug(\"adding subcomponent to body\");\n this._componentRoot.subelements(\"ul\").map(ul => ul.append(subcomponent));\n try {\n this.component.subcomponents.push(subcomponent);\n }\n catch (e) {\n qcobjects_1.logger.debug(\"ERROR LOADING SUBCOMPONENT IN DATAGRID\");\n }\n }\n else {\n qcobjects_1.logger.debug(\"ERROR LOADING SUBCOMPONENT IN DATAGRID\");\n }\n }\n catch (e) {\n qcobjects_1.logger.debug(\"ERROR LOADING SUBCOMPONENT IN DATAGRID\");\n }\n }\n catch (e) {\n qcobjects_1.logger.debug(\"ERROR LOADING SUBCOMPONENT IN DATAGRID\");\n }\n return _ret_;\n });\n }\n else {\n qcobjects_1.logger.debug(\"NO SUBCOMPONENT CLASS IN COMPONENT\");\n }\n }\n catch (e) {\n qcobjects_1.logger.debug(\"No data for component\");\n }\n }\n cssGrid() {\n const component = this.component;\n const _componentRoot = (component.shadowed) ? (component.shadowRoot) : (component.body);\n if (typeof this.rows !== \"undefined\" && typeof this.cols !== \"undefined\") {\n const s = (0, qcobjects_1._DOMCreateElement)(\"style\");\n const templateRows = \"auto \".repeat(this.rows);\n const templateCols = \"auto \".repeat(this.cols);\n const className = \"grid\" + this.__instanceID.toString();\n s.innerHTML = `.${className}{\n display: grid; \\\n grid-template-rows: ${templateRows}; \\\n grid-template-columns: ${templateCols}; \\\n margin:0 auto; \\\n }`;\n _componentRoot.append(s);\n _componentRoot.classList.add(className);\n }\n }\n done() {\n this.cssGrid();\n const componentInstance = this.component;\n qcobjects_1.logger.debug(\"ListController DONE\");\n const serviceClass = this.component.body.getAttribute(\"serviceClass\");\n if (serviceClass != null) {\n let offset;\n let limit;\n let paginateIn = componentInstance.body.getAttribute(\"paginate-in\");\n paginateIn = (paginateIn !== null) ? (paginateIn) : (\"client\");\n if (paginateIn === \"server\") {\n let page = componentInstance.body.getAttribute(\"page-number\");\n page = (isNaN(page) || page === null) ? (-1) : (page);\n let pagesNumber;\n if (page !== -1) {\n const serverDataCount = (this.component.body.getAttribute(\"server-data-count\") !== null) ? (this.component.body.getAttribute(\"server-data-count\")) : (1);\n pagesNumber = this.component.body.getAttribute(\"total-pages\");\n pagesNumber = (isNaN(pagesNumber)) ? (1) : (pagesNumber);\n offset = this.getPageIndex(page, pagesNumber, serverDataCount)[0];\n limit = this.getPageIndex(page, pagesNumber, serverDataCount)[1];\n // send params in jsonrpc 2.0 style\n componentInstance.serviceData = (typeof componentInstance.serviceData !== \"undefined\") ? (componentInstance.serviceData) : ({});\n componentInstance.serviceData.params = (typeof componentInstance.serviceData.params !== \"undefined\") ? (componentInstance.serviceData.params) : ({});\n componentInstance.serviceData.params.offset = offset;\n componentInstance.serviceData.params.limit = limit;\n }\n }\n (0, qcobjects_1.serviceLoader)((0, qcobjects_1.New)((0, qcobjects_1.ClassFactory)(serviceClass), {\n data: componentInstance.serviceData\n }), false).then((successfulResponse) => {\n // This will show the service response as a plain text\n qcobjects_1.logger.debug(\"DONE SERVICE COMPONENT\");\n successfulResponse.service.JSONresponse = JSON.parse(successfulResponse.service.template);\n if (typeof successfulResponse.service.JSONresponse.result !== \"undefined\") {\n qcobjects_1.logger.debug((0, qcobjects_1._DataStringify)(successfulResponse.service.JSONresponse.result));\n componentInstance.data = successfulResponse.service.JSONresponse.result;\n }\n else {\n componentInstance.data = successfulResponse.service.JSONresponse;\n }\n this.addSubcomponents();\n }, (failedResponse) => {\n qcobjects_1.logger.debug(failedResponse);\n }).catch((e) => {\n qcobjects_1.logger.debug(\"Something went wrong when calling the service from: \" + serviceClass);\n qcobjects_1.logger.debug(e.message);\n });\n }\n }\n }\n ]);\n})();\n", "\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nconst qcobjects_1 = require(\"qcobjects\");\n/**\n * QCObjects SDK 2.4\n * ________________\n *\n * Author: Jean Machuca <correojean@gmail.com>\n *\n * Cross Browser Javascript Framework for MVC Patterns\n * QuickCorp/QCObjects is licensed under the\n * GNU Lesser General Public License v3.0\n * [LICENSE] (https://github.com/QuickCorp/QCObjects/blob/master/LICENSE.txt)\n *\n * Permissions of this copyleft license are conditioned on making available\n * complete source code of licensed works and modifications under the same\n * license or the GNU GPLv3. Copyright and license notices must be preserved.\n * Contributors provide an express grant of patent rights. However, a larger\n * work using the licensed work through interfaces provided by the licensed\n * work may be distributed under different terms and without source code for\n * the larger work.\n *\n * Copyright (C) 2015 Jean Machuca,<correojean@gmail.com>\n *\n * Everyone is permitted to copy and distribute verbatim copies of this\n * license document, but changing it is not allowed.\n */\n(function (global) {\n \"use strict\";\n (0, qcobjects_1.Package)(\"org.qcobjects.controllers.slider\", [\n class SliderController extends qcobjects_1.Controller {\n constructor({ component, dependencies = [], duration = 7100, slideIndex = 0, interval = null, sliderHandlerName = null }) {\n super({ component, dependencies, duration, slideIndex, interval, sliderHandlerName });\n this.slideIndex = 0;\n this.duration = 7100;\n this.interval = null;\n this.sliderHandlerName = \"\";\n this.component = component;\n this._componentRoot = (component.shadowed) ? (component.shadowRoot) : (component.body);\n this.sliderHandlerName = \"slider_\" + this.component.__instanceID.toString();\n global.set(this.sliderHandlerName, this);\n }\n stop() {\n if (this.interval != null) {\n clearInterval(this.interval);\n }\n }\n plusSlidesAndStop(n) {\n this.stop();\n this.plusSlides(n);\n }\n plusSlides(n) {\n this.showSlides(this.slideIndex += n);\n }\n currentSlide(n) {\n this.stop();\n this.showSlides(this.slideIndex = n);\n }\n automate() {\n this.interval = setInterval(() => {\n this.plusSlides(1);\n }, this.duration);\n }\n showSlides(n) {\n const slides = this._componentRoot?.subelements(\".qcoSlides\");\n const dots = this._componentRoot?.subelements(\".qcoSlider__dots--dot\");\n if (n > (slides.length - 1)) {\n this.slideIndex = 0;\n }\n if (n < 0) {\n this.slideIndex = 0;\n }\n slides.filter((slide, index) => { return index !== this.slideIndex; }).map((slide) => {\n return ((0, qcobjects_1.New)((0, qcobjects_1.ClassFactory)(\"Fade\"), {})).apply(slide, 1, 0);\n });\n dots.filter((dot, index) => { return index !== this.slideIndex; }).map((dot) => {\n return dot.classList.remove(\"active\");\n });\n try {\n dots[this.slideIndex].classList.add(\"active\");\n }\n catch (e) {\n qcobjects_1.logger.debug(`Something went wrong when trying to activate a slide: ${this.slideIndex} - ${e.message}`);\n }\n setTimeout(() => {\n slides.filter((slide, index) => { return index !== this.slideIndex; }).map((slide) => {\n slide.style.display = \"none\";\n return slide.style.display;\n });\n try {\n slides[this.slideIndex].style.display = \"block\";\n ((0, qcobjects_1.New)((0, qcobjects_1.ClassFactory)(\"Fade\"), {})).apply(slides[this.slideIndex], 0, 1);\n }\n catch (e) {\n qcobjects_1.logger.debug(`Something went wrong when trying to show a slide: ${this.slideIndex} - ${e.message}`);\n }\n }, 700);\n }\n fillDots() {\n const slides = this._componentRoot?.subelements(\".qcoSlides\");\n slides.map((slide, index) => {\n const dotHTML = document.createElement(\"span\");\n const dotContent = `<span class=\"qcoSlider__dots--dot\" onclick=\"global.get('${this.sliderHandlerName}').currentSlide(${index})\"></span>`;\n dotHTML.innerHTML = dotContent;\n return this._componentRoot?.subelements(\".qcoSlider__dots\")[0].append(dotHTML);\n });\n }\n done() {\n const slides = this._componentRoot?.subelements(\".qcoSlides\");\n slides.filter((slide, index) => { return index !== this.slideIndex; }).map((slide) => {\n slide.style.display = \"none\";\n return slide.style.display;\n });\n setTimeout(() => {\n this.fillDots();\n this.slideIndex = 0;\n this.showSlides(this.slideIndex);\n this.automate();\n }, 3000);\n }\n }\n ]);\n})((typeof module === \"object\" && typeof module.exports === \"object\") ? (module.exports = (typeof globalThis !== \"undefined\"\n ? globalThis\n : typeof self !== \"undefined\"\n ? self\n : typeof window !== \"undefined\"\n ? window\n : typeof global !== \"undefined\"\n ? global\n : {})) : ((typeof global === \"object\") ? (global) : ((typeof window === \"object\") ? (window) : ({}))));\n", "\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nconst qcobjects_1 = require(\"qcobjects\");\nconst org_qcobjects_components_1 = require(\"./org.qcobjects.components\");\n/**\n * QCObjects SDK 2.4\n * ________________\n *\n * Author: Jean Machuca <correojean@gmail.com>\n *\n * Cross Browser Javascript Framework for MVC Patterns\n * QuickCorp/QCObjects is licensed under the\n * GNU Lesser General Public License v3.0\n * [LICENSE] (https://github.com/QuickCorp/QCObjects/blob/master/LICENSE.txt)\n *\n * Permissions of this copyleft license are conditioned on making available\n * complete source code of licensed works and modifications under the same\n * license or the GNU GPLv3. Copyright and license notices must be preserved.\n * Contributors provide an express grant of patent rights. However, a larger\n * work using the licensed work through interfaces provided by the licensed\n * work may be distributed under different terms and without source code for\n * the larger work.\n *\n * Copyright (C) 2015 Jean Machuca,<correojean@gmail.com>\n *\n * Everyone is permitted to copy and distribute verbatim copies of this\n * license document, but changing it is not allowed.\n*/\n(function () {\n \"use strict\";\n (0, qcobjects_1.Package)(\"org.qcobjects.controllers.form\", [\n class FormValidations extends qcobjects_1.Controller {\n getDefault() {\n return function (fieldName, dataValue, element) {\n const _regex = {\n name: \"^[a-zA-Z]+(([',. -][a-zA-Z ])?[a-zA-Z]*)*$\",\n email: \"^([A-Za-z0-9]+)@([A-Za-z0-9]+).([A-Za-z0-9]+)$\"\n };\n const _pattern_ = (element.getAttribute(\"pattern\") || _regex[fieldName]);\n const pattern = new RegExp(_pattern_);\n return pattern.test(dataValue);\n };\n }\n },\n class FormController extends qcobjects_1.Controller {\n hasValidation(element) {\n const fieldName = element.getAttribute(\"data-field\");\n let _hasValidation = false;\n if (typeof this.validations !== \"undefined\"\n && Object.hasOwnProperty.call(this.validations, fieldName)) {\n _hasValidation = true;\n }\n return _hasValidation;\n }\n isInvalid(element) {\n let _isInvalid = false;\n const fieldName = element.getAttribute(\"data-field\");\n const dataValue = this.component.data[fieldName];\n const _execValidation = (fieldName, dataValue, element) => {\n return (typeof this.validations !== \"undefined\"\n && Object.hasOwnProperty.call(this.validations, fieldName)\n && this.validations[fieldName].call(null, fieldName, dataValue, element));\n };\n if (typeof this.validations !== \"undefined\" && (!_execValidation(fieldName, dataValue, element))) {\n _isInvalid = true;\n }\n return _isInvalid;\n }\n isValid(element) {\n return !this.isInvalid(element);\n }\n save() {\n if (this.serviceClass !== \"\") {\n location.href = this.formSettings.loadingRouting;\n (0, qcobjects_1.serviceLoader)((0, qcobjects_1.New)((0, qcobjects_1.ClassFactory)(this.serviceClass), {\n data: this.component.data\n }), false).then((successfulResponse) => {\n // This will show the service response as a plain text\n console.log(\"DONE SERVICE COMPONENT\");\n try {\n console.log(successfulResponse.service.JSONresponse);\n }\n catch (e) {\n // no json\n }\n location.href = this.formSettings.nextRouting;\n }, (failedResponse) => {\n qcobjects_1.logger.debug(failedResponse);\n location.href = this.formSettings.backRouting;\n });\n }\n else {\n qcobjects_1.logger.debug(\"No service name declared on serviceClass property\");\n }\n }\n formSaveTouchHandler() {\n qcobjects_1.logger.debug(\"Saving data...\");\n const _componentRoot_ = (this.component.shadowed) ? ((this.component?.shadowRoot).host) : (this.component.body);\n this.component.executeBindings();\n if (this.formValidatorModal != null) {\n const componentElementFields = _componentRoot_.subelements(\"*[data-field]\");\n const fieldsToValidate = componentElementFields.filter(f => this.hasValidation(f));\n const _labelledby = function (parentElement, element) {\n const _arialabelledby = (parentElement, element) => {\n return (element.getAttribute(\"aria-labelledby\") !== null) ? ((element.getAttribute(\"aria-labelledby\") || \"\").split(\" \").map(e => parentElement.subelements(`#${e}`).map(_e => _e.innerHTML)).join(\" \")) : (null);\n };\n return (_arialabelledby(parentElement, element)\n || element.getAttribute(\"aria-label\")\n || element.getAttribute(\"placeholder\")\n || element.getAttribute(\"name\")\n || element.getAttribute(\"data-field\"));\n };\n const _ariatitle = function (element) {\n return (element.getAttribute(\"title\") || element.getAttribute(\"aria-title\") || \"\");\n };\n const invalidFields = fieldsToValidate.filter(f => this.isInvalid(f));\n if (invalidFields.length > 0) {\n const validationMessage = `\n<details>\n <summary>Please verify the following incorrect fields:</summary>\n <ul>\n <div>\n ${invalidFields.map(element => \"<li><div>\" + _labelledby(_componentRoot_, element) + \"</div><div>\" + _ariatitle(element) + \"</div></li>\").join(\"\")}\n </div>\n </ul>\n</details>\n`;\n this.formValidatorModal.body.subelements(\".validationMessage\")[0].innerHTML = validationMessage;\n this.formValidatorModal.modal();\n }\n else {\n this.save();\n }\n }\n else {\n qcobjects_1.logger.debug(\"Unable to find the modal validator...\");\n qcobjects_1.logger.debug(\"Saving data...\");\n this.save();\n }\n }\n constructor(o) {\n super(o);\n this.validations = [];\n this.serviceClass = \"\";\n this.formSettings = {\n backRouting: \"#\",\n loadingRouting: \"#loading\",\n nextRouting: \"#signupsuccessful\"\n };\n this.component = o.component;\n this.component = this.component.Cast(org_qcobjects_components_1.FormField);\n }\n done() {\n qcobjects_1.logger.debugEnabled = true;\n try {\n this.component.createBindingEvents();\n const modalBody = (0, qcobjects_1._DOMCreateElement)(\"div\");\n modalBody.className = \"modal_body\";\n this.formValidatorModal = (0, qcobjects_1.New)(org_qcobjects_components_1.ModalComponent, {\n body: modalBody,\n subcomponents: [],\n data: {\n content: \"<div class=\\\"validationMessage\\\"></div>\"\n }\n });\n (0, qcobjects_1.Tag)(\".modal_body\").map(e => document.body.removeChild(e));\n document.body.append(this.formValidatorModal);\n }\n catch (e) {\n qcobjects_1.logger.debug(\"Unable to create the modal\");\n }\n this.onpress(\".submit\", () => {\n this.formSaveTouchHandler();\n });\n }\n }\n ]);\n})();\n", "\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nconst qcobjects_1 = require(\"qcobjects\");\n(function () {\n \"use strict\";\n (0, qcobjects_1.Package)(\"org.qcobjects.controllers.swagger\", [\n class SwaggerUIController extends qcobjects_1.Controller {\n startSwaggerUI() {\n // Begin Swagger UI call region\n if (typeof SwaggerUIBundle !== \"undefined\") {\n /* eslint-disable no-undef */\n const ui = SwaggerUIBundle({\n url: qcobjects_1.CONFIG.get(\"swagger-ui-url\", \"https://petstore.swagger.io/v2/swagger.json\"),\n dom_id: \"#\" + qcobjects_1.CONFIG.get(\"swagger-ui-dom_id\", \"swagger-ui\"),\n deepLinking: true,\n presets: [\n SwaggerUIBundle.presets.apis,\n SwaggerUIStandalonePreset\n ],\n plugins: [\n SwaggerUIBundle.plugins.DownloadUrl\n ],\n layout: \"StandaloneLayout\"\n });\n // End Swagger UI call region\n window.ui = ui;\n }\n }\n done() {\n this.component.body.innerHTML = \"<div id=\\\"\" + qcobjects_1.CONFIG.get(\"swagger-ui-dom_id\", \"swagger-ui\") + \"\\\"></div>\";\n const swaggerUIPackagePath = qcobjects_1.CONFIG.get(\"swagger-ui-package-path\", \"node_modules/swagger-ui-dist/\");\n this.dependencies?.push((0, qcobjects_1.New)(qcobjects_1.SourceJS, {\n url: swaggerUIPackagePath + \"swagger-ui-standalone-preset.js\",\n external: qcobjects_1.CONFIG.get(\"swagger-ui-external\", false)\n }));\n this.dependencies?.push((0, qcobjects_1.New)(qcobjects_1.SourceCSS, {\n url: swaggerUIPackagePath + \"swagger-ui.css\",\n external: qcobjects_1.CONFIG.get(\"swagger-ui-external\", false)\n }));\n this.dependencies?.push((0, qcobjects_1.New)(qcobjects_1.SourceJS, {\n url: swaggerUIPackagePath + \"swagger-ui-bundle.js\",\n external: qcobjects_1.CONFIG.get(\"swagger-ui-external\", false),\n done: () => {\n this.startSwaggerUI();\n }\n }));\n }\n }\n ]);\n})();\n", "\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nconst qcobjects_1 = require(\"qcobjects\");\n/**\n * QCObjects SDK 2.4\n * ________________\n *\n * Author: Jean Machuca <correojean@gmail.com>\n *\n * Cross Browser Javascript Framework for MVC Patterns\n * QuickCorp/QCObjects is licensed under the\n * GNU Lesser General Public License v3.0\n * [LICENSE] (https://github.com/QuickCorp/QCObjects/blob/master/LICENSE.txt)\n *\n * Permissions of this copyleft license are conditioned on making available\n * complete source code of licensed works and modifications under the same\n * license or the GNU GPLv3. Copyright and license notices must be preserved.\n * Contributors provide an express grant of patent rights. However, a larger\n * work using the licensed work through interfaces provided by the licensed\n * work may be distributed under different terms and without source code for\n * the larger work.\n *\n * Copyright (C) 2015 Jean Machuca,<correojean@gmail.com>\n *\n * Everyone is permitted to copy and distribute verbatim copies of this\n * license document, but changing it is not allowed.\n*/\n(function () {\n \"use strict\";\n (0, qcobjects_1.Package)(\"org.qcobjects.modal.controllers\", [\n class ModalController extends qcobjects_1.Controller {\n done() {\n const component = this.component;\n component.body.innerHTML = component.body.innerHTML.replace(\"/{{content}}/g\", component.submodal.template);\n }\n }\n ]);\n})();\n", "\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nconst qcobjects_1 = require(\"qcobjects\");\n/**\n * QCObjects SDK 2.4\n * ________________\n *\n * Author: Jean Machuca <correojean@gmail.com>\n *\n * Cross Browser Javascript Framework for MVC Patterns\n * QuickCorp/QCObjects is licensed under the\n * GNU Lesser General Public License v3.0\n * [LICENSE] (https://github.com/QuickCorp/QCObjects/blob/master/LICENSE.txt)\n *\n * Permissions of this copyleft license are conditioned on making available\n * complete source code of licensed works and modifications under the same\n * license or the GNU GPLv3. Copyright and license notices must be preserved.\n * Contributors provide an express grant of patent rights. However, a larger\n * work using the licensed work through interfaces provided by the licensed\n * work may be distributed under different terms and without source code for\n * the larger work.\n *\n * Copyright (C) 2015 Jean Machuca,<correojean@gmail.com>\n *\n * Everyone is permitted to copy and distribute verbatim copies of this\n * license document, but changing it is not allowed.\n*/\n(function () {\n \"use strict\";\n (0, qcobjects_1.Package)(\"org.qcobjects.views\", [\n class GridView extends qcobjects_1.View {\n }\n ]);\n})();\n", "/**\n * QCObjects SDK 2.4\n * ________________\n *\n * Author: Jean Machuca <correojean@gmail.com>\n *\n * Cross Browser Javascript Framework for MVC Patterns\n * QuickCorp/QCObjects is licensed under the\n * GNU Lesser General Public License v3.0\n * [LICENSE] (https://github.com/QuickCorp/QCObjects/blob/master/LICENSE.txt)\n *\n * Permissions of this copyleft license are conditioned on making available\n * complete source code of licensed works and modifications under the same\n * license or the GNU GPLv3. Copyright and license notices must be preserved.\n * Contributors provide an express grant of patent rights. However, a larger\n * work using the licensed work through interfaces provided by the licensed\n * work may be distributed under different terms and without source code for\n * the larger work.\n *\n * Copyright (C) 2015 Jean Machuca,<correojean@gmail.com>\n *\n * Everyone is permitted to copy and distribute verbatim copies of this\n * license document, but changing it is not allowed.\n*/\n\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nconst qcobjects_1 = require(\"qcobjects\");\n(function () {\n (0, qcobjects_1.Package)(\"org.qcobjects.tools.canvas\", [\n class CanvasTool extends qcobjects_1.InheritClass {\n drawImageFilled(img, canvas, zoom = 1, px = 0, py = 0) {\n // get the scale\n let scale = Math.max(canvas.width / img.width, canvas.height / img.height);\n scale = scale * zoom;\n // get the top left position of the image\n const x = (canvas.width / 2) - (img.width / 2) * scale;\n const y = (canvas.height / 2) - (img.height / 2) * scale;\n const ctx = canvas.getContext(\"2d\");\n ctx?.drawImage(img, (px + x), (py + y), img.width * scale, img.height * scale);\n }\n getImageResized(img, width, height, resizedImage, zoom = 1, px = 0, py = 0) {\n const canvas = document.createElement(\"canvas\");\n canvas.width = width;\n canvas.height = height;\n canvas.style.width = width.toString();\n canvas.style.height = height.toString();\n this.drawImageFilled(img, canvas, zoom, px, py);\n resizedImage.src = canvas.toDataURL(\"image/png\");\n return canvas;\n }\n }\n ]);\n})();\n", "/* eslint-disable array-callback-return */\n/**\n * QCObjects SDK 2.4\n * ________________\n *\n * Author: Jean Machuca <correojean@gmail.com>\n *\n * Cross Browser Javascript Framework for MVC Patterns\n * QuickCorp/QCObjects is licensed under the\n * GNU Lesser General Public License v3.0\n * [LICENSE] (https://github.com/QuickCorp/QCObjects/blob/master/LICENSE.txt)\n *\n * Permissions of this copyleft license are conditioned on making available\n * complete source code of licensed works and modifications under the same\n * license or the GNU GPLv3. Copyright and license notices must be preserved.\n * Contributors provide an express grant of patent rights. However, a larger\n * work using the licensed work through interfaces provided by the licensed\n * work may be distributed under different terms and without source code for\n * the larger work.\n *\n * Copyright (C) 2015 Jean Machuca,<correojean@gmail.com>\n *\n * Everyone is permitted to copy and distribute verbatim copies of this\n * license document, but changing it is not allowed.\n*/\n\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nconst qcobjects_1 = require(\"qcobjects\");\nconst org_qcobjects_effects_1 = require(\"./org.qcobjects.effects\");\n(function () {\n (0, qcobjects_1.Package)(\"org.qcobjects.tools.layouts\", [\n class BasicLayout extends qcobjects_1.InheritClass {\n constructor({ component = null, dependencies = [] }) {\n super({ component, dependencies });\n this.dependencies = [];\n }\n load() {\n this.dependencies.push((0, qcobjects_1.New)(qcobjects_1.SourceCSS, {\n external: !(qcobjects_1.CONFIG.get(\"useLocalSDK\", false)),\n url: (qcobjects_1.CONFIG.get(\"useLocalSDK\", false)) ? (\"css/basic-layout.css\") : (qcobjects_1.CONFIG.get(\"remoteSDKPath\", false) + \"css/basic-layout.css\")\n }));\n }\n coloredBorder() {\n /*\n * A helper function to visualize the layout borders\n * Usage: BasicLayout.coloredBorder()\n */\n setTimeout(function () {\n (0, qcobjects_1.Tag)(\"nav\").map((element) => { element.style.border = \"20px solid #3333\"; });\n (0, qcobjects_1.Tag)(\"nav\").map((element) => { element.style.backgroundColor = \"#129999\"; });\n (0, qcobjects_1.Tag)(\"component>footer\").map((element) => { element.style.background = \"#876\"; });\n (0, qcobjects_1.Tag)(\"component>div\").map((element) => { element.style.border = \"3px dashed #fff\"; });\n (0, qcobjects_1.Tag)(\"component>section\").map((element) => { element.style.border = \"3px solid #000\"; });\n (0, qcobjects_1.Tag)(\"component>section\").map((element) => { element.style.backgroundColor = \"#fffaaa\"; });\n (0, qcobjects_1.Tag)(\"component>article\").map((element) => { element.style.border = \"3px dotted #000\"; });\n (0, qcobjects_1.Tag)(\"component>header\").map((element) => { element.style.background = \"#789\"; });\n (0, qcobjects_1.Tag)(\"component>footer\").map((element) => { element.style.background = \"#876\"; });\n (0, qcobjects_1.Tag)(\"component>article:nth-child(1)\").map((element) => { element.style.border = \"1px solid #444\"; });\n (0, qcobjects_1.Tag)(\"component>article:nth-child(1)\").map((element) => { element.style.backgroundColor = \"#555aaa\"; });\n (0, qcobjects_1.Tag)(\"component>article:nth-child(2)\").map((element) => { element.style.backgroundColor = \"#aaa333\"; });\n (0, qcobjects_1.Tag)(\"component>article:nth-child(3)\").map((element) => { element.style.backgroundColor = \"#54da82\"; });\n (0, qcobjects_1.Tag)(\"*\").map((element) => { element.style.color = \"#fff\"; });\n (0, qcobjects_1.Tag)(\"component>article\").map((element) => org_qcobjects_effects_1.Fade.apply(element, 0, 1));\n (0, qcobjects_1.Tag)(\"component>footer\").map((element) => org_qcobjects_effects_1.Fade.apply(element, 0, 1));\n (0, qcobjects_1.Tag)(\"component>header\").map((element) => org_qcobjects_effects_1.Fade.apply(element, 0, 1));\n (0, qcobjects_1.Tag)(\"nav\").map((element) => { element.style.display = \"block\"; element.style.width = element.offsetParent?.scrollWidth.toString() || element.clientWidth.toString(); org_qcobjects_effects_1.MoveXInFromLeft.apply(element); });\n (0, qcobjects_1.Tag)(\"component>article\").map((element) => { element.style.display = \"block\"; element.style.height = element.offsetParent?.scrollHeight.toString() || element.clientHeight.toString(); org_qcobjects_effects_1.MoveYInFromBottom.apply(element); });\n (0, qcobjects_1.Tag)(\"component>article:nth-child(2)\").map((element) => { element.style.display = \"block\"; element.style.width = element.offsetParent?.scrollWidth.toString() || element.clientWidth.toString(); org_qcobjects_effects_1.MoveXInFromRight.apply(element); });\n }, 300);\n }\n }\n ]);\n})();\n", "\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.SessionUserToken = void 0;\nconst qcobjects_1 = require(\"qcobjects\");\n/**\n * QCObjects SDK 2.4\n * ________________\n *\n * Author: Jean Machuca <correojean@gmail.com>\n *\n * Cross Browser Javascript Framework for MVC Patterns\n * QuickCorp/QCObjects is licensed under the\n * GNU Lesser General Public License v3.0\n * [LICENSE] (https://github.com/QuickCorp/QCObjects/blob/master/LICENSE.txt)\n *\n * Permissions of this copyleft license are conditioned on making available\n * complete source code of licensed works and modifications under the same\n * license or the GNU GPLv3. Copyright and license notices must be preserved.\n * Contributors provide an express grant of patent rights. However, a larger\n * work using the licensed work through interfaces provided by the licensed\n * work may be distributed under different terms and without source code for\n * the larger work.\n *\n * Copyright (C) 2015 Jean Machuca,<correojean@gmail.com>\n *\n * Everyone is permitted to copy and distribute verbatim copies of this\n * license document, but changing it is not allowed.\n */\nconst _top = (typeof module === \"object\" && typeof module.exports === \"object\") ? (module.exports = (typeof globalThis !== \"undefined\"\n ? globalThis\n : typeof self !== \"undefined\"\n ? self\n : typeof window !== \"undefined\"\n ? window\n : typeof global !== \"undefined\"\n ? global\n : {})) : ((typeof global === \"object\") ? (global) : ((typeof window === \"object\") ? (window) : ({})));\n(function (global) {\n \"use strict\";\n class SessionUserToken extends qcobjects_1.InheritClass {\n constructor(o) {\n super(o);\n // eslint-disable-next-line @typescript-eslint/no-this-alias\n const __instance__ = this;\n this.__cache__ = new qcobjects_1.ComplexStorageCache({\n index: __instance__.__instanceID.toString(),\n load() {\n let __token__;\n if (typeof navigator !== \"undefined\" && typeof origin !== \"undefined\") {\n __token__ = qcobjects_1._Crypt.encrypt(`${navigator.userAgent}|${o.username}|${(+(new Date())).toString()}`, origin);\n }\n else {\n __token__ = qcobjects_1._Crypt.encrypt(`${o.username}|${(+(new Date())).toString()}`, qcobjects_1.CONFIG.get(\"domain\", \"localhost\"));\n }\n SessionUserToken.user = {\n priority: __instance__.__instanceID.toString(),\n token: __token__\n };\n return SessionUserToken.user;\n },\n alternate(cacheController) {\n SessionUserToken.user = cacheController?.cache.getCached(__instance__.__instanceID.toString()); // setting dataObject with the cached value \n }\n });\n }\n static generateIndex(s) {\n return (typeof Buffer !== \"undefined\") ? (Buffer.from(s, \"ascii\").toString(\"base64\")) : (btoa(s));\n }\n getGlobalUser(...args) {\n const username = [args].join(\"|\");\n const __index__ = \"userToken_\" + SessionUserToken.generateIndex(username);\n if (typeof global.get(__index__) === \"undefined\" || global.get(__index__) === null) {\n global.set(__index__, (0, qcobjects_1.New)(SessionUserToken, {\n username\n }));\n }\n SessionUserToken.user = global.get(__index__).user;\n return global.get(__index__).user;\n }\n getGlobalUserToken(...args) {\n return this.getGlobalUser(args).token;\n }\n getGlobalUserId(...args) {\n return this.getGlobalUser(args).id;\n }\n getGlobalUserPriority(...args) {\n return this.getGlobalUser(args).priority;\n }\n getLoginCredentialsToken(username, password) {\n return qcobjects_1._Crypt.encrypt(`${username}${password}`, this.getGlobalUserToken(username));\n }\n closeGlobalSession(...args) {\n this.getGlobalUser(args);\n const username = [args].join(\"|\");\n const __index__ = \"userToken_\" + SessionUserToken.generateIndex(username);\n if (typeof global.get(__index__) !== \"undefined\") {\n global.get(__index__).__cache__.clear();\n global.set(__index__, null);\n SessionUserToken.user = {};\n }\n }\n }\n SessionUserToken.user = {};\n (0, qcobjects_1.Package)(\"org.qcobjects.cloud.auth.session.usertoken\", [\n SessionUserToken\n ]);\n})(_top);\nconst SessionUserToken = _top.SessionUserToken;\nexports.SessionUserToken = SessionUserToken;\n", "\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nconst qcobjects_1 = require(\"qcobjects\");\nconst org_qcobjects_cloud_auth_session_usertoken_1 = require(\"./org.qcobjects.cloud.auth.session.usertoken\");\n/**\n * QCObjects SDK 2.4\n * ________________\n *\n * Author: Jean Machuca <correojean@gmail.com>\n *\n * Cross Browser Javascript Framework for MVC Patterns\n * QuickCorp/QCObjects is licensed under the\n * GNU Lesser General Public License v3.0\n * [LICENSE] (https://github.com/QuickCorp/QCObjects/blob/master/LICENSE.txt)\n *\n * Permissions of this copyleft license are conditioned on making available\n * complete source code of licensed works and modifications under the same\n * license or the GNU GPLv3. Copyright and license notices must be preserved.\n * Contributors provide an express grant of patent rights. However, a larger\n * work using the licensed work through interfaces provided by the licensed\n * work may be distributed under different terms and without source code for\n * the larger work.\n *\n * Copyright (C) 2015 Jean Machuca,<correojean@gmail.com>\n *\n * Everyone is permitted to copy and distribute verbatim copies of this\n * license document, but changing it is not allowed.\n */\n(function () {\n \"use strict\";\n (0, qcobjects_1.Package)(\"org.qcobjects.cloud.auth.session.data\", [\n class SessionData extends qcobjects_1.InheritClass {\n constructor() {\n super(...arguments);\n this.__session_container__ = null;\n }\n /**\n * Sets the session container\n *\n * @param {*} sessionContainer1, sessionContainer2, ...\n *\n */\n setSessionContainer() {\n // eslint-disable-next-line prefer-rest-params\n this.__session_container__ = [...arguments];\n }\n /**\n * Gets the session container\n *\n * @return {*} sessionContainer\n */\n getSessionContainer() {\n if (typeof this.__session_container__ === \"undefined\" || this.__session_container__ === null) {\n throw new Error(\"You need to set a session container first: sessionData.setSessionContainer(...arguments)\");\n }\n return this.__session_container__;\n }\n /**\n * Gets the session data\n *\n * @return {*} sessionData\n */\n getSessionData(...args) {\n // eslint-disable-next-line prefer-rest-params\n const s = sessionStorage.getItem(`${this.index(args)}`);\n let sessionData;\n if (s !== null) {\n sessionData = JSON.parse(s);\n }\n if (typeof sessionData === \"undefined\" || sessionData === null) {\n sessionData = {};\n }\n return sessionData;\n }\n /**\n * Returns an index of the session\n *\n * @param {string} valueForIndex\n * @return {string} index\n * @example sessionInstance.index(\"me@email.com\", \"myusername\")\n *\n */\n index(...args) {\n if (typeof org_qcobjects_cloud_auth_session_usertoken_1.SessionUserToken === \"undefined\") {\n throw new Error(\"You need to import SessionUserToken first: Import (\\\"org.qcobjects.cloud.auth.session.usertoken\\\")\");\n }\n return `session_${btoa(org_qcobjects_cloud_auth_session_usertoken_1.SessionUserToken.getGlobalUserToken(args))}`;\n }\n /**\n * Saves the session instance\n *\n */\n save(...args) {\n const s = (0, qcobjects_1._DataStringify)(this.sessionData);\n sessionStorage.setItem(`${this.index(args)}`, s);\n }\n /**\n *\n * Gets the session value\n *\n * @param {*} name\n * @param {*} defaultValue\n * @return {*}\n */\n get(name, defaultValue) {\n const sessionData = this.getSessionData(this.getSessionContainer());\n return (typeof sessionData[name] !== \"undefined\") ? (sessionData[name]) : (defaultValue);\n }\n /**\n *\n * Sets the session value\n *\n * @param {*} name\n * @param {*} value\n */\n set(name, value) {\n const sessionContainer = this.getSessionContainer();\n const sessionData = this.getSessionData(sessionContainer);\n this.sessionData = sessionData;\n this.sessionData[name] = value;\n this.save(sessionContainer);\n }\n }\n ]);\n})();\n", "\"use strict\";\n/* eslint-disable @typescript-eslint/no-empty-function */\n/**\n * QCObjects SDK 2.4\n * ________________\n *\n * Author: Jean Machuca <correojean@gmail.com>\n *\n * Cross Browser Javascript Framework for MVC Patterns\n * QuickCorp/QCObjects is licensed under the\n * GNU Lesser General Public License v3.0\n * [LICENSE] (https://github.com/QuickCorp/QCObjects/blob/master/LICENSE.txt)\n *\n * Permissions of this copyleft license are conditioned on making available\n * complete source code of licensed works and modifications under the same\n * license or the GNU GPLv3. Copyright and license notices must be preserved.\n * Contributors provide an express grant of patent rights. However, a larger\n * work using the licensed work through interfaces provided by the licensed\n * work may be distributed under different terms and without source code for\n * the larger work.\n *\n * Copyright (C) 2015 Jean Machuca,<correojean@gmail.com>\n *\n * Everyone is permitted to copy and distribute verbatim copies of this\n * license document, but changing it is not allowed.\n */\nObject.defineProperty(exports, \"__esModule\", { value: true });\nconst qcobjects_1 = require(\"qcobjects\");\nconst _top = (typeof module === \"object\" && typeof module.exports === \"object\") ? (module.exports = (typeof globalThis !== \"undefined\"\n ? globalThis\n : typeof self !== \"undefined\"\n ? self\n : typeof window !== \"undefined\"\n ? window\n : typeof global !== \"undefined\"\n ? global\n : {})) : ((typeof global === \"object\") ? (global) : ((typeof window === \"object\") ? (window) : ({})));\n// eslint-disable-next-line camelcase\n(function __qcobjects_sdk__(_top) {\n \"use strict\";\n if (typeof Object.defineProperty !== \"undefined\" && typeof _top !== \"undefined\") {\n try {\n Object.defineProperty(_top, \"__qcobjects_sdk__\", {\n enumerable: true,\n configurable: false,\n writable: false,\n // eslint-disable-next-line camelcase\n value: __qcobjects_sdk__,\n });\n }\n catch (e) {\n if (typeof _top.__qcobjects_sdk__ !== \"undefined\") {\n _top.__qcobjects_sdk__.__loaded__ = true;\n }\n }\n }\n if (typeof _top.__qcobjects_sdk__.__loaded__ === \"undefined\") {\n _top.__qcobjects_sdk__.__loaded__ = true;\n if (typeof _top === \"undefined\") {\n throw Error(\"Top context empty: It should either global, module or window\");\n }\n const __start__ = qcobjects_1.GlobalSettings.__start__.bind(_top);\n let _imports_ = [];\n // non-browsers environment // esbuild compatible\n _imports_ = [\n new Promise((resolve) => {\n require(\"./js/org.qcobjects.i18n_messages\");\n require(\"./js/org.qcobjects.models\");\n require(\"./js/org.qcobjects.components\");\n require(\"./js/org.qcobjects.components.grid\");\n require(\"./js/org.qcobjects.components.list\");\n require(\"./js/org.qcobjects.components.slider\");\n require(\"./js/org.qcobjects.components.notifications\");\n require(\"./js/org.qcobjects.components.splashscreen\");\n require(\"./js/org.qcobjects.controllers\");\n require(\"./js/org.qcobjects.controllers.grid\");\n require(\"./js/org.qcobjects.controllers.list\");\n require(\"./js/org.qcobjects.controllers.slider\");\n require(\"./js/org.qcobjects.controllers.form\");\n require(\"./js/org.qcobjects.controllers.swagger\");\n require(\"./js/org.qcobjects.effects\");\n require(\"./js/org.qcobjects.modal.controllers\");\n require(\"./js/org.qcobjects.views\");\n require(\"./js/org.qcobjects.tools.canvas\");\n require(\"./js/org.qcobjects.tools.layouts\");\n require(\"./js/org.qcobjects.cloud.auth.session.usertoken\");\n require(\"./js/org.qcobjects.cloud.auth.session.data\");\n resolve();\n })\n ];\n _top._sdk_ = Promise.all(_imports_).then(() => {\n qcobjects_1.CONFIG.set(\"useSDK\", true);\n __start__();\n });\n }\n})(_top);\nexports.default = _top;\n"],
5
+ "mappings": "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",
6
+ "names": ["require_QCObjects_SDK", "__commonJSMin", "exports", "module", "__name", "__qcobjects_sdk__", "_top", "global", "isBrowser", "isNodeCommonJS", "remoteImportsPath", "relativeImportPath", "external", "elementName", "_ret_", "_imports_", "_relative_path_", "__start__", "require_src", "__commonJSMin", "exports", "module", "sdk", "require_QCObjects", "__commonJSMin", "exports", "module", "__name", "__qcobjects__", "_top", "Ready", "e", "isBrowser", "_QC_READY_LISTENERS", "global", "isDeno", "isNodeCommonJS", "deno_require", "_require_", "__require", "_protected_code_", "_", "__oldtoString", "_protected_symbols", "_ret_", "_methods_", "_m", "i", "regex", "matches", "match", "_DOMCreateElement", "elementName", "fs", "_DataStringify", "data", "getCircularReplacer", "seen", "_level", "key", "value", "_LegacyCopy", "_subelements", "selector", "_domain_", "_basePath_", "_tag_filter_", "_basePath", "baseURI", "process", "_f", "_p", "response", "message", "_secretKey", "__secretKey", "is_phonegap", "asyncLoad", "callback", "args", "asyncCallback", "_fireAsyncLoad", "fc", "Logger", "color", "logger", "Base64", "t", "n", "r", "s", "o", "u", "a", "f", "c1", "c2", "c3", "waitUntil", "func", "exp", "_waitUntil", "maxWaitCycles", "_w", "_t", "localStorage", "name", "ComplexStorageCache", "params", "object", "load", "alternate", "cachedObjectID", "cachedResponse", "cachedNewResponse", "alternateResponse", "retrievedObject", "k", "c", "supportsPassive", "opts", "captureFalse", "tag", "_oo", "_tags", "_tt", "_Cast", "__instanceID", "_Object_Create", "hasOwn", "O", "QCObjects", "obj", "Properties", "prop", "target", "varArgs", "to", "index", "nextSource", "nextKey", "__is_raw_class__", "o_c", "_value_", "_QC_CLASSES", "_QC_PACKAGES", "_QC_PACKAGES_IMPORTED", "ObjectName", "ret", "obj_source", "obj_dest", "v", "_CastProps", "__is__forbidden_name__", "__getType__", "is_a", "typeName", "isQCObjects_Class", "isQCObjects_Object", "__make_global__", "__register_class__", "_class_", "__namespace", "RegisterClass", "Class", "_types_", "type", "definition", "_o_", "__publicField", "self", "m", "__class__", "__classType", "__hierarchy__proto__", "__hierarchy", "_css", "__instance__", "child", "tags", "j", "ClassFactory", "className", "_classFactory", "packageName", "_className", "_package", "Package", "packageClasses", "classFactory", "content", "_self", "_appendVDOM", "doc", "element", "_super_", "classMethodName", "New", "Export", "findPackageNodePath", "packagename", "sdkPath", "sdkPaths", "p", "string", "result", "char", "keychar", "crypt", "_CryptObject", "_DecryptObject", "shortCode", "length", "code1", "code2", "o1", "uniqueId", "_Processor", "_proc_", "component", "processorName", "processorHandler", "template", "funcName", "procesorMatch", "match0", "_k", "Processor", "arg", "_ConfigSettings", "_config_settings", "ConfigSettings", "_conf", "config", "_protectedEnc", "_protectedConf", "_default", "_value", "namespace", "classes", "_c1", "NamespaceRef", "b", "Import", "ready", "external", "_promise_import_", "resolve", "reject", "allPackagesImported", "cp", "readyImported", "_imported_", "s1", "standardNodePath", "packageAbsoluteName", "jsNodePath", "_o", "effectArguments", "effectClass", "Tag", "tagname", "innerHTML", "addedKeys", "_i", "_Ready", "_execReady", "_ready_listener_", "_r", "DDO", "instance", "fget", "fset", "ddoInstance", "val", "is_ddo", "DefaultTemplateHandler", "templateInstance", "parsedAssignmentText", "__routing_params__", "routing", "routingPath", "standardRoutingPath", "__valid_routings__", "routings", "__valid_routing_way__", "validRoutingWays", "routingWay", "_buildComponentFromElement_", "__parent__", "__shadowed_not_set", "__tplsource_attr_not_set", "shadowed", "__cached_not_set", "cached", "tplextension", "_componentName", "_componentClassName", "__componentClassName", "__classDefinition", "__tplsource_prop_set", "tplsource", "componentURI", "ComponentURI", "__create_component_instance_", "__shadowed", "__definition", "newComponent", "_buildComponentsFromElements_", "elements", "componentsBuiltWith", "templateURI", "url", "method", "reload", "_body", "__promise__", "__shadowRoot", "body", "shadowRoot", "splashScreenComponent", "controller", "view", "serviceResponse", "standardResponse", "__routing_path__", "accumulator", "colData", "__serviceClass", "_serviceClassName", "__enable_service_class__", "_response_to_data_", "_response_to_template_", "serviceInstance", "serviceLoader", "request", "service", "rejectedResponse", "_component_", "_Controller", "controllerName", "effectClassName", "applyEffectTo", "viewName", "_View", "componentDone", "tagFilter", "elementList", "rebuildObjects", "error", "_feedComponent_InBrowser", "container", "tmp_shadowContainer", "shadowContainer", "qs", "_feedComponent_InNode", "_component", "_promise", "componentLoader", "oClass", "componentClass", "_route_promise_", "isValidInstance", "__route__", "componentList", "_componentNames_", "_promises_", "rc", "_promise_", "_rc_", "err", "elem", "componentBody", "routingNode", "attributeNames", "attributeName", "_parsedAssignmentText", "templateHandlerName", "templateHandlerClass", "selfData", "_componentRoot", "_imgLazyLoaded", "_lazyLoadImages", "image", "observer", "items", "item", "img", "_Effect", "_applyEffect_", "lang1", "lang2", "i18n", "callback_i18n", "messages", "_innerHTML", "componentHelper", "__component_helpers__", "_component_helper_", "__c__", "popStateEvent", "dependencies", "attrName", "subelementSelector", "handler", "param", "_async", "_componentLoaderInBrowser", "_feedComponent_", "xhr", "_componentLoaded", "successStatus", "is_file", "cache", "text", "_directLoad", "cacheController", "_componentLoaderInNode", "responseText", "_serviceLoaderInBrowser", "xhrasync", "header", "_serviceLoaderInNode", "URL", "serviceURL", "req", "captureEvents", "dataXML", "client", "buffer", "responseHeaders", "flags", "chunk", "requestOptions", "http2", "http", "https", "_req_", "_serviceLoaderMockup", "_serviceLoaderLocal", "d", "_ComponentWidget_", "componentWidget", "componentName", "__enabled__atributes__", "data_attributenames", "_attribute_name_", "RegisterWidget", "widgetName", "RegisterWidgets", "widgetList", "domain", "basePath", "stream", "microservice", "requestMethod", "supportedMethods", "allow_origins", "allow_credentials", "allow_methods", "allow_headers", "formData", "context", "properties", "__to_number", "prev", "current", "propName", "sortAsc", "sort_function", "_length", "_fillValue", "x_func", "x", "y_func", "y", "start", "stop", "step", "__instance", "h", "w", "square", "source", "_index", "_pname", "timing", "draw", "duration", "animate", "time", "timeFraction", "progress", "alphaFrom", "alphaTo", "angleFrom", "angleTo", "radiusFrom", "radiusTo", "scaleFrom", "scaleTo", "_transition_", "componentRoot", "eff", "__effectClass__", "effectObj", "effectClassMethod", "intervalInterceptor", "timer", "thread", "elapsed", "positive", "negative", "toggle", "mapper", "componentInstance", "valueName", "globalValue", "componentValue", "dataValue", "list", "listItems", "dataItems", "layout", "layoutname", "cssfile", "layout_portrait", "layout_landscape", "layout_code", "k1", "k2", "quick_component", "repeat", "GlobalSettings", "__load__serviceWorker", "registration", "_buildComponents", "_get_packages_names", "_packages", "_keys", "_classesList", "_packageClass", "_package_element", "_class_element", "remoteImportsPath", "tryImportingSDK", "sdkName", "sdk", "lastKnownScrollPosition", "ticking", "scrollHeight", "scrollWidth", "scrollDispatcher", "event", "percentY", "percentX", "scrollPercentEventEvent", "secondaryEventName", "__valid_scrolls__", "pY", "secondaryCustomEvent", "__freeze__", "require_src", "__commonJSMin", "exports", "module", "QCObjects", "require_org_qcobjects_i18n_messages", "__commonJSMin", "exports", "module", "qcobjects_1", "global", "i18n_messages", "messages", "i18n_packagename", "__name", "require_org_qcobjects_models", "__commonJSMin", "exports", "qcobjects_1", "__name", "require_org_qcobjects_effects", "__commonJSMin", "exports", "module", "qcobjects_1", "_top", "Fade", "element", "alphaFrom", "alphaTo", "da", "timeFraction", "progress", "alpha", "__name", "Move", "xfrom", "yfrom", "xto", "yto", "dx", "dy", "y", "x", "MoveXInFromRight", "MoveXInFromLeft", "MoveYInFromBottom", "MoveYInFromTop", "RotateX", "angleFrom", "angleTo", "angle", "RotateY", "RotateZ", "Rotate", "Radius", "radiusFrom", "radiusTo", "dr", "radius", "Resize", "scaleFrom", "scaleTo", "ds", "scale", "WipeLeft", "WipeRight", "WipeUp", "WipeDown", "ModalFade", "ModalMoveDown", "ModalMoveUp", "require_org_qcobjects_components", "__commonJSMin", "exports", "module", "qcobjects_1", "org_qcobjects_effects_1", "_top", "global", "FormField", "o", "_objList", "_datak", "_obj", "_datamodel", "standardResponse", "_ret_", "__name", "ShadowedComponent", "ButtonField", "InputField", "TextField", "EmailField", "ModalEnclosureComponent", "ModalComponent", "submodal", "modalId", "modal", "modalcontent", "closebtn", "SwaggerUIComponent", "require_org_qcobjects_components_grid", "__commonJSMin", "exports", "module", "qcobjects_1", "_top", "global", "GridItemComponent", "__name", "GridComponent", "o", "subcomponentClass", "require_org_qcobjects_components_list", "__commonJSMin", "exports", "module", "qcobjects_1", "_top", "global", "ListItemComponent", "o", "__name", "ListComponent", "require_org_qcobjects_components_slider", "__commonJSMin", "exports", "qcobjects_1", "__name", "o", "subcomponentClass", "require_org_qcobjects_components_notifications", "__commonJSMin", "exports", "qcobjects_1", "org_qcobjects_effects_1", "NotificationComponent", "o", "element", "_display_", "__name", "appearEffect", "disappearEffect", "message", "c", "_componentRoot", "require_org_qcobjects_components_splashscreen", "__commonJSMin", "exports", "module", "qcobjects_1", "org_qcobjects_effects_1", "_top", "__name", "global", "SplashScreenComponent", "component", "isBrowser", "isStartURL", "_enabled_", "duration", "_helper_", "_componentRoot", "c", "mainComponent", "SplashScreenHandler", "mainElement", "slotlogo", "VideoSplashScreenComponent", "o", "CubeSplashScreenComponent", "require_org_qcobjects_controllers", "__commonJSMin", "exports", "qcobjects_1", "__name", "require_org_qcobjects_controllers_grid", "__commonJSMin", "exports", "qcobjects_1", "__name", "controller", "component", "_componentRoot", "s", "templateRows", "templateCols", "className", "page", "totalPage", "totalElements", "subcomponentClass", "offset", "limit", "pagesNumber", "list", "paginateIn", "record", "dataIndex", "_body", "subcomponent", "componentInstance", "serviceClass", "serverDataCount", "successfulResponse", "failedResponse", "e", "require_org_qcobjects_controllers_list", "__commonJSMin", "exports", "qcobjects_1", "__name", "component", "dependencies", "valueField", "labelField", "page", "totalPage", "totalElements", "layout", "basePath", "cssLayout", "subcomponentClass", "offset", "limit", "pagesNumber", "list", "paginateIn", "record", "dataIndex", "_body", "subcomponent", "ul", "_componentRoot", "s", "templateRows", "templateCols", "className", "componentInstance", "serviceClass", "serverDataCount", "successfulResponse", "failedResponse", "e", "require_org_qcobjects_controllers_slider", "__commonJSMin", "exports", "module", "qcobjects_1", "global", "__name", "component", "dependencies", "duration", "slideIndex", "interval", "sliderHandlerName", "n", "slides", "dots", "slide", "index", "dot", "e", "dotHTML", "dotContent", "require_org_qcobjects_controllers_form", "__commonJSMin", "exports", "qcobjects_1", "org_qcobjects_components_1", "__name", "fieldName", "dataValue", "element", "_regex", "_pattern_", "_hasValidation", "_isInvalid", "_execValidation", "successfulResponse", "failedResponse", "_componentRoot_", "fieldsToValidate", "f", "_labelledby", "parentElement", "e", "_e", "_ariatitle", "invalidFields", "validationMessage", "o", "modalBody", "require_org_qcobjects_controllers_swagger", "__commonJSMin", "exports", "qcobjects_1", "__name", "ui", "swaggerUIPackagePath", "require_org_qcobjects_modal_controllers", "__commonJSMin", "exports", "qcobjects_1", "__name", "component", "require_org_qcobjects_views", "__commonJSMin", "exports", "qcobjects_1", "__name", "require_org_qcobjects_tools_canvas", "__commonJSMin", "exports", "qcobjects_1", "__name", "img", "canvas", "zoom", "px", "py", "scale", "x", "y", "width", "height", "resizedImage", "require_org_qcobjects_tools_layouts", "__commonJSMin", "exports", "qcobjects_1", "org_qcobjects_effects_1", "__name", "component", "dependencies", "element", "require_org_qcobjects_cloud_auth_session_usertoken", "__commonJSMin", "exports", "module", "qcobjects_1", "_top", "global", "SessionUserToken", "o", "__instance__", "__token__", "cacheController", "s", "args", "username", "__index__", "password", "__name", "require_org_qcobjects_cloud_auth_session_data", "__commonJSMin", "exports", "qcobjects_1", "org_qcobjects_cloud_auth_session_usertoken_1", "__name", "args", "s", "sessionData", "name", "defaultValue", "value", "sessionContainer", "require_QCObjects_SDK", "__commonJSMin", "exports", "module", "qcobjects_1", "_top", "__name", "__qcobjects_sdk__", "__start__", "_imports_", "resolve"]
7
+ }