mirror of
https://github.com/tiqi-group/pydase.git
synced 2025-04-21 00:40:01 +02:00
replaces js interfaces with types
This commit is contained in:
parent
0e9832e2f1
commit
0ecaeac3fb
@ -6,7 +6,7 @@ import { getIdFromFullAccessPath } from '../utils/stringUtils';
|
|||||||
import { LevelName } from './NotificationsComponent';
|
import { LevelName } from './NotificationsComponent';
|
||||||
import { WebSettingsContext } from '../WebSettings';
|
import { WebSettingsContext } from '../WebSettings';
|
||||||
|
|
||||||
interface AsyncMethodProps {
|
type AsyncMethodProps = {
|
||||||
name: string;
|
name: string;
|
||||||
parentPath: string;
|
parentPath: string;
|
||||||
parameters: Record<string, string>;
|
parameters: Record<string, string>;
|
||||||
@ -14,7 +14,7 @@ interface AsyncMethodProps {
|
|||||||
docString?: string;
|
docString?: string;
|
||||||
hideOutput?: boolean;
|
hideOutput?: boolean;
|
||||||
addNotification: (message: string, levelname?: LevelName) => void;
|
addNotification: (message: string, levelname?: LevelName) => void;
|
||||||
}
|
};
|
||||||
|
|
||||||
export const AsyncMethodComponent = React.memo((props: AsyncMethodProps) => {
|
export const AsyncMethodComponent = React.memo((props: AsyncMethodProps) => {
|
||||||
const { name, parentPath, docString, value: runningTask, addNotification } = props;
|
const { name, parentPath, docString, value: runningTask, addNotification } = props;
|
||||||
|
@ -6,7 +6,7 @@ import { DocStringComponent } from './DocStringComponent';
|
|||||||
import { getIdFromFullAccessPath } from '../utils/stringUtils';
|
import { getIdFromFullAccessPath } from '../utils/stringUtils';
|
||||||
import { LevelName } from './NotificationsComponent';
|
import { LevelName } from './NotificationsComponent';
|
||||||
|
|
||||||
interface ButtonComponentProps {
|
type ButtonComponentProps = {
|
||||||
name: string;
|
name: string;
|
||||||
parentPath?: string;
|
parentPath?: string;
|
||||||
value: boolean;
|
value: boolean;
|
||||||
@ -14,7 +14,7 @@ interface ButtonComponentProps {
|
|||||||
docString: string;
|
docString: string;
|
||||||
mapping?: [string, string]; // Enforce a tuple of two strings
|
mapping?: [string, string]; // Enforce a tuple of two strings
|
||||||
addNotification: (message: string, levelname?: LevelName) => void;
|
addNotification: (message: string, levelname?: LevelName) => void;
|
||||||
}
|
};
|
||||||
|
|
||||||
export const ButtonComponent = React.memo((props: ButtonComponentProps) => {
|
export const ButtonComponent = React.memo((props: ButtonComponentProps) => {
|
||||||
const { name, parentPath, value, readOnly, docString, addNotification } = props;
|
const { name, parentPath, value, readOnly, docString, addNotification } = props;
|
||||||
|
@ -6,7 +6,7 @@ import { DocStringComponent } from './DocStringComponent';
|
|||||||
import { getIdFromFullAccessPath } from '../utils/stringUtils';
|
import { getIdFromFullAccessPath } from '../utils/stringUtils';
|
||||||
import { LevelName } from './NotificationsComponent';
|
import { LevelName } from './NotificationsComponent';
|
||||||
|
|
||||||
interface ColouredEnumComponentProps {
|
type ColouredEnumComponentProps = {
|
||||||
name: string;
|
name: string;
|
||||||
parentPath: string;
|
parentPath: string;
|
||||||
value: string;
|
value: string;
|
||||||
@ -14,7 +14,7 @@ interface ColouredEnumComponentProps {
|
|||||||
readOnly: boolean;
|
readOnly: boolean;
|
||||||
enumDict: Record<string, string>;
|
enumDict: Record<string, string>;
|
||||||
addNotification: (message: string, levelname?: LevelName) => void;
|
addNotification: (message: string, levelname?: LevelName) => void;
|
||||||
}
|
};
|
||||||
|
|
||||||
export const ColouredEnumComponent = React.memo((props: ColouredEnumComponentProps) => {
|
export const ColouredEnumComponent = React.memo((props: ColouredEnumComponentProps) => {
|
||||||
const {
|
const {
|
||||||
|
@ -1,9 +1,9 @@
|
|||||||
import { Badge, Tooltip, OverlayTrigger } from 'react-bootstrap';
|
import { Badge, Tooltip, OverlayTrigger } from 'react-bootstrap';
|
||||||
import React from 'react';
|
import React from 'react';
|
||||||
|
|
||||||
interface DocStringProps {
|
type DocStringProps = {
|
||||||
docString?: string;
|
docString?: string;
|
||||||
}
|
};
|
||||||
|
|
||||||
export const DocStringComponent = React.memo((props: DocStringProps) => {
|
export const DocStringComponent = React.memo((props: DocStringProps) => {
|
||||||
const { docString } = props;
|
const { docString } = props;
|
||||||
|
@ -6,14 +6,14 @@ import { getIdFromFullAccessPath } from '../utils/stringUtils';
|
|||||||
import { DocStringComponent } from './DocStringComponent';
|
import { DocStringComponent } from './DocStringComponent';
|
||||||
import { LevelName } from './NotificationsComponent';
|
import { LevelName } from './NotificationsComponent';
|
||||||
|
|
||||||
interface EnumComponentProps {
|
type EnumComponentProps = {
|
||||||
name: string;
|
name: string;
|
||||||
parentPath: string;
|
parentPath: string;
|
||||||
value: string;
|
value: string;
|
||||||
docString?: string;
|
docString?: string;
|
||||||
enumDict: Record<string, string>;
|
enumDict: Record<string, string>;
|
||||||
addNotification: (message: string, levelname?: LevelName) => void;
|
addNotification: (message: string, levelname?: LevelName) => void;
|
||||||
}
|
};
|
||||||
|
|
||||||
export const EnumComponent = React.memo((props: EnumComponentProps) => {
|
export const EnumComponent = React.memo((props: EnumComponentProps) => {
|
||||||
const {
|
const {
|
||||||
|
@ -27,7 +27,7 @@ type AttributeType =
|
|||||||
| 'ColouredEnum';
|
| 'ColouredEnum';
|
||||||
|
|
||||||
type ValueType = boolean | string | number | object;
|
type ValueType = boolean | string | number | object;
|
||||||
export interface Attribute {
|
export type Attribute = {
|
||||||
type: AttributeType;
|
type: AttributeType;
|
||||||
value?: ValueType | ValueType[];
|
value?: ValueType | ValueType[];
|
||||||
readonly: boolean;
|
readonly: boolean;
|
||||||
@ -35,7 +35,7 @@ export interface Attribute {
|
|||||||
parameters?: Record<string, string>;
|
parameters?: Record<string, string>;
|
||||||
async?: boolean;
|
async?: boolean;
|
||||||
enum?: Record<string, string>;
|
enum?: Record<string, string>;
|
||||||
}
|
};
|
||||||
type GenericComponentProps = {
|
type GenericComponentProps = {
|
||||||
attribute: Attribute;
|
attribute: Attribute;
|
||||||
name: string;
|
name: string;
|
||||||
|
@ -6,7 +6,7 @@ import { ChevronDown, ChevronRight } from 'react-bootstrap-icons';
|
|||||||
import { getIdFromFullAccessPath } from '../utils/stringUtils';
|
import { getIdFromFullAccessPath } from '../utils/stringUtils';
|
||||||
import { LevelName } from './NotificationsComponent';
|
import { LevelName } from './NotificationsComponent';
|
||||||
|
|
||||||
interface ImageComponentProps {
|
type ImageComponentProps = {
|
||||||
name: string;
|
name: string;
|
||||||
parentPath: string;
|
parentPath: string;
|
||||||
value: string;
|
value: string;
|
||||||
@ -14,7 +14,7 @@ interface ImageComponentProps {
|
|||||||
docString: string;
|
docString: string;
|
||||||
format: string;
|
format: string;
|
||||||
addNotification: (message: string, levelname?: LevelName) => void;
|
addNotification: (message: string, levelname?: LevelName) => void;
|
||||||
}
|
};
|
||||||
|
|
||||||
export const ImageComponent = React.memo((props: ImageComponentProps) => {
|
export const ImageComponent = React.memo((props: ImageComponentProps) => {
|
||||||
const { name, parentPath, value, docString, format, addNotification } = props;
|
const { name, parentPath, value, docString, format, addNotification } = props;
|
||||||
|
@ -4,14 +4,14 @@ import { Attribute, GenericComponent } from './GenericComponent';
|
|||||||
import { getIdFromFullAccessPath } from '../utils/stringUtils';
|
import { getIdFromFullAccessPath } from '../utils/stringUtils';
|
||||||
import { LevelName } from './NotificationsComponent';
|
import { LevelName } from './NotificationsComponent';
|
||||||
|
|
||||||
interface ListComponentProps {
|
type ListComponentProps = {
|
||||||
name: string;
|
name: string;
|
||||||
parentPath?: string;
|
parentPath?: string;
|
||||||
value: Attribute[];
|
value: Attribute[];
|
||||||
docString: string;
|
docString: string;
|
||||||
isInstantUpdate: boolean;
|
isInstantUpdate: boolean;
|
||||||
addNotification: (message: string, levelname?: LevelName) => void;
|
addNotification: (message: string, levelname?: LevelName) => void;
|
||||||
}
|
};
|
||||||
|
|
||||||
export const ListComponent = React.memo((props: ListComponentProps) => {
|
export const ListComponent = React.memo((props: ListComponentProps) => {
|
||||||
const { name, parentPath, value, docString, isInstantUpdate, addNotification } =
|
const { name, parentPath, value, docString, isInstantUpdate, addNotification } =
|
||||||
|
@ -6,14 +6,14 @@ import { DocStringComponent } from './DocStringComponent';
|
|||||||
import { getIdFromFullAccessPath } from '../utils/stringUtils';
|
import { getIdFromFullAccessPath } from '../utils/stringUtils';
|
||||||
import { LevelName } from './NotificationsComponent';
|
import { LevelName } from './NotificationsComponent';
|
||||||
|
|
||||||
interface MethodProps {
|
type MethodProps = {
|
||||||
name: string;
|
name: string;
|
||||||
parentPath: string;
|
parentPath: string;
|
||||||
parameters: Record<string, string>;
|
parameters: Record<string, string>;
|
||||||
docString?: string;
|
docString?: string;
|
||||||
hideOutput?: boolean;
|
hideOutput?: boolean;
|
||||||
addNotification: (message: string, levelname?: LevelName) => void;
|
addNotification: (message: string, levelname?: LevelName) => void;
|
||||||
}
|
};
|
||||||
|
|
||||||
export const MethodComponent = React.memo((props: MethodProps) => {
|
export const MethodComponent = React.memo((props: MethodProps) => {
|
||||||
const { name, parentPath, docString, addNotification } = props;
|
const { name, parentPath, docString, addNotification } = props;
|
||||||
|
@ -32,7 +32,7 @@ export type FloatObject = {
|
|||||||
};
|
};
|
||||||
export type NumberObject = IntObject | FloatObject | QuantityObject;
|
export type NumberObject = IntObject | FloatObject | QuantityObject;
|
||||||
|
|
||||||
interface NumberComponentProps {
|
type NumberComponentProps = {
|
||||||
name: string;
|
name: string;
|
||||||
type: 'float' | 'int';
|
type: 'float' | 'int';
|
||||||
parentPath?: string;
|
parentPath?: string;
|
||||||
@ -43,7 +43,7 @@ interface NumberComponentProps {
|
|||||||
unit?: string;
|
unit?: string;
|
||||||
showName?: boolean;
|
showName?: boolean;
|
||||||
addNotification: (message: string, levelname?: LevelName) => void;
|
addNotification: (message: string, levelname?: LevelName) => void;
|
||||||
}
|
};
|
||||||
|
|
||||||
// TODO: highlight the digit that is being changed by setting both selectionStart and
|
// TODO: highlight the digit that is being changed by setting both selectionStart and
|
||||||
// selectionEnd
|
// selectionEnd
|
||||||
|
@ -8,7 +8,7 @@ import { NumberComponent, NumberObject } from './NumberComponent';
|
|||||||
import { getIdFromFullAccessPath } from '../utils/stringUtils';
|
import { getIdFromFullAccessPath } from '../utils/stringUtils';
|
||||||
import { LevelName } from './NotificationsComponent';
|
import { LevelName } from './NotificationsComponent';
|
||||||
|
|
||||||
interface SliderComponentProps {
|
type SliderComponentProps = {
|
||||||
name: string;
|
name: string;
|
||||||
min: NumberObject;
|
min: NumberObject;
|
||||||
max: NumberObject;
|
max: NumberObject;
|
||||||
@ -19,7 +19,7 @@ interface SliderComponentProps {
|
|||||||
stepSize: NumberObject;
|
stepSize: NumberObject;
|
||||||
isInstantUpdate: boolean;
|
isInstantUpdate: boolean;
|
||||||
addNotification: (message: string, levelname?: LevelName) => void;
|
addNotification: (message: string, levelname?: LevelName) => void;
|
||||||
}
|
};
|
||||||
|
|
||||||
export const SliderComponent = React.memo((props: SliderComponentProps) => {
|
export const SliderComponent = React.memo((props: SliderComponentProps) => {
|
||||||
const renderCount = useRef(0);
|
const renderCount = useRef(0);
|
||||||
|
@ -9,7 +9,7 @@ import { WebSettingsContext } from '../WebSettings';
|
|||||||
|
|
||||||
// TODO: add button functionality
|
// TODO: add button functionality
|
||||||
|
|
||||||
interface StringComponentProps {
|
type StringComponentProps = {
|
||||||
name: string;
|
name: string;
|
||||||
parentPath?: string;
|
parentPath?: string;
|
||||||
value: string;
|
value: string;
|
||||||
@ -17,7 +17,7 @@ interface StringComponentProps {
|
|||||||
docString: string;
|
docString: string;
|
||||||
isInstantUpdate: boolean;
|
isInstantUpdate: boolean;
|
||||||
addNotification: (message: string, levelname?: LevelName) => void;
|
addNotification: (message: string, levelname?: LevelName) => void;
|
||||||
}
|
};
|
||||||
|
|
||||||
export const StringComponent = React.memo((props: StringComponentProps) => {
|
export const StringComponent = React.memo((props: StringComponentProps) => {
|
||||||
const { name, parentPath, readOnly, docString, isInstantUpdate, addNotification } =
|
const { name, parentPath, readOnly, docString, isInstantUpdate, addNotification } =
|
||||||
|
Loading…
x
Reference in New Issue
Block a user