@navikt/ds-react 6.3.6 → 6.4.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 (44) hide show
  1. package/cjs/copybutton/CopyButton.d.ts +1 -0
  2. package/cjs/copybutton/CopyButton.js.map +1 -1
  3. package/cjs/form/checkbox/CheckboxGroup.d.ts +6 -6
  4. package/cjs/form/checkbox/CheckboxGroup.js +4 -4
  5. package/cjs/form/checkbox/types.d.ts +3 -3
  6. package/cjs/form/file-upload/FileUpload.d.ts +2 -2
  7. package/cjs/form/file-upload/parts/item/Item.d.ts +10 -17
  8. package/cjs/form/file-upload/parts/item/Item.js +4 -2
  9. package/cjs/form/file-upload/parts/item/Item.js.map +1 -1
  10. package/cjs/form/file-upload/parts/item/ItemButton.d.ts +5 -8
  11. package/cjs/form/file-upload/parts/item/ItemButton.js +3 -11
  12. package/cjs/form/file-upload/parts/item/ItemButton.js.map +1 -1
  13. package/cjs/form/radio/RadioGroup.d.ts +1 -1
  14. package/cjs/form/radio/types.d.ts +2 -2
  15. package/cjs/form/useFormField.d.ts +2 -3
  16. package/cjs/form/useFormField.js.map +1 -1
  17. package/esm/copybutton/CopyButton.d.ts +1 -0
  18. package/esm/copybutton/CopyButton.js.map +1 -1
  19. package/esm/form/checkbox/CheckboxGroup.d.ts +6 -6
  20. package/esm/form/checkbox/CheckboxGroup.js +4 -4
  21. package/esm/form/checkbox/types.d.ts +3 -3
  22. package/esm/form/file-upload/FileUpload.d.ts +2 -2
  23. package/esm/form/file-upload/parts/item/Item.d.ts +10 -17
  24. package/esm/form/file-upload/parts/item/Item.js +4 -2
  25. package/esm/form/file-upload/parts/item/Item.js.map +1 -1
  26. package/esm/form/file-upload/parts/item/ItemButton.d.ts +5 -8
  27. package/esm/form/file-upload/parts/item/ItemButton.js +3 -11
  28. package/esm/form/file-upload/parts/item/ItemButton.js.map +1 -1
  29. package/esm/form/radio/RadioGroup.d.ts +1 -1
  30. package/esm/form/radio/types.d.ts +2 -2
  31. package/esm/form/useFormField.d.ts +2 -3
  32. package/esm/form/useFormField.js.map +1 -1
  33. package/package.json +3 -3
  34. package/src/copybutton/CopyButton.tsx +1 -0
  35. package/src/form/checkbox/CheckboxGroup.tsx +6 -6
  36. package/src/form/checkbox/types.ts +3 -3
  37. package/src/form/file-upload/FileUpload.tsx +2 -2
  38. package/src/form/file-upload/file-upload-item.stories.tsx +28 -16
  39. package/src/form/file-upload/file-upload.stories.tsx +17 -5
  40. package/src/form/file-upload/parts/item/Item.tsx +20 -38
  41. package/src/form/file-upload/parts/item/ItemButton.tsx +16 -41
  42. package/src/form/radio/RadioGroup.tsx +1 -1
  43. package/src/form/radio/types.ts +2 -2
  44. package/src/form/useFormField.ts +2 -3
@@ -20,6 +20,7 @@ export interface CopyButtonProps extends Omit<ButtonHTMLAttributes<HTMLButtonEle
20
20
  /**
21
21
  * Text shown when button is clicked.
22
22
  * Only set if used with `text`-prop.
23
+ * @default "Kopiert!"
23
24
  */
24
25
  activeText?: string;
25
26
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"CopyButton.js","sourceRoot":"","sources":["../../src/copybutton/CopyButton.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"CopyButton.js","sourceRoot":"","sources":["../../src/copybutton/CopyButton.tsx"],"names":[],"mappings":"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"}
@@ -6,7 +6,7 @@ export interface CheckboxGroupState {
6
6
  toggleValue(value: any): void;
7
7
  }
8
8
  export declare const CheckboxGroupContext: React.Context<CheckboxGroupState | null>;
9
- export interface CheckboxGroupProps extends Omit<FieldsetProps, "onChange" | "errorPropagation" | "defaultValue"> {
9
+ export interface CheckboxGroupProps extends Omit<FieldsetProps, "onChange" | "errorPropagation" | "defaultValue" | "nativeReadOnly"> {
10
10
  /**
11
11
  * Collection of `<Checkbox/>`.
12
12
  */
@@ -16,7 +16,7 @@ export interface CheckboxGroupProps extends Omit<FieldsetProps, "onChange" | "er
16
16
  */
17
17
  value?: any[];
18
18
  /**
19
- * Default checked checkboxes on render.
19
+ * Default checked checkboxes.
20
20
  */
21
21
  defaultValue?: any[];
22
22
  /**
@@ -32,10 +32,10 @@ export interface CheckboxGroupProps extends Omit<FieldsetProps, "onChange" | "er
32
32
  *
33
33
  * @example
34
34
  * ```jsx
35
- * <CheckboxGroup legend="Hvor vil du sitte?">
36
- * <Checkbox value="Bakerst">Bakerst</Checkbox>
37
- * <Checkbox value="Midterst">Midterst</Checkbox>
38
- * <Checkbox value="Fremst">Fremst</Checkbox>
35
+ * <CheckboxGroup legend="Transportmiddel">
36
+ * <Checkbox value="car">Bil</Checkbox>
37
+ * <Checkbox value="taxi">Drosje</Checkbox>
38
+ * <Checkbox value="public">Kollektivt</Checkbox>
39
39
  * </CheckboxGroup>
40
40
  * ```
41
41
  */
@@ -51,10 +51,10 @@ exports.CheckboxGroupContext = (0, react_1.createContext)(null);
51
51
  *
52
52
  * @example
53
53
  * ```jsx
54
- * <CheckboxGroup legend="Hvor vil du sitte?">
55
- * <Checkbox value="Bakerst">Bakerst</Checkbox>
56
- * <Checkbox value="Midterst">Midterst</Checkbox>
57
- * <Checkbox value="Fremst">Fremst</Checkbox>
54
+ * <CheckboxGroup legend="Transportmiddel">
55
+ * <Checkbox value="car">Bil</Checkbox>
56
+ * <Checkbox value="taxi">Drosje</Checkbox>
57
+ * <Checkbox value="public">Kollektivt</Checkbox>
58
58
  * </CheckboxGroup>
59
59
  * ```
60
60
  */
@@ -11,7 +11,7 @@ export interface CheckboxProps extends FormFieldProps, Omit<InputHTMLAttributes<
11
11
  */
12
12
  errorId?: string;
13
13
  /**
14
- * Checkbox label
14
+ * Checkbox label.
15
15
  */
16
16
  children: React.ReactNode;
17
17
  /**
@@ -19,7 +19,7 @@ export interface CheckboxProps extends FormFieldProps, Omit<InputHTMLAttributes<
19
19
  */
20
20
  hideLabel?: boolean;
21
21
  /**
22
- * The value of the HTML element.
22
+ * Checkbox value.
23
23
  */
24
24
  value?: any;
25
25
  /**
@@ -28,7 +28,7 @@ export interface CheckboxProps extends FormFieldProps, Omit<InputHTMLAttributes<
28
28
  */
29
29
  indeterminate?: boolean;
30
30
  /**
31
- * Adds a description to extend labeling of Checkbox.
31
+ * Adds a description to extend the labeling.
32
32
  */
33
33
  description?: string;
34
34
  }
@@ -81,8 +81,8 @@ interface FileUploadComponent extends React.ForwardRefExoticComponent<FileUpload
81
81
  * ```jsx
82
82
  * <FileUpload.Item file={file} status="uploading" />
83
83
  * <FileUpload.Item file={file} status="downloading" />
84
- * <FileUpload.Item file={file} itemAction="retry" onRetry={...} />
85
- * <FileUpload.Item file={file} itemAction="delete" onDelete={...} />
84
+ * <FileUpload.Item file={file} button={{ action:"retry", onClick:... }} />
85
+ * <FileUpload.Item file={file} button={{ action:"delete", onClick:... }} />
86
86
  * ```
87
87
  */
88
88
  Item: typeof Item;
@@ -2,12 +2,12 @@ import React, { MouseEvent } from "react";
2
2
  import { OverridableComponent } from "../../../../util";
3
3
  import { ComponentTranslation } from "../../i18n/i18n.types";
4
4
  import { FileItem } from "./Item.types";
5
- export interface FileItemBaseProps {
5
+ export interface FileUploadItemProps extends React.HTMLAttributes<HTMLDivElement> {
6
6
  /**
7
7
  * Overrides html-tag
8
8
  * @default "div"
9
9
  */
10
- as?: "div" | "li";
10
+ as?: ("div" | "li") & React.ElementType;
11
11
  /**
12
12
  * Either a native File or file metadata.
13
13
  */
@@ -33,25 +33,18 @@ export interface FileItemBaseProps {
33
33
  * @default "idle"
34
34
  */
35
35
  status?: "downloading" | "uploading" | "idle";
36
+ /**
37
+ * Props for the action button.
38
+ */
39
+ button?: {
40
+ action: "delete" | "retry";
41
+ onClick: (event: MouseEvent<HTMLButtonElement>) => void;
42
+ id?: string;
43
+ };
36
44
  /**
37
45
  * i18n-API for customizing texts and labels
38
46
  */
39
47
  translations?: ComponentTranslation<"FileUpload">["item"];
40
- onRetry?: (event: MouseEvent<HTMLButtonElement>) => void;
41
- onDelete?: (event: MouseEvent<HTMLButtonElement>) => void;
42
48
  }
43
- type FileItemActionDelete = {
44
- onDelete: (event: MouseEvent<HTMLButtonElement>) => void;
45
- itemAction: "delete";
46
- };
47
- type FileItemActionRetry = {
48
- onRetry: (event: MouseEvent<HTMLButtonElement>) => void;
49
- itemAction: "retry";
50
- };
51
- type FileItemActionNone = {
52
- itemAction?: "none";
53
- };
54
- type FileItemConditionalProps = FileItemActionDelete | FileItemActionRetry | FileItemActionNone;
55
- export type FileUploadItemProps = FileItemBaseProps & FileItemConditionalProps & React.HTMLAttributes<HTMLDivElement>;
56
49
  export declare const Item: OverridableComponent<FileUploadItemProps, HTMLDivElement>;
57
50
  export default Item;
@@ -49,7 +49,7 @@ const ItemIcon_1 = __importDefault(require("./ItemIcon"));
49
49
  const ItemName_1 = __importDefault(require("./ItemName"));
50
50
  const format_file_size_1 = require("./utils/format-file-size");
51
51
  exports.Item = (0, react_1.forwardRef)((_a, ref) => {
52
- var { as: Component = "div", file, status = "idle", onDelete, onRetry, error, className, href, onFileClick, itemAction = "delete", translations } = _a, rest = __rest(_a, ["as", "file", "status", "onDelete", "onRetry", "error", "className", "href", "onFileClick", "itemAction", "translations"]);
52
+ var { as: Component = "div", file, status = "idle", error, className, href, onFileClick, button, translations } = _a, rest = __rest(_a, ["as", "file", "status", "error", "className", "href", "onFileClick", "button", "translations"]);
53
53
  const context = (0, FileUpload_context_1.useFileUploadTranslation)(false);
54
54
  const translate = (0, i18n_context_1.useI18n)("FileUpload", { item: translations }, context === null || context === void 0 ? void 0 : context.translations);
55
55
  const showError = !!error && status === "idle";
@@ -73,7 +73,9 @@ exports.Item = (0, react_1.forwardRef)((_a, ref) => {
73
73
  react_1.default.createElement("div", { className: "navds-file-item__error", "aria-relevant": "additions removals", "aria-live": "polite" }, showError && (react_1.default.createElement(typography_1.BodyShort, { size: "small", className: "navds-file-item__error-content" },
74
74
  react_1.default.createElement(aksel_icons_1.ExclamationmarkTriangleIcon, { "aria-hidden": true }),
75
75
  error)))),
76
- status === "idle" && (react_1.default.createElement(ItemButton_1.default, { file: file, onRetry: onRetry, onDelete: onDelete, action: itemAction, retryTitle: translate("item.retryButtonTitle"), deleteTitle: translate("item.deleteButtonTitle") })))));
76
+ status === "idle" && button && (react_1.default.createElement(ItemButton_1.default, Object.assign({}, button, { title: translate(button.action === "retry"
77
+ ? "item.retryButtonTitle"
78
+ : "item.deleteButtonTitle") }))))));
77
79
  });
