-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathmain.js
More file actions
51 lines (41 loc) · 1.86 KB
/
main.js
File metadata and controls
51 lines (41 loc) · 1.86 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
import { LibLoader } from './src/CraftBootloader/LibLoader.js';
import { ResourceLoader } from './src/CraftBootloader/ResourceLoader.js';
import { JavaScriptLoader } from './src/CraftBootloader/JavaScriptLoader.js';
import { StyleSheetLoader } from './src/CraftBootloader/StyleSheetLoader.js';
import { Database } from './src/CraftBootloader/Database.js';
import { ObjectStore } from './src/CraftBootloader/ObjectStore.js';
const CraftBootloader = {
LibLoader : LibLoader,
ResourceLoader : ResourceLoader,
JavaScriptLoader : JavaScriptLoader,
StyleSheetLoader : StyleSheetLoader,
Database : Database,
ObjectStore : ObjectStore,
};
CraftBootloader.usePackage = function(packages){
packages.inject(CraftBootloader);
};
CraftBootloader.main = function(){
window.onProgress = window.onProgress || window.onprogress;
window.onLibrayLoaded = window.onLibrayLoaded || window.onlibrayloaded;
if( !window.bootConfig.database ){
window.bootConfig.database = {};
}
window.bootConfig.database.indexeddb_name = window.bootConfig.database.indexeddb_name || 'CraftBootloader_database_indexeddb';
window.bootConfig.database.lib_store_name = window.bootConfig.database.lib_store_name || 'CraftBootloader_database_libStore';
window.bootConfig.database.ver_store_name = window.bootConfig.database.ver_store_name || 'CraftBootloader_database_verStore';
window.bootConfig.Context = {
libMap : {}, // utility for checking already unused libraries
database : new CraftBootloader.Database(), // indexeddb wrapper
libStore : '', // objectStore for lib data
verStore : '', // objectStore for lib version
};
window.bootConfig.library.map((lib)=>{
window.bootConfig.Context.libMap[lib.uri] = 1;
});
window.bootConfig.Context.database.connect(()=>{
let libLoader = new CraftBootloader.LibLoader();
libLoader.load();
});
};
export default CraftBootloader;