diff --git a/assets/icons/sortcirclefilledicon.svg b/assets/icons/sortcirclefilledicon.svg
new file mode 100644
index 0000000..dfe1d1a
--- /dev/null
+++ b/assets/icons/sortcirclefilledicon.svg
@@ -0,0 +1,7 @@
+
+
+
diff --git a/assets/icons/sortcircleicon.svg b/assets/icons/sortcircleicon.svg
new file mode 100644
index 0000000..6c36d5c
--- /dev/null
+++ b/assets/icons/sortcircleicon.svg
@@ -0,0 +1,9 @@
+
+
+
diff --git a/src/components/Dashboard/Finance/Invoices.jsx b/src/components/Dashboard/Finance/Invoices.jsx
index b6366fc..5c4feb0 100644
--- a/src/components/Dashboard/Finance/Invoices.jsx
+++ b/src/components/Dashboard/Finance/Invoices.jsx
@@ -7,8 +7,10 @@ import ReloadIcon from '../../Icons/ReloadIcon'
import useColumnVisibility from '../hooks/useColumnVisibility'
import ObjectTableViewButton from '../common/ObjectTableViewButton'
import FilterSidebarButton from '../common/FilterSidebarButton'
+import SortSidebarButton from '../common/SortSidebarButton'
import useViewMode from '../hooks/useViewMode'
import useFilterSidebarVisibility from '../hooks/useFilterSidebarVisibility'
+import useSortSidebarVisibility from '../hooks/useSortSidebarVisibility'
import ColumnViewButton from '../common/ColumnViewButton'
import ExportListButton from '../common/ExportListButton'
@@ -24,6 +26,9 @@ const Invoices = () => {
const [showFilterSidebar, setShowFilterSidebar] =
useFilterSidebarVisibility('Invoices')
+ const [showSortSidebar, setShowSortSidebar] =
+ useSortSidebarVisibility('Invoices')
+
const actionItems = {
items: [
{
@@ -64,6 +69,10 @@ const Invoices = () => {
+ setShowSortSidebar(!showSortSidebar)}
+ />
setShowFilterSidebar(!showFilterSidebar)}
@@ -80,6 +89,7 @@ const Invoices = () => {
type='invoice'
cards={viewMode === 'cards'}
showFilterSidebar={showFilterSidebar}
+ showSortSidebar={showSortSidebar}
expandHeight={true}
saveFilterInSession={true}
saveFilterInUrl={true}
diff --git a/src/components/Dashboard/Finance/Payments.jsx b/src/components/Dashboard/Finance/Payments.jsx
index 03ada21..7d37958 100644
--- a/src/components/Dashboard/Finance/Payments.jsx
+++ b/src/components/Dashboard/Finance/Payments.jsx
@@ -7,8 +7,10 @@ import ReloadIcon from '../../Icons/ReloadIcon'
import useColumnVisibility from '../hooks/useColumnVisibility'
import ObjectTableViewButton from '../common/ObjectTableViewButton'
import FilterSidebarButton from '../common/FilterSidebarButton'
+import SortSidebarButton from '../common/SortSidebarButton'
import useViewMode from '../hooks/useViewMode'
import useFilterSidebarVisibility from '../hooks/useFilterSidebarVisibility'
+import useSortSidebarVisibility from '../hooks/useSortSidebarVisibility'
import ColumnViewButton from '../common/ColumnViewButton'
import ExportListButton from '../common/ExportListButton'
@@ -24,6 +26,9 @@ const Payments = () => {
const [showFilterSidebar, setShowFilterSidebar] =
useFilterSidebarVisibility('Payments')
+ const [showSortSidebar, setShowSortSidebar] =
+ useSortSidebarVisibility('Payments')
+
const actionItems = {
items: [
{
@@ -64,6 +69,10 @@ const Payments = () => {
+ setShowSortSidebar(!showSortSidebar)}
+ />
setShowFilterSidebar(!showFilterSidebar)}
@@ -80,6 +89,7 @@ const Payments = () => {
type='payment'
cards={viewMode === 'cards'}
showFilterSidebar={showFilterSidebar}
+ showSortSidebar={showSortSidebar}
expandHeight={true}
saveFilterInSession={true}
saveFilterInUrl={true}
diff --git a/src/components/Dashboard/Finance/TaxRecords.jsx b/src/components/Dashboard/Finance/TaxRecords.jsx
index 56ceea8..9895bde 100644
--- a/src/components/Dashboard/Finance/TaxRecords.jsx
+++ b/src/components/Dashboard/Finance/TaxRecords.jsx
@@ -7,8 +7,10 @@ import ReloadIcon from '../../Icons/ReloadIcon'
import useColumnVisibility from '../hooks/useColumnVisibility'
import ObjectTableViewButton from '../common/ObjectTableViewButton'
import FilterSidebarButton from '../common/FilterSidebarButton'
+import SortSidebarButton from '../common/SortSidebarButton'
import useViewMode from '../hooks/useViewMode'
import useFilterSidebarVisibility from '../hooks/useFilterSidebarVisibility'
+import useSortSidebarVisibility from '../hooks/useSortSidebarVisibility'
import ColumnViewButton from '../common/ColumnViewButton'
import ExportListButton from '../common/ExportListButton'
@@ -24,6 +26,9 @@ const TaxRecords = () => {
const [showFilterSidebar, setShowFilterSidebar] =
useFilterSidebarVisibility('TaxRecords')
+ const [showSortSidebar, setShowSortSidebar] =
+ useSortSidebarVisibility('TaxRecords')
+
const actionItems = {
items: [
{
@@ -64,6 +69,10 @@ const TaxRecords = () => {
+ setShowSortSidebar(!showSortSidebar)}
+ />
setShowFilterSidebar(!showFilterSidebar)}
@@ -80,6 +89,7 @@ const TaxRecords = () => {
type='taxRecord'
cards={viewMode === 'cards'}
showFilterSidebar={showFilterSidebar}
+ showSortSidebar={showSortSidebar}
expandHeight={true}
saveFilterInSession={true}
saveFilterInUrl={true}
diff --git a/src/components/Dashboard/Inventory/FilamentStocks.jsx b/src/components/Dashboard/Inventory/FilamentStocks.jsx
index 91460c9..a6b8979 100644
--- a/src/components/Dashboard/Inventory/FilamentStocks.jsx
+++ b/src/components/Dashboard/Inventory/FilamentStocks.jsx
@@ -11,8 +11,10 @@ import useColumnVisibility from '../hooks/useColumnVisibility'
import ObjectTable from '../common/ObjectTable'
import ObjectTableViewButton from '../common/ObjectTableViewButton'
import FilterSidebarButton from '../common/FilterSidebarButton'
+import SortSidebarButton from '../common/SortSidebarButton'
import useViewMode from '../hooks/useViewMode'
import useFilterSidebarVisibility from '../hooks/useFilterSidebarVisibility'
+import useSortSidebarVisibility from '../hooks/useSortSidebarVisibility'
import ColumnViewButton from '../common/ColumnViewButton'
import ExportListButton from '../common/ExportListButton'
@@ -29,6 +31,9 @@ const FilamentStocks = () => {
const [showFilterSidebar, setShowFilterSidebar] =
useFilterSidebarVisibility('FilamentStocks')
+ const [showSortSidebar, setShowSortSidebar] =
+ useSortSidebarVisibility('FilamentStocks')
+
const actionItems = {
items: [
{
@@ -69,6 +74,10 @@ const FilamentStocks = () => {
+ setShowSortSidebar(!showSortSidebar)}
+ />
setShowFilterSidebar(!showFilterSidebar)}
@@ -86,6 +95,7 @@ const FilamentStocks = () => {
type='filamentStock'
cards={viewMode === 'cards'}
showFilterSidebar={showFilterSidebar}
+ showSortSidebar={showSortSidebar}
expandHeight={true}
saveFilterInSession={true}
saveFilterInUrl={true}
diff --git a/src/components/Dashboard/Inventory/OrderItems.jsx b/src/components/Dashboard/Inventory/OrderItems.jsx
index a1cb772..6db3551 100644
--- a/src/components/Dashboard/Inventory/OrderItems.jsx
+++ b/src/components/Dashboard/Inventory/OrderItems.jsx
@@ -7,8 +7,10 @@ import ReloadIcon from '../../Icons/ReloadIcon'
import useColumnVisibility from '../hooks/useColumnVisibility'
import ObjectTableViewButton from '../common/ObjectTableViewButton'
import FilterSidebarButton from '../common/FilterSidebarButton'
+import SortSidebarButton from '../common/SortSidebarButton'
import useViewMode from '../hooks/useViewMode'
import useFilterSidebarVisibility from '../hooks/useFilterSidebarVisibility'
+import useSortSidebarVisibility from '../hooks/useSortSidebarVisibility'
import ColumnViewButton from '../common/ColumnViewButton'
import ExportListButton from '../common/ExportListButton'
@@ -24,6 +26,9 @@ const OrderItems = () => {
const [showFilterSidebar, setShowFilterSidebar] =
useFilterSidebarVisibility('OrderItems')
+ const [showSortSidebar, setShowSortSidebar] =
+ useSortSidebarVisibility('OrderItems')
+
const actionItems = {
items: [
{
@@ -64,6 +69,10 @@ const OrderItems = () => {
+ setShowSortSidebar(!showSortSidebar)}
+ />
setShowFilterSidebar(!showFilterSidebar)}
@@ -80,6 +89,7 @@ const OrderItems = () => {
type='orderItem'
cards={viewMode === 'cards'}
showFilterSidebar={showFilterSidebar}
+ showSortSidebar={showSortSidebar}
expandHeight={true}
saveFilterInSession={true}
saveFilterInUrl={true}
diff --git a/src/components/Dashboard/Inventory/PartStocks.jsx b/src/components/Dashboard/Inventory/PartStocks.jsx
index 32f675b..88dda98 100644
--- a/src/components/Dashboard/Inventory/PartStocks.jsx
+++ b/src/components/Dashboard/Inventory/PartStocks.jsx
@@ -11,8 +11,10 @@ import useColumnVisibility from '../hooks/useColumnVisibility'
import ObjectTable from '../common/ObjectTable'
import ObjectTableViewButton from '../common/ObjectTableViewButton'
import FilterSidebarButton from '../common/FilterSidebarButton'
+import SortSidebarButton from '../common/SortSidebarButton'
import useViewMode from '../hooks/useViewMode'
import useFilterSidebarVisibility from '../hooks/useFilterSidebarVisibility'
+import useSortSidebarVisibility from '../hooks/useSortSidebarVisibility'
import ColumnViewButton from '../common/ColumnViewButton'
import ExportListButton from '../common/ExportListButton'
@@ -29,6 +31,9 @@ const PartStocks = () => {
const [showFilterSidebar, setShowFilterSidebar] =
useFilterSidebarVisibility('PartStocks')
+ const [showSortSidebar, setShowSortSidebar] =
+ useSortSidebarVisibility('PartStocks')
+
const actionItems = {
items: [
{
@@ -69,6 +74,10 @@ const PartStocks = () => {
+ setShowSortSidebar(!showSortSidebar)}
+ />
setShowFilterSidebar(!showFilterSidebar)}
@@ -86,6 +95,7 @@ const PartStocks = () => {
type='partStock'
cards={viewMode === 'cards'}
showFilterSidebar={showFilterSidebar}
+ showSortSidebar={showSortSidebar}
expandHeight={true}
saveFilterInSession={true}
saveFilterInUrl={true}
diff --git a/src/components/Dashboard/Inventory/ProductStocks.jsx b/src/components/Dashboard/Inventory/ProductStocks.jsx
index 649541c..db5731a 100644
--- a/src/components/Dashboard/Inventory/ProductStocks.jsx
+++ b/src/components/Dashboard/Inventory/ProductStocks.jsx
@@ -12,8 +12,10 @@ import useColumnVisibility from '../hooks/useColumnVisibility'
import ObjectTable from '../common/ObjectTable'
import ObjectTableViewButton from '../common/ObjectTableViewButton'
import FilterSidebarButton from '../common/FilterSidebarButton'
+import SortSidebarButton from '../common/SortSidebarButton'
import useViewMode from '../hooks/useViewMode'
import useFilterSidebarVisibility from '../hooks/useFilterSidebarVisibility'
+import useSortSidebarVisibility from '../hooks/useSortSidebarVisibility'
import ColumnViewButton from '../common/ColumnViewButton'
import ExportListButton from '../common/ExportListButton'
@@ -30,6 +32,9 @@ const ProductStocks = () => {
const [showFilterSidebar, setShowFilterSidebar] =
useFilterSidebarVisibility('ProductStocks')
+ const [showSortSidebar, setShowSortSidebar] =
+ useSortSidebarVisibility('ProductStocks')
+
const actionItems = {
items: [
{
@@ -70,6 +75,10 @@ const ProductStocks = () => {
+ setShowSortSidebar(!showSortSidebar)}
+ />
setShowFilterSidebar(!showFilterSidebar)}
@@ -87,6 +96,7 @@ const ProductStocks = () => {
type='productStock'
cards={viewMode === 'cards'}
showFilterSidebar={showFilterSidebar}
+ showSortSidebar={showSortSidebar}
expandHeight={true}
saveFilterInSession={true}
saveFilterInUrl={true}
diff --git a/src/components/Dashboard/Inventory/PurchaseOrders.jsx b/src/components/Dashboard/Inventory/PurchaseOrders.jsx
index 2cbff6e..84b8c51 100644
--- a/src/components/Dashboard/Inventory/PurchaseOrders.jsx
+++ b/src/components/Dashboard/Inventory/PurchaseOrders.jsx
@@ -7,8 +7,10 @@ import ReloadIcon from '../../Icons/ReloadIcon'
import useColumnVisibility from '../hooks/useColumnVisibility'
import ObjectTableViewButton from '../common/ObjectTableViewButton'
import FilterSidebarButton from '../common/FilterSidebarButton'
+import SortSidebarButton from '../common/SortSidebarButton'
import useViewMode from '../hooks/useViewMode'
import useFilterSidebarVisibility from '../hooks/useFilterSidebarVisibility'
+import useSortSidebarVisibility from '../hooks/useSortSidebarVisibility'
import ColumnViewButton from '../common/ColumnViewButton'
import ExportListButton from '../common/ExportListButton'
@@ -24,6 +26,9 @@ const PurchaseOrders = () => {
const [showFilterSidebar, setShowFilterSidebar] =
useFilterSidebarVisibility('PurchaseOrders')
+ const [showSortSidebar, setShowSortSidebar] =
+ useSortSidebarVisibility('PurchaseOrders')
+
const actionItems = {
items: [
{
@@ -64,6 +69,10 @@ const PurchaseOrders = () => {
+ setShowSortSidebar(!showSortSidebar)}
+ />
setShowFilterSidebar(!showFilterSidebar)}
@@ -80,6 +89,7 @@ const PurchaseOrders = () => {
type='purchaseOrder'
cards={viewMode === 'cards'}
showFilterSidebar={showFilterSidebar}
+ showSortSidebar={showSortSidebar}
expandHeight={true}
saveFilterInSession={true}
saveFilterInUrl={true}
diff --git a/src/components/Dashboard/Inventory/Shipments.jsx b/src/components/Dashboard/Inventory/Shipments.jsx
index ac743dc..fb48b71 100644
--- a/src/components/Dashboard/Inventory/Shipments.jsx
+++ b/src/components/Dashboard/Inventory/Shipments.jsx
@@ -7,8 +7,10 @@ import ReloadIcon from '../../Icons/ReloadIcon'
import useColumnVisibility from '../hooks/useColumnVisibility'
import ObjectTableViewButton from '../common/ObjectTableViewButton'
import FilterSidebarButton from '../common/FilterSidebarButton'
+import SortSidebarButton from '../common/SortSidebarButton'
import useViewMode from '../hooks/useViewMode'
import useFilterSidebarVisibility from '../hooks/useFilterSidebarVisibility'
+import useSortSidebarVisibility from '../hooks/useSortSidebarVisibility'
import ColumnViewButton from '../common/ColumnViewButton'
import ExportListButton from '../common/ExportListButton'
@@ -24,6 +26,9 @@ const Shipments = () => {
const [showFilterSidebar, setShowFilterSidebar] =
useFilterSidebarVisibility('Shipments')
+ const [showSortSidebar, setShowSortSidebar] =
+ useSortSidebarVisibility('Shipments')
+
const actionItems = {
items: [
{
@@ -64,6 +69,10 @@ const Shipments = () => {
+ setShowSortSidebar(!showSortSidebar)}
+ />
setShowFilterSidebar(!showFilterSidebar)}
@@ -80,6 +89,7 @@ const Shipments = () => {
type='shipment'
cards={viewMode === 'cards'}
showFilterSidebar={showFilterSidebar}
+ showSortSidebar={showSortSidebar}
expandHeight={true}
saveFilterInSession={true}
saveFilterInUrl={true}
diff --git a/src/components/Dashboard/Inventory/StockAudits.jsx b/src/components/Dashboard/Inventory/StockAudits.jsx
index d7b781e..fe1fef8 100644
--- a/src/components/Dashboard/Inventory/StockAudits.jsx
+++ b/src/components/Dashboard/Inventory/StockAudits.jsx
@@ -11,8 +11,10 @@ import useColumnVisibility from '../hooks/useColumnVisibility'
import ObjectTable from '../common/ObjectTable'
import ObjectTableViewButton from '../common/ObjectTableViewButton'
import FilterSidebarButton from '../common/FilterSidebarButton'
+import SortSidebarButton from '../common/SortSidebarButton'
import useViewMode from '../hooks/useViewMode'
import useFilterSidebarVisibility from '../hooks/useFilterSidebarVisibility'
+import useSortSidebarVisibility from '../hooks/useSortSidebarVisibility'
import ColumnViewButton from '../common/ColumnViewButton'
import ExportListButton from '../common/ExportListButton'
@@ -29,6 +31,9 @@ const StockAudits = () => {
const [showFilterSidebar, setShowFilterSidebar] =
useFilterSidebarVisibility('StockAudits')
+ const [showSortSidebar, setShowSortSidebar] =
+ useSortSidebarVisibility('StockAudits')
+
const actionItems = {
items: [
{
@@ -69,6 +74,10 @@ const StockAudits = () => {
+ setShowSortSidebar(!showSortSidebar)}
+ />
setShowFilterSidebar(!showFilterSidebar)}
@@ -86,6 +95,7 @@ const StockAudits = () => {
type='stockAudit'
cards={viewMode === 'cards'}
showFilterSidebar={showFilterSidebar}
+ showSortSidebar={showSortSidebar}
expandHeight={true}
saveFilterInSession={true}
saveFilterInUrl={true}
diff --git a/src/components/Dashboard/Inventory/StockEvents.jsx b/src/components/Dashboard/Inventory/StockEvents.jsx
index 883b8be..eee995c 100644
--- a/src/components/Dashboard/Inventory/StockEvents.jsx
+++ b/src/components/Dashboard/Inventory/StockEvents.jsx
@@ -4,8 +4,10 @@ import useColumnVisibility from '../hooks/useColumnVisibility'
import ObjectTable from '../common/ObjectTable'
import ObjectTableViewButton from '../common/ObjectTableViewButton'
import FilterSidebarButton from '../common/FilterSidebarButton'
+import SortSidebarButton from '../common/SortSidebarButton'
import useViewMode from '../hooks/useViewMode'
import useFilterSidebarVisibility from '../hooks/useFilterSidebarVisibility'
+import useSortSidebarVisibility from '../hooks/useSortSidebarVisibility'
import ColumnViewButton from '../common/ColumnViewButton'
import ExportListButton from '../common/ExportListButton'
import ReloadIcon from '../../Icons/ReloadIcon'
@@ -20,6 +22,9 @@ const StockEvents = () => {
const [showFilterSidebar, setShowFilterSidebar] =
useFilterSidebarVisibility('StockEvents')
+ const [showSortSidebar, setShowSortSidebar] =
+ useSortSidebarVisibility('StockEvents')
+
const actionItems = {
items: [
{
@@ -52,6 +57,10 @@ const StockEvents = () => {
+ setShowSortSidebar(!showSortSidebar)}
+ />
setShowFilterSidebar(!showFilterSidebar)}
@@ -69,6 +78,7 @@ const StockEvents = () => {
type='stockEvent'
cards={viewMode === 'cards'}
showFilterSidebar={showFilterSidebar}
+ showSortSidebar={showSortSidebar}
expandHeight={true}
saveFilterInSession={true}
saveFilterInUrl={true}
diff --git a/src/components/Dashboard/Inventory/StockLocations.jsx b/src/components/Dashboard/Inventory/StockLocations.jsx
index 96add8d..cf6b7aa 100644
--- a/src/components/Dashboard/Inventory/StockLocations.jsx
+++ b/src/components/Dashboard/Inventory/StockLocations.jsx
@@ -9,8 +9,10 @@ import useColumnVisibility from '../hooks/useColumnVisibility'
import ObjectTable from '../common/ObjectTable'
import ObjectTableViewButton from '../common/ObjectTableViewButton'
import FilterSidebarButton from '../common/FilterSidebarButton'
+import SortSidebarButton from '../common/SortSidebarButton'
import useViewMode from '../hooks/useViewMode'
import useFilterSidebarVisibility from '../hooks/useFilterSidebarVisibility'
+import useSortSidebarVisibility from '../hooks/useSortSidebarVisibility'
import ColumnViewButton from '../common/ColumnViewButton'
import ExportListButton from '../common/ExportListButton'
@@ -27,6 +29,9 @@ const StockLocations = () => {
const [showFilterSidebar, setShowFilterSidebar] =
useFilterSidebarVisibility('StockLocations')
+ const [showSortSidebar, setShowSortSidebar] =
+ useSortSidebarVisibility('StockLocations')
+
const actionItems = {
items: [
{
@@ -67,6 +72,10 @@ const StockLocations = () => {
+ setShowSortSidebar(!showSortSidebar)}
+ />
setShowFilterSidebar(!showFilterSidebar)}
@@ -84,6 +93,7 @@ const StockLocations = () => {
type='stockLocation'
cards={viewMode === 'cards'}
showFilterSidebar={showFilterSidebar}
+ showSortSidebar={showSortSidebar}
expandHeight={true}
saveFilterInSession={true}
saveFilterInUrl={true}
diff --git a/src/components/Dashboard/Inventory/StockTransfers.jsx b/src/components/Dashboard/Inventory/StockTransfers.jsx
index cafb3e1..3a71640 100644
--- a/src/components/Dashboard/Inventory/StockTransfers.jsx
+++ b/src/components/Dashboard/Inventory/StockTransfers.jsx
@@ -9,8 +9,10 @@ import useColumnVisibility from '../hooks/useColumnVisibility'
import ObjectTable from '../common/ObjectTable'
import ObjectTableViewButton from '../common/ObjectTableViewButton'
import FilterSidebarButton from '../common/FilterSidebarButton'
+import SortSidebarButton from '../common/SortSidebarButton'
import useViewMode from '../hooks/useViewMode'
import useFilterSidebarVisibility from '../hooks/useFilterSidebarVisibility'
+import useSortSidebarVisibility from '../hooks/useSortSidebarVisibility'
import ColumnViewButton from '../common/ColumnViewButton'
import ExportListButton from '../common/ExportListButton'
@@ -27,6 +29,9 @@ const StockTransfers = () => {
const [showFilterSidebar, setShowFilterSidebar] =
useFilterSidebarVisibility('StockTransfers')
+ const [showSortSidebar, setShowSortSidebar] =
+ useSortSidebarVisibility('StockTransfers')
+
const actionItems = {
items: [
{
@@ -67,6 +72,10 @@ const StockTransfers = () => {
+ setShowSortSidebar(!showSortSidebar)}
+ />
setShowFilterSidebar(!showFilterSidebar)}
@@ -84,6 +93,7 @@ const StockTransfers = () => {
type='stockTransfer'
cards={viewMode === 'cards'}
showFilterSidebar={showFilterSidebar}
+ showSortSidebar={showSortSidebar}
expandHeight={true}
saveFilterInSession={true}
saveFilterInUrl={true}
diff --git a/src/components/Dashboard/Management/AppPasswords.jsx b/src/components/Dashboard/Management/AppPasswords.jsx
index 462bcec..fe200ed 100644
--- a/src/components/Dashboard/Management/AppPasswords.jsx
+++ b/src/components/Dashboard/Management/AppPasswords.jsx
@@ -8,8 +8,10 @@ import PlusIcon from '../../Icons/PlusIcon'
import ReloadIcon from '../../Icons/ReloadIcon'
import ObjectTableViewButton from '../common/ObjectTableViewButton'
import FilterSidebarButton from '../common/FilterSidebarButton'
+import SortSidebarButton from '../common/SortSidebarButton'
import useViewMode from '../hooks/useViewMode'
import useFilterSidebarVisibility from '../hooks/useFilterSidebarVisibility'
+import useSortSidebarVisibility from '../hooks/useSortSidebarVisibility'
import ExportListButton from '../common/ExportListButton'
const AppPasswords = () => {
@@ -23,6 +25,9 @@ const AppPasswords = () => {
const [showFilterSidebar, setShowFilterSidebar] =
useFilterSidebarVisibility('AppPasswords')
+ const [showSortSidebar, setShowSortSidebar] =
+ useSortSidebarVisibility('AppPasswords')
+
const actionItems = {
items: [
{
@@ -63,6 +68,10 @@ const AppPasswords = () => {
+ setShowSortSidebar(!showSortSidebar)}
+ />
setShowFilterSidebar(!showFilterSidebar)}
@@ -80,6 +89,7 @@ const AppPasswords = () => {
cards={viewMode === 'cards'}
visibleColumns={columnVisibility}
showFilterSidebar={showFilterSidebar}
+ showSortSidebar={showSortSidebar}
expandHeight={true}
saveFilterInSession={true}
saveFilterInUrl={true}
diff --git a/src/components/Dashboard/Management/AuditLogs.jsx b/src/components/Dashboard/Management/AuditLogs.jsx
index 482c84e..3b714f5 100644
--- a/src/components/Dashboard/Management/AuditLogs.jsx
+++ b/src/components/Dashboard/Management/AuditLogs.jsx
@@ -4,8 +4,10 @@ import { Button, Flex, Space, Dropdown } from 'antd'
import ReloadIcon from '../../Icons/ReloadIcon'
import useColumnVisibility from '../hooks/useColumnVisibility'
import useFilterSidebarVisibility from '../hooks/useFilterSidebarVisibility'
+import useSortSidebarVisibility from '../hooks/useSortSidebarVisibility'
import ObjectTable from '../common/ObjectTable'
import FilterSidebarButton from '../common/FilterSidebarButton'
+import SortSidebarButton from '../common/SortSidebarButton'
import ColumnViewButton from '../common/ColumnViewButton'
import ExportListButton from '../common/ExportListButton'
@@ -18,6 +20,9 @@ const AuditLogs = () => {
const [showFilterSidebar, setShowFilterSidebar] =
useFilterSidebarVisibility('AuditLogs')
+ const [showSortSidebar, setShowSortSidebar] =
+ useSortSidebarVisibility('AuditLogs')
+
const actionItems = {
items: [
{
@@ -50,6 +55,10 @@ const AuditLogs = () => {
+ setShowSortSidebar(!showSortSidebar)}
+ />
setShowFilterSidebar(!showFilterSidebar)}
@@ -62,6 +71,7 @@ const AuditLogs = () => {
visibleColumns={columnVisibility}
type='auditLog'
showFilterSidebar={showFilterSidebar}
+ showSortSidebar={showSortSidebar}
expandHeight={true}
saveFilterInSession={true}
saveFilterInUrl={true}
diff --git a/src/components/Dashboard/Management/CourierServices.jsx b/src/components/Dashboard/Management/CourierServices.jsx
index c6191ec..bd4b9e6 100644
--- a/src/components/Dashboard/Management/CourierServices.jsx
+++ b/src/components/Dashboard/Management/CourierServices.jsx
@@ -7,8 +7,10 @@ import ReloadIcon from '../../Icons/ReloadIcon'
import useColumnVisibility from '../hooks/useColumnVisibility'
import ObjectTableViewButton from '../common/ObjectTableViewButton'
import FilterSidebarButton from '../common/FilterSidebarButton'
+import SortSidebarButton from '../common/SortSidebarButton'
import useViewMode from '../hooks/useViewMode'
import useFilterSidebarVisibility from '../hooks/useFilterSidebarVisibility'
+import useSortSidebarVisibility from '../hooks/useSortSidebarVisibility'
import ColumnViewButton from '../common/ColumnViewButton'
import ExportListButton from '../common/ExportListButton'
@@ -24,6 +26,9 @@ const CourierServices = () => {
const [showFilterSidebar, setShowFilterSidebar] =
useFilterSidebarVisibility('CourierServices')
+ const [showSortSidebar, setShowSortSidebar] =
+ useSortSidebarVisibility('CourierServices')
+
const actionItems = {
items: [
{
@@ -64,6 +69,10 @@ const CourierServices = () => {
+ setShowSortSidebar(!showSortSidebar)}
+ />
setShowFilterSidebar(!showFilterSidebar)}
@@ -80,6 +89,7 @@ const CourierServices = () => {
type='courierService'
cards={viewMode === 'cards'}
showFilterSidebar={showFilterSidebar}
+ showSortSidebar={showSortSidebar}
expandHeight={true}
saveFilterInSession={true}
saveFilterInUrl={true}
diff --git a/src/components/Dashboard/Management/Couriers.jsx b/src/components/Dashboard/Management/Couriers.jsx
index 39184de..b26a050 100644
--- a/src/components/Dashboard/Management/Couriers.jsx
+++ b/src/components/Dashboard/Management/Couriers.jsx
@@ -7,8 +7,10 @@ import ReloadIcon from '../../Icons/ReloadIcon'
import useColumnVisibility from '../hooks/useColumnVisibility'
import ObjectTableViewButton from '../common/ObjectTableViewButton'
import FilterSidebarButton from '../common/FilterSidebarButton'
+import SortSidebarButton from '../common/SortSidebarButton'
import useViewMode from '../hooks/useViewMode'
import useFilterSidebarVisibility from '../hooks/useFilterSidebarVisibility'
+import useSortSidebarVisibility from '../hooks/useSortSidebarVisibility'
import ColumnViewButton from '../common/ColumnViewButton'
import ExportListButton from '../common/ExportListButton'
@@ -23,6 +25,9 @@ const Couriers = () => {
const [showFilterSidebar, setShowFilterSidebar] =
useFilterSidebarVisibility('Couriers')
+ const [showSortSidebar, setShowSortSidebar] =
+ useSortSidebarVisibility('Couriers')
+
const actionItems = {
items: [
{
@@ -63,6 +68,10 @@ const Couriers = () => {
+ setShowSortSidebar(!showSortSidebar)}
+ />
setShowFilterSidebar(!showFilterSidebar)}
@@ -79,6 +88,7 @@ const Couriers = () => {
type='courier'
cards={viewMode === 'cards'}
showFilterSidebar={showFilterSidebar}
+ showSortSidebar={showSortSidebar}
expandHeight={true}
saveFilterInSession={true}
saveFilterInUrl={true}
diff --git a/src/components/Dashboard/Management/DocumentJobs.jsx b/src/components/Dashboard/Management/DocumentJobs.jsx
index c47b604..40a4ddd 100644
--- a/src/components/Dashboard/Management/DocumentJobs.jsx
+++ b/src/components/Dashboard/Management/DocumentJobs.jsx
@@ -7,8 +7,10 @@ import ReloadIcon from '../../Icons/ReloadIcon'
import useColumnVisibility from '../hooks/useColumnVisibility'
import ObjectTableViewButton from '../common/ObjectTableViewButton'
import FilterSidebarButton from '../common/FilterSidebarButton'
+import SortSidebarButton from '../common/SortSidebarButton'
import useViewMode from '../hooks/useViewMode'
import useFilterSidebarVisibility from '../hooks/useFilterSidebarVisibility'
+import useSortSidebarVisibility from '../hooks/useSortSidebarVisibility'
import ColumnViewButton from '../common/ColumnViewButton'
import ExportListButton from '../common/ExportListButton'
@@ -24,6 +26,9 @@ const DocumentJobs = () => {
const [showFilterSidebar, setShowFilterSidebar] =
useFilterSidebarVisibility('DocumentJobs')
+ const [showSortSidebar, setShowSortSidebar] =
+ useSortSidebarVisibility('DocumentJobs')
+
const actionItems = {
items: [
{
@@ -64,6 +69,10 @@ const DocumentJobs = () => {
+ setShowSortSidebar(!showSortSidebar)}
+ />
setShowFilterSidebar(!showFilterSidebar)}
@@ -80,6 +89,7 @@ const DocumentJobs = () => {
type='documentJob'
cards={viewMode === 'cards'}
showFilterSidebar={showFilterSidebar}
+ showSortSidebar={showSortSidebar}
expandHeight={true}
saveFilterInSession={true}
saveFilterInUrl={true}
diff --git a/src/components/Dashboard/Management/DocumentPrinters.jsx b/src/components/Dashboard/Management/DocumentPrinters.jsx
index aa56da8..e759c50 100644
--- a/src/components/Dashboard/Management/DocumentPrinters.jsx
+++ b/src/components/Dashboard/Management/DocumentPrinters.jsx
@@ -6,8 +6,10 @@ import ReloadIcon from '../../Icons/ReloadIcon'
import useColumnVisibility from '../hooks/useColumnVisibility'
import ObjectTableViewButton from '../common/ObjectTableViewButton'
import FilterSidebarButton from '../common/FilterSidebarButton'
+import SortSidebarButton from '../common/SortSidebarButton'
import useViewMode from '../hooks/useViewMode'
import useFilterSidebarVisibility from '../hooks/useFilterSidebarVisibility'
+import useSortSidebarVisibility from '../hooks/useSortSidebarVisibility'
import ColumnViewButton from '../common/ColumnViewButton'
import ExportListButton from '../common/ExportListButton'
import NewDocumentPrinter from './DocumentPrinters/NewDocumentPrinter'
@@ -23,6 +25,9 @@ const DocumentPrinters = () => {
const [showFilterSidebar, setShowFilterSidebar] =
useFilterSidebarVisibility('DocumentPrinters')
+ const [showSortSidebar, setShowSortSidebar] =
+ useSortSidebarVisibility('DocumentPrinters')
+
const actionItems = {
items: [
{
@@ -63,6 +68,10 @@ const DocumentPrinters = () => {
+ setShowSortSidebar(!showSortSidebar)}
+ />
setShowFilterSidebar(!showFilterSidebar)}
@@ -79,6 +88,7 @@ const DocumentPrinters = () => {
type='documentPrinter'
cards={viewMode === 'cards'}
showFilterSidebar={showFilterSidebar}
+ showSortSidebar={showSortSidebar}
expandHeight={true}
saveFilterInSession={true}
saveFilterInUrl={true}
diff --git a/src/components/Dashboard/Management/DocumentSizes.jsx b/src/components/Dashboard/Management/DocumentSizes.jsx
index d951c11..8a81945 100644
--- a/src/components/Dashboard/Management/DocumentSizes.jsx
+++ b/src/components/Dashboard/Management/DocumentSizes.jsx
@@ -7,8 +7,10 @@ import ReloadIcon from '../../Icons/ReloadIcon'
import useColumnVisibility from '../hooks/useColumnVisibility'
import ObjectTableViewButton from '../common/ObjectTableViewButton'
import FilterSidebarButton from '../common/FilterSidebarButton'
+import SortSidebarButton from '../common/SortSidebarButton'
import useViewMode from '../hooks/useViewMode'
import useFilterSidebarVisibility from '../hooks/useFilterSidebarVisibility'
+import useSortSidebarVisibility from '../hooks/useSortSidebarVisibility'
import ColumnViewButton from '../common/ColumnViewButton'
import ExportListButton from '../common/ExportListButton'
@@ -22,6 +24,9 @@ const DocumentSizes = () => {
const [showFilterSidebar, setShowFilterSidebar] =
useFilterSidebarVisibility('DocumentSizes')
+ const [showSortSidebar, setShowSortSidebar] =
+ useSortSidebarVisibility('DocumentSizes')
+
const actionItems = {
items: [
{
@@ -62,6 +67,10 @@ const DocumentSizes = () => {
+ setShowSortSidebar(!showSortSidebar)}
+ />
setShowFilterSidebar(!showFilterSidebar)}
@@ -78,6 +87,7 @@ const DocumentSizes = () => {
type='documentSize'
cards={viewMode === 'cards'}
showFilterSidebar={showFilterSidebar}
+ showSortSidebar={showSortSidebar}
expandHeight={true}
saveFilterInSession={true}
saveFilterInUrl={true}
diff --git a/src/components/Dashboard/Management/DocumentTemplates.jsx b/src/components/Dashboard/Management/DocumentTemplates.jsx
index b42e1b5..1d57f12 100644
--- a/src/components/Dashboard/Management/DocumentTemplates.jsx
+++ b/src/components/Dashboard/Management/DocumentTemplates.jsx
@@ -7,8 +7,10 @@ import ReloadIcon from '../../Icons/ReloadIcon'
import useColumnVisibility from '../hooks/useColumnVisibility'
import ObjectTableViewButton from '../common/ObjectTableViewButton'
import FilterSidebarButton from '../common/FilterSidebarButton'
+import SortSidebarButton from '../common/SortSidebarButton'
import useViewMode from '../hooks/useViewMode'
import useFilterSidebarVisibility from '../hooks/useFilterSidebarVisibility'
+import useSortSidebarVisibility from '../hooks/useSortSidebarVisibility'
import ColumnViewButton from '../common/ColumnViewButton'
import ExportListButton from '../common/ExportListButton'
@@ -24,6 +26,9 @@ const DocumentTemplates = () => {
const [showFilterSidebar, setShowFilterSidebar] =
useFilterSidebarVisibility('DocumentTemplates')
+ const [showSortSidebar, setShowSortSidebar] =
+ useSortSidebarVisibility('DocumentTemplates')
+
const actionItems = {
items: [
{
@@ -64,6 +69,10 @@ const DocumentTemplates = () => {
+ setShowSortSidebar(!showSortSidebar)}
+ />
setShowFilterSidebar(!showFilterSidebar)}
@@ -80,6 +89,7 @@ const DocumentTemplates = () => {
type='documentTemplate'
cards={viewMode === 'cards'}
showFilterSidebar={showFilterSidebar}
+ showSortSidebar={showSortSidebar}
expandHeight={true}
saveFilterInSession={true}
saveFilterInUrl={true}
diff --git a/src/components/Dashboard/Management/FilamentSkus.jsx b/src/components/Dashboard/Management/FilamentSkus.jsx
index b020e65..c7090f9 100644
--- a/src/components/Dashboard/Management/FilamentSkus.jsx
+++ b/src/components/Dashboard/Management/FilamentSkus.jsx
@@ -9,8 +9,10 @@ import useColumnVisibility from '../hooks/useColumnVisibility'
import ObjectTable from '../common/ObjectTable'
import ObjectTableViewButton from '../common/ObjectTableViewButton'
import FilterSidebarButton from '../common/FilterSidebarButton'
+import SortSidebarButton from '../common/SortSidebarButton'
import useViewMode from '../hooks/useViewMode'
import useFilterSidebarVisibility from '../hooks/useFilterSidebarVisibility'
+import useSortSidebarVisibility from '../hooks/useSortSidebarVisibility'
import ColumnViewButton from '../common/ColumnViewButton'
import ExportListButton from '../common/ExportListButton'
@@ -27,6 +29,9 @@ const FilamentSkus = () => {
const [showFilterSidebar, setShowFilterSidebar] =
useFilterSidebarVisibility('FilamentSkus')
+ const [showSortSidebar, setShowSortSidebar] =
+ useSortSidebarVisibility('FilamentSkus')
+
const actionItems = {
items: [
{
@@ -67,6 +72,10 @@ const FilamentSkus = () => {
+ setShowSortSidebar(!showSortSidebar)}
+ />
setShowFilterSidebar(!showFilterSidebar)}
@@ -84,6 +93,7 @@ const FilamentSkus = () => {
type='filamentSku'
cards={viewMode === 'cards'}
showFilterSidebar={showFilterSidebar}
+ showSortSidebar={showSortSidebar}
expandHeight={true}
saveFilterInSession={true}
saveFilterInUrl={true}
diff --git a/src/components/Dashboard/Management/Filaments.jsx b/src/components/Dashboard/Management/Filaments.jsx
index 13e054d..2825cd3 100644
--- a/src/components/Dashboard/Management/Filaments.jsx
+++ b/src/components/Dashboard/Management/Filaments.jsx
@@ -13,8 +13,10 @@ import ReloadIcon from '../../Icons/ReloadIcon'
import useViewMode from '../hooks/useViewMode'
import ObjectTableViewButton from '../common/ObjectTableViewButton'
import FilterSidebarButton from '../common/FilterSidebarButton'
+import SortSidebarButton from '../common/SortSidebarButton'
import ExportListButton from '../common/ExportListButton'
import useFilterSidebarVisibility from '../hooks/useFilterSidebarVisibility'
+import useSortSidebarVisibility from '../hooks/useSortSidebarVisibility'
const Filaments = () => {
const [newFilamentOpen, setNewFilamentOpen] = useState(false)
@@ -29,6 +31,9 @@ const Filaments = () => {
const [showFilterSidebar, setShowFilterSidebar] =
useFilterSidebarVisibility('Filaments')
+ const [showSortSidebar, setShowSortSidebar] =
+ useSortSidebarVisibility('Filaments')
+
const actionItems = {
items: [
{
@@ -69,6 +74,10 @@ const Filaments = () => {
+ setShowSortSidebar(!showSortSidebar)}
+ />
setShowFilterSidebar(!showFilterSidebar)}
@@ -86,6 +95,7 @@ const Filaments = () => {
cards={viewMode === 'cards'}
visibleColumns={columnVisibility}
showFilterSidebar={showFilterSidebar}
+ showSortSidebar={showSortSidebar}
expandHeight={true}
saveFilterInSession={true}
saveFilterInUrl={true}
diff --git a/src/components/Dashboard/Management/Files.jsx b/src/components/Dashboard/Management/Files.jsx
index e79593f..0e07edf 100644
--- a/src/components/Dashboard/Management/Files.jsx
+++ b/src/components/Dashboard/Management/Files.jsx
@@ -5,8 +5,10 @@ import ReloadIcon from '../../Icons/ReloadIcon'
import useColumnVisibility from '../hooks/useColumnVisibility'
import ObjectTableViewButton from '../common/ObjectTableViewButton'
import FilterSidebarButton from '../common/FilterSidebarButton'
+import SortSidebarButton from '../common/SortSidebarButton'
import useViewMode from '../hooks/useViewMode'
import useFilterSidebarVisibility from '../hooks/useFilterSidebarVisibility'
+import useSortSidebarVisibility from '../hooks/useSortSidebarVisibility'
import ColumnViewButton from '../common/ColumnViewButton'
import ExportListButton from '../common/ExportListButton'
@@ -20,6 +22,9 @@ const Files = () => {
const [showFilterSidebar, setShowFilterSidebar] =
useFilterSidebarVisibility('Files')
+ const [showSortSidebar, setShowSortSidebar] =
+ useSortSidebarVisibility('Files')
+
const actionItems = {
items: [
{
@@ -52,6 +57,10 @@ const Files = () => {
+ setShowSortSidebar(!showSortSidebar)}
+ />
setShowFilterSidebar(!showFilterSidebar)}
@@ -68,6 +77,7 @@ const Files = () => {
type='file'
cards={viewMode === 'cards'}
showFilterSidebar={showFilterSidebar}
+ showSortSidebar={showSortSidebar}
expandHeight={true}
saveFilterInSession={true}
saveFilterInUrl={true}
diff --git a/src/components/Dashboard/Management/Hosts.jsx b/src/components/Dashboard/Management/Hosts.jsx
index a4d1804..2416a36 100644
--- a/src/components/Dashboard/Management/Hosts.jsx
+++ b/src/components/Dashboard/Management/Hosts.jsx
@@ -14,7 +14,9 @@ import ReloadIcon from '../../Icons/ReloadIcon'
import useViewMode from '../hooks/useViewMode'
import ObjectTableViewButton from '../common/ObjectTableViewButton'
import FilterSidebarButton from '../common/FilterSidebarButton'
+import SortSidebarButton from '../common/SortSidebarButton'
import useFilterSidebarVisibility from '../hooks/useFilterSidebarVisibility'
+import useSortSidebarVisibility from '../hooks/useSortSidebarVisibility'
const Hosts = () => {
const [newHostOpen, setNewHostOpen] = useState(false)
@@ -28,6 +30,9 @@ const Hosts = () => {
const [showFilterSidebar, setShowFilterSidebar] =
useFilterSidebarVisibility('Hosts')
+ const [showSortSidebar, setShowSortSidebar] =
+ useSortSidebarVisibility('Hosts')
+
const actionItems = {
items: [
{
@@ -68,6 +73,10 @@ const Hosts = () => {
+ setShowSortSidebar(!showSortSidebar)}
+ />
setShowFilterSidebar(!showFilterSidebar)}
@@ -85,6 +94,7 @@ const Hosts = () => {
cards={viewMode === 'cards'}
visibleColumns={columnVisibility}
showFilterSidebar={showFilterSidebar}
+ showSortSidebar={showSortSidebar}
expandHeight={true}
saveFilterInSession={true}
saveFilterInUrl={true}
diff --git a/src/components/Dashboard/Management/Materials.jsx b/src/components/Dashboard/Management/Materials.jsx
index d3fd478..e9c93e4 100644
--- a/src/components/Dashboard/Management/Materials.jsx
+++ b/src/components/Dashboard/Management/Materials.jsx
@@ -10,8 +10,10 @@ import PlusIcon from '../../Icons/PlusIcon'
import ReloadIcon from '../../Icons/ReloadIcon'
import ObjectTableViewButton from '../common/ObjectTableViewButton'
import FilterSidebarButton from '../common/FilterSidebarButton'
+import SortSidebarButton from '../common/SortSidebarButton'
import useViewMode from '../hooks/useViewMode'
import useFilterSidebarVisibility from '../hooks/useFilterSidebarVisibility'
+import useSortSidebarVisibility from '../hooks/useSortSidebarVisibility'
import ExportListButton from '../common/ExportListButton'
const Materials = () => {
@@ -26,6 +28,9 @@ const Materials = () => {
const [showFilterSidebar, setShowFilterSidebar] =
useFilterSidebarVisibility('Materials')
+ const [showSortSidebar, setShowSortSidebar] =
+ useSortSidebarVisibility('Materials')
+
const actionItems = {
items: [
{
@@ -66,6 +71,10 @@ const Materials = () => {
+ setShowSortSidebar(!showSortSidebar)}
+ />
setShowFilterSidebar(!showFilterSidebar)}
@@ -83,6 +92,7 @@ const Materials = () => {
cards={viewMode === 'cards'}
visibleColumns={columnVisibility}
showFilterSidebar={showFilterSidebar}
+ showSortSidebar={showSortSidebar}
expandHeight={true}
saveFilterInSession={true}
saveFilterInUrl={true}
diff --git a/src/components/Dashboard/Management/NoteTypes.jsx b/src/components/Dashboard/Management/NoteTypes.jsx
index 10c0307..184e997 100644
--- a/src/components/Dashboard/Management/NoteTypes.jsx
+++ b/src/components/Dashboard/Management/NoteTypes.jsx
@@ -7,8 +7,10 @@ import ReloadIcon from '../../Icons/ReloadIcon'
import useColumnVisibility from '../hooks/useColumnVisibility'
import ObjectTableViewButton from '../common/ObjectTableViewButton'
import FilterSidebarButton from '../common/FilterSidebarButton'
+import SortSidebarButton from '../common/SortSidebarButton'
import useViewMode from '../hooks/useViewMode'
import useFilterSidebarVisibility from '../hooks/useFilterSidebarVisibility'
+import useSortSidebarVisibility from '../hooks/useSortSidebarVisibility'
import ColumnViewButton from '../common/ColumnViewButton'
import ExportListButton from '../common/ExportListButton'
@@ -24,6 +26,9 @@ const NoteTypes = () => {
const [showFilterSidebar, setShowFilterSidebar] =
useFilterSidebarVisibility('NoteTypes')
+ const [showSortSidebar, setShowSortSidebar] =
+ useSortSidebarVisibility('NoteTypes')
+
const actionItems = {
items: [
{
@@ -64,6 +69,10 @@ const NoteTypes = () => {
+ setShowSortSidebar(!showSortSidebar)}
+ />
setShowFilterSidebar(!showFilterSidebar)}
@@ -80,6 +89,7 @@ const NoteTypes = () => {
type='noteType'
cards={viewMode === 'cards'}
showFilterSidebar={showFilterSidebar}
+ showSortSidebar={showSortSidebar}
expandHeight={true}
saveFilterInSession={true}
saveFilterInUrl={true}
diff --git a/src/components/Dashboard/Management/PartSkus.jsx b/src/components/Dashboard/Management/PartSkus.jsx
index 2d0e371..236313b 100644
--- a/src/components/Dashboard/Management/PartSkus.jsx
+++ b/src/components/Dashboard/Management/PartSkus.jsx
@@ -9,8 +9,10 @@ import useColumnVisibility from '../hooks/useColumnVisibility'
import ObjectTable from '../common/ObjectTable'
import ObjectTableViewButton from '../common/ObjectTableViewButton'
import FilterSidebarButton from '../common/FilterSidebarButton'
+import SortSidebarButton from '../common/SortSidebarButton'
import useViewMode from '../hooks/useViewMode'
import useFilterSidebarVisibility from '../hooks/useFilterSidebarVisibility'
+import useSortSidebarVisibility from '../hooks/useSortSidebarVisibility'
import ColumnViewButton from '../common/ColumnViewButton'
import ExportListButton from '../common/ExportListButton'
@@ -26,6 +28,9 @@ const PartSkus = () => {
const [showFilterSidebar, setShowFilterSidebar] =
useFilterSidebarVisibility('PartSkus')
+ const [showSortSidebar, setShowSortSidebar] =
+ useSortSidebarVisibility('PartSkus')
+
const actionItems = {
items: [
{
@@ -66,6 +71,10 @@ const PartSkus = () => {
+ setShowSortSidebar(!showSortSidebar)}
+ />
setShowFilterSidebar(!showFilterSidebar)}
@@ -83,6 +92,7 @@ const PartSkus = () => {
type='partSku'
cards={viewMode === 'cards'}
showFilterSidebar={showFilterSidebar}
+ showSortSidebar={showSortSidebar}
expandHeight={true}
saveFilterInSession={true}
saveFilterInUrl={true}
diff --git a/src/components/Dashboard/Management/Parts.jsx b/src/components/Dashboard/Management/Parts.jsx
index 72791bc..7d4bb03 100644
--- a/src/components/Dashboard/Management/Parts.jsx
+++ b/src/components/Dashboard/Management/Parts.jsx
@@ -14,7 +14,9 @@ import useColumnVisibility from '../hooks/useColumnVisibility'
import useViewMode from '../hooks/useViewMode'
import ObjectTableViewButton from '../common/ObjectTableViewButton'
import FilterSidebarButton from '../common/FilterSidebarButton'
+import SortSidebarButton from '../common/SortSidebarButton'
import useFilterSidebarVisibility from '../hooks/useFilterSidebarVisibility'
+import useSortSidebarVisibility from '../hooks/useSortSidebarVisibility'
import ColumnViewButton from '../common/ColumnViewButton'
import ExportListButton from '../common/ExportListButton'
@@ -28,6 +30,9 @@ const Parts = (filter) => {
const [showFilterSidebar, setShowFilterSidebar] =
useFilterSidebarVisibility('Parts')
+ const [showSortSidebar, setShowSortSidebar] =
+ useSortSidebarVisibility('Parts')
+
const actionItems = {
items: [
{
@@ -68,6 +73,10 @@ const Parts = (filter) => {
+ setShowSortSidebar(!showSortSidebar)}
+ />
setShowFilterSidebar(!showFilterSidebar)}
@@ -85,6 +94,7 @@ const Parts = (filter) => {
cards={viewMode === 'cards'}
filter={filter}
showFilterSidebar={showFilterSidebar}
+ showSortSidebar={showSortSidebar}
expandHeight={true}
saveFilterInSession={true}
saveFilterInUrl={true}
diff --git a/src/components/Dashboard/Management/ProductCategories.jsx b/src/components/Dashboard/Management/ProductCategories.jsx
index 89d23c4..da952c1 100644
--- a/src/components/Dashboard/Management/ProductCategories.jsx
+++ b/src/components/Dashboard/Management/ProductCategories.jsx
@@ -10,8 +10,10 @@ import PlusIcon from '../../Icons/PlusIcon'
import ReloadIcon from '../../Icons/ReloadIcon'
import ObjectTableViewButton from '../common/ObjectTableViewButton'
import FilterSidebarButton from '../common/FilterSidebarButton'
+import SortSidebarButton from '../common/SortSidebarButton'
import useViewMode from '../hooks/useViewMode'
import useFilterSidebarVisibility from '../hooks/useFilterSidebarVisibility'
+import useSortSidebarVisibility from '../hooks/useSortSidebarVisibility'
import ExportListButton from '../common/ExportListButton'
const ProductCategories = () => {
@@ -26,6 +28,9 @@ const ProductCategories = () => {
const [showFilterSidebar, setShowFilterSidebar] =
useFilterSidebarVisibility('ProductCategories')
+ const [showSortSidebar, setShowSortSidebar] =
+ useSortSidebarVisibility('ProductCategories')
+
const actionItems = {
items: [
{
@@ -66,6 +71,10 @@ const ProductCategories = () => {
+ setShowSortSidebar(!showSortSidebar)}
+ />
setShowFilterSidebar(!showFilterSidebar)}
@@ -83,6 +92,7 @@ const ProductCategories = () => {
cards={viewMode === 'cards'}
visibleColumns={columnVisibility}
showFilterSidebar={showFilterSidebar}
+ showSortSidebar={showSortSidebar}
expandHeight={true}
saveFilterInSession={true}
saveFilterInUrl={true}
diff --git a/src/components/Dashboard/Management/ProductSkus.jsx b/src/components/Dashboard/Management/ProductSkus.jsx
index d8cb56e..d316f76 100644
--- a/src/components/Dashboard/Management/ProductSkus.jsx
+++ b/src/components/Dashboard/Management/ProductSkus.jsx
@@ -9,8 +9,10 @@ import useColumnVisibility from '../hooks/useColumnVisibility'
import ObjectTable from '../common/ObjectTable'
import ObjectTableViewButton from '../common/ObjectTableViewButton'
import FilterSidebarButton from '../common/FilterSidebarButton'
+import SortSidebarButton from '../common/SortSidebarButton'
import useViewMode from '../hooks/useViewMode'
import useFilterSidebarVisibility from '../hooks/useFilterSidebarVisibility'
+import useSortSidebarVisibility from '../hooks/useSortSidebarVisibility'
import ColumnViewButton from '../common/ColumnViewButton'
import ExportListButton from '../common/ExportListButton'
@@ -27,6 +29,9 @@ const ProductSkus = () => {
const [showFilterSidebar, setShowFilterSidebar] =
useFilterSidebarVisibility('ProductSkus')
+ const [showSortSidebar, setShowSortSidebar] =
+ useSortSidebarVisibility('ProductSkus')
+
const actionItems = {
items: [
{
@@ -67,6 +72,10 @@ const ProductSkus = () => {
+ setShowSortSidebar(!showSortSidebar)}
+ />
setShowFilterSidebar(!showFilterSidebar)}
@@ -84,6 +93,7 @@ const ProductSkus = () => {
type='productSku'
cards={viewMode === 'cards'}
showFilterSidebar={showFilterSidebar}
+ showSortSidebar={showSortSidebar}
expandHeight={true}
saveFilterInSession={true}
saveFilterInUrl={true}
diff --git a/src/components/Dashboard/Management/Products.jsx b/src/components/Dashboard/Management/Products.jsx
index be5eae6..b0c4d24 100644
--- a/src/components/Dashboard/Management/Products.jsx
+++ b/src/components/Dashboard/Management/Products.jsx
@@ -27,8 +27,10 @@ import CheckIcon from '../../Icons/CheckIcon'
import useColumnVisibility from '../hooks/useColumnVisibility'
import ObjectTableViewButton from '../common/ObjectTableViewButton'
import FilterSidebarButton from '../common/FilterSidebarButton'
+import SortSidebarButton from '../common/SortSidebarButton'
import useViewMode from '../hooks/useViewMode'
import useFilterSidebarVisibility from '../hooks/useFilterSidebarVisibility'
+import useSortSidebarVisibility from '../hooks/useSortSidebarVisibility'
import ExportListButton from '../common/ExportListButton'
const Products = () => {
@@ -239,6 +241,9 @@ const Products = () => {
const [showFilterSidebar, setShowFilterSidebar] =
useFilterSidebarVisibility('Products')
+ const [showSortSidebar, setShowSortSidebar] =
+ useSortSidebarVisibility('Products')
+
const actionItems = {
items: [
{
@@ -340,6 +345,10 @@ const Products = () => {
+ setShowSortSidebar(!showSortSidebar)}
+ />
setShowFilterSidebar(!showFilterSidebar)}
@@ -355,6 +364,7 @@ const Products = () => {
type={'product'}
cards={viewMode === 'cards'}
showFilterSidebar={showFilterSidebar}
+ showSortSidebar={showSortSidebar}
expandHeight={true}
saveFilterInSession={true}
saveFilterInUrl={true}
diff --git a/src/components/Dashboard/Management/TaxRates.jsx b/src/components/Dashboard/Management/TaxRates.jsx
index 304c4a5..4ad0a88 100644
--- a/src/components/Dashboard/Management/TaxRates.jsx
+++ b/src/components/Dashboard/Management/TaxRates.jsx
@@ -7,8 +7,10 @@ import ReloadIcon from '../../Icons/ReloadIcon'
import useColumnVisibility from '../hooks/useColumnVisibility'
import ObjectTableViewButton from '../common/ObjectTableViewButton'
import FilterSidebarButton from '../common/FilterSidebarButton'
+import SortSidebarButton from '../common/SortSidebarButton'
import useViewMode from '../hooks/useViewMode'
import useFilterSidebarVisibility from '../hooks/useFilterSidebarVisibility'
+import useSortSidebarVisibility from '../hooks/useSortSidebarVisibility'
import ColumnViewButton from '../common/ColumnViewButton'
import ExportListButton from '../common/ExportListButton'
@@ -23,6 +25,9 @@ const TaxRates = () => {
const [showFilterSidebar, setShowFilterSidebar] =
useFilterSidebarVisibility('TaxRates')
+ const [showSortSidebar, setShowSortSidebar] =
+ useSortSidebarVisibility('TaxRates')
+
const actionItems = {
items: [
{
@@ -63,6 +68,10 @@ const TaxRates = () => {
+ setShowSortSidebar(!showSortSidebar)}
+ />
setShowFilterSidebar(!showFilterSidebar)}
@@ -79,6 +88,7 @@ const TaxRates = () => {
type='taxRate'
cards={viewMode === 'cards'}
showFilterSidebar={showFilterSidebar}
+ showSortSidebar={showSortSidebar}
expandHeight={true}
saveFilterInSession={true}
saveFilterInUrl={true}
diff --git a/src/components/Dashboard/Management/Users.jsx b/src/components/Dashboard/Management/Users.jsx
index 6b7f775..803a6bf 100644
--- a/src/components/Dashboard/Management/Users.jsx
+++ b/src/components/Dashboard/Management/Users.jsx
@@ -5,8 +5,10 @@ import ReloadIcon from '../../Icons/ReloadIcon'
import useColumnVisibility from '../hooks/useColumnVisibility'
import ObjectTableViewButton from '../common/ObjectTableViewButton'
import FilterSidebarButton from '../common/FilterSidebarButton'
+import SortSidebarButton from '../common/SortSidebarButton'
import useViewMode from '../hooks/useViewMode'
import useFilterSidebarVisibility from '../hooks/useFilterSidebarVisibility'
+import useSortSidebarVisibility from '../hooks/useSortSidebarVisibility'
import ColumnViewButton from '../common/ColumnViewButton'
import ExportListButton from '../common/ExportListButton'
@@ -20,6 +22,9 @@ const Users = () => {
const [showFilterSidebar, setShowFilterSidebar] =
useFilterSidebarVisibility('Users')
+ const [showSortSidebar, setShowSortSidebar] =
+ useSortSidebarVisibility('Users')
+
const actionItems = {
items: [
{
@@ -51,6 +56,10 @@ const Users = () => {
+ setShowSortSidebar(!showSortSidebar)}
+ />
setShowFilterSidebar(!showFilterSidebar)}
@@ -67,6 +76,7 @@ const Users = () => {
visibleColumns={columnVisibility}
cards={viewMode === 'cards'}
showFilterSidebar={showFilterSidebar}
+ showSortSidebar={showSortSidebar}
expandHeight={true}
saveFilterInSession={true}
saveFilterInUrl={true}
diff --git a/src/components/Dashboard/Management/Vendors.jsx b/src/components/Dashboard/Management/Vendors.jsx
index b2a550b..7378927 100644
--- a/src/components/Dashboard/Management/Vendors.jsx
+++ b/src/components/Dashboard/Management/Vendors.jsx
@@ -7,8 +7,10 @@ import ReloadIcon from '../../Icons/ReloadIcon'
import useColumnVisibility from '../hooks/useColumnVisibility'
import ObjectTableViewButton from '../common/ObjectTableViewButton'
import FilterSidebarButton from '../common/FilterSidebarButton'
+import SortSidebarButton from '../common/SortSidebarButton'
import useViewMode from '../hooks/useViewMode'
import useFilterSidebarVisibility from '../hooks/useFilterSidebarVisibility'
+import useSortSidebarVisibility from '../hooks/useSortSidebarVisibility'
import ColumnViewButton from '../common/ColumnViewButton'
import ExportListButton from '../common/ExportListButton'
@@ -23,6 +25,9 @@ const Vendors = () => {
const [showFilterSidebar, setShowFilterSidebar] =
useFilterSidebarVisibility('Vendors')
+ const [showSortSidebar, setShowSortSidebar] =
+ useSortSidebarVisibility('Vendors')
+
const actionItems = {
items: [
{
@@ -63,6 +68,10 @@ const Vendors = () => {
+ setShowSortSidebar(!showSortSidebar)}
+ />
setShowFilterSidebar(!showFilterSidebar)}
@@ -79,6 +88,7 @@ const Vendors = () => {
type='vendor'
cards={viewMode === 'cards'}
showFilterSidebar={showFilterSidebar}
+ showSortSidebar={showSortSidebar}
expandHeight={true}
saveFilterInSession={true}
saveFilterInUrl={true}
diff --git a/src/components/Dashboard/Production/FilamentProfiles.jsx b/src/components/Dashboard/Production/FilamentProfiles.jsx
index ea73617..2b93e04 100644
--- a/src/components/Dashboard/Production/FilamentProfiles.jsx
+++ b/src/components/Dashboard/Production/FilamentProfiles.jsx
@@ -4,12 +4,14 @@ import NewFilamentProfile from './FilamentProfiles/NewFilamentProfile'
import ColumnViewButton from '../common/ColumnViewButton'
import ExportListButton from '../common/ExportListButton'
import FilterSidebarButton from '../common/FilterSidebarButton'
+import SortSidebarButton from '../common/SortSidebarButton'
import ObjectTable from '../common/ObjectTable'
import ObjectTableViewButton from '../common/ObjectTableViewButton'
import PlusIcon from '../../Icons/PlusIcon'
import ReloadIcon from '../../Icons/ReloadIcon'
import useColumnVisibility from '../hooks/useColumnVisibility'
import useFilterSidebarVisibility from '../hooks/useFilterSidebarVisibility'
+import useSortSidebarVisibility from '../hooks/useSortSidebarVisibility'
import useViewMode from '../hooks/useViewMode'
const FilamentProfiles = () => {
@@ -21,6 +23,9 @@ const FilamentProfiles = () => {
const [showFilterSidebar, setShowFilterSidebar] =
useFilterSidebarVisibility('FilamentProfiles')
+ const [showSortSidebar, setShowSortSidebar] =
+ useSortSidebarVisibility('FilamentProfiles')
+
const actionItems = {
items: [
{
@@ -60,6 +65,10 @@ const FilamentProfiles = () => {
+ setShowSortSidebar(!showSortSidebar)}
+ />
setShowFilterSidebar(!showFilterSidebar)}
@@ -77,6 +86,7 @@ const FilamentProfiles = () => {
cards={viewMode === 'cards'}
visibleColumns={columnVisibility}
showFilterSidebar={showFilterSidebar}
+ showSortSidebar={showSortSidebar}
expandHeight={true}
saveFilterInSession={true}
saveFilterInUrl={true}
diff --git a/src/components/Dashboard/Production/GCodeFiles.jsx b/src/components/Dashboard/Production/GCodeFiles.jsx
index ac03ed3..5549bb4 100644
--- a/src/components/Dashboard/Production/GCodeFiles.jsx
+++ b/src/components/Dashboard/Production/GCodeFiles.jsx
@@ -9,8 +9,10 @@ import ReloadIcon from '../../Icons/ReloadIcon'
import ObjectTable from '../common/ObjectTable'
import ObjectTableViewButton from '../common/ObjectTableViewButton'
import FilterSidebarButton from '../common/FilterSidebarButton'
+import SortSidebarButton from '../common/SortSidebarButton'
import useViewMode from '../hooks/useViewMode'
import useFilterSidebarVisibility from '../hooks/useFilterSidebarVisibility'
+import useSortSidebarVisibility from '../hooks/useSortSidebarVisibility'
import ColumnViewButton from '../common/ColumnViewButton'
import ExportListButton from '../common/ExportListButton'
@@ -26,6 +28,9 @@ const GCodeFiles = () => {
const [showFilterSidebar, setShowFilterSidebar] =
useFilterSidebarVisibility('GCodeFiles')
+ const [showSortSidebar, setShowSortSidebar] =
+ useSortSidebarVisibility('GCodeFiles')
+
const actionItems = {
items: [
{
@@ -66,6 +71,10 @@ const GCodeFiles = () => {
+ setShowSortSidebar(!showSortSidebar)}
+ />
setShowFilterSidebar(!showFilterSidebar)}
@@ -82,6 +91,7 @@ const GCodeFiles = () => {
cards={viewMode === 'cards'}
visibleColumns={columnVisibility}
showFilterSidebar={showFilterSidebar}
+ showSortSidebar={showSortSidebar}
expandHeight={true}
saveFilterInSession={true}
saveFilterInUrl={true}
diff --git a/src/components/Dashboard/Production/Jobs.jsx b/src/components/Dashboard/Production/Jobs.jsx
index 85a3e74..cd3d98d 100644
--- a/src/components/Dashboard/Production/Jobs.jsx
+++ b/src/components/Dashboard/Production/Jobs.jsx
@@ -10,8 +10,10 @@ import ObjectTable from '../common/ObjectTable.jsx'
import useViewMode from '../hooks/useViewMode.jsx'
import ObjectTableViewButton from '../common/ObjectTableViewButton'
import FilterSidebarButton from '../common/FilterSidebarButton'
+import SortSidebarButton from '../common/SortSidebarButton'
import ColumnViewButton from '../common/ColumnViewButton.jsx'
import useFilterSidebarVisibility from '../hooks/useFilterSidebarVisibility.jsx'
+import useSortSidebarVisibility from '../hooks/useSortSidebarVisibility'
import ExportListButton from '../common/ExportListButton.jsx'
const Jobs = () => {
@@ -24,6 +26,9 @@ const Jobs = () => {
const [showFilterSidebar, setShowFilterSidebar] =
useFilterSidebarVisibility('Jobs')
+ const [showSortSidebar, setShowSortSidebar] =
+ useSortSidebarVisibility('Jobs')
+
const actionItems = {
items: [
{
@@ -69,6 +74,10 @@ const Jobs = () => {
+ setShowSortSidebar(!showSortSidebar)}
+ />
setShowFilterSidebar(!showFilterSidebar)}
@@ -86,6 +95,7 @@ const Jobs = () => {
visibleColumns={columnVisibility}
cards={viewMode === 'cards'}
showFilterSidebar={showFilterSidebar}
+ showSortSidebar={showSortSidebar}
expandHeight={true}
saveFilterInSession={true}
saveFilterInUrl={true}
diff --git a/src/components/Dashboard/Production/PrinterProfiles.jsx b/src/components/Dashboard/Production/PrinterProfiles.jsx
index 8d34d26..79fbde6 100644
--- a/src/components/Dashboard/Production/PrinterProfiles.jsx
+++ b/src/components/Dashboard/Production/PrinterProfiles.jsx
@@ -4,12 +4,14 @@ import NewPrinterProfile from './PrinterProfiles/NewPrinterProfile'
import ColumnViewButton from '../common/ColumnViewButton'
import ExportListButton from '../common/ExportListButton'
import FilterSidebarButton from '../common/FilterSidebarButton'
+import SortSidebarButton from '../common/SortSidebarButton'
import ObjectTable from '../common/ObjectTable'
import ObjectTableViewButton from '../common/ObjectTableViewButton'
import PlusIcon from '../../Icons/PlusIcon'
import ReloadIcon from '../../Icons/ReloadIcon'
import useColumnVisibility from '../hooks/useColumnVisibility'
import useFilterSidebarVisibility from '../hooks/useFilterSidebarVisibility'
+import useSortSidebarVisibility from '../hooks/useSortSidebarVisibility'
import useViewMode from '../hooks/useViewMode'
const PrinterProfiles = () => {
const [newProfileOpen, setNewProfileOpen] = useState(false)
@@ -20,6 +22,9 @@ const PrinterProfiles = () => {
const [showFilterSidebar, setShowFilterSidebar] =
useFilterSidebarVisibility('PrinterProfiles')
+ const [showSortSidebar, setShowSortSidebar] =
+ useSortSidebarVisibility('PrinterProfiles')
+
const actionItems = {
items: [
{
@@ -59,6 +64,10 @@ const PrinterProfiles = () => {
+ setShowSortSidebar(!showSortSidebar)}
+ />
setShowFilterSidebar(!showFilterSidebar)}
@@ -76,6 +85,7 @@ const PrinterProfiles = () => {
cards={viewMode === 'cards'}
visibleColumns={columnVisibility}
showFilterSidebar={showFilterSidebar}
+ showSortSidebar={showSortSidebar}
expandHeight={true}
saveFilterInSession={true}
saveFilterInUrl={true}
diff --git a/src/components/Dashboard/Production/Printers.jsx b/src/components/Dashboard/Production/Printers.jsx
index 9d3d1e5..815d5b3 100644
--- a/src/components/Dashboard/Production/Printers.jsx
+++ b/src/components/Dashboard/Production/Printers.jsx
@@ -11,9 +11,11 @@ import ExportListButton from '../common/ExportListButton'
import ObjectTableViewButton from '../common/ObjectTableViewButton'
import FilterSidebarButton from '../common/FilterSidebarButton'
+import SortSidebarButton from '../common/SortSidebarButton'
import useViewMode from '../hooks/useViewMode'
import useColumnVisibility from '../hooks/useColumnVisibility'
import useFilterSidebarVisibility from '../hooks/useFilterSidebarVisibility'
+import useSortSidebarVisibility from '../hooks/useSortSidebarVisibility'
const Printers = () => {
const [newPrinterOpen, setNewPrinterOpen] = useState(false)
@@ -29,6 +31,9 @@ const Printers = () => {
const [showFilterSidebar, setShowFilterSidebar] =
useFilterSidebarVisibility('Printers')
+ const [showSortSidebar, setShowSortSidebar] =
+ useSortSidebarVisibility('Printers')
+
const actionItems = {
items: [
{
@@ -69,6 +74,10 @@ const Printers = () => {
+ setShowSortSidebar(!showSortSidebar)}
+ />
setShowFilterSidebar(!showFilterSidebar)}
@@ -84,6 +93,7 @@ const Printers = () => {
ref={tableRef}
type='printer'
showFilterSidebar={showFilterSidebar}
+ showSortSidebar={showSortSidebar}
cards={viewMode === 'cards'}
visibleColumns={columnVisibility}
expandHeight={true}
diff --git a/src/components/Dashboard/Production/SubJobs.jsx b/src/components/Dashboard/Production/SubJobs.jsx
index 6851489..712eb4c 100644
--- a/src/components/Dashboard/Production/SubJobs.jsx
+++ b/src/components/Dashboard/Production/SubJobs.jsx
@@ -8,8 +8,10 @@ import ObjectTable from '../common/ObjectTable.jsx'
import useViewMode from '../hooks/useViewMode.jsx'
import ObjectTableViewButton from '../common/ObjectTableViewButton'
import FilterSidebarButton from '../common/FilterSidebarButton'
+import SortSidebarButton from '../common/SortSidebarButton'
import ColumnViewButton from '../common/ColumnViewButton.jsx'
import useFilterSidebarVisibility from '../hooks/useFilterSidebarVisibility.jsx'
+import useSortSidebarVisibility from '../hooks/useSortSidebarVisibility'
import ExportListButton from '../common/ExportListButton.jsx'
const SubJobs = () => {
@@ -21,6 +23,9 @@ const SubJobs = () => {
const [showFilterSidebar, setShowFilterSidebar] =
useFilterSidebarVisibility('SubJobs')
+ const [showSortSidebar, setShowSortSidebar] =
+ useSortSidebarVisibility('SubJobs')
+
const actionItems = {
items: [
{
@@ -54,6 +59,10 @@ const SubJobs = () => {
+ setShowSortSidebar(!showSortSidebar)}
+ />
setShowFilterSidebar(!showFilterSidebar)}
@@ -71,6 +80,7 @@ const SubJobs = () => {
visibleColumns={columnVisibility}
cards={viewMode === 'cards'}
showFilterSidebar={showFilterSidebar}
+ showSortSidebar={showSortSidebar}
expandHeight={true}
saveFilterInSession={true}
saveFilterInUrl={true}
diff --git a/src/components/Dashboard/Sales/Clients.jsx b/src/components/Dashboard/Sales/Clients.jsx
index 7531f46..bbedf0f 100644
--- a/src/components/Dashboard/Sales/Clients.jsx
+++ b/src/components/Dashboard/Sales/Clients.jsx
@@ -7,8 +7,10 @@ import ReloadIcon from '../../Icons/ReloadIcon'
import useColumnVisibility from '../hooks/useColumnVisibility'
import ObjectTableViewButton from '../common/ObjectTableViewButton'
import FilterSidebarButton from '../common/FilterSidebarButton'
+import SortSidebarButton from '../common/SortSidebarButton'
import useViewMode from '../hooks/useViewMode'
import useFilterSidebarVisibility from '../hooks/useFilterSidebarVisibility'
+import useSortSidebarVisibility from '../hooks/useSortSidebarVisibility'
import ColumnViewButton from '../common/ColumnViewButton'
import ExportListButton from '../common/ExportListButton'
@@ -23,6 +25,9 @@ const Clients = () => {
const [showFilterSidebar, setShowFilterSidebar] =
useFilterSidebarVisibility('Clients')
+ const [showSortSidebar, setShowSortSidebar] =
+ useSortSidebarVisibility('Clients')
+
const actionItems = {
items: [
{
@@ -63,6 +68,10 @@ const Clients = () => {
+ setShowSortSidebar(!showSortSidebar)}
+ />
setShowFilterSidebar(!showFilterSidebar)}
@@ -79,6 +88,7 @@ const Clients = () => {
type='client'
cards={viewMode === 'cards'}
showFilterSidebar={showFilterSidebar}
+ showSortSidebar={showSortSidebar}
expandHeight={true}
saveFilterInSession={true}
saveFilterInUrl={true}
diff --git a/src/components/Dashboard/Sales/Listings.jsx b/src/components/Dashboard/Sales/Listings.jsx
index 51d4889..817a4fd 100644
--- a/src/components/Dashboard/Sales/Listings.jsx
+++ b/src/components/Dashboard/Sales/Listings.jsx
@@ -7,8 +7,10 @@ import ReloadIcon from '../../Icons/ReloadIcon'
import useColumnVisibility from '../hooks/useColumnVisibility'
import ObjectTableViewButton from '../common/ObjectTableViewButton'
import FilterSidebarButton from '../common/FilterSidebarButton'
+import SortSidebarButton from '../common/SortSidebarButton'
import useViewMode from '../hooks/useViewMode'
import useFilterSidebarVisibility from '../hooks/useFilterSidebarVisibility'
+import useSortSidebarVisibility from '../hooks/useSortSidebarVisibility'
import ColumnViewButton from '../common/ColumnViewButton'
import ExportListButton from '../common/ExportListButton'
@@ -24,6 +26,9 @@ const Listings = () => {
const [showFilterSidebar, setShowFilterSidebar] =
useFilterSidebarVisibility('Listings')
+ const [showSortSidebar, setShowSortSidebar] =
+ useSortSidebarVisibility('Listings')
+
const actionItems = {
items: [
{
@@ -64,6 +69,10 @@ const Listings = () => {
+ setShowSortSidebar(!showSortSidebar)}
+ />
setShowFilterSidebar(!showFilterSidebar)}
@@ -80,6 +89,7 @@ const Listings = () => {
type='listing'
cards={viewMode === 'cards'}
showFilterSidebar={showFilterSidebar}
+ showSortSidebar={showSortSidebar}
expandHeight={true}
saveFilterInSession={true}
saveFilterInUrl={true}
diff --git a/src/components/Dashboard/Sales/Marketplaces.jsx b/src/components/Dashboard/Sales/Marketplaces.jsx
index 2b58e8d..409deb0 100644
--- a/src/components/Dashboard/Sales/Marketplaces.jsx
+++ b/src/components/Dashboard/Sales/Marketplaces.jsx
@@ -7,8 +7,10 @@ import ReloadIcon from '../../Icons/ReloadIcon'
import useColumnVisibility from '../hooks/useColumnVisibility'
import ObjectTableViewButton from '../common/ObjectTableViewButton'
import FilterSidebarButton from '../common/FilterSidebarButton'
+import SortSidebarButton from '../common/SortSidebarButton'
import useViewMode from '../hooks/useViewMode'
import useFilterSidebarVisibility from '../hooks/useFilterSidebarVisibility'
+import useSortSidebarVisibility from '../hooks/useSortSidebarVisibility'
import ColumnViewButton from '../common/ColumnViewButton'
import ExportListButton from '../common/ExportListButton'
@@ -24,6 +26,9 @@ const Marketplaces = () => {
const [showFilterSidebar, setShowFilterSidebar] =
useFilterSidebarVisibility('Marketplaces')
+ const [showSortSidebar, setShowSortSidebar] =
+ useSortSidebarVisibility('Marketplaces')
+
const actionItems = {
items: [
{
@@ -64,6 +69,10 @@ const Marketplaces = () => {
+ setShowSortSidebar(!showSortSidebar)}
+ />
setShowFilterSidebar(!showFilterSidebar)}
@@ -80,6 +89,7 @@ const Marketplaces = () => {
type='marketplace'
cards={viewMode === 'cards'}
showFilterSidebar={showFilterSidebar}
+ showSortSidebar={showSortSidebar}
expandHeight={true}
saveFilterInSession={true}
saveFilterInUrl={true}
diff --git a/src/components/Dashboard/Sales/SalesOrders.jsx b/src/components/Dashboard/Sales/SalesOrders.jsx
index a6a6527..1402033 100644
--- a/src/components/Dashboard/Sales/SalesOrders.jsx
+++ b/src/components/Dashboard/Sales/SalesOrders.jsx
@@ -7,8 +7,10 @@ import ReloadIcon from '../../Icons/ReloadIcon'
import useColumnVisibility from '../hooks/useColumnVisibility'
import ObjectTableViewButton from '../common/ObjectTableViewButton'
import FilterSidebarButton from '../common/FilterSidebarButton'
+import SortSidebarButton from '../common/SortSidebarButton'
import useViewMode from '../hooks/useViewMode'
import useFilterSidebarVisibility from '../hooks/useFilterSidebarVisibility'
+import useSortSidebarVisibility from '../hooks/useSortSidebarVisibility'
import ColumnViewButton from '../common/ColumnViewButton'
import ExportListButton from '../common/ExportListButton'
@@ -24,6 +26,9 @@ const SalesOrders = () => {
const [showFilterSidebar, setShowFilterSidebar] =
useFilterSidebarVisibility('SalesOrders')
+ const [showSortSidebar, setShowSortSidebar] =
+ useSortSidebarVisibility('SalesOrders')
+
const actionItems = {
items: [
{
@@ -64,6 +69,10 @@ const SalesOrders = () => {
+ setShowSortSidebar(!showSortSidebar)}
+ />
setShowFilterSidebar(!showFilterSidebar)}
@@ -80,6 +89,7 @@ const SalesOrders = () => {
type='salesOrder'
cards={viewMode === 'cards'}
showFilterSidebar={showFilterSidebar}
+ showSortSidebar={showSortSidebar}
expandHeight={true}
saveFilterInSession={true}
saveFilterInUrl={true}
diff --git a/src/components/Dashboard/common/FilterSidebar.jsx b/src/components/Dashboard/common/FilterSidebar.jsx
index 0f3a092..ec7df4a 100644
--- a/src/components/Dashboard/common/FilterSidebar.jsx
+++ b/src/components/Dashboard/common/FilterSidebar.jsx
@@ -136,7 +136,7 @@ const FilterSidebar = ({
}
return (
-
+
diff --git a/src/components/Dashboard/common/ObjectTable.jsx b/src/components/Dashboard/common/ObjectTable.jsx
index 6d3f666..a36655f 100644
--- a/src/components/Dashboard/common/ObjectTable.jsx
+++ b/src/components/Dashboard/common/ObjectTable.jsx
@@ -37,6 +37,7 @@ import {
import ObjectProperty from './ObjectProperty'
import ObjectCard from './ObjectCard'
import FilterSidebar from './FilterSidebar'
+import SortSidebar from './SortSidebar'
import XMarkIcon from '../../Icons/XMarkIcon'
import CheckIcon from '../../Icons/CheckIcon'
import { useLocation } from 'react-router-dom'
@@ -120,6 +121,7 @@ const ObjectTable = forwardRef(
size = 'middle',
onStateChange,
showFilterSidebar = false,
+ showSortSidebar = false,
expandHeight = false,
showActions = true,
saveFilterInSession = false,
@@ -156,6 +158,7 @@ const ObjectTable = forwardRef(
getPersistedFilter,
getPersistedSorter,
persistFilter,
+ persistSort,
persistTableState,
registerPageFilter
} = useTableStatePersistence({
@@ -948,9 +951,32 @@ const ObjectTable = forwardRef(
persistFilter(newSidebarFilter)
setPages([])
setLoading(true)
- loadPage(initialPage, getActiveFilterValues(newSidebarFilter))
+ loadPage(
+ initialPage,
+ getActiveFilterValues(newSidebarFilter),
+ tableSorter.field ? tableSorter : null
+ )
},
- [initialPage, loadPage, persistFilter]
+ [initialPage, loadPage, persistFilter, tableSorter]
+ )
+
+ const handleSidebarSortChange = useCallback(
+ (newSorter) => {
+ const nextSorter = newSorter?.field
+ ? { field: newSorter.field, order: newSorter.order }
+ : {}
+ setTableSorter(nextSorter)
+ tableSorterRef.current = nextSorter
+ persistSort(nextSorter)
+ setPages([])
+ setLoading(true)
+ loadPage(
+ initialPage,
+ getActiveFilterValues(sidebarFilter),
+ nextSorter.field ? nextSorter : null
+ )
+ },
+ [initialPage, loadPage, persistSort, sidebarFilter]
)
const modelProperties = getModelProperties(type)
@@ -1161,7 +1187,7 @@ const ObjectTable = forwardRef(
useLayoutEffect(() => {
if (!cards) return
measureCardColSpan()
- }, [cards, showFilterSidebar, measureCardColSpan])
+ }, [cards, showFilterSidebar, showSortSidebar, measureCardColSpan])
useEffect(() => {
return () => cardsResizeObserverRef.current?.disconnect()
@@ -1322,14 +1348,32 @@ const ObjectTable = forwardRef(
/>
)}
- {showFilterSidebar && (
+ {(showSortSidebar || showFilterSidebar) && (
-
+
+ {showSortSidebar && (
+
+ )}
+ {showFilterSidebar && (
+
+
+
+ )}
+
)}
@@ -1355,6 +1399,7 @@ ObjectTable.propTypes = {
size: PropTypes.string,
onStateChange: PropTypes.func,
showFilterSidebar: PropTypes.bool,
+ showSortSidebar: PropTypes.bool,
expandHeight: PropTypes.bool,
showActions: PropTypes.bool,
saveFilterInSession: PropTypes.bool,
diff --git a/src/components/Dashboard/common/SortSidebar.jsx b/src/components/Dashboard/common/SortSidebar.jsx
new file mode 100644
index 0000000..8d2d62f
--- /dev/null
+++ b/src/components/Dashboard/common/SortSidebar.jsx
@@ -0,0 +1,100 @@
+import { useMemo } from 'react'
+import { Card, Select, Button, Flex, Dropdown } from 'antd'
+import PropTypes from 'prop-types'
+import {
+ getModelByName,
+ getModelProperties
+} from '../../../database/ObjectModels'
+import BinIcon from '../../Icons/BinIcon'
+
+const DIRECTION_OPTIONS = [
+ { label: 'Ascending', value: 'ascend' },
+ { label: 'Descending', value: 'descend' }
+]
+
+const SortSidebar = ({
+ type,
+ sorter = {},
+ onSortChange,
+ stretchHeight = false
+}) => {
+ const model = getModelByName(type)
+ const modelProps = getModelProperties(type)
+
+ const propertyOptions = useMemo(() => {
+ if (!model.sorters) return []
+ return model.sorters
+ .map((name) => modelProps.find((p) => p.name === name))
+ .filter(Boolean)
+ .map((prop) => ({
+ label: prop.label,
+ value: prop.name
+ }))
+ }, [model.sorters, modelProps])
+
+ const menuItems = {
+ items: [
+ {
+ key: 'clearSort',
+ label: 'Clear sort',
+ danger: true,
+ icon: ,
+ onClick: () => onSortChange({})
+ }
+ ]
+ }
+
+ const changeProperty = (field) => {
+ if (!field) {
+ onSortChange({})
+ return
+ }
+ onSortChange({
+ field,
+ order: sorter.order || 'ascend'
+ })
+ }
+
+ const changeDirection = (order) => {
+ if (!sorter.field) return
+ onSortChange({ field: sorter.field, order })
+ }
+
+ return (
+
+
+
+
+
+
+
+
+
+
+
+ )
+}
+
+SortSidebar.propTypes = {
+ type: PropTypes.string.isRequired,
+ sorter: PropTypes.object,
+ onSortChange: PropTypes.func.isRequired,
+ stretchHeight: PropTypes.bool
+}
+
+export default SortSidebar
diff --git a/src/components/Dashboard/common/SortSidebarButton.jsx b/src/components/Dashboard/common/SortSidebarButton.jsx
new file mode 100644
index 0000000..4d561b5
--- /dev/null
+++ b/src/components/Dashboard/common/SortSidebarButton.jsx
@@ -0,0 +1,27 @@
+import PropTypes from 'prop-types'
+import { Button } from 'antd'
+import SortCircleFilledIcon from '../../Icons/SortCircleFilledIcon'
+import SortCircleIcon from '../../Icons/SortCircleIcon'
+
+const SortSidebarButton = ({ active, onClick, ...buttonProps }) => (
+
+ ) : (
+
+ )
+ }
+ onClick={onClick}
+ type={'default'}
+ title={active ? 'Hide sort sidebar' : 'Show sort sidebar'}
+ {...buttonProps}
+ />
+)
+
+SortSidebarButton.propTypes = {
+ active: PropTypes.bool.isRequired,
+ onClick: PropTypes.func.isRequired
+}
+
+export default SortSidebarButton
diff --git a/src/components/Dashboard/context/ApiServerContext.jsx b/src/components/Dashboard/context/ApiServerContext.jsx
index 83d457c..e0117e0 100644
--- a/src/components/Dashboard/context/ApiServerContext.jsx
+++ b/src/components/Dashboard/context/ApiServerContext.jsx
@@ -30,6 +30,7 @@ const runningSpotlightFetches = new Map()
const createEmptyUserSettings = () => ({
viewMode: {},
filterSidebarVisibility: {},
+ sortSidebarVisibility: {},
columnVisibility: {},
collapseState: {}
})
@@ -44,6 +45,9 @@ const normalizeUserSettings = (settings = {}) => ({
filterSidebarVisibility: normalizeUserSettingsCategory(
settings?.filterSidebarVisibility
),
+ sortSidebarVisibility: normalizeUserSettingsCategory(
+ settings?.sortSidebarVisibility
+ ),
columnVisibility: normalizeUserSettingsCategory(settings?.columnVisibility),
collapseState: normalizeUserSettingsCategory(settings?.collapseState)
})
diff --git a/src/components/Dashboard/hooks/useSortSidebarVisibility.jsx b/src/components/Dashboard/hooks/useSortSidebarVisibility.jsx
new file mode 100644
index 0000000..53493c0
--- /dev/null
+++ b/src/components/Dashboard/hooks/useSortSidebarVisibility.jsx
@@ -0,0 +1,23 @@
+import { useCallback, useContext } from 'react'
+import { ApiServerContext } from '../context/ApiServerContext'
+
+const useSortSidebarVisibility = (componentName, defaultValue = false) => {
+ const { userSettings, updateUserSettings } = useContext(ApiServerContext)
+ const showSortSidebar =
+ userSettings.sortSidebarVisibility[componentName] ?? defaultValue
+
+ const setShowSortSidebar = useCallback(
+ (nextValue) => {
+ const value =
+ typeof nextValue === 'function'
+ ? nextValue(showSortSidebar)
+ : nextValue
+ updateUserSettings('sortSidebarVisibility', componentName, value)
+ },
+ [componentName, showSortSidebar, updateUserSettings]
+ )
+
+ return [showSortSidebar, setShowSortSidebar]
+}
+
+export default useSortSidebarVisibility
diff --git a/src/components/Icons/SortCircleFilledIcon.jsx b/src/components/Icons/SortCircleFilledIcon.jsx
new file mode 100644
index 0000000..2b3c66a
--- /dev/null
+++ b/src/components/Icons/SortCircleFilledIcon.jsx
@@ -0,0 +1,8 @@
+import Icon from '@ant-design/icons'
+import CustomIconSvg from '../../../assets/icons/sortcirclefilledicon.svg?react'
+
+const SortCircleFilledIcon = (props) => (
+
+)
+
+export default SortCircleFilledIcon
diff --git a/src/components/Icons/SortCircleIcon.jsx b/src/components/Icons/SortCircleIcon.jsx
new file mode 100644
index 0000000..281391b
--- /dev/null
+++ b/src/components/Icons/SortCircleIcon.jsx
@@ -0,0 +1,6 @@
+import Icon from '@ant-design/icons'
+import CustomIconSvg from '../../../assets/icons/sortcircleicon.svg?react'
+
+const SortCircleIcon = (props) =>
+
+export default SortCircleIcon