@sapui5/sap.ui.vk 1.120.8 → 1.120.10

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 (206) hide show
  1. package/package.json +1 -1
  2. package/src/sap/ui/vk/.library +1 -1
  3. package/src/sap/ui/vk/AnimationPlayback.js +1 -1
  4. package/src/sap/ui/vk/AnimationPlayer.js +1 -1
  5. package/src/sap/ui/vk/AnimationSequence.js +1 -1
  6. package/src/sap/ui/vk/AnimationTimeSlider.js +1 -1
  7. package/src/sap/ui/vk/AnimationTrack.js +1 -1
  8. package/src/sap/ui/vk/Annotation.js +1 -1
  9. package/src/sap/ui/vk/BaseNodeProxy.js +1 -1
  10. package/src/sap/ui/vk/Camera.js +1 -1
  11. package/src/sap/ui/vk/ContentConnector.js +133 -85
  12. package/src/sap/ui/vk/ContentManager.js +1 -1
  13. package/src/sap/ui/vk/ContentResource.js +11 -1
  14. package/src/sap/ui/vk/ContentType.js +41 -0
  15. package/src/sap/ui/vk/Core.js +1 -1
  16. package/src/sap/ui/vk/DownloadManager.js +1 -1
  17. package/src/sap/ui/vk/DrawerToolbar.js +1 -1
  18. package/src/sap/ui/vk/DvlException.js +1 -1
  19. package/src/sap/ui/vk/FlexibleControl.js +1 -1
  20. package/src/sap/ui/vk/FlexibleControlLayoutData.js +1 -1
  21. package/src/sap/ui/vk/Highlight.js +1 -1
  22. package/src/sap/ui/vk/ImageContentManager.js +1 -1
  23. package/src/sap/ui/vk/JointUtils.js +1 -1
  24. package/src/sap/ui/vk/LayerProxy.js +1 -1
  25. package/src/sap/ui/vk/Loco.js +1 -1
  26. package/src/sap/ui/vk/Material.js +1 -1
  27. package/src/sap/ui/vk/NativeViewport.js +1 -1
  28. package/src/sap/ui/vk/NodeHierarchy.js +1 -1
  29. package/src/sap/ui/vk/NodeProxy.js +1 -1
  30. package/src/sap/ui/vk/NodeUtils.js +1 -1
  31. package/src/sap/ui/vk/Notifications.js +1 -1
  32. package/src/sap/ui/vk/OrthographicCamera.js +1 -1
  33. package/src/sap/ui/vk/PerspectiveCamera.js +1 -1
  34. package/src/sap/ui/vk/ProgressIndicator.js +1 -1
  35. package/src/sap/ui/vk/RedlineCollaboration.js +1 -1
  36. package/src/sap/ui/vk/RedlineConversation.js +1 -1
  37. package/src/sap/ui/vk/RedlineDesign.js +1 -1
  38. package/src/sap/ui/vk/RedlineElement.js +1 -1
  39. package/src/sap/ui/vk/RedlineElementComment.js +1 -1
  40. package/src/sap/ui/vk/RedlineElementEllipse.js +1 -1
  41. package/src/sap/ui/vk/RedlineElementFreehand.js +1 -1
  42. package/src/sap/ui/vk/RedlineElementLine.js +1 -1
  43. package/src/sap/ui/vk/RedlineElementRectangle.js +1 -1
  44. package/src/sap/ui/vk/RedlineElementText.js +1 -1
  45. package/src/sap/ui/vk/RedlineSurface.js +1 -1
  46. package/src/sap/ui/vk/SafeArea.js +1 -1
  47. package/src/sap/ui/vk/Scene.js +1 -1
  48. package/src/sap/ui/vk/SceneTree.js +1 -1
  49. package/src/sap/ui/vk/StepNavigation.js +1 -1
  50. package/src/sap/ui/vk/Texture.js +1 -1
  51. package/src/sap/ui/vk/ToggleMenuButton.js +1 -1
  52. package/src/sap/ui/vk/ToggleMenuItem.js +1 -1
  53. package/src/sap/ui/vk/Toolbar.js +1 -1
  54. package/src/sap/ui/vk/View.js +1 -1
  55. package/src/sap/ui/vk/ViewGallery.js +1 -1
  56. package/src/sap/ui/vk/ViewGalleryThumbnail.js +1 -1
  57. package/src/sap/ui/vk/ViewGroup.js +1 -1
  58. package/src/sap/ui/vk/ViewManager.js +1 -1
  59. package/src/sap/ui/vk/ViewStateManager.js +1 -1
  60. package/src/sap/ui/vk/ViewStateManagerBase.js +1 -1
  61. package/src/sap/ui/vk/Viewer.js +1 -1
  62. package/src/sap/ui/vk/Viewport.js +1 -1
  63. package/src/sap/ui/vk/ViewportBase.js +1 -1
  64. package/src/sap/ui/vk/dvl/BaseNodeProxy.js +1 -1
  65. package/src/sap/ui/vk/dvl/ContentManager.js +1 -1
  66. package/src/sap/ui/vk/dvl/GraphicsCore.js +1 -1
  67. package/src/sap/ui/vk/dvl/LayerProxy.js +1 -1
  68. package/src/sap/ui/vk/dvl/NodeHierarchy.js +1 -1
  69. package/src/sap/ui/vk/dvl/NodeProxy.js +1 -1
  70. package/src/sap/ui/vk/dvl/Scene.js +1 -1
  71. package/src/sap/ui/vk/dvl/ViewStateManager.js +1 -1
  72. package/src/sap/ui/vk/dvl/Viewport.js +1 -1
  73. package/src/sap/ui/vk/i18n/messagebundle_ar.properties +3 -0
  74. package/src/sap/ui/vk/i18n/messagebundle_bg.properties +3 -0
  75. package/src/sap/ui/vk/i18n/messagebundle_ca.properties +3 -0
  76. package/src/sap/ui/vk/i18n/messagebundle_cnr.properties +3 -0
  77. package/src/sap/ui/vk/i18n/messagebundle_cs.properties +3 -0
  78. package/src/sap/ui/vk/i18n/messagebundle_cy.properties +3 -0
  79. package/src/sap/ui/vk/i18n/messagebundle_da.properties +3 -0
  80. package/src/sap/ui/vk/i18n/messagebundle_de.properties +4 -1
  81. package/src/sap/ui/vk/i18n/messagebundle_el.properties +3 -0
  82. package/src/sap/ui/vk/i18n/messagebundle_en.properties +3 -265
  83. package/src/sap/ui/vk/i18n/messagebundle_en_GB.properties +3 -0
  84. package/src/sap/ui/vk/i18n/messagebundle_en_US_saprigi.properties +3 -0
  85. package/src/sap/ui/vk/i18n/messagebundle_es.properties +5 -2
  86. package/src/sap/ui/vk/i18n/messagebundle_es_MX.properties +3 -0
  87. package/src/sap/ui/vk/i18n/messagebundle_et.properties +3 -0
  88. package/src/sap/ui/vk/i18n/messagebundle_fi.properties +3 -0
  89. package/src/sap/ui/vk/i18n/messagebundle_fr.properties +3 -0
  90. package/src/sap/ui/vk/i18n/messagebundle_fr_CA.properties +3 -0
  91. package/src/sap/ui/vk/i18n/messagebundle_hi.properties +3 -0
  92. package/src/sap/ui/vk/i18n/messagebundle_hr.properties +3 -0
  93. package/src/sap/ui/vk/i18n/messagebundle_hu.properties +3 -0
  94. package/src/sap/ui/vk/i18n/messagebundle_id.properties +5 -2
  95. package/src/sap/ui/vk/i18n/messagebundle_it.properties +3 -0
  96. package/src/sap/ui/vk/i18n/messagebundle_iw.properties +3 -0
  97. package/src/sap/ui/vk/i18n/messagebundle_ja.properties +5 -2
  98. package/src/sap/ui/vk/i18n/messagebundle_kk.properties +15 -12
  99. package/src/sap/ui/vk/i18n/messagebundle_ko.properties +3 -0
  100. package/src/sap/ui/vk/i18n/messagebundle_lt.properties +3 -0
  101. package/src/sap/ui/vk/i18n/messagebundle_lv.properties +3 -0
  102. package/src/sap/ui/vk/i18n/messagebundle_mk.properties +3 -0
  103. package/src/sap/ui/vk/i18n/messagebundle_ms.properties +3 -0
  104. package/src/sap/ui/vk/i18n/messagebundle_nl.properties +3 -0
  105. package/src/sap/ui/vk/i18n/messagebundle_no.properties +4 -1
  106. package/src/sap/ui/vk/i18n/messagebundle_pl.properties +3 -0
  107. package/src/sap/ui/vk/i18n/messagebundle_pt.properties +3 -0
  108. package/src/sap/ui/vk/i18n/messagebundle_pt_PT.properties +3 -0
  109. package/src/sap/ui/vk/i18n/messagebundle_ro.properties +3 -0
  110. package/src/sap/ui/vk/i18n/messagebundle_ru.properties +3 -0
  111. package/src/sap/ui/vk/i18n/messagebundle_sh.properties +3 -0
  112. package/src/sap/ui/vk/i18n/messagebundle_sk.properties +3 -0
  113. package/src/sap/ui/vk/i18n/messagebundle_sl.properties +3 -0
  114. package/src/sap/ui/vk/i18n/messagebundle_sr.properties +3 -0
  115. package/src/sap/ui/vk/i18n/messagebundle_sv.properties +3 -0
  116. package/src/sap/ui/vk/i18n/messagebundle_th.properties +3 -0
  117. package/src/sap/ui/vk/i18n/messagebundle_tr.properties +3 -0
  118. package/src/sap/ui/vk/i18n/messagebundle_uk.properties +3 -0
  119. package/src/sap/ui/vk/i18n/messagebundle_vi.properties +4 -1
  120. package/src/sap/ui/vk/i18n/messagebundle_zh_CN.properties +3 -0
  121. package/src/sap/ui/vk/i18n/messagebundle_zh_TW.properties +3 -0
  122. package/src/sap/ui/vk/library.js +2 -2
  123. package/src/sap/ui/vk/measurements/Angle.js +1 -1
  124. package/src/sap/ui/vk/measurements/Area.js +1 -1
  125. package/src/sap/ui/vk/measurements/Distance.js +1 -1
  126. package/src/sap/ui/vk/measurements/Edge.js +1 -1
  127. package/src/sap/ui/vk/measurements/Face.js +1 -1
  128. package/src/sap/ui/vk/measurements/Feature.js +1 -1
  129. package/src/sap/ui/vk/measurements/Vertex.js +1 -1
  130. package/src/sap/ui/vk/svg/BaseNodeProxy.js +1 -1
  131. package/src/sap/ui/vk/svg/ContentDeliveryService.js +1 -1
  132. package/src/sap/ui/vk/svg/ContentManager.js +3 -3
  133. package/src/sap/ui/vk/svg/NodeHierarchy.js +1 -1
  134. package/src/sap/ui/vk/svg/NodeProxy.js +1 -1
  135. package/src/sap/ui/vk/svg/OrthographicCamera.js +1 -1
  136. package/src/sap/ui/vk/svg/Scene.js +1 -1
  137. package/src/sap/ui/vk/svg/SceneBuilder.js +1 -1
  138. package/src/sap/ui/vk/svg/ViewStateManager.js +1 -1
  139. package/src/sap/ui/vk/svg/Viewport.js +1 -1
  140. package/src/sap/ui/vk/thirdparty/three.js +2 -2
  141. package/src/sap/ui/vk/threejs/AnimationHelper.js +1 -1
  142. package/src/sap/ui/vk/threejs/BaseNodeProxy.js +1 -1
  143. package/src/sap/ui/vk/threejs/Billboard.js +1 -1
  144. package/src/sap/ui/vk/threejs/Callout.js +1 -1
  145. package/src/sap/ui/vk/threejs/ContentDeliveryService.js +1 -1
  146. package/src/sap/ui/vk/threejs/ContentManager.js +2 -2
  147. package/src/sap/ui/vk/threejs/DetailView.js +1 -1
  148. package/src/sap/ui/vk/threejs/HighlightPlayer.js +1 -1
  149. package/src/sap/ui/vk/threejs/Material.js +1 -1
  150. package/src/sap/ui/vk/threejs/NodeHierarchy.js +1 -1
  151. package/src/sap/ui/vk/threejs/NodeProxy.js +1 -1
  152. package/src/sap/ui/vk/threejs/NodesTransitionHelper.js +1 -1
  153. package/src/sap/ui/vk/threejs/OrthographicCamera.js +1 -1
  154. package/src/sap/ui/vk/threejs/PerspectiveCamera.js +1 -1
  155. package/src/sap/ui/vk/threejs/PointCloudGroup.js +1 -1
  156. package/src/sap/ui/vk/threejs/Scene.js +1 -1
  157. package/src/sap/ui/vk/threejs/SceneBuilder.js +1 -1
  158. package/src/sap/ui/vk/threejs/Texture.js +1 -1
  159. package/src/sap/ui/vk/threejs/Thrustline.js +1 -1
  160. package/src/sap/ui/vk/threejs/ViewStateManager.js +1 -1
  161. package/src/sap/ui/vk/threejs/Viewport.js +25 -4
  162. package/src/sap/ui/vk/threejs/v2/ViewStateManager.js +1 -1
  163. package/src/sap/ui/vk/tools/AnchorPointTool.js +1 -1
  164. package/src/sap/ui/vk/tools/AnchorPointToolGizmo.js +1 -1
  165. package/src/sap/ui/vk/tools/AxisAngleRotationTool.js +1 -1
  166. package/src/sap/ui/vk/tools/AxisAngleRotationToolGizmo.js +1 -1
  167. package/src/sap/ui/vk/tools/CreateEllipseTool.js +1 -1
  168. package/src/sap/ui/vk/tools/CreateEllipseToolGizmo.js +1 -1
  169. package/src/sap/ui/vk/tools/CreateParametricGizmo.js +1 -1
  170. package/src/sap/ui/vk/tools/CreatePathTool.js +1 -1
  171. package/src/sap/ui/vk/tools/CreatePathToolGizmo.js +1 -1
  172. package/src/sap/ui/vk/tools/CreateRectangleTool.js +1 -1
  173. package/src/sap/ui/vk/tools/CreateRectangleToolGizmo.js +1 -1
  174. package/src/sap/ui/vk/tools/CreateTextTool.js +1 -1
  175. package/src/sap/ui/vk/tools/CreateTextToolGizmo.js +1 -1
  176. package/src/sap/ui/vk/tools/CrossSectionTool.js +1 -1
  177. package/src/sap/ui/vk/tools/CrossSectionToolGizmo.js +1 -1
  178. package/src/sap/ui/vk/tools/DuplicateSvgElementTool.js +1 -1
  179. package/src/sap/ui/vk/tools/DuplicateSvgElementToolGizmo.js +1 -1
  180. package/src/sap/ui/vk/tools/ExplodeTool.js +1 -1
  181. package/src/sap/ui/vk/tools/ExplodeToolGizmo.js +1 -1
  182. package/src/sap/ui/vk/tools/Gizmo.js +1 -1
  183. package/src/sap/ui/vk/tools/HitTestTool.js +1 -1
  184. package/src/sap/ui/vk/tools/MoveTool.js +1 -1
  185. package/src/sap/ui/vk/tools/MoveToolGizmo.js +1 -1
  186. package/src/sap/ui/vk/tools/PointCloudSelectionTool.js +1 -1
  187. package/src/sap/ui/vk/tools/PointCloudSelectionToolGizmo.js +1 -1
  188. package/src/sap/ui/vk/tools/RectSelectTool.js +1 -1
  189. package/src/sap/ui/vk/tools/RedlineTool.js +1 -1
  190. package/src/sap/ui/vk/tools/RedlineToolGizmo.js +1 -1
  191. package/src/sap/ui/vk/tools/RotateOrbitTool.js +1 -1
  192. package/src/sap/ui/vk/tools/RotateTool.js +1 -1
  193. package/src/sap/ui/vk/tools/RotateToolGizmo.js +1 -1
  194. package/src/sap/ui/vk/tools/RotateTurntableTool.js +1 -1
  195. package/src/sap/ui/vk/tools/ScaleTool.js +1 -1
  196. package/src/sap/ui/vk/tools/ScaleToolGizmo.js +1 -1
  197. package/src/sap/ui/vk/tools/SceneOrientationTool.js +1 -1
  198. package/src/sap/ui/vk/tools/SceneOrientationToolGizmo.js +1 -1
  199. package/src/sap/ui/vk/tools/Tool.js +1 -1
  200. package/src/sap/ui/vk/tools/TooltipTool.js +1 -1
  201. package/src/sap/ui/vk/tools/TooltipToolGizmo.js +1 -1
  202. package/src/sap/ui/vk/tools/TransformSvgElementTool.js +1 -1
  203. package/src/sap/ui/vk/tools/TransformSvgElementToolGizmo.js +1 -1
  204. package/src/sap/ui/vk/totara/TotaraLoader.js +2 -2
  205. package/src/sap/ui/vk/totara/TotaraLoaderWorker.js +18 -21
  206. package/src/sap/ui/vk/ve/dvl.wasm +0 -0
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@sapui5/sap.ui.vk",
3
- "version": "1.120.8",
3
+ "version": "1.120.10",
4
4
  "description": "SAPUI5 Library sap.ui.vk",
