@emporix/component-library 1.2.1 → 1.3.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/components/dropdown/Dropdown.d.ts +70 -0
- package/dist/components/dropdown/Dropdown.d.ts.map +1 -0
- package/dist/index.d.ts +2 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/index.es.js +625 -434
- package/dist/index.umd.js +10 -10
- package/dist/style.css +1 -1
- package/package.json +1 -1
|
@@ -0,0 +1,70 @@
|
|
|
1
|
+
import { default as React } from 'react';
|
|
2
|
+
export interface DropdownOption {
|
|
3
|
+
label?: string;
|
|
4
|
+
value?: string;
|
|
5
|
+
[key: string]: unknown;
|
|
6
|
+
}
|
|
7
|
+
export interface DropdownChangeEvent {
|
|
8
|
+
value: DropdownOption['value'] | null;
|
|
9
|
+
originalEvent: React.SyntheticEvent;
|
|
10
|
+
}
|
|
11
|
+
export interface DropdownProps<T = DropdownOption> {
|
|
12
|
+
/**
|
|
13
|
+
* Selected value (controlled). Must match optionValue of the selected option.
|
|
14
|
+
*/
|
|
15
|
+
value?: unknown;
|
|
16
|
+
/**
|
|
17
|
+
* Callback when selection changes
|
|
18
|
+
*/
|
|
19
|
+
onChange?: (e: DropdownChangeEvent) => void;
|
|
20
|
+
/**
|
|
21
|
+
* Array of options
|
|
22
|
+
*/
|
|
23
|
+
options: T[];
|
|
24
|
+
/**
|
|
25
|
+
* Property name for the option label (default: "label")
|
|
26
|
+
*/
|
|
27
|
+
optionLabel?: keyof T | string;
|
|
28
|
+
/**
|
|
29
|
+
* Property name for the option value (default: "value")
|
|
30
|
+
*/
|
|
31
|
+
optionValue?: keyof T | string;
|
|
32
|
+
/**
|
|
33
|
+
* Placeholder when no value selected
|
|
34
|
+
*/
|
|
35
|
+
placeholder?: string;
|
|
36
|
+
/**
|
|
37
|
+
* Enable filter (search) in the overlay
|
|
38
|
+
*/
|
|
39
|
+
filter?: boolean;
|
|
40
|
+
/**
|
|
41
|
+
* Whether the dropdown is disabled
|
|
42
|
+
*/
|
|
43
|
+
disabled?: boolean;
|
|
44
|
+
/**
|
|
45
|
+
* Whether the field is required (shows asterisk on label)
|
|
46
|
+
*/
|
|
47
|
+
required?: boolean;
|
|
48
|
+
/**
|
|
49
|
+
* Label text displayed above the input
|
|
50
|
+
*/
|
|
51
|
+
label?: React.ReactNode;
|
|
52
|
+
/**
|
|
53
|
+
* Input element id for label association
|
|
54
|
+
*/
|
|
55
|
+
inputId?: string;
|
|
56
|
+
/**
|
|
57
|
+
* Additional CSS class name for the root
|
|
58
|
+
*/
|
|
59
|
+
className?: string;
|
|
60
|
+
/**
|
|
61
|
+
* Additional CSS class name for the overlay panel
|
|
62
|
+
*/
|
|
63
|
+
panelClassName?: string;
|
|
64
|
+
/**
|
|
65
|
+
* Test ID for testing
|
|
66
|
+
*/
|
|
67
|
+
'data-testid'?: string;
|
|
68
|
+
}
|
|
69
|
+
export declare const Dropdown: <T extends Record<string, unknown>>({ value, onChange, options, optionLabel, optionValue, placeholder, filter, disabled, required, label, inputId, className, panelClassName, "data-testid": testId, }: DropdownProps<T>) => import("react/jsx-runtime").JSX.Element;
|
|
70
|
+
//# sourceMappingURL=Dropdown.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Dropdown.d.ts","sourceRoot":"","sources":["../../../src/components/dropdown/Dropdown.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAsC,MAAM,OAAO,CAAA;AAI1D,MAAM,WAAW,cAAc;IAC7B,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAA;CACvB;AAED,MAAM,WAAW,mBAAmB;IAClC,KAAK,EAAE,cAAc,CAAC,OAAO,CAAC,GAAG,IAAI,CAAA;IACrC,aAAa,EAAE,KAAK,CAAC,cAAc,CAAA;CACpC;AAED,MAAM,WAAW,aAAa,CAAC,CAAC,GAAG,cAAc;IAC/C;;OAEG;IACH,KAAK,CAAC,EAAE,OAAO,CAAA;IACf;;OAEG;IACH,QAAQ,CAAC,EAAE,CAAC,CAAC,EAAE,mBAAmB,KAAK,IAAI,CAAA;IAC3C;;OAEG;IACH,OAAO,EAAE,CAAC,EAAE,CAAA;IACZ;;OAEG;IACH,WAAW,CAAC,EAAE,MAAM,CAAC,GAAG,MAAM,CAAA;IAC9B;;OAEG;IACH,WAAW,CAAC,EAAE,MAAM,CAAC,GAAG,MAAM,CAAA;IAC9B;;OAEG;IACH,WAAW,CAAC,EAAE,MAAM,CAAA;IACpB;;OAEG;IACH,MAAM,CAAC,EAAE,OAAO,CAAA;IAChB;;OAEG;IACH,QAAQ,CAAC,EAAE,OAAO,CAAA;IAClB;;OAEG;IACH,QAAQ,CAAC,EAAE,OAAO,CAAA;IAClB;;OAEG;IACH,KAAK,CAAC,EAAE,KAAK,CAAC,SAAS,CAAA;IACvB;;OAEG;IACH,OAAO,CAAC,EAAE,MAAM,CAAA;IAChB;;OAEG;IACH,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB;;OAEG;IACH,cAAc,CAAC,EAAE,MAAM,CAAA;IACvB;;OAEG;IACH,aAAa,CAAC,EAAE,MAAM,CAAA;CACvB;AAmBD,eAAO,MAAM,QAAQ,GAAI,CAAC,SAAS,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,oKAezD,aAAa,CAAC,CAAC,CAAC,4CAoOlB,CAAA"}
|
package/dist/index.d.ts
CHANGED
|
@@ -4,4 +4,6 @@ export { SecondaryButton } from './components/buttons/SecondaryButton';
|
|
|
4
4
|
export type { SecondaryButtonProps } from './components/buttons/SecondaryButton';
|
|
5
5
|
export { Tabs } from './components/tabs/Tabs';
|
|
6
6
|
export type { TabsProps, TabItem } from './components/tabs/Tabs';
|
|
7
|
+
export { Dropdown } from './components/dropdown/Dropdown';
|
|
8
|
+
export type { DropdownProps, DropdownOption, DropdownChangeEvent, } from './components/dropdown/Dropdown';
|
|
7
9
|
//# sourceMappingURL=index.d.ts.map
|
package/dist/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,aAAa,EAAE,MAAM,oCAAoC,CAAA;AAClE,YAAY,EAAE,kBAAkB,EAAE,MAAM,oCAAoC,CAAA;AAE5E,OAAO,EAAE,eAAe,EAAE,MAAM,sCAAsC,CAAA;AACtE,YAAY,EAAE,oBAAoB,EAAE,MAAM,sCAAsC,CAAA;AAEhF,OAAO,EAAE,IAAI,EAAE,MAAM,wBAAwB,CAAA;AAC7C,YAAY,EAAE,SAAS,EAAE,OAAO,EAAE,MAAM,wBAAwB,CAAA;
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,aAAa,EAAE,MAAM,oCAAoC,CAAA;AAClE,YAAY,EAAE,kBAAkB,EAAE,MAAM,oCAAoC,CAAA;AAE5E,OAAO,EAAE,eAAe,EAAE,MAAM,sCAAsC,CAAA;AACtE,YAAY,EAAE,oBAAoB,EAAE,MAAM,sCAAsC,CAAA;AAEhF,OAAO,EAAE,IAAI,EAAE,MAAM,wBAAwB,CAAA;AAC7C,YAAY,EAAE,SAAS,EAAE,OAAO,EAAE,MAAM,wBAAwB,CAAA;AAEhE,OAAO,EAAE,QAAQ,EAAE,MAAM,gCAAgC,CAAA;AACzD,YAAY,EACV,aAAa,EACb,cAAc,EACd,mBAAmB,GACpB,MAAM,gCAAgC,CAAA;AAGvC,OAAO,qBAAqB,CAAA"}
|