@iress-oss/ids-mcp-server 6.0.0-alpha.0 → 6.0.0-alpha.1-canary-20251204014525-3f0dce4
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/dist/searchHandlers.test.js +8 -2
- package/dist/toolHandler.test.js +9 -9
- package/dist/utils.test.js +6 -2
- package/package.json +32 -30
- package/generated/docs/components-alert-docs.md +0 -702
- package/generated/docs/components-autocomplete-docs.md +0 -1433
- package/generated/docs/components-autocomplete-recipes-docs.md +0 -104
- package/generated/docs/components-badge-docs.md +0 -531
- package/generated/docs/components-button-docs.md +0 -1442
- package/generated/docs/components-buttongroup-docs.md +0 -748
- package/generated/docs/components-card-docs.md +0 -944
- package/generated/docs/components-checkbox-docs.md +0 -694
- package/generated/docs/components-checkboxgroup-docs.md +0 -1087
- package/generated/docs/components-checkboxgroup-recipes-docs.md +0 -119
- package/generated/docs/components-col-docs.md +0 -881
- package/generated/docs/components-container-docs.md +0 -123
- package/generated/docs/components-divider-docs.md +0 -576
- package/generated/docs/components-expander-docs.md +0 -594
- package/generated/docs/components-field-docs.md +0 -2007
- package/generated/docs/components-filter-docs.md +0 -1322
- package/generated/docs/components-hide-docs.md +0 -702
- package/generated/docs/components-icon-docs.md +0 -816
- package/generated/docs/components-image-docs.md +0 -493
- package/generated/docs/components-inline-docs.md +0 -2003
- package/generated/docs/components-input-docs.md +0 -867
- package/generated/docs/components-input-recipes-docs.md +0 -140
- package/generated/docs/components-inputcurrency-docs.md +0 -689
- package/generated/docs/components-inputcurrency-recipes-docs.md +0 -115
- package/generated/docs/components-introduction-docs.md +0 -450
- package/generated/docs/components-label-docs.md +0 -562
- package/generated/docs/components-link-docs.md +0 -586
- package/generated/docs/components-menu-docs.md +0 -1146
- package/generated/docs/components-menu-menuitem-docs.md +0 -739
- package/generated/docs/components-modal-docs.md +0 -1346
- package/generated/docs/components-panel-docs.md +0 -600
- package/generated/docs/components-placeholder-docs.md +0 -446
- package/generated/docs/components-popover-docs.md +0 -1529
- package/generated/docs/components-popover-recipes-docs.md +0 -211
- package/generated/docs/components-progress-docs.md +0 -568
- package/generated/docs/components-provider-docs.md +0 -160
- package/generated/docs/components-radio-docs.md +0 -563
- package/generated/docs/components-radiogroup-docs.md +0 -1153
- package/generated/docs/components-readonly-docs.md +0 -535
- package/generated/docs/components-richselect-docs.md +0 -5836
- package/generated/docs/components-row-docs.md +0 -2354
- package/generated/docs/components-select-docs.md +0 -940
- package/generated/docs/components-skeleton-docs.md +0 -597
- package/generated/docs/components-skeleton-recipes-docs.md +0 -76
- package/generated/docs/components-skiplink-docs.md +0 -587
- package/generated/docs/components-slideout-docs.md +0 -1036
- package/generated/docs/components-slider-docs.md +0 -828
- package/generated/docs/components-spinner-docs.md +0 -450
- package/generated/docs/components-stack-docs.md +0 -923
- package/generated/docs/components-table-ag-grid-docs.md +0 -1444
- package/generated/docs/components-table-docs.md +0 -2327
- package/generated/docs/components-tabset-docs.md +0 -768
- package/generated/docs/components-tabset-tab-docs.md +0 -550
- package/generated/docs/components-tag-docs.md +0 -548
- package/generated/docs/components-text-docs.md +0 -585
- package/generated/docs/components-toaster-docs.md +0 -755
- package/generated/docs/components-toggle-docs.md +0 -614
- package/generated/docs/components-tooltip-docs.md +0 -747
- package/generated/docs/components-validationmessage-docs.md +0 -1161
- package/generated/docs/contact-us-docs.md +0 -27
- package/generated/docs/extensions-editor-docs.md +0 -1181
- package/generated/docs/extensions-editor-recipes-docs.md +0 -89
- package/generated/docs/foundations-accessibility-docs.md +0 -40
- package/generated/docs/foundations-consistency-docs.md +0 -52
- package/generated/docs/foundations-content-docs.md +0 -23
- package/generated/docs/foundations-grid-docs.md +0 -74
- package/generated/docs/foundations-introduction-docs.md +0 -19
- package/generated/docs/foundations-principles-docs.md +0 -70
- package/generated/docs/foundations-responsive-breakpoints-docs.md +0 -193
- package/generated/docs/foundations-tokens-colour-docs.md +0 -564
- package/generated/docs/foundations-tokens-elevation-docs.md +0 -155
- package/generated/docs/foundations-tokens-introduction-docs.md +0 -190
- package/generated/docs/foundations-tokens-radius-docs.md +0 -71
- package/generated/docs/foundations-tokens-spacing-docs.md +0 -89
- package/generated/docs/foundations-tokens-typography-docs.md +0 -322
- package/generated/docs/foundations-user-experience-docs.md +0 -63
- package/generated/docs/foundations-visual-design-docs.md +0 -46
- package/generated/docs/foundations-z-index-stacking-docs.md +0 -31
- package/generated/docs/frequently-asked-questions-docs.md +0 -53
- package/generated/docs/get-started-develop-docs.md +0 -209
- package/generated/docs/get-started-using-storybook-docs.md +0 -68
- package/generated/docs/guidelines.md +0 -2054
- package/generated/docs/introduction-docs.md +0 -87
- package/generated/docs/news-version-6-docs.md +0 -93
- package/generated/docs/patterns-form-docs.md +0 -3902
- package/generated/docs/patterns-form-recipes-docs.md +0 -1370
- package/generated/docs/patterns-introduction-docs.md +0 -24
- package/generated/docs/patterns-loading-docs.md +0 -4043
- package/generated/docs/resources-code-katas-docs.md +0 -29
- package/generated/docs/resources-introduction-docs.md +0 -38
- package/generated/docs/resources-mcp-server-docs.md +0 -27
- package/generated/docs/resources-migration-guides-from-v4-to-v5-docs.md +0 -437
- package/generated/docs/styling-props-colour-docs.md +0 -172
- package/generated/docs/styling-props-elevation-docs.md +0 -88
- package/generated/docs/styling-props-radius-docs.md +0 -86
- package/generated/docs/styling-props-reference-docs.md +0 -160
- package/generated/docs/styling-props-screen-readers-docs.md +0 -71
- package/generated/docs/styling-props-sizing-docs.md +0 -627
- package/generated/docs/styling-props-spacing-docs.md +0 -2282
- package/generated/docs/styling-props-typography-docs.md +0 -121
- package/generated/docs/themes-available-themes-docs.md +0 -66
- package/generated/docs/themes-introduction-docs.md +0 -121
- package/generated/docs/versions-docs.md +0 -17
- /package/{LICENSE.txt → LICENSE} +0 -0
|
@@ -1,2054 +0,0 @@
|
|
|
1
|
-
# Design Guidelines
|
|
2
|
-
|
|
3
|
-
This document contains all design foundations and guidelines for the design system.
|
|
4
|
-
|
|
5
|
-
## Introduction
|
|
6
|
-
|
|
7
|
-
[](#introduction)Introduction
|
|
8
|
-
=============================
|
|
9
|
-
|
|
10
|
-
The IDS and product design team use the foundations to create a consistent user experience across all Iress products. This includes design principles and guidelines that ensure a cohesive look and feel.
|
|
11
|
-
|
|
12
|
-
1. [Principles](./?path=/docs/foundations-principles--docs)
|
|
13
|
-
2. [Accessibility](./?path=/docs/foundations-accessibility--docs)
|
|
14
|
-
3. [Tokens](./?path=/docs/foundations-tokens-introduction--docs)
|
|
15
|
-
4. [Breakpoints](./?path=/docs/foundations-breakpoints--docs)
|
|
16
|
-
5. [Consistency](./?path=/docs/foundations-consistency--docs)
|
|
17
|
-
6. [Grid](./?path=/docs/foundations-grid--docs)
|
|
18
|
-
7. [Content](./?path=/docs/foundations-content--docs)
|
|
19
|
-
8. [User Experience](./?path=/docs/foundations-user-experience--docs)
|
|
20
|
-
9. [Visual Design](./?path=/docs/foundations-visual-design--docs)
|
|
21
|
-
10. [Z-index (stacking)](./?path=/docs/foundations-z-index-stacking--docs)
|
|
22
|
-
|
|
23
|
-
_This document is a living standard. Revisit and revise regularly to reflect evolving needs, technologies, and user expectations._
|
|
24
|
-
|
|
25
|
-
On this page
|
|
26
|
-
|
|
27
|
-
## Principles
|
|
28
|
-
|
|
29
|
-
[](#core-design-principles)Core Design Principles
|
|
30
|
-
=================================================
|
|
31
|
-
|
|
32
|
-
[](#consistency)Consistency
|
|
33
|
-
---------------------------
|
|
34
|
-
|
|
35
|
-
* Maintain brand consistency across all applications and experiences
|
|
36
|
-
* Use standardised component naming conventions (all components start with `Iress` prefix)
|
|
37
|
-
* Leverage shared design tokens for spacing, colours, typography, and interactive states
|
|
38
|
-
* Ensure consistent behaviour patterns across similar components
|
|
39
|
-
|
|
40
|
-
[](#accessibility-first)Accessibility First
|
|
41
|
-
-------------------------------------------
|
|
42
|
-
|
|
43
|
-
* Meet or exceed WCAG 2.1 Level AA Accessibility Guidelines
|
|
44
|
-
* Provide proper colour contrast ratios (minimum 4.5:1 for AA, 7:1 for AAA)
|
|
45
|
-
* Implement comprehensive keyboard navigation support
|
|
46
|
-
* Include screen reader compatibility with appropriate ARIA attributes
|
|
47
|
-
* Support focus management and skip navigation patterns
|
|
48
|
-
* Document accessibility considerations and requirements
|
|
49
|
-
|
|
50
|
-
[](#clarity-and-usability)Clarity and Usability
|
|
51
|
-
-----------------------------------------------
|
|
52
|
-
|
|
53
|
-
* Prioritise clear visual hierarchy through typography scales and spacing systems
|
|
54
|
-
* Use progressive disclosure to manage complexity
|
|
55
|
-
* Provide immediate feedback for user actions (loading states, validation, etc.)
|
|
56
|
-
* Design for touch-friendly interfaces with adequate target sizes
|
|
57
|
-
|
|
58
|
-
[](#developer-experience)Developer Experience
|
|
59
|
-
---------------------------------------------
|
|
60
|
-
|
|
61
|
-
* Maintain clean component APIs with predictable prop patterns
|
|
62
|
-
* Provide comprehensive documentation with usage examples
|
|
63
|
-
* Include common patterns and anti-patterns
|
|
64
|
-
* Support both controlled and uncontrolled component patterns
|
|
65
|
-
* Enable efficient testing strategies with semantic roles and accessible queries
|
|
66
|
-
* Maintain up-to-date prop documentation and type definitions
|
|
67
|
-
|
|
68
|
-
[](#quality-assurance)Quality assurance
|
|
69
|
-
---------------------------------------
|
|
70
|
-
|
|
71
|
-
* Test components across supported browsers and devices
|
|
72
|
-
* Validate accessibility compliance with automated and manual testing
|
|
73
|
-
* Ensure proper keyboard navigation functionality
|
|
74
|
-
* Test with assistive technologies (screen readers, voice control)
|
|
75
|
-
|
|
76
|
-
### [](#code-standards)Code Standards
|
|
77
|
-
|
|
78
|
-
* Follow consistent naming conventions for CSS classes and component props
|
|
79
|
-
* Use semantic HTML elements where appropriate
|
|
80
|
-
* Implement proper TypeScript typing for better developer experience
|
|
81
|
-
* Maintain clean separation between presentation and logic
|
|
82
|
-
|
|
83
|
-
### [](#performance-considerations)Performance Considerations
|
|
84
|
-
|
|
85
|
-
* Optimise component rendering and re-rendering
|
|
86
|
-
* Implement appropriate code splitting strategies
|
|
87
|
-
* Use efficient animation and transition patterns
|
|
88
|
-
* Consider bundle size impact of component dependencies
|
|
89
|
-
|
|
90
|
-
On this page
|
|
91
|
-
|
|
92
|
-
* [Consistency](#consistency)
|
|
93
|
-
* [Accessibility First](#accessibility-first)
|
|
94
|
-
* [Clarity and Usability](#clarity-and-usability)
|
|
95
|
-
* [Developer Experience](#developer-experience)
|
|
96
|
-
* [Quality assurance](#quality-assurance)
|
|
97
|
-
* [Code Standards](#code-standards)
|
|
98
|
-
* [Performance Considerations](#performance-considerations)
|
|
99
|
-
|
|
100
|
-
## Accessibility
|
|
101
|
-
|
|
102
|
-
[](#accessibility)Accessibility
|
|
103
|
-
===============================
|
|
104
|
-
|
|
105
|
-
Accessibility is everyone's responsibility. It ensures that all users, regardless of their abilities or disabilities, can access and interact with our components effectively. This document outlines the key practices for building accessible components we follow within IDS.
|
|
106
|
-
|
|
107
|
-
Please note: The default behaviour of our components is to be accessible, but it is the responsibility of the product to ensure that they are used correctly in accessibile context, or any modifications made to them do not compromise accessibility.
|
|
108
|
-
|
|
109
|
-
[](#interaction-patterns)Interaction Patterns
|
|
110
|
-
---------------------------------------------
|
|
111
|
-
|
|
112
|
-
### [](#keyboard-navigation)Keyboard Navigation
|
|
113
|
-
|
|
114
|
-
* Support standard keyboard shortcuts (Tab, Arrow keys, Enter, Space, Escape)
|
|
115
|
-
* Implement proper focus order and visual focus indicators
|
|
116
|
-
* Provide keyboard alternatives for mouse-only interactions
|
|
117
|
-
* Follow established ARIA patterns for complex widgets
|
|
118
|
-
|
|
119
|
-
### [](#touch-interactions)Touch Interactions
|
|
120
|
-
|
|
121
|
-
* Provide adequate touch target sizes (minimum 44px)
|
|
122
|
-
* Implement touch-friendly spacing between interactive elements
|
|
123
|
-
* Support gesture-based interactions where appropriate
|
|
124
|
-
* Ensure consistent behaviour across device types
|
|
125
|
-
|
|
126
|
-
### [](#loading-and-feedback)Loading and Feedback
|
|
127
|
-
|
|
128
|
-
* Use appropriate loading patterns based on context:
|
|
129
|
-
* **Page**: Full page loading states
|
|
130
|
-
* **Component**: Local loading within sections
|
|
131
|
-
* **Button**: Inline loading for form submissions
|
|
132
|
-
* **Validate**: Server-side validation feedback
|
|
133
|
-
* Provide clear success and error feedback
|
|
134
|
-
* Use progressive enhancement for better perceived performance
|
|
135
|
-
|
|
136
|
-
On this page
|
|
137
|
-
|
|
138
|
-
* [Interaction Patterns](#interaction-patterns)
|
|
139
|
-
* [Keyboard Navigation](#keyboard-navigation)
|
|
140
|
-
* [Touch Interactions](#touch-interactions)
|
|
141
|
-
* [Loading and Feedback](#loading-and-feedback)
|
|
142
|
-
|
|
143
|
-
## Introduction
|
|
144
|
-
|
|
145
|
-
[](#tokens)Tokens
|
|
146
|
-
=================
|
|
147
|
-
|
|
148
|
-
Design tokens are an integral part of the design system. They help us create consistency across components by sharing common design decisions and simplify our theming ecosystem.
|
|
149
|
-
|
|
150
|
-
[](#what-are-tokens)What are tokens?
|
|
151
|
-
------------------------------------
|
|
152
|
-
|
|
153
|
-
Tokens are a set of variables that define the design properties of a component. They are used to define the visual properties of a component, such as colours, typography, spacing, and more.
|
|
154
|
-
|
|
155
|
-
[](#token-list)Token list
|
|
156
|
-
-------------------------
|
|
157
|
-
|
|
158
|
-
The table below shows all the new and old tokens in the design system. Use the filters to narrow down the list of tokens.
|
|
159
|
-
|
|
160
|
-
Columns: 4 selected
|
|
161
|
-
|
|
162
|
-
labelaliasdescriptionreadonly
|
|
163
|
-
|
|
164
|
-
* * *
|
|
165
|
-
|
|
166
|
-
typedefaultValuedeprecated
|
|
167
|
-
|
|
168
|
-
None selected
|
|
169
|
-
|
|
170
|
-
Show deprecated tokens
|
|
171
|
-
|
|
172
|
-
Tokens (88)
|
|
173
|
-
| Name
|
|
174
|
-
| Alias
|
|
175
|
-
|
|
176
|
-
| Description
|
|
177
|
-
|
|
178
|
-
| Themeable
|
|
179
|
-
|
|
180
|
-
|
|
|
181
|
-
| --- | --- | --- | --- |
|
|
182
|
-
| colour.primary.fill | | Used for primary buttons and the active state of form controls such as checkboxes and radio buttons. Also used for the border of tags when they have a custom button. | |
|
|
183
|
-
| colour.primary.fillHover | | Used for the hover state of primary buttons as well as hovering over active form controls. | |
|
|
184
|
-
| colour.primary.onFill | | Used as the foreground colour on primary buttons and active form controls. | |
|
|
185
|
-
| colour.primary.surface | | Used as the background colour for secondary buttons and the focused state of menu and tab items. Also used as the background colour of active buttons. | |
|
|
186
|
-
| colour.primary.surfaceHover | | Used for the hover state of secondary buttons, form controls and hovering over focused menu and tab items. Also used when hovering over table rows. | |
|
|
187
|
-
| colour.primary.text | | Used for text on primary buttons, active form controls and focused tab and menu items. Also used for the link text colour and tertiary buttons. | |
|
|
188
|
-
| colour.neutral.10 | | Used as the default background colour for most components. For tooltips, it is used as the foreground colour for the tooltip content. | |
|
|
189
|
-
| colour.neutral.20 | | Used as the alternating background colour for components such as tables. Used as the background colour behind panels and cards for highly interactive screens. | |
|
|
190
|
-
| colour.neutral.30 | | Used as the border colour for dividers, and the default divider colour for components with in-built headers and footers such as cards. | |
|
|
191
|
-
| colour.neutral.40 | | Used for borders in subtle interactive components, such as checkboxes and radios with hidden controls and the progress bar. | |
|
|
192
|
-
| colour.neutral.50 | | Used as the background colour for interactive components such as the slider. | |
|
|
193
|
-
| colour.neutral.60 | | Used for placeholder text in form controls and disabled states. | |
|
|
194
|
-
| colour.neutral.70 | | Used for muted text such as hints and descriptions to allow for content hierarchy. | |
|
|
195
|
-
| colour.neutral.80 | | Used as the default text colour for most components. For tooltips, it is used as the background colour. | |
|
|
196
|
-
| colour.accent.brand | | The brand accent is useful for grabbing attention and to support your primary/brand colour. It should be used sparingly to draw attention to key elements. | |
|
|
197
|
-
| colour.system.success.fill | | Used for the background colour of primary success buttons, as well as the border of alerts and badges. It is also used for the foreground colour of icons inside toasts and alerts. | |
|
|
198
|
-
| colour.system.success.fillHover | | Used for the hover state of primary success buttons. | |
|
|
199
|
-
| colour.system.success.onFill | | Used for the foreground colour of primary success buttons and badges. | |
|
|
200
|
-
| colour.system.success.surface | | Used for the background colour of success alerts and toasts, and the background of secondary success buttons. | |
|
|
201
|
-
| colour.system.success.surfaceHover | | Used for the hover state of secondary success buttons. | |
|
|
202
|
-
| colour.system.success.text | | Used for the text colour of success alerts and toasts, and success tertiary buttons. | |
|
|
203
|
-
| colour.system.danger.fill | | Used for the background colour of primary danger buttons, as well as the border of alerts and badges. It is also used for the foreground colour of icons inside toasts and alerts. | |
|
|
204
|
-
| colour.system.danger.fillHover | | Used for the hover state of primary danger buttons. | |
|
|
205
|
-
| colour.system.danger.onFill | | Used for the foreground colour of primary danger buttons and badges. | |
|
|
206
|
-
| colour.system.danger.surface | | Used for the background colour of danger alerts and toasts, and the background of secondary danger buttons. | |
|
|
207
|
-
| colour.system.danger.surfaceHover | | Used for the hover state of secondary danger buttons. | |
|
|
208
|
-
| colour.system.danger.text | | Used for the text colour of danger alerts and toasts, and danger tertiary buttons. | |
|
|
209
|
-
| colour.system.warning.fill | | Used for the border of warning alerts and the background of warning badges. | |
|
|
210
|
-
| colour.system.warning.onFill | | Used for the foreground colour of warning badges. | |
|
|
211
|
-
| colour.system.warning.surface | | Used for the background colour of warning alerts. | |
|
|
212
|
-
| colour.system.warning.text | | Used for the text colour of warning alerts. | |
|
|
213
|
-
| colour.system.info.fill | | Used for the border of info alerts and toasts and the background of info badges. | |
|
|
214
|
-
| colour.system.info.onFill | | Used for the foreground colour of info badges. | |
|
|
215
|
-
| colour.system.info.surface | | Used for the background colour of info alerts and toasts. | |
|
|
216
|
-
| colour.system.info.text | | Used for the text colour of info alerts and toasts. | |
|
|
217
|
-
| colour.system.backdrop.fill | | Used for the background colour of the backdrop. | |
|
|
218
|
-
| elevation.raised.shadow | | Shadow for raised elevations | |
|
|
219
|
-
| elevation.raised.border | | Border for raised elevations | |
|
|
220
|
-
| elevation.floating.shadow | | Shadow for floating elevations | |
|
|
221
|
-
| elevation.floating.border | | Border for floating elevations | |
|
|
222
|
-
| elevation.overflow.shadow | | Shadow for overflow elevations | |
|
|
223
|
-
| elevation.overflow.border | | Border for overflow elevations | |
|
|
224
|
-
| elevation.focus.shadow | | Shadow for focus elevations | |
|
|
225
|
-
| elevation.focusCompact.shadow | | Shadow for focus compact elevations | |
|
|
226
|
-
| elevation.focusCompact.borderColor | | Border color for focus compact elevations | |
|
|
227
|
-
| radius.100 | | The base unit for radius. The fallback for all other values will be calculated from this value. | |
|
|
228
|
-
| radius.000 | none | No radius | |
|
|
229
|
-
| radius.025 | | 25% (0.25x) radius | |
|
|
230
|
-
| radius.050 | | 50% (0.5x) radius | |
|
|
231
|
-
| radius.075 | | 75% (0.75x) radius | |
|
|
232
|
-
| radius.system.badge | | Applies to badges and tags (that have not been designated to be a circle). | |
|
|
233
|
-
| radius.system.button | | Applies to buttons and other interactive elements such as the hover state of links. | |
|
|
234
|
-
| radius.system.form | | Applies to form inputs and alerts. | |
|
|
235
|
-
| radius.system.layout | | Applies to panels, modals and slideouts. | |
|
|
236
|
-
| spacing.100 | xs | The base unit for spacing. The fallback for all other values will be calculated from this value. | |
|
|
237
|
-
| spacing.150 | | 150% (1.5x) spacing | |
|
|
238
|
-
| spacing.200 | sm | 200% (2x) spacing | |
|
|
239
|
-
| spacing.250 | | 250% (2.5x) spacing | |
|
|
240
|
-
| spacing.300 | | 300% (3x) spacing | |
|
|
241
|
-
| spacing.350 | | 350% (3.5x) spacing | |
|
|
242
|
-
| spacing.400 | md | 400% (4x) spacing | |
|
|
243
|
-
| spacing.500 | | 500% (5x) spacing | |
|
|
244
|
-
| spacing.600 | lg | 600% (6x) spacing | |
|
|
245
|
-
| spacing.700 | | 700% (7x) spacing | |
|
|
246
|
-
| spacing.800 | | 800% (8x) spacing | |
|
|
247
|
-
| spacing.900 | | 900% (9x) spacing | |
|
|
248
|
-
| spacing.1000 | | 1000% (10x) spacing | |
|
|
249
|
-
| spacing.1200 | xl | 1200% (12x) spacing | |
|
|
250
|
-
| spacing.000 | none | No spacing | |
|
|
251
|
-
| spacing.050 | | 50% (0.5x) spacing | |
|
|
252
|
-
| typography.base.size | | This is the base font size, and is used to calculate the font sizes of each token. | |
|
|
253
|
-
| typography.base.headingFont | | This is the base font family for headings, used for heading tokens. | |
|
|
254
|
-
| typography.base.bodyFont | | This is the base font family for body, used for body tokens. | |
|
|
255
|
-
| typography.heading.1 | | Use for the main page title to establish a clear hierarchy. There is only one H1 per screen, emphasising the primary purpose or context of the page. | |
|
|
256
|
-
| typography.heading.2 | | Use for \*\*primary section headings\*\* within a page to organise content and guide the user through key areas. Also suitable for large components—such as modals—where space allows and where it pairs well with: body.md or body.lg. | |
|
|
257
|
-
| typography.heading.3 | | Use for: sub-sections under H2s to further structure content and maintain a clear visual hierarchy. Ideal for breaking down complex sections into manageable parts. | |
|
|
258
|
-
| typography.heading.4 | | Use for: supporting headings within content blocks or small components where space is limited—such as table headers, cards, or side panels. Provides structure without overwhelming the layout. | |
|
|
259
|
-
| typography.heading.5 | | Use for: minor labels or titles in compact UI elements, such as cards, sidebars, or inline labels. Best used to emphasise supplementary information without drawing too much attention. Works well with body.sm and is ideal for subtle content like fine print. Use sparingly to preserve typographic hierarchy. | |
|
|
260
|
-
| typography.body.sm.regular | | The default small text, most commonly used to display text in small components and compact tables and lists. | |
|
|
261
|
-
| typography.body.sm.strong | | Strong text is used to highlight important information in a paragraph of text. | |
|
|
262
|
-
| typography.body.sm.em | | Emphasised text is used to highlight a term or definition in a paragraph of text. It is used sparingly, usually for legal purposes. | |
|
|
263
|
-
| typography.body.md.regular | | The default medium text, most commonly used to display text across all products. | |
|
|
264
|
-
| typography.body.md.strong | | Strong text is used to highlight important information in a paragraph of text. | |
|
|
265
|
-
| typography.body.md.em | | Emphasised text is used to highlight a term or definition in a paragraph of text. It is used sparingly, usually for legal purposes. | |
|
|
266
|
-
| typography.body.lg.regular | | The default large text, most commonly used to display large text across all products. | |
|
|
267
|
-
| typography.body.lg.strong | | Strong text is used to highlight important information in a paragraph of text. | |
|
|
268
|
-
| typography.body.lg.em | | Emphasised text is used to highlight a term or definition in a paragraph of text. It is used sparingly, usually for legal purposes. | |
|
|
269
|
-
| typography.code | | Used to display code snippets in the product, such as in the API documentation. | |
|
|
270
|
-
|
|
271
|
-
* * *
|
|
272
|
-
|
|
273
|
-
[](#for-developers)For developers
|
|
274
|
-
---------------------------------
|
|
275
|
-
|
|
276
|
-
If you are using the IDS components, the tokens have already been mapped out to their respective components. You can use the tokens in the component props to change the visual properties of the component.
|
|
277
|
-
|
|
278
|
-
[
|
|
279
|
-
|
|
280
|
-
Learn more about styling props
|
|
281
|
-
|
|
282
|
-
](/?path=/docs/styling-props-reference--docs)
|
|
283
|
-
|
|
284
|
-
\[data-radix-scroll-area-viewport\] {
|
|
285
|
-
scrollbar-width: none;
|
|
286
|
-
-ms-overflow-style: none;
|
|
287
|
-
-webkit-overflow-scrolling: touch;
|
|
288
|
-
}
|
|
289
|
-
\[data-radix-scroll-area-viewport\]::-webkit-scrollbar {
|
|
290
|
-
display: none;
|
|
291
|
-
}
|
|
292
|
-
:where(\[data-radix-scroll-area-viewport\]) {
|
|
293
|
-
display: flex;
|
|
294
|
-
flex-direction: column;
|
|
295
|
-
align-items: stretch;
|
|
296
|
-
}
|
|
297
|
-
:where(\[data-radix-scroll-area-content\]) {
|
|
298
|
-
flex-grow: 1;
|
|
299
|
-
}
|
|
300
|
-
|
|
301
|
-
import { IressText } from '@iress-oss/ids-components';
|
|
302
|
-
<IressText color\="colour.primary.text"\>I am branded text</IressText\>;
|
|
303
|
-
|
|
304
|
-
Copy
|
|
305
|
-
|
|
306
|
-
If you are not using the IDS components, you can use the tokens directly by using the `cssVars` object from `@iress-oss/ids-tokens`.
|
|
307
|
-
|
|
308
|
-
\[data-radix-scroll-area-viewport\] {
|
|
309
|
-
scrollbar-width: none;
|
|
310
|
-
-ms-overflow-style: none;
|
|
311
|
-
-webkit-overflow-scrolling: touch;
|
|
312
|
-
}
|
|
313
|
-
\[data-radix-scroll-area-viewport\]::-webkit-scrollbar {
|
|
314
|
-
display: none;
|
|
315
|
-
}
|
|
316
|
-
:where(\[data-radix-scroll-area-viewport\]) {
|
|
317
|
-
display: flex;
|
|
318
|
-
flex-direction: column;
|
|
319
|
-
align-items: stretch;
|
|
320
|
-
}
|
|
321
|
-
:where(\[data-radix-scroll-area-content\]) {
|
|
322
|
-
flex-grow: 1;
|
|
323
|
-
}
|
|
324
|
-
|
|
325
|
-
import { cssVars } from '@iress-oss/ids-tokens';
|
|
326
|
-
<div style\={{ color: cssVars.colour.primary.text }}\>I am branded text</div\>;
|
|
327
|
-
|
|
328
|
-
Copy
|
|
329
|
-
|
|
330
|
-
On this page
|
|
331
|
-
|
|
332
|
-
* [What are tokens?](#what-are-tokens)
|
|
333
|
-
* [Token list](#token-list)
|
|
334
|
-
* [For developers](#for-developers)
|
|
335
|
-
|
|
336
|
-
## Colour
|
|
337
|
-
|
|
338
|
-
[](#colour)Colour
|
|
339
|
-
=================
|
|
340
|
-
|
|
341
|
-
Colour is an integral aspect of conveying clear concise data. Our colours are optimized across two backgrounds, meeting or exceeding [WCAG 2.1 Level AA Accessibility Guidelines](https://www.w3.org/TR/WCAG21/#contrast-minimum).
|
|
342
|
-
|
|
343
|
-
The default theme is designed to meet WCAG contrast guidelines. We can't guarantee this when consumer branding is applied, so colour combinations should be checked to ensure conformance.
|
|
344
|
-
|
|
345
|
-
[](#primary)Primary
|
|
346
|
-
-------------------
|
|
347
|
-
|
|
348
|
-
The primary colour is your "brand" colour, and is used across all interactive elements such as buttons, links, inputs, etc. This colour can define the overall feel and can elicit emotion.
|
|
349
|
-
|
|
350
|
-
### Fill
|
|
351
|
-
|
|
352
|
-
colour.primary.fill #13213F
|
|
353
|
-
|
|
354
|
-
Used for primary buttons and the active state of form controls such as checkboxes and radio buttons. Also used for the border of tags when they have a custom button.
|
|
355
|
-
|
|
356
|
-
#### Allowed foregrounds
|
|
357
|
-
|
|
358
|
-
* colour.primary.onFill (#ECF2FF)
|
|
359
|
-
|
|
360
|
-
14.2 AAA
|
|
361
|
-
|
|
362
|
-
|
|
363
|
-
### On Fill
|
|
364
|
-
|
|
365
|
-
colour.primary.onFill #ECF2FF
|
|
366
|
-
|
|
367
|
-
Used as the foreground colour on primary buttons and active form controls.
|
|
368
|
-
|
|
369
|
-
#### Allowed foregrounds
|
|
370
|
-
|
|
371
|
-
* colour.primary.fill (#13213F)
|
|
372
|
-
|
|
373
|
-
14.2 AAA
|
|
374
|
-
|
|
375
|
-
|
|
376
|
-
### Fill Hover
|
|
377
|
-
|
|
378
|
-
colour.primary.fillHover #2B3752
|
|
379
|
-
|
|
380
|
-
Used for the hover state of primary buttons as well as hovering over active form controls.
|
|
381
|
-
|
|
382
|
-
#### Allowed foregrounds
|
|
383
|
-
|
|
384
|
-
* colour.primary.onFill (#ECF2FF)
|
|
385
|
-
|
|
386
|
-
10.6 AAA
|
|
387
|
-
|
|
388
|
-
|
|
389
|
-
### Surface
|
|
390
|
-
|
|
391
|
-
colour.primary.surface #D9E5FF
|
|
392
|
-
|
|
393
|
-
Used as the background colour for secondary buttons and the focused state of menu and tab items. Also used as the background colour of active buttons.
|
|
394
|
-
|
|
395
|
-
#### Allowed foregrounds
|
|
396
|
-
|
|
397
|
-
* colour.primary.text (#13213F)
|
|
398
|
-
|
|
399
|
-
12.6 AAA
|
|
400
|
-
|
|
401
|
-
* colour.neutral.80 (#393F46)
|
|
402
|
-
|
|
403
|
-
8.4 AAA
|
|
404
|
-
|
|
405
|
-
|
|
406
|
-
### Text
|
|
407
|
-
|
|
408
|
-
colour.primary.text #13213F
|
|
409
|
-
|
|
410
|
-
Used for text on primary buttons, active form controls and focused tab and menu items. Also used for the link text colour and tertiary buttons.
|
|
411
|
-
|
|
412
|
-
#### Allowed foregrounds
|
|
413
|
-
|
|
414
|
-
* colour.primary.surface (#D9E5FF)
|
|
415
|
-
|
|
416
|
-
12.6 AAA
|
|
417
|
-
|
|
418
|
-
|
|
419
|
-
### Surface Hover
|
|
420
|
-
|
|
421
|
-
colour.primary.surfaceHover #E1EAFF
|
|
422
|
-
|
|
423
|
-
Used for the hover state of secondary buttons, form controls and hovering over focused menu and tab items. Also used when hovering over table rows.
|
|
424
|
-
|
|
425
|
-
#### Allowed foregrounds
|
|
426
|
-
|
|
427
|
-
* colour.primary.text (#13213F)
|
|
428
|
-
|
|
429
|
-
13.2 AAA
|
|
430
|
-
|
|
431
|
-
* colour.neutral.80 (#393F46)
|
|
432
|
-
|
|
433
|
-
8.8 AAA
|
|
434
|
-
|
|
435
|
-
|
|
436
|
-
* * *
|
|
437
|
-
|
|
438
|
-
[](#neutral)Neutral
|
|
439
|
-
-------------------
|
|
440
|
-
|
|
441
|
-
Neutral colours apply to most backgrounds, text, and shapes in our experiences. They do not typically have a meaning associated with them, though they can imply things like disabled states. **Note:** There are some colour contrasts that are AA Large and are used for placeholders. If WCAG compliance is necessary for your application, please avoid using placeholders to meet this requirement.
|
|
442
|
-
|
|
443
|
-
### 10
|
|
444
|
-
|
|
445
|
-
colour.neutral.10 #FFF
|
|
446
|
-
|
|
447
|
-
Used as the default background colour for most components. For tooltips, it is used as the foreground colour for the tooltip content.
|
|
448
|
-
|
|
449
|
-
#### Allowed foregrounds
|
|
450
|
-
|
|
451
|
-
* colour.neutral.80 (#393F46)
|
|
452
|
-
|
|
453
|
-
10.6 AAA
|
|
454
|
-
|
|
455
|
-
* colour.neutral.70 (#6D7278)
|
|
456
|
-
|
|
457
|
-
4.9 AA
|
|
458
|
-
|
|
459
|
-
* colour.neutral.60 (#878B92)
|
|
460
|
-
|
|
461
|
-
3.4 AA Large
|
|
462
|
-
|
|
463
|
-
|
|
464
|
-
### 20
|
|
465
|
-
|
|
466
|
-
colour.neutral.20 #F9F9F9
|
|
467
|
-
|
|
468
|
-
Used as the alternating background colour for components such as tables. Used as the background colour behind panels and cards for highly interactive screens.
|
|
469
|
-
|
|
470
|
-
#### Allowed foregrounds
|
|
471
|
-
|
|
472
|
-
* colour.neutral.80 (#393F46)
|
|
473
|
-
|
|
474
|
-
10.1 AAA
|
|
475
|
-
|
|
476
|
-
* colour.neutral.70 (#6D7278)
|
|
477
|
-
|
|
478
|
-
4.6 AA
|
|
479
|
-
|
|
480
|
-
|
|
481
|
-
### 30
|
|
482
|
-
|
|
483
|
-
colour.neutral.30 #E4E5E7
|
|
484
|
-
|
|
485
|
-
Used as the border colour for dividers, and the default divider colour for components with in-built headers and footers such as cards.
|
|
486
|
-
|
|
487
|
-
### 40
|
|
488
|
-
|
|
489
|
-
colour.neutral.40 #D7D8DA
|
|
490
|
-
|
|
491
|
-
Used for borders in subtle interactive components, such as checkboxes and radios with hidden controls and the progress bar.
|
|
492
|
-
|
|
493
|
-
### 50
|
|
494
|
-
|
|
495
|
-
colour.neutral.50 #AFB2B6
|
|
496
|
-
|
|
497
|
-
Used as the background colour for interactive components such as the slider.
|
|
498
|
-
|
|
499
|
-
### 60
|
|
500
|
-
|
|
501
|
-
colour.neutral.60 #878B92
|
|
502
|
-
|
|
503
|
-
Used for placeholder text in form controls and disabled states.
|
|
504
|
-
|
|
505
|
-
#### Allowed foregrounds
|
|
506
|
-
|
|
507
|
-
* colour.neutral.10 (#FFF)
|
|
508
|
-
|
|
509
|
-
3.4 AA Large
|
|
510
|
-
|
|
511
|
-
|
|
512
|
-
### 70
|
|
513
|
-
|
|
514
|
-
colour.neutral.70 #6D7278
|
|
515
|
-
|
|
516
|
-
Used for muted text such as hints and descriptions to allow for content hierarchy.
|
|
517
|
-
|
|
518
|
-
#### Allowed foregrounds
|
|
519
|
-
|
|
520
|
-
* colour.neutral.10 (#FFF)
|
|
521
|
-
|
|
522
|
-
4.9 AA
|
|
523
|
-
|
|
524
|
-
* colour.neutral.20 (#F9F9F9)
|
|
525
|
-
|
|
526
|
-
4.6 AA
|
|
527
|
-
|
|
528
|
-
|
|
529
|
-
### 80
|
|
530
|
-
|
|
531
|
-
colour.neutral.80 #393F46
|
|
532
|
-
|
|
533
|
-
Used as the default text colour for most components. For tooltips, it is used as the background colour.
|
|
534
|
-
|
|
535
|
-
#### Allowed foregrounds
|
|
536
|
-
|
|
537
|
-
* colour.neutral.10 (#FFF)
|
|
538
|
-
|
|
539
|
-
10.6 AAA
|
|
540
|
-
|
|
541
|
-
* colour.neutral.20 (#F9F9F9)
|
|
542
|
-
|
|
543
|
-
10.1 AAA
|
|
544
|
-
|
|
545
|
-
|
|
546
|
-
* * *
|
|
547
|
-
|
|
548
|
-
[](#accent)Accent
|
|
549
|
-
-----------------
|
|
550
|
-
|
|
551
|
-
The accent colour is a colour used to emphasise key parts of the UI. These act as "secondary" or "supporting" colours to you primary colour.
|
|
552
|
-
|
|
553
|
-
### Brand
|
|
554
|
-
|
|
555
|
-
colour.accent.brand #FF99A8
|
|
556
|
-
|
|
557
|
-
The brand accent is useful for grabbing attention and to support your primary/brand colour. It should be used sparingly to draw attention to key elements.
|
|
558
|
-
|
|
559
|
-
* * *
|
|
560
|
-
|
|
561
|
-
[](#system-colours)System colours
|
|
562
|
-
---------------------------------
|
|
563
|
-
|
|
564
|
-
Along with primary colours, it is helpful to have a selection of system colours to use in components such as pills, alerts and labels. System colours emphasis different semantic states. They are used to provide visual feedback and/or warnings to users as they use your interface.
|
|
565
|
-
|
|
566
|
-
### [](#success-positive)Success (Positive)
|
|
567
|
-
|
|
568
|
-
Communicates that an action has been successful and inform a user that the action is a positive action.
|
|
569
|
-
|
|
570
|
-
### Fill
|
|
571
|
-
|
|
572
|
-
colour.system.success.fill #02794D
|
|
573
|
-
|
|
574
|
-
Used for the background colour of primary success buttons, as well as the border of alerts and badges. It is also used for the foreground colour of icons inside toasts and alerts.
|
|
575
|
-
|
|
576
|
-
#### Allowed foregrounds
|
|
577
|
-
|
|
578
|
-
* colour.system.success.onFill (#EFFBF2)
|
|
579
|
-
|
|
580
|
-
5.1 AA
|
|
581
|
-
|
|
582
|
-
|
|
583
|
-
### On Fill
|
|
584
|
-
|
|
585
|
-
colour.system.success.onFill #EFFBF2
|
|
586
|
-
|
|
587
|
-
Used for the foreground colour of primary success buttons and badges.
|
|
588
|
-
|
|
589
|
-
#### Allowed foregrounds
|
|
590
|
-
|
|
591
|
-
* colour.system.success.fill (#02794D)
|
|
592
|
-
|
|
593
|
-
5.1 AA
|
|
594
|
-
|
|
595
|
-
|
|
596
|
-
### Fill Hover
|
|
597
|
-
|
|
598
|
-
colour.system.success.fillHover #01603D
|
|
599
|
-
|
|
600
|
-
Used for the hover state of primary success buttons.
|
|
601
|
-
|
|
602
|
-
#### Allowed foregrounds
|
|
603
|
-
|
|
604
|
-
* colour.system.success.onFill (#EFFBF2)
|
|
605
|
-
|
|
606
|
-
7.2 AAA
|
|
607
|
-
|
|
608
|
-
|
|
609
|
-
### Surface
|
|
610
|
-
|
|
611
|
-
colour.system.success.surface #E6F9EB
|
|
612
|
-
|
|
613
|
-
Used for the background colour of success alerts and toasts, and the background of secondary success buttons.
|
|
614
|
-
|
|
615
|
-
#### Allowed foregrounds
|
|
616
|
-
|
|
617
|
-
* colour.system.success.text (#015537)
|
|
618
|
-
|
|
619
|
-
8.1 AAA
|
|
620
|
-
|
|
621
|
-
* colour.neutral.80 (#393F46)
|
|
622
|
-
|
|
623
|
-
9.7 AAA
|
|
624
|
-
|
|
625
|
-
|
|
626
|
-
### Text
|
|
627
|
-
|
|
628
|
-
colour.system.success.text #015537
|
|
629
|
-
|
|
630
|
-
Used for the text colour of success alerts and toasts, and success tertiary buttons.
|
|
631
|
-
|
|
632
|
-
#### Allowed foregrounds
|
|
633
|
-
|
|
634
|
-
* colour.system.success.surface (#E6F9EB)
|
|
635
|
-
|
|
636
|
-
8.1 AAA
|
|
637
|
-
|
|
638
|
-
|
|
639
|
-
### Surface Hover
|
|
640
|
-
|
|
641
|
-
colour.system.success.surfaceHover #D5F6DE
|
|
642
|
-
|
|
643
|
-
Used for the hover state of secondary success buttons.
|
|
644
|
-
|
|
645
|
-
#### Allowed foregrounds
|
|
646
|
-
|
|
647
|
-
* colour.system.success.text (#015537)
|
|
648
|
-
|
|
649
|
-
7.7 AAA
|
|
650
|
-
|
|
651
|
-
* colour.neutral.80 (#393F46)
|
|
652
|
-
|
|
653
|
-
9.2 AAA
|
|
654
|
-
|
|
655
|
-
|
|
656
|
-
* * *
|
|
657
|
-
|
|
658
|
-
### [](#danger-negative)Danger (Negative)
|
|
659
|
-
|
|
660
|
-
Communicates something went wrong or prevents the user from moving forward with their task, as well as inform a potential action is destructive/negative.
|
|
661
|
-
|
|
662
|
-
### Fill
|
|
663
|
-
|
|
664
|
-
colour.system.danger.fill #C20A0A
|
|
665
|
-
|
|
666
|
-
Used for the background colour of primary danger buttons, as well as the border of alerts and badges. It is also used for the foreground colour of icons inside toasts and alerts.
|
|
667
|
-
|
|
668
|
-
#### Allowed foregrounds
|
|
669
|
-
|
|
670
|
-
* colour.system.danger.onFill (#FFF6F5)
|
|
671
|
-
|
|
672
|
-
5.9 AA
|
|
673
|
-
|
|
674
|
-
|
|
675
|
-
### On Fill
|
|
676
|
-
|
|
677
|
-
colour.system.danger.onFill #FFF6F5
|
|
678
|
-
|
|
679
|
-
Used for the foreground colour of primary danger buttons and badges.
|
|
680
|
-
|
|
681
|
-
#### Allowed foregrounds
|
|
682
|
-
|
|
683
|
-
* colour.system.danger.fill (#C20A0A)
|
|
684
|
-
|
|
685
|
-
5.9 AA
|
|
686
|
-
|
|
687
|
-
|
|
688
|
-
### Fill Hover
|
|
689
|
-
|
|
690
|
-
colour.system.danger.fillHover #A50606
|
|
691
|
-
|
|
692
|
-
Used for the hover state of primary danger buttons.
|
|
693
|
-
|
|
694
|
-
#### Allowed foregrounds
|
|
695
|
-
|
|
696
|
-
* colour.system.danger.onFill (#FFF6F5)
|
|
697
|
-
|
|
698
|
-
7.5 AAA
|
|
699
|
-
|
|
700
|
-
|
|
701
|
-
### Surface
|
|
702
|
-
|
|
703
|
-
colour.system.danger.surface #FEE8E7
|
|
704
|
-
|
|
705
|
-
Used for the background colour of danger alerts and toasts, and the background of secondary danger buttons.
|
|
706
|
-
|
|
707
|
-
#### Allowed foregrounds
|
|
708
|
-
|
|
709
|
-
* colour.system.danger.text (#970202)
|
|
710
|
-
|
|
711
|
-
7.7 AAA
|
|
712
|
-
|
|
713
|
-
* colour.neutral.80 (#393F46)
|
|
714
|
-
|
|
715
|
-
9.1 AAA
|
|
716
|
-
|
|
717
|
-
|
|
718
|
-
### Text
|
|
719
|
-
|
|
720
|
-
colour.system.danger.text #970202
|
|
721
|
-
|
|
722
|
-
Used for the text colour of danger alerts and toasts, and danger tertiary buttons.
|
|
723
|
-
|
|
724
|
-
#### Allowed foregrounds
|
|
725
|
-
|
|
726
|
-
* colour.system.danger.surface (#FEE8E7)
|
|
727
|
-
|
|
728
|
-
7.7 AAA
|
|
729
|
-
|
|
730
|
-
|
|
731
|
-
### Surface Hover
|
|
732
|
-
|
|
733
|
-
colour.system.danger.surfaceHover #FEDEDC
|
|
734
|
-
|
|
735
|
-
Used for the hover state of secondary danger buttons.
|
|
736
|
-
|
|
737
|
-
#### Allowed foregrounds
|
|
738
|
-
|
|
739
|
-
* colour.system.danger.text (#970202)
|
|
740
|
-
|
|
741
|
-
7.2 AAA
|
|
742
|
-
|
|
743
|
-
* colour.neutral.80 (#393F46)
|
|
744
|
-
|
|
745
|
-
8.5 AAA
|
|
746
|
-
|
|
747
|
-
|
|
748
|
-
* * *
|
|
749
|
-
|
|
750
|
-
### [](#warning)Warning
|
|
751
|
-
|
|
752
|
-
Communicates attention required but does not prevent the user from moving forward with their task.
|
|
753
|
-
|
|
754
|
-
### Fill
|
|
755
|
-
|
|
756
|
-
colour.system.warning.fill #F6C84C
|
|
757
|
-
|
|
758
|
-
Used for the border of warning alerts and the background of warning badges.
|
|
759
|
-
|
|
760
|
-
#### Allowed foregrounds
|
|
761
|
-
|
|
762
|
-
* colour.system.warning.onFill (#1A1200)
|
|
763
|
-
|
|
764
|
-
11.8 AAA
|
|
765
|
-
|
|
766
|
-
|
|
767
|
-
### On Fill
|
|
768
|
-
|
|
769
|
-
colour.system.warning.onFill #1A1200
|
|
770
|
-
|
|
771
|
-
Used for the foreground colour of warning badges.
|
|
772
|
-
|
|
773
|
-
#### Allowed foregrounds
|
|
774
|
-
|
|
775
|
-
* colour.system.warning.fill (#F6C84C)
|
|
776
|
-
|
|
777
|
-
11.8 AAA
|
|
778
|
-
|
|
779
|
-
|
|
780
|
-
### Surface
|
|
781
|
-
|
|
782
|
-
colour.system.warning.surface #FEF4CD
|
|
783
|
-
|
|
784
|
-
Used for the background colour of warning alerts.
|
|
785
|
-
|
|
786
|
-
#### Allowed foregrounds
|
|
787
|
-
|
|
788
|
-
* colour.system.warning.text (#1A1200)
|
|
789
|
-
|
|
790
|
-
16.8 AAA
|
|
791
|
-
|
|
792
|
-
* colour.neutral.80 (#393F46)
|
|
793
|
-
|
|
794
|
-
9.6 AAA
|
|
795
|
-
|
|
796
|
-
|
|
797
|
-
### Text
|
|
798
|
-
|
|
799
|
-
colour.system.warning.text #1A1200
|
|
800
|
-
|
|
801
|
-
Used for the text colour of warning alerts.
|
|
802
|
-
|
|
803
|
-
#### Allowed foregrounds
|
|
804
|
-
|
|
805
|
-
* colour.system.warning.surface (#FEF4CD)
|
|
806
|
-
|
|
807
|
-
16.8 AAA
|
|
808
|
-
|
|
809
|
-
|
|
810
|
-
* * *
|
|
811
|
-
|
|
812
|
-
### [](#information)Information
|
|
813
|
-
|
|
814
|
-
Provides additional helpful context.
|
|
815
|
-
|
|
816
|
-
### Fill
|
|
817
|
-
|
|
818
|
-
colour.system.info.fill #004FBD
|
|
819
|
-
|
|
820
|
-
Used for the border of info alerts and toasts and the background of info badges.
|
|
821
|
-
|
|
822
|
-
#### Allowed foregrounds
|
|
823
|
-
|
|
824
|
-
* colour.system.info.onFill (#F5FAFF)
|
|
825
|
-
|
|
826
|
-
7.0 AAA
|
|
827
|
-
|
|
828
|
-
|
|
829
|
-
### On Fill
|
|
830
|
-
|
|
831
|
-
colour.system.info.onFill #F5FAFF
|
|
832
|
-
|
|
833
|
-
Used for the foreground colour of info badges.
|
|
834
|
-
|
|
835
|
-
#### Allowed foregrounds
|
|
836
|
-
|
|
837
|
-
* colour.system.info.fill (#004FBD)
|
|
838
|
-
|
|
839
|
-
7.0 AAA
|
|
840
|
-
|
|
841
|
-
|
|
842
|
-
### Surface
|
|
843
|
-
|
|
844
|
-
colour.system.info.surface #E5F3FF
|
|
845
|
-
|
|
846
|
-
Used for the background colour of info alerts and toasts.
|
|
847
|
-
|
|
848
|
-
#### Allowed foregrounds
|
|
849
|
-
|
|
850
|
-
* colour.system.info.text (#123987)
|
|
851
|
-
|
|
852
|
-
9.5 AAA
|
|
853
|
-
|
|
854
|
-
* colour.neutral.80 (#393F46)
|
|
855
|
-
|
|
856
|
-
9.4 AAA
|
|
857
|
-
|
|
858
|
-
|
|
859
|
-
### Text
|
|
860
|
-
|
|
861
|
-
colour.system.info.text #123987
|
|
862
|
-
|
|
863
|
-
Used for the text colour of info alerts and toasts.
|
|
864
|
-
|
|
865
|
-
#### Allowed foregrounds
|
|
866
|
-
|
|
867
|
-
* colour.system.info.surface (#E5F3FF)
|
|
868
|
-
|
|
869
|
-
9.5 AAA
|
|
870
|
-
|
|
871
|
-
|
|
872
|
-
* * *
|
|
873
|
-
|
|
874
|
-
### [](#backdrop)Backdrop
|
|
875
|
-
|
|
876
|
-
Used to cover the page in order to highlight a specific component, such as a modal.
|
|
877
|
-
|
|
878
|
-
### Fill
|
|
879
|
-
|
|
880
|
-
colour.system.backdrop.fill #393F46CC
|
|
881
|
-
|
|
882
|
-
Used for the background colour of the backdrop.
|
|
883
|
-
|
|
884
|
-
#### Allowed foregrounds
|
|
885
|
-
|
|
886
|
-
* colour.neutral.10 (#FFF)
|
|
887
|
-
|
|
888
|
-
10.6 AAA
|
|
889
|
-
|
|
890
|
-
|
|
891
|
-
On this page
|
|
892
|
-
|
|
893
|
-
* [Primary](#primary)
|
|
894
|
-
* [Neutral](#neutral)
|
|
895
|
-
* [Accent](#accent)
|
|
896
|
-
* [System colours](#system-colours)
|
|
897
|
-
* [Success (Positive)](#success-positive)
|
|
898
|
-
* [Danger (Negative)](#danger-negative)
|
|
899
|
-
* [Warning](#warning)
|
|
900
|
-
* [Information](#information)
|
|
901
|
-
* [Backdrop](#backdrop)
|
|
902
|
-
|
|
903
|
-
## Elevation
|
|
904
|
-
|
|
905
|
-
[](#elevation)Elevation
|
|
906
|
-
=======================
|
|
907
|
-
|
|
908
|
-
Elevation is a design concept that adds depth and hierarchy to user interfaces by using shadows and layers. It helps users understand the relationship between different elements on the page, guiding their attention and interaction.
|
|
909
|
-
|
|
910
|
-
Raised
|
|
911
|
-
------
|
|
912
|
-
|
|
913
|
-
Raised elevations sit slightly higher than default elevations. They are reserved for cards that can be moved, such as Jira issue cards and Trello cards. In special circumstances, they can be used for cards as a way to provide additional heirarchy or emphasis.
|
|
914
|
-
|
|
915
|
-
elevation.raised
|
|
916
|
-
|
|
917
|
-
Floating
|
|
918
|
-
--------
|
|
919
|
-
|
|
920
|
-
Floating is the highest elevation available. It is reserved for a UI that sits over another UI, such as modals, dialogs, dropdown menus, floating toolbars, and floating single-action buttons.
|
|
921
|
-
|
|
922
|
-
elevation.floating
|
|
923
|
-
|
|
924
|
-
Overflow
|
|
925
|
-
--------
|
|
926
|
-
|
|
927
|
-
Overflow is a shadow indicating content has scrolled outside a view. It can be used for vertical or horizontal scroll. An example of overflow shadows is the horizontal scroll in tables on a Confluence page.
|
|
928
|
-
|
|
929
|
-
elevation.overflow
|
|
930
|
-
|
|
931
|
-
Focus
|
|
932
|
-
-----
|
|
933
|
-
|
|
934
|
-
Focus is an outline indicating that an element is focused, usually via keyboard interaction. It is user when a user cannot interact with the page using a mouse/touch.
|
|
935
|
-
|
|
936
|
-
elevation.focus
|
|
937
|
-
|
|
938
|
-
Focus Compact
|
|
939
|
-
-------------
|
|
940
|
-
|
|
941
|
-
Focus compact is a variation of the focus elevation to indicate focus on elements that have restricted space making the default focus not aesthetically pleasing (for example, a search input in a dropdown like rich select). Avoid using where possible, as it makes the focus state less obvious.
|
|
942
|
-
|
|
943
|
-
elevation.focusCompact
|
|
944
|
-
|
|
945
|
-
Hide code
|
|
946
|
-
|
|
947
|
-
\[data-radix-scroll-area-viewport\] { scrollbar-width: none; -ms-overflow-style: none; -webkit-overflow-scrolling: touch; } \[data-radix-scroll-area-viewport\]::-webkit-scrollbar { display: none; } :where(\[data-radix-scroll-area-viewport\]) { display: flex; flex-direction: column; align-items: stretch; } :where(\[data-radix-scroll-area-content\]) { flex-grow: 1; }
|
|
948
|
-
|
|
949
|
-
<I\>
|
|
950
|
-
<w
|
|
951
|
-
gutter\="md"
|
|
952
|
-
verticalAlign\="stretch"
|
|
953
|
-
\>
|
|
954
|
-
<n
|
|
955
|
-
span\={{
|
|
956
|
-
base: 6,
|
|
957
|
-
xl: 3
|
|
958
|
-
}}
|
|
959
|
-
\>
|
|
960
|
-
<I
|
|
961
|
-
layerStyle\="elevation.raised"
|
|
962
|
-
stretch
|
|
963
|
-
\>
|
|
964
|
-
<h2\>
|
|
965
|
-
Raised </h2\>
|
|
966
|
-
<p\>
|
|
967
|
-
Raised elevations sit slightly higher than default elevations. They are reserved for cards that can be moved, such as Jira issue cards and Trello cards. In special circumstances, they can be used for cards as a way to provide additional heirarchy or emphasis. </p\>
|
|
968
|
-
<p\>
|
|
969
|
-
<TokenTag\>
|
|
970
|
-
elevation.raised </TokenTag\>
|
|
971
|
-
</p\>
|
|
972
|
-
</I\>
|
|
973
|
-
</n\>
|
|
974
|
-
<n
|
|
975
|
-
span\={{
|
|
976
|
-
base: 6,
|
|
977
|
-
xl: 3
|
|
978
|
-
}}
|
|
979
|
-
\>
|
|
980
|
-
<I
|
|
981
|
-
layerStyle\="elevation.floating"
|
|
982
|
-
stretch
|
|
983
|
-
\>
|
|
984
|
-
<h2\>
|
|
985
|
-
Floating </h2\>
|
|
986
|
-
<p\>
|
|
987
|
-
Floating is the highest elevation available. It is reserved for a UI that sits over another UI, such as modals, dialogs, dropdown menus, floating toolbars, and floating single-action buttons. </p\>
|
|
988
|
-
<p\>
|
|
989
|
-
<TokenTag\>
|
|
990
|
-
elevation.floating </TokenTag\>
|
|
991
|
-
</p\>
|
|
992
|
-
</I\>
|
|
993
|
-
</n\>
|
|
994
|
-
<n
|
|
995
|
-
span\={{
|
|
996
|
-
base: 6,
|
|
997
|
-
xl: 3
|
|
998
|
-
}}
|
|
999
|
-
\>
|
|
1000
|
-
<I
|
|
1001
|
-
layerStyle\="elevation.overflow"
|
|
1002
|
-
stretch
|
|
1003
|
-
\>
|
|
1004
|
-
<h2\>
|
|
1005
|
-
Overflow </h2\>
|
|
1006
|
-
<p\>
|
|
1007
|
-
Overflow is a shadow indicating content has scrolled outside a view. It can be used for vertical or horizontal scroll. An example of overflow shadows is the horizontal scroll in tables on a Confluence page. </p\>
|
|
1008
|
-
<p\>
|
|
1009
|
-
<TokenTag\>
|
|
1010
|
-
elevation.overflow </TokenTag\>
|
|
1011
|
-
</p\>
|
|
1012
|
-
</I\>
|
|
1013
|
-
</n\>
|
|
1014
|
-
<n
|
|
1015
|
-
span\={{
|
|
1016
|
-
base: 6,
|
|
1017
|
-
xl: 3
|
|
1018
|
-
}}
|
|
1019
|
-
\>
|
|
1020
|
-
<I
|
|
1021
|
-
layerStyle\="elevation.focus"
|
|
1022
|
-
stretch
|
|
1023
|
-
\>
|
|
1024
|
-
<h2\>
|
|
1025
|
-
Focus </h2\>
|
|
1026
|
-
<p\>
|
|
1027
|
-
Focus is an outline indicating that an element is focused, usually via keyboard interaction. It is user when a user cannot interact with the page using a mouse/touch. </p\>
|
|
1028
|
-
<p\>
|
|
1029
|
-
<TokenTag\>
|
|
1030
|
-
elevation.focus </TokenTag\>
|
|
1031
|
-
</p\>
|
|
1032
|
-
</I\>
|
|
1033
|
-
</n\>
|
|
1034
|
-
<n
|
|
1035
|
-
span\={{
|
|
1036
|
-
base: 6,
|
|
1037
|
-
xl: 3
|
|
1038
|
-
}}
|
|
1039
|
-
\>
|
|
1040
|
-
<I
|
|
1041
|
-
layerStyle\="elevation.focusCompact"
|
|
1042
|
-
stretch
|
|
1043
|
-
\>
|
|
1044
|
-
<h2\>
|
|
1045
|
-
Focus Compact </h2\>
|
|
1046
|
-
<p\>
|
|
1047
|
-
Focus compact is a variation of the focus elevation to indicate focus on elements that have restricted space making the default focus not aesthetically pleasing (for example, a search input in a dropdown like rich select). Avoid using where possible, as it makes the focus state less obvious. </p\>
|
|
1048
|
-
<p\>
|
|
1049
|
-
<TokenTag\>
|
|
1050
|
-
elevation.focusCompact </TokenTag\>
|
|
1051
|
-
</p\>
|
|
1052
|
-
</I\>
|
|
1053
|
-
</n\>
|
|
1054
|
-
</w\>
|
|
1055
|
-
</I\>
|
|
1056
|
-
|
|
1057
|
-
Copy
|
|
1058
|
-
|
|
1059
|
-
On this page
|
|
1060
|
-
|
|
1061
|
-
## Radius
|
|
1062
|
-
|
|
1063
|
-
[](#radius)Radius
|
|
1064
|
-
=================
|
|
1065
|
-
|
|
1066
|
-
Radius is the curvature of the corners of elements. It is used to soften the appearance of elements and make them more visually appealing.
|
|
1067
|
-
|
|
1068
|
-
Radius tokens
|
|
1069
|
-
| Token Name | Alias | Description | Visual |
|
|
1070
|
-
| --- | --- | --- | --- |
|
|
1071
|
-
| radius.000 | none | No radius |
|
|
1072
|
-
0px
|
|
1073
|
-
|
|
1074
|
-
|
|
|
1075
|
-
| radius.025 | | 25% (0.25x) radius |
|
|
1076
|
-
|
|
1077
|
-
4px
|
|
1078
|
-
|
|
1079
|
-
|
|
|
1080
|
-
| radius.050 | | 50% (0.5x) radius |
|
|
1081
|
-
|
|
1082
|
-
8px
|
|
1083
|
-
|
|
1084
|
-
|
|
|
1085
|
-
| radius.075 | | 75% (0.75x) radius |
|
|
1086
|
-
|
|
1087
|
-
12px
|
|
1088
|
-
|
|
1089
|
-
|
|
|
1090
|
-
| radius.100 | | The base unit for radius. The fallback for all other values will be calculated from this value. |
|
|
1091
|
-
|
|
1092
|
-
16px
|
|
1093
|
-
|
|
1094
|
-
|
|
|
1095
|
-
|
|
1096
|
-
[](#system)System
|
|
1097
|
-
-----------------
|
|
1098
|
-
|
|
1099
|
-
Some components have a default radius to better align to a brand. Although usually they inherit from the base units, for some brands you may need to customise this to further emphasise their identity.
|
|
1100
|
-
|
|
1101
|
-
### Badge
|
|
1102
|
-
|
|
1103
|
-
Applies to badges and tags (that have not been designated to be a circle).
|
|
1104
|
-
|
|
1105
|
-
radius.system.badge
|
|
1106
|
-
|
|
1107
|
-
* * *
|
|
1108
|
-
|
|
1109
|
-
### Button
|
|
1110
|
-
|
|
1111
|
-
Applies to buttons and other interactive elements such as the hover state of links.
|
|
1112
|
-
|
|
1113
|
-
radius.system.button
|
|
1114
|
-
|
|
1115
|
-
* * *
|
|
1116
|
-
|
|
1117
|
-
### Form
|
|
1118
|
-
|
|
1119
|
-
Applies to form inputs and alerts.
|
|
1120
|
-
|
|
1121
|
-
radius.system.form
|
|
1122
|
-
|
|
1123
|
-
* * *
|
|
1124
|
-
|
|
1125
|
-
### Layout
|
|
1126
|
-
|
|
1127
|
-
Applies to panels, modals and slideouts.
|
|
1128
|
-
|
|
1129
|
-
radius.system.layout
|
|
1130
|
-
|
|
1131
|
-
On this page
|
|
1132
|
-
|
|
1133
|
-
* [System](#system)
|
|
1134
|
-
|
|
1135
|
-
## Spacing
|
|
1136
|
-
|
|
1137
|
-
[](#spacing)Spacing
|
|
1138
|
-
===================
|
|
1139
|
-
|
|
1140
|
-
Spacing is the distance between elements. It is used to create visual balance and hierarchy in the UI to ensure a cohesive experience for the user.
|
|
1141
|
-
|
|
1142
|
-
Spacing tokens
|
|
1143
|
-
| Token Name | Alias | Description | Visual |
|
|
1144
|
-
| --- | --- | --- | --- |
|
|
1145
|
-
| spacing.000 | none | No spacing |
|
|
1146
|
-
0px
|
|
1147
|
-
|
|
1148
|
-
|
|
|
1149
|
-
| spacing.050 | | 50% (0.5x) spacing |
|
|
1150
|
-
|
|
1151
|
-
2px
|
|
1152
|
-
|
|
1153
|
-
|
|
|
1154
|
-
| spacing.100 | xs | The base unit for spacing. The fallback for all other values will be calculated from this value. |
|
|
1155
|
-
|
|
1156
|
-
4px
|
|
1157
|
-
|
|
1158
|
-
|
|
|
1159
|
-
| spacing.150 | | 150% (1.5x) spacing |
|
|
1160
|
-
|
|
1161
|
-
6px
|
|
1162
|
-
|
|
1163
|
-
|
|
|
1164
|
-
| spacing.200 | sm | 200% (2x) spacing |
|
|
1165
|
-
|
|
1166
|
-
8px
|
|
1167
|
-
|
|
1168
|
-
|
|
|
1169
|
-
| spacing.250 | | 250% (2.5x) spacing |
|
|
1170
|
-
|
|
1171
|
-
10px
|
|
1172
|
-
|
|
1173
|
-
|
|
|
1174
|
-
| spacing.300 | | 300% (3x) spacing |
|
|
1175
|
-
|
|
1176
|
-
12px
|
|
1177
|
-
|
|
1178
|
-
|
|
|
1179
|
-
| spacing.350 | | 350% (3.5x) spacing |
|
|
1180
|
-
|
|
1181
|
-
14px
|
|
1182
|
-
|
|
1183
|
-
|
|
|
1184
|
-
| spacing.400 | md | 400% (4x) spacing |
|
|
1185
|
-
|
|
1186
|
-
16px
|
|
1187
|
-
|
|
1188
|
-
|
|
|
1189
|
-
| spacing.500 | | 500% (5x) spacing |
|
|
1190
|
-
|
|
1191
|
-
20px
|
|
1192
|
-
|
|
1193
|
-
|
|
|
1194
|
-
| spacing.600 | lg | 600% (6x) spacing |
|
|
1195
|
-
|
|
1196
|
-
24px
|
|
1197
|
-
|
|
1198
|
-
|
|
|
1199
|
-
| spacing.700 | | 700% (7x) spacing |
|
|
1200
|
-
|
|
1201
|
-
28px
|
|
1202
|
-
|
|
1203
|
-
|
|
|
1204
|
-
| spacing.800 | | 800% (8x) spacing |
|
|
1205
|
-
|
|
1206
|
-
32px
|
|
1207
|
-
|
|
1208
|
-
|
|
|
1209
|
-
| spacing.900 | | 900% (9x) spacing |
|
|
1210
|
-
|
|
1211
|
-
36px
|
|
1212
|
-
|
|
1213
|
-
|
|
|
1214
|
-
| spacing.1000 | | 1000% (10x) spacing |
|
|
1215
|
-
|
|
1216
|
-
40px
|
|
1217
|
-
|
|
1218
|
-
|
|
|
1219
|
-
| spacing.1200 | xl | 1200% (12x) spacing |
|
|
1220
|
-
|
|
1221
|
-
48px
|
|
1222
|
-
|
|
1223
|
-
|
|
|
1224
|
-
|
|
1225
|
-
On this page
|
|
1226
|
-
|
|
1227
|
-
## Typography
|
|
1228
|
-
|
|
1229
|
-
[](#typography)Typography
|
|
1230
|
-
=========================
|
|
1231
|
-
|
|
1232
|
-
Typography is controlled by the `IressText` component, or the `textStyle` prop on other components. They implement consistent line heights and font weights.
|
|
1233
|
-
|
|
1234
|
-
[](#body)Body
|
|
1235
|
-
-------------
|
|
1236
|
-
|
|
1237
|
-
This is the default text variant, and is designed to be clear and easy to read. This high level token also styles other tags beneath it such as `ul`, `ol`, `em` and `strong`, so that they inherit the same styling as the body text.
|
|
1238
|
-
|
|
1239
|
-
Nobis odit nesciunt in, **harum provident** deleniti molestiae dolorum aliquid tempora optio accusamus dolore _porro voluptatibus_. Dolorum, repellat expedita.
|
|
1240
|
-
|
|
1241
|
-
* Voluptatem assumenda soluta!
|
|
1242
|
-
* Illum et atque alias possimus maiores rem in corrupti consectetur!
|
|
1243
|
-
* Dolorum, repellat expedita!
|
|
1244
|
-
|
|
1245
|
-
Hide code
|
|
1246
|
-
|
|
1247
|
-
\[data-radix-scroll-area-viewport\] { scrollbar-width: none; -ms-overflow-style: none; -webkit-overflow-scrolling: touch; } \[data-radix-scroll-area-viewport\]::-webkit-scrollbar { display: none; } :where(\[data-radix-scroll-area-viewport\]) { display: flex; flex-direction: column; align-items: stretch; } :where(\[data-radix-scroll-area-content\]) { flex-grow: 1; }
|
|
1248
|
-
|
|
1249
|
-
<IressText\>
|
|
1250
|
-
<p\>
|
|
1251
|
-
Nobis odit nesciunt in,{' '}
|
|
1252
|
-
<strong\>
|
|
1253
|
-
harum provident </strong\>
|
|
1254
|
-
{' '}deleniti molestiae dolorum aliquid tempora optio accusamus dolore{' '}
|
|
1255
|
-
<em\>
|
|
1256
|
-
porro voluptatibus </em\>
|
|
1257
|
-
. Dolorum, repellat expedita. </p\>
|
|
1258
|
-
<ul\>
|
|
1259
|
-
<li\>
|
|
1260
|
-
Voluptatem assumenda soluta! </li\>
|
|
1261
|
-
<li\>
|
|
1262
|
-
Illum et atque alias possimus maiores rem in corrupti consectetur! </li\>
|
|
1263
|
-
<li\>
|
|
1264
|
-
Dolorum, repellat expedita! </li\>
|
|
1265
|
-
</ul\>
|
|
1266
|
-
</IressText\>
|
|
1267
|
-
|
|
1268
|
-
Copy
|
|
1269
|
-
|
|
1270
|
-
### [](#sizes)Sizes
|
|
1271
|
-
|
|
1272
|
-
Body text can be set in a variety of sizes, from small to large. The size of the text should be chosen based on the context and importance of the content.
|
|
1273
|
-
|
|
1274
|
-
typography.body.sm Used for small components such as badges and field hints, as well as compact variations of tables and lists.
|
|
1275
|
-
|
|
1276
|
-
typography.body.md The most commonly used body text size, used for most text content in the product.
|
|
1277
|
-
|
|
1278
|
-
typography.body.lg Used for tag lines, subtitles, and other large text content in the product.
|
|
1279
|
-
|
|
1280
|
-
Hide code
|
|
1281
|
-
|
|
1282
|
-
\[data-radix-scroll-area-viewport\] { scrollbar-width: none; -ms-overflow-style: none; -webkit-overflow-scrolling: touch; } \[data-radix-scroll-area-viewport\]::-webkit-scrollbar { display: none; } :where(\[data-radix-scroll-area-viewport\]) { display: flex; flex-direction: column; align-items: stretch; } :where(\[data-radix-scroll-area-content\]) { flex-grow: 1; }
|
|
1283
|
-
|
|
1284
|
-
<IressStack gap\="md"\>
|
|
1285
|
-
<IressText textStyle\="typography.body.sm"\>
|
|
1286
|
-
<TokenTag\>
|
|
1287
|
-
typography.body.sm </TokenTag\>
|
|
1288
|
-
{' '}Used for small components such as badges and field hints, as well as compact variations of tables and lists.
|
|
1289
|
-
</IressText\>
|
|
1290
|
-
<IressText textStyle\="typography.body.md"\>
|
|
1291
|
-
<TokenTag\>
|
|
1292
|
-
typography.body.md </TokenTag\>
|
|
1293
|
-
{' '}The most commonly used body text size, used for most text content in the product.
|
|
1294
|
-
</IressText\>
|
|
1295
|
-
<IressText textStyle\="typography.body.lg"\>
|
|
1296
|
-
<TokenTag\>
|
|
1297
|
-
typography.body.lg </TokenTag\>
|
|
1298
|
-
{' '}Used for tag lines, subtitles, and other large text content in the product.
|
|
1299
|
-
</IressText\>
|
|
1300
|
-
</IressStack\>
|
|
1301
|
-
|
|
1302
|
-
Copy
|
|
1303
|
-
|
|
1304
|
-
### [](#variants)Variants
|
|
1305
|
-
|
|
1306
|
-
Body text can be combined with bold (strong) and italic (emphasis) text to create emphasis or hierarchy within the content.
|
|
1307
|
-
|
|
1308
|
-
* Bold text should be used to **draw attention** to part of a sentence, or to provide a visual label for readonly text.
|
|
1309
|
-
* Italic text should be used to add _emphasis_ to content, or to add stress to part of a sentence.
|
|
1310
|
-
|
|
1311
|
-
#### Strong
|
|
1312
|
-
|
|
1313
|
-
Strong variant is used to draw attention to certain text, making a large block of text easier to scan. This token is used to style the <strong /> tag in a body of text.
|
|
1314
|
-
|
|
1315
|
-
typography.body.sm.strongStrong text is used to highlight important information in a paragraph of text.
|
|
1316
|
-
|
|
1317
|
-
typography.body.md.strongStrong text is used to highlight important information in a paragraph of text.
|
|
1318
|
-
|
|
1319
|
-
typography.body.lg.strongStrong text is used to highlight important information in a paragraph of text.
|
|
1320
|
-
|
|
1321
|
-
* * *
|
|
1322
|
-
|
|
1323
|
-
#### Emphasis
|
|
1324
|
-
|
|
1325
|
-
Emphasis (em) variant is used to emphasise certain text to indicate they make a reference to a standard/legal term. This token is used to style the <em /> tag in a body of text.
|
|
1326
|
-
|
|
1327
|
-
typography.body.sm.em Emphasised text is used to highlight a term or definition in a paragraph of text. It is used sparingly, usually for legal purposes.
|
|
1328
|
-
|
|
1329
|
-
typography.body.md.em Emphasised text is used to highlight a term or definition in a paragraph of text. It is used sparingly, usually for legal purposes.
|
|
1330
|
-
|
|
1331
|
-
typography.body.lg.em Emphasised text is used to highlight a term or definition in a paragraph of text. It is used sparingly, usually for legal purposes.
|
|
1332
|
-
|
|
1333
|
-
Hide code
|
|
1334
|
-
|
|
1335
|
-
\[data-radix-scroll-area-viewport\] { scrollbar-width: none; -ms-overflow-style: none; -webkit-overflow-scrolling: touch; } \[data-radix-scroll-area-viewport\]::-webkit-scrollbar { display: none; } :where(\[data-radix-scroll-area-viewport\]) { display: flex; flex-direction: column; align-items: stretch; } :where(\[data-radix-scroll-area-content\]) { flex-grow: 1; }
|
|
1336
|
-
|
|
1337
|
-
<IressStack gap\="md"\>
|
|
1338
|
-
<IressText\>
|
|
1339
|
-
<h4\>
|
|
1340
|
-
Strong </h4\>
|
|
1341
|
-
<p\>
|
|
1342
|
-
{\`Strong variant is used to draw attention to certain text, making a large block of text easier to scan. This token is used to style the <strong /> tag in a body of text.\`}
|
|
1343
|
-
</p\>
|
|
1344
|
-
</IressText\>
|
|
1345
|
-
<IressText textStyle\="typography.body.sm.strong"\>
|
|
1346
|
-
<TokenTag\>
|
|
1347
|
-
typography.body.sm.strong </TokenTag\>
|
|
1348
|
-
Strong text is used to highlight important information in a paragraph of text. </IressText\>
|
|
1349
|
-
<IressText textStyle\="typography.body.md.strong"\>
|
|
1350
|
-
<TokenTag\>
|
|
1351
|
-
typography.body.md.strong </TokenTag\>
|
|
1352
|
-
Strong text is used to highlight important information in a paragraph of text. </IressText\>
|
|
1353
|
-
<IressText textStyle\="typography.body.lg.strong"\>
|
|
1354
|
-
<TokenTag\>
|
|
1355
|
-
typography.body.lg.strong </TokenTag\>
|
|
1356
|
-
Strong text is used to highlight important information in a paragraph of text. </IressText\>
|
|
1357
|
-
<IressDivider />
|
|
1358
|
-
<IressText\>
|
|
1359
|
-
<h4\>
|
|
1360
|
-
Emphasis </h4\>
|
|
1361
|
-
<p\>
|
|
1362
|
-
{\`Emphasis (em) variant is used to emphasise certain text to indicate they make a reference to a standard/legal term. This token is used to style the <em /> tag in a body of text.\`}
|
|
1363
|
-
</p\>
|
|
1364
|
-
</IressText\>
|
|
1365
|
-
<IressText textStyle\="typography.body.sm.em"\>
|
|
1366
|
-
<TokenTag\>
|
|
1367
|
-
typography.body.sm.em </TokenTag\>
|
|
1368
|
-
{' '}Emphasised text is used to highlight a term or definition in a paragraph of text. It is used sparingly, usually for legal purposes.
|
|
1369
|
-
</IressText\>
|
|
1370
|
-
<IressText textStyle\="typography.body.md.em"\>
|
|
1371
|
-
<TokenTag\>
|
|
1372
|
-
typography.body.md.em </TokenTag\>
|
|
1373
|
-
{' '}Emphasised text is used to highlight a term or definition in a paragraph of text. It is used sparingly, usually for legal purposes.
|
|
1374
|
-
</IressText\>
|
|
1375
|
-
<IressText textStyle\="typography.body.lg.em"\>
|
|
1376
|
-
<TokenTag\>
|
|
1377
|
-
typography.body.lg.em </TokenTag\>
|
|
1378
|
-
{' '}Emphasised text is used to highlight a term or definition in a paragraph of text. It is used sparingly, usually for legal purposes.
|
|
1379
|
-
</IressText\>
|
|
1380
|
-
</IressStack\>
|
|
1381
|
-
|
|
1382
|
-
Copy
|
|
1383
|
-
|
|
1384
|
-
[](#headings)Headings
|
|
1385
|
-
---------------------
|
|
1386
|
-
|
|
1387
|
-
Headings form the structure of a web page. They're designed to stand out visually, drawing a user's eye to distinct sections of the document. They can be set in a variety of sizes based on systematic font sizing with native heading scales (H1-H6).
|
|
1388
|
-
|
|
1389
|
-
Heading 1 `<h1 />`
|
|
1390
|
-
==================
|
|
1391
|
-
|
|
1392
|
-
typography.heading.1
|
|
1393
|
-
|
|
1394
|
-
Use for the main page title to establish a clear hierarchy. There is only one H1 per screen, emphasising the primary purpose or context of the page.
|
|
1395
|
-
|
|
1396
|
-
Heading 2 `<h2 />`
|
|
1397
|
-
------------------
|
|
1398
|
-
|
|
1399
|
-
typography.heading.2
|
|
1400
|
-
|
|
1401
|
-
Use for \*\*primary section headings\*\* within a page to organise content and guide the user through key areas. Also suitable for large components—such as modals—where space allows and where it pairs well with: body.md or body.lg.
|
|
1402
|
-
|
|
1403
|
-
### Heading 3 `<h3 />`
|
|
1404
|
-
|
|
1405
|
-
typography.heading.3
|
|
1406
|
-
|
|
1407
|
-
Use for: sub-sections under H2s to further structure content and maintain a clear visual hierarchy. Ideal for breaking down complex sections into manageable parts.
|
|
1408
|
-
|
|
1409
|
-
#### Heading 4 `<h4 />`
|
|
1410
|
-
|
|
1411
|
-
typography.heading.4
|
|
1412
|
-
|
|
1413
|
-
Use for: supporting headings within content blocks or small components where space is limited—such as table headers, cards, or side panels. Provides structure without overwhelming the layout.
|
|
1414
|
-
|
|
1415
|
-
##### Heading 5 `<h5 />`
|
|
1416
|
-
|
|
1417
|
-
typography.heading.5
|
|
1418
|
-
|
|
1419
|
-
Use for: minor labels or titles in compact UI elements, such as cards, sidebars, or inline labels. Best used to emphasise supplementary information without drawing too much attention. Works well with body.sm and is ideal for subtle content like fine print. Use sparingly to preserve typographic hierarchy.
|
|
1420
|
-
|
|
1421
|
-
An H2 styled as an H3.
|
|
1422
|
-
----------------------
|
|
1423
|
-
|
|
1424
|
-
Hide code
|
|
1425
|
-
|
|
1426
|
-
\[data-radix-scroll-area-viewport\] { scrollbar-width: none; -ms-overflow-style: none; -webkit-overflow-scrolling: touch; } \[data-radix-scroll-area-viewport\]::-webkit-scrollbar { display: none; } :where(\[data-radix-scroll-area-viewport\]) { display: flex; flex-direction: column; align-items: stretch; } :where(\[data-radix-scroll-area-content\]) { flex-grow: 1; }
|
|
1427
|
-
|
|
1428
|
-
<IressStack gap\="lg"\>
|
|
1429
|
-
<IressText\>
|
|
1430
|
-
<h1\>
|
|
1431
|
-
Heading 1{' '}
|
|
1432
|
-
<code\>
|
|
1433
|
-
{\`<h1 />\`}
|
|
1434
|
-
</code\>
|
|
1435
|
-
</h1\>
|
|
1436
|
-
<IressText
|
|
1437
|
-
mb\="sm"
|
|
1438
|
-
mt\="\-sm"
|
|
1439
|
-
\>
|
|
1440
|
-
<TokenTag\>
|
|
1441
|
-
typography.heading.1 </TokenTag\>
|
|
1442
|
-
</IressText\>
|
|
1443
|
-
<p\>
|
|
1444
|
-
Use for the main page title to establish a clear hierarchy. There is only one H1 per screen, emphasising the primary purpose or context of the page. </p\>
|
|
1445
|
-
</IressText\>
|
|
1446
|
-
<IressText\>
|
|
1447
|
-
<h2\>
|
|
1448
|
-
Heading 2{' '}
|
|
1449
|
-
<code\>
|
|
1450
|
-
{\`<h2 />\`}
|
|
1451
|
-
</code\>
|
|
1452
|
-
</h2\>
|
|
1453
|
-
<IressText
|
|
1454
|
-
mb\="sm"
|
|
1455
|
-
mt\="\-xs"
|
|
1456
|
-
\>
|
|
1457
|
-
<TokenTag\>
|
|
1458
|
-
typography.heading.2 </TokenTag\>
|
|
1459
|
-
</IressText\>
|
|
1460
|
-
<p\>
|
|
1461
|
-
Use for \*\*primary section headings\*\* within a page to organise content and guide the user through key areas. Also suitable for large components—such as modals—where space allows and where it pairs well with: body.md or body.lg. </p\>
|
|
1462
|
-
</IressText\>
|
|
1463
|
-
<IressText\>
|
|
1464
|
-
<h3\>
|
|
1465
|
-
Heading 3{' '}
|
|
1466
|
-
<code\>
|
|
1467
|
-
{\`<h3 />\`}
|
|
1468
|
-
</code\>
|
|
1469
|
-
</h3\>
|
|
1470
|
-
<IressText
|
|
1471
|
-
mb\="sm"
|
|
1472
|
-
mt\="\-xs"
|
|
1473
|
-
\>
|
|
1474
|
-
<TokenTag\>
|
|
1475
|
-
typography.heading.3 </TokenTag\>
|
|
1476
|
-
</IressText\>
|
|
1477
|
-
<p\>
|
|
1478
|
-
Use for: sub-sections under H2s to further structure content and maintain a clear visual hierarchy. Ideal for breaking down complex sections into manageable parts. </p\>
|
|
1479
|
-
</IressText\>
|
|
1480
|
-
<IressText\>
|
|
1481
|
-
<h4\>
|
|
1482
|
-
Heading 4{' '}
|
|
1483
|
-
<code\>
|
|
1484
|
-
{\`<h4 />\`}
|
|
1485
|
-
</code\>
|
|
1486
|
-
</h4\>
|
|
1487
|
-
<IressText
|
|
1488
|
-
mb\="sm"
|
|
1489
|
-
mt\="\-xs"
|
|
1490
|
-
\>
|
|
1491
|
-
<TokenTag\>
|
|
1492
|
-
typography.heading.4 </TokenTag\>
|
|
1493
|
-
</IressText\>
|
|
1494
|
-
<p\>
|
|
1495
|
-
Use for: supporting headings within content blocks or small components where space is limited—such as table headers, cards, or side panels. Provides structure without overwhelming the layout. </p\>
|
|
1496
|
-
</IressText\>
|
|
1497
|
-
<IressText\>
|
|
1498
|
-
<h5\>
|
|
1499
|
-
Heading 5{' '}
|
|
1500
|
-
<code\>
|
|
1501
|
-
{\`<h5 />\`}
|
|
1502
|
-
</code\>
|
|
1503
|
-
</h5\>
|
|
1504
|
-
<IressText
|
|
1505
|
-
mb\="sm"
|
|
1506
|
-
mt\="\-xs"
|
|
1507
|
-
\>
|
|
1508
|
-
<TokenTag\>
|
|
1509
|
-
typography.heading.5 </TokenTag\>
|
|
1510
|
-
</IressText\>
|
|
1511
|
-
<p\>
|
|
1512
|
-
Use for: minor labels or titles in compact UI elements, such as cards, sidebars, or inline labels. Best used to emphasise supplementary information without drawing too much attention. Works well with body.sm and is ideal for subtle content like fine print. Use sparingly to preserve typographic hierarchy. </p\>
|
|
1513
|
-
</IressText\>
|
|
1514
|
-
<IressText
|
|
1515
|
-
element\="h2"
|
|
1516
|
-
textStyle\="typography.heading.3"
|
|
1517
|
-
\>
|
|
1518
|
-
An H2 styled as an H3. </IressText\>
|
|
1519
|
-
</IressStack\>
|
|
1520
|
-
|
|
1521
|
-
Copy
|
|
1522
|
-
|
|
1523
|
-
[](#code)Code
|
|
1524
|
-
-------------
|
|
1525
|
-
|
|
1526
|
-
The code variant is used to display code snippets or other monospaced text. It is designed to be clear and easy to read, with a fixed-width font that makes it easy to distinguish between characters.
|
|
1527
|
-
|
|
1528
|
-
typography.code Used to display code snippets in the product, such as in the API documentation.
|
|
1529
|
-
|
|
1530
|
-
Hide code
|
|
1531
|
-
|
|
1532
|
-
\[data-radix-scroll-area-viewport\] { scrollbar-width: none; -ms-overflow-style: none; -webkit-overflow-scrolling: touch; } \[data-radix-scroll-area-viewport\]::-webkit-scrollbar { display: none; } :where(\[data-radix-scroll-area-viewport\]) { display: flex; flex-direction: column; align-items: stretch; } :where(\[data-radix-scroll-area-content\]) { flex-grow: 1; }
|
|
1533
|
-
|
|
1534
|
-
<IressStack gap\="md"\>
|
|
1535
|
-
<IressText textStyle\="typography.code"\>
|
|
1536
|
-
<TokenTag\>
|
|
1537
|
-
typography.code </TokenTag\>
|
|
1538
|
-
{' '}Used to display code snippets in the product, such as in the API documentation.
|
|
1539
|
-
</IressText\>
|
|
1540
|
-
</IressStack\>
|
|
1541
|
-
|
|
1542
|
-
Copy
|
|
1543
|
-
|
|
1544
|
-
On this page
|
|
1545
|
-
|
|
1546
|
-
* [Body](#body)
|
|
1547
|
-
* [Sizes](#sizes)
|
|
1548
|
-
* [Variants](#variants)
|
|
1549
|
-
* [Headings](#headings)
|
|
1550
|
-
* [Code](#code)
|
|
1551
|
-
|
|
1552
|
-
## Responsive (breakpoints)
|
|
1553
|
-
|
|
1554
|
-
[](#responsive-design)Responsive Design
|
|
1555
|
-
=======================================
|
|
1556
|
-
|
|
1557
|
-
The Iress Design System (IDS) is built with responsive design principles in mind. This means that our components are designed to adapt to different screen sizes and orientations, ensuring a consistent user experience across devices.
|
|
1558
|
-
|
|
1559
|
-
[](#breakpoints)Breakpoints
|
|
1560
|
-
---------------------------
|
|
1561
|
-
|
|
1562
|
-
* Implement mobile-first responsive design
|
|
1563
|
-
* Use consistent breakpoint values across all components
|
|
1564
|
-
* Provide appropriate component variants for different screen sizes
|
|
1565
|
-
* Consider content priority and progressive disclosure on smaller screens
|
|
1566
|
-
|
|
1567
|
-
### Breakpoints supported by IDS
|
|
1568
|
-
|
|
1569
|
-
| Name | Screen Width | Media Query |
|
|
1570
|
-
| --- | --- | --- |
|
|
1571
|
-
| xs | 0 - 575px | (min-width: 0) and (max-width: 575px) |
|
|
1572
|
-
| sm | 576px - 767px | (min-width: 576px) and (max-width: 767px) |
|
|
1573
|
-
| md | 768px - 1023px | (min-width: 768px) and (max-width: 1023px) |
|
|
1574
|
-
| lg | 1024px - 1199px | (min-width: 1024px) and (max-width: 1199px) |
|
|
1575
|
-
| xl | 1200px - 1499px | (min-width: 1200px) and (max-width: 1499px) |
|
|
1576
|
-
| xxl | 1500px and above | (min-width: 1500px) |
|
|
1577
|
-
|
|
1578
|
-
[](#adaptive-behaviour)Adaptive Behaviour
|
|
1579
|
-
-----------------------------------------
|
|
1580
|
-
|
|
1581
|
-
* Reduce option counts on mobile devices where appropriate
|
|
1582
|
-
* Implement responsive navigation patterns
|
|
1583
|
-
* Adjust spacing and sizing for different contexts
|
|
1584
|
-
* Maintain usability across all supported devices
|
|
1585
|
-
|
|
1586
|
-
* * *
|
|
1587
|
-
|
|
1588
|
-
[](#for-developers)For developers
|
|
1589
|
-
---------------------------------
|
|
1590
|
-
|
|
1591
|
-
If you are using the IDS components, the breakpoints have already been mapped out to their respective props. You can use props such as `gap` to change the visual properties of the component at certain breakpoints.
|
|
1592
|
-
|
|
1593
|
-
\[data-radix-scroll-area-viewport\] {
|
|
1594
|
-
scrollbar-width: none;
|
|
1595
|
-
-ms-overflow-style: none;
|
|
1596
|
-
-webkit-overflow-scrolling: touch;
|
|
1597
|
-
}
|
|
1598
|
-
\[data-radix-scroll-area-viewport\]::-webkit-scrollbar {
|
|
1599
|
-
display: none;
|
|
1600
|
-
}
|
|
1601
|
-
:where(\[data-radix-scroll-area-viewport\]) {
|
|
1602
|
-
display: flex;
|
|
1603
|
-
flex-direction: column;
|
|
1604
|
-
align-items: stretch;
|
|
1605
|
-
}
|
|
1606
|
-
:where(\[data-radix-scroll-area-content\]) {
|
|
1607
|
-
flex-grow: 1;
|
|
1608
|
-
}
|
|
1609
|
-
|
|
1610
|
-
import { IressStack } from '@iress-oss/ids-components';
|
|
1611
|
-
<IressStack gap\={{ xs: 'spacing.100', md: 'spacing.200' }} />;
|
|
1612
|
-
|
|
1613
|
-
Copy
|
|
1614
|
-
|
|
1615
|
-
### [](#hooks)Hooks
|
|
1616
|
-
|
|
1617
|
-
#### [](#usebreakpoint)`useBreakpoint`
|
|
1618
|
-
|
|
1619
|
-
We also provide a `useBreakpoint` hook that allows you to access the current breakpoint in your components. This can be useful for conditionally rendering components based on the current screen size.
|
|
1620
|
-
|
|
1621
|
-
**Note:** It is best to use media queries for responsive styling. Most props that require responsive values already support breakpoints which map to CSS values. Only use the `useBreakpoint` hook when there is no other way to achieve the desired responsive behavior.
|
|
1622
|
-
|
|
1623
|
-
\[data-radix-scroll-area-viewport\] {
|
|
1624
|
-
scrollbar-width: none;
|
|
1625
|
-
-ms-overflow-style: none;
|
|
1626
|
-
-webkit-overflow-scrolling: touch;
|
|
1627
|
-
}
|
|
1628
|
-
\[data-radix-scroll-area-viewport\]::-webkit-scrollbar {
|
|
1629
|
-
display: none;
|
|
1630
|
-
}
|
|
1631
|
-
:where(\[data-radix-scroll-area-viewport\]) {
|
|
1632
|
-
display: flex;
|
|
1633
|
-
flex-direction: column;
|
|
1634
|
-
align-items: stretch;
|
|
1635
|
-
}
|
|
1636
|
-
:where(\[data-radix-scroll-area-content\]) {
|
|
1637
|
-
flex-grow: 1;
|
|
1638
|
-
}
|
|
1639
|
-
|
|
1640
|
-
import { useBreakpoint } from '@iress-oss/ids-components';
|
|
1641
|
-
const MyComponent \= () \=> {
|
|
1642
|
-
const { breakpoint } \= useBreakpoint();
|
|
1643
|
-
return (
|
|
1644
|
-
<div\>
|
|
1645
|
-
{breakpoint \=== 'xs' && <p\>This is extra small screen</p\>}
|
|
1646
|
-
{breakpoint \=== 'md' && <p\>This is medium screen</p\>}
|
|
1647
|
-
</div\>
|
|
1648
|
-
);
|
|
1649
|
-
};
|
|
1650
|
-
|
|
1651
|
-
Copy
|
|
1652
|
-
|
|
1653
|
-
#### [](#useresponsiveprops)`useResponsiveProps`
|
|
1654
|
-
|
|
1655
|
-
Another hook is `useResponsiveProps`, which allows you to define responsive properties that change based on the current breakpoint. This is particularly useful for completely changing components at various screen sizes.
|
|
1656
|
-
|
|
1657
|
-
**Note:** It is best to use media queries for responsive styling. Most props that require responsive values already support breakpoints which map to CSS values. Only use the `useResponsiveProps` hook when there is no other way to achieve the desired responsive behavior.
|
|
1658
|
-
|
|
1659
|
-
`useResponsiveProps`
|
|
1660
|
-
--------------------
|
|
1661
|
-
|
|
1662
|
-
This example demonstrates a use case for `useResponsiveProps`, for changing the columns on a table based on the breakpoint.
|
|
1663
|
-
|
|
1664
|
-
Resize the screen to see the columns change
|
|
1665
|
-
|
|
1666
|
-
| Name | Age |
|
|
1667
|
-
| --- | --- |
|
|
1668
|
-
| Luke Skywalker | 19 |
|
|
1669
|
-
| Princess Leia | 19 |
|
|
1670
|
-
| Han Solo | 32 |
|
|
1671
|
-
|
|
1672
|
-
Hide code
|
|
1673
|
-
|
|
1674
|
-
\[data-radix-scroll-area-viewport\] { scrollbar-width: none; -ms-overflow-style: none; -webkit-overflow-scrolling: touch; } \[data-radix-scroll-area-viewport\]::-webkit-scrollbar { display: none; } :where(\[data-radix-scroll-area-viewport\]) { display: flex; flex-direction: column; align-items: stretch; } :where(\[data-radix-scroll-area-content\]) { flex-grow: 1; }
|
|
1675
|
-
|
|
1676
|
-
export const ResponsiveTableColumns \= () \=> {
|
|
1677
|
-
const { value } \= useResponsiveProps({
|
|
1678
|
-
base: \[{ key: 'name', label: 'Name' }\],
|
|
1679
|
-
lg: \[
|
|
1680
|
-
{ key: 'name', label: 'Name' },
|
|
1681
|
-
{ key: 'age', label: 'Age' },
|
|
1682
|
-
\],
|
|
1683
|
-
});
|
|
1684
|
-
return (
|
|
1685
|
-
<IressTable
|
|
1686
|
-
caption\={
|
|
1687
|
-
<IressText textAlign\="left"\>
|
|
1688
|
-
<h2\>
|
|
1689
|
-
<code\>useResponsiveProps</code\>
|
|
1690
|
-
</h2\>
|
|
1691
|
-
<p\>
|
|
1692
|
-
This example demonstrates a use case for{' '}
|
|
1693
|
-
<code\>useResponsiveProps</code\>, for changing the columns on a table
|
|
1694
|
-
based on the breakpoint. </p\>
|
|
1695
|
-
<p\>Resize the screen to see the columns change</p\>
|
|
1696
|
-
</IressText\>
|
|
1697
|
-
}
|
|
1698
|
-
columns\={value}
|
|
1699
|
-
rows\={\[
|
|
1700
|
-
{ name: 'Luke Skywalker', age: 19 },
|
|
1701
|
-
{ name: 'Princess Leia', age: 19 },
|
|
1702
|
-
{ name: 'Han Solo', age: 32 },
|
|
1703
|
-
\]}
|
|
1704
|
-
/>
|
|
1705
|
-
);
|
|
1706
|
-
};
|
|
1707
|
-
|
|
1708
|
-
Copy
|
|
1709
|
-
|
|
1710
|
-
### [](#constant)Constant
|
|
1711
|
-
|
|
1712
|
-
You can also use the breakpoints directly in your CSS or styled components. The breakpoints are defined in the `@iress-oss/ids-components` package.
|
|
1713
|
-
|
|
1714
|
-
\[data-radix-scroll-area-viewport\] {
|
|
1715
|
-
scrollbar-width: none;
|
|
1716
|
-
-ms-overflow-style: none;
|
|
1717
|
-
-webkit-overflow-scrolling: touch;
|
|
1718
|
-
}
|
|
1719
|
-
\[data-radix-scroll-area-viewport\]::-webkit-scrollbar {
|
|
1720
|
-
display: none;
|
|
1721
|
-
}
|
|
1722
|
-
:where(\[data-radix-scroll-area-viewport\]) {
|
|
1723
|
-
display: flex;
|
|
1724
|
-
flex-direction: column;
|
|
1725
|
-
align-items: stretch;
|
|
1726
|
-
}
|
|
1727
|
-
:where(\[data-radix-scroll-area-content\]) {
|
|
1728
|
-
flex-grow: 1;
|
|
1729
|
-
}
|
|
1730
|
-
|
|
1731
|
-
import { BREAKPOINT\_DETAILS } from '@iress-oss/ids-components';
|
|
1732
|
-
const css \= \`
|
|
1733
|
-
@media (${BREAKPOINT\_DETAILS.md.mediaQuery}}) {
|
|
1734
|
-
.my-class { padding: 20px; } }
|
|
1735
|
-
\`;
|
|
1736
|
-
<style\>{css}</style\>;
|
|
1737
|
-
|
|
1738
|
-
Copy
|
|
1739
|
-
|
|
1740
|
-
On this page
|
|
1741
|
-
|
|
1742
|
-
* [Breakpoints](#breakpoints)
|
|
1743
|
-
* [Adaptive Behaviour](#adaptive-behaviour)
|
|
1744
|
-
* [For developers](#for-developers)
|
|
1745
|
-
* [Hooks](#hooks)
|
|
1746
|
-
* [Constant](#constant)
|
|
1747
|
-
|
|
1748
|
-
## Consistency
|
|
1749
|
-
|
|
1750
|
-
[](#using-components-consistently)Using components consistently
|
|
1751
|
-
===============================================================
|
|
1752
|
-
|
|
1753
|
-
[](#buttons)Buttons
|
|
1754
|
-
-------------------
|
|
1755
|
-
|
|
1756
|
-
* **Primary**: Limit to one per view for main call-to-action
|
|
1757
|
-
* **Secondary**: Use for secondary actions
|
|
1758
|
-
* **Tertiary**: Extra affordance between secondary actions
|
|
1759
|
-
* **Link**: Button styled as link (avoid with icon-only content)
|
|
1760
|
-
* **Danger**: Destructive actions requiring extra confirmation
|
|
1761
|
-
* **Positive/Negative**: Financial transactions (buy/sell)
|
|
1762
|
-
|
|
1763
|
-
[](#forms)Forms
|
|
1764
|
-
---------------
|
|
1765
|
-
|
|
1766
|
-
* Always use `IressField` wrapper for proper label, hint, and error placement
|
|
1767
|
-
* Provide clear validation feedback with appropriate error messages
|
|
1768
|
-
* Use consistent input sizing based on expected content length
|
|
1769
|
-
* Implement proper form state management and accessibility
|
|
1770
|
-
|
|
1771
|
-
[](#navigation)Navigation
|
|
1772
|
-
-------------------------
|
|
1773
|
-
|
|
1774
|
-
* Use semantic HTML5 navigation elements
|
|
1775
|
-
* Provide skip links for keyboard users
|
|
1776
|
-
* Implement proper ARIA labelling for navigation sections
|
|
1777
|
-
* Ensure consistent navigation patterns across applications
|
|
1778
|
-
|
|
1779
|
-
[](#data-display)Data Display
|
|
1780
|
-
-----------------------------
|
|
1781
|
-
|
|
1782
|
-
* Use semantic table structures with proper headers
|
|
1783
|
-
* Provide clear visual hierarchy in data presentations
|
|
1784
|
-
* Implement consistent sorting and filtering patterns
|
|
1785
|
-
* Use appropriate loading states for data-heavy components
|
|
1786
|
-
|
|
1787
|
-
[](#modals-and-overlays)Modals and Overlays
|
|
1788
|
-
-------------------------------------------
|
|
1789
|
-
|
|
1790
|
-
* Reserve modals for critical tasks requiring full attention
|
|
1791
|
-
* Provide multiple dismissal methods (backdrop, escape key, close button)
|
|
1792
|
-
* Implement proper focus management and restoration
|
|
1793
|
-
* Use slideouts for supplementary tasks where underlying content needs visibility
|
|
1794
|
-
|
|
1795
|
-
On this page
|
|
1796
|
-
|
|
1797
|
-
* [Buttons](#buttons)
|
|
1798
|
-
* [Forms](#forms)
|
|
1799
|
-
* [Navigation](#navigation)
|
|
1800
|
-
* [Data Display](#data-display)
|
|
1801
|
-
* [Modals and Overlays](#modals-and-overlays)
|
|
1802
|
-
|
|
1803
|
-
## Grid
|
|
1804
|
-
|
|
1805
|
-
[](#grid)Grid
|
|
1806
|
-
=============
|
|
1807
|
-
|
|
1808
|
-
The grid is used to evenly place other components across the page to ensure a consistent hierarchy and structure.
|
|
1809
|
-
|
|
1810
|
-
[](#reference)Reference
|
|
1811
|
-
-----------------------
|
|
1812
|
-
|
|
1813
|
-
Grid size: 12
|
|
1814
|
-
|
|
1815
|
-
1
|
|
1816
|
-
|
|
1817
|
-
2
|
|
1818
|
-
|
|
1819
|
-
3
|
|
1820
|
-
|
|
1821
|
-
4
|
|
1822
|
-
|
|
1823
|
-
5
|
|
1824
|
-
|
|
1825
|
-
6
|
|
1826
|
-
|
|
1827
|
-
7
|
|
1828
|
-
|
|
1829
|
-
8
|
|
1830
|
-
|
|
1831
|
-
9
|
|
1832
|
-
|
|
1833
|
-
10
|
|
1834
|
-
|
|
1835
|
-
11
|
|
1836
|
-
|
|
1837
|
-
12
|
|
1838
|
-
|
|
1839
|
-
* * *
|
|
1840
|
-
|
|
1841
|
-
[](#for-developers)For developers
|
|
1842
|
-
---------------------------------
|
|
1843
|
-
|
|
1844
|
-
If you are using the IDS components, you can use `IressContainer`, `IressRow`, and `IressCol` to create a grid layout. These components are designed to work together to create a responsive grid system.
|
|
1845
|
-
|
|
1846
|
-
\[data-radix-scroll-area-viewport\] {
|
|
1847
|
-
scrollbar-width: none;
|
|
1848
|
-
-ms-overflow-style: none;
|
|
1849
|
-
-webkit-overflow-scrolling: touch;
|
|
1850
|
-
}
|
|
1851
|
-
\[data-radix-scroll-area-viewport\]::-webkit-scrollbar {
|
|
1852
|
-
display: none;
|
|
1853
|
-
}
|
|
1854
|
-
:where(\[data-radix-scroll-area-viewport\]) {
|
|
1855
|
-
display: flex;
|
|
1856
|
-
flex-direction: column;
|
|
1857
|
-
align-items: stretch;
|
|
1858
|
-
}
|
|
1859
|
-
:where(\[data-radix-scroll-area-content\]) {
|
|
1860
|
-
flex-grow: 1;
|
|
1861
|
-
}
|
|
1862
|
-
|
|
1863
|
-
import { IressContainer, IressRow, IressCol } from '@iress-oss/ids-components';
|
|
1864
|
-
<IressContainer\>
|
|
1865
|
-
<IressRow\>
|
|
1866
|
-
<IressCol span\={8}\>Column 1</IressCol\>
|
|
1867
|
-
<IressCol span\={4}\>Column 2</IressCol\>
|
|
1868
|
-
</IressRow\>
|
|
1869
|
-
</IressContainer\>;
|
|
1870
|
-
|
|
1871
|
-
Copy
|
|
1872
|
-
|
|
1873
|
-
The base grid size is exported as `GRID_SIZE` from the `@iress-oss/ids-components` package, in case you need to reference it in your own code.
|
|
1874
|
-
|
|
1875
|
-
On this page
|
|
1876
|
-
|
|
1877
|
-
* [Reference](#reference)
|
|
1878
|
-
* [For developers](#for-developers)
|
|
1879
|
-
|
|
1880
|
-
## Content
|
|
1881
|
-
|
|
1882
|
-
[](#content)Content
|
|
1883
|
-
===================
|
|
1884
|
-
|
|
1885
|
-
[](#microcopy-guidelines)Microcopy Guidelines
|
|
1886
|
-
---------------------------------------------
|
|
1887
|
-
|
|
1888
|
-
* Use clear, concise language that matches user mental models
|
|
1889
|
-
* Provide helpful error messages with actionable guidance
|
|
1890
|
-
* Implement consistent tone of voice across all interface text
|
|
1891
|
-
* Use progressive disclosure for complex information
|
|
1892
|
-
|
|
1893
|
-
[](#iconography)Iconography
|
|
1894
|
-
---------------------------
|
|
1895
|
-
|
|
1896
|
-
* Use icons consistently with established meanings
|
|
1897
|
-
* Provide screen reader text for meaningful icons
|
|
1898
|
-
* Avoid using icons as the sole means of communication
|
|
1899
|
-
* Maintain consistent icon sizing and alignment
|
|
1900
|
-
|
|
1901
|
-
On this page
|
|
1902
|
-
|
|
1903
|
-
* [Microcopy Guidelines](#microcopy-guidelines)
|
|
1904
|
-
* [Iconography](#iconography)
|
|
1905
|
-
|
|
1906
|
-
## User Experience
|
|
1907
|
-
|
|
1908
|
-
[](#user-experience)User experience
|
|
1909
|
-
===================================
|
|
1910
|
-
|
|
1911
|
-
We use heuristic guidelines to assess the usability and user-centred design quality of all Iress products.
|
|
1912
|
-
|
|
1913
|
-
[](#system-feedback)System Feedback
|
|
1914
|
-
-----------------------------------
|
|
1915
|
-
|
|
1916
|
-
* Always show users where they are, what just happened, and what’s possible next.
|
|
1917
|
-
* Provide immediate visual and textual feedback for all actions and states.
|
|
1918
|
-
* Ensure feedback is clear, contextual, and proportionate to the importance of the action.
|
|
1919
|
-
|
|
1920
|
-
[](#language-and-mental-models)Language and Mental Models
|
|
1921
|
-
---------------------------------------------------------
|
|
1922
|
-
|
|
1923
|
-
* Use user-centred language and avoid technical jargon.
|
|
1924
|
-
* Follow cultural and industry conventions for colour, iconography, terminology, and layout.
|
|
1925
|
-
* Align interaction patterns with real-world analogues wherever feasible.
|
|
1926
|
-
|
|
1927
|
-
[](#control-and-forgiveness)Control and Forgiveness
|
|
1928
|
-
---------------------------------------------------
|
|
1929
|
-
|
|
1930
|
-
* Make actions reversible and provide undo where errors may occur.
|
|
1931
|
-
* Let users easily backtrack, edit inputs, or abandon flows.
|
|
1932
|
-
* Provide escape hatches from any process without penalty.
|
|
1933
|
-
|
|
1934
|
-
[](#standards-and-consistency)Standards and Consistency
|
|
1935
|
-
-------------------------------------------------------
|
|
1936
|
-
|
|
1937
|
-
* Use consistent layout, labelling, iconography, and grammar.
|
|
1938
|
-
* Reinforce expectations by placing similar elements in predictable positions.
|
|
1939
|
-
* Apply colour, spacing, and visual patterns consistently across all screens.
|
|
1940
|
-
|
|
1941
|
-
[](#error-prevention-and-recovery)Error Prevention and Recovery
|
|
1942
|
-
---------------------------------------------------------------
|
|
1943
|
-
|
|
1944
|
-
* Prevent errors by anticipating misuse and validating early.
|
|
1945
|
-
* Phrase error messages with clarity, empathy, and constructive suggestions.
|
|
1946
|
-
* Where errors occur, explain why and how they can be resolved.
|
|
1947
|
-
|
|
1948
|
-
[](#recognition-over-recall)Recognition Over Recall
|
|
1949
|
-
---------------------------------------------------
|
|
1950
|
-
|
|
1951
|
-
* Display necessary information at the point of decision.
|
|
1952
|
-
* Use visual grouping, spacing, and affordance to reveal hierarchy.
|
|
1953
|
-
* Prioritise visual clarity over novelty.
|
|
1954
|
-
|
|
1955
|
-
[](#simplicity-and-minimalism)Simplicity and Minimalism
|
|
1956
|
-
-------------------------------------------------------
|
|
1957
|
-
|
|
1958
|
-
* Remove unnecessary detail—every word, element, or feature should earn its place.
|
|
1959
|
-
* Design for clarity of purpose with visually distinct, semantically meaningful UI components.
|
|
1960
|
-
* Use whitespace, clean alignment, and simplified flows to reduce cognitive load.
|
|
1961
|
-
|
|
1962
|
-
On this page
|
|
1963
|
-
|
|
1964
|
-
* [System Feedback](#system-feedback)
|
|
1965
|
-
* [Language and Mental Models](#language-and-mental-models)
|
|
1966
|
-
* [Control and Forgiveness](#control-and-forgiveness)
|
|
1967
|
-
* [Standards and Consistency](#standards-and-consistency)
|
|
1968
|
-
* [Error Prevention and Recovery](#error-prevention-and-recovery)
|
|
1969
|
-
* [Recognition Over Recall](#recognition-over-recall)
|
|
1970
|
-
* [Simplicity and Minimalism](#simplicity-and-minimalism)
|
|
1971
|
-
|
|
1972
|
-
## Visual Design
|
|
1973
|
-
|
|
1974
|
-
[](#visual-design-standards)Visual Design Standards
|
|
1975
|
-
===================================================
|
|
1976
|
-
|
|
1977
|
-
[](#typography)Typography
|
|
1978
|
-
-------------------------
|
|
1979
|
-
|
|
1980
|
-
* Use systematic font sizing with heading scales (H1-H6)
|
|
1981
|
-
* Implement consistent line heights and font weights
|
|
1982
|
-
* Provide text colour hierarchies (primary, muted, success, warning, danger)
|
|
1983
|
-
* Support responsive typography scaling
|
|
1984
|
-
|
|
1985
|
-
[](#colour-system)Colour System
|
|
1986
|
-
-------------------------------
|
|
1987
|
-
|
|
1988
|
-
* Maintain semantic colour meanings:
|
|
1989
|
-
* **Primary**: Main call-to-action colour with high contrast
|
|
1990
|
-
* **Success**: Positive outcomes and confirmations
|
|
1991
|
-
* **Warning**: Caution and important notices
|
|
1992
|
-
* **Danger**: Errors and destructive actions
|
|
1993
|
-
* **Info**: Neutral information and guidance
|
|
1994
|
-
* **Positive/Negative**: Financial context (buy/sell actions)
|
|
1995
|
-
* Ensure all colour combinations meet accessibility contrast requirements
|
|
1996
|
-
* Provide consistent hover and active state colours
|
|
1997
|
-
|
|
1998
|
-
[](#spacing-and-layout)Spacing and Layout
|
|
1999
|
-
-----------------------------------------
|
|
2000
|
-
|
|
2001
|
-
* Use systematic spacing scale (xs, sm, md, lg, xl)
|
|
2002
|
-
* Apply consistent gutter systems for layout components
|
|
2003
|
-
* Implement responsive breakpoints for adaptive layouts
|
|
2004
|
-
* Maintain proper margin and padding relationships
|
|
2005
|
-
|
|
2006
|
-
[](#interactive-states)Interactive States
|
|
2007
|
-
-----------------------------------------
|
|
2008
|
-
|
|
2009
|
-
* Provide clear hover, focus, active, and disabled states
|
|
2010
|
-
* Use consistent transition timing and easing
|
|
2011
|
-
* Implement proper focus indicators for keyboard navigation
|
|
2012
|
-
* Show loading states for asynchronous operations
|
|
2013
|
-
|
|
2014
|
-
On this page
|
|
2015
|
-
|
|
2016
|
-
* [Typography](#typography)
|
|
2017
|
-
* [Colour System](#colour-system)
|
|
2018
|
-
* [Spacing and Layout](#spacing-and-layout)
|
|
2019
|
-
* [Interactive States](#interactive-states)
|
|
2020
|
-
|
|
2021
|
-
## Z-index (stacking)
|
|
2022
|
-
|
|
2023
|
-
[](#z-index-stacking)Z-index (stacking)
|
|
2024
|
-
=======================================
|
|
2025
|
-
|
|
2026
|
-
The z-index determines the stacking order of elements. Elements with a higher z-index always sit in front of elements with a lower z-index. Each index has been mapped to the appropriate elevation(s).
|
|
2027
|
-
|
|
2028
|
-
[](#reference)Reference
|
|
2029
|
-
-----------------------
|
|
2030
|
-
|
|
2031
|
-
| Name | Usage | Value |
|
|
2032
|
-
| --- | --- | --- |
|
|
2033
|
-
| DEFAULT | The default z-index used for most elements. Can be combined with raised and floating elevations. | 0 |
|
|
2034
|
-
| MODAL | Used for IressModal. Can be combined with floating elevation. | 400 |
|
|
2035
|
-
| NAVBAR | Used for navbars. Can be combined with overflow elevation. | 100 |
|
|
2036
|
-
| POPOVER | Used for IressPopover. Can be combined with floating elevation. | 200 |
|
|
2037
|
-
| SLIDEOUT | Used for IressSlideout. Can be combined with floating elevation. | 300 |
|
|
2038
|
-
| TOAST | Used for IressToast. Can be combined with floating elevation. | 500 |
|
|
2039
|
-
| TOOLTIP | Used for IressTooltip. Can be combined with floating elevation. | 600 |
|
|
2040
|
-
|
|
2041
|
-
* * *
|
|
2042
|
-
|
|
2043
|
-
[](#for-developers)For developers
|
|
2044
|
-
---------------------------------
|
|
2045
|
-
|
|
2046
|
-
If you are using the IDS components, the z-indexes have already been mapped out to their respective components based on the usage above. They are hardcoded into the components, so you don't need to worry about them.
|
|
2047
|
-
|
|
2048
|
-
The mapping is exported as `Z_INDEX` from the `@iress-oss/ids-components` package, in case you need to reference it in your own code.
|
|
2049
|
-
|
|
2050
|
-
On this page
|
|
2051
|
-
|
|
2052
|
-
* [Reference](#reference)
|
|
2053
|
-
* [For developers](#for-developers)
|
|
2054
|
-
|