@urso/core 0.2.6 → 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 (146) 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 +31 -31
  5. package/package.json +52 -52
  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 -3
  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 -23
  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 -524
  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 -246
  78. package/src/js/modules/objects/find.js +140 -140
  79. package/src/js/modules/objects/models/_info.js +25 -25
  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 -96
  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 +61 -61
  97. package/src/js/modules/objects/models/slider.js +199 -154
  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 -55
  101. package/src/js/modules/objects/models/toggle.js +169 -169
  102. package/src/js/modules/objects/models/world.js +19 -19
  103. package/src/js/modules/objects/propertyAdapter.js +421 -421
  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 -32
  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 -46
  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
@@ -1,64 +1,64 @@
1
- ComponentsBaseController = require('./../base/controller.js');
2
-
3
- class ComponentsFullscreenController extends ComponentsBaseController {
4
-
5
- constructor(params) {
6
- super(params);
7
-
8
- this._fullscreenActivator = null;
9
- this._resolutionsConfig = null;
10
-
11
- this.createActivator();
12
- }
13
-
14
- createActivator() {
15
- if (this._isCriOS)
16
- return;
17
-
18
- this._resolutionsConfig = Urso.getInstance('Modules.Scenes.ResolutionsConfig').contents || [];
19
-
20
- if (Urso.device.desktop)
21
- this._fullscreenActivator = this.getInstance('Desktop');
22
- else if (Urso.device.iOS)
23
- this._fullscreenActivator = this.getInstance('Ios');
24
- else if (Urso.device.android)
25
- this._fullscreenActivator = this.getInstance('Android');
26
-
27
- if (this._fullscreenActivator)
28
- this._fullscreenActivator.init();
29
- }
30
-
31
- get _isCriOS() {
32
- return navigator.userAgent.indexOf('CriOS') !== -1;
33
- }
34
-
35
- get _orientationsConfig() {
36
- return Urso.getInstance('Modules.Scenes.ResolutionsConfig')._orientations || [];
37
- }
38
-
39
- get _showOnLandscape() {
40
- return this._resolutionsConfig.find(resolution => resolution.orientation === 'landscape');
41
- }
42
-
43
- get _showOnPortrait() {
44
- return this._resolutionsConfig.find(resolution => resolution.orientation === 'portrait');
45
- }
46
-
47
- get _isPortrait() {
48
- return innerWidth > innerHeight ? 'portrait' : 'landscape';
49
- }
50
-
51
- get isFullscreen() {
52
- return this._fullscreenActivator.isFullscreen;
53
- }
54
-
55
- _resizeHandler() {
56
- Urso.localData.set('fullscreen.isFullscreen', this.isFullscreen);
57
- }
58
-
59
- _subscribeOnce() {
60
- this.addListener(Urso.events.EXTRA_BROWSEREVENTS_WINDOW_RESIZE, this._resizeHandler.bind(this));
61
- }
62
- }
63
-
64
- module.exports = ComponentsFullscreenController;
1
+ ComponentsBaseController = require('./../base/controller.js');
2
+
3
+ class ComponentsFullscreenController extends ComponentsBaseController {
4
+
5
+ constructor(params) {
6
+ super(params);
7
+
8
+ this._fullscreenActivator = null;
9
+ this._resolutionsConfig = null;
10
+
11
+ this.createActivator();
12
+ }
13
+
14
+ createActivator() {
15
+ if (this._isCriOS)
16
+ return;
17
+
18
+ this._resolutionsConfig = Urso.getInstance('Modules.Scenes.ResolutionsConfig').contents || [];
19
+
20
+ if (Urso.device.desktop)
21
+ this._fullscreenActivator = this.getInstance('Desktop');
22
+ else if (Urso.device.iOS)
23
+ this._fullscreenActivator = this.getInstance('Ios');
24
+ else if (Urso.device.android)
25
+ this._fullscreenActivator = this.getInstance('Android');
26
+
27
+ if (this._fullscreenActivator)
28
+ this._fullscreenActivator.init();
29
+ }
30
+
31
+ get _isCriOS() {
32
+ return navigator.userAgent.indexOf('CriOS') !== -1;
33
+ }
34
+
35
+ get _orientationsConfig() {
36
+ return Urso.getInstance('Modules.Scenes.ResolutionsConfig')._orientations || [];
37
+ }
38
+
39
+ get _showOnLandscape() {
40
+ return this._resolutionsConfig.find(resolution => resolution.orientation === 'landscape');
41
+ }
42
+
43
+ get _showOnPortrait() {
44
+ return this._resolutionsConfig.find(resolution => resolution.orientation === 'portrait');
45
+ }
46
+
47
+ get _isPortrait() {
48
+ return innerWidth > innerHeight ? 'portrait' : 'landscape';
49
+ }
50
+
51
+ get isFullscreen() {
52
+ return this._fullscreenActivator.isFullscreen;
53
+ }
54
+
55
+ _resizeHandler() {
56
+ Urso.localData.set('fullscreen.isFullscreen', this.isFullscreen);
57
+ }
58
+
59
+ _subscribeOnce() {
60
+ this.addListener(Urso.events.EXTRA_BROWSEREVENTS_WINDOW_RESIZE, this._resizeHandler.bind(this));
61
+ }
62
+ }
63
+
64
+ module.exports = ComponentsFullscreenController;
@@ -1,49 +1,49 @@
1
- class ComponentsFullscreenDesktop {
2
- init() {}
3
-
4
- get isFullscreen() {
5
- return (
6
- document.webkitIsFullScreen ||
7
- document.mozFullScreen ||
8
- document.fullscreen
9
- );
10
- }
11
-
12
- _requestFullscreen() {
13
- if (document.body.webkitRequestFullScreen)
14
- document.body.webkitRequestFullScreen();
15
- else if (document.body.mozRequestFullScreen)
16
- document.body.mozRequestFullScreen();
17
- else if (document.body.requestFullScreen)
18
- document.body.requestFullScreen();
19
- }
20
-
21
- _cancelFullscreen() {
22
- if (document.webkitCancelFullScreen)
23
- document.webkitCancelFullScreen();
24
- else if (document.mozCancelFullScreen)
25
- document.mozCancelFullScreen();
26
- else if (document.cancelFullScreen)
27
- document.cancelFullScreen();
28
- }
29
-
30
- _switchFullscreen(needGoFullscreen = null) {
31
- if (needGoFullscreen === null)
32
- needGoFullscreen = !this.isFullscreen;
33
-
34
- if (needGoFullscreen)
35
- this._requestFullscreen();
36
- else
37
- this._cancelFullscreen();
38
- }
39
-
40
- _fullscreenSwitchHandler(needGoFullscreen = null) {
41
- this._switchFullscreen(needGoFullscreen);
42
- }
43
-
44
- _subscribeOnce() {
45
- this.addListener('components.fullscreen.switch', this._fullscreenSwitchHandler.bind(this));
46
- }
47
- }
48
-
49
- module.exports = ComponentsFullscreenDesktop;
1
+ class ComponentsFullscreenDesktop {
2
+ init() {}
3
+
4
+ get isFullscreen() {
5
+ return (
6
+ document.webkitIsFullScreen ||
7
+ document.mozFullScreen ||
8
+ document.fullscreen
9
+ );
10
+ }
11
+
12
+ _requestFullscreen() {
13
+ if (document.body.webkitRequestFullScreen)
14
+ document.body.webkitRequestFullScreen();
15
+ else if (document.body.mozRequestFullScreen)
16
+ document.body.mozRequestFullScreen();
17
+ else if (document.body.requestFullScreen)
18
+ document.body.requestFullScreen();
19
+ }
20
+
21
+ _cancelFullscreen() {
22
+ if (document.webkitCancelFullScreen)
23
+ document.webkitCancelFullScreen();
24
+ else if (document.mozCancelFullScreen)
25
+ document.mozCancelFullScreen();
26
+ else if (document.cancelFullScreen)
27
+ document.cancelFullScreen();
28
+ }
29
+
30
+ _switchFullscreen(needGoFullscreen = null) {
31
+ if (needGoFullscreen === null)
32
+ needGoFullscreen = !this.isFullscreen;
33
+
34
+ if (needGoFullscreen)
35
+ this._requestFullscreen();
36
+ else
37
+ this._cancelFullscreen();
38
+ }
39
+
40
+ _fullscreenSwitchHandler(needGoFullscreen = null) {
41
+ this._switchFullscreen(needGoFullscreen);
42
+ }
43
+
44
+ _subscribeOnce() {
45
+ this.addListener('components.fullscreen.switch', this._fullscreenSwitchHandler.bind(this));
46
+ }
47
+ }
48
+
49
+ module.exports = ComponentsFullscreenDesktop;
@@ -1,111 +1,111 @@
1
- class ComponentsFullscreenIos {
2
- constructor() {
3
- this._div = null;
4
- this._orientation = null;
5
- this._scrollTimeout = null;
6
- }
7
-
8
- init() {
9
- this._createDom();
10
- this._addListeners();
11
- this._updateResize();
12
- }
13
-
14
- _createDom() {
15
- this._div = document.createElement('div');
16
- this._div.className = 'fullscreen fullscreen-ios';
17
- document.body.prepend(this._div);
18
-
19
- const infoDiv = document.createElement('div');
20
- infoDiv.className = 'fullscreen-info';
21
- this._div.appendChild(infoDiv);
22
-
23
- const image = document.createElement('img');
24
- image.src = '/assets/images/fullscreen/scroll.png';
25
- const span = document.createElement('span');
26
- span.innerText = 'Swipe up to enter fullscreen';
27
-
28
- infoDiv.appendChild(image);
29
- infoDiv.appendChild(span);
30
- }
31
-
32
- _addListeners() {
33
- window.addEventListener('touchmove', (e) => {
34
- this._updateResize();
35
-
36
- if (e.touches.length > 1) {
37
- e.preventDefault();
38
- return;
39
- }
40
- });
41
- }
42
-
43
- get _isFullscreen() {
44
- const minFactor = 0.51;
45
- const deviceFactor = screen.width / screen.height;
46
- const factor = this._isPortrait ?
47
- innerWidth / innerHeight :
48
- innerHeight / innerWidth;
49
-
50
- return !(
51
- this._isPortrait ?
52
- factor - deviceFactor < 0.1:
53
- factor > minFactor
54
- );
55
- }
56
-
57
- _updateOrientation() {
58
- this._orientation = innerWidth > innerHeight ? 'landscape' : 'portrait';
59
- }
60
-
61
- _updateResize() {
62
- this._updateOrientation();
63
- this.isVisible = this._needShowOnCurrentOrientation && this._isFullscreen;
64
- }
65
-
66
- get _orientationsConfig() {
67
- return Urso.getInstance('Modules.Scenes.ResolutionsConfig').contents || [];
68
- }
69
-
70
- get _isPortrait() {
71
- return this._orientation === 'portrait';
72
- }
73
-
74
- get _needShowOnCurrentOrientation() {
75
- return (this._isPortrait && this._showOnPortrait) || (!this._isPortrait && this._showOnLandscape);
76
- }
77
-
78
- get _showOnLandscape() {
79
- return this._orientationsConfig.find(resolution => resolution.orientation === 'landscape');
80
- }
81
-
82
- get _showOnPortrait() {
83
- return this._orientationsConfig.find(resolution => resolution.orientation === 'portrait');
84
- }
85
-
86
- set isVisible(needShowDiv) {
87
- this._div.style.zIndex = needShowDiv ? 1 : -1;
88
- clearTimeout(this._scrollTimeout)
89
- this._scrollTimeout = setTimeout(() => {
90
- if(needShowDiv)
91
- window.scrollTo(0,0);
92
- }, 200);
93
- }
94
-
95
- _resizeHandler() {
96
- this._updateResize();
97
- }
98
-
99
- _fullscreenSwitchHandler(needGoFullscreen = null) {
100
- this._switchFullscreen(needGoFullscreen);
101
- }
102
-
103
- _subscribeOnce() {
104
- this.addListener(
105
- Urso.events.EXTRA_BROWSEREVENTS_WINDOW_RESIZE,
106
- this._resizeHandler.bind(this)
107
- );
108
- }
109
- }
110
-
111
- module.exports = ComponentsFullscreenIos;
1
+ class ComponentsFullscreenIos {
2
+ constructor() {
3
+ this._div = null;
4
+ this._orientation = null;
5
+ this._scrollTimeout = null;
6
+ }
7
+
8
+ init() {
9
+ this._createDom();
10
+ this._addListeners();
11
+ this._updateResize();
12
+ }
13
+
14
+ _createDom() {
15
+ this._div = document.createElement('div');
16
+ this._div.className = 'fullscreen fullscreen-ios';
17
+ document.body.prepend(this._div);
18
+
19
+ const infoDiv = document.createElement('div');
20
+ infoDiv.className = 'fullscreen-info';
21
+ this._div.appendChild(infoDiv);
22
+
23
+ const image = document.createElement('img');
24
+ image.src = '/assets/images/fullscreen/scroll.png';
25
+ const span = document.createElement('span');
26
+ span.innerText = 'Swipe up to enter fullscreen';
27
+
28
+ infoDiv.appendChild(image);
29
+ infoDiv.appendChild(span);
30
+ }
31
+
32
+ _addListeners() {
33
+ window.addEventListener('touchmove', (e) => {
34
+ this._updateResize();
35
+
36
+ if (e.touches.length > 1) {
37
+ e.preventDefault();
38
+ return;
39
+ }
40
+ });
41
+ }
42
+
43
+ get _isFullscreen() {
44
+ const minFactor = 0.51;
45
+ const deviceFactor = screen.width / screen.height;
46
+ const factor = this._isPortrait ?
47
+ innerWidth / innerHeight :
48
+ innerHeight / innerWidth;
49
+
50
+ return !(
51
+ this._isPortrait ?
52
+ factor - deviceFactor < 0.1:
53
+ factor > minFactor
54
+ );
55
+ }
56
+
57
+ _updateOrientation() {
58
+ this._orientation = innerWidth > innerHeight ? 'landscape' : 'portrait';
59
+ }
60
+
61
+ _updateResize() {
62
+ this._updateOrientation();
63
+ this.isVisible = this._needShowOnCurrentOrientation && this._isFullscreen;
64
+ }
65
+
66
+ get _orientationsConfig() {
67
+ return Urso.getInstance('Modules.Scenes.ResolutionsConfig').contents || [];
68
+ }
69
+
70
+ get _isPortrait() {
71
+ return this._orientation === 'portrait';
72
+ }
73
+
74
+ get _needShowOnCurrentOrientation() {
75
+ return (this._isPortrait && this._showOnPortrait) || (!this._isPortrait && this._showOnLandscape);
76
+ }
77
+
78
+ get _showOnLandscape() {
79
+ return this._orientationsConfig.find(resolution => resolution.orientation === 'landscape');
80
+ }
81
+
82
+ get _showOnPortrait() {
83
+ return this._orientationsConfig.find(resolution => resolution.orientation === 'portrait');
84
+ }
85
+
86
+ set isVisible(needShowDiv) {
87
+ this._div.style.zIndex = needShowDiv ? 1 : -1;
88
+ clearTimeout(this._scrollTimeout)
89
+ this._scrollTimeout = setTimeout(() => {
90
+ if(needShowDiv)
91
+ window.scrollTo(0,0);
92
+ }, 200);
93
+ }
94
+
95
+ _resizeHandler() {
96
+ this._updateResize();
97
+ }
98
+
99
+ _fullscreenSwitchHandler(needGoFullscreen = null) {
100
+ this._switchFullscreen(needGoFullscreen);
101
+ }
102
+
103
+ _subscribeOnce() {
104
+ this.addListener(
105
+ Urso.events.EXTRA_BROWSEREVENTS_WINDOW_RESIZE,
106
+ this._resizeHandler.bind(this)
107
+ );
108
+ }
109
+ }
110
+
111
+ module.exports = ComponentsFullscreenIos;
@@ -1,4 +1,4 @@
1
- Urso.Core.Components.Loader = {
2
- Controller: require('./controller.js'),
3
- Template: require('./template.js')
4
- };
1
+ Urso.Core.Components.Loader = {
2
+ Controller: require('./controller.js'),
3
+ Template: require('./template.js')
4
+ };
@@ -1,66 +1,66 @@
1
- class ComponentsLoaderController extends Urso.Core.Components.Base.Controller {
2
-
3
- constructor(options){
4
- super(options);
5
-
6
- //load own assets
7
-
8
- //then create loader objects
9
- Urso.objects.create(this.getInstance('Template').objects)
10
-
11
-
12
- }
13
-
14
- assetsMount() {
15
- return false;
16
- }
17
-
18
- objectsMount() {
19
- return false;
20
- }
21
-
22
- loadUpdate(loadProgress) {
23
- this.setLoadProgress(loadProgress);
24
- }
25
-
26
- create(){
27
- this.setMask();
28
-
29
- //todo remove all objects
30
- }
31
-
32
- setMask(){
33
- if(this.loaderBg && this.loaderBgMask)
34
- this.loaderBg._baseObject.mask = this.loaderBgMask._baseObject
35
- }
36
-
37
- formatAmountText(text){
38
- return `${text}%`;
39
- }
40
-
41
- setLoadProgress(val){
42
- if(!this.componentCreated)
43
- return;
44
-
45
- this.loaderBgMask._baseObject.scale.x = val;
46
- this.loadAmountText.text = this.formatAmountText(val);
47
- }
48
-
49
- get componentCreated(){
50
- return !!this.loadAmountText && !!this.loaderBg && !!this.loaderBgMask;
51
- }
52
-
53
- get loadAmountText(){
54
- return Urso.findOne('.loadAmountText');
55
- }
56
-
57
- get loaderBg(){
58
- return Urso.findOne('^loaderBg');
59
- }
60
-
61
- get loaderBgMask(){
62
- return Urso.findOne('^loaderBgMask');
63
- }
64
- }
65
-
66
- module.exports = ComponentsLoaderController;
1
+ class ComponentsLoaderController extends Urso.Core.Components.Base.Controller {
2
+
3
+ constructor(options){
4
+ super(options);
5
+
6
+ //load own assets
7
+
8
+ //then create loader objects
9
+ Urso.objects.create(this.getInstance('Template').objects)
10
+
11
+
12
+ }
13
+
14
+ assetsMount() {
15
+ return false;
16
+ }
17
+
18
+ objectsMount() {
19
+ return false;
20
+ }
21
+
22
+ loadUpdate(loadProgress) {
23
+ this.setLoadProgress(loadProgress);
24
+ }
25
+
26
+ create(){
27
+ this.setMask();
28
+
29
+ //todo remove all objects
30
+ }
31
+
32
+ setMask(){
33
+ if(this.loaderBg && this.loaderBgMask)
34
+ this.loaderBg._baseObject.mask = this.loaderBgMask._baseObject
35
+ }
36
+
37
+ formatAmountText(text){
38
+ return `${text}%`;
39
+ }
40
+
41
+ setLoadProgress(val){
42
+ if(!this.componentCreated)
43
+ return;
44
+
45
+ this.loaderBgMask._baseObject.scale.x = val;
46
+ this.loadAmountText.text = this.formatAmountText(val);
47
+ }
48
+
49
+ get componentCreated(){
50
+ return !!this.loadAmountText && !!this.loaderBg && !!this.loaderBgMask;
51
+ }
52
+
53
+ get loadAmountText(){
54
+ return Urso.findOne('.loadAmountText');
55
+ }
56
+
57
+ get loaderBg(){
58
+ return Urso.findOne('^loaderBg');
59
+ }
60
+
61
+ get loaderBgMask(){
62
+ return Urso.findOne('^loaderBgMask');
63
+ }
64
+ }
65
+
66
+ module.exports = ComponentsLoaderController;