diff --git a/frontend/src/components/AsyncMethodComponent.tsx b/frontend/src/components/AsyncMethodComponent.tsx index d55538d..145b0fc 100644 --- a/frontend/src/components/AsyncMethodComponent.tsx +++ b/frontend/src/components/AsyncMethodComponent.tsx @@ -1,9 +1,10 @@ -import React, { useEffect, useRef } from 'react'; +import React, { useContext, useEffect, useRef } from 'react'; import { runMethod } from '../socket'; import { InputGroup, Form, Button } from 'react-bootstrap'; import { DocStringComponent } from './DocStringComponent'; import { getIdFromFullAccessPath } from '../utils/stringUtils'; import { LevelName } from './NotificationsComponent'; +import { WebSettingsContext } from '../WebSettings'; interface AsyncMethodProps { name: string; @@ -19,7 +20,14 @@ export const AsyncMethodComponent = React.memo((props: AsyncMethodProps) => { const { name, parentPath, docString, value: runningTask, addNotification } = props; const renderCount = useRef(0); const formRef = useRef(null); - const id = getIdFromFullAccessPath(parentPath.concat('.' + name)); + const fullAccessPath = [parentPath, name].filter((element) => element).join('.'); + const id = getIdFromFullAccessPath(fullAccessPath); + const webSettings = useContext(WebSettingsContext); + let displayName = name; + + if (webSettings[fullAccessPath] && webSettings[fullAccessPath].displayName) { + displayName = webSettings[fullAccessPath].displayName; + } useEffect(() => { renderCount.current++; @@ -95,7 +103,7 @@ export const AsyncMethodComponent = React.memo((props: AsyncMethodProps) => {