@elliemae/ds-mobile 3.1.0-next.0 → 3.1.0-next.11

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 (239) hide show
  1. package/dist/cjs/Accordion/DSMobileAccordion.js +3 -3
  2. package/dist/cjs/Accordion/DSMobileAccordion.js.map +2 -2
  3. package/dist/cjs/CategoryBox/CategoryBox.js +12 -12
  4. package/dist/cjs/CategoryBox/CategoryBox.js.map +2 -2
  5. package/dist/cjs/CollectionBox/CollectionBox.js +15 -15
  6. package/dist/cjs/CollectionBox/CollectionBox.js.map +2 -2
  7. package/dist/cjs/GlobalHeader/MobileGlobalHeader.js +9 -9
  8. package/dist/cjs/GlobalHeader/MobileGlobalHeader.js.map +2 -2
  9. package/dist/cjs/GlobalHeader/styles.js +9 -9
  10. package/dist/cjs/GlobalHeader/styles.js.map +2 -2
  11. package/dist/cjs/GroupBox/GroupBox.js +11 -11
  12. package/dist/cjs/GroupBox/GroupBox.js.map +2 -2
  13. package/dist/cjs/InfiniteLoader/Infiniteloader.js +39 -30
  14. package/dist/cjs/InfiniteLoader/Infiniteloader.js.map +2 -2
  15. package/dist/cjs/InfiniteLoader/Loader.js +1 -1
  16. package/dist/cjs/InfiniteLoader/Loader.js.map +2 -2
  17. package/dist/cjs/InfiniteLoader/VirtualizedInfiniteLoader.js +9 -9
  18. package/dist/cjs/InfiniteLoader/VirtualizedInfiniteLoader.js.map +2 -2
  19. package/dist/cjs/InfiniteLoader/styled.js +2 -2
  20. package/dist/cjs/InfiniteLoader/styled.js.map +2 -2
  21. package/dist/cjs/LoadingPage/Page.js +2 -2
  22. package/dist/cjs/LoadingPage/Page.js.map +2 -2
  23. package/dist/cjs/MobileActionToolbar/MobileActionToolbar.js +7 -7
  24. package/dist/cjs/MobileActionToolbar/MobileActionToolbar.js.map +2 -2
  25. package/dist/cjs/MobileActionToolbar/MobileActionToolbarItem.js +3 -3
  26. package/dist/cjs/MobileActionToolbar/MobileActionToolbarItem.js.map +2 -2
  27. package/dist/cjs/MobileBanner/MobileBanner.js +2 -2
  28. package/dist/cjs/MobileBanner/MobileBanner.js.map +2 -2
  29. package/dist/cjs/MobileBanner/propTypes.js +12 -12
  30. package/dist/cjs/MobileBanner/propTypes.js.map +2 -2
  31. package/dist/cjs/MobileBanner/styles.js +15 -15
  32. package/dist/cjs/MobileBanner/styles.js.map +2 -2
  33. package/dist/cjs/MobileBanner/utils/styleHelpers.js.map +1 -1
  34. package/dist/cjs/MobileCard/ActionAddon.js +2 -2
  35. package/dist/cjs/MobileCard/ActionAddon.js.map +2 -2
  36. package/dist/cjs/MobileCard/Card.js +11 -13
  37. package/dist/cjs/MobileCard/Card.js.map +2 -2
  38. package/dist/cjs/MobileCard/CardIcons.js +2 -2
  39. package/dist/cjs/MobileCard/CardIcons.js.map +2 -2
  40. package/dist/cjs/MobileCard/ExpandChevron.js +2 -2
  41. package/dist/cjs/MobileCard/ExpandChevron.js.map +2 -2
  42. package/dist/cjs/MobileCard/ExpandableRegion.js +5 -5
  43. package/dist/cjs/MobileCard/ExpandableRegion.js.map +2 -2
  44. package/dist/cjs/MobileCard/Group.js +23 -23
  45. package/dist/cjs/MobileCard/Group.js.map +2 -2
  46. package/dist/cjs/MobileCard/StyledCard.js +4 -4
  47. package/dist/cjs/MobileCard/StyledCard.js.map +2 -2
  48. package/dist/cjs/MobileCard/props.js +14 -14
  49. package/dist/cjs/MobileCard/props.js.map +2 -2
  50. package/dist/cjs/MobileContextMenu/MobileContextMenu.js +25 -25
  51. package/dist/cjs/MobileContextMenu/MobileContextMenu.js.map +2 -2
  52. package/dist/cjs/MobileContextMenu/MobileContextMenuGroup.js +10 -10
  53. package/dist/cjs/MobileContextMenu/MobileContextMenuGroup.js.map +2 -2
  54. package/dist/cjs/MobileContextMenu/MobileContextMenuItem.js +18 -18
  55. package/dist/cjs/MobileContextMenu/MobileContextMenuItem.js.map +2 -2
  56. package/dist/cjs/MobileDatePicker/Input.js +5 -5
  57. package/dist/cjs/MobileDatePicker/Input.js.map +2 -2
  58. package/dist/cjs/MobileDatePicker/MobileDatePicker.js +7 -7
  59. package/dist/cjs/MobileDatePicker/MobileDatePicker.js.map +2 -2
  60. package/dist/cjs/MobileDropdownMenu/MobileDropdownInput.js +6 -6
  61. package/dist/cjs/MobileDropdownMenu/MobileDropdownInput.js.map +2 -2
  62. package/dist/cjs/MobileDropdownMenu/MobileDropdownMenu.js +5 -5
  63. package/dist/cjs/MobileDropdownMenu/MobileDropdownMenu.js.map +2 -2
  64. package/dist/cjs/MobileEmtpyState/MobileEmptyState.js +6 -6
  65. package/dist/cjs/MobileEmtpyState/MobileEmptyState.js.map +2 -2
  66. package/dist/cjs/MobileFilterbar/Filterbar.js +7 -7
  67. package/dist/cjs/MobileFilterbar/Filterbar.js.map +2 -2
  68. package/dist/cjs/MobileFilterbar/FilterbarItem.js +4 -4
  69. package/dist/cjs/MobileFilterbar/FilterbarItem.js.map +2 -2
  70. package/dist/cjs/MobileFilterbar/FilterbarSort.js +5 -5
  71. package/dist/cjs/MobileFilterbar/FilterbarSort.js.map +2 -2
  72. package/dist/cjs/MobileFooter/Action.js +7 -9
  73. package/dist/cjs/MobileFooter/Action.js.map +2 -2
  74. package/dist/cjs/MobileFooter/Footer.js +7 -7
  75. package/dist/cjs/MobileFooter/Footer.js.map +2 -2
  76. package/dist/cjs/MobileFooter/Text.js +8 -8
  77. package/dist/cjs/MobileFooter/Text.js.map +2 -2
  78. package/dist/cjs/MobileListItem/MobileListItem.js +19 -19
  79. package/dist/cjs/MobileListItem/MobileListItem.js.map +2 -2
  80. package/dist/cjs/MobilePageHeader/MobilePageHeader.js +25 -25
  81. package/dist/cjs/MobilePageHeader/MobilePageHeader.js.map +2 -2
  82. package/dist/cjs/MobileSelectList/styled.js +8 -8
  83. package/dist/cjs/MobileSelectList/styled.js.map +2 -2
  84. package/dist/cjs/MobileSeparator/Separator.js +8 -8
  85. package/dist/cjs/MobileSeparator/Separator.js.map +2 -2
  86. package/dist/cjs/MobileTimePicker/Input.js +2 -2
  87. package/dist/cjs/MobileTimePicker/Input.js.map +2 -2
  88. package/dist/cjs/MobileTimePicker/MobileTimePicker.js +7 -7
  89. package/dist/cjs/MobileTimePicker/MobileTimePicker.js.map +2 -2
  90. package/dist/cjs/MobileTouchable/MobileTouchable.js +4 -4
  91. package/dist/cjs/MobileTouchable/MobileTouchable.js.map +2 -2
  92. package/dist/cjs/Modal/Modal.js +14 -14
  93. package/dist/cjs/Modal/Modal.js.map +2 -2
  94. package/dist/cjs/Modal/styled.js +8 -8
  95. package/dist/cjs/Modal/styled.js.map +2 -2
  96. package/dist/cjs/PageFilter/PageFilter.js +13 -13
  97. package/dist/cjs/PageFilter/PageFilter.js.map +2 -2
  98. package/dist/cjs/PageForm/PageForm.js +5 -5
  99. package/dist/cjs/PageForm/PageForm.js.map +2 -2
  100. package/dist/cjs/PageList/PageList.js +6 -6
  101. package/dist/cjs/PageList/PageList.js.map +2 -2
  102. package/dist/cjs/PageSearch/PageSearch.js +7 -7
  103. package/dist/cjs/PageSearch/PageSearch.js.map +2 -2
  104. package/dist/cjs/PageSummary/PageSummary.js +3 -3
  105. package/dist/cjs/PageSummary/PageSummary.js.map +2 -2
  106. package/dist/cjs/PageSummary/Tags.js +5 -5
  107. package/dist/cjs/PageSummary/Tags.js.map +2 -2
  108. package/dist/cjs/SideNav/SideNav.js +8 -8
  109. package/dist/cjs/SideNav/SideNav.js.map +2 -2
  110. package/dist/cjs/SideNav/styles.js +9 -9
  111. package/dist/cjs/SideNav/styles.js.map +2 -2
  112. package/dist/cjs/SwipeToRefresh/SwipeToRefresh.js +5 -5
  113. package/dist/cjs/SwipeToRefresh/SwipeToRefresh.js.map +2 -2
  114. package/dist/cjs/SwipeToRefresh/styled.js +5 -5
  115. package/dist/cjs/SwipeToRefresh/styled.js.map +2 -2
  116. package/dist/cjs/Tabs/index.js +3 -3
  117. package/dist/cjs/Tabs/index.js.map +2 -2
  118. package/dist/cjs/Tabs/propTypes.js +14 -14
  119. package/dist/cjs/Tabs/propTypes.js.map +2 -2
  120. package/dist/esm/Accordion/DSMobileAccordion.js +1 -1
  121. package/dist/esm/Accordion/DSMobileAccordion.js.map +1 -1
  122. package/dist/esm/CategoryBox/CategoryBox.js +2 -2
  123. package/dist/esm/CategoryBox/CategoryBox.js.map +1 -1
  124. package/dist/esm/CollectionBox/CollectionBox.js +2 -2
  125. package/dist/esm/CollectionBox/CollectionBox.js.map +1 -1
  126. package/dist/esm/GlobalHeader/MobileGlobalHeader.js +1 -1
  127. package/dist/esm/GlobalHeader/MobileGlobalHeader.js.map +1 -1
  128. package/dist/esm/GlobalHeader/styles.js +1 -1
  129. package/dist/esm/GlobalHeader/styles.js.map +1 -1
  130. package/dist/esm/GroupBox/GroupBox.js +2 -2
  131. package/dist/esm/GroupBox/GroupBox.js.map +1 -1
  132. package/dist/esm/InfiniteLoader/Infiniteloader.js +36 -27
  133. package/dist/esm/InfiniteLoader/Infiniteloader.js.map +2 -2
  134. package/dist/esm/InfiniteLoader/Loader.js +1 -1
  135. package/dist/esm/InfiniteLoader/Loader.js.map +2 -2
  136. package/dist/esm/InfiniteLoader/VirtualizedInfiniteLoader.js +1 -1
  137. package/dist/esm/InfiniteLoader/VirtualizedInfiniteLoader.js.map +1 -1
  138. package/dist/esm/InfiniteLoader/styled.js +1 -1
  139. package/dist/esm/InfiniteLoader/styled.js.map +1 -1
  140. package/dist/esm/LoadingPage/Page.js +1 -1
  141. package/dist/esm/LoadingPage/Page.js.map +1 -1
  142. package/dist/esm/MobileActionToolbar/MobileActionToolbar.js +2 -2
  143. package/dist/esm/MobileActionToolbar/MobileActionToolbar.js.map +1 -1
  144. package/dist/esm/MobileActionToolbar/MobileActionToolbarItem.js +1 -1
  145. package/dist/esm/MobileActionToolbar/MobileActionToolbarItem.js.map +1 -1
  146. package/dist/esm/MobileBanner/MobileBanner.js +1 -1
  147. package/dist/esm/MobileBanner/MobileBanner.js.map +1 -1
  148. package/dist/esm/MobileBanner/propTypes.js +1 -1
  149. package/dist/esm/MobileBanner/propTypes.js.map +1 -1
  150. package/dist/esm/MobileBanner/styles.js +1 -1
  151. package/dist/esm/MobileBanner/styles.js.map +1 -1
  152. package/dist/esm/MobileBanner/utils/styleHelpers.js.map +1 -1
  153. package/dist/esm/MobileCard/ActionAddon.js +1 -1
  154. package/dist/esm/MobileCard/ActionAddon.js.map +1 -1
  155. package/dist/esm/MobileCard/Card.js +12 -4
  156. package/dist/esm/MobileCard/Card.js.map +2 -2
  157. package/dist/esm/MobileCard/CardIcons.js +1 -1
  158. package/dist/esm/MobileCard/CardIcons.js.map +1 -1
  159. package/dist/esm/MobileCard/ExpandChevron.js +1 -1
  160. package/dist/esm/MobileCard/ExpandChevron.js.map +1 -1
  161. package/dist/esm/MobileCard/ExpandableRegion.js +1 -1
  162. package/dist/esm/MobileCard/ExpandableRegion.js.map +1 -1
  163. package/dist/esm/MobileCard/Group.js +2 -2
  164. package/dist/esm/MobileCard/Group.js.map +1 -1
  165. package/dist/esm/MobileCard/StyledCard.js +1 -1
  166. package/dist/esm/MobileCard/StyledCard.js.map +1 -1
  167. package/dist/esm/MobileCard/props.js +1 -1
  168. package/dist/esm/MobileCard/props.js.map +1 -1
  169. package/dist/esm/MobileContextMenu/MobileContextMenu.js +2 -2
  170. package/dist/esm/MobileContextMenu/MobileContextMenu.js.map +1 -1
  171. package/dist/esm/MobileContextMenu/MobileContextMenuGroup.js +2 -2
  172. package/dist/esm/MobileContextMenu/MobileContextMenuGroup.js.map +1 -1
  173. package/dist/esm/MobileContextMenu/MobileContextMenuItem.js +2 -2
  174. package/dist/esm/MobileContextMenu/MobileContextMenuItem.js.map +1 -1
  175. package/dist/esm/MobileDatePicker/Input.js +1 -1
  176. package/dist/esm/MobileDatePicker/Input.js.map +1 -1
  177. package/dist/esm/MobileDatePicker/MobileDatePicker.js +1 -1
  178. package/dist/esm/MobileDatePicker/MobileDatePicker.js.map +1 -1
  179. package/dist/esm/MobileDropdownMenu/MobileDropdownInput.js +1 -1
  180. package/dist/esm/MobileDropdownMenu/MobileDropdownInput.js.map +1 -1
  181. package/dist/esm/MobileDropdownMenu/MobileDropdownMenu.js +1 -1
  182. package/dist/esm/MobileDropdownMenu/MobileDropdownMenu.js.map +1 -1
  183. package/dist/esm/MobileEmtpyState/MobileEmptyState.js +2 -2
  184. package/dist/esm/MobileEmtpyState/MobileEmptyState.js.map +1 -1
  185. package/dist/esm/MobileFilterbar/Filterbar.js +2 -2
  186. package/dist/esm/MobileFilterbar/Filterbar.js.map +1 -1
  187. package/dist/esm/MobileFilterbar/FilterbarItem.js +1 -1
  188. package/dist/esm/MobileFilterbar/FilterbarItem.js.map +1 -1
  189. package/dist/esm/MobileFilterbar/FilterbarSort.js +2 -2
  190. package/dist/esm/MobileFilterbar/FilterbarSort.js.map +1 -1
  191. package/dist/esm/MobileFooter/Action.js +2 -4
  192. package/dist/esm/MobileFooter/Action.js.map +2 -2
  193. package/dist/esm/MobileFooter/Footer.js +2 -2
  194. package/dist/esm/MobileFooter/Footer.js.map +1 -1
  195. package/dist/esm/MobileFooter/Text.js +2 -2
  196. package/dist/esm/MobileFooter/Text.js.map +1 -1
  197. package/dist/esm/MobileListItem/MobileListItem.js +2 -2
  198. package/dist/esm/MobileListItem/MobileListItem.js.map +1 -1
  199. package/dist/esm/MobilePageHeader/MobilePageHeader.js +2 -2
  200. package/dist/esm/MobilePageHeader/MobilePageHeader.js.map +1 -1
  201. package/dist/esm/MobileSelectList/styled.js +1 -1
  202. package/dist/esm/MobileSelectList/styled.js.map +1 -1
  203. package/dist/esm/MobileSeparator/Separator.js +2 -2
  204. package/dist/esm/MobileSeparator/Separator.js.map +1 -1
  205. package/dist/esm/MobileTimePicker/Input.js +1 -1
  206. package/dist/esm/MobileTimePicker/Input.js.map +1 -1
  207. package/dist/esm/MobileTimePicker/MobileTimePicker.js +1 -1
  208. package/dist/esm/MobileTimePicker/MobileTimePicker.js.map +1 -1
  209. package/dist/esm/MobileTouchable/MobileTouchable.js +1 -1
  210. package/dist/esm/MobileTouchable/MobileTouchable.js.map +1 -1
  211. package/dist/esm/Modal/Modal.js +1 -1
  212. package/dist/esm/Modal/Modal.js.map +1 -1
  213. package/dist/esm/Modal/styled.js +1 -1
  214. package/dist/esm/Modal/styled.js.map +1 -1
  215. package/dist/esm/PageFilter/PageFilter.js +1 -1
  216. package/dist/esm/PageFilter/PageFilter.js.map +1 -1
  217. package/dist/esm/PageForm/PageForm.js +1 -1
  218. package/dist/esm/PageForm/PageForm.js.map +1 -1
  219. package/dist/esm/PageList/PageList.js +1 -1
  220. package/dist/esm/PageList/PageList.js.map +1 -1
  221. package/dist/esm/PageSearch/PageSearch.js +1 -1
  222. package/dist/esm/PageSearch/PageSearch.js.map +1 -1
  223. package/dist/esm/PageSummary/PageSummary.js +1 -1
  224. package/dist/esm/PageSummary/PageSummary.js.map +1 -1
  225. package/dist/esm/PageSummary/Tags.js +1 -1
  226. package/dist/esm/PageSummary/Tags.js.map +1 -1
  227. package/dist/esm/SideNav/SideNav.js +1 -1
  228. package/dist/esm/SideNav/SideNav.js.map +1 -1
  229. package/dist/esm/SideNav/styles.js +1 -1
  230. package/dist/esm/SideNav/styles.js.map +1 -1
  231. package/dist/esm/SwipeToRefresh/SwipeToRefresh.js +1 -1
  232. package/dist/esm/SwipeToRefresh/SwipeToRefresh.js.map +1 -1
  233. package/dist/esm/SwipeToRefresh/styled.js +1 -1
  234. package/dist/esm/SwipeToRefresh/styled.js.map +1 -1
  235. package/dist/esm/Tabs/index.js +1 -1
  236. package/dist/esm/Tabs/index.js.map +1 -1
  237. package/dist/esm/Tabs/propTypes.js +1 -1
  238. package/dist/esm/Tabs/propTypes.js.map +1 -1
  239. package/package.json +26 -27
