@dubai-design-system/components-js 5.2.0 → 5.3.0
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.
- package/CHANGELOG.md +68 -0
- package/MIGRATION.md +138 -18
- package/dist/cjs/dda-accordion.cjs.entry.js +3 -3
- package/dist/cjs/dda-alert.cjs.entry.js +5 -5
- package/dist/cjs/dda-attach-file.cjs.entry.js +3 -3
- package/dist/cjs/dda-avatar.cjs.entry.js +8 -8
- package/dist/{dda/dda-tooltip.entry.js → cjs/dda-banner-card.cjs.entry.js} +16 -36
- package/dist/cjs/dda-banner.cjs.entry.js +3 -3
- package/dist/cjs/dda-breadcrumb.cjs.entry.js +2 -2
- package/dist/cjs/dda-button.cjs.entry.js +3 -3
- package/dist/cjs/dda-checkbox.cjs.entry.js +3 -3
- package/dist/cjs/dda-chip.cjs.entry.js +3 -3
- package/dist/cjs/dda-credit-card.cjs.entry.js +3 -3
- package/dist/cjs/dda-creditcard-field.cjs.entry.js +4 -4
- package/dist/cjs/dda-dropdown.cjs.entry.js +4 -4
- package/dist/cjs/dda-footer.cjs.entry.js +3 -3
- package/dist/cjs/dda-header.cjs.entry.js +208 -23
- package/dist/cjs/dda-home-banner.cjs.entry.js +4 -4
- package/dist/{dda/dda-tabs.entry.js → cjs/dda-home-carousel.cjs.entry.js} +18 -49
- package/dist/cjs/dda-horizontal-stepper.cjs.entry.js +3 -3
- package/dist/cjs/dda-input.cjs.entry.js +3 -3
- package/dist/cjs/dda-link-button_2.cjs.entry.js +6 -6
- package/dist/cjs/dda-number-field.cjs.entry.js +3 -3
- package/dist/cjs/dda-pagination.cjs.entry.js +4 -4
- package/dist/cjs/dda-phonefield.cjs.entry.js +3 -3
- package/dist/cjs/dda-progressbar.cjs.entry.js +3 -3
- package/dist/cjs/dda-range-slider.cjs.entry.js +3 -3
- package/dist/cjs/dda-search-input.cjs.entry.js +3 -3
- package/dist/cjs/dda-segmented-tabs.cjs.entry.js +5 -5
- package/dist/cjs/dda-select.cjs.entry.js +4 -6
- package/dist/cjs/dda-sticky-footer.cjs.entry.js +41 -4
- package/dist/cjs/dda-tabs.cjs.entry.js +4 -4
- package/dist/cjs/dda-textarea.cjs.entry.js +1351 -16189
- package/dist/cjs/dda-toggle.cjs.entry.js +3 -3
- package/dist/cjs/dda-tooltip.cjs.entry.js +3 -3
- package/dist/cjs/dda-ui-card.cjs.entry.js +3 -3
- package/dist/cjs/dda-vertical-stepper.cjs.entry.js +2 -2
- package/dist/cjs/dda.cjs.js +3 -30
- package/dist/cjs/{index-Na_7EWDR.js → index-DD8fdSxb.js} +1 -1
- package/dist/cjs/index.cjs.js +0 -10
- package/dist/cjs/loader.cjs.js +2 -2
- package/dist/cjs/parse-json-prop-B0KWD8qe.js +38 -0
- package/dist/collection/collection-manifest.json +5 -3
- package/dist/collection/components/dda-accordion/dda-accordion.js +1 -1
- package/dist/collection/components/dda-alert/dda-alert.js +1 -1
- package/dist/collection/components/dda-attach-file/dda-attach-file.js +1 -1
- package/dist/collection/components/dda-avatar/dda-avatar.js +5 -5
- package/dist/collection/components/dda-banner/dda-banner.js +1 -1
- package/dist/collection/components/dda-banner-card/dda-banner-card.js +243 -0
- package/dist/collection/components/dda-button/dda-button.js +1 -1
- package/dist/collection/components/dda-checkbox/dda-checkbox.js +1 -1
- package/dist/collection/components/dda-chip/dda-chip.js +1 -1
- package/dist/collection/components/dda-credit-card/dda-credit-card.js +1 -1
- package/dist/collection/components/dda-creditcard-field/dda-creditcard-field.js +1 -1
- package/dist/collection/components/dda-dropdown/dda-dropdown.js +1 -1
- package/dist/collection/components/dda-footer/dda-footer.js +1 -1
- package/dist/collection/components/dda-header/dda-header.js +838 -88
- package/dist/collection/components/dda-header/dda-header.stories.js +200 -35
- package/dist/collection/components/dda-header/nav-model.js +69 -0
- package/dist/collection/components/dda-home-banner/dda-home-banner.js +2 -2
- package/dist/collection/components/dda-home-carousel/dda-home-carousel.js +164 -0
- package/dist/collection/components/dda-home-carousel/dda-home-carousel.stories.js +24 -0
- package/dist/collection/components/dda-input/dda-input.js +1 -1
- package/dist/collection/components/dda-link-button/dda-link-button.js +2 -2
- package/dist/collection/components/dda-number-field/dda-number-field.js +1 -1
- package/dist/collection/components/dda-pagination/dda-pagination.js +1 -1
- package/dist/collection/components/dda-phonefield/dda-phonefield.js +1 -1
- package/dist/collection/components/dda-progressbar/dda-progressbar.js +1 -1
- package/dist/collection/components/dda-radiobutton/dda-radiobutton.css +228 -6
- package/dist/collection/components/dda-radiobutton/dda-radiobutton.js +1 -1
- package/dist/collection/components/dda-range-slider/dda-range-slider.js +2 -2
- package/dist/collection/components/dda-search-input/dda-search-input.js +1 -1
- package/dist/collection/components/dda-select/dda-select.js +1 -1
- package/dist/collection/components/dda-sticky-footer/dda-sticky-footer.js +496 -5
- package/dist/collection/components/dda-sticky-footer/dda-sticky-footer.stories.js +12 -1
- package/dist/collection/components/dda-tabs/dda-tabs.js +1 -1
- package/dist/collection/components/dda-textarea/dda-textarea.js +2 -2
- package/dist/collection/components/dda-toggle/dda-toggle.js +1 -1
- package/dist/collection/components/dda-tooltip/dda-tooltip.js +1 -1
- package/dist/collection/components/dda-ui-card/dda-ui-card.js +1 -1
- package/dist/collection/components/segmented-groups/dda-segmented-tabs/dda-segmented-tabs.css +29 -9
- package/dist/collection/components/segmented-groups/dda-segmented-tabs/dda-segmented-tabs.js +1 -1
- package/dist/collection/components/stepper/dda-horizontal-stepper/dda-horizontal-stepper.js +1 -1
- package/dist/collection/components/stepper/dda-vertical-stepper/dda-vertical-stepper.js +1 -1
- package/dist/collection/global/global.css +228 -6
- package/dist/collection/utils/parse-json-prop.js +34 -0
- package/dist/components/dda-accordion.js +1 -59
- package/dist/components/dda-alert.js +1 -94
- package/dist/components/dda-attach-file.js +1 -138
- package/dist/components/dda-avatar.js +1 -107
- package/dist/components/dda-banner-card.d.ts +11 -0
- package/dist/components/dda-banner-card.js +1 -0
- package/dist/components/dda-banner.js +1 -57
- package/dist/components/dda-breadcrumb.js +1 -66
- package/dist/components/dda-button.js +1 -6
- package/dist/components/dda-checkbox.js +1 -59
- package/dist/components/dda-chip.js +1 -55
- package/dist/components/dda-credit-card.js +1 -54
- package/dist/components/dda-creditcard-field.js +1 -133
- package/dist/components/dda-dropdown.js +1 -113
- package/dist/components/dda-footer.js +1 -72
- package/dist/components/dda-header.js +1 -367
- package/dist/components/dda-home-banner.js +1 -249
- package/dist/components/dda-home-carousel.d.ts +11 -0
- package/dist/components/dda-home-carousel.js +1 -0
- package/dist/components/dda-horizontal-stepper.js +1 -69
- package/dist/components/dda-input.js +1 -92
- package/dist/components/dda-link-button.js +1 -6
- package/dist/components/dda-number-field.js +1 -127
- package/dist/components/dda-pagination.js +1 -133
- package/dist/components/dda-phonefield.js +1 -316
- package/dist/components/dda-progressbar.js +1 -58
- package/dist/components/dda-radiobutton.js +1 -6
- package/dist/components/dda-range-slider.js +1 -93
- package/dist/components/dda-search-input.js +1 -102
- package/dist/components/dda-segmented-tabs.js +1 -133
- package/dist/components/dda-select.js +1 -219
- package/dist/components/dda-sticky-footer.js +1 -132
- package/dist/components/dda-tabs.js +1 -91
- package/dist/components/dda-textarea.js +1 -31277
- package/dist/components/dda-toggle.js +1 -55
- package/dist/components/dda-tooltip.js +1 -6
- package/dist/components/dda-ui-card.js +1 -71
- package/dist/components/dda-vertical-stepper.js +1 -72
- package/dist/components/index.js +1 -34
- package/dist/components/{p-D7sJgBDk.js → p-BCtBptNq.js} +1 -1
- package/dist/components/p-BP6BxgDV.js +1 -0
- package/dist/components/p-BZzFtOHg.js +1 -0
- package/dist/components/p-CvcFE821.js +1 -0
- package/dist/components/{p-_-I_65FG.js → p-D3e_hki9.js} +1 -1
- package/dist/components/{p-C2Cs3ruo.js → p-DCwxgkNU.js} +1 -1
- package/dist/components/{p-C520q-ka.js → p-R9p4F9Pi.js} +1 -1
- package/dist/dda/dda.css +2 -6393
- package/dist/dda/dda.esm.js +1 -47
- package/dist/dda/index.esm.js +1 -29
- package/dist/dda/{p-ee6d56fc.entry.js → p-0480f0a9.entry.js} +1 -1
- package/dist/dda/{p-0a86a74c.entry.js → p-06188c4c.entry.js} +1 -1
- package/dist/dda/p-08e1892a.entry.js +1 -0
- package/dist/dda/{p-0574c9df.entry.js → p-10c5a752.entry.js} +1 -1
- package/dist/dda/{p-2630152f.entry.js → p-169ba650.entry.js} +1 -1
- package/dist/dda/{p-9c86dc30.entry.js → p-25058697.entry.js} +1 -1
- package/dist/dda/{p-e8ca224f.entry.js → p-32a7c588.entry.js} +1 -1
- package/dist/dda/{p-95e1a389.entry.js → p-333205aa.entry.js} +1 -1
- package/dist/dda/{p-3835f3b7.entry.js → p-46df4933.entry.js} +1 -1
- package/dist/dda/{p-eecfe091.entry.js → p-47322b02.entry.js} +1 -1
- package/dist/dda/{p-489a3711.entry.js → p-4e717a2e.entry.js} +1 -1
- package/dist/dda/{p-271c5f91.entry.js → p-5840fad9.entry.js} +1 -1
- package/dist/dda/p-5bb62ef7.entry.js +1 -0
- package/dist/dda/p-5e757702.entry.js +1 -0
- package/dist/dda/{p-32746429.entry.js → p-6430c363.entry.js} +1 -1
- package/dist/dda/{p-8de4f35e.entry.js → p-6d4f5672.entry.js} +1 -1
- package/dist/dda/{p-9416d8ec.entry.js → p-6db5588a.entry.js} +1 -1
- package/dist/dda/{p-16f94322.entry.js → p-76859bf8.entry.js} +1 -1
- package/dist/dda/p-7c1abbd2.entry.js +1 -0
- package/dist/dda/{p-eed4a104.entry.js → p-7ffce954.entry.js} +1 -1
- package/dist/dda/{p-58de747b.entry.js → p-8108c4ed.entry.js} +1 -1
- package/dist/dda/{p-95b87c55.entry.js → p-8852dafb.entry.js} +1 -1
- package/dist/dda/{p-98c59aa8.entry.js → p-8dbbc0ca.entry.js} +1 -1
- package/dist/dda/{p-3d57e957.entry.js → p-95100f73.entry.js} +1 -1
- package/dist/dda/{p-b6190656.entry.js → p-9a4e34d1.entry.js} +1 -1
- package/dist/dda/p-9b234635.entry.js +1 -0
- package/dist/dda/{p-d06c5daf.entry.js → p-9d9834ff.entry.js} +1 -1
- package/dist/dda/{p-1acc0fda.entry.js → p-9f01cb56.entry.js} +1 -1
- package/dist/dda/{p-c39d196d.entry.js → p-9ff8dc84.entry.js} +1 -1
- package/dist/dda/p-BnrqwGTj.js +2 -0
- package/dist/dda/p-CvcFE821.js +1 -0
- package/dist/dda/{p-e660a594.entry.js → p-a8a1ee5d.entry.js} +1 -1
- package/dist/dda/{p-d8fd3f73.entry.js → p-b37f40a9.entry.js} +1 -1
- package/dist/dda/p-eaffd32d.entry.js +1 -0
- package/dist/dda/{p-63754a93.entry.js → p-f2efc121.entry.js} +1 -1
- package/dist/dda/{p-96741f45.entry.js → p-faed59dd.entry.js} +1 -1
- package/dist/dda/p-fb00dec4.entry.js +1 -0
- package/dist/esm/dda-accordion.entry.js +3 -3
- package/dist/esm/dda-alert.entry.js +5 -5
- package/dist/esm/dda-attach-file.entry.js +3 -3
- package/dist/esm/dda-avatar.entry.js +8 -8
- package/dist/{dda/dda-credit-card.entry.js → esm/dda-banner-card.entry.js} +14 -16
- package/dist/esm/dda-banner.entry.js +3 -3
- package/dist/esm/dda-breadcrumb.entry.js +2 -2
- package/dist/esm/dda-button.entry.js +3 -3
- package/dist/esm/dda-checkbox.entry.js +3 -3
- package/dist/esm/dda-chip.entry.js +3 -3
- package/dist/esm/dda-credit-card.entry.js +3 -3
- package/dist/esm/dda-creditcard-field.entry.js +4 -4
- package/dist/esm/dda-dropdown.entry.js +4 -4
- package/dist/esm/dda-footer.entry.js +3 -3
- package/dist/esm/dda-header.entry.js +208 -23
- package/dist/esm/dda-home-banner.entry.js +4 -4
- package/dist/{dda/dda-breadcrumb.entry.js → esm/dda-home-carousel.entry.js} +16 -30
- package/dist/esm/dda-horizontal-stepper.entry.js +3 -3
- package/dist/esm/dda-input.entry.js +3 -3
- package/dist/esm/dda-link-button_2.entry.js +6 -6
- package/dist/esm/dda-number-field.entry.js +3 -3
- package/dist/esm/dda-pagination.entry.js +4 -4
- package/dist/esm/dda-phonefield.entry.js +3 -3
- package/dist/esm/dda-progressbar.entry.js +3 -3
- package/dist/esm/dda-range-slider.entry.js +3 -3
- package/dist/esm/dda-search-input.entry.js +3 -3
- package/dist/esm/dda-segmented-tabs.entry.js +5 -5
- package/dist/esm/dda-select.entry.js +4 -6
- package/dist/esm/dda-sticky-footer.entry.js +41 -4
- package/dist/esm/dda-tabs.entry.js +4 -4
- package/dist/esm/dda-textarea.entry.js +1351 -16189
- package/dist/esm/dda-toggle.entry.js +3 -3
- package/dist/esm/dda-tooltip.entry.js +3 -3
- package/dist/esm/dda-ui-card.entry.js +3 -3
- package/dist/esm/dda-vertical-stepper.entry.js +2 -2
- package/dist/esm/dda.js +4 -31
- package/dist/esm/{index-CI_UcUy5.js → index-BnrqwGTj.js} +1 -1
- package/dist/esm/index.js +0 -10
- package/dist/esm/loader.js +3 -3
- package/dist/esm/parse-json-prop-CvcFE821.js +36 -0
- package/dist/types/components/dda-banner-card/dda-banner-card.d.ts +25 -0
- package/dist/types/components/dda-header/dda-header.d.ts +114 -4
- package/dist/types/components/dda-header/dda-header.stories.d.ts +187 -0
- package/dist/types/components/dda-header/nav-model.d.ts +19 -0
- package/dist/types/components/dda-home-carousel/dda-home-carousel.d.ts +29 -0
- package/dist/types/components/dda-home-carousel/dda-home-carousel.stories.d.ts +20 -0
- package/dist/types/components/dda-sticky-footer/dda-sticky-footer.d.ts +70 -1
- package/dist/types/components/dda-sticky-footer/dda-sticky-footer.stories.d.ts +4 -0
- package/dist/types/components.d.ts +726 -11
- package/dist/types/utils/parse-json-prop.d.ts +1 -0
- package/package.json +4 -2
- package/dist/cjs/dda-link-button.cjs.entry.js +0 -51
- package/dist/cjs/dda-radiobutton.cjs.entry.js +0 -27
- package/dist/cjs/index-DXyiIgGK.js +0 -4637
- package/dist/components/dda-button2.js +0 -80
- package/dist/components/dda-link-button2.js +0 -81
- package/dist/components/dda-radiobutton2.js +0 -54
- package/dist/components/dda-tooltip2.js +0 -70
- package/dist/components/index2.js +0 -4622
- package/dist/components/p-CZO9Eawo.js +0 -1
- package/dist/components/unique-id.js +0 -12
- package/dist/dda/dda-accordion.entry.js +0 -31
- package/dist/dda/dda-alert.entry.js +0 -57
- package/dist/dda/dda-attach-file.entry.js +0 -102
- package/dist/dda/dda-avatar.entry.js +0 -70
- package/dist/dda/dda-banner.entry.js +0 -30
- package/dist/dda/dda-button.entry.js +0 -47
- package/dist/dda/dda-checkbox.entry.js +0 -27
- package/dist/dda/dda-chip.entry.js +0 -25
- package/dist/dda/dda-creditcard-field.entry.js +0 -94
- package/dist/dda/dda-dropdown.entry.js +0 -75
- package/dist/dda/dda-footer.entry.js +0 -34
- package/dist/dda/dda-header.entry.js +0 -282
- package/dist/dda/dda-home-banner.entry.js +0 -208
- package/dist/dda/dda-horizontal-stepper.entry.js +0 -39
- package/dist/dda/dda-input.entry.js +0 -56
- package/dist/dda/dda-link-button.entry.js +0 -49
- package/dist/dda/dda-number-field.entry.js +0 -86
- package/dist/dda/dda-pagination.entry.js +0 -86
- package/dist/dda/dda-phonefield.entry.js +0 -271
- package/dist/dda/dda-progressbar.entry.js +0 -30
- package/dist/dda/dda-radiobutton.entry.js +0 -25
- package/dist/dda/dda-range-slider.entry.js +0 -55
- package/dist/dda/dda-search-input.entry.js +0 -63
- package/dist/dda/dda-segmented-tabs.entry.js +0 -96
- package/dist/dda/dda-select.entry.js +0 -183
- package/dist/dda/dda-sticky-footer.entry.js +0 -61
- package/dist/dda/dda-textarea.entry.js +0 -31241
- package/dist/dda/dda-toggle.entry.js +0 -25
- package/dist/dda/dda-ui-card.entry.js +0 -41
- package/dist/dda/dda-vertical-stepper.entry.js +0 -41
- package/dist/dda/index-CFIwfRqf.js +0 -4622
- package/dist/dda/p-87d647e7.entry.js +0 -1
- package/dist/dda/p-9541e108.entry.js +0 -1
- package/dist/dda/p-CI_UcUy5.js +0 -2
- package/dist/dda/p-c0da1e14.entry.js +0 -1
- package/dist/dda/p-c5ebf7df.entry.js +0 -1
- package/dist/dda/p-ea1720d2.entry.js +0 -1
- package/dist/dda/unique-id-B-I003EB.js +0 -12
- package/dist/esm/dda-link-button.entry.js +0 -49
- package/dist/esm/dda-radiobutton.entry.js +0 -25
- package/dist/esm/index-CFIwfRqf.js +0 -4622
package/CHANGELOG.md
CHANGED
|
@@ -4,6 +4,74 @@ All notable changes to the Dubai Design System packages are documented in this f
|
|
|
4
4
|
All four published packages (`components-js`, `components-react`, `components-vue`,
|
|
5
5
|
`components-angular`) share a version and release together.
|
|
6
6
|
|
|
7
|
+
## 5.3.0 (2026-09-24)
|
|
8
|
+
|
|
9
|
+
A minor release. It brings back the 3.x attributes and components that sites built on 3.5 –
|
|
10
|
+
3.12.10 use, so they can upgrade to 5.x. Most dda-header text can now be set. Read
|
|
11
|
+
"From 3.5 – 3.12.10 to 5.3.0" in MIGRATION.md.
|
|
12
|
+
|
|
13
|
+
### Features
|
|
14
|
+
|
|
15
|
+
- **3.x attributes work again.** Versions 3.5 to 3.12.10 had attributes that 3.12.11 to 5.2.0
|
|
16
|
+
did not have. The ones below are back, under their 3.x names. "From 3.5 – 3.12.10 to 5.3.0"
|
|
17
|
+
in MIGRATION.md lists them. A page that uses only 5.x attributes can change in a small number of
|
|
18
|
+
places. "Behaviour Changes" below lists them.
|
|
19
|
+
- **dda-header: the panel, toolbar and side-menu texts can be set.** The accessibility panel, the
|
|
20
|
+
tooltips, the search placeholder and the side-menu titles take attributes, so a page can show
|
|
21
|
+
them in its own language. An empty attribute removes that text. An empty `login-text` or
|
|
22
|
+
`language_text` removes the Login link or the language button, as in 3.x. A few close-button
|
|
23
|
+
labels (for example "Close Sidebar") stay fixed English text; they have no attribute.
|
|
24
|
+
- **dda-header: the 3.x menu shape.** `quick-links` also accepts the 3.x shape (`type`,
|
|
25
|
+
`headerMenuLabel`, `url`, `children`). `dda_default_submenu` items open a dropdown list with a
|
|
26
|
+
second-level fly-out. In TypeScript, `quickLinks` has the type `string | QuickLinkItem[]`, so a
|
|
27
|
+
React, Vue or Angular page can set an array.
|
|
28
|
+
- **dda-header: other menu, 3.x mobile search link, events.** New: `other-menu-items`,
|
|
29
|
+
`side-other-menu-title`, `hide-other-menu`, `mobile-menu-search-url`, and the
|
|
30
|
+
`accessibilitymenufunctionality` and `searchfunctionality` events.
|
|
31
|
+
- **dda-sticky-footer: lists, dubai.ae and the more button.** `middle-link` takes any number of
|
|
32
|
+
logos. `right-link` takes text links with Material icons. `more-icon` adds a button that collects
|
|
33
|
+
the right links on phones. New: `dubaiae-icon-*`, `color-theme`, `*-icon-id`, `*-icon-src-dark`.
|
|
34
|
+
- **dda-home-carousel and dda-banner-card are back.** The cards are links and use the same
|
|
35
|
+
scrolling row as the home-page quick links.
|
|
36
|
+
|
|
37
|
+
### Bug Fixes
|
|
38
|
+
|
|
39
|
+
- **dda-header: the side-menu ReadSpeaker link has its own id.** Both the desktop and the
|
|
40
|
+
side-menu ReadSpeaker links rendered `id="readspeaker_button1"`, a duplicate id. The side-menu
|
|
41
|
+
copy is now `readspeaker_button1Mobile`.
|
|
42
|
+
- **dda-header: the `L` access key is only on the desktop ReadSpeaker link.** The side-menu copy
|
|
43
|
+
had it too, so pressing `Alt+Shift+L` (or the browser's access-key combination) could activate
|
|
44
|
+
the hidden side-menu link instead of the visible one.
|
|
45
|
+
- **dda-segmented-tabs: the Dubai font, one-line labels, a scrollbar and a focus ring.** The
|
|
46
|
+
segments are buttons, so the browser showed them in its own font, not Dubai. A long label could
|
|
47
|
+
break onto two lines and go outside the segment's fixed height, and a group wider than its
|
|
48
|
+
container made the page wider. The segments had no visible focus ring. The segments now use the
|
|
49
|
+
page font and keep each label on one line, the group scrolls inside its container instead of
|
|
50
|
+
widening it, and a focus ring shows inside the selected segment.
|
|
51
|
+
|
|
52
|
+
### Behaviour Changes
|
|
53
|
+
|
|
54
|
+
These changes also apply to a page that uses only 5.x attributes. "From 5.2.x to 5.3.0" in
|
|
55
|
+
MIGRATION.md tells you what to check.
|
|
56
|
+
|
|
57
|
+
- **dda-header: an empty `login-text` removes the Login link.** In 5.2.0, an empty `login-text`
|
|
58
|
+
showed the default label "Login". Now it removes the Login link from the toolbar and the side
|
|
59
|
+
menu, as in 3.x. Remove the attribute to show "Login".
|
|
60
|
+
- **dda-header: an empty `language_text` removes the language button.** In 5.2.0, an empty
|
|
61
|
+
`language_text` showed "العربية". Now it removes the language button, as in 3.x. Remove the
|
|
62
|
+
attribute to show "العربية".
|
|
63
|
+
- **dda-header: a `quick-links` item without `href` links to `#`.** In 5.2.0, a 5.x item or a
|
|
64
|
+
mega-menu link without `href` rendered an `<a>` with no `href`. Now the link has `href="#"`.
|
|
65
|
+
- **Home-page service cards show a focus style.** A `.quick-links .link-item` card now moves up
|
|
66
|
+
and shows an outline when it gets keyboard focus (`:focus-visible`). This also applies to the
|
|
67
|
+
plain-HTML cards of 5.2.0. If your own CSS styles this focus state, check that the two styles
|
|
68
|
+
agree.
|
|
69
|
+
- **dda-sticky-footer: the middle logos show by default.** Before, they showed only with
|
|
70
|
+
`hide-middle-section="false"`. Now they show when at least one logo is set. Use
|
|
71
|
+
`hide-middle-section` to hide them.
|
|
72
|
+
- **dda-sticky-footer: an item without an image is not rendered.** Before, every item rendered,
|
|
73
|
+
and an item without an image was an empty link.
|
|
74
|
+
|
|
7
75
|
## 5.2.0 (2026-09-23)
|
|
8
76
|
|
|
9
77
|
A minor release. The home-page service cards become one scrolling row that stays on the banner at
|
package/MIGRATION.md
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
|
-
# Upgrading to 5.
|
|
1
|
+
# Upgrading to 5.3
|
|
2
2
|
|
|
3
3
|
This guide takes you from any earlier release of the Dubai Design System packages to
|
|
4
|
-
**5.
|
|
4
|
+
**5.3.0**. It ships inside `@dubai-design-system/components-js` as `MIGRATION.md`, next to
|
|
5
5
|
`CHANGELOG.md`.
|
|
6
6
|
|
|
7
7
|
All four packages share one version and must be upgraded together:
|
|
@@ -22,10 +22,12 @@ Then read the sections for your version, in this order:
|
|
|
22
22
|
|
|
23
23
|
| You are on | Read |
|
|
24
24
|
| --- | --- |
|
|
25
|
-
| **5.
|
|
26
|
-
| **5.
|
|
27
|
-
| **
|
|
28
|
-
| **
|
|
25
|
+
| **5.2.x** (5.2.0) | [Every upgrade](#2-every-upgrade-checklist) → [5.2.x to 5.3.0](#3-from-52x-to-530) |
|
|
26
|
+
| **5.1.x** (5.1.0 – 5.1.1) | [Every upgrade](#2-every-upgrade-checklist) → [5.1.x to 5.2.0](#5-from-51x-to-520) → [5.2.x to 5.3.0](#3-from-52x-to-530) |
|
|
27
|
+
| **5.0.x** (5.0.0 – 5.0.3) | [Every upgrade](#2-every-upgrade-checklist) → [5.0.x to 5.1.0](#6-from-50x-to-510) → [5.1.x to 5.2.0](#5-from-51x-to-520) → [5.2.x to 5.3.0](#3-from-52x-to-530) |
|
|
28
|
+
| **4.1.0** | [Every upgrade](#2-every-upgrade-checklist) → [From 4.1.0](#8-from-410) → [From 3.x](#9-from-3x-to-50) → [Notes from 5.0.1](#7-notes-from-501-fonts-and-the-stylesheet) → [5.0.x to 5.1.0](#6-from-50x-to-510) → [5.1.x to 5.2.0](#5-from-51x-to-520) → [5.2.x to 5.3.0](#3-from-52x-to-530) |
|
|
29
|
+
| **3.5 – 3.12.10** (for example 3.11.3) | [Every upgrade](#2-every-upgrade-checklist) → [From 3.5 – 3.12.10](#4-from-35--31210-to-530) → [From 3.x](#9-from-3x-to-50) → [Notes from 5.0.1](#7-notes-from-501-fonts-and-the-stylesheet) → [5.0.x to 5.1.0](#6-from-50x-to-510) → [5.1.x to 5.2.0](#5-from-51x-to-520) → [5.2.x to 5.3.0](#3-from-52x-to-530) |
|
|
30
|
+
| **3.x** (3.12.16 or earlier) | [Every upgrade](#2-every-upgrade-checklist) → [From 3.x](#9-from-3x-to-50) → [Notes from 5.0.1](#7-notes-from-501-fonts-and-the-stylesheet) → [5.0.x to 5.1.0](#6-from-50x-to-510) → [5.1.x to 5.2.0](#5-from-51x-to-520) → [5.2.x to 5.3.0](#3-from-52x-to-530) |
|
|
29
31
|
|
|
30
32
|
Most pages need only a few attribute changes. The changes that can break something
|
|
31
33
|
**silently**, with no error in the console, are marked **Silent**. Search for those first.
|
|
@@ -39,14 +41,14 @@ Do these whatever version you start from.
|
|
|
39
41
|
- [ ] **Install the same exact version of every DDA package.**
|
|
40
42
|
|
|
41
43
|
```bash
|
|
42
|
-
npm install @dubai-design-system/components-js@5.
|
|
44
|
+
npm install @dubai-design-system/components-js@5.3.0
|
|
43
45
|
# and, if you use a wrapper:
|
|
44
|
-
npm install @dubai-design-system/components-react@5.
|
|
46
|
+
npm install @dubai-design-system/components-react@5.3.0 # or -vue / -angular
|
|
45
47
|
```
|
|
46
48
|
|
|
47
49
|
- [ ] **Load `dda.css`.** It carries the global styles and the Dubai typeface. From npm:
|
|
48
50
|
`import '@dubai-design-system/components-js/dist/dda/dda.css';`. From the CDN, see
|
|
49
|
-
[CDN users](#
|
|
51
|
+
[CDN users](#10-cdn-users).
|
|
50
52
|
- [ ] **Load the icon fonts.** `dda.css` ships no icon font. Without these links, icons render
|
|
51
53
|
as words such as `chevron_right`.
|
|
52
54
|
|
|
@@ -75,7 +77,123 @@ Do these whatever version you start from.
|
|
|
75
77
|
|
|
76
78
|
---
|
|
77
79
|
|
|
78
|
-
## 3. From 5.
|
|
80
|
+
## 3. From 5.2.x to 5.3.0
|
|
81
|
+
|
|
82
|
+
5.3.0 adds attributes and does not remove any. A page that uses only 5.x attributes can still
|
|
83
|
+
change in the places below. Examine each one.
|
|
84
|
+
|
|
85
|
+
### Triage: run these first
|
|
86
|
+
|
|
87
|
+
```bash
|
|
88
|
+
# empty login-text or language_text attributes
|
|
89
|
+
grep -rnE "(login-text|loginText|language_text)=(\"\"|'')" src/
|
|
90
|
+
# your own focus styles for the home-page service cards
|
|
91
|
+
grep -rn 'link-item:focus' src/
|
|
92
|
+
```
|
|
93
|
+
|
|
94
|
+
### Changes to check
|
|
95
|
+
|
|
96
|
+
- **An empty `login-text` removes the Login link.** **Silent.** In 5.2.0, an empty `login-text`
|
|
97
|
+
showed the default label "Login". Now it removes the Login link from the toolbar and the side
|
|
98
|
+
menu. To show "Login", remove the attribute or set it to `Login`.
|
|
99
|
+
- **An empty `language_text` removes the language button.** **Silent.** In 5.2.0, an empty
|
|
100
|
+
`language_text` showed "العربية". Now it removes the language button. To show "العربية",
|
|
101
|
+
remove the attribute.
|
|
102
|
+
- **The `dda-sticky-footer` middle logos show by default.** In 5.2.0, they showed only with
|
|
103
|
+
`hide-middle-section="false"`. Now they show when at least one logo is set. To hide them, set
|
|
104
|
+
`hide-middle-section`.
|
|
105
|
+
- **A `quick-links` item without `href` links to `#`.** In 5.2.0, a top-level item or a mega-menu
|
|
106
|
+
link without `href` had no `href` attribute. Now it has `href="#"`. Give each item a real
|
|
107
|
+
`href`.
|
|
108
|
+
- **The home-page service cards show a focus style.** A `.quick-links .link-item` card now moves
|
|
109
|
+
up and shows an outline when it gets keyboard focus (`:focus-visible`). This applies to the
|
|
110
|
+
plain-HTML cards from 5.2.0 too. If your CSS styles this focus state, make sure the two styles
|
|
111
|
+
agree. Use the keyboard to examine the cards.
|
|
112
|
+
|
|
113
|
+
---
|
|
114
|
+
|
|
115
|
+
## 4. From 3.5 – 3.12.10 to 5.3.0
|
|
116
|
+
|
|
117
|
+
Versions 3.5 to 3.12.10 had attributes and two components that 3.12.11 to 5.2.0 did not have.
|
|
118
|
+
5.3.0 brings back the ones below under the same names, so most 3.x markup works without change.
|
|
119
|
+
Read this section first. Then read these sections, in this order:
|
|
120
|
+
[From 3.x to 5.0](#9-from-3x-to-50), [Notes from 5.0.1](#7-notes-from-501-fonts-and-the-stylesheet),
|
|
121
|
+
[5.0.x to 5.1.0](#6-from-50x-to-510), [5.1.x to 5.2.0](#5-from-51x-to-520) and
|
|
122
|
+
[5.2.x to 5.3.0](#3-from-52x-to-530).
|
|
123
|
+
|
|
124
|
+
### Works again without change
|
|
125
|
+
|
|
126
|
+
- **`dda-header`:** all accessibility-panel texts (`contrast_title`, `contrast_description`,
|
|
127
|
+
`contrast_noraml_text`, `contrast_color_blind_text`, `contrast_red_weakness_text`,
|
|
128
|
+
`contrast_green_weakness_text`, `screen_reader_title`, `screen_reader_description`,
|
|
129
|
+
`text_size_title`, `text_size_description`), `read_speaker_link`, `selected_contrast`,
|
|
130
|
+
`selected_text_size`, `accessibility_tooltip`, `accessibility_button_text`,
|
|
131
|
+
`accessibility_button_id`, `accessibility_button_icon_family`, `accessibility_button_icon_name`,
|
|
132
|
+
`search_tooltip`, `search_input_placeholder`, `language_tooltip`, `login_tooltip`,
|
|
133
|
+
`use-predesigned-accessibility-menu`, `side-main-menu-title`, `side-other-menu-title`,
|
|
134
|
+
`other-menu-items`, `hide-other-menu`, `mobile-menu-search-id`, `mobile-menu-search-url`, and
|
|
135
|
+
the 3.x `quick-links` shape (`type`, `headerMenuLabel`, `url`, `children`).
|
|
136
|
+
- **`dda-header` events:** `accessibilitymenufunctionality` and `searchfunctionality`.
|
|
137
|
+
- **`dda-sticky-footer`:** `middle-link`, `right-link`, `more-icon`, `more-icon-family`,
|
|
138
|
+
`dubaiae-icon-*`, `color-theme`, every `*-icon-id` and every `*-icon-src-dark`.
|
|
139
|
+
- **Components:** `dda-home-carousel` and `dda-banner-card`.
|
|
140
|
+
|
|
141
|
+
### Changes that need action
|
|
142
|
+
|
|
143
|
+
**The handler attributes never ran, and they do not run now.** **Silent.**
|
|
144
|
+
Attributes such as `normalcontrast="() => …"`, `searchfunctionality="onSearch(this)"` and
|
|
145
|
+
`languageswitch="…"` have no effect, in 3.x and in 5.x. The header sends events. Listen for them:
|
|
146
|
+
|
|
147
|
+
```js
|
|
148
|
+
const header = document.querySelector('dda-header');
|
|
149
|
+
header.addEventListener('normalContrast', () => { /* … */ });
|
|
150
|
+
header.addEventListener('searchfunctionality', event => onSearch(event.detail));
|
|
151
|
+
header.addEventListener('accessibilitymenufunctionality', () => { /* … */ });
|
|
152
|
+
```
|
|
153
|
+
|
|
154
|
+
| Attribute in your markup | Event to listen for |
|
|
155
|
+
| --- | --- |
|
|
156
|
+
| `languageswitch` | `languageSwitch` |
|
|
157
|
+
| `smtextsize`, `basetextsize`, `lgtextsize` | `smTextSize`, `baseTextSize`, `lgTextSize` |
|
|
158
|
+
| `normalcontrast`, `blindcontrast`, `redcontrast`, `greencontrast` | `normalContrast`, `blindContrast`, `redContrast`, `greenContrast` |
|
|
159
|
+
| `searchfunctionality` | `searchfunctionality` (the query, on submit) or `searchSubmit` (on submit; it can cancel the navigation) |
|
|
160
|
+
| `accessibilitymenufunctionality` | `accessibilitymenufunctionality` |
|
|
161
|
+
|
|
162
|
+
**`dda-home-carousel` cards are links.** In 3.x the cards were buttons, and `banner_card_href`
|
|
163
|
+
had no effect. Now a card with `banner_card_href` is a link and it opens the page. If your own
|
|
164
|
+
script opened the page on `cardClick`, remove that code, or the page opens two times.
|
|
165
|
+
|
|
166
|
+
**Set the new accessible names on a site that is not in English.** 3.x had no attribute for these
|
|
167
|
+
names, so your 3.x markup does not set them. They are English by default, and screen readers
|
|
168
|
+
read them on an Arabic page too. Set them in the language of the page:
|
|
169
|
+
|
|
170
|
+
| Component | Attribute | Default |
|
|
171
|
+
| --- | --- | --- |
|
|
172
|
+
| `dda-home-carousel` | `aria_label` | `Quick links` |
|
|
173
|
+
| `dda-sticky-footer` | `aria_label` | `Quick actions` |
|
|
174
|
+
| `dda-sticky-footer` | `more_button_label` | `More` |
|
|
175
|
+
| `dda-header` | `screen_reader_link_label` | `Listen to this page using ReadSpeaker` |
|
|
176
|
+
| `dda-header` | `menu_button_label` | `Menu` |
|
|
177
|
+
|
|
178
|
+
You cannot change five `dda-header` close-button names yet: "Close Sidebar" (three buttons),
|
|
179
|
+
"Close Accessibility" and "Close search". They stay in English.
|
|
180
|
+
|
|
181
|
+
**The carousel does not scroll when the mouse moves.** The row scrolls with the mouse wheel, the
|
|
182
|
+
scrollbar, touch and the keyboard. It shows a cut card and an edge fade when there are more cards.
|
|
183
|
+
|
|
184
|
+
### Not brought back
|
|
185
|
+
|
|
186
|
+
- `dda-header`: `use-login-popup`, `login-popup-links`, `use-navigator` and its `navigatorClick`
|
|
187
|
+
event, `show-quick-links-icon`, `first-logo-target`, `rel`, `header_default_submenu`,
|
|
188
|
+
`header_submenu_type`. The last four had no effect in 3.12.10.
|
|
189
|
+
- Components: `dda-centered-image-card`, `dda-custom-card`, `dda-event-card`, `dda-header-menu`
|
|
190
|
+
(its menus are now part of `dda-header`), `dda-image-card`, `dda-information-card`,
|
|
191
|
+
`dda-pricing-card`, `dda-scroll-icon`, `dda-slider`, `dda-split-button`,
|
|
192
|
+
`dda-team-member-card`, `dda-teamsection-card`.
|
|
193
|
+
|
|
194
|
+
---
|
|
195
|
+
|
|
196
|
+
## 5. From 5.1.x to 5.2.0
|
|
79
197
|
|
|
80
198
|
This section also covers 5.1.1. If you start from 5.1.1, the 5.1.1 notes are already done.
|
|
81
199
|
|
|
@@ -119,7 +237,8 @@ alone no longer wins. Add `dda-header:not(.dda-scrolled)` to it. Put the `transp
|
|
|
119
237
|
always showed "Login" with the `sentiment_satisfied` icon, and only the side menu used the
|
|
120
238
|
props. If you set them, the desktop link now shows your label and icon too.
|
|
121
239
|
- **An empty `login-text` does not hide the Login link.** It shows the default label. Use
|
|
122
|
-
`hide_login` to remove the link.
|
|
240
|
+
`hide_login` to remove the link. (Changed in 5.3.0: see
|
|
241
|
+
[From 5.2.x to 5.3.0](#3-from-52x-to-530).)
|
|
123
242
|
- **`dda-sticky-footer` location and news links with an image look the same.** The new icon
|
|
124
243
|
props take effect only when the image prop is not set.
|
|
125
244
|
|
|
@@ -134,7 +253,7 @@ alone no longer wins. Add `dda-header:not(.dda-scrolled)` to it. Put the `transp
|
|
|
134
253
|
|
|
135
254
|
---
|
|
136
255
|
|
|
137
|
-
##
|
|
256
|
+
## 6. From 5.0.x to 5.1.0
|
|
138
257
|
|
|
139
258
|
### Triage: run these first
|
|
140
259
|
|
|
@@ -294,7 +413,7 @@ the top of the page.
|
|
|
294
413
|
|
|
295
414
|
---
|
|
296
415
|
|
|
297
|
-
##
|
|
416
|
+
## 7. Notes from 5.0.1: fonts and the stylesheet
|
|
298
417
|
|
|
299
418
|
Read this if you start from 5.0.0 or earlier.
|
|
300
419
|
|
|
@@ -307,7 +426,7 @@ Read this if you start from 5.0.0 or earlier.
|
|
|
307
426
|
|
|
308
427
|
---
|
|
309
428
|
|
|
310
|
-
##
|
|
429
|
+
## 8. From 4.1.0
|
|
311
430
|
|
|
312
431
|
`4.1.0` was published in February 2025 and was never tagged `latest`; most sites never used it.
|
|
313
432
|
It is a separate build and is not documented component by component. Known differences:
|
|
@@ -316,13 +435,14 @@ It is a separate build and is not documented component by component. Known diffe
|
|
|
316
435
|
- It publishes no `dist/dda/dda.css`. Add it (see the checklist).
|
|
317
436
|
- Its `dda-header` is an older implementation. Re-check the header on desktop and on a phone.
|
|
318
437
|
|
|
319
|
-
Treat a 4.1.0 site like a 3.x site: follow [From 3.x](#
|
|
320
|
-
[5.0.
|
|
438
|
+
Treat a 4.1.0 site like a 3.x site: follow [From 3.x](#9-from-3x-to-50), then
|
|
439
|
+
[Notes from 5.0.1](#7-notes-from-501-fonts-and-the-stylesheet), [5.0.x to 5.1.0](#6-from-50x-to-510),
|
|
440
|
+
[5.1.x to 5.2.0](#5-from-51x-to-520) and [5.2.x to 5.3.0](#3-from-52x-to-530), and check every
|
|
321
441
|
page visually.
|
|
322
442
|
|
|
323
443
|
---
|
|
324
444
|
|
|
325
|
-
##
|
|
445
|
+
## 9. From 3.x to 5.0
|
|
326
446
|
|
|
327
447
|
**Why there is no 4.x to upgrade through:** `4.1.0` already existed on npm, so the next major
|
|
328
448
|
skipped to 5 to keep `^4` ranges from resolving to that older build.
|
|
@@ -458,7 +578,7 @@ a future major release, with notice.
|
|
|
458
578
|
|
|
459
579
|
---
|
|
460
580
|
|
|
461
|
-
##
|
|
581
|
+
## 10. CDN users
|
|
462
582
|
|
|
463
583
|
jsDelivr syncs from npm automatically. Always use an **exact version**: replace `X.X.X` with
|
|
464
584
|
the version you are upgrading to.
|