ekm-ui 0.3.41 → 0.3.45
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/.turbo/turbo-build.log +82 -82
- package/CHANGELOG.md +12 -0
- package/dist/alert-banner.d.ts +1 -0
- package/dist/alert-banner.mjs +1 -1
- package/dist/badge.d.ts +4 -5
- package/dist/badge.mjs +2 -1
- package/dist/card-payment-block.css +1 -1
- package/dist/card-payment-block.css.map +1 -1
- package/dist/card-payment-block.mjs +16 -16
- package/dist/{chunk-ZI635H5Y.mjs → chunk-3LINEESX.mjs} +6 -5
- package/dist/chunk-3LINEESX.mjs.map +1 -0
- package/dist/chunk-5DQUZENZ.mjs +11 -0
- package/dist/chunk-5DQUZENZ.mjs.map +1 -0
- package/dist/{chunk-RMX72FR3.mjs → chunk-5FPVCRAI.mjs} +4 -4
- package/dist/chunk-5FPVCRAI.mjs.map +1 -0
- package/dist/chunk-FISQAAMO.mjs +30 -0
- package/dist/chunk-FISQAAMO.mjs.map +1 -0
- package/dist/{chunk-QOVVHEU2.mjs → chunk-HEKVJKLH.mjs} +3 -3
- package/dist/chunk-HEKVJKLH.mjs.map +1 -0
- package/dist/{chunk-TWLN46WO.mjs → chunk-KEIDXVZB.mjs} +4 -4
- package/dist/chunk-KEIDXVZB.mjs.map +1 -0
- package/dist/chunk-N7RKCR3X.mjs +11 -0
- package/dist/chunk-N7RKCR3X.mjs.map +1 -0
- package/dist/{chunk-OZK25XNR.mjs → chunk-NEJOZRKV.mjs} +3 -3
- package/dist/chunk-NEJOZRKV.mjs.map +1 -0
- package/dist/chunk-Q365BFES.mjs +10 -0
- package/dist/chunk-Q365BFES.mjs.map +1 -0
- package/dist/{chunk-45QX7OUO.mjs → chunk-S7N5VK35.mjs} +7 -7
- package/dist/chunk-S7N5VK35.mjs.map +1 -0
- package/dist/{chunk-QRNTMHBL.mjs → chunk-VQ3MZS4J.mjs} +3 -3
- package/dist/chunk-VQ3MZS4J.mjs.map +1 -0
- package/dist/{chunk-AHKENQVI.mjs → chunk-W3DRXKTC.mjs} +2 -2
- package/dist/{chunk-7X4WYXA2.mjs → chunk-WFRV27QA.mjs} +3 -3
- package/dist/chunk-WFRV27QA.mjs.map +1 -0
- package/dist/{chunk-7Q4BF7BT.mjs → chunk-XUXHB434.mjs} +3 -3
- package/dist/chunk-XUXHB434.mjs.map +1 -0
- package/dist/{chunk-IKPLDZJI.mjs → chunk-ZHCGY4YB.mjs} +2 -2
- package/dist/{chunk-ZFBRBOQI.mjs → chunk-ZJATBQ3X.mjs} +3 -3
- package/dist/chunk-ZJATBQ3X.mjs.map +1 -0
- package/dist/color-picker.d.ts +3 -0
- package/dist/color-picker.mjs +1 -1
- package/dist/drag-and-drop.css +1 -1
- package/dist/drag-and-drop.css.map +1 -1
- package/dist/drag-and-drop.d.ts +1 -0
- package/dist/drag-and-drop.mjs +16 -16
- package/dist/drawer.d.ts +3 -0
- package/dist/drawer.mjs +1 -1
- package/dist/file-picker/file-picker.css +1 -1
- package/dist/file-picker/file-picker.css.map +1 -1
- package/dist/file-picker/file-picker.d.ts +1 -0
- package/dist/file-picker/file-picker.mjs +16 -16
- package/dist/form-row.d.ts +3 -0
- package/dist/form-row.mjs +1 -1
- package/dist/index.css +1 -1
- package/dist/index.css.map +1 -1
- package/dist/index.d.ts +1 -0
- package/dist/index.mjs +17 -17
- package/dist/input-copy.mjs +2 -2
- package/dist/layout/layout.css +1 -1
- package/dist/layout/layout.css.map +1 -1
- package/dist/layout/layout.mjs +16 -16
- package/dist/mini-feature-block.mjs +3 -2
- package/dist/page-header.d.ts +3 -0
- package/dist/page-header.mjs +1 -1
- package/dist/search/search.mjs +1 -1
- package/dist/select.mjs +1 -1
- package/dist/sort/sort.d.ts +1 -0
- package/dist/sort/sort.mjs +1 -1
- package/dist/stacked-list-item.css +1 -1
- package/dist/stacked-list-item.css.map +1 -1
- package/dist/stacked-list-item.d.ts +3 -0
- package/dist/stacked-list-item.mjs +16 -16
- package/dist/table-header/table-header.d.ts +1 -0
- package/dist/table-header/table-header.mjs +1 -1
- package/dist/text-row.d.ts +3 -0
- package/dist/text-row.mjs +1 -1
- package/dist/textinput.mjs +1 -1
- package/dist/toast/index.d.ts +3 -0
- package/dist/toast/index.mjs +1 -1
- package/package.json +1 -1
- package/src/alert-banner.tsx +2 -0
- package/src/badge.tsx +34 -48
- package/src/color-picker.tsx +2 -0
- package/src/drag-and-drop.tsx +2 -0
- package/src/drawer.tsx +2 -0
- package/src/file-picker/file-picker.tsx +2 -0
- package/src/form-row.tsx +2 -0
- package/src/index.tsx +1 -0
- package/src/page-header.tsx +2 -0
- package/src/search/search.tsx +90 -54
- package/src/select.tsx +2 -2
- package/src/sort/sort.tsx +2 -0
- package/src/stacked-list-item.tsx +2 -0
- package/src/table-header/table-header.tsx +2 -0
- package/src/text-row.tsx +2 -0
- package/src/textinput.tsx +7 -7
- package/src/toast/index.tsx +2 -0
- package/dist/chunk-45QX7OUO.mjs.map +0 -1
- package/dist/chunk-7Q4BF7BT.mjs.map +0 -1
- package/dist/chunk-7X4WYXA2.mjs.map +0 -1
- package/dist/chunk-N4UVO5CM.mjs +0 -11
- package/dist/chunk-N4UVO5CM.mjs.map +0 -1
- package/dist/chunk-NQ2DHV6K.mjs +0 -30
- package/dist/chunk-NQ2DHV6K.mjs.map +0 -1
- package/dist/chunk-OZK25XNR.mjs.map +0 -1
- package/dist/chunk-QOVVHEU2.mjs.map +0 -1
- package/dist/chunk-QRNTMHBL.mjs.map +0 -1
- package/dist/chunk-QWPN2UNV.mjs +0 -11
- package/dist/chunk-QWPN2UNV.mjs.map +0 -1
- package/dist/chunk-RMX72FR3.mjs.map +0 -1
- package/dist/chunk-TWLN46WO.mjs.map +0 -1
- package/dist/chunk-XFCPRHEY.mjs +0 -10
- package/dist/chunk-XFCPRHEY.mjs.map +0 -1
- package/dist/chunk-ZFBRBOQI.mjs.map +0 -1
- package/dist/chunk-ZI635H5Y.mjs.map +0 -1
- /package/dist/{chunk-AHKENQVI.mjs.map → chunk-W3DRXKTC.mjs.map} +0 -0
- /package/dist/{chunk-IKPLDZJI.mjs.map → chunk-ZHCGY4YB.mjs.map} +0 -0
|
@@ -11,5 +11,8 @@ type Props = {
|
|
|
11
11
|
icon?: JSX.Element;
|
|
12
12
|
};
|
|
13
13
|
declare function StackedListItem({ id, title, text, avatarShow, avatarColor, avatarBorder, children, badgeText, badgeColor, icon, }: Props): JSX.Element;
|
|
14
|
+
declare namespace StackedListItem {
|
|
15
|
+
var displayName: string;
|
|
16
|
+
}
|
|
14
17
|
|
|
15
18
|
export { StackedListItem };
|
|
@@ -1,9 +1,9 @@
|
|
|
1
|
-
export { a as StackedListItem } from './chunk-
|
|
2
|
-
import './chunk-
|
|
1
|
+
export { a as StackedListItem } from './chunk-FISQAAMO.mjs';
|
|
2
|
+
import './chunk-Q365BFES.mjs';
|
|
3
3
|
import './chunk-EHJJX6ZZ.mjs';
|
|
4
|
-
import './chunk-
|
|
5
|
-
import './chunk-
|
|
6
|
-
import './chunk-
|
|
4
|
+
import './chunk-ZJATBQ3X.mjs';
|
|
5
|
+
import './chunk-S7N5VK35.mjs';
|
|
6
|
+
import './chunk-N7RKCR3X.mjs';
|
|
7
7
|
import './chunk-ASCPOK5F.mjs';
|
|
8
8
|
import './chunk-25FJ277C.mjs';
|
|
9
9
|
import './chunk-FAFXVD4P.mjs';
|
|
@@ -13,37 +13,37 @@ import './chunk-VPLCWU7T.mjs';
|
|
|
13
13
|
import './chunk-PPMW7YAZ.mjs';
|
|
14
14
|
import './chunk-5CGIKL2Y.mjs';
|
|
15
15
|
import './chunk-NTGEZMHP.mjs';
|
|
16
|
-
import './chunk-
|
|
17
|
-
import './chunk-
|
|
16
|
+
import './chunk-WFRV27QA.mjs';
|
|
17
|
+
import './chunk-5FPVCRAI.mjs';
|
|
18
18
|
import './chunk-2IL2LP47.mjs';
|
|
19
|
-
import './chunk-
|
|
20
|
-
import './chunk-
|
|
19
|
+
import './chunk-ZHCGY4YB.mjs';
|
|
20
|
+
import './chunk-5DQUZENZ.mjs';
|
|
21
21
|
import './chunk-ZWJSMASL.mjs';
|
|
22
22
|
import './chunk-OT256LE6.mjs';
|
|
23
|
-
import './chunk-
|
|
23
|
+
import './chunk-W3DRXKTC.mjs';
|
|
24
24
|
import './chunk-WMFTYTMD.mjs';
|
|
25
25
|
import './chunk-EWNPNF2B.mjs';
|
|
26
|
-
import './chunk-
|
|
26
|
+
import './chunk-NEJOZRKV.mjs';
|
|
27
27
|
import './chunk-XGHRMSFX.mjs';
|
|
28
28
|
import './chunk-ZT7KDTGF.mjs';
|
|
29
29
|
import './chunk-IEHJB2LC.mjs';
|
|
30
30
|
import './chunk-FRIXS4BL.mjs';
|
|
31
|
-
import './chunk-
|
|
31
|
+
import './chunk-HEKVJKLH.mjs';
|
|
32
32
|
import './chunk-D6H235SZ.mjs';
|
|
33
33
|
import './chunk-PJMH47GY.mjs';
|
|
34
34
|
import './chunk-KAQJAKQH.mjs';
|
|
35
35
|
import './chunk-DZABAR36.mjs';
|
|
36
|
-
import './chunk-
|
|
36
|
+
import './chunk-XUXHB434.mjs';
|
|
37
37
|
import './chunk-F6ZWBNIM.mjs';
|
|
38
38
|
import './chunk-PT4DPY4L.mjs';
|
|
39
39
|
import './chunk-4SFCR75V.mjs';
|
|
40
40
|
import './chunk-WLJEFSES.mjs';
|
|
41
|
-
import './chunk-
|
|
41
|
+
import './chunk-VQ3MZS4J.mjs';
|
|
42
42
|
import './chunk-JACXLYPD.mjs';
|
|
43
|
-
import './chunk-
|
|
43
|
+
import './chunk-KEIDXVZB.mjs';
|
|
44
44
|
import './chunk-O3QYDTAF.mjs';
|
|
45
45
|
import './chunk-YJKULMWM.mjs';
|
|
46
|
-
import './chunk-
|
|
46
|
+
import './chunk-3LINEESX.mjs';
|
|
47
47
|
import './chunk-JCWSMIVA.mjs';
|
|
48
48
|
import './chunk-SAXGEQRG.mjs';
|
|
49
49
|
import './chunk-S6EYHLVB.mjs';
|
package/dist/text-row.d.ts
CHANGED
package/dist/text-row.mjs
CHANGED
package/dist/textinput.mjs
CHANGED
package/dist/toast/index.d.ts
CHANGED
|
@@ -4,6 +4,9 @@ declare const ToastContext: react.Context<((toast: ToastEvent) => void) | undefi
|
|
|
4
4
|
declare function ToastProvider({ children }: {
|
|
5
5
|
children: React.ReactNode;
|
|
6
6
|
}): JSX.Element;
|
|
7
|
+
declare namespace ToastProvider {
|
|
8
|
+
var displayName: string;
|
|
9
|
+
}
|
|
7
10
|
type ToastEvent = {
|
|
8
11
|
type: "success" | "error" | "warning" | "info";
|
|
9
12
|
text: string;
|
package/dist/toast/index.mjs
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
export { a as ToastContext, b as ToastProvider, c as useToast } from '../chunk-
|
|
1
|
+
export { a as ToastContext, b as ToastProvider, c as useToast } from '../chunk-N7RKCR3X.mjs';
|
|
2
2
|
import '../chunk-23SJGKDR.mjs';
|
|
3
3
|
//# sourceMappingURL=out.js.map
|
|
4
4
|
//# sourceMappingURL=index.mjs.map
|
package/package.json
CHANGED
package/src/alert-banner.tsx
CHANGED
package/src/badge.tsx
CHANGED
|
@@ -1,66 +1,52 @@
|
|
|
1
1
|
//@ts-nocheck
|
|
2
|
-
import { variantProps } from
|
|
3
|
-
import PropTypes from
|
|
2
|
+
import { variantProps } from 'classname-variants/react'
|
|
3
|
+
import PropTypes from 'prop-types'
|
|
4
|
+
import { twMerge } from 'tailwind-merge'
|
|
4
5
|
|
|
5
6
|
const badgeProps = variantProps({
|
|
6
|
-
base:
|
|
7
|
+
base: 'flex h-fit items-center gap-1 font-semibold rounded px-2 py-0.5',
|
|
7
8
|
variants: {
|
|
8
9
|
color: {
|
|
9
|
-
info:
|
|
10
|
-
gray:
|
|
11
|
-
failure:
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
"bg-gray-200 text-gray-800 dark:bg-gray-400 dark:text-gray-900 group-hover:bg-gray-300 dark:group-hover:bg-gray-500",
|
|
27
|
-
green:
|
|
28
|
-
"bg-green-100 text-green-800 dark:bg-green-200 dark:text-green-900 group-hover:bg-green-200 dark:group-hover:bg-green-300",
|
|
29
|
-
lime: "bg-lime-100 text-lime-800 dark:bg-lime-200 dark:text-lime-900 group-hover:bg-lime-200 dark:group-hover:bg-lime-300",
|
|
30
|
-
red: "bg-red-100 text-red-800 dark:bg-red-200 dark:text-red-900 group-hover:bg-red-200 dark:group-hover:bg-red-300",
|
|
31
|
-
teal: "bg-teal-100 text-teal-800 dark:bg-teal-200 dark:text-teal-900 group-hover:bg-teal-200 dark:group-hover:bg-teal-300",
|
|
32
|
-
yellow:
|
|
33
|
-
"bg-yellow-100 text-yellow-800 dark:bg-yellow-200 dark:text-yellow-900 group-hover:bg-yellow-200 dark:group-hover:bg-yellow-300",
|
|
10
|
+
info: 'bg-cyan-100 text-cyan-800 dark:bg-cyan-200 dark:text-cyan-800 group-hover:bg-cyan-200 dark:group-hover:bg-cyan-300',
|
|
11
|
+
gray: 'bg-gray-100 text-gray-800 dark:bg-gray-700 dark:text-gray-300 group-hover:bg-gray-200 dark:group-hover:bg-gray-600',
|
|
12
|
+
failure: 'bg-red-100 text-red-800 dark:bg-red-200 dark:text-red-900 group-hover:bg-red-200 dark:group-hover:bg-red-300',
|
|
13
|
+
success: 'bg-green-100 text-green-800 dark:bg-green-200 dark:text-green-900 group-hover:bg-green-200 dark:group-hover:bg-green-300',
|
|
14
|
+
warning: 'bg-yellow-100 text-yellow-800 dark:bg-yellow-200 dark:text-yellow-900 group-hover:bg-yellow-200 dark:group-hover:bg-yellow-300',
|
|
15
|
+
indigo: 'bg-indigo-100 text-indigo-800 dark:bg-indigo-200 dark:text-indigo-900 group-hover:bg-indigo-200 dark:group-hover:bg-indigo-300',
|
|
16
|
+
purple: 'bg-purple-100 text-purple-800 dark:bg-purple-200 dark:text-purple-900 group-hover:bg-purple-200 dark:group-hover:bg-purple-300',
|
|
17
|
+
pink: 'bg-pink-100 text-pink-800 dark:bg-pink-200 dark:text-pink-900 group-hover:bg-pink-200 dark:group-hover:bg-pink-300',
|
|
18
|
+
blue: 'bg-cyan-100 text-cyan-800 dark:bg-cyan-200 dark:text-cyan-900 group-hover:bg-cyan-200 dark:group-hover:bg-cyan-300',
|
|
19
|
+
cyan: 'bg-cyan-100 text-cyan-800 dark:bg-cyan-200 dark:text-cyan-900 group-hover:bg-cyan-200 dark:group-hover:bg-cyan-300',
|
|
20
|
+
dark: 'bg-gray-600 text-gray-100 dark:bg-gray-900 dark:text-gray-200 group-hover:bg-gray-500 dark:group-hover:bg-gray-700',
|
|
21
|
+
light: 'bg-gray-200 text-gray-800 dark:bg-gray-400 dark:text-gray-900 group-hover:bg-gray-300 dark:group-hover:bg-gray-500',
|
|
22
|
+
green: 'bg-green-100 text-green-800 dark:bg-green-200 dark:text-green-900 group-hover:bg-green-200 dark:group-hover:bg-green-300',
|
|
23
|
+
lime: 'bg-lime-100 text-lime-800 dark:bg-lime-200 dark:text-lime-900 group-hover:bg-lime-200 dark:group-hover:bg-lime-300',
|
|
24
|
+
red: 'bg-red-100 text-red-800 dark:bg-red-200 dark:text-red-900 group-hover:bg-red-200 dark:group-hover:bg-red-300',
|
|
25
|
+
teal: 'bg-teal-100 text-teal-800 dark:bg-teal-200 dark:text-teal-900 group-hover:bg-teal-200 dark:group-hover:bg-teal-300',
|
|
26
|
+
yellow: 'bg-yellow-100 text-yellow-800 dark:bg-yellow-200 dark:text-yellow-900 group-hover:bg-yellow-200 dark:group-hover:bg-yellow-300',
|
|
34
27
|
},
|
|
35
28
|
size: {
|
|
36
|
-
xs:
|
|
37
|
-
sm:
|
|
29
|
+
xs: 'p-1 text-xs',
|
|
30
|
+
sm: 'p-1.5 text-sm',
|
|
38
31
|
},
|
|
39
32
|
},
|
|
40
|
-
})
|
|
33
|
+
})
|
|
41
34
|
|
|
42
|
-
export function Badge({
|
|
43
|
-
color = "gray",
|
|
44
|
-
size = "xs",
|
|
45
|
-
icon,
|
|
46
|
-
children,
|
|
47
|
-
...props
|
|
48
|
-
}) {
|
|
35
|
+
export function Badge({ color = 'gray', size = 'xs', className, children }) {
|
|
49
36
|
return (
|
|
50
|
-
<
|
|
51
|
-
{
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
);
|
|
37
|
+
<div className={twMerge('flex p-4', className)}>
|
|
38
|
+
<span {...badgeProps({ color, size })}>{children}</span>
|
|
39
|
+
</div>
|
|
40
|
+
)
|
|
55
41
|
}
|
|
56
42
|
|
|
57
43
|
Badge.propTypes = {
|
|
58
44
|
/** String for color of badge */
|
|
59
45
|
color: PropTypes.string,
|
|
60
46
|
/** String to determine the size of the badge. "xs, sm" */
|
|
61
|
-
size: PropTypes.oneOf([
|
|
62
|
-
/**
|
|
63
|
-
|
|
64
|
-
}
|
|
47
|
+
size: PropTypes.oneOf(['xs', 'sm']),
|
|
48
|
+
/** Additional classes */
|
|
49
|
+
className: PropTypes.string,
|
|
50
|
+
}
|
|
65
51
|
|
|
66
|
-
Badge.displayName =
|
|
52
|
+
Badge.displayName = 'Badge'
|
package/src/color-picker.tsx
CHANGED
package/src/drag-and-drop.tsx
CHANGED
package/src/drawer.tsx
CHANGED
package/src/form-row.tsx
CHANGED
package/src/index.tsx
CHANGED
package/src/page-header.tsx
CHANGED
package/src/search/search.tsx
CHANGED
|
@@ -1,110 +1,143 @@
|
|
|
1
1
|
//@ts-nocheck
|
|
2
|
-
import {
|
|
3
|
-
|
|
2
|
+
import {
|
|
3
|
+
useState,
|
|
4
|
+
useRef,
|
|
5
|
+
useCallback,
|
|
6
|
+
useEffect,
|
|
7
|
+
forwardRef,
|
|
8
|
+
useImperativeHandle,
|
|
9
|
+
} from "react";
|
|
10
|
+
import PropTypes from "prop-types";
|
|
4
11
|
|
|
5
12
|
function useDebounceEffect(effect, delay, deps) {
|
|
6
|
-
const instanceRef = useRef(0)
|
|
7
|
-
const handlerRef = useRef(null)
|
|
8
|
-
const callback = useCallback(effect, deps)
|
|
13
|
+
const instanceRef = useRef(0);
|
|
14
|
+
const handlerRef = useRef(null);
|
|
15
|
+
const callback = useCallback(effect, deps);
|
|
9
16
|
|
|
10
17
|
useEffect(() => {
|
|
11
18
|
if (instanceRef.current === 0) {
|
|
12
|
-
instanceRef.current = 1
|
|
19
|
+
instanceRef.current = 1;
|
|
13
20
|
} else {
|
|
14
21
|
handlerRef.current = setTimeout(() => {
|
|
15
|
-
callback()
|
|
16
|
-
}, delay)
|
|
22
|
+
callback();
|
|
23
|
+
}, delay);
|
|
17
24
|
}
|
|
18
25
|
return () => {
|
|
19
|
-
clearTimeout(handlerRef.current)
|
|
20
|
-
}
|
|
21
|
-
}, [callback, delay])
|
|
26
|
+
clearTimeout(handlerRef.current);
|
|
27
|
+
};
|
|
28
|
+
}, [callback, delay]);
|
|
22
29
|
}
|
|
23
30
|
|
|
24
31
|
export const Search = forwardRef(function Search(
|
|
25
|
-
{
|
|
26
|
-
|
|
32
|
+
{
|
|
33
|
+
id,
|
|
34
|
+
categories = [],
|
|
35
|
+
delay = 1500,
|
|
36
|
+
placeholder = "Enter a keyword to search...",
|
|
37
|
+
callback,
|
|
38
|
+
disabled = false,
|
|
39
|
+
initialValue = "",
|
|
40
|
+
},
|
|
41
|
+
reference
|
|
27
42
|
) {
|
|
28
43
|
// Create state based on config
|
|
29
44
|
const [state, setState] = useState({
|
|
30
45
|
text: null,
|
|
31
46
|
category: categories?.length > 0 ? categories[0] : null,
|
|
32
|
-
})
|
|
33
|
-
const [currentSearchValue, setCurrentSearchValue] = useState(initialValue)
|
|
34
|
-
const [hidden, setHidden] = useState(true)
|
|
47
|
+
});
|
|
48
|
+
const [currentSearchValue, setCurrentSearchValue] = useState(initialValue);
|
|
49
|
+
const [hidden, setHidden] = useState(true);
|
|
35
50
|
|
|
36
51
|
useImperativeHandle(reference, () => ({
|
|
37
52
|
clear: () => {
|
|
38
|
-
setCurrentSearchValue(
|
|
39
|
-
setState({ ...state, text:
|
|
53
|
+
setCurrentSearchValue("");
|
|
54
|
+
setState({ ...state, text: "" });
|
|
40
55
|
},
|
|
41
56
|
removeFocus: () => {
|
|
42
|
-
document.getElementById(`${id}-search-input`).blur()
|
|
57
|
+
document.getElementById(`${id}-search-input`).blur();
|
|
43
58
|
},
|
|
44
|
-
}))
|
|
59
|
+
}));
|
|
45
60
|
|
|
46
61
|
const handleSearchChange = (e) => {
|
|
47
|
-
setCurrentSearchValue(e.target.value)
|
|
48
|
-
setState({ ...state, text: e.target.value })
|
|
49
|
-
}
|
|
62
|
+
setCurrentSearchValue(e.target.value);
|
|
63
|
+
setState({ ...state, text: e.target.value });
|
|
64
|
+
};
|
|
50
65
|
|
|
51
66
|
const handleTypeChange = (e, selection) => {
|
|
52
|
-
e.preventDefault()
|
|
53
|
-
setState({ ...state, category: selection })
|
|
54
|
-
setHidden(true)
|
|
55
|
-
}
|
|
67
|
+
e.preventDefault();
|
|
68
|
+
setState({ ...state, category: selection });
|
|
69
|
+
setHidden(true);
|
|
70
|
+
};
|
|
56
71
|
|
|
57
72
|
const handleKeyDown = (e) => {
|
|
58
73
|
if ((e.charCode || e.keyCode) === 13) {
|
|
59
|
-
e.preventDefault()
|
|
74
|
+
e.preventDefault();
|
|
60
75
|
}
|
|
61
|
-
}
|
|
76
|
+
};
|
|
62
77
|
|
|
63
78
|
useDebounceEffect(
|
|
64
79
|
() => {
|
|
65
|
-
callback(state)
|
|
80
|
+
callback(state);
|
|
66
81
|
},
|
|
67
82
|
delay,
|
|
68
|
-
[state.text, state.category]
|
|
69
|
-
)
|
|
83
|
+
[state.text, state.category]
|
|
84
|
+
);
|
|
70
85
|
useEffect(() => {
|
|
71
|
-
if (initialValue !== currentSearchValue)
|
|
72
|
-
|
|
86
|
+
if (initialValue !== currentSearchValue)
|
|
87
|
+
setCurrentSearchValue(initialValue);
|
|
88
|
+
}, [initialValue]);
|
|
73
89
|
|
|
74
|
-
const ref = useRef(null)
|
|
90
|
+
const ref = useRef(null);
|
|
75
91
|
useEffect(() => {
|
|
76
92
|
const handleClickOutside = (e) => {
|
|
77
93
|
if (ref.current && !ref.current.contains(e.target)) {
|
|
78
|
-
setHidden(true)
|
|
94
|
+
setHidden(true);
|
|
79
95
|
}
|
|
80
|
-
}
|
|
96
|
+
};
|
|
81
97
|
|
|
82
|
-
document.addEventListener(
|
|
98
|
+
document.addEventListener("click", handleClickOutside, true);
|
|
83
99
|
return () => {
|
|
84
|
-
document.removeEventListener(
|
|
85
|
-
}
|
|
86
|
-
}, [])
|
|
100
|
+
document.removeEventListener("click", handleClickOutside, true);
|
|
101
|
+
};
|
|
102
|
+
}, []);
|
|
87
103
|
|
|
88
104
|
const renderDropdown = () => (
|
|
89
105
|
<>
|
|
90
106
|
<button
|
|
91
107
|
id={`${id}-dropdown-button`}
|
|
92
108
|
data-dropdown-toggle="dropdown"
|
|
93
|
-
className="absolute
|
|
109
|
+
className="absolute right-0 top-0 z-10 inline-flex flex-shrink-0 items-center rounded-r-lg border border-gray-300 bg-white p-2.5 px-4 py-2.5 text-center text-sm font-medium text-gray-900 hover:bg-gray-200 focus:outline-none focus:ring-4 focus:ring-gray-300 dark:border-gray-700 dark:bg-gray-600 dark:text-white dark:hover:bg-gray-700 dark:focus:ring-gray-800"
|
|
94
110
|
type="button"
|
|
95
111
|
onClick={() => setHidden(!hidden)}
|
|
96
112
|
>
|
|
97
113
|
{state.category.display}
|
|
98
|
-
<svg
|
|
99
|
-
|
|
114
|
+
<svg
|
|
115
|
+
className="ml-2.5 h-2.5 w-2.5"
|
|
116
|
+
aria-hidden="true"
|
|
117
|
+
xmlns="http://www.w3.org/2000/svg"
|
|
118
|
+
fill="none"
|
|
119
|
+
viewBox="0 0 10 6"
|
|
120
|
+
>
|
|
121
|
+
<path
|
|
122
|
+
stroke="currentColor"
|
|
123
|
+
strokeLinecap="round"
|
|
124
|
+
strokeLinejoin="round"
|
|
125
|
+
strokeWidth="2"
|
|
126
|
+
d="m1 1 4 4 4-4"
|
|
127
|
+
/>
|
|
100
128
|
</svg>
|
|
101
129
|
</button>
|
|
102
130
|
<div
|
|
103
131
|
id={`${id}-dropdown`}
|
|
104
132
|
ref={ref}
|
|
105
|
-
className={`z-10 ${
|
|
133
|
+
className={`z-10 ${
|
|
134
|
+
hidden ? "hidden" : ""
|
|
135
|
+
} absolute right-0 w-44 divide-y divide-gray-100 rounded-r-lg bg-white shadow dark:bg-gray-700`}
|
|
106
136
|
>
|
|
107
|
-
<ul
|
|
137
|
+
<ul
|
|
138
|
+
className="py-2 text-sm text-gray-700 dark:text-gray-200"
|
|
139
|
+
aria-labelledby="dropdown-button"
|
|
140
|
+
>
|
|
108
141
|
{(categories || []).map((x) => {
|
|
109
142
|
return (
|
|
110
143
|
<li key={`gst-${x.display}`}>
|
|
@@ -116,12 +149,12 @@ export const Search = forwardRef(function Search(
|
|
|
116
149
|
{x.display}
|
|
117
150
|
</a>
|
|
118
151
|
</li>
|
|
119
|
-
)
|
|
152
|
+
);
|
|
120
153
|
})}
|
|
121
154
|
</ul>
|
|
122
155
|
</div>
|
|
123
156
|
</>
|
|
124
|
-
)
|
|
157
|
+
);
|
|
125
158
|
|
|
126
159
|
return (
|
|
127
160
|
<div className="flex">
|
|
@@ -136,13 +169,13 @@ export const Search = forwardRef(function Search(
|
|
|
136
169
|
onKeyDown={handleKeyDown}
|
|
137
170
|
disabled={disabled}
|
|
138
171
|
id={`${id}-search-input`}
|
|
139
|
-
className="block
|
|
172
|
+
className="block w-full rounded-lg border border-r-2 border-gray-300 border-r-gray-300 bg-gray-50 p-2.5 text-sm text-gray-900 focus:border-blue-500 focus:ring-blue-500 dark:border-gray-600 dark:bg-gray-700 dark:text-white dark:placeholder-gray-400 dark:focus:border-blue-500"
|
|
140
173
|
/>
|
|
141
174
|
{categories?.length > 0 && renderDropdown()}
|
|
142
175
|
</div>
|
|
143
176
|
</div>
|
|
144
|
-
)
|
|
145
|
-
})
|
|
177
|
+
);
|
|
178
|
+
});
|
|
146
179
|
|
|
147
180
|
Search.propTypes = {
|
|
148
181
|
/** Optional List of categories that the search term can be applied to. If supplied
|
|
@@ -157,8 +190,9 @@ Search.propTypes = {
|
|
|
157
190
|
/**
|
|
158
191
|
* The value set when the item is selected.
|
|
159
192
|
*/
|
|
160
|
-
value: PropTypes.oneOfType([PropTypes.string, PropTypes.number])
|
|
161
|
-
|
|
193
|
+
value: PropTypes.oneOfType([PropTypes.string, PropTypes.number])
|
|
194
|
+
.isRequired,
|
|
195
|
+
})
|
|
162
196
|
),
|
|
163
197
|
/**
|
|
164
198
|
* The delay between requests made to the server when typing in milliseconds.
|
|
@@ -182,4 +216,6 @@ Search.propTypes = {
|
|
|
182
216
|
* If not set, the search bar will just be empty.
|
|
183
217
|
*/
|
|
184
218
|
initialValue: PropTypes.string,
|
|
185
|
-
}
|
|
219
|
+
};
|
|
220
|
+
|
|
221
|
+
Search.displayName = "Search";
|
package/src/select.tsx
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
//@ts-nocheck
|
|
2
|
-
|
|
3
2
|
import { forwardRef } from "react";
|
|
4
3
|
import PropTypes from "prop-types";
|
|
4
|
+
|
|
5
5
|
export const Select = forwardRef(function Select(props, ref) {
|
|
6
6
|
return (
|
|
7
7
|
<>
|
|
@@ -57,4 +57,4 @@ Select.propTypes = {
|
|
|
57
57
|
onChange: PropTypes.func.isRequired,
|
|
58
58
|
};
|
|
59
59
|
|
|
60
|
-
|
|
60
|
+
Select.displayName = "Select";
|
package/src/sort/sort.tsx
CHANGED