@openui5/sap.m 1.71.74 → 1.71.75

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 (285) hide show
  1. package/package.json +4 -4
  2. package/src/sap/m/.library +1 -1
  3. package/src/sap/m/AccButton.js +1 -1
  4. package/src/sap/m/ActionListItem.js +1 -1
  5. package/src/sap/m/ActionSelect.js +1 -1
  6. package/src/sap/m/ActionSheet.js +1 -1
  7. package/src/sap/m/App.js +1 -1
  8. package/src/sap/m/AssociativeOverflowToolbar.js +1 -1
  9. package/src/sap/m/Bar.js +1 -1
  10. package/src/sap/m/Breadcrumbs.js +1 -1
  11. package/src/sap/m/BusyDialog.js +1 -1
  12. package/src/sap/m/BusyIndicator.js +1 -1
  13. package/src/sap/m/Button.js +1 -1
  14. package/src/sap/m/Carousel.js +1 -1
  15. package/src/sap/m/CarouselLayout.js +1 -1
  16. package/src/sap/m/CheckBox.js +1 -1
  17. package/src/sap/m/ColorPalette.js +1 -1
  18. package/src/sap/m/ColorPalettePopover.js +1 -1
  19. package/src/sap/m/Column.js +1 -1
  20. package/src/sap/m/ColumnHeaderPopover.js +1 -1
  21. package/src/sap/m/ColumnListItem.js +1 -1
  22. package/src/sap/m/ColumnPopoverActionItem.js +1 -1
  23. package/src/sap/m/ColumnPopoverCustomItem.js +1 -1
  24. package/src/sap/m/ColumnPopoverItem.js +1 -1
  25. package/src/sap/m/ColumnPopoverSortItem.js +1 -1
  26. package/src/sap/m/ComboBox.js +1 -1
  27. package/src/sap/m/ComboBoxBase.js +1 -1
  28. package/src/sap/m/ComboBoxTextField.js +1 -1
  29. package/src/sap/m/CustomListItem.js +1 -1
  30. package/src/sap/m/CustomTile.js +1 -1
  31. package/src/sap/m/CustomTreeItem.js +1 -1
  32. package/src/sap/m/DatePicker.js +1 -1
  33. package/src/sap/m/DateRangeSelection.js +2 -2
  34. package/src/sap/m/DateTimeField.js +1 -1
  35. package/src/sap/m/DateTimeInput.js +1 -1
  36. package/src/sap/m/DateTimePicker.js +1 -1
  37. package/src/sap/m/Dialog.js +1 -1
  38. package/src/sap/m/DisplayListItem.js +1 -1
  39. package/src/sap/m/DraftIndicator.js +1 -1
  40. package/src/sap/m/FacetFilter.js +1 -1
  41. package/src/sap/m/FacetFilterItem.js +1 -1
  42. package/src/sap/m/FacetFilterList.js +1 -1
  43. package/src/sap/m/FeedContent.js +1 -1
  44. package/src/sap/m/FeedInput.js +1 -1
  45. package/src/sap/m/FeedListItem.js +1 -1
  46. package/src/sap/m/FeedListItemAction.js +1 -1
  47. package/src/sap/m/Fiori20Adapter.js +2 -2
  48. package/src/sap/m/FlexBox.js +1 -1
  49. package/src/sap/m/FlexItemData.js +1 -1
  50. package/src/sap/m/FormattedText.js +1 -1
  51. package/src/sap/m/GenericTag.js +1 -1
  52. package/src/sap/m/GenericTile.js +1 -1
  53. package/src/sap/m/GroupHeaderListItem.js +1 -1
  54. package/src/sap/m/GrowingList.js +1 -1
  55. package/src/sap/m/HBox.js +1 -1
  56. package/src/sap/m/HeaderContainer.js +1 -1
  57. package/src/sap/m/HeaderContainerItemNavigator.js +1 -1
  58. package/src/sap/m/IconTabBar.js +1 -1
  59. package/src/sap/m/IconTabBarSelectList.js +1 -1
  60. package/src/sap/m/IconTabFilter.js +1 -1
  61. package/src/sap/m/IconTabHeader.js +1 -1
  62. package/src/sap/m/IconTabSeparator.js +1 -1
  63. package/src/sap/m/Image.js +1 -1
  64. package/src/sap/m/ImageContent.js +1 -1
  65. package/src/sap/m/Input.js +1 -1
  66. package/src/sap/m/InputBase.js +1 -1
  67. package/src/sap/m/InputListItem.js +1 -1
  68. package/src/sap/m/Label.js +1 -1
  69. package/src/sap/m/LightBox.js +1 -1
  70. package/src/sap/m/LightBoxItem.js +1 -1
  71. package/src/sap/m/Link.js +1 -1
  72. package/src/sap/m/List.js +1 -1
  73. package/src/sap/m/ListBase.js +1 -1
  74. package/src/sap/m/ListItemBase.js +1 -1
  75. package/src/sap/m/MaskEnabler.js +1 -1
  76. package/src/sap/m/MaskInput.js +1 -1
  77. package/src/sap/m/MaskInputRule.js +1 -1
  78. package/src/sap/m/Menu.js +1 -1
  79. package/src/sap/m/MenuButton.js +1 -1
  80. package/src/sap/m/MenuItem.js +1 -1
  81. package/src/sap/m/MenuListItem.js +1 -1
  82. package/src/sap/m/MessageItem.js +1 -1
  83. package/src/sap/m/MessageListItem.js +1 -1
  84. package/src/sap/m/MessagePage.js +1 -1
  85. package/src/sap/m/MessagePopover.js +1 -1
  86. package/src/sap/m/MessagePopoverItem.js +1 -1
  87. package/src/sap/m/MessageStrip.js +1 -1
  88. package/src/sap/m/MessageToast.js +1 -1
  89. package/src/sap/m/MessageView.js +1 -1
  90. package/src/sap/m/MultiComboBox.js +1 -1
  91. package/src/sap/m/MultiEditField.js +1 -1
  92. package/src/sap/m/MultiInput.js +1 -1
  93. package/src/sap/m/NavContainer.js +1 -1
  94. package/src/sap/m/NewsContent.js +1 -1
  95. package/src/sap/m/NotificationListBase.js +1 -1
  96. package/src/sap/m/NotificationListGroup.js +1 -1
  97. package/src/sap/m/NotificationListItem.js +1 -1
  98. package/src/sap/m/NumericContent.js +1 -1
  99. package/src/sap/m/ObjectAttribute.js +1 -1
  100. package/src/sap/m/ObjectHeader.js +1 -1
  101. package/src/sap/m/ObjectIdentifier.js +1 -1
  102. package/src/sap/m/ObjectListItem.js +1 -1
  103. package/src/sap/m/ObjectMarker.js +1 -1
  104. package/src/sap/m/ObjectNumber.js +1 -1
  105. package/src/sap/m/ObjectStatus.js +1 -1
  106. package/src/sap/m/OverflowToolbar.js +1 -1
  107. package/src/sap/m/OverflowToolbarAssociativePopover.js +1 -1
  108. package/src/sap/m/OverflowToolbarButton.js +1 -1
  109. package/src/sap/m/OverflowToolbarLayoutData.js +1 -1
  110. package/src/sap/m/OverflowToolbarToggleButton.js +1 -1
  111. package/src/sap/m/P13nAnyFilterItem.js +1 -1
  112. package/src/sap/m/P13nColumnsItem.js +1 -1
  113. package/src/sap/m/P13nColumnsPanel.js +1 -1
  114. package/src/sap/m/P13nConditionPanel.js +1 -1
  115. package/src/sap/m/P13nDialog.js +1 -1
  116. package/src/sap/m/P13nDimMeasureItem.js +1 -1
  117. package/src/sap/m/P13nDimMeasurePanel.js +1 -1
  118. package/src/sap/m/P13nFilterItem.js +1 -1
  119. package/src/sap/m/P13nFilterPanel.js +1 -1
  120. package/src/sap/m/P13nGroupItem.js +1 -1
  121. package/src/sap/m/P13nGroupPanel.js +1 -1
  122. package/src/sap/m/P13nItem.js +1 -1
  123. package/src/sap/m/P13nPanel.js +1 -1
  124. package/src/sap/m/P13nSelectionItem.js +1 -1
  125. package/src/sap/m/P13nSelectionPanel.js +1 -1
  126. package/src/sap/m/P13nSortItem.js +1 -1
  127. package/src/sap/m/P13nSortPanel.js +1 -1
  128. package/src/sap/m/PDFViewer.js +68 -41
  129. package/src/sap/m/Page.js +1 -1
  130. package/src/sap/m/PageAccessibleLandmarkInfo.js +1 -1
  131. package/src/sap/m/PagingButton.js +1 -1
  132. package/src/sap/m/Panel.js +1 -1
  133. package/src/sap/m/PlanningCalendar.js +1 -1
  134. package/src/sap/m/PlanningCalendarHeader.js +1 -1
  135. package/src/sap/m/PlanningCalendarLegend.js +1 -1
  136. package/src/sap/m/PlanningCalendarRow.js +1 -1
  137. package/src/sap/m/PlanningCalendarView.js +1 -1
  138. package/src/sap/m/Popover.js +1 -1
  139. package/src/sap/m/ProgressIndicator.js +1 -1
  140. package/src/sap/m/PullToRefresh.js +1 -1
  141. package/src/sap/m/QuickView.js +1 -1
  142. package/src/sap/m/QuickViewBase.js +1 -1
  143. package/src/sap/m/QuickViewCard.js +1 -1
  144. package/src/sap/m/QuickViewGroup.js +1 -1
  145. package/src/sap/m/QuickViewGroupElement.js +1 -1
  146. package/src/sap/m/QuickViewPage.js +1 -1
  147. package/src/sap/m/RadioButton.js +1 -1
  148. package/src/sap/m/RadioButtonGroup.js +1 -1
  149. package/src/sap/m/RangeSlider.js +1 -1
  150. package/src/sap/m/RatingIndicator.js +1 -1
  151. package/src/sap/m/ResponsivePopover.js +1 -1
  152. package/src/sap/m/ResponsiveScale.js +1 -1
  153. package/src/sap/m/ScrollBar.js +1 -1
  154. package/src/sap/m/ScrollContainer.js +1 -1
  155. package/src/sap/m/SearchField.js +1 -1
  156. package/src/sap/m/SegmentedButton.js +1 -1
  157. package/src/sap/m/SegmentedButtonItem.js +1 -1
  158. package/src/sap/m/Select.js +1 -1
  159. package/src/sap/m/SelectDialog.js +1 -1
  160. package/src/sap/m/SelectList.js +1 -1
  161. package/src/sap/m/SelectionDetails.js +1 -1
  162. package/src/sap/m/SelectionDetailsFacade.js +2 -2
  163. package/src/sap/m/SelectionDetailsItem.js +1 -1
  164. package/src/sap/m/SelectionDetailsItemLine.js +1 -1
  165. package/src/sap/m/Shell.js +1 -1
  166. package/src/sap/m/SimpleFixFlex.js +1 -1
  167. package/src/sap/m/SinglePlanningCalendar.js +1 -1
  168. package/src/sap/m/SinglePlanningCalendarDayView.js +1 -1
  169. package/src/sap/m/SinglePlanningCalendarGrid.js +1 -1
  170. package/src/sap/m/SinglePlanningCalendarMonthGrid.js +1 -1
  171. package/src/sap/m/SinglePlanningCalendarMonthView.js +1 -1
  172. package/src/sap/m/SinglePlanningCalendarView.js +1 -1
  173. package/src/sap/m/SinglePlanningCalendarWeekView.js +1 -1
  174. package/src/sap/m/SinglePlanningCalendarWorkWeekView.js +1 -1
  175. package/src/sap/m/SlideTile.js +1 -1
  176. package/src/sap/m/Slider.js +1 -1
  177. package/src/sap/m/SliderTooltip.js +1 -1
  178. package/src/sap/m/SliderTooltipBase.js +1 -1
  179. package/src/sap/m/SliderTooltipContainer.js +1 -1
  180. package/src/sap/m/SplitApp.js +1 -1
  181. package/src/sap/m/SplitButton.js +1 -1
  182. package/src/sap/m/SplitContainer.js +1 -1
  183. package/src/sap/m/StandardListItem.js +1 -1
  184. package/src/sap/m/StandardTile.js +1 -1
  185. package/src/sap/m/StandardTreeItem.js +1 -1
  186. package/src/sap/m/StepInput.js +1 -1
  187. package/src/sap/m/SuggestionItem.js +1 -1
  188. package/src/sap/m/SuggestionsPopover.js +1 -1
  189. package/src/sap/m/Switch.js +1 -1
  190. package/src/sap/m/TabContainer.js +1 -1
  191. package/src/sap/m/TabContainerItem.js +1 -1
  192. package/src/sap/m/TabStrip.js +1 -1
  193. package/src/sap/m/TabStripItem.js +1 -1
  194. package/src/sap/m/Table.js +1 -1
  195. package/src/sap/m/TablePersoController.js +1 -1
  196. package/src/sap/m/TablePersoDialog.js +1 -1
  197. package/src/sap/m/TablePersoProvider.js +1 -1
  198. package/src/sap/m/TableSelectDialog.js +1 -1
  199. package/src/sap/m/Text.js +1 -1
  200. package/src/sap/m/TextArea.js +1 -1
  201. package/src/sap/m/Tile.js +1 -1
  202. package/src/sap/m/TileContainer.js +1 -1
  203. package/src/sap/m/TileContent.js +1 -1
  204. package/src/sap/m/TimePicker.js +1 -1
  205. package/src/sap/m/TimePickerSlider.js +1 -1
  206. package/src/sap/m/TimePickerSliders.js +1 -1
  207. package/src/sap/m/Title.js +1 -1
  208. package/src/sap/m/TitlePropagationSupport.js +1 -1
  209. package/src/sap/m/ToggleButton.js +1 -1
  210. package/src/sap/m/Token.js +1 -1
  211. package/src/sap/m/Tokenizer.js +1 -1
  212. package/src/sap/m/Toolbar.js +1 -1
  213. package/src/sap/m/ToolbarLayoutData.js +1 -1
  214. package/src/sap/m/ToolbarSeparator.js +1 -1
  215. package/src/sap/m/ToolbarSpacer.js +1 -1
  216. package/src/sap/m/Tree.js +1 -1
  217. package/src/sap/m/TreeItemBase.js +1 -1
  218. package/src/sap/m/UploadCollection.js +1 -1
  219. package/src/sap/m/UploadCollectionItem.js +1 -1
  220. package/src/sap/m/UploadCollectionParameter.js +1 -1
  221. package/src/sap/m/UploadCollectionToolbarPlaceholder.js +1 -1
  222. package/src/sap/m/VBox.js +1 -1
  223. package/src/sap/m/ViewSettingsCustomItem.js +1 -1
  224. package/src/sap/m/ViewSettingsCustomTab.js +1 -1
  225. package/src/sap/m/ViewSettingsDialog.js +1 -1
  226. package/src/sap/m/ViewSettingsFilterItem.js +1 -1
  227. package/src/sap/m/ViewSettingsItem.js +1 -1
  228. package/src/sap/m/VisibleItem.js +1 -1
  229. package/src/sap/m/Wizard.js +1 -1
  230. package/src/sap/m/WizardProgressNavigator.js +1 -1
  231. package/src/sap/m/WizardStep.js +1 -1
  232. package/src/sap/m/changeHandler/AddTableColumn.js +1 -1
  233. package/src/sap/m/changeHandler/ChangeLinkTarget.js +1 -1
  234. package/src/sap/m/changeHandler/CombineButtons.js +1 -1
  235. package/src/sap/m/changeHandler/MoveTableColumns.js +1 -1
  236. package/src/sap/m/changeHandler/SplitMenuButton.js +1 -1
  237. package/src/sap/m/designtime/messagebundle_ko.properties +1 -1
  238. package/src/sap/m/library.js +2 -2
  239. package/src/sap/m/messagebundle_fr.properties +1 -1
  240. package/src/sap/m/messagebundle_hr.properties +1 -1
  241. package/src/sap/m/messagebundle_ko.properties +1 -1
  242. package/src/sap/m/messagebundle_pl.properties +2 -2
  243. package/src/sap/m/messagebundle_ro.properties +2 -2
  244. package/src/sap/m/messagebundle_uk.properties +2 -2
  245. package/src/sap/m/semantic/AddAction.js +1 -1
  246. package/src/sap/m/semantic/CancelAction.js +1 -1
  247. package/src/sap/m/semantic/DeleteAction.js +1 -1
  248. package/src/sap/m/semantic/DetailPage.js +1 -1
  249. package/src/sap/m/semantic/DiscussInJamAction.js +1 -1
  250. package/src/sap/m/semantic/EditAction.js +1 -1
  251. package/src/sap/m/semantic/FavoriteAction.js +1 -1
  252. package/src/sap/m/semantic/FilterAction.js +1 -1
  253. package/src/sap/m/semantic/FilterSelect.js +1 -1
  254. package/src/sap/m/semantic/FlagAction.js +1 -1
  255. package/src/sap/m/semantic/ForwardAction.js +1 -1
  256. package/src/sap/m/semantic/FullscreenPage.js +1 -1
  257. package/src/sap/m/semantic/GroupAction.js +1 -1
  258. package/src/sap/m/semantic/GroupSelect.js +1 -1
  259. package/src/sap/m/semantic/MainAction.js +1 -1
  260. package/src/sap/m/semantic/MasterPage.js +1 -1
  261. package/src/sap/m/semantic/MessagesIndicator.js +1 -1
  262. package/src/sap/m/semantic/MultiSelectAction.js +1 -1
  263. package/src/sap/m/semantic/NegativeAction.js +1 -1
  264. package/src/sap/m/semantic/OpenInAction.js +1 -1
  265. package/src/sap/m/semantic/PositiveAction.js +1 -1
  266. package/src/sap/m/semantic/PrintAction.js +1 -1
  267. package/src/sap/m/semantic/SaveAction.js +1 -1
  268. package/src/sap/m/semantic/Segment.js +1 -1
  269. package/src/sap/m/semantic/SegmentedContainer.js +1 -1
  270. package/src/sap/m/semantic/SemanticButton.js +1 -1
  271. package/src/sap/m/semantic/SemanticConfiguration.js +1 -1
  272. package/src/sap/m/semantic/SemanticControl.js +1 -1
  273. package/src/sap/m/semantic/SemanticOverflowToolbarButton.js +1 -1
  274. package/src/sap/m/semantic/SemanticPage.js +1 -1
  275. package/src/sap/m/semantic/SemanticSelect.js +1 -1
  276. package/src/sap/m/semantic/SemanticToggleButton.js +1 -1
  277. package/src/sap/m/semantic/SendEmailAction.js +1 -1
  278. package/src/sap/m/semantic/SendMessageAction.js +1 -1
  279. package/src/sap/m/semantic/ShareInJamAction.js +1 -1
  280. package/src/sap/m/semantic/ShareMenu.js +1 -1
  281. package/src/sap/m/semantic/ShareMenuPage.js +1 -1
  282. package/src/sap/m/semantic/SortAction.js +1 -1
  283. package/src/sap/m/semantic/SortSelect.js +1 -1
  284. package/src/sap/m/upload/UploadSet.js +1 -1
  285. package/src/sap/m/upload/UploadSetItem.js +1 -1
