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

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 (42) hide show
  1. package/dist/components/core/card/SolidCardView.d.ts.map +1 -1
  2. package/dist/components/core/card/SolidCardView.js +6 -11
  3. package/dist/components/core/card/SolidCardView.js.map +1 -1
  4. package/dist/components/core/card/SolidCardView.tsx +6 -11
  5. package/dist/components/core/card/SolidCardViewConfigure.d.ts.map +1 -1
  6. package/dist/components/core/card/SolidCardViewConfigure.js +3 -7
  7. package/dist/components/core/card/SolidCardViewConfigure.js.map +1 -1
  8. package/dist/components/core/card/SolidCardViewConfigure.tsx +3 -9
  9. package/dist/components/core/form/SolidFormView.d.ts.map +1 -1
  10. package/dist/components/core/form/SolidFormView.js +2 -10
  11. package/dist/components/core/form/SolidFormView.js.map +1 -1
  12. package/dist/components/core/form/SolidFormView.tsx +2 -10
  13. package/dist/components/core/kanban/SolidKanbanView.d.ts.map +1 -1
  14. package/dist/components/core/kanban/SolidKanbanView.js +6 -11
  15. package/dist/components/core/kanban/SolidKanbanView.js.map +1 -1
  16. package/dist/components/core/kanban/SolidKanbanView.tsx +6 -11
  17. package/dist/components/core/kanban/SolidKanbanViewConfigure.d.ts.map +1 -1
  18. package/dist/components/core/kanban/SolidKanbanViewConfigure.js +3 -7
  19. package/dist/components/core/kanban/SolidKanbanViewConfigure.js.map +1 -1
  20. package/dist/components/core/kanban/SolidKanbanViewConfigure.tsx +3 -9
  21. package/dist/components/core/list/SolidEmptyListViewPlaceholder.d.ts.map +1 -1
  22. package/dist/components/core/list/SolidEmptyListViewPlaceholder.js +2 -3
  23. package/dist/components/core/list/SolidEmptyListViewPlaceholder.js.map +1 -1
  24. package/dist/components/core/list/SolidEmptyListViewPlaceholder.tsx +2 -3
  25. package/dist/components/core/list/SolidListView.d.ts.map +1 -1
  26. package/dist/components/core/list/SolidListView.js +2 -14
  27. package/dist/components/core/list/SolidListView.js.map +1 -1
  28. package/dist/components/core/list/SolidListView.tsx +2 -14
  29. package/dist/components/core/list/SolidListViewConfigure.d.ts.map +1 -1
  30. package/dist/components/core/list/SolidListViewConfigure.js +7 -5
  31. package/dist/components/core/list/SolidListViewConfigure.js.map +1 -1
  32. package/dist/components/core/list/SolidListViewConfigure.tsx +7 -5
  33. package/dist/components/core/tree/SolidTreeView.d.ts.map +1 -1
  34. package/dist/components/core/tree/SolidTreeView.js +2 -14
  35. package/dist/components/core/tree/SolidTreeView.js.map +1 -1
  36. package/dist/components/core/tree/SolidTreeView.tsx +2 -14
  37. package/dist/helpers/permissions.d.ts +13 -0
  38. package/dist/helpers/permissions.d.ts.map +1 -1
  39. package/dist/helpers/permissions.js +79 -0
  40. package/dist/helpers/permissions.js.map +1 -1
  41. package/dist/helpers/permissions.ts +92 -1
  42. package/package.json +1 -1
