@norges-domstoler/dds-components 9.2.0 → 9.3.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 (39) hide show
  1. package/README.md +1 -0
  2. package/dist/cjs/components/Button/Button.stories.d.ts +4 -4
  3. package/dist/cjs/components/Checkbox/Checkbox.stories.d.ts +2 -2
  4. package/dist/cjs/components/FormGenerator/FormGenerator.d.ts +2 -0
  5. package/dist/cjs/components/FormGenerator/FormGenerator.examples.d.ts +5 -0
  6. package/dist/cjs/components/FormGenerator/FormGenerator.stories.d.ts +10 -0
  7. package/dist/cjs/components/FormGenerator/FormGenerator.styles.d.ts +9 -0
  8. package/dist/cjs/components/FormGenerator/FormGenerator.tokens.d.ts +16 -0
  9. package/dist/cjs/components/FormGenerator/FormGenerator.types.d.ts +168 -0
  10. package/dist/cjs/components/FormGenerator/index.d.ts +2 -0
  11. package/dist/cjs/components/OverflowMenu/OverflowMenu.stories.d.ts +1 -1
  12. package/dist/cjs/components/OverflowMenu/OverflowMenu.tokens.d.ts +3 -0
  13. package/dist/cjs/components/RadioButton/RadioButton.stories.d.ts +4 -4
  14. package/dist/cjs/components/SplitButton/SplitButton.d.ts +4 -1
  15. package/dist/cjs/components/SplitButton/SplitButton.tokens.d.ts +7 -0
  16. package/dist/cjs/components/ToggleButton/ToggleButton.stories.d.ts +2 -2
  17. package/dist/cjs/components/Tooltip/Tooltip.stories.d.ts +2 -2
  18. package/dist/cjs/index.js +105 -76
  19. package/dist/components/Button/Button.stories.d.ts +4 -4
  20. package/dist/components/Checkbox/Checkbox.stories.d.ts +2 -2
  21. package/dist/components/FormGenerator/FormGenerator.d.ts +2 -0
  22. package/dist/components/FormGenerator/FormGenerator.examples.d.ts +5 -0
  23. package/dist/components/FormGenerator/FormGenerator.stories.d.ts +10 -0
  24. package/dist/components/FormGenerator/FormGenerator.styles.d.ts +9 -0
  25. package/dist/components/FormGenerator/FormGenerator.tokens.d.ts +16 -0
  26. package/dist/components/FormGenerator/FormGenerator.types.d.ts +168 -0
  27. package/dist/components/FormGenerator/index.d.ts +2 -0
  28. package/dist/components/OverflowMenu/OverflowMenu.stories.d.ts +1 -1
  29. package/dist/components/OverflowMenu/OverflowMenu.tokens.d.ts +3 -0
  30. package/dist/components/OverflowMenu/OverflowMenu.tokens.js +8 -2
  31. package/dist/components/OverflowMenu/OverflowMenuItem.js +15 -5
  32. package/dist/components/RadioButton/RadioButton.stories.d.ts +4 -4
  33. package/dist/components/SplitButton/SplitButton.d.ts +4 -1
  34. package/dist/components/SplitButton/SplitButton.js +13 -6
  35. package/dist/components/SplitButton/SplitButton.tokens.d.ts +7 -0
  36. package/dist/components/SplitButton/SplitButton.tokens.js +12 -0
  37. package/dist/components/ToggleButton/ToggleButton.stories.d.ts +2 -2
  38. package/dist/components/Tooltip/Tooltip.stories.d.ts +2 -2
  39. package/package.json +1 -1
package/README.md CHANGED
@@ -48,6 +48,7 @@ Tilgjengelige komponenter:
48
48
  - Divider
49
49
  - Drawer
50
50
  - FileUploader
51
+ - FormGenerator
51
52
  - GlobalMessage
52
53
  - Grid
53
54
  - Icon
@@ -1,7 +1,7 @@
1
1
  import { ButtonProps } from '.';
