@iress-oss/ids-mcp-server 0.0.1-dev.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (107) hide show
  1. package/LICENSE.txt +201 -0
  2. package/README.md +93 -0
  3. package/dist/componentHandlers.js +241 -0
  4. package/dist/componentHandlers.test.js +380 -0
  5. package/dist/config.js +16 -0
  6. package/dist/index.js +53 -0
  7. package/dist/iressHandlers.js +144 -0
  8. package/dist/iressHandlers.test.js +316 -0
  9. package/dist/resourceHandlers.js +67 -0
  10. package/dist/resourceHandlers.test.js +352 -0
  11. package/dist/searchHandlers.js +287 -0
  12. package/dist/searchHandlers.test.js +524 -0
  13. package/dist/toolHandler.js +31 -0
  14. package/dist/toolHandler.test.js +369 -0
  15. package/dist/tools.js +165 -0
  16. package/dist/types.js +4 -0
  17. package/dist/utils.js +59 -0
  18. package/dist/utils.test.js +286 -0
  19. package/generated/docs/components-alert-docs.md +130 -0
  20. package/generated/docs/components-autocomplete-docs.md +754 -0
  21. package/generated/docs/components-autocomplete-recipes-docs.md +104 -0
  22. package/generated/docs/components-badge-docs.md +148 -0
  23. package/generated/docs/components-button-docs.md +362 -0
  24. package/generated/docs/components-button-recipes-docs.md +76 -0
  25. package/generated/docs/components-buttongroup-docs.md +310 -0
  26. package/generated/docs/components-card-docs.md +494 -0
  27. package/generated/docs/components-card-recipes-docs.md +89 -0
  28. package/generated/docs/components-checkbox-docs.md +193 -0
  29. package/generated/docs/components-checkboxgroup-docs.md +692 -0
  30. package/generated/docs/components-checkboxgroup-recipes-docs.md +119 -0
  31. package/generated/docs/components-col-docs.md +466 -0
  32. package/generated/docs/components-combobox-docs.md +1016 -0
  33. package/generated/docs/components-container-docs.md +91 -0
  34. package/generated/docs/components-divider-docs.md +176 -0
  35. package/generated/docs/components-expander-docs.md +215 -0
  36. package/generated/docs/components-field-docs.md +675 -0
  37. package/generated/docs/components-filter-docs.md +1109 -0
  38. package/generated/docs/components-form-docs.md +2442 -0
  39. package/generated/docs/components-form-recipes-docs.md +892 -0
  40. package/generated/docs/components-hide-docs.md +265 -0
  41. package/generated/docs/components-icon-docs.md +553 -0
  42. package/generated/docs/components-inline-docs.md +868 -0
  43. package/generated/docs/components-input-docs.md +335 -0
  44. package/generated/docs/components-input-recipes-docs.md +140 -0
  45. package/generated/docs/components-inputcurrency-docs.md +157 -0
  46. package/generated/docs/components-inputcurrency-recipes-docs.md +116 -0
  47. package/generated/docs/components-label-docs.md +135 -0
  48. package/generated/docs/components-menu-docs.md +704 -0
  49. package/generated/docs/components-menu-menuitem-docs.md +193 -0
  50. package/generated/docs/components-modal-docs.md +587 -0
  51. package/generated/docs/components-navbar-docs.md +291 -0
  52. package/generated/docs/components-navbar-recipes-docs.md +413 -0
  53. package/generated/docs/components-panel-docs.md +380 -0
  54. package/generated/docs/components-placeholder-docs.md +27 -0
  55. package/generated/docs/components-popover-docs.md +464 -0
  56. package/generated/docs/components-popover-recipes-docs.md +245 -0
  57. package/generated/docs/components-progress-docs.md +104 -0
  58. package/generated/docs/components-radio-docs.md +107 -0
  59. package/generated/docs/components-radiogroup-docs.md +683 -0
  60. package/generated/docs/components-readonly-docs.md +89 -0
  61. package/generated/docs/components-richselect-docs.md +2433 -0
  62. package/generated/docs/components-row-docs.md +877 -0
  63. package/generated/docs/components-select-docs.md +456 -0
  64. package/generated/docs/components-skeleton-docs.md +214 -0
  65. package/generated/docs/components-skeleton-recipes-docs.md +76 -0
  66. package/generated/docs/components-skiplink-docs.md +66 -0
  67. package/generated/docs/components-slideout-docs.md +538 -0
  68. package/generated/docs/components-slider-docs.md +346 -0
  69. package/generated/docs/components-spinner-docs.md +59 -0
  70. package/generated/docs/components-stack-docs.md +265 -0
  71. package/generated/docs/components-table-ag-grid-docs.md +2666 -0
  72. package/generated/docs/components-table-docs.md +1305 -0
  73. package/generated/docs/components-tabset-docs.md +341 -0
  74. package/generated/docs/components-tabset-tab-docs.md +86 -0
  75. package/generated/docs/components-tag-docs.md +115 -0
  76. package/generated/docs/components-text-docs.md +394 -0
  77. package/generated/docs/components-toaster-docs.md +294 -0
  78. package/generated/docs/components-toaster-toast-docs.md +157 -0
  79. package/generated/docs/components-toggle-docs.md +158 -0
  80. package/generated/docs/components-tooltip-docs.md +311 -0
  81. package/generated/docs/components-validationmessage-docs.md +241 -0
  82. package/generated/docs/contact-us-docs.md +27 -0
  83. package/generated/docs/extensions-editor-docs.md +288 -0
  84. package/generated/docs/extensions-editor-recipes-docs.md +39 -0
  85. package/generated/docs/foundations-accessibility-docs.md +62 -0
  86. package/generated/docs/foundations-colours-docs.md +257 -0
  87. package/generated/docs/foundations-consistency-docs.md +52 -0
  88. package/generated/docs/foundations-content-docs.md +23 -0
  89. package/generated/docs/foundations-introduction-docs.md +17 -0
  90. package/generated/docs/foundations-principles-docs.md +70 -0
  91. package/generated/docs/foundations-typography-docs.md +191 -0
  92. package/generated/docs/foundations-user-experience-docs.md +63 -0
  93. package/generated/docs/foundations-visual-design-docs.md +46 -0
  94. package/generated/docs/frequently-asked-questions-docs.md +53 -0
  95. package/generated/docs/get-started-develop-docs.md +48 -0
  96. package/generated/docs/get-started-using-storybook-docs.md +68 -0
  97. package/generated/docs/guidelines.md +812 -0
  98. package/generated/docs/introduction-docs.md +43 -0
  99. package/generated/docs/patterns-loading-docs.md +1304 -0
  100. package/generated/docs/resources-changelog-docs.md +6 -0
  101. package/generated/docs/resources-code-katas-docs.md +29 -0
  102. package/generated/docs/resources-migration-guides-from-v4-to-v5-docs.md +437 -0
  103. package/generated/docs/themes-available-themes-docs.md +66 -0
  104. package/generated/docs/themes-introduction-docs.md +121 -0
  105. package/generated/docs/themes-tokens-docs.md +1200 -0
  106. package/generated/docs/versions-docs.md +17 -0
  107. package/package.json +81 -0
