diff --git a/src/kiri/core/widgets.js b/src/kiri/core/widgets.js index 10541e74..5bc90476 100644 --- a/src/kiri/core/widgets.js +++ b/src/kiri/core/widgets.js @@ -1,7 +1,7 @@ /** Copyright Stewart Allen -- All Rights Reserved */ import { $ } from '../../moto/webui.js'; -import { api } from './api.js'; +import { api } from '../ui/api.js'; import { load } from '../../load/file.js'; import { Widget, newWidget } from './widget.js'; diff --git a/src/kiri/mode/cam/anim-2d-fe.js b/src/kiri/mode/cam/anim-2d-fe.js index 5e13d220..4c65321c 100644 --- a/src/kiri/mode/cam/anim-2d-fe.js +++ b/src/kiri/mode/cam/anim-2d-fe.js @@ -2,7 +2,7 @@ // UI FRONT END ANIMATION CODE for 2D -import { api } from '../../core/api.js'; +import { api } from '../../ui/api.js'; import { space } from '../../../moto/space.js'; const { client } = api; diff --git a/src/kiri/mode/cam/anim-3d-fe.js b/src/kiri/mode/cam/anim-3d-fe.js index 5c36e2e8..99d4ffab 100644 --- a/src/kiri/mode/cam/anim-3d-fe.js +++ b/src/kiri/mode/cam/anim-3d-fe.js @@ -2,7 +2,7 @@ // UI FRONT END ANIMATION CODE for 3D (indexed) -import { api } from '../../core/api.js'; +import { api } from '../../ui/api.js'; import { space } from '../../../moto/space.js'; const { client } = api; diff --git a/src/kiri/mode/cam/cl-flip.js b/src/kiri/mode/cam/cl-flip.js index ec51b302..457cc5a3 100644 --- a/src/kiri/mode/cam/cl-flip.js +++ b/src/kiri/mode/cam/cl-flip.js @@ -1,6 +1,6 @@ /** Copyright Stewart Allen -- All Rights Reserved */ -import { api } from '../../core/api.js'; +import { api } from '../../ui/api.js'; import { env, opAdd, opRender } from './init-ui.js'; import { CAM } from './driver-fe.js'; import { clearTabs, restoreTabs } from './cl-tab.js'; diff --git a/src/kiri/mode/cam/cl-helical.js b/src/kiri/mode/cam/cl-helical.js index dc8cda1d..4ca086d6 100644 --- a/src/kiri/mode/cam/cl-helical.js +++ b/src/kiri/mode/cam/cl-helical.js @@ -1,4 +1,4 @@ -import { api } from "../../core/api.js"; +import { api } from '../../ui/api.js'; import { CAM } from "./driver-fe.js"; import { clearPops, env } from "./init-ui.js"; diff --git a/src/kiri/mode/cam/cl-hole.js b/src/kiri/mode/cam/cl-hole.js index ecf4abd9..80f1c292 100644 --- a/src/kiri/mode/cam/cl-hole.js +++ b/src/kiri/mode/cam/cl-hole.js @@ -1,6 +1,6 @@ /** Copyright Stewart Allen -- All Rights Reserved */ -import { api } from '../../core/api.js'; +import { api } from '../../ui/api.js'; import { env, clearPops } from './init-ui.js'; import { CAM } from './driver-fe.js'; diff --git a/src/kiri/mode/cam/cl-ops.js b/src/kiri/mode/cam/cl-ops.js index 15a6b660..5a235e95 100644 --- a/src/kiri/mode/cam/cl-ops.js +++ b/src/kiri/mode/cam/cl-ops.js @@ -1,7 +1,7 @@ /** Copyright Stewart Allen -- All Rights Reserved */ import { $, h } from '../../../moto/webui.js'; -import { api } from '../../core/api.js'; +import { api } from '../../ui/api.js'; import { env, opRender } from './init-ui.js'; import { Tool } from './tool.js'; import { opFlip } from './cl-flip.js'; diff --git a/src/kiri/mode/cam/cl-origin.js b/src/kiri/mode/cam/cl-origin.js index 9c3e485b..187ec947 100644 --- a/src/kiri/mode/cam/cl-origin.js +++ b/src/kiri/mode/cam/cl-origin.js @@ -1,6 +1,6 @@ /** Copyright Stewart Allen -- All Rights Reserved */ -import { api } from '../../core/api.js'; +import { api } from '../../ui/api.js'; import { env, clearPops } from './init-ui.js'; import { CAM } from './driver-fe.js'; import { addbox, clearboxes } from '../../core/boxes.js'; diff --git a/src/kiri/mode/cam/cl-stock.js b/src/kiri/mode/cam/cl-stock.js index d4b71b79..b9fc429e 100644 --- a/src/kiri/mode/cam/cl-stock.js +++ b/src/kiri/mode/cam/cl-stock.js @@ -1,6 +1,6 @@ /** Copyright Stewart Allen -- All Rights Reserved */ -import { api } from '../../core/api.js'; +import { api } from '../../ui/api.js'; import { env, isDark } from './init-ui.js'; import { space as SPACE } from '../../../moto/space.js'; diff --git a/src/kiri/mode/cam/cl-surface.js b/src/kiri/mode/cam/cl-surface.js index 0c168432..670ad823 100644 --- a/src/kiri/mode/cam/cl-surface.js +++ b/src/kiri/mode/cam/cl-surface.js @@ -1,6 +1,6 @@ /** Copyright Stewart Allen -- All Rights Reserved */ -import { api } from '../../core/api.js'; +import { api } from '../../ui/api.js'; import { env, clearPops } from './init-ui.js'; import { CAM } from './driver-fe.js'; diff --git a/src/kiri/mode/cam/cl-tab.js b/src/kiri/mode/cam/cl-tab.js index c30fd266..a406920d 100644 --- a/src/kiri/mode/cam/cl-tab.js +++ b/src/kiri/mode/cam/cl-tab.js @@ -1,6 +1,6 @@ /** Copyright Stewart Allen -- All Rights Reserved */ -import { api } from '../../core/api.js'; +import { api } from '../../ui/api.js'; import { env, isDark } from './init-ui.js'; import { addbox, delbox, clearboxes } from '../../core/boxes.js'; import { traceDone } from './cl-trace.js'; diff --git a/src/kiri/mode/cam/cl-trace.js b/src/kiri/mode/cam/cl-trace.js index 8a77995c..9f89cd47 100644 --- a/src/kiri/mode/cam/cl-trace.js +++ b/src/kiri/mode/cam/cl-trace.js @@ -1,6 +1,6 @@ /** Copyright Stewart Allen -- All Rights Reserved */ -import { api } from '../../core/api.js'; +import { api } from '../../ui/api.js'; import { env, clearPops, isDark } from './init-ui.js'; import { CAM } from './driver-fe.js'; import { Layers } from '../../ui/layers.js'; diff --git a/src/kiri/mode/cam/driver-fe.js b/src/kiri/mode/cam/driver-fe.js index ed3d1c46..3ae2cf34 100644 --- a/src/kiri/mode/cam/driver-fe.js +++ b/src/kiri/mode/cam/driver-fe.js @@ -1,6 +1,6 @@ /** Copyright Stewart Allen -- All Rights Reserved */ -import { api } from '../../core/api.js'; +import { api } from '../../ui/api.js'; import { codec } from '../../core/codec.js'; function surface_prep(index, ondone) { diff --git a/src/kiri/mode/cam/init-menu.js b/src/kiri/mode/cam/init-menu.js index f179aa7b..7efb902b 100644 --- a/src/kiri/mode/cam/init-menu.js +++ b/src/kiri/mode/cam/init-menu.js @@ -1,6 +1,6 @@ /** Copyright Stewart Allen -- All Rights Reserved */ -import { api } from '../../core/api.js'; +import { api } from '../../ui/api.js'; import { originReset, originSelect } from './cl-origin.js'; import { updateTool } from './tools.js'; diff --git a/src/kiri/mode/cam/init-ui.js b/src/kiri/mode/cam/init-ui.js index b8839152..1b44574c 100644 --- a/src/kiri/mode/cam/init-ui.js +++ b/src/kiri/mode/cam/init-ui.js @@ -1,7 +1,7 @@ /** Copyright Stewart Allen -- All Rights Reserved */ import { $ } from '../../../moto/webui.js'; -import { api } from '../../core/api.js'; +import { api } from '../../ui/api.js'; import { load } from '../../../load/file.js'; import { animate as anim_2d, animate_clear as anim_2d_clear } from './anim-2d-fe.js'; import { animate2 as anim_3d, animate_clear2 as anim_3d_clear } from './anim-3d-fe.js'; diff --git a/src/kiri/mode/cam/tools.js b/src/kiri/mode/cam/tools.js index b542415a..8e6c6de5 100644 --- a/src/kiri/mode/cam/tools.js +++ b/src/kiri/mode/cam/tools.js @@ -1,7 +1,7 @@ /** Copyright Stewart Allen -- All Rights Reserved */ import { $ } from '../../../moto/webui.js'; -import { api } from '../../core/api.js'; +import { api } from '../../ui/api.js'; import { consts } from '../../core/consts.js'; import { settings as setconf } from '../../ui/config/manager.js'; import { Tool, calcTaperAngle, calcTaperBallExtent, calcTaperLength } from './tool.js'; diff --git a/src/kiri/mode/fdm/init-menu.js b/src/kiri/mode/fdm/init-menu.js index e04dc093..f052348b 100644 --- a/src/kiri/mode/fdm/init-menu.js +++ b/src/kiri/mode/fdm/init-menu.js @@ -1,6 +1,6 @@ /** Copyright Stewart Allen -- All Rights Reserved */ -import { api } from '../../core/api.js'; +import { api } from '../../ui/api.js'; let LANG = api.language.current; let { FDM } = api.const.MODES, diff --git a/src/kiri/mode/fdm/init-ui.js b/src/kiri/mode/fdm/init-ui.js index b403ad8d..9ccbeb7a 100644 --- a/src/kiri/mode/fdm/init-ui.js +++ b/src/kiri/mode/fdm/init-ui.js @@ -1,7 +1,7 @@ /** Copyright Stewart Allen -- All Rights Reserved */ import { $ } from '../../../moto/webui.js'; -import { api } from '../../core/api.js'; +import { api } from '../../ui/api.js'; import { conf } from '../../ui/config/defaults.js'; import { util } from '../../../geo/base.js'; import { client } from '../../ui/client.js'; diff --git a/src/kiri/mode/laser/init-menu.js b/src/kiri/mode/laser/init-menu.js index 824fe6aa..16f141e5 100644 --- a/src/kiri/mode/laser/init-menu.js +++ b/src/kiri/mode/laser/init-menu.js @@ -1,6 +1,6 @@ /** Copyright Stewart Allen -- All Rights Reserved */ -import { api } from '../../core/api.js'; +import { api } from '../../ui/api.js'; let LANG = api.language.current; let { LASER, DRAG, WJET, WEDM } = api.const.MODES, diff --git a/src/kiri/mode/sla/init-menu.js b/src/kiri/mode/sla/init-menu.js index fa45d671..c275596a 100644 --- a/src/kiri/mode/sla/init-menu.js +++ b/src/kiri/mode/sla/init-menu.js @@ -1,6 +1,6 @@ /** Copyright Stewart Allen -- All Rights Reserved */ -import { api } from '../../core/api.js'; +import { api } from '../../ui/api.js'; let LANG = api.language.current; let { SLA } = api.const.MODES, diff --git a/src/kiri/mode/sla/init-ui.js b/src/kiri/mode/sla/init-ui.js index 0d1f849d..cc2a361e 100644 --- a/src/kiri/mode/sla/init-ui.js +++ b/src/kiri/mode/sla/init-ui.js @@ -1,7 +1,7 @@ /** Copyright Stewart Allen -- All Rights Reserved */ import { $ } from '../../../moto/webui.js'; -import { api } from '../../core/api.js'; +import { api } from '../../ui/api.js'; export const SLA = { init, diff --git a/src/kiri/mode/wedm/init-ui.js b/src/kiri/mode/wedm/init-ui.js index cf5db035..1a358f1b 100644 --- a/src/kiri/mode/wedm/init-ui.js +++ b/src/kiri/mode/wedm/init-ui.js @@ -1,6 +1,6 @@ /** Copyright Stewart Allen -- All Rights Reserved */ -import { api } from '../../core/api.js'; +import { api } from '../../ui/api.js'; const state = { api: undefined, diff --git a/src/kiri/run/engine.js b/src/kiri/run/engine.js index f1b49fc7..67a93d8c 100644 --- a/src/kiri/run/engine.js +++ b/src/kiri/run/engine.js @@ -3,7 +3,7 @@ import '../../add/array.js'; import '../../add/class.js'; import '../../add/three.js'; -import { api } from '../core/api.js'; +import { api } from '../ui/api.js'; import { conf } from '../ui/config/defaults.js'; import { client } from '../ui/client.js'; import { load } from '../../load/file.js'; diff --git a/src/kiri/ui/alerts.js b/src/kiri/ui/alerts.js index e596b985..5cf3c46d 100644 --- a/src/kiri/ui/alerts.js +++ b/src/kiri/ui/alerts.js @@ -1,6 +1,6 @@ /** Copyright Stewart Allen -- All Rights Reserved */ -import { api } from '../core/api.js'; +import { api } from './api.js'; let alerts = []; diff --git a/src/kiri/core/api.js b/src/kiri/ui/api.js similarity index 89% rename from src/kiri/core/api.js rename to src/kiri/ui/api.js index 8ed318c5..4536f468 100644 --- a/src/kiri/core/api.js +++ b/src/kiri/ui/api.js @@ -1,31 +1,31 @@ /** Copyright Stewart Allen -- All Rights Reserved */ -import alerts from '../ui/alerts.js'; -import settings from '../ui/config/manager.js'; -import STACKS from '../ui/stacks.js'; +import alerts from './alerts.js'; +import settings from './config/manager.js'; +import STACKS from './stacks.js'; import { broker } from '../../moto/broker.js'; -import { client as work } from '../ui/client.js'; -import { consts, COLOR as color, LISTS as lists } from './consts.js'; -import { device, devices } from '../ui/devices.js'; +import { client as work } from './client.js'; +import { consts, COLOR as color, LISTS as lists } from '../core/consts.js'; +import { device, devices } from './devices.js'; import { catalog, dialog, event, group, help, hide, image } from './main.js'; import { modal, mode, process, show, space, util, view } from './main.js'; import { local as dataLocal } from '../../data/local.js'; -import { noop, ajax, o2js, js2o } from './utils.js'; +import { noop, ajax, o2js, js2o } from '../core/utils.js'; import { functions } from './function.js'; import { platform } from './platform.js'; -import { selection } from './selection.js'; -import { stats } from '../ui/stats.js'; -import { newWidget } from './widget.js'; -import { widgets } from './widgets.js'; +import { selection } from './select.js'; +import { stats } from './stats.js'; +import { newWidget } from '../core/widget.js'; +import { widgets } from '../core/widgets.js'; import { updateTool } from '../mode/cam/tools.js'; import { beta, version } from '../../moto/license.js'; import { space as SPACE } from '../../moto/space.js'; import { types as load } from '../../load/file.js'; -import { LANG } from '../ui/lang.js'; +import { LANG } from './lang.js'; import { LOCAL, SETUP, SECURE } from './main.js'; -import { UI } from '../ui/component.js'; +import { UI } from './component.js'; import web from '../../moto/webui.js'; diff --git a/src/kiri/ui/client.js b/src/kiri/ui/client.js index 84208ed2..2f6a564f 100644 --- a/src/kiri/ui/client.js +++ b/src/kiri/ui/client.js @@ -1,6 +1,6 @@ /** Copyright Stewart Allen -- All Rights Reserved */ -import { api } from '../core/api.js'; +import { api } from './api.js'; import { noop } from '../core/utils.js'; import { codec } from '../core/codec.js'; import { Widget } from '../core/widget.js'; diff --git a/src/kiri/ui/component.js b/src/kiri/ui/component.js index 994484e9..d4edf9e2 100644 --- a/src/kiri/ui/component.js +++ b/src/kiri/ui/component.js @@ -1,7 +1,7 @@ /** Copyright Stewart Allen -- All Rights Reserved */ import { $ } from '../../moto/webui.js'; -import { api } from '../core/api.js'; +import { api } from './api.js'; let DOC = self.document, inputAction = null, diff --git a/src/kiri/ui/config/manager.js b/src/kiri/ui/config/manager.js index edf14e67..a5cbe5cc 100644 --- a/src/kiri/ui/config/manager.js +++ b/src/kiri/ui/config/manager.js @@ -1,7 +1,7 @@ /** Copyright Stewart Allen -- All Rights Reserved */ import { $, h } from '../../../moto/webui.js'; -import { api } from '../../core/api.js'; +import { api } from '../api.js'; import { conf } from './defaults.js'; import { codec } from '../../core/codec.js'; import { consts } from '../../core/consts.js'; diff --git a/src/kiri/ui/devices.js b/src/kiri/ui/devices.js index 7586687a..a3366f72 100644 --- a/src/kiri/ui/devices.js +++ b/src/kiri/ui/devices.js @@ -1,7 +1,7 @@ /** Copyright Stewart Allen -- All Rights Reserved */ import { $, h } from '../../moto/webui.js'; -import { api } from '../core/api.js'; +import { api } from './api.js'; import { conf } from './config/defaults.js'; import { space } from '../../moto/space.js'; import { devices as devlist } from '../../pack/kiri-devs.js'; diff --git a/src/kiri/ui/do.js b/src/kiri/ui/do.js index a9f03c81..b3b998c6 100644 --- a/src/kiri/ui/do.js +++ b/src/kiri/ui/do.js @@ -1,6 +1,6 @@ /** Copyright Stewart Allen -- All Rights Reserved */ -import { api } from '../core/api.js'; +import { api } from './api.js'; import { space } from '../../moto/space.js'; const { event } = api; diff --git a/src/kiri/ui/export.js b/src/kiri/ui/export.js index 02fa1367..7409581e 100644 --- a/src/kiri/ui/export.js +++ b/src/kiri/ui/export.js @@ -1,7 +1,7 @@ /** Copyright Stewart Allen -- All Rights Reserved */ import { $ } from '../../moto/webui.js'; -import { api } from '../core/api.js'; +import { api } from './api.js'; import { client } from './client.js'; import { local } from '../../data/local.js'; import { util } from '../../geo/base.js'; diff --git a/src/kiri/ui/frame.js b/src/kiri/ui/frame.js index 634b5857..41727b39 100644 --- a/src/kiri/ui/frame.js +++ b/src/kiri/ui/frame.js @@ -1,6 +1,6 @@ /** Copyright Stewart Allen -- All Rights Reserved */ -import { api } from '../core/api.js'; +import { api } from './api.js'; import { load } from '../../load/file.js'; import { newWidget } from '../core/widget.js'; import { VIEWS } from '../core/consts.js'; diff --git a/src/kiri/core/function.js b/src/kiri/ui/function.js similarity index 98% rename from src/kiri/core/function.js rename to src/kiri/ui/function.js index 72e7385d..c3268eb3 100644 --- a/src/kiri/core/function.js +++ b/src/kiri/ui/function.js @@ -1,11 +1,11 @@ /** Copyright Stewart Allen -- All Rights Reserved */ import { api } from './api.js'; -import { client } from '../ui/client.js'; -import { codec } from './codec.js'; +import { client } from './client.js'; +import { codec } from '../core/codec.js'; import { space } from '../../moto/space.js'; -import { COLOR, PMODES } from './consts.js'; -import { exportFile } from '../ui/export.js'; +import { COLOR, PMODES } from '../core/consts.js'; +import { exportFile } from './export.js'; let complete = {}; diff --git a/src/kiri/core/init.js b/src/kiri/ui/init.js similarity index 99% rename from src/kiri/core/init.js rename to src/kiri/ui/init.js index 19ae5441..2626f868 100644 --- a/src/kiri/core/init.js +++ b/src/kiri/ui/init.js @@ -4,16 +4,16 @@ import { $, $c } from '../../moto/webui.js'; import { api } from './api.js'; import { base } from '../../geo/base.js'; import { local as sdb } from '../../data/local.js'; -import { slider } from '../ui/slider.js'; -import { keyboard } from '../ui/keyboard.js'; -import { modal } from '../ui/modal.js'; -import { interact } from '../ui/interact.js'; +import { slider } from './slider.js'; +import { keyboard } from './keyboard.js'; +import { modal } from './modal.js'; +import { interact } from './interact.js'; import { space } from '../../moto/space.js'; import { LOCAL, SETUP } from './main.js'; -import { VIEWS, MODES, SEED } from './consts.js'; +import { VIEWS, MODES, SEED } from '../core/consts.js'; import { beta, version } from '../../moto/license.js'; -import { settings as set_ctrl } from '../ui/config/manager.js'; -import STACKS from '../ui/stacks.js'; +import { settings as set_ctrl } from './config/manager.js'; +import STACKS from './stacks.js'; import { init as initCAM } from '../mode/cam/init-ui.js'; import { init as initDRAG } from '../mode/drag/init-ui.js'; import { init as initFDM } from '../mode/fdm/init-ui.js'; diff --git a/src/kiri/core/main.js b/src/kiri/ui/main.js similarity index 98% rename from src/kiri/core/main.js rename to src/kiri/ui/main.js index 2679bd8b..546edad3 100644 --- a/src/kiri/core/main.js +++ b/src/kiri/ui/main.js @@ -1,27 +1,27 @@ /** Copyright Stewart Allen -- All Rights Reserved */ -import '../ui/frame.js'; +import './frame.js'; import '../../ext/base64.js'; -import STACKS from '../ui/stacks.js'; -import { modal } from '../ui/modal.js'; +import STACKS from './stacks.js'; +import { modal } from './modal.js'; import { $ } from '../../moto/webui.js'; import { api } from './api.js'; import { broker } from '../../moto/broker.js'; -import { consts } from './consts.js'; +import { consts } from '../core/consts.js'; import { Index } from '../../data/index.js'; import { local as dataLocal } from '../../data/local.js'; -import { openFiles } from '../ui/files.js'; +import { openFiles } from './files.js'; import { platform } from './platform.js'; -import { selection } from './selection.js'; -import { settings } from '../ui/config/manager.js'; -import { showDevices } from '../ui/devices.js'; +import { selection } from './select.js'; +import { settings } from './config/manager.js'; +import { showDevices } from './devices.js'; import { space as SPACE } from '../../moto/space.js'; -import { stats } from '../ui/stats.js'; -import { noop, utils } from './utils.js'; +import { stats } from './stats.js'; +import { noop, utils } from '../core/utils.js'; import { version } from '../../moto/license.js'; -import { Widget, newWidget } from './widget.js'; +import { Widget, newWidget } from '../core/widget.js'; import { showTools } from '../mode/cam/tools.js'; let { parseOpt, o2js, js2o, ls2o } = utils, diff --git a/src/kiri/core/platform.js b/src/kiri/ui/platform.js similarity index 99% rename from src/kiri/core/platform.js rename to src/kiri/ui/platform.js index dae6cd2b..46864d0e 100644 --- a/src/kiri/core/platform.js +++ b/src/kiri/ui/platform.js @@ -2,14 +2,14 @@ import { $, h } from '../../moto/webui.js'; import { api } from './api.js'; -import { ajax, js2o } from './utils.js'; +import { ajax, js2o } from '../core/utils.js'; import { base } from '../../geo/base.js'; import { load } from '../../load/file.js'; import { space } from '../../moto/space.js'; -import { Widget, newWidget } from './widget.js'; -import { Packer } from '../ui/pack.js'; +import { Widget, newWidget } from '../core/widget.js'; +import { Packer } from './pack.js'; -import { COLOR, MODES } from './consts.js'; +import { COLOR, MODES } from '../core/consts.js'; import { THREE } from '../../ext/three.js'; const V0 = new THREE.Vector3(0,0,0); diff --git a/src/kiri/core/selection.js b/src/kiri/ui/select.js similarity index 100% rename from src/kiri/core/selection.js rename to src/kiri/ui/select.js diff --git a/src/kiri/ui/stacks.js b/src/kiri/ui/stacks.js index 541686fb..a45f862e 100644 --- a/src/kiri/ui/stacks.js +++ b/src/kiri/ui/stacks.js @@ -1,7 +1,7 @@ /** Copyright Stewart Allen -- All Rights Reserved */ import { $ } from '../../moto/webui.js'; -import { api } from '../core/api.js'; +import { api } from './api.js'; import { Stack } from './stack.js'; let freeMem = true, diff --git a/src/main/kiri.js b/src/main/kiri.js index a733c879..3827e559 100644 --- a/src/main/kiri.js +++ b/src/main/kiri.js @@ -7,7 +7,7 @@ import '../kiri/ui/lang.js'; import '../kiri/core/lang-en.js'; import { broker } from '../moto/broker.js'; -import { run } from '../kiri/core/init.js'; +import { run } from '../kiri/ui/init.js'; let traceload = location.search.indexOf('traceload') > 0; let load = [];