@activecollab/components 2.0.434 → 2.0.436

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.
Files changed (92) hide show
  1. package/dist/cjs/components/ConfirmDialog/ConfirmDialog.js +6 -5
  2. package/dist/cjs/components/ConfirmDialog/ConfirmDialog.js.map +1 -1
  3. package/dist/cjs/components/Dialog/Dialog.js +65 -43
  4. package/dist/cjs/components/Dialog/Dialog.js.map +1 -1
  5. package/dist/cjs/components/Dialog/DialogActions.js +13 -5
  6. package/dist/cjs/components/Dialog/DialogActions.js.map +1 -1
  7. package/dist/cjs/components/Dialog/DialogContent.js +4 -5
  8. package/dist/cjs/components/Dialog/DialogContent.js.map +1 -1
  9. package/dist/cjs/components/Dialog/DialogContext.js +14 -7
  10. package/dist/cjs/components/Dialog/DialogContext.js.map +1 -1
  11. package/dist/cjs/components/Dialog/DialogTitle.js +19 -5
  12. package/dist/cjs/components/Dialog/DialogTitle.js.map +1 -1
  13. package/dist/cjs/components/Dialog/Styles.js +55 -13
  14. package/dist/cjs/components/Dialog/Styles.js.map +1 -1
  15. package/dist/cjs/components/Dialog/index.js +11 -0
  16. package/dist/cjs/components/Dialog/index.js.map +1 -1
  17. package/dist/cjs/components/Modal/Modal.js +3 -2
  18. package/dist/cjs/components/Modal/Modal.js.map +1 -1
  19. package/dist/cjs/components/Popper/Popper.js +4 -3
  20. package/dist/cjs/components/Popper/Popper.js.map +1 -1
  21. package/dist/cjs/components/Tooltip/Tooltip.js +3 -1
  22. package/dist/cjs/components/Tooltip/Tooltip.js.map +1 -1
  23. package/dist/cjs/components/Transitions/Fade/Fade.js +11 -2
  24. package/dist/cjs/components/Transitions/Fade/Fade.js.map +1 -1
  25. package/dist/cjs/components/Transitions/SlideFromTop/SlideFromTop.js +46 -30
  26. package/dist/cjs/components/Transitions/SlideFromTop/SlideFromTop.js.map +1 -1
  27. package/dist/cjs/components/Wizard/Step.js +4 -1
  28. package/dist/cjs/components/Wizard/Step.js.map +1 -1
  29. package/dist/cjs/components/Wizard/Wizard.js +14 -2
  30. package/dist/cjs/components/Wizard/Wizard.js.map +1 -1
  31. package/dist/esm/components/ConfirmDialog/ConfirmDialog.d.ts +3 -0
  32. package/dist/esm/components/ConfirmDialog/ConfirmDialog.d.ts.map +1 -1
  33. package/dist/esm/components/ConfirmDialog/ConfirmDialog.js +6 -5
  34. package/dist/esm/components/ConfirmDialog/ConfirmDialog.js.map +1 -1
  35. package/dist/esm/components/Dialog/Dialog.d.ts +7 -2
  36. package/dist/esm/components/Dialog/Dialog.d.ts.map +1 -1
  37. package/dist/esm/components/Dialog/Dialog.js +65 -48
  38. package/dist/esm/components/Dialog/Dialog.js.map +1 -1
  39. package/dist/esm/components/Dialog/DialogActions.d.ts.map +1 -1
  40. package/dist/esm/components/Dialog/DialogActions.js +10 -5
  41. package/dist/esm/components/Dialog/DialogActions.js.map +1 -1
  42. package/dist/esm/components/Dialog/DialogContent.d.ts +5 -1
  43. package/dist/esm/components/Dialog/DialogContent.d.ts.map +1 -1
  44. package/dist/esm/components/Dialog/DialogContent.js +4 -5
  45. package/dist/esm/components/Dialog/DialogContent.js.map +1 -1
  46. package/dist/esm/components/Dialog/DialogContext.d.ts +11 -1
  47. package/dist/esm/components/Dialog/DialogContext.d.ts.map +1 -1
  48. package/dist/esm/components/Dialog/DialogContext.js +10 -8
  49. package/dist/esm/components/Dialog/DialogContext.js.map +1 -1
  50. package/dist/esm/components/Dialog/DialogTitle.d.ts +4 -1
  51. package/dist/esm/components/Dialog/DialogTitle.d.ts.map +1 -1
  52. package/dist/esm/components/Dialog/DialogTitle.js +20 -6
  53. package/dist/esm/components/Dialog/DialogTitle.js.map +1 -1
  54. package/dist/esm/components/Dialog/Styles.d.ts +19 -2
  55. package/dist/esm/components/Dialog/Styles.d.ts.map +1 -1
  56. package/dist/esm/components/Dialog/Styles.js +47 -11
  57. package/dist/esm/components/Dialog/Styles.js.map +1 -1
  58. package/dist/esm/components/Dialog/index.d.ts +1 -0
  59. package/dist/esm/components/Dialog/index.d.ts.map +1 -1
  60. package/dist/esm/components/Dialog/index.js +1 -0
  61. package/dist/esm/components/Dialog/index.js.map +1 -1
  62. package/dist/esm/components/Modal/Modal.d.ts.map +1 -1
  63. package/dist/esm/components/Modal/Modal.js +3 -2
  64. package/dist/esm/components/Modal/Modal.js.map +1 -1
  65. package/dist/esm/components/Popper/Popper.d.ts +6 -1
  66. package/dist/esm/components/Popper/Popper.d.ts.map +1 -1
  67. package/dist/esm/components/Popper/Popper.js +4 -3
  68. package/dist/esm/components/Popper/Popper.js.map +1 -1
  69. package/dist/esm/components/Tooltip/Tooltip.d.ts +3 -1
  70. package/dist/esm/components/Tooltip/Tooltip.d.ts.map +1 -1
  71. package/dist/esm/components/Tooltip/Tooltip.js +3 -1
  72. package/dist/esm/components/Tooltip/Tooltip.js.map +1 -1
  73. package/dist/esm/components/Transitions/Fade/Fade.d.ts.map +1 -1
  74. package/dist/esm/components/Transitions/Fade/Fade.js +11 -2
  75. package/dist/esm/components/Transitions/Fade/Fade.js.map +1 -1
  76. package/dist/esm/components/Transitions/SlideFromTop/SlideFromTop.d.ts +2 -0
  77. package/dist/esm/components/Transitions/SlideFromTop/SlideFromTop.d.ts.map +1 -1
  78. package/dist/esm/components/Transitions/SlideFromTop/SlideFromTop.js +46 -30
  79. package/dist/esm/components/Transitions/SlideFromTop/SlideFromTop.js.map +1 -1
  80. package/dist/esm/components/Wizard/Step.d.ts +4 -0
  81. package/dist/esm/components/Wizard/Step.d.ts.map +1 -1
  82. package/dist/esm/components/Wizard/Step.js +4 -1
  83. package/dist/esm/components/Wizard/Step.js.map +1 -1
  84. package/dist/esm/components/Wizard/Wizard.d.ts +3 -0
  85. package/dist/esm/components/Wizard/Wizard.d.ts.map +1 -1
  86. package/dist/esm/components/Wizard/Wizard.js +14 -2
  87. package/dist/esm/components/Wizard/Wizard.js.map +1 -1
  88. package/dist/index.js +264 -120
  89. package/dist/index.js.map +1 -1
  90. package/dist/index.min.js +1 -1
  91. package/dist/index.min.js.map +1 -1
  92. package/package.json +1 -1
@@ -12,33 +12,37 @@ function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t =
12
12
  function _defineProperty(e, r, t) { return (r = _toPropertyKey(r)) in e ? Object.defineProperty(e, r, { value: t, enumerable: !0, configurable: !0, writable: !0 }) : e[r] = t, e; }
13
13
  function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == typeof i ? i : i + ""; }
14
14
  function _toPrimitive(t, r) { if ("object" != typeof t || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || "default"); if ("object" != typeof i) return i; throw new TypeError("@@toPrimitive must return a primitive value."); } return ("string" === r ? String : Number)(t); }
