@solidxai/core-ui 0.1.13-beta.3 → 0.1.13-beta.5

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 (162) hide show
  1. package/dist/components/auth/AuthTabs.d.ts.map +1 -1
  2. package/dist/components/auth/AuthTabs.js +1 -1
  3. package/dist/components/auth/AuthTabs.js.map +1 -1
  4. package/dist/components/auth/AuthTabs.tsx +1 -0
  5. package/dist/components/auth/SolidChangeForcePassword.d.ts.map +1 -1
  6. package/dist/components/auth/SolidChangeForcePassword.js +2 -2
  7. package/dist/components/auth/SolidChangeForcePassword.js.map +1 -1
  8. package/dist/components/auth/SolidChangeForcePassword.tsx +9 -8
  9. package/dist/components/common/SettingsComponent.d.ts.map +1 -1
  10. package/dist/components/common/SettingsComponent.js +1 -1
  11. package/dist/components/common/SettingsComponent.js.map +1 -1
  12. package/dist/components/common/SettingsComponent.tsx +1 -0
  13. package/dist/components/common/SolidFieldTooltip.d.ts.map +1 -1
  14. package/dist/components/common/SolidFieldTooltip.js +1 -33
  15. package/dist/components/common/SolidFieldTooltip.js.map +1 -1
  16. package/dist/components/common/SolidFieldTooltip.tsx +8 -64
  17. package/dist/components/common/SolidMaterialSymbol.d.ts +1 -1
  18. package/dist/components/common/SolidMaterialSymbol.d.ts.map +1 -1
  19. package/dist/components/common/SolidMaterialSymbol.js +6 -37
  20. package/dist/components/common/SolidMaterialSymbol.js.map +1 -1
  21. package/dist/components/common/SolidMaterialSymbol.tsx +6 -54
  22. package/dist/components/common/SolidSettings/LlmSettings/AiModelConfigTab.d.ts.map +1 -1
  23. package/dist/components/common/SolidSettings/LlmSettings/AiModelConfigTab.js +2 -2
  24. package/dist/components/common/SolidSettings/LlmSettings/AiModelConfigTab.js.map +1 -1
  25. package/dist/components/common/SolidSettings/LlmSettings/AiModelConfigTab.tsx +2 -0
  26. package/dist/components/core/card/CardItem.d.ts.map +1 -1
  27. package/dist/components/core/card/CardItem.js +1 -1
  28. package/dist/components/core/card/CardItem.js.map +1 -1
  29. package/dist/components/core/card/CardItem.tsx +16 -14
  30. package/dist/components/core/card/SolidCardView.d.ts.map +1 -1
  31. package/dist/components/core/card/SolidCardView.js +75 -51
  32. package/dist/components/core/card/SolidCardView.js.map +1 -1
  33. package/dist/components/core/card/SolidCardView.tsx +61 -35
  34. package/dist/components/core/card/SolidCardViewConfigure.d.ts.map +1 -1
  35. package/dist/components/core/card/SolidCardViewConfigure.js +3 -7
  36. package/dist/components/core/card/SolidCardViewConfigure.js.map +1 -1
  37. package/dist/components/core/card/SolidCardViewConfigure.tsx +3 -9
  38. package/dist/components/core/common/SolidAccountSettings/SolidAccountSettings.module.css +99 -0
  39. package/dist/components/core/common/SolidAccountSettings/SolidVersionInfo.d.ts.map +1 -1
  40. package/dist/components/core/common/SolidAccountSettings/SolidVersionInfo.js +76 -5
  41. package/dist/components/core/common/SolidAccountSettings/SolidVersionInfo.js.map +1 -1
  42. package/dist/components/core/common/SolidAccountSettings/SolidVersionInfo.tsx +39 -4
  43. package/dist/components/core/common/SolidGlobalSearchElement.d.ts.map +1 -1
  44. package/dist/components/core/common/SolidGlobalSearchElement.js +172 -124
  45. package/dist/components/core/common/SolidGlobalSearchElement.js.map +1 -1
  46. package/dist/components/core/common/SolidGlobalSearchElement.tsx +73 -84
  47. package/dist/components/core/common/globalSearchPersistence.d.ts +3 -0
  48. package/dist/components/core/common/globalSearchPersistence.d.ts.map +1 -1
  49. package/dist/components/core/common/globalSearchPersistence.js +33 -24
  50. package/dist/components/core/common/globalSearchPersistence.js.map +1 -1
  51. package/dist/components/core/common/globalSearchPersistence.ts +34 -27
  52. package/dist/components/core/filter/fields/SolidMediaMultipleField.js +2 -2
  53. package/dist/components/core/filter/fields/SolidMediaMultipleField.js.map +1 -1
  54. package/dist/components/core/filter/fields/SolidMediaMultipleField.tsx +2 -2
  55. package/dist/components/core/filter/fields/SolidMediaSingleField.js +2 -2
  56. package/dist/components/core/filter/fields/SolidMediaSingleField.js.map +1 -1
  57. package/dist/components/core/filter/fields/SolidMediaSingleField.tsx +2 -2
  58. package/dist/components/core/filter/fields/SolidShortTextField.js +2 -2
  59. package/dist/components/core/filter/fields/SolidShortTextField.js.map +1 -1
  60. package/dist/components/core/filter/fields/SolidShortTextField.tsx +2 -2
  61. package/dist/components/core/form/SolidFormView.d.ts.map +1 -1
  62. package/dist/components/core/form/SolidFormView.js +2 -10
  63. package/dist/components/core/form/SolidFormView.js.map +1 -1
  64. package/dist/components/core/form/SolidFormView.tsx +2 -10
  65. package/dist/components/core/kanban/KanbanCard.d.ts.map +1 -1
  66. package/dist/components/core/kanban/KanbanCard.js +1 -1
  67. package/dist/components/core/kanban/KanbanCard.js.map +1 -1
  68. package/dist/components/core/kanban/KanbanCard.tsx +18 -16
  69. package/dist/components/core/kanban/SolidKanbanView.d.ts.map +1 -1
  70. package/dist/components/core/kanban/SolidKanbanView.js +73 -59
  71. package/dist/components/core/kanban/SolidKanbanView.js.map +1 -1
  72. package/dist/components/core/kanban/SolidKanbanView.tsx +57 -22
  73. package/dist/components/core/kanban/SolidKanbanViewConfigure.d.ts +1 -1
  74. package/dist/components/core/kanban/SolidKanbanViewConfigure.d.ts.map +1 -1
  75. package/dist/components/core/kanban/SolidKanbanViewConfigure.js +14 -9
  76. package/dist/components/core/kanban/SolidKanbanViewConfigure.js.map +1 -1
  77. package/dist/components/core/kanban/SolidKanbanViewConfigure.tsx +38 -9
  78. package/dist/components/core/list/SolidEmptyListViewPlaceholder.d.ts.map +1 -1
  79. package/dist/components/core/list/SolidEmptyListViewPlaceholder.js +2 -3
  80. package/dist/components/core/list/SolidEmptyListViewPlaceholder.js.map +1 -1
  81. package/dist/components/core/list/SolidEmptyListViewPlaceholder.tsx +2 -3
  82. package/dist/components/core/list/SolidListView.d.ts.map +1 -1
  83. package/dist/components/core/list/SolidListView.js +8 -16
  84. package/dist/components/core/list/SolidListView.js.map +1 -1
  85. package/dist/components/core/list/SolidListView.tsx +9 -15
  86. package/dist/components/core/list/SolidListViewConfigure.d.ts.map +1 -1
  87. package/dist/components/core/list/SolidListViewConfigure.js +22 -16
  88. package/dist/components/core/list/SolidListViewConfigure.js.map +1 -1
  89. package/dist/components/core/list/SolidListViewConfigure.tsx +32 -11
  90. package/dist/components/core/list/SolidListViewHeaderContextMenuButton.d.ts +1 -1
  91. package/dist/components/core/list/SolidListViewHeaderContextMenuButton.d.ts.map +1 -1
  92. package/dist/components/core/list/SolidListViewHeaderContextMenuButton.js +3 -1
  93. package/dist/components/core/list/SolidListViewHeaderContextMenuButton.js.map +1 -1
  94. package/dist/components/core/list/SolidListViewHeaderContextMenuButton.tsx +3 -1
  95. package/dist/components/core/list/columns/SolidMediaMultipleColumn.d.ts.map +1 -1
  96. package/dist/components/core/list/columns/SolidMediaMultipleColumn.js +7 -0
  97. package/dist/components/core/list/columns/SolidMediaMultipleColumn.js.map +1 -1
  98. package/dist/components/core/list/columns/SolidMediaMultipleColumn.tsx +5 -0
  99. package/dist/components/core/list/columns/SolidMediaSingleColumn.d.ts.map +1 -1
  100. package/dist/components/core/list/columns/SolidMediaSingleColumn.js +3 -0
  101. package/dist/components/core/list/columns/SolidMediaSingleColumn.js.map +1 -1
  102. package/dist/components/core/list/columns/SolidMediaSingleColumn.tsx +2 -0
  103. package/dist/components/core/list/widgets/SolidShortTextFieldImageRenderModeWidget.d.ts.map +1 -1
  104. package/dist/components/core/list/widgets/SolidShortTextFieldImageRenderModeWidget.js +3 -0
  105. package/dist/components/core/list/widgets/SolidShortTextFieldImageRenderModeWidget.js.map +1 -1
  106. package/dist/components/core/list/widgets/SolidShortTextFieldImageRenderModeWidget.tsx +2 -0
  107. package/dist/components/core/model/CreateModel.css +10 -0
  108. package/dist/components/core/model/FieldMetaDataForm.css +10 -0
  109. package/dist/components/core/model/FieldMetaDataForm.js +8 -8
  110. package/dist/components/core/model/FieldMetaDataForm.js.map +1 -1
  111. package/dist/components/core/model/FieldMetaDataForm.tsx +13 -13
  112. package/dist/components/core/module/ModuleMetadataExplorer.css +23 -0
  113. package/dist/components/core/module/ModuleMetadataExplorer.d.ts.map +1 -1
  114. package/dist/components/core/module/ModuleMetadataExplorer.js +1 -1
  115. package/dist/components/core/module/ModuleMetadataExplorer.js.map +1 -1
  116. package/dist/components/core/module/ModuleMetadataExplorer.tsx +9 -0
  117. package/dist/components/core/tree/SolidTreeView.d.ts.map +1 -1
  118. package/dist/components/core/tree/SolidTreeView.js +251 -152
  119. package/dist/components/core/tree/SolidTreeView.js.map +1 -1
  120. package/dist/components/core/tree/SolidTreeView.tsx +222 -106
  121. package/dist/components/core/users/ApiKeysTab/GenerateApiKeyModal.d.ts.map +1 -1
  122. package/dist/components/core/users/ApiKeysTab/GenerateApiKeyModal.js +1 -1
  123. package/dist/components/core/users/ApiKeysTab/GenerateApiKeyModal.js.map +1 -1
  124. package/dist/components/core/users/ApiKeysTab/GenerateApiKeyModal.tsx +1 -0
  125. package/dist/components/layout/AdminHeaderActions.js +6 -13
  126. package/dist/components/layout/AdminHeaderActions.js.map +1 -1
  127. package/dist/components/layout/AdminHeaderActions.tsx +11 -11
  128. package/dist/components/layout/AdminLayout.d.ts.map +1 -1
  129. package/dist/components/layout/AdminLayout.js +2 -2
  130. package/dist/components/layout/AdminLayout.js.map +1 -1
  131. package/dist/components/layout/AdminLayout.tsx +5 -4
  132. package/dist/components/layout/AppSidebar.d.ts.map +1 -1
  133. package/dist/components/layout/AppSidebar.js +17 -2
  134. package/dist/components/layout/AppSidebar.js.map +1 -1
  135. package/dist/components/layout/AppSidebar.tsx +21 -2
  136. package/dist/components/shad-cn-ui/SolidDatePicker.d.ts +1 -1
  137. package/dist/components/shad-cn-ui/SolidDatePicker.d.ts.map +1 -1
  138. package/dist/components/shad-cn-ui/SolidDatePicker.js +35 -3
  139. package/dist/components/shad-cn-ui/SolidDatePicker.js.map +1 -1
  140. package/dist/components/shad-cn-ui/SolidDatePicker.tsx +84 -0
  141. package/dist/components/shad-cn-ui/SolidTooltip.d.ts.map +1 -1
  142. package/dist/components/shad-cn-ui/SolidTooltip.js +55 -2
  143. package/dist/components/shad-cn-ui/SolidTooltip.js.map +1 -1
  144. package/dist/components/shad-cn-ui/SolidTooltip.tsx +95 -1
  145. package/dist/helpers/permissions.d.ts +13 -0
  146. package/dist/helpers/permissions.d.ts.map +1 -1
  147. package/dist/helpers/permissions.js +79 -0
  148. package/dist/helpers/permissions.js.map +1 -1
  149. package/dist/helpers/permissions.ts +92 -1
  150. package/dist/resources/globals.css +109 -1
  151. package/dist/resources/solid-custom.css +53 -3
  152. package/dist/resources/solid-tailwind-generated.css +1 -1
  153. package/dist/routes/pages/admin/core/DashboardPage.d.ts.map +1 -1
  154. package/dist/routes/pages/admin/core/DashboardPage.js +2 -2
  155. package/dist/routes/pages/admin/core/DashboardPage.js.map +1 -1
  156. package/dist/routes/pages/admin/core/DashboardPage.tsx +2 -0
  157. package/dist/routes/pages/admin/core/DatasourceIntrospectionPage.d.ts.map +1 -1
  158. package/dist/routes/pages/admin/core/DatasourceIntrospectionPage.js +1 -1
  159. package/dist/routes/pages/admin/core/DatasourceIntrospectionPage.js.map +1 -1
  160. package/dist/routes/pages/admin/core/DatasourceIntrospectionPage.tsx +1 -0
  161. package/dist/types/css-modules.d.ts +2 -0
  162. package/package.json +1 -1
