@elliemae/ds-mobile 3.0.0-next.66 → 3.0.0-next.69

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 (129) hide show
  1. package/dist/cjs/Accordion/Accordion.js +2 -0
  2. package/dist/cjs/Accordion/Accordion.js.map +2 -2
  3. package/dist/cjs/CategoryBox/CategoryBox.js +1 -0
  4. package/dist/cjs/CategoryBox/CategoryBox.js.map +2 -2
  5. package/dist/cjs/CollectionBox/CollectionBox.js +1 -0
  6. package/dist/cjs/CollectionBox/CollectionBox.js.map +2 -2
  7. package/dist/cjs/GlobalHeader/MobileGlobalHeader.js +1 -0
  8. package/dist/cjs/GlobalHeader/MobileGlobalHeader.js.map +2 -2
  9. package/dist/cjs/GroupBox/GroupBox.js +1 -0
  10. package/dist/cjs/GroupBox/GroupBox.js.map +2 -2
  11. package/dist/cjs/InfiniteLoader/Infiniteloader.js +1 -0
  12. package/dist/cjs/InfiniteLoader/Infiniteloader.js.map +2 -2
  13. package/dist/cjs/InfiniteLoader/VirtualizedInfiniteLoader.js +1 -0
  14. package/dist/cjs/InfiniteLoader/VirtualizedInfiniteLoader.js.map +2 -2
  15. package/dist/cjs/MobileActionToolbar/MobileActionToolbar.js +1 -0
  16. package/dist/cjs/MobileActionToolbar/MobileActionToolbar.js.map +2 -2
  17. package/dist/cjs/MobileActionToolbar/MobileActionToolbarItem.js +1 -0
  18. package/dist/cjs/MobileActionToolbar/MobileActionToolbarItem.js.map +2 -2
  19. package/dist/cjs/MobileBanner/MobileBanner.js +1 -0
  20. package/dist/cjs/MobileBanner/MobileBanner.js.map +2 -2
  21. package/dist/cjs/MobileCard/Card.js +1 -0
  22. package/dist/cjs/MobileCard/Card.js.map +2 -2
  23. package/dist/cjs/MobileCard/Group.js +1 -0
  24. package/dist/cjs/MobileCard/Group.js.map +2 -2
  25. package/dist/cjs/MobileContextMenu/MobileContextMenu.js +1 -0
  26. package/dist/cjs/MobileContextMenu/MobileContextMenu.js.map +2 -2
  27. package/dist/cjs/MobileContextMenu/MobileContextMenuGroup.js +1 -0
  28. package/dist/cjs/MobileContextMenu/MobileContextMenuGroup.js.map +2 -2
  29. package/dist/cjs/MobileContextMenu/MobileContextMenuItem.js +1 -0
  30. package/dist/cjs/MobileContextMenu/MobileContextMenuItem.js.map +2 -2
  31. package/dist/cjs/MobileDatePicker/MobileDatePicker.js +1 -0
  32. package/dist/cjs/MobileDatePicker/MobileDatePicker.js.map +2 -2
  33. package/dist/cjs/MobileDropdownMenu/MobileDropdownMenu.js +1 -0
  34. package/dist/cjs/MobileDropdownMenu/MobileDropdownMenu.js.map +2 -2
  35. package/dist/cjs/MobileEmtpyState/MobileEmptyState.js +1 -0
  36. package/dist/cjs/MobileEmtpyState/MobileEmptyState.js.map +2 -2
  37. package/dist/cjs/MobileFilterbar/Filterbar.js +1 -0
  38. package/dist/cjs/MobileFilterbar/Filterbar.js.map +2 -2
  39. package/dist/cjs/MobileFilterbar/FilterbarItem.js +1 -0
  40. package/dist/cjs/MobileFilterbar/FilterbarItem.js.map +2 -2
  41. package/dist/cjs/MobileFilterbar/FilterbarSort.js +1 -0
  42. package/dist/cjs/MobileFilterbar/FilterbarSort.js.map +2 -2
  43. package/dist/cjs/MobileFooter/Action.js +1 -0
  44. package/dist/cjs/MobileFooter/Action.js.map +2 -2
  45. package/dist/cjs/MobileFooter/Footer.js +1 -0
  46. package/dist/cjs/MobileFooter/Footer.js.map +2 -2
  47. package/dist/cjs/MobileFooter/Text.js +1 -0
  48. package/dist/cjs/MobileFooter/Text.js.map +2 -2
  49. package/dist/cjs/MobileListItem/MobileListItem.js +1 -0
  50. package/dist/cjs/MobileListItem/MobileListItem.js.map +2 -2
  51. package/dist/cjs/MobilePageHeader/MobilePageHeader.js +1 -0
  52. package/dist/cjs/MobilePageHeader/MobilePageHeader.js.map +2 -2
  53. package/dist/cjs/MobileSeparator/Separator.js +1 -0
  54. package/dist/cjs/MobileSeparator/Separator.js.map +2 -2
  55. package/dist/cjs/MobileTimePicker/MobileTimePicker.js +1 -0
  56. package/dist/cjs/MobileTimePicker/MobileTimePicker.js.map +2 -2
  57. package/dist/cjs/Modal/Modal.js +1 -0
  58. package/dist/cjs/Modal/Modal.js.map +2 -2
  59. package/dist/cjs/SideNav/SideNav.js +1 -0
  60. package/dist/cjs/SideNav/SideNav.js.map +2 -2
  61. package/dist/cjs/SwipeToRefresh/SwipeToRefresh.js +1 -0
  62. package/dist/cjs/SwipeToRefresh/SwipeToRefresh.js.map +2 -2
  63. package/dist/cjs/Tabs/index.js +2 -0
  64. package/dist/cjs/Tabs/index.js.map +2 -2
  65. package/dist/esm/Accordion/Accordion.js +2 -0
  66. package/dist/esm/Accordion/Accordion.js.map +2 -2
  67. package/dist/esm/CategoryBox/CategoryBox.js +1 -0
  68. package/dist/esm/CategoryBox/CategoryBox.js.map +2 -2
  69. package/dist/esm/CollectionBox/CollectionBox.js +1 -0
  70. package/dist/esm/CollectionBox/CollectionBox.js.map +2 -2
  71. package/dist/esm/GlobalHeader/MobileGlobalHeader.js +1 -0
  72. package/dist/esm/GlobalHeader/MobileGlobalHeader.js.map +2 -2
  73. package/dist/esm/GroupBox/GroupBox.js +1 -0
  74. package/dist/esm/GroupBox/GroupBox.js.map +2 -2
  75. package/dist/esm/InfiniteLoader/Infiniteloader.js +1 -0
  76. package/dist/esm/InfiniteLoader/Infiniteloader.js.map +2 -2
  77. package/dist/esm/InfiniteLoader/VirtualizedInfiniteLoader.js +1 -0
  78. package/dist/esm/InfiniteLoader/VirtualizedInfiniteLoader.js.map +2 -2
  79. package/dist/esm/MobileActionToolbar/MobileActionToolbar.js +1 -0
  80. package/dist/esm/MobileActionToolbar/MobileActionToolbar.js.map +2 -2
  81. package/dist/esm/MobileActionToolbar/MobileActionToolbarItem.js +1 -0
  82. package/dist/esm/MobileActionToolbar/MobileActionToolbarItem.js.map +2 -2
  83. package/dist/esm/MobileBanner/MobileBanner.js +1 -0
  84. package/dist/esm/MobileBanner/MobileBanner.js.map +2 -2
  85. package/dist/esm/MobileCard/Card.js +1 -0
  86. package/dist/esm/MobileCard/Card.js.map +2 -2
  87. package/dist/esm/MobileCard/Group.js +1 -0
  88. package/dist/esm/MobileCard/Group.js.map +2 -2
  89. package/dist/esm/MobileContextMenu/MobileContextMenu.js +1 -0
  90. package/dist/esm/MobileContextMenu/MobileContextMenu.js.map +2 -2
  91. package/dist/esm/MobileContextMenu/MobileContextMenuGroup.js +1 -0
  92. package/dist/esm/MobileContextMenu/MobileContextMenuGroup.js.map +2 -2
  93. package/dist/esm/MobileContextMenu/MobileContextMenuItem.js +1 -0
  94. package/dist/esm/MobileContextMenu/MobileContextMenuItem.js.map +2 -2
  95. package/dist/esm/MobileDatePicker/MobileDatePicker.js +1 -0
  96. package/dist/esm/MobileDatePicker/MobileDatePicker.js.map +2 -2
  97. package/dist/esm/MobileDropdownMenu/MobileDropdownMenu.js +1 -0
  98. package/dist/esm/MobileDropdownMenu/MobileDropdownMenu.js.map +2 -2
  99. package/dist/esm/MobileEmtpyState/MobileEmptyState.js +1 -0
  100. package/dist/esm/MobileEmtpyState/MobileEmptyState.js.map +2 -2
  101. package/dist/esm/MobileFilterbar/Filterbar.js +1 -0
  102. package/dist/esm/MobileFilterbar/Filterbar.js.map +2 -2
  103. package/dist/esm/MobileFilterbar/FilterbarItem.js +1 -0
  104. package/dist/esm/MobileFilterbar/FilterbarItem.js.map +2 -2
  105. package/dist/esm/MobileFilterbar/FilterbarSort.js +1 -0
  106. package/dist/esm/MobileFilterbar/FilterbarSort.js.map +2 -2
  107. package/dist/esm/MobileFooter/Action.js +1 -0
  108. package/dist/esm/MobileFooter/Action.js.map +2 -2
  109. package/dist/esm/MobileFooter/Footer.js +1 -0
  110. package/dist/esm/MobileFooter/Footer.js.map +2 -2
  111. package/dist/esm/MobileFooter/Text.js +1 -0
  112. package/dist/esm/MobileFooter/Text.js.map +2 -2
  113. package/dist/esm/MobileListItem/MobileListItem.js +1 -0
  114. package/dist/esm/MobileListItem/MobileListItem.js.map +2 -2
  115. package/dist/esm/MobilePageHeader/MobilePageHeader.js +1 -0
  116. package/dist/esm/MobilePageHeader/MobilePageHeader.js.map +2 -2
  117. package/dist/esm/MobileSeparator/Separator.js +1 -0
  118. package/dist/esm/MobileSeparator/Separator.js.map +2 -2
  119. package/dist/esm/MobileTimePicker/MobileTimePicker.js +1 -0
  120. package/dist/esm/MobileTimePicker/MobileTimePicker.js.map +2 -2
  121. package/dist/esm/Modal/Modal.js +1 -0
  122. package/dist/esm/Modal/Modal.js.map +2 -2
  123. package/dist/esm/SideNav/SideNav.js +1 -0
  124. package/dist/esm/SideNav/SideNav.js.map +2 -2
  125. package/dist/esm/SwipeToRefresh/SwipeToRefresh.js +1 -0
  126. package/dist/esm/SwipeToRefresh/SwipeToRefresh.js.map +2 -2
  127. package/dist/esm/Tabs/index.js +2 -0
  128. package/dist/esm/Tabs/index.js.map +2 -2
  129. package/package.json +1 -1
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../../../scripts/build/transpile/react-shim.js", "../../../src/MobileCard/Card.tsx"],
4
- "sourcesContent": ["import * as React from 'react';\nexport { React };\n", "/* eslint-disable react/no-array-index-key */\n/* eslint-disable max-lines */\n/* eslint-disable complexity */\nimport React, { useRef } from 'react';\nimport { describe } from 'react-desc';\nimport styled from 'styled-components';\nimport { space } from '@xstyled/styled-components';\nimport { color, border, op, truncate, withTheme, __UNSAFE_SPACE_TO_DIMSUM, toMobile } from '@elliemae/ds-system';\nimport { GroupItem } from '@elliemae/ds-shared';\nimport { Grid } from '@elliemae/ds-grid';\nimport { StyledCard as Card } from './StyledCard';\nimport { ExpandChevron } from './ExpandChevron';\nimport { useHeight } from './useHeight';\nimport { ExpandableRegion } from './ExpandableRegion';\nimport { cardPropsTypes, MobileCardProps } from './props';\n\nconst TitleEllipsis = styled.div`\n ${truncate()}\n`;\n\nconst Title = styled.div`\n ${space}\n ${truncate()}\n font-weight: ${(props) => props.theme.fontWeights.semibold};\n font-size: ${(props) => toMobile(props.theme.fontSizes.title[600])};\n width: 100%;\n ${color('neutral', 800)}\n`;\nconst Detail = styled.span`\n ${space}\n ${truncate()}\n font-size: ${(props) => toMobile(props.theme.fontSizes.title[500])};\n font-weight: ${(props) => props.theme.fontWeights.regular};\n`;\nconst SubText = styled.span`\n margin-top: ${(props) => __UNSAFE_SPACE_TO_DIMSUM(props.theme.space.xs)};\n ${truncate()}\n &:nth-child(2) {\n padding-left: ${(props) => __UNSAFE_SPACE_TO_DIMSUM(props.theme.space.s)};\n }\n`;\nconst SubTextWrap = styled.div`\n ${truncate()}\n border-top: ${(props) => border(props.theme.colors.neutral['300'])};\n margin-top: 6px;\n margin-bottom: 2px;\n padding-bottom: ${(props) => __UNSAFE_SPACE_TO_DIMSUM(props.theme.space.xxs)};\n font-size: ${(props) => toMobile(props.theme.fontSizes.subTitle[400])};\n ${color('neutral', 500)}\n font-weight: ${(props) => props.theme.fontWeights.regular};\n display: flex;\n justify-content: space-between;\n`;\nconst LeftIcon = styled(Grid)<{ halfM: string }>`\n & > span {\n height: ${(props) => props.halfM};\n width: ${(props) => props.halfM};\n }\n\n & > span > svg,\n svg:not([fill]) {\n height: ${(props) => props.halfM};\n width: ${(props) => props.halfM};\n }\n`;\nconst CenterWrap = styled.div`\n display: flex;\n align-items: center;\n ${truncate()}\n`;\n\nconst MobileCard: React.ComponentType<MobileCardProps> = ({\n children,\n height = 'm',\n leftAddOn,\n leftProp,\n rightProp,\n subText,\n subIcons,\n details,\n theme,\n expandable = false,\n expandedContent,\n value,\n cardContent,\n}) => {\n const subTextRef = useRef(null);\n const subTextHeight = useHeight(subTextRef);\n const isJustChildren = !(subText || subIcons || details);\n const halfM = op('/', __UNSAFE_SPACE_TO_DIMSUM(theme.space.m), 2);\n\n return (\n <GroupItem\n render={(context = {}) => {\n const { activeValue, onChange } = context;\n const selected =\n activeValue !== undefined && (activeValue === value || (activeValue?.length && activeValue?.includes(value)));\n\n return (\n <Card\n data-testid=\"card-wrapper\"\n minHeight={\n height === 'm' ? __UNSAFE_SPACE_TO_DIMSUM(theme.space.xxl) : __UNSAFE_SPACE_TO_DIMSUM(theme.space.xl)\n }\n >\n {expandable && (\n <ExpandChevron\n isExpanded={selected}\n onClick={(e) => {\n e.stopPropagation();\n onChange({ target: { value } });\n }}\n align={subText || subIcons ? 'top' : 'center'}\n />\n )}\n <Grid pb={(subText || subIcons) && subTextHeight} cols={['auto', 'auto']} alignItems=\"center\">\n {leftProp && <Grid ml={__UNSAFE_SPACE_TO_DIMSUM(theme.space.s)}>{leftProp}</Grid>}\n {leftAddOn && (\n <LeftIcon ml={__UNSAFE_SPACE_TO_DIMSUM(theme.space.s)} halfM={halfM}>\n {leftAddOn}\n </LeftIcon>\n )}\n </Grid>\n <Grid\n pl={!leftAddOn ? __UNSAFE_SPACE_TO_DIMSUM(theme.space.s) : __UNSAFE_SPACE_TO_DIMSUM(theme.space.xs)}\n pr={__UNSAFE_SPACE_TO_DIMSUM(theme.space.s)}\n width=\"100%\"\n >\n <CenterWrap>\n <Title pt={!isJustChildren && halfM} data-testid=\"card-title\">\n <TitleEllipsis>{children}</TitleEllipsis>\n {details && (\n <Grid\n data-testid=\"card-details\"\n cols={details.map(() => 'min-content')}\n mb={(!(subText || subIcons) && halfM) || 0}\n pt={op('/', __UNSAFE_SPACE_TO_DIMSUM(theme.space.xxs), 2)}\n >\n {details.map((d, i) => (\n <Detail key={i}>\n {d}\n {i < details.length - 1 && <Detail px={__UNSAFE_SPACE_TO_DIMSUM(theme.space.xxs)}>\u2022</Detail>}\n </Detail>\n ))}\n </Grid>\n )}\n </Title>\n {rightProp &&\n rightProp.map((prop, i) => (\n <Grid ml={__UNSAFE_SPACE_TO_DIMSUM(theme.space.s)} key={i}>\n {prop}\n </Grid>\n ))}\n </CenterWrap>\n {subIcons && (\n <SubTextWrap ref={subTextRef}>\n <SubText>{subIcons}</SubText>\n {subText && subText[1] && <SubText data-testid=\"card-subText\">{subText[1]}</SubText>}\n </SubTextWrap>\n )}\n {subText && !subIcons && (\n <SubTextWrap ref={subTextRef}>\n {subText.map((s, i) => (\n <SubText data-testid=\"card-subText\" key={i}>\n {s}\n </SubText>\n ))}\n </SubTextWrap>\n )}\n <ExpandableRegion show={selected} content={expandedContent} />\n {cardContent && <Grid>{cardContent}</Grid>}\n </Grid>\n </Card>\n );\n }}\n />\n );\n};\n\nMobileCard.propTypes = cardPropsTypes;\n\nconst DSMobileCardWithSchema = describe(MobileCard);\n\nDSMobileCardWithSchema.propTypes = cardPropsTypes;\n\nexport { DSMobileCardWithSchema };\n\nexport default withTheme(MobileCard);\n"],
5
- "mappings": "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",
4
+ "sourcesContent": ["import * as React from 'react';\nexport { React };\n", "/* eslint-disable react/no-array-index-key */\n/* eslint-disable max-lines */\n/* eslint-disable complexity */\nimport React, { useRef } from 'react';\nimport { describe } from 'react-desc';\nimport styled from 'styled-components';\nimport { space } from '@xstyled/styled-components';\nimport { color, border, op, truncate, withTheme, __UNSAFE_SPACE_TO_DIMSUM, toMobile } from '@elliemae/ds-system';\nimport { GroupItem } from '@elliemae/ds-shared';\nimport { Grid } from '@elliemae/ds-grid';\nimport { StyledCard as Card } from './StyledCard';\nimport { ExpandChevron } from './ExpandChevron';\nimport { useHeight } from './useHeight';\nimport { ExpandableRegion } from './ExpandableRegion';\nimport { cardPropsTypes, MobileCardProps } from './props';\n\nconst TitleEllipsis = styled.div`\n ${truncate()}\n`;\n\nconst Title = styled.div`\n ${space}\n ${truncate()}\n font-weight: ${(props) => props.theme.fontWeights.semibold};\n font-size: ${(props) => toMobile(props.theme.fontSizes.title[600])};\n width: 100%;\n ${color('neutral', 800)}\n`;\nconst Detail = styled.span`\n ${space}\n ${truncate()}\n font-size: ${(props) => toMobile(props.theme.fontSizes.title[500])};\n font-weight: ${(props) => props.theme.fontWeights.regular};\n`;\nconst SubText = styled.span`\n margin-top: ${(props) => __UNSAFE_SPACE_TO_DIMSUM(props.theme.space.xs)};\n ${truncate()}\n &:nth-child(2) {\n padding-left: ${(props) => __UNSAFE_SPACE_TO_DIMSUM(props.theme.space.s)};\n }\n`;\nconst SubTextWrap = styled.div`\n ${truncate()}\n border-top: ${(props) => border(props.theme.colors.neutral['300'])};\n margin-top: 6px;\n margin-bottom: 2px;\n padding-bottom: ${(props) => __UNSAFE_SPACE_TO_DIMSUM(props.theme.space.xxs)};\n font-size: ${(props) => toMobile(props.theme.fontSizes.subTitle[400])};\n ${color('neutral', 500)}\n font-weight: ${(props) => props.theme.fontWeights.regular};\n display: flex;\n justify-content: space-between;\n`;\nconst LeftIcon = styled(Grid)<{ halfM: string }>`\n & > span {\n height: ${(props) => props.halfM};\n width: ${(props) => props.halfM};\n }\n\n & > span > svg,\n svg:not([fill]) {\n height: ${(props) => props.halfM};\n width: ${(props) => props.halfM};\n }\n`;\nconst CenterWrap = styled.div`\n display: flex;\n align-items: center;\n ${truncate()}\n`;\n\nconst MobileCard: React.ComponentType<MobileCardProps> = ({\n children,\n height = 'm',\n leftAddOn,\n leftProp,\n rightProp,\n subText,\n subIcons,\n details,\n theme,\n expandable = false,\n expandedContent,\n value,\n cardContent,\n}) => {\n const subTextRef = useRef(null);\n const subTextHeight = useHeight(subTextRef);\n const isJustChildren = !(subText || subIcons || details);\n const halfM = op('/', __UNSAFE_SPACE_TO_DIMSUM(theme.space.m), 2);\n\n return (\n <GroupItem\n render={(context = {}) => {\n const { activeValue, onChange } = context;\n const selected =\n activeValue !== undefined && (activeValue === value || (activeValue?.length && activeValue?.includes(value)));\n\n return (\n <Card\n data-testid=\"card-wrapper\"\n minHeight={\n height === 'm' ? __UNSAFE_SPACE_TO_DIMSUM(theme.space.xxl) : __UNSAFE_SPACE_TO_DIMSUM(theme.space.xl)\n }\n >\n {expandable && (\n <ExpandChevron\n isExpanded={selected}\n onClick={(e) => {\n e.stopPropagation();\n onChange({ target: { value } });\n }}\n align={subText || subIcons ? 'top' : 'center'}\n />\n )}\n <Grid pb={(subText || subIcons) && subTextHeight} cols={['auto', 'auto']} alignItems=\"center\">\n {leftProp && <Grid ml={__UNSAFE_SPACE_TO_DIMSUM(theme.space.s)}>{leftProp}</Grid>}\n {leftAddOn && (\n <LeftIcon ml={__UNSAFE_SPACE_TO_DIMSUM(theme.space.s)} halfM={halfM}>\n {leftAddOn}\n </LeftIcon>\n )}\n </Grid>\n <Grid\n pl={!leftAddOn ? __UNSAFE_SPACE_TO_DIMSUM(theme.space.s) : __UNSAFE_SPACE_TO_DIMSUM(theme.space.xs)}\n pr={__UNSAFE_SPACE_TO_DIMSUM(theme.space.s)}\n width=\"100%\"\n >\n <CenterWrap>\n <Title pt={!isJustChildren && halfM} data-testid=\"card-title\">\n <TitleEllipsis>{children}</TitleEllipsis>\n {details && (\n <Grid\n data-testid=\"card-details\"\n cols={details.map(() => 'min-content')}\n mb={(!(subText || subIcons) && halfM) || 0}\n pt={op('/', __UNSAFE_SPACE_TO_DIMSUM(theme.space.xxs), 2)}\n >\n {details.map((d, i) => (\n <Detail key={i}>\n {d}\n {i < details.length - 1 && <Detail px={__UNSAFE_SPACE_TO_DIMSUM(theme.space.xxs)}>\u2022</Detail>}\n </Detail>\n ))}\n </Grid>\n )}\n </Title>\n {rightProp &&\n rightProp.map((prop, i) => (\n <Grid ml={__UNSAFE_SPACE_TO_DIMSUM(theme.space.s)} key={i}>\n {prop}\n </Grid>\n ))}\n </CenterWrap>\n {subIcons && (\n <SubTextWrap ref={subTextRef}>\n <SubText>{subIcons}</SubText>\n {subText && subText[1] && <SubText data-testid=\"card-subText\">{subText[1]}</SubText>}\n </SubTextWrap>\n )}\n {subText && !subIcons && (\n <SubTextWrap ref={subTextRef}>\n {subText.map((s, i) => (\n <SubText data-testid=\"card-subText\" key={i}>\n {s}\n </SubText>\n ))}\n </SubTextWrap>\n )}\n <ExpandableRegion show={selected} content={expandedContent} />\n {cardContent && <Grid>{cardContent}</Grid>}\n </Grid>\n </Card>\n );\n }}\n />\n );\n};\n\nMobileCard.propTypes = cardPropsTypes;\nMobileCard.displayName = 'MobileCard';\nconst DSMobileCardWithSchema = describe(MobileCard);\n\nDSMobileCardWithSchema.propTypes = cardPropsTypes;\n\nexport { DSMobileCardWithSchema };\n\nexport default withTheme(MobileCard);\n"],
5
+ "mappings": "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",
6
6
  "names": []