@@ -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;\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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",
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 '@elliemae/ds-utilities';\nimport {\n styled,\n space,\n color,\n border,\n op,\n truncate,\n withTheme,\n __UNSAFE_SPACE_TO_DIMSUM,\n toMobile,\n} 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": "AAAA;ACGA;AACA;AACA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAWA;AACA;AACA;AACA;AACA;AACA;AACA;AAEA,MAAM,gBAAgB,OAAO;AAAA,IACzB,SAAS;AAAA;AAGb,MAAM,QAAQ,OAAO;AAAA,IACjB;AAAA,IACA,SAAS;AAAA,iBACI,CAAC,UAAU,MAAM,MAAM,YAAY;AAAA,eACrC,CAAC,UAAU,SAAS,MAAM,MAAM,UAAU,MAAM,IAAI;AAAA;AAAA,IAE/D,MAAM,WAAW,GAAG;AAAA;AAExB,MAAM,SAAS,OAAO;AAAA,IAClB;AAAA,IACA,SAAS;AAAA,eACE,CAAC,UAAU,SAAS,MAAM,MAAM,UAAU,MAAM,IAAI;AAAA,iBAClD,CAAC,UAAU,MAAM,MAAM,YAAY;AAAA;AAEpD,MAAM,UAAU,OAAO;AAAA,gBACP,CAAC,UAAU,yBAAyB,MAAM,MAAM,MAAM,EAAE;AAAA,IACpE,SAAS;AAAA;AAAA,oBAEO,CAAC,UAAU,yBAAyB,MAAM,MAAM,MAAM,CAAC;AAAA;AAAA;AAG3E,MAAM,cAAc,OAAO;AAAA,IACvB,SAAS;AAAA,gBACG,CAAC,UAAU,OAAO,MAAM,MAAM,OAAO,QAAQ,MAAM;AAAA;AAAA;AAAA,oBAG/C,CAAC,UAAU,yBAAyB,MAAM,MAAM,MAAM,GAAG;AAAA,eAC9D,CAAC,UAAU,SAAS,MAAM,MAAM,UAAU,SAAS,IAAI;AAAA,IAClE,MAAM,WAAW,GAAG;AAAA,iBACP,CAAC,UAAU,MAAM,MAAM,YAAY;AAAA;AAAA;AAAA;AAIpD,MAAM,WAAW,OAAO,IAAI;AAAA;AAAA,cAEd,CAAC,UAAU,MAAM;AAAA,aAClB,CAAC,UAAU,MAAM;AAAA;AAAA;AAAA;AAAA;AAAA,cAKhB,CAAC,UAAU,MAAM;AAAA,aAClB,CAAC,UAAU,MAAM;AAAA;AAAA;AAG9B,MAAM,aAAa,OAAO;AAAA;AAAA;AAAA,IAGtB,SAAS;AAAA;AAGb,MAAM,aAAmD,CAAC;AAAA,EACxD;AAAA,EACA,SAAS;AAAA,EACT;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA,aAAa;AAAA,EACb;AAAA,EACA;AAAA,EACA;AAAA,MACI;AACJ,QAAM,aAAa,OAAO,IAAI;AAC9B,QAAM,gBAAgB,UAAU,UAAU;AAC1C,QAAM,iBAAiB,CAAE,YAAW,YAAY;AAChD,QAAM,QAAQ,GAAG,KAAK,yBAAyB,MAAM,MAAM,CAAC,GAAG,CAAC;AAEhE,SACE,qCAAC;AAAA,IACC,QAAQ,CAAC,UAAU,CAAC,MAAM;AACxB,YAAM,EAAE,aAAa,aAAa;AAClC,YAAM,WACJ,gBAAgB,UAAc,iBAAgB,SAAU,aAAa,UAAU,aAAa,SAAS,KAAK;AAE5G,aACE,qCAAC;AAAA,QACC,eAAY;AAAA,QACZ,WACE,WAAW,MAAM,yBAAyB,MAAM,MAAM,GAAG,IAAI,yBAAyB,MAAM,MAAM,EAAE;AAAA,SAGrG,cACC,qCAAC;AAAA,QACC,YAAY;AAAA,QACZ,SAAS,CAAC,MAAM;AACd,YAAE,gBAAgB;AAClB,mBAAS,EAAE,QAAQ,EAAE,MAAM,EAAE,CAAC;AAAA,QAChC;AAAA,QACA,OAAO,WAAW,WAAW,QAAQ;AAAA,OACvC,GAEF,qCAAC;AAAA,QAAK,IAAK,YAAW,aAAa;AAAA,QAAe,MAAM,CAAC,QAAQ,MAAM;AAAA,QAAG,YAAW;AAAA,SAClF,YAAY,qCAAC;AAAA,QAAK,IAAI,yBAAyB,MAAM,MAAM,CAAC;AAAA,SAAI,QAAS,GACzE,aACC,qCAAC;AAAA,QAAS,IAAI,yBAAyB,MAAM,MAAM,CAAC;AAAA,QAAG;AAAA,SACpD,SACH,CAEJ,GACA,qCAAC;AAAA,QACC,IAAI,CAAC,YAAY,yBAAyB,MAAM,MAAM,CAAC,IAAI,yBAAyB,MAAM,MAAM,EAAE;AAAA,QAClG,IAAI,yBAAyB,MAAM,MAAM,CAAC;AAAA,QAC1C,OAAM;AAAA,SAEN,qCAAC,kBACC,qCAAC;AAAA,QAAM,IAAI,CAAC,kBAAkB;AAAA,QAAO,eAAY;AAAA,SAC/C,qCAAC,qBAAe,QAAS,GACxB,WACC,qCAAC;AAAA,QACC,eAAY;AAAA,QACZ,MAAM,QAAQ,IAAI,MAAM,aAAa;AAAA,QACrC,IAAK,CAAE,YAAW,aAAa,SAAU;AAAA,QACzC,IAAI,GAAG,KAAK,yBAAyB,MAAM,MAAM,GAAG,GAAG,CAAC;AAAA,SAEvD,QAAQ,IAAI,CAAC,GAAG,MACf,qCAAC;AAAA,QAAO,KAAK;AAAA,SACV,GACA,IAAI,QAAQ,SAAS,KAAK,qCAAC;AAAA,QAAO,IAAI,yBAAyB,MAAM,MAAM,GAAG;AAAA,SAAG,QAAC,CACrF,CACD,CACH,CAEJ,GACC,aACC,UAAU,IAAI,CAAC,MAAM,MACnB,qCAAC;AAAA,QAAK,IAAI,yBAAyB,MAAM,MAAM,CAAC;AAAA,QAAG,KAAK;AAAA,SACrD,IACH,CACD,CACL,GACC,YACC,qCAAC;AAAA,QAAY,KAAK;AAAA,SAChB,qCAAC,eAAS,QAAS,GAClB,WAAW,QAAQ,MAAM,qCAAC;AAAA,QAAQ,eAAY;AAAA,SAAgB,QAAQ,EAAG,CAC5E,GAED,WAAW,CAAC,YACX,qCAAC;AAAA,QAAY,KAAK;AAAA,SACf,QAAQ,IAAI,CAAC,GAAG,MACf,qCAAC;AAAA,QAAQ,eAAY;AAAA,QAAe,KAAK;AAAA,SACtC,CACH,CACD,CACH,GAEF,qCAAC;AAAA,QAAiB,MAAM;AAAA,QAAU,SAAS;AAAA,OAAiB,GAC3D,eAAe,qCAAC,YAAM,WAAY,CACrC,CACF;AAAA,IAEJ;AAAA,GACF;AAEJ;AAEA,WAAW,YAAY;AACvB,WAAW,cAAc;AACzB,MAAM,yBAAyB,SAAS,UAAU;AAElD,uBAAuB,YAAY;AAInC,IAAO,eAAQ,UAAU,UAAU;",
6
6
  "names": []
