cozy-ui 111.5.0 → 111.7.0

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 (757) hide show
  1. package/.nvmrc +1 -1
  2. package/CHANGELOG.md +21 -0
  3. package/package.json +16 -5
  4. package/react/AccordionSummary/index.js +1 -1
  5. package/react/ActionsBar/ResponsiveAction.jsx +3 -3
  6. package/react/ActionsBar/index.jsx +14 -15
  7. package/react/ActionsBar/locales/withActionsLocales.jsx +1 -2
  8. package/react/ActionsMenu/Actions/call.js +3 -3
  9. package/react/ActionsMenu/Actions/emailTo.js +3 -3
  10. package/react/ActionsMenu/Actions/helpers.js +1 -0
  11. package/react/ActionsMenu/Actions/locales/withActionsLocales.jsx +2 -3
  12. package/react/ActionsMenu/Actions/modify.js +3 -3
  13. package/react/ActionsMenu/Actions/others.jsx +1 -2
  14. package/react/ActionsMenu/Actions/print.js +4 -4
  15. package/react/ActionsMenu/Actions/smsTo.js +3 -3
  16. package/react/ActionsMenu/Actions/viewInContacts.js +3 -3
  17. package/react/ActionsMenu/ActionsItems.jsx +6 -6
  18. package/react/ActionsMenu/ActionsMenuItem.jsx +4 -4
  19. package/react/ActionsMenu/ActionsMenuMobileHeader.jsx +1 -1
  20. package/react/ActionsMenu/ActionsMenuWrapper.jsx +4 -4
  21. package/react/ActionsMenu/index.jsx +2 -2
  22. package/react/Alert/index.jsx +5 -5
  23. package/react/AppIcon/index.jsx +13 -5
  24. package/react/AppLinker/expiringMemoize.js +1 -1
  25. package/react/AppLinker/index.deprecated.spec.jsx +2 -2
  26. package/react/AppLinker/index.jsx +3 -3
  27. package/react/AppLinker/index.spec.jsx +2 -2
  28. package/react/AppSections/Sections.jsx +56 -13
  29. package/react/AppSections/__snapshots__/index.spec.jsx.snap +10 -0
  30. package/react/AppSections/categories.js +35 -11
  31. package/react/AppSections/categories.spec.js +9 -3
  32. package/react/AppSections/components/AppsSection.jsx +6 -5
  33. package/react/AppSections/components/AppsSection.spec.jsx +5 -6
  34. package/react/AppSections/components/DropdownFilter.jsx +3 -4
  35. package/react/AppSections/components/__snapshots__/AppsSection.spec.jsx.snap +1 -1
  36. package/react/AppSections/constants.js +6 -1
  37. package/react/AppSections/generateI18nConfig.ts +23 -0
  38. package/react/AppSections/helpers.js +8 -0
  39. package/react/AppSections/helpers.spec.js +1 -1
  40. package/react/AppSections/index.spec.jsx +4 -4
  41. package/react/AppSections/locales/en.json +4 -2
  42. package/react/AppSections/locales/fr.json +4 -2
  43. package/react/AppSections/search.js +1 -1
  44. package/react/AppTile/AppTile.spec.jsx +7 -6
  45. package/react/AppTile/index.jsx +44 -26
  46. package/react/AppTile/locales/en.json +2 -1
  47. package/react/AppTile/locales/fr.json +2 -1
  48. package/react/AppTitle/index.jsx +3 -2
  49. package/react/Avatar/index.jsx +4 -4
  50. package/react/Backdrop/index.js +2 -2
  51. package/react/Badge/index.jsx +2 -2
  52. package/react/Banner/index.jsx +4 -5
  53. package/react/Banner/index.spec.jsx +2 -1
  54. package/react/BarButton/index.jsx +2 -3
  55. package/react/BarContextProvider/index.jsx +4 -3
  56. package/react/BarContextProvider/index.spec.jsx +2 -2
  57. package/react/BarTitle/index.jsx +2 -3
  58. package/react/BottomSheet/BottomSheet.jsx +10 -11
  59. package/react/BottomSheet/BottomSheetHeader.jsx +1 -1
  60. package/react/BottomSheet/BottomSheetItem.jsx +2 -2
  61. package/react/BottomSheet/BottomSheetTitle.jsx +3 -3
  62. package/react/Buttons/index.jsx +3 -4
  63. package/react/Card/index.jsx +1 -1
  64. package/react/Checkbox/index.jsx +3 -4
  65. package/react/Chips/index.jsx +2 -2
  66. package/react/CipherIcon/index.jsx +6 -5
  67. package/react/CipherIcon/index.spec.jsx +2 -1
  68. package/react/Circle/index.jsx +2 -2
  69. package/react/CircleButton/index.jsx +3 -3
  70. package/react/CircularChart/CircularChartProgress.jsx +2 -2
  71. package/react/CircularChart/CircularProgressWithBackground.jsx +2 -2
  72. package/react/CircularChart/index.jsx +4 -6
  73. package/react/ContactPicker/index.jsx +4 -3
  74. package/react/ContactPicker/index.spec.jsx +4 -5
  75. package/react/ContactsList/ContactRow.jsx +4 -4
  76. package/react/ContactsList/ContactRow.spec.js +5 -4
  77. package/react/ContactsList/Contacts/ContactCozy.jsx +1 -1
  78. package/react/ContactsList/Contacts/ContactEmail.jsx +1 -1
  79. package/react/ContactsList/Contacts/ContactIdentity.jsx +4 -5
  80. package/react/ContactsList/Contacts/ContactName.jsx +2 -2
  81. package/react/ContactsList/Contacts/ContactPhone.jsx +1 -1
  82. package/react/ContactsList/ContactsList.jsx +6 -6
  83. package/react/ContactsList/locales/withContactsListLocales.jsx +1 -2
  84. package/react/ContactsListModal/AddContact/AddContactContent.jsx +5 -6
  85. package/react/ContactsListModal/AddContact/AddContactDialog.jsx +3 -3
  86. package/react/ContactsListModal/ContactsListContent.jsx +2 -2
  87. package/react/ContactsListModal/ContactsListModal.jsx +12 -13
  88. package/react/ContactsListModal/ContactsListModalWithQuery.jsx +2 -2
  89. package/react/ContactsListModal/EmptyMessage.jsx +2 -1
  90. package/react/ContactsListModal/MobileHeader.jsx +4 -4
  91. package/react/ContactsListModal/index.jsx +2 -2
  92. package/react/ContactsListModal/withContactsListLocales.jsx +1 -2
  93. package/react/Counter/index.jsx +1 -1
  94. package/react/CozyDialogs/ConfirmDialog.jsx +4 -5
  95. package/react/CozyDialogs/Dialog.jsx +4 -5
  96. package/react/CozyDialogs/DialogBackButton.jsx +4 -6
  97. package/react/CozyDialogs/DialogCloseButton.jsx +4 -5
  98. package/react/CozyDialogs/DialogTransition.jsx +3 -3
  99. package/react/CozyDialogs/FixedActionsDialog.jsx +4 -5
  100. package/react/CozyDialogs/FixedDialog.jsx +4 -5
  101. package/react/CozyDialogs/IllustrationDialog.jsx +4 -5
  102. package/react/CozyDialogs/PermissionDialog.jsx +4 -4
  103. package/react/CozyDialogs/SpecificDialogs/AllowLocationDialog.jsx +5 -6
  104. package/react/CozyDialogs/SpecificDialogs/AuthentificationDialog.jsx +7 -7
  105. package/react/CozyDialogs/SpecificDialogs/InstallFlagshipAppDialog.jsx +6 -7
  106. package/react/CozyDialogs/SpecificDialogs/withSpecificDialogsLocales.jsx +1 -2
  107. package/react/CozyDialogs/TopAnchoredDialog.jsx +1 -1
  108. package/react/CozyDialogs/testing.spec.jsx +1 -2
  109. package/react/CozyDialogs/useCozyDialog.js +2 -3
  110. package/react/DateMonthPicker/index.jsx +7 -8
  111. package/react/DateMonthPicker/index.spec.jsx +2 -2
  112. package/react/Dialog/DialogEffects.spec.tsx +13 -7
  113. package/react/Dialog/DialogEffects.ts +4 -5
  114. package/react/Dialog/index.jsx +2 -2
  115. package/react/Divider/TextDivider/index.jsx +2 -3
  116. package/react/Divider/index.jsx +2 -3
  117. package/react/DropdownButton/index.jsx +3 -3
  118. package/react/DropdownText/index.jsx +3 -3
  119. package/react/Empty/index.jsx +2 -3
  120. package/react/Fab/ExtendableFab.jsx +1 -1
  121. package/react/Field/index.jsx +5 -5
  122. package/react/Field/index.spec.js +2 -1
  123. package/react/Figure/Figure.jsx +3 -2
  124. package/react/Figure/Figure.spec.jsx +6 -2
  125. package/react/Figure/FigureBlock.jsx +4 -3
  126. package/react/FileImageLoader/index.jsx +2 -1
  127. package/react/FileImageLoader/index.spec.jsx +1 -1
  128. package/react/FileInput/index.jsx +2 -2
  129. package/react/FileInput/index.spec.jsx +1 -1
  130. package/react/FilePath/index.jsx +2 -1
  131. package/react/FilePathLink/index.jsx +2 -1
  132. package/react/FilePicker/FilePickerBody.jsx +10 -9
  133. package/react/FilePicker/FilePickerBodyItem.jsx +10 -12
  134. package/react/FilePicker/FilePickerBodyItem.spec.jsx +2 -2
  135. package/react/FilePicker/FilePickerBreadcrumb.jsx +7 -7
  136. package/react/FilePicker/FilePickerFooter.jsx +3 -4
  137. package/react/FilePicker/FilePickerFooter.spec.jsx +2 -2
  138. package/react/FilePicker/FilePickerHeader.jsx +8 -9
  139. package/react/FilePicker/index.jsx +6 -6
  140. package/react/Filename/index.jsx +2 -2
  141. package/react/GhostFileBadge/index.jsx +1 -1
  142. package/react/Hero/index.jsx +2 -1
  143. package/react/HistoryRow/index.jsx +3 -4
  144. package/react/I18n/index.js +2 -1
  145. package/react/I18n/withLocales.js +1 -1
  146. package/react/Icon/Sprite.jsx +2 -1
  147. package/react/Icon/index.jsx +2 -2
  148. package/react/IconButton/index.jsx +3 -3
  149. package/react/IconStack/index.jsx +2 -2
  150. package/react/InfosBadge/index.jsx +1 -1
  151. package/react/Input/index.jsx +2 -1
  152. package/react/InputGroup/index.jsx +4 -9
  153. package/react/IntentDialogOpener/IntentDialogOpener.jsx +2 -2
  154. package/react/IntentHeader/index.jsx +3 -3
  155. package/react/IntentIframe/IntentIframe.jsx +6 -13
  156. package/react/IntentWrapper/index.jsx +3 -3
  157. package/react/Label/index.jsx +2 -1
  158. package/react/Labs/CollectionField/index.jsx +4 -5
  159. package/react/Labs/ExperimentalDialog/index.jsx +1 -1
  160. package/react/Labs/IconGrid/index.jsx +1 -0
  161. package/react/Labs/PasswordInput/index.jsx +6 -5
  162. package/react/Layout/Layout.jsx +3 -2
  163. package/react/ListItem/ExpandedAttributes/ExpandedAttribute.jsx +5 -6
  164. package/react/ListItem/ExpandedAttributes/helpers.js +17 -15
  165. package/react/ListItem/ExpandedAttributes/index.jsx +4 -5
  166. package/react/ListItem/ListItemBase/Renaming/RenameDialog.jsx +1 -2
  167. package/react/ListItem/ListItemBase/Renaming/RenameInput.jsx +4 -5
  168. package/react/ListItem/ListItemBase/index.jsx +10 -11
  169. package/react/ListItem/ListItemByDoc/index.jsx +3 -3
  170. package/react/ListItem/ListItemContact/helpers.spec.js +1 -2
  171. package/react/ListItem/ListItemContact/index.jsx +2 -3
  172. package/react/ListItem/ListItemContact/useActions.jsx +1 -2
  173. package/react/ListItem/ListItemFile/ExpirationAnnotation.jsx +1 -2
  174. package/react/ListItem/ListItemFile/ItemIcon.jsx +4 -4
  175. package/react/ListItem/ListItemFile/PrimaryText.jsx +1 -1
  176. package/react/ListItem/ListItemFile/SecondaryText.jsx +2 -3
  177. package/react/ListItem/ListItemFile/index.jsx +4 -5
  178. package/react/ListItem/hoc/withListItemLocales.jsx +0 -1
  179. package/react/ListItem/index.js +4 -4
  180. package/react/ListItemIcon/index.js +1 -2
  181. package/react/ListItemText/index.jsx +2 -2
  182. package/react/ListSubheader/index.js +3 -3
  183. package/react/LoadMore/index.jsx +3 -2
  184. package/react/MenuItem/index.js +1 -1
  185. package/react/MidEllipsis/index.jsx +2 -2
  186. package/react/MuiCozyTheme/Divider/index.jsx +1 -0
  187. package/react/MuiCozyTheme/List/index.jsx +1 -0
  188. package/react/MuiCozyTheme/ListItem/index.jsx +1 -0
  189. package/react/MuiCozyTheme/ListItemIcon/index.jsx +1 -0
  190. package/react/MuiCozyTheme/ListItemSecondaryAction/index.jsx +1 -0
  191. package/react/MuiCozyTheme/index.jsx +2 -2
  192. package/react/MuiCozyTheme/makeTheme.jsx +6 -7
  193. package/react/MuiTabs/index.jsx +3 -2
  194. package/react/Nav/index.jsx +18 -14
  195. package/react/Nav/locales/withNavLocales.jsx +1 -1
  196. package/react/NavigationList/index.jsx +5 -4
  197. package/react/NestedSelect/BottomSheet.jsx +4 -5
  198. package/react/NestedSelect/ItemRow.jsx +4 -4
  199. package/react/NestedSelect/Modal.jsx +4 -5
  200. package/react/NestedSelect/NestedSelect.jsx +6 -6
  201. package/react/NestedSelect/NestedSelectResponsive.jsx +1 -1
  202. package/react/OrderedList/index.jsx +3 -2
  203. package/react/Page/index.jsx +1 -0
  204. package/react/Panel/index.jsx +1 -1
  205. package/react/PasswordExample/index.jsx +3 -2
  206. package/react/PasswordField/index.jsx +5 -6
  207. package/react/Paywall/MaxAccountsByKonnectorPaywall.jsx +1 -1
  208. package/react/Paywall/MaxAccountsPaywall.jsx +1 -1
  209. package/react/Paywall/MaxDaysToCapturePaywall.jsx +1 -1
  210. package/react/Paywall/MaxPapersPaywall.jsx +1 -1
  211. package/react/Paywall/OnlyOfficePaywall.jsx +1 -1
  212. package/react/Paywall/PasswordSharingPaywall.jsx +1 -1
  213. package/react/Paywall/Paywall.jsx +6 -6
  214. package/react/Paywall/Paywall.spec.jsx +2 -2
  215. package/react/Paywall/QuotaPaywall.jsx +1 -1
  216. package/react/Paywall/index.jsx +1 -3
  217. package/react/Paywall/locales/withPaywallLocales.jsx +1 -2
  218. package/react/PieChart/index.jsx +7 -7
  219. package/react/PointerAlert/index.jsx +4 -5
  220. package/react/Popup/index.jsx +1 -1
  221. package/react/Popup/index.spec.jsx +1 -1
  222. package/react/PopupOpener/index.jsx +1 -1
  223. package/react/ProgressionBanner/index.jsx +2 -2
  224. package/react/QualificationGrid/index.jsx +11 -12
  225. package/react/QualificationGrid/locales/withLocales.jsx +1 -2
  226. package/react/QualificationItem/index.jsx +2 -2
  227. package/react/Radios/index.jsx +1 -2
  228. package/react/SearchBar/index.jsx +8 -8
  229. package/react/SearchBar/locales/withOnlyLocales.jsx +1 -2
  230. package/react/SelectBox/ControlDefault.jsx +1 -2
  231. package/react/SelectBox/SelectBox.jsx +15 -17
  232. package/react/SelectBox/SelectBoxWithFixedOptions.jsx +2 -2
  233. package/react/SelectBox/index.jsx +1 -3
  234. package/react/SelectionBar/SelectionBarAction.jsx +3 -4
  235. package/react/SelectionBar/SelectionBarMore.jsx +2 -3
  236. package/react/SelectionBar/index.jsx +7 -8
  237. package/react/SelectionBar/useMaxActions.jsx +2 -2
  238. package/react/ShortcutTile/index.tsx +63 -0
  239. package/react/Sidebar/index.jsx +3 -2
  240. package/react/Skeletons/ListItemSkeleton.jsx +2 -2
  241. package/react/Skeletons/ListSkeleton.jsx +2 -3
  242. package/react/Snackbar/index.jsx +1 -1
  243. package/react/Spinner/index.jsx +4 -5
  244. package/react/SquareAppIcon/SquareAppIcon.spec.js +2 -2
  245. package/react/SquareAppIcon/index.jsx +10 -10
  246. package/react/Stack/index.jsx +2 -1
  247. package/react/Stepper/testing.jsx +1 -1
  248. package/react/Tabs/index.jsx +2 -2
  249. package/react/TextField/MobileSelect.jsx +12 -10
  250. package/react/TextField/index.jsx +2 -2
  251. package/react/Textarea/index.jsx +2 -1
  252. package/react/Thumbnail/index.jsx +2 -2
  253. package/react/Tile/index.jsx +4 -3
  254. package/react/Toggle/index.jsx +3 -3
  255. package/react/Typography/index.jsx +1 -1
  256. package/react/UnorderedList/index.jsx +2 -1
  257. package/react/UploadQueue/index.jsx +11 -12
  258. package/react/UploadQueue/index.spec.jsx +2 -1
  259. package/react/Viewer/Footer/BottomSheetContent.jsx +1 -2
  260. package/react/Viewer/Footer/DownloadButton.jsx +3 -3
  261. package/react/Viewer/Footer/FooterActionButtons.jsx +1 -1
  262. package/react/Viewer/Footer/FooterActionButtons.spec.jsx +1 -1
  263. package/react/Viewer/Footer/FooterContent.jsx +5 -5
  264. package/react/Viewer/Footer/ForwardButton.jsx +5 -5
  265. package/react/Viewer/Footer/ForwardButton.spec.jsx +2 -2
  266. package/react/Viewer/Footer/ForwardOrDownloadButton.jsx +2 -2
  267. package/react/Viewer/Footer/Sharing.jsx +2 -2
  268. package/react/Viewer/Footer/helpers.js +1 -0
  269. package/react/Viewer/NoViewer/DownloadButton.jsx +3 -4
  270. package/react/Viewer/NoViewer/FileIcon.jsx +2 -2
  271. package/react/Viewer/NoViewer/NoViewer.jsx +4 -3
  272. package/react/Viewer/NoViewer/NoViewer.spec.jsx +2 -3
  273. package/react/Viewer/Panel/ActionMenuDesktop.jsx +4 -4
  274. package/react/Viewer/Panel/ActionMenuMobile.jsx +6 -6
  275. package/react/Viewer/Panel/ActionMenuWrapper.jsx +4 -4
  276. package/react/Viewer/Panel/Certifications.jsx +5 -5
  277. package/react/Viewer/Panel/PanelContent.jsx +5 -6
  278. package/react/Viewer/Panel/Qualification.jsx +5 -5
  279. package/react/Viewer/Panel/QualificationListItemContact.jsx +9 -9
  280. package/react/Viewer/Panel/QualificationListItemDate.jsx +7 -7
  281. package/react/Viewer/Panel/QualificationListItemInformation.jsx +7 -7
  282. package/react/Viewer/Panel/QualificationListItemInformation.spec.jsx +2 -1
  283. package/react/Viewer/Panel/QualificationListItemOther.jsx +7 -7
  284. package/react/Viewer/Panel/QualificationListItemText.jsx +1 -1
  285. package/react/Viewer/Panel/getPanelBlocks.jsx +1 -1
  286. package/react/Viewer/Viewer.jsx +4 -5
  287. package/react/Viewer/ViewerContainer.jsx +12 -13
  288. package/react/Viewer/ViewerInformationsWrapper.jsx +6 -7
  289. package/react/Viewer/ViewerInformationsWrapper.spec.jsx +1 -1
  290. package/react/Viewer/ViewerWithCustomPanelAndFooter.jsx +4 -6
  291. package/react/Viewer/ViewersByFile/AudioViewer.jsx +1 -3
  292. package/react/Viewer/ViewersByFile/AudioViewer.spec.jsx +2 -4
  293. package/react/Viewer/ViewersByFile/BlankPaperViewer.jsx +2 -4
  294. package/react/Viewer/ViewersByFile/ImageViewer.jsx +3 -5
  295. package/react/Viewer/ViewersByFile/ImageViewer.spec.jsx +3 -5
  296. package/react/Viewer/ViewersByFile/NoNetworkViewer.jsx +1 -3
  297. package/react/Viewer/ViewersByFile/OnlyOfficeViewer.jsx +2 -3
  298. package/react/Viewer/ViewersByFile/PdfJsViewer.jsx +9 -13
  299. package/react/Viewer/ViewersByFile/PdfJsViewer.spec.jsx +2 -2
  300. package/react/Viewer/ViewersByFile/PdfMobileViewer.jsx +5 -7
  301. package/react/Viewer/ViewersByFile/PdfMobileViewer.spec.jsx +2 -3
  302. package/react/Viewer/ViewersByFile/ShortcutViewer.jsx +4 -4
  303. package/react/Viewer/ViewersByFile/ShortcutViewer.spec.jsx +3 -4
  304. package/react/Viewer/ViewersByFile/TextViewer.jsx +5 -7
  305. package/react/Viewer/ViewersByFile/TextViewer.spec.jsx +3 -5
  306. package/react/Viewer/ViewersByFile/VideoViewer.jsx +1 -2
  307. package/react/Viewer/ViewersByFile/VideoViewer.spec.jsx +2 -3
  308. package/react/Viewer/components/ExpirationAlert.jsx +2 -2
  309. package/react/Viewer/components/ExpirationAnnotation.jsx +1 -1
  310. package/react/Viewer/components/Footer.jsx +1 -2
  311. package/react/Viewer/components/InformationPanel.jsx +1 -1
  312. package/react/Viewer/components/Navigation.jsx +3 -4
  313. package/react/Viewer/components/PdfToolbarButton.jsx +1 -1
  314. package/react/Viewer/components/PrintButton.jsx +6 -6
  315. package/react/Viewer/components/Toolbar.jsx +12 -14
  316. package/react/Viewer/components/ToolbarFilePath.jsx +1 -2
  317. package/react/Viewer/components/ViewerByFile.jsx +9 -11
  318. package/react/Viewer/components/ViewerControls.jsx +11 -17
  319. package/react/Viewer/components/ViewerControls.spec.jsx +2 -2
  320. package/react/Viewer/components/ViewerSpinner.jsx +1 -1
  321. package/react/Viewer/helpers.js +0 -2
  322. package/react/Viewer/hoc/withFileUrl.jsx +2 -2
  323. package/react/Viewer/hoc/withViewerLocales.jsx +0 -1
  324. package/react/Viewer/index.jsx +2 -6
  325. package/react/Wizard/index.jsx +4 -4
  326. package/react/deprecated/ActionMenu/ActionMenuEffects.ts +3 -3
  327. package/react/deprecated/ActionMenu/ActionMenuHeader.jsx +2 -2
  328. package/react/deprecated/ActionMenu/ActionMenuItem.jsx +4 -5
  329. package/react/deprecated/ActionMenu/ActionMenuItemWrapper.jsx +4 -4
  330. package/react/deprecated/ActionMenu/ActionMenuRadio.jsx +1 -2
  331. package/react/deprecated/ActionMenu/ActionMenuWrapper.jsx +3 -4
  332. package/react/deprecated/ActionMenu/Actions/ActionsItems.jsx +6 -6
  333. package/react/deprecated/ActionMenu/Actions/call.js +2 -2
  334. package/react/deprecated/ActionMenu/Actions/emailTo.js +2 -2
  335. package/react/deprecated/ActionMenu/Actions/locales/withActionsLocales.jsx +1 -2
  336. package/react/deprecated/ActionMenu/Actions/modify.js +2 -2
  337. package/react/deprecated/ActionMenu/Actions/smsTo.js +2 -2
  338. package/react/deprecated/ActionMenu/Actions/viewInContacts.js +2 -2
  339. package/react/deprecated/ActionMenu/NotInlineWrapper.jsx +1 -1
  340. package/react/deprecated/ActionMenu/index.jsx +7 -9
  341. package/react/deprecated/ActionMenu/index.spec.jsx +10 -22
  342. package/react/deprecated/Alerter/Alert.jsx +3 -4
  343. package/react/deprecated/Alerter/alerter.spec.js +4 -17
  344. package/react/deprecated/Alerter/index.jsx +3 -2
  345. package/react/deprecated/BottomDrawer/index.jsx +4 -4
  346. package/react/deprecated/Button/index.jsx +3 -3
  347. package/react/deprecated/ButtonAction/index.jsx +2 -1
  348. package/react/deprecated/Chip/index.jsx +1 -0
  349. package/react/deprecated/CompositeRow/index.jsx +3 -4
  350. package/react/deprecated/GridItem/index.jsx +4 -3
  351. package/react/deprecated/Infos/index.jsx +5 -12
  352. package/react/deprecated/InfosCarrousel/index.jsx +4 -6
  353. package/react/deprecated/InfosCarrousel/index.spec.jsx +4 -8
  354. package/react/deprecated/InlineCard/index.jsx +1 -1
  355. package/react/deprecated/IntentModal/IntentModal.jsx +4 -5
  356. package/react/deprecated/IntentOpener/IntentOpener.jsx +2 -2
  357. package/react/deprecated/Media/Media.jsx +3 -2
  358. package/react/deprecated/Menus/index.js +4 -4
  359. package/react/deprecated/Modal/ModalBackButton.jsx +3 -3
  360. package/react/deprecated/Modal/ModalButtons.jsx +2 -1
  361. package/react/deprecated/Modal/ModalContent.jsx +3 -2
  362. package/react/deprecated/Modal/ModalCross.jsx +3 -4
  363. package/react/deprecated/Modal/ModalEffects.ts +3 -3
  364. package/react/deprecated/Modal/ModalFooter.jsx +2 -1
  365. package/react/deprecated/Modal/ModalHeader.jsx +2 -1
  366. package/react/deprecated/Modal/ModalSection.jsx +2 -1
  367. package/react/deprecated/Modal/index.jsx +13 -12
  368. package/react/deprecated/Modal/index.spec.jsx +3 -6
  369. package/react/deprecated/NarrowContent/index.jsx +2 -1
  370. package/react/deprecated/Overlay/index.jsx +3 -2
  371. package/react/deprecated/PercentageBar/index.jsx +3 -2
  372. package/react/deprecated/PercentageLine/index.jsx +3 -2
  373. package/react/deprecated/PushClientButton/index.jsx +3 -4
  374. package/react/deprecated/PushClientButton/index.spec.jsx +1 -2
  375. package/react/deprecated/QuotaAlert/index.jsx +1 -1
  376. package/react/deprecated/Radio/index.jsx +3 -3
  377. package/react/deprecated/Radio/index.spec.jsx +3 -4
  378. package/react/deprecated/RaisedList/index.js +1 -1
  379. package/react/deprecated/Table/index.jsx +1 -1
  380. package/react/deprecated/ViewStack/ModalStack.jsx +2 -1
  381. package/react/deprecated/ViewStack/ViewStack.jsx +2 -1
  382. package/react/deprecated/ViewStack/example.jsx +1 -0
  383. package/react/deprecated/ViewStack/index.spec.jsx +6 -9
  384. package/react/examples.spec.jsx +2 -1
  385. package/react/helpers/appDataset.spec.js +1 -0
  386. package/react/helpers/tracker.jsx +1 -0
  387. package/react/helpers/tracker.spec.js +1 -1
  388. package/react/helpers/withBreakpoints.jsx +33 -29
  389. package/react/hooks/useBrowserOffline.js +9 -6
  390. package/react/hooks/useBrowserOffline.spec.js +2 -1
  391. package/react/hooks/useConfirmExit/index.jsx +5 -6
  392. package/react/hooks/useConfirmExit/index.spec.js +8 -5
  393. package/react/hooks/useCycle.spec.jsx +1 -0
  394. package/react/hooks/useEventListener.js +1 -0
  395. package/react/hooks/useEventListener.spec.js +2 -1
  396. package/react/hooks/usePeriodicRender.spec.js +2 -1
  397. package/react/hooks/useRealtime.spec.js +2 -1
  398. package/react/hooks/useScroll.jsx +1 -1
  399. package/react/hooks/useScroll.spec.jsx +1 -0
  400. package/react/hooks/useSetFlagshipUi/helpers.js +0 -1
  401. package/react/hooks/useSetFlagshipUi/useSetFlagshipUI.spec.ts +3 -1
  402. package/react/hooks/useSetFlagshipUi/useSetFlagshipUI.ts +3 -3
  403. package/react/legacy/Breadcrumbs/index.jsx +4 -5
  404. package/react/providers/Alert/index.jsx +1 -1
  405. package/react/providers/Breakpoints/index.jsx +1 -1
  406. package/react/providers/CozyTheme/CozyThemeWithQuery.jsx +1 -1
  407. package/react/providers/CozyTheme/DumbCozyTheme.jsx +6 -7
  408. package/react/providers/CozyTheme/index.jsx +2 -2
  409. package/react/providers/I18n/createUseI18n.jsx +2 -2
  410. package/react/providers/I18n/format.jsx +7 -8
  411. package/react/providers/I18n/helpers.js +2 -2
  412. package/react/providers/I18n/index.jsx +2 -2
  413. package/react/providers/I18n/index.spec.jsx +3 -2
  414. package/react/providers/I18n/translate.jsx +3 -2
  415. package/react/providers/I18n/withLocales.jsx +5 -3
  416. package/react/providers/I18n/withLocales.spec.jsx +1 -0
  417. package/react/providers/I18n/withOnlyLocales.jsx +4 -2
  418. package/react/providers/Intent/index.jsx +1 -1
  419. package/react/types.d.ts +4 -0
  420. package/react/utils/color.js +1 -4
  421. package/react/utils.jsx +14 -16
  422. package/scripts/screenshots/prepares.js +4 -1
  423. package/scripts/screenshots.js +1 -1
  424. package/transpiled/react/AccordionSummary/index.js +1 -1
  425. package/transpiled/react/ActionsBar/ResponsiveAction.js +3 -3
  426. package/transpiled/react/ActionsBar/index.js +10 -10
  427. package/transpiled/react/ActionsBar/locales/withActionsLocales.js +1 -1
  428. package/transpiled/react/ActionsMenu/Actions/call.js +3 -3
  429. package/transpiled/react/ActionsMenu/Actions/emailTo.js +3 -3
  430. package/transpiled/react/ActionsMenu/Actions/locales/withActionsLocales.js +2 -2
  431. package/transpiled/react/ActionsMenu/Actions/modify.js +3 -3
  432. package/transpiled/react/ActionsMenu/Actions/others.js +1 -1
  433. package/transpiled/react/ActionsMenu/Actions/print.js +4 -4
  434. package/transpiled/react/ActionsMenu/Actions/smsTo.js +3 -3
  435. package/transpiled/react/ActionsMenu/Actions/viewInContacts.js +3 -3
  436. package/transpiled/react/ActionsMenu/ActionsItems.js +2 -2
  437. package/transpiled/react/ActionsMenu/ActionsMenuItem.js +4 -4
  438. package/transpiled/react/ActionsMenu/ActionsMenuMobileHeader.js +1 -1
  439. package/transpiled/react/ActionsMenu/ActionsMenuWrapper.js +4 -4
  440. package/transpiled/react/ActionsMenu/index.js +2 -2
  441. package/transpiled/react/Alert/index.js +5 -5
  442. package/transpiled/react/AppIcon/index.js +13 -3
  443. package/transpiled/react/AppLinker/index.js +2 -2
  444. package/transpiled/react/AppSections/Sections.js +50 -16
  445. package/transpiled/react/AppSections/categories.js +31 -3
  446. package/transpiled/react/AppSections/components/AppsSection.js +6 -6
  447. package/transpiled/react/AppSections/components/DropdownFilter.js +5 -5
  448. package/transpiled/react/AppSections/constants.js +5 -1
  449. package/transpiled/react/AppSections/generateI18nConfig.d.ts +6 -0
  450. package/transpiled/react/AppSections/generateI18nConfig.js +25 -0
  451. package/transpiled/react/AppSections/helpers.js +5 -0
  452. package/transpiled/react/AppSections/search.js +1 -1
  453. package/transpiled/react/AppTile/index.js +33 -18
  454. package/transpiled/react/AppTitle/index.js +2 -2
  455. package/transpiled/react/Avatar/index.js +4 -4
  456. package/transpiled/react/Backdrop/index.js +2 -2
  457. package/transpiled/react/Badge/index.js +2 -2
  458. package/transpiled/react/Banner/index.js +5 -5
  459. package/transpiled/react/BarButton/index.js +2 -2
  460. package/transpiled/react/BarContextProvider/index.js +3 -3
  461. package/transpiled/react/BarTitle/index.js +2 -2
  462. package/transpiled/react/BottomSheet/BottomSheet.js +10 -10
  463. package/transpiled/react/BottomSheet/BottomSheetHeader.js +1 -1
  464. package/transpiled/react/BottomSheet/BottomSheetItem.js +2 -2
  465. package/transpiled/react/BottomSheet/BottomSheetTitle.js +3 -3
  466. package/transpiled/react/Buttons/index.js +3 -3
  467. package/transpiled/react/Card/index.js +1 -1
  468. package/transpiled/react/Checkbox/index.js +3 -3
  469. package/transpiled/react/Chips/index.js +2 -2
  470. package/transpiled/react/CipherIcon/index.js +4 -4
  471. package/transpiled/react/Circle/index.js +2 -2
  472. package/transpiled/react/CircleButton/index.js +3 -3
  473. package/transpiled/react/CircularChart/CircularChartProgress.js +2 -2
  474. package/transpiled/react/CircularChart/CircularProgressWithBackground.js +2 -2
  475. package/transpiled/react/CircularChart/index.js +2 -2
  476. package/transpiled/react/ContactPicker/index.js +3 -3
  477. package/transpiled/react/ContactsList/ContactRow.js +4 -4
  478. package/transpiled/react/ContactsList/Contacts/ContactCozy.js +1 -1
  479. package/transpiled/react/ContactsList/Contacts/ContactEmail.js +1 -1
  480. package/transpiled/react/ContactsList/Contacts/ContactIdentity.js +2 -2
  481. package/transpiled/react/ContactsList/Contacts/ContactName.js +2 -2
  482. package/transpiled/react/ContactsList/Contacts/ContactPhone.js +1 -1
  483. package/transpiled/react/ContactsList/ContactsList.js +6 -6
  484. package/transpiled/react/ContactsList/locales/withContactsListLocales.js +1 -1
  485. package/transpiled/react/ContactsListModal/AddContact/AddContactContent.js +7 -7
  486. package/transpiled/react/ContactsListModal/AddContact/AddContactDialog.js +3 -3
  487. package/transpiled/react/ContactsListModal/ContactsListContent.js +2 -2
  488. package/transpiled/react/ContactsListModal/ContactsListModal.js +14 -14
  489. package/transpiled/react/ContactsListModal/ContactsListModalWithQuery.js +2 -2
  490. package/transpiled/react/ContactsListModal/EmptyMessage.js +1 -1
  491. package/transpiled/react/ContactsListModal/MobileHeader.js +4 -4
  492. package/transpiled/react/ContactsListModal/index.js +2 -2
  493. package/transpiled/react/ContactsListModal/withContactsListLocales.js +1 -1
  494. package/transpiled/react/Counter/index.js +1 -1
  495. package/transpiled/react/CozyDialogs/ConfirmDialog.js +4 -4
  496. package/transpiled/react/CozyDialogs/Dialog.js +4 -4
  497. package/transpiled/react/CozyDialogs/DialogBackButton.js +5 -5
  498. package/transpiled/react/CozyDialogs/DialogCloseButton.js +6 -6
  499. package/transpiled/react/CozyDialogs/DialogTransition.js +3 -3
  500. package/transpiled/react/CozyDialogs/FixedActionsDialog.js +4 -4
  501. package/transpiled/react/CozyDialogs/FixedDialog.js +4 -4
  502. package/transpiled/react/CozyDialogs/IllustrationDialog.js +4 -4
  503. package/transpiled/react/CozyDialogs/PermissionDialog.js +4 -4
  504. package/transpiled/react/CozyDialogs/SpecificDialogs/AllowLocationDialog.js +5 -5
  505. package/transpiled/react/CozyDialogs/SpecificDialogs/AuthentificationDialog.js +6 -6
  506. package/transpiled/react/CozyDialogs/SpecificDialogs/InstallFlagshipAppDialog.js +5 -5
  507. package/transpiled/react/CozyDialogs/SpecificDialogs/withSpecificDialogsLocales.js +1 -1
  508. package/transpiled/react/CozyDialogs/TopAnchoredDialog.js +1 -1
  509. package/transpiled/react/CozyDialogs/useCozyDialog.js +2 -2
  510. package/transpiled/react/DateMonthPicker/index.js +8 -8
  511. package/transpiled/react/Dialog/DialogEffects.d.ts +1 -1
  512. package/transpiled/react/Dialog/DialogEffects.js +3 -4
  513. package/transpiled/react/Dialog/index.js +2 -2
  514. package/transpiled/react/Divider/TextDivider/index.js +2 -2
  515. package/transpiled/react/Divider/index.js +2 -2
  516. package/transpiled/react/DropdownButton/index.js +3 -3
  517. package/transpiled/react/DropdownText/index.js +3 -3
  518. package/transpiled/react/Empty/index.js +3 -3
  519. package/transpiled/react/Fab/ExtendableFab.js +1 -1
  520. package/transpiled/react/Field/index.js +8 -8
  521. package/transpiled/react/Figure/Figure.js +2 -2
  522. package/transpiled/react/Figure/FigureBlock.js +3 -3
  523. package/transpiled/react/FileImageLoader/index.js +1 -1
  524. package/transpiled/react/FileInput/index.js +2 -2
  525. package/transpiled/react/FilePath/index.js +1 -1
  526. package/transpiled/react/FilePathLink/index.js +1 -1
  527. package/transpiled/react/FilePicker/FilePickerBody.js +4 -4
  528. package/transpiled/react/FilePicker/FilePickerBodyItem.js +14 -14
  529. package/transpiled/react/FilePicker/FilePickerBreadcrumb.js +5 -5
  530. package/transpiled/react/FilePicker/FilePickerFooter.js +3 -3
  531. package/transpiled/react/FilePicker/FilePickerHeader.js +8 -8
  532. package/transpiled/react/FilePicker/index.js +6 -6
  533. package/transpiled/react/Filename/index.js +2 -2
  534. package/transpiled/react/GhostFileBadge/index.js +1 -1
  535. package/transpiled/react/Hero/index.js +1 -1
  536. package/transpiled/react/HistoryRow/index.js +7 -7
  537. package/transpiled/react/I18n/index.js +1 -1
  538. package/transpiled/react/I18n/withLocales.js +1 -1
  539. package/transpiled/react/Icon/Sprite.js +1 -1
  540. package/transpiled/react/Icon/index.js +2 -2
  541. package/transpiled/react/IconButton/index.js +3 -3
  542. package/transpiled/react/IconStack/index.js +2 -2
  543. package/transpiled/react/InfosBadge/index.js +1 -1
  544. package/transpiled/react/Input/index.js +1 -1
  545. package/transpiled/react/InputGroup/index.js +1 -1
  546. package/transpiled/react/IntentDialogOpener/IntentDialogOpener.js +2 -2
  547. package/transpiled/react/IntentHeader/index.js +2 -2
  548. package/transpiled/react/IntentIframe/IntentIframe.js +4 -4
  549. package/transpiled/react/IntentWrapper/index.js +2 -2
  550. package/transpiled/react/Label/index.js +1 -1
  551. package/transpiled/react/Labs/CollectionField/index.js +8 -8
  552. package/transpiled/react/Labs/ExperimentalDialog/index.js +1 -1
  553. package/transpiled/react/Labs/PasswordInput/index.js +5 -5
  554. package/transpiled/react/Layout/Layout.js +2 -2
  555. package/transpiled/react/ListItem/ExpandedAttributes/ExpandedAttribute.js +5 -5
  556. package/transpiled/react/ListItem/ExpandedAttributes/index.js +4 -4
  557. package/transpiled/react/ListItem/ListItemBase/Renaming/RenameDialog.js +1 -1
  558. package/transpiled/react/ListItem/ListItemBase/Renaming/RenameInput.js +4 -4
  559. package/transpiled/react/ListItem/ListItemBase/index.js +10 -10
  560. package/transpiled/react/ListItem/ListItemByDoc/index.js +3 -3
  561. package/transpiled/react/ListItem/ListItemContact/index.js +2 -2
  562. package/transpiled/react/ListItem/ListItemContact/useActions.js +1 -1
  563. package/transpiled/react/ListItem/ListItemFile/ExpirationAnnotation.js +1 -1
  564. package/transpiled/react/ListItem/ListItemFile/ItemIcon.js +4 -4
  565. package/transpiled/react/ListItem/ListItemFile/PrimaryText.js +1 -1
  566. package/transpiled/react/ListItem/ListItemFile/SecondaryText.js +2 -2
  567. package/transpiled/react/ListItem/ListItemFile/index.js +4 -4
  568. package/transpiled/react/ListItem/index.js +4 -4
  569. package/transpiled/react/ListItemIcon/index.js +1 -1
  570. package/transpiled/react/ListItemText/index.js +2 -2
  571. package/transpiled/react/ListSubheader/index.js +3 -3
  572. package/transpiled/react/LoadMore/index.js +2 -2
  573. package/transpiled/react/MenuItem/index.js +1 -1
  574. package/transpiled/react/MidEllipsis/index.js +2 -2
  575. package/transpiled/react/MuiCozyTheme/index.js +2 -2
  576. package/transpiled/react/MuiCozyTheme/makeTheme.js +6 -6
  577. package/transpiled/react/MuiTabs/index.js +2 -2
  578. package/transpiled/react/Nav/index.js +4 -4
  579. package/transpiled/react/Nav/locales/withNavLocales.js +1 -1
  580. package/transpiled/react/NavigationList/index.js +6 -6
  581. package/transpiled/react/NestedSelect/BottomSheet.js +4 -4
  582. package/transpiled/react/NestedSelect/ItemRow.js +4 -4
  583. package/transpiled/react/NestedSelect/Modal.js +6 -6
  584. package/transpiled/react/NestedSelect/NestedSelect.js +6 -6
  585. package/transpiled/react/NestedSelect/NestedSelectResponsive.js +1 -1
  586. package/transpiled/react/OrderedList/index.js +2 -2
  587. package/transpiled/react/Panel/index.js +1 -1
  588. package/transpiled/react/PasswordExample/index.js +2 -2
  589. package/transpiled/react/PasswordField/index.js +8 -8
  590. package/transpiled/react/Paywall/MaxAccountsByKonnectorPaywall.js +1 -1
  591. package/transpiled/react/Paywall/MaxAccountsPaywall.js +1 -1
  592. package/transpiled/react/Paywall/MaxDaysToCapturePaywall.js +1 -1
  593. package/transpiled/react/Paywall/MaxPapersPaywall.js +1 -1
  594. package/transpiled/react/Paywall/OnlyOfficePaywall.js +1 -1
  595. package/transpiled/react/Paywall/PasswordSharingPaywall.js +1 -1
  596. package/transpiled/react/Paywall/Paywall.js +6 -6
  597. package/transpiled/react/Paywall/QuotaPaywall.js +1 -1
  598. package/transpiled/react/Paywall/locales/withPaywallLocales.js +1 -1
  599. package/transpiled/react/PieChart/index.js +7 -7
  600. package/transpiled/react/PointerAlert/index.js +4 -4
  601. package/transpiled/react/Popup/index.js +1 -1
  602. package/transpiled/react/PopupOpener/index.js +2 -2
  603. package/transpiled/react/ProgressionBanner/index.js +2 -2
  604. package/transpiled/react/QualificationGrid/index.js +11 -11
  605. package/transpiled/react/QualificationGrid/locales/withLocales.js +1 -1
  606. package/transpiled/react/QualificationItem/index.js +2 -2
  607. package/transpiled/react/Radios/index.js +1 -1
  608. package/transpiled/react/SearchBar/index.js +8 -8
  609. package/transpiled/react/SearchBar/locales/withOnlyLocales.js +1 -1
  610. package/transpiled/react/SelectBox/ControlDefault.js +1 -1
  611. package/transpiled/react/SelectBox/SelectBox.js +8 -8
  612. package/transpiled/react/SelectBox/SelectBoxWithFixedOptions.js +2 -2
  613. package/transpiled/react/SelectionBar/SelectionBarAction.js +6 -6
  614. package/transpiled/react/SelectionBar/SelectionBarMore.js +6 -6
  615. package/transpiled/react/SelectionBar/index.js +9 -9
  616. package/transpiled/react/SelectionBar/useMaxActions.js +2 -2
  617. package/transpiled/react/ShortcutTile/index.d.ts +15 -0
  618. package/transpiled/react/ShortcutTile/index.js +53 -0
  619. package/transpiled/react/Sidebar/index.js +2 -2
  620. package/transpiled/react/Skeletons/ListItemSkeleton.js +2 -2
  621. package/transpiled/react/Skeletons/ListSkeleton.js +2 -2
  622. package/transpiled/react/Snackbar/index.js +1 -1
  623. package/transpiled/react/Spinner/index.js +6 -6
  624. package/transpiled/react/SquareAppIcon/index.js +16 -16
  625. package/transpiled/react/Stack/index.js +1 -1
  626. package/transpiled/react/Stepper/testing.js +1 -1
  627. package/transpiled/react/Tabs/index.js +2 -2
  628. package/transpiled/react/TextField/MobileSelect.js +5 -5
  629. package/transpiled/react/TextField/index.js +2 -2
  630. package/transpiled/react/Textarea/index.js +1 -1
  631. package/transpiled/react/Thumbnail/index.js +2 -2
  632. package/transpiled/react/Tile/index.d.ts +68 -0
  633. package/transpiled/react/Tile/index.js +3 -3
  634. package/transpiled/react/Toggle/index.js +2 -2
  635. package/transpiled/react/Typography/index.d.ts +3 -0
  636. package/transpiled/react/Typography/index.js +1 -1
  637. package/transpiled/react/UnorderedList/index.js +1 -1
  638. package/transpiled/react/UploadQueue/index.js +37 -37
  639. package/transpiled/react/Viewer/Footer/BottomSheetContent.js +1 -1
  640. package/transpiled/react/Viewer/Footer/DownloadButton.js +3 -3
  641. package/transpiled/react/Viewer/Footer/FooterActionButtons.js +1 -1
  642. package/transpiled/react/Viewer/Footer/FooterContent.js +5 -5
  643. package/transpiled/react/Viewer/Footer/ForwardButton.js +5 -5
  644. package/transpiled/react/Viewer/Footer/ForwardOrDownloadButton.js +2 -2
  645. package/transpiled/react/Viewer/Footer/Sharing.js +2 -2
  646. package/transpiled/react/Viewer/NoViewer/DownloadButton.js +3 -3
  647. package/transpiled/react/Viewer/NoViewer/FileIcon.js +2 -2
  648. package/transpiled/react/Viewer/NoViewer/NoViewer.js +3 -3
  649. package/transpiled/react/Viewer/Panel/ActionMenuDesktop.js +3 -3
  650. package/transpiled/react/Viewer/Panel/ActionMenuMobile.js +6 -6
  651. package/transpiled/react/Viewer/Panel/ActionMenuWrapper.js +4 -4
  652. package/transpiled/react/Viewer/Panel/Certifications.js +5 -5
  653. package/transpiled/react/Viewer/Panel/PanelContent.js +5 -5
  654. package/transpiled/react/Viewer/Panel/Qualification.js +5 -5
  655. package/transpiled/react/Viewer/Panel/QualificationListItemContact.js +9 -9
  656. package/transpiled/react/Viewer/Panel/QualificationListItemDate.js +7 -7
  657. package/transpiled/react/Viewer/Panel/QualificationListItemInformation.js +7 -7
  658. package/transpiled/react/Viewer/Panel/QualificationListItemOther.js +7 -7
  659. package/transpiled/react/Viewer/Panel/QualificationListItemText.js +1 -1
  660. package/transpiled/react/Viewer/Panel/getPanelBlocks.js +1 -1
  661. package/transpiled/react/Viewer/Viewer.js +4 -4
  662. package/transpiled/react/Viewer/ViewerContainer.js +12 -12
  663. package/transpiled/react/Viewer/ViewerInformationsWrapper.js +6 -6
  664. package/transpiled/react/Viewer/ViewerWithCustomPanelAndFooter.js +4 -4
  665. package/transpiled/react/Viewer/ViewersByFile/AudioViewer.js +4 -4
  666. package/transpiled/react/Viewer/ViewersByFile/BlankPaperViewer.js +6 -6
  667. package/transpiled/react/Viewer/ViewersByFile/ImageViewer.js +3 -3
  668. package/transpiled/react/Viewer/ViewersByFile/NoNetworkViewer.js +4 -4
  669. package/transpiled/react/Viewer/ViewersByFile/OnlyOfficeViewer.js +2 -2
  670. package/transpiled/react/Viewer/ViewersByFile/PdfJsViewer.js +9 -9
  671. package/transpiled/react/Viewer/ViewersByFile/PdfMobileViewer.js +5 -5
  672. package/transpiled/react/Viewer/ViewersByFile/ShortcutViewer.js +3 -3
  673. package/transpiled/react/Viewer/ViewersByFile/TextViewer.js +7 -7
  674. package/transpiled/react/Viewer/ViewersByFile/VideoViewer.js +1 -1
  675. package/transpiled/react/Viewer/components/ExpirationAlert.js +2 -2
  676. package/transpiled/react/Viewer/components/ExpirationAnnotation.js +1 -1
  677. package/transpiled/react/Viewer/components/Footer.js +1 -1
  678. package/transpiled/react/Viewer/components/InformationPanel.js +1 -1
  679. package/transpiled/react/Viewer/components/Navigation.js +4 -4
  680. package/transpiled/react/Viewer/components/PdfToolbarButton.js +1 -1
  681. package/transpiled/react/Viewer/components/PrintButton.js +5 -5
  682. package/transpiled/react/Viewer/components/Toolbar.js +15 -15
  683. package/transpiled/react/Viewer/components/ToolbarFilePath.js +1 -1
  684. package/transpiled/react/Viewer/components/ViewerByFile.js +9 -9
  685. package/transpiled/react/Viewer/components/ViewerControls.js +8 -8
  686. package/transpiled/react/Viewer/components/ViewerSpinner.js +1 -1
  687. package/transpiled/react/Viewer/hoc/withFileUrl.js +2 -2
  688. package/transpiled/react/Wizard/index.js +8 -7
  689. package/transpiled/react/deprecated/ActionMenu/ActionMenuEffects.js +3 -3
  690. package/transpiled/react/deprecated/ActionMenu/ActionMenuHeader.js +2 -2
  691. package/transpiled/react/deprecated/ActionMenu/ActionMenuItem.js +4 -4
  692. package/transpiled/react/deprecated/ActionMenu/ActionMenuItemWrapper.js +4 -4
  693. package/transpiled/react/deprecated/ActionMenu/ActionMenuRadio.js +1 -1
  694. package/transpiled/react/deprecated/ActionMenu/ActionMenuWrapper.js +3 -3
  695. package/transpiled/react/deprecated/ActionMenu/Actions/ActionsItems.js +2 -2
  696. package/transpiled/react/deprecated/ActionMenu/Actions/call.js +2 -2
  697. package/transpiled/react/deprecated/ActionMenu/Actions/emailTo.js +2 -2
  698. package/transpiled/react/deprecated/ActionMenu/Actions/locales/withActionsLocales.js +1 -1
  699. package/transpiled/react/deprecated/ActionMenu/Actions/modify.js +2 -2
  700. package/transpiled/react/deprecated/ActionMenu/Actions/smsTo.js +2 -2
  701. package/transpiled/react/deprecated/ActionMenu/Actions/viewInContacts.js +2 -2
  702. package/transpiled/react/deprecated/ActionMenu/NotInlineWrapper.js +1 -1
  703. package/transpiled/react/deprecated/ActionMenu/index.js +7 -7
  704. package/transpiled/react/deprecated/Alerter/Alert.js +3 -3
  705. package/transpiled/react/deprecated/Alerter/index.js +2 -2
  706. package/transpiled/react/deprecated/BottomDrawer/index.js +2 -2
  707. package/transpiled/react/deprecated/Button/index.js +1 -1
  708. package/transpiled/react/deprecated/ButtonAction/index.js +1 -1
  709. package/transpiled/react/deprecated/CompositeRow/index.js +3 -3
  710. package/transpiled/react/deprecated/GridItem/index.js +3 -3
  711. package/transpiled/react/deprecated/Infos/index.js +8 -8
  712. package/transpiled/react/deprecated/InfosCarrousel/index.js +4 -4
  713. package/transpiled/react/deprecated/InlineCard/index.js +1 -1
  714. package/transpiled/react/deprecated/IntentModal/IntentModal.js +3 -3
  715. package/transpiled/react/deprecated/IntentOpener/IntentOpener.js +2 -2
  716. package/transpiled/react/deprecated/Media/Media.js +2 -2
  717. package/transpiled/react/deprecated/Menus/index.js +4 -4
  718. package/transpiled/react/deprecated/Modal/ModalBackButton.js +2 -2
  719. package/transpiled/react/deprecated/Modal/ModalButtons.js +1 -1
  720. package/transpiled/react/deprecated/Modal/ModalContent.js +2 -2
  721. package/transpiled/react/deprecated/Modal/ModalCross.js +5 -5
  722. package/transpiled/react/deprecated/Modal/ModalEffects.js +3 -3
  723. package/transpiled/react/deprecated/Modal/ModalFooter.js +1 -1
  724. package/transpiled/react/deprecated/Modal/ModalHeader.js +1 -1
  725. package/transpiled/react/deprecated/Modal/ModalSection.js +1 -1
  726. package/transpiled/react/deprecated/Modal/index.js +14 -14
  727. package/transpiled/react/deprecated/NarrowContent/index.js +1 -1
  728. package/transpiled/react/deprecated/Overlay/index.js +4 -4
  729. package/transpiled/react/deprecated/PercentageBar/index.js +2 -2
  730. package/transpiled/react/deprecated/PercentageLine/index.js +2 -2
  731. package/transpiled/react/deprecated/PushClientButton/index.js +4 -4
  732. package/transpiled/react/deprecated/QuotaAlert/index.js +1 -1
  733. package/transpiled/react/deprecated/Radio/index.js +2 -2
  734. package/transpiled/react/deprecated/RaisedList/index.js +1 -1
  735. package/transpiled/react/deprecated/Table/index.js +1 -1
  736. package/transpiled/react/deprecated/ViewStack/ModalStack.js +1 -1
  737. package/transpiled/react/deprecated/ViewStack/ViewStack.js +2 -2
  738. package/transpiled/react/helpers/withBreakpoints.js +1 -1
  739. package/transpiled/react/hooks/useConfirmExit/index.js +5 -5
  740. package/transpiled/react/hooks/useScroll.js +1 -1
  741. package/transpiled/react/hooks/useSetFlagshipUi/helpers.d.ts +0 -1
  742. package/transpiled/react/hooks/useSetFlagshipUi/helpers.js +0 -1
  743. package/transpiled/react/hooks/useSetFlagshipUi/useSetFlagshipUI.js +3 -3
  744. package/transpiled/react/legacy/Breadcrumbs/index.js +5 -5
  745. package/transpiled/react/providers/Alert/index.js +1 -1
  746. package/transpiled/react/providers/Breakpoints/index.js +1 -1
  747. package/transpiled/react/providers/CozyTheme/CozyThemeWithQuery.js +1 -1
  748. package/transpiled/react/providers/CozyTheme/DumbCozyTheme.js +4 -4
  749. package/transpiled/react/providers/CozyTheme/index.js +2 -2
  750. package/transpiled/react/providers/I18n/createUseI18n.js +2 -2
  751. package/transpiled/react/providers/I18n/format.js +1 -1
  752. package/transpiled/react/providers/I18n/helpers.js +2 -2
  753. package/transpiled/react/providers/I18n/index.js +2 -2
  754. package/transpiled/react/providers/I18n/withLocales.js +1 -1
  755. package/transpiled/react/providers/Intent/index.js +1 -1
  756. package/transpiled/react/stylesheet.css +1 -1
  757. package/transpiled/react/types.d.js +0 -0