7
7
  }
@@ -66,6 +66,7 @@ const props = {
66
66
  onChange: PropTypes.func.description("")
67
67
  };
68
68
  MobileCardGroup.propTypes = props;
69
+ MobileCardGroup.displayName = "MobileCardGroup";
69
70
  const DSMobileCardGroupWithSchema = describe(MobileCardGroup);
70
71
  DSMobileCardGroupWithSchema.propTypes = props;
71
72
  var Group_default = withTheme(MobileCardGroup);
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../../../scripts/build/transpile/react-shim.js", "../../../src/MobileCard/Group.tsx"],
4
- "sourcesContent": ["import * as React from 'react';\nexport { React };\n", "/* eslint-disable react/no-array-index-key */\nimport React from 'react';\nimport { describe, PropTypes } from 'react-desc';\nimport styled from 'styled-components';\nimport { Group } from '@elliemae/ds-shared';\nimport { Grid } from '@elliemae/ds-grid';\nimport { color, border, withTheme, truncate, __UNSAFE_SPACE_TO_DIMSUM } from '@elliemae/ds-system';\nimport { StyledCard as Card } from './StyledCard';\n\nconst GroupGrid = styled(Grid)`\n ${Card} {\n border-top: none;\n }\n\n ${({ theme, withTopBorder }) => (withTopBorder ? `border-top: ${border(theme.colors.neutral['100'])}` : '')}\n`;\n\nconst GroupTitle = styled.span`\n ${truncate()}\n`;\n\nconst GroupTitleGrid = styled.div`\n display: flex;\n justify-content: space-between;\n padding: 0 ${(props) => props.theme.space.xs};\n font-size: ${(props) => `calc(${__UNSAFE_SPACE_TO_DIMSUM(props.theme.space.m)} / 2)`};\n ${color('neutral', '700')}\n font-weight: ${(props) => props.theme.fontWeights.semibold};\n background-color: ${(props) => props.theme.colors.brand['200']};\n border-top: ${(props) => border(props.theme.colors.brand['300'])};\n line-height: ${(props) => __UNSAFE_SPACE_TO_DIMSUM(props.theme.space.m)};\n @media (min-width: 1024px) {\n background-color: ${(props) => props.theme.colors.neutral['080']};\n border-top: ${(props) => border(props.theme.colors.neutral['080'])};\n }\n`;\n\nconst MobileCardGroup = ({\n children,\n theme,\n title,\n action,\n activeValue,\n allowMultipleOpen = false,\n onChange = () => null,\n}) => {\n const rows = !title ? ['auto'] : [__UNSAFE_SPACE_TO_DIMSUM(theme.space.m), 'auto'];\n\n return (\n <Group activeValue={activeValue} multiple={allowMultipleOpen} onChange={onChange}>\n <GroupGrid withTopBorder={!title} rows={rows}>\n {!!title && (\n <GroupTitleGrid pl=\"xxs\">\n <GroupTitle>{title}</GroupTitle>\n {action}\n </GroupTitleGrid>\n )}\n <Grid>\n {React.Children.map(\n children,\n (child, idx) =>\n React.cloneElement(child, {\n key: idx,\n value: idx,\n idx,\n }),\n null,\n )}\n </Grid>\n </GroupGrid>\n </Group>\n );\n};\n\nconst props = {\n theme: PropTypes.object.isRequired.description(''),\n /**\n * Defines group title\n */\n title: PropTypes.string.description(''),\n /**\n * Pass one or more Mobile Cards to render as a group\n */\n children: PropTypes.oneOfType([PropTypes.element, PropTypes.arrayOf(PropTypes.element)]).isRequired.description(''),\n /**\n * Group header addon\n */\n action: PropTypes.element.description(''),\n /** */\n activeValue: PropTypes.oneOfType([PropTypes.number, PropTypes.arrayOf(PropTypes.number)]).description(''),\n /** */\n allowMultipleOpen: PropTypes.bool.description(''),\n /** */\n onChange: PropTypes.func.description(''),\n};\n\nMobileCardGroup.propTypes = props;\n\nconst DSMobileCardGroupWithSchema = describe(MobileCardGroup);\n\nDSMobileCardGroupWithSchema.propTypes = props;\n\nexport { DSMobileCardGroupWithSchema };\n\nexport default withTheme(MobileCardGroup);\n"],
5
- "mappings": "AAAA;ACCA;AACA;AACA;AACA;AACA;AACA;AACA;AAEA,MAAM,YAAY,OAAO,IAAI;AAAA,IACzB;AAAA;AAAA;AAAA;AAAA,IAIA,CAAC,EAAE,OAAO,oBAAqB,gBAAgB,eAAe,OAAO,MAAM,OAAO,QAAQ,MAAM,MAAM;AAAA;AAG1G,MAAM,aAAa,OAAO;AAAA,IACtB,SAAS;AAAA;AAGb,MAAM,iBAAiB,OAAO;AAAA;AAAA;AAAA,eAGf,CAAC,WAAU,OAAM,MAAM,MAAM;AAAA,eAC7B,CAAC,WAAU,QAAQ,yBAAyB,OAAM,MAAM,MAAM,CAAC;AAAA,IAC1E,MAAM,WAAW,KAAK;AAAA,iBACT,CAAC,WAAU,OAAM,MAAM,YAAY;AAAA,sBAC9B,CAAC,WAAU,OAAM,MAAM,OAAO,MAAM;AAAA,gBAC1C,CAAC,WAAU,OAAO,OAAM,MAAM,OAAO,MAAM,MAAM;AAAA,iBAChD,CAAC,WAAU,yBAAyB,OAAM,MAAM,MAAM,CAAC;AAAA;AAAA,wBAEhD,CAAC,WAAU,OAAM,MAAM,OAAO,QAAQ;AAAA,kBAC5C,CAAC,WAAU,OAAO,OAAM,MAAM,OAAO,QAAQ,MAAM;AAAA;AAAA;AAIrE,MAAM,kBAAkB,CAAC;AAAA,EACvB;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA,oBAAoB;AAAA,EACpB,WAAW,MAAM;AAAA,MACb;AACJ,QAAM,OAAO,CAAC,QAAQ,CAAC,MAAM,IAAI,CAAC,yBAAyB,MAAM,MAAM,CAAC,GAAG,MAAM;AAEjF,SACE,qCAAC;AAAA,IAAM;AAAA,IAA0B,UAAU;AAAA,IAAmB;AAAA,KAC5D,qCAAC;AAAA,IAAU,eAAe,CAAC;AAAA,IAAO;AAAA,KAC/B,CAAC,CAAC,SACD,qCAAC;AAAA,IAAe,IAAG;AAAA,KACjB,qCAAC,kBAAY,KAAM,GAClB,MACH,GAEF,qCAAC,YACE,OAAM,SAAS,IACd,UACA,CAAC,OAAO,QACN,OAAM,aAAa,OAAO;AAAA,IACxB,KAAK;AAAA,IACL,OAAO;AAAA,IACP;AAAA,EACF,CAAC,GACH,IACF,CACF,CACF,CACF;AAEJ;AAEA,MAAM,QAAQ;AAAA,EACZ,OAAO,UAAU,OAAO,WAAW,YAAY,EAAE;AAAA,EAIjD,OAAO,UAAU,OAAO,YAAY,EAAE;AAAA,EAItC,UAAU,UAAU,UAAU,CAAC,UAAU,SAAS,UAAU,QAAQ,UAAU,OAAO,CAAC,CAAC,EAAE,WAAW,YAAY,EAAE;AAAA,EAIlH,QAAQ,UAAU,QAAQ,YAAY,EAAE;AAAA,EAExC,aAAa,UAAU,UAAU,CAAC,UAAU,QAAQ,UAAU,QAAQ,UAAU,MAAM,CAAC,CAAC,EAAE,YAAY,EAAE;AAAA,EAExG,mBAAmB,UAAU,KAAK,YAAY,EAAE;AAAA,EAEhD,UAAU,UAAU,KAAK,YAAY,EAAE;AACzC;AAEA,gBAAgB,YAAY;AAE5B,MAAM,8BAA8B,SAAS,eAAe;AAE5D,4BAA4B,YAAY;AAIxC,IAAO,gBAAQ,UAAU,eAAe;",
4
+ "sourcesContent": ["import * as React from 'react';\nexport { React };\n", "/* eslint-disable react/no-array-index-key */\nimport React from 'react';\nimport { describe, PropTypes } from 'react-desc';\nimport styled from 'styled-components';\nimport { Group } from '@elliemae/ds-shared';\nimport { Grid } from '@elliemae/ds-grid';\nimport { color, border, withTheme, truncate, __UNSAFE_SPACE_TO_DIMSUM } from '@elliemae/ds-system';\nimport { StyledCard as Card } from './StyledCard';\n\nconst GroupGrid = styled(Grid)`\n ${Card} {\n border-top: none;\n }\n\n ${({ theme, withTopBorder }) => (withTopBorder ? `border-top: ${border(theme.colors.neutral['100'])}` : '')}\n`;\n\nconst GroupTitle = styled.span`\n ${truncate()}\n`;\n\nconst GroupTitleGrid = styled.div`\n display: flex;\n justify-content: space-between;\n padding: 0 ${(props) => props.theme.space.xs};\n font-size: ${(props) => `calc(${__UNSAFE_SPACE_TO_DIMSUM(props.theme.space.m)} / 2)`};\n ${color('neutral', '700')}\n font-weight: ${(props) => props.theme.fontWeights.semibold};\n background-color: ${(props) => props.theme.colors.brand['200']};\n border-top: ${(props) => border(props.theme.colors.brand['300'])};\n line-height: ${(props) => __UNSAFE_SPACE_TO_DIMSUM(props.theme.space.m)};\n @media (min-width: 1024px) {\n background-color: ${(props) => props.theme.colors.neutral['080']};\n border-top: ${(props) => border(props.theme.colors.neutral['080'])};\n }\n`;\n\nconst MobileCardGroup = ({\n children,\n theme,\n title,\n action,\n activeValue,\n allowMultipleOpen = false,\n onChange = () => null,\n}) => {\n const rows = !title ? ['auto'] : [__UNSAFE_SPACE_TO_DIMSUM(theme.space.m), 'auto'];\n\n return (\n <Group activeValue={activeValue} multiple={allowMultipleOpen} onChange={onChange}>\n <GroupGrid withTopBorder={!title} rows={rows}>\n {!!title && (\n <GroupTitleGrid pl=\"xxs\">\n <GroupTitle>{title}</GroupTitle>\n {action}\n </GroupTitleGrid>\n )}\n <Grid>\n {React.Children.map(\n children,\n (child, idx) =>\n React.cloneElement(child, {\n key: idx,\n value: idx,\n idx,\n }),\n null,\n )}\n </Grid>\n </GroupGrid>\n </Group>\n );\n};\n\nconst props = {\n theme: PropTypes.object.isRequired.description(''),\n /**\n * Defines group title\n */\n title: PropTypes.string.description(''),\n /**\n * Pass one or more Mobile Cards to render as a group\n */\n children: PropTypes.oneOfType([PropTypes.element, PropTypes.arrayOf(PropTypes.element)]).isRequired.description(''),\n /**\n * Group header addon\n */\n action: PropTypes.element.description(''),\n /** */\n activeValue: PropTypes.oneOfType([PropTypes.number, PropTypes.arrayOf(PropTypes.number)]).description(''),\n /** */\n allowMultipleOpen: PropTypes.bool.description(''),\n /** */\n onChange: PropTypes.func.description(''),\n};\n\nMobileCardGroup.propTypes = props;\nMobileCardGroup.displayName = 'MobileCardGroup';\nconst DSMobileCardGroupWithSchema = describe(MobileCardGroup);\n\nDSMobileCardGroupWithSchema.propTypes = props;\n\nexport { DSMobileCardGroupWithSchema };\n\nexport default withTheme(MobileCardGroup);\n"],
5
+ "mappings": "AAAA;ACCA;AACA;AACA;AACA;AACA;AACA;AACA;AAEA,MAAM,YAAY,OAAO,IAAI;AAAA,IACzB;AAAA;AAAA;AAAA;AAAA,IAIA,CAAC,EAAE,OAAO,oBAAqB,gBAAgB,eAAe,OAAO,MAAM,OAAO,QAAQ,MAAM,MAAM;AAAA;AAG1G,MAAM,aAAa,OAAO;AAAA,IACtB,SAAS;AAAA;AAGb,MAAM,iBAAiB,OAAO;AAAA;AAAA;AAAA,eAGf,CAAC,WAAU,OAAM,MAAM,MAAM;AAAA,eAC7B,CAAC,WAAU,QAAQ,yBAAyB,OAAM,MAAM,MAAM,CAAC;AAAA,IAC1E,MAAM,WAAW,KAAK;AAAA,iBACT,CAAC,WAAU,OAAM,MAAM,YAAY;AAAA,sBAC9B,CAAC,WAAU,OAAM,MAAM,OAAO,MAAM;AAAA,gBAC1C,CAAC,WAAU,OAAO,OAAM,MAAM,OAAO,MAAM,MAAM;AAAA,iBAChD,CAAC,WAAU,yBAAyB,OAAM,MAAM,MAAM,CAAC;AAAA;AAAA,wBAEhD,CAAC,WAAU,OAAM,MAAM,OAAO,QAAQ;AAAA,kBAC5C,CAAC,WAAU,OAAO,OAAM,MAAM,OAAO,QAAQ,MAAM;AAAA;AAAA;AAIrE,MAAM,kBAAkB,CAAC;AAAA,EACvB;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA,oBAAoB;AAAA,EACpB,WAAW,MAAM;AAAA,MACb;AACJ,QAAM,OAAO,CAAC,QAAQ,CAAC,MAAM,IAAI,CAAC,yBAAyB,MAAM,MAAM,CAAC,GAAG,MAAM;AAEjF,SACE,qCAAC;AAAA,IAAM;AAAA,IAA0B,UAAU;AAAA,IAAmB;AAAA,KAC5D,qCAAC;AAAA,IAAU,eAAe,CAAC;AAAA,IAAO;AAAA,KAC/B,CAAC,CAAC,SACD,qCAAC;AAAA,IAAe,IAAG;AAAA,KACjB,qCAAC,kBAAY,KAAM,GAClB,MACH,GAEF,qCAAC,YACE,OAAM,SAAS,IACd,UACA,CAAC,OAAO,QACN,OAAM,aAAa,OAAO;AAAA,IACxB,KAAK;AAAA,IACL,OAAO;AAAA,IACP;AAAA,EACF,CAAC,GACH,IACF,CACF,CACF,CACF;AAEJ;AAEA,MAAM,QAAQ;AAAA,EACZ,OAAO,UAAU,OAAO,WAAW,YAAY,EAAE;AAAA,EAIjD,OAAO,UAAU,OAAO,YAAY,EAAE;AAAA,EAItC,UAAU,UAAU,UAAU,CAAC,UAAU,SAAS,UAAU,QAAQ,UAAU,OAAO,CAAC,CAAC,EAAE,WAAW,YAAY,EAAE;AAAA,EAIlH,QAAQ,UAAU,QAAQ,YAAY,EAAE;AAAA,EAExC,aAAa,UAAU,UAAU,CAAC,UAAU,QAAQ,UAAU,QAAQ,UAAU,MAAM,CAAC,CAAC,EAAE,YAAY,EAAE;AAAA,EAExG,mBAAmB,UAAU,KAAK,YAAY,EAAE;AAAA,EAEhD,UAAU,UAAU,KAAK,YAAY,EAAE;AACzC;AAEA,gBAAgB,YAAY;AAC5B,gBAAgB,cAAc;AAC9B,MAAM,8BAA8B,SAAS,eAAe;AAE5D,4BAA4B,YAAY;AAIxC,IAAO,gBAAQ,UAAU,eAAe;",
6
6
  "names": []