7
7
  }
@@ -1,7 +1,7 @@
1
1
  import * as React from "react";
2
2
  import React2 from "react";
3
3
  import PropTypes from "prop-types";
4
- import styled from "styled-components";
4
+ import { styled } from "@elliemae/ds-system";
5
5
  import { Grid } from "@elliemae/ds-grid";
6
6
  const CardIconsWrapper = styled(Grid)`
7
7
  align-items: center;
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../../../scripts/build/transpile/react-shim.js", "../../../src/MobileCard/CardIcons.tsx"],
4
- "sourcesContent": ["import * as React from 'react';\nexport { React };\n", "/* eslint-disable import/no-unresolved */\nimport React from 'react';\nimport PropTypes from 'prop-types';\nimport styled from 'styled-components';\nimport { Grid } from '@elliemae/ds-grid';\n\nconst CardIconsWrapper = styled(Grid)`\n align-items: center;\n span,\n svg {\n width: 12px !important;\n height: 12px !important;\n }\n span.icon-color-muted svg,\n svg:not([fill]) {\n fill: ${(props) => props.theme.colors.neutral['600']};\n height: 12px !important;\n width: 12px !important;\n\n & * {\n fill: ${(props) => props.theme.colors.neutral['600']};\n }\n }\n span.icon-color-warn svg,\n svg:not([fill]) {\n fill: ${(props) => props.theme.colors.warning['600']};\n height: 12px !important;\n width: 12px !important;\n\n & * {\n fill: ${(props) => props.theme.colors.warning['600']};\n }\n }\n span.icon-color-error svg,\n svg:not([fill]) {\n fill: ${(props) => props.theme.colors.danger['900']};\n height: 12px !important;\n width: 12px !important;\n\n & * {\n fill: ${(props) => props.theme.colors.danger['900']};\n }\n }\n span.icon-color-success svg,\n svg:not([fill]) {\n fill: ${(props) => props.theme.colors.success['900']};\n height: 12px !important;\n width: 12px !important;\n\n & * {\n fill: ${(props) => props.theme.colors.success['900']};\n }\n }\n span.icon-color-primary svg,\n svg:not([fill]) {\n fill: ${(props) => props.theme.colors.brand[600]};\n }\n span.icon-color-primary svg,\n svg:not([fill]) {\n fill: ${(props) => props.theme.colors.brand[600]};\n }\n`;\n\nexport const SubIcons = ({ icons = [], colors = [] }) => (\n <CardIconsWrapper cols={icons.map(() => '12px')} gutter=\"6px\" height=\"14px\" data-testid=\"card-subIcons\">\n {icons.map((Icon, i) => (\n // eslint-disable-next-line react/no-array-index-key\n <Icon key={i} className={`icon-color-${colors[i] || 'muted'}`} />\n ))}\n </CardIconsWrapper>\n);\n\nSubIcons.propTypes = {\n /**\n * Array of Icons\n */\n icons: PropTypes.arrayOf(PropTypes.func),\n /**\n * Color Types: muted, warn, error, success\n */\n colors: PropTypes.arrayOf(PropTypes.oneOf(['muted', 'warn', 'error', 'success', 'primary'])),\n};\n"],
4
+ "sourcesContent": ["import * as React from 'react';\nexport { React };\n", "/* eslint-disable import/no-unresolved */\nimport React from 'react';\nimport PropTypes from 'prop-types';\nimport { styled } from '@elliemae/ds-system';\nimport { Grid } from '@elliemae/ds-grid';\n\nconst CardIconsWrapper = styled(Grid)`\n align-items: center;\n span,\n svg {\n width: 12px !important;\n height: 12px !important;\n }\n span.icon-color-muted svg,\n svg:not([fill]) {\n fill: ${(props) => props.theme.colors.neutral['600']};\n height: 12px !important;\n width: 12px !important;\n\n & * {\n fill: ${(props) => props.theme.colors.neutral['600']};\n }\n }\n span.icon-color-warn svg,\n svg:not([fill]) {\n fill: ${(props) => props.theme.colors.warning['600']};\n height: 12px !important;\n width: 12px !important;\n\n & * {\n fill: ${(props) => props.theme.colors.warning['600']};\n }\n }\n span.icon-color-error svg,\n svg:not([fill]) {\n fill: ${(props) => props.theme.colors.danger['900']};\n height: 12px !important;\n width: 12px !important;\n\n & * {\n fill: ${(props) => props.theme.colors.danger['900']};\n }\n }\n span.icon-color-success svg,\n svg:not([fill]) {\n fill: ${(props) => props.theme.colors.success['900']};\n height: 12px !important;\n width: 12px !important;\n\n & * {\n fill: ${(props) => props.theme.colors.success['900']};\n }\n }\n span.icon-color-primary svg,\n svg:not([fill]) {\n fill: ${(props) => props.theme.colors.brand[600]};\n }\n span.icon-color-primary svg,\n svg:not([fill]) {\n fill: ${(props) => props.theme.colors.brand[600]};\n }\n`;\n\nexport const SubIcons = ({ icons = [], colors = [] }) => (\n <CardIconsWrapper cols={icons.map(() => '12px')} gutter=\"6px\" height=\"14px\" data-testid=\"card-subIcons\">\n {icons.map((Icon, i) => (\n // eslint-disable-next-line react/no-array-index-key\n <Icon key={i} className={`icon-color-${colors[i] || 'muted'}`} />\n ))}\n </CardIconsWrapper>\n);\n\nSubIcons.propTypes = {\n /**\n * Array of Icons\n */\n icons: PropTypes.arrayOf(PropTypes.func),\n /**\n * Color Types: muted, warn, error, success\n */\n colors: PropTypes.arrayOf(PropTypes.oneOf(['muted', 'warn', 'error', 'success', 'primary'])),\n};\n"],
5
5
  "mappings": "AAAA;ACCA;AACA;AACA;AACA;AAEA,MAAM,mBAAmB,OAAO,IAAI;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,YASxB,CAAC,UAAU,MAAM,MAAM,OAAO,QAAQ;AAAA;AAAA;AAAA;AAAA;AAAA,cAKpC,CAAC,UAAU,MAAM,MAAM,OAAO,QAAQ;AAAA;AAAA;AAAA;AAAA;AAAA,YAKxC,CAAC,UAAU,MAAM,MAAM,OAAO,QAAQ;AAAA;AAAA;AAAA;AAAA;AAAA,cAKpC,CAAC,UAAU,MAAM,MAAM,OAAO,QAAQ;AAAA;AAAA;AAAA;AAAA;AAAA,YAKxC,CAAC,UAAU,MAAM,MAAM,OAAO,OAAO;AAAA;AAAA;AAAA;AAAA;AAAA,cAKnC,CAAC,UAAU,MAAM,MAAM,OAAO,OAAO;AAAA;AAAA;AAAA;AAAA;AAAA,YAKvC,CAAC,UAAU,MAAM,MAAM,OAAO,QAAQ;AAAA;AAAA;AAAA;AAAA;AAAA,cAKpC,CAAC,UAAU,MAAM,MAAM,OAAO,QAAQ;AAAA;AAAA;AAAA;AAAA;AAAA,YAKxC,CAAC,UAAU,MAAM,MAAM,OAAO,MAAM;AAAA;AAAA;AAAA;AAAA,YAIpC,CAAC,UAAU,MAAM,MAAM,OAAO,MAAM;AAAA;AAAA;AAIzC,MAAM,WAAW,CAAC,EAAE,QAAQ,CAAC,GAAG,SAAS,CAAC,QAC/C,qCAAC;AAAA,EAAiB,MAAM,MAAM,IAAI,MAAM,MAAM;AAAA,EAAG,QAAO;AAAA,EAAM,QAAO;AAAA,EAAO,eAAY;AAAA,GACrF,MAAM,IAAI,CAAC,MAAM,MAEhB,qCAAC;AAAA,EAAK,KAAK;AAAA,EAAG,WAAW,cAAc,OAAO,MAAM;AAAA,CAAW,CAChE,CACH;AAGF,SAAS,YAAY;AAAA,EAInB,OAAO,UAAU,QAAQ,UAAU,IAAI;AAAA,EAIvC,QAAQ,UAAU,QAAQ,UAAU,MAAM,CAAC,SAAS,QAAQ,SAAS,WAAW,SAAS,CAAC,CAAC;AAC7F;",
6
6
  "names": []
7
7
  }
@@ -1,7 +1,7 @@
1
1
  import * as React from "react";
2
2
  import React2 from "react";
3
3
  import PropTypes from "prop-types";
4
- import styled from "styled-components";
4
+ import { styled } from "@elliemae/ds-system";
5
5
  import { ChevronDown, ChevronRight } from "@elliemae/ds-icons";
6
6
  const ChevronWrap = styled.div`
