Web App basic code
This commit is contained in:
1 parent
0ff2809f0d
commit
ecc7b7d7b6
5 files changed
+91
-397
No files matched your search
+13
-71
@@ -1,58 +1,22 @@
|
||||
let postLoader
|
||||
|
||||
function newAppLoader() {
|
||||
const MODULE_NAME = 'App Loader'
|
||||
const INFO_LOG = false
|
||||
const ERROR_LOG = true
|
||||
const logger = newWebDebugLog()
|
||||
|
||||
|
||||
let thisObject = {
|
||||
loadModules: loadModules
|
||||
}
|
||||
|
||||
let postLoader
|
||||
return thisObject
|
||||
|
||||
async function loadModules() {
|
||||
try {
|
||||
if (INFO_LOG === true) { logger.write('[INFO] loadModules -> Entering function.') }
|
||||
|
||||
let plotters
|
||||
let modulesArray = []
|
||||
|
||||
plotters = defaultPlotters()
|
||||
|
||||
modulesArray = modulesArray.concat([
|
||||
|
||||
'Globals.js',
|
||||
'Workspace.js',
|
||||
|
||||
'Files/SingleFile.js',
|
||||
'Files/FileCloud.js',
|
||||
'Files/MarketFiles.js',
|
||||
'Files/DailyFiles.js',
|
||||
'Files/FileCursor.js',
|
||||
'Files/FileSequence.js',
|
||||
'Files/FileStorage.js',
|
||||
|
||||
'EventsServerClient.js',
|
||||
|
||||
'LegacyPlotter.js',
|
||||
'PlotterPanel.js',
|
||||
|
||||
'VideoRecorder.js',
|
||||
'ProductStorage.js',
|
||||
'Canvas.js',
|
||||
'EventHandler.js',
|
||||
'Frame.js',
|
||||
'Animation.js',
|
||||
'Container.js',
|
||||
'Utilities.js',
|
||||
'AppPostLoader.js'
|
||||
'WebApp.js'
|
||||
])
|
||||
|
||||
modulesArray = modulesArray.concat(plotters)
|
||||
|
||||
functionLibraries()
|
||||
|
||||
function functionLibraries() {
|
||||
@@ -64,16 +28,16 @@ function newAppLoader() {
|
||||
let fileArray = JSON.parse(fileList)
|
||||
for (let i = 0; i < fileArray.length; i++) {
|
||||
let item = fileArray[i]
|
||||
|
||||
|
||||
project = item[0]
|
||||
fileName = item[1]
|
||||
urlArray.push('Projects' + '/' + project + '/' + 'UI' + '/' + 'Function-Libraries' + '/' + fileName)
|
||||
urlArray.push('Projects' + '/' + project + '/' + 'UI' + '/' + 'Function-Libraries' + '/' + fileName)
|
||||
}
|
||||
|
||||
modulesArray = modulesArray.concat(urlArray)
|
||||
utilities()
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
function utilities() {
|
||||
let url = 'ListUtilitiesFiles'
|
||||
@@ -84,16 +48,16 @@ function newAppLoader() {
|
||||
let fileArray = JSON.parse(fileList)
|
||||
for (let i = 0; i < fileArray.length; i++) {
|
||||
let item = fileArray[i]
|
||||
|
||||
|
||||
project = item[0]
|
||||
fileName = item[1]
|
||||
urlArray.push('Projects' + '/' + project + '/' + 'UI' + '/' + 'Utilities' + '/' + fileName)
|
||||
urlArray.push('Projects' + '/' + project + '/' + 'UI' + '/' + 'Utilities' + '/' + fileName)
|
||||
}
|
||||
|
||||
modulesArray = modulesArray.concat(urlArray)
|
||||
globals()
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
function globals() {
|
||||
let url = 'ListGlobalFiles'
|
||||
@@ -104,16 +68,16 @@ function newAppLoader() {
|
||||
let fileArray = JSON.parse(fileList)
|
||||
for (let i = 0; i < fileArray.length; i++) {
|
||||
let item = fileArray[i]
|
||||
|
||||
|
||||
project = item[0]
|
||||
fileName = item[1]
|
||||
urlArray.push('Projects' + '/' + project + '/' + 'UI' + '/' + 'Globals' + '/' + fileName)
|
||||
urlArray.push('Projects' + '/' + project + '/' + 'UI' + '/' + 'Globals' + '/' + fileName)
|
||||
}
|
||||
|
||||
modulesArray = modulesArray.concat(urlArray)
|
||||
spaces()
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
function spaces() {
|
||||
let url = 'ListSpaceFiles'
|
||||
@@ -141,22 +105,12 @@ function newAppLoader() {
|
||||
|
||||
REQUIREJS([path], onRequired)
|
||||
|
||||
if (INFO_LOG === true) { logger.write('[INFO] loadModules -> Module Requested.') }
|
||||
if (INFO_LOG === true) { logger.write('[INFO] loadModules -> path = ' + path) }
|
||||
if (INFO_LOG === true) { logger.write('[INFO] loadModules -> total requested = ' + (i + 1)) }
|
||||
|
||||
function onRequired(pModule) {
|
||||
try {
|
||||
if (INFO_LOG === true) { logger.write('[INFO] loadModules -> onRequired -> Entering function.') }
|
||||
if (INFO_LOG === true) { logger.write('[INFO] loadModules -> onRequired -> Module Downloaded.') }
|
||||
if (INFO_LOG === true) { logger.write('[INFO] loadModules -> onRequired -> path = ' + path) }
|
||||
|
||||
downloadedCounter++
|
||||
|
||||
if (INFO_LOG === true) { logger.write('[INFO] loadModules -> onRequired -> downloadedCounter = ' + downloadedCounter) }
|
||||
|
||||
if (downloadedCounter === modulesArray.length) {
|
||||
if (INFO_LOG === true) { logger.write('[INFO] loadModules -> onRequired -> Starting Advanced Algos Platform.') }
|
||||
setTimeout(() => {
|
||||
postLoader = newAppPostLoader()
|
||||
postLoader.start()
|
||||
@@ -164,27 +118,15 @@ function newAppLoader() {
|
||||
|
||||
}
|
||||
} catch (err) {
|
||||
if (ERROR_LOG === true) { logger.write('[ERROR] loadModules -> onRequired -> err = ' + err.stack) }
|
||||
console.log('[ERROR] loadModules -> onRequired -> err = ' + err.stack)
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
} catch (err) {
|
||||
if (ERROR_LOG === true) { logger.write('[ERROR] loadModules -> err = ' + err.stack) }
|
||||
console.log('[ERROR] loadModules -> err = ' + err.stack)
|
||||
}
|
||||
}
|
||||
|
||||
function defaultPlotters() {
|
||||
return [
|
||||
'Plotters/Foundations/Candles/Plotters-Candles-Volumes/Candles.js',
|
||||
'Plotters/Foundations/Candles/Plotters-Candles-Volumes/CandlePanel.js',
|
||||
'Plotters/Foundations/Candles/Plotters-Candles-Volumes/Volumes.js',
|
||||
'Plotters/Foundations/Candles/Plotters-Candles-Volumes/VolumePanel.js',
|
||||
'Plotters/Foundations/Bollinger/Plotters-Bollinger-Bands/BollingerBands.js',
|
||||
'Plotters/Foundations/Bollinger/Plotters-Bollinger-Bands/BollingerBandsPanel.js',
|
||||
'Plotters/Foundations/Bollinger/Plotters-Bollinger-Bands/PercentageBandwidth.js'
|
||||
]
|
||||
}
|
||||
}
|
||||
|
||||
+3
-217
@@ -1,232 +1,18 @@
|
||||
|
||||
|
||||
function newAppPostLoader() {
|
||||
const MODULE_NAME = 'Post Loader'
|
||||
const ERROR_LOG = true
|
||||
const logger = newWebDebugLog()
|
||||
|
||||
|
||||
let thisObject = {
|
||||
start: start
|
||||
}
|
||||
|
||||
return thisObject
|
||||
|
||||
function start() {
|
||||
try {
|
||||
|
||||
// autoSaveWhenClosingTheBrowser()
|
||||
setupProjectsSchema()
|
||||
|
||||
function setupProjectsSchema() {
|
||||
httpRequest(undefined, 'ProjectsSchema', onResponse)
|
||||
|
||||
function onResponse(err, file) {
|
||||
PROJECTS_SCHEMA = JSON.parse(file)
|
||||
setupSchemas()
|
||||
}
|
||||
}
|
||||
|
||||
function setupSchemas() {
|
||||
|
||||
let totalWebServerCalls = 0
|
||||
let webServerResponses = 0
|
||||
|
||||
for (let i = 0; i < PROJECTS_SCHEMA.length; i++) {
|
||||
let project = PROJECTS_SCHEMA[i].name
|
||||
let schemas = {
|
||||
array: {
|
||||
appSchema: [],
|
||||
docsNodeSchema: [],
|
||||
docsConceptSchema: [],
|
||||
docsTopicSchema: [],
|
||||
docsTutorialSchema: [],
|
||||
docsReviewSchema: [],
|
||||
docsBookSchema: []
|
||||
},
|
||||
map: {
|
||||
appSchema: new Map(),
|
||||
docsNodeSchema: new Map(),
|
||||
docsConceptSchema: new Map(),
|
||||
docsTopicSchema: new Map(),
|
||||
docsTutorialSchema: new Map(),
|
||||
docsReviewSchema: new Map(),
|
||||
docsBookSchema: new Map()
|
||||
}
|
||||
}
|
||||
SCHEMAS_BY_PROJECT.set(project, schemas)
|
||||
|
||||
totalWebServerCalls++
|
||||
httpRequest(undefined, 'Schema/' + project + '/AppSchema', onResponseAppSchema)
|
||||
|
||||
function onResponseAppSchema(err, schema) {
|
||||
try {
|
||||
schemas.array.appSchema = JSON.parse(schema)
|
||||
|
||||
for (let j = 0; j < schemas.array.appSchema.length; j++) {
|
||||
let schemaDocument = schemas.array.appSchema[j]
|
||||
let key = schemaDocument.type
|
||||
schemas.map.appSchema.set(key, schemaDocument)
|
||||
}
|
||||
} catch (err) {
|
||||
console.log(err.stack)
|
||||
}
|
||||
|
||||
webServerResponses++
|
||||
if (webServerResponses === totalWebServerCalls) { startCanvas() }
|
||||
}
|
||||
|
||||
totalWebServerCalls++
|
||||
httpRequest(undefined, 'Schema/' + project + '/DocsNodeSchema', onResponseDocSchema)
|
||||
|
||||
function onResponseDocSchema(err, schema) {
|
||||
try {
|
||||
schemas.array.docsNodeSchema = JSON.parse(schema)
|
||||
|
||||
for (let j = 0; j < schemas.array.docsNodeSchema.length; j++) {
|
||||
let schemaDocument = schemas.array.docsNodeSchema[j]
|
||||
let key = schemaDocument.type
|
||||
schemas.map.docsNodeSchema.set(key, schemaDocument)
|
||||
}
|
||||
} catch (err) {
|
||||
console.log(err.stack)
|
||||
}
|
||||
|
||||
webServerResponses++
|
||||
if (webServerResponses === totalWebServerCalls) { startCanvas() }
|
||||
}
|
||||
|
||||
totalWebServerCalls++
|
||||
httpRequest(undefined, 'Schema/' + project + '/DocsConceptSchema', onResponseConceptSchema)
|
||||
|
||||
function onResponseConceptSchema(err, schema) {
|
||||
try {
|
||||
schemas.array.docsConceptSchema = JSON.parse(schema)
|
||||
|
||||
for (let j = 0; j < schemas.array.docsConceptSchema.length; j++) {
|
||||
let schemaDocument = schemas.array.docsConceptSchema[j]
|
||||
let key = schemaDocument.type
|
||||
schemas.map.docsConceptSchema.set(key, schemaDocument)
|
||||
}
|
||||
} catch (err) {
|
||||
console.log(err.stack)
|
||||
}
|
||||
|
||||
webServerResponses++
|
||||
if (webServerResponses === totalWebServerCalls) { startCanvas() }
|
||||
}
|
||||
|
||||
totalWebServerCalls++
|
||||
httpRequest(undefined, 'Schema/' + project + '/DocsTopicSchema', onResponseTopicSchema)
|
||||
|
||||
function onResponseTopicSchema(err, schema) {
|
||||
try {
|
||||
schemas.array.docsTopicSchema = JSON.parse(schema)
|
||||
|
||||
for (let j = 0; j < schemas.array.docsTopicSchema.length; j++) {
|
||||
let schemaDocument = schemas.array.docsTopicSchema[j]
|
||||
let key = schemaDocument.type
|
||||
schemas.map.docsTopicSchema.set(key, schemaDocument)
|
||||
}
|
||||
} catch (err) {
|
||||
console.log(err.stack)
|
||||
}
|
||||
|
||||
webServerResponses++
|
||||
if (webServerResponses === totalWebServerCalls) { startCanvas() }
|
||||
}
|
||||
|
||||
totalWebServerCalls++
|
||||
httpRequest(undefined, 'Schema/' + project + '/DocsTutorialSchema', onResponseTutorialSchema)
|
||||
|
||||
function onResponseTutorialSchema(err, schema) {
|
||||
try {
|
||||
schemas.array.docsTutorialSchema = JSON.parse(schema)
|
||||
|
||||
for (let j = 0; j < schemas.array.docsTutorialSchema.length; j++) {
|
||||
let schemaDocument = schemas.array.docsTutorialSchema[j]
|
||||
let key = schemaDocument.type
|
||||
schemas.map.docsTutorialSchema.set(key, schemaDocument)
|
||||
}
|
||||
} catch (err) {
|
||||
console.log(err.stack)
|
||||
}
|
||||
|
||||
webServerResponses++
|
||||
if (webServerResponses === totalWebServerCalls) { startCanvas() }
|
||||
}
|
||||
|
||||
totalWebServerCalls++
|
||||
httpRequest(undefined, 'Schema/' + project + '/DocsReviewSchema', onResponseReviewSchema)
|
||||
|
||||
function onResponseReviewSchema(err, schema) {
|
||||
try {
|
||||
schemas.array.docsReviewSchema = JSON.parse(schema)
|
||||
|
||||
for (let j = 0; j < schemas.array.docsReviewSchema.length; j++) {
|
||||
let schemaDocument = schemas.array.docsReviewSchema[j]
|
||||
let key = schemaDocument.type
|
||||
schemas.map.docsReviewSchema.set(key, schemaDocument)
|
||||
}
|
||||
} catch (err) {
|
||||
console.log(err.stack)
|
||||
}
|
||||
|
||||
webServerResponses++
|
||||
if (webServerResponses === totalWebServerCalls) { startCanvas() }
|
||||
}
|
||||
|
||||
totalWebServerCalls++
|
||||
httpRequest(undefined, 'Schema/' + project + '/DocsBookSchema', onResponseBookSchema)
|
||||
|
||||
function onResponseBookSchema(err, schema) {
|
||||
try {
|
||||
schemas.array.docsBookSchema = JSON.parse(schema)
|
||||
|
||||
for (let j = 0; j < schemas.array.docsBookSchema.length; j++) {
|
||||
let schemaDocument = schemas.array.docsBookSchema[j]
|
||||
let key = schemaDocument.type
|
||||
schemas.map.docsBookSchema.set(key, schemaDocument)
|
||||
}
|
||||
} catch (err) {
|
||||
console.log(err.stack)
|
||||
}
|
||||
|
||||
webServerResponses++
|
||||
if (webServerResponses === totalWebServerCalls) { startCanvas() }
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
function startCanvas() {
|
||||
/* If this method is executed for a second time, it should finalize the current execution structure */
|
||||
if (canvas !== undefined) { canvas.finalize() }
|
||||
|
||||
canvas = newCanvas()
|
||||
canvas.initialize()
|
||||
}
|
||||
webApp = newWebApp()
|
||||
webApp.initialize()
|
||||
} catch (err) {
|
||||
if (ERROR_LOG === true) { logger.write('[ERROR] start -> err = ' + err.stack) }
|
||||
}
|
||||
}
|
||||
|
||||
function autoSaveWhenClosingTheBrowser() {
|
||||
window.onbeforeunload = saveWorkspace
|
||||
|
||||
/* handles backspace and refresh(F5) from keyboard */
|
||||
window.manageBackRefresh = function (event) {
|
||||
var tag = event.target.tagName.toLowerCase()
|
||||
if (event.keyCode === 8 && tag !== 'input' && tag !== 'textarea') { // Backbutton pressed
|
||||
saveWorkspace()
|
||||
} else if (event.keyCode === 116) { // F5 pressed
|
||||
saveWorkspace()
|
||||
}
|
||||
}
|
||||
|
||||
window.addEventListener('keydown', window.manageBackRefresh)
|
||||
|
||||
function saveWorkspace() {
|
||||
UI.projects.foundations.spaces.designSpace.workspace.save()
|
||||
console.log('[ERROR] err.stack = ' + err.stack)
|
||||
}
|
||||
}
|
||||
}
|
||||
+3
-109
@@ -1,55 +1,13 @@
|
||||
|
||||
/* Callbacks default responses. */
|
||||
|
||||
let GLOBAL = {}
|
||||
|
||||
GLOBAL.DEFAULT_OK_RESPONSE = {
|
||||
result: "Ok",
|
||||
message: "Operation Succeeded"
|
||||
}
|
||||
|
||||
GLOBAL.DEFAULT_FAIL_RESPONSE = {
|
||||
result: "Fail",
|
||||
message: "Operation Failed"
|
||||
}
|
||||
|
||||
GLOBAL.DEFAULT_RETRY_RESPONSE = {
|
||||
result: "Retry",
|
||||
message: "Retry Later"
|
||||
}
|
||||
|
||||
GLOBAL.CUSTOM_OK_RESPONSE = {
|
||||
result: "Ok, but check Message",
|
||||
message: "Custom Message"
|
||||
}
|
||||
|
||||
GLOBAL.CUSTOM_FAIL_RESPONSE = {
|
||||
result: "Fail Because",
|
||||
message: "Custom Message"
|
||||
}
|
||||
|
||||
let browserCanvas // This is the canvas object of the browser.
|
||||
|
||||
function spacePad(str, max) {
|
||||
str = str.toString()
|
||||
return str.length < max ? spacePad(" " + str, max) : str
|
||||
}
|
||||
|
||||
function loadSuperalgos() {
|
||||
|
||||
const MODULE_NAME = "App Pre-Loader"
|
||||
const INFO_LOG = false
|
||||
|
||||
let browser = checkBrowserVersion()
|
||||
setupHTMLTextArea()
|
||||
setupHTMLInput()
|
||||
setupHTMLCanvas()
|
||||
loadDebugModule()
|
||||
|
||||
if ((browser.name !== "Chrome" && browser.name!=="Safari") || (browser.name === "Chrome" && parseInt(browser.version) < 85) || (browser.name === "Safari" && parseInt(browser.version) < 13)) {
|
||||
alert("Superalgos is officially supported on Google Chrome 85 or Safari 13.1 and above. Your browser version has been detected as potentially beneath this. If you continue you may experience some functionaility issues.\n\nDetected Browser: " + browser.name + "\nVersion: " + browser.version)
|
||||
}
|
||||
|
||||
loadModules()
|
||||
|
||||
function checkBrowserVersion () {
|
||||
|
||||
let ua=navigator.userAgent,tem,M=ua.match(/(opera|chrome|safari|firefox|msie|trident(?=\/))\/?\s*(\d+)/i) || []
|
||||
@@ -69,75 +27,11 @@ function loadSuperalgos() {
|
||||
}
|
||||
}
|
||||
|
||||
function setupHTMLTextArea() {
|
||||
let textArea = document.createElement('textarea')
|
||||
textArea.id = "textArea"
|
||||
textArea.spellcheck = false
|
||||
textArea.style = 'resize: none;' +
|
||||
' border: none;' +
|
||||
' outline: none;' +
|
||||
'box-shadow: none;' +
|
||||
'overflow:hidden;' +
|
||||
'font-family: ' + 'Saira' + ';' +
|
||||
'font-size: 12px;' +
|
||||
'background-color: rgb(255, 255, 255);' +
|
||||
'color:rgb(255, 255, 255);' +
|
||||
'width: ' + 600 + 'px;' +
|
||||
'height: ' + 400 + 'px'
|
||||
|
||||
let textAreaDiv = document.getElementById('textAreaDiv')
|
||||
textAreaDiv.appendChild(textArea)
|
||||
textAreaDiv.style = 'position:fixed; top:' + -1500 + 'px; left:' + 500 + 'px; z-index:10; '
|
||||
}
|
||||
|
||||
function setupHTMLInput() {
|
||||
let input = document.createElement('input')
|
||||
input.id = "input"
|
||||
input.spellcheck = false
|
||||
input.style = "border: none; outline: none; box-shadow: none; overflow:hidden; width: 0px; height: 0px;"
|
||||
|
||||
let inputDiv = document.getElementById('inputDiv')
|
||||
inputDiv.appendChild(input)
|
||||
}
|
||||
|
||||
function setupHTMLCanvas() {
|
||||
let canvas = document.createElement('canvas')
|
||||
|
||||
canvas.id = "canvas"
|
||||
canvas.width = 1400
|
||||
canvas.height = 600
|
||||
canvas.style.border = "0"
|
||||
canvas.style = "position:absolute; top:0px; left:0px; z-index:1"
|
||||
|
||||
let canvasApp = document.getElementById('canvasApp')
|
||||
canvasApp.appendChild(canvas)
|
||||
|
||||
browserCanvas = document.getElementById('canvas')
|
||||
|
||||
browserCanvas.width = window.innerWidth
|
||||
browserCanvas.height = window.innerHeight
|
||||
browserCanvas.style.border = "none"
|
||||
|
||||
browserCanvas.style.top = 0 + 'px'
|
||||
}
|
||||
|
||||
function loadDebugModule() {
|
||||
let path = "WebDebugLog.js"
|
||||
REQUIREJS([path], onRequired)
|
||||
|
||||
function onRequired(pModule) {
|
||||
if (INFO_LOG === true) { console.log(spacePad(MODULE_NAME, 50) + " : " + "[INFO] " + path + " downloaded.") }
|
||||
loadModules()
|
||||
}
|
||||
}
|
||||
|
||||
/* And Finally, we start loading all the scripts we will inmediatelly need. */
|
||||
function loadModules() {
|
||||
let path = "AppLoader.js"
|
||||
REQUIREJS([path], onRequired)
|
||||
|
||||
function onRequired(pModule) {
|
||||
if (INFO_LOG === true) { console.log(spacePad(MODULE_NAME, 50) + " : " + "[INFO] " + path + " downloaded.") }
|
||||
let APP_LOADER_MODULE = newAppLoader()
|
||||
APP_LOADER_MODULE.loadModules()
|
||||
}
|
||||
@@ -174,7 +68,7 @@ function httpRequest(pContentToSend, pPath, callBackFunction) {
|
||||
xmlHttpRequest.open("POST", pPath, true)
|
||||
xmlHttpRequest.send(blob)
|
||||
} catch (err) {
|
||||
if (ERROR_LOG === true) { console.log(spacePad(MODULE_NAME, 50) + " : " + "[ERROR] callServer -> err.message = " & err.message) }
|
||||
if (ERROR_LOG === true) { console.log("[ERROR] callServer -> err.message = " & err.message) }
|
||||
callBackFunction({ result: "Fail", message: err.message })
|
||||
}
|
||||
}
|
||||
|
||||
@@ -0,0 +1,9 @@
|
||||
/* Global Constatns */
|
||||
|
||||
let webApp
|
||||
let PROJECTS_SCHEMA
|
||||
|
||||
/* New Root object*/
|
||||
let UI = {
|
||||
projects: {}
|
||||
}
|
||||
@@ -0,0 +1,63 @@
|
||||
function newWebApp() {
|
||||
|
||||
let thisObject = {
|
||||
initialize: initialize,
|
||||
finalize: finalize
|
||||
}
|
||||
|
||||
return thisObject
|
||||
|
||||
function finalize() {
|
||||
|
||||
}
|
||||
|
||||
function initialize() {
|
||||
try {
|
||||
/*
|
||||
Here we will setup the UI object, with all the
|
||||
projects and spaces.
|
||||
*/
|
||||
for (let i = 0; i < PROJECTS_SCHEMA.length; i++) {
|
||||
let projectDefinition = PROJECTS_SCHEMA[i]
|
||||
UI.projects[projectDefinition.propertyName] = {}
|
||||
let projectInstance = UI.projects[projectDefinition.propertyName]
|
||||
|
||||
projectInstance.utilities = {}
|
||||
projectInstance.globals = {}
|
||||
projectInstance.functionLibraries = {}
|
||||
|
||||
|
||||
if (projectDefinition.UI === undefined) { continue }
|
||||
|
||||
/* Set up Globals of this Project */
|
||||
if (projectDefinition.UI.globals !== undefined) {
|
||||
for (let j = 0; j < projectDefinition.UI.globals.length; j++) {
|
||||
let globalDefinition = projectDefinition.UI.globals[j]
|
||||
|
||||
projectInstance.globals[globalDefinition.propertyName] = eval(globalDefinition.functionName + '()')
|
||||
}
|
||||
}
|
||||
|
||||
/* Set up Utilities of this Project */
|
||||
if (projectDefinition.UI.utilities !== undefined) {
|
||||
for (let j = 0; j < projectDefinition.UI.utilities.length; j++) {
|
||||
let utilityDefinition = projectDefinition.UI.utilities[j]
|
||||
|
||||
projectInstance.utilities[utilityDefinition.propertyName] = eval(utilityDefinition.functionName + '()')
|
||||
}
|
||||
}
|
||||
|
||||
/* Set up Function Libraries of this Project */
|
||||
if (projectDefinition.UI.functionLibraries !== undefined) {
|
||||
for (let j = 0; j < projectDefinition.UI.functionLibraries.length; j++) {
|
||||
let functionLibraryDefinition = projectDefinition.UI.functionLibraries[j]
|
||||
|
||||
projectInstance.functionLibraries[functionLibraryDefinition.propertyName] = eval(functionLibraryDefinition.functionName + '()')
|
||||
}
|
||||
}
|
||||
}
|
||||
} catch (err) {
|
||||
console.log('[ERROR] initialize -> err.stack = ' + err.stack)
|
||||
}
|
||||
}
|
||||
}
|
||||
Reference in new issue
Block a user