7
7
  }
@@ -182,6 +182,7 @@ const props = {
182
182
  ]).description("selected elements for multi and single select")
183
183
  };
184
184
  DSMobileContextMenu.propTypes = props;
185
+ DSMobileContextMenu.displayName = "DSMobileContextMenu";
185
186
  const DSMobileContextMenuWithSchema = describe(DSMobileContextMenu);
186
187
  DSMobileContextMenuWithSchema.propTypes = props;
187
188
  export {
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../../../scripts/build/transpile/react-shim.js", "../../../src/MobileContextMenu/MobileContextMenu.tsx"],
4
- "sourcesContent": ["import * as React from 'react';\nexport { React };\n", "/* eslint-disable import/no-unresolved */\n/* eslint-disable react/no-array-index-key */\n/* eslint-disable func-names */\n/* eslint-disable max-lines */\nimport React, { useState, useRef, useMemo } from 'react';\nimport { noop } from 'lodash';\nimport { describe, PropTypes } from 'react-desc';\nimport styled from 'styled-components';\nimport { Grid } from '@elliemae/ds-grid';\nimport { DSBackdrop } from '@elliemae/ds-backdrop';\nimport { truncate, withTheme } from '@elliemae/ds-system';\nimport { Group } from '@elliemae/ds-shared';\nimport { DSMobileContextMenuGroup as ContextMenuGroup } from './MobileContextMenuGroup';\n\nconst StyledContainer = styled(Grid)`\n background: ${(props) => props.theme.colors.neutral['000']};\n z-index: ${(props) => props.zIndex};\n width: ${(props) => `calc(100% - ${props.theme.space.xs})`};\n position: fixed;\n bottom: 0;\n left: ${(props) => props.theme.space.xxs};\n max-height: 90vh;\n border-top-left-radius: 5px;\n border-top-right-radius: 5px;\n box-shadow: 0 0px 24px 0 rgba(0, 0, 0, 0.5), 0 0px 11px 0 rgba(0, 0, 0, 0.5);\n`;\n\nconst StyledTitle = styled(Grid)`\n font-size: 16px;\n font-weight: ${(props) => props.theme.fontWeights.semibold};\n color: ${(props) => props.theme.colors.neutral['000']};\n ${truncate()}\n\n & > span {\n height: 20px;\n width: 20px;\n }\n\n & > span > svg,\n svg:not([fill]) {\n height: 20px;\n width: 20px;\n fill: ${(props) => props.theme.colors.neutral['000']};\n }\n`;\n\nconst HeaderContainer = styled(Grid)`\n border-top-left-radius: 5px;\n border-top-right-radius: 5px;\n background: ${(props) => props.theme.colors.brand['600']};\n`;\n\nconst isArr = (prop) => Array.isArray(prop);\n\nconst DSMobileContextMenu = withTheme(\n ({\n open = false,\n title = '',\n multiple = false,\n singleSelect = false,\n onChange = noop,\n onClickOutside = noop,\n children,\n theme,\n backdropZIndex,\n zIndex = 1,\n dataTestid = 'mobile-context-menu',\n buttonFooter = null,\n onApply = noop,\n selecteds: initSelecteds,\n }) => {\n const [selectedItems, setSelectedItems] = useState([]);\n const trueSelected = useMemo(\n () => (initSelecteds !== undefined ? initSelecteds : [...selectedItems]),\n [initSelecteds, selectedItems],\n );\n const containerRef = useRef(null);\n const handleChange = (value, childProps, event) => {\n onChange(value, childProps, event);\n if (initSelecteds === undefined) {\n if (multiple) setSelectedItems([...value]);\n else if (singleSelect) setSelectedItems(value);\n }\n };\n\n const handleApply = function (e) {\n if (this.onClick) this.onClick(e);\n onApply(e, selectedItems);\n };\n\n const rows = [theme.space.s, 1];\n if (buttonFooter) rows.push('56px');\n\n if (!open) return null;\n\n return (\n <>\n <DSBackdrop\n type=\"cover\"\n zIndex={backdropZIndex}\n onClick={(e) => {\n // PUI-4481 prevent click on elements below backdrop\n e.stopPropagation();\n onClickOutside(e);\n }}\n />\n <StyledContainer zIndex={zIndex} rows={rows} ref={containerRef} data-testid=\"ds-mobile-context-menu\">\n <HeaderContainer justifyContent=\"center\" alignItems=\"center\" pl=\"xs\" pr=\"xs\">\n <StyledTitle alignItems=\"center\" gutter=\"xxs\" cols={Array(isArr(title) ? title.length : 1).fill('auto')}>\n {title}\n </StyledTitle>\n </HeaderContainer>\n <Grid style={{ overflow: 'hidden' }}>\n <Grid style={{ overflow: 'auto' }}>\n <Group activeValue={trueSelected} multiple={multiple} onChange={handleChange}>\n {React.Children.map(children, (child, ii) => {\n const isGroup =\n child.type === (<ContextMenuGroup />).type ||\n child.type?.name === ContextMenuGroup.componentType ||\n child.type === ContextMenuGroup.type;\n const { onClick = noop } = child.props;\n const value = ii;\n let isSelected;\n if (singleSelect) isSelected = trueSelected === value;\n else if (multiple) isSelected = trueSelected.includes(value);\n return React.cloneElement(child, {\n value,\n key: `cm.${ii}`,\n isMulti: multiple,\n singleSelect,\n isSelected,\n onClick: !isGroup ? (e) => onClick(e, child.props) : null,\n selectedItems: isGroup ? trueSelected : null,\n });\n })}\n </Group>\n </Grid>\n </Grid>\n {buttonFooter && (\n <Grid pl=\"xs\" pr=\"xs\" alignItems=\"center\">\n {React.cloneElement(buttonFooter, {\n ...buttonFooter.props,\n containerProps: {\n 'data-testid': `${dataTestid}--btn`,\n },\n buttonType: 'primary',\n size: 'l',\n onClick: handleApply.bind(buttonFooter.props),\n })}\n </Grid>\n )}\n </StyledContainer>\n </>\n );\n },\n);\n\nconst props = {\n /** toggle open the menu */\n open: PropTypes.bool.description('toggle open the menu'),\n /** context menu title */\n title: PropTypes.oneOfType([\n PropTypes.string,\n PropTypes.arrayOf(PropTypes.oneOfType([PropTypes.string, PropTypes.node])),\n ]).description('context menu title'),\n /** change handler for selectable context menu */\n onChange: PropTypes.func.description('change handler for selectable context menu'),\n /** multi select */\n multiple: PropTypes.bool.description('multi select'),\n /** click outside callback handler */\n onClickOutside: PropTypes.func.description('click outside callback handler'),\n /** array of mobile context menu items */\n children: PropTypes.arrayOf(PropTypes.element).description('array of mobile context menu items'),\n /** z index for overlay div */\n backdropZIndex: PropTypes.number.description('z index for overlay div'),\n /** z index for menu container */\n zIndex: PropTypes.number.description('z index for menu container'),\n /** for e2e tests */\n dataTestid: PropTypes.string.description('for e2e tests'),\n /** bottom button */\n buttonFooter: PropTypes.element.description('bottom button'),\n /** callback */\n onApply: PropTypes.func.description('callback'),\n /** selected elements for multi and single select */\n selecteds: PropTypes.oneOfType([\n PropTypes.arrayOf(PropTypes.oneOfType([PropTypes.string, PropTypes.number])),\n PropTypes.number,\n ]).description('selected elements for multi and single select'),\n};\n\nDSMobileContextMenu.propTypes = props;\n\nconst DSMobileContextMenuWithSchema = describe(DSMobileContextMenu);\n\nDSMobileContextMenuWithSchema.propTypes = props;\n\nexport { DSMobileContextMenu, DSMobileContextMenuWithSchema };\n"],
5
- "mappings": "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",
4
+ "sourcesContent": ["import * as React from 'react';\nexport { React };\n", "/* eslint-disable import/no-unresolved */\n/* eslint-disable react/no-array-index-key */\n/* eslint-disable func-names */\n/* eslint-disable max-lines */\nimport React, { useState, useRef, useMemo } from 'react';\nimport { noop } from 'lodash';\nimport { describe, PropTypes } from 'react-desc';\nimport styled from 'styled-components';\nimport { Grid } from '@elliemae/ds-grid';\nimport { DSBackdrop } from '@elliemae/ds-backdrop';\nimport { truncate, withTheme } from '@elliemae/ds-system';\nimport { Group } from '@elliemae/ds-shared';\nimport { DSMobileContextMenuGroup as ContextMenuGroup } from './MobileContextMenuGroup';\n\nconst StyledContainer = styled(Grid)`\n background: ${(props) => props.theme.colors.neutral['000']};\n z-index: ${(props) => props.zIndex};\n width: ${(props) => `calc(100% - ${props.theme.space.xs})`};\n position: fixed;\n bottom: 0;\n left: ${(props) => props.theme.space.xxs};\n max-height: 90vh;\n border-top-left-radius: 5px;\n border-top-right-radius: 5px;\n box-shadow: 0 0px 24px 0 rgba(0, 0, 0, 0.5), 0 0px 11px 0 rgba(0, 0, 0, 0.5);\n`;\n\nconst StyledTitle = styled(Grid)`\n font-size: 16px;\n font-weight: ${(props) => props.theme.fontWeights.semibold};\n color: ${(props) => props.theme.colors.neutral['000']};\n ${truncate()}\n\n & > span {\n height: 20px;\n width: 20px;\n }\n\n & > span > svg,\n svg:not([fill]) {\n height: 20px;\n width: 20px;\n fill: ${(props) => props.theme.colors.neutral['000']};\n }\n`;\n\nconst HeaderContainer = styled(Grid)`\n border-top-left-radius: 5px;\n border-top-right-radius: 5px;\n background: ${(props) => props.theme.colors.brand['600']};\n`;\n\nconst isArr = (prop) => Array.isArray(prop);\n\nconst DSMobileContextMenu = withTheme(\n ({\n open = false,\n title = '',\n multiple = false,\n singleSelect = false,\n onChange = noop,\n onClickOutside = noop,\n children,\n theme,\n backdropZIndex,\n zIndex = 1,\n dataTestid = 'mobile-context-menu',\n buttonFooter = null,\n onApply = noop,\n selecteds: initSelecteds,\n }) => {\n const [selectedItems, setSelectedItems] = useState([]);\n const trueSelected = useMemo(\n () => (initSelecteds !== undefined ? initSelecteds : [...selectedItems]),\n [initSelecteds, selectedItems],\n );\n const containerRef = useRef(null);\n const handleChange = (value, childProps, event) => {\n onChange(value, childProps, event);\n if (initSelecteds === undefined) {\n if (multiple) setSelectedItems([...value]);\n else if (singleSelect) setSelectedItems(value);\n }\n };\n\n const handleApply = function (e) {\n if (this.onClick) this.onClick(e);\n onApply(e, selectedItems);\n };\n\n const rows = [theme.space.s, 1];\n if (buttonFooter) rows.push('56px');\n\n if (!open) return null;\n\n return (\n <>\n <DSBackdrop\n type=\"cover\"\n zIndex={backdropZIndex}\n onClick={(e) => {\n // PUI-4481 prevent click on elements below backdrop\n e.stopPropagation();\n onClickOutside(e);\n }}\n />\n <StyledContainer zIndex={zIndex} rows={rows} ref={containerRef} data-testid=\"ds-mobile-context-menu\">\n <HeaderContainer justifyContent=\"center\" alignItems=\"center\" pl=\"xs\" pr=\"xs\">\n <StyledTitle alignItems=\"center\" gutter=\"xxs\" cols={Array(isArr(title) ? title.length : 1).fill('auto')}>\n {title}\n </StyledTitle>\n </HeaderContainer>\n <Grid style={{ overflow: 'hidden' }}>\n <Grid style={{ overflow: 'auto' }}>\n <Group activeValue={trueSelected} multiple={multiple} onChange={handleChange}>\n {React.Children.map(children, (child, ii) => {\n const isGroup =\n child.type === (<ContextMenuGroup />).type ||\n child.type?.name === ContextMenuGroup.componentType ||\n child.type === ContextMenuGroup.type;\n const { onClick = noop } = child.props;\n const value = ii;\n let isSelected;\n if (singleSelect) isSelected = trueSelected === value;\n else if (multiple) isSelected = trueSelected.includes(value);\n return React.cloneElement(child, {\n value,\n key: `cm.${ii}`,\n isMulti: multiple,\n singleSelect,\n isSelected,\n onClick: !isGroup ? (e) => onClick(e, child.props) : null,\n selectedItems: isGroup ? trueSelected : null,\n });\n })}\n </Group>\n </Grid>\n </Grid>\n {buttonFooter && (\n <Grid pl=\"xs\" pr=\"xs\" alignItems=\"center\">\n {React.cloneElement(buttonFooter, {\n ...buttonFooter.props,\n containerProps: {\n 'data-testid': `${dataTestid}--btn`,\n },\n buttonType: 'primary',\n size: 'l',\n onClick: handleApply.bind(buttonFooter.props),\n })}\n </Grid>\n )}\n </StyledContainer>\n </>\n );\n },\n);\n\nconst props = {\n /** toggle open the menu */\n open: PropTypes.bool.description('toggle open the menu'),\n /** context menu title */\n title: PropTypes.oneOfType([\n PropTypes.string,\n PropTypes.arrayOf(PropTypes.oneOfType([PropTypes.string, PropTypes.node])),\n ]).description('context menu title'),\n /** change handler for selectable context menu */\n onChange: PropTypes.func.description('change handler for selectable context menu'),\n /** multi select */\n multiple: PropTypes.bool.description('multi select'),\n /** click outside callback handler */\n onClickOutside: PropTypes.func.description('click outside callback handler'),\n /** array of mobile context menu items */\n children: PropTypes.arrayOf(PropTypes.element).description('array of mobile context menu items'),\n /** z index for overlay div */\n backdropZIndex: PropTypes.number.description('z index for overlay div'),\n /** z index for menu container */\n zIndex: PropTypes.number.description('z index for menu container'),\n /** for e2e tests */\n dataTestid: PropTypes.string.description('for e2e tests'),\n /** bottom button */\n buttonFooter: PropTypes.element.description('bottom button'),\n /** callback */\n onApply: PropTypes.func.description('callback'),\n /** selected elements for multi and single select */\n selecteds: PropTypes.oneOfType([\n PropTypes.arrayOf(PropTypes.oneOfType([PropTypes.string, PropTypes.number])),\n PropTypes.number,\n ]).description('selected elements for multi and single select'),\n};\n\nDSMobileContextMenu.propTypes = props;\nDSMobileContextMenu.displayName = 'DSMobileContextMenu';\nconst DSMobileContextMenuWithSchema = describe(DSMobileContextMenu);\n\nDSMobileContextMenuWithSchema.propTypes = props;\n\nexport { DSMobileContextMenu, DSMobileContextMenuWithSchema };\n"],
5
+ "mappings": "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",
6
6
  "names": []
7
7
  }
@@ -58,6 +58,7 @@ const props = {
58
58
  };
59
59
  DSMobileContextMenuGroup.propTypes = props;
60
60
  DSMobileContextMenuGroup.componentType = "DSMobileContextMenuGroup";
61
+ DSMobileContextMenuGroup.displayName = "DSMobileContextMenuGroup";
61
62
  const DSMobileContextMenuGroupWithSchema = describe(DSMobileContextMenuGroup);
62
63
  DSMobileContextMenuGroupWithSchema.propTypes = props;
