@urso/core 0.7.89 → 0.7.91

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 (134) hide show
  1. package/.babelrc +11 -11
  2. package/LICENSE +20 -20
  3. package/README.md +227 -227
  4. package/build/js/index.js +1 -1
  5. package/build/js/index.js.LICENSE.txt +70 -0
  6. package/package.json +50 -52
  7. package/src/js/app.js +104 -104
  8. package/src/js/components/base/controller.js +78 -78
  9. package/src/js/components/debug/controller.js +38 -38
  10. package/src/js/components/debug/coords.js +23 -23
  11. package/src/js/components/debug/fps.js +36 -36
  12. package/src/js/components/debug/template.js +55 -55
  13. package/src/js/components/debug/timescale.js +60 -60
  14. package/src/js/components/deviceRotate/controller.js +95 -95
  15. package/src/js/components/editor/api.js +127 -127
  16. package/src/js/components/editor/controller.js +12 -12
  17. package/src/js/components/fullscreen/android.js +104 -104
  18. package/src/js/components/fullscreen/controller.js +76 -76
  19. package/src/js/components/fullscreen/desktop.js +49 -49
  20. package/src/js/components/fullscreen/ios.js +115 -115
  21. package/src/js/components/layersSwitcher/config.js +26 -26
  22. package/src/js/components/layersSwitcher/controller.js +36 -36
  23. package/src/js/components/loader/controller.js +66 -66
  24. package/src/js/components/loader/template.js +70 -70
  25. package/src/js/components/soundInitialPopup/controller.js +42 -42
  26. package/src/js/components/soundInitialPopup/template.js +109 -109
  27. package/src/js/components/stateDriven/controller.js +123 -123
  28. package/src/js/config/load.js +194 -194
  29. package/src/js/config/main.js +17 -17
  30. package/src/js/extra/browserEvents.js +57 -57
  31. package/src/js/extra/main.js +19 -24
  32. package/src/js/extra/pixiPatch.js +171 -171
  33. package/src/js/index.js +7 -7
  34. package/src/js/lib/cache.js +125 -125
  35. package/src/js/lib/composition.js +85 -85
  36. package/src/js/lib/device.js +1215 -1215
  37. package/src/js/lib/helper.js +678 -678
  38. package/src/js/lib/loader.js +211 -211
  39. package/src/js/lib/localData.js +28 -28
  40. package/src/js/lib/logger.js +69 -69
  41. package/src/js/lib/math.js +161 -161
  42. package/src/js/lib/objectPool.js +207 -207
  43. package/src/js/lib/time.js +18 -18
  44. package/src/js/lib/tween.js +152 -152
  45. package/src/js/modules/assets/baseModel.js +20 -20
  46. package/src/js/modules/assets/config.js +38 -38
  47. package/src/js/modules/assets/controller.js +65 -65
  48. package/src/js/modules/assets/models/atlas.js +18 -18
  49. package/src/js/modules/assets/models/audiosprite.js +28 -28
  50. package/src/js/modules/assets/models/bitmapFont.js +10 -10
  51. package/src/js/modules/assets/models/container.js +18 -18
  52. package/src/js/modules/assets/models/font.js +10 -10
  53. package/src/js/modules/assets/models/html.js +10 -10
  54. package/src/js/modules/assets/models/image.js +17 -17
  55. package/src/js/modules/assets/models/json.js +10 -10
  56. package/src/js/modules/assets/models/jsonAtlas.js +10 -10
  57. package/src/js/modules/assets/models/sound.js +16 -16
  58. package/src/js/modules/assets/models/spine.js +16 -16
  59. package/src/js/modules/assets/service.js +541 -541
  60. package/src/js/modules/i18n/config.js +17 -17
  61. package/src/js/modules/i18n/controller.js +71 -71
  62. package/src/js/modules/instances/controller.js +357 -357
  63. package/src/js/modules/logic/config/sounds.js +23 -23
  64. package/src/js/modules/logic/controller.js +52 -52
  65. package/src/js/modules/logic/main.js +8 -8
  66. package/src/js/modules/logic/sounds.js +103 -103
  67. package/src/js/modules/objects/baseModel.js +207 -207
  68. package/src/js/modules/objects/cache.js +99 -99
  69. package/src/js/modules/objects/config.js +9 -9
  70. package/src/js/modules/objects/controller.js +139 -139
  71. package/src/js/modules/objects/find.js +58 -58
  72. package/src/js/modules/objects/models/atlasImage.js +52 -52
  73. package/src/js/modules/objects/models/bitmapText.js +48 -48
  74. package/src/js/modules/objects/models/button.js +196 -196
  75. package/src/js/modules/objects/models/buttonComposite.js +37 -37
  76. package/src/js/modules/objects/models/checkbox.js +96 -96
  77. package/src/js/modules/objects/models/collection.js +54 -54
  78. package/src/js/modules/objects/models/component.js +48 -48
  79. package/src/js/modules/objects/models/container.js +21 -21
  80. package/src/js/modules/objects/models/dragContainer.js +664 -664
  81. package/src/js/modules/objects/models/emitter.js +69 -69
  82. package/src/js/modules/objects/models/emitterFx.js +114 -114
  83. package/src/js/modules/objects/models/graphics.js +40 -40
  84. package/src/js/modules/objects/models/group.js +21 -21
  85. package/src/js/modules/objects/models/hitArea.js +119 -119
  86. package/src/js/modules/objects/models/image.js +36 -36
  87. package/src/js/modules/objects/models/imagesAnimation.js +115 -115
  88. package/src/js/modules/objects/models/mask.js +40 -40
  89. package/src/js/modules/objects/models/nineSlicePlane.js +32 -32
  90. package/src/js/modules/objects/models/scrollbox.js +66 -66
  91. package/src/js/modules/objects/models/slider.js +352 -352
  92. package/src/js/modules/objects/models/spine.js +338 -338
  93. package/src/js/modules/objects/models/text.js +70 -70
  94. package/src/js/modules/objects/models/textInput.js +68 -68
  95. package/src/js/modules/objects/models/toggle.js +179 -179
  96. package/src/js/modules/objects/models/world.js +21 -21
  97. package/src/js/modules/objects/pool.js +68 -68
  98. package/src/js/modules/objects/propertyAdapter.js +588 -588
  99. package/src/js/modules/objects/proxy.js +298 -298
  100. package/src/js/modules/objects/selector.js +136 -136
  101. package/src/js/modules/objects/service.js +254 -254
  102. package/src/js/modules/objects/styles.js +210 -210
  103. package/src/js/modules/observer/controller.js +167 -167
  104. package/src/js/modules/observer/events.js +56 -56
  105. package/src/js/modules/scenes/controller.js +127 -127
  106. package/src/js/modules/scenes/model.js +28 -28
  107. package/src/js/modules/scenes/pixiWrapper.js +351 -351
  108. package/src/js/modules/scenes/resolutions.js +173 -173
  109. package/src/js/modules/scenes/resolutionsConfig.js +73 -73
  110. package/src/js/modules/scenes/service.js +146 -146
  111. package/src/js/modules/soundManager/controller.js +103 -103
  112. package/src/js/modules/soundManager/soundSprite.js +285 -285
  113. package/src/js/modules/statesManager/action.js +97 -97
  114. package/src/js/modules/statesManager/all.js +23 -23
  115. package/src/js/modules/statesManager/configStates.js +77 -77
  116. package/src/js/modules/statesManager/controller.js +218 -218
  117. package/src/js/modules/statesManager/functionsStorage.js +82 -82
  118. package/src/js/modules/statesManager/helper.js +27 -27
  119. package/src/js/modules/statesManager/race.js +91 -91
  120. package/src/js/modules/statesManager/sequence.js +48 -48
  121. package/src/js/modules/template/controller.js +28 -28
  122. package/src/js/modules/template/model.js +11 -11
  123. package/src/js/modules/template/service.js +137 -137
  124. package/src/js/modules/template/types.js +48 -48
  125. package/src/js/modules/transport/baseConnectionType.js +25 -25
  126. package/src/js/modules/transport/config.js +13 -13
  127. package/src/js/modules/transport/connectionTypes/websocket.js +76 -76
  128. package/src/js/modules/transport/connectionTypes/xhr.js +46 -46
  129. package/src/js/modules/transport/controller.js +48 -48
  130. package/src/js/modules/transport/decorator.js +17 -17
  131. package/src/js/modules/transport/service.js +150 -150
  132. package/webpack.config.js +47 -47
  133. package/build/162.js/index.js +0 -1
  134. package/build/24.js/index.js +0 -1
