@bbl-digital/snorre 4.0.7 → 4.0.9
Sign up to get free protection for your applications and to get access to all the features.
- package/dist/bundle.js +109 -15
- package/esm/core/Alert/Alert.stories.js +17 -17
- package/esm/core/Alert/index.js +32 -2
- package/esm/core/AppLoader/AppLoader.stories.js +2 -3
- package/esm/core/AppLoader/index.js +9 -1
- package/esm/core/Banner/Banner.stories.js +26 -18
- package/esm/core/Banner/index.js +4 -1
- package/esm/core/Modal/Modal.stories.js +56 -39
- package/esm/core/Modal/index.js +29 -1
- package/esm/core/Tag/Tag.stories.js +72 -71
- package/esm/core/Tag/index.js +4 -0
- package/esm/index.js +2 -1
- package/esm/shared/components/VisuallyHidden/index.js +22 -0
- package/lib/core/Alert/Alert.stories.d.ts +10 -23
- package/lib/core/Alert/Alert.stories.d.ts.map +1 -1
- package/lib/core/Alert/Alert.stories.js +17 -17
- package/lib/core/Alert/index.d.ts +2 -1
- package/lib/core/Alert/index.d.ts.map +1 -1
- package/lib/core/Alert/index.js +32 -2
- package/lib/core/AppLoader/AppLoader.stories.d.ts +6 -7
- package/lib/core/AppLoader/AppLoader.stories.d.ts.map +1 -1
- package/lib/core/AppLoader/AppLoader.stories.js +2 -3
- package/lib/core/AppLoader/index.d.ts +2 -1
- package/lib/core/AppLoader/index.d.ts.map +1 -1
- package/lib/core/AppLoader/index.js +9 -1
- package/lib/core/Autocomplete/styles.d.ts +26 -1
- package/lib/core/Autocomplete/styles.d.ts.map +1 -1
- package/lib/core/Banner/Banner.stories.d.ts +10 -23
- package/lib/core/Banner/Banner.stories.d.ts.map +1 -1
- package/lib/core/Banner/Banner.stories.js +26 -18
- package/lib/core/Banner/index.d.ts +2 -1
- package/lib/core/Banner/index.d.ts.map +1 -1
- package/lib/core/Banner/index.js +4 -1
- package/lib/core/Box/styles.d.ts +25 -1
- package/lib/core/Box/styles.d.ts.map +1 -1
- package/lib/core/CollapseList/styles.d.ts +26 -1
- package/lib/core/CollapseList/styles.d.ts.map +1 -1
- package/lib/core/FileInput/styles.d.ts +25 -1
- package/lib/core/FileInput/styles.d.ts.map +1 -1
- package/lib/core/InfoButton/styles.d.ts +25 -1
- package/lib/core/InfoButton/styles.d.ts.map +1 -1
- package/lib/core/Modal/Modal.stories.d.ts +11 -23
- package/lib/core/Modal/Modal.stories.d.ts.map +1 -1
- package/lib/core/Modal/Modal.stories.js +56 -39
- package/lib/core/Modal/index.d.ts +3 -2
- package/lib/core/Modal/index.d.ts.map +1 -1
- package/lib/core/Modal/index.js +29 -1
- package/lib/core/Tag/Tag.stories.d.ts +19 -59
- package/lib/core/Tag/Tag.stories.d.ts.map +1 -1
- package/lib/core/Tag/Tag.stories.js +72 -71
- package/lib/core/Tag/index.d.ts +2 -0
- package/lib/core/Tag/index.d.ts.map +1 -1
- package/lib/core/Tag/index.js +4 -0
- package/lib/core/private/ButtonOrLink.d.ts +2 -1
- package/lib/core/private/ButtonOrLink.d.ts.map +1 -1
- package/lib/index.d.ts +2 -1
- package/lib/index.d.ts.map +1 -1
- package/lib/index.js +2 -1
- package/lib/layout/Footer/FooterButton/styles.d.ts +26 -1
- package/lib/layout/Footer/FooterButton/styles.d.ts.map +1 -1
- package/lib/layout/Footer/FooterLink/styles.d.ts +26 -1
- package/lib/layout/Footer/FooterLink/styles.d.ts.map +1 -1
- package/lib/layout/Menu/MenuTop/styles.d.ts +25 -1
- package/lib/layout/Menu/MenuTop/styles.d.ts.map +1 -1
- package/lib/shared/components/VisuallyHidden/index.d.ts +11 -0
- package/lib/shared/components/VisuallyHidden/index.d.ts.map +1 -0
- package/lib/shared/components/VisuallyHidden/index.js +22 -0
- package/lib/shared/types/Accessibility.d.ts +2 -2
- package/lib/shared/types/Accessibility.d.ts.map +1 -1
- package/package.json +1 -1
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"styles.d.ts","sourceRoot":"","sources":["../../../src/packages/core/CollapseList/styles.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,SAAS,EAAE,MAAM,uBAAuB,CAAA;AAGjD,eAAO,MAAM,cAAc
|
1
|
+
{"version":3,"file":"styles.d.ts","sourceRoot":"","sources":["../../../src/packages/core/CollapseList/styles.ts"],"names":[],"mappings":";AAEA,OAAO,EAAE,SAAS,EAAE,MAAM,uBAAuB,CAAA;AAGjD,eAAO,MAAM,cAAc;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;UAM1B,CAAA;AAED,eAAO,MAAM,MAAM;qBACA,SAAS;CAyB3B,CAAA"}
|
@@ -19,7 +19,31 @@ export declare const Document: import("@emotion/styled").StyledComponent<{
|
|
19
19
|
theme?: import("@emotion/react").Theme | undefined;
|
20
20
|
as?: import("react").ElementType<any> | undefined;
|
21
21
|
}, import("react").DetailedHTMLProps<import("react").HTMLAttributes<HTMLSpanElement>, HTMLSpanElement>, {}>;
|
22
|
-
export declare const Delete: import("@emotion/styled").StyledComponent<import("
|
22
|
+
export declare const Delete: import("@emotion/styled").StyledComponent<import("../../shared/types/Accessibility").AccessibilityProps & {
|
23
|
+
[prop: string]: unknown;
|
24
|
+
afterIcon?: import("react").ReactNode;
|
25
|
+
beforeIcon?: import("react").ReactNode;
|
26
|
+
children: string | number | boolean | import("react").ReactElement<any, string | import("react").JSXElementConstructor<any>> | Iterable<import("react").ReactNode> | import("react").ReactPortal;
|
27
|
+
disabled?: boolean | undefined;
|
28
|
+
href?: string | undefined;
|
29
|
+
loading?: boolean | undefined;
|
30
|
+
onClick?: ((event: import("react").MouseEvent<import("../private/ButtonOrLink").ButtonOrLinkTypes, MouseEvent>) => void) | undefined;
|
31
|
+
onMouseUp?: ((event: import("react").MouseEvent<import("../private/ButtonOrLink").ButtonOrLinkTypes, MouseEvent>) => void) | undefined;
|
32
|
+
onKeyPress?: {
|
33
|
+
key: string;
|
34
|
+
action: (event: KeyboardEvent) => void;
|
35
|
+
} | undefined;
|
36
|
+
onEnterKeyPress?: ((event: KeyboardEvent) => void) | undefined;
|
37
|
+
onEscapeKeyPress?: ((event: KeyboardEvent) => void) | undefined;
|
38
|
+
openInNewWindow?: boolean | undefined;
|
39
|
+
rel?: string | undefined;
|
40
|
+
trackingEvent?: string | undefined;
|
41
|
+
trackingName?: string | undefined;
|
42
|
+
type?: "button" | "reset" | "submit" | undefined;
|
43
|
+
target?: string | undefined;
|
44
|
+
download?: any;
|
45
|
+
tabIndex?: number | undefined;
|
46
|
+
} & {
|
23
47
|
success?: boolean | undefined;
|
24
48
|
danger?: boolean | undefined;
|
25
49
|
highlight?: boolean | undefined;
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"styles.d.ts","sourceRoot":"","sources":["../../../src/packages/core/FileInput/styles.ts"],"names":[],"mappings":";AAKA,eAAO,MAAM,OAAO;;;yGAGnB,CAAA;AAED,eAAO,MAAM,WAAW;;;yGAAe,CAAA;AAEvC,eAAO,MAAM,YAAY;;;yGAIxB,CAAA;AACD,eAAO,MAAM,eAAe;;;yGAI3B,CAAA;AAED,eAAO,MAAM,QAAQ;;;2GAcpB,CAAA;AAED,eAAO,MAAM,MAAM
|
1
|
+
{"version":3,"file":"styles.d.ts","sourceRoot":"","sources":["../../../src/packages/core/FileInput/styles.ts"],"names":[],"mappings":";AAKA,eAAO,MAAM,OAAO;;;yGAGnB,CAAA;AAED,eAAO,MAAM,WAAW;;;yGAAe,CAAA;AAEvC,eAAO,MAAM,YAAY;;;yGAIxB,CAAA;AACD,eAAO,MAAM,eAAe;;;yGAI3B,CAAA;AAED,eAAO,MAAM,QAAQ;;;2GAcpB,CAAA;AAED,eAAO,MAAM,MAAM;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;UAOlB,CAAA;AAED,eAAO,MAAM,UAAU;;;;WACJ,MAAM;;qHAsBxB,CAAA;AAED,eAAO,MAAM,aAAa;;;2GAOzB,CAAA;AAED,eAAO,MAAM,WAAW;;;kHAEvB,CAAA;AAED,eAAO,MAAM,IAAI;;;;;2GAOhB,CAAA;AAED,eAAO,MAAM,KAAK;;;2GAKjB,CAAA;AAED,eAAO,MAAM,YAAY;;;yGAMxB,CAAA"}
|
@@ -1,5 +1,29 @@
|
|
1
1
|
/// <reference types="react" />
|
2
|
-
export declare const StyledButton: import("@emotion/styled").StyledComponent<import("
|
2
|
+
export declare const StyledButton: import("@emotion/styled").StyledComponent<import("../../shared/types/Accessibility").AccessibilityProps & {
|
3
|
+
[prop: string]: unknown;
|
4
|
+
afterIcon?: import("react").ReactNode;
|
5
|
+
beforeIcon?: import("react").ReactNode;
|
6
|
+
children: string | number | boolean | import("react").ReactElement<any, string | import("react").JSXElementConstructor<any>> | Iterable<import("react").ReactNode> | import("react").ReactPortal;
|
7
|
+
disabled?: boolean | undefined;
|
8
|
+
href?: string | undefined;
|
9
|
+
loading?: boolean | undefined;
|
10
|
+
onClick?: ((event: import("react").MouseEvent<import("../private/ButtonOrLink").ButtonOrLinkTypes, MouseEvent>) => void) | undefined;
|
11
|
+
onMouseUp?: ((event: import("react").MouseEvent<import("../private/ButtonOrLink").ButtonOrLinkTypes, MouseEvent>) => void) | undefined;
|
12
|
+
onKeyPress?: {
|
13
|
+
key: string;
|
14
|
+
action: (event: KeyboardEvent) => void;
|
15
|
+
} | undefined;
|
16
|
+
onEnterKeyPress?: ((event: KeyboardEvent) => void) | undefined;
|
17
|
+
onEscapeKeyPress?: ((event: KeyboardEvent) => void) | undefined;
|
18
|
+
openInNewWindow?: boolean | undefined;
|
19
|
+
rel?: string | undefined;
|
20
|
+
trackingEvent?: string | undefined;
|
21
|
+
trackingName?: string | undefined;
|
22
|
+
type?: "button" | "reset" | "submit" | undefined;
|
23
|
+
target?: string | undefined;
|
24
|
+
download?: any;
|
25
|
+
tabIndex?: number | undefined;
|
26
|
+
} & {
|
3
27
|
success?: boolean | undefined;
|
4
28
|
danger?: boolean | undefined;
|
5
29
|
highlight?: boolean | undefined;
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"styles.d.ts","sourceRoot":"","sources":["../../../src/packages/core/InfoButton/styles.ts"],"names":[],"mappings":";AAKA,eAAO,MAAM,YAAY
|
1
|
+
{"version":3,"file":"styles.d.ts","sourceRoot":"","sources":["../../../src/packages/core/InfoButton/styles.ts"],"names":[],"mappings":";AAKA,eAAO,MAAM,YAAY;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;UAOxB,CAAA;AAED,eAAO,MAAM,MAAM;;;;;;mBAmFF,MAAM,SAAS,MAAM;CAQrC,CAAA;AAED,eAAO,MAAM,OAAO;;;yGAiCnB,CAAA;AAED,eAAO,MAAM,OAAO;;;2GAInB,CAAA"}
|
@@ -1,24 +1,12 @@
|
|
1
|
-
|
2
|
-
|
3
|
-
|
4
|
-
export
|
5
|
-
|
6
|
-
|
7
|
-
|
8
|
-
export declare const
|
9
|
-
|
10
|
-
|
11
|
-
|
12
|
-
export declare const Dynamic: {
|
13
|
-
render: () => import("react").JSX.Element;
|
14
|
-
name: string;
|
15
|
-
};
|
16
|
-
export declare const Scrollable: {
|
17
|
-
render: () => import("react").JSX.Element;
|
18
|
-
name: string;
|
19
|
-
};
|
20
|
-
export declare const Fullscreeen: {
|
21
|
-
render: () => import("react").JSX.Element;
|
22
|
-
name: string;
|
23
|
-
};
|
1
|
+
import Modal from '.';
|
2
|
+
import { Meta, StoryObj } from '@storybook/react';
|
3
|
+
declare const meta: Meta<typeof Modal>;
|
4
|
+
export default meta;
|
5
|
+
declare type Story = StoryObj<typeof Modal>;
|
6
|
+
export declare const Default: Story;
|
7
|
+
export declare const Collapse: Story;
|
8
|
+
export declare const Dynamic: Story;
|
9
|
+
export declare const Scrollable: Story;
|
10
|
+
export declare const Accessible: Story;
|
11
|
+
export declare const Fullscreen: Story;
|
24
12
|
//# sourceMappingURL=Modal.stories.d.ts.map
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"Modal.stories.d.ts","sourceRoot":"","sources":["../../../src/packages/core/Modal/Modal.stories.tsx"],"names":[],"mappings":"
|
1
|
+
{"version":3,"file":"Modal.stories.d.ts","sourceRoot":"","sources":["../../../src/packages/core/Modal/Modal.stories.tsx"],"names":[],"mappings":"AAGA,OAAO,KAAK,MAAM,GAAG,CAAA;AACrB,OAAO,EAAE,IAAI,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAA;AAGjD,QAAA,MAAM,IAAI,EAAE,IAAI,CAAC,OAAO,KAAK,CAGpB,CAAA;AACT,eAAe,IAAI,CAAA;AAEnB,aAAK,KAAK,GAAG,QAAQ,CAAC,OAAO,KAAK,CAAC,CAAA;AAEnC,eAAO,MAAM,OAAO,EAAE,KAoBrB,CAAA;AAED,eAAO,MAAM,QAAQ,EAAE,KAetB,CAAA;AAED,eAAO,MAAM,OAAO,EAAE,KAoBrB,CAAA;AAED,eAAO,MAAM,UAAU,EAAE,KAsIxB,CAAA;AAED,eAAO,MAAM,UAAU,EAAE,KAUxB,CAAA;AAED,eAAO,MAAM,UAAU,EAAE,KAUxB,CAAA"}
|
@@ -2,22 +2,16 @@ import Header from '../Header';
|
|
2
2
|
import Text from '../Text';
|
3
3
|
import Button from '../Button';
|
4
4
|
import Modal from '.';
|
5
|
+
import { Fragment } from 'react';
|
5
6
|
import { jsx as _jsx } from "react/jsx-runtime";
|
6
7
|
import { jsxs as _jsxs } from "react/jsx-runtime";
|
7
|
-
|
8
|
+
const meta = {
|
8
9
|
title: 'Core/Modal',
|
9
|
-
component: Modal
|
10
|
-
parameters: {
|
11
|
-
docs: {
|
12
|
-
story: {
|
13
|
-
inline: false,
|
14
|
-
height: '500px'
|
15
|
-
}
|
16
|
-
}
|
17
|
-
}
|
10
|
+
component: Modal
|
18
11
|
};
|
12
|
+
export default meta;
|
19
13
|
export const Default = {
|
20
|
-
|
14
|
+
args: {
|
21
15
|
open: true,
|
22
16
|
onClose: () => console.log('closed'),
|
23
17
|
header: /*#__PURE__*/_jsx(Header, {
|
@@ -36,11 +30,11 @@ export const Default = {
|
|
36
30
|
children: /*#__PURE__*/_jsx(Text, {
|
37
31
|
children: "Her kommer masse stuff. Her kommer masse stuff. Her kommer masse stuff.Her kommer masse stuff."
|
38
32
|
})
|
39
|
-
}
|
33
|
+
},
|
40
34
|
name: 'Default'
|
41
35
|
};
|
42
36
|
export const Collapse = {
|
43
|
-
|
37
|
+
args: {
|
44
38
|
open: true,
|
45
39
|
onClose: () => console.log('closed'),
|
46
40
|
onCollapse: () => console.log('collapse'),
|
@@ -54,14 +48,13 @@ export const Collapse = {
|
|
54
48
|
children: /*#__PURE__*/_jsx(Text, {
|
55
49
|
children: "Hello there! I am Modal, i can be collapsed, but not in storybook though, it has to be done from parent"
|
56
50
|
})
|
57
|
-
}
|
51
|
+
},
|
58
52
|
name: 'Collapse'
|
59
53
|
};
|
60
54
|
export const Dynamic = {
|
61
|
-
|
55
|
+
args: {
|
62
56
|
open: true,
|
63
57
|
onClose: () => console.log('closed'),
|
64
|
-
width: '600px',
|
65
58
|
header: /*#__PURE__*/_jsx(Header, {
|
66
59
|
level: 3,
|
67
60
|
children: "Her kommer en header"
|
@@ -69,18 +62,17 @@ export const Dynamic = {
|
|
69
62
|
actionButton: /*#__PURE__*/_jsx(Button, {
|
70
63
|
children: "Save changes"
|
71
64
|
}),
|
65
|
+
width: '600px',
|
72
66
|
children: /*#__PURE__*/_jsx(Text, {
|
73
|
-
children: "Her kommer masse stuff. Her kommer masse stuff. Her kommer masse stuff.Her kommer masse stuff.Her kommer masse stuff. Her kommer masse stuff. Her kommer masse stuff.Her kommer masse stuff.Her kommer masse stuff. Her kommer masse stuff. Her kommer masse stuff.Her kommer masse stuff.Her kommer masse stuff. Her kommer masse stuff.
|
67
|
+
children: "Her kommer masse stuff. Her kommer masse stuff. Her kommer masse stuff.Her kommer masse stuff.Her kommer masse stuff. Her kommer masse stuff. Her kommer masse stuff.Her kommer masse stuff.Her kommer masse stuff. Her kommer masse stuff. Her kommer masse stuff.Her kommer masse stuff.Her kommer masse stuff. Her kommer masse stuff.Her kommer masse stuff.Her kommer masse stuff. Her kommer masse stuff.Her kommer masse stuff."
|
74
68
|
})
|
75
|
-
}
|
69
|
+
},
|
76
70
|
name: 'Dynamic'
|
77
71
|
};
|
78
72
|
export const Scrollable = {
|
79
|
-
|
73
|
+
args: {
|
80
74
|
open: true,
|
81
75
|
onClose: () => console.log('closed'),
|
82
|
-
disableScrollableContent: false,
|
83
|
-
width: '100%',
|
84
76
|
header: /*#__PURE__*/_jsx(Header, {
|
85
77
|
level: 3,
|
86
78
|
children: "Scrollable modal"
|
@@ -88,30 +80,55 @@ export const Scrollable = {
|
|
88
80
|
actionButton: /*#__PURE__*/_jsx(Button, {
|
89
81
|
children: "Button is allways shown"
|
90
82
|
}),
|
91
|
-
|
92
|
-
|
93
|
-
|
94
|
-
children: [
|
95
|
-
|
96
|
-
|
97
|
-
|
98
|
-
|
99
|
-
|
100
|
-
|
83
|
+
disableScrollableContent: false,
|
84
|
+
width: '100%',
|
85
|
+
children: /*#__PURE__*/_jsxs(Fragment, {
|
86
|
+
children: [/*#__PURE__*/_jsxs(Text, {
|
87
|
+
children: ["Her kommer masse stuff. Her kommer masse stuff.", /*#__PURE__*/_jsx("br", {}), "Her kommer masse stuff.", /*#__PURE__*/_jsx("br", {}), "Her kommer masse stuff.", /*#__PURE__*/_jsx("br", {}), "Her kommer masse stuff.", /*#__PURE__*/_jsx("br", {}), /*#__PURE__*/_jsx("br", {}), /*#__PURE__*/_jsx("br", {}), "Her kommer masse", /*#__PURE__*/_jsx("br", {}), "stuff. Her kommer masse", /*#__PURE__*/_jsx("br", {}), "stuff.Her kommer masse stuff", /*#__PURE__*/_jsx("br", {}), ".Her kommer masse", /*#__PURE__*/_jsx("br", {}), "stuff. Her", /*#__PURE__*/_jsx("br", {}), "kommer", /*#__PURE__*/_jsx("br", {}), "masse", /*#__PURE__*/_jsx("br", {}), "stuff. Her kommer masse stuff.Her kommer masse stuff.Her kommer masse stuff. Her kommer masse stuff. Her kommer masse stuff.Her kommer masse stuff.Her kommer masse stuff. Her kommer masse stuff. Her kommer masse stuff.Her kommer masse stuff."]
|
88
|
+
}), /*#__PURE__*/_jsxs(Text, {
|
89
|
+
children: ["Her kommer masse stuff. Her kommer masse stuff.", /*#__PURE__*/_jsx("br", {}), "Her kommer masse stuff.", /*#__PURE__*/_jsx("br", {}), "Her kommer masse stuff.", /*#__PURE__*/_jsx("br", {}), "Her kommer masse stuff.", /*#__PURE__*/_jsx("br", {}), /*#__PURE__*/_jsx("br", {}), /*#__PURE__*/_jsx("br", {}), "Her kommer masse", /*#__PURE__*/_jsx("br", {}), "stuff. Her kommer masse", /*#__PURE__*/_jsx("br", {}), "stuff.Her kommer masse stuff", /*#__PURE__*/_jsx("br", {}), ".Her kommer masse", /*#__PURE__*/_jsx("br", {}), "stuff. Her", /*#__PURE__*/_jsx("br", {}), "kommer", /*#__PURE__*/_jsx("br", {}), "masse", /*#__PURE__*/_jsx("br", {}), "stuff. Her kommer masse stuff.Her kommer masse stuff.Her kommer masse stuff. Her kommer masse stuff. Her kommer masse stuff.Her kommer masse stuff.Her kommer masse stuff. Her kommer masse stuff. Her kommer masse stuff.Her kommer masse stuff."]
|
90
|
+
}), /*#__PURE__*/_jsxs(Text, {
|
91
|
+
children: ["Her kommer masse stuff. Her kommer masse stuff.", /*#__PURE__*/_jsx("br", {}), "Her kommer masse stuff.", /*#__PURE__*/_jsx("br", {}), "Her kommer masse stuff.", /*#__PURE__*/_jsx("br", {}), "Her kommer masse stuff.", /*#__PURE__*/_jsx("br", {}), /*#__PURE__*/_jsx("br", {}), /*#__PURE__*/_jsx("br", {}), "Her kommer masse", /*#__PURE__*/_jsx("br", {}), "stuff. Her kommer masse", /*#__PURE__*/_jsx("br", {}), "stuff.Her kommer masse stuff", /*#__PURE__*/_jsx("br", {}), ".Her kommer masse", /*#__PURE__*/_jsx("br", {}), "stuff. Her", /*#__PURE__*/_jsx("br", {}), "kommer", /*#__PURE__*/_jsx("br", {}), "masse", /*#__PURE__*/_jsx("br", {}), "stuff. Her kommer masse stuff.Her kommer masse stuff.Her kommer masse stuff. Her kommer masse stuff. Her kommer masse stuff.Her kommer masse stuff.Her kommer masse stuff. Her kommer masse stuff. Her kommer masse stuff.Her kommer masse stuff."]
|
92
|
+
}), /*#__PURE__*/_jsxs(Text, {
|
93
|
+
children: ["Her kommer masse stuff. Her kommer masse stuff.", /*#__PURE__*/_jsx("br", {}), "Her kommer masse stuff.", /*#__PURE__*/_jsx("br", {}), "Her kommer masse stuff.", /*#__PURE__*/_jsx("br", {}), "Her kommer masse stuff.", /*#__PURE__*/_jsx("br", {}), /*#__PURE__*/_jsx("br", {}), /*#__PURE__*/_jsx("br", {}), "Her kommer masse", /*#__PURE__*/_jsx("br", {}), "stuff. Her kommer masse", /*#__PURE__*/_jsx("br", {}), "stuff.Her kommer masse stuff", /*#__PURE__*/_jsx("br", {}), ".Her kommer masse", /*#__PURE__*/_jsx("br", {}), "stuff. Her", /*#__PURE__*/_jsx("br", {}), "kommer", /*#__PURE__*/_jsx("br", {}), "masse", /*#__PURE__*/_jsx("br", {}), "stuff. Her kommer masse stuff.Her kommer masse stuff.Her kommer masse stuff. Her kommer masse stuff. Her kommer masse stuff.Her kommer masse stuff.Her kommer masse stuff. Her kommer masse stuff. Her kommer masse stuff.Her kommer masse stuff."]
|
94
|
+
})]
|
95
|
+
})
|
96
|
+
},
|
101
97
|
name: 'Scrollable'
|
102
98
|
};
|
103
|
-
export const
|
104
|
-
|
99
|
+
export const Accessible = {
|
100
|
+
args: {
|
105
101
|
open: true,
|
106
|
-
toggleFullscreen: true,
|
107
102
|
onClose: () => console.log('closed'),
|
108
103
|
header: /*#__PURE__*/_jsx(Header, {
|
109
104
|
level: 3,
|
110
|
-
children: "
|
105
|
+
children: "Accessible modal"
|
106
|
+
}),
|
107
|
+
actionButton: /*#__PURE__*/_jsx(Button, {
|
108
|
+
children: "Ok"
|
111
109
|
}),
|
112
110
|
children: /*#__PURE__*/_jsx(Text, {
|
113
|
-
children: "
|
114
|
-
})
|
115
|
-
|
116
|
-
|
111
|
+
children: "With some content"
|
112
|
+
}),
|
113
|
+
'aria-label': 'This has a custom label'
|
114
|
+
},
|
115
|
+
name: 'AccessibleModal'
|
116
|
+
};
|
117
|
+
export const Fullscreen = {
|
118
|
+
args: {
|
119
|
+
open: true,
|
120
|
+
onClose: () => console.log('closed'),
|
121
|
+
header: /*#__PURE__*/_jsx(Header, {
|
122
|
+
level: 3,
|
123
|
+
children: "Fullscreen modal"
|
124
|
+
}),
|
125
|
+
actionButton: /*#__PURE__*/_jsx(Button, {
|
126
|
+
children: "Ok"
|
127
|
+
}),
|
128
|
+
children: /*#__PURE__*/_jsx(Text, {
|
129
|
+
children: "With some content"
|
130
|
+
}),
|
131
|
+
toggleFullscreen: true
|
132
|
+
},
|
133
|
+
name: 'Fullscreen'
|
117
134
|
};
|
@@ -1,7 +1,8 @@
|
|
1
1
|
/** @jsxImportSource @emotion/react */
|
2
2
|
import React from 'react';
|
3
|
+
import { AccessibilityProps } from '../..';
|
3
4
|
import { SerializedStyles } from '@emotion/react';
|
4
|
-
interface IProps {
|
5
|
+
interface IProps extends AccessibilityProps {
|
5
6
|
/** Property for open modal */
|
6
7
|
open?: boolean;
|
7
8
|
/** React node for header component */
|
@@ -39,7 +40,7 @@ interface IProps {
|
|
39
40
|
/** Children */
|
40
41
|
children?: React.ReactNode | React.ReactNode[];
|
41
42
|
}
|
42
|
-
declare function Modal({ open, header, actionButton, width, children, disableOutsideClick, hideCloseButton, disableScroll, targetRefs, disableScrollableContent, headerCss, contentCss, disableLocalClose, toggleFullscreen, defaultFullscreen, disableFocusTrap, onClose, onCollapse, }: IProps): import("@emotion/react/jsx-runtime").JSX.Element;
|
43
|
+
declare function Modal({ open, header, actionButton, width, children, disableOutsideClick, hideCloseButton, disableScroll, targetRefs, disableScrollableContent, headerCss, contentCss, disableLocalClose, toggleFullscreen, defaultFullscreen, disableFocusTrap, onClose, onCollapse, ...restProps }: IProps): import("@emotion/react/jsx-runtime").JSX.Element;
|
43
44
|
declare namespace Modal {
|
44
45
|
var Actions: ({ children, className, spaceBetween }: {
|
45
46
|
children: React.ReactNode | React.ReactNode[];
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/packages/core/Modal/index.tsx"],"names":[],"mappings":"AAAA,sCAAsC;AACtC,OAAO,KAAsD,MAAM,OAAO,CAAA;
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/packages/core/Modal/index.tsx"],"names":[],"mappings":"AAAA,sCAAsC;AACtC,OAAO,KAAsD,MAAM,OAAO,CAAA;AAiB1E,OAAO,EAAE,kBAAkB,EAA+B,MAAM,OAAO,CAAA;AACvE,OAAO,EAAE,gBAAgB,EAAE,MAAM,gBAAgB,CAAA;AAKjD,UAAU,MAAO,SAAQ,kBAAkB;IACzC,8BAA8B;IAC9B,IAAI,CAAC,EAAE,OAAO,CAAA;IACd,sCAAsC;IACtC,MAAM,CAAC,EAAE,KAAK,CAAC,SAAS,CAAA;IACxB,+FAA+F;IAC/F,YAAY,CAAC,EAAE,KAAK,CAAC,SAAS,CAAA;IAC9B,kBAAkB;IAClB,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,qCAAqC;IACrC,mBAAmB,CAAC,EAAE,OAAO,CAAA;IAC7B,wBAAwB;IACxB,eAAe,CAAC,EAAE,OAAO,CAAA;IACzB,kCAAkC;IAClC,UAAU,CAAC,EAAE,GAAG,EAAE,CAAA;IAClB,6CAA6C;IAC7C,aAAa,CAAC,EAAE,OAAO,CAAA;IACvB,8HAA8H;IAC9H,wBAAwB,CAAC,EAAE,OAAO,CAAA;IAClC,2BAA2B;IAC3B,UAAU,CAAC,EAAE,gBAAgB,CAAA;IAC7B,0BAA0B;IAC1B,SAAS,CAAC,EAAE,gBAAgB,CAAA;IAC5B,wCAAwC;IACxC,iBAAiB,CAAC,EAAE,OAAO,CAAA;IAC3B,+CAA+C;IAC/C,gBAAgB,CAAC,EAAE,OAAO,CAAA;IAC1B,0CAA0C;IAC1C,iBAAiB,CAAC,EAAE,OAAO,CAAA;IAC3B,0BAA0B;IAC1B,gBAAgB,CAAC,EAAE,OAAO,CAAA;IAC1B,mCAAmC;IACnC,OAAO,CAAC,EAAE,MAAM,IAAI,CAAA;IACpB,4CAA4C;IAC5C,UAAU,CAAC,EAAE,MAAM,IAAI,CAAA;IACvB,eAAe;IACf,QAAQ,CAAC,EAAE,KAAK,CAAC,SAAS,GAAG,KAAK,CAAC,SAAS,EAAE,CAAA;CAC/C;AAED,iBAAS,KAAK,CAAC,EACb,IAAI,EACJ,MAAM,EACN,YAAY,EACZ,KAAe,EACf,QAAQ,EACR,mBAA0B,EAC1B,eAAe,EACf,aAAoB,EACpB,UAAU,EACV,wBAAwB,EACxB,SAAS,EACT,UAAU,EACV,iBAAiB,EACjB,gBAAgB,EAChB,iBAAiB,EACjB,gBAAgB,EAChB,OAAO,EACP,UAAU,EACV,GAAG,SAAS,EACb,EAAE,MAAM,oDA4KR;kBAhMQ,KAAK;;;;;;;AAoMd,eAAe,KAAK,CAAA"}
|
package/lib/core/Modal/index.js
CHANGED
@@ -28,13 +28,15 @@ function Modal({
|
|
28
28
|
defaultFullscreen,
|
29
29
|
disableFocusTrap,
|
30
30
|
onClose,
|
31
|
-
onCollapse
|
31
|
+
onCollapse,
|
32
|
+
...restProps
|
32
33
|
}) {
|
33
34
|
const modalRef = /*#__PURE__*/createRef();
|
34
35
|
const [isOpen, setOpen] = useState(open);
|
35
36
|
const [headerHeight, setHeaderHeight] = useState(0);
|
36
37
|
const [isFullscreen, setIsFullscreen] = useState(!!defaultFullscreen);
|
37
38
|
const hasCollapse = Boolean(onCollapse);
|
39
|
+
const headerText = header && header?.props?.children || '';
|
38
40
|
const setClose = () => {
|
39
41
|
enableBodyScroll(modalRef.current);
|
40
42
|
if (!disableLocalClose) setOpen(false);
|
@@ -42,11 +44,21 @@ function Modal({
|
|
42
44
|
onClose();
|
43
45
|
}
|
44
46
|
};
|
47
|
+
|
48
|
+
// Capture escape
|
49
|
+
const handleKeyDown = useCallback(event => {
|
50
|
+
if (event.key === 'Escape') {
|
51
|
+
setClose();
|
52
|
+
}
|
53
|
+
}, [setClose]);
|
45
54
|
const handleHeaderRef = useCallback(node => {
|
46
55
|
setHeaderHeight(node?.clientHeight);
|
47
56
|
}, []);
|
48
57
|
useEffect(() => {
|
49
58
|
if (!modalRef.current) return;
|
59
|
+
if (isOpen) {
|
60
|
+
modalRef.current.focus();
|
61
|
+
}
|
50
62
|
if (isOpen && disableScroll) {
|
51
63
|
disableBodyScroll(modalRef.current);
|
52
64
|
if (targetRefs && targetRefs.length > 0) {
|
@@ -63,6 +75,12 @@ function Modal({
|
|
63
75
|
clearAllBodyScrollLocks();
|
64
76
|
};
|
65
77
|
});
|
78
|
+
useEffect(() => {
|
79
|
+
document.addEventListener('keydown', handleKeyDown);
|
80
|
+
return () => {
|
81
|
+
document.removeEventListener('keydown', handleKeyDown);
|
82
|
+
};
|
83
|
+
});
|
66
84
|
const onOutsideClick = () => {
|
67
85
|
if (disableOutsideClick) return;
|
68
86
|
setClose();
|
@@ -75,20 +93,28 @@ function Modal({
|
|
75
93
|
children: _jsx(Overlay, {
|
76
94
|
onClick: onOutsideClick,
|
77
95
|
children: _jsxs(Content, {
|
96
|
+
role: "dialog",
|
97
|
+
"aria-modal": "true",
|
98
|
+
"aria-label": restProps['aria-label'] ?? header ? headerText.toString() : 'Modal',
|
78
99
|
width: width,
|
79
100
|
isFullscreen: isFullscreen,
|
80
101
|
canToggleFullscreen: !!toggleFullscreen,
|
81
102
|
onClick: e => e.stopPropagation(),
|
103
|
+
...restProps,
|
82
104
|
children: [(!hideCloseButton || hasCollapse || toggleFullscreen) && _jsxs(CloseWrapper, {
|
83
105
|
children: [hasCollapse && _jsx(Button, {
|
84
106
|
nostyle: true,
|
85
107
|
onClick: onCollapse,
|
86
108
|
focusable: true,
|
109
|
+
"aria-label": hasCollapse && 'Minimer',
|
110
|
+
title: "Minimer",
|
87
111
|
children: _jsx(IconMinus, {})
|
88
112
|
}), toggleFullscreen && _jsx(Button, {
|
89
113
|
nostyle: true,
|
90
114
|
onClick: () => setIsFullscreen(!isFullscreen),
|
91
115
|
focusable: true,
|
116
|
+
"aria-label": isFullscreen ? 'Lukk fullskjerm' : 'Fullskjerm',
|
117
|
+
title: isFullscreen ? 'Lukk fullskjerm' : 'Fullskjerm',
|
92
118
|
children: isFullscreen ? _jsx(IconFullscreenClose, {
|
93
119
|
size: "20px"
|
94
120
|
}) : _jsx(IconFullscreenOpen, {
|
@@ -98,6 +124,8 @@ function Modal({
|
|
98
124
|
nostyle: true,
|
99
125
|
onClick: setClose,
|
100
126
|
focusable: true,
|
127
|
+
"aria-label": "Lukk",
|
128
|
+
title: "Lukk",
|
101
129
|
children: _jsx(IconClose, {})
|
102
130
|
})]
|
103
131
|
}), _jsx(HeaderWrapper, {
|
@@ -1,60 +1,20 @@
|
|
1
|
-
|
2
|
-
|
3
|
-
|
4
|
-
export
|
5
|
-
|
6
|
-
|
7
|
-
|
8
|
-
export declare const
|
9
|
-
|
10
|
-
|
11
|
-
|
12
|
-
export declare const
|
13
|
-
|
14
|
-
|
15
|
-
|
16
|
-
export declare const
|
17
|
-
|
18
|
-
|
19
|
-
|
20
|
-
export declare const Danger: {
|
21
|
-
render: () => import("react").JSX.Element;
|
22
|
-
name: string;
|
23
|
-
};
|
24
|
-
export declare const Dark: {
|
25
|
-
render: () => import("react").JSX.Element;
|
26
|
-
name: string;
|
27
|
-
};
|
28
|
-
export declare const Light: {
|
29
|
-
render: () => import("react").JSX.Element;
|
30
|
-
name: string;
|
31
|
-
};
|
32
|
-
export declare const Outline: {
|
33
|
-
render: () => import("react").JSX.Element;
|
34
|
-
name: string;
|
35
|
-
};
|
36
|
-
export declare const TagWithClose: {
|
37
|
-
render: () => import("react").JSX.Element;
|
38
|
-
name: string;
|
39
|
-
};
|
40
|
-
export declare const TagWithLoading: {
|
41
|
-
render: () => import("react").JSX.Element;
|
42
|
-
name: string;
|
43
|
-
};
|
44
|
-
export declare const TagWithCloseAndStrictClick: {
|
45
|
-
render: () => import("react").JSX.Element;
|
46
|
-
name: string;
|
47
|
-
};
|
48
|
-
export declare const TagWithCloseLoadingAndStrictClick: {
|
49
|
-
render: () => import("react").JSX.Element;
|
50
|
-
name: string;
|
51
|
-
};
|
52
|
-
export declare const TagWithCloseAndStrictClickWithColor: {
|
53
|
-
render: () => import("react").JSX.Element;
|
54
|
-
name: string;
|
55
|
-
};
|
56
|
-
export declare const WithIcon: {
|
57
|
-
render: () => import("react").JSX.Element;
|
58
|
-
name: string;
|
59
|
-
};
|
1
|
+
import Tag from '.';
|
2
|
+
import { Meta, StoryObj } from '@storybook/react';
|
3
|
+
declare const meta: Meta<typeof Tag>;
|
4
|
+
export default meta;
|
5
|
+
declare type Story = StoryObj<typeof Tag>;
|
6
|
+
export declare const Default: Story;
|
7
|
+
export declare const Neutral: Story;
|
8
|
+
export declare const Success: Story;
|
9
|
+
export declare const Info: Story;
|
10
|
+
export declare const Danger: Story;
|
11
|
+
export declare const Dark: Story;
|
12
|
+
export declare const Light: Story;
|
13
|
+
export declare const Outline: Story;
|
14
|
+
export declare const TagWithClose: Story;
|
15
|
+
export declare const TagWithLoading: Story;
|
16
|
+
export declare const TagWithCloseAndStrictClick: Story;
|
17
|
+
export declare const TagWithCloseLoadingAndStrictClick: Story;
|
18
|
+
export declare const TagWithCloseAndStrictClickWithColor: Story;
|
19
|
+
export declare const WithIcon: Story;
|
60
20
|
//# sourceMappingURL=Tag.stories.d.ts.map
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"Tag.stories.d.ts","sourceRoot":"","sources":["../../../src/packages/core/Tag/Tag.stories.tsx"],"names":[],"mappings":"
|
1
|
+
{"version":3,"file":"Tag.stories.d.ts","sourceRoot":"","sources":["../../../src/packages/core/Tag/Tag.stories.tsx"],"names":[],"mappings":"AAAA,OAAO,GAAG,MAAM,GAAG,CAAA;AAEnB,OAAO,EAAE,IAAI,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAA;AAEjD,QAAA,MAAM,IAAI,EAAE,IAAI,CAAC,OAAO,GAAG,CAG1B,CAAA;AACD,eAAe,IAAI,CAAA;AAEnB,aAAK,KAAK,GAAG,QAAQ,CAAC,OAAO,GAAG,CAAC,CAAA;AAEjC,eAAO,MAAM,OAAO,EAAE,KAKrB,CAAA;AAED,eAAO,MAAM,OAAO,EAAE,KAMrB,CAAA;AAED,eAAO,MAAM,OAAO,EAAE,KAMrB,CAAA;AAED,eAAO,MAAM,IAAI,EAAE,KAMlB,CAAA;AAED,eAAO,MAAM,MAAM,EAAE,KAMpB,CAAA;AAED,eAAO,MAAM,IAAI,EAAE,KAMlB,CAAA;AAED,eAAO,MAAM,KAAK,EAAE,KAMnB,CAAA;AAED,eAAO,MAAM,OAAO,EAAE,KAMrB,CAAA;AAED,eAAO,MAAM,YAAY,EAAE,KAO1B,CAAA;AAED,eAAO,MAAM,cAAc,EAAE,KAM5B,CAAA;AAED,eAAO,MAAM,0BAA0B,EAAE,KAOxC,CAAA;AAED,eAAO,MAAM,iCAAiC,EAAE,KAQ/C,CAAA;AAED,eAAO,MAAM,mCAAmC,EAAE,KAQjD,CAAA;AAED,eAAO,MAAM,QAAQ,EAAE,KAMtB,CAAA"}
|