@altinn/altinn-components 0.57.2 → 0.58.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 (240) hide show
  1. package/README.md +33 -0
  2. package/dist/Section-DPj8jAL1.js +2225 -0
  3. package/dist/assets/Button.css +1 -1
  4. package/dist/assets/InboxPage.css +1 -0
  5. package/dist/assets/LayoutBase.css +1 -1
  6. package/dist/assets/MenuListItem.css +1 -1
  7. package/dist/assets/QueryLabel.css +1 -1
  8. package/dist/assets/QueryLabelItem.css +1 -1
  9. package/dist/assets/Section.css +1 -1
  10. package/dist/assets/Toolbar.css +1 -0
  11. package/dist/assets/ToolbarControls.css +1 -0
  12. package/dist/assets/Typography.css +1 -1
  13. package/dist/components/AccessAreaListItem/AccessAreaListItem.js +1 -1
  14. package/dist/components/AccessPackageListItem/AccessPackageListItem.js +1 -1
  15. package/dist/components/Account/AccountList.js +1 -1
  16. package/dist/components/Account/AccountListItem.js +1 -1
  17. package/dist/components/Account/AccountListItemControls.js +1 -1
  18. package/dist/components/Account/AccountListItemDetails.js +1 -1
  19. package/dist/components/Account/AccountListVirtual.js +1 -1
  20. package/dist/components/Account/AccountMenu.js +1 -1
  21. package/dist/components/Account/AccountNotificationSettings.js +1 -1
  22. package/dist/components/Account/AccountOrganization.js +1 -1
  23. package/dist/components/AccountSelector/AccountSelector.js +1 -1
  24. package/dist/components/ActivityLog/ActivityLog.js +1 -1
  25. package/dist/components/ActivityLog/ActivityLogItem.js +1 -1
  26. package/dist/components/ActivityLog/ActivityLogSegment.js +1 -1
  27. package/dist/components/Alert/Alert.js +1 -1
  28. package/dist/components/Article/Article.js +1 -1
  29. package/dist/components/Article/ArticleContact.js +1 -1
  30. package/dist/components/Article/ArticleHeader.js +1 -1
  31. package/dist/components/Attachment/AttachmentLink.js +1 -1
  32. package/dist/components/Banner/Banner.js +1 -1
  33. package/dist/components/Bookmarks/BookmarkModal.js +1 -1
  34. package/dist/components/Bookmarks/BookmarkSettingsItem.js +1 -1
  35. package/dist/components/Bookmarks/BookmarkSettingsItemLabel.js +1 -1
  36. package/dist/components/Bookmarks/BookmarkSettingsList.js +1 -1
  37. package/dist/components/Breadcrumbs/Breadcrumbs.js +1 -1
  38. package/dist/components/Bulk/BulkButton.js +11 -11
  39. package/dist/components/Bulk/BulkFooter.js +3 -3
  40. package/dist/components/Bulk/BulkHeader.js +49 -31
  41. package/dist/components/Button/Button.js +5 -5
  42. package/dist/components/Button/ButtonIcon.js +1 -1
  43. package/dist/components/Button/ComboButton.js +1 -1
  44. package/dist/components/Button/FloatingActionButton.js +1 -1
  45. package/dist/components/Button/IconButton.js +1 -1
  46. package/dist/components/Byline/Byline.js +1 -1
  47. package/dist/components/Byline/index.js +1 -1
  48. package/dist/components/ContextMenu/ContextMenu.js +27 -24
  49. package/dist/components/Dashboard/DashboardCard.js +1 -1
  50. package/dist/components/Dashboard/DashboardHeader.js +1 -1
  51. package/dist/components/Datepicker/Datepicker.js +1 -1
  52. package/dist/components/Datepicker/DatepickerHeader.js +1 -1
  53. package/dist/components/Datepicker/DatepickerTable.js +1 -1
  54. package/dist/components/Dialog/Dialog.js +1 -1
  55. package/dist/components/Dialog/DialogActions.js +1 -1
  56. package/dist/components/Dialog/DialogActivityLog.js +1 -1
  57. package/dist/components/Dialog/DialogAttachments.js +1 -1
  58. package/dist/components/Dialog/DialogBody.js +1 -1
  59. package/dist/components/Dialog/DialogByline.js +1 -1
  60. package/dist/components/Dialog/DialogContact.js +1 -1
  61. package/dist/components/Dialog/DialogHeader.js +1 -1
  62. package/dist/components/Dialog/DialogHistory.js +1 -1
  63. package/dist/components/Dialog/DialogHistoryItem.js +1 -1
  64. package/dist/components/Dialog/DialogHistorySegment.js +1 -1
  65. package/dist/components/Dialog/DialogLayout.js +9 -9
  66. package/dist/components/Dialog/DialogList.js +1 -1
  67. package/dist/components/Dialog/DialogListGroup.js +1 -1
  68. package/dist/components/Dialog/DialogListItem.js +1 -1
  69. package/dist/components/Dialog/DialogMetadata.js +1 -1
  70. package/dist/components/Dialog/DialogSection.js +1 -1
  71. package/dist/components/Dialog/DialogSeenBy.js +1 -1
  72. package/dist/components/Dialog/DialogSelect.js +1 -1
  73. package/dist/components/Dialog/DialogStatus.js +1 -1
  74. package/dist/components/Dialog/DialogTabs.js +1 -1
  75. package/dist/components/Dialog/SeenByLog.js +1 -1
  76. package/dist/components/Dialog/SeenByLogButton.js +1 -1
  77. package/dist/components/Dialog/SeenByLogItem.js +1 -1
  78. package/dist/components/Dialog/index.js +1 -1
  79. package/dist/components/Dropdown/DrawerButton.js +1 -1
  80. package/dist/components/Dropdown/DrawerHeader.js +1 -1
  81. package/dist/components/Dropdown/Dropdown.js +1 -1
  82. package/dist/components/Dropdown/DropdownBase.js +1 -1
  83. package/dist/components/Dropdown/FloatingDropdown.js +1 -1
  84. package/dist/components/Dropdown/index.js +5 -7
  85. package/dist/components/Forms/Checkbox.js +1 -1
  86. package/dist/components/Forms/CheckboxOptions.js +1 -1
  87. package/dist/components/Forms/FieldBase.js +1 -1
  88. package/dist/components/Forms/FieldsetBase.js +1 -1
  89. package/dist/components/Forms/Radio.js +1 -1
  90. package/dist/components/Forms/RadioOptions.js +1 -1
  91. package/dist/components/Forms/SearchField.js +1 -1
  92. package/dist/components/Forms/SelectField.js +1 -1
  93. package/dist/components/Forms/Switch.js +1 -1
  94. package/dist/components/Forms/SwitchOptions.js +1 -1
  95. package/dist/components/Forms/TextField.js +1 -1
  96. package/dist/components/Forms/TextFieldDropdown.js +1 -1
  97. package/dist/components/Forms/TextareaField.js +1 -1
  98. package/dist/components/Forms/index.js +1 -1
  99. package/dist/components/GlobalHeader/GlobalAccountButton.js +1 -1
  100. package/dist/components/GlobalHeader/GlobalHeader.js +1 -1
  101. package/dist/components/GlobalHeader/GlobalMenuButton.js +1 -1
  102. package/dist/components/GlobalHeader/HeaderDrawer.js +1 -1
  103. package/dist/components/GlobalHeader/HeaderDropdown.js +1 -1
  104. package/dist/components/GlobalHeader/HeaderLogo.js +1 -1
  105. package/dist/components/GlobalMenu/GlobalMenu.js +1 -1
  106. package/dist/components/GlobalMenu/LocaleSwitcher.js +1 -1
  107. package/dist/components/GlobalMenu/LogoutButton.js +1 -1
  108. package/dist/components/GlobalMenu_old/BackButton.js +1 -1
  109. package/dist/components/GlobalMenu_old/CurrentAccount.js +1 -1
  110. package/dist/components/GlobalMenu_old/GlobalMenu.js +1 -1
  111. package/dist/components/GlobalMenu_old/GlobalMenuButton.js +1 -1
  112. package/dist/components/GlobalMenu_old/LogoutButton.js +1 -1
  113. package/dist/components/Header/Header.js +1 -1
  114. package/dist/components/Header/HeaderBase.js +1 -1
  115. package/dist/components/Header/HeaderButton.js +1 -1
  116. package/dist/components/Header/LocaleButton.js +1 -1
  117. package/dist/components/Header/LocaleSwitcher.js +1 -1
  118. package/dist/components/Icon/Icon.js +1 -1
  119. package/dist/components/Icon/index.js +1 -1
  120. package/dist/components/Inbox/InboxPage.js +20 -0
  121. package/dist/components/Inbox/index.js +4 -0
  122. package/dist/components/InboxSearch/InboxSearch.js +1 -1
  123. package/dist/components/Item/ItemLabel.js +1 -1
  124. package/dist/components/Item/ItemMedia.js +1 -1
  125. package/dist/components/Item/ItemSelect.js +1 -1
  126. package/dist/components/Item/index.js +1 -1
  127. package/dist/components/Layout/Layout.js +1 -1
  128. package/dist/components/Layout/LayoutBase.js +3 -3
  129. package/dist/components/List/List.js +1 -1
  130. package/dist/components/List/ListBase.js +1 -1
  131. package/dist/components/List/ListItem.js +1 -1
  132. package/dist/components/List/ListItemHeader.js +1 -1
  133. package/dist/components/List/ListItemIcon.js +1 -1
  134. package/dist/components/List/ListItemLabel.js +1 -1
  135. package/dist/components/List/index.js +1 -1
  136. package/dist/components/Menu/Menu.js +1 -1
  137. package/dist/components/Menu/MenuItem.js +1 -1
  138. package/dist/components/Menu/MenuItems.js +1 -1
  139. package/dist/components/Menu/MenuListItem.js +7 -7
  140. package/dist/components/Menu/MenuListSearch.js +1 -1
  141. package/dist/components/Menu/MenuOption.js +1 -1
  142. package/dist/components/Menu/TabMenu.js +1 -1
  143. package/dist/components/Menu/VirtualizedMenuItems.js +1 -1
  144. package/dist/components/Menu/index.js +1 -1
  145. package/dist/components/Menu/useMenuSearch.js +1 -1
  146. package/dist/components/Metadata/MetaItem.js +1 -1
  147. package/dist/components/Metadata/MetaItemIcon.js +1 -1
  148. package/dist/components/Metadata/MetaProgress.js +1 -1
  149. package/dist/components/Metadata/MetaTimestamp.js +1 -1
  150. package/dist/components/Metadata/Metadata.js +1 -1
  151. package/dist/components/Metadata/index.js +1 -1
  152. package/dist/components/Modal/Modal.js +1 -1
  153. package/dist/components/Modal/ModalBase.js +1 -1
  154. package/dist/components/Modal/ModalHeader.js +1 -1
  155. package/dist/components/Modal/ModalIcon.js +1 -1
  156. package/dist/components/Notifications/NotificationItem.js +1 -1
  157. package/dist/components/Notifications/NotificationItemBase.js +1 -1
  158. package/dist/components/Notifications/NotificationItemControls.js +1 -1
  159. package/dist/components/Notifications/NotificationItemIcon.js +1 -1
  160. package/dist/components/Page/AccordionSection.js +1 -1
  161. package/dist/components/Page/ContactButtons.js +1 -1
  162. package/dist/components/Page/ContactSection.js +1 -1
  163. package/dist/components/Page/PageMenu.js +1 -1
  164. package/dist/components/Page/PageNav.js +1 -1
  165. package/dist/components/Page/Section.js +1 -1
  166. package/dist/components/Page/index.js +1 -1
  167. package/dist/components/ResourceListItem/ResourceListItem.js +1 -1
  168. package/dist/components/RootProvider/RootProvider.js +1 -1
  169. package/dist/components/RootProvider/index.js +1 -1
  170. package/dist/components/Search/SearchItem.js +1 -1
  171. package/dist/components/Searchbar/Autocomplete.js +1 -1
  172. package/dist/components/Searchbar/AutocompleteItem.js +1 -1
  173. package/dist/components/Searchbar/Searchbar.js +1 -1
  174. package/dist/components/Searchbar/SearchbarField.js +1 -1
  175. package/dist/components/Settings/SettingsItem.js +20 -25
  176. package/dist/components/Settings/SettingsItemBase.js +1 -1
  177. package/dist/components/Settings/SettingsList.js +1 -1
  178. package/dist/components/Settings/SettingsModal.js +1 -1
  179. package/dist/components/Settings/SettingsSection.js +1 -1
  180. package/dist/components/Settings/UsedByLog.js +1 -1
  181. package/dist/components/Settings/UsedByLogItem.js +1 -1
  182. package/dist/components/Snackbar/SnackbarItem.js +1 -1
  183. package/dist/components/Timeline/Timeline.js +1 -1
  184. package/dist/components/Timeline/TimelineActivity.js +1 -1
  185. package/dist/components/Timeline/TimelineBase.js +1 -1
  186. package/dist/components/Timeline/TimelineFooter.js +1 -1
  187. package/dist/components/Timeline/TimelineHeader.js +1 -1
  188. package/dist/components/Timeline/TimelineIcon.js +1 -1
  189. package/dist/components/Timeline/TimelineSection.js +1 -1
  190. package/dist/components/Timeline/TimelineSegment.js +1 -1
  191. package/dist/components/Toolbar/DatepickerFilter.js +1 -1
  192. package/dist/components/Toolbar/QueryLabel.js +4 -4
  193. package/dist/components/Toolbar/QueryLabelItem.js +4 -4
  194. package/dist/components/Toolbar/SelectDateFilter.js +1 -1
  195. package/dist/components/Toolbar/Toolbar.js +12 -16
  196. package/dist/components/Toolbar/ToolbarControls.js +8 -0
  197. package/dist/components/Toolbar/ToolbarFilter.js +43 -38
  198. package/dist/components/Toolbar/ToolbarFilterAddMenu.js +1 -1
  199. package/dist/components/Toolbar/ToolbarFilterButton.js +1 -1
  200. package/dist/components/Toolbar/ToolbarFilterMenu.js +1 -1
  201. package/dist/components/Toolbar/ToolbarMenu.js +1 -1
  202. package/dist/components/Toolbar/ToolbarSearch.js +1 -1
  203. package/dist/components/Toolbar/index.js +1 -1
  204. package/dist/components/Transmission/Transmission.js +1 -1
  205. package/dist/components/Transmission/TransmissionList.js +1 -1
  206. package/dist/components/Transmission/TransmissionType.js +1 -1
  207. package/dist/components/Typography/Heading.js +1 -1
  208. package/dist/components/Typography/Typography.js +15 -15
  209. package/dist/components/Typography/index.js +1 -1
  210. package/dist/components/UserListItem/UserListItem.js +1 -1
  211. package/dist/components/index.js +98 -98
  212. package/dist/hooks/useAccountSelector.js +1 -1
  213. package/dist/index.js +105 -105
  214. package/dist/types/lib/components/Bulk/Bulk.stories.d.ts +4 -1
  215. package/dist/types/lib/components/Bulk/BulkButton.d.ts +2 -1
  216. package/dist/types/lib/components/Button/Button.d.ts +1 -1
  217. package/dist/types/lib/components/ContextMenu/ContextMenu.d.ts +3 -2
  218. package/dist/types/lib/components/Dropdown/Dropdown.d.ts +3 -1
  219. package/dist/types/lib/components/Dropdown/Dropdown.stories.d.ts +1 -2
  220. package/dist/types/lib/components/Dropdown/index.d.ts +0 -1
  221. package/dist/types/lib/components/Forms/SearchField.stories.d.ts +1 -0
  222. package/dist/types/lib/components/Inbox/InboxPage.d.ts +10 -0
  223. package/dist/types/lib/components/Inbox/InboxPage.stories.d.ts +37 -0
  224. package/dist/types/lib/components/Inbox/index.d.ts +1 -0
  225. package/dist/types/lib/components/Layout/LayoutBase.d.ts +1 -1
  226. package/dist/types/lib/components/Menu/VirtualizedMenu.stories.d.ts +24 -3
  227. package/dist/types/lib/components/Toolbar/QueryLabel.stories.d.ts +11 -0
  228. package/dist/types/lib/components/Toolbar/QueryLabelItem.d.ts +1 -1
  229. package/dist/types/lib/components/Toolbar/Toolbar.d.ts +2 -1
  230. package/dist/types/lib/components/Toolbar/Toolbar.stories.d.ts +3 -1
  231. package/dist/types/lib/components/Toolbar/ToolbarControls.d.ts +6 -0
  232. package/dist/types/lib/components/Toolbar/ToolbarFilter.d.ts +3 -1
  233. package/dist/types/lib/components/Toolbar/ToolbarFilter.stories.d.ts +1 -1
  234. package/dist/types/lib/components/index.d.ts +1 -0
  235. package/dist/types/lib/test-utils/screenshot-compare.d.ts +49 -0
  236. package/package.json +10 -3
  237. package/dist/Section-jhq4n77E.js +0 -2260
  238. package/dist/assets/DrawerOrDropdown.css +0 -1
  239. package/dist/components/Dropdown/DrawerOrDropdown.js +0 -42
  240. package/dist/types/lib/components/Dropdown/DrawerOrDropdown.d.ts +0 -11