78
80
  exports.default = exports.Item;
79
81
  //# sourceMappingURL=Item.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"Item.js","sourceRoot":"","sources":["../../../../../src/form/file-upload/parts/item/Item.tsx"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,gDAAsB;AACtB,+CAAsD;AACtD,qDAAkE;AAClE,uDAAmD;AAEnD,iEAAoE;AACpE,0DAAkD;AAGlD,8DAAsC;AACtC,0DAAkC;AAClC,0DAAkC;AAClC,+DAA0D;AAgE7C,QAAA,IAAI,GACf,IAAA,kBAAU,EACR,CACE,EAaC,EACD,GAAG,EACH,EAAE;QAfF,EACE,EAAE,EAAE,SAAS,GAAG,KAAK,EACrB,IAAI,EACJ,MAAM,GAAG,MAAM,EACf,QAAQ,EACR,OAAO,EACP,KAAK,EACL,SAAS,EACT,IAAI,EACJ,WAAW,EACX,UAAU,GAAG,QAAQ,EACrB,YAAY,OAEb,EADI,IAAI,cAZT,0HAaC,CADQ;IAIT,MAAM,OAAO,GAAG,IAAA,6CAAwB,EAAC,KAAK,CAAC,CAAC;IAChD,MAAM,SAAS,GAAG,IAAA,sBAAO,EACvB,YAAY,EACZ,EAAE,IAAI,EAAE,YAAY,EAAE,EACtB,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,YAAY,CACtB,CAAC;IAEF,MAAM,SAAS,GAAG,CAAC,CAAC,KAAK,IAAI,MAAM,KAAK,MAAM,CAAC;IAE/C,SAAS,aAAa;QACpB,IAAI,MAAM,KAAK,WAAW,EAAE,CAAC;YAC3B,OAAO,SAAS,CAAC,gBAAgB,CAAC,CAAC;QACrC,CAAC;QACD,IAAI,MAAM,KAAK,aAAa,EAAE,CAAC;YAC7B,OAAO,SAAS,CAAC,kBAAkB,CAAC,CAAC;QACvC,CAAC;QACD,OAAO,IAAA,iCAAc,EAAC,IAAI,CAAC,CAAC;IAC9B,CAAC;IAED,OAAO,CACL,8BAAC,SAAS,kBACR,GAAG,EAAE,GAAG,IACJ,IAAI,IACR,SAAS,EAAE,IAAA,cAAE,EAAC,iBAAiB,EAAE,SAAS,EAAE;YAC1C,wBAAwB,EAAE,SAAS;SACpC,CAAC;QAEF,uCAAK,SAAS,EAAC,wBAAwB;YACrC,8BAAC,kBAAQ,IACP,SAAS,EAAE,MAAM,KAAK,MAAM,EAC5B,IAAI,EAAE,IAAI,EACV,SAAS,EAAE,SAAS,GACpB;YACF,uCAAK,SAAS,EAAC,4BAA4B;gBACzC,8BAAC,kBAAQ,IAAC,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,OAAO,EAAE,WAAW,GAAI;gBAC1D,8BAAC,sBAAS,IAAC,EAAE,EAAC,KAAK,EAAC,IAAI,EAAC,OAAO,IAC7B,aAAa,EAAE,CACN;gBACZ,uCACE,SAAS,EAAC,wBAAwB,mBACpB,oBAAoB,eACxB,QAAQ,IAEjB,SAAS,IAAI,CACZ,8BAAC,sBAAS,IACR,IAAI,EAAC,OAAO,EACZ,SAAS,EAAC,gCAAgC;oBAE1C,8BAAC,yCAA2B,0BAAe;oBAC1C,KAAK,CACI,CACb,CACG,CACF;YAEL,MAAM,KAAK,MAAM,IAAI,CACpB,8BAAC,oBAAU,IACT,IAAI,EAAE,IAAI,EACV,OAAO,EAAE,OAAO,EAChB,QAAQ,EAAE,QAAQ,EAClB,MAAM,EAAE,UAAU,EAClB,UAAU,EAAE,SAAS,CAAC,uBAAuB,CAAC,EAC9C,WAAW,EAAE,SAAS,CAAC,wBAAwB,CAAC,GAChD,CACH,CACG,CACI,CACb,CAAC;AACJ,CAAC,CACF,CAAC;AAEJ,kBAAe,YAAI,CAAC"}
