@oaknational/oak-components 0.0.37 → 0.1.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/LICENSE +21 -0
- package/README.md +38 -16
- package/package.json +29 -5
- package/dist/cjs/index.js +0 -2
- package/dist/cjs/index.js.map +0 -1
- package/dist/esm/index.js +0 -2
- package/dist/esm/index.js.map +0 -1
- package/dist/types.d.ts +0 -1387
package/dist/types.d.ts
DELETED
|
@@ -1,1387 +0,0 @@
|
|
|
1
|
-
import * as styled_components from 'styled-components';
|
|
2
|
-
import { CSSProperties as CSSProperties$1 } from 'styled-components';
|
|
3
|
-
import * as React$1 from 'react';
|
|
4
|
-
import React__default, { CSSProperties, MouseEventHandler, ElementType, ComponentPropsWithoutRef, FC, ComponentPropsWithRef, ReactNode, FocusEvent, DetailedHTMLProps, InputHTMLAttributes, ChangeEventHandler, ReactElement, ComponentProps } from 'react';
|
|
5
|
-
import * as Image from 'next/image';
|
|
6
|
-
import Image__default, { ImageProps as ImageProps$1 } from 'next/image';
|
|
7
|
-
import * as next_dist_shared_lib_get_img_props from 'next/dist/shared/lib/get-img-props';
|
|
8
|
-
import * as _cloudinary_util_url_loader_dist_schema_UX7RRFIR from '@cloudinary-util/url-loader/dist/schema-UX7RRFIR';
|
|
9
|
-
import { CldImage } from 'next-cloudinary';
|
|
10
|
-
import { UrlObject } from 'url';
|
|
11
|
-
|
|
12
|
-
declare const oakColorTokens: {
|
|
13
|
-
white: string;
|
|
14
|
-
grey10: string;
|
|
15
|
-
grey20: string;
|
|
16
|
-
grey30: string;
|
|
17
|
-
grey40: string;
|
|
18
|
-
grey50: string;
|
|
19
|
-
grey60: string;
|
|
20
|
-
grey70: string;
|
|
21
|
-
black: string;
|
|
22
|
-
oakGreen: string;
|
|
23
|
-
mint: string;
|
|
24
|
-
mint30: string;
|
|
25
|
-
mint50: string;
|
|
26
|
-
mint110: string;
|
|
27
|
-
aqua: string;
|
|
28
|
-
aqua30: string;
|
|
29
|
-
aqua50: string;
|
|
30
|
-
aqua110: string;
|
|
31
|
-
lavender: string;
|
|
32
|
-
lavender30: string;
|
|
33
|
-
lavender50: string;
|
|
34
|
-
lavender110: string;
|
|
35
|
-
pink: string;
|
|
36
|
-
pink30: string;
|
|
37
|
-
pink50: string;
|
|
38
|
-
pink110: string;
|
|
39
|
-
lemon: string;
|
|
40
|
-
lemon30: string;
|
|
41
|
-
lemon50: string;
|
|
42
|
-
lemon110: string;
|
|
43
|
-
amber: string;
|
|
44
|
-
amber30: string;
|
|
45
|
-
amber50: string;
|
|
46
|
-
red: string;
|
|
47
|
-
red30: string;
|
|
48
|
-
red50: string;
|
|
49
|
-
navy: string;
|
|
50
|
-
navy110: string;
|
|
51
|
-
navy120: string;
|
|
52
|
-
blue: string;
|
|
53
|
-
magenta: string;
|
|
54
|
-
purple: string;
|
|
55
|
-
teal: string;
|
|
56
|
-
transparent: string;
|
|
57
|
-
};
|
|
58
|
-
type OakColorToken = keyof typeof oakColorTokens;
|
|
59
|
-
declare const oakUiRoleTokens: readonly ["text-primary", "text-subdued", "text-error", "text-disabled", "text-link-active", "text-link-hover", "text-link-visited", "text-link-pressed", "text-inverted", "text-success", "text-warning", "bg-primary", "bg-neutral", "bg-neutral-stronger", "bg-btn-primary", "bg-btn-primary-hover", "bg-btn-primary-disabled", "bg-btn-secondary", "bg-btn-secondary-hover", "bg-btn-secondary-disabled", "bg-icon", "bg-icon-hover", "bg-decorative1-main", "bg-decorative1-subdued", "bg-decorative1-very-subdued", "bg-decorative2-main", "bg-decorative2-subdued", "bg-decorative2-very-subdued", "bg-decorative3-main", "bg-decorative3-subdued", "bg-decorative3-very-subdued", "bg-decorative4-main", "bg-decorative4-subdued", "bg-decorative4-very-subdued", "bg-decorative5-main", "bg-decorative5-subdued", "bg-decorative5-very-subdued", "bg-correct", "bg-incorrect", "icon-main", "icon-inverted", "icon-disabled", "icon-brand", "icon-success", "icon-error", "icon-warning", "border-primary", "border-inverted", "border-neutral", "border-brand", "border-success", "border-error", "border-warning", "border-decorative1", "border-decorative1-stronger", "border-decorative2", "border-decorative2-stronger", "border-decorative3", "border-decorative3-stronger", "border-decorative4", "border-decorative4-stronger", "border-decorative5", "border-decorative5-stronger", "border-decorative6", "border-decorative6-stronger", "transparent"];
|
|
60
|
-
type OakUiRoleToken = (typeof oakUiRoleTokens)[number];
|
|
61
|
-
type UiRoleMap = Record<OakUiRoleToken, OakColorToken | null | undefined>;
|
|
62
|
-
type OakCombinedColorToken = OakColorToken | OakUiRoleToken;
|
|
63
|
-
|
|
64
|
-
type OakTheme = {
|
|
65
|
-
name: string;
|
|
66
|
-
uiColors: UiRoleMap;
|
|
67
|
-
};
|
|
68
|
-
|
|
69
|
-
type ResponsiveValues<Value> = (Value | null) | (Value | null)[];
|
|
70
|
-
|
|
71
|
-
declare const oakAllSpacingTokens: {
|
|
72
|
-
"all-spacing-0": number;
|
|
73
|
-
"all-spacing-1": number;
|
|
74
|
-
"all-spacing-2": number;
|
|
75
|
-
"all-spacing-3": number;
|
|
76
|
-
"all-spacing-4": number;
|
|
77
|
-
"all-spacing-5": number;
|
|
78
|
-
"all-spacing-6": number;
|
|
79
|
-
"all-spacing-7": number;
|
|
80
|
-
"all-spacing-8": number;
|
|
81
|
-
"all-spacing-9": number;
|
|
82
|
-
"all-spacing-10": number;
|
|
83
|
-
"all-spacing-11": number;
|
|
84
|
-
"all-spacing-12": number;
|
|
85
|
-
"all-spacing-13": number;
|
|
86
|
-
"all-spacing-14": number;
|
|
87
|
-
"all-spacing-15": number;
|
|
88
|
-
"all-spacing-16": number;
|
|
89
|
-
"all-spacing-17": number;
|
|
90
|
-
"all-spacing-18": number;
|
|
91
|
-
"all-spacing-19": number;
|
|
92
|
-
"all-spacing-20": number;
|
|
93
|
-
"all-spacing-21": number;
|
|
94
|
-
"all-spacing-22": number;
|
|
95
|
-
"all-spacing-23": number;
|
|
96
|
-
"all-spacing-24": number;
|
|
97
|
-
};
|
|
98
|
-
type OakAllSpacingToken = keyof typeof oakAllSpacingTokens;
|
|
99
|
-
declare const oakInnerPaddingTokens: {
|
|
100
|
-
"inner-padding-none": string;
|
|
101
|
-
"inner-padding-ssx": string;
|
|
102
|
-
"inner-padding-xs": string;
|
|
103
|
-
"inner-padding-s": string;
|
|
104
|
-
"inner-padding-m": string;
|
|
105
|
-
"inner-padding-l": string;
|
|
106
|
-
"inner-padding-xl": string;
|
|
107
|
-
};
|
|
108
|
-
type OakInnerPaddingToken = keyof typeof oakInnerPaddingTokens;
|
|
109
|
-
declare const oakSpaceBetweenTokens: {
|
|
110
|
-
"space-between-none": string;
|
|
111
|
-
"space-between-sssx": string;
|
|
112
|
-
"space-between-ssx": string;
|
|
113
|
-
"space-between-xs": string;
|
|
114
|
-
"space-between-s": string;
|
|
115
|
-
"space-between-m": string;
|
|
116
|
-
"space-between-m2": string;
|
|
117
|
-
"space-between-l": string;
|
|
118
|
-
"space-between-xl": string;
|
|
119
|
-
"space-between-xxl": string;
|
|
120
|
-
"space-between-xxxl": string;
|
|
121
|
-
};
|
|
122
|
-
type OakSpaceBetweenToken = keyof typeof oakSpaceBetweenTokens;
|
|
123
|
-
type AdditionalSpacingTypes = "100%" | 0 | "100vh" | "100vw" | "auto" | "fit-content" | "max-content" | "min-content" | "inherit" | "initial" | "unset";
|
|
124
|
-
type OakCombinedSpacingToken = OakAllSpacingToken | OakInnerPaddingToken | OakSpaceBetweenToken | AdditionalSpacingTypes;
|
|
125
|
-
|
|
126
|
-
type PaddingValues = ResponsiveValues<OakInnerPaddingToken | null | undefined>;
|
|
127
|
-
type PaddingStyleProps = {
|
|
128
|
-
$pa?: PaddingValues;
|
|
129
|
-
$ph?: PaddingValues;
|
|
130
|
-
$pv?: PaddingValues;
|
|
131
|
-
$pl?: PaddingValues;
|
|
132
|
-
$pr?: PaddingValues;
|
|
133
|
-
$pt?: PaddingValues;
|
|
134
|
-
$pb?: PaddingValues;
|
|
135
|
-
};
|
|
136
|
-
type MarginValue = "auto" | OakSpaceBetweenToken | null | undefined;
|
|
137
|
-
type MarginValues = ResponsiveValues<MarginValue>;
|
|
138
|
-
type MarginStyleProps = {
|
|
139
|
-
$ma?: MarginValues;
|
|
140
|
-
$mh?: MarginValues;
|
|
141
|
-
$mv?: MarginValues;
|
|
142
|
-
$ml?: MarginValues;
|
|
143
|
-
$mr?: MarginValues;
|
|
144
|
-
$mt?: MarginValues;
|
|
145
|
-
$mb?: MarginValues;
|
|
146
|
-
};
|
|
147
|
-
type SpacingStyleProps = PaddingStyleProps & MarginStyleProps;
|
|
148
|
-
|
|
149
|
-
type ColorToken = ResponsiveValues<OakCombinedColorToken | null>;
|
|
150
|
-
type ColorStyleProps = {
|
|
151
|
-
$color?: ColorToken;
|
|
152
|
-
$background?: ColorToken;
|
|
153
|
-
};
|
|
154
|
-
|
|
155
|
-
type PositionSpacing = OakAllSpacingToken | OakSpaceBetweenToken | null | undefined;
|
|
156
|
-
type PositionStyleProps = {
|
|
157
|
-
$position?: ResponsiveValues<CSSProperties["position"]>;
|
|
158
|
-
$top?: ResponsiveValues<PositionSpacing>;
|
|
159
|
-
$right?: ResponsiveValues<PositionSpacing>;
|
|
160
|
-
$bottom?: ResponsiveValues<PositionSpacing>;
|
|
161
|
-
$left?: ResponsiveValues<PositionSpacing>;
|
|
162
|
-
$inset?: ResponsiveValues<PositionSpacing>;
|
|
163
|
-
$overflow?: ResponsiveValues<CSSProperties["overflow"]>;
|
|
164
|
-
$overflowX?: ResponsiveValues<CSSProperties["overflowX"]>;
|
|
165
|
-
$overflowY?: ResponsiveValues<CSSProperties["overflowY"]>;
|
|
166
|
-
$objectFit?: ResponsiveValues<CSSProperties["objectFit"]>;
|
|
167
|
-
$pointerEvents?: ResponsiveValues<CSSProperties["pointerEvents"]>;
|
|
168
|
-
$visibility?: ResponsiveValues<CSSProperties["visibility"]>;
|
|
169
|
-
};
|
|
170
|
-
|
|
171
|
-
type SizeValues = ResponsiveValues<OakCombinedSpacingToken | null | undefined>;
|
|
172
|
-
type SizeStyleProps = {
|
|
173
|
-
$width?: SizeValues;
|
|
174
|
-
$minWidth?: SizeValues;
|
|
175
|
-
$maxWidth?: SizeValues;
|
|
176
|
-
$height?: SizeValues;
|
|
177
|
-
$minHeight?: SizeValues;
|
|
178
|
-
$maxHeight?: SizeValues;
|
|
179
|
-
};
|
|
180
|
-
|
|
181
|
-
declare const oakBorderWidthTokens: {
|
|
182
|
-
"border-solid-none": number;
|
|
183
|
-
"border-solid-s": number;
|
|
184
|
-
"border-solid-m": number;
|
|
185
|
-
"border-solid-l": number;
|
|
186
|
-
"border-solid-xl": number;
|
|
187
|
-
};
|
|
188
|
-
declare const oakBorderRadiusTokens: {
|
|
189
|
-
"border-radius-square": number;
|
|
190
|
-
"border-radius-xs": number;
|
|
191
|
-
"border-radius-s": number;
|
|
192
|
-
"border-radius-m": number;
|
|
193
|
-
"border-radius-m2": number;
|
|
194
|
-
"border-radius-l": number;
|
|
195
|
-
"border-radius-xl": number;
|
|
196
|
-
"border-radius-circle": number;
|
|
197
|
-
};
|
|
198
|
-
type OakBorderRadiusToken = keyof typeof oakBorderRadiusTokens;
|
|
199
|
-
type OakBorderWidthToken = keyof typeof oakBorderWidthTokens;
|
|
200
|
-
|
|
201
|
-
type BorderWidth = ResponsiveValues<OakBorderWidthToken>;
|
|
202
|
-
type _BorderStyleProps = ResponsiveValues<CSSProperties$1["borderStyle"]>;
|
|
203
|
-
type BorderColorProps = ResponsiveValues<OakUiRoleToken | OakColorToken>;
|
|
204
|
-
type BorderRadiusProps = ResponsiveValues<OakBorderRadiusToken>;
|
|
205
|
-
type BorderStyleProps = {
|
|
206
|
-
$ba?: BorderWidth;
|
|
207
|
-
$bt?: BorderWidth;
|
|
208
|
-
$br?: BorderWidth;
|
|
209
|
-
$bb?: BorderWidth;
|
|
210
|
-
$bl?: BorderWidth;
|
|
211
|
-
$bh?: BorderWidth;
|
|
212
|
-
$bv?: BorderWidth;
|
|
213
|
-
$borderStyle?: _BorderStyleProps;
|
|
214
|
-
$borderColor?: BorderColorProps;
|
|
215
|
-
$borderRadius?: BorderRadiusProps;
|
|
216
|
-
$btlr?: BorderRadiusProps;
|
|
217
|
-
$btrr?: BorderRadiusProps;
|
|
218
|
-
$bblr?: BorderRadiusProps;
|
|
219
|
-
$bbrr?: BorderRadiusProps;
|
|
220
|
-
$btr?: BorderRadiusProps;
|
|
221
|
-
$bbr?: BorderRadiusProps;
|
|
222
|
-
};
|
|
223
|
-
|
|
224
|
-
type DisplayStyleProps = {
|
|
225
|
-
$display?: ResponsiveValues<CSSProperties["display"]>;
|
|
226
|
-
};
|
|
227
|
-
|
|
228
|
-
declare const oakDropShadowTokens: {
|
|
229
|
-
"drop-shadow-standard": string;
|
|
230
|
-
"drop-shadow-lemon": string;
|
|
231
|
-
"drop-shadow-wide-lemon": string;
|
|
232
|
-
"drop-shadow-centered-lemon": string;
|
|
233
|
-
"drop-shadow-grey": string;
|
|
234
|
-
"drop-shadow-centered-grey": string;
|
|
235
|
-
};
|
|
236
|
-
type OakDropShadowToken = keyof typeof oakDropShadowTokens;
|
|
237
|
-
|
|
238
|
-
type DropShadowStyleProps = {
|
|
239
|
-
$dropShadow?: ResponsiveValues<OakDropShadowToken>;
|
|
240
|
-
};
|
|
241
|
-
|
|
242
|
-
declare const oakOpacityTokens: {
|
|
243
|
-
transparent: number;
|
|
244
|
-
"semi-transparent": number;
|
|
245
|
-
"semi-opaque": number;
|
|
246
|
-
opaque: number;
|
|
247
|
-
};
|
|
248
|
-
type OakOpacityToken = keyof typeof oakOpacityTokens;
|
|
249
|
-
|
|
250
|
-
type OpacityStyleProps = {
|
|
251
|
-
$opacity?: ResponsiveValues<OakOpacityToken>;
|
|
252
|
-
};
|
|
253
|
-
|
|
254
|
-
type TransformStyleProps = {
|
|
255
|
-
$transform?: ResponsiveValues<CSSProperties$1["transform"] | null>;
|
|
256
|
-
$transformOrigin?: ResponsiveValues<CSSProperties$1["transformOrigin"] | null>;
|
|
257
|
-
};
|
|
258
|
-
|
|
259
|
-
declare const oakTransitionTokens: {
|
|
260
|
-
"standard-ease": string;
|
|
261
|
-
"standard-transform": string;
|
|
262
|
-
};
|
|
263
|
-
type OakTransitionToken = keyof typeof oakTransitionTokens;
|
|
264
|
-
|
|
265
|
-
type Transition = OakTransitionToken;
|
|
266
|
-
type TransitionStyleProps = {
|
|
267
|
-
$transition?: ResponsiveValues<Transition>;
|
|
268
|
-
};
|
|
269
|
-
|
|
270
|
-
declare const oakFontSizeTokens: {
|
|
271
|
-
"font-size-1": number;
|
|
272
|
-
"font-size-2": number;
|
|
273
|
-
"font-size-3": number;
|
|
274
|
-
"font-size-4": number;
|
|
275
|
-
"font-size-5": number;
|
|
276
|
-
"font-size-6": number;
|
|
277
|
-
"font-size-7": number;
|
|
278
|
-
"font-size-8": number;
|
|
279
|
-
"font-size-9": number;
|
|
280
|
-
"font-size-10": number;
|
|
281
|
-
};
|
|
282
|
-
type OakFontSizeToken = keyof typeof oakFontSizeTokens;
|
|
283
|
-
declare const fontWeights: readonly [300, 400, 600, 700];
|
|
284
|
-
type FontWeight = (typeof fontWeights)[number];
|
|
285
|
-
declare const lineHeights: readonly [16, 20, 24, 28, 32, 40, 48, 56, 64];
|
|
286
|
-
type LineHeight = (typeof lineHeights)[number];
|
|
287
|
-
declare const letterSpacings: readonly ["0.0115rem", "-0.005rem"];
|
|
288
|
-
type LetterSpacing = (typeof letterSpacings)[number];
|
|
289
|
-
type FontParameters = readonly [
|
|
290
|
-
OakFontSizeToken,
|
|
291
|
-
LineHeight,
|
|
292
|
-
FontWeight,
|
|
293
|
-
LetterSpacing
|
|
294
|
-
];
|
|
295
|
-
declare const oakFontTokens: Record<string, FontParameters>;
|
|
296
|
-
type OakFontToken = keyof typeof oakFontTokens;
|
|
297
|
-
declare const oakTextDecorations: readonly ["underline", "overline", "line-through", "none"];
|
|
298
|
-
declare const oakWhiteSpaces: readonly ["normal", "nowrap", "pre", "pre-wrap", "pre-line", "break-spaces"];
|
|
299
|
-
declare const oakWordWraps: readonly ["normal", "break-word", "initial", "inherit"];
|
|
300
|
-
declare const oakTextOverflows: readonly ["clip", "ellipsis"];
|
|
301
|
-
type OakTextDecoration = (typeof oakTextDecorations)[number];
|
|
302
|
-
type OakWhiteSpace = (typeof oakWhiteSpaces)[number];
|
|
303
|
-
type OakWordWrap = (typeof oakWordWraps)[number];
|
|
304
|
-
type OakTextOverflow = (typeof oakTextOverflows)[number];
|
|
305
|
-
|
|
306
|
-
type TypographyStyleProps = {
|
|
307
|
-
$font?: ResponsiveValues<OakFontToken>;
|
|
308
|
-
$textDecoration?: ResponsiveValues<OakTextDecoration>;
|
|
309
|
-
$textAlign?: ResponsiveValues<CSSProperties$1["textAlign"]>;
|
|
310
|
-
$whiteSpace?: ResponsiveValues<OakWhiteSpace>;
|
|
311
|
-
$wordWrap?: ResponsiveValues<OakWordWrap>;
|
|
312
|
-
$textOverflow?: ResponsiveValues<OakTextOverflow>;
|
|
313
|
-
};
|
|
314
|
-
|
|
315
|
-
declare const oakZIndexTokens: {
|
|
316
|
-
readonly behind: -1;
|
|
317
|
-
readonly neutral: 0;
|
|
318
|
-
readonly "in-front": 1;
|
|
319
|
-
readonly "mobile-filters": 2;
|
|
320
|
-
readonly "fixed-header": 100;
|
|
321
|
-
readonly "modal-close-button": 150;
|
|
322
|
-
readonly "modal-dialog": 300;
|
|
323
|
-
};
|
|
324
|
-
type OakZIndexToken = keyof typeof oakZIndexTokens | null;
|
|
325
|
-
|
|
326
|
-
type ZIndexStyleProps = {
|
|
327
|
-
$zIndex?: ResponsiveValues<OakZIndexToken>;
|
|
328
|
-
};
|
|
329
|
-
|
|
330
|
-
type HTMLProps$1 = {
|
|
331
|
-
onClick?: MouseEventHandler;
|
|
332
|
-
};
|
|
333
|
-
type OakBoxProps = {
|
|
334
|
-
children?: React.ReactNode;
|
|
335
|
-
} & PositionStyleProps & SizeStyleProps & SpacingStyleProps & ColorStyleProps & BorderStyleProps & DisplayStyleProps & DropShadowStyleProps & OpacityStyleProps & TransformStyleProps & TransitionStyleProps & TypographyStyleProps & ZIndexStyleProps & HTMLProps$1;
|
|
336
|
-
declare const oakBoxCss: styled_components.FlattenInterpolation<styled_components.ThemedStyledProps<OakBoxProps, styled_components.DefaultTheme>>;
|
|
337
|
-
declare const OakBox: styled_components.StyledComponent<"div", styled_components.DefaultTheme, {
|
|
338
|
-
children?: React.ReactNode;
|
|
339
|
-
} & PositionStyleProps & SizeStyleProps & PaddingStyleProps & MarginStyleProps & ColorStyleProps & BorderStyleProps & DisplayStyleProps & DropShadowStyleProps & OpacityStyleProps & TransformStyleProps & TransitionStyleProps & TypographyStyleProps & ZIndexStyleProps & HTMLProps$1, never>;
|
|
340
|
-
|
|
341
|
-
type FlexStyleProps = {
|
|
342
|
-
$flexDirection?: ResponsiveValues<CSSProperties["flexDirection"]>;
|
|
343
|
-
$flexWrap?: ResponsiveValues<CSSProperties["flexWrap"]>;
|
|
344
|
-
$alignItems?: ResponsiveValues<CSSProperties["alignItems"]>;
|
|
345
|
-
$alignContent?: ResponsiveValues<CSSProperties["alignContent"]>;
|
|
346
|
-
$justifyContent?: ResponsiveValues<CSSProperties["justifyContent"]>;
|
|
347
|
-
$alignSelf?: ResponsiveValues<CSSProperties["alignSelf"]>;
|
|
348
|
-
$flexGrow?: ResponsiveValues<CSSProperties["flexGrow"]>;
|
|
349
|
-
$flexShrink?: ResponsiveValues<CSSProperties["flexShrink"]>;
|
|
350
|
-
$order?: ResponsiveValues<CSSProperties["order"]>;
|
|
351
|
-
$flexBasis?: ResponsiveValues<OakAllSpacingToken | OakSpaceBetweenToken | null | undefined>;
|
|
352
|
-
$gap?: ResponsiveValues<OakAllSpacingToken | OakSpaceBetweenToken | null | undefined>;
|
|
353
|
-
$columnGap?: ResponsiveValues<OakAllSpacingToken | OakSpaceBetweenToken | null | undefined>;
|
|
354
|
-
$rowGap?: ResponsiveValues<OakAllSpacingToken | OakSpaceBetweenToken | null | undefined>;
|
|
355
|
-
};
|
|
356
|
-
|
|
357
|
-
type OakFlexProps = FlexStyleProps & OakBoxProps;
|
|
358
|
-
/**
|
|
359
|
-
* Flex sets `display: flex;` and exposes various flex props, along with Box
|
|
360
|
-
* props.
|
|
361
|
-
*
|
|
362
|
-
* ## Usage
|
|
363
|
-
* Before adding props to this component, think about whether it makes sense
|
|
364
|
-
* to add it to Box instead, as this component extends that.
|
|
365
|
-
*/
|
|
366
|
-
declare const OakFlex: styled_components.StyledComponent<"div", styled_components.DefaultTheme, {
|
|
367
|
-
children?: React$1.ReactNode;
|
|
368
|
-
} & PositionStyleProps & SizeStyleProps & PaddingStyleProps & MarginStyleProps & ColorStyleProps & BorderStyleProps & DisplayStyleProps & DropShadowStyleProps & OpacityStyleProps & TransformStyleProps & TransitionStyleProps & TypographyStyleProps & ZIndexStyleProps & {
|
|
369
|
-
onClick?: React$1.MouseEventHandler | undefined;
|
|
370
|
-
} & FlexStyleProps, never>;
|
|
371
|
-
|
|
372
|
-
type OakSpanProps = ColorStyleProps & OpacityStyleProps & MarginStyleProps & PaddingStyleProps & BorderStyleProps & TypographyStyleProps;
|
|
373
|
-
/**
|
|
374
|
-
* Span renders a `span` (inline text) component, exposing all the typography props.
|
|
375
|
-
* ## Usage
|
|
376
|
-
* Use this component when you want to apply styles to a piece of inline text.
|
|
377
|
-
*/
|
|
378
|
-
declare const OakSpan: styled_components.StyledComponent<"span", styled_components.DefaultTheme, ColorStyleProps & OpacityStyleProps & MarginStyleProps & PaddingStyleProps & BorderStyleProps & TypographyStyleProps, never>;
|
|
379
|
-
|
|
380
|
-
/**
|
|
381
|
-
*
|
|
382
|
-
* Inherit everything from OakBox, but change the element to a form.
|
|
383
|
-
*
|
|
384
|
-
*/
|
|
385
|
-
declare const OakForm: styled_components.StyledComponent<"form", styled_components.DefaultTheme, {
|
|
386
|
-
children?: React$1.ReactNode;
|
|
387
|
-
} & PositionStyleProps & SizeStyleProps & PaddingStyleProps & MarginStyleProps & ColorStyleProps & BorderStyleProps & DisplayStyleProps & DropShadowStyleProps & OpacityStyleProps & TransformStyleProps & TransitionStyleProps & TypographyStyleProps & ZIndexStyleProps & {
|
|
388
|
-
onClick?: React$1.MouseEventHandler | undefined;
|
|
389
|
-
}, never>;
|
|
390
|
-
type OakFormProps = OakBoxProps;
|
|
391
|
-
|
|
392
|
-
type ColorFilterToken = ResponsiveValues<OakCombinedColorToken | null>;
|
|
393
|
-
type ColorFilterStyleProps = {
|
|
394
|
-
$colorFilter?: ColorFilterToken;
|
|
395
|
-
};
|
|
396
|
-
|
|
397
|
-
type HTMLProps = {
|
|
398
|
-
onClick?: MouseEventHandler;
|
|
399
|
-
};
|
|
400
|
-
type OakImageProps<C extends ElementType = typeof Image__default> = Omit<ImageProps$1, "placeholder"> & OakBoxProps & ColorFilterStyleProps & HTMLProps & {
|
|
401
|
-
as?: C;
|
|
402
|
-
/**
|
|
403
|
-
* The placeholder to use while the image is loading
|
|
404
|
-
*
|
|
405
|
-
* Defaults to `oak` which is a placeholder containing the Oak logo
|
|
406
|
-
* also accepts the same options as next/image */
|
|
407
|
-
placeholder?: ImageProps$1["placeholder"] | "oak";
|
|
408
|
-
/**
|
|
409
|
-
* Additional props forwarded to the underlying `Image` component `as`
|
|
410
|
-
*/
|
|
411
|
-
imageProps?: Partial<ComponentPropsWithoutRef<C>>;
|
|
412
|
-
};
|
|
413
|
-
/**
|
|
414
|
-
* OakImage is a wrapper round next/image which adds convenience style
|
|
415
|
-
* props to the api
|
|
416
|
-
*/
|
|
417
|
-
declare const OakImage: <C extends React__default.ElementType = React__default.ForwardRefExoticComponent<Omit<React__default.DetailedHTMLProps<React__default.ImgHTMLAttributes<HTMLImageElement>, HTMLImageElement>, "ref" | "width" | "height" | "alt" | "src" | "loading" | "srcSet"> & {
|
|
418
|
-
src: string | next_dist_shared_lib_get_img_props.StaticImport;
|
|
419
|
-
alt: string;
|
|
420
|
-
width?: number | `${number}` | undefined;
|
|
421
|
-
height?: number | `${number}` | undefined;
|
|
422
|
-
fill?: boolean | undefined;
|
|
423
|
-
loader?: Image.ImageLoader | undefined;
|
|
424
|
-
quality?: number | `${number}` | undefined;
|
|
425
|
-
priority?: boolean | undefined;
|
|
426
|
-
loading?: "eager" | "lazy" | undefined;
|
|
427
|
-
placeholder?: next_dist_shared_lib_get_img_props.PlaceholderValue | undefined;
|
|
428
|
-
blurDataURL?: string | undefined;
|
|
429
|
-
unoptimized?: boolean | undefined;
|
|
430
|
-
onLoadingComplete?: next_dist_shared_lib_get_img_props.OnLoadingComplete | undefined;
|
|
431
|
-
layout?: string | undefined;
|
|
432
|
-
objectFit?: string | undefined;
|
|
433
|
-
objectPosition?: string | undefined;
|
|
434
|
-
lazyBoundary?: string | undefined;
|
|
435
|
-
lazyRoot?: string | undefined;
|
|
436
|
-
} & React__default.RefAttributes<HTMLImageElement | null>>>({ ...props }: OakImageProps<C>) => React__default.JSX.Element;
|
|
437
|
-
|
|
438
|
-
type OakTypographyProps = OakBoxProps & TypographyStyleProps;
|
|
439
|
-
/**
|
|
440
|
-
* The Typography component sets a typography style context from which children
|
|
441
|
-
* inherit style properties through the cascade.
|
|
442
|
-
* ## Usage
|
|
443
|
-
* This should be the primary component to set a typography context.
|
|
444
|
-
* Use this component whenever you want to style blocks of 'body' text.
|
|
445
|
-
*/
|
|
446
|
-
declare const OakTypography: styled_components.StyledComponent<"div", styled_components.DefaultTheme, {
|
|
447
|
-
children?: React$1.ReactNode;
|
|
448
|
-
} & PositionStyleProps & SizeStyleProps & PaddingStyleProps & MarginStyleProps & ColorStyleProps & BorderStyleProps & DisplayStyleProps & DropShadowStyleProps & OpacityStyleProps & TransformStyleProps & TransitionStyleProps & TypographyStyleProps & ZIndexStyleProps & {
|
|
449
|
-
onClick?: React$1.MouseEventHandler | undefined;
|
|
450
|
-
}, never>;
|
|
451
|
-
|
|
452
|
-
declare const oakHeadingTags: readonly ["div", "h1", "h2", "h3", "h4", "h5", "h6"];
|
|
453
|
-
type OakHeadingTag = (typeof oakHeadingTags)[number];
|
|
454
|
-
type OakHeadingTagProps = {
|
|
455
|
-
children?: React__default.ReactNode;
|
|
456
|
-
id?: string;
|
|
457
|
-
tag: OakHeadingTag;
|
|
458
|
-
ariaLabel?: string;
|
|
459
|
-
ariaHidden?: boolean;
|
|
460
|
-
};
|
|
461
|
-
declare const HeadingTagComponent: FC<OakHeadingTagProps>;
|
|
462
|
-
type OakHeadingProps = TypographyStyleProps & OakHeadingTagProps & ColorStyleProps & OpacityStyleProps & MarginStyleProps;
|
|
463
|
-
declare const OakHeading: styled_components.StyledComponent<React__default.FC<OakHeadingTagProps>, styled_components.DefaultTheme, TypographyStyleProps & OakHeadingTagProps & ColorStyleProps & OpacityStyleProps & MarginStyleProps, never>;
|
|
464
|
-
|
|
465
|
-
type OakPProps = MarginStyleProps & TypographyStyleProps & ColorStyleProps;
|
|
466
|
-
/**
|
|
467
|
-
* Styled `p` (paragraph) component.
|
|
468
|
-
* ## Usage
|
|
469
|
-
* In general, using a `p` as a descendant of `<Body>` should suffice.
|
|
470
|
-
* However, if you want different styles for a particular paragraph,
|
|
471
|
-
* you can use this component to apply additional styles.
|
|
472
|
-
*/
|
|
473
|
-
declare const OakP: styled_components.StyledComponent<"p", styled_components.DefaultTheme, MarginStyleProps & TypographyStyleProps & ColorStyleProps, never>;
|
|
474
|
-
|
|
475
|
-
type OakULProps = OakBoxProps & {
|
|
476
|
-
$reset?: boolean;
|
|
477
|
-
};
|
|
478
|
-
/**
|
|
479
|
-
* Styled `ul` (unordered list) component.
|
|
480
|
-
*
|
|
481
|
-
* ## Usage
|
|
482
|
-
*
|
|
483
|
-
* Resets browser spacing and other styles, accepts BoxProps' style props.
|
|
484
|
-
*
|
|
485
|
-
* */
|
|
486
|
-
declare const OakUL: styled_components.StyledComponent<"ul", styled_components.DefaultTheme, {
|
|
487
|
-
children?: React$1.ReactNode;
|
|
488
|
-
} & PositionStyleProps & SizeStyleProps & PaddingStyleProps & MarginStyleProps & ColorStyleProps & BorderStyleProps & DisplayStyleProps & DropShadowStyleProps & OpacityStyleProps & TransformStyleProps & TransitionStyleProps & TypographyStyleProps & ZIndexStyleProps & {
|
|
489
|
-
onClick?: React$1.MouseEventHandler | undefined;
|
|
490
|
-
} & {
|
|
491
|
-
$reset?: boolean | undefined;
|
|
492
|
-
}, never>;
|
|
493
|
-
|
|
494
|
-
type OakOLProps = MarginStyleProps & ColorStyleProps & TypographyStyleProps;
|
|
495
|
-
/**
|
|
496
|
-
* Styled `ol` (ordered list) component.
|
|
497
|
-
*
|
|
498
|
-
* ## Usage
|
|
499
|
-
*
|
|
500
|
-
* Use where we have an ordered list to ensure numbers are styled
|
|
501
|
-
*
|
|
502
|
-
* */
|
|
503
|
-
declare const OakOL: styled_components.StyledComponent<"ol", styled_components.DefaultTheme, MarginStyleProps & ColorStyleProps & TypographyStyleProps, never>;
|
|
504
|
-
|
|
505
|
-
type ListStyleProps = {
|
|
506
|
-
$listStyle?: ResponsiveValues<CSSProperties$1["listStyle"]>;
|
|
507
|
-
};
|
|
508
|
-
|
|
509
|
-
type OakLIProps = OakFlexProps & TypographyStyleProps & ListStyleProps & DisplayStyleProps;
|
|
510
|
-
/**
|
|
511
|
-
* Styled `li` (list item) component.
|
|
512
|
-
*
|
|
513
|
-
* ## Usage
|
|
514
|
-
*
|
|
515
|
-
* Places where we directly want to style a list item
|
|
516
|
-
*
|
|
517
|
-
**/
|
|
518
|
-
declare const OakLI: styled_components.StyledComponent<"li", styled_components.DefaultTheme, FlexStyleProps & {
|
|
519
|
-
children?: React$1.ReactNode;
|
|
520
|
-
} & PositionStyleProps & SizeStyleProps & PaddingStyleProps & MarginStyleProps & ColorStyleProps & BorderStyleProps & DisplayStyleProps & DropShadowStyleProps & OpacityStyleProps & TransformStyleProps & TransitionStyleProps & TypographyStyleProps & ZIndexStyleProps & {
|
|
521
|
-
onClick?: React$1.MouseEventHandler | undefined;
|
|
522
|
-
} & ListStyleProps, never>;
|
|
523
|
-
|
|
524
|
-
type OakLabelProps = TypographyStyleProps & ColorStyleProps;
|
|
525
|
-
/**
|
|
526
|
-
* Label renders a `label` element, exposing all the typography props.
|
|
527
|
-
* ## Usage
|
|
528
|
-
* Use this component when you want to apply styles to a label, likely within
|
|
529
|
-
* a form.
|
|
530
|
-
*/
|
|
531
|
-
declare const OakLabel: styled_components.StyledComponent<"label", styled_components.DefaultTheme, TypographyStyleProps & ColorStyleProps, never>;
|
|
532
|
-
|
|
533
|
-
declare const icons: {
|
|
534
|
-
readonly "question-mark": "v1706872277/icons/question-mark.svg";
|
|
535
|
-
readonly home: "v1699887218/icons/gvqxjxcw07ei2kkmwnes.svg";
|
|
536
|
-
readonly send: "v1699893673/icons/rmvytilpjgvh3pgwc8ph.svg";
|
|
537
|
-
readonly rocket: "v1699894015/icons/u26xm5hteot875ozfnk9.svg";
|
|
538
|
-
readonly edit: "v1699894149/icons/qxlunbg5tfrdherzsvlt.svg";
|
|
539
|
-
readonly hamburger: "v1699895123/icons/jaqdnomtbhqvjcap962u.svg";
|
|
540
|
-
readonly cross: "v1699895179/icons/xigimrbivcaxt4omxamp.svg";
|
|
541
|
-
readonly bell: "v1699895207/icons/ecejtvqerx81prxyxh9b.svg";
|
|
542
|
-
readonly twitter: "v1699895251/icons/bq6a50xtkvnzhltfggzz.svg";
|
|
543
|
-
readonly worksheet: "v1699895300/icons/ez1s6mtpe5jkunnxzvlw.svg";
|
|
544
|
-
readonly facebook: "v1699895330/icons/iojlvh3o5lshy2jupyph.svg";
|
|
545
|
-
readonly share: "v1699895363/icons/agcmduftef3wcla6gzec.svg";
|
|
546
|
-
readonly "arrow-right": "v1707149070/icons/fv0z57zerrioft52dd9n.svg";
|
|
547
|
-
readonly "worksheet-3": "v1699895429/icons/bzhojpjxp9rukdvh7daz.svg";
|
|
548
|
-
readonly "chevron-right": "v1707752509/icons/vk9xxxhnsltsickom6q9.svg";
|
|
549
|
-
readonly save: "v1699895505/icons/rh1ahwwtbemvz0ihluew.svg";
|
|
550
|
-
readonly "quiz-3": "v1699895534/icons/zoayhgtrotv32fad7d3k.svg";
|
|
551
|
-
readonly "chevron-down": "v1699953557/icons/botfld6brychmttwtv6u.svg";
|
|
552
|
-
readonly linkedin: "v1699953592/icons/leqneklorqqzb1zo6rf1.svg";
|
|
553
|
-
readonly "magic-carpet": "v1699953622/icons/jifivg9xxm7sb0fjdilm.svg";
|
|
554
|
-
readonly books: "v1699953657/icons/hz4l3iq6i68kazvkvorq.svg";
|
|
555
|
-
readonly "supervision-level": "v1699953696/icons/cwqhknapp3maa4g0t3lj.svg";
|
|
556
|
-
readonly "quiz-white": "v1699953730/icons/gpcehpgr9mqoumsa25xe.svg";
|
|
557
|
-
readonly "arrow-left": "v1707149179/icons/ejrm9dpgpzb7ddbo8z2i.svg";
|
|
558
|
-
readonly "additional-material": "v1699953798/icons/ntoq4tqvcm2uj1pajubt.svg";
|
|
559
|
-
readonly "slide-deck-3": "v1699953830/icons/sm92moja9d5utu3cj16c.svg";
|
|
560
|
-
readonly "sign-language": "v1699953861/icons/ns94ozvozzi22enxkx0x.svg";
|
|
561
|
-
readonly external: "v1699953892/icons/hlxmejse3mcr4tqo6t8u.svg";
|
|
562
|
-
readonly "equipment-required": "v1699953925/icons/pw22bdhj2vrzfv2ogi4e.svg";
|
|
563
|
-
readonly "chevron-left": "v1707752509/icons/rbvzan0ozubmr4j0uqdn.svg";
|
|
564
|
-
readonly download: "v1699953991/icons/dk0f6a6hdpzxftjosngn.svg";
|
|
565
|
-
readonly search: "v1704901279/icons/canbi3fuz5fanzom2hvi.svg";
|
|
566
|
-
readonly "chevron-up": "v1699954058/icons/pay71thmhhylj7z28sj1.svg";
|
|
567
|
-
readonly go: "v1699954090/icons/vdzptyvmitylra8x4usy.svg";
|
|
568
|
-
readonly copyright: "v1699954118/icons/boiod3rflocgsnfokyo8.svg";
|
|
569
|
-
readonly "arrow-down": "v1699954152/icons/wpfmbmwpyfinipg0d61y.svg";
|
|
570
|
-
readonly project: "v1699954186/icons/zofq5pheud6spnwjpewk.svg";
|
|
571
|
-
readonly "slide-deck": "v1699954241/icons/sjjy5f3g4eciwcuxxr33.svg";
|
|
572
|
-
readonly "content-guidance": "v1699954277/icons/tm3uhcqenaznq4fxys7j.svg";
|
|
573
|
-
readonly tick: "v1699954310/icons/efd3esaor6zqk7seh6kt.svg";
|
|
574
|
-
readonly instagram: "v1699954343/icons/ayfeljric0kkimdymvva.svg";
|
|
575
|
-
readonly dot: "v1699954371/icons/knykdclphkm8lgff4u2g.svg";
|
|
576
|
-
readonly "dot-png": "v1699954394/icons/qecbh291nzwmhcvqayqd.png";
|
|
577
|
-
readonly warning: "v1704901279/icons/zzszodmk7fvxm9xzzg9s.svg";
|
|
578
|
-
readonly "lightbulb-yellow": "v1705078631/icons/q2v4sqxouy1ngcajoavv.svg";
|
|
579
|
-
readonly lightbulb: "v1705078631/icons/zldisxmbff36z68rwcef.svg";
|
|
580
|
-
readonly quiz: "v1705416077/icons/kaaizjcudy0jfgfrrdel.svg";
|
|
581
|
-
readonly video: "v1705416078/icons/wzey1zfxrvv3apeebbf5.svg";
|
|
582
|
-
readonly intro: "v1705662092/icons/pl7bnmb13txese9yxkjv.svg";
|
|
583
|
-
readonly "subject-art": "subject-icons/art.svg";
|
|
584
|
-
readonly "subject-biology": "subject-icons/biology.svg";
|
|
585
|
-
readonly "subject-chemistry": "subject-icons/chemistry.svg";
|
|
586
|
-
readonly "subject-citizenship": "subject-icons/citizenship.svg";
|
|
587
|
-
readonly "subject-combined-science": "subject-icons/science.svg";
|
|
588
|
-
readonly "subject-communication-and-language": "subject-icons/communication-and-language.svg";
|
|
589
|
-
readonly "subject-computing": "subject-icons/computing.svg";
|
|
590
|
-
readonly "subject-computing-non-gcse": "subject-icons/computing.svg";
|
|
591
|
-
readonly "subject-creative-arts": "subject-icons/creative-arts.svg";
|
|
592
|
-
readonly "subject-design-technology": "subject-icons/design-technology.svg";
|
|
593
|
-
readonly "subject-drama": "subject-icons/drama.svg";
|
|
594
|
-
readonly "subject-english": "subject-icons/english.svg";
|
|
595
|
-
readonly "subject-english-grammar": "subject-icons/english-grammar.svg";
|
|
596
|
-
readonly "subject-english-reading-for-pleasure": "subject-icons/literature.svg";
|
|
597
|
-
readonly "subject-english-spelling": "subject-icons/english-spelling.svg";
|
|
598
|
-
readonly "subject-french": "subject-icons/french.svg";
|
|
599
|
-
readonly "subject-geography": "subject-icons/geography.svg";
|
|
600
|
-
readonly "subject-german": "subject-icons/german.svg";
|
|
601
|
-
readonly "subject-history": "subject-icons/history.svg";
|
|
602
|
-
readonly "subject-independent-living": "subject-icons/independent-living.svg";
|
|
603
|
-
readonly "subject-latin": "subject-icons/latin.svg";
|
|
604
|
-
readonly "subject-maths": "subject-icons/maths.svg";
|
|
605
|
-
readonly "subject-music": "subject-icons/music-hollow.svg";
|
|
606
|
-
readonly "subject-numeracy": "subject-icons/numeracy.svg";
|
|
607
|
-
readonly "occupational-therapy": "subject-icons/therapy.svg";
|
|
608
|
-
readonly "subject-physical-development": "subject-icons/physical-development.svg";
|
|
609
|
-
readonly "subject-physical-education": "subject-icons/physical-education.svg";
|
|
610
|
-
readonly "subject-physical-therapy": "subject-icons/physical-therapy.svg";
|
|
611
|
-
readonly "subject-physics": "subject-icons/physics.svg";
|
|
612
|
-
readonly "subject-religious-education": "subject-icons/religious-education.svg";
|
|
613
|
-
readonly "subject-rshe-pshe": "subject-icons/rshe-pshe.svg";
|
|
614
|
-
readonly "subject-science": "subject-icons/science.svg";
|
|
615
|
-
readonly "subject-sensory-integration": "subject-icons/sensory-integration.svg";
|
|
616
|
-
readonly "subject-spanish": "subject-icons/spanish.svg";
|
|
617
|
-
readonly "subject-speech-and-language-therapy": "subject-icons/speech-and-language.svg";
|
|
618
|
-
readonly "subject-therapy": "subject-icons/therapy.svg";
|
|
619
|
-
readonly "subject-understanding-the-world": "subject-icons/understanding-the-world.svg";
|
|
620
|
-
};
|
|
621
|
-
type IconName = keyof typeof icons;
|
|
622
|
-
|
|
623
|
-
declare const oakIconNames: ("search" | "video" | "download" | "question-mark" | "home" | "send" | "rocket" | "edit" | "hamburger" | "cross" | "bell" | "twitter" | "worksheet" | "facebook" | "share" | "arrow-right" | "worksheet-3" | "chevron-right" | "save" | "quiz-3" | "chevron-down" | "linkedin" | "magic-carpet" | "books" | "supervision-level" | "quiz-white" | "arrow-left" | "additional-material" | "slide-deck-3" | "sign-language" | "external" | "equipment-required" | "chevron-left" | "chevron-up" | "go" | "copyright" | "arrow-down" | "project" | "slide-deck" | "content-guidance" | "tick" | "instagram" | "dot" | "dot-png" | "warning" | "lightbulb-yellow" | "lightbulb" | "quiz" | "intro" | "subject-art" | "subject-biology" | "subject-chemistry" | "subject-citizenship" | "subject-combined-science" | "subject-communication-and-language" | "subject-computing" | "subject-computing-non-gcse" | "subject-creative-arts" | "subject-design-technology" | "subject-drama" | "subject-english" | "subject-english-grammar" | "subject-english-reading-for-pleasure" | "subject-english-spelling" | "subject-french" | "subject-geography" | "subject-german" | "subject-history" | "subject-independent-living" | "subject-latin" | "subject-maths" | "subject-music" | "subject-numeracy" | "occupational-therapy" | "subject-physical-development" | "subject-physical-education" | "subject-physical-therapy" | "subject-physics" | "subject-religious-education" | "subject-rshe-pshe" | "subject-science" | "subject-sensory-integration" | "subject-spanish" | "subject-speech-and-language-therapy" | "subject-therapy" | "subject-understanding-the-world")[];
|
|
624
|
-
type OakIconName = IconName;
|
|
625
|
-
type OakIconProps = Omit<OakImageProps, "alt" | "src"> & {
|
|
626
|
-
iconName: OakIconName;
|
|
627
|
-
alt?: string;
|
|
628
|
-
};
|
|
629
|
-
/**
|
|
630
|
-
* returns true if the given string is a valid `OakIconName`
|
|
631
|
-
*/
|
|
632
|
-
declare function isValidIconName(iconName: string): iconName is OakIconName;
|
|
633
|
-
declare const OakIcon: (props: OakIconProps) => React__default.JSX.Element;
|
|
634
|
-
|
|
635
|
-
declare const oakDefaultTheme: OakTheme;
|
|
636
|
-
|
|
637
|
-
type OakGridProps = OakBoxProps & {
|
|
638
|
-
$rg?: ResponsiveValues<OakCombinedSpacingToken>;
|
|
639
|
-
$cg?: ResponsiveValues<OakCombinedSpacingToken>;
|
|
640
|
-
$gridAutoRows?: ResponsiveValues<"1fr">;
|
|
641
|
-
$gridTemplateAreas?: ResponsiveValues<string>;
|
|
642
|
-
$gridTemplateColumns?: ResponsiveValues<string>;
|
|
643
|
-
$gridTemplateRows?: ResponsiveValues<string>;
|
|
644
|
-
};
|
|
645
|
-
declare const OakGrid: styled_components.StyledComponent<"div", styled_components.DefaultTheme, {
|
|
646
|
-
children?: React$1.ReactNode;
|
|
647
|
-
} & PositionStyleProps & SizeStyleProps & PaddingStyleProps & MarginStyleProps & ColorStyleProps & BorderStyleProps & DisplayStyleProps & DropShadowStyleProps & OpacityStyleProps & TransformStyleProps & TransitionStyleProps & TypographyStyleProps & ZIndexStyleProps & {
|
|
648
|
-
onClick?: React$1.MouseEventHandler | undefined;
|
|
649
|
-
} & {
|
|
650
|
-
$rg?: ResponsiveValues<OakCombinedSpacingToken> | undefined;
|
|
651
|
-
$cg?: ResponsiveValues<OakCombinedSpacingToken> | undefined;
|
|
652
|
-
$gridAutoRows?: ResponsiveValues<"1fr"> | undefined;
|
|
653
|
-
$gridTemplateAreas?: ResponsiveValues<string> | undefined;
|
|
654
|
-
$gridTemplateColumns?: ResponsiveValues<string> | undefined;
|
|
655
|
-
$gridTemplateRows?: ResponsiveValues<string> | undefined;
|
|
656
|
-
}, never>;
|
|
657
|
-
|
|
658
|
-
type ColRowSpan = 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12;
|
|
659
|
-
type OakGridAreaProps = {
|
|
660
|
-
/**
|
|
661
|
-
* Determines the number of columns the element should span.
|
|
662
|
-
*/
|
|
663
|
-
$colSpan: ResponsiveValues<ColRowSpan>;
|
|
664
|
-
/**
|
|
665
|
-
* Determines the number of rows the element should span.
|
|
666
|
-
*/
|
|
667
|
-
$rowSpan?: ResponsiveValues<ColRowSpan>;
|
|
668
|
-
$order?: ResponsiveValues<number>;
|
|
669
|
-
/**
|
|
670
|
-
* The start column of the element.
|
|
671
|
-
*/
|
|
672
|
-
$colStart?: ResponsiveValues<ColRowSpan>;
|
|
673
|
-
$colEnd?: ResponsiveValues<ColRowSpan>;
|
|
674
|
-
/**
|
|
675
|
-
* The start row of the element.
|
|
676
|
-
*/
|
|
677
|
-
$rowStart?: ResponsiveValues<ColRowSpan>;
|
|
678
|
-
} & SpacingStyleProps;
|
|
679
|
-
/**
|
|
680
|
-
*
|
|
681
|
-
* OakGridArea is a flex container that should be used inside OakGrid.
|
|
682
|
-
*
|
|
683
|
-
* - There is no nesting of OakGridAreas
|
|
684
|
-
* - Column and row arrangements are achieved through $colSpan, $rowSpan, $colStart, $colEnd, $rowStart, $rowEnd
|
|
685
|
-
*
|
|
686
|
-
*/
|
|
687
|
-
declare const OakGridArea: styled_components.StyledComponent<"div", styled_components.DefaultTheme, {
|
|
688
|
-
children?: React$1.ReactNode;
|
|
689
|
-
} & PositionStyleProps & SizeStyleProps & PaddingStyleProps & MarginStyleProps & ColorStyleProps & BorderStyleProps & DisplayStyleProps & DropShadowStyleProps & OpacityStyleProps & TransformStyleProps & TransitionStyleProps & TypographyStyleProps & ZIndexStyleProps & {
|
|
690
|
-
onClick?: React$1.MouseEventHandler | undefined;
|
|
691
|
-
} & FlexStyleProps & {
|
|
692
|
-
/**
|
|
693
|
-
* Determines the number of columns the element should span.
|
|
694
|
-
*/
|
|
695
|
-
$colSpan: ResponsiveValues<ColRowSpan>;
|
|
696
|
-
/**
|
|
697
|
-
* Determines the number of rows the element should span.
|
|
698
|
-
*/
|
|
699
|
-
$rowSpan?: ResponsiveValues<ColRowSpan> | undefined;
|
|
700
|
-
$order?: ResponsiveValues<number> | undefined;
|
|
701
|
-
/**
|
|
702
|
-
* The start column of the element.
|
|
703
|
-
*/
|
|
704
|
-
$colStart?: ResponsiveValues<ColRowSpan> | undefined;
|
|
705
|
-
$colEnd?: ResponsiveValues<ColRowSpan> | undefined;
|
|
706
|
-
/**
|
|
707
|
-
* The start row of the element.
|
|
708
|
-
*/
|
|
709
|
-
$rowStart?: ResponsiveValues<ColRowSpan> | undefined;
|
|
710
|
-
}, never>;
|
|
711
|
-
|
|
712
|
-
type OakThemeProviderProps = {
|
|
713
|
-
theme: OakTheme;
|
|
714
|
-
children: React__default.ReactNode;
|
|
715
|
-
};
|
|
716
|
-
declare const OakThemeProvider: ({ theme, children, }: OakThemeProviderProps) => React__default.JSX.Element;
|
|
717
|
-
|
|
718
|
-
declare const OakMaxWidth: styled_components.StyledComponent<"div", styled_components.DefaultTheme, {
|
|
719
|
-
children?: React$1.ReactNode;
|
|
720
|
-
} & PositionStyleProps & SizeStyleProps & PaddingStyleProps & MarginStyleProps & ColorStyleProps & BorderStyleProps & DisplayStyleProps & DropShadowStyleProps & OpacityStyleProps & TransformStyleProps & TransitionStyleProps & TypographyStyleProps & ZIndexStyleProps & {
|
|
721
|
-
onClick?: React$1.MouseEventHandler | undefined;
|
|
722
|
-
} & FlexStyleProps, never>;
|
|
723
|
-
|
|
724
|
-
type OakCloudinaryImageProps = Omit<OakImageProps<typeof CldImage>, "src" | "imageProps"> & {
|
|
725
|
-
/**
|
|
726
|
-
* The cloudinary image id or the full cloudinary URL
|
|
727
|
-
*
|
|
728
|
-
* Usually in the format `v1234567890/image.jpg`
|
|
729
|
-
*/
|
|
730
|
-
cloudinaryId: string;
|
|
731
|
-
};
|
|
732
|
-
/**
|
|
733
|
-
* Provides a Cloudinary config to all descendent `OakCloudinaryImage` elements.
|
|
734
|
-
*
|
|
735
|
-
* See https://cloudinary.com/documentation/cloudinary_sdks#configuration_parameters
|
|
736
|
-
* for documentation of the config object.
|
|
737
|
-
*/
|
|
738
|
-
declare const OakCloudinaryConfigProvider: React__default.Provider<_cloudinary_util_url_loader_dist_schema_UX7RRFIR.g | undefined>;
|
|
739
|
-
/**
|
|
740
|
-
* OakCloudinaryImage wraps OakImage providing responsive images from Cloudinary
|
|
741
|
-
* based on the `sizes` prop.
|
|
742
|
-
*
|
|
743
|
-
* Cloudinary cloud name can be set globally with `NEXT_PUBLIC_CLOUDINARY_CLOUD_NAME` or a config
|
|
744
|
-
* can be passed with `OakCloudinaryConfigProvider`.
|
|
745
|
-
*/
|
|
746
|
-
declare const OakCloudinaryImage: ({ cloudinaryId, unoptimized, ...props }: OakCloudinaryImageProps) => React__default.JSX.Element;
|
|
747
|
-
|
|
748
|
-
type OakFieldErrorProps = {
|
|
749
|
-
children?: React__default.ReactNode;
|
|
750
|
-
};
|
|
751
|
-
declare const OakFieldError: (props: OakFieldErrorProps) => React__default.JSX.Element | null;
|
|
752
|
-
|
|
753
|
-
type OakLoadingSpinnerProps = Pick<SizeStyleProps, "$width"> & ColorStyleProps & {
|
|
754
|
-
loaderColor?: OakCombinedColorToken;
|
|
755
|
-
};
|
|
756
|
-
declare const OakLoadingSpinner: (props: OakLoadingSpinnerProps) => React__default.JSX.Element;
|
|
757
|
-
|
|
758
|
-
type ElementProp<C extends ElementType> = {
|
|
759
|
-
element?: C;
|
|
760
|
-
};
|
|
761
|
-
type PolymorphicRef<C extends React.ElementType> = ComponentPropsWithRef<C>["ref"];
|
|
762
|
-
type PolymorphicPropsWithRef<C extends ElementType> = ElementProp<C> & ComponentPropsWithoutRef<C> & {
|
|
763
|
-
ref?: PolymorphicRef<C>;
|
|
764
|
-
};
|
|
765
|
-
|
|
766
|
-
type StyledButtonProps = TypographyStyleProps & SpacingStyleProps & ColorStyleProps & DisplayStyleProps & BorderStyleProps & DropShadowStyleProps & {
|
|
767
|
-
isLoading?: boolean;
|
|
768
|
-
};
|
|
769
|
-
type InternalButtonProps = StyledButtonProps & {
|
|
770
|
-
onHovered?: (event: React__default.MouseEvent<HTMLButtonElement, MouseEvent>, duration: number) => void;
|
|
771
|
-
};
|
|
772
|
-
|
|
773
|
-
type InternalShadowRectButtonProps = Omit<InternalButtonProps, "$pa" | "$ph" | "$pv" | "$ba" | "$borderRadius" | "$borderColor" | "$background" | "$color"> & {
|
|
774
|
-
iconName?: OakIconName;
|
|
775
|
-
isTrailingIcon?: boolean;
|
|
776
|
-
defaultTextColor: OakCombinedColorToken;
|
|
777
|
-
defaultBackground: OakCombinedColorToken;
|
|
778
|
-
defaultBorderColor: OakCombinedColorToken;
|
|
779
|
-
hoverTextColor: OakCombinedColorToken;
|
|
780
|
-
hoverBackground: OakCombinedColorToken;
|
|
781
|
-
hoverBorderColor: OakCombinedColorToken;
|
|
782
|
-
disabledBackground: OakCombinedColorToken;
|
|
783
|
-
disabledBorderColor: OakCombinedColorToken;
|
|
784
|
-
disabledTextColor: OakCombinedColorToken;
|
|
785
|
-
width?: SizeStyleProps["$width"];
|
|
786
|
-
maxWidth?: SizeStyleProps["$maxWidth"];
|
|
787
|
-
hoverShadow?: OakDropShadowToken | null;
|
|
788
|
-
} & PositionStyleProps;
|
|
789
|
-
|
|
790
|
-
type OakPrimaryButtonProps = Omit<InternalShadowRectButtonProps, "defaultBorderColor" | "defaultBackground" | "defaultTextColor" | "hoverBackground" | "hoverBorderColor" | "hoverTextColor" | "disabledBackground" | "disabledBorderColor" | "disabledTextColor">;
|
|
791
|
-
declare const OakPrimaryButton: <C extends React__default.ElementType = "button">({ element, ...rest }: OakPrimaryButtonProps & {
|
|
792
|
-
element?: C | undefined;
|
|
793
|
-
} & React__default.PropsWithoutRef<React__default.ComponentProps<C>>) => React__default.JSX.Element;
|
|
794
|
-
|
|
795
|
-
/**
|
|
796
|
-
*
|
|
797
|
-
* A specific implementation of InternalRectButton
|
|
798
|
-
*
|
|
799
|
-
* The following callbacks are available for tracking focus events:
|
|
800
|
-
*
|
|
801
|
-
* ### onClick
|
|
802
|
-
* `onClick?: (event: React.MouseEvent<HTMLButtonElement, MouseEvent>) => void;`
|
|
803
|
-
*
|
|
804
|
-
* ### onHovered
|
|
805
|
-
* `onHovered?: (event: React.MouseEvent<HTMLButtonElement, MouseEvent>, duration: number) => void;`<br>
|
|
806
|
-
* called after a mouseEnter and mouseLeave event has happened
|
|
807
|
-
*/
|
|
808
|
-
type OakPrimaryInvertedButtonProps = Omit<InternalShadowRectButtonProps, "defaultBorderColor" | "defaultBackground" | "defaultTextColor" | "hoverBackground" | "hoverBorderColor" | "hoverTextColor" | "disabledBackground" | "disabledBorderColor" | "disabledTextColor">;
|
|
809
|
-
declare const OakPrimaryInvertedButton: <C extends React__default.ElementType = "button">({ element, ...rest }: OakPrimaryInvertedButtonProps & {
|
|
810
|
-
element?: C | undefined;
|
|
811
|
-
} & React__default.PropsWithoutRef<React__default.ComponentProps<C>>) => React__default.JSX.Element;
|
|
812
|
-
|
|
813
|
-
type OakSecondaryButtonProps = Omit<InternalShadowRectButtonProps, "defaultBorderColor" | "defaultBackground" | "defaultTextColor" | "hoverBackground" | "hoverBorderColor" | "hoverTextColor" | "disabledBackground" | "disabledBorderColor" | "disabledTextColor">;
|
|
814
|
-
declare const OakSecondaryButton: <C extends React__default.ElementType = "button">({ element, ...rest }: OakSecondaryButtonProps & {
|
|
815
|
-
element?: C | undefined;
|
|
816
|
-
} & React__default.PropsWithoutRef<React__default.ComponentProps<C>>) => React__default.JSX.Element;
|
|
817
|
-
|
|
818
|
-
type ImageProps = OakImageProps & {
|
|
819
|
-
iconName?: undefined;
|
|
820
|
-
};
|
|
821
|
-
type IconProps = OakIconProps & {
|
|
822
|
-
src?: undefined;
|
|
823
|
-
};
|
|
824
|
-
type OakRoundIconProps = IconProps | ImageProps;
|
|
825
|
-
/**
|
|
826
|
-
* A wrapper around `OakIcon` which applies a rounded background.
|
|
827
|
-
* Supports either an icon name or an image src
|
|
828
|
-
*/
|
|
829
|
-
declare const OakRoundIcon: ({ $background, $borderRadius, $width, $height, $pa, className, ...rest }: OakRoundIconProps) => React__default.JSX.Element;
|
|
830
|
-
|
|
831
|
-
/**
|
|
832
|
-
* An implementation of InternalShadowRoundButton, its a subtle button with no border and a round icon.
|
|
833
|
-
*/
|
|
834
|
-
declare const OakTertiaryButton: <C extends React__default.ElementType = "button">({ element, isTrailingIcon, iconName, children, ...props }: TypographyStyleProps & PaddingStyleProps & MarginStyleProps & ColorStyleProps & DisplayStyleProps & BorderStyleProps & DropShadowStyleProps & {
|
|
835
|
-
isLoading?: boolean | undefined;
|
|
836
|
-
} & {
|
|
837
|
-
onHovered?: ((event: React__default.MouseEvent<HTMLButtonElement, MouseEvent>, duration: number) => void) | undefined;
|
|
838
|
-
} & {
|
|
839
|
-
iconBackground?: OakRoundIconProps["$background"];
|
|
840
|
-
iconColorFilter?: OakRoundIconProps["$colorFilter"];
|
|
841
|
-
isTrailingIcon?: boolean | undefined;
|
|
842
|
-
iconName?: "search" | "video" | "download" | "question-mark" | "home" | "send" | "rocket" | "edit" | "hamburger" | "cross" | "bell" | "twitter" | "worksheet" | "facebook" | "share" | "arrow-right" | "worksheet-3" | "chevron-right" | "save" | "quiz-3" | "chevron-down" | "linkedin" | "magic-carpet" | "books" | "supervision-level" | "quiz-white" | "arrow-left" | "additional-material" | "slide-deck-3" | "sign-language" | "external" | "equipment-required" | "chevron-left" | "chevron-up" | "go" | "copyright" | "arrow-down" | "project" | "slide-deck" | "content-guidance" | "tick" | "instagram" | "dot" | "dot-png" | "warning" | "lightbulb-yellow" | "lightbulb" | "quiz" | "intro" | "subject-art" | "subject-biology" | "subject-chemistry" | "subject-citizenship" | "subject-combined-science" | "subject-communication-and-language" | "subject-computing" | "subject-computing-non-gcse" | "subject-creative-arts" | "subject-design-technology" | "subject-drama" | "subject-english" | "subject-english-grammar" | "subject-english-reading-for-pleasure" | "subject-english-spelling" | "subject-french" | "subject-geography" | "subject-german" | "subject-history" | "subject-independent-living" | "subject-latin" | "subject-maths" | "subject-music" | "subject-numeracy" | "occupational-therapy" | "subject-physical-development" | "subject-physical-education" | "subject-physical-therapy" | "subject-physics" | "subject-religious-education" | "subject-rshe-pshe" | "subject-science" | "subject-sensory-integration" | "subject-spanish" | "subject-speech-and-language-therapy" | "subject-therapy" | "subject-understanding-the-world" | undefined;
|
|
843
|
-
} & {
|
|
844
|
-
element?: C | undefined;
|
|
845
|
-
} & React__default.PropsWithoutRef<React__default.ComponentProps<C>>) => React__default.JSX.Element;
|
|
846
|
-
|
|
847
|
-
type RadioButtonLabelProps = {
|
|
848
|
-
$labelAlignItems?: FlexStyleProps["$alignItems"];
|
|
849
|
-
$labelGap?: FlexStyleProps["$gap"];
|
|
850
|
-
disabled?: boolean;
|
|
851
|
-
} & OakLabelProps;
|
|
852
|
-
type OakRadioButtonProps = {
|
|
853
|
-
id: string;
|
|
854
|
-
label: ReactNode;
|
|
855
|
-
value: string;
|
|
856
|
-
tabIndex?: number;
|
|
857
|
-
"data-testid"?: string;
|
|
858
|
-
disabled?: boolean;
|
|
859
|
-
/**
|
|
860
|
-
* Allows the focus ring to be disabled. This is useful when focus is indicated
|
|
861
|
-
* by other means, such as a border or background color change.
|
|
862
|
-
*/
|
|
863
|
-
disableFocusRing?: boolean;
|
|
864
|
-
/**
|
|
865
|
-
* Allows the size of the radio button to be customized.
|
|
866
|
-
*/
|
|
867
|
-
radioOuterSize?: OakAllSpacingToken;
|
|
868
|
-
/**
|
|
869
|
-
* Allows the size of the inner "checked" circle of the radio button to be customized.
|
|
870
|
-
*/
|
|
871
|
-
radioInnerSize?: OakAllSpacingToken;
|
|
872
|
-
/**
|
|
873
|
-
* Allows the width of the radio button border to be customized.
|
|
874
|
-
*/
|
|
875
|
-
radioBorderWidth?: OakBorderWidthToken;
|
|
876
|
-
/**
|
|
877
|
-
* Allows the width of the radio button border to be customized when the radio button is checked.
|
|
878
|
-
*/
|
|
879
|
-
checkedRadioBorderWidth?: OakBorderWidthToken;
|
|
880
|
-
} & OakBoxProps & RadioButtonLabelProps;
|
|
881
|
-
declare const OakRadioButton: React__default.ForwardRefExoticComponent<{
|
|
882
|
-
id: string;
|
|
883
|
-
label: ReactNode;
|
|
884
|
-
value: string;
|
|
885
|
-
tabIndex?: number | undefined;
|
|
886
|
-
"data-testid"?: string | undefined;
|
|
887
|
-
disabled?: boolean | undefined;
|
|
888
|
-
/**
|
|
889
|
-
* Allows the focus ring to be disabled. This is useful when focus is indicated
|
|
890
|
-
* by other means, such as a border or background color change.
|
|
891
|
-
*/
|
|
892
|
-
disableFocusRing?: boolean | undefined;
|
|
893
|
-
/**
|
|
894
|
-
* Allows the size of the radio button to be customized.
|
|
895
|
-
*/
|
|
896
|
-
radioOuterSize?: "all-spacing-0" | "all-spacing-1" | "all-spacing-2" | "all-spacing-3" | "all-spacing-4" | "all-spacing-5" | "all-spacing-6" | "all-spacing-7" | "all-spacing-9" | "all-spacing-10" | "all-spacing-12" | "all-spacing-13" | "all-spacing-8" | "all-spacing-11" | "all-spacing-14" | "all-spacing-15" | "all-spacing-16" | "all-spacing-17" | "all-spacing-18" | "all-spacing-19" | "all-spacing-20" | "all-spacing-21" | "all-spacing-22" | "all-spacing-23" | "all-spacing-24" | undefined;
|
|
897
|
-
/**
|
|
898
|
-
* Allows the size of the inner "checked" circle of the radio button to be customized.
|
|
899
|
-
*/
|
|
900
|
-
radioInnerSize?: "all-spacing-0" | "all-spacing-1" | "all-spacing-2" | "all-spacing-3" | "all-spacing-4" | "all-spacing-5" | "all-spacing-6" | "all-spacing-7" | "all-spacing-9" | "all-spacing-10" | "all-spacing-12" | "all-spacing-13" | "all-spacing-8" | "all-spacing-11" | "all-spacing-14" | "all-spacing-15" | "all-spacing-16" | "all-spacing-17" | "all-spacing-18" | "all-spacing-19" | "all-spacing-20" | "all-spacing-21" | "all-spacing-22" | "all-spacing-23" | "all-spacing-24" | undefined;
|
|
901
|
-
/**
|
|
902
|
-
* Allows the width of the radio button border to be customized.
|
|
903
|
-
*/
|
|
904
|
-
radioBorderWidth?: "border-solid-none" | "border-solid-s" | "border-solid-m" | "border-solid-l" | "border-solid-xl" | undefined;
|
|
905
|
-
/**
|
|
906
|
-
* Allows the width of the radio button border to be customized when the radio button is checked.
|
|
907
|
-
*/
|
|
908
|
-
checkedRadioBorderWidth?: "border-solid-none" | "border-solid-s" | "border-solid-m" | "border-solid-l" | "border-solid-xl" | undefined;
|
|
909
|
-
} & {
|
|
910
|
-
children?: React__default.ReactNode;
|
|
911
|
-
} & PositionStyleProps & SizeStyleProps & PaddingStyleProps & MarginStyleProps & ColorStyleProps & BorderStyleProps & DisplayStyleProps & DropShadowStyleProps & OpacityStyleProps & TransformStyleProps & TransitionStyleProps & TypographyStyleProps & ZIndexStyleProps & {
|
|
912
|
-
onClick?: React__default.MouseEventHandler | undefined;
|
|
913
|
-
} & {
|
|
914
|
-
$labelAlignItems?: FlexStyleProps["$alignItems"];
|
|
915
|
-
$labelGap?: FlexStyleProps["$gap"];
|
|
916
|
-
disabled?: boolean | undefined;
|
|
917
|
-
} & React__default.RefAttributes<HTMLInputElement>>;
|
|
918
|
-
|
|
919
|
-
type OakRadioGroupProps = {
|
|
920
|
-
label?: string;
|
|
921
|
-
name: string;
|
|
922
|
-
disabled?: boolean;
|
|
923
|
-
children: React__default.ReactNode;
|
|
924
|
-
onChange?: (event: React__default.ChangeEvent<HTMLInputElement>) => void;
|
|
925
|
-
/**
|
|
926
|
-
* Sets the value of the radio group
|
|
927
|
-
* for use as a controlled component
|
|
928
|
-
*/
|
|
929
|
-
value?: string;
|
|
930
|
-
/**
|
|
931
|
-
* Sets the initial value of the radio group
|
|
932
|
-
* for use as an uncontrolled component
|
|
933
|
-
*/
|
|
934
|
-
defaultValue?: string;
|
|
935
|
-
} & Pick<TypographyStyleProps, "$font"> & ColorStyleProps & Pick<FlexStyleProps, "$flexDirection" | "$alignItems" | "$gap">;
|
|
936
|
-
declare const OakRadioGroup: (props: OakRadioGroupProps) => React__default.JSX.Element;
|
|
937
|
-
|
|
938
|
-
/**
|
|
939
|
-
*
|
|
940
|
-
* These components can be used with InternalCheckBoxWrapper which allows for customisable icons
|
|
941
|
-
*
|
|
942
|
-
* Several flavours of checkbox are created here:
|
|
943
|
-
* - Default
|
|
944
|
-
* - Hover decorations
|
|
945
|
-
* - Focus decorations
|
|
946
|
-
* - Hover + Focus decorations
|
|
947
|
-
*
|
|
948
|
-
* As they are styled components they can be further customised in implementation. Alternatively additional
|
|
949
|
-
* components can be created here.
|
|
950
|
-
*
|
|
951
|
-
*/
|
|
952
|
-
type BaseCheckBoxProps = {
|
|
953
|
-
id: string;
|
|
954
|
-
disabled?: boolean;
|
|
955
|
-
value: string;
|
|
956
|
-
defaultChecked?: boolean;
|
|
957
|
-
onHovered?: (value: string, id: string, duration: number) => void;
|
|
958
|
-
onChange?: (event: React__default.ChangeEvent<HTMLInputElement>) => void;
|
|
959
|
-
onFocus?: (event: React__default.FocusEvent<HTMLInputElement>) => void;
|
|
960
|
-
onBlur?: (event: React__default.FocusEvent<HTMLInputElement>) => void;
|
|
961
|
-
"data-testid"?: string;
|
|
962
|
-
};
|
|
963
|
-
|
|
964
|
-
type InternalCheckBoxLabelProps = {
|
|
965
|
-
labelAlignItems?: FlexStyleProps["$alignItems"];
|
|
966
|
-
labelGap?: FlexStyleProps["$gap"];
|
|
967
|
-
disabled?: boolean;
|
|
968
|
-
"data-testid"?: string;
|
|
969
|
-
} & OakLabelProps;
|
|
970
|
-
|
|
971
|
-
type OakCheckBoxProps = BaseCheckBoxProps & {
|
|
972
|
-
checkboxSize?: OakAllSpacingToken;
|
|
973
|
-
checkboxBorder?: OakBorderWidthToken;
|
|
974
|
-
checkboxBorderRadius?: OakBorderRadiusToken;
|
|
975
|
-
checkedIcon?: React__default.JSX.Element;
|
|
976
|
-
checkedBackgroundFill?: boolean;
|
|
977
|
-
hoverBorderRadius?: OakBorderRadiusToken;
|
|
978
|
-
iconPadding?: OakInnerPaddingToken;
|
|
979
|
-
defaultColor?: OakCombinedColorToken;
|
|
980
|
-
disabledColor?: OakCombinedColorToken;
|
|
981
|
-
displayValue?: string;
|
|
982
|
-
} & InternalCheckBoxLabelProps;
|
|
983
|
-
declare const OakCheckBox: (props: OakCheckBoxProps) => React__default.JSX.Element;
|
|
984
|
-
|
|
985
|
-
type StyledInputProps = Omit<DetailedHTMLProps<InputHTMLAttributes<HTMLInputElement>, HTMLInputElement>, "ref"> & SpacingStyleProps & SizeStyleProps;
|
|
986
|
-
type InternalTextInputProps = Omit<StyledInputProps, "placeholder"> & {
|
|
987
|
-
/**
|
|
988
|
-
* A textual hint or example to display before a value has been entered
|
|
989
|
-
*/
|
|
990
|
-
placeholder?: string;
|
|
991
|
-
/**
|
|
992
|
-
* Fired only when the input is focused for the first time
|
|
993
|
-
*/
|
|
994
|
-
onInitialFocus?: (e: FocusEvent<HTMLInputElement>) => void;
|
|
995
|
-
};
|
|
996
|
-
|
|
997
|
-
type OakTextInputProps = {
|
|
998
|
-
/**
|
|
999
|
-
* Disables user input and updates the appearance accordingly.
|
|
1000
|
-
*/
|
|
1001
|
-
disabled?: boolean;
|
|
1002
|
-
/**
|
|
1003
|
-
* Makes the input read-only. Preventing the user from changing the value.
|
|
1004
|
-
*/
|
|
1005
|
-
readOnly?: boolean;
|
|
1006
|
-
/**
|
|
1007
|
-
* Sets the value. Use this in controlled components;
|
|
1008
|
-
*/
|
|
1009
|
-
value?: string;
|
|
1010
|
-
/**
|
|
1011
|
-
* Sets the initial value. Use this for an uncontrolled component;
|
|
1012
|
-
*/
|
|
1013
|
-
defaultValue?: string;
|
|
1014
|
-
/**
|
|
1015
|
-
* Used to target the input element in tests.
|
|
1016
|
-
*/
|
|
1017
|
-
"data-testid"?: string;
|
|
1018
|
-
onChange?: ChangeEventHandler<HTMLInputElement>;
|
|
1019
|
-
/**
|
|
1020
|
-
* Alters the appearance of the input field to indicate whether the input is valid or invalid.
|
|
1021
|
-
*/
|
|
1022
|
-
validity?: "valid" | "invalid";
|
|
1023
|
-
/**
|
|
1024
|
-
* Adds an icon to the input
|
|
1025
|
-
*
|
|
1026
|
-
* Defaults to the start of the input
|
|
1027
|
-
*/
|
|
1028
|
-
iconName?: OakIconName;
|
|
1029
|
-
/**
|
|
1030
|
-
* Position the icon at the end of the input
|
|
1031
|
-
*/
|
|
1032
|
-
isTrailingIcon?: boolean;
|
|
1033
|
-
iconColor?: OakCombinedColorToken;
|
|
1034
|
-
validBorderColor?: OakCombinedColorToken;
|
|
1035
|
-
invalidBorderColor?: OakCombinedColorToken;
|
|
1036
|
-
validIconColor?: OakCombinedColorToken;
|
|
1037
|
-
invalidIconColor?: OakCombinedColorToken;
|
|
1038
|
-
color?: OakCombinedColorToken;
|
|
1039
|
-
hoverBackground?: OakCombinedColorToken;
|
|
1040
|
-
background?: OakCombinedColorToken;
|
|
1041
|
-
borderColor?: OakCombinedColorToken;
|
|
1042
|
-
focusRingDropShadows?: OakDropShadowToken[];
|
|
1043
|
-
disabledBackgroundColor?: OakCombinedColorToken;
|
|
1044
|
-
readOnlyBorderColor?: OakCombinedColorToken;
|
|
1045
|
-
disabledColor?: OakCombinedColorToken;
|
|
1046
|
-
readOnlyColor?: OakCombinedColorToken;
|
|
1047
|
-
/**
|
|
1048
|
-
* The width of the surrounding div - the input and icon will fill this
|
|
1049
|
-
*/
|
|
1050
|
-
wrapperWidth?: SizeStyleProps["$width"];
|
|
1051
|
-
wrapperMaxWidth?: SizeStyleProps["$maxWidth"];
|
|
1052
|
-
iconAlt?: string;
|
|
1053
|
-
} & InternalTextInputProps;
|
|
1054
|
-
/**
|
|
1055
|
-
* Default input which can be extended to create specialised inputs.
|
|
1056
|
-
*/
|
|
1057
|
-
declare const OakTextInput: ({ type, borderColor, readOnlyBorderColor, focusRingDropShadows, background, hoverBackground, disabledBackgroundColor, color, disabledColor, readOnlyColor, validity, iconColor, validBorderColor, invalidBorderColor, validIconColor, invalidIconColor, iconName, iconAlt, isTrailingIcon, wrapperWidth, wrapperMaxWidth, ...props }: OakTextInputProps) => React__default.JSX.Element;
|
|
1058
|
-
|
|
1059
|
-
type InternalTooltipProps = OakFlexProps & {
|
|
1060
|
-
isOpen: boolean;
|
|
1061
|
-
tooltip: ReactNode;
|
|
1062
|
-
children?: ReactNode;
|
|
1063
|
-
};
|
|
1064
|
-
|
|
1065
|
-
/**
|
|
1066
|
-
* A tooltip with oven-ready styling
|
|
1067
|
-
*/
|
|
1068
|
-
declare const OakTooltip: ({ ...props }: Pick<InternalTooltipProps, "isOpen" | "tooltip" | "children">) => React__default.JSX.Element;
|
|
1069
|
-
|
|
1070
|
-
type OakBackLinkProps<C extends ElementType> = {
|
|
1071
|
-
as?: C;
|
|
1072
|
-
label?: string;
|
|
1073
|
-
} & ComponentPropsWithoutRef<C>;
|
|
1074
|
-
/**
|
|
1075
|
-
* Used to navigate the user back to the previous page in the app.
|
|
1076
|
-
*
|
|
1077
|
-
* Polymorphic rendering as any HTML element or component using `as` — defaults to `a`.
|
|
1078
|
-
*
|
|
1079
|
-
* E.g.
|
|
1080
|
-
*
|
|
1081
|
-
* * Default (Anchor) `<OakBackLink href="https://www.thenational.academy/" />`
|
|
1082
|
-
* * Button `<OakBackLink as="button" onClick={() => goBack(-1)} />`
|
|
1083
|
-
*/
|
|
1084
|
-
declare const OakBackLink: <C extends React__default.ElementType = "a">({ as, label, ...props }: OakBackLinkProps<C>) => React__default.JSX.Element;
|
|
1085
|
-
|
|
1086
|
-
type OakBulletListProps = {
|
|
1087
|
-
listItems: string[];
|
|
1088
|
-
} & OakSpanProps;
|
|
1089
|
-
declare const OakBulletList: (props: OakBulletListProps) => React__default.JSX.Element;
|
|
1090
|
-
|
|
1091
|
-
type InternalCardProps = OakFlexProps;
|
|
1092
|
-
|
|
1093
|
-
type InternalCardWithBackgroundElementProps = InternalCardProps & {
|
|
1094
|
-
backgroundElement: ReactElement;
|
|
1095
|
-
};
|
|
1096
|
-
|
|
1097
|
-
type InternalStyledSvgProps = {
|
|
1098
|
-
$fill?: ResponsiveValues<OakCombinedColorToken>;
|
|
1099
|
-
$stroke?: ResponsiveValues<OakCombinedColorToken>;
|
|
1100
|
-
$strokeWidth?: ResponsiveValues<OakBorderWidthToken>;
|
|
1101
|
-
};
|
|
1102
|
-
|
|
1103
|
-
type OakHandDrawnCardProps = Omit<InternalCardWithBackgroundElementProps, "backgroundElement"> & {
|
|
1104
|
-
fill?: InternalStyledSvgProps["$fill"];
|
|
1105
|
-
stroke?: InternalStyledSvgProps["$stroke"];
|
|
1106
|
-
strokeWidth?: InternalStyledSvgProps["$strokeWidth"];
|
|
1107
|
-
};
|
|
1108
|
-
/**
|
|
1109
|
-
* A flexed card with a hand-drawn filled background
|
|
1110
|
-
*
|
|
1111
|
-
* An optional `stroke` and `strokeWidth` can be applied to give the background a border
|
|
1112
|
-
*/
|
|
1113
|
-
declare const OakHandDrawnCard: ({ $pa, fill, stroke, strokeWidth, $width, ...props }: OakHandDrawnCardProps) => React__default.JSX.Element;
|
|
1114
|
-
|
|
1115
|
-
type OakHandDrawnBoxWithIconProps = Omit<OakHandDrawnCardProps, "children"> & {
|
|
1116
|
-
iconName: OakIconProps["iconName"];
|
|
1117
|
-
alt?: OakIconProps["alt"];
|
|
1118
|
-
iconColor?: OakIconProps["$colorFilter"];
|
|
1119
|
-
iconWidth?: OakIconProps["$width"];
|
|
1120
|
-
iconHeight?: OakIconProps["$height"];
|
|
1121
|
-
};
|
|
1122
|
-
/**
|
|
1123
|
-
* A hand-drawn card with an icon in the center
|
|
1124
|
-
*/
|
|
1125
|
-
declare const OakHandDrawnCardWithIcon: ({ iconName, iconColor, iconWidth, iconHeight, alt, $width, $height, $alignItems, $justifyContent, ...props }: OakHandDrawnBoxWithIconProps) => React__default.JSX.Element;
|
|
1126
|
-
|
|
1127
|
-
/**
|
|
1128
|
-
* Renders a tag with the text "New"
|
|
1129
|
-
*/
|
|
1130
|
-
declare const OakPromoTag: () => React__default.JSX.Element;
|
|
1131
|
-
|
|
1132
|
-
type OakInfoCardProps = {
|
|
1133
|
-
children: React__default.ReactNode;
|
|
1134
|
-
};
|
|
1135
|
-
type OakCardHeaderprops = {
|
|
1136
|
-
iconName: OakIconName;
|
|
1137
|
-
tag: OakHeadingTag;
|
|
1138
|
-
children: string;
|
|
1139
|
-
};
|
|
1140
|
-
declare const OakCardHeader: (props: OakCardHeaderprops) => React__default.JSX.Element;
|
|
1141
|
-
declare const OakLessonInfoCard: (props: OakInfoCardProps) => React__default.JSX.Element;
|
|
1142
|
-
declare const OakStaticMessageCard: (props: OakInfoCardProps) => React__default.JSX.Element;
|
|
1143
|
-
|
|
1144
|
-
type OakCollapsibleContentProps = ComponentProps<typeof OakFlex> & {
|
|
1145
|
-
/**
|
|
1146
|
-
* Whether the content is displayed or not
|
|
1147
|
-
*/
|
|
1148
|
-
isOpen: boolean;
|
|
1149
|
-
};
|
|
1150
|
-
/**
|
|
1151
|
-
* A filled scrollable box that can be hidden with the `isOpen` prop.
|
|
1152
|
-
* Useful for hiding content that is not immediately relevant
|
|
1153
|
-
*/
|
|
1154
|
-
declare const OakCollapsibleContent: ({ isOpen, children, id, ...rest }: OakCollapsibleContentProps) => React__default.JSX.Element;
|
|
1155
|
-
|
|
1156
|
-
type OakLinkProps = {
|
|
1157
|
-
iconName?: OakIconProps["iconName"];
|
|
1158
|
-
isTrailingIcon?: boolean;
|
|
1159
|
-
isLoading?: boolean;
|
|
1160
|
-
};
|
|
1161
|
-
type OakLinkComponent = <C extends React__default.ElementType = "a">(props: PolymorphicPropsWithRef<C> & OakLinkProps) => React__default.ReactNode;
|
|
1162
|
-
/**
|
|
1163
|
-
* A blue link with an optional icon and loading state.
|
|
1164
|
-
*
|
|
1165
|
-
* Defaulting to a `HTMLAnchorElement` this component is polymorphic and can be rendered as a button or any other element.
|
|
1166
|
-
*/
|
|
1167
|
-
declare const OakLink: OakLinkComponent;
|
|
1168
|
-
|
|
1169
|
-
type OakQuizCheckBoxProps = Omit<BaseCheckBoxProps, "defaultChecked"> & {
|
|
1170
|
-
feedback?: "correct" | "incorrect" | null;
|
|
1171
|
-
image?: React__default.JSX.Element;
|
|
1172
|
-
innerRef?: React__default.RefObject<HTMLInputElement>;
|
|
1173
|
-
displayValue?: string;
|
|
1174
|
-
};
|
|
1175
|
-
declare const OakQuizCheckBox: (props: OakQuizCheckBoxProps) => React__default.JSX.Element;
|
|
1176
|
-
|
|
1177
|
-
type OakQuizTextInputProps = Omit<OakTextInputProps, "validity" | "iconName" | "iconAlt" | "isTrailingIcon"> & {
|
|
1178
|
-
/**
|
|
1179
|
-
* Alters the appearance of the input to indicate whether or not a correct answer was given.
|
|
1180
|
-
* Also sets the input to read-only.
|
|
1181
|
-
*/
|
|
1182
|
-
feedback?: "correct" | "incorrect" | null;
|
|
1183
|
-
};
|
|
1184
|
-
declare const OakQuizTextInput: ({ feedback, readOnly, ...props }: OakQuizTextInputProps) => React__default.JSX.Element;
|
|
1185
|
-
|
|
1186
|
-
type OakQuizRadioButtonProps = OakRadioButtonProps & {
|
|
1187
|
-
feedback?: "correct" | "incorrect" | null;
|
|
1188
|
-
image?: JSX.Element;
|
|
1189
|
-
};
|
|
1190
|
-
declare const OakQuizRadioButton: (props: OakQuizRadioButtonProps) => React__default.JSX.Element;
|
|
1191
|
-
|
|
1192
|
-
type OakQuizHintProps = {
|
|
1193
|
-
/**
|
|
1194
|
-
* Some content to give as a hint to answer a question
|
|
1195
|
-
*/
|
|
1196
|
-
hint: ReactNode;
|
|
1197
|
-
};
|
|
1198
|
-
/**
|
|
1199
|
-
* Presents a button which will show a hint when clicked
|
|
1200
|
-
*/
|
|
1201
|
-
declare const OakQuizHint: ({ hint }: OakQuizHintProps) => React__default.JSX.Element;
|
|
1202
|
-
|
|
1203
|
-
type OakQuizFeedbackProps = {
|
|
1204
|
-
/**
|
|
1205
|
-
* Feedback for an answer
|
|
1206
|
-
* `partially-correct` can be used to feedback on a multi-answer MCQ where some
|
|
1207
|
-
* correct options were not selected and/or some incorrect answers were selected
|
|
1208
|
-
*/
|
|
1209
|
-
feedback: "correct" | "incorrect" | "partially-correct";
|
|
1210
|
-
/**
|
|
1211
|
-
* Some additional content to present with the feedback.
|
|
1212
|
-
* This is likely the correct answer(s) to the question or some praise.
|
|
1213
|
-
*
|
|
1214
|
-
* Only displayed when `feedback` has been applied.
|
|
1215
|
-
*/
|
|
1216
|
-
answerFeedback?: ReactNode;
|
|
1217
|
-
};
|
|
1218
|
-
/**
|
|
1219
|
-
* Gives feedback after a question has been answered
|
|
1220
|
-
*/
|
|
1221
|
-
declare const OakQuizFeedback: ({ feedback, answerFeedback, }: OakQuizFeedbackProps) => React__default.JSX.Element;
|
|
1222
|
-
|
|
1223
|
-
type OakLessonBottomNavProps = {
|
|
1224
|
-
children?: ReactNode;
|
|
1225
|
-
feedback?: OakQuizFeedbackProps["feedback"] | null;
|
|
1226
|
-
answerFeedback?: OakQuizFeedbackProps["answerFeedback"];
|
|
1227
|
-
hint?: OakQuizHintProps["hint"];
|
|
1228
|
-
};
|
|
1229
|
-
/**
|
|
1230
|
-
* Renders feedback for an answer and onward navigation buttons to continue the lesson
|
|
1231
|
-
*/
|
|
1232
|
-
declare const OakLessonBottomNav: ({ hint, feedback, answerFeedback, children, }: OakLessonBottomNavProps) => React__default.JSX.Element;
|
|
1233
|
-
|
|
1234
|
-
type LessonSectionName$1 = "intro" | "starter-quiz" | "video" | "exit-quiz";
|
|
1235
|
-
type OakLessonTopNavProps = {
|
|
1236
|
-
lessonSectionName: LessonSectionName$1;
|
|
1237
|
-
/**
|
|
1238
|
-
* Slot to render `OakBackLink` or similar
|
|
1239
|
-
*/
|
|
1240
|
-
backLinkSlot: ReactNode;
|
|
1241
|
-
heading: ReactNode;
|
|
1242
|
-
/**
|
|
1243
|
-
* Displayed at the mobile breakpoint where the counter is not rendered.
|
|
1244
|
-
* Provides alternative content for the counter/progress in the lesson.
|
|
1245
|
-
*/
|
|
1246
|
-
mobileSummary: ReactNode;
|
|
1247
|
-
/**
|
|
1248
|
-
* Slot to render `OakQuizCounter` or similar
|
|
1249
|
-
*/
|
|
1250
|
-
counterSlot?: ReactNode;
|
|
1251
|
-
};
|
|
1252
|
-
/**
|
|
1253
|
-
* Controls for navigating back and displaying progress in a lesson
|
|
1254
|
-
*/
|
|
1255
|
-
declare const OakLessonTopNav: ({ lessonSectionName, backLinkSlot, counterSlot, heading, mobileSummary, }: OakLessonTopNavProps) => React__default.JSX.Element;
|
|
1256
|
-
|
|
1257
|
-
type OakQuizCounterProps = {
|
|
1258
|
-
counter: number;
|
|
1259
|
-
total: number;
|
|
1260
|
-
};
|
|
1261
|
-
declare const OakQuizCounter: (props: OakQuizCounterProps) => React__default.JSX.Element;
|
|
1262
|
-
|
|
1263
|
-
type LessonSectionName = "overview" | "intro" | "starter-quiz" | "video" | "exit-quiz" | "review";
|
|
1264
|
-
type OakLessonLayoutProps = {
|
|
1265
|
-
lessonSectionName: LessonSectionName;
|
|
1266
|
-
topNavSlot: ReactNode;
|
|
1267
|
-
bottomNavSlot: ReactNode;
|
|
1268
|
-
children: ReactNode;
|
|
1269
|
-
};
|
|
1270
|
-
/**
|
|
1271
|
-
* Provides overall page layout and colours for the sections of a lesson.
|
|
1272
|
-
*/
|
|
1273
|
-
declare const OakLessonLayout: ({ lessonSectionName, topNavSlot, bottomNavSlot, children, }: OakLessonLayoutProps) => React__default.JSX.Element;
|
|
1274
|
-
|
|
1275
|
-
type OakHintButtonProps = {
|
|
1276
|
-
isOpen: boolean;
|
|
1277
|
-
onClick?: MouseEventHandler;
|
|
1278
|
-
isLoading?: boolean;
|
|
1279
|
-
disabled?: boolean;
|
|
1280
|
-
};
|
|
1281
|
-
declare const OakHintButton: (props: OakHintButtonProps) => React__default.JSX.Element;
|
|
1282
|
-
|
|
1283
|
-
type BaseOakLessonNavItemProps<C extends ElementType> = {
|
|
1284
|
-
as?: C;
|
|
1285
|
-
/**
|
|
1286
|
-
* Disable the section preventing navigation to it.
|
|
1287
|
-
*/
|
|
1288
|
-
disabled?: boolean;
|
|
1289
|
-
} & ComponentPropsWithoutRef<C>;
|
|
1290
|
-
type QuizSectionProps$1 = {
|
|
1291
|
-
lessonSectionName: "starter-quiz" | "exit-quiz";
|
|
1292
|
-
/**
|
|
1293
|
-
* The number of questions in the quiz
|
|
1294
|
-
*/
|
|
1295
|
-
numQuestions: number;
|
|
1296
|
-
/**
|
|
1297
|
-
* The number of questions answered correctly
|
|
1298
|
-
*/
|
|
1299
|
-
grade: number;
|
|
1300
|
-
};
|
|
1301
|
-
type VideoSectionProps$1 = {
|
|
1302
|
-
lessonSectionName: "video";
|
|
1303
|
-
};
|
|
1304
|
-
type IntroSectionProps$1 = {
|
|
1305
|
-
lessonSectionName: "intro";
|
|
1306
|
-
};
|
|
1307
|
-
type SectionProps = {
|
|
1308
|
-
/**
|
|
1309
|
-
* Denotes the progress in the lesson section
|
|
1310
|
-
*/
|
|
1311
|
-
progress: "not-started" | "in-progress" | "complete";
|
|
1312
|
-
} & (IntroSectionProps$1 | QuizSectionProps$1 | VideoSectionProps$1);
|
|
1313
|
-
type OakLessonNavItemProps<C extends ElementType> = BaseOakLessonNavItemProps<C> & SectionProps;
|
|
1314
|
-
/**
|
|
1315
|
-
* Enables navigation to the given section of a lesson as well as displaying current progress
|
|
1316
|
-
*/
|
|
1317
|
-
declare const OakLessonNavItem: <C extends React__default.ElementType = "a">(props: OakLessonNavItemProps<C>) => React__default.JSX.Element;
|
|
1318
|
-
|
|
1319
|
-
type BaseOakLessonReviewItemProps = {
|
|
1320
|
-
completed: boolean;
|
|
1321
|
-
};
|
|
1322
|
-
type QuizSectionProps = {
|
|
1323
|
-
lessonSectionName: "starter-quiz" | "exit-quiz";
|
|
1324
|
-
/**
|
|
1325
|
-
* The number of questions in the quiz
|
|
1326
|
-
*/
|
|
1327
|
-
numQuestions: number;
|
|
1328
|
-
/**
|
|
1329
|
-
* The number of questions answered correctly
|
|
1330
|
-
*/
|
|
1331
|
-
grade: number;
|
|
1332
|
-
};
|
|
1333
|
-
type VideoSectionProps = {
|
|
1334
|
-
lessonSectionName: "video";
|
|
1335
|
-
};
|
|
1336
|
-
type IntroSectionProps = {
|
|
1337
|
-
lessonSectionName: "intro";
|
|
1338
|
-
};
|
|
1339
|
-
type OakLessonReviewItemProps = BaseOakLessonReviewItemProps & (IntroSectionProps | QuizSectionProps | VideoSectionProps);
|
|
1340
|
-
declare const OakLessonReviewItem: (props: OakLessonReviewItemProps) => React__default.JSX.Element;
|
|
1341
|
-
|
|
1342
|
-
type OakSubjectIconProps = Pick<OakHandDrawnBoxWithIconProps, "iconName" | "fill" | "iconColor" | "alt"> & {
|
|
1343
|
-
iconName: `subject-${string}`;
|
|
1344
|
-
showPromoTag?: boolean;
|
|
1345
|
-
};
|
|
1346
|
-
/**
|
|
1347
|
-
* A large illuminated hand-drawn box with a subject icon in the center
|
|
1348
|
-
*
|
|
1349
|
-
* Accepts an optional `showPromoTag` prop to display a "New" tag in the top left corner
|
|
1350
|
-
*/
|
|
1351
|
-
declare const OakSubjectIcon: ({ showPromoTag, ...rest }: OakSubjectIconProps) => React__default.JSX.Element;
|
|
1352
|
-
|
|
1353
|
-
type Url = string | UrlObject;
|
|
1354
|
-
type OakPrimaryNavItemProps = {
|
|
1355
|
-
href: Url;
|
|
1356
|
-
isCurrent?: boolean;
|
|
1357
|
-
shallow?: boolean;
|
|
1358
|
-
children: ReactNode;
|
|
1359
|
-
} & OakPrimaryButtonProps & OakPrimaryInvertedButtonProps;
|
|
1360
|
-
declare const OakPrimaryNavItem: ({ href, isCurrent, shallow, children, }: OakPrimaryNavItemProps) => React__default.JSX.Element;
|
|
1361
|
-
|
|
1362
|
-
type OakPrimaryNavProps = {
|
|
1363
|
-
ariaLabel?: string;
|
|
1364
|
-
navItems: OakPrimaryNavItemProps[];
|
|
1365
|
-
};
|
|
1366
|
-
declare const OakPrimaryNav: ({ ariaLabel, navItems }: OakPrimaryNavProps) => React__default.JSX.Element;
|
|
1367
|
-
|
|
1368
|
-
type OakLessonVideoTranscriptProps = {
|
|
1369
|
-
/**
|
|
1370
|
-
* The transcript content
|
|
1371
|
-
*/
|
|
1372
|
-
children: ReactNode;
|
|
1373
|
-
/**
|
|
1374
|
-
* The id of the collapsible content element. This is used to link the button to the content
|
|
1375
|
-
*/
|
|
1376
|
-
id: string;
|
|
1377
|
-
/**
|
|
1378
|
-
* A control to toggle the video to display sign language
|
|
1379
|
-
*/
|
|
1380
|
-
signLanguageControl?: ReactNode;
|
|
1381
|
-
};
|
|
1382
|
-
/**
|
|
1383
|
-
* Display a togglable video transcript with a slot to display a sign language control
|
|
1384
|
-
*/
|
|
1385
|
-
declare const OakLessonVideoTranscript: ({ children, id, signLanguageControl, }: OakLessonVideoTranscriptProps) => React__default.JSX.Element;
|
|
1386
|
-
|
|
1387
|
-
export { HeadingTagComponent, type OakAllSpacingToken, OakBackLink, type OakBackLinkProps, type OakBorderRadiusToken, type OakBorderWidthToken, OakBox, type OakBoxProps, OakBulletList, type OakBulletListProps, OakCardHeader, type OakCardHeaderprops, OakCheckBox, type OakCheckBoxProps, OakCloudinaryConfigProvider, OakCloudinaryImage, type OakCloudinaryImageProps, OakCollapsibleContent, type OakCollapsibleContentProps, type OakColorToken, type OakCombinedColorToken, type OakCombinedSpacingToken, type OakDropShadowToken, OakFieldError, type OakFieldErrorProps, OakFlex, type OakFlexProps, type OakFontSizeToken, type OakFontToken, OakForm, type OakFormProps, OakGrid, OakGridArea, type OakGridAreaProps, type OakGridProps, type OakHandDrawnBoxWithIconProps, OakHandDrawnCard, type OakHandDrawnCardProps, OakHandDrawnCardWithIcon, OakHeading, type OakHeadingProps, type OakHeadingTag, OakHintButton, type OakHintButtonProps, OakIcon, type OakIconName, type OakIconProps, OakImage, type OakImageProps, type OakInfoCardProps, type OakInnerPaddingToken, OakLI, type OakLIProps, OakLabel, type OakLabelProps, OakLessonBottomNav, type OakLessonBottomNavProps, OakLessonInfoCard, OakLessonLayout, type OakLessonLayoutProps, OakLessonNavItem, type OakLessonNavItemProps, OakLessonReviewItem, type OakLessonReviewItemProps, OakLessonTopNav, type OakLessonTopNavProps, OakLessonVideoTranscript, OakLink, type OakLinkProps, OakLoadingSpinner, type OakLoadingSpinnerProps, OakMaxWidth, OakOL, type OakOLProps, type OakOpacityToken, OakP, type OakPProps, OakPrimaryButton, type OakPrimaryButtonProps, OakPrimaryInvertedButton, type OakPrimaryInvertedButtonProps, OakPrimaryNav, OakPrimaryNavItem, type OakPrimaryNavItemProps, type OakPrimaryNavProps, OakPromoTag, OakQuizCheckBox, type OakQuizCheckBoxProps, OakQuizCounter, type OakQuizCounterProps, OakQuizFeedback, type OakQuizFeedbackProps, OakQuizHint, type OakQuizHintProps, OakQuizRadioButton, type OakQuizRadioButtonProps, OakQuizTextInput, OakRadioButton, OakRadioGroup, OakRoundIcon, type OakRoundIconProps, OakSecondaryButton, type OakSecondaryButtonProps, type OakSpaceBetweenToken, OakSpan, type OakSpanProps, OakStaticMessageCard, OakSubjectIcon, type OakSubjectIconProps, OakTertiaryButton, OakTextInput, type OakTextInputProps, type OakTheme, OakThemeProvider, type OakThemeProviderProps, OakTooltip, type OakTransitionToken, OakTypography, type OakTypographyProps, OakUL, type OakULProps, type OakUiRoleToken, isValidIconName, oakAllSpacingTokens, oakBorderRadiusTokens, oakBorderWidthTokens, oakBoxCss, oakColorTokens, oakDefaultTheme, oakDropShadowTokens, oakFontSizeTokens, oakFontTokens, oakHeadingTags, oakIconNames, oakInnerPaddingTokens, oakOpacityTokens, oakSpaceBetweenTokens, oakTransitionTokens, oakUiRoleTokens };
|