@@ -1 +1 @@
1
- {"version":3,"file":"SolidKanbanViewConfigure.js","sourceRoot":"","sources":["../../../../src/components/core/kanban/SolidKanbanViewConfigure.tsx"],"names":[],"mappings":"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","sourcesContent":["import { permissionExpression } from \"../../../helpers/permissions\";\nimport { storeCurrentModelViewContext } from \"../../../helpers/modelViewPersistence\";\nimport { usePathname } from \"../../../hooks/usePathname\";\nimport { useRouter } from \"../../../hooks/useRouter\";\nimport { useSearchParams } from \"../../../hooks/useSearchParams\";\nimport { useEffect, useState } from \"react\";\nimport { SolidExport } from \"../../../components/common/SolidExport\";\nimport { SolidGenericImport } from \"../common/SolidGenericImport/SolidGenericImport\";\nimport {\n SolidDropdownMenu,\n SolidDropdownMenuCheckboxItem,\n SolidDropdownMenuContent,\n SolidDropdownMenuItem,\n SolidDropdownMenuLabel,\n SolidDropdownMenuRadioGroup,\n SolidDropdownMenuRadioItem,\n SolidDropdownMenuSeparator,\n SolidDropdownMenuSub,\n SolidDropdownMenuSubContent,\n SolidDropdownMenuSubTrigger,\n SolidDropdownMenuTrigger,\n SolidDialog,\n SolidDialogBody,\n SolidDialogClose,\n SolidDialogDescription,\n SolidDialogHeader,\n SolidDialogSeparator,\n SolidDialogTitle,\n SolidIcon,\n} from \"../../shad-cn-ui\";\n\nconst normalizeViewModes = (viewModes: any[] = []) => {\n return viewModes\n .map((option: any) => {\n if (!option) return null;\n\n if (typeof option === \"string\") {\n return {\n type: option,\n label: option.charAt(0).toUpperCase() + option.slice(1),\n };\n }\n\n const type = option.type || option.value;\n if (!type) return null;\n\n return {\n ...option,\n type,\n label: option.label || (type.charAt(0).toUpperCase() + type.slice(1)),\n };\n })\n .filter(Boolean);\n};\n\nexport const SolidKanbanViewConfigure = ({\n solidKanbanViewMetaData,\n modelName,\n actionsAllowed,\n setLayoutDialogVisible,\n viewModes,\n setShowArchived,\n showArchived,\n setShowSaveFilterPopup,\n filters,\n handleRefreshView,\n}: any) => {\n const pathname = usePathname();\n const router = useRouter();\n const searchParams = useSearchParams();\n const [view, setView] = useState<string>(\"\");\n const [isCogMenuOpen, setIsCogMenuOpen] = useState(false);\n const [openImportDialog, setOpenImportDialog] = useState(false);\n const [exportView, setExportView] = useState(false);\n\n const visibleViewModes = normalizeViewModes(Array.isArray(viewModes) ? viewModes : []);\n const showSwitchType = visibleViewModes.length > 1;\n\n useEffect(() => {\n if (typeof pathname === \"string\") {\n const pathSegments = pathname.split(\"/\").filter(Boolean);\n if (pathSegments.length > 0) {\n setView(pathSegments[pathSegments.length - 1]);\n }\n }\n }, [pathname]);\n\n const handleViewChange = (newViewType: string) => {\n if (view === newViewType) return;\n\n const nextView = visibleViewModes.find((option: any) => option.type === newViewType);\n const pathSegments = pathname.split(\"/\").filter(Boolean);\n pathSegments[pathSegments.length - 1] = newViewType;\n const nextSearchParams = new URLSearchParams(searchParams.toString());\n const currentQuery = {\n menuItemId: searchParams.get(\"menuItemId\"),\n menuItemName: searchParams.get(\"menuItemName\"),\n actionId: searchParams.get(\"actionId\"),\n actionName: searchParams.get(\"actionName\"),\n };\n\n const queryFields = {\n menuItemId: nextView?.menuItemId ?? currentQuery.menuItemId,\n menuItemName: nextView?.menuItemName ?? currentQuery.menuItemName,\n actionId: nextView?.actionId ?? currentQuery.actionId,\n actionName: nextView?.actionName ?? currentQuery.actionName,\n };\n\n Object.entries(queryFields).forEach(([key, value]) => {\n if (value) {\n nextSearchParams.set(key, value);\n } else {\n nextSearchParams.delete(key);\n }\n });\n\n const newPath = \"/\" + pathSegments.join(\"/\");\n const nextQueryString = nextSearchParams.toString();\n const nextUrl = nextQueryString ? `${newPath}?${nextQueryString}` : newPath;\n storeCurrentModelViewContext(nextUrl);\n router.push(nextUrl);\n };\n\n const clearLocalstorageCache = () => {\n const currentPageUrl = window.location.pathname;\n localStorage.removeItem(currentPageUrl);\n window.location.reload();\n };\n\n const canImport =\n Boolean(modelName) &&\n actionsAllowed.includes(`${permissionExpression(modelName, \"create\")}`) &&\n actionsAllowed.includes(`${permissionExpression(\"importTransaction\", \"create\")}`);\n\n const canExport =\n Boolean(modelName) &&\n actionsAllowed.includes(`${permissionExpression(modelName, \"findMany\")}`) &&\n actionsAllowed.includes(`${permissionExpression(\"exportTransaction\", \"create\")}`);\n\n const canCustomizeLayout = actionsAllowed.includes(`${permissionExpression(\"userViewMetadata\", \"create\")}`);\n const canSaveCustomFilter = actionsAllowed.includes(`${permissionExpression(\"savedFilters\", \"create\")}`);\n const canShowArchivedRecords = Boolean(solidKanbanViewMetaData?.data?.solidView?.model?.enableSoftDelete);\n\n return (\n <div className=\"position-relative\">\n <SolidDropdownMenu open={isCogMenuOpen} onOpenChange={setIsCogMenuOpen}>\n <SolidDropdownMenuTrigger asChild>\n <button\n type=\"button\"\n className=\"solid-icon-button solid-header-cog-trigger\"\n aria-label=\"Open kanban options\"\n >\n <SolidIcon name=\"si-cog\" aria-hidden />\n </button>\n </SolidDropdownMenuTrigger>\n <SolidDropdownMenuContent className=\"listview-cogwheel-panel\">\n {canImport && (\n <SolidDropdownMenuItem\n className=\"solid-header-dropdown-item\"\n onSelect={() => {\n setOpenImportDialog(true);\n setIsCogMenuOpen(false);\n }}\n >\n <SolidIcon name=\"si-download\" className=\"solid-header-action-button-icon\" aria-hidden />\n <span className=\"solid-header-action-button-label\">Import</span>\n </SolidDropdownMenuItem>\n )}\n\n {canExport && (\n <SolidDropdownMenuItem\n className=\"solid-header-dropdown-item\"\n onSelect={() => {\n setExportView(true);\n setIsCogMenuOpen(false);\n }}\n >\n <SolidIcon name=\"si-upload\" className=\"solid-header-action-button-icon\" aria-hidden />\n <span className=\"solid-header-action-button-label\">Export</span>\n </SolidDropdownMenuItem>\n )}\n\n {canShowArchivedRecords && (\n <SolidDropdownMenuCheckboxItem\n checked={showArchived}\n onCheckedChange={() => setShowArchived(!showArchived)}\n >\n Show Archived Records\n </SolidDropdownMenuCheckboxItem>\n )}\n\n {(canCustomizeLayout || canSaveCustomFilter || canShowArchivedRecords) && <SolidDropdownMenuSeparator />}\n\n {canCustomizeLayout && (\n <SolidDropdownMenuSub>\n <SolidDropdownMenuSubTrigger className=\"solid-header-dropdown-item\">\n <SolidIcon name=\"si-sliders-h\" className=\"solid-header-action-button-icon\" aria-hidden />\n <span className=\"solid-header-action-button-label\">Layout</span>\n </SolidDropdownMenuSubTrigger>\n <SolidDropdownMenuSubContent className=\"customize-layout-panel\">\n {showSwitchType && (\n <>\n <SolidDropdownMenuLabel>Switch Type</SolidDropdownMenuLabel>\n <SolidDropdownMenuRadioGroup value={view} onValueChange={handleViewChange}>\n {visibleViewModes.map((option: any) => (\n <SolidDropdownMenuRadioItem key={option.type} value={option.type}>\n {option.label}\n </SolidDropdownMenuRadioItem>\n ))}\n </SolidDropdownMenuRadioGroup>\n <SolidDropdownMenuSeparator />\n </>\n )}\n <SolidDropdownMenuItem\n onSelect={() => {\n setLayoutDialogVisible(true);\n setIsCogMenuOpen(false);\n }}\n >\n <SolidIcon name=\"si-code\" className=\"solid-header-action-button-icon\" aria-hidden />\n <span className=\"solid-header-action-button-label\">Layout Editor</span>\n </SolidDropdownMenuItem>\n </SolidDropdownMenuSubContent>\n </SolidDropdownMenuSub>\n )}\n\n {canSaveCustomFilter && (\n <SolidDropdownMenuItem\n className=\"solid-header-dropdown-item\"\n onSelect={() => {\n setShowSaveFilterPopup(true);\n setIsCogMenuOpen(false);\n }}\n >\n <SolidIcon name=\"si-save\" className=\"solid-header-action-button-icon\" aria-hidden />\n <span className=\"solid-header-action-button-label\">Save Custom Filter</span>\n </SolidDropdownMenuItem>\n )}\n\n <SolidDropdownMenuItem\n className=\"solid-header-dropdown-item\"\n onSelect={() => {\n clearLocalstorageCache();\n setIsCogMenuOpen(false);\n }}\n >\n <SolidIcon name=\"si-trash\" className=\"solid-header-action-button-icon\" aria-hidden />\n <span className=\"solid-header-action-button-label\">Clear cache</span>\n </SolidDropdownMenuItem>\n </SolidDropdownMenuContent>\n </SolidDropdownMenu>\n\n <SolidDialog\n open={exportView}\n onOpenChange={setExportView}\n className=\"solid-kanban-export-dialog\"\n style={{ width: \"min(960px, calc(100vw - 32px))\" }}\n >\n <SolidDialogHeader className=\"solid-export-dialog-header\">\n <div>\n <SolidDialogTitle>Export</SolidDialogTitle>\n <SolidDialogDescription className=\"solid-filter-dialog-subtitle m-0\">\n Choose the file format, refine the field set, and save reusable export templates.\n </SolidDialogDescription>\n </div>\n <SolidDialogClose />\n </SolidDialogHeader>\n <SolidDialogSeparator />\n <SolidDialogBody className=\"solid-kanban-export-dialog-body\">\n <SolidExport\n listViewMetaData={solidKanbanViewMetaData}\n filters={filters}\n onExportComplete={() => setExportView(false)}\n />\n </SolidDialogBody>\n </SolidDialog>\n\n {openImportDialog && (\n <SolidGenericImport\n openImportDialog={openImportDialog}\n setOpenImportDialog={setOpenImportDialog}\n listViewMetaData={solidKanbanViewMetaData}\n handleFetchUpdatedRecords={handleRefreshView}\n />\n )}\n </div>\n );\n};\n"]}
1
+ {"version":3,"file":"SolidKanbanViewConfigure.js","sourceRoot":"","sources":["../../../../src/components/core/kanban/SolidKanbanViewConfigure.tsx"],"names":[],"mappings":"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","sourcesContent":["import { canExportRecords, canImportRecords, permissionExpression } from \"../../../helpers/permissions\";\nimport { storeCurrentModelViewContext } from \"../../../helpers/modelViewPersistence\";\nimport { usePathname } from \"../../../hooks/usePathname\";\nimport { useRouter } from \"../../../hooks/useRouter\";\nimport { useSearchParams } from \"../../../hooks/useSearchParams\";\nimport { useEffect, useState } from \"react\";\nimport { SolidExport } from \"../../../components/common/SolidExport\";\nimport { SolidGenericImport } from \"../common/SolidGenericImport/SolidGenericImport\";\nimport {\n SolidDropdownMenu,\n SolidDropdownMenuCheckboxItem,\n SolidDropdownMenuContent,\n SolidDropdownMenuItem,\n SolidDropdownMenuLabel,\n SolidDropdownMenuRadioGroup,\n SolidDropdownMenuRadioItem,\n SolidDropdownMenuSeparator,\n SolidDropdownMenuSub,\n SolidDropdownMenuSubContent,\n SolidDropdownMenuSubTrigger,\n SolidDropdownMenuTrigger,\n SolidDialog,\n SolidDialogBody,\n SolidDialogClose,\n SolidDialogDescription,\n SolidDialogHeader,\n SolidDialogSeparator,\n SolidDialogTitle,\n SolidIcon,\n} from \"../../shad-cn-ui\";\n\nconst normalizeViewModes = (viewModes: any[] = []) => {\n return viewModes\n .map((option: any) => {\n if (!option) return null;\n\n if (typeof option === \"string\") {\n return {\n type: option,\n label: option.charAt(0).toUpperCase() + option.slice(1),\n };\n }\n\n const type = option.type || option.value;\n if (!type) return null;\n\n return {\n ...option,\n type,\n label: option.label || (type.charAt(0).toUpperCase() + type.slice(1)),\n };\n })\n .filter(Boolean);\n};\n\nexport const SolidKanbanViewConfigure = ({\n solidKanbanViewMetaData,\n modelName,\n actionsAllowed,\n setLayoutDialogVisible,\n viewModes,\n setShowArchived,\n showArchived,\n setShowSaveFilterPopup,\n filters,\n handleRefreshView,\n}: any) => {\n const pathname = usePathname();\n const router = useRouter();\n const searchParams = useSearchParams();\n const [view, setView] = useState<string>(\"\");\n const [isCogMenuOpen, setIsCogMenuOpen] = useState(false);\n const [openImportDialog, setOpenImportDialog] = useState(false);\n const [exportView, setExportView] = useState(false);\n\n const visibleViewModes = normalizeViewModes(Array.isArray(viewModes) ? viewModes : []);\n const showSwitchType = visibleViewModes.length > 1;\n\n useEffect(() => {\n if (typeof pathname === \"string\") {\n const pathSegments = pathname.split(\"/\").filter(Boolean);\n if (pathSegments.length > 0) {\n setView(pathSegments[pathSegments.length - 1]);\n }\n }\n }, [pathname]);\n\n const handleViewChange = (newViewType: string) => {\n if (view === newViewType) return;\n\n const nextView = visibleViewModes.find((option: any) => option.type === newViewType);\n const pathSegments = pathname.split(\"/\").filter(Boolean);\n pathSegments[pathSegments.length - 1] = newViewType;\n const nextSearchParams = new URLSearchParams(searchParams.toString());\n const currentQuery = {\n menuItemId: searchParams.get(\"menuItemId\"),\n menuItemName: searchParams.get(\"menuItemName\"),\n actionId: searchParams.get(\"actionId\"),\n actionName: searchParams.get(\"actionName\"),\n };\n\n const queryFields = {\n menuItemId: nextView?.menuItemId ?? currentQuery.menuItemId,\n menuItemName: nextView?.menuItemName ?? currentQuery.menuItemName,\n actionId: nextView?.actionId ?? currentQuery.actionId,\n actionName: nextView?.actionName ?? currentQuery.actionName,\n };\n\n Object.entries(queryFields).forEach(([key, value]) => {\n if (value) {\n nextSearchParams.set(key, value);\n } else {\n nextSearchParams.delete(key);\n }\n });\n\n const newPath = \"/\" + pathSegments.join(\"/\");\n const nextQueryString = nextSearchParams.toString();\n const nextUrl = nextQueryString ? `${newPath}?${nextQueryString}` : newPath;\n storeCurrentModelViewContext(nextUrl);\n router.push(nextUrl);\n };\n\n const clearLocalstorageCache = () => {\n const currentPageUrl = window.location.pathname;\n localStorage.removeItem(currentPageUrl);\n window.location.reload();\n };\n\n const canImport = canImportRecords(actionsAllowed, modelName);\n\n const canExport = canExportRecords(actionsAllowed, modelName);\n\n const canCustomizeLayout = actionsAllowed.includes(`${permissionExpression(\"userViewMetadata\", \"create\")}`);\n const canSaveCustomFilter = actionsAllowed.includes(`${permissionExpression(\"savedFilters\", \"create\")}`);\n const canShowArchivedRecords = Boolean(solidKanbanViewMetaData?.data?.solidView?.model?.enableSoftDelete);\n\n return (\n <div className=\"position-relative\">\n <SolidDropdownMenu open={isCogMenuOpen} onOpenChange={setIsCogMenuOpen}>\n <SolidDropdownMenuTrigger asChild>\n <button\n type=\"button\"\n className=\"solid-icon-button solid-header-cog-trigger\"\n aria-label=\"Open kanban options\"\n >\n <SolidIcon name=\"si-cog\" aria-hidden />\n </button>\n </SolidDropdownMenuTrigger>\n <SolidDropdownMenuContent className=\"listview-cogwheel-panel\">\n {canImport && (\n <SolidDropdownMenuItem\n className=\"solid-header-dropdown-item\"\n onSelect={() => {\n setOpenImportDialog(true);\n setIsCogMenuOpen(false);\n }}\n >\n <SolidIcon name=\"si-download\" className=\"solid-header-action-button-icon\" aria-hidden />\n <span className=\"solid-header-action-button-label\">Import</span>\n </SolidDropdownMenuItem>\n )}\n\n {canExport && (\n <SolidDropdownMenuItem\n className=\"solid-header-dropdown-item\"\n onSelect={() => {\n setExportView(true);\n setIsCogMenuOpen(false);\n }}\n >\n <SolidIcon name=\"si-upload\" className=\"solid-header-action-button-icon\" aria-hidden />\n <span className=\"solid-header-action-button-label\">Export</span>\n </SolidDropdownMenuItem>\n )}\n\n {canShowArchivedRecords && (\n <SolidDropdownMenuCheckboxItem\n checked={showArchived}\n onCheckedChange={() => setShowArchived(!showArchived)}\n >\n Show Archived Records\n </SolidDropdownMenuCheckboxItem>\n )}\n\n {(canCustomizeLayout || canSaveCustomFilter || canShowArchivedRecords) && <SolidDropdownMenuSeparator />}\n\n {canCustomizeLayout && (\n <SolidDropdownMenuSub>\n <SolidDropdownMenuSubTrigger className=\"solid-header-dropdown-item\">\n <SolidIcon name=\"si-sliders-h\" className=\"solid-header-action-button-icon\" aria-hidden />\n <span className=\"solid-header-action-button-label\">Layout</span>\n </SolidDropdownMenuSubTrigger>\n <SolidDropdownMenuSubContent className=\"customize-layout-panel\">\n {showSwitchType && (\n <>\n <SolidDropdownMenuLabel>Switch Type</SolidDropdownMenuLabel>\n <SolidDropdownMenuRadioGroup value={view} onValueChange={handleViewChange}>\n {visibleViewModes.map((option: any) => (\n <SolidDropdownMenuRadioItem key={option.type} value={option.type}>\n {option.label}\n </SolidDropdownMenuRadioItem>\n ))}\n </SolidDropdownMenuRadioGroup>\n <SolidDropdownMenuSeparator />\n </>\n )}\n <SolidDropdownMenuItem\n onSelect={() => {\n setLayoutDialogVisible(true);\n setIsCogMenuOpen(false);\n }}\n >\n <SolidIcon name=\"si-code\" className=\"solid-header-action-button-icon\" aria-hidden />\n <span className=\"solid-header-action-button-label\">Layout Editor</span>\n </SolidDropdownMenuItem>\n </SolidDropdownMenuSubContent>\n </SolidDropdownMenuSub>\n )}\n\n {canSaveCustomFilter && (\n <SolidDropdownMenuItem\n className=\"solid-header-dropdown-item\"\n onSelect={() => {\n setShowSaveFilterPopup(true);\n setIsCogMenuOpen(false);\n }}\n >\n <SolidIcon name=\"si-save\" className=\"solid-header-action-button-icon\" aria-hidden />\n <span className=\"solid-header-action-button-label\">Save Custom Filter</span>\n </SolidDropdownMenuItem>\n )}\n\n <SolidDropdownMenuItem\n className=\"solid-header-dropdown-item\"\n onSelect={() => {\n clearLocalstorageCache();\n setIsCogMenuOpen(false);\n }}\n >\n <SolidIcon name=\"si-trash\" className=\"solid-header-action-button-icon\" aria-hidden />\n <span className=\"solid-header-action-button-label\">Clear cache</span>\n </SolidDropdownMenuItem>\n </SolidDropdownMenuContent>\n </SolidDropdownMenu>\n\n <SolidDialog\n open={exportView}\n onOpenChange={setExportView}\n className=\"solid-kanban-export-dialog\"\n style={{ width: \"min(960px, calc(100vw - 32px))\" }}\n >\n <SolidDialogHeader className=\"solid-export-dialog-header\">\n <div>\n <SolidDialogTitle>Export</SolidDialogTitle>\n <SolidDialogDescription className=\"solid-filter-dialog-subtitle m-0\">\n Choose the file format, refine the field set, and save reusable export templates.\n </SolidDialogDescription>\n </div>\n <SolidDialogClose />\n </SolidDialogHeader>\n <SolidDialogSeparator />\n <SolidDialogBody className=\"solid-kanban-export-dialog-body\">\n <SolidExport\n listViewMetaData={solidKanbanViewMetaData}\n filters={filters}\n onExportComplete={() => setExportView(false)}\n />\n </SolidDialogBody>\n </SolidDialog>\n\n {openImportDialog && (\n <SolidGenericImport\n openImportDialog={openImportDialog}\n setOpenImportDialog={setOpenImportDialog}\n listViewMetaData={solidKanbanViewMetaData}\n handleFetchUpdatedRecords={handleRefreshView}\n />\n )}\n </div>\n );\n};\n"]}
@@ -1,4 +1,4 @@
1
- import { permissionExpression } from "../../../helpers/permissions";
1
+ import { canExportRecords, canImportRecords, permissionExpression } from "../../../helpers/permissions";
2
2
  import { storeCurrentModelViewContext } from "../../../helpers/modelViewPersistence";
