@addsign/moje-agenda-shared-lib 2.0.45 → 2.0.47
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.js +263 -242
- package/dist/components/datatable/DataTableServer.js.map +1 -1
- package/dist/components/datatable/DatatableSettings.js +3 -0
- package/dist/components/datatable/DatatableSettings.js.map +1 -1
- package/dist/components/form/InputField.js.map +1 -1
- package/dist/components/ui/multi-select.js +6 -3
- package/dist/components/ui/multi-select.js.map +1 -1
- package/lib/components/datatable/DataTableServer.tsx +17 -4
- package/lib/components/datatable/DatatableSettings.tsx +3 -0
- package/lib/components/form/InputField.tsx +1 -0
- package/lib/components/ui/multi-select.tsx +35 -20
- package/package.json +1 -1
|
@@ -22125,6 +22125,7 @@ function DataTableServer({
|
|
|
22125
22125
|
{
|
|
22126
22126
|
className: "shadow-lg border border-gray-200 rounded-xl",
|
|
22127
22127
|
style: { overflowY: "visible" },
|
|
22128
|
+
"data-cy": "datatable-container-" + id,
|
|
22128
22129
|
children: [
|
|
22129
22130
|
showHeader && /* @__PURE__ */ jsxs("div", { className: "p-4 leading-9 flex ", children: [
|
|
22130
22131
|
/* @__PURE__ */ jsxs("div", { className: "flex-grow content-center", children: [
|
|
@@ -22147,6 +22148,7 @@ function DataTableServer({
|
|
|
22147
22148
|
className: "flex items-center text-xl h-full p-3 cursor-pointer text-gray-500 hover:text-black",
|
|
22148
22149
|
title: showColFilters ? "Zrušit filtr podle sloupců" : "Filtrovat podle sloupců",
|
|
22149
22150
|
onClick: handleToggleShowColFilters,
|
|
22151
|
+
"data-cy": "datatable-filter-toggle",
|
|
22150
22152
|
children: [
|
|
22151
22153
|
!showColFilters && /* @__PURE__ */ jsx(MdOutlineFilterAlt, {}),
|
|
22152
22154
|
showColFilters && /* @__PURE__ */ jsx(MdOutlineFilterAltOff, { className: "text-danger" })
|
|
@@ -22168,242 +22170,252 @@ function DataTableServer({
|
|
|
22168
22170
|
}
|
|
22169
22171
|
) })
|
|
22170
22172
|
] }),
|
|
22171
|
-
/* @__PURE__ */ jsx("div", { className: "overflow-auto min-h-[500px]", children: /* @__PURE__ */ jsxs(
|
|
22172
|
-
|
|
22173
|
-
|
|
22174
|
-
|
|
22175
|
-
|
|
22176
|
-
|
|
22177
|
-
|
|
22178
|
-
className: "w-
|
|
22179
|
-
|
|
22180
|
-
|
|
22181
|
-
|
|
22182
|
-
|
|
22183
|
-
|
|
22184
|
-
|
|
22185
|
-
|
|
22186
|
-
|
|
22187
|
-
|
|
22188
|
-
|
|
22189
|
-
|
|
22190
|
-
|
|
22191
|
-
|
|
22192
|
-
|
|
22193
|
-
|
|
22194
|
-
|
|
22195
|
-
|
|
22196
|
-
|
|
22197
|
-
|
|
22198
|
-
|
|
22199
|
-
|
|
22200
|
-
"th",
|
|
22173
|
+
/* @__PURE__ */ jsx("div", { className: "overflow-auto min-h-[500px]", children: /* @__PURE__ */ jsxs(
|
|
22174
|
+
"table",
|
|
22175
|
+
{
|
|
22176
|
+
className: "w-full leading-normal",
|
|
22177
|
+
"data-cy": "datatable-table-" + id,
|
|
22178
|
+
children: [
|
|
22179
|
+
/* @__PURE__ */ jsx("thead", { children: /* @__PURE__ */ jsxs("tr", { children: [
|
|
22180
|
+
data && bulkAction && /* @__PURE__ */ jsx("th", { className: "w-[20px] h-10 hover:bg-gray-200 bg-gray-50 font-medium text-xs text-center text-gray-600 cursor-pointer border-t border-b border-gray-200", children: /* @__PURE__ */ jsx("label", { className: "w-full h-full flex items-center justify-center cursor-pointer px-2", children: /* @__PURE__ */ jsx(
|
|
22181
|
+
"input",
|
|
22182
|
+
{
|
|
22183
|
+
id: "selectAll",
|
|
22184
|
+
type: "checkbox",
|
|
22185
|
+
className: "w-4 h-4 text-blue-600 bg-gray-100 border-gray-300 rounded !focus:ring-indigo-200 focus:ring-4",
|
|
22186
|
+
onChange: handleSelectAll,
|
|
22187
|
+
checked: data && selectedItems.length === data.content.length && data.content.length > 0
|
|
22188
|
+
}
|
|
22189
|
+
) }) }),
|
|
22190
|
+
columns.map(
|
|
22191
|
+
({
|
|
22192
|
+
key,
|
|
22193
|
+
header,
|
|
22194
|
+
actions,
|
|
22195
|
+
sortParam,
|
|
22196
|
+
width,
|
|
22197
|
+
filterType,
|
|
22198
|
+
filterParam,
|
|
22199
|
+
filterParam2
|
|
22200
|
+
}, index) => /* @__PURE__ */ jsx(
|
|
22201
|
+
Resizable,
|
|
22201
22202
|
{
|
|
22202
|
-
|
|
22203
|
+
tableId: id,
|
|
22204
|
+
colKey: String(key),
|
|
22205
|
+
defaultWidth: width || "auto",
|
|
22206
|
+
children: ({ ref }) => /* @__PURE__ */ jsxs(
|
|
22207
|
+
"th",
|
|
22208
|
+
{
|
|
22209
|
+
className: `tableHeader relative font-medium text-xs !leading-9 text-left px-3 text-gray-600
|
|
22203
22210
|
bg-gray-50 border-t border-b border-gray-200 content-start ${!title && !subtitle ? "border-t-0" : ""} ${sortParam ? " cursor-pointer " : ""}`,
|
|
22204
|
-
|
|
22205
|
-
|
|
22206
|
-
|
|
22207
|
-
|
|
22208
|
-
|
|
22209
|
-
|
|
22210
|
-
|
|
22211
|
-
|
|
22212
|
-
|
|
22213
|
-
|
|
22214
|
-
className: `resizer absolute top-0 right-0 h-full w-2 bg-transparent ${index < columns.length - 1 ? "cursor-col-resize hover:border-x border-gray-300 border-r w-1" : "w-0"}`,
|
|
22215
|
-
ref,
|
|
22216
|
-
onClick: (e) => e.stopPropagation()
|
|
22217
|
-
}
|
|
22218
|
-
),
|
|
22219
|
-
showColFilters && /* @__PURE__ */ jsx(
|
|
22220
|
-
"div",
|
|
22221
|
-
{
|
|
22222
|
-
className: "p-0 m-0 pb-2",
|
|
22223
|
-
onClick: (e) => e.stopPropagation(),
|
|
22224
|
-
children: filterType === "select" ? /* @__PURE__ */ jsx(
|
|
22225
|
-
SelectField,
|
|
22226
|
-
{
|
|
22227
|
-
name: String(key) + "_filter",
|
|
22228
|
-
onInputChange: (e) => filterHandler(
|
|
22229
|
-
filterParam,
|
|
22230
|
-
e.target.value
|
|
22231
|
-
),
|
|
22232
|
-
type: filterType,
|
|
22233
|
-
options: filterOptions[String(filterParam)] || [],
|
|
22234
|
-
value: (mergedFilters == null ? void 0 : mergedFilters[String(filterParam)]) ?? "",
|
|
22235
|
-
clearable: true,
|
|
22236
|
-
className: "px-0",
|
|
22237
|
-
placeholder: "Zadejte filtr",
|
|
22238
|
-
rounded: true,
|
|
22239
|
-
disabled: Object.keys(
|
|
22240
|
-
filters || {}
|
|
22241
|
-
).includes(String(filterParam))
|
|
22242
|
-
}
|
|
22243
|
-
) : filterType === "multi-select" ? /* @__PURE__ */ jsx(
|
|
22244
|
-
MultiSelect,
|
|
22211
|
+
onClick: () => sortParam ? requestSort(sortParam) : void 0,
|
|
22212
|
+
"data-cy": "datatable-header-" + id + "-" + String(key),
|
|
22213
|
+
children: [
|
|
22214
|
+
/* @__PURE__ */ jsxs("span", { className: "inline-flex items-center gap-2 group select-none w-full", children: [
|
|
22215
|
+
header,
|
|
22216
|
+
" ",
|
|
22217
|
+
!actions && sortParam ? getSortIcon(sortParam) : ""
|
|
22218
|
+
] }),
|
|
22219
|
+
/* @__PURE__ */ jsx(
|
|
22220
|
+
"div",
|
|
22245
22221
|
{
|
|
22246
|
-
|
|
22247
|
-
|
|
22248
|
-
|
|
22249
|
-
values
|
|
22250
|
-
),
|
|
22251
|
-
value: (mergedFilters == null ? void 0 : mergedFilters[String(filterParam)]) || [],
|
|
22252
|
-
placeholder: "Zadejte filtr",
|
|
22253
|
-
className: "px-0",
|
|
22254
|
-
disabled: Object.keys(
|
|
22255
|
-
filters || {}
|
|
22256
|
-
).includes(String(filterParam)),
|
|
22257
|
-
variant: "secondary"
|
|
22222
|
+
className: `resizer absolute top-0 right-0 h-full w-2 bg-transparent ${index < columns.length - 1 ? "cursor-col-resize hover:border-x border-gray-300 border-r w-1" : "w-0"}`,
|
|
22223
|
+
ref,
|
|
22224
|
+
onClick: (e) => e.stopPropagation()
|
|
22258
22225
|
}
|
|
22259
|
-
)
|
|
22260
|
-
|
|
22226
|
+
),
|
|
22227
|
+
showColFilters && /* @__PURE__ */ jsx(
|
|
22228
|
+
"div",
|
|
22261
22229
|
{
|
|
22262
|
-
|
|
22263
|
-
|
|
22264
|
-
|
|
22265
|
-
|
|
22266
|
-
|
|
22267
|
-
|
|
22268
|
-
|
|
22269
|
-
|
|
22270
|
-
|
|
22271
|
-
|
|
22272
|
-
|
|
22273
|
-
|
|
22274
|
-
|
|
22275
|
-
|
|
22276
|
-
|
|
22277
|
-
|
|
22278
|
-
|
|
22279
|
-
|
|
22230
|
+
className: "p-0 m-0 pb-2",
|
|
22231
|
+
onClick: (e) => e.stopPropagation(),
|
|
22232
|
+
children: filterType === "select" ? /* @__PURE__ */ jsx(
|
|
22233
|
+
SelectField,
|
|
22234
|
+
{
|
|
22235
|
+
name: String(key) + "_filter",
|
|
22236
|
+
onInputChange: (e) => filterHandler(
|
|
22237
|
+
filterParam,
|
|
22238
|
+
e.target.value
|
|
22239
|
+
),
|
|
22240
|
+
type: filterType,
|
|
22241
|
+
options: filterOptions[String(filterParam)] || [],
|
|
22242
|
+
value: (mergedFilters == null ? void 0 : mergedFilters[String(filterParam)]) ?? "",
|
|
22243
|
+
clearable: true,
|
|
22244
|
+
className: "px-0",
|
|
22245
|
+
placeholder: "Zadejte filtr",
|
|
22246
|
+
rounded: true,
|
|
22247
|
+
disabled: Object.keys(
|
|
22248
|
+
filters || {}
|
|
22249
|
+
).includes(String(filterParam))
|
|
22250
|
+
}
|
|
22251
|
+
) : filterType === "multi-select" ? /* @__PURE__ */ jsx(
|
|
22252
|
+
MultiSelect,
|
|
22253
|
+
{
|
|
22254
|
+
options: filterOptions[String(filterParam)] || [],
|
|
22255
|
+
onChange: (values) => filterHandler(
|
|
22256
|
+
filterParam,
|
|
22257
|
+
values
|
|
22258
|
+
),
|
|
22259
|
+
value: (mergedFilters == null ? void 0 : mergedFilters[String(filterParam)]) || [],
|
|
22260
|
+
placeholder: "Zadejte filtr",
|
|
22261
|
+
className: "px-0",
|
|
22262
|
+
disabled: Object.keys(
|
|
22263
|
+
filters || {}
|
|
22264
|
+
).includes(String(filterParam)),
|
|
22265
|
+
variant: "secondary",
|
|
22266
|
+
maxCount: 0
|
|
22267
|
+
}
|
|
22268
|
+
) : filterType === "dateRange" ? /* @__PURE__ */ jsx(
|
|
22269
|
+
DateRangeField,
|
|
22270
|
+
{
|
|
22271
|
+
name: String(filterParam),
|
|
22272
|
+
nameEnd: String(filterParam2),
|
|
22273
|
+
onInputChange: (e) => filterHandler(
|
|
22274
|
+
e.target.name,
|
|
22275
|
+
e.target.value
|
|
22276
|
+
),
|
|
22277
|
+
type: filterType,
|
|
22278
|
+
value: {
|
|
22279
|
+
startDate: (mergedFilters == null ? void 0 : mergedFilters[String(filterParam)]) || "",
|
|
22280
|
+
endDate: (mergedFilters == null ? void 0 : mergedFilters[String(filterParam2)]) || ""
|
|
22281
|
+
},
|
|
22282
|
+
clearable: true,
|
|
22283
|
+
className: " px-0 py-0 ",
|
|
22284
|
+
placeholder: "Zadejte filtr",
|
|
22285
|
+
rounded: true,
|
|
22286
|
+
disabled: Object.keys(
|
|
22287
|
+
filters || {}
|
|
22288
|
+
).includes(String(filterParam))
|
|
22289
|
+
}
|
|
22290
|
+
) : filterType === "date" ? /* @__PURE__ */ jsx(
|
|
22291
|
+
DateField,
|
|
22292
|
+
{
|
|
22293
|
+
name: String(filterParam),
|
|
22294
|
+
onInputChange: (e) => filterHandler(
|
|
22295
|
+
e.target.name,
|
|
22296
|
+
e.target.value
|
|
22297
|
+
),
|
|
22298
|
+
type: filterType,
|
|
22299
|
+
value: (mergedFilters == null ? void 0 : mergedFilters[String(filterParam)]) || "",
|
|
22300
|
+
clearable: true,
|
|
22301
|
+
className: " px-0 py-0 ",
|
|
22302
|
+
placeholder: "Zadejte filtr",
|
|
22303
|
+
rounded: true,
|
|
22304
|
+
disabled: Object.keys(
|
|
22305
|
+
filters || {}
|
|
22306
|
+
).includes(String(filterParam))
|
|
22307
|
+
}
|
|
22308
|
+
) : filterType === "text" ? /* @__PURE__ */ jsx(
|
|
22309
|
+
InputField,
|
|
22310
|
+
{
|
|
22311
|
+
name: String(key) + "_filter",
|
|
22312
|
+
onInputChange: (e) => filterHandler(
|
|
22313
|
+
filterParam,
|
|
22314
|
+
e.target.value
|
|
22315
|
+
),
|
|
22316
|
+
type: filterType,
|
|
22317
|
+
value: (mergedFilters == null ? void 0 : mergedFilters[String(filterParam)]) || "",
|
|
22318
|
+
disabled: Object.keys(
|
|
22319
|
+
filters || {}
|
|
22320
|
+
).includes(String(filterParam)),
|
|
22321
|
+
clearable: true,
|
|
22322
|
+
className: " min-w-[100px] px-0 ",
|
|
22323
|
+
rounded: true,
|
|
22324
|
+
placeholder: "Zadejte filtr",
|
|
22325
|
+
debounceTimeout: 1e3
|
|
22326
|
+
}
|
|
22327
|
+
) : null
|
|
22280
22328
|
}
|
|
22281
|
-
)
|
|
22282
|
-
|
|
22283
|
-
|
|
22284
|
-
|
|
22285
|
-
onInputChange: (e) => filterHandler(
|
|
22286
|
-
e.target.name,
|
|
22287
|
-
e.target.value
|
|
22288
|
-
),
|
|
22289
|
-
type: filterType,
|
|
22290
|
-
value: (mergedFilters == null ? void 0 : mergedFilters[String(filterParam)]) || "",
|
|
22291
|
-
clearable: true,
|
|
22292
|
-
className: " px-0 py-0 ",
|
|
22293
|
-
placeholder: "Zadejte filtr",
|
|
22294
|
-
rounded: true,
|
|
22295
|
-
disabled: Object.keys(
|
|
22296
|
-
filters || {}
|
|
22297
|
-
).includes(String(filterParam))
|
|
22298
|
-
}
|
|
22299
|
-
) : filterType === "text" ? /* @__PURE__ */ jsx(
|
|
22300
|
-
InputField,
|
|
22301
|
-
{
|
|
22302
|
-
name: String(key) + "_filter",
|
|
22303
|
-
onInputChange: (e) => filterHandler(
|
|
22304
|
-
filterParam,
|
|
22305
|
-
e.target.value
|
|
22306
|
-
),
|
|
22307
|
-
type: filterType,
|
|
22308
|
-
value: (mergedFilters == null ? void 0 : mergedFilters[String(filterParam)]) || "",
|
|
22309
|
-
disabled: Object.keys(
|
|
22310
|
-
filters || {}
|
|
22311
|
-
).includes(String(filterParam)),
|
|
22312
|
-
clearable: true,
|
|
22313
|
-
className: " min-w-[100px] px-0 ",
|
|
22314
|
-
rounded: true,
|
|
22315
|
-
placeholder: "Zadejte filtr",
|
|
22316
|
-
debounceTimeout: 1e3
|
|
22317
|
-
}
|
|
22318
|
-
) : null
|
|
22319
|
-
}
|
|
22320
|
-
)
|
|
22321
|
-
]
|
|
22322
|
-
}
|
|
22323
|
-
)
|
|
22324
|
-
},
|
|
22325
|
-
String(key)
|
|
22326
|
-
)
|
|
22327
|
-
)
|
|
22328
|
-
] }) }),
|
|
22329
|
-
!isLoading && data && (data == null ? void 0 : data.content) && (data == null ? void 0 : data.content.length) > 0 && /* @__PURE__ */ jsxs("tbody", { className: "relative", children: [
|
|
22330
|
-
data.content.map((item, rowIndex) => /* @__PURE__ */ jsxs(
|
|
22331
|
-
"tr",
|
|
22332
|
-
{
|
|
22333
|
-
className: `${item._isHighlighted || isSelected(item) ? "bg-gray-50" : ""} hover:bg-gray-100 border-gray-200 border-b text-sm`,
|
|
22334
|
-
children: [
|
|
22335
|
-
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(
|
|
22336
|
-
"input",
|
|
22337
|
-
{
|
|
22338
|
-
type: "checkbox",
|
|
22339
|
-
className: "w-4 h-4 text-blue-600 bg-gray-100 border-gray-300 rounded !focus:ring-indigo-200 focus:ring-4",
|
|
22340
|
-
checked: isSelected(item) || false,
|
|
22341
|
-
onChange: () => handleSelectItem(item)
|
|
22342
|
-
}
|
|
22343
|
-
) }) }),
|
|
22344
|
-
columns.map(({ render, actions, classes }, colIndex) => /* @__PURE__ */ jsxs(
|
|
22345
|
-
"td",
|
|
22346
|
-
{
|
|
22347
|
-
onClick: rowAction ? () => rowAction(item) : void 0,
|
|
22348
|
-
className: `px-3 py-2 text-gray-700 ${rowAction ? "cursor-pointer" : ""} ${colIndex === 0 ? "font-medium " : ""} ${classes || ""}`,
|
|
22349
|
-
children: [
|
|
22350
|
-
render ? render(item) : "",
|
|
22351
|
-
actions && actions.filter((it) => {
|
|
22352
|
-
if (it.rowAction)
|
|
22353
|
-
return false;
|
|
22354
|
-
if (it.visible) {
|
|
22355
|
-
return it.visible(item);
|
|
22356
|
-
} else
|
|
22357
|
-
return true;
|
|
22358
|
-
}).map((action, actionIndex) => /* @__PURE__ */ jsxs(
|
|
22359
|
-
"div",
|
|
22360
|
-
{
|
|
22361
|
-
className: "inline-flex align-middle",
|
|
22362
|
-
children: [
|
|
22363
|
-
action.icon && /* @__PURE__ */ jsx(
|
|
22364
|
-
Button,
|
|
22365
|
-
{
|
|
22366
|
-
variant: "icon",
|
|
22367
|
-
onClick: () => action.onClick(item),
|
|
22368
|
-
children: action.icon
|
|
22369
|
-
}
|
|
22370
|
-
),
|
|
22371
|
-
!action.icon && /* @__PURE__ */ jsx(
|
|
22372
|
-
Button,
|
|
22373
|
-
{
|
|
22374
|
-
variant: "primary",
|
|
22375
|
-
onClick: (e) => {
|
|
22376
|
-
e.stopPropagation();
|
|
22377
|
-
action.onClick(item);
|
|
22378
|
-
},
|
|
22379
|
-
children: action.label
|
|
22380
|
-
}
|
|
22381
|
-
)
|
|
22382
|
-
]
|
|
22383
|
-
},
|
|
22384
|
-
`${rowIndex}-${colIndex}-${actionIndex}`
|
|
22385
|
-
))
|
|
22386
|
-
]
|
|
22329
|
+
)
|
|
22330
|
+
]
|
|
22331
|
+
}
|
|
22332
|
+
)
|
|
22387
22333
|
},
|
|
22388
|
-
|
|
22389
|
-
)
|
|
22390
|
-
|
|
22391
|
-
},
|
|
22392
|
-
|
|
22393
|
-
|
|
22394
|
-
|
|
22395
|
-
|
|
22396
|
-
|
|
22397
|
-
|
|
22398
|
-
|
|
22399
|
-
|
|
22400
|
-
|
|
22401
|
-
|
|
22402
|
-
|
|
22403
|
-
|
|
22404
|
-
|
|
22405
|
-
|
|
22406
|
-
|
|
22334
|
+
String(key)
|
|
22335
|
+
)
|
|
22336
|
+
)
|
|
22337
|
+
] }) }),
|
|
22338
|
+
!isLoading && data && (data == null ? void 0 : data.content) && (data == null ? void 0 : data.content.length) > 0 && /* @__PURE__ */ jsxs("tbody", { className: "relative", children: [
|
|
22339
|
+
data.content.map((item, rowIndex) => /* @__PURE__ */ jsxs(
|
|
22340
|
+
"tr",
|
|
22341
|
+
{
|
|
22342
|
+
className: `${item._isHighlighted || isSelected(item) ? "bg-gray-50" : ""} hover:bg-gray-100 border-gray-200 border-b text-sm`,
|
|
22343
|
+
children: [
|
|
22344
|
+
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(
|
|
22345
|
+
"input",
|
|
22346
|
+
{
|
|
22347
|
+
type: "checkbox",
|
|
22348
|
+
className: "w-4 h-4 text-blue-600 bg-gray-100 border-gray-300 rounded !focus:ring-indigo-200 focus:ring-4",
|
|
22349
|
+
checked: isSelected(item) || false,
|
|
22350
|
+
onChange: () => handleSelectItem(item)
|
|
22351
|
+
}
|
|
22352
|
+
) }) }),
|
|
22353
|
+
columns.map(({ render, actions, classes }, colIndex) => /* @__PURE__ */ jsxs(
|
|
22354
|
+
"td",
|
|
22355
|
+
{
|
|
22356
|
+
onClick: rowAction ? () => rowAction(item) : void 0,
|
|
22357
|
+
className: `px-3 py-2 text-gray-800 ${rowAction ? "cursor-pointer" : ""} ${colIndex === 0 ? "font-bold " : ""} ${classes || ""}`,
|
|
22358
|
+
children: [
|
|
22359
|
+
render ? render(item) : "",
|
|
22360
|
+
actions && actions.filter((it) => {
|
|
22361
|
+
if (it.rowAction)
|
|
22362
|
+
return false;
|
|
22363
|
+
if (it.visible) {
|
|
22364
|
+
return it.visible(item);
|
|
22365
|
+
} else
|
|
22366
|
+
return true;
|
|
22367
|
+
}).map((action, actionIndex) => /* @__PURE__ */ jsxs(
|
|
22368
|
+
"div",
|
|
22369
|
+
{
|
|
22370
|
+
className: "inline-flex align-middle",
|
|
22371
|
+
children: [
|
|
22372
|
+
action.icon && /* @__PURE__ */ jsx(
|
|
22373
|
+
Button,
|
|
22374
|
+
{
|
|
22375
|
+
variant: "icon",
|
|
22376
|
+
onClick: () => action.onClick(item),
|
|
22377
|
+
children: action.icon
|
|
22378
|
+
}
|
|
22379
|
+
),
|
|
22380
|
+
!action.icon && /* @__PURE__ */ jsx(
|
|
22381
|
+
Button,
|
|
22382
|
+
{
|
|
22383
|
+
variant: "primary",
|
|
22384
|
+
onClick: (e) => {
|
|
22385
|
+
e.stopPropagation();
|
|
22386
|
+
action.onClick(item);
|
|
22387
|
+
},
|
|
22388
|
+
children: action.label
|
|
22389
|
+
}
|
|
22390
|
+
)
|
|
22391
|
+
]
|
|
22392
|
+
},
|
|
22393
|
+
`${rowIndex}-${colIndex}-${actionIndex}`
|
|
22394
|
+
))
|
|
22395
|
+
]
|
|
22396
|
+
},
|
|
22397
|
+
`${rowIndex}-${colIndex}`
|
|
22398
|
+
))
|
|
22399
|
+
]
|
|
22400
|
+
},
|
|
22401
|
+
rowIndex
|
|
22402
|
+
)),
|
|
22403
|
+
((_a = data == null ? void 0 : data.content) == null ? void 0 : _a.length) === 0 && /* @__PURE__ */ jsx("tr", { children: /* @__PURE__ */ jsx(
|
|
22404
|
+
"td",
|
|
22405
|
+
{
|
|
22406
|
+
className: "px-5 py-3 border-b border-gray-200 bg-white text-sm items-center justify-center align-middle",
|
|
22407
|
+
colSpan: columns.length,
|
|
22408
|
+
children: "No data"
|
|
22409
|
+
},
|
|
22410
|
+
"td-nodata"
|
|
22411
|
+
) }, "tr-nodata")
|
|
22412
|
+
] }),
|
|
22413
|
+
isLoading && /* @__PURE__ */ jsx("tbody", { className: "relative", children: /* @__PURE__ */ jsx("tr", { children: /* @__PURE__ */ jsx("td", { colSpan: 100, children: /* @__PURE__ */ jsx("div", { className: "w-full flex items-center justify-center h-[500px] py-2", children: /* @__PURE__ */ jsx(Spinner, {}) }) }) }) }),
|
|
22414
|
+
!isLoading && (!data || ((_b = data == null ? void 0 : data.content) == null ? void 0 : _b.length) === 0) && /* @__PURE__ */ jsx("tbody", { className: "relative h-[440px]", children: /* @__PURE__ */ jsx("tr", { children: /* @__PURE__ */ jsx("td", { colSpan: 100, children: /* @__PURE__ */ jsx("div", { className: "w-full flex items-center justify-center h-full py-2 text-gray-600 font-medium text-xs ", children: "Žádná data" }) }) }) })
|
|
22415
|
+
]
|
|
22416
|
+
},
|
|
22417
|
+
tableKey
|
|
22418
|
+
) }),
|
|
22407
22419
|
(data == null ? void 0 : data.isPageable) && /* @__PURE__ */ jsxs(
|
|
22408
22420
|
"div",
|
|
22409
22421
|
{
|
|
@@ -22418,6 +22430,7 @@ function DataTableServer({
|
|
|
22418
22430
|
onClick: prevPage,
|
|
22419
22431
|
className: "flex items-center",
|
|
22420
22432
|
disabled: data.first || isLoading,
|
|
22433
|
+
"data-cy": "prev-page",
|
|
22421
22434
|
children: [
|
|
22422
22435
|
/* @__PURE__ */ jsx(MdArrowBack, { className: "mr-1.5" }),
|
|
22423
22436
|
" Předchozí"
|
|
@@ -22431,6 +22444,7 @@ function DataTableServer({
|
|
|
22431
22444
|
onClick: nextPage,
|
|
22432
22445
|
className: "flex items-center",
|
|
22433
22446
|
disabled: data.last || isLoading,
|
|
22447
|
+
"data-cy": "next-page",
|
|
22434
22448
|
children: [
|
|
22435
22449
|
"Následující ",
|
|
22436
22450
|
/* @__PURE__ */ jsx(MdArrowForward, { className: "ml-2", size: 20 })
|
|
@@ -22439,19 +22453,26 @@ function DataTableServer({
|
|
|
22439
22453
|
)
|
|
22440
22454
|
] }),
|
|
22441
22455
|
/* @__PURE__ */ jsx("div", { className: "flex items-center justify-center text-gray-800", children: paginationDisplay }),
|
|
22442
|
-
/* @__PURE__ */ jsxs(
|
|
22443
|
-
|
|
22444
|
-
|
|
22445
|
-
|
|
22446
|
-
|
|
22447
|
-
|
|
22448
|
-
|
|
22449
|
-
|
|
22450
|
-
|
|
22451
|
-
|
|
22452
|
-
|
|
22453
|
-
|
|
22454
|
-
|
|
22456
|
+
/* @__PURE__ */ jsxs(
|
|
22457
|
+
"div",
|
|
22458
|
+
{
|
|
22459
|
+
className: "content-center w-auto items-center justify-end flex-row gap-5 flex md:mt-0 mt-5",
|
|
22460
|
+
"data-cy": "items-per-page",
|
|
22461
|
+
children: [
|
|
22462
|
+
/* @__PURE__ */ jsx("span", { className: " whitespace-nowrap flex-grow", children: "Počet řádků na stránku:" }),
|
|
22463
|
+
/* @__PURE__ */ jsx(
|
|
22464
|
+
SelectField,
|
|
22465
|
+
{
|
|
22466
|
+
name: "itemsPerPage",
|
|
22467
|
+
onInputChange: handleItemsPerPageChange,
|
|
22468
|
+
className: "!w-[100px]",
|
|
22469
|
+
options: itemsPerPageOptions || defaultItemsPerPageOptions,
|
|
22470
|
+
value: itemsPerPageLocal
|
|
22471
|
+
}
|
|
22472
|
+
)
|
|
22473
|
+
]
|
|
22474
|
+
}
|
|
22475
|
+
)
|
|
22455
22476
|
]
|
|
22456
22477
|
}
|
|
22457
22478
|
)
|