@spothero/ui 15.10.9 → 16.0.0-beta.1

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 (317) hide show
  1. package/.eslintignore +1 -1
  2. package/babel.config.js +1 -0
  3. package/dex.config.js +1 -1
  4. package/jest.config.json +4 -2
  5. package/package.json +11 -26
  6. package/v2/index.js +1 -1
  7. package/v2/index.js.map +1 -1
  8. package/backlog/Alert/Alert.js +0 -37
  9. package/backlog/AutoSuggestInput/AutoSuggestInput.js +0 -474
  10. package/backlog/AutoSuggestInput/AutoSuggestItem.js +0 -99
  11. package/backlog/AutoSuggestInput/AutoSuggestList.js +0 -126
  12. package/backlog/Badge/Badge.js +0 -28
  13. package/backlog/Chart/Chart.js +0 -211
  14. package/backlog/Checkbox/Checkbox.js +0 -167
  15. package/backlog/DateTime/DatePicker.js +0 -279
  16. package/backlog/DateTime/DatePickerCalendar.js +0 -199
  17. package/backlog/DateTime/DatePickerCalendarNavigation.js +0 -102
  18. package/backlog/DateTime/DatePickerCalendarWithRange.js +0 -241
  19. package/backlog/DateTime/DateTimePicker.js +0 -216
  20. package/backlog/DateTime/DateTimeRangePicker.js +0 -530
  21. package/backlog/DateTime/TimePicker.js +0 -180
  22. package/backlog/DateTime/date-time-assertions.js +0 -66
  23. package/backlog/DateTime/index.js +0 -55
  24. package/backlog/ErrorBoundary/ErrorBoundary.js +0 -125
  25. package/backlog/Flyout/Flyout.js +0 -198
  26. package/backlog/Form/Form.js +0 -193
  27. package/backlog/Form/FormElementError.js +0 -24
  28. package/backlog/Form/FormGroup.js +0 -30
  29. package/backlog/Form/FormGroupError.js +0 -28
  30. package/backlog/Form/index.js +0 -39
  31. package/backlog/GooglePlacesSearchInput/GooglePlacesSearchInput.js +0 -253
  32. package/backlog/GooglePlacesSearchInput/PoweredByGoogle.js +0 -38
  33. package/backlog/GooglePlacesSearchInput/index.js +0 -23
  34. package/backlog/HorizontalRule/HorizontalRule.js +0 -30
  35. package/backlog/Label/Label.js +0 -31
  36. package/backlog/Notification/Notification.js +0 -178
  37. package/backlog/Notification/NotificationContainer.js +0 -131
  38. package/backlog/Notification/NotificationPropTypes.js +0 -37
  39. package/backlog/Notification/index.js +0 -23
  40. package/backlog/PasswordControl/PasswordControl.js +0 -201
  41. package/backlog/Portal/Portal.js +0 -110
  42. package/backlog/PulseLoader/PulseLoader.js +0 -62
  43. package/backlog/Radio/Radio.js +0 -135
  44. package/backlog/Radio/RadioGroup.js +0 -123
  45. package/backlog/Radio/index.js +0 -23
  46. package/backlog/RenderInBody/RenderInBody.js +0 -103
  47. package/backlog/Select/Select.js +0 -275
  48. package/backlog/Select/SelectItemPropTypes.js +0 -32
  49. package/backlog/Select/index.js +0 -23
  50. package/backlog/SelectControlled/SelectControlled.js +0 -270
  51. package/backlog/SelectControlled/index.js +0 -15
  52. package/backlog/Sprite/Sprite.js +0 -24
  53. package/backlog/Tabs/Tab.js +0 -94
  54. package/backlog/Tabs/TabContent.js +0 -56
  55. package/backlog/Tabs/TabNavigation.js +0 -108
  56. package/backlog/Tabs/TabPanel.js +0 -29
  57. package/backlog/Tabs/Tabs.js +0 -126
  58. package/backlog/Tabs/index.js +0 -47
  59. package/backlog/TextArea/TextArea.js +0 -155
  60. package/backlog/TextInput/TextInput.js +0 -230
  61. package/backlog/TextInput/TextInputPropTypes.js +0 -114
  62. package/backlog/TextInput/index.js +0 -23
  63. package/backlog/Tooltip/Tooltip.js +0 -249
  64. package/backlog/index.js +0 -393
  65. package/backlog/v1/components/Button/Button.js +0 -64
  66. package/backlog/v1/components/Button/button-props.js +0 -48
  67. package/backlog/v1/components/Image/Image.js +0 -193
  68. package/backlog/v1/components/Loader/Loader.js +0 -51
  69. package/backlog/v1/components/Modal/Modal.js +0 -325
  70. package/backlog/v1/components/Modal/ModalContent.js +0 -154
  71. package/backlog/v1/components/Modal/ModalFooter.js +0 -89
  72. package/backlog/v1/components/Modal/index.js +0 -31
  73. package/backlog/v1/components/Panel/Panel.js +0 -209
  74. package/backlog/v1/components/Table/Table.js +0 -336
  75. package/backlog/v1/components/Table/TableCell.js +0 -28
  76. package/backlog/v1/components/Table/TableCellPropTypes.js +0 -22
  77. package/backlog/v1/components/Table/TableControls.js +0 -56
  78. package/backlog/v1/components/Table/TableFooter.js +0 -63
  79. package/backlog/v1/components/Table/TableHeading.js +0 -126
  80. package/backlog/v1/components/Table/TableHeadingPropTypes.js +0 -35
  81. package/backlog/v1/components/Table/TableSortSelector.js +0 -125
  82. package/backlog/v1/components/Table/TableSortType.js +0 -11
  83. package/backlog/v1/components/Table/index.js +0 -47
  84. package/backlog/v1/components/TextButton/TextButton.js +0 -74
  85. package/backlog/v1/components/index.js +0 -75
  86. package/backlog/v1/utils/deprecate.js +0 -61
  87. package/styles/Alert/_Alert.scss +0 -51
  88. package/styles/AutoSuggestInput/_AutoSuggestInput.scss +0 -116
  89. package/styles/Badge/_Badge.scss +0 -33
  90. package/styles/Chart/_Chart.scss +0 -105
  91. package/styles/Chart/_chartist-settings.scss +0 -131
  92. package/styles/Chart/_chartist.scss +0 -295
  93. package/styles/Checkbox/_Checkbox.scss +0 -173
  94. package/styles/DateTime/_DatePicker.scss +0 -61
  95. package/styles/DateTime/_DatePickerCalendar.scss +0 -159
  96. package/styles/DateTime/_DateTime.scss +0 -4
  97. package/styles/DateTime/_DateTimePicker.scss +0 -46
  98. package/styles/DateTime/_TimePicker.scss +0 -30
  99. package/styles/ErrorBoundary/_ErrorBoundary.scss +0 -18
  100. package/styles/Flyout/_Flyout.scss +0 -73
  101. package/styles/Form/_Form.scss +0 -53
  102. package/styles/GooglePlacesSearchInput/_GooglePlacesSearchInput.scss +0 -3
  103. package/styles/GooglePlacesSearchInput/_PoweredByGoogle.scss +0 -21
  104. package/styles/HorizontalRule/_HorizontalRule.scss +0 -48
  105. package/styles/Label/_Label.scss +0 -6
  106. package/styles/Notification/_Notification.scss +0 -113
  107. package/styles/PasswordControl/_PasswordControl.scss +0 -86
  108. package/styles/PulseLoader/_PulseLoader.scss +0 -60
  109. package/styles/Radio/_Radio.scss +0 -93
  110. package/styles/Select/_Select.scss +0 -94
  111. package/styles/Tabs/_Tabs.scss +0 -57
  112. package/styles/TextArea/_TextArea.scss +0 -26
  113. package/styles/TextInput/_TextInput.scss +0 -43
  114. package/styles/Tooltip/_Tooltip.scss +0 -108
  115. package/styles/_index.scss +0 -34
  116. package/styles/common/sass/_control-sizing.scss +0 -5
  117. package/styles/common/sass/_disable-scrolling.scss +0 -7
  118. package/styles/common/sass/_forms.scss +0 -72
  119. package/styles/index.js +0 -50
  120. package/styles/v1/components/Button/Button.jsx +0 -48
  121. package/styles/v1/components/Button/Button.spec.js +0 -76
  122. package/styles/v1/components/Button/_Button.scss +0 -178
  123. package/styles/v1/components/Button/button-props.js +0 -30
  124. package/styles/v1/components/Button/stories/button.js +0 -20
  125. package/styles/v1/components/Button/stories/index.stories.js +0 -92
  126. package/styles/v1/components/Button/stories/overview.js +0 -87
  127. package/styles/v1/components/Button/stories/types.js +0 -31
  128. package/styles/v1/components/Image/Image.jsx +0 -175
  129. package/styles/v1/components/Image/Image.spec.js +0 -113
  130. package/styles/v1/components/Image/_Image.scss +0 -24
  131. package/styles/v1/components/Image/stories/Cloudinary.stories.js +0 -39
  132. package/styles/v1/components/Image/stories/Display.stories.js +0 -92
  133. package/styles/v1/components/Loader/Loader.jsx +0 -54
  134. package/styles/v1/components/Loader/Loader.spec.js +0 -67
  135. package/styles/v1/components/Loader/_Loader.scss +0 -18
  136. package/styles/v1/components/Loader/stories/Display.stories.js +0 -55
  137. package/styles/v1/components/Modal/Modal.jsx +0 -315
  138. package/styles/v1/components/Modal/Modal.spec.js +0 -293
  139. package/styles/v1/components/Modal/ModalContent.jsx +0 -126
  140. package/styles/v1/components/Modal/ModalFooter.jsx +0 -53
  141. package/styles/v1/components/Modal/_Modal.scss +0 -262
  142. package/styles/v1/components/Modal/index.js +0 -3
  143. package/styles/v1/components/Modal/stories/Content.stories.js +0 -314
  144. package/styles/v1/components/Modal/stories/Display.stories.js +0 -208
  145. package/styles/v1/components/Modal/stories/Methods.stories.js +0 -44
  146. package/styles/v1/components/Modal/stories/Width.stories.js +0 -82
  147. package/styles/v1/components/Modal/stories/helpers/ReduxConsumer.jsx +0 -21
  148. package/styles/v1/components/Panel/Panel.jsx +0 -202
  149. package/styles/v1/components/Panel/Panel.spec.js +0 -196
  150. package/styles/v1/components/Panel/_Panel.scss +0 -55
  151. package/styles/v1/components/Panel/stories/Display.stories.js +0 -82
  152. package/styles/v1/components/Panel/stories/Methods.stories.js +0 -76
  153. package/styles/v1/components/Table/Table.jsx +0 -367
  154. package/styles/v1/components/Table/Table.spec.js +0 -526
  155. package/styles/v1/components/Table/TableCell.jsx +0 -17
  156. package/styles/v1/components/Table/TableCellPropTypes.js +0 -10
  157. package/styles/v1/components/Table/TableControls.jsx +0 -61
  158. package/styles/v1/components/Table/TableFooter.jsx +0 -72
  159. package/styles/v1/components/Table/TableHeading.jsx +0 -58
  160. package/styles/v1/components/Table/TableHeadingPropTypes.js +0 -20
  161. package/styles/v1/components/Table/TableSortSelector.jsx +0 -63
  162. package/styles/v1/components/Table/TableSortType.js +0 -4
  163. package/styles/v1/components/Table/_Table.scss +0 -263
  164. package/styles/v1/components/Table/index.js +0 -5
  165. package/styles/v1/components/Table/stories/Display.stories.js +0 -194
  166. package/styles/v1/components/Table/stories/Methods.stories.js +0 -141
  167. package/styles/v1/components/Table/stories/helpers/TableCellEmail.jsx +0 -25
  168. package/styles/v1/components/Table/stories/helpers/TableCustomRow.jsx +0 -35
  169. package/styles/v1/components/Table/stories/helpers/TableHeadingEmail.jsx +0 -20
  170. package/styles/v1/components/Table/stories/helpers/table-data.js +0 -26
  171. package/styles/v1/components/Table/stories/helpers/table-headers.js +0 -14
  172. package/styles/v1/components/TextButton/TextButton.jsx +0 -78
  173. package/styles/v1/components/TextButton/TextButton.spec.js +0 -95
  174. package/styles/v1/components/TextButton/_TextButton.scss +0 -114
  175. package/styles/v1/components/TextButton/stories/Display.stories.js +0 -46
  176. package/styles/v1/components/index.js +0 -7
  177. package/styles/v1/utils/deprecate.js +0 -45
  178. package/styles/v2/components/Accordion/Accordion.jsx +0 -1
  179. package/styles/v2/components/Accordion/Accordion.stories.js +0 -103
  180. package/styles/v2/components/Accordion/index.js +0 -7
  181. package/styles/v2/components/Accordion/styles/button.js +0 -16
  182. package/styles/v2/components/Accordion/styles/container.js +0 -9
  183. package/styles/v2/components/Accordion/styles/index.js +0 -19
  184. package/styles/v2/components/Accordion/styles/panel.js +0 -7
  185. package/styles/v2/components/Alert/Alert.jsx +0 -121
  186. package/styles/v2/components/Alert/Alert.stories.js +0 -50
  187. package/styles/v2/components/Alert/index.js +0 -1
  188. package/styles/v2/components/Alert/styles/index.js +0 -166
  189. package/styles/v2/components/AutoSuggestSelect/AutoSuggestSelect.jsx +0 -187
  190. package/styles/v2/components/AutoSuggestSelect/index.js +0 -1
  191. package/styles/v2/components/Badge/Badge.jsx +0 -1
  192. package/styles/v2/components/Badge/Badge.stories.js +0 -32
  193. package/styles/v2/components/Badge/styles/index.js +0 -29
  194. package/styles/v2/components/Button/Button.jsx +0 -31
  195. package/styles/v2/components/Button/Button.spec.js +0 -29
  196. package/styles/v2/components/Button/Button.styles.js +0 -156
  197. package/styles/v2/components/Button/button-props.js +0 -66
  198. package/styles/v2/components/Button/index.js +0 -2
  199. package/styles/v2/components/Button/stories/button.js +0 -59
  200. package/styles/v2/components/Button/stories/index.stories.js +0 -82
  201. package/styles/v2/components/Button/stories/overview.js +0 -73
  202. package/styles/v2/components/Card/Card.jsx +0 -16
  203. package/styles/v2/components/Card/Card.stories.js +0 -33
  204. package/styles/v2/components/Checkbox/Checkbox.jsx +0 -1
  205. package/styles/v2/components/Checkbox/Checkbox.stories.js +0 -41
  206. package/styles/v2/components/Checkbox/index.js +0 -1
  207. package/styles/v2/components/Checkbox/styles/index.js +0 -31
  208. package/styles/v2/components/Container/Container.jsx +0 -10
  209. package/styles/v2/components/Container/Container.stories.js +0 -52
  210. package/styles/v2/components/Container/Container.styles.js +0 -11
  211. package/styles/v2/components/Divider/Divider.jsx +0 -31
  212. package/styles/v2/components/Divider/Divider.stories.js +0 -41
  213. package/styles/v2/components/Divider/Divider.styles.js +0 -15
  214. package/styles/v2/components/FormControl/FormControl.jsx +0 -77
  215. package/styles/v2/components/Grid/Grid.jsx +0 -25
  216. package/styles/v2/components/Grid/Grid.stories.js +0 -128
  217. package/styles/v2/components/Grid/Grid.styles.js +0 -12
  218. package/styles/v2/components/Grid/GridItem.jsx +0 -10
  219. package/styles/v2/components/Grid/GridItem.styles.js +0 -8
  220. package/styles/v2/components/Grid/index.js +0 -2
  221. package/styles/v2/components/Heading/Heading.jsx +0 -23
  222. package/styles/v2/components/Heading/Heading.stories.js +0 -40
  223. package/styles/v2/components/Heading/Heading.styles.js +0 -61
  224. package/styles/v2/components/Icon/Icon.jsx +0 -1
  225. package/styles/v2/components/Icon/Icon.stories.js +0 -38
  226. package/styles/v2/components/Image/Image.jsx +0 -97
  227. package/styles/v2/components/Image/Image.spec.js +0 -100
  228. package/styles/v2/components/Image/Image.stories.js +0 -142
  229. package/styles/v2/components/Input/Input.jsx +0 -51
  230. package/styles/v2/components/Input/Input.stories.js +0 -60
  231. package/styles/v2/components/Input/index.js +0 -1
  232. package/styles/v2/components/Input/styles/index.js +0 -49
  233. package/styles/v2/components/Link/Link.jsx +0 -1
  234. package/styles/v2/components/Link/Link.stories.js +0 -82
  235. package/styles/v2/components/Link/Link.styles.js +0 -38
  236. package/styles/v2/components/List/List.jsx +0 -57
  237. package/styles/v2/components/List/List.stories.js +0 -96
  238. package/styles/v2/components/List/index.js +0 -2
  239. package/styles/v2/components/List/styles/index.js +0 -12
  240. package/styles/v2/components/List/styles/item.styles.js +0 -5
  241. package/styles/v2/components/Loader/Loader.jsx +0 -75
  242. package/styles/v2/components/Loader/Loader.stories.js +0 -145
  243. package/styles/v2/components/Modal/Modal.jsx +0 -71
  244. package/styles/v2/components/Modal/Modal.stories.js +0 -278
  245. package/styles/v2/components/Modal/index.js +0 -1
  246. package/styles/v2/components/Modal/styles/body.js +0 -24
  247. package/styles/v2/components/Modal/styles/closeButton.js +0 -17
  248. package/styles/v2/components/Modal/styles/dialog.js +0 -10
  249. package/styles/v2/components/Modal/styles/dialogContainer.js +0 -10
  250. package/styles/v2/components/Modal/styles/footer.js +0 -5
  251. package/styles/v2/components/Modal/styles/header.js +0 -7
  252. package/styles/v2/components/Modal/styles/index.js +0 -47
  253. package/styles/v2/components/Modal/styles/overlay.js +0 -4
  254. package/styles/v2/components/Popover/Popover.jsx +0 -28
  255. package/styles/v2/components/Popover/Popover.stories.js +0 -113
  256. package/styles/v2/components/Popover/PopoverArrow.jsx +0 -10
  257. package/styles/v2/components/Popover/PopoverCloseButton.jsx +0 -10
  258. package/styles/v2/components/Popover/PopoverContent.jsx +0 -41
  259. package/styles/v2/components/Popover/index.js +0 -3
  260. package/styles/v2/components/Popover/styles/index.js +0 -21
  261. package/styles/v2/components/Popover/styles/popover-arrow.js +0 -5
  262. package/styles/v2/components/Popover/styles/popover-body.js +0 -5
  263. package/styles/v2/components/Popover/styles/popover-close-button.js +0 -17
  264. package/styles/v2/components/Popover/styles/popover-content.js +0 -16
  265. package/styles/v2/components/Popover/styles/popover-header.js +0 -6
  266. package/styles/v2/components/Popover/styles/popper.js +0 -5
  267. package/styles/v2/components/Radio/Radio.jsx +0 -50
  268. package/styles/v2/components/Radio/Radio.stories.js +0 -155
  269. package/styles/v2/components/Radio/RadioGroup.jsx +0 -69
  270. package/styles/v2/components/Radio/index.js +0 -2
  271. package/styles/v2/components/Radio/styles/index.js +0 -52
  272. package/styles/v2/components/Select/Select.jsx +0 -62
  273. package/styles/v2/components/Select/Select.stories.js +0 -60
  274. package/styles/v2/components/Select/index.js +0 -1
  275. package/styles/v2/components/Select/styles/index.js +0 -29
  276. package/styles/v2/components/Skeleton/Skeleton.stories.jsx +0 -34
  277. package/styles/v2/components/Skeleton/Skeleton.styles.js +0 -3
  278. package/styles/v2/components/Skeleton/index.js +0 -1
  279. package/styles/v2/components/Spinner/Spinner.jsx +0 -40
  280. package/styles/v2/components/Spinner/Spinner.stories.js +0 -98
  281. package/styles/v2/components/Spinner/Spinner.styles.js +0 -57
  282. package/styles/v2/components/Switch/Switch.jsx +0 -52
  283. package/styles/v2/components/Switch/Switch.stories.js +0 -88
  284. package/styles/v2/components/Switch/index.js +0 -1
  285. package/styles/v2/components/Switch/styles/index.js +0 -17
  286. package/styles/v2/components/Table/Table.jsx +0 -1
  287. package/styles/v2/components/Table/Table.stories.js +0 -90
  288. package/styles/v2/components/Table/Table.styles.js +0 -66
  289. package/styles/v2/components/Table/index.js +0 -2
  290. package/styles/v2/components/Tabs/Tabs.jsx +0 -39
  291. package/styles/v2/components/Tabs/Tabs.stories.js +0 -47
  292. package/styles/v2/components/Tabs/combineSizeWithVariant.js +0 -29
  293. package/styles/v2/components/Tabs/index.js +0 -2
  294. package/styles/v2/components/Tabs/styles/index.js +0 -40
  295. package/styles/v2/components/Text/Text.jsx +0 -35
  296. package/styles/v2/components/Text/Text.stories.js +0 -47
  297. package/styles/v2/components/Text/Text.styles.js +0 -33
  298. package/styles/v2/components/Text/combineAsWithVariant.js +0 -106
  299. package/styles/v2/components/Text/options.js +0 -92
  300. package/styles/v2/components/ThemeProvider/ThemeProvider.jsx +0 -39
  301. package/styles/v2/components/ThemeProvider/ThemeProvider.stories.js +0 -85
  302. package/styles/v2/components/index.js +0 -70
  303. package/styles/v2/components/styles.js +0 -21
  304. package/styles/v2/theme/base/breakpoints.js +0 -16
  305. package/styles/v2/theme/base/colors.js +0 -136
  306. package/styles/v2/theme/base/index.js +0 -5
  307. package/styles/v2/theme/base/sizes.js +0 -48
  308. package/styles/v2/theme/base/typography.js +0 -24
  309. package/styles/v2/theme/base/zindices.js +0 -17
  310. package/styles/v2/theme/global.js +0 -118
  311. package/styles/v2/theme/index.js +0 -27
  312. package/styles/v2/utils/Spaces.js +0 -16
  313. package/v1/assets-manifest.json +0 -5
  314. package/v1/index.html +0 -1
  315. package/v1/index.js +0 -3
  316. package/v1/index.js.LICENSE.txt +0 -23
  317. package/v1/index.js.map +0 -1