5
5
  "homepage": "https://sap.github.io/ui5-tooling/pages/SAPUI5/",
6
6
  "author": "SAP SE (https://www.sap.com)",
@@ -7,7 +7,7 @@
7
7
 
8
8
  (c) Copyright 2009-2015 SAP SE. All rights reserved
9
9
  </copyright>
10
- <version>1.120.8</version>
10
+ <version>1.120.10</version>
11
11
 
12
12
  <documentation>SAPUI5 Visualization Toolkit.</documentation>
13
13
 
@@ -27,7 +27,7 @@ sap.ui.define([
27
27
  *
28
28
  * @private
29
29
  * @author SAP SE
30
- * @version 1.120.8
30
+ * @version 1.120.10
31
31
  * @extends sap.ui.base.EventProvider
32
32
  * @alias sap.ui.vk.AnimationPlayback
33
33
  * @experimental Since 1.67.0 This class is experimental and might be modified or removed in future versions.
@@ -33,7 +33,7 @@ sap.ui.define([
33
33
  *
34
34
  * @public
35
35
  * @author SAP SE
36
- * @version 1.120.8
36
+ * @version 1.120.10
37
37
  * @extends sap.ui.core.Element
38
38
  * @alias sap.ui.vk.AnimationPlayer
39
39
  * @experimental Since 1.67.0 This class is experimental and might be modified or removed in future versions.
@@ -33,7 +33,7 @@ sap.ui.define([
33
33
  *
34
34
  * @private
35
35
  * @author SAP SE
36
- * @version 1.120.8
36
+ * @version 1.120.10
37
37
  * @extends sap.ui.base.Object
38
38
  * @alias sap.ui.vk.AnimationSequence
39
39
  * @implements sap.ui.vk.IJointCollection
@@ -26,7 +26,7 @@ sap.ui.define([
26
26
  * @extends sap.m.Slider
27
27
  *
28
28
  * @author SAP SE
29
- * @version 1.120.8
29
+ * @version 1.120.10
30
30
  *
31
31
  * @constructor
32
32
  * @private
@@ -32,7 +32,7 @@ sap.ui.define([
32
32
  * @param {boolean} parameters.infinite infinite flag
33
33
  *
34
34
  * @author SAP SE
35
- * @version 1.120.8
35
+ * @version 1.120.10
36
36
  * @extends sap.ui.base.Object
37
37
  * @alias sap.ui.vk.AnimationTrack
38
38
  *
@@ -38,7 +38,7 @@ sap.ui.define([
38
38
  *
39
39
  * @public
40
40
  * @author SAP SE
41
- * @version 1.120.8
41
+ * @version 1.120.10
42
42
  * @extends sap.ui.core.Control
43
43
  * @alias sap.ui.vk.Annotation
44
44
  * @experimental Since 1.76.0 This class is experimental and might be modified or removed in future versions.
@@ -36,7 +36,7 @@ sap.ui.define([
36
36
  * @public
37
37
  * @abstract
38
38
  * @author SAP SE
39
- * @version 1.120.8
39
+ * @version 1.120.10
40
40
  * @extends sap.ui.base.Object
41
41
  * @implements sap.ui.base.Poolable, sap.ui.vk.BaseNodeProxy
42
42
  * @alias sap.ui.vk.BaseNodeProxy
@@ -23,7 +23,7 @@ sap.ui.define([
23
23
  * @public
24
24
  * @abstract
25
25
  * @author SAP SE
26
- * @version 1.120.8
26
+ * @version 1.120.10
27
27
  * @extends sap.ui.base.ManagedObject
28
28
  * @alias sap.ui.vk.Camera
29
29
  * @since 1.52.0
@@ -14,6 +14,7 @@ sap.ui.define([
14
14
  "./Messages",
15
15
  "./getResourceBundle",
16
16
  "./ContentResource",
17
+ "./ContentType",
17
18
  "./Core",
18
19
  "sap/base/Log"
19
20
  ], function(
@@ -24,6 +25,7 @@ sap.ui.define([
24
25
  Messages,
25
26
  getResourceBundle,
26
27
  ContentResource,
28
+ ContentType,
27
29
  vkCore,
28
30
  Log
29
31
  ) {
@@ -42,7 +44,7 @@ sap.ui.define([
42
44
  * @param {object} [mSettings] Initial settings for the new ContentConnector object.
43
45
  * @public
44
46
  * @author SAP SE
45
- * @version 1.120.8
47
+ * @version 1.120.10
46
48
  * @extends sap.ui.core.Element
47
49
  * @alias sap.ui.vk.ContentConnector
48
50
  */
@@ -693,7 +695,71 @@ sap.ui.define([
693
695
  return this;
694
696
  };
695
697
 
696
- var resolvers = [
698
+ // This function handles the cases when the content resource source type is "auto". In this case
699
+ // it is expected that the content resource has a source URL that points to a remote server that
700
+ // provides information about the content resource. The function sends a request to the server
701
+ // to get the content type and returns the content manager class name and dimension based on the
702
+ // content type.
703
+ //
704
+ // If the request fails or the content type is not recognized, the function returns `null`
705
+ // indicating that the next resolver should be tried.
706
+ async function autoResolver(contentResource) {
707
+ const sourceType = contentResource.getSourceType()?.toLowerCase();
708
+ const source = contentResource.getSource();
709
+ const veId = contentResource.getVeid() ?? "";
710
+
711
+ if (sourceType !== "auto" || typeof source !== "string" || veId === "") {
712
+ return null;
713
+ }
714
+
715
+ const url = `${source}${source.endsWith("/") ? "" : "/"}scenes/${veId}/info`;
716
+
717
+ try {
718
+ const response = await fetch(url);
719
+
720
+ if (!response.ok) {
721
+ return null;
722
+ }
723
+
724
+ const { contentType } = await response.json();
725
+
726
+ switch (contentType) {
727
+ case ContentType.IMAGE2D:
728
+ case ContentType.IMAGE360:
729
+ case ContentType.MATERIAL:
730
+ case ContentType.MODEL3D:
731
+ case ContentType.NAVIGATION:
732
+ case ContentType.SYMBOL:
733
+ contentResource.setEffectiveSourceType("stream");
734
+
735
+ return {
736
+ dimension: 3,
737
+ contentManagerClassName: "sap.ui.vk.threejs.ContentManager"
738
+ };
739
+
740
+ case ContentType.DRAWING2D:
741
+ contentResource.setEffectiveSourceType("stream2d");
742
+
743
+ return {
744
+ dimension: 2,
745
+ contentManagerClassName: "sap.ui.vk.svg.ContentManager"
746
+ };
747
+ case ContentType.ECAD:
748
+ case ContentType.PDF:
749
+ Log.error(`Content type ${contentType} is not supported`, "sap.ui.vk.ContentConnector");
750
+ return null;
751
+
752
+ default:
753
+ return null;
754
+ }
755
+ } catch (e) {
756
+ Log.error("Failed to resolve content resource type automatically.", e, "sap.ui.vk.ContentConnector");
757
+ }
758
+
759
+ return null;
760
+ }
761
+
762
+ const resolvers = [
697
763
  {
698
764
  pattern: /(^threejs[:.])|(^(threejs|stream|vds4)$)/,
699
765
  dimension: 3,
@@ -713,7 +779,8 @@ sap.ui.define([
713
779
  pattern: /^(stream2d|vds4-2d)$/,
714
780
  dimension: 2,
715
781
  contentManagerClassName: "sap.ui.vk.svg.ContentManager"
716
- }
782
+ },
783
+ autoResolver
717
784
  ];
718
785
 
719
786
  /**
@@ -737,53 +804,42 @@ sap.ui.define([
737
804
  * </pre>
738
805
  * @private
739
806
  */
740
- var resolveContentManager = function(contentResource) {
741
- return new Promise(function(resolve, reject) {
742
- var entries = resolvers.slice();
743
- var test = function(index) {
744
- if (index >= entries.length) {
745
- reject();
746
- return;
807
+ async function resolveContentManager(contentResource) {
808
+ const sourceType = contentResource.getSourceType()?.toLowerCase();
809
+
810
+ let resolver = null;
811
+
812
+ for (const entry of resolvers.slice()) {
813
+ if (typeof entry === "function") {
814
+ try {
815
+ resolver = await entry(contentResource);
816
+ break;
817
+ } catch {
818
+ continue;
747
819
  }
748
- var resolver = entries[index];
749
- (function() {
750
-
751
- var sourceType = contentResource.getSourceType();
752
- if (sourceType) {
753
- sourceType = sourceType.toLowerCase();
754
- }
755
-
756
- if (typeof resolver === "function") {
757
- return resolver(contentResource);
758
- } else if (typeof resolver.pattern === "string") {
759
- var patternLowerCase = resolver.pattern.toLowerCase();
760
- if (patternLowerCase === sourceType) {
761
- return Promise.resolve(resolver);
762
- }
763
- } else if (resolver.pattern instanceof RegExp) {
820
+ } else if (typeof entry.pattern === "string") {
821
+ if (entry.pattern.toLowerCase() === sourceType) {
822
+ resolver = entry;
823
+ break;
824
+ }
825
+ } else if (entry.pattern instanceof RegExp) {
826
+ if (entry.pattern.test(sourceType)) {
827
+ resolver = entry;
828
+ break;
829
+ }
830
+ }
831
+ }
764
832
 
765
- if (resolver.pattern.test(sourceType)) {
766
- return Promise.resolve(resolver);
767
- }
768
- }
769
- // Skip to the next resolver.
770
- return Promise.reject();
771
- })().then(
772
- function(value) { // onFulfilled
773
- resolve({
774
- dimension: value.dimension,
775
- contentManagerClassName: value.contentManagerClassName,
776
- settings: value.settings
777
- });
778
- },
779
- function() { // onRejected
780
- test(index + 1);
781
- }
782
- );
833
+ if (resolver == null) {
834
+ return null;
835
+ } else {
836
+ return {
837
+ dimension: resolver.dimension,
838
+ contentManagerClassName: resolver.contentManagerClassName,
839
+ settings: resolver.settings
783
840
  };
784
- test(0);
785
- });
786
- };
841
+ }
842
+ }
787
843
 
788
844
  /**
789
845
  * Adds a new content manager resolver.
@@ -1032,7 +1088,7 @@ sap.ui.define([
1032
1088
  * @private
1033
1089
  * @since 1.50.0
1034
1090
  */
1035
- ContentConnector.prototype._collectContentResourceSourceTypeInformation = function(contentResources) {
1091
+ ContentConnector.prototype._collectContentResourceSourceTypeInformation = async function(contentResources) {
1036
1092
  var noSourceTypes = false;
1037
1093
  var unknownSourceTypes = false;
1038
1094
  var dimensions = {};
@@ -1044,44 +1100,36 @@ sap.ui.define([
1044
1100
  contentResource.getContentResources().forEach(flatten);
1045
1101
  });
1046
1102
 
1047
- return Promise
1048
- .all(
1049
- flatList.map(
1050
- function(contentResource) {
1051
- return resolveContentManager(contentResource)
1052
- .then(
1053
- function(resolver) { // onFulfilled
1054
- dimensions[resolver.dimension] = true;
1055
- contentManagerClassNames[resolver.contentManagerClassName] = true;
1056
- return resolver;
1057
- },
1058
- function() { // onRejected
1059
- if (contentResource.getSourceType()) {
1060
- unknownSourceTypes = true;
1061
- } else {
1062
- noSourceTypes = true;
1063
- }
1064
- return false;
1065
- }
1066
- );
1067
- }
1068
- )
1069
- )
1070
- .then(function(results) {
1071
- for (var i = 0, count = flatList.length; i < count; ++i) {
1072
- if (results[i]) {
1073
- // Assign the resolver to the content resource.
1074
- // It might be used by those content managers that support additional settings.
1075
- flatList[i]._contentManagerResolver = results[i];
1076
- }
1103
+ const resolvers = await Promise.all(flatList.map(async function(contentResource) {
1104
+ const resolver = await resolveContentManager(contentResource);
1105
+
1106
+ if (resolver == null) {
1107
+ if (contentResource.getSourceType()) {
1108
+ unknownSourceTypes = true;
1109
+ } else {
1110
+ noSourceTypes = true;
1077
1111
  }
1078
- return {
1079
- noSourceTypes: noSourceTypes,
1080
- unknownSourceTypes: unknownSourceTypes,
1081
- dimensions: Object.getOwnPropertyNames(dimensions).sort(),
1082
- contentManagerClassNames: Object.getOwnPropertyNames(contentManagerClassNames)
1083
- };
1084
- });
1112
+ } else {
1113
+ dimensions[resolver.dimension] = true;
1114
+ contentManagerClassNames[resolver.contentManagerClassName] = true;
1115
+ }
1116
+ return resolver;
1117
+ }));
1118
+
1119
+ for (const [i, resolver] of resolvers.entries()) {
1120
+ if (resolver != null) {
1121
+ // Assign the resolver to the content resource.
1122
+ // It might be used by those content managers that support additional settings.
1123
+ flatList[i]._contentManagerResolver = resolver;
1124
+ }
1125
+ }
1126
+
1127
+ return {
1128
+ noSourceTypes: noSourceTypes,
1129
+ unknownSourceTypes: unknownSourceTypes,
1130
+ dimensions: Object.getOwnPropertyNames(dimensions).toSorted().map(Number),
1131
+ contentManagerClassNames: Object.getOwnPropertyNames(contentManagerClassNames)
1132
+ };
1085
1133
  };
1086
1134
 
1087
1135
  /**
@@ -26,7 +26,7 @@ sap.ui.define([
26
26
  * @protected
27
27
  * @abstract
28
28
  * @author SAP SE
29
- * @version 1.120.8
29
+ * @version 1.120.10
30
30
  * @extends sap.ui.base.ManagedObject
31
31
  * @alias sap.ui.vk.ContentManager
32
32
  * @since 1.50.0
@@ -27,7 +27,7 @@ sap.ui.define([
27
27
  * @param {object} [oScope] scope An object for resolving string-based type and formatter references in bindings.
28
28
  * @public
29
29
  * @author SAP SE
30
- * @version 1.120.8
30
+ * @version 1.120.10
31
31
  * @extends sap.ui.base.ManagedObject
32
32
  * @alias sap.ui.vk.ContentResource
33
33
  */
@@ -208,6 +208,8 @@ sap.ui.define([
208
208
 
209
209
  constructor: function(sId, mSettings, oScope) {
210
210
  ManagedObject.apply(this, arguments);
211
+
212
+ this._effectiveSourceType = undefined;
211
213
  }
212
214
  });
213
215
 
@@ -295,5 +297,13 @@ sap.ui.define([
295
297
  return categories;
296
298
  };
297
299
 
300
+ ContentResource.prototype.getEffectiveSourceType = function() {
301
+ return this._effectiveSourceType ?? this.getSourceType();
302
+ };
303
+
304
+ ContentResource.prototype.setEffectiveSourceType = function(effectiveSourceType) {
305
+ this._effectiveSourceType = effectiveSourceType;
306
+ };
307
+
298
308
  return ContentResource;
299
309
  });
@@ -0,0 +1,41 @@
1
+ /*!
2
+ * SAP UI development toolkit for HTML5 (SAPUI5)
3
+
4
+ (c) Copyright 2009-2015 SAP SE. All rights reserved
5
+
6
+ */
7
+
8
+ sap.ui.define([
9
+ "sap/ui/base/DataType"
10
+ ], function(
11
+ DataType
12
+ ) {
13
+ "use strict";
14
+
15
+ /**
16
+ * Defines the type of content in a scene.
17
+ *
18
+ * See VisualContentType in IPD Visualization API.
19
+ *
20
+ * @enum {string}
21
+ * @alias sap.ui.vk.ContentType
22
+ * @private
23
+ * @since 1.120.0
24
+ */
25
+ const ContentType = {
26
+ MODEL3D: "3DModel",
27
+ IMAGE2D: "2DImage",
28
+ IMAGE360: "360Image",
29
+ DRAWING2D: "2DDrawing",
30
+ NAVIGATION: "Navigation",
31
+ FOLDER: "Folder",
32
+ SYMBOL: "Symbol",
33
+ MATERIAL: "Material",
34
+ PDF: "PDF",
35
+ ECAD: "ECAD"
36
+ };
37
+
38
+ DataType.registerEnum("sap.ui.vk.ContentType", ContentType);
39
+
40
+ return ContentType;
41
+ });
@@ -39,7 +39,7 @@ sap.ui.define([
39
39
  * @final
40
40
  * @private
41
41
  * @author SAP SE
42
- * @version 1.120.8
42
+ * @version 1.120.10
43
43
  * @extends sap.ui.base.ManagedObject
44
44
  * @alias sap.ui.vk.Core
45
45
  * @since 1.50.0
@@ -37,7 +37,7 @@ sap.ui.define([
37
37
  * If left undefined, the number of retry attempts will default to 1. Passing in 0 disables any retry attempts.
38
38
  * @private
39
39
  * @author SAP SE
40
- * @version 1.120.8
40
+ * @version 1.120.10
41
41
  * @extends sap.ui.base.EventProvider
42
42
  * @alias sap.ui.vk.DownloadManager
43
43
  * @since 1.32.0
@@ -106,7 +106,7 @@ sap.ui.define([
106
106
  * @extends sap.ui.core.Control
107
107
  *
108
108
  * @author SAP
109
- * @version 1.120.8
109
+ * @version 1.120.10
110
110
  *
111
111
  * @public
112
112
  * @alias sap.ui.vk.DrawerToolbar
@@ -18,7 +18,7 @@ sap.ui.define(["sap/ui/base/Exception"], function(Exception) {
18
18
  * @param {string} message The error message.
19
19
  * @private
20
20
  * @author SAP SE
21
- * @version 1.120.8
21
+ * @version 1.120.10
22
22
  * @extends sap.ui.base.Exception
23
23
  * @alias sap.ui.vk.DvlException
24
24
  */
@@ -30,7 +30,7 @@ sap.ui.define([
30
30
  * @extends sap.ui.core.Control
31
31
  *
32
32
  * @author SAP SE
33
- * @version 1.120.8
33
+ * @version 1.120.10
34
34
  *
35
35
  * @constructor
36
36
  * @public
@@ -27,7 +27,7 @@ sap.ui.define([
27
27
  * (The CSS value "auto" is used internally to recalculate the size of the content
28
28
  * dynamically and is not directly set as style property.)
29
29
  * @extends sap.ui.core.LayoutData
30
- * @version 1.120.8
30
+ * @version 1.120.10
31
31
  *
32
32
  * @constructor
33
33
  * @public
@@ -26,7 +26,7 @@ sap.ui.define([
26
26
  *
27
27
  * @private
28
28
  * @author SAP SE
29
- * @version 1.120.8
29
+ * @version 1.120.10
30
30
  * @extends sap.ui.base.Object
31
31
  * @alias sap.ui.vk.Highlight
32
32
  * @since 1.73.0
@@ -27,7 +27,7 @@ sap.ui.define([
27
27
  * @param {object} [mSettings] Initial settings for the new ImageContentManager object.
28
28
  * @public
29
29
  * @author SAP SE
30
- * @version 1.120.8
30
+ * @version 1.120.10
31
31
  * @extends sap.ui.vk.ContentManager
32
32
  * @alias sap.ui.vk.ImageContentManager
33
33
  * @since 1.50.0
@@ -20,7 +20,7 @@ sap.ui.define([
20
20
  *
21
21
  * @private
22
22
  * @author SAP SE
23
- * @version 1.120.8
23
+ * @version 1.120.10
24
24
  * @alias sap.ui.vk.JointUtils
25
25
  * @since 1.74
26
26
  * @experimental Since 1.74 This class is experimental and might be modified or removed in future versions.
@@ -30,7 +30,7 @@ sap.ui.define([
30
30
  * @public
31
31
  * @abstract
32
32
  * @author SAP SE
33
- * @version 1.120.8
33
+ * @version 1.120.10
34
34
  * @extends sap.ui.base.Object
35
35
  * @alias sap.ui.vk.LayerProxy
36
36
  */
@@ -35,7 +35,7 @@ sap.ui.define([
35
35
  * @extends sap.ui.base.EventProvider
36
36
  *
37
37
  * @author SAP SE
38
- * @version 1.120.8
38
+ * @version 1.120.10
39
39
  *
40
40
  * @constructor
41
41
  * @public
@@ -23,7 +23,7 @@ sap.ui.define([
23
23
  *
24
24
  * @public
25
25
  * @author SAP SE
26
- * @version 1.120.8
26
+ * @version 1.120.10
27
27
  * @extends sap.ui.base.ManagedObject
28
28
  * @alias sap.ui.vk.Material
29
29
  * @experimental Since 1.60.0 This class is experimental and might be modified or removed in future versions.
@@ -48,7 +48,7 @@ sap.ui.define([
48
48
  *
49
49
  * @extends sap.ui.vk.ViewportBase
50
50
  * @author SAP SE
51
- * @version 1.120.8
51
+ * @version 1.120.10
52
52
  * @constructor
53
53
  * @public
54
54
  * @alias sap.ui.vk.NativeViewport
@@ -36,7 +36,7 @@ sap.ui.define([
36
36
  * @public
37
37
  * @abstract
38
38
  * @author SAP SE
39
- * @version 1.120.8
39
+ * @version 1.120.10
40
40
  * @extends sap.ui.base.ManagedObject
41
41
  * @alias sap.ui.vk.NodeHierarchy
42
42
  */
@@ -24,7 +24,7 @@ sap.ui.define([
24
24
  *
25
25
  * @public
26
26
  * @author SAP SE
27
- * @version 1.120.8
27
+ * @version 1.120.10
28
28
  * @extends sap.ui.base.ManagedObject
29
29
  * @alias sap.ui.vk.NodeProxy
30
30
  * @since 1.32.0
@@ -15,7 +15,7 @@ sap.ui.define([
15
15
  *
16
16
  * @private
17
17
  * @author SAP SE
18
- * @version 1.120.8
18
+ * @version 1.120.10
19
19
  * @alias sap.ui.vk.NodeUtils
20
20
  * @since 1.74
21
21
  * @experimental Since 1.74 This class is experimental and might be modified or removed in future versions.
@@ -45,7 +45,7 @@ sap.ui.define([
45
45
  * @param {object} [mSettings] Initial settings for the new Notifications control.
46
46
  * @public
47
47
  * @author SAP SE
48
- * @version 1.120.8
48
+ * @version 1.120.10
49
49
  * @extends sap.ui.core.Control
50
50
  * @alias sap.ui.vk.Notifications
51
51
  * @since 1.38.0
@@ -22,7 +22,7 @@ sap.ui.define([
22
22
  *
23
23
  * @public
24
24
  * @author SAP SE
25
- * @version 1.120.8
25
+ * @version 1.120.10
26
26
  * @extends sap.ui.vk.Camera
27
27
  * @alias sap.ui.vk.OrthographicCamera
28
28
  * @since 1.52.0
@@ -22,7 +22,7 @@ sap.ui.define([
22
22
  *
23
23
  * @public
24
24
  * @author SAP SE
25
- * @version 1.120.8
25
+ * @version 1.120.10
26
26
  * @extends sap.ui.vk.Camera
27
27
  * @alias sap.ui.vk.PerspectiveCamera
28
28
  * @since 1.52.0
@@ -27,7 +27,7 @@ sap.ui.define([
27
27
  * @extends sap.m.ProgressIndicator
28
28
  *
29
29
  * @author SAP SE
30
- * @version 1.120.8
30
+ * @version 1.120.10
31
31
  *
32
32
  * @constructor
33
33
  * @public
@@ -32,7 +32,7 @@ sap.ui.define([
32
32
  *
33
33
  * @public
34
34
  * @author SAP SE
35
- * @version 1.120.8s
35
+ * @version 1.120.10s
36
36
  * @extends sap.ui.core.Element
37
37
  * @alias sap.ui.vk.RedlineCollaboration
38
38
  * @since 1.89.0