@uva-glass/component-library 1.42.1 → 1.43.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/assets/ModalDialog.css +1 -1
- package/dist/components/Accordion/Accordion.d.ts +0 -1
- package/dist/components/Accordion/Accordion.stories.d.ts +0 -1
- package/dist/components/ActionList/ActionList.d.ts +0 -1
- package/dist/components/ActionList/ActionList.stories.d.ts +0 -1
- package/dist/components/AppStatusBar/AppStatusBar.stories.d.ts +0 -1
- package/dist/components/Attention/Attention.d.ts +0 -1
- package/dist/components/Attention/Attention.stories.d.ts +0 -1
- package/dist/components/Backdrop/Backdrop.d.ts +0 -1
- package/dist/components/Backdrop/Backdrop.stories.d.ts +0 -1
- package/dist/components/Button/Button.d.ts +0 -1
- package/dist/components/Button/Button.stories.d.ts +0 -1
- package/dist/components/ButtonGroup/ButtonGroup.d.ts +0 -1
- package/dist/components/ButtonGroup/ButtonGroup.stories.d.ts +0 -1
- package/dist/components/Card/Card.d.ts +0 -1
- package/dist/components/Card/Card.stories.d.ts +0 -1
- package/dist/components/Checkbox/Checkbox.d.ts +0 -1
- package/dist/components/Checkbox/Checkbox.stories.d.ts +0 -1
- package/dist/components/Drawer/Drawer.d.ts +0 -1
- package/dist/components/Drawer/Drawer.stories.d.ts +0 -1
- package/dist/components/EmptyStateDataDisplay/EmptyStateDataDisplay.stories.d.ts +0 -1
- package/dist/components/FieldHint/FieldHint.stories.d.ts +0 -1
- package/dist/components/Fieldset/Fieldset.d.ts +0 -1
- package/dist/components/Fieldset/Fieldset.stories.d.ts +0 -1
- package/dist/components/FormField/FormField.d.ts +0 -1
- package/dist/components/FormField/FormField.stories.d.ts +0 -1
- package/dist/components/GridRow/Column/Column.d.ts +0 -1
- package/dist/components/GridRow/GridRow.d.ts +0 -1
- package/dist/components/GridRow/GridRow.stories.d.ts +0 -1
- package/dist/components/HorizontalList/HorizontalList.stories.d.ts +0 -1
- package/dist/components/Icon/Icon.d.ts +0 -1
- package/dist/components/Icon/Icon.stories.d.ts +0 -1
- package/dist/components/Icon/Icon.stories.js +13 -12
- package/dist/components/Icon/Icon.stories.js.map +1 -1
- package/dist/components/Icon/icons/index.js +338 -58
- package/dist/components/Icon/icons/index.js.map +1 -1
- package/dist/components/IconButton/IconButton.d.ts +0 -1
- package/dist/components/IconButton/IconButton.stories.d.ts +0 -1
- package/dist/components/InfoMessage/InfoMessage.d.ts +0 -1
- package/dist/components/InfoMessage/InfoMessage.stories.d.ts +0 -1
- package/dist/components/Input/Input.d.ts +0 -1
- package/dist/components/Input/Input.stories.d.ts +0 -1
- package/dist/components/InputField/InputField.d.ts +0 -1
- package/dist/components/InputField/InputField.stories.d.ts +0 -1
- package/dist/components/Label/Label.d.ts +0 -1
- package/dist/components/Label/Label.stories.d.ts +0 -1
- package/dist/components/MenuButton/MenuButton.d.ts +0 -1
- package/dist/components/MenuButton/MenuButton.stories.d.ts +0 -1
- package/dist/components/MenuLink/MenuLink.d.ts +0 -1
- package/dist/components/MenuLink/MenuLink.stories.d.ts +0 -1
- package/dist/components/MetaDataList/MetaDataList.d.ts +0 -1
- package/dist/components/MetaDataList/MetaDataList.stories.d.ts +0 -1
- package/dist/components/ModalDialog/ModalDialog.d.ts +0 -1
- package/dist/components/ModalDialog/ModalDialog.js +96 -75
- package/dist/components/ModalDialog/ModalDialog.js.map +1 -1
- package/dist/components/ModalDialog/ModalDialog.stories.d.ts +1 -1
- package/dist/components/ModalDialog/ModalDialog.stories.js +36 -27
- package/dist/components/ModalDialog/ModalDialog.stories.js.map +1 -1
- package/dist/components/MultiSelect/MultiSelect.d.ts +0 -1
- package/dist/components/MultiSelect/MultiSelect.stories.d.ts +0 -1
- package/dist/components/MultiSelect/components/MultiSelectItem.d.ts +0 -1
- package/dist/components/OverlayCloseButton/OverlayCloseButton.d.ts +0 -1
- package/dist/components/OverlayCloseButton/OverlayCloseButton.stories.d.ts +0 -1
- package/dist/components/Periods/Periods.stories.d.ts +0 -1
- package/dist/components/ProgrammeCard/ProgrammeCard.d.ts +0 -1
- package/dist/components/ProgrammeCard/ProgrammeCard.stories.d.ts +0 -1
- package/dist/components/RadioButton/RadioButton.d.ts +0 -1
- package/dist/components/RadioButton/RadioButton.stories.d.ts +0 -1
- package/dist/components/Repeater/Repeater.d.ts +0 -1
- package/dist/components/Repeater/Repeater.stories.d.ts +0 -1
- package/dist/components/SectionNotification/SectionNotification.d.ts +0 -1
- package/dist/components/SectionNotification/SectionNotification.stories.d.ts +0 -1
- package/dist/components/SelectListbox/SelectListBox.stories.d.ts +0 -1
- package/dist/components/SelectListbox/SelectListBox.stories.js +42 -14
- package/dist/components/SelectListbox/SelectListBox.stories.js.map +1 -1
- package/dist/components/SelectListbox/SelectListbox.d.ts +0 -1
- package/dist/components/SelectListbox/SelectProvider.d.ts +0 -1
- package/dist/components/SelectListbox/components/SelectButton.d.ts +0 -1
- package/dist/components/SelectListbox/components/SelectContainer.d.ts +0 -1
- package/dist/components/SelectListbox/components/SelectOption.d.ts +0 -1
- package/dist/components/SelectListbox/components/SelectOptionBox.d.ts +0 -1
- package/dist/components/Spinner/Spinner.stories.d.ts +0 -1
- package/dist/components/StatusPill/StatusPill.stories.d.ts +0 -1
- package/dist/components/Tooltip/Tooltip.d.ts +0 -1
- package/dist/components/Tooltip/Tooltip.stories.d.ts +0 -1
- package/dist/components/storyComponents/Container/Container.d.ts +0 -1
- package/package.json +16 -16
|
@@ -1,6 +1,5 @@
|
|
|
1
1
|
import { Meta } from '@storybook/react';
|
|
2
2
|
import { IconButtonProps } from 'components/IconButton';
|
|
3
|
-
|
|
4
3
|
declare const _default: Meta<IconButtonProps>;
|
|
5
4
|
export default _default;
|
|
6
5
|
export declare const IconButtonExample: import('@storybook/csf').AnnotatedStoryFn<import('@storybook/react').ReactRenderer, IconButtonProps>;
|
|
@@ -1,6 +1,5 @@
|
|
|
1
1
|
import { Meta } from '@storybook/react';
|
|
2
2
|
import { InfoMessageProps } from './InfoMessage';
|
|
3
|
-
|
|
4
3
|
declare const _default: Meta<InfoMessageProps>;
|
|
5
4
|
export default _default;
|
|
6
5
|
export declare const InfoMessageExample: import('@storybook/csf').AnnotatedStoryFn<import('@storybook/react').ReactRenderer, InfoMessageProps>;
|
|
@@ -1,6 +1,5 @@
|
|
|
1
1
|
import { Meta } from '@storybook/react';
|
|
2
2
|
import { InputProps } from './Input';
|
|
3
|
-
|
|
4
3
|
declare const _default: Meta<InputProps>;
|
|
5
4
|
export default _default;
|
|
6
5
|
export declare const InputExample: import('@storybook/csf').AnnotatedStoryFn<import('@storybook/react').ReactRenderer, InputProps>;
|
|
@@ -1,6 +1,5 @@
|
|
|
1
1
|
import { Meta } from '@storybook/react';
|
|
2
2
|
import { InputFieldProps } from './InputField';
|
|
3
|
-
|
|
4
3
|
declare const _default: Meta<InputFieldProps>;
|
|
5
4
|
export default _default;
|
|
6
5
|
export declare const InputFieldExample: import('@storybook/csf').AnnotatedStoryFn<import('@storybook/react').ReactRenderer, InputFieldProps>;
|
|
@@ -1,6 +1,5 @@
|
|
|
1
1
|
import { Meta } from '@storybook/react';
|
|
2
2
|
import { LabelProps } from './Label';
|
|
3
|
-
|
|
4
3
|
declare const _default: Meta<LabelProps>;
|
|
5
4
|
export default _default;
|
|
6
5
|
export declare const LabelExample: import('@storybook/csf').AnnotatedStoryFn<import('@storybook/react').ReactRenderer, LabelProps>;
|
|
@@ -3,7 +3,6 @@ import { AriaButtonProps } from '@react-aria/button';
|
|
|
3
3
|
import { IconProps } from 'components/Icon';
|
|
4
4
|
import { RefObject } from 'react';
|
|
5
5
|
import { UIButtonVariant } from 'types/UserInterface';
|
|
6
|
-
|
|
7
6
|
export interface MenuButtonProps extends AriaButtonProps<'button'> {
|
|
8
7
|
buttonRef: RefObject<HTMLButtonElement>;
|
|
9
8
|
variant: UIButtonVariant;
|
|
@@ -1,6 +1,5 @@
|
|
|
1
1
|
import { Meta } from '@storybook/react';
|
|
2
2
|
import { MenuButtonProps } from './MenuButton';
|
|
3
|
-
|
|
4
3
|
declare const _default: Meta<MenuButtonProps>;
|
|
5
4
|
export default _default;
|
|
6
5
|
export declare const MenuButtonExample: import('@storybook/csf').AnnotatedStoryFn<import('@storybook/react').ReactRenderer, MenuButtonProps>;
|
|
@@ -1,6 +1,5 @@
|
|
|
1
1
|
import { NavLinkProps } from 'react-router-dom';
|
|
2
2
|
import { Meta } from '@storybook/react';
|
|
3
|
-
|
|
4
3
|
declare const _default: Meta<Omit<NavLinkProps, "style">>;
|
|
5
4
|
export default _default;
|
|
6
5
|
export declare const MenuLinkExample: import('@storybook/csf').AnnotatedStoryFn<import('@storybook/react').ReactRenderer, Omit<NavLinkProps, "style">>;
|
|
@@ -1,6 +1,5 @@
|
|
|
1
1
|
import { Meta } from '@storybook/react';
|
|
2
2
|
import { MetaDataListProps } from './MetaDataList';
|
|
3
|
-
|
|
4
3
|
declare const _default: Meta<MetaDataListProps>;
|
|
5
4
|
export default _default;
|
|
6
5
|
export declare const MetaDataListExample: import('@storybook/csf').AnnotatedStoryFn<import('@storybook/react').ReactRenderer, MetaDataListProps>;
|
|
@@ -1,98 +1,119 @@
|
|
|
1
|
-
import { jsx as
|
|
2
|
-
import { d as
|
|
3
|
-
import { c as
|
|
4
|
-
import { useRef as
|
|
5
|
-
import { Backdrop as
|
|
6
|
-
import { OverlayCloseButton as
|
|
7
|
-
import { Spinner as
|
|
1
|
+
import { jsx as l, Fragment as $, jsxs as c } from "react/jsx-runtime";
|
|
2
|
+
import { d as q, b as G, c as J, e as Q, f as W, g as X } from "../../useDialog-DZhIlo2a.js";
|
|
3
|
+
import { c as i } from "../../clsx-OuTLNxxd.js";
|
|
4
|
+
import { useRef as x, useState as v, useEffect as Y } from "react";
|
|
5
|
+
import { Backdrop as Z } from "../Backdrop/Backdrop.js";
|
|
6
|
+
import { OverlayCloseButton as oo } from "../OverlayCloseButton/OverlayCloseButton.js";
|
|
7
|
+
import { Spinner as ao } from "../Spinner/Spinner.js";
|
|
8
8
|
import '../../assets/ModalDialog.css';const o = {
|
|
9
|
-
"modal-dialog": "_modal-
|
|
10
|
-
"modal-dialog--padded": "_modal-dialog--
|
|
11
|
-
"modal-dialog__content": "_modal-
|
|
12
|
-
"modal-dialog__children": "_modal-
|
|
13
|
-
"modal-dialog__title": "_modal-
|
|
14
|
-
"modal-dialog--confirm": "_modal-dialog--
|
|
15
|
-
"modal-dialog__buttons": "_modal-
|
|
16
|
-
"modal-
|
|
17
|
-
"modal-
|
|
18
|
-
"modal-
|
|
19
|
-
"modal-dialog--
|
|
20
|
-
"modal-dialog--
|
|
9
|
+
"modal-dialog": "_modal-dialog_1w1ar_1",
|
|
10
|
+
"modal-dialog--padded": "_modal-dialog--padded_1w1ar_18",
|
|
11
|
+
"modal-dialog__content": "_modal-dialog__content_1w1ar_22",
|
|
12
|
+
"modal-dialog__children": "_modal-dialog__children_1w1ar_33",
|
|
13
|
+
"modal-dialog__title": "_modal-dialog__title_1w1ar_37",
|
|
14
|
+
"modal-dialog--confirm": "_modal-dialog--confirm_1w1ar_44",
|
|
15
|
+
"modal-dialog__buttons": "_modal-dialog__buttons_1w1ar_48",
|
|
16
|
+
"modal-dialog__buttons--border": "_modal-dialog__buttons--border_1w1ar_61",
|
|
17
|
+
"modal-dialog__buttons--shadow": "_modal-dialog__buttons--shadow_1w1ar_78",
|
|
18
|
+
"modal-dialog__close": "_modal-dialog__close_1w1ar_82",
|
|
19
|
+
"modal-dialog--slim": "_modal-dialog--slim_1w1ar_100",
|
|
20
|
+
"modal-dialog--wide": "_modal-dialog--wide_1w1ar_104",
|
|
21
|
+
"modal-dialog--content-with-buttons": "_modal-dialog--content-with-buttons_1w1ar_118"
|
|
21
22
|
};
|
|
22
|
-
function
|
|
23
|
+
function co(S) {
|
|
23
24
|
const {
|
|
24
|
-
buttons:
|
|
25
|
-
children:
|
|
26
|
-
isDismissable:
|
|
27
|
-
isKeyboardDismissDisabled:
|
|
28
|
-
isLoading:
|
|
29
|
-
spinnerAriaValueText:
|
|
30
|
-
closeButtonAriaValueText:
|
|
31
|
-
isOpen:
|
|
32
|
-
noValidate:
|
|
33
|
-
onClose:
|
|
34
|
-
onSubmit:
|
|
35
|
-
role:
|
|
36
|
-
title:
|
|
37
|
-
headerContent:
|
|
38
|
-
variant:
|
|
39
|
-
padded:
|
|
40
|
-
slim:
|
|
41
|
-
wide:
|
|
42
|
-
noButtonBorder:
|
|
43
|
-
} =
|
|
44
|
-
{ isDismissable:
|
|
45
|
-
|
|
25
|
+
buttons: t,
|
|
26
|
+
children: T,
|
|
27
|
+
isDismissable: m = !0,
|
|
28
|
+
isKeyboardDismissDisabled: B = !m,
|
|
29
|
+
isLoading: y,
|
|
30
|
+
spinnerAriaValueText: D = "Loading",
|
|
31
|
+
closeButtonAriaValueText: E = "Close",
|
|
32
|
+
isOpen: e,
|
|
33
|
+
noValidate: L = !1,
|
|
34
|
+
onClose: _,
|
|
35
|
+
onSubmit: N,
|
|
36
|
+
role: P = "dialog",
|
|
37
|
+
title: r,
|
|
38
|
+
headerContent: g,
|
|
39
|
+
variant: s = "dialog",
|
|
40
|
+
padded: f,
|
|
41
|
+
slim: C,
|
|
42
|
+
wide: H,
|
|
43
|
+
noButtonBorder: u = !1
|
|
44
|
+
} = S, n = x(null), p = x(null), [V, k] = v(!1), [z, A] = v(!1), { dialogProps: F, titleProps: I } = q({ role: P }, n), { modalProps: R } = G({ isDisabled: !e }), { overlayProps: j, underlayProps: K } = J(
|
|
45
|
+
{ isDismissable: m, isKeyboardDismissDisabled: B, isOpen: e, onClose: _ },
|
|
46
|
+
n
|
|
46
47
|
);
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
48
|
+
Q({ isDisabled: !e }), Y(() => {
|
|
49
|
+
const a = p.current;
|
|
50
|
+
function b() {
|
|
51
|
+
if (a) {
|
|
52
|
+
const h = a.scrollHeight, w = a.clientHeight, U = a.scrollTop;
|
|
53
|
+
k(h > w), A(U + w >= h);
|
|
54
|
+
}
|
|
55
|
+
}
|
|
56
|
+
function d() {
|
|
57
|
+
b();
|
|
58
|
+
}
|
|
59
|
+
a && (a.addEventListener("scroll", d), window.addEventListener("resize", d));
|
|
60
|
+
const O = setTimeout(() => {
|
|
61
|
+
b();
|
|
62
|
+
}, 0);
|
|
63
|
+
return () => {
|
|
64
|
+
a && a.removeEventListener("scroll", d), window.removeEventListener("resize", d), clearTimeout(O);
|
|
65
|
+
};
|
|
66
|
+
}, [e]);
|
|
67
|
+
function M(a) {
|
|
68
|
+
a.stopPropagation();
|
|
50
69
|
}
|
|
51
|
-
return
|
|
70
|
+
return e ? /* @__PURE__ */ l(W, { children: /* @__PURE__ */ l(Z, { ...K, children: y ? /* @__PURE__ */ l(ao, { ariaValueText: D }) : /* @__PURE__ */ l($, { children: /* @__PURE__ */ l(X, { autoFocus: !0, contain: !0, restoreFocus: !0, children: /* @__PURE__ */ c(
|
|
52
71
|
"div",
|
|
53
72
|
{
|
|
54
|
-
...
|
|
55
|
-
...
|
|
56
|
-
...
|
|
57
|
-
className:
|
|
58
|
-
[o["modal-dialog--confirm"]]:
|
|
59
|
-
[o["modal-dialog--padded"]]:
|
|
60
|
-
[o["modal-dialog--slim"]]:
|
|
61
|
-
[o["modal-dialog--wide"]]:
|
|
73
|
+
...F,
|
|
74
|
+
...R,
|
|
75
|
+
...j,
|
|
76
|
+
className: i(o["modal-dialog"], {
|
|
77
|
+
[o["modal-dialog--confirm"]]: s === "confirm",
|
|
78
|
+
[o["modal-dialog--padded"]]: f,
|
|
79
|
+
[o["modal-dialog--slim"]]: C,
|
|
80
|
+
[o["modal-dialog--wide"]]: H
|
|
62
81
|
}),
|
|
63
|
-
onKeyUp:
|
|
82
|
+
onKeyUp: M,
|
|
64
83
|
role: "presentation",
|
|
65
|
-
ref:
|
|
84
|
+
ref: n,
|
|
66
85
|
children: [
|
|
67
|
-
(
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
86
|
+
(r || g) && s === "dialog" && /* @__PURE__ */ c($, { children: [
|
|
87
|
+
r && /* @__PURE__ */ l("h1", { ...I, className: o["modal-dialog__title"], children: r }),
|
|
88
|
+
g,
|
|
89
|
+
s === "dialog" && /* @__PURE__ */ l("span", { className: o["modal-dialog__close"], children: /* @__PURE__ */ l(
|
|
90
|
+
oo,
|
|
72
91
|
{
|
|
73
|
-
"aria-label":
|
|
74
|
-
onClick:
|
|
75
|
-
paddedModal:
|
|
92
|
+
"aria-label": E,
|
|
93
|
+
onClick: _,
|
|
94
|
+
paddedModal: f
|
|
76
95
|
}
|
|
77
96
|
) })
|
|
78
97
|
] }),
|
|
79
|
-
/* @__PURE__ */
|
|
98
|
+
/* @__PURE__ */ c(
|
|
80
99
|
"form",
|
|
81
100
|
{
|
|
82
|
-
className:
|
|
83
|
-
[o["modal-dialog--content-with-buttons"]]:
|
|
101
|
+
className: i(o["modal-dialog__content"], {
|
|
102
|
+
[o["modal-dialog--content-with-buttons"]]: t
|
|
84
103
|
}),
|
|
85
|
-
onSubmit:
|
|
86
|
-
noValidate:
|
|
104
|
+
onSubmit: N,
|
|
105
|
+
noValidate: L,
|
|
106
|
+
ref: p,
|
|
87
107
|
children: [
|
|
88
|
-
/* @__PURE__ */
|
|
89
|
-
|
|
108
|
+
/* @__PURE__ */ l("div", { className: i({ [o["modal-dialog__children"]]: !u }), children: T }),
|
|
109
|
+
t && /* @__PURE__ */ l(
|
|
90
110
|
"div",
|
|
91
111
|
{
|
|
92
|
-
className:
|
|
93
|
-
[o["modal-
|
|
112
|
+
className: i(o["modal-dialog__buttons"], {
|
|
113
|
+
[o["modal-dialog__buttons--border"]]: !u,
|
|
114
|
+
[o["modal-dialog__buttons--shadow"]]: V && !z
|
|
94
115
|
}),
|
|
95
|
-
children:
|
|
116
|
+
children: t
|
|
96
117
|
}
|
|
97
118
|
)
|
|
98
119
|
]
|
|
@@ -103,6 +124,6 @@ function W(p) {
|
|
|
103
124
|
) }) }) }) }) : null;
|
|
104
125
|
}
|
|
105
126
|
export {
|
|
106
|
-
|
|
127
|
+
co as ModalDialog
|
|
107
128
|
};
|
|
108
129
|
//# sourceMappingURL=ModalDialog.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ModalDialog.js","sources":["../../../src/components/ModalDialog/ModalDialog.tsx"],"sourcesContent":["import { useDialog } from '@react-aria/dialog';\nimport { FocusScope } from '@react-aria/focus';\nimport { OverlayContainer, useModal, useOverlay, usePreventScroll } from '@react-aria/overlays';\nimport classNames from 'clsx';\nimport { useRef } from 'react';\n\nimport type { AriaDialogProps } from '@react-types/dialog';\nimport type { FormHTMLAttributes, KeyboardEvent, PropsWithChildren, ReactNode } from 'react';\n\nimport styles from './ModalDialog.module.css';\n\nimport { Backdrop } from 'components/Backdrop';\nimport { OverlayCloseButton } from 'components/OverlayCloseButton';\nimport { Spinner } from 'components/Spinner';\n\nexport interface ModalDialogProps {\n buttons?: ReactNode;\n isDismissable?: boolean;\n isKeyboardDismissDisabled?: boolean;\n isLoading?: boolean;\n spinnerAriaValueText?: string;\n closeButtonAriaValueText?: string;\n isOpen: boolean;\n noValidate?: boolean;\n onClose?(): void;\n onSubmit?: FormHTMLAttributes<HTMLFormElement>['onSubmit'];\n role?: AriaDialogProps['role'];\n title?: string;\n headerContent?: ReactNode;\n variant?: 'confirm' | 'dialog';\n padded?: boolean;\n slim?: boolean;\n wide?: boolean;\n noButtonBorder?: boolean;\n}\n\nexport function ModalDialog(props: PropsWithChildren<ModalDialogProps>) {\n const {\n buttons,\n children,\n isDismissable = true,\n isKeyboardDismissDisabled = !isDismissable,\n isLoading,\n spinnerAriaValueText = 'Loading',\n closeButtonAriaValueText = 'Close',\n isOpen,\n noValidate = false,\n onClose,\n onSubmit,\n role = 'dialog',\n title,\n headerContent,\n variant = 'dialog',\n padded,\n slim,\n wide,\n noButtonBorder = false,\n } = props;\n const ref = useRef<HTMLDivElement>(null);\n const { dialogProps, titleProps } = useDialog({ role }, ref);\n const { modalProps } = useModal({ isDisabled: !isOpen });\n const { overlayProps, underlayProps } = useOverlay(\n { isDismissable, isKeyboardDismissDisabled, isOpen, onClose },\n ref\n );\n\n usePreventScroll({ isDisabled: !isOpen });\n\n function onKeyUp(event: KeyboardEvent) {\n event.stopPropagation();\n }\n\n if (!isOpen) return null;\n\n return (\n <OverlayContainer>\n <Backdrop {...underlayProps}>\n {isLoading ? (\n <Spinner ariaValueText={spinnerAriaValueText} />\n ) : (\n <>\n {/* eslint-disable-next-line jsx-a11y/no-autofocus */}\n <FocusScope autoFocus contain restoreFocus>\n <div\n {...dialogProps}\n {...modalProps}\n {...overlayProps}\n className={classNames(styles['modal-dialog'], {\n [styles['modal-dialog--confirm']]: variant === 'confirm',\n [styles['modal-dialog--padded']]: padded,\n [styles['modal-dialog--slim']]: slim,\n [styles['modal-dialog--wide']]: wide,\n })}\n onKeyUp={onKeyUp}\n role=\"presentation\"\n ref={ref}\n >\n {(title || headerContent) && variant === 'dialog' && (\n <>\n {title && (\n <h1 {...titleProps} className={styles['modal-dialog__title']}>\n {title}\n </h1>\n )}\n {headerContent}\n {variant === 'dialog' && (\n <span className={styles['modal-dialog__close']}>\n <OverlayCloseButton\n aria-label={closeButtonAriaValueText}\n onClick={onClose}\n paddedModal={padded}\n />\n </span>\n )}\n </>\n )}\n <form\n className={classNames(styles['modal-dialog__content'], {\n [styles['modal-dialog--content-with-buttons']]: buttons,\n })}\n onSubmit={onSubmit}\n noValidate={noValidate}\n >\n <div className={classNames({ [styles['modal-dialog__children']]: !noButtonBorder })}>{children}</div>\n {buttons && (\n <div\n className={classNames(styles['modal-dialog__buttons'], {\n [styles['modal-dialog--buttons-border']]: !noButtonBorder,\n })}\n >\n {buttons}\n </div>\n )}\n </form>\n </div>\n </FocusScope>\n </>\n )}\n </Backdrop>\n </OverlayContainer>\n );\n}\n"],"names":["ModalDialog","props","buttons","children","isDismissable","isKeyboardDismissDisabled","isLoading","spinnerAriaValueText","closeButtonAriaValueText","isOpen","noValidate","onClose","onSubmit","role","title","headerContent","variant","padded","slim","wide","noButtonBorder","ref","useRef","dialogProps","titleProps","useDialog","modalProps","useModal","overlayProps","underlayProps","useOverlay","usePreventScroll","onKeyUp","event","jsx","OverlayContainer","Backdrop","Spinner","Fragment","FocusScope","jsxs","classNames","styles","OverlayCloseButton"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"ModalDialog.js","sources":["../../../src/components/ModalDialog/ModalDialog.tsx"],"sourcesContent":["import { useDialog } from '@react-aria/dialog';\nimport { FocusScope } from '@react-aria/focus';\nimport { OverlayContainer, useModal, useOverlay, usePreventScroll } from '@react-aria/overlays';\nimport classNames from 'clsx';\nimport { useEffect, useRef, useState } from 'react';\n\nimport type { AriaDialogProps } from '@react-types/dialog';\nimport type { FormHTMLAttributes, KeyboardEvent, PropsWithChildren, ReactNode } from 'react';\n\nimport styles from './ModalDialog.module.css';\n\nimport { Backdrop } from 'components/Backdrop';\nimport { OverlayCloseButton } from 'components/OverlayCloseButton';\nimport { Spinner } from 'components/Spinner';\n\nexport interface ModalDialogProps {\n buttons?: ReactNode;\n isDismissable?: boolean;\n isKeyboardDismissDisabled?: boolean;\n isLoading?: boolean;\n spinnerAriaValueText?: string;\n closeButtonAriaValueText?: string;\n isOpen: boolean;\n noValidate?: boolean;\n onClose?(): void;\n onSubmit?: FormHTMLAttributes<HTMLFormElement>['onSubmit'];\n role?: AriaDialogProps['role'];\n title?: string;\n headerContent?: ReactNode;\n variant?: 'confirm' | 'dialog';\n padded?: boolean;\n slim?: boolean;\n wide?: boolean;\n noButtonBorder?: boolean;\n}\n\nexport function ModalDialog(props: PropsWithChildren<ModalDialogProps>) {\n const {\n buttons,\n children,\n isDismissable = true,\n isKeyboardDismissDisabled = !isDismissable,\n isLoading,\n spinnerAriaValueText = 'Loading',\n closeButtonAriaValueText = 'Close',\n isOpen,\n noValidate = false,\n onClose,\n onSubmit,\n role = 'dialog',\n title,\n headerContent,\n variant = 'dialog',\n padded,\n slim,\n wide,\n noButtonBorder = false,\n } = props;\n\n const ref = useRef<HTMLDivElement>(null);\n const formRef = useRef<HTMLFormElement>(null);\n const [isScrollable, setIsScrollable] = useState(false);\n const [isScrolledToBottom, setIsScrolledToBottom] = useState(false);\n\n const { dialogProps, titleProps } = useDialog({ role }, ref);\n const { modalProps } = useModal({ isDisabled: !isOpen });\n const { overlayProps, underlayProps } = useOverlay(\n { isDismissable, isKeyboardDismissDisabled, isOpen, onClose },\n ref\n );\n\n usePreventScroll({ isDisabled: !isOpen });\n\n useEffect(() => {\n const formElement = formRef.current;\n\n function checkScrollable() {\n if (formElement) {\n const scrollHeight = formElement.scrollHeight;\n const clientHeight = formElement.clientHeight;\n const scrollTop = formElement.scrollTop;\n\n setIsScrollable(scrollHeight > clientHeight);\n setIsScrolledToBottom(scrollTop + clientHeight >= scrollHeight);\n }\n }\n\n function handleScrollAndResize() {\n checkScrollable();\n }\n\n if (formElement) {\n formElement.addEventListener('scroll', handleScrollAndResize);\n window.addEventListener('resize', handleScrollAndResize);\n }\n\n const timeoutId = setTimeout(() => {\n checkScrollable();\n }, 0);\n\n return () => {\n if (formElement) {\n formElement.removeEventListener('scroll', handleScrollAndResize);\n }\n window.removeEventListener('resize', handleScrollAndResize);\n clearTimeout(timeoutId);\n };\n }, [isOpen]);\n\n function onKeyUp(event: KeyboardEvent) {\n event.stopPropagation();\n }\n\n if (!isOpen) return null;\n\n return (\n <OverlayContainer>\n <Backdrop {...underlayProps}>\n {isLoading ? (\n <Spinner ariaValueText={spinnerAriaValueText} />\n ) : (\n <>\n {/* eslint-disable-next-line jsx-a11y/no-autofocus */}\n <FocusScope autoFocus contain restoreFocus>\n <div\n {...dialogProps}\n {...modalProps}\n {...overlayProps}\n className={classNames(styles['modal-dialog'], {\n [styles['modal-dialog--confirm']]: variant === 'confirm',\n [styles['modal-dialog--padded']]: padded,\n [styles['modal-dialog--slim']]: slim,\n [styles['modal-dialog--wide']]: wide,\n })}\n onKeyUp={onKeyUp}\n role=\"presentation\"\n ref={ref}\n >\n {(title || headerContent) && variant === 'dialog' && (\n <>\n {title && (\n <h1 {...titleProps} className={styles['modal-dialog__title']}>\n {title}\n </h1>\n )}\n {headerContent}\n {variant === 'dialog' && (\n <span className={styles['modal-dialog__close']}>\n <OverlayCloseButton\n aria-label={closeButtonAriaValueText}\n onClick={onClose}\n paddedModal={padded}\n />\n </span>\n )}\n </>\n )}\n <form\n className={classNames(styles['modal-dialog__content'], {\n [styles['modal-dialog--content-with-buttons']]: buttons,\n })}\n onSubmit={onSubmit}\n noValidate={noValidate}\n ref={formRef}\n >\n <div className={classNames({ [styles['modal-dialog__children']]: !noButtonBorder })}>{children}</div>\n {buttons && (\n <div\n className={classNames(styles['modal-dialog__buttons'], {\n [styles['modal-dialog__buttons--border']]: !noButtonBorder,\n [styles['modal-dialog__buttons--shadow']]: isScrollable && !isScrolledToBottom,\n })}\n >\n {buttons}\n </div>\n )}\n </form>\n </div>\n </FocusScope>\n </>\n )}\n </Backdrop>\n </OverlayContainer>\n );\n}\n"],"names":["ModalDialog","props","buttons","children","isDismissable","isKeyboardDismissDisabled","isLoading","spinnerAriaValueText","closeButtonAriaValueText","isOpen","noValidate","onClose","onSubmit","role","title","headerContent","variant","padded","slim","wide","noButtonBorder","ref","useRef","formRef","isScrollable","setIsScrollable","useState","isScrolledToBottom","setIsScrolledToBottom","dialogProps","titleProps","useDialog","modalProps","useModal","overlayProps","underlayProps","useOverlay","usePreventScroll","useEffect","formElement","checkScrollable","scrollHeight","clientHeight","scrollTop","handleScrollAndResize","timeoutId","onKeyUp","event","jsx","OverlayContainer","Backdrop","Spinner","Fragment","FocusScope","jsxs","classNames","styles","OverlayCloseButton"],"mappings":"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"}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { Meta } from '@storybook/react';
|
|
2
2
|
import { ModalDialogProps } from './ModalDialog';
|
|
3
|
-
|
|
4
3
|
declare const _default: Meta<ModalDialogProps>;
|
|
5
4
|
export default _default;
|
|
6
5
|
export declare const ModalDialogExample: import('@storybook/csf').AnnotatedStoryFn<import('@storybook/react').ReactRenderer, ModalDialogProps>;
|
|
7
6
|
export declare const Loading: import('@storybook/csf').AnnotatedStoryFn<import('@storybook/react').ReactRenderer, ModalDialogProps>;
|
|
7
|
+
export declare const WithLongContentAndNoBorder: import('@storybook/csf').AnnotatedStoryFn<import('@storybook/react').ReactRenderer, ModalDialogProps>;
|
|
@@ -1,15 +1,15 @@
|
|
|
1
|
-
import { jsxs as
|
|
2
|
-
import { $ as
|
|
3
|
-
import { f as
|
|
4
|
-
import { ModalDialog as
|
|
5
|
-
import { Button as
|
|
6
|
-
import { ButtonGroup as
|
|
7
|
-
import { FormField as
|
|
8
|
-
import { InputField as
|
|
1
|
+
import { jsxs as a, jsx as e } from "react/jsx-runtime";
|
|
2
|
+
import { $ as o } from "../../useDialog-DZhIlo2a.js";
|
|
3
|
+
import { f as i } from "../../index-C7tAT8j7.js";
|
|
4
|
+
import { ModalDialog as r } from "./ModalDialog.js";
|
|
5
|
+
import { Button as l } from "../Button/Button.js";
|
|
6
|
+
import { ButtonGroup as m } from "../ButtonGroup/ButtonGroup.js";
|
|
7
|
+
import { FormField as n } from "../FormField/FormField.js";
|
|
8
|
+
import { InputField as d } from "../InputField/InputField.js";
|
|
9
9
|
import { Label as c } from "../Label/Label.js";
|
|
10
|
-
const
|
|
10
|
+
const S = {
|
|
11
11
|
title: "Molecules/ModalDialog",
|
|
12
|
-
component:
|
|
12
|
+
component: r,
|
|
13
13
|
argTypes: {
|
|
14
14
|
isOpen: {
|
|
15
15
|
table: {
|
|
@@ -39,10 +39,10 @@ const v = {
|
|
|
39
39
|
}
|
|
40
40
|
}
|
|
41
41
|
}
|
|
42
|
-
},
|
|
42
|
+
}, u = (t) => /* @__PURE__ */ e(o, { children: /* @__PURE__ */ e(r, { ...t, children: /* @__PURE__ */ a(n, { outerSpace: !0, children: [
|
|
43
43
|
/* @__PURE__ */ e(c, { htmlFor: "text-field", children: "Example Text Field" }),
|
|
44
|
-
/* @__PURE__ */ e(
|
|
45
|
-
] }) }) }),
|
|
44
|
+
/* @__PURE__ */ e(d, { id: "text-field" })
|
|
45
|
+
] }) }) }), s = {
|
|
46
46
|
padded: !1,
|
|
47
47
|
slim: !1,
|
|
48
48
|
wide: !1,
|
|
@@ -52,26 +52,35 @@ const v = {
|
|
|
52
52
|
title: "Example Title",
|
|
53
53
|
closeButtonAriaValueText: "Close",
|
|
54
54
|
noValidate: !1,
|
|
55
|
-
onSubmit:
|
|
56
|
-
onClose:
|
|
57
|
-
buttons: /* @__PURE__ */
|
|
58
|
-
/* @__PURE__ */ e(
|
|
59
|
-
/* @__PURE__ */ e(
|
|
55
|
+
onSubmit: i(),
|
|
56
|
+
onClose: i(),
|
|
57
|
+
buttons: /* @__PURE__ */ a(m, { reversed: !0, children: [
|
|
58
|
+
/* @__PURE__ */ e(l, { variant: "primary", onClick: i(), children: "OK" }),
|
|
59
|
+
/* @__PURE__ */ e(l, { variant: "secondary", onClick: i(), children: "Cancel" })
|
|
60
60
|
] }),
|
|
61
61
|
isOpen: !0
|
|
62
|
-
},
|
|
63
|
-
|
|
64
|
-
...
|
|
62
|
+
}, p = u.bind({});
|
|
63
|
+
p.args = {
|
|
64
|
+
...s
|
|
65
65
|
};
|
|
66
|
-
const
|
|
67
|
-
|
|
68
|
-
...
|
|
66
|
+
const b = u.bind({});
|
|
67
|
+
b.args = {
|
|
68
|
+
...s,
|
|
69
69
|
isLoading: !0,
|
|
70
70
|
spinnerAriaValueText: "Loading"
|
|
71
71
|
};
|
|
72
|
+
const f = (t) => /* @__PURE__ */ e(o, { children: /* @__PURE__ */ e(r, { ...t, children: /* @__PURE__ */ a(n, { outerSpace: !0, children: [
|
|
73
|
+
/* @__PURE__ */ e("div", { children: "Lorem ipsum dolor sit amet, consectetur adipiscing elit. Ut ac dui et nibh eleifend ultricies a id nulla. Pellentesque eleifend sem a tellus dictum tempus. Proin non leo id risus placerat vulputate at ac erat. Ut fringilla imperdiet sollicitudin. Vestibulum ante ipsum primis in faucibus orci luctus et ultrices posuere cubilia curae; Cras molestie ante ac magna ornare rhoncus non at quam. Mauris elementum luctus euismod. Pellentesque molestie malesuada purus, sed egestas lacus interdum sit amet. Morbi blandit lacus sit amet dictum pulvinar. Ut semper nunc ac enim imperdiet, non interdum diam gravida. In nunc tortor, mollis ac molestie dignissim, elementum sed quam. Suspendisse mollis venenatis libero, pellentesque vestibulum elit consequat et. Aliquam fringilla tellus id libero tempus, sit amet suscipit augue tristique. Quisque cursus neque vel justo tristique, eget semper turpis elementum. Etiam venenatis mattis sapien ac mattis. Mauris vitae ultrices erat." }),
|
|
74
|
+
/* @__PURE__ */ e("div", { children: "Aliquam facilisis massa sed justo rhoncus bibendum. Sed lobortis urna orci, vitae porta leo placerat nec. Nam porta porttitor ornare. Suspendisse vehicula nunc nec egestas finibus. Aliquam non luctus risus. Phasellus ac diam tincidunt, bibendum sem eget, sollicitudin neque. Curabitur mauris risus, feugiat ac euismod non, vulputate ac justo. Curabitur pretium vehicula augue, blandit porta odio rutrum sit amet. Proin semper enim ut sapien tempor, a ornare ipsum faucibus." })
|
|
75
|
+
] }) }) }), g = f.bind({});
|
|
76
|
+
g.args = {
|
|
77
|
+
...s,
|
|
78
|
+
noButtonBorder: !0
|
|
79
|
+
};
|
|
72
80
|
export {
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
81
|
+
b as Loading,
|
|
82
|
+
p as ModalDialogExample,
|
|
83
|
+
g as WithLongContentAndNoBorder,
|
|
84
|
+
S as default
|
|
76
85
|
};
|
|
77
86
|
//# sourceMappingURL=ModalDialog.stories.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ModalDialog.stories.js","sources":["../../../src/components/ModalDialog/ModalDialog.stories.tsx"],"sourcesContent":["import { ModalProvider } from '@react-aria/overlays';\nimport { fn } from '@storybook/test';\n\nimport type { Meta, StoryFn } from '@storybook/react';\nimport type { ModalDialogProps } from './ModalDialog';\n\nimport { ModalDialog } from './ModalDialog';\n\nimport { Button } from 'components/Button';\nimport { ButtonGroup } from 'components/ButtonGroup';\nimport { FormField } from 'components/FormField';\nimport { InputField } from 'components/InputField';\nimport { Label } from 'components/Label';\n\n// eslint-disable-next-line import/no-default-export\nexport default {\n title: 'Molecules/ModalDialog',\n component: ModalDialog,\n argTypes: {\n isOpen: {\n table: {\n disable: true,\n },\n },\n noValidate: {\n control: 'boolean',\n },\n role: {\n control: 'radio',\n options: ['dialog', 'alertdialog'],\n },\n onSubmit: {\n table: {\n disable: true,\n },\n },\n onClose: {\n table: {\n disable: true,\n },\n },\n buttons: {\n table: {\n disable: true,\n },\n },\n },\n} as Meta<ModalDialogProps>;\n\nconst Template: StoryFn<ModalDialogProps> = (args) => (\n <ModalProvider>\n <ModalDialog {...args}>\n <FormField outerSpace>\n <Label htmlFor=\"text-field\">Example Text Field</Label>\n <InputField id=\"text-field\" />\n </FormField>\n </ModalDialog>\n </ModalProvider>\n);\n\nconst defaultArgs: Partial<ModalDialogProps> = {\n padded: false,\n slim: false,\n wide: false,\n noButtonBorder: false,\n variant: 'dialog',\n role: 'dialog',\n title: 'Example Title',\n closeButtonAriaValueText: 'Close',\n noValidate: false,\n onSubmit: fn(),\n onClose: fn(),\n buttons: (\n <ButtonGroup reversed>\n <Button variant=\"primary\" onClick={fn()}>\n OK\n </Button>\n <Button variant=\"secondary\" onClick={fn()}>\n Cancel\n </Button>\n </ButtonGroup>\n ),\n isOpen: true,\n};\n\nexport const ModalDialogExample = Template.bind({});\nModalDialogExample.args = {\n ...defaultArgs,\n};\n\nexport const Loading = Template.bind({});\nLoading.args = {\n ...defaultArgs,\n isLoading: true,\n spinnerAriaValueText: 'Loading',\n};\n"],"names":["ModalDialog_stories","ModalDialog","Template","args","jsx","ModalProvider","jsxs","FormField","Label","InputField","defaultArgs","fn","ButtonGroup","Button","ModalDialogExample","Loading"],"mappings":";;;;;;;;;AAeA,MAAeA,IAAA;AAAA,EACb,OAAO;AAAA,EACP,WAAWC;AAAA,EACX,UAAU;AAAA,IACR,QAAQ;AAAA,MACN,OAAO;AAAA,QACL,SAAS;AAAA,MACX;AAAA,IACF;AAAA,IACA,YAAY;AAAA,MACV,SAAS;AAAA,IACX;AAAA,IACA,MAAM;AAAA,MACJ,SAAS;AAAA,MACT,SAAS,CAAC,UAAU,aAAa;AAAA,IACnC;AAAA,IACA,UAAU;AAAA,MACR,OAAO;AAAA,QACL,SAAS;AAAA,MACX;AAAA,IACF;AAAA,IACA,SAAS;AAAA,MACP,OAAO;AAAA,QACL,SAAS;AAAA,MACX;AAAA,IACF;AAAA,IACA,SAAS;AAAA,MACP,OAAO;AAAA,QACL,SAAS;AAAA,MACX;AAAA,IACF;AAAA,EACF;AACF,GAEMC,IAAsC,CAACC,MAC3C,gBAAAC,EAACC,GACC,EAAA,UAAA,gBAAAD,EAACH,GAAa,EAAA,GAAGE,GACf,UAAA,gBAAAG,EAACC,GAAU,EAAA,YAAU,IACnB,UAAA;AAAA,EAAC,gBAAAH,EAAAI,GAAA,EAAM,SAAQ,cAAa,UAAkB,sBAAA;AAAA,EAC9C,gBAAAJ,EAACK,GAAW,EAAA,IAAG,aAAa,CAAA;AAAA,GAC9B,GACF,EACF,CAAA,GAGIC,IAAyC;AAAA,EAC7C,QAAQ;AAAA,EACR,MAAM;AAAA,EACN,MAAM;AAAA,EACN,gBAAgB;AAAA,EAChB,SAAS;AAAA,EACT,MAAM;AAAA,EACN,OAAO;AAAA,EACP,0BAA0B;AAAA,EAC1B,YAAY;AAAA,EACZ,UAAUC,EAAG;AAAA,EACb,SAASA,EAAG;AAAA,EACZ,SACE,gBAAAL,EAACM,GAAY,EAAA,UAAQ,IACnB,UAAA;AAAA,IAAA,gBAAAR,EAACS,KAAO,SAAQ,WAAU,SAASF,KAAM,UAEzC,MAAA;AAAA,sBACCE,GAAO,EAAA,SAAQ,aAAY,SAASF,KAAM,UAE3C,UAAA;AAAA,EAAA,GACF;AAAA,EAEF,QAAQ;AACV,GAEaG,IAAqBZ,EAAS,KAAK,EAAE;AAClDY,EAAmB,OAAO;AAAA,EACxB,GAAGJ;AACL;AAEO,MAAMK,IAAUb,EAAS,KAAK,EAAE;AACvCa,EAAQ,OAAO;AAAA,EACb,GAAGL;AAAA,EACH,WAAW;AAAA,EACX,sBAAsB;AACxB;"}
|
|
1
|
+
{"version":3,"file":"ModalDialog.stories.js","sources":["../../../src/components/ModalDialog/ModalDialog.stories.tsx"],"sourcesContent":["import { ModalProvider } from '@react-aria/overlays';\nimport { fn } from '@storybook/test';\n\nimport type { Meta, StoryFn } from '@storybook/react';\nimport type { ModalDialogProps } from './ModalDialog';\n\nimport { ModalDialog } from './ModalDialog';\n\nimport { Button } from 'components/Button';\nimport { ButtonGroup } from 'components/ButtonGroup';\nimport { FormField } from 'components/FormField';\nimport { InputField } from 'components/InputField';\nimport { Label } from 'components/Label';\n\n// eslint-disable-next-line import/no-default-export\nexport default {\n title: 'Molecules/ModalDialog',\n component: ModalDialog,\n argTypes: {\n isOpen: {\n table: {\n disable: true,\n },\n },\n noValidate: {\n control: 'boolean',\n },\n role: {\n control: 'radio',\n options: ['dialog', 'alertdialog'],\n },\n onSubmit: {\n table: {\n disable: true,\n },\n },\n onClose: {\n table: {\n disable: true,\n },\n },\n buttons: {\n table: {\n disable: true,\n },\n },\n },\n} as Meta<ModalDialogProps>;\n\nconst Template: StoryFn<ModalDialogProps> = (args: ModalDialogProps) => (\n <ModalProvider>\n <ModalDialog {...args}>\n <FormField outerSpace>\n <Label htmlFor=\"text-field\">Example Text Field</Label>\n <InputField id=\"text-field\" />\n </FormField>\n </ModalDialog>\n </ModalProvider>\n);\n\nconst defaultArgs: Partial<ModalDialogProps> = {\n padded: false,\n slim: false,\n wide: false,\n noButtonBorder: false,\n variant: 'dialog',\n role: 'dialog',\n title: 'Example Title',\n closeButtonAriaValueText: 'Close',\n noValidate: false,\n onSubmit: fn(),\n onClose: fn(),\n buttons: (\n <ButtonGroup reversed>\n <Button variant=\"primary\" onClick={fn()}>\n OK\n </Button>\n <Button variant=\"secondary\" onClick={fn()}>\n Cancel\n </Button>\n </ButtonGroup>\n ),\n isOpen: true,\n};\n\nexport const ModalDialogExample = Template.bind({});\nModalDialogExample.args = {\n ...defaultArgs,\n};\n\nexport const Loading = Template.bind({});\nLoading.args = {\n ...defaultArgs,\n isLoading: true,\n spinnerAriaValueText: 'Loading',\n};\n\nconst LongContentTemplate: StoryFn<ModalDialogProps> = (args: ModalDialogProps) => (\n <ModalProvider>\n <ModalDialog {...args}>\n <FormField outerSpace>\n <div>\n Lorem ipsum dolor sit amet, consectetur adipiscing elit. Ut ac dui et nibh eleifend ultricies a id nulla.\n Pellentesque eleifend sem a tellus dictum tempus. Proin non leo id risus placerat vulputate at ac erat. Ut\n fringilla imperdiet sollicitudin. Vestibulum ante ipsum primis in faucibus orci luctus et ultrices posuere\n cubilia curae; Cras molestie ante ac magna ornare rhoncus non at quam. Mauris elementum luctus euismod.\n Pellentesque molestie malesuada purus, sed egestas lacus interdum sit amet. Morbi blandit lacus sit amet\n dictum pulvinar. Ut semper nunc ac enim imperdiet, non interdum diam gravida. In nunc tortor, mollis ac\n molestie dignissim, elementum sed quam. Suspendisse mollis venenatis libero, pellentesque vestibulum elit\n consequat et. Aliquam fringilla tellus id libero tempus, sit amet suscipit augue tristique. Quisque cursus\n neque vel justo tristique, eget semper turpis elementum. Etiam venenatis mattis sapien ac mattis. Mauris vitae\n ultrices erat.\n </div>\n <div>\n Aliquam facilisis massa sed justo rhoncus bibendum. Sed lobortis urna orci, vitae porta leo placerat nec. Nam\n porta porttitor ornare. Suspendisse vehicula nunc nec egestas finibus. Aliquam non luctus risus. Phasellus ac\n diam tincidunt, bibendum sem eget, sollicitudin neque. Curabitur mauris risus, feugiat ac euismod non,\n vulputate ac justo. Curabitur pretium vehicula augue, blandit porta odio rutrum sit amet. Proin semper enim ut\n sapien tempor, a ornare ipsum faucibus.\n </div>\n </FormField>\n </ModalDialog>\n </ModalProvider>\n);\n\nexport const WithLongContentAndNoBorder = LongContentTemplate.bind({});\nWithLongContentAndNoBorder.args = {\n ...defaultArgs,\n noButtonBorder: true,\n};\n"],"names":["ModalDialog_stories","ModalDialog","Template","args","jsx","ModalProvider","jsxs","FormField","Label","InputField","defaultArgs","fn","ButtonGroup","Button","ModalDialogExample","Loading","LongContentTemplate","WithLongContentAndNoBorder"],"mappings":";;;;;;;;;AAeA,MAAeA,IAAA;AAAA,EACb,OAAO;AAAA,EACP,WAAWC;AAAA,EACX,UAAU;AAAA,IACR,QAAQ;AAAA,MACN,OAAO;AAAA,QACL,SAAS;AAAA,MACX;AAAA,IACF;AAAA,IACA,YAAY;AAAA,MACV,SAAS;AAAA,IACX;AAAA,IACA,MAAM;AAAA,MACJ,SAAS;AAAA,MACT,SAAS,CAAC,UAAU,aAAa;AAAA,IACnC;AAAA,IACA,UAAU;AAAA,MACR,OAAO;AAAA,QACL,SAAS;AAAA,MACX;AAAA,IACF;AAAA,IACA,SAAS;AAAA,MACP,OAAO;AAAA,QACL,SAAS;AAAA,MACX;AAAA,IACF;AAAA,IACA,SAAS;AAAA,MACP,OAAO;AAAA,QACL,SAAS;AAAA,MACX;AAAA,IACF;AAAA,EACF;AACF,GAEMC,IAAsC,CAACC,MAC3C,gBAAAC,EAACC,GACC,EAAA,UAAA,gBAAAD,EAACH,GAAa,EAAA,GAAGE,GACf,UAAA,gBAAAG,EAACC,GAAU,EAAA,YAAU,IACnB,UAAA;AAAA,EAAC,gBAAAH,EAAAI,GAAA,EAAM,SAAQ,cAAa,UAAkB,sBAAA;AAAA,EAC9C,gBAAAJ,EAACK,GAAW,EAAA,IAAG,aAAa,CAAA;AAAA,GAC9B,GACF,EACF,CAAA,GAGIC,IAAyC;AAAA,EAC7C,QAAQ;AAAA,EACR,MAAM;AAAA,EACN,MAAM;AAAA,EACN,gBAAgB;AAAA,EAChB,SAAS;AAAA,EACT,MAAM;AAAA,EACN,OAAO;AAAA,EACP,0BAA0B;AAAA,EAC1B,YAAY;AAAA,EACZ,UAAUC,EAAG;AAAA,EACb,SAASA,EAAG;AAAA,EACZ,SACE,gBAAAL,EAACM,GAAY,EAAA,UAAQ,IACnB,UAAA;AAAA,IAAA,gBAAAR,EAACS,KAAO,SAAQ,WAAU,SAASF,KAAM,UAEzC,MAAA;AAAA,sBACCE,GAAO,EAAA,SAAQ,aAAY,SAASF,KAAM,UAE3C,UAAA;AAAA,EAAA,GACF;AAAA,EAEF,QAAQ;AACV,GAEaG,IAAqBZ,EAAS,KAAK,EAAE;AAClDY,EAAmB,OAAO;AAAA,EACxB,GAAGJ;AACL;AAEO,MAAMK,IAAUb,EAAS,KAAK,EAAE;AACvCa,EAAQ,OAAO;AAAA,EACb,GAAGL;AAAA,EACH,WAAW;AAAA,EACX,sBAAsB;AACxB;AAEA,MAAMM,IAAiD,CAACb,MACtD,gBAAAC,EAACC,GACC,EAAA,UAAA,gBAAAD,EAACH,GAAa,EAAA,GAAGE,GACf,UAAA,gBAAAG,EAACC,GAAU,EAAA,YAAU,IACnB,UAAA;AAAA,EAAA,gBAAAH,EAAC,SAAI,UAWL,88BAAA,CAAA;AAAA,EACA,gBAAAA,EAAC,SAAI,UAML,4dAAA,CAAA;AAAA,GACF,GACF,EACF,CAAA,GAGWa,IAA6BD,EAAoB,KAAK,EAAE;AACrEC,EAA2B,OAAO;AAAA,EAChC,GAAGP;AAAA,EACH,gBAAgB;AAClB;"}
|
|
@@ -1,7 +1,6 @@
|
|
|
1
1
|
import { PropsWithChildren, ReactNode } from 'react';
|
|
2
2
|
import { MultiSelectItem } from 'components/MultiSelect/components/MultiSelectItem';
|
|
3
3
|
import { MultiSelectHeader } from 'components/MultiSelect/components/MultiSelectHeader';
|
|
4
|
-
|
|
5
4
|
export interface MultiSelectProps {
|
|
6
5
|
scrollable?: boolean;
|
|
7
6
|
noBorder?: boolean;
|
|
@@ -1,7 +1,6 @@
|
|
|
1
1
|
import { PropsWithChildren } from 'react';
|
|
2
2
|
import { Meta } from '@storybook/react';
|
|
3
3
|
import { MultiSelectProps } from './MultiSelect';
|
|
4
|
-
|
|
5
4
|
declare const _default: Meta<PropsWithChildren<MultiSelectProps>>;
|
|
6
5
|
export default _default;
|
|
7
6
|
export declare const MultiSelectExample: import('@storybook/csf').AnnotatedStoryFn<import('@storybook/react').ReactRenderer, PropsWithChildren<MultiSelectProps>>;
|
|
@@ -1,6 +1,5 @@
|
|
|
1
1
|
import { Meta } from '@storybook/react';
|
|
2
2
|
import { OverlayCloseButtonProps } from './OverlayCloseButton';
|
|
3
|
-
|
|
4
3
|
declare const _default: Meta<OverlayCloseButtonProps>;
|
|
5
4
|
export default _default;
|
|
6
5
|
export declare const OverlayCloseButtonExample: import('@storybook/csf').AnnotatedStoryFn<import('@storybook/react').ReactRenderer, OverlayCloseButtonProps>;
|
|
@@ -1,6 +1,5 @@
|
|
|
1
1
|
import { Meta } from '@storybook/react';
|
|
2
2
|
import { PeriodsProps } from './Periods';
|
|
3
|
-
|
|
4
3
|
declare const _default: Meta<PeriodsProps>;
|
|
5
4
|
export default _default;
|
|
6
5
|
export declare const PeriodsExample: import('@storybook/csf').AnnotatedStoryFn<import('@storybook/react').ReactRenderer, PeriodsProps>;
|
|
@@ -1,6 +1,5 @@
|
|
|
1
1
|
import { Meta } from '@storybook/react';
|
|
2
2
|
import { ProgrammeCardProps } from './ProgrammeCard';
|
|
3
|
-
|
|
4
3
|
declare const _default: Meta<ProgrammeCardProps>;
|
|
5
4
|
export default _default;
|
|
6
5
|
export declare const ProgrammeCardExample: import('@storybook/csf').AnnotatedStoryFn<import('@storybook/react').ReactRenderer, ProgrammeCardProps>;
|
|
@@ -1,6 +1,5 @@
|
|
|
1
1
|
import { Meta } from '@storybook/react';
|
|
2
2
|
import { RadioButtonProps } from './RadioButton';
|
|
3
|
-
|
|
4
3
|
declare const _default: Meta<RadioButtonProps>;
|
|
5
4
|
export default _default;
|
|
6
5
|
export declare const RadioButtonExample: import('@storybook/csf').AnnotatedStoryFn<import('@storybook/react').ReactRenderer, RadioButtonProps>;
|
|
@@ -1,7 +1,6 @@
|
|
|
1
1
|
import { PropsWithChildren } from 'react';
|
|
2
2
|
import { Meta } from '@storybook/react';
|
|
3
3
|
import { RepeaterProps } from './Repeater';
|
|
4
|
-
|
|
5
4
|
declare const _default: Meta<PropsWithChildren<RepeaterProps>>;
|
|
6
5
|
export default _default;
|
|
7
6
|
export declare const RepeaterExample: import('@storybook/csf').AnnotatedStoryFn<import('@storybook/react').ReactRenderer, PropsWithChildren<RepeaterProps>>;
|