3
3
  import { usePathname } from "../../../hooks/usePathname";
4
4
  import { useRouter } from "../../../hooks/useRouter";
@@ -127,15 +127,9 @@ export const SolidKanbanViewConfigure = ({
127
127
  window.location.reload();
128
128
  };
129
129
 
130
- const canImport =
131
- Boolean(modelName) &&
132
- actionsAllowed.includes(`${permissionExpression(modelName, "create")}`) &&
133
- actionsAllowed.includes(`${permissionExpression("importTransaction", "create")}`);
130
+ const canImport = canImportRecords(actionsAllowed, modelName);
134
131
 
135
- const canExport =
136
- Boolean(modelName) &&
137
- actionsAllowed.includes(`${permissionExpression(modelName, "findMany")}`) &&
138
- actionsAllowed.includes(`${permissionExpression("exportTransaction", "create")}`);
132
+ const canExport = canExportRecords(actionsAllowed, modelName);
139
133
 
140
134
  const canCustomizeLayout = actionsAllowed.includes(`${permissionExpression("userViewMetadata", "create")}`);
141
135
  const canSaveCustomFilter = actionsAllowed.includes(`${permissionExpression("savedFilters", "create")}`);
@@ -1 +1 @@
1
- {"version":3,"file":"SolidEmptyListViewPlaceholder.d.ts","sourceRoot":"","sources":["../../../../src/components/core/list/SolidEmptyListViewPlaceholder.tsx"],"names":[],"mappings":"AAYA,eAAO,MAAM,6BAA6B,4HAOvC,GAAG,4CAoIL,CAAC"}
1
+ {"version":3,"file":"SolidEmptyListViewPlaceholder.d.ts","sourceRoot":"","sources":["../../../../src/components/core/list/SolidEmptyListViewPlaceholder.tsx"],"names":[],"mappings":"AAYA,eAAO,MAAM,6BAA6B,4HAOvC,GAAG,4CAmIL,CAAC"}
@@ -1,5 +1,5 @@
1
1
  import { jsx as _jsx, jsxs as _jsxs, Fragment as _Fragment } from "react/jsx-runtime";
2
- import { permissionExpression } from '../../../helpers/permissions';
2
+ import { canImportRecords, permissionExpression } from '../../../helpers/permissions';
3
3
  import { SolidCreateButton } from '../common/SolidCreateButton';
4
4
  import { useHandleListCustomButtonClick } from '../../../components/common/useHandleListCustomButtonClick';
5
5
  import { isButtonVisibleInCurrentEnv } from '../../../helpers/buttonEnvironment';
@@ -39,8 +39,7 @@ export var SolidEmptyListViewPlaceholder = function (_a) {
39
39
  layoutAttrs.showDefaultAddButton !== false;
40
40
  var canImport = params.embeded !== true &&
41
41
  importAction.enabled &&
42
- actionsAllowed.includes("".concat(permissionExpression(params.modelName, 'create'))) &&
43
- actionsAllowed.includes("".concat(permissionExpression('importTransaction', 'create'))) &&
42
+ canImportRecords(actionsAllowed, params.modelName) &&
44
43
  (importAction.roles.length === 0 || hasAnyRole(user === null || user === void 0 ? void 0 : user.roles, importAction.roles));
45
44
  var CustomActionButtons = function () {
46
45
  var _a;
@@ -1 +1 @@
1
- {"version":3,"file":"SolidEmptyListViewPlaceholder.js","sourceRoot":"","sources":["../../../../src/components/core/list/SolidEmptyListViewPlaceholder.tsx"],"names":[],"mappings":"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","sourcesContent":["import { permissionExpression } from '../../../helpers/permissions'\nimport { SolidCreateButton } from '../common/SolidCreateButton'\nimport { useHandleListCustomButtonClick } from '../../../components/common/useHandleListCustomButtonClick'\nimport { isButtonVisibleInCurrentEnv } from '../../../helpers/buttonEnvironment'\nimport { hasAnyRole } from '../../../helpers/rolesHelper'\nimport { env } from \"../../../adapters/env\";\nimport { useSession } from \"../../../hooks/useSession\";\nimport { useState } from \"react\";\nimport { Download, SquarePen } from \"lucide-react\";\nimport { SolidGenericImport } from \"../common/SolidGenericImport/SolidGenericImport\";\nimport { SolidButton } from \"../../shad-cn-ui\";\n\nexport const SolidEmptyListViewPlaceholder = ({\n createButtonUrl,\n createActionQueryParams,\n actionsAllowed,\n params,\n solidListViewMetaData,\n handleFetchUpdatedRecords,\n}: any) => {\n const [openImportDialog, setOpenImportDialog] = useState(false);\n const { data: session } = useSession();\n const user = session?.user;\n\n const layoutAttrs = solidListViewMetaData?.data?.solidView?.layout?.attrs ?? {};\n const displayName = solidListViewMetaData?.data?.solidView?.displayName ?? \"records\";\n const entityName = displayName.toLowerCase();\n const noDataText = solidListViewMetaData?.data?.solidView?.layout?.attrs?.listViewNoDataHelperText\n ?? (env(\"NEXT_PUBLIC_DEFAULT_LIST_VIEW_NODATA_HELPER_TEXT\") && solidListViewMetaData?.data?.solidView?.displayName\n ? `${env(\"NEXT_PUBLIC_DEFAULT_LIST_VIEW_NODATA_HELPER_TEXT\")} ${solidListViewMetaData.data.solidView.displayName}`\n : `There are no ${entityName} records yet.`);\n\n const handleCustomButtonClick = useHandleListCustomButtonClick();\n\n const normalizeAction = (value: boolean | string[] | undefined) => {\n if (value === true || value === undefined) return { enabled: true, roles: [] as string[] };\n if (value === false) return { enabled: false, roles: [] as string[] };\n if (Array.isArray(value)) return { enabled: true, roles: value };\n return { enabled: true, roles: [] as string[] };\n };\n\n const importAction = normalizeAction(layoutAttrs.import);\n const canCreate =\n actionsAllowed.includes(`${permissionExpression(params.modelName, 'create')}`) &&\n layoutAttrs?.create !== false &&\n params.embeded !== true &&\n layoutAttrs.showDefaultAddButton !== false;\n const canImport =\n params.embeded !== true &&\n importAction.enabled &&\n actionsAllowed.includes(`${permissionExpression(params.modelName, 'create')}`) &&\n actionsAllowed.includes(`${permissionExpression('importTransaction', 'create')}`) &&\n (importAction.roles.length === 0 || hasAnyRole(user?.roles, importAction.roles));\n\n const CustomActionButtons = () => {\n const headerButtons = layoutAttrs?.headerButtons ?? [];\n if (layoutAttrs.showDefaultAddButton !== false || !headerButtons.length) return null;\n\n return (\n <div className=\"solid-empty-listview-custom-actions\">\n {headerButtons.map((button: any) => {\n const hasRole = !button?.attrs?.roles || button?.attrs?.roles.length === 0 ? true : hasAnyRole(user?.roles, button?.attrs?.roles);\n if (!hasRole) return null;\n if (!isButtonVisibleInCurrentEnv(button?.attrs)) return null;\n\n return (\n <SolidButton\n key={button?.attrs?.name || button?.attrs?.label}\n type=\"button\"\n className={`solid-empty-listview-secondary-action ${button?.attrs?.className ?? ''}`}\n variant={button?.attrs?.showText === false ? \"primary\" : \"ghost\"}\n size=\"small\"\n icon={button?.attrs?.icon}\n leftIcon={!button?.attrs?.icon ? <SquarePen size={14} /> : undefined}\n onClick={() => {\n const event = {\n params,\n solidListViewMetaData: solidListViewMetaData.data\n };\n handleCustomButtonClick(button.attrs, event);\n }}\n >\n {button.attrs.label}\n </SolidButton>\n );\n })}\n </div>\n );\n };\n\n return (\n <>\n <div className='solid-empty-listview-placeholder-container'>\n <div className=\"solid-empty-listview-placeholder-panel\">\n <div className=\"solid-empty-listview-header\">\n <div className=\"solid-empty-listview-header-title\">{displayName}</div>\n <div className=\"solid-empty-listview-header-subtitle\">{noDataText}</div>\n </div>\n\n <div className=\"solid-empty-listview-body\">\n {/* <div className=\"solid-empty-listview-icon-wrap\">\n <FolderOpen className=\"solid-empty-listview-icon\" aria-hidden=\"true\" />\n </div>\n <div className=\"solid-empty-listview-title\">\n No {displayName} Data Available\n </div> */}\n\n <div className=\"solid-empty-listview-actions\">\n {canCreate && (\n <div className=\"solid-empty-listview-create-action\">\n <SolidCreateButton\n createButtonUrl={createButtonUrl}\n createActionQueryParams={createActionQueryParams}\n solidListViewLayout={solidListViewMetaData?.data?.solidView?.layout}\n title={solidListViewMetaData?.data?.solidView?.displayName}\n />\n </div>\n )}\n {canImport && (\n <SolidButton\n type=\"button\"\n variant=\"outline\"\n leftIcon={<Download size={14} />}\n className=\"solid-empty-listview-import-button\"\n onClick={() => setOpenImportDialog(true)}\n >\n Import\n </SolidButton>\n )}\n </div>\n\n <CustomActionButtons />\n\n {(canCreate || canImport) && (\n <div className=\"solid-empty-listview-description\">\n Click Create or Import to add {entityName} entities.\n </div>\n )}\n </div>\n </div>\n </div>\n {openImportDialog && (\n <SolidGenericImport\n openImportDialog={openImportDialog}\n setOpenImportDialog={setOpenImportDialog}\n listViewMetaData={solidListViewMetaData}\n handleFetchUpdatedRecords={handleFetchUpdatedRecords}\n />\n )}\n </>\n );\n};\n"]}
1
+ {"version":3,"file":"SolidEmptyListViewPlaceholder.js","sourceRoot":"","sources":["../../../../src/components/core/list/SolidEmptyListViewPlaceholder.tsx"],"names":[],"mappings":"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","sourcesContent":["import { canImportRecords, permissionExpression } from '../../../helpers/permissions'\nimport { SolidCreateButton } from '../common/SolidCreateButton'\nimport { useHandleListCustomButtonClick } from '../../../components/common/useHandleListCustomButtonClick'\nimport { isButtonVisibleInCurrentEnv } from '../../../helpers/buttonEnvironment'\nimport { hasAnyRole } from '../../../helpers/rolesHelper'\nimport { env } from \"../../../adapters/env\";\nimport { useSession } from \"../../../hooks/useSession\";\nimport { useState } from \"react\";\nimport { Download, SquarePen } from \"lucide-react\";\nimport { SolidGenericImport } from \"../common/SolidGenericImport/SolidGenericImport\";\nimport { SolidButton } from \"../../shad-cn-ui\";\n\nexport const SolidEmptyListViewPlaceholder = ({\n createButtonUrl,\n createActionQueryParams,\n actionsAllowed,\n params,\n solidListViewMetaData,\n handleFetchUpdatedRecords,\n}: any) => {\n const [openImportDialog, setOpenImportDialog] = useState(false);\n const { data: session } = useSession();\n const user = session?.user;\n\n const layoutAttrs = solidListViewMetaData?.data?.solidView?.layout?.attrs ?? {};\n const displayName = solidListViewMetaData?.data?.solidView?.displayName ?? \"records\";\n const entityName = displayName.toLowerCase();\n const noDataText = solidListViewMetaData?.data?.solidView?.layout?.attrs?.listViewNoDataHelperText\n ?? (env(\"NEXT_PUBLIC_DEFAULT_LIST_VIEW_NODATA_HELPER_TEXT\") && solidListViewMetaData?.data?.solidView?.displayName\n ? `${env(\"NEXT_PUBLIC_DEFAULT_LIST_VIEW_NODATA_HELPER_TEXT\")} ${solidListViewMetaData.data.solidView.displayName}`\n : `There are no ${entityName} records yet.`);\n\n const handleCustomButtonClick = useHandleListCustomButtonClick();\n\n const normalizeAction = (value: boolean | string[] | undefined) => {\n if (value === true || value === undefined) return { enabled: true, roles: [] as string[] };\n if (value === false) return { enabled: false, roles: [] as string[] };\n if (Array.isArray(value)) return { enabled: true, roles: value };\n return { enabled: true, roles: [] as string[] };\n };\n\n const importAction = normalizeAction(layoutAttrs.import);\n const canCreate =\n actionsAllowed.includes(`${permissionExpression(params.modelName, 'create')}`) &&\n layoutAttrs?.create !== false &&\n params.embeded !== true &&\n layoutAttrs.showDefaultAddButton !== false;\n const canImport =\n params.embeded !== true &&\n importAction.enabled &&\n canImportRecords(actionsAllowed, params.modelName) &&\n (importAction.roles.length === 0 || hasAnyRole(user?.roles, importAction.roles));\n\n const CustomActionButtons = () => {\n const headerButtons = layoutAttrs?.headerButtons ?? [];\n if (layoutAttrs.showDefaultAddButton !== false || !headerButtons.length) return null;\n\n return (\n <div className=\"solid-empty-listview-custom-actions\">\n {headerButtons.map((button: any) => {\n const hasRole = !button?.attrs?.roles || button?.attrs?.roles.length === 0 ? true : hasAnyRole(user?.roles, button?.attrs?.roles);\n if (!hasRole) return null;\n if (!isButtonVisibleInCurrentEnv(button?.attrs)) return null;\n\n return (\n <SolidButton\n key={button?.attrs?.name || button?.attrs?.label}\n type=\"button\"\n className={`solid-empty-listview-secondary-action ${button?.attrs?.className ?? ''}`}\n variant={button?.attrs?.showText === false ? \"primary\" : \"ghost\"}\n size=\"small\"\n icon={button?.attrs?.icon}\n leftIcon={!button?.attrs?.icon ? <SquarePen size={14} /> : undefined}\n onClick={() => {\n const event = {\n params,\n solidListViewMetaData: solidListViewMetaData.data\n };\n handleCustomButtonClick(button.attrs, event);\n }}\n >\n {button.attrs.label}\n </SolidButton>\n );\n })}\n </div>\n );\n };\n\n return (\n <>\n <div className='solid-empty-listview-placeholder-container'>\n <div className=\"solid-empty-listview-placeholder-panel\">\n <div className=\"solid-empty-listview-header\">\n <div className=\"solid-empty-listview-header-title\">{displayName}</div>\n <div className=\"solid-empty-listview-header-subtitle\">{noDataText}</div>\n </div>\n\n <div className=\"solid-empty-listview-body\">\n {/* <div className=\"solid-empty-listview-icon-wrap\">\n <FolderOpen className=\"solid-empty-listview-icon\" aria-hidden=\"true\" />\n </div>\n <div className=\"solid-empty-listview-title\">\n No {displayName} Data Available\n </div> */}\n\n <div className=\"solid-empty-listview-actions\">\n {canCreate && (\n <div className=\"solid-empty-listview-create-action\">\n <SolidCreateButton\n createButtonUrl={createButtonUrl}\n createActionQueryParams={createActionQueryParams}\n solidListViewLayout={solidListViewMetaData?.data?.solidView?.layout}\n title={solidListViewMetaData?.data?.solidView?.displayName}\n />\n </div>\n )}\n {canImport && (\n <SolidButton\n type=\"button\"\n variant=\"outline\"\n leftIcon={<Download size={14} />}\n className=\"solid-empty-listview-import-button\"\n onClick={() => setOpenImportDialog(true)}\n >\n Import\n </SolidButton>\n )}\n </div>\n\n <CustomActionButtons />\n\n {(canCreate || canImport) && (\n <div className=\"solid-empty-listview-description\">\n Click Create or Import to add {entityName} entities.\n </div>\n )}\n </div>\n </div>\n </div>\n {openImportDialog && (\n <SolidGenericImport\n openImportDialog={openImportDialog}\n setOpenImportDialog={setOpenImportDialog}\n listViewMetaData={solidListViewMetaData}\n handleFetchUpdatedRecords={handleFetchUpdatedRecords}\n />\n )}\n </>\n );\n};\n"]}
@@ -1,4 +1,4 @@
1
- import { permissionExpression } from '../../../helpers/permissions'
1
+ import { canImportRecords, permissionExpression } from '../../../helpers/permissions'
2
2
  import { SolidCreateButton } from '../common/SolidCreateButton'
3
3
  import { useHandleListCustomButtonClick } from '../../../components/common/useHandleListCustomButtonClick'
4
4
  import { isButtonVisibleInCurrentEnv } from '../../../helpers/buttonEnvironment'
@@ -48,8 +48,7 @@ export const SolidEmptyListViewPlaceholder = ({
48
48
  const canImport =
49
49
  params.embeded !== true &&
50
50
  importAction.enabled &&
51
- actionsAllowed.includes(`${permissionExpression(params.modelName, 'create')}`) &&
52
- actionsAllowed.includes(`${permissionExpression('importTransaction', 'create')}`) &&
51
+ canImportRecords(actionsAllowed, params.modelName) &&
53
52
  (importAction.roles.length === 0 || hasAnyRole(user?.roles, importAction.roles));
54
53
 
55
54
  const CustomActionButtons = () => {
@@ -1 +1 @@
1
- {"version":3,"file":"SolidListView.d.ts","sourceRoot":"","sources":["../../../../src/components/core/list/SolidListView.tsx"],"names":[],"mappings":";AAmEA,KAAK,mBAAmB,GAAG;IACzB,UAAU,EAAE,MAAM,CAAC;IACnB,SAAS,EAAE,MAAM,CAAC;IAClB,YAAY,CAAC,EAAE,OAAO,CAAC;IACvB,6BAA6B,CAAC,EAAE,GAAG,CAAC;IACpC,8BAA8B,CAAC,EAAE,GAAG,CAAC;IACrC,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,wBAAwB,CAAC,EAAE,MAAM,CAAC;IAClC,YAAY,CAAC,EAAE,GAAG,CAAC;IACnB,YAAY,CAAC,EAAE,GAAG,CAAC;IACnB,iBAAiB,CAAC,EAAE,GAAG,CAAC;CACzB,CAAC;AAEF,MAAM,MAAM,mBAAmB,GAAG;IAChC;;;;;OAKG;IACH,OAAO,EAAE,MAAM,IAAI,CAAC;IACpB;;;;OAIG;IACH,YAAY,EAAE,MAAM,IAAI,CAAC;IACzB;;;;;;OAMG;IACH,WAAW,EAAE,CAAC,MAAM,EAAE;QACpB,uBAAuB,CAAC,EAAE,GAAG,CAAC;QAC9B,gBAAgB,CAAC,EAAE,GAAG,CAAC;QACvB,sBAAsB,CAAC,EAAE,GAAG,CAAC;QAC7B,2BAA2B,CAAC,EAAE,GAAG,CAAC;KACnC,KAAK,IAAI,CAAC;IACX;;;;OAIG;IACH,aAAa,EAAE,CAAC,SAAS,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,KAAK,IAAI,CAAC;IAC7D;;;OAGG;IACH,OAAO,EAAE,CAAC,aAAa,EAAE,MAAM,EAAE,aAAa,EAAE,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,KAAK,IAAI,CAAC;IACpE;;;OAGG;IACH,eAAe,EAAE,CAAC,KAAK,EAAE,OAAO,KAAK,IAAI,CAAC;IAC1C;;;OAGG;IACH,QAAQ,EAAE,MAAM;QACd,KAAK,EAAE,MAAM,CAAC;QACd,IAAI,EAAE,MAAM,CAAC;QACb,SAAS,EAAE,MAAM,CAAC;QAClB,SAAS,EAAE,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC;QACtB,YAAY,EAAE,OAAO,CAAC;QACtB,OAAO,EAAE,GAAG,CAAC;QACb,gBAAgB,EAAE,GAAG,CAAC;QACtB,QAAQ,EAAE,GAAG,EAAE,CAAC;QAChB,YAAY,EAAE,MAAM,CAAC;QACrB,OAAO,EAAE,OAAO,CAAC;KAClB,CAAC;CACH,CAAC;AAEF,eAAO,MAAM,aAAa,qHA2vDxB,CAAC"}
1
+ {"version":3,"file":"SolidListView.d.ts","sourceRoot":"","sources":["../../../../src/components/core/list/SolidListView.tsx"],"names":[],"mappings":";AAmEA,KAAK,mBAAmB,GAAG;IACzB,UAAU,EAAE,MAAM,CAAC;IACnB,SAAS,EAAE,MAAM,CAAC;IAClB,YAAY,CAAC,EAAE,OAAO,CAAC;IACvB,6BAA6B,CAAC,EAAE,GAAG,CAAC;IACpC,8BAA8B,CAAC,EAAE,GAAG,CAAC;IACrC,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,wBAAwB,CAAC,EAAE,MAAM,CAAC;IAClC,YAAY,CAAC,EAAE,GAAG,CAAC;IACnB,YAAY,CAAC,EAAE,GAAG,CAAC;IACnB,iBAAiB,CAAC,EAAE,GAAG,CAAC;CACzB,CAAC;AAEF,MAAM,MAAM,mBAAmB,GAAG;IAChC;;;;;OAKG;IACH,OAAO,EAAE,MAAM,IAAI,CAAC;IACpB;;;;OAIG;IACH,YAAY,EAAE,MAAM,IAAI,CAAC;IACzB;;;;;;OAMG;IACH,WAAW,EAAE,CAAC,MAAM,EAAE;QACpB,uBAAuB,CAAC,EAAE,GAAG,CAAC;QAC9B,gBAAgB,CAAC,EAAE,GAAG,CAAC;QACvB,sBAAsB,CAAC,EAAE,GAAG,CAAC;QAC7B,2BAA2B,CAAC,EAAE,GAAG,CAAC;KACnC,KAAK,IAAI,CAAC;IACX;;;;OAIG;IACH,aAAa,EAAE,CAAC,SAAS,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,KAAK,IAAI,CAAC;IAC7D;;;OAGG;IACH,OAAO,EAAE,CAAC,aAAa,EAAE,MAAM,EAAE,aAAa,EAAE,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,KAAK,IAAI,CAAC;IACpE;;;OAGG;IACH,eAAe,EAAE,CAAC,KAAK,EAAE,OAAO,KAAK,IAAI,CAAC;IAC1C;;;OAGG;IACH,QAAQ,EAAE,MAAM;QACd,KAAK,EAAE,MAAM,CAAC;QACd,IAAI,EAAE,MAAM,CAAC;QACb,SAAS,EAAE,MAAM,CAAC;QAClB,SAAS,EAAE,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC;QACtB,YAAY,EAAE,OAAO,CAAC;QACtB,OAAO,EAAE,GAAG,CAAC;QACb,gBAAgB,EAAE,GAAG,CAAC;QACtB,QAAQ,EAAE,GAAG,EAAE,CAAC;QAChB,YAAY,EAAE,MAAM,CAAC;QACrB,OAAO,EAAE,OAAO,CAAC;KAClB,CAAC;CACH,CAAC;AAEF,eAAO,MAAM,aAAa,qHA+uDxB,CAAC"}
@@ -65,7 +65,7 @@ import { SolidCustomListViewColumn } from "./SolidCustomListViewColumn";
65
65
  import { SolidCreateButton } from "../common/SolidCreateButton";
66
66
  import { SolidGlobalSearchElement } from "../common/SolidGlobalSearchElement";
67
67
  import { useLazyCheckIfPermissionExistsQuery } from "../../../redux/api/userApi";
68
- import { permissionExpression } from "../../../helpers/permissions";
68
+ import { getCollectionViewPermissionNames, permissionExpression } from "../../../helpers/permissions";
69
69
  import { usePathname } from "../../../hooks/usePathname";
70
70
  import { useRouter } from "../../../hooks/useRouter";
71
71
  import { useSearchParams } from "../../../hooks/useSearchParams";
@@ -225,19 +225,7 @@ export var SolidListView = forwardRef(function (params, ref) {
225
225
  switch (_a.label) {
226
226
  case 0:
227
227
  if (!params.modelName) return [3 /*break*/, 2];
228
- permissionNames = [
229
- permissionExpression(params.modelName, 'create'),
230
- permissionExpression(params.modelName, 'delete'),
231
- permissionExpression(params.modelName, 'update'),
232
- permissionExpression(params.modelName, 'deleteMany'),
233
- permissionExpression(params.modelName, 'findOne'),
234
- permissionExpression(params.modelName, 'findMany'),
235
- permissionExpression(params.modelName, 'insertMany'),
236
- permissionExpression('importTransaction', 'create'),
237
- permissionExpression('exportTransaction', 'create'),
238
- permissionExpression('userViewMetadata', 'create'),
239
- permissionExpression('savedFilters', 'create')
240
- ];
228
+ permissionNames = getCollectionViewPermissionNames(params.modelName);
241
229
  queryData = {
242
230
  permissionNames: permissionNames,
243
231
  };