63
64
  export {
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../../../scripts/build/transpile/react-shim.js", "../../../src/MobileContextMenu/MobileContextMenuGroup.tsx"],
4
- "sourcesContent": ["import * as React from 'react';\nexport { React };\n", "import React from 'react';\nimport styled from 'styled-components';\nimport { Grid } from '@elliemae/ds-grid';\nimport { noop } from 'lodash';\nimport { PropTypes, describe } from 'react-desc';\n\nconst Title = styled.div`\n height: 24px;\n line-height: 24px;\n font-size: 12px;\n border-top: 1px solid ${(props) => props.theme.colors.brand['300']};\n background: ${(props) => props.theme.colors.brand['200']};\n padding: 0 ${(props) => props.theme.space.xs};\n color: ${(props) => props.theme.colors.neutral['700']};\n font-weight: ${(props) => props.theme.fontWeights.semibold};\n`;\n\nconst DSMobileContextMenuGroup = ({ title, isMulti, singleSelect, children, value: groupValue, selectedItems }) => (\n <Grid>\n <Grid>\n <Title>{title}</Title>\n </Grid>\n <Grid>\n {React.Children.map(children, (child, index) => {\n const { onClick = noop } = child.props;\n const value = `${groupValue}:${index}`;\n let isSelected;\n if (singleSelect) isSelected = selectedItems === value;\n else if (isMulti) isSelected = selectedItems.includes(value);\n return React.cloneElement(child, {\n value,\n key: 'group.'.concat(index),\n isGroup: true,\n isMulti,\n singleSelect,\n isSelected,\n onClick: (e) => onClick(e, { value, ...child.props }),\n });\n })}\n </Grid>\n </Grid>\n);\n\nconst props = {\n /**\n * Group title\n */\n title: PropTypes.string.isRequired.description('group title'),\n /**\n * Array of MobileContextMenuItem\n */\n children: PropTypes.arrayOf(PropTypes.element).isRequired.description('Array of MobileContextMenuItem'),\n /** multi select */\n isMulti: PropTypes.bool.description('multi select'),\n /** single select */\n singleSelect: PropTypes.bool.description('single select'),\n /** value for select */\n value: PropTypes.string.description('value for select'),\n /** selected items, array for multi, string for single */\n selectedItems: PropTypes.oneOfType([PropTypes.array, PropTypes.string]).description(\n 'selected items, array for multi, string for single',\n ),\n};\n\nDSMobileContextMenuGroup.propTypes = props;\nDSMobileContextMenuGroup.componentType = 'DSMobileContextMenuGroup';\n\nconst DSMobileContextMenuGroupWithSchema = describe(DSMobileContextMenuGroup);\n\nDSMobileContextMenuGroupWithSchema.propTypes = props;\n\nexport { DSMobileContextMenuGroup, DSMobileContextMenuGroupWithSchema };\n"],
5
- "mappings": ";;;;;;;;;;;;;;;;AAAA;ACAA;AACA;AACA;AACA;AACA;AAEA,MAAM,QAAQ,OAAO;AAAA;AAAA;AAAA;AAAA,0BAIK,CAAC,WAAU,OAAM,MAAM,OAAO,MAAM;AAAA,gBAC9C,CAAC,WAAU,OAAM,MAAM,OAAO,MAAM;AAAA,eACrC,CAAC,WAAU,OAAM,MAAM,MAAM;AAAA,WACjC,CAAC,WAAU,OAAM,MAAM,OAAO,QAAQ;AAAA,iBAChC,CAAC,WAAU,OAAM,MAAM,YAAY;AAAA;AAGpD,MAAM,2BAA2B,CAAC,EAAE,OAAO,SAAS,cAAc,UAAU,OAAO,YAAY,oBAC7F,qCAAC,YACC,qCAAC,YACC,qCAAC,aAAO,KAAM,CAChB,GACA,qCAAC,YACE,OAAM,SAAS,IAAI,UAAU,CAAC,OAAO,UAAU;AAC9C,QAAM,EAAE,UAAU,SAAS,MAAM;AACjC,QAAM,QAAQ,GAAG,cAAc;AAC/B,MAAI;AACJ,MAAI;AAAc,iBAAa,kBAAkB;AAAA,WACxC;AAAS,iBAAa,cAAc,SAAS,KAAK;AAC3D,SAAO,OAAM,aAAa,OAAO;AAAA,IAC/B;AAAA,IACA,KAAK,SAAS,OAAO,KAAK;AAAA,IAC1B,SAAS;AAAA,IACT;AAAA,IACA;AAAA,IACA;AAAA,IACA,SAAS,CAAC,MAAM,QAAQ,GAAG,iBAAE,SAAU,MAAM,MAAO;AAAA,EACtD,CAAC;AACH,CAAC,CACH,CACF;AAGF,MAAM,QAAQ;AAAA,EAIZ,OAAO,UAAU,OAAO,WAAW,YAAY,aAAa;AAAA,EAI5D,UAAU,UAAU,QAAQ,UAAU,OAAO,EAAE,WAAW,YAAY,gCAAgC;AAAA,EAEtG,SAAS,UAAU,KAAK,YAAY,cAAc;AAAA,EAElD,cAAc,UAAU,KAAK,YAAY,eAAe;AAAA,EAExD,OAAO,UAAU,OAAO,YAAY,kBAAkB;AAAA,EAEtD,eAAe,UAAU,UAAU,CAAC,UAAU,OAAO,UAAU,MAAM,CAAC,EAAE,YACtE,oDACF;AACF;AAEA,yBAAyB,YAAY;AACrC,yBAAyB,gBAAgB;AAEzC,MAAM,qCAAqC,SAAS,wBAAwB;AAE5E,mCAAmC,YAAY;",
4
+ "sourcesContent": ["import * as React from 'react';\nexport { React };\n", "import React from 'react';\nimport styled from 'styled-components';\nimport { Grid } from '@elliemae/ds-grid';\nimport { noop } from 'lodash';\nimport { PropTypes, describe } from 'react-desc';\n\nconst Title = styled.div`\n height: 24px;\n line-height: 24px;\n font-size: 12px;\n border-top: 1px solid ${(props) => props.theme.colors.brand['300']};\n background: ${(props) => props.theme.colors.brand['200']};\n padding: 0 ${(props) => props.theme.space.xs};\n color: ${(props) => props.theme.colors.neutral['700']};\n font-weight: ${(props) => props.theme.fontWeights.semibold};\n`;\n\nconst DSMobileContextMenuGroup = ({ title, isMulti, singleSelect, children, value: groupValue, selectedItems }) => (\n <Grid>\n <Grid>\n <Title>{title}</Title>\n </Grid>\n <Grid>\n {React.Children.map(children, (child, index) => {\n const { onClick = noop } = child.props;\n const value = `${groupValue}:${index}`;\n let isSelected;\n if (singleSelect) isSelected = selectedItems === value;\n else if (isMulti) isSelected = selectedItems.includes(value);\n return React.cloneElement(child, {\n value,\n key: 'group.'.concat(index),\n isGroup: true,\n isMulti,\n singleSelect,\n isSelected,\n onClick: (e) => onClick(e, { value, ...child.props }),\n });\n })}\n </Grid>\n </Grid>\n);\n\nconst props = {\n /**\n * Group title\n */\n title: PropTypes.string.isRequired.description('group title'),\n /**\n * Array of MobileContextMenuItem\n */\n children: PropTypes.arrayOf(PropTypes.element).isRequired.description('Array of MobileContextMenuItem'),\n /** multi select */\n isMulti: PropTypes.bool.description('multi select'),\n /** single select */\n singleSelect: PropTypes.bool.description('single select'),\n /** value for select */\n value: PropTypes.string.description('value for select'),\n /** selected items, array for multi, string for single */\n selectedItems: PropTypes.oneOfType([PropTypes.array, PropTypes.string]).description(\n 'selected items, array for multi, string for single',\n ),\n};\n\nDSMobileContextMenuGroup.propTypes = props;\nDSMobileContextMenuGroup.componentType = 'DSMobileContextMenuGroup';\nDSMobileContextMenuGroup.displayName = 'DSMobileContextMenuGroup';\nconst DSMobileContextMenuGroupWithSchema = describe(DSMobileContextMenuGroup);\n\nDSMobileContextMenuGroupWithSchema.propTypes = props;\n\nexport { DSMobileContextMenuGroup, DSMobileContextMenuGroupWithSchema };\n"],
5
+ "mappings": ";;;;;;;;;;;;;;;;AAAA;ACAA;AACA;AACA;AACA;AACA;AAEA,MAAM,QAAQ,OAAO;AAAA;AAAA;AAAA;AAAA,0BAIK,CAAC,WAAU,OAAM,MAAM,OAAO,MAAM;AAAA,gBAC9C,CAAC,WAAU,OAAM,MAAM,OAAO,MAAM;AAAA,eACrC,CAAC,WAAU,OAAM,MAAM,MAAM;AAAA,WACjC,CAAC,WAAU,OAAM,MAAM,OAAO,QAAQ;AAAA,iBAChC,CAAC,WAAU,OAAM,MAAM,YAAY;AAAA;AAGpD,MAAM,2BAA2B,CAAC,EAAE,OAAO,SAAS,cAAc,UAAU,OAAO,YAAY,oBAC7F,qCAAC,YACC,qCAAC,YACC,qCAAC,aAAO,KAAM,CAChB,GACA,qCAAC,YACE,OAAM,SAAS,IAAI,UAAU,CAAC,OAAO,UAAU;AAC9C,QAAM,EAAE,UAAU,SAAS,MAAM;AACjC,QAAM,QAAQ,GAAG,cAAc;AAC/B,MAAI;AACJ,MAAI;AAAc,iBAAa,kBAAkB;AAAA,WACxC;AAAS,iBAAa,cAAc,SAAS,KAAK;AAC3D,SAAO,OAAM,aAAa,OAAO;AAAA,IAC/B;AAAA,IACA,KAAK,SAAS,OAAO,KAAK;AAAA,IAC1B,SAAS;AAAA,IACT;AAAA,IACA;AAAA,IACA;AAAA,IACA,SAAS,CAAC,MAAM,QAAQ,GAAG,iBAAE,SAAU,MAAM,MAAO;AAAA,EACtD,CAAC;AACH,CAAC,CACH,CACF;AAGF,MAAM,QAAQ;AAAA,EAIZ,OAAO,UAAU,OAAO,WAAW,YAAY,aAAa;AAAA,EAI5D,UAAU,UAAU,QAAQ,UAAU,OAAO,EAAE,WAAW,YAAY,gCAAgC;AAAA,EAEtG,SAAS,UAAU,KAAK,YAAY,cAAc;AAAA,EAElD,cAAc,UAAU,KAAK,YAAY,eAAe;AAAA,EAExD,OAAO,UAAU,OAAO,YAAY,kBAAkB;AAAA,EAEtD,eAAe,UAAU,UAAU,CAAC,UAAU,OAAO,UAAU,MAAM,CAAC,EAAE,YACtE,oDACF;AACF;AAEA,yBAAyB,YAAY;AACrC,yBAAyB,gBAAgB;AACzC,yBAAyB,cAAc;AACvC,MAAM,qCAAqC,SAAS,wBAAwB;AAE5E,mCAAmC,YAAY;",
6
6
  "names": []
7
7
  }
@@ -128,6 +128,7 @@ const props = {
128
128
  isSelected: PropTypes.bool.description("selected value")
129
129
  };
130
130
  DSMobileContextMenuItem.propTypes = props;
131
+ DSMobileContextMenuItem.displayName = "DSMobileContextMenuItem";
131
132
  const DSMobileContextMenuItemWithSchema = describe(DSMobileContextMenuItem);
132
133
  DSMobileContextMenuItemWithSchema.propTypes = props;
133
134
  export {
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../../../scripts/build/transpile/react-shim.js", "../../../src/MobileContextMenu/MobileContextMenuItem.tsx"],
4
- "sourcesContent": ["import * as React from 'react';\nexport { React };\n", "/* eslint-disable max-lines */\n/* eslint-disable complexity */\n/* eslint-disable import/no-unresolved */\nimport React from 'react';\nimport { PropTypes, describe } from 'react-desc';\nimport { Grid } from '@elliemae/ds-grid';\nimport styled from 'styled-components';\nimport { truncate } from '@elliemae/ds-system';\nimport { GroupItem } from '@elliemae/ds-shared';\nimport { DSCheckbox } from '@elliemae/ds-form';\nimport { Checkmark } from '@elliemae/ds-icons';\nimport { DSMobileTouchable } from '../MobileTouchable';\n\nconst Wrap = styled((props) => <DSMobileTouchable {...props} />)`\n border-bottom: none;\n`;\n\nconst PropWrap = styled((props) => <Grid {...props} />)`\n ${(props) => {\n if (!props.isMulti) {\n return `\n & > span {\n height: 18px;\n width: 18px;\n }\n\n & > span > svg {\n height: 18px;\n width: 18px;\n }\n `;\n }\n return '';\n }}\n`;\n\nconst Title = styled.span`\n font-size: 16px;\n color: ${(props) => props.theme.colors.brand['600']};\n ${truncate()}\n`;\n\nconst Label = styled.span`\n font-size: 13px;\n color: ${(props) => props.theme.colors.neutral['600']};\n`;\n\nconst CheckMark = styled(Checkmark)`\n fill: ${(props) => props.theme.colors.brand['600']};\n`;\ninterface DSMobileContextMenuItemPropsT {\n label: string;\n title: string;\n leftProp: JSX.Element;\n isGroup: boolean;\n isMulti: boolean;\n isSelected: boolean;\n singleSelect: boolean;\n onClick: (e: any) => void;\n value: string;\n}\nconst DSMobileContextMenuItem = ({\n label,\n title,\n leftProp,\n isGroup,\n isMulti,\n singleSelect,\n isSelected,\n // eslint-disable-next-line @typescript-eslint/no-empty-function\n onClick = () => {},\n value,\n}: DSMobileContextMenuItemPropsT): JSX.Element => (\n <GroupItem\n render={(context) => {\n const { activeValue } = context;\n let someItemSelected = activeValue >= 0 && !Array.isArray(activeValue);\n if (isGroup) someItemSelected = typeof activeValue === 'string';\n\n let showLeftAddon = isSelected;\n if (isMulti || !singleSelect) showLeftAddon = true;\n\n let leftAddon = leftProp || null;\n if (isMulti) leftAddon = <DSCheckbox checked={isSelected} data-testid=\"leftAddon-checkbox\" />;\n if (singleSelect) leftAddon = <CheckMark data-testid=\"leftAddon-checkmark\" />;\n\n return (\n <Wrap\n data-testid=\"ds-contextmenu-item\"\n onClick={(e) => {\n if (singleSelect || isMulti) context.onChange(value, e, { value, label, title });\n onClick(e);\n }}\n cols={\n (singleSelect && someItemSelected) || (leftAddon && !singleSelect) || isMulti ? ['40px', 'auto'] : ['auto']\n }\n >\n {((singleSelect && someItemSelected) || isMulti || leftAddon) && (\n <PropWrap data-testid=\"left-addon\" isMulti={isMulti} alignItems=\"center\" justifyContent=\"center\" pl=\"16px\">\n {showLeftAddon && leftAddon}\n </PropWrap>\n )}\n <Grid height=\"44px\" pr=\"xs\" pl={!leftAddon && isGroup ? '24px' : 'xs'}>\n {label && (\n <Grid alignItems=\"center\">\n <Label data-testid=\"contextMenuItem-label\">{label}</Label>\n </Grid>\n )}\n <Grid alignItems={!label ? 'center' : undefined}>\n <Title data-testid=\"contextMenuItem-title\">{title}</Title>\n </Grid>\n </Grid>\n </Wrap>\n );\n }}\n />\n);\n\nconst props = {\n /** label */\n label: PropTypes.string.description('label'),\n /** menu item title */\n title: PropTypes.string.isRequired.description('menu item title'),\n /** */\n leftProp: PropTypes.element.description(''),\n /** multi select */\n isMulti: PropTypes.bool.description('multi select'),\n /** */\n singleSelect: PropTypes.bool.description(''),\n /** */\n isGroup: PropTypes.bool.description(''),\n /** on click handler */\n onClick: PropTypes.func.description('on click handler'),\n /** value for select */\n value: PropTypes.number.description('value for select'),\n /** selected value */\n isSelected: PropTypes.bool.description('selected value'),\n};\n\nDSMobileContextMenuItem.propTypes = props;\n\nconst DSMobileContextMenuItemWithSchema = describe(DSMobileContextMenuItem);\n\nDSMobileContextMenuItemWithSchema.propTypes = props;\n\nexport { DSMobileContextMenuItem, DSMobileContextMenuItemWithSchema };\n"],
5
- "mappings": "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",
4
+ "sourcesContent": ["import * as React from 'react';\nexport { React };\n", "/* eslint-disable max-lines */\n/* eslint-disable complexity */\n/* eslint-disable import/no-unresolved */\nimport React from 'react';\nimport { PropTypes, describe } from 'react-desc';\nimport { Grid } from '@elliemae/ds-grid';\nimport styled from 'styled-components';\nimport { truncate } from '@elliemae/ds-system';\nimport { GroupItem } from '@elliemae/ds-shared';\nimport { DSCheckbox } from '@elliemae/ds-form';\nimport { Checkmark } from '@elliemae/ds-icons';\nimport { DSMobileTouchable } from '../MobileTouchable';\n\nconst Wrap = styled((props) => <DSMobileTouchable {...props} />)`\n border-bottom: none;\n`;\n\nconst PropWrap = styled((props) => <Grid {...props} />)`\n ${(props) => {\n if (!props.isMulti) {\n return `\n & > span {\n height: 18px;\n width: 18px;\n }\n\n & > span > svg {\n height: 18px;\n width: 18px;\n }\n `;\n }\n return '';\n }}\n`;\n\nconst Title = styled.span`\n font-size: 16px;\n color: ${(props) => props.theme.colors.brand['600']};\n ${truncate()}\n`;\n\nconst Label = styled.span`\n font-size: 13px;\n color: ${(props) => props.theme.colors.neutral['600']};\n`;\n\nconst CheckMark = styled(Checkmark)`\n fill: ${(props) => props.theme.colors.brand['600']};\n`;\ninterface DSMobileContextMenuItemPropsT {\n label: string;\n title: string;\n leftProp: JSX.Element;\n isGroup: boolean;\n isMulti: boolean;\n isSelected: boolean;\n singleSelect: boolean;\n onClick: (e: any) => void;\n value: string;\n}\nconst DSMobileContextMenuItem = ({\n label,\n title,\n leftProp,\n isGroup,\n isMulti,\n singleSelect,\n isSelected,\n // eslint-disable-next-line @typescript-eslint/no-empty-function\n onClick = () => {},\n value,\n}: DSMobileContextMenuItemPropsT): JSX.Element => (\n <GroupItem\n render={(context) => {\n const { activeValue } = context;\n let someItemSelected = activeValue >= 0 && !Array.isArray(activeValue);\n if (isGroup) someItemSelected = typeof activeValue === 'string';\n\n let showLeftAddon = isSelected;\n if (isMulti || !singleSelect) showLeftAddon = true;\n\n let leftAddon = leftProp || null;\n if (isMulti) leftAddon = <DSCheckbox checked={isSelected} data-testid=\"leftAddon-checkbox\" />;\n if (singleSelect) leftAddon = <CheckMark data-testid=\"leftAddon-checkmark\" />;\n\n return (\n <Wrap\n data-testid=\"ds-contextmenu-item\"\n onClick={(e) => {\n if (singleSelect || isMulti) context.onChange(value, e, { value, label, title });\n onClick(e);\n }}\n cols={\n (singleSelect && someItemSelected) || (leftAddon && !singleSelect) || isMulti ? ['40px', 'auto'] : ['auto']\n }\n >\n {((singleSelect && someItemSelected) || isMulti || leftAddon) && (\n <PropWrap data-testid=\"left-addon\" isMulti={isMulti} alignItems=\"center\" justifyContent=\"center\" pl=\"16px\">\n {showLeftAddon && leftAddon}\n </PropWrap>\n )}\n <Grid height=\"44px\" pr=\"xs\" pl={!leftAddon && isGroup ? '24px' : 'xs'}>\n {label && (\n <Grid alignItems=\"center\">\n <Label data-testid=\"contextMenuItem-label\">{label}</Label>\n </Grid>\n )}\n <Grid alignItems={!label ? 'center' : undefined}>\n <Title data-testid=\"contextMenuItem-title\">{title}</Title>\n </Grid>\n </Grid>\n </Wrap>\n );\n }}\n />\n);\n\nconst props = {\n /** label */\n label: PropTypes.string.description('label'),\n /** menu item title */\n title: PropTypes.string.isRequired.description('menu item title'),\n /** */\n leftProp: PropTypes.element.description(''),\n /** multi select */\n isMulti: PropTypes.bool.description('multi select'),\n /** */\n singleSelect: PropTypes.bool.description(''),\n /** */\n isGroup: PropTypes.bool.description(''),\n /** on click handler */\n onClick: PropTypes.func.description('on click handler'),\n /** value for select */\n value: PropTypes.number.description('value for select'),\n /** selected value */\n isSelected: PropTypes.bool.description('selected value'),\n};\n\nDSMobileContextMenuItem.propTypes = props;\nDSMobileContextMenuItem.displayName = 'DSMobileContextMenuItem';\nconst DSMobileContextMenuItemWithSchema = describe(DSMobileContextMenuItem);\n\nDSMobileContextMenuItemWithSchema.propTypes = props;\n\nexport { DSMobileContextMenuItem, DSMobileContextMenuItemWithSchema };\n"],
5
+ "mappings": "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",
6
6
  "names": []
7
7
  }
