ekm-ui 0.3.43 → 0.3.46

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 (115) hide show
  1. package/.turbo/turbo-build.log +71 -71
  2. package/CHANGELOG.md +12 -0
  3. package/dist/alert-banner.d.ts +1 -0
  4. package/dist/alert-banner.mjs +1 -1
  5. package/dist/badge.d.ts +4 -5
  6. package/dist/badge.mjs +2 -1
  7. package/dist/card-payment-block.css +1 -1
  8. package/dist/card-payment-block.css.map +1 -1
  9. package/dist/card-payment-block.mjs +15 -15
  10. package/dist/{chunk-ZI635H5Y.mjs → chunk-3LINEESX.mjs} +6 -5
  11. package/dist/chunk-3LINEESX.mjs.map +1 -0
  12. package/dist/{chunk-RMX72FR3.mjs → chunk-5FPVCRAI.mjs} +4 -4
  13. package/dist/chunk-5FPVCRAI.mjs.map +1 -0
  14. package/dist/chunk-FISQAAMO.mjs +30 -0
  15. package/dist/chunk-FISQAAMO.mjs.map +1 -0
  16. package/dist/{chunk-QOVVHEU2.mjs → chunk-HEKVJKLH.mjs} +3 -3
  17. package/dist/chunk-HEKVJKLH.mjs.map +1 -0
  18. package/dist/{chunk-TWLN46WO.mjs → chunk-KEIDXVZB.mjs} +4 -4
  19. package/dist/chunk-KEIDXVZB.mjs.map +1 -0
  20. package/dist/chunk-N7RKCR3X.mjs +11 -0
  21. package/dist/chunk-N7RKCR3X.mjs.map +1 -0
  22. package/dist/{chunk-OZK25XNR.mjs → chunk-NEJOZRKV.mjs} +3 -3
  23. package/dist/chunk-NEJOZRKV.mjs.map +1 -0
  24. package/dist/chunk-OA6BZGB2.mjs +12 -0
  25. package/dist/chunk-OA6BZGB2.mjs.map +1 -0
  26. package/dist/chunk-Q365BFES.mjs +10 -0
  27. package/dist/chunk-Q365BFES.mjs.map +1 -0
  28. package/dist/{chunk-45QX7OUO.mjs → chunk-S7N5VK35.mjs} +7 -7
  29. package/dist/chunk-S7N5VK35.mjs.map +1 -0
  30. package/dist/{chunk-QRNTMHBL.mjs → chunk-VQ3MZS4J.mjs} +3 -3
  31. package/dist/chunk-VQ3MZS4J.mjs.map +1 -0
  32. package/dist/{chunk-AHKENQVI.mjs → chunk-W3DRXKTC.mjs} +2 -2
  33. package/dist/{chunk-7X4WYXA2.mjs → chunk-WFRV27QA.mjs} +3 -3
  34. package/dist/chunk-WFRV27QA.mjs.map +1 -0
  35. package/dist/{chunk-7Q4BF7BT.mjs → chunk-XUXHB434.mjs} +3 -3
  36. package/dist/chunk-XUXHB434.mjs.map +1 -0
  37. package/dist/{chunk-ZFBRBOQI.mjs → chunk-ZJATBQ3X.mjs} +3 -3
  38. package/dist/chunk-ZJATBQ3X.mjs.map +1 -0
  39. package/dist/color-picker.d.ts +3 -0
  40. package/dist/color-picker.mjs +1 -1
  41. package/dist/drag-and-drop.css +1 -1
  42. package/dist/drag-and-drop.css.map +1 -1
  43. package/dist/drag-and-drop.d.ts +1 -0
  44. package/dist/drag-and-drop.mjs +15 -15
  45. package/dist/drawer.d.ts +3 -0
  46. package/dist/drawer.mjs +1 -1
  47. package/dist/dropdown.d.ts +6 -4
  48. package/dist/dropdown.mjs +1 -1
  49. package/dist/file-picker/file-picker.css +1 -1
  50. package/dist/file-picker/file-picker.css.map +1 -1
  51. package/dist/file-picker/file-picker.d.ts +1 -0
  52. package/dist/file-picker/file-picker.mjs +15 -15
  53. package/dist/form-row.d.ts +3 -0
  54. package/dist/form-row.mjs +1 -1
  55. package/dist/index.css +1 -1
  56. package/dist/index.css.map +1 -1
  57. package/dist/index.d.ts +1 -0
  58. package/dist/index.mjs +16 -16
  59. package/dist/layout/layout.css +1 -1
  60. package/dist/layout/layout.css.map +1 -1
  61. package/dist/layout/layout.mjs +15 -15
  62. package/dist/mini-feature-block.mjs +3 -2
  63. package/dist/page-header.d.ts +3 -0
  64. package/dist/page-header.mjs +1 -1
  65. package/dist/search/search.mjs +1 -1
  66. package/dist/select.mjs +1 -1
  67. package/dist/sort/sort.d.ts +1 -0
  68. package/dist/sort/sort.mjs +1 -1
  69. package/dist/stacked-list-item.css +1 -1
  70. package/dist/stacked-list-item.css.map +1 -1
  71. package/dist/stacked-list-item.d.ts +3 -0
  72. package/dist/stacked-list-item.mjs +15 -15
  73. package/dist/table-header/table-header.d.ts +1 -0
  74. package/dist/table-header/table-header.mjs +1 -1
  75. package/dist/text-row.d.ts +3 -0
  76. package/dist/text-row.mjs +1 -1
  77. package/dist/toast/index.d.ts +3 -0
  78. package/dist/toast/index.mjs +1 -1
  79. package/package.json +1 -1
  80. package/src/alert-banner.tsx +2 -0
  81. package/src/badge.tsx +34 -48
  82. package/src/color-picker.tsx +2 -0
  83. package/src/drag-and-drop.tsx +2 -0
  84. package/src/drawer.tsx +2 -0
  85. package/src/dropdown.tsx +43 -43
  86. package/src/file-picker/file-picker.tsx +2 -0
  87. package/src/form-row.tsx +2 -0
  88. package/src/index.tsx +1 -0
  89. package/src/page-header.tsx +2 -0
  90. package/src/search/search.tsx +90 -54
  91. package/src/select.tsx +2 -2
  92. package/src/sort/sort.tsx +2 -0
  93. package/src/stacked-list-item.tsx +2 -0
  94. package/src/table-header/table-header.tsx +2 -0
  95. package/src/text-row.tsx +2 -0
  96. package/src/toast/index.tsx +2 -0
  97. package/dist/chunk-45QX7OUO.mjs.map +0 -1
  98. package/dist/chunk-7Q4BF7BT.mjs.map +0 -1
  99. package/dist/chunk-7X4WYXA2.mjs.map +0 -1
  100. package/dist/chunk-OZK25XNR.mjs.map +0 -1
  101. package/dist/chunk-QOVVHEU2.mjs.map +0 -1
  102. package/dist/chunk-QRNTMHBL.mjs.map +0 -1
  103. package/dist/chunk-QWPN2UNV.mjs +0 -11
  104. package/dist/chunk-QWPN2UNV.mjs.map +0 -1
  105. package/dist/chunk-RMX72FR3.mjs.map +0 -1
  106. package/dist/chunk-TWLN46WO.mjs.map +0 -1
  107. package/dist/chunk-WYNI4KBI.mjs +0 -30
  108. package/dist/chunk-WYNI4KBI.mjs.map +0 -1
  109. package/dist/chunk-XFCPRHEY.mjs +0 -10
  110. package/dist/chunk-XFCPRHEY.mjs.map +0 -1
  111. package/dist/chunk-XGHRMSFX.mjs +0 -12
  112. package/dist/chunk-XGHRMSFX.mjs.map +0 -1
  113. package/dist/chunk-ZFBRBOQI.mjs.map +0 -1
  114. package/dist/chunk-ZI635H5Y.mjs.map +0 -1
  115. /package/dist/{chunk-AHKENQVI.mjs.map → chunk-W3DRXKTC.mjs.map} +0 -0
