@tui/design-system 5.0.0-beta.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +239 -0
- package/README.md +71 -0
- package/package.json +181 -0
package/CHANGELOG.md
ADDED
|
@@ -0,0 +1,239 @@
|
|
|
1
|
+
# Changelog
|
|
2
|
+
|
|
3
|
+
## v5.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
|
+
### [Breadcrumb](https://uilib-testing.static-nonprod.browse.tui/index.html?path=/docs/components-breadcrumb--docs)
|
|
63
|
+
|
|
64
|
+
- Created new component, all the styles are baked into a single uilib-breadcrumb mixin
|
|
65
|
+
- Breadcrumb inherits styles from it's base Link and Icon components
|
|
66
|
+
|
|
67
|
+
### [Button](https://uilib-testing.static-nonprod.browse.tui/index.html?path=/docs/components-button--docs)
|
|
68
|
+
|
|
69
|
+
- Mixins simplified so variants, states and sizes are all baked into the main uilib-button mixin
|
|
70
|
+
- Button styling has been aligned with the latest 1web designs across all themes
|
|
71
|
+
|
|
72
|
+
### [Divider](https://uilib-testing.static-nonprod.browse.tui/index.html?path=/docs/components-divider--docs)
|
|
73
|
+
|
|
74
|
+
- Mixins simplified so vertical, size and variant are all baked into the main uilib-divider mixin
|
|
75
|
+
- Title option has been removed
|
|
76
|
+
- Colour variants have been reduced to default, strong and inverse
|
|
77
|
+
- New dashed divider style has been added
|
|
78
|
+
|
|
79
|
+
### [Flyout Dropdown](https://uilib-testing.static-nonprod.browse.tui/index.html?path=/docs/components-flyout-dropdown--docs)
|
|
80
|
+
|
|
81
|
+
- New flyout component has been added. It is an overlay panel that emerges from a control like a button or menu item
|
|
82
|
+
- Two variants available with three pointer locations
|
|
83
|
+
|
|
84
|
+
### Forms
|
|
85
|
+
|
|
86
|
+
#### [Form row](https://uilib-testing.static-nonprod.browse.tui/index.html?path=/docs/components-forms-form-row--docs)
|
|
87
|
+
|
|
88
|
+
- Replacing the base input styling provided in v4
|
|
89
|
+
- Success message styling removed
|
|
90
|
+
|
|
91
|
+
#### [Input checkbox](https://uilib-testing.static-nonprod.browse.tui/index.html?path=/docs/components-forms-input-checkbox--docs)
|
|
92
|
+
|
|
93
|
+
- Mixins simplified to one main uilib-input-checkbox mixin
|
|
94
|
+
- Error, valid states removed
|
|
95
|
+
- New checkbox label variant options included
|
|
96
|
+
- New confirmation checkbox variant included
|
|
97
|
+
|
|
98
|
+
#### [Input count](https://uilib-testing.static-nonprod.browse.tui/index.html?path=/docs/components-forms-input-count--docs)
|
|
99
|
+
|
|
100
|
+
- Mixins simplified to one main uilib-input-count mixin
|
|
101
|
+
- Variants removed to match latest 1web designs
|
|
102
|
+
- Error, valid and disabled states removed
|
|
103
|
+
- Count limited to maximum of 7 options
|
|
104
|
+
- Can now support text as well as numbers within the count input
|
|
105
|
+
|
|
106
|
+
#### [Input radio](https://uilib-testing.static-nonprod.browse.tui/index.html?path=/docs/components-forms-input-radio--docs)
|
|
107
|
+
|
|
108
|
+
- Mixins simplified to one main uilib-input-radio mixin
|
|
109
|
+
- Error, valid states removed
|
|
110
|
+
- New radio label variant options included
|
|
111
|
+
|
|
112
|
+
#### [Input slider](https://uilib-testing.static-nonprod.browse.tui/index.html?path=/docs/components-forms-input-slider--docs)
|
|
113
|
+
|
|
114
|
+
- Mixin renamed to uilib-input-slider
|
|
115
|
+
- Valid state removed
|
|
116
|
+
- Input text is now required to aid accessibility and the range input is added via JavaScript to ensure the fields are properly connected
|
|
117
|
+
|
|
118
|
+
#### [Input stepper](https://uilib-testing.static-nonprod.browse.tui/index.html?path=/docs/components-forms-input-stepper--docs)
|
|
119
|
+
|
|
120
|
+
- Mixins simplified to one main uilib-input-stepper mixin
|
|
121
|
+
- Control and input sizes have been adjusted to match latest 1web designs
|
|
122
|
+
- Web component provided to include increment and decrement controls to update the original text input
|
|
123
|
+
|
|
124
|
+
#### [Input text](https://uilib-testing.static-nonprod.browse.tui/index.html?path=/docs/components-forms-input-text--docs)
|
|
125
|
+
|
|
126
|
+
- Mixin renamed to uilib-input-text
|
|
127
|
+
- Floating label, placeholder and readonly options have been removed
|
|
128
|
+
- Valid state usage rules and styling updated
|
|
129
|
+
- Web component provided to clear prefilled inputs, clear search inputs and toggle view of password fields
|
|
130
|
+
|
|
131
|
+
### [Icon](https://uilib-testing.static-nonprod.browse.tui/index.html?path=/docs/components-icon--docs)
|
|
132
|
+
|
|
133
|
+
- Mixins simplified so size options are now baked into the main uilib-icon mixin
|
|
134
|
+
- Icon sizes have been adjusted to match latest designs
|
|
135
|
+
|
|
136
|
+
### [Icon button](https://uilib-testing.static-nonprod.browse.tui/index.html?path=/docs/components-icon-button--docs)
|
|
137
|
+
|
|
138
|
+
- Mixins simplified so size options are now baked into the main uilib-icon-button mixin
|
|
139
|
+
- Half icon button has been removed
|
|
140
|
+
- Button styling has been aligned with the latest 1web designs across all themes.
|
|
141
|
+
|
|
142
|
+
### [Image](https://uilib-testing.static-nonprod.browse.tui/index.html?path=/docs/components-image--docs)
|
|
143
|
+
|
|
144
|
+
- Mixins simplified so shapes and ratios are all baked into the main uilib-image mixin
|
|
145
|
+
- Error handling with fallback image has been added.
|
|
146
|
+
|
|
147
|
+
### [Info tag](https://uilib-testing.static-nonprod.browse.tui/index.html?path=/docs/components-info-tag--docs)
|
|
148
|
+
|
|
149
|
+
- New component added to highlight informational, promotional or branded content
|
|
150
|
+
- Four variants available: neutral, info, scarcity, and local-product
|
|
151
|
+
|
|
152
|
+
### [Link](https://uilib-testing.static-nonprod.browse.tui/index.html?path=/docs/components-link--docs)
|
|
153
|
+
|
|
154
|
+
- Mixins simplified so size options are now baked into the main uilib-link mixin
|
|
155
|
+
- Links styling has been aligned to match latest designs
|
|
156
|
+
- Link variants have been removed as well as disabled state
|
|
157
|
+
|
|
158
|
+
### [List](https://uilib-testing.static-nonprod.browse.tui/index.html?path=/docs/components-list--docs)
|
|
159
|
+
|
|
160
|
+
- Divider, state, and meta label style options removed
|
|
161
|
+
- Basic bullet list no longer requires icon setting reducing markup
|
|
162
|
+
- New image variant added with square or circular image options
|
|
163
|
+
|
|
164
|
+
### [Loader](https://uilib-testing.static-nonprod.browse.tui/index.html?path=/docs/components-loader--docs)
|
|
165
|
+
|
|
166
|
+
- Mixins simplified so size options are now baked into the main uilib-loader mixin
|
|
167
|
+
- TUI ripple loader option removed
|
|
168
|
+
- Snowflake and FC-loader options are now controlled by theming rather than being specific options
|
|
169
|
+
- Option to include visible loading message now included for all size variants
|
|
170
|
+
- Overlay mixin removed with no replacement. Placement of loader is developers responsibility. The loader will always position centered (vertically
|
|
171
|
+
and horizontally) within the 'uilib-loader' element.
|
|
172
|
+
|
|
173
|
+
### [Media button](https://uilib-testing.static-nonprod.browse.tui/index.html?path=/docs/components-media-button--docs)
|
|
174
|
+
|
|
175
|
+
- New media button has been added for opening media galleries
|
|
176
|
+
|
|
177
|
+
### [Pagination](https://uilib-testing.static-nonprod.browse.tui/index.html?path=/docs/components-pagination--docs)
|
|
178
|
+
|
|
179
|
+
- Mixins are baked into uilib-pagination mixin
|
|
180
|
+
|
|
181
|
+
### [Price](https://uilib-testing.static-nonprod.browse.tui/index.html?path=/docs/components-price--docs)
|
|
182
|
+
|
|
183
|
+
- Mixins simplified so size options are baked into a single uilib-price mixin
|
|
184
|
+
- Component styles are aligned with latest 1web designs for tui theme
|
|
185
|
+
- xLarge variant has been removed
|
|
186
|
+
|
|
187
|
+
### [Promo tag](https://uilib-testing.static-nonprod.browse.tui/index.html?path=/docs/components-promo-tag--docs)
|
|
188
|
+
|
|
189
|
+
- Mixin names and classes updated to be prefixed with uilib
|
|
190
|
+
- Background variant renamed to filled
|
|
191
|
+
- Additional mixin for list of promo tags added
|
|
192
|
+
|
|
193
|
+
### Ratings and Reviews
|
|
194
|
+
|
|
195
|
+
#### [Numerical](https://uilib-testing.static-nonprod.browse.tui/index.html?path=/docs/components-ratings-and-reviews-numerical--docs) (previously Review base variant)
|
|
196
|
+
|
|
197
|
+
- Mixins simplified to single mixin controlling numerical rating/review styles uilib-ratings-numerical
|
|
198
|
+
- Now single size option available with small and xsmall being removed
|
|
199
|
+
- New variant added for providing alternative styling to use with musement ratings
|
|
200
|
+
|
|
201
|
+
#### [Percentage](https://uilib-testing.static-nonprod.browse.tui/index.html?path=/docs/components-ratings-and-reviews-percentage--docs)
|
|
202
|
+
|
|
203
|
+
- New component that can be used for displaying HolidayCheck reviews
|
|
204
|
+
- Provides two variants; default and compact
|
|
205
|
+
|
|
206
|
+
#### [Range icons](https://uilib-testing.static-nonprod.browse.tui/index.html?path=/docs/components-ratings-and-reviews-range-icons--docs) (previously Rating)
|
|
207
|
+
|
|
208
|
+
- Mixins simplified to single mixin controlling range icon rating/review styles uilib-ratings-range-icons
|
|
209
|
+
- Added tripadvisor variant
|
|
210
|
+
- Group styling option included
|
|
211
|
+
|
|
212
|
+
#### [Range icon group](https://uilib-testing.static-nonprod.browse.tui/index.html?path=/docs/components-ratings-and-reviews-range-icons-group--docs)
|
|
213
|
+
|
|
214
|
+
- New component to display lists of range icons for use with the likes of TripAdvisor
|
|
215
|
+
|
|
216
|
+
### [Rich Text](https://uilib-testing.static-nonprod.browse.tui/index.html?path=/docs/components-rich-text--docs)
|
|
217
|
+
|
|
218
|
+
- New component added that provides a wrapper that automatically styles basic html content such as headings, paragaphs, links, lists etc. This allows
|
|
219
|
+
for simple and consistent styling of rich text content from CMS/APIs.
|
|
220
|
+
|
|
221
|
+
### [Scroller](https://uilib-testing.static-nonprod.browse.tui/index.html?path=/docs/components-scroller--docs)
|
|
222
|
+
|
|
223
|
+
- Mixins simplified so scrollbar and fade-out options are baked into a single uilib-scroller mixin
|
|
224
|
+
- Fade is applied by default
|
|
225
|
+
- Fade effect is applied via modern CSS techniques
|
|
226
|
+
- Small web component provided to improve accessibility support
|
|
227
|
+
|
|
228
|
+
### [Show more/less](https://uilib-testing.static-nonprod.browse.tui/index.html?path=/docs/components-show-more-or-less--docs)
|
|
229
|
+
|
|
230
|
+
- New component added to hide and reveal content, in order to save space and support visual balance and hierarchy or information
|
|
231
|
+
- Two variants available. Default displays the first paragraph of content hiding the rest, Text only truncates a block of content (for use with
|
|
232
|
+
content such as customer reviews)
|
|
233
|
+
|
|
234
|
+
### [Toolip](https://uilib-testing.static-nonprod.browse.tui/index.html?path=/docs/components-tooltip--docs)
|
|
235
|
+
|
|
236
|
+
- Mixins simplified to one main uilib-tooltip mixin
|
|
237
|
+
- Tooltip now opens on click or enter rather than hover
|
|
238
|
+
- JavaScript controls tooltip positioning and ensures the tooltip is read by assistive technologies, with a non-JavaScript fallback provided
|
|
239
|
+
- Hit target for icon variant increased improving accessibility for all user
|
package/README.md
ADDED
|
@@ -0,0 +1,71 @@
|
|
|
1
|
+
# TUI Design System
|
|
2
|
+
|
|
3
|
+
https://uilib-testing.static-nonprod.browse.tui/index.html
|
|
4
|
+
|
|
5
|
+
## Quick Start
|
|
6
|
+
|
|
7
|
+
```
|
|
8
|
+
nvm use
|
|
9
|
+
npm i
|
|
10
|
+
npm run dev
|
|
11
|
+
```
|
|
12
|
+
|
|
13
|
+
This will spin up:
|
|
14
|
+
|
|
15
|
+
- storybook: http://localhost:6006/
|
|
16
|
+
|
|
17
|
+
## How to use it
|
|
18
|
+
|
|
19
|
+
**Installation**
|
|
20
|
+
|
|
21
|
+
To install the latest stable version:
|
|
22
|
+
|
|
23
|
+
`npm install @tui/ui-library` or `yarn add @tui/ui-library`
|
|
24
|
+
|
|
25
|
+
To install the next major version (be aware it might contain untested features):
|
|
26
|
+
|
|
27
|
+
`npm install @tui/ui-library@next` or `yarn add @tui/ui-library@next`
|
|
28
|
+
|
|
29
|
+
**Themes**
|
|
30
|
+
|
|
31
|
+
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
|
|
32
|
+
the only available theme at the moment.
|
|
33
|
+
|
|
34
|
+
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
|
|
35
|
+
could import in your .js files:
|
|
36
|
+
|
|
37
|
+
```js
|
|
38
|
+
import '@tui/ui-library/dist/themes/tui/index.css';
|
|
39
|
+
import '@tui/ui-library/dist/themes/tui/fonts.css';
|
|
40
|
+
```
|
|
41
|
+
|
|
42
|
+
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:
|
|
43
|
+
|
|
44
|
+
```html
|
|
45
|
+
<html data-theme="tui">
|
|
46
|
+
<!--or-->
|
|
47
|
+
<my-custom-mfe data-theme="tui">
|
|
48
|
+
<!--or-->
|
|
49
|
+
<div data-theme="tui"></div
|
|
50
|
+
></my-custom-mfe>
|
|
51
|
+
</html>
|
|
52
|
+
```
|
|
53
|
+
|
|
54
|
+
## Development mode
|
|
55
|
+
|
|
56
|
+
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
|
|
57
|
+
components, how themes are generated, the original unprocessed stylesheets (post processed with postcss-preset-env), etc.
|
|
58
|
+
|
|
59
|
+
## Contributing
|
|
60
|
+
|
|
61
|
+
Your feedback is welcome. You may request changes and improvements by creating an Issue on the
|
|
62
|
+
[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
|
|
63
|
+
the Design System you are welcome to post in the
|
|
64
|
+
[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)
|
|
65
|
+
on Teams.
|
|
66
|
+
|
|
67
|
+
Please check the [contributing document](/docs/CONTRIBUTING.md) and the [guidelines](/docs/GUIDELINES.md) for contribution.
|
|
68
|
+
|
|
69
|
+
## Migration
|
|
70
|
+
|
|
71
|
+
Please check the [migration document](/docs/MIGRATION.md)
|
package/package.json
ADDED
|
@@ -0,0 +1,181 @@
|
|
|
1
|
+
{
|
|
2
|
+
"name": "@tui/design-system",
|
|
3
|
+
"version": "5.0.0-beta.1",
|
|
4
|
+
"description": "TUI Design System",
|
|
5
|
+
"author": "TUI Group",
|
|
6
|
+
"contributors": [
|
|
7
|
+
"Matthew Guyader-Squirrell <matthew.squirrell@tui.co.uk>",
|
|
8
|
+
"Nicky Bliss <nicky.bliss@tui.co.uk>",
|
|
9
|
+
"Cy Culpin <cy.culpin@tui.co.uk>",
|
|
10
|
+
"Oleksandr Talanov <oleksandr.talanov@tui.co.uk>",
|
|
11
|
+
"Elias Meyer <elias.meyer@tui.com>",
|
|
12
|
+
"Volodymyr Savchuk <volodymyr.savchuk@tui.com>"
|
|
13
|
+
],
|
|
14
|
+
"scripts": {
|
|
15
|
+
"prepare": "node .husky/install.mjs",
|
|
16
|
+
"ci": "commit",
|
|
17
|
+
"clean": "shx rm -rf lib dist",
|
|
18
|
+
"prebuild": "npm run set-scss-env",
|
|
19
|
+
"build": "node cli/index.mjs",
|
|
20
|
+
"build:primitives": "node cli/process-primitives.mjs",
|
|
21
|
+
"build:js": "node cli/process-webcomponent-ts.mjs",
|
|
22
|
+
"build:changelog": "node cli/change-log.mjs",
|
|
23
|
+
"dev": "dotenv -e .env.local npm run storybook:dev",
|
|
24
|
+
"test:sass": "jest --verbose ./test/sass-true",
|
|
25
|
+
"storybook:dev": "run-s static:build build:primitives build:changelog set-scss-env storybook:serve",
|
|
26
|
+
"storybook:build": "run-s static:build build:primitives build:js build:changelog set-scss-env _storybook:build_prod",
|
|
27
|
+
"storybook:serve": "storybook dev -p 6006 -c storybook/.storybook",
|
|
28
|
+
"_storybook:build_prod": "storybook build -c storybook/.storybook",
|
|
29
|
+
"static:build": "node cli/static-assets.mjs",
|
|
30
|
+
"lint:styles": "stylelint \"src/**/*.{scss,css}\" --fix",
|
|
31
|
+
"lint:styles:ci": "stylelint \"src/**/*.{scss,css}\"",
|
|
32
|
+
"lint:standard": "eslint \"storybook/**/*.{js,ts}\" \"cli/*.mjs\" --config eslint.config.mjs --fix --ignore-pattern \"storybook/.storybook/**\" --no-warn-ignored",
|
|
33
|
+
"lint:standard:ci": "eslint \"storybook/**/*.{js,ts}\" \"cli/*.mjs\" --config eslint.config.mjs --ignore-pattern \"storybook/.storybook/**\" --no-warn-ignored",
|
|
34
|
+
"lint:storybook": "eslint storybook/.storybook --config eslint.storybook.config.mjs --no-error-on-unmatched-pattern --fix",
|
|
35
|
+
"lint:storybook:ci": "eslint storybook/.storybook --config eslint.storybook.config.mjs --no-error-on-unmatched-pattern --fix",
|
|
36
|
+
"lint": "npm run lint:standard && npm run lint:storybook",
|
|
37
|
+
"lint:ci": "npm run lint:standard:ci && npm run lint:storybook:ci",
|
|
38
|
+
"prettier": "prettier --ignore-unknown --write .",
|
|
39
|
+
"prettier:ci": "prettier --ignore-unknown --check .",
|
|
40
|
+
"scss:compile": "sass --no-source-map --style=expanded utils/scss/input:utils/scss/output",
|
|
41
|
+
"set-scss-env": "echo \"\\$uilib-assets-base-url: '${ASSETS_BASE_URL}' !default;\" > ./src/variables/_env-variables.scss",
|
|
42
|
+
"ci:lint": "bash ./ci-scripts/lint.sh",
|
|
43
|
+
"ci:check:ts": "echo 'Probably not needed anymore, use `ci:lint`' && exit 0",
|
|
44
|
+
"ci:code-tests": "bash ./ci-scripts/code-tests.sh",
|
|
45
|
+
"ci:install": "bash ./ci-scripts/install.sh",
|
|
46
|
+
"ci:build": "bash ./ci-scripts/build.sh",
|
|
47
|
+
"ci:deploy:feat": "bash ./ci-scripts/deploy/deploy-feature.sh",
|
|
48
|
+
"ci:deploy:testing": "bash ./ci-scripts/deploy/deploy-testing.sh",
|
|
49
|
+
"ci:destroy:feat": " bash ./ci-scripts/destroy/destroy-feature.sh"
|
|
50
|
+
},
|
|
51
|
+
"files": [
|
|
52
|
+
"dist",
|
|
53
|
+
"lib",
|
|
54
|
+
"scss",
|
|
55
|
+
"CHANGELOG.md",
|
|
56
|
+
"CONTRIBUTING.md"
|
|
57
|
+
],
|
|
58
|
+
"repository": {
|
|
59
|
+
"type": "git",
|
|
60
|
+
"url": "git@ssh.source.tui:osp/browse/design-system/uilib.git"
|
|
61
|
+
},
|
|
62
|
+
"devDependencies": {
|
|
63
|
+
"@babel/core": "^7.25.2",
|
|
64
|
+
"@babel/eslint-parser": "^7.28.5",
|
|
65
|
+
"@babel/preset-env": "^7.25.2",
|
|
66
|
+
"@babel/preset-react": "^7.26.3",
|
|
67
|
+
"@babel/preset-typescript": "^7.28.5",
|
|
68
|
+
"@commitlint/cli": "^20.1.0",
|
|
69
|
+
"@commitlint/config-conventional": "^20.0.0",
|
|
70
|
+
"@eslint/compat": "^2.0.0",
|
|
71
|
+
"@eslint/js": "^9.38.0",
|
|
72
|
+
"@jest/globals": "^30.2.0",
|
|
73
|
+
"@storybook/addon-a11y": "^8.4.7",
|
|
74
|
+
"@storybook/addon-docs": "^8.4.7",
|
|
75
|
+
"@storybook/addon-essentials": "^8.4.7",
|
|
76
|
+
"@storybook/addon-links": "^8.4.7",
|
|
77
|
+
"@storybook/addon-themes": "^8.4.7",
|
|
78
|
+
"@storybook/blocks": "^8.4.7",
|
|
79
|
+
"@storybook/html": "^8.4.7",
|
|
80
|
+
"@storybook/html-webpack5": "^8.4.7",
|
|
81
|
+
"@storybook/manager-api": "^8.4.7",
|
|
82
|
+
"@storybook/preview-api": "^8.4.7",
|
|
83
|
+
"@storybook/theming": "^8.4.7",
|
|
84
|
+
"@stylistic/eslint-plugin": "^3.1.0",
|
|
85
|
+
"@types/js-beautify": "^1.14.3",
|
|
86
|
+
"@types/node": "^24.9.1",
|
|
87
|
+
"@typescript-eslint/eslint-plugin": "^8.46.2",
|
|
88
|
+
"@typescript-eslint/parser": "^8.46.2",
|
|
89
|
+
"aws-cdk-lib": "^2.220.0",
|
|
90
|
+
"babel-loader": "^10.0.0",
|
|
91
|
+
"copyfiles": "^2.4.1",
|
|
92
|
+
"css-loader": "7.1.2",
|
|
93
|
+
"deepmerge": "^4.3.1",
|
|
94
|
+
"dotenv": "^17.2.3",
|
|
95
|
+
"dotenv-cli": "^11.0.0",
|
|
96
|
+
"esbuild": "^0.27.0",
|
|
97
|
+
"eslint": "^9.38.0",
|
|
98
|
+
"eslint-config-airbnb-extended": "^2.3.2",
|
|
99
|
+
"eslint-config-prettier": "^10.0.1",
|
|
100
|
+
"eslint-import-resolver-typescript": "^4.4.4",
|
|
101
|
+
"eslint-plugin-import": "^2.32.0",
|
|
102
|
+
"eslint-plugin-import-x": "^4.16.1",
|
|
103
|
+
"eslint-plugin-jsx-a11y": "^6.10.2",
|
|
104
|
+
"eslint-plugin-n": "^17.23.1",
|
|
105
|
+
"eslint-plugin-prettier": "^5.5.4",
|
|
106
|
+
"eslint-plugin-react": "^7.37.5",
|
|
107
|
+
"eslint-plugin-react-hooks": "^7.0.1",
|
|
108
|
+
"git-format-staged": "3.1.1",
|
|
109
|
+
"glob": "^13.0.0",
|
|
110
|
+
"husky": "^9.1.7",
|
|
111
|
+
"jest": "^30.2.0",
|
|
112
|
+
"js-beautify": "^1.15.1",
|
|
113
|
+
"lint-staged": "^16.2.6",
|
|
114
|
+
"log-update": "^7.0.2",
|
|
115
|
+
"node-fetch": "^3.3.2",
|
|
116
|
+
"npm-run-all2": "^8.0.4",
|
|
117
|
+
"postcss-scss": "^4.0.6",
|
|
118
|
+
"prettier": "^3.4.2",
|
|
119
|
+
"remark-gfm": "^4.0.0",
|
|
120
|
+
"sass": "^1.93.2",
|
|
121
|
+
"sass-loader": "^16.0.4",
|
|
122
|
+
"sass-true": "^10.0.0",
|
|
123
|
+
"shx": "0.4.0",
|
|
124
|
+
"source-map-support": "^0.5.21",
|
|
125
|
+
"storybook": "^8.4.7",
|
|
126
|
+
"storybook-addon-pseudo-states": "^4.0.2",
|
|
127
|
+
"storybook-addon-tag-badges": "^1.4.0",
|
|
128
|
+
"storybook-addon-turbo-build": "^2.0.1",
|
|
129
|
+
"storybook-dark-mode": "^4.0.2",
|
|
130
|
+
"storybook-preset-inline-svg": "^1.0.1",
|
|
131
|
+
"style-loader": "4.0.0",
|
|
132
|
+
"stylelint": "^16.25.0",
|
|
133
|
+
"stylelint-config-standard": "^39.0.1",
|
|
134
|
+
"stylelint-config-standard-scss": "^16.0.0",
|
|
135
|
+
"stylelint-order": "^7.0.0",
|
|
136
|
+
"stylelint-scss": "^6.10.1",
|
|
137
|
+
"stylelint-semantic-groups": "^1.2.1",
|
|
138
|
+
"ts-loader": "^9.5.2",
|
|
139
|
+
"ts-node": "^10.9.1",
|
|
140
|
+
"typescript": "^5.9.3",
|
|
141
|
+
"typescript-eslint": "^8.46.2",
|
|
142
|
+
"webpack": "^5.102.1"
|
|
143
|
+
},
|
|
144
|
+
"engines": {
|
|
145
|
+
"node": ">=22",
|
|
146
|
+
"npm": ">=10",
|
|
147
|
+
"pnpm": "please-use-npm"
|
|
148
|
+
},
|
|
149
|
+
"lint-staged": {
|
|
150
|
+
"*.{scss,css}": "npx stylelint \"src/**/*.{scss,css}\" --fix",
|
|
151
|
+
"*.{js,ts,mjs}": "npx eslint \"storybook/**/*.{js,ts}\" \"cli/*.mjs\" --config eslint.config.mjs --fix --ignore-pattern \"storybook/.storybook/**\" --no-warn-ignored",
|
|
152
|
+
"storybook/.storybook/**/*.{js,ts,mjs}": "npx eslint storybook/.storybook --config eslint.storybook.config.mjs --no-error-on-unmatched-pattern --fix",
|
|
153
|
+
"**/*": "npx prettier --write"
|
|
154
|
+
},
|
|
155
|
+
"loki": {
|
|
156
|
+
"configurations": {
|
|
157
|
+
"chrome.docker.tui": {
|
|
158
|
+
"target": "chrome.app",
|
|
159
|
+
"width": 1980,
|
|
160
|
+
"height": 1000,
|
|
161
|
+
"looks-same": {
|
|
162
|
+
"ignoreCaret": true
|
|
163
|
+
},
|
|
164
|
+
"storyQueryParams": {
|
|
165
|
+
"theme": "theme-tui"
|
|
166
|
+
}
|
|
167
|
+
},
|
|
168
|
+
"chrome.docker.tuiLight": {
|
|
169
|
+
"target": "chrome.app",
|
|
170
|
+
"width": 1980,
|
|
171
|
+
"height": 1000,
|
|
172
|
+
"looks-same": {
|
|
173
|
+
"ignoreCaret": true
|
|
174
|
+
},
|
|
175
|
+
"storyQueryParams": {
|
|
176
|
+
"theme": "theme-firstchoice"
|
|
177
|
+
}
|
|
178
|
+
}
|
|
179
|
+
}
|
|
180
|
+
}
|
|
181
|
+
}
|