@altinn/altinn-components 0.5.2 → 0.6.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (544) hide show
  1. package/README.md +14 -2
  2. package/dist/components/Attachment/AttachmentLink.d.ts +10 -0
  3. package/dist/components/Attachment/AttachmentList.d.ts +7 -0
  4. package/dist/components/Avatar/Avatar.d.ts +27 -0
  5. package/dist/components/Avatar/AvatarGroup.d.ts +20 -0
  6. package/dist/components/Avatar/color.d.ts +4 -0
  7. package/dist/components/Badge/Badge.d.ts +11 -0
  8. package/dist/components/Bookmarks/BookmarksList.d.ts +7 -0
  9. package/dist/components/Bookmarks/BookmarksListItem.d.ts +21 -0
  10. package/dist/components/Bookmarks/QueryLabel.d.ts +11 -0
  11. package/dist/components/Bookmarks/index.d.ts +3 -0
  12. package/dist/components/Button/Button.d.ts +8 -0
  13. package/dist/components/Button/ButtonBase.d.ts +20 -0
  14. package/dist/components/Button/ButtonIcon.d.ts +7 -0
  15. package/dist/components/Button/ButtonLabel.d.ts +8 -0
  16. package/dist/components/Button/ComboButton.d.ts +10 -0
  17. package/dist/components/Button/IconButton.d.ts +14 -0
  18. package/dist/components/ContextMenu/ContextMenu.d.ts +8 -0
  19. package/dist/components/ContextMenu/ContextMenuBase.d.ts +9 -0
  20. package/dist/components/Datepicker/index.d.ts +1 -0
  21. package/dist/components/Dialog/Dialog.d.ts +54 -0
  22. package/dist/components/Dialog/DialogActions.d.ts +16 -0
  23. package/dist/components/Dialog/DialogActivityLog.d.ts +10 -0
  24. package/dist/components/Dialog/DialogArticleBase.d.ts +6 -0
  25. package/dist/components/Dialog/DialogAttachments.d.ts +6 -0
  26. package/dist/components/Dialog/DialogBase.d.ts +5 -0
  27. package/dist/components/Dialog/DialogBodyBase.d.ts +5 -0
  28. package/dist/components/Dialog/DialogBorder.d.ts +9 -0
  29. package/dist/components/Dialog/DialogContent.d.ts +9 -0
  30. package/dist/components/Dialog/DialogFooter.d.ts +4 -0
  31. package/dist/components/Dialog/DialogGroup.d.ts +6 -0
  32. package/dist/components/Dialog/DialogHeader.d.ts +10 -0
  33. package/dist/components/Dialog/DialogHeaderBase.d.ts +5 -0
  34. package/dist/components/Dialog/DialogHeadings.d.ts +24 -0
  35. package/dist/components/Dialog/DialogHistory.d.ts +6 -0
  36. package/dist/components/Dialog/DialogList.d.ts +7 -0
  37. package/dist/components/Dialog/DialogListItem.d.ts +59 -0
  38. package/dist/components/Dialog/DialogListItemBase.d.ts +28 -0
  39. package/dist/components/Dialog/DialogMetadata.d.ts +22 -0
  40. package/dist/components/Dialog/DialogNav.d.ts +21 -0
  41. package/dist/components/Dialog/DialogSectionBase.d.ts +6 -0
  42. package/dist/components/Dialog/DialogSeenBy.d.ts +19 -0
  43. package/dist/components/Dialog/DialogSelect.d.ts +10 -0
  44. package/dist/components/Dialog/DialogStatus.d.ts +25 -0
  45. package/dist/components/Dialog/DialogTitle.d.ts +20 -0
  46. package/dist/components/Dialog/DialogTouchedBy.d.ts +10 -0
  47. package/dist/components/Dropdown/Backdrop.d.ts +6 -0
  48. package/dist/components/Dropdown/DrawerBase.d.ts +9 -0
  49. package/dist/components/Dropdown/DrawerBody.d.ts +6 -0
  50. package/dist/components/Dropdown/DrawerButton.d.ts +7 -0
  51. package/dist/components/Dropdown/DrawerFooter.d.ts +6 -0
  52. package/dist/components/Dropdown/DrawerHeader.d.ts +7 -0
  53. package/dist/components/Dropdown/DrawerOrDropdown.d.ts +10 -0
  54. package/dist/components/Dropdown/DropdownBase.d.ts +10 -0
  55. package/{lib/components/Dropdown/index.ts → dist/components/Dropdown/index.d.ts} +0 -1
  56. package/dist/components/Footer/Footer.d.ts +6 -0
  57. package/dist/components/Footer/FooterAddress.d.ts +6 -0
  58. package/dist/components/Footer/FooterBase.d.ts +6 -0
  59. package/dist/components/Footer/FooterLogo.d.ts +5 -0
  60. package/dist/components/Footer/FooterMenu.d.ts +14 -0
  61. package/dist/components/GlobalMenu/AccountButton.d.ts +14 -0
  62. package/dist/components/GlobalMenu/AccountMenu.d.ts +20 -0
  63. package/dist/components/GlobalMenu/BackButton.d.ts +5 -0
  64. package/dist/components/GlobalMenu/GlobalMenu.d.ts +16 -0
  65. package/dist/components/GlobalMenu/GlobalMenuBase.d.ts +7 -0
  66. package/dist/components/GlobalMenu/LogoutButton.d.ts +7 -0
  67. package/dist/components/Header/DigdirLogomark.d.ts +5 -0
  68. package/dist/components/Header/Header.d.ts +9 -0
  69. package/dist/components/Header/HeaderBase.d.ts +9 -0
  70. package/dist/components/Header/HeaderButton.d.ts +15 -0
  71. package/dist/components/Header/HeaderLogo.d.ts +9 -0
  72. package/dist/components/Header/HeaderMenu.d.ts +7 -0
  73. package/dist/components/Header/HeaderSearch.d.ts +7 -0
  74. package/dist/components/History/HistoryAttachments.d.ts +6 -0
  75. package/dist/components/History/HistoryBorder.d.ts +7 -0
  76. package/dist/components/History/HistoryItem.d.ts +14 -0
  77. package/dist/components/History/HistoryList.d.ts +6 -0
  78. package/dist/components/Icon/CheckboxCheckedIcon.d.ts +8 -0
  79. package/dist/components/Icon/CheckboxIcon.d.ts +10 -0
  80. package/dist/components/Icon/CheckboxUncheckedIcon.d.ts +9 -0
  81. package/dist/components/Icon/Icon.d.ts +9 -0
  82. package/dist/components/Icon/ProgressIcon.d.ts +6 -0
  83. package/dist/components/Icon/RadioCheckedIcon.d.ts +8 -0
  84. package/dist/components/Icon/RadioIcon.d.ts +10 -0
  85. package/dist/components/Icon/RadioUncheckedIcon.d.ts +9 -0
  86. package/dist/components/Icon/SvgIcon.d.ts +9 -0
  87. package/dist/components/Icon/iconsMap.d.ts +1911 -0
  88. package/dist/components/Layout/Layout.d.ts +24 -0
  89. package/dist/components/Layout/LayoutBase.d.ts +21 -0
  90. package/dist/components/Layout/LayoutBody.d.ts +7 -0
  91. package/dist/components/Layout/LayoutContent.d.ts +7 -0
  92. package/dist/components/Layout/LayoutSidebar.d.ts +13 -0
  93. package/dist/components/LayoutAction/ActionFooter.d.ts +6 -0
  94. package/dist/components/LayoutAction/ActionHeader.d.ts +7 -0
  95. package/dist/components/LayoutAction/ActionMenu.d.ts +6 -0
  96. package/dist/components/List/List.d.ts +10 -0
  97. package/dist/components/List/ListBase.d.ts +9 -0
  98. package/dist/components/List/ListItem.d.ts +46 -0
  99. package/dist/components/List/ListItemBase.d.ts +27 -0
  100. package/dist/components/List/ListItemLabel.d.ts +9 -0
  101. package/dist/components/List/ListItemMedia.d.ts +14 -0
  102. package/dist/components/Menu/Menu.d.ts +8 -0
  103. package/dist/components/Menu/MenuBase.d.ts +27 -0
  104. package/dist/components/Menu/MenuHeader.d.ts +4 -0
  105. package/dist/components/Menu/MenuInputField.d.ts +12 -0
  106. package/dist/components/Menu/MenuItem.d.ts +35 -0
  107. package/dist/components/Menu/MenuItemBase.d.ts +23 -0
  108. package/dist/components/Menu/MenuItemLabel.d.ts +10 -0
  109. package/dist/components/Menu/MenuItemMedia.d.ts +14 -0
  110. package/dist/components/Menu/MenuItems.d.ts +17 -0
  111. package/dist/components/Menu/MenuOption.d.ts +19 -0
  112. package/dist/components/Menu/MenuSearch.d.ts +8 -0
  113. package/{lib/components/Menu/index.ts → dist/components/Menu/index.d.ts} +1 -0
  114. package/dist/components/Meta/MetaBase.d.ts +7 -0
  115. package/dist/components/Meta/MetaItem.d.ts +18 -0
  116. package/dist/components/Meta/MetaItemBase.d.ts +15 -0
  117. package/dist/components/Meta/MetaItemLabel.d.ts +11 -0
  118. package/dist/components/Meta/MetaItemMedia.d.ts +9 -0
  119. package/dist/components/Meta/MetaList.d.ts +12 -0
  120. package/dist/components/Meta/MetaProgress.d.ts +13 -0
  121. package/dist/components/Meta/MetaTimestamp.d.ts +16 -0
  122. package/dist/components/Page/PageBase.d.ts +6 -0
  123. package/dist/components/Page/PageHeader.d.ts +7 -0
  124. package/dist/components/Page/PageHeaderMedia.d.ts +10 -0
  125. package/dist/components/Page/PageNav.d.ts +14 -0
  126. package/dist/components/Page/SectionBase.d.ts +19 -0
  127. package/dist/components/Page/SectionFooter.d.ts +6 -0
  128. package/dist/components/Page/SectionHeader.d.ts +7 -0
  129. package/dist/components/RootProvider/RootProvider.d.ts +19 -0
  130. package/dist/components/Searchbar/Autocomplete.d.ts +9 -0
  131. package/dist/components/Searchbar/AutocompleteBase.d.ts +7 -0
  132. package/dist/components/Searchbar/AutocompleteGroup.d.ts +6 -0
  133. package/dist/components/Searchbar/AutocompleteItem.d.ts +13 -0
  134. package/dist/components/Searchbar/SearchField.d.ts +16 -0
  135. package/dist/components/Searchbar/Searchbar.d.ts +9 -0
  136. package/dist/components/Searchbar/SearchbarBase.d.ts +8 -0
  137. package/dist/components/Snackbar/Snackbar.d.ts +21 -0
  138. package/dist/components/Snackbar/SnackbarBase.d.ts +13 -0
  139. package/dist/components/Snackbar/SnackbarLabel.d.ts +5 -0
  140. package/dist/components/Snackbar/SnackbarMedia.d.ts +6 -0
  141. package/dist/components/Toolbar/Toolbar.d.ts +15 -0
  142. package/dist/components/Toolbar/ToolbarAdd.d.ts +10 -0
  143. package/dist/components/Toolbar/ToolbarBase.d.ts +7 -0
  144. package/dist/components/Toolbar/ToolbarButton.d.ts +14 -0
  145. package/dist/components/Toolbar/ToolbarFilter.d.ts +23 -0
  146. package/dist/components/Toolbar/ToolbarFilterBase.d.ts +6 -0
  147. package/dist/components/Toolbar/ToolbarMenu.d.ts +13 -0
  148. package/dist/components/Toolbar/ToolbarOptions.d.ts +18 -0
  149. package/dist/components/Toolbar/ToolbarSearch.d.ts +8 -0
  150. package/dist/components/Typography/Heading.d.ts +10 -0
  151. package/dist/components/Typography/Typography.d.ts +11 -0
  152. package/{lib/components/index.ts → dist/components/index.d.ts} +3 -1
  153. package/dist/hooks/useClickOutside.d.ts +2 -0
  154. package/dist/hooks/useEscapeKey.d.ts +1 -0
  155. package/dist/hooks/useMenu.d.ts +21 -0
  156. package/dist/index.css +1 -0
  157. package/dist/index.es.js +3340 -0
  158. package/package.json +27 -19
  159. package/.github/workflows/ci-cd-main.yml +0 -47
  160. package/.github/workflows/ci-cd-pull-request.yml +0 -39
  161. package/.github/workflows/workflow-deploy-storybook.yml +0 -35
  162. package/.node-version +0 -1
  163. package/.storybook/StoryDecorator.tsx +0 -29
  164. package/.storybook/ThemeProvider.tsx +0 -16
  165. package/.storybook/main.ts +0 -20
  166. package/.storybook/preview.tsx +0 -63
  167. package/.storybook/storyDecorator.module.css +0 -20
  168. package/.storybook/theme.module.css +0 -3
  169. package/CHANGELOG.md +0 -90
  170. package/CONTRIBUTING.MD +0 -59
  171. package/biome.jsonc +0 -65
  172. package/lib/components/Attachment/AttachmentLink.stories.ts +0 -19
  173. package/lib/components/Attachment/AttachmentLink.tsx +0 -20
  174. package/lib/components/Attachment/AttachmentList.stories.ts +0 -39
  175. package/lib/components/Attachment/AttachmentList.tsx +0 -26
  176. package/lib/components/Attachment/attachmentLink.module.css +0 -20
  177. package/lib/components/Attachment/attachmentList.module.css +0 -12
  178. package/lib/components/Avatar/Avatar.tsx +0 -83
  179. package/lib/components/Avatar/AvatarGroup.stories.ts +0 -66
  180. package/lib/components/Avatar/AvatarGroup.tsx +0 -60
  181. package/lib/components/Avatar/avatar.module.css +0 -61
  182. package/lib/components/Avatar/avatar.stories.tsx +0 -40
  183. package/lib/components/Avatar/avatarGroup.module.css +0 -78
  184. package/lib/components/Avatar/color.ts +0 -71
  185. package/lib/components/Badge/Badge.stories.ts +0 -32
  186. package/lib/components/Badge/Badge.tsx +0 -22
  187. package/lib/components/Badge/badge.module.css +0 -27
  188. package/lib/components/Button/Button.stories.ts +0 -50
  189. package/lib/components/Button/Button.tsx +0 -60
  190. package/lib/components/Button/ButtonBase.tsx +0 -53
  191. package/lib/components/Button/ButtonIcon.tsx +0 -16
  192. package/lib/components/Button/ButtonLabel.tsx +0 -18
  193. package/lib/components/Button/Buttons.stories.tsx +0 -64
  194. package/lib/components/Button/ComboButton.stories.ts +0 -45
  195. package/lib/components/Button/ComboButton.tsx +0 -46
  196. package/lib/components/Button/IconButton.stories.tsx +0 -47
  197. package/lib/components/Button/IconButton.tsx +0 -31
  198. package/lib/components/Button/button.module.css +0 -22
  199. package/lib/components/Button/buttonBase.module.css +0 -142
  200. package/lib/components/Button/buttonIcon.module.css +0 -17
  201. package/lib/components/Button/buttonLabel.module.css +0 -17
  202. package/lib/components/Button/comboButton.module.css +0 -35
  203. package/lib/components/Button/iconButton.module.css +0 -31
  204. package/lib/components/ContextMenu/ContextMenu.stories.ts +0 -49
  205. package/lib/components/ContextMenu/ContextMenu.tsx +0 -20
  206. package/lib/components/ContextMenu/ContextMenuBase.tsx +0 -33
  207. package/lib/components/ContextMenu/contextMenuBase.module.css +0 -35
  208. package/lib/components/Dialog/Dialog.stories.ts +0 -331
  209. package/lib/components/Dialog/Dialog.tsx +0 -111
  210. package/lib/components/Dialog/DialogActions.stories.ts +0 -60
  211. package/lib/components/Dialog/DialogActions.tsx +0 -80
  212. package/lib/components/Dialog/DialogActivityLog.tsx +0 -18
  213. package/lib/components/Dialog/DialogArticleBase.tsx +0 -10
  214. package/lib/components/Dialog/DialogAttachments.stories.ts +0 -38
  215. package/lib/components/Dialog/DialogAttachments.tsx +0 -25
  216. package/lib/components/Dialog/DialogBase.tsx +0 -10
  217. package/lib/components/Dialog/DialogBodyBase.tsx +0 -17
  218. package/lib/components/Dialog/DialogBorder.tsx +0 -19
  219. package/lib/components/Dialog/DialogContent.stories.ts +0 -26
  220. package/lib/components/Dialog/DialogContent.tsx +0 -23
  221. package/lib/components/Dialog/DialogFooter.tsx +0 -14
  222. package/lib/components/Dialog/DialogGroup.tsx +0 -24
  223. package/lib/components/Dialog/DialogHeader.stories.ts +0 -24
  224. package/lib/components/Dialog/DialogHeader.tsx +0 -23
  225. package/lib/components/Dialog/DialogHeaderBase.tsx +0 -10
  226. package/lib/components/Dialog/DialogHeadings.stories.ts +0 -35
  227. package/lib/components/Dialog/DialogHeadings.tsx +0 -77
  228. package/lib/components/Dialog/DialogHistory.stories.ts +0 -67
  229. package/lib/components/Dialog/DialogHistory.tsx +0 -19
  230. package/lib/components/Dialog/DialogList.stories.ts +0 -65
  231. package/lib/components/Dialog/DialogList.tsx +0 -35
  232. package/lib/components/Dialog/DialogListItem.stories.tsx +0 -238
  233. package/lib/components/Dialog/DialogListItem.tsx +0 -126
  234. package/lib/components/Dialog/DialogListItemBase.tsx +0 -52
  235. package/lib/components/Dialog/DialogMetadata.stories.ts +0 -75
  236. package/lib/components/Dialog/DialogMetadata.tsx +0 -56
  237. package/lib/components/Dialog/DialogNav.stories.ts +0 -88
  238. package/lib/components/Dialog/DialogNav.tsx +0 -56
  239. package/lib/components/Dialog/DialogSectionBase.tsx +0 -20
  240. package/lib/components/Dialog/DialogSeenBy.stories.tsx +0 -56
  241. package/lib/components/Dialog/DialogSeenBy.tsx +0 -36
  242. package/lib/components/Dialog/DialogSelect.tsx +0 -23
  243. package/lib/components/Dialog/DialogStatus.stories.ts +0 -57
  244. package/lib/components/Dialog/DialogStatus.tsx +0 -61
  245. package/lib/components/Dialog/DialogTitle.stories.ts +0 -31
  246. package/lib/components/Dialog/DialogTitle.tsx +0 -31
  247. package/lib/components/Dialog/DialogTouchedBy.stories.tsx +0 -27
  248. package/lib/components/Dialog/DialogTouchedBy.tsx +0 -19
  249. package/lib/components/Dialog/dialog.module.css +0 -21
  250. package/lib/components/Dialog/dialogAction.module.css +0 -26
  251. package/lib/components/Dialog/dialogArticleBase.module.css +0 -5
  252. package/lib/components/Dialog/dialogBodyBase.module.css +0 -13
  253. package/lib/components/Dialog/dialogBorder.module.css +0 -42
  254. package/lib/components/Dialog/dialogGroup.module.css +0 -35
  255. package/lib/components/Dialog/dialogHeaderBase.module.css +0 -6
  256. package/lib/components/Dialog/dialogHeadings.module.css +0 -24
  257. package/lib/components/Dialog/dialogHistory.module.css +0 -12
  258. package/lib/components/Dialog/dialogListItem.module.css +0 -81
  259. package/lib/components/Dialog/dialogListItemBase.module.css +0 -28
  260. package/lib/components/Dialog/dialogNav.module.css +0 -12
  261. package/lib/components/Dialog/dialogSectionBase.module.css +0 -11
  262. package/lib/components/Dialog/dialogSelect.module.css +0 -34
  263. package/lib/components/Dialog/dialogTitle.module.css +0 -47
  264. package/lib/components/Dropdown/Backdrop.tsx +0 -12
  265. package/lib/components/Dropdown/DrawerBase.tsx +0 -20
  266. package/lib/components/Dropdown/DrawerBody.tsx +0 -12
  267. package/lib/components/Dropdown/DrawerButton.tsx +0 -17
  268. package/lib/components/Dropdown/DrawerFooter.tsx +0 -12
  269. package/lib/components/Dropdown/DrawerHeader.tsx +0 -19
  270. package/lib/components/Dropdown/DrawerOrDropdown.tsx +0 -29
  271. package/lib/components/Dropdown/DropdownBase.tsx +0 -32
  272. package/lib/components/Dropdown/backdrop.module.css +0 -11
  273. package/lib/components/Dropdown/drawerBase.module.css +0 -17
  274. package/lib/components/Dropdown/drawerBody.module.css +0 -5
  275. package/lib/components/Dropdown/drawerButton.module.css +0 -6
  276. package/lib/components/Dropdown/drawerFooter.module.css +0 -13
  277. package/lib/components/Dropdown/drawerHeader.module.css +0 -17
  278. package/lib/components/Dropdown/drawerOrDropdown.module.css +0 -19
  279. package/lib/components/Dropdown/dropdownBase.module.css +0 -34
  280. package/lib/components/Footer/Footer.stories.ts +0 -37
  281. package/lib/components/Footer/Footer.tsx +0 -21
  282. package/lib/components/Footer/FooterAddress.tsx +0 -12
  283. package/lib/components/Footer/FooterBase.tsx +0 -16
  284. package/lib/components/Footer/FooterLogo.tsx +0 -17
  285. package/lib/components/Footer/FooterMenu.tsx +0 -43
  286. package/lib/components/Footer/footerAddress.module.css +0 -8
  287. package/lib/components/Footer/footerBase.module.css +0 -28
  288. package/lib/components/Footer/footerLogo.module.css +0 -12
  289. package/lib/components/Footer/footerMenu.module.css +0 -35
  290. package/lib/components/GlobalMenu/AccountButton.tsx +0 -30
  291. package/lib/components/GlobalMenu/AccountMenu.stories.tsx +0 -65
  292. package/lib/components/GlobalMenu/AccountMenu.tsx +0 -82
  293. package/lib/components/GlobalMenu/BackButton.tsx +0 -10
  294. package/lib/components/GlobalMenu/GlobalMenu.stories.tsx +0 -181
  295. package/lib/components/GlobalMenu/GlobalMenu.tsx +0 -81
  296. package/lib/components/GlobalMenu/GlobalMenuBase.tsx +0 -22
  297. package/lib/components/GlobalMenu/LogoutButton.tsx +0 -19
  298. package/lib/components/GlobalMenu/globalMenuBase.module.css +0 -39
  299. package/lib/components/GlobalMenu/logoutButton.module.css +0 -9
  300. package/lib/components/Header/DigdirLogomark.tsx +0 -23
  301. package/lib/components/Header/Header.stories.tsx +0 -188
  302. package/lib/components/Header/Header.tsx +0 -74
  303. package/lib/components/Header/HeaderBase.tsx +0 -21
  304. package/lib/components/Header/HeaderButton.stories.ts +0 -70
  305. package/lib/components/Header/HeaderButton.tsx +0 -67
  306. package/lib/components/Header/HeaderLogo.stories.ts +0 -17
  307. package/lib/components/Header/HeaderLogo.tsx +0 -22
  308. package/lib/components/Header/HeaderMenu.tsx +0 -17
  309. package/lib/components/Header/header.module.css +0 -45
  310. package/lib/components/Header/headerBase.module.css +0 -51
  311. package/lib/components/Header/headerButton.module.css +0 -37
  312. package/lib/components/Header/headerLogo.module.css +0 -24
  313. package/lib/components/Header/headerMenu.module.css +0 -3
  314. package/lib/components/Header/mobileMenu.module.css +0 -28
  315. package/lib/components/History/HistoryAttachments.tsx +0 -22
  316. package/lib/components/History/HistoryBorder.tsx +0 -17
  317. package/lib/components/History/HistoryItem.stories.ts +0 -56
  318. package/lib/components/History/HistoryItem.tsx +0 -56
  319. package/lib/components/History/HistoryList.stories.ts +0 -70
  320. package/lib/components/History/HistoryList.tsx +0 -26
  321. package/lib/components/History/historyBorder.module.css +0 -8
  322. package/lib/components/History/historyItem.module.css +0 -19
  323. package/lib/components/History/historyList.module.css +0 -12
  324. package/lib/components/Icon/CheckboxCheckedIcon.tsx +0 -28
  325. package/lib/components/Icon/CheckboxIcon.stories.ts +0 -32
  326. package/lib/components/Icon/CheckboxIcon.tsx +0 -17
  327. package/lib/components/Icon/CheckboxUncheckedIcon.tsx +0 -38
  328. package/lib/components/Icon/Icon.stories.ts +0 -24
  329. package/lib/components/Icon/Icon.tsx +0 -23
  330. package/lib/components/Icon/ProgressIcon.stories.ts +0 -43
  331. package/lib/components/Icon/ProgressIcon.tsx +0 -44
  332. package/lib/components/Icon/RadioCheckedIcon.tsx +0 -29
  333. package/lib/components/Icon/RadioIcon.stories.ts +0 -32
  334. package/lib/components/Icon/RadioIcon.tsx +0 -17
  335. package/lib/components/Icon/RadioUncheckedIcon.tsx +0 -30
  336. package/lib/components/Icon/SvgIcon.tsx +0 -18
  337. package/lib/components/Icon/__AkselIcon.tsx +0 -37
  338. package/lib/components/Icon/checkboxIcon.module.css +0 -23
  339. package/lib/components/Icon/icon.module.css +0 -4
  340. package/lib/components/Icon/iconsMap.tsx +0 -2078
  341. package/lib/components/Icon/progressIcon.module.css +0 -29
  342. package/lib/components/Icon/radioIcon.module.css +0 -21
  343. package/lib/components/Layout/Layout.stories.tsx +0 -308
  344. package/lib/components/Layout/Layout.tsx +0 -46
  345. package/lib/components/Layout/LayoutBase.stories.ts +0 -17
  346. package/lib/components/Layout/LayoutBase.tsx +0 -31
  347. package/lib/components/Layout/LayoutBody.stories.ts +0 -17
  348. package/lib/components/Layout/LayoutBody.tsx +0 -16
  349. package/lib/components/Layout/LayoutContent.stories.ts +0 -17
  350. package/lib/components/Layout/LayoutContent.tsx +0 -15
  351. package/lib/components/Layout/LayoutSidebar.stories.ts +0 -17
  352. package/lib/components/Layout/LayoutSidebar.tsx +0 -23
  353. package/lib/components/Layout/layoutBase.module.css +0 -22
  354. package/lib/components/Layout/layoutBody.module.css +0 -15
  355. package/lib/components/Layout/layoutContent.module.css +0 -13
  356. package/lib/components/Layout/layoutSidebar.module.css +0 -20
  357. package/lib/components/LayoutAction/ActionFooter.stories.tsx +0 -70
  358. package/lib/components/LayoutAction/ActionFooter.tsx +0 -15
  359. package/lib/components/LayoutAction/ActionHeader.stories.ts +0 -20
  360. package/lib/components/LayoutAction/ActionHeader.tsx +0 -19
  361. package/lib/components/LayoutAction/ActionMenu.stories.tsx +0 -40
  362. package/lib/components/LayoutAction/ActionMenu.tsx +0 -23
  363. package/lib/components/LayoutAction/actionFooter.module.css +0 -28
  364. package/lib/components/LayoutAction/actionHeader.module.css +0 -55
  365. package/lib/components/LayoutAction/actionMenu.module.css +0 -30
  366. package/lib/components/List/List.stories.tsx +0 -43
  367. package/lib/components/List/List.tsx +0 -20
  368. package/lib/components/List/ListBase.tsx +0 -19
  369. package/lib/components/List/ListItem.stories.tsx +0 -208
  370. package/lib/components/List/ListItem.tsx +0 -73
  371. package/lib/components/List/ListItemBase.tsx +0 -78
  372. package/lib/components/List/ListItemLabel.tsx +0 -29
  373. package/lib/components/List/ListItemMedia.tsx +0 -59
  374. package/lib/components/List/listBase.module.css +0 -16
  375. package/lib/components/List/listItemBase.module.css +0 -90
  376. package/lib/components/List/listItemLabel.module.css +0 -55
  377. package/lib/components/List/listItemMedia.module.css +0 -41
  378. package/lib/components/Menu/Menu.stories.ts +0 -514
  379. package/lib/components/Menu/Menu.tsx +0 -24
  380. package/lib/components/Menu/MenuBase.tsx +0 -63
  381. package/lib/components/Menu/MenuHeader.tsx +0 -13
  382. package/lib/components/Menu/MenuItem.stories.tsx +0 -164
  383. package/lib/components/Menu/MenuItem.tsx +0 -63
  384. package/lib/components/Menu/MenuItemBase.tsx +0 -77
  385. package/lib/components/Menu/MenuItemLabel.tsx +0 -30
  386. package/lib/components/Menu/MenuItemMedia.tsx +0 -42
  387. package/lib/components/Menu/MenuItems.stories.ts +0 -438
  388. package/lib/components/Menu/MenuItems.tsx +0 -96
  389. package/lib/components/Menu/MenuOption.stories.ts +0 -52
  390. package/lib/components/Menu/MenuOption.tsx +0 -48
  391. package/lib/components/Menu/MenuSearch.stories.ts +0 -18
  392. package/lib/components/Menu/MenuSearch.tsx +0 -25
  393. package/lib/components/Menu/menu.module.css +0 -25
  394. package/lib/components/Menu/menuBase.module.css +0 -25
  395. package/lib/components/Menu/menuHeader.module.css +0 -12
  396. package/lib/components/Menu/menuItemBase.module.css +0 -72
  397. package/lib/components/Menu/menuItemLabel.module.css +0 -32
  398. package/lib/components/Menu/menuItemMedia.module.css +0 -38
  399. package/lib/components/Menu/menuOption.module.css +0 -27
  400. package/lib/components/Menu/menuSearch.module.css +0 -30
  401. package/lib/components/Meta/MetaBase.tsx +0 -15
  402. package/lib/components/Meta/MetaItem.stories.ts +0 -25
  403. package/lib/components/Meta/MetaItem.tsx +0 -31
  404. package/lib/components/Meta/MetaItemBase.tsx +0 -46
  405. package/lib/components/Meta/MetaItemLabel.tsx +0 -20
  406. package/lib/components/Meta/MetaItemMedia.tsx +0 -22
  407. package/lib/components/Meta/MetaList.stories.ts +0 -29
  408. package/lib/components/Meta/MetaList.tsx +0 -43
  409. package/lib/components/Meta/MetaProgress.stories.ts +0 -29
  410. package/lib/components/Meta/MetaProgress.tsx +0 -26
  411. package/lib/components/Meta/MetaTimestamp.stories.ts +0 -33
  412. package/lib/components/Meta/MetaTimestamp.tsx +0 -29
  413. package/lib/components/Meta/meta.module.css +0 -6
  414. package/lib/components/Meta/metaItem.module.css +0 -107
  415. package/lib/components/Meta/metaList.module.css +0 -15
  416. package/lib/components/Page/PageBase.tsx +0 -14
  417. package/lib/components/Page/PageHeader.tsx +0 -21
  418. package/lib/components/Page/PageHeaderMedia.tsx +0 -25
  419. package/lib/components/Page/SectionBase.tsx +0 -52
  420. package/lib/components/Page/SectionFooter.tsx +0 -15
  421. package/lib/components/Page/SectionHeader.tsx +0 -16
  422. package/lib/components/Page/pageHeader.module.css +0 -5
  423. package/lib/components/Page/sectionBase.module.css +0 -82
  424. package/lib/components/Page/sectionFooter.module.css +0 -8
  425. package/lib/components/Page/sectionHeader.module.css +0 -9
  426. package/lib/components/RootProvider/RootProvider.tsx +0 -55
  427. package/lib/components/Searchbar/Autocomplete.stories.tsx +0 -77
  428. package/lib/components/Searchbar/Autocomplete.tsx +0 -44
  429. package/lib/components/Searchbar/AutocompleteBase.tsx +0 -16
  430. package/lib/components/Searchbar/AutocompleteGroup.tsx +0 -17
  431. package/lib/components/Searchbar/AutocompleteItem.tsx +0 -23
  432. package/lib/components/Searchbar/SearchField.tsx +0 -78
  433. package/lib/components/Searchbar/Searchbar.stories.tsx +0 -151
  434. package/lib/components/Searchbar/Searchbar.tsx +0 -18
  435. package/lib/components/Searchbar/SearchbarBase.tsx +0 -23
  436. package/lib/components/Searchbar/autocompleteBase.module.css +0 -17
  437. package/lib/components/Searchbar/autocompleteGroup.module.css +0 -3
  438. package/lib/components/Searchbar/autocompleteItem.module.css +0 -19
  439. package/lib/components/Searchbar/searchField.module.css +0 -54
  440. package/lib/components/Searchbar/searchbarBase.module.css +0 -20
  441. package/lib/components/Snackbar/Snackbar.stories.tsx +0 -21
  442. package/lib/components/Snackbar/Snackbar.tsx +0 -32
  443. package/lib/components/Snackbar/SnackbarBase.tsx +0 -39
  444. package/lib/components/Snackbar/SnackbarLabel.tsx +0 -10
  445. package/lib/components/Snackbar/SnackbarMedia.tsx +0 -14
  446. package/lib/components/Snackbar/snackbarBase.module.css +0 -55
  447. package/lib/components/Snackbar/snackbarLabel.module.css +0 -6
  448. package/lib/components/Snackbar/snackbarMedia.module.css +0 -10
  449. package/lib/components/Toolbar/Toolbar.stories.tsx +0 -188
  450. package/lib/components/Toolbar/Toolbar.tsx +0 -156
  451. package/lib/components/Toolbar/ToolbarAdd.stories.ts +0 -23
  452. package/lib/components/Toolbar/ToolbarAdd.tsx +0 -26
  453. package/lib/components/Toolbar/ToolbarBase.tsx +0 -12
  454. package/lib/components/Toolbar/ToolbarButton.stories.ts +0 -32
  455. package/lib/components/Toolbar/ToolbarButton.tsx +0 -65
  456. package/lib/components/Toolbar/ToolbarFilter.stories.ts +0 -64
  457. package/lib/components/Toolbar/ToolbarFilter.tsx +0 -75
  458. package/lib/components/Toolbar/ToolbarMenu.stories.ts +0 -37
  459. package/lib/components/Toolbar/ToolbarMenu.tsx +0 -29
  460. package/lib/components/Toolbar/ToolbarOptions.stories.ts +0 -108
  461. package/lib/components/Toolbar/ToolbarOptions.tsx +0 -74
  462. package/lib/components/Toolbar/ToolbarSearch.stories.ts +0 -19
  463. package/lib/components/Toolbar/ToolbarSearch.tsx +0 -24
  464. package/lib/components/Toolbar/toolbarAdd.module.css +0 -7
  465. package/lib/components/Toolbar/toolbarBase.module.css +0 -19
  466. package/lib/components/Toolbar/toolbarButton.module.css +0 -3
  467. package/lib/components/Toolbar/toolbarFilter.module.css +0 -25
  468. package/lib/components/Toolbar/toolbarMenu.module.css +0 -7
  469. package/lib/components/Toolbar/toolbarSearch.module.css +0 -28
  470. package/lib/components/Typography/Heading.tsx +0 -23
  471. package/lib/components/Typography/Typography.tsx +0 -24
  472. package/lib/components/Typography/heading.module.css +0 -21
  473. package/lib/components/Typography/typography.module.css +0 -64
  474. package/lib/css/colors.css +0 -113
  475. package/lib/css/global.css +0 -15
  476. package/lib/css/shadows.css +0 -7
  477. package/lib/css/theme-article.css +0 -15
  478. package/lib/css/theme-company.css +0 -15
  479. package/lib/css/theme-global-dark.css +0 -19
  480. package/lib/css/theme-global.css +0 -15
  481. package/lib/css/theme-neutral.css +0 -15
  482. package/lib/css/theme-person.css +0 -15
  483. package/lib/css/theme.css +0 -22
  484. package/lib/hooks/useClickOutside.ts +0 -22
  485. package/lib/hooks/useEscapeKey.ts +0 -17
  486. package/lib/hooks/useMenu.tsx +0 -80
  487. package/lib/stories/Color/MenuItem.stories.tsx +0 -43
  488. package/lib/stories/Color/Swatches.stories.tsx +0 -19
  489. package/lib/stories/Color/Swatches.tsx +0 -42
  490. package/lib/stories/Color/colors.json +0 -62
  491. package/lib/stories/Color/swatches.module.css +0 -14
  492. package/lib/stories/Inbox/BookmarksPage.tsx +0 -52
  493. package/lib/stories/Inbox/DialogPage.tsx +0 -15
  494. package/lib/stories/Inbox/Inbox.stories.tsx +0 -55
  495. package/lib/stories/Inbox/Inbox.tsx +0 -12
  496. package/lib/stories/Inbox/InboxLayout.tsx +0 -51
  497. package/lib/stories/Inbox/InboxPage.tsx +0 -50
  498. package/lib/stories/Inbox/InboxProvider.tsx +0 -135
  499. package/lib/stories/Inbox/InboxSection.tsx +0 -39
  500. package/lib/stories/Inbox/InboxToolbar.tsx +0 -94
  501. package/lib/stories/Inbox/ProfilePage.tsx +0 -35
  502. package/lib/stories/Inbox/SettingsPage.tsx +0 -19
  503. package/lib/stories/Inbox/accounts/accounts.ts +0 -24
  504. package/lib/stories/Inbox/accounts/index.ts +0 -1
  505. package/lib/stories/Inbox/actionMenu.ts +0 -24
  506. package/lib/stories/Inbox/dialogs/brreg-completed.json +0 -35
  507. package/lib/stories/Inbox/dialogs/brreg-draft.json +0 -45
  508. package/lib/stories/Inbox/dialogs/index.ts +0 -10
  509. package/lib/stories/Inbox/dialogs/skatt-2023.json +0 -33
  510. package/lib/stories/Inbox/groupBy.ts +0 -19
  511. package/lib/stories/Inbox/inboxSection.module.css +0 -19
  512. package/lib/stories/Inbox/index.ts +0 -15
  513. package/lib/stories/Inbox/layout/footer.ts +0 -27
  514. package/lib/stories/Inbox/layout/header.ts +0 -11
  515. package/lib/stories/Inbox/layout/index.ts +0 -3
  516. package/lib/stories/Inbox/layout/menu.ts +0 -64
  517. package/renovate.json +0 -4
  518. package/tsconfig.json +0 -28
  519. package/tsconfig.node.json +0 -11
  520. package/typings.d.ts +0 -1
  521. package/vite.config.ts +0 -20
  522. /package/{lib/components/Attachment/index.ts → dist/components/Attachment/index.d.ts} +0 -0
  523. /package/{lib/components/Avatar/index.ts → dist/components/Avatar/index.d.ts} +0 -0
  524. /package/{lib/components/Badge/index.tsx → dist/components/Badge/index.d.ts} +0 -0
  525. /package/{lib/components/Button/index.ts → dist/components/Button/index.d.ts} +0 -0
  526. /package/{lib/components/ContextMenu/index.ts → dist/components/ContextMenu/index.d.ts} +0 -0
  527. /package/{lib/components/Dialog/index.ts → dist/components/Dialog/index.d.ts} +0 -0
  528. /package/{lib/components/Footer/index.ts → dist/components/Footer/index.d.ts} +0 -0
  529. /package/{lib/components/GlobalMenu/index.tsx → dist/components/GlobalMenu/index.d.ts} +0 -0
  530. /package/{lib/components/Header/index.tsx → dist/components/Header/index.d.ts} +0 -0
  531. /package/{lib/components/History/index.ts → dist/components/History/index.d.ts} +0 -0
  532. /package/{lib/components/Icon/index.ts → dist/components/Icon/index.d.ts} +0 -0
  533. /package/{lib/components/Layout/index.tsx → dist/components/Layout/index.d.ts} +0 -0
  534. /package/{lib/components/LayoutAction/index.ts → dist/components/LayoutAction/index.d.ts} +0 -0
  535. /package/{lib/components/List/index.ts → dist/components/List/index.d.ts} +0 -0
  536. /package/{lib/components/Meta/index.ts → dist/components/Meta/index.d.ts} +0 -0
  537. /package/{lib/components/Page/index.ts → dist/components/Page/index.d.ts} +0 -0
  538. /package/{lib/components/RootProvider/index.ts → dist/components/RootProvider/index.d.ts} +0 -0
  539. /package/{lib/components/Searchbar/index.ts → dist/components/Searchbar/index.d.ts} +0 -0
  540. /package/{lib/components/Snackbar/index.ts → dist/components/Snackbar/index.d.ts} +0 -0
  541. /package/{lib/components/Toolbar/index.ts → dist/components/Toolbar/index.d.ts} +0 -0
  542. /package/{lib/components/Typography/index.ts → dist/components/Typography/index.d.ts} +0 -0
  543. /package/{lib/hooks/index.ts → dist/hooks/index.d.ts} +0 -0
  544. /package/{lib/index.ts → dist/index.d.ts} +0 -0
