@solidxai/core-ui 0.1.12-beta.6 → 0.1.12-beta.8
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.d.ts.map +1 -1
- package/dist/components/auth/AuthLayout.js +19 -17
- package/dist/components/auth/AuthLayout.js.map +1 -1
- package/dist/components/auth/AuthLayout.tsx +59 -34
- package/dist/components/common/BackendReconnectIndicator.d.ts +6 -0
- package/dist/components/common/BackendReconnectIndicator.d.ts.map +1 -0
- package/dist/components/common/BackendReconnectIndicator.js +25 -0
- package/dist/components/common/BackendReconnectIndicator.js.map +1 -0
- package/dist/components/common/BackendReconnectIndicator.tsx +45 -0
- package/dist/components/common/SettingsComponent.d.ts.map +1 -1
- package/dist/components/common/SettingsComponent.js +7 -3
- package/dist/components/common/SettingsComponent.js.map +1 -1
- package/dist/components/common/SettingsComponent.module.css +144 -12
- package/dist/components/common/SettingsComponent.tsx +22 -3
- package/dist/components/common/SolidAdmin.d.ts.map +1 -1
- package/dist/components/common/SolidAdmin.js +7 -2
- package/dist/components/common/SolidAdmin.js.map +1 -1
- package/dist/components/common/SolidAdmin.tsx +7 -2
- package/dist/components/common/SolidBreadcrumb.d.ts.map +1 -1
- package/dist/components/common/SolidBreadcrumb.js +1 -6
- package/dist/components/common/SolidBreadcrumb.js.map +1 -1
- package/dist/components/common/SolidBreadcrumb.tsx +1 -8
- package/dist/components/common/SolidMaterialSymbol.d.ts +10 -0
- package/dist/components/common/SolidMaterialSymbol.d.ts.map +1 -0
- package/dist/components/common/SolidMaterialSymbol.js +69 -0
- package/dist/components/common/SolidMaterialSymbol.js.map +1 -0
- package/dist/components/common/SolidMaterialSymbol.tsx +96 -0
- package/dist/components/common/SolidToastProvider.d.ts.map +1 -1
- package/dist/components/common/SolidToastProvider.js +14 -1
- package/dist/components/common/SolidToastProvider.js.map +1 -1
- package/dist/components/common/SolidToastProvider.tsx +19 -1
- 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 +7 -2
- package/dist/components/core/card/CardItem.js.map +1 -1
- package/dist/components/core/card/CardItem.tsx +30 -8
- package/dist/components/core/card/SolidCardView.d.ts.map +1 -1
- package/dist/components/core/card/SolidCardView.js +87 -21
- package/dist/components/core/card/SolidCardView.js.map +1 -1
- package/dist/components/core/card/SolidCardView.tsx +96 -40
- 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 +9 -7
- package/dist/components/core/card/SolidCardViewConfigure.js.map +1 -1
- package/dist/components/core/card/SolidCardViewConfigure.tsx +14 -1
- package/dist/components/core/common/SolidAccountSettings/SolidAccountSettings.module.css +3 -1
- package/dist/components/core/common/SolidGlobalSearchElement.d.ts.map +1 -1
- package/dist/components/core/common/SolidGlobalSearchElement.js +4 -3
- package/dist/components/core/common/SolidGlobalSearchElement.js.map +1 -1
- package/dist/components/core/common/SolidGlobalSearchElement.tsx +15 -19
- package/dist/components/core/extension/solid-core/modelMetadata/list/DeleteModelRowAction.d.ts.map +1 -1
- package/dist/components/core/extension/solid-core/modelMetadata/list/DeleteModelRowAction.js +43 -16
- package/dist/components/core/extension/solid-core/modelMetadata/list/DeleteModelRowAction.js.map +1 -1
- package/dist/components/core/extension/solid-core/modelMetadata/list/DeleteModelRowAction.tsx +24 -2
- package/dist/components/core/form/SolidFormFooter.js +1 -1
- package/dist/components/core/form/SolidFormFooter.js.map +1 -1
- package/dist/components/core/form/SolidFormFooter.tsx +1 -1
- package/dist/components/core/form/SolidFormLayouts.js +1 -1
- package/dist/components/core/form/SolidFormLayouts.js.map +1 -1
- package/dist/components/core/form/SolidFormLayouts.tsx +2 -2
- package/dist/components/core/form/fields/SolidMediaMultipleField.d.ts.map +1 -1
- package/dist/components/core/form/fields/SolidMediaMultipleField.js +120 -56
- package/dist/components/core/form/fields/SolidMediaMultipleField.js.map +1 -1
- package/dist/components/core/form/fields/SolidMediaMultipleField.tsx +63 -50
- package/dist/components/core/form/fields/SolidMediaSingleField.d.ts.map +1 -1
- package/dist/components/core/form/fields/SolidMediaSingleField.js +115 -37
- package/dist/components/core/form/fields/SolidMediaSingleField.js.map +1 -1
- package/dist/components/core/form/fields/SolidMediaSingleField.tsx +36 -35
- package/dist/components/core/form/fields/SolidRichTextField.d.ts.map +1 -1
- package/dist/components/core/form/fields/SolidRichTextField.js +67 -4
- package/dist/components/core/form/fields/SolidRichTextField.js.map +1 -1
- package/dist/components/core/form/fields/SolidRichTextField.tsx +89 -7
- package/dist/components/core/form/fields/mediaFieldUtils.d.ts +3 -0
- package/dist/components/core/form/fields/mediaFieldUtils.d.ts.map +1 -0
- package/dist/components/core/form/fields/mediaFieldUtils.js +30 -0
- package/dist/components/core/form/fields/mediaFieldUtils.js.map +1 -0
- package/dist/components/core/form/fields/mediaFieldUtils.ts +45 -0
- package/dist/components/core/form/fields/relations/RolesGroupedByModuleWidget.d.ts.map +1 -1
- package/dist/components/core/form/fields/relations/RolesGroupedByModuleWidget.js +1 -1
- package/dist/components/core/form/fields/relations/RolesGroupedByModuleWidget.js.map +1 -1
- package/dist/components/core/form/fields/relations/RolesGroupedByModuleWidget.tsx +3 -1
- package/dist/components/core/form/fields/relations/SolidRelationManyToOneField.d.ts.map +1 -1
- package/dist/components/core/form/fields/relations/SolidRelationManyToOneField.js +22 -23
- package/dist/components/core/form/fields/relations/SolidRelationManyToOneField.js.map +1 -1
- package/dist/components/core/form/fields/relations/SolidRelationManyToOneField.tsx +13 -7
- package/dist/components/core/form/fields/widgets/SolidIconEditWidget.d.ts.map +1 -1
- package/dist/components/core/form/fields/widgets/SolidIconEditWidget.js +16 -11
- package/dist/components/core/form/fields/widgets/SolidIconEditWidget.js.map +1 -1
- package/dist/components/core/form/fields/widgets/SolidIconEditWidget.tsx +32 -18
- package/dist/components/core/form/fields/widgets/SolidIconViewWidget.d.ts.map +1 -1
- package/dist/components/core/form/fields/widgets/SolidIconViewWidget.js +3 -1
- package/dist/components/core/form/fields/widgets/SolidIconViewWidget.js.map +1 -1
- package/dist/components/core/form/fields/widgets/SolidIconViewWidget.tsx +11 -5
- 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 +10 -5
- package/dist/components/core/kanban/KanbanCard.js.map +1 -1
- package/dist/components/core/kanban/KanbanCard.tsx +28 -12
- 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.map +1 -1
- package/dist/components/core/kanban/SolidKanbanView.js +154 -25
- package/dist/components/core/kanban/SolidKanbanView.js.map +1 -1
- package/dist/components/core/kanban/SolidKanbanView.tsx +129 -16
- package/dist/components/core/kanban/SolidKanbanViewConfigure.d.ts +1 -1
- package/dist/components/core/kanban/SolidKanbanViewConfigure.d.ts.map +1 -1
- package/dist/components/core/kanban/SolidKanbanViewConfigure.js +13 -10
- package/dist/components/core/kanban/SolidKanbanViewConfigure.js.map +1 -1
- package/dist/components/core/kanban/SolidKanbanViewConfigure.tsx +18 -3
- package/dist/components/core/list/SolidDataTable.d.ts.map +1 -1
- package/dist/components/core/list/SolidDataTable.js +3 -2
- package/dist/components/core/list/SolidDataTable.js.map +1 -1
- package/dist/components/core/list/SolidDataTable.tsx +3 -2
- package/dist/components/core/list/SolidListView.d.ts.map +1 -1
- package/dist/components/core/list/SolidListView.js +16 -5
- package/dist/components/core/list/SolidListView.js.map +1 -1
- package/dist/components/core/list/SolidListView.tsx +20 -8
- package/dist/components/core/list/SolidListViewColumn.d.ts.map +1 -1
- package/dist/components/core/list/SolidListViewColumn.js +1 -0
- package/dist/components/core/list/SolidListViewColumn.js.map +1 -1
- package/dist/components/core/list/SolidListViewColumn.tsx +1 -0
- package/dist/components/core/list/columns/SolidShortTextColumn.d.ts.map +1 -1
- package/dist/components/core/list/columns/SolidShortTextColumn.js +7 -2
- package/dist/components/core/list/columns/SolidShortTextColumn.js.map +1 -1
- package/dist/components/core/list/columns/SolidShortTextColumn.tsx +7 -2
- package/dist/components/core/list/columns/relations/SolidRelationManyToManyColumn.d.ts.map +1 -1
- package/dist/components/core/list/columns/relations/SolidRelationManyToManyColumn.js +4 -1
- package/dist/components/core/list/columns/relations/SolidRelationManyToManyColumn.js.map +1 -1
- package/dist/components/core/list/columns/relations/SolidRelationManyToManyColumn.tsx +5 -2
- 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/list/columns/relations/SolidRelationOneToManyColumn.d.ts.map +1 -1
- package/dist/components/core/list/columns/relations/SolidRelationOneToManyColumn.js +4 -1
- package/dist/components/core/list/columns/relations/SolidRelationOneToManyColumn.js.map +1 -1
- package/dist/components/core/list/columns/relations/SolidRelationOneToManyColumn.tsx +5 -2
- package/dist/components/core/locales/SolidLocale.d.ts.map +1 -1
- package/dist/components/core/locales/SolidLocale.js +1 -1
- package/dist/components/core/locales/SolidLocale.js.map +1 -1
- package/dist/components/core/locales/SolidLocale.tsx +1 -0
- package/dist/components/core/model/CreateModel.css +26 -0
- package/dist/components/core/model/FieldMetaData.d.ts.map +1 -1
- package/dist/components/core/model/FieldMetaData.js +21 -3
- package/dist/components/core/model/FieldMetaData.js.map +1 -1
- package/dist/components/core/model/FieldMetaData.tsx +45 -4
- package/dist/components/core/model/FieldMetaDataForm.css +82 -0
- package/dist/components/core/model/FieldMetaDataForm.d.ts +1 -0
- package/dist/components/core/model/FieldMetaDataForm.d.ts.map +1 -1
- package/dist/components/core/model/FieldMetaDataForm.js +246 -235
- package/dist/components/core/model/FieldMetaDataForm.js.map +1 -1
- package/dist/components/core/model/FieldMetaDataForm.tsx +46 -34
- package/dist/components/core/model/FieldSelector.js +1 -1
- package/dist/components/core/model/FieldSelector.js.map +1 -1
- package/dist/components/core/model/FieldSelector.tsx +1 -1
- package/dist/components/core/model/ModelMetaData.js +1 -1
- package/dist/components/core/model/ModelMetaData.js.map +1 -1
- package/dist/components/core/model/ModelMetaData.tsx +1 -1
- package/dist/components/core/module/CreateModule.css +55 -2
- package/dist/components/core/module/CreateModule.d.ts.map +1 -1
- package/dist/components/core/module/CreateModule.js +2 -2
- package/dist/components/core/module/CreateModule.js.map +1 -1
- package/dist/components/core/module/CreateModule.tsx +3 -2
- package/dist/components/core/module/ModuleMetadataExplorer.css +27 -0
- package/dist/components/core/module/ModuleMetadataExplorer.d.ts.map +1 -1
- package/dist/components/core/module/ModuleMetadataExplorer.js +1 -1
- package/dist/components/core/module/ModuleMetadataExplorer.js.map +1 -1
- package/dist/components/core/module/ModuleMetadataExplorer.tsx +1 -0
- package/dist/components/core/tree/SolidTreeTable.d.ts +2 -1
- package/dist/components/core/tree/SolidTreeTable.d.ts.map +1 -1
- package/dist/components/core/tree/SolidTreeTable.js +2 -2
- package/dist/components/core/tree/SolidTreeTable.js.map +1 -1
- package/dist/components/core/tree/SolidTreeTable.tsx +3 -1
- package/dist/components/core/tree/SolidTreeView.d.ts.map +1 -1
- package/dist/components/core/tree/SolidTreeView.js +44 -16
- package/dist/components/core/tree/SolidTreeView.js.map +1 -1
- package/dist/components/core/tree/SolidTreeView.tsx +55 -24
- package/dist/components/core/users/CreateUser.d.ts.map +1 -1
- package/dist/components/core/users/CreateUser.js +45 -32
- package/dist/components/core/users/CreateUser.js.map +1 -1
- package/dist/components/core/users/CreateUser.tsx +15 -4
- package/dist/components/layout/AdminHeaderActions.d.ts.map +1 -1
- package/dist/components/layout/AdminHeaderActions.js +10 -9
- package/dist/components/layout/AdminHeaderActions.js.map +1 -1
- package/dist/components/layout/AdminHeaderActions.tsx +2 -0
- package/dist/components/layout/AppSidebar.d.ts.map +1 -1
- package/dist/components/layout/AppSidebar.js +2 -1
- package/dist/components/layout/AppSidebar.js.map +1 -1
- package/dist/components/layout/AppSidebar.tsx +12 -5
- package/dist/components/layout/SolidMenuItemIcon.d.ts +9 -0
- package/dist/components/layout/SolidMenuItemIcon.d.ts.map +1 -0
- package/dist/components/layout/SolidMenuItemIcon.js +20 -0
- package/dist/components/layout/SolidMenuItemIcon.js.map +1 -0
- package/dist/components/layout/SolidMenuItemIcon.tsx +45 -0
- package/dist/components/layout/navbar-two-menu.d.ts.map +1 -1
- package/dist/components/layout/navbar-two-menu.js +6 -7
- package/dist/components/layout/navbar-two-menu.js.map +1 -1
- package/dist/components/layout/navbar-two-menu.tsx +4 -12
- package/dist/components/shad-cn-ui/SolidCodeEditor.d.ts.map +1 -1
- package/dist/components/shad-cn-ui/SolidCodeEditor.js +30 -2
- package/dist/components/shad-cn-ui/SolidCodeEditor.js.map +1 -1
- package/dist/components/shad-cn-ui/SolidCodeEditor.tsx +38 -1
- package/dist/helpers/backendHealthMonitor.d.ts +39 -0
- package/dist/helpers/backendHealthMonitor.d.ts.map +1 -0
- package/dist/helpers/backendHealthMonitor.js +255 -0
- package/dist/helpers/backendHealthMonitor.js.map +1 -0
- package/dist/helpers/backendHealthMonitor.ts +177 -0
- package/dist/helpers/helpers.d.ts +1 -0
- package/dist/helpers/helpers.d.ts.map +1 -1
- package/dist/helpers/helpers.js +9 -0
- package/dist/helpers/helpers.js.map +1 -1
- package/dist/helpers/helpers.ts +11 -1
- package/dist/helpers/menuItemIcons.d.ts +34 -0
- package/dist/helpers/menuItemIcons.d.ts.map +1 -0
- package/dist/helpers/menuItemIcons.js +144 -0
- package/dist/helpers/menuItemIcons.js.map +1 -0
- package/dist/helpers/menuItemIcons.ts +191 -0
- package/dist/helpers/relationDisplay.d.ts +3 -0
- package/dist/helpers/relationDisplay.d.ts.map +1 -0
- package/dist/helpers/relationDisplay.js +92 -0
- package/dist/helpers/relationDisplay.js.map +1 -0
- package/dist/helpers/relationDisplay.ts +101 -0
- package/dist/helpers/settingsPayload.d.ts +1 -0
- package/dist/helpers/settingsPayload.d.ts.map +1 -1
- package/dist/helpers/settingsPayload.js.map +1 -1
- package/dist/helpers/settingsPayload.ts +1 -0
- package/dist/helpers/solidIcons.d.ts +2 -0
- package/dist/helpers/solidIcons.d.ts.map +1 -1
- package/dist/helpers/solidIcons.js +8 -0
- package/dist/helpers/solidIcons.js.map +1 -1
- package/dist/helpers/solidIcons.tsx +10 -1
- package/dist/helpers/waitForBackendAvailability.d.ts +1 -0
- package/dist/helpers/waitForBackendAvailability.d.ts.map +1 -1
- package/dist/helpers/waitForBackendAvailability.js +35 -22
- package/dist/helpers/waitForBackendAvailability.js.map +1 -1
- package/dist/helpers/waitForBackendAvailability.ts +18 -12
- package/dist/http/solidHttp.d.ts.map +1 -1
- package/dist/http/solidHttp.js +10 -4
- package/dist/http/solidHttp.js.map +1 -1
- package/dist/http/solidHttp.ts +9 -4
- package/dist/redux/api/datasourceIntrospectionApi.d.ts +4 -0
- package/dist/redux/api/datasourceIntrospectionApi.d.ts.map +1 -1
- package/dist/redux/api/datasourceIntrospectionApi.js.map +1 -1
- package/dist/redux/api/datasourceIntrospectionApi.ts +4 -0
- package/dist/redux/api/fetchBaseQuery.d.ts.map +1 -1
- package/dist/redux/api/fetchBaseQuery.js +9 -3
- package/dist/redux/api/fetchBaseQuery.js.map +1 -1
- package/dist/redux/api/fetchBaseQuery.tsx +9 -3
- package/dist/redux/store/StoreProvider.d.ts.map +1 -1
- package/dist/redux/store/StoreProvider.js +4 -3
- package/dist/redux/store/StoreProvider.js.map +1 -1
- package/dist/redux/store/StoreProvider.tsx +4 -3
- package/dist/redux/store/defaultStoreConfig.d.ts +5 -5
- package/dist/resources/globals.css +341 -49
- package/dist/resources/solid-custom.css +464 -11
- package/dist/resources/solid-responsive.css +31 -20
- package/dist/resources/solid-tailwind-generated.css +1 -1
- package/dist/routes/AppEventListener.d.ts.map +1 -1
- package/dist/routes/AppEventListener.js +23 -0
- package/dist/routes/AppEventListener.js.map +1 -1
- package/dist/routes/AppEventListener.tsx +29 -0
- package/dist/routes/pages/admin/core/DashboardPage.module.css +12 -0
- package/dist/routes/pages/admin/core/DatasourceIntrospectionPage.css +306 -3
- package/dist/routes/pages/admin/core/DatasourceIntrospectionPage.d.ts.map +1 -1
- package/dist/routes/pages/admin/core/DatasourceIntrospectionPage.js +745 -393
- package/dist/routes/pages/admin/core/DatasourceIntrospectionPage.js.map +1 -1
- package/dist/routes/pages/admin/core/DatasourceIntrospectionPage.tsx +1074 -420
- package/dist/routes/pages/admin/core/DatasourcesPage.css +15 -0
- package/dist/routes/pages/admin/core/DatasourcesPage.d.ts.map +1 -1
- package/dist/routes/pages/admin/core/DatasourcesPage.js +7 -188
- package/dist/routes/pages/admin/core/DatasourcesPage.js.map +1 -1
- package/dist/routes/pages/admin/core/DatasourcesPage.tsx +3 -393
- package/package.json +1 -1
|
@@ -32,21 +32,26 @@ interface KanbanCardProps {
|
|
|
32
32
|
cardNode?: any;
|
|
33
33
|
DynamicCardWidget?: any;
|
|
34
34
|
onDelete?: (record: Data) => void;
|
|
35
|
+
onRecover?: (record: Data) => void;
|
|
36
|
+
showArchived?: boolean;
|
|
35
37
|
}
|
|
36
38
|
|
|
37
|
-
const KanbanCard: React.FC<KanbanCardProps> = ({ data, solidKanbanViewMetaData, index, isDragDisabled = false, setLightboxUrls, setOpenLightbox, editButtonUrl, groupByFieldName, group, cardNode, DynamicCardWidget, onDelete }) => {
|
|
39
|
+
const KanbanCard: React.FC<KanbanCardProps> = ({ data, solidKanbanViewMetaData, index, isDragDisabled = false, setLightboxUrls, setOpenLightbox, editButtonUrl, groupByFieldName, group, cardNode, DynamicCardWidget, onDelete, onRecover, showArchived }) => {
|
|
38
40
|
const router = useRouter()
|
|
41
|
+
const isArchivedRecord = data?.deletedAt !== null && data?.deletedAt !== undefined;
|
|
39
42
|
|
|
40
43
|
const persistReturnView = () => {
|
|
41
44
|
storeCurrentModelViewContext();
|
|
42
45
|
};
|
|
43
46
|
|
|
44
47
|
const openRecord = () => {
|
|
48
|
+
if (isArchivedRecord) return;
|
|
45
49
|
persistReturnView();
|
|
46
50
|
router.push(`${editButtonUrl}/${data?.id}`);
|
|
47
51
|
};
|
|
48
52
|
|
|
49
53
|
const openEdit = () => {
|
|
54
|
+
if (isArchivedRecord) return;
|
|
50
55
|
persistReturnView();
|
|
51
56
|
router.push(`${editButtonUrl}/${data?.id}`);
|
|
52
57
|
};
|
|
@@ -65,14 +70,25 @@ const KanbanCard: React.FC<KanbanCardProps> = ({ data, solidKanbanViewMetaData,
|
|
|
65
70
|
</button>
|
|
66
71
|
</SolidDropdownMenuTrigger>
|
|
67
72
|
<SolidDropdownMenuContent className="solid-custom-overlay" align="end">
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
73
|
+
{!isArchivedRecord ? (
|
|
74
|
+
<SolidDropdownMenuItem
|
|
75
|
+
className="solid-header-dropdown-item"
|
|
76
|
+
onSelect={openEdit}
|
|
77
|
+
>
|
|
78
|
+
<SolidIcon name="si-pencil" className="solid-header-action-button-icon" aria-hidden />
|
|
79
|
+
<span className="solid-header-action-button-label">Edit</span>
|
|
80
|
+
</SolidDropdownMenuItem>
|
|
81
|
+
) : null}
|
|
82
|
+
{showArchived && data?.deletedAt !== null && data?.deletedAt !== undefined && onRecover ? (
|
|
83
|
+
<SolidDropdownMenuItem
|
|
84
|
+
className="solid-header-dropdown-item"
|
|
85
|
+
onSelect={() => onRecover(data)}
|
|
86
|
+
>
|
|
87
|
+
<SolidIcon name="si-refresh" className="solid-header-action-button-icon" aria-hidden />
|
|
88
|
+
<span className="solid-header-action-button-label">Recover</span>
|
|
89
|
+
</SolidDropdownMenuItem>
|
|
90
|
+
) : null}
|
|
91
|
+
{onDelete && (data?.deletedAt === null || data?.deletedAt === undefined) ? (
|
|
76
92
|
<SolidDropdownMenuItem
|
|
77
93
|
className="solid-header-dropdown-item solid-header-dropdown-item-danger"
|
|
78
94
|
onSelect={() => onDelete(data)}
|
|
@@ -102,12 +118,12 @@ const KanbanCard: React.FC<KanbanCardProps> = ({ data, solidKanbanViewMetaData,
|
|
|
102
118
|
{/* <p className="kanban-card-content">{data.content}</p> */}
|
|
103
119
|
<div
|
|
104
120
|
style={{
|
|
105
|
-
opacity: snapshot.isDragging ? 0.9 : 1,
|
|
121
|
+
opacity: snapshot.isDragging ? 0.9 : (isArchivedRecord ? 0.55 : 1),
|
|
106
122
|
transform: snapshot.isDragging ? "rotate(-2deg)" : "",
|
|
107
|
-
cursor: isDragDisabled ? "pointer" : "grab"
|
|
123
|
+
cursor: isArchivedRecord ? "default" : (isDragDisabled ? "pointer" : "grab")
|
|
108
124
|
}}
|
|
109
125
|
elevation={snapshot.isDragging ? 3 : 1}
|
|
110
|
-
className=
|
|
126
|
+
className={`solid-kanban-card${isArchivedRecord ? " greyed-out-row" : ""}`}
|
|
111
127
|
onClick={openRecord}
|
|
112
128
|
>
|
|
113
129
|
{renderKanbanAction(data)}
|
|
@@ -20,9 +20,11 @@ interface KanbanColumnProps {
|
|
|
20
20
|
toggleFold: (groupByField: string) => void;
|
|
21
21
|
handleLoadMore: (groupByField: string) => void;
|
|
22
22
|
onDelete?: (record: GroupData) => void;
|
|
23
|
+
onRecover?: (record: GroupData) => void;
|
|
24
|
+
showArchived?: boolean;
|
|
23
25
|
setLightboxUrls: any;
|
|
24
26
|
setOpenLightbox: any;
|
|
25
27
|
}
|
|
26
|
-
declare const KanbanColumn: ({ groupByField, solidKanbanViewMetaData, group, groupData, isKanbanDragEnabled, cardNode, DynamicCardWidget, toggleFold, handleLoadMore, onDelete, setLightboxUrls, setOpenLightbox, editButtonUrl }: KanbanColumnProps) => import("react/jsx-runtime").JSX.Element;
|
|
28
|
+
declare const KanbanColumn: ({ groupByField, solidKanbanViewMetaData, group, groupData, isKanbanDragEnabled, cardNode, DynamicCardWidget, toggleFold, handleLoadMore, onDelete, onRecover, setLightboxUrls, setOpenLightbox, editButtonUrl, showArchived }: KanbanColumnProps) => import("react/jsx-runtime").JSX.Element;
|
|
27
29
|
export default KanbanColumn;
|
|
28
30
|
//# sourceMappingURL=KanbanColumn.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"KanbanColumn.d.ts","sourceRoot":"","sources":["../../../../src/components/core/kanban/KanbanColumn.tsx"],"names":[],"mappings":"AAcA,UAAU,KAAK;IACb,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,OAAO,CAAC;IAChB,KAAK,EAAE,MAAM,CAAC;IACd,WAAW,EAAE,MAAM,CAAC;CACrB;AAED,UAAU,SAAS;IACjB,EAAE,EAAE,MAAM,CAAC;IACX,KAAK,EAAE,MAAM,CAAC;IACd,YAAY,EAAE,MAAM,CAAC;CACtB;AAED,UAAU,iBAAiB;IACzB,YAAY,EAAE,MAAM,CAAC;IACrB,KAAK,EAAE,KAAK,CAAC;IACb,SAAS,EAAE,SAAS,EAAE,CAAC;IACvB,mBAAmB,CAAC,EAAE,OAAO,CAAC;IAC9B,QAAQ,CAAC,EAAE,GAAG,CAAC;IACf,iBAAiB,CAAC,EAAE,GAAG,CAAC;IACxB,UAAU,EAAE,CAAC,YAAY,EAAE,MAAM,KAAK,IAAI,CAAC;IAC3C,cAAc,EAAE,CAAC,YAAY,EAAE,MAAM,KAAK,IAAI,CAAC;IAC/C,QAAQ,CAAC,EAAE,CAAC,MAAM,EAAE,SAAS,KAAK,IAAI,CAAC;IACvC,eAAe,EAAE,GAAG,CAAC;IACrB,eAAe,EAAE,GAAG,CAAA;CACrB;AAGD,QAAA,MAAM,YAAY,
|
|
1
|
+
{"version":3,"file":"KanbanColumn.d.ts","sourceRoot":"","sources":["../../../../src/components/core/kanban/KanbanColumn.tsx"],"names":[],"mappings":"AAcA,UAAU,KAAK;IACb,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,OAAO,CAAC;IAChB,KAAK,EAAE,MAAM,CAAC;IACd,WAAW,EAAE,MAAM,CAAC;CACrB;AAED,UAAU,SAAS;IACjB,EAAE,EAAE,MAAM,CAAC;IACX,KAAK,EAAE,MAAM,CAAC;IACd,YAAY,EAAE,MAAM,CAAC;CACtB;AAED,UAAU,iBAAiB;IACzB,YAAY,EAAE,MAAM,CAAC;IACrB,KAAK,EAAE,KAAK,CAAC;IACb,SAAS,EAAE,SAAS,EAAE,CAAC;IACvB,mBAAmB,CAAC,EAAE,OAAO,CAAC;IAC9B,QAAQ,CAAC,EAAE,GAAG,CAAC;IACf,iBAAiB,CAAC,EAAE,GAAG,CAAC;IACxB,UAAU,EAAE,CAAC,YAAY,EAAE,MAAM,KAAK,IAAI,CAAC;IAC3C,cAAc,EAAE,CAAC,YAAY,EAAE,MAAM,KAAK,IAAI,CAAC;IAC/C,QAAQ,CAAC,EAAE,CAAC,MAAM,EAAE,SAAS,KAAK,IAAI,CAAC;IACvC,SAAS,CAAC,EAAE,CAAC,MAAM,EAAE,SAAS,KAAK,IAAI,CAAC;IACxC,YAAY,CAAC,EAAE,OAAO,CAAC;IACvB,eAAe,EAAE,GAAG,CAAC;IACrB,eAAe,EAAE,GAAG,CAAA;CACrB;AAGD,QAAA,MAAM,YAAY,kOAA0O,iBAAiB,4CA0E5Q,CAAC;AAEF,eAAe,YAAY,CAAC"}
|
|
@@ -15,13 +15,13 @@ import { asCompatibleReactNode, CompatibleDroppable } from "../common/dndCompat"
|
|
|
15
15
|
import { SolidButton, SolidDropdownMenu, SolidDropdownMenuContent, SolidDropdownMenuItem, SolidDropdownMenuTrigger, SolidIcon, } from "../../shad-cn-ui";
|
|
16
16
|
// @ts-ignore
|
|
17
17
|
var KanbanColumn = function (_a) {
|
|
18
|
-
var groupByField = _a.groupByField, solidKanbanViewMetaData = _a.solidKanbanViewMetaData, group = _a.group, groupData = _a.groupData, _b = _a.isKanbanDragEnabled, isKanbanDragEnabled = _b === void 0 ? true : _b, cardNode = _a.cardNode, DynamicCardWidget = _a.DynamicCardWidget, toggleFold = _a.toggleFold, handleLoadMore = _a.handleLoadMore, onDelete = _a.onDelete, setLightboxUrls = _a.setLightboxUrls, setOpenLightbox = _a.setOpenLightbox, editButtonUrl = _a.editButtonUrl;
|
|
18
|
+
var groupByField = _a.groupByField, solidKanbanViewMetaData = _a.solidKanbanViewMetaData, group = _a.group, groupData = _a.groupData, _b = _a.isKanbanDragEnabled, isKanbanDragEnabled = _b === void 0 ? true : _b, cardNode = _a.cardNode, DynamicCardWidget = _a.DynamicCardWidget, toggleFold = _a.toggleFold, handleLoadMore = _a.handleLoadMore, onDelete = _a.onDelete, onRecover = _a.onRecover, setLightboxUrls = _a.setLightboxUrls, setOpenLightbox = _a.setOpenLightbox, editButtonUrl = _a.editButtonUrl, showArchived = _a.showArchived;
|
|
19
19
|
return (_jsxs("div", { className: group.folded ? "kanban-column kanban-column-folded" : "kanban-column", children: [_jsxs("div", { className: "kaban-heading-area", children: [group.folded &&
|
|
20
20
|
_jsx("a", { onClick: function (e) { return toggleFold(groupByField); }, children: _jsxs("div", { className: "flex items-center", children: [_jsxs("div", { className: "kanban-arrow-icon-container", children: [_jsx(SolidIcon, { name: "si-sort-up-fill", "aria-hidden": true }), _jsx(SolidIcon, { name: "si-sort-down-fill", "aria-hidden": true })] }), _jsxs("p", { className: "kanban-group-heading", children: ["".concat(group.label), _jsx("span", { className: "kanban-count-badge", children: group.count })] })] }) }), !group.folded &&
|
|
21
21
|
_jsx("div", { className: "flex items-center", children: _jsxs("p", { className: "kanban-group-heading", children: ["".concat(group.label), _jsx("span", { className: "kanban-count-badge", children: group.count })] }) }), !group.folded &&
|
|
22
22
|
_jsxs(SolidDropdownMenu, { children: [_jsx(SolidDropdownMenuTrigger, { asChild: true, children: _jsx("button", { type: "button", className: "solid-header-cog-trigger kanban-column-cogwheel", "aria-label": "Open ".concat(group.label, " lane options"), children: _jsx(SolidIcon, { name: "si-cog", "aria-hidden": true }) }) }), _jsx(SolidDropdownMenuContent, { className: "solid-custom-overlay kanban-options-panel", align: "start", children: _jsxs(SolidDropdownMenuItem, { className: "solid-header-dropdown-item kanban-fold-action-button", onSelect: function () { return toggleFold(groupByField); }, children: [_jsx(SolidIcon, { name: "si-angle-double-left", className: "solid-header-action-button-icon", "aria-hidden": true }), _jsx("span", { className: "solid-header-action-button-label", children: "Fold" })] }) })] })] }), !group.folded && (_jsx(CompatibleDroppable, { droppableId: groupByField, isDropDisabled: !isKanbanDragEnabled, children: function (provided) { return (_jsxs("div", __assign({ ref: provided.innerRef }, provided.droppableProps, { style: { minHeight: "100px" }, children: [groupData.map(function (data, index) { return (
|
|
23
23
|
// @ts-ignore
|
|
24
|
-
_jsx(KanbanCard, { data: data, solidKanbanViewMetaData: solidKanbanViewMetaData, index: index, isDragDisabled: !isKanbanDragEnabled, setLightboxUrls: setLightboxUrls, setOpenLightbox: setOpenLightbox, editButtonUrl: editButtonUrl, groupByFieldName: groupByField, group: group, cardNode: cardNode, DynamicCardWidget: DynamicCardWidget, onDelete: onDelete }, data.id)); }), asCompatibleReactNode(provided.placeholder), group.count > 0 && (group.count > (group.limit * group.currentPage)) &&
|
|
24
|
+
_jsx(KanbanCard, { data: data, solidKanbanViewMetaData: solidKanbanViewMetaData, index: index, isDragDisabled: !isKanbanDragEnabled || Boolean(data === null || data === void 0 ? void 0 : data.deletedAt), setLightboxUrls: setLightboxUrls, setOpenLightbox: setOpenLightbox, editButtonUrl: editButtonUrl, groupByFieldName: groupByField, group: group, cardNode: cardNode, DynamicCardWidget: DynamicCardWidget, onDelete: onDelete, onRecover: onRecover, showArchived: showArchived }, data.id)); }), asCompatibleReactNode(provided.placeholder), group.count > 0 && (group.count > (group.limit * group.currentPage)) &&
|
|
25
25
|
_jsx(SolidButton, { type: "button", variant: "ghost", size: "sm", className: "kaban-load-more", onClick: function () { return handleLoadMore(groupByField); }, children: "Load more data... (".concat(group.count - (group.limit * group.currentPage), " remaining)") })] }))); } }))] }));
|
|
26
26
|
};
|
|
27
27
|
export default KanbanColumn;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"KanbanColumn.js","sourceRoot":"","sources":["../../../../src/components/core/kanban/KanbanColumn.tsx"],"names":[],"mappings":";;;;;;;;;;;;AAEA,OAAO,UAAU,MAAM,cAAc,CAAC;AACtC,OAAO,EAAE,qBAAqB,EAAE,mBAAmB,EAAE,MAAM,qBAAqB,CAAC;AACjF,OAAO,EACL,WAAW,EACX,iBAAiB,EACjB,wBAAwB,EACxB,qBAAqB,EACrB,wBAAwB,EACxB,SAAS,GACV,MAAM,kBAAkB,CAAC;
|
|
1
|
+
{"version":3,"file":"KanbanColumn.js","sourceRoot":"","sources":["../../../../src/components/core/kanban/KanbanColumn.tsx"],"names":[],"mappings":"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","sourcesContent":["import React from \"react\";\nimport { DroppableProvided } from \"@hello-pangea/dnd\";\nimport KanbanCard from \"./KanbanCard\";\nimport { asCompatibleReactNode, CompatibleDroppable } from \"../common/dndCompat\";\nimport {\n SolidButton,\n SolidDropdownMenu,\n SolidDropdownMenuContent,\n SolidDropdownMenuItem,\n SolidDropdownMenuTrigger,\n SolidIcon,\n} from \"../../shad-cn-ui\";\n\n// Define types for props\ninterface Group {\n label: string;\n count: number;\n folded: boolean;\n limit: number;\n currentPage: number;\n}\n\ninterface GroupData {\n id: string;\n title: string;\n groupByField: string;\n}\n\ninterface KanbanColumnProps {\n groupByField: string;\n group: Group;\n groupData: GroupData[];\n isKanbanDragEnabled?: boolean;\n cardNode?: any;\n DynamicCardWidget?: any;\n toggleFold: (groupByField: string) => void;\n handleLoadMore: (groupByField: string) => void;\n onDelete?: (record: GroupData) => void;\n onRecover?: (record: GroupData) => void;\n showArchived?: boolean;\n setLightboxUrls: any,\n setOpenLightbox: any\n}\n\n// @ts-ignore\nconst KanbanColumn = ({ groupByField, solidKanbanViewMetaData, group, groupData, isKanbanDragEnabled = true, cardNode, DynamicCardWidget, toggleFold, handleLoadMore, onDelete, onRecover, setLightboxUrls, setOpenLightbox, editButtonUrl, showArchived }: KanbanColumnProps) => {\n return (\n <div className={group.folded ? \"kanban-column kanban-column-folded\" : \"kanban-column\"}>\n <div className=\"kaban-heading-area\">\n {group.folded &&\n <a onClick={e => toggleFold(groupByField)}>\n <div className=\"flex items-center\">\n <div className=\"kanban-arrow-icon-container\">\n <SolidIcon name=\"si-sort-up-fill\" aria-hidden />\n <SolidIcon name=\"si-sort-down-fill\" aria-hidden />\n </div>\n <p className=\"kanban-group-heading\">{`${group.label}`}<span className=\"kanban-count-badge\">{group.count}</span></p>\n </div>\n </a>\n }\n\n {!group.folded &&\n <div className=\"flex items-center\">\n <p className=\"kanban-group-heading\">{`${group.label}`}<span className=\"kanban-count-badge\">{group.count}</span></p>\n </div>\n }\n {!group.folded &&\n <SolidDropdownMenu>\n <SolidDropdownMenuTrigger asChild>\n <button\n type=\"button\"\n className=\"solid-header-cog-trigger kanban-column-cogwheel\"\n aria-label={`Open ${group.label} lane options`}\n >\n <SolidIcon name=\"si-cog\" aria-hidden />\n </button>\n </SolidDropdownMenuTrigger>\n <SolidDropdownMenuContent className=\"solid-custom-overlay kanban-options-panel\" align=\"start\">\n <SolidDropdownMenuItem\n className=\"solid-header-dropdown-item kanban-fold-action-button\"\n onSelect={() => toggleFold(groupByField)}\n >\n <SolidIcon name=\"si-angle-double-left\" className=\"solid-header-action-button-icon\" aria-hidden />\n <span className=\"solid-header-action-button-label\">Fold</span>\n </SolidDropdownMenuItem>\n </SolidDropdownMenuContent>\n </SolidDropdownMenu>\n }\n </div>\n {!group.folded && (\n <CompatibleDroppable droppableId={groupByField} isDropDisabled={!isKanbanDragEnabled}>\n {(provided: DroppableProvided) => (\n <div\n ref={provided.innerRef}\n {...provided.droppableProps}\n style={{ minHeight: \"100px\" }}\n >\n {groupData.map((data, index) => (\n // @ts-ignore\n <KanbanCard key={data.id} data={data} solidKanbanViewMetaData={solidKanbanViewMetaData} index={index} isDragDisabled={!isKanbanDragEnabled || Boolean(data?.deletedAt)} setLightboxUrls={setLightboxUrls} setOpenLightbox={setOpenLightbox} editButtonUrl={editButtonUrl} groupByFieldName={groupByField} group={group} cardNode={cardNode} DynamicCardWidget={DynamicCardWidget} onDelete={onDelete} onRecover={onRecover} showArchived={showArchived} />\n ))}\n {asCompatibleReactNode(provided.placeholder)}\n {group.count > 0 && (group.count > (group.limit * group.currentPage)) &&\n <SolidButton\n type=\"button\"\n variant=\"ghost\"\n size=\"sm\"\n className=\"kaban-load-more\"\n onClick={() => handleLoadMore(groupByField)}\n >\n {`Load more data... (${group.count - (group.limit * group.currentPage)} remaining)`}\n </SolidButton>\n }\n </div>\n )}\n </CompatibleDroppable>\n )}\n </div>\n );\n};\n\nexport default KanbanColumn;\n"]}
|
|
@@ -36,12 +36,14 @@ interface KanbanColumnProps {
|
|
|
36
36
|
toggleFold: (groupByField: string) => void;
|
|
37
37
|
handleLoadMore: (groupByField: string) => void;
|
|
38
38
|
onDelete?: (record: GroupData) => void;
|
|
39
|
+
onRecover?: (record: GroupData) => void;
|
|
40
|
+
showArchived?: boolean;
|
|
39
41
|
setLightboxUrls: any,
|
|
40
42
|
setOpenLightbox: any
|
|
41
43
|
}
|
|
42
44
|
|
|
43
45
|
// @ts-ignore
|
|
44
|
-
const KanbanColumn = ({ groupByField, solidKanbanViewMetaData, group, groupData, isKanbanDragEnabled = true, cardNode, DynamicCardWidget, toggleFold, handleLoadMore, onDelete, setLightboxUrls, setOpenLightbox, editButtonUrl }: KanbanColumnProps) => {
|
|
46
|
+
const KanbanColumn = ({ groupByField, solidKanbanViewMetaData, group, groupData, isKanbanDragEnabled = true, cardNode, DynamicCardWidget, toggleFold, handleLoadMore, onDelete, onRecover, setLightboxUrls, setOpenLightbox, editButtonUrl, showArchived }: KanbanColumnProps) => {
|
|
45
47
|
return (
|
|
46
48
|
<div className={group.folded ? "kanban-column kanban-column-folded" : "kanban-column"}>
|
|
47
49
|
<div className="kaban-heading-area">
|
|
@@ -95,7 +97,7 @@ const KanbanColumn = ({ groupByField, solidKanbanViewMetaData, group, groupData,
|
|
|
95
97
|
>
|
|
96
98
|
{groupData.map((data, index) => (
|
|
97
99
|
// @ts-ignore
|
|
98
|
-
<KanbanCard key={data.id} data={data} solidKanbanViewMetaData={solidKanbanViewMetaData} index={index} isDragDisabled={!isKanbanDragEnabled} setLightboxUrls={setLightboxUrls} setOpenLightbox={setOpenLightbox} editButtonUrl={editButtonUrl} groupByFieldName={groupByField} group={group} cardNode={cardNode} DynamicCardWidget={DynamicCardWidget} onDelete={onDelete} />
|
|
100
|
+
<KanbanCard key={data.id} data={data} solidKanbanViewMetaData={solidKanbanViewMetaData} index={index} isDragDisabled={!isKanbanDragEnabled || Boolean(data?.deletedAt)} setLightboxUrls={setLightboxUrls} setOpenLightbox={setOpenLightbox} editButtonUrl={editButtonUrl} groupByFieldName={groupByField} group={group} cardNode={cardNode} DynamicCardWidget={DynamicCardWidget} onDelete={onDelete} onRecover={onRecover} showArchived={showArchived} />
|
|
99
101
|
))}
|
|
100
102
|
{asCompatibleReactNode(provided.placeholder)}
|
|
101
103
|
{group.count > 0 && (group.count > (group.limit * group.currentPage)) &&
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SolidKanbanView.d.ts","sourceRoot":"","sources":["../../../../src/components/core/kanban/SolidKanbanView.tsx"],"names":[],"mappings":"AA2CA,KAAK,qBAAqB,GAAG;IAC3B,UAAU,EAAE,MAAM,CAAC;IACnB,SAAS,EAAE,MAAM,CAAC;IAClB,OAAO,EAAE,OAAO,CAAC;CAClB,CAAC;AAmEF,eAAO,MAAM,eAAe,WAAY,qBAAqB,
|
|
1
|
+
{"version":3,"file":"SolidKanbanView.d.ts","sourceRoot":"","sources":["../../../../src/components/core/kanban/SolidKanbanView.tsx"],"names":[],"mappings":"AA2CA,KAAK,qBAAqB,GAAG;IAC3B,UAAU,EAAE,MAAM,CAAC;IACnB,SAAS,EAAE,MAAM,CAAC;IAClB,OAAO,EAAE,OAAO,CAAC;CAClB,CAAC;AAmEF,eAAO,MAAM,eAAe,WAAY,qBAAqB,4CAsjC5D,CAAC"}
|
|
@@ -213,7 +213,7 @@ export var SolidKanbanView = function (params) {
|
|
|
213
213
|
}, [params.modelName]);
|
|
214
214
|
// Create the RTK slices for this entity
|
|
215
215
|
var entityApi = createSolidEntityApi(params.modelName);
|
|
216
|
-
var useDeleteMultipleSolidEntitiesMutation = entityApi.useDeleteMultipleSolidEntitiesMutation, useLazyGetSolidEntitiesQuery = entityApi.useLazyGetSolidEntitiesQuery, usePatchUpdateSolidEntityMutation = entityApi.usePatchUpdateSolidEntityMutation;
|
|
216
|
+
var useDeleteMultipleSolidEntitiesMutation = entityApi.useDeleteMultipleSolidEntitiesMutation, useLazyGetSolidEntitiesQuery = entityApi.useLazyGetSolidEntitiesQuery, useLazyRecoverSolidEntityByIdQuery = entityApi.useLazyRecoverSolidEntityByIdQuery, usePatchUpdateSolidEntityMutation = entityApi.usePatchUpdateSolidEntityMutation;
|
|
217
217
|
var menuItemId = searchParams.get("menuItemId");
|
|
218
218
|
var menuItemName = searchParams.get("menuItemName");
|
|
219
219
|
var actionId = searchParams.get("actionId");
|
|
@@ -347,19 +347,20 @@ export var SolidKanbanView = function (params) {
|
|
|
347
347
|
var editBaseUrl = normalizeSolidListTreeKanbanActionPath(pathname, editButtonUrl || "form");
|
|
348
348
|
// Get the kanban view data.
|
|
349
349
|
// const [triggerGetSolidEntitiesForKanban, { data: solidEntityKanbanViewData, isLoading, error }] = useLazyGetSolidKanbanEntitiesQuery();
|
|
350
|
-
var
|
|
350
|
+
var triggerGetSolidEntities = useLazyGetSolidEntitiesQuery()[0];
|
|
351
|
+
var _22 = useLazyRecoverSolidEntityByIdQuery(), triggerRecoverSolidEntityById = _22[0], isRecoveringRecord = _22[1].isLoading;
|
|
351
352
|
// Delete mutation
|
|
352
353
|
var _23 = useDeleteMultipleSolidEntitiesMutation(), deleteManySolidEntities = _23[0], _24 = _23[1], isDeleteSolidEntitiesLoading = _24.isLoading, isDeleteSolidEntitiesSucess = _24.isSuccess;
|
|
353
354
|
var _25 = usePatchUpdateSolidEntityMutation(), patchKanbanView = _25[0], isPatchKanbanViewLoading = _25[1].isLoading;
|
|
354
|
-
|
|
355
|
-
|
|
356
|
-
|
|
357
|
-
|
|
358
|
-
|
|
359
|
-
|
|
360
|
-
setLoading(false);
|
|
355
|
+
var applyArchivedQueryState = function (queryData) {
|
|
356
|
+
if (showArchived) {
|
|
357
|
+
queryData.showSoftDeleted = "inclusive";
|
|
358
|
+
if (queryData.groupFilter) {
|
|
359
|
+
queryData.groupFilter.showSoftDeleted = "inclusive";
|
|
360
|
+
}
|
|
361
361
|
}
|
|
362
|
-
|
|
362
|
+
return queryData;
|
|
363
|
+
};
|
|
363
364
|
useEffect(function () {
|
|
364
365
|
var mergedKanbanGroupData = mergeKanbanGroupsWithDefinitions(rawKanbanGroupRecords, swimlaneDefinitions, recordsInSwimlane);
|
|
365
366
|
setKanbanViewData(mergedKanbanGroupData);
|
|
@@ -481,6 +482,9 @@ export var SolidKanbanView = function (params) {
|
|
|
481
482
|
var queryObject = getFilterObjectFromLocalStorage();
|
|
482
483
|
var queryString = "";
|
|
483
484
|
if (queryObject) {
|
|
485
|
+
setShowArchived(queryObject.showArchived === true ||
|
|
486
|
+
queryObject.showArchived === "true" ||
|
|
487
|
+
queryObject.showSoftDeleted === "inclusive");
|
|
484
488
|
var filters_1 = {
|
|
485
489
|
$and: []
|
|
486
490
|
};
|
|
@@ -521,13 +525,15 @@ export var SolidKanbanView = function (params) {
|
|
|
521
525
|
setToPopulate(toPopulate_1);
|
|
522
526
|
setToPopulateMedia(toPopulateMedia_1);
|
|
523
527
|
setRecordsInSwimlane(recordsInSwimlane_1);
|
|
524
|
-
|
|
528
|
+
setFilters(filters_1);
|
|
525
529
|
setQueryDataLoaded(true);
|
|
526
530
|
queryString = qs.stringify(queryData, {
|
|
527
531
|
encodeValuesOnly: true
|
|
528
532
|
});
|
|
529
533
|
}
|
|
530
534
|
else {
|
|
535
|
+
setShowArchived(false);
|
|
536
|
+
var defaultFilters = { $and: [] };
|
|
531
537
|
var _o = initialFilterMethod(), recordsInSwimlane_2 = _o.recordsInSwimlane, toPopulate_2 = _o.toPopulate, toPopulateMedia_2 = _o.toPopulateMedia;
|
|
532
538
|
var queryData = {
|
|
533
539
|
offset: 0,
|
|
@@ -539,7 +545,7 @@ export var SolidKanbanView = function (params) {
|
|
|
539
545
|
groupFilter: {
|
|
540
546
|
limit: ((_l = (_k = (_j = (_h = kanbanViewMetaData === null || kanbanViewMetaData === void 0 ? void 0 : kanbanViewMetaData.data) === null || _h === void 0 ? void 0 : _h.solidView) === null || _j === void 0 ? void 0 : _j.layout) === null || _k === void 0 ? void 0 : _k.attrs) === null || _l === void 0 ? void 0 : _l.recordsInSwimlane) || 10,
|
|
541
547
|
offset: 0,
|
|
542
|
-
filters:
|
|
548
|
+
filters: defaultFilters,
|
|
543
549
|
populate: toPopulate_2,
|
|
544
550
|
populateMedia: toPopulateMedia_2
|
|
545
551
|
}
|
|
@@ -548,6 +554,7 @@ export var SolidKanbanView = function (params) {
|
|
|
548
554
|
setRecordsInSwimlane(recordsInSwimlane_2);
|
|
549
555
|
setToPopulate(toPopulate_2);
|
|
550
556
|
setToPopulateMedia(toPopulateMedia_2);
|
|
557
|
+
setFilters(defaultFilters);
|
|
551
558
|
// fields=status&groupBy=status&fields=count(status)&populateGroup=true
|
|
552
559
|
queryString = qs.stringify(queryData, {
|
|
553
560
|
encodeValuesOnly: true
|
|
@@ -559,6 +566,83 @@ export var SolidKanbanView = function (params) {
|
|
|
559
566
|
}
|
|
560
567
|
}
|
|
561
568
|
}, [groupByFieldName, isDeleteSolidEntitiesSucess, solidKanbanViewMetaData, swimlaneDefinitions]);
|
|
569
|
+
var loadKanbanBoard = function (nextFilters) {
|
|
570
|
+
if (nextFilters === void 0) { nextFilters = filters; }
|
|
571
|
+
return __awaiter(void 0, void 0, void 0, function () {
|
|
572
|
+
var swimlanesCount, resolvedSwimlanesCount, queryData, response, error_2;
|
|
573
|
+
var _a, _b, _c, _d, _e, _f;
|
|
574
|
+
return __generator(this, function (_g) {
|
|
575
|
+
switch (_g.label) {
|
|
576
|
+
case 0:
|
|
577
|
+
if (!solidKanbanViewMetaData || !groupByFieldName || !queryDataLoaded)
|
|
578
|
+
return [2 /*return*/];
|
|
579
|
+
setLoading(true);
|
|
580
|
+
_g.label = 1;
|
|
581
|
+
case 1:
|
|
582
|
+
_g.trys.push([1, 3, 4, 5]);
|
|
583
|
+
swimlanesCount = ((_d = (_c = (_b = (_a = solidKanbanViewMetaData === null || solidKanbanViewMetaData === void 0 ? void 0 : solidKanbanViewMetaData.data) === null || _a === void 0 ? void 0 : _a.solidView) === null || _b === void 0 ? void 0 : _b.layout) === null || _c === void 0 ? void 0 : _c.attrs) === null || _d === void 0 ? void 0 : _d.swimlanesCount) || 5;
|
|
584
|
+
resolvedSwimlanesCount = swimlaneDefinitions.length > 0 ? swimlaneDefinitions.length : swimlanesCount;
|
|
585
|
+
queryData = applyArchivedQueryState({
|
|
586
|
+
offset: 0,
|
|
587
|
+
limit: resolvedSwimlanesCount,
|
|
588
|
+
groupBy: groupByFieldName,
|
|
589
|
+
populate: toPopulate,
|
|
590
|
+
populateMedia: toPopulateMedia,
|
|
591
|
+
populateGroup: true,
|
|
592
|
+
groupFilter: {
|
|
593
|
+
limit: recordsInSwimlane,
|
|
594
|
+
offset: 0,
|
|
595
|
+
filters: nextFilters,
|
|
596
|
+
populate: toPopulate,
|
|
597
|
+
populateMedia: toPopulateMedia,
|
|
598
|
+
},
|
|
599
|
+
});
|
|
600
|
+
return [4 /*yield*/, triggerGetSolidEntities(qs.stringify(queryData, {
|
|
601
|
+
encodeValuesOnly: true
|
|
602
|
+
})).unwrap()];
|
|
603
|
+
case 2:
|
|
604
|
+
response = _g.sent();
|
|
605
|
+
setServerSwimLaneCount(((_e = response === null || response === void 0 ? void 0 : response.meta) === null || _e === void 0 ? void 0 : _e.totalRecords) || 0);
|
|
606
|
+
setRawKanbanGroupRecords((response === null || response === void 0 ? void 0 : response.groupRecords) || []);
|
|
607
|
+
setSelectedRecords([]);
|
|
608
|
+
return [3 /*break*/, 5];
|
|
609
|
+
case 3:
|
|
610
|
+
error_2 = _g.sent();
|
|
611
|
+
dispatch(showToast({
|
|
612
|
+
severity: "error",
|
|
613
|
+
summary: "Failed to load board",
|
|
614
|
+
detail: ((_f = error_2 === null || error_2 === void 0 ? void 0 : error_2.data) === null || _f === void 0 ? void 0 : _f.message) || (error_2 === null || error_2 === void 0 ? void 0 : error_2.message) || "Unable to load kanban data.",
|
|
615
|
+
life: 4000,
|
|
616
|
+
}));
|
|
617
|
+
setServerSwimLaneCount(0);
|
|
618
|
+
setRawKanbanGroupRecords([]);
|
|
619
|
+
return [3 /*break*/, 5];
|
|
620
|
+
case 4:
|
|
621
|
+
setLoading(false);
|
|
622
|
+
return [7 /*endfinally*/];
|
|
623
|
+
case 5: return [2 /*return*/];
|
|
624
|
+
}
|
|
625
|
+
});
|
|
626
|
+
});
|
|
627
|
+
};
|
|
628
|
+
useEffect(function () {
|
|
629
|
+
if (!queryDataLoaded || !solidKanbanViewMetaData || !groupByFieldName)
|
|
630
|
+
return;
|
|
631
|
+
void loadKanbanBoard(filters);
|
|
632
|
+
}, [groupByFieldName, queryDataLoaded, recordsInSwimlane, showArchived, solidKanbanViewMetaData, swimlaneDefinitions, toPopulate, toPopulateMedia]);
|
|
633
|
+
useEffect(function () {
|
|
634
|
+
if (!queryDataLoaded)
|
|
635
|
+
return;
|
|
636
|
+
var persistedFilterObject = getFilterObjectFromLocalStorage() || {};
|
|
637
|
+
var nextPersistedFilterObject = __assign(__assign({}, persistedFilterObject), { showArchived: showArchived });
|
|
638
|
+
if (showArchived) {
|
|
639
|
+
nextPersistedFilterObject.showSoftDeleted = "inclusive";
|
|
640
|
+
}
|
|
641
|
+
else {
|
|
642
|
+
delete nextPersistedFilterObject.showSoftDeleted;
|
|
643
|
+
}
|
|
644
|
+
setFilterObjectToLocalStorage(nextPersistedFilterObject);
|
|
645
|
+
}, [queryDataLoaded, showArchived]);
|
|
562
646
|
// clickable link allowing one to open the detail / form view.
|
|
563
647
|
// handle bulk deletion
|
|
564
648
|
var deleteBulk = function () {
|
|
@@ -578,9 +662,46 @@ export var SolidKanbanView = function (params) {
|
|
|
578
662
|
setSelectedRecords(record ? [record] : []);
|
|
579
663
|
setDialogVisible(true);
|
|
580
664
|
};
|
|
665
|
+
var handleRecoverRecord = function (record) { return __awaiter(void 0, void 0, void 0, function () {
|
|
666
|
+
var response, error_3;
|
|
667
|
+
var _a, _b;
|
|
668
|
+
return __generator(this, function (_c) {
|
|
669
|
+
switch (_c.label) {
|
|
670
|
+
case 0:
|
|
671
|
+
if (!(record === null || record === void 0 ? void 0 : record.id))
|
|
672
|
+
return [2 /*return*/];
|
|
673
|
+
_c.label = 1;
|
|
674
|
+
case 1:
|
|
675
|
+
_c.trys.push([1, 4, , 5]);
|
|
676
|
+
return [4 /*yield*/, triggerRecoverSolidEntityById(record.id).unwrap()];
|
|
677
|
+
case 2:
|
|
678
|
+
response = _c.sent();
|
|
679
|
+
dispatch(showToast({
|
|
680
|
+
severity: "success",
|
|
681
|
+
summary: "Success",
|
|
682
|
+
detail: ((_a = response === null || response === void 0 ? void 0 : response.data) === null || _a === void 0 ? void 0 : _a.message) || "Record recovered successfully.",
|
|
683
|
+
life: 3000,
|
|
684
|
+
}));
|
|
685
|
+
return [4 /*yield*/, loadKanbanBoard(filters)];
|
|
686
|
+
case 3:
|
|
687
|
+
_c.sent();
|
|
688
|
+
return [3 /*break*/, 5];
|
|
689
|
+
case 4:
|
|
690
|
+
error_3 = _c.sent();
|
|
691
|
+
dispatch(showToast({
|
|
692
|
+
severity: "error",
|
|
693
|
+
summary: "Recover Failed",
|
|
694
|
+
detail: ((_b = error_3 === null || error_3 === void 0 ? void 0 : error_3.data) === null || _b === void 0 ? void 0 : _b.message) || (error_3 === null || error_3 === void 0 ? void 0 : error_3.message) || "Unable to recover the selected record.",
|
|
695
|
+
life: 4000,
|
|
696
|
+
}));
|
|
697
|
+
return [3 /*break*/, 5];
|
|
698
|
+
case 5: return [2 /*return*/];
|
|
699
|
+
}
|
|
700
|
+
});
|
|
701
|
+
}); };
|
|
581
702
|
// Individual Swimlane Load More
|
|
582
703
|
var handleLoadMore = function (groupByField) { return __awaiter(void 0, void 0, void 0, function () {
|
|
583
|
-
var _a, offset, limit, queryData, queryString, data, newRecords, mergeData, updatedData_1,
|
|
704
|
+
var _a, offset, limit, queryData, queryString, data, newRecords, mergeData, updatedData_1, error_4;
|
|
584
705
|
var _b;
|
|
585
706
|
return __generator(this, function (_c) {
|
|
586
707
|
switch (_c.label) {
|
|
@@ -590,7 +711,7 @@ export var SolidKanbanView = function (params) {
|
|
|
590
711
|
_c.label = 1;
|
|
591
712
|
case 1:
|
|
592
713
|
_c.trys.push([1, 3, , 4]);
|
|
593
|
-
queryData = {
|
|
714
|
+
queryData = applyArchivedQueryState({
|
|
594
715
|
offset: offset + limit,
|
|
595
716
|
limit: limit,
|
|
596
717
|
populate: toPopulate,
|
|
@@ -599,7 +720,7 @@ export var SolidKanbanView = function (params) {
|
|
|
599
720
|
filters: __assign((_b = {}, _b[groupByFieldName] = {
|
|
600
721
|
$in: [groupByField],
|
|
601
722
|
}, _b), filters)
|
|
602
|
-
};
|
|
723
|
+
});
|
|
603
724
|
queryString = qs.stringify(queryData, {
|
|
604
725
|
encodeValuesOnly: true
|
|
605
726
|
});
|
|
@@ -639,8 +760,8 @@ export var SolidKanbanView = function (params) {
|
|
|
639
760
|
});
|
|
640
761
|
return [3 /*break*/, 4];
|
|
641
762
|
case 3:
|
|
642
|
-
|
|
643
|
-
console.error(ERROR_MESSAGES.LOAD_MORE_DATA,
|
|
763
|
+
error_4 = _c.sent();
|
|
764
|
+
console.error(ERROR_MESSAGES.LOAD_MORE_DATA, error_4);
|
|
644
765
|
return [3 /*break*/, 4];
|
|
645
766
|
case 4: return [2 /*return*/];
|
|
646
767
|
}
|
|
@@ -649,7 +770,7 @@ export var SolidKanbanView = function (params) {
|
|
|
649
770
|
// Handle drag-and-drop functionality
|
|
650
771
|
// @ts-ignore
|
|
651
772
|
var onDragEnd = function (result) { return __awaiter(void 0, void 0, void 0, function () {
|
|
652
|
-
var source, destination, sourceGroupName, destinationGroupName, sourceGroupIndex, destinationGroupIndex, sourceGroup, destinationGroup, sourceRecords, destinationRecords, movedItem, updatedItem, oldkanbanViewData, formData, kanbanUpdateResponse,
|
|
773
|
+
var source, destination, sourceGroupName, destinationGroupName, sourceGroupIndex, destinationGroupIndex, sourceGroup, destinationGroup, sourceRecords, destinationRecords, movedItem, updatedItem, oldkanbanViewData, formData, kanbanUpdateResponse, error_5;
|
|
653
774
|
var _a;
|
|
654
775
|
var _b;
|
|
655
776
|
return __generator(this, function (_c) {
|
|
@@ -722,10 +843,10 @@ export var SolidKanbanView = function (params) {
|
|
|
722
843
|
}
|
|
723
844
|
return [3 /*break*/, 4];
|
|
724
845
|
case 3:
|
|
725
|
-
|
|
846
|
+
error_5 = _c.sent();
|
|
726
847
|
// 6. Handle 500 or network errors
|
|
727
|
-
console.error(ERROR_MESSAGES.API_ERROR,
|
|
728
|
-
dispatch(showToast({ severity: "error", summary: ERROR_MESSAGES.SOMETHING_WRONG, detail: ((_b =
|
|
848
|
+
console.error(ERROR_MESSAGES.API_ERROR, error_5);
|
|
849
|
+
dispatch(showToast({ severity: "error", summary: ERROR_MESSAGES.SOMETHING_WRONG, detail: ((_b = error_5 === null || error_5 === void 0 ? void 0 : error_5.data) === null || _b === void 0 ? void 0 : _b.message) || ERROR_MESSAGES.SOMETHING_WRONG }));
|
|
729
850
|
setKanbanViewData(oldkanbanViewData);
|
|
730
851
|
return [3 /*break*/, 4];
|
|
731
852
|
case 4: return [2 /*return*/];
|
|
@@ -759,6 +880,7 @@ export var SolidKanbanView = function (params) {
|
|
|
759
880
|
}
|
|
760
881
|
// sort: [`id:desc`],
|
|
761
882
|
};
|
|
883
|
+
applyArchivedQueryState(queryData);
|
|
762
884
|
queryString = qs.stringify(queryData, {
|
|
763
885
|
encodeValuesOnly: true
|
|
764
886
|
});
|
|
@@ -830,6 +952,7 @@ export var SolidKanbanView = function (params) {
|
|
|
830
952
|
populateMedia: toPopulateMedia
|
|
831
953
|
}
|
|
832
954
|
};
|
|
955
|
+
applyArchivedQueryState(queryData);
|
|
833
956
|
queryString = qs.stringify(queryData, {
|
|
834
957
|
encodeValuesOnly: true
|
|
835
958
|
});
|
|
@@ -846,6 +969,12 @@ export var SolidKanbanView = function (params) {
|
|
|
846
969
|
// @ts-ignore
|
|
847
970
|
urlData.search_predicate = customFilter.search_predicate || {};
|
|
848
971
|
// @ts-ignore
|
|
972
|
+
urlData.showArchived = showArchived;
|
|
973
|
+
if (showArchived) {
|
|
974
|
+
// @ts-ignore
|
|
975
|
+
urlData.showSoftDeleted = "inclusive";
|
|
976
|
+
}
|
|
977
|
+
// @ts-ignore
|
|
849
978
|
setFilterObjectToLocalStorage(urlData);
|
|
850
979
|
}
|
|
851
980
|
return [4 /*yield*/, triggerGetSolidEntities(queryString)];
|
|
@@ -881,7 +1010,7 @@ export var SolidKanbanView = function (params) {
|
|
|
881
1010
|
}, [solidKanbanViewMetaData]);
|
|
882
1011
|
var kanbanViewTitle = (_b = (_a = solidKanbanViewMetaData === null || solidKanbanViewMetaData === void 0 ? void 0 : solidKanbanViewMetaData.data) === null || _a === void 0 ? void 0 : _a.solidView) === null || _b === void 0 ? void 0 : _b.displayName;
|
|
883
1012
|
var entityDisplayName = ((_e = (_d = (_c = solidKanbanViewMetaData === null || solidKanbanViewMetaData === void 0 ? void 0 : solidKanbanViewMetaData.data) === null || _c === void 0 ? void 0 : _c.solidView) === null || _d === void 0 ? void 0 : _d.model) === null || _e === void 0 ? void 0 : _e.displayName) || params.modelName;
|
|
884
|
-
var headerRequestStatusLabel = isDeleteSolidEntitiesLoading ? "Deleting..." : isPatchKanbanViewLoading ? "Updating..." : loading || !queryDataLoaded ? "Loading..." : null;
|
|
1013
|
+
var headerRequestStatusLabel = isDeleteSolidEntitiesLoading ? "Deleting..." : isPatchKanbanViewLoading ? "Updating..." : isRecoveringRecord ? "Recovering..." : loading || !queryDataLoaded ? "Loading..." : null;
|
|
885
1014
|
var handleRefreshView = function () {
|
|
886
1015
|
var _a, _b;
|
|
887
1016
|
if (hasStoredFilterPredicates(getFilterObjectFromLocalStorage())) {
|
|
@@ -889,7 +1018,7 @@ export var SolidKanbanView = function (params) {
|
|
|
889
1018
|
(_b = (_a = solidGlobalSearchElementRef.current) === null || _a === void 0 ? void 0 : _a.clearAppliedFilters) === null || _b === void 0 ? void 0 : _b.call(_a, { preserveGrouping: true });
|
|
890
1019
|
return;
|
|
891
1020
|
}
|
|
892
|
-
|
|
1021
|
+
loadKanbanBoard(filters);
|
|
893
1022
|
};
|
|
894
1023
|
var toggleBothSidebars = function () {
|
|
895
1024
|
if (visibleNavbar) {
|
|
@@ -901,8 +1030,8 @@ export var SolidKanbanView = function (params) {
|
|
|
901
1030
|
};
|
|
902
1031
|
console.log("Logging kanban data: ", solidKanbanViewMetaData);
|
|
903
1032
|
return (_jsxs("div", { className: "page-parent-wrapper solid-list-page-wrapper flex h-full min-h-0 overflow-hidden", children: [_jsx("div", { className: "solid-list-content flex flex-col flex-grow-1", children: _jsxs("div", { className: "solid-list-surface solid-kanban-surface flex flex-col flex-1 min-h-0", children: [_jsxs("div", { className: "page-header solid-list-toolbar solid-kanban-toolbar flex-col lg:flex-row", children: [_jsxs("div", { className: "flex justify-between w-full", children: [_jsxs("div", { className: "solid-list-toolbar-left flex w-full items-center gap-3", children: [_jsx("p", { className: "m-0 view-title solid-text-wrapper", children: kanbanViewTitle }), _jsx("div", { className: "hidden lg:flex", children: _jsx(SolidGlobalSearchElement, { viewType: "kanban", showSaveFilterPopup: showSaveFilterPopup, setShowSaveFilterPopup: setShowSaveFilterPopup, ref: solidGlobalSearchElementRef, viewData: solidKanbanViewMetaData, handleApplyCustomFilter: handleApplyCustomFilter }) })] }), _jsxs("div", { className: "flex items-center solid-header-buttons-wrapper solid-list-toolbar-actions", children: [_jsx(SolidHeaderRequestStatus, { label: headerRequestStatusLabel }), _jsx("div", { className: "flex lg:hidden", children: _jsx(SolidButton, { type: "button", variant: "outline", size: "sm", className: "solid-icon-button", onClick: function () { return setShowGlobalSearchElement(!showGlobalSearchElement); }, "aria-label": "Toggle search", leftIcon: _jsx(SolidIcon, { name: "si-search", "aria-hidden": true }) }) }), actionsAllowed.includes("".concat(permissionExpression(params.modelName, 'create'))) && ((_h = (_g = (_f = solidKanbanViewMetaData === null || solidKanbanViewMetaData === void 0 ? void 0 : solidKanbanViewMetaData.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.create) !== false &&
|
|
904
|
-
_jsx(SolidCreateButton, { createButtonUrl: createButtonUrl, createActionQueryParams: createActionQueryParams, responsiveIconOnly: true }), actionsAllowed.includes("".concat(permissionExpression(params.modelName, 'delete'))) && ((_l = (_k = (_j = solidKanbanViewMetaData === null || solidKanbanViewMetaData === void 0 ? void 0 : solidKanbanViewMetaData.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.delete) !== false && selectedRecords.length > 0 && _jsx(SolidButton, { type: "button", variant: "destructive", size: "sm", onClick: function () { return setDialogVisible(true); }, children: "Delete" }), _jsx(SolidButton, { type: "button", variant: "outline", size: "sm", className: "solid-icon-button", onClick: handleRefreshView, "aria-label": "Refresh board", leftIcon: _jsx(SolidIcon, { name: "si-refresh", "aria-hidden": true }) }), _jsx(SolidKanbanViewConfigure, { solidKanbanViewMetaData: solidKanbanViewMetaData, modelName: params.modelName, actionsAllowed: actionsAllowed, viewModes: viewModes, setLayoutDialogVisible: setLayoutDialogVisible, setShowSaveFilterPopup: setShowSaveFilterPopup, filters: filters, handleRefreshView: handleRefreshView })] })] }), showGlobalSearchElement && (_jsx("div", { className: "flex lg:hidden", children: _jsx(SolidGlobalSearchElement, { viewType: "kanban", showSaveFilterPopup: showSaveFilterPopup, setShowSaveFilterPopup: setShowSaveFilterPopup, ref: solidGlobalSearchElementRef, viewData: solidKanbanViewMetaData, handleApplyCustomFilter: handleApplyCustomFilter }) }))] }), _jsx("style", { children: ".p-datatable .p-datatable-loading-overlay {background-color: rgba(0, 0, 0, 0.0);}" }), solidKanbanViewMetaData && kanbanViewData &&
|
|
905
|
-
_jsx(KanbanBoard, { groupByFieldName: groupByFieldName, kanbanViewData: kanbanViewData, maxSwimLanesCount: maxSwimLanesCount, solidKanbanViewMetaData: solidKanbanViewMetaData === null || solidKanbanViewMetaData === void 0 ? void 0 : solidKanbanViewMetaData.data, setKanbanViewData: setKanbanViewData, handleLoadMore: handleLoadMore, onDragEnd: onDragEnd, handleSwimLanePagination: handleSwimLanePagination, onDelete: actionsAllowed.includes("".concat(permissionExpression(params.modelName, 'delete'))) && ((_p = (_o = (_m = solidKanbanViewMetaData === null || solidKanbanViewMetaData === void 0 ? void 0 : solidKanbanViewMetaData.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.delete) !== false ? openDeleteDialogForRecord : undefined, setLightboxUrls: setLightboxUrls, setOpenLightbox: setOpenLightbox, editButtonUrl: editBaseUrl })] }) }), _jsx(SolidConfirmDialog, { open: isDialogVisible, 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 ".concat(entityDisplayName), message: _jsx("p", { className: "solid-shadcn-dialog-text", children: selectedRecords.length === 1
|
|
1033
|
+
_jsx(SolidCreateButton, { createButtonUrl: createButtonUrl, createActionQueryParams: createActionQueryParams, responsiveIconOnly: true }), actionsAllowed.includes("".concat(permissionExpression(params.modelName, 'delete'))) && ((_l = (_k = (_j = solidKanbanViewMetaData === null || solidKanbanViewMetaData === void 0 ? void 0 : solidKanbanViewMetaData.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.delete) !== false && selectedRecords.length > 0 && _jsx(SolidButton, { type: "button", variant: "destructive", size: "sm", onClick: function () { return setDialogVisible(true); }, children: "Delete" }), _jsx(SolidButton, { type: "button", variant: "outline", size: "sm", className: "solid-icon-button", onClick: handleRefreshView, "aria-label": "Refresh board", leftIcon: _jsx(SolidIcon, { name: "si-refresh", "aria-hidden": true }) }), _jsx(SolidKanbanViewConfigure, { solidKanbanViewMetaData: solidKanbanViewMetaData, modelName: params.modelName, actionsAllowed: actionsAllowed, viewModes: viewModes, setShowArchived: setShowArchived, showArchived: showArchived, setLayoutDialogVisible: setLayoutDialogVisible, setShowSaveFilterPopup: setShowSaveFilterPopup, filters: filters, handleRefreshView: handleRefreshView })] })] }), showGlobalSearchElement && (_jsx("div", { className: "flex lg:hidden", children: _jsx(SolidGlobalSearchElement, { viewType: "kanban", showSaveFilterPopup: showSaveFilterPopup, setShowSaveFilterPopup: setShowSaveFilterPopup, ref: solidGlobalSearchElementRef, viewData: solidKanbanViewMetaData, handleApplyCustomFilter: handleApplyCustomFilter }) }))] }), _jsx("style", { children: ".p-datatable .p-datatable-loading-overlay {background-color: rgba(0, 0, 0, 0.0);}" }), solidKanbanViewMetaData && kanbanViewData &&
|
|
1034
|
+
_jsx(KanbanBoard, { groupByFieldName: groupByFieldName, kanbanViewData: kanbanViewData, maxSwimLanesCount: maxSwimLanesCount, solidKanbanViewMetaData: solidKanbanViewMetaData === null || solidKanbanViewMetaData === void 0 ? void 0 : solidKanbanViewMetaData.data, setKanbanViewData: setKanbanViewData, handleLoadMore: handleLoadMore, onDragEnd: onDragEnd, handleSwimLanePagination: handleSwimLanePagination, onDelete: actionsAllowed.includes("".concat(permissionExpression(params.modelName, 'delete'))) && ((_p = (_o = (_m = solidKanbanViewMetaData === null || solidKanbanViewMetaData === void 0 ? void 0 : solidKanbanViewMetaData.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.delete) !== false ? openDeleteDialogForRecord : undefined, onRecover: handleRecoverRecord, setLightboxUrls: setLightboxUrls, setOpenLightbox: setOpenLightbox, editButtonUrl: editBaseUrl, showArchived: showArchived })] }) }), _jsx(SolidConfirmDialog, { open: isDialogVisible, 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 ".concat(entityDisplayName), message: _jsx("p", { className: "solid-shadcn-dialog-text", children: selectedRecords.length === 1
|
|
906
1035
|
? "Are you sure you want to delete this ".concat(entityDisplayName, " record?")
|
|
907
1036
|
: "Are you sure you want to delete the selected ".concat(entityDisplayName, " records?") }), confirmLabel: "Delete", cancelLabel: "Cancel" }), openLightbox && (_jsx(SolidLightbox, { open: openLightbox, slides: lightboxSlides, onClose: function () { return setOpenLightbox(false); } })), _jsxs(SolidDialog, { open: isLayoutDialogVisible, onOpenChange: setLayoutDialogVisible, className: "solid-kanban-layout-dialog", style: { width: "min(800px, calc(100vw - 32px))" }, children: [_jsxs(SolidDialogHeader, { children: [_jsx(SolidDialogTitle, { children: "Change Kanban Layout" }), _jsx(SolidDialogClose, {})] }), _jsx(SolidDialogSeparator, {}), _jsx(SolidDialogBody, { className: "solid-kanban-layout-dialog-body", children: _jsx(KanbanUserViewLayout, { solidKanbanViewMetaData: solidKanbanViewMetaData, setLayoutDialogVisible: setLayoutDialogVisible }) })] })] }));
|
|
908
1037
|
};
|