Skip to content

Commit 69271c9

Browse files
authored
chore: bring release-2.0 to main (#8651)
* refactor(framework): remove internet explorer related checks (#8494) Internet Explorer as is no longer supported. With this change, we're removing all Internet Explorer-related checks from the framework. BREAKING CHANGE: "Device#isIE" method has been removed and no longer available Related to #8461 * refactor(framework): remove the CSP module (#8496) Previously, we used <style> and <link> tags to style web components due to the lack of browser support for adoptedStyleSheets. However, as latest version of all relevant browsers now support "adoptedStyleSheets", we are removing all additional functionality that was implemented to compensate for the missing support and rely entirely on "adoptedStyleSheets". As a result, there is no need of additional handling to full-fill Content Security Policy (CSP) requirements, because adoptedStyleSheets are CSP compliant. BREAKING CHANGE: Removed the `CSP.js` module and the creation of `<style>` and `<link>` tags, as all browsers now support adoptedStyleSheets. The following APIs are not available any more and should not be used: ```ts import { setUseLinks } from "@ui5/webcomponents-base/dist/CSP.js" import { setPackageCSSRoot } from "@ui5/webcomponents-base/dist/CSP.js" import { setPreloadLinks } from "@ui5/webcomponents-base/dist/CSP.js" ``` Related to [#8461](#8461) * refactor(ui5-card): remove ICardHeader interface (#8497) Removes the `ICardHeader` interface as no other header types are currently supported or requested. BREAKING CHANGE: Removed the `ICardHeader` interface. If you previously used the interface ```ts import type { ICardHeader } from "@ui5/webcomponents-base/dist/Card.js" ``` Use the CardHeader type instead: ```ts import type CardHeader from "@ui5/webcomponents-base/dist/CardHeader.js" ``` Related to [#8461](#8461) * refactor(ui5-upload-collection): remove IUploadCollectionItem interface (#8504) Removes the `IUploadCollectionItem` interface as no other item types are currently supported or requested. BREAKING CHANGE: Removed the `IUploadCollectionItem` interface. If you previously used the interface: ```js import type { IUploadCollectionItem} from "@ui5/webcomponents-fiori/dist/UploadCollection.js" ``` Use the `UploadCollectionItem` type instead: ```js import type UploadCollectionItem from "@ui5/webcomponents-fiori/dist/UploadCollectionItem.js" ``` Related to #8461 * refactor(ui5-busy-indicator): rename BusyIndicatorSize values to S, M and L (#8509) Renames the values of BusyIndicatorSize from "Small", "Medium" and "Large" to "S", "M" and "L". BREAKING CHANGE: The `size` property now accepts different values. If you previously used it like: ```html <ui5-busy-indicator size="Small"></ui5-busy-indicator> ``` Now use the new values instead: ```html <ui5-busy-indicator size="S"></ui5-busy-indicator> ``` Related to #8461 * refactor(ui5-card-header): rename status to additionalText (#8507) Renames the `status` property to `additionalText` and its shadow part. BREAKING CHANGE: The `status` property and its shadow part have been renamed. If you previously used them: ```html <style> .cardHeader::part(status) { ... } </style> <ui5-card-header status="3 of 10"></ui5-popover> ``` Now use `additionalText` instead: ```html <style> .cardHeader::part(additional-text) { ... } </style> <ui5-card-header class="cardHeader" additional-text="3 of 10"></ui5-card-header> ``` Related to #8461 * refactor(ui5-carousel): rename pageIndicatorStyle to pageIndicatorType (#8511) Renames the property `pageIndicatorStyle` to `pageIndicatorType` and enumeration `PageIndicatorStyle` to `PageIndicatorType`. BREAKING CHANGE: The `pageIndicatorStyle` no longer exists. If you previously used it like: ```html <ui5-carousel page-indicator-style="Numeric"></ui5-carousel> ``` Now you should use `pageIndicatorType` instead: ```html <ui5-carousel page-indicator-type="Numeric"></ui5-carousel> ``` Related to #8461 * refactor(framework): remove render method (#8501) Removed the deprecated `UI5Element#render` method of the UI5Element class and replaced it with `UI5Element#renderer`. BREAKING CHANGE: Removed `UI5Element#render` method in favour of `UI5Element#renderer`. If you previously used "render" ```js class MyClass extends UI5Element { static get render() { return litRenderer; } } ``` start using "renderer" ```ts class MyClass extends UI5Element { static get renderer() { return litRenderer; } } ``` Related to [#8461](#8461) * refactor(tools): remove js option from generation templates (#8503) With the release of version 2.0, we strongly encourage component development to be done in TypeScript. Consequently, we are discontinuing the option to generate JavaScript projects and components, as the tooling will no longer support them by default. BREAKING CHANGE: Remove JavaScript template option from @ui5/create-webcomponents-package Previously `npm init @ui5/webcomponents-package` used to create JS-based project, however now it will be TypeScript-based project. If you previously used `npm init @ui5/webcomponents-package --enable-typescript` to create TypeScript-based project, now it's by default, e.g `npm init @ui5/webcomponents-package` and `--enable-typescript` is removed. Related to [#8461](#8461) * chore: remove unused command (#8506) * refactor(ui5-popover): rename PopoverHorizontalAlign and PopoverPlacementType values (#8502) Renames the `Left` and `Right` values of `PopoverHorizontalAlign` and `PopoverPlacementType` to `Start` and `End`. BREAKING CHANGE: The `Left` and `Right` options option have been renamed. If you previously used them to set the placement or the alignment of the popover: ```html <ui5-popover horizontal-align="Left" placement-type="Left"></ui5-popover> ``` Now use `Start` or `End` instead: ```html <ui5-popover horizontal-align="Start" placement-type="Start"></ui5-popover> ``` Related to #8461 * docs: deploy v2 preview * refactor(icons): remove soccor icon (#8524) The icon `soccor` was introduced with a typo. With this update, we are removing the incorrect icon by replacing it with the icon with the correct name, `soccer`. Before: ```html <ui5-icon name="soccor"></ui5-icon ``` After: ```html <ui5-icon name="soccer"></ui5-icon ``` BREAKING CHANGE: Remove `soccor` icon. Use `soccer` instead. Related to #8461 * refactor(icons-business-suite): remove add-polygone icon (#8525) The icon `add-polygone` was introduced with a typo. With this update, we are removing the incorrect icon by replacing it with the icon with the correct name, `add-polygon`. Before: ```html <ui5-icon name="business-suite/add-polygone"></ui5-icon ``` After: ```html <ui5-icon name="business-suite/add-polygon"></ui5-icon ``` BREAKING CHANGE: Remove `add-polygone` icon. Use `add-polygon` instead. Related to #8461 * refactor(tools): remove jsdoc plugin (#8518) Previously, the custom JSDoc plugin was replaced with @custom-elements-manifest/analyzer for generating JSON descriptions of component metadata. With this replacement, the plugin has become redundant. BREAKING CHANGE: The JSDoc plugin has been removed, and the generation of api.json has stopped. If you previously relied on the `ui5-package/dist/api.json file`, you can now use `ui5-package/dist/custom-elements.json` Related to: #8461 * refactor: remove all Assets-static.js modules (#8526) Remove all Assets-static.js modules in favour of their dynamic counterparts - the Assets.js modules. BREAKING CHANGE: All Assets-static.js modules are removed. If you previously imported any Assets-static.js module from any package: ```ts import "@ui5/webcomponents/dist/Assets-static.js"; import "@ui5/webcomponents-icons/dist/Assets-static.js" ``` use the dynamic equivalent of it: ```ts import "@ui5/webcomponents/dist/Assets.js"; import "@ui5/webcomponents-icons/dist/Assets.js" ``` Related to: #8461 * refactor(ui5-calendar): rename `selected-dates-change` to `selection-change` and rename few event details (#8529) Renames the `selected-dates-change ` event name of the Calendar to `selection-change` and the names of two event details - `values` and `dates` to `selectedValues` and `selectedDateValues` respectively. BREAKING CHANGE: The event `selected-dates-change ` is renamed to `selection-change`. In addition the event details `values` and `dates` are renamed to `selectedValues` and `selectedDateValues`. If you previously used the Calendar event as follows: ```ts myCalendar.addEventListener("selected-dates-change", () => { const values = e.detail.values; const dates = e.detail.dates; }) ``` Now you have to use the new event name and details: ```ts myCalendar.addEventListener("selection-change", () => { const values = event.detail.selectedValues; const dates = event.detail.selectedDateValues; }) ``` Related to: #8461 * docs: update keyboard keys abbreviations (#8528) * docs: update keyboard key abbreviation * chore: update * chore: update * chore: update * Update docusaurus.config.ts * docs: add reset button in playground (#8531) * Update index.js * chore: update chromedriver (#8532) * chore: update LocaleData.ts UI5 version 1.103.0 is out of support. Update to latest stable version 1.120.5. * feat(framework): support sr, mk, cnr locales (#8534) The following languages mk_MK, cnr_ME and sr_Cyrl_RS locales and languages are now available and supported by the framework and displayed by the relevant components. To do so, the PR updates the internal openui5 core dependency from 1.120.3 to 1.120.5 Fixes: #8163 * docs(ui5-segmented-button-item): add notes to inherited properties (#8527) Marking properties in documentation that have no effect over the control. * chore: update yarn.lock * refactor(ui5-color-picker): rename `color` to `value` (#8538) Renames the `color` property name of the ColorPicker to `value` and the names of two private properties. BREAKING CHANGE: The property `color` is renamed to `value`. If you previously used the change event of the ColorPicker as follows: ```html <ui5-color-picker color="red"></ui5-color-picker> ``` Now you have to use it like this: ```html <ui5-color-picker value="red"></ui5-color-picker> ``` Related to: #8461 * refactor(tools): enable TypeScript as default (#8521) With this update, TypeScript is now enabled by default for the 'tools' package, along with cleanup for the configuration options. BREAKING CHANGE: JavaScript projects may not function properly with the tools package. Related to: #8461 * refactor(ui5-color-palette): remove deprecated APIs (#8542) Removes the `openPopover` and `showAt` methods from the `ui5-color-palette-popover`. BREAKING CHANGE: The `openPopover` and `showAt` methods are removed in favor of `open` and `opener` properties. If you previously used the imperative API: ```js button.addEventListener("click", function(event) { colorPalettePopover.showAt(this); }); ``` Now the declarative API should be used instead: ```html <ui5-button id="opener">Open</ui5-button> <ui5-color-palette-popover opener="opener"> ``` ```js button.addEventListener("click", function(event) { colorPalettePopover.open = !colorPalettePopover.open; }); ``` Related to: #8461 * refactor(ui5-bar): move to `main` (#8548) Change the library of the `ui5-bar `component from `fiori` to `main`. BREAKING CHANGE: The `ui5-bar` component is now in `main` library. If you previously imported the `ui5-bar` from `fiori`: ```ts import "@ui5/webcomponents-fiori/dist/Bar.js; ``` Now, import the `ui5-bar` from `main`: ```ts import "@ui5/webcomponents/dist/Bar.js"; ``` Related to: #8461 * chore(ui5-bar): fix import in samples (#8555) * refactor(ui5-tab): rename `subTabs` slot to `items` (#8559) Renames 'subTabs' slot of ui5-tab to 'items'. BREAKING CHANGE: If you have previously used: ```html <ui5-tab id="nestedTab" slot="subTabs"></ui5-tab> ``` Now use: ```html <ui5-tab id="nestedTab" slot="items"></ui5-tab> ``` Relates to #8461 * refactor(ui5-tabcontainer): rename `tabs-overflow-mode` to `overflow-mode` (#8565) Renames tabs-overflow-mode to overflow-mode BREAKING CHANGE: If you have previously used: ```html <ui5-tabcontainer tabs-overflow-mode="StartAndEnd"></ui5-tabcontainer> ``` Now use: ```html <ui5-tabcontainer overflow-mode="StartAndEnd"></ui5-tabcontainer> ``` Relates to #8461 * refactor(ui5-tabcontainer): remove TabContainerBackgroundDesign enume… (#8570) Removes `TabContainerBackgroundDesign` enum in favour of `BackgroundDesign` enum. BREAKING CHANGE: If you previously imported `TabContainerBackgroundDesign`, use `BackgroundDesign` instead. Relates to #8461 * chore: enable tree tests (#8558) Co-authored-by: Nayden Naydenov <[email protected]> * chore(release): publish v1.24.0-rc.3 [ci skip] * refactor(ui5-tabcontainer): remove deprecated showOverflow property (#8568) Removes the deprecated showOverflow property. BREAKING CHANGE: The showOverflow property is removed. If previously you have used: ```html <ui5-tabcontainer show-overflow></ui5-tabcontainer> ``` now use the overflowButton slot: ```html <ui5-tabcontainer> <ui5-button slot="startOverflowButton" id="startOverflowButton">Start</ui5-button> <ui5-button slot="overflowButton" id="endOverflowButton">End</ui5-button> </ui5-tabcontainer> ``` Relates to #8461 * refactor(ui5-popover): rename property placementType to placement (#8596) Renames the `placementType` property of `ui5-popover`. Also renames the `PopoverPlacementType` enum to `PopoverPlacement`. BREAKING CHANGE: The `placementType` property and the `PopoverPlacementType` enum have been renamed. If you have previously used the `placementType` property and the `PopoverPlacementType` ```html <ui5-popover placement-type="Bottom"></ui5-popover> ``` ```js import PopoverPlacementType from "@ui5/webcomponents/dist/types/PopoverPlacementType.js"; ``` Now use `placement` instead: ```html <ui5-placement="Bottom"></ui5-popover> ``` ```js import PopoverPlacementType from "@ui5/webcomponents/dist/types/PopoverPlacement.js"; ``` Related to #8461 * framework: enable popover API (#8192) * chore: integrate the popover API with OpenUI5 (#8606) * refactor(ui5-illustrated-message): rename `size` property to `design` (#8605) Renames the `size` property of the `ui5-illustrated-message` to `design`. The semantic values `Auto`, `Base`, `Spot`, `Dialog`, `Scene` and size aspect of this property is not directly clear. BREAKING CHANGE: The `size` property of the `ui5--illustrated-message` is renamed to `design`. If you have previously used the `size` property: ```html <ui5-illustrated-message size="Dialog"> ``` Now use `design` instead: ```html <ui5-illustrated-message design="Dialog"> ``` Related to #8461, #7887 * refactor(ui5-breadcrumbs): rename property `separator-style` to `separators` (#8600) Renames the `separator-style` property of `ui5-breadcrumbs` to `separators`. Also the `BreadcrumbsSeparatorStyle` enum is renamed to `BreadcrumbsSeparator`. BREAKING CHANGE: The `separator-style` property is renamed to `separators` and the `BreadcrumbsSeparatorStyle` enum is renamed to `BreadcrumbsSeparator`. If you have previously used the `separator-style` property: ```html <ui5-breadcrumbs separator-style="Slash"> ``` Now use `separators` instead: ```html <ui5-breadcrumbs separators="Slash"> ``` Related to #8461, #7887 * refactor(ui5-option): remove disabled property (#8602) Removes the `disabled` property of the `ui5-option`, since UX and ACC standards suggest to not include any disabled items in the dropdown. BREAKING CHANGE: The `disabled` property of the `ui5-option` is removed. If you have previously used the `disabled` property: ```html <ui5-option disabled>Option</ui5-option> ``` it will no longer work for the component. Related to #8461, #7887 * refactor(ui5-tabcontainer): delete ITab interface (#8593) - Removes `ITab` interface. TabContainer already works only with Tab and TabSeparator, therefore `ITab` only adds extra complexity. - Replaces `isInline`, `forcedMixedMode`, `forcedPosinset`, `forcedSetsize`, `isTopLevelTab`, `getElementInStrip` with 2 new methods: `receiveStripInfo(info)` and `receiveOverflowInfo(info)`. This way it is clear that those properties are not expected to be set by the Tab or TabSeparator, but are provided by the TabContainer in specific point in time - Makes `getTabInStripDomRef` return type match `UI5Element#getDomRef` BREAKING CHANGE: You can no longer import and implement the `ITab` interface. TabContainer is designed to work only with Tab and TabSeparator classes, so the interface was obsolete.
1 parent 76e0d7f commit 69271c9

File tree

394 files changed

+2572
-11986
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

394 files changed

+2572
-11986
lines changed
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,38 @@
1+
name: Deploy Website [on push]
2+
3+
on:
4+
push:
5+
branches: [ release-2.0 ]
6+
7+
jobs:
8+
deploy:
9+
runs-on: ubuntu-latest
10+
11+
steps:
12+
- uses: actions/checkout@v4
13+
- uses: actions/[email protected]
14+
with:
15+
node-version: 18
16+
cache: 'yarn'
17+
18+
- name: Install and Build
19+
run: |
20+
export NODE_OPTIONS="--max_old_space_size=4096"
21+
yarn install
22+
23+
- name: Update version.md
24+
run: |
25+
touch packages/website/static/version.md
26+
git log -1 &>> packages/website/static/version.md
27+
28+
- name: Build
29+
run: |
30+
yarn ci:deploy:nightly
31+
32+
- name: Deploy
33+
uses: JamesIves/[email protected]
34+
with:
35+
branch: gh-pages # The branch the action should deploy to.
36+
folder: packages/website/build # The folder the action should deploy.
37+
target-folder: v2
38+
clean: true

docs/2-advanced/08-CSP.md

-101
This file was deleted.

docs/5-development/02-custom-UI5-Web-Components.md

+9-9
Original file line numberDiff line numberDiff line change
@@ -34,7 +34,7 @@ class Demo extends UI5Element {
3434
return metadata;
3535
}
3636

37-
static get render() {
37+
static get renderer() {
3838
return litRender;
3939
}
4040

@@ -108,7 +108,7 @@ For a complete reference to all metadata entities, click [here](./03-understandi
108108
UI5 Web Components are agnostic of the DOM render engine used. However, all standard UI5 Web Components (`@ui5/webcomponents`, `@ui5/webcomponents-fiori`, etc.)
109109
use [lit-html](https://github.com/Polymer/lit-html) as the rendering technology of choice.
110110

111-
The render engine is defined via the `render` static getter:
111+
The render engine is defined via the `renderer` static getter:
112112

113113
```js
114114
import UI5Element from "@ui5/webcomponents-base/dist/UI5Element.js";
@@ -129,7 +129,7 @@ class Demo extends UI5Element {
129129
return metadata;
130130
}
131131

132-
static get render() {
132+
static get renderer() {
133133
return litRender;
134134
}
135135
}
@@ -167,7 +167,7 @@ class Demo extends UI5Element {
167167
return metadata;
168168
}
169169

170-
static get render() {
170+
static get renderer() {
171171
return litRender;
172172
}
173173

@@ -216,7 +216,7 @@ class Demo extends UI5Element {
216216
return metadata;
217217
}
218218

219-
static get render() {
219+
static get renderer() {
220220
return litRender;
221221
}
222222

@@ -280,7 +280,7 @@ class Demo extends UI5Element {
280280
return metadata;
281281
}
282282

283-
static get render() {
283+
static get renderer() {
284284
return litRender;
285285
}
286286

@@ -331,7 +331,7 @@ class Demo extends UI5Element {
331331
return metadata;
332332
}
333333

334-
static get render() {
334+
static get renderer() {
335335
return litRender;
336336
}
337337

@@ -398,7 +398,7 @@ class Demo extends UI5Element {
398398
return metadata;
399399
}
400400

401-
static get render() {
401+
static get renderer() {
402402
return litRender;
403403
}
404404

@@ -455,7 +455,7 @@ class Demo extends UI5Element {
455455
return metadata;
456456
}
457457

458-
static get render() {
458+
static get renderer() {
459459
return litRender;
460460
}
461461

docs/5-development/05-testing-UI5-Web-Components.md

+1-29
Original file line numberDiff line numberDiff line change
@@ -209,7 +209,7 @@ assert.notOk(text.includes(NOT_EXPECTED_TEXT), "Text not found")
209209

210210
Avoid complex expressions inside `assert`s by extracting parts of them to variables and only asserting the variables.
211211

212-
## 6. Using the synchronous syntax for writing texts
212+
## 6. Using the synchronous syntax for writing tests
213213

214214
WebdriverIO still supports (although now deprecated) the *synchronous* syntax for writing tests. Click [here](https://webdriver.io/docs/sync-vs-async/) for more information on "sync vs async".
215215

@@ -219,31 +219,3 @@ If you have already written tests for your custom UI5 Web Components using the *
219219
You have 2 options:
220220
- Rewrite all tests to use the *asynchronous* syntax. Click the link above to see some examples. This is the **recommended** approach, because the *synchronous* syntax will no longer work with future `nodejs` versions.
221221
- For the time being, adapt your WebdriverIO configuration to continue supporting the *synchronous* syntax.
222-
223-
### 6.1 Supporting the synchronous syntax for writing tests
224-
225-
- Change your `config/wdio.conf.js` file content from:
226-
227-
```js
228-
module.exports = require("@ui5/webcomponents-tools/components-package/wdio.js");
229-
```
230-
to:
231-
232-
```js
233-
module.exports = require("@ui5/webcomponents-tools/components-package/wdio.sync.js");
234-
```
235-
236-
This will give you the exact same WebdriverIO configuration, but with *synchronous* custom commands (such as `getProperty`, `setProperty`, `hasClass`, etc.).
237-
238-
- Manually install `@wdio/sync`
239-
240-
You can install it with `npm`:
241-
242-
`npm i --save-dev @wdio/sync`
243-
244-
or with `yarn`:
245-
246-
`yarn add -D @wdio/sync`
247-
248-
Just installing the package (with no extra configuration) is enough to let WebdriverIO run the *synchronous* tests.
249-

0 commit comments

Comments
 (0)