mirror of
https://github.com/emsesp/EMS-ESP32.git
synced 2025-12-06 15:59:52 +03:00
update libs
This commit is contained in:
@@ -51,6 +51,7 @@
|
|||||||
"@typescript-eslint/restrict-plus-operands": "off",
|
"@typescript-eslint/restrict-plus-operands": "off",
|
||||||
"@typescript-eslint/no-unused-expressions": "off",
|
"@typescript-eslint/no-unused-expressions": "off",
|
||||||
"@typescript-eslint/no-implied-eval": "off",
|
"@typescript-eslint/no-implied-eval": "off",
|
||||||
|
"@typescript-eslint/no-misused-promises": "off",
|
||||||
"@typescript-eslint/ban-types": [
|
"@typescript-eslint/ban-types": [
|
||||||
"error",
|
"error",
|
||||||
{
|
{
|
||||||
|
|||||||
@@ -23,12 +23,12 @@
|
|||||||
"@emotion/styled": "^11.10.6",
|
"@emotion/styled": "^11.10.6",
|
||||||
"@msgpack/msgpack": "^3.0.0-beta2",
|
"@msgpack/msgpack": "^3.0.0-beta2",
|
||||||
"@mui/icons-material": "^5.11.16",
|
"@mui/icons-material": "^5.11.16",
|
||||||
"@mui/material": "^5.11.16",
|
"@mui/material": "^5.12.0",
|
||||||
"@remix-run/router": "^1.5.0",
|
"@remix-run/router": "^1.5.0",
|
||||||
"@table-library/react-table-library": "4.1.0",
|
"@table-library/react-table-library": "4.1.0",
|
||||||
"@types/lodash-es": "^4.17.7",
|
"@types/lodash-es": "^4.17.7",
|
||||||
"@types/node": "^18.15.11",
|
"@types/node": "^18.15.11",
|
||||||
"@types/react": "^18.0.33",
|
"@types/react": "^18.0.34",
|
||||||
"@types/react-dom": "^18.0.11",
|
"@types/react-dom": "^18.0.11",
|
||||||
"@types/react-router-dom": "^5.3.3",
|
"@types/react-router-dom": "^5.3.3",
|
||||||
"@yarnpkg/pnpify": "^4.0.0-rc.42",
|
"@yarnpkg/pnpify": "^4.0.0-rc.42",
|
||||||
@@ -46,15 +46,15 @@
|
|||||||
"react-toastify": "^9.1.2",
|
"react-toastify": "^9.1.2",
|
||||||
"sockette": "^2.0.6",
|
"sockette": "^2.0.6",
|
||||||
"typesafe-i18n": "^5.24.3",
|
"typesafe-i18n": "^5.24.3",
|
||||||
"typescript": "^5.0.3"
|
"typescript": "^5.0.4"
|
||||||
},
|
},
|
||||||
"devDependencies": {
|
"devDependencies": {
|
||||||
"@types/mime-types": "^2",
|
"@types/mime-types": "^2",
|
||||||
"@types/styled-components": "^5",
|
"@types/styled-components": "^5",
|
||||||
"@typescript-eslint/eslint-plugin": "^5.57.1",
|
"@typescript-eslint/eslint-plugin": "^5.58.0",
|
||||||
"@typescript-eslint/parser": "^5.57.1",
|
"@typescript-eslint/parser": "^5.58.0",
|
||||||
"@vitejs/plugin-react-swc": "^3.2.0",
|
"@vitejs/plugin-react-swc": "^3.3.0",
|
||||||
"eslint": "^8.37.0",
|
"eslint": "^8.38.0",
|
||||||
"eslint-config-airbnb": "^19.0.4",
|
"eslint-config-airbnb": "^19.0.4",
|
||||||
"eslint-config-airbnb-typescript": "^17.0.0",
|
"eslint-config-airbnb-typescript": "^17.0.0",
|
||||||
"eslint-config-prettier": "^8.8.0",
|
"eslint-config-prettier": "^8.8.0",
|
||||||
@@ -68,11 +68,11 @@
|
|||||||
"npm-run-all": "^4.1.5",
|
"npm-run-all": "^4.1.5",
|
||||||
"prettier": "^2.8.7",
|
"prettier": "^2.8.7",
|
||||||
"rollup-plugin-visualizer": "^5.9.0",
|
"rollup-plugin-visualizer": "^5.9.0",
|
||||||
"terser": "^5.16.8",
|
"terser": "^5.16.9",
|
||||||
"vite": "^4.2.1",
|
"vite": "^4.2.1",
|
||||||
"vite-plugin-minify": "^1.5.2",
|
"vite-plugin-minify": "^1.5.2",
|
||||||
"vite-plugin-svgr": "^2.4.0",
|
"vite-plugin-svgr": "^2.4.0",
|
||||||
"vite-tsconfig-paths": "^4.0.8"
|
"vite-tsconfig-paths": "^4.1.0"
|
||||||
},
|
},
|
||||||
"packageManager": "yarn@3.4.1"
|
"packageManager": "yarn@3.4.1"
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -60,7 +60,6 @@ const ManageUsersForm: FC = () => {
|
|||||||
border-top: 1px solid #565656;
|
border-top: 1px solid #565656;
|
||||||
border-bottom: 1px solid #565656;
|
border-bottom: 1px solid #565656;
|
||||||
}
|
}
|
||||||
|
|
||||||
&:nth-of-type(odd) .td {
|
&:nth-of-type(odd) .td {
|
||||||
background-color: #303030;
|
background-color: #303030;
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -319,8 +319,8 @@ const en: Translation = {
|
|||||||
SCHEDULE_TIMER_1: 'on startup',
|
SCHEDULE_TIMER_1: 'on startup',
|
||||||
SCHEDULE_TIMER_2: 'every minute',
|
SCHEDULE_TIMER_2: 'every minute',
|
||||||
SCHEDULE_TIMER_3: 'every hour',
|
SCHEDULE_TIMER_3: 'every hour',
|
||||||
CUSTOM_ENTITIES: 'Custom entities',
|
CUSTOM_ENTITIES: 'Custom Entities',
|
||||||
ENTITIES_HELP_1: 'Fetch custom entities from the EMS-bus'
|
ENTITIES_HELP_1: 'Fetch custom entities from the EMS bus'
|
||||||
};
|
};
|
||||||
|
|
||||||
export default en;
|
export default en;
|
||||||
|
|||||||
@@ -319,8 +319,8 @@ const fr: Translation = {
|
|||||||
SCHEDULE_TIMER_1: 'on startup', // TODO translate
|
SCHEDULE_TIMER_1: 'on startup', // TODO translate
|
||||||
SCHEDULE_TIMER_2: 'every minute', // TODO translate
|
SCHEDULE_TIMER_2: 'every minute', // TODO translate
|
||||||
SCHEDULE_TIMER_3: 'every hour', // TODO translate
|
SCHEDULE_TIMER_3: 'every hour', // TODO translate
|
||||||
CUSTOM_ENTITIES: 'Custom entities',
|
CUSTOM_ENTITIES: 'Custom Entities', // TODO translate
|
||||||
ENTITIES_HELP_1: 'Fetch custom entities from the EMS-bus'
|
ENTITIES_HELP_1: 'Fetch custom entities from the EMS bus' // TODO translate
|
||||||
};
|
};
|
||||||
|
|
||||||
export default fr;
|
export default fr;
|
||||||
|
|||||||
@@ -319,8 +319,8 @@ const nl: Translation = {
|
|||||||
SCHEDULE_TIMER_1: 'on startup', // TODO translate
|
SCHEDULE_TIMER_1: 'on startup', // TODO translate
|
||||||
SCHEDULE_TIMER_2: 'every minute', // TODO translate
|
SCHEDULE_TIMER_2: 'every minute', // TODO translate
|
||||||
SCHEDULE_TIMER_3: 'every hour', // TODO translate
|
SCHEDULE_TIMER_3: 'every hour', // TODO translate
|
||||||
CUSTOM_ENTITIES: 'Custom entities',
|
CUSTOM_ENTITIES: 'Custom Entities', // TODO translate
|
||||||
ENTITIES_HELP_1: 'Fetch custom entities from the EMS-bus'
|
ENTITIES_HELP_1: 'Fetch custom entities from the EMS bus' // TODO translate
|
||||||
};
|
};
|
||||||
|
|
||||||
export default nl;
|
export default nl;
|
||||||
|
|||||||
@@ -319,8 +319,8 @@ const no: Translation = {
|
|||||||
SCHEDULE_TIMER_1: 'ved oppstart',
|
SCHEDULE_TIMER_1: 'ved oppstart',
|
||||||
SCHEDULE_TIMER_2: 'hvert minutt',
|
SCHEDULE_TIMER_2: 'hvert minutt',
|
||||||
SCHEDULE_TIMER_3: 'hver time',
|
SCHEDULE_TIMER_3: 'hver time',
|
||||||
CUSTOM_ENTITIES: 'Custom entities',
|
CUSTOM_ENTITIES: 'Custom Entities', // TODO translate
|
||||||
ENTITIES_HELP_1: 'Fetch custom entities from the EMS-bus'
|
ENTITIES_HELP_1: 'Fetch custom entities from the EMS bus' // TODO translate
|
||||||
};
|
};
|
||||||
|
|
||||||
export default no;
|
export default no;
|
||||||
|
|||||||
@@ -319,8 +319,8 @@ const pl: BaseTranslation = {
|
|||||||
SCHEDULE_TIMER_1: 'przy starcie',
|
SCHEDULE_TIMER_1: 'przy starcie',
|
||||||
SCHEDULE_TIMER_2: 'co minutę',
|
SCHEDULE_TIMER_2: 'co minutę',
|
||||||
SCHEDULE_TIMER_3: 'co godzinę',
|
SCHEDULE_TIMER_3: 'co godzinę',
|
||||||
CUSTOM_ENTITIES: 'Custom entities',
|
CUSTOM_ENTITIES: 'Custom Entities', // TODO translate
|
||||||
ENTITIES_HELP_1: 'Fetch custom entities from the EMS-bus'
|
ENTITIES_HELP_1: 'Fetch custom entities from the EMS bus' // TODO translate
|
||||||
};
|
};
|
||||||
|
|
||||||
export default pl;
|
export default pl;
|
||||||
|
|||||||
@@ -319,8 +319,8 @@ const sv: Translation = {
|
|||||||
SCHEDULE_TIMER_1: 'on startup', // TODO translate
|
SCHEDULE_TIMER_1: 'on startup', // TODO translate
|
||||||
SCHEDULE_TIMER_2: 'every minute', // TODO translate
|
SCHEDULE_TIMER_2: 'every minute', // TODO translate
|
||||||
SCHEDULE_TIMER_3: 'every hour', // TODO translate
|
SCHEDULE_TIMER_3: 'every hour', // TODO translate
|
||||||
CUSTOM_ENTITIES: 'Custom entities',
|
CUSTOM_ENTITIES: 'Custom Entities', // TODO translate
|
||||||
ENTITIES_HELP_1: 'Fetch custom entities from the EMS-bus'
|
ENTITIES_HELP_1: 'Fetch custom entities from the EMS bus' // TODO translate
|
||||||
};
|
};
|
||||||
|
|
||||||
export default sv;
|
export default sv;
|
||||||
|
|||||||
@@ -319,8 +319,8 @@ const tr: Translation = {
|
|||||||
SCHEDULE_TIMER_1: 'on startup', // TODO translate
|
SCHEDULE_TIMER_1: 'on startup', // TODO translate
|
||||||
SCHEDULE_TIMER_2: 'every minute', // TODO translate
|
SCHEDULE_TIMER_2: 'every minute', // TODO translate
|
||||||
SCHEDULE_TIMER_3: 'every hour', // TODO translate
|
SCHEDULE_TIMER_3: 'every hour', // TODO translate
|
||||||
CUSTOM_ENTITIES: 'Custom entities',
|
CUSTOM_ENTITIES: 'Custom Entities', // TODO translate
|
||||||
ENTITIES_HELP_1: 'Fetch custom entities from the EMS-bus'
|
ENTITIES_HELP_1: 'Fetch custom entities from the EMS bus' // TODO translate
|
||||||
};
|
};
|
||||||
|
|
||||||
export default tr;
|
export default tr;
|
||||||
|
|||||||
@@ -10,7 +10,6 @@ import {
|
|||||||
DialogActions,
|
DialogActions,
|
||||||
DialogContent,
|
DialogContent,
|
||||||
DialogTitle,
|
DialogTitle,
|
||||||
TextField,
|
|
||||||
MenuItem,
|
MenuItem,
|
||||||
InputAdornment
|
InputAdornment
|
||||||
} from '@mui/material';
|
} from '@mui/material';
|
||||||
@@ -33,36 +32,62 @@ import { extractErrorMessage, updateValue } from 'utils';
|
|||||||
|
|
||||||
import { validate } from 'validators';
|
import { validate } from 'validators';
|
||||||
import { entityItemValidation } from './validators';
|
import { entityItemValidation } from './validators';
|
||||||
|
import { ValidateFieldsError } from 'async-validator';
|
||||||
|
|
||||||
import { useI18nContext } from 'i18n/i18n-react';
|
import { useI18nContext } from 'i18n/i18n-react';
|
||||||
|
|
||||||
import { ValidateFieldsError } from 'async-validator';
|
|
||||||
|
|
||||||
import * as EMSESP from './api';
|
import * as EMSESP from './api';
|
||||||
|
|
||||||
|
function makeid() {
|
||||||
|
return Math.floor(Math.random() * (Math.floor(200) - 100) + 100);
|
||||||
|
}
|
||||||
|
|
||||||
const SettingsEntities: FC = () => {
|
const SettingsEntities: FC = () => {
|
||||||
const { LL, locale } = useI18nContext();
|
const { LL } = useI18nContext();
|
||||||
|
|
||||||
const [numChanges, setNumChanges] = useState<number>(0);
|
const [numChanges, setNumChanges] = useState<number>(0);
|
||||||
const blocker = useBlocker(numChanges !== 0);
|
const blocker = useBlocker(numChanges !== 0);
|
||||||
|
|
||||||
const emptyEntity = {
|
const emptyEntity = {
|
||||||
|
id: 0,
|
||||||
|
name: '',
|
||||||
device_id: 8,
|
device_id: 8,
|
||||||
type_id: 2,
|
type_id: 0,
|
||||||
offset: 0,
|
offset: 0,
|
||||||
factor: 1,
|
factor: 1,
|
||||||
uom: 0,
|
uom: 0,
|
||||||
val_type: 2,
|
val_type: 2,
|
||||||
name: 'name',
|
deleted: false,
|
||||||
deleted: false
|
o_name: ''
|
||||||
};
|
};
|
||||||
const [entity, setEntity] = useState<EntityItem[]>([emptyEntity]);
|
|
||||||
|
const [entities, setEntities] = useState<EntityItem[]>([emptyEntity]);
|
||||||
const [entityItem, setEntityItem] = useState<EntityItem>();
|
const [entityItem, setEntityItem] = useState<EntityItem>();
|
||||||
const [errorMessage, setErrorMessage] = useState<string>();
|
const [errorMessage, setErrorMessage] = useState<string>();
|
||||||
const [creating, setCreating] = useState<boolean>(false);
|
const [creating, setCreating] = useState<boolean>(false);
|
||||||
|
|
||||||
const [fieldErrors, setFieldErrors] = useState<ValidateFieldsError>();
|
const [fieldErrors, setFieldErrors] = useState<ValidateFieldsError>();
|
||||||
|
|
||||||
|
function hasEntityChanged(ei: EntityItem) {
|
||||||
|
return (
|
||||||
|
ei.id !== ei.o_id ||
|
||||||
|
(ei?.name || '') !== (ei?.o_name || '') ||
|
||||||
|
ei.device_id !== ei.o_device_id ||
|
||||||
|
ei.type_id !== ei.o_type_id ||
|
||||||
|
ei.offset !== ei.o_offset ||
|
||||||
|
ei.uom !== ei.o_uom ||
|
||||||
|
ei.factor !== ei.o_factor ||
|
||||||
|
ei.val_type !== ei.o_val_type ||
|
||||||
|
ei.deleted !== ei.o_deleted
|
||||||
|
);
|
||||||
|
}
|
||||||
|
|
||||||
|
const getNumChanges = () => {
|
||||||
|
if (!entities) {
|
||||||
|
return 0;
|
||||||
|
}
|
||||||
|
return entities.filter((ei) => hasEntityChanged(ei)).length;
|
||||||
|
};
|
||||||
|
|
||||||
useEffect(() => {
|
useEffect(() => {
|
||||||
setNumChanges(getNumChanges());
|
setNumChanges(getNumChanges());
|
||||||
});
|
});
|
||||||
@@ -78,6 +103,9 @@ const SettingsEntities: FC = () => {
|
|||||||
}
|
}
|
||||||
`,
|
`,
|
||||||
BaseCell: `
|
BaseCell: `
|
||||||
|
&:nth-of-type(1) {
|
||||||
|
padding: 8px;
|
||||||
|
}
|
||||||
&:nth-of-type(2) {
|
&:nth-of-type(2) {
|
||||||
text-align: center;
|
text-align: center;
|
||||||
}
|
}
|
||||||
@@ -88,7 +116,7 @@ const SettingsEntities: FC = () => {
|
|||||||
text-align: center;
|
text-align: center;
|
||||||
}
|
}
|
||||||
&:nth-of-type(5) {
|
&:nth-of-type(5) {
|
||||||
text-align: right;
|
text-align: center;
|
||||||
}
|
}
|
||||||
`,
|
`,
|
||||||
HeaderRow: `
|
HeaderRow: `
|
||||||
@@ -118,23 +146,11 @@ const SettingsEntities: FC = () => {
|
|||||||
`
|
`
|
||||||
});
|
});
|
||||||
|
|
||||||
const fetchEntities = useCallback(async () => {
|
|
||||||
try {
|
|
||||||
const response = await EMSESP.readEntities();
|
|
||||||
setOriginalEntity(response.data.entity);
|
|
||||||
} catch (error) {
|
|
||||||
setErrorMessage(extractErrorMessage(error, LL.PROBLEM_LOADING()));
|
|
||||||
}
|
|
||||||
}, [LL]);
|
|
||||||
|
|
||||||
useEffect(() => {
|
|
||||||
fetchEntities();
|
|
||||||
}, [fetchEntities]);
|
|
||||||
|
|
||||||
const setOriginalEntity = (data: EntityItem[]) => {
|
const setOriginalEntity = (data: EntityItem[]) => {
|
||||||
setEntity(
|
setEntities(
|
||||||
data.map((ei) => ({
|
data.map((ei) => ({
|
||||||
...ei,
|
...ei,
|
||||||
|
o_id: ei.id,
|
||||||
o_device_id: ei.device_id,
|
o_device_id: ei.device_id,
|
||||||
o_type_id: ei.type_id,
|
o_type_id: ei.type_id,
|
||||||
o_offset: ei.offset,
|
o_offset: ei.offset,
|
||||||
@@ -147,41 +163,35 @@ const SettingsEntities: FC = () => {
|
|||||||
);
|
);
|
||||||
};
|
};
|
||||||
|
|
||||||
function hasEntityChanged(ei: EntityItem) {
|
const fetchEntities = useCallback(async () => {
|
||||||
return (
|
try {
|
||||||
ei.device_id !== ei.o_device_id ||
|
const response = await EMSESP.readEntities();
|
||||||
ei.type_id !== ei.o_type_id ||
|
setOriginalEntity(response.data.entities);
|
||||||
ei.name !== ei.o_name ||
|
} catch (error) {
|
||||||
ei.offset !== ei.o_offset ||
|
setErrorMessage(extractErrorMessage(error, LL.PROBLEM_LOADING()));
|
||||||
ei.uom !== ei.o_uom ||
|
|
||||||
ei.factor !== ei.o_factor ||
|
|
||||||
ei.val_type !== ei.o_val_type ||
|
|
||||||
ei.deleted !== ei.o_deleted
|
|
||||||
);
|
|
||||||
}
|
}
|
||||||
|
}, [LL]);
|
||||||
|
|
||||||
const getNumChanges = () => {
|
useEffect(() => {
|
||||||
if (!entity) {
|
void fetchEntities();
|
||||||
return 0;
|
}, [fetchEntities]);
|
||||||
}
|
|
||||||
return entity.filter((ei) => hasEntityChanged(ei)).length;
|
|
||||||
};
|
|
||||||
|
|
||||||
const saveEntity = async () => {
|
const saveEntities = async () => {
|
||||||
if (entity) {
|
if (entities) {
|
||||||
try {
|
try {
|
||||||
const response = await EMSESP.writeEntities({
|
const response = await EMSESP.writeEntities({
|
||||||
entity: entity
|
entities: entities
|
||||||
.filter((ei) => !ei.deleted)
|
.filter((ei) => !ei.deleted)
|
||||||
.map((condensed_ei) => {
|
.map((condensed_ei) => {
|
||||||
return {
|
return {
|
||||||
|
id: condensed_ei.id,
|
||||||
|
name: condensed_ei.name,
|
||||||
device_id: condensed_ei.device_id,
|
device_id: condensed_ei.device_id,
|
||||||
type_id: condensed_ei.type_id,
|
type_id: condensed_ei.type_id,
|
||||||
offset: condensed_ei.offset,
|
offset: condensed_ei.offset,
|
||||||
factor: condensed_ei.factor,
|
factor: condensed_ei.factor,
|
||||||
val_type: condensed_ei.val_type,
|
|
||||||
uom: condensed_ei.uom,
|
uom: condensed_ei.uom,
|
||||||
name: condensed_ei.name
|
val_type: condensed_ei.val_type
|
||||||
};
|
};
|
||||||
})
|
})
|
||||||
});
|
});
|
||||||
@@ -193,7 +203,7 @@ const SettingsEntities: FC = () => {
|
|||||||
} catch (error) {
|
} catch (error) {
|
||||||
toast.error(extractErrorMessage(error, LL.PROBLEM_UPDATING()));
|
toast.error(extractErrorMessage(error, LL.PROBLEM_UPDATING()));
|
||||||
}
|
}
|
||||||
setOriginalEntity(entity);
|
setOriginalEntity(entities);
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
|
|
||||||
@@ -205,20 +215,22 @@ const SettingsEntities: FC = () => {
|
|||||||
const addEntityItem = () => {
|
const addEntityItem = () => {
|
||||||
setCreating(true);
|
setCreating(true);
|
||||||
setEntityItem({
|
setEntityItem({
|
||||||
device_id: 8,
|
id: makeid(),
|
||||||
type_id: 2,
|
device_id: 11,
|
||||||
|
type_id: 0,
|
||||||
offset: 0,
|
offset: 0,
|
||||||
factor: 1,
|
factor: 1,
|
||||||
val_type: 2,
|
val_type: 2,
|
||||||
uom: 0,
|
uom: 0,
|
||||||
name: 'name',
|
name: '',
|
||||||
deleted: false
|
deleted: false
|
||||||
});
|
});
|
||||||
};
|
};
|
||||||
|
|
||||||
const updateEntityItem = () => {
|
const updateEntityItem = () => {
|
||||||
|
console.log('here');
|
||||||
if (entityItem) {
|
if (entityItem) {
|
||||||
setEntity([...entity.filter((ei) => creating || ei.o_name !== entityItem.o_name), entityItem]);
|
setEntities([...entities.filter((ei) => creating || ei.o_id !== entityItem.o_id), entityItem]);
|
||||||
}
|
}
|
||||||
setEntityItem(undefined);
|
setEntityItem(undefined);
|
||||||
};
|
};
|
||||||
@@ -233,24 +245,20 @@ const SettingsEntities: FC = () => {
|
|||||||
return new Intl.NumberFormat().format(value) + ' ' + DeviceValueUOM_s[uom];
|
return new Intl.NumberFormat().format(value) + ' ' + DeviceValueUOM_s[uom];
|
||||||
}
|
}
|
||||||
|
|
||||||
function showHex(value: string, digit: number) {
|
function showHex(value: number, digit: number) {
|
||||||
if (digit === 4) {
|
if (digit === 4) {
|
||||||
return '0x' + ('000' + value).slice(-4);
|
return '0x' + ('000' + value.toString(16).toUpperCase()).slice(-4);
|
||||||
}
|
}
|
||||||
return '0x' + ('0' + value).slice(-2);
|
return '0x' + ('0' + value.toString(16).toUpperCase()).slice(-2);
|
||||||
}
|
}
|
||||||
|
|
||||||
const renderEntity = () => {
|
const renderEntity = () => {
|
||||||
if (!entity) {
|
if (!entities) {
|
||||||
return <FormLoader errorMessage={errorMessage} />;
|
return <FormLoader errorMessage={errorMessage} />;
|
||||||
}
|
}
|
||||||
|
|
||||||
return (
|
return (
|
||||||
<Table
|
<Table data={{ nodes: entities.filter((ei) => !ei.deleted) }} theme={entity_theme} layout={{ custom: true }}>
|
||||||
data={{ nodes: entity.filter((ei) => !ei.deleted).sort((a, b) => a.name.localeCompare(b.time)) }}
|
|
||||||
theme={entity_theme}
|
|
||||||
layout={{ custom: true }}
|
|
||||||
>
|
|
||||||
{(tableList: any) => (
|
{(tableList: any) => (
|
||||||
<>
|
<>
|
||||||
<Header>
|
<Header>
|
||||||
@@ -259,7 +267,7 @@ const SettingsEntities: FC = () => {
|
|||||||
<HeaderCell stiff>Device ID</HeaderCell>
|
<HeaderCell stiff>Device ID</HeaderCell>
|
||||||
<HeaderCell stiff>Type ID</HeaderCell>
|
<HeaderCell stiff>Type ID</HeaderCell>
|
||||||
<HeaderCell stiff>Offset</HeaderCell>
|
<HeaderCell stiff>Offset</HeaderCell>
|
||||||
<HeaderCell stiff>{LL.VALUE()}</HeaderCell>
|
<HeaderCell stiff>{LL.VALUE(0)}</HeaderCell>
|
||||||
</HeaderRow>
|
</HeaderRow>
|
||||||
</Header>
|
</Header>
|
||||||
<Body>
|
<Body>
|
||||||
@@ -287,11 +295,16 @@ const SettingsEntities: FC = () => {
|
|||||||
|
|
||||||
const validateEntityItem = async () => {
|
const validateEntityItem = async () => {
|
||||||
if (entityItem) {
|
if (entityItem) {
|
||||||
|
console.log(1);
|
||||||
try {
|
try {
|
||||||
setFieldErrors(undefined);
|
setFieldErrors(undefined);
|
||||||
await validate(entityItemValidation(entity, entityItem), entityItem);
|
console.log(2);
|
||||||
|
await validate(entityItemValidation(entities, entityItem), entityItem);
|
||||||
|
console.log(3);
|
||||||
updateEntityItem();
|
updateEntityItem();
|
||||||
} catch (errors: any) {
|
} catch (errors: any) {
|
||||||
|
console.log(4);
|
||||||
|
console.log(errors);
|
||||||
setFieldErrors(errors);
|
setFieldErrors(errors);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -307,7 +320,7 @@ const SettingsEntities: FC = () => {
|
|||||||
return (
|
return (
|
||||||
<Dialog open={!!entityItem} onClose={() => closeDialog()}>
|
<Dialog open={!!entityItem} onClose={() => closeDialog()}>
|
||||||
<DialogTitle>
|
<DialogTitle>
|
||||||
{creating ? LL.ADD(1) + ' ' + LL.NEW() : LL.EDIT()} {LL.CUSTOM_ENTITIES()}
|
{creating ? LL.ADD(1) + ' ' + LL.NEW() : LL.EDIT()} {LL.ENTITY()}
|
||||||
</DialogTitle>
|
</DialogTitle>
|
||||||
<DialogContent dividers>
|
<DialogContent dividers>
|
||||||
<Box display="flex" flexWrap="wrap" mb={1}>
|
<Box display="flex" flexWrap="wrap" mb={1}>
|
||||||
@@ -323,11 +336,12 @@ const SettingsEntities: FC = () => {
|
|||||||
value={entityItem.name}
|
value={entityItem.name}
|
||||||
margin="normal"
|
margin="normal"
|
||||||
fullWidth
|
fullWidth
|
||||||
onChange={updateValue(setEntityItem)}
|
// onChange={updateValue(setEntityItem)}
|
||||||
/>
|
/>
|
||||||
</Grid>
|
</Grid>
|
||||||
<Grid item xs={4}>
|
<Grid item xs={4}>
|
||||||
<ValidatedTextField
|
<ValidatedTextField
|
||||||
|
fieldErrors={fieldErrors}
|
||||||
name="device_id"
|
name="device_id"
|
||||||
label="Device ID"
|
label="Device ID"
|
||||||
margin="normal"
|
margin="normal"
|
||||||
@@ -341,6 +355,7 @@ const SettingsEntities: FC = () => {
|
|||||||
</Grid>
|
</Grid>
|
||||||
<Grid item xs={4}>
|
<Grid item xs={4}>
|
||||||
<ValidatedTextField
|
<ValidatedTextField
|
||||||
|
fieldErrors={fieldErrors}
|
||||||
name="type_id"
|
name="type_id"
|
||||||
label="Type ID"
|
label="Type ID"
|
||||||
margin="normal"
|
margin="normal"
|
||||||
@@ -354,6 +369,7 @@ const SettingsEntities: FC = () => {
|
|||||||
</Grid>
|
</Grid>
|
||||||
<Grid item xs={4}>
|
<Grid item xs={4}>
|
||||||
<ValidatedTextField
|
<ValidatedTextField
|
||||||
|
fieldErrors={fieldErrors}
|
||||||
name="offset"
|
name="offset"
|
||||||
label="Offset"
|
label="Offset"
|
||||||
margin="normal"
|
margin="normal"
|
||||||
@@ -469,7 +485,7 @@ const SettingsEntities: FC = () => {
|
|||||||
startIcon={<WarningIcon color="warning" />}
|
startIcon={<WarningIcon color="warning" />}
|
||||||
variant="contained"
|
variant="contained"
|
||||||
color="info"
|
color="info"
|
||||||
onClick={() => saveEntity()}
|
onClick={() => saveEntities()}
|
||||||
>
|
>
|
||||||
{LL.APPLY_CHANGES(numChanges)}
|
{LL.APPLY_CHANGES(numChanges)}
|
||||||
</Button>
|
</Button>
|
||||||
|
|||||||
@@ -72,12 +72,12 @@ const SettingsScheduler: FC = () => {
|
|||||||
name: '',
|
name: '',
|
||||||
o_name: ''
|
o_name: ''
|
||||||
};
|
};
|
||||||
|
|
||||||
const [schedule, setSchedule] = useState<ScheduleItem[]>([emptySchedule]);
|
const [schedule, setSchedule] = useState<ScheduleItem[]>([emptySchedule]);
|
||||||
const [scheduleItem, setScheduleItem] = useState<ScheduleItem>();
|
const [scheduleItem, setScheduleItem] = useState<ScheduleItem>();
|
||||||
const [dow, setDow] = useState<string[]>([]);
|
const [dow, setDow] = useState<string[]>([]);
|
||||||
const [errorMessage, setErrorMessage] = useState<string>();
|
const [errorMessage, setErrorMessage] = useState<string>();
|
||||||
const [creating, setCreating] = useState<boolean>(false);
|
const [creating, setCreating] = useState<boolean>(false);
|
||||||
|
|
||||||
const [fieldErrors, setFieldErrors] = useState<ValidateFieldsError>();
|
const [fieldErrors, setFieldErrors] = useState<ValidateFieldsError>();
|
||||||
|
|
||||||
// eslint-disable-next-line
|
// eslint-disable-next-line
|
||||||
|
|||||||
@@ -97,18 +97,6 @@ export function getCustomizations(): AxiosPromise<void> {
|
|||||||
return AXIOS.get('/getCustomizations');
|
return AXIOS.get('/getCustomizations');
|
||||||
}
|
}
|
||||||
|
|
||||||
export function getEntities(): AxiosPromise<void> {
|
|
||||||
return AXIOS.get('/getEntities');
|
|
||||||
}
|
|
||||||
|
|
||||||
export function readEntities(): AxiosPromise<void> {
|
|
||||||
return AXIOS.get('/entity');
|
|
||||||
}
|
|
||||||
|
|
||||||
export function writeEntities(entities: Entities): AxiosPromise<void> {
|
|
||||||
return AXIOS.post('/entity', entities);
|
|
||||||
}
|
|
||||||
|
|
||||||
export function getSchedule(): AxiosPromise<Schedule> {
|
export function getSchedule(): AxiosPromise<Schedule> {
|
||||||
return AXIOS.get('/getSchedule');
|
return AXIOS.get('/getSchedule');
|
||||||
}
|
}
|
||||||
@@ -120,3 +108,15 @@ export function readSchedule(): AxiosPromise<Schedule> {
|
|||||||
export function writeSchedule(schedule: Schedule): AxiosPromise<void> {
|
export function writeSchedule(schedule: Schedule): AxiosPromise<void> {
|
||||||
return AXIOS.post('/schedule', schedule);
|
return AXIOS.post('/schedule', schedule);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
export function getEntities(): AxiosPromise<Entities> {
|
||||||
|
return AXIOS.get('/getEntities');
|
||||||
|
}
|
||||||
|
|
||||||
|
export function readEntities(): AxiosPromise<Entities> {
|
||||||
|
return AXIOS.get('/entities');
|
||||||
|
}
|
||||||
|
|
||||||
|
export function writeEntities(entities: Entities): AxiosPromise<void> {
|
||||||
|
return AXIOS.post('/entities', entities);
|
||||||
|
}
|
||||||
|
|||||||
@@ -339,25 +339,27 @@ export enum ScheduleFlag {
|
|||||||
}
|
}
|
||||||
|
|
||||||
export interface EntityItem {
|
export interface EntityItem {
|
||||||
|
id: number; // unique number
|
||||||
name: string;
|
name: string;
|
||||||
device_id: string;
|
device_id: number;
|
||||||
type_id: string;
|
type_id: number;
|
||||||
offset: number;
|
offset: number;
|
||||||
factor: number;
|
factor: number;
|
||||||
uom: number;
|
uom: number;
|
||||||
val_type: number;
|
val_type: number;
|
||||||
value?: number;
|
value?: number;
|
||||||
|
deleted?: boolean; // optional
|
||||||
|
o_id?: number;
|
||||||
o_name?: string;
|
o_name?: string;
|
||||||
o_device_id?: string;
|
o_device_id?: number;
|
||||||
o_type_id?: string;
|
o_type_id?: number;
|
||||||
o_offset?: number;
|
o_offset?: number;
|
||||||
o_factor?: number;
|
o_factor?: number;
|
||||||
o_uom?: number;
|
o_uom?: number;
|
||||||
o_val_type?: number;
|
o_val_type?: number;
|
||||||
deleted?: boolean; // optional
|
|
||||||
o_deleted?: boolean;
|
o_deleted?: boolean;
|
||||||
}
|
}
|
||||||
|
|
||||||
export interface Entities {
|
export interface Entities {
|
||||||
entity: EntityItem[];
|
entities: EntityItem[];
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -85,6 +85,16 @@ export const createSettingsValidator = (settings: Settings) =>
|
|||||||
})
|
})
|
||||||
});
|
});
|
||||||
|
|
||||||
|
export const uniqueNameValidator = (schedule: ScheduleItem[], o_name?: string) => ({
|
||||||
|
validator(rule: InternalRuleItem, name: string, callback: (error?: string) => void) {
|
||||||
|
if (name && o_name && o_name !== name && schedule.find((si) => si.name === name)) {
|
||||||
|
callback('Name already in use');
|
||||||
|
} else {
|
||||||
|
callback();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
});
|
||||||
|
|
||||||
export const schedulerItemValidation = (schedule: ScheduleItem[], scheduleItem: ScheduleItem) =>
|
export const schedulerItemValidation = (schedule: ScheduleItem[], scheduleItem: ScheduleItem) =>
|
||||||
new Schema({
|
new Schema({
|
||||||
name: [
|
name: [
|
||||||
@@ -101,9 +111,9 @@ export const schedulerItemValidation = (schedule: ScheduleItem[], scheduleItem:
|
|||||||
]
|
]
|
||||||
});
|
});
|
||||||
|
|
||||||
export const uniqueNameValidator = (schedule: ScheduleItem[], o_name?: string) => ({
|
export const uniqueEntityNameValidator = (entities: EntityItem[], o_name?: string) => ({
|
||||||
validator(rule: InternalRuleItem, name: string, callback: (error?: string) => void) {
|
validator(rule: InternalRuleItem, name: string, callback: (error?: string) => void) {
|
||||||
if (name && o_name && o_name !== name && schedule.find((si) => si.name === name)) {
|
if (name && o_name && o_name !== name && entities.find((ei) => ei.name === name)) {
|
||||||
callback('Name already in use');
|
callback('Name already in use');
|
||||||
} else {
|
} else {
|
||||||
callback();
|
callback();
|
||||||
@@ -111,7 +121,7 @@ export const uniqueNameValidator = (schedule: ScheduleItem[], o_name?: string) =
|
|||||||
}
|
}
|
||||||
});
|
});
|
||||||
|
|
||||||
export const entityItemValidation = (entity: EntityItem[], entityItem: EntityItem) =>
|
export const entityItemValidation = (entities: EntityItem[], entityItem: EntityItem) =>
|
||||||
new Schema({
|
new Schema({
|
||||||
name: [
|
name: [
|
||||||
{ required: true, message: 'Name is required' },
|
{ required: true, message: 'Name is required' },
|
||||||
@@ -120,28 +130,15 @@ export const entityItemValidation = (entity: EntityItem[], entityItem: EntityIte
|
|||||||
pattern: /^[a-zA-Z0-9_\\.]{1,15}$/,
|
pattern: /^[a-zA-Z0-9_\\.]{1,15}$/,
|
||||||
message: "Must be <15 characters: alpha numeric, '_' or '.'"
|
message: "Must be <15 characters: alpha numeric, '_' or '.'"
|
||||||
},
|
},
|
||||||
...[uniqueEntityNameValidator(entity, entityItem.o_name)]
|
...[uniqueEntityNameValidator(entities, entityItem.o_name)]
|
||||||
],
|
],
|
||||||
device_id: [
|
device_id: [{ type: 'hex', required: true, message: 'ID must be a hex value' }]
|
||||||
{ required: true, message: 'Device_id is required' },
|
// type_id: [
|
||||||
{ type: 'string', pattern: /^[A-F0-9]{1,2}$/, message: 'Must be a hex number' }
|
// { required: true, message: 'Type_id is required' },
|
||||||
],
|
// { type: 'string', pattern: /^[A-F0-9]{1,4}$/, message: 'Must be a hex number' }
|
||||||
type_id: [
|
// ],
|
||||||
{ required: true, message: 'Type_id is required' },
|
// offset: [
|
||||||
{ type: 'string', pattern: /^[A-F0-9]{1,4}$/, message: 'Must be a hex number' }
|
// { required: true, message: 'Offset is required' },
|
||||||
],
|
// { type: 'number', min: 0, max: 255, message: 'Must be between 0 and 255' }
|
||||||
offset: [
|
// ]
|
||||||
{ required: true, message: 'Offset is required' },
|
|
||||||
{ type: 'number', min: 0, max: 255, message: 'Must be between 0 and 255' }
|
|
||||||
]
|
|
||||||
});
|
});
|
||||||
|
|
||||||
export const uniqueEntityNameValidator = (entity: EntityItem[], o_name?: string) => ({
|
|
||||||
validator(rule: InternalRuleItem, name: string, callback: (error?: string) => void) {
|
|
||||||
if (name && o_name && o_name !== name && entity.find((ei) => ei.name === name)) {
|
|
||||||
callback('Name already in use');
|
|
||||||
} else {
|
|
||||||
callback();
|
|
||||||
}
|
|
||||||
}
|
|
||||||
});
|
|
||||||
|
|||||||
@@ -2,7 +2,6 @@ import { defineConfig, type PluginOption } from 'vite';
|
|||||||
import react from '@vitejs/plugin-react-swc';
|
import react from '@vitejs/plugin-react-swc';
|
||||||
import viteTsconfigPaths from 'vite-tsconfig-paths';
|
import viteTsconfigPaths from 'vite-tsconfig-paths';
|
||||||
import svgrPlugin from 'vite-plugin-svgr';
|
import svgrPlugin from 'vite-plugin-svgr';
|
||||||
// import { ViteMinifyPlugin } from 'vite-plugin-minify';
|
|
||||||
import { visualizer } from 'rollup-plugin-visualizer';
|
import { visualizer } from 'rollup-plugin-visualizer';
|
||||||
import ProgmemGenerator from './progmem-generator';
|
import ProgmemGenerator from './progmem-generator';
|
||||||
|
|
||||||
@@ -19,19 +18,6 @@ export default defineConfig(({ command, mode }) => {
|
|||||||
react(),
|
react(),
|
||||||
viteTsconfigPaths(),
|
viteTsconfigPaths(),
|
||||||
svgrPlugin(),
|
svgrPlugin(),
|
||||||
// ViteMinifyPlugin({
|
|
||||||
// removeAttributeQuotes: true,
|
|
||||||
// minifyCSS: true,
|
|
||||||
// minifyJS: true,
|
|
||||||
// decodeEntities: true,
|
|
||||||
// removeComments: true,
|
|
||||||
// removeEmptyAttributes: true,
|
|
||||||
// removeOptionalTags: true,
|
|
||||||
// removeEmptyElements: true,
|
|
||||||
// removeScriptTypeAttributes: true,
|
|
||||||
// removeTagWhitespace: true,
|
|
||||||
// minifyURLs: true
|
|
||||||
// }),
|
|
||||||
ProgmemGenerator({ outputPath: '../lib/framework/WWWData.h', bytesPerLine: 20 })
|
ProgmemGenerator({ outputPath: '../lib/framework/WWWData.h', bytesPerLine: 20 })
|
||||||
],
|
],
|
||||||
|
|
||||||
|
|||||||
@@ -279,7 +279,7 @@ __metadata:
|
|||||||
languageName: node
|
languageName: node
|
||||||
linkType: hard
|
linkType: hard
|
||||||
|
|
||||||
"@emotion/cache@npm:^11.10.5":
|
"@emotion/cache@npm:^11.10.5, @emotion/cache@npm:^11.10.7":
|
||||||
version: 11.10.7
|
version: 11.10.7
|
||||||
resolution: "@emotion/cache@npm:11.10.7"
|
resolution: "@emotion/cache@npm:11.10.7"
|
||||||
dependencies:
|
dependencies:
|
||||||
@@ -595,10 +595,10 @@ __metadata:
|
|||||||
languageName: node
|
languageName: node
|
||||||
linkType: hard
|
linkType: hard
|
||||||
|
|
||||||
"@eslint/js@npm:8.37.0":
|
"@eslint/js@npm:8.38.0":
|
||||||
version: 8.37.0
|
version: 8.38.0
|
||||||
resolution: "@eslint/js@npm:8.37.0"
|
resolution: "@eslint/js@npm:8.38.0"
|
||||||
checksum: 6abb3d97412ac960c7436ecdaa56eb00ac57c34782dc0901c82b259c32704e45044927b2910d786ec2127e548986d67e7ba29fec46abfb5d8fc9bedf379af2cf
|
checksum: e2f4b565d542758779b98019cfa63e24fc56fabfb8d04caf7f6310753703116b880b6a8061d671f2a40a68dba24a8a199eb01d5c8b140f53c49f05c75b404ff5
|
||||||
languageName: node
|
languageName: node
|
||||||
linkType: hard
|
linkType: hard
|
||||||
|
|
||||||
@@ -703,14 +703,14 @@ __metadata:
|
|||||||
languageName: node
|
languageName: node
|
||||||
linkType: hard
|
linkType: hard
|
||||||
|
|
||||||
"@mui/base@npm:5.0.0-alpha.124":
|
"@mui/base@npm:5.0.0-alpha.125":
|
||||||
version: 5.0.0-alpha.124
|
version: 5.0.0-alpha.125
|
||||||
resolution: "@mui/base@npm:5.0.0-alpha.124"
|
resolution: "@mui/base@npm:5.0.0-alpha.125"
|
||||||
dependencies:
|
dependencies:
|
||||||
"@babel/runtime": ^7.21.0
|
"@babel/runtime": ^7.21.0
|
||||||
"@emotion/is-prop-valid": ^1.2.0
|
"@emotion/is-prop-valid": ^1.2.0
|
||||||
"@mui/types": ^7.2.3
|
"@mui/types": ^7.2.4
|
||||||
"@mui/utils": ^5.11.13
|
"@mui/utils": ^5.12.0
|
||||||
"@popperjs/core": ^2.11.7
|
"@popperjs/core": ^2.11.7
|
||||||
clsx: ^1.2.1
|
clsx: ^1.2.1
|
||||||
prop-types: ^15.8.1
|
prop-types: ^15.8.1
|
||||||
@@ -722,14 +722,14 @@ __metadata:
|
|||||||
peerDependenciesMeta:
|
peerDependenciesMeta:
|
||||||
"@types/react":
|
"@types/react":
|
||||||
optional: true
|
optional: true
|
||||||
checksum: 103a3af33f7125cf7320a6b5de49cc6223563978066ebd4a9721de385c2b7990ff5e14139e5bd290714bd0e5db58b9b960b08051d5c14219c5835ba1a0e0c587
|
checksum: 0a87b5141500885c364382375816d23b48799e38c57993b0bbb2dbfce8052a8bdba588b2cd6cee75dc2fc43a873ce3d27a223ef1395c42a0b2e28d59e559b2bf
|
||||||
languageName: node
|
languageName: node
|
||||||
linkType: hard
|
linkType: hard
|
||||||
|
|
||||||
"@mui/core-downloads-tracker@npm:^5.11.16":
|
"@mui/core-downloads-tracker@npm:^5.12.0":
|
||||||
version: 5.11.16
|
version: 5.12.0
|
||||||
resolution: "@mui/core-downloads-tracker@npm:5.11.16"
|
resolution: "@mui/core-downloads-tracker@npm:5.12.0"
|
||||||
checksum: c9f1ed7a6f78ba9db80cb59c4a17ab4ef9af6837bf85ae87161fb745e64a617c91f7f1b35296c33c9039d42e61e49290eedae2e22ea16ded5a57e2c239c055a0
|
checksum: b0bc0c67be036fc6b965827ffb2ad2134c317237439dcbbe0b90a1807e92f93894e8d5e6650df4833b5a9b88b28d77cb2cd4435d23bbb9ab751c023684012e5f
|
||||||
languageName: node
|
languageName: node
|
||||||
linkType: hard
|
linkType: hard
|
||||||
|
|
||||||
@@ -749,16 +749,16 @@ __metadata:
|
|||||||
languageName: node
|
languageName: node
|
||||||
linkType: hard
|
linkType: hard
|
||||||
|
|
||||||
"@mui/material@npm:^5.11.16":
|
"@mui/material@npm:^5.12.0":
|
||||||
version: 5.11.16
|
version: 5.12.0
|
||||||
resolution: "@mui/material@npm:5.11.16"
|
resolution: "@mui/material@npm:5.12.0"
|
||||||
dependencies:
|
dependencies:
|
||||||
"@babel/runtime": ^7.21.0
|
"@babel/runtime": ^7.21.0
|
||||||
"@mui/base": 5.0.0-alpha.124
|
"@mui/base": 5.0.0-alpha.125
|
||||||
"@mui/core-downloads-tracker": ^5.11.16
|
"@mui/core-downloads-tracker": ^5.12.0
|
||||||
"@mui/system": ^5.11.16
|
"@mui/system": ^5.12.0
|
||||||
"@mui/types": ^7.2.3
|
"@mui/types": ^7.2.4
|
||||||
"@mui/utils": ^5.11.13
|
"@mui/utils": ^5.12.0
|
||||||
"@types/react-transition-group": ^4.4.5
|
"@types/react-transition-group": ^4.4.5
|
||||||
clsx: ^1.2.1
|
clsx: ^1.2.1
|
||||||
csstype: ^3.1.2
|
csstype: ^3.1.2
|
||||||
@@ -778,16 +778,16 @@ __metadata:
|
|||||||
optional: true
|
optional: true
|
||||||
"@types/react":
|
"@types/react":
|
||||||
optional: true
|
optional: true
|
||||||
checksum: a674b179edd9af749d5a7edee6e2bf031b56b06311d6d0c567ec2a53936a0416443a74dcd02d360748442260f0829ad087ed5c1172d714fec2eb29d22683d234
|
checksum: d8f2e875393dd254d70aafea08e1289d4cc4d085af581cd8fd4cc2882d5e265b8c926322ac64c1e0d18c5f441969abef2611c87346d685ad18fcfbc27e2d8ddf
|
||||||
languageName: node
|
languageName: node
|
||||||
linkType: hard
|
linkType: hard
|
||||||
|
|
||||||
"@mui/private-theming@npm:^5.11.13":
|
"@mui/private-theming@npm:^5.12.0":
|
||||||
version: 5.11.13
|
version: 5.12.0
|
||||||
resolution: "@mui/private-theming@npm:5.11.13"
|
resolution: "@mui/private-theming@npm:5.12.0"
|
||||||
dependencies:
|
dependencies:
|
||||||
"@babel/runtime": ^7.21.0
|
"@babel/runtime": ^7.21.0
|
||||||
"@mui/utils": ^5.11.13
|
"@mui/utils": ^5.12.0
|
||||||
prop-types: ^15.8.1
|
prop-types: ^15.8.1
|
||||||
peerDependencies:
|
peerDependencies:
|
||||||
"@types/react": ^17.0.0 || ^18.0.0
|
"@types/react": ^17.0.0 || ^18.0.0
|
||||||
@@ -795,16 +795,16 @@ __metadata:
|
|||||||
peerDependenciesMeta:
|
peerDependenciesMeta:
|
||||||
"@types/react":
|
"@types/react":
|
||||||
optional: true
|
optional: true
|
||||||
checksum: 114801958fe0153b2c7c07640d5453dc783bebdc96e35612f18b90370a461bb0d5c24d0d3ea5b48dc369299660e4246f6d739a97aa47821e5d5b955329d38ec4
|
checksum: c7ad031d9574a4b217400ce78f2f58a487fae5249ce46a124ae1a2814e8cc52848dd20fdff7ccc4e6342b83f5e77ec1d5b1eabc74777647fb1f7f0a4f8b5be25
|
||||||
languageName: node
|
languageName: node
|
||||||
linkType: hard
|
linkType: hard
|
||||||
|
|
||||||
"@mui/styled-engine@npm:^5.11.16":
|
"@mui/styled-engine@npm:^5.12.0":
|
||||||
version: 5.11.16
|
version: 5.12.0
|
||||||
resolution: "@mui/styled-engine@npm:5.11.16"
|
resolution: "@mui/styled-engine@npm:5.12.0"
|
||||||
dependencies:
|
dependencies:
|
||||||
"@babel/runtime": ^7.21.0
|
"@babel/runtime": ^7.21.0
|
||||||
"@emotion/cache": ^11.10.5
|
"@emotion/cache": ^11.10.7
|
||||||
csstype: ^3.1.2
|
csstype: ^3.1.2
|
||||||
prop-types: ^15.8.1
|
prop-types: ^15.8.1
|
||||||
peerDependencies:
|
peerDependencies:
|
||||||
@@ -816,19 +816,19 @@ __metadata:
|
|||||||
optional: true
|
optional: true
|
||||||
"@emotion/styled":
|
"@emotion/styled":
|
||||||
optional: true
|
optional: true
|
||||||
checksum: 308b7406c7e4ade762c21339644803ad5510c96940e1bd99586cbcea9fa3468216fbace47ed603ea8106fff5d493dadba4ebac07e89175c3f12d50b7571c90d8
|
checksum: 278ce278b0622866b4b8d1caab4ed151986c5f967830140783e1f5609bd5f9fe34c470daef8bcf2ba9706bc4fe8caae950227bb3853ddde3e5b2f45c2f90aad5
|
||||||
languageName: node
|
languageName: node
|
||||||
linkType: hard
|
linkType: hard
|
||||||
|
|
||||||
"@mui/system@npm:^5.11.16":
|
"@mui/system@npm:^5.12.0":
|
||||||
version: 5.11.16
|
version: 5.12.0
|
||||||
resolution: "@mui/system@npm:5.11.16"
|
resolution: "@mui/system@npm:5.12.0"
|
||||||
dependencies:
|
dependencies:
|
||||||
"@babel/runtime": ^7.21.0
|
"@babel/runtime": ^7.21.0
|
||||||
"@mui/private-theming": ^5.11.13
|
"@mui/private-theming": ^5.12.0
|
||||||
"@mui/styled-engine": ^5.11.16
|
"@mui/styled-engine": ^5.12.0
|
||||||
"@mui/types": ^7.2.3
|
"@mui/types": ^7.2.4
|
||||||
"@mui/utils": ^5.11.13
|
"@mui/utils": ^5.12.0
|
||||||
clsx: ^1.2.1
|
clsx: ^1.2.1
|
||||||
csstype: ^3.1.2
|
csstype: ^3.1.2
|
||||||
prop-types: ^15.8.1
|
prop-types: ^15.8.1
|
||||||
@@ -844,25 +844,25 @@ __metadata:
|
|||||||
optional: true
|
optional: true
|
||||||
"@types/react":
|
"@types/react":
|
||||||
optional: true
|
optional: true
|
||||||
checksum: 53c699dd20dd0bc312b81844a5e2a55e184d13042300e5027ace490b89a41e6e01f857d7b8a21b95aad6e215b4467a0fa9bbf7b1bb1b877fe8429f986378fd4e
|
checksum: d53e70f35b8cc19c687ba72fc79a1f4cc20e0dd0335433fc255bc70291f89460b88bdddb7a9f17d11ffa6de3710117cc666c28ea0ac234fd2da13e82ee3c3c34
|
||||||
languageName: node
|
languageName: node
|
||||||
linkType: hard
|
linkType: hard
|
||||||
|
|
||||||
"@mui/types@npm:^7.2.3":
|
"@mui/types@npm:^7.2.4":
|
||||||
version: 7.2.3
|
version: 7.2.4
|
||||||
resolution: "@mui/types@npm:7.2.3"
|
resolution: "@mui/types@npm:7.2.4"
|
||||||
peerDependencies:
|
peerDependencies:
|
||||||
"@types/react": "*"
|
"@types/react": "*"
|
||||||
peerDependenciesMeta:
|
peerDependenciesMeta:
|
||||||
"@types/react":
|
"@types/react":
|
||||||
optional: true
|
optional: true
|
||||||
checksum: d66575b6e5b37462bc4182ee5eae7f9f10792d4cdbe407fdb055136c62c3e05c6fa8969680373a723fbede0d1b1c17941c2cccd5a0409751a09aa22a712eafc0
|
checksum: 17411effd184eff34d6a1a55b2249c7e1ef195bb30c48154f0b16fdce428ff55be4ec5dde8b4a556c01eda2d34e3dcc18d925f8fdee606f5bc15f91167f0ecbc
|
||||||
languageName: node
|
languageName: node
|
||||||
linkType: hard
|
linkType: hard
|
||||||
|
|
||||||
"@mui/utils@npm:^5.11.13":
|
"@mui/utils@npm:^5.12.0":
|
||||||
version: 5.11.13
|
version: 5.12.0
|
||||||
resolution: "@mui/utils@npm:5.11.13"
|
resolution: "@mui/utils@npm:5.12.0"
|
||||||
dependencies:
|
dependencies:
|
||||||
"@babel/runtime": ^7.21.0
|
"@babel/runtime": ^7.21.0
|
||||||
"@types/prop-types": ^15.7.5
|
"@types/prop-types": ^15.7.5
|
||||||
@@ -871,7 +871,7 @@ __metadata:
|
|||||||
react-is: ^18.2.0
|
react-is: ^18.2.0
|
||||||
peerDependencies:
|
peerDependencies:
|
||||||
react: ^17.0.0 || ^18.0.0
|
react: ^17.0.0 || ^18.0.0
|
||||||
checksum: ba9812784d90b3bbe7c56cc0daf35cd972b576789b2dedb4d1df73005bc55af58d01c11dd21f2104206a49d93f08b9ba1a19a63c605df7b4760a1a864f675ead
|
checksum: 81813844674de745c3834e40d224b02aae98bfee0ada2dd5c68256fd5e866eaaf11b59f575e5d14676c61699ad8d44350f9b72da3c49cdc4b23e6efead965944
|
||||||
languageName: node
|
languageName: node
|
||||||
linkType: hard
|
linkType: hard
|
||||||
|
|
||||||
@@ -1100,90 +1100,90 @@ __metadata:
|
|||||||
languageName: node
|
languageName: node
|
||||||
linkType: hard
|
linkType: hard
|
||||||
|
|
||||||
"@swc/core-darwin-arm64@npm:1.3.46":
|
"@swc/core-darwin-arm64@npm:1.3.49":
|
||||||
version: 1.3.46
|
version: 1.3.49
|
||||||
resolution: "@swc/core-darwin-arm64@npm:1.3.46"
|
resolution: "@swc/core-darwin-arm64@npm:1.3.49"
|
||||||
conditions: os=darwin & cpu=arm64
|
conditions: os=darwin & cpu=arm64
|
||||||
languageName: node
|
languageName: node
|
||||||
linkType: hard
|
linkType: hard
|
||||||
|
|
||||||
"@swc/core-darwin-x64@npm:1.3.46":
|
"@swc/core-darwin-x64@npm:1.3.49":
|
||||||
version: 1.3.46
|
version: 1.3.49
|
||||||
resolution: "@swc/core-darwin-x64@npm:1.3.46"
|
resolution: "@swc/core-darwin-x64@npm:1.3.49"
|
||||||
conditions: os=darwin & cpu=x64
|
conditions: os=darwin & cpu=x64
|
||||||
languageName: node
|
languageName: node
|
||||||
linkType: hard
|
linkType: hard
|
||||||
|
|
||||||
"@swc/core-linux-arm-gnueabihf@npm:1.3.46":
|
"@swc/core-linux-arm-gnueabihf@npm:1.3.49":
|
||||||
version: 1.3.46
|
version: 1.3.49
|
||||||
resolution: "@swc/core-linux-arm-gnueabihf@npm:1.3.46"
|
resolution: "@swc/core-linux-arm-gnueabihf@npm:1.3.49"
|
||||||
conditions: os=linux & cpu=arm
|
conditions: os=linux & cpu=arm
|
||||||
languageName: node
|
languageName: node
|
||||||
linkType: hard
|
linkType: hard
|
||||||
|
|
||||||
"@swc/core-linux-arm64-gnu@npm:1.3.46":
|
"@swc/core-linux-arm64-gnu@npm:1.3.49":
|
||||||
version: 1.3.46
|
version: 1.3.49
|
||||||
resolution: "@swc/core-linux-arm64-gnu@npm:1.3.46"
|
resolution: "@swc/core-linux-arm64-gnu@npm:1.3.49"
|
||||||
conditions: os=linux & cpu=arm64 & libc=glibc
|
conditions: os=linux & cpu=arm64 & libc=glibc
|
||||||
languageName: node
|
languageName: node
|
||||||
linkType: hard
|
linkType: hard
|
||||||
|
|
||||||
"@swc/core-linux-arm64-musl@npm:1.3.46":
|
"@swc/core-linux-arm64-musl@npm:1.3.49":
|
||||||
version: 1.3.46
|
version: 1.3.49
|
||||||
resolution: "@swc/core-linux-arm64-musl@npm:1.3.46"
|
resolution: "@swc/core-linux-arm64-musl@npm:1.3.49"
|
||||||
conditions: os=linux & cpu=arm64 & libc=musl
|
conditions: os=linux & cpu=arm64 & libc=musl
|
||||||
languageName: node
|
languageName: node
|
||||||
linkType: hard
|
linkType: hard
|
||||||
|
|
||||||
"@swc/core-linux-x64-gnu@npm:1.3.46":
|
"@swc/core-linux-x64-gnu@npm:1.3.49":
|
||||||
version: 1.3.46
|
version: 1.3.49
|
||||||
resolution: "@swc/core-linux-x64-gnu@npm:1.3.46"
|
resolution: "@swc/core-linux-x64-gnu@npm:1.3.49"
|
||||||
conditions: os=linux & cpu=x64 & libc=glibc
|
conditions: os=linux & cpu=x64 & libc=glibc
|
||||||
languageName: node
|
languageName: node
|
||||||
linkType: hard
|
linkType: hard
|
||||||
|
|
||||||
"@swc/core-linux-x64-musl@npm:1.3.46":
|
"@swc/core-linux-x64-musl@npm:1.3.49":
|
||||||
version: 1.3.46
|
version: 1.3.49
|
||||||
resolution: "@swc/core-linux-x64-musl@npm:1.3.46"
|
resolution: "@swc/core-linux-x64-musl@npm:1.3.49"
|
||||||
conditions: os=linux & cpu=x64 & libc=musl
|
conditions: os=linux & cpu=x64 & libc=musl
|
||||||
languageName: node
|
languageName: node
|
||||||
linkType: hard
|
linkType: hard
|
||||||
|
|
||||||
"@swc/core-win32-arm64-msvc@npm:1.3.46":
|
"@swc/core-win32-arm64-msvc@npm:1.3.49":
|
||||||
version: 1.3.46
|
version: 1.3.49
|
||||||
resolution: "@swc/core-win32-arm64-msvc@npm:1.3.46"
|
resolution: "@swc/core-win32-arm64-msvc@npm:1.3.49"
|
||||||
conditions: os=win32 & cpu=arm64
|
conditions: os=win32 & cpu=arm64
|
||||||
languageName: node
|
languageName: node
|
||||||
linkType: hard
|
linkType: hard
|
||||||
|
|
||||||
"@swc/core-win32-ia32-msvc@npm:1.3.46":
|
"@swc/core-win32-ia32-msvc@npm:1.3.49":
|
||||||
version: 1.3.46
|
version: 1.3.49
|
||||||
resolution: "@swc/core-win32-ia32-msvc@npm:1.3.46"
|
resolution: "@swc/core-win32-ia32-msvc@npm:1.3.49"
|
||||||
conditions: os=win32 & cpu=ia32
|
conditions: os=win32 & cpu=ia32
|
||||||
languageName: node
|
languageName: node
|
||||||
linkType: hard
|
linkType: hard
|
||||||
|
|
||||||
"@swc/core-win32-x64-msvc@npm:1.3.46":
|
"@swc/core-win32-x64-msvc@npm:1.3.49":
|
||||||
version: 1.3.46
|
version: 1.3.49
|
||||||
resolution: "@swc/core-win32-x64-msvc@npm:1.3.46"
|
resolution: "@swc/core-win32-x64-msvc@npm:1.3.49"
|
||||||
conditions: os=win32 & cpu=x64
|
conditions: os=win32 & cpu=x64
|
||||||
languageName: node
|
languageName: node
|
||||||
linkType: hard
|
linkType: hard
|
||||||
|
|
||||||
"@swc/core@npm:^1.3.35":
|
"@swc/core@npm:^1.3.42":
|
||||||
version: 1.3.46
|
version: 1.3.49
|
||||||
resolution: "@swc/core@npm:1.3.46"
|
resolution: "@swc/core@npm:1.3.49"
|
||||||
dependencies:
|
dependencies:
|
||||||
"@swc/core-darwin-arm64": 1.3.46
|
"@swc/core-darwin-arm64": 1.3.49
|
||||||
"@swc/core-darwin-x64": 1.3.46
|
"@swc/core-darwin-x64": 1.3.49
|
||||||
"@swc/core-linux-arm-gnueabihf": 1.3.46
|
"@swc/core-linux-arm-gnueabihf": 1.3.49
|
||||||
"@swc/core-linux-arm64-gnu": 1.3.46
|
"@swc/core-linux-arm64-gnu": 1.3.49
|
||||||
"@swc/core-linux-arm64-musl": 1.3.46
|
"@swc/core-linux-arm64-musl": 1.3.49
|
||||||
"@swc/core-linux-x64-gnu": 1.3.46
|
"@swc/core-linux-x64-gnu": 1.3.49
|
||||||
"@swc/core-linux-x64-musl": 1.3.46
|
"@swc/core-linux-x64-musl": 1.3.49
|
||||||
"@swc/core-win32-arm64-msvc": 1.3.46
|
"@swc/core-win32-arm64-msvc": 1.3.49
|
||||||
"@swc/core-win32-ia32-msvc": 1.3.46
|
"@swc/core-win32-ia32-msvc": 1.3.49
|
||||||
"@swc/core-win32-x64-msvc": 1.3.46
|
"@swc/core-win32-x64-msvc": 1.3.49
|
||||||
peerDependencies:
|
peerDependencies:
|
||||||
"@swc/helpers": ^0.5.0
|
"@swc/helpers": ^0.5.0
|
||||||
dependenciesMeta:
|
dependenciesMeta:
|
||||||
@@ -1207,7 +1207,10 @@ __metadata:
|
|||||||
optional: true
|
optional: true
|
||||||
"@swc/core-win32-x64-msvc":
|
"@swc/core-win32-x64-msvc":
|
||||||
optional: true
|
optional: true
|
||||||
checksum: 245c213425fecc16ae5a078ec0451f3567430609ef40ef4f1dc2fb795de86229d4203956b5b02ae304232cf93b25bbec3aaed23989d41fdb432aecc1cfdabc0e
|
peerDependenciesMeta:
|
||||||
|
"@swc/helpers":
|
||||||
|
optional: true
|
||||||
|
checksum: 3a8463047fb79a4bc5987cd24f935e19e59dfe967648c6abbc0b61f9197b76109de832fb03e5e6452459f9e2165b565f86dbc9ecd9506f58bd4befff8e0ddc47
|
||||||
languageName: node
|
languageName: node
|
||||||
linkType: hard
|
linkType: hard
|
||||||
|
|
||||||
@@ -1407,7 +1410,7 @@ __metadata:
|
|||||||
languageName: node
|
languageName: node
|
||||||
linkType: hard
|
linkType: hard
|
||||||
|
|
||||||
"@types/react@npm:*, @types/react@npm:^18.0.33":
|
"@types/react@npm:*":
|
||||||
version: 18.0.33
|
version: 18.0.33
|
||||||
resolution: "@types/react@npm:18.0.33"
|
resolution: "@types/react@npm:18.0.33"
|
||||||
dependencies:
|
dependencies:
|
||||||
@@ -1418,6 +1421,17 @@ __metadata:
|
|||||||
languageName: node
|
languageName: node
|
||||||
linkType: hard
|
linkType: hard
|
||||||
|
|
||||||
|
"@types/react@npm:^18.0.34":
|
||||||
|
version: 18.0.34
|
||||||
|
resolution: "@types/react@npm:18.0.34"
|
||||||
|
dependencies:
|
||||||
|
"@types/prop-types": "*"
|
||||||
|
"@types/scheduler": "*"
|
||||||
|
csstype: ^3.0.2
|
||||||
|
checksum: 97e6ea3b5eea0b270c2c36f5cc44699fe21e30ceda4ffc6936ad40ff755bd8b16637f41d8b0bd20d50eb3261b0981e8f4822b2bd5805208532292499f6de340c
|
||||||
|
languageName: node
|
||||||
|
linkType: hard
|
||||||
|
|
||||||
"@types/responselike@npm:^1.0.0":
|
"@types/responselike@npm:^1.0.0":
|
||||||
version: 1.0.0
|
version: 1.0.0
|
||||||
resolution: "@types/responselike@npm:1.0.0"
|
resolution: "@types/responselike@npm:1.0.0"
|
||||||
@@ -1459,14 +1473,14 @@ __metadata:
|
|||||||
languageName: node
|
languageName: node
|
||||||
linkType: hard
|
linkType: hard
|
||||||
|
|
||||||
"@typescript-eslint/eslint-plugin@npm:^5.57.1":
|
"@typescript-eslint/eslint-plugin@npm:^5.58.0":
|
||||||
version: 5.57.1
|
version: 5.58.0
|
||||||
resolution: "@typescript-eslint/eslint-plugin@npm:5.57.1"
|
resolution: "@typescript-eslint/eslint-plugin@npm:5.58.0"
|
||||||
dependencies:
|
dependencies:
|
||||||
"@eslint-community/regexpp": ^4.4.0
|
"@eslint-community/regexpp": ^4.4.0
|
||||||
"@typescript-eslint/scope-manager": 5.57.1
|
"@typescript-eslint/scope-manager": 5.58.0
|
||||||
"@typescript-eslint/type-utils": 5.57.1
|
"@typescript-eslint/type-utils": 5.58.0
|
||||||
"@typescript-eslint/utils": 5.57.1
|
"@typescript-eslint/utils": 5.58.0
|
||||||
debug: ^4.3.4
|
debug: ^4.3.4
|
||||||
grapheme-splitter: ^1.0.4
|
grapheme-splitter: ^1.0.4
|
||||||
ignore: ^5.2.0
|
ignore: ^5.2.0
|
||||||
@@ -1479,43 +1493,43 @@ __metadata:
|
|||||||
peerDependenciesMeta:
|
peerDependenciesMeta:
|
||||||
typescript:
|
typescript:
|
||||||
optional: true
|
optional: true
|
||||||
checksum: 3847db76ed4a5df9cbb0f0155afa81951323a93ba37de3dca872b325502d0203da859a67f6d201bcfdf4985188b80227b7fd039206f7b921c96d33befe7ed25d
|
checksum: cda31ae6ff09c742f921304ea1a2a0d0823f7e20d7969ba6320ab14df2b3269b93a61eded96a59f01cfd24f28efb91e461e42bb09f493ed013936a899697a868
|
||||||
languageName: node
|
languageName: node
|
||||||
linkType: hard
|
linkType: hard
|
||||||
|
|
||||||
"@typescript-eslint/parser@npm:^5.57.1":
|
"@typescript-eslint/parser@npm:^5.58.0":
|
||||||
version: 5.57.1
|
version: 5.58.0
|
||||||
resolution: "@typescript-eslint/parser@npm:5.57.1"
|
resolution: "@typescript-eslint/parser@npm:5.58.0"
|
||||||
dependencies:
|
dependencies:
|
||||||
"@typescript-eslint/scope-manager": 5.57.1
|
"@typescript-eslint/scope-manager": 5.58.0
|
||||||
"@typescript-eslint/types": 5.57.1
|
"@typescript-eslint/types": 5.58.0
|
||||||
"@typescript-eslint/typescript-estree": 5.57.1
|
"@typescript-eslint/typescript-estree": 5.58.0
|
||||||
debug: ^4.3.4
|
debug: ^4.3.4
|
||||||
peerDependencies:
|
peerDependencies:
|
||||||
eslint: ^6.0.0 || ^7.0.0 || ^8.0.0
|
eslint: ^6.0.0 || ^7.0.0 || ^8.0.0
|
||||||
peerDependenciesMeta:
|
peerDependenciesMeta:
|
||||||
typescript:
|
typescript:
|
||||||
optional: true
|
optional: true
|
||||||
checksum: 4e2ea4694b261a25bca452db502666ddb4444cced9518eb2d34bd06d099885858307c9b320fd1aaeb45513811dc1984bbba370e5a8567671bad7fc5a0eb8bcc7
|
checksum: fb7a4ce59eb803d29705e0134b6731823d9d7b56dd76a4de4ff07eb09d56cc851ed9988ecacdc2d0cbd929115a02ce564b0bb1b97d8732e05707dbe4332460ae
|
||||||
languageName: node
|
languageName: node
|
||||||
linkType: hard
|
linkType: hard
|
||||||
|
|
||||||
"@typescript-eslint/scope-manager@npm:5.57.1":
|
"@typescript-eslint/scope-manager@npm:5.58.0":
|
||||||
version: 5.57.1
|
version: 5.58.0
|
||||||
resolution: "@typescript-eslint/scope-manager@npm:5.57.1"
|
resolution: "@typescript-eslint/scope-manager@npm:5.58.0"
|
||||||
dependencies:
|
dependencies:
|
||||||
"@typescript-eslint/types": 5.57.1
|
"@typescript-eslint/types": 5.58.0
|
||||||
"@typescript-eslint/visitor-keys": 5.57.1
|
"@typescript-eslint/visitor-keys": 5.58.0
|
||||||
checksum: f0905f70939980164c0205c6c6d3638bea40fd9afb1acc83632360e66725f185eee9da595721f0bcd57cc5f951224d9d47bd8dc9c9b2373920f9d236081a8344
|
checksum: 66c82609ac6c9cf00e163126619e7c487adc938f02e4567a2c26319916a175b9aee792aa80bd319a20848c834c6e599cd302c9f5b68c64b95d02f024f511ac66
|
||||||
languageName: node
|
languageName: node
|
||||||
linkType: hard
|
linkType: hard
|
||||||
|
|
||||||
"@typescript-eslint/type-utils@npm:5.57.1":
|
"@typescript-eslint/type-utils@npm:5.58.0":
|
||||||
version: 5.57.1
|
version: 5.58.0
|
||||||
resolution: "@typescript-eslint/type-utils@npm:5.57.1"
|
resolution: "@typescript-eslint/type-utils@npm:5.58.0"
|
||||||
dependencies:
|
dependencies:
|
||||||
"@typescript-eslint/typescript-estree": 5.57.1
|
"@typescript-eslint/typescript-estree": 5.58.0
|
||||||
"@typescript-eslint/utils": 5.57.1
|
"@typescript-eslint/utils": 5.58.0
|
||||||
debug: ^4.3.4
|
debug: ^4.3.4
|
||||||
tsutils: ^3.21.0
|
tsutils: ^3.21.0
|
||||||
peerDependencies:
|
peerDependencies:
|
||||||
@@ -1523,23 +1537,23 @@ __metadata:
|
|||||||
peerDependenciesMeta:
|
peerDependenciesMeta:
|
||||||
typescript:
|
typescript:
|
||||||
optional: true
|
optional: true
|
||||||
checksum: 21fb0653398d2d6d32e4bcb8fe4f4d802d63f0cd50f2e4b982f410b075f5441edffe64924dd1ba71f89eccef3b04eaae8c23543e7618723c7344914378ce3796
|
checksum: 3ca4443f43b8263745afda3ff05517074da77d1dad25867845d386b29b012548b720d12334aca8bf15323a76557099e4ce3025a5a0fa84e070f6a4c1dc36d44e
|
||||||
languageName: node
|
languageName: node
|
||||||
linkType: hard
|
linkType: hard
|
||||||
|
|
||||||
"@typescript-eslint/types@npm:5.57.1":
|
"@typescript-eslint/types@npm:5.58.0":
|
||||||
version: 5.57.1
|
version: 5.58.0
|
||||||
resolution: "@typescript-eslint/types@npm:5.57.1"
|
resolution: "@typescript-eslint/types@npm:5.58.0"
|
||||||
checksum: 549214a87a52359013270982ef4e69ce17d8a063717a8cb9d127425e76b9113a8db437b67e6802be2ba35c4c025cb37907b003cc29306a8d7d7800c58838aa38
|
checksum: 3e5973909a5c585f5aebf919eec8ac213e9b5089c7357ea832ffa2bd39df70dce0b806d4bcc39a15e309830dfbf7bdf22d9808ab3c466729b8536e9d7e83eccc
|
||||||
languageName: node
|
languageName: node
|
||||||
linkType: hard
|
linkType: hard
|
||||||
|
|
||||||
"@typescript-eslint/typescript-estree@npm:5.57.1":
|
"@typescript-eslint/typescript-estree@npm:5.58.0":
|
||||||
version: 5.57.1
|
version: 5.58.0
|
||||||
resolution: "@typescript-eslint/typescript-estree@npm:5.57.1"
|
resolution: "@typescript-eslint/typescript-estree@npm:5.58.0"
|
||||||
dependencies:
|
dependencies:
|
||||||
"@typescript-eslint/types": 5.57.1
|
"@typescript-eslint/types": 5.58.0
|
||||||
"@typescript-eslint/visitor-keys": 5.57.1
|
"@typescript-eslint/visitor-keys": 5.58.0
|
||||||
debug: ^4.3.4
|
debug: ^4.3.4
|
||||||
globby: ^11.1.0
|
globby: ^11.1.0
|
||||||
is-glob: ^4.0.3
|
is-glob: ^4.0.3
|
||||||
@@ -1548,46 +1562,46 @@ __metadata:
|
|||||||
peerDependenciesMeta:
|
peerDependenciesMeta:
|
||||||
typescript:
|
typescript:
|
||||||
optional: true
|
optional: true
|
||||||
checksum: 3c5483a9bb8413ba117be12de334b9e533fe75320b5308e7d21a41661dd627b8a403575e5bce84ff9ca7b0678446dd6e98e73b2f05b9f4bb2d02a0a067b421d7
|
checksum: 51c2a92217a1ccc01acf3c5c371b8c4b48b066cb6341441c35b74b6f3e13d21f81e0aed041215f3f4cf73320f5cd6cc3061801c51a3049958ee9a171a6efa196
|
||||||
languageName: node
|
languageName: node
|
||||||
linkType: hard
|
linkType: hard
|
||||||
|
|
||||||
"@typescript-eslint/utils@npm:5.57.1":
|
"@typescript-eslint/utils@npm:5.58.0":
|
||||||
version: 5.57.1
|
version: 5.58.0
|
||||||
resolution: "@typescript-eslint/utils@npm:5.57.1"
|
resolution: "@typescript-eslint/utils@npm:5.58.0"
|
||||||
dependencies:
|
dependencies:
|
||||||
"@eslint-community/eslint-utils": ^4.2.0
|
"@eslint-community/eslint-utils": ^4.2.0
|
||||||
"@types/json-schema": ^7.0.9
|
"@types/json-schema": ^7.0.9
|
||||||
"@types/semver": ^7.3.12
|
"@types/semver": ^7.3.12
|
||||||
"@typescript-eslint/scope-manager": 5.57.1
|
"@typescript-eslint/scope-manager": 5.58.0
|
||||||
"@typescript-eslint/types": 5.57.1
|
"@typescript-eslint/types": 5.58.0
|
||||||
"@typescript-eslint/typescript-estree": 5.57.1
|
"@typescript-eslint/typescript-estree": 5.58.0
|
||||||
eslint-scope: ^5.1.1
|
eslint-scope: ^5.1.1
|
||||||
semver: ^7.3.7
|
semver: ^7.3.7
|
||||||
peerDependencies:
|
peerDependencies:
|
||||||
eslint: ^6.0.0 || ^7.0.0 || ^8.0.0
|
eslint: ^6.0.0 || ^7.0.0 || ^8.0.0
|
||||||
checksum: bab8a94e30fc22fa6b3db5c6eee059697ce5e5e03f355c1fc465de184129b4824186a82235e14111c644d2b337721ae9f4d294a52a6f3dd4377edd35b922e3aa
|
checksum: 71ea338d9b67b59792e9d9a82b723acbee815534044294b169e3727f5394445d95a6200c919f0c28020bc5954df0f7110e9d0a4586e77ebebcd1662c06b30157
|
||||||
languageName: node
|
languageName: node
|
||||||
linkType: hard
|
linkType: hard
|
||||||
|
|
||||||
"@typescript-eslint/visitor-keys@npm:5.57.1":
|
"@typescript-eslint/visitor-keys@npm:5.58.0":
|
||||||
version: 5.57.1
|
version: 5.58.0
|
||||||
resolution: "@typescript-eslint/visitor-keys@npm:5.57.1"
|
resolution: "@typescript-eslint/visitor-keys@npm:5.58.0"
|
||||||
dependencies:
|
dependencies:
|
||||||
"@typescript-eslint/types": 5.57.1
|
"@typescript-eslint/types": 5.58.0
|
||||||
eslint-visitor-keys: ^3.3.0
|
eslint-visitor-keys: ^3.3.0
|
||||||
checksum: 9a84589334fe675d18ca3a572aa0caf1b4c7baa80857642aee40378f5c79cf9dddd06a0fec31d7ff6a73f577f68f910fb745d51728fac317b388b8de764561db
|
checksum: e41b0cf8bf766c491fe96e26b4cd20e6af4dbe85ff773a32887b7557ffd199117d8cdc86ceef5ce224d06c5e14d54a8edb679e58185f5a9c6b450615eaac6f30
|
||||||
languageName: node
|
languageName: node
|
||||||
linkType: hard
|
linkType: hard
|
||||||
|
|
||||||
"@vitejs/plugin-react-swc@npm:^3.2.0":
|
"@vitejs/plugin-react-swc@npm:^3.3.0":
|
||||||
version: 3.2.0
|
version: 3.3.0
|
||||||
resolution: "@vitejs/plugin-react-swc@npm:3.2.0"
|
resolution: "@vitejs/plugin-react-swc@npm:3.3.0"
|
||||||
dependencies:
|
dependencies:
|
||||||
"@swc/core": ^1.3.35
|
"@swc/core": ^1.3.42
|
||||||
peerDependencies:
|
peerDependencies:
|
||||||
vite: ^4
|
vite: ^4
|
||||||
checksum: fa2e707ee67244596a8d8d2738875af904d0e30a108cb5788ada0815efebaf5001a3168b90093c2322502be36e87b131f22fb8eb7c5e351f6eb1893eb64299f5
|
checksum: 29e7389540ac448328c3450cde81b4a48815a6a57bf823b3b94b4372084d0a7a7cabb39041e9d6b6c31ebdb7f5739e54d91cfc9ec29f724daa2b9b027ecc9376
|
||||||
languageName: node
|
languageName: node
|
||||||
linkType: hard
|
linkType: hard
|
||||||
|
|
||||||
@@ -1718,23 +1732,23 @@ __metadata:
|
|||||||
"@emotion/styled": ^11.10.6
|
"@emotion/styled": ^11.10.6
|
||||||
"@msgpack/msgpack": ^3.0.0-beta2
|
"@msgpack/msgpack": ^3.0.0-beta2
|
||||||
"@mui/icons-material": ^5.11.16
|
"@mui/icons-material": ^5.11.16
|
||||||
"@mui/material": ^5.11.16
|
"@mui/material": ^5.12.0
|
||||||
"@remix-run/router": ^1.5.0
|
"@remix-run/router": ^1.5.0
|
||||||
"@table-library/react-table-library": 4.1.0
|
"@table-library/react-table-library": 4.1.0
|
||||||
"@types/lodash-es": ^4.17.7
|
"@types/lodash-es": ^4.17.7
|
||||||
"@types/mime-types": ^2
|
"@types/mime-types": ^2
|
||||||
"@types/node": ^18.15.11
|
"@types/node": ^18.15.11
|
||||||
"@types/react": ^18.0.33
|
"@types/react": ^18.0.34
|
||||||
"@types/react-dom": ^18.0.11
|
"@types/react-dom": ^18.0.11
|
||||||
"@types/react-router-dom": ^5.3.3
|
"@types/react-router-dom": ^5.3.3
|
||||||
"@types/styled-components": ^5
|
"@types/styled-components": ^5
|
||||||
"@typescript-eslint/eslint-plugin": ^5.57.1
|
"@typescript-eslint/eslint-plugin": ^5.58.0
|
||||||
"@typescript-eslint/parser": ^5.57.1
|
"@typescript-eslint/parser": ^5.58.0
|
||||||
"@vitejs/plugin-react-swc": ^3.2.0
|
"@vitejs/plugin-react-swc": ^3.3.0
|
||||||
"@yarnpkg/pnpify": ^4.0.0-rc.42
|
"@yarnpkg/pnpify": ^4.0.0-rc.42
|
||||||
async-validator: ^4.2.5
|
async-validator: ^4.2.5
|
||||||
axios: ^1.3.5
|
axios: ^1.3.5
|
||||||
eslint: ^8.37.0
|
eslint: ^8.38.0
|
||||||
eslint-config-airbnb: ^19.0.4
|
eslint-config-airbnb: ^19.0.4
|
||||||
eslint-config-airbnb-typescript: ^17.0.0
|
eslint-config-airbnb-typescript: ^17.0.0
|
||||||
eslint-config-prettier: ^8.8.0
|
eslint-config-prettier: ^8.8.0
|
||||||
@@ -1759,13 +1773,13 @@ __metadata:
|
|||||||
react-toastify: ^9.1.2
|
react-toastify: ^9.1.2
|
||||||
rollup-plugin-visualizer: ^5.9.0
|
rollup-plugin-visualizer: ^5.9.0
|
||||||
sockette: ^2.0.6
|
sockette: ^2.0.6
|
||||||
terser: ^5.16.8
|
terser: ^5.16.9
|
||||||
typesafe-i18n: ^5.24.3
|
typesafe-i18n: ^5.24.3
|
||||||
typescript: ^5.0.3
|
typescript: ^5.0.4
|
||||||
vite: ^4.2.1
|
vite: ^4.2.1
|
||||||
vite-plugin-minify: ^1.5.2
|
vite-plugin-minify: ^1.5.2
|
||||||
vite-plugin-svgr: ^2.4.0
|
vite-plugin-svgr: ^2.4.0
|
||||||
vite-tsconfig-paths: ^4.0.8
|
vite-tsconfig-paths: ^4.1.0
|
||||||
languageName: unknown
|
languageName: unknown
|
||||||
linkType: soft
|
linkType: soft
|
||||||
|
|
||||||
@@ -3134,14 +3148,14 @@ __metadata:
|
|||||||
languageName: node
|
languageName: node
|
||||||
linkType: hard
|
linkType: hard
|
||||||
|
|
||||||
"eslint@npm:^8.37.0":
|
"eslint@npm:^8.38.0":
|
||||||
version: 8.37.0
|
version: 8.38.0
|
||||||
resolution: "eslint@npm:8.37.0"
|
resolution: "eslint@npm:8.38.0"
|
||||||
dependencies:
|
dependencies:
|
||||||
"@eslint-community/eslint-utils": ^4.2.0
|
"@eslint-community/eslint-utils": ^4.2.0
|
||||||
"@eslint-community/regexpp": ^4.4.0
|
"@eslint-community/regexpp": ^4.4.0
|
||||||
"@eslint/eslintrc": ^2.0.2
|
"@eslint/eslintrc": ^2.0.2
|
||||||
"@eslint/js": 8.37.0
|
"@eslint/js": 8.38.0
|
||||||
"@humanwhocodes/config-array": ^0.11.8
|
"@humanwhocodes/config-array": ^0.11.8
|
||||||
"@humanwhocodes/module-importer": ^1.0.1
|
"@humanwhocodes/module-importer": ^1.0.1
|
||||||
"@nodelib/fs.walk": ^1.2.8
|
"@nodelib/fs.walk": ^1.2.8
|
||||||
@@ -3180,7 +3194,7 @@ __metadata:
|
|||||||
text-table: ^0.2.0
|
text-table: ^0.2.0
|
||||||
bin:
|
bin:
|
||||||
eslint: bin/eslint.js
|
eslint: bin/eslint.js
|
||||||
checksum: 3798781652b1c32d8a4a654c2dd7f2abbff808a806ddd7fd8f86a49586a824854369943d49ee52dcda47b8b03cd49585820f2ab69fc61bb17a0d7677785a2cf7
|
checksum: 1aeba0106770bd29834bb01550c72fa0ebea851ceeaef61d2860ecb455391992b316f222600939f11d12db2a7ea6fb9443f4aa137566f98f9f26af9fa40b96b5
|
||||||
languageName: node
|
languageName: node
|
||||||
linkType: hard
|
linkType: hard
|
||||||
|
|
||||||
@@ -6042,7 +6056,7 @@ __metadata:
|
|||||||
languageName: node
|
languageName: node
|
||||||
linkType: hard
|
linkType: hard
|
||||||
|
|
||||||
"terser@npm:^5.10.0, terser@npm:^5.16.8":
|
"terser@npm:^5.10.0":
|
||||||
version: 5.16.8
|
version: 5.16.8
|
||||||
resolution: "terser@npm:5.16.8"
|
resolution: "terser@npm:5.16.8"
|
||||||
dependencies:
|
dependencies:
|
||||||
@@ -6056,6 +6070,20 @@ __metadata:
|
|||||||
languageName: node
|
languageName: node
|
||||||
linkType: hard
|
linkType: hard
|
||||||
|
|
||||||
|
"terser@npm:^5.16.9":
|
||||||
|
version: 5.16.9
|
||||||
|
resolution: "terser@npm:5.16.9"
|
||||||
|
dependencies:
|
||||||
|
"@jridgewell/source-map": ^0.3.2
|
||||||
|
acorn: ^8.5.0
|
||||||
|
commander: ^2.20.0
|
||||||
|
source-map-support: ~0.5.20
|
||||||
|
bin:
|
||||||
|
terser: bin/terser
|
||||||
|
checksum: eb883b606aa698e314957aa2cf6e70c1dc632d0d2dcda13e7a2cc73569a05034721826c0d6f9b31c6bb08bbc4fc633b6591871814dada71da9d34af9e284dc4f
|
||||||
|
languageName: node
|
||||||
|
linkType: hard
|
||||||
|
|
||||||
"text-table@npm:^0.2.0":
|
"text-table@npm:^0.2.0":
|
||||||
version: 0.2.0
|
version: 0.2.0
|
||||||
resolution: "text-table@npm:0.2.0"
|
resolution: "text-table@npm:0.2.0"
|
||||||
@@ -6217,23 +6245,23 @@ __metadata:
|
|||||||
languageName: node
|
languageName: node
|
||||||
linkType: hard
|
linkType: hard
|
||||||
|
|
||||||
"typescript@npm:^5.0.3":
|
"typescript@npm:^5.0.4":
|
||||||
version: 5.0.3
|
version: 5.0.4
|
||||||
resolution: "typescript@npm:5.0.3"
|
resolution: "typescript@npm:5.0.4"
|
||||||
bin:
|
bin:
|
||||||
tsc: bin/tsc
|
tsc: bin/tsc
|
||||||
tsserver: bin/tsserver
|
tsserver: bin/tsserver
|
||||||
checksum: 13221c7f7dd2aa9cf8ac2fb1b5ca3825ff3d97a43b4656fd22ca36c0ec30179643b5157d620c3e4af9d3fc9234a571bd3ea175624b3d37c494d7ed159b038df2
|
checksum: 2f5bd1cead194905957cb34e220b1d6ff1662399adef8ec1864f74620922d860ee35b6e50eafb3b636ea6fd437195e454e1146cb630a4236b5095ed7617395c2
|
||||||
languageName: node
|
languageName: node
|
||||||
linkType: hard
|
linkType: hard
|
||||||
|
|
||||||
"typescript@patch:typescript@^5.0.3#~builtin<compat/typescript>":
|
"typescript@patch:typescript@^5.0.4#~builtin<compat/typescript>":
|
||||||
version: 5.0.3
|
version: 5.0.4
|
||||||
resolution: "typescript@patch:typescript@npm%3A5.0.3#~builtin<compat/typescript>::version=5.0.3&hash=1f5320"
|
resolution: "typescript@patch:typescript@npm%3A5.0.4#~builtin<compat/typescript>::version=5.0.4&hash=1f5320"
|
||||||
bin:
|
bin:
|
||||||
tsc: bin/tsc
|
tsc: bin/tsc
|
||||||
tsserver: bin/tsserver
|
tsserver: bin/tsserver
|
||||||
checksum: 7e50cd198d2f7f052ac4e10d9a9b6e88ed91b3434c32b6e82f278a4e33727b42fee5d33929ef8a633b409a6bf62fd4bb95df464809507b7a703a4c73269dce3c
|
checksum: db16dd188048c172051825c7e6eea3e6bf577020625e5635fb8265d22683897d9ed7579b41a3a3e961fba5728c58e324d52041e9ca21d0dfc4bafa8bcf8e7a4b
|
||||||
languageName: node
|
languageName: node
|
||||||
linkType: hard
|
linkType: hard
|
||||||
|
|
||||||
@@ -6337,9 +6365,9 @@ __metadata:
|
|||||||
languageName: node
|
languageName: node
|
||||||
linkType: hard
|
linkType: hard
|
||||||
|
|
||||||
"vite-tsconfig-paths@npm:^4.0.8":
|
"vite-tsconfig-paths@npm:^4.1.0":
|
||||||
version: 4.0.8
|
version: 4.1.0
|
||||||
resolution: "vite-tsconfig-paths@npm:4.0.8"
|
resolution: "vite-tsconfig-paths@npm:4.1.0"
|
||||||
dependencies:
|
dependencies:
|
||||||
debug: ^4.1.1
|
debug: ^4.1.1
|
||||||
globrex: ^0.1.2
|
globrex: ^0.1.2
|
||||||
@@ -6349,7 +6377,7 @@ __metadata:
|
|||||||
peerDependenciesMeta:
|
peerDependenciesMeta:
|
||||||
vite:
|
vite:
|
||||||
optional: true
|
optional: true
|
||||||
checksum: 754e404a085668cbd1da08e4ebac7aef09efc3357524273d34bb68ab4dd705b8a0cce9e98c7bd0828f1c525669bf5f165d09c8d81c47011c6a5185fc30bd60de
|
checksum: 9846dfdd7118067539728f88a3b5f6a109d01392fa83bef6ad0505def2b1ed24579a4955df7db4b3ab60e9a816867a48e8b508f34030ef0d20b773293c91298d
|
||||||
languageName: node
|
languageName: node
|
||||||
linkType: hard
|
linkType: hard
|
||||||
|
|
||||||
|
|||||||
@@ -599,6 +599,32 @@ const emsesp_devicedata_4 = {
|
|||||||
]
|
]
|
||||||
};
|
};
|
||||||
|
|
||||||
|
// CUSTOM ENTITIES
|
||||||
|
let emsesp_entities = {
|
||||||
|
entities: [
|
||||||
|
{
|
||||||
|
id: 0,
|
||||||
|
name: 'test1',
|
||||||
|
device_id: 8,
|
||||||
|
type_id: 2,
|
||||||
|
offset: 0,
|
||||||
|
factor: 0,
|
||||||
|
uom: 2,
|
||||||
|
val_type: 2
|
||||||
|
},
|
||||||
|
{
|
||||||
|
id: 1,
|
||||||
|
name: 'test2',
|
||||||
|
device_id: 11,
|
||||||
|
type_id: 222,
|
||||||
|
offset: 2,
|
||||||
|
factor: 2,
|
||||||
|
uom: 4,
|
||||||
|
val_type: 5
|
||||||
|
}
|
||||||
|
]
|
||||||
|
};
|
||||||
|
|
||||||
// SCHEDULE
|
// SCHEDULE
|
||||||
let emsesp_schedule = {
|
let emsesp_schedule = {
|
||||||
schedule: [
|
schedule: [
|
||||||
@@ -1369,6 +1395,12 @@ rest_server.get(GET_SCHEDULE_ENDPOINT, (req, res) => {
|
|||||||
res.json(emsesp_schedule);
|
res.json(emsesp_schedule);
|
||||||
});
|
});
|
||||||
|
|
||||||
|
const GET_ENTITIES_ENDPOINT = REST_ENDPOINT_ROOT + 'entities';
|
||||||
|
rest_server.get(GET_ENTITIES_ENDPOINT, (req, res) => {
|
||||||
|
console.log('Sending Entities data');
|
||||||
|
res.json(emsesp_entities);
|
||||||
|
});
|
||||||
|
|
||||||
// start server
|
// start server
|
||||||
const expressServer = rest_server.listen(port, () =>
|
const expressServer = rest_server.listen(port, () =>
|
||||||
console.log(`EMS-ESP REST API server running on http://localhost:${port}/`)
|
console.log(`EMS-ESP REST API server running on http://localhost:${port}/`)
|
||||||
|
|||||||
Reference in New Issue
Block a user