@ui5/webcomponents 2.28.0-rc.0 → 2.28.1

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 (40) hide show
  1. package/CHANGELOG.md +21 -0
  2. package/dist/.tsbuildinfo +1 -1
  3. package/dist/Bar.d.ts +11 -8
  4. package/dist/Bar.js +11 -9
  5. package/dist/Bar.js.map +1 -1
  6. package/dist/ComboBox.js +1 -0
  7. package/dist/ComboBox.js.map +1 -1
  8. package/dist/FormTemplate.js +2 -2
  9. package/dist/FormTemplate.js.map +1 -1
  10. package/dist/InputIcon.d.ts +0 -11
  11. package/dist/InputIcon.js +1 -15
  12. package/dist/InputIcon.js.map +1 -1
  13. package/dist/NumericInput.d.ts +1 -1
  14. package/dist/NumericInput.js.map +1 -1
  15. package/dist/css/themes/Form.css +1 -1
  16. package/dist/css/themes/FormItem.css +1 -1
  17. package/dist/css/themes/FormItemSpan.css +1 -1
  18. package/dist/custom-elements-internal.json +27 -26
  19. package/dist/custom-elements.json +24 -24
  20. package/dist/generated/assets/i18n/messagebundle_en_US_saprigi.json +1 -1
  21. package/dist/generated/themes/Form.css.d.ts +1 -1
  22. package/dist/generated/themes/Form.css.js +1 -1
  23. package/dist/generated/themes/Form.css.js.map +1 -1
  24. package/dist/generated/themes/FormItem.css.d.ts +1 -1
  25. package/dist/generated/themes/FormItem.css.js +1 -1
  26. package/dist/generated/themes/FormItem.css.js.map +1 -1
  27. package/dist/generated/themes/FormItemSpan.css.d.ts +1 -1
  28. package/dist/generated/themes/FormItemSpan.css.js +1 -1
  29. package/dist/generated/themes/FormItemSpan.css.js.map +1 -1
  30. package/dist/types/BarAccessibleRole.d.ts +2 -1
  31. package/dist/types/BarAccessibleRole.js +2 -1
  32. package/dist/types/BarAccessibleRole.js.map +1 -1
  33. package/dist/vscode.html-custom-data.json +7 -7
  34. package/dist/web-types.json +15 -15
  35. package/package.json +9 -9
  36. package/src/FormTemplate.tsx +2 -2
  37. package/src/i18n/messagebundle_en_US_saprigi.properties +16 -0
  38. package/src/themes/Form.css +5 -3
  39. package/src/themes/FormItem.css +4 -0
  40. package/src/themes/FormItemSpan.css +5 -0
package/dist/Bar.d.ts CHANGED
@@ -2,6 +2,7 @@ import UI5Element from "@ui5/webcomponents-base/dist/UI5Element.js";
2
2
  import type { DefaultSlot, Slot } from "@ui5/webcomponents-base/dist/UI5Element.js";
3
3
  import type BarDesign from "./types/BarDesign.js";
4
4
  import type BarAccessibleRole from "./types/BarAccessibleRole.js";