@@ -1075,6 +1075,11 @@ exports[`AppsSection component should render dropdown filter on mobile if no nav
1075
1075
  "type": "webapp",
1076
1076
  "value": "partners",
1077
1077
  },
1078
+ Object {
1079
+ "label": "Shortcuts",
1080
+ "secondary": false,
1081
+ "value": "shortcuts",
1082
+ },
1078
1083
  Object {
1079
1084
  "label": "Services",
1080
1085
  "secondary": false,
@@ -1476,6 +1481,11 @@ exports[`AppsSection component should render dropdown filter on tablet if no nav
1476
1481
  "type": "webapp",
1477
1482
  "value": "partners",
1478
1483
  },
1484
+ Object {
1485
+ "label": "Shortcuts",
1486
+ "secondary": false,
1487
+ "value": "shortcuts",
1488
+ },
1479
1489
  Object {
1480
1490
  "label": "Services",
1481
1491
  "secondary": false,
@@ -38,21 +38,37 @@ export const groupApps = apps => multiGroupBy(apps, getAppCategory)
38
38
  * Alphabetical sort on label except for
39
39
  * - 'all' value always at the beginning
40
40
  * - 'others' value always at the end
41
+ * - 'cozy' value should be near the beginning, right after 'all'
42
+ * - items of type 'file' should appear alphabetically between 'webapp' and 'konnector'
41
43
  *
42
44
  * @param {CategoryOption} categoryA
43
45
  * @param {CategoryOption} categoryB
44
46
  * @return {Number}
45
47
  */
46
48
  export const sorter = (categoryA, categoryB) => {
47
- return (
48
- (categoryA.value === 'all' && -1) ||
49
- (categoryB.value === 'all' && 1) ||
50
- (categoryA.value === 'others' && 1) ||
51
- (categoryB.value === 'others' && -1) ||
52
- (categoryA.value === 'cozy' && -1) ||
53
- (categoryB.value === 'cozy' && 1) ||
54
- categoryA.label.localeCompare(categoryB.label)
55
- )
49
+ // Always keep 'all' at the beginning
50
+ if (categoryA.value === 'all') return -1
51
+ if (categoryB.value === 'all') return 1
52
+
53
+ // Always keep 'others' at the end
54
+ if (categoryA.value === 'others') return 1
55
+ if (categoryB.value === 'others') return -1
56
+
57
+ // Keep 'cozy' near the beginning, right after 'all'
58
+ if (categoryA.value === 'cozy') return -1
59
+ if (categoryB.value === 'cozy') return 1
60
+
61
+ // Sort by type order: webapp < file < konnector
62
+ const typeOrder = ['webapp', 'file', 'konnector']
63
+ const typeAIndex = typeOrder.indexOf(categoryA.type)
64
+ const typeBIndex = typeOrder.indexOf(categoryB.type)
65
+
66
+ if (typeAIndex !== typeBIndex) {
67
+ return typeAIndex - typeBIndex
68
+ }
69
+
70
+ // Alphabetical sort on label for the rest
71
+ return categoryA.label.localeCompare(categoryB.label)
56
72
  }
57
73
 
58
74
  export const addLabel = (cat, t) => ({
@@ -82,7 +98,7 @@ export const generateOptionsFromApps = (apps, options = {}) => {
82
98
  ]
83
99
  : []
84
100
 
85
- for (const type of [APP_TYPE.WEBAPP, APP_TYPE.KONNECTOR]) {
101
+ for (const type of [APP_TYPE.WEBAPP, APP_TYPE.FILE, APP_TYPE.KONNECTOR]) {
86
102
  const catApps = groupApps(apps.filter(a => a.type === type))
87
103
  // Add an entry to filter by all konnectors
88
104
  if (type === APP_TYPE.KONNECTOR) {
@@ -93,11 +109,19 @@ export const generateOptionsFromApps = (apps, options = {}) => {
93
109
  })
94
110
  )
95
111
  }
112
+ if (type === APP_TYPE.FILE) {
113
+ allCategoryOptions.push(
114
+ addLabel({
115
+ value: 'shortcuts',
116
+ secondary: false
117
+ })
118
+ )
119
+ }
96
120
  const categoryOptions = Object.keys(catApps).map(cat => {
97
121
  return addLabel({
98
122
  value: cat,
99
123
  type: type,
100
- secondary: type === APP_TYPE.KONNECTOR
124
+ secondary: type === APP_TYPE.KONNECTOR || type === APP_TYPE.FILE
101
125
  })
102
126
  })
103
127
 
@@ -2,12 +2,12 @@
2
2
 
3
3
  /* eslint-env jest */
4
4
 
5
- import * as catUtils from './categories'
5
+ import mapValues from 'lodash/mapValues'
6
6
 
7
+ import * as catUtils from './categories'
8
+ import en from './locales/en'
7
9
  import { I18nContext } from '../jestLib/I18n'
8
10
  import mockApps from '../mocks/apps'
9
- import en from './locales/en'
10
- import mapValues from 'lodash/mapValues'
11
11
 
12
12
  const i18nContext = I18nContext({
13
13
  locale: en
@@ -104,6 +104,7 @@ describe('generateOptionsFromApps', () => {
104
104
  type: 'webapp',
105
105
  value: 'others'
106
106
  },
107
+ { label: 'Shortcuts', secondary: false, value: 'shortcuts' },
107
108
  {
108
109
  label: 'Services',
109
110
  secondary: false,
@@ -156,6 +157,11 @@ describe('generateOptionsFromApps', () => {
156
157
  type: 'webapp',
157
158
  value: 'others'
158
159
  },
160
+ {
161
+ label: 'Shortcuts',
162
+ secondary: false,
163
+ value: 'shortcuts'
164
+ },
159
165
  {
160
166
  label: 'Services',
161
167
  secondary: false,
@@ -1,11 +1,12 @@
1
- import React, { useMemo } from 'react'
1
+ import sortBy from 'lodash/sortBy'
2
2
  import PropTypes from 'prop-types'
3
- import { useI18n } from '../../providers/I18n'
3
+ import React, { useMemo } from 'react'
4
+
5
+ import styles from './AppsSection.styl'
6
+ import AppTile from '../../AppTile'
4
7
  import useBreakpoints from '../../providers/Breakpoints'
8
+ import { useI18n } from '../../providers/I18n'
5
9
  import { getTranslatedManifestProperty } from '../helpers'
6
- import sortBy from 'lodash/sortBy'
7
- import AppTile from '../../AppTile'
8
- import styles from './AppsSection.styl'
9
10
 
10
11
  const makeNameGetter = t => app => getTranslatedManifestProperty(app, 'name', t)
11
12
 
@@ -2,19 +2,18 @@
2
2
 
3
3
  /* eslint-env jest */
4
4
 
5
- import React from 'react'
6
5
  import { mount } from 'enzyme'
6
+ import React from 'react'
7
7
 
8
8
  import { CozyProvider } from 'cozy-client'
9
9
 
10
- import mockApps from '../../mocks/apps'
11
- import en from '../locales/en'
12
- import { I18nContext } from '../../jestLib/I18n'
10
+ import { AppsSection } from './AppsSection'
13
11
  import Tile, { TileTitle, TileSubtitle, TileFooter } from '../../Tile'
12
+ import { I18nContext } from '../../jestLib/I18n'
13
+ import mockApps from '../../mocks/apps'
14
14
  import { BreakpointsProvider } from '../../providers/Breakpoints'
15
15
  import { I18n } from '../../providers/I18n'
16
-
17
- import { AppsSection } from './AppsSection'
16
+ import en from '../locales/en'
18
17
 
19
18
  const i18nContext = I18nContext({ locale: en })
20
19
  const tMock = i18nContext.t
@@ -1,13 +1,12 @@
1
- import React, { Component } from 'react'
2
- import PropTypes from 'prop-types'
3
1
  import cx from 'classnames'
2
+ import PropTypes from 'prop-types'
3
+ import React, { Component } from 'react'
4
4
 
5
+ import styles from './DropdownFilter.styl'
5
6
  import Icon from '../../Icon'
6
7
  import BottomIcon from '../../Icons/Bottom'
7
8
  import SelectBox from '../../SelectBox'
8
9
 
9
- import styles from './DropdownFilter.styl'
10
-
11
10
  const SmallArrow = () => (
12
11
  <Icon
13
12
  className={cx(styles.DropdownFilter__icon, 'u-mr-1')}
@@ -28,7 +28,7 @@ Array [
28
28
  "title": "Cozy Photos",
29
29
  },
30
30
  Object {
31
- "developer": null,
31
+ "developer": "By undefined",
32
32
  "status": "Update available",
33
33
  "title": "Tasky",
34
34
  },
@@ -1,4 +1,9 @@
1
1
  export const APP_TYPE = {
2
2
  KONNECTOR: 'konnector',
3
- WEBAPP: 'webapp'
3
+ WEBAPP: 'webapp',
4
+ FILE: 'file'
5
+ }
6
+
7
+ export const APP_CLASS = {
8
+ SHORTCUT: 'shortcut'
4
9
  }
@@ -0,0 +1,23 @@
1
+ export const generateI18nConfig = (categories?: {
2
+ [key: string]: string
3
+ }): {
4
+ en: Record<string, string>
5
+ fr: Record<string, string>
6
+ } => {
7
+ if (!categories) return { en: {}, fr: {} }
8
+
9
+ const i18nConfig: Record<string, string> = {}
10
+
11
+ for (const [key, value] of Object.entries(categories)) {
12
+ // Extract the final part of the path as the display name
13
+ const displayName =
14
+ value?.split('/').pop() ?? ''.replace(/([A-Z])/g, ' $1').trim()
15
+
16
+ i18nConfig[`app_categories.${key}`] = displayName
17
+ }
18
+
19
+ return {
20
+ en: i18nConfig,
21
+ fr: i18nConfig
22
+ }
23
+ }
@@ -1,8 +1,16 @@
1
1
  import _get from 'lodash/get'
2
2
 
3
+ import { APP_CLASS, APP_TYPE } from './constants'
4
+
3
5
  export const getTranslatedManifestProperty = (app, path, t) => {
4
6
  if (!t || !app || !path) return _get(app, path, '')
5
7
  return t(`apps.${app.slug}.${path}`, {
6
8
  _: _get(app, path, '')
7
9
  })
8
10
  }
11
+
12
+ export const isShortcutFile = app => {
13
+ if (!app) return false
14
+
15
+ return app.type === APP_TYPE.FILE && app.class === APP_CLASS.SHORTCUT
16
+ }
@@ -1,7 +1,7 @@
1
1
  import { getTranslatedManifestProperty } from './helpers'
2
- import { extend as extendI18n } from '../providers/I18n'
3
2
  import en from './locales/en'
4
3
  import { I18nContext } from '../jestLib/I18n'
4
+ import { extend as extendI18n } from '../providers/I18n'
5
5
 
6
6
  const i18nContext = I18nContext({ locale: en })
7
7
  const tMock = i18nContext.t
@@ -2,13 +2,13 @@
2
2
 
3
3
  /* eslint-env jest */
4
4
 
5
- import React from 'react'
6
5
  import { shallow } from 'enzyme'
7
- import { Sections } from './Sections'
6
+ import React from 'react'
8
7
 
9
- import mockApps from '../mocks/apps'
10
- import { I18nContext } from '../jestLib/I18n'
8
+ import { Sections } from './Sections'
11
9
  import en from './locales/en.json'
10
+ import { I18nContext } from '../jestLib/I18n'
11
+ import mockApps from '../mocks/apps'
12
12
 
13
13
  const i18nContext = I18nContext({ locale: en })
14
14
  const tMock = i18nContext.t
@@ -26,10 +26,12 @@
26
26
  "tech": "Tech",
27
27
  "telecom": "Telecom",
28
28
  "transport": "Transportation",
29
- "pro": "Work"
29
+ "pro": "Work",
30
+ "shortcuts": "Shortcuts"
30
31
  },
31
32
  "sections": {
32
33
  "applications": "Applications",
33
- "konnectors": "Services"
34
+ "konnectors": "Services",
35
+ "shortcuts": "Shortcuts"
34
36
  }
35
37
  }
@@ -26,10 +26,12 @@
26
26
  "tech": "Tech",
27
27
  "telecom": "Mobile",
28
28
  "transport": "Voyage et transport",
29
- "pro": "Travail"
29
+ "pro": "Travail",
30
+ "shortcuts": "Raccourcis"
30
31
  },
31
32
  "sections": {
32
33
  "applications": "Applications",
33
- "konnectors": "Services"
34
+ "konnectors": "Services",
35
+ "shortcuts": "Raccourcis"
34
36
  }
35
37
  }
@@ -1,6 +1,6 @@
1
- import overEvery from 'lodash/overEvery'
2
1
  import mapValues from 'lodash/mapValues'
3
2
  import matches from 'lodash/matches'
3
+ import overEvery from 'lodash/overEvery'
4
4
 
5
5
  import { APP_TYPE } from './constants'
6
6
 
@@ -2,14 +2,15 @@
2
2
 
3
3
  /* eslint-env jest */
4
4
 
5
- import React from 'react'
6
5
  import { render } from '@testing-library/react'
7
- import CozyClient, { CozyProvider } from 'cozy-client'
6
+ import React from 'react'
8
7
 
9
- import en from '../AppSections/locales/en.json'
10
- import I18n from '../providers/I18n'
8
+ import CozyClient from 'cozy-client'
11
9
 
12
10
  import AppTile from '.'
11
+ import en from '../AppSections/locales/en.json'
12
+ import DemoProvider from '../providers/DemoProvider'
13
+ import I18n from '../providers/I18n'
13
14
 
14
15
  const appMock = {
15
16
  slug: 'test',
@@ -41,11 +42,11 @@ const appMock2 = {
41
42
  const client = new CozyClient({})
42
43
  const Wrapper = props => {
43
44
  return (
44
- <CozyProvider client={client}>
45
+ <DemoProvider client={client}>
45
46
  <I18n dictRequire={() => en} lang="en">
46
47
  <AppTile {...props} />
47
48
  </I18n>
48
- </CozyProvider>
49
+ </DemoProvider>
49
50
  )
50
51
  }
51
52
 
@@ -1,7 +1,16 @@
1
+ import cx from 'classnames'
2
+ import PropTypes from 'prop-types'
1
3
  import React from 'react'
2
4
 
5
+ import { APP_STATUS, getCurrentStatusLabel } from './helpers'
6
+ import en from './locales/en.json'
7
+ import fr from './locales/fr.json'
8
+ import styles from './styles.styl'
3
9
  import AppIcon from '../AppIcon'
4
- import PropTypes from 'prop-types'
10
+ import { isShortcutFile } from '../AppSections/helpers.js'
11
+ import Icon from '../Icon'
12
+ import WrenchCircleIcon from '../Icons/WrenchCircle'
13
+ import { ShortcutTile } from '../ShortcutTile'
5
14
  import Tile, {
6
15
  TileTitle,
7
16
  TileSubtitle,
@@ -9,18 +18,10 @@ import Tile, {
9
18
  TileIcon,
10
19
  TileDescription
11
20
  } from '../Tile'
12
-
13
- import { createUseI18n } from '../providers/I18n'
14
- import { AppDoctype } from '../proptypes'
15
-
16
- import { APP_STATUS, getCurrentStatusLabel } from './helpers'
17
- import styles from './styles.styl'
18
- import en from './locales/en.json'
19
- import fr from './locales/fr.json'
20
- import Icon from '../Icon'
21
- import WrenchCircleIcon from '../Icons/WrenchCircle'
22
21
  import palette from '../palette'
23
- import cx from 'classnames'
22
+ import { AppDoctype } from '../proptypes'
23
+ import useBreakpoints from '../providers/Breakpoints'
24
+ import { createUseI18n } from '../providers/I18n'
24
25
 
25
26
  const locales = { en, fr }
26
27
 
@@ -49,16 +50,30 @@ export const AppTile = ({
49
50
  IconComponent: IconComponentProp,
50
51
  displaySpecificMaintenanceStyle
51
52
  }) => {
52
- const name = nameProp || app.name
53
53
  const { t } = useI18n()
54
54
  const { developer = {} } = app
55
+ const { isMobile } = useBreakpoints()
56
+
57
+ const name = nameProp || app.name
58
+
55
59
  const statusLabel = getCurrentStatusLabel(app)
56
- const statusToDisplay = Array.isArray(showStatus)
57
- ? showStatus.indexOf(statusLabel) > -1 && statusLabel
58
- : showStatus && statusLabel
60
+
61
+ const isStatusArray = Array.isArray(showStatus)
62
+
63
+ const statusToDisplay =
64
+ isShortcutFile(app) && statusLabel === APP_STATUS.installed && isMobile
65
+ ? 'favorite'
66
+ : isStatusArray
67
+ ? showStatus.indexOf(statusLabel) > -1 && statusLabel
68
+ : showStatus && statusLabel
69
+
59
70
  const IconComponent = IconComponentProp || AppIcon
71
+
60
72
  const isInMaintenanceWithSpecificDisplay =
61
73
  displaySpecificMaintenanceStyle && statusLabel === APP_STATUS.maintenance
74
+ const tileSubtitle = isShortcutFile(app)
75
+ ? app.metadata?.source
76
+ : developer.name
62
77
 
63
78
  return (
64
79
  <Tile
@@ -66,18 +81,21 @@ export const AppTile = ({
66
81
  type="button"
67
82
  onClick={onClick}
68
83
  className={cx({
69
- [styles[
70
- 'AppTile-container-maintenance'
71
- ]]: isInMaintenanceWithSpecificDisplay
84
+ [styles['AppTile-container-maintenance']]:
85
+ isInMaintenanceWithSpecificDisplay
72
86
  })}
73
87
  isSecondary={statusLabel === APP_STATUS.installed}
74
88
  >
75
89
  <TileIcon>
76
- <IconComponent
77
- app={app}
78
- className={styles['AppTile-icon']}
79
- {...getAppIconProps()}
80
- />
90
+ {isShortcutFile(app) ? (
91
+ <ShortcutTile file={app} />
92
+ ) : (
93
+ <IconComponent
94
+ app={app}
95
+ className={styles['AppTile-icon']}
96
+ {...getAppIconProps()}
97
+ />
98
+ )}
81
99
  {isInMaintenanceWithSpecificDisplay && (
82
100
  <Icon
83
101
  data-testid="icon-maintenance"
@@ -91,8 +109,8 @@ export const AppTile = ({
91
109
  <TileTitle isMultiline={!statusLabel}>
92
110
  {namePrefix ? `${namePrefix} ${name}` : name}
93
111
  </TileTitle>
94
- {developer.name && showDeveloper && (
95
- <TileSubtitle>{`${t('app_item.by')} ${developer.name}`}</TileSubtitle>
112
+ {showDeveloper && (
113
+ <TileSubtitle>{`${t('app_item.by')} ${tileSubtitle}`}</TileSubtitle>
96
114
  )}
97
115
  {statusToDisplay && (
98
116
  <TileFooter isAccent={statusLabel === APP_STATUS.update}>
@@ -3,6 +3,7 @@
3
3
  "by": "By",
4
4
  "installed": "Installed",
5
5
  "maintenance": "In maintenance",
6
- "update": "Update available"
6
+ "update": "Update available",
7
+ "favorite": "Added to home page"
7
8
  }
8
9
  }
@@ -3,6 +3,7 @@
3
3
  "by": "Par",
4
4
  "installed": "Installée",
5
5
  "maintenance": "En maintenance",
6
- "update": "Mise à jour dispo."
6
+ "update": "Mise à jour dispo.",
7
+ "favorite": "Ajouté sur la page d'accueil"
7
8
  }
8
9
  }
@@ -1,7 +1,8 @@
1
- import React from 'react'
2
- import cx from 'classnames'
3
1
  import Typography from '@material-ui/core/Typography'
2
+ import cx from 'classnames'
4
3
  import PropTypes from 'prop-types'
4
+ import React from 'react'
5
+
5
6
  import styles from './styles.styl'
6
7
 
7
8
  export const AppTitle = ({ children, tag, className, ...restProps }) => {
@@ -1,13 +1,13 @@
1
- import React from 'react'
2
1
  import cx from 'classnames'
3
- import PropTypes from 'prop-types'
4
2
  import assign from 'lodash/assign'
3
+ import PropTypes from 'prop-types'
4
+ import React from 'react'
5
5
 
6
+ import { nameToColor } from './helpers'
6
7
  import styles from './styles.styl'
8
+ import { createSizeStyle } from '../Circle'
7
9
  import Icon, { iconPropType } from '../Icon'
8
10
  import PeopleIcon from '../Icons/People'
9
- import { createSizeStyle } from '../Circle'
10
- import { nameToColor } from './helpers'
11
11
 
12
12
  const createBgColorStyle = ({ text, textId }) =>
13
13
  text ? { backgroundColor: `${nameToColor(textId || text)}` } : {}
@@ -1,7 +1,7 @@
1
- import React from 'react'
2
- import PropTypes from 'prop-types'
3
1
  import MuiBackdrop from '@material-ui/core/Backdrop'
4
2
  import cx from 'classnames'
3
+ import PropTypes from 'prop-types'
4
+ import React from 'react'
5
5
 
6
6
  import { makeStyles } from '../styles'
7
7
 
@@ -1,7 +1,7 @@
1
- import React from 'react'
1
+ import MuiBadge from '@material-ui/core/Badge'
2
2
  import cx from 'classnames'
3
3
  import PropTypes from 'prop-types'
4
- import MuiBadge from '@material-ui/core/Badge'
4
+ import React from 'react'
5
5
 
6
6
  const Badge = ({
7
7
  classes = {},
@@ -1,14 +1,13 @@
1
- import React from 'react'
2
1
  import cx from 'classnames'
3
2
  import PropTypes from 'prop-types'
3
+ import React from 'react'
4
4
 
5
- import Paper from '../Paper'
6
- import Grid from '../Grid'
5
+ import styles from './styles.styl'
7
6
  import Divider from '../Divider'
7
+ import Grid from '../Grid'
8
+ import Paper from '../Paper'
8
9
  import Typography from '../Typography'
9
10
 
10
- import styles from './styles.styl'
11
-
12
11
  /**
13
12
  * A banner displays a prominent message and related optional actions.
14
13
  */
@@ -1,5 +1,6 @@
1
- import React from 'react'
2
1
  import { render } from '@testing-library/react'
2
+ import React from 'react'
3
+
3
4
  import Banner from '.'
4
5
 
5
6
  describe('Grid', () => {
@@ -1,9 +1,8 @@
1
- import React, { PureComponent } from 'react'
2
- import PropTypes from 'prop-types'
3
1
  import cx from 'classnames'
2
+ import PropTypes from 'prop-types'
3
+ import React, { PureComponent } from 'react'
4
4
 
5
5
  import styles from './styles.styl'
6
-
7
6
  import Icon from '../Icon'
8
7
 
9
8
  class MaybeLink extends PureComponent {
@@ -1,11 +1,12 @@
1
1
  import React from 'react'
2
- import { I18nContext } from '../providers/I18n'
3
- import { BreakpointsProvider } from '../providers/Breakpoints'
2
+ import { Provider } from 'react-redux'
4
3
 
5
4
  import { CozyProvider } from 'cozy-client'
6
- import { Provider } from 'react-redux'
7
5
  import { WebviewIntentProvider } from 'cozy-intent'
8
6
 
7
+ import { BreakpointsProvider } from '../providers/Breakpoints'
8
+ import { I18nContext } from '../providers/I18n'
9
+
9
10
  const BarContextProvider = ({
10
11
  children,
11
12
  store,
@@ -1,14 +1,14 @@
1
+ import { render } from '@testing-library/react'
1
2
  import React from 'react'
2
3
  import { Provider, useStore } from 'react-redux'
3
4
  import configureStore from 'redux-mock-store'
4
- import { render } from '@testing-library/react'
5
5
 
6
- import { useWebviewIntent } from 'cozy-intent'
7
6
  import CozyClient, {
8
7
  createMockClient,
9
8
  CozyProvider,
10
9
  useClient
11
10
  } from 'cozy-client'
11
+ import { useWebviewIntent } from 'cozy-intent'
12
12
 
13
13
  import BarContextProvider from '.'
14
14
  import I18n, { useI18n, translate } from '../providers/I18n'
@@ -1,9 +1,8 @@
1
- import React from 'react'
2
1
  import PropTypes from 'prop-types'
3
-
4
- import Typography from '../Typography'
2
+ import React from 'react'
5
3
 
6
4
  import styles from './styles.styl'
5
+ import Typography from '../Typography'
7
6
 
8
7
  const BarTitle = ({ noWrap, children }) => {
9
8
  return (