15
- var defaultStyle = {
16
- transitionProperty: "opacity, transform",
17
- transitionTimingFunction: "linear ease-out",
18
- transform: "translateY(-100%)",
19
- opacity: 0
20
- };
21
- var transitionStyles = {
22
- entering: {
23
- opacity: 1,
24
- transform: "translateY(0)",
25
- transitionDuration: ".3s"
26
- },
27
- entered: {
28
- opacity: 1,
29
- transform: "translateY(0)",
30
- transitionDuration: ".3s"
31
- },
32
- exiting: {
33
- opacity: 0,
34
- transform: "translateY(-100%)",
35
- transitionDuration: ".2s"
36
- },
37
- exited: {
38
- opacity: 0,
39
- transform: "translateY(-100%)",
40
- transitionDuration: ".2s"
41
- }
15
+ var DEFAULT_DISTANCE = 25;
16
+ var buildStyles = function buildStyles(distance) {
17
+ var away = "translateY(-".concat(distance, "px)");
18
+ return {
19
+ base: {
20
+ transitionProperty: "opacity, transform",
21
+ transitionTimingFunction: "ease-out",
22
+ transform: away,
23
+ opacity: 0
24
+ },
25
+ entering: {
26
+ opacity: 1,
27
+ transform: "translateY(0)",
28
+ transitionDuration: ".3s"
29
+ },
30
+ entered: {
31
+ opacity: 1,
32
+ transform: "translateY(0)",
33
+ transitionDuration: ".3s"
34
+ },
35
+ exiting: {
36
+ opacity: 0,
37
+ transform: away,
38
+ transitionDuration: ".2s"
39
+ },
40
+ exited: {
41
+ opacity: 0,
42
+ transform: away,
43
+ transitionDuration: ".2s"
44
+ }
45
+ };
42
46
  };
43
47
  var SlideFromTop = exports.SlideFromTop = function SlideFromTop(_ref) {
44
48
  var _ref$in = _ref.in,
@@ -48,18 +52,30 @@ var SlideFromTop = exports.SlideFromTop = function SlideFromTop(_ref) {
48
52
  children = _ref.children,
49
53
  style = _ref.style,
50
54
  _ref$timeout = _ref.timeout,
51
- timeout = _ref$timeout === void 0 ? 400 : _ref$timeout;
55
+ timeout = _ref$timeout === void 0 ? 400 : _ref$timeout,
56
+ _ref$distance = _ref.distance,
57
+ distance = _ref$distance === void 0 ? DEFAULT_DISTANCE : _ref$distance;
58
+ var styles = buildStyles(distance);
59
+
60
+ // React flushes the state change that follows onEnter before the browser paints, so without a
61
+ // forced layout here the element never holds its starting style and the transition is skipped.
62
+ var handleEnter = function handleEnter(node, isAppearing) {
63
+ if (node) {
64
+ void node.offsetHeight;
65
+ }
66
+ onEnter === null || onEnter === void 0 || onEnter(node, isAppearing);
67
+ };
52
68
  return /*#__PURE__*/_react.default.createElement(_reactTransitionGroup.Transition, {
53
69
  appear: true,
54
70
  in: inProp,
55
71
  timeout: timeout,
56
- onEnter: onEnter,
72
+ onEnter: handleEnter,
57
73
  onExited: onExited
58
74
  }, function (state) {
59
75
  return /*#__PURE__*/(0, _react.cloneElement)(children, {
60
76
  style: _objectSpread(_objectSpread(_objectSpread(_objectSpread({
61
77
  visibility: state === "exited" && !inProp ? "hidden" : undefined
62
- }, defaultStyle), transitionStyles[state]), style), children.props.style)
78
+ }, styles.base), styles[state]), style), children.props.style)
63
79
  });
64
80
  });
65
81
  };
@@ -1 +1 @@
1
- {"version":3,"file":"SlideFromTop.js","names":["_react","_interopRequireWildcard","require","_reactTransitionGroup","e","t","WeakMap","r","n","__esModule","o","i","f","__proto__","default","has","get","set","_t","hasOwnProperty","call","Object","defineProperty","getOwnPropertyDescriptor","ownKeys","keys","getOwnPropertySymbols","filter","enumerable","push","apply","_objectSpread","arguments","length","forEach","_defineProperty","getOwnPropertyDescriptors","defineProperties","_toPropertyKey","value","configurable","writable","_toPrimitive","Symbol","toPrimitive","TypeError","String","Number","defaultStyle","transitionProperty","transitionTimingFunction","transform","opacity","transitionStyles","entering","transitionDuration","entered","exiting","exited","SlideFromTop","exports","_ref","_ref$in","in","inProp","onEnter","onExited","children","style","_ref$timeout","timeout","createElement","Transition","appear","state","cloneElement","visibility","undefined","props","displayName"],"sources":["../../../../../src/components/Transitions/SlideFromTop/SlideFromTop.tsx"],"sourcesContent":["import React, { FC, ReactElement, cloneElement } from \"react\";\nimport { Transition } from \"react-transition-group\";\n\nimport { TransitionProps } from \"../types\";\n\ninterface ISlideFromTop extends Omit<TransitionProps, \"timeout\"> {\n children: ReactElement;\n timeout?: number;\n}\n\nconst defaultStyle = {\n transitionProperty: \"opacity, transform\",\n transitionTimingFunction: \"linear ease-out\",\n transform: \"translateY(-100%)\",\n opacity: 0,\n};\n\nconst transitionStyles = {\n entering: {\n opacity: 1,\n transform: \"translateY(0)\",\n transitionDuration: \".3s\",\n },\n entered: {\n opacity: 1,\n transform: \"translateY(0)\",\n transitionDuration: \".3s\",\n },\n exiting: {\n opacity: 0,\n transform: \"translateY(-100%)\",\n transitionDuration: \".2s\",\n },\n exited: {\n opacity: 0,\n transform: \"translateY(-100%)\",\n transitionDuration: \".2s\",\n },\n};\n\nexport const SlideFromTop: FC<ISlideFromTop> = ({\n in: inProp = false,\n onEnter,\n onExited,\n children,\n style,\n timeout = 400,\n}) => (\n <Transition\n appear\n in={inProp}\n timeout={timeout}\n onEnter={onEnter}\n onExited={onExited}\n >\n {(state): ReactElement => {\n return cloneElement(children, {\n style: {\n visibility: state === \"exited\" && !inProp ? \"hidden\" : undefined,\n ...defaultStyle,\n ...transitionStyles[state],\n ...style,\n ...children.props.style,\n },\n });\n }}\n </Transition>\n);\n\nSlideFromTop.displayName = \"SlideFromTop\";\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"SlideFromTop.js","names":["_react","_interopRequireWildcard","require","_reactTransitionGroup","e","t","WeakMap","r","n","__esModule","o","i","f","__proto__","default","has","get","set","_t","hasOwnProperty","call","Object","defineProperty","getOwnPropertyDescriptor","ownKeys","keys","getOwnPropertySymbols","filter","enumerable","push","apply","_objectSpread","arguments","length","forEach","_defineProperty","getOwnPropertyDescriptors","defineProperties","_toPropertyKey","value","configurable","writable","_toPrimitive","Symbol","toPrimitive","TypeError","String","Number","DEFAULT_DISTANCE","buildStyles","distance","away","concat","base","transitionProperty","transitionTimingFunction","transform","opacity","entering","transitionDuration","entered","exiting","exited","SlideFromTop","exports","_ref","_ref$in","in","inProp","onEnter","onExited","children","style","_ref$timeout","timeout","_ref$distance","styles","handleEnter","node","isAppearing","offsetHeight","createElement","Transition","appear","state","cloneElement","visibility","undefined","props","displayName"],"sources":["../../../../../src/components/Transitions/SlideFromTop/SlideFromTop.tsx"],"sourcesContent":["import React, { FC, ReactElement, cloneElement } from \"react\";\nimport { Transition } from \"react-transition-group\";\n\nimport { TransitionProps } from \"../types\";\n\ninterface ISlideFromTop extends Omit<TransitionProps, \"timeout\"> {\n children: ReactElement;\n timeout?: number;\n /** How far above its resting place the element starts. A fixed travel, not a share of its height. */\n distance?: number;\n}\n\nconst DEFAULT_DISTANCE = 25;\n\nconst buildStyles = (distance: number) => {\n const away = `translateY(-${distance}px)`;\n\n return {\n base: {\n transitionProperty: \"opacity, transform\",\n transitionTimingFunction: \"ease-out\",\n transform: away,\n opacity: 0,\n },\n entering: {\n opacity: 1,\n transform: \"translateY(0)\",\n transitionDuration: \".3s\",\n },\n entered: {\n opacity: 1,\n transform: \"translateY(0)\",\n transitionDuration: \".3s\",\n },\n exiting: { opacity: 0, transform: away, transitionDuration: \".2s\" },\n exited: { opacity: 0, transform: away, transitionDuration: \".2s\" },\n };\n};\n\nexport const SlideFromTop: FC<ISlideFromTop> = ({\n in: inProp = false,\n onEnter,\n onExited,\n children,\n style,\n timeout = 400,\n distance = DEFAULT_DISTANCE,\n}) => {\n const styles = buildStyles(distance);\n\n // React flushes the state change that follows onEnter before the browser paints, so without a\n // forced layout here the element never holds its starting style and the transition is skipped.\n const handleEnter = (node: HTMLElement, isAppearing: boolean) => {\n if (node) {\n void node.offsetHeight;\n }\n onEnter?.(node, isAppearing);\n };\n\n return (\n <Transition\n appear\n in={inProp}\n timeout={timeout}\n onEnter={handleEnter}\n onExited={onExited}\n >\n {(state): ReactElement => {\n return cloneElement(children, {\n style: {\n visibility: state === \"exited\" && !inProp ? \"hidden\" : undefined,\n ...styles.base,\n ...styles[state],\n ...style,\n ...children.props.style,\n },\n });\n }}\n </Transition>\n );\n};\n\nSlideFromTop.displayName = \"SlideFromTop\";\n"],"mappings":"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","ignoreList":[]}
@@ -8,6 +8,7 @@ var _react = _interopRequireWildcard(require("react"));
8
8
  var _StepActionButton = require("./StepActionButton");
9
9
  var _Styles = require("./Styles");
10
10
  var _Dialog = require("../Dialog");
11
+ var _DialogContext = require("../Dialog/DialogContext");
11
12
  var _IconButton = require("../IconButton");
12
13
  var _Icons = require("../Icons");
13
14
  var _Typography = require("../Typography");
