@madie/madie-design-system 1.0.31 → 1.0.34

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 (245) hide show
  1. package/components/Pagination/index.jsx +12 -4
  2. package/components/Popover/Popover.stories.js +55 -0
  3. package/components/Popover/index.js +110 -0
  4. package/components/index.js +3 -1
  5. package/dist/browser.js +1 -1
  6. package/dist/index.js +1 -1
  7. package/dist/react/index.js +19 -19
  8. package/dist/react/index.js.LICENSE.txt +13 -7
  9. package/dist/react/index.js.map +1 -1
  10. package/package.json +1 -1
  11. package/test/components/MadiePopover.test.js +77 -0
  12. package/coverage/clover.xml +0 -613
  13. package/coverage/coverage-final.json +0 -39
  14. package/coverage/lcov-report/Button/index.html +0 -116
  15. package/coverage/lcov-report/Button/index.js.html +0 -376
  16. package/coverage/lcov-report/InputLabel/index.html +0 -116
  17. package/coverage/lcov-report/InputLabel/index.jsx.html +0 -259
  18. package/coverage/lcov-report/MadieDialog/Index.jsx.html +0 -853
  19. package/coverage/lcov-report/MadieDialog/index.html +0 -116
  20. package/coverage/lcov-report/MadieSpinner/index.html +0 -116
  21. package/coverage/lcov-report/MadieSpinner/index.jsx.html +0 -196
  22. package/coverage/lcov-report/Select/index.html +0 -116
  23. package/coverage/lcov-report/Select/index.jsx.html +0 -391
  24. package/coverage/lcov-report/Textfield/index.html +0 -116
  25. package/coverage/lcov-report/Textfield/index.jsx.html +0 -325
  26. package/coverage/lcov-report/base.css +0 -224
  27. package/coverage/lcov-report/block-navigation.js +0 -87
  28. package/coverage/lcov-report/favicon.png +0 -0
  29. package/coverage/lcov-report/index.html +0 -446
  30. package/coverage/lcov-report/index.jsx.html +0 -448
  31. package/coverage/lcov-report/prettify.css +0 -1
  32. package/coverage/lcov-report/prettify.js +0 -2
  33. package/coverage/lcov-report/react/components/Accordion/index.html +0 -116
  34. package/coverage/lcov-report/react/components/Accordion/index.jsx.html +0 -370
  35. package/coverage/lcov-report/react/components/Button/index.html +0 -116
  36. package/coverage/lcov-report/react/components/Button/index.js.html +0 -376
  37. package/coverage/lcov-report/react/components/Error/Collapsible.jsx.html +0 -364
  38. package/coverage/lcov-report/react/components/Error/ErrorUI.jsx.html +0 -178
  39. package/coverage/lcov-report/react/components/Error/error.js.html +0 -163
  40. package/coverage/lcov-report/react/components/Error/index.html +0 -146
  41. package/coverage/lcov-report/react/components/Footer/FooterUI.jsx.html +0 -496
  42. package/coverage/lcov-report/react/components/Footer/LegacyFooterUI.jsx.html +0 -697
  43. package/coverage/lcov-report/react/components/Footer/SocialLinks.jsx.html +0 -274
  44. package/coverage/lcov-report/react/components/Footer/Subscribe.jsx.html +0 -187
  45. package/coverage/lcov-report/react/components/Footer/footer.js.html +0 -175
  46. package/coverage/lcov-report/react/components/Footer/index.html +0 -146
  47. package/coverage/lcov-report/react/components/Header/HeaderAccountMenu.jsx.html +0 -634
  48. package/coverage/lcov-report/react/components/Header/HeaderCancel.jsx.html +0 -133
  49. package/coverage/lcov-report/react/components/Header/HeaderContainer.jsx.html +0 -289
  50. package/coverage/lcov-report/react/components/Header/HeaderLogo.jsx.html +0 -211
  51. package/coverage/lcov-report/react/components/Header/HeaderMenuButton.js.html +0 -235
  52. package/coverage/lcov-report/react/components/Header/HeaderMenuItem.jsx.html +0 -922
  53. package/coverage/lcov-report/react/components/Header/HeaderMenuLink.js.html +0 -235
  54. package/coverage/lcov-report/react/components/Header/HeaderMenuSignOutButton.js.html +0 -271
  55. package/coverage/lcov-report/react/components/Header/HeaderMobileButton.js.html +0 -196
  56. package/coverage/lcov-report/react/components/Header/HeaderUI.jsx.html +0 -637
  57. package/coverage/lcov-report/react/components/Header/HelpIcon.jsx.html +0 -181
  58. package/coverage/lcov-report/react/components/Header/ImpersonatorBanner.jsx.html +0 -265
  59. package/coverage/lcov-report/react/components/Header/NavigationButtonIcon.jsx.html +0 -166
  60. package/coverage/lcov-report/react/components/Header/header.js.html +0 -211
  61. package/coverage/lcov-report/react/components/Header/hooks.js.html +0 -262
  62. package/coverage/lcov-report/react/components/Header/index.html +0 -341
  63. package/coverage/lcov-report/react/components/Header/utag-helpers.js.html +0 -112
  64. package/coverage/lcov-report/react/components/Infotip/Infotip.jsx.html +0 -310
  65. package/coverage/lcov-report/react/components/Infotip/InfotipIcon.jsx.html +0 -208
  66. package/coverage/lcov-report/react/components/Infotip/index.html +0 -146
  67. package/coverage/lcov-report/react/components/Infotip/index.js.html +0 -94
  68. package/coverage/lcov-report/react/components/InputLabel/index.html +0 -116
  69. package/coverage/lcov-report/react/components/InputLabel/index.jsx.html +0 -244
  70. package/coverage/lcov-report/react/components/MadieAlert/MadieAlert.scss.html +0 -334
  71. package/coverage/lcov-report/react/components/MadieAlert/index.html +0 -131
  72. package/coverage/lcov-report/react/components/MadieAlert/index.jsx.html +0 -271
  73. package/coverage/lcov-report/react/components/MadieDialog/Index.jsx.html +0 -856
  74. package/coverage/lcov-report/react/components/MadieDialog/index.html +0 -116
  75. package/coverage/lcov-report/react/components/MadieDiscardDialog/index.html +0 -116
  76. package/coverage/lcov-report/react/components/MadieDiscardDialog/index.jsx.html +0 -232
  77. package/coverage/lcov-report/react/components/MadieSpinner/index.html +0 -116
  78. package/coverage/lcov-report/react/components/MadieSpinner/index.jsx.html +0 -190
  79. package/coverage/lcov-report/react/components/Modal/LegacyModal.jsx.html +0 -307
  80. package/coverage/lcov-report/react/components/Modal/Modal.jsx.html +0 -505
  81. package/coverage/lcov-report/react/components/Modal/index.html +0 -146
  82. package/coverage/lcov-report/react/components/Modal/index.jsx.html +0 -151
  83. package/coverage/lcov-report/react/components/NotificationBanner/index.html +0 -116
  84. package/coverage/lcov-report/react/components/NotificationBanner/index.js.html +0 -922
  85. package/coverage/lcov-report/react/components/Pagination/index.html +0 -116
  86. package/coverage/lcov-report/react/components/Pagination/index.jsx.html +0 -697
  87. package/coverage/lcov-report/react/components/ReadOnlyTextField/index.html +0 -116
  88. package/coverage/lcov-report/react/components/ReadOnlyTextField/index.jsx.html +0 -313
  89. package/coverage/lcov-report/react/components/SanitizedContent/index.html +0 -116
  90. package/coverage/lcov-report/react/components/SanitizedContent/index.jsx.html +0 -685
  91. package/coverage/lcov-report/react/components/Select/index.html +0 -116
  92. package/coverage/lcov-report/react/components/Select/index.jsx.html +0 -427
  93. package/coverage/lcov-report/react/components/SessionDialog/index.html +0 -116
  94. package/coverage/lcov-report/react/components/SessionDialog/sessionDialog.js.html +0 -163
  95. package/coverage/lcov-report/react/components/SessionDialogUI.jsx.html +0 -904
  96. package/coverage/lcov-report/react/components/SideNav/AnimationGroup/AnimationGroup.jsx.html +0 -172
  97. package/coverage/lcov-report/react/components/SideNav/AnimationGroup/index.html +0 -116
  98. package/coverage/lcov-report/react/components/SideNav/Chart/ScoreChart.jsx.html +0 -916
  99. package/coverage/lcov-report/react/components/SideNav/Chart/index.html +0 -131
  100. package/coverage/lcov-report/react/components/SideNav/Chart/index.js.html +0 -94
  101. package/coverage/lcov-report/react/components/SideNav/Content/LevelOneContent.jsx.html +0 -721
  102. package/coverage/lcov-report/react/components/SideNav/Content/LevelTwoContent.jsx.html +0 -772
  103. package/coverage/lcov-report/react/components/SideNav/Content/index.html +0 -146
  104. package/coverage/lcov-report/react/components/SideNav/Content/index.js.html +0 -97
  105. package/coverage/lcov-report/react/components/SideNav/Details/IndividualDetails.jsx.html +0 -139
  106. package/coverage/lcov-report/react/components/SideNav/Details/PracticeDetails.jsx.html +0 -226
  107. package/coverage/lcov-report/react/components/SideNav/Details/index.html +0 -146
  108. package/coverage/lcov-report/react/components/SideNav/Details/index.js.html +0 -97
  109. package/coverage/lcov-report/react/components/SideNav/Links/CmsSwitchLink.jsx.html +0 -208
  110. package/coverage/lcov-report/react/components/SideNav/Links/NavItemInline.jsx.html +0 -247
  111. package/coverage/lcov-report/react/components/SideNav/Links/NavLinkContainer.jsx.html +0 -205
  112. package/coverage/lcov-report/react/components/SideNav/Links/NavLinkDrawer.jsx.html +0 -940
  113. package/coverage/lcov-report/react/components/SideNav/Links/NavLinkInline.jsx.html +0 -412
  114. package/coverage/lcov-report/react/components/SideNav/Links/NavLinkToggle.jsx.html +0 -187
  115. package/coverage/lcov-report/react/components/SideNav/Links/index.html +0 -206
  116. package/coverage/lcov-report/react/components/SideNav/Links/index.js.html +0 -124
  117. package/coverage/lcov-report/react/components/SideNav/UI/SideNavUI.jsx.html +0 -1144
  118. package/coverage/lcov-report/react/components/SideNav/UI/index.html +0 -131
  119. package/coverage/lcov-report/react/components/SideNav/UI/index.js.html +0 -94
  120. package/coverage/lcov-report/react/components/SideNav/helpers.js.html +0 -232
  121. package/coverage/lcov-report/react/components/SideNav/index.html +0 -131
  122. package/coverage/lcov-report/react/components/SideNav/index.js.html +0 -244
  123. package/coverage/lcov-report/react/components/Textfield/index.html +0 -116
  124. package/coverage/lcov-report/react/components/Textfield/index.jsx.html +0 -307
  125. package/coverage/lcov-report/react/components/Toast/index.html +0 -116
  126. package/coverage/lcov-report/react/components/Toast/index.jsx.html +0 -469
  127. package/coverage/lcov-report/react/components/Tooltip/Tooltip.jsx.html +0 -349
  128. package/coverage/lcov-report/react/components/Tooltip/index.html +0 -146
  129. package/coverage/lcov-report/react/components/Tooltip/index.js.html +0 -94
  130. package/coverage/lcov-report/react/components/Tooltip/position.js.html +0 -313
  131. package/coverage/lcov-report/react/components/hooks/index.html +0 -116
  132. package/coverage/lcov-report/react/components/hooks/useGetConfig.js.html +0 -334
  133. package/coverage/lcov-report/react/components/index.html +0 -116
  134. package/coverage/lcov-report/react/index.html +0 -116
  135. package/coverage/lcov-report/react/index.js.html +0 -148
  136. package/coverage/lcov-report/react/lib/Chevron.jsx.html +0 -181
  137. package/coverage/lcov-report/react/lib/SvgComponents.jsx.html +0 -1702
  138. package/coverage/lcov-report/react/lib/index.html +0 -131
  139. package/coverage/lcov-report/react/lib/svg-definitions.svg.html +0 -460
  140. package/coverage/lcov-report/react/session/index.html +0 -161
  141. package/coverage/lcov-report/react/session/index.js.html +0 -100
  142. package/coverage/lcov-report/react/session/logout.js.html +0 -280
  143. package/coverage/lcov-report/react/session/refresh.js.html +0 -232
  144. package/coverage/lcov-report/react/session/ttl.js.html +0 -196
  145. package/coverage/lcov-report/sort-arrow-sprite.png +0 -0
  146. package/coverage/lcov-report/sorter.js +0 -196
  147. package/coverage/lcov.info +0 -1261
  148. package/storybook-static/115.052877d9.iframe.bundle.js +0 -2
  149. package/storybook-static/115.052877d9.iframe.bundle.js.LICENSE.txt +0 -11
  150. package/storybook-static/181.e295335e7d22cc10734c.manager.bundle.js +0 -1
  151. package/storybook-static/229.4bb41a80.iframe.bundle.js +0 -1
  152. package/storybook-static/229.f4563e3b88a69879e628.manager.bundle.js +0 -1
  153. package/storybook-static/273.bdf29c3c.iframe.bundle.js +0 -2
  154. package/storybook-static/273.bdf29c3c.iframe.bundle.js.LICENSE.txt +0 -14
  155. package/storybook-static/295.2254430070adaf39d242.manager.bundle.js +0 -1
  156. package/storybook-static/485.2f77d2d4.iframe.bundle.js +0 -103
  157. package/storybook-static/485.2f77d2d4.iframe.bundle.js.LICENSE.txt +0 -131
  158. package/storybook-static/485.2f77d2d4.iframe.bundle.js.map +0 -1
  159. package/storybook-static/51.33ed905d.iframe.bundle.js +0 -2
  160. package/storybook-static/51.33ed905d.iframe.bundle.js.LICENSE.txt +0 -8
  161. package/storybook-static/51.e7cc07022ab8980acd80.manager.bundle.js +0 -2
  162. package/storybook-static/51.e7cc07022ab8980acd80.manager.bundle.js.LICENSE.txt +0 -8
  163. package/storybook-static/551.3428ed3c.iframe.bundle.js +0 -1
  164. package/storybook-static/658.88b966648de6eea4ba47.manager.bundle.js +0 -2
  165. package/storybook-static/658.88b966648de6eea4ba47.manager.bundle.js.LICENSE.txt +0 -94
  166. package/storybook-static/701.44ff60d4.iframe.bundle.js +0 -1
  167. package/storybook-static/807.ab5e54b0.iframe.bundle.js +0 -2
  168. package/storybook-static/807.ab5e54b0.iframe.bundle.js.LICENSE.txt +0 -31
  169. package/storybook-static/807.e31394a8fb2f2a96484c.manager.bundle.js +0 -2
  170. package/storybook-static/807.e31394a8fb2f2a96484c.manager.bundle.js.LICENSE.txt +0 -31
  171. package/storybook-static/897.55fef906.iframe.bundle.js +0 -2
  172. package/storybook-static/897.55fef906.iframe.bundle.js.LICENSE.txt +0 -12
  173. package/storybook-static/897.749ac01b1c4ad3d2469a.manager.bundle.js +0 -2
  174. package/storybook-static/897.749ac01b1c4ad3d2469a.manager.bundle.js.LICENSE.txt +0 -12
  175. package/storybook-static/935.1c0488720be34f49c172.manager.bundle.js +0 -1
  176. package/storybook-static/935.21bb37c1.iframe.bundle.js +0 -1
  177. package/storybook-static/favicon.ico +0 -0
  178. package/storybook-static/iframe.html +0 -364
  179. package/storybook-static/index.html +0 -59
  180. package/storybook-static/main.78fb2d38.iframe.bundle.js +0 -1
  181. package/storybook-static/main.b6920c13e539550f2e67.manager.bundle.js +0 -1
  182. package/storybook-static/project.json +0 -1
  183. package/storybook-static/runtime~main.7307b17c.iframe.bundle.js +0 -1
  184. package/storybook-static/runtime~main.c221863e46a86c2b5e83.manager.bundle.js +0 -1
  185. package/storybook-static/static/media/Bitter-Bold.091bd4b7.woff +0 -0
  186. package/storybook-static/static/media/Bitter-Bold.24bf01e4.woff2 +0 -0
  187. package/storybook-static/static/media/Bitter-Bold.46bc29e4.ttf +0 -0
  188. package/storybook-static/static/media/Bitter-Bold.790f4f2f.eot +0 -0
  189. package/storybook-static/static/media/Bitter-Italic.1fa5390c.eot +0 -0
  190. package/storybook-static/static/media/Bitter-Italic.25e5675f.woff +0 -0
  191. package/storybook-static/static/media/Bitter-Italic.2eb18f5a.ttf +0 -0
  192. package/storybook-static/static/media/Bitter-Italic.34644574.woff2 +0 -0
  193. package/storybook-static/static/media/Bitter-Regular.4b22b6e8.woff +0 -0
  194. package/storybook-static/static/media/Bitter-Regular.559e7075.eot +0 -0
  195. package/storybook-static/static/media/Bitter-Regular.8db0301b.ttf +0 -0
  196. package/storybook-static/static/media/Bitter-Regular.f4e2f1f1.woff2 +0 -0
  197. package/storybook-static/static/media/FontAwesome.91f80bba.otf +0 -0
  198. package/storybook-static/static/media/OpenSans-Bold-webfont.202d819d.eot +0 -0
  199. package/storybook-static/static/media/OpenSans-Bold-webfont.92e570c6.woff2 +0 -0
  200. package/storybook-static/static/media/OpenSans-Bold-webfont.da71e99a.ttf +0 -0
  201. package/storybook-static/static/media/OpenSans-Bold-webfont.e75949bb.woff +0 -0
  202. package/storybook-static/static/media/OpenSans-Italic-webfont.72daa33a.woff2 +0 -0
  203. package/storybook-static/static/media/OpenSans-Italic-webfont.74ead3a8.woff +0 -0
  204. package/storybook-static/static/media/OpenSans-Italic-webfont.ae19388f.eot +0 -0
  205. package/storybook-static/static/media/OpenSans-Italic-webfont.ec7a2746.ttf +0 -0
  206. package/storybook-static/static/media/OpenSans-Regular-webfont.63a5fa7d.woff +0 -0
  207. package/storybook-static/static/media/OpenSans-Regular-webfont.66451be4.ttf +0 -0
  208. package/storybook-static/static/media/OpenSans-Regular-webfont.7882d20f.eot +0 -0
  209. package/storybook-static/static/media/OpenSans-Regular-webfont.ca4dd835.woff2 +0 -0
  210. package/storybook-static/static/media/OpenSans-Semibold-webfont.17ded75f.woff2 +0 -0
  211. package/storybook-static/static/media/OpenSans-Semibold-webfont.2a5adf6c.woff +0 -0
  212. package/storybook-static/static/media/OpenSans-Semibold-webfont.6059fecb.ttf +0 -0
  213. package/storybook-static/static/media/OpenSans-Semibold-webfont.c9808185.eot +0 -0
  214. package/storybook-static/static/media/Rubik-Bold.31bbd4d2.ttf +0 -0
  215. package/storybook-static/static/media/Rubik-Light.c90e2014.ttf +0 -0
  216. package/storybook-static/static/media/Rubik-Medium.5daa89aa.ttf +0 -0
  217. package/storybook-static/static/media/Rubik-Regular.cdf97d58.ttf +0 -0
  218. package/storybook-static/static/media/add.516c6a2c.svg +0 -1
  219. package/storybook-static/static/media/arrow-both.98a55d09.svg +0 -1
  220. package/storybook-static/static/media/arrow-down.1224e180.svg +0 -1
  221. package/storybook-static/static/media/arrow-up.024ed1e2.svg +0 -1
  222. package/storybook-static/static/media/checkmark-green.e95f40d3.svg +0 -1
  223. package/storybook-static/static/media/close--primary-darker.1598e38f.svg +0 -1
  224. package/storybook-static/static/media/close--primary.c6fbc529.svg +0 -1
  225. package/storybook-static/static/media/close-alt.cbe9bdfa.svg +0 -1
  226. package/storybook-static/static/media/close.b029c732.svg +0 -1
  227. package/storybook-static/static/media/download.ac1ebfe3.svg +0 -1
  228. package/storybook-static/static/media/error.e4c6e2ea.svg +0 -1
  229. package/storybook-static/static/media/fontawesome-webfont.1e59d233.ttf +0 -0
  230. package/storybook-static/static/media/fontawesome-webfont.20fd1704.woff2 +0 -0
  231. package/storybook-static/static/media/fontawesome-webfont.8b43027f.eot +0 -0
  232. package/storybook-static/static/media/fontawesome-webfont.c1e38fd9.svg +0 -2671
  233. package/storybook-static/static/media/fontawesome-webfont.f691f37e.woff +0 -0
  234. package/storybook-static/static/media/image.e055c497.svg +0 -1
  235. package/storybook-static/static/media/information-new-hover.d169a37f.svg +0 -1
  236. package/storybook-static/static/media/information-new.eca52b6e.svg +0 -1
  237. package/storybook-static/static/media/information.5e48eb82.svg +0 -1
  238. package/storybook-static/static/media/next.a0daa26b.svg +0 -1
  239. package/storybook-static/static/media/pdf.5f5442b3.svg +0 -1
  240. package/storybook-static/static/media/remove.4daa5f40.svg +0 -1
  241. package/storybook-static/static/media/star-filled.7d90fd71.svg +0 -1
  242. package/storybook-static/static/media/star.b034e696.svg +0 -1
  243. package/storybook-static/static/media/success-fill.033f2cf9.svg +0 -1
  244. package/storybook-static/static/media/success.4c56e56c.svg +0 -1
  245. package/storybook-static/static/media/warning.2ca99405.svg +0 -1