@@ -62,6 +62,7 @@ const props = {
62
62
  value: PropTypes.string.description("ISO8601 string representing the date in format YYYY-MM-DD or empty string")
63
63
  };
64
64
  DSMobileDatePicker.propTypes = props;
65
+ DSMobileDatePicker.displayName = "DSMobileDatePicker";
65
66
  const DSMobileDatePickerWithSchema = describe(DSMobileDatePicker);
66
67
  DSMobileDatePickerWithSchema.propTypes = props;
67
68
  export {
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../../../scripts/build/transpile/react-shim.js", "../../../src/MobileDatePicker/MobileDatePicker.tsx"],
4
- "sourcesContent": ["import * as React from 'react';\nexport { React };\n", "import React, { useRef, useEffect } from 'react';\nimport { PropTypes, describe } from 'react-desc';\nimport { DSIconColors } from '@elliemae/ds-icon';\nimport { DatePicker } from '@elliemae/ds-icons';\nimport DSButton from '@elliemae/ds-button';\nimport { DSInputGroup } from '@elliemae/ds-form';\nimport { Input } from './Input';\n\nconst DSMobileDatePicker = ({ disabled, value, tabIndex, placeholder, onChange }) => {\n const inputRef = useRef(null);\n useEffect(() => {\n /*\n necessary if value is being set in mount, \n otherwise the clear won't work on the first click\n [SEE input onChange comment]\n */\n if (inputRef.current) {\n inputRef.current.defaultValue = '';\n }\n }, [inputRef.current]);\n const valueArr = value.split('-');\n const displayValue = value && `${valueArr[1]} / ${valueArr[2]} / ${valueArr[0]}`;\n return (\n <DSInputGroup\n rightAddon={\n <DSButton\n aria-label=\"Date Picker Button\"\n color={!disabled ? DSIconColors.PRIMARY : DSIconColors.NEUTRAL}\n disabled={disabled}\n icon={<DatePicker />}\n type=\"button\"\n buttonType=\"secondary\"\n onClick={() => {\n inputRef.current.focus();\n inputRef.current.click();\n }}\n />\n }\n >\n <Input\n data-testid=\"ds-mobile-date-picker\"\n innerRef={inputRef}\n aria-label=\"Date Picker Input Mask\"\n disabled={disabled}\n onKeyDown={(e) => e.preventDefault()}\n type=\"date\"\n placeholder={placeholder}\n onChange={(e) => {\n // https://github.com/facebook/react/issues/8938#issuecomment-360573204\n const { target } = e.nativeEvent;\n function iosClearDefault() {\n target.defaultValue = '';\n }\n window.setTimeout(iosClearDefault, 0);\n onChange(e);\n }}\n tabIndex={tabIndex}\n value={value}\n data-displayvalue={displayValue}\n />\n </DSInputGroup>\n );\n};\n\nDSMobileDatePicker.defaultProps = {\n disabled: false,\n tabIndex: 0,\n placeholder: 'MM / DD / YYYY',\n};\n\nconst props = {\n /**\n * defaults to false\n */\n disabled: PropTypes.bool.description('defaults to false'),\n /**\n * 0 as default\n */\n tabIndex: PropTypes.number.description('0 as default'),\n /**\n * MM / DD / YYYY as default\n */\n placeholder: PropTypes.string.description('MM / DD / YYYY as default'),\n /**\n * onChange handler, receives change event as first argument\n */\n onChange: PropTypes.func.description('onChange handler, receives change event as first argument'),\n /**\n * ISO8601 string representing the date in format YYYY-MM-DD or empty string\n */\n value: PropTypes.string.description('ISO8601 string representing the date in format YYYY-MM-DD or empty string'),\n};\n\nDSMobileDatePicker.propTypes = props;\n\nconst DSMobileDatePickerWithSchema = describe(DSMobileDatePicker);\n\nDSMobileDatePickerWithSchema.propTypes = props;\n\nexport { DSMobileDatePicker, DSMobileDatePickerWithSchema };\n"],
5
- "mappings": "AAAA;ACAA;AACA;AACA;AACA;AACA;AACA;AACA;AAEA,MAAM,qBAAqB,CAAC,EAAE,UAAU,OAAO,UAAU,aAAa,eAAe;AACnF,QAAM,WAAW,OAAO,IAAI;AAC5B,YAAU,MAAM;AAMd,QAAI,SAAS,SAAS;AACpB,eAAS,QAAQ,eAAe;AAAA,IAClC;AAAA,EACF,GAAG,CAAC,SAAS,OAAO,CAAC;AACrB,QAAM,WAAW,MAAM,MAAM,GAAG;AAChC,QAAM,eAAe,SAAS,GAAG,SAAS,QAAQ,SAAS,QAAQ,SAAS;AAC5E,SACE,qCAAC;AAAA,IACC,YACE,qCAAC;AAAA,MACC,cAAW;AAAA,MACX,OAAO,CAAC,WAAW,aAAa,UAAU,aAAa;AAAA,MACvD;AAAA,MACA,MAAM,qCAAC,gBAAW;AAAA,MAClB,MAAK;AAAA,MACL,YAAW;AAAA,MACX,SAAS,MAAM;AACb,iBAAS,QAAQ,MAAM;AACvB,iBAAS,QAAQ,MAAM;AAAA,MACzB;AAAA,KACF;AAAA,KAGF,qCAAC;AAAA,IACC,eAAY;AAAA,IACZ,UAAU;AAAA,IACV,cAAW;AAAA,IACX;AAAA,IACA,WAAW,CAAC,MAAM,EAAE,eAAe;AAAA,IACnC,MAAK;AAAA,IACL;AAAA,IACA,UAAU,CAAC,MAAM;AAEf,YAAM,EAAE,WAAW,EAAE;AACrB,iCAA2B;AACzB,eAAO,eAAe;AAAA,MACxB;AACA,aAAO,WAAW,iBAAiB,CAAC;AACpC,eAAS,CAAC;AAAA,IACZ;AAAA,IACA;AAAA,IACA;AAAA,IACA,qBAAmB;AAAA,GACrB,CACF;AAEJ;AAEA,mBAAmB,eAAe;AAAA,EAChC,UAAU;AAAA,EACV,UAAU;AAAA,EACV,aAAa;AACf;AAEA,MAAM,QAAQ;AAAA,EAIZ,UAAU,UAAU,KAAK,YAAY,mBAAmB;AAAA,EAIxD,UAAU,UAAU,OAAO,YAAY,cAAc;AAAA,EAIrD,aAAa,UAAU,OAAO,YAAY,2BAA2B;AAAA,EAIrE,UAAU,UAAU,KAAK,YAAY,2DAA2D;AAAA,EAIhG,OAAO,UAAU,OAAO,YAAY,2EAA2E;AACjH;AAEA,mBAAmB,YAAY;AAE/B,MAAM,+BAA+B,SAAS,kBAAkB;AAEhE,6BAA6B,YAAY;",
4
+ "sourcesContent": ["import * as React from 'react';\nexport { React };\n", "import React, { useRef, useEffect } from 'react';\nimport { PropTypes, describe } from 'react-desc';\nimport { DSIconColors } from '@elliemae/ds-icon';\nimport { DatePicker } from '@elliemae/ds-icons';\nimport DSButton from '@elliemae/ds-button';\nimport { DSInputGroup } from '@elliemae/ds-form';\nimport { Input } from './Input';\n\nconst DSMobileDatePicker = ({ disabled, value, tabIndex, placeholder, onChange }) => {\n const inputRef = useRef(null);\n useEffect(() => {\n /*\n necessary if value is being set in mount, \n otherwise the clear won't work on the first click\n [SEE input onChange comment]\n */\n if (inputRef.current) {\n inputRef.current.defaultValue = '';\n }\n }, [inputRef.current]);\n const valueArr = value.split('-');\n const displayValue = value && `${valueArr[1]} / ${valueArr[2]} / ${valueArr[0]}`;\n return (\n <DSInputGroup\n rightAddon={\n <DSButton\n aria-label=\"Date Picker Button\"\n color={!disabled ? DSIconColors.PRIMARY : DSIconColors.NEUTRAL}\n disabled={disabled}\n icon={<DatePicker />}\n type=\"button\"\n buttonType=\"secondary\"\n onClick={() => {\n inputRef.current.focus();\n inputRef.current.click();\n }}\n />\n }\n >\n <Input\n data-testid=\"ds-mobile-date-picker\"\n innerRef={inputRef}\n aria-label=\"Date Picker Input Mask\"\n disabled={disabled}\n onKeyDown={(e) => e.preventDefault()}\n type=\"date\"\n placeholder={placeholder}\n onChange={(e) => {\n // https://github.com/facebook/react/issues/8938#issuecomment-360573204\n const { target } = e.nativeEvent;\n function iosClearDefault() {\n target.defaultValue = '';\n }\n window.setTimeout(iosClearDefault, 0);\n onChange(e);\n }}\n tabIndex={tabIndex}\n value={value}\n data-displayvalue={displayValue}\n />\n </DSInputGroup>\n );\n};\n\nDSMobileDatePicker.defaultProps = {\n disabled: false,\n tabIndex: 0,\n placeholder: 'MM / DD / YYYY',\n};\n\nconst props = {\n /**\n * defaults to false\n */\n disabled: PropTypes.bool.description('defaults to false'),\n /**\n * 0 as default\n */\n tabIndex: PropTypes.number.description('0 as default'),\n /**\n * MM / DD / YYYY as default\n */\n placeholder: PropTypes.string.description('MM / DD / YYYY as default'),\n /**\n * onChange handler, receives change event as first argument\n */\n onChange: PropTypes.func.description('onChange handler, receives change event as first argument'),\n /**\n * ISO8601 string representing the date in format YYYY-MM-DD or empty string\n */\n value: PropTypes.string.description('ISO8601 string representing the date in format YYYY-MM-DD or empty string'),\n};\n\nDSMobileDatePicker.propTypes = props;\nDSMobileDatePicker.displayName = 'DSMobileDatePicker';\nconst DSMobileDatePickerWithSchema = describe(DSMobileDatePicker);\n\nDSMobileDatePickerWithSchema.propTypes = props;\n\nexport { DSMobileDatePicker, DSMobileDatePickerWithSchema };\n"],
5
+ "mappings": "AAAA;ACAA;AACA;AACA;AACA;AACA;AACA;AACA;AAEA,MAAM,qBAAqB,CAAC,EAAE,UAAU,OAAO,UAAU,aAAa,eAAe;AACnF,QAAM,WAAW,OAAO,IAAI;AAC5B,YAAU,MAAM;AAMd,QAAI,SAAS,SAAS;AACpB,eAAS,QAAQ,eAAe;AAAA,IAClC;AAAA,EACF,GAAG,CAAC,SAAS,OAAO,CAAC;AACrB,QAAM,WAAW,MAAM,MAAM,GAAG;AAChC,QAAM,eAAe,SAAS,GAAG,SAAS,QAAQ,SAAS,QAAQ,SAAS;AAC5E,SACE,qCAAC;AAAA,IACC,YACE,qCAAC;AAAA,MACC,cAAW;AAAA,MACX,OAAO,CAAC,WAAW,aAAa,UAAU,aAAa;AAAA,MACvD;AAAA,MACA,MAAM,qCAAC,gBAAW;AAAA,MAClB,MAAK;AAAA,MACL,YAAW;AAAA,MACX,SAAS,MAAM;AACb,iBAAS,QAAQ,MAAM;AACvB,iBAAS,QAAQ,MAAM;AAAA,MACzB;AAAA,KACF;AAAA,KAGF,qCAAC;AAAA,IACC,eAAY;AAAA,IACZ,UAAU;AAAA,IACV,cAAW;AAAA,IACX;AAAA,IACA,WAAW,CAAC,MAAM,EAAE,eAAe;AAAA,IACnC,MAAK;AAAA,IACL;AAAA,IACA,UAAU,CAAC,MAAM;AAEf,YAAM,EAAE,WAAW,EAAE;AACrB,iCAA2B;AACzB,eAAO,eAAe;AAAA,MACxB;AACA,aAAO,WAAW,iBAAiB,CAAC;AACpC,eAAS,CAAC;AAAA,IACZ;AAAA,IACA;AAAA,IACA;AAAA,IACA,qBAAmB;AAAA,GACrB,CACF;AAEJ;AAEA,mBAAmB,eAAe;AAAA,EAChC,UAAU;AAAA,EACV,UAAU;AAAA,EACV,aAAa;AACf;AAEA,MAAM,QAAQ;AAAA,EAIZ,UAAU,UAAU,KAAK,YAAY,mBAAmB;AAAA,EAIxD,UAAU,UAAU,OAAO,YAAY,cAAc;AAAA,EAIrD,aAAa,UAAU,OAAO,YAAY,2BAA2B;AAAA,EAIrE,UAAU,UAAU,KAAK,YAAY,2DAA2D;AAAA,EAIhG,OAAO,UAAU,OAAO,YAAY,2EAA2E;AACjH;AAEA,mBAAmB,YAAY;AAC/B,mBAAmB,cAAc;AACjC,MAAM,+BAA+B,SAAS,kBAAkB;AAEhE,6BAA6B,YAAY;",
6
6
  "names": []
7
7
  }
@@ -69,6 +69,7 @@ const props = {
69
69
  options: PropTypes.arrayOf(PropTypes.shape({ value: PropTypes.string, label: PropTypes.string })).description("context menu options / items")
70
70
  };
71
71
  DSMobileDropdownMenu.propTypes = props;
72
+ DSMobileDropdownMenu.displayName = "DSMobileDropdownMenu";
72
73
  const DSMobileDropdownMenuWithSchema = describe(DSMobileDropdownMenu);
73
74
  DSMobileDropdownMenuWithSchema.propTypes = props;
