@elliemae/ds-modal-slide 3.25.0-rc.1 → 3.26.0-next.2

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 (39) hide show
  1. package/dist/cjs/DSModalSlide.js +61 -109
  2. package/dist/cjs/DSModalSlide.js.map +3 -3
  3. package/dist/cjs/DSModalSlideDefinitions.js +58 -0
  4. package/dist/cjs/DSModalSlideDefinitions.js.map +7 -0
  5. package/dist/cjs/components/Footer.js +32 -69
  6. package/dist/cjs/components/Footer.js.map +2 -2
  7. package/dist/cjs/components/Header.js +23 -44
  8. package/dist/cjs/components/Header.js.map +3 -3
  9. package/dist/cjs/index.js.map +1 -1
  10. package/dist/cjs/react-desc-prop-types.js +150 -0
  11. package/dist/cjs/react-desc-prop-types.js.map +7 -0
  12. package/dist/cjs/styled.js +223 -0
  13. package/dist/cjs/styled.js.map +7 -0
  14. package/dist/esm/DSModalSlide.js +69 -110
  15. package/dist/esm/DSModalSlide.js.map +3 -3
  16. package/dist/esm/DSModalSlideDefinitions.js +28 -0
  17. package/dist/esm/DSModalSlideDefinitions.js.map +7 -0
  18. package/dist/esm/components/Footer.js +33 -70
  19. package/dist/esm/components/Footer.js.map +2 -2
  20. package/dist/esm/components/Header.js +31 -45
  21. package/dist/esm/components/Header.js.map +3 -3
  22. package/dist/esm/index.js.map +1 -1
  23. package/dist/esm/react-desc-prop-types.js +120 -0
  24. package/dist/esm/react-desc-prop-types.js.map +7 -0
  25. package/dist/esm/styled.js +193 -0
  26. package/dist/esm/styled.js.map +7 -0
  27. package/dist/types/DSModalSlide.d.ts +3 -36
  28. package/dist/types/DSModalSlideDefinitions.d.ts +19 -0
  29. package/dist/types/components/Footer.d.ts +3 -50
  30. package/dist/types/components/Header.d.ts +3 -21
  31. package/dist/types/index.d.ts +1 -0
  32. package/dist/types/react-desc-prop-types.d.ts +64 -0
  33. package/dist/types/styled.d.ts +43 -0
  34. package/package.json +10 -9
  35. package/dist/cjs/components/blocks.js +0 -66
  36. package/dist/cjs/components/blocks.js.map +0 -7
  37. package/dist/esm/components/blocks.js +0 -36
  38. package/dist/esm/components/blocks.js.map +0 -7
  39. package/dist/types/components/blocks.d.ts +0 -11
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../../../scripts/build/transpile/react-shim.js", "../../src/DSModalSlide.tsx"],
4
- "sourcesContent": ["import * as React from 'react';\nexport { React };\n", "/* eslint-disable max-statements */\n/* eslint-disable max-lines */\nimport React, { useState, useEffect, useCallback, useMemo } from 'react';\nimport { PropTypes, describe, useGetGlobalAttributes } from '@elliemae/ds-props-helpers';\nimport { debounce } from 'lodash';\nimport ReactDOM from 'react-dom';\nimport { useTheme, styled } from '@elliemae/ds-system';\nimport { Grid } from '@elliemae/ds-grid';\nimport DSSeparator from '@elliemae/ds-separator';\nimport { Wrapper, Overlay, Content, ActualContent } from './components/blocks.js';\nimport ModalHeader from './components/Header.js';\nimport ModalFooter from './components/Footer.js';\n\nconst StyledWrapper = styled(Grid)`\n overflow: auto;\n &:focus,\n &:focus-visible {\n outline: 1px solid ${({ theme }) => theme.colors.brand['600']};\n outline-offset: -1px;\n }\n`;\n// js engine and css engine can't be guaranteed to be in sync due to how they run on different threads in the browsers\n// this means that in some edge-cases react may have \"out-dated\" information like \"isMoving\" in this case\n// this can cause some animation frame to have the animation \"after\" end but before react has updated the state\n// if the css animation is not configured to stay in the end state,\n// in those edge-cases,\n// the animation will \"jump\" back to the start and cause a flicker\n// this is the fix for that, it's an hack because the component is still css classname based\n// when we re-do the modal slide, we should integrate this as the styled component css itself instead of this extra wrapper\nconst ModalSlideAnimationFix = styled.div`\n .em-ds-modal-slide__overlay--disappearing,\n .em-ds-modal-slide__content--disappearing {\n animation-fill-mode: forwards;\n }\n`;\n// eslint-disable-next-line complexity\nconst DSModalSlide = (props) => {\n const {\n isOpen = false,\n children,\n getContainer,\n centered = false,\n fullWidth = false,\n header = null,\n footer = null,\n fadeOut = 1500,\n fadeIn = 1500,\n overrideHeight = false,\n innerRef = null,\n } = props;\n const [isMoving, setMoving] = useState(false);\n const [show, setShow] = useState(isOpen);\n const [width, setWidth] = useState(50);\n const [height, setHeight] = useState('100%');\n const theme = useTheme();\n const contentRows = [...(header ? ['auto', '1px'] : []), '1fr', ...(footer ? ['1px', theme.space.m] : [])];\n const globalAttrs = useGetGlobalAttributes(props);\n const updateShow = useCallback(() => {\n if (fullWidth) setWidth(100);\n else setWidth(50);\n if (isOpen !== show) {\n setMoving(true);\n if (isOpen) {\n setShow(isOpen);\n }\n }\n }, [isOpen, fullWidth, isMoving]);\n\n useEffect(updateShow, [isOpen, fullWidth]);\n\n const container = getContainer();\n\n const handleHeight = useCallback(() => {\n const newHeight =\n overrideHeight && container.scrollHeight > container.getBoundingClientRect().height\n ? container.scrollHeight\n : container.getBoundingClientRect().height;\n setHeight(newHeight);\n }, [container, overrideHeight]);\n\n const onChangeParent = useMemo(() => debounce(handleHeight, 300, { leading: true }), [handleHeight]);\n\n useEffect(() => {\n const resizeObserver = new ResizeObserver(() => onChangeParent());\n if (container) {\n resizeObserver.observe(container);\n if (!container.style.position) {\n container.style.position = 'relative';\n }\n onChangeParent();\n }\n return () => {\n if (container) resizeObserver.unobserve(container);\n };\n }, [container, onChangeParent]);\n\n if (!show) return null;\n if (!container) return null;\n\n const handleAnimationEnd = () => {\n setMoving(false);\n if (!isOpen) setShow(isOpen);\n };\n\n return ReactDOM.createPortal(\n <ModalSlideAnimationFix>\n <Wrapper\n {...globalAttrs}\n classProps={{\n show: isOpen,\n centered,\n }}\n style={{\n '--height': height,\n '--fade-in': fadeIn,\n '--fade-out': fadeOut,\n '--width': width,\n left: 0,\n }}\n >\n <Overlay\n classProps={{\n show: isOpen,\n }}\n >\n <Content\n onAnimationEnd={handleAnimationEnd}\n classProps={{\n show: isOpen,\n }}\n >\n <Grid\n style={{\n height: '100%',\n width: '100%',\n maxHeight: '100%',\n overflow: 'hidden',\n '-webkit-backface-visibility': 'hidden',\n 'backface-visibility': 'hidden',\n '-webkit-transform-style': 'preserve-3d',\n }}\n rows={contentRows}\n data-testid=\"ds-modal-slide\"\n >\n {header && React.cloneElement(header, { fullWidth })}\n {header && <DSSeparator position=\"initial\" type=\"non-form\" />}\n <Grid style={{ overflow: 'hidden' }}>\n <StyledWrapper innerRef={innerRef} tabIndex={0} role=\"contentinfo\">\n <ActualContent>{children}</ActualContent>\n </StyledWrapper>\n </Grid>\n {footer && <DSSeparator position=\"initial\" type=\"non-form\" />}\n {footer}\n </Grid>\n </Content>\n </Overlay>\n </Wrapper>\n </ModalSlideAnimationFix>,\n container,\n );\n};\n\nconst props = {\n /**\n * If the modal slide is centered or not\n */\n centered: PropTypes.bool.description('If the modal slide is centered or not'),\n /**\n * If the modal slide is visible or not\n */\n isOpen: PropTypes.bool.description('If the modal slide is visible or not'),\n /**\n * Main content of the modal\n */\n children: PropTypes.oneOfType([PropTypes.element, PropTypes.string, PropTypes.any]).isRequired.description(\n 'Main content of the modal',\n ),\n /**\n * If the modal slide takes the full width or not\n */\n fullWidth: PropTypes.bool.description('If the modal slide takes the full width or not'),\n /**\n * If the modal slide has a header, only available for full width option\n */\n header: PropTypes.element.description('If the modal slide has a header, only available for full width option'),\n /**\n * Ratio of fade out\n */\n fadeOut: PropTypes.number.description('Ratio of fade out'),\n /**\n * Ratio of fade in\n */\n fadeIn: PropTypes.number.description('Ratio of fade in'),\n /**\n * Override the panel height to scroll height of the container\n */\n overrideHeight: PropTypes.bool.description('Override the panel height to scroll height of the container'),\n};\n\nDSModalSlide.propTypes = props;\nDSModalSlide.displayName = 'DSModalSlide';\nconst DSModalSlideWithSchema = describe(DSModalSlide);\nDSModalSlideWithSchema.propTypes = props;\n\nexport { ModalHeader, ModalFooter, DSModalSlide, DSModalSlideWithSchema };\n\nexport default DSModalSlide;\n"],
5
- "mappings": "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",
6
- "names": ["React", "props"]
4
+ "sourcesContent": ["import * as React from 'react';\nexport { React };\n", "import React, { useState, useEffect, useCallback, useMemo } from 'react';\nimport { describe, useGetGlobalAttributes, useMemoMergePropsWithDefault } from '@elliemae/ds-props-helpers';\nimport { debounce } from 'lodash';\nimport ReactDOM from 'react-dom';\nimport { useTheme, styled } from '@elliemae/ds-system';\nimport { useOwnerProps } from '@elliemae/ds-utilities';\nimport { Grid } from '@elliemae/ds-grid';\nimport DSSeparator from '@elliemae/ds-separator';\nimport ModalHeader from './components/Header.js';\nimport ModalFooter from './components/Footer.js';\nimport { defaultProps, DSModalSlidePropTypesSchema, type DSModalSlideT } from './react-desc-prop-types.js';\nimport {\n StyledActualContent,\n StyledContent,\n StyledModalWrapper,\n StyledOverlay,\n StyledContentWrapper,\n StyledGridContent,\n} from './styled.js';\nimport { DSModalSlideName } from './DSModalSlideDefinitions.js';\n\n// js engine and css engine can't be guaranteed to be in sync due to how they run on different threads in the browsers\n// this means that in some edge-cases react may have \"out-dated\" information like \"isMoving\" in this case\n// this can cause some animation frame to have the animation \"after\" end but before react has updated the state\n// if the css animation is not configured to stay in the end state,\n// in those edge-cases,\n// the animation will \"jump\" back to the start and cause a flicker\n// this is the fix for that, it's an hack because the component is still css classname based\n// when we re-do the modal slide, we should integrate this as the styled component css itself instead of this extra wrapper\nconst ModalSlideAnimationFix = styled.div`\n .em-ds-modal-slide__overlay--disappearing,\n .em-ds-modal-slide__content--disappearing {\n animation-fill-mode: forwards;\n }\n`;\nconst DSModalSlide = (props: DSModalSlideT.Props) => {\n const propsWithDefault = useMemoMergePropsWithDefault<DSModalSlideT.InternalProps>(props, defaultProps);\n const { isOpen, children, getContainer, fullWidth, header, footer, fadeOut, fadeIn, overrideHeight, innerRef } =\n propsWithDefault;\n const [, setMoving] = useState(false);\n const [show, setShow] = useState(isOpen);\n const [width, setWidth] = useState(50);\n const [height, setHeight] = useState<string | number>('100%');\n const theme = useTheme();\n const contentRows = [...(header ? ['auto', '1px'] : []), '1fr', ...(footer ? ['1px', theme.space.m] : [])];\n const globalAttrs = useGetGlobalAttributes(props);\n const updateShow = useCallback(() => {\n if (fullWidth) setWidth(100);\n else setWidth(50);\n if (isOpen !== show) {\n setMoving(true);\n if (isOpen) {\n setShow(isOpen);\n }\n }\n }, [fullWidth, isOpen, show]);\n const { getOwnerProps, getOwnerPropsArguments } = useOwnerProps(propsWithDefault);\n\n useEffect(updateShow, [updateShow]);\n\n const container = getContainer();\n\n const handleHeight = useCallback(() => {\n const newHeight =\n overrideHeight && container.scrollHeight > container.getBoundingClientRect().height\n ? container.scrollHeight\n : container.getBoundingClientRect().height;\n setHeight(newHeight);\n }, [container, overrideHeight]);\n\n const onChangeParent = useMemo(() => debounce(handleHeight, 300, { leading: true }), [handleHeight]);\n\n useEffect(() => {\n const resizeObserver = new ResizeObserver(() => onChangeParent());\n if (container) {\n resizeObserver.observe(container);\n if (!container.style.position) {\n container.style.position = 'relative';\n }\n onChangeParent();\n }\n return () => {\n if (container) resizeObserver.unobserve(container);\n };\n }, [container, onChangeParent]);\n\n if (!show) return null;\n if (!container) return null;\n\n const handleAnimationEnd = () => {\n setMoving(false);\n if (!isOpen) setShow(isOpen);\n };\n\n return ReactDOM.createPortal(\n <ModalSlideAnimationFix>\n <StyledModalWrapper\n className=\"em-ds-modal-slide__wrapper\"\n {...globalAttrs}\n height={height}\n getOwnerProps={getOwnerProps}\n getOwnerPropsArguments={getOwnerPropsArguments}\n >\n <StyledOverlay\n className={`em-ds-modal-slide__overlay ${\n !isOpen ? 'em-ds-modal-slide__overlay--disappearing' : 'em-ds-modal-slide__overlay--showing'\n }`}\n fadeIn={fadeIn}\n fadeOut={fadeOut}\n showing={isOpen}\n disappearing={!isOpen}\n getOwnerProps={getOwnerProps}\n getOwnerPropsArguments={getOwnerPropsArguments}\n >\n <StyledContent\n className={`em-ds-modal-slide__content ${\n !isOpen ? 'em-ds-modal-slide__content--disappearing' : 'em-ds-modal-slide__content--showing'\n }`}\n onAnimationEnd={handleAnimationEnd}\n width={width}\n height={height}\n fadeIn={fadeIn}\n fadeOut={fadeOut}\n disappearing={!isOpen}\n getOwnerProps={getOwnerProps}\n getOwnerPropsArguments={getOwnerPropsArguments}\n >\n <StyledGridContent rows={contentRows} data-testid=\"ds-modal-slide\">\n {header && React.cloneElement(header, { fullWidth })}\n {header && <DSSeparator position=\"initial\" type=\"non-form\" />}\n <Grid style={{ overflow: 'hidden' }}>\n <StyledContentWrapper\n innerRef={innerRef}\n tabIndex={0}\n role=\"contentinfo\"\n getOwnerProps={getOwnerProps}\n getOwnerPropsArguments={getOwnerPropsArguments}\n >\n <StyledActualContent\n className=\"em-ds-modal-slide__actual-content\"\n getOwnerProps={getOwnerProps}\n getOwnerPropsArguments={getOwnerPropsArguments}\n >\n {children}\n </StyledActualContent>\n </StyledContentWrapper>\n </Grid>\n {footer && <DSSeparator position=\"initial\" type=\"non-form\" />}\n {footer}\n </StyledGridContent>\n </StyledContent>\n </StyledOverlay>\n </StyledModalWrapper>\n </ModalSlideAnimationFix>,\n container,\n );\n};\n\nDSModalSlide.displayName = DSModalSlideName;\nconst DSModalSlideWithSchema = describe(DSModalSlide);\nDSModalSlideWithSchema.propTypes = DSModalSlidePropTypesSchema;\n\nexport { ModalHeader, ModalFooter, DSModalSlide, DSModalSlideWithSchema };\n\nexport default DSModalSlide;\n"],
5
+ "mappings": "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",
6
+ "names": ["React"]
7
7
  }
