@navikt/ds-react 8.2.0 → 8.2.2
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.
- package/cjs/accordion/Accordion.d.ts +9 -7
- package/cjs/accordion/Accordion.js +4 -1
- package/cjs/accordion/Accordion.js.map +1 -1
- package/cjs/accordion/AccordionItem.d.ts +8 -6
- package/cjs/accordion/AccordionItem.js +1 -7
- package/cjs/accordion/AccordionItem.js.map +1 -1
- package/cjs/accordion/index.d.ts +2 -4
- package/cjs/accordion/index.js +3 -6
- package/cjs/accordion/index.js.map +1 -1
- package/cjs/chat/Chat.d.ts +4 -2
- package/cjs/chat/Chat.js +2 -1
- package/cjs/chat/Chat.js.map +1 -1
- package/cjs/chat/index.d.ts +2 -2
- package/cjs/chat/index.js +1 -2
- package/cjs/chat/index.js.map +1 -1
- package/cjs/chips/Chips.d.ts +7 -6
- package/cjs/chips/Chips.js +3 -1
- package/cjs/chips/Chips.js.map +1 -1
- package/cjs/chips/index.d.ts +2 -3
- package/cjs/chips/index.js +2 -4
- package/cjs/chips/index.js.map +1 -1
- package/cjs/collapsible/Collapsible.d.ts +6 -4
- package/cjs/collapsible/Collapsible.js +4 -2
- package/cjs/collapsible/Collapsible.js.map +1 -1
- package/cjs/collapsible/index.d.ts +2 -3
- package/cjs/collapsible/index.js +2 -4
- package/cjs/collapsible/index.js.map +1 -1
- package/cjs/data/table/root/DataTableRoot.js +2 -1
- package/cjs/data/table/root/DataTableRoot.js.map +1 -1
- package/cjs/data/table/td/DataTableTd.js +3 -2
- package/cjs/data/table/td/DataTableTd.js.map +1 -1
- package/cjs/data/table/th/DataTableTh.d.ts +12 -2
- package/cjs/data/table/th/DataTableTh.js +7 -2
- package/cjs/data/table/th/DataTableTh.js.map +1 -1
- package/cjs/data/toolbar/button/DataToolbarButton.d.ts +17 -0
- package/cjs/data/toolbar/button/DataToolbarButton.js +28 -0
- package/cjs/data/toolbar/button/DataToolbarButton.js.map +1 -0
- package/cjs/data/toolbar/root/DataToolbarRoot.d.ts +13 -2
- package/cjs/data/toolbar/root/DataToolbarRoot.js +4 -1
- package/cjs/data/toolbar/root/DataToolbarRoot.js.map +1 -1
- package/cjs/data/toolbar/search-field/DataToolbarSearchField.d.ts +3 -2
- package/cjs/data/toolbar/search-field/DataToolbarSearchField.js +4 -1
- package/cjs/data/toolbar/search-field/DataToolbarSearchField.js.map +1 -1
- package/cjs/data/toolbar/toggle-button/DataToolbarToggleButton.d.ts +7 -6
- package/cjs/data/toolbar/toggle-button/DataToolbarToggleButton.js +2 -1
- package/cjs/data/toolbar/toggle-button/DataToolbarToggleButton.js.map +1 -1
- package/cjs/date/datepicker/DatePicker.d.ts +6 -3
- package/cjs/date/datepicker/DatePicker.js +3 -1
- package/cjs/date/datepicker/DatePicker.js.map +1 -1
- package/cjs/date/datepicker/index.d.ts +2 -3
- package/cjs/date/datepicker/index.js +3 -5
- package/cjs/date/datepicker/index.js.map +1 -1
- package/cjs/date/monthpicker/MonthPicker.d.ts +5 -2
- package/cjs/date/monthpicker/MonthPicker.js +3 -1
- package/cjs/date/monthpicker/MonthPicker.js.map +1 -1
- package/cjs/date/monthpicker/index.d.ts +2 -4
- package/cjs/date/monthpicker/index.js +2 -4
- package/cjs/date/monthpicker/index.js.map +1 -1
- package/cjs/dialog/index.d.ts +2 -18
- package/cjs/dialog/index.js +8 -16
- package/cjs/dialog/index.js.map +1 -1
- package/cjs/dialog/root/DialogRoot.d.ts +10 -9
- package/cjs/dialog/root/DialogRoot.js +9 -1
- package/cjs/dialog/root/DialogRoot.js.map +1 -1
- package/cjs/expansion-card/ExpansionCard.d.ts +6 -5
- package/cjs/expansion-card/ExpansionCard.js +3 -9
- package/cjs/expansion-card/ExpansionCard.js.map +1 -1
- package/cjs/form/file-upload/FileUpload.d.ts +2 -2
- package/cjs/form/file-upload/FileUpload.js +1 -1
- package/cjs/form/file-upload/FileUpload.js.map +1 -1
- package/cjs/form/search/Search.d.ts +2 -1
- package/cjs/form/search/Search.js.map +1 -1
- package/cjs/internal-header/InternalHeader.d.ts +11 -10
- package/cjs/internal-header/InternalHeader.js +5 -1
- package/cjs/internal-header/InternalHeader.js.map +1 -1
- package/cjs/internal-header/index.d.ts +2 -5
- package/cjs/internal-header/index.js +4 -8
- package/cjs/internal-header/index.js.map +1 -1
- package/cjs/layout/bleed/Bleed.d.ts +1 -1
- package/cjs/layout/bleed/Bleed.js +1 -1
- package/cjs/layout/responsive/Responsive.d.ts +4 -4
- package/cjs/layout/responsive/Responsive.js +4 -4
- package/cjs/layout/stack/HStack.d.ts +2 -2
- package/cjs/layout/stack/HStack.js +2 -2
- package/cjs/layout/stack/Spacer.d.ts +1 -1
- package/cjs/layout/stack/Spacer.js +1 -1
- package/cjs/layout/stack/VStack.d.ts +2 -2
- package/cjs/layout/stack/VStack.js +2 -2
- package/cjs/link-panel/LinkPanel.d.ts +1 -1
- package/cjs/link-panel/LinkPanel.js.map +1 -1
- package/cjs/list/List.d.ts +4 -2
- package/cjs/list/List.js +2 -1
- package/cjs/list/List.js.map +1 -1
- package/cjs/list/index.d.ts +2 -3
- package/cjs/list/index.js +1 -2
- package/cjs/list/index.js.map +1 -1
- package/cjs/overlays/action-menu/ActionMenu.d.ts +42 -42
- package/cjs/overlays/action-menu/ActionMenu.js +1 -1
- package/cjs/overlays/action-menu/ActionMenu.js.map +1 -1
- package/cjs/panel/Panel.d.ts +2 -2
- package/cjs/panel/Panel.js +2 -2
- package/cjs/stepper/Stepper.d.ts +4 -2
- package/cjs/stepper/Stepper.js +2 -1
- package/cjs/stepper/Stepper.js.map +1 -1
- package/cjs/stepper/index.d.ts +2 -2
- package/cjs/stepper/index.js +1 -2
- package/cjs/stepper/index.js.map +1 -1
- package/cjs/tabs/Tabs.d.ts +5 -3
- package/cjs/tabs/Tabs.js +4 -1
- package/cjs/tabs/Tabs.js.map +1 -1
- package/cjs/tabs/index.d.ts +2 -5
- package/cjs/tabs/index.js +3 -6
- package/cjs/tabs/index.js.map +1 -1
- package/cjs/toggle-group/ToggleGroup.d.ts +4 -2
- package/cjs/toggle-group/ToggleGroup.js +2 -1
- package/cjs/toggle-group/ToggleGroup.js.map +1 -1
- package/cjs/toggle-group/index.d.ts +2 -3
- package/cjs/toggle-group/index.js +1 -2
- package/cjs/toggle-group/index.js.map +1 -1
- package/esm/accordion/Accordion.d.ts +9 -7
- package/esm/accordion/Accordion.js +1 -0
- package/esm/accordion/Accordion.js.map +1 -1
- package/esm/accordion/AccordionItem.d.ts +8 -6
- package/esm/accordion/AccordionItem.js +2 -8
- package/esm/accordion/AccordionItem.js.map +1 -1
- package/esm/accordion/index.d.ts +2 -4
- package/esm/accordion/index.js +1 -4
- package/esm/accordion/index.js.map +1 -1
- package/esm/chat/Chat.d.ts +4 -2
- package/esm/chat/Chat.js +1 -0
- package/esm/chat/Chat.js.map +1 -1
- package/esm/chat/index.d.ts +2 -2
- package/esm/chat/index.js +1 -2
- package/esm/chat/index.js.map +1 -1
- package/esm/chips/Chips.d.ts +7 -6
- package/esm/chips/Chips.js +1 -0
- package/esm/chips/Chips.js.map +1 -1
- package/esm/chips/index.d.ts +2 -3
- package/esm/chips/index.js +1 -3
- package/esm/chips/index.js.map +1 -1
- package/esm/collapsible/Collapsible.d.ts +6 -4
- package/esm/collapsible/Collapsible.js +2 -1
- package/esm/collapsible/Collapsible.js.map +1 -1
- package/esm/collapsible/index.d.ts +2 -3
- package/esm/collapsible/index.js +1 -3
- package/esm/collapsible/index.js.map +1 -1
- package/esm/data/table/root/DataTableRoot.js +2 -1
- package/esm/data/table/root/DataTableRoot.js.map +1 -1
- package/esm/data/table/td/DataTableTd.js +3 -2
- package/esm/data/table/td/DataTableTd.js.map +1 -1
- package/esm/data/table/th/DataTableTh.d.ts +12 -2
- package/esm/data/table/th/DataTableTh.js +7 -2
- package/esm/data/table/th/DataTableTh.js.map +1 -1
- package/esm/data/toolbar/button/DataToolbarButton.d.ts +17 -0
- package/esm/data/toolbar/button/DataToolbarButton.js +22 -0
- package/esm/data/toolbar/button/DataToolbarButton.js.map +1 -0
- package/esm/data/toolbar/root/DataToolbarRoot.d.ts +13 -2
- package/esm/data/toolbar/root/DataToolbarRoot.js +3 -1
- package/esm/data/toolbar/root/DataToolbarRoot.js.map +1 -1
- package/esm/data/toolbar/search-field/DataToolbarSearchField.d.ts +3 -2
- package/esm/data/toolbar/search-field/DataToolbarSearchField.js +4 -1
- package/esm/data/toolbar/search-field/DataToolbarSearchField.js.map +1 -1
- package/esm/data/toolbar/toggle-button/DataToolbarToggleButton.d.ts +7 -6
- package/esm/data/toolbar/toggle-button/DataToolbarToggleButton.js +2 -1
- package/esm/data/toolbar/toggle-button/DataToolbarToggleButton.js.map +1 -1
- package/esm/date/datepicker/DatePicker.d.ts +6 -3
- package/esm/date/datepicker/DatePicker.js +2 -1
- package/esm/date/datepicker/DatePicker.js.map +1 -1
- package/esm/date/datepicker/index.d.ts +2 -3
- package/esm/date/datepicker/index.js +1 -3
- package/esm/date/datepicker/index.js.map +1 -1
- package/esm/date/monthpicker/MonthPicker.d.ts +5 -2
- package/esm/date/monthpicker/MonthPicker.js +3 -2
- package/esm/date/monthpicker/MonthPicker.js.map +1 -1
- package/esm/date/monthpicker/index.d.ts +2 -4
- package/esm/date/monthpicker/index.js +1 -3
- package/esm/date/monthpicker/index.js.map +1 -1
- package/esm/dialog/index.d.ts +2 -18
- package/esm/dialog/index.js +1 -9
- package/esm/dialog/index.js.map +1 -1
- package/esm/dialog/root/DialogRoot.d.ts +10 -9
- package/esm/dialog/root/DialogRoot.js +3 -2
- package/esm/dialog/root/DialogRoot.js.map +1 -1
- package/esm/expansion-card/ExpansionCard.d.ts +6 -5
- package/esm/expansion-card/ExpansionCard.js +4 -10
- package/esm/expansion-card/ExpansionCard.js.map +1 -1
- package/esm/form/file-upload/FileUpload.d.ts +2 -2
- package/esm/form/file-upload/FileUpload.js +1 -1
- package/esm/form/file-upload/FileUpload.js.map +1 -1
- package/esm/form/search/Search.d.ts +2 -1
- package/esm/form/search/Search.js.map +1 -1
- package/esm/internal-header/InternalHeader.d.ts +11 -10
- package/esm/internal-header/InternalHeader.js +1 -0
- package/esm/internal-header/InternalHeader.js.map +1 -1
- package/esm/internal-header/index.d.ts +2 -5
- package/esm/internal-header/index.js +1 -5
- package/esm/internal-header/index.js.map +1 -1
- package/esm/layout/bleed/Bleed.d.ts +1 -1
- package/esm/layout/bleed/Bleed.js +1 -1
- package/esm/layout/responsive/Responsive.d.ts +4 -4
- package/esm/layout/responsive/Responsive.js +4 -4
- package/esm/layout/stack/HStack.d.ts +2 -2
- package/esm/layout/stack/HStack.js +2 -2
- package/esm/layout/stack/Spacer.d.ts +1 -1
- package/esm/layout/stack/Spacer.js +1 -1
- package/esm/layout/stack/VStack.d.ts +2 -2
- package/esm/layout/stack/VStack.js +2 -2
- package/esm/link-panel/LinkPanel.d.ts +1 -1
- package/esm/link-panel/LinkPanel.js.map +1 -1
- package/esm/list/List.d.ts +4 -2
- package/esm/list/List.js +1 -0
- package/esm/list/List.js.map +1 -1
- package/esm/list/index.d.ts +2 -3
- package/esm/list/index.js +1 -2
- package/esm/list/index.js.map +1 -1
- package/esm/overlays/action-menu/ActionMenu.d.ts +42 -42
- package/esm/overlays/action-menu/ActionMenu.js +1 -1
- package/esm/overlays/action-menu/ActionMenu.js.map +1 -1
- package/esm/panel/Panel.d.ts +2 -2
- package/esm/panel/Panel.js +2 -2
- package/esm/stepper/Stepper.d.ts +4 -2
- package/esm/stepper/Stepper.js +1 -0
- package/esm/stepper/Stepper.js.map +1 -1
- package/esm/stepper/index.d.ts +2 -2
- package/esm/stepper/index.js +1 -2
- package/esm/stepper/index.js.map +1 -1
- package/esm/tabs/Tabs.d.ts +5 -3
- package/esm/tabs/Tabs.js +1 -0
- package/esm/tabs/Tabs.js.map +1 -1
- package/esm/tabs/index.d.ts +2 -5
- package/esm/tabs/index.js +1 -4
- package/esm/tabs/index.js.map +1 -1
- package/esm/toggle-group/ToggleGroup.d.ts +4 -2
- package/esm/toggle-group/ToggleGroup.js +1 -0
- package/esm/toggle-group/ToggleGroup.js.map +1 -1
- package/esm/toggle-group/index.d.ts +2 -3
- package/esm/toggle-group/index.js +1 -2
- package/esm/toggle-group/index.js.map +1 -1
- package/package.json +4 -4
- package/src/accordion/Accordion.tsx +14 -14
- package/src/accordion/AccordionItem.tsx +11 -18
- package/src/accordion/index.ts +11 -12
- package/src/chat/Chat.tsx +6 -5
- package/src/chat/index.ts +2 -2
- package/src/chips/Chips.tsx +8 -8
- package/src/chips/index.ts +6 -6
- package/src/collapsible/Collapsible.tsx +18 -10
- package/src/collapsible/index.ts +9 -8
- package/src/data/table/root/DataTableRoot.tsx +7 -5
- package/src/data/table/td/DataTableTd.tsx +4 -2
- package/src/data/table/th/DataTableTh.tsx +54 -3
- package/src/data/toolbar/button/DataToolbarButton.tsx +34 -0
- package/src/data/toolbar/root/DataToolbarRoot.tsx +22 -1
- package/src/data/toolbar/search-field/DataToolbarSearchField.tsx +15 -14
- package/src/data/toolbar/toggle-button/DataToolbarToggleButton.tsx +12 -5
- package/src/date/datepicker/DatePicker.tsx +13 -5
- package/src/date/datepicker/index.ts +10 -6
- package/src/date/monthpicker/MonthPicker.tsx +13 -4
- package/src/date/monthpicker/index.ts +7 -5
- package/src/dialog/index.ts +22 -18
- package/src/dialog/root/DialogRoot.tsx +37 -9
- package/src/expansion-card/ExpansionCard.tsx +15 -21
- package/src/form/file-upload/FileUpload.tsx +5 -6
- package/src/form/search/Search.tsx +9 -6
- package/src/internal-header/InternalHeader.tsx +21 -15
- package/src/internal-header/index.ts +11 -17
- package/src/layout/bleed/Bleed.tsx +1 -1
- package/src/layout/responsive/Responsive.tsx +4 -4
- package/src/layout/stack/HStack.tsx +2 -2
- package/src/layout/stack/Spacer.tsx +1 -1
- package/src/layout/stack/VStack.tsx +2 -2
- package/src/link-panel/LinkPanel.tsx +6 -5
- package/src/list/List.tsx +5 -5
- package/src/list/index.ts +2 -3
- package/src/overlays/action-menu/ActionMenu.tsx +56 -52
- package/src/panel/Panel.tsx +2 -2
- package/src/stepper/Stepper.tsx +6 -5
- package/src/stepper/index.ts +2 -2
- package/src/tabs/Tabs.tsx +13 -7
- package/src/tabs/index.ts +7 -11
- package/src/toggle-group/ToggleGroup.tsx +7 -6
- package/src/toggle-group/index.ts +2 -6
|
@@ -1,16 +1,67 @@
|
|
|
1
1
|
import React, { forwardRef } from "react";
|
|
2
|
+
import {
|
|
3
|
+
CaretLeftRightIcon,
|
|
4
|
+
PushPinFillIcon,
|
|
5
|
+
PushPinIcon,
|
|
6
|
+
} from "@navikt/aksel-icons";
|
|
7
|
+
import { Button } from "../../../button";
|
|
2
8
|
import { cl } from "../../../utils/helpers";
|
|
3
9
|
|
|
4
|
-
type DataTableThProps = React.HTMLAttributes<HTMLTableCellElement
|
|
10
|
+
type DataTableThProps = React.HTMLAttributes<HTMLTableCellElement> & {
|
|
11
|
+
resizeHandler?: React.MouseEventHandler<HTMLButtonElement>;
|
|
12
|
+
isPinned?: boolean;
|
|
13
|
+
pinningHandler?: React.MouseEventHandler<HTMLButtonElement>;
|
|
14
|
+
size?: number;
|
|
15
|
+
};
|
|
5
16
|
|
|
6
17
|
const DataTableTh = forwardRef<HTMLTableCellElement, DataTableThProps>(
|
|
7
|
-
(
|
|
18
|
+
(
|
|
19
|
+
{
|
|
20
|
+
className,
|
|
21
|
+
children,
|
|
22
|
+
resizeHandler,
|
|
23
|
+
isPinned = false,
|
|
24
|
+
pinningHandler,
|
|
25
|
+
size,
|
|
26
|
+
...rest
|
|
27
|
+
},
|
|
28
|
+
forwardedRef,
|
|
29
|
+
) => {
|
|
8
30
|
return (
|
|
9
31
|
<th
|
|
10
32
|
{...rest}
|
|
11
33
|
ref={forwardedRef}
|
|
12
34
|
className={cl("aksel-data-table__th", className)}
|
|
13
|
-
|
|
35
|
+
style={{ width: size }}
|
|
36
|
+
>
|
|
37
|
+
{children}
|
|
38
|
+
{pinningHandler && (
|
|
39
|
+
<Button
|
|
40
|
+
onClick={pinningHandler}
|
|
41
|
+
size="small"
|
|
42
|
+
variant="secondary"
|
|
43
|
+
icon={
|
|
44
|
+
isPinned ? (
|
|
45
|
+
<PushPinFillIcon aria-hidden title="Fest kolonne" />
|
|
46
|
+
) : (
|
|
47
|
+
<PushPinIcon aria-hidden title="Løstne kolonne" />
|
|
48
|
+
)
|
|
49
|
+
}
|
|
50
|
+
/>
|
|
51
|
+
)}
|
|
52
|
+
{resizeHandler && (
|
|
53
|
+
<Button
|
|
54
|
+
onMouseDown={resizeHandler}
|
|
55
|
+
onMouseUp={resizeHandler}
|
|
56
|
+
className={cl("aksel-data-table__th-resize-handle")}
|
|
57
|
+
size="small"
|
|
58
|
+
variant="secondary"
|
|
59
|
+
icon={
|
|
60
|
+
<CaretLeftRightIcon aria-hidden title="Endre kolonnestørrelse" />
|
|
61
|
+
}
|
|
62
|
+
/>
|
|
63
|
+
)}
|
|
64
|
+
</th>
|
|
14
65
|
);
|
|
15
66
|
},
|
|
16
67
|
);
|
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
import React from "react";
|
|
2
|
+
import { Button, ButtonProps } from "../../../button";
|
|
3
|
+
import { Tooltip } from "../../../tooltip";
|
|
4
|
+
|
|
5
|
+
type DataToolbarButtonProps = Omit<
|
|
6
|
+
ButtonProps,
|
|
7
|
+
"variant" | "size" | "data-color"
|
|
8
|
+
> & {
|
|
9
|
+
/**
|
|
10
|
+
* Kort beskrivelse av knappens funksjon.
|
|
11
|
+
*/
|
|
12
|
+
tooltip?: string; // TODO: Bør kanskje ikke være innebygget, men funker ikke å bruke Tooltip rundt Button rundt ActionMenu.Trigger i dag pga. props-forwarding i Tooltip
|
|
13
|
+
};
|
|
14
|
+
|
|
15
|
+
const DataToolbarButton = React.forwardRef<
|
|
16
|
+
HTMLButtonElement,
|
|
17
|
+
DataToolbarButtonProps
|
|
18
|
+
>(({ tooltip, ...rest }, ref) => {
|
|
19
|
+
const button = (
|
|
20
|
+
<Button
|
|
21
|
+
ref={ref}
|
|
22
|
+
{...rest}
|
|
23
|
+
variant="secondary"
|
|
24
|
+
size="small"
|
|
25
|
+
data-color="neutral"
|
|
26
|
+
iconPosition="right"
|
|
27
|
+
/>
|
|
28
|
+
);
|
|
29
|
+
return tooltip ? <Tooltip content={tooltip}>{button}</Tooltip> : button;
|
|
30
|
+
});
|
|
31
|
+
|
|
32
|
+
export { DataToolbarButton };
|
|
33
|
+
export default DataToolbarButton;
|
|
34
|
+
export type { DataToolbarButtonProps };
|
|
@@ -1,5 +1,8 @@
|
|
|
1
1
|
import React from "react";
|
|
2
2
|
import { cl } from "../../../utils/helpers";
|
|
3
|
+
import DataToolbarButton, {
|
|
4
|
+
DataToolbarButtonProps,
|
|
5
|
+
} from "../button/DataToolbarButton";
|
|
3
6
|
import {
|
|
4
7
|
DataToolbarSearchField,
|
|
5
8
|
type DataToolbarSearchFieldProps,
|
|
@@ -26,6 +29,17 @@ interface DataToolbarRootComponent extends React.ForwardRefExoticComponent<
|
|
|
26
29
|
*/
|
|
27
30
|
SearchField: typeof DataToolbarSearchField;
|
|
28
31
|
|
|
32
|
+
/**
|
|
33
|
+
* @see 🏷️ {@link DataToolbarButtonProps}
|
|
34
|
+
* @example
|
|
35
|
+
* ```tsx
|
|
36
|
+
* <DataToolbar>
|
|
37
|
+
* <DataToolbar.Button />
|
|
38
|
+
* </DataToolbar>
|
|
39
|
+
* ```
|
|
40
|
+
*/
|
|
41
|
+
Button: typeof DataToolbarButton;
|
|
42
|
+
|
|
29
43
|
/**
|
|
30
44
|
* @see 🏷️ {@link DataToolbarToggleButtonProps}
|
|
31
45
|
* @example
|
|
@@ -54,12 +68,19 @@ const DataToolbar = React.forwardRef<HTMLDivElement, DataToolbarProps>(
|
|
|
54
68
|
) as DataToolbarRootComponent;
|
|
55
69
|
|
|
56
70
|
DataToolbar.SearchField = DataToolbarSearchField;
|
|
71
|
+
DataToolbar.Button = DataToolbarButton;
|
|
57
72
|
DataToolbar.ToggleButton = DataToolbarToggleButton;
|
|
58
73
|
|
|
59
|
-
export {
|
|
74
|
+
export {
|
|
75
|
+
DataToolbar,
|
|
76
|
+
DataToolbarSearchField,
|
|
77
|
+
DataToolbarButton,
|
|
78
|
+
DataToolbarToggleButton,
|
|
79
|
+
};
|
|
60
80
|
export default DataToolbar;
|
|
61
81
|
export type {
|
|
62
82
|
DataToolbarProps,
|
|
63
83
|
DataToolbarSearchFieldProps,
|
|
84
|
+
DataToolbarButtonProps,
|
|
64
85
|
DataToolbarToggleButtonProps,
|
|
65
86
|
};
|
|
@@ -1,26 +1,27 @@
|
|
|
1
1
|
import React from "react";
|
|
2
2
|
import { Search, type SearchProps } from "../../../form/search";
|
|
3
|
+
import type { SearchNativeProps } from "../../../form/search/Search";
|
|
3
4
|
|
|
4
|
-
type DataToolbarSearchFieldProps = Omit<
|
|
5
|
-
|
|
6
|
-
"data-color" | "size" | "type"
|
|
7
|
-
> &
|
|
8
|
-
Pick<SearchProps, "label" | "onChange">;
|
|
5
|
+
type DataToolbarSearchFieldProps = Omit<SearchNativeProps, "data-color"> &
|
|
6
|
+
Pick<SearchProps, "label" | "onChange">; // TODO: Vurder om label skal hardkodes (bør jo samsvare med placeholder...)
|
|
9
7
|
|
|
10
8
|
const DataToolbarSearchField = React.forwardRef<
|
|
11
9
|
HTMLInputElement,
|
|
12
10
|
DataToolbarSearchFieldProps
|
|
13
11
|
>(({ className, ...props }, ref) => {
|
|
12
|
+
// We need the wrapper because Search has width:100%
|
|
14
13
|
return (
|
|
15
|
-
<
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
14
|
+
<div>
|
|
15
|
+
<Search
|
|
16
|
+
className={className}
|
|
17
|
+
ref={ref}
|
|
18
|
+
{...props}
|
|
19
|
+
variant="simple"
|
|
20
|
+
size="small"
|
|
21
|
+
htmlSize="12"
|
|
22
|
+
placeholder="Hurtigfilter" // TODO: Oversett, og vurder om skal være overstyrbart
|
|
23
|
+
/>
|
|
24
|
+
</div>
|
|
24
25
|
);
|
|
25
26
|
});
|
|
26
27
|
|
|
@@ -1,21 +1,25 @@
|
|
|
1
1
|
import React from "react";
|
|
2
|
+
import { Button, ButtonProps } from "../../../button";
|
|
2
3
|
import { cl, composeEventHandlers } from "../../../utils/helpers";
|
|
3
4
|
import { useControllableState } from "../../../utils/hooks";
|
|
4
5
|
|
|
5
|
-
type DataToolbarToggleButtonProps =
|
|
6
|
-
|
|
6
|
+
type DataToolbarToggleButtonProps = Omit<
|
|
7
|
+
ButtonProps,
|
|
8
|
+
"variant" | "size" | "data-color" | "children"
|
|
9
|
+
> &
|
|
10
|
+
Required<Pick<ButtonProps, "icon">> & {
|
|
7
11
|
/**
|
|
8
12
|
* Indicates whether the toggle button is pressed or not.
|
|
9
13
|
* @default false
|
|
10
14
|
*/
|
|
11
15
|
isPressed?: boolean;
|
|
12
16
|
/**
|
|
13
|
-
* Default uncontrolled pressed state
|
|
17
|
+
* Default uncontrolled pressed state.
|
|
14
18
|
* @default false
|
|
15
19
|
*/
|
|
16
20
|
defaultPressed?: boolean;
|
|
17
21
|
/**
|
|
18
|
-
* Callback for new pressed state
|
|
22
|
+
* Callback for new pressed state.
|
|
19
23
|
*/
|
|
20
24
|
onPressChange?: (isPressed: boolean) => void;
|
|
21
25
|
};
|
|
@@ -42,10 +46,13 @@ const DataToolbarToggleButton = React.forwardRef<
|
|
|
42
46
|
});
|
|
43
47
|
|
|
44
48
|
return (
|
|
45
|
-
<
|
|
49
|
+
<Button
|
|
46
50
|
className={cl("aksel-data-toolbar__toggle-button", className)}
|
|
47
51
|
ref={ref}
|
|
48
52
|
{...props}
|
|
53
|
+
variant="secondary"
|
|
54
|
+
size="small"
|
|
55
|
+
data-color="neutral"
|
|
49
56
|
aria-pressed={pressed}
|
|
50
57
|
onClick={composeEventHandlers(onClick, () =>
|
|
51
58
|
setPressed((oldState) => !oldState),
|
|
@@ -6,7 +6,11 @@ import { cl } from "../../utils/helpers";
|
|
|
6
6
|
import { useControllableState, useMergeRefs } from "../../utils/hooks";
|
|
7
7
|
import { useI18n } from "../../utils/i18n/i18n.hooks";
|
|
8
8
|
import { DateDialog } from "../Date.Dialog";
|
|
9
|
-
import {
|
|
9
|
+
import {
|
|
10
|
+
DateInputContextProvider,
|
|
11
|
+
DateInputProps,
|
|
12
|
+
DatePickerInput,
|
|
13
|
+
} from "../Date.Input";
|
|
10
14
|
import {
|
|
11
15
|
DateTranslationContextProvider,
|
|
12
16
|
getTranslations,
|
|
@@ -17,13 +21,15 @@ import {
|
|
|
17
21
|
DatePickerDefaultProps,
|
|
18
22
|
} from "./DatePicker.types";
|
|
19
23
|
import { ReactDayPicker } from "./parts/DatePicker.RDP";
|
|
20
|
-
import DatePickerStandalone
|
|
24
|
+
import DatePickerStandalone, {
|
|
25
|
+
DatePickerStandaloneProps,
|
|
26
|
+
} from "./parts/DatePicker.Standalone";
|
|
21
27
|
|
|
22
|
-
|
|
28
|
+
type DatePickerProps = DatePickerDefaultProps & ConditionalModeProps;
|
|
23
29
|
|
|
24
|
-
interface DatePickerComponent
|
|
25
|
-
extends React.ForwardRefExoticComponent<DatePickerProps> {
|
|
30
|
+
interface DatePickerComponent extends React.ForwardRefExoticComponent<DatePickerProps> {
|
|
26
31
|
/**
|
|
32
|
+
* @see 🏷️ {@link DatePickerStandaloneProps}
|
|
27
33
|
* @example
|
|
28
34
|
* ```jsx
|
|
29
35
|
* <DatePicker.Standalone
|
|
@@ -175,3 +181,5 @@ DatePicker.Standalone = DatePickerStandalone;
|
|
|
175
181
|
DatePicker.Input = DatePickerInput;
|
|
176
182
|
|
|
177
183
|
export default DatePicker;
|
|
184
|
+
export { DatePickerStandalone, DatePickerInput };
|
|
185
|
+
export type { DatePickerProps, DatePickerStandaloneProps, DateInputProps };
|
|
@@ -1,5 +1,14 @@
|
|
|
1
1
|
"use client";
|
|
2
|
-
export {
|
|
2
|
+
export {
|
|
3
|
+
default as DatePicker,
|
|
4
|
+
DatePickerStandalone,
|
|
5
|
+
DatePickerInput,
|
|
6
|
+
} from "./DatePicker";
|
|
7
|
+
export type {
|
|
8
|
+
DatePickerProps,
|
|
9
|
+
DatePickerStandaloneProps,
|
|
10
|
+
DateInputProps,
|
|
11
|
+
} from "./DatePicker";
|
|
3
12
|
export {
|
|
4
13
|
useDatepicker,
|
|
5
14
|
type DateValidationT,
|
|
@@ -10,8 +19,3 @@ export {
|
|
|
10
19
|
type RangeValidationT,
|
|
11
20
|
type UseRangeDatepickerOptions,
|
|
12
21
|
} from "./hooks/useRangeDatepicker";
|
|
13
|
-
export {
|
|
14
|
-
DatePickerStandalone,
|
|
15
|
-
type DatePickerStandaloneProps,
|
|
16
|
-
} from "./parts/DatePicker.Standalone";
|
|
17
|
-
export { DatePickerInput, type DateInputProps } from "../Date.Input";
|
|
@@ -4,7 +4,11 @@ import { cl } from "../../utils/helpers";
|
|
|
4
4
|
import { useControllableState, useMergeRefs } from "../../utils/hooks";
|
|
5
5
|
import { useDateLocale, useI18n } from "../../utils/i18n/i18n.hooks";
|
|
6
6
|
import { DateDialog } from "../Date.Dialog";
|
|
7
|
-
import {
|
|
7
|
+
import {
|
|
8
|
+
DateInputContextProvider,
|
|
9
|
+
DateInputProps,
|
|
10
|
+
MonthPickerInput,
|
|
11
|
+
} from "../Date.Input";
|
|
8
12
|
import {
|
|
9
13
|
DateTranslationContextProvider,
|
|
10
14
|
getLocaleFromString,
|
|
@@ -13,12 +17,15 @@ import {
|
|
|
13
17
|
import { MonthPickerProvider } from "./MonthPicker.context";
|
|
14
18
|
import { MonthPickerProps } from "./MonthPicker.types";
|
|
15
19
|
import { MonthPickerCaption } from "./parts/MonthPicker.Caption";
|
|
16
|
-
import {
|
|
20
|
+
import {
|
|
21
|
+
MonthPickerStandalone,
|
|
22
|
+
MonthPickerStandaloneProps,
|
|
23
|
+
} from "./parts/MonthPicker.Standalone";
|
|
17
24
|
import { MonthPickerTable } from "./parts/MonthPicker.Table";
|
|
18
25
|
|
|
19
|
-
interface MonthPickerComponent
|
|
20
|
-
extends React.ForwardRefExoticComponent<MonthPickerProps> {
|
|
26
|
+
interface MonthPickerComponent extends React.ForwardRefExoticComponent<MonthPickerProps> {
|
|
21
27
|
/**
|
|
28
|
+
* @see 🏷️ {@link MonthPickerStandaloneProps}
|
|
22
29
|
* @example
|
|
23
30
|
* ```jsx
|
|
24
31
|
* <MonthPicker.Standalone
|
|
@@ -174,3 +181,5 @@ MonthPicker.Standalone = MonthPickerStandalone;
|
|
|
174
181
|
MonthPicker.Input = MonthPickerInput;
|
|
175
182
|
|
|
176
183
|
export default MonthPicker;
|
|
184
|
+
export { MonthPickerStandalone, MonthPickerInput };
|
|
185
|
+
export type { MonthPickerProps, MonthPickerStandaloneProps, DateInputProps };
|
|
@@ -1,9 +1,11 @@
|
|
|
1
1
|
"use client";
|
|
2
2
|
export { useMonthpicker, type MonthValidationT } from "./hooks/useMonthPicker";
|
|
3
|
-
export { default as MonthPicker } from "./MonthPicker";
|
|
4
|
-
export type { MonthPickerProps } from "./MonthPicker.types";
|
|
5
3
|
export {
|
|
4
|
+
default as MonthPicker,
|
|
6
5
|
MonthPickerStandalone,
|
|
7
|
-
|
|
8
|
-
} from "./
|
|
9
|
-
export {
|
|
6
|
+
MonthPickerInput,
|
|
7
|
+
} from "./MonthPicker";
|
|
8
|
+
export type {
|
|
9
|
+
MonthPickerProps,
|
|
10
|
+
MonthPickerStandaloneProps,
|
|
11
|
+
} from "./MonthPicker";
|
package/src/dialog/index.ts
CHANGED
|
@@ -1,19 +1,23 @@
|
|
|
1
1
|
"use client";
|
|
2
|
-
export {
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
export type {
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
2
|
+
export {
|
|
3
|
+
default as Dialog,
|
|
4
|
+
DialogTrigger,
|
|
5
|
+
DialogPopup,
|
|
6
|
+
DialogCloseTrigger,
|
|
7
|
+
DialogHeader,
|
|
8
|
+
DialogFooter,
|
|
9
|
+
DialogTitle,
|
|
10
|
+
DialogDescription,
|
|
11
|
+
DialogBody,
|
|
12
|
+
} from "./root/DialogRoot";
|
|
13
|
+
export type {
|
|
14
|
+
DialogProps,
|
|
15
|
+
DialogTriggerProps,
|
|
16
|
+
DialogPopupProps,
|
|
17
|
+
DialogCloseTriggerProps,
|
|
18
|
+
DialogHeaderProps,
|
|
19
|
+
DialogFooterProps,
|
|
20
|
+
DialogTitleProps,
|
|
21
|
+
DialogDescriptionProps,
|
|
22
|
+
DialogBodyProps,
|
|
23
|
+
} from "./root/DialogRoot";
|
|
@@ -5,14 +5,20 @@ import {
|
|
|
5
5
|
useEventCallback,
|
|
6
6
|
useTransitionStatus,
|
|
7
7
|
} from "../../utils/hooks";
|
|
8
|
-
import { DialogBody } from "../body/DialogBody";
|
|
9
|
-
import {
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
import {
|
|
14
|
-
|
|
15
|
-
|
|
8
|
+
import { DialogBody, DialogBodyProps } from "../body/DialogBody";
|
|
9
|
+
import {
|
|
10
|
+
DialogCloseTrigger,
|
|
11
|
+
DialogCloseTriggerProps,
|
|
12
|
+
} from "../close-trigger/DialogCloseTrigger";
|
|
13
|
+
import {
|
|
14
|
+
DialogDescription,
|
|
15
|
+
DialogDescriptionProps,
|
|
16
|
+
} from "../description/DialogDescription";
|
|
17
|
+
import { DialogFooter, DialogFooterProps } from "../footer/DialogFooter";
|
|
18
|
+
import { DialogHeader, DialogHeaderProps } from "../header/DialogHeader";
|
|
19
|
+
import { DialogPopup, DialogPopupProps } from "../popup/DialogPopup";
|
|
20
|
+
import { DialogTitle, DialogTitleProps } from "../title/DialogTitle";
|
|
21
|
+
import { DialogTrigger, DialogTriggerProps } from "../trigger/DialogTrigger";
|
|
16
22
|
import { DialogContextProvider, useDialogContext } from "./DialogRoot.context";
|
|
17
23
|
|
|
18
24
|
interface DialogProps {
|
|
@@ -56,6 +62,7 @@ interface DialogComponent extends React.FC<DialogProps> {
|
|
|
56
62
|
* ```
|
|
57
63
|
*/
|
|
58
64
|
Trigger: typeof DialogTrigger;
|
|
65
|
+
|
|
59
66
|
/**
|
|
60
67
|
* @see 🏷️ {@link DialogCloseTriggerProps}
|
|
61
68
|
* @example
|
|
@@ -70,6 +77,7 @@ interface DialogComponent extends React.FC<DialogProps> {
|
|
|
70
77
|
* ```
|
|
71
78
|
*/
|
|
72
79
|
CloseTrigger: typeof DialogCloseTrigger;
|
|
80
|
+
|
|
73
81
|
/**
|
|
74
82
|
* @see 🏷️ {@link DialogPopupProps}
|
|
75
83
|
* @example
|
|
@@ -295,4 +303,24 @@ Dialog.Footer = DialogFooter;
|
|
|
295
303
|
Dialog.Popup = DialogPopup;
|
|
296
304
|
|
|
297
305
|
export default Dialog;
|
|
298
|
-
export
|
|
306
|
+
export {
|
|
307
|
+
DialogTrigger,
|
|
308
|
+
DialogCloseTrigger,
|
|
309
|
+
DialogHeader,
|
|
310
|
+
DialogTitle,
|
|
311
|
+
DialogDescription,
|
|
312
|
+
DialogBody,
|
|
313
|
+
DialogFooter,
|
|
314
|
+
DialogPopup,
|
|
315
|
+
};
|
|
316
|
+
export type {
|
|
317
|
+
DialogProps,
|
|
318
|
+
DialogTriggerProps,
|
|
319
|
+
DialogCloseTriggerProps,
|
|
320
|
+
DialogHeaderProps,
|
|
321
|
+
DialogTitleProps,
|
|
322
|
+
DialogDescriptionProps,
|
|
323
|
+
DialogBodyProps,
|
|
324
|
+
DialogFooterProps,
|
|
325
|
+
DialogPopupProps,
|
|
326
|
+
};
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import React, { forwardRef
|
|
1
|
+
import React, { forwardRef } from "react";
|
|
2
2
|
import type { AkselColor } from "../types";
|
|
3
3
|
import type { OverridableComponent } from "../utils-external";
|
|
4
4
|
import { cl } from "../utils/helpers";
|
|
@@ -19,10 +19,9 @@ import {
|
|
|
19
19
|
} from "./ExpansionCardTitle";
|
|
20
20
|
import { ExpansionCardContext } from "./context";
|
|
21
21
|
|
|
22
|
-
interface ExpansionCardComponent
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
> {
|
|
22
|
+
interface ExpansionCardComponent extends React.ForwardRefExoticComponent<
|
|
23
|
+
ExpansionCardProps & React.RefAttributes<HTMLDivElement>
|
|
24
|
+
> {
|
|
26
25
|
/**
|
|
27
26
|
* @see 🏷️ {@link ExpansionCardHeaderProps}
|
|
28
27
|
*/
|
|
@@ -48,20 +47,23 @@ interface ExpansionCardComponent
|
|
|
48
47
|
>;
|
|
49
48
|
}
|
|
50
49
|
|
|
51
|
-
interface ExpansionCardCommonProps
|
|
52
|
-
|
|
50
|
+
interface ExpansionCardCommonProps extends Omit<
|
|
51
|
+
React.HTMLAttributes<HTMLDivElement>,
|
|
52
|
+
"onToggle"
|
|
53
|
+
> {
|
|
53
54
|
children: React.ReactNode;
|
|
54
55
|
/**
|
|
55
|
-
* Callback for when Card is
|
|
56
|
+
* Callback for when Card is opened/closed.
|
|
56
57
|
*/
|
|
57
58
|
onToggle?: (open: boolean) => void;
|
|
58
59
|
/**
|
|
59
|
-
* Controlled open-state
|
|
60
|
-
*
|
|
60
|
+
* Controlled open-state.
|
|
61
|
+
*
|
|
62
|
+
* Using this removes automatic control of open-state.
|
|
61
63
|
*/
|
|
62
64
|
open?: boolean;
|
|
63
65
|
/**
|
|
64
|
-
*
|
|
66
|
+
* The open state when initially rendered. Use when you do not need to control the open state.
|
|
65
67
|
* @default false
|
|
66
68
|
*/
|
|
67
69
|
defaultOpen?: boolean;
|
|
@@ -102,7 +104,7 @@ export type ExpansionCardProps = ExpansionCardCommonProps &
|
|
|
102
104
|
*
|
|
103
105
|
* @example
|
|
104
106
|
* ```jsx
|
|
105
|
-
* <ExpansionCard aria-label="
|
|
107
|
+
* <ExpansionCard aria-label="Utbetaling av sykepenger">
|
|
106
108
|
* <ExpansionCard.Header>
|
|
107
109
|
* <ExpansionCard.Title>Utbetaling av sykepenger</ExpansionCard.Title>
|
|
108
110
|
* </ExpansionCard.Header>
|
|
@@ -125,14 +127,9 @@ export const ExpansionCard = forwardRef<HTMLDivElement, ExpansionCardProps>(
|
|
|
125
127
|
},
|
|
126
128
|
ref,
|
|
127
129
|
) => {
|
|
128
|
-
const shouldFade = useRef<boolean>(!(Boolean(open) || defaultOpen));
|
|
129
|
-
|
|
130
130
|
const [_open, _setOpen] = useControllableState({
|
|
131
131
|
value: open,
|
|
132
|
-
onChange:
|
|
133
|
-
onToggle?.(newValue);
|
|
134
|
-
shouldFade.current = true;
|
|
135
|
-
},
|
|
132
|
+
onChange: onToggle,
|
|
136
133
|
defaultValue: defaultOpen,
|
|
137
134
|
});
|
|
138
135
|
|
|
@@ -151,9 +148,6 @@ export const ExpansionCard = forwardRef<HTMLDivElement, ExpansionCardProps>(
|
|
|
151
148
|
"aksel-expansioncard",
|
|
152
149
|
className,
|
|
153
150
|
`aksel-expansioncard--${size}`,
|
|
154
|
-
{
|
|
155
|
-
"aksel-expansioncard--no-animation": !shouldFade.current,
|
|
156
|
-
},
|
|
157
151
|
)}
|
|
158
152
|
ref={ref}
|
|
159
153
|
/>
|
|
@@ -14,10 +14,9 @@ interface FileUploadProps extends HTMLAttributes<HTMLDivElement> {
|
|
|
14
14
|
translations?: ComponentTranslation<"FileUpload">;
|
|
15
15
|
}
|
|
16
16
|
|
|
17
|
-
interface FileUploadComponent
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
> {
|
|
17
|
+
interface FileUploadComponent extends React.ForwardRefExoticComponent<
|
|
18
|
+
FileUploadProps & React.RefAttributes<HTMLDivElement>
|
|
19
|
+
> {
|
|
21
20
|
/**
|
|
22
21
|
* Framed area to drag-n-drop files, upload files with button-click or copy-paste.
|
|
23
22
|
* @example
|
|
@@ -64,7 +63,7 @@ interface FileUploadComponent
|
|
|
64
63
|
* Multiple items can be semantically grouped as a list.
|
|
65
64
|
* ```jsx
|
|
66
65
|
* <FileUpload>
|
|
67
|
-
* <VStack gap="
|
|
66
|
+
* <VStack gap="space-16" as="ul">
|
|
68
67
|
* <FileUpload.Item as="li" file={file} />
|
|
69
68
|
* <FileUpload.Item as="li" file={file2} />
|
|
70
69
|
* <FileUpload.Item as="li" file={file3} status="uploading" />
|
|
@@ -117,7 +116,7 @@ interface FileUploadComponent
|
|
|
117
116
|
* @example
|
|
118
117
|
* Items
|
|
119
118
|
* ```jsx
|
|
120
|
-
* <VStack gap="
|
|
119
|
+
* <VStack gap="space-16" as="ul">
|
|
121
120
|
* <FileUpload.Item as="li" file={myFile} />
|
|
122
121
|
* <FileUpload.Item as="li" file={mySecondFile} />
|
|
123
122
|
* </VStack>
|
|
@@ -18,6 +18,11 @@ import { FormFieldProps, useFormField } from "../useFormField";
|
|
|
18
18
|
import SearchButton, { SearchButtonType } from "./SearchButton";
|
|
19
19
|
import { SearchContext } from "./context";
|
|
20
20
|
|
|
21
|
+
export type SearchNativeProps = Omit<
|
|
22
|
+
InputHTMLAttributes<HTMLInputElement>,
|
|
23
|
+
"size" | "onChange" | "type"
|
|
24
|
+
>;
|
|
25
|
+
|
|
21
26
|
export type SearchClearEvent =
|
|
22
27
|
| {
|
|
23
28
|
trigger: "Click";
|
|
@@ -26,8 +31,7 @@ export type SearchClearEvent =
|
|
|
26
31
|
| { trigger: "Escape"; event: React.KeyboardEvent<HTMLDivElement> };
|
|
27
32
|
|
|
28
33
|
export interface SearchProps
|
|
29
|
-
extends Omit<FormFieldProps, "readOnly">,
|
|
30
|
-
Omit<InputHTMLAttributes<HTMLInputElement>, "size" | "onChange" | "type"> {
|
|
34
|
+
extends Omit<FormFieldProps, "readOnly">, SearchNativeProps {
|
|
31
35
|
children?: React.ReactNode;
|
|
32
36
|
/**
|
|
33
37
|
* Search label.
|
|
@@ -82,10 +86,9 @@ export interface SearchProps
|
|
|
82
86
|
"data-color"?: Exclude<AkselColor, AkselStatusColorRole>;
|
|
83
87
|
}
|
|
84
88
|
|
|
85
|
-
interface SearchComponent
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
> {
|
|
89
|
+
interface SearchComponent extends React.ForwardRefExoticComponent<
|
|
90
|
+
SearchProps & React.RefAttributes<HTMLDivElement>
|
|
91
|
+
> {
|
|
89
92
|
Button: SearchButtonType;
|
|
90
93
|
}
|
|
91
94
|
|