74
75
  export {
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../../../scripts/build/transpile/react-shim.js", "../../../src/MobileDropdownMenu/MobileDropdownMenu.tsx"],
4
- "sourcesContent": ["import * as React from 'react';\nexport { React };\n", "/* eslint-disable @typescript-eslint/no-explicit-any */\nimport React, { useRef, useState } from 'react';\nimport { PropTypes, describe } from 'react-desc';\nimport {\n DSMobileContextMenu,\n DSMobileContextMenuItem,\n} from '../MobileContextMenu';\n\nimport { DSMobileDropdownTriggerInput } from './MobileDropdownInput';\ninterface OptionT {\n label: string;\n value: string;\n}\ninterface DSMobileDropdownMenuPropsT {\n placeholder: string;\n value: string;\n options: OptionT[];\n title: string;\n itemsProps: {\n label?: string;\n leftProp?: JSX.Element;\n isGroup?: boolean;\n isMulti?: boolean;\n singleSelect?: boolean;\n isItemSelected?: (opt: OptionT) => boolean;\n onClick?: (opt: OptionT, e: any) => void;\n };\n}\nconst DSMobileDropdownMenu = ({\n placeholder,\n options = [],\n title,\n value,\n itemsProps = {\n label: undefined,\n leftProp: undefined,\n isGroup: false,\n isMulti: false,\n singleSelect: false,\n isItemSelected: () => false,\n // eslint-disable-next-line @typescript-eslint/no-empty-function\n onClick: () => {},\n },\n}: DSMobileDropdownMenuPropsT): JSX.Element => {\n const [menuOpen, setMenuOpen] = useState(false);\n const inputRef = useRef(null);\n const inputProps = React.useMemo(\n () => ({\n readOnly: true,\n value,\n onClick: () => setMenuOpen(true),\n ref: inputRef,\n placeholder,\n }),\n [value, placeholder],\n );\n const caretProps = React.useMemo(\n () => ({\n onClick: () => {\n inputRef.current.focus();\n setMenuOpen(true);\n },\n }),\n [],\n );\n return (\n <>\n <DSMobileDropdownTriggerInput\n inputProps={inputProps}\n caretProps={caretProps}\n />\n {menuOpen ? (\n <DSMobileContextMenu\n title={title}\n open\n onChange={(_, e) => {\n setMenuOpen(false);\n }}\n onClickOutside={() => setMenuOpen(false)}\n >\n {options.map((opt, i) => (\n <DSMobileContextMenuItem\n key={'ddwn'.concat(`${i}`)}\n title={opt.label}\n value={opt.value}\n isSelected={itemsProps.isItemSelected(opt)}\n onClick={(e) => {\n setMenuOpen(false);\n itemsProps.onClick(opt, e);\n }}\n label={itemsProps.label}\n leftProp={itemsProps.leftProp}\n isGroup={itemsProps.isGroup}\n isMulti={itemsProps.isMulti}\n singleSelect={itemsProps.singleSelect}\n />\n ))}\n </DSMobileContextMenu>\n ) : null}\n </>\n );\n};\n\nconst props = {\n /** dropdown menu placeholder */\n placeholder: PropTypes.string.description('dropdown menu placeholder'),\n /** context menu menu title */\n title: PropTypes.string.description('context menu menu title'),\n /** context menu options / items */\n options: PropTypes.arrayOf(\n PropTypes.shape({ value: PropTypes.string, label: PropTypes.string }),\n ).description('context menu options / items'),\n};\n\nDSMobileDropdownMenu.propTypes = props;\n\nconst DSMobileDropdownMenuWithSchema = describe(DSMobileDropdownMenu);\nDSMobileDropdownMenuWithSchema.propTypes = props;\n\nexport { DSMobileDropdownMenu, DSMobileDropdownMenuWithSchema };\n"],
5
- "mappings": "AAAA;ACCA;AACA;AACA;AAAA;AAAA;AAAA;AAKA;AAoBA,MAAM,uBAAuB,CAAC;AAAA,EAC5B;AAAA,EACA,UAAU,CAAC;AAAA,EACX;AAAA,EACA;AAAA,EACA,aAAa;AAAA,IACX,OAAO;AAAA,IACP,UAAU;AAAA,IACV,SAAS;AAAA,IACT,SAAS;AAAA,IACT,cAAc;AAAA,IACd,gBAAgB,MAAM;AAAA,IAEtB,SAAS,MAAM;AAAA,IAAC;AAAA,EAClB;AAAA,MAC6C;AAC7C,QAAM,CAAC,UAAU,eAAe,SAAS,KAAK;AAC9C,QAAM,WAAW,OAAO,IAAI;AAC5B,QAAM,aAAa,OAAM,QACvB,MAAO;AAAA,IACL,UAAU;AAAA,IACV;AAAA,IACA,SAAS,MAAM,YAAY,IAAI;AAAA,IAC/B,KAAK;AAAA,IACL;AAAA,EACF,IACA,CAAC,OAAO,WAAW,CACrB;AACA,QAAM,aAAa,OAAM,QACvB,MAAO;AAAA,IACL,SAAS,MAAM;AACb,eAAS,QAAQ,MAAM;AACvB,kBAAY,IAAI;AAAA,IAClB;AAAA,EACF,IACA,CAAC,CACH;AACA,SACE,4DACE,qCAAC;AAAA,IACC;AAAA,IACA;AAAA,GACF,GACC,WACC,qCAAC;AAAA,IACC;AAAA,IACA,MAAI;AAAA,IACJ,UAAU,CAAC,GAAG,MAAM;AAClB,kBAAY,KAAK;AAAA,IACnB;AAAA,IACA,gBAAgB,MAAM,YAAY,KAAK;AAAA,KAEtC,QAAQ,IAAI,CAAC,KAAK,MACjB,qCAAC;AAAA,IACC,KAAK,OAAO,OAAO,GAAG,GAAG;AAAA,IACzB,OAAO,IAAI;AAAA,IACX,OAAO,IAAI;AAAA,IACX,YAAY,WAAW,eAAe,GAAG;AAAA,IACzC,SAAS,CAAC,MAAM;AACd,kBAAY,KAAK;AACjB,iBAAW,QAAQ,KAAK,CAAC;AAAA,IAC3B;AAAA,IACA,OAAO,WAAW;AAAA,IAClB,UAAU,WAAW;AAAA,IACrB,SAAS,WAAW;AAAA,IACpB,SAAS,WAAW;AAAA,IACpB,cAAc,WAAW;AAAA,GAC3B,CACD,CACH,IACE,IACN;AAEJ;AAEA,MAAM,QAAQ;AAAA,EAEZ,aAAa,UAAU,OAAO,YAAY,2BAA2B;AAAA,EAErE,OAAO,UAAU,OAAO,YAAY,yBAAyB;AAAA,EAE7D,SAAS,UAAU,QACjB,UAAU,MAAM,EAAE,OAAO,UAAU,QAAQ,OAAO,UAAU,OAAO,CAAC,CACtE,EAAE,YAAY,8BAA8B;AAC9C;AAEA,qBAAqB,YAAY;AAEjC,MAAM,iCAAiC,SAAS,oBAAoB;AACpE,+BAA+B,YAAY;",
4
+ "sourcesContent": ["import * as React from 'react';\nexport { React };\n", "/* eslint-disable @typescript-eslint/no-explicit-any */\nimport React, { useRef, useState } from 'react';\nimport { PropTypes, describe } from 'react-desc';\nimport {\n DSMobileContextMenu,\n DSMobileContextMenuItem,\n} from '../MobileContextMenu';\n\nimport { DSMobileDropdownTriggerInput } from './MobileDropdownInput';\ninterface OptionT {\n label: string;\n value: string;\n}\ninterface DSMobileDropdownMenuPropsT {\n placeholder: string;\n value: string;\n options: OptionT[];\n title: string;\n itemsProps: {\n label?: string;\n leftProp?: JSX.Element;\n isGroup?: boolean;\n isMulti?: boolean;\n singleSelect?: boolean;\n isItemSelected?: (opt: OptionT) => boolean;\n onClick?: (opt: OptionT, e: any) => void;\n };\n}\nconst DSMobileDropdownMenu = ({\n placeholder,\n options = [],\n title,\n value,\n itemsProps = {\n label: undefined,\n leftProp: undefined,\n isGroup: false,\n isMulti: false,\n singleSelect: false,\n isItemSelected: () => false,\n // eslint-disable-next-line @typescript-eslint/no-empty-function\n onClick: () => {},\n },\n}: DSMobileDropdownMenuPropsT): JSX.Element => {\n const [menuOpen, setMenuOpen] = useState(false);\n const inputRef = useRef(null);\n const inputProps = React.useMemo(\n () => ({\n readOnly: true,\n value,\n onClick: () => setMenuOpen(true),\n ref: inputRef,\n placeholder,\n }),\n [value, placeholder],\n );\n const caretProps = React.useMemo(\n () => ({\n onClick: () => {\n inputRef.current.focus();\n setMenuOpen(true);\n },\n }),\n [],\n );\n return (\n <>\n <DSMobileDropdownTriggerInput\n inputProps={inputProps}\n caretProps={caretProps}\n />\n {menuOpen ? (\n <DSMobileContextMenu\n title={title}\n open\n onChange={(_, e) => {\n setMenuOpen(false);\n }}\n onClickOutside={() => setMenuOpen(false)}\n >\n {options.map((opt, i) => (\n <DSMobileContextMenuItem\n key={'ddwn'.concat(`${i}`)}\n title={opt.label}\n value={opt.value}\n isSelected={itemsProps.isItemSelected(opt)}\n onClick={(e) => {\n setMenuOpen(false);\n itemsProps.onClick(opt, e);\n }}\n label={itemsProps.label}\n leftProp={itemsProps.leftProp}\n isGroup={itemsProps.isGroup}\n isMulti={itemsProps.isMulti}\n singleSelect={itemsProps.singleSelect}\n />\n ))}\n </DSMobileContextMenu>\n ) : null}\n </>\n );\n};\n\nconst props = {\n /** dropdown menu placeholder */\n placeholder: PropTypes.string.description('dropdown menu placeholder'),\n /** context menu menu title */\n title: PropTypes.string.description('context menu menu title'),\n /** context menu options / items */\n options: PropTypes.arrayOf(\n PropTypes.shape({ value: PropTypes.string, label: PropTypes.string }),\n ).description('context menu options / items'),\n};\n\nDSMobileDropdownMenu.propTypes = props;\nDSMobileDropdownMenu.displayName = 'DSMobileDropdownMenu';\nconst DSMobileDropdownMenuWithSchema = describe(DSMobileDropdownMenu);\nDSMobileDropdownMenuWithSchema.propTypes = props;\n\nexport { DSMobileDropdownMenu, DSMobileDropdownMenuWithSchema };\n"],
5
+ "mappings": "AAAA;ACCA;AACA;AACA;AAAA;AAAA;AAAA;AAKA;AAoBA,MAAM,uBAAuB,CAAC;AAAA,EAC5B;AAAA,EACA,UAAU,CAAC;AAAA,EACX;AAAA,EACA;AAAA,EACA,aAAa;AAAA,IACX,OAAO;AAAA,IACP,UAAU;AAAA,IACV,SAAS;AAAA,IACT,SAAS;AAAA,IACT,cAAc;AAAA,IACd,gBAAgB,MAAM;AAAA,IAEtB,SAAS,MAAM;AAAA,IAAC;AAAA,EAClB;AAAA,MAC6C;AAC7C,QAAM,CAAC,UAAU,eAAe,SAAS,KAAK;AAC9C,QAAM,WAAW,OAAO,IAAI;AAC5B,QAAM,aAAa,OAAM,QACvB,MAAO;AAAA,IACL,UAAU;AAAA,IACV;AAAA,IACA,SAAS,MAAM,YAAY,IAAI;AAAA,IAC/B,KAAK;AAAA,IACL;AAAA,EACF,IACA,CAAC,OAAO,WAAW,CACrB;AACA,QAAM,aAAa,OAAM,QACvB,MAAO;AAAA,IACL,SAAS,MAAM;AACb,eAAS,QAAQ,MAAM;AACvB,kBAAY,IAAI;AAAA,IAClB;AAAA,EACF,IACA,CAAC,CACH;AACA,SACE,4DACE,qCAAC;AAAA,IACC;AAAA,IACA;AAAA,GACF,GACC,WACC,qCAAC;AAAA,IACC;AAAA,IACA,MAAI;AAAA,IACJ,UAAU,CAAC,GAAG,MAAM;AAClB,kBAAY,KAAK;AAAA,IACnB;AAAA,IACA,gBAAgB,MAAM,YAAY,KAAK;AAAA,KAEtC,QAAQ,IAAI,CAAC,KAAK,MACjB,qCAAC;AAAA,IACC,KAAK,OAAO,OAAO,GAAG,GAAG;AAAA,IACzB,OAAO,IAAI;AAAA,IACX,OAAO,IAAI;AAAA,IACX,YAAY,WAAW,eAAe,GAAG;AAAA,IACzC,SAAS,CAAC,MAAM;AACd,kBAAY,KAAK;AACjB,iBAAW,QAAQ,KAAK,CAAC;AAAA,IAC3B;AAAA,IACA,OAAO,WAAW;AAAA,IAClB,UAAU,WAAW;AAAA,IACrB,SAAS,WAAW;AAAA,IACpB,SAAS,WAAW;AAAA,IACpB,cAAc,WAAW;AAAA,GAC3B,CACD,CACH,IACE,IACN;AAEJ;AAEA,MAAM,QAAQ;AAAA,EAEZ,aAAa,UAAU,OAAO,YAAY,2BAA2B;AAAA,EAErE,OAAO,UAAU,OAAO,YAAY,yBAAyB;AAAA,EAE7D,SAAS,UAAU,QACjB,UAAU,MAAM,EAAE,OAAO,UAAU,QAAQ,OAAO,UAAU,OAAO,CAAC,CACtE,EAAE,YAAY,8BAA8B;AAC9C;AAEA,qBAAqB,YAAY;AACjC,qBAAqB,cAAc;AACnC,MAAM,iCAAiC,SAAS,oBAAoB;AACpE,+BAA+B,YAAY;",
6
6
  "names": []
7
7
  }
@@ -24,6 +24,7 @@ const props = {
24
24
  label: PropTypes.string.description("empty state label")
25
25
  };
26
26
  DSMobileEmptyState.propTypes = props;
27
+ DSMobileEmptyState.displayName = "DSMobileEmptyState";
27
28
  const DSMobileEmptyStateWithSchema = describe(DSMobileEmptyState);
28
29
  DSMobileEmptyStateWithSchema.propTypes = props;
29
30
  export {
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../../../scripts/build/transpile/react-shim.js", "../../../src/MobileEmtpyState/MobileEmptyState.tsx"],
4
- "sourcesContent": ["import * as React from 'react';\nexport { React };\n", "import React from 'react';\nimport styled from 'styled-components';\nimport { PropTypes, describe } from 'react-desc';\nimport { Search } from '@elliemae/ds-icons';\n\nconst Wrapper = styled.div`\n display: flex;\n flex-direction: column;\n justify-content: center;\n align-items: center;\n height: 100%;\n`;\n\nconst Label = styled.p`\n color: ${(props) => props.theme.colors.neutral['600']};\n font-size: ${(props) => props.theme.space.xs};\n font-weight: ${(props) => props.theme.fontWeights.semibold};\n min-width: 132px;\n`;\n\nconst DSMobileEmptyState = ({ label = 'No search results found.' }) => (\n <Wrapper>\n <Search size=\"xxl\" color={['neutral', 400]} />\n <Label>{label}</Label>\n </Wrapper>\n);\n\nconst props = {\n /** empty state label */\n label: PropTypes.string.description('empty state label'),\n};\n\nDSMobileEmptyState.propTypes = props;\n\nconst DSMobileEmptyStateWithSchema = describe(DSMobileEmptyState);\nDSMobileEmptyStateWithSchema.propTypes = props;\n\nexport { DSMobileEmptyState, DSMobileEmptyStateWithSchema };\n"],
5
- "mappings": "AAAA;ACAA;AACA;AACA;AACA;AAEA,MAAM,UAAU,OAAO;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAQvB,MAAM,QAAQ,OAAO;AAAA,WACV,CAAC,WAAU,OAAM,MAAM,OAAO,QAAQ;AAAA,eAClC,CAAC,WAAU,OAAM,MAAM,MAAM;AAAA,iBAC3B,CAAC,WAAU,OAAM,MAAM,YAAY;AAAA;AAAA;AAIpD,MAAM,qBAAqB,CAAC,EAAE,QAAQ,iCACpC,qCAAC,eACC,qCAAC;AAAA,EAAO,MAAK;AAAA,EAAM,OAAO,CAAC,WAAW,GAAG;AAAA,CAAG,GAC5C,qCAAC,aAAO,KAAM,CAChB;AAGF,MAAM,QAAQ;AAAA,EAEZ,OAAO,UAAU,OAAO,YAAY,mBAAmB;AACzD;AAEA,mBAAmB,YAAY;AAE/B,MAAM,+BAA+B,SAAS,kBAAkB;AAChE,6BAA6B,YAAY;",
4
+ "sourcesContent": ["import * as React from 'react';\nexport { React };\n", "import React from 'react';\nimport styled from 'styled-components';\nimport { PropTypes, describe } from 'react-desc';\nimport { Search } from '@elliemae/ds-icons';\n\nconst Wrapper = styled.div`\n display: flex;\n flex-direction: column;\n justify-content: center;\n align-items: center;\n height: 100%;\n`;\n\nconst Label = styled.p`\n color: ${(props) => props.theme.colors.neutral['600']};\n font-size: ${(props) => props.theme.space.xs};\n font-weight: ${(props) => props.theme.fontWeights.semibold};\n min-width: 132px;\n`;\n\nconst DSMobileEmptyState = ({ label = 'No search results found.' }) => (\n <Wrapper>\n <Search size=\"xxl\" color={['neutral', 400]} />\n <Label>{label}</Label>\n </Wrapper>\n);\n\nconst props = {\n /** empty state label */\n label: PropTypes.string.description('empty state label'),\n};\n\nDSMobileEmptyState.propTypes = props;\nDSMobileEmptyState.displayName = 'DSMobileEmptyState';\nconst DSMobileEmptyStateWithSchema = describe(DSMobileEmptyState);\nDSMobileEmptyStateWithSchema.propTypes = props;\n\nexport { DSMobileEmptyState, DSMobileEmptyStateWithSchema };\n"],
5
+ "mappings": "AAAA;ACAA;AACA;AACA;AACA;AAEA,MAAM,UAAU,OAAO;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAQvB,MAAM,QAAQ,OAAO;AAAA,WACV,CAAC,WAAU,OAAM,MAAM,OAAO,QAAQ;AAAA,eAClC,CAAC,WAAU,OAAM,MAAM,MAAM;AAAA,iBAC3B,CAAC,WAAU,OAAM,MAAM,YAAY;AAAA;AAAA;AAIpD,MAAM,qBAAqB,CAAC,EAAE,QAAQ,iCACpC,qCAAC,eACC,qCAAC;AAAA,EAAO,MAAK;AAAA,EAAM,OAAO,CAAC,WAAW,GAAG;AAAA,CAAG,GAC5C,qCAAC,aAAO,KAAM,CAChB;AAGF,MAAM,QAAQ;AAAA,EAEZ,OAAO,UAAU,OAAO,YAAY,mBAAmB;AACzD;AAEA,mBAAmB,YAAY;AAC/B,mBAAmB,cAAc;AACjC,MAAM,+BAA+B,SAAS,kBAAkB;AAChE,6BAA6B,YAAY;",
6
6
  "names": []
7
7
  }
@@ -34,6 +34,7 @@ const filterbarProps = {
34
34
  children: PropTypes.element.description("FilterBar Items").isRequired
35
35
  };
36
36
  DSMobileFilterbar.propTypes = filterbarProps;
37
+ DSMobileFilterbar.displayName = "DSMobileFilterbar";
37
38
  const FilterbarWithSchema = describe(DSMobileFilterbar);
38
39
  FilterbarWithSchema.propTypes = filterbarProps;
