Перейти к основному содержимому

assetTelematicsLinkMachine

@mineflow/api-schemas


@mineflow/api-schemas / assetTelematicsLinkMachine

Variable: assetTelematicsLinkMachine

const assetTelematicsLinkMachine: StateMachine<AssetTelematicsLinkContext,
| {
performedBy: string;
type: "LINK";
}
| {
performedBy: string;
type: "SUSPEND";
}
| {
performedBy: string;
type: "RESUME";
}
| {
performedBy: string;
type: "UNLINK";
}, {
}, never, never, never, never, "suspended" | "unlinked" | "linked", string, NonReducibleUnknown, NonReducibleUnknown, EventObject, MetaObject, ToStateSchema<{
context: {
assetTelematicsLinkId: "";
};
id: "asset-telematics-link";
initial: "unlinked";
states: {
linked: {
on: {
SUSPEND: "suspended";
UNLINK: "unlinked";
};
};
suspended: {
on: {
RESUME: "linked";
UNLINK: "unlinked";
};
};
unlinked: {
on: {
LINK: "linked";
};
};
};
}>>;

Defined in: libs/telematics/src/links/state-machine/asset-telematics-link.machine.ts:17

FSM-спец AssetTelematicsLink (ADR-0022): entity = source of truth, машина = spec. Циклический жизненный цикл, без жёсткого терминала: unlinked — начальное/покоя. REGISTER (создание связки) и CALIBRATE (атрибут calibrationStatus) состояние НЕ меняют, поэтому в машине переходов нет.