2
2
  declare const _default: {
3
3
  title: string;
4
- component: import("react").ForwardRefExoticComponent<Pick<Omit<import("react").ButtonHTMLAttributes<HTMLButtonElement>, "type" | "onClick" | "onFocus" | "onBlur">, "id" | "className"> & {
4
+ component: import("react").ForwardRefExoticComponent<Pick<Omit<import("react").ButtonHTMLAttributes<HTMLButtonElement>, "onFocus" | "onBlur" | "onClick" | "type">, "id" | "className"> & {
5
5
  size?: import("./Button.types").ButtonSize | undefined;
6
6
  label?: string | undefined;
7
7
  purpose?: import("./Button.types").ButtonPurpose | undefined;
@@ -13,12 +13,12 @@ declare const _default: {
13
13
  href?: string | undefined;
14
14
  target?: string | undefined;
15
15
  } & {
16
- type?: "button" | "submit" | "reset" | undefined;
17
- onClick?: import("react").MouseEventHandler<HTMLButtonElement> | undefined;
18
16
  onFocus?: import("react").FocusEventHandler<HTMLButtonElement> | undefined;
19
17
  onBlur?: import("react").FocusEventHandler<HTMLButtonElement> | undefined;
18
+ onClick?: import("react").MouseEventHandler<HTMLButtonElement> | undefined;
19
+ type?: "button" | "submit" | "reset" | undefined;
20
20
  } & {
21
- htmlProps?: Omit<import("react").ButtonHTMLAttributes<HTMLButtonElement>, "type" | "onClick" | "onFocus" | "onBlur"> | undefined;
21
+ htmlProps?: Omit<import("react").ButtonHTMLAttributes<HTMLButtonElement>, "onFocus" | "onBlur" | "onClick" | "type"> | undefined;
22
22
  } & import("react").RefAttributes<HTMLButtonElement>>;
23
23
  argTypes: {
24
24
  label: {
@@ -1,14 +1,14 @@
1
1
  import { CheckboxProps } from '.';
2
2
  declare const _default: {
3
3
  title: string;
4
- component: import("react").ForwardRefExoticComponent<Pick<Omit<import("react").InputHTMLAttributes<HTMLInputElement>, "onBlur" | "name" | "value" | "defaultChecked" | "defaultValue" | "aria-describedby" | "onChange" | "checked">, "id" | "className"> & {
4
+ component: import("react").ForwardRefExoticComponent<Pick<Omit<import("react").InputHTMLAttributes<HTMLInputElement>, "defaultChecked" | "defaultValue" | "aria-describedby" | "onBlur" | "onChange" | "name" | "value" | "checked">, "id" | "className"> & {
5
5
  label?: string | undefined;
6
6
  error?: boolean | undefined;
7
7
  disabled?: boolean | undefined;
8
8
  readOnly?: boolean | undefined;
9
9
  indeterminate?: boolean | undefined;
10
10
  } & import("../../types").CheckboxPickedHTMLAttributes & {
11
- htmlProps?: Omit<import("react").InputHTMLAttributes<HTMLInputElement>, "onBlur" | "name" | "value" | "defaultChecked" | "defaultValue" | "aria-describedby" | "onChange" | "checked"> | undefined;
11
+ htmlProps?: Omit<import("react").InputHTMLAttributes<HTMLInputElement>, "defaultChecked" | "defaultValue" | "aria-describedby" | "onBlur" | "onChange" | "name" | "value" | "checked"> | undefined;
12
12
  } & import("react").RefAttributes<HTMLInputElement>>;
13
13
  argTypes: {
14
14
  label: {
@@ -0,0 +1,2 @@
1
+ import { FormGeneratorProps } from './FormGenerator.types';
2
+ export declare const FormGenerator: (props: FormGeneratorProps) => JSX.Element;
@@ -0,0 +1,5 @@
1
+ import { FormGeneratorField, FormGeneratorRow } from './FormGenerator.types';
2
+ export declare const exampleDefault: (FormGeneratorField | FormGeneratorRow)[];
3
+ export declare const exampleRowTypes: (FormGeneratorField | FormGeneratorRow)[];
4
+ export declare const exampleChildren: (FormGeneratorField | FormGeneratorRow)[];
5
+ export declare const exampleFull: (FormGeneratorField | FormGeneratorRow)[];
@@ -0,0 +1,10 @@
1
+ import { FormGeneratorProps } from './FormGenerator.types';
2
+ declare const _default: {
3
+ title: string;
4
+ component: (props: FormGeneratorProps) => JSX.Element;
5
+ };
6
+ export default _default;
7
+ export declare const Default: (args: FormGeneratorProps) => JSX.Element;
8
+ export declare const Rows: (args: FormGeneratorProps) => JSX.Element;
9
+ export declare const ComponentWithChildren: (args: FormGeneratorProps) => JSX.Element;
10
+ export declare const FullExample: (args: FormGeneratorProps) => JSX.Element;
@@ -0,0 +1,9 @@
1
+ import { ScreenSize } from '../../hooks/useScreenSize';
2
+ export declare const FormGeneratorFlexContainer: import("styled-components").StyledComponent<"div", any, {
3
+ screenSize: ScreenSize;
4
+ }, never>;
5
+ export declare const SubContainer: import("styled-components").StyledComponent<"div", any, {
6
+ screenSize: ScreenSize;
7
+ length: number;
8
+ breakpoint?: ScreenSize | undefined;
9
+ }, never>;
@@ -0,0 +1,16 @@
1
+ export declare const formGeneratorTokens: {
2
+ columnGaps: {
3
+ 0: string;
4
+ 1: string;
5
+ 2: string;
6
+ 3: string;
7
+ 4: string;
8
+ };
9
+ rowGaps: {
10
+ xs: string;
11
+ sm: string;
12
+ md: string;
13
+ lg: string;
14
+ xl: string;
15
+ };
16
+ };
@@ -0,0 +1,168 @@
1
+ import { ScreenSize } from '../..';
2
+ import { BaseComponentPropsWithChildren } from '../../types';
3
+ import { ButtonProps } from '../Button';
4
+ import { CardProps } from '../Card';
5
+ import { CheckboxGroupProps, CheckboxProps } from '../Checkbox';
6
+ import { DatepickerProps } from '../Datepicker';
7
+ import { DividerProps } from '../Divider';
8
+ import { GlobalMessageProps } from '../GlobalMessage';
9
+ import { InputMessageProps } from '../InputMessage';
10
+ import { ListProps, ListItemProps } from '../List';
11
+ import { LocalMessageProps } from '../LocalMessage';
12
+ import { RadioButtonGroupProps, RadioButtonProps } from '../RadioButton';
13
+ import { SelectOption, SelectProps } from '../Select';
14
+ import { SpinnerProps } from '../Spinner';
15
+ import { TextInputProps } from '../TextInput';
16
+ import { ToggleButtonProps, ToggleButtonGroupProps } from '../ToggleButton';
17
+ import { HeadingProps, LabelProps, LinkProps, ParagraphProps, TypographyProps } from '../Typography';
18
+ import { VisuallyHiddenProps } from '../VisuallyHidden';
19
+ export declare type FormGeneratorProps = BaseComponentPropsWithChildren<HTMLElement, {
20
+ /** Definere liste med felt/komponenter og/eller rader med felt/komponenter */
21
+ fields: (FormGeneratorField | FormGeneratorRow)[];
22
+ /** For å hente ut state etter endringer */
23
+ stateOnChange: (newState: object) => void;
24
+ }>;
25
+ export declare type FormGeneratorRow = {
26
+ rowType: 'button' | 'standard';
27
+ breakpoint?: ScreenSize;
28
+ fields: FormGeneratorField[];
29
+ };
30
+ export declare type FormGeneratorField = FieldWithChildren | FieldWithoutChildren;
31
+ declare type FieldWithChildren = CheckboxGroupField | ListField | RadioButtonGroupField | ToggleButtonGroupField;
32
+ declare type FieldWithoutChildren = ButtonField | CardField | CheckboxField | DatepickerField | DividerField | GlobalMessageField | HeadingField | InputMessageField | LabelField | LinkField | ListItemField | LocalMessageField | ParagraphField | RadioButtonField | SelectField | SpinnerField | TextInputField | ToggleButtonField | TypographyField | VisuallyHiddenField;
33
+ declare type ButtonField = {
34
+ component: 'Button';
35
+ props: ButtonProps;
36
+ hide?: boolean;
37
+ };
38
+ declare type CardField = {
39
+ component: 'Card';
40
+ props: CardProps;
41
+ hide?: boolean;
42
+ innerHTML: JSX.Element | string;
43
+ };
44
+ declare type CheckboxField = {
45
+ component: 'Checkbox';
46
+ props: CheckboxProps;
47
+ hide?: boolean;
48
+ };
49
+ declare type CheckboxGroupField = {
50
+ component: 'CheckboxGroup';
51
+ props: CheckboxGroupProps;
52
+ hide?: boolean;
53
+ children: CheckboxField[];
54
+ };
55
+ declare type DatepickerField = {
56
+ component: 'Datepicker';
57
+ props: DatepickerProps;
58
+ hide?: boolean;
59
+ };
60
+ declare type DividerField = {
61
+ component: 'Divider';
62
+ props: DividerProps;
63
+ hide?: boolean;
64
+ };
65
+ declare type GlobalMessageField = {
66
+ component: 'GlobalMessage';
67
+ props: GlobalMessageProps;
68
+ hide?: boolean;
69
+ innerHTML?: JSX.Element | string;
70
+ };
71
+ declare type HeadingField = {
72
+ component: 'Heading';
73
+ props: HeadingProps;
74
+ hide?: boolean;
75
+ innerHTML?: JSX.Element | string;
76
+ };
77
+ declare type InputMessageField = {
78
+ component: 'InputMessage';
79
+ props: InputMessageProps;
80
+ hide?: boolean;
81
+ };
82
+ declare type LabelField = {
83
+ component: 'Label';
84
+ props: LabelProps;
85
+ hide?: boolean;
86
+ innerHTML?: JSX.Element | string;
87
+ };
88
+ declare type LinkField = {
89
+ component: 'Link';
90
+ props: LinkProps;
91
+ hide?: boolean;
92
+ innerHTML?: JSX.Element | string;
93
+ };
94
+ declare type ListItemField = {
95
+ component: 'ListItem';
96
+ props?: ListItemProps;
97
+ hide?: boolean;
98
+ innerHTML?: JSX.Element | string;
99
+ };
100
+ declare type ListField = {
101
+ component: 'List';
102
+ props?: ListProps;
103
+ hide?: boolean;
104
+ children: ListItemField[];
105
+ };
106
+ declare type LocalMessageField = {
107
+ component: 'LocalMessage';
108
+ props: LocalMessageProps;
109
+ hide?: boolean;
110
+ innerHTML?: JSX.Element | string;
111
+ };
112
+ declare type ParagraphField = {
113
+ component: 'Paragraph';
114
+ props: ParagraphProps;
115
+ hide?: boolean;
116
+ innerHTML?: JSX.Element | string;
117
+ };
118
+ declare type RadioButtonField = {
119
+ component: 'RadioButton';
120
+ props: RadioButtonProps;
121
+ hide?: boolean;
122
+ };
123
+ declare type RadioButtonGroupField = {
124
+ component: 'RadioButtonGroup';
125
+ props: RadioButtonGroupProps<string | number>;
126
+ hide?: boolean;
127
+ children: RadioButtonField[];
128
+ };
129
+ declare type SelectField = {
130
+ component: 'Select';
131
+ props: SelectProps<SelectOption<unknown>, boolean>;
132
+ name: string;
133
+ hide?: boolean;
134
+ };
135
+ declare type SpinnerField = {
136
+ component: 'Spinner';
137
+ props: SpinnerProps;
138
+ hide?: boolean;
139
+ };
140
+ declare type TextInputField = {
141
+ component: 'TextInput';
142
+ props: TextInputProps;
143
+ hide?: boolean;
144
+ };
145
+ declare type ToggleButtonField = {
146
+ component: 'ToggleButton';
147
+ props: ToggleButtonProps;
148
+ hide?: boolean;
149
+ };
150
+ declare type ToggleButtonGroupField = {
151
+ component: 'ToggleButtonGroup';
152
+ props: ToggleButtonGroupProps;
153
+ hide?: boolean;
154
+ children: ToggleButtonField[];
155
+ };
156
+ declare type TypographyField = {
157
+ component: 'Typography';
158
+ props: TypographyProps;
159
+ hide?: boolean;
160
+ innerHTML: JSX.Element | string;
161
+ };
162
+ declare type VisuallyHiddenField = {
163
+ component: 'VisuallyHidden';
164
+ props: VisuallyHiddenProps;
165
+ hide?: boolean;
166
+ innerHTML: JSX.Element | string;
167
+ };
168
+ export {};
@@ -0,0 +1,2 @@
1
+ export * from './FormGenerator';
2
+ export * from './FormGenerator.types';
@@ -6,7 +6,7 @@ declare const _default: {
6
6
  userProps?: ({
7
7
  name: string;
8
8
  href?: string | undefined;
9
- } & (import("react").ButtonHTMLAttributes<HTMLButtonElement> | import("react").AnchorHTMLAttributes<HTMLAnchorElement>)) | undefined;
9
+ } & (import("react").AnchorHTMLAttributes<HTMLAnchorElement> | import("react").ButtonHTMLAttributes<HTMLButtonElement>)) | undefined;
10
10
  navItems?: import("./OverflowMenu.types").OverflowMenuLinkItem[] | undefined;
11
11
  isOpen?: boolean | undefined;
12
12
  onClose?: (() => void) | undefined;
@@ -16,6 +16,9 @@ export declare const overflowMenuTokens: {
16
16
  };
17
17
  };
18
18
  link: {
19
+ iconWrapper: {
20
+ height: string;
21
+ };
19
22
  hover: {
20
23
  backgroundColor: string;
21
24
  };
@@ -1,22 +1,22 @@
1
1
  import { RadioButtonProps } from '.';
2
2
  declare const _default: {
3
3
  title: string;
4
- component: import("react").ForwardRefExoticComponent<Pick<Omit<import("react").InputHTMLAttributes<HTMLInputElement>, "name" | "value" | "aria-describedby" | "onChange" | "checked" | "readOnly" | "required">, "id" | "className"> & {
4
+ component: import("react").ForwardRefExoticComponent<Pick<Omit<import("react").InputHTMLAttributes<HTMLInputElement>, "aria-describedby" | "onChange" | "name" | "value" | "checked" | "readOnly" | "required">, "id" | "className"> & {
5
5
  label?: string | undefined;
6
6
  disabled?: boolean | undefined;
7
7
  error?: boolean | undefined;
8
8
  } & {
9
- name?: string | undefined;
10
- value?: string | number | readonly string[] | undefined;
11
9
  'aria-describedby'?: string | undefined;
12
10
  onChange?: import("react").ChangeEventHandler<HTMLInputElement> | undefined;
11
+ name?: string | undefined;
12
+ value?: string | number | readonly string[] | undefined;
13
13
  checked?: boolean | undefined;
14
14
  readOnly?: boolean | undefined;
15
15
  required?: boolean | undefined;
16
16
  } & {
17
17
  children?: import("react").ReactNode;
18
18
  } & {
19
- htmlProps?: Omit<import("react").InputHTMLAttributes<HTMLInputElement>, "name" | "value" | "aria-describedby" | "onChange" | "checked" | "readOnly" | "required"> | undefined;
19
+ htmlProps?: Omit<import("react").InputHTMLAttributes<HTMLInputElement>, "aria-describedby" | "onChange" | "name" | "value" | "checked" | "readOnly" | "required"> | undefined;
20
20
  } & import("react").RefAttributes<HTMLInputElement>>;
21
21
  argTypes: {
22
22
  label: {
@@ -1,5 +1,6 @@
1
- import { ButtonProps, ButtonSize } from '../Button';
1
+ import { ButtonProps, ButtonPurpose, ButtonSize } from '../Button';
2
2
  import { OverflowMenuButtonItem } from '../OverflowMenu';
3
+ export declare type SplitButtonPurpose = Extract<ButtonPurpose, 'primary' | 'secondary'>;
3
4
  export declare type SplitButtonProps = {
4
5
  /**Størrelse på komponenten. */
5
6
  size?: ButtonSize;
@@ -7,5 +8,7 @@ export declare type SplitButtonProps = {
7
8
  primaryAction: Omit<ButtonProps, 'size' | 'apperance' | 'purpose'>;
8
9
  /**Props for sekunære handlinger. */
9
10
  secondaryActions: OverflowMenuButtonItem[];
11
+ /**Formål med knappen */
12
+ purpose?: SplitButtonPurpose;
10
13
  };
11
14
  export declare const SplitButton: import("react").ForwardRefExoticComponent<SplitButtonProps & import("react").RefAttributes<HTMLDivElement>>;
@@ -0,0 +1,7 @@
1
+ export declare const tokens: {
2
+ mainButton: {
3
+ primary: {
4
+ borderLeft: string;
5
+ };
6
+ };
7
+ };
@@ -1,11 +1,11 @@
1
1
  import { ToggleButtonProps } from '.';
2
2
  declare const _default: {
3
3
  title: string;
4
- component: import("react").ForwardRefExoticComponent<Pick<Omit<import("react").InputHTMLAttributes<HTMLInputElement>, "onBlur" | "name" | "value" | "defaultChecked" | "defaultValue" | "aria-describedby" | "onChange" | "checked">, "id" | "className"> & {
4
+ component: import("react").ForwardRefExoticComponent<Pick<Omit<import("react").InputHTMLAttributes<HTMLInputElement>, "defaultChecked" | "defaultValue" | "aria-describedby" | "onBlur" | "onChange" | "name" | "value" | "checked">, "id" | "className"> & {
5
5
  label?: string | undefined;
6
6
  icon?: import("../../icons/utils").SvgIcon | undefined;
7
7
  } & import("../../types").CheckboxPickedHTMLAttributes & {
8
- htmlProps?: Omit<import("react").InputHTMLAttributes<HTMLInputElement>, "onBlur" | "name" | "value" | "defaultChecked" | "defaultValue" | "aria-describedby" | "onChange" | "checked"> | undefined;
8
+ htmlProps?: Omit<import("react").InputHTMLAttributes<HTMLInputElement>, "defaultChecked" | "defaultValue" | "aria-describedby" | "onBlur" | "onChange" | "name" | "value" | "checked"> | undefined;
9
9
  } & import("react").RefAttributes<HTMLInputElement>>;
10
10
  argTypes: {
11
11
  label: {
@@ -1,7 +1,7 @@
1
1
  import { TooltipProps } from '.';
2
2
  declare const _default: {
3
3
  title: string;
4
- component: import("react").ForwardRefExoticComponent<Pick<Omit<import("react").HTMLAttributes<HTMLDivElement>, "style" | "children" | "onMouseLeave" | "onMouseOver">, "id" | "className"> & {
4
+ component: import("react").ForwardRefExoticComponent<Pick<Omit<import("react").HTMLAttributes<HTMLDivElement>, "children" | "style" | "onMouseLeave" | "onMouseOver">, "id" | "className"> & {
5
5
  text: string;
6
6
  placement?: import("../..").Placement | undefined;
7
7
  children: import("react").ReactElement<any, string | import("react").JSXElementConstructor<any>> & import("react").RefAttributes<HTMLElement>;
@@ -12,7 +12,7 @@ declare const _default: {
12
12
  onMouseLeave?: import("react").MouseEventHandler<HTMLDivElement> | undefined;
13
13
  onMouseOver?: import("react").MouseEventHandler<HTMLDivElement> | undefined;
14
14
  } & {
15
- htmlProps?: Omit<import("react").HTMLAttributes<HTMLDivElement>, "style" | "children" | "onMouseLeave" | "onMouseOver"> | undefined;
15
+ htmlProps?: Omit<import("react").HTMLAttributes<HTMLDivElement>, "children" | "style" | "onMouseLeave" | "onMouseOver"> | undefined;
16
16
  } & import("react").RefAttributes<HTMLDivElement>>;
17
17
  argTypes: {
18
18
  text: {