7
7
  margin-top: ${(props) => props.align === "top" ? "18px" : "0"};
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../../../scripts/build/transpile/react-shim.js", "../../../src/MobileCard/ExpandChevron.tsx"],
4
- "sourcesContent": ["import * as React from 'react';\nexport { React };\n", "import React from 'react';\nimport PropTypes from 'prop-types';\nimport styled from 'styled-components';\nimport { ChevronDown, ChevronRight } from '@elliemae/ds-icons';\n\nconst ChevronWrap = styled.div`\n margin-top: ${(props) => (props.align === 'top' ? '18px' : '0')};\n align-self: ${(props) => (props.align === 'top' ? 'flex-start' : 'center')};\n margin-left: ${(props) => props.theme.space.xs};\n`;\n\nexport const ExpandChevron = ({ isExpanded, onClick, align }) => {\n const Chevron = isExpanded ? ChevronDown : ChevronRight;\n return (\n <ChevronWrap data-testid=\"ds-card-expand-chevron\" align={align}>\n <Chevron size=\"s\" color={['brand-primary', 800]} onClick={onClick} />\n </ChevronWrap>\n );\n};\n\nExpandChevron.propTypes = {\n /**\n * Whether if the chevron is expanded or not\n */\n isExpanded: PropTypes.bool,\n /**\n * click callback\n */\n onClick: PropTypes.func.isRequired,\n /**\n * top or center\n */\n align: PropTypes.string.isRequired,\n};\n"],
4
+ "sourcesContent": ["import * as React from 'react';\nexport { React };\n", "import React from 'react';\nimport PropTypes from 'prop-types';\nimport { styled } from '@elliemae/ds-system';\nimport { ChevronDown, ChevronRight } from '@elliemae/ds-icons';\n\nconst ChevronWrap = styled.div`\n margin-top: ${(props) => (props.align === 'top' ? '18px' : '0')};\n align-self: ${(props) => (props.align === 'top' ? 'flex-start' : 'center')};\n margin-left: ${(props) => props.theme.space.xs};\n`;\n\nexport const ExpandChevron = ({ isExpanded, onClick, align }) => {\n const Chevron = isExpanded ? ChevronDown : ChevronRight;\n return (\n <ChevronWrap data-testid=\"ds-card-expand-chevron\" align={align}>\n <Chevron size=\"s\" color={['brand-primary', 800]} onClick={onClick} />\n </ChevronWrap>\n );\n};\n\nExpandChevron.propTypes = {\n /**\n * Whether if the chevron is expanded or not\n */\n isExpanded: PropTypes.bool,\n /**\n * click callback\n */\n onClick: PropTypes.func.isRequired,\n /**\n * top or center\n */\n align: PropTypes.string.isRequired,\n};\n"],
5
5
  "mappings": "AAAA;ACAA;AACA;AACA;AACA;AAEA,MAAM,cAAc,OAAO;AAAA,gBACX,CAAC,UAAW,MAAM,UAAU,QAAQ,SAAS;AAAA,gBAC7C,CAAC,UAAW,MAAM,UAAU,QAAQ,eAAe;AAAA,iBAClD,CAAC,UAAU,MAAM,MAAM,MAAM;AAAA;AAGvC,MAAM,gBAAgB,CAAC,EAAE,YAAY,SAAS,YAAY;AAC/D,QAAM,UAAU,aAAa,cAAc;AAC3C,SACE,qCAAC;AAAA,IAAY,eAAY;AAAA,IAAyB;AAAA,KAChD,qCAAC;AAAA,IAAQ,MAAK;AAAA,IAAI,OAAO,CAAC,iBAAiB,GAAG;AAAA,IAAG;AAAA,GAAkB,CACrE;AAEJ;AAEA,cAAc,YAAY;AAAA,EAIxB,YAAY,UAAU;AAAA,EAItB,SAAS,UAAU,KAAK;AAAA,EAIxB,OAAO,UAAU,OAAO;AAC1B;",