@@ -0,0 +1,11 @@
1
+ import { StoryObj } from '@storybook/react-vite';
2
+ declare const meta: {
3
+ title: string;
4
+ component: ({ params, size, variant, color }: import('./QueryLabel').QueryLabelProps) => import("react/jsx-runtime").JSX.Element;
5
+ parameters: {};
6
+ args: {};
7
+ };
8
+ export default meta;
9
+ type Story = StoryObj<typeof meta>;
10
+ export declare const Default: Story;
11
+ export declare const Xxs: Story;
@@ -1,6 +1,6 @@
1
1
  import { ReactNode } from 'react';
2
2
  export type QueryItemType = 'scope' | 'search' | 'filter' | 'connector';
3
- export type QueryItemSize = 'xs' | 'xxs';
3
+ export type QueryItemSize = 'default' | 'xs' | 'xxs';
4
4
  export type QueryItemVariant = 'default' | 'subtle';
5
5
  export interface QueryItemProps {
6
6
  type?: QueryItemType;
@@ -9,5 +9,6 @@ export interface ToolbarProps {
9
9
  filter?: ToolbarFilterProps;
10
10
  disabled?: boolean;
11
11
  children?: ReactNode;
12
+ controls?: ReactNode;
12
13
  }
13
- export declare const Toolbar: ({ accountMenu, menus, search, filter, disabled, children }: ToolbarProps) => import("react/jsx-runtime").JSX.Element;
14
+ export declare const Toolbar: ({ accountMenu, menus, search, filter, disabled, controls, children }: ToolbarProps) => import("react/jsx-runtime").JSX.Element;
@@ -1,7 +1,7 @@
1
1
  import { ToolbarFilterProps, ToolbarMenuProps } from './';
2
2
  declare const meta: {
3
3
  title: string;
4
- component: ({ accountMenu, menus, search, filter, disabled, children }: import('./Toolbar').ToolbarProps) => import("react/jsx-runtime").JSX.Element;
4
+ component: ({ accountMenu, menus, search, filter, disabled, controls, children }: import('./Toolbar').ToolbarProps) => import("react/jsx-runtime").JSX.Element;
5
5
  parameters: {};
6
6
  decorators: ((Story: import('storybook/internal/csf').PartialStoryFn<import('@storybook/react-vite').ReactRenderer, {
7
7
  accountMenu?: ToolbarMenuProps | undefined;
@@ -10,6 +10,7 @@ declare const meta: {
10
10
  filter?: ToolbarFilterProps | undefined;
11
11
  disabled?: boolean | undefined;
12
12
  children?: import('react').ReactNode;
13
+ controls?: import('react').ReactNode;
13
14
  }>, _: import('storybook/internal/csf').StoryContext<import('@storybook/react-vite').ReactRenderer, {
14
15
  accountMenu?: ToolbarMenuProps | undefined;
15
16
  menus?: ToolbarMenuProps[] | undefined;
@@ -17,6 +18,7 @@ declare const meta: {
17
18
  filter?: ToolbarFilterProps | undefined;
18
19
  disabled?: boolean | undefined;
19
20
  children?: import('react').ReactNode;
21
+ controls?: import('react').ReactNode;
20
22
  }>) => import("react/jsx-runtime").JSX.Element)[];
21
23
  args: {};
22
24
  };
@@ -0,0 +1,6 @@
1
+ import { ReactNode } from 'react';
2
+ export interface ToolbarControlsProps {
3
+ className?: string;
4
+ children?: ReactNode;
5
+ }
6
+ export declare const ToolbarControls: ({ className, children }: ToolbarControlsProps) => import("react/jsx-runtime").JSX.Element;
@@ -1,3 +1,4 @@
1
+ import { ReactNode } from 'react';
1
2
  import { FilterProps, FilterState } from './useFilter';
2
3
  export interface ToolbarFilterProps {
3
4
  disabled?: boolean;
@@ -11,5 +12,6 @@ export interface ToolbarFilterProps {
11
12
  filterState?: FilterState;
12
13
  onFilterStateChange?: (state: FilterState) => void;
13
14
  virtualized?: boolean;
15
+ controls?: ReactNode;
14
16
  }
15
- export declare const ToolbarFilter: ({ disabled, filters, filterState, onFilterStateChange, addLabel, addNextLabel, resetLabel, removeLabel, submitLabel, getFilterLabel, virtualized, }: ToolbarFilterProps) => import("react/jsx-runtime").JSX.Element;
17
+ export declare const ToolbarFilter: ({ disabled, filters, filterState, onFilterStateChange, addLabel, addNextLabel, resetLabel, removeLabel, submitLabel, getFilterLabel, virtualized, controls, }: ToolbarFilterProps) => import("react/jsx-runtime").JSX.Element;
@@ -1,7 +1,7 @@
1
1
  import { ToolbarFilterProps } from './ToolbarFilter';
2
2
  declare const meta: {
3
3
  title: string;
4
- component: ({ disabled, filters, filterState, onFilterStateChange, addLabel, addNextLabel, resetLabel, removeLabel, submitLabel, getFilterLabel, virtualized, }: ToolbarFilterProps) => import("react/jsx-runtime").JSX.Element;
4
+ component: ({ disabled, filters, filterState, onFilterStateChange, addLabel, addNextLabel, resetLabel, removeLabel, submitLabel, getFilterLabel, virtualized, controls, }: ToolbarFilterProps) => import("react/jsx-runtime").JSX.Element;
5
5
  parameters: {};
6
6
  args: {};
7
7
  };
@@ -11,6 +11,7 @@ export * from './Breadcrumbs';
11
11
  export * from './Button';
12
12
  export * from './Byline';
13
13
  export * from './ContextMenu';
14
+ export * from './Inbox';
14
15
  export * from './Dialog';
15
16
  export * from './Divider';
16
17
  export * from './Dropdown';
@@ -0,0 +1,49 @@
1
+ export interface ComparisonResult {
2
+ match: boolean;
3
+ mismatchedPixels: number;
4
+ totalPixels: number;
5
+ percentage: number;
6
+ error?: string;
7
+ baselineCreated?: boolean;
8
+ }
9
+ /**
10
+ * Compare two PNG screenshots pixel-by-pixel.
11
+ * - If baseline doesn't exist: auto-creates it from actual (first run)
12
+ * - If baseline exists: compares pixel-by-pixel and generates diff image on mismatch
13
+ *
14
+ * @param actualPath - Screenshot captured during test run (.screenshots-temp/actual/)
15
+ * @param baselinePath - Reference screenshot (lib/components/.../\_\_screenshots\_\_/)
16
+ * @param diffPath - Where to save diff image on mismatch (.screenshots-temp/diff/)
17
+ * @param threshold - Pixel matching threshold (0-1), defaults to 0.1
18
+ * @returns Comparison result with match status and pixel difference details
19
+ */
20
+ export declare function compareScreenshots(actualPath: string, baselinePath: string, diffPath: string, threshold?: number): Promise<ComparisonResult>;
21
+ /**
22
+ * Clean up temporary screenshot directories created during testing.
23
+ */
24
+ export declare function cleanupTemporaryFiles(): Promise<void>;
25
+ interface ComparisonFailure {
26
+ testName: string;
27
+ actualPath: string;
28
+ baselinePath: string;
29
+ diffPath: string;
30
+ percentage: number;
31
+ mismatchedPixels: number;
32
+ totalPixels: number;
33
+ error?: string;
34
+ }
35
+ /**
36
+ * Compare all captured screenshots against baselines.
37
+ * - Baselines are stored in component-local \_\_screenshots\_\_ directories
38
+ * - If baseline doesn't exist, it's auto-created from the actual screenshot
39
+ * - Diff images are saved to .screenshots-temp/diff/ for failed comparisons
40
+ *
41
+ * @param filterPattern - Optional pattern to filter screenshots (e.g., "Button")
42
+ * @returns Summary of passed tests, failures, and newly created baselines
43
+ */
44
+ export declare function compareAllScreenshots(filterPattern?: string): Promise<{
45
+ passed: number;
46
+ failed: ComparisonFailure[];
47
+ baselinesCreated: number;
48
+ }>;
49
+ export {};
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@altinn/altinn-components",
3
- "version": "0.57.2",
3
+ "version": "0.58.0",
4
4
  "main": "dist/index.js",
5
5
  "files": [
6
6
  "dist/",
@@ -38,7 +38,9 @@
38
38
  "@storybook/addon-vitest": "10.2.10",
39
39
  "@storybook/react-vite": "10.2.10",
40
40
  "@testing-library/react": "^16.3.0",
41
+ "@storycap-testrun/browser": "^2.0.0",
41
42
  "@types/node": "^25.0.7",
43
+ "@types/pngjs": "^6.0.5",
42
44
  "@types/react": "^19.1.5",
43
45
  "@types/react-dom": "^19.1.5",
44
46
  "@vitejs/plugin-react-swc": "^3.9.0",
@@ -49,18 +51,20 @@
49
51
  "axe-playwright": "^2.1.0",
50
52
  "glob": "^13.0.6",
51
53
  "lint-staged": "^15.5.2",
54
+ "pixelmatch": "^7.1.0",
52
55
  "playwright": "^1.57.0",
56
+ "pngjs": "^7.0.0",
53
57
  "rollup-preserve-directives": "^1.1.3",
54
58
  "storybook": "10.2.10",
55
59
  "storybook-addon-tag-badges": "^3.0.4",
56
60
  "storybook-addon-theme-provider": "^0.2.10",
57
61
  "tsx": "^4.21.0",
58
62
  "typescript": "^5.8.3",
59
- "vite": "7.3.1",
63
+ "vite": "7.3.2",
60
64
  "vite-plugin-dts": "^4.5.4",
61
65
  "vite-plugin-lib-inject-css": "^2.2.2",
62
66
  "vite-plugin-static-copy": "^2.3.2",
63
- "vitest": "4.0.16"
67
+ "vitest": "4.0.18"
64
68
  },
65
69
  "peerDependencies": {
66
70
  "react": ">=18.3.1 || ^19.0.0",
@@ -87,6 +91,9 @@
87
91
  "ci:build-storybook": "storybook build --quiet",
88
92
  "test-storybook": "vitest --run --project=storybook",
89
93
  "test-storybook-watch": "vitest --project=storybook",
94
+ "test:screenshots": "rm -rf .screenshots-temp/actual && SCREENSHOT_MODE=test vitest --run --project=storybook && node --import tsx lib/test-utils/screenshot-compare.ts",
95
+ "test:screenshots:filter": "bash scripts/test-screenshots-filter.sh",
96
+ "test:screenshots:regenerate-all": "node --import tsx scripts/regenerate-screenshots.ts",
90
97
  "ci:test-storybook": "pnpm dlx concurrently -k -s first \"pnpm storybook\" \"pnpm dlx wait-on http://localhost:6006 && pnpm test-storybook\"",
91
98
  "install:browsers": "pnpm exec playwright install",
92
99
  "build-tokens": "node --import tsx scripts/build-tokens.ts && pnpm biome check ./lib/css/tokens/design-tokens-build/. --write"