grid-apps-cmms/src/main/kiri.js

49 lines
987 B
JavaScript
Raw Normal View History

2020-06-03 22:39:30 -04:00
/** Copyright Stewart Allen <sa@grid.space> -- All Rights Reserved */
import '../add/array.js';
import '../add/class.js';
import '../add/three.js';
import '../kiri/core/lang.js';
import '../kiri/core/lang-en.js';
import { run } from '../kiri/core/init.js';
2025-07-07 13:36:03 -04:00
let load = [];
function safeExec(fn) {
try {
fn(kiri.api);
} catch (error) {
console.log('load error', fn, error);
}
}
function checkReady() {
if (document.readyState === 'complete') {
2025-07-07 13:36:03 -04:00
kiri.api = run();
2025-07-07 18:51:17 -04:00
self.$ = kiri.api.web.$;
for (let fn of load) {
2025-07-07 13:36:03 -04:00
safeExec(fn);
}
2025-07-07 13:36:03 -04:00
load = undefined;
2025-07-07 18:51:17 -04:00
kiri.api.event.emit('load-done', stats);
}
}
2024-09-14 16:59:24 -04:00
self.kiri = {
load(fn) {
2025-07-07 13:36:03 -04:00
// console.log('KIRI LOAD', [...arguments]);
if (load) {
load.push(fn);
} else {
safeExec(fn);
}
2024-09-14 16:59:24 -04:00
}
};
self.moto = { };
// when dom + scripts complete
document.onreadystatechange = checkReady;
checkReady();