6
6
  "names": []
7
7
  }
@@ -1,7 +1,7 @@
1
1
  import * as React from "react";
2
2
  import React2, { useEffect, useState, useRef } from "react";
3
3
  import PropTypes from "prop-types";
4
- import styled from "styled-components";
4
+ import { styled } from "@elliemae/ds-system";
5
5
  import { border, truncate } from "@elliemae/ds-system";
6
6
  const RegionWrapper = styled.div`
7
7
  width: 100%;
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../../../scripts/build/transpile/react-shim.js", "../../../src/MobileCard/ExpandableRegion.tsx"],
4
- "sourcesContent": ["import * as React from 'react';\nexport { React };\n", "import React, { useEffect, useState, useRef } from 'react';\nimport PropTypes from 'prop-types';\nimport styled from 'styled-components';\nimport { border, truncate } from '@elliemae/ds-system';\n\nconst RegionWrapper = styled.div`\n width: 100%;\n height: 100%;\n`;\n\nconst Region = styled.div<{ hide: boolean; animate: boolean; refHeight: number }>`\n display: flex;\n ${(props) => (props.hide ? 'visibility: hidden;' : '')}\n transition: max-height ${(props) => (props.animate ? '0.25s' : '0.20s')} linear;\n max-height: 0;\n ${(props) =>\n props.animate\n ? `\n max-height: ${props.refHeight}px;\n `\n : ''}\n align-items: center;\n ${truncate()};\n border-top: ${(props) => border(props.theme.colors.neutral['300'])};\n font-weight: ${(props) => props.theme.fontWeights.regular};\n`;\n\nexport const ExpandableRegion = ({ show, content }: { show: boolean; content: JSX.Element | JSX.Element[] }) => {\n const ref = useRef<HTMLDivElement>(null);\n // triggers transition\n const [animate, setAnimate] = useState(show);\n // needed to properly handle the transition. Hide after transition ends\n const [hide, setHide] = useState(!show);\n useEffect(() => {\n setAnimate(show);\n if (show) setHide(false);\n }, [show]);\n\n const hideOnAnimationEnd = () => {\n if (!show) setHide(true);\n };\n\n return (\n <Region\n hide={hide}\n // needed to handle transition, `auto` max-height isn't supported\n refHeight={ref?.current?.scrollHeight || 9999}\n onTransitionEnd={hideOnAnimationEnd}\n animate={animate}\n >\n <RegionWrapper ref={ref}>{content}</RegionWrapper>\n </Region>\n );\n};\n\nExpandableRegion.propTypes = {\n show: PropTypes.bool,\n content: PropTypes.element,\n};\n"],
4
+ "sourcesContent": ["import * as React from 'react';\nexport { React };\n", "import React, { useEffect, useState, useRef } from 'react';\nimport PropTypes from 'prop-types';\nimport { styled } from '@elliemae/ds-system';\nimport { border, truncate } from '@elliemae/ds-system';\n\nconst RegionWrapper = styled.div`\n width: 100%;\n height: 100%;\n`;\n\nconst Region = styled.div<{ hide: boolean; animate: boolean; refHeight: number }>`\n display: flex;\n ${(props) => (props.hide ? 'visibility: hidden;' : '')}\n transition: max-height ${(props) => (props.animate ? '0.25s' : '0.20s')} linear;\n max-height: 0;\n ${(props) =>\n props.animate\n ? `\n max-height: ${props.refHeight}px;\n `\n : ''}\n align-items: center;\n ${truncate()};\n border-top: ${(props) => border(props.theme.colors.neutral['300'])};\n font-weight: ${(props) => props.theme.fontWeights.regular};\n`;\n\nexport const ExpandableRegion = ({ show, content }: { show: boolean; content: JSX.Element | JSX.Element[] }) => {\n const ref = useRef<HTMLDivElement>(null);\n // triggers transition\n const [animate, setAnimate] = useState(show);\n // needed to properly handle the transition. Hide after transition ends\n const [hide, setHide] = useState(!show);\n useEffect(() => {\n setAnimate(show);\n if (show) setHide(false);\n }, [show]);\n\n const hideOnAnimationEnd = () => {\n if (!show) setHide(true);\n };\n\n return (\n <Region\n hide={hide}\n // needed to handle transition, `auto` max-height isn't supported\n refHeight={ref?.current?.scrollHeight || 9999}\n onTransitionEnd={hideOnAnimationEnd}\n animate={animate}\n >\n <RegionWrapper ref={ref}>{content}</RegionWrapper>\n </Region>\n );\n};\n\nExpandableRegion.propTypes = {\n show: PropTypes.bool,\n content: PropTypes.element,\n};\n"],
5
5
  "mappings": "AAAA;ACAA;AACA;AACA;AACA;AAEA,MAAM,gBAAgB,OAAO;AAAA;AAAA;AAAA;AAK7B,MAAM,SAAS,OAAO;AAAA;AAAA,IAElB,CAAC,UAAW,MAAM,OAAO,wBAAwB;AAAA,2BAC1B,CAAC,UAAW,MAAM,UAAU,UAAU;AAAA;AAAA,IAE7D,CAAC,UACD,MAAM,UACF;AAAA,oBACY,MAAM;AAAA,QAElB;AAAA;AAAA,IAEJ,SAAS;AAAA,gBACG,CAAC,UAAU,OAAO,MAAM,MAAM,OAAO,QAAQ,MAAM;AAAA,iBAClD,CAAC,UAAU,MAAM,MAAM,YAAY;AAAA;AAG7C,MAAM,mBAAmB,CAAC,EAAE,MAAM,cAAuE;AAC9G,QAAM,MAAM,OAAuB,IAAI;AAEvC,QAAM,CAAC,SAAS,cAAc,SAAS,IAAI;AAE3C,QAAM,CAAC,MAAM,WAAW,SAAS,CAAC,IAAI;AACtC,YAAU,MAAM;AACd,eAAW,IAAI;AACf,QAAI;AAAM,cAAQ,KAAK;AAAA,EACzB,GAAG,CAAC,IAAI,CAAC;AAET,QAAM,qBAAqB,MAAM;AAC/B,QAAI,CAAC;AAAM,cAAQ,IAAI;AAAA,EACzB;AAEA,SACE,qCAAC;AAAA,IACC;AAAA,IAEA,WAAW,KAAK,SAAS,gBAAgB;AAAA,IACzC,iBAAiB;AAAA,IACjB;AAAA,KAEA,qCAAC;AAAA,IAAc;AAAA,KAAW,OAAQ,CACpC;AAEJ;AAEA,iBAAiB,YAAY;AAAA,EAC3B,MAAM,UAAU;AAAA,EAChB,SAAS,UAAU;AACrB;",
6
6
  "names": []
7
7
  }
@@ -1,7 +1,7 @@
1
1
  import * as React from "react";
2
2
  import React2 from "react";
3
- import { describe, PropTypes } from "react-desc";
4
- import styled from "styled-components";
3
+ import { describe, PropTypes } from "@elliemae/ds-utilities";
4
+ import { styled } from "@elliemae/ds-system";
5
5
  import { Group } from "@elliemae/ds-shared";
6
6
  import { Grid } from "@elliemae/ds-grid";
7
7
  import { color, border, withTheme, truncate, __UNSAFE_SPACE_TO_DIMSUM } from "@elliemae/ds-system";
@@ -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;\nMobileCardGroup.displayName = 'MobileCardGroup';\nconst DSMobileCardGroupWithSchema = describe(MobileCardGroup);\n\nDSMobileCardGroupWithSchema.propTypes = props;\n\nexport { DSMobileCardGroupWithSchema };\n\nexport default withTheme(MobileCardGroup);\n"],
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 '@elliemae/ds-utilities';\nimport { styled } from '@elliemae/ds-system';\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
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
  }
@@ -1,5 +1,5 @@
1
1
  import * as React from "react";
2
- import styled from "styled-components";
2
+ import { styled } from "@elliemae/ds-system";
3
3
  import { border } from "@elliemae/ds-system";
4
4
  const StyledCard = styled.div`