39
40
  export {
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../../../scripts/build/transpile/react-shim.js", "../../../src/MobileFilterbar/Filterbar.tsx"],
4
- "sourcesContent": ["import * as React from 'react';\nexport { React };\n", "/* eslint-disable import/no-unresolved */\nimport React from 'react';\nimport styled from 'styled-components';\nimport { describe, PropTypes } from 'react-desc';\nimport { __UNSAFE_SPACE_TO_DIMSUM } from '@elliemae/ds-system';\nimport { Grid } from '@elliemae/ds-grid';\nimport MobileSeparator from '../MobileSeparator';\n\nconst Bar = styled.div`\n display: flex;\n overflow: auto;\n background-color: ${(props) => props.theme.colors.neutral['000']};\n padding-left: ${(props) => __UNSAFE_SPACE_TO_DIMSUM(props.theme.space.xs)};\n & > * {\n flex-shrink: 0;\n }\n\n &::-webkit-scrollbar {\n display: none;\n }\n`;\n\nconst Separator = styled.div`\n & > * {\n margin: 0;\n }\n`;\n\nconst DSMobileFilterbar = ({ children }) => (\n <Grid rows={['auto', 'auto']} data-testid=\"filter-bar-wrapper\">\n <Bar>{children}</Bar>\n <Separator>\n <MobileSeparator margin=\"xxs\" color={['neutral', '300']} />\n </Separator>\n </Grid>\n);\n\nconst filterbarProps = {\n children: PropTypes.element.description('FilterBar Items').isRequired,\n};\n\nDSMobileFilterbar.propTypes = filterbarProps;\n\nconst FilterbarWithSchema = describe(DSMobileFilterbar);\nFilterbarWithSchema.propTypes = filterbarProps;\n\nexport { DSMobileFilterbar, FilterbarWithSchema };\n"],
5
- "mappings": "AAAA;ACCA;AACA;AACA;AACA;AACA;AACA;AAEA,MAAM,MAAM,OAAO;AAAA;AAAA;AAAA,sBAGG,CAAC,UAAU,MAAM,MAAM,OAAO,QAAQ;AAAA,kBAC1C,CAAC,UAAU,yBAAyB,MAAM,MAAM,MAAM,EAAE;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAU1E,MAAM,YAAY,OAAO;AAAA;AAAA;AAAA;AAAA;AAMzB,MAAM,oBAAoB,CAAC,EAAE,eAC3B,qCAAC;AAAA,EAAK,MAAM,CAAC,QAAQ,MAAM;AAAA,EAAG,eAAY;AAAA,GACxC,qCAAC,WAAK,QAAS,GACf,qCAAC,iBACC,qCAAC;AAAA,EAAgB,QAAO;AAAA,EAAM,OAAO,CAAC,WAAW,KAAK;AAAA,CAAG,CAC3D,CACF;AAGF,MAAM,iBAAiB;AAAA,EACrB,UAAU,UAAU,QAAQ,YAAY,iBAAiB,EAAE;AAC7D;AAEA,kBAAkB,YAAY;AAE9B,MAAM,sBAAsB,SAAS,iBAAiB;AACtD,oBAAoB,YAAY;",
4
+ "sourcesContent": ["import * as React from 'react';\nexport { React };\n", "/* eslint-disable import/no-unresolved */\nimport React from 'react';\nimport styled from 'styled-components';\nimport { describe, PropTypes } from 'react-desc';\nimport { __UNSAFE_SPACE_TO_DIMSUM } from '@elliemae/ds-system';\nimport { Grid } from '@elliemae/ds-grid';\nimport MobileSeparator from '../MobileSeparator';\n\nconst Bar = styled.div`\n display: flex;\n overflow: auto;\n background-color: ${(props) => props.theme.colors.neutral['000']};\n padding-left: ${(props) => __UNSAFE_SPACE_TO_DIMSUM(props.theme.space.xs)};\n & > * {\n flex-shrink: 0;\n }\n\n &::-webkit-scrollbar {\n display: none;\n }\n`;\n\nconst Separator = styled.div`\n & > * {\n margin: 0;\n }\n`;\n\nconst DSMobileFilterbar = ({ children }) => (\n <Grid rows={['auto', 'auto']} data-testid=\"filter-bar-wrapper\">\n <Bar>{children}</Bar>\n <Separator>\n <MobileSeparator margin=\"xxs\" color={['neutral', '300']} />\n </Separator>\n </Grid>\n);\n\nconst filterbarProps = {\n children: PropTypes.element.description('FilterBar Items').isRequired,\n};\n\nDSMobileFilterbar.propTypes = filterbarProps;\nDSMobileFilterbar.displayName = 'DSMobileFilterbar';\nconst FilterbarWithSchema = describe(DSMobileFilterbar);\nFilterbarWithSchema.propTypes = filterbarProps;\n\nexport { DSMobileFilterbar, FilterbarWithSchema };\n"],
5
+ "mappings": "AAAA;ACCA;AACA;AACA;AACA;AACA;AACA;AAEA,MAAM,MAAM,OAAO;AAAA;AAAA;AAAA,sBAGG,CAAC,UAAU,MAAM,MAAM,OAAO,QAAQ;AAAA,kBAC1C,CAAC,UAAU,yBAAyB,MAAM,MAAM,MAAM,EAAE;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAU1E,MAAM,YAAY,OAAO;AAAA;AAAA;AAAA;AAAA;AAMzB,MAAM,oBAAoB,CAAC,EAAE,eAC3B,qCAAC;AAAA,EAAK,MAAM,CAAC,QAAQ,MAAM;AAAA,EAAG,eAAY;AAAA,GACxC,qCAAC,WAAK,QAAS,GACf,qCAAC,iBACC,qCAAC;AAAA,EAAgB,QAAO;AAAA,EAAM,OAAO,CAAC,WAAW,KAAK;AAAA,CAAG,CAC3D,CACF;AAGF,MAAM,iBAAiB;AAAA,EACrB,UAAU,UAAU,QAAQ,YAAY,iBAAiB,EAAE;AAC7D;AAEA,kBAAkB,YAAY;AAC9B,kBAAkB,cAAc;AAChC,MAAM,sBAAsB,SAAS,iBAAiB;AACtD,oBAAoB,YAAY;",
6
6
  "names": []
7
7
  }
@@ -15,6 +15,7 @@ const filterbarItemProps = {
15
15
  onClick: PropTypes.func.description("Function executed when clicking filterbar item")
16
16
  };
17
17
  DSMobileFilterbarItem.propTypes = filterbarItemProps;
18
+ DSMobileFilterbarItem.displayName = "DSMobileFilterbarItem";
18
19
  const FilterbarItemWithSchema = describe(DSMobileFilterbarItem);
19
20
  FilterbarItemWithSchema.propTypes = filterbarItemProps;
20
21
  export {
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../../../scripts/build/transpile/react-shim.js", "../../../src/MobileFilterbar/FilterbarItem.tsx"],
4
- "sourcesContent": ["import * as React from 'react';\nexport { React };\n", "import React from 'react';\nimport { describe, PropTypes } from 'react-desc';\nimport { Grid } from '@elliemae/ds-grid';\n\nconst DSMobileFilterbarItem = ({ children, onClick }) => (\n <Grid data-testid=\"filter-bar-item-wrapper\" cols={['min-content']} pr=\"xxs\" pt=\"xxs\" role=\"button\" onClick={onClick}>\n {children}\n </Grid>\n);\nconst filterbarItemProps = {\n children: PropTypes.element.description('FilterBar Items').isRequired,\n onClick: PropTypes.func.description('Function executed when clicking filterbar item'),\n};\n\nDSMobileFilterbarItem.propTypes = filterbarItemProps;\n\nconst FilterbarItemWithSchema = describe(DSMobileFilterbarItem);\nFilterbarItemWithSchema.propTypes = filterbarItemProps;\n\nexport { DSMobileFilterbarItem, FilterbarItemWithSchema };\n"],
5
- "mappings": "AAAA;ACAA;AACA;AACA;AAEA,MAAM,wBAAwB,CAAC,EAAE,UAAU,cACzC,qCAAC;AAAA,EAAK,eAAY;AAAA,EAA0B,MAAM,CAAC,aAAa;AAAA,EAAG,IAAG;AAAA,EAAM,IAAG;AAAA,EAAM,MAAK;AAAA,EAAS;AAAA,GAChG,QACH;AAEF,MAAM,qBAAqB;AAAA,EACzB,UAAU,UAAU,QAAQ,YAAY,iBAAiB,EAAE;AAAA,EAC3D,SAAS,UAAU,KAAK,YAAY,gDAAgD;AACtF;AAEA,sBAAsB,YAAY;AAElC,MAAM,0BAA0B,SAAS,qBAAqB;AAC9D,wBAAwB,YAAY;",
4
+ "sourcesContent": ["import * as React from 'react';\nexport { React };\n", "import React from 'react';\nimport { describe, PropTypes } from 'react-desc';\nimport { Grid } from '@elliemae/ds-grid';\n\nconst DSMobileFilterbarItem = ({ children, onClick }) => (\n <Grid data-testid=\"filter-bar-item-wrapper\" cols={['min-content']} pr=\"xxs\" pt=\"xxs\" role=\"button\" onClick={onClick}>\n {children}\n </Grid>\n);\nconst filterbarItemProps = {\n children: PropTypes.element.description('FilterBar Items').isRequired,\n onClick: PropTypes.func.description('Function executed when clicking filterbar item'),\n};\n\nDSMobileFilterbarItem.propTypes = filterbarItemProps;\nDSMobileFilterbarItem.displayName = 'DSMobileFilterbarItem';\nconst FilterbarItemWithSchema = describe(DSMobileFilterbarItem);\nFilterbarItemWithSchema.propTypes = filterbarItemProps;\n\nexport { DSMobileFilterbarItem, FilterbarItemWithSchema };\n"],
5
+ "mappings": "AAAA;ACAA;AACA;AACA;AAEA,MAAM,wBAAwB,CAAC,EAAE,UAAU,cACzC,qCAAC;AAAA,EAAK,eAAY;AAAA,EAA0B,MAAM,CAAC,aAAa;AAAA,EAAG,IAAG;AAAA,EAAM,IAAG;AAAA,EAAM,MAAK;AAAA,EAAS;AAAA,GAChG,QACH;AAEF,MAAM,qBAAqB;AAAA,EACzB,UAAU,UAAU,QAAQ,YAAY,iBAAiB,EAAE;AAAA,EAC3D,SAAS,UAAU,KAAK,YAAY,gDAAgD;AACtF;AAEA,sBAAsB,YAAY;AAClC,sBAAsB,cAAc;AACpC,MAAM,0BAA0B,SAAS,qBAAqB;AAC9D,wBAAwB,YAAY;",
6
6
  "names": []
7
7
  }
@@ -22,6 +22,7 @@ const filterbarSortProps = {
22
22
  children: PropTypes.element.description("FilterBar Sort Item").isRequired
23
23
  };
24
24
  DSMobileFilterbarSort.propTypes = filterbarSortProps;
25
+ DSMobileFilterbarSort.displayName = "DSMobileFilterbarSort";
25
26
  const FilterbarSortWithSchema = describe(DSMobileFilterbarSort);
26
27
  FilterbarSortWithSchema.propTypes = filterbarSortProps;
27
28
  export {
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../../../scripts/build/transpile/react-shim.js", "../../../src/MobileFilterbar/FilterbarSort.tsx"],
4
- "sourcesContent": ["import * as React from 'react';\nexport { React };\n", "import React from 'react';\nimport { describe, PropTypes } from 'react-desc';\nimport styled from 'styled-components';\nimport { Grid } from '@elliemae/ds-grid';\nimport MobileSeparator from '../MobileSeparator';\n\nconst Separator = styled.div`\n & > * {\n margin-left: 0;\n }\n`;\n\nconst DSMobileFilterbarSort = ({ children }) => (\n <>\n {children}\n <Grid pb=\"xxs\" pt=\"xxs\" cols={['min-content']}>\n <Separator>\n <MobileSeparator margin=\"xxs\" direction=\"vertical\" color={['neutral', '300']} />\n </Separator>\n </Grid>\n </>\n);\n\nconst filterbarSortProps = {\n children: PropTypes.element.description('FilterBar Sort Item').isRequired,\n};\n\nDSMobileFilterbarSort.propTypes = filterbarSortProps;\n\nconst FilterbarSortWithSchema = describe(DSMobileFilterbarSort);\nFilterbarSortWithSchema.propTypes = filterbarSortProps;\n\nexport { DSMobileFilterbarSort, FilterbarSortWithSchema };\n"],
5
- "mappings": "AAAA;ACAA;AACA;AACA;AACA;AACA;AAEA,MAAM,YAAY,OAAO;AAAA;AAAA;AAAA;AAAA;AAMzB,MAAM,wBAAwB,CAAC,EAAE,eAC/B,4DACG,UACD,qCAAC;AAAA,EAAK,IAAG;AAAA,EAAM,IAAG;AAAA,EAAM,MAAM,CAAC,aAAa;AAAA,GAC1C,qCAAC,iBACC,qCAAC;AAAA,EAAgB,QAAO;AAAA,EAAM,WAAU;AAAA,EAAW,OAAO,CAAC,WAAW,KAAK;AAAA,CAAG,CAChF,CACF,CACF;AAGF,MAAM,qBAAqB;AAAA,EACzB,UAAU,UAAU,QAAQ,YAAY,qBAAqB,EAAE;AACjE;AAEA,sBAAsB,YAAY;AAElC,MAAM,0BAA0B,SAAS,qBAAqB;AAC9D,wBAAwB,YAAY;",
4
+ "sourcesContent": ["import * as React from 'react';\nexport { React };\n", "import React from 'react';\nimport { describe, PropTypes } from 'react-desc';\nimport styled from 'styled-components';\nimport { Grid } from '@elliemae/ds-grid';\nimport MobileSeparator from '../MobileSeparator';\n\nconst Separator = styled.div`\n & > * {\n margin-left: 0;\n }\n`;\n\nconst DSMobileFilterbarSort = ({ children }) => (\n <>\n {children}\n <Grid pb=\"xxs\" pt=\"xxs\" cols={['min-content']}>\n <Separator>\n <MobileSeparator margin=\"xxs\" direction=\"vertical\" color={['neutral', '300']} />\n </Separator>\n </Grid>\n </>\n);\n\nconst filterbarSortProps = {\n children: PropTypes.element.description('FilterBar Sort Item').isRequired,\n};\n\nDSMobileFilterbarSort.propTypes = filterbarSortProps;\nDSMobileFilterbarSort.displayName = 'DSMobileFilterbarSort';\nconst FilterbarSortWithSchema = describe(DSMobileFilterbarSort);\nFilterbarSortWithSchema.propTypes = filterbarSortProps;\n\nexport { DSMobileFilterbarSort, FilterbarSortWithSchema };\n"],
5
+ "mappings": "AAAA;ACAA;AACA;AACA;AACA;AACA;AAEA,MAAM,YAAY,OAAO;AAAA;AAAA;AAAA;AAAA;AAMzB,MAAM,wBAAwB,CAAC,EAAE,eAC/B,4DACG,UACD,qCAAC;AAAA,EAAK,IAAG;AAAA,EAAM,IAAG;AAAA,EAAM,MAAM,CAAC,aAAa;AAAA,GAC1C,qCAAC,iBACC,qCAAC;AAAA,EAAgB,QAAO;AAAA,EAAM,WAAU;AAAA,EAAW,OAAO,CAAC,WAAW,KAAK;AAAA,CAAG,CAChF,CACF,CACF;AAGF,MAAM,qBAAqB;AAAA,EACzB,UAAU,UAAU,QAAQ,YAAY,qBAAqB,EAAE;AACjE;AAEA,sBAAsB,YAAY;AAClC,sBAAsB,cAAc;AACpC,MAAM,0BAA0B,SAAS,qBAAqB;AAC9D,wBAAwB,YAAY;",
6
6
  "names": []
7
7
  }
@@ -34,6 +34,7 @@ const actionProps = {
34
34
  onClick: PropTypes.func.description("onClick callback")
35
35
  };
36
36
  DSMobileFooterAction.propTypes = actionProps;
37
+ DSMobileFooterAction.displayName = "DSMobileFooterAction";
37
38
  const DSMobileFooterActionWithSchema = describe(DSMobileFooterAction).description("Mobile footer action");
38
39
  DSMobileFooterActionWithSchema.propTypes = actionProps;