@@ -1,211 +1,211 @@
1
- class LibLoader {
2
- constructor() {
3
- this.RELOAD_DELAY = 250;
4
- this._isRunning = false;
5
- this._iterationNumber = 0;
6
- this._assetsQuery = [];
7
- this._onLoadUpdate = () => { };
8
- this._loader = null;
9
- this._completeCallback = () => { };
10
-
11
- this._onError = this._onError.bind(this);
12
- };
13
-
14
- isRunning() {
15
- return this._isRunning;
16
- };
17
-
18
- /**
19
- *
20
- * @param {Object} asset - {type: 1, key: "somekey", path: "somepath"}
21
- */
22
- addAsset(asset) {
23
- this._assetsQuery.push(asset);
24
- }
25
-
26
- /**
27
- * gets part of loading path
28
- */
29
- _getLoadPath(asset) {
30
- const { path } = asset;
31
-
32
- if (path.indexOf('http') === 0) { //if absolute path - just return
33
- return path;
34
- }
35
-
36
- if (!Urso.config.useBinPath) {
37
- return `${Urso.config.gamePath}assets/${path}`;
38
- }
39
-
40
- const quality = Urso.getInstance('Modules.Assets.Service').getQuality();
41
- const splitted = path.split('/');
42
-
43
- if (splitted[0] === 'images') {
44
- splitted.splice(1, 0, quality);
45
- }
46
-
47
- return `${Urso.config.gamePath}/bin/${splitted.join('/')}`;
48
- };
49
-
50
- /**
51
- * store loaded asset in cache
52
- */
53
- _storeAsset(asset, resource) {
54
- if (resource.error) {
55
- return Urso.logger.warn('LibLoader error: ', resource.error, asset);
56
- }
57
-
58
- switch (asset.type) {
59
- case Urso.types.assets.ATLAS:
60
- Urso.cache.addAtlas(asset.key, resource);
61
- break;
62
- case Urso.types.assets.BITMAPFONT:
63
- Urso.cache.addBitmapFont(asset.key, resource);
64
- break;
65
- case Urso.types.assets.CONTAINER:
66
- Urso.cache.addContainer(asset.key, resource);
67
- break;
68
- case Urso.types.assets.FONT:
69
- case Urso.types.assets.HTML:
70
- Urso.cache.addFile(asset.key, resource);
71
- break;
72
- case Urso.types.assets.IMAGE:
73
- Urso.cache.addImage(asset.key, resource);
74
- break;
75
- case Urso.types.assets.JSON:
76
- Urso.cache.addJson(asset.key, resource);
77
- break;
78
- case Urso.types.assets.JSONATLAS:
79
- Urso.cache.addJsonAtlas(asset.key, resource);
80
- break;
81
- case Urso.types.assets.SOUND:
82
- Urso.cache.addSound(asset.key, resource);
83
- break;
84
- case Urso.types.assets.SPINE:
85
- Urso.cache.addSpine(asset.key, resource);
86
- break;
87
- default:
88
- break;
89
- }
90
- }
91
-
92
- /**
93
- * setup onload callback
94
- * @param {Function} onLoad
95
- */
96
- setOnLoadUpdate(onLoadUpdate) {
97
- if (onLoadUpdate)
98
- this._onLoadUpdate = onLoadUpdate;
99
- }
100
-
101
- /**
102
- * start loading assets from assets query
103
- * @param {Function} callback
104
- */
105
- start(callback) {
106
- if (this._isRunning)
107
- return false;
108
-
109
- this._isRunning = true;
110
- this._lastLoadFailed = false;
111
- this._iterationNumber++;
112
- const currentIteration = this._iterationNumber;
113
- this._completeCallback = callback;
114
- this._loader = new PIXI.Loader();
115
- const appVersion = Urso.config.appVersion;
116
-
117
- if (appVersion) {
118
- this._loader.defaultQueryString = `appVersion=${appVersion}`;
119
- }
120
-
121
- this._assetsQuery.forEach(asset => {
122
- // TODO: check to load
123
-
124
- let params = asset.params || false; // TODO: Set params field in base mode
125
-
126
- if (asset.type === Urso.types.assets.JSON || asset.type === Urso.types.assets.ATLAS) { // check json in JSONATLAS
127
- const jsonData = this._getJsonDataFromJsonAtlases(asset.key);
128
- alert(123)
129
- if (jsonData) {
130
- switch (asset.type) {
131
- case Urso.types.assets.JSON:
132
- Urso.cache.addJson(asset.key, { data: jsonData });
133
- break;
134
- case Urso.types.assets.ATLAS:
135
- this._loader.add(asset.key, jsonData, params, (resource) => this._storeAsset(asset, resource));
136
- break;
137
- }
138
-
139
- return;
140
- }
141
- }
142
-
143
- if (asset.type === Urso.types.assets.SPINE && asset.noAtlas) { // check SPINE in JSONATLAS
144
- if (!params)
145
- params = {};
146
-
147
- params.metadata = { spineAtlas: Urso.cache.getGlobalAtlas() };
148
-
149
- //check for json in JSONATLAS
150
- const jsonData = this._getJsonDataFromJsonAtlases(asset.key);
151
-
152
- if (jsonData) {
153
- this._loadSpineFromExistingResourses(asset, jsonData, params);
154
- return;
155
- }
156
- }
157
-
158
- const loadPath = this._getLoadPath(asset);
159
- this._loader.add(asset.key, loadPath, params, (resource) => this._storeAsset(asset, resource)); //TODO set assets resolution instead _processLoadedImage baseTexture resolution
160
- });
161
-
162
- this._onLoadUpdate({ progress: 0 });
163
- this._loader.onProgress.add(this._onLoadUpdate);
164
- this._loader.onError.add(this._onError);
165
-
166
- this._loader.load(function (loader, resources) {
167
- if (currentIteration !== this._iterationNumber || this._lastLoadFailed)
168
- return;
169
-
170
- this._onLoadUpdate({ progress: 100 });
171
- this._assetsQuery = [];
172
- this._isRunning = false;
173
- callback();
174
- }.bind(this));
175
- };
176
-
177
- _getJsonDataFromJsonAtlases(key) {
178
- const jsonAtlases = Urso.cache.getJsonAtlases();
179
-
180
- for (let jsonAtlasKey in jsonAtlases) {
181
- if (jsonAtlases[jsonAtlasKey].data.hasOwnProperty(key)) {
182
- return jsonAtlases[jsonAtlasKey].data[key];
183
- }
184
- }
185
-
186
- return null;
187
- }
188
-
189
- _loadSpineFromExistingResourses(asset, jsonData, params) {
190
- //params.metadata.spineAtlas
191
-
192
- const spineAtlasLoader = new PIXI.spine.AtlasAttachmentLoader(params.metadata.spineAtlas);
193
- const spineJsonParser = new PIXI.spine.SkeletonJson(spineAtlasLoader);
194
- const spineData = spineJsonParser.readSkeletonData(jsonData);
195
- Urso.cache.addSpine(asset.key, { spineData });
196
- }
197
-
198
- _onError(error) {
199
- Urso.logger.warn('LibLoader file load error: ', error);
200
-
201
- this._loader.reset();
202
- this._isRunning = false;
203
- this._lastLoadFailed = true;
204
-
205
- Urso.logger.warn('LibLoader all assets RELOAD...');
206
- this._resizeTimeoutId = Urso.setTimeout(() => this.start(this._completeCallback), this.RELOAD_DELAY);
207
- }
208
-
209
- };
210
-
211
- module.exports = LibLoader;
1
+ class LibLoader {
2
+ constructor() {
3
+ this.RELOAD_DELAY = 250;
4
+ this._isRunning = false;
5
+ this._iterationNumber = 0;
6
+ this._assetsQuery = [];
7
+ this._onLoadUpdate = () => { };
8
+ this._loader = null;
9
+ this._completeCallback = () => { };
10
+
11
+ this._onError = this._onError.bind(this);
12
+ };
13
+
14
+ isRunning() {
15
+ return this._isRunning;
16
+ };
17
+
18
+ /**
19
+ *
20
+ * @param {Object} asset - {type: 1, key: "somekey", path: "somepath"}
21
+ */
22
+ addAsset(asset) {
23
+ this._assetsQuery.push(asset);
24
+ }
25
+
26
+ /**
27
+ * gets part of loading path
28
+ */
29
+ _getLoadPath(asset) {
30
+ const { path } = asset;
31
+
32
+ if (path.indexOf('http') === 0) { //if absolute path - just return
33
+ return path;
34
+ }
35
+
36
+ if (!Urso.config.useBinPath) {
37
+ return `${Urso.config.gamePath}assets/${path}`;
38
+ }
39
+
40
+ const quality = Urso.getInstance('Modules.Assets.Service').getQuality();
41
+ const splitted = path.split('/');
42
+
43
+ if (splitted[0] === 'images') {
44
+ splitted.splice(1, 0, quality);
45
+ }
46
+
47
+ return `${Urso.config.gamePath}/bin/${splitted.join('/')}`;
48
+ };
49
+
50
+ /**
51
+ * store loaded asset in cache
52
+ */
53
+ _storeAsset(asset, resource) {
54
+ if (resource.error) {
55
+ return Urso.logger.warn('LibLoader error: ', resource.error, asset);
56
+ }
57
+
58
+ switch (asset.type) {
59
+ case Urso.types.assets.ATLAS:
60
+ Urso.cache.addAtlas(asset.key, resource);
61
+ break;
62
+ case Urso.types.assets.BITMAPFONT:
63
+ Urso.cache.addBitmapFont(asset.key, resource);
64
+ break;
65
+ case Urso.types.assets.CONTAINER:
66
+ Urso.cache.addContainer(asset.key, resource);
67
+ break;
68
+ case Urso.types.assets.FONT:
69
+ case Urso.types.assets.HTML:
70
+ Urso.cache.addFile(asset.key, resource);
71
+ break;
72
+ case Urso.types.assets.IMAGE:
73
+ Urso.cache.addImage(asset.key, resource);
74
+ break;
75
+ case Urso.types.assets.JSON:
76
+ Urso.cache.addJson(asset.key, resource);
77
+ break;
78
+ case Urso.types.assets.JSONATLAS:
79
+ Urso.cache.addJsonAtlas(asset.key, resource);
80
+ break;
81
+ case Urso.types.assets.SOUND:
82
+ Urso.cache.addSound(asset.key, resource);
83
+ break;
84
+ case Urso.types.assets.SPINE:
85
+ Urso.cache.addSpine(asset.key, resource);
86
+ break;
87
+ default:
88
+ break;
89
+ }
90
+ }
91
+
92
+ /**
93
+ * setup onload callback
94
+ * @param {Function} onLoad
95
+ */
96
+ setOnLoadUpdate(onLoadUpdate) {
97
+ if (onLoadUpdate)
98
+ this._onLoadUpdate = onLoadUpdate;
99
+ }
100
+
101
+ /**
102
+ * start loading assets from assets query
103
+ * @param {Function} callback
104
+ */
105
+ start(callback) {
106
+ if (this._isRunning)
107
+ return false;
108
+
109
+ this._isRunning = true;
110
+ this._lastLoadFailed = false;
111
+ this._iterationNumber++;
112
+ const currentIteration = this._iterationNumber;
113
+ this._completeCallback = callback;
114
+ this._loader = new PIXI.Loader();
115
+ const appVersion = Urso.config.appVersion;
116
+
117
+ if (appVersion) {
118
+ this._loader.defaultQueryString = `appVersion=${appVersion}`;
119
+ }
120
+
121
+ this._assetsQuery.forEach(asset => {
122
+ // TODO: check to load
123
+
124
+ let params = asset.params || false; // TODO: Set params field in base mode
125
+
126
+ if (asset.type === Urso.types.assets.JSON || asset.type === Urso.types.assets.ATLAS) { // check json in JSONATLAS
127
+ const jsonData = this._getJsonDataFromJsonAtlases(asset.key);
128
+ alert(123)
129
+ if (jsonData) {
130
+ switch (asset.type) {
131
+ case Urso.types.assets.JSON:
132
+ Urso.cache.addJson(asset.key, { data: jsonData });
133
+ break;
134
+ case Urso.types.assets.ATLAS:
135
+ this._loader.add(asset.key, jsonData, params, (resource) => this._storeAsset(asset, resource));
136
+ break;
137
+ }
138
+
139
+ return;
140
+ }
141
+ }
142
+
143
+ if (asset.type === Urso.types.assets.SPINE && asset.noAtlas) { // check SPINE in JSONATLAS
144
+ if (!params)
145
+ params = {};
146
+
147
+ params.metadata = { spineAtlas: Urso.cache.getGlobalAtlas() };
148
+
149
+ //check for json in JSONATLAS
150
+ const jsonData = this._getJsonDataFromJsonAtlases(asset.key);
151
+
152
+ if (jsonData) {
153
+ this._loadSpineFromExistingResourses(asset, jsonData, params);
154
+ return;
155
+ }
156
+ }
157
+
158
+ const loadPath = this._getLoadPath(asset);
159
+ this._loader.add(asset.key, loadPath, params, (resource) => this._storeAsset(asset, resource)); //TODO set assets resolution instead _processLoadedImage baseTexture resolution
160
+ });
161
+
162
+ this._onLoadUpdate({ progress: 0 });
163
+ this._loader.onProgress.add(this._onLoadUpdate);
164
+ this._loader.onError.add(this._onError);
165
+
166
+ this._loader.load(function (loader, resources) {
167
+ if (currentIteration !== this._iterationNumber || this._lastLoadFailed)
168
+ return;
169
+
170
+ this._onLoadUpdate({ progress: 100 });
171
+ this._assetsQuery = [];
172
+ this._isRunning = false;
173
+ callback();
174
+ }.bind(this));
175
+ };
176
+
177
+ _getJsonDataFromJsonAtlases(key) {
178
+ const jsonAtlases = Urso.cache.getJsonAtlases();
179
+
180
+ for (let jsonAtlasKey in jsonAtlases) {
181
+ if (jsonAtlases[jsonAtlasKey].data.hasOwnProperty(key)) {
182
+ return jsonAtlases[jsonAtlasKey].data[key];
183
+ }
184
+ }
185
+
186
+ return null;
187
+ }
188
+
189
+ _loadSpineFromExistingResourses(asset, jsonData, params) {
190
+ //params.metadata.spineAtlas
191
+
192
+ const spineAtlasLoader = new PIXI.spine.AtlasAttachmentLoader(params.metadata.spineAtlas);
193
+ const spineJsonParser = new PIXI.spine.SkeletonJson(spineAtlasLoader);
194
+ const spineData = spineJsonParser.readSkeletonData(jsonData);
195
+ Urso.cache.addSpine(asset.key, { spineData });
196
+ }
197
+
198
+ _onError(error) {
199
+ Urso.logger.warn('LibLoader file load error: ', error);
200
+
201
+ this._loader.reset();
202
+ this._isRunning = false;
203
+ this._lastLoadFailed = true;
204
+
205
+ Urso.logger.warn('LibLoader all assets RELOAD...');
206
+ this._resizeTimeoutId = Urso.setTimeout(() => this.start(this._completeCallback), this.RELOAD_DELAY);
207
+ }
208
+
209
+ };
210
+
211
+ module.exports = LibLoader;
@@ -1,29 +1,29 @@
1
- class LibLocalData {
2
- constructor() {
3
- this._data = {};
4
- }
5
-
6
- /**
7
- * recursive get value from local data
8
- * (*) you can use '.' as objects keys splitter
9
- * @param {String} key
10
- * @returns {Mixed}
11
- */
12
- get(name) {
13
- return Urso.helper.recursiveGet(name, this._data);
14
- };
15
-
16
- /**
17
- * recursive set value to local data
18
- * (*) you can use '.' as objects keys splitter
19
- * @param {String} key
20
- * @param {Mixed} value
21
- * @returns {Boolean}
22
- */
23
- set(key, value) {
24
- Urso.helper.recursiveSet(key, value, this._data);
25
- return true;
26
- };
27
- }
28
-
1
+ class LibLocalData {
2
+ constructor() {
3
+ this._data = {};
4
+ }
5
+
6
+ /**
7
+ * recursive get value from local data
8
+ * (*) you can use '.' as objects keys splitter
9
+ * @param {String} key
10
+ * @returns {Mixed}
11
+ */
12
+ get(name) {
13
+ return Urso.helper.recursiveGet(name, this._data);
14
+ };
15
+
16
+ /**
17
+ * recursive set value to local data
18
+ * (*) you can use '.' as objects keys splitter
19
+ * @param {String} key
20
+ * @param {Mixed} value
21
+ * @returns {Boolean}
22
+ */
23
+ set(key, value) {
24
+ Urso.helper.recursiveSet(key, value, this._data);
25
+ return true;
26
+ };
27
+ }
28
+
29
29
  module.exports = LibLocalData;