5
5
  display: flex;
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../../../scripts/build/transpile/react-shim.js", "../../../src/MobileCard/StyledCard.tsx"],
4
- "sourcesContent": ["import * as React from 'react';\nexport { React };\n", "import styled from 'styled-components';\nimport { border } from '@elliemae/ds-system';\n\nexport const StyledCard = styled.div<{ minHeight: string }>`\n display: flex;\n align-items: center;\n height: fit-content;\n min-height: ${(props) => props.minHeight};\n border: ${(props) => border(props.theme.colors.neutral['100'])};\n border-bottom: ${(props) => border('.5px', props.theme.colors.neutral['500'])};\n`;\n"],
4
+ "sourcesContent": ["import * as React from 'react';\nexport { React };\n", "import { styled } from '@elliemae/ds-system';\nimport { border } from '@elliemae/ds-system';\n\nexport const StyledCard = styled.div<{ minHeight: string }>`\n display: flex;\n align-items: center;\n height: fit-content;\n min-height: ${(props) => props.minHeight};\n border: ${(props) => border(props.theme.colors.neutral['100'])};\n border-bottom: ${(props) => border('.5px', props.theme.colors.neutral['500'])};\n`;\n"],
5
5
  "mappings": "AAAA;ACAA;AACA;AAEO,MAAM,aAAa,OAAO;AAAA;AAAA;AAAA;AAAA,gBAIjB,CAAC,UAAU,MAAM;AAAA,YACrB,CAAC,UAAU,OAAO,MAAM,MAAM,OAAO,QAAQ,MAAM;AAAA,mBAC5C,CAAC,UAAU,OAAO,QAAQ,MAAM,MAAM,OAAO,QAAQ,MAAM;AAAA;",
6
6
  "names": []
7
7
  }
@@ -1,5 +1,5 @@
1
1
  import * as React from "react";
2
- import { PropTypes } from "react-desc";
2
+ import { PropTypes } from "@elliemae/ds-utilities";
3
3
  const cardPropsTypes = {
4
4
  height: PropTypes.oneOf(["s", "m"]).description("card height"),
5
5
  children: PropTypes.string.description("Defines mobile card title").isRequired,
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../../../scripts/build/transpile/react-shim.js", "../../../src/MobileCard/props.ts"],
4
- "sourcesContent": ["import * as React from 'react';\nexport { React };\n", "import React from 'react';\nimport { PropTypes } from 'react-desc';\nimport type { Theme } from '@elliemae/pui-theme';\n\nexport interface MobileCardProps {\n children: React.ReactNode | React.ReactNode[];\n height: 's' | 'm';\n leftAddOn: JSX.Element | JSX.Element[];\n leftProp: JSX.Element | JSX.Element[];\n rightProp: JSX.Element[];\n subText: string[];\n subIcons: JSX.Element | JSX.Element[];\n details: string[];\n theme: Theme;\n value: number;\n expandable: boolean;\n expandedContent: JSX.Element | JSX.Element[];\n cardContent: JSX.Element | JSX.Element[];\n}\n\nexport const cardPropsTypes = {\n /**\n * card height\n */\n height: PropTypes.oneOf(['s', 'm']).description('card height'),\n /**\n * Defines mobile card title\n */\n children: PropTypes.string.description('Defines mobile card title').isRequired,\n /**\n * Wheter if the card is expandable or not\n */\n expandable: PropTypes.bool.description('Wheter if the card is expandable or not'),\n /**\n * content to display in expand card section\n */\n expandedContent: PropTypes.element.description('content to display in expand card section'),\n /**\n * Icon to the left of the card. Size is adjusted automatically.\n */\n leftAddOn: PropTypes.element.description('Icon to the left of the card. Size is adjusted automatically.'),\n /**\n * Pass an element to render left. For example a Button with an icon\n */\n leftProp: PropTypes.element.description('Pass an element to render left. For example a Button with an icon'),\n /**\n * Pass an array of 1 or 2 elements to render right. For example a Button with an icon\n */\n rightProp: PropTypes.arrayOf(PropTypes.element).description(\n 'Pass an array of 1 or 2 elements to render right. For example a Button with an icon',\n ),\n /**\n * Pass an array of 1 or 2 strings\n */\n subText: PropTypes.arrayOf(PropTypes.string).description('Pass an array of 1 or 2 strings'),\n /**\n * SubIcons component\n */\n subIcons: PropTypes.element.description('SubIcons component'),\n /**\n * Pass an array of 1, 2 or 3 strings\n */\n details: PropTypes.arrayOf(PropTypes.string).description('Pass an array of 1, 2 or 3 strings'),\n theme: PropTypes.object.description('').isRequired,\n value: PropTypes.number.description(''),\n cardContent: PropTypes.node.description('JSX content for the card'),\n};\n"],
4
+ "sourcesContent": ["import * as React from 'react';\nexport { React };\n", "import React from 'react';\nimport { PropTypes } from '@elliemae/ds-utilities';\nimport type { Theme } from '@elliemae/pui-theme';\n\nexport interface MobileCardProps {\n children: React.ReactNode | React.ReactNode[];\n height: 's' | 'm';\n leftAddOn: JSX.Element | JSX.Element[];\n leftProp: JSX.Element | JSX.Element[];\n rightProp: JSX.Element[];\n subText: string[];\n subIcons: JSX.Element | JSX.Element[];\n details: string[];\n theme: Theme;\n value: number;\n expandable: boolean;\n expandedContent: JSX.Element | JSX.Element[];\n cardContent: JSX.Element | JSX.Element[];\n}\n\nexport const cardPropsTypes = {\n /**\n * card height\n */\n height: PropTypes.oneOf(['s', 'm']).description('card height'),\n /**\n * Defines mobile card title\n */\n children: PropTypes.string.description('Defines mobile card title').isRequired,\n /**\n * Wheter if the card is expandable or not\n */\n expandable: PropTypes.bool.description('Wheter if the card is expandable or not'),\n /**\n * content to display in expand card section\n */\n expandedContent: PropTypes.element.description('content to display in expand card section'),\n /**\n * Icon to the left of the card. Size is adjusted automatically.\n */\n leftAddOn: PropTypes.element.description('Icon to the left of the card. Size is adjusted automatically.'),\n /**\n * Pass an element to render left. For example a Button with an icon\n */\n leftProp: PropTypes.element.description('Pass an element to render left. For example a Button with an icon'),\n /**\n * Pass an array of 1 or 2 elements to render right. For example a Button with an icon\n */\n rightProp: PropTypes.arrayOf(PropTypes.element).description(\n 'Pass an array of 1 or 2 elements to render right. For example a Button with an icon',\n ),\n /**\n * Pass an array of 1 or 2 strings\n */\n subText: PropTypes.arrayOf(PropTypes.string).description('Pass an array of 1 or 2 strings'),\n /**\n * SubIcons component\n */\n subIcons: PropTypes.element.description('SubIcons component'),\n /**\n * Pass an array of 1, 2 or 3 strings\n */\n details: PropTypes.arrayOf(PropTypes.string).description('Pass an array of 1, 2 or 3 strings'),\n theme: PropTypes.object.description('').isRequired,\n value: PropTypes.number.description(''),\n cardContent: PropTypes.node.description('JSX content for the card'),\n};\n"],
5
5
  "mappings": "AAAA;ACCA;AAmBO,MAAM,iBAAiB;AAAA,EAI5B,QAAQ,UAAU,MAAM,CAAC,KAAK,GAAG,CAAC,EAAE,YAAY,aAAa;AAAA,EAI7D,UAAU,UAAU,OAAO,YAAY,2BAA2B,EAAE;AAAA,EAIpE,YAAY,UAAU,KAAK,YAAY,yCAAyC;AAAA,EAIhF,iBAAiB,UAAU,QAAQ,YAAY,2CAA2C;AAAA,EAI1F,WAAW,UAAU,QAAQ,YAAY,+DAA+D;AAAA,EAIxG,UAAU,UAAU,QAAQ,YAAY,mEAAmE;AAAA,EAI3G,WAAW,UAAU,QAAQ,UAAU,OAAO,EAAE,YAC9C,qFACF;AAAA,EAIA,SAAS,UAAU,QAAQ,UAAU,MAAM,EAAE,YAAY,iCAAiC;AAAA,EAI1F,UAAU,UAAU,QAAQ,YAAY,oBAAoB;AAAA,EAI5D,SAAS,UAAU,QAAQ,UAAU,MAAM,EAAE,YAAY,oCAAoC;AAAA,EAC7F,OAAO,UAAU,OAAO,YAAY,EAAE,EAAE;AAAA,EACxC,OAAO,UAAU,OAAO,YAAY,EAAE;AAAA,EACtC,aAAa,UAAU,KAAK,YAAY,0BAA0B;AACpE;",
6
6
  "names": []
7
7
  }