@@ -1,110 +1,143 @@
1
1
  //@ts-nocheck
2
- import { useState, useRef, useCallback, useEffect, forwardRef, useImperativeHandle } from 'react'
3
- import PropTypes from 'prop-types'
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
- { id, categories = [], delay = 1500, placeholder = 'Enter a keyword to search...', callback, disabled = false, initialValue = '' },
26
- reference,
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) setCurrentSearchValue(initialValue)
72
- }, [initialValue])
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('click', handleClickOutside, true)
98
+ document.addEventListener("click", handleClickOutside, true);
83
99
  return () => {
84
- document.removeEventListener('click', handleClickOutside, true)
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 top-0 right-0 p-2.5 flex-shrink-0 z-10 inline-flex items-center py-2.5 px-4 text-sm font-medium text-center text-gray-900 bg-white border border-gray-300 dark:border-gray-700 dark:text-white rounded-r-lg hover:bg-gray-200 focus:ring-4 focus:outline-none focus:ring-gray-300 dark:bg-gray-600 dark:hover:bg-gray-700 dark:focus:ring-gray-800"
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 className="w-2.5 h-2.5 ml-2.5" aria-hidden="true" xmlns="http://www.w3.org/2000/svg" fill="none" viewBox="0 0 10 6">
99
- <path stroke="currentColor" strokeLinecap="round" strokeLinejoin="round" strokeWidth="2" d="m1 1 4 4 4-4" />
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 ${hidden ? 'hidden' : ''} absolute right-0 bg-white divide-y divide-gray-100 rounded-r-lg shadow w-44 dark:bg-gray-700`}
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 className="py-2 text-sm text-gray-700 dark:text-gray-200" aria-labelledby="dropdown-button">
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 p-2.5 w-full text-sm text-gray-900 rounded-lg bg-gray-50 border-r-gray-300 border-r-2 border border-gray-300 focus:ring-blue-500 focus:border-blue-500 dark:bg-gray-700 dark:border-gray-600 dark:placeholder-gray-400 dark:text-white dark:focus:border-blue-500"
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]).isRequired,
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
@@ -79,3 +79,5 @@ Sort.propTypes = {
79
79
  /** Returns{ display, value, name, sort, count} */
80
80
  callback: PropTypes.func.isRequired,
81
81
  }
82
+
83
+ Sort.displayName = "Sort"
@@ -76,3 +76,5 @@ export function StackedListItem({
76
76
  </li>
77
77
  );
78
78
  }
79
+
80
+ StackedListItem.displayName = "StackedListItem"
@@ -285,3 +285,5 @@ TableHeader.propTypes = {
285
285
  /** Optional return call triggered when the optional header checkbox is clicked */
286
286
  checkboxCallback: PropTypes.func,
287
287
  };
288
+
289
+ TableHeader.displayName = "TableHeader";
package/src/text-row.tsx CHANGED
@@ -22,3 +22,5 @@ export function TextRow({ children, title, text, border, className }: Props) {
22
22
  </div>
23
23
  );
24
24
  }
25
+
26
+ TextRow.displayName = "TextRow"
@@ -61,6 +61,8 @@ export function ToastProvider({ children }: { children: React.ReactNode }) {
61
61
  );
62
62
  }
63
63
 
64
+ ToastProvider.displayName = "ToastProvider"
65
+
64
66
  type ToastEvent = {
65
67
  type: "success" | "error" | "warning" | "info";
66
68
  text: string;