@@ -64,7 +64,7 @@ import { useGetSolidViewLayoutQuery } from "../../../redux/api/solidViewApi";
64
64
  import qs from "qs";
65
65
  import { useSearchParams } from "../../../hooks/useSearchParams";
66
66
  import { SolidGlobalSearchElement } from "../common/SolidGlobalSearchElement";
67
- import { permissionExpression } from "../../../helpers/permissions";
67
+ import { getCollectionViewPermissionNames, permissionExpression } from "../../../helpers/permissions";
68
68
  import { SolidCreateButton } from "../common/SolidCreateButton";
69
69
  import { createSolidEntityApi } from "../../../redux/api/solidEntityApi";
70
70
  import { SolidListViewColumn } from "../list/SolidListViewColumn";
@@ -76,23 +76,27 @@ import CompactImage from '../../../resources/images/layout/images/compact.png';
76
76
  import CozyImage from '../../../resources/images/layout/images/cozy.png';
77
77
  import ComfortableImage from '../../../resources/images/layout/images/comfortable.png';
78
78
  import { ERROR_MESSAGES } from "../../../constants/error-messages";
79
- import { getFilterObjectFromLocalStorage, hasStoredFilterPredicates, setFilterObjectToLocalStorage } from "../common/globalSearchPersistence";
79
+ import { getFilterObjectFromLocalStorage, hasStoredFilterPredicates, hasStoredSearchUiState, setFilterObjectToLocalStorage } from "../common/globalSearchPersistence";
80
80
  import { getExtensionFunction } from "../../../helpers/registry";
81
+ import { getMediaTypeFromUrl } from "../../../helpers/mediaType";
81
82
  import { useRouter } from "../../../hooks/useRouter";
82
83
  import { normalizeSolidListTreeKanbanActionPath } from "../../../helpers/routePaths";
83
84
  import { usePathname } from "../../../hooks/usePathname";
84
85
  import { useHandleListCustomButtonClick } from "../../../components/common/useHandleListCustomButtonClick";
85
- import { SolidButton, SolidDialog, SolidDialogBody, SolidDialogDescription, SolidDialogFooter, SolidDialogHeader, SolidDialogSeparator, SolidDialogTitle, SolidDropdownMenu, SolidDropdownMenuContent, SolidDropdownMenuItem, SolidDropdownMenuSeparator, SolidDropdownMenuTrigger, SolidSelect } from "../../shad-cn-ui";
86
+ import { isButtonVisibleInCurrentEnv } from "../../../helpers/buttonEnvironment";
87
+ import { SolidButton, SolidConfirmDialog, SolidDialog, SolidDialogBody, SolidDialogDescription, SolidDialogFooter, SolidDialogHeader, SolidDialogSeparator, SolidDialogTitle, SolidDropdownMenu, SolidDropdownMenuContent, SolidDropdownMenuItem, SolidDropdownMenuSeparator, SolidDropdownMenuTrigger, SolidSelect } from "../../shad-cn-ui";
86
88
  import { SolidHeaderRequestStatus } from "../../common/SolidHeaderRequestStatus";
89
+ import { SolidLightbox } from "../../shad-cn-ui/SolidLightbox";
87
90
  import { storeCurrentModelViewContext } from "../../../helpers/modelViewPersistence";
88
91
  import { getRelationDisplayText } from "../../../helpers/relationDisplay";
89
92
  import { Column as SolidTreeColumn, SolidTreeTable } from "./SolidTreeTable";
93
+ import { SolidListViewHeaderButton } from "../list/SolidListViewHeaderButton";
90
94
  var DEFAULT_PAGE_SIZE = 25;
91
95
  var DEFAULT_PAGE_SIZE_OPTIONS = [10, 25, 50, 100];
92
96
  var resolveDefaultPageSize = function (options) { return (options.includes(DEFAULT_PAGE_SIZE) ? DEFAULT_PAGE_SIZE : options[0]); };
93
97
  // ─── Component ────────────────────────────────────────────────────────────────
