@urso/core 0.3.6 → 0.3.7

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 (143) hide show
  1. package/.babelrc +11 -11
  2. package/README.md +10 -10
  3. package/build/js/index.js +1 -1
  4. package/build/js/index.js.LICENSE.txt +29 -29
  5. package/package.json +51 -51
  6. package/src/js/app.js +77 -77
  7. package/src/js/components/_info.js +8 -8
  8. package/src/js/components/base/_info.js +3 -3
  9. package/src/js/components/base/controller.js +78 -78
  10. package/src/js/components/debug/_info.js +7 -7
  11. package/src/js/components/debug/controller.js +38 -38
  12. package/src/js/components/debug/coords.js +23 -23
  13. package/src/js/components/debug/fps.js +34 -34
  14. package/src/js/components/debug/template.js +55 -55
  15. package/src/js/components/debug/timescale.js +60 -60
  16. package/src/js/components/deviceRotate/_info.js +3 -3
  17. package/src/js/components/deviceRotate/controller.js +86 -86
  18. package/src/js/components/fullscreen/_info.js +6 -6
  19. package/src/js/components/fullscreen/android.js +104 -104
  20. package/src/js/components/fullscreen/controller.js +64 -64
  21. package/src/js/components/fullscreen/desktop.js +49 -49
  22. package/src/js/components/fullscreen/ios.js +111 -111
  23. package/src/js/components/loader/_info.js +4 -4
  24. package/src/js/components/loader/controller.js +66 -66
  25. package/src/js/components/loader/template.js +70 -70
  26. package/src/js/components/soundInitialPopup/_info.js +3 -3
  27. package/src/js/components/soundInitialPopup/controller.js +42 -42
  28. package/src/js/components/soundInitialPopup/template.js +109 -109
  29. package/src/js/components/stateDriven/_info.js +3 -3
  30. package/src/js/components/stateDriven/controller.js +118 -96
  31. package/src/js/config/load.js +5 -5
  32. package/src/js/config/main.js +10 -10
  33. package/src/js/extra/_info.js +21 -21
  34. package/src/js/extra/browserEvents.js +32 -32
  35. package/src/js/index.js +8 -8
  36. package/src/js/lib/_info.js +13 -13
  37. package/src/js/lib/cache.js +98 -98
  38. package/src/js/lib/composition.js +89 -89
  39. package/src/js/lib/device.js +1276 -1276
  40. package/src/js/lib/helper.js +539 -539
  41. package/src/js/lib/loader.js +121 -121
  42. package/src/js/lib/localData.js +15 -15
  43. package/src/js/lib/logger.js +22 -22
  44. package/src/js/lib/math.js +35 -35
  45. package/src/js/lib/objectPool.js +54 -54
  46. package/src/js/lib/time.js +18 -18
  47. package/src/js/lib/tween.js +147 -147
  48. package/src/js/modules/_info.js +11 -11
  49. package/src/js/modules/assets/_info.js +7 -7
  50. package/src/js/modules/assets/baseModel.js +18 -18
  51. package/src/js/modules/assets/config.js +35 -35
  52. package/src/js/modules/assets/controller.js +39 -39
  53. package/src/js/modules/assets/models/_info.js +11 -11
  54. package/src/js/modules/assets/models/atlas.js +8 -8
  55. package/src/js/modules/assets/models/audiosprite.js +27 -27
  56. package/src/js/modules/assets/models/bitmapFont.js +8 -8
  57. package/src/js/modules/assets/models/container.js +16 -16
  58. package/src/js/modules/assets/models/font.js +8 -8
  59. package/src/js/modules/assets/models/image.js +14 -14
  60. package/src/js/modules/assets/models/json.js +8 -8
  61. package/src/js/modules/assets/models/sound.js +14 -14
  62. package/src/js/modules/assets/models/spine.js +8 -8
  63. package/src/js/modules/assets/service.js +327 -327
  64. package/src/js/modules/instances/_info.js +3 -3
  65. package/src/js/modules/instances/controller.js +219 -219
  66. package/src/js/modules/logic/_info.js +4 -4
  67. package/src/js/modules/logic/config/_info.js +2 -2
  68. package/src/js/modules/logic/config/sounds.js +23 -23
  69. package/src/js/modules/logic/controller.js +48 -48
  70. package/src/js/modules/logic/sounds.js +96 -96
  71. package/src/js/modules/objects/_info.js +11 -11
  72. package/src/js/modules/objects/baseModel.js +161 -161
  73. package/src/js/modules/objects/cache.js +99 -99
  74. package/src/js/modules/objects/controller.js +121 -121
  75. package/src/js/modules/objects/create.js +230 -230
  76. package/src/js/modules/objects/find.js +140 -140
  77. package/src/js/modules/objects/models/_info.js +24 -24
  78. package/src/js/modules/objects/models/atlasImage.js +50 -50
  79. package/src/js/modules/objects/models/bitmapText.js +23 -23
  80. package/src/js/modules/objects/models/button.js +184 -184
  81. package/src/js/modules/objects/models/buttonComposite.js +35 -35
  82. package/src/js/modules/objects/models/checkbox.js +96 -96
  83. package/src/js/modules/objects/models/collection.js +54 -54
  84. package/src/js/modules/objects/models/component.js +44 -44
  85. package/src/js/modules/objects/models/container.js +19 -19
  86. package/src/js/modules/objects/models/emitter.js +54 -54
  87. package/src/js/modules/objects/models/graphics.js +38 -38
  88. package/src/js/modules/objects/models/group.js +19 -19
  89. package/src/js/modules/objects/models/hitArea.js +104 -104
  90. package/src/js/modules/objects/models/image.js +34 -34
  91. package/src/js/modules/objects/models/imagesAnimation.js +113 -113
  92. package/src/js/modules/objects/models/mask.js +38 -38
  93. package/src/js/modules/objects/models/scrollbox.js +61 -61
  94. package/src/js/modules/objects/models/slider.js +199 -199
  95. package/src/js/modules/objects/models/spine.js +89 -89
  96. package/src/js/modules/objects/models/text.js +38 -38
  97. package/src/js/modules/objects/models/textInput.js +66 -66
  98. package/src/js/modules/objects/models/toggle.js +178 -178
  99. package/src/js/modules/objects/models/world.js +19 -19
  100. package/src/js/modules/objects/propertyAdapter.js +421 -421
  101. package/src/js/modules/objects/proxy.js +182 -182
  102. package/src/js/modules/objects/styles.js +116 -116
  103. package/src/js/modules/observer/_info.js +4 -4
  104. package/src/js/modules/observer/controller.js +99 -99
  105. package/src/js/modules/observer/events.js +36 -36
  106. package/src/js/modules/scenes/_info.js +8 -8
  107. package/src/js/modules/scenes/controller.js +42 -42
  108. package/src/js/modules/scenes/model.js +35 -35
  109. package/src/js/modules/scenes/pixiWrapper.js +194 -194
  110. package/src/js/modules/scenes/resolutions.js +168 -168
  111. package/src/js/modules/scenes/resolutionsConfig.js +73 -73
  112. package/src/js/modules/scenes/service.js +92 -92
  113. package/src/js/modules/soundManager/_info.js +3 -3
  114. package/src/js/modules/soundManager/controller.js +99 -99
  115. package/src/js/modules/soundManager/soundSprite.js +202 -202
  116. package/src/js/modules/statesManager/_info.js +12 -12
  117. package/src/js/modules/statesManager/action.js +60 -60
  118. package/src/js/modules/statesManager/actions/_info.js +3 -3
  119. package/src/js/modules/statesManager/all.js +23 -23
  120. package/src/js/modules/statesManager/configStates.js +71 -71
  121. package/src/js/modules/statesManager/controller.js +170 -140
  122. package/src/js/modules/statesManager/functionsStorage.js +82 -82
  123. package/src/js/modules/statesManager/helper.js +27 -27
  124. package/src/js/modules/statesManager/race.js +75 -75
  125. package/src/js/modules/statesManager/sequence.js +47 -47
  126. package/src/js/modules/template/_info.js +6 -6
  127. package/src/js/modules/template/controller.js +28 -28
  128. package/src/js/modules/template/model.js +11 -11
  129. package/src/js/modules/template/service.js +125 -125
  130. package/src/js/modules/template/types.js +44 -44
  131. package/src/js/modules/transport/_info.js +8 -8
  132. package/src/js/modules/transport/baseConnectionType.js +24 -24
  133. package/src/js/modules/transport/config.js +13 -13
  134. package/src/js/modules/transport/connectionTypes/_info.js +3 -3
  135. package/src/js/modules/transport/connectionTypes/websocket.js +74 -74
  136. package/src/js/modules/transport/connectionTypes/xhr.js +44 -44
  137. package/src/js/modules/transport/controller.js +48 -48
  138. package/src/js/modules/transport/decorator.js +17 -17
  139. package/src/js/modules/transport/service.js +153 -153
  140. package/src/js/templates/_info.js +4 -4
  141. package/src/js/templates/groups/_info.js +1 -1
  142. package/src/js/templates/scenes/_info.js +1 -1
  143. package/webpack.config.js +47 -47