@@ -0,0 +1,28 @@
1
+ import * as React from "react";
2
+ import { slotObjectToDataTestIds } from "@elliemae/ds-system";
3
+ const DSModalSlideName = "DSModalSlide";
4
+ const DSModalSlideSlots = {
5
+ ROOT: "root",
6
+ OVERLAY: "overlay",
7
+ CONTENT: "content",
8
+ TITLE: "title",
9
+ HEADER_LEFT_SIDE: "header-left-side",
10
+ ACTUAL_CONTENT: "actual-content",
11
+ HEADER: "header",
12
+ FOOTER: "footer",
13
+ FOOTER_WRAPPER: "footer-wrapper",
14
+ HEADER_WRAPPER: "header-wrapper",
15
+ SEPARATOR: "separator",
16
+ CLOSE_BUTTON: "close-button",
17
+ CONTENT_WRAPPER: "content-wrapper"
18
+ };
19
+ const DSModalSlideDataTestIds = {
20
+ ...slotObjectToDataTestIds(DSModalSlideName, DSModalSlideSlots),
21
+ CLOSE_BUTTON: "modal-slider-header-close"
22
+ };
23
+ export {
24
+ DSModalSlideDataTestIds,
25
+ DSModalSlideName,
26
+ DSModalSlideSlots
27
+ };
28
+ //# sourceMappingURL=DSModalSlideDefinitions.js.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../../../scripts/build/transpile/react-shim.js", "../../src/DSModalSlideDefinitions.tsx"],
4
+ "sourcesContent": ["import * as React from 'react';\nexport { React };\n", "import { slotObjectToDataTestIds } from '@elliemae/ds-system';\n\nexport const DSModalSlideName = 'DSModalSlide';\n\nexport const DSModalSlideSlots = {\n ROOT: 'root',\n OVERLAY: 'overlay',\n CONTENT: 'content',\n TITLE: 'title',\n HEADER_LEFT_SIDE: 'header-left-side',\n ACTUAL_CONTENT: 'actual-content',\n HEADER: 'header',\n FOOTER: 'footer',\n FOOTER_WRAPPER: 'footer-wrapper',\n HEADER_WRAPPER: 'header-wrapper',\n SEPARATOR: 'separator',\n CLOSE_BUTTON: 'close-button',\n CONTENT_WRAPPER: 'content-wrapper',\n};\n\nexport const DSModalSlideDataTestIds = {\n ...slotObjectToDataTestIds(DSModalSlideName, DSModalSlideSlots),\n CLOSE_BUTTON: 'modal-slider-header-close',\n};\n"],
5
+ "mappings": "AAAA,YAAY,WAAW;ACAvB,SAAS,+BAA+B;AAEjC,MAAM,mBAAmB;AAEzB,MAAM,oBAAoB;AAAA,EAC/B,MAAM;AAAA,EACN,SAAS;AAAA,EACT,SAAS;AAAA,EACT,OAAO;AAAA,EACP,kBAAkB;AAAA,EAClB,gBAAgB;AAAA,EAChB,QAAQ;AAAA,EACR,QAAQ;AAAA,EACR,gBAAgB;AAAA,EAChB,gBAAgB;AAAA,EAChB,WAAW;AAAA,EACX,cAAc;AAAA,EACd,iBAAiB;AACnB;AAEO,MAAM,0BAA0B;AAAA,EACrC,GAAG,wBAAwB,kBAAkB,iBAAiB;AAAA,EAC9D,cAAc;AAChB;",
6
+ "names": []
7
+ }
@@ -1,79 +1,42 @@
1
1
  import * as React from "react";
