@addsign/moje-agenda-shared-lib 1.0.40 → 1.0.42
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/datatable/DataTableServer.d.ts +2 -1
- package/dist/components/datatable/DataTableServer.js +25 -8
- package/dist/components/datatable/DataTableServer.js.map +1 -1
- package/dist/components/form/SelectField.d.ts +3 -2
- package/dist/components/form/SelectField.js +22 -12
- package/dist/components/form/SelectField.js.map +1 -1
- package/dist/utils/PdfManager.d.ts +2 -2
- package/dist/utils/PdfManager.js +5 -5
- package/dist/utils/PdfManager.js.map +1 -1
- package/package.json +1 -1
|
@@ -11,11 +11,12 @@ interface DataTableServerProps<T> {
|
|
|
11
11
|
rowAction?: (item: T) => void;
|
|
12
12
|
bulkAction?: (items: T[]) => JSX.Element;
|
|
13
13
|
filters?: object;
|
|
14
|
+
selectedItemKey?: string;
|
|
14
15
|
}
|
|
15
16
|
type DataTableInternalItems = {
|
|
16
17
|
_isHighlighted?: boolean;
|
|
17
18
|
id: string;
|
|
18
19
|
};
|
|
19
20
|
export declare const resetAllDataTablePaging: () => void;
|
|
20
|
-
declare function DataTableServer<T extends DataTableInternalItems>({ id, url, columns, title, subtitle, allowSearch, showHeader, rowAction, bulkAction, filters, }: DataTableServerProps<T>): import("react/jsx-runtime").JSX.Element;
|
|
21
|
+
declare function DataTableServer<T extends DataTableInternalItems>({ id, url, columns, title, subtitle, allowSearch, showHeader, rowAction, bulkAction, filters, selectedItemKey, }: DataTableServerProps<T>): import("react/jsx-runtime").JSX.Element;
|
|
21
22
|
export default DataTableServer;
|
|
@@ -21702,7 +21702,8 @@ function DataTableServer({
|
|
|
21702
21702
|
showHeader = true,
|
|
21703
21703
|
rowAction,
|
|
21704
21704
|
bulkAction,
|
|
21705
|
-
filters
|
|
21705
|
+
filters,
|
|
21706
|
+
selectedItemKey = "id"
|
|
21706
21707
|
}) {
|
|
21707
21708
|
var _a, _b, _c;
|
|
21708
21709
|
const [itemsPerPageLocal, setItemsPerPageLocal] = useState();
|
|
@@ -21759,9 +21760,18 @@ function DataTableServer({
|
|
|
21759
21760
|
if (currentPage === void 0)
|
|
21760
21761
|
return;
|
|
21761
21762
|
setIsLoading(true);
|
|
21763
|
+
const filteredMergedFilters = Object.entries(mergedFilters).reduce(
|
|
21764
|
+
(acc, [key, value]) => {
|
|
21765
|
+
if (value !== null && value !== "") {
|
|
21766
|
+
acc[key] = value;
|
|
21767
|
+
}
|
|
21768
|
+
return acc;
|
|
21769
|
+
},
|
|
21770
|
+
{}
|
|
21771
|
+
);
|
|
21762
21772
|
federationContext.apiClient.get(url, {
|
|
21763
21773
|
params: {
|
|
21764
|
-
...
|
|
21774
|
+
...filteredMergedFilters,
|
|
21765
21775
|
pageSize: itemsPerPageLocal,
|
|
21766
21776
|
page: currentPage,
|
|
21767
21777
|
sortBy: sortConfig == null ? void 0 : sortConfig.sortParam,
|
|
@@ -21891,9 +21901,11 @@ function DataTableServer({
|
|
|
21891
21901
|
};
|
|
21892
21902
|
const handleSelectItem = (item) => {
|
|
21893
21903
|
setSelectedItems((prevSelectedItems) => {
|
|
21894
|
-
if (prevSelectedItems.find(
|
|
21904
|
+
if (prevSelectedItems.find(
|
|
21905
|
+
(selectedItem) => selectedItem[selectedItemKey] === item[selectedItemKey]
|
|
21906
|
+
)) {
|
|
21895
21907
|
return prevSelectedItems.filter(
|
|
21896
|
-
(selectedItem) => selectedItem
|
|
21908
|
+
(selectedItem) => selectedItem[selectedItemKey] !== item[selectedItemKey]
|
|
21897
21909
|
);
|
|
21898
21910
|
} else {
|
|
21899
21911
|
return [...prevSelectedItems, item];
|
|
@@ -21907,9 +21919,14 @@ function DataTableServer({
|
|
|
21907
21919
|
setSelectedItems(data.content);
|
|
21908
21920
|
}
|
|
21909
21921
|
};
|
|
21910
|
-
const isSelected = (
|
|
21911
|
-
|
|
21912
|
-
|
|
21922
|
+
const isSelected = useCallback(
|
|
21923
|
+
(item) => {
|
|
21924
|
+
return selectedItems.some(
|
|
21925
|
+
(selectedItem) => selectedItem[selectedItemKey] === item[selectedItemKey]
|
|
21926
|
+
);
|
|
21927
|
+
},
|
|
21928
|
+
[selectedItems, selectedItemKey]
|
|
21929
|
+
);
|
|
21913
21930
|
const nextPage = () => {
|
|
21914
21931
|
setCurrentPage((currentPage || 0) + 1);
|
|
21915
21932
|
};
|
|
@@ -22218,7 +22235,7 @@ function DataTableServer({
|
|
|
22218
22235
|
data.content.map((item, rowIndex) => /* @__PURE__ */ jsxs(
|
|
22219
22236
|
"tr",
|
|
22220
22237
|
{
|
|
22221
|
-
className: `${item._isHighlighted ? "bg-gray-
|
|
22238
|
+
className: `${item._isHighlighted || isSelected(item) ? "bg-gray-50" : ""} hover:bg-gray-100 border-gray-200 border-b text-sm`,
|
|
22222
22239
|
children: [
|
|
22223
22240
|
bulkAction && /* @__PURE__ */ jsx("td", { className: "w-[20px] h-[52px] hover:bg-gray-200 font-medium text-xs text-center text-gray-600 cursor-pointer", children: /* @__PURE__ */ jsx("label", { className: "w-full h-full flex items-center justify-center cursor-pointer px-2", children: /* @__PURE__ */ jsx(
|
|
22224
22241
|
"input",
|