@activecollab/components 2.0.435 → 2.0.437

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 (95) 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/Transitions/Fade/Fade.js +11 -2
  20. package/dist/cjs/components/Transitions/Fade/Fade.js.map +1 -1
  21. package/dist/cjs/components/Transitions/SlideFromTop/SlideFromTop.js +46 -30
  22. package/dist/cjs/components/Transitions/SlideFromTop/SlideFromTop.js.map +1 -1
  23. package/dist/cjs/components/Wizard/Step.js +4 -1
  24. package/dist/cjs/components/Wizard/Step.js.map +1 -1
  25. package/dist/cjs/components/Wizard/Wizard.js +14 -2
  26. package/dist/cjs/components/Wizard/Wizard.js.map +1 -1
  27. package/dist/cjs/presentation/shared/ConnectRepositoryDialog.js +0 -3
  28. package/dist/cjs/presentation/shared/ConnectRepositoryDialog.js.map +1 -1
  29. package/dist/cjs/presentation/shared/LinkBranchOrPullRequestDialog.js +0 -3
  30. package/dist/cjs/presentation/shared/LinkBranchOrPullRequestDialog.js.map +1 -1
  31. package/dist/cjs/presentation/shared/TwoFactorDialogs.js +0 -9
  32. package/dist/cjs/presentation/shared/TwoFactorDialogs.js.map +1 -1
  33. package/dist/esm/components/ConfirmDialog/ConfirmDialog.d.ts +3 -0
  34. package/dist/esm/components/ConfirmDialog/ConfirmDialog.d.ts.map +1 -1
  35. package/dist/esm/components/ConfirmDialog/ConfirmDialog.js +6 -5
  36. package/dist/esm/components/ConfirmDialog/ConfirmDialog.js.map +1 -1
  37. package/dist/esm/components/Dialog/Dialog.d.ts +7 -2
  38. package/dist/esm/components/Dialog/Dialog.d.ts.map +1 -1
  39. package/dist/esm/components/Dialog/Dialog.js +65 -48
  40. package/dist/esm/components/Dialog/Dialog.js.map +1 -1
  41. package/dist/esm/components/Dialog/DialogActions.d.ts.map +1 -1
  42. package/dist/esm/components/Dialog/DialogActions.js +10 -5
  43. package/dist/esm/components/Dialog/DialogActions.js.map +1 -1
  44. package/dist/esm/components/Dialog/DialogContent.d.ts +5 -1
  45. package/dist/esm/components/Dialog/DialogContent.d.ts.map +1 -1
  46. package/dist/esm/components/Dialog/DialogContent.js +4 -5
  47. package/dist/esm/components/Dialog/DialogContent.js.map +1 -1
  48. package/dist/esm/components/Dialog/DialogContext.d.ts +11 -1
  49. package/dist/esm/components/Dialog/DialogContext.d.ts.map +1 -1
  50. package/dist/esm/components/Dialog/DialogContext.js +10 -8
  51. package/dist/esm/components/Dialog/DialogContext.js.map +1 -1
  52. package/dist/esm/components/Dialog/DialogTitle.d.ts +4 -1
  53. package/dist/esm/components/Dialog/DialogTitle.d.ts.map +1 -1
  54. package/dist/esm/components/Dialog/DialogTitle.js +20 -6
  55. package/dist/esm/components/Dialog/DialogTitle.js.map +1 -1
  56. package/dist/esm/components/Dialog/Styles.d.ts +19 -2
  57. package/dist/esm/components/Dialog/Styles.d.ts.map +1 -1
  58. package/dist/esm/components/Dialog/Styles.js +47 -11
  59. package/dist/esm/components/Dialog/Styles.js.map +1 -1
  60. package/dist/esm/components/Dialog/index.d.ts +1 -0
  61. package/dist/esm/components/Dialog/index.d.ts.map +1 -1
  62. package/dist/esm/components/Dialog/index.js +1 -0
  63. package/dist/esm/components/Dialog/index.js.map +1 -1
  64. package/dist/esm/components/Modal/Modal.d.ts.map +1 -1
  65. package/dist/esm/components/Modal/Modal.js +3 -2
  66. package/dist/esm/components/Modal/Modal.js.map +1 -1
  67. package/dist/esm/components/Transitions/Fade/Fade.d.ts.map +1 -1
  68. package/dist/esm/components/Transitions/Fade/Fade.js +11 -2
  69. package/dist/esm/components/Transitions/Fade/Fade.js.map +1 -1
  70. package/dist/esm/components/Transitions/SlideFromTop/SlideFromTop.d.ts +2 -0
  71. package/dist/esm/components/Transitions/SlideFromTop/SlideFromTop.d.ts.map +1 -1
  72. package/dist/esm/components/Transitions/SlideFromTop/SlideFromTop.js +46 -30
  73. package/dist/esm/components/Transitions/SlideFromTop/SlideFromTop.js.map +1 -1
  74. package/dist/esm/components/Wizard/Step.d.ts +4 -0
  75. package/dist/esm/components/Wizard/Step.d.ts.map +1 -1
  76. package/dist/esm/components/Wizard/Step.js +4 -1
  77. package/dist/esm/components/Wizard/Step.js.map +1 -1
  78. package/dist/esm/components/Wizard/Wizard.d.ts +3 -0
  79. package/dist/esm/components/Wizard/Wizard.d.ts.map +1 -1
  80. package/dist/esm/components/Wizard/Wizard.js +14 -2
  81. package/dist/esm/components/Wizard/Wizard.js.map +1 -1
  82. package/dist/esm/presentation/shared/ConnectRepositoryDialog.d.ts.map +1 -1
  83. package/dist/esm/presentation/shared/ConnectRepositoryDialog.js +0 -3
  84. package/dist/esm/presentation/shared/ConnectRepositoryDialog.js.map +1 -1
  85. package/dist/esm/presentation/shared/LinkBranchOrPullRequestDialog.d.ts.map +1 -1
  86. package/dist/esm/presentation/shared/LinkBranchOrPullRequestDialog.js +0 -3
  87. package/dist/esm/presentation/shared/LinkBranchOrPullRequestDialog.js.map +1 -1
  88. package/dist/esm/presentation/shared/TwoFactorDialogs.d.ts.map +1 -1
  89. package/dist/esm/presentation/shared/TwoFactorDialogs.js +0 -9
  90. package/dist/esm/presentation/shared/TwoFactorDialogs.js.map +1 -1
  91. package/dist/index.js +257 -116
  92. package/dist/index.js.map +1 -1
  93. package/dist/index.min.js +1 -1
  94. package/dist/index.min.js.map +1 -1
  95. package/package.json +1 -1