@@ -1,99 +1,99 @@
1
- class ModulesObjectsCache {
2
- constructor() {
3
- this.singleton = true;
4
- this._data = null;
5
- this.reset();
6
- };
7
-
8
- reset() {
9
- this._data = {
10
- ids: {},
11
- names: {},
12
- classes: {}
13
- }
14
- }
15
-
16
- addId(key, object) {
17
- if (this._data.ids[key])
18
- Urso.logger.error('ModulesObjectsCache error: id will be uniq ' + key);
19
-
20
- this._data.ids[key] = object;
21
- }
22
-
23
- removeId(key, object) {
24
- if (!this._data.ids[key])
25
- Urso.logger.error('ModulesObjectsCache error: no id to remove ' + key);
26
-
27
- if (this._data.ids[key]._uid !== object._uid)
28
- Urso.logger.error('ModulesObjectsCache error: invalid object with id ' + key);
29
-
30
- delete this._data.ids[key];
31
- }
32
-
33
- addName(key, object) {
34
- if (this._data.names[key])
35
- Urso.logger.error('ModulesObjectsCache error: name will be uniq ' + key);
36
-
37
- this._data.names[key] = object;
38
- }
39
-
40
- removeName(key, object) {
41
- if (!this._data.names[key])
42
- Urso.logger.error('ModulesObjectsCache error: no name to remove ' + key);
43
-
44
- if (this._data.names[key]._uid !== object._uid)
45
- Urso.logger.error('ModulesObjectsCache error: invalid object with name ' + key);
46
-
47
- delete this._data.names[key];
48
- }
49
-
50
- addClass(key, object) {
51
- let classNamesArray = key.split(' ');
52
-
53
- for (const className of classNamesArray)
54
- this._addClass(className, object);
55
- }
56
-
57
- removeClass(key, object) {
58
- let classNamesArray = key.split(' ');
59
-
60
- for (const className of classNamesArray)
61
- this._removeClass(className, object);
62
- }
63
-
64
- getId(key) {
65
- return this._data.ids[key] || false;
66
- }
67
-
68
- getName(key) {
69
- return this._data.names[key] || false;
70
- }
71
-
72
- getClass(key) {
73
- if (this._data.classes[key])
74
- return Object.values(this._data.classes[key]);
75
-
76
- return false;
77
- }
78
-
79
- _addClass(key, object) {
80
- if (!this._data.classes[key])
81
- this._data.classes[key] = {};
82
-
83
- if (!this._data.classes[key][object._uid])
84
- this._data.classes[key][object._uid] = object;
85
- }
86
-
87
- _removeClass(key, object) {
88
- if (!this._data.classes[key])
89
- return;
90
-
91
- if (this._data.classes[key][object._uid])
92
- delete this._data.classes[key][object._uid];
93
-
94
- if (!Object.keys(this._data.classes[key]).length)
95
- delete this._data.classes[key];
96
- }
97
- }
98
-
99
- module.exports = ModulesObjectsCache;
1
+ class ModulesObjectsCache {
2
+ constructor() {
3
+ this.singleton = true;
4
+ this._data = null;
5
+ this.reset();
6
+ };
7
+
8
+ reset() {
9
+ this._data = {
10
+ ids: {},
11
+ names: {},
12
+ classes: {}
13
+ }
14
+ }
15
+
16
+ addId(key, object) {
17
+ if (this._data.ids[key])
18
+ Urso.logger.error('ModulesObjectsCache error: id will be uniq ' + key);
19
+
20
+ this._data.ids[key] = object;
21
+ }
22
+
23
+ removeId(key, object) {
24
+ if (!this._data.ids[key])
25
+ Urso.logger.error('ModulesObjectsCache error: no id to remove ' + key);
26
+
27
+ if (this._data.ids[key]._uid !== object._uid)
28
+ Urso.logger.error('ModulesObjectsCache error: invalid object with id ' + key);
29
+
30
+ delete this._data.ids[key];
31
+ }
32
+
33
+ addName(key, object) {
34
+ if (this._data.names[key])
35
+ Urso.logger.error('ModulesObjectsCache error: name will be uniq ' + key);
36
+
37
+ this._data.names[key] = object;
38
+ }
39
+
40
+ removeName(key, object) {
41
+ if (!this._data.names[key])
42
+ Urso.logger.error('ModulesObjectsCache error: no name to remove ' + key);
43
+
44
+ if (this._data.names[key]._uid !== object._uid)
45
+ Urso.logger.error('ModulesObjectsCache error: invalid object with name ' + key);
46
+
47
+ delete this._data.names[key];
48
+ }
49
+
50
+ addClass(key, object) {
51
+ let classNamesArray = key.split(' ');
52
+
53
+ for (const className of classNamesArray)
54
+ this._addClass(className, object);
55
+ }
56
+
57
+ removeClass(key, object) {
58
+ let classNamesArray = key.split(' ');
59
+
60
+ for (const className of classNamesArray)
61
+ this._removeClass(className, object);
62
+ }
63
+
64
+ getId(key) {
65
+ return this._data.ids[key] || false;
66
+ }
67
+
68
+ getName(key) {
69
+ return this._data.names[key] || false;
70
+ }
71
+
72
+ getClass(key) {
73
+ if (this._data.classes[key])
74
+ return Object.values(this._data.classes[key]);
75
+
76
+ return false;
77
+ }
78
+
79
+ _addClass(key, object) {
80
+ if (!this._data.classes[key])
81
+ this._data.classes[key] = {};
82
+
83
+ if (!this._data.classes[key][object._uid])
84
+ this._data.classes[key][object._uid] = object;
85
+ }
86
+
87
+ _removeClass(key, object) {
88
+ if (!this._data.classes[key])
89
+ return;
90
+
91
+ if (this._data.classes[key][object._uid])
92
+ delete this._data.classes[key][object._uid];
93
+
94
+ if (!Object.keys(this._data.classes[key]).length)
95
+ delete this._data.classes[key];
96
+ }
97
+ }
98
+
99
+ module.exports = ModulesObjectsCache;
@@ -1,121 +1,121 @@
1
- class ModulesObjectsController {
2
- constructor() {
3
- this.singleton = true;
4
-
5
- Urso.find = this.find.bind(this);
6
- Urso.findOne = this.findOne.bind(this);
7
- Urso.findAll = this.findAll.bind(this);
8
-
9
- this._newResolutionHandler = this._newResolutionHandler.bind(this);
10
- this._resetWorld = this._resetWorld.bind(this);
11
- this._applyClassesToWorld = this._applyClassesToWorld.bind(this);
12
- };
13
-
14
- create(objects, parent, doNotRefreshStylesFlag) { //TODO parse template for assets and objects (groups, components)
15
- let result;
16
-
17
- if (Array.isArray(objects)) {
18
- result = [];
19
- for (const object of objects) {
20
- result.push(this.getInstance('Create').add(object, parent));
21
- }
22
- } else
23
- result = this.getInstance('Create').add(objects, parent);
24
-
25
- if (!doNotRefreshStylesFlag)
26
- this.refreshStyles(parent);
27
-
28
- return result;
29
- }
30
-
31
- find(selector) {
32
- return this.getInstance('Find').do(selector);
33
- }
34
-
35
- findOne(selector) {
36
- let result = this.getInstance('Find').do(selector, true);
37
- return result ? result[0] : false;
38
- }
39
-
40
- findAll(selector) {
41
- let result = this.getInstance('Find').do(selector);
42
- return result ? result : []; //todo make collections
43
- }
44
-
45
- addIdToCache(id, object) {
46
- this.getInstance('Cache').addId(id, object);
47
- }
48
-
49
- removeIdFromCache(id, object) {
50
- this.getInstance('Cache').removeId(id, object);
51
- }
52
-
53
- addNameToCache(name, object) {
54
- this.getInstance('Cache').addName(name, object);
55
- }
56
-
57
- removeNameFromCache(name, object) {
58
- this.getInstance('Cache').removeName(name, object);
59
- }
60
-
61
- addClassToCache(className, object) {
62
- this.getInstance('Cache').addClass(className, object);
63
- }
64
-
65
- removeClassFromCache(className, object) {
66
- this.getInstance('Cache').removeClass(className, object);
67
- }
68
-
69
- refreshStyles(parent) {
70
- return this.getInstance('Styles').refresh(parent);
71
- }
72
-
73
- refreshByChangedClassName(className) {
74
- return this.getInstance('Styles').refreshByChangedClassName(className);
75
- }
76
-
77
- getWorld() {
78
- return this.getInstance('Create').getWorld();
79
- }
80
-
81
- addChild(parent, child, doNotRefreshStylesFlag) {
82
- this.getInstance('Create').addChild(parent, child, doNotRefreshStylesFlag);
83
- }
84
-
85
- removeChild(parent, child, doNotRefreshStylesFlag) {
86
- this.getInstance('Create').removeChild(parent, child, doNotRefreshStylesFlag);
87
- }
88
-
89
- destroy(object, doNotRefreshStylesFlag) {
90
- this.getInstance('Create').destroy(object, doNotRefreshStylesFlag);
91
- }
92
-
93
- //do not use outside engine
94
- _safeSetValueToTarget(target, key, value) {
95
- this.getInstance('Proxy').safeSetValueToTarget(target, key, value);
96
- }
97
-
98
- _updateCommonProperties(object) {
99
- this.getInstance('Create')._updateCommonProperties(object);
100
- }
101
-
102
- _newResolutionHandler(params) {
103
- this.getInstance('Create').updateWorldBounds(params);
104
- }
105
-
106
- _resetWorld() {
107
- this.getInstance('Create').resetWorld();
108
- }
109
-
110
- _applyClassesToWorld() {
111
- this.getInstance('Create').applyClassesToWorld();
112
- }
113
-
114
- _subscribeOnce() {
115
- this.addListener(Urso.events.MODULES_SCENES_NEW_RESOLUTION, this._newResolutionHandler, true);
116
- this.addListener(Urso.events.MODULES_SCENES_NEW_SCENE_INIT, this._resetWorld, true);
117
- this.addListener(Urso.events.MODULES_INSTANCES_MODES_CHANGED, this._applyClassesToWorld, true);
118
- }
119
- }
120
-
121
- module.exports = ModulesObjectsController;
1
+ class ModulesObjectsController {
2
+ constructor() {
3
+ this.singleton = true;
4
+
5
+ Urso.find = this.find.bind(this);
6
+ Urso.findOne = this.findOne.bind(this);
7
+ Urso.findAll = this.findAll.bind(this);
8
+
9
+ this._newResolutionHandler = this._newResolutionHandler.bind(this);
10
+ this._resetWorld = this._resetWorld.bind(this);
11
+ this._applyClassesToWorld = this._applyClassesToWorld.bind(this);
12
+ };
13
+
14
+ create(objects, parent, doNotRefreshStylesFlag) { //TODO parse template for assets and objects (groups, components)
15
+ let result;
16
+
17
+ if (Array.isArray(objects)) {
18
+ result = [];
19
+ for (const object of objects) {
20
+ result.push(this.getInstance('Create').add(object, parent));
21
+ }
22
+ } else
23
+ result = this.getInstance('Create').add(objects, parent);
24
+
25
+ if (!doNotRefreshStylesFlag)
26
+ this.refreshStyles(parent);
27
+
28
+ return result;
29
+ }
30
+
31
+ find(selector) {
32
+ return this.getInstance('Find').do(selector);
33
+ }
34
+
35
+ findOne(selector) {
36
+ let result = this.getInstance('Find').do(selector, true);
37
+ return result ? result[0] : false;
38
+ }
39
+
40
+ findAll(selector) {
41
+ let result = this.getInstance('Find').do(selector);
42
+ return result ? result : []; //todo make collections
43
+ }
44
+
45
+ addIdToCache(id, object) {
46
+ this.getInstance('Cache').addId(id, object);
47
+ }
48
+
49
+ removeIdFromCache(id, object) {
50
+ this.getInstance('Cache').removeId(id, object);
51
+ }
52
+
53
+ addNameToCache(name, object) {
54
+ this.getInstance('Cache').addName(name, object);
55
+ }
56
+
57
+ removeNameFromCache(name, object) {
58
+ this.getInstance('Cache').removeName(name, object);
59
+ }
60
+
61
+ addClassToCache(className, object) {
62
+ this.getInstance('Cache').addClass(className, object);
63
+ }
64
+
65
+ removeClassFromCache(className, object) {
66
+ this.getInstance('Cache').removeClass(className, object);
67
+ }
68
+
69
+ refreshStyles(parent) {
70
+ return this.getInstance('Styles').refresh(parent);
71
+ }
72
+
73
+ refreshByChangedClassName(className) {
74
+ return this.getInstance('Styles').refreshByChangedClassName(className);
75
+ }
76
+
77
+ getWorld() {
78
+ return this.getInstance('Create').getWorld();
79
+ }
80
+
81
+ addChild(parent, child, doNotRefreshStylesFlag) {
82
+ this.getInstance('Create').addChild(parent, child, doNotRefreshStylesFlag);
83
+ }
84
+
85
+ removeChild(parent, child, doNotRefreshStylesFlag) {
86
+ this.getInstance('Create').removeChild(parent, child, doNotRefreshStylesFlag);
87
+ }
88
+
89
+ destroy(object, doNotRefreshStylesFlag) {
90
+ this.getInstance('Create').destroy(object, doNotRefreshStylesFlag);
91
+ }
92
+
93
+ //do not use outside engine
94
+ _safeSetValueToTarget(target, key, value) {
95
+ this.getInstance('Proxy').safeSetValueToTarget(target, key, value);
96
+ }
97
+
98
+ _updateCommonProperties(object) {
99
+ this.getInstance('Create')._updateCommonProperties(object);
100
+ }
101
+
102
+ _newResolutionHandler(params) {
103
+ this.getInstance('Create').updateWorldBounds(params);
104
+ }
105
+
106
+ _resetWorld() {
107
+ this.getInstance('Create').resetWorld();
108
+ }
109
+
110
+ _applyClassesToWorld() {
111
+ this.getInstance('Create').applyClassesToWorld();
112
+ }
113
+
114
+ _subscribeOnce() {
115
+ this.addListener(Urso.events.MODULES_SCENES_NEW_RESOLUTION, this._newResolutionHandler, true);
116
+ this.addListener(Urso.events.MODULES_SCENES_NEW_SCENE_INIT, this._resetWorld, true);
117
+ this.addListener(Urso.events.MODULES_INSTANCES_MODES_CHANGED, this._applyClassesToWorld, true);
118
+ }
119
+ }
120
+
121
+ module.exports = ModulesObjectsController;