@@ -20,8 +20,8 @@ var __spreadProps = (a, b) => __defProps(a, __getOwnPropDescs(b));
20
20
  import * as React from "react";
21
21
  import React2, { useState, useRef, useMemo } from "react";
22
22
  import { noop } from "lodash";
23
- import { describe, PropTypes } from "react-desc";
24
- import styled from "styled-components";
23
+ import { describe, PropTypes } from "@elliemae/ds-utilities";
24
+ import { styled } from "@elliemae/ds-system";
25
25
  import { Grid } from "@elliemae/ds-grid";
26
26
  import { DSBackdrop } from "@elliemae/ds-backdrop";
27
27
  import { truncate, withTheme } from "@elliemae/ds-system";
@@ -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;\nDSMobileContextMenu.displayName = 'DSMobileContextMenu';\nconst DSMobileContextMenuWithSchema = describe(DSMobileContextMenu);\n\nDSMobileContextMenuWithSchema.propTypes = props;\n\nexport { DSMobileContextMenu, DSMobileContextMenuWithSchema };\n"],
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 '@elliemae/ds-utilities';\nimport { styled } from '@elliemae/ds-system';\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
5
  "mappings": "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",
6
6
  "names": []
7
7
  }
@@ -16,10 +16,10 @@ var __spreadValues = (a, b) => {
16
16
  };
17
17
  import * as React from "react";
18
18
  import React2 from "react";
19
- import styled from "styled-components";
19
+ import { styled } from "@elliemae/ds-system";
20
20
  import { Grid } from "@elliemae/ds-grid";
21
21
  import { noop } from "lodash";
22
- import { PropTypes, describe } from "react-desc";
22
+ import { PropTypes, describe } from "@elliemae/ds-utilities";
23
23
  const Title = styled.div`
24
24
  height: 24px;
25
25
  line-height: 24px;
@@ -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';\nDSMobileContextMenuGroup.displayName = 'DSMobileContextMenuGroup';\nconst DSMobileContextMenuGroupWithSchema = describe(DSMobileContextMenuGroup);\n\nDSMobileContextMenuGroupWithSchema.propTypes = props;\n\nexport { DSMobileContextMenuGroup, DSMobileContextMenuGroupWithSchema };\n"],
4
+ "sourcesContent": ["import * as React from 'react';\nexport { React };\n", "import React from 'react';\nimport { styled } from '@elliemae/ds-system';\nimport { Grid } from '@elliemae/ds-grid';\nimport { noop } from 'lodash';\nimport { PropTypes, describe } from '@elliemae/ds-utilities';\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
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
  }
@@ -16,9 +16,9 @@ var __spreadValues = (a, b) => {
16
16
  };
17
17
  import * as React from "react";
18
18
  import React2 from "react";
19
- import { PropTypes, describe } from "react-desc";
19
+ import { PropTypes, describe } from "@elliemae/ds-utilities";
20
20
  import { Grid } from "@elliemae/ds-grid";
21
- import styled from "styled-components";
21
+ import { styled } from "@elliemae/ds-system";
22
22
  import { truncate } from "@elliemae/ds-system";
23
23
  import { GroupItem } from "@elliemae/ds-shared";
24
24
  import { DSCheckbox } from "@elliemae/ds-form";
@@ -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;\nDSMobileContextMenuItem.displayName = 'DSMobileContextMenuItem';\nconst DSMobileContextMenuItemWithSchema = describe(DSMobileContextMenuItem);\n\nDSMobileContextMenuItemWithSchema.propTypes = props;\n\nexport { DSMobileContextMenuItem, DSMobileContextMenuItemWithSchema };\n"],
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 '@elliemae/ds-utilities';\nimport { Grid } from '@elliemae/ds-grid';\nimport { styled } from '@elliemae/ds-system';\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
5
  "mappings": "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",
6
6
  "names": []
7
7
  }
@@ -28,7 +28,7 @@ var __objRest = (source, exclude) => {
28
28
  };
29
29
  import * as React from "react";
30
30
  import React2 from "react";
31
- import styled from "styled-components";
31
+ import { styled } from "@elliemae/ds-system";
32
32
  import { focus, __UNSAFE_SPACE_TO_DIMSUM } from "@elliemae/ds-system";
33
33
  const StyledInput = styled.input`
34
34
  input[type=date]& {
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../../../scripts/build/transpile/react-shim.js", "../../../src/MobileDatePicker/Input.tsx"],
4
- "sourcesContent": ["import * as React from 'react';\nexport { React };\n", "import React from 'react';\nimport styled from 'styled-components';\nimport { focus, __UNSAFE_SPACE_TO_DIMSUM } from '@elliemae/ds-system';\n\nconst StyledInput = styled.input`\n input[type=date]& { \n -webkit-appearance: none;\n -moz-appearance: none;\n -webkit-tap-highlight-color: transparent;\n appearance: none;\n color: transparent;\n\n white-space: nowrap;\n position: relative;\n height: ${props => __UNSAFE_SPACE_TO_DIMSUM(props.theme.space.l)};\n width: 100%;\n max-width: calc(100% - 32px);\n outline: none;\n box-sizing: border-box;\n display: flex;\n background: ${props => props.theme.colors.neutral['000']};\n padding: 0 ${props => __UNSAFE_SPACE_TO_DIMSUM(props.theme.space.xs)};\n z-index: 1;\n border-radius: 2px;\n border: solid 1px ${props => props.theme.colors.neutral[200]};\n }\n\n input[type=date]&:active, input[type=date]&:focus {\n ${props => focus(props.theme.colors.brand[700])}\n }\n\n &:before {\n color: ${props =>\n props.value === ''\n ? props.theme.colors.neutral['500']\n : props.theme.colors.neutral['800']};\n content: '${props =>\n props.value === '' ? props.placeholder : props['data-displayvalue']}';\n }\n\n input[type=date]&::-webkit-datetime-edit, input[type=date]&::-webkit-inner-spin-button, input[type=date]&::-webkit-clear-button {\n -webkit-appearance: none;\n display: none;\n }\n`;\n\nexport const Input = ({ innerRef, ...props }) => (\n <StyledInput ref={innerRef} {...props} />\n);\n"],
4
+ "sourcesContent": ["import * as React from 'react';\nexport { React };\n", "import React from 'react';\nimport { styled } from '@elliemae/ds-system';\nimport { focus, __UNSAFE_SPACE_TO_DIMSUM } from '@elliemae/ds-system';\n\nconst StyledInput = styled.input`\n input[type=date]& { \n -webkit-appearance: none;\n -moz-appearance: none;\n -webkit-tap-highlight-color: transparent;\n appearance: none;\n color: transparent;\n\n white-space: nowrap;\n position: relative;\n height: ${props => __UNSAFE_SPACE_TO_DIMSUM(props.theme.space.l)};\n width: 100%;\n max-width: calc(100% - 32px);\n outline: none;\n box-sizing: border-box;\n display: flex;\n background: ${props => props.theme.colors.neutral['000']};\n padding: 0 ${props => __UNSAFE_SPACE_TO_DIMSUM(props.theme.space.xs)};\n z-index: 1;\n border-radius: 2px;\n border: solid 1px ${props => props.theme.colors.neutral[200]};\n }\n\n input[type=date]&:active, input[type=date]&:focus {\n ${props => focus(props.theme.colors.brand[700])}\n }\n\n &:before {\n color: ${props =>\n props.value === ''\n ? props.theme.colors.neutral['500']\n : props.theme.colors.neutral['800']};\n content: '${props =>\n props.value === '' ? props.placeholder : props['data-displayvalue']}';\n }\n\n input[type=date]&::-webkit-datetime-edit, input[type=date]&::-webkit-inner-spin-button, input[type=date]&::-webkit-clear-button {\n -webkit-appearance: none;\n display: none;\n }\n`;\n\nexport const Input = ({ innerRef, ...props }) => (\n <StyledInput ref={innerRef} {...props} />\n);\n"],
5
5
  "mappings": ";;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;ACAA;AACA;AACA;AAEA,MAAM,cAAc,OAAO;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,cAUb,WAAS,yBAAyB,MAAM,MAAM,MAAM,CAAC;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,kBAMjD,WAAS,MAAM,MAAM,OAAO,QAAQ;AAAA,iBACrC,WAAS,yBAAyB,MAAM,MAAM,MAAM,EAAE;AAAA;AAAA;AAAA,wBAG/C,WAAS,MAAM,MAAM,OAAO,QAAQ;AAAA;AAAA;AAAA;AAAA,MAItD,WAAS,MAAM,MAAM,MAAM,OAAO,MAAM,IAAI;AAAA;AAAA;AAAA;AAAA,aAIrC,WACP,MAAM,UAAU,KACZ,MAAM,MAAM,OAAO,QAAQ,SAC3B,MAAM,MAAM,OAAO,QAAQ;AAAA,gBACrB,WACV,MAAM,UAAU,KAAK,MAAM,cAAc,MAAM;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAS9C,MAAM,QAAQ,CAAC,OAAwB;AAAxB,eAAE,eAAF,IAAe,kBAAf,IAAe,CAAb;AACtB,8CAAC;AAAA,IAAY,KAAK;AAAA,KAAc,MAAO;AAAA;",
6
6
  "names": []
7
7
  }
@@ -1,6 +1,6 @@
1
1
  import * as React from "react";
2
2
  import React2, { useRef, useEffect } from "react";