@@ -1,126 +0,0 @@
1
- import isFunction from 'lodash/isFunction';
2
- import isString from 'lodash/isString';
3
- import isUndefined from 'lodash/isUndefined';
4
- import React, {Component} from 'react';
5
- import PropTypes from 'prop-types';
6
- import classNames from 'classnames';
7
- import {document, window} from 'ssr-window';
8
- import DOMUtils from '@spothero/utils/dom';
9
-
10
- export default class ModalContent extends Component {
11
- static propTypes = {
12
- /** Additional class(es) to add to the component. */
13
- className: PropTypes.string,
14
- /** The elements to display as children. */
15
- children: PropTypes.node,
16
- /** Removes the padding of the content and makes it flush with the edges. */
17
- noPadding: PropTypes.bool,
18
- /** Sets a maximum height on the content. */
19
- maxHeight: PropTypes.oneOfType([
20
- PropTypes.number,
21
- PropTypes.oneOf(['auto']),
22
- ]),
23
- /** Sets content area height. */
24
- contentAreaHeight: PropTypes.oneOfType([
25
- PropTypes.number,
26
- PropTypes.func,
27
- ]),
28
- /** HTML markup to set as the content. Useful for rendering server side HTML responses inside of the component. */
29
- html: PropTypes.string,
30
- /** On all but the smallest breakpoints, the padding to add around the containing modal wrapper if the content height were to exceed 100% window height, effectively showing more of the shim. */
31
- verticalModalPadding: PropTypes.number,
32
- };
33
- static defaultProps = {
34
- maxHeight: 'auto',
35
- verticalModalPadding: 32,
36
- };
37
-
38
- constructor(props) {
39
- super(props);
40
-
41
- const {children, html} = props;
42
-
43
- if (children && html) {
44
- // eslint-disable-next-line no-console
45
- console.error(
46
- 'Passing children or html props is exclusive. You may only use one at a time.'
47
- );
48
- }
49
- }
50
-
51
- componentDidMount() {
52
- window.addEventListener('resize', this._onWindowResize);
53
-
54
- this._resizeTimeout = window.setTimeout(() => {
55
- this._onWindowResize();
56
- }, 0);
57
- }
58
-
59
- componentWillUnmount() {
60
- window.clearTimeout(this._resizeTimeout);
61
- window.removeEventListener('resize', this._onWindowResize);
62
- }
63
-
64
- _onWindowResize = evt => {
65
- const {maxHeight, contentAreaHeight, verticalModalPadding} = this.props;
66
- const windowWidth = window.innerWidth || document.body.clientWidth;
67
- let calculatedMax = maxHeight;
68
-
69
- if (isString(calculatedMax) && calculatedMax === 'auto') {
70
- const modalWrapperEl = DOMUtils.parent(
71
- this._container,
72
- '.Modal-wrapper'
73
- );
74
- const titleEl = modalWrapperEl.querySelector('.Modal-title');
75
- const finalContentAreaHeight = isUndefined(contentAreaHeight)
76
- ? DOMUtils.height(modalWrapperEl, true, false) -
77
- DOMUtils.height(titleEl)
78
- : isFunction(contentAreaHeight)
79
- ? contentAreaHeight()
80
- : contentAreaHeight;
81
-
82
- calculatedMax =
83
- windowWidth < 768
84
- ? finalContentAreaHeight
85
- : finalContentAreaHeight - verticalModalPadding - 24; // 24 is margin-bottom
86
- }
87
-
88
- this._container.style.maxHeight = `${calculatedMax}px`;
89
- };
90
-
91
- render() {
92
- const {
93
- className,
94
- noPadding,
95
- contentAreaHeight,
96
- children,
97
- html,
98
- } = this.props;
99
- const content = html ? (
100
- <div dangerouslySetInnerHTML={{__html: html}} />
101
- ) : (
102
- children
103
- );
104
- const classes = classNames(
105
- 'Modal-content',
106
- {'Modal-content-flush': noPadding},
107
- {'Modal-content-with-height': !isUndefined(contentAreaHeight)},
108
- className
109
- );
110
-
111
- if (html && children) {
112
- return null;
113
- }
114
-
115
- return (
116
- <div
117
- ref={node => {
118
- this._container = node;
119
- }}
120
- className={classes}
121
- >
122
- <div className="Modal-content-wrapper">{content}</div>
123
- </div>
124
- );
125
- }
126
- }
@@ -1,53 +0,0 @@
1
- import React, {Component} from 'react';
2
- import PropTypes from 'prop-types';
3
- import classNames from 'classnames';
4
-
5
- export default class ModalFooter extends Component {
6
- static propTypes = {
7
- /** Additional class(es) to add to the component. */
8
- className: PropTypes.string,
9
- /** The elements to display as children. */
10
- children: PropTypes.node,
11
- /** Removes the padding of the content and makes it flush with the edges. */
12
- noPadding: PropTypes.bool,
13
- /** HTML markup to set as the content. Useful for rendering server side HTML responses inside of the component. */
14
- html: PropTypes.string,
15
- };
16
-
17
- constructor(props) {
18
- super(props);
19
-
20
- const {children, html} = props;
21
-
22
- if (children && html) {
23
- throw new Error(
24
- 'Passing children or html props is exclusive. You may only use one at a time.'
25
- );
26
- }
27
- }
28
-
29
- render() {
30
- const {className, noPadding, children, html} = this.props;
31
- const content = html ? (
32
- <div dangerouslySetInnerHTML={{__html: html}} />
33
- ) : (
34
- children
35
- );
36
- const classes = classNames(
37
- 'Modal-footer',
38
- {'Modal-footer-flush': noPadding},
39
- className
40
- );
41
-
42
- return (
43
- <div
44
- ref={node => {
45
- this._container = node;
46
- }}
47
- className={classes}
48
- >
49
- {content}
50
- </div>
51
- );
52
- }
53
- }
@@ -1,262 +0,0 @@
1
- html {
2
- &.Modal-open {
3
- @extend %disable-scrolling;
4
- }
5
- }
6
-
7
- .Modal {
8
- position: absolute;
9
- top: 0;
10
- left: 0;
11
- z-index: $z-index-modal;
12
- opacity: 0;
13
-
14
- &.Modal-inline {
15
- height: 100%;
16
- width: 100%;
17
- }
18
-
19
- &.Modal-no-shim {
20
- opacity: 1;
21
- }
22
- }
23
-
24
- .Modal-animated {
25
- transition: opacity $animation;
26
- }
27
-
28
- .Modal-showing {
29
- opacity: 1;
30
-
31
- .Modal-container {
32
- opacity: 1;
33
- }
34
- }
35
-
36
- .Modal-shim {
37
- position: fixed;
38
- left: 0;
39
- top: 0;
40
- bottom: 0;
41
- right: 0;
42
- margin: auto;
43
- height: 100%;
44
- width: 100%;
45
- background-color: rgba($color-fuel, 0.9);
46
-
47
- .Modal-inline & {
48
- position: absolute;
49
- }
50
- }
51
-
52
- .Modal-wrapper {
53
- position: fixed;
54
- top: 0;
55
- left: 0;
56
- width: 100%;
57
- height: 100%;
58
- text-align: center;
59
- padding: 16px;
60
-
61
- &::before {
62
- content: "";
63
- display: inline-block;
64
- height: 100%;
65
- vertical-align: middle;
66
- letter-spacing: -0.25em;
67
- }
68
-
69
- .Modal-inline & {
70
- position: absolute;
71
- }
72
-
73
- .Modal-no-shim & {
74
- pointer-events: none;
75
- }
76
-
77
- @include breakpoint($breakpoint-md) {
78
- padding: 0;
79
- }
80
- }
81
-
82
- .Modal-wrapper-full {
83
- padding: 0;
84
-
85
- @include breakpoint($breakpoint-sm) {
86
- padding: 16px;
87
- }
88
- }
89
-
90
- .Modal-container {
91
- position: relative;
92
- display: inline-block;
93
- width: 100%;
94
- vertical-align: middle;
95
- background-color: $color-white;
96
- text-align: left;
97
- opacity: 0;
98
- border-radius: 4px;
99
-
100
- @include breakpoint($breakpoint-md) {
101
- height: auto;
102
- max-width: calc(100% - 32px);
103
- }
104
-
105
- .Modal-wrapper-full & {
106
- border-radius: initial;
107
- height: 100%;
108
-
109
- @include breakpoint($breakpoint-sm) {
110
- height: auto;
111
- }
112
- }
113
- }
114
-
115
- .Modal-container-animated {
116
- transition: opacity $animation;
117
- }
118
-
119
- .Modal-container-showing {
120
- opacity: 1;
121
- pointer-events: auto;
122
-
123
- .Modal-no-shim & {
124
- box-shadow: 2px 4px 8px 0 rgba($color-fuel, 0.1);
125
- }
126
- }
127
-
128
- .Modal-container-extra-slim {
129
- @include breakpoint($breakpoint-md) {
130
- width: 300px;
131
- }
132
- }
133
-
134
- .Modal-container-slim {
135
- @include breakpoint($breakpoint-md) {
136
- width: 400px;
137
- }
138
- }
139
-
140
- .Modal-container-normal {
141
- @include breakpoint($breakpoint-md) {
142
- width: 550px;
143
- }
144
- }
145
-
146
- .Modal-container-wide {
147
- @include breakpoint($breakpoint-md) {
148
- width: 700px;
149
- }
150
- }
151
-
152
- .Modal-container-extra-wide {
153
- @include breakpoint($breakpoint-md) {
154
- width: 900px;
155
- }
156
- }
157
-
158
- .Modal-container-custom {
159
- @include breakpoint(max-width $breakpoint-md) {
160
- width: 100% !important; // stylelint-disable-line declaration-no-important
161
- }
162
- }
163
-
164
- .Modal-title {
165
- position: relative;
166
- padding: 12px 35px 0;
167
-
168
- h1 {
169
- font-size: 18px;
170
- margin: 0;
171
- font-weight: $font-weight-semi-bold;
172
- text-align: center;
173
- }
174
-
175
- @include breakpoint($breakpoint-md) {
176
- padding: 30px 35px 0;
177
-
178
- h1 {
179
- font-size: 24px;
180
- }
181
- }
182
- }
183
-
184
- .Modal-ctas {
185
- position: absolute;
186
- top: 12px;
187
- left: 0;
188
- width: 100%;
189
- z-index: $z-index-fore;
190
-
191
- .Button {
192
- padding: 0;
193
- }
194
-
195
- .Icon {
196
- width: 14px;
197
- fill: $color-fuel;
198
- }
199
-
200
- @include breakpoint($breakpoint-md) {
201
- top: 14px;
202
-
203
- .Icon {
204
- width: 16px;
205
- }
206
- }
207
- }
208
-
209
- .Modal-close {
210
- position: absolute;
211
- top: 0;
212
- right: 14px;
213
- }
214
-
215
- .Modal-back {
216
- position: absolute;
217
- top: 0;
218
- left: 12px;
219
- }
220
-
221
- .Modal-content {
222
- position: relative;
223
- overflow: auto;
224
- margin-bottom: 16px;
225
- padding: 12px 16px 0;
226
- transition: height $animation;
227
-
228
- @include breakpoint($breakpoint-md) {
229
- margin-bottom: 24px;
230
- padding: 30px 48px 0;
231
- }
232
- }
233
-
234
- .Modal-content-with-height {
235
- margin: 16px 0;
236
- padding: 0 16px;
237
- transition: height $animation;
238
-
239
- @include breakpoint($breakpoint-md) {
240
- margin: 24px 0;
241
- padding: 0 48px;
242
- }
243
- }
244
-
245
- .Modal-content-flush {
246
- padding: 0;
247
- }
248
-
249
- .Modal-footer {
250
- position: relative;
251
- margin-bottom: 16px;
252
- padding: 0 16px;
253
-
254
- @include breakpoint($breakpoint-md) {
255
- margin-bottom: 24px;
256
- padding: 0 48px;
257
- }
258
- }
259
-
260
- .Modal-footer-flush {
261
- padding: 0;
262
- }
@@ -1,3 +0,0 @@
1
- export Modal from './Modal';
2
- export ModalContent from './ModalContent';
3
- export ModalFooter from './ModalFooter';