@@ -17,7 +17,7 @@ sap.ui.define([
17
17
  * @param {object} [mSettings] initial settings for the new control
18
18
  * @class Type for <code>sortItems</code> aggregation in P13nSortPanel control.
19
19
  * @extends sap.ui.core.Item
20
- * @version 1.71.74
20
+ * @version 1.71.75
21
21
  * @constructor
22
22
  * @public
23
23
  * @since 1.26.0
@@ -26,7 +26,7 @@ sap.ui.define([
26
26
  * @param {object} [mSettings] initial settings for the new control
27
27
  * @class The P13nSortPanel control is used to define settings for sorting in table personalization.
28
28
  * @extends sap.m.P13nPanel
29
- * @version 1.71.74
29
+ * @version 1.71.75
30
30
  * @constructor
31
31
  * @public
32
32
  * @since 1.26.0
@@ -16,7 +16,7 @@ sap.ui.define([
16
16
  "sap/base/security/URLWhitelist",
17
17
  "sap/ui/thirdparty/jquery"
18
18
  ],
19
- function(
19
+ function (
20
20
  library,
21
21
  Control,
22
22
  Device,
@@ -45,7 +45,7 @@ sap.ui.define([
45
45
  * @extends sap.ui.core.Control
46
46
  *
47
47
  * @author SAP SE
48
- * @version 1.71.74
48
+ * @version 1.71.75
49
49
  * @since 1.48
50
50
  *
51
51
  * @constructor
@@ -64,12 +64,12 @@ sap.ui.define([
64
64
  * Defines the height of the PDF viewer control, respective to the height of
65
65
  * the parent container. Can be set to a percent, pixel, or em value.
66
66
  */
67
- height: {type: "sap.ui.core.CSSSize", group: "Dimension", defaultValue: "100%"},
67
+ height: { type: "sap.ui.core.CSSSize", group: "Dimension", defaultValue: "100%" },
68
68
  /**
69
69
  * Defines the width of the PDF viewer control, respective to the width of the
70
70
  * parent container. Can be set to a percent, pixel, or em value.
71
71
  */
72
- width: {type: "sap.ui.core.CSSSize", group: "Dimension", defaultValue: "100%"},
72
+ width: { type: "sap.ui.core.CSSSize", group: "Dimension", defaultValue: "100%" },
73
73
  /**
74
74
  * Specifies the path to the PDF file to display. Can be set to a relative or
75
75
  * an absolute path.<br>
@@ -77,34 +77,42 @@ sap.ui.define([
77
77
  * in all major web browsers except Internet Explorer and Microsoft Edge, provided
78
78
  * that this data URI or blob URL is whitelisted in advance. For more information about
79
79
  * whitelisting, see {@link topic:91f3768f6f4d1014b6dd926db0e91070 URL Whitelist Filtering}.
80
+ *
81
+ * <h3>Source Validation</h3>
82
+ * When the source is set, the PDFViewer automatically validates the resource using a GET request
83
+ * to ensure it exists and is accessible. This validation:
84
+ * <ul>
85
+ * <li>Prevents loading invalid or non-existent PDF files</li>
86
+ * <li>If validation fails, error content is displayed instead of attempting PDF load</li>
87
+ * </ul>
80
88
  */
81
- source: {type: "sap.ui.core.URI", group: "Misc", defaultValue: null},
89
+ source: { type: "sap.ui.core.URI", group: "Misc", defaultValue: null },
82
90
  /**
83
91
  * A custom error message that is displayed when the PDF file cannot be loaded.
84
92
  * @deprecated As of version 1.50.0, replaced by {@link sap.m.PDFViewer#getErrorPlaceholderMessage}.
85
93
  */
86
- errorMessage: {type: "string", group: "Misc", defaultValue: null, deprecated: true},
94
+ errorMessage: { type: "string", group: "Misc", defaultValue: null, deprecated: true },
87
95
  /**
88
96
  * A custom text that is displayed instead of the PDF file content when the PDF
89
97
  * file cannot be loaded.
90
98
  */
91
- errorPlaceholderMessage: {type: "string", group: "Misc", defaultValue: null},
99
+ errorPlaceholderMessage: { type: "string", group: "Misc", defaultValue: null },
92
100
  /**
93
101
  * A custom title for the PDF viewer popup dialog. Works only if the PDF viewer
94
102
  * is set to open in a popup dialog.
95
103
  * @deprecated As of version 1.50.0, replaced by {@link sap.m.PDFViewer#getTitle}.
96
104
  */
97
- popupHeaderTitle: {type: "string", group: "Misc", defaultValue: null, deprecated: true},
105
+ popupHeaderTitle: { type: "string", group: "Misc", defaultValue: null, deprecated: true },
98
106
 
99
107
  /**
100
108
  * A custom title for the PDF viewer.
101
109
  */
102
- title: {type: "string", group: "Misc", defaultValue: null},
110
+ title: { type: "string", group: "Misc", defaultValue: null },
103
111
 
104
112
  /**
105
113
  * Shows or hides the download button.
106
114
  */
107
- showDownloadButton: {type: "boolean", group: "Misc", defaultValue: true},
115
+ showDownloadButton: { type: "boolean", group: "Misc", defaultValue: true },
108
116
 
109
117
  /**
110
118
  * Defines how the PDF viewer should be displayed.
@@ -126,25 +134,25 @@ sap.ui.define([
126
134
  * </li>
127
135
  * </ul>
128
136
  */
129
- displayType: {type: "sap.m.PDFViewerDisplayType", group: "Misc", defaultValue: PDFViewerDisplayType.Auto},
137
+ displayType: { type: "sap.m.PDFViewerDisplayType", group: "Misc", defaultValue: PDFViewerDisplayType.Auto },
130
138
  /**
131
139
  * Parameter to determine if the given PDF is from a trusted source. If the source is valid this property can be set to true.
132
140
  * If isTrustedSource is set to true, the PDFViewer opens with the displayType set to "Embedded" on desktop devices. This means that the PDF content is directly shown within the PDFViewer. Set this property to true only when the PDF is generated by the application or the PDF is scanned for viruses.
133
141
  * If isTrustedSource is set to false, the PDFViewer opens with the displayType set to "Link" on desktop devices. This means that any configuration that has been provided by the application for the property displayType is overridden. In this case, the user would need to download the PDF to view its content.
134
142
  */
135
- isTrustedSource: {type: "boolean", group: "Misc", defaultValue: false}
143
+ isTrustedSource: { type: "boolean", group: "Misc", defaultValue: false }
136
144
  },
137
145
  aggregations: {
138
146
  /**
139
147
  * A custom control that can be used instead of the error message specified by the
140
148
  * errorPlaceholderMessage property.
141
149
  */
142
- errorPlaceholder: {type: "sap.ui.core.Control", multiple: false},
150
+ errorPlaceholder: { type: "sap.ui.core.Control", multiple: false },
143
151
  /**
144
152
  * A multiple aggregation for buttons that can be added to the footer of the popup
145
153
  * dialog. Works only if the PDF viewer is set to open in a popup dialog.
146
154
  */
147
- popupButtons: {type: "sap.m.Button", multiple: true, singularName: "popupButton"},
155
+ popupButtons: { type: "sap.m.Button", multiple: true, singularName: "popupButton" },
148
156
  /**
149
157
  * A message page is displayed when the property isTrustedSource = false
150
158
  * @private
@@ -162,7 +170,7 @@ sap.ui.define([
162
170
  * This event is fired when there is an error loading the PDF file.
163
171
  */
164
172
  error: {
165
- parameters : {
173
+ parameters: {
166
174
  /**
167
175
  * The iframe element.
168
176
  */
@@ -358,38 +366,42 @@ sap.ui.define([
358
366
  * @private
359
367
  * Handles the iframe load event for PDFViewer.
360
368
  * - Checks if PDF plugin is enabled, fires error if not.
361
- * - Tries to access children of the iframe document body.
362
- * - If children exist, checks for embed tag to validate PDF rendering.
363
- * - Fires loaded event if valid, error event otherwise.
369
+ * - Validates the PDF source using a GET request to ensure accessibility.
370
+ * - Fires loaded event if validation succeeds, error event otherwise.
364
371
  * - Catches and logs any unexpected errors, fires error event in such cases.
365
372
  */
366
- PDFViewer.prototype._onLoadListener = function (oEvent) {
373
+ PDFViewer.prototype._onLoadListener = function (oEvent) {
367
374
  try {
368
375
  // Check if PDF plugin is enabled
369
376
  if (PDFViewerRenderer._isPdfPluginEnabled()) {
370
- var bContinue = true;
371
- var oTarget = jQuery(oEvent.target);
372
- try {
373
- // Try to access children of the iframe document body
374
- var oContentWindow = oTarget[0] && oTarget[0].contentWindow;
375
- var oDocumentBody = oContentWindow && oContentWindow.document && oContentWindow.document.body;
376
- var aTargetChildren = oDocumentBody && oDocumentBody.children;
377
- } catch (error) {
378
- // If access fails, log warning and treat as no children
379
- aTargetChildren = [];
380
- Log.warning("Error in fetching children entity for given source of PDFViewer.");
381
- }
382
- // If children exist, check for embed tag
383
- if (aTargetChildren && aTargetChildren.length) {
384
- var oContentWindow = oTarget[0] && oTarget[0].contentWindow;
385
- var oDocument = oContentWindow && oContentWindow.document;
386
- var aEmbeds = oDocument && oDocument.embeds;
387
- bContinue = !!aEmbeds && aEmbeds.length === 1;
388
- }
389
- // If valid PDF rendering, fire loaded event; else, fire error event
390
- if (bContinue) {
391
- this._fireLoadedEvent();
377
+ // Validate source using GET request when iframe loads
378
+ var sSource = this.getSource();
379
+ if (sSource) {
380
+ // Skip validation for data URIs and blob URLs as they may not work with fetch
381
+ // or would waste bandwidth by re-downloading embedded data
382
+ if (this._isDataUriOrBlob(sSource)) {
383
+ // For data URIs and blob URLs, assume valid and fire loaded event
384
+ this._fireLoadedEvent();
385
+ } else {
386
+ try {
387
+ // Source validation using GET request to check resource existence
388
+ // Simple and universally compatible approach without Range headers
389
+ window.fetch(sSource, { method: "GET" })
390
+ .then(function (response) {
391
+ if (response.ok) {
392
+ this._fireLoadedEvent();
393
+ } else {
394
+ this._fireErrorEvent(oEvent.target);
395
+ }
396
+ }.bind(this)).catch(function () {
397
+ this._fireErrorEvent(oEvent.target);
398
+ }.bind(this));
399
+ } catch (error) {
400
+ this._fireErrorEvent(oEvent.target);
401
+ }
402
+ }
392
403
  } else {
404
+ // No valid source, fire error event
393
405
  this._fireErrorEvent(oEvent.target);
394
406
  }
395
407
  } else {
@@ -404,6 +416,21 @@ sap.ui.define([
404
416
  }
405
417
  };
406
418
 
419
+ /**
420
+ * Checks if the source is a data URI or blob URL
421
+ * @param {string} sSource The source URL to check
422
+ * @returns {boolean} true if source is data URI or blob URL
423
+ * @private
424
+ */
425
+ PDFViewer.prototype._isDataUriOrBlob = function (sSource) {
426
+ if (!sSource || typeof sSource !== "string") {
427
+ return false;
428
+ }
429
+
430
+ var sLowerSource = sSource.toLowerCase();
431
+ return sLowerSource.startsWith("data:") || sLowerSource.startsWith("blob:");
432
+ };
433
+
407
434
  /**
408
435
  * @private
409
436
  */
package/src/sap/m/Page.js CHANGED
@@ -83,7 +83,7 @@ function(
83
83
  * @extends sap.ui.core.Control
84
84
  * @mixes sap.ui.core.ContextMenuSupport
85
85
  * @author SAP SE
86
- * @version 1.71.74
86
+ * @version 1.71.75
87
87
  *
88
88
  * @public
89
89
  * @alias sap.m.Page
@@ -22,7 +22,7 @@ sap.ui.define(['sap/ui/core/Element', './library'],
22
22
  * @extends sap.ui.core.Element
23
23
  *
24
24
  * @author SAP SE
25
- * @version 1.71.74
25
+ * @version 1.71.75
26
26
  *
27
27
  * @constructor
28
28
  * @public
@@ -26,7 +26,7 @@ sap.ui.define([
26
26
  * @extends sap.ui.core.Control
27
27
  *
28
28
  * @author SAP SE
29
- * @version 1.71.74
29
+ * @version 1.71.75
30
30
  *
31
31
  * @constructor
32
32
  * @public
@@ -66,7 +66,7 @@ sap.ui.define([
66
66
  * @extends sap.ui.core.Control
67
67
  *
68
68
  * @author SAP SE
69
- * @version 1.71.74
69
+ * @version 1.71.75
70
70
  *
71
71
  * @constructor
72
72
  * @public
@@ -191,7 +191,7 @@ sap.ui.define([
191
191
  * {@link sap.m.PlanningCalendarView PlanningCalendarView}'s properties.
192
192
  *
193
193
  * @extends sap.ui.core.Control
194
- * @version 1.71.74
194
+ * @version 1.71.75
195
195
  *
196
196
  * @constructor
197
197
  * @public
@@ -88,7 +88,7 @@ function(
88
88
  * @extends sap.ui.core.Control
89
89
  *
90
90
  * @author SAP SE
91
- * @version 1.71.74
91
+ * @version 1.71.75
92
92
  *
93
93
  * @constructor
94
94
  * @private
@@ -23,7 +23,7 @@ sap.ui.define(['sap/ui/unified/CalendarLegend', 'sap/ui/unified/CalendarAppointm
23
23
  * @extends sap.ui.unified.CalendarLegend
24
24
  *
25
25
  * @author SAP SE
26
- * @version 1.71.74
26
+ * @version 1.71.75
27
27
  *
28
28
  * @constructor
29
29
  * @public
@@ -23,7 +23,7 @@ sap.ui.define(['sap/ui/core/Element', 'sap/m/CustomListItem'], function (Element
23
23
  * The <code>sap.m.PlanningCalendarRow</code> allows you to modify appointments at row level.
24
24
  *
25
25
  * @extends sap.ui.core.Element
26
- * @version 1.71.74
26
+ * @version 1.71.75
27
27
  *
28
28
  * @constructor
29
29
  * @public
@@ -27,7 +27,7 @@ sap.ui.define(['sap/ui/core/Element', './library', 'sap/ui/unified/library'],
27
27
  * The <code>PlanningCalendarView</code> defines the type of the intervals (hours, days, months)
28
28
  * and how many intervals are displayed.
29
29
  * @extends sap.ui.core.Element
30
- * @version 1.71.74
30
+ * @version 1.71.75
31
31
  *
32
32
  * @constructor
33
33
  * @public
@@ -111,7 +111,7 @@ sap.ui.define([
111
111
  * @extends sap.ui.core.Control
112
112
  * @implements sap.ui.core.PopupInterface
113
113
  * @author SAP SE
114
- * @version 1.71.74
114
+ * @version 1.71.75
115
115
  *
116
116
  * @public
117
117
  * @alias sap.m.Popover
@@ -48,7 +48,7 @@ sap.ui.define([
48
48
  * @extends sap.ui.core.Control
49
49
  *
50
50
  * @author SAP SE
51
- * @version 1.71.74
51
+ * @version 1.71.75
52
52
  *
53
53
  * @constructor
54
54
  * @public
@@ -40,7 +40,7 @@ sap.ui.define([
40
40
  * @extends sap.ui.core.Control
41
41
  *
42
42
  * @author SAP SE
43
- * @version 1.71.74
43
+ * @version 1.71.75
44
44
  *
45
45
  * @constructor
46
46
  * @public
@@ -62,7 +62,7 @@ sap.ui.define([
62
62
  * @extends sap.m.QuickViewBase
63
63
  *
64
64
  * @author SAP SE
65
- * @version 1.71.74
65
+ * @version 1.71.75
66
66
  *
67
67
  * @constructor
68
68
  * @public
@@ -28,7 +28,7 @@ sap.ui.define([
28
28
  * @extends sap.ui.core.Control
29
29
  *
30
30
  * @author SAP SE
31
- * @version 1.71.74
31
+ * @version 1.71.75
32
32
  *
33
33
  * @constructor
34
34
  * @public
@@ -37,7 +37,7 @@ sap.ui.define([
37
37
  * @extends sap.m.QuickViewBase
38
38
  *
39
39
  * @author SAP SE
40
- * @version 1.71.74
40
+ * @version 1.71.75
41
41
  *
42
42
  * @constructor
43
43
  * @public
@@ -21,7 +21,7 @@ sap.ui.define([
21
21
  * @extends sap.ui.core.Element
22
22
  *
23
23
  * @author SAP SE
24
- * @version 1.71.74
24
+ * @version 1.71.75
25
25
  *
26
26
  * @constructor
27
27
  * @public
@@ -26,7 +26,7 @@ sap.ui.define([
26
26
  * @extends sap.ui.core.Element
27
27
  *
28
28
  * @author SAP SE
29
- * @version 1.71.74
29
+ * @version 1.71.75
30
30
  *
31
31
  * @constructor
32
32
  * @public
@@ -89,7 +89,7 @@ sap.ui.define([
89
89
  * @extends sap.ui.core.Control
90
90
  *
91
91
  * @author SAP SE
92
- * @version 1.71.74
92
+ * @version 1.71.75
93
93
  *
94
94
  * @constructor
95
95
  * @public
@@ -87,7 +87,7 @@ function(
87
87
  * @implements sap.ui.core.IFormContent
88
88
  *
89
89
  * @author SAP SE
90
- * @version 1.71.74
90
+ * @version 1.71.75
91
91
  *
92
92
  * @constructor
93
93
  * @public
@@ -59,7 +59,7 @@ sap.ui.define([
59
59
  * @implements sap.ui.core.IFormContent
60
60
  *
61
61
  * @author SAP SE
62
- * @version 1.71.74
62
+ * @version 1.71.75
63
63
  *
64
64
  * @constructor
65
65
  * @public
@@ -49,7 +49,7 @@ sap.ui.define([
49
49
  * @extends sap.m.Slider
50
50
  *
51
51
  * @author SAP SE
52
- * @version 1.71.74
52
+ * @version 1.71.75
53
53
  *
54
54
  * @constructor
55
55
  * @public
@@ -51,7 +51,7 @@ sap.ui.define([
51
51
  * @extends sap.ui.core.Control
52
52
  *
53
53
  * @author SAP SE
54
- * @version 1.71.74
54
+ * @version 1.71.75
55
55
  *
56
56
  * @constructor
57
57
  * @public
@@ -64,7 +64,7 @@ sap.ui.define([
64
64
  * @extends sap.ui.core.Control
65
65
  *
66
66
  * @author SAP SE
67
- * @version 1.71.74
67
+ * @version 1.71.75
68
68
  *
69
69
  * @constructor
70
70
  * @public
@@ -34,7 +34,7 @@ sap.ui.define([
34
34
  * @extends sap.ui.core.Element
35
35
  *
36
36
  * @author SAP SE
37
- * @version 1.71.74
37
+ * @version 1.71.75
38
38
  *
39
39
  * @constructor
40
40
  * @public
@@ -25,7 +25,7 @@ function(Control, ScrollBarRenderer) {
25
25
  * care of only rendering the currently visible rows and use this <code>ScrollBar</code> control to make
26
26
  * the users think they are actually scrolling through a long list.
27
27
  * @extends sap.ui.core.Control
28
- * @version 1.71.74
28
+ * @version 1.71.75
29
29
  *
30
30
  * @private
31
31
  * @alias sap.m.ScrollBar
@@ -37,7 +37,7 @@ sap.ui.define([
37
37
  * @extends sap.ui.core.Control
38
38
  *
39
39
  * @author SAP SE
40
- * @version 1.71.74
40
+ * @version 1.71.75
41
41
  *
42
42
  * @constructor
43
43
  * @public
@@ -72,7 +72,7 @@ sap.ui.define([
72
72
  * @extends sap.ui.core.Control
73
73
  * @implements sap.ui.core.IFormContent
74
74
  * @author SAP SE
75
- * @version 1.71.74
75
+ * @version 1.71.75
76
76
  *
77
77
  * @constructor
78
78
  * @public
@@ -50,7 +50,7 @@ function(
50
50
  * @implements sap.ui.core.IFormContent
51
51
  *
52
52
  * @author SAP SE
53
- * @version 1.71.74
53
+ * @version 1.71.75
54
54
  *
55
55
  * @constructor
56
56
  * @public
@@ -23,7 +23,7 @@ sap.ui.define(['./library', 'sap/ui/core/Item', 'sap/m/Button', 'sap/ui/core/Cus
23
23
  * @extends sap.ui.core.Item
24
24
  *
25
25
  * @author SAP SE
26
- * @version 1.71.74
26
+ * @version 1.71.75
27
27
  *
28
28
  * @constructor
29
29
  * @public
@@ -98,7 +98,7 @@ function(
98
98
  * @implements sap.ui.core.IFormContent
99
99
  *
100
100
  * @author SAP SE
101
- * @version 1.71.74
101
+ * @version 1.71.75
102
102
  *
103
103
  * @constructor
104
104
  * @public
@@ -115,7 +115,7 @@ function(
115
115
  * @extends sap.ui.core.Control
116
116
  *
117
117
  * @author SAP SE
118
- * @version 1.71.74
118
+ * @version 1.71.75
119
119
  *
120
120
  * @constructor
121
121
  * @public
@@ -36,7 +36,7 @@ sap.ui.define([
36
36
  * @extends sap.ui.core.Control
37
37
  *
38
38
  * @author SAP SE
39
- * @version 1.71.74
39
+ * @version 1.71.75
40
40
  *
41
41
  * @constructor
42
42
  * @public
@@ -39,7 +39,7 @@ function(
39
39
  * <b><i>Note:</i></b>It is protected and should only be used within the framework itself.
40
40
  *
41
41
  * @author SAP SE
42
- * @version 1.71.74
42
+ * @version 1.71.75
43
43
  *
44
44
  * @extends sap.ui.core.Control
45
45
  * @constructor
@@ -10,7 +10,7 @@
10
10
  * @since 1.48.0
11
11
  * @public
12
12
  * @author SAP SE
13
- * @version 1.71.74
13
+ * @version 1.71.75
14
14
  * @borrows sap.ui.core.Element#addCustomData as addCustomData
15
15
  * @borrows sap.ui.core.Element#getCustomData as getCustomData
16
16
  * @borrows sap.ui.core.Element#indexOfCustomData as indexOfCustomData
@@ -45,7 +45,7 @@
45
45
  * @since 1.48.0
46
46
  * @public
47
47
  * @author SAP SE
48
- * @version 1.71.74
48
+ * @version 1.71.75
49
49
  * @borrows sap.ui.core.Element#addCustomData as addCustomData
50
50
  * @borrows sap.ui.core.Element#getCustomData as getCustomData
51
51
  * @borrows sap.ui.core.Element#indexOfCustomData as indexOfCustomData
@@ -54,7 +54,7 @@ sap.ui.define([
54
54
  * @extends sap.ui.core.Element
55
55
  *
56
56
  * @author SAP SE
57
- * @version 1.71.74
57
+ * @version 1.71.75
58
58
  *
59
59
  * @constructor
60
60
  * @protected
@@ -23,7 +23,7 @@ sap.ui.define(["sap/ui/core/Element", "sap/base/Log", "sap/base/util/isPlainObje
23
23
  * @extends sap.ui.core.Element
24
24
  *
25
25
  * @author SAP SE
26
- * @version 1.71.74
26
+ * @version 1.71.75
27
27
  *
28
28
  * @constructor
29
29
  * @protected
@@ -34,7 +34,7 @@ sap.ui.define([
34
34
  * The Shell control can be used as root element of applications. It can contain an App or a <code>SplitApp</code> control.
35
35
  * The Shell provides some overarching functionality for the overall application and takes care of visual adaptation, such as a frame around the App, on desktop browser platforms.
36
36
  * @extends sap.ui.core.Control
37
- * @version 1.71.74
37
+ * @version 1.71.75
38
38
  *
39
39
  * @constructor
40
40
  * @public
@@ -31,7 +31,7 @@ function (Control, ResizeHandler, Log /**, SimpleFixFlexRenderer */) {
31
31
  * @extends sap.ui.core.Control
32
32
  *
33
33
  * @author SAP SE
34
- * @version 1.71.74
34
+ * @version 1.71.75
35
35
  *
36
36
  * @constructor
37
37
  * @private
@@ -96,7 +96,7 @@ function(
96
96
  * @extends sap.ui.core.Control
97
97
  *
98
98
  * @author SAP SE
99
- * @version 1.71.74
99
+ * @version 1.71.75
100
100
  *
101
101
  * @constructor
102
102
  * @public
@@ -25,7 +25,7 @@ function (library, SinglePlanningCalendarView) {
25
25
  * @extends sap.m.SinglePlanningCalendarView
26
26
  *
27
27
  * @author SAP SE
28
- * @version 1.71.74
28
+ * @version 1.71.75
29
29
  *
30
30
  * @constructor
31
31
  * @public