@@ -1,69 +1,69 @@
1
- //setup custom log level with: ?logLevel=1,2,3,4 OR ?logLevel=ERROR,WARNING,INFO,LOG
2
-
3
- const LEVELS = [
4
- 'ERROR',
5
- 'WARNING',
6
- 'INFO',
7
- 'LOG'
8
- ];
9
-
10
- class LibLogger {
11
- constructor() {
12
- this._logLevel = {};
13
- this._setupLevels();
14
-
15
- //log
16
- if (this._logLevel['LOG']) {
17
- window.log = console.log.bind(console);
18
- } else {
19
- window.log = console.log = () => { }
20
- }
21
- }
22
-
23
- //todo set log level (dev/prod)
24
-
25
- log() {
26
- if (!this._logLevel['LOG']) return;
27
-
28
- console.log.apply(console, arguments);
29
- }
30
-
31
- info() {
32
- if (!this._logLevel['INFO']) return;
33
-
34
- console.info.apply(this, arguments);
35
- }
36
-
37
- warn() {
38
- if (!this._logLevel['WARNING']) return;
39
-
40
- console.warn.apply(this, arguments);
41
- }
42
-
43
- error() {
44
- if (!this._logLevel['ERROR']) return;
45
-
46
- console.error.apply(this, arguments);
47
- }
48
-
49
- /**
50
- * setup logging levels
51
- */
52
- _setupLevels() {
53
- const logLevelsString = Urso.helper.parseGetParams('logLevel') || Urso.config.defaultLogLevel;
54
- const logLevelsArray = logLevelsString.split(',');
55
-
56
- for (const [index, level] of Object.entries(LEVELS)) {
57
- let levelValue = false;
58
-
59
- if (logLevelsArray.includes(index) || logLevelsArray.includes(level))
60
- levelValue = true;
61
-
62
- this._logLevel[level] = levelValue;
63
- }
64
-
65
- console.log(`LibLogger log Level: ${JSON.stringify(this._logLevel)}`);
66
- }
67
- }
68
-
69
- module.exports = LibLogger;
1
+ //setup custom log level with: ?logLevel=1,2,3,4 OR ?logLevel=ERROR,WARNING,INFO,LOG
2
+
3
+ const LEVELS = [
4
+ 'ERROR',
5
+ 'WARNING',
6
+ 'INFO',
7
+ 'LOG'
8
+ ];
9
+
10
+ class LibLogger {
11
+ constructor() {
12
+ this._logLevel = {};
13
+ this._setupLevels();
14
+
15
+ //log
16
+ if (this._logLevel['LOG']) {
17
+ window.log = console.log.bind(console);
18
+ } else {
19
+ window.log = console.log = () => { }
20
+ }
21
+ }
22
+
23
+ //todo set log level (dev/prod)
24
+
25
+ log() {
26
+ if (!this._logLevel['LOG']) return;
27
+
28
+ console.log.apply(console, arguments);
29
+ }
30
+
31
+ info() {
32
+ if (!this._logLevel['INFO']) return;
33
+
34
+ console.info.apply(this, arguments);
35
+ }
36
+
37
+ warn() {
38
+ if (!this._logLevel['WARNING']) return;
39
+
40
+ console.warn.apply(this, arguments);
41
+ }
42
+
43
+ error() {
44
+ if (!this._logLevel['ERROR']) return;
45
+
46
+ console.error.apply(this, arguments);
47
+ }
48
+
49
+ /**
50
+ * setup logging levels
51
+ */
52
+ _setupLevels() {
53
+ const logLevelsString = Urso.helper.parseGetParams('logLevel') || Urso.config.defaultLogLevel;
54
+ const logLevelsArray = logLevelsString.split(',');
55
+
56
+ for (const [index, level] of Object.entries(LEVELS)) {
57
+ let levelValue = false;
58
+
59
+ if (logLevelsArray.includes(index) || logLevelsArray.includes(level))
60
+ levelValue = true;
61
+
62
+ this._logLevel[level] = levelValue;
63
+ }
64
+
65
+ console.log(`LibLogger log Level: ${JSON.stringify(this._logLevel)}`);
66
+ }
67
+ }
68
+
69
+ module.exports = LibLogger;