94
98
  export var SolidTreeView = forwardRef(function (params, ref) {
95
- var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m, _o, _p, _q, _r, _s, _t, _u, _v, _w, _x, _y, _z, _0, _1, _2;
99
+ var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m, _o, _p, _q, _r, _s, _t, _u, _v, _w, _x, _y, _z, _0, _1;
96
100
  var dispatch = useDispatch();
97
101
  var visibleNavbar = useSelector(function (state) { var _a; return (_a = state.navbarState) === null || _a === void 0 ? void 0 : _a.visibleNavbar; });
98
102
  var searchParams = useSearchParams();
@@ -101,45 +105,63 @@ export var SolidTreeView = forwardRef(function (params, ref) {
101
105
  var user = (_a = session === null || session === void 0 ? void 0 : session.data) === null || _a === void 0 ? void 0 : _a.user;
102
106
  var pathname = usePathname();
103
107
  var solidGlobalSearchElementRef = useRef(null);
104
- var _3 = useState(false), showSaveFilterPopup = _3[0], setShowSaveFilterPopup = _3[1];
105
- var _4 = useState(false), showGlobalSearchElement = _4[0], setShowGlobalSearchElement = _4[1];
106
- var _5 = useState([]), toPopulate = _5[0], setToPopulate = _5[1];
107
- var _6 = useState([]), toPopulateMedia = _6[0], setToPopulateMedia = _6[1];
108
- var _7 = useState([]), actionsAllowed = _7[0], setActionsAllowed = _7[1];
109
- var _8 = useState({}), createActionQueryParams = _8[0], setCreateActionQueryParams = _8[1];
110
- var _9 = useState({}), editActionQueryParams = _9[0], setEditActionQueryParams = _9[1];
111
- var _10 = useState([]), selectedRecords = _10[0], setSelectedRecords = _10[1];
112
- var _11 = useState([]), selectedRecoverRecords = _11[0], setSelectedRecoverRecords = _11[1];
113
- var _12 = useState([]), groupingRules = _12[0], setGroupingRules = _12[1];
114
- var _13 = useState([]), aggregationRules = _13[0], setAggregationRules = _13[1];
115
- var _14 = useState([]), treeNodes = _14[0], setTreeNodes = _14[1];
116
- var _15 = useState({}), selectedNodeKeys = _15[0], setSelectedNodeKeys = _15[1];
117
- var _16 = useState({}), expandedKeys = _16[0], setExpandedKeys = _16[1];
118
- var _17 = useState(false), treeLoading = _17[0], setTreeLoading = _17[1];
119
- var _18 = useState(""), sortField = _18[0], setSortField = _18[1];
120
- var _19 = useState(0), sortOrder = _19[0], setSortOrder = _19[1];
121
- var _20 = useState([10, 25, 50]), pageSizeOptions = _20[0], setPageSizeOptions = _20[1];
122
- var _21 = useState(25), globalLimit = _21[0], setGlobalLimit = _21[1];
123
- var _22 = useState(false), isDeleteRecordsDialogVisible = _22[0], setDeleteRecordsDialogVisible = _22[1];
124
- var _23 = useState(false), isRecoverDialogVisible = _23[0], setRecoverDialogVisible = _23[1];
125
- var _24 = useState(false), showArchived = _24[0], setShowArchived = _24[1];
126
- var _25 = useState(), createButtonUrl = _25[0], setCreateButtonUrl = _25[1];
127
- var _26 = useState(), editButtonUrl = _26[0], setEditButtonUrl = _26[1];
128
- var _27 = useState(false), isDraftPublishWorkflowEnabled = _27[0], setIsDraftPublishWorkflowEnabled = _27[1];
108
+ var _2 = useState(false), showSaveFilterPopup = _2[0], setShowSaveFilterPopup = _2[1];
109
+ var _3 = useState(false), showGlobalSearchElement = _3[0], setShowGlobalSearchElement = _3[1];
110
+ var _4 = useState([]), toPopulate = _4[0], setToPopulate = _4[1];
111
+ var _5 = useState([]), toPopulateMedia = _5[0], setToPopulateMedia = _5[1];
112
+ var _6 = useState([]), actionsAllowed = _6[0], setActionsAllowed = _6[1];
113
+ var _7 = useState({}), createActionQueryParams = _7[0], setCreateActionQueryParams = _7[1];
114
+ var _8 = useState({}), editActionQueryParams = _8[0], setEditActionQueryParams = _8[1];
115
+ var _9 = useState([]), selectedRecords = _9[0], setSelectedRecords = _9[1];
116
+ var _10 = useState([]), selectedRecoverRecords = _10[0], setSelectedRecoverRecords = _10[1];
117
+ var _11 = useState([]), groupingRules = _11[0], setGroupingRules = _11[1];
118
+ var _12 = useState([]), aggregationRules = _12[0], setAggregationRules = _12[1];
119
+ var _13 = useState([]), treeNodes = _13[0], setTreeNodes = _13[1];
120
+ var _14 = useState({}), selectedNodeKeys = _14[0], setSelectedNodeKeys = _14[1];
121
+ var _15 = useState({}), expandedKeys = _15[0], setExpandedKeys = _15[1];
122
+ var _16 = useState(false), treeLoading = _16[0], setTreeLoading = _16[1];
123
+ var _17 = useState(""), sortField = _17[0], setSortField = _17[1];
124
+ var _18 = useState(0), sortOrder = _18[0], setSortOrder = _18[1];
125
+ var _19 = useState([10, 25, 50]), pageSizeOptions = _19[0], setPageSizeOptions = _19[1];
126
+ var _20 = useState(25), globalLimit = _20[0], setGlobalLimit = _20[1];
127
+ var _21 = useState(false), isDeleteRecordsDialogVisible = _21[0], setDeleteRecordsDialogVisible = _21[1];
128
+ var _22 = useState(false), isRecoverDialogVisible = _22[0], setRecoverDialogVisible = _22[1];
129
+ var _23 = useState(false), showArchived = _23[0], setShowArchived = _23[1];
130
+ var _24 = useState(false), openLightbox = _24[0], setOpenLightbox = _24[1];
131
+ var _25 = useState([]), lightboxUrls = _25[0], setLightboxUrls = _25[1];
132
+ var _26 = useState(), createButtonUrl = _26[0], setCreateButtonUrl = _26[1];
133
+ var _27 = useState(), editButtonUrl = _27[0], setEditButtonUrl = _27[1];
134
+ var _28 = useState(false), isDraftPublishWorkflowEnabled = _28[0], setIsDraftPublishWorkflowEnabled = _28[1];
129
135
  var sizeOptions = [
130
136
  { label: "Compact", value: "small", image: CompactImage },
131
137
  { label: "Cozy", value: "normal", image: CozyImage },
132
138
  { label: "Comfortable", value: "large", image: ComfortableImage },
133
139
  ];
134
- var _28 = useState(sizeOptions[1].value), size = _28[0], setSize = _28[1];
135
- var _29 = useState([]), viewModes = _29[0], setViewModes = _29[1];
140
+ var _29 = useState(sizeOptions[1].value), size = _29[0], setSize = _29[1];
141
+ var _30 = useState([]), viewModes = _30[0], setViewModes = _30[1];
142
+ var lightboxSlides = Array.isArray(lightboxUrls)
143
+ ? lightboxUrls
144
+ .map(function (item) {
145
+ var src = (item === null || item === void 0 ? void 0 : item.src) || (item === null || item === void 0 ? void 0 : item.downloadUrl) || "";
146
+ if (!src) {
147
+ return null;
148
+ }
149
+ var mediaType = getMediaTypeFromUrl(src);
150
+ var slide = { src: src };
151
+ if (mediaType !== "image") {
152
+ slide.type = mediaType;
153
+ }
154
+ return slide;
155
+ })
156
+ .filter(function (slide) { return !!slide; })
157
+ : [];
136
158
  var headerRequestStatusLabel = treeLoading ? "Loading..." : null;
137
159
  // ── Pagination state ──────────────────────────────────────────────────────
138
160
  /**
139
161
  * Key: "root" for top-level group list; node.key (string) for any other node.
140
162
  * Value: { offset, limit, total }
141
163
  */
142
- var _30 = useState({}), paginationMap = _30[0], setPaginationMap = _30[1];
164
+ var _31 = useState({}), paginationMap = _31[0], setPaginationMap = _31[1];
143
165
  var getPagination = function (key, map) {
144
166
  var _a;
145
167
  if (map === void 0) { map = paginationMap; }
@@ -168,8 +190,8 @@ export var SolidTreeView = forwardRef(function (params, ref) {
168
190
  var entityApi = createSolidEntityApi(params.modelName);
169
191
  var useCreateSolidEntityMutation = entityApi.useCreateSolidEntityMutation, useDeleteMultipleSolidEntitiesMutation = entityApi.useDeleteMultipleSolidEntitiesMutation, useDeleteSolidEntityMutation = entityApi.useDeleteSolidEntityMutation, useGetSolidEntitiesQuery = entityApi.useGetSolidEntitiesQuery, useGetSolidEntityByIdQuery = entityApi.useGetSolidEntityByIdQuery, useLazyGetSolidEntitiesQuery = entityApi.useLazyGetSolidEntitiesQuery, useLazyGetSolidEntityByIdQuery = entityApi.useLazyGetSolidEntityByIdQuery, usePrefetch = entityApi.usePrefetch, useUpdateSolidEntityMutation = entityApi.useUpdateSolidEntityMutation, useRecoverSolidEntityByIdQuery = entityApi.useRecoverSolidEntityByIdQuery, useLazyRecoverSolidEntityByIdQuery = entityApi.useLazyRecoverSolidEntityByIdQuery, useRecoverSolidEntityMutation = entityApi.useRecoverSolidEntityMutation;
170
192
  var triggerGetSolidEntities = useLazyGetSolidEntitiesQuery()[0];
171
- var _31 = useLazyRecoverSolidEntityByIdQuery(), triggerRecoverSolidEntitiesById = _31[0], _32 = _31[1], recoverByIdData = _32.data, recoverByIdIsLoading = _32.isLoading, recoverByIdError = _32.error, recoverByIdIsError = _32.isError, recoverByIdIsSuccess = _32.isSuccess;
172
- var _33 = useRecoverSolidEntityMutation(), triggerRecoverSolidEntities = _33[0], _34 = _33[1], recoverByData = _34.data, recoverByIsLoading = _34.isLoading, recoverError = _34.error, recoverIsError = _34.isError, recoverByIsSuccess = _34.isSuccess;
193
+ var _32 = useLazyRecoverSolidEntityByIdQuery(), triggerRecoverSolidEntitiesById = _32[0], _33 = _32[1], recoverByIdData = _33.data, recoverByIdIsLoading = _33.isLoading, recoverByIdError = _33.error, recoverByIdIsError = _33.isError, recoverByIdIsSuccess = _33.isSuccess;
194
+ var _34 = useRecoverSolidEntityMutation(), triggerRecoverSolidEntities = _34[0], _35 = _34[1], recoverByData = _35.data, recoverByIsLoading = _35.isLoading, recoverError = _35.error, recoverIsError = _35.isError, recoverByIsSuccess = _35.isSuccess;
173
195
  var treeViewMetaDataQs = qs.stringify({
174
196
  modelName: params.modelName,
175
197
  moduleName: params.moduleName,
@@ -189,19 +211,7 @@ export var SolidTreeView = forwardRef(function (params, ref) {
189
211
  switch (_a.label) {
190
212
  case 0:
191
213
  if (!params.modelName) return [3 /*break*/, 2];
192
- permissionNames = [
193
- permissionExpression(params.modelName, 'create'),
194
- permissionExpression(params.modelName, 'delete'),
195
- permissionExpression(params.modelName, 'update'),
196
- permissionExpression(params.modelName, 'deleteMany'),
197
- permissionExpression(params.modelName, 'findOne'),
198
- permissionExpression(params.modelName, 'findMany'),
199
- permissionExpression(params.modelName, 'insertMany'),
200
- permissionExpression('importTransaction', 'create'),
201
- permissionExpression('exportTransaction', 'create'),
202
- permissionExpression('userViewMetadata', 'create'),
203
- permissionExpression('savedFilters', 'create')
204
- ];
214
+ permissionNames = getCollectionViewPermissionNames(params.modelName);
205
215
  queryData = {
206
216
  permissionNames: permissionNames,
207
217
  };
@@ -252,9 +262,9 @@ export var SolidTreeView = forwardRef(function (params, ref) {
252
262
  }
253
263
  }, [solidTreeViewLayout]);
254
264
  var editBaseUrl = useMemo(function () { return normalizeSolidListTreeKanbanActionPath(pathname, editButtonUrl || "form"); }, [editButtonUrl, pathname]);
255
- var _35 = useDeleteSolidEntityMutation(), deleteSolidSingleEntiry = _35[0], isDeleteSolidSingleEntitySuccess = _35[1].isSuccess;
265
+ var _36 = useDeleteSolidEntityMutation(), deleteSolidSingleEntiry = _36[0], isDeleteSolidSingleEntitySuccess = _36[1].isSuccess;
256
266
  // Delete mutation
257
- var _36 = useDeleteMultipleSolidEntitiesMutation(), deleteManySolidEntities = _36[0], _37 = _36[1], isSolidEntitiesDeleted = _37.isLoading, isDeleteSolidEntitiesSucess = _37.isSuccess, isSolidEntitiesDeleteError = _37.isError, SolidEntitiesDeleteError = _37.error, DeletedSolidEntities = _37.data;
267
+ var _37 = useDeleteMultipleSolidEntitiesMutation(), deleteManySolidEntities = _37[0], _38 = _37[1], isSolidEntitiesDeleted = _38.isLoading, isDeleteSolidEntitiesSucess = _38.isSuccess, isSolidEntitiesDeleteError = _38.isError, SolidEntitiesDeleteError = _38.error, DeletedSolidEntities = _38.data;
258
268
  var treeViewTitle = (_e = (_d = solidTreeViewMetaData === null || solidTreeViewMetaData === void 0 ? void 0 : solidTreeViewMetaData.data) === null || _d === void 0 ? void 0 : _d.solidView) === null || _e === void 0 ? void 0 : _e.displayName;
259
269
  var toggleBothSidebars = function () {
260
270
  if (visibleNavbar) {
@@ -264,8 +274,8 @@ export var SolidTreeView = forwardRef(function (params, ref) {
264
274
  dispatch(showNavbar());
265
275
  }
266
276
  };
267
- var _38 = useState(null), filters = _38[0], setFilters = _38[1];
268
- var _39 = useState(null), filterPredicates = _39[0], setFilterPredicates = _39[1];
277
+ var _39 = useState(null), filters = _39[0], setFilters = _39[1];
278
+ var _40 = useState(null), filterPredicates = _40[0], setFilterPredicates = _40[1];
269
279
  var latestFiltersRef = useRef(filters);
270
280
  var latestFilterPredicatesRef = useRef(filterPredicates);
271
281
  var activeGroupingRules = useMemo(function () { return (groupingRules || []).filter(function (rule) { return !!(rule === null || rule === void 0 ? void 0 : rule.fieldName); }); }, [groupingRules]);
@@ -485,6 +495,19 @@ export var SolidTreeView = forwardRef(function (params, ref) {
485
495
  return groupPath
486
496
  .map(function (item) { return buildImplicitFilterCondition(item); });
487
497
  };
498
+ var getGroupNodeKey = function (groupPath) {
499
+ if (groupPath === void 0) { groupPath = []; }
500
+ return groupPath.reduce(function (parentKey, item) {
501
+ var _a;
502
+ return "".concat(parentKey, "-g-").concat(encodeURIComponent(JSON.stringify({
503
+ ruleIndex: item.ruleIndex,
504
+ fieldName: item.fieldName,
505
+ filterField: item.filterField,
506
+ value: item.value,
507
+ dateGranularity: (_a = item.dateGranularity) !== null && _a !== void 0 ? _a : null,
508
+ })));
509
+ }, "root");
510
+ };
488
511
  var mergeFiltersWithImplicit = function (implicitFilters) {
489
512
  var _a;
490
513
  var baseFilters = latestFiltersRef.current;
@@ -575,7 +598,7 @@ export var SolidTreeView = forwardRef(function (params, ref) {
575
598
  };
576
599
  // ─── API fetch helpers (now accept offset + limit) ────────────────────────
577
600
  var runGroupedQuery = function (ruleIndex, groupPath, offset, limit) { return __awaiter(void 0, void 0, void 0, function () {
578
- var rule, queryData, sortParam, implicitFilters, mergedFilters, dynamicHeader, dynamicExtensionFunction, event, updatedListData, err_1, queryString, response;
601
+ var rule, queryData, sortParam, implicitFilters, mergedFilters, dynamicHeader, dynamicExtensionFunction, event, updatedListData, err_1, queryString, request, response;
579
602
  var _a, _b, _c, _d, _e;
580
603
  return __generator(this, function (_f) {
581
604
  switch (_f.label) {
@@ -636,7 +659,8 @@ export var SolidTreeView = forwardRef(function (params, ref) {
636
659
  return [3 /*break*/, 4];
637
660
  case 4:
638
661
  queryString = qs.stringify(queryData, { encodeValuesOnly: true });
639
- return [4 /*yield*/, triggerGetSolidEntities(queryString).unwrap()];
662
+ request = triggerGetSolidEntities(queryString);
663
+ return [4 /*yield*/, request.unwrap().finally(function () { return request.unsubscribe(); })];
640
664
  case 5:
641
665
  response = _f.sent();
642
666
  return [2 /*return*/, { queryData: queryData, queryString: queryString, response: response }];
@@ -644,7 +668,7 @@ export var SolidTreeView = forwardRef(function (params, ref) {
644
668
  });
645
669
  }); };
646
670
  var runLeafQuery = function (groupPath, offset, limit) { return __awaiter(void 0, void 0, void 0, function () {
647
- var queryData, implicitFilters, mergedFilters, dynamicHeader, dynamicExtensionFunction, event, updatedListData, err_2, queryString, response;
671
+ var queryData, implicitFilters, mergedFilters, dynamicHeader, dynamicExtensionFunction, event, updatedListData, err_2, queryString, request, response;
648
672
  var _a, _b, _c, _d, _e;
649
673
  return __generator(this, function (_f) {
650
674
  switch (_f.label) {
@@ -700,7 +724,8 @@ export var SolidTreeView = forwardRef(function (params, ref) {
700
724
  return [3 /*break*/, 4];
701
725
  case 4:
702
726
  queryString = qs.stringify(queryData, { encodeValuesOnly: true });
703
- return [4 /*yield*/, triggerGetSolidEntities(queryString).unwrap()];
727
+ request = triggerGetSolidEntities(queryString);
728
+ return [4 /*yield*/, request.unwrap().finally(function () { return request.unsubscribe(); })];
704
729
  case 5:
705
730
  response = _f.sent();
706
731
  return [2 /*return*/, { queryData: queryData, queryString: queryString, response: response }];
@@ -708,7 +733,7 @@ export var SolidTreeView = forwardRef(function (params, ref) {
708
733
  });
709
734
  }); };
710
735
  // ─── Node builders ────────────────────────────────────────────────────────
711
- var buildGroupNodes = function (groupMetaRows, ruleIndex, parentPath, parentKey) {
736
+ var buildGroupNodes = function (groupMetaRows, ruleIndex, parentPath) {
712
737
  var rule = activeGroupingRules[ruleIndex];
713
738
  if (!(rule === null || rule === void 0 ? void 0 : rule.fieldName))
714
739
  return [];
@@ -716,7 +741,7 @@ export var SolidTreeView = forwardRef(function (params, ref) {
716
741
  var filterField = getResolvedGroupField(fieldName);
717
742
  // const dateGranularity = dateTimeImplicitFilter(rule);
718
743
  var dateGranularity = getDateGranularity(rule);
719
- return (groupMetaRows || []).map(function (groupMeta, index) {
744
+ return (groupMetaRows || []).map(function (groupMeta) {
720
745
  var _a;
721
746
  var rawGroupLabel = groupMeta === null || groupMeta === void 0 ? void 0 : groupMeta.groupName;
722
747
  var normalizedGroupLabel = rawGroupLabel === "[object Object]"
@@ -729,7 +754,7 @@ export var SolidTreeView = forwardRef(function (params, ref) {
729
754
  { ruleIndex: ruleIndex, fieldName: fieldName, filterField: filterField, value: groupValue, dateGranularity: dateGranularity },
730
755
  ], false);
731
756
  return {
732
- key: "".concat(parentKey, "-g-").concat(ruleIndex, "-").concat(index),
757
+ key: getGroupNodeKey(groupPath),
733
758
  data: {
734
759
  __treeMeta: {
735
760
  nodeType: "group",
@@ -771,18 +796,59 @@ export var SolidTreeView = forwardRef(function (params, ref) {
771
796
  return node;
772
797
  });
773
798
  };
799
+ var fetchNodeChildren = function (node, offset, limit) { return __awaiter(void 0, void 0, void 0, function () {
800
+ var meta, nodeKey, nextRuleIndex, response_1, response;
801
+ var _a, _b, _c;
802
+ return __generator(this, function (_d) {
803
+ switch (_d.label) {
804
+ case 0:
805
+ meta = (_a = node.data) === null || _a === void 0 ? void 0 : _a.__treeMeta;
806
+ if (!meta || meta.nodeType !== "group") {
807
+ return [2 /*return*/, { children: [], total: 0 }];
808
+ }
809
+ nodeKey = String(node.key);
810
+ nextRuleIndex = meta.ruleIndex + 1;
811
+ if (!(nextRuleIndex < activeGroupingRules.length)) return [3 /*break*/, 2];
812
+ return [4 /*yield*/, runGroupedQuery(nextRuleIndex, meta.groupPath || [], offset, limit)];
813
+ case 1:
814
+ response_1 = (_d.sent()).response;
815
+ return [2 /*return*/, {
816
+ children: buildGroupNodes((response_1 === null || response_1 === void 0 ? void 0 : response_1.groupMeta) || [], nextRuleIndex, meta.groupPath || []),
817
+ total: (_b = response_1 === null || response_1 === void 0 ? void 0 : response_1.meta.totalRecords) !== null && _b !== void 0 ? _b : 0,
818
+ }];
819
+ case 2: return [4 /*yield*/, runLeafQuery(meta.groupPath || [], offset, limit)];
820
+ case 3:
821
+ response = (_d.sent()).response;
822
+ return [2 /*return*/, {
823
+ children: buildRecordNodes((response === null || response === void 0 ? void 0 : response.records) || [], nodeKey, meta.groupPath || []),
824
+ total: (_c = response === null || response === void 0 ? void 0 : response.meta.totalRecords) !== null && _c !== void 0 ? _c : 0,
825
+ }];
826
+ }
827
+ });
828
+ }); };
829
+ var mergeNodesWithCurrentState = function (freshNodes, currentNodes) {
830
+ var currentNodesByKey = new Map(currentNodes.map(function (node) { return [String(node.key), node]; }));
831
+ return freshNodes.map(function (node) {
832
+ var _a;
833
+ var currentNode = currentNodesByKey.get(String(node.key));
834
+ return ((_a = currentNode === null || currentNode === void 0 ? void 0 : currentNode.children) === null || _a === void 0 ? void 0 : _a.length)
835
+ ? __assign(__assign({}, node), { children: currentNode.children }) : node;
836
+ });
837
+ };
774
838
  // ─── Root group load / paginate ───────────────────────────────────────────
775
- var loadRootGroups = function (offset) {
839
+ var loadRootGroups = function (offset, affectedGroupPaths) {
776
840
  if (offset === void 0) { offset = 0; }
841
+ if (affectedGroupPaths === void 0) { affectedGroupPaths = []; }
777
842
  return __awaiter(void 0, void 0, void 0, function () {
778
- var queryObject, limit, response, rootNodes, total, queryData, error_1;
779
- var _a, _b;
780
- return __generator(this, function (_c) {
781
- switch (_c.label) {
843
+ var queryObject, limit, response, rootNodes, total, rootPaginationEntry, nextTreeNodes, nextPaginationMap, refreshedNodeKeys, _i, affectedGroupPaths_1, groupPath, depth, nodeKey, node, pagination, _a, children, childTotal, nextChildren, queryData, error_1;
844
+ var _b, _c;
845
+ return __generator(this, function (_d) {
846
+ switch (_d.label) {
782
847
  case 0:
783
848
  if (!solidTreeViewMetaData || activeGroupingRules.length === 0) {
784
849
  setTreeNodes([]);
785
850
  setExpandedKeys({});
851
+ setPaginationMap({});
786
852
  queryObject = getFilterObjectFromLocalStorage();
787
853
  if (queryObject) {
788
854
  delete queryObject.grouping_rules;
@@ -793,18 +859,59 @@ export var SolidTreeView = forwardRef(function (params, ref) {
793
859
  }
794
860
  limit = globalLimit || DEFAULT_PAGE_SIZE;
795
861
  setTreeLoading(true);
796
- _c.label = 1;
862
+ _d.label = 1;
797
863
  case 1:
798
- _c.trys.push([1, 3, 4, 5]);
864
+ _d.trys.push([1, 9, 10, 11]);
799
865
  return [4 /*yield*/, runGroupedQuery(0, [], offset, limit)];
800
866
  case 2:
801
- response = (_c.sent()).response;
802
- rootNodes = buildGroupNodes((response === null || response === void 0 ? void 0 : response.groupMeta) || [], 0, [], "root");
803
- setTreeNodes(rootNodes);
804
- setExpandedKeys({});
867
+ response = (_d.sent()).response;
868
+ rootNodes = buildGroupNodes((response === null || response === void 0 ? void 0 : response.groupMeta) || [], 0, []);
869
+ total = (_b = response === null || response === void 0 ? void 0 : response.meta.totalRecords) !== null && _b !== void 0 ? _b : 0;
870
+ rootPaginationEntry = { offset: offset, total: total, limit: limit };
871
+ nextTreeNodes = affectedGroupPaths.length > 0
872
+ ? mergeNodesWithCurrentState(rootNodes, treeNodes)
873
+ : rootNodes;
874
+ nextPaginationMap = affectedGroupPaths.length > 0
875
+ ? __assign(__assign({}, paginationMap), { root: rootPaginationEntry }) : { root: rootPaginationEntry };
876
+ refreshedNodeKeys = new Set();
877
+ _i = 0, affectedGroupPaths_1 = affectedGroupPaths;
878
+ _d.label = 3;
879
+ case 3:
880
+ if (!(_i < affectedGroupPaths_1.length)) return [3 /*break*/, 8];
881
+ groupPath = affectedGroupPaths_1[_i];
882
+ depth = 0;
883
+ _d.label = 4;
884
+ case 4:
885
+ if (!(depth < groupPath.length)) return [3 /*break*/, 7];
886
+ nodeKey = getGroupNodeKey(groupPath.slice(0, depth + 1));
887
+ if (refreshedNodeKeys.has(nodeKey))
888
+ return [3 /*break*/, 6];
889
+ node = findNodeByKey(nextTreeNodes, nodeKey);
890
+ if (!node)
891
+ return [3 /*break*/, 7];
892
+ pagination = getPagination(nodeKey);
893
+ return [4 /*yield*/, fetchNodeChildren(node, pagination.offset, pagination.limit)];
894
+ case 5:
895
+ _a = _d.sent(), children = _a.children, childTotal = _a.total;
896
+ nextChildren = depth < groupPath.length - 1
897
+ ? mergeNodesWithCurrentState(children, node.children || [])
898
+ : children;
899
+ nextTreeNodes = updateNodeChildren(nextTreeNodes, nodeKey, nextChildren);
900
+ nextPaginationMap[nodeKey] = __assign(__assign({}, pagination), { total: childTotal });
901
+ refreshedNodeKeys.add(nodeKey);
902
+ _d.label = 6;
903
+ case 6:
904
+ depth += 1;
905
+ return [3 /*break*/, 4];
906
+ case 7:
907
+ _i++;
908
+ return [3 /*break*/, 3];
909
+ case 8:
910
+ setTreeNodes(nextTreeNodes);
805
911
  setSelectedNodeKeys({});
806
- total = (_a = response === null || response === void 0 ? void 0 : response.meta.totalRecords) !== null && _a !== void 0 ? _a : 0;
807
- setPagination("root", { offset: offset, total: total, limit: limit });
912
+ setPaginationMap(nextPaginationMap);
913
+ if (affectedGroupPaths.length === 0)
914
+ setExpandedKeys({});
808
915
  if (latestFilterPredicatesRef.current && latestFilterPredicatesRef.current.persistFilter) {
809
916
  queryData = {
810
917
  offset: offset,
@@ -824,16 +931,15 @@ export var SolidTreeView = forwardRef(function (params, ref) {
824
931
  applyArchivedQueryState(queryData);
825
932
  setFilterObjectToLocalStorage(queryData);
826
933
  }
827
- return [3 /*break*/, 5];
828
- case 3:
829
- error_1 = _c.sent();
830
- setTreeNodes([]);
831
- dispatch(showToast({ severity: "error", summary: "Failed to load tree", detail: ((_b = error_1 === null || error_1 === void 0 ? void 0 : error_1.data) === null || _b === void 0 ? void 0 : _b.message) || (error_1 === null || error_1 === void 0 ? void 0 : error_1.message) || "Unable to load grouped data", life: 4000 }));
832
- return [3 /*break*/, 5];
833
- case 4:
934
+ return [3 /*break*/, 11];
935
+ case 9:
936
+ error_1 = _d.sent();
937
+ dispatch(showToast({ severity: "error", summary: "Failed to load tree", detail: ((_c = error_1 === null || error_1 === void 0 ? void 0 : error_1.data) === null || _c === void 0 ? void 0 : _c.message) || (error_1 === null || error_1 === void 0 ? void 0 : error_1.message) || "Unable to load grouped data", life: 4000 }));
938
+ return [3 /*break*/, 11];
939
+ case 10:
834
940
  setTreeLoading(false);
835
941
  return [7 /*endfinally*/];
836
- case 5: return [2 /*return*/];
942
+ case 11: return [2 /*return*/];
837
943
  }
838
944
  });
839
945
  });
@@ -848,37 +954,23 @@ export var SolidTreeView = forwardRef(function (params, ref) {
848
954
  }, [solidTreeViewMetaData, params.modelName, activeGroupingRules, aggregationRules, filters, sortField, sortOrder, globalLimit, showArchived]);
849
955
  // ─── Expand handler ───────────────────────────────────────────────────────
850
956
  var loadNodeChildren = function (node, offset) { return __awaiter(void 0, void 0, void 0, function () {
851
- var meta, nodeKey, limit, nextRuleIndex, children_1, total, response, response, error_2;
852
- var _a, _b, _c, _d;
853
- return __generator(this, function (_e) {
854
- switch (_e.label) {
957
+ var meta, nodeKey, limit, _a, children_1, total, error_2;
958
+ var _b, _c;
959
+ return __generator(this, function (_d) {
960
+ switch (_d.label) {
855
961
  case 0:
856
- meta = (_a = node.data) === null || _a === void 0 ? void 0 : _a.__treeMeta;
962
+ meta = (_b = node.data) === null || _b === void 0 ? void 0 : _b.__treeMeta;
857
963
  if (!meta || meta.nodeType !== "group")
858
964
  return [2 /*return*/];
859
965
  nodeKey = String(node.key);
860
966
  limit = getPagination(nodeKey).limit || globalLimit || DEFAULT_PAGE_SIZE;
861
- nextRuleIndex = meta.ruleIndex + 1;
862
967
  setTreeLoading(true);
863
- _e.label = 1;
968
+ _d.label = 1;
864
969
  case 1:
865
- _e.trys.push([1, 6, 7, 8]);
866
- children_1 = [];
867
- total = 0;
868
- if (!(nextRuleIndex < activeGroupingRules.length)) return [3 /*break*/, 3];
869
- return [4 /*yield*/, runGroupedQuery(nextRuleIndex, meta.groupPath || [], offset, limit)];
970
+ _d.trys.push([1, 3, 4, 5]);
971
+ return [4 /*yield*/, fetchNodeChildren(node, offset, limit)];
870
972
  case 2:
871
- response = (_e.sent()).response;
872
- children_1 = buildGroupNodes((response === null || response === void 0 ? void 0 : response.groupMeta) || [], nextRuleIndex, meta.groupPath || [], nodeKey);
873
- total = (_b = response === null || response === void 0 ? void 0 : response.meta.totalRecords) !== null && _b !== void 0 ? _b : 0;
874
- return [3 /*break*/, 5];
875
- case 3: return [4 /*yield*/, runLeafQuery(meta.groupPath || [], offset, limit)];
876
- case 4:
877
- response = (_e.sent()).response;
878
- children_1 = buildRecordNodes((response === null || response === void 0 ? void 0 : response.records) || [], nodeKey, meta.groupPath || []);
879
- total = (_c = response === null || response === void 0 ? void 0 : response.meta.totalRecords) !== null && _c !== void 0 ? _c : 0;
880
- _e.label = 5;
881
- case 5:
973
+ _a = _d.sent(), children_1 = _a.children, total = _a.total;
882
974
  setTreeNodes(function (prev) { return updateNodeChildren(prev, nodeKey, children_1); });
883
975
  setPagination(node.key, { offset: offset, total: total, limit: limit });
884
976
  setSelectedNodeKeys(function (prevKeys) {
@@ -921,16 +1013,16 @@ export var SolidTreeView = forwardRef(function (params, ref) {
921
1013
  return next;
922
1014
  });
923
1015
  }
924
- return [3 /*break*/, 8];
925
- case 6:
926
- error_2 = _e.sent();
927
- dispatch(showToast({ severity: "error", summary: "Failed to expand node", detail: ((_d = error_2 === null || error_2 === void 0 ? void 0 : error_2.data) === null || _d === void 0 ? void 0 : _d.message) || (error_2 === null || error_2 === void 0 ? void 0 : error_2.message) || "Unable to load children", life: 4000 }));
1016
+ return [3 /*break*/, 5];
1017
+ case 3:
1018
+ error_2 = _d.sent();
1019
+ dispatch(showToast({ severity: "error", summary: "Failed to expand node", detail: ((_c = error_2 === null || error_2 === void 0 ? void 0 : error_2.data) === null || _c === void 0 ? void 0 : _c.message) || (error_2 === null || error_2 === void 0 ? void 0 : error_2.message) || "Unable to load children", life: 4000 }));
928
1020
  setTreeNodes(function (prev) { return updateNodeChildren(prev, nodeKey, []); });
929
- return [3 /*break*/, 8];
930
- case 7:
1021
+ return [3 /*break*/, 5];
1022
+ case 4:
931
1023
  setTreeLoading(false);
932
1024
  return [7 /*endfinally*/];
933
- case 8: return [2 /*return*/];
1025
+ case 5: return [2 /*return*/];
934
1026
  }
935
1027
  });
936
1028
  }); };
@@ -1082,12 +1174,15 @@ export var SolidTreeView = forwardRef(function (params, ref) {
1082
1174
  // ─── Bulk delete ──────────────────────────────────────────────────────────
1083
1175
  // handle bulk deletion
1084
1176
  var deleteBulk = function () { return __awaiter(void 0, void 0, void 0, function () {
1085
- var deleteList, error_3;
1177
+ var deleteList, affectedGroupPaths, error_3;
1086
1178
  var _a;
1087
1179
  return __generator(this, function (_b) {
1088
1180
  switch (_b.label) {
1089
1181
  case 0:
1090
1182
  deleteList = selectedRecords.map(function (element) { return element.id; });
1183
+ affectedGroupPaths = selectedRecords
1184
+ .map(function (record) { var _a; return (_a = record === null || record === void 0 ? void 0 : record.__treeMeta) === null || _a === void 0 ? void 0 : _a.groupPath; })
1185
+ .filter(function (groupPath) { return Array.isArray(groupPath); });
1091
1186
  if (deleteList.length === 0) {
1092
1187
  setDeleteRecordsDialogVisible(false);
1093
1188
  return [2 /*return*/];
@@ -1100,7 +1195,7 @@ export var SolidTreeView = forwardRef(function (params, ref) {
1100
1195
  _b.sent();
1101
1196
  dispatch(showToast({ severity: 'success', summary: 'Deleted', detail: ERROR_MESSAGES.RECORD_DELETE, life: 3000 }));
1102
1197
  setDeleteRecordsDialogVisible(false);
1103
- return [4 /*yield*/, loadRootGroups(getPagination("root").offset)];
1198
+ return [4 /*yield*/, loadRootGroups(getPagination("root").offset, affectedGroupPaths)];
1104
1199
  case 3:
1105
1200
  _b.sent();
1106
1201
  return [3 /*break*/, 5];
@@ -1119,12 +1214,15 @@ export var SolidTreeView = forwardRef(function (params, ref) {
1119
1214
  setSelectedRecoverRecords([]);
1120
1215
  };
1121
1216
  var recoverAll = function () { return __awaiter(void 0, void 0, void 0, function () {
1122
- var recoverList, response, error_4;
1217
+ var recoverList, affectedGroupPaths, response, error_4;
1123
1218
  var _a, _b;
1124
1219
  return __generator(this, function (_c) {
1125
1220
  switch (_c.label) {
1126
1221
  case 0:
1127
1222
  recoverList = selectedRecoverRecords.map(function (element) { return element.id; });
1223
+ affectedGroupPaths = selectedRecoverRecords
1224
+ .map(function (record) { var _a; return (_a = record === null || record === void 0 ? void 0 : record.__treeMeta) === null || _a === void 0 ? void 0 : _a.groupPath; })
1225
+ .filter(function (groupPath) { return Array.isArray(groupPath); });
1128
1226
  if (recoverList.length === 0) {
1129
1227
  setRecoverDialogVisible(false);
1130
1228
  return [2 /*return*/];
@@ -1142,7 +1240,7 @@ export var SolidTreeView = forwardRef(function (params, ref) {
1142
1240
  detail: ((_a = response === null || response === void 0 ? void 0 : response.data) === null || _a === void 0 ? void 0 : _a.message) || "Records recovered successfully.",
1143
1241
  life: 3000,
1144
1242
  }));
1145
- return [4 /*yield*/, loadRootGroups(getPagination("root").offset)];
1243
+ return [4 /*yield*/, loadRootGroups(getPagination("root").offset, affectedGroupPaths)];
1146
1244
  case 3:
1147
1245
  _c.sent();
1148
1246
  return [3 /*break*/, 5];
@@ -1187,8 +1285,8 @@ export var SolidTreeView = forwardRef(function (params, ref) {
1187
1285
  solidListViewMetaData: solidTreeViewMetaData,
1188
1286
  fieldMetadata: fieldMetadata,
1189
1287
  column: column,
1190
- setLightboxUrls: function () { },
1191
- setOpenLightbox: function () { },
1288
+ setLightboxUrls: setLightboxUrls,
1289
+ setOpenLightbox: setOpenLightbox,
1192
1290
  });
1193
1291
  if (!React.isValidElement(listColumn))
1194
1292
  return null;
@@ -1299,8 +1397,14 @@ export var SolidTreeView = forwardRef(function (params, ref) {
1299
1397
  }); },
1300
1398
  }); }, [filters, filterPredicates, paginationMap, showArchived, sortField, sortOrder, treeLoading, treeNodes]);
1301
1399
  var handleCustomButtonClick = useHandleListCustomButtonClick();
1302
- var _40 = useState(), selectedSolidViewData = _40[0], setSelectedSolidViewData = _40[1];
1303
- var _41 = useState(false), deleteEntity = _41[0], setDeleteEntity = _41[1];
1400
+ var shouldShowMobileSearchElement = showGlobalSearchElement || hasStoredSearchUiState(filterPredicates) || hasStoredSearchUiState(getFilterObjectFromLocalStorage());
1401
+ var visibleHeaderButtons = useMemo(function () {
1402
+ var _a, _b;
1403
+ return ((_b = (_a = solidTreeViewLayout === null || solidTreeViewLayout === void 0 ? void 0 : solidTreeViewLayout.attrs) === null || _a === void 0 ? void 0 : _a.headerButtons) !== null && _b !== void 0 ? _b : []).filter(function (button) { return isButtonVisibleInCurrentEnv(button === null || button === void 0 ? void 0 : button.attrs); });
1404
+ }, [(_f = solidTreeViewLayout === null || solidTreeViewLayout === void 0 ? void 0 : solidTreeViewLayout.attrs) === null || _f === void 0 ? void 0 : _f.headerButtons]);
1405
+ var _41 = useState(), selectedSolidViewData = _41[0], setSelectedSolidViewData = _41[1];
1406
+ var _42 = useState(false), deleteEntity = _42[0], setDeleteEntity = _42[1];
1407
+ var entityDisplayName = ((_j = (_h = (_g = solidTreeViewMetaData === null || solidTreeViewMetaData === void 0 ? void 0 : solidTreeViewMetaData.data) === null || _g === void 0 ? void 0 : _g.solidView) === null || _h === void 0 ? void 0 : _h.model) === null || _j === void 0 ? void 0 : _j.displayName) || (params === null || params === void 0 ? void 0 : params.modelName);
1304
1408
  var openRowForEdit = function (rowData, viewMode) {
1305
1409
  storeCurrentModelViewContext();
1306
1410
  router.push("".concat(editBaseUrl, "/").concat(rowData === null || rowData === void 0 ? void 0 : rowData.id, "?viewMode=").concat(viewMode, "&").concat(new URLSearchParams(editActionQueryParams).toString()));
@@ -1339,32 +1443,33 @@ export var SolidTreeView = forwardRef(function (params, ref) {
1339
1443
  });
1340
1444
  };
1341
1445
  var handleDeleteEntity = function () { return __awaiter(void 0, void 0, void 0, function () {
1342
- var response, error_5;
1343
- var _a, _b, _c;
1344
- return __generator(this, function (_d) {
1345
- switch (_d.label) {
1446
+ var affectedGroupPath, response, error_5;
1447
+ var _a, _b, _c, _d;
1448
+ return __generator(this, function (_e) {
1449
+ switch (_e.label) {
1346
1450
  case 0:
1347
- _d.trys.push([0, 5, , 6]);
1451
+ _e.trys.push([0, 5, , 6]);
1348
1452
  if (!(selectedSolidViewData === null || selectedSolidViewData === void 0 ? void 0 : selectedSolidViewData.id)) {
1349
1453
  throw new Error(ERROR_MESSAGES.NO_ENTITY_SELECTED);
1350
1454
  }
1455
+ affectedGroupPath = (_a = selectedSolidViewData === null || selectedSolidViewData === void 0 ? void 0 : selectedSolidViewData.__treeMeta) === null || _a === void 0 ? void 0 : _a.groupPath;
1351
1456
  return [4 /*yield*/, deleteSolidSingleEntiry(selectedSolidViewData.id)];
1352
1457
  case 1:
1353
- response = _d.sent();
1354
- if (!(((_a = response === null || response === void 0 ? void 0 : response.data) === null || _a === void 0 ? void 0 : _a.statusCode) === 200)) return [3 /*break*/, 3];
1458
+ response = _e.sent();
1459
+ if (!(((_b = response === null || response === void 0 ? void 0 : response.data) === null || _b === void 0 ? void 0 : _b.statusCode) === 200)) return [3 /*break*/, 3];
1355
1460
  setDeleteEntity(false);
1356
1461
  setSelectedSolidViewData(undefined);
1357
1462
  dispatch(showToast({ severity: "success", summary: ERROR_MESSAGES.DELETED, detail: ERROR_MESSAGES.ENTITY_DELETE, life: 3000 }));
1358
- return [4 /*yield*/, loadRootGroups(getPagination("root").offset)];
1463
+ return [4 /*yield*/, loadRootGroups(getPagination("root").offset, Array.isArray(affectedGroupPath) ? [affectedGroupPath] : [])];
1359
1464
  case 2:
1360
- _d.sent();
1465
+ _e.sent();
1361
1466
  return [3 /*break*/, 4];
1362
1467
  case 3:
1363
- dispatch(showToast({ severity: "error", summary: ERROR_MESSAGES.DELETE_FAIELD, detail: (_c = (_b = response === null || response === void 0 ? void 0 : response.error) === null || _b === void 0 ? void 0 : _b.data) === null || _c === void 0 ? void 0 : _c.error, sticky: true }));
1364
- _d.label = 4;
1468
+ dispatch(showToast({ severity: "error", summary: ERROR_MESSAGES.DELETE_FAIELD, detail: (_d = (_c = response === null || response === void 0 ? void 0 : response.error) === null || _c === void 0 ? void 0 : _c.data) === null || _d === void 0 ? void 0 : _d.error, sticky: true }));
1469
+ _e.label = 4;
1365
1470
  case 4: return [3 /*break*/, 6];
1366
1471
  case 5:
1367
- error_5 = _d.sent();
1472
+ error_5 = _e.sent();
1368
1473
  dispatch(showToast({ severity: "error", summary: ERROR_MESSAGES.DELETE_FAIELD, detail: ERROR_MESSAGES.SOMETHING_WRONG, sticky: true }));
1369
1474
  return [3 /*break*/, 6];
1370
1475
  case 6: return [2 /*return*/];
@@ -1373,34 +1478,34 @@ export var SolidTreeView = forwardRef(function (params, ref) {
1373
1478
  }); };
1374
1479
  var handleRecoverRecord = function (record) { return __awaiter(void 0, void 0, void 0, function () {
1375
1480
  var response, error_6;
1376
- var _a, _b;
1377
- return __generator(this, function (_c) {
1378
- switch (_c.label) {
1481
+ var _a, _b, _c;
1482
+ return __generator(this, function (_d) {
1483
+ switch (_d.label) {
1379
1484
  case 0:
1380
1485
  if (!(record === null || record === void 0 ? void 0 : record.id))
1381
1486
  return [2 /*return*/];
1382
- _c.label = 1;
1487
+ _d.label = 1;
1383
1488
  case 1:
1384
- _c.trys.push([1, 4, , 5]);
1489
+ _d.trys.push([1, 4, , 5]);
1385
1490
  return [4 /*yield*/, triggerRecoverSolidEntitiesById(record.id).unwrap()];
1386
1491
  case 2:
1387
- response = _c.sent();
1492
+ response = _d.sent();
1388
1493
  dispatch(showToast({
1389
1494
  severity: "success",
1390
1495
  summary: "Success",
1391
1496
  detail: ((_a = response === null || response === void 0 ? void 0 : response.data) === null || _a === void 0 ? void 0 : _a.message) || "Record recovered successfully.",
1392
1497
  life: 3000,
1393
1498
  }));
1394
- return [4 /*yield*/, loadRootGroups(getPagination("root").offset)];
1499
+ return [4 /*yield*/, loadRootGroups(getPagination("root").offset, Array.isArray((_b = record === null || record === void 0 ? void 0 : record.__treeMeta) === null || _b === void 0 ? void 0 : _b.groupPath) ? [record.__treeMeta.groupPath] : [])];
1395
1500
  case 3:
1396
- _c.sent();
1501
+ _d.sent();
1397
1502
  return [3 /*break*/, 5];
1398
1503
  case 4:
1399
- error_6 = _c.sent();
1504
+ error_6 = _d.sent();
1400
1505
  dispatch(showToast({
1401
1506
  severity: "error",
1402
1507
  summary: "Recover Failed",
1403
- detail: ((_b = error_6 === null || error_6 === void 0 ? void 0 : error_6.data) === null || _b === void 0 ? void 0 : _b.message) || (error_6 === null || error_6 === void 0 ? void 0 : error_6.message) || "Unable to recover the selected record.",
1508
+ detail: ((_c = error_6 === null || error_6 === void 0 ? void 0 : error_6.data) === null || _c === void 0 ? void 0 : _c.message) || (error_6 === null || error_6 === void 0 ? void 0 : error_6.message) || "Unable to recover the selected record.",
1404
1509
  life: 4000,
1405
1510
  }));
1406
1511
  return [3 /*break*/, 5];
@@ -1467,12 +1572,12 @@ export var SolidTreeView = forwardRef(function (params, ref) {
1467
1572
  })] })] }))] }));
1468
1573
  };
1469
1574
  // ─── Render ───────────────────────────────────────────────────────────────
1470
- return (_jsxs("div", { className: "page-parent-wrapper solid-list-page-wrapper solid-tree-page-wrapper flex h-full min-h-0 overflow-hidden", children: [_jsx("div", { className: "solid-list-content h-full flex flex-col flex-grow-1", children: _jsxs("div", { className: "solid-list-surface solid-tree-surface flex flex-col flex-1 min-h-0", children: [_jsxs("div", { className: "page-header solid-list-toolbar solid-tree-toolbar flex-col lg:flex-row", children: [_jsxs("div", { className: "flex justify-between w-full", children: [_jsxs("div", { className: "flex gap-4 items-center w-full solid-list-toolbar-left", children: [_jsx("div", { className: "flex items-center gap-2" }), ((_h = (_g = (_f = solidTreeViewMetaData === null || solidTreeViewMetaData === void 0 ? void 0 : solidTreeViewMetaData.data) === null || _f === void 0 ? void 0 : _f.solidView) === null || _g === void 0 ? void 0 : _g.layout) === null || _h === void 0 ? void 0 : _h.attrs.enableGlobalSearch) === true && (_jsx("div", { className: "hidden lg:flex", children: _jsx(SolidGlobalSearchElement, { viewType: "tree", showSaveFilterPopup: showSaveFilterPopup, setShowSaveFilterPopup: setShowSaveFilterPopup, ref: solidGlobalSearchElementRef, viewData: solidTreeViewMetaData, handleApplyCustomFilter: handleApplyCustomFilter }) }))] }), _jsxs("div", { className: "flex items-center solid-header-buttons-wrapper solid-list-toolbar-actions", children: [headerRequestStatusLabel ? _jsx(SolidHeaderRequestStatus, { label: headerRequestStatusLabel }) : null, ((_l = (_k = (_j = solidTreeViewMetaData === null || solidTreeViewMetaData === void 0 ? void 0 : solidTreeViewMetaData.data) === null || _j === void 0 ? void 0 : _j.solidView) === null || _k === void 0 ? void 0 : _k.layout) === null || _l === void 0 ? void 0 : _l.attrs.enableGlobalSearch) === true && (_jsx("div", { className: "flex lg:hidden", children: _jsx(SolidButton, { type: "button", size: "sm", variant: "outline", leftIcon: _jsx(Search, { size: 14 }), className: "solid-icon-button", onClick: function () { return setShowGlobalSearchElement(!showGlobalSearchElement); } }) })), actionsAllowed.includes("".concat(permissionExpression(params.modelName, "create"))) &&
1471
- ((_p = (_o = (_m = solidTreeViewMetaData === null || solidTreeViewMetaData === void 0 ? void 0 : solidTreeViewMetaData.data) === null || _m === void 0 ? void 0 : _m.solidView) === null || _o === void 0 ? void 0 : _o.layout) === null || _p === void 0 ? void 0 : _p.attrs.create) !== false && (_jsx(SolidCreateButton, { createButtonUrl: createButtonUrl, createActionQueryParams: createActionQueryParams, responsiveIconOnly: true })), actionsAllowed.includes("".concat(permissionExpression(params.modelName, "delete"))) &&
1472
- ((_s = (_r = (_q = solidTreeViewMetaData === null || solidTreeViewMetaData === void 0 ? void 0 : solidTreeViewMetaData.data) === null || _q === void 0 ? void 0 : _q.solidView) === null || _r === void 0 ? void 0 : _r.layout) === null || _s === void 0 ? void 0 : _s.attrs.delete) !== false &&
1575
+ return (_jsxs("div", { className: "page-parent-wrapper solid-list-page-wrapper solid-tree-page-wrapper flex h-full min-h-0 overflow-hidden", children: [_jsx("div", { className: "solid-list-content h-full flex flex-col flex-grow-1", children: _jsxs("div", { className: "solid-list-surface solid-tree-surface flex flex-col flex-1 min-h-0", children: [_jsxs("div", { className: "page-header solid-list-toolbar solid-tree-toolbar flex-col lg:flex-row", children: [_jsxs("div", { className: "flex justify-between w-full", children: [_jsxs("div", { className: "flex gap-4 items-center w-full solid-list-toolbar-left", children: [_jsx("div", { className: "flex items-center gap-2" }), ((_m = (_l = (_k = solidTreeViewMetaData === null || solidTreeViewMetaData === void 0 ? void 0 : solidTreeViewMetaData.data) === null || _k === void 0 ? void 0 : _k.solidView) === null || _l === void 0 ? void 0 : _l.layout) === null || _m === void 0 ? void 0 : _m.attrs.enableGlobalSearch) === true && (_jsx("div", { className: "hidden lg:flex", children: _jsx(SolidGlobalSearchElement, { viewType: "tree", showSaveFilterPopup: showSaveFilterPopup, setShowSaveFilterPopup: setShowSaveFilterPopup, ref: solidGlobalSearchElementRef, viewData: solidTreeViewMetaData, handleApplyCustomFilter: handleApplyCustomFilter, filterPredicates: filterPredicates }) }))] }), _jsxs("div", { className: "flex items-center solid-header-buttons-wrapper solid-list-toolbar-actions", children: [headerRequestStatusLabel ? _jsx(SolidHeaderRequestStatus, { label: headerRequestStatusLabel }) : null, ((_q = (_p = (_o = solidTreeViewMetaData === null || solidTreeViewMetaData === void 0 ? void 0 : solidTreeViewMetaData.data) === null || _o === void 0 ? void 0 : _o.solidView) === null || _p === void 0 ? void 0 : _p.layout) === null || _q === void 0 ? void 0 : _q.attrs.enableGlobalSearch) === true && (_jsx("div", { className: "flex lg:hidden", children: _jsx(SolidButton, { type: "button", size: "sm", variant: "outline", leftIcon: _jsx(Search, { size: 14 }), className: "solid-icon-button", onClick: function () { return setShowGlobalSearchElement(!showGlobalSearchElement); } }) })), _jsx("div", { className: "solid-header-buttons-wrapper hidden items-center lg:flex", children: (_r = visibleHeaderButtons === null || visibleHeaderButtons === void 0 ? void 0 : visibleHeaderButtons.filter(function (button) { var _a; return ((_a = button === null || button === void 0 ? void 0 : button.attrs) === null || _a === void 0 ? void 0 : _a.actionInContextMenu) !== true; })) === null || _r === void 0 ? void 0 : _r.map(function (button, index) { return (_jsx(SolidListViewHeaderButton, { button: button, params: params, solidListViewMetaData: solidTreeViewMetaData, handleCustomButtonClick: handleCustomButtonClick, selectedRecords: selectedRecords, filters: filters }, index)); }) }), actionsAllowed.includes("".concat(permissionExpression(params.modelName, "create"))) &&
1576
+ ((_u = (_t = (_s = solidTreeViewMetaData === null || solidTreeViewMetaData === void 0 ? void 0 : solidTreeViewMetaData.data) === null || _s === void 0 ? void 0 : _s.solidView) === null || _t === void 0 ? void 0 : _t.layout) === null || _u === void 0 ? void 0 : _u.attrs.create) !== false && (_jsx(SolidCreateButton, { createButtonUrl: createButtonUrl, createActionQueryParams: createActionQueryParams, responsiveIconOnly: true })), actionsAllowed.includes("".concat(permissionExpression(params.modelName, "delete"))) &&
1577
+ ((_x = (_w = (_v = solidTreeViewMetaData === null || solidTreeViewMetaData === void 0 ? void 0 : solidTreeViewMetaData.data) === null || _v === void 0 ? void 0 : _v.solidView) === null || _w === void 0 ? void 0 : _w.layout) === null || _x === void 0 ? void 0 : _x.attrs.delete) !== false &&
1473
1578
  selectedRecords.length > 0 && (_jsx(SolidButton, { type: "button", label: "Delete", size: "sm", onClick: function () { return setDeleteRecordsDialogVisible(true); }, className: "small-button", severity: "danger" })), _jsx(SolidButton, { type: "button", size: "sm", variant: "outline", leftIcon: _jsx(RefreshCw, { size: 14 }), className: "solid-icon-button", onClick: function () { void loadRootGroups(getPagination("root").offset); } }), showArchived && selectedRecoverRecords.length > 0 && (_jsx(SolidButton, { type: "button", size: "sm", variant: "secondary", className: "hidden lg:flex", onClick: function () { return setRecoverDialogVisible(true); }, leftIcon: _jsx(RotateCcw, { size: 14 }), children: "Recover" })), params.embeded === false &&
1474
- ((_t = solidTreeViewLayout === null || solidTreeViewLayout === void 0 ? void 0 : solidTreeViewLayout.attrs) === null || _t === void 0 ? void 0 : _t.configureView) !== false && (_jsx(SolidListViewConfigure, { listViewMetaData: solidTreeViewMetaData, solidListViewLayout: solidTreeViewLayout, setShowArchived: setShowArchived, showArchived: showArchived, viewData: solidTreeViewMetaData, sizeOptions: sizeOptions, setSize: setSize, size: size, viewModes: viewModes, params: params, actionsAllowed: actionsAllowed, selectedRecords: selectedRecords, setDialogVisible: setDeleteRecordsDialogVisible, setShowSaveFilterPopup: setShowSaveFilterPopup, filters: filters, handleFetchUpdatedRecords: handleFetchUpdatedRecords, setRecoverDialogVisible: setRecoverDialogVisible }))] })] }), ((_w = (_v = (_u = solidTreeViewMetaData === null || solidTreeViewMetaData === void 0 ? void 0 : solidTreeViewMetaData.data) === null || _u === void 0 ? void 0 : _u.solidView) === null || _v === void 0 ? void 0 : _v.layout) === null || _w === void 0 ? void 0 : _w.attrs.enableGlobalSearch) === true &&
1475
- showGlobalSearchElement && (_jsx("div", { className: "flex lg:hidden", children: _jsx(SolidGlobalSearchElement, { viewType: "tree", showSaveFilterPopup: showSaveFilterPopup, setShowSaveFilterPopup: setShowSaveFilterPopup, ref: solidGlobalSearchElementRef, viewData: solidTreeViewMetaData, handleApplyCustomFilter: handleApplyCustomFilter }) }))] }), _jsx("div", { className: "solid-datatable-wrapper solid-list-table-area solid-tree-table-area flex-1 min-h-0 overflow-hidden", children: activeGroupingRules.length === 0 ? (_jsx("div", { className: "solid-empty-listview-placeholder-container solid-tree-empty-state", children: _jsxs("div", { className: "solid-empty-listview-placeholder-panel", children: [_jsxs("div", { className: "solid-empty-listview-header", children: [_jsx("div", { className: "solid-empty-listview-header-title", children: treeViewTitle || "Tree View" }), _jsx("div", { className: "solid-empty-listview-header-subtitle", children: "Build a grouping structure to explore your data in hierarchical levels." })] }), _jsxs("div", { className: "solid-empty-listview-body", children: [_jsx("div", { className: "solid-empty-listview-title", children: "No grouping rules applied" }), _jsx("div", { className: "solid-empty-listview-actions", children: _jsx(SolidButton, { type: "button", variant: "primary", size: "small", leftIcon: _jsx(Plus, { size: 14 }), onClick: openGroupingBuilder, children: "Create Groups" }) }), _jsx("div", { className: "solid-empty-listview-description", children: "Start by adding grouping rules and optional aggregations for this tree view." })] })] }) })) : (_jsxs(SolidTreeTable, { value: treeNodes, loading: treeLoading, expandedKeys: expandedKeys, onToggle: function (event) { return setExpandedKeys(event.value); }, onExpand: handleNodeExpand, tableStyle: { minWidth: "max-content" }, tableClassName: "solid-data-table", rowClassName: function (node) { var _a; return ((_a = node === null || node === void 0 ? void 0 : node.data) === null || _a === void 0 ? void 0 : _a.deletedAt) ? "greyed-out-row" : ""; }, selectionMode: "checkbox", selectionKeys: selectedNodeKeys, sortField: sortField, sortOrder: sortOrder, removableSort: true, onSort: function (e) {
1579
+ ((_y = solidTreeViewLayout === null || solidTreeViewLayout === void 0 ? void 0 : solidTreeViewLayout.attrs) === null || _y === void 0 ? void 0 : _y.configureView) !== false && (_jsx(SolidListViewConfigure, { listViewMetaData: solidTreeViewMetaData, solidListViewLayout: solidTreeViewLayout, setShowArchived: setShowArchived, showArchived: showArchived, viewData: solidTreeViewMetaData, sizeOptions: sizeOptions, setSize: setSize, size: size, viewModes: viewModes, params: params, actionsAllowed: actionsAllowed, selectedRecords: selectedRecords, setDialogVisible: setDeleteRecordsDialogVisible, setShowSaveFilterPopup: setShowSaveFilterPopup, filters: filters, handleFetchUpdatedRecords: handleFetchUpdatedRecords, setRecoverDialogVisible: setRecoverDialogVisible }))] })] }), ((_1 = (_0 = (_z = solidTreeViewMetaData === null || solidTreeViewMetaData === void 0 ? void 0 : solidTreeViewMetaData.data) === null || _z === void 0 ? void 0 : _z.solidView) === null || _0 === void 0 ? void 0 : _0.layout) === null || _1 === void 0 ? void 0 : _1.attrs.enableGlobalSearch) === true &&
1580
+ shouldShowMobileSearchElement && (_jsx("div", { className: "flex lg:hidden", children: _jsx(SolidGlobalSearchElement, { viewType: "tree", showSaveFilterPopup: showSaveFilterPopup, setShowSaveFilterPopup: setShowSaveFilterPopup, ref: solidGlobalSearchElementRef, viewData: solidTreeViewMetaData, handleApplyCustomFilter: handleApplyCustomFilter, filterPredicates: filterPredicates }) }))] }), _jsx("div", { className: "solid-datatable-wrapper solid-list-table-area solid-tree-table-area flex-1 min-h-0 overflow-hidden", children: activeGroupingRules.length === 0 ? (_jsx("div", { className: "solid-empty-listview-placeholder-container solid-tree-empty-state", children: _jsxs("div", { className: "solid-empty-listview-placeholder-panel", children: [_jsxs("div", { className: "solid-empty-listview-header", children: [_jsx("div", { className: "solid-empty-listview-header-title", children: treeViewTitle || "Tree View" }), _jsx("div", { className: "solid-empty-listview-header-subtitle", children: "Build a grouping structure to explore your data in hierarchical levels." })] }), _jsxs("div", { className: "solid-empty-listview-body", children: [_jsx("div", { className: "solid-empty-listview-title", children: "No grouping rules applied" }), _jsx("div", { className: "solid-empty-listview-actions", children: _jsx(SolidButton, { type: "button", variant: "primary", size: "small", leftIcon: _jsx(Plus, { size: 14 }), onClick: openGroupingBuilder, children: "Create Groups" }) }), _jsx("div", { className: "solid-empty-listview-description", children: "Start by adding grouping rules and optional aggregations for this tree view." })] })] }) })) : (_jsxs(SolidTreeTable, { value: treeNodes, loading: treeLoading, expandedKeys: expandedKeys, onToggle: function (event) { return setExpandedKeys(event.value); }, onExpand: handleNodeExpand, tableStyle: { minWidth: "max-content" }, tableClassName: "solid-data-table", rowClassName: function (node) { var _a; return ((_a = node === null || node === void 0 ? void 0 : node.data) === null || _a === void 0 ? void 0 : _a.deletedAt) ? "greyed-out-row" : ""; }, selectionMode: "checkbox", selectionKeys: selectedNodeKeys, sortField: sortField, sortOrder: sortOrder, removableSort: true, onSort: function (e) {
1476
1581
  setSortField(e.sortField || "");
1477
1582
  setSortOrder(e.sortOrder || 0);
1478
1583
  }, onRowClick: function (e) {
@@ -1526,16 +1631,10 @@ export var SolidTreeView = forwardRef(function (params, ref) {
1526
1631
  var canPrev = hasPrev(nodeKey);
1527
1632
  var canNext = hasNext(nodeKey);
1528
1633
  return (_jsxs("div", { className: "solid-tree-node-paginator", onClick: function (e) { return e.stopPropagation(); }, children: [_jsx(SolidButton, { type: "button", variant: "outline", size: "sm", leftIcon: _jsx(ChevronLeft, { size: 14 }), disabled: !canPrev || treeLoading, className: "solid-tree-paginator-btn", onClick: function () { return handleNodePageChange(nodeKey, "prev"); } }), _jsx(SolidButton, { type: "button", variant: "outline", size: "sm", leftIcon: _jsx(ChevronRight, { size: 14 }), disabled: !canNext || treeLoading, className: "solid-tree-paginator-btn", onClick: function () { return handleNodePageChange(nodeKey, "next"); } })] }));
1529
- } }, "tree-last-frozen-column")] })) }), _jsx(RootPaginationBar, {})] }) }), _jsxs(SolidDialog, { open: deleteEntity, onOpenChange: function (open) {
1530
- if (!open)
1531
- setDeleteEntity(false);
1532
- }, contentClassName: "solid-confirm-dialog solid-tree-confirm-dialog", showHeader: false, children: [_jsx(SolidDialogHeader, { children: _jsxs(SolidDialogTitle, { children: ["Delete ", ((_z = (_y = (_x = solidTreeViewMetaData === null || solidTreeViewMetaData === void 0 ? void 0 : solidTreeViewMetaData.data) === null || _x === void 0 ? void 0 : _x.solidView) === null || _y === void 0 ? void 0 : _y.model) === null || _z === void 0 ? void 0 : _z.displayName) || (params === null || params === void 0 ? void 0 : params.modelName)] }) }), _jsx(SolidDialogSeparator, {}), _jsx(SolidDialogBody, { children: _jsx(SolidDialogDescription, { className: "m-0", children: "Are you sure you want to delete this ".concat(((_2 = (_1 = (_0 = solidTreeViewMetaData === null || solidTreeViewMetaData === void 0 ? void 0 : solidTreeViewMetaData.data) === null || _0 === void 0 ? void 0 : _0.solidView) === null || _1 === void 0 ? void 0 : _1.model) === null || _2 === void 0 ? void 0 : _2.displayName) || (params === null || params === void 0 ? void 0 : params.modelName), "?") }) }), _jsxs(SolidDialogFooter, { children: [_jsx(SolidButton, { label: "Cancel", size: "sm", variant: "outline", onClick: function () { return setDeleteEntity(false); } }), _jsx(SolidButton, { label: "Delete", size: "sm", severity: "danger", onClick: handleDeleteEntity })] })] }), _jsxs(SolidDialog, { open: isDeleteRecordsDialogVisible, onOpenChange: function (open) {
1533
- if (!open)
1534
- setDeleteRecordsDialogVisible(false);
1535
- }, contentClassName: "solid-confirm-dialog solid-tree-confirm-dialog", showHeader: false, children: [_jsx(SolidDialogHeader, { children: _jsx(SolidDialogTitle, { children: "Confirm Delete" }) }), _jsx(SolidDialogSeparator, {}), _jsx(SolidDialogBody, { children: _jsx(SolidDialogDescription, { className: "m-0", children: "Are you sure you want to delete the selected records?" }) }), _jsxs(SolidDialogFooter, { children: [_jsx(SolidButton, { label: "Cancel", size: "sm", variant: "outline", onClick: onDeleteClose }), _jsx(SolidButton, { label: "Delete", size: "sm", severity: "danger", onClick: deleteBulk })] })] }), _jsxs(SolidDialog, { open: isRecoverDialogVisible, onOpenChange: function (open) {
1634
+ } }, "tree-last-frozen-column")] })) }), _jsx(RootPaginationBar, {})] }) }), _jsx(SolidConfirmDialog, { open: deleteEntity, onCancel: function () { return setDeleteEntity(false); }, onConfirm: handleDeleteEntity, className: "solid-shadcn-confirm-dialog solid-delete-confirm-dialog", headerClassName: "solid-shadcn-dialog-head", bodyClassName: "solid-shadcn-dialog-body", footerClassName: "solid-shadcn-dialog-actions", separatorClassName: "solid-shadcn-dialog-sep", showSeparator: true, title: "Delete ".concat(entityDisplayName), message: _jsx("p", { className: "solid-shadcn-dialog-text", children: "Are you sure you want to delete this ".concat(entityDisplayName, "?") }), confirmLabel: "Delete", cancelLabel: "Cancel" }), _jsx(SolidConfirmDialog, { open: isDeleteRecordsDialogVisible, onCancel: onDeleteClose, onConfirm: deleteBulk, className: "solid-shadcn-confirm-dialog solid-delete-confirm-dialog", headerClassName: "solid-shadcn-dialog-head", bodyClassName: "solid-shadcn-dialog-body", footerClassName: "solid-shadcn-dialog-actions", separatorClassName: "solid-shadcn-dialog-sep", showSeparator: true, title: "Delete Records", message: _jsx("p", { className: "solid-shadcn-dialog-text", children: "Are you sure you want to delete the selected records?" }), confirmLabel: "Delete", cancelLabel: "Cancel" }), _jsxs(SolidDialog, { open: isRecoverDialogVisible, onOpenChange: function (open) {
1536
1635
  if (!open)
1537
1636
  setRecoverDialogVisible(false);
1538
- }, contentClassName: "solid-confirm-dialog solid-tree-confirm-dialog", showHeader: false, children: [_jsx(SolidDialogHeader, { children: _jsx(SolidDialogTitle, { children: "Confirm Recover" }) }), _jsx(SolidDialogSeparator, {}), _jsx(SolidDialogBody, { children: _jsx(SolidDialogDescription, { className: "m-0", children: "Are you sure you want to recover all records?" }) }), _jsxs(SolidDialogFooter, { children: [_jsx(SolidButton, { label: "No", size: "sm", variant: "outline", onClick: function () { return setRecoverDialogVisible(false); } }), _jsx(SolidButton, { label: "Yes", size: "sm", severity: "danger", onClick: recoverAll })] })] })] }));
1637
+ }, contentClassName: "solid-confirm-dialog solid-tree-confirm-dialog", showHeader: false, children: [_jsx(SolidDialogHeader, { children: _jsx(SolidDialogTitle, { children: "Confirm Recover" }) }), _jsx(SolidDialogSeparator, {}), _jsx(SolidDialogBody, { children: _jsx(SolidDialogDescription, { className: "m-0", children: "Are you sure you want to recover all records?" }) }), _jsxs(SolidDialogFooter, { children: [_jsx(SolidButton, { label: "No", size: "sm", variant: "outline", onClick: function () { return setRecoverDialogVisible(false); } }), _jsx(SolidButton, { label: "Yes", size: "sm", severity: "danger", onClick: recoverAll })] })] }), openLightbox && (_jsx(SolidLightbox, { open: openLightbox, slides: lightboxSlides, onClose: function () { return setOpenLightbox(false); } }))] }));
1539
1638
  });
1540
1639
  SolidTreeView.displayName = "SolidTreeView";
1541
1640
  //# sourceMappingURL=SolidTreeView.js.map