@ui5/webcomponents 0.31.20 → 0.31.24

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 (59) hide show
  1. package/CHANGELOG.md +66 -0
  2. package/dist/CalendarHeader.js +2 -2
  3. package/dist/Card.js +45 -19
  4. package/dist/DayPicker.js +5 -0
  5. package/dist/Input.js +1 -1
  6. package/dist/List.js +1 -0
  7. package/dist/TabContainer.js +1 -1
  8. package/dist/api.json +1 -1
  9. package/dist/features/InputSuggestions.js +7 -18
  10. package/dist/generated/assets/themes/sap_belize_hcb/parameters-bundle.css.json +1 -1
  11. package/dist/generated/assets/themes/sap_belize_hcw/parameters-bundle.css.json +1 -1
  12. package/dist/generated/templates/BusyIndicatorTemplate.lit.js +1 -1
  13. package/dist/generated/templates/CardTemplate.lit.js +1 -1
  14. package/dist/generated/templates/ListTemplate.lit.js +1 -1
  15. package/dist/generated/templates/TabContainerTemplate.lit.js +2 -2
  16. package/dist/generated/templates/TableTemplate.lit.js +1 -1
  17. package/dist/generated/themes/Badge.css.js +1 -1
  18. package/dist/generated/themes/Button.css.js +1 -1
  19. package/dist/generated/themes/Card.css.js +1 -1
  20. package/dist/generated/themes/CheckBox.css.js +1 -1
  21. package/dist/generated/themes/ComboBox.css.js +1 -1
  22. package/dist/generated/themes/DatePicker.css.js +1 -1
  23. package/dist/generated/themes/DatePickerPopover.css.js +1 -1
  24. package/dist/generated/themes/Dialog.css.js +1 -1
  25. package/dist/generated/themes/GroupHeaderListItem.css.js +1 -1
  26. package/dist/generated/themes/Input.css.js +1 -1
  27. package/dist/generated/themes/InvisibleTextStyles.css.js +1 -1
  28. package/dist/generated/themes/Link.css.js +1 -1
  29. package/dist/generated/themes/List.css.js +1 -1
  30. package/dist/generated/themes/ListItem.css.js +1 -1
  31. package/dist/generated/themes/MessageStrip.css.js +1 -1
  32. package/dist/generated/themes/MultiComboBox.css.js +1 -1
  33. package/dist/generated/themes/Panel.css.js +1 -1
  34. package/dist/generated/themes/RadioButton.css.js +1 -1
  35. package/dist/generated/themes/SegmentedButton.css.js +1 -1
  36. package/dist/generated/themes/Select.css.js +1 -1
  37. package/dist/generated/themes/SliderBase.css.js +1 -1
  38. package/dist/generated/themes/StepInput.css.js +1 -1
  39. package/dist/generated/themes/Switch.css.js +1 -1
  40. package/dist/generated/themes/TextArea.css.js +1 -1
  41. package/dist/generated/themes/Tokenizer.css.js +1 -1
  42. package/dist/generated/themes/Tree.css.js +1 -1
  43. package/dist/generated/themes/TreeListItem.css.js +1 -1
  44. package/dist/generated/themes/sap_belize_hcb/parameters-bundle.css.js +1 -1
  45. package/dist/generated/themes/sap_belize_hcw/parameters-bundle.css.js +1 -1
  46. package/package.json +8 -8
  47. package/src/BusyIndicator.hbs +1 -0
  48. package/src/CalendarHeader.js +2 -2
  49. package/src/Card.hbs +3 -5
  50. package/src/Card.js +45 -19
  51. package/src/DayPicker.js +5 -0
  52. package/src/Input.js +1 -1
  53. package/src/List.hbs +1 -0
  54. package/src/List.js +1 -0
  55. package/src/TabContainer.hbs +3 -0
  56. package/src/TabContainer.js +1 -1
  57. package/src/Table.hbs +1 -0
  58. package/src/features/InputSuggestions.js +7 -18
  59. package/.port +0 -1
package/CHANGELOG.md CHANGED
@@ -3,6 +3,72 @@
3
3
  All notable changes to this project will be documented in this file.
