@tui/design-system 0.1.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 +317 -0
- package/README.md +99 -0
- package/dist/themes/crystalski/fonts.css +49 -0
- package/dist/themes/crystalski/fonts.css.map +1 -0
- package/dist/themes/crystalski/index.css +416 -0
- package/dist/themes/crystalski/index.css.map +1 -0
- package/dist/themes/firstchoice/fonts.css +50 -0
- package/dist/themes/firstchoice/fonts.css.map +1 -0
- package/dist/themes/firstchoice/index.css +422 -0
- package/dist/themes/firstchoice/index.css.map +1 -0
- package/dist/themes/tui/fonts.css +117 -0
- package/dist/themes/tui/fonts.css.map +1 -0
- package/dist/themes/tui/index.css +437 -0
- package/dist/themes/tui/index.css.map +1 -0
- package/package.json +175 -0
- package/scss/functions/_map.scss +84 -0
- package/scss/functions.scss +1 -0
- package/scss/lib/accordion/_index.scss +4 -0
- package/scss/lib/accordion/_mixins.scss +233 -0
- package/scss/lib/accordion/_variables.scss +11 -0
- package/scss/lib/active-tag/_index.scss +4 -0
- package/scss/lib/active-tag/_mixins.scss +112 -0
- package/scss/lib/active-tag/_variables.scss +8 -0
- package/scss/lib/alert/_index.scss +3 -0
- package/scss/lib/alert/_mixins.scss +135 -0
- package/scss/lib/alert/_variables.scss +15 -0
- package/scss/lib/breadcrumb/_index.scss +3 -0
- package/scss/lib/breadcrumb/_mixins.scss +58 -0
- package/scss/lib/breadcrumb/_variables.scss +6 -0
- package/scss/lib/button/_index.scss +4 -0
- package/scss/lib/button/_mixins.scss +193 -0
- package/scss/lib/button/_variables.scss +25 -0
- package/scss/lib/cards/card/_index.scss +3 -0
- package/scss/lib/cards/card/_mixins.scss +37 -0
- package/scss/lib/cards/card/_variables.scss +2 -0
- package/scss/lib/cards/search/_index.scss +3 -0
- package/scss/lib/cards/search/_mixins.scss +432 -0
- package/scss/lib/cards/search/_variables.scss +10 -0
- package/scss/lib/divider/_index.scss +4 -0
- package/scss/lib/divider/_mixins.scss +54 -0
- package/scss/lib/divider/_variables.scss +17 -0
- package/scss/lib/flight-details/_index.scss +3 -0
- package/scss/lib/flight-details/_mixins.scss +468 -0
- package/scss/lib/flight-details/_variables.scss +6 -0
- package/scss/lib/flyout-dropdown/_index.scss +3 -0
- package/scss/lib/flyout-dropdown/_mixins.scss +124 -0
- package/scss/lib/forms/form-row/_index.scss +3 -0
- package/scss/lib/forms/form-row/_mixins.scss +72 -0
- package/scss/lib/forms/form-row/_variables.scss +7 -0
- package/scss/lib/forms/input-checkbox/_index.scss +3 -0
- package/scss/lib/forms/input-checkbox/_mixins.scss +216 -0
- package/scss/lib/forms/input-checkbox/_variables.scss +9 -0
- package/scss/lib/forms/input-chip/_index.scss +4 -0
- package/scss/lib/forms/input-chip/_mixins.scss +124 -0
- package/scss/lib/forms/input-chip/_variables.scss +19 -0
- package/scss/lib/forms/input-count/_index.scss +3 -0
- package/scss/lib/forms/input-count/_mixins.scss +72 -0
- package/scss/lib/forms/input-count/_variables.scss +13 -0
- package/scss/lib/forms/input-radio/_index.scss +3 -0
- package/scss/lib/forms/input-radio/_mixins.scss +139 -0
- package/scss/lib/forms/input-radio/_variables.scss +6 -0
- package/scss/lib/forms/input-slider/_index.scss +3 -0
- package/scss/lib/forms/input-slider/_mixins.scss +147 -0
- package/scss/lib/forms/input-slider/_variables.scss +12 -0
- package/scss/lib/forms/input-stepper/_index.scss +3 -0
- package/scss/lib/forms/input-stepper/_mixins.scss +143 -0
- package/scss/lib/forms/input-stepper/_variables.scss +7 -0
- package/scss/lib/forms/input-switch/_index.scss +3 -0
- package/scss/lib/forms/input-switch/_mixins.scss +122 -0
- package/scss/lib/forms/input-switch/_variables.scss +18 -0
- package/scss/lib/forms/input-text/_index.scss +3 -0
- package/scss/lib/forms/input-text/_mixins.scss +155 -0
- package/scss/lib/forms/input-text/_variables.scss +9 -0
- package/scss/lib/forms/textarea/_index.scss +3 -0
- package/scss/lib/forms/textarea/_mixins.scss +88 -0
- package/scss/lib/grid/_column.scss +51 -0
- package/scss/lib/grid/_container.scss +21 -0
- package/scss/lib/grid/_index.scss +3 -0
- package/scss/lib/grid/_mixins.scss +126 -0
- package/scss/lib/grid/_variables.scss +11 -0
- package/scss/lib/hero/_index.scss +3 -0
- package/scss/lib/hero/_mixins.scss +336 -0
- package/scss/lib/hero/_variables.scss +21 -0
- package/scss/lib/icon/_index.scss +3 -0
- package/scss/lib/icon/_mixins.scss +54 -0
- package/scss/lib/icon/_variables.scss +10 -0
- package/scss/lib/icon-button/_index.scss +3 -0
- package/scss/lib/icon-button/_mixins.scss +168 -0
- package/scss/lib/icon-button/_variables.scss +31 -0
- package/scss/lib/image/_index.scss +3 -0
- package/scss/lib/image/_mixins.scss +89 -0
- package/scss/lib/image/_variables.scss +13 -0
- package/scss/lib/info-tag/_index.scss +4 -0
- package/scss/lib/info-tag/_mixins.scss +100 -0
- package/scss/lib/info-tag/_variables.scss +13 -0
- package/scss/lib/link/_index.scss +3 -0
- package/scss/lib/link/_mixins.scss +86 -0
- package/scss/lib/link/_variables.scss +13 -0
- package/scss/lib/list/_index.scss +3 -0
- package/scss/lib/list/_mixins.scss +198 -0
- package/scss/lib/list/_variables.scss +9 -0
- package/scss/lib/loader/_index.scss +3 -0
- package/scss/lib/loader/_mixins.scss +52 -0
- package/scss/lib/loader/_variables.scss +12 -0
- package/scss/lib/media-button/_index.scss +4 -0
- package/scss/lib/media-button/_mixins.scss +75 -0
- package/scss/lib/media-button/_variables.scss +4 -0
- package/scss/lib/modal/_index.scss +2 -0
- package/scss/lib/modal/_mixins.scss +135 -0
- package/scss/lib/modal/_variables.scss +11 -0
- package/scss/lib/pagination/_index.scss +3 -0
- package/scss/lib/pagination/_mixins.scss +220 -0
- package/scss/lib/pagination/_variables.scss +12 -0
- package/scss/lib/price/_index.scss +3 -0
- package/scss/lib/price/_mixins.scss +83 -0
- package/scss/lib/price/_variables.scss +10 -0
- package/scss/lib/promo-tag/_index.scss +4 -0
- package/scss/lib/promo-tag/_mixins.scss +81 -0
- package/scss/lib/promo-tag/_variables.scss +7 -0
- package/scss/lib/ratings-reviews/numerical/_index.scss +3 -0
- package/scss/lib/ratings-reviews/numerical/_mixins.scss +91 -0
- package/scss/lib/ratings-reviews/numerical/_variables.scss +18 -0
- package/scss/lib/ratings-reviews/percentage/_index.scss +3 -0
- package/scss/lib/ratings-reviews/percentage/_mixins.scss +74 -0
- package/scss/lib/ratings-reviews/percentage/_variables.scss +6 -0
- package/scss/lib/ratings-reviews/range-bar/_index.scss +3 -0
- package/scss/lib/ratings-reviews/range-bar/_mixins.scss +88 -0
- package/scss/lib/ratings-reviews/range-bar/_variables.scss +16 -0
- package/scss/lib/ratings-reviews/range-icons/_index.scss +3 -0
- package/scss/lib/ratings-reviews/range-icons/_mixins.scss +200 -0
- package/scss/lib/ratings-reviews/range-icons/_variables.scss +31 -0
- package/scss/lib/ratings-reviews/range-icons-group/_index.scss +3 -0
- package/scss/lib/ratings-reviews/range-icons-group/_mixins.scss +26 -0
- package/scss/lib/richtext/_index.scss +3 -0
- package/scss/lib/richtext/_mixins.scss +136 -0
- package/scss/lib/scroller/_index.scss +4 -0
- package/scss/lib/scroller/_mixins.scss +130 -0
- package/scss/lib/scroller/_variables.scss +9 -0
- package/scss/lib/show-more-less/_index.scss +3 -0
- package/scss/lib/show-more-less/_mixins.scss +90 -0
- package/scss/lib/show-more-less/_variables.scss +6 -0
- package/scss/lib/skeleton/_index.scss +3 -0
- package/scss/lib/skeleton/_mixins.scss +151 -0
- package/scss/lib/skeleton/_variables.scss +8 -0
- package/scss/lib/tooltip/_index.scss +3 -0
- package/scss/lib/tooltip/_mixins.scss +305 -0
- package/scss/lib/tooltip/_variables.scss +8 -0
- package/scss/lib/typography/_index.scss +14 -0
- package/scss/lib/typography/_mixins.scss +27 -0
- package/scss/lib/typography/_variables.scss +58 -0
- package/scss/lib/utility/_index.scss +109 -0
- package/scss/lib/utility/_mixins.scss +198 -0
- package/scss/mixins.scss +44 -0
- package/scss/reset.scss +168 -0
- package/scss/themes/crystalski/_colors.scss +48 -0
- package/scss/themes/crystalski/_overrides.scss +285 -0
- package/scss/themes/crystalski/_primitives.scss +73 -0
- package/scss/themes/crystalski/_typography.scss +9 -0
- package/scss/themes/crystalski/fonts.json +49 -0
- package/scss/themes/crystalski/fonts.scss +8 -0
- package/scss/themes/crystalski/index.scss +166 -0
- package/scss/themes/crystalski/theme.json +232 -0
- package/scss/themes/firstchoice/_colors.scss +53 -0
- package/scss/themes/firstchoice/_overrides.scss +355 -0
- package/scss/themes/firstchoice/_primitives.scss +106 -0
- package/scss/themes/firstchoice/_typography.scss +14 -0
- package/scss/themes/firstchoice/fonts.json +50 -0
- package/scss/themes/firstchoice/fonts.scss +8 -0
- package/scss/themes/firstchoice/index.scss +166 -0
- package/scss/themes/firstchoice/theme.json +323 -0
- package/scss/themes/tui/_colors.scss +61 -0
- package/scss/themes/tui/_overrides.scss +34 -0
- package/scss/themes/tui/_primitives.scss +23 -0
- package/scss/themes/tui/_typography.scss +16 -0
- package/scss/themes/tui/fonts.json +117 -0
- package/scss/themes/tui/fonts.scss +17 -0
- package/scss/themes/tui/index.scss +166 -0
- package/scss/themes/tui/theme.json +139 -0
- package/scss/variables/_aspect-ratios.scss +8 -0
- package/scss/variables/_assets.scss +6 -0
- package/scss/variables/_border-radius.scss +20 -0
- package/scss/variables/_breakpoints.scss +17 -0
- package/scss/variables/_colors.scss +58 -0
- package/scss/variables/_directions.scss +8 -0
- package/scss/variables/_display-values.scss +9 -0
- package/scss/variables/_elevations.scss +17 -0
- package/scss/variables/_env-variables.scss +1 -0
- package/scss/variables/_focus.scss +14 -0
- package/scss/variables/_grid.scss +21 -0
- package/scss/variables/_icons.scss +26 -0
- package/scss/variables/_layers.scss +20 -0
- package/scss/variables/_motion.scss +27 -0
- package/scss/variables/_prefix.scss +1 -0
- package/scss/variables/_primitives.scss +100 -0
- package/scss/variables/_spacing.scss +38 -0
- package/scss/variables/_strokes.scss +18 -0
- package/scss/variables/_typography.scss +125 -0
- package/scss/variables/base-theme.json +2142 -0
- package/scss/variables/fonts/_ambit-bold-italic.scss +10 -0
- package/scss/variables/fonts/_ambit-bold.scss +10 -0
- package/scss/variables/fonts/_ambit-fallback.scss +21 -0
- package/scss/variables/fonts/_ambit-regular-italic.scss +10 -0
- package/scss/variables/fonts/_ambit-regular.scss +10 -0
- package/scss/variables/fonts/_ambit-semibold-italic.scss +10 -0
- package/scss/variables/fonts/_ambit-semibold.scss +10 -0
- package/scss/variables/fonts/_brandon-fallback.scss +22 -0
- package/scss/variables/fonts/_brandon-medium-italic.scss +10 -0
- package/scss/variables/fonts/_brandon-medium.scss +10 -0
- package/scss/variables/fonts/_brandon-regular-italic.scss +10 -0
- package/scss/variables/fonts/_brandon-regular.scss +10 -0
- package/scss/variables/fonts/_font-path.scss +3 -0
- package/scss/variables/fonts/_graphie-extralight.scss +10 -0
- package/scss/variables/fonts/_graphie-fallback.scss +11 -0
- package/scss/variables/fonts/_pastiche-grotesque-black.scss +10 -0
- package/scss/variables/fonts/_pastiche-grotesque-fallback.scss +11 -0
- package/scss/variables/fonts/_rondelle-black.scss +10 -0
- package/scss/variables/fonts/_rondelle-book.scss +10 -0
- package/scss/variables/fonts/_rondelle-fallback.scss +21 -0
- package/scss/variables/fonts/_tuiheadline-black-italic.scss +10 -0
- package/scss/variables/fonts/_tuiheadline-black.scss +10 -0
- package/scss/variables/fonts/_tuiheadline-fallback.scss +11 -0
- package/scss/variables/fonts/_tuitypelight-bold-italic.scss +10 -0
- package/scss/variables/fonts/_tuitypelight-bold.scss +10 -0
- package/scss/variables/fonts/_tuitypelight-fallback.scss +21 -0
- package/scss/variables/fonts/_tuitypelight-regular-italic.scss +10 -0
- package/scss/variables/fonts/_tuitypelight-regular.scss +10 -0
- package/scss/variables.scss +60 -0
package/CHANGELOG.md
ADDED
|
@@ -0,0 +1,317 @@
|
|
|
1
|
+
# Changelog
|
|
2
|
+
|
|
3
|
+
## v1.0.0
|
|
4
|
+
|
|
5
|
+
### General changes
|
|
6
|
+
|
|
7
|
+
- Mixins available have been reduced to simplify use of the library. Mixins for components now have class names baked in to aid in code consistency
|
|
8
|
+
across TUI, although these can be overridden by updating the SASS variables if required.
|
|
9
|
+
- Theming
|
|
10
|
+
- TUI Light has been renamed to TUI
|
|
11
|
+
- Removed support for TUI, TUI Magic Life, Robinson, LTUR and Airtours themes. TUI, Crystal Ski, First Choice and VIP selection remain fully
|
|
12
|
+
supported
|
|
13
|
+
- Removed support for dark theme. This may be added again in a future release.
|
|
14
|
+
- Assets - All assets used within the library now reference the v3 version of the asset library
|
|
15
|
+
- SCSS provided now uses @use and @forward. Mixins need to be imported as individual modules where they are required and can not be loaded once and
|
|
16
|
+
used globally anymore.
|
|
17
|
+
- Update reset stylesheet.
|
|
18
|
+
- Box model is set to box-sizing on all elements by default to help with flexible layouts which we are used more often within our builds.
|
|
19
|
+
- Tokens
|
|
20
|
+
- All tokens have been updated to match the token naming for the master figma files. This has resulted in a vastly reduced number of base tokens
|
|
21
|
+
that reference primitive variables for each theme. Individual components may have their own tokens that map back to these base tokens for each
|
|
22
|
+
theme as nessessary.
|
|
23
|
+
- App height is now set to 100dvh removing the requirement to use JS to fix the viewport height on mobile devices when the browser toolbars disapear
|
|
24
|
+
on scroll.
|
|
25
|
+
|
|
26
|
+
### [Typography](https://uilib-testing.static-nonprod.browse.tui/index.html?path=/docs/globals-typography--docs)
|
|
27
|
+
|
|
28
|
+
- All webfonts have fallbacks with f-mods specified to minimise CLS when the webfonts load
|
|
29
|
+
- New mixin for generic heading and copy styling classes
|
|
30
|
+
- Modifer mixin updated to remove options covered by css variables
|
|
31
|
+
|
|
32
|
+
### [Breakpoints](https://uilib-testing.static-nonprod.browse.tui/index.html?path=/docs/globals-breakpoints--docs)
|
|
33
|
+
|
|
34
|
+
- New xxs breakpoint included to further control styling where required. This breakpoint is used for grids so that below 320px content will simply
|
|
35
|
+
stack and remain readable and usable.
|
|
36
|
+
|
|
37
|
+
### [Grid](https://uilib-testing.static-nonprod.browse.tui/index.html?path=/docs/globals-grid--docs)
|
|
38
|
+
|
|
39
|
+
- Design System now uses CSS Grid Layout Module instead of Flexbox
|
|
40
|
+
|
|
41
|
+
### [Accordion](https://uilib-testing.static-nonprod.browse.tui/index.html?path=/docs/components-accordion--docs)
|
|
42
|
+
|
|
43
|
+
- Reduced down to single variant with border, also replacing elevations.
|
|
44
|
+
- Two group styling options available
|
|
45
|
+
- Option to include a logo next to the accordion heading has been added for where a collection of logos is required
|
|
46
|
+
- Notification label replaced by option to include a sub title
|
|
47
|
+
- Mixins simplified so variants and states are all baked into the main uilib-accordion mixin, with a second mixin uilib-accordion-group for styling
|
|
48
|
+
groups of accordions
|
|
49
|
+
- Rebuilt to use native details, summary elements; fixing various accessibility and usability issues
|
|
50
|
+
- JavaScript provided to support expand/collapse all functionality where 5 or more accordions are in a group.
|
|
51
|
+
|
|
52
|
+
### [Alert](https://uilib-testing.static-nonprod.browse.tui/index.html?path=/docs/components-alert--docs)
|
|
53
|
+
|
|
54
|
+
- Mixins simplified so variants are all baked into the main uilib-alert mixin
|
|
55
|
+
- Default variant has been removed in line with 1web design patterns
|
|
56
|
+
|
|
57
|
+
### [Active tag](https://uilib-testing.static-nonprod.browse.tui/index.html?path=/docs/components-active-tag--docs)
|
|
58
|
+
|
|
59
|
+
- New component added to indicate which filters are currently applied. They allow users to easily modify their search and filtering criteria, making
|
|
60
|
+
the results easier to refine.
|
|
61
|
+
|
|
62
|
+
### Badge
|
|
63
|
+
|
|
64
|
+
- Removed with some variations being covered by the new info tag component
|
|
65
|
+
|
|
66
|
+
### [Breadcrumb](https://uilib-testing.static-nonprod.browse.tui/index.html?path=/docs/components-breadcrumb--docs)
|
|
67
|
+
|
|
68
|
+
- Created new component, all the styles are baked into a single uilib-breadcrumb mixin
|
|
69
|
+
- Breadcrumb inherits styles from it's base Link and Icon components
|
|
70
|
+
|
|
71
|
+
### [Button](https://uilib-testing.static-nonprod.browse.tui/index.html?path=/docs/components-button--docs)
|
|
72
|
+
|
|
73
|
+
- Mixins simplified so variants, states and sizes are all baked into the main uilib-button mixin
|
|
74
|
+
- Button styling has been aligned with the latest 1web designs across all themes
|
|
75
|
+
|
|
76
|
+
### [Card search](https://uilib-testing.static-nonprod.browse.tui/index.html?path=/docs/components-cards-search-card--docs)
|
|
77
|
+
|
|
78
|
+
- Card added to contain a summary of information for a product in a set of results.
|
|
79
|
+
|
|
80
|
+
### [Divider](https://uilib-testing.static-nonprod.browse.tui/index.html?path=/docs/components-divider--docs)
|
|
81
|
+
|
|
82
|
+
- Mixins simplified so vertical, size and variant are all baked into the main uilib-divider mixin
|
|
83
|
+
- Title option has been removed
|
|
84
|
+
- Colour variants have been reduced to default, strong and inverse
|
|
85
|
+
- New dashed divider style has been added
|
|
86
|
+
|
|
87
|
+
### Eye catcher
|
|
88
|
+
|
|
89
|
+
- Removed from the library. There is not replacement for this component.
|
|
90
|
+
|
|
91
|
+
### [Flight details](https://uilib-testing.static-nonprod.browse.tui/index.html?path=/docs/components-flight-details--docs)
|
|
92
|
+
|
|
93
|
+
- New flight details has been added. It presents comprehensive information about a holiday's flights
|
|
94
|
+
- Two variants are available allowing for the display of both direct and indirect flights
|
|
95
|
+
|
|
96
|
+
### [Flyout dropdown](https://uilib-testing.static-nonprod.browse.tui/index.html?path=/docs/components-flyout-dropdown--docs)
|
|
97
|
+
|
|
98
|
+
- New flyout Dropdown component has been added. It is an overlay panel that emerges from a control like a button or menu item
|
|
99
|
+
- Two variants available with three pointer locations
|
|
100
|
+
|
|
101
|
+
### Forms
|
|
102
|
+
|
|
103
|
+
#### [Form row](https://uilib-testing.static-nonprod.browse.tui/index.html?path=/docs/components-forms-form-row--docs)
|
|
104
|
+
|
|
105
|
+
- Replacing the base input styling provided in v4
|
|
106
|
+
- Success message styling removed
|
|
107
|
+
|
|
108
|
+
#### [Input checkbox](https://uilib-testing.static-nonprod.browse.tui/index.html?path=/docs/components-forms-input-checkbox--docs)
|
|
109
|
+
|
|
110
|
+
- Mixins simplified to one main uilib-input-checkbox mixin
|
|
111
|
+
- Error, valid states removed
|
|
112
|
+
- New checkbox label variant options included
|
|
113
|
+
- New confirmation checkbox variant included
|
|
114
|
+
|
|
115
|
+
### [Input Chip](https://uilib-testing.static-nonprod.browse.tui/index.html?path=/docs/components-forms-input-chip--docs)
|
|
116
|
+
|
|
117
|
+
- New Input Chip component has been added. Chips are compact, interactive elements used to select or filter without interrupting users flow.
|
|
118
|
+
- Two variants available with disabled and active states. Based on variant, options are available for use in lists and month-calendars.
|
|
119
|
+
|
|
120
|
+
#### [Input count](https://uilib-testing.static-nonprod.browse.tui/index.html?path=/docs/components-forms-input-count--docs)
|
|
121
|
+
|
|
122
|
+
- Mixins simplified to one main uilib-input-count mixin
|
|
123
|
+
- Variants removed to match latest 1web designs
|
|
124
|
+
- Error, valid and disabled states removed
|
|
125
|
+
- Count limited to maximum of 7 options
|
|
126
|
+
- Can now support text as well as numbers within the count input
|
|
127
|
+
|
|
128
|
+
#### [Input radio](https://uilib-testing.static-nonprod.browse.tui/index.html?path=/docs/components-forms-input-radio--docs)
|
|
129
|
+
|
|
130
|
+
- Mixins simplified to one main uilib-input-radio mixin
|
|
131
|
+
- Error, valid states removed
|
|
132
|
+
- New radio label variant options included
|
|
133
|
+
|
|
134
|
+
#### [Input slider](https://uilib-testing.static-nonprod.browse.tui/index.html?path=/docs/components-forms-input-slider--docs)
|
|
135
|
+
|
|
136
|
+
- Mixin renamed to uilib-input-slider
|
|
137
|
+
- Valid state removed
|
|
138
|
+
- Input text is now required to aid accessibility and the range input is added via JavaScript to ensure the fields are properly connected
|
|
139
|
+
|
|
140
|
+
#### [Input stepper](https://uilib-testing.static-nonprod.browse.tui/index.html?path=/docs/components-forms-input-stepper--docs)
|
|
141
|
+
|
|
142
|
+
- Mixins simplified to one main uilib-input-stepper mixin
|
|
143
|
+
- Control and input sizes have been adjusted to match latest 1web designs
|
|
144
|
+
- Web component provided to include increment and decrement controls to update the original text input
|
|
145
|
+
|
|
146
|
+
#### [Input switch](https://mwa.tui.com/browse/mwa/uilib-production/index.html?path=/docs/components-forms-input-switch--docs)
|
|
147
|
+
|
|
148
|
+
- Mixins simplified to one main uilib-input-switch mixin
|
|
149
|
+
|
|
150
|
+
#### [Input text](https://uilib-testing.static-nonprod.browse.tui/index.html?path=/docs/components-forms-input-text--docs)
|
|
151
|
+
|
|
152
|
+
- Mixin renamed to uilib-input-text
|
|
153
|
+
- Floating label, placeholder and readonly options have been removed
|
|
154
|
+
- Valid state usage rules and styling updated
|
|
155
|
+
- Web component provided to clear prefilled inputs, clear search inputs and toggle view of password fields
|
|
156
|
+
|
|
157
|
+
#### [Textarea](https://uilib-testing.static-nonprod.browse.tui/index.html?path=/docs/components-forms-textarea--docs)
|
|
158
|
+
|
|
159
|
+
- Mixin added for uilib-textarea
|
|
160
|
+
- Utilises label, hint and error from formrow
|
|
161
|
+
|
|
162
|
+
#### Input toggle
|
|
163
|
+
|
|
164
|
+
- Removed from the library. Please use input chips or input radio.
|
|
165
|
+
|
|
166
|
+
### [Hero (formerly header)](https://mwa.tui.com/browse/mwa/uilib-production/index.html?path=/docs/components-hero--docs)
|
|
167
|
+
|
|
168
|
+
- Mixins simplified so size options are now baked into the main uilib-hero mixin
|
|
169
|
+
- Hero now includes styling for the content area overlay supporting left, right and center positioning as well as standard, slim and illustration
|
|
170
|
+
heros
|
|
171
|
+
|
|
172
|
+
### [Icon](https://uilib-testing.static-nonprod.browse.tui/index.html?path=/docs/components-icon--docs)
|
|
173
|
+
|
|
174
|
+
- Mixins simplified so size options are now baked into the main uilib-icon mixin
|
|
175
|
+
- Icon sizes have been adjusted to match latest designs
|
|
176
|
+
|
|
177
|
+
### [Icon button](https://uilib-testing.static-nonprod.browse.tui/index.html?path=/docs/components-icon-button--docs)
|
|
178
|
+
|
|
179
|
+
- Mixins simplified so size options are now baked into the main uilib-icon-button mixin
|
|
180
|
+
- Button variants have been remapped
|
|
181
|
+
- Half icon button has been removed
|
|
182
|
+
- New control, promotion, search and shortlist variants added
|
|
183
|
+
- Elevation option has been removed and automatically applied to control variant
|
|
184
|
+
- Button styling has been aligned with the latest 1web designs across all themes
|
|
185
|
+
|
|
186
|
+
### [Image (picture)](https://uilib-testing.static-nonprod.browse.tui/index.html?path=/docs/components-image--docs)
|
|
187
|
+
|
|
188
|
+
- Mixins simplified so shapes and ratios are all baked into the main uilib-image mixin
|
|
189
|
+
- Added ability to control the focal point if the source image is cropped by the focal point option
|
|
190
|
+
- Error handling with fallback image has been added.
|
|
191
|
+
|
|
192
|
+
### Image counter
|
|
193
|
+
|
|
194
|
+
- Removed from the library. There is not replacement for this component.
|
|
195
|
+
|
|
196
|
+
### [Info tag](https://uilib-testing.static-nonprod.browse.tui/index.html?path=/docs/components-info-tag--docs)
|
|
197
|
+
|
|
198
|
+
- New component added to highlight informational, promotional or branded content
|
|
199
|
+
- Four variants available: neutral, info, scarcity, and local-product
|
|
200
|
+
|
|
201
|
+
### [Link](https://uilib-testing.static-nonprod.browse.tui/index.html?path=/docs/components-link--docs)
|
|
202
|
+
|
|
203
|
+
- Mixins simplified so size options are now baked into the main uilib-link mixin
|
|
204
|
+
- Links styling has been aligned to match latest designs
|
|
205
|
+
- Link variants have been removed as well as disabled state
|
|
206
|
+
|
|
207
|
+
### [List](https://uilib-testing.static-nonprod.browse.tui/index.html?path=/docs/components-list--docs)
|
|
208
|
+
|
|
209
|
+
- Divider, state, and meta label style options removed
|
|
210
|
+
- Basic bullet list no longer requires icon setting reducing markup
|
|
211
|
+
- New image variant added with square or circular image options
|
|
212
|
+
|
|
213
|
+
### [Loader](https://uilib-testing.static-nonprod.browse.tui/index.html?path=/docs/components-loader--docs)
|
|
214
|
+
|
|
215
|
+
- Mixins simplified so size options are now baked into the main uilib-loader mixin
|
|
216
|
+
- TUI ripple loader option removed
|
|
217
|
+
- Snowflake and FC-loader options are now controlled by theming rather than being specific options
|
|
218
|
+
- Option to include visible loading message now included for all size variants
|
|
219
|
+
- Overlay mixin removed with no replacement. Placement of loader is developers responsibility. The loader will always position centered (vertically
|
|
220
|
+
and horizontally) within the 'uilib-loader' element.
|
|
221
|
+
|
|
222
|
+
### [Media button](https://uilib-testing.static-nonprod.browse.tui/index.html?path=/docs/components-media-button--docs)
|
|
223
|
+
|
|
224
|
+
- New media button has been added for opening media galleries
|
|
225
|
+
|
|
226
|
+
### [Modal](https://uilib-testing.static-nonprod.browse.tui/index.html?path=/docs/components-modal--docs)
|
|
227
|
+
|
|
228
|
+
- New modal component added using native HTML dialog element
|
|
229
|
+
- Three size variants available: small (6 cols), medium (8 cols), and large (12 cols)
|
|
230
|
+
- Built-in accessibility features including focus management and keyboard navigation
|
|
231
|
+
- Sticky header and footer when content is scrollable
|
|
232
|
+
- Optional navigation slot for moving between modal states
|
|
233
|
+
- NoJS example with fallback to dedicated page
|
|
234
|
+
- Full-width drawer on mobile devices
|
|
235
|
+
|
|
236
|
+
### [Pagination](https://uilib-testing.static-nonprod.browse.tui/index.html?path=/docs/components-pagination--docs)
|
|
237
|
+
|
|
238
|
+
- Mixins are baked into uilib-pagination mixin
|
|
239
|
+
|
|
240
|
+
### [Price](https://uilib-testing.static-nonprod.browse.tui/index.html?path=/docs/components-price--docs)
|
|
241
|
+
|
|
242
|
+
- Mixins simplified so size options are baked into a single uilib-price mixin
|
|
243
|
+
- Component styles are aligned with latest 1web designs for tui theme
|
|
244
|
+
- xLarge variant has been removed
|
|
245
|
+
|
|
246
|
+
### [Promo tag](https://uilib-testing.static-nonprod.browse.tui/index.html?path=/docs/components-promo-tag--docs)
|
|
247
|
+
|
|
248
|
+
- Mixin names and classes updated to be prefixed with uilib
|
|
249
|
+
- Background variant renamed to filled
|
|
250
|
+
- Additional mixin for list of promo tags added
|
|
251
|
+
|
|
252
|
+
### Ratings and Reviews
|
|
253
|
+
|
|
254
|
+
#### [Numerical](https://uilib-testing.static-nonprod.browse.tui/index.html?path=/docs/components-ratings-and-reviews-numerical--docs) (previously Review base variant)
|
|
255
|
+
|
|
256
|
+
- Mixins simplified to single mixin controlling numerical rating/review styles uilib-ratings-numerical
|
|
257
|
+
- Now single size option available with small and xsmall being removed
|
|
258
|
+
- New variant added for providing alternative styling to use with musement ratings
|
|
259
|
+
|
|
260
|
+
#### [Percentage](https://uilib-testing.static-nonprod.browse.tui/index.html?path=/docs/components-ratings-and-reviews-percentage--docs)
|
|
261
|
+
|
|
262
|
+
- New component that can be used for displaying HolidayCheck reviews
|
|
263
|
+
- Provides two variants; default and compact
|
|
264
|
+
|
|
265
|
+
#### [Range bar](https://uilib-testing.static-nonprod.browse.tui/index.html?path=/docs/components-ratings-and-reviews-range-bar--docs) (previously Review range, and rangeBar variants)
|
|
266
|
+
|
|
267
|
+
- Mixins simplified to single mixin controlling range bar rating/review styles uilib-ratings-range-bar
|
|
268
|
+
- Component now includes label (with icon for customer review variant)
|
|
269
|
+
|
|
270
|
+
#### [Range icons](https://uilib-testing.static-nonprod.browse.tui/index.html?path=/docs/components-ratings-and-reviews-range-icons--docs) (previously Rating, and Review range variant)
|
|
271
|
+
|
|
272
|
+
- Mixins simplified to single mixin controlling range icon rating/review styles uilib-ratings-range-icons
|
|
273
|
+
- Added tripadvisor variant
|
|
274
|
+
- Group styling option included
|
|
275
|
+
|
|
276
|
+
#### [Range icon group](https://uilib-testing.static-nonprod.browse.tui/index.html?path=/docs/components-ratings-and-reviews-range-icons-group--docs)
|
|
277
|
+
|
|
278
|
+
- New component to display lists of range icons for use with the likes of TripAdvisor
|
|
279
|
+
|
|
280
|
+
### [Rich Text](https://uilib-testing.static-nonprod.browse.tui/index.html?path=/docs/components-rich-text--docs)
|
|
281
|
+
|
|
282
|
+
- New component added that provides a wrapper that automatically styles basic html content such as headings, paragaphs, links, lists etc. This allows
|
|
283
|
+
for simple and consistent styling of rich text content from CMS/APIs.
|
|
284
|
+
|
|
285
|
+
### [Scroller](https://uilib-testing.static-nonprod.browse.tui/index.html?path=/docs/components-scroller--docs)
|
|
286
|
+
|
|
287
|
+
- Mixins simplified so scrollbar and fade-out options are baked into a single uilib-scroller mixin
|
|
288
|
+
- Fade is applied by default
|
|
289
|
+
- Fade effect is applied via modern CSS techniques
|
|
290
|
+
- Small web component provided to improve accessibility support
|
|
291
|
+
|
|
292
|
+
### [Show more/less](https://uilib-testing.static-nonprod.browse.tui/index.html?path=/docs/components-show-more-or-less--docs)
|
|
293
|
+
|
|
294
|
+
- New component added to hide and reveal content, in order to save space and support visual balance and hierarchy or information
|
|
295
|
+
- Two variants available. Default displays the first paragraph of content hiding the rest, Text only truncates a block of content (for use with
|
|
296
|
+
content such as customer reviews)
|
|
297
|
+
|
|
298
|
+
### [Skeleton](https://uilib-testing.static-nonprod.browse.tui/index.html?path=/docs/components-skeleton--docs)
|
|
299
|
+
|
|
300
|
+
- New component added to provide loading state placeholders that visually represent page structure while content loads
|
|
301
|
+
- Mixins simplified to single uilib-skeleton mixin with all variants and utilities baked in
|
|
302
|
+
- Synchronized shimmer animation across all skeleton elements using CSS custom properties
|
|
303
|
+
- Multiple skeleton types available: heading, subheading, text, circle, card, and container
|
|
304
|
+
- Width utilities from 10% to 100% in 10% increments, with responsive variants for xs breakpoint
|
|
305
|
+
- Height utilities from 1rem to 20rem in 1rem increments
|
|
306
|
+
- Layout helper classes for organizing skeleton elements with flexible gap and direction options
|
|
307
|
+
- Outlined variant with border and transparent background
|
|
308
|
+
- Spacer variant for creating transparent gaps without animation
|
|
309
|
+
- Respects prefers-reduced-motion for accessibility
|
|
310
|
+
- Pre-made templates for common use cases: search cards, browse cards, article cards, and headers
|
|
311
|
+
|
|
312
|
+
### [Toolip](https://uilib-testing.static-nonprod.browse.tui/index.html?path=/docs/components-tooltip--docs)
|
|
313
|
+
|
|
314
|
+
- Mixins simplified to one main uilib-tooltip mixin
|
|
315
|
+
- Tooltip now opens on click or enter rather than hover
|
|
316
|
+
- JavaScript controls tooltip positioning and ensures the tooltip is read by assistive technologies, with a non-JavaScript fallback provided
|
|
317
|
+
- Hit target for icon variant increased improving accessibility for all user
|
package/README.md
ADDED
|
@@ -0,0 +1,99 @@
|
|
|
1
|
+
# TUI Design System
|
|
2
|
+
|
|
3
|
+
## Quick Start
|
|
4
|
+
|
|
5
|
+
```
|
|
6
|
+
nvm use
|
|
7
|
+
npm i
|
|
8
|
+
npm run dev
|
|
9
|
+
```
|
|
10
|
+
|
|
11
|
+
This will spin up:
|
|
12
|
+
|
|
13
|
+
- storybook: http://localhost:6006/
|
|
14
|
+
|
|
15
|
+
## How to use it
|
|
16
|
+
|
|
17
|
+
**Installation**
|
|
18
|
+
|
|
19
|
+
To install the latest stable version:
|
|
20
|
+
|
|
21
|
+
`npm install @tui/design-system` or `yarn add @tui/design-system`
|
|
22
|
+
|
|
23
|
+
To install the next major version (be aware it might contain untested features):
|
|
24
|
+
|
|
25
|
+
`npm install @tui/design-system@next` or `yarn add @tui/design-system@next`
|
|
26
|
+
|
|
27
|
+
**Themes**
|
|
28
|
+
|
|
29
|
+
Theme files provide some global variables that are needed by the components in order to adhere to the theme guidelines (colors, spacing, etc.). TUI is
|
|
30
|
+
the only available theme at the moment.
|
|
31
|
+
|
|
32
|
+
In `dist/themes/<<themename>>/`, you will find the theme file `style.css` as well as other global stylesheets. For example, for the TUI theme you
|
|
33
|
+
could import in your .js files:
|
|
34
|
+
|
|
35
|
+
```js
|
|
36
|
+
import '@tui/design-system/dist/themes/tui/index.css';
|
|
37
|
+
import '@tui/design-system/dist/themes/tui/fonts.css';
|
|
38
|
+
```
|
|
39
|
+
|
|
40
|
+
Themes variables are declared within the "data-theme" attribute selector, so you will need to add it on either the host page `html` tag or your MFE:
|
|
41
|
+
|
|
42
|
+
```html
|
|
43
|
+
<html data-theme="tui">
|
|
44
|
+
<!--or-->
|
|
45
|
+
<my-custom-mfe data-theme="tui">
|
|
46
|
+
<!--or-->
|
|
47
|
+
<div data-theme="tui"></div>
|
|
48
|
+
</my-custom-mfe>
|
|
49
|
+
</html>
|
|
50
|
+
```
|
|
51
|
+
|
|
52
|
+
## Development mode
|
|
53
|
+
|
|
54
|
+
You can also clone this repository, install the dependencies and use `npm run dev` to run a local server where to check the example templates for the
|
|
55
|
+
components, how themes are generated, the original unprocessed stylesheets (post processed with postcss-preset-env), etc.
|
|
56
|
+
|
|
57
|
+
## Contributing
|
|
58
|
+
|
|
59
|
+
Your feedback is welcome. You may request changes and improvements by creating an Issue on the
|
|
60
|
+
[UI Library (UILIB)](https://tui.atlassian.net/jira/software/c/projects/UILIB/boards/2275/backlog) project in Jira. If you have a general query about
|
|
61
|
+
the Design System you are welcome to post in the
|
|
62
|
+
[UI Library Support channel](https://teams.microsoft.com/l/channel/19%3A537d7e30d4284701a3b985a0763f7b2e%40thread.tacv2/Support%20UI%20Library?groupId=237c9a11-b89a-449e-8d69-416a09bd8f55&tenantId=e3e1f65b-b973-440d-b61c-bc895fc98e28)
|
|
63
|
+
on Teams.
|
|
64
|
+
|
|
65
|
+
Please check the [contributing document](/docs/CONTRIBUTING.md) and the [guidelines](/docs/GUIDELINES.md) for contribution.
|
|
66
|
+
|
|
67
|
+
## Migration
|
|
68
|
+
|
|
69
|
+
Please check the [migration document](/docs/MIGRATION.md)
|
|
70
|
+
|
|
71
|
+
## Deployment
|
|
72
|
+
|
|
73
|
+
### Documentation (Storybook)
|
|
74
|
+
|
|
75
|
+
**Feature (MR):**
|
|
76
|
+
|
|
77
|
+
- Manual job `deploy-feature` in MR pipeline
|
|
78
|
+
- Creates temporary environment: `uilib-mr-{MR_ID}`
|
|
79
|
+
- Cleanup:
|
|
80
|
+
- Manual: `destroy-feature` job in MR pipeline
|
|
81
|
+
- Auto: After 9 hours of inactivity
|
|
82
|
+
- Auto: When MR is closed/merged
|
|
83
|
+
|
|
84
|
+
**Testing:**
|
|
85
|
+
|
|
86
|
+
1. Add label `Ready For Testing` to your MR
|
|
87
|
+
2. Run manual job `prepare-testing` from `main` branch
|
|
88
|
+
3. Job merges all `Ready For Testing` MRs into `testing` branch
|
|
89
|
+
4. `deploy-testing` automatically deploys when `testing` branch updates
|
|
90
|
+
|
|
91
|
+
**Preprod & Production:**
|
|
92
|
+
|
|
93
|
+
- Manual deployment from `main` branch only
|
|
94
|
+
- Jobs: `deploy-preprod`, `deploy-prod`
|
|
95
|
+
- Independent from NPM package releases
|
|
96
|
+
|
|
97
|
+
### NPM Package
|
|
98
|
+
|
|
99
|
+
Publish to NPM using manual GitLab CI job: `Release BETA version`
|
|
@@ -0,0 +1,49 @@
|
|
|
1
|
+
@font-face {
|
|
2
|
+
font-weight: 600 700;
|
|
3
|
+
font-family: "Brandon";
|
|
4
|
+
font-style: normal;
|
|
5
|
+
src: url("https://mwa.tui.com/shared/mwa/assets/v3/fonts/brandon-medium.subset.woff2") format("woff2");
|
|
6
|
+
font-display: swap;
|
|
7
|
+
}
|
|
8
|
+
@font-face {
|
|
9
|
+
font-weight: 600 700;
|
|
10
|
+
font-family: "Brandon";
|
|
11
|
+
font-style: italic;
|
|
12
|
+
src: url("https://mwa.tui.com/shared/mwa/assets/v3/fonts/brandon-medium-italic.subset.woff2") format("woff2");
|
|
13
|
+
font-display: swap;
|
|
14
|
+
}
|
|
15
|
+
@font-face {
|
|
16
|
+
font-weight: 400;
|
|
17
|
+
font-family: "Brandon";
|
|
18
|
+
font-style: normal;
|
|
19
|
+
src: url("https://mwa.tui.com/shared/mwa/assets/v3/fonts/brandon-regular.subset.woff2") format("woff2");
|
|
20
|
+
font-display: swap;
|
|
21
|
+
}
|
|
22
|
+
@font-face {
|
|
23
|
+
font-weight: 400;
|
|
24
|
+
font-family: "Brandon";
|
|
25
|
+
font-style: italic;
|
|
26
|
+
src: url("https://mwa.tui.com/shared/mwa/assets/v3/fonts/brandon-regular-italic.subset.woff2") format("woff2");
|
|
27
|
+
font-display: swap;
|
|
28
|
+
}
|
|
29
|
+
@font-face {
|
|
30
|
+
font-weight: 400 700;
|
|
31
|
+
font-family: "BrandonFallbackFont";
|
|
32
|
+
src: local("verdana");
|
|
33
|
+
size-adjust: 85.5%;
|
|
34
|
+
ascent-override: 110.8%;
|
|
35
|
+
descent-override: 31.7%;
|
|
36
|
+
line-gap-override: 19.1%;
|
|
37
|
+
}
|
|
38
|
+
@font-face {
|
|
39
|
+
font-weight: 400 700;
|
|
40
|
+
font-family: "BrandonFallbackFont";
|
|
41
|
+
font-style: italic;
|
|
42
|
+
src: local("verdana italic");
|
|
43
|
+
size-adjust: 85.5%;
|
|
44
|
+
ascent-override: 110.8%;
|
|
45
|
+
descent-override: 31.7%;
|
|
46
|
+
line-gap-override: 19.1%;
|
|
47
|
+
}
|
|
48
|
+
|
|
49
|
+
/*# sourceMappingURL=fonts.css.map */
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sourceRoot":"","sources":["../../../src/variables/fonts/_brandon-medium.scss","../../../src/variables/fonts/_brandon-medium-italic.scss","../../../src/variables/fonts/_brandon-regular.scss","../../../src/variables/fonts/_brandon-regular-italic.scss","../../../src/variables/fonts/_brandon-fallback.scss"],"names":[],"mappings":"AAGA;EACC;EACA;EACA;EACA;EACA;;ACLD;EACC;EACA;EACA;EACA;EACA;;ACLD;EACC;EACA;EACA;EACA;EACA;;ACLD;EACC;EACA;EACA;EACA;EACA;;ACND;EACC;EACA;EACA;EACA;EACA;EACA;EACA;;AAGD;EACC;EACA;EACA;EACA;EACA;EACA;EACA;EACA","file":"fonts.css"}
|