3
- import { PropTypes, describe } from "react-desc";
3
+ import { PropTypes, describe } from "@elliemae/ds-utilities";
4
4
  import { DSIconColors } from "@elliemae/ds-icon";
5
5
  import { DatePicker } from "@elliemae/ds-icons";
6
6
  import DSButton from "@elliemae/ds-button";
@@ -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;\nDSMobileDatePicker.displayName = 'DSMobileDatePicker';\nconst DSMobileDatePickerWithSchema = describe(DSMobileDatePicker);\n\nDSMobileDatePickerWithSchema.propTypes = props;\n\nexport { DSMobileDatePicker, DSMobileDatePickerWithSchema };\n"],
4
+ "sourcesContent": ["import * as React from 'react';\nexport { React };\n", "import React, { useRef, useEffect } from 'react';\nimport { PropTypes, describe } from '@elliemae/ds-utilities';\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
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
  }
@@ -19,7 +19,7 @@ var __spreadValues = (a, b) => {
19
19
  var __spreadProps = (a, b) => __defProps(a, __getOwnPropDescs(b));
20
20
  import * as React from "react";
21
21
  import React2 from "react";
22
- import styled from "styled-components";
22
+ import { styled } from "@elliemae/ds-system";
23
23
  import PropTypes from "prop-types";
24
24
  import { focus } from "@elliemae/ds-system";
25
25
  import { ChevronDown } from "@elliemae/ds-icons";
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../../../scripts/build/transpile/react-shim.js", "../../../src/MobileDropdownMenu/MobileDropdownInput.tsx"],
4
- "sourcesContent": ["import * as React from 'react';\nexport { React };\n", "import React from 'react';\nimport styled from 'styled-components';\nimport PropTypes from 'prop-types';\nimport { focus } from '@elliemae/ds-system';\n\nimport { ChevronDown } from '@elliemae/ds-icons';\n\nexport const MobileDropdownInput = styled.input`\n -webkit-appearance: none;\n -moz-appearance: none;\n -webkit-tap-highlight-color: transparent;\n caret-color: transparent;\n padding-right: 32px;\n padding-left: 10px;\n border-radius: 2px;\n width: 100%;\n background: ${(props) => props.theme.colors.neutral['000']};\n height: 32px;\n line-height: 32px;\n border: solid 1px ${(props) => props.theme.colors.neutral[200]};\n\n &:active,\n &:focus {\n ${(props) => focus(props.theme.colors.brand[700])}\n }\n`;\n\nexport const MobileDropdownInputWrap = styled.span`\n position: relative;\n width: 100%;\n display: inline-block;\n height: 32px;\n`;\n\nconst CaretWrap = styled.span`\n width: 32px;\n height: 32px;\n position: absolute;\n right: 0;\n top: 0;\n display: flex;\n justify-content: center;\n align-items: center;\n`;\n\nexport const Caret = ({ onClick }): JSX.Element => (\n <CaretWrap onClick={onClick}>\n <ChevronDown color={['brand-primary', '600']} />\n </CaretWrap>\n);\n\nCaret.propTypes = {\n onClick: PropTypes.func.isRequired,\n};\n\nexport const DSMobileDropdownTriggerInput = ({\n inputProps,\n caretProps,\n}: {\n inputProps: Record<string, unknown>;\n caretProps: Record<string, unknown>;\n}): JSX.Element => (\n <MobileDropdownInputWrap data-testid=\"ds-mobile-ddwn-menu\">\n <MobileDropdownInput {...inputProps} readOnly />\n <Caret {...caretProps} />\n </MobileDropdownInputWrap>\n);\n"],
4
+ "sourcesContent": ["import * as React from 'react';\nexport { React };\n", "import React from 'react';\nimport { styled } from '@elliemae/ds-system';\nimport PropTypes from 'prop-types';\nimport { focus } from '@elliemae/ds-system';\n\nimport { ChevronDown } from '@elliemae/ds-icons';\n\nexport const MobileDropdownInput = styled.input`\n -webkit-appearance: none;\n -moz-appearance: none;\n -webkit-tap-highlight-color: transparent;\n caret-color: transparent;\n padding-right: 32px;\n padding-left: 10px;\n border-radius: 2px;\n width: 100%;\n background: ${(props) => props.theme.colors.neutral['000']};\n height: 32px;\n line-height: 32px;\n border: solid 1px ${(props) => props.theme.colors.neutral[200]};\n\n &:active,\n &:focus {\n ${(props) => focus(props.theme.colors.brand[700])}\n }\n`;\n\nexport const MobileDropdownInputWrap = styled.span`\n position: relative;\n width: 100%;\n display: inline-block;\n height: 32px;\n`;\n\nconst CaretWrap = styled.span`\n width: 32px;\n height: 32px;\n position: absolute;\n right: 0;\n top: 0;\n display: flex;\n justify-content: center;\n align-items: center;\n`;\n\nexport const Caret = ({ onClick }): JSX.Element => (\n <CaretWrap onClick={onClick}>\n <ChevronDown color={['brand-primary', '600']} />\n </CaretWrap>\n);\n\nCaret.propTypes = {\n onClick: PropTypes.func.isRequired,\n};\n\nexport const DSMobileDropdownTriggerInput = ({\n inputProps,\n caretProps,\n}: {\n inputProps: Record<string, unknown>;\n caretProps: Record<string, unknown>;\n}): JSX.Element => (\n <MobileDropdownInputWrap data-testid=\"ds-mobile-ddwn-menu\">\n <MobileDropdownInput {...inputProps} readOnly />\n <Caret {...caretProps} />\n </MobileDropdownInputWrap>\n);\n"],
5
5
  "mappings": ";;;;;;;;;;;;;;;;;;;AAAA;ACAA;AACA;AACA;AACA;AAEA;AAEO,MAAM,sBAAsB,OAAO;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,gBAS1B,CAAC,UAAU,MAAM,MAAM,OAAO,QAAQ;AAAA;AAAA;AAAA,sBAGhC,CAAC,UAAU,MAAM,MAAM,OAAO,QAAQ;AAAA;AAAA;AAAA;AAAA,MAItD,CAAC,UAAU,MAAM,MAAM,MAAM,OAAO,MAAM,IAAI;AAAA;AAAA;AAI7C,MAAM,0BAA0B,OAAO;AAAA;AAAA;AAAA;AAAA;AAAA;AAO9C,MAAM,YAAY,OAAO;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAWlB,MAAM,QAAQ,CAAC,EAAE,cACtB,qCAAC;AAAA,EAAU;AAAA,GACT,qCAAC;AAAA,EAAY,OAAO,CAAC,iBAAiB,KAAK;AAAA,CAAG,CAChD;AAGF,MAAM,YAAY;AAAA,EAChB,SAAS,UAAU,KAAK;AAC1B;AAEO,MAAM,+BAA+B,CAAC;AAAA,EAC3C;AAAA,EACA;AAAA,MAKA,qCAAC;AAAA,EAAwB,eAAY;AAAA,GACnC,qCAAC,sDAAwB,aAAxB;AAAA,EAAoC,UAAQ;AAAA,EAAC,GAC9C,qCAAC,0BAAU,WAAY,CACzB;",
6
6
  "names": []
7
7
  }
@@ -1,6 +1,6 @@
1
1
  import * as React from "react";
2
2
  import React2, { useRef, useState } from "react";
3
- import { PropTypes, describe } from "react-desc";
3
+ import { PropTypes, describe } from "@elliemae/ds-utilities";
4
4
  import {
5
5
  DSMobileContextMenu,
6
6
  DSMobileContextMenuItem
@@ -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;\nDSMobileDropdownMenu.displayName = 'DSMobileDropdownMenu';\nconst DSMobileDropdownMenuWithSchema = describe(DSMobileDropdownMenu);\nDSMobileDropdownMenuWithSchema.propTypes = props;\n\nexport { DSMobileDropdownMenu, DSMobileDropdownMenuWithSchema };\n"],
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 '@elliemae/ds-utilities';\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
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
  }
@@ -1,7 +1,7 @@
1
1
  import * as React from "react";
2
2
  import React2 from "react";
3
- import styled from "styled-components";
4
- import { PropTypes, describe } from "react-desc";
3
+ import { styled } from "@elliemae/ds-system";
4
+ import { PropTypes, describe } from "@elliemae/ds-utilities";
5
5
  import { Search } from "@elliemae/ds-icons";
6
6
  const Wrapper = styled.div`
7
7
  display: flex;
@@ -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;\nDSMobileEmptyState.displayName = 'DSMobileEmptyState';\nconst DSMobileEmptyStateWithSchema = describe(DSMobileEmptyState);\nDSMobileEmptyStateWithSchema.propTypes = props;\n\nexport { DSMobileEmptyState, DSMobileEmptyStateWithSchema };\n"],
4
+ "sourcesContent": ["import * as React from 'react';\nexport { React };\n", "import React from 'react';\nimport { styled } from '@elliemae/ds-system';\nimport { PropTypes, describe } from '@elliemae/ds-utilities';\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
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
  }
@@ -1,7 +1,7 @@
1
1
  import * as React from "react";
2
2
  import React2 from "react";
3
- import styled from "styled-components";
4
- import { describe, PropTypes } from "react-desc";
3
+ import { styled } from "@elliemae/ds-system";
4
+ import { describe, PropTypes } from "@elliemae/ds-utilities";
5
5
  import { __UNSAFE_SPACE_TO_DIMSUM } from "@elliemae/ds-system";
6
6
  import { Grid } from "@elliemae/ds-grid";
7
7
  import MobileSeparator from "../MobileSeparator";