@entur/modal 1.6.14 → 1.6.16
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/modal.cjs.development.js +29 -44
- package/dist/modal.cjs.development.js.map +1 -1
- package/dist/modal.cjs.production.min.js.map +1 -1
- package/dist/modal.esm.js +29 -44
- package/dist/modal.esm.js.map +1 -1
- package/dist/styles.css +49 -85
- package/package.json +20 -13
- package/CHANGELOG.md +0 -452
|
@@ -22,41 +22,34 @@ function _extends() {
|
|
|
22
22
|
_extends = Object.assign || function (target) {
|
|
23
23
|
for (var i = 1; i < arguments.length; i++) {
|
|
24
24
|
var source = arguments[i];
|
|
25
|
-
|
|
26
25
|
for (var key in source) {
|
|
27
26
|
if (Object.prototype.hasOwnProperty.call(source, key)) {
|
|
28
27
|
target[key] = source[key];
|
|
29
28
|
}
|
|
30
29
|
}
|
|
31
30
|
}
|
|
32
|
-
|
|
33
31
|
return target;
|
|
34
32
|
};
|
|
35
|
-
|
|
36
33
|
return _extends.apply(this, arguments);
|
|
37
34
|
}
|
|
38
|
-
|
|
39
35
|
function _objectWithoutPropertiesLoose(source, excluded) {
|
|
40
36
|
if (source == null) return {};
|
|
41
37
|
var target = {};
|
|
42
38
|
var sourceKeys = Object.keys(source);
|
|
43
39
|
var key, i;
|
|
44
|
-
|
|
45
40
|
for (i = 0; i < sourceKeys.length; i++) {
|
|
46
41
|
key = sourceKeys[i];
|
|
47
42
|
if (excluded.indexOf(key) >= 0) continue;
|
|
48
43
|
target[key] = source[key];
|
|
49
44
|
}
|
|
50
|
-
|
|
51
45
|
return target;
|
|
52
46
|
}
|
|
53
47
|
|
|
54
48
|
var _excluded$2 = ["className", "open"];
|
|
55
49
|
var ModalOverlay = function ModalOverlay(_ref) {
|
|
56
50
|
var className = _ref.className,
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
51
|
+
open = _ref.open,
|
|
52
|
+
rest = _objectWithoutPropertiesLoose(_ref, _excluded$2);
|
|
60
53
|
return React__default["default"].createElement(dialog.DialogOverlay, _extends({
|
|
61
54
|
className: classNames__default["default"]('eds-modal__overlay', className),
|
|
62
55
|
isOpen: open
|
|
@@ -73,11 +66,10 @@ var headingsMap = {
|
|
|
73
66
|
};
|
|
74
67
|
var ModalContent = function ModalContent(_ref) {
|
|
75
68
|
var children = _ref.children,
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
69
|
+
className = _ref.className,
|
|
70
|
+
size = _ref.size,
|
|
71
|
+
title = _ref.title,
|
|
72
|
+
rest = _objectWithoutPropertiesLoose(_ref, _excluded$1);
|
|
81
73
|
var Heading = headingsMap[size] || typography.Heading2;
|
|
82
74
|
var randomId = utils.useRandomId('eds-modal');
|
|
83
75
|
return React__default["default"].createElement(dialog.DialogContent, _extends({
|
|
@@ -93,23 +85,20 @@ var ModalContent = function ModalContent(_ref) {
|
|
|
93
85
|
var _excluded = ["children", "closeLabel", "initialFocusRef", "open", "onDismiss", "size", "closeOnClickOutside"];
|
|
94
86
|
var Modal = function Modal(_ref) {
|
|
95
87
|
var children = _ref.children,
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
88
|
+
_ref$closeLabel = _ref.closeLabel,
|
|
89
|
+
closeLabel = _ref$closeLabel === void 0 ? 'Lukk' : _ref$closeLabel,
|
|
90
|
+
initialFocusRef = _ref.initialFocusRef,
|
|
91
|
+
open = _ref.open,
|
|
92
|
+
onDismiss = _ref.onDismiss,
|
|
93
|
+
size = _ref.size,
|
|
94
|
+
_ref$closeOnClickOuts = _ref.closeOnClickOutside,
|
|
95
|
+
closeOnClickOutside = _ref$closeOnClickOuts === void 0 ? true : _ref$closeOnClickOuts,
|
|
96
|
+
rest = _objectWithoutPropertiesLoose(_ref, _excluded);
|
|
106
97
|
var showCloseButton = ['medium', 'large', 'extraLarge'].includes(size);
|
|
107
98
|
var handleOnDismiss;
|
|
108
|
-
|
|
109
99
|
if (onDismiss && closeOnClickOutside) {
|
|
110
100
|
handleOnDismiss = onDismiss;
|
|
111
101
|
}
|
|
112
|
-
|
|
113
102
|
return React__default["default"].createElement(ModalOverlay, {
|
|
114
103
|
open: open,
|
|
115
104
|
onDismiss: handleOnDismiss,
|
|
@@ -125,31 +114,28 @@ var Modal = function Modal(_ref) {
|
|
|
125
114
|
|
|
126
115
|
var Drawer = function Drawer(_ref) {
|
|
127
116
|
var children = _ref.children,
|
|
128
|
-
|
|
129
|
-
|
|
130
|
-
|
|
131
|
-
|
|
132
|
-
|
|
133
|
-
|
|
134
|
-
|
|
135
|
-
|
|
136
|
-
|
|
137
|
-
|
|
138
|
-
|
|
139
|
-
|
|
117
|
+
className = _ref.className,
|
|
118
|
+
_ref$closeLabel = _ref.closeLabel,
|
|
119
|
+
closeLabel = _ref$closeLabel === void 0 ? 'Lukk skuff' : _ref$closeLabel,
|
|
120
|
+
_ref$contrast = _ref.contrast,
|
|
121
|
+
contrast = _ref$contrast === void 0 ? false : _ref$contrast,
|
|
122
|
+
_ref$open = _ref.open,
|
|
123
|
+
open = _ref$open === void 0 ? true : _ref$open,
|
|
124
|
+
onDismiss = _ref.onDismiss,
|
|
125
|
+
title = _ref.title,
|
|
126
|
+
style = _ref.style,
|
|
127
|
+
_ref$overlay = _ref.overlay,
|
|
128
|
+
overlay = _ref$overlay === void 0 ? false : _ref$overlay;
|
|
140
129
|
var titleId = utils.useRandomId('eds-drawer');
|
|
141
|
-
|
|
142
130
|
if (!open) {
|
|
143
131
|
return null;
|
|
144
132
|
}
|
|
145
|
-
|
|
146
133
|
var handleKeyDown = function handleKeyDown(e) {
|
|
147
134
|
if (e.key === 'Escape') {
|
|
148
135
|
e.stopPropagation();
|
|
149
136
|
onDismiss();
|
|
150
137
|
}
|
|
151
138
|
};
|
|
152
|
-
|
|
153
139
|
var Wrapper = contrast ? layout.Contrast : React__default["default"].Fragment;
|
|
154
140
|
var ContentContainer = overlay ? dialog.DialogContent : 'div';
|
|
155
141
|
return React__default["default"].createElement(ConditionalWrapper, {
|
|
@@ -178,11 +164,10 @@ var Drawer = function Drawer(_ref) {
|
|
|
178
164
|
"aria-hidden": true
|
|
179
165
|
}), React__default["default"].createElement(a11y.VisuallyHidden, null, closeLabel))))));
|
|
180
166
|
};
|
|
181
|
-
|
|
182
167
|
var ConditionalWrapper = function ConditionalWrapper(_ref2) {
|
|
183
168
|
var condition = _ref2.condition,
|
|
184
|
-
|
|
185
|
-
|
|
169
|
+
wrapper = _ref2.wrapper,
|
|
170
|
+
children = _ref2.children;
|
|
186
171
|
return condition ? wrapper(children) : children;
|
|
187
172
|
};
|
|
188
173
|
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"modal.cjs.development.js","sources":["../src/ModalOverlay.tsx","../src/ModalContent.tsx","../src/Modal.tsx","../src/Drawer.tsx","../src/index.tsx"],"sourcesContent":["import React from 'react';\nimport classNames from 'classnames';\nimport { DialogOverlay } from '@reach/dialog';\n\nexport type ModalOverlayProps = {\n /** Flagg som sier om modalen er åpen */\n open?: boolean;\n /** Callback som kalles når brukeren ber om å lukke modalen */\n onDismiss?: () => void;\n /** Innholdet i modalen */\n children: React.ReactNode;\n /** Ekstra klassenavn */\n className?: string;\n /** En ref til elementet som skal være fokusert når modalen åpnes. Defaulter til lukkeknappen */\n initialFocusRef?: React.RefObject<HTMLElement>;\n [key: string]: any;\n};\n\nexport const ModalOverlay: React.FC<ModalOverlayProps> = ({\n className,\n open,\n ...rest\n}) => (\n <DialogOverlay\n className={classNames('eds-modal__overlay', className)}\n isOpen={open}\n {...rest}\n />\n);\n","import React from 'react';\nimport classNames from 'classnames';\nimport { DialogContent } from '@reach/dialog';\nimport { Heading4, Heading3, Heading2 } from '@entur/typography';\nimport { useRandomId } from '@entur/utils';\n\nexport type ModalContentProps = {\n /** Innholdet i modalen */\n children: React.ReactNode;\n /** Ekstra klassenavn */\n className?: string;\n /** Størrelsen på modalen */\n size: 'extraSmall' | 'small' | 'medium' | 'large' | 'extraLarge';\n /** Tittelen som vises i modalen */\n title: string;\n [key: string]: any;\n};\n\nconst headingsMap = {\n extraSmall: Heading4,\n small: Heading3,\n medium: Heading2,\n large: Heading2,\n extraLarge: Heading2,\n};\n\nexport const ModalContent: React.FC<ModalContentProps> = ({\n children,\n className,\n size,\n title,\n ...rest\n}) => {\n const Heading: React.ElementType = headingsMap[size] || Heading2;\n const randomId = useRandomId('eds-modal');\n return (\n <DialogContent\n className={classNames(\n 'eds-modal__content',\n `eds-modal__content--size-${size}`,\n className,\n )}\n aria-labelledby={randomId}\n {...rest}\n >\n <Heading margin=\"bottom\" as=\"h2\" id={randomId}>\n {title}\n </Heading>\n {children}\n </DialogContent>\n );\n};\n","import React from 'react';\nimport { CloseIcon } from '@entur/icons';\nimport { ModalOverlay } from './ModalOverlay';\nimport { ModalContent } from './ModalContent';\nimport { IconButton } from '@entur/button';\nimport './Modal.scss';\n\nexport type ModalProps = {\n /** Innholdet i modalen */\n children: React.ReactNode;\n /** Skjermleser-label til lukk-knappen */\n closeLabel?: string;\n /** En ref til elementet som skal være fokusert når modalen åpnes. Defaulter til lukkeknappen */\n initialFocusRef?: React.RefObject<HTMLElement>;\n /** Flagg som sier om modalen er åpen */\n open?: boolean;\n /** Callback som kalles når brukeren ber om å lukke modalen */\n onDismiss?: () => void;\n /** Størrelsen på modalen */\n size: 'extraSmall' | 'small' | 'medium' | 'large' | 'extraLarge';\n /** Tittelen som vises i modalen */\n title: string;\n /** Om modalen skal lukkes når man klikker på utsiden av den\n * @default true\n */\n closeOnClickOutside?: boolean;\n [key: string]: any;\n};\n\nexport const Modal: React.FC<ModalProps> = ({\n children,\n closeLabel = 'Lukk',\n initialFocusRef,\n open,\n onDismiss,\n size,\n closeOnClickOutside = true,\n ...rest\n}) => {\n const showCloseButton = ['medium', 'large', 'extraLarge'].includes(size);\n\n let handleOnDismiss;\n if (onDismiss && closeOnClickOutside) {\n handleOnDismiss = onDismiss;\n }\n return (\n <ModalOverlay\n open={open}\n onDismiss={handleOnDismiss}\n initialFocusRef={initialFocusRef}\n >\n <ModalContent size={size} {...rest}>\n {showCloseButton && (\n <IconButton\n className=\"eds-modal__close\"\n aria-label={closeLabel}\n onClick={onDismiss}\n >\n <CloseIcon />\n </IconButton>\n )}\n {children}\n </ModalContent>\n </ModalOverlay>\n );\n};\n","import React from 'react';\nimport classNames from 'classnames';\nimport { MoveFocusInside } from 'react-focus-lock';\nimport { VisuallyHidden } from '@entur/a11y';\nimport { Contrast } from '@entur/layout';\nimport { CloseIcon } from '@entur/icons';\nimport { Heading3 } from '@entur/typography';\nimport { useRandomId } from '@entur/utils';\nimport { IconButton } from '@entur/button';\n\nimport './Drawer.scss';\nimport { ModalOverlay } from './ModalOverlay';\nimport { DialogContent } from '@reach/dialog';\n\nexport type DrawerProps = {\n /** Innholdet. Typisk tekst, lenker eller knapper */\n children: React.ReactNode;\n /** Ekstra klassenavn */\n className?: string;\n /** Tekst som beskriver lukkeknappen for skjermlesere\n * @default 'Lukk skuff'\n */\n closeLabel?: string;\n /** Om draweren skal vises i mørk variant\n * @default false\n */\n contrast?: boolean;\n /** Callback som kalles når brukeren ønsker å lukke draweren */\n onDismiss: () => void;\n /** Om draweren er åpen eller ikke\n * @default true\n */\n open?: boolean;\n /** Tittel på toppen av draweren */\n title: string;\n /** Styling som sendes til Drawer */\n style?: React.CSSProperties;\n /** Legger på et overlay over resten av siden */\n overlay?: boolean;\n};\n\nexport const Drawer: React.FC<DrawerProps> = ({\n children,\n className,\n closeLabel = 'Lukk skuff',\n contrast = false,\n open = true,\n onDismiss,\n title,\n style,\n overlay = false,\n}) => {\n const titleId = useRandomId('eds-drawer');\n\n if (!open) {\n return null;\n }\n\n const handleKeyDown = (e: React.KeyboardEvent) => {\n if (e.key === 'Escape') {\n e.stopPropagation();\n onDismiss();\n }\n };\n\n const Wrapper = contrast ? Contrast : React.Fragment;\n const ContentContainer = overlay ? DialogContent : 'div';\n return (\n <ConditionalWrapper\n condition={overlay}\n wrapper={(children: React.ReactNode) => (\n <ModalOverlay open={open} onDismiss={onDismiss}>\n {children}\n </ModalOverlay>\n )}\n >\n <Wrapper>\n <ContentContainer\n aria-labelledby={titleId}\n className={classNames('eds-drawer', className)}\n onKeyDown={handleKeyDown}\n style={style}\n >\n <MoveFocusInside>\n <div className=\"eds-drawer__content\">\n <Heading3 as=\"h2\" id={titleId}>\n {title}\n </Heading3>\n {children}\n </div>\n <IconButton\n className=\"eds-drawer__close-button\"\n onClick={onDismiss}\n type=\"button\"\n >\n <CloseIcon aria-hidden />\n <VisuallyHidden>{closeLabel}</VisuallyHidden>\n </IconButton>\n </MoveFocusInside>\n </ContentContainer>\n </Wrapper>\n </ConditionalWrapper>\n );\n};\n\nconst ConditionalWrapper: React.FC<{\n condition: boolean;\n wrapper: (child: JSX.Element) => JSX.Element;\n children: React.ReactElement;\n}> = ({ condition, wrapper, children }) =>\n condition ? wrapper(children) : children;\n","import { warnAboutMissingStyles } from '@entur/utils';\nimport './index.scss';\n\nwarnAboutMissingStyles('modal', 'icons', 'typography', 'a11y', 'button');\n\nexport * from './Modal';\nexport * from './ModalOverlay';\nexport * from './ModalContent';\nexport * from './Drawer';\n"],"names":["ModalOverlay","className","open","rest","React","DialogOverlay","classNames","isOpen","headingsMap","extraSmall","Heading4","small","Heading3","medium","Heading2","large","extraLarge","ModalContent","children","size","title","Heading","randomId","useRandomId","DialogContent","margin","as","id","Modal","closeLabel","initialFocusRef","onDismiss","closeOnClickOutside","showCloseButton","includes","handleOnDismiss","IconButton","onClick","CloseIcon","Drawer","contrast","style","overlay","titleId","handleKeyDown","e","key","stopPropagation","Wrapper","Contrast","Fragment","ContentContainer","ConditionalWrapper","condition","wrapper","onKeyDown","MoveFocusInside","type","VisuallyHidden","warnAboutMissingStyles"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"modal.cjs.development.js","sources":["../src/ModalOverlay.tsx","../src/ModalContent.tsx","../src/Modal.tsx","../src/Drawer.tsx","../src/index.tsx"],"sourcesContent":["import React from 'react';\nimport classNames from 'classnames';\nimport { DialogOverlay } from '@reach/dialog';\n\nexport type ModalOverlayProps = {\n /** Flagg som sier om modalen er åpen */\n open?: boolean;\n /** Callback som kalles når brukeren ber om å lukke modalen */\n onDismiss?: () => void;\n /** Innholdet i modalen */\n children: React.ReactNode;\n /** Ekstra klassenavn */\n className?: string;\n /** En ref til elementet som skal være fokusert når modalen åpnes. Defaulter til lukkeknappen */\n initialFocusRef?: React.RefObject<HTMLElement>;\n [key: string]: any;\n};\n\nexport const ModalOverlay: React.FC<ModalOverlayProps> = ({\n className,\n open,\n ...rest\n}) => (\n <DialogOverlay\n className={classNames('eds-modal__overlay', className)}\n isOpen={open}\n {...rest}\n />\n);\n","import React from 'react';\nimport classNames from 'classnames';\nimport { DialogContent } from '@reach/dialog';\nimport { Heading4, Heading3, Heading2 } from '@entur/typography';\nimport { useRandomId } from '@entur/utils';\n\nexport type ModalContentProps = {\n /** Innholdet i modalen */\n children: React.ReactNode;\n /** Ekstra klassenavn */\n className?: string;\n /** Størrelsen på modalen */\n size: 'extraSmall' | 'small' | 'medium' | 'large' | 'extraLarge';\n /** Tittelen som vises i modalen */\n title: string;\n [key: string]: any;\n};\n\nconst headingsMap = {\n extraSmall: Heading4,\n small: Heading3,\n medium: Heading2,\n large: Heading2,\n extraLarge: Heading2,\n};\n\nexport const ModalContent: React.FC<ModalContentProps> = ({\n children,\n className,\n size,\n title,\n ...rest\n}) => {\n const Heading: React.ElementType = headingsMap[size] || Heading2;\n const randomId = useRandomId('eds-modal');\n return (\n <DialogContent\n className={classNames(\n 'eds-modal__content',\n `eds-modal__content--size-${size}`,\n className,\n )}\n aria-labelledby={randomId}\n {...rest}\n >\n <Heading margin=\"bottom\" as=\"h2\" id={randomId}>\n {title}\n </Heading>\n {children}\n </DialogContent>\n );\n};\n","import React from 'react';\nimport { CloseIcon } from '@entur/icons';\nimport { ModalOverlay } from './ModalOverlay';\nimport { ModalContent } from './ModalContent';\nimport { IconButton } from '@entur/button';\nimport './Modal.scss';\n\nexport type ModalProps = {\n /** Innholdet i modalen */\n children: React.ReactNode;\n /** Skjermleser-label til lukk-knappen */\n closeLabel?: string;\n /** En ref til elementet som skal være fokusert når modalen åpnes. Defaulter til lukkeknappen */\n initialFocusRef?: React.RefObject<HTMLElement>;\n /** Flagg som sier om modalen er åpen */\n open?: boolean;\n /** Callback som kalles når brukeren ber om å lukke modalen */\n onDismiss?: () => void;\n /** Størrelsen på modalen */\n size: 'extraSmall' | 'small' | 'medium' | 'large' | 'extraLarge';\n /** Tittelen som vises i modalen */\n title: string;\n /** Om modalen skal lukkes når man klikker på utsiden av den\n * @default true\n */\n closeOnClickOutside?: boolean;\n [key: string]: any;\n};\n\nexport const Modal: React.FC<ModalProps> = ({\n children,\n closeLabel = 'Lukk',\n initialFocusRef,\n open,\n onDismiss,\n size,\n closeOnClickOutside = true,\n ...rest\n}) => {\n const showCloseButton = ['medium', 'large', 'extraLarge'].includes(size);\n\n let handleOnDismiss;\n if (onDismiss && closeOnClickOutside) {\n handleOnDismiss = onDismiss;\n }\n return (\n <ModalOverlay\n open={open}\n onDismiss={handleOnDismiss}\n initialFocusRef={initialFocusRef}\n >\n <ModalContent size={size} {...rest}>\n {showCloseButton && (\n <IconButton\n className=\"eds-modal__close\"\n aria-label={closeLabel}\n onClick={onDismiss}\n >\n <CloseIcon />\n </IconButton>\n )}\n {children}\n </ModalContent>\n </ModalOverlay>\n );\n};\n","import React from 'react';\nimport classNames from 'classnames';\nimport { MoveFocusInside } from 'react-focus-lock';\nimport { VisuallyHidden } from '@entur/a11y';\nimport { Contrast } from '@entur/layout';\nimport { CloseIcon } from '@entur/icons';\nimport { Heading3 } from '@entur/typography';\nimport { useRandomId } from '@entur/utils';\nimport { IconButton } from '@entur/button';\n\nimport './Drawer.scss';\nimport { ModalOverlay } from './ModalOverlay';\nimport { DialogContent } from '@reach/dialog';\n\nexport type DrawerProps = {\n /** Innholdet. Typisk tekst, lenker eller knapper */\n children: React.ReactNode;\n /** Ekstra klassenavn */\n className?: string;\n /** Tekst som beskriver lukkeknappen for skjermlesere\n * @default 'Lukk skuff'\n */\n closeLabel?: string;\n /** Om draweren skal vises i mørk variant\n * @default false\n */\n contrast?: boolean;\n /** Callback som kalles når brukeren ønsker å lukke draweren */\n onDismiss: () => void;\n /** Om draweren er åpen eller ikke\n * @default true\n */\n open?: boolean;\n /** Tittel på toppen av draweren */\n title: string;\n /** Styling som sendes til Drawer */\n style?: React.CSSProperties;\n /** Legger på et overlay over resten av siden */\n overlay?: boolean;\n};\n\nexport const Drawer: React.FC<DrawerProps> = ({\n children,\n className,\n closeLabel = 'Lukk skuff',\n contrast = false,\n open = true,\n onDismiss,\n title,\n style,\n overlay = false,\n}) => {\n const titleId = useRandomId('eds-drawer');\n\n if (!open) {\n return null;\n }\n\n const handleKeyDown = (e: React.KeyboardEvent) => {\n if (e.key === 'Escape') {\n e.stopPropagation();\n onDismiss();\n }\n };\n\n const Wrapper = contrast ? Contrast : React.Fragment;\n const ContentContainer = overlay ? DialogContent : 'div';\n return (\n <ConditionalWrapper\n condition={overlay}\n wrapper={(children: React.ReactNode) => (\n <ModalOverlay open={open} onDismiss={onDismiss}>\n {children}\n </ModalOverlay>\n )}\n >\n <Wrapper>\n <ContentContainer\n aria-labelledby={titleId}\n className={classNames('eds-drawer', className)}\n onKeyDown={handleKeyDown}\n style={style}\n >\n <MoveFocusInside>\n <div className=\"eds-drawer__content\">\n <Heading3 as=\"h2\" id={titleId}>\n {title}\n </Heading3>\n {children}\n </div>\n <IconButton\n className=\"eds-drawer__close-button\"\n onClick={onDismiss}\n type=\"button\"\n >\n <CloseIcon aria-hidden />\n <VisuallyHidden>{closeLabel}</VisuallyHidden>\n </IconButton>\n </MoveFocusInside>\n </ContentContainer>\n </Wrapper>\n </ConditionalWrapper>\n );\n};\n\nconst ConditionalWrapper: React.FC<{\n condition: boolean;\n wrapper: (child: JSX.Element) => JSX.Element;\n children: React.ReactElement;\n}> = ({ condition, wrapper, children }) =>\n condition ? wrapper(children) : children;\n","import { warnAboutMissingStyles } from '@entur/utils';\nimport './index.scss';\n\nwarnAboutMissingStyles('modal', 'icons', 'typography', 'a11y', 'button');\n\nexport * from './Modal';\nexport * from './ModalOverlay';\nexport * from './ModalContent';\nexport * from './Drawer';\n"],"names":["ModalOverlay","className","open","rest","React","DialogOverlay","classNames","isOpen","headingsMap","extraSmall","Heading4","small","Heading3","medium","Heading2","large","extraLarge","ModalContent","children","size","title","Heading","randomId","useRandomId","DialogContent","margin","as","id","Modal","closeLabel","initialFocusRef","onDismiss","closeOnClickOutside","showCloseButton","includes","handleOnDismiss","IconButton","onClick","CloseIcon","Drawer","contrast","style","overlay","titleId","handleKeyDown","e","key","stopPropagation","Wrapper","Contrast","Fragment","ContentContainer","ConditionalWrapper","condition","wrapper","onKeyDown","MoveFocusInside","type","VisuallyHidden","warnAboutMissingStyles"],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"modal.cjs.production.min.js","sources":["../src/ModalOverlay.tsx","../src/ModalContent.tsx","../src/Drawer.tsx","../src/index.tsx","../src/Modal.tsx"],"sourcesContent":["import React from 'react';\nimport classNames from 'classnames';\nimport { DialogOverlay } from '@reach/dialog';\n\nexport type ModalOverlayProps = {\n /** Flagg som sier om modalen er åpen */\n open?: boolean;\n /** Callback som kalles når brukeren ber om å lukke modalen */\n onDismiss?: () => void;\n /** Innholdet i modalen */\n children: React.ReactNode;\n /** Ekstra klassenavn */\n className?: string;\n /** En ref til elementet som skal være fokusert når modalen åpnes. Defaulter til lukkeknappen */\n initialFocusRef?: React.RefObject<HTMLElement>;\n [key: string]: any;\n};\n\nexport const ModalOverlay: React.FC<ModalOverlayProps> = ({\n className,\n open,\n ...rest\n}) => (\n <DialogOverlay\n className={classNames('eds-modal__overlay', className)}\n isOpen={open}\n {...rest}\n />\n);\n","import React from 'react';\nimport classNames from 'classnames';\nimport { DialogContent } from '@reach/dialog';\nimport { Heading4, Heading3, Heading2 } from '@entur/typography';\nimport { useRandomId } from '@entur/utils';\n\nexport type ModalContentProps = {\n /** Innholdet i modalen */\n children: React.ReactNode;\n /** Ekstra klassenavn */\n className?: string;\n /** Størrelsen på modalen */\n size: 'extraSmall' | 'small' | 'medium' | 'large' | 'extraLarge';\n /** Tittelen som vises i modalen */\n title: string;\n [key: string]: any;\n};\n\nconst headingsMap = {\n extraSmall: Heading4,\n small: Heading3,\n medium: Heading2,\n large: Heading2,\n extraLarge: Heading2,\n};\n\nexport const ModalContent: React.FC<ModalContentProps> = ({\n children,\n className,\n size,\n title,\n ...rest\n}) => {\n const Heading: React.ElementType = headingsMap[size] || Heading2;\n const randomId = useRandomId('eds-modal');\n return (\n <DialogContent\n className={classNames(\n 'eds-modal__content',\n `eds-modal__content--size-${size}`,\n className,\n )}\n aria-labelledby={randomId}\n {...rest}\n >\n <Heading margin=\"bottom\" as=\"h2\" id={randomId}>\n {title}\n </Heading>\n {children}\n </DialogContent>\n );\n};\n","import React from 'react';\nimport classNames from 'classnames';\nimport { MoveFocusInside } from 'react-focus-lock';\nimport { VisuallyHidden } from '@entur/a11y';\nimport { Contrast } from '@entur/layout';\nimport { CloseIcon } from '@entur/icons';\nimport { Heading3 } from '@entur/typography';\nimport { useRandomId } from '@entur/utils';\nimport { IconButton } from '@entur/button';\n\nimport './Drawer.scss';\nimport { ModalOverlay } from './ModalOverlay';\nimport { DialogContent } from '@reach/dialog';\n\nexport type DrawerProps = {\n /** Innholdet. Typisk tekst, lenker eller knapper */\n children: React.ReactNode;\n /** Ekstra klassenavn */\n className?: string;\n /** Tekst som beskriver lukkeknappen for skjermlesere\n * @default 'Lukk skuff'\n */\n closeLabel?: string;\n /** Om draweren skal vises i mørk variant\n * @default false\n */\n contrast?: boolean;\n /** Callback som kalles når brukeren ønsker å lukke draweren */\n onDismiss: () => void;\n /** Om draweren er åpen eller ikke\n * @default true\n */\n open?: boolean;\n /** Tittel på toppen av draweren */\n title: string;\n /** Styling som sendes til Drawer */\n style?: React.CSSProperties;\n /** Legger på et overlay over resten av siden */\n overlay?: boolean;\n};\n\nexport const Drawer: React.FC<DrawerProps> = ({\n children,\n className,\n closeLabel = 'Lukk skuff',\n contrast = false,\n open = true,\n onDismiss,\n title,\n style,\n overlay = false,\n}) => {\n const titleId = useRandomId('eds-drawer');\n\n if (!open) {\n return null;\n }\n\n const handleKeyDown = (e: React.KeyboardEvent) => {\n if (e.key === 'Escape') {\n e.stopPropagation();\n onDismiss();\n }\n };\n\n const Wrapper = contrast ? Contrast : React.Fragment;\n const ContentContainer = overlay ? DialogContent : 'div';\n return (\n <ConditionalWrapper\n condition={overlay}\n wrapper={(children: React.ReactNode) => (\n <ModalOverlay open={open} onDismiss={onDismiss}>\n {children}\n </ModalOverlay>\n )}\n >\n <Wrapper>\n <ContentContainer\n aria-labelledby={titleId}\n className={classNames('eds-drawer', className)}\n onKeyDown={handleKeyDown}\n style={style}\n >\n <MoveFocusInside>\n <div className=\"eds-drawer__content\">\n <Heading3 as=\"h2\" id={titleId}>\n {title}\n </Heading3>\n {children}\n </div>\n <IconButton\n className=\"eds-drawer__close-button\"\n onClick={onDismiss}\n type=\"button\"\n >\n <CloseIcon aria-hidden />\n <VisuallyHidden>{closeLabel}</VisuallyHidden>\n </IconButton>\n </MoveFocusInside>\n </ContentContainer>\n </Wrapper>\n </ConditionalWrapper>\n );\n};\n\nconst ConditionalWrapper: React.FC<{\n condition: boolean;\n wrapper: (child: JSX.Element) => JSX.Element;\n children: React.ReactElement;\n}> = ({ condition, wrapper, children }) =>\n condition ? wrapper(children) : children;\n","import { warnAboutMissingStyles } from '@entur/utils';\nimport './index.scss';\n\nwarnAboutMissingStyles('modal', 'icons', 'typography', 'a11y', 'button');\n\nexport * from './Modal';\nexport * from './ModalOverlay';\nexport * from './ModalContent';\nexport * from './Drawer';\n","import React from 'react';\nimport { CloseIcon } from '@entur/icons';\nimport { ModalOverlay } from './ModalOverlay';\nimport { ModalContent } from './ModalContent';\nimport { IconButton } from '@entur/button';\nimport './Modal.scss';\n\nexport type ModalProps = {\n /** Innholdet i modalen */\n children: React.ReactNode;\n /** Skjermleser-label til lukk-knappen */\n closeLabel?: string;\n /** En ref til elementet som skal være fokusert når modalen åpnes. Defaulter til lukkeknappen */\n initialFocusRef?: React.RefObject<HTMLElement>;\n /** Flagg som sier om modalen er åpen */\n open?: boolean;\n /** Callback som kalles når brukeren ber om å lukke modalen */\n onDismiss?: () => void;\n /** Størrelsen på modalen */\n size: 'extraSmall' | 'small' | 'medium' | 'large' | 'extraLarge';\n /** Tittelen som vises i modalen */\n title: string;\n /** Om modalen skal lukkes når man klikker på utsiden av den\n * @default true\n */\n closeOnClickOutside?: boolean;\n [key: string]: any;\n};\n\nexport const Modal: React.FC<ModalProps> = ({\n children,\n closeLabel = 'Lukk',\n initialFocusRef,\n open,\n onDismiss,\n size,\n closeOnClickOutside = true,\n ...rest\n}) => {\n const showCloseButton = ['medium', 'large', 'extraLarge'].includes(size);\n\n let handleOnDismiss;\n if (onDismiss && closeOnClickOutside) {\n handleOnDismiss = onDismiss;\n }\n return (\n <ModalOverlay\n open={open}\n onDismiss={handleOnDismiss}\n initialFocusRef={initialFocusRef}\n >\n <ModalContent size={size} {...rest}>\n {showCloseButton && (\n <IconButton\n className=\"eds-modal__close\"\n aria-label={closeLabel}\n onClick={onDismiss}\n >\n <CloseIcon />\n </IconButton>\n )}\n {children}\n </ModalContent>\n </ModalOverlay>\n );\n};\n"],"names":["ModalOverlay","className","open","rest","React","DialogOverlay","classNames","isOpen","headingsMap","extraSmall","Heading4","small","Heading3","medium","Heading2","large","extraLarge","ModalContent","children","size","title","Heading","randomId","useRandomId","DialogContent","margin","as","id","ConditionalWrapper","condition","wrapper","warnAboutMissingStyles","closeLabel","contrast","onDismiss","style","overlay","titleId","Contrast","Fragment","onKeyDown","e","key","stopPropagation","MoveFocusInside","IconButton","onClick","type","CloseIcon","VisuallyHidden","handleOnDismiss","initialFocusRef","closeOnClickOutside","showCloseButton","includes"],"mappings":"uxBAkBaA,EAA4C,
|
|
1
|
+
{"version":3,"file":"modal.cjs.production.min.js","sources":["../src/ModalOverlay.tsx","../src/ModalContent.tsx","../src/Drawer.tsx","../src/index.tsx","../src/Modal.tsx"],"sourcesContent":["import React from 'react';\nimport classNames from 'classnames';\nimport { DialogOverlay } from '@reach/dialog';\n\nexport type ModalOverlayProps = {\n /** Flagg som sier om modalen er åpen */\n open?: boolean;\n /** Callback som kalles når brukeren ber om å lukke modalen */\n onDismiss?: () => void;\n /** Innholdet i modalen */\n children: React.ReactNode;\n /** Ekstra klassenavn */\n className?: string;\n /** En ref til elementet som skal være fokusert når modalen åpnes. Defaulter til lukkeknappen */\n initialFocusRef?: React.RefObject<HTMLElement>;\n [key: string]: any;\n};\n\nexport const ModalOverlay: React.FC<ModalOverlayProps> = ({\n className,\n open,\n ...rest\n}) => (\n <DialogOverlay\n className={classNames('eds-modal__overlay', className)}\n isOpen={open}\n {...rest}\n />\n);\n","import React from 'react';\nimport classNames from 'classnames';\nimport { DialogContent } from '@reach/dialog';\nimport { Heading4, Heading3, Heading2 } from '@entur/typography';\nimport { useRandomId } from '@entur/utils';\n\nexport type ModalContentProps = {\n /** Innholdet i modalen */\n children: React.ReactNode;\n /** Ekstra klassenavn */\n className?: string;\n /** Størrelsen på modalen */\n size: 'extraSmall' | 'small' | 'medium' | 'large' | 'extraLarge';\n /** Tittelen som vises i modalen */\n title: string;\n [key: string]: any;\n};\n\nconst headingsMap = {\n extraSmall: Heading4,\n small: Heading3,\n medium: Heading2,\n large: Heading2,\n extraLarge: Heading2,\n};\n\nexport const ModalContent: React.FC<ModalContentProps> = ({\n children,\n className,\n size,\n title,\n ...rest\n}) => {\n const Heading: React.ElementType = headingsMap[size] || Heading2;\n const randomId = useRandomId('eds-modal');\n return (\n <DialogContent\n className={classNames(\n 'eds-modal__content',\n `eds-modal__content--size-${size}`,\n className,\n )}\n aria-labelledby={randomId}\n {...rest}\n >\n <Heading margin=\"bottom\" as=\"h2\" id={randomId}>\n {title}\n </Heading>\n {children}\n </DialogContent>\n );\n};\n","import React from 'react';\nimport classNames from 'classnames';\nimport { MoveFocusInside } from 'react-focus-lock';\nimport { VisuallyHidden } from '@entur/a11y';\nimport { Contrast } from '@entur/layout';\nimport { CloseIcon } from '@entur/icons';\nimport { Heading3 } from '@entur/typography';\nimport { useRandomId } from '@entur/utils';\nimport { IconButton } from '@entur/button';\n\nimport './Drawer.scss';\nimport { ModalOverlay } from './ModalOverlay';\nimport { DialogContent } from '@reach/dialog';\n\nexport type DrawerProps = {\n /** Innholdet. Typisk tekst, lenker eller knapper */\n children: React.ReactNode;\n /** Ekstra klassenavn */\n className?: string;\n /** Tekst som beskriver lukkeknappen for skjermlesere\n * @default 'Lukk skuff'\n */\n closeLabel?: string;\n /** Om draweren skal vises i mørk variant\n * @default false\n */\n contrast?: boolean;\n /** Callback som kalles når brukeren ønsker å lukke draweren */\n onDismiss: () => void;\n /** Om draweren er åpen eller ikke\n * @default true\n */\n open?: boolean;\n /** Tittel på toppen av draweren */\n title: string;\n /** Styling som sendes til Drawer */\n style?: React.CSSProperties;\n /** Legger på et overlay over resten av siden */\n overlay?: boolean;\n};\n\nexport const Drawer: React.FC<DrawerProps> = ({\n children,\n className,\n closeLabel = 'Lukk skuff',\n contrast = false,\n open = true,\n onDismiss,\n title,\n style,\n overlay = false,\n}) => {\n const titleId = useRandomId('eds-drawer');\n\n if (!open) {\n return null;\n }\n\n const handleKeyDown = (e: React.KeyboardEvent) => {\n if (e.key === 'Escape') {\n e.stopPropagation();\n onDismiss();\n }\n };\n\n const Wrapper = contrast ? Contrast : React.Fragment;\n const ContentContainer = overlay ? DialogContent : 'div';\n return (\n <ConditionalWrapper\n condition={overlay}\n wrapper={(children: React.ReactNode) => (\n <ModalOverlay open={open} onDismiss={onDismiss}>\n {children}\n </ModalOverlay>\n )}\n >\n <Wrapper>\n <ContentContainer\n aria-labelledby={titleId}\n className={classNames('eds-drawer', className)}\n onKeyDown={handleKeyDown}\n style={style}\n >\n <MoveFocusInside>\n <div className=\"eds-drawer__content\">\n <Heading3 as=\"h2\" id={titleId}>\n {title}\n </Heading3>\n {children}\n </div>\n <IconButton\n className=\"eds-drawer__close-button\"\n onClick={onDismiss}\n type=\"button\"\n >\n <CloseIcon aria-hidden />\n <VisuallyHidden>{closeLabel}</VisuallyHidden>\n </IconButton>\n </MoveFocusInside>\n </ContentContainer>\n </Wrapper>\n </ConditionalWrapper>\n );\n};\n\nconst ConditionalWrapper: React.FC<{\n condition: boolean;\n wrapper: (child: JSX.Element) => JSX.Element;\n children: React.ReactElement;\n}> = ({ condition, wrapper, children }) =>\n condition ? wrapper(children) : children;\n","import { warnAboutMissingStyles } from '@entur/utils';\nimport './index.scss';\n\nwarnAboutMissingStyles('modal', 'icons', 'typography', 'a11y', 'button');\n\nexport * from './Modal';\nexport * from './ModalOverlay';\nexport * from './ModalContent';\nexport * from './Drawer';\n","import React from 'react';\nimport { CloseIcon } from '@entur/icons';\nimport { ModalOverlay } from './ModalOverlay';\nimport { ModalContent } from './ModalContent';\nimport { IconButton } from '@entur/button';\nimport './Modal.scss';\n\nexport type ModalProps = {\n /** Innholdet i modalen */\n children: React.ReactNode;\n /** Skjermleser-label til lukk-knappen */\n closeLabel?: string;\n /** En ref til elementet som skal være fokusert når modalen åpnes. Defaulter til lukkeknappen */\n initialFocusRef?: React.RefObject<HTMLElement>;\n /** Flagg som sier om modalen er åpen */\n open?: boolean;\n /** Callback som kalles når brukeren ber om å lukke modalen */\n onDismiss?: () => void;\n /** Størrelsen på modalen */\n size: 'extraSmall' | 'small' | 'medium' | 'large' | 'extraLarge';\n /** Tittelen som vises i modalen */\n title: string;\n /** Om modalen skal lukkes når man klikker på utsiden av den\n * @default true\n */\n closeOnClickOutside?: boolean;\n [key: string]: any;\n};\n\nexport const Modal: React.FC<ModalProps> = ({\n children,\n closeLabel = 'Lukk',\n initialFocusRef,\n open,\n onDismiss,\n size,\n closeOnClickOutside = true,\n ...rest\n}) => {\n const showCloseButton = ['medium', 'large', 'extraLarge'].includes(size);\n\n let handleOnDismiss;\n if (onDismiss && closeOnClickOutside) {\n handleOnDismiss = onDismiss;\n }\n return (\n <ModalOverlay\n open={open}\n onDismiss={handleOnDismiss}\n initialFocusRef={initialFocusRef}\n >\n <ModalContent size={size} {...rest}>\n {showCloseButton && (\n <IconButton\n className=\"eds-modal__close\"\n aria-label={closeLabel}\n onClick={onDismiss}\n >\n <CloseIcon />\n </IconButton>\n )}\n {children}\n </ModalContent>\n </ModalOverlay>\n );\n};\n"],"names":["ModalOverlay","className","open","rest","React","DialogOverlay","classNames","isOpen","headingsMap","extraSmall","Heading4","small","Heading3","medium","Heading2","large","extraLarge","ModalContent","children","size","title","Heading","randomId","useRandomId","DialogContent","margin","as","id","ConditionalWrapper","condition","wrapper","warnAboutMissingStyles","_ref$closeLabel","closeLabel","_ref$contrast","contrast","_ref$open","onDismiss","style","_ref$overlay","overlay","titleId","Contrast","Fragment","onKeyDown","e","key","stopPropagation","MoveFocusInside","IconButton","onClick","type","CloseIcon","VisuallyHidden","handleOnDismiss","initialFocusRef","_ref$closeOnClickOuts","closeOnClickOutside","showCloseButton","includes"],"mappings":"uxBAkBaA,EAA4C,YAAhC,IACvBC,IAAAA,UACAC,IAAAA,KACGC,SAAI,OAEPC,wBAACC,mBACCJ,UAAWK,UAAW,qBAAsBL,GAC5CM,OAAQL,GACJC,+CCRFK,EAAc,CAClBC,WAAYC,WACZC,MAAOC,WACPC,OAAQC,WACRC,MAAOD,WACPE,WAAYF,YAGDG,EAA4C,gBACvDC,IAAAA,SACAjB,IAAAA,UACAkB,IAAAA,KACAC,IAAAA,MACGjB,SAEGkB,EAA6Bb,EAAYW,IAASL,WAClDQ,EAAWC,cAAY,aAC7B,OACEnB,wBAACoB,mBACCvB,UAAWK,UACT,iDAC4Ba,EAC5BlB,qBAEeqB,GACbnB,GAEJC,wBAACiB,GAAQI,OAAO,SAASC,GAAG,KAAKC,GAAIL,GAClCF,GAEFF,kGCyDDU,EAID,YAJmB,IAIIV,IAAAA,SAAQ,SAA5BW,WACMC,IADKA,SACGZ,GAAYA,GC3GlCa,yBAAuB,QAAS,QAAS,aAAc,OAAQ,yBDsClB,gBAC3Cb,IAAAA,SACAjB,IAAAA,UAAS+B,IACTC,WAAAA,aAAa,eAAYC,IACzBC,SAAAA,gBAAgBC,IAChBlC,KAAAA,gBACAmC,IAAAA,UACAjB,IAAAA,MACAkB,IAAAA,MAAKC,IACLC,QAAAA,gBAEMC,EAAUlB,cAAY,cAE5B,OAAKrB,EAcHE,wBAACwB,GACCC,UAAWW,EACXV,QAAS,SAACZ,GAAyB,OACjCd,wBAACJ,GAAaE,KAAMA,EAAMmC,UAAWA,GAClCnB,KAILd,wBAXY+B,EAAWO,WAAWtC,UAAMuC,cAYtCvC,wBAXmBoC,EAAUhB,gBAAgB,yBAY1BiB,EACjBxC,UAAWK,UAAW,aAAcL,GACpC2C,UAtBc,SAACC,GACP,WAAVA,EAAEC,MACJD,EAAEE,kBACFV,MAoBIC,MAAOA,GAEPlC,wBAAC4C,uBACC5C,+BAAKH,UAAU,uBACbG,wBAACQ,YAASc,GAAG,KAAKC,GAAIc,GACnBrB,GAEFF,GAEHd,wBAAC6C,cACChD,UAAU,2BACViD,QAASb,EACTc,KAAK,UAEL/C,wBAACgD,gCACDhD,wBAACiD,sBAAgBpB,QAzCpB,oBE1BgC,gBAYrCqB,EAXJpC,IAAAA,SAAQc,IACRC,WAAAA,aAAa,SACbsB,IAAAA,gBACArD,IAAAA,KACAmC,IAAAA,UACAlB,IAAAA,KAAIqC,IACJC,oBAAAA,gBACGtD,SAEGuD,EAAkB,CAAC,SAAU,QAAS,cAAcC,SAASxC,GAMnE,OAHIkB,GAAaoB,IACfH,EAAkBjB,GAGlBjC,wBAACJ,GACCE,KAAMA,EACNmC,UAAWiB,EACXC,gBAAiBA,GAEjBnD,wBAACa,KAAaE,KAAMA,GAAUhB,GAC3BuD,GACCtD,wBAAC6C,cACChD,UAAU,gCACEgC,EACZiB,QAASb,GAETjC,wBAACgD,mBAGJlC"}
|
package/dist/modal.esm.js
CHANGED
|
@@ -13,41 +13,34 @@ function _extends() {
|
|
|
13
13
|
_extends = Object.assign || function (target) {
|
|
14
14
|
for (var i = 1; i < arguments.length; i++) {
|
|
15
15
|
var source = arguments[i];
|
|
16
|
-
|
|
17
16
|
for (var key in source) {
|
|
18
17
|
if (Object.prototype.hasOwnProperty.call(source, key)) {
|
|
19
18
|
target[key] = source[key];
|
|
20
19
|
}
|
|
21
20
|
}
|
|
22
21
|
}
|
|
23
|
-
|
|
24
22
|
return target;
|
|
25
23
|
};
|
|
26
|
-
|
|
27
24
|
return _extends.apply(this, arguments);
|
|
28
25
|
}
|
|
29
|
-
|
|
30
26
|
function _objectWithoutPropertiesLoose(source, excluded) {
|
|
31
27
|
if (source == null) return {};
|
|
32
28
|
var target = {};
|
|
33
29
|
var sourceKeys = Object.keys(source);
|
|
34
30
|
var key, i;
|
|
35
|
-
|
|
36
31
|
for (i = 0; i < sourceKeys.length; i++) {
|
|
37
32
|
key = sourceKeys[i];
|
|
38
33
|
if (excluded.indexOf(key) >= 0) continue;
|
|
39
34
|
target[key] = source[key];
|
|
40
35
|
}
|
|
41
|
-
|
|
42
36
|
return target;
|
|
43
37
|
}
|
|
44
38
|
|
|
45
39
|
var _excluded$2 = ["className", "open"];
|
|
46
40
|
var ModalOverlay = function ModalOverlay(_ref) {
|
|
47
41
|
var className = _ref.className,
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
42
|
+
open = _ref.open,
|
|
43
|
+
rest = _objectWithoutPropertiesLoose(_ref, _excluded$2);
|
|
51
44
|
return React.createElement(DialogOverlay, _extends({
|
|
52
45
|
className: classNames('eds-modal__overlay', className),
|
|
53
46
|
isOpen: open
|
|
@@ -64,11 +57,10 @@ var headingsMap = {
|
|
|
64
57
|
};
|
|
65
58
|
var ModalContent = function ModalContent(_ref) {
|
|
66
59
|
var children = _ref.children,
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
60
|
+
className = _ref.className,
|
|
61
|
+
size = _ref.size,
|
|
62
|
+
title = _ref.title,
|
|
63
|
+
rest = _objectWithoutPropertiesLoose(_ref, _excluded$1);
|
|
72
64
|
var Heading = headingsMap[size] || Heading2;
|
|
73
65
|
var randomId = useRandomId('eds-modal');
|
|
74
66
|
return React.createElement(DialogContent, _extends({
|
|
@@ -84,23 +76,20 @@ var ModalContent = function ModalContent(_ref) {
|
|
|
84
76
|
var _excluded = ["children", "closeLabel", "initialFocusRef", "open", "onDismiss", "size", "closeOnClickOutside"];
|
|
85
77
|
var Modal = function Modal(_ref) {
|
|
86
78
|
var children = _ref.children,
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
79
|
+
_ref$closeLabel = _ref.closeLabel,
|
|
80
|
+
closeLabel = _ref$closeLabel === void 0 ? 'Lukk' : _ref$closeLabel,
|
|
81
|
+
initialFocusRef = _ref.initialFocusRef,
|
|
82
|
+
open = _ref.open,
|
|
83
|
+
onDismiss = _ref.onDismiss,
|
|
84
|
+
size = _ref.size,
|
|
85
|
+
_ref$closeOnClickOuts = _ref.closeOnClickOutside,
|
|
86
|
+
closeOnClickOutside = _ref$closeOnClickOuts === void 0 ? true : _ref$closeOnClickOuts,
|
|
87
|
+
rest = _objectWithoutPropertiesLoose(_ref, _excluded);
|
|
97
88
|
var showCloseButton = ['medium', 'large', 'extraLarge'].includes(size);
|
|
98
89
|
var handleOnDismiss;
|
|
99
|
-
|
|
100
90
|
if (onDismiss && closeOnClickOutside) {
|
|
101
91
|
handleOnDismiss = onDismiss;
|
|
102
92
|
}
|
|
103
|
-
|
|
104
93
|
return React.createElement(ModalOverlay, {
|
|
105
94
|
open: open,
|
|
106
95
|
onDismiss: handleOnDismiss,
|
|
@@ -116,31 +105,28 @@ var Modal = function Modal(_ref) {
|
|
|
116
105
|
|
|
117
106
|
var Drawer = function Drawer(_ref) {
|
|
118
107
|
var children = _ref.children,
|
|
119
|
-
|
|
120
|
-
|
|
121
|
-
|
|
122
|
-
|
|
123
|
-
|
|
124
|
-
|
|
125
|
-
|
|
126
|
-
|
|
127
|
-
|
|
128
|
-
|
|
129
|
-
|
|
130
|
-
|
|
108
|
+
className = _ref.className,
|
|
109
|
+
_ref$closeLabel = _ref.closeLabel,
|
|
110
|
+
closeLabel = _ref$closeLabel === void 0 ? 'Lukk skuff' : _ref$closeLabel,
|
|
111
|
+
_ref$contrast = _ref.contrast,
|
|
112
|
+
contrast = _ref$contrast === void 0 ? false : _ref$contrast,
|
|
113
|
+
_ref$open = _ref.open,
|
|
114
|
+
open = _ref$open === void 0 ? true : _ref$open,
|
|
115
|
+
onDismiss = _ref.onDismiss,
|
|
116
|
+
title = _ref.title,
|
|
117
|
+
style = _ref.style,
|
|
118
|
+
_ref$overlay = _ref.overlay,
|
|
119
|
+
overlay = _ref$overlay === void 0 ? false : _ref$overlay;
|
|
131
120
|
var titleId = useRandomId('eds-drawer');
|
|
132
|
-
|
|
133
121
|
if (!open) {
|
|
134
122
|
return null;
|
|
135
123
|
}
|
|
136
|
-
|
|
137
124
|
var handleKeyDown = function handleKeyDown(e) {
|
|
138
125
|
if (e.key === 'Escape') {
|
|
139
126
|
e.stopPropagation();
|
|
140
127
|
onDismiss();
|
|
141
128
|
}
|
|
142
129
|
};
|
|
143
|
-
|
|
144
130
|
var Wrapper = contrast ? Contrast : React.Fragment;
|
|
145
131
|
var ContentContainer = overlay ? DialogContent : 'div';
|
|
146
132
|
return React.createElement(ConditionalWrapper, {
|
|
@@ -169,11 +155,10 @@ var Drawer = function Drawer(_ref) {
|
|
|
169
155
|
"aria-hidden": true
|
|
170
156
|
}), React.createElement(VisuallyHidden, null, closeLabel))))));
|
|
171
157
|
};
|
|
172
|
-
|
|
173
158
|
var ConditionalWrapper = function ConditionalWrapper(_ref2) {
|
|
174
159
|
var condition = _ref2.condition,
|
|
175
|
-
|
|
176
|
-
|
|
160
|
+
wrapper = _ref2.wrapper,
|
|
161
|
+
children = _ref2.children;
|
|
177
162
|
return condition ? wrapper(children) : children;
|
|
178
163
|
};
|
|
179
164
|
|
package/dist/modal.esm.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"modal.esm.js","sources":["../src/ModalOverlay.tsx","../src/ModalContent.tsx","../src/Modal.tsx","../src/Drawer.tsx","../src/index.tsx"],"sourcesContent":["import React from 'react';\nimport classNames from 'classnames';\nimport { DialogOverlay } from '@reach/dialog';\n\nexport type ModalOverlayProps = {\n /** Flagg som sier om modalen er åpen */\n open?: boolean;\n /** Callback som kalles når brukeren ber om å lukke modalen */\n onDismiss?: () => void;\n /** Innholdet i modalen */\n children: React.ReactNode;\n /** Ekstra klassenavn */\n className?: string;\n /** En ref til elementet som skal være fokusert når modalen åpnes. Defaulter til lukkeknappen */\n initialFocusRef?: React.RefObject<HTMLElement>;\n [key: string]: any;\n};\n\nexport const ModalOverlay: React.FC<ModalOverlayProps> = ({\n className,\n open,\n ...rest\n}) => (\n <DialogOverlay\n className={classNames('eds-modal__overlay', className)}\n isOpen={open}\n {...rest}\n />\n);\n","import React from 'react';\nimport classNames from 'classnames';\nimport { DialogContent } from '@reach/dialog';\nimport { Heading4, Heading3, Heading2 } from '@entur/typography';\nimport { useRandomId } from '@entur/utils';\n\nexport type ModalContentProps = {\n /** Innholdet i modalen */\n children: React.ReactNode;\n /** Ekstra klassenavn */\n className?: string;\n /** Størrelsen på modalen */\n size: 'extraSmall' | 'small' | 'medium' | 'large' | 'extraLarge';\n /** Tittelen som vises i modalen */\n title: string;\n [key: string]: any;\n};\n\nconst headingsMap = {\n extraSmall: Heading4,\n small: Heading3,\n medium: Heading2,\n large: Heading2,\n extraLarge: Heading2,\n};\n\nexport const ModalContent: React.FC<ModalContentProps> = ({\n children,\n className,\n size,\n title,\n ...rest\n}) => {\n const Heading: React.ElementType = headingsMap[size] || Heading2;\n const randomId = useRandomId('eds-modal');\n return (\n <DialogContent\n className={classNames(\n 'eds-modal__content',\n `eds-modal__content--size-${size}`,\n className,\n )}\n aria-labelledby={randomId}\n {...rest}\n >\n <Heading margin=\"bottom\" as=\"h2\" id={randomId}>\n {title}\n </Heading>\n {children}\n </DialogContent>\n );\n};\n","import React from 'react';\nimport { CloseIcon } from '@entur/icons';\nimport { ModalOverlay } from './ModalOverlay';\nimport { ModalContent } from './ModalContent';\nimport { IconButton } from '@entur/button';\nimport './Modal.scss';\n\nexport type ModalProps = {\n /** Innholdet i modalen */\n children: React.ReactNode;\n /** Skjermleser-label til lukk-knappen */\n closeLabel?: string;\n /** En ref til elementet som skal være fokusert når modalen åpnes. Defaulter til lukkeknappen */\n initialFocusRef?: React.RefObject<HTMLElement>;\n /** Flagg som sier om modalen er åpen */\n open?: boolean;\n /** Callback som kalles når brukeren ber om å lukke modalen */\n onDismiss?: () => void;\n /** Størrelsen på modalen */\n size: 'extraSmall' | 'small' | 'medium' | 'large' | 'extraLarge';\n /** Tittelen som vises i modalen */\n title: string;\n /** Om modalen skal lukkes når man klikker på utsiden av den\n * @default true\n */\n closeOnClickOutside?: boolean;\n [key: string]: any;\n};\n\nexport const Modal: React.FC<ModalProps> = ({\n children,\n closeLabel = 'Lukk',\n initialFocusRef,\n open,\n onDismiss,\n size,\n closeOnClickOutside = true,\n ...rest\n}) => {\n const showCloseButton = ['medium', 'large', 'extraLarge'].includes(size);\n\n let handleOnDismiss;\n if (onDismiss && closeOnClickOutside) {\n handleOnDismiss = onDismiss;\n }\n return (\n <ModalOverlay\n open={open}\n onDismiss={handleOnDismiss}\n initialFocusRef={initialFocusRef}\n >\n <ModalContent size={size} {...rest}>\n {showCloseButton && (\n <IconButton\n className=\"eds-modal__close\"\n aria-label={closeLabel}\n onClick={onDismiss}\n >\n <CloseIcon />\n </IconButton>\n )}\n {children}\n </ModalContent>\n </ModalOverlay>\n );\n};\n","import React from 'react';\nimport classNames from 'classnames';\nimport { MoveFocusInside } from 'react-focus-lock';\nimport { VisuallyHidden } from '@entur/a11y';\nimport { Contrast } from '@entur/layout';\nimport { CloseIcon } from '@entur/icons';\nimport { Heading3 } from '@entur/typography';\nimport { useRandomId } from '@entur/utils';\nimport { IconButton } from '@entur/button';\n\nimport './Drawer.scss';\nimport { ModalOverlay } from './ModalOverlay';\nimport { DialogContent } from '@reach/dialog';\n\nexport type DrawerProps = {\n /** Innholdet. Typisk tekst, lenker eller knapper */\n children: React.ReactNode;\n /** Ekstra klassenavn */\n className?: string;\n /** Tekst som beskriver lukkeknappen for skjermlesere\n * @default 'Lukk skuff'\n */\n closeLabel?: string;\n /** Om draweren skal vises i mørk variant\n * @default false\n */\n contrast?: boolean;\n /** Callback som kalles når brukeren ønsker å lukke draweren */\n onDismiss: () => void;\n /** Om draweren er åpen eller ikke\n * @default true\n */\n open?: boolean;\n /** Tittel på toppen av draweren */\n title: string;\n /** Styling som sendes til Drawer */\n style?: React.CSSProperties;\n /** Legger på et overlay over resten av siden */\n overlay?: boolean;\n};\n\nexport const Drawer: React.FC<DrawerProps> = ({\n children,\n className,\n closeLabel = 'Lukk skuff',\n contrast = false,\n open = true,\n onDismiss,\n title,\n style,\n overlay = false,\n}) => {\n const titleId = useRandomId('eds-drawer');\n\n if (!open) {\n return null;\n }\n\n const handleKeyDown = (e: React.KeyboardEvent) => {\n if (e.key === 'Escape') {\n e.stopPropagation();\n onDismiss();\n }\n };\n\n const Wrapper = contrast ? Contrast : React.Fragment;\n const ContentContainer = overlay ? DialogContent : 'div';\n return (\n <ConditionalWrapper\n condition={overlay}\n wrapper={(children: React.ReactNode) => (\n <ModalOverlay open={open} onDismiss={onDismiss}>\n {children}\n </ModalOverlay>\n )}\n >\n <Wrapper>\n <ContentContainer\n aria-labelledby={titleId}\n className={classNames('eds-drawer', className)}\n onKeyDown={handleKeyDown}\n style={style}\n >\n <MoveFocusInside>\n <div className=\"eds-drawer__content\">\n <Heading3 as=\"h2\" id={titleId}>\n {title}\n </Heading3>\n {children}\n </div>\n <IconButton\n className=\"eds-drawer__close-button\"\n onClick={onDismiss}\n type=\"button\"\n >\n <CloseIcon aria-hidden />\n <VisuallyHidden>{closeLabel}</VisuallyHidden>\n </IconButton>\n </MoveFocusInside>\n </ContentContainer>\n </Wrapper>\n </ConditionalWrapper>\n );\n};\n\nconst ConditionalWrapper: React.FC<{\n condition: boolean;\n wrapper: (child: JSX.Element) => JSX.Element;\n children: React.ReactElement;\n}> = ({ condition, wrapper, children }) =>\n condition ? wrapper(children) : children;\n","import { warnAboutMissingStyles } from '@entur/utils';\nimport './index.scss';\n\nwarnAboutMissingStyles('modal', 'icons', 'typography', 'a11y', 'button');\n\nexport * from './Modal';\nexport * from './ModalOverlay';\nexport * from './ModalContent';\nexport * from './Drawer';\n"],"names":["ModalOverlay","className","open","rest","React","DialogOverlay","classNames","isOpen","headingsMap","extraSmall","Heading4","small","Heading3","medium","Heading2","large","extraLarge","ModalContent","children","size","title","Heading","randomId","useRandomId","DialogContent","margin","as","id","Modal","closeLabel","initialFocusRef","onDismiss","closeOnClickOutside","showCloseButton","includes","handleOnDismiss","IconButton","onClick","CloseIcon","Drawer","contrast","style","overlay","titleId","handleKeyDown","e","key","stopPropagation","Wrapper","Contrast","Fragment","ContentContainer","ConditionalWrapper","condition","wrapper","onKeyDown","MoveFocusInside","type","VisuallyHidden","warnAboutMissingStyles"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"modal.esm.js","sources":["../src/ModalOverlay.tsx","../src/ModalContent.tsx","../src/Modal.tsx","../src/Drawer.tsx","../src/index.tsx"],"sourcesContent":["import React from 'react';\nimport classNames from 'classnames';\nimport { DialogOverlay } from '@reach/dialog';\n\nexport type ModalOverlayProps = {\n /** Flagg som sier om modalen er åpen */\n open?: boolean;\n /** Callback som kalles når brukeren ber om å lukke modalen */\n onDismiss?: () => void;\n /** Innholdet i modalen */\n children: React.ReactNode;\n /** Ekstra klassenavn */\n className?: string;\n /** En ref til elementet som skal være fokusert når modalen åpnes. Defaulter til lukkeknappen */\n initialFocusRef?: React.RefObject<HTMLElement>;\n [key: string]: any;\n};\n\nexport const ModalOverlay: React.FC<ModalOverlayProps> = ({\n className,\n open,\n ...rest\n}) => (\n <DialogOverlay\n className={classNames('eds-modal__overlay', className)}\n isOpen={open}\n {...rest}\n />\n);\n","import React from 'react';\nimport classNames from 'classnames';\nimport { DialogContent } from '@reach/dialog';\nimport { Heading4, Heading3, Heading2 } from '@entur/typography';\nimport { useRandomId } from '@entur/utils';\n\nexport type ModalContentProps = {\n /** Innholdet i modalen */\n children: React.ReactNode;\n /** Ekstra klassenavn */\n className?: string;\n /** Størrelsen på modalen */\n size: 'extraSmall' | 'small' | 'medium' | 'large' | 'extraLarge';\n /** Tittelen som vises i modalen */\n title: string;\n [key: string]: any;\n};\n\nconst headingsMap = {\n extraSmall: Heading4,\n small: Heading3,\n medium: Heading2,\n large: Heading2,\n extraLarge: Heading2,\n};\n\nexport const ModalContent: React.FC<ModalContentProps> = ({\n children,\n className,\n size,\n title,\n ...rest\n}) => {\n const Heading: React.ElementType = headingsMap[size] || Heading2;\n const randomId = useRandomId('eds-modal');\n return (\n <DialogContent\n className={classNames(\n 'eds-modal__content',\n `eds-modal__content--size-${size}`,\n className,\n )}\n aria-labelledby={randomId}\n {...rest}\n >\n <Heading margin=\"bottom\" as=\"h2\" id={randomId}>\n {title}\n </Heading>\n {children}\n </DialogContent>\n );\n};\n","import React from 'react';\nimport { CloseIcon } from '@entur/icons';\nimport { ModalOverlay } from './ModalOverlay';\nimport { ModalContent } from './ModalContent';\nimport { IconButton } from '@entur/button';\nimport './Modal.scss';\n\nexport type ModalProps = {\n /** Innholdet i modalen */\n children: React.ReactNode;\n /** Skjermleser-label til lukk-knappen */\n closeLabel?: string;\n /** En ref til elementet som skal være fokusert når modalen åpnes. Defaulter til lukkeknappen */\n initialFocusRef?: React.RefObject<HTMLElement>;\n /** Flagg som sier om modalen er åpen */\n open?: boolean;\n /** Callback som kalles når brukeren ber om å lukke modalen */\n onDismiss?: () => void;\n /** Størrelsen på modalen */\n size: 'extraSmall' | 'small' | 'medium' | 'large' | 'extraLarge';\n /** Tittelen som vises i modalen */\n title: string;\n /** Om modalen skal lukkes når man klikker på utsiden av den\n * @default true\n */\n closeOnClickOutside?: boolean;\n [key: string]: any;\n};\n\nexport const Modal: React.FC<ModalProps> = ({\n children,\n closeLabel = 'Lukk',\n initialFocusRef,\n open,\n onDismiss,\n size,\n closeOnClickOutside = true,\n ...rest\n}) => {\n const showCloseButton = ['medium', 'large', 'extraLarge'].includes(size);\n\n let handleOnDismiss;\n if (onDismiss && closeOnClickOutside) {\n handleOnDismiss = onDismiss;\n }\n return (\n <ModalOverlay\n open={open}\n onDismiss={handleOnDismiss}\n initialFocusRef={initialFocusRef}\n >\n <ModalContent size={size} {...rest}>\n {showCloseButton && (\n <IconButton\n className=\"eds-modal__close\"\n aria-label={closeLabel}\n onClick={onDismiss}\n >\n <CloseIcon />\n </IconButton>\n )}\n {children}\n </ModalContent>\n </ModalOverlay>\n );\n};\n","import React from 'react';\nimport classNames from 'classnames';\nimport { MoveFocusInside } from 'react-focus-lock';\nimport { VisuallyHidden } from '@entur/a11y';\nimport { Contrast } from '@entur/layout';\nimport { CloseIcon } from '@entur/icons';\nimport { Heading3 } from '@entur/typography';\nimport { useRandomId } from '@entur/utils';\nimport { IconButton } from '@entur/button';\n\nimport './Drawer.scss';\nimport { ModalOverlay } from './ModalOverlay';\nimport { DialogContent } from '@reach/dialog';\n\nexport type DrawerProps = {\n /** Innholdet. Typisk tekst, lenker eller knapper */\n children: React.ReactNode;\n /** Ekstra klassenavn */\n className?: string;\n /** Tekst som beskriver lukkeknappen for skjermlesere\n * @default 'Lukk skuff'\n */\n closeLabel?: string;\n /** Om draweren skal vises i mørk variant\n * @default false\n */\n contrast?: boolean;\n /** Callback som kalles når brukeren ønsker å lukke draweren */\n onDismiss: () => void;\n /** Om draweren er åpen eller ikke\n * @default true\n */\n open?: boolean;\n /** Tittel på toppen av draweren */\n title: string;\n /** Styling som sendes til Drawer */\n style?: React.CSSProperties;\n /** Legger på et overlay over resten av siden */\n overlay?: boolean;\n};\n\nexport const Drawer: React.FC<DrawerProps> = ({\n children,\n className,\n closeLabel = 'Lukk skuff',\n contrast = false,\n open = true,\n onDismiss,\n title,\n style,\n overlay = false,\n}) => {\n const titleId = useRandomId('eds-drawer');\n\n if (!open) {\n return null;\n }\n\n const handleKeyDown = (e: React.KeyboardEvent) => {\n if (e.key === 'Escape') {\n e.stopPropagation();\n onDismiss();\n }\n };\n\n const Wrapper = contrast ? Contrast : React.Fragment;\n const ContentContainer = overlay ? DialogContent : 'div';\n return (\n <ConditionalWrapper\n condition={overlay}\n wrapper={(children: React.ReactNode) => (\n <ModalOverlay open={open} onDismiss={onDismiss}>\n {children}\n </ModalOverlay>\n )}\n >\n <Wrapper>\n <ContentContainer\n aria-labelledby={titleId}\n className={classNames('eds-drawer', className)}\n onKeyDown={handleKeyDown}\n style={style}\n >\n <MoveFocusInside>\n <div className=\"eds-drawer__content\">\n <Heading3 as=\"h2\" id={titleId}>\n {title}\n </Heading3>\n {children}\n </div>\n <IconButton\n className=\"eds-drawer__close-button\"\n onClick={onDismiss}\n type=\"button\"\n >\n <CloseIcon aria-hidden />\n <VisuallyHidden>{closeLabel}</VisuallyHidden>\n </IconButton>\n </MoveFocusInside>\n </ContentContainer>\n </Wrapper>\n </ConditionalWrapper>\n );\n};\n\nconst ConditionalWrapper: React.FC<{\n condition: boolean;\n wrapper: (child: JSX.Element) => JSX.Element;\n children: React.ReactElement;\n}> = ({ condition, wrapper, children }) =>\n condition ? wrapper(children) : children;\n","import { warnAboutMissingStyles } from '@entur/utils';\nimport './index.scss';\n\nwarnAboutMissingStyles('modal', 'icons', 'typography', 'a11y', 'button');\n\nexport * from './Modal';\nexport * from './ModalOverlay';\nexport * from './ModalContent';\nexport * from './Drawer';\n"],"names":["ModalOverlay","className","open","rest","React","DialogOverlay","classNames","isOpen","headingsMap","extraSmall","Heading4","small","Heading3","medium","Heading2","large","extraLarge","ModalContent","children","size","title","Heading","randomId","useRandomId","DialogContent","margin","as","id","Modal","closeLabel","initialFocusRef","onDismiss","closeOnClickOutside","showCloseButton","includes","handleOnDismiss","IconButton","onClick","CloseIcon","Drawer","contrast","style","overlay","titleId","handleKeyDown","e","key","stopPropagation","Wrapper","Contrast","Fragment","ContentContainer","ConditionalWrapper","condition","wrapper","onKeyDown","MoveFocusInside","type","VisuallyHidden","warnAboutMissingStyles"],"mappings":"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"}
|
package/dist/styles.css
CHANGED
|
@@ -2,6 +2,49 @@
|
|
|
2
2
|
--eds-modal: 1;
|
|
3
3
|
}/* DO NOT CHANGE!*/
|
|
4
4
|
/* This file is automatically generated from @entur/tokens! Changes will be overwritten. */
|
|
5
|
+
@keyframes slideFromRight {
|
|
6
|
+
from {
|
|
7
|
+
box-shadow: none;
|
|
8
|
+
transform: translateX(100%);
|
|
9
|
+
}
|
|
10
|
+
to {
|
|
11
|
+
box-shadow: 0 0.0625rem 0.1875rem rgba(0, 0, 0, 0.25);
|
|
12
|
+
transform: 0;
|
|
13
|
+
}
|
|
14
|
+
}
|
|
15
|
+
.eds-drawer {
|
|
16
|
+
animation: slideFromRight forwards ease-out 0.1s;
|
|
17
|
+
background: #ebebf1;
|
|
18
|
+
bottom: 0;
|
|
19
|
+
padding: 1.5rem;
|
|
20
|
+
position: fixed;
|
|
21
|
+
right: 0;
|
|
22
|
+
top: 0;
|
|
23
|
+
max-width: 100%;
|
|
24
|
+
min-width: 20rem;
|
|
25
|
+
width: 25vw;
|
|
26
|
+
z-index: 40;
|
|
27
|
+
overflow-y: auto;
|
|
28
|
+
}
|
|
29
|
+
.eds-contrast .eds-drawer {
|
|
30
|
+
background: #292b6a;
|
|
31
|
+
}
|
|
32
|
+
|
|
33
|
+
.eds-drawer__close-button {
|
|
34
|
+
margin: 0;
|
|
35
|
+
position: absolute;
|
|
36
|
+
top: 1.5rem;
|
|
37
|
+
right: 1.5rem;
|
|
38
|
+
}
|
|
39
|
+
.eds-drawer__close-button:focus {
|
|
40
|
+
outline-offset: 0.125rem;
|
|
41
|
+
outline: none;
|
|
42
|
+
box-shadow: 0 0 0 0.125rem #ffffff, 0 0 0 0.25rem #181c56;
|
|
43
|
+
}
|
|
44
|
+
.eds-contrast .eds-drawer__close-button:focus {
|
|
45
|
+
box-shadow: 0 0 0 0.125rem #181c56, 0 0 0 0.25rem #ffffff;
|
|
46
|
+
}/* DO NOT CHANGE!*/
|
|
47
|
+
/* This file is automatically generated from @entur/tokens! Changes will be overwritten. */
|
|
5
48
|
:root {
|
|
6
49
|
--reach-dialog: 1;
|
|
7
50
|
}
|
|
@@ -16,12 +59,9 @@
|
|
|
16
59
|
right: 0;
|
|
17
60
|
top: 0;
|
|
18
61
|
z-index: 30;
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
-
|
|
22
|
-
animation-duration: 0.2s;
|
|
23
|
-
-webkit-animation-timing-function: ease-in-out;
|
|
24
|
-
animation-timing-function: ease-in-out;
|
|
62
|
+
animation: fadeInOverlay;
|
|
63
|
+
animation-duration: 0.2s;
|
|
64
|
+
animation-timing-function: ease-in-out;
|
|
25
65
|
}
|
|
26
66
|
|
|
27
67
|
.eds-modal__content {
|
|
@@ -36,12 +76,9 @@
|
|
|
36
76
|
max-height: 90vh;
|
|
37
77
|
overflow: auto;
|
|
38
78
|
z-index: 40;
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
-
|
|
42
|
-
animation-duration: 0.2s;
|
|
43
|
-
-webkit-animation-timing-function: ease-in-out;
|
|
44
|
-
animation-timing-function: ease-in-out;
|
|
79
|
+
animation: slideInContent;
|
|
80
|
+
animation-duration: 0.2s;
|
|
81
|
+
animation-timing-function: ease-in-out;
|
|
45
82
|
}
|
|
46
83
|
.eds-modal__content--size-extraSmall {
|
|
47
84
|
max-width: 21rem;
|
|
@@ -101,15 +138,6 @@
|
|
|
101
138
|
box-shadow: 0 0 0 0.125rem #ffffff, 0 0 0 0.25rem #181c56;
|
|
102
139
|
}
|
|
103
140
|
|
|
104
|
-
@-webkit-keyframes fadeInOverlay {
|
|
105
|
-
from {
|
|
106
|
-
opacity: 0;
|
|
107
|
-
}
|
|
108
|
-
to {
|
|
109
|
-
opacity: 1;
|
|
110
|
-
}
|
|
111
|
-
}
|
|
112
|
-
|
|
113
141
|
@keyframes fadeInOverlay {
|
|
114
142
|
from {
|
|
115
143
|
opacity: 0;
|
|
@@ -118,16 +146,6 @@
|
|
|
118
146
|
opacity: 1;
|
|
119
147
|
}
|
|
120
148
|
}
|
|
121
|
-
@-webkit-keyframes slideInContent {
|
|
122
|
-
from {
|
|
123
|
-
top: 5rem;
|
|
124
|
-
opacity: 0;
|
|
125
|
-
}
|
|
126
|
-
to {
|
|
127
|
-
top: 0%;
|
|
128
|
-
opacity: 1;
|
|
129
|
-
}
|
|
130
|
-
}
|
|
131
149
|
@keyframes slideInContent {
|
|
132
150
|
from {
|
|
133
151
|
top: 5rem;
|
|
@@ -137,58 +155,4 @@
|
|
|
137
155
|
top: 0%;
|
|
138
156
|
opacity: 1;
|
|
139
157
|
}
|
|
140
|
-
}/* DO NOT CHANGE!*/
|
|
141
|
-
/* This file is automatically generated from @entur/tokens! Changes will be overwritten. */
|
|
142
|
-
@-webkit-keyframes slideFromRight {
|
|
143
|
-
from {
|
|
144
|
-
box-shadow: none;
|
|
145
|
-
transform: translateX(100%);
|
|
146
|
-
}
|
|
147
|
-
to {
|
|
148
|
-
box-shadow: 0 0.0625rem 0.1875rem rgba(0, 0, 0, 0.25);
|
|
149
|
-
transform: 0;
|
|
150
|
-
}
|
|
151
|
-
}
|
|
152
|
-
@keyframes slideFromRight {
|
|
153
|
-
from {
|
|
154
|
-
box-shadow: none;
|
|
155
|
-
transform: translateX(100%);
|
|
156
|
-
}
|
|
157
|
-
to {
|
|
158
|
-
box-shadow: 0 0.0625rem 0.1875rem rgba(0, 0, 0, 0.25);
|
|
159
|
-
transform: 0;
|
|
160
|
-
}
|
|
161
|
-
}
|
|
162
|
-
.eds-drawer {
|
|
163
|
-
-webkit-animation: slideFromRight forwards ease-out 0.1s;
|
|
164
|
-
animation: slideFromRight forwards ease-out 0.1s;
|
|
165
|
-
background: #ebebf1;
|
|
166
|
-
bottom: 0;
|
|
167
|
-
padding: 1.5rem;
|
|
168
|
-
position: fixed;
|
|
169
|
-
right: 0;
|
|
170
|
-
top: 0;
|
|
171
|
-
max-width: 100%;
|
|
172
|
-
min-width: 20rem;
|
|
173
|
-
width: 25vw;
|
|
174
|
-
z-index: 40;
|
|
175
|
-
overflow-y: auto;
|
|
176
|
-
}
|
|
177
|
-
.eds-contrast .eds-drawer {
|
|
178
|
-
background: #292b6a;
|
|
179
|
-
}
|
|
180
|
-
|
|
181
|
-
.eds-drawer__close-button {
|
|
182
|
-
margin: 0;
|
|
183
|
-
position: absolute;
|
|
184
|
-
top: 1.5rem;
|
|
185
|
-
right: 1.5rem;
|
|
186
|
-
}
|
|
187
|
-
.eds-drawer__close-button:focus {
|
|
188
|
-
outline-offset: 0.125rem;
|
|
189
|
-
outline: none;
|
|
190
|
-
box-shadow: 0 0 0 0.125rem #ffffff, 0 0 0 0.25rem #181c56;
|
|
191
|
-
}
|
|
192
|
-
.eds-contrast .eds-drawer__close-button:focus {
|
|
193
|
-
box-shadow: 0 0 0 0.125rem #181c56, 0 0 0 0.25rem #ffffff;
|
|
194
158
|
}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@entur/modal",
|
|
3
|
-
"version": "1.6.
|
|
3
|
+
"version": "1.6.16",
|
|
4
4
|
"license": "EUPL-1.2",
|
|
5
5
|
"main": "dist/index.js",
|
|
6
6
|
"module": "dist/modal.esm.js",
|
|
@@ -17,26 +17,33 @@
|
|
|
17
17
|
"access": "public"
|
|
18
18
|
},
|
|
19
19
|
"scripts": {
|
|
20
|
-
"start": "dts watch --noClean",
|
|
21
|
-
"build": "dts build",
|
|
22
|
-
"test": "dts test --env=jsdom",
|
|
23
|
-
"lint": "dts lint"
|
|
20
|
+
"start": "yarn run dts watch --noClean",
|
|
21
|
+
"build": "yarn run dts build",
|
|
22
|
+
"test": "yarn run dts test --env=jsdom",
|
|
23
|
+
"lint": "yarn run dts lint"
|
|
24
24
|
},
|
|
25
25
|
"peerDependencies": {
|
|
26
26
|
"react": ">=16.8.0",
|
|
27
27
|
"react-dom": ">=16.8.0"
|
|
28
28
|
},
|
|
29
29
|
"dependencies": {
|
|
30
|
-
"@entur/a11y": "^0.2.
|
|
31
|
-
"@entur/button": "^2.10.
|
|
32
|
-
"@entur/icons": "^5.
|
|
33
|
-
"@entur/layout": "^2.1.
|
|
34
|
-
"@entur/tokens": "^3.4.
|
|
35
|
-
"@entur/typography": "^1.7.
|
|
36
|
-
"@entur/utils": "^0.4.
|
|
30
|
+
"@entur/a11y": "^0.2.51",
|
|
31
|
+
"@entur/button": "^2.10.6",
|
|
32
|
+
"@entur/icons": "^5.3.0",
|
|
33
|
+
"@entur/layout": "^2.1.13",
|
|
34
|
+
"@entur/tokens": "^3.4.2",
|
|
35
|
+
"@entur/typography": "^1.7.2",
|
|
36
|
+
"@entur/utils": "^0.4.7",
|
|
37
37
|
"@reach/dialog": "^0.16.0",
|
|
38
38
|
"classnames": "^2.3.1",
|
|
39
39
|
"react-focus-lock": "^2.5.2"
|
|
40
40
|
},
|
|
41
|
-
"
|
|
41
|
+
"devDependencies": {
|
|
42
|
+
"dts-cli": "^1.1.6",
|
|
43
|
+
"jest": "^27.0.0",
|
|
44
|
+
"jest-watch-typeahead": "^2.2.0",
|
|
45
|
+
"ts-jest": "^27.0.0",
|
|
46
|
+
"typescript": "^4.8.0"
|
|
47
|
+
},
|
|
48
|
+
"gitHead": "8915b1630bd936740ba9a4a88883f3432948a80e"
|
|
42
49
|
}
|
package/CHANGELOG.md
DELETED
|
@@ -1,452 +0,0 @@
|
|
|
1
|
-
# Change Log
|
|
2
|
-
|
|
3
|
-
All notable changes to this project will be documented in this file.
|
|
4
|
-
See [Conventional Commits](https://conventionalcommits.org) for commit guidelines.
|
|
5
|
-
|
|
6
|
-
## [1.6.14](https://bitbucket.org/enturas/design-system/compare/@entur/modal@1.6.13...@entur/modal@1.6.14) (2022-10-31)
|
|
7
|
-
|
|
8
|
-
**Note:** Version bump only for package @entur/modal
|
|
9
|
-
|
|
10
|
-
## [1.6.13](https://bitbucket.org/enturas/design-system/compare/@entur/modal@1.6.12...@entur/modal@1.6.13) (2022-10-31)
|
|
11
|
-
|
|
12
|
-
**Note:** Version bump only for package @entur/modal
|
|
13
|
-
|
|
14
|
-
## [1.6.12](https://bitbucket.org/enturas/design-system/compare/@entur/modal@1.6.11...@entur/modal@1.6.12) (2022-10-20)
|
|
15
|
-
|
|
16
|
-
**Note:** Version bump only for package @entur/modal
|
|
17
|
-
|
|
18
|
-
## [1.6.11](https://bitbucket.org/enturas/design-system/compare/@entur/modal@1.6.10...@entur/modal@1.6.11) (2022-10-20)
|
|
19
|
-
|
|
20
|
-
**Note:** Version bump only for package @entur/modal
|
|
21
|
-
|
|
22
|
-
## [1.6.10](https://bitbucket.org/enturas/design-system/compare/@entur/modal@1.6.9...@entur/modal@1.6.10) (2022-10-12)
|
|
23
|
-
|
|
24
|
-
**Note:** Version bump only for package @entur/modal
|
|
25
|
-
|
|
26
|
-
## [1.6.8](https://bitbucket.org/enturas/design-system/compare/@entur/modal@1.6.7...@entur/modal@1.6.8) (2022-08-31)
|
|
27
|
-
|
|
28
|
-
**Note:** Version bump only for package @entur/modal
|
|
29
|
-
|
|
30
|
-
## [1.6.7](https://bitbucket.org/enturas/design-system/compare/@entur/modal@1.6.6...@entur/modal@1.6.7) (2022-08-24)
|
|
31
|
-
|
|
32
|
-
**Note:** Version bump only for package @entur/modal
|
|
33
|
-
|
|
34
|
-
## [1.6.6](https://bitbucket.org/enturas/design-system/compare/@entur/modal@1.6.5...@entur/modal@1.6.6) (2022-08-09)
|
|
35
|
-
|
|
36
|
-
**Note:** Version bump only for package @entur/modal
|
|
37
|
-
|
|
38
|
-
## [1.6.5](https://bitbucket.org/enturas/design-system/compare/@entur/modal@1.6.4...@entur/modal@1.6.5) (2022-07-05)
|
|
39
|
-
|
|
40
|
-
**Note:** Version bump only for package @entur/modal
|
|
41
|
-
|
|
42
|
-
## [1.6.4](https://bitbucket.org/enturas/design-system/compare/@entur/modal@1.6.3...@entur/modal@1.6.4) (2022-06-28)
|
|
43
|
-
|
|
44
|
-
**Note:** Version bump only for package @entur/modal
|
|
45
|
-
|
|
46
|
-
## [1.6.3](https://bitbucket.org/enturas/design-system/compare/@entur/modal@1.6.2...@entur/modal@1.6.3) (2022-06-24)
|
|
47
|
-
|
|
48
|
-
**Note:** Version bump only for package @entur/modal
|
|
49
|
-
|
|
50
|
-
## [1.6.2](https://bitbucket.org/enturas/design-system/compare/@entur/modal@1.6.1...@entur/modal@1.6.2) (2022-06-02)
|
|
51
|
-
|
|
52
|
-
**Note:** Version bump only for package @entur/modal
|
|
53
|
-
|
|
54
|
-
## [1.6.1](https://bitbucket.org/enturas/design-system/compare/@entur/modal@1.6.0...@entur/modal@1.6.1) (2022-05-13)
|
|
55
|
-
|
|
56
|
-
**Note:** Version bump only for package @entur/modal
|
|
57
|
-
|
|
58
|
-
# [1.6.0](https://bitbucket.org/enturas/design-system/compare/@entur/modal@1.5.13...@entur/modal@1.6.0) (2022-05-04)
|
|
59
|
-
|
|
60
|
-
### Features
|
|
61
|
-
|
|
62
|
-
- **modal:** add custom scrollbar to modal to preserve rounded corners ([22f967f](https://bitbucket.org/enturas/design-system/commits/22f967faed103dda79491dd0ffa7fbad1039dd56))
|
|
63
|
-
|
|
64
|
-
## [1.5.13](https://bitbucket.org/enturas/design-system/compare/@entur/modal@1.5.12...@entur/modal@1.5.13) (2022-04-27)
|
|
65
|
-
|
|
66
|
-
**Note:** Version bump only for package @entur/modal
|
|
67
|
-
|
|
68
|
-
## [1.5.12](https://bitbucket.org/enturas/design-system/compare/@entur/modal@1.5.11...@entur/modal@1.5.12) (2022-04-20)
|
|
69
|
-
|
|
70
|
-
**Note:** Version bump only for package @entur/modal
|
|
71
|
-
|
|
72
|
-
## [1.5.11](https://bitbucket.org/enturas/design-system/compare/@entur/modal@1.5.10...@entur/modal@1.5.11) (2022-04-19)
|
|
73
|
-
|
|
74
|
-
**Note:** Version bump only for package @entur/modal
|
|
75
|
-
|
|
76
|
-
## [1.5.10](https://bitbucket.org/enturas/design-system/compare/@entur/modal@1.5.9...@entur/modal@1.5.10) (2022-03-01)
|
|
77
|
-
|
|
78
|
-
**Note:** Version bump only for package @entur/modal
|
|
79
|
-
|
|
80
|
-
## [1.5.9](https://bitbucket.org/enturas/design-system/compare/@entur/modal@1.5.8...@entur/modal@1.5.9) (2022-02-09)
|
|
81
|
-
|
|
82
|
-
**Note:** Version bump only for package @entur/modal
|
|
83
|
-
|
|
84
|
-
## [1.5.8](https://bitbucket.org/enturas/design-system/compare/@entur/modal@1.5.7...@entur/modal@1.5.8) (2021-11-17)
|
|
85
|
-
|
|
86
|
-
**Note:** Version bump only for package @entur/modal
|
|
87
|
-
|
|
88
|
-
## [1.5.7](https://bitbucket.org/enturas/design-system/compare/@entur/modal@1.5.6...@entur/modal@1.5.7) (2021-09-23)
|
|
89
|
-
|
|
90
|
-
**Note:** Version bump only for package @entur/modal
|
|
91
|
-
|
|
92
|
-
## [1.5.6](https://bitbucket.org/enturas/design-system/compare/@entur/modal@1.5.5...@entur/modal@1.5.6) (2021-09-13)
|
|
93
|
-
|
|
94
|
-
### Bug Fixes
|
|
95
|
-
|
|
96
|
-
- **modal:** increase border radius on modals ([8d321aa](https://bitbucket.org/enturas/design-system/commits/8d321aa3e0e83a410a285763182db22c7b1c96be))
|
|
97
|
-
|
|
98
|
-
## [1.5.5](https://bitbucket.org/enturas/design-system/compare/@entur/modal@1.5.4...@entur/modal@1.5.5) (2021-09-07)
|
|
99
|
-
|
|
100
|
-
### Bug Fixes
|
|
101
|
-
|
|
102
|
-
- update dependencies ([c76a03c](https://bitbucket.org/enturas/design-system/commits/c76a03ca6e15951c40b032f618617380dc8f15d1))
|
|
103
|
-
- utilize reworked focus token ([586758f](https://bitbucket.org/enturas/design-system/commits/586758fc86eb5aa52116c63c14ef033eb2e8b12f))
|
|
104
|
-
|
|
105
|
-
## [1.5.4](https://bitbucket.org/enturas/design-system/compare/@entur/modal@1.5.3...@entur/modal@1.5.4) (2021-08-13)
|
|
106
|
-
|
|
107
|
-
**Note:** Version bump only for package @entur/modal
|
|
108
|
-
|
|
109
|
-
## [1.5.3](https://bitbucket.org/enturas/design-system/compare/@entur/modal@1.5.2...@entur/modal@1.5.3) (2021-07-16)
|
|
110
|
-
|
|
111
|
-
**Note:** Version bump only for package @entur/modal
|
|
112
|
-
|
|
113
|
-
## [1.5.2](https://bitbucket.org/enturas/design-system/compare/@entur/modal@1.5.1...@entur/modal@1.5.2) (2021-06-25)
|
|
114
|
-
|
|
115
|
-
### Bug Fixes
|
|
116
|
-
|
|
117
|
-
- update dependencies ([85395ed](https://bitbucket.org/enturas/design-system/commits/85395ed69004335bb173770dfaa634ad542de771))
|
|
118
|
-
|
|
119
|
-
## [1.5.1](https://bitbucket.org/enturas/design-system/compare/@entur/modal@1.5.0...@entur/modal@1.5.1) (2021-06-04)
|
|
120
|
-
|
|
121
|
-
**Note:** Version bump only for package @entur/modal
|
|
122
|
-
|
|
123
|
-
# [1.5.0](https://bitbucket.org/enturas/design-system/compare/@entur/modal@1.4.0...@entur/modal@1.5.0) (2021-05-19)
|
|
124
|
-
|
|
125
|
-
### Features
|
|
126
|
-
|
|
127
|
-
- **modal:** add animation on modal entry ([f0f0701](https://bitbucket.org/enturas/design-system/commits/f0f07019a9324b8a697165e5d902fee9cfb21815))
|
|
128
|
-
|
|
129
|
-
# [1.4.0](https://bitbucket.org/enturas/design-system/compare/@entur/modal@1.3.16...@entur/modal@1.4.0) (2021-05-05)
|
|
130
|
-
|
|
131
|
-
### Features
|
|
132
|
-
|
|
133
|
-
- **modal:** add closeonclickoutside prop ([7fba612](https://bitbucket.org/enturas/design-system/commits/7fba612263e8c66f732c84447cf3bbf99766073c))
|
|
134
|
-
|
|
135
|
-
## [1.3.16](https://bitbucket.org/enturas/design-system/compare/@entur/modal@1.3.15...@entur/modal@1.3.16) (2021-04-23)
|
|
136
|
-
|
|
137
|
-
### Bug Fixes
|
|
138
|
-
|
|
139
|
-
- utilize new focus tokens ([17113ef](https://bitbucket.org/enturas/design-system/commits/17113ef3f791c86fa6e19e71680fd5acdbae4990))
|
|
140
|
-
|
|
141
|
-
## [1.3.15](https://bitbucket.org/enturas/design-system/compare/@entur/modal@1.3.14...@entur/modal@1.3.15) (2021-04-09)
|
|
142
|
-
|
|
143
|
-
**Note:** Version bump only for package @entur/modal
|
|
144
|
-
|
|
145
|
-
## [1.3.14](https://bitbucket.org/enturas/design-system/compare/@entur/modal@1.3.13...@entur/modal@1.3.14) (2021-03-02)
|
|
146
|
-
|
|
147
|
-
**Note:** Version bump only for package @entur/modal
|
|
148
|
-
|
|
149
|
-
## [1.3.13](https://bitbucket.org/enturas/design-system/compare/@entur/modal@1.3.12...@entur/modal@1.3.13) (2021-02-17)
|
|
150
|
-
|
|
151
|
-
### Bug Fixes
|
|
152
|
-
|
|
153
|
-
- **modal:** add border radius for modal windows ([8ed7468](https://bitbucket.org/enturas/design-system/commits/8ed7468ce9c2544f11ea7113415366236f12041e))
|
|
154
|
-
|
|
155
|
-
## [1.3.12](https://bitbucket.org/enturas/design-system/compare/@entur/modal@1.3.11...@entur/modal@1.3.12) (2021-01-29)
|
|
156
|
-
|
|
157
|
-
**Note:** Version bump only for package @entur/modal
|
|
158
|
-
|
|
159
|
-
## [1.3.11](https://bitbucket.org/enturas/design-system/compare/@entur/modal@1.3.10...@entur/modal@1.3.11) (2021-01-20)
|
|
160
|
-
|
|
161
|
-
**Note:** Version bump only for package @entur/modal
|
|
162
|
-
|
|
163
|
-
## [1.3.10](https://bitbucket.org/enturas/design-system/compare/@entur/modal@1.3.9...@entur/modal@1.3.10) (2021-01-13)
|
|
164
|
-
|
|
165
|
-
### Bug Fixes
|
|
166
|
-
|
|
167
|
-
- update dependency ([40fd77e](https://bitbucket.org/enturas/design-system/commits/40fd77ebca7fa8a3d0e82409561e3e3cd63c441d))
|
|
168
|
-
|
|
169
|
-
## [1.3.9](https://bitbucket.org/enturas/design-system/compare/@entur/modal@1.3.8...@entur/modal@1.3.9) (2021-01-05)
|
|
170
|
-
|
|
171
|
-
**Note:** Version bump only for package @entur/modal
|
|
172
|
-
|
|
173
|
-
## [1.3.8](https://bitbucket.org/enturas/design-system/compare/@entur/modal@1.3.7...@entur/modal@1.3.8) (2020-12-04)
|
|
174
|
-
|
|
175
|
-
### Bug Fixes
|
|
176
|
-
|
|
177
|
-
- **modal:** fix typings of heading ([720abb7](https://bitbucket.org/enturas/design-system/commits/720abb75c6aec3655fa81abf01abe4d4d40e6b61))
|
|
178
|
-
|
|
179
|
-
## [1.3.7](https://bitbucket.org/enturas/design-system/compare/@entur/modal@1.3.6...@entur/modal@1.3.7) (2020-11-10)
|
|
180
|
-
|
|
181
|
-
**Note:** Version bump only for package @entur/modal
|
|
182
|
-
|
|
183
|
-
## [1.3.6](https://bitbucket.org/enturas/design-system/compare/@entur/modal@1.3.5...@entur/modal@1.3.6) (2020-11-05)
|
|
184
|
-
|
|
185
|
-
**Note:** Version bump only for package @entur/modal
|
|
186
|
-
|
|
187
|
-
## [1.3.5](https://bitbucket.org/enturas/design-system/compare/@entur/modal@1.3.4...@entur/modal@1.3.5) (2020-10-28)
|
|
188
|
-
|
|
189
|
-
**Note:** Version bump only for package @entur/modal
|
|
190
|
-
|
|
191
|
-
## [1.3.4](https://bitbucket.org/enturas/design-system/compare/@entur/modal@1.3.3...@entur/modal@1.3.4) (2020-10-23)
|
|
192
|
-
|
|
193
|
-
**Note:** Version bump only for package @entur/modal
|
|
194
|
-
|
|
195
|
-
## [1.3.3](https://bitbucket.org/enturas/design-system/compare/@entur/modal@1.3.2...@entur/modal@1.3.3) (2020-10-16)
|
|
196
|
-
|
|
197
|
-
**Note:** Version bump only for package @entur/modal
|
|
198
|
-
|
|
199
|
-
## [1.3.2](https://bitbucket.org/enturas/design-system/compare/@entur/modal@1.3.1...@entur/modal@1.3.2) (2020-10-09)
|
|
200
|
-
|
|
201
|
-
**Note:** Version bump only for package @entur/modal
|
|
202
|
-
|
|
203
|
-
## [1.3.1](https://bitbucket.org/enturas/design-system/compare/@entur/modal@1.3.0...@entur/modal@1.3.1) (2020-09-25)
|
|
204
|
-
|
|
205
|
-
**Note:** Version bump only for package @entur/modal
|
|
206
|
-
|
|
207
|
-
# [1.3.0](https://bitbucket.org/enturas/design-system/compare/@entur/modal@1.2.0...@entur/modal@1.3.0) (2020-09-14)
|
|
208
|
-
|
|
209
|
-
### Bug Fixes
|
|
210
|
-
|
|
211
|
-
- **drawer:** improve automatic focus within in drawer ([f4efa2f](https://bitbucket.org/enturas/design-system/commits/f4efa2f2ad3d09cf7806d26e0d0526041ac463f7))
|
|
212
|
-
|
|
213
|
-
### Features
|
|
214
|
-
|
|
215
|
-
- **drawer:** add overlay prop, for optional overlay ([8577478](https://bitbucket.org/enturas/design-system/commits/85774782d653138073af2ad73c0924347d80e1aa))
|
|
216
|
-
|
|
217
|
-
# [1.2.0](https://bitbucket.org/enturas/design-system/compare/@entur/modal@1.1.29...@entur/modal@1.2.0) (2020-09-10)
|
|
218
|
-
|
|
219
|
-
### Bug Fixes
|
|
220
|
-
|
|
221
|
-
- **drawer:** add overflow-y:auto for drawer ([687cea7](https://bitbucket.org/enturas/design-system/commits/687cea7ac5f3451951930a5a882ffbb3ad3a8615))
|
|
222
|
-
|
|
223
|
-
### Features
|
|
224
|
-
|
|
225
|
-
- **drawer:** add style prop support ([77fbf0d](https://bitbucket.org/enturas/design-system/commits/77fbf0d74450930ca9359b51ca1c09dbe1070fc0))
|
|
226
|
-
|
|
227
|
-
## [1.1.29](https://bitbucket.org/enturas/design-system/compare/@entur/modal@1.1.28...@entur/modal@1.1.29) (2020-09-02)
|
|
228
|
-
|
|
229
|
-
### Bug Fixes
|
|
230
|
-
|
|
231
|
-
- **modal:** adjust modal backdrop color ([ba08fdc](https://bitbucket.org/enturas/design-system/commits/ba08fdca717b88a588023e0467d14a8220ef9d5b))
|
|
232
|
-
|
|
233
|
-
## [1.1.28](https://bitbucket.org/enturas/design-system/compare/@entur/modal@1.1.27...@entur/modal@1.1.28) (2020-08-26)
|
|
234
|
-
|
|
235
|
-
**Note:** Version bump only for package @entur/modal
|
|
236
|
-
|
|
237
|
-
## [1.1.27](https://bitbucket.org/enturas/design-system/compare/@entur/modal@1.1.26...@entur/modal@1.1.27) (2020-08-19)
|
|
238
|
-
|
|
239
|
-
**Note:** Version bump only for package @entur/modal
|
|
240
|
-
|
|
241
|
-
## [1.1.26](https://bitbucket.org/enturas/design-system/compare/@entur/modal@1.1.25...@entur/modal@1.1.26) (2020-08-11)
|
|
242
|
-
|
|
243
|
-
**Note:** Version bump only for package @entur/modal
|
|
244
|
-
|
|
245
|
-
## [1.1.25](https://bitbucket.org/enturas/design-system/compare/@entur/modal@1.1.24...@entur/modal@1.1.25) (2020-07-24)
|
|
246
|
-
|
|
247
|
-
**Note:** Version bump only for package @entur/modal
|
|
248
|
-
|
|
249
|
-
## [1.1.24](https://bitbucket.org/enturas/design-system/compare/@entur/modal@1.1.23...@entur/modal@1.1.24) (2020-07-22)
|
|
250
|
-
|
|
251
|
-
**Note:** Version bump only for package @entur/modal
|
|
252
|
-
|
|
253
|
-
## [1.1.23](https://bitbucket.org/enturas/design-system/compare/@entur/modal@1.1.22...@entur/modal@1.1.23) (2020-07-16)
|
|
254
|
-
|
|
255
|
-
### Bug Fixes
|
|
256
|
-
|
|
257
|
-
- update modal dependency ([bab3f74](https://bitbucket.org/enturas/design-system/commits/bab3f74d5b379a801eaa057bad2880006e1d32eb))
|
|
258
|
-
|
|
259
|
-
## [1.1.22](https://bitbucket.org/enturas/design-system/compare/@entur/modal@1.1.21...@entur/modal@1.1.22) (2020-07-13)
|
|
260
|
-
|
|
261
|
-
**Note:** Version bump only for package @entur/modal
|
|
262
|
-
|
|
263
|
-
## [1.1.21](https://bitbucket.org/enturas/design-system/compare/@entur/modal@1.1.20...@entur/modal@1.1.21) (2020-07-09)
|
|
264
|
-
|
|
265
|
-
**Note:** Version bump only for package @entur/modal
|
|
266
|
-
|
|
267
|
-
## [1.1.20](https://bitbucket.org/enturas/design-system/compare/@entur/modal@1.1.19...@entur/modal@1.1.20) (2020-07-03)
|
|
268
|
-
|
|
269
|
-
**Note:** Version bump only for package @entur/modal
|
|
270
|
-
|
|
271
|
-
## [1.1.19](https://bitbucket.org/enturas/design-system/compare/@entur/modal@1.1.18...@entur/modal@1.1.19) (2020-06-17)
|
|
272
|
-
|
|
273
|
-
### Bug Fixes
|
|
274
|
-
|
|
275
|
-
- use iconbutton in modal window ([0ec8929](https://bitbucket.org/enturas/design-system/commits/0ec8929a339d76fcbb6c1af6d6b39796b0554d11))
|
|
276
|
-
|
|
277
|
-
## [1.1.18](https://bitbucket.org/enturas/design-system/compare/@entur/modal@1.1.17...@entur/modal@1.1.18) (2020-05-27)
|
|
278
|
-
|
|
279
|
-
**Note:** Version bump only for package @entur/modal
|
|
280
|
-
|
|
281
|
-
## [1.1.17](https://bitbucket.org/enturas/design-system/compare/@entur/modal@1.1.16...@entur/modal@1.1.17) (2020-05-26)
|
|
282
|
-
|
|
283
|
-
### Bug Fixes
|
|
284
|
-
|
|
285
|
-
- fix extraSmall prop for modal ([1aeba26](https://bitbucket.org/enturas/design-system/commits/1aeba2662d6fcd179b6f959676b6370e6cd4ef63))
|
|
286
|
-
- fix size=extraLarge not rendering properly for modal ([1ce2056](https://bitbucket.org/enturas/design-system/commits/1ce2056438dcb9c80f3357ddf1289a7523e5b51c))
|
|
287
|
-
- use iconbutton directly in drawer ([adcab79](https://bitbucket.org/enturas/design-system/commits/adcab79fd967741467ed5956a4463fbf199c2ed8))
|
|
288
|
-
|
|
289
|
-
## [1.1.16](https://bitbucket.org/enturas/design-system/compare/@entur/modal@1.1.15...@entur/modal@1.1.16) (2020-05-20)
|
|
290
|
-
|
|
291
|
-
**Note:** Version bump only for package @entur/modal
|
|
292
|
-
|
|
293
|
-
## [1.1.15](https://bitbucket.org/enturas/design-system/compare/@entur/modal@1.1.14...@entur/modal@1.1.15) (2020-04-27)
|
|
294
|
-
|
|
295
|
-
**Note:** Version bump only for package @entur/modal
|
|
296
|
-
|
|
297
|
-
## [1.1.14](https://bitbucket.org/enturas/design-system/compare/@entur/modal@1.1.13...@entur/modal@1.1.14) (2020-04-23)
|
|
298
|
-
|
|
299
|
-
### Bug Fixes
|
|
300
|
-
|
|
301
|
-
- updated to use new focus styling where applicable ([d0a52c0](https://bitbucket.org/enturas/design-system/commits/d0a52c096b673c6647070a90dd79bef9003ee0ad))
|
|
302
|
-
|
|
303
|
-
## [1.1.13](https://bitbucket.org/enturas/design-system/compare/@entur/modal@1.1.12...@entur/modal@1.1.13) (2020-04-08)
|
|
304
|
-
|
|
305
|
-
**Note:** Version bump only for package @entur/modal
|
|
306
|
-
|
|
307
|
-
## [1.1.12](https://bitbucket.org/enturas/design-system/compare/@entur/modal@1.1.10...@entur/modal@1.1.12) (2020-03-25)
|
|
308
|
-
|
|
309
|
-
**Note:** Version bump only for package @entur/modal
|
|
310
|
-
|
|
311
|
-
## [1.1.11](https://bitbucket.org/enturas/design-system/compare/@entur/modal@1.1.10...@entur/modal@1.1.11) (2020-03-25)
|
|
312
|
-
|
|
313
|
-
**Note:** Version bump only for package @entur/modal
|
|
314
|
-
|
|
315
|
-
## [1.1.10](https://bitbucket.org/enturas/design-system/compare/@entur/modal@1.1.9...@entur/modal@1.1.10) (2020-03-20)
|
|
316
|
-
|
|
317
|
-
**Note:** Version bump only for package @entur/modal
|
|
318
|
-
|
|
319
|
-
## [1.1.9](https://bitbucket.org/enturas/design-system/compare/@entur/modal@1.1.8...@entur/modal@1.1.9) (2020-03-18)
|
|
320
|
-
|
|
321
|
-
**Note:** Version bump only for package @entur/modal
|
|
322
|
-
|
|
323
|
-
## [1.1.8](https://bitbucket.org/enturas/design-system/compare/@entur/modal@1.1.7...@entur/modal@1.1.8) (2020-03-05)
|
|
324
|
-
|
|
325
|
-
**Note:** Version bump only for package @entur/modal
|
|
326
|
-
|
|
327
|
-
## [1.1.7](https://bitbucket.org/enturas/design-system/compare/@entur/modal@1.1.6...@entur/modal@1.1.7) (2020-02-26)
|
|
328
|
-
|
|
329
|
-
**Note:** Version bump only for package @entur/modal
|
|
330
|
-
|
|
331
|
-
## [1.1.6](https://bitbucket.org/enturas/design-system/compare/@entur/modal@1.1.5...@entur/modal@1.1.6) (2020-02-20)
|
|
332
|
-
|
|
333
|
-
**Note:** Version bump only for package @entur/modal
|
|
334
|
-
|
|
335
|
-
## [1.1.5](https://bitbucket.org/enturas/design-system/compare/@entur/modal@1.1.4...@entur/modal@1.1.5) (2020-02-14)
|
|
336
|
-
|
|
337
|
-
**Note:** Version bump only for package @entur/modal
|
|
338
|
-
|
|
339
|
-
## [1.1.4](https://bitbucket.org/enturas/design-system/compare/@entur/modal@1.1.3...@entur/modal@1.1.4) (2020-02-12)
|
|
340
|
-
|
|
341
|
-
### Bug Fixes
|
|
342
|
-
|
|
343
|
-
- fix missing type for spreading of props ([0e5beba](https://bitbucket.org/enturas/design-system/commits/0e5beba82ea7dde39915cd626e665aa6c15dafbf))
|
|
344
|
-
|
|
345
|
-
## [1.1.3](https://bitbucket.org/enturas/design-system/compare/@entur/modal@1.1.2...@entur/modal@1.1.3) (2020-02-10)
|
|
346
|
-
|
|
347
|
-
**Note:** Version bump only for package @entur/modal
|
|
348
|
-
|
|
349
|
-
## [1.1.2](https://bitbucket.org/enturas/design-system/compare/@entur/modal@1.1.1...@entur/modal@1.1.2) (2020-02-05)
|
|
350
|
-
|
|
351
|
-
**Note:** Version bump only for package @entur/modal
|
|
352
|
-
|
|
353
|
-
## [1.1.1](https://bitbucket.org/enturas/design-system/compare/@entur/modal@1.1.0...@entur/modal@1.1.1) (2020-02-05)
|
|
354
|
-
|
|
355
|
-
### Bug Fixes
|
|
356
|
-
|
|
357
|
-
- remove test-files from build process ([e0b24af](https://bitbucket.org/enturas/design-system/commits/e0b24af05d5c2ad8de4ae587d83c389495235890))
|
|
358
|
-
|
|
359
|
-
# [1.1.0](https://bitbucket.org/enturas/design-system/compare/@entur/modal@1.0.7...@entur/modal@1.1.0) (2020-01-28)
|
|
360
|
-
|
|
361
|
-
### Features
|
|
362
|
-
|
|
363
|
-
- **Drawer:** add new component - Drawer ([e869df0](https://bitbucket.org/enturas/design-system/commits/e869df0946bdc81c177df4b25f3cfe5dee0a7eb5))
|
|
364
|
-
|
|
365
|
-
## [1.0.7](https://bitbucket.org/enturas/design-system/compare/@entur/modal@1.0.6...@entur/modal@1.0.7) (2020-01-27)
|
|
366
|
-
|
|
367
|
-
### Bug Fixes
|
|
368
|
-
|
|
369
|
-
- **types:** place types in the correct place ([acace09](https://bitbucket.org/enturas/design-system/commits/acace09ec0e258c5cff3a65e13ab29d6603780d9))
|
|
370
|
-
|
|
371
|
-
## [1.0.6](https://bitbucket.org/enturas/design-system/compare/@entur/modal@1.0.5...@entur/modal@1.0.6) (2020-01-20)
|
|
372
|
-
|
|
373
|
-
**Note:** Version bump only for package @entur/modal
|
|
374
|
-
|
|
375
|
-
## [1.0.5](https://bitbucket.org/enturas/design-system/compare/@entur/modal@1.0.4...@entur/modal@1.0.5) (2020-01-14)
|
|
376
|
-
|
|
377
|
-
**Note:** Version bump only for package @entur/modal
|
|
378
|
-
|
|
379
|
-
## [1.0.4](https://bitbucket.org/enturas/design-system/compare/@entur/modal@1.0.3...@entur/modal@1.0.4) (2020-01-13)
|
|
380
|
-
|
|
381
|
-
### Bug Fixes
|
|
382
|
-
|
|
383
|
-
- fix focus styling for close button in modal window ([8d4b02f](https://bitbucket.org/enturas/design-system/commits/8d4b02f77500200c9a5281c9bb07a629fc3134b1))
|
|
384
|
-
|
|
385
|
-
## [1.0.3](https://bitbucket.org/enturas/design-system/compare/@entur/modal@1.0.2...@entur/modal@1.0.3) (2020-01-10)
|
|
386
|
-
|
|
387
|
-
### Bug Fixes
|
|
388
|
-
|
|
389
|
-
- **modal:** added a max height to the modal as well as overflow handling. ([32e78d9](https://bitbucket.org/enturas/design-system/commits/32e78d91b51599591c3cafc35f4adeffce966617))
|
|
390
|
-
|
|
391
|
-
## [1.0.2](https://bitbucket.org/enturas/design-system/compare/@entur/modal@1.0.1...@entur/modal@1.0.2) (2020-01-08)
|
|
392
|
-
|
|
393
|
-
### Bug Fixes
|
|
394
|
-
|
|
395
|
-
- warn in development if the developer have forgotten the CSS ([e5c30fc](https://bitbucket.org/enturas/design-system/commits/e5c30fc08624ef22c02773892778abd92205c6b0))
|
|
396
|
-
|
|
397
|
-
## [1.0.1](https://bitbucket.org/enturas/design-system/compare/@entur/modal@1.0.0...@entur/modal@1.0.1) (2020-01-06)
|
|
398
|
-
|
|
399
|
-
**Note:** Version bump only for package @entur/modal
|
|
400
|
-
|
|
401
|
-
# [1.0.0](https://bitbucket.org/enturas/design-system/compare/@entur/modal@0.3.1...@entur/modal@1.0.0) (2019-11-29)
|
|
402
|
-
|
|
403
|
-
### Bug Fixes
|
|
404
|
-
|
|
405
|
-
- **Modal, ModalOverlay:** rename isOpen to open ([c910829](https://bitbucket.org/enturas/design-system/commits/c910829527f3352e73c30ee4a2ae2c79c0d35070))
|
|
406
|
-
- **ModalContent:** add aria-labelledby to use the title as label ([400117c](https://bitbucket.org/enturas/design-system/commits/400117c93b03c693d088d579afa68c4702871330))
|
|
407
|
-
|
|
408
|
-
### Features
|
|
409
|
-
|
|
410
|
-
- **Heading1-6:** add margin prop to all headings ([a167485](https://bitbucket.org/enturas/design-system/commits/a1674852143e8a99bff7c2dbebf20ff09aeea977))
|
|
411
|
-
- **Modal, ModalContent:** add support for title and sizes ([5190a2f](https://bitbucket.org/enturas/design-system/commits/5190a2f29ba410870f8d21621066e3647ccf5e3a))
|
|
412
|
-
|
|
413
|
-
### BREAKING CHANGES
|
|
414
|
-
|
|
415
|
-
- **Modal, ModalOverlay:** Rename isOpen to open for the Modal and ModalOverlay components
|
|
416
|
-
- **Modal, ModalContent:** The title prop is now required. Remove any top level heading, and use the title prop instead. The
|
|
417
|
-
size prop is now required, too.
|
|
418
|
-
|
|
419
|
-
## [0.3.1](https://bitbucket.org/enturas/design-system/compare/@entur/modal@0.3.0...@entur/modal@0.3.1) (2019-11-27)
|
|
420
|
-
|
|
421
|
-
### Bug Fixes
|
|
422
|
-
|
|
423
|
-
- **types:** simplify the types to avoid extraneous props ([571ac56](https://bitbucket.org/enturas/design-system/commits/571ac568abb5a6b2c353d5711418d1058b51a91b))
|
|
424
|
-
|
|
425
|
-
# [0.3.0](https://bitbucket.org/enturas/design-system/compare/@entur/modal@0.2.1...@entur/modal@0.3.0) (2019-11-22)
|
|
426
|
-
|
|
427
|
-
### Bug Fixes
|
|
428
|
-
|
|
429
|
-
- fixing potential duplication of props naming ([6efd896](https://bitbucket.org/enturas/design-system/commits/6efd896d381bca09bc047dbdaec6d2629a9571db))
|
|
430
|
-
|
|
431
|
-
### Features
|
|
432
|
-
|
|
433
|
-
- **types:** exporting all public types for public components ([4a277ab](https://bitbucket.org/enturas/design-system/commits/4a277ab266fdb32a6760821a07b1c6cc716bac85))
|
|
434
|
-
|
|
435
|
-
## [0.2.1](https://bitbucket.org/enturas/design-system/compare/@entur/modal@0.2.0...@entur/modal@0.2.1) (2019-11-14)
|
|
436
|
-
|
|
437
|
-
### Bug Fixes
|
|
438
|
-
|
|
439
|
-
- **css classnames:** fixing naming collisions with CSS classes ([a93ca43](https://bitbucket.org/enturas/design-system/commits/a93ca435d3a01d61d8f02694a672686b9e943a66))
|
|
440
|
-
|
|
441
|
-
# 0.2.0 (2019-10-30)
|
|
442
|
-
|
|
443
|
-
### Bug Fixes
|
|
444
|
-
|
|
445
|
-
- **modal:** add missing dependencies ([c1065c0](https://bitbucket.org/enturas/design-system/commits/c1065c00e746a99148e2ec0578f50e79c135ac8a))
|
|
446
|
-
- update all packages to use new tokens ([4847835](https://bitbucket.org/enturas/design-system/commits/48478359b0e562ba828e06d9b5c57239316805c2))
|
|
447
|
-
- **modal:** center modals on screen ([3525d8c](https://bitbucket.org/enturas/design-system/commits/3525d8c572431878582edc7e8bbbbfb2b1276ed3))
|
|
448
|
-
- **style:** set a minimum width for all modals ([a4f208f](https://bitbucket.org/enturas/design-system/commits/a4f208f7a98a8cb671dc8532b360e73d3ce864d1))
|
|
449
|
-
|
|
450
|
-
### Features
|
|
451
|
-
|
|
452
|
-
- **modal:** add new package @entur/modal ([642e78c](https://bitbucket.org/enturas/design-system/commits/642e78cac1f4db4e63ac3c202405c9876b68ff4a))
|