diff --git a/src/backend/InvenTree/part/api.py b/src/backend/InvenTree/part/api.py index 2d9be8b099..d22e6151a6 100644 --- a/src/backend/InvenTree/part/api.py +++ b/src/backend/InvenTree/part/api.py @@ -43,7 +43,6 @@ from InvenTree.mixins import ( from InvenTree.permissions import RolePermission from InvenTree.serializers import EmptySerializer from order.status_codes import PurchaseOrderStatusGroups, SalesOrderStatusGroups -from part.admin import PartCategoryResource, PartResource from stock.models import StockLocation from . import serializers as part_serializers @@ -245,7 +244,7 @@ class CategoryList(CategoryMixin, DataExportViewMixin, ListCreateAPI): # Use hierarchical ordering by default ordering = ['tree_id', 'lft', 'name'] - search_fields = ['name', 'description'] + search_fields = ['name', 'description', 'pathstring'] class CategoryDetail(CategoryMixin, CustomRetrieveUpdateDestroyAPI): diff --git a/src/backend/InvenTree/stock/api.py b/src/backend/InvenTree/stock/api.py index 00119d1486..13aea93e63 100644 --- a/src/backend/InvenTree/stock/api.py +++ b/src/backend/InvenTree/stock/api.py @@ -418,7 +418,7 @@ class StockLocationList(DataExportViewMixin, ListCreateAPI): filter_backends = SEARCH_ORDER_FILTER - search_fields = ['name', 'description', 'tags__name', 'tags__slug'] + search_fields = ['name', 'description', 'pathstring', 'tags__name', 'tags__slug'] ordering_fields = ['name', 'pathstring', 'items', 'level', 'tree_id', 'lft'] diff --git a/src/frontend/src/components/forms/fields/RelatedModelField.tsx b/src/frontend/src/components/forms/fields/RelatedModelField.tsx index 18816190dd..728a32f35e 100644 --- a/src/frontend/src/components/forms/fields/RelatedModelField.tsx +++ b/src/frontend/src/components/forms/fields/RelatedModelField.tsx @@ -236,25 +236,23 @@ export function RelatedModelField({ // Field doesn't follow Mantine theming // Define color theme to pass to field based on Mantine theme const theme = useMantineTheme(); - - const colorschema = vars.colors.primaryColors; const { colorScheme } = useMantineColorScheme(); const colors = useMemo(() => { let colors: any; if (colorScheme === 'dark') { colors = { - neutral0: colorschema[6], - neutral5: colorschema[4], - neutral10: colorschema[4], - neutral20: colorschema[4], - neutral30: colorschema[3], - neutral40: colorschema[2], - neutral50: colorschema[1], - neutral60: colorschema[0], - neutral70: colorschema[0], - neutral80: colorschema[0], - neutral90: colorschema[0], + neutral0: vars.colors.dark[6], + neutral5: vars.colors.dark[4], + neutral10: vars.colors.dark[4], + neutral20: vars.colors.dark[4], + neutral30: vars.colors.dark[3], + neutral40: vars.colors.dark[2], + neutral50: vars.colors.dark[1], + neutral60: vars.colors.dark[0], + neutral70: vars.colors.dark[0], + neutral80: vars.colors.dark[0], + neutral90: vars.colors.dark[0], primary: vars.colors.primaryColors[7], primary25: vars.colors.primaryColors[6], primary50: vars.colors.primaryColors[5], diff --git a/src/frontend/src/components/render/Instance.tsx b/src/frontend/src/components/render/Instance.tsx index 6e3203c977..97c9c80c03 100644 --- a/src/frontend/src/components/render/Instance.tsx +++ b/src/frontend/src/components/render/Instance.tsx @@ -157,7 +157,8 @@ export function RenderInlineModel({ labels, url, navigate, - showSecondary = true + showSecondary = true, + tooltip }: { primary: string; secondary?: string; @@ -168,6 +169,7 @@ export function RenderInlineModel({ labels?: string[]; url?: string; navigate?: any; + tooltip?: string; }): ReactNode { // TODO: Handle labels @@ -181,7 +183,7 @@ export function RenderInlineModel({ ); return ( - + {prefix} {image && } diff --git a/src/frontend/src/components/render/Part.tsx b/src/frontend/src/components/render/Part.tsx index 87ad95759d..24ca8ea1ad 100644 --- a/src/frontend/src/components/render/Part.tsx +++ b/src/frontend/src/components/render/Part.tsx @@ -56,13 +56,18 @@ export function RenderPartCategory( props: Readonly ): ReactNode { const { instance } = props; - const lvl = '-'.repeat(instance.level || 0); return ( } - primary={`${lvl} ${instance.name}`} + tooltip={instance.pathstring} + prefix={ + <> +
+ {instance.icon && } + + } + primary={instance.name} secondary={instance.description} url={ props.link diff --git a/src/frontend/src/components/render/Stock.tsx b/src/frontend/src/components/render/Stock.tsx index f656c10492..d42c52f58b 100644 --- a/src/frontend/src/components/render/Stock.tsx +++ b/src/frontend/src/components/render/Stock.tsx @@ -17,7 +17,13 @@ export function RenderStockLocation( return ( } + tooltip={instance.pathstring} + prefix={ + <> +
+ {instance.icon && } + + } primary={instance.name} secondary={instance.description} url={