@@ -32,6 +33,8 @@ var Step = exports.Step = function Step(_ref) {
32
33
  customRightHeader = _ref.customRightHeader,
33
34
  _ref$skip = _ref.skip,
34
35
  skip = _ref$skip === void 0 ? false : _ref$skip;
36
+ // The close button goes through the dialog so the exit transition runs before the caller unmounts.
37
+ var closeDialog = (0, _DialogContext.useDialogClose)(onClose);
35
38
  var onActionButtonClick = (0, _react.useCallback)(function () {
36
39
  if (isLast && onClose) {
37
40
  return onClose();
@@ -44,7 +47,7 @@ var Step = exports.Step = function Step(_ref) {
44
47
  className: "tw--ml-3 tw-mr-2",
45
48
  disabled: changingStepInProgress
46
49
  }, /*#__PURE__*/_react.default.createElement(_Icons.ArrowBackMobileIcon, null)) : null, /*#__PURE__*/_react.default.createElement(_Styles.StyledStepTitle, null, /*#__PURE__*/_react.default.createElement(_Typography.Caption2, null, title), /*#__PURE__*/_react.default.createElement(_Typography.Header3, null, subtitle))), customRightHeader ? customRightHeader : /*#__PURE__*/_react.default.createElement(_IconButton.IconButton, {
47
- onClick: onClose,
50
+ onClick: closeDialog,
48
51
  variant: "text gray",
49
52
  disabled: changingStepInProgress
50
53
  }, /*#__PURE__*/_react.default.createElement(_Icons.CancelCrossIcon, null))), /*#__PURE__*/_react.default.createElement(_Dialog.Dialog.ContentDivider, null), shouldRenderNextButton ? /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null, /*#__PURE__*/_react.default.createElement(_Dialog.Dialog.Content, null, children), /*#__PURE__*/_react.default.createElement(_Dialog.Dialog.ContentDivider, null), /*#__PURE__*/_react.default.createElement(_Dialog.Dialog.Actions, null, /*#__PURE__*/_react.default.createElement(_StepActionButton.StepActionButton, {
@@ -1 +1 @@
1
- {"version":3,"file":"Step.js","names":["_react","_interopRequireWildcard","require","_StepActionButton","_Styles","_Dialog","_IconButton","_Icons","_Typography","e","t","WeakMap","r","n","__esModule","o","i","f","__proto__","default","has","get","set","_t","hasOwnProperty","call","Object","defineProperty","getOwnPropertyDescriptor","Step","exports","_ref","index","isLast","subtitle","title","onNextButtonClick","onPreviousButtonClick","onClose","children","_ref$actionLabel","actionLabel","_ref$shouldRenderNext","shouldRenderNextButton","_ref$changingStepInPr","changingStepInProgress","_ref$disableBackButto","disableBackButton","customRightHeader","_ref$skip","skip","onActionButtonClick","useCallback","createElement","Fragment","StyledStepHeader","StyledStepHeaderLeft","IconButton","onClick","variant","className","disabled","ArrowBackMobileIcon","StyledStepTitle","Caption2","Header3","CancelCrossIcon","Dialog","ContentDivider","Content","Actions","StepActionButton","StyledCustomStep","displayName"],"sources":["../../../../src/components/Wizard/Step.tsx"],"sourcesContent":["import React, { FC, ReactNode, useCallback } from \"react\";\n\nimport { StepActionButton } from \"./StepActionButton\";\nimport {\n StyledStepTitle,\n StyledStepHeaderLeft,\n StyledStepHeader,\n StyledCustomStep,\n} from \"./Styles\";\nimport { Dialog } from \"../Dialog\";\nimport { IconButton } from \"../IconButton\";\nimport { ArrowBackMobileIcon, CancelCrossIcon } from \"../Icons\";\nimport { Caption2, Header3 } from \"../Typography\";\n\nexport interface IStep {\n index?: number;\n isLast?: boolean;\n subtitle: string;\n title?: string;\n onNextButtonClick?: () => void;\n onPreviousButtonClick?: () => void;\n onClose?: () => void;\n children: ReactNode;\n actionLabel?: string;\n shouldRenderNextButton?: boolean;\n changingStepInProgress?: boolean;\n disableBackButton?: boolean;\n customRightHeader?: ReactNode;\n skip?: boolean;\n}\n\nexport const Step: FC<IStep> = ({\n index,\n isLast,\n subtitle,\n title,\n onNextButtonClick,\n onPreviousButtonClick,\n onClose,\n children,\n actionLabel = \"Proceed\",\n shouldRenderNextButton = true,\n changingStepInProgress = false,\n disableBackButton = false,\n customRightHeader,\n skip = false,\n}) => {\n const onActionButtonClick = useCallback(() => {\n if (isLast && onClose) {\n return onClose();\n }\n\n return onNextButtonClick && onNextButtonClick();\n }, [isLast, onClose, onNextButtonClick]);\n\n return !skip ? (\n <>\n <StyledStepHeader>\n <StyledStepHeaderLeft>\n {!disableBackButton && index && index > 0 ? (\n <IconButton\n onClick={onPreviousButtonClick}\n variant=\"text gray\"\n className=\"tw--ml-3 tw-mr-2\"\n disabled={changingStepInProgress}\n >\n <ArrowBackMobileIcon />\n </IconButton>\n ) : null}\n <StyledStepTitle>\n <Caption2>{title}</Caption2>\n <Header3>{subtitle}</Header3>\n </StyledStepTitle>\n </StyledStepHeaderLeft>\n {customRightHeader ? (\n customRightHeader\n ) : (\n <IconButton\n onClick={onClose}\n variant=\"text gray\"\n disabled={changingStepInProgress}\n >\n <CancelCrossIcon />\n </IconButton>\n )}\n </StyledStepHeader>\n <Dialog.ContentDivider />\n {shouldRenderNextButton ? (\n <>\n <Dialog.Content>{children}</Dialog.Content>\n <Dialog.ContentDivider />\n <Dialog.Actions>\n <StepActionButton\n isLast={isLast}\n actionLabel={actionLabel}\n onNextButtonClick={onActionButtonClick}\n />\n </Dialog.Actions>\n </>\n ) : (\n <StyledCustomStep>{children}</StyledCustomStep>\n )}\n </>\n ) : null;\n};\n\nStep.displayName = \"Step\";\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"Step.js","names":["_react","_interopRequireWildcard","require","_StepActionButton","_Styles","_Dialog","_DialogContext","_IconButton","_Icons","_Typography","e","t","WeakMap","r","n","__esModule","o","i","f","__proto__","default","has","get","set","_t","hasOwnProperty","call","Object","defineProperty","getOwnPropertyDescriptor","Step","exports","_ref","index","isLast","subtitle","title","onNextButtonClick","onPreviousButtonClick","onClose","children","_ref$actionLabel","actionLabel","_ref$shouldRenderNext","shouldRenderNextButton","_ref$changingStepInPr","changingStepInProgress","_ref$disableBackButto","disableBackButton","customRightHeader","_ref$skip","skip","closeDialog","useDialogClose","onActionButtonClick","useCallback","createElement","Fragment","StyledStepHeader","StyledStepHeaderLeft","IconButton","onClick","variant","className","disabled","ArrowBackMobileIcon","StyledStepTitle","Caption2","Header3","CancelCrossIcon","Dialog","ContentDivider","Content","Actions","StepActionButton","StyledCustomStep","displayName"],"sources":["../../../../src/components/Wizard/Step.tsx"],"sourcesContent":["import React, { FC, ReactNode, useCallback } from \"react\";\n\nimport { StepActionButton } from \"./StepActionButton\";\nimport {\n StyledStepTitle,\n StyledStepHeaderLeft,\n StyledStepHeader,\n StyledCustomStep,\n} from \"./Styles\";\nimport { Dialog } from \"../Dialog\";\nimport { useDialogClose } from \"../Dialog/DialogContext\";\nimport { DialogSize } from \"../Dialog/Styles\";\nimport { IconButton } from \"../IconButton\";\nimport { ArrowBackMobileIcon, CancelCrossIcon } from \"../Icons\";\nimport { Caption2, Header3 } from \"../Typography\";\n\nexport interface IStep {\n index?: number;\n isLast?: boolean;\n subtitle: string;\n title?: string;\n onNextButtonClick?: () => void;\n onPreviousButtonClick?: () => void;\n onClose?: () => void;\n children: ReactNode;\n actionLabel?: string;\n shouldRenderNextButton?: boolean;\n changingStepInProgress?: boolean;\n disableBackButton?: boolean;\n customRightHeader?: ReactNode;\n skip?: boolean;\n /** Read by Wizard off the active step and passed to the dialog. */\n size?: DialogSize;\n height?: string;\n}\n\nexport const Step: FC<IStep> = ({\n index,\n isLast,\n subtitle,\n title,\n onNextButtonClick,\n onPreviousButtonClick,\n onClose,\n children,\n actionLabel = \"Proceed\",\n shouldRenderNextButton = true,\n changingStepInProgress = false,\n disableBackButton = false,\n customRightHeader,\n skip = false,\n}) => {\n // The close button goes through the dialog so the exit transition runs before the caller unmounts.\n const closeDialog = useDialogClose(onClose);\n\n const onActionButtonClick = useCallback(() => {\n if (isLast && onClose) {\n return onClose();\n }\n\n return onNextButtonClick && onNextButtonClick();\n }, [isLast, onClose, onNextButtonClick]);\n\n return !skip ? (\n <>\n <StyledStepHeader>\n <StyledStepHeaderLeft>\n {!disableBackButton && index && index > 0 ? (\n <IconButton\n onClick={onPreviousButtonClick}\n variant=\"text gray\"\n className=\"tw--ml-3 tw-mr-2\"\n disabled={changingStepInProgress}\n >\n <ArrowBackMobileIcon />\n </IconButton>\n ) : null}\n <StyledStepTitle>\n <Caption2>{title}</Caption2>\n <Header3>{subtitle}</Header3>\n </StyledStepTitle>\n </StyledStepHeaderLeft>\n {customRightHeader ? (\n customRightHeader\n ) : (\n <IconButton\n onClick={closeDialog}\n variant=\"text gray\"\n disabled={changingStepInProgress}\n >\n <CancelCrossIcon />\n </IconButton>\n )}\n </StyledStepHeader>\n <Dialog.ContentDivider />\n {shouldRenderNextButton ? (\n <>\n <Dialog.Content>{children}</Dialog.Content>\n <Dialog.ContentDivider />\n <Dialog.Actions>\n <StepActionButton\n isLast={isLast}\n actionLabel={actionLabel}\n onNextButtonClick={onActionButtonClick}\n />\n </Dialog.Actions>\n </>\n ) : (\n <StyledCustomStep>{children}</StyledCustomStep>\n )}\n </>\n ) : null;\n};\n\nStep.displayName = \"Step\";\n"],"mappings":";;;;;;AAAA,IAAAA,MAAA,GAAAC,uBAAA,CAAAC,OAAA;AAEA,IAAAC,iBAAA,GAAAD,OAAA;AACA,IAAAE,OAAA,GAAAF,OAAA;AAMA,IAAAG,OAAA,GAAAH,OAAA;AACA,IAAAI,cAAA,GAAAJ,OAAA;AAEA,IAAAK,WAAA,GAAAL,OAAA;AACA,IAAAM,MAAA,GAAAN,OAAA;AACA,IAAAO,WAAA,GAAAP,OAAA;AAAkD,SAAAD,wBAAAS,CAAA,EAAAC,CAAA,6BAAAC,OAAA,MAAAC,CAAA,OAAAD,OAAA,IAAAE,CAAA,OAAAF,OAAA,YAAAX,uBAAA,YAAAA,wBAAAS,CAAA,EAAAC,CAAA,SAAAA,CAAA,IAAAD,CAAA,IAAAA,CAAA,CAAAK,UAAA,SAAAL,CAAA,MAAAM,CAAA,EAAAC,CAAA,EAAAC,CAAA,KAAAC,SAAA,QAAAC,OAAA,EAAAV,CAAA,iBAAAA,CAAA,uBAAAA,CAAA,yBAAAA,CAAA,SAAAQ,CAAA,MAAAF,CAAA,GAAAL,CAAA,GAAAG,CAAA,GAAAD,CAAA,QAAAG,CAAA,CAAAK,GAAA,CAAAX,CAAA,UAAAM,CAAA,CAAAM,GAAA,CAAAZ,CAAA,GAAAM,CAAA,CAAAO,GAAA,CAAAb,CAAA,EAAAQ,CAAA,cAAAM,EAAA,IAAAd,CAAA,gBAAAc,EAAA,OAAAC,cAAA,CAAAC,IAAA,CAAAhB,CAAA,EAAAc,EAAA,OAAAP,CAAA,IAAAD,CAAA,GAAAW,MAAA,CAAAC,cAAA,KAAAD,MAAA,CAAAE,wBAAA,CAAAnB,CAAA,EAAAc,EAAA,OAAAP,CAAA,CAAAK,GAAA,IAAAL,CAAA,CAAAM,GAAA,IAAAP,CAAA,CAAAE,CAAA,EAAAM,EAAA,EAAAP,CAAA,IAAAC,CAAA,CAAAM,EAAA,IAAAd,CAAA,CAAAc,EAAA,WAAAN,CAAA,KAAAR,CAAA,EAAAC,CAAA;AAsB3C,IAAMmB,IAAe,GAAAC,OAAA,CAAAD,IAAA,GAAG,SAAlBA,IAAeA,CAAAE,IAAA,EAetB;EAAA,IAdJC,KAAK,GAAAD,IAAA,CAALC,KAAK;IACLC,MAAM,GAAAF,IAAA,CAANE,MAAM;IACNC,QAAQ,GAAAH,IAAA,CAARG,QAAQ;IACRC,KAAK,GAAAJ,IAAA,CAALI,KAAK;IACLC,iBAAiB,GAAAL,IAAA,CAAjBK,iBAAiB;IACjBC,qBAAqB,GAAAN,IAAA,CAArBM,qBAAqB;IACrBC,OAAO,GAAAP,IAAA,CAAPO,OAAO;IACPC,QAAQ,GAAAR,IAAA,CAARQ,QAAQ;IAAAC,gBAAA,GAAAT,IAAA,CACRU,WAAW;IAAXA,WAAW,GAAAD,gBAAA,cAAG,SAAS,GAAAA,gBAAA;IAAAE,qBAAA,GAAAX,IAAA,CACvBY,sBAAsB;IAAtBA,sBAAsB,GAAAD,qBAAA,cAAG,IAAI,GAAAA,qBAAA;IAAAE,qBAAA,GAAAb,IAAA,CAC7Bc,sBAAsB;IAAtBA,sBAAsB,GAAAD,qBAAA,cAAG,KAAK,GAAAA,qBAAA;IAAAE,qBAAA,GAAAf,IAAA,CAC9BgB,iBAAiB;IAAjBA,iBAAiB,GAAAD,qBAAA,cAAG,KAAK,GAAAA,qBAAA;IACzBE,iBAAiB,GAAAjB,IAAA,CAAjBiB,iBAAiB;IAAAC,SAAA,GAAAlB,IAAA,CACjBmB,IAAI;IAAJA,IAAI,GAAAD,SAAA,cAAG,KAAK,GAAAA,SAAA;EAEZ;EACA,IAAME,WAAW,GAAG,IAAAC,6BAAc,EAACd,OAAO,CAAC;EAE3C,IAAMe,mBAAmB,GAAG,IAAAC,kBAAW,EAAC,YAAM;IAC5C,IAAIrB,MAAM,IAAIK,OAAO,EAAE;MACrB,OAAOA,OAAO,CAAC,CAAC;IAClB;IAEA,OAAOF,iBAAiB,IAAIA,iBAAiB,CAAC,CAAC;EACjD,CAAC,EAAE,CAACH,MAAM,EAAEK,OAAO,EAAEF,iBAAiB,CAAC,CAAC;EAExC,OAAO,CAACc,IAAI,gBACVnD,MAAA,CAAAoB,OAAA,CAAAoC,aAAA,CAAAxD,MAAA,CAAAoB,OAAA,CAAAqC,QAAA,qBACEzD,MAAA,CAAAoB,OAAA,CAAAoC,aAAA,CAACpD,OAAA,CAAAsD,gBAAgB,qBACf1D,MAAA,CAAAoB,OAAA,CAAAoC,aAAA,CAACpD,OAAA,CAAAuD,oBAAoB,QAClB,CAACX,iBAAiB,IAAIf,KAAK,IAAIA,KAAK,GAAG,CAAC,gBACvCjC,MAAA,CAAAoB,OAAA,CAAAoC,aAAA,CAACjD,WAAA,CAAAqD,UAAU;IACTC,OAAO,EAAEvB,qBAAsB;IAC/BwB,OAAO,EAAC,WAAW;IACnBC,SAAS,EAAC,kBAAkB;IAC5BC,QAAQ,EAAElB;EAAuB,gBAEjC9C,MAAA,CAAAoB,OAAA,CAAAoC,aAAA,CAAChD,MAAA,CAAAyD,mBAAmB,MAAE,CACZ,CAAC,GACX,IAAI,eACRjE,MAAA,CAAAoB,OAAA,CAAAoC,aAAA,CAACpD,OAAA,CAAA8D,eAAe,qBACdlE,MAAA,CAAAoB,OAAA,CAAAoC,aAAA,CAAC/C,WAAA,CAAA0D,QAAQ,QAAE/B,KAAgB,CAAC,eAC5BpC,MAAA,CAAAoB,OAAA,CAAAoC,aAAA,CAAC/C,WAAA,CAAA2D,OAAO,QAAEjC,QAAkB,CACb,CACG,CAAC,EACtBc,iBAAiB,GAChBA,iBAAiB,gBAEjBjD,MAAA,CAAAoB,OAAA,CAAAoC,aAAA,CAACjD,WAAA,CAAAqD,UAAU;IACTC,OAAO,EAAET,WAAY;IACrBU,OAAO,EAAC,WAAW;IACnBE,QAAQ,EAAElB;EAAuB,gBAEjC9C,MAAA,CAAAoB,OAAA,CAAAoC,aAAA,CAAChD,MAAA,CAAA6D,eAAe,MAAE,CACR,CAEE,CAAC,eACnBrE,MAAA,CAAAoB,OAAA,CAAAoC,aAAA,CAACnD,OAAA,CAAAiE,MAAM,CAACC,cAAc,MAAE,CAAC,EACxB3B,sBAAsB,gBACrB5C,MAAA,CAAAoB,OAAA,CAAAoC,aAAA,CAAAxD,MAAA,CAAAoB,OAAA,CAAAqC,QAAA,qBACEzD,MAAA,CAAAoB,OAAA,CAAAoC,aAAA,CAACnD,OAAA,CAAAiE,MAAM,CAACE,OAAO,QAAEhC,QAAyB,CAAC,eAC3CxC,MAAA,CAAAoB,OAAA,CAAAoC,aAAA,CAACnD,OAAA,CAAAiE,MAAM,CAACC,cAAc,MAAE,CAAC,eACzBvE,MAAA,CAAAoB,OAAA,CAAAoC,aAAA,CAACnD,OAAA,CAAAiE,MAAM,CAACG,OAAO,qBACbzE,MAAA,CAAAoB,OAAA,CAAAoC,aAAA,CAACrD,iBAAA,CAAAuE,gBAAgB;IACfxC,MAAM,EAAEA,MAAO;IACfQ,WAAW,EAAEA,WAAY;IACzBL,iBAAiB,EAAEiB;EAAoB,CACxC,CACa,CAChB,CAAC,gBAEHtD,MAAA,CAAAoB,OAAA,CAAAoC,aAAA,CAACpD,OAAA,CAAAuE,gBAAgB,QAAEnC,QAA2B,CAEhD,CAAC,GACD,IAAI;AACV,CAAC;AAEDV,IAAI,CAAC8C,WAAW,GAAG,MAAM","ignoreList":[]}
@@ -16,13 +16,18 @@ function _arrayLikeToArray(r, a) { (null == a || a > r.length) && (a = r.length)
16
16
  function _iterableToArrayLimit(r, l) { var t = null == r ? null : "undefined" != typeof Symbol && r[Symbol.iterator] || r["@@iterator"]; if (null != t) { var e, n, i, u, a = [], f = !0, o = !1; try { if (i = (t = t.call(r)).next, 0 === l) { if (Object(t) !== t) return; f = !1; } else for (; !(f = (e = i.call(t)).done) && (a.push(e.value), a.length !== l); f = !0); } catch (r) { o = !0, n = r; } finally { try { if (!f && null != t.return && (u = t.return(), Object(u) !== u)) return; } finally { if (o) throw n; } } return a; } }
17
17
  function _arrayWithHoles(r) { if (Array.isArray(r)) return r; }
18
18
  var Wizard = exports.Wizard = /*#__PURE__*/(0, _react.forwardRef)(function (_ref, ref) {
19
+ var _activeStepProps$size, _activeStepProps$heig;
19
20
  var title = _ref.title,
20
21
  open = _ref.open,
21
22
  onClose = _ref.onClose,
22
23
  _ref$disableCloseOnEs = _ref.disableCloseOnEsc,
23
24
  disableCloseOnEsc = _ref$disableCloseOnEs === void 0 ? false : _ref$disableCloseOnEs,
24
25
  children = _ref.children,
25
- dialogClassName = _ref.dialogClassName;
26
+ dialogClassName = _ref.dialogClassName,
27
+ _ref$size = _ref.size,
28
+ size = _ref$size === void 0 ? "m" : _ref$size,
29
+ _ref$height = _ref.height,
30
+ height = _ref$height === void 0 ? "fluid" : _ref$height;
26
31
  var childrenCollection = (0, _react.useMemo)(function () {
27
32
  return _react.default.Children.toArray(children);
28
33
  }, [children]);
@@ -59,6 +64,11 @@ var Wizard = exports.Wizard = /*#__PURE__*/(0, _react.forwardRef)(function (_ref
59
64
  }
60
65
  setActiveStep(index);
61
66
  }, [activeStep, childrenCollection]);
67
+ var activeStepProps = (0, _react.useMemo)(function () {
68
+ var _element$props;
69
+ var element = childrenCollection[activeStep];
70
+ return (_element$props = element === null || element === void 0 ? void 0 : element.props) !== null && _element$props !== void 0 ? _element$props : {};
71
+ }, [activeStep, childrenCollection]);
62
72
  var renderActiveStep = (0, _react.useMemo)(function () {
63
73
  var element = childrenCollection[activeStep];
64
74
  if ((element === null || element === void 0 ? void 0 : element.type) === _Step.Step) {
@@ -88,7 +98,9 @@ var Wizard = exports.Wizard = /*#__PURE__*/(0, _react.forwardRef)(function (_ref
88
98
  open: open,
89
99
  onClose: onClose,
90
100
  disableCloseOnEsc: disableCloseOnEsc,
91
- className: dialogClassName
101
+ className: dialogClassName,
102
+ size: (_activeStepProps$size = activeStepProps.size) !== null && _activeStepProps$size !== void 0 ? _activeStepProps$size : size,
103
+ height: (_activeStepProps$heig = activeStepProps.height) !== null && _activeStepProps$heig !== void 0 ? _activeStepProps$heig : height
92
104
  }, renderActiveStep));
93
105
  });
94
106
  Wizard.displayName = "Wizard";
@@ -1 +1 @@
1
- {"version":3,"file":"Wizard.js","names":["_react","_interopRequireWildcard","require","_context","_Step","_Dialog","e","t","WeakMap","r","n","__esModule","o","i","f","__proto__","default","has","get","set","_t","hasOwnProperty","call","Object","defineProperty","getOwnPropertyDescriptor","_slicedToArray","_arrayWithHoles","_iterableToArrayLimit","_unsupportedIterableToArray","_nonIterableRest","TypeError","a","_arrayLikeToArray","toString","slice","constructor","name","Array","from","test","length","l","Symbol","iterator","u","next","done","push","value","return","isArray","Wizard","exports","forwardRef","_ref","ref","title","open","onClose","_ref$disableCloseOnEs","disableCloseOnEsc","children","dialogClassName","childrenCollection","useMemo","React","Children","toArray","_useState","useState","_useState2","activeStep","setActiveStep","_useState3","_useState4","changingStepInProgress","setChangingStepInProgress","useEffect","goNext","useCallback","index","findIndex","step","_stepEl$props","stepEl","props","skip","goPrevious","_step$props","renderActiveStep","element","type","Step","cloneElement","isLast","onNextButtonClick","onPreviousButtonClick","createElement","WizardContextProvider","close","Dialog","className","displayName"],"sources":["../../../../src/components/Wizard/Wizard.tsx"],"sourcesContent":["import React, {\n forwardRef,\n ReactChild,\n ReactElement,\n ReactFragment,\n ReactNode,\n useCallback,\n useEffect,\n useMemo,\n useState,\n} from \"react\";\n\nimport { WizardContextProvider } from \"./context\";\nimport { Step } from \"./Step\";\nimport { Dialog } from \"../Dialog\";\n\nexport interface IWizard {\n title: string;\n open: boolean;\n onClose: () => void;\n children: ReactNode;\n disableCloseOnEsc?: boolean;\n dialogClassName?: string;\n}\n\nexport const Wizard = forwardRef<HTMLDivElement, IWizard>(\n (\n {\n title,\n open,\n onClose,\n disableCloseOnEsc = false,\n children,\n dialogClassName,\n },\n ref\n ) => {\n const childrenCollection = useMemo(\n () => React.Children.toArray(children),\n [children]\n );\n\n const [activeStep, setActiveStep] = useState(0);\n const [changingStepInProgress, setChangingStepInProgress] = useState(false);\n\n useEffect(() => {\n if (open) {\n setActiveStep(0);\n }\n }, [open]);\n\n const goNext = useCallback(() => {\n const index = childrenCollection.findIndex(\n (step: ReactChild | ReactFragment, index) => {\n const stepEl = step as ReactElement;\n return !stepEl?.props?.skip && index > activeStep;\n }\n );\n setActiveStep(index);\n }, [activeStep, childrenCollection]);\n\n const goPrevious = useCallback(() => {\n let index = 0;\n for (let i = childrenCollection.length - 1; i >= 0; i--) {\n const step = childrenCollection[i] as ReactElement;\n if (!step?.props?.skip && i < activeStep) {\n index = i;\n break;\n }\n }\n setActiveStep(index);\n }, [activeStep, childrenCollection]);\n\n const renderActiveStep = useMemo(() => {\n const element = childrenCollection[activeStep] as ReactElement;\n\n if (element?.type === Step) {\n return React.cloneElement(element, {\n index: activeStep,\n isLast: childrenCollection.length - 1 === activeStep,\n title,\n onNextButtonClick: goNext,\n onPreviousButtonClick: goPrevious,\n onClose,\n changingStepInProgress: changingStepInProgress,\n });\n }\n\n return null;\n }, [\n activeStep,\n changingStepInProgress,\n childrenCollection,\n goNext,\n goPrevious,\n onClose,\n title,\n ]);\n\n return (\n <WizardContextProvider\n value={{\n activeStep,\n setActiveStep,\n goNext,\n goPrevious,\n close: onClose,\n setChangingStepInProgress,\n }}\n >\n <Dialog\n ref={ref}\n open={open}\n onClose={onClose}\n disableCloseOnEsc={disableCloseOnEsc}\n className={dialogClassName}\n >\n {renderActiveStep}\n </Dialog>\n </WizardContextProvider>\n );\n }\n);\n\nWizard.displayName = \"Wizard\";\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"Wizard.js","names":["_react","_interopRequireWildcard","require","_context","_Step","_Dialog","e","t","WeakMap","r","n","__esModule","o","i","f","__proto__","default","has","get","set","_t","hasOwnProperty","call","Object","defineProperty","getOwnPropertyDescriptor","_slicedToArray","_arrayWithHoles","_iterableToArrayLimit","_unsupportedIterableToArray","_nonIterableRest","TypeError","a","_arrayLikeToArray","toString","slice","constructor","name","Array","from","test","length","l","Symbol","iterator","u","next","done","push","value","return","isArray","Wizard","exports","forwardRef","_ref","ref","_activeStepProps$size","_activeStepProps$heig","title","open","onClose","_ref$disableCloseOnEs","disableCloseOnEsc","children","dialogClassName","_ref$size","size","_ref$height","height","childrenCollection","useMemo","React","Children","toArray","_useState","useState","_useState2","activeStep","setActiveStep","_useState3","_useState4","changingStepInProgress","setChangingStepInProgress","useEffect","goNext","useCallback","index","findIndex","step","_stepEl$props","stepEl","props","skip","goPrevious","_step$props","activeStepProps","_element$props","element","renderActiveStep","type","Step","cloneElement","isLast","onNextButtonClick","onPreviousButtonClick","createElement","WizardContextProvider","close","Dialog","className","displayName"],"sources":["../../../../src/components/Wizard/Wizard.tsx"],"sourcesContent":["import React, {\n forwardRef,\n ReactChild,\n ReactElement,\n ReactFragment,\n ReactNode,\n useCallback,\n useEffect,\n useMemo,\n useState,\n} from \"react\";\n\nimport { WizardContextProvider } from \"./context\";\nimport { Step } from \"./Step\";\nimport { Dialog } from \"../Dialog\";\nimport { DialogSize } from \"../Dialog/Styles\";\n\nexport interface IWizard {\n title: string;\n open: boolean;\n onClose: () => void;\n children: ReactNode;\n disableCloseOnEsc?: boolean;\n dialogClassName?: string;\n size?: DialogSize;\n height?: string;\n}\n\nexport const Wizard = forwardRef<HTMLDivElement, IWizard>(\n (\n {\n title,\n open,\n onClose,\n disableCloseOnEsc = false,\n children,\n dialogClassName,\n size = \"m\",\n height = \"fluid\",\n },\n ref\n ) => {\n const childrenCollection = useMemo(\n () => React.Children.toArray(children),\n [children]\n );\n\n const [activeStep, setActiveStep] = useState(0);\n const [changingStepInProgress, setChangingStepInProgress] = useState(false);\n\n useEffect(() => {\n if (open) {\n setActiveStep(0);\n }\n }, [open]);\n\n const goNext = useCallback(() => {\n const index = childrenCollection.findIndex(\n (step: ReactChild | ReactFragment, index) => {\n const stepEl = step as ReactElement;\n return !stepEl?.props?.skip && index > activeStep;\n }\n );\n setActiveStep(index);\n }, [activeStep, childrenCollection]);\n\n const goPrevious = useCallback(() => {\n let index = 0;\n for (let i = childrenCollection.length - 1; i >= 0; i--) {\n const step = childrenCollection[i] as ReactElement;\n if (!step?.props?.skip && i < activeStep) {\n index = i;\n break;\n }\n }\n setActiveStep(index);\n }, [activeStep, childrenCollection]);\n\n const activeStepProps = useMemo(() => {\n const element = childrenCollection[activeStep] as ReactElement;\n return (element?.props ?? {}) as { size?: DialogSize; height?: string };\n }, [activeStep, childrenCollection]);\n\n const renderActiveStep = useMemo(() => {\n const element = childrenCollection[activeStep] as ReactElement;\n\n if (element?.type === Step) {\n return React.cloneElement(element, {\n index: activeStep,\n isLast: childrenCollection.length - 1 === activeStep,\n title,\n onNextButtonClick: goNext,\n onPreviousButtonClick: goPrevious,\n onClose,\n changingStepInProgress: changingStepInProgress,\n });\n }\n\n return null;\n }, [\n activeStep,\n changingStepInProgress,\n childrenCollection,\n goNext,\n goPrevious,\n onClose,\n title,\n ]);\n\n return (\n <WizardContextProvider\n value={{\n activeStep,\n setActiveStep,\n goNext,\n goPrevious,\n close: onClose,\n setChangingStepInProgress,\n }}\n >\n <Dialog\n ref={ref}\n open={open}\n onClose={onClose}\n disableCloseOnEsc={disableCloseOnEsc}\n className={dialogClassName}\n size={activeStepProps.size ?? size}\n height={activeStepProps.height ?? height}\n >\n {renderActiveStep}\n </Dialog>\n </WizardContextProvider>\n );\n }\n);\n\nWizard.displayName = \"Wizard\";\n"],"mappings":"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","ignoreList":[]}
@@ -1,4 +1,5 @@
1
1
  import React from "react";
2
+ import { DialogSize } from "../Dialog/Styles";
2
3
  export interface ConfirmDialogProps {
3
4
  open?: boolean;
4
5
  onCancel?: () => void;
@@ -11,6 +12,8 @@ export interface ConfirmDialogProps {
11
12
  shouldShowCancelButton?: boolean;
12
13
  isLoading?: boolean;
13
14
  confirmationLabel?: string;
15
+ size?: DialogSize;
16
+ height?: string;
14
17
  }
15
18
  export declare const ConfirmDialog: React.ForwardRefExoticComponent<ConfirmDialogProps & React.RefAttributes<HTMLDivElement>>;
16
19
  //# sourceMappingURL=ConfirmDialog.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"ConfirmDialog.d.ts","sourceRoot":"","sources":["../../../../src/components/ConfirmDialog/ConfirmDialog.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAuD,MAAM,OAAO,CAAC;AAY5E,MAAM,WAAW,kBAAkB;IACjC,IAAI,CAAC,EAAE,OAAO,CAAC;IACf,QAAQ,CAAC,EAAE,MAAM,IAAI,CAAC;IACtB,SAAS,CAAC,EAAE,MAAM,IAAI,CAAC;IACvB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,aAAa,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IAChC,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,sBAAsB,CAAC,EAAE,OAAO,CAAC;IACjC,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,iBAAiB,CAAC,EAAE,MAAM,CAAC;CAC5B;AAED,eAAO,MAAM,aAAa,2FAsGzB,CAAC"}
1
+ {"version":3,"file":"ConfirmDialog.d.ts","sourceRoot":"","sources":["../../../../src/components/ConfirmDialog/ConfirmDialog.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAuD,MAAM,OAAO,CAAC;AAQ5E,OAAO,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAK9C,MAAM,WAAW,kBAAkB;IACjC,IAAI,CAAC,EAAE,OAAO,CAAC;IACf,QAAQ,CAAC,EAAE,MAAM,IAAI,CAAC;IACtB,SAAS,CAAC,EAAE,MAAM,IAAI,CAAC;IACvB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,aAAa,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IAChC,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,sBAAsB,CAAC,EAAE,OAAO,CAAC;IACjC,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,IAAI,CAAC,EAAE,UAAU,CAAC;IAClB,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AAED,eAAO,MAAM,aAAa,2FAyGzB,CAAC"}
@@ -24,7 +24,9 @@ export const ConfirmDialog = /*#__PURE__*/forwardRef((_ref, ref) => {
24
24
  shouldShowCancelButton = _ref$shouldShowCancel === void 0 ? true : _ref$shouldShowCancel,
25
25
  _ref$isLoading = _ref.isLoading,
26
26
  isLoading = _ref$isLoading === void 0 ? false : _ref$isLoading,
27
- confirmationLabel = _ref.confirmationLabel;
27
+ confirmationLabel = _ref.confirmationLabel,
28
+ size = _ref.size,
29
+ height = _ref.height;
28
30
  const _useState = useState(false),
29
31
  confirmed = _useState[0],
30
32
  setConfirmed = _useState[1];
@@ -54,7 +56,9 @@ export const ConfirmDialog = /*#__PURE__*/forwardRef((_ref, ref) => {
54
56
  open: open,
55
57
  onClose: onCancel,
56
58
  className: classnames("c-confirm-dialog", className),
57
- disableCloseOnEsc: isLoading
59
+ disableCloseOnEsc: isLoading,
60
+ size: size,
61
+ height: height
58
62
  }, /*#__PURE__*/React.createElement(Dialog.Title, null, dialogTitle), /*#__PURE__*/React.createElement(Dialog.ContentDivider, null), /*#__PURE__*/React.createElement(Dialog.Content, null, /*#__PURE__*/React.createElement(Body2, {
59
63
  lineHeight: "loose",
60
64
  color: "secondary",
@@ -72,9 +76,6 @@ export const ConfirmDialog = /*#__PURE__*/forwardRef((_ref, ref) => {
72
76
  color: "secondary"
73
77
  }, confirmationLabel))) : null), /*#__PURE__*/React.createElement(Dialog.ContentDivider, null), /*#__PURE__*/React.createElement(Dialog.Actions, null, /*#__PURE__*/React.createElement(Button, {
74
78
  variant: "primary",
75
- style: {
76
- marginRight: "12px"
77
- },
78
79
  onClick: onConfirm,
79
80
  disabled: isLoading || isConfirmBlocked
80
81
  }, confirmBtnText), shouldShowCancelButton ? /*#__PURE__*/React.createElement(Button, {
@@ -1 +1 @@
1
- {"version":3,"file":"ConfirmDialog.js","names":["React","forwardRef","useCallback","useEffect","useState","classnames","Button","Checkbox","Dialog","StyledConfirmation","Body2","CONFIRMATION_CHECKBOX_ID","ConfirmDialog","_ref","ref","_ref$open","open","onCancel","onConfirm","className","_ref$dialogTitle","dialogTitle","_ref$dialogContent","dialogContent","_ref$confirmBtnText","confirmBtnText","_ref$cancelBtnText","cancelBtnText","_ref$shouldShowCancel","shouldShowCancelButton","_ref$isLoading","isLoading","confirmationLabel","_useState","confirmed","setConfirmed","isConfirmBlocked","Boolean","handleToggleConfirmed","event","target","checked","handleKeyDown","key","preventDefault","window","addEventListener","removeEventListener","createElement","onClose","disableCloseOnEsc","Title","ContentDivider","Content","lineHeight","color","whitespace","id","onChange","disabled","htmlFor","Actions","variant","style","marginRight","onClick","type","displayName"],"sources":["../../../../src/components/ConfirmDialog/ConfirmDialog.tsx"],"sourcesContent":["import React, { forwardRef, useCallback, useEffect, useState } from \"react\";\n\nimport classnames from \"classnames\";\n\nimport { Button } from \"../Button/Button\";\nimport { Checkbox } from \"../Checkbox\";\nimport { Dialog } from \"../Dialog\";\nimport { StyledConfirmation } from \"./Styles\";\nimport { Body2 } from \"../Typography/Variants/Body2\";\n\nconst CONFIRMATION_CHECKBOX_ID = \"confirm-dialog-confirmation\";\n\nexport interface ConfirmDialogProps {\n open?: boolean;\n onCancel?: () => void;\n onConfirm?: () => void;\n className?: string;\n dialogTitle?: string;\n dialogContent?: React.ReactNode;\n confirmBtnText?: string;\n cancelBtnText?: string;\n shouldShowCancelButton?: boolean;\n isLoading?: boolean;\n confirmationLabel?: string;\n}\n\nexport const ConfirmDialog = forwardRef<HTMLDivElement, ConfirmDialogProps>(\n (\n {\n open = false,\n onCancel,\n onConfirm,\n className,\n dialogTitle = \"Discard changes?\",\n dialogContent = \"All unsaved changes will be lost.\",\n confirmBtnText = \"OK\",\n cancelBtnText = \"Cancel\",\n shouldShowCancelButton = true,\n isLoading = false,\n confirmationLabel,\n },\n ref\n ) => {\n const [confirmed, setConfirmed] = useState(false);\n const isConfirmBlocked = Boolean(confirmationLabel) && !confirmed;\n\n const handleToggleConfirmed = useCallback(\n (event: React.ChangeEvent<HTMLInputElement>) =>\n setConfirmed(event.target.checked),\n []\n );\n\n useEffect(() => {\n if (!open) {\n setConfirmed(false);\n }\n }, [open]);\n\n useEffect(() => {\n const handleKeyDown = (event: KeyboardEvent) => {\n if (event.key === \"Enter\" && onConfirm && !isConfirmBlocked) {\n event.preventDefault();\n onConfirm();\n }\n };\n\n if (open) {\n window.addEventListener(\"keydown\", handleKeyDown);\n }\n\n return () => {\n window.removeEventListener(\"keydown\", handleKeyDown);\n };\n }, [open, onConfirm, isConfirmBlocked]);\n\n return (\n <Dialog\n ref={ref}\n open={open}\n onClose={onCancel}\n className={classnames(\"c-confirm-dialog\", className)}\n disableCloseOnEsc={isLoading}\n >\n <Dialog.Title>{dialogTitle}</Dialog.Title>\n <Dialog.ContentDivider />\n <Dialog.Content>\n <Body2 lineHeight=\"loose\" color=\"secondary\" whitespace=\"pre-line\">\n {dialogContent}\n </Body2>\n {confirmationLabel ? (\n <StyledConfirmation className=\"c-confirm-dialog--confirmation\">\n <Checkbox\n id={CONFIRMATION_CHECKBOX_ID}\n checked={confirmed}\n onChange={handleToggleConfirmed}\n disabled={isLoading}\n />\n <label htmlFor={CONFIRMATION_CHECKBOX_ID}>\n <Body2 color=\"secondary\">{confirmationLabel}</Body2>\n </label>\n </StyledConfirmation>\n ) : null}\n </Dialog.Content>\n <Dialog.ContentDivider />\n <Dialog.Actions>\n <Button\n variant=\"primary\"\n style={{ marginRight: \"12px\" }}\n onClick={onConfirm}\n disabled={isLoading || isConfirmBlocked}\n >\n {confirmBtnText}\n </Button>\n {shouldShowCancelButton ? (\n <Button\n variant=\"secondary\"\n data-action=\"cancel\"\n onClick={onCancel}\n type=\"button\"\n disabled={isLoading}\n >\n {cancelBtnText}\n </Button>\n ) : null}\n </Dialog.Actions>\n </Dialog>\n );\n }\n);\n\nConfirmDialog.displayName = \"ConfirmDialog\";\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"ConfirmDialog.js","names":["React","forwardRef","useCallback","useEffect","useState","classnames","Button","Checkbox","Dialog","StyledConfirmation","Body2","CONFIRMATION_CHECKBOX_ID","ConfirmDialog","_ref","ref","_ref$open","open","onCancel","onConfirm","className","_ref$dialogTitle","dialogTitle","_ref$dialogContent","dialogContent","_ref$confirmBtnText","confirmBtnText","_ref$cancelBtnText","cancelBtnText","_ref$shouldShowCancel","shouldShowCancelButton","_ref$isLoading","isLoading","confirmationLabel","size","height","_useState","confirmed","setConfirmed","isConfirmBlocked","Boolean","handleToggleConfirmed","event","target","checked","handleKeyDown","key","preventDefault","window","addEventListener","removeEventListener","createElement","onClose","disableCloseOnEsc","Title","ContentDivider","Content","lineHeight","color","whitespace","id","onChange","disabled","htmlFor","Actions","variant","onClick","type","displayName"],"sources":["../../../../src/components/ConfirmDialog/ConfirmDialog.tsx"],"sourcesContent":["import React, { forwardRef, useCallback, useEffect, useState } from \"react\";\n\nimport classnames from \"classnames\";\n\nimport { Button } from \"../Button/Button\";\nimport { Checkbox } from \"../Checkbox\";\nimport { Dialog } from \"../Dialog\";\nimport { StyledConfirmation } from \"./Styles\";\nimport { DialogSize } from \"../Dialog/Styles\";\nimport { Body2 } from \"../Typography/Variants/Body2\";\n\nconst CONFIRMATION_CHECKBOX_ID = \"confirm-dialog-confirmation\";\n\nexport interface ConfirmDialogProps {\n open?: boolean;\n onCancel?: () => void;\n onConfirm?: () => void;\n className?: string;\n dialogTitle?: string;\n dialogContent?: React.ReactNode;\n confirmBtnText?: string;\n cancelBtnText?: string;\n shouldShowCancelButton?: boolean;\n isLoading?: boolean;\n confirmationLabel?: string;\n size?: DialogSize;\n height?: string;\n}\n\nexport const ConfirmDialog = forwardRef<HTMLDivElement, ConfirmDialogProps>(\n (\n {\n open = false,\n onCancel,\n onConfirm,\n className,\n dialogTitle = \"Discard changes?\",\n dialogContent = \"All unsaved changes will be lost.\",\n confirmBtnText = \"OK\",\n cancelBtnText = \"Cancel\",\n shouldShowCancelButton = true,\n isLoading = false,\n confirmationLabel,\n size,\n height,\n },\n ref\n ) => {\n const [confirmed, setConfirmed] = useState(false);\n const isConfirmBlocked = Boolean(confirmationLabel) && !confirmed;\n\n const handleToggleConfirmed = useCallback(\n (event: React.ChangeEvent<HTMLInputElement>) =>\n setConfirmed(event.target.checked),\n []\n );\n\n useEffect(() => {\n if (!open) {\n setConfirmed(false);\n }\n }, [open]);\n\n useEffect(() => {\n const handleKeyDown = (event: KeyboardEvent) => {\n if (event.key === \"Enter\" && onConfirm && !isConfirmBlocked) {\n event.preventDefault();\n onConfirm();\n }\n };\n\n if (open) {\n window.addEventListener(\"keydown\", handleKeyDown);\n }\n\n return () => {\n window.removeEventListener(\"keydown\", handleKeyDown);\n };\n }, [open, onConfirm, isConfirmBlocked]);\n\n return (\n <Dialog\n ref={ref}\n open={open}\n onClose={onCancel}\n className={classnames(\"c-confirm-dialog\", className)}\n disableCloseOnEsc={isLoading}\n size={size}\n height={height}\n >\n <Dialog.Title>{dialogTitle}</Dialog.Title>\n <Dialog.ContentDivider />\n <Dialog.Content>\n <Body2 lineHeight=\"loose\" color=\"secondary\" whitespace=\"pre-line\">\n {dialogContent}\n </Body2>\n {confirmationLabel ? (\n <StyledConfirmation className=\"c-confirm-dialog--confirmation\">\n <Checkbox\n id={CONFIRMATION_CHECKBOX_ID}\n checked={confirmed}\n onChange={handleToggleConfirmed}\n disabled={isLoading}\n />\n <label htmlFor={CONFIRMATION_CHECKBOX_ID}>\n <Body2 color=\"secondary\">{confirmationLabel}</Body2>\n </label>\n </StyledConfirmation>\n ) : null}\n </Dialog.Content>\n <Dialog.ContentDivider />\n <Dialog.Actions>\n <Button\n variant=\"primary\"\n onClick={onConfirm}\n disabled={isLoading || isConfirmBlocked}\n >\n {confirmBtnText}\n </Button>\n {shouldShowCancelButton ? (\n <Button\n variant=\"secondary\"\n data-action=\"cancel\"\n onClick={onCancel}\n type=\"button\"\n disabled={isLoading}\n >\n {cancelBtnText}\n </Button>\n ) : null}\n </Dialog.Actions>\n </Dialog>\n );\n }\n);\n\nConfirmDialog.displayName = \"ConfirmDialog\";\n"],"mappings":"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","ignoreList":[]}
@@ -1,4 +1,5 @@
1
1
  import React, { HTMLAttributes, PropsWithChildren } from "react";
2
+ import { DialogSize } from "./Styles";
2
3
  export interface DialogProps extends HTMLAttributes<HTMLDivElement> {
3
4
  open?: boolean;
4
5
  onClose?: () => void;
@@ -7,6 +8,10 @@ export interface DialogProps extends HTMLAttributes<HTMLDivElement> {
7
8
  disableCloseOnEsc?: boolean;
8
9
  animate?: "fade" | "slide";
9
10
  onClickOutside?: (event: any) => void;
11
+ /** Width step. Every step is a max-width; the dialog always fills it when there is room. */
12
+ size?: DialogSize;
13
+ /** "fluid" follows the content. A CSS length ("95%", "600px") pins the height instead. */
14
+ height?: string;
10
15
  }
11
16
  export declare const _Dialog: React.ForwardRefExoticComponent<DialogProps & {
12
17
  children?: React.ReactNode | undefined;
@@ -15,11 +20,11 @@ export declare const Dialog: React.ForwardRefExoticComponent<DialogProps & {
15
20
  children?: React.ReactNode | undefined;
16
21
  } & React.RefAttributes<HTMLDivElement>> & {
17
22
  Title: {
18
- ({ children, className, disableDefaultHeading, ...rest }: PropsWithChildren<import("./DialogTitle").DialogTitleProps>): React.JSX.Element;
23
+ ({ children, className, disableDefaultHeading, onClose, closeLabel, ...rest }: PropsWithChildren<import("./DialogTitle").DialogTitleProps>): React.JSX.Element;
19
24
  displayName: string;
20
25
  };
21
26
  Content: {
22
- ({ className, children, ...rest }: HTMLAttributes<HTMLDivElement>): React.JSX.Element;
27
+ ({ className, children, scroll, ...rest }: import("./DialogContent").DialogContentProps): React.JSX.Element;
23
28
  displayName: string;
24
29
  };
25
30
  ContentDivider: {
@@ -1 +1 @@
1
- {"version":3,"file":"Dialog.d.ts","sourceRoot":"","sources":["../../../../src/components/Dialog/Dialog.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,EAAc,cAAc,EAAE,iBAAiB,EAAE,MAAM,OAAO,CAAC;AAe7E,MAAM,WAAW,WAAY,SAAQ,cAAc,CAAC,cAAc,CAAC;IACjE,IAAI,CAAC,EAAE,OAAO,CAAC;IACf,OAAO,CAAC,EAAE,MAAM,IAAI,CAAC;IACrB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,qBAAqB,CAAC,EAAE,OAAO,CAAC;IAChC,iBAAiB,CAAC,EAAE,OAAO,CAAC;IAC5B,OAAO,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC;IAC3B,cAAc,CAAC,EAAE,CAAC,KAAK,KAAA,KAAK,IAAI,CAAC;CAClC;AAED,eAAO,MAAM,OAAO;;wCAwDnB,CAAC;AAKF,eAAO,MAAM,MAAM;;;;;;;;;;;;;;;;;;;CAKjB,CAAC"}
1
+ {"version":3,"file":"Dialog.d.ts","sourceRoot":"","sources":["../../../../src/components/Dialog/Dialog.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,EAEZ,cAAc,EACd,iBAAiB,EAGlB,MAAM,OAAO,CAAC;AASf,OAAO,EACL,UAAU,EAIX,MAAM,UAAU,CAAC;AAKlB,MAAM,WAAW,WAAY,SAAQ,cAAc,CAAC,cAAc,CAAC;IACjE,IAAI,CAAC,EAAE,OAAO,CAAC;IACf,OAAO,CAAC,EAAE,MAAM,IAAI,CAAC;IACrB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,qBAAqB,CAAC,EAAE,OAAO,CAAC;IAChC,iBAAiB,CAAC,EAAE,OAAO,CAAC;IAC5B,OAAO,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC;IAC3B,cAAc,CAAC,EAAE,CAAC,KAAK,KAAA,KAAK,IAAI,CAAC;IACjC,4FAA4F;IAC5F,IAAI,CAAC,EAAE,UAAU,CAAC;IAClB,0FAA0F;IAC1F,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AA0CD,eAAO,MAAM,OAAO;;wCA0CnB,CAAC;AAKF,eAAO,MAAM,MAAM;;;;;;;;;;;;;;;;;;;CAKjB,CAAC"}
@@ -1,62 +1,79 @@
1
1
  import _extends from "@babel/runtime/helpers/esm/extends";
2
2
  import _objectWithoutPropertiesLoose from "@babel/runtime/helpers/esm/objectWithoutPropertiesLoose";
3
- const _excluded = ["children", "open", "onClose", "className", "enableBackgroundClick", "disableCloseOnEsc", "animate", "onClickOutside"];
4
- import React, { forwardRef } from "react";
3
+ const _excluded = ["children", "open", "onClose", "className", "enableBackgroundClick", "disableCloseOnEsc", "animate", "onClickOutside", "size", "height"];
4
+ import React, { forwardRef, useMemo } from "react";
5
5
  import classnames from "classnames";
6
-
7
- // import { DialogContext } from "./DialogContext";
8
-
9
6
  import { DialogActions } from "./DialogActions";
10
7
  import { DialogContent } from "./DialogContent";
11
8
  import { DialogContentDivider } from "./DialogContentDivider";
9
+ import { DialogContext } from "./DialogContext";
12
10
  import { DialogTitle } from "./DialogTitle";
13
- import { StyledDialog } from "./Styles";
11
+ import { dialogSizes, StyledDialog, StyledDialogViewport } from "./Styles";
14
12
  import { Modal } from "../Modal";
15
13
  import { Fade } from "../Transitions";
16
14
  import { SlideFromTop } from "../Transitions/SlideFromTop";
17
- export const _Dialog = /*#__PURE__*/forwardRef((_ref, ref) => {
18
- let children = _ref.children,
19
- _ref$open = _ref.open,
20
- open = _ref$open === void 0 ? false : _ref$open,
15
+ // Modal only treats a child as a transition when its props already carry `in`, so this element
16
+ // must declare it even though Modal overwrites it on clone.
17
+ const DialogSurface = _ref => {
18
+ let _ref$in = _ref.in,
19
+ inProp = _ref$in === void 0 ? false : _ref$in,
20
+ onEnter = _ref.onEnter,
21
+ onExited = _ref.onExited,
22
+ forceClose = _ref.forceClose,
21
23
  onClose = _ref.onClose,
22
- className = _ref.className,
23
- _ref$enableBackground = _ref.enableBackgroundClick,
24
- enableBackgroundClick = _ref$enableBackground === void 0 ? false : _ref$enableBackground,
25
- _ref$disableCloseOnEs = _ref.disableCloseOnEsc,
26
- disableCloseOnEsc = _ref$disableCloseOnEs === void 0 ? false : _ref$disableCloseOnEs,
27
- _ref$animate = _ref.animate,
28
- animate = _ref$animate === void 0 ? "slide" : _ref$animate,
29
- onClickOutside = _ref.onClickOutside,
30
- rest = _objectWithoutPropertiesLoose(_ref, _excluded);
31
- const animateDialog = () => {
32
- switch (animate) {
33
- case "fade":
34
- return /*#__PURE__*/React.createElement(Fade, {
35
- in: open
36
- }, /*#__PURE__*/React.createElement(StyledDialog, {
37
- className: classnames("c-dialog", className)
38
- }, children));
39
- default:
40
- return /*#__PURE__*/React.createElement(SlideFromTop, {
41
- in: open
42
- }, /*#__PURE__*/React.createElement(StyledDialog, {
43
- className: classnames("c-dialog", className)
44
- }, children));
45
- }
46
- };
47
- return (
48
- /*#__PURE__*/
49
- // <DialogContext.Provider value={{}}>
50
- React.createElement(Modal, _extends({
51
- ref: ref,
52
- open: open,
53
- onClose: onClose,
54
- disableBackgroundClick: !enableBackgroundClick,
55
- disableCloseOnEsc: disableCloseOnEsc,
56
- onClickOutside: onClickOutside
57
- }, rest), animateDialog())
58
- // </DialogContext.Provider>
59
- );
24
+ animate = _ref.animate,
25
+ children = _ref.children;
26
+ const Animation = animate === "fade" ? Fade : SlideFromTop;
27
+ const value = useMemo(() => ({
28
+ requestClose: forceClose,
29
+ onClose
30
+ }), [forceClose, onClose]);
31
+ return /*#__PURE__*/React.createElement(DialogContext.Provider, {
32
+ value: value
33
+ }, /*#__PURE__*/React.createElement(StyledDialogViewport, {
34
+ className: "c-dialog-viewport"
35
+ }, /*#__PURE__*/React.createElement(Animation, {
36
+ in: inProp,
37
+ onEnter: onEnter,
38
+ onExited: onExited
39
+ }, children)));
40
+ };
41
+ DialogSurface.displayName = "DialogSurface";
42
+ export const _Dialog = /*#__PURE__*/forwardRef((_ref2, ref) => {
43
+ var _dialogSizes$size;
44
+ let children = _ref2.children,
45
+ _ref2$open = _ref2.open,
46
+ open = _ref2$open === void 0 ? false : _ref2$open,
47
+ onClose = _ref2.onClose,
48
+ className = _ref2.className,
49
+ _ref2$enableBackgroun = _ref2.enableBackgroundClick,
50
+ enableBackgroundClick = _ref2$enableBackgroun === void 0 ? false : _ref2$enableBackgroun,
51
+ _ref2$disableCloseOnE = _ref2.disableCloseOnEsc,
52
+ disableCloseOnEsc = _ref2$disableCloseOnE === void 0 ? false : _ref2$disableCloseOnE,
53
+ _ref2$animate = _ref2.animate,
54
+ animate = _ref2$animate === void 0 ? "slide" : _ref2$animate,
55
+ onClickOutside = _ref2.onClickOutside,
56
+ _ref2$size = _ref2.size,
57
+ size = _ref2$size === void 0 ? "m" : _ref2$size,
58
+ _ref2$height = _ref2.height,
59
+ height = _ref2$height === void 0 ? "fluid" : _ref2$height,
60
+ rest = _objectWithoutPropertiesLoose(_ref2, _excluded);
61
+ return /*#__PURE__*/React.createElement(Modal, _extends({
62
+ ref: ref,
63
+ open: open,
64
+ onClose: onClose,
65
+ disableBackgroundClick: !enableBackgroundClick,
66
+ disableCloseOnEsc: disableCloseOnEsc,
67
+ onClickOutside: onClickOutside
68
+ }, rest), /*#__PURE__*/React.createElement(DialogSurface, {
69
+ in: open,
70
+ onClose: onClose,
71
+ animate: animate
72
+ }, /*#__PURE__*/React.createElement(StyledDialog, {
73
+ $maxWidth: (_dialogSizes$size = dialogSizes[size]) != null ? _dialogSizes$size : dialogSizes.m,
74
+ $height: height === "fluid" ? undefined : height,
75
+ className: classnames("c-dialog", className)
76
+ }, children)));
60
77
  });
61
78
  _Dialog.displayName = "Dialog";
62
79