@@ -1,5 +1,7 @@
1
1
  import React from "react";
2
2
  import PropTypes from "prop-types";
3
+ import { visuallyHidden } from '@mui/utils';
4
+
3
5
  import {
4
6
  Pagination as PaginationComponent,
5
7
  PaginationItem,
@@ -57,13 +59,19 @@ const Pagination = ({
57
59
  return (
58
60
  <Container>
59
61
  <Row>
62
+ {/*this span is only for screen reader*/}
63
+ <span
64
+ id="items-per-page"
65
+ style={visuallyHidden}
66
+ >
67
+ Items per page {limit}.
68
+ </span>
60
69
  <Typography
61
70
  fontSize={14}
62
71
  fontFamily="Rubik"
63
72
  sx={{
64
73
  color: "#333333",
65
74
  }}
66
- id="items-per-page"
67
75
  >
68
76
  Items per page
69
77
  </Typography>
@@ -87,8 +95,8 @@ const Pagination = ({
87
95
  label={null}
88
96
  onChange={handleLimitChange}
89
97
  inputProps={{
90
- "aria-labelledby": "items-per-page",
91
- "aria-describedby": "offset-of-total-items",
98
+ "aria-labelledby":"items-per-page",
99
+ "aria-describedby": "items-per-page offset-of-total-items",
92
100
  }}
93
101
  >
94
102
  {limitOptions.map((val) => (
@@ -207,4 +215,4 @@ Pagination.propTypes = {
207
215
  type: PropTypes.string,
208
216
  };
209
217
 
210
- export { Pagination };
218
+ export { Pagination };
@@ -0,0 +1,55 @@
1
+ import React, { useState } from "react";
2
+ import Popover from "./index";
3
+ import { withKnobs } from "@storybook/addon-knobs";
4
+
5
+ export default {
6
+ title: "Popover",
7
+ component: Popover,
8
+ decorators: [withKnobs],
9
+ };
10
+
11
+ export const PopOver = () => {
12
+ const [anchorEl, setAnchorEl] = useState(null);
13
+ const [optionsOpen, setOptionsOpen] = useState(false);
14
+
15
+ const onClose = () => {
16
+ setOptionsOpen(false);
17
+ };
18
+
19
+ const handleOpen = (e) => {
20
+ setAnchorEl(e.currentTarget);
21
+ setOptionsOpen(true);
22
+ };
23
+
24
+ const viewEditredirect = () => {
25
+ setOptionsOpen(false);
26
+ };
27
+
28
+ const zipData = () => {
29
+ setOptionsOpen(false);
30
+ };
31
+
32
+ return (
33
+ <div className="qpp-u-padding--12">
34
+ <button className="qpp-c-button" onClick={(e) => handleOpen(e)}>
35
+ Open Popover
36
+ </button>
37
+ <Popover
38
+ optionsOpen={optionsOpen}
39
+ anchorEl={anchorEl}
40
+ onClose={onClose}
41
+ canEdit={true}
42
+ editViewSelectOptionProps={{
43
+ label: "View",
44
+ toImplementFunction: viewEditredirect,
45
+ dataTestId: `edit-measure-1`,
46
+ }}
47
+ otherSelectOptionProps={[{
48
+ label: "Export",
49
+ toImplementFunction: zipData,
50
+ dataTestId: `export-measure-1`,
51
+ }]}
52
+ />
53
+ </div>
54
+ );
55
+ };
@@ -0,0 +1,110 @@
1
+ import React from "react";
2
+ import PropTypes from "prop-types";
3
+ import Popover from "@mui/material/Popover";
4
+
5
+ const MadiePopover = ({
6
+ optionsOpen,
7
+ anchorEl,
8
+ handleClose,
9
+ canEdit,
10
+ editViewSelectOptionProps,
11
+ otherSelectOptionProps,
12
+ }) => {
13
+ return (
14
+ <Popover
15
+ open={optionsOpen}
16
+ anchorEl={anchorEl}
17
+ onClose={handleClose}
18
+ anchorOrigin={{
19
+ vertical: "bottom",
20
+ horizontal: "right",
21
+ }}
22
+ transformOrigin={{
23
+ vertical: "top",
24
+ horizontal: "left",
25
+ }}
26
+ sx={{
27
+ ".MuiPopover-paper": {
28
+ boxShadow: "none",
29
+ overflow: "visible",
30
+ ".popover-content": {
31
+ border: "solid 1px #979797",
32
+ position: "relative",
33
+ marginTop: "16px",
34
+ marginLeft: "-70px",
35
+ borderRadius: "6px",
36
+ background: "#F7F7F7",
37
+ width: "115px",
38
+ "&::before": {
39
+ borderWidth: "thin",
40
+ position: "absolute",
41
+ top: "-8px",
42
+ left: "calc(50% - 8px)",
43
+ height: "16px",
44
+ width: "16px",
45
+ background: "#F7F7F7",
46
+ borderColor:
47
+ "#979797 transparent transparent #979797",
48
+ content: '""',
49
+ transform: "rotate(45deg)",
50
+ },
51
+ ".btn-container": {
52
+ display: "flex",
53
+ flexDirection: "column",
54
+ padding: "10px 0",
55
+ button: {
56
+ zIndex: 2,
57
+ fontSize: 14,
58
+ padding: "0px 12px",
59
+ textAlign: "left",
60
+ "&:hover": {
61
+ backgroundColor: "rgba(0, 0, 0, 0.5)",
62
+ },
63
+ },
64
+ },
65
+ },
66
+ },
67
+ }}
68
+ >
69
+ <div className="popover-content" data-testid="popover-content">
70
+ <div className="btn-container">
71
+ <button
72
+ data-testid={editViewSelectOptionProps.dataTestId}
73
+ onClick={editViewSelectOptionProps.toImplementFunction}
74
+ >
75
+ {editViewSelectOptionProps.label}
76
+ </button>
77
+ {canEdit &&
78
+ otherSelectOptionProps.map((res) => {
79
+ return (
80
+ <button
81
+ key={res.dataTestId}
82
+ data-testid={res.dataTestId}
83
+ onClick={res.toImplementFunction}
84
+ >
85
+ {res.label}
86
+ </button>
87
+ );
88
+ })}
89
+ </div>
90
+ </div>
91
+ </Popover>
92
+ );
93
+ };
94
+
95
+ MadiePopover.propTypes = {
96
+ optionsOpen: PropTypes.bool,
97
+ anchorEl: PropTypes.any,
98
+ handleClose: PropTypes.func,
99
+ canEdit: PropTypes.bool,
100
+ editViewSelectOptionProps: PropTypes.object,
101
+ otherSelectOptionProps: PropTypes.arrayOf(
102
+ PropTypes.shape({
103
+ dataTestId: PropTypes.string,
104
+ label: PropTypes.string,
105
+ toImplementFunction: PropTypes.func,
106
+ })
107
+ ),
108
+ };
109
+
110
+ export default MadiePopover;
@@ -1,6 +1,6 @@
1
1
  import Accordion from "./Accordion";
2
2
  import Alert from "./Alert";
3
- import AutoComplete from "./AutoComplete/AutoComplete"
3
+ import AutoComplete from "./AutoComplete/AutoComplete";
4
4
  import Breadcrumb from "./Breadcrumb";
5
5
  import Button, { TextButton } from "./Button";
6
6
  import CalloutBox from "./CalloutBox";
@@ -15,6 +15,7 @@ import MadieDiscardDialog from "./MadieDiscardDialog";
15
15
  import MadieDeleteDialog from "./MadieDeleteDialog";
16
16
  import MadieSpinner from "./MadieSpinner";
17
17
  import Modal from "./Modal";
18
+ import Popover from "./Popover";
18
19
  import { Pagination } from "./Pagination";
19
20
  import ReadOnlyTextField from "./ReadOnlyTextField";
20
21
  import Select from "./Select";
@@ -132,6 +133,7 @@ export {
132
133
  MadieDeleteDialog,
133
134
  MadieSpinner,
134
135
  Pagination,
136
+ Popover,
135
137
  ReadOnlyTextField,
136
138
  Search,
137
139
  Select,