39
40
  export {
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../../../scripts/build/transpile/react-shim.js", "../../../src/MobileFooter/Action.tsx"],
4
- "sourcesContent": ["import * as React from 'react';\nexport { React };\n", "/* eslint-disable jest/valid-describe */\n/* eslint-disable jest/valid-title */\nimport React from 'react';\nimport styled from 'styled-components';\nimport { typography } from '@xstyled/styled-components';\nimport { color, __UNSAFE_SPACE_TO_DIMSUM } from '@elliemae/ds-system';\nimport { Grid } from '@elliemae/ds-grid';\nimport { describe, PropTypes } from 'react-desc';\n\nconst Label = styled.span`\n ${typography}\n ${color('neutral', '800')}\n padding-bottom: ${(props) => __UNSAFE_SPACE_TO_DIMSUM(props.theme.space.xxs)};\n padding-top: calc(${(props) => __UNSAFE_SPACE_TO_DIMSUM(props.theme.space.xxs)} / 2);\n`;\n\nconst DSMobileFooterAction = ({ label, icon, onClick }) => (\n <Grid\n data-testid=\"ds-mobile-footer-action\"\n rows={['auto'].concat(label ? 'min-content' : 'none')}\n justifyContent=\"center\"\n role=\"button\"\n onClick={onClick}\n >\n <Grid justifyContent=\"center\" alignItems=\"center\">\n {React.cloneElement(icon, {\n 'data-testid': 'ds-mobile-footer-action-icon',\n size: !label ? 'l' : 'm',\n })}\n </Grid>\n\n {label && (\n <Grid justifyContent=\"center\">\n <Label fontSize=\"11px\">{label}</Label>\n </Grid>\n )}\n </Grid>\n);\n\nconst actionProps = {\n /** Action label */\n label: PropTypes.string.description('Action label'),\n /** Action icon */\n icon: PropTypes.element.description('Action icon'),\n /** onClick callback */\n onClick: PropTypes.func.description('onClick callback'),\n};\n\nDSMobileFooterAction.propTypes = actionProps;\n\nconst DSMobileFooterActionWithSchema = describe(DSMobileFooterAction).description('Mobile footer action');\nDSMobileFooterActionWithSchema.propTypes = actionProps;\n\nexport { DSMobileFooterAction, DSMobileFooterActionWithSchema };\n"],
5
- "mappings": "AAAA;ACEA;AACA;AACA;AACA;AACA;AACA;AAEA,MAAM,QAAQ,OAAO;AAAA,IACjB;AAAA,IACA,MAAM,WAAW,KAAK;AAAA,oBACN,CAAC,UAAU,yBAAyB,MAAM,MAAM,MAAM,GAAG;AAAA,sBACvD,CAAC,UAAU,yBAAyB,MAAM,MAAM,MAAM,GAAG;AAAA;AAG/E,MAAM,uBAAuB,CAAC,EAAE,OAAO,MAAM,cAC3C,qCAAC;AAAA,EACC,eAAY;AAAA,EACZ,MAAM,CAAC,MAAM,EAAE,OAAO,QAAQ,gBAAgB,MAAM;AAAA,EACpD,gBAAe;AAAA,EACf,MAAK;AAAA,EACL;AAAA,GAEA,qCAAC;AAAA,EAAK,gBAAe;AAAA,EAAS,YAAW;AAAA,GACtC,OAAM,aAAa,MAAM;AAAA,EACxB,eAAe;AAAA,EACf,MAAM,CAAC,QAAQ,MAAM;AACvB,CAAC,CACH,GAEC,SACC,qCAAC;AAAA,EAAK,gBAAe;AAAA,GACnB,qCAAC;AAAA,EAAM,UAAS;AAAA,GAAQ,KAAM,CAChC,CAEJ;AAGF,MAAM,cAAc;AAAA,EAElB,OAAO,UAAU,OAAO,YAAY,cAAc;AAAA,EAElD,MAAM,UAAU,QAAQ,YAAY,aAAa;AAAA,EAEjD,SAAS,UAAU,KAAK,YAAY,kBAAkB;AACxD;AAEA,qBAAqB,YAAY;AAEjC,MAAM,iCAAiC,SAAS,oBAAoB,EAAE,YAAY,sBAAsB;AACxG,+BAA+B,YAAY;",
4
+ "sourcesContent": ["import * as React from 'react';\nexport { React };\n", "/* eslint-disable jest/valid-describe */\n/* eslint-disable jest/valid-title */\nimport React from 'react';\nimport styled from 'styled-components';\nimport { typography } from '@xstyled/styled-components';\nimport { color, __UNSAFE_SPACE_TO_DIMSUM } from '@elliemae/ds-system';\nimport { Grid } from '@elliemae/ds-grid';\nimport { describe, PropTypes } from 'react-desc';\n\nconst Label = styled.span`\n ${typography}\n ${color('neutral', '800')}\n padding-bottom: ${(props) => __UNSAFE_SPACE_TO_DIMSUM(props.theme.space.xxs)};\n padding-top: calc(${(props) => __UNSAFE_SPACE_TO_DIMSUM(props.theme.space.xxs)} / 2);\n`;\n\nconst DSMobileFooterAction = ({ label, icon, onClick }) => (\n <Grid\n data-testid=\"ds-mobile-footer-action\"\n rows={['auto'].concat(label ? 'min-content' : 'none')}\n justifyContent=\"center\"\n role=\"button\"\n onClick={onClick}\n >\n <Grid justifyContent=\"center\" alignItems=\"center\">\n {React.cloneElement(icon, {\n 'data-testid': 'ds-mobile-footer-action-icon',\n size: !label ? 'l' : 'm',\n })}\n </Grid>\n\n {label && (\n <Grid justifyContent=\"center\">\n <Label fontSize=\"11px\">{label}</Label>\n </Grid>\n )}\n </Grid>\n);\n\nconst actionProps = {\n /** Action label */\n label: PropTypes.string.description('Action label'),\n /** Action icon */\n icon: PropTypes.element.description('Action icon'),\n /** onClick callback */\n onClick: PropTypes.func.description('onClick callback'),\n};\n\nDSMobileFooterAction.propTypes = actionProps;\nDSMobileFooterAction.displayName = 'DSMobileFooterAction';\nconst DSMobileFooterActionWithSchema = describe(DSMobileFooterAction).description('Mobile footer action');\nDSMobileFooterActionWithSchema.propTypes = actionProps;\n\nexport { DSMobileFooterAction, DSMobileFooterActionWithSchema };\n"],
5
+ "mappings": "AAAA;ACEA;AACA;AACA;AACA;AACA;AACA;AAEA,MAAM,QAAQ,OAAO;AAAA,IACjB;AAAA,IACA,MAAM,WAAW,KAAK;AAAA,oBACN,CAAC,UAAU,yBAAyB,MAAM,MAAM,MAAM,GAAG;AAAA,sBACvD,CAAC,UAAU,yBAAyB,MAAM,MAAM,MAAM,GAAG;AAAA;AAG/E,MAAM,uBAAuB,CAAC,EAAE,OAAO,MAAM,cAC3C,qCAAC;AAAA,EACC,eAAY;AAAA,EACZ,MAAM,CAAC,MAAM,EAAE,OAAO,QAAQ,gBAAgB,MAAM;AAAA,EACpD,gBAAe;AAAA,EACf,MAAK;AAAA,EACL;AAAA,GAEA,qCAAC;AAAA,EAAK,gBAAe;AAAA,EAAS,YAAW;AAAA,GACtC,OAAM,aAAa,MAAM;AAAA,EACxB,eAAe;AAAA,EACf,MAAM,CAAC,QAAQ,MAAM;AACvB,CAAC,CACH,GAEC,SACC,qCAAC;AAAA,EAAK,gBAAe;AAAA,GACnB,qCAAC;AAAA,EAAM,UAAS;AAAA,GAAQ,KAAM,CAChC,CAEJ;AAGF,MAAM,cAAc;AAAA,EAElB,OAAO,UAAU,OAAO,YAAY,cAAc;AAAA,EAElD,MAAM,UAAU,QAAQ,YAAY,aAAa;AAAA,EAEjD,SAAS,UAAU,KAAK,YAAY,kBAAkB;AACxD;AAEA,qBAAqB,YAAY;AACjC,qBAAqB,cAAc;AACnC,MAAM,iCAAiC,SAAS,oBAAoB,EAAE,YAAY,sBAAsB;AACxG,+BAA+B,YAAY;",
6
6
  "names": []
7
7
  }
@@ -33,6 +33,7 @@ const footerProps = {
33
33
  children: PropTypes.oneOfType([PropTypes.element, PropTypes.arrayOf(PropTypes.element)]).isRequired.description("Instance of DSButton, DSMobileFooterText or DSMobileFooterAction")
34
34
  };
35
35
  MobileFooter.propTypes = footerProps;
36
+ MobileFooter.displayName = "MobileFooter";
36
37
  const MobileFooterWithSchema = describe(MobileFooter);
37
38
  MobileFooterWithSchema.propTypes = footerProps;
38
39
  var Footer_default = MobileFooter;
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../../../scripts/build/transpile/react-shim.js", "../../../src/MobileFooter/Footer.tsx"],
4
- "sourcesContent": ["import * as React from 'react';\nexport { React };\n", "/* eslint-disable jest/valid-describe */\n/* eslint-disable jest/valid-title */\nimport React from 'react';\nimport styled from 'styled-components';\nimport { border, __UNSAFE_SPACE_TO_DIMSUM } from '@elliemae/ds-system';\nimport { Grid } from '@elliemae/ds-grid';\nimport DSButton from '@elliemae/ds-button';\nimport { describe, PropTypes } from 'react-desc';\nimport { DSMobileFooterText } from './Text';\n\nconst FooterWrap = styled(Grid)`\n background-color: ${(props) => props.theme.colors.neutral['000']};\n border-top: ${(props) => border(props.theme.colors.neutral[100])};\n height: ${(props) => `calc(${__UNSAFE_SPACE_TO_DIMSUM(props.theme.space.xs)} * 7)`};\n`;\n\nconst MobileFooter = ({ children }) => {\n const childArr = React.Children.toArray(children);\n const isButtonType = childArr[0].type === DSMobileFooterText || childArr[0].type === DSButton;\n const setCols = () => {\n if (isButtonType) {\n return childArr.length === 1 ? ['90%'] : ['45%', '45%'];\n }\n return childArr.map(() => `${100 / childArr.length}%`);\n };\n return (\n <FooterWrap>\n <Grid\n cols={setCols()}\n gutter={isButtonType ? 'xs' : undefined}\n justifyContent=\"center\"\n alignItems={isButtonType ? 'center' : undefined}\n >\n {childArr.map((c, i) => (\n // eslint-disable-next-line react/no-array-index-key\n <Grid key={i}>{c}</Grid>\n ))}\n </Grid>\n </FooterWrap>\n );\n};\n\nconst footerProps = {\n /**\n * Instance of DSButton, DSMobileFooterText or DSMobileFooterAction\n */\n children: PropTypes.oneOfType([PropTypes.element, PropTypes.arrayOf(PropTypes.element)]).isRequired.description(\n 'Instance of DSButton, DSMobileFooterText or DSMobileFooterAction',\n ),\n};\n\nMobileFooter.propTypes = footerProps;\n\nconst MobileFooterWithSchema = describe(MobileFooter);\nMobileFooterWithSchema.propTypes = footerProps;\n\nexport default MobileFooter;\n\nexport { MobileFooterWithSchema };\n"],
5
- "mappings": "AAAA;ACEA;AACA;AACA;AACA;AACA;AACA;AACA;AAEA,MAAM,aAAa,OAAO,IAAI;AAAA,sBACR,CAAC,UAAU,MAAM,MAAM,OAAO,QAAQ;AAAA,gBAC5C,CAAC,UAAU,OAAO,MAAM,MAAM,OAAO,QAAQ,IAAI;AAAA,YACrD,CAAC,UAAU,QAAQ,yBAAyB,MAAM,MAAM,MAAM,EAAE;AAAA;AAG5E,MAAM,eAAe,CAAC,EAAE,eAAe;AACrC,QAAM,WAAW,OAAM,SAAS,QAAQ,QAAQ;AAChD,QAAM,eAAe,SAAS,GAAG,SAAS,sBAAsB,SAAS,GAAG,SAAS;AACrF,QAAM,UAAU,MAAM;AACpB,QAAI,cAAc;AAChB,aAAO,SAAS,WAAW,IAAI,CAAC,KAAK,IAAI,CAAC,OAAO,KAAK;AAAA,IACxD;AACA,WAAO,SAAS,IAAI,MAAM,GAAG,MAAM,SAAS,SAAS;AAAA,EACvD;AACA,SACE,qCAAC,kBACC,qCAAC;AAAA,IACC,MAAM,QAAQ;AAAA,IACd,QAAQ,eAAe,OAAO;AAAA,IAC9B,gBAAe;AAAA,IACf,YAAY,eAAe,WAAW;AAAA,KAErC,SAAS,IAAI,CAAC,GAAG,MAEhB,qCAAC;AAAA,IAAK,KAAK;AAAA,KAAI,CAAE,CAClB,CACH,CACF;AAEJ;AAEA,MAAM,cAAc;AAAA,EAIlB,UAAU,UAAU,UAAU,CAAC,UAAU,SAAS,UAAU,QAAQ,UAAU,OAAO,CAAC,CAAC,EAAE,WAAW,YAClG,kEACF;AACF;AAEA,aAAa,YAAY;AAEzB,MAAM,yBAAyB,SAAS,YAAY;AACpD,uBAAuB,YAAY;AAEnC,IAAO,iBAAQ;",
4
+ "sourcesContent": ["import * as React from 'react';\nexport { React };\n", "/* eslint-disable jest/valid-describe */\n/* eslint-disable jest/valid-title */\nimport React from 'react';\nimport styled from 'styled-components';\nimport { border, __UNSAFE_SPACE_TO_DIMSUM } from '@elliemae/ds-system';\nimport { Grid } from '@elliemae/ds-grid';\nimport DSButton from '@elliemae/ds-button';\nimport { describe, PropTypes } from 'react-desc';\nimport { DSMobileFooterText } from './Text';\n\nconst FooterWrap = styled(Grid)`\n background-color: ${(props) => props.theme.colors.neutral['000']};\n border-top: ${(props) => border(props.theme.colors.neutral[100])};\n height: ${(props) => `calc(${__UNSAFE_SPACE_TO_DIMSUM(props.theme.space.xs)} * 7)`};\n`;\n\nconst MobileFooter = ({ children }) => {\n const childArr = React.Children.toArray(children);\n const isButtonType = childArr[0].type === DSMobileFooterText || childArr[0].type === DSButton;\n const setCols = () => {\n if (isButtonType) {\n return childArr.length === 1 ? ['90%'] : ['45%', '45%'];\n }\n return childArr.map(() => `${100 / childArr.length}%`);\n };\n return (\n <FooterWrap>\n <Grid\n cols={setCols()}\n gutter={isButtonType ? 'xs' : undefined}\n justifyContent=\"center\"\n alignItems={isButtonType ? 'center' : undefined}\n >\n {childArr.map((c, i) => (\n // eslint-disable-next-line react/no-array-index-key\n <Grid key={i}>{c}</Grid>\n ))}\n </Grid>\n </FooterWrap>\n );\n};\n\nconst footerProps = {\n /**\n * Instance of DSButton, DSMobileFooterText or DSMobileFooterAction\n */\n children: PropTypes.oneOfType([PropTypes.element, PropTypes.arrayOf(PropTypes.element)]).isRequired.description(\n 'Instance of DSButton, DSMobileFooterText or DSMobileFooterAction',\n ),\n};\n\nMobileFooter.propTypes = footerProps;\nMobileFooter.displayName = 'MobileFooter';\nconst MobileFooterWithSchema = describe(MobileFooter);\nMobileFooterWithSchema.propTypes = footerProps;\n\nexport default MobileFooter;\n\nexport { MobileFooterWithSchema };\n"],
5
+ "mappings": "AAAA;ACEA;AACA;AACA;AACA;AACA;AACA;AACA;AAEA,MAAM,aAAa,OAAO,IAAI;AAAA,sBACR,CAAC,UAAU,MAAM,MAAM,OAAO,QAAQ;AAAA,gBAC5C,CAAC,UAAU,OAAO,MAAM,MAAM,OAAO,QAAQ,IAAI;AAAA,YACrD,CAAC,UAAU,QAAQ,yBAAyB,MAAM,MAAM,MAAM,EAAE;AAAA;AAG5E,MAAM,eAAe,CAAC,EAAE,eAAe;AACrC,QAAM,WAAW,OAAM,SAAS,QAAQ,QAAQ;AAChD,QAAM,eAAe,SAAS,GAAG,SAAS,sBAAsB,SAAS,GAAG,SAAS;AACrF,QAAM,UAAU,MAAM;AACpB,QAAI,cAAc;AAChB,aAAO,SAAS,WAAW,IAAI,CAAC,KAAK,IAAI,CAAC,OAAO,KAAK;AAAA,IACxD;AACA,WAAO,SAAS,IAAI,MAAM,GAAG,MAAM,SAAS,SAAS;AAAA,EACvD;AACA,SACE,qCAAC,kBACC,qCAAC;AAAA,IACC,MAAM,QAAQ;AAAA,IACd,QAAQ,eAAe,OAAO;AAAA,IAC9B,gBAAe;AAAA,IACf,YAAY,eAAe,WAAW;AAAA,KAErC,SAAS,IAAI,CAAC,GAAG,MAEhB,qCAAC;AAAA,IAAK,KAAK;AAAA,KAAI,CAAE,CAClB,CACH,CACF;AAEJ;AAEA,MAAM,cAAc;AAAA,EAIlB,UAAU,UAAU,UAAU,CAAC,UAAU,SAAS,UAAU,QAAQ,UAAU,OAAO,CAAC,CAAC,EAAE,WAAW,YAClG,kEACF;AACF;AAEA,aAAa,YAAY;AACzB,aAAa,cAAc;AAC3B,MAAM,yBAAyB,SAAS,YAAY;AACpD,uBAAuB,YAAY;AAEnC,IAAO,iBAAQ;",
6
6
  "names": []
7
7
  }
@@ -14,6 +14,7 @@ const props = {
14
14
  children: PropTypes.string.isRequired.description("Children")
15
15
  };
16
16
  DSMobileFooterText.propTypes = props;
17
+ DSMobileFooterText.displayName = "DSMobileFooterText";
17
18
  const DSMobileFooterTextWithSchema = describe(DSMobileFooterText);
18
19
  DSMobileFooterTextWithSchema.propTypes = props;
19
20
  export {
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../../../scripts/build/transpile/react-shim.js", "../../../src/MobileFooter/Text.tsx"],
4
- "sourcesContent": ["import * as React from 'react';\nexport { React };\n", "/* eslint-disable jest/valid-describe */\n/* eslint-disable jest/valid-title */\nimport React from 'react';\nimport styled from 'styled-components';\nimport { textStyle, truncate, color } from '@elliemae/ds-system';\nimport { describe, PropTypes } from 'react-desc';\n\nconst Text = styled.p`\n margin: auto 0;\n ${truncate()}\n ${textStyle('body')}\n ${color('neutral', '800')}\n`;\n\nconst DSMobileFooterText = ({ children }) => <Text>{children}</Text>;\n\nconst props = {\n children: PropTypes.string.isRequired.description('Children'),\n};\n\nDSMobileFooterText.propTypes = props;\n\nconst DSMobileFooterTextWithSchema = describe(DSMobileFooterText);\nDSMobileFooterTextWithSchema.propTypes = props;\n\nexport { DSMobileFooterText, DSMobileFooterTextWithSchema };\n"],
5
- "mappings": "AAAA;ACEA;AACA;AACA;AACA;AAEA,MAAM,OAAO,OAAO;AAAA;AAAA,IAEhB,SAAS;AAAA,IACT,UAAU,MAAM;AAAA,IAChB,MAAM,WAAW,KAAK;AAAA;AAG1B,MAAM,qBAAqB,CAAC,EAAE,eAAe,qCAAC,YAAM,QAAS;AAE7D,MAAM,QAAQ;AAAA,EACZ,UAAU,UAAU,OAAO,WAAW,YAAY,UAAU;AAC9D;AAEA,mBAAmB,YAAY;AAE/B,MAAM,+BAA+B,SAAS,kBAAkB;AAChE,6BAA6B,YAAY;",
4
+ "sourcesContent": ["import * as React from 'react';\nexport { React };\n", "/* eslint-disable jest/valid-describe */\n/* eslint-disable jest/valid-title */\nimport React from 'react';\nimport styled from 'styled-components';\nimport { textStyle, truncate, color } from '@elliemae/ds-system';\nimport { describe, PropTypes } from 'react-desc';\n\nconst Text = styled.p`\n margin: auto 0;\n ${truncate()}\n ${textStyle('body')}\n ${color('neutral', '800')}\n`;\n\nconst DSMobileFooterText = ({ children }) => <Text>{children}</Text>;\n\nconst props = {\n children: PropTypes.string.isRequired.description('Children'),\n};\n\nDSMobileFooterText.propTypes = props;\nDSMobileFooterText.displayName = 'DSMobileFooterText';\nconst DSMobileFooterTextWithSchema = describe(DSMobileFooterText);\nDSMobileFooterTextWithSchema.propTypes = props;\n\nexport { DSMobileFooterText, DSMobileFooterTextWithSchema };\n"],
5
+ "mappings": "AAAA;ACEA;AACA;AACA;AACA;AAEA,MAAM,OAAO,OAAO;AAAA;AAAA,IAEhB,SAAS;AAAA,IACT,UAAU,MAAM;AAAA,IAChB,MAAM,WAAW,KAAK;AAAA;AAG1B,MAAM,qBAAqB,CAAC,EAAE,eAAe,qCAAC,YAAM,QAAS;AAE7D,MAAM,QAAQ;AAAA,EACZ,UAAU,UAAU,OAAO,WAAW,YAAY,UAAU;AAC9D;AAEA,mBAAmB,YAAY;AAC/B,mBAAmB,cAAc;AACjC,MAAM,+BAA+B,SAAS,kBAAkB;AAChE,6BAA6B,YAAY;",
6
6
  "names": []
7
7
  }
@@ -55,6 +55,7 @@ const listItemProps = {
55
55
  theme: PropTypes.object.description("")
56
56
  };
57
57
  MobileListItem.propTypes = listItemProps;
58
+ MobileListItem.displayName = "MobileListItem";
58
59
  const ListItemWithSchema = describe(MobileListItem);
59
60
  ListItemWithSchema.propTypes = listItemProps;
60
61
  export {