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