@@ -1,80 +0,0 @@
1
- import { useCallback, useEffect, useMemo, useState } from 'react';
2
-
3
- export interface UseMenuItemProps<T> {
4
- menuIndex: number;
5
- active?: boolean;
6
- props: T;
7
- }
8
-
9
- export interface UseMenuGroup<T, V> {
10
- items: UseMenuItemProps<T>[];
11
- props: Record<string, V>;
12
- }
13
-
14
- export interface UseMenuOutput<T, V> {
15
- menu: UseMenuGroup<T, V>[];
16
- activeIndex: number;
17
- setActiveIndex: (activeIndex: number) => void;
18
- }
19
-
20
- export interface UseMenuInput<T, V> {
21
- items: T[];
22
- groups: Record<string, V>;
23
- groupByKey?: keyof T;
24
- keyboardEvents?: boolean;
25
- }
26
-
27
- export const useMenu = <T, V>({
28
- items,
29
- groups,
30
- groupByKey,
31
- keyboardEvents = false,
32
- }: UseMenuInput<T, V>): UseMenuOutput<T, V> => {
33
- const [activeIndex, setActiveIndex] = useState<number>(-1);
34
-
35
- const menu = useMemo(() => {
36
- const flatItems: T[] = [];
37
- const grouped = items.reduce(
38
- (acc, item) => {
39
- const key = groupByKey && item[groupByKey] ? (item[groupByKey] as string) : 'ungrouped';
40
- acc[key] = acc[key] || [];
41
- acc[key].push(item);
42
- flatItems.push(item);
43
- return acc;
44
- },
45
- {} as Record<string, T[]>,
46
- );
47
-
48
- return Object.entries(grouped).map(([key, groupItems]) => ({
49
- items: groupItems.map((item) => ({
50
- menuIndex: flatItems.indexOf(item),
51
- active: activeIndex === flatItems.indexOf(item),
52
- props: item,
53
- })),
54
- props: groups[key] || {},
55
- }));
56
- }, [items, groupByKey, activeIndex, groups]);
57
-
58
- const handleKeyDown = useCallback(
59
- (event: KeyboardEvent) => {
60
- if (event.key === 'ArrowDown') {
61
- setActiveIndex((prevIndex) => (prevIndex + 1) % items.length);
62
- } else if (event.key === 'ArrowUp') {
63
- setActiveIndex((prevIndex) => (prevIndex - 1 + items.length) % items.length);
64
- }
65
- },
66
- [items.length],
67
- );
68
-
69
- useEffect(() => {
70
- if (keyboardEvents) {
71
- setActiveIndex(0);
72
- document.addEventListener('keydown', handleKeyDown);
73
- return () => {
74
- document.removeEventListener('keydown', handleKeyDown);
75
- };
76
- }
77
- }, [handleKeyDown, keyboardEvents]);
78
-
79
- return { menu, activeIndex, setActiveIndex };
80
- };
@@ -1,43 +0,0 @@
1
- import type { Meta, StoryObj } from '@storybook/react';
2
- import { LayoutBase, type LayoutTheme, MenuBase, MenuItem, type MenuItemColor, MetaItem } from '../../components';
3
-
4
- const meta = {
5
- title: 'Demo/Color/MenuItem',
6
- component: MenuItem,
7
- tags: ['autodocs'],
8
- parameters: {},
9
- args: {
10
- id: 'inbox',
11
- },
12
- } satisfies Meta<typeof MenuItem>;
13
-
14
- export default meta;
15
- type Story = StoryObj<typeof meta>;
16
-
17
- export const ThemesAndColors = () => {
18
- const themes: LayoutTheme[] = ['global', 'neutral', 'company', 'person', 'global-dark'];
19
- const colors: MenuItemColor[] = ['neutral', 'subtle', 'strong', 'company', 'person'];
20
-
21
- return (
22
- <div style={{ display: 'flex', width: '100%' }}>
23
- {themes.map((theme) => {
24
- return (
25
- <div key={theme} style={{ flexGrow: 1 }}>
26
- <LayoutBase theme={theme}>
27
- <MenuBase>
28
- {colors.map((color) => {
29
- return (
30
- <div key={color}>
31
- <MenuItem icon="inbox" title="Title" color={color} id="inbox" />
32
- <MetaItem>{theme + '/' + color}</MetaItem>
33
- </div>
34
- );
35
- })}
36
- </MenuBase>
37
- </LayoutBase>
38
- </div>
39
- );
40
- })}
41
- </div>
42
- );
43
- };
@@ -1,19 +0,0 @@
1
- import type { Meta, StoryObj } from '@storybook/react';
2
- import { Swatches } from './Swatches';
3
-
4
- const meta = {
5
- title: 'Demo/Color/Swatches',
6
- component: Swatches,
7
- tags: ['autodocs'],
8
- parameters: {
9
- layout: 'fullscreen',
10
- },
11
- args: {},
12
- } satisfies Meta<typeof Swatches>;
13
-
14
- export default meta;
15
- type Story = StoryObj<typeof meta>;
16
-
17
- export const Default: Story = {
18
- args: {},
19
- };
@@ -1,42 +0,0 @@
1
- import type { LayoutTheme } from '../../components';
2
- import colors from './colors.json';
3
- import styles from './swatches.module.css';
4
-
5
- const themes = {
6
- neutral: 'Neutral',
7
- person: 'Person',
8
- company: 'Company',
9
- };
10
-
11
- export interface SwatchesProps {
12
- theme: LayoutTheme;
13
- }
14
-
15
- export const SwatchesList = ({ theme }: SwatchesProps) => {
16
- return (
17
- <div className={styles.list} data-theme={theme}>
18
- {Object.keys(colors).map((key) => {
19
- const style = {
20
- backgroundColor: 'var(--theme-' + key + ')',
21
- };
22
-
23
- return (
24
- <section className={styles.item}>
25
- <div style={style} className={styles.swatch}></div>
26
- {key}
27
- </section>
28
- );
29
- })}
30
- </div>
31
- );
32
- };
33
-
34
- export const Swatches = ({ theme }: SwatchesProps) => {
35
- return (
36
- <div className={styles.row}>
37
- {Object.keys(themes).map((key) => {
38
- return <SwatchesList theme={key} />;
39
- })}
40
- </div>
41
- );
42
- };
@@ -1,62 +0,0 @@
1
- {
2
- "background-default": {
3
- "$type": "color",
4
- "$value": "{color.<color>.1}"
5
- },
6
- "background-subtle": {
7
- "$type": "color",
8
- "$value": "{color.<color>.2}"
9
- },
10
- "surface-default": {
11
- "$type": "color",
12
- "$value": "{color.<color>.3}"
13
- },
14
- "surface-hover": {
15
- "$type": "color",
16
- "$value": "{color.<color>.4}"
17
- },
18
- "surface-active": {
19
- "$type": "color",
20
- "$value": "{color.<color>.5}"
21
- },
22
- "border-subtle": {
23
- "$type": "color",
24
- "$value": "{color.<color>.6}"
25
- },
26
- "border-default": {
27
- "$type": "color",
28
- "$value": "{color.<color>.7}"
29
- },
30
- "border-strong": {
31
- "$type": "color",
32
- "$value": "{color.<color>.8}"
33
- },
34
- "base-default": {
35
- "$type": "color",
36
- "$value": "{color.<color>.9}"
37
- },
38
- "base-hover": {
39
- "$type": "color",
40
- "$value": "{color.<color>.10}"
41
- },
42
- "base-active": {
43
- "$type": "color",
44
- "$value": "{color.<color>.11}"
45
- },
46
- "text-subtle": {
47
- "$type": "color",
48
- "$value": "{color.<color>.12}"
49
- },
50
- "text-default": {
51
- "$type": "color",
52
- "$value": "{color.<color>.13}"
53
- },
54
- "contrast-default": {
55
- "$type": "color",
56
- "$value": "{color.<color>.contrast-1}"
57
- },
58
- "contrast-subtle": {
59
- "$type": "color",
60
- "$value": "{color.<color>.contrast-2}"
61
- }
62
- }
@@ -1,14 +0,0 @@
1
- .swatch {
2
- width: 4rem;
3
- height: 4rem;
4
- border: 1px solid;
5
- }
6
-
7
- .row {
8
- display: flex;
9
- }
10
-
11
- .col {
12
- display: flex;
13
- flex-direction: column;
14
- }
@@ -1,52 +0,0 @@
1
- 'use client';
2
- import {
3
- Heading,
4
- ListBase,
5
- ListItem,
6
- MetaItem,
7
- PageBase,
8
- SectionBase,
9
- SectionFooter,
10
- SectionHeader,
11
- Typography,
12
- } from '../../components';
13
- import { InboxToolbar } from './InboxToolbar';
14
-
15
- export function BookmarksPage() {
16
- const bookmarks = [
17
- {
18
- id: '1',
19
- title: '123',
20
- },
21
- {
22
- id: '2',
23
- title: '123',
24
- },
25
- {
26
- id: '3',
27
- title: '123',
28
- },
29
- ];
30
-
31
- const count = bookmarks.length;
32
- const title = (count > 1 && count + ' lagrede søk') || (count && '1 lagret søk') || 'Ingen lagrede søk';
33
-
34
- return (
35
- <PageBase margin="lg" spacing="lg">
36
- <InboxToolbar />
37
- <SectionBase spacing="lg">
38
- <SectionHeader padding>
39
- <Heading size="md">{title}</Heading>
40
- </SectionHeader>
41
- <ListBase spacing="sm">
42
- {bookmarks.map((item) => (
43
- <ListItem {...item} key={item.id} />
44
- ))}
45
- </ListBase>
46
- <SectionFooter padding>
47
- <MetaItem>Sist oppdatert: 10 minutter siden.</MetaItem>
48
- </SectionFooter>
49
- </SectionBase>
50
- </PageBase>
51
- );
52
- }
@@ -1,15 +0,0 @@
1
- import { ActionMenu, Dialog, PageBase } from '../../components';
2
- import type { DialogProps } from '../../components';
3
-
4
- interface DialogPageProps {
5
- dialog: DialogProps;
6
- }
7
-
8
- export function DialogPage({ dialog }: DialogPageProps) {
9
- return (
10
- <PageBase inset>
11
- <Dialog {...dialog} />
12
- <ActionMenu items={dialog?.menu?.items} />
13
- </PageBase>
14
- );
15
- }
@@ -1,55 +0,0 @@
1
- import type { Meta, StoryObj } from '@storybook/react';
2
- import { accounts, dialogs } from './';
3
- import { Inbox } from './Inbox';
4
-
5
- const meta = {
6
- title: 'Demo/Inbox/Inbox',
7
- component: Inbox,
8
- tags: ['autodocs'],
9
- parameters: {
10
- layout: 'fullscreen',
11
- },
12
- args: {
13
- inboxId: 'inbox',
14
- accounts,
15
- accountId: 'a0',
16
- dialogs,
17
- },
18
- } satisfies Meta<typeof Inbox>;
19
-
20
- export default meta;
21
- type Story = StoryObj<typeof meta>;
22
-
23
- export const Default: Story = {
24
- args: {},
25
- };
26
-
27
- export const BulkMode: Story = {
28
- args: {
29
- selectedIds: ['d1'],
30
- },
31
- };
32
-
33
- export const DialogOpen: Story = {
34
- args: {
35
- dialogId: 'd1',
36
- },
37
- };
38
-
39
- export const SavedSearches: Story = {
40
- args: {
41
- inboxId: 'bookmarks',
42
- },
43
- };
44
-
45
- export const ProfilePage: Story = {
46
- args: {
47
- inboxId: 'profile',
48
- },
49
- };
50
-
51
- export const SettingsPage: Story = {
52
- args: {
53
- inboxId: 'settings',
54
- },
55
- };
@@ -1,12 +0,0 @@
1
- import { InboxLayout, InboxProvider, InboxSection } from './';
2
- import type { InboxDefaultValue } from './';
3
-
4
- export const Inbox = ({ accounts, accountId, inboxId, dialogId, dialogs, selectedIds }: InboxDefaultValue) => {
5
- return (
6
- <InboxProvider defaultValue={{ accounts, accountId, inboxId, dialogId, dialogs, selectedIds }}>
7
- <InboxLayout>
8
- <InboxSection />
9
- </InboxLayout>
10
- </InboxProvider>
11
- );
12
- };
@@ -1,51 +0,0 @@
1
- import type { ReactNode } from 'react';
2
- import { ActionFooter, ActionHeader, ActionMenu, Layout } from '../../components';
3
- import { actionMenu, footer, header, menu } from './';
4
- import { useInbox } from './';
5
-
6
- export interface InboxLayoutProps {
7
- children: ReactNode;
8
- }
9
-
10
- export const InboxLayout = ({ children }: InboxLayoutProps) => {
11
- const { theme, itemsCount, selectedCount, inboxId, accounts, dialogId, onInboxId, onUnselectAll } = useInbox();
12
-
13
- const selectedTitle = `${selectedCount} av ${itemsCount} valgt`;
14
- const bulkMode = selectedCount > 0;
15
-
16
- return (
17
- <Layout
18
- theme={selectedCount ? 'neutral' : theme}
19
- footer={footer}
20
- header={{
21
- ...header,
22
- currentAccount: accounts?.[0],
23
- menu: {
24
- accounts,
25
- },
26
- search: !dialogId && {
27
- ...header.search,
28
- },
29
- }}
30
- sidebar={{
31
- hidden: bulkMode,
32
- menu: {
33
- ...menu,
34
- items: menu?.items.map((item) => {
35
- return {
36
- ...item,
37
- selected: inboxId === item.id,
38
- onClick: () => onInboxId(item.id),
39
- };
40
- }),
41
- },
42
- }}
43
- >
44
- <ActionHeader title={selectedTitle} hidden={!bulkMode} onDismiss={onUnselectAll} />
45
- {children}
46
- <ActionFooter hidden={!bulkMode}>
47
- <ActionMenu theme="global-dark" items={actionMenu} />
48
- </ActionFooter>
49
- </Layout>
50
- );
51
- };
@@ -1,50 +0,0 @@
1
- 'use client';
2
- import { DialogList, PageBase } from '../../components';
3
- import { useInbox } from './';
4
- import { InboxToolbar } from './InboxToolbar';
5
-
6
- export function InboxPage() {
7
- const { inboxId, onDialogId, items = [], onSelectId, selectedCount } = useInbox();
8
- const selected = items?.filter((item) => item.selected);
9
-
10
- const inboxItems = items
11
- ?.filter((item) => {
12
- const inboxStatus = item?.status.value;
13
-
14
- if (inboxId === 'drafts' && inboxStatus !== 'draft') {
15
- return false;
16
- }
17
- if (inboxId === 'sent' && inboxStatus !== 'sent') {
18
- return false;
19
- }
20
- if (inboxId === 'inbox' && (item.status.value === 'sent' || item.status.value === 'draft')) {
21
- return false;
22
- }
23
-
24
- return true;
25
- })
26
- .map((item) => {
27
- return {
28
- ...item,
29
- groupId: 'g1',
30
- onClick: selectedCount > 0 ? () => onSelectId(item.id) : () => onDialogId(item.id),
31
- select: {
32
- checked: item?.selected,
33
- onChange: () => onSelectId(item.id),
34
- },
35
- };
36
- });
37
-
38
- const inboxGroups = {
39
- g1: {
40
- title: 'Gruppe',
41
- },
42
- };
43
-
44
- return (
45
- <PageBase spacing="md" margin="lg">
46
- {!selected.length > 0 && <InboxToolbar items={inboxItems} />}
47
- <DialogList items={inboxItems} groups={inboxGroups} />
48
- </PageBase>
49
- );
50
- }
@@ -1,135 +0,0 @@
1
- import { type ReactNode, createContext, useContext, useState } from 'react';
2
- import type { DialogProps } from '../../components';
3
-
4
- interface AccountProps {
5
- id?: string;
6
- type?: string;
7
- name?: string;
8
- }
9
-
10
- export interface InboxDefaultValue {
11
- accountId?: string | null;
12
- accounts: AccountProps[];
13
- inboxId?: string | null;
14
- dialogId?: string | null;
15
- dialogs?: DialogProps[];
16
- selectedIds?: string[];
17
- }
18
-
19
- interface InboxProviderProps {
20
- children: ReactNode;
21
- defaultValue?: InboxDefaultValue;
22
- }
23
-
24
- interface InboxContextProvider {
25
- theme?: string;
26
- account?: AccountProps;
27
- accountId?: string | null;
28
- accounts?: AccountProps[];
29
- inboxId?: string | null;
30
- dialogId?: string | null;
31
- onAccountId?: (id: string) => void;
32
- onInboxId?: (id: string) => void;
33
- onDialogId?: (id: string) => void;
34
- items?: (DialogProps & { selected: boolean })[];
35
- itemsCount: number;
36
- onSelectId?: (id: string) => void;
37
- onUnselectAll?: () => void;
38
- selectedCount: number;
39
- }
40
-
41
- const InboxContext = createContext<InboxContextProvider>({
42
- theme: '',
43
- account: {},
44
- accountId: null,
45
- accounts: [],
46
- inboxId: null,
47
- dialogId: null,
48
- items: [],
49
- itemsCount: 0,
50
- selectedCount: 0,
51
- });
52
-
53
- export const InboxProvider = ({ defaultValue, children }: InboxProviderProps) => {
54
- const [accountId, setAccountId] = useState(defaultValue?.accountId ?? null);
55
- const [accounts, setAccounts] = useState(defaultValue?.accounts ?? []);
56
- const [inboxId, setInboxId] = useState(defaultValue?.inboxId ?? null);
57
- const [dialogId, setDialogId] = useState(defaultValue?.dialogId ?? null);
58
- const [selectedIds, setSelectedIds] = useState(defaultValue?.selectedIds || []);
59
-
60
- const onAccountId = (id: string) => {
61
- setAccountId(id);
62
- setAccounts((prevState) => {
63
- return prevState.map((item) => {
64
- return {
65
- ...item,
66
- selected: id === item.id,
67
- };
68
- });
69
- });
70
- };
71
-
72
- const account = accounts?.find((item) => item.id === accountId);
73
- const theme = account?.type;
74
-
75
- const onInboxId = (id: string) => {
76
- setInboxId(id);
77
- setDialogId(null);
78
- };
79
-
80
- const onDialogId = (id: string) => {
81
- setDialogId((prevState) => (prevState === id ? null : id));
82
- };
83
-
84
- const onSelectId = (id: string) => {
85
- setSelectedIds((prevState) => {
86
- if (prevState.includes(id)) {
87
- return prevState.filter((prevId) => prevId !== id);
88
- }
89
- return [...prevState, id];
90
- });
91
- };
92
-
93
- const onUnselectAll = () => {
94
- setSelectedIds([]);
95
- };
96
-
97
- const items = defaultValue?.dialogs?.map((item) => ({
98
- ...item,
99
- selected: selectedIds.includes(item.id),
100
- }));
101
-
102
- const itemsCount = items?.length || 0;
103
- const selectedCount = selectedIds.length;
104
-
105
- return (
106
- <InboxContext.Provider
107
- value={{
108
- theme,
109
- account,
110
- accounts,
111
- accountId,
112
- onAccountId,
113
- inboxId,
114
- onInboxId,
115
- dialogId,
116
- onDialogId,
117
- items,
118
- itemsCount,
119
- onSelectId,
120
- onUnselectAll,
121
- selectedCount,
122
- }}
123
- >
124
- {children}
125
- </InboxContext.Provider>
126
- );
127
- };
128
-
129
- export const useInbox = () => {
130
- return useContext(InboxContext);
131
- };
132
-
133
- export const useProfile = () => {
134
- return useContext(InboxContext);
135
- };
@@ -1,39 +0,0 @@
1
- 'use client';
2
- import { actionMenu, useInbox } from './';
3
- import { BookmarksPage, DialogPage, InboxPage, ProfilePage, SettingsPage } from './';
4
-
5
- export function InboxSection() {
6
- const { inboxId, dialogId, onDialogId, items = [] } = useInbox();
7
-
8
- if (inboxId === 'bookmarks') {
9
- return <BookmarksPage />;
10
- }
11
-
12
- if (inboxId === 'settings') {
13
- return <SettingsPage />;
14
- }
15
-
16
- if (inboxId === 'profile') {
17
- return <ProfilePage />;
18
- }
19
-
20
- if (dialogId) {
21
- const dialog = items.find((item) => item.id === dialogId);
22
- return (
23
- <DialogPage
24
- dialog={{
25
- ...dialog,
26
- menu: {
27
- id: 'context-menu',
28
- items: actionMenu,
29
- },
30
- backButton: {
31
- onClick: () => onDialogId(dialogId),
32
- },
33
- }}
34
- />
35
- );
36
- }
37
-
38
- return <InboxPage />;
39
- }