@workday/canvas-kit-docs 13.0.0-alpha.950-next.0 → 13.0.0-alpha.996-next.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/es6/index.d.ts +0 -1
- package/dist/es6/index.d.ts.map +1 -1
- package/dist/es6/index.js +0 -1
- package/dist/es6/lib/docs.js +2058 -189
- package/dist/es6/mdx/versionsTable.d.ts.map +1 -1
- package/dist/es6/mdx/versionsTable.js +4 -0
- package/dist/es6/mdx/welcomePage.js +1 -1
- package/dist/mdx/10.0-UPGRADE-GUIDE.mdx +1 -1
- package/dist/mdx/11.0-UPGRADE-GUIDE.mdx +6 -6
- package/dist/mdx/12.0-UPGRADE-GUIDE.mdx +6 -6
- package/dist/mdx/CONTRIBUTING.mdx +1 -1
- package/dist/mdx/CREATING_COMPOUND_COMPONENTS.mdx +31 -0
- package/dist/mdx/preview-react/InformationHighlight/InformationHighlight.mdx +109 -0
- package/dist/mdx/preview-react/InformationHighlight/examples/Basic.tsx +18 -0
- package/dist/mdx/preview-react/InformationHighlight/examples/Body.tsx +13 -0
- package/dist/mdx/preview-react/InformationHighlight/examples/Caution.tsx +27 -0
- package/dist/mdx/preview-react/InformationHighlight/examples/Critical.tsx +33 -0
- package/dist/mdx/preview-react/InformationHighlight/examples/CustomIconCritical.tsx +28 -0
- package/dist/mdx/preview-react/InformationHighlight/examples/Heading.tsx +11 -0
- package/dist/mdx/preview-react/InformationHighlight/examples/Informational.tsx +27 -0
- package/dist/mdx/preview-react/InformationHighlight/examples/RTL.tsx +42 -0
- package/dist/mdx/preview-react/radio/Radio.mdx +2 -2
- package/dist/mdx/preview-react/select/examples/Top Label/Alert.tsx +1 -1
- package/dist/mdx/preview-react/status-indicator/StatusIndicator.mdx +2 -2
- package/dist/mdx/react/_examples/GlobalHeader.mdx +36 -0
- package/dist/mdx/react/_examples/mdx/CompoundComponent.mdx +2 -2
- package/dist/mdx/react/_examples/mdx/Headers.mdx +26 -0
- package/dist/mdx/react/_examples/mdx/examples/GlobalHeader.tsx +267 -37
- package/dist/mdx/react/badge/CountBadge.mdx +2 -2
- package/dist/mdx/react/breadcrumbs/examples/Overflow.tsx +13 -4
- package/dist/mdx/react/button/button/Button.mdx +5 -5
- package/dist/mdx/react/card/card.mdx +2 -2
- package/dist/mdx/react/checkbox/Checkbox.mdx +5 -5
- package/dist/mdx/react/combobox/Combobox.mdx +2 -2
- package/dist/mdx/react/form-field/FormField.mdx +2 -2
- package/dist/mdx/react/modal/examples/IframeTest.tsx +4 -1
- package/dist/mdx/react/popup/examples/PopupWithFallbackPlacements.tsx +102 -53
- package/dist/mdx/react/select/Select.mdx +6 -6
- package/dist/mdx/react/switch/Switch.mdx +5 -5
- package/dist/mdx/react/table/Table.mdx +2 -2
- package/dist/mdx/react/text/BodyText.mdx +2 -2
- package/dist/mdx/react/text/Heading.mdx +2 -2
- package/dist/mdx/react/text/Subtext.mdx +2 -2
- package/dist/mdx/react/text/Text.mdx +2 -2
- package/dist/mdx/react/text/Title.mdx +2 -2
- package/dist/mdx/react/tokens/Tokens.mdx +2 -1
- package/dist/mdx/welcome.mdx +3 -3
- package/index.ts +0 -1
- package/package.json +7 -7
- package/dist/es6/lib/InformationHighlight/Base.d.ts +0 -5
- package/dist/es6/lib/InformationHighlight/Base.d.ts.map +0 -1
- package/dist/es6/lib/InformationHighlight/Base.js +0 -9
- package/dist/es6/lib/InformationHighlight/Body.d.ts +0 -2
- package/dist/es6/lib/InformationHighlight/Body.d.ts.map +0 -1
- package/dist/es6/lib/InformationHighlight/Body.js +0 -18
- package/dist/es6/lib/InformationHighlight/Heading.d.ts +0 -2
- package/dist/es6/lib/InformationHighlight/Heading.d.ts.map +0 -1
- package/dist/es6/lib/InformationHighlight/Heading.js +0 -17
- package/dist/es6/lib/InformationHighlight/Icon.d.ts +0 -13
- package/dist/es6/lib/InformationHighlight/Icon.d.ts.map +0 -1
- package/dist/es6/lib/InformationHighlight/Icon.js +0 -44
- package/dist/es6/lib/InformationHighlight/Link.d.ts +0 -2
- package/dist/es6/lib/InformationHighlight/Link.d.ts.map +0 -1
- package/dist/es6/lib/InformationHighlight/Link.js +0 -18
- package/dist/es6/lib/InformationHighlight/index.d.ts +0 -25
- package/dist/es6/lib/InformationHighlight/index.d.ts.map +0 -1
- package/dist/es6/lib/InformationHighlight/index.js +0 -44
- package/dist/es6/lib/InformationHighlight/modelHook.d.ts +0 -19
- package/dist/es6/lib/InformationHighlight/modelHook.d.ts.map +0 -1
- package/dist/es6/lib/InformationHighlight/modelHook.js +0 -13
- package/lib/InformationHighlight/Base.tsx +0 -12
- package/lib/InformationHighlight/Body.tsx +0 -21
- package/lib/InformationHighlight/Heading.tsx +0 -20
- package/lib/InformationHighlight/Icon.tsx +0 -65
- package/lib/InformationHighlight/Link.tsx +0 -20
- package/lib/InformationHighlight/index.tsx +0 -62
- package/lib/InformationHighlight/modelHook.ts +0 -16
|
@@ -1,65 +1,295 @@
|
|
|
1
1
|
import * as React from 'react';
|
|
2
|
-
import {
|
|
3
|
-
|
|
4
|
-
|
|
2
|
+
import {
|
|
3
|
+
AccessibleHide,
|
|
4
|
+
AriaLiveRegion,
|
|
5
|
+
composeHooks,
|
|
6
|
+
createComponent,
|
|
7
|
+
createElemPropsHook,
|
|
8
|
+
createSubcomponent,
|
|
9
|
+
ExtractProps,
|
|
10
|
+
useUniqueId,
|
|
11
|
+
} from '@workday/canvas-kit-react/common';
|
|
12
|
+
import {base, system} from '@workday/canvas-tokens-web';
|
|
13
|
+
import {calc, createStyles, px2rem} from '@workday/canvas-kit-styling';
|
|
5
14
|
import {
|
|
6
15
|
notificationsIcon,
|
|
7
16
|
inboxIcon,
|
|
8
17
|
justifyIcon,
|
|
9
18
|
assistantIcon,
|
|
19
|
+
searchIcon,
|
|
10
20
|
} from '@workday/canvas-system-icons-web';
|
|
11
21
|
|
|
12
|
-
import {
|
|
22
|
+
import {SecondaryButton, TertiaryButton} from '@workday/canvas-kit-react/button';
|
|
13
23
|
import {Avatar} from '@workday/canvas-kit-react/avatar';
|
|
14
24
|
import {Flex, FlexProps} from '@workday/canvas-kit-react/layout';
|
|
15
|
-
import {
|
|
25
|
+
import {LoadReturn} from '@workday/canvas-kit-react/collection';
|
|
26
|
+
import {Tooltip} from '@workday/canvas-kit-react/tooltip';
|
|
27
|
+
import {
|
|
28
|
+
Combobox,
|
|
29
|
+
useComboboxModel,
|
|
30
|
+
useComboboxInput,
|
|
31
|
+
useComboboxLoader,
|
|
32
|
+
} from '@workday/canvas-kit-react/combobox';
|
|
33
|
+
import {InputGroup, TextInput} from '@workday/canvas-kit-react/text-input';
|
|
34
|
+
import {StyledMenuItem} from '@workday/canvas-kit-react/menu';
|
|
35
|
+
import {SystemIcon} from '@workday/canvas-kit-react/icon';
|
|
36
|
+
import {CountBadge} from '@workday/canvas-kit-react/badge';
|
|
16
37
|
|
|
17
38
|
interface HeaderItemProps extends FlexProps {}
|
|
39
|
+
interface LiveCountBadgeProps extends FlexProps {
|
|
40
|
+
cnt: number;
|
|
41
|
+
}
|
|
18
42
|
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
43
|
+
const tasks = ['Request Time Off', 'Create Expense Report', 'Change Benefits'];
|
|
44
|
+
|
|
45
|
+
const styleOverrides = {
|
|
46
|
+
headerWrapper: createStyles({
|
|
47
|
+
display: 'flex',
|
|
48
|
+
alignItems: 'center',
|
|
49
|
+
justifyContent: 'space-between',
|
|
50
|
+
boxSizing: 'border-box',
|
|
51
|
+
...system.type.subtext.large,
|
|
52
|
+
WebkitFontSmoothing: 'antialiased',
|
|
53
|
+
MozOsxFontSmoothing: 'grayscale',
|
|
54
|
+
backgroundColor: system.color.bg.default,
|
|
55
|
+
padding: system.space.x1,
|
|
56
|
+
}),
|
|
57
|
+
inputGroupInner: createStyles({
|
|
58
|
+
marginLeft: '1rem',
|
|
59
|
+
width: px2rem(20),
|
|
60
|
+
transition: 'opacity 100ms ease',
|
|
61
|
+
}),
|
|
62
|
+
comboboxContainer: createStyles({
|
|
63
|
+
margin: 'auto',
|
|
64
|
+
width: '100%',
|
|
65
|
+
maxWidth: calc.multiply(system.space.x20, 6),
|
|
66
|
+
}),
|
|
67
|
+
comboboxInput: createStyles({
|
|
68
|
+
borderRadius: px2rem(1000),
|
|
69
|
+
width: '20rem',
|
|
70
|
+
}),
|
|
71
|
+
comboboxMenuList: createStyles({
|
|
72
|
+
maxHeight: px2rem(200),
|
|
73
|
+
}),
|
|
74
|
+
menuButtonStyles: createStyles({
|
|
75
|
+
textDecoration: 'none',
|
|
76
|
+
color: base.blackPepper500,
|
|
77
|
+
}),
|
|
78
|
+
notificationContainerStyles: createStyles({
|
|
79
|
+
boxSizing: 'border-box',
|
|
80
|
+
position: 'relative',
|
|
81
|
+
}),
|
|
82
|
+
countBadgeStyles: createStyles({
|
|
83
|
+
boxSizing: 'border-box',
|
|
84
|
+
position: 'absolute',
|
|
85
|
+
top: calc.negate(system.space.x1),
|
|
86
|
+
insetInlineEnd: calc.negate(system.space.x1),
|
|
87
|
+
}),
|
|
88
|
+
actionButtonStyles: createStyles({
|
|
89
|
+
gap: system.space.x4,
|
|
90
|
+
margin: system.space.x4,
|
|
91
|
+
}),
|
|
92
|
+
};
|
|
93
|
+
|
|
94
|
+
const useAutocompleteInput = composeHooks(
|
|
95
|
+
createElemPropsHook(useComboboxModel)(model => {
|
|
96
|
+
return {
|
|
97
|
+
onKeyPress(event: React.KeyboardEvent) {
|
|
98
|
+
model.events.show(event);
|
|
99
|
+
},
|
|
100
|
+
};
|
|
101
|
+
}),
|
|
102
|
+
useComboboxInput
|
|
37
103
|
);
|
|
38
104
|
|
|
105
|
+
const AutoCompleteInput = createSubcomponent(TextInput)({
|
|
106
|
+
modelHook: useComboboxModel,
|
|
107
|
+
elemPropsHook: useAutocompleteInput,
|
|
108
|
+
})<ExtractProps<typeof Combobox.Input, never>>((elemProps, Element) => {
|
|
109
|
+
return <Combobox.Input as={Element} {...elemProps} />;
|
|
110
|
+
});
|
|
111
|
+
|
|
112
|
+
export default () => {
|
|
113
|
+
const [notifications, setNotifications] = React.useState(0);
|
|
114
|
+
|
|
115
|
+
function handleAdd() {
|
|
116
|
+
setNotifications(prev => prev + 1);
|
|
117
|
+
}
|
|
118
|
+
|
|
119
|
+
function handleClear() {
|
|
120
|
+
setNotifications(0);
|
|
121
|
+
}
|
|
122
|
+
|
|
123
|
+
return (
|
|
124
|
+
<>
|
|
125
|
+
<GlobalHeader>
|
|
126
|
+
<GlobalHeader.Item>
|
|
127
|
+
<Tooltip title="Global Navigation" type="describe">
|
|
128
|
+
<TertiaryButton icon={justifyIcon} cs={styleOverrides.menuButtonStyles}>
|
|
129
|
+
MENU
|
|
130
|
+
</TertiaryButton>
|
|
131
|
+
</Tooltip>
|
|
132
|
+
<Tooltip title="Workday Home">
|
|
133
|
+
<TertiaryButton>
|
|
134
|
+
<img src="https://design.workday.com/images/ck-dub-logo-blue.svg" alt="" />
|
|
135
|
+
</TertiaryButton>
|
|
136
|
+
</Tooltip>
|
|
137
|
+
</GlobalHeader.Item>
|
|
138
|
+
<GlobalHeader.Item cs={styleOverrides.comboboxContainer}>
|
|
139
|
+
<Autocomplete aria-label="Search Workday" />
|
|
140
|
+
</GlobalHeader.Item>
|
|
141
|
+
<GlobalHeader.Item>
|
|
142
|
+
<Tooltip title="Assistant">
|
|
143
|
+
<TertiaryButton icon={assistantIcon} />
|
|
144
|
+
</Tooltip>
|
|
145
|
+
|
|
146
|
+
<NotificationLiveBadge cnt={notifications} />
|
|
147
|
+
|
|
148
|
+
<Tooltip title="My Tasks">
|
|
149
|
+
<TertiaryButton icon={inboxIcon} />
|
|
150
|
+
</Tooltip>
|
|
151
|
+
<Tooltip title="Profile">
|
|
152
|
+
<Avatar />
|
|
153
|
+
</Tooltip>
|
|
154
|
+
</GlobalHeader.Item>
|
|
155
|
+
</GlobalHeader>
|
|
156
|
+
<Flex cs={styleOverrides.actionButtonStyles}>
|
|
157
|
+
<SecondaryButton onClick={handleAdd}>Add notification</SecondaryButton>
|
|
158
|
+
<TertiaryButton onClick={handleClear}>Clear</TertiaryButton>
|
|
159
|
+
</Flex>
|
|
160
|
+
</>
|
|
161
|
+
);
|
|
162
|
+
};
|
|
163
|
+
|
|
39
164
|
const GlobalHeaderItem = createComponent('div')({
|
|
40
165
|
displayName: 'GlobalHeader.Item',
|
|
41
166
|
Component: ({gap = 's', ...props}: HeaderItemProps, ref) => (
|
|
42
|
-
<Flex gap={gap} alignItems="center" marginX={space.
|
|
167
|
+
<Flex gap={gap} alignItems="center" marginX={system.space.x3} ref={ref} {...props} />
|
|
43
168
|
),
|
|
44
169
|
});
|
|
45
170
|
|
|
46
171
|
const GlobalHeader = createComponent('header')({
|
|
47
172
|
displayName: 'GlobalHeader',
|
|
48
|
-
Component: (props, ref
|
|
173
|
+
Component: (props, ref) => (
|
|
174
|
+
<header className={styleOverrides.headerWrapper} ref={ref} {...props} />
|
|
175
|
+
),
|
|
49
176
|
subComponents: {Item: GlobalHeaderItem},
|
|
50
177
|
});
|
|
51
178
|
|
|
52
|
-
const
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
179
|
+
const Autocomplete = createComponent('div')({
|
|
180
|
+
displayName: 'Autocomplete',
|
|
181
|
+
Component: props => {
|
|
182
|
+
const [searchText, setSearchText] = React.useState('');
|
|
183
|
+
|
|
184
|
+
function handleChange(e) {
|
|
185
|
+
setSearchText(e.target.value);
|
|
186
|
+
}
|
|
187
|
+
|
|
188
|
+
const {model, loader} = useComboboxLoader(
|
|
189
|
+
{
|
|
190
|
+
// You can start with any number that makes sense.
|
|
191
|
+
total: 0,
|
|
192
|
+
|
|
193
|
+
// Pick whatever number makes sense for your API
|
|
194
|
+
pageSize: 20,
|
|
195
|
+
|
|
196
|
+
// A load function that will be called by the loader. You must return a promise that returns
|
|
197
|
+
// an object like `{items: [], total: 0}`. The `items` will be merged into the loader's cache
|
|
198
|
+
async load({pageNumber, pageSize, filter}) {
|
|
199
|
+
return new Promise<LoadReturn<string>>(resolve => {
|
|
200
|
+
// simulate a server response by resolving after a period of time
|
|
201
|
+
setTimeout(() => {
|
|
202
|
+
// simulate paging and filtering based on pre-computed items
|
|
203
|
+
const start = (pageNumber - 1) * pageSize;
|
|
204
|
+
const end = start + pageSize;
|
|
205
|
+
const filteredTasks = tasks.filter(i => {
|
|
206
|
+
if (searchText.trim() === '' || typeof searchText !== 'string') {
|
|
207
|
+
return true;
|
|
208
|
+
}
|
|
209
|
+
return i.toLowerCase().includes(searchText.trim().toLowerCase());
|
|
210
|
+
});
|
|
211
|
+
|
|
212
|
+
const total = filteredTasks.length;
|
|
213
|
+
const items = filteredTasks.slice(start, end);
|
|
214
|
+
|
|
215
|
+
resolve({
|
|
216
|
+
items,
|
|
217
|
+
total,
|
|
218
|
+
});
|
|
219
|
+
}, 300);
|
|
220
|
+
});
|
|
221
|
+
},
|
|
222
|
+
onShow() {
|
|
223
|
+
// The `shouldLoad` cancels while the combobox menu is hidden, so let's load when it is
|
|
224
|
+
// visible
|
|
225
|
+
loader.load();
|
|
226
|
+
},
|
|
227
|
+
},
|
|
228
|
+
useComboboxModel
|
|
229
|
+
);
|
|
230
|
+
|
|
231
|
+
return (
|
|
232
|
+
<Combobox model={model}>
|
|
233
|
+
<InputGroup>
|
|
234
|
+
<InputGroup.InnerStart cs={styleOverrides.inputGroupInner}>
|
|
235
|
+
<SystemIcon icon={searchIcon} />
|
|
236
|
+
</InputGroup.InnerStart>
|
|
237
|
+
<InputGroup.Input
|
|
238
|
+
as={AutoCompleteInput}
|
|
239
|
+
cs={styleOverrides.comboboxInput}
|
|
240
|
+
onChange={handleChange}
|
|
241
|
+
value={searchText}
|
|
242
|
+
{...props}
|
|
243
|
+
/>
|
|
244
|
+
</InputGroup>
|
|
245
|
+
<Combobox.Menu.Popper>
|
|
246
|
+
<Combobox.Menu.Card>
|
|
247
|
+
{model.state.items.length === 0 ? (
|
|
248
|
+
<StyledMenuItem as="span">No Results Found</StyledMenuItem>
|
|
249
|
+
) : (
|
|
250
|
+
model.state.items.length > 0 && (
|
|
251
|
+
<Combobox.Menu.List maxHeight={px2rem(200)}>
|
|
252
|
+
{item => <Combobox.Menu.Item>{item}</Combobox.Menu.Item>}
|
|
253
|
+
</Combobox.Menu.List>
|
|
254
|
+
)
|
|
255
|
+
)}
|
|
256
|
+
</Combobox.Menu.Card>
|
|
257
|
+
</Combobox.Menu.Popper>
|
|
258
|
+
</Combobox>
|
|
259
|
+
);
|
|
260
|
+
},
|
|
63
261
|
});
|
|
64
262
|
|
|
65
|
-
const
|
|
263
|
+
const NotificationLiveBadge = createComponent('span')({
|
|
264
|
+
displayName: 'NotificationLiveBadge',
|
|
265
|
+
Component: ({cnt = 0, ...props}: LiveCountBadgeProps) => {
|
|
266
|
+
const btnId = useUniqueId();
|
|
267
|
+
const badgeId = useUniqueId();
|
|
268
|
+
|
|
269
|
+
return (
|
|
270
|
+
<Flex cs={styleOverrides.notificationContainerStyles}>
|
|
271
|
+
<Tooltip title="Notifications">
|
|
272
|
+
<TertiaryButton
|
|
273
|
+
id={btnId}
|
|
274
|
+
icon={notificationsIcon}
|
|
275
|
+
aria-describedby={cnt > 0 ? badgeId : undefined}
|
|
276
|
+
{...props}
|
|
277
|
+
/>
|
|
278
|
+
</Tooltip>
|
|
279
|
+
<AriaLiveRegion aria-labelledby={btnId}>
|
|
280
|
+
{cnt > 0 && (
|
|
281
|
+
<>
|
|
282
|
+
<CountBadge
|
|
283
|
+
id={badgeId}
|
|
284
|
+
count={cnt}
|
|
285
|
+
limit={100}
|
|
286
|
+
cs={styleOverrides.countBadgeStyles}
|
|
287
|
+
/>
|
|
288
|
+
<AccessibleHide>New</AccessibleHide>
|
|
289
|
+
</>
|
|
290
|
+
)}
|
|
291
|
+
</AriaLiveRegion>
|
|
292
|
+
</Flex>
|
|
293
|
+
);
|
|
294
|
+
},
|
|
295
|
+
});
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import {ExampleCodeBlock, SymbolDoc} from '@workday/canvas-kit-docs';
|
|
1
|
+
import { ExampleCodeBlock, SymbolDoc } from '@workday/canvas-kit-docs';
|
|
2
2
|
|
|
3
3
|
import Basic from './examples/Basic';
|
|
4
4
|
import CustomLimit from './examples/CustomLimit';
|
|
@@ -60,7 +60,7 @@ of another screen update, then this use of `AriaLiveRegion` is unnecessary and n
|
|
|
60
60
|
### Custom Styles
|
|
61
61
|
|
|
62
62
|
Count Badge supports custom styling via the `cs` prop. For more information, check our
|
|
63
|
-
["How To Customize Styles"](https://workday.github.io/canvas-kit/?path=/docs/styling-how-to-customize-styles--
|
|
63
|
+
["How To Customize Styles"](https://workday.github.io/canvas-kit/?path=/docs/styling-how-to-customize-styles--docs).
|
|
64
64
|
|
|
65
65
|
## Component API
|
|
66
66
|
|
|
@@ -9,7 +9,7 @@ export interface Breadcrumb {
|
|
|
9
9
|
text: string;
|
|
10
10
|
}
|
|
11
11
|
|
|
12
|
-
export default () => {
|
|
12
|
+
export default ({width = '100%'}) => {
|
|
13
13
|
const [items] = React.useState<Breadcrumb[]>([
|
|
14
14
|
{id: '1', text: 'Home', link: '/'},
|
|
15
15
|
{id: '2', text: 'Second Link', link: '#'},
|
|
@@ -21,11 +21,15 @@ export default () => {
|
|
|
21
21
|
]);
|
|
22
22
|
|
|
23
23
|
const model = useBreadcrumbsModel({items});
|
|
24
|
-
const [containerWidth, setContainerWidth] = React.useState(
|
|
25
|
-
|
|
24
|
+
const [containerWidth, setContainerWidth] = React.useState(width);
|
|
26
25
|
return (
|
|
27
26
|
<div>
|
|
28
27
|
<Box width={containerWidth} marginBottom="xl">
|
|
28
|
+
<div style={{display: 'flex', flexDirection: 'column'}}>
|
|
29
|
+
<span>Current Container Width: {containerWidth}</span>
|
|
30
|
+
<span>Overflow visibility: {model.menu.state.visibility}</span>
|
|
31
|
+
</div>
|
|
32
|
+
<hr />
|
|
29
33
|
<Breadcrumbs model={model} aria-label="Breadcrumbs">
|
|
30
34
|
<Breadcrumbs.List overflowButton={<Breadcrumbs.OverflowButton aria-label="More links" />}>
|
|
31
35
|
{item =>
|
|
@@ -51,7 +55,12 @@ export default () => {
|
|
|
51
55
|
</Box>
|
|
52
56
|
<hr />
|
|
53
57
|
<h4>Change Breadcrumbs container size</h4>
|
|
54
|
-
<SegmentedControl
|
|
58
|
+
<SegmentedControl
|
|
59
|
+
initialValue={width}
|
|
60
|
+
onSelect={data => {
|
|
61
|
+
setContainerWidth(data.id);
|
|
62
|
+
}}
|
|
63
|
+
>
|
|
55
64
|
<SegmentedControl.List aria-label="container width control" marginBottom="m">
|
|
56
65
|
<SegmentedControl.Item data-id="100%">100%</SegmentedControl.Item>
|
|
57
66
|
<SegmentedControl.Item data-id="480px">480px</SegmentedControl.Item>
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
import {
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
2
|
+
ExampleCodeBlock,
|
|
3
|
+
Specifications,
|
|
4
|
+
SymbolDoc,
|
|
5
|
+
SymbolDescription,
|
|
6
6
|
} from '@workday/canvas-kit-docs';
|
|
7
7
|
|
|
8
8
|
import Primary from './examples/Primary';
|
|
@@ -86,7 +86,7 @@ the width of the button to the width of its container.
|
|
|
86
86
|
### Custom Styles
|
|
87
87
|
|
|
88
88
|
All of our buttons support custom styling via the `cs` prop. For more information, check our
|
|
89
|
-
["How To Customize Styles"](https://workday.github.io/canvas-kit/?path=/docs/styling-how-to-customize-styles--
|
|
89
|
+
["How To Customize Styles"](https://workday.github.io/canvas-kit/?path=/docs/styling-how-to-customize-styles--docs)
|
|
90
90
|
or view the example below.
|
|
91
91
|
|
|
92
92
|
<ExampleCodeBlock code={CustomStyles} />
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import {ExampleCodeBlock, SymbolDoc} from '@workday/canvas-kit-docs';
|
|
1
|
+
import { ExampleCodeBlock, SymbolDoc } from '@workday/canvas-kit-docs';
|
|
2
2
|
import Basic from './examples/Basic';
|
|
3
3
|
import WithCustomStyles from './examples/CustomStyles';
|
|
4
4
|
import WithStencils from './examples/Stencils';
|
|
@@ -30,7 +30,7 @@ yarn add @workday/canvas-kit-react
|
|
|
30
30
|
### Custom Styles
|
|
31
31
|
|
|
32
32
|
Card and its subcomponents support custom styling via the `cs` prop. For more information, check our
|
|
33
|
-
["How To Customize Styles"](https://workday.github.io/canvas-kit/?path=/docs/styling-how-to-customize-styles--
|
|
33
|
+
["How To Customize Styles"](https://workday.github.io/canvas-kit/?path=/docs/styling-how-to-customize-styles--docs).
|
|
34
34
|
|
|
35
35
|
<ExampleCodeBlock code={WithCustomStyles} />
|
|
36
36
|
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
import {
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
2
|
+
ExampleCodeBlock,
|
|
3
|
+
SymbolDoc,
|
|
4
|
+
Specifications,
|
|
5
|
+
InformationHighlight,
|
|
6
6
|
} from '@workday/canvas-kit-docs';
|
|
7
7
|
import Alert from './examples/Alert';
|
|
8
8
|
import Basic from './examples/Basic';
|
|
@@ -104,7 +104,7 @@ or `Checkbox.ErrorType.Error` if Form Field is not being used.
|
|
|
104
104
|
### Custom Styles
|
|
105
105
|
|
|
106
106
|
Checkbox supports custom styling via the `cs` prop. For more information, check our
|
|
107
|
-
["How To Customize Styles"](https://workday.github.io/canvas-kit/?path=/docs/styling-how-to-customize-styles--
|
|
107
|
+
["How To Customize Styles"](https://workday.github.io/canvas-kit/?path=/docs/styling-how-to-customize-styles--docs).
|
|
108
108
|
|
|
109
109
|
## Component API
|
|
110
110
|
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import {ExampleCodeBlock, SymbolDoc, Specifications} from '@workday/canvas-kit-docs';
|
|
1
|
+
import { ExampleCodeBlock, SymbolDoc, Specifications } from '@workday/canvas-kit-docs';
|
|
2
2
|
import Autocomplete from './examples/Autocomplete';
|
|
3
3
|
|
|
4
4
|
# Combobox
|
|
@@ -72,7 +72,7 @@ An Autocomplete is an example of an arbitrary combobox.
|
|
|
72
72
|
|
|
73
73
|
Combobox and its subcomponents support custom styling via the `cs` prop. For more information, check
|
|
74
74
|
our
|
|
75
|
-
["How To Customize Styles"](https://workday.github.io/canvas-kit/?path=/docs/styling-how-to-customize-styles--
|
|
75
|
+
["How To Customize Styles"](https://workday.github.io/canvas-kit/?path=/docs/styling-how-to-customize-styles--docs).
|
|
76
76
|
|
|
77
77
|
## Component API
|
|
78
78
|
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import {ExampleCodeBlock, Specifications, SymbolDoc} from '@workday/canvas-kit-docs';
|
|
1
|
+
import { ExampleCodeBlock, Specifications, SymbolDoc } from '@workday/canvas-kit-docs';
|
|
2
2
|
import Basic from './examples/Basic';
|
|
3
3
|
import Alert from './examples/Alert';
|
|
4
4
|
import Error from './examples/Error';
|
|
@@ -202,7 +202,7 @@ You can theme your error rings by wrapping an input in a `CanvasProvider` and de
|
|
|
202
202
|
|
|
203
203
|
Form Field and its subcomponents support custom styling via the `cs` prop. For more information,
|
|
204
204
|
check our
|
|
205
|
-
["How To Customize Styles"](https://workday.github.io/canvas-kit/?path=/docs/styling-how-to-customize-styles--
|
|
205
|
+
["How To Customize Styles"](https://workday.github.io/canvas-kit/?path=/docs/styling-how-to-customize-styles--docs).
|
|
206
206
|
|
|
207
207
|
## Component API
|
|
208
208
|
|
|
@@ -17,7 +17,10 @@ export default () => {
|
|
|
17
17
|
<Modal.CloseButton as={DeleteButton}>Delete</Modal.CloseButton>
|
|
18
18
|
<Modal.CloseButton>Cancel</Modal.CloseButton>
|
|
19
19
|
</Flex>
|
|
20
|
-
<iframe
|
|
20
|
+
<iframe
|
|
21
|
+
role="iframe"
|
|
22
|
+
srcDoc="<html><body>Hello, <b>world</b>.<button>iframe button 1</button><button data-testid='button2'>iframe button 2</button></body></html>"
|
|
23
|
+
/>
|
|
21
24
|
</Modal.Body>
|
|
22
25
|
</Modal.Card>
|
|
23
26
|
</Modal.Overlay>
|