@phillips/seldon 1.96.0 → 1.97.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.
- package/dist/components/DatePicker/DatePicker.d.ts +1 -1
- package/dist/components/Filter/Filter.d.ts +25 -0
- package/dist/components/Filter/Filter.js +62 -0
- package/dist/components/Filter/Filter.stories.d.ts +29 -0
- package/dist/components/Filter/Filter.test.d.ts +1 -0
- package/dist/components/Filter/FilterHeader.d.ts +14 -0
- package/dist/components/Filter/FilterHeader.js +36 -0
- package/dist/components/Filter/FilterInput.d.ts +15 -0
- package/dist/components/Filter/FilterInput.js +27 -0
- package/dist/components/Filter/index.d.ts +3 -0
- package/dist/components/Input/Input.d.ts +5 -5
- package/dist/components/Input/Input.js +67 -53
- package/dist/components/Input/Input.stories.d.ts +0 -1
- package/dist/components/Pagination/Pagination.js +27 -26
- package/dist/components/Select/Select.d.ts +3 -2
- package/dist/components/Select/Select.js +53 -44
- package/dist/index.d.ts +3 -0
- package/dist/index.js +148 -140
- package/dist/patterns/FilterMenu/FilterMenu.d.ts +22 -0
- package/dist/patterns/FilterMenu/FilterMenu.js +23 -0
- package/dist/patterns/FilterMenu/FilterMenu.stories.d.ts +29 -0
- package/dist/patterns/FilterMenu/FilterMenu.test.d.ts +1 -0
- package/dist/patterns/FilterMenu/index.d.ts +1 -0
- package/dist/patterns/FilterMenu/utils.d.ts +10 -0
- package/dist/patterns/ViewingsList/ViewingsListCard.js +1 -1
- package/dist/patterns/ViewingsList/ViewingsListCardForm.js +30 -32
- package/dist/scss/componentStyles.scss +9 -7
- package/dist/scss/components/Filter/_filter.scss +112 -0
- package/dist/scss/components/Input/_input.scss +1 -1
- package/dist/scss/patterns/FilterMenu/_filterMenu.scss +15 -0
- package/dist/scss/patterns/ObjectTile/_objectTile.scss +12 -0
- package/package.json +2 -1
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { default as flatpickr } from 'flatpickr';
|
|
2
2
|
import { InputProps } from '../Input/Input';
|
|
3
3
|
import * as React from 'react';
|
|
4
|
-
export interface DatePickerProps extends Omit<InputProps, 'defaultValue'>, Record<string, unknown> {
|
|
4
|
+
export interface DatePickerProps extends Omit<InputProps, 'defaultValue' | 'onChange'>, Record<string, unknown> {
|
|
5
5
|
/**
|
|
6
6
|
* Optionally allow manual entry to the date input
|
|
7
7
|
*/
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
import { ComponentProps, Dispatch, SetStateAction } from 'react';
|
|
2
|
+
export interface FilterProps extends ComponentProps<'div'> {
|
|
3
|
+
/** Logical name of this filter */
|
|
4
|
+
name: string;
|
|
5
|
+
setViewAllFilter?: Dispatch<SetStateAction<string>>;
|
|
6
|
+
viewAllLimit?: number;
|
|
7
|
+
isViewingAll?: boolean;
|
|
8
|
+
isHidden?: boolean;
|
|
9
|
+
/**
|
|
10
|
+
* translatable string for view all button
|
|
11
|
+
*/
|
|
12
|
+
viewAllLabel?: string;
|
|
13
|
+
}
|
|
14
|
+
/**
|
|
15
|
+
* ## Overview
|
|
16
|
+
*
|
|
17
|
+
* Component to display filtering dimensions
|
|
18
|
+
*
|
|
19
|
+
* [Figma Link](https://www.figma.com/design/OvBXAq48blO1r4qYbeBPjW/RW---Sale-Page-(PLP)?node-id=892-71019&node-type=frame&t=AsBDn4UgUEjNUnf7-0)
|
|
20
|
+
*
|
|
21
|
+
* [Storybook Link](https://phillips-seldon.netlify.app/?path=/docs/components-filter--overview)
|
|
22
|
+
*/
|
|
23
|
+
declare const Filter: import('react').ForwardRefExoticComponent<Omit<FilterProps, "ref"> & import('react').RefAttributes<HTMLDivElement>>;
|
|
24
|
+
export type FilterComponent = ReturnType<typeof Filter>;
|
|
25
|
+
export default Filter;
|
|
@@ -0,0 +1,62 @@
|
|
|
1
|
+
import { jsxs as n, jsx as f } from "react/jsx-runtime";
|
|
2
|
+
import { forwardRef as B, useState as S, Children as T, isValidElement as p, cloneElement as h } from "react";
|
|
3
|
+
import { getCommonProps as b, findChildrenOfType as k, findChildrenExcludingTypes as F, px as I } from "../../utils/index.js";
|
|
4
|
+
import O from "../../node_modules/classnames/index.js";
|
|
5
|
+
import C from "./FilterHeader.js";
|
|
6
|
+
import R from "../Button/Button.js";
|
|
7
|
+
import { ButtonVariants as q } from "../Button/types.js";
|
|
8
|
+
import z from "../../assets/chevronNext.svg.js";
|
|
9
|
+
const D = B(
|
|
10
|
+
({
|
|
11
|
+
className: N,
|
|
12
|
+
children: u,
|
|
13
|
+
name: t,
|
|
14
|
+
viewAllLimit: m = 10,
|
|
15
|
+
isViewingAll: s = !1,
|
|
16
|
+
isHidden: _ = !1,
|
|
17
|
+
setViewAllFilter: e,
|
|
18
|
+
viewAllLabel: v = "View All",
|
|
19
|
+
...d
|
|
20
|
+
}, x) => {
|
|
21
|
+
var l, c;
|
|
22
|
+
const [y, g] = S(!1), { className: r, ...$ } = b(d, "Filter"), o = T.toArray(u), E = { isViewingAll: s, setViewAllFilter: e, setIsClosing: g }, i = (l = k(o, C)) == null ? void 0 : l[0], H = p(i) ? h(i, E) : null, P = (c = F(o, [C])) == null ? void 0 : c.map(
|
|
23
|
+
(a, j) => p(a) ? h(a, { hidden: !s && j + 1 > m }) : a
|
|
24
|
+
);
|
|
25
|
+
return /* @__PURE__ */ n(
|
|
26
|
+
"div",
|
|
27
|
+
{
|
|
28
|
+
...$,
|
|
29
|
+
className: O(r, N, {
|
|
30
|
+
[`${I}-filter--hidden`]: _,
|
|
31
|
+
"is-closing": y
|
|
32
|
+
}),
|
|
33
|
+
...d,
|
|
34
|
+
ref: x,
|
|
35
|
+
children: [
|
|
36
|
+
/* @__PURE__ */ n("fieldset", { name: t, className: `${r}__fieldset`, children: [
|
|
37
|
+
H,
|
|
38
|
+
/* @__PURE__ */ f("div", { className: `${r}__filters`, children: P })
|
|
39
|
+
] }),
|
|
40
|
+
o.length > m && !s ? /* @__PURE__ */ n(
|
|
41
|
+
R,
|
|
42
|
+
{
|
|
43
|
+
className: `${r}__view-all`,
|
|
44
|
+
variant: q.tertiary,
|
|
45
|
+
onClick: () => {
|
|
46
|
+
e == null || e(t);
|
|
47
|
+
},
|
|
48
|
+
children: [
|
|
49
|
+
v,
|
|
50
|
+
/* @__PURE__ */ f(z, { className: `${r}__chevron` })
|
|
51
|
+
]
|
|
52
|
+
}
|
|
53
|
+
) : null
|
|
54
|
+
]
|
|
55
|
+
}
|
|
56
|
+
);
|
|
57
|
+
}
|
|
58
|
+
);
|
|
59
|
+
D.displayName = "Filter";
|
|
60
|
+
export {
|
|
61
|
+
D as default
|
|
62
|
+
};
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
declare const meta: {
|
|
2
|
+
title: string;
|
|
3
|
+
component: import('react').ForwardRefExoticComponent<Omit<import('./Filter').FilterProps, "ref"> & import('react').RefAttributes<HTMLDivElement>>;
|
|
4
|
+
};
|
|
5
|
+
export default meta;
|
|
6
|
+
type FilterDimension = {
|
|
7
|
+
label: string;
|
|
8
|
+
disabled?: boolean | undefined;
|
|
9
|
+
checked: boolean;
|
|
10
|
+
};
|
|
11
|
+
type FilterType = {
|
|
12
|
+
label: string;
|
|
13
|
+
id: string;
|
|
14
|
+
filterDimensions: FilterDimension[];
|
|
15
|
+
};
|
|
16
|
+
type PropTypes = {
|
|
17
|
+
filter: FilterType;
|
|
18
|
+
viewAllLimit: number;
|
|
19
|
+
isViewingAll: boolean;
|
|
20
|
+
};
|
|
21
|
+
export declare const Playground: {
|
|
22
|
+
(props: PropTypes): import("react/jsx-runtime").JSX.Element;
|
|
23
|
+
args: {
|
|
24
|
+
filter: FilterType;
|
|
25
|
+
viewAllLimit: number;
|
|
26
|
+
isViewingAll: boolean;
|
|
27
|
+
};
|
|
28
|
+
argTypes: {};
|
|
29
|
+
};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
import { ComponentProps, Dispatch, SetStateAction } from 'react';
|
|
2
|
+
export interface FilterHeaderProps extends ComponentProps<'div'> {
|
|
3
|
+
heading: string;
|
|
4
|
+
isViewingAll?: boolean;
|
|
5
|
+
setViewAllFilter?: Dispatch<SetStateAction<null>>;
|
|
6
|
+
setIsClosing?: Dispatch<SetStateAction<boolean>>;
|
|
7
|
+
}
|
|
8
|
+
/**
|
|
9
|
+
* ## Overview
|
|
10
|
+
*
|
|
11
|
+
* The header of a filter
|
|
12
|
+
*/
|
|
13
|
+
declare const FilterHeader: import('react').ForwardRefExoticComponent<Omit<FilterHeaderProps, "ref"> & import('react').RefAttributes<HTMLDivElement>>;
|
|
14
|
+
export default FilterHeader;
|
|
@@ -0,0 +1,36 @@
|
|
|
1
|
+
import { jsxs as t, jsx as o } from "react/jsx-runtime";
|
|
2
|
+
import { forwardRef as u } from "react";
|
|
3
|
+
import { getCommonProps as N } from "../../utils/index.js";
|
|
4
|
+
import l from "../../node_modules/classnames/index.js";
|
|
5
|
+
import { TextVariants as v } from "../Text/types.js";
|
|
6
|
+
import x from "../Text/Text.js";
|
|
7
|
+
import _ from "../Button/Button.js";
|
|
8
|
+
import { ButtonVariants as k } from "../Button/types.js";
|
|
9
|
+
import B from "../../assets/chevronNext.svg.js";
|
|
10
|
+
const H = u(
|
|
11
|
+
({ className: c, heading: n, isViewingAll: d = !1, setViewAllFilter: m, setIsClosing: a, ...e }, f) => {
|
|
12
|
+
const { className: r, ...p } = N(e, "FilterHeader"), i = () => {
|
|
13
|
+
a == null || a(!0), setTimeout(() => {
|
|
14
|
+
m == null || m(null), a == null || a(!1);
|
|
15
|
+
}, 300);
|
|
16
|
+
};
|
|
17
|
+
return /* @__PURE__ */ t("div", { ...p, className: l(r, c), ...e, ref: f, children: [
|
|
18
|
+
/* @__PURE__ */ o(
|
|
19
|
+
x,
|
|
20
|
+
{
|
|
21
|
+
variant: v.heading4,
|
|
22
|
+
className: `${r}__heading`,
|
|
23
|
+
element: (h) => /* @__PURE__ */ o("legend", { ...h, children: n })
|
|
24
|
+
}
|
|
25
|
+
),
|
|
26
|
+
d ? /* @__PURE__ */ t(_, { variant: k.tertiary, onClick: i, className: `${r}__back`, children: [
|
|
27
|
+
/* @__PURE__ */ o(B, { className: `${r}__chevron` }),
|
|
28
|
+
"Back to all"
|
|
29
|
+
] }) : null
|
|
30
|
+
] });
|
|
31
|
+
}
|
|
32
|
+
);
|
|
33
|
+
H.displayName = "FilterHeader";
|
|
34
|
+
export {
|
|
35
|
+
H as default
|
|
36
|
+
};
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
import { InputProps } from '../Input/Input';
|
|
2
|
+
export interface FilterInputProps extends InputProps {
|
|
3
|
+
/**
|
|
4
|
+
* Type of input for this filter only radios or checkboxes allowed
|
|
5
|
+
*/
|
|
6
|
+
type: 'checkbox' | 'radio';
|
|
7
|
+
}
|
|
8
|
+
/**
|
|
9
|
+
* ## Overview
|
|
10
|
+
*
|
|
11
|
+
* A label & input for filtering criteria
|
|
12
|
+
*
|
|
13
|
+
*/
|
|
14
|
+
declare const FilterInput: import('react').ForwardRefExoticComponent<Omit<FilterInputProps, "ref"> & import('react').RefAttributes<HTMLInputElement>>;
|
|
15
|
+
export default FilterInput;
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
import { jsx as l } from "react/jsx-runtime";
|
|
2
|
+
import { forwardRef as i } from "react";
|
|
3
|
+
import { getCommonProps as p } from "../../utils/index.js";
|
|
4
|
+
import c from "../Input/Input.js";
|
|
5
|
+
const f = i(
|
|
6
|
+
({ className: n, type: a = "checkbox", name: r, hidden: e, onChange: m, ...t }, o) => {
|
|
7
|
+
const { className: s } = p(t, "FilterInput");
|
|
8
|
+
return /* @__PURE__ */ l(
|
|
9
|
+
c,
|
|
10
|
+
{
|
|
11
|
+
...t,
|
|
12
|
+
onChange: m,
|
|
13
|
+
ref: o,
|
|
14
|
+
type: a,
|
|
15
|
+
className: `${s}__input`,
|
|
16
|
+
hidden: e,
|
|
17
|
+
hideLabel: e,
|
|
18
|
+
name: r,
|
|
19
|
+
size: "lg"
|
|
20
|
+
}
|
|
21
|
+
);
|
|
22
|
+
}
|
|
23
|
+
);
|
|
24
|
+
f.displayName = "FilterValue";
|
|
25
|
+
export {
|
|
26
|
+
f as default
|
|
27
|
+
};
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import * as React from 'react';
|
|
2
|
-
export interface InputProps extends
|
|
2
|
+
export interface InputProps extends Omit<React.ComponentProps<'input'>, 'size'> {
|
|
3
3
|
/**
|
|
4
4
|
* Optional className to be applied to the `<input>` node
|
|
5
5
|
*/
|
|
@@ -7,7 +7,7 @@ export interface InputProps extends Record<string, unknown> {
|
|
|
7
7
|
/**
|
|
8
8
|
* Optionally provide the default value of the `<input>`. Should not be passed into controlled input!
|
|
9
9
|
*/
|
|
10
|
-
defaultValue?: string | number;
|
|
10
|
+
defaultValue?: string | number | readonly string[];
|
|
11
11
|
/**
|
|
12
12
|
* Booolean to specify whether the `<input>` should be disabled
|
|
13
13
|
*/
|
|
@@ -19,7 +19,7 @@ export interface InputProps extends Record<string, unknown> {
|
|
|
19
19
|
/**
|
|
20
20
|
* A custom `id` for the `<input>`
|
|
21
21
|
*/
|
|
22
|
-
id
|
|
22
|
+
id?: string;
|
|
23
23
|
/**
|
|
24
24
|
* Boolean to dictate whether input is inline with the label or not. `true` to use the inline version.
|
|
25
25
|
*/
|
|
@@ -39,7 +39,7 @@ export interface InputProps extends Record<string, unknown> {
|
|
|
39
39
|
/**
|
|
40
40
|
* Optional `onChange` handler that is called whenever `<input>` is updated
|
|
41
41
|
*/
|
|
42
|
-
onChange?: (event: React.ChangeEvent<HTMLInputElement>
|
|
42
|
+
onChange?: (event: React.ChangeEvent<HTMLInputElement>) => void;
|
|
43
43
|
/**
|
|
44
44
|
* Optional `onClick` handler that is called whenever the `<input>` is clicked
|
|
45
45
|
*/
|
|
@@ -63,7 +63,7 @@ export interface InputProps extends Record<string, unknown> {
|
|
|
63
63
|
/**
|
|
64
64
|
* Specify the value of the `<input>` for controlled inputs
|
|
65
65
|
*/
|
|
66
|
-
value?: string | number | undefined;
|
|
66
|
+
value?: string | number | undefined | readonly string[];
|
|
67
67
|
/**
|
|
68
68
|
* Boolean to specify whether the control is currently in warning state
|
|
69
69
|
*/
|
|
@@ -1,64 +1,78 @@
|
|
|
1
|
-
import { jsxs as
|
|
2
|
-
import * as
|
|
3
|
-
import
|
|
4
|
-
import { px as i, useNormalizedInputProps as
|
|
5
|
-
const
|
|
1
|
+
import { jsxs as R, jsx as s } from "react/jsx-runtime";
|
|
2
|
+
import * as o from "react";
|
|
3
|
+
import a from "../../node_modules/classnames/index.js";
|
|
4
|
+
import { px as i, useNormalizedInputProps as g } from "../../utils/index.js";
|
|
5
|
+
const k = o.forwardRef(
|
|
6
6
|
({
|
|
7
|
-
className:
|
|
8
|
-
defaultValue:
|
|
9
|
-
disabled:
|
|
10
|
-
hideLabel:
|
|
11
|
-
id:
|
|
12
|
-
inline:
|
|
13
|
-
invalid:
|
|
14
|
-
invalidText:
|
|
15
|
-
labelText:
|
|
16
|
-
onChange:
|
|
17
|
-
onClick:
|
|
18
|
-
placeholder:
|
|
19
|
-
readOnly:
|
|
20
|
-
size:
|
|
21
|
-
type:
|
|
22
|
-
value:
|
|
23
|
-
warn:
|
|
24
|
-
warnText:
|
|
25
|
-
...
|
|
26
|
-
},
|
|
27
|
-
const
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
7
|
+
className: e,
|
|
8
|
+
defaultValue: u,
|
|
9
|
+
disabled: m,
|
|
10
|
+
hideLabel: $,
|
|
11
|
+
id: n,
|
|
12
|
+
inline: c,
|
|
13
|
+
invalid: _,
|
|
14
|
+
invalidText: b,
|
|
15
|
+
labelText: h,
|
|
16
|
+
onChange: f,
|
|
17
|
+
onClick: v,
|
|
18
|
+
placeholder: x,
|
|
19
|
+
readOnly: p,
|
|
20
|
+
size: w = "md",
|
|
21
|
+
type: l = "text",
|
|
22
|
+
value: I,
|
|
23
|
+
warn: N,
|
|
24
|
+
warnText: y,
|
|
25
|
+
...r
|
|
26
|
+
}, j) => {
|
|
27
|
+
const d = o.useId(), t = g({
|
|
28
|
+
disabled: m,
|
|
29
|
+
id: n || d,
|
|
30
|
+
invalid: _,
|
|
31
|
+
invalidText: b,
|
|
32
|
+
readOnly: p,
|
|
33
|
+
type: l,
|
|
34
|
+
warn: N,
|
|
35
|
+
warnText: y
|
|
36
|
+
}), P = a(`${i}-${l}-input`, `${i}-input`, `${i}-input--${w}`, {
|
|
37
|
+
[`${i}-input--inline`]: c,
|
|
38
|
+
[`${i}-input--readonly`]: p,
|
|
39
|
+
[`${i}-input--disabled`]: t.disabled,
|
|
40
|
+
[`${i}-input--invalid`]: t.invalid,
|
|
41
|
+
[`${i}-input--warn`]: t.warn,
|
|
42
|
+
[`${e}__wrapper`]: e,
|
|
43
|
+
[`${i}-input--hidden`]: r.hidden
|
|
35
44
|
});
|
|
36
|
-
return /* @__PURE__ */
|
|
37
|
-
/* @__PURE__ */
|
|
38
|
-
|
|
45
|
+
return /* @__PURE__ */ R("div", { className: P, children: [
|
|
46
|
+
/* @__PURE__ */ s(
|
|
47
|
+
"label",
|
|
48
|
+
{
|
|
49
|
+
htmlFor: n || d,
|
|
50
|
+
className: a(`${i}-input__label`, { [`${i}-input__label--hidden`]: $ }),
|
|
51
|
+
children: h
|
|
52
|
+
}
|
|
53
|
+
),
|
|
54
|
+
/* @__PURE__ */ s(
|
|
39
55
|
"input",
|
|
40
56
|
{
|
|
41
|
-
className:
|
|
42
|
-
"data-testid":
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
value: w,
|
|
54
|
-
...d
|
|
57
|
+
className: a(`${i}-input__input`, { className: e }),
|
|
58
|
+
"data-testid": n,
|
|
59
|
+
disabled: t.disabled,
|
|
60
|
+
id: n || d,
|
|
61
|
+
onChange: f,
|
|
62
|
+
onClick: v,
|
|
63
|
+
placeholder: x,
|
|
64
|
+
readOnly: p,
|
|
65
|
+
ref: j,
|
|
66
|
+
type: t.type,
|
|
67
|
+
...t.type !== "checkbox" && t.type !== "radio" ? { value: I, defaultValue: u } : {},
|
|
68
|
+
...r
|
|
55
69
|
}
|
|
56
70
|
),
|
|
57
|
-
|
|
71
|
+
t.validation ? t.validation : /* @__PURE__ */ s("p", { className: a(`${i}-input__validation`), children: " " })
|
|
58
72
|
] });
|
|
59
73
|
}
|
|
60
74
|
);
|
|
61
|
-
|
|
75
|
+
k.displayName = "Input";
|
|
62
76
|
export {
|
|
63
|
-
|
|
77
|
+
k as default
|
|
64
78
|
};
|
|
@@ -1,55 +1,55 @@
|
|
|
1
1
|
import { jsxs as O, jsx as i } from "react/jsx-runtime";
|
|
2
|
-
import
|
|
2
|
+
import f from "../../node_modules/classnames/index.js";
|
|
3
3
|
import { getCommonProps as w, px as r } from "../../utils/index.js";
|
|
4
4
|
import V from "../Select/Select.js";
|
|
5
|
-
import
|
|
6
|
-
import
|
|
7
|
-
import { ButtonVariants as
|
|
5
|
+
import h from "../../assets/chevronRight.svg.js";
|
|
6
|
+
import x from "../IconButton/IconButton.js";
|
|
7
|
+
import { ButtonVariants as b } from "../Button/types.js";
|
|
8
8
|
import { determineOptionValue as o, findOptionFromSelectString as j } from "./utils.js";
|
|
9
9
|
import { usePendingState as k } from "../../utils/hooks.js";
|
|
10
|
-
const
|
|
11
|
-
className:
|
|
12
|
-
onChange:
|
|
13
|
-
variant:
|
|
10
|
+
const G = ({
|
|
11
|
+
className: P,
|
|
12
|
+
onChange: $,
|
|
13
|
+
variant: S = "inline",
|
|
14
14
|
options: n = [],
|
|
15
15
|
value: g,
|
|
16
16
|
isDisabled: l,
|
|
17
|
-
previousLabel:
|
|
18
|
-
nextLabel:
|
|
19
|
-
selectLabel:
|
|
17
|
+
previousLabel: v = "Previous",
|
|
18
|
+
nextLabel: C = "Next",
|
|
19
|
+
selectLabel: u = "Select",
|
|
20
20
|
...s
|
|
21
21
|
}) => {
|
|
22
|
-
const N = "pagination", { className:
|
|
22
|
+
const N = "pagination", { className: p, ...I } = w(s, "Pagination"), { id: c } = s, { pendingState: _, setPendingState: y } = k(o(g)), m = _ || g, d = (t, e) => {
|
|
23
23
|
const a = o(t);
|
|
24
|
-
y(a),
|
|
24
|
+
y(a), $(a, e);
|
|
25
25
|
};
|
|
26
26
|
return /* @__PURE__ */ O(
|
|
27
27
|
"div",
|
|
28
28
|
{
|
|
29
|
-
className:
|
|
29
|
+
className: f(`${r}-${N}`, { [`${p}__wrapper`]: p }, P),
|
|
30
30
|
...I,
|
|
31
31
|
...s,
|
|
32
32
|
children: [
|
|
33
33
|
/* @__PURE__ */ i(
|
|
34
|
-
|
|
34
|
+
x,
|
|
35
35
|
{
|
|
36
|
-
className:
|
|
36
|
+
className: f(`${r}__pagination-button`, `${r}-left-arrow`),
|
|
37
37
|
onClick: () => {
|
|
38
38
|
const t = n.findIndex((a) => o(a) === m) - 1, e = n.at(t) || "";
|
|
39
39
|
d(e);
|
|
40
40
|
},
|
|
41
41
|
"data-testid": `${c}-previous-button`,
|
|
42
42
|
isDisabled: l,
|
|
43
|
-
"aria-label":
|
|
44
|
-
variant:
|
|
45
|
-
children: /* @__PURE__ */ i(
|
|
43
|
+
"aria-label": v,
|
|
44
|
+
variant: b.tertiary,
|
|
45
|
+
children: /* @__PURE__ */ i(h, {})
|
|
46
46
|
}
|
|
47
47
|
),
|
|
48
48
|
/* @__PURE__ */ i(
|
|
49
49
|
V,
|
|
50
50
|
{
|
|
51
|
-
className:
|
|
52
|
-
"aria-label":
|
|
51
|
+
className: S === "inline" ? `${r}--inline-pagination` : void 0,
|
|
52
|
+
"aria-label": u,
|
|
53
53
|
value: m,
|
|
54
54
|
onChange: (t) => {
|
|
55
55
|
const e = j(n, t == null ? void 0 : t.currentTarget.value);
|
|
@@ -57,6 +57,7 @@ const E = ({
|
|
|
57
57
|
},
|
|
58
58
|
"data-testid": `${c}-select-button`,
|
|
59
59
|
hideLabel: !0,
|
|
60
|
+
labelText: u,
|
|
60
61
|
disabled: l,
|
|
61
62
|
showIcon: !1,
|
|
62
63
|
children: n.map((t) => {
|
|
@@ -66,7 +67,7 @@ const E = ({
|
|
|
66
67
|
}
|
|
67
68
|
),
|
|
68
69
|
/* @__PURE__ */ i(
|
|
69
|
-
|
|
70
|
+
x,
|
|
70
71
|
{
|
|
71
72
|
className: `${r}__pagination-button`,
|
|
72
73
|
onClick: () => {
|
|
@@ -75,9 +76,9 @@ const E = ({
|
|
|
75
76
|
},
|
|
76
77
|
"data-testid": `${c}-next-button`,
|
|
77
78
|
isDisabled: l,
|
|
78
|
-
"aria-label":
|
|
79
|
-
variant:
|
|
80
|
-
children: /* @__PURE__ */ i(
|
|
79
|
+
"aria-label": C,
|
|
80
|
+
variant: b.tertiary,
|
|
81
|
+
children: /* @__PURE__ */ i(h, {})
|
|
81
82
|
}
|
|
82
83
|
)
|
|
83
84
|
]
|
|
@@ -85,5 +86,5 @@ const E = ({
|
|
|
85
86
|
);
|
|
86
87
|
};
|
|
87
88
|
export {
|
|
88
|
-
|
|
89
|
+
G as default
|
|
89
90
|
};
|
|
@@ -1,7 +1,8 @@
|
|
|
1
1
|
import { InputProps } from '../Input/Input';
|
|
2
|
+
import { Merge } from 'type-fest';
|
|
2
3
|
import { SelectVariants } from './types';
|
|
3
4
|
import * as React from 'react';
|
|
4
|
-
export interface SelectProps extends InputProps {
|
|
5
|
+
export interface SelectProps extends Merge<InputProps, React.ComponentProps<'select'>> {
|
|
5
6
|
/**
|
|
6
7
|
* Option elements that are selectable
|
|
7
8
|
*/
|
|
@@ -13,7 +14,7 @@ export interface SelectProps extends InputProps {
|
|
|
13
14
|
/**
|
|
14
15
|
* Determines the variant of the select
|
|
15
16
|
*/
|
|
16
|
-
variant
|
|
17
|
+
variant?: SelectVariants;
|
|
17
18
|
}
|
|
18
19
|
/**
|
|
19
20
|
* ## Overview
|