ui5-webcomponents icon indicating copy to clipboard operation
ui5-webcomponents copied to clipboard

2.0 suggested changes

Open ilhan007 opened this issue 3 years ago • 0 comments

Background

This issue lists all deprecated APIs and all APIs that we would like to improve and change before releasing next major version (2.0).

Deprecated modules

  • Assets-static.js in several packages should be removed

Changes agreed:

  • [ ] :exclamation: [breaking] :exclamation: Remove Assets-static.js from all packages

@ui5/webcomponents-base

Changes under discussion:

  • Remove fallback to default value
  • check and rework defaultValues of property types, input.value doesn't have default and it accepts null/undefined
  • properties of type Object have {} by default, probably undefined will be a better default.
  • Check "allowList" array and remove/rename properties if needed
  • Revise all the events that have stopped bubbling.

Changes agreed:

  • [ ] :exclamation: [breaking] :exclamation: CSP Support will be supported out of the box via the adopted stylesheets that are now supported everywhere.

UI5Element

Changes agreed:

  • [ ] [enhancement] Enable dynamic load of dependencies
  • [ ] :exclamation: [breaking] :exclamation: Remove static get render (to be replaced by renderer)
  • [ ] :exclamation: [breaking] :exclamation: Remove getStaticAreaItemDomRef as obsolete

UI5ElementMetadata

Changes under discussion:

  • Remove processChildren

Changes agreed:

  • [ ] [enhancement] manageSlot to become per slot

Device

Changes agreed:

  • [ ] :exclamation: [breaking] :exclamation: Remove the Device#isIE() method

Static Areа

Changes agreed:

  • [ ] :exclamation: [breaking] :exclamation: Remove Static Area and Static Area items

Form Support

Changes agreed:

  • [ ] [enhancement] attachInternals to replace the hidden input https://github.com/SAP/ui5-webcomponents/pull/7909

@ui5/webcomponents-tools

Changes agreed:

  • [ ] :exclamation: [breaking] :exclamation: Remove the support of JS development from our tools , although the framework will still allow creating components with pure JS.
  • [ ] :exclamation: [breaking] :exclamation: Remove the JSDoc plugin
  • [ ] :exclamation: [breaking] :exclamation: Upgrade to new major wdio version would breaking for consumers of wdio.config.js - check if needed as there is research to use Cypress in future

@ui5/webcomponents-theming

Changes agreed:

  • [ ] :exclamation: [breaking] :exclamation: Remove Belize theme

@ui5/webcomponents, @ui5/webcomponents-fiori

Move components

Changes agreed:

  • [ ] :exclamation: [breaking] :exclamation: - move the Bar component from fiori to main package.

Grouping implementation

  • [ ] Review grouping of items in all list controls - List, ComboBoxes, Inputs, Selects https://github.com/SAP/ui5-webcomponents/issues/7732

Props

Changes under discussion:

  • Remove TabContainer's deprecated property showOverflow
  • Review AriaHasPopup enum values. Which values are still relevant and shouldn't they be lowercase?

Changes agreed:

  • Keep IllustratedMessage#title slot
  • Keep IllustratedMessage#subtitle slot
  • [ ] :exclamation: [breaking] :exclamation: Remove Option#disabled - remove as UX and ACC standards suggest to not include any disabled items in the dropdown
  • [ ] :exclamation: [breaking] :exclamation: Remove ProgressIndicator#disabled- a disabled indicator can be part of disabled UI (Form, Panel), but does not make sense on its own. Also aria-disabled state is deprecated for the component, and it's not requested by a client.
  • [ ] :exclamation: [breaking] :exclamation: Rename SegmentedButtonItem#pressed to "selected"
  • [ ] :exclamation: [breaking] :exclamation:mode properties in Table, List, SegmentedButton to become selectionMode
  • [ ] :exclamation: [breaking] :exclamation:Change Calendar's event selected-dates-change to selection-change
  • [ ] :exclamation: [breaking] :exclamation: Change the Calendar's event details values and dates to selectedValues and selectedDateValues.
  • [ ] :exclamation: [breaking] :exclamation:Change some enum values in TableMode, ListMode, SegmentedButtonMode: SingleSelect -> Single, MultiSelect -> Multiple
  • [ ] :exclamation: [breaking] :exclamation: Change Enums' names: TableMode -> TableSelectionMode, ListMode -> ListSelectionMode, SegmentedButtonMode -> SegmentedButtonSelectionMode

Events

Changes under discussion:

  • [ ] Check the presence of the following events: open-change, open, close, before-open, before-close, after-open, after-close.

Event Details

Changes under discussion:

  • Check targetRef and ref presence and stick to the one or to the other.

Slots

Changes under discussion:

  • Check icon slot presence and rename to "icons"

Methods

Changes under discussion:

  • Check openPicker, togglePicker or similar methods and unify them

Enums

Changes agreed:

  • [ ] :exclamation: [breaking] :exclamation: Rename PopoverHorizontalAlign values - Left, Right --> Start, End
  • [ ] :exclamation: [breaking] :exclamation: Rename PopoverPlacementType - Left, Right --> Start, End

Interfaces

  • [ ] - Revise existing interfaces, because many of them are implemented by only 1 component and seems redundant for the moment. Also many of the interfaces contain only 1 private property which name start with underscore and doesn't have jsdoc comment to describe it, for example:
interface TestInterface {
    _test: string;
}

Let's discuss how to proceed with these interfaces.

@ui5/webcomponents-icons

Changes agreed:

  • [ ] :exclamation: [breaking] :exclamation: - Remove "soccor", keep "soccer"

@ui5/webcomponents-icons-business-suite

Changes agreed:

  • [ ] :exclamation: [breaking] :exclamation: - Remove "add-polygone", keep "add-polygon"

ilhan007 avatar Dec 09 '21 09:12 ilhan007