@@ -38,7 +38,9 @@ var ConfirmDialog = exports.ConfirmDialog = /*#__PURE__*/(0, _react.forwardRef)(
38
38
  shouldShowCancelButton = _ref$shouldShowCancel === void 0 ? true : _ref$shouldShowCancel,
39
39
  _ref$isLoading = _ref.isLoading,
40
40
  isLoading = _ref$isLoading === void 0 ? false : _ref$isLoading,
41
- confirmationLabel = _ref.confirmationLabel;
41
+ confirmationLabel = _ref.confirmationLabel,
42
+ size = _ref.size,
43
+ height = _ref.height;
42
44
  var _useState = (0, _react.useState)(false),
43
45
  _useState2 = _slicedToArray(_useState, 2),
44
46
  confirmed = _useState2[0],
@@ -71,7 +73,9 @@ var ConfirmDialog = exports.ConfirmDialog = /*#__PURE__*/(0, _react.forwardRef)(
71
73
  open: open,
72
74
  onClose: onCancel,
73
75
  className: (0, _classnames.default)("c-confirm-dialog", className),
74
- disableCloseOnEsc: isLoading
76
+ disableCloseOnEsc: isLoading,
77
+ size: size,
78
+ height: height
75
79
  }, /*#__PURE__*/_react.default.createElement(_Dialog.Dialog.Title, null, dialogTitle), /*#__PURE__*/_react.default.createElement(_Dialog.Dialog.ContentDivider, null), /*#__PURE__*/_react.default.createElement(_Dialog.Dialog.Content, null, /*#__PURE__*/_react.default.createElement(_Body.Body2, {
76
80
  lineHeight: "loose",
77
81
  color: "secondary",
@@ -89,9 +93,6 @@ var ConfirmDialog = exports.ConfirmDialog = /*#__PURE__*/(0, _react.forwardRef)(
89
93
  color: "secondary"
90
94
  }, confirmationLabel))) : null), /*#__PURE__*/_react.default.createElement(_Dialog.Dialog.ContentDivider, null), /*#__PURE__*/_react.default.createElement(_Dialog.Dialog.Actions, null, /*#__PURE__*/_react.default.createElement(_Button.Button, {
91
95
  variant: "primary",
92
- style: {
93
- marginRight: "12px"
94
- },
95
96
  onClick: onConfirm,
96
97
  disabled: isLoading || isConfirmBlocked
97
98
  }, confirmBtnText), shouldShowCancelButton ? /*#__PURE__*/_react.default.createElement(_Button.Button, {
@@ -1 +1 @@
1
- {"version":3,"file":"ConfirmDialog.js","names":["_react","_interopRequireWildcard","require","_classnames","_interopRequireDefault","_Button","_Checkbox","_Dialog","_Styles","_Body","e","__esModule","default","t","WeakMap","r","n","o","i","f","__proto__","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","CONFIRMATION_CHECKBOX_ID","ConfirmDialog","exports","forwardRef","_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","useState","_useState2","confirmed","setConfirmed","isConfirmBlocked","Boolean","handleToggleConfirmed","useCallback","event","target","checked","useEffect","handleKeyDown","key","preventDefault","window","addEventListener","removeEventListener","createElement","Dialog","onClose","classnames","disableCloseOnEsc","Title","ContentDivider","Content","Body2","lineHeight","color","whitespace","StyledConfirmation","Checkbox","id","onChange","disabled","htmlFor","Actions","Button","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","_interopRequireWildcard","require","_classnames","_interopRequireDefault","_Button","_Checkbox","_Dialog","_Styles","_Body","e","__esModule","default","t","WeakMap","r","n","o","i","f","__proto__","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","CONFIRMATION_CHECKBOX_ID","ConfirmDialog","exports","forwardRef","_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","useState","_useState2","confirmed","setConfirmed","isConfirmBlocked","Boolean","handleToggleConfirmed","useCallback","event","target","checked","useEffect","handleKeyDown","key","preventDefault","window","addEventListener","removeEventListener","createElement","Dialog","onClose","classnames","disableCloseOnEsc","Title","ContentDivider","Content","Body2","lineHeight","color","whitespace","StyledConfirmation","Checkbox","id","onChange","disabled","htmlFor","Actions","Button","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":";;;;;;AAAA,IAAAA,MAAA,GAAAC,uBAAA,CAAAC,OAAA;AAEA,IAAAC,WAAA,GAAAC,sBAAA,CAAAF,OAAA;AAEA,IAAAG,OAAA,GAAAH,OAAA;AACA,IAAAI,SAAA,GAAAJ,OAAA;AACA,IAAAK,OAAA,GAAAL,OAAA;AACA,IAAAM,OAAA,GAAAN,OAAA;AAEA,IAAAO,KAAA,GAAAP,OAAA;AAAqD,SAAAE,uBAAAM,CAAA,WAAAA,CAAA,IAAAA,CAAA,CAAAC,UAAA,GAAAD,CAAA,KAAAE,OAAA,EAAAF,CAAA;AAAA,SAAAT,wBAAAS,CAAA,EAAAG,CAAA,6BAAAC,OAAA,MAAAC,CAAA,OAAAD,OAAA,IAAAE,CAAA,OAAAF,OAAA,YAAAb,uBAAA,YAAAA,wBAAAS,CAAA,EAAAG,CAAA,SAAAA,CAAA,IAAAH,CAAA,IAAAA,CAAA,CAAAC,UAAA,SAAAD,CAAA,MAAAO,CAAA,EAAAC,CAAA,EAAAC,CAAA,KAAAC,SAAA,QAAAR,OAAA,EAAAF,CAAA,iBAAAA,CAAA,uBAAAA,CAAA,yBAAAA,CAAA,SAAAS,CAAA,MAAAF,CAAA,GAAAJ,CAAA,GAAAG,CAAA,GAAAD,CAAA,QAAAE,CAAA,CAAAI,GAAA,CAAAX,CAAA,UAAAO,CAAA,CAAAK,GAAA,CAAAZ,CAAA,GAAAO,CAAA,CAAAM,GAAA,CAAAb,CAAA,EAAAS,CAAA,cAAAK,EAAA,IAAAd,CAAA,gBAAAc,EAAA,OAAAC,cAAA,CAAAC,IAAA,CAAAhB,CAAA,EAAAc,EAAA,OAAAN,CAAA,IAAAD,CAAA,GAAAU,MAAA,CAAAC,cAAA,KAAAD,MAAA,CAAAE,wBAAA,CAAAnB,CAAA,EAAAc,EAAA,OAAAN,CAAA,CAAAI,GAAA,IAAAJ,CAAA,CAAAK,GAAA,IAAAN,CAAA,CAAAE,CAAA,EAAAK,EAAA,EAAAN,CAAA,IAAAC,CAAA,CAAAK,EAAA,IAAAd,CAAA,CAAAc,EAAA,WAAAL,CAAA,KAAAT,CAAA,EAAAG,CAAA;AAAA,SAAAiB,eAAAf,CAAA,EAAAL,CAAA,WAAAqB,eAAA,CAAAhB,CAAA,KAAAiB,qBAAA,CAAAjB,CAAA,EAAAL,CAAA,KAAAuB,2BAAA,CAAAlB,CAAA,EAAAL,CAAA,KAAAwB,gBAAA;AAAA,SAAAA,iBAAA,cAAAC,SAAA;AAAA,SAAAF,4BAAAlB,CAAA,EAAAqB,CAAA,QAAArB,CAAA,2BAAAA,CAAA,SAAAsB,iBAAA,CAAAtB,CAAA,EAAAqB,CAAA,OAAAvB,CAAA,MAAAyB,QAAA,CAAAZ,IAAA,CAAAX,CAAA,EAAAwB,KAAA,6BAAA1B,CAAA,IAAAE,CAAA,CAAAyB,WAAA,KAAA3B,CAAA,GAAAE,CAAA,CAAAyB,WAAA,CAAAC,IAAA,aAAA5B,CAAA,cAAAA,CAAA,GAAA6B,KAAA,CAAAC,IAAA,CAAA5B,CAAA,oBAAAF,CAAA,+CAAA+B,IAAA,CAAA/B,CAAA,IAAAwB,iBAAA,CAAAtB,CAAA,EAAAqB,CAAA;AAAA,SAAAC,kBAAAtB,CAAA,EAAAqB,CAAA,aAAAA,CAAA,IAAAA,CAAA,GAAArB,CAAA,CAAA8B,MAAA,MAAAT,CAAA,GAAArB,CAAA,CAAA8B,MAAA,YAAAnC,CAAA,MAAAM,CAAA,GAAA0B,KAAA,CAAAN,CAAA,GAAA1B,CAAA,GAAA0B,CAAA,EAAA1B,CAAA,IAAAM,CAAA,CAAAN,CAAA,IAAAK,CAAA,CAAAL,CAAA,UAAAM,CAAA;AAAA,SAAAgB,sBAAAjB,CAAA,EAAA+B,CAAA,QAAAjC,CAAA,WAAAE,CAAA,gCAAAgC,MAAA,IAAAhC,CAAA,CAAAgC,MAAA,CAAAC,QAAA,KAAAjC,CAAA,4BAAAF,CAAA,QAAAH,CAAA,EAAAM,CAAA,EAAAE,CAAA,EAAA+B,CAAA,EAAAb,CAAA,OAAAjB,CAAA,OAAAF,CAAA,iBAAAC,CAAA,IAAAL,CAAA,GAAAA,CAAA,CAAAa,IAAA,CAAAX,CAAA,GAAAmC,IAAA,QAAAJ,CAAA,QAAAnB,MAAA,CAAAd,CAAA,MAAAA,CAAA,UAAAM,CAAA,uBAAAA,CAAA,IAAAT,CAAA,GAAAQ,CAAA,CAAAQ,IAAA,CAAAb,CAAA,GAAAsC,IAAA,MAAAf,CAAA,CAAAgB,IAAA,CAAA1C,CAAA,CAAA2C,KAAA,GAAAjB,CAAA,CAAAS,MAAA,KAAAC,CAAA,GAAA3B,CAAA,iBAAAJ,CAAA,IAAAE,CAAA,OAAAD,CAAA,GAAAD,CAAA,yBAAAI,CAAA,YAAAN,CAAA,CAAAyC,MAAA,KAAAL,CAAA,GAAApC,CAAA,CAAAyC,MAAA,IAAA3B,MAAA,CAAAsB,CAAA,MAAAA,CAAA,2BAAAhC,CAAA,QAAAD,CAAA,aAAAoB,CAAA;AAAA,SAAAL,gBAAAhB,CAAA,QAAA2B,KAAA,CAAAa,OAAA,CAAAxC,CAAA,UAAAA,CAAA;AAErD,IAAMyC,wBAAwB,GAAG,6BAA6B;AAkBvD,IAAMC,aAAa,GAAAC,OAAA,CAAAD,aAAA,gBAAG,IAAAE,iBAAU,EACrC,UAAAC,IAAA,EAgBEC,GAAG,EACA;EAAA,IAAAC,SAAA,GAAAF,IAAA,CAfDG,IAAI;IAAJA,IAAI,GAAAD,SAAA,cAAG,KAAK,GAAAA,SAAA;IACZE,QAAQ,GAAAJ,IAAA,CAARI,QAAQ;IACRC,SAAS,GAAAL,IAAA,CAATK,SAAS;IACTC,SAAS,GAAAN,IAAA,CAATM,SAAS;IAAAC,gBAAA,GAAAP,IAAA,CACTQ,WAAW;IAAXA,WAAW,GAAAD,gBAAA,cAAG,kBAAkB,GAAAA,gBAAA;IAAAE,kBAAA,GAAAT,IAAA,CAChCU,aAAa;IAAbA,aAAa,GAAAD,kBAAA,cAAG,mCAAmC,GAAAA,kBAAA;IAAAE,mBAAA,GAAAX,IAAA,CACnDY,cAAc;IAAdA,cAAc,GAAAD,mBAAA,cAAG,IAAI,GAAAA,mBAAA;IAAAE,kBAAA,GAAAb,IAAA,CACrBc,aAAa;IAAbA,aAAa,GAAAD,kBAAA,cAAG,QAAQ,GAAAA,kBAAA;IAAAE,qBAAA,GAAAf,IAAA,CACxBgB,sBAAsB;IAAtBA,sBAAsB,GAAAD,qBAAA,cAAG,IAAI,GAAAA,qBAAA;IAAAE,cAAA,GAAAjB,IAAA,CAC7BkB,SAAS;IAATA,SAAS,GAAAD,cAAA,cAAG,KAAK,GAAAA,cAAA;IACjBE,iBAAiB,GAAAnB,IAAA,CAAjBmB,iBAAiB;IACjBC,IAAI,GAAApB,IAAA,CAAJoB,IAAI;IACJC,MAAM,GAAArB,IAAA,CAANqB,MAAM;EAIR,IAAAC,SAAA,GAAkC,IAAAC,eAAQ,EAAC,KAAK,CAAC;IAAAC,UAAA,GAAAtD,cAAA,CAAAoD,SAAA;IAA1CG,SAAS,GAAAD,UAAA;IAAEE,YAAY,GAAAF,UAAA;EAC9B,IAAMG,gBAAgB,GAAGC,OAAO,CAACT,iBAAiB,CAAC,IAAI,CAACM,SAAS;EAEjE,IAAMI,qBAAqB,GAAG,IAAAC,kBAAW,EACvC,UAACC,KAA0C;IAAA,OACzCL,YAAY,CAACK,KAAK,CAACC,MAAM,CAACC,OAAO,CAAC;EAAA,GACpC,EACF,CAAC;EAED,IAAAC,gBAAS,EAAC,YAAM;IACd,IAAI,CAAC/B,IAAI,EAAE;MACTuB,YAAY,CAAC,KAAK,CAAC;IACrB;EACF,CAAC,EAAE,CAACvB,IAAI,CAAC,CAAC;EAEV,IAAA+B,gBAAS,EAAC,YAAM;IACd,IAAMC,aAAa,GAAG,SAAhBA,aAAaA,CAAIJ,KAAoB,EAAK;MAC9C,IAAIA,KAAK,CAACK,GAAG,KAAK,OAAO,IAAI/B,SAAS,IAAI,CAACsB,gBAAgB,EAAE;QAC3DI,KAAK,CAACM,cAAc,CAAC,CAAC;QACtBhC,SAAS,CAAC,CAAC;MACb;IACF,CAAC;IAED,IAAIF,IAAI,EAAE;MACRmC,MAAM,CAACC,gBAAgB,CAAC,SAAS,EAAEJ,aAAa,CAAC;IACnD;IAEA,OAAO,YAAM;MACXG,MAAM,CAACE,mBAAmB,CAAC,SAAS,EAAEL,aAAa,CAAC;IACtD,CAAC;EACH,CAAC,EAAE,CAAChC,IAAI,EAAEE,SAAS,EAAEsB,gBAAgB,CAAC,CAAC;EAEvC,oBACEvF,MAAA,CAAAY,OAAA,CAAAyF,aAAA,CAAC9F,OAAA,CAAA+F,MAAM;IACLzC,GAAG,EAAEA,GAAI;IACTE,IAAI,EAAEA,IAAK;IACXwC,OAAO,EAAEvC,QAAS;IAClBE,SAAS,EAAE,IAAAsC,mBAAU,EAAC,kBAAkB,EAAEtC,SAAS,CAAE;IACrDuC,iBAAiB,EAAE3B,SAAU;IAC7BE,IAAI,EAAEA,IAAK;IACXC,MAAM,EAAEA;EAAO,gBAEfjF,MAAA,CAAAY,OAAA,CAAAyF,aAAA,CAAC9F,OAAA,CAAA+F,MAAM,CAACI,KAAK,QAAEtC,WAA0B,CAAC,eAC1CpE,MAAA,CAAAY,OAAA,CAAAyF,aAAA,CAAC9F,OAAA,CAAA+F,MAAM,CAACK,cAAc,MAAE,CAAC,eACzB3G,MAAA,CAAAY,OAAA,CAAAyF,aAAA,CAAC9F,OAAA,CAAA+F,MAAM,CAACM,OAAO,qBACb5G,MAAA,CAAAY,OAAA,CAAAyF,aAAA,CAAC5F,KAAA,CAAAoG,KAAK;IAACC,UAAU,EAAC,OAAO;IAACC,KAAK,EAAC,WAAW;IAACC,UAAU,EAAC;EAAU,GAC9D1C,aACI,CAAC,EACPS,iBAAiB,gBAChB/E,MAAA,CAAAY,OAAA,CAAAyF,aAAA,CAAC7F,OAAA,CAAAyG,kBAAkB;IAAC/C,SAAS,EAAC;EAAgC,gBAC5DlE,MAAA,CAAAY,OAAA,CAAAyF,aAAA,CAAC/F,SAAA,CAAA4G,QAAQ;IACPC,EAAE,EAAE3D,wBAAyB;IAC7BqC,OAAO,EAAER,SAAU;IACnB+B,QAAQ,EAAE3B,qBAAsB;IAChC4B,QAAQ,EAAEvC;EAAU,CACrB,CAAC,eACF9E,MAAA,CAAAY,OAAA,CAAAyF,aAAA;IAAOiB,OAAO,EAAE9D;EAAyB,gBACvCxD,MAAA,CAAAY,OAAA,CAAAyF,aAAA,CAAC5F,KAAA,CAAAoG,KAAK;IAACE,KAAK,EAAC;EAAW,GAAEhC,iBAAyB,CAC9C,CACW,CAAC,GACnB,IACU,CAAC,eACjB/E,MAAA,CAAAY,OAAA,CAAAyF,aAAA,CAAC9F,OAAA,CAAA+F,MAAM,CAACK,cAAc,MAAE,CAAC,eACzB3G,MAAA,CAAAY,OAAA,CAAAyF,aAAA,CAAC9F,OAAA,CAAA+F,MAAM,CAACiB,OAAO,qBACbvH,MAAA,CAAAY,OAAA,CAAAyF,aAAA,CAAChG,OAAA,CAAAmH,MAAM;IACLC,OAAO,EAAC,SAAS;IACjBC,OAAO,EAAEzD,SAAU;IACnBoD,QAAQ,EAAEvC,SAAS,IAAIS;EAAiB,GAEvCf,cACK,CAAC,EACRI,sBAAsB,gBACrB5E,MAAA,CAAAY,OAAA,CAAAyF,aAAA,CAAChG,OAAA,CAAAmH,MAAM;IACLC,OAAO,EAAC,WAAW;IACnB,eAAY,QAAQ;IACpBC,OAAO,EAAE1D,QAAS;IAClB2D,IAAI,EAAC,QAAQ;IACbN,QAAQ,EAAEvC;EAAU,GAEnBJ,aACK,CAAC,GACP,IACU,CACV,CAAC;AAEb,CACF,CAAC;AAEDjB,aAAa,CAACmE,WAAW,GAAG,eAAe","ignoreList":[]}
@@ -9,60 +9,82 @@ var _classnames = _interopRequireDefault(require("classnames"));
9
9
  var _DialogActions = require("./DialogActions");
10
10
  var _DialogContent = require("./DialogContent");
11
11
  var _DialogContentDivider = require("./DialogContentDivider");
12
+ var _DialogContext = require("./DialogContext");
12
13
  var _DialogTitle = require("./DialogTitle");
13
14
  var _Styles = require("./Styles");
14
15
  var _Modal = require("../Modal");
15
16
  var _Transitions = require("../Transitions");
16
17
  var _SlideFromTop = require("../Transitions/SlideFromTop");
17
- var _excluded = ["children", "open", "onClose", "className", "enableBackgroundClick", "disableCloseOnEsc", "animate", "onClickOutside"]; // import { DialogContext } from "./DialogContext";
18
+ var _excluded = ["children", "open", "onClose", "className", "enableBackgroundClick", "disableCloseOnEsc", "animate", "onClickOutside", "size", "height"];
18
19
  function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
19
20
  function _interopRequireWildcard(e, t) { if ("function" == typeof WeakMap) var r = new WeakMap(), n = new WeakMap(); return (_interopRequireWildcard = function _interopRequireWildcard(e, t) { if (!t && e && e.__esModule) return e; var o, i, f = { __proto__: null, default: e }; if (null === e || "object" != typeof e && "function" != typeof e) return f; if (o = t ? n : r) { if (o.has(e)) return o.get(e); o.set(e, f); } for (var _t in e) "default" !== _t && {}.hasOwnProperty.call(e, _t) && ((i = (o = Object.defineProperty) && Object.getOwnPropertyDescriptor(e, _t)) && (i.get || i.set) ? o(f, _t, i) : f[_t] = e[_t]); return f; })(e, t); }
20
21
  function _extends() { return _extends = Object.assign ? Object.assign.bind() : function (n) { for (var e = 1; e < arguments.length; e++) { var t = arguments[e]; for (var r in t) ({}).hasOwnProperty.call(t, r) && (n[r] = t[r]); } return n; }, _extends.apply(null, arguments); }
21
22
  function _objectWithoutProperties(e, t) { if (null == e) return {}; var o, r, i = _objectWithoutPropertiesLoose(e, t); if (Object.getOwnPropertySymbols) { var n = Object.getOwnPropertySymbols(e); for (r = 0; r < n.length; r++) o = n[r], -1 === t.indexOf(o) && {}.propertyIsEnumerable.call(e, o) && (i[o] = e[o]); } return i; }
22
23
  function _objectWithoutPropertiesLoose(r, e) { if (null == r) return {}; var t = {}; for (var n in r) if ({}.hasOwnProperty.call(r, n)) { if (-1 !== e.indexOf(n)) continue; t[n] = r[n]; } return t; }
23
- var _Dialog = exports._Dialog = /*#__PURE__*/(0, _react.forwardRef)(function (_ref, ref) {
24
- var children = _ref.children,
25
- _ref$open = _ref.open,
26
- open = _ref$open === void 0 ? false : _ref$open,
24
+ // Modal only treats a child as a transition when its props already carry `in`, so this element
25
+ // must declare it even though Modal overwrites it on clone.
26
+ var DialogSurface = function DialogSurface(_ref) {
27
+ var _ref$in = _ref.in,
28
+ inProp = _ref$in === void 0 ? false : _ref$in,
29
+ onEnter = _ref.onEnter,
30
+ onExited = _ref.onExited,
31
+ forceClose = _ref.forceClose,
27
32
  onClose = _ref.onClose,
28
- className = _ref.className,
29
- _ref$enableBackground = _ref.enableBackgroundClick,
30
- enableBackgroundClick = _ref$enableBackground === void 0 ? false : _ref$enableBackground,
31
- _ref$disableCloseOnEs = _ref.disableCloseOnEsc,
32
- disableCloseOnEsc = _ref$disableCloseOnEs === void 0 ? false : _ref$disableCloseOnEs,
33
- _ref$animate = _ref.animate,
34
- animate = _ref$animate === void 0 ? "slide" : _ref$animate,
35
- onClickOutside = _ref.onClickOutside,
36
- rest = _objectWithoutProperties(_ref, _excluded);
37
- var animateDialog = function animateDialog() {
38
- switch (animate) {
39
- case "fade":
40
- return /*#__PURE__*/_react.default.createElement(_Transitions.Fade, {
41
- in: open
42
- }, /*#__PURE__*/_react.default.createElement(_Styles.StyledDialog, {
43
- className: (0, _classnames.default)("c-dialog", className)
44
- }, children));
45
- default:
46
- return /*#__PURE__*/_react.default.createElement(_SlideFromTop.SlideFromTop, {
47
- in: open
48
- }, /*#__PURE__*/_react.default.createElement(_Styles.StyledDialog, {
49
- className: (0, _classnames.default)("c-dialog", className)
50
- }, children));
51
- }
52
- };
53
- return (
54
- /*#__PURE__*/
55
- // <DialogContext.Provider value={{}}>
56
- _react.default.createElement(_Modal.Modal, _extends({
57
- ref: ref,
58
- open: open,
59
- onClose: onClose,
60
- disableBackgroundClick: !enableBackgroundClick,
61
- disableCloseOnEsc: disableCloseOnEsc,
62
- onClickOutside: onClickOutside
63
- }, rest), animateDialog())
64
- // </DialogContext.Provider>
65
- );
33
+ animate = _ref.animate,
34
+ children = _ref.children;
35
+ var Animation = animate === "fade" ? _Transitions.Fade : _SlideFromTop.SlideFromTop;
36
+ var value = (0, _react.useMemo)(function () {
37
+ return {
38
+ requestClose: forceClose,
39
+ onClose
40
+ };
41
+ }, [forceClose, onClose]);
42
+ return /*#__PURE__*/_react.default.createElement(_DialogContext.DialogContext.Provider, {
43
+ value: value
44
+ }, /*#__PURE__*/_react.default.createElement(_Styles.StyledDialogViewport, {
45
+ className: "c-dialog-viewport"
46
+ }, /*#__PURE__*/_react.default.createElement(Animation, {
47
+ in: inProp,
48
+ onEnter: onEnter,
49
+ onExited: onExited
50
+ }, children)));
51
+ };
52
+ DialogSurface.displayName = "DialogSurface";
53
+ var _Dialog = exports._Dialog = /*#__PURE__*/(0, _react.forwardRef)(function (_ref2, ref) {
54
+ var _dialogSizes$size;
55
+ var children = _ref2.children,
56
+ _ref2$open = _ref2.open,
57
+ open = _ref2$open === void 0 ? false : _ref2$open,
58
+ onClose = _ref2.onClose,
59
+ className = _ref2.className,
60
+ _ref2$enableBackgroun = _ref2.enableBackgroundClick,
61
+ enableBackgroundClick = _ref2$enableBackgroun === void 0 ? false : _ref2$enableBackgroun,
62
+ _ref2$disableCloseOnE = _ref2.disableCloseOnEsc,
63
+ disableCloseOnEsc = _ref2$disableCloseOnE === void 0 ? false : _ref2$disableCloseOnE,
64
+ _ref2$animate = _ref2.animate,
65
+ animate = _ref2$animate === void 0 ? "slide" : _ref2$animate,
66
+ onClickOutside = _ref2.onClickOutside,
67
+ _ref2$size = _ref2.size,
68
+ size = _ref2$size === void 0 ? "m" : _ref2$size,
69
+ _ref2$height = _ref2.height,
70
+ height = _ref2$height === void 0 ? "fluid" : _ref2$height,
71
+ rest = _objectWithoutProperties(_ref2, _excluded);
72
+ return /*#__PURE__*/_react.default.createElement(_Modal.Modal, _extends({
73
+ ref: ref,
74
+ open: open,
75
+ onClose: onClose,
76
+ disableBackgroundClick: !enableBackgroundClick,
77
+ disableCloseOnEsc: disableCloseOnEsc,
78
+ onClickOutside: onClickOutside
79
+ }, rest), /*#__PURE__*/_react.default.createElement(DialogSurface, {
80
+ in: open,
81
+ onClose: onClose,
82
+ animate: animate
83
+ }, /*#__PURE__*/_react.default.createElement(_Styles.StyledDialog, {
84
+ $maxWidth: (_dialogSizes$size = _Styles.dialogSizes[size]) !== null && _dialogSizes$size !== void 0 ? _dialogSizes$size : _Styles.dialogSizes.m,
85
+ $height: height === "fluid" ? undefined : height,
86
+ className: (0, _classnames.default)("c-dialog", className)
87
+ }, children)));
66
88
  });
67
89
  _Dialog.displayName = "Dialog";
68
90
 
@@ -1 +1 @@
1
- {"version":3,"file":"Dialog.js","names":["_react","_interopRequireWildcard","require","_classnames","_interopRequireDefault","_DialogActions","_DialogContent","_DialogContentDivider","_DialogTitle","_Styles","_Modal","_Transitions","_SlideFromTop","_excluded","e","__esModule","default","t","WeakMap","r","n","o","i","f","__proto__","has","get","set","_t","hasOwnProperty","call","Object","defineProperty","getOwnPropertyDescriptor","_extends","assign","bind","arguments","length","apply","_objectWithoutProperties","_objectWithoutPropertiesLoose","getOwnPropertySymbols","indexOf","propertyIsEnumerable","_Dialog","exports","forwardRef","_ref","ref","children","_ref$open","open","onClose","className","_ref$enableBackground","enableBackgroundClick","_ref$disableCloseOnEs","disableCloseOnEsc","_ref$animate","animate","onClickOutside","rest","animateDialog","createElement","Fade","in","StyledDialog","classnames","SlideFromTop","Modal","disableBackgroundClick","displayName","Dialog","Title","DialogTitle","Content","DialogContent","ContentDivider","DialogContentDivider","Actions","DialogActions"],"sources":["../../../../src/components/Dialog/Dialog.tsx"],"sourcesContent":["import React, { forwardRef, HTMLAttributes, PropsWithChildren } from \"react\";\n\nimport classnames from \"classnames\";\n\n// import { DialogContext } from \"./DialogContext\";\n\nimport { DialogActions } from \"./DialogActions\";\nimport { DialogContent } from \"./DialogContent\";\nimport { DialogContentDivider } from \"./DialogContentDivider\";\nimport { DialogTitle } from \"./DialogTitle\";\nimport { StyledDialog } from \"./Styles\";\nimport { Modal } from \"../Modal\";\nimport { Fade } from \"../Transitions\";\nimport { SlideFromTop } from \"../Transitions/SlideFromTop\";\n\nexport interface DialogProps extends HTMLAttributes<HTMLDivElement> {\n open?: boolean;\n onClose?: () => void;\n className?: string;\n enableBackgroundClick?: boolean;\n disableCloseOnEsc?: boolean;\n animate?: \"fade\" | \"slide\";\n onClickOutside?: (event) => void;\n}\n\nexport const _Dialog = forwardRef<\n HTMLDivElement,\n PropsWithChildren<DialogProps>\n>(\n (\n {\n children,\n open = false,\n onClose,\n className,\n enableBackgroundClick = false,\n disableCloseOnEsc = false,\n animate = \"slide\",\n onClickOutside,\n ...rest\n },\n ref\n ) => {\n const animateDialog = () => {\n switch (animate) {\n case \"fade\":\n return (\n <Fade in={open}>\n <StyledDialog className={classnames(\"c-dialog\", className)}>\n {children}\n </StyledDialog>\n </Fade>\n );\n default:\n return (\n <SlideFromTop in={open}>\n <StyledDialog className={classnames(\"c-dialog\", className)}>\n {children}\n </StyledDialog>\n </SlideFromTop>\n );\n }\n };\n\n return (\n // <DialogContext.Provider value={{}}>\n\n <Modal\n ref={ref}\n open={open}\n onClose={onClose}\n disableBackgroundClick={!enableBackgroundClick}\n disableCloseOnEsc={disableCloseOnEsc}\n onClickOutside={onClickOutside}\n {...rest}\n >\n {animateDialog()}\n </Modal>\n // </DialogContext.Provider>\n );\n }\n);\n\n_Dialog.displayName = \"Dialog\";\n\n// https://github.com/DefinitelyTyped/DefinitelyTyped/issues/34757\nexport const Dialog = Object.assign({}, _Dialog, {\n Title: DialogTitle,\n Content: DialogContent,\n ContentDivider: DialogContentDivider,\n Actions: DialogActions,\n});\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"Dialog.js","names":["_react","_interopRequireWildcard","require","_classnames","_interopRequireDefault","_DialogActions","_DialogContent","_DialogContentDivider","_DialogContext","_DialogTitle","_Styles","_Modal","_Transitions","_SlideFromTop","_excluded","e","__esModule","default","t","WeakMap","r","n","o","i","f","__proto__","has","get","set","_t","hasOwnProperty","call","Object","defineProperty","getOwnPropertyDescriptor","_extends","assign","bind","arguments","length","apply","_objectWithoutProperties","_objectWithoutPropertiesLoose","getOwnPropertySymbols","indexOf","propertyIsEnumerable","DialogSurface","_ref","_ref$in","in","inProp","onEnter","onExited","forceClose","onClose","animate","children","Animation","Fade","SlideFromTop","value","useMemo","requestClose","createElement","DialogContext","Provider","StyledDialogViewport","className","displayName","_Dialog","exports","forwardRef","_ref2","ref","_dialogSizes$size","_ref2$open","open","_ref2$enableBackgroun","enableBackgroundClick","_ref2$disableCloseOnE","disableCloseOnEsc","_ref2$animate","onClickOutside","_ref2$size","size","_ref2$height","height","rest","Modal","disableBackgroundClick","StyledDialog","$maxWidth","dialogSizes","m","$height","undefined","classnames","Dialog","Title","DialogTitle","Content","DialogContent","ContentDivider","DialogContentDivider","Actions","DialogActions"],"sources":["../../../../src/components/Dialog/Dialog.tsx"],"sourcesContent":["import React, {\n forwardRef,\n HTMLAttributes,\n PropsWithChildren,\n ReactElement,\n useMemo,\n} from \"react\";\n\nimport classnames from \"classnames\";\n\nimport { DialogActions } from \"./DialogActions\";\nimport { DialogContent } from \"./DialogContent\";\nimport { DialogContentDivider } from \"./DialogContentDivider\";\nimport { DialogContext } from \"./DialogContext\";\nimport { DialogTitle } from \"./DialogTitle\";\nimport {\n DialogSize,\n dialogSizes,\n StyledDialog,\n StyledDialogViewport,\n} from \"./Styles\";\nimport { Modal } from \"../Modal\";\nimport { Fade } from \"../Transitions\";\nimport { SlideFromTop } from \"../Transitions/SlideFromTop\";\n\nexport interface DialogProps extends HTMLAttributes<HTMLDivElement> {\n open?: boolean;\n onClose?: () => void;\n className?: string;\n enableBackgroundClick?: boolean;\n disableCloseOnEsc?: boolean;\n animate?: \"fade\" | \"slide\";\n onClickOutside?: (event) => void;\n /** Width step. Every step is a max-width; the dialog always fills it when there is room. */\n size?: DialogSize;\n /** \"fluid\" follows the content. A CSS length (\"95%\", \"600px\") pins the height instead. */\n height?: string;\n}\n\ninterface DialogSurfaceProps {\n in?: boolean;\n onEnter?: () => void;\n onExited?: () => void;\n forceClose?: () => void;\n onClose?: () => void;\n animate: \"fade\" | \"slide\";\n children: ReactElement;\n}\n\n// Modal only treats a child as a transition when its props already carry `in`, so this element\n// must declare it even though Modal overwrites it on clone.\nconst DialogSurface = ({\n in: inProp = false,\n onEnter,\n onExited,\n forceClose,\n onClose,\n animate,\n children,\n}: DialogSurfaceProps) => {\n const Animation = animate === \"fade\" ? Fade : SlideFromTop;\n const value = useMemo(\n () => ({ requestClose: forceClose, onClose }),\n [forceClose, onClose]\n );\n\n return (\n <DialogContext.Provider value={value}>\n <StyledDialogViewport className=\"c-dialog-viewport\">\n <Animation in={inProp} onEnter={onEnter} onExited={onExited}>\n {children}\n </Animation>\n </StyledDialogViewport>\n </DialogContext.Provider>\n );\n};\n\nDialogSurface.displayName = \"DialogSurface\";\n\nexport const _Dialog = forwardRef<\n HTMLDivElement,\n PropsWithChildren<DialogProps>\n>(\n (\n {\n children,\n open = false,\n onClose,\n className,\n enableBackgroundClick = false,\n disableCloseOnEsc = false,\n animate = \"slide\",\n onClickOutside,\n size = \"m\",\n height = \"fluid\",\n ...rest\n },\n ref\n ) => {\n return (\n <Modal\n ref={ref}\n open={open}\n onClose={onClose}\n disableBackgroundClick={!enableBackgroundClick}\n disableCloseOnEsc={disableCloseOnEsc}\n onClickOutside={onClickOutside}\n {...rest}\n >\n <DialogSurface in={open} onClose={onClose} animate={animate}>\n <StyledDialog\n $maxWidth={dialogSizes[size] ?? dialogSizes.m}\n $height={height === \"fluid\" ? undefined : height}\n className={classnames(\"c-dialog\", className)}\n >\n {children}\n </StyledDialog>\n </DialogSurface>\n </Modal>\n );\n }\n);\n\n_Dialog.displayName = \"Dialog\";\n\n// https://github.com/DefinitelyTyped/DefinitelyTyped/issues/34757\nexport const Dialog = Object.assign({}, _Dialog, {\n Title: DialogTitle,\n Content: DialogContent,\n ContentDivider: DialogContentDivider,\n Actions: DialogActions,\n});\n"],"mappings":"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","ignoreList":[]}
@@ -4,25 +4,33 @@ Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
6
  exports.DialogActions = void 0;
7
- var _react = _interopRequireDefault(require("react"));
7
+ var _react = _interopRequireWildcard(require("react"));
8
8
  var _classnames = _interopRequireDefault(require("classnames"));
9
+ var _DialogContext = require("./DialogContext");
9
10
  var _Styles = require("./Styles");
10
11
  var _excluded = ["className", "children"];
11
12
  function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
13
+ function _interopRequireWildcard(e, t) { if ("function" == typeof WeakMap) var r = new WeakMap(), n = new WeakMap(); return (_interopRequireWildcard = function _interopRequireWildcard(e, t) { if (!t && e && e.__esModule) return e; var o, i, f = { __proto__: null, default: e }; if (null === e || "object" != typeof e && "function" != typeof e) return f; if (o = t ? n : r) { if (o.has(e)) return o.get(e); o.set(e, f); } for (var _t in e) "default" !== _t && {}.hasOwnProperty.call(e, _t) && ((i = (o = Object.defineProperty) && Object.getOwnPropertyDescriptor(e, _t)) && (i.get || i.set) ? o(f, _t, i) : f[_t] = e[_t]); return f; })(e, t); }
12
14
  function _extends() { return _extends = Object.assign ? Object.assign.bind() : function (n) { for (var e = 1; e < arguments.length; e++) { var t = arguments[e]; for (var r in t) ({}).hasOwnProperty.call(t, r) && (n[r] = t[r]); } return n; }, _extends.apply(null, arguments); }
13
15
  function _objectWithoutProperties(e, t) { if (null == e) return {}; var o, r, i = _objectWithoutPropertiesLoose(e, t); if (Object.getOwnPropertySymbols) { var n = Object.getOwnPropertySymbols(e); for (r = 0; r < n.length; r++) o = n[r], -1 === t.indexOf(o) && {}.propertyIsEnumerable.call(e, o) && (i[o] = e[o]); } return i; }
14
16
  function _objectWithoutPropertiesLoose(r, e) { if (null == r) return {}; var t = {}; for (var n in r) if ({}.hasOwnProperty.call(r, n)) { if (-1 !== e.indexOf(n)) continue; t[n] = r[n]; } return t; }
15
- // import { useDialogContext } from "./DialogContext";
16
-
17
17
  var DialogActions = exports.DialogActions = function DialogActions(_ref) {
18
18
  var className = _ref.className,
19
19
  children = _ref.children,
20
20
  rest = _objectWithoutProperties(_ref, _excluded);
21
- // useDialogContext();
21
+ var dialog = (0, _DialogContext.useDialogContext)();
22
22
 
23
+ // A footer button that does nothing but close gets the same path as clicking the overlay, so the
24
+ // exit transition runs before the caller unmounts the dialog. Matching on identity leaves a
25
+ // button that does anything else alone.
26
+ var wired = dialog !== null && dialog !== void 0 && dialog.requestClose && dialog !== null && dialog !== void 0 && dialog.onClose ? _react.Children.map(children, function (child) {
27
+ return /*#__PURE__*/(0, _react.isValidElement)(child) && child.props.onClick === dialog.onClose ? /*#__PURE__*/(0, _react.cloneElement)(child, {
28
+ onClick: dialog.requestClose
29
+ }) : child;
30
+ }) : children;
23
31
  return /*#__PURE__*/_react.default.createElement(_Styles.StyledDialogActions, _extends({
24
32
  className: (0, _classnames.default)("c-dialog-actions", className)
25
- }, rest), children);
33
+ }, rest), wired);
26
34
  };
27
35
  DialogActions.displayName = "DialogActions";
28
36
  //# sourceMappingURL=DialogActions.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"DialogActions.js","names":["_react","_interopRequireDefault","require","_classnames","_Styles","_excluded","e","__esModule","default","_extends","Object","assign","bind","n","arguments","length","t","r","hasOwnProperty","call","apply","_objectWithoutProperties","o","i","_objectWithoutPropertiesLoose","getOwnPropertySymbols","indexOf","propertyIsEnumerable","DialogActions","exports","_ref","className","children","rest","createElement","StyledDialogActions","classnames","displayName"],"sources":["../../../../src/components/Dialog/DialogActions.tsx"],"sourcesContent":["import React, { HTMLAttributes } from \"react\";\n\nimport classnames from \"classnames\";\n\nimport { StyledDialogActions } from \"./Styles\";\n// import { useDialogContext } from \"./DialogContext\";\n\nexport const DialogActions = ({\n className,\n children,\n ...rest\n}: HTMLAttributes<HTMLDivElement>) => {\n // useDialogContext();\n\n return (\n <StyledDialogActions\n className={classnames(\"c-dialog-actions\", className)}\n {...rest}\n >\n {children}\n </StyledDialogActions>\n );\n};\n\nDialogActions.displayName = \"DialogActions\";\n"],"mappings":";;;;;;AAAA,IAAAA,MAAA,GAAAC,sBAAA,CAAAC,OAAA;AAEA,IAAAC,WAAA,GAAAF,sBAAA,CAAAC,OAAA;AAEA,IAAAE,OAAA,GAAAF,OAAA;AAA+C,IAAAG,SAAA;AAAA,SAAAJ,uBAAAK,CAAA,WAAAA,CAAA,IAAAA,CAAA,CAAAC,UAAA,GAAAD,CAAA,KAAAE,OAAA,EAAAF,CAAA;AAAA,SAAAG,SAAA,WAAAA,QAAA,GAAAC,MAAA,CAAAC,MAAA,GAAAD,MAAA,CAAAC,MAAA,CAAAC,IAAA,eAAAC,CAAA,aAAAP,CAAA,MAAAA,CAAA,GAAAQ,SAAA,CAAAC,MAAA,EAAAT,CAAA,UAAAU,CAAA,GAAAF,SAAA,CAAAR,CAAA,YAAAW,CAAA,IAAAD,CAAA,OAAAE,cAAA,CAAAC,IAAA,CAAAH,CAAA,EAAAC,CAAA,MAAAJ,CAAA,CAAAI,CAAA,IAAAD,CAAA,CAAAC,CAAA,aAAAJ,CAAA,KAAAJ,QAAA,CAAAW,KAAA,OAAAN,SAAA;AAAA,SAAAO,yBAAAf,CAAA,EAAAU,CAAA,gBAAAV,CAAA,iBAAAgB,CAAA,EAAAL,CAAA,EAAAM,CAAA,GAAAC,6BAAA,CAAAlB,CAAA,EAAAU,CAAA,OAAAN,MAAA,CAAAe,qBAAA,QAAAZ,CAAA,GAAAH,MAAA,CAAAe,qBAAA,CAAAnB,CAAA,QAAAW,CAAA,MAAAA,CAAA,GAAAJ,CAAA,CAAAE,MAAA,EAAAE,CAAA,IAAAK,CAAA,GAAAT,CAAA,CAAAI,CAAA,UAAAD,CAAA,CAAAU,OAAA,CAAAJ,CAAA,QAAAK,oBAAA,CAAAR,IAAA,CAAAb,CAAA,EAAAgB,CAAA,MAAAC,CAAA,CAAAD,CAAA,IAAAhB,CAAA,CAAAgB,CAAA,aAAAC,CAAA;AAAA,SAAAC,8BAAAP,CAAA,EAAAX,CAAA,gBAAAW,CAAA,iBAAAD,CAAA,gBAAAH,CAAA,IAAAI,CAAA,SAAAC,cAAA,CAAAC,IAAA,CAAAF,CAAA,EAAAJ,CAAA,gBAAAP,CAAA,CAAAoB,OAAA,CAAAb,CAAA,aAAAG,CAAA,CAAAH,CAAA,IAAAI,CAAA,CAAAJ,CAAA,YAAAG,CAAA;AAC/C;;AAEO,IAAMY,aAAa,GAAAC,OAAA,CAAAD,aAAA,GAAG,SAAhBA,aAAaA,CAAAE,IAAA,EAIY;EAAA,IAHpCC,SAAS,GAAAD,IAAA,CAATC,SAAS;IACTC,QAAQ,GAAAF,IAAA,CAARE,QAAQ;IACLC,IAAI,GAAAZ,wBAAA,CAAAS,IAAA,EAAAzB,SAAA;EAEP;;EAEA,oBACEL,MAAA,CAAAQ,OAAA,CAAA0B,aAAA,CAAC9B,OAAA,CAAA+B,mBAAmB,EAAA1B,QAAA;IAClBsB,SAAS,EAAE,IAAAK,mBAAU,EAAC,kBAAkB,EAAEL,SAAS;EAAE,GACjDE,IAAI,GAEPD,QACkB,CAAC;AAE1B,CAAC;AAEDJ,aAAa,CAACS,WAAW,GAAG,eAAe","ignoreList":[]}
1
+ {"version":3,"file":"DialogActions.js","names":["_react","_interopRequireWildcard","require","_classnames","_interopRequireDefault","_DialogContext","_Styles","_excluded","e","__esModule","default","t","WeakMap","r","n","o","i","f","__proto__","has","get","set","_t","hasOwnProperty","call","Object","defineProperty","getOwnPropertyDescriptor","_extends","assign","bind","arguments","length","apply","_objectWithoutProperties","_objectWithoutPropertiesLoose","getOwnPropertySymbols","indexOf","propertyIsEnumerable","DialogActions","exports","_ref","className","children","rest","dialog","useDialogContext","wired","requestClose","onClose","Children","map","child","isValidElement","props","onClick","cloneElement","createElement","StyledDialogActions","classnames","displayName"],"sources":["../../../../src/components/Dialog/DialogActions.tsx"],"sourcesContent":["import React, {\n Children,\n cloneElement,\n HTMLAttributes,\n isValidElement,\n} from \"react\";\n\nimport classnames from \"classnames\";\n\nimport { useDialogContext } from \"./DialogContext\";\nimport { StyledDialogActions } from \"./Styles\";\n\nexport const DialogActions = ({\n className,\n children,\n ...rest\n}: HTMLAttributes<HTMLDivElement>) => {\n const dialog = useDialogContext();\n\n // A footer button that does nothing but close gets the same path as clicking the overlay, so the\n // exit transition runs before the caller unmounts the dialog. Matching on identity leaves a\n // button that does anything else alone.\n const wired =\n dialog?.requestClose && dialog?.onClose\n ? Children.map(children, (child) =>\n isValidElement(child) && child.props.onClick === dialog.onClose\n ? cloneElement(child, { onClick: dialog.requestClose })\n : child\n )\n : children;\n\n return (\n <StyledDialogActions\n className={classnames(\"c-dialog-actions\", className)}\n {...rest}\n >\n {wired}\n </StyledDialogActions>\n );\n};\n\nDialogActions.displayName = \"DialogActions\";\n"],"mappings":"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","ignoreList":[]}
@@ -7,20 +7,19 @@ exports.DialogContent = void 0;
7
7
  var _react = _interopRequireDefault(require("react"));
8
8
  var _classnames = _interopRequireDefault(require("classnames"));
9
9
  var _Styles = require("./Styles");
10
- var _excluded = ["className", "children"];
10
+ var _excluded = ["className", "children", "scroll"];
11
11
  function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
12
12
  function _extends() { return _extends = Object.assign ? Object.assign.bind() : function (n) { for (var e = 1; e < arguments.length; e++) { var t = arguments[e]; for (var r in t) ({}).hasOwnProperty.call(t, r) && (n[r] = t[r]); } return n; }, _extends.apply(null, arguments); }
13
13
  function _objectWithoutProperties(e, t) { if (null == e) return {}; var o, r, i = _objectWithoutPropertiesLoose(e, t); if (Object.getOwnPropertySymbols) { var n = Object.getOwnPropertySymbols(e); for (r = 0; r < n.length; r++) o = n[r], -1 === t.indexOf(o) && {}.propertyIsEnumerable.call(e, o) && (i[o] = e[o]); } return i; }
14
14
  function _objectWithoutPropertiesLoose(r, e) { if (null == r) return {}; var t = {}; for (var n in r) if ({}.hasOwnProperty.call(r, n)) { if (-1 !== e.indexOf(n)) continue; t[n] = r[n]; } return t; }
15
- // import { useDialogContext } from "./DialogContext";
16
-
17
15
  var DialogContent = exports.DialogContent = function DialogContent(_ref) {
18
16
  var className = _ref.className,
19
17
  children = _ref.children,
18
+ _ref$scroll = _ref.scroll,
19
+ scroll = _ref$scroll === void 0 ? true : _ref$scroll,
20
20
  rest = _objectWithoutProperties(_ref, _excluded);
21
- // useDialogContext();
22
-
23
21
  return /*#__PURE__*/_react.default.createElement(_Styles.StyledDialogContent, _extends({
22
+ $scroll: scroll,
24
23
  className: (0, _classnames.default)("c-dialog-content", className)
25
24
  }, rest), children);
26
25
  };
@@ -1 +1 @@
1
- {"version":3,"file":"DialogContent.js","names":["_react","_interopRequireDefault","require","_classnames","_Styles","_excluded","e","__esModule","default","_extends","Object","assign","bind","n","arguments","length","t","r","hasOwnProperty","call","apply","_objectWithoutProperties","o","i","_objectWithoutPropertiesLoose","getOwnPropertySymbols","indexOf","propertyIsEnumerable","DialogContent","exports","_ref","className","children","rest","createElement","StyledDialogContent","classnames","displayName"],"sources":["../../../../src/components/Dialog/DialogContent.tsx"],"sourcesContent":["import React, { HTMLAttributes } from \"react\";\n\nimport classnames from \"classnames\";\n\nimport { StyledDialogContent } from \"./Styles\";\n// import { useDialogContext } from \"./DialogContext\";\n\nexport const DialogContent = ({\n className,\n children,\n ...rest\n}: HTMLAttributes<HTMLDivElement>) => {\n // useDialogContext();\n\n return (\n <StyledDialogContent\n className={classnames(\"c-dialog-content\", className)}\n {...rest}\n >\n {children}\n </StyledDialogContent>\n );\n};\n\nDialogContent.displayName = \"DialogContent\";\n"],"mappings":";;;;;;AAAA,IAAAA,MAAA,GAAAC,sBAAA,CAAAC,OAAA;AAEA,IAAAC,WAAA,GAAAF,sBAAA,CAAAC,OAAA;AAEA,IAAAE,OAAA,GAAAF,OAAA;AAA+C,IAAAG,SAAA;AAAA,SAAAJ,uBAAAK,CAAA,WAAAA,CAAA,IAAAA,CAAA,CAAAC,UAAA,GAAAD,CAAA,KAAAE,OAAA,EAAAF,CAAA;AAAA,SAAAG,SAAA,WAAAA,QAAA,GAAAC,MAAA,CAAAC,MAAA,GAAAD,MAAA,CAAAC,MAAA,CAAAC,IAAA,eAAAC,CAAA,aAAAP,CAAA,MAAAA,CAAA,GAAAQ,SAAA,CAAAC,MAAA,EAAAT,CAAA,UAAAU,CAAA,GAAAF,SAAA,CAAAR,CAAA,YAAAW,CAAA,IAAAD,CAAA,OAAAE,cAAA,CAAAC,IAAA,CAAAH,CAAA,EAAAC,CAAA,MAAAJ,CAAA,CAAAI,CAAA,IAAAD,CAAA,CAAAC,CAAA,aAAAJ,CAAA,KAAAJ,QAAA,CAAAW,KAAA,OAAAN,SAAA;AAAA,SAAAO,yBAAAf,CAAA,EAAAU,CAAA,gBAAAV,CAAA,iBAAAgB,CAAA,EAAAL,CAAA,EAAAM,CAAA,GAAAC,6BAAA,CAAAlB,CAAA,EAAAU,CAAA,OAAAN,MAAA,CAAAe,qBAAA,QAAAZ,CAAA,GAAAH,MAAA,CAAAe,qBAAA,CAAAnB,CAAA,QAAAW,CAAA,MAAAA,CAAA,GAAAJ,CAAA,CAAAE,MAAA,EAAAE,CAAA,IAAAK,CAAA,GAAAT,CAAA,CAAAI,CAAA,UAAAD,CAAA,CAAAU,OAAA,CAAAJ,CAAA,QAAAK,oBAAA,CAAAR,IAAA,CAAAb,CAAA,EAAAgB,CAAA,MAAAC,CAAA,CAAAD,CAAA,IAAAhB,CAAA,CAAAgB,CAAA,aAAAC,CAAA;AAAA,SAAAC,8BAAAP,CAAA,EAAAX,CAAA,gBAAAW,CAAA,iBAAAD,CAAA,gBAAAH,CAAA,IAAAI,CAAA,SAAAC,cAAA,CAAAC,IAAA,CAAAF,CAAA,EAAAJ,CAAA,gBAAAP,CAAA,CAAAoB,OAAA,CAAAb,CAAA,aAAAG,CAAA,CAAAH,CAAA,IAAAI,CAAA,CAAAJ,CAAA,YAAAG,CAAA;AAC/C;;AAEO,IAAMY,aAAa,GAAAC,OAAA,CAAAD,aAAA,GAAG,SAAhBA,aAAaA,CAAAE,IAAA,EAIY;EAAA,IAHpCC,SAAS,GAAAD,IAAA,CAATC,SAAS;IACTC,QAAQ,GAAAF,IAAA,CAARE,QAAQ;IACLC,IAAI,GAAAZ,wBAAA,CAAAS,IAAA,EAAAzB,SAAA;EAEP;;EAEA,oBACEL,MAAA,CAAAQ,OAAA,CAAA0B,aAAA,CAAC9B,OAAA,CAAA+B,mBAAmB,EAAA1B,QAAA;IAClBsB,SAAS,EAAE,IAAAK,mBAAU,EAAC,kBAAkB,EAAEL,SAAS;EAAE,GACjDE,IAAI,GAEPD,QACkB,CAAC;AAE1B,CAAC;AAEDJ,aAAa,CAACS,WAAW,GAAG,eAAe","ignoreList":[]}
1
+ {"version":3,"file":"DialogContent.js","names":["_react","_interopRequireDefault","require","_classnames","_Styles","_excluded","e","__esModule","default","_extends","Object","assign","bind","n","arguments","length","t","r","hasOwnProperty","call","apply","_objectWithoutProperties","o","i","_objectWithoutPropertiesLoose","getOwnPropertySymbols","indexOf","propertyIsEnumerable","DialogContent","exports","_ref","className","children","_ref$scroll","scroll","rest","createElement","StyledDialogContent","$scroll","classnames","displayName"],"sources":["../../../../src/components/Dialog/DialogContent.tsx"],"sourcesContent":["import React, { HTMLAttributes } from \"react\";\n\nimport classnames from \"classnames\";\n\nimport { StyledDialogContent } from \"./Styles\";\n\nexport interface DialogContentProps extends HTMLAttributes<HTMLDivElement> {\n /** Turn off when the content runs its own scroll container. */\n scroll?: boolean;\n}\n\nexport const DialogContent = ({\n className,\n children,\n scroll = true,\n ...rest\n}: DialogContentProps) => {\n return (\n <StyledDialogContent\n $scroll={scroll}\n className={classnames(\"c-dialog-content\", className)}\n {...rest}\n >\n {children}\n </StyledDialogContent>\n );\n};\n\nDialogContent.displayName = \"DialogContent\";\n"],"mappings":";;;;;;AAAA,IAAAA,MAAA,GAAAC,sBAAA,CAAAC,OAAA;AAEA,IAAAC,WAAA,GAAAF,sBAAA,CAAAC,OAAA;AAEA,IAAAE,OAAA,GAAAF,OAAA;AAA+C,IAAAG,SAAA;AAAA,SAAAJ,uBAAAK,CAAA,WAAAA,CAAA,IAAAA,CAAA,CAAAC,UAAA,GAAAD,CAAA,KAAAE,OAAA,EAAAF,CAAA;AAAA,SAAAG,SAAA,WAAAA,QAAA,GAAAC,MAAA,CAAAC,MAAA,GAAAD,MAAA,CAAAC,MAAA,CAAAC,IAAA,eAAAC,CAAA,aAAAP,CAAA,MAAAA,CAAA,GAAAQ,SAAA,CAAAC,MAAA,EAAAT,CAAA,UAAAU,CAAA,GAAAF,SAAA,CAAAR,CAAA,YAAAW,CAAA,IAAAD,CAAA,OAAAE,cAAA,CAAAC,IAAA,CAAAH,CAAA,EAAAC,CAAA,MAAAJ,CAAA,CAAAI,CAAA,IAAAD,CAAA,CAAAC,CAAA,aAAAJ,CAAA,KAAAJ,QAAA,CAAAW,KAAA,OAAAN,SAAA;AAAA,SAAAO,yBAAAf,CAAA,EAAAU,CAAA,gBAAAV,CAAA,iBAAAgB,CAAA,EAAAL,CAAA,EAAAM,CAAA,GAAAC,6BAAA,CAAAlB,CAAA,EAAAU,CAAA,OAAAN,MAAA,CAAAe,qBAAA,QAAAZ,CAAA,GAAAH,MAAA,CAAAe,qBAAA,CAAAnB,CAAA,QAAAW,CAAA,MAAAA,CAAA,GAAAJ,CAAA,CAAAE,MAAA,EAAAE,CAAA,IAAAK,CAAA,GAAAT,CAAA,CAAAI,CAAA,UAAAD,CAAA,CAAAU,OAAA,CAAAJ,CAAA,QAAAK,oBAAA,CAAAR,IAAA,CAAAb,CAAA,EAAAgB,CAAA,MAAAC,CAAA,CAAAD,CAAA,IAAAhB,CAAA,CAAAgB,CAAA,aAAAC,CAAA;AAAA,SAAAC,8BAAAP,CAAA,EAAAX,CAAA,gBAAAW,CAAA,iBAAAD,CAAA,gBAAAH,CAAA,IAAAI,CAAA,SAAAC,cAAA,CAAAC,IAAA,CAAAF,CAAA,EAAAJ,CAAA,gBAAAP,CAAA,CAAAoB,OAAA,CAAAb,CAAA,aAAAG,CAAA,CAAAH,CAAA,IAAAI,CAAA,CAAAJ,CAAA,YAAAG,CAAA;AAOxC,IAAMY,aAAa,GAAAC,OAAA,CAAAD,aAAA,GAAG,SAAhBA,aAAaA,CAAAE,IAAA,EAKA;EAAA,IAJxBC,SAAS,GAAAD,IAAA,CAATC,SAAS;IACTC,QAAQ,GAAAF,IAAA,CAARE,QAAQ;IAAAC,WAAA,GAAAH,IAAA,CACRI,MAAM;IAANA,MAAM,GAAAD,WAAA,cAAG,IAAI,GAAAA,WAAA;IACVE,IAAI,GAAAd,wBAAA,CAAAS,IAAA,EAAAzB,SAAA;EAEP,oBACEL,MAAA,CAAAQ,OAAA,CAAA4B,aAAA,CAAChC,OAAA,CAAAiC,mBAAmB,EAAA5B,QAAA;IAClB6B,OAAO,EAAEJ,MAAO;IAChBH,SAAS,EAAE,IAAAQ,mBAAU,EAAC,kBAAkB,EAAER,SAAS;EAAE,GACjDI,IAAI,GAEPH,QACkB,CAAC;AAE1B,CAAC;AAEDJ,aAAa,CAACY,WAAW,GAAG,eAAe","ignoreList":[]}
@@ -3,16 +3,23 @@
3
3
  Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
- exports.useDialogContext = exports.DialogContext = void 0;
6
+ exports.useDialogContext = exports.useDialogClose = exports.DialogContext = void 0;
7
7
  var _react = require("react");
8
- // eslint-disable-next-line @typescript-eslint/no-empty-interface
9
-
10
8
  var DialogContext = exports.DialogContext = /*#__PURE__*/(0, _react.createContext)(null);
11
9
  var useDialogContext = exports.useDialogContext = function useDialogContext() {
10
+ return (0, _react.useContext)(DialogContext);
11
+ };
12
+
13
+ /**
14
+ * Closes the dialog the way clicking the overlay does: the exit transition runs first, and the
15
+ * dialog's own onClose fires once it finishes. Use it for a Cancel button instead of calling the
16
+ * parent's close handler, which would unmount the dialog before it can animate out.
17
+ */
18
+ var useDialogClose = exports.useDialogClose = function useDialogClose(fallback) {
19
+ var _ref, _context$requestClose;
12
20
  var context = (0, _react.useContext)(DialogContext);
13
- if (!context) {
14
- throw new Error("Child components of Dialog can not be rendered outside the Dialog component!");
15
- }
16
- return context;
21
+ return (_ref = (_context$requestClose = context === null || context === void 0 ? void 0 : context.requestClose) !== null && _context$requestClose !== void 0 ? _context$requestClose : fallback) !== null && _ref !== void 0 ? _ref : function () {
22
+ return undefined;
23
+ };
17
24
  };
18
25
  //# sourceMappingURL=DialogContext.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"DialogContext.js","names":["_react","require","DialogContext","exports","createContext","useDialogContext","context","useContext","Error"],"sources":["../../../../src/components/Dialog/DialogContext.tsx"],"sourcesContent":["import { createContext, useContext } from \"react\";\n\n// eslint-disable-next-line @typescript-eslint/no-empty-interface\nexport interface DialogContextProps {}\n\nexport const DialogContext = createContext<DialogContextProps | null>(null);\n\nexport const useDialogContext = () => {\n const context = useContext(DialogContext);\n\n if (!context) {\n throw new Error(\n \"Child components of Dialog can not be rendered outside the Dialog component!\"\n );\n }\n\n return context;\n};\n"],"mappings":";;;;;;AAAA,IAAAA,MAAA,GAAAC,OAAA;AAEA;;AAGO,IAAMC,aAAa,GAAAC,OAAA,CAAAD,aAAA,gBAAG,IAAAE,oBAAa,EAA4B,IAAI,CAAC;AAEpE,IAAMC,gBAAgB,GAAAF,OAAA,CAAAE,gBAAA,GAAG,SAAnBA,gBAAgBA,CAAA,EAAS;EACpC,IAAMC,OAAO,GAAG,IAAAC,iBAAU,EAACL,aAAa,CAAC;EAEzC,IAAI,CAACI,OAAO,EAAE;IACZ,MAAM,IAAIE,KAAK,CACb,8EACF,CAAC;EACH;EAEA,OAAOF,OAAO;AAChB,CAAC","ignoreList":[]}
1
+ {"version":3,"file":"DialogContext.js","names":["_react","require","DialogContext","exports","createContext","useDialogContext","useContext","useDialogClose","fallback","_ref","_context$requestClose","context","requestClose","undefined"],"sources":["../../../../src/components/Dialog/DialogContext.tsx"],"sourcesContent":["import { createContext, useContext } from \"react\";\n\nexport interface DialogContextProps {\n /** Starts the closing transition. The dialog's own onClose runs once it finishes. */\n requestClose?: () => void;\n /** The handler the dialog was given, used to recognise a button that only closes. */\n onClose?: () => void;\n}\n\nexport const DialogContext = createContext<DialogContextProps | null>(null);\n\nexport const useDialogContext = () => useContext(DialogContext);\n\n/**\n * Closes the dialog the way clicking the overlay does: the exit transition runs first, and the\n * dialog's own onClose fires once it finishes. Use it for a Cancel button instead of calling the\n * parent's close handler, which would unmount the dialog before it can animate out.\n */\nexport const useDialogClose = (fallback?: () => void) => {\n const context = useContext(DialogContext);\n\n return context?.requestClose ?? fallback ?? (() => undefined);\n};\n"],"mappings":";;;;;;AAAA,IAAAA,MAAA,GAAAC,OAAA;AASO,IAAMC,aAAa,GAAAC,OAAA,CAAAD,aAAA,gBAAG,IAAAE,oBAAa,EAA4B,IAAI,CAAC;AAEpE,IAAMC,gBAAgB,GAAAF,OAAA,CAAAE,gBAAA,GAAG,SAAnBA,gBAAgBA,CAAA;EAAA,OAAS,IAAAC,iBAAU,EAACJ,aAAa,CAAC;AAAA;;AAE/D;AACA;AACA;AACA;AACA;AACO,IAAMK,cAAc,GAAAJ,OAAA,CAAAI,cAAA,GAAG,SAAjBA,cAAcA,CAAIC,QAAqB,EAAK;EAAA,IAAAC,IAAA,EAAAC,qBAAA;EACvD,IAAMC,OAAO,GAAG,IAAAL,iBAAU,EAACJ,aAAa,CAAC;EAEzC,QAAAO,IAAA,IAAAC,qBAAA,GAAOC,OAAO,aAAPA,OAAO,uBAAPA,OAAO,CAAEC,YAAY,cAAAF,qBAAA,cAAAA,qBAAA,GAAIF,QAAQ,cAAAC,IAAA,cAAAA,IAAA,GAAK;IAAA,OAAMI,SAAS;EAAA;AAC9D,CAAC","ignoreList":[]}
@@ -6,26 +6,40 @@ Object.defineProperty(exports, "__esModule", {
6
6
  exports.DialogTitle = void 0;
7
7
  var _react = _interopRequireDefault(require("react"));
8
8
  var _classnames = _interopRequireDefault(require("classnames"));
9
+ var _DialogContext = require("./DialogContext");
9
10
  var _Styles = require("./Styles");
11
+ var _IconButton = require("../IconButton");
12
+ var _Icons = require("../Icons");
10
13
  var _Header = require("../Typography/Variants/Header3");
11
- var _excluded = ["children", "className", "disableDefaultHeading"];
14
+ var _excluded = ["children", "className", "disableDefaultHeading", "onClose", "closeLabel"];
12
15
  function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
13
16
  function _extends() { return _extends = Object.assign ? Object.assign.bind() : function (n) { for (var e = 1; e < arguments.length; e++) { var t = arguments[e]; for (var r in t) ({}).hasOwnProperty.call(t, r) && (n[r] = t[r]); } return n; }, _extends.apply(null, arguments); }
14
17
  function _objectWithoutProperties(e, t) { if (null == e) return {}; var o, r, i = _objectWithoutPropertiesLoose(e, t); if (Object.getOwnPropertySymbols) { var n = Object.getOwnPropertySymbols(e); for (r = 0; r < n.length; r++) o = n[r], -1 === t.indexOf(o) && {}.propertyIsEnumerable.call(e, o) && (i[o] = e[o]); } return i; }
15
18
  function _objectWithoutPropertiesLoose(r, e) { if (null == r) return {}; var t = {}; for (var n in r) if ({}.hasOwnProperty.call(r, n)) { if (-1 !== e.indexOf(n)) continue; t[n] = r[n]; } return t; }
16
- // import { useDialogContext } from "./DialogContext";
17
-
18
19
  var DialogTitle = exports.DialogTitle = function DialogTitle(_ref) {
20
+ var _dialog$requestClose;
19
21
  var children = _ref.children,
20
22
  className = _ref.className,
21
23
  _ref$disableDefaultHe = _ref.disableDefaultHeading,
22
24
  disableDefaultHeading = _ref$disableDefaultHe === void 0 ? false : _ref$disableDefaultHe,
25
+ onClose = _ref.onClose,
26
+ _ref$closeLabel = _ref.closeLabel,
27
+ closeLabel = _ref$closeLabel === void 0 ? "Close" : _ref$closeLabel,
23
28
  rest = _objectWithoutProperties(_ref, _excluded);
24
- // useDialogContext();
29
+ var dialog = (0, _DialogContext.useDialogContext)();
30
+ var heading = disableDefaultHeading ? children : /*#__PURE__*/_react.default.createElement(_Header.Header3, null, children);
25
31
 
32
+ // Closing through the dialog lets the exit transition run; the caller's onClose fires once it
33
+ // finishes. Falling back keeps a title used outside a dialog working.
34
+ var handleClose = (_dialog$requestClose = dialog === null || dialog === void 0 ? void 0 : dialog.requestClose) !== null && _dialog$requestClose !== void 0 ? _dialog$requestClose : onClose;
26
35
  return /*#__PURE__*/_react.default.createElement(_Styles.StyledDialogTitle, _extends({
27
36
  className: (0, _classnames.default)("c-dialog-title-wrapper", className)
28
- }, rest), disableDefaultHeading ? children : /*#__PURE__*/_react.default.createElement(_Header.Header3, null, children));
37
+ }, rest), onClose ? /*#__PURE__*/_react.default.createElement(_Styles.StyledDialogTitleBar, null, heading, /*#__PURE__*/_react.default.createElement(_Styles.StyledDialogTitleClose, null, /*#__PURE__*/_react.default.createElement(_IconButton.IconButton, {
38
+ type: "button",
39
+ variant: "text gray",
40
+ "aria-label": closeLabel,
41
+ onClick: handleClose
42
+ }, /*#__PURE__*/_react.default.createElement(_Icons.CancelCrossIcon, null)))) : heading);
29
43
  };
30
44
  DialogTitle.displayName = "DialogTitle";
31
45
  //# sourceMappingURL=DialogTitle.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"DialogTitle.js","names":["_react","_interopRequireDefault","require","_classnames","_Styles","_Header","_excluded","e","__esModule","default","_extends","Object","assign","bind","n","arguments","length","t","r","hasOwnProperty","call","apply","_objectWithoutProperties","o","i","_objectWithoutPropertiesLoose","getOwnPropertySymbols","indexOf","propertyIsEnumerable","DialogTitle","exports","_ref","children","className","_ref$disableDefaultHe","disableDefaultHeading","rest","createElement","StyledDialogTitle","classnames","Header3","displayName"],"sources":["../../../../src/components/Dialog/DialogTitle.tsx"],"sourcesContent":["import React, { PropsWithChildren } from \"react\";\n\nimport classnames from \"classnames\";\n\nimport { StyledDialogTitle } from \"./Styles\";\nimport { Header3 } from \"../Typography/Variants/Header3\";\n// import { useDialogContext } from \"./DialogContext\";\n\nexport interface DialogTitleProps {\n className?: string;\n disableDefaultHeading?: boolean;\n}\n\nexport const DialogTitle = ({\n children,\n className,\n disableDefaultHeading = false,\n ...rest\n}: PropsWithChildren<DialogTitleProps>) => {\n // useDialogContext();\n\n return (\n <StyledDialogTitle\n className={classnames(\"c-dialog-title-wrapper\", className)}\n {...rest}\n >\n {disableDefaultHeading ? children : <Header3>{children}</Header3>}\n </StyledDialogTitle>\n );\n};\n\nDialogTitle.displayName = \"DialogTitle\";\n"],"mappings":";;;;;;AAAA,IAAAA,MAAA,GAAAC,sBAAA,CAAAC,OAAA;AAEA,IAAAC,WAAA,GAAAF,sBAAA,CAAAC,OAAA;AAEA,IAAAE,OAAA,GAAAF,OAAA;AACA,IAAAG,OAAA,GAAAH,OAAA;AAAyD,IAAAI,SAAA;AAAA,SAAAL,uBAAAM,CAAA,WAAAA,CAAA,IAAAA,CAAA,CAAAC,UAAA,GAAAD,CAAA,KAAAE,OAAA,EAAAF,CAAA;AAAA,SAAAG,SAAA,WAAAA,QAAA,GAAAC,MAAA,CAAAC,MAAA,GAAAD,MAAA,CAAAC,MAAA,CAAAC,IAAA,eAAAC,CAAA,aAAAP,CAAA,MAAAA,CAAA,GAAAQ,SAAA,CAAAC,MAAA,EAAAT,CAAA,UAAAU,CAAA,GAAAF,SAAA,CAAAR,CAAA,YAAAW,CAAA,IAAAD,CAAA,OAAAE,cAAA,CAAAC,IAAA,CAAAH,CAAA,EAAAC,CAAA,MAAAJ,CAAA,CAAAI,CAAA,IAAAD,CAAA,CAAAC,CAAA,aAAAJ,CAAA,KAAAJ,QAAA,CAAAW,KAAA,OAAAN,SAAA;AAAA,SAAAO,yBAAAf,CAAA,EAAAU,CAAA,gBAAAV,CAAA,iBAAAgB,CAAA,EAAAL,CAAA,EAAAM,CAAA,GAAAC,6BAAA,CAAAlB,CAAA,EAAAU,CAAA,OAAAN,MAAA,CAAAe,qBAAA,QAAAZ,CAAA,GAAAH,MAAA,CAAAe,qBAAA,CAAAnB,CAAA,QAAAW,CAAA,MAAAA,CAAA,GAAAJ,CAAA,CAAAE,MAAA,EAAAE,CAAA,IAAAK,CAAA,GAAAT,CAAA,CAAAI,CAAA,UAAAD,CAAA,CAAAU,OAAA,CAAAJ,CAAA,QAAAK,oBAAA,CAAAR,IAAA,CAAAb,CAAA,EAAAgB,CAAA,MAAAC,CAAA,CAAAD,CAAA,IAAAhB,CAAA,CAAAgB,CAAA,aAAAC,CAAA;AAAA,SAAAC,8BAAAP,CAAA,EAAAX,CAAA,gBAAAW,CAAA,iBAAAD,CAAA,gBAAAH,CAAA,IAAAI,CAAA,SAAAC,cAAA,CAAAC,IAAA,CAAAF,CAAA,EAAAJ,CAAA,gBAAAP,CAAA,CAAAoB,OAAA,CAAAb,CAAA,aAAAG,CAAA,CAAAH,CAAA,IAAAI,CAAA,CAAAJ,CAAA,YAAAG,CAAA;AACzD;;AAOO,IAAMY,WAAW,GAAAC,OAAA,CAAAD,WAAA,GAAG,SAAdA,WAAWA,CAAAE,IAAA,EAKmB;EAAA,IAJzCC,QAAQ,GAAAD,IAAA,CAARC,QAAQ;IACRC,SAAS,GAAAF,IAAA,CAATE,SAAS;IAAAC,qBAAA,GAAAH,IAAA,CACTI,qBAAqB;IAArBA,qBAAqB,GAAAD,qBAAA,cAAG,KAAK,GAAAA,qBAAA;IAC1BE,IAAI,GAAAd,wBAAA,CAAAS,IAAA,EAAAzB,SAAA;EAEP;;EAEA,oBACEN,MAAA,CAAAS,OAAA,CAAA4B,aAAA,CAACjC,OAAA,CAAAkC,iBAAiB,EAAA5B,QAAA;IAChBuB,SAAS,EAAE,IAAAM,mBAAU,EAAC,wBAAwB,EAAEN,SAAS;EAAE,GACvDG,IAAI,GAEPD,qBAAqB,GAAGH,QAAQ,gBAAGhC,MAAA,CAAAS,OAAA,CAAA4B,aAAA,CAAChC,OAAA,CAAAmC,OAAO,QAAER,QAAkB,CAC/C,CAAC;AAExB,CAAC;AAEDH,WAAW,CAACY,WAAW,GAAG,aAAa","ignoreList":[]}
1
+ {"version":3,"file":"DialogTitle.js","names":["_react","_interopRequireDefault","require","_classnames","_DialogContext","_Styles","_IconButton","_Icons","_Header","_excluded","e","__esModule","default","_extends","Object","assign","bind","n","arguments","length","t","r","hasOwnProperty","call","apply","_objectWithoutProperties","o","i","_objectWithoutPropertiesLoose","getOwnPropertySymbols","indexOf","propertyIsEnumerable","DialogTitle","exports","_ref","_dialog$requestClose","children","className","_ref$disableDefaultHe","disableDefaultHeading","onClose","_ref$closeLabel","closeLabel","rest","dialog","useDialogContext","heading","createElement","Header3","handleClose","requestClose","StyledDialogTitle","classnames","StyledDialogTitleBar","StyledDialogTitleClose","IconButton","type","variant","onClick","CancelCrossIcon","displayName"],"sources":["../../../../src/components/Dialog/DialogTitle.tsx"],"sourcesContent":["import React, { PropsWithChildren } from \"react\";\n\nimport classnames from \"classnames\";\n\nimport { useDialogContext } from \"./DialogContext\";\nimport {\n StyledDialogTitle,\n StyledDialogTitleBar,\n StyledDialogTitleClose,\n} from \"./Styles\";\nimport { IconButton } from \"../IconButton\";\nimport { CancelCrossIcon } from \"../Icons\";\nimport { Header3 } from \"../Typography/Variants/Header3\";\n\nexport interface DialogTitleProps {\n className?: string;\n disableDefaultHeading?: boolean;\n /** Draws a close button next to the heading. */\n onClose?: () => void;\n closeLabel?: string;\n}\n\nexport const DialogTitle = ({\n children,\n className,\n disableDefaultHeading = false,\n onClose,\n closeLabel = \"Close\",\n ...rest\n}: PropsWithChildren<DialogTitleProps>) => {\n const dialog = useDialogContext();\n const heading = disableDefaultHeading ? (\n children\n ) : (\n <Header3>{children}</Header3>\n );\n\n // Closing through the dialog lets the exit transition run; the caller's onClose fires once it\n // finishes. Falling back keeps a title used outside a dialog working.\n const handleClose = dialog?.requestClose ?? onClose;\n\n return (\n <StyledDialogTitle\n className={classnames(\"c-dialog-title-wrapper\", className)}\n {...rest}\n >\n {onClose ? (\n <StyledDialogTitleBar>\n {heading}\n <StyledDialogTitleClose>\n <IconButton\n type=\"button\"\n variant=\"text gray\"\n aria-label={closeLabel}\n onClick={handleClose}\n >\n <CancelCrossIcon />\n </IconButton>\n </StyledDialogTitleClose>\n </StyledDialogTitleBar>\n ) : (\n heading\n )}\n </StyledDialogTitle>\n );\n};\n\nDialogTitle.displayName = \"DialogTitle\";\n"],"mappings":"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","ignoreList":[]}