@@ -0,0 +1,119 @@
1
+ [](#recipes)Recipes
2
+ ===================
3
+
4
+ [](#checkboxes-inside-an-iresstable)Checkboxes inside an `IressTable`
5
+ ---------------------------------------------------------------------
6
+
7
+ You can use `IressCheckboxGroup` and `IressTable` to create a table with checkboxes, allowing the users to select multiple rows.
8
+
9
+ Selected values: lemon-drizzle, victoria-sponge
10
+
11
+ Required Let them eat cake
12
+
13
+ Available options
14
+ | Select | Name |
15
+ | --- | --- |
16
+ |
17
+ Select lemon drizzle
18
+
19
+ | Lemon drizzle |
20
+ |
21
+
22
+ Select Victoria Sponge
23
+
24
+ | Victoria Sponge |
25
+ |
26
+
27
+ Select Carrot Cake
28
+
29
+ | Carrot Cake |
30
+
31
+ Submit
32
+
33
+ Hide code
34
+
35
+ \[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; }
36
+
37
+ import {
38
+ FormControlValue,
39
+ IressButton,
40
+ IressCheckbox,
41
+ IressForm,
42
+ IressFormFieldset,
43
+ IressPanel,
44
+ IressStack,
45
+ IressTable,
46
+ } from '@iress-oss/ids-components';
47
+ import { IressCheckboxGroup } from '../CheckboxGroup';
48
+ import { toArray } from '../../../helpers/formatting/toArray';
49
+ interface FieldValues {
50
+ 'let-them-eat-cake'?: FormControlValue\[\];
51
+ }
52
+ const SelectedValues \= () \=> {
53
+ const value \= IressForm.useWatch<FieldValues\>({ name: 'let-them-eat-cake' });
54
+ const valueString \= toArray(value).join(', ');
55
+ return (
56
+ <IressPanel\>
57
+ Selected values: {valueString ? valueString : 'None'}
58
+ </IressPanel\>
59
+ );
60
+ };
61
+ export const CheckboxGroupTable \= () \=> (
62
+ <IressForm
63
+ defaultValues\={{
64
+ 'let-them-eat-cake': \['lemon-drizzle', 'victoria-sponge'\],
65
+ }}
66
+ \>
67
+ <IressStack gutter\="md"\>
68
+ <SelectedValues />
69
+ <IressFormFieldset
70
+ label\="Let them eat cake"
71
+ name\="let-them-eat-cake"
72
+ hiddenLabel
73
+ rules\={{ required: 'Please select a cake' }}
74
+ render\={(field) \=> (
75
+ <IressCheckboxGroup {...field} layout\="full"\>
76
+ <IressTable
77
+ caption\="Available options"
78
+ columns\={\[
79
+ { key: 'select', label: 'Select', width: '2rem' },
80
+ { key: 'name', label: 'Name' },
81
+ \]}
82
+ rows\={\[
83
+ {
84
+ select: (
85
+ <IressCheckbox hiddenLabel value\="lemon-drizzle"\>
86
+ Select lemon drizzle </IressCheckbox\>
87
+ ),
88
+ name: 'Lemon drizzle',
89
+ },
90
+ {
91
+ select: (
92
+ <IressCheckbox hiddenLabel value\="victoria-sponge"\>
93
+ Select Victoria Sponge </IressCheckbox\>
94
+ ),
95
+ name: 'Victoria Sponge',
96
+ },
97
+ {
98
+ select: (
99
+ <IressCheckbox hiddenLabel value\="carrot-cake"\>
100
+ Select Carrot Cake </IressCheckbox\>
101
+ ),
102
+ name: 'Carrot Cake',
103
+ },
104
+ \]}
105
+ />
106
+ </IressCheckboxGroup\>
107
+ )}
108
+ />
109
+ <IressButton type\="submit" mode\="primary"\>
110
+ Submit </IressButton\>
111
+ </IressStack\>
112
+ </IressForm\>
113
+ );
114
+
115
+ Copy
116
+
117
+ On this page
118
+
119
+ * [Checkboxes inside an IressTable](#checkboxes-inside-an-iresstable)
@@ -0,0 +1,466 @@
1
+ [](#col)Col
2
+ ===========
3
+
4
+ Overview
5
+ --------
6
+
7
+ Used in conjunction with the `IressRow` component to layout page content
8
+
9
+ Column 1
10
+
11
+ Column 2
12
+
13
+ Hide code
14
+
15
+ \[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; }
16
+
17
+ <IressRow gutter\="md"\>
18
+ <IressCol\>
19
+ <IressPlaceholder\>
20
+ Column 1 </IressPlaceholder\>
21
+ </IressCol\>
22
+ <IressCol\>
23
+ <IressPlaceholder\>
24
+ Column 2 </IressPlaceholder\>
25
+ </IressCol\>
26
+ </IressRow\>
27
+
28
+ Copy
29
+
30
+ [](#examples)Examples
31
+ ---------------------
32
+
33
+ ### [](#auto-sized)Auto-sized
34
+
35
+ When no column widths are specified the `IressCol` component will render equal width columns.
36
+
37
+ 1 of 2
38
+
39
+ 2 of 2
40
+
41
+ 1 of 3
42
+
43
+ 2 of 3
44
+
45
+ 3 of 3
46
+
47
+ Hide code
48
+
49
+ \[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; }
50
+
51
+ <IressStack gutter\="md"\>
52
+ <IressRow gutter\="md"\>
53
+ <IressCol\>
54
+ <IressPlaceholder\>
55
+ 1 of 2 </IressPlaceholder\>
56
+ </IressCol\>
57
+ <IressCol\>
58
+ <IressPlaceholder\>
59
+ 2 of 2 </IressPlaceholder\>
60
+ </IressCol\>
61
+ </IressRow\>
62
+ <IressRow gutter\="md"\>
63
+ <IressCol\>
64
+ <IressPlaceholder\>
65
+ 1 of 3 </IressPlaceholder\>
66
+ </IressCol\>
67
+ <IressCol\>
68
+ <IressPlaceholder\>
69
+ 2 of 3 </IressPlaceholder\>
70
+ </IressCol\>
71
+ <IressCol\>
72
+ <IressPlaceholder\>
73
+ 3 of 3 </IressPlaceholder\>
74
+ </IressCol\>
75
+ </IressRow\>
76
+ </IressStack\>
77
+
78
+ Copy
79
+
80
+ ### [](#span)Span
81
+
82
+ The `span` prop controls the number of grid columns the component should span.
83
+
84
+ If no `span` is provided it will default to `auto` which will make the column either fill the remaining space in the row (when used with a col number) or size evenly when used with other columns set to auto sizing.
85
+
86
+ 12
87
+
88
+ 1
89
+
90
+ 11
91
+
92
+ 2
93
+
94
+ 10
95
+
96
+ 3
97
+
98
+ 9
99
+
100
+ 4
101
+
102
+ 8
103
+
104
+ 5
105
+
106
+ 7
107
+
108
+ 6
109
+
110
+ 6
111
+
112
+ Hide code
113
+
114
+ \[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; }
115
+
116
+ <IressStack gutter\="md"\>
117
+ <IressRow gutter\="md"\>
118
+ <IressCol span\="12"\>
119
+ <IressPlaceholder\>
120
+ 12 </IressPlaceholder\>
121
+ </IressCol\>
122
+ </IressRow\>
123
+ <IressRow gutter\="md"\>
124
+ <IressCol span\="1"\>
125
+ <IressPlaceholder\>
126
+ 1 </IressPlaceholder\>
127
+ </IressCol\>
128
+ <IressCol\>
129
+ <IressPlaceholder\>
130
+ 11 </IressPlaceholder\>
131
+ </IressCol\>
132
+ </IressRow\>
133
+ <IressRow gutter\="md"\>
134
+ <IressCol span\="2"\>
135
+ <IressPlaceholder\>
136
+ 2 </IressPlaceholder\>
137
+ </IressCol\>
138
+ <IressCol\>
139
+ <IressPlaceholder\>
140
+ 10 </IressPlaceholder\>
141
+ </IressCol\>
142
+ </IressRow\>
143
+ <IressRow gutter\="md"\>
144
+ <IressCol span\="3"\>
145
+ <IressPlaceholder\>
146
+ 3 </IressPlaceholder\>
147
+ </IressCol\>
148
+ <IressCol\>
149
+ <IressPlaceholder\>
150
+ 9 </IressPlaceholder\>
151
+ </IressCol\>
152
+ </IressRow\>
153
+ <IressRow gutter\="md"\>
154
+ <IressCol span\="4"\>
155
+ <IressPlaceholder\>
156
+ 4 </IressPlaceholder\>
157
+ </IressCol\>
158
+ <IressCol\>
159
+ <IressPlaceholder\>
160
+ 8 </IressPlaceholder\>
161
+ </IressCol\>
162
+ </IressRow\>
163
+ <IressRow gutter\="md"\>
164
+ <IressCol span\="5"\>
165
+ <IressPlaceholder\>
166
+ 5 </IressPlaceholder\>
167
+ </IressCol\>
168
+ <IressCol\>
169
+ <IressPlaceholder\>
170
+ 7 </IressPlaceholder\>
171
+ </IressCol\>
172
+ </IressRow\>
173
+ <IressRow gutter\="md"\>
174
+ <IressCol span\="6"\>
175
+ <IressPlaceholder\>
176
+ 6 </IressPlaceholder\>
177
+ </IressCol\>
178
+ <IressCol\>
179
+ <IressPlaceholder\>
180
+ 6 </IressPlaceholder\>
181
+ </IressCol\>
182
+ </IressRow\>
183
+ </IressStack\>
184
+
185
+ Copy
186
+
187
+ ### [](#responsive-span)Responsive span
188
+
189
+ The `span` prop can take an object that takes five key/value pairs that correlate with the IDS breakpoints. Any missing keys will fall back to the value defined for the next smallest key.
190
+
191
+ **Note:** If a `span` prop is provided an object but no value is given for `xs` it will default to `12`. This means that columns will be full width on screen sizes below the sizes you've specified.
192
+
193
+ Current breakpoint: **xl** breakpoint (1200px - 1499px).
194
+
195
+ Column 1
196
+ {"xs":12,"md":3}
197
+
198
+ Column 2
199
+ {"xs":12,"md":9}
200
+
201
+ Hide code
202
+
203
+ \[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; }
204
+
205
+ <IressStack gutter\="md"\>
206
+ <IressPanel\>
207
+ Current breakpoint:{' '}
208
+ <CurrentBreakpoint />
209
+ . </IressPanel\>
210
+ <IressRow gutter\="md"\>
211
+ <IressCol
212
+ span\={{
213
+ md: 3,
214
+ xs: 12
215
+ }}
216
+ \>
217
+ <IressPlaceholder\>
218
+ <IressText align\="center"\>
219
+ Column 1 <br />
220
+ {\`{"xs":12,"md":3}\`}
221
+ </IressText\>
222
+ </IressPlaceholder\>
223
+ </IressCol\>
224
+ <IressCol
225
+ span\={{
226
+ md: 9,
227
+ xs: 12
228
+ }}
229
+ \>
230
+ <IressPlaceholder\>
231
+ <IressText align\="center"\>
232
+ Column 2 <br />
233
+ {\`{"xs":12,"md":9}\`}
234
+ </IressText\>
235
+ </IressPlaceholder\>
236
+ </IressCol\>
237
+ </IressRow\>
238
+ </IressStack\>
239
+
240
+ Copy
241
+
242
+ ### [](#offset)Offset
243
+
244
+ The `offset` prop controls the amount of grid columns to offset.
245
+
246
+ 1
247
+
248
+ 2
249
+
250
+ 3
251
+
252
+ 4
253
+
254
+ 5
255
+
256
+ 6
257
+
258
+ 7
259
+
260
+ 8
261
+
262
+ 9
263
+
264
+ 10
265
+
266
+ 11
267
+
268
+ Hide code
269
+
270
+ \[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; }
271
+
272
+ <IressStack gutter\="md"\>
273
+ <IressRow gutter\="md"\>
274
+ <IressCol
275
+ offset\="1"
276
+ span\="1"
277
+ \>
278
+ <IressPlaceholder\>
279
+ 1 </IressPlaceholder\>
280
+ </IressCol\>
281
+ </IressRow\>
282
+ <IressRow gutter\="md"\>
283
+ <IressCol
284
+ offset\="2"
285
+ span\="1"
286
+ \>
287
+ <IressPlaceholder\>
288
+ 2 </IressPlaceholder\>
289
+ </IressCol\>
290
+ </IressRow\>
291
+ <IressRow gutter\="md"\>
292
+ <IressCol
293
+ offset\="3"
294
+ span\="1"
295
+ \>
296
+ <IressPlaceholder\>
297
+ 3 </IressPlaceholder\>
298
+ </IressCol\>
299
+ </IressRow\>
300
+ <IressRow gutter\="md"\>
301
+ <IressCol
302
+ offset\="4"
303
+ span\="1"
304
+ \>
305
+ <IressPlaceholder\>
306
+ 4 </IressPlaceholder\>
307
+ </IressCol\>
308
+ </IressRow\>
309
+ <IressRow gutter\="md"\>
310
+ <IressCol
311
+ offset\="5"
312
+ span\="1"
313
+ \>
314
+ <IressPlaceholder\>
315
+ 5 </IressPlaceholder\>
316
+ </IressCol\>
317
+ </IressRow\>
318
+ <IressRow gutter\="md"\>
319
+ <IressCol
320
+ offset\="6"
321
+ span\="1"
322
+ \>
323
+ <IressPlaceholder\>
324
+ 6 </IressPlaceholder\>
325
+ </IressCol\>
326
+ </IressRow\>
327
+ <IressRow gutter\="md"\>
328
+ <IressCol
329
+ offset\="7"
330
+ span\="1"
331
+ \>
332
+ <IressPlaceholder\>
333
+ 7 </IressPlaceholder\>
334
+ </IressCol\>
335
+ </IressRow\>
336
+ <IressRow gutter\="md"\>
337
+ <IressCol
338
+ offset\="8"
339
+ span\="1"
340
+ \>
341
+ <IressPlaceholder\>
342
+ 8 </IressPlaceholder\>
343
+ </IressCol\>
344
+ </IressRow\>
345
+ <IressRow gutter\="md"\>
346
+ <IressCol
347
+ offset\="9"
348
+ span\="1"
349
+ \>
350
+ <IressPlaceholder\>
351
+ 9 </IressPlaceholder\>
352
+ </IressCol\>
353
+ </IressRow\>
354
+ <IressRow gutter\="md"\>
355
+ <IressCol
356
+ offset\="10"
357
+ span\="1"
358
+ \>
359
+ <IressPlaceholder\>
360
+ 10 </IressPlaceholder\>
361
+ </IressCol\>
362
+ </IressRow\>
363
+ <IressRow gutter\="md"\>
364
+ <IressCol
365
+ offset\="11"
366
+ span\="1"
367
+ \>
368
+ <IressPlaceholder\>
369
+ 11 </IressPlaceholder\>
370
+ </IressCol\>
371
+ </IressRow\>
372
+ </IressStack\>
373
+
374
+ Copy
375
+
376
+ ### [](#responsive-offset)Responsive offset
377
+
378
+ When a `ResponsiveSizing` object is passed into the `offset` prop, the offset will change at the specified breakpoints. It will apply to all breakpoints above the specified breakpoint.
379
+
380
+ For example, if you specify an offset for `md`, it will apply to `lg`, `xl` and `xxl` as well. If you want to change the offset at a specific breakpoint, you can pass in an object with the breakpoint as the key and the offset as the value.
381
+
382
+ Current breakpoint: **xl** breakpoint (1200px - 1499px).
383
+
384
+ Column 1
385
+ {"lg":2}
386
+
387
+ Hide code
388
+
389
+ \[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; }
390
+
391
+ <IressStack gutter\="md"\>
392
+ <IressPanel\>
393
+ Current breakpoint:{' '}
394
+ <CurrentBreakpoint />
395
+ . </IressPanel\>
396
+ <IressRow gutter\="md"\>
397
+ <IressCol
398
+ offset\={{
399
+ lg: 2
400
+ }}
401
+ \>
402
+ <IressPlaceholder\>
403
+ <IressText align\="center"\>
404
+ Column 1 <br />
405
+ {\`{"lg":2}\`}
406
+ </IressText\>
407
+ </IressPlaceholder\>
408
+ </IressCol\>
409
+ </IressRow\>
410
+ </IressStack\>
411
+
412
+ Copy
413
+
414
+ ### [](#align-self)Align self
415
+
416
+ The `alignSelf` prop controls the vertical alignment of the column (use if column alignment needs to differ from other columns in the row).
417
+
418
+ Start
419
+
420
+ Center
421
+
422
+ End
423
+
424
+ Stretch
425
+
426
+ Hide code
427
+
428
+ \[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; }
429
+
430
+ <IressContainer\>
431
+ <IressRow
432
+ className\="ids-styles--set-height-v5142"
433
+ gutter\="md"
434
+ \>
435
+ <IressCol alignSelf\="start"\>
436
+ <IressPlaceholder\>
437
+ Start </IressPlaceholder\>
438
+ </IressCol\>
439
+ <IressCol alignSelf\="center"\>
440
+ <IressPlaceholder\>
441
+ Center </IressPlaceholder\>
442
+ </IressCol\>
443
+ <IressCol alignSelf\="end"\>
444
+ <IressPlaceholder\>
445
+ End </IressPlaceholder\>
446
+ </IressCol\>
447
+ <IressCol alignSelf\="stretch"\>
448
+ <IressPlaceholder stretch\>
449
+ Stretch </IressPlaceholder\>
450
+ </IressCol\>
451
+ </IressRow\>
452
+ </IressContainer\>
453
+
454
+ Copy
455
+
456
+ On this page
457
+
458
+ * [Overview](#overview)
459
+ * [Props](#props)
460
+ * [Examples](#examples)
461
+ * [Auto-sized](#auto-sized)
462
+ * [Span](#span)
463
+ * [Responsive span](#responsive-span)
464
+ * [Offset](#offset)
465
+ * [Responsive offset](#responsive-offset)
466
+ * [Align self](#align-self)