@solidxai/core-ui 0.1.14-beta.4 → 0.1.14-beta.9
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/auth/AuthLayout.js +1 -1
- package/dist/components/auth/AuthLayout.js.map +1 -1
- package/dist/components/auth/AuthLayout.tsx +2 -2
- package/dist/components/common/SettingsComponent.module.css +4 -1
- package/dist/components/common/SolidFieldTooltip.d.ts.map +1 -1
- package/dist/components/common/SolidFieldTooltip.js +1 -1
- package/dist/components/common/SolidFieldTooltip.js.map +1 -1
- package/dist/components/common/SolidFieldTooltip.tsx +1 -0
- package/dist/components/common/SolidFormStepper.d.ts.map +1 -1
- package/dist/components/common/SolidFormStepper.js +7 -6
- package/dist/components/common/SolidFormStepper.js.map +1 -1
- package/dist/components/common/SolidFormStepper.tsx +7 -1
- package/dist/components/common/SolidThemeProvider.d.ts.map +1 -1
- package/dist/components/common/SolidThemeProvider.js +127 -11
- package/dist/components/common/SolidThemeProvider.js.map +1 -1
- package/dist/components/common/SolidThemeProvider.tsx +104 -22
- package/dist/components/core/card/CardGrid.d.ts +1 -1
- package/dist/components/core/card/CardGrid.d.ts.map +1 -1
- package/dist/components/core/card/CardGrid.js +2 -2
- package/dist/components/core/card/CardGrid.js.map +1 -1
- package/dist/components/core/card/CardGrid.tsx +4 -0
- package/dist/components/core/card/CardItem.d.ts +2 -0
- package/dist/components/core/card/CardItem.d.ts.map +1 -1
- package/dist/components/core/card/CardItem.js +4 -3
- package/dist/components/core/card/CardItem.js.map +1 -1
- package/dist/components/core/card/CardItem.tsx +15 -0
- package/dist/components/core/card/SolidCardView.d.ts +28 -1
- package/dist/components/core/card/SolidCardView.d.ts.map +1 -1
- package/dist/components/core/card/SolidCardView.js +99 -44
- package/dist/components/core/card/SolidCardView.js.map +1 -1
- package/dist/components/core/card/SolidCardView.tsx +124 -7
- package/dist/components/core/card/SolidCardViewConfigure.d.ts +1 -1
- package/dist/components/core/card/SolidCardViewConfigure.d.ts.map +1 -1
- package/dist/components/core/card/SolidCardViewConfigure.js +15 -6
- package/dist/components/core/card/SolidCardViewConfigure.js.map +1 -1
- package/dist/components/core/card/SolidCardViewConfigure.tsx +34 -0
- package/dist/components/core/card/cardViewRegistry.d.ts +7 -0
- package/dist/components/core/card/cardViewRegistry.d.ts.map +1 -0
- package/dist/components/core/card/cardViewRegistry.js +17 -0
- package/dist/components/core/card/cardViewRegistry.js.map +1 -0
- package/dist/components/core/card/cardViewRegistry.ts +23 -0
- package/dist/components/core/common/PDFViewer.d.ts +9 -5
- package/dist/components/core/common/PDFViewer.d.ts.map +1 -1
- package/dist/components/core/common/PDFViewer.js +10 -102
- package/dist/components/core/common/PDFViewer.js.map +1 -1
- package/dist/components/core/common/PDFViewer.tsx +29 -88
- package/dist/components/core/common/SolidCollectionRowActionMenuItems.d.ts +12 -0
- package/dist/components/core/common/SolidCollectionRowActionMenuItems.d.ts.map +1 -0
- package/dist/components/core/common/SolidCollectionRowActionMenuItems.js +50 -0
- package/dist/components/core/common/SolidCollectionRowActionMenuItems.js.map +1 -0
- package/dist/components/core/common/SolidCollectionRowActionMenuItems.tsx +91 -0
- package/dist/components/core/common/SolidCreateButton.d.ts.map +1 -1
- package/dist/components/core/common/SolidCreateButton.js +2 -2
- package/dist/components/core/common/SolidCreateButton.js.map +1 -1
- package/dist/components/core/common/SolidCreateButton.tsx +22 -2
- package/dist/components/core/common/SolidGlobalSearchElement.d.ts.map +1 -1
- package/dist/components/core/common/SolidGlobalSearchElement.js +137 -134
- package/dist/components/core/common/SolidGlobalSearchElement.js.map +1 -1
- package/dist/components/core/common/SolidGlobalSearchElement.tsx +127 -119
- package/dist/components/core/form/SolidFormActionHeader.d.ts.map +1 -1
- package/dist/components/core/form/SolidFormActionHeader.js +21 -21
- package/dist/components/core/form/SolidFormActionHeader.js.map +1 -1
- package/dist/components/core/form/SolidFormActionHeader.tsx +62 -53
- package/dist/components/core/form/SolidFormView.d.ts.map +1 -1
- package/dist/components/core/form/SolidFormView.js +5 -2
- package/dist/components/core/form/SolidFormView.js.map +1 -1
- package/dist/components/core/form/SolidFormView.tsx +7 -2
- package/dist/components/core/kanban/KanbanBoard.d.ts +1 -1
- package/dist/components/core/kanban/KanbanBoard.d.ts.map +1 -1
- package/dist/components/core/kanban/KanbanBoard.js +2 -2
- package/dist/components/core/kanban/KanbanBoard.js.map +1 -1
- package/dist/components/core/kanban/KanbanBoard.tsx +3 -1
- package/dist/components/core/kanban/KanbanCard.d.ts +2 -0
- package/dist/components/core/kanban/KanbanCard.d.ts.map +1 -1
- package/dist/components/core/kanban/KanbanCard.js +4 -2
- package/dist/components/core/kanban/KanbanCard.js.map +1 -1
- package/dist/components/core/kanban/KanbanCard.tsx +14 -1
- package/dist/components/core/kanban/KanbanColumn.d.ts +3 -1
- package/dist/components/core/kanban/KanbanColumn.d.ts.map +1 -1
- package/dist/components/core/kanban/KanbanColumn.js +2 -2
- package/dist/components/core/kanban/KanbanColumn.js.map +1 -1
- package/dist/components/core/kanban/KanbanColumn.tsx +4 -2
- package/dist/components/core/kanban/SolidKanbanView.d.ts +25 -1
- package/dist/components/core/kanban/SolidKanbanView.d.ts.map +1 -1
- package/dist/components/core/kanban/SolidKanbanView.js +89 -50
- package/dist/components/core/kanban/SolidKanbanView.js.map +1 -1
- package/dist/components/core/kanban/SolidKanbanView.tsx +82 -9
- package/dist/components/core/kanban/kanbanViewRegistry.d.ts +7 -0
- package/dist/components/core/kanban/kanbanViewRegistry.d.ts.map +1 -0
- package/dist/components/core/kanban/kanbanViewRegistry.js +17 -0
- package/dist/components/core/kanban/kanbanViewRegistry.js.map +1 -0
- package/dist/components/core/kanban/kanbanViewRegistry.ts +23 -0
- package/dist/components/core/list/PLAN.md +1 -1
- package/dist/components/core/list/SolidListView.d.ts +11 -0
- package/dist/components/core/list/SolidListView.d.ts.map +1 -1
- package/dist/components/core/list/SolidListView.js +11 -6
- package/dist/components/core/list/SolidListView.js.map +1 -1
- package/dist/components/core/list/SolidListView.tsx +88 -45
- package/dist/components/core/list/SolidListViewConfigure.js +1 -1
- package/dist/components/core/list/SolidListViewConfigure.js.map +1 -1
- package/dist/components/core/list/SolidListViewConfigure.tsx +1 -1
- package/dist/components/core/list/columns/relations/SolidRelationManyToOneColumn.d.ts.map +1 -1
- package/dist/components/core/list/columns/relations/SolidRelationManyToOneColumn.js +2 -1
- package/dist/components/core/list/columns/relations/SolidRelationManyToOneColumn.js.map +1 -1
- package/dist/components/core/list/columns/relations/SolidRelationManyToOneColumn.tsx +2 -1
- package/dist/components/core/model/CreateModel.d.ts.map +1 -1
- package/dist/components/core/model/CreateModel.js +2 -1
- package/dist/components/core/model/CreateModel.js.map +1 -1
- package/dist/components/core/model/CreateModel.tsx +2 -0
- package/dist/components/core/model/FieldMetaData.d.ts +1 -1
- package/dist/components/core/model/FieldMetaData.d.ts.map +1 -1
- package/dist/components/core/model/FieldMetaData.js +8 -8
- package/dist/components/core/model/FieldMetaData.js.map +1 -1
- package/dist/components/core/model/FieldMetaData.tsx +2 -2
- package/dist/components/core/model/FieldMetaDataForm.css +119 -0
- package/dist/components/core/model/FieldMetaDataForm.js +1 -1
- package/dist/components/core/model/FieldMetaDataForm.js.map +1 -1
- package/dist/components/core/model/FieldMetaDataForm.tsx +1 -1
- package/dist/components/core/module/ModuleMetadataExplorer.css +64 -0
- package/dist/components/core/module/ModulePackageDialog.css +117 -12
- package/dist/components/core/tree/SolidTreeView.d.ts.map +1 -1
- package/dist/components/core/tree/SolidTreeView.js +6 -3
- package/dist/components/core/tree/SolidTreeView.js.map +1 -1
- package/dist/components/core/tree/SolidTreeView.tsx +35 -13
- package/dist/components/layout/AdminHeaderActions.d.ts.map +1 -1
- package/dist/components/layout/AdminHeaderActions.js +15 -10
- package/dist/components/layout/AdminHeaderActions.js.map +1 -1
- package/dist/components/layout/AdminHeaderActions.tsx +15 -8
- package/dist/components/layout/AdminTopHeader.d.ts.map +1 -1
- package/dist/components/layout/AdminTopHeader.js +1 -18
- package/dist/components/layout/AdminTopHeader.js.map +1 -1
- package/dist/components/layout/AdminTopHeader.tsx +3 -21
- package/dist/helpers/resolveActiveUserId.d.ts +13 -0
- package/dist/helpers/resolveActiveUserId.d.ts.map +1 -0
- package/dist/helpers/resolveActiveUserId.js +86 -0
- package/dist/helpers/resolveActiveUserId.js.map +1 -0
- package/dist/helpers/resolveActiveUserId.ts +90 -0
- package/dist/index.d.ts +5 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +3 -0
- package/dist/index.js.map +1 -1
- package/dist/index.ts +5 -0
- package/dist/resources/globals.css +15 -0
- package/dist/resources/solid-custom.css +18 -1
- package/dist/resources/solid-tailwind-generated.css +1 -1
- package/dist/resources/themes/solid-dark-enterprise/theme-variables.css +28 -0
- package/dist/resources/themes/solid-dark-enterprise/theme.css +926 -0
- package/dist/resources/themes/solid-dark-modern/theme-variables.css +27 -0
- package/dist/resources/themes/solid-dark-modern/theme.css +600 -0
- package/dist/resources/themes/solid-light-enterprise/theme-variables.css +28 -0
- package/dist/resources/themes/solid-light-enterprise/theme.css +930 -0
- package/dist/resources/themes/solid-light-modern/theme-variables.css +31 -0
- package/dist/resources/themes/solid-light-modern/theme.css +1041 -0
- package/dist/routes/pages/admin/core/CardPage.d.ts.map +1 -1
- package/dist/routes/pages/admin/core/CardPage.js +15 -2
- package/dist/routes/pages/admin/core/CardPage.js.map +1 -1
- package/dist/routes/pages/admin/core/CardPage.tsx +17 -2
- package/dist/routes/pages/admin/core/DashboardPage.d.ts.map +1 -1
- package/dist/routes/pages/admin/core/DashboardPage.js +31 -3
- package/dist/routes/pages/admin/core/DashboardPage.js.map +1 -1
- package/dist/routes/pages/admin/core/DashboardPage.tsx +39 -11
- package/dist/routes/pages/admin/core/KanbanPage.d.ts.map +1 -1
- package/dist/routes/pages/admin/core/KanbanPage.js +15 -2
- package/dist/routes/pages/admin/core/KanbanPage.js.map +1 -1
- package/dist/routes/pages/admin/core/KanbanPage.tsx +17 -2
- package/dist/routes/pages/admin/core/ListPage.d.ts.map +1 -1
- package/dist/routes/pages/admin/core/ListPage.js +5 -13
- package/dist/routes/pages/admin/core/ListPage.js.map +1 -1
- package/dist/routes/pages/admin/core/ListPage.tsx +5 -15
- package/dist/theme/theme-registry.d.ts +6 -0
- package/dist/theme/theme-registry.d.ts.map +1 -0
- package/dist/theme/theme-registry.js +65 -0
- package/dist/theme/theme-registry.js.map +1 -0
- package/dist/theme/theme-registry.ts +78 -0
- package/dist/types/solid-core.d.ts +8 -0
- package/package.json +1 -1
|
@@ -4,7 +4,9 @@ import { useGetSolidViewLayoutQuery } from "../../../redux/api/solidViewApi";
|
|
|
4
4
|
import { useLazyCheckIfPermissionExistsQuery } from "../../../redux/api/userApi";
|
|
5
5
|
import { DropResult } from "@hello-pangea/dnd";
|
|
6
6
|
import qs from "qs";
|
|
7
|
-
import { useEffect, useRef, useState } from "react";
|
|
7
|
+
import { forwardRef, useEffect, useImperativeHandle, useRef, useState } from "react";
|
|
8
|
+
import { useSession } from "../../../hooks/useSession";
|
|
9
|
+
import { resolveActiveUserId, resolveSavedFilterVariables } from "../../../helpers/resolveActiveUserId";
|
|
8
10
|
import { SolidCreateButton } from "../common/SolidCreateButton";
|
|
9
11
|
import { SolidGlobalSearchElement } from "../common/SolidGlobalSearchElement";
|
|
10
12
|
import KanbanBoard from "./KanbanBoard";
|
|
@@ -50,6 +52,31 @@ type SolidKanbanViewParams = {
|
|
|
50
52
|
moduleName: string;
|
|
51
53
|
modelName: string;
|
|
52
54
|
embeded: boolean;
|
|
55
|
+
customFilter?: any;
|
|
56
|
+
};
|
|
57
|
+
|
|
58
|
+
type SolidKanbanFilterInput = {
|
|
59
|
+
custom_filter_predicate?: any;
|
|
60
|
+
search_predicate?: any;
|
|
61
|
+
saved_filter_predicate?: any;
|
|
62
|
+
predefined_search_predicate?: any;
|
|
63
|
+
};
|
|
64
|
+
|
|
65
|
+
export type SolidKanbanViewHandle = {
|
|
66
|
+
refresh: () => void;
|
|
67
|
+
clearFilters: () => void;
|
|
68
|
+
applyFilter: (filter: SolidKanbanFilterInput) => void;
|
|
69
|
+
getSavedFilters: () => any[];
|
|
70
|
+
applySavedFilter: (name: string, variables?: Record<string, any>) => boolean;
|
|
71
|
+
setShowArchived: (value: boolean) => void;
|
|
72
|
+
getState: () => {
|
|
73
|
+
groupByFieldName: string;
|
|
74
|
+
showArchived: boolean;
|
|
75
|
+
filters: any;
|
|
76
|
+
filterPredicates: any;
|
|
77
|
+
kanbanData: any[];
|
|
78
|
+
loading: boolean;
|
|
79
|
+
};
|
|
53
80
|
};
|
|
54
81
|
|
|
55
82
|
type KanbanSwimlaneDefinition = {
|
|
@@ -119,12 +146,14 @@ const mergeKanbanGroupsWithDefinitions = (
|
|
|
119
146
|
};
|
|
120
147
|
|
|
121
148
|
|
|
122
|
-
export const SolidKanbanView = (params
|
|
149
|
+
export const SolidKanbanView = forwardRef<SolidKanbanViewHandle, SolidKanbanViewParams>((params, ref) => {
|
|
150
|
+
const session = useSession();
|
|
151
|
+
const user = session?.data?.user;
|
|
123
152
|
|
|
124
153
|
const visibleNavbar = useSelector((state: any) => state.navbarState?.visibleNavbar);
|
|
125
154
|
const dispatch = useDispatch()
|
|
126
155
|
|
|
127
|
-
const solidGlobalSearchElementRef = useRef();
|
|
156
|
+
const solidGlobalSearchElementRef = useRef<any>(null);
|
|
128
157
|
const router = useRouter();
|
|
129
158
|
const searchParams = useSearchParams();
|
|
130
159
|
// TODO: The initial filter state will be created based on the fields which are present on this kanban view.
|
|
@@ -542,7 +571,11 @@ export const SolidKanbanView = (params: SolidKanbanViewParams) => {
|
|
|
542
571
|
}
|
|
543
572
|
if (queryObject.saved_filter_predicate) {
|
|
544
573
|
// @ts-ignore
|
|
545
|
-
filters.$and.push(
|
|
574
|
+
filters.$and.push(resolveSavedFilterVariables(
|
|
575
|
+
queryObject.saved_filter_predicate,
|
|
576
|
+
user?.id,
|
|
577
|
+
queryObject.saved_filter_variables || {}
|
|
578
|
+
).value);
|
|
546
579
|
}
|
|
547
580
|
if (queryObject.predefined_search_predicate) {
|
|
548
581
|
// @ts-ignore
|
|
@@ -976,7 +1009,8 @@ export const SolidKanbanView = (params: SolidKanbanViewParams) => {
|
|
|
976
1009
|
}
|
|
977
1010
|
if (filterPredicates.saved_filter_predicate) {
|
|
978
1011
|
// @ts-ignore
|
|
979
|
-
queryfilter.$and.push(filterPredicates.
|
|
1012
|
+
queryfilter.$and.push(filterPredicates.resolved_saved_filter_predicate ||
|
|
1013
|
+
resolveActiveUserId(filterPredicates.saved_filter_predicate, user?.id));
|
|
980
1014
|
}
|
|
981
1015
|
if (filterPredicates.predefined_search_predicate) {
|
|
982
1016
|
// @ts-ignore
|
|
@@ -1031,6 +1065,8 @@ export const SolidKanbanView = (params: SolidKanbanViewParams) => {
|
|
|
1031
1065
|
// @ts-ignore
|
|
1032
1066
|
urlData.saved_filter_predicate = customFilter.saved_filter_predicate || {};
|
|
1033
1067
|
// @ts-ignore
|
|
1068
|
+
urlData.saved_filter_variables = customFilter.saved_filter_variables || {};
|
|
1069
|
+
// @ts-ignore
|
|
1034
1070
|
urlData.predefined_search_predicate = customFilter.predefined_search_predicate || {};
|
|
1035
1071
|
// @ts-ignore
|
|
1036
1072
|
urlData.predefined_search_chip = customFilter.predefined_search_chip || null;
|
|
@@ -1088,6 +1124,39 @@ export const SolidKanbanView = (params: SolidKanbanViewParams) => {
|
|
|
1088
1124
|
loadKanbanBoard(filters);
|
|
1089
1125
|
};
|
|
1090
1126
|
|
|
1127
|
+
const cloneKanbanData = () => {
|
|
1128
|
+
if (typeof structuredClone === "function") return structuredClone(kanbanViewData);
|
|
1129
|
+
return JSON.parse(JSON.stringify(kanbanViewData));
|
|
1130
|
+
};
|
|
1131
|
+
|
|
1132
|
+
useImperativeHandle(ref, () => ({
|
|
1133
|
+
refresh: () => {
|
|
1134
|
+
void loadKanbanBoard(filters);
|
|
1135
|
+
},
|
|
1136
|
+
clearFilters: () => {
|
|
1137
|
+
setFilters(params.customFilter || { $and: [] });
|
|
1138
|
+
setFilterPredicates(null);
|
|
1139
|
+
solidGlobalSearchElementRef.current?.clearFilter?.();
|
|
1140
|
+
},
|
|
1141
|
+
applyFilter: (filter) => {
|
|
1142
|
+
void handleApplyCustomFilter(filter);
|
|
1143
|
+
},
|
|
1144
|
+
getSavedFilters: () => solidGlobalSearchElementRef.current?.getSavedFilters?.() ?? [],
|
|
1145
|
+
applySavedFilter: (name, variables) =>
|
|
1146
|
+
solidGlobalSearchElementRef.current?.applySavedFilterByName?.(name, variables) ?? false,
|
|
1147
|
+
setShowArchived: (value) => {
|
|
1148
|
+
setShowArchived(value);
|
|
1149
|
+
},
|
|
1150
|
+
getState: () => ({
|
|
1151
|
+
groupByFieldName,
|
|
1152
|
+
showArchived,
|
|
1153
|
+
filters,
|
|
1154
|
+
filterPredicates,
|
|
1155
|
+
kanbanData: cloneKanbanData(),
|
|
1156
|
+
loading,
|
|
1157
|
+
}),
|
|
1158
|
+
}), [groupByFieldName, showArchived, filters, filterPredicates, kanbanViewData, loading]);
|
|
1159
|
+
|
|
1091
1160
|
const toggleBothSidebars = () => {
|
|
1092
1161
|
if (visibleNavbar) {
|
|
1093
1162
|
dispatch(toggleNavbar()); // close both
|
|
@@ -1113,7 +1182,11 @@ export const SolidKanbanView = (params: SolidKanbanViewParams) => {
|
|
|
1113
1182
|
*/}
|
|
1114
1183
|
|
|
1115
1184
|
{/* <p className="m-0 view-title solid-text-wrapper">{kanbanViewTitle}</p> */}
|
|
1116
|
-
<div className=
|
|
1185
|
+
<div className="max-[576px]:hidden sm:hidden lg:flex w-full mt-3 lg:mt-0 lg:min-w-0">
|
|
1186
|
+
{/* Keep global search mounted for now because kanban bootstrap/filter hydration still flows through this element. */}
|
|
1187
|
+
<SolidGlobalSearchElement viewType="kanban" showSaveFilterPopup={showSaveFilterPopup} setShowSaveFilterPopup={setShowSaveFilterPopup} ref={solidGlobalSearchElementRef} viewData={solidKanbanViewMetaData} handleApplyCustomFilter={handleApplyCustomFilter} filterPredicates={filterPredicates} ></SolidGlobalSearchElement>
|
|
1188
|
+
</div>
|
|
1189
|
+
<div className={`${showGlobalSearchElement ? "lg:flex" : "hidden"} lg:hidden mt-3 lg:mt-0 w-full lg:min-w-0`}>
|
|
1117
1190
|
{/* Keep global search mounted for now because kanban bootstrap/filter hydration still flows through this element. */}
|
|
1118
1191
|
<SolidGlobalSearchElement viewType="kanban" showSaveFilterPopup={showSaveFilterPopup} setShowSaveFilterPopup={setShowSaveFilterPopup} ref={solidGlobalSearchElementRef} viewData={solidKanbanViewMetaData} handleApplyCustomFilter={handleApplyCustomFilter} filterPredicates={filterPredicates} ></SolidGlobalSearchElement>
|
|
1119
1192
|
</div>
|
|
@@ -1121,7 +1194,7 @@ export const SolidKanbanView = (params: SolidKanbanViewParams) => {
|
|
|
1121
1194
|
|
|
1122
1195
|
<div className="flex items-center solid-header-buttons-wrapper solid-list-toolbar-actions lg:ml-auto">
|
|
1123
1196
|
<SolidHeaderRequestStatus label={headerRequestStatusLabel} />
|
|
1124
|
-
|
|
1197
|
+
<div className="solid-list-search-toggle">
|
|
1125
1198
|
<SolidButton
|
|
1126
1199
|
type="button"
|
|
1127
1200
|
variant="outline"
|
|
@@ -1192,7 +1265,7 @@ export const SolidKanbanView = (params: SolidKanbanViewParams) => {
|
|
|
1192
1265
|
|
|
1193
1266
|
<style>{`.p-datatable .p-datatable-loading-overlay {background-color: rgba(0, 0, 0, 0.0);}`}</style>
|
|
1194
1267
|
{solidKanbanViewMetaData && kanbanViewData &&
|
|
1195
|
-
<KanbanBoard groupByFieldName={groupByFieldName} kanbanViewData={kanbanViewData} maxSwimLanesCount={maxSwimLanesCount} solidKanbanViewMetaData={solidKanbanViewMetaData?.data} setKanbanViewData={setKanbanViewData} handleLoadMore={handleLoadMore} onDragEnd={onDragEnd} handleSwimLanePagination={handleSwimLanePagination} onDelete={actionsAllowed.includes(`${permissionExpression(params.modelName, 'delete')}`) && solidKanbanViewMetaData?.data?.solidView?.layout?.attrs.delete !== false ? openDeleteDialogForRecord : undefined} onRecover={handleRecoverRecord} setLightboxUrls={setLightboxUrls} setOpenLightbox={setOpenLightbox} editButtonUrl={editBaseUrl} recordClickAction={recordClickAction} showArchived={showArchived}></KanbanBoard>
|
|
1268
|
+
<KanbanBoard groupByFieldName={groupByFieldName} kanbanViewData={kanbanViewData} maxSwimLanesCount={maxSwimLanesCount} solidKanbanViewMetaData={solidKanbanViewMetaData?.data} setKanbanViewData={setKanbanViewData} handleLoadMore={handleLoadMore} onDragEnd={onDragEnd} handleSwimLanePagination={handleSwimLanePagination} onDelete={actionsAllowed.includes(`${permissionExpression(params.modelName, 'delete')}`) && solidKanbanViewMetaData?.data?.solidView?.layout?.attrs.delete !== false ? openDeleteDialogForRecord : undefined} onRecover={handleRecoverRecord} setLightboxUrls={setLightboxUrls} setOpenLightbox={setOpenLightbox} editButtonUrl={editBaseUrl} recordClickAction={recordClickAction} showArchived={showArchived} params={params} handleCustomButtonClick={handleCustomButtonClick}></KanbanBoard>
|
|
1196
1269
|
}
|
|
1197
1270
|
</div>
|
|
1198
1271
|
</div>
|
|
@@ -1242,4 +1315,4 @@ export const SolidKanbanView = (params: SolidKanbanViewParams) => {
|
|
|
1242
1315
|
</SolidDialog>
|
|
1243
1316
|
</div>
|
|
1244
1317
|
);
|
|
1245
|
-
};
|
|
1318
|
+
});
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import type { SolidKanbanViewHandle } from "./SolidKanbanView";
|
|
2
|
+
export declare const registerKanbanView: (kanbanId: string, handle: SolidKanbanViewHandle) => void;
|
|
3
|
+
export declare const unregisterKanbanView: (kanbanId: string) => void;
|
|
4
|
+
export declare const getKanbanView: (kanbanId: string) => SolidKanbanViewHandle | undefined;
|
|
5
|
+
export declare const hasKanbanView: (kanbanId: string) => boolean;
|
|
6
|
+
export declare const getRegisteredKanbanViewIds: () => string[];
|
|
7
|
+
//# sourceMappingURL=kanbanViewRegistry.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"kanbanViewRegistry.d.ts","sourceRoot":"","sources":["../../../../src/components/core/kanban/kanbanViewRegistry.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,mBAAmB,CAAC;AAI/D,eAAO,MAAM,kBAAkB,aAAc,MAAM,UAAU,qBAAqB,KAAG,IAEpF,CAAC;AAEF,eAAO,MAAM,oBAAoB,aAAc,MAAM,KAAG,IAEvD,CAAC;AAEF,eAAO,MAAM,aAAa,aAAc,MAAM,KAAG,qBAAqB,GAAG,SAExE,CAAC;AAEF,eAAO,MAAM,aAAa,aAAc,MAAM,KAAG,OAEhD,CAAC;AAEF,eAAO,MAAM,0BAA0B,QAAO,MAAM,EAEnD,CAAC"}
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
var kanbanViewRegistry = new Map();
|
|
2
|
+
export var registerKanbanView = function (kanbanId, handle) {
|
|
3
|
+
kanbanViewRegistry.set(kanbanId, handle);
|
|
4
|
+
};
|
|
5
|
+
export var unregisterKanbanView = function (kanbanId) {
|
|
6
|
+
kanbanViewRegistry.delete(kanbanId);
|
|
7
|
+
};
|
|
8
|
+
export var getKanbanView = function (kanbanId) {
|
|
9
|
+
return kanbanViewRegistry.get(kanbanId);
|
|
10
|
+
};
|
|
11
|
+
export var hasKanbanView = function (kanbanId) {
|
|
12
|
+
return kanbanViewRegistry.has(kanbanId);
|
|
13
|
+
};
|
|
14
|
+
export var getRegisteredKanbanViewIds = function () {
|
|
15
|
+
return Array.from(kanbanViewRegistry.keys());
|
|
16
|
+
};
|
|
17
|
+
//# sourceMappingURL=kanbanViewRegistry.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"kanbanViewRegistry.js","sourceRoot":"","sources":["../../../../src/components/core/kanban/kanbanViewRegistry.ts"],"names":[],"mappings":"AAEA,IAAM,kBAAkB,GAAG,IAAI,GAAG,EAAiC,CAAC;AAEpE,MAAM,CAAC,IAAM,kBAAkB,GAAG,UAAC,QAAgB,EAAE,MAA6B;IAChF,kBAAkB,CAAC,GAAG,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAC;AAC3C,CAAC,CAAC;AAEF,MAAM,CAAC,IAAM,oBAAoB,GAAG,UAAC,QAAgB;IACnD,kBAAkB,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;AACtC,CAAC,CAAC;AAEF,MAAM,CAAC,IAAM,aAAa,GAAG,UAAC,QAAgB;IAC5C,OAAO,kBAAkB,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;AAC1C,CAAC,CAAC;AAEF,MAAM,CAAC,IAAM,aAAa,GAAG,UAAC,QAAgB;IAC5C,OAAO,kBAAkB,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;AAC1C,CAAC,CAAC;AAEF,MAAM,CAAC,IAAM,0BAA0B,GAAG;IACxC,OAAO,KAAK,CAAC,IAAI,CAAC,kBAAkB,CAAC,IAAI,EAAE,CAAC,CAAC;AAC/C,CAAC,CAAC","sourcesContent":["import type { SolidKanbanViewHandle } from \"./SolidKanbanView\";\n\nconst kanbanViewRegistry = new Map<string, SolidKanbanViewHandle>();\n\nexport const registerKanbanView = (kanbanId: string, handle: SolidKanbanViewHandle): void => {\n kanbanViewRegistry.set(kanbanId, handle);\n};\n\nexport const unregisterKanbanView = (kanbanId: string): void => {\n kanbanViewRegistry.delete(kanbanId);\n};\n\nexport const getKanbanView = (kanbanId: string): SolidKanbanViewHandle | undefined => {\n return kanbanViewRegistry.get(kanbanId);\n};\n\nexport const hasKanbanView = (kanbanId: string): boolean => {\n return kanbanViewRegistry.has(kanbanId);\n};\n\nexport const getRegisteredKanbanViewIds = (): string[] => {\n return Array.from(kanbanViewRegistry.keys());\n};\n"]}
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
import type { SolidKanbanViewHandle } from "./SolidKanbanView";
|
|
2
|
+
|
|
3
|
+
const kanbanViewRegistry = new Map<string, SolidKanbanViewHandle>();
|
|
4
|
+
|
|
5
|
+
export const registerKanbanView = (kanbanId: string, handle: SolidKanbanViewHandle): void => {
|
|
6
|
+
kanbanViewRegistry.set(kanbanId, handle);
|
|
7
|
+
};
|
|
8
|
+
|
|
9
|
+
export const unregisterKanbanView = (kanbanId: string): void => {
|
|
10
|
+
kanbanViewRegistry.delete(kanbanId);
|
|
11
|
+
};
|
|
12
|
+
|
|
13
|
+
export const getKanbanView = (kanbanId: string): SolidKanbanViewHandle | undefined => {
|
|
14
|
+
return kanbanViewRegistry.get(kanbanId);
|
|
15
|
+
};
|
|
16
|
+
|
|
17
|
+
export const hasKanbanView = (kanbanId: string): boolean => {
|
|
18
|
+
return kanbanViewRegistry.has(kanbanId);
|
|
19
|
+
};
|
|
20
|
+
|
|
21
|
+
export const getRegisteredKanbanViewIds = (): string[] => {
|
|
22
|
+
return Array.from(kanbanViewRegistry.keys());
|
|
23
|
+
};
|
|
@@ -57,7 +57,7 @@
|
|
|
57
57
|
Keep existing predicate/rule state shape and `transformFilterRules(...)` contract unchanged.
|
|
58
58
|
- [ ] Replace remaining Prime icon class usage in filter flow with non-Prime icons.
|
|
59
59
|
- [ ] Audit `SolidFilterFields` and list filter input widgets for hidden Prime event-shape coupling.
|
|
60
|
-
- [ ] Preserve saved
|
|
60
|
+
- [ ] Preserve local-storage saved-filter application and rehydration behavior without URL state.
|
|
61
61
|
- [ ] Confirm relation filter hydration still works.
|
|
62
62
|
- [ ] Preserve `clearFilter()` and imperative `SolidListViewHandle.applyFilter(...)` behavior unchanged.
|
|
63
63
|
|
|
@@ -38,6 +38,17 @@ export type SolidListViewHandle = {
|
|
|
38
38
|
saved_filter_predicate?: any;
|
|
39
39
|
predefined_search_predicate?: any;
|
|
40
40
|
}) => void;
|
|
41
|
+
/**
|
|
42
|
+
* Returns the saved filters currently available in the list view, including
|
|
43
|
+
* any seeded/system filters supplied by the view.
|
|
44
|
+
*/
|
|
45
|
+
getSavedFilters: () => any[];
|
|
46
|
+
/**
|
|
47
|
+
* Applies the currently available saved filter with the given name using the
|
|
48
|
+
* same selection path as clicking that filter in the search UI.
|
|
49
|
+
* Returns false when no saved filter with that name is available.
|
|
50
|
+
*/
|
|
51
|
+
applySavedFilter: (name: string, variables?: Record<string, any>) => boolean;
|
|
41
52
|
/**
|
|
42
53
|
* Updates pagination state directly.
|
|
43
54
|
* Use this when a caller needs to jump to a specific page window
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SolidListView.d.ts","sourceRoot":"","sources":["../../../../src/components/core/list/SolidListView.tsx"],"names":[],"mappings":";
|
|
1
|
+
{"version":3,"file":"SolidListView.d.ts","sourceRoot":"","sources":["../../../../src/components/core/list/SolidListView.tsx"],"names":[],"mappings":";AAqEA,KAAK,mBAAmB,GAAG;IACzB,UAAU,EAAE,MAAM,CAAC;IACnB,SAAS,EAAE,MAAM,CAAC;IAClB,YAAY,CAAC,EAAE,OAAO,CAAC;IACvB,6BAA6B,CAAC,EAAE,GAAG,CAAC;IACpC,8BAA8B,CAAC,EAAE,GAAG,CAAC;IACrC,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,wBAAwB,CAAC,EAAE,MAAM,CAAC;IAClC,YAAY,CAAC,EAAE,GAAG,CAAC;IACnB,YAAY,CAAC,EAAE,GAAG,CAAC;IACnB,iBAAiB,CAAC,EAAE,GAAG,CAAC;CACzB,CAAC;AAEF,MAAM,MAAM,mBAAmB,GAAG;IAChC;;;;;OAKG;IACH,OAAO,EAAE,MAAM,IAAI,CAAC;IACpB;;;;OAIG;IACH,YAAY,EAAE,MAAM,IAAI,CAAC;IACzB;;;;;;OAMG;IACH,WAAW,EAAE,CAAC,MAAM,EAAE;QACpB,uBAAuB,CAAC,EAAE,GAAG,CAAC;QAC9B,gBAAgB,CAAC,EAAE,GAAG,CAAC;QACvB,sBAAsB,CAAC,EAAE,GAAG,CAAC;QAC7B,2BAA2B,CAAC,EAAE,GAAG,CAAC;KACnC,KAAK,IAAI,CAAC;IACX;;;OAGG;IACH,eAAe,EAAE,MAAM,GAAG,EAAE,CAAC;IAC7B;;;;OAIG;IACH,gBAAgB,EAAE,CAAC,IAAI,EAAE,MAAM,EAAE,SAAS,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,KAAK,OAAO,CAAC;IAC7E;;;;OAIG;IACH,aAAa,EAAE,CAAC,SAAS,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,KAAK,IAAI,CAAC;IAC7D;;;OAGG;IACH,OAAO,EAAE,CAAC,aAAa,EAAE,MAAM,EAAE,aAAa,EAAE,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,KAAK,IAAI,CAAC;IACpE;;;OAGG;IACH,eAAe,EAAE,CAAC,KAAK,EAAE,OAAO,KAAK,IAAI,CAAC;IAC1C;;;OAGG;IACH,QAAQ,EAAE,MAAM;QACd,KAAK,EAAE,MAAM,CAAC;QACd,IAAI,EAAE,MAAM,CAAC;QACb,SAAS,EAAE,MAAM,CAAC;QAClB,SAAS,EAAE,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC;QACtB,YAAY,EAAE,OAAO,CAAC;QACtB,OAAO,EAAE,GAAG,CAAC;QACb,gBAAgB,EAAE,GAAG,CAAC;QACtB,QAAQ,EAAE,GAAG,EAAE,CAAC;QAChB,YAAY,EAAE,MAAM,CAAC;QACrB,OAAO,EAAE,OAAO,CAAC;KAClB,CAAC;CACH,CAAC;AAEF,eAAO,MAAM,aAAa,qHA+0DxB,CAAC"}
|
|
@@ -54,7 +54,7 @@ var __spreadArray = (this && this.__spreadArray) || function (to, from, pack) {
|
|
|
54
54
|
}
|
|
55
55
|
return to.concat(ar || Array.prototype.slice.call(from));
|
|
56
56
|
};
|
|
57
|
-
import { jsx as _jsx,
|
|
57
|
+
import { jsx as _jsx, Fragment as _Fragment, jsxs as _jsxs } from "react/jsx-runtime";
|
|
58
58
|
import { forwardRef, useState, useEffect, useRef, useMemo, useImperativeHandle } from "react";
|
|
59
59
|
import { SolidDataTable as DataTable, Column } from "./SolidDataTable";
|
|
60
60
|
import qs from "qs";
|
|
@@ -87,6 +87,7 @@ import styles from "./SolidListViewWrapper.module.css";
|
|
|
87
87
|
import { isArchivedListRow } from "./columns/PublishStatusColumnDefaults";
|
|
88
88
|
import { getExtensionFunction } from "../../../helpers/registry";
|
|
89
89
|
import { useSession } from "../../../hooks/useSession";
|
|
90
|
+
import { resolveActiveUserId } from "../../../helpers/resolveActiveUserId";
|
|
90
91
|
import { ERROR_MESSAGES } from "../../../constants/error-messages";
|
|
91
92
|
import { getSettingsMap, resolveRecordClickAction } from "../../../helpers/settingsPayload";
|
|
92
93
|
import { useGetSolidSettingsQuery } from "../../../redux/api/solidSettingsApi";
|
|
@@ -735,6 +736,7 @@ export var SolidListView = forwardRef(function (params, ref) {
|
|
|
735
736
|
fileterTobeStored.custom_filter_predicate = latestFilterPredicatesRef.current.custom_filter_predicate || null;
|
|
736
737
|
fileterTobeStored.search_predicate = latestFilterPredicatesRef.current.search_predicate || null;
|
|
737
738
|
fileterTobeStored.saved_filter_predicate = latestFilterPredicatesRef.current.saved_filter_predicate || null;
|
|
739
|
+
fileterTobeStored.saved_filter_variables = latestFilterPredicatesRef.current.saved_filter_variables || {};
|
|
738
740
|
fileterTobeStored.saved_filter_id = latestFilterPredicatesRef.current.saved_filter_id || null;
|
|
739
741
|
fileterTobeStored.saved_filter_system_key = latestFilterPredicatesRef.current.saved_filter_system_key || null;
|
|
740
742
|
fileterTobeStored.saved_filter_name = latestFilterPredicatesRef.current.saved_filter_name || null;
|
|
@@ -759,7 +761,8 @@ export var SolidListView = forwardRef(function (params, ref) {
|
|
|
759
761
|
queryfilter.$and.push(filterPredicates.search_predicate);
|
|
760
762
|
}
|
|
761
763
|
if (filterPredicates.saved_filter_predicate) {
|
|
762
|
-
queryfilter.$and.push(filterPredicates.
|
|
764
|
+
queryfilter.$and.push(filterPredicates.resolved_saved_filter_predicate ||
|
|
765
|
+
resolveActiveUserId(filterPredicates.saved_filter_predicate, user === null || user === void 0 ? void 0 : user.id));
|
|
763
766
|
}
|
|
764
767
|
if (filterPredicates.predefined_search_predicate) {
|
|
765
768
|
queryfilter.$and.push(filterPredicates.predefined_search_predicate);
|
|
@@ -888,6 +891,8 @@ export var SolidListView = forwardRef(function (params, ref) {
|
|
|
888
891
|
applyFilter: function (filter) {
|
|
889
892
|
handleApplyCustomFilter(filter);
|
|
890
893
|
},
|
|
894
|
+
getSavedFilters: function () { var _a, _b, _c; return (_c = (_b = (_a = solidGlobalSearchElementRef.current) === null || _a === void 0 ? void 0 : _a.getSavedFilters) === null || _b === void 0 ? void 0 : _b.call(_a)) !== null && _c !== void 0 ? _c : []; },
|
|
895
|
+
applySavedFilter: function (name, variables) { var _a, _b, _c; return (_c = (_b = (_a = solidGlobalSearchElementRef.current) === null || _a === void 0 ? void 0 : _a.applySavedFilterByName) === null || _b === void 0 ? void 0 : _b.call(_a, name, variables)) !== null && _c !== void 0 ? _c : false; },
|
|
891
896
|
setPagination: function (nextFirst, nextRows) {
|
|
892
897
|
setFirst(nextFirst);
|
|
893
898
|
setRows(nextRows);
|
|
@@ -1240,7 +1245,7 @@ export var SolidListView = forwardRef(function (params, ref) {
|
|
|
1240
1245
|
// }
|
|
1241
1246
|
// };
|
|
1242
1247
|
return (_jsxs("div", { className: "page-parent-wrapper ".concat(isEmbeddedList ? "solid-list-page-wrapper-embedded" : "solid-list-page-wrapper", " flex ").concat(isEmbeddedList ? "min-h-0 overflow-visible" : "h-full min-h-0 overflow-hidden"), children: [_jsx("div", { className: "solid-list-content flex flex-col ".concat(isEmbeddedList ? "min-h-0" : "flex-grow-1", " ").concat(styles.ListContentWrapper), children: _jsxs("div", { className: "solid-list-surface flex flex-col min-h-0 ".concat(isEmbeddedList ? "" : "flex-1"), children: [solidListViewInitialMetaData &&
|
|
1243
|
-
_jsx("div", { className: "page-header solid-list-toolbar flex-col lg:flex-row", children: _jsxs("div", { className: "flex w-full flex-col-reverse lg:flex-row lg:items-center items-end", children: [_jsx("div", { className: "solid-list-toolbar-left flex w-full items-center gap-3 lg:min-w-0 lg:flex-1", children: params.embeded === false && (_jsx("div", { className: "".concat(showGlobalSearchElement ? "flex" : "hidden
|
|
1248
|
+
_jsx("div", { className: "page-header solid-list-toolbar flex-col lg:flex-row", children: _jsxs("div", { className: "flex w-full flex-col-reverse lg:flex-row lg:items-center items-end", children: [_jsx("div", { className: "solid-list-toolbar-left flex w-full items-center gap-3 lg:min-w-0 lg:flex-1", children: params.embeded === false && (_jsxs(_Fragment, { children: [_jsx("div", { className: "max-[576px]:hidden sm:hidden lg:flex w-full mt-3 lg:mt-0 lg:min-w-0", children: _jsx(SolidGlobalSearchElement, { viewType: "list", showSaveFilterPopup: showSaveFilterPopup, setShowSaveFilterPopup: setShowSaveFilterPopup, ref: solidGlobalSearchElementRef, viewData: solidListViewMetaData, handleApplyCustomFilter: handleApplyCustomFilter, filterPredicates: filterPredicates, definedFilters: definedFilters, onRemoveDefinedFilter: removeDefinedFilter, onApplyDefinedFilter: applyDefinedFilter }, params.modelName) }), _jsx("div", { className: "".concat(showGlobalSearchElement ? "lg:flex" : "hidden", " lg:hidden mt-3 lg:mt-0 w-full lg:min-w-0"), children: _jsx(SolidGlobalSearchElement, { viewType: "list", showSaveFilterPopup: showSaveFilterPopup, setShowSaveFilterPopup: setShowSaveFilterPopup, ref: solidGlobalSearchElementRef, viewData: solidListViewMetaData, handleApplyCustomFilter: handleApplyCustomFilter, filterPredicates: filterPredicates, definedFilters: definedFilters, onRemoveDefinedFilter: removeDefinedFilter, onApplyDefinedFilter: applyDefinedFilter }, params.modelName) })] })) }), _jsxs("div", { className: "flex items-center solid-header-buttons-wrapper solid-list-toolbar-actions lg:ml-auto", children: [_jsx(SolidHeaderRequestStatus, { label: headerRequestStatusLabel }), params.embeded === false && (_jsx("div", { className: "solid-list-search-toggle", children: _jsx(SolidButton, { type: "button", size: "small", variant: "outline", className: "solid-icon-button", onClick: function () { return setShowGlobalSearchElement(!showGlobalSearchElement); }, leftIcon: _jsx(Search, { size: 14 }) }) })), _jsx("div", { className: "solid-header-buttons-wrapper hidden items-center lg:flex", children: (_0 = visibleHeaderButtons === null || visibleHeaderButtons === void 0 ? void 0 : visibleHeaderButtons.filter(function (rb) { return rb.attrs.actionInContextMenu != true; })) === null || _0 === void 0 ? void 0 : _0.map(function (button, index) { return (_jsx(SolidListViewHeaderButton, { button: button, params: params, solidListViewMetaData: solidListViewMetaData, handleCustomButtonClick: handleCustomButtonClick, selectedRecords: selectedRecords, filters: filters }, index)); }) }), actionsAllowed.includes("".concat(permissionExpression(params.modelName, 'create'))) &&
|
|
1244
1249
|
((_1 = solidListViewLayout === null || solidListViewLayout === void 0 ? void 0 : solidListViewLayout.attrs) === null || _1 === void 0 ? void 0 : _1.create) !== false &&
|
|
1245
1250
|
params.embeded !== true &&
|
|
1246
1251
|
((_4 = (_3 = (_2 = solidListViewMetaData === null || solidListViewMetaData === void 0 ? void 0 : solidListViewMetaData.data) === null || _2 === void 0 ? void 0 : _2.solidView) === null || _3 === void 0 ? void 0 : _3.layout) === null || _4 === void 0 ? void 0 : _4.attrs.showDefaultAddButton) !== false && (_jsx(SolidCreateButton, { createButtonUrl: createButtonUrl, createActionQueryParams: createActionQueryParams, solidListViewLayout: solidListViewLayout, responsiveIconOnly: true })), actionsAllowed.includes("".concat(permissionExpression(params.modelName, 'create'))) &&
|
|
@@ -1340,12 +1345,12 @@ export var SolidListView = forwardRef(function (params, ref) {
|
|
|
1340
1345
|
setDeleteEntity(true);
|
|
1341
1346
|
}
|
|
1342
1347
|
} })) }));
|
|
1343
|
-
} })), hasAnyContextMenuActions && (_jsx(Column, { frozen: true, alignFrozen: "right", body: function (rowData) {
|
|
1348
|
+
} })), hasAnyContextMenuActions && (_jsx(Column, { frozen: true, alignFrozen: "right", className: "solid-data-table-row-action-cell", body: function (rowData) {
|
|
1344
1349
|
var _a;
|
|
1345
|
-
return (rowData === null || rowData === void 0 ? void 0 : rowData.deletedAt) ? (_jsx("div", { className: "flex justify-content-center align-items-center", "data-no-row-click": "true", children: _jsx("
|
|
1350
|
+
return (rowData === null || rowData === void 0 ? void 0 : rowData.deletedAt) ? (_jsx("div", { className: "flex justify-content-center align-items-center", "data-no-row-click": "true", children: _jsx("button", { type: "button", onClick: function (event) {
|
|
1346
1351
|
event.stopPropagation();
|
|
1347
1352
|
recoverById(rowData.id);
|
|
1348
|
-
}, className: "retrieve-button solid-row-menu-trigger", children: _jsx(RotateCcw, { size: 14, className: styles.retrieveIcon }) }) })) : (_jsx(_Fragment, { children: ((_a = solidListViewLayout === null || solidListViewLayout === void 0 ? void 0 : solidListViewLayout.attrs) === null || _a === void 0 ? void 0 : _a.showRowContextMenu) !== false &&
|
|
1353
|
+
}, className: "retrieve-button solid-row-menu-trigger", "aria-label": "Recover record", title: "Recover", children: _jsx(RotateCcw, { size: 14, className: styles.retrieveIcon }) }) })) : (_jsx(_Fragment, { children: ((_a = solidListViewLayout === null || solidListViewLayout === void 0 ? void 0 : solidListViewLayout.attrs) === null || _a === void 0 ? void 0 : _a.showRowContextMenu) !== false &&
|
|
1349
1354
|
!isArchivedListRow(isDraftPublishWorkflowEnabled, rowData) && (_jsx("div", { className: "flex justify-end", "data-no-row-click": "true", children: _jsx(SolidListViewRowActionsMenu, { rowData: rowData, hasEditInContextMenu: hasEditInContextMenu, hasDeleteInContextMenu: hasDeleteInContextMenu, hasCustomContextMenuButtons: hasCustomContextMenuButtons, solidListViewLayout: solidListViewLayout, solidListViewMetaData: solidListViewMetaData, params: params, handleCustomButtonClick: handleCustomButtonClick, contentClassName: styles.rowActionsOverlay, onSelectRow: function (selectedRow) {
|
|
1350
1355
|
setSelectedSolidViewData(selectedRow);
|
|
1351
1356
|
}, onEdit: function (selectedRow) {
|