@dhis2-ui/modal 9.10.3 → 9.11.1-beta.1
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/build/cjs/index.js +0 -4
- package/build/cjs/locales/index.js +3 -9
- package/build/cjs/modal/close-button.js +2 -12
- package/build/cjs/modal/features/accepts_children/index.js +0 -1
- package/build/cjs/modal/features/can_be_closed/index.js +3 -4
- package/build/cjs/modal/features/does_not_unmount_children_when_hiding/index.js +0 -1
- package/build/cjs/modal/index.js +0 -1
- package/build/cjs/modal/modal.e2e.stories.js +63 -0
- package/build/cjs/modal/modal.js +6 -24
- package/build/cjs/modal/{modal.stories.js → modal.prod.stories.js} +43 -71
- package/build/cjs/modal/modal.test.js +1 -23
- package/build/cjs/modal-actions/features/accepts_children/index.js +0 -1
- package/build/cjs/modal-actions/index.js +0 -1
- package/build/cjs/modal-actions/modal-actions.e2e.stories.js +14 -0
- package/build/cjs/modal-actions/modal-actions.js +2 -9
- package/build/cjs/modal-content/features/accepts_children/index.js +0 -1
- package/build/cjs/modal-content/index.js +0 -1
- package/build/cjs/modal-content/modal-content.e2e.stories.js +14 -0
- package/build/cjs/modal-content/modal-content.js +1 -7
- package/build/cjs/modal-title/features/accepts_children/index.js +0 -1
- package/build/cjs/modal-title/index.js +0 -1
- package/build/cjs/modal-title/modal-title.e2e.stories.js +14 -0
- package/build/cjs/modal-title/modal-title.js +2 -10
- package/build/es/modal/close-button.js +1 -3
- package/build/es/modal/features/can_be_closed/index.js +3 -3
- package/build/es/modal/{modal.stories.e2e.js → modal.e2e.stories.js} +10 -7
- package/build/es/modal/modal.js +3 -8
- package/build/es/modal/{modal.stories.js → modal.prod.stories.js} +44 -16
- package/build/es/modal-actions/modal-actions.e2e.stories.js +6 -0
- package/build/es/modal-actions/modal-actions.js +1 -1
- package/build/es/modal-content/modal-content.e2e.stories.js +6 -0
- package/build/es/modal-title/modal-title.e2e.stories.js +6 -0
- package/build/es/modal-title/modal-title.js +1 -1
- package/package.json +10 -10
- package/build/cjs/modal/modal.stories.e2e.js +0 -59
- package/build/cjs/modal-actions/modal-actions.stories.e2e.js +0 -11
- package/build/cjs/modal-content/modal-content.stories.e2e.js +0 -11
- package/build/cjs/modal-title/modal-title.stories.e2e.js +0 -11
- package/build/es/modal-actions/modal-actions.stories.e2e.js +0 -4
- package/build/es/modal-content/modal-content.stories.e2e.js +0 -4
- package/build/es/modal-title/modal-title.stories.e2e.js +0 -4
|
@@ -4,47 +4,58 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
4
4
|
value: true
|
|
5
5
|
});
|
|
6
6
|
exports.default = exports.TopScrollable = exports.SmallTitleContentAction = exports.SmallLongTitle = exports.SmallDestructivePrimary = exports.SmallContentPrimary = exports.SmallClickableScreenCover = exports.RTL = exports.ModalThatHidesWithStatefulComponens = exports.MiddleScrollable = exports.MediumTitleContentAction = exports.LargeWithSelectComponent = exports.LargeTitleContentPrimary = exports.LargeModalWithMoreNestedModals = exports.FluidTop = exports.FluidTitleContentPrimary = exports.FluidMiddle = exports.FluidBottom = exports.DefaultContent = exports.BottomScrollable = exports.AlignmentMiddle = exports.AlignmentBottom = void 0;
|
|
7
|
-
|
|
8
7
|
var _style = _interopRequireDefault(require("styled-jsx/style"));
|
|
9
|
-
|
|
8
|
+
var _uiConstants = require("@dhis2/ui-constants");
|
|
10
9
|
var _box = require("@dhis2-ui/box");
|
|
11
|
-
|
|
12
10
|
var _button = require("@dhis2-ui/button");
|
|
13
|
-
|
|
14
11
|
var _menu = require("@dhis2-ui/menu");
|
|
15
|
-
|
|
16
12
|
var _select = require("@dhis2-ui/select");
|
|
17
|
-
|
|
18
13
|
var _tooltip = require("@dhis2-ui/tooltip");
|
|
14
|
+
var _react = _interopRequireWildcard(require("react"));
|
|
15
|
+
var _index = require("../index.js");
|
|
16
|
+
var _modal = require("./modal.js");
|
|
17
|
+
function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function (e) { return e ? t : r; })(e); }
|
|
18
|
+
function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != typeof e && "function" != typeof e) return { default: e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && {}.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n.default = e, t && t.set(e, n), n; }
|
|
19
|
+
function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
|
|
20
|
+
const description = `
|
|
21
|
+
_**Note**: For performance reasons, only one representative example is shown here. For more (interactive) examples, see individual stories in the Canvas tab._
|
|
19
22
|
|
|
20
|
-
|
|
23
|
+
A modal focuses user attention on a single task or piece of information inside a container. A modal blocks the rest of the application until it is dismissed.
|
|
21
24
|
|
|
22
|
-
|
|
25
|
+
#### Usage
|
|
23
26
|
|
|
24
|
-
|
|
27
|
+
A modal should be used to focus user attention on a single task or piece of information. Modals take over the entire screen and should be used sparingly to avoid interrupting a user's flow too often.
|
|
25
28
|
|
|
26
|
-
|
|
29
|
+
Use a modal in the following cases:
|
|
27
30
|
|
|
28
|
-
|
|
31
|
+
- to collect short, focussed user input that is blocking progress
|
|
32
|
+
- to present critical information that a user needs to acknowledge before continuing
|
|
33
|
+
- to ask the user to confirm a destructive action that cannot be undone
|
|
29
34
|
|
|
30
|
-
|
|
35
|
+
Do not use a modal in the following cases:
|
|
31
36
|
|
|
32
|
-
|
|
37
|
+
- to display unrelated or non-critical information; use an alert bar or a notice box instead
|
|
38
|
+
- to display complex, workflows that span multiple screens; navigate to a new, full page in the app instead
|
|
33
39
|
|
|
34
|
-
|
|
40
|
+
#### Children
|
|
35
41
|
|
|
36
|
-
|
|
42
|
+
Modals should be used with children \`<ModalTitle>\` (optional), \`<ModalContent>\` (required), and \`<ModalActions>\` (recommended)
|
|
37
43
|
|
|
44
|
+
See more about modal usage, including alignment and sizing, at [Design System: Modals](https://github.com/dhis2/design-system/blob/master/molecules/modal.md#usage).
|
|
45
|
+
|
|
46
|
+
\`\`\`js
|
|
47
|
+
import { Modal } from '@dhis2/ui'
|
|
48
|
+
\`\`\`
|
|
49
|
+
`;
|
|
50
|
+
const say = something => () => alert(something);
|
|
38
51
|
window.onClose = (payload, event) => {
|
|
39
52
|
console.log('onClose payload', payload);
|
|
40
53
|
console.log('onClose event', event);
|
|
41
54
|
};
|
|
42
|
-
|
|
43
55
|
const onClose = function () {
|
|
44
56
|
return window.onClose(...arguments);
|
|
45
57
|
};
|
|
46
|
-
|
|
47
|
-
var _default = {
|
|
58
|
+
var _default = exports.default = {
|
|
48
59
|
title: 'Modal',
|
|
49
60
|
component: _modal.Modal,
|
|
50
61
|
parameters: {
|
|
@@ -52,7 +63,6 @@ var _default = {
|
|
|
52
63
|
// Use iframes to contain modals in docs page (otherwise chaos ensues)
|
|
53
64
|
inlineStories: false,
|
|
54
65
|
iframeHeight: '500px',
|
|
55
|
-
|
|
56
66
|
/**
|
|
57
67
|
* Due to iframes being very slow, disable stories on the docs page by default and
|
|
58
68
|
* make one representative story as the primary ('SmallTitleContentAction')
|
|
@@ -64,42 +74,37 @@ var _default = {
|
|
|
64
74
|
}
|
|
65
75
|
},
|
|
66
76
|
argTypes: {
|
|
67
|
-
small: {
|
|
77
|
+
small: {
|
|
78
|
+
..._uiConstants.sharedPropTypes.sizeArgType
|
|
68
79
|
},
|
|
69
|
-
large: {
|
|
80
|
+
large: {
|
|
81
|
+
..._uiConstants.sharedPropTypes.sizeArgType
|
|
70
82
|
},
|
|
71
|
-
position: {
|
|
83
|
+
position: {
|
|
84
|
+
..._uiConstants.sharedPropTypes.insideAlignmentArgType
|
|
72
85
|
}
|
|
73
86
|
}
|
|
74
87
|
};
|
|
75
|
-
exports.default = _default;
|
|
76
|
-
|
|
77
88
|
const DefaultContent = args => /*#__PURE__*/_react.default.createElement(_modal.Modal, args, /*#__PURE__*/_react.default.createElement(_index.ModalContent, null, "Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam nonumy eirmod tempor invidunt ut labore et dolore magna aliquyam erat, sed diam voluptua. At vero eos et accusam et justo duo dolores et ea rebum. Stet clita kasd gubergren, no sea takimata sanctus est Lorem ipsum dolor sit amet. Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam nonumy eirmod tempor invidunt ut labore et dolore magna aliquyam erat, sed diam voluptua. At vero eos et accusam et justo duo dolores et ea rebum. Stet clita kasd gubergren, no sea takimata sanctus est Lorem ipsum dolor sit amet."));
|
|
78
|
-
|
|
79
89
|
exports.DefaultContent = DefaultContent;
|
|
80
90
|
DefaultContent.args = {
|
|
81
91
|
onClose: onClose
|
|
82
92
|
};
|
|
83
93
|
DefaultContent.storyName = 'Default: Content';
|
|
84
|
-
|
|
85
94
|
const AlignmentMiddle = args => /*#__PURE__*/_react.default.createElement(_modal.Modal, args, /*#__PURE__*/_react.default.createElement(_index.ModalContent, null, "Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam nonumy eirmod tempor invidunt ut labore et dolore magna aliquyam erat, sed diam voluptua. At vero eos et accusam et justo duo dolores et ea rebum. Stet clita kasd gubergren, no sea takimata sanctus est Lorem ipsum dolor sit amet. Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam nonumy eirmod tempor invidunt ut labore et dolore magna aliquyam erat, sed diam voluptua. At vero eos et accusam et justo duo dolores et ea rebum. Stet clita kasd gubergren, no sea takimata sanctus est Lorem ipsum dolor sit amet."));
|
|
86
|
-
|
|
87
95
|
exports.AlignmentMiddle = AlignmentMiddle;
|
|
88
96
|
AlignmentMiddle.args = {
|
|
89
97
|
onClose,
|
|
90
98
|
position: 'middle'
|
|
91
99
|
};
|
|
92
100
|
AlignmentMiddle.storyName = 'Alignment: Middle';
|
|
93
|
-
|
|
94
101
|
const AlignmentBottom = args => /*#__PURE__*/_react.default.createElement(_modal.Modal, args, /*#__PURE__*/_react.default.createElement(_index.ModalContent, null, "Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam nonumy eirmod tempor invidunt ut labore et dolore magna aliquyam erat, sed diam voluptua. At vero eos et accusam et justo duo dolores et ea rebum. Stet clita kasd gubergren, no sea takimata sanctus est Lorem ipsum dolor sit amet. Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam nonumy eirmod tempor invidunt ut labore et dolore magna aliquyam erat, sed diam voluptua. At vero eos et accusam et justo duo dolores et ea rebum. Stet clita kasd gubergren, no sea takimata sanctus est Lorem ipsum dolor sit amet."));
|
|
95
|
-
|
|
96
102
|
exports.AlignmentBottom = AlignmentBottom;
|
|
97
103
|
AlignmentBottom.args = {
|
|
98
104
|
onClose,
|
|
99
105
|
position: 'bottom'
|
|
100
106
|
};
|
|
101
107
|
AlignmentBottom.storyName = 'Position: Bottom';
|
|
102
|
-
|
|
103
108
|
const SmallTitleContentAction = args => /*#__PURE__*/_react.default.createElement(_modal.Modal, args, /*#__PURE__*/_react.default.createElement(_index.ModalTitle, null, "This is a small modal with title, content and primary action"), /*#__PURE__*/_react.default.createElement(_index.ModalContent, null, "Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam nonumy eirmod tempor invidunt ut labore et dolore magna aliquyam erat, sed diam voluptua. At vero eos et accusam et justo duo dolores et ea rebum. Stet clita kasd gubergren, no sea takimata sanctus est Lorem ipsum dolor sit amet. Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam nonumy eirmod tempor invidunt ut labore et dolore magna aliquyam erat, sed diam voluptua. At vero eos et accusam et justo duo dolores et ea rebum. Stet clita kasd gubergren, no sea takimata sanctus est Lorem ipsum dolor sit amet."), /*#__PURE__*/_react.default.createElement(_index.ModalActions, null, /*#__PURE__*/_react.default.createElement(_button.ButtonStrip, {
|
|
104
109
|
end: true
|
|
105
110
|
}, /*#__PURE__*/_react.default.createElement(_button.Button, {
|
|
@@ -108,9 +113,8 @@ const SmallTitleContentAction = args => /*#__PURE__*/_react.default.createElemen
|
|
|
108
113
|
}, "Secondary action"), /*#__PURE__*/_react.default.createElement(_button.Button, {
|
|
109
114
|
onClick: say('Button primary'),
|
|
110
115
|
primary: true
|
|
111
|
-
}, "Primary action"))));
|
|
112
|
-
|
|
113
|
-
|
|
116
|
+
}, "Primary action"))));
|
|
117
|
+
// Have this be the primary story on the docs page
|
|
114
118
|
exports.SmallTitleContentAction = SmallTitleContentAction;
|
|
115
119
|
SmallTitleContentAction.parameters = {
|
|
116
120
|
docs: {
|
|
@@ -125,7 +129,6 @@ SmallTitleContentAction.args = {
|
|
|
125
129
|
onClose
|
|
126
130
|
};
|
|
127
131
|
SmallTitleContentAction.storyName = 'Small: Title, Content, Action';
|
|
128
|
-
|
|
129
132
|
const MediumTitleContentAction = args => /*#__PURE__*/_react.default.createElement(_modal.Modal, args, /*#__PURE__*/_react.default.createElement(_index.ModalTitle, null, "This is a medium modal with title, content and primary action"), /*#__PURE__*/_react.default.createElement(_index.ModalContent, null, "Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam nonumy eirmod tempor invidunt ut labore et dolore magna aliquyam erat, sed diam voluptua. At vero eos et accusam et justo duo dolores et ea rebum. Stet clita kasd gubergren, no sea takimata sanctus est Lorem ipsum dolor sit amet. Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam nonumy eirmod tempor invidunt ut labore et dolore magna aliquyam erat, sed diam voluptua. At vero eos et accusam et justo duo dolores et ea rebum. Stet clita kasd gubergren, no sea takimata sanctus est Lorem ipsum dolor sit amet."), /*#__PURE__*/_react.default.createElement(_index.ModalActions, null, /*#__PURE__*/_react.default.createElement(_button.ButtonStrip, {
|
|
130
133
|
end: true
|
|
131
134
|
}, /*#__PURE__*/_react.default.createElement(_button.Button, {
|
|
@@ -135,10 +138,8 @@ const MediumTitleContentAction = args => /*#__PURE__*/_react.default.createEleme
|
|
|
135
138
|
onClick: say('Button primary'),
|
|
136
139
|
primary: true
|
|
137
140
|
}, "Primary action"))));
|
|
138
|
-
|
|
139
141
|
exports.MediumTitleContentAction = MediumTitleContentAction;
|
|
140
142
|
MediumTitleContentAction.storyName = 'Medium: Title, Content, Action';
|
|
141
|
-
|
|
142
143
|
const LargeTitleContentPrimary = args => /*#__PURE__*/_react.default.createElement(_modal.Modal, args, /*#__PURE__*/_react.default.createElement(_index.ModalTitle, null, "This is a large modal with title, content and primary action"), /*#__PURE__*/_react.default.createElement(_index.ModalContent, null, "Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam nonumy eirmod tempor invidunt ut labore et dolore magna aliquyam erat, sed diam voluptua. At vero eos et accusam et justo duo dolores et ea rebum. Stet clita kasd gubergren, no sea takimata sanctus est Lorem ipsum dolor sit amet. Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam nonumy eirmod tempor invidunt ut labore et dolore magna aliquyam erat, sed diam voluptua. At vero eos et accusam et justo duo dolores et ea rebum. Stet clita kasd gubergren, no sea takimata sanctus est Lorem ipsum dolor sit amet."), /*#__PURE__*/_react.default.createElement(_index.ModalActions, null, /*#__PURE__*/_react.default.createElement(_button.ButtonStrip, {
|
|
143
144
|
end: true
|
|
144
145
|
}, /*#__PURE__*/_react.default.createElement(_button.Button, {
|
|
@@ -148,13 +149,11 @@ const LargeTitleContentPrimary = args => /*#__PURE__*/_react.default.createEleme
|
|
|
148
149
|
onClick: say('Button primary'),
|
|
149
150
|
primary: true
|
|
150
151
|
}, "Primary action"))));
|
|
151
|
-
|
|
152
152
|
exports.LargeTitleContentPrimary = LargeTitleContentPrimary;
|
|
153
153
|
LargeTitleContentPrimary.args = {
|
|
154
154
|
large: true
|
|
155
155
|
};
|
|
156
156
|
LargeTitleContentPrimary.storyName = 'Large: Title, Content, Primary';
|
|
157
|
-
|
|
158
157
|
const FluidTitleContentPrimary = args => /*#__PURE__*/_react.default.createElement(_modal.Modal, args, /*#__PURE__*/_react.default.createElement(_index.ModalTitle, null, "This is a modal using custom dimensions, with title, content and primary action"), /*#__PURE__*/_react.default.createElement(_index.ModalContent, null, /*#__PURE__*/_react.default.createElement("div", {
|
|
159
158
|
style: {
|
|
160
159
|
display: 'flex',
|
|
@@ -179,14 +178,12 @@ const FluidTitleContentPrimary = args => /*#__PURE__*/_react.default.createEleme
|
|
|
179
178
|
onClick: say('Button primary'),
|
|
180
179
|
primary: true
|
|
181
180
|
}, "Primary action"))));
|
|
182
|
-
|
|
183
181
|
exports.FluidTitleContentPrimary = FluidTitleContentPrimary;
|
|
184
182
|
FluidTitleContentPrimary.args = {
|
|
185
183
|
fluid: true,
|
|
186
184
|
position: 'top'
|
|
187
185
|
};
|
|
188
186
|
FluidTitleContentPrimary.storyName = 'Fluid (Custom sizes): Title, Content, Primary';
|
|
189
|
-
|
|
190
187
|
const SmallContentPrimary = args => /*#__PURE__*/_react.default.createElement(_modal.Modal, args, /*#__PURE__*/_react.default.createElement(_index.ModalContent, null, "Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam nonumy eirmod tempor invidunt ut labore et dolore magna aliquyam erat, sed diam voluptua. At vero eos et accusam et justo duo dolores et ea rebum. Stet clita kasd gubergren, no sea takimata sanctus est Lorem ipsum dolor sit amet. Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam nonumy eirmod tempor invidunt ut labore et dolore magna aliquyam erat, sed diam voluptua. At vero eos et accusam et justo duo dolores et ea rebum. Stet clita kasd gubergren, no sea takimata sanctus est Lorem ipsum dolor sit amet."), /*#__PURE__*/_react.default.createElement(_index.ModalActions, null, /*#__PURE__*/_react.default.createElement(_button.ButtonStrip, {
|
|
191
188
|
end: true
|
|
192
189
|
}, /*#__PURE__*/_react.default.createElement(_button.Button, {
|
|
@@ -196,13 +193,11 @@ const SmallContentPrimary = args => /*#__PURE__*/_react.default.createElement(_m
|
|
|
196
193
|
onClick: say('Button primary'),
|
|
197
194
|
primary: true
|
|
198
195
|
}, "Primary action"))));
|
|
199
|
-
|
|
200
196
|
exports.SmallContentPrimary = SmallContentPrimary;
|
|
201
197
|
SmallContentPrimary.args = {
|
|
202
198
|
small: true
|
|
203
199
|
};
|
|
204
200
|
SmallContentPrimary.storyName = 'Small: Content & Primary';
|
|
205
|
-
|
|
206
201
|
const SmallDestructivePrimary = args => /*#__PURE__*/_react.default.createElement(_modal.Modal, args, /*#__PURE__*/_react.default.createElement(_index.ModalContent, null, "Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam nonumy eirmod tempor invidunt ut labore et dolore magna aliquyam erat, sed diam voluptua. At vero eos et accusam et justo duo dolores et ea rebum. Stet clita kasd gubergren, no sea takimata sanctus est Lorem ipsum dolor sit amet. Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam nonumy eirmod tempor invidunt ut labore et dolore magna aliquyam erat, sed diam voluptua. At vero eos et accusam et justo duo dolores et ea rebum. Stet clita kasd gubergren, no sea takimata sanctus est Lorem ipsum dolor sit amet."), /*#__PURE__*/_react.default.createElement(_index.ModalActions, null, /*#__PURE__*/_react.default.createElement(_button.ButtonStrip, {
|
|
207
202
|
end: true
|
|
208
203
|
}, /*#__PURE__*/_react.default.createElement(_button.Button, {
|
|
@@ -212,13 +207,11 @@ const SmallDestructivePrimary = args => /*#__PURE__*/_react.default.createElemen
|
|
|
212
207
|
destructive: true,
|
|
213
208
|
onClick: say('Button primary')
|
|
214
209
|
}, "Primary action"))));
|
|
215
|
-
|
|
216
210
|
exports.SmallDestructivePrimary = SmallDestructivePrimary;
|
|
217
211
|
SmallDestructivePrimary.args = {
|
|
218
212
|
small: true
|
|
219
213
|
};
|
|
220
214
|
SmallDestructivePrimary.storyName = 'Small: Destructive Primary';
|
|
221
|
-
|
|
222
215
|
const SmallClickableScreenCover = args => /*#__PURE__*/_react.default.createElement(_modal.Modal, args, /*#__PURE__*/_react.default.createElement(_index.ModalTitle, null, "This is a modal with clickable screen cover"), /*#__PURE__*/_react.default.createElement(_index.ModalContent, null, "Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam nonumy eirmod tempor invidunt ut labore et dolore magna aliquyam erat, sed diam voluptua."), /*#__PURE__*/_react.default.createElement(_index.ModalActions, null, /*#__PURE__*/_react.default.createElement(_button.ButtonStrip, {
|
|
223
216
|
end: true
|
|
224
217
|
}, /*#__PURE__*/_react.default.createElement(_button.Button, {
|
|
@@ -228,7 +221,6 @@ const SmallClickableScreenCover = args => /*#__PURE__*/_react.default.createElem
|
|
|
228
221
|
primary: true,
|
|
229
222
|
onClick: say('Button primary')
|
|
230
223
|
}, "Primary action"))));
|
|
231
|
-
|
|
232
224
|
exports.SmallClickableScreenCover = SmallClickableScreenCover;
|
|
233
225
|
SmallClickableScreenCover.args = {
|
|
234
226
|
small: true,
|
|
@@ -238,7 +230,6 @@ SmallClickableScreenCover.args = {
|
|
|
238
230
|
}
|
|
239
231
|
};
|
|
240
232
|
SmallClickableScreenCover.storyName = 'Small: Clickable screen cover';
|
|
241
|
-
|
|
242
233
|
const TopScrollable = args => /*#__PURE__*/_react.default.createElement(_modal.Modal, args, /*#__PURE__*/_react.default.createElement(_index.ModalTitle, null, "This is a modal with scrollable content"), /*#__PURE__*/_react.default.createElement(_index.ModalContent, null, "Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam nonumy eirmod tempor invidunt ut labore et dolore magna aliquyam erat, sed diam voluptua. Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam nonumy eirmod tempor invidunt ut labore et dolore magna aliquyam erat, sed diam voluptua. At vero eos et accusam et justo duo dolores et ea rebum. Stet clita kasd gubergren, no sea takimata sanctus est Lorem ipsum dolor sit amet. Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam nonumy eirmod tempor invidunt ut labore et dolore magna aliquyam erat, sed diam voluptua. At vero eos et accusam et justo duo dolores et ea rebum. Stet clita kasd gubergren, no sea takimata sanctus est Lorem ipsum dolor sit amet. Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam nonumy eirmod tempor invidunt ut labore et dolore magna aliquyam erat, sed diam voluptua. Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam nonumy eirmod tempor invidunt ut labore et dolore magna aliquyam erat, sed diam voluptua. At vero eos et accusam et justo duo dolores et ea rebum. Stet clita kasd gubergren, no sea takimata sanctus est Lorem ipsum dolor sit amet. Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam nonumy eirmod tempor invidunt ut labore et dolore magna aliquyam erat, sed diam voluptua. At vero eos et accusam et justo duo dolores et ea rebum. Stet clita kasd gubergren, no sea takimata sanctus est Lorem ipsum dolor sit amet. Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam nonumy eirmod tempor invidunt ut labore et dolore magna aliquyam erat, sed diam voluptua. Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam nonumy eirmod tempor invidunt ut labore et dolore magna aliquyam erat, sed diam voluptua. At vero eos et accusam et justo duo dolores et ea rebum. Stet clita kasd gubergren, no sea takimata sanctus est Lorem ipsum dolor sit amet. Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam nonumy eirmod tempor invidunt ut labore et dolore magna aliquyam erat, sed diam voluptua. At vero eos et accusam et justo duo dolores et ea rebum. Stet clita kasd gubergren, no sea takimata sanctus est Lorem ipsum dolor sit amet. Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam nonumy eirmod tempor invidunt ut labore et dolore magna aliquyam erat, sed diam voluptua. Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam nonumy eirmod tempor invidunt ut labore et dolore magna aliquyam erat, sed diam voluptua. At vero eos et accusam et justo duo dolores et ea rebum. Stet clita kasd gubergren, no sea takimata sanctus est Lorem ipsum dolor sit amet. Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam nonumy eirmod tempor invidunt ut labore et dolore magna aliquyam erat, sed diam voluptua. At vero eos et accusam et justo duo dolores et ea rebum. Stet clita kasd gubergren, no sea takimata sanctus est Lorem ipsum dolor sit amet."), /*#__PURE__*/_react.default.createElement(_index.ModalActions, null, /*#__PURE__*/_react.default.createElement(_button.ButtonStrip, {
|
|
243
234
|
end: true
|
|
244
235
|
}, /*#__PURE__*/_react.default.createElement(_button.Button, {
|
|
@@ -248,12 +239,11 @@ const TopScrollable = args => /*#__PURE__*/_react.default.createElement(_modal.M
|
|
|
248
239
|
destructive: true,
|
|
249
240
|
onClick: say('Button primary')
|
|
250
241
|
}, "Primary action"))));
|
|
251
|
-
|
|
252
242
|
exports.TopScrollable = TopScrollable;
|
|
253
|
-
TopScrollable.args = {
|
|
243
|
+
TopScrollable.args = {
|
|
244
|
+
...SmallClickableScreenCover.args
|
|
254
245
|
};
|
|
255
246
|
TopScrollable.storyName = 'Top: scrollable';
|
|
256
|
-
|
|
257
247
|
const MiddleScrollable = args => /*#__PURE__*/_react.default.createElement(_modal.Modal, args, /*#__PURE__*/_react.default.createElement(_index.ModalTitle, null, "This is a modal with scrollable content"), /*#__PURE__*/_react.default.createElement(_index.ModalContent, null, "Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam nonumy eirmod tempor invidunt ut labore et dolore magna aliquyam erat, sed diam voluptua. Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam nonumy eirmod tempor invidunt ut labore et dolore magna aliquyam erat, sed diam voluptua. At vero eos et accusam et justo duo dolores et ea rebum. Stet clita kasd gubergren, no sea takimata sanctus est Lorem ipsum dolor sit amet. Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam nonumy eirmod tempor invidunt ut labore et dolore magna aliquyam erat, sed diam voluptua. At vero eos et accusam et justo duo dolores et ea rebum. Stet clita kasd gubergren, no sea takimata sanctus est Lorem ipsum dolor sit amet. Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam nonumy eirmod tempor invidunt ut labore et dolore magna aliquyam erat, sed diam voluptua. Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam nonumy eirmod tempor invidunt ut labore et dolore magna aliquyam erat, sed diam voluptua. At vero eos et accusam et justo duo dolores et ea rebum. Stet clita kasd gubergren, no sea takimata sanctus est Lorem ipsum dolor sit amet. Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam nonumy eirmod tempor invidunt ut labore et dolore magna aliquyam erat, sed diam voluptua. At vero eos et accusam et justo duo dolores et ea rebum. Stet clita kasd gubergren, no sea takimata sanctus est Lorem ipsum dolor sit amet. Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam nonumy eirmod tempor invidunt ut labore et dolore magna aliquyam erat, sed diam voluptua. Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam nonumy eirmod tempor invidunt ut labore et dolore magna aliquyam erat, sed diam voluptua. At vero eos et accusam et justo duo dolores et ea rebum. Stet clita kasd gubergren, no sea takimata sanctus est Lorem ipsum dolor sit amet. Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam nonumy eirmod tempor invidunt ut labore et dolore magna aliquyam erat, sed diam voluptua. At vero eos et accusam et justo duo dolores et ea rebum. Stet clita kasd gubergren, no sea takimata sanctus est Lorem ipsum dolor sit amet. Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam nonumy eirmod tempor invidunt ut labore et dolore magna aliquyam erat, sed diam voluptua. Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam nonumy eirmod tempor invidunt ut labore et dolore magna aliquyam erat, sed diam voluptua. At vero eos et accusam et justo duo dolores et ea rebum. Stet clita kasd gubergren, no sea takimata sanctus est Lorem ipsum dolor sit amet. Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam nonumy eirmod tempor invidunt ut labore et dolore magna aliquyam erat, sed diam voluptua. At vero eos et accusam et justo duo dolores et ea rebum. Stet clita kasd gubergren, no sea takimata sanctus est Lorem ipsum dolor sit amet."), /*#__PURE__*/_react.default.createElement(_index.ModalActions, null, /*#__PURE__*/_react.default.createElement(_button.ButtonStrip, {
|
|
258
248
|
end: true
|
|
259
249
|
}, /*#__PURE__*/_react.default.createElement(_button.Button, {
|
|
@@ -263,13 +253,12 @@ const MiddleScrollable = args => /*#__PURE__*/_react.default.createElement(_moda
|
|
|
263
253
|
destructive: true,
|
|
264
254
|
onClick: say('Button primary')
|
|
265
255
|
}, "Primary action"))));
|
|
266
|
-
|
|
267
256
|
exports.MiddleScrollable = MiddleScrollable;
|
|
268
|
-
MiddleScrollable.args = {
|
|
257
|
+
MiddleScrollable.args = {
|
|
258
|
+
...TopScrollable.args,
|
|
269
259
|
position: 'middle'
|
|
270
260
|
};
|
|
271
261
|
MiddleScrollable.storyName = 'Middle: scrollable';
|
|
272
|
-
|
|
273
262
|
const BottomScrollable = args => /*#__PURE__*/_react.default.createElement(_modal.Modal, args, /*#__PURE__*/_react.default.createElement(_index.ModalTitle, null, "This is a modal with scrollable content"), /*#__PURE__*/_react.default.createElement(_index.ModalContent, null, "Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam nonumy eirmod tempor invidunt ut labore et dolore magna aliquyam erat, sed diam voluptua. Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam nonumy eirmod tempor invidunt ut labore et dolore magna aliquyam erat, sed diam voluptua. At vero eos et accusam et justo duo dolores et ea rebum. Stet clita kasd gubergren, no sea takimata sanctus est Lorem ipsum dolor sit amet. Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam nonumy eirmod tempor invidunt ut labore et dolore magna aliquyam erat, sed diam voluptua. At vero eos et accusam et justo duo dolores et ea rebum. Stet clita kasd gubergren, no sea takimata sanctus est Lorem ipsum dolor sit amet. Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam nonumy eirmod tempor invidunt ut labore et dolore magna aliquyam erat, sed diam voluptua. Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam nonumy eirmod tempor invidunt ut labore et dolore magna aliquyam erat, sed diam voluptua. At vero eos et accusam et justo duo dolores et ea rebum. Stet clita kasd gubergren, no sea takimata sanctus est Lorem ipsum dolor sit amet. Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam nonumy eirmod tempor invidunt ut labore et dolore magna aliquyam erat, sed diam voluptua. At vero eos et accusam et justo duo dolores et ea rebum. Stet clita kasd gubergren, no sea takimata sanctus est Lorem ipsum dolor sit amet. Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam nonumy eirmod tempor invidunt ut labore et dolore magna aliquyam erat, sed diam voluptua. Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam nonumy eirmod tempor invidunt ut labore et dolore magna aliquyam erat, sed diam voluptua. At vero eos et accusam et justo duo dolores et ea rebum. Stet clita kasd gubergren, no sea takimata sanctus est Lorem ipsum dolor sit amet. Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam nonumy eirmod tempor invidunt ut labore et dolore magna aliquyam erat, sed diam voluptua. At vero eos et accusam et justo duo dolores et ea rebum. Stet clita kasd gubergren, no sea takimata sanctus est Lorem ipsum dolor sit amet. Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam nonumy eirmod tempor invidunt ut labore et dolore magna aliquyam erat, sed diam voluptua. Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam nonumy eirmod tempor invidunt ut labore et dolore magna aliquyam erat, sed diam voluptua. At vero eos et accusam et justo duo dolores et ea rebum. Stet clita kasd gubergren, no sea takimata sanctus est Lorem ipsum dolor sit amet. Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam nonumy eirmod tempor invidunt ut labore et dolore magna aliquyam erat, sed diam voluptua. At vero eos et accusam et justo duo dolores et ea rebum. Stet clita kasd gubergren, no sea takimata sanctus est Lorem ipsum dolor sit amet."), /*#__PURE__*/_react.default.createElement(_index.ModalActions, null, /*#__PURE__*/_react.default.createElement(_button.ButtonStrip, {
|
|
274
263
|
end: true
|
|
275
264
|
}, /*#__PURE__*/_react.default.createElement(_button.Button, {
|
|
@@ -279,13 +268,12 @@ const BottomScrollable = args => /*#__PURE__*/_react.default.createElement(_moda
|
|
|
279
268
|
destructive: true,
|
|
280
269
|
onClick: say('Button primary')
|
|
281
270
|
}, "Primary action"))));
|
|
282
|
-
|
|
283
271
|
exports.BottomScrollable = BottomScrollable;
|
|
284
|
-
BottomScrollable.args = {
|
|
272
|
+
BottomScrollable.args = {
|
|
273
|
+
...TopScrollable.args,
|
|
285
274
|
position: 'bottom'
|
|
286
275
|
};
|
|
287
276
|
BottomScrollable.storyName = 'Bottom: scrollable';
|
|
288
|
-
|
|
289
277
|
const SmallLongTitle = args => /*#__PURE__*/_react.default.createElement(_modal.Modal, args, /*#__PURE__*/_react.default.createElement(_index.ModalTitle, null, "This headline should break into multiple lines because it's way too long for one!"), /*#__PURE__*/_react.default.createElement(_index.ModalContent, null, "Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam nonumy eirmod tempor invidunt ut labore et dolore magna aliquyam erat, sed diam voluptua. At vero eos et accusam et justo duo dolores et ea rebum."), /*#__PURE__*/_react.default.createElement(_index.ModalActions, null, /*#__PURE__*/_react.default.createElement(_button.ButtonStrip, {
|
|
290
278
|
end: true
|
|
291
279
|
}, /*#__PURE__*/_react.default.createElement(_button.Button, {
|
|
@@ -295,13 +283,11 @@ const SmallLongTitle = args => /*#__PURE__*/_react.default.createElement(_modal.
|
|
|
295
283
|
onClick: say('Button primary'),
|
|
296
284
|
primary: true
|
|
297
285
|
}, "Primary action"))));
|
|
298
|
-
|
|
299
286
|
exports.SmallLongTitle = SmallLongTitle;
|
|
300
287
|
SmallLongTitle.args = {
|
|
301
288
|
small: true
|
|
302
289
|
};
|
|
303
290
|
SmallLongTitle.storyName = 'Small: Long title';
|
|
304
|
-
|
|
305
291
|
const LargeWithSelectComponent = args => /*#__PURE__*/_react.default.createElement(_modal.Modal, args, /*#__PURE__*/_react.default.createElement(_index.ModalTitle, null, "Select opens on top of the Modal"), /*#__PURE__*/_react.default.createElement(_index.ModalContent, null, /*#__PURE__*/_react.default.createElement(_select.SingleSelect, null, /*#__PURE__*/_react.default.createElement(_select.SingleSelectOption, {
|
|
306
292
|
key: "1",
|
|
307
293
|
value: "1",
|
|
@@ -351,13 +337,11 @@ const LargeWithSelectComponent = args => /*#__PURE__*/_react.default.createEleme
|
|
|
351
337
|
onClick: say('Button primary'),
|
|
352
338
|
primary: true
|
|
353
339
|
}, "Primary action"))));
|
|
354
|
-
|
|
355
340
|
exports.LargeWithSelectComponent = LargeWithSelectComponent;
|
|
356
341
|
LargeWithSelectComponent.args = {
|
|
357
342
|
large: true
|
|
358
343
|
};
|
|
359
344
|
LargeWithSelectComponent.storyName = 'Large: with Select component';
|
|
360
|
-
|
|
361
345
|
const LargeModalWithMoreNestedModals = args => /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null, /*#__PURE__*/_react.default.createElement(_modal.Modal, args, /*#__PURE__*/_react.default.createElement(_index.ModalTitle, null, "Select opens on top of the Modal - Level 1"), /*#__PURE__*/_react.default.createElement(_index.ModalContent, null, /*#__PURE__*/_react.default.createElement(_select.SingleSelect, null, /*#__PURE__*/_react.default.createElement(_select.SingleSelectOption, {
|
|
362
346
|
key: "1",
|
|
363
347
|
value: "1",
|
|
@@ -563,20 +547,17 @@ const LargeModalWithMoreNestedModals = args => /*#__PURE__*/_react.default.creat
|
|
|
563
547
|
onClick: say('Button primary'),
|
|
564
548
|
primary: true
|
|
565
549
|
}, "Primary action")))));
|
|
566
|
-
|
|
567
550
|
exports.LargeModalWithMoreNestedModals = LargeModalWithMoreNestedModals;
|
|
568
551
|
LargeModalWithMoreNestedModals.args = {
|
|
569
552
|
large: true
|
|
570
553
|
};
|
|
571
554
|
LargeModalWithMoreNestedModals.storyName = 'Large: modal with more nested modals';
|
|
572
|
-
|
|
573
555
|
const StatefuleComponent = () => {
|
|
574
556
|
const [counter, setCounter] = (0, _react.useState)(0);
|
|
575
557
|
return /*#__PURE__*/_react.default.createElement("div", null, /*#__PURE__*/_react.default.createElement("p", null, "Current counter: ", counter), /*#__PURE__*/_react.default.createElement("button", {
|
|
576
558
|
onClick: () => setCounter(counter + 1)
|
|
577
559
|
}, "Add 1 to counter"));
|
|
578
560
|
};
|
|
579
|
-
|
|
580
561
|
const ModalThatHidesWithStatefulComponens = () => {
|
|
581
562
|
const [render, setRender] = (0, _react.useState)(false);
|
|
582
563
|
const [hide, setHide] = (0, _react.useState)(false);
|
|
@@ -598,9 +579,7 @@ const ModalThatHidesWithStatefulComponens = () => {
|
|
|
598
579
|
primary: true
|
|
599
580
|
}, "Hide modal")))));
|
|
600
581
|
};
|
|
601
|
-
|
|
602
582
|
exports.ModalThatHidesWithStatefulComponens = ModalThatHidesWithStatefulComponens;
|
|
603
|
-
|
|
604
583
|
const FluidTop = args => /*#__PURE__*/_react.default.createElement(_modal.Modal, args, /*#__PURE__*/_react.default.createElement(_index.ModalTitle, null, "This is a modal using custom dimensions, with title, content and primary action"), /*#__PURE__*/_react.default.createElement(_index.ModalContent, null, /*#__PURE__*/_react.default.createElement(_box.Box, {
|
|
605
584
|
width: "666px",
|
|
606
585
|
height: "666px"
|
|
@@ -613,14 +592,12 @@ const FluidTop = args => /*#__PURE__*/_react.default.createElement(_modal.Modal,
|
|
|
613
592
|
onClick: say('Button primary'),
|
|
614
593
|
primary: true
|
|
615
594
|
}, "Primary action"))));
|
|
616
|
-
|
|
617
595
|
exports.FluidTop = FluidTop;
|
|
618
596
|
FluidTop.args = {
|
|
619
597
|
fluid: true,
|
|
620
598
|
position: 'top'
|
|
621
599
|
};
|
|
622
600
|
FluidTop.storyName = 'Fluid (Top)';
|
|
623
|
-
|
|
624
601
|
const FluidMiddle = args => /*#__PURE__*/_react.default.createElement(_modal.Modal, args, /*#__PURE__*/_react.default.createElement(_index.ModalTitle, null, "This is a modal using custom dimensions, with title, content and primary action"), /*#__PURE__*/_react.default.createElement(_index.ModalContent, null, /*#__PURE__*/_react.default.createElement(_box.Box, {
|
|
625
602
|
width: "666px",
|
|
626
603
|
height: "666px"
|
|
@@ -633,14 +610,12 @@ const FluidMiddle = args => /*#__PURE__*/_react.default.createElement(_modal.Mod
|
|
|
633
610
|
onClick: say('Button primary'),
|
|
634
611
|
primary: true
|
|
635
612
|
}, "Primary action"))));
|
|
636
|
-
|
|
637
613
|
exports.FluidMiddle = FluidMiddle;
|
|
638
614
|
FluidMiddle.args = {
|
|
639
615
|
fluid: true,
|
|
640
616
|
position: 'middle'
|
|
641
617
|
};
|
|
642
618
|
FluidMiddle.storyName = 'Fluid (Middle)';
|
|
643
|
-
|
|
644
619
|
const FluidBottom = args => /*#__PURE__*/_react.default.createElement(_modal.Modal, args, /*#__PURE__*/_react.default.createElement(_index.ModalTitle, null, "This is a modal using custom dimensions, with title, content and primary action"), /*#__PURE__*/_react.default.createElement(_index.ModalContent, null, /*#__PURE__*/_react.default.createElement(_box.Box, {
|
|
645
620
|
width: "666px",
|
|
646
621
|
height: "666px"
|
|
@@ -653,14 +628,12 @@ const FluidBottom = args => /*#__PURE__*/_react.default.createElement(_modal.Mod
|
|
|
653
628
|
onClick: say('Button primary'),
|
|
654
629
|
primary: true
|
|
655
630
|
}, "Primary action"))));
|
|
656
|
-
|
|
657
631
|
exports.FluidBottom = FluidBottom;
|
|
658
632
|
FluidBottom.args = {
|
|
659
633
|
fluid: true,
|
|
660
634
|
position: 'bottom'
|
|
661
635
|
};
|
|
662
636
|
FluidBottom.storyName = 'Fluid (Bottom)';
|
|
663
|
-
|
|
664
637
|
const RTL = args => {
|
|
665
638
|
(0, _react.useEffect)(() => {
|
|
666
639
|
document.body.dir = 'rtl';
|
|
@@ -672,7 +645,6 @@ const RTL = args => {
|
|
|
672
645
|
dir: "rtl"
|
|
673
646
|
}, /*#__PURE__*/_react.default.createElement(SmallTitleContentAction, args));
|
|
674
647
|
};
|
|
675
|
-
|
|
676
648
|
exports.RTL = RTL;
|
|
677
649
|
RTL.args = {
|
|
678
650
|
small: true,
|
|
@@ -1,15 +1,10 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
3
|
var _react = require("@testing-library/react");
|
|
4
|
-
|
|
5
4
|
var _react2 = _interopRequireDefault(require("react"));
|
|
6
|
-
|
|
7
5
|
var _closeButton = require("./close-button.js");
|
|
8
|
-
|
|
9
6
|
var _modal = require("./modal.js");
|
|
10
|
-
|
|
11
|
-
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
12
|
-
|
|
7
|
+
function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
|
|
13
8
|
describe('Modal', () => {
|
|
14
9
|
describe('Modal Accessibility', () => {
|
|
15
10
|
it('closes when ESC key is pressed', () => {
|
|
@@ -17,14 +12,11 @@ describe('Modal', () => {
|
|
|
17
12
|
(0, _react.render)( /*#__PURE__*/_react2.default.createElement(_modal.Modal, {
|
|
18
13
|
onClose: onCloseMock
|
|
19
14
|
}));
|
|
20
|
-
|
|
21
15
|
const modalElement = _react.screen.getByRole('dialog');
|
|
22
|
-
|
|
23
16
|
_react.fireEvent.keyDown(modalElement, {
|
|
24
17
|
key: 'Escape',
|
|
25
18
|
code: 'Escape'
|
|
26
19
|
});
|
|
27
|
-
|
|
28
20
|
expect(onCloseMock).toHaveBeenCalled();
|
|
29
21
|
});
|
|
30
22
|
it('does not close when "Enter" is pressed', () => {
|
|
@@ -32,14 +24,11 @@ describe('Modal', () => {
|
|
|
32
24
|
(0, _react.render)( /*#__PURE__*/_react2.default.createElement(_modal.Modal, {
|
|
33
25
|
onClose: onCloseMock
|
|
34
26
|
}));
|
|
35
|
-
|
|
36
27
|
const modalElement = _react.screen.getByRole('dialog');
|
|
37
|
-
|
|
38
28
|
_react.fireEvent.keyDown(modalElement, {
|
|
39
29
|
key: 'Enter',
|
|
40
30
|
code: 'Enter'
|
|
41
31
|
});
|
|
42
|
-
|
|
43
32
|
expect(onCloseMock).not.toHaveBeenCalled();
|
|
44
33
|
});
|
|
45
34
|
it('does not close when "SpaceBar" is pressed', () => {
|
|
@@ -47,14 +36,11 @@ describe('Modal', () => {
|
|
|
47
36
|
(0, _react.render)( /*#__PURE__*/_react2.default.createElement(_modal.Modal, {
|
|
48
37
|
onClose: onCloseMock
|
|
49
38
|
}));
|
|
50
|
-
|
|
51
39
|
const modalElement = _react.screen.getByRole('dialog');
|
|
52
|
-
|
|
53
40
|
_react.fireEvent.keyDown(modalElement, {
|
|
54
41
|
key: ' ',
|
|
55
42
|
code: ' '
|
|
56
43
|
});
|
|
57
|
-
|
|
58
44
|
expect(onCloseMock).not.toHaveBeenCalled();
|
|
59
45
|
});
|
|
60
46
|
it('has a close button with proper accessibility attributes', async () => {
|
|
@@ -67,9 +53,7 @@ describe('Modal', () => {
|
|
|
67
53
|
describe('Regular dimensions', () => {
|
|
68
54
|
it('has the correct dimension styles in its default state', () => {
|
|
69
55
|
(0, _react.render)( /*#__PURE__*/_react2.default.createElement(_modal.Modal, null));
|
|
70
|
-
|
|
71
56
|
const modalEl = _react.screen.getByRole('dialog');
|
|
72
|
-
|
|
73
57
|
const style = window.getComputedStyle(modalEl);
|
|
74
58
|
expect(style.height).toBe('auto');
|
|
75
59
|
expect(style.maxHeight).toBe('calc(100vh - 128px)');
|
|
@@ -80,9 +64,7 @@ describe('Modal', () => {
|
|
|
80
64
|
(0, _react.render)( /*#__PURE__*/_react2.default.createElement(_modal.Modal, {
|
|
81
65
|
small: true
|
|
82
66
|
}));
|
|
83
|
-
|
|
84
67
|
const modalEl = _react.screen.getByRole('dialog');
|
|
85
|
-
|
|
86
68
|
const style = window.getComputedStyle(modalEl);
|
|
87
69
|
expect(style.height).toBe('auto');
|
|
88
70
|
expect(style.maxHeight).toBe('calc(100vh - 128px)');
|
|
@@ -93,9 +75,7 @@ describe('Modal', () => {
|
|
|
93
75
|
(0, _react.render)( /*#__PURE__*/_react2.default.createElement(_modal.Modal, {
|
|
94
76
|
large: true
|
|
95
77
|
}));
|
|
96
|
-
|
|
97
78
|
const modalEl = _react.screen.getByRole('dialog');
|
|
98
|
-
|
|
99
79
|
const style = window.getComputedStyle(modalEl);
|
|
100
80
|
expect(style.height).toBe('auto');
|
|
101
81
|
expect(style.maxHeight).toBe('calc(100vh - 128px)');
|
|
@@ -106,9 +86,7 @@ describe('Modal', () => {
|
|
|
106
86
|
(0, _react.render)( /*#__PURE__*/_react2.default.createElement(_modal.Modal, {
|
|
107
87
|
fluid: true
|
|
108
88
|
}));
|
|
109
|
-
|
|
110
89
|
const modalEl = _react.screen.getByRole('dialog');
|
|
111
|
-
|
|
112
90
|
const style = window.getComputedStyle(modalEl);
|
|
113
91
|
expect(style.height).toBe('auto');
|
|
114
92
|
expect(style.maxHeight).toBe('calc(100vh - 128px)');
|
|
@@ -1,7 +1,6 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
3
|
var _cypressCucumberPreprocessor = require("@badeball/cypress-cucumber-preprocessor");
|
|
4
|
-
|
|
5
4
|
(0, _cypressCucumberPreprocessor.Given)('a ModalActions with children is rendered', () => {
|
|
6
5
|
cy.visitStory('ModalActions', 'With children');
|
|
7
6
|
cy.get('[data-test="dhis2-uicore-modalactions"]').should('be.visible');
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.default = exports.WithChildren = void 0;
|
|
7
|
+
var _react = _interopRequireDefault(require("react"));
|
|
8
|
+
var _modalActions = require("./modal-actions.js");
|
|
9
|
+
function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
|
|
10
|
+
var _default = exports.default = {
|
|
11
|
+
title: 'ModalActions'
|
|
12
|
+
};
|
|
13
|
+
const WithChildren = () => /*#__PURE__*/_react.default.createElement(_modalActions.ModalActions, null, "I am a child");
|
|
14
|
+
exports.WithChildren = WithChildren;
|
|
@@ -4,17 +4,11 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
4
4
|
value: true
|
|
5
5
|
});
|
|
6
6
|
exports.ModalActions = void 0;
|
|
7
|
-
|
|
8
7
|
var _style = _interopRequireDefault(require("styled-jsx/style"));
|
|
9
|
-
|
|
10
8
|
var _uiConstants = require("@dhis2/ui-constants");
|
|
11
|
-
|
|
12
9
|
var _propTypes = _interopRequireDefault(require("prop-types"));
|
|
13
|
-
|
|
14
10
|
var _react = _interopRequireDefault(require("react"));
|
|
15
|
-
|
|
16
|
-
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
17
|
-
|
|
11
|
+
function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
|
|
18
12
|
const ModalActions = _ref => {
|
|
19
13
|
let {
|
|
20
14
|
children,
|
|
@@ -26,9 +20,8 @@ const ModalActions = _ref => {
|
|
|
26
20
|
}, children, /*#__PURE__*/_react.default.createElement(_style.default, {
|
|
27
21
|
id: "2674552674",
|
|
28
22
|
dynamic: [_uiConstants.spacers.dp16]
|
|
29
|
-
}, [
|
|
23
|
+
}, [`div.__jsx-style-dynamic-selector{-webkit-order:3;-ms-flex-order:3;order:3;display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-box-pack:end;-webkit-justify-content:flex-end;-ms-flex-pack:end;justify-content:flex-end;-webkit-align-self:flex-end;-ms-flex-item-align:end;align-self:flex-end;margin:${_uiConstants.spacers.dp16} 0 0;}`]));
|
|
30
24
|
};
|
|
31
|
-
|
|
32
25
|
exports.ModalActions = ModalActions;
|
|
33
26
|
ModalActions.defaultProps = {
|
|
34
27
|
dataTest: 'dhis2-uicore-modalactions'
|
|
@@ -1,7 +1,6 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
3
|
var _cypressCucumberPreprocessor = require("@badeball/cypress-cucumber-preprocessor");
|
|
4
|
-
|
|
5
4
|
(0, _cypressCucumberPreprocessor.Given)('a ModalContent with children is rendered', () => {
|
|
6
5
|
cy.visitStory('ModalContent', 'With children');
|
|
7
6
|
cy.get('[data-test="dhis2-uicore-modalcontent"]').should('be.visible');
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.default = exports.WithChildren = void 0;
|
|
7
|
+
var _react = _interopRequireDefault(require("react"));
|
|
8
|
+
var _modalContent = require("./modal-content.js");
|
|
9
|
+
function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
|
|
10
|
+
var _default = exports.default = {
|
|
11
|
+
title: 'ModalContent'
|
|
12
|
+
};
|
|
13
|
+
const WithChildren = () => /*#__PURE__*/_react.default.createElement(_modalContent.ModalContent, null, "I am a child");
|
|
14
|
+
exports.WithChildren = WithChildren;
|
|
@@ -4,15 +4,10 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
4
4
|
value: true
|
|
5
5
|
});
|
|
6
6
|
exports.ModalContent = void 0;
|
|
7
|
-
|
|
8
7
|
var _style = _interopRequireDefault(require("styled-jsx/style"));
|
|
9
|
-
|
|
10
8
|
var _propTypes = _interopRequireDefault(require("prop-types"));
|
|
11
|
-
|
|
12
9
|
var _react = _interopRequireDefault(require("react"));
|
|
13
|
-
|
|
14
|
-
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
15
|
-
|
|
10
|
+
function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
|
|
16
11
|
const ModalContent = _ref => {
|
|
17
12
|
let {
|
|
18
13
|
children,
|
|
@@ -26,7 +21,6 @@ const ModalContent = _ref => {
|
|
|
26
21
|
id: "3719215021"
|
|
27
22
|
}, ["div.jsx-3719215021{-webkit-order:2;-ms-flex-order:2;order:2;-webkit-box-flex:2;-webkit-flex-grow:2;-ms-flex-positive:2;flex-grow:2;overflow-y:auto;}"]));
|
|
28
23
|
};
|
|
29
|
-
|
|
30
24
|
exports.ModalContent = ModalContent;
|
|
31
25
|
ModalContent.defaultProps = {
|
|
32
26
|
dataTest: 'dhis2-uicore-modalcontent'
|