4
4
  See [Conventional Commits](https://conventionalcommits.org) for commit guidelines.
5
5
 
6
+ ## [0.31.24](https://github.com/SAP/ui5-webcomponents/compare/v0.31.23...v0.31.24) (2021-11-23)
7
+
8
+
9
+ ### Bug Fixes
10
+
11
+ * adding stable selectors for tab container and shellbar ([#4369](https://github.com/SAP/ui5-webcomponents/issues/4369)) ([dc2ea58](https://github.com/SAP/ui5-webcomponents/commit/dc2ea58))
12
+ * **ui5-date-picker:** Align day names in hide-week-numbers mode ([#4309](https://github.com/SAP/ui5-webcomponents/issues/4309)) ([9dcc887](https://github.com/SAP/ui5-webcomponents/commit/9dcc887)), closes [#4260](https://github.com/SAP/ui5-webcomponents/issues/4260)
13
+ * **ui5-tab-container:** selector fixed ([#4261](https://github.com/SAP/ui5-webcomponents/issues/4261)) ([#4273](https://github.com/SAP/ui5-webcomponents/issues/4273)) ([735d9c4](https://github.com/SAP/ui5-webcomponents/commit/735d9c4))
14
+
15
+
16
+
17
+
18
+
19
+ ## [0.31.23](https://github.com/SAP/ui5-webcomponents/compare/v0.31.22...v0.31.23) (2021-11-17)
20
+
21
+
22
+ ### Bug Fixes
23
+
24
+ * **ui5-input:** escape HTML before highlighting suggestions (XSS) ([#4296](https://github.com/SAP/ui5-webcomponents/issues/4296)) ([8120f6c](https://github.com/SAP/ui5-webcomponents/commit/8120f6c)), closes [#4245](https://github.com/SAP/ui5-webcomponents/issues/4245)
25
+ * **ui5-link:** add underlining in the regular state in hcb / hcw ([#3960](https://github.com/SAP/ui5-webcomponents/issues/3960)) ([e44dc97](https://github.com/SAP/ui5-webcomponents/commit/e44dc97))
26
+
27
+
28
+
29
+
30
+
31
+ ## [0.31.22](https://github.com/SAP/ui5-webcomponents/compare/v0.31.21...v0.31.22) (2021-10-26)
32
+
33
+
34
+ ### Bug Fixes
35
+
36
+ * **ui5-card:** accessibleName now takes effect ([0769850](https://github.com/SAP/ui5-webcomponents/commit/0769850))
37
+ * **ui5-card:** fix a11y "unique landmark" issue ([32e1477](https://github.com/SAP/ui5-webcomponents/commit/32e1477))
38
+
39
+
40
+ ### Features
41
+
42
+ * **framework:** allow using a custom i18n library ([#4119](https://github.com/SAP/ui5-webcomponents/issues/4119)) ([947889a](https://github.com/SAP/ui5-webcomponents/commit/947889a))
43
+ * **ui5-card:** introduce accessible-name-ref to replace aria-labelledby ([3f7138c](https://github.com/SAP/ui5-webcomponents/commit/3f7138c))
44
+
45
+
46
+ ### Reverts
47
+
48
+ * feat(framework): allow using a custom i18n library ([debc848](https://github.com/SAP/ui5-webcomponents/commit/debc848))
49
+
50
+
51
+
52
+
53
+
54
+ ## [0.31.21](https://github.com/SAP/ui5-webcomponents/compare/v0.31.20...v0.31.21) (2021-10-16)
55
+
56
+
57
+ ### Bug Fixes
58
+
59
+ * **ui5-input:** Behaviour on mobile device enhanced ([#4025](https://github.com/SAP/ui5-webcomponents/issues/4025)) ([ebd2065](https://github.com/SAP/ui5-webcomponents/commit/ebd2065))
60
+ * **ui5-list:** remove unnecessary scrollbar in RTL for Multiselect mode ([#4085](https://github.com/SAP/ui5-webcomponents/issues/4085)) ([023081e](https://github.com/SAP/ui5-webcomponents/commit/023081e)), closes [#3947](https://github.com/SAP/ui5-webcomponents/issues/3947)
61
+ * **ui5-list, ui5-table, ui5-notification, ui5-busy-indicator:** getFocusDomRef returns the correct element when the state is busy ([#3951](https://github.com/SAP/ui5-webcomponents/issues/3951)) ([feaa63f](https://github.com/SAP/ui5-webcomponents/commit/feaa63f)), closes [#3922](https://github.com/SAP/ui5-webcomponents/issues/3922)
62
+
63
+
64
+ ### Features
65
+
66
+ * **ui5-card:** add "accessibleName" ([c6f75c7](https://github.com/SAP/ui5-webcomponents/commit/c6f75c7))
67
+
68
+
69
+
70
+
71
+
6
72
  ## [0.31.20](https://github.com/SAP/ui5-webcomponents/compare/v0.31.19...v0.31.20) (2021-10-03)
7
73
 
8
74
 
@@ -205,11 +205,11 @@ class CalendarHeader extends UI5Element {
205
205
  return {
206
206
  prevButton: {
207
207
  "ui5-calheader-arrowbtn": true,
208
- "ui5-calheader-arrowbtn-disabled": this._isPrevButtonDisabled,
208
+ "ui5-calheader-arrowbtn-disabled": this.isPrevButtonDisabled,
209
209
  },
210
210
  nextButton: {
211
211
  "ui5-calheader-arrowbtn": true,
212
- "ui5-calheader-arrowbtn-disabled": this._isNextButtonDisabled,
212
+ "ui5-calheader-arrowbtn-disabled": this.isNextButtonDisabled,
213
213
  },
214
214
  };
215
215
  }
package/dist/Card.js CHANGED
@@ -1,7 +1,7 @@
1
1
  import UI5Element from "@ui5/webcomponents-base/dist/UI5Element.js";
2
2
  import litRender from "@ui5/webcomponents-base/dist/renderer/LitRenderer.js";
3
3
  import { fetchI18nBundle, getI18nBundle } from "@ui5/webcomponents-base/dist/i18nBundle.js";
4
- import { getEffectiveAriaLabelText } from "@ui5/webcomponents-base/dist/util/AriaLabelHelper.js";
4
+ import findNodeOwner from "@ui5/webcomponents-base/dist/util/findNodeOwner.js";
5
5
  import { isSpace, isEnter } from "@ui5/webcomponents-base/dist/Keys.js";
6
6
  import Integer from "@ui5/webcomponents-base/dist/types/Integer.js";
7
7
  import CardTemplate from "./generated/templates/CardTemplate.lit.js";
@@ -114,28 +114,28 @@ const metadata = {
114
114
  },
115
115
 
116
116
  /**
117
- * Defines the aria-label attribute for the <code>ui5-card</code>
117
+ * Defines the accessible name of the component, which is used as the name of the card region and should be unique per card.
118
+ * <b>Note:</b> <code>accessibleName</code> should be always set.
118
119
  *
119
120
  * @type {String}
120
- * @since 1.0.0-rc.9
121
- * @private
122
121
  * @defaultvalue ""
122
+ * @public
123
+ * @since 1.0.0-rc.16
123
124
  */
124
- ariaLabel: {
125
+ accessibleName: {
125
126
  type: String,
126
127
  },
127
128
 
128
129
  /**
129
- * Receives id(or many ids) of the elements that label the <code>ui5-card</code>
130
+ * Defines the IDs of the elements that label the component.
130
131
  *
131
132
  * @type {String}
132
133
  * @defaultvalue ""
133
- * @private
134
- * @since 1.0.0-rc.9
134
+ * @public
135
+ * @since 1.0.0-rc.16
135
136
  */
136
- ariaLabelledby: {
137
+ accessibleNameRef: {
137
138
  type: String,
138
- defaultValue: "",
139
139
  },
140
140
 
141
141
  /**
@@ -255,12 +255,42 @@ class Card extends UI5Element {
255
255
  return !!(this.heading || this.subheading || this.status || this.hasAction || this.avatar);
256
256
  }
257
257
 
258
- get ariaLabelText() {
259
- return getEffectiveAriaLabelText(this);
260
- }
258
+ // As in 0.31 we don't have all the accessibleNameRef, accessibleName related changes downported,
259
+ // we manually add getEffectiveAriaLabelText and getAriaLabelledByTexts methods and change them,
260
+ // so they work with accessibleName and accessibleNameRef, isntead of ariaLabel and ariaLabelledby
261
+ getEffectiveAriaLabelText(el) {
262
+ if (!el.accessibleNameRef) {
263
+ if (el.accessibleName) {
264
+ return el.accessibleName;
265
+ }
266
+
267
+ return undefined;
268
+ }
269
+
270
+ return this.getAriaLabelledByTexts(el);
271
+ };
272
+
273
+ getAriaLabelledByTexts(el, ownerDocument, readyIds = "") {
274
+ const ids = (readyIds && readyIds.split(" ")) || el.accessibleNameRef.split(" ");
275
+ const owner = ownerDocument || findNodeOwner(el);
276
+ let result = "";
277
+
278
+ ids.forEach((elementId, index) => {
279
+ const element = owner.querySelector(`[id='${elementId}']`);
280
+ result += `${element ? element.textContent : ""}`;
281
+
282
+ if (index < ids.length - 1) {
283
+ result += " ";
284
+ }
285
+ });
286
+
287
+ return result;
288
+ };
261
289
 
262
- get ariaCardRoleDescription() {
263
- return this.i18nBundle.getText(ARIA_ROLEDESCRIPTION_CARD);
290
+ get ariaLabelText() {
291
+ const effectiveAriaLabelText = this.getEffectiveAriaLabelText(this),
292
+ effectiveAriaLabel = effectiveAriaLabelText ? ` ${effectiveAriaLabelText}` : "";
293
+ return this.i18nBundle.getText(ARIA_ROLEDESCRIPTION_CARD) + effectiveAriaLabel;
264
294
  }
265
295
 
266
296
  get ariaCardHeaderRoleDescription() {
@@ -293,10 +323,6 @@ class Card extends UI5Element {
293
323
  return labels.length !== 0 ? labels.join(" ") : undefined;
294
324
  }
295
325
 
296
- get ariaLabelledByCard() {
297
- return this.heading ? `${this._id}-heading ${this._id}-desc` : `${this._id}-desc`;
298
- }
299
-
300
326
  get hasAvatar() {
301
327
  return !!this.avatar.length;
302
328
  }
package/dist/DayPicker.js CHANGED
@@ -318,6 +318,10 @@ class DayPicker extends CalendarPart {
318
318
  }
319
319
 
320
320
  this._dayNames[1].classes += " ui5-dp-firstday";
321
+
322
+ if (this.shouldHideWeekNumbers) {
323
+ this._dayNames.shift();
324
+ }
321
325
  }
322
326
 
323
327
  onAfterRendering() {
@@ -721,6 +725,7 @@ class DayPicker extends CalendarPart {
721
725
  return {
722
726
  wrapper: {
723
727
  display: this._hidden ? "none" : "flex",
728
+ "justify-content": "center",
724
729
  },
725
730
  main: {
726
731
  width: "100%",
package/dist/Input.js CHANGED
@@ -998,7 +998,7 @@ class Input extends UI5Element {
998
998
  }
999
999
 
1000
1000
  async getInputDOMRef() {
1001
- if (isPhone() && this.Suggestions && this.suggestionItems.length) {
1001
+ if (isPhone() && this.Suggestions) {
1002
1002
  await this.Suggestions._respPopover();
1003
1003
  return this.Suggestions && this.Suggestions.responsivePopover.querySelector(".ui5-input-inner-phone");
1004
1004
  }
package/dist/List.js CHANGED
@@ -820,6 +820,7 @@ class List extends UI5Element {
820
820
  } else {
821
821
  this.focusPreviouslyFocusedItem();
822
822
  }
823
+ event.stopImmediatePropagation();
823
824
  }
824
825
 
825
826
  this.setForwardingFocus(false);
@@ -458,7 +458,7 @@ class TabContainer extends UI5Element {
458
458
  }
459
459
 
460
460
  async _onOverflowButtonClick(event) {
461
- const button = this.overflowButton[0] || this.getDomRef().querySelector(".ui-tc__overflowButton > ui5-button");
461
+ const button = this.overflowButton[0] || this.getDomRef().querySelector(".ui-tc__overflowButton > [ui5-button]");
462
462
 
463
463
  if (event.target !== button) {
464
464
  return;