1
+ {"version":3,"file":"Item.js","sourceRoot":"","sources":["../../../../../src/form/file-upload/parts/item/Item.tsx"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,gDAAsB;AACtB,+CAAsD;AACtD,qDAAkE;AAClE,uDAAmD;AAEnD,iEAAoE;AACpE,0DAAkD;AAGlD,8DAAsC;AACtC,0DAAkC;AAClC,0DAAkC;AAClC,+DAA0D;AAgD7C,QAAA,IAAI,GACf,IAAA,kBAAU,EACR,CACE,EAWsB,EACtB,GAAG,EACH,EAAE;QAbF,EACE,EAAE,EAAE,SAAS,GAAG,KAAK,EACrB,IAAI,EACJ,MAAM,GAAG,MAAM,EACf,KAAK,EACL,SAAS,EACT,IAAI,EACJ,WAAW,EACX,MAAM,EACN,YAAY,OAEQ,EADjB,IAAI,cAVT,+FAWC,CADQ;IAIT,MAAM,OAAO,GAAG,IAAA,6CAAwB,EAAC,KAAK,CAAC,CAAC;IAChD,MAAM,SAAS,GAAG,IAAA,sBAAO,EACvB,YAAY,EACZ,EAAE,IAAI,EAAE,YAAY,EAAE,EACtB,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,YAAY,CACtB,CAAC;IAEF,MAAM,SAAS,GAAG,CAAC,CAAC,KAAK,IAAI,MAAM,KAAK,MAAM,CAAC;IAE/C,SAAS,aAAa;QACpB,IAAI,MAAM,KAAK,WAAW,EAAE,CAAC;YAC3B,OAAO,SAAS,CAAC,gBAAgB,CAAC,CAAC;QACrC,CAAC;QACD,IAAI,MAAM,KAAK,aAAa,EAAE,CAAC;YAC7B,OAAO,SAAS,CAAC,kBAAkB,CAAC,CAAC;QACvC,CAAC;QACD,OAAO,IAAA,iCAAc,EAAC,IAAI,CAAC,CAAC;IAC9B,CAAC;IAED,OAAO,CACL,8BAAC,SAAS,kBACR,GAAG,EAAE,GAAG,IACJ,IAAI,IACR,SAAS,EAAE,IAAA,cAAE,EAAC,iBAAiB,EAAE,SAAS,EAAE;YAC1C,wBAAwB,EAAE,SAAS;SACpC,CAAC;QAEF,uCAAK,SAAS,EAAC,wBAAwB;YACrC,8BAAC,kBAAQ,IACP,SAAS,EAAE,MAAM,KAAK,MAAM,EAC5B,IAAI,EAAE,IAAI,EACV,SAAS,EAAE,SAAS,GACpB;YACF,uCAAK,SAAS,EAAC,4BAA4B;gBACzC,8BAAC,kBAAQ,IAAC,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,OAAO,EAAE,WAAW,GAAI;gBAC1D,8BAAC,sBAAS,IAAC,EAAE,EAAC,KAAK,EAAC,IAAI,EAAC,OAAO,IAC7B,aAAa,EAAE,CACN;gBACZ,uCACE,SAAS,EAAC,wBAAwB,mBACpB,oBAAoB,eACxB,QAAQ,IAEjB,SAAS,IAAI,CACZ,8BAAC,sBAAS,IACR,IAAI,EAAC,OAAO,EACZ,SAAS,EAAC,gCAAgC;oBAE1C,8BAAC,yCAA2B,0BAAe;oBAC1C,KAAK,CACI,CACb,CACG,CACF;YAEL,MAAM,KAAK,MAAM,IAAI,MAAM,IAAI,CAC9B,8BAAC,oBAAU,oBACL,MAAM,IACV,KAAK,EAAE,SAAS,CACd,MAAM,CAAC,MAAM,KAAK,OAAO;oBACvB,CAAC,CAAC,uBAAuB;oBACzB,CAAC,CAAC,wBAAwB,CAC7B,IACD,CACH,CACG,CACI,CACb,CAAC;AACJ,CAAC,CACF,CAAC;AAEJ,kBAAe,YAAI,CAAC"}
@@ -1,12 +1,9 @@
1
1
  import React from "react";
2
- import { FileItem } from "./Item.types";
3
2
  interface Props {
4
- file: FileItem;
5
- onRetry?: (event: React.MouseEvent<HTMLButtonElement>) => void;
6
- onDelete?: (event: React.MouseEvent<HTMLButtonElement>) => void;
7
- action: "delete" | "retry" | "none";
8
- retryTitle: string;
9
- deleteTitle: string;
3
+ action: "delete" | "retry";
4
+ onClick: (event: React.MouseEvent<HTMLButtonElement>) => void;
5
+ id?: string;
6
+ title: string;
10
7
  }
11
- declare const ItemButton: ({ onRetry, onDelete, action, retryTitle, deleteTitle, }: Props) => React.JSX.Element | null;
8
+ declare const ItemButton: ({ action, onClick, id, title }: Props) => React.JSX.Element;
12
9
  export default ItemButton;
@@ -6,17 +6,9 @@ Object.defineProperty(exports, "__esModule", { value: true });
6
6
  const react_1 = __importDefault(require("react"));
7
7
  const aksel_icons_1 = require("@navikt/aksel-icons");
8
8
  const button_1 = require("../../../../button");
9
- const ItemButton = ({ onRetry, onDelete, action, retryTitle, deleteTitle, }) => {
10
- if (action === "none") {
11
- return null;
12
- }
13
- if (onRetry && action === "retry") {
14
- return (react_1.default.createElement(button_1.Button, { className: "navds-file-item__button", type: "button", variant: "tertiary-neutral", onClick: onRetry, icon: react_1.default.createElement(aksel_icons_1.ArrowsCirclepathIcon, { title: retryTitle }) }));
15
- }
16
- if (onDelete && action === "delete") {
17
- return (react_1.default.createElement(button_1.Button, { className: "navds-file-item__button", type: "button", variant: "tertiary-neutral", onClick: onDelete, icon: react_1.default.createElement(aksel_icons_1.TrashIcon, { title: deleteTitle }) }));
18
- }
19
- return null;
9
+ const ItemButton = ({ action, onClick, id, title }) => {
10
+ const Icon = action === "delete" ? aksel_icons_1.TrashIcon : aksel_icons_1.ArrowsCirclepathIcon;
11
+ return (react_1.default.createElement(button_1.Button, { id: id, className: "navds-file-item__button", type: "button", variant: "tertiary-neutral", onClick: onClick, icon: react_1.default.createElement(Icon, { title: title }) }));
20
12
  };
21
13
  exports.default = ItemButton;
22
14
  //# sourceMappingURL=ItemButton.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"ItemButton.js","sourceRoot":"","sources":["../../../../../src/form/file-upload/parts/item/ItemButton.tsx"],"names":[],"mappings":";;;;;AAAA,kDAA0B;AAC1B,qDAAsE;AACtE,+CAA4C;AAY5C,MAAM,UAAU,GAAG,CAAC,EAClB,OAAO,EACP,QAAQ,EACR,MAAM,EACN,UAAU,EACV,WAAW,GACL,EAAE,EAAE;IACV,IAAI,MAAM,KAAK,MAAM,EAAE,CAAC;QACtB,OAAO,IAAI,CAAC;IACd,CAAC;IAED,IAAI,OAAO,IAAI,MAAM,KAAK,OAAO,EAAE,CAAC;QAClC,OAAO,CACL,8BAAC,eAAM,IACL,SAAS,EAAC,yBAAyB,EACnC,IAAI,EAAC,QAAQ,EACb,OAAO,EAAC,kBAAkB,EAC1B,OAAO,EAAE,OAAO,EAChB,IAAI,EAAE,8BAAC,kCAAoB,IAAC,KAAK,EAAE,UAAU,GAAI,GACjD,CACH,CAAC;IACJ,CAAC;IACD,IAAI,QAAQ,IAAI,MAAM,KAAK,QAAQ,EAAE,CAAC;QACpC,OAAO,CACL,8BAAC,eAAM,IACL,SAAS,EAAC,yBAAyB,EACnC,IAAI,EAAC,QAAQ,EACb,OAAO,EAAC,kBAAkB,EAC1B,OAAO,EAAE,QAAQ,EACjB,IAAI,EAAE,8BAAC,uBAAS,IAAC,KAAK,EAAE,WAAW,GAAI,GACvC,CACH,CAAC;IACJ,CAAC;IAED,OAAO,IAAI,CAAC;AACd,CAAC,CAAC;AAEF,kBAAe,UAAU,CAAC"}
1
+ {"version":3,"file":"ItemButton.js","sourceRoot":"","sources":["../../../../../src/form/file-upload/parts/item/ItemButton.tsx"],"names":[],"mappings":";;;;;AAAA,kDAA0B;AAC1B,qDAAsE;AACtE,+CAA4C;AAS5C,MAAM,UAAU,GAAG,CAAC,EAAE,MAAM,EAAE,OAAO,EAAE,EAAE,EAAE,KAAK,EAAS,EAAE,EAAE;IAC3D,MAAM,IAAI,GAAG,MAAM,KAAK,QAAQ,CAAC,CAAC,CAAC,uBAAS,CAAC,CAAC,CAAC,kCAAoB,CAAC;IAEpE,OAAO,CACL,8BAAC,eAAM,IACL,EAAE,EAAE,EAAE,EACN,SAAS,EAAC,yBAAyB,EACnC,IAAI,EAAC,QAAQ,EACb,OAAO,EAAC,kBAAkB,EAC1B,OAAO,EAAE,OAAO,EAChB,IAAI,EAAE,8BAAC,IAAI,IAAC,KAAK,EAAE,KAAK,GAAI,GAC5B,CACH,CAAC;AACJ,CAAC,CAAC;AAEF,kBAAe,UAAU,CAAC"}
@@ -8,7 +8,7 @@ export interface RadioGroupContextProps {
8
8
  required?: boolean;
9
9
  }
10
10
  export declare const RadioGroupContext: React.Context<RadioGroupContextProps | null>;
11
- export interface RadioGroupProps extends Omit<FieldsetProps, "onChange" | "errorPropagation" | "defaultValue"> {
11
+ export interface RadioGroupProps extends Omit<FieldsetProps, "onChange" | "errorPropagation" | "defaultValue" | "nativeReadOnly"> {
12
12
  /**
13
13
  * Collection of `<Radio />`-elements
14
14
  */
@@ -6,11 +6,11 @@ export interface RadioProps extends Omit<FormFieldProps, "error" | "errorId" | "
6
6
  */
7
7
  children: React.ReactNode;
8
8
  /**
9
- * The value of the HTML element.
9
+ * Radio value.
10
10
  */
11
11
  value: any;
12
12
  /**
13
- * Adds a description to extend labeling of Radio.
13
+ * Adds a description to extend the labeling.
14
14
  */
15
15
  description?: string;
16
16
  }
@@ -1,8 +1,7 @@
1
1
  import React from "react";
2
2
  export interface FormFieldProps {
3
3
  /**
4
- * Adds a description to extend labeling of the field.
5
- * Error message for element.
4
+ * Error message.
6
5
  */
7
6
  error?: React.ReactNode;
8
7
  /**
@@ -20,7 +19,7 @@ export interface FormFieldProps {
20
19
  */
21
20
  disabled?: boolean;
22
21
  /**
23
- * Adds a description to extend labeling of a field.
22
+ * Adds a description to extend the labeling.
24
23
  */
25
24
  description?: React.ReactNode;
26
25
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"useFormField.js","sourceRoot":"","sources":["../../src/form/useFormField.ts"],"names":[],"mappings":";;;;;;AAAA,gDAAsB;AACtB,iCAA0C;AAC1C,yCAAsC;AACtC,gDAAqD;AAmDrD;;GAEG;AACI,MAAM,YAAY,GAAG,CAC1B,KAAqB,EACrB,MAAc,EACC,EAAE;;IACjB,MAAM,EAAE,IAAI,EAAE,KAAK,EAAE,OAAO,EAAE,WAAW,EAAE,GAAG,KAAK,CAAC;IAEpD,MAAM,QAAQ,GAAG,IAAA,kBAAU,EAAC,yBAAe,CAAC,CAAC;IAE7C,MAAM,KAAK,GAAG,IAAA,aAAK,GAAE,CAAC;IAEtB,MAAM,EAAE,GAAG,MAAA,KAAK,CAAC,EAAE,mCAAI,GAAG,MAAM,IAAI,KAAK,EAAE,CAAC;IAC5C,MAAM,OAAO,GAAG,WAAW,aAAX,WAAW,cAAX,WAAW,GAAI,GAAG,MAAM,UAAU,KAAK,EAAE,CAAC;IAC1D,MAAM,kBAAkB,GAAG,GAAG,MAAM,gBAAgB,KAAK,EAAE,CAAC;IAE5D,MAAM,QAAQ,GAAG,CAAA,QAAQ,aAAR,QAAQ,uBAAR,QAAQ,CAAE,QAAQ,KAAI,KAAK,CAAC,QAAQ,CAAC;IACtD,MAAM,QAAQ,GACZ,CAAC,CAAC,CAAA,QAAQ,aAAR,QAAQ,uBAAR,QAAQ,CAAE,QAAQ,KAAI,KAAK,CAAC,QAAQ,CAAC,IAAI,CAAC,QAAQ,CAAC,IAAI,SAAS,CAAC;IAErE,MAAM,QAAQ,GACZ,CAAC,QAAQ,IAAI,CAAC,QAAQ,IAAI,CAAC,CAAC,CAAC,KAAK,KAAI,QAAQ,aAAR,QAAQ,uBAAR,QAAQ,CAAE,KAAK,CAAA,CAAC,CAAC;IACzD,MAAM,YAAY,GAChB,CAAC,QAAQ,IAAI,CAAC,QAAQ,IAAI,CAAC,CAAC,KAAK,IAAI,OAAO,KAAK,KAAK,SAAS,CAAC;IAElE,MAAM,WAAW,qBAAQ,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,cAAc,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAE,CAAC;IAEtE,IAAI,CAAC,KAAa,aAAb,KAAK,uBAAL,KAAK,CAAU,QAAQ,KAAI,OAAO,CAAC,GAAG,CAAC,QAAQ,KAAK,YAAY,EAAE,CAAC;QACtE,OAAO,CAAC,IAAI,CACV,yFAAyF,CAC1F,CAAC;QACF,OAAO,CAAC,IAAI,CACV,gGAAgG,CACjG,CAAC;IACJ,CAAC;IAED,OAAO;QACL,YAAY;QACZ,QAAQ;QACR,OAAO;QACP,kBAAkB;QAClB,IAAI,EAAE,MAAA,IAAI,aAAJ,IAAI,cAAJ,IAAI,GAAI,QAAQ,aAAR,QAAQ,uBAAR,QAAQ,CAAE,IAAI,mCAAI,QAAQ;QACxC,QAAQ;QACR,UAAU,gCACR,EAAE,IACC,WAAW,KACd,kBAAkB,EAChB,IAAA,cAAE,EAAC,KAAK,CAAC,kBAAkB,CAAC,EAAE;gBAC5B,CAAC,kBAAkB,CAAC,EAClB,CAAC,CAAC,CAAA,KAAK,aAAL,KAAK,uBAAL,KAAK,CAAE,WAAW,CAAA,IAAI,OAAO,CAAA,KAAK,aAAL,KAAK,uBAAL,KAAK,CAAE,WAAW,CAAA,KAAK,QAAQ;gBAChE,CAAC,OAAO,CAAC,EAAE,YAAY;gBACvB,CAAC,MAAA,QAAQ,aAAR,QAAQ,uBAAR,QAAQ,CAAE,OAAO,mCAAI,EAAE,CAAC,EAAE,QAAQ,IAAI,CAAC,CAAC,CAAA,QAAQ,aAAR,QAAQ,uBAAR,QAAQ,CAAE,KAAK,CAAA;aACzD,CAAC,IAAI,SAAS,EAEjB,QAAQ,GACT;KACF,CAAC;AACJ,CAAC,CAAC;AAvDW,QAAA,YAAY,gBAuDvB"}
1
+ {"version":3,"file":"useFormField.js","sourceRoot":"","sources":["../../src/form/useFormField.ts"],"names":[],"mappings":";;;;;;AAAA,gDAAsB;AACtB,iCAA0C;AAC1C,yCAAsC;AACtC,gDAAqD;AAkDrD;;GAEG;AACI,MAAM,YAAY,GAAG,CAC1B,KAAqB,EACrB,MAAc,EACC,EAAE;;IACjB,MAAM,EAAE,IAAI,EAAE,KAAK,EAAE,OAAO,EAAE,WAAW,EAAE,GAAG,KAAK,CAAC;IAEpD,MAAM,QAAQ,GAAG,IAAA,kBAAU,EAAC,yBAAe,CAAC,CAAC;IAE7C,MAAM,KAAK,GAAG,IAAA,aAAK,GAAE,CAAC;IAEtB,MAAM,EAAE,GAAG,MAAA,KAAK,CAAC,EAAE,mCAAI,GAAG,MAAM,IAAI,KAAK,EAAE,CAAC;IAC5C,MAAM,OAAO,GAAG,WAAW,aAAX,WAAW,cAAX,WAAW,GAAI,GAAG,MAAM,UAAU,KAAK,EAAE,CAAC;IAC1D,MAAM,kBAAkB,GAAG,GAAG,MAAM,gBAAgB,KAAK,EAAE,CAAC;IAE5D,MAAM,QAAQ,GAAG,CAAA,QAAQ,aAAR,QAAQ,uBAAR,QAAQ,CAAE,QAAQ,KAAI,KAAK,CAAC,QAAQ,CAAC;IACtD,MAAM,QAAQ,GACZ,CAAC,CAAC,CAAA,QAAQ,aAAR,QAAQ,uBAAR,QAAQ,CAAE,QAAQ,KAAI,KAAK,CAAC,QAAQ,CAAC,IAAI,CAAC,QAAQ,CAAC,IAAI,SAAS,CAAC;IAErE,MAAM,QAAQ,GACZ,CAAC,QAAQ,IAAI,CAAC,QAAQ,IAAI,CAAC,CAAC,CAAC,KAAK,KAAI,QAAQ,aAAR,QAAQ,uBAAR,QAAQ,CAAE,KAAK,CAAA,CAAC,CAAC;IACzD,MAAM,YAAY,GAChB,CAAC,QAAQ,IAAI,CAAC,QAAQ,IAAI,CAAC,CAAC,KAAK,IAAI,OAAO,KAAK,KAAK,SAAS,CAAC;IAElE,MAAM,WAAW,qBAAQ,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,cAAc,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAE,CAAC;IAEtE,IAAI,CAAC,KAAa,aAAb,KAAK,uBAAL,KAAK,CAAU,QAAQ,KAAI,OAAO,CAAC,GAAG,CAAC,QAAQ,KAAK,YAAY,EAAE,CAAC;QACtE,OAAO,CAAC,IAAI,CACV,yFAAyF,CAC1F,CAAC;QACF,OAAO,CAAC,IAAI,CACV,gGAAgG,CACjG,CAAC;IACJ,CAAC;IAED,OAAO;QACL,YAAY;QACZ,QAAQ;QACR,OAAO;QACP,kBAAkB;QAClB,IAAI,EAAE,MAAA,IAAI,aAAJ,IAAI,cAAJ,IAAI,GAAI,QAAQ,aAAR,QAAQ,uBAAR,QAAQ,CAAE,IAAI,mCAAI,QAAQ;QACxC,QAAQ;QACR,UAAU,gCACR,EAAE,IACC,WAAW,KACd,kBAAkB,EAChB,IAAA,cAAE,EAAC,KAAK,CAAC,kBAAkB,CAAC,EAAE;gBAC5B,CAAC,kBAAkB,CAAC,EAClB,CAAC,CAAC,CAAA,KAAK,aAAL,KAAK,uBAAL,KAAK,CAAE,WAAW,CAAA,IAAI,OAAO,CAAA,KAAK,aAAL,KAAK,uBAAL,KAAK,CAAE,WAAW,CAAA,KAAK,QAAQ;gBAChE,CAAC,OAAO,CAAC,EAAE,YAAY;gBACvB,CAAC,MAAA,QAAQ,aAAR,QAAQ,uBAAR,QAAQ,CAAE,OAAO,mCAAI,EAAE,CAAC,EAAE,QAAQ,IAAI,CAAC,CAAC,CAAA,QAAQ,aAAR,QAAQ,uBAAR,QAAQ,CAAE,KAAK,CAAA;aACzD,CAAC,IAAI,SAAS,EAEjB,QAAQ,GACT;KACF,CAAC;AACJ,CAAC,CAAC;AAvDW,QAAA,YAAY,gBAuDvB"}
@@ -20,6 +20,7 @@ export interface CopyButtonProps extends Omit<ButtonHTMLAttributes<HTMLButtonEle
20
20
  /**
21
21
  * Text shown when button is clicked.
22
22
  * Only set if used with `text`-prop.
23
+ * @default "Kopiert!"
23
24
  */
24
25
  activeText?: string;
25
26
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"CopyButton.js","sourceRoot":"","sources":["../../src/copybutton/CopyButton.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"CopyButton.js","sourceRoot":"","sources":["../../src/copybutton/CopyButton.tsx"],"names":[],"mappings":"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"}
@@ -6,7 +6,7 @@ export interface CheckboxGroupState {
6
6
  toggleValue(value: any): void;
7
7
  }
8
8
  export declare const CheckboxGroupContext: React.Context<CheckboxGroupState | null>;
9
- export interface CheckboxGroupProps extends Omit<FieldsetProps, "onChange" | "errorPropagation" | "defaultValue"> {
9
+ export interface CheckboxGroupProps extends Omit<FieldsetProps, "onChange" | "errorPropagation" | "defaultValue" | "nativeReadOnly"> {
10
10
  /**
11
11
  * Collection of `<Checkbox/>`.
12
12
  */
@@ -16,7 +16,7 @@ export interface CheckboxGroupProps extends Omit<FieldsetProps, "onChange" | "er
16
16
  */
17
17
  value?: any[];
18
18
  /**
19
- * Default checked checkboxes on render.
19
+ * Default checked checkboxes.
20
20
  */
21
21
  defaultValue?: any[];
22
22
  /**
@@ -32,10 +32,10 @@ export interface CheckboxGroupProps extends Omit<FieldsetProps, "onChange" | "er
32
32
  *
33
33
  * @example
34
34
  * ```jsx
35
- * <CheckboxGroup legend="Hvor vil du sitte?">
36
- * <Checkbox value="Bakerst">Bakerst</Checkbox>
37
- * <Checkbox value="Midterst">Midterst</Checkbox>
38
- * <Checkbox value="Fremst">Fremst</Checkbox>
35
+ * <CheckboxGroup legend="Transportmiddel">
36
+ * <Checkbox value="car">Bil</Checkbox>
37
+ * <Checkbox value="taxi">Drosje</Checkbox>
38
+ * <Checkbox value="public">Kollektivt</Checkbox>
39
39
  * </CheckboxGroup>
40
40
  * ```
41
41
  */
@@ -22,10 +22,10 @@ export const CheckboxGroupContext = createContext(null);
22
22
  *
23
23
  * @example
24
24
  * ```jsx
25
- * <CheckboxGroup legend="Hvor vil du sitte?">
26
- * <Checkbox value="Bakerst">Bakerst</Checkbox>
27
- * <Checkbox value="Midterst">Midterst</Checkbox>
28
- * <Checkbox value="Fremst">Fremst</Checkbox>
25
+ * <CheckboxGroup legend="Transportmiddel">
26
+ * <Checkbox value="car">Bil</Checkbox>
27
+ * <Checkbox value="taxi">Drosje</Checkbox>
28
+ * <Checkbox value="public">Kollektivt</Checkbox>
29
29
  * </CheckboxGroup>
30
30
  * ```
31
31
  */
@@ -11,7 +11,7 @@ export interface CheckboxProps extends FormFieldProps, Omit<InputHTMLAttributes<
11
11
  */
12
12
  errorId?: string;
13
13
  /**
14
- * Checkbox label
14
+ * Checkbox label.
15
15
  */
16
16
  children: React.ReactNode;
17
17
  /**
@@ -19,7 +19,7 @@ export interface CheckboxProps extends FormFieldProps, Omit<InputHTMLAttributes<
19
19
  */
20
20
  hideLabel?: boolean;
21
21
  /**
22
- * The value of the HTML element.
22
+ * Checkbox value.
23
23
  */
24
24
  value?: any;
25
25
  /**
@@ -28,7 +28,7 @@ export interface CheckboxProps extends FormFieldProps, Omit<InputHTMLAttributes<
28
28
  */
29
29
  indeterminate?: boolean;
30
30
  /**
31
- * Adds a description to extend labeling of Checkbox.
31
+ * Adds a description to extend the labeling.
32
32
  */
33
33
  description?: string;
34
34
  }
@@ -81,8 +81,8 @@ interface FileUploadComponent extends React.ForwardRefExoticComponent<FileUpload
81
81
  * ```jsx
82
82
  * <FileUpload.Item file={file} status="uploading" />
83
83
  * <FileUpload.Item file={file} status="downloading" />
84
- * <FileUpload.Item file={file} itemAction="retry" onRetry={...} />
85
- * <FileUpload.Item file={file} itemAction="delete" onDelete={...} />
84
+ * <FileUpload.Item file={file} button={{ action:"retry", onClick:... }} />
85
+ * <FileUpload.Item file={file} button={{ action:"delete", onClick:... }} />
86
86
  * ```
87
87
  */
88
88
  Item: typeof Item;
@@ -2,12 +2,12 @@ import React, { MouseEvent } from "react";
2
2
  import { OverridableComponent } from "../../../../util/index.js";
3
3
  import { ComponentTranslation } from "../../i18n/i18n.types.js";
4
4
  import { FileItem } from "./Item.types.js";
5
- export interface FileItemBaseProps {
5
+ export interface FileUploadItemProps extends React.HTMLAttributes<HTMLDivElement> {
6
6
  /**
7
7
  * Overrides html-tag
8
8
  * @default "div"
9
9
  */
10
- as?: "div" | "li";
10
+ as?: ("div" | "li") & React.ElementType;
11
11
  /**
12
12
  * Either a native File or file metadata.
13
13
  */
@@ -33,25 +33,18 @@ export interface FileItemBaseProps {
33
33
  * @default "idle"
34
34
  */
35
35
  status?: "downloading" | "uploading" | "idle";
36
+ /**
37
+ * Props for the action button.
38
+ */
39
+ button?: {
40
+ action: "delete" | "retry";
41
+ onClick: (event: MouseEvent<HTMLButtonElement>) => void;
42
+ id?: string;
43
+ };
36
44
  /**
37
45
  * i18n-API for customizing texts and labels
38
46
  */
39
47
  translations?: ComponentTranslation<"FileUpload">["item"];
40
- onRetry?: (event: MouseEvent<HTMLButtonElement>) => void;
41
- onDelete?: (event: MouseEvent<HTMLButtonElement>) => void;
42
48
  }
43
- type FileItemActionDelete = {
44
- onDelete: (event: MouseEvent<HTMLButtonElement>) => void;
45
- itemAction: "delete";
46
- };
47
- type FileItemActionRetry = {
48
- onRetry: (event: MouseEvent<HTMLButtonElement>) => void;
49
- itemAction: "retry";
50
- };
51
- type FileItemActionNone = {
52
- itemAction?: "none";
53
- };
54
- type FileItemConditionalProps = FileItemActionDelete | FileItemActionRetry | FileItemActionNone;
55
- export type FileUploadItemProps = FileItemBaseProps & FileItemConditionalProps & React.HTMLAttributes<HTMLDivElement>;
56
49
  export declare const Item: OverridableComponent<FileUploadItemProps, HTMLDivElement>;
57
50
  export default Item;
@@ -20,7 +20,7 @@ import ItemIcon from "./ItemIcon.js";
20
20
  import ItemName from "./ItemName.js";
21
21
  import { formatFileSize } from "./utils/format-file-size.js";
22
22
  export const Item = forwardRef((_a, ref) => {
23
- var { as: Component = "div", file, status = "idle", onDelete, onRetry, error, className, href, onFileClick, itemAction = "delete", translations } = _a, rest = __rest(_a, ["as", "file", "status", "onDelete", "onRetry", "error", "className", "href", "onFileClick", "itemAction", "translations"]);
23
+ var { as: Component = "div", file, status = "idle", error, className, href, onFileClick, button, translations } = _a, rest = __rest(_a, ["as", "file", "status", "error", "className", "href", "onFileClick", "button", "translations"]);
24
24
  const context = useFileUploadTranslation(false);
25
25
  const translate = useI18n("FileUpload", { item: translations }, context === null || context === void 0 ? void 0 : context.translations);
26
26
  const showError = !!error && status === "idle";
@@ -44,7 +44,9 @@ export const Item = forwardRef((_a, ref) => {
44
44
  React.createElement("div", { className: "navds-file-item__error", "aria-relevant": "additions removals", "aria-live": "polite" }, showError && (React.createElement(BodyShort, { size: "small", className: "navds-file-item__error-content" },
45
45
  React.createElement(ExclamationmarkTriangleIcon, { "aria-hidden": true }),
46
46
  error)))),
47
- status === "idle" && (React.createElement(ItemButton, { file: file, onRetry: onRetry, onDelete: onDelete, action: itemAction, retryTitle: translate("item.retryButtonTitle"), deleteTitle: translate("item.deleteButtonTitle") })))));
47
+ status === "idle" && button && (React.createElement(ItemButton, Object.assign({}, button, { title: translate(button.action === "retry"
48
+ ? "item.retryButtonTitle"
49
+ : "item.deleteButtonTitle") }))))));
48
50
  });
49
51
  export default Item;
50
52
  //# sourceMappingURL=Item.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"Item.js","sourceRoot":"","sources":["../../../../../src/form/file-upload/parts/item/Item.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Item.js","sourceRoot":"","sources":["../../../../../src/form/file-upload/parts/item/Item.tsx"],"names":[],"mappings":";;;;;;;;;;;AAAA,OAAO,EAAE,MAAM,MAAM,CAAC;AACtB,OAAO,KAAK,EAAE,EAAc,UAAU,EAAE,MAAM,OAAO,CAAC;AACtD,OAAO,EAAE,2BAA2B,EAAE,MAAM,qBAAqB,CAAC;AAClE,OAAO,EAAE,SAAS,EAAE,MAAM,wBAAwB,CAAC;AAEnD,OAAO,EAAE,wBAAwB,EAAE,MAAM,0BAA0B,CAAC;AACpE,OAAO,EAAE,OAAO,EAAE,MAAM,yBAAyB,CAAC;AAGlD,OAAO,UAAU,MAAM,cAAc,CAAC;AACtC,OAAO,QAAQ,MAAM,YAAY,CAAC;AAClC,OAAO,QAAQ,MAAM,YAAY,CAAC;AAClC,OAAO,EAAE,cAAc,EAAE,MAAM,0BAA0B,CAAC;AAgD1D,MAAM,CAAC,MAAM,IAAI,GACf,UAAU,CACR,CACE,EAWsB,EACtB,GAAG,EACH,EAAE;QAbF,EACE,EAAE,EAAE,SAAS,GAAG,KAAK,EACrB,IAAI,EACJ,MAAM,GAAG,MAAM,EACf,KAAK,EACL,SAAS,EACT,IAAI,EACJ,WAAW,EACX,MAAM,EACN,YAAY,OAEQ,EADjB,IAAI,cAVT,+FAWC,CADQ;IAIT,MAAM,OAAO,GAAG,wBAAwB,CAAC,KAAK,CAAC,CAAC;IAChD,MAAM,SAAS,GAAG,OAAO,CACvB,YAAY,EACZ,EAAE,IAAI,EAAE,YAAY,EAAE,EACtB,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,YAAY,CACtB,CAAC;IAEF,MAAM,SAAS,GAAG,CAAC,CAAC,KAAK,IAAI,MAAM,KAAK,MAAM,CAAC;IAE/C,SAAS,aAAa;QACpB,IAAI,MAAM,KAAK,WAAW,EAAE,CAAC;YAC3B,OAAO,SAAS,CAAC,gBAAgB,CAAC,CAAC;QACrC,CAAC;QACD,IAAI,MAAM,KAAK,aAAa,EAAE,CAAC;YAC7B,OAAO,SAAS,CAAC,kBAAkB,CAAC,CAAC;QACvC,CAAC;QACD,OAAO,cAAc,CAAC,IAAI,CAAC,CAAC;IAC9B,CAAC;IAED,OAAO,CACL,oBAAC,SAAS,kBACR,GAAG,EAAE,GAAG,IACJ,IAAI,IACR,SAAS,EAAE,EAAE,CAAC,iBAAiB,EAAE,SAAS,EAAE;YAC1C,wBAAwB,EAAE,SAAS;SACpC,CAAC;QAEF,6BAAK,SAAS,EAAC,wBAAwB;YACrC,oBAAC,QAAQ,IACP,SAAS,EAAE,MAAM,KAAK,MAAM,EAC5B,IAAI,EAAE,IAAI,EACV,SAAS,EAAE,SAAS,GACpB;YACF,6BAAK,SAAS,EAAC,4BAA4B;gBACzC,oBAAC,QAAQ,IAAC,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,OAAO,EAAE,WAAW,GAAI;gBAC1D,oBAAC,SAAS,IAAC,EAAE,EAAC,KAAK,EAAC,IAAI,EAAC,OAAO,IAC7B,aAAa,EAAE,CACN;gBACZ,6BACE,SAAS,EAAC,wBAAwB,mBACpB,oBAAoB,eACxB,QAAQ,IAEjB,SAAS,IAAI,CACZ,oBAAC,SAAS,IACR,IAAI,EAAC,OAAO,EACZ,SAAS,EAAC,gCAAgC;oBAE1C,oBAAC,2BAA2B,0BAAe;oBAC1C,KAAK,CACI,CACb,CACG,CACF;YAEL,MAAM,KAAK,MAAM,IAAI,MAAM,IAAI,CAC9B,oBAAC,UAAU,oBACL,MAAM,IACV,KAAK,EAAE,SAAS,CACd,MAAM,CAAC,MAAM,KAAK,OAAO;oBACvB,CAAC,CAAC,uBAAuB;oBACzB,CAAC,CAAC,wBAAwB,CAC7B,IACD,CACH,CACG,CACI,CACb,CAAC;AACJ,CAAC,CACF,CAAC;AAEJ,eAAe,IAAI,CAAC"}
@@ -1,12 +1,9 @@
1
1
  import React from "react";
2
- import { FileItem } from "./Item.types.js";
3
2
  interface Props {
4
- file: FileItem;
5
- onRetry?: (event: React.MouseEvent<HTMLButtonElement>) => void;
6
- onDelete?: (event: React.MouseEvent<HTMLButtonElement>) => void;
7
- action: "delete" | "retry" | "none";
8
- retryTitle: string;
9
- deleteTitle: string;
3
+ action: "delete" | "retry";
4
+ onClick: (event: React.MouseEvent<HTMLButtonElement>) => void;
5
+ id?: string;
6
+ title: string;
10
7
  }
11
- declare const ItemButton: ({ onRetry, onDelete, action, retryTitle, deleteTitle, }: Props) => React.JSX.Element | null;
8
+ declare const ItemButton: ({ action, onClick, id, title }: Props) => React.JSX.Element;
12
9
  export default ItemButton;
@@ -1,17 +1,9 @@
1
1
  import React from "react";
2
2
  import { ArrowsCirclepathIcon, TrashIcon } from "@navikt/aksel-icons";
3
3
  import { Button } from "../../../../button/index.js";
4
- const ItemButton = ({ onRetry, onDelete, action, retryTitle, deleteTitle, }) => {
5
- if (action === "none") {
6
- return null;
7
- }
8
- if (onRetry && action === "retry") {
9
- return (React.createElement(Button, { className: "navds-file-item__button", type: "button", variant: "tertiary-neutral", onClick: onRetry, icon: React.createElement(ArrowsCirclepathIcon, { title: retryTitle }) }));
10
- }
11
- if (onDelete && action === "delete") {
12
- return (React.createElement(Button, { className: "navds-file-item__button", type: "button", variant: "tertiary-neutral", onClick: onDelete, icon: React.createElement(TrashIcon, { title: deleteTitle }) }));
13
- }
14
- return null;
4
+ const ItemButton = ({ action, onClick, id, title }) => {
5
+ const Icon = action === "delete" ? TrashIcon : ArrowsCirclepathIcon;
6
+ return (React.createElement(Button, { id: id, className: "navds-file-item__button", type: "button", variant: "tertiary-neutral", onClick: onClick, icon: React.createElement(Icon, { title: title }) }));
15
7
  };
16
8
  export default ItemButton;
17
9
  //# sourceMappingURL=ItemButton.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"ItemButton.js","sourceRoot":"","sources":["../../../../../src/form/file-upload/parts/item/ItemButton.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,EAAE,oBAAoB,EAAE,SAAS,EAAE,MAAM,qBAAqB,CAAC;AACtE,OAAO,EAAE,MAAM,EAAE,MAAM,oBAAoB,CAAC;AAY5C,MAAM,UAAU,GAAG,CAAC,EAClB,OAAO,EACP,QAAQ,EACR,MAAM,EACN,UAAU,EACV,WAAW,GACL,EAAE,EAAE;IACV,IAAI,MAAM,KAAK,MAAM,EAAE,CAAC;QACtB,OAAO,IAAI,CAAC;IACd,CAAC;IAED,IAAI,OAAO,IAAI,MAAM,KAAK,OAAO,EAAE,CAAC;QAClC,OAAO,CACL,oBAAC,MAAM,IACL,SAAS,EAAC,yBAAyB,EACnC,IAAI,EAAC,QAAQ,EACb,OAAO,EAAC,kBAAkB,EAC1B,OAAO,EAAE,OAAO,EAChB,IAAI,EAAE,oBAAC,oBAAoB,IAAC,KAAK,EAAE,UAAU,GAAI,GACjD,CACH,CAAC;IACJ,CAAC;IACD,IAAI,QAAQ,IAAI,MAAM,KAAK,QAAQ,EAAE,CAAC;QACpC,OAAO,CACL,oBAAC,MAAM,IACL,SAAS,EAAC,yBAAyB,EACnC,IAAI,EAAC,QAAQ,EACb,OAAO,EAAC,kBAAkB,EAC1B,OAAO,EAAE,QAAQ,EACjB,IAAI,EAAE,oBAAC,SAAS,IAAC,KAAK,EAAE,WAAW,GAAI,GACvC,CACH,CAAC;IACJ,CAAC;IAED,OAAO,IAAI,CAAC;AACd,CAAC,CAAC;AAEF,eAAe,UAAU,CAAC"}
1
+ {"version":3,"file":"ItemButton.js","sourceRoot":"","sources":["../../../../../src/form/file-upload/parts/item/ItemButton.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,EAAE,oBAAoB,EAAE,SAAS,EAAE,MAAM,qBAAqB,CAAC;AACtE,OAAO,EAAE,MAAM,EAAE,MAAM,oBAAoB,CAAC;AAS5C,MAAM,UAAU,GAAG,CAAC,EAAE,MAAM,EAAE,OAAO,EAAE,EAAE,EAAE,KAAK,EAAS,EAAE,EAAE;IAC3D,MAAM,IAAI,GAAG,MAAM,KAAK,QAAQ,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,oBAAoB,CAAC;IAEpE,OAAO,CACL,oBAAC,MAAM,IACL,EAAE,EAAE,EAAE,EACN,SAAS,EAAC,yBAAyB,EACnC,IAAI,EAAC,QAAQ,EACb,OAAO,EAAC,kBAAkB,EAC1B,OAAO,EAAE,OAAO,EAChB,IAAI,EAAE,oBAAC,IAAI,IAAC,KAAK,EAAE,KAAK,GAAI,GAC5B,CACH,CAAC;AACJ,CAAC,CAAC;AAEF,eAAe,UAAU,CAAC"}
@@ -8,7 +8,7 @@ export interface RadioGroupContextProps {
8
8
  required?: boolean;
9
9
  }
10
10
  export declare const RadioGroupContext: React.Context<RadioGroupContextProps | null>;
11
- export interface RadioGroupProps extends Omit<FieldsetProps, "onChange" | "errorPropagation" | "defaultValue"> {
11
+ export interface RadioGroupProps extends Omit<FieldsetProps, "onChange" | "errorPropagation" | "defaultValue" | "nativeReadOnly"> {
12
12
  /**
13
13
  * Collection of `<Radio />`-elements
14
14
  */
@@ -6,11 +6,11 @@ export interface RadioProps extends Omit<FormFieldProps, "error" | "errorId" | "
6
6
  */
7
7
  children: React.ReactNode;
8
8
  /**
9
- * The value of the HTML element.
9
+ * Radio value.
10
10
  */
11
11
  value: any;
12
12
  /**
13
- * Adds a description to extend labeling of Radio.
13
+ * Adds a description to extend the labeling.
14
14
  */
15
15
  description?: string;
16
16
  }
@@ -1,8 +1,7 @@
1
1
  import React from "react";
2
2
  export interface FormFieldProps {
3
3
  /**
4
- * Adds a description to extend labeling of the field.
5
- * Error message for element.
4
+ * Error message.
6
5
  */
7
6
  error?: React.ReactNode;
8
7
  /**
@@ -20,7 +19,7 @@ export interface FormFieldProps {
20
19
  */
21
20
  disabled?: boolean;
22
21
  /**
23
- * Adds a description to extend labeling of a field.
22
+ * Adds a description to extend the labeling.
24
23
  */
25
24
  description?: React.ReactNode;
26
25
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"useFormField.js","sourceRoot":"","sources":["../../src/form/useFormField.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,MAAM,CAAC;AACtB,OAAc,EAAE,UAAU,EAAE,MAAM,OAAO,CAAC;AAC1C,OAAO,EAAE,KAAK,EAAE,MAAM,eAAe,CAAC;AACtC,OAAO,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAC;AAmDrD;;GAEG;AACH,MAAM,CAAC,MAAM,YAAY,GAAG,CAC1B,KAAqB,EACrB,MAAc,EACC,EAAE;;IACjB,MAAM,EAAE,IAAI,EAAE,KAAK,EAAE,OAAO,EAAE,WAAW,EAAE,GAAG,KAAK,CAAC;IAEpD,MAAM,QAAQ,GAAG,UAAU,CAAC,eAAe,CAAC,CAAC;IAE7C,MAAM,KAAK,GAAG,KAAK,EAAE,CAAC;IAEtB,MAAM,EAAE,GAAG,MAAA,KAAK,CAAC,EAAE,mCAAI,GAAG,MAAM,IAAI,KAAK,EAAE,CAAC;IAC5C,MAAM,OAAO,GAAG,WAAW,aAAX,WAAW,cAAX,WAAW,GAAI,GAAG,MAAM,UAAU,KAAK,EAAE,CAAC;IAC1D,MAAM,kBAAkB,GAAG,GAAG,MAAM,gBAAgB,KAAK,EAAE,CAAC;IAE5D,MAAM,QAAQ,GAAG,CAAA,QAAQ,aAAR,QAAQ,uBAAR,QAAQ,CAAE,QAAQ,KAAI,KAAK,CAAC,QAAQ,CAAC;IACtD,MAAM,QAAQ,GACZ,CAAC,CAAC,CAAA,QAAQ,aAAR,QAAQ,uBAAR,QAAQ,CAAE,QAAQ,KAAI,KAAK,CAAC,QAAQ,CAAC,IAAI,CAAC,QAAQ,CAAC,IAAI,SAAS,CAAC;IAErE,MAAM,QAAQ,GACZ,CAAC,QAAQ,IAAI,CAAC,QAAQ,IAAI,CAAC,CAAC,CAAC,KAAK,KAAI,QAAQ,aAAR,QAAQ,uBAAR,QAAQ,CAAE,KAAK,CAAA,CAAC,CAAC;IACzD,MAAM,YAAY,GAChB,CAAC,QAAQ,IAAI,CAAC,QAAQ,IAAI,CAAC,CAAC,KAAK,IAAI,OAAO,KAAK,KAAK,SAAS,CAAC;IAElE,MAAM,WAAW,qBAAQ,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,cAAc,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAE,CAAC;IAEtE,IAAI,CAAC,KAAa,aAAb,KAAK,uBAAL,KAAK,CAAU,QAAQ,KAAI,OAAO,CAAC,GAAG,CAAC,QAAQ,KAAK,YAAY,EAAE,CAAC;QACtE,OAAO,CAAC,IAAI,CACV,yFAAyF,CAC1F,CAAC;QACF,OAAO,CAAC,IAAI,CACV,gGAAgG,CACjG,CAAC;IACJ,CAAC;IAED,OAAO;QACL,YAAY;QACZ,QAAQ;QACR,OAAO;QACP,kBAAkB;QAClB,IAAI,EAAE,MAAA,IAAI,aAAJ,IAAI,cAAJ,IAAI,GAAI,QAAQ,aAAR,QAAQ,uBAAR,QAAQ,CAAE,IAAI,mCAAI,QAAQ;QACxC,QAAQ;QACR,UAAU,gCACR,EAAE,IACC,WAAW,KACd,kBAAkB,EAChB,EAAE,CAAC,KAAK,CAAC,kBAAkB,CAAC,EAAE;gBAC5B,CAAC,kBAAkB,CAAC,EAClB,CAAC,CAAC,CAAA,KAAK,aAAL,KAAK,uBAAL,KAAK,CAAE,WAAW,CAAA,IAAI,OAAO,CAAA,KAAK,aAAL,KAAK,uBAAL,KAAK,CAAE,WAAW,CAAA,KAAK,QAAQ;gBAChE,CAAC,OAAO,CAAC,EAAE,YAAY;gBACvB,CAAC,MAAA,QAAQ,aAAR,QAAQ,uBAAR,QAAQ,CAAE,OAAO,mCAAI,EAAE,CAAC,EAAE,QAAQ,IAAI,CAAC,CAAC,CAAA,QAAQ,aAAR,QAAQ,uBAAR,QAAQ,CAAE,KAAK,CAAA;aACzD,CAAC,IAAI,SAAS,EAEjB,QAAQ,GACT;KACF,CAAC;AACJ,CAAC,CAAC"}
1
+ {"version":3,"file":"useFormField.js","sourceRoot":"","sources":["../../src/form/useFormField.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,MAAM,CAAC;AACtB,OAAc,EAAE,UAAU,EAAE,MAAM,OAAO,CAAC;AAC1C,OAAO,EAAE,KAAK,EAAE,MAAM,eAAe,CAAC;AACtC,OAAO,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAC;AAkDrD;;GAEG;AACH,MAAM,CAAC,MAAM,YAAY,GAAG,CAC1B,KAAqB,EACrB,MAAc,EACC,EAAE;;IACjB,MAAM,EAAE,IAAI,EAAE,KAAK,EAAE,OAAO,EAAE,WAAW,EAAE,GAAG,KAAK,CAAC;IAEpD,MAAM,QAAQ,GAAG,UAAU,CAAC,eAAe,CAAC,CAAC;IAE7C,MAAM,KAAK,GAAG,KAAK,EAAE,CAAC;IAEtB,MAAM,EAAE,GAAG,MAAA,KAAK,CAAC,EAAE,mCAAI,GAAG,MAAM,IAAI,KAAK,EAAE,CAAC;IAC5C,MAAM,OAAO,GAAG,WAAW,aAAX,WAAW,cAAX,WAAW,GAAI,GAAG,MAAM,UAAU,KAAK,EAAE,CAAC;IAC1D,MAAM,kBAAkB,GAAG,GAAG,MAAM,gBAAgB,KAAK,EAAE,CAAC;IAE5D,MAAM,QAAQ,GAAG,CAAA,QAAQ,aAAR,QAAQ,uBAAR,QAAQ,CAAE,QAAQ,KAAI,KAAK,CAAC,QAAQ,CAAC;IACtD,MAAM,QAAQ,GACZ,CAAC,CAAC,CAAA,QAAQ,aAAR,QAAQ,uBAAR,QAAQ,CAAE,QAAQ,KAAI,KAAK,CAAC,QAAQ,CAAC,IAAI,CAAC,QAAQ,CAAC,IAAI,SAAS,CAAC;IAErE,MAAM,QAAQ,GACZ,CAAC,QAAQ,IAAI,CAAC,QAAQ,IAAI,CAAC,CAAC,CAAC,KAAK,KAAI,QAAQ,aAAR,QAAQ,uBAAR,QAAQ,CAAE,KAAK,CAAA,CAAC,CAAC;IACzD,MAAM,YAAY,GAChB,CAAC,QAAQ,IAAI,CAAC,QAAQ,IAAI,CAAC,CAAC,KAAK,IAAI,OAAO,KAAK,KAAK,SAAS,CAAC;IAElE,MAAM,WAAW,qBAAQ,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,cAAc,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAE,CAAC;IAEtE,IAAI,CAAC,KAAa,aAAb,KAAK,uBAAL,KAAK,CAAU,QAAQ,KAAI,OAAO,CAAC,GAAG,CAAC,QAAQ,KAAK,YAAY,EAAE,CAAC;QACtE,OAAO,CAAC,IAAI,CACV,yFAAyF,CAC1F,CAAC;QACF,OAAO,CAAC,IAAI,CACV,gGAAgG,CACjG,CAAC;IACJ,CAAC;IAED,OAAO;QACL,YAAY;QACZ,QAAQ;QACR,OAAO;QACP,kBAAkB;QAClB,IAAI,EAAE,MAAA,IAAI,aAAJ,IAAI,cAAJ,IAAI,GAAI,QAAQ,aAAR,QAAQ,uBAAR,QAAQ,CAAE,IAAI,mCAAI,QAAQ;QACxC,QAAQ;QACR,UAAU,gCACR,EAAE,IACC,WAAW,KACd,kBAAkB,EAChB,EAAE,CAAC,KAAK,CAAC,kBAAkB,CAAC,EAAE;gBAC5B,CAAC,kBAAkB,CAAC,EAClB,CAAC,CAAC,CAAA,KAAK,aAAL,KAAK,uBAAL,KAAK,CAAE,WAAW,CAAA,IAAI,OAAO,CAAA,KAAK,aAAL,KAAK,uBAAL,KAAK,CAAE,WAAW,CAAA,KAAK,QAAQ;gBAChE,CAAC,OAAO,CAAC,EAAE,YAAY;gBACvB,CAAC,MAAA,QAAQ,aAAR,QAAQ,uBAAR,QAAQ,CAAE,OAAO,mCAAI,EAAE,CAAC,EAAE,QAAQ,IAAI,CAAC,CAAC,CAAA,QAAQ,aAAR,QAAQ,uBAAR,QAAQ,CAAE,KAAK,CAAA;aACzD,CAAC,IAAI,SAAS,EAEjB,QAAQ,GACT;KACF,CAAC;AACJ,CAAC,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@navikt/ds-react",
3
- "version": "6.3.6",
3
+ "version": "6.4.0",
4
4
  "description": "React components from the Norwegian Labour and Welfare Administration.",
5
5
  "author": "Aksel, a team part of the Norwegian Labour and Welfare Administration.",
6
6
  "license": "MIT",
@@ -562,8 +562,8 @@
562
562
  },
563
563
  "dependencies": {
564
564
  "@floating-ui/react": "0.25.4",
565
- "@navikt/aksel-icons": "^6.3.6",
566
- "@navikt/ds-tokens": "^6.3.6",
565
+ "@navikt/aksel-icons": "^6.4.0",
566
+ "@navikt/ds-tokens": "^6.4.0",
567
567
  "@radix-ui/react-tabs": "1.0.0",
568
568
  "@radix-ui/react-toggle-group": "1.0.0",
569
569
  "clsx": "^2.1.0",
@@ -33,6 +33,7 @@ export interface CopyButtonProps
33
33
  /**
34
34
  * Text shown when button is clicked.
35
35
  * Only set if used with `text`-prop.
36
+ * @default "Kopiert!"
36
37
  */
37
38
  activeText?: string;
38
39
  /**
@@ -16,7 +16,7 @@ export const CheckboxGroupContext = createContext<CheckboxGroupState | null>(
16
16
  export interface CheckboxGroupProps
17
17
  extends Omit<
18
18
  FieldsetProps,
19
- "onChange" | "errorPropagation" | "defaultValue"
19
+ "onChange" | "errorPropagation" | "defaultValue" | "nativeReadOnly"
20
20
  > {
21
21
  /**
22
22
  * Collection of `<Checkbox/>`.
@@ -27,7 +27,7 @@ export interface CheckboxGroupProps
27
27
  */
28
28
  value?: any[];
29
29
  /**
30
- * Default checked checkboxes on render.
30
+ * Default checked checkboxes.
31
31
  */
32
32
  defaultValue?: any[];
33
33
  /**
@@ -44,10 +44,10 @@ export interface CheckboxGroupProps
44
44
  *
45
45
  * @example
46
46
  * ```jsx
47
- * <CheckboxGroup legend="Hvor vil du sitte?">
48
- * <Checkbox value="Bakerst">Bakerst</Checkbox>
49
- * <Checkbox value="Midterst">Midterst</Checkbox>
50
- * <Checkbox value="Fremst">Fremst</Checkbox>
47
+ * <CheckboxGroup legend="Transportmiddel">
48
+ * <Checkbox value="car">Bil</Checkbox>
49
+ * <Checkbox value="taxi">Drosje</Checkbox>
50
+ * <Checkbox value="public">Kollektivt</Checkbox>
51
51
  * </CheckboxGroup>
52
52
  * ```
53
53
  */
@@ -14,7 +14,7 @@ export interface CheckboxProps
14
14
  */
15
15
  errorId?: string;
16
16
  /**
17
- * Checkbox label
17
+ * Checkbox label.
18
18
  */
19
19
  children: React.ReactNode;
20
20
  /**
@@ -22,7 +22,7 @@ export interface CheckboxProps
22
22
  */
23
23
  hideLabel?: boolean;
24
24
  /**
25
- * The value of the HTML element.
25
+ * Checkbox value.
26
26
  */
27
27
  value?: any;
28
28
  /**
@@ -31,7 +31,7 @@ export interface CheckboxProps
31
31
  */
32
32
  indeterminate?: boolean;
33
33
  /**
34
- * Adds a description to extend labeling of Checkbox.
34
+ * Adds a description to extend the labeling.
35
35
  */
36
36
  description?: string;
37
37
  }
@@ -89,8 +89,8 @@ interface FileUploadComponent
89
89
  * ```jsx
90
90
  * <FileUpload.Item file={file} status="uploading" />
91
91
  * <FileUpload.Item file={file} status="downloading" />
92
- * <FileUpload.Item file={file} itemAction="retry" onRetry={...} />
93
- * <FileUpload.Item file={file} itemAction="delete" onDelete={...} />
92
+ * <FileUpload.Item file={file} button={{ action:"retry", onClick:... }} />
93
+ * <FileUpload.Item file={file} button={{ action:"delete", onClick:... }} />
94
94
  * ```
95
95
  */
96
96
  Item: typeof Item;
@@ -57,51 +57,63 @@ export const States: StoryObj<typeof FileUpload.Item> = {
57
57
  file={fileTxt}
58
58
  error="Error og uploading"
59
59
  status="uploading"
60
- onRetry={() => onRetry(fileTxt)}
61
- onDelete={() => onDelete(fileTxt)}
60
+ button={{
61
+ onClick: () => onDelete(fileTxt),
62
+ action: "delete",
63
+ }}
62
64
  />
63
65
  <h2>Item Actions</h2>
64
66
  <h3>status + delete</h3>
65
67
  <FileUpload.Item
66
68
  file={fileDocx}
67
- onDelete={() => onDelete(fileDocx)}
68
- onRetry={() => onRetry(fileDocx)}
69
69
  status="uploading"
70
- itemAction="delete"
70
+ button={{
71
+ onClick: () => onDelete(fileDocx),
72
+ action: "delete",
73
+ }}
71
74
  />
72
75
  <h3>status + retry</h3>
73
76
  <FileUpload.Item
74
77
  file={fileDocx}
75
- onDelete={() => onDelete(fileDocx)}
76
- onRetry={() => onRetry(fileDocx)}
77
78
  status="downloading"
78
- itemAction="retry"
79
+ button={{
80
+ onClick: () => onRetry(fileDocx),
81
+ action: "retry",
82
+ }}
79
83
  />
80
84
  <h3>retry</h3>
81
85
  <FileUpload.Item
82
86
  file={fileCsv}
83
- onRetry={() => onRetry(fileCsv)}
84
- itemAction="retry"
87
+ button={{
88
+ onClick: () => onRetry(fileCsv),
89
+ action: "retry",
90
+ }}
85
91
  />
86
92
  <h3>delete</h3>
87
93
  <FileUpload.Item
88
94
  file={filePptx}
89
- onDelete={() => onDelete(filePptx)}
90
- itemAction="delete"
95
+ button={{
96
+ onClick: () => onDelete(filePptx),
97
+ action: "delete",
98
+ }}
91
99
  />
92
100
  <h3>retry + error</h3>
93
101
  <FileUpload.Item
94
102
  file={fileCsv}
95
103
  error="Error og onRetry"
96
- onRetry={() => onRetry(fileCsv)}
97
- itemAction="retry"
104
+ button={{
105
+ onClick: () => onRetry(fileCsv),
106
+ action: "retry",
107
+ }}
98
108
  />
99
109
  <h3>delete + error</h3>
100
110
  <FileUpload.Item
101
111
  file={filePptx}
102
112
  error="Error og onDelete"
103
- onDelete={() => onDelete(filePptx)}
104
- itemAction="delete"
113
+ button={{
114
+ onClick: () => onDelete(filePptx),
115
+ action: "delete",
116
+ }}
105
117
  />
106
118
  </div>
107
119
  ),
@@ -25,6 +25,7 @@ const MAX_SIZE = MAX_SIZE_MB * 1024 * 1024;
25
25
 
26
26
  const CustomItem = ({
27
27
  index,
28
+ onDelete,
28
29
  ...props
29
30
  }: FileUploadItemProps & {
30
31
  index: number;
@@ -45,7 +46,10 @@ const CustomItem = ({
45
46
  <FileUpload.Item
46
47
  {...props}
47
48
  status={loading ? "uploading" : "idle"}
48
- itemAction="delete"
49
+ button={{
50
+ action: "delete",
51
+ onClick: onDelete,
52
+ }}
49
53
  as="li"
50
54
  />
51
55
  );
@@ -165,7 +169,10 @@ export const Single: StoryFn = () => {
165
169
  key={file.file.name}
166
170
  file={file.file}
167
171
  error={file.error ? errors[file.reasons[0]] : undefined}
168
- onDelete={removeFile}
172
+ button={{
173
+ action: "delete",
174
+ onClick: removeFile,
175
+ }}
169
176
  />
170
177
  ))}
171
178
  </VStack>
@@ -194,12 +201,17 @@ export const Translation = () => (
194
201
  <FileUpload.Dropzone label="Last opp bilder" onSelect={console.log} />
195
202
  <FileUpload.Item
196
203
  file={{ name: "eksempel.png", size: 200000 }}
197
- onDelete={() => null}
204
+ button={{
205
+ action: "delete",
206
+ onClick: () => null,
207
+ }}
198
208
  />
199
209
  <FileUpload.Item
200
210
  file={{ name: "eksempel.png", size: 200000 }}
201
- itemAction="retry"
202
- onRetry={() => null}
211
+ button={{
212
+ action: "retry",
213
+ onClick: () => null,
214
+ }}
203
215
  />
204
216
  <FileUpload.Item
205
217
  file={{ name: "eksempel.png", size: 200000 }}
@@ -12,12 +12,13 @@ import ItemIcon from "./ItemIcon";
12
12
  import ItemName from "./ItemName";
13
13
  import { formatFileSize } from "./utils/format-file-size";
14
14
 
15
- export interface FileItemBaseProps {
15
+ export interface FileUploadItemProps
16
+ extends React.HTMLAttributes<HTMLDivElement> {
16
17
  /**
17
18
  * Overrides html-tag
18
19
  * @default "div"
19
20
  */
20
- as?: "div" | "li";
21
+ as?: ("div" | "li") & React.ElementType;
21
22
  /**
22
23
  * Either a native File or file metadata.
23
24
  */
@@ -43,37 +44,20 @@ export interface FileItemBaseProps {
43
44
  * @default "idle"
44
45
  */
45
46
  status?: "downloading" | "uploading" | "idle";
47
+ /**
48
+ * Props for the action button.
49
+ */
50
+ button?: {
51
+ action: "delete" | "retry";
52
+ onClick: (event: MouseEvent<HTMLButtonElement>) => void;
53
+ id?: string;
54
+ };
46
55
  /**
47
56
  * i18n-API for customizing texts and labels
48
57
  */
49
58
  translations?: ComponentTranslation<"FileUpload">["item"];
50
- onRetry?: (event: MouseEvent<HTMLButtonElement>) => void;
51
- onDelete?: (event: MouseEvent<HTMLButtonElement>) => void;
52
59
  }
53
60
 
54
- type FileItemActionDelete = {
55
- onDelete: (event: MouseEvent<HTMLButtonElement>) => void;
56
- itemAction: "delete";
57
- };
58
-
59
- type FileItemActionRetry = {
60
- onRetry: (event: MouseEvent<HTMLButtonElement>) => void;
61
- itemAction: "retry";
62
- };
63
-
64
- type FileItemActionNone = {
65
- itemAction?: "none";
66
- };
67
-
68
- type FileItemConditionalProps =
69
- | FileItemActionDelete
70
- | FileItemActionRetry
71
- | FileItemActionNone;
72
-
73
- export type FileUploadItemProps = FileItemBaseProps &
74
- FileItemConditionalProps &
75
- React.HTMLAttributes<HTMLDivElement>;
76
-
77
61
  export const Item: OverridableComponent<FileUploadItemProps, HTMLDivElement> =
78
62
  forwardRef(
79
63
  (
@@ -81,16 +65,14 @@ export const Item: OverridableComponent<FileUploadItemProps, HTMLDivElement> =
81
65
  as: Component = "div",
82
66
  file,
83
67
  status = "idle",
84
- onDelete,
85
- onRetry,
86
68
  error,
87
69
  className,
88
70
  href,
89
71
  onFileClick,
90
- itemAction = "delete",
72
+ button,
91
73
  translations,
92
74
  ...rest
93
- },
75
+ }: FileUploadItemProps,
94
76
  ref,
95
77
  ) => {
96
78
  const context = useFileUploadTranslation(false);
@@ -148,14 +130,14 @@ export const Item: OverridableComponent<FileUploadItemProps, HTMLDivElement> =
148
130
  </div>
149
131
  </div>
150
132
 
151
- {status === "idle" && (
133
+ {status === "idle" && button && (
152
134
  <ItemButton
153
- file={file}
154
- onRetry={onRetry}
155
- onDelete={onDelete}
156
- action={itemAction}
157
- retryTitle={translate("item.retryButtonTitle")}
158
- deleteTitle={translate("item.deleteButtonTitle")}
135
+ {...button}
136
+ title={translate(
137
+ button.action === "retry"
138
+ ? "item.retryButtonTitle"
139
+ : "item.deleteButtonTitle",
140
+ )}
159
141
  />
160
142
  )}
161
143
  </div>
@@ -1,52 +1,27 @@
1
1
  import React from "react";
2
2
  import { ArrowsCirclepathIcon, TrashIcon } from "@navikt/aksel-icons";
3
3
  import { Button } from "../../../../button";
4
- import { FileItem } from "./Item.types";
5
4
 
6
5
  interface Props {
7
- file: FileItem;
8
- onRetry?: (event: React.MouseEvent<HTMLButtonElement>) => void;
9
- onDelete?: (event: React.MouseEvent<HTMLButtonElement>) => void;
10
- action: "delete" | "retry" | "none";
11
- retryTitle: string;
12
- deleteTitle: string;
6
+ action: "delete" | "retry";
7
+ onClick: (event: React.MouseEvent<HTMLButtonElement>) => void;
8
+ id?: string;
9
+ title: string;
13
10
  }
14
11
 
15
- const ItemButton = ({
16
- onRetry,
17
- onDelete,
18
- action,
19
- retryTitle,
20
- deleteTitle,
21
- }: Props) => {
22
- if (action === "none") {
23
- return null;
24
- }
12
+ const ItemButton = ({ action, onClick, id, title }: Props) => {
13
+ const Icon = action === "delete" ? TrashIcon : ArrowsCirclepathIcon;
25
14
 
26
- if (onRetry && action === "retry") {
27
- return (
28
- <Button
29
- className="navds-file-item__button"
30
- type="button"
31
- variant="tertiary-neutral"
32
- onClick={onRetry}
33
- icon={<ArrowsCirclepathIcon title={retryTitle} />}
34
- />
35
- );
36
- }
37
- if (onDelete && action === "delete") {
38
- return (
39
- <Button
40
- className="navds-file-item__button"
41
- type="button"
42
- variant="tertiary-neutral"
43
- onClick={onDelete}
44
- icon={<TrashIcon title={deleteTitle} />}
45
- />
46
- );
47
- }
48
-
49
- return null;
15
+ return (
16
+ <Button
17
+ id={id}
18
+ className="navds-file-item__button"
19
+ type="button"
20
+ variant="tertiary-neutral"
21
+ onClick={onClick}
22
+ icon={<Icon title={title} />}
23
+ />
24
+ );
50
25
  };
51
26
 
52
27
  export default ItemButton;
@@ -18,7 +18,7 @@ export const RadioGroupContext =
18
18
  export interface RadioGroupProps
19
19
  extends Omit<
20
20
  FieldsetProps,
21
- "onChange" | "errorPropagation" | "defaultValue"
21
+ "onChange" | "errorPropagation" | "defaultValue" | "nativeReadOnly"
22
22
  > {
23
23
  /**
24
24
  * Collection of `<Radio />`-elements
@@ -9,11 +9,11 @@ export interface RadioProps
9
9
  */
10
10
  children: React.ReactNode;
11
11
  /**
12
- * The value of the HTML element.
12
+ * Radio value.
13
13
  */
14
14
  value: any;
15
15
  /**
16
- * Adds a description to extend labeling of Radio.
16
+ * Adds a description to extend the labeling.
17
17
  */
18
18
  description?: string;
19
19
  }
@@ -5,8 +5,7 @@ import { FieldsetContext } from "./fieldset/context";
5
5
 
6
6
  export interface FormFieldProps {
7
7
  /**
8
- * Adds a description to extend labeling of the field.
9
- * Error message for element.
8
+ * Error message.
10
9
  */
11
10
  error?: React.ReactNode;
12
11
  /**
@@ -24,7 +23,7 @@ export interface FormFieldProps {
24
23
  */
25
24
  disabled?: boolean;
26
25
  /**
27
- * Adds a description to extend labeling of a field.
26
+ * Adds a description to extend the labeling.
28
27
  */
29
28
  description?: React.ReactNode;
30
29
  /**