2
2
  import { Fragment, jsx, jsxs } from "react/jsx-runtime";
3
- import { PropTypes, describe } from "@elliemae/ds-props-helpers";
3
+ import { describe, useMemoMergePropsWithDefault } from "@elliemae/ds-props-helpers";
4
4
  import { DSButtonV2 } from "@elliemae/ds-button-v2";
5
- import { FooterWrapper } from "./blocks.js";
6
- const ModalFooter = ({
7
- confirmLabel = "Confirm",
8
- rejectLabel = "Cancel",
9
- onConfirm,
10
- onReject,
11
- confirmProps = {
12
- disabled: false
13
- },
14
- rejectProps = {
15
- disabled: false
16
- }
17
- }) => /* @__PURE__ */ jsx(Fragment, { children: /* @__PURE__ */ jsxs(FooterWrapper, { children: [
18
- !!onReject && /* @__PURE__ */ jsx(
19
- DSButtonV2,
20
- {
21
- buttonType: "outline",
22
- className: "action-reject",
23
- "data-testid": "modal-footer-reject-btn",
24
- onClick: onReject,
25
- ...rejectProps,
26
- ml: "xs",
27
- children: rejectLabel
28
- }
29
- ),
30
- !!onConfirm && /* @__PURE__ */ jsx(
31
- DSButtonV2,
32
- {
33
- buttonType: "filled",
34
- className: "action-confirm",
35
- "data-testid": "modal-footer-confirm-btn",
36
- onClick: onConfirm,
37
- ...confirmProps,
38
- ml: "xs",
39
- children: confirmLabel
40
- }
41
- )
42
- ] }) });
43
- const props = {
44
- /**
45
- * Confirm Label
46
- */
47
- confirmLabel: PropTypes.string.description("Confirm Label"),
48
- /**
49
- * Reject Label
50
- */
51
- rejectLabel: PropTypes.string.description("Reject Label"),
52
- /**
53
- * Callback
54
- */
55
- onConfirm: PropTypes.func.description("Callback"),
56
- /**
57
- * Callback
58
- */
59
- onReject: PropTypes.func.description("Callback"),
60
- /**
61
- * Extra DSButton props for confirm btn.
62
- */
63
- confirmProps: PropTypes.shape({
64
- disabled: PropTypes.bool
65
- }).description("Extra DSButton props for confirm btn."),
66
- /**
67
- * Extra DSButton props for reject btn.
68
- */
69
- rejectProps: PropTypes.shape({
70
- disabled: PropTypes.bool
71
- }).description("Extra DSButton props for reject btn.")
5
+ import { footerDefaultProps, DSModalSlideFooterPropTypesSchema } from "../react-desc-prop-types.js";
6
+ import { StyledFooterWrapper } from "../styled.js";
7
+ const ModalFooter = (props) => {
8
+ const propsWithDefault = useMemoMergePropsWithDefault(props, footerDefaultProps);
9
+ const { confirmLabel, rejectLabel, onConfirm, onReject, confirmProps, rejectProps } = propsWithDefault;
10
+ return /* @__PURE__ */ jsx(Fragment, { children: /* @__PURE__ */ jsxs(StyledFooterWrapper, { className: "em-ds-modal-slide__footer-wrapper", children: [
11
+ !!onReject && /* @__PURE__ */ jsx(
12
+ DSButtonV2,
13
+ {
14
+ buttonType: "outline",
15
+ className: "action-reject",
16
+ "data-testid": "modal-footer-reject-btn",
17
+ onClick: onReject,
18
+ ...rejectProps,
19
+ ml: "xs",
20
+ children: rejectLabel
21
+ }
22
+ ),
23
+ !!onConfirm && /* @__PURE__ */ jsx(
24
+ DSButtonV2,
25
+ {
26
+ buttonType: "filled",
27
+ className: "action-confirm",
28
+ "data-testid": "modal-footer-confirm-btn",
29
+ onClick: onConfirm,
30
+ ...confirmProps,
31
+ ml: "xs",
32
+ children: confirmLabel
33
+ }
34
+ )
35
+ ] }) });
72
36
  };
73
- ModalFooter.propTypes = props;
74
37
  ModalFooter.displayName = "ModalFooter";
75
38
  const DSModalSlideFooterWithSchema = describe(ModalFooter);
76
- DSModalSlideFooterWithSchema.propTypes = props;
39
+ DSModalSlideFooterWithSchema.propTypes = DSModalSlideFooterPropTypesSchema;
77
40
  var Footer_default = ModalFooter;
78
41
  export {
79
42
  DSModalSlideFooterWithSchema,
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../../../../scripts/build/transpile/react-shim.js", "../../../src/components/Footer.tsx"],
4
- "sourcesContent": ["import * as React from 'react';\nexport { React };\n", "import React from 'react';\nimport { PropTypes, describe } from '@elliemae/ds-props-helpers';\nimport { DSButtonV2 } from '@elliemae/ds-button-v2';\nimport { FooterWrapper } from './blocks.js';\n\nconst ModalFooter = ({\n confirmLabel = 'Confirm',\n rejectLabel = 'Cancel',\n onConfirm,\n onReject,\n confirmProps = {\n disabled: false,\n },\n rejectProps = {\n disabled: false,\n },\n}) => (\n <>\n <FooterWrapper>\n {!!onReject && (\n <DSButtonV2\n buttonType=\"outline\"\n className=\"action-reject\"\n data-testid=\"modal-footer-reject-btn\"\n onClick={onReject}\n {...rejectProps}\n ml=\"xs\"\n >\n {rejectLabel}\n </DSButtonV2>\n )}\n {!!onConfirm && (\n <DSButtonV2\n buttonType=\"filled\"\n className=\"action-confirm\"\n data-testid=\"modal-footer-confirm-btn\"\n onClick={onConfirm}\n {...confirmProps}\n ml=\"xs\"\n >\n {confirmLabel}\n </DSButtonV2>\n )}\n </FooterWrapper>\n </>\n);\n\nconst props = {\n /**\n * Confirm Label\n */\n confirmLabel: PropTypes.string.description('Confirm Label'),\n /**\n * Reject Label\n */\n rejectLabel: PropTypes.string.description('Reject Label'),\n /**\n * Callback\n */\n onConfirm: PropTypes.func.description('Callback'),\n /**\n * Callback\n */\n onReject: PropTypes.func.description('Callback'),\n /**\n * Extra DSButton props for confirm btn.\n */\n confirmProps: PropTypes.shape({\n disabled: PropTypes.bool,\n }).description('Extra DSButton props for confirm btn.'),\n /**\n * Extra DSButton props for reject btn.\n */\n rejectProps: PropTypes.shape({\n disabled: PropTypes.bool,\n }).description('Extra DSButton props for reject btn.'),\n};\n\nModalFooter.propTypes = props;\nModalFooter.displayName = 'ModalFooter';\nconst DSModalSlideFooterWithSchema = describe(ModalFooter);\nDSModalSlideFooterWithSchema.propTypes = props;\n\nexport { DSModalSlideFooterWithSchema };\n\nexport default ModalFooter;\n"],
5
- "mappings": "AAAA,YAAY,WAAW;ACiBrB,mBAGM,KAFJ,YADF;AAhBF,SAAS,WAAW,gBAAgB;AACpC,SAAS,kBAAkB;AAC3B,SAAS,qBAAqB;AAE9B,MAAM,cAAc,CAAC;AAAA,EACnB,eAAe;AAAA,EACf,cAAc;AAAA,EACd;AAAA,EACA;AAAA,EACA,eAAe;AAAA,IACb,UAAU;AAAA,EACZ;AAAA,EACA,cAAc;AAAA,IACZ,UAAU;AAAA,EACZ;AACF,MACE,gCACE,+BAAC,iBACE;AAAA,GAAC,CAAC,YACD;AAAA,IAAC;AAAA;AAAA,MACC,YAAW;AAAA,MACX,WAAU;AAAA,MACV,eAAY;AAAA,MACZ,SAAS;AAAA,MACR,GAAG;AAAA,MACJ,IAAG;AAAA,MAEF;AAAA;AAAA,EACH;AAAA,EAED,CAAC,CAAC,aACD;AAAA,IAAC;AAAA;AAAA,MACC,YAAW;AAAA,MACX,WAAU;AAAA,MACV,eAAY;AAAA,MACZ,SAAS;AAAA,MACR,GAAG;AAAA,MACJ,IAAG;AAAA,MAEF;AAAA;AAAA,EACH;AAAA,GAEJ,GACF;AAGF,MAAM,QAAQ;AAAA;AAAA;AAAA;AAAA,EAIZ,cAAc,UAAU,OAAO,YAAY,eAAe;AAAA;AAAA;AAAA;AAAA,EAI1D,aAAa,UAAU,OAAO,YAAY,cAAc;AAAA;AAAA;AAAA;AAAA,EAIxD,WAAW,UAAU,KAAK,YAAY,UAAU;AAAA;AAAA;AAAA;AAAA,EAIhD,UAAU,UAAU,KAAK,YAAY,UAAU;AAAA;AAAA;AAAA;AAAA,EAI/C,cAAc,UAAU,MAAM;AAAA,IAC5B,UAAU,UAAU;AAAA,EACtB,CAAC,EAAE,YAAY,uCAAuC;AAAA;AAAA;AAAA;AAAA,EAItD,aAAa,UAAU,MAAM;AAAA,IAC3B,UAAU,UAAU;AAAA,EACtB,CAAC,EAAE,YAAY,sCAAsC;AACvD;AAEA,YAAY,YAAY;AACxB,YAAY,cAAc;AAC1B,MAAM,+BAA+B,SAAS,WAAW;AACzD,6BAA6B,YAAY;AAIzC,IAAO,iBAAQ;",
4
+ "sourcesContent": ["import * as React from 'react';\nexport { React };\n", "import React from 'react';\nimport { describe, useMemoMergePropsWithDefault } from '@elliemae/ds-props-helpers';\nimport { DSButtonV2 } from '@elliemae/ds-button-v2';\nimport { type DSModalSlideT, footerDefaultProps, DSModalSlideFooterPropTypesSchema } from '../react-desc-prop-types.js';\nimport { StyledFooterWrapper } from '../styled.js';\n\nconst ModalFooter = (props: DSModalSlideT.FooterProps) => {\n const propsWithDefault = useMemoMergePropsWithDefault<DSModalSlideT.FooterInternalProps>(props, footerDefaultProps);\n const { confirmLabel, rejectLabel, onConfirm, onReject, confirmProps, rejectProps } = propsWithDefault;\n return (\n <>\n <StyledFooterWrapper className=\"em-ds-modal-slide__footer-wrapper\">\n {!!onReject && (\n <DSButtonV2\n buttonType=\"outline\"\n className=\"action-reject\"\n data-testid=\"modal-footer-reject-btn\"\n onClick={onReject}\n {...rejectProps}\n ml=\"xs\"\n >\n {rejectLabel}\n </DSButtonV2>\n )}\n {!!onConfirm && (\n <DSButtonV2\n buttonType=\"filled\"\n className=\"action-confirm\"\n data-testid=\"modal-footer-confirm-btn\"\n onClick={onConfirm}\n {...confirmProps}\n ml=\"xs\"\n >\n {confirmLabel}\n </DSButtonV2>\n )}\n </StyledFooterWrapper>\n </>\n );\n};\n\nModalFooter.displayName = 'ModalFooter';\nconst DSModalSlideFooterWithSchema = describe(ModalFooter);\nDSModalSlideFooterWithSchema.propTypes = DSModalSlideFooterPropTypesSchema;\n\nexport { DSModalSlideFooterWithSchema };\n\nexport default ModalFooter;\n"],
5
+ "mappings": "AAAA,YAAY,WAAW;ACUnB,mBAGM,KAFJ,YADF;AATJ,SAAS,UAAU,oCAAoC;AACvD,SAAS,kBAAkB;AAC3B,SAA6B,oBAAoB,yCAAyC;AAC1F,SAAS,2BAA2B;AAEpC,MAAM,cAAc,CAAC,UAAqC;AACxD,QAAM,mBAAmB,6BAAgE,OAAO,kBAAkB;AAClH,QAAM,EAAE,cAAc,aAAa,WAAW,UAAU,cAAc,YAAY,IAAI;AACtF,SACE,gCACE,+BAAC,uBAAoB,WAAU,qCAC5B;AAAA,KAAC,CAAC,YACD;AAAA,MAAC;AAAA;AAAA,QACC,YAAW;AAAA,QACX,WAAU;AAAA,QACV,eAAY;AAAA,QACZ,SAAS;AAAA,QACR,GAAG;AAAA,QACJ,IAAG;AAAA,QAEF;AAAA;AAAA,IACH;AAAA,IAED,CAAC,CAAC,aACD;AAAA,MAAC;AAAA;AAAA,QACC,YAAW;AAAA,QACX,WAAU;AAAA,QACV,eAAY;AAAA,QACZ,SAAS;AAAA,QACR,GAAG;AAAA,QACJ,IAAG;AAAA,QAEF;AAAA;AAAA,IACH;AAAA,KAEJ,GACF;AAEJ;AAEA,YAAY,cAAc;AAC1B,MAAM,+BAA+B,SAAS,WAAW;AACzD,6BAA6B,YAAY;AAIzC,IAAO,iBAAQ;",
6
6
  "names": []
7
7
  }
@@ -1,54 +1,40 @@
1
1
  import * as React from "react";
2
2
  import { jsx, jsxs } from "react/jsx-runtime";
3
- import { PropTypes, describe } from "@elliemae/ds-props-helpers";
4
- import { styled } from "@elliemae/ds-system";
5
- import DSSeparator from "@elliemae/ds-separator";
3
+ import { describe, useMemoMergePropsWithDefault } from "@elliemae/ds-props-helpers";
6
4
  import { Close } from "@elliemae/ds-icons";
7
- import { DSButtonV2 } from "@elliemae/ds-button-v2";
8
- import { Header, HeaderLeftSide, Title } from "./blocks.js";
9
- const ModalHeader = ({ innerRef = null, title: headerTitle = "", onClose = () => null, toolbar = null }) => /* @__PURE__ */ jsxs(HeaderWrapper, { children: [
10
- /* @__PURE__ */ jsx(HeaderLeftSide, { children: /* @__PURE__ */ jsx(Header, { children: /* @__PURE__ */ jsx(Title, { children: headerTitle }) }) }),
11
- toolbar,
12
- toolbar && /* @__PURE__ */ jsx(StyledSeparator, { position: "initial", margin: "none", orientation: "vertical", type: "non-form" }),
13
- /* @__PURE__ */ jsx(
14
- StyledCloseButton,
15
- {
16
- "data-testid": "modal-slider-header-close",
17
- "aria-label": "Close modal slide",
18
- buttonType: "icon",
19
- onClick: onClose,
20
- innerRef,
21
- children: /* @__PURE__ */ jsx(Close, { "aria-label": "Close modal slide", size: "s" })
22
- }
23
- )
24
- ] });
25
- const HeaderWrapper = styled.div`
26
- display: flex;
27
- justify-content: space-between;
28
- width: 100%;
29
- align-items: center;
30
- height: 48px;
31
- overflow: hidden;
32
- `;
33
- const StyledSeparator = styled(DSSeparator)`
34
- padding: ${(props2) => props2.theme.space.xs} 0;
35
- `;
36
- const StyledCloseButton = styled(DSButtonV2)`
37
- margin: ${(props2) => props2.theme.space.xs};
38
- `;
39
- const props = {
40
- /** on modal close callback */
41
- onClose: PropTypes.func.description("on modal close callback"),
42
- /** modal toolbar component */
43
- toolbar: PropTypes.node.description("modal toolbar comoponent"),
44
- /** modal title */
45
- title: PropTypes.string.description("modal title"),
46
- innerRef: PropTypes.func.description("button close ref ")
5
+ import { headerDefaultProps, DSModalSlideHeaderPropTypesSchema } from "../react-desc-prop-types.js";
6
+ import {
7
+ StyledHeader,
8
+ StyledHeaderLeftSide,
9
+ StyledTitle,
10
+ HeaderWrapper,
11
+ StyledSeparator,
12
+ StyledCloseButton
13
+ } from "../styled.js";
14
+ import { DSModalSlideDataTestIds } from "../DSModalSlideDefinitions.js";
15
+ const ModalHeader = (props) => {
16
+ const propsWithDefault = useMemoMergePropsWithDefault(props, headerDefaultProps);
17
+ const { innerRef, title: headerTitle, onClose, toolbar } = propsWithDefault;
18
+ return /* @__PURE__ */ jsxs(HeaderWrapper, { children: [
19
+ /* @__PURE__ */ jsx(StyledHeaderLeftSide, { className: "em-ds-modal-slide__header-left-side", children: /* @__PURE__ */ jsx(StyledHeader, { className: "em-ds-modal-slide__header", children: /* @__PURE__ */ jsx(StyledTitle, { className: "em-ds-modal-slide__title", children: headerTitle }) }) }),
20
+ toolbar,
21
+ toolbar && /* @__PURE__ */ jsx(StyledSeparator, { isVertical: true }),
22
+ /* @__PURE__ */ jsx(
23
+ StyledCloseButton,
24
+ {
25
+ "data-testid": DSModalSlideDataTestIds.CLOSE_BUTTON,
26
+ "aria-label": "Close modal slide",
27
+ buttonType: "icon",
28
+ onClick: onClose,
29
+ innerRef,
30
+ children: /* @__PURE__ */ jsx(Close, { "aria-label": "Close modal slide", size: "s" })
31
+ }
32
+ )
33
+ ] });
47
34
  };
48
- ModalHeader.propTypes = props;
49
35
  ModalHeader.displayName = "ModalHeader";
50
36
  const DSModalSlideHeaderWithSchema = describe(ModalHeader);
51
- DSModalSlideHeaderWithSchema.propTypes = props;
37
+ DSModalSlideHeaderWithSchema.propTypes = DSModalSlideHeaderPropTypesSchema;
52
38
  var Header_default = ModalHeader;
53
39
  export {
54
40
  DSModalSlideHeaderWithSchema,
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../../../../scripts/build/transpile/react-shim.js", "../../../src/components/Header.tsx"],
4
- "sourcesContent": ["import * as React from 'react';\nexport { React };\n", "import React from 'react';\nimport { PropTypes, describe } from '@elliemae/ds-props-helpers';\nimport { styled } from '@elliemae/ds-system';\nimport DSSeparator from '@elliemae/ds-separator';\nimport { Close } from '@elliemae/ds-icons';\nimport { DSButtonV2 } from '@elliemae/ds-button-v2';\nimport { Header, HeaderLeftSide, Title } from './blocks.js';\n\nconst ModalHeader = ({ innerRef = null, title: headerTitle = '', onClose = () => null, toolbar = null }) => (\n <HeaderWrapper>\n <HeaderLeftSide>\n <Header>\n <Title>{headerTitle}</Title>\n </Header>\n </HeaderLeftSide>\n {toolbar}\n {toolbar && <StyledSeparator position=\"initial\" margin=\"none\" orientation=\"vertical\" type=\"non-form\" />}\n <StyledCloseButton\n data-testid=\"modal-slider-header-close\"\n aria-label=\"Close modal slide\"\n buttonType=\"icon\"\n onClick={onClose}\n innerRef={innerRef}\n >\n {<Close aria-label=\"Close modal slide\" size=\"s\" />}\n </StyledCloseButton>\n </HeaderWrapper>\n);\n\nconst HeaderWrapper = styled.div`\n display: flex;\n justify-content: space-between;\n width: 100%;\n align-items: center;\n height: 48px;\n overflow: hidden;\n`;\n\nconst StyledSeparator = styled(DSSeparator)`\n padding: ${(props) => props.theme.space.xs} 0;\n`;\n\nconst StyledCloseButton = styled(DSButtonV2)`\n margin: ${(props) => props.theme.space.xs};\n`;\n\nconst props = {\n /** on modal close callback */\n onClose: PropTypes.func.description('on modal close callback'),\n /** modal toolbar component */\n toolbar: PropTypes.node.description('modal toolbar comoponent'),\n /** modal title */\n title: PropTypes.string.description('modal title'),\n innerRef: PropTypes.func.description('button close ref '),\n};\n\nModalHeader.propTypes = props;\nModalHeader.displayName = 'ModalHeader';\nconst DSModalSlideHeaderWithSchema = describe(ModalHeader);\nDSModalSlideHeaderWithSchema.propTypes = props;\n\nexport { DSModalSlideHeaderWithSchema };\n\nexport default ModalHeader;\n"],
5
- "mappings": "AAAA,YAAY,WAAW;ACSrB,SAGM,KAHN;AARF,SAAS,WAAW,gBAAgB;AACpC,SAAS,cAAc;AACvB,OAAO,iBAAiB;AACxB,SAAS,aAAa;AACtB,SAAS,kBAAkB;AAC3B,SAAS,QAAQ,gBAAgB,aAAa;AAE9C,MAAM,cAAc,CAAC,EAAE,WAAW,MAAM,OAAO,cAAc,IAAI,UAAU,MAAM,MAAM,UAAU,KAAK,MACpG,qBAAC,iBACC;AAAA,sBAAC,kBACC,8BAAC,UACC,8BAAC,SAAO,uBAAY,GACtB,GACF;AAAA,EACC;AAAA,EACA,WAAW,oBAAC,mBAAgB,UAAS,WAAU,QAAO,QAAO,aAAY,YAAW,MAAK,YAAW;AAAA,EACrG;AAAA,IAAC;AAAA;AAAA,MACC,eAAY;AAAA,MACZ,cAAW;AAAA,MACX,YAAW;AAAA,MACX,SAAS;AAAA,MACT;AAAA,MAEC,8BAAC,SAAM,cAAW,qBAAoB,MAAK,KAAI;AAAA;AAAA,EAClD;AAAA,GACF;AAGF,MAAM,gBAAgB,OAAO;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAS7B,MAAM,kBAAkB,OAAO,WAAW;AAAA,aAC7B,CAACA,WAAUA,OAAM,MAAM,MAAM;AAAA;AAG1C,MAAM,oBAAoB,OAAO,UAAU;AAAA,YAC/B,CAACA,WAAUA,OAAM,MAAM,MAAM;AAAA;AAGzC,MAAM,QAAQ;AAAA;AAAA,EAEZ,SAAS,UAAU,KAAK,YAAY,yBAAyB;AAAA;AAAA,EAE7D,SAAS,UAAU,KAAK,YAAY,0BAA0B;AAAA;AAAA,EAE9D,OAAO,UAAU,OAAO,YAAY,aAAa;AAAA,EACjD,UAAU,UAAU,KAAK,YAAY,mBAAmB;AAC1D;AAEA,YAAY,YAAY;AACxB,YAAY,cAAc;AAC1B,MAAM,+BAA+B,SAAS,WAAW;AACzD,6BAA6B,YAAY;AAIzC,IAAO,iBAAQ;",
6
- "names": ["props"]
4
+ "sourcesContent": ["import * as React from 'react';\nexport { React };\n", "import React from 'react';\nimport { describe, useMemoMergePropsWithDefault } from '@elliemae/ds-props-helpers';\nimport { Close } from '@elliemae/ds-icons';\nimport { type DSModalSlideT, headerDefaultProps, DSModalSlideHeaderPropTypesSchema } from '../react-desc-prop-types.js';\nimport {\n StyledHeader,\n StyledHeaderLeftSide,\n StyledTitle,\n HeaderWrapper,\n StyledSeparator,\n StyledCloseButton,\n} from '../styled.js';\nimport { DSModalSlideDataTestIds } from '../DSModalSlideDefinitions.js';\n\nconst ModalHeader = (props: DSModalSlideT.HeaderProps) => {\n const propsWithDefault = useMemoMergePropsWithDefault<DSModalSlideT.HeaderInternalProps>(props, headerDefaultProps);\n const { innerRef, title: headerTitle, onClose, toolbar } = propsWithDefault;\n return (\n <HeaderWrapper>\n <StyledHeaderLeftSide className=\"em-ds-modal-slide__header-left-side\">\n <StyledHeader className=\"em-ds-modal-slide__header\">\n <StyledTitle className=\"em-ds-modal-slide__title\">{headerTitle}</StyledTitle>\n </StyledHeader>\n </StyledHeaderLeftSide>\n {toolbar}\n {toolbar && <StyledSeparator isVertical />}\n <StyledCloseButton\n data-testid={DSModalSlideDataTestIds.CLOSE_BUTTON}\n aria-label=\"Close modal slide\"\n buttonType=\"icon\"\n onClick={onClose}\n innerRef={innerRef}\n >\n {<Close aria-label=\"Close modal slide\" size=\"s\" />}\n </StyledCloseButton>\n </HeaderWrapper>\n );\n};\n\nModalHeader.displayName = 'ModalHeader';\nconst DSModalSlideHeaderWithSchema = describe(ModalHeader);\nDSModalSlideHeaderWithSchema.propTypes = DSModalSlideHeaderPropTypesSchema;\n\nexport { DSModalSlideHeaderWithSchema };\n\nexport default ModalHeader;\n"],
5
+ "mappings": "AAAA,YAAY,WAAW;ACkBnB,SAGM,KAHN;AAjBJ,SAAS,UAAU,oCAAoC;AACvD,SAAS,aAAa;AACtB,SAA6B,oBAAoB,yCAAyC;AAC1F;AAAA,EACE;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,OACK;AACP,SAAS,+BAA+B;AAExC,MAAM,cAAc,CAAC,UAAqC;AACxD,QAAM,mBAAmB,6BAAgE,OAAO,kBAAkB;AAClH,QAAM,EAAE,UAAU,OAAO,aAAa,SAAS,QAAQ,IAAI;AAC3D,SACE,qBAAC,iBACC;AAAA,wBAAC,wBAAqB,WAAU,uCAC9B,8BAAC,gBAAa,WAAU,6BACtB,8BAAC,eAAY,WAAU,4BAA4B,uBAAY,GACjE,GACF;AAAA,IACC;AAAA,IACA,WAAW,oBAAC,mBAAgB,YAAU,MAAC;AAAA,IACxC;AAAA,MAAC;AAAA;AAAA,QACC,eAAa,wBAAwB;AAAA,QACrC,cAAW;AAAA,QACX,YAAW;AAAA,QACX,SAAS;AAAA,QACT;AAAA,QAEC,8BAAC,SAAM,cAAW,qBAAoB,MAAK,KAAI;AAAA;AAAA,IAClD;AAAA,KACF;AAEJ;AAEA,YAAY,cAAc;AAC1B,MAAM,+BAA+B,SAAS,WAAW;AACzD,6BAA6B,YAAY;AAIzC,IAAO,iBAAQ;",
6
+ "names": []
7
7
  }
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../../../scripts/build/transpile/react-shim.js", "../../src/index.tsx"],
4
- "sourcesContent": ["import * as React from 'react';\nexport { React };\n", "export * from './DSModalSlide.js';\nexport { default } from './DSModalSlide.js';\nexport { DSModalSlideHeaderWithSchema } from './components/Header.js';\nexport { DSModalSlideFooterWithSchema } from './components/Footer.js';\n"],
4
+ "sourcesContent": ["import * as React from 'react';\nexport { React };\n", "export * from './DSModalSlide.js';\nexport { default } from './DSModalSlide.js';\nexport { DSModalSlideHeaderWithSchema } from './components/Header.js';\nexport { DSModalSlideFooterWithSchema } from './components/Footer.js';\nexport type { DSModalSlideT } from './react-desc-prop-types.js';\n"],
5
5
  "mappings": "AAAA,YAAY,WAAW;ACAvB,cAAc;AACd,SAAS,WAAAA,gBAAe;AACxB,SAAS,oCAAoC;AAC7C,SAAS,oCAAoC;",
6
6
  "names": ["default"]
7
7
  }
@@ -0,0 +1,120 @@
1
+ import * as React from "react";
2
+ import { PropTypes, globalAttributesPropTypes, xstyledPropTypes } from "@elliemae/ds-props-helpers";
3
+ import { getPropsPerDatatestIdPropTypes } from "@elliemae/ds-utilities";
4
+ import { DSModalSlideDataTestIds } from "./DSModalSlideDefinitions.js";
5
+ const defaultProps = {
6
+ isOpen: false,
7
+ centered: false,
8
+ fullWidth: false,
9
+ fadeOut: 1500,
10
+ fadeIn: 1500,
11
+ overrideHeight: false
12
+ };
13
+ const headerDefaultProps = {
14
+ title: "",
15
+ onClose: () => null
16
+ };
17
+ const footerDefaultProps = {
18
+ confirmLabel: "Confirm",
19
+ rejectLabel: "Cancel",
20
+ confirmProps: { disabled: false },
21
+ rejectProps: { disabled: false }
22
+ };
23
+ const DSModalSlidePropTypes = {
24
+ ...globalAttributesPropTypes,
25
+ ...xstyledPropTypes,
26
+ /**
27
+ * If the modal slide is centered or not
28
+ */
29
+ centered: PropTypes.bool.description("If the modal slide is centered or not"),
30
+ /**
31
+ * If the modal slide is visible or not
32
+ */
33
+ isOpen: PropTypes.bool.description("If the modal slide is visible or not"),
34
+ /**
35
+ * Main content of the modal
36
+ */
37
+ children: PropTypes.oneOfType([PropTypes.node]).isRequired.description("Main content of the modal"),
38
+ /**
39
+ * If the modal slide takes the full width or not
40
+ */
41
+ fullWidth: PropTypes.bool.description("If the modal slide takes the full width or not"),
42
+ /**
43
+ * If the modal slide has a header, only available for full width option
44
+ */
45
+ header: PropTypes.element.description("If the modal slide has a header, only available for full width option"),
46
+ /**
47
+ * If the modal slide has a footer
48
+ */
49
+ footer: PropTypes.element.description("If the modal slide has a footer"),
50
+ /**
51
+ * Ratio of fade out
52
+ */
53
+ fadeOut: PropTypes.number.description("Ratio of fade out"),
54
+ /**
55
+ * Ratio of fade in
56
+ */
57
+ fadeIn: PropTypes.number.description("Ratio of fade in"),
58
+ /**
59
+ * Override the panel height to scroll height of the container
60
+ */
61
+ overrideHeight: PropTypes.bool.description("Override the panel height to scroll height of the container"),
62
+ getContainer: PropTypes.func.description("Should return the container of the modal slide").isRequired,
63
+ innerRef: PropTypes.oneOfType([PropTypes.func, PropTypes.object]).description("Ref to the modal slide")
64
+ };
65
+ const DSModalSlidePropTypesSchema = DSModalSlidePropTypes;
66
+ const DSModalSlideHeaderPropTypes = {
67
+ ...globalAttributesPropTypes,
68
+ ...xstyledPropTypes,
69
+ title: PropTypes.string.description("modal title"),
70
+ onClose: PropTypes.func.description("on modal close callback"),
71
+ toolbar: PropTypes.node.description("modal toolbar comoponent"),
72
+ innerRef: PropTypes.oneOfType([PropTypes.func, PropTypes.object]).description("Ref to the modal slide")
73
+ };
74
+ const DSModalSlideHeaderPropTypesSchema = DSModalSlideHeaderPropTypes;
75
+ const DSModalSlideFooterPropTypes = {
76
+ ...globalAttributesPropTypes,
77
+ ...xstyledPropTypes,
78
+ /**
79
+ * Confirm Label
80
+ */
81
+ confirmLabel: PropTypes.string.description("Confirm Label"),
82
+ /**
83
+ * Reject Label
84
+ */
85
+ rejectLabel: PropTypes.string.description("Reject Label"),
86
+ /**
87
+ * Callback
88
+ */
89
+ onConfirm: PropTypes.func.description("Callback"),
90
+ /**
91
+ * Callback
92
+ */
93
+ onReject: PropTypes.func.description("Callback"),
94
+ /**
95
+ * Extra DSButton props for confirm btn.
96
+ */
97
+ confirmProps: PropTypes.shape({
98
+ disabled: PropTypes.bool
99
+ }).description("Extra DSButton props for confirm btn."),
100
+ /**
101
+ * Extra DSButton props for reject btn.
102
+ */
103
+ rejectProps: PropTypes.shape({
104
+ disabled: PropTypes.bool
105
+ }).description("Extra DSButton props for reject btn."),
106
+ ...getPropsPerDatatestIdPropTypes(DSModalSlideDataTestIds)
107
+ };
108
+ const DSModalSlideFooterPropTypesSchema = DSModalSlideFooterPropTypes;
109
+ export {
110
+ DSModalSlideFooterPropTypes,
111
+ DSModalSlideFooterPropTypesSchema,
112
+ DSModalSlideHeaderPropTypes,
113
+ DSModalSlideHeaderPropTypesSchema,
114
+ DSModalSlidePropTypes,
115
+ DSModalSlidePropTypesSchema,
116
+ defaultProps,
117
+ footerDefaultProps,
118
+ headerDefaultProps
119
+ };
120
+ //# sourceMappingURL=react-desc-prop-types.js.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../../../scripts/build/transpile/react-shim.js", "../../src/react-desc-prop-types.tsx"],
4
+ "sourcesContent": ["import * as React from 'react';\nexport { React };\n", "/* eslint-disable @typescript-eslint/no-redundant-type-constituents */\n/* eslint-disable @typescript-eslint/no-empty-interface */\nimport type { GlobalAttributesT, XstyledProps, DSPropTypesSchema } from '@elliemae/ds-props-helpers';\nimport { PropTypes, globalAttributesPropTypes, xstyledPropTypes } from '@elliemae/ds-props-helpers';\nimport { getPropsPerDatatestIdPropTypes } from '@elliemae/ds-utilities';\nimport { DSModalSlideDataTestIds } from './DSModalSlideDefinitions.js';\n\nexport declare namespace DSModalSlideT {\n type PropsT<D, R, O, E> = Partial<D> & R & O & Omit<GlobalAttributesT<E>, keyof D | keyof R | keyof O> & XstyledProps;\n type InternalPropsT<D, R, O, E> = D & R & O & Omit<GlobalAttributesT<E>, keyof D | keyof R | keyof O> & XstyledProps;\n\n export interface RequiredProps {\n getContainer: () => HTMLElement;\n }\n\n export interface DefaultProps {\n isOpen: boolean;\n centered: boolean;\n fullWidth: boolean;\n fadeOut: number;\n fadeIn: number;\n overrideHeight: boolean;\n }\n\n export interface OptionalProps {\n header: JSX.Element;\n footer: React.ReactNode;\n children?: React.ReactNode;\n innerRef?: React.MutableRefObject<HTMLDivElement | null> | React.RefCallback<HTMLDivElement>;\n }\n\n export interface FooterRequiredProps {}\n\n export interface FooterDefaultProps {\n confirmLabel: string;\n rejectLabel: string;\n confirmProps: { disabled: boolean };\n rejectProps: { disabled: boolean };\n }\n\n export interface FooterOptionalProps {\n onConfirm: () => void;\n onReject: () => void;\n }\n\n export interface HeaderRequiredProps {}\n\n export interface HeaderDefaultProps {\n title: string;\n onClose: () => void;\n }\n\n export interface HeaderOptionalProps {\n toolbar?: React.ReactNode;\n innerRef?: React.MutableRefObject<HTMLButtonElement | null> | React.RefCallback<HTMLButtonElement>;\n }\n\n export type Props = PropsT<DefaultProps, RequiredProps, OptionalProps, HTMLElement>;\n\n export type InternalProps = InternalPropsT<DefaultProps, RequiredProps, OptionalProps, HTMLElement>;\n\n export type HeaderProps = PropsT<HeaderDefaultProps, HeaderRequiredProps, HeaderOptionalProps, HTMLButtonElement>;\n\n export type HeaderInternalProps = InternalPropsT<\n HeaderDefaultProps,\n HeaderRequiredProps,\n HeaderOptionalProps,\n HTMLButtonElement\n >;\n\n export type FooterProps = PropsT<FooterDefaultProps, FooterRequiredProps, FooterOptionalProps, HTMLDivElement>;\n\n export type FooterInternalProps = InternalPropsT<\n FooterDefaultProps,\n FooterRequiredProps,\n FooterOptionalProps,\n HTMLDivElement\n >;\n}\n\nexport const defaultProps: DSModalSlideT.DefaultProps = {\n isOpen: false,\n centered: false,\n fullWidth: false,\n fadeOut: 1500,\n fadeIn: 1500,\n overrideHeight: false,\n};\n\nexport const headerDefaultProps: DSModalSlideT.HeaderDefaultProps = {\n title: '',\n onClose: () => null,\n};\n\nexport const footerDefaultProps: DSModalSlideT.FooterDefaultProps = {\n confirmLabel: 'Confirm',\n rejectLabel: 'Cancel',\n confirmProps: { disabled: false },\n rejectProps: { disabled: false },\n};\n\nexport const DSModalSlidePropTypes: DSPropTypesSchema<DSModalSlideT.Props> = {\n ...globalAttributesPropTypes,\n ...xstyledPropTypes,\n /**\n * If the modal slide is centered or not\n */\n centered: PropTypes.bool.description('If the modal slide is centered or not'),\n /**\n * If the modal slide is visible or not\n */\n isOpen: PropTypes.bool.description('If the modal slide is visible or not'),\n /**\n * Main content of the modal\n */\n children: PropTypes.oneOfType([PropTypes.node]).isRequired.description('Main content of the modal'),\n /**\n * If the modal slide takes the full width or not\n */\n fullWidth: PropTypes.bool.description('If the modal slide takes the full width or not'),\n /**\n * If the modal slide has a header, only available for full width option\n */\n header: PropTypes.element.description('If the modal slide has a header, only available for full width option'),\n /**\n * If the modal slide has a footer\n */\n footer: PropTypes.element.description('If the modal slide has a footer'),\n /**\n * Ratio of fade out\n */\n fadeOut: PropTypes.number.description('Ratio of fade out'),\n /**\n * Ratio of fade in\n */\n fadeIn: PropTypes.number.description('Ratio of fade in'),\n /**\n * Override the panel height to scroll height of the container\n */\n overrideHeight: PropTypes.bool.description('Override the panel height to scroll height of the container'),\n getContainer: PropTypes.func.description('Should return the container of the modal slide').isRequired,\n innerRef: PropTypes.oneOfType([PropTypes.func, PropTypes.object]).description('Ref to the modal slide'),\n};\n\nexport const DSModalSlidePropTypesSchema =\n DSModalSlidePropTypes as unknown as React.WeakValidationMap<DSModalSlideT.Props>;\n\nexport const DSModalSlideHeaderPropTypes: DSPropTypesSchema<DSModalSlideT.HeaderProps> = {\n ...globalAttributesPropTypes,\n ...xstyledPropTypes,\n title: PropTypes.string.description('modal title'),\n onClose: PropTypes.func.description('on modal close callback'),\n toolbar: PropTypes.node.description('modal toolbar comoponent'),\n innerRef: PropTypes.oneOfType([PropTypes.func, PropTypes.object]).description('Ref to the modal slide'),\n};\n\nexport const DSModalSlideHeaderPropTypesSchema =\n DSModalSlideHeaderPropTypes as unknown as React.WeakValidationMap<DSModalSlideT.HeaderProps>;\n\nexport const DSModalSlideFooterPropTypes: DSPropTypesSchema<DSModalSlideT.FooterProps> = {\n ...globalAttributesPropTypes,\n ...xstyledPropTypes,\n /**\n * Confirm Label\n */\n confirmLabel: PropTypes.string.description('Confirm Label'),\n /**\n * Reject Label\n */\n rejectLabel: PropTypes.string.description('Reject Label'),\n /**\n * Callback\n */\n onConfirm: PropTypes.func.description('Callback'),\n /**\n * Callback\n */\n onReject: PropTypes.func.description('Callback'),\n /**\n * Extra DSButton props for confirm btn.\n */\n confirmProps: PropTypes.shape({\n disabled: PropTypes.bool,\n }).description('Extra DSButton props for confirm btn.'),\n /**\n * Extra DSButton props for reject btn.\n */\n rejectProps: PropTypes.shape({\n disabled: PropTypes.bool,\n }).description('Extra DSButton props for reject btn.'),\n ...getPropsPerDatatestIdPropTypes(DSModalSlideDataTestIds),\n};\n\nexport const DSModalSlideFooterPropTypesSchema =\n DSModalSlideFooterPropTypes as unknown as React.WeakValidationMap<DSModalSlideT.FooterProps>;\n"],
5
+ "mappings": "AAAA,YAAY,WAAW;ACGvB,SAAS,WAAW,2BAA2B,wBAAwB;AACvE,SAAS,sCAAsC;AAC/C,SAAS,+BAA+B;AA2EjC,MAAM,eAA2C;AAAA,EACtD,QAAQ;AAAA,EACR,UAAU;AAAA,EACV,WAAW;AAAA,EACX,SAAS;AAAA,EACT,QAAQ;AAAA,EACR,gBAAgB;AAClB;AAEO,MAAM,qBAAuD;AAAA,EAClE,OAAO;AAAA,EACP,SAAS,MAAM;AACjB;AAEO,MAAM,qBAAuD;AAAA,EAClE,cAAc;AAAA,EACd,aAAa;AAAA,EACb,cAAc,EAAE,UAAU,MAAM;AAAA,EAChC,aAAa,EAAE,UAAU,MAAM;AACjC;AAEO,MAAM,wBAAgE;AAAA,EAC3E,GAAG;AAAA,EACH,GAAG;AAAA;AAAA;AAAA;AAAA,EAIH,UAAU,UAAU,KAAK,YAAY,uCAAuC;AAAA;AAAA;AAAA;AAAA,EAI5E,QAAQ,UAAU,KAAK,YAAY,sCAAsC;AAAA;AAAA;AAAA;AAAA,EAIzE,UAAU,UAAU,UAAU,CAAC,UAAU,IAAI,CAAC,EAAE,WAAW,YAAY,2BAA2B;AAAA;AAAA;AAAA;AAAA,EAIlG,WAAW,UAAU,KAAK,YAAY,gDAAgD;AAAA;AAAA;AAAA;AAAA,EAItF,QAAQ,UAAU,QAAQ,YAAY,uEAAuE;AAAA;AAAA;AAAA;AAAA,EAI7G,QAAQ,UAAU,QAAQ,YAAY,iCAAiC;AAAA;AAAA;AAAA;AAAA,EAIvE,SAAS,UAAU,OAAO,YAAY,mBAAmB;AAAA;AAAA;AAAA;AAAA,EAIzD,QAAQ,UAAU,OAAO,YAAY,kBAAkB;AAAA;AAAA;AAAA;AAAA,EAIvD,gBAAgB,UAAU,KAAK,YAAY,6DAA6D;AAAA,EACxG,cAAc,UAAU,KAAK,YAAY,gDAAgD,EAAE;AAAA,EAC3F,UAAU,UAAU,UAAU,CAAC,UAAU,MAAM,UAAU,MAAM,CAAC,EAAE,YAAY,wBAAwB;AACxG;AAEO,MAAM,8BACX;AAEK,MAAM,8BAA4E;AAAA,EACvF,GAAG;AAAA,EACH,GAAG;AAAA,EACH,OAAO,UAAU,OAAO,YAAY,aAAa;AAAA,EACjD,SAAS,UAAU,KAAK,YAAY,yBAAyB;AAAA,EAC7D,SAAS,UAAU,KAAK,YAAY,0BAA0B;AAAA,EAC9D,UAAU,UAAU,UAAU,CAAC,UAAU,MAAM,UAAU,MAAM,CAAC,EAAE,YAAY,wBAAwB;AACxG;AAEO,MAAM,oCACX;AAEK,MAAM,8BAA4E;AAAA,EACvF,GAAG;AAAA,EACH,GAAG;AAAA;AAAA;AAAA;AAAA,EAIH,cAAc,UAAU,OAAO,YAAY,eAAe;AAAA;AAAA;AAAA;AAAA,EAI1D,aAAa,UAAU,OAAO,YAAY,cAAc;AAAA;AAAA;AAAA;AAAA,EAIxD,WAAW,UAAU,KAAK,YAAY,UAAU;AAAA;AAAA;AAAA;AAAA,EAIhD,UAAU,UAAU,KAAK,YAAY,UAAU;AAAA;AAAA;AAAA;AAAA,EAI/C,cAAc,UAAU,MAAM;AAAA,IAC5B,UAAU,UAAU;AAAA,EACtB,CAAC,EAAE,YAAY,uCAAuC;AAAA;AAAA;AAAA;AAAA,EAItD,aAAa,UAAU,MAAM;AAAA,IAC3B,UAAU,UAAU;AAAA,EACtB,CAAC,EAAE,YAAY,sCAAsC;AAAA,EACrD,GAAG,+BAA+B,uBAAuB;AAC3D;AAEO,MAAM,oCACX;",
6
+ "names": []
7
+ }