@popmenu/common-ui 0.126.1 → 0.126.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (273) hide show
  1. package/build/cjs/components/Avatar/Avatar.d.ts +3 -0
  2. package/build/cjs/components/Avatar/AvatarProps.d.ts +22 -0
  3. package/build/cjs/components/Avatar/avatar.styles.d.ts +2 -0
  4. package/build/cjs/components/Avatar/index.d.ts +2 -0
  5. package/build/cjs/components/Avatar/util/useImageProps.d.ts +10 -0
  6. package/build/cjs/components/BrowserSilhouette/BrowserSilhouette.d.ts +2 -0
  7. package/build/cjs/components/BrowserSilhouette/browserSilhouette.styles.d.ts +1 -0
  8. package/build/cjs/components/BrowserSilhouette/index.d.ts +1 -0
  9. package/build/cjs/components/Button/Button.d.ts +6 -0
  10. package/build/cjs/components/Button/ButtonProps.d.ts +11 -0
  11. package/build/cjs/components/Button/ButtonStyles.d.ts +2 -0
  12. package/build/cjs/components/Button/index.d.ts +2 -0
  13. package/build/cjs/components/Checkbox/Checkbox.d.ts +3 -0
  14. package/build/cjs/components/Checkbox/CheckboxProps.d.ts +7 -0
  15. package/build/cjs/components/Checkbox/index.d.ts +2 -0
  16. package/build/cjs/components/Chip/Chip.d.ts +6 -0
  17. package/build/cjs/components/Chip/ChipProps.d.ts +8 -0
  18. package/build/cjs/components/Chip/ChipStyles.d.ts +2 -0
  19. package/build/cjs/components/Chip/index.d.ts +2 -0
  20. package/build/cjs/components/CollapsibleText/CollapsibleText.d.ts +3 -0
  21. package/build/cjs/components/CollapsibleText/CollapsibleTextProps.d.ts +13 -0
  22. package/build/cjs/components/CollapsibleText/CollapsibleTextStyles.d.ts +5 -0
  23. package/build/cjs/components/CollapsibleText/index.d.ts +2 -0
  24. package/build/cjs/components/Divider/Divider.d.ts +3 -0
  25. package/build/cjs/components/Divider/DividerProps.d.ts +17 -0
  26. package/build/cjs/components/Divider/index.d.ts +2 -0
  27. package/build/cjs/components/FollowerAuthenticationDialog/FollowerAuthenticationAltActions.d.ts +2 -0
  28. package/build/cjs/components/FollowerAuthenticationDialog/FollowerAuthenticationBody.d.ts +2 -0
  29. package/build/cjs/components/FollowerAuthenticationDialog/FollowerAuthenticationCloseButton.d.ts +2 -0
  30. package/build/cjs/components/FollowerAuthenticationDialog/FollowerAuthenticationContent.d.ts +4 -0
  31. package/build/cjs/components/FollowerAuthenticationDialog/FollowerAuthenticationDialog.d.ts +3 -0
  32. package/build/cjs/components/FollowerAuthenticationDialog/FollowerAuthenticationDialogProps.d.ts +29 -0
  33. package/build/cjs/components/FollowerAuthenticationDialog/FollowerAuthenticationFooter.d.ts +2 -0
  34. package/build/cjs/components/FollowerAuthenticationDialog/FollowerAuthenticationForm.d.ts +2 -0
  35. package/build/cjs/components/FollowerAuthenticationDialog/FollowerAuthenticationGraphic.d.ts +2 -0
  36. package/build/cjs/components/FollowerAuthenticationDialog/FollowerAuthenticationInfo.d.ts +2 -0
  37. package/build/cjs/components/FollowerAuthenticationDialog/FollowerAuthenticationTitle.d.ts +2 -0
  38. package/build/cjs/components/FollowerAuthenticationDialog/context.d.ts +4 -0
  39. package/build/cjs/components/FollowerAuthenticationDialog/index.d.ts +2 -0
  40. package/build/cjs/components/FollowerAuthenticationDialog/theme.d.ts +35 -0
  41. package/build/cjs/components/Icon/Icon.d.ts +4 -0
  42. package/build/cjs/components/Icon/IconProps.d.ts +17 -0
  43. package/build/cjs/components/Icon/IconStyles.d.ts +2 -0
  44. package/build/cjs/components/Icon/index.d.ts +2 -0
  45. package/build/cjs/components/IconButton/IconButton.d.ts +3 -0
  46. package/build/cjs/components/IconButton/IconButtonProps.d.ts +2 -0
  47. package/build/cjs/components/IconButton/index.d.ts +2 -0
  48. package/build/cjs/components/Link/Link.d.ts +11 -0
  49. package/build/cjs/components/Link/LinkStyles.d.ts +2 -0
  50. package/build/cjs/components/Link/index.d.ts +2 -0
  51. package/build/cjs/components/NumberField/NumberField.d.ts +3 -0
  52. package/build/cjs/components/NumberField/NumberFieldProps.d.ts +12 -0
  53. package/build/cjs/components/NumberField/NumberFieldStyles.d.ts +2 -0
  54. package/build/cjs/components/NumberField/index.d.ts +2 -0
  55. package/build/cjs/components/Paper/Paper.d.ts +6 -0
  56. package/build/cjs/components/Paper/index.d.ts +2 -0
  57. package/build/cjs/components/PaperContent/PaperContent.d.ts +2 -0
  58. package/build/cjs/components/PaperContent/index.d.ts +1 -0
  59. package/build/cjs/components/Radio/Radio.d.ts +3 -0
  60. package/build/cjs/components/Radio/RadioProps.d.ts +7 -0
  61. package/build/cjs/components/Radio/index.d.ts +2 -0
  62. package/build/cjs/components/SplitInput/SplitInput.d.ts +3 -0
  63. package/build/cjs/components/SplitInput/SplitInputProps.d.ts +20 -0
  64. package/build/cjs/components/SplitInput/SplitInputStyles.d.ts +2 -0
  65. package/build/cjs/components/SplitInput/index.d.ts +2 -0
  66. package/build/cjs/components/Switch/Switch.d.ts +3 -0
  67. package/build/cjs/components/Switch/SwitchProps.d.ts +7 -0
  68. package/build/cjs/components/Switch/index.d.ts +2 -0
  69. package/build/cjs/components/Switch/switch.styles.d.ts +2 -0
  70. package/build/cjs/components/TabPanel/TabPanel.d.ts +3 -0
  71. package/build/cjs/components/TabPanel/TabPanelProps.d.ts +3 -0
  72. package/build/cjs/components/TabPanel/index.d.ts +2 -0
  73. package/build/cjs/components/ToggleButton/ToggleButton.d.ts +3 -0
  74. package/build/cjs/components/ToggleButton/ToggleButtonProps.d.ts +4 -0
  75. package/build/cjs/components/ToggleButton/ToggleButtonStyles.d.ts +2 -0
  76. package/build/cjs/components/ToggleButton/index.d.ts +2 -0
  77. package/build/cjs/components/ToggleButtonGroup/ToggleButtonGroup.d.ts +3 -0
  78. package/build/cjs/components/ToggleButtonGroup/ToggleButtonGroupProps.d.ts +6 -0
  79. package/build/cjs/components/ToggleButtonGroup/ToggleButtonGroupStyles.d.ts +1 -0
  80. package/build/cjs/components/ToggleButtonGroup/index.d.ts +2 -0
  81. package/build/cjs/components/Tooltip/Tooltip.d.ts +3 -0
  82. package/build/cjs/components/Tooltip/TooltipProps.d.ts +1 -0
  83. package/build/cjs/components/Tooltip/TooltipStyles.d.ts +2 -0
  84. package/build/cjs/components/Tooltip/index.d.ts +2 -0
  85. package/build/cjs/components/Typography/Typography.d.ts +9 -0
  86. package/build/cjs/components/Typography/TypographyProps.d.ts +14 -0
  87. package/build/cjs/components/Typography/TypographyStyles.d.ts +10 -0
  88. package/build/cjs/components/Typography/index.d.ts +2 -0
  89. package/build/cjs/components/index.d.ts +45 -0
  90. package/build/cjs/hooks/index.d.ts +2 -0
  91. package/build/cjs/hooks/useCollapsibleText.d.ts +9 -0
  92. package/build/cjs/hooks/useTabs/index.d.ts +1 -0
  93. package/build/cjs/hooks/useTabs/useTabs.d.ts +3 -0
  94. package/build/cjs/hooks/useTabs/useTabsOptions.d.ts +3 -0
  95. package/build/cjs/hooks/useTabs/useTabsResult.d.ts +22 -0
  96. package/build/cjs/index.d.ts +3 -0
  97. package/build/{index.js → cjs/index.js} +327 -396
  98. package/build/cjs/index.js.map +1 -0
  99. package/build/cjs/types/index.d.ts +2 -0
  100. package/build/cjs/util/colors/alpha.d.ts +1 -0
  101. package/build/cjs/util/colors/darken.d.ts +1 -0
  102. package/build/cjs/util/colors/decomposeColor.d.ts +1 -0
  103. package/build/cjs/util/colors/getLuminance.d.ts +1 -0
  104. package/build/cjs/util/colors/hexToRgb.d.ts +1 -0
  105. package/build/cjs/util/colors/index.d.ts +8 -0
  106. package/build/cjs/util/colors/lighten.d.ts +1 -0
  107. package/build/cjs/util/colors/recomposeColor.d.ts +1 -0
  108. package/build/cjs/util/colors/rgbToHex.d.ts +1 -0
  109. package/build/cjs/util/createTheme.d.ts +1 -0
  110. package/build/cjs/util/index.d.ts +4 -0
  111. package/build/cjs/util/makeStyles.d.ts +1 -0
  112. package/build/esm/components/Avatar/Avatar.js +3 -3
  113. package/build/esm/components/Avatar/Avatar.js.map +1 -1
  114. package/build/esm/components/Avatar/AvatarProps.d.ts +1 -1
  115. package/build/esm/components/Avatar/avatar.styles.js +1 -1
  116. package/build/esm/components/Avatar/avatar.styles.js.map +1 -1
  117. package/build/esm/components/Avatar/index.d.ts +2 -2
  118. package/build/esm/components/BrowserSilhouette/BrowserSilhouette.js.map +1 -1
  119. package/build/esm/components/BrowserSilhouette/browserSilhouette.styles.js +1 -1
  120. package/build/esm/components/BrowserSilhouette/browserSilhouette.styles.js.map +1 -1
  121. package/build/esm/components/BrowserSilhouette/index.d.ts +1 -1
  122. package/build/esm/components/Button/Button.js +3 -5
  123. package/build/esm/components/Button/Button.js.map +1 -1
  124. package/build/esm/components/Button/ButtonProps.d.ts +1 -1
  125. package/build/esm/components/Button/ButtonStyles.js +1 -1
  126. package/build/esm/components/Button/ButtonStyles.js.map +1 -1
  127. package/build/esm/components/Button/index.d.ts +2 -2
  128. package/build/esm/components/Checkbox/Checkbox.js +2 -3
  129. package/build/esm/components/Checkbox/Checkbox.js.map +1 -1
  130. package/build/esm/components/Checkbox/CheckboxProps.d.ts +1 -2
  131. package/build/esm/components/Checkbox/index.d.ts +2 -2
  132. package/build/esm/components/Chip/Chip.js +3 -3
  133. package/build/esm/components/Chip/Chip.js.map +1 -1
  134. package/build/esm/components/Chip/ChipProps.d.ts +1 -1
  135. package/build/esm/components/Chip/ChipStyles.js +1 -1
  136. package/build/esm/components/Chip/ChipStyles.js.map +1 -1
  137. package/build/esm/components/Chip/index.d.ts +2 -2
  138. package/build/esm/components/CollapsibleText/CollapsibleText.js +1 -2
  139. package/build/esm/components/CollapsibleText/CollapsibleText.js.map +1 -1
  140. package/build/esm/components/CollapsibleText/CollapsibleTextProps.d.ts +1 -1
  141. package/build/esm/components/CollapsibleText/index.d.ts +2 -2
  142. package/build/esm/components/Divider/Divider.js.map +1 -1
  143. package/build/esm/components/Divider/index.d.ts +2 -2
  144. package/build/esm/components/FollowerAuthenticationDialog/index.d.ts +1 -1
  145. package/build/esm/components/Icon/IconStyles.js +2 -0
  146. package/build/esm/components/Icon/IconStyles.js.map +1 -1
  147. package/build/esm/components/Icon/index.d.ts +2 -2
  148. package/build/esm/components/IconButton/IconButton.d.ts +1 -1
  149. package/build/esm/components/IconButton/IconButton.js +2 -2
  150. package/build/esm/components/IconButton/IconButton.js.map +1 -1
  151. package/build/esm/components/IconButton/IconButtonProps.d.ts +1 -1
  152. package/build/esm/components/IconButton/index.d.ts +2 -2
  153. package/build/esm/components/Link/LinkStyles.js +1 -1
  154. package/build/esm/components/Link/LinkStyles.js.map +1 -1
  155. package/build/esm/components/Link/index.d.ts +2 -2
  156. package/build/esm/components/NumberField/NumberField.js +1 -1
  157. package/build/esm/components/NumberField/NumberField.js.map +1 -1
  158. package/build/esm/components/NumberField/index.d.ts +1 -1
  159. package/build/esm/components/Paper/index.d.ts +2 -1
  160. package/build/esm/components/PaperContent/PaperContent.js.map +1 -1
  161. package/build/esm/components/PaperContent/index.d.ts +1 -1
  162. package/build/esm/components/Radio/Radio.js +2 -3
  163. package/build/esm/components/Radio/Radio.js.map +1 -1
  164. package/build/esm/components/Radio/RadioProps.d.ts +1 -2
  165. package/build/esm/components/Radio/index.d.ts +2 -2
  166. package/build/esm/components/SplitInput/SplitInput.js +1 -2
  167. package/build/esm/components/SplitInput/SplitInput.js.map +1 -1
  168. package/build/esm/components/SplitInput/SplitInputProps.d.ts +3 -3
  169. package/build/esm/components/SplitInput/SplitInputStyles.js +1 -1
  170. package/build/esm/components/SplitInput/SplitInputStyles.js.map +1 -1
  171. package/build/esm/components/SplitInput/index.d.ts +2 -2
  172. package/build/esm/components/Switch/Switch.js +2 -3
  173. package/build/esm/components/Switch/Switch.js.map +1 -1
  174. package/build/esm/components/Switch/SwitchProps.d.ts +1 -2
  175. package/build/esm/components/Switch/index.d.ts +2 -2
  176. package/build/esm/components/Switch/switch.styles.js +1 -1
  177. package/build/esm/components/Switch/switch.styles.js.map +1 -1
  178. package/build/esm/components/TabPanel/TabPanel.js.map +1 -1
  179. package/build/esm/components/TabPanel/index.d.ts +1 -1
  180. package/build/esm/components/ToggleButton/ToggleButton.js +2 -2
  181. package/build/esm/components/ToggleButton/ToggleButton.js.map +1 -1
  182. package/build/esm/components/ToggleButton/ToggleButtonProps.d.ts +1 -1
  183. package/build/esm/components/ToggleButton/ToggleButtonStyles.js +1 -1
  184. package/build/esm/components/ToggleButton/ToggleButtonStyles.js.map +1 -1
  185. package/build/esm/components/ToggleButton/index.d.ts +2 -2
  186. package/build/esm/components/ToggleButtonGroup/ToggleButtonGroup.js +2 -2
  187. package/build/esm/components/ToggleButtonGroup/ToggleButtonGroup.js.map +1 -1
  188. package/build/esm/components/ToggleButtonGroup/ToggleButtonGroupProps.d.ts +1 -1
  189. package/build/esm/components/ToggleButtonGroup/ToggleButtonGroupStyles.js +1 -1
  190. package/build/esm/components/ToggleButtonGroup/ToggleButtonGroupStyles.js.map +1 -1
  191. package/build/esm/components/ToggleButtonGroup/index.d.ts +2 -2
  192. package/build/esm/components/Tooltip/Tooltip.d.ts +1 -1
  193. package/build/esm/components/Tooltip/Tooltip.js +2 -2
  194. package/build/esm/components/Tooltip/Tooltip.js.map +1 -1
  195. package/build/esm/components/Tooltip/TooltipProps.d.ts +1 -1
  196. package/build/esm/components/Tooltip/TooltipStyles.js +1 -1
  197. package/build/esm/components/Tooltip/TooltipStyles.js.map +1 -1
  198. package/build/esm/components/Tooltip/index.d.ts +2 -2
  199. package/build/esm/components/Typography/Typography.d.ts +1 -1
  200. package/build/esm/components/Typography/TypographyProps.d.ts +1 -2
  201. package/build/esm/components/Typography/TypographyProps.js.map +1 -1
  202. package/build/esm/components/Typography/TypographyStyles.d.ts +1 -1
  203. package/build/esm/components/Typography/TypographyStyles.js +1 -1
  204. package/build/esm/components/Typography/TypographyStyles.js.map +1 -1
  205. package/build/esm/components/Typography/index.d.ts +2 -2
  206. package/build/esm/components/index.d.ts +45 -78
  207. package/build/esm/index.js +5 -37
  208. package/build/esm/index.js.map +1 -1
  209. package/build/esm/util/index.d.ts +1 -1
  210. package/package.json +3 -3
  211. package/build/esm/components/Accordion/index.d.ts +0 -1
  212. package/build/esm/components/AccordionActions/index.d.ts +0 -1
  213. package/build/esm/components/AccordionDetails/index.d.ts +0 -1
  214. package/build/esm/components/AccordionSummary/index.d.ts +0 -1
  215. package/build/esm/components/Alert/index.d.ts +0 -1
  216. package/build/esm/components/AppBar/index.d.ts +0 -1
  217. package/build/esm/components/Badge/index.d.ts +0 -1
  218. package/build/esm/components/Box/Box.d.ts +0 -3
  219. package/build/esm/components/Box/BoxProps.d.ts +0 -5
  220. package/build/esm/components/Box/BoxStyles.d.ts +0 -1
  221. package/build/esm/components/Box/index.d.ts +0 -7
  222. package/build/esm/components/Breadcrumbs/index.d.ts +0 -1
  223. package/build/esm/components/ButtonBase/index.d.ts +0 -1
  224. package/build/esm/components/ButtonGroup/index.d.ts +0 -1
  225. package/build/esm/components/Card/index.d.ts +0 -1
  226. package/build/esm/components/CardActionArea/index.d.ts +0 -1
  227. package/build/esm/components/CardActions/index.d.ts +0 -1
  228. package/build/esm/components/CardContent/index.d.ts +0 -1
  229. package/build/esm/components/CardHeader/index.d.ts +0 -1
  230. package/build/esm/components/CardMedia/index.d.ts +0 -1
  231. package/build/esm/components/CircularProgress/index.d.ts +0 -1
  232. package/build/esm/components/ClickAwayListener/index.d.ts +0 -1
  233. package/build/esm/components/Dialog/index.d.ts +0 -1
  234. package/build/esm/components/DialogActions/index.d.ts +0 -1
  235. package/build/esm/components/DialogContent/index.d.ts +0 -1
  236. package/build/esm/components/DialogContentText/index.d.ts +0 -1
  237. package/build/esm/components/DialogTitle/index.d.ts +0 -1
  238. package/build/esm/components/Drawer/index.d.ts +0 -1
  239. package/build/esm/components/Fab/index.d.ts +0 -1
  240. package/build/esm/components/FormControl/index.d.ts +0 -1
  241. package/build/esm/components/FormControlLabel/index.d.ts +0 -1
  242. package/build/esm/components/FormLabel/index.d.ts +0 -1
  243. package/build/esm/components/Grid/index.d.ts +0 -1
  244. package/build/esm/components/GridList/index.d.ts +0 -1
  245. package/build/esm/components/Hidden/index.d.ts +0 -1
  246. package/build/esm/components/InputAdornment/index.d.ts +0 -1
  247. package/build/esm/components/LinearProgress/index.d.ts +0 -1
  248. package/build/esm/components/List/index.d.ts +0 -1
  249. package/build/esm/components/ListItem/index.d.ts +0 -1
  250. package/build/esm/components/ListItemAvatar/index.d.ts +0 -1
  251. package/build/esm/components/ListItemIcon/index.d.ts +0 -1
  252. package/build/esm/components/ListItemSecondaryAction/index.d.ts +0 -1
  253. package/build/esm/components/ListItemText/index.d.ts +0 -1
  254. package/build/esm/components/Menu/index.d.ts +0 -1
  255. package/build/esm/components/MenuItem/index.d.ts +0 -1
  256. package/build/esm/components/MenuList/index.d.ts +0 -1
  257. package/build/esm/components/Modal/index.d.ts +0 -1
  258. package/build/esm/components/Popover/index.d.ts +0 -1
  259. package/build/esm/components/Popper/index.d.ts +0 -1
  260. package/build/esm/components/Step/index.d.ts +0 -1
  261. package/build/esm/components/StepButton/index.d.ts +0 -1
  262. package/build/esm/components/StepConnector/index.d.ts +0 -1
  263. package/build/esm/components/StepContent/index.d.ts +0 -1
  264. package/build/esm/components/StepIcon/index.d.ts +0 -1
  265. package/build/esm/components/StepLabel/index.d.ts +0 -1
  266. package/build/esm/components/Stepper/index.d.ts +0 -1
  267. package/build/esm/components/Tab/index.d.ts +0 -1
  268. package/build/esm/components/Tabs/index.d.ts +0 -1
  269. package/build/esm/components/TextField/index.d.ts +0 -1
  270. package/build/esm/components/ThemeProvider/index.d.ts +0 -1
  271. package/build/esm/components/Toolbar/index.d.ts +0 -1
  272. package/build/esm/util/ServerStyleSheets.d.ts +0 -1
  273. package/build/index.js.map +0 -1
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.js","sources":["../src/components/Icon/IconStyles.ts","../src/components/Icon/Icon.tsx","../src/components/Avatar/util/useImageProps.ts","../src/components/Avatar/avatar.styles.ts","../src/components/Avatar/Avatar.tsx","../src/components/BrowserSilhouette/browserSilhouette.styles.ts","../src/components/BrowserSilhouette/BrowserSilhouette.tsx","../src/components/Button/ButtonStyles.ts","../src/components/Button/Button.tsx","../src/components/Checkbox/Checkbox.tsx","../src/components/Chip/ChipStyles.ts","../src/components/Chip/Chip.tsx","../src/components/Typography/TypographyProps.ts","../src/components/Typography/TypographyStyles.ts","../src/components/Typography/Typography.tsx","../src/components/CollapsibleText/CollapsibleTextStyles.ts","../src/components/CollapsibleText/CollapsibleText.tsx","../src/components/Divider/Divider.tsx","../src/components/IconButton/IconButton.tsx","../src/components/Link/LinkStyles.ts","../src/components/Link/Link.tsx","../src/components/Paper/Paper.tsx","../src/components/PaperContent/PaperContent.tsx","../src/components/Radio/Radio.tsx","../src/components/SplitInput/SplitInputStyles.ts","../src/components/SplitInput/SplitInput.tsx","../src/components/Switch/switch.styles.ts","../src/components/Switch/Switch.tsx","../src/components/TabPanel/TabPanel.tsx","../src/components/ToggleButton/ToggleButtonStyles.ts","../src/components/ToggleButton/ToggleButton.tsx","../src/components/ToggleButtonGroup/ToggleButtonGroupStyles.ts","../src/components/ToggleButtonGroup/ToggleButtonGroup.tsx","../src/components/Tooltip/TooltipStyles.ts","../src/components/Tooltip/Tooltip.tsx","../src/components/NumberField/NumberFieldStyles.ts","../src/components/NumberField/NumberField.tsx","../src/components/FollowerAuthenticationDialog/FollowerAuthenticationContent.tsx","../src/components/FollowerAuthenticationDialog/context.ts","../src/components/FollowerAuthenticationDialog/FollowerAuthenticationGraphic.tsx","../src/components/FollowerAuthenticationDialog/FollowerAuthenticationForm.tsx","../src/components/FollowerAuthenticationDialog/FollowerAuthenticationAltActions.tsx","../src/components/FollowerAuthenticationDialog/FollowerAuthenticationBody.tsx","../src/components/FollowerAuthenticationDialog/FollowerAuthenticationFooter.tsx","../src/components/FollowerAuthenticationDialog/FollowerAuthenticationTitle.tsx","../src/components/FollowerAuthenticationDialog/FollowerAuthenticationInfo.tsx","../src/components/FollowerAuthenticationDialog/FollowerAuthenticationCloseButton.tsx","../src/components/FollowerAuthenticationDialog/theme.ts","../src/components/FollowerAuthenticationDialog/FollowerAuthenticationDialog.tsx","../src/hooks/useCollapsibleText.ts","../src/hooks/useTabs/useTabs.ts"],"sourcesContent":["import { makeStyles, Theme } from '@material-ui/core'\nimport { IconProps } from './IconProps'\n\nexport const useIconStyles = makeStyles<Theme, IconProps>(({ spacing, palette }) => {\n const getFontSize = ({ size }: IconProps) => {\n const sizes = {\n inherit: 'inherit',\n small: spacing(1.5),\n medium: spacing(2),\n large: spacing(2.5),\n 'extra-large': spacing(3),\n }\n return size ? sizes[size] : 'inherit'\n }\n\n const getColor = (props: IconProps) => {\n const semanticColors = ['primary', 'secondary', 'info', 'success', 'warning', 'error']\n let value = 'inherit'\n if (props.color) {\n if (semanticColors.includes(props.color.split('.')[0])) {\n const [color, variant = 'main'] = props.color.split('.')\n // @ts-expect-error - todo.\n value = palette[color][variant]\n } else if (props.color.search(/^(rgb|hsla|#)/) !== -1) {\n value = props.color\n }\n }\n return value\n }\n\n return {\n root: {\n color: getColor,\n fontSize: getFontSize,\n strokeWidth: '1.3px',\n },\n }\n})\n","import { createElement, VoidFunctionComponent } from 'react'\nimport { IconProps } from './IconProps'\nimport { useIconStyles } from './IconStyles'\nimport classNames from 'classnames'\n\nexport const iconStaticClassName = 'pop-icon'\nexport const Icon: VoidFunctionComponent<IconProps> = (props) => {\n const { icon, className, ...restProps } = props\n const hasAccessibleAttr = Boolean(restProps['aria-describedby'] || restProps['aria-label'])\n if (!hasAccessibleAttr && restProps['aria-hidden'] === undefined) {\n restProps['aria-hidden'] = true\n }\n const classes = useIconStyles(props)\n let isValid = true\n if (!icon || (typeof icon === 'function' && icon({}) === undefined)) {\n isValid = false\n }\n return isValid\n ? createElement(icon, { className: classNames([classes.root, iconStaticClassName, className]), ...restProps })\n : null\n}\n\nIcon.defaultProps = {\n size: 'inherit',\n color: 'inherit',\n}\n\nIcon.displayName = 'Icon'\n","import React, { SyntheticEvent } from 'react'\nimport { AvatarProps } from '../AvatarProps'\n\nexport enum LoadingStatus {\n ERROR = 'ERROR',\n LOADED = 'LOADED',\n PENDING = 'PENDING',\n}\n\nexport const useImgProps: (avatarProps: AvatarProps) => { imgProps: AvatarProps['imgProps']; loaded: LoadingStatus } = (\n avatarProps,\n) => {\n const [loaded, setLoaded] = React.useState<LoadingStatus>(LoadingStatus.PENDING)\n const imgProps = {\n ...avatarProps.imgProps,\n onLoad: (event: SyntheticEvent<HTMLImageElement, Event>) => {\n setLoaded(LoadingStatus.LOADED)\n avatarProps.imgProps?.onLoad?.(event)\n },\n }\n\n return { imgProps, loaded }\n}\n","import { makeStyles, Theme } from '@material-ui/core/styles'\nimport { StyledAvatarProps } from './AvatarProps'\nimport { LoadingStatus } from './util/useImageProps'\n\nconst getAvatarDimensions = (theme: Theme, props: StyledAvatarProps) => {\n const factors = {\n 'extra-small': 3,\n small: 4,\n medium: 5,\n large: 6,\n 'extra-large': 12.5,\n }\n const sizeFactor = factors[props.size || 'medium']\n return theme.spacing(sizeFactor)\n}\n\nconst getAvatarFontSize = (props: StyledAvatarProps) => {\n const fontSizes = {\n 'extra-small': '0.75rem',\n small: '1rem',\n medium: '1rem',\n large: '1.25rem',\n 'extra-large': '3.5rem',\n }\n return fontSizes[props.size]\n}\n\nexport const useAvatarStyles = makeStyles<Theme, StyledAvatarProps>((theme) => ({\n root: (props) => ({\n width: getAvatarDimensions(theme, props),\n height: getAvatarDimensions(theme, props),\n fontSize: getAvatarFontSize(props),\n backgroundColor: props.loaded === LoadingStatus.LOADED ? 'transparent' : props.background,\n color: theme.palette.getContrastText(props.background),\n objectFit: props.fit,\n }),\n fallback: (props) => ({\n fontSize: getAvatarDimensions(theme, props),\n strokeWidth: 1,\n }),\n}))\n","import React, { forwardRef } from 'react'\nimport MuiAvatar from '@material-ui/core/Avatar'\nimport { User } from '@popmenu/web-icons'\nimport Icon from '../Icon'\n\nimport { AvatarProps, StyledAvatarProps } from './AvatarProps'\nimport { useAvatarStyles } from './avatar.styles'\nimport { useImgProps } from './util/useImageProps'\n\nexport const Avatar = forwardRef<HTMLDivElement, AvatarProps>((props, ref) => {\n const { children, src, alt, fallback, ...muiProps } = props\n const { imgProps, loaded } = useImgProps(props)\n const classes = useAvatarStyles({ ...props, loaded } as StyledAvatarProps)\n const displayAltTextFallback = src && alt\n const displayNoFallback = fallback === 'none'\n const displayCustomFallback = fallback !== 'none' && typeof fallback !== 'undefined'\n let Fallback\n if (displayAltTextFallback) {\n Fallback = null\n } else if (displayNoFallback) {\n Fallback = ' '\n } else if (displayCustomFallback) {\n Fallback = fallback\n } else {\n Fallback = <Icon icon={User} className={classes.fallback} />\n }\n return (\n <MuiAvatar ref={ref} classes={{ root: classes.root }} src={src} alt={alt} {...muiProps} imgProps={imgProps}>\n {children || Fallback}\n </MuiAvatar>\n )\n})\n\nAvatar.defaultProps = {\n size: 'medium',\n fit: 'cover',\n background: '#E0E0E0',\n}\n\nAvatar.displayName = 'Avatar'\n","import { makeStyles, Theme } from '@material-ui/core/styles'\n\nexport const useBrowserSilhouetteStyles = makeStyles<Theme>((theme) => ({\n circle: {\n backgroundColor: theme.palette.grey[300],\n borderRadius: '50%',\n height: theme.spacing(0.65),\n width: theme.spacing(0.65),\n margin: `${theme.spacing(1)}px 0 ${theme.spacing(1)}px ${theme.spacing(1)}px`,\n },\n container: {\n border: `1px solid ${theme.palette.secondary.light}`,\n borderRadius: theme.spacing(0.5),\n flexGrow: 1,\n },\n titleBar: {\n display: 'flex',\n flexDirection: 'row',\n borderBottom: `1px solid ${theme.palette.secondary.light}`,\n width: '100%',\n },\n}))\n","import React, { PropsWithChildren } from 'react'\n\nimport Box from '../Box'\nimport { useBrowserSilhouetteStyles } from './browserSilhouette.styles'\n\nexport const BrowserSilhouette = ({ children }: PropsWithChildren<Record<string, unknown>>) => {\n const classes = useBrowserSilhouetteStyles()\n\n return (\n <Box display=\"flex\">\n <div className={classes.container}>\n <div className={classes.titleBar}>\n <div className={classes.circle} />\n <div className={classes.circle} />\n <div className={classes.circle} />\n </div>\n {children}\n </div>\n </Box>\n )\n}\n","import { makeStyles, Theme } from '@material-ui/core/styles'\nimport { ButtonProps } from './ButtonProps'\n\nexport const useButtonStyles = makeStyles<Theme, ButtonProps>(() => ({\n root: {\n minWidth: 'unset',\n },\n label: {\n textTransform: ({ textTransform }) => textTransform,\n },\n}))\n","import React from 'react'\nimport MuiButton from '@material-ui/core/Button'\nimport classNames from 'classnames'\n\nimport { useTheme } from '@material-ui/core/styles'\nimport { ButtonProps } from './ButtonProps'\nimport { useButtonStyles } from './ButtonStyles'\nimport CircularProgress from '@material-ui/core/CircularProgress'\n\nexport const Button = <C extends React.ElementType = 'button'>(props: ButtonProps<C>) => {\n const { textTransform, loading, classes: classesOverride, className, ButtonRef, ...muiProps } = props\n const { classes: remove, ...styleProps } = props\n const classes = useButtonStyles(styleProps)\n const { typography } = useTheme()\n const loadingIndicator = {\n startIcon: <CircularProgress color=\"inherit\" size={typography.button.fontSize} />,\n disabled: true,\n }\n return (\n <MuiButton\n ref={ButtonRef}\n classes={{ ...classes, ...classesOverride }}\n className={classNames([className, 'pm-button'])}\n {...muiProps}\n {...(loading && loadingIndicator)}\n />\n )\n}\n\nButton.displayName = 'Button'\n","import React, { forwardRef } from 'react'\nimport MuiCheckbox from '@material-ui/core/Checkbox'\n\nimport FormControlLabel from '../FormControlLabel'\nimport { CheckboxProps } from './CheckboxProps'\n\nexport const Checkbox = forwardRef<HTMLInputElement, CheckboxProps>((props, ref) => {\n const { label, disabled, LabelProps, ...muiProps } = props\n const control = <MuiCheckbox disabled={label ? undefined : disabled} {...muiProps} />\n return label ? (\n <FormControlLabel disabled={disabled} inputRef={ref} control={control} label={label} {...LabelProps} />\n ) : (\n control\n )\n})\n\nCheckbox.displayName = 'Checkbox'\n","import { makeStyles, Theme } from '@material-ui/core/styles'\nimport { ChipProps } from './ChipProps'\n\nconst getBackground = (theme: Theme) => (props: ChipProps) => {\n const { variant, severity } = props\n let background = theme.palette.grey[100]\n const backgrounds = {\n outlined: 'none',\n error: 'error.main',\n warning: 'warning.main',\n info: 'info.light',\n success: 'success.light',\n }\n if (variant === 'outlined') {\n background = backgrounds[variant]\n } else if (severity) {\n const [color, colorVariant] = backgrounds[severity].split('.')\n // @ts-expect-error - todo.\n background = theme.palette[color][colorVariant]\n }\n return background\n}\n\nconst getColor = (theme: Theme) => (props: ChipProps) => {\n const { variant, severity } = props\n let textColor\n if (variant === 'outlined' && severity) {\n const textColors = {\n error: theme.palette.error.main,\n info: theme.palette.info.main,\n warning: theme.palette.warning.dark,\n success: theme.palette.success.dark,\n }\n textColor = textColors[severity]\n } else if (variant === 'outlined' && !severity) {\n textColor = theme.palette.grey[700]\n } else if ((variant === 'default' || variant === undefined) && severity) {\n const textColors = {\n error: theme.palette.common.white,\n info: theme.palette.secondary.main,\n warning: theme.palette.secondary.main,\n success: theme.palette.secondary.main,\n }\n textColor = textColors[severity]\n }\n return textColor\n}\n\nconst getBorder = (theme: Theme) => (props: ChipProps) => {\n const { variant, severity } = props\n let borderColor\n if (variant === 'outlined' && severity) {\n const borderColors = {\n error: theme.palette.error.main,\n info: theme.palette.info.main,\n warning: theme.palette.warning.dark,\n success: theme.palette.success.dark,\n }\n borderColor = borderColors[severity]\n }\n return borderColor\n}\n\n// using `any` here is a bit of cheating but it doesn't matter since this doesn't depend on\n// any component-specific props\nexport const useChipStyles = makeStyles<Theme, ChipProps<any>>((theme) => ({\n root: {\n background: getBackground(theme),\n color: getColor(theme),\n borderColor: getBorder(theme),\n borderRadius: theme.spacing(0.5),\n },\n icon: {\n color: 'inherit',\n height: theme.spacing(2),\n width: theme.spacing(2),\n },\n deleteIcon: {\n color: theme.palette.grey[500],\n },\n}))\n","import React from 'react'\nimport MuiChip from '@material-ui/core/Chip'\n\nimport { ChipProps, DefaultChipComponent } from './ChipProps'\nimport { useChipStyles } from './ChipStyles'\nimport { CheckCircle, Error as ErrorIcon, Info, Warning, XCircle } from '@popmenu/web-icons'\n\nconst IconDictionary = {\n error: ErrorIcon,\n info: Info,\n success: CheckCircle,\n warning: Warning,\n}\n\nexport const Chip = <C extends React.ElementType = DefaultChipComponent>(props: ChipProps<C>) => {\n const { severity, ...restProps } = props\n const classes = useChipStyles(props)\n const icon = severity ? React.createElement(IconDictionary[severity]) : undefined\n const deleteIcon = React.createElement(XCircle)\n return <MuiChip classes={classes} icon={icon} deleteIcon={deleteIcon} {...restProps} />\n}\n\nChip.displayName = 'Chip'\n","import { TypographyProps as MuiTypographyProps, TypographyTypeMap } from '@material-ui/core'\nimport { Variant } from '@material-ui/core/styles/createTypography'\nimport React, { RefObject } from 'react'\n\nexport type ThemeColors =\n | 'primary.light'\n | 'primary'\n | 'primary.dark'\n | 'secondary.light'\n | 'secondary'\n | 'secondary.dark'\n | 'info.light'\n | 'info'\n | 'info.dark'\n | 'success.light'\n | 'success'\n | 'success.dark'\n | 'error.light'\n | 'error'\n | 'error.dark'\n | 'warning.light'\n | 'warning'\n | 'warning.dark'\n | 'white'\n | 'black'\n | 'grey.100'\n | 'grey.200'\n | 'grey.300'\n | 'grey.400'\n | 'grey.500'\n | 'grey.600'\n | 'grey.700'\n | 'grey.800'\n | 'grey.900'\n | 'textPrimary'\n | 'textSecondary'\n\nexport const defaultTypographyProps = {\n variant: 'body1' as Variant,\n}\n\nexport type DefaultTypographyComponent = TypographyTypeMap['defaultComponent']\n\nexport type TypographyProps<C extends React.ElementType = DefaultTypographyComponent> = Omit<\n MuiTypographyProps<C, { component?: C }>,\n 'color' | 'ref'\n> & {\n TypographyRef?: RefObject<HTMLParagraphElement | HTMLHeadingElement | HTMLSpanElement>\n color?: ThemeColors\n weight?: 'regular' | 'medium' | 'semi-bold' | 'bold'\n}\n","import { makeStyles, Theme } from '@material-ui/core/styles'\n\nimport { TypographyProps, defaultTypographyProps } from './TypographyProps'\nimport { iconStaticClassName } from '../Icon'\n\nconst weights = {\n regular: 400,\n medium: 500,\n 'semi-bold': 600,\n bold: 700,\n}\n\nconst getCustomColor = (theme: Theme, color: string) => {\n const isCommonColor = color && ['white', 'black'].includes(color)\n const isGreyColor = color && color.match(/^grey\\.\\d{3}/)\n const isSemanticColor = color && color.match(/(primary|secondary|info|success|error|warning).?(light|dark)?/)\n const isTextColor = color && ['textPrimary', 'textSecondary'].includes(color)\n switch (true) {\n case isCommonColor:\n // @ts-expect-error - todo.\n return theme.palette.common[color]\n case Boolean(isGreyColor):\n const scale = color.split('.')[1]\n // @ts-expect-error - todo.\n return theme.palette.grey[scale] || theme.palette.grey[900]\n case Boolean(isSemanticColor):\n const [paletteKey, variant = 'main'] = color.split('.')\n // @ts-expect-error - todo.\n return theme.palette[paletteKey][variant]\n case isTextColor:\n // @ts-expect-error - todo.\n return theme.palette.text[color.slice(4).toLowerCase()]\n default:\n return undefined\n }\n}\n\nexport const useTypographyStyles = makeStyles<Theme, TypographyProps & typeof defaultTypographyProps>((theme) => ({\n root: {\n [`& .${iconStaticClassName}`]: {\n position: 'relative',\n top: '0.125em',\n padding: '0 0.125em',\n boxSizing: 'content-box',\n },\n fontFamily: theme.typography.fontFamily,\n fontWeight: ({ variant, weight }) => (weight ? weights[weight] : theme.typography[variant].fontWeight),\n fontSize: ({ variant }) => theme.typography[variant].fontSize,\n lineHeight: ({ variant }) => theme.typography[variant].lineHeight,\n textTransform: ({ variant }) => theme.typography[variant].textTransform,\n color: ({ color, variant }) => (color && getCustomColor(theme, color)) || theme.typography[variant].color,\n },\n caption: {\n display: 'inline',\n },\n overline: {\n display: 'inline',\n },\n}))\n","import React from 'react'\nimport { Typography as MuiTypography } from '@material-ui/core'\n\nimport { TypographyProps, defaultTypographyProps, DefaultTypographyComponent } from './TypographyProps'\nimport { useTypographyStyles } from './TypographyStyles'\n\nexport const Typography = <C extends React.ElementType = DefaultTypographyComponent>(props: TypographyProps<C>) => {\n const { weight, color, TypographyRef, ...restProps } = props\n const classes = useTypographyStyles({ ...props } as TypographyProps & typeof defaultTypographyProps)\n const variantMapping = { subtitle1: 'p' }\n return <MuiTypography classes={classes} variantMapping={variantMapping} ref={TypographyRef} {...restProps} />\n}\n\nTypography.displayName = 'Typography'\n\nTypography.defaultProps = defaultTypographyProps\n","import { makeStyles, Theme } from '@material-ui/core'\nimport { CollapsibleTextProps } from './CollapsibleTextProps'\n\nconst getFadeStop = ({ typography }: Theme, typographyVariant: string) => {\n // @ts-expect-error - todo.\n return !isNaN(Number(typography[typographyVariant].lineHeight))\n ? // @ts-expect-error - todo.\n `${typography[typographyVariant].lineHeight}rem`\n : // @ts-expect-error - todo.\n typography[typographyVariant].lineHeight\n}\n\nexport const useCollapsibleTextStyles = makeStyles<\n Theme,\n CollapsibleTextProps & { fadeStop?: string | number; typographyVariant: 'body1' | 'body2' }\n>((theme) => ({\n overlay: {\n position: 'absolute',\n top: 0,\n left: 0,\n height: '100%',\n width: '100%',\n background: (props) => `linear-gradient(to top, white, #FFF0 ${getFadeStop(theme, props.typographyVariant)})`,\n },\n}))\n","import React, { FC, useEffect, useRef, useState } from 'react'\nimport Collapse from '@material-ui/core/Collapse'\nimport { useTheme } from '@material-ui/core'\n\nimport Box from '../Box'\nimport Typography from '../Typography'\nimport { CollapsibleTextProps } from './CollapsibleTextProps'\nimport { useCollapsibleTextStyles } from './CollapsibleTextStyles'\n\nexport const CollapsibleText: FC<CollapsibleTextProps> = (props) => {\n const { text, open, previewLines = 2, typographyVariant = 'body1', collapseState: _exclude, ...restProps } = props\n const collapseState = useState<boolean | undefined>(false)\n const typographyRef = useRef<HTMLParagraphElement | HTMLHeadingElement | HTMLSpanElement>(null)\n const classes = useCollapsibleTextStyles({ ...props, previewLines, typographyVariant })\n const theme = useTheme()\n const [collapsible, setCollapsible] = props.collapseState ? props.collapseState : collapseState\n const typographyEntryLineHeightRem = parseFloat(theme.typography[typographyVariant].lineHeight as string)\n const collapsedSizeRem = previewLines * typographyEntryLineHeightRem\n const documentFontSize = parseFloat(getComputedStyle(document.documentElement).fontSize)\n const collapsedSizePx = collapsedSizeRem * documentFontSize\n\n useEffect(() => {\n const typographyNode = typographyRef.current as Element\n const observer = new ResizeObserver((entries) => {\n const typographyEntry = entries.find((entry) => entry.target === typographyNode)\n if (typographyEntry) {\n const typographyEntryHeight = typographyEntry.contentRect.height\n const isCollapsible = typographyEntryHeight > collapsedSizePx\n setCollapsible(isCollapsible)\n }\n })\n observer.observe(typographyNode)\n return () => {\n observer.unobserve(typographyNode)\n }\n }, [])\n\n return (\n <Box position=\"relative\" overflow=\"hidden\" {...restProps}>\n <Collapse in={open} collapsedSize={collapsedSizePx + 'px'}>\n <Typography TypographyRef={typographyRef} variant={typographyVariant}>\n {text}\n </Typography>\n </Collapse>\n {collapsible && !open && <Box className={classes.overlay} />}\n </Box>\n )\n}\n","import { makeStyles, Theme } from '@material-ui/core'\nimport classNames from 'classnames'\nimport React, { FC } from 'react'\nimport Box from '../Box'\nimport Typography from '../Typography'\nimport { DividerProps } from './DividerProps'\n\nenum SemanticColors {\n PRIMARY_MAIN = 'primary.main',\n PRIMARY_DARK = 'primary.dark',\n PRIMARY_LIGHT = 'primary.light',\n SECONDARY_MAIN = 'secondary.main',\n SECONDARY_DARK = 'secondary.dark',\n SECONDARY_LIGHT = 'secondary.light',\n}\n\nconst useStyles = makeStyles<Theme, DividerProps>((theme) => ({\n dividerRoot: {\n gap: theme.spacing(2),\n },\n textRoot: {\n color: (props) => {\n const { textColor } = props as { textColor: string }\n if (Object.values<string>(SemanticColors).includes(textColor)) {\n const [semanticColor, shade] = textColor.split('.')\n // @ts-expect-error - todo.\n return theme.palette[semanticColor][shade]\n } else if (textColor) {\n return textColor\n } else {\n return 'black'\n }\n },\n textTransform: (props) => props.textTransform,\n },\n dividerLine: {\n backgroundColor: (props) => {\n const { dividerColor } = props as { dividerColor: string }\n if (Object.values<string>(SemanticColors).includes(dividerColor)) {\n const [semanticColor, shade] = dividerColor.split('.')\n // @ts-expect-error - todo.\n return theme.palette[semanticColor][shade]\n } else if (dividerColor) {\n return dividerColor\n } else {\n return theme.palette.grey[500]\n }\n },\n },\n}))\n\nexport const Divider: FC<DividerProps> = (props) => {\n const { className, text, textTransform, TypographyProps } = props\n const classes = useStyles(props)\n const casingOffset = textTransform === 'lowercase' ? '.25rem' : 'unset'\n\n return (\n <Box className={classNames([classes.dividerRoot, className])} display=\"flex\" alignItems=\"center\">\n <Box className={classes.dividerLine} display=\"flex\" flexGrow={1} height=\"1px\" marginTop={casingOffset} />\n {text && (\n <>\n <Typography className={classes.textRoot} {...TypographyProps}>\n {text}\n </Typography>\n <Box className={classes.dividerLine} display=\"flex\" flexGrow={1} height=\"1px\" marginTop={casingOffset} />\n </>\n )}\n </Box>\n )\n}\n\nDivider.displayName = 'Divider'\n\nDivider.defaultProps = {\n textTransform: 'lowercase',\n}\n","import React, { forwardRef } from 'react'\nimport MuiIconButton from '@material-ui/core/IconButton'\n\nimport { IconButtonProps } from './IconButtonProps'\n\nexport const IconButton = forwardRef<HTMLButtonElement, IconButtonProps>((props, ref) => {\n return <MuiIconButton ref={ref} {...props} />\n})\n\nIconButton.displayName = 'IconButton'\n\nIconButton.defaultProps = {\n color: 'secondary',\n}\n","import { makeStyles, Theme } from '@material-ui/core/styles'\nimport { LinkProps } from '@material-ui/core'\nimport { iconStaticClassName } from '../Icon'\n\nexport const useLinkStyles = makeStyles<Theme, LinkProps>((theme) => ({\n root: (props) => ({\n display: 'flex',\n ...(props.color === undefined && { color: theme.palette.info.main }),\n [`& .${iconStaticClassName}`]: {\n alignSelf: 'center',\n },\n }),\n}))\n","import React, { forwardRef } from 'react'\nimport { Link as MuiLink, LinkProps } from '@material-ui/core'\n\nimport { useLinkStyles } from './LinkStyles'\n\ninterface LinkType {\n <C extends React.ElementType = 'a'>(props: LinkProps<C> & { component?: C }): React.ReactElement\n defaultProps?: Partial<LinkProps>\n displayName?: string\n}\n\n// eslint-disable-next-line react/display-name -- false positive\nexport const Link = forwardRef<HTMLAnchorElement, LinkProps>((props, ref) => {\n const { children, ...muiProps } = props\n const classes = useLinkStyles(props)\n\n return (\n <MuiLink ref={ref} classes={{ root: classes.root }} {...muiProps}>\n {children}\n </MuiLink>\n )\n}) as LinkType\n\nLink.defaultProps = {\n variant: 'body1',\n}\n\nLink.displayName = 'Link'\n","import React, { forwardRef } from 'react'\nimport { makeStyles, Paper as MuiPaper, PaperProps as MuiPaperProps } from '@material-ui/core'\n\nconst useStyles = makeStyles(({ spacing }) => ({\n root: {\n '&:last-child': {\n marginBottom: 0,\n },\n marginBottom: spacing(4),\n padding: spacing(4),\n },\n}))\n\nexport interface PaperProps extends MuiPaperProps {\n legacyStyles?: boolean\n}\n\nexport const Paper = forwardRef<HTMLDivElement, PaperProps>((props, ref) => {\n const { legacyStyles, ...restProps } = props\n const classes = useStyles(props)\n return <MuiPaper {...ref} classes={{ ...(legacyStyles && classes) }} {...restProps} />\n})\n\nPaper.displayName = 'Paper'\n\nPaper.defaultProps = {\n legacyStyles: false,\n}\n","import React, { FC } from 'react'\n\nimport Box from '../Box'\n\nexport const PaperContent: FC<Record<string, never>> = (props) => {\n const { children } = props\n return <Box padding={4}>{children}</Box>\n}\n","import React, { forwardRef } from 'react'\nimport MuiRadio from '@material-ui/core/Radio'\n\nimport FormControlLabel from '../FormControlLabel'\nimport { RadioProps } from './RadioProps'\n\nexport const Radio = forwardRef<HTMLInputElement, RadioProps>((props, ref) => {\n const { label, disabled, LabelProps, ...muiProps } = props\n const control = <MuiRadio disabled={label ? undefined : disabled} {...muiProps} />\n return label ? (\n <FormControlLabel disabled={disabled} inputRef={ref} control={control} label={label} {...LabelProps} />\n ) : (\n control\n )\n})\n\nRadio.displayName = 'Radio'\n","import { makeStyles, Theme } from '@material-ui/core/styles'\n\nimport { SplitInputProps } from './SplitInputProps'\n\nexport const useSplitInputStyles = makeStyles<Theme, SplitInputProps>(() => ({\n textfield: {\n background: (props) => (props.backgroundTransparency ? '#FFFFFF44' : 'none'),\n borderTopLeftRadius: 4,\n borderBottomLeftRadius: 4,\n '& fieldset': {\n borderRight: 'none',\n borderTopRightRadius: 0,\n borderBottomRightRadius: 0,\n },\n },\n button: {\n borderTopLeftRadius: 0,\n borderBottomLeftRadius: 0,\n alignSelf: 'stretch',\n },\n input: {\n color: (props) => props.inputTextColor || 'inherit',\n '&$focused fieldset': {\n top: -4,\n },\n },\n focused: {},\n}))\n","import React, { FC } from 'react'\n\nimport Box from '../Box'\nimport Button from '../Button'\nimport TextField from '../TextField'\nimport { useSplitInputStyles } from './SplitInputStyles'\nimport { SplitInputProps } from './SplitInputProps'\n\nexport const SplitInput: FC<SplitInputProps> = (props) => {\n const { buttonLabel, TextFieldProps, ButtonProps, color, onChange, onClick } = props\n const classes = useSplitInputStyles(props)\n return (\n <Box display=\"flex\">\n <TextField\n classes={{ root: classes.textfield }}\n InputProps={{ classes: { root: classes.input, focused: classes.focused } }}\n color={color}\n variant=\"outlined\"\n onChange={onChange}\n {...TextFieldProps}\n />\n <Button\n classes={{ root: classes.button }}\n disableElevation\n color={color}\n variant=\"contained\"\n onClick={onClick}\n {...ButtonProps}\n >\n {buttonLabel}\n </Button>\n </Box>\n )\n}\n\nSplitInput.displayName = 'SplitInput'\n\nSplitInput.defaultProps = {\n backgroundTransparency: true,\n color: 'primary',\n}\n","import { makeStyles, Theme } from '@material-ui/core/styles'\nimport { SwitchProps } from './SwitchProps'\n\nexport const useSwitchStyles = makeStyles<Theme, SwitchProps>((theme) => ({\n checked: {\n '& $thumb': {\n background: theme.palette.success.main,\n },\n '&& + $track': {\n backgroundColor: theme.palette.success.main,\n },\n },\n thumb: {},\n track: {},\n}))\n","import React, { forwardRef } from 'react'\nimport MuiSwitch from '@material-ui/core/Switch'\n\nimport FormControlLabel from '../FormControlLabel'\nimport { useSwitchStyles } from './switch.styles'\nimport { SwitchProps } from './SwitchProps'\n\nexport const Switch = forwardRef<HTMLInputElement, SwitchProps>((props, ref) => {\n const { label, disabled, LabelProps, ...muiProps } = props\n const classes = useSwitchStyles(props)\n const control = <MuiSwitch classes={classes} disabled={label ? undefined : disabled} {...muiProps} />\n return label ? (\n <FormControlLabel disabled={disabled} inputRef={ref} control={control} label={label} {...LabelProps} />\n ) : (\n control\n )\n})\n\nSwitch.displayName = 'Switch'\n","import React, { PropsWithChildren } from 'react'\nimport Box from '../Box'\n\nimport { TabPanelProps } from './TabPanelProps'\n\nexport const TabPanel = (props: PropsWithChildren<TabPanelProps>) => {\n const { children, show } = props\n return show ? <Box>{children}</Box> : null\n}\n","import { Theme } from '@material-ui/core/styles'\nimport { makeStyles } from '@material-ui/core/styles'\n\nimport { ToggleButtonProps } from './ToggleButtonProps'\n\nexport const useToggleButtonStyles = makeStyles<Theme, ToggleButtonProps>((theme) => ({\n root: {\n color: theme.palette.text.primary,\n },\n selected: {\n '&&': {\n '&:hover': {\n backgroundColor: (props) => theme.palette[props.color || 'primary'].dark,\n },\n backgroundColor: (props) => theme.palette[props.color || 'primary'].main,\n color: 'white',\n },\n },\n}))\n","import React, { forwardRef } from 'react'\nimport MuiToggleButton from '@material-ui/lab/ToggleButton'\n\nimport { useToggleButtonStyles } from './ToggleButtonStyles'\nimport { ToggleButtonProps } from './ToggleButtonProps'\n\nexport const ToggleButton = forwardRef<HTMLButtonElement, ToggleButtonProps>((props, ref) => {\n const { children, ...muiProps } = props\n const classes = useToggleButtonStyles(props)\n\n return (\n <MuiToggleButton\n ref={ref}\n classes={{\n root: classes.root,\n selected: classes.selected,\n }}\n {...muiProps}\n >\n {children}\n </MuiToggleButton>\n )\n})\n\nToggleButton.defaultProps = {\n color: 'primary',\n}\n\nToggleButton.displayName = 'ToggleButton'\n","import { makeStyles, Theme } from '@material-ui/core/styles'\n\nexport const useToggleButtonGroupStyles = makeStyles<Theme>((theme) => ({\n root: {\n '&&': {\n backgroundColor: theme.palette.grey[300],\n },\n },\n}))\n","import React, { forwardRef } from 'react'\nimport MuiToggleButtonGroup from '@material-ui/lab/ToggleButtonGroup'\n\nimport { ToggleButtonGroupProps } from './ToggleButtonGroupProps'\nimport { useToggleButtonGroupStyles } from './ToggleButtonGroupStyles'\n\nexport const ToggleButtonGroup = forwardRef<HTMLDivElement, ToggleButtonGroupProps>((props, ref) => {\n const { children, color = 'primary', ...muiProps } = props\n const classes = useToggleButtonGroupStyles(props)\n const childrenWithProps = React.Children.map(children, (child) => {\n if (!React.isValidElement(child)) {\n return null\n }\n return React.cloneElement(child, { color })\n })\n\n return (\n <MuiToggleButtonGroup ref={ref} classes={{ root: classes.root }} {...muiProps}>\n {childrenWithProps}\n </MuiToggleButtonGroup>\n )\n})\n\nToggleButtonGroup.displayName = 'ToggleButtonGroup'\n","import { makeStyles, Theme } from '@material-ui/core/styles'\n\nimport { TooltipProps } from './TooltipProps'\n\nexport const useTooltipStyles = makeStyles<Theme, TooltipProps>(({ typography }) => ({\n tooltip: {\n fontSize: typography.pxToRem(16),\n },\n}))\n","import React, { forwardRef } from 'react'\nimport MuiTooltip from '@material-ui/core/Tooltip'\n\nimport { TooltipProps } from './TooltipProps'\nimport { useTooltipStyles } from './TooltipStyles'\n\nexport const Tooltip = forwardRef<HTMLElement, TooltipProps>((props, ref) => {\n const classes = useTooltipStyles(props)\n return <MuiTooltip ref={ref} classes={classes} {...props} />\n})\n\nTooltip.displayName = 'Tooltip'\n","import { makeStyles } from '@material-ui/core'\n\nexport const useNumberFieldStyles = makeStyles(() => ({\n root: {\n height: 56,\n },\n}))\n\nexport const useNumberInputStyles = makeStyles((theme) => ({\n root: {\n height: '100%',\n width: 'min-content',\n borderRadius: theme.spacing(1),\n },\n input: {\n '&::-webkit-clear-button, &::-webkit-outer-spin-button, &::-webkit-inner-spin-button': {\n display: 'none',\n },\n '-moz-appearance': 'textfield',\n minWidth: 40,\n padding: 0,\n textAlign: 'center',\n },\n adornedStart: {\n padding: 0,\n },\n adornedEnd: {\n padding: 0,\n },\n}))\n","import React from 'react'\nimport { InputProps as MuiInputProps, TextField } from '@material-ui/core'\nimport { PlusCircle, MinusCircle } from '@popmenu/web-icons'\n\nimport Icon from '../Icon'\nimport IconButton from '../IconButton'\nimport { useNumberFieldStyles, useNumberInputStyles } from './NumberFieldStyles'\nimport { NumberFieldProps } from './NumberFieldProps'\n\nexport const NumberField = (props: NumberFieldProps): JSX.Element => {\n const {\n onIncrement,\n onDecrement,\n endAdornmentButtonProps = {},\n startAdornmentButtonProps = {},\n InputProps = {},\n classes,\n ...restProps\n } = props\n const { classes: inputClassesOverride, ...restInputProps } = InputProps as MuiInputProps\n const fieldClasses = useNumberFieldStyles(props)\n const inputClasses = useNumberInputStyles(props)\n\n return (\n <TextField\n classes={{ ...fieldClasses, ...classes }}\n variant=\"filled\"\n type=\"number\"\n defaultValue={0}\n InputProps={{\n classes: { ...inputClasses, ...inputClassesOverride },\n disableUnderline: true,\n endAdornment: (\n <IconButton style={{ fontSize: 20 }} onClick={onIncrement} {...endAdornmentButtonProps}>\n <Icon icon={PlusCircle} />\n </IconButton>\n ),\n startAdornment: (\n <IconButton style={{ fontSize: 20 }} onClick={onDecrement} {...startAdornmentButtonProps}>\n <Icon icon={MinusCircle} />\n </IconButton>\n ),\n ...restInputProps,\n }}\n {...restProps}\n />\n )\n}\n","import React from 'react'\nimport { DialogContent, makeStyles } from '@material-ui/core'\n\nconst useStyles = makeStyles(() => ({\n root: {\n display: 'flex',\n flexDirection: 'column',\n alignItems: 'center',\n gridGap: 16,\n },\n}))\nexport const FollowerAuthenticationContent = (props: { children: React.ReactNode }) => {\n const classes = useStyles()\n return <DialogContent classes={classes}>{props.children}</DialogContent>\n}\n","import { createContext, useContext } from 'react'\nimport { FollowerAuthenticationDialogProps } from './FollowerAuthenticationDialogProps'\n\nconst FollowerAuthenticationDialogContext = createContext<Omit<FollowerAuthenticationDialogProps, 'open'> | null>(null)\n\nexport const FollowerAuthenticationDialogContextProvider = FollowerAuthenticationDialogContext.Provider\n\nexport const useFollowerAuthenticationDialogContext = () => {\n const context = useContext(FollowerAuthenticationDialogContext)\n if (!context) {\n throw new Error(\n 'useFollowerAuthenticationDialogContext must be called within FollowerAuthenticationDialogContextProvider',\n )\n }\n return context\n}\n","import React from 'react'\nimport { useFollowerAuthenticationDialogContext } from './context'\nimport { Box } from '@material-ui/core'\nimport { MessageKey } from './FollowerAuthenticationDialogProps'\n\nexport const FollowerAuthenticationGraphic = () => {\n const { state, messages, graphics } = useFollowerAuthenticationDialogContext()\n const graphic = graphics[state.value]\n if (!graphic) return null\n return (\n <Box>\n <img src={graphic} alt={messages[`${state.value}GraphicAlt` as MessageKey] as string} />\n </Box>\n )\n}\n","import React, { ChangeEventHandler, useEffect, useRef, useState } from 'react'\nimport { useFollowerAuthenticationDialogContext } from './context'\nimport { Button, makeStyles, MenuItem, TextField, Typography } from '@material-ui/core'\n\nconst useStyles = makeStyles(() => ({\n form: {\n display: 'flex',\n flexDirection: 'column',\n alignItems: 'center',\n width: '100%',\n gridGap: 16,\n },\n}))\n\nconst northAmericanPhoneRegex = /^(\\()?[2-9]{1}\\d{2}(\\))?[-\\s.]?[2-9]{1}\\d{2}[-\\s.]?\\d{4}$/\nconst ukPhoneRegex = /^((\\+?44\\s?|0044\\s?)(\\s?\\d{3,5}|\\(\\d{3,5}\\))(\\s?\\d{3,4})(\\s?\\d{3,4})$|^07\\d{9}$)/\n\nconst validatePhoneNumber = (phone: string): boolean => {\n if (!phone) return false\n return northAmericanPhoneRegex.test(phone) || ukPhoneRegex.test(phone)\n}\n\nexport const FollowerAuthenticationForm = () => {\n const { state, messages, locationOptions, onActionButtonClick, loading } = useFollowerAuthenticationDialogContext()\n const classes = useStyles()\n\n // sign-up form state\n const formRef = useRef<HTMLFormElement>(null)\n const [formValidity, setFormValidity] = useState(false)\n const [showPhoneErrorText, setShowPhoneErrorText] = useState<boolean | undefined>()\n const [showEmailErrorText, setShowEmailErrorText] = useState<boolean | undefined>()\n const [showLocationErrorText, setShowLocationErrorText] = useState<boolean | undefined>()\n const [signUpPhoneValue, setSignUpPhoneValue] = useState(state.context.phone || '')\n const [signUpEmailValue, setSignUpEmailValue] = useState(state.context.email || '')\n\n const checkFieldValidity: ChangeEventHandler<HTMLInputElement> = (e) => {\n const fieldName = e.target.name\n const fieldValue = e.target.value\n\n switch (fieldName) {\n case 'phone':\n const isPhoneValid = validatePhoneNumber(fieldValue)\n setSignUpPhoneValue(fieldValue)\n setShowPhoneErrorText(!isPhoneValid && fieldValue.length > 0)\n break\n case 'email':\n const emailField = formRef.current?.elements.namedItem(fieldName) as HTMLInputElement\n const isEmailValid = emailField?.validity.valid ?? false\n setSignUpEmailValue(fieldValue)\n setShowEmailErrorText(!isEmailValid && fieldValue.length > 0)\n break\n case 'location':\n setShowLocationErrorText(!fieldValue)\n break\n default:\n break\n }\n }\n\n useEffect(() => {\n const hasValidPhone = Boolean(signUpPhoneValue) && !showPhoneErrorText\n const hasValidEmail = Boolean(signUpEmailValue) && !showEmailErrorText\n\n const locationField = formRef.current?.elements.namedItem('location') as HTMLInputElement\n const hasValidLocation = locationField ? Boolean(locationField.value) : true\n\n const hasValidContact = hasValidPhone || hasValidEmail\n setFormValidity(hasValidContact && hasValidLocation)\n }, [signUpPhoneValue, signUpEmailValue, showPhoneErrorText, showEmailErrorText, showLocationErrorText])\n\n const handleSubmit = (e: React.FormEvent<HTMLFormElement>) => {\n e.preventDefault()\n const form = e.target as HTMLFormElement\n const formData = new FormData(form)\n const values = Object.fromEntries(formData.entries()) as Record<string, string>\n onActionButtonClick('submit-form', values)\n }\n const formProps = {\n id: 'follower-authentication-form',\n className: classes.form,\n onSubmit: handleSubmit,\n }\n switch (state.value) {\n case 'initial':\n return (\n <form {...formProps}>\n <TextField\n disabled={loading}\n label={messages.initialInputLabel}\n key=\"identifier-input\"\n id=\"identifier-input\"\n name=\"identifier\"\n />\n <Button disabled={loading} type=\"submit\">\n {messages.initialCtaButtonLabel}\n </Button>\n </form>\n )\n case 'signUp':\n return (\n <form\n ref={formRef}\n {...formProps}\n onInvalid={(e) => {\n e.preventDefault()\n }}\n >\n <TextField\n disabled={loading}\n label={messages.signUpPhoneInputLabel}\n key=\"phone-input\"\n id=\"phone-input\"\n name=\"phone\"\n onChange={checkFieldValidity}\n error={showPhoneErrorText}\n helperText={showPhoneErrorText && messages.signUpPhoneErrorText}\n inputProps={{\n required: signUpEmailValue ? false : true,\n }}\n defaultValue={state.context.phone}\n />\n <TextField\n disabled={loading}\n label={messages.signUpNameInputLabel}\n key=\"name-input\"\n id=\"name-input\"\n name=\"name\"\n inputProps={{ required: true }}\n />\n <TextField\n disabled={loading}\n label={messages.signUpEmailInputLabel}\n key=\"email-input\"\n id=\"email-input\"\n name=\"email\"\n error={showEmailErrorText}\n helperText={showEmailErrorText && messages.signUpEmailErrorText}\n onChange={checkFieldValidity}\n inputProps={{\n required: signUpPhoneValue ? false : true,\n type: 'email',\n }}\n defaultValue={state.context.email}\n />\n <TextField\n disabled={loading}\n select\n onChange={checkFieldValidity}\n label={messages.signUpLocationInputLabel}\n error={showLocationErrorText}\n helperText={showLocationErrorText && messages.signUpLocationErrorText}\n key=\"location-input\"\n id=\"location-input\"\n inputProps={{ required: true }}\n name=\"location\"\n >\n {locationOptions.map((locationOption) => (\n <MenuItem data-cy={'option'} key={locationOption.value} value={locationOption.value}>\n {locationOption.label}\n </MenuItem>\n ))}\n </TextField>\n <Typography style={{ alignSelf: 'start' }}>{messages.signUpBirthdaySectionLabel}</Typography>\n <TextField\n disabled={loading}\n label={messages.signUpMonthInputLabel}\n key=\"birthday-month-input\"\n id=\"birthday-month-input\"\n name=\"birthdayMonth\"\n />\n <TextField\n disabled={loading}\n label={messages.signUpDayInputLabel}\n key=\"birthday-date-input\"\n id=\"birthday-date-input\"\n name=\"birthdayDate\"\n />\n <Button disabled={loading || !formValidity} type=\"submit\">\n {messages.signUp}\n </Button>\n </form>\n )\n case 'emailFound':\n return (\n <form {...formProps}>\n <TextField\n disabled={loading}\n label={messages.emailFoundInputLabel}\n key=\"email-input\"\n id=\"email-input\"\n name=\"email\"\n value={state.context.email}\n />\n <Button disabled={loading} type=\"submit\">\n {messages.emailFoundCtaButtonLabel}\n </Button>\n </form>\n )\n case 'emailAuthCode':\n return (\n <form {...formProps}>\n <TextField\n disabled={loading}\n label={messages.emailAuthCodeInputLabel}\n key=\"code-input\"\n id=\"code-input\"\n name=\"code\"\n />\n <Button disabled={loading} type=\"submit\">\n {messages.signIn}\n </Button>\n </form>\n )\n case 'indirectUserFound': {\n if (state.context.email) {\n return (\n <form {...formProps}>\n <TextField\n disabled={loading}\n label={messages.emailFoundInputLabel}\n key=\"email-input\"\n id=\"email-input\"\n name=\"email\"\n value={state.context.email}\n />\n <Button disabled={loading} type=\"submit\">\n {messages.indirectUserFoundCtaButtonLabel}\n </Button>\n </form>\n )\n } else if (state.context.phone) {\n return (\n <form {...formProps}>\n <TextField\n disabled={loading}\n label={messages.phoneFoundInputLabel}\n key=\"phone-input\"\n id=\"phone-input\"\n name=\"phone\"\n value={state.context.phone}\n />\n <Button disabled={loading} type=\"submit\">\n {messages.indirectUserFoundCtaButtonLabel}\n </Button>\n </form>\n )\n } else return null\n }\n case 'emailPasswordSignIn':\n return (\n <form {...formProps}>\n <TextField\n disabled={loading}\n label={messages.emailFoundInputLabel}\n key=\"email-input\"\n id=\"email-input\"\n name=\"email\"\n value={state.context.email}\n InputLabelProps={{ shrink: true }}\n />\n <TextField\n disabled={loading}\n label={messages.passwordInputLabel}\n key=\"password-input\"\n id=\"password-input\"\n name=\"password\"\n inputProps={{ type: 'password' }}\n />\n <Button disabled={loading} type=\"submit\">\n {messages.signIn}\n </Button>\n </form>\n )\n case 'phoneFound':\n return (\n <form {...formProps}>\n <TextField\n disabled={loading}\n label={messages.phoneFoundInputLabel}\n key=\"phone-input\"\n id=\"phone-input\"\n name=\"phone\"\n value={state.context.phone}\n />\n <Button disabled={loading} type=\"submit\">\n {messages.phoneFoundCtaButtonLabel}\n </Button>\n </form>\n )\n case 'phoneAuthCode':\n return (\n <form {...formProps}>\n <TextField\n disabled={loading}\n label={messages.phoneAuthCodeInputLabel}\n key=\"code-input\"\n id=\"code-input\"\n name=\"code\"\n autoComplete=\"one-time-code\"\n />\n <Button disabled={loading} type=\"submit\">\n {messages.signIn}\n </Button>\n </form>\n )\n case 'phonePasswordSignIn':\n return (\n <form {...formProps}>\n <TextField\n disabled={loading}\n label={messages.phoneFoundInputLabel}\n key=\"phone-input\"\n id=\"phone-input\"\n name=\"phone\"\n value={state.context.phone}\n InputLabelProps={{ shrink: true }}\n />\n <TextField\n disabled={loading}\n label={messages.passwordInputLabel}\n key=\"password-input\"\n id=\"password-input\"\n name=\"password\"\n inputProps={{ type: 'password' }}\n />\n <Button disabled={loading} type=\"submit\">\n {messages.signIn}\n </Button>\n </form>\n )\n case 'requirePhone':\n return (\n <form {...formProps}>\n <TextField\n disabled={loading}\n label={messages.requirePhoneInputLabel}\n key=\"phone-input\"\n id=\"phone-input\"\n name=\"phone\"\n value={state.context.phone}\n />\n <Button disabled={loading} type=\"submit\">\n {messages.requirePhoneCtaButtonLabel}\n </Button>\n </form>\n )\n case 'welcome':\n return null\n default:\n return null\n }\n}\n","import React from 'react'\nimport { useFollowerAuthenticationDialogContext } from './context'\nimport { Box, Button, Divider, makeStyles } from '@material-ui/core'\n\nconst useStyles = makeStyles(() => ({\n main: {\n width: '100%',\n display: 'flex',\n flexDirection: 'column',\n gridGap: 16,\n },\n}))\nexport const FollowerAuthenticationAltActions = () => {\n const { state, messages, logos, loading, onActionButtonClick } = useFollowerAuthenticationDialogContext()\n const classes = useStyles()\n switch (state.value) {\n case 'initial':\n return (\n <Box className={classes.main}>\n <Divider />\n <Button\n variant=\"outlined\"\n startIcon={logos.facebook}\n onClick={() => {\n onActionButtonClick('sign-in-with-facebook')\n }}\n >\n {messages.continueWithFacebookButtonLabel}\n </Button>\n <Button\n variant=\"outlined\"\n startIcon={logos.google}\n onClick={() => {\n onActionButtonClick('sign-in-with-google')\n }}\n >\n {messages.continueWithGoogleButtonLabel}\n </Button>\n </Box>\n )\n case 'signUp':\n return null\n case 'emailFound':\n return (\n <Box className={classes.main}>\n <Divider />\n <Button\n variant=\"outlined\"\n onClick={() => {\n onActionButtonClick('sign-in-with-password')\n }}\n >\n {messages.signInWithPassword}\n </Button>\n </Box>\n )\n case 'emailAuthCode':\n return (\n <Box className={classes.main}>\n <Button\n disabled={loading}\n variant=\"outlined\"\n onClick={() => {\n const form = document.querySelector('#follower-authentication-form') as HTMLFormElement\n const formData = new FormData(form)\n const values = Object.fromEntries(formData.entries()) as Record<string, string>\n onActionButtonClick('request-auth-code-email', values)\n }}\n >\n {messages.resendAuthCode}\n </Button>\n </Box>\n )\n case 'indirectUserFound':\n return (\n <Box className={classes.main}>\n <Divider />\n <Button\n variant=\"outlined\"\n onClick={() => {\n onActionButtonClick('use-different-account')\n }}\n >\n {messages.indirectUserFoundCtaButtonLabelAlt}\n </Button>\n </Box>\n )\n case 'emailPasswordSignIn':\n return (\n <Box className={classes.main}>\n <Divider />\n <Button\n variant=\"outlined\"\n onClick={() => {\n const form = document.querySelector('#follower-authentication-form') as HTMLFormElement\n const formData = new FormData(form)\n const values = Object.fromEntries(formData.entries()) as Record<string, string>\n onActionButtonClick('request-auth-code-email', values)\n }}\n >\n {messages.emailFoundCtaButtonLabel}\n </Button>\n </Box>\n )\n case 'phoneFound':\n return null\n case 'phoneAuthCode':\n return (\n <Box className={classes.main}>\n <Button\n disabled={loading}\n variant=\"outlined\"\n onClick={() => {\n const form = document.querySelector('#follower-authentication-form') as HTMLFormElement\n const formData = new FormData(form)\n const values = Object.fromEntries(formData.entries()) as Record<string, string>\n onActionButtonClick('request-auth-code-sms', values)\n }}\n >\n {messages.resendAuthCode}\n </Button>\n </Box>\n )\n case 'phonePasswordSignIn':\n return (\n <Box className={classes.main}>\n <Divider />\n <Button\n variant=\"outlined\"\n onClick={() => {\n const form = document.querySelector('#follower-authentication-form') as HTMLFormElement\n const formData = new FormData(form)\n const values = Object.fromEntries(formData.entries()) as Record<string, string>\n onActionButtonClick('request-auth-code-sms', values)\n }}\n >\n {messages.phoneFoundCtaButtonLabel}\n </Button>\n </Box>\n )\n case 'welcome':\n return (\n <Button\n onClick={() => {\n onActionButtonClick('close')\n }}\n >\n {messages.done}\n </Button>\n )\n default:\n return null\n }\n}\n","import React from 'react'\nimport { FollowerAuthenticationForm } from './FollowerAuthenticationForm'\nimport { FollowerAuthenticationAltActions } from './FollowerAuthenticationAltActions'\n\nexport const FollowerAuthenticationBody = () => {\n return (\n <React.Fragment>\n <FollowerAuthenticationForm />\n <FollowerAuthenticationAltActions />\n </React.Fragment>\n )\n}\n","import { Box, Typography } from '@material-ui/core'\nimport React from 'react'\nimport { useFollowerAuthenticationDialogContext } from './context'\n\nexport const FollowerAuthenticationFooter = () => {\n const { messages, logos } = useFollowerAuthenticationDialogContext()\n return (\n <Box display=\"flex\" gridGap={8}>\n <Typography variant=\"body2\">{messages.poweredBy}</Typography>\n {logos.popmenu}\n </Box>\n )\n}\n","import React from 'react'\nimport { useFollowerAuthenticationDialogContext } from './context'\nimport { Box, Typography } from '@material-ui/core'\nimport { MessageKey } from './FollowerAuthenticationDialogProps'\n\nexport const FollowerAuthenticationTitle = () => {\n const { state, messages } = useFollowerAuthenticationDialogContext()\n const title = messages[`${state.value}Title` as MessageKey]\n return (\n <Box>\n <Typography variant=\"h1\" align=\"center\">\n {title}\n </Typography>\n </Box>\n )\n}\n","import React from 'react'\nimport { useFollowerAuthenticationDialogContext } from './context'\nimport { Box, Typography } from '@material-ui/core'\nimport { MessageKey } from './FollowerAuthenticationDialogProps'\n\nexport const FollowerAuthenticationInfo = () => {\n const { state, messages } = useFollowerAuthenticationDialogContext()\n const info = messages[`${state.value}Info` as MessageKey]\n\n if (!info) return null\n return (\n <Box>\n <Typography align=\"center\">{info}</Typography>\n </Box>\n )\n}\n","import { IconButton, makeStyles } from '@material-ui/core'\nimport React from 'react'\nimport { useFollowerAuthenticationDialogContext } from './context'\nimport { X as XIcon } from '@popmenu/web-icons'\n\nconst useStyles = makeStyles(() => ({\n root: {\n position: 'absolute',\n top: 0,\n right: 0,\n },\n}))\nexport const FollowerAuthenticationCloseButton = () => {\n const { messages, onActionButtonClick } = useFollowerAuthenticationDialogContext()\n const classes = useStyles()\n const handleClose = () => {\n onActionButtonClick('close')\n }\n return (\n <IconButton classes={classes} aria-label={messages.closeButtonLabel} onClick={handleClose}>\n <XIcon />\n </IconButton>\n )\n}\n","export const theme = {\n palette: {\n primary: { main: '#2E3042' },\n },\n typography: {\n h1: {\n fontFamily: 'Poppins',\n fontSize: '24px',\n fontWeight: 400,\n lineHeight: '36px',\n },\n },\n props: {\n MuiTextField: {\n variant: 'outlined',\n fullWidth: true,\n },\n MuiButton: {\n variant: 'contained',\n color: 'primary',\n disableElevation: true,\n fullWidth: true,\n },\n },\n overrides: {\n MuiButton: {\n root: {\n borderRadius: 32,\n textTransform: 'none',\n },\n },\n },\n} as const\n","import React from 'react'\nimport { FollowerAuthenticationDialogProps } from './FollowerAuthenticationDialogProps'\nimport { createTheme, Dialog, ThemeProvider, useMediaQuery } from '@material-ui/core'\nimport { FollowerAuthenticationContent } from './FollowerAuthenticationContent'\nimport { FollowerAuthenticationGraphic } from './FollowerAuthenticationGraphic'\nimport { FollowerAuthenticationBody } from './FollowerAuthenticationBody'\nimport { FollowerAuthenticationFooter } from './FollowerAuthenticationFooter'\nimport { FollowerAuthenticationDialogContextProvider } from './context'\nimport { FollowerAuthenticationTitle } from './FollowerAuthenticationTitle'\nimport { FollowerAuthenticationInfo } from './FollowerAuthenticationInfo'\nimport { FollowerAuthenticationCloseButton } from './FollowerAuthenticationCloseButton'\nimport { theme as themeOptions } from './theme'\n\nexport const FollowerAuthenticationDialog = (props: FollowerAuthenticationDialogProps) => {\n const { open, ...restProps } = props\n const theme = createTheme(themeOptions)\n const fullScreen = useMediaQuery(({ breakpoints }) => breakpoints.down('sm'))\n const handleClose = () => {\n restProps.onActionButtonClick('close')\n }\n return (\n <ThemeProvider theme={theme}>\n <FollowerAuthenticationDialogContextProvider value={restProps}>\n <Dialog open={open} fullScreen={fullScreen} onClose={handleClose}>\n <FollowerAuthenticationContent>\n <FollowerAuthenticationCloseButton />\n <FollowerAuthenticationGraphic />\n <FollowerAuthenticationTitle />\n <FollowerAuthenticationInfo />\n <FollowerAuthenticationBody />\n <FollowerAuthenticationFooter />\n </FollowerAuthenticationContent>\n </Dialog>\n </FollowerAuthenticationDialogContextProvider>\n </ThemeProvider>\n )\n}\n","import { useState } from 'react'\n\ninterface CollapsibleTextHookResult {\n collapsibleText: {\n open: boolean\n collapseState: [boolean, (collapsible: boolean) => void]\n }\n toggle: () => void\n}\n\nexport const useCollapsibleText: () => CollapsibleTextHookResult = () => {\n const [open, setOpen] = useState(false)\n const collapseState = useState(false)\n const toggle = () => collapseState[0] && setOpen(!open)\n return {\n collapsibleText: {\n open,\n collapseState,\n },\n toggle,\n }\n}\n","import { SyntheticEvent, useState } from 'react'\nimport { UseTabsOptions } from './useTabsOptions'\nimport { UseTabsResult, UseTabResult } from './useTabsResult'\n\nexport const useTabs = (options: UseTabsOptions): UseTabsResult => {\n const { initialTab } = options\n const genTabId = (id: string) => `tab-${id}`.toLowerCase().replace(/ /g, '-')\n const genPanelId = (id: string) => `tab-panel-${id}`.toLowerCase().replace(/ /g, '-')\n const [activeTab, setActiveTab] = useState(genTabId(initialTab))\n const handleChange = (_: SyntheticEvent, nextTab: string) => setActiveTab(nextTab)\n const TabsProps = { onChange: handleChange, value: activeTab }\n const useTab = (baseId: string) => {\n const tabId = genTabId(baseId)\n const tabPanelId = genPanelId(baseId)\n const tabProps = {\n id: tabId,\n label: baseId,\n value: tabId,\n 'aria-controls': tabPanelId,\n }\n const panelProps = {\n id: tabPanelId,\n role: 'tabpanel',\n show: activeTab === tabId,\n 'aria-labelledby': tabId,\n }\n return [tabProps, panelProps] as UseTabResult\n }\n return {\n TabsProps,\n useTab,\n setActiveTab: (tabId: string) => setActiveTab(tabId),\n }\n}\n"],"names":["makeStyles","__rest","createElement","forwardRef","__assign","User","Box","useTheme","ErrorIcon","Info","CheckCircle","Warning","XCircle","MuiTypography","useState","useRef","useEffect","useStyles","MuiLink","MuiPaper","TextField","PlusCircle","MinusCircle","DialogContent","createContext","useContext","Button","MenuItem","Typography","Divider","IconButton","XIcon","theme","createTheme","themeOptions","useMediaQuery","ThemeProvider","Dialog"],"mappings":"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"}