5
+ import type { AriaRole } from "@ui5/webcomponents-base/dist/types.js";
5
6
  /**
6
7
  * @class
7
8
  *
@@ -16,6 +17,8 @@ import type BarAccessibleRole from "./types/BarAccessibleRole.js";
16
17
  *
17
18
  * **Note:** Do not place a Bar inside another Bar or inside any bar-like component. Doing so may cause unpredictable behavior.
18
19
  *
20
+ * **Note:** The Bar is a structural layout component for organizing page areas (header, footer, subheader) and not an action-oriented toolbar. To group action controls with full keyboard navigation support, use the Toolbar component instead.
21
+ *
19
22
  * ### Responsive Behavior
20
23
  * The default slot will be centered in the available space between the startContent and the endContent areas,
21
24
  * therefore it might not always be centered in the entire bar.
@@ -49,16 +52,16 @@ declare class Bar extends UI5Element {
49
52
  /**
50
53
  * Specifies the ARIA role applied to the component for accessibility purposes.
51
54
  *
52
- * **Note:**
53
- *
54
- * - By default, accessibleRole is set to "Toolbar", which renders the ARIA role "toolbar".
55
- *
56
- * - Use the default accessibleRole value "Toolbar" only when the component contains two or more active, interactive elements (such as buttons, links, or input fields) within the bar.
55
+ * **Note:** By default, no ARIA role is applied ("None"). The Bar derives its semantics
56
+ * from the container it is placed in, such as a page header or footer.
57
57
  *
58
- * - If there is only one or no active element, set accessibleRole to "None" to avoid rendering the ARIA role "toolbar", as that role implies a grouping of multiple interactive controls.
58
+ * **Note:** The "Toolbar" value is deprecated. The Bar is a structural layout container and does not
59
+ * support toolbar keyboard interactions (such as arrow-key navigation between components). When 3 or more
60
+ * interactive elements are needed, use the `ui5-toolbar` component instead, which provides the correct
61
+ * toolbar role and arrow-key navigation between components.
59
62
  *
60
63
  * @public
61
- * @default "Toolbar"
64
+ * @default "None"
62
65
  * @since 2.10.0
63
66
  *
64
67
  */
@@ -102,6 +105,6 @@ declare class Bar extends UI5Element {
102
105
  handleResize(): void;
103
106
  onEnterDOM(): void;
104
107
  onExitDOM(): void;
105
- get effectiveRole(): import("@ui5/webcomponents-base/dist/thirdparty/preact/jsx.js").JSXInternal.AriaRole | undefined;
108
+ get effectiveRole(): AriaRole | undefined;
106
109
  }
107
110
  export default Bar;
package/dist/Bar.js CHANGED
@@ -29,6 +29,8 @@ import BarCss from "./generated/themes/Bar.css.js";
29
29
  *
30
30
  * **Note:** Do not place a Bar inside another Bar or inside any bar-like component. Doing so may cause unpredictable behavior.
31
31
  *
32
+ * **Note:** The Bar is a structural layout component for organizing page areas (header, footer, subheader) and not an action-oriented toolbar. To group action controls with full keyboard navigation support, use the Toolbar component instead.
33
+ *
32
34
  * ### Responsive Behavior
33
35
  * The default slot will be centered in the available space between the startContent and the endContent areas,
34
36
  * therefore it might not always be centered in the entire bar.
@@ -76,20 +78,20 @@ let Bar = class Bar extends UI5Element {
76
78
  /**
77
79
  * Specifies the ARIA role applied to the component for accessibility purposes.
78
80
  *
79
- * **Note:**
80
- *
81
- * - By default, accessibleRole is set to "Toolbar", which renders the ARIA role "toolbar".
82
- *
83
- * - Use the default accessibleRole value "Toolbar" only when the component contains two or more active, interactive elements (such as buttons, links, or input fields) within the bar.
81
+ * **Note:** By default, no ARIA role is applied ("None"). The Bar derives its semantics
82
+ * from the container it is placed in, such as a page header or footer.
84
83
  *
85
- * - If there is only one or no active element, set accessibleRole to "None" to avoid rendering the ARIA role "toolbar", as that role implies a grouping of multiple interactive controls.
84
+ * **Note:** The "Toolbar" value is deprecated. The Bar is a structural layout container and does not
85
+ * support toolbar keyboard interactions (such as arrow-key navigation between components). When 3 or more
86
+ * interactive elements are needed, use the `ui5-toolbar` component instead, which provides the correct
87
+ * toolbar role and arrow-key navigation between components.
86
88
  *
87
89
  * @public
88
- * @default "Toolbar"
90
+ * @default "None"
89
91
  * @since 2.10.0
90
92
  *
91
93
  */
92
- this.accessibleRole = "Toolbar";
94
+ this.accessibleRole = "None";
93
95
  this._handleResizeBound = this.handleResize.bind(this);
94
96
  }
95
97
  handleResize() {
@@ -113,7 +115,7 @@ let Bar = class Bar extends UI5Element {
113
115
  }, this);
114
116
  }
115
117
  get effectiveRole() {
116
- return this.accessibleRole.toLowerCase() === "toolbar" ? "toolbar" : undefined;
118
+ return this.accessibleRole === "Toolbar" ? "toolbar" : undefined;
117
119
  }
118
120
  };
119
121
  __decorate([
package/dist/Bar.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"Bar.js","sourceRoot":"","sources":["../src/Bar.ts"],"names":[],"mappings":"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","sourcesContent":["import UI5Element from \"@ui5/webcomponents-base/dist/UI5Element.js\";\nimport type { DefaultSlot, Slot } from \"@ui5/webcomponents-base/dist/UI5Element.js\";\nimport customElement from \"@ui5/webcomponents-base/dist/decorators/customElement.js\";\nimport property from \"@ui5/webcomponents-base/dist/decorators/property.js\";\nimport slot from \"@ui5/webcomponents-base/dist/decorators/slot-strict.js\";\nimport jsxRenderer from \"@ui5/webcomponents-base/dist/renderer/JsxRenderer.js\";\nimport ResizeHandler from \"@ui5/webcomponents-base/dist/delegate/ResizeHandler.js\";\nimport { getEffectiveAriaLabelText } from \"@ui5/webcomponents-base/dist/util/AccessibilityTextsHelper.js\";\nimport type BarDesign from \"./types/BarDesign.js\";\nimport type BarAccessibleRole from \"./types/BarAccessibleRole.js\";\n\n// Template\nimport BarTemplate from \"./BarTemplate.js\";\n\n// Styles\nimport BarCss from \"./generated/themes/Bar.css.js\";\nimport type { AriaRole } from \"@ui5/webcomponents-base/dist/types.js\";\n\n/**\n * @class\n *\n * ### Overview\n * The Bar is a container which is primarily used to hold titles, buttons and input elements\n * and its design and functionality is the basis for page headers and footers.\n * The component consists of three areas to hold its content - startContent slot, default slot and endContent slot.\n * It has the capability to center content, such as a title, while having other components on the left and right side.\n *\n * ### Usage\n * With the use of the design property, you can set the style of the Bar to appear designed like a Header, Subheader, Footer and FloatingFooter.\n *\n * **Note:** Do not place a Bar inside another Bar or inside any bar-like component. Doing so may cause unpredictable behavior.\n *\n * ### Responsive Behavior\n * The default slot will be centered in the available space between the startContent and the endContent areas,\n * therefore it might not always be centered in the entire bar.\n *\n * ### Keyboard Handling\n *\n * #### Fast Navigation\n * This component provides a build in fast navigation group which can be used via [F6] / [Shift] + [F6] / [Ctrl] + [Alt/Option] / [Down] or [Ctrl] + [Alt/Option] + [Up].\n * In order to use this functionality, you need to import the following module:\n * `import \"@ui5/webcomponents-base/dist/features/F6Navigation.js\"`\n *\n * ### ES6 Module Import\n *\n * `import \"@ui5/webcomponents/dist/Bar.js\";`\n * @csspart bar - Used to style the wrapper of the content of the component\n * @csspart startContent - Used to style the wrapper of the start content of the component\n * @csspart midContent - Used to style the wrapper of the middle content of the component\n * @csspart endContent - Used to style the wrapper of the end content of the component\n * @constructor\n * @extends UI5Element\n * @public\n * @since 1.0.0\n */\n@customElement({\n\ttag: \"ui5-bar\",\n\tfastNavigation: true,\n\trenderer: jsxRenderer,\n\tstyles: BarCss,\n\ttemplate: BarTemplate,\n})\nclass Bar extends UI5Element {\n\t/**\n\t * Defines the component's design.\n\t * @default \"Header\"\n\t * @public\n\t */\n\t@property()\n\tdesign: `${BarDesign}` = \"Header\";\n\n\t/**\n\t * Specifies the ARIA role applied to the component for accessibility purposes.\n\t *\n\t * **Note:**\n\t *\n\t * - By default, accessibleRole is set to \"Toolbar\", which renders the ARIA role \"toolbar\".\n\t *\n\t * - Use the default accessibleRole value \"Toolbar\" only when the component contains two or more active, interactive elements (such as buttons, links, or input fields) within the bar.\n\t *\n\t * - If there is only one or no active element, set accessibleRole to \"None\" to avoid rendering the ARIA role \"toolbar\", as that role implies a grouping of multiple interactive controls.\n\t *\n\t * @public\n\t * @default \"Toolbar\"\n\t * @since 2.10.0\n\t *\n\t */\n\t@property()\n\taccessibleRole: `${BarAccessibleRole}` = \"Toolbar\";\n\n\t/**\n\t * Defines the accessible ARIA name of the component.\n\t * @default undefined\n\t * @since 2.16.0\n\t * @public\n\t */\n\t@property()\n\taccessibleName?: string;\n\n\t/**\n\t * Receives id(or many ids) of the elements that label the bar.\n\t * @default undefined\n\t * @since 2.16.0\n\t * @public\n\t */\n\t@property()\n\taccessibleNameRef?: string;\n\n\t/**\n\t* Defines the content at the start of the bar.\n\t* @public\n\t*/\n\t@slot()\n\tstartContent!: Slot<HTMLElement>;\n\n\t/**\n\t* Defines the content in the middle of the bar.\n\t* @public\n\t*/\n\t@slot({ type: HTMLElement, \"default\": true })\n\tmiddleContent!: DefaultSlot<HTMLElement>;\n\n\t/**\n\t* Defines the content at the end of the bar.\n\t* @public\n\t*/\n\t@slot()\n\tendContent!: Slot<HTMLElement>;\n\n\t_handleResizeBound: () => void;\n\n\tget accInfo() {\n\t\treturn {\n\t\t\t\"label\": this.ariaLabelText,\n\t\t\t\"role\": this.effectiveRole,\n\t\t};\n\t}\n\n\tget ariaLabelText(): string | undefined {\n\t\tif (this.accessibleName || this.accessibleNameRef) {\n\t\t\treturn getEffectiveAriaLabelText(this);\n\t\t}\n\n\t\treturn this.design;\n\t}\n\n\tconstructor() {\n\t\tsuper();\n\n\t\tthis._handleResizeBound = this.handleResize.bind(this);\n\t}\n\n\thandleResize() {\n\t\tconst bar = this.getDomRef()!;\n\t\tconst barWidth = bar.offsetWidth;\n\t\tconst needShrinked = Array.from(bar.children).some(child => {\n\t\t\treturn (child as HTMLElement).offsetWidth > barWidth / 3;\n\t\t});\n\n\t\tbar.classList.toggle(\"ui5-bar-root-shrinked\", needShrinked);\n\t}\n\n\tonEnterDOM() {\n\t\tResizeHandler.register(this, this._handleResizeBound);\n\n\t\tthis.getDomRef()!.querySelectorAll(\".ui5-bar-content-container\").forEach(child => {\n\t\t\tResizeHandler.register(child as HTMLElement, this._handleResizeBound);\n\t\t}, this);\n\t}\n\n\tonExitDOM() {\n\t\tResizeHandler.deregister(this, this._handleResizeBound);\n\n\t\tthis.getDomRef()!.querySelectorAll(\".ui5-bar-content-container\").forEach(child => {\n\t\t\tResizeHandler.deregister(child as HTMLElement, this._handleResizeBound);\n\t\t}, this);\n\t }\n\n\t get effectiveRole() {\n\t\treturn this.accessibleRole.toLowerCase() === \"toolbar\" ? \"toolbar\" as AriaRole : undefined;\n\t }\n}\n\nBar.define();\n\nexport default Bar;\n"]}
1
+ {"version":3,"file":"Bar.js","sourceRoot":"","sources":["../src/Bar.ts"],"names":[],"mappings":"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","sourcesContent":["import UI5Element from \"@ui5/webcomponents-base/dist/UI5Element.js\";\nimport type { DefaultSlot, Slot } from \"@ui5/webcomponents-base/dist/UI5Element.js\";\nimport customElement from \"@ui5/webcomponents-base/dist/decorators/customElement.js\";\nimport property from \"@ui5/webcomponents-base/dist/decorators/property.js\";\nimport slot from \"@ui5/webcomponents-base/dist/decorators/slot-strict.js\";\nimport jsxRenderer from \"@ui5/webcomponents-base/dist/renderer/JsxRenderer.js\";\nimport ResizeHandler from \"@ui5/webcomponents-base/dist/delegate/ResizeHandler.js\";\nimport { getEffectiveAriaLabelText } from \"@ui5/webcomponents-base/dist/util/AccessibilityTextsHelper.js\";\nimport type BarDesign from \"./types/BarDesign.js\";\nimport type BarAccessibleRole from \"./types/BarAccessibleRole.js\";\n\n// Template\nimport BarTemplate from \"./BarTemplate.js\";\n\n// Styles\nimport BarCss from \"./generated/themes/Bar.css.js\";\nimport type { AriaRole } from \"@ui5/webcomponents-base/dist/types.js\";\n\n/**\n * @class\n *\n * ### Overview\n * The Bar is a container which is primarily used to hold titles, buttons and input elements\n * and its design and functionality is the basis for page headers and footers.\n * The component consists of three areas to hold its content - startContent slot, default slot and endContent slot.\n * It has the capability to center content, such as a title, while having other components on the left and right side.\n *\n * ### Usage\n * With the use of the design property, you can set the style of the Bar to appear designed like a Header, Subheader, Footer and FloatingFooter.\n *\n * **Note:** Do not place a Bar inside another Bar or inside any bar-like component. Doing so may cause unpredictable behavior.\n *\n * **Note:** The Bar is a structural layout component for organizing page areas (header, footer, subheader) and not an action-oriented toolbar. To group action controls with full keyboard navigation support, use the Toolbar component instead.\n *\n * ### Responsive Behavior\n * The default slot will be centered in the available space between the startContent and the endContent areas,\n * therefore it might not always be centered in the entire bar.\n *\n * ### Keyboard Handling\n *\n * #### Fast Navigation\n * This component provides a build in fast navigation group which can be used via [F6] / [Shift] + [F6] / [Ctrl] + [Alt/Option] / [Down] or [Ctrl] + [Alt/Option] + [Up].\n * In order to use this functionality, you need to import the following module:\n * `import \"@ui5/webcomponents-base/dist/features/F6Navigation.js\"`\n *\n * ### ES6 Module Import\n *\n * `import \"@ui5/webcomponents/dist/Bar.js\";`\n * @csspart bar - Used to style the wrapper of the content of the component\n * @csspart startContent - Used to style the wrapper of the start content of the component\n * @csspart midContent - Used to style the wrapper of the middle content of the component\n * @csspart endContent - Used to style the wrapper of the end content of the component\n * @constructor\n * @extends UI5Element\n * @public\n * @since 1.0.0\n */\n@customElement({\n\ttag: \"ui5-bar\",\n\tfastNavigation: true,\n\trenderer: jsxRenderer,\n\tstyles: BarCss,\n\ttemplate: BarTemplate,\n})\nclass Bar extends UI5Element {\n\t/**\n\t * Defines the component's design.\n\t * @default \"Header\"\n\t * @public\n\t */\n\t@property()\n\tdesign: `${BarDesign}` = \"Header\";\n\n\t/**\n\t * Specifies the ARIA role applied to the component for accessibility purposes.\n\t *\n\t * **Note:** By default, no ARIA role is applied (\"None\"). The Bar derives its semantics\n\t * from the container it is placed in, such as a page header or footer.\n\t *\n\t * **Note:** The \"Toolbar\" value is deprecated. The Bar is a structural layout container and does not\n\t * support toolbar keyboard interactions (such as arrow-key navigation between components). When 3 or more\n\t * interactive elements are needed, use the `ui5-toolbar` component instead, which provides the correct\n\t * toolbar role and arrow-key navigation between components.\n\t *\n\t * @public\n\t * @default \"None\"\n\t * @since 2.10.0\n\t *\n\t */\n\t@property()\n\taccessibleRole: `${BarAccessibleRole}` = \"None\";\n\n\t/**\n\t * Defines the accessible ARIA name of the component.\n\t * @default undefined\n\t * @since 2.16.0\n\t * @public\n\t */\n\t@property()\n\taccessibleName?: string;\n\n\t/**\n\t * Receives id(or many ids) of the elements that label the bar.\n\t * @default undefined\n\t * @since 2.16.0\n\t * @public\n\t */\n\t@property()\n\taccessibleNameRef?: string;\n\n\t/**\n\t* Defines the content at the start of the bar.\n\t* @public\n\t*/\n\t@slot()\n\tstartContent!: Slot<HTMLElement>;\n\n\t/**\n\t* Defines the content in the middle of the bar.\n\t* @public\n\t*/\n\t@slot({ type: HTMLElement, \"default\": true })\n\tmiddleContent!: DefaultSlot<HTMLElement>;\n\n\t/**\n\t* Defines the content at the end of the bar.\n\t* @public\n\t*/\n\t@slot()\n\tendContent!: Slot<HTMLElement>;\n\n\t_handleResizeBound: () => void;\n\n\tget accInfo() {\n\t\treturn {\n\t\t\t\"label\": this.ariaLabelText,\n\t\t\t\"role\": this.effectiveRole,\n\t\t};\n\t}\n\n\tget ariaLabelText(): string | undefined {\n\t\tif (this.accessibleName || this.accessibleNameRef) {\n\t\t\treturn getEffectiveAriaLabelText(this);\n\t\t}\n\n\t\treturn this.design;\n\t}\n\n\tconstructor() {\n\t\tsuper();\n\n\t\tthis._handleResizeBound = this.handleResize.bind(this);\n\t}\n\n\thandleResize() {\n\t\tconst bar = this.getDomRef()!;\n\t\tconst barWidth = bar.offsetWidth;\n\t\tconst needShrinked = Array.from(bar.children).some(child => {\n\t\t\treturn (child as HTMLElement).offsetWidth > barWidth / 3;\n\t\t});\n\n\t\tbar.classList.toggle(\"ui5-bar-root-shrinked\", needShrinked);\n\t}\n\n\tonEnterDOM() {\n\t\tResizeHandler.register(this, this._handleResizeBound);\n\n\t\tthis.getDomRef()!.querySelectorAll(\".ui5-bar-content-container\").forEach(child => {\n\t\t\tResizeHandler.register(child as HTMLElement, this._handleResizeBound);\n\t\t}, this);\n\t}\n\n\tonExitDOM() {\n\t\tResizeHandler.deregister(this, this._handleResizeBound);\n\n\t\tthis.getDomRef()!.querySelectorAll(\".ui5-bar-content-container\").forEach(child => {\n\t\t\tResizeHandler.deregister(child as HTMLElement, this._handleResizeBound);\n\t\t}, this);\n\t }\n\n\t get effectiveRole(): AriaRole | undefined {\n\t\treturn this.accessibleRole === \"Toolbar\" ? \"toolbar\" : undefined;\n\t }\n}\n\nBar.define();\n\nexport default Bar;\n"]}
package/dist/ComboBox.js CHANGED
@@ -1536,6 +1536,7 @@ ComboBox = ComboBox_1 = __decorate([
1536
1536
  /**
1537
1537
  * Fired when the application should provide items for the component to render.
1538
1538
  * The event is fired either when text is input or when the user presses arrow down on a combo-box with no items.
1539
+ * @since 2.28.0
1539
1540
  * @param {string} reason the reason the event was fired - "input" when text is typed, "open" when the picker is about to open
1540
1541
  * @param {string} value value of the input
1541
1542
  * @public