@duet3d/objectmodel 3.5.0-beta.40 → 3.5.0-beta.42
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/index.js +1 -1
- package/package.json +2 -2
- package/dist/ModelCollection.d.ts +0 -37
- package/dist/ModelCollection.js +0 -103
- package/dist/ModelDictionary.d.ts +0 -46
- package/dist/ModelDictionary.js +0 -108
- package/dist/ModelObject.d.ts +0 -47
- package/dist/ModelObject.js +0 -212
- package/dist/ModelSet.d.ts +0 -11
- package/dist/ModelSet.js +0 -15
- package/dist/ObjectModel.d.ts +0 -46
- package/dist/ObjectModel.js +0 -53
- package/dist/boards/index.d.ts +0 -52
- package/dist/boards/index.js +0 -81
- package/dist/directories/index.d.ts +0 -11
- package/dist/directories/index.js +0 -18
- package/dist/fans/index.d.ts +0 -19
- package/dist/fans/index.js +0 -30
- package/dist/heat/Heater.d.ts +0 -28
- package/dist/heat/Heater.js +0 -36
- package/dist/heat/HeaterModel.d.ts +0 -21
- package/dist/heat/HeaterModel.js +0 -32
- package/dist/heat/HeaterMonitor.d.ts +0 -18
- package/dist/heat/HeaterMonitor.js +0 -27
- package/dist/heat/index.d.ts +0 -14
- package/dist/heat/index.js +0 -35
- package/dist/httpEndpoints/index.d.ts +0 -19
- package/dist/httpEndpoints/index.js +0 -27
- package/dist/index.d.ts +0 -26
- package/dist/inputs/CodeChannel.d.ts +0 -18
- package/dist/inputs/CodeChannel.js +0 -22
- package/dist/inputs/Compatibility.d.ts +0 -10
- package/dist/inputs/Compatibility.js +0 -14
- package/dist/inputs/InputChannel.d.ts +0 -30
- package/dist/inputs/InputChannel.js +0 -39
- package/dist/inputs/index.d.ts +0 -3
- package/dist/inputs/index.js +0 -19
- package/dist/job/Build.d.ts +0 -15
- package/dist/job/Build.js +0 -26
- package/dist/job/GCodeFileInfo.d.ts +0 -17
- package/dist/job/GCodeFileInfo.js +0 -24
- package/dist/job/ThumbnailInfo.d.ts +0 -15
- package/dist/job/ThumbnailInfo.js +0 -23
- package/dist/job/index.d.ts +0 -40
- package/dist/job/index.js +0 -70
- package/dist/limits/index.d.ts +0 -29
- package/dist/limits/index.js +0 -36
- package/dist/messages/index.d.ts +0 -13
- package/dist/messages/index.js +0 -27
- package/dist/move/Axis.d.ts +0 -47
- package/dist/move/Axis.js +0 -55
- package/dist/move/DriverId.d.ts +0 -10
- package/dist/move/DriverId.js +0 -49
- package/dist/move/Extruder.d.ts +0 -28
- package/dist/move/Extruder.js +0 -39
- package/dist/move/InputShaping.d.ts +0 -20
- package/dist/move/InputShaping.js +0 -28
- package/dist/move/KeepoutZone.d.ts +0 -10
- package/dist/move/KeepoutZone.js +0 -21
- package/dist/move/Microstepping.d.ts +0 -6
- package/dist/move/Microstepping.js +0 -13
- package/dist/move/MoveCalibration.d.ts +0 -11
- package/dist/move/MoveCalibration.js +0 -22
- package/dist/move/MoveCompensation.d.ts +0 -30
- package/dist/move/MoveCompensation.js +0 -47
- package/dist/move/index.d.ts +0 -61
- package/dist/move/index.js +0 -98
- package/dist/move/kinematics/CoreKinematics.d.ts +0 -9
- package/dist/move/kinematics/CoreKinematics.js +0 -31
- package/dist/move/kinematics/DeltaKinematics.d.ts +0 -20
- package/dist/move/kinematics/DeltaKinematics.js +0 -40
- package/dist/move/kinematics/HangprinterKinematics.d.ts +0 -9
- package/dist/move/kinematics/HangprinterKinematics.js +0 -28
- package/dist/move/kinematics/KinematicsBase.d.ts +0 -37
- package/dist/move/kinematics/KinematicsBase.js +0 -56
- package/dist/move/kinematics/PolarKinematics.d.ts +0 -7
- package/dist/move/kinematics/PolarKinematics.js +0 -21
- package/dist/move/kinematics/ScaraKinematics.d.ts +0 -6
- package/dist/move/kinematics/ScaraKinematics.js +0 -18
- package/dist/move/kinematics/index.d.ts +0 -14
- package/dist/move/kinematics/index.js +0 -73
- package/dist/network/NetworkInterface.d.ts +0 -41
- package/dist/network/NetworkInterface.js +0 -51
- package/dist/network/index.d.ts +0 -14
- package/dist/network/index.js +0 -35
- package/dist/package.json +0 -32
- package/dist/plugins/PluginManifest.d.ts +0 -64
- package/dist/plugins/PluginManifest.js +0 -114
- package/dist/plugins/index.d.ts +0 -9
- package/dist/plugins/index.js +0 -30
- package/dist/sensors/AnalogSensor.d.ts +0 -48
- package/dist/sensors/AnalogSensor.js +0 -57
- package/dist/sensors/Endstop.d.ts +0 -15
- package/dist/sensors/Endstop.js +0 -23
- package/dist/sensors/FilamentMonitors/FilamentMonitorBase.d.ts +0 -24
- package/dist/sensors/FilamentMonitors/FilamentMonitorBase.js +0 -32
- package/dist/sensors/FilamentMonitors/LaserFilamentMonitor.d.ts +0 -22
- package/dist/sensors/FilamentMonitors/LaserFilamentMonitor.js +0 -46
- package/dist/sensors/FilamentMonitors/PulsedFilamentMonitor.d.ts +0 -21
- package/dist/sensors/FilamentMonitors/PulsedFilamentMonitor.js +0 -45
- package/dist/sensors/FilamentMonitors/RotatingMagnetFilamentMonitor.d.ts +0 -22
- package/dist/sensors/FilamentMonitors/RotatingMagnetFilamentMonitor.js +0 -46
- package/dist/sensors/FilamentMonitors/index.d.ts +0 -11
- package/dist/sensors/FilamentMonitors/index.js +0 -51
- package/dist/sensors/Probe.d.ts +0 -33
- package/dist/sensors/Probe.js +0 -41
- package/dist/sensors/index.d.ts +0 -21
- package/dist/sensors/index.js +0 -46
- package/dist/spindles/index.d.ts +0 -20
- package/dist/spindles/index.js +0 -28
- package/dist/src/ModelCollection.d.ts +0 -37
- package/dist/src/ModelCollection.js +0 -103
- package/dist/src/ModelDictionary.d.ts +0 -46
- package/dist/src/ModelDictionary.js +0 -108
- package/dist/src/ModelObject.d.ts +0 -47
- package/dist/src/ModelObject.js +0 -212
- package/dist/src/ModelSet.d.ts +0 -11
- package/dist/src/ModelSet.js +0 -15
- package/dist/src/ObjectModel.d.ts +0 -52
- package/dist/src/ObjectModel.js +0 -64
- package/dist/src/boards/index.d.ts +0 -52
- package/dist/src/boards/index.js +0 -84
- package/dist/src/directories/index.d.ts +0 -11
- package/dist/src/directories/index.js +0 -21
- package/dist/src/fans/index.d.ts +0 -19
- package/dist/src/fans/index.js +0 -33
- package/dist/src/heat/Heater.d.ts +0 -28
- package/dist/src/heat/Heater.js +0 -39
- package/dist/src/heat/HeaterModel.d.ts +0 -21
- package/dist/src/heat/HeaterModel.js +0 -35
- package/dist/src/heat/HeaterMonitor.d.ts +0 -18
- package/dist/src/heat/HeaterMonitor.js +0 -30
- package/dist/src/heat/index.d.ts +0 -14
- package/dist/src/heat/index.js +0 -38
- package/dist/src/index.d.ts +0 -26
- package/dist/src/index.js +0 -58
- package/dist/src/inputs/CodeChannel.d.ts +0 -18
- package/dist/src/inputs/CodeChannel.js +0 -22
- package/dist/src/inputs/Compatibility.d.ts +0 -10
- package/dist/src/inputs/Compatibility.js +0 -14
- package/dist/src/inputs/InputChannel.d.ts +0 -30
- package/dist/src/inputs/InputChannel.js +0 -42
- package/dist/src/inputs/index.d.ts +0 -3
- package/dist/src/inputs/index.js +0 -19
- package/dist/src/job/Build.d.ts +0 -15
- package/dist/src/job/Build.js +0 -29
- package/dist/src/job/GCodeFileInfo.d.ts +0 -17
- package/dist/src/job/GCodeFileInfo.js +0 -27
- package/dist/src/job/ThumbnailInfo.d.ts +0 -15
- package/dist/src/job/ThumbnailInfo.js +0 -23
- package/dist/src/job/index.d.ts +0 -40
- package/dist/src/job/index.js +0 -73
- package/dist/src/limits/index.d.ts +0 -29
- package/dist/src/limits/index.js +0 -39
- package/dist/src/messages/index.d.ts +0 -13
- package/dist/src/messages/index.js +0 -30
- package/dist/src/move/Axis.d.ts +0 -47
- package/dist/src/move/Axis.js +0 -58
- package/dist/src/move/DriverId.d.ts +0 -10
- package/dist/src/move/DriverId.js +0 -52
- package/dist/src/move/Extruder.d.ts +0 -28
- package/dist/src/move/Extruder.js +0 -42
- package/dist/src/move/InputShaping.d.ts +0 -20
- package/dist/src/move/InputShaping.js +0 -31
- package/dist/src/move/KeepoutZone.d.ts +0 -10
- package/dist/src/move/KeepoutZone.js +0 -21
- package/dist/src/move/Microstepping.d.ts +0 -6
- package/dist/src/move/Microstepping.js +0 -16
- package/dist/src/move/MoveCalibration.d.ts +0 -11
- package/dist/src/move/MoveCalibration.js +0 -25
- package/dist/src/move/MoveCompensation.d.ts +0 -30
- package/dist/src/move/MoveCompensation.js +0 -50
- package/dist/src/move/index.d.ts +0 -61
- package/dist/src/move/index.js +0 -101
- package/dist/src/move/kinematics/CoreKinematics.d.ts +0 -9
- package/dist/src/move/kinematics/CoreKinematics.js +0 -31
- package/dist/src/move/kinematics/DeltaKinematics.d.ts +0 -20
- package/dist/src/move/kinematics/DeltaKinematics.js +0 -43
- package/dist/src/move/kinematics/HangprinterKinematics.d.ts +0 -9
- package/dist/src/move/kinematics/HangprinterKinematics.js +0 -51
- package/dist/src/move/kinematics/KinematicsBase.d.ts +0 -37
- package/dist/src/move/kinematics/KinematicsBase.js +0 -59
- package/dist/src/move/kinematics/PolarKinematics.d.ts +0 -7
- package/dist/src/move/kinematics/PolarKinematics.js +0 -44
- package/dist/src/move/kinematics/ScaraKinematics.d.ts +0 -6
- package/dist/src/move/kinematics/ScaraKinematics.js +0 -18
- package/dist/src/move/kinematics/index.d.ts +0 -14
- package/dist/src/move/kinematics/index.js +0 -88
- package/dist/src/network/NetworkInterface.d.ts +0 -41
- package/dist/src/network/NetworkInterface.js +0 -54
- package/dist/src/network/index.d.ts +0 -14
- package/dist/src/network/index.js +0 -38
- package/dist/src/plugins/PluginManifest.d.ts +0 -64
- package/dist/src/plugins/PluginManifest.js +0 -117
- package/dist/src/plugins/index.d.ts +0 -9
- package/dist/src/plugins/index.js +0 -33
- package/dist/src/sbc/CPU.d.ts +0 -8
- package/dist/src/sbc/CPU.js +0 -18
- package/dist/src/sbc/Memory.d.ts +0 -6
- package/dist/src/sbc/Memory.js +0 -16
- package/dist/src/sbc/dsf/HttpEndpoint.d.ts +0 -19
- package/dist/src/sbc/dsf/HttpEndpoint.js +0 -30
- package/dist/src/sbc/dsf/index.d.ts +0 -11
- package/dist/src/sbc/dsf/index.js +0 -36
- package/dist/src/sbc/index.d.ts +0 -19
- package/dist/src/sbc/index.js +0 -43
- package/dist/src/sensors/AnalogSensor.d.ts +0 -48
- package/dist/src/sensors/AnalogSensor.js +0 -60
- package/dist/src/sensors/Endstop.d.ts +0 -15
- package/dist/src/sensors/Endstop.js +0 -26
- package/dist/src/sensors/FilamentMonitors/FilamentMonitorBase.d.ts +0 -24
- package/dist/src/sensors/FilamentMonitors/FilamentMonitorBase.js +0 -35
- package/dist/src/sensors/FilamentMonitors/LaserFilamentMonitor.d.ts +0 -22
- package/dist/src/sensors/FilamentMonitors/LaserFilamentMonitor.js +0 -72
- package/dist/src/sensors/FilamentMonitors/PulsedFilamentMonitor.d.ts +0 -21
- package/dist/src/sensors/FilamentMonitors/PulsedFilamentMonitor.js +0 -71
- package/dist/src/sensors/FilamentMonitors/RotatingMagnetFilamentMonitor.d.ts +0 -22
- package/dist/src/sensors/FilamentMonitors/RotatingMagnetFilamentMonitor.js +0 -72
- package/dist/src/sensors/FilamentMonitors/index.d.ts +0 -11
- package/dist/src/sensors/FilamentMonitors/index.js +0 -66
- package/dist/src/sensors/Probe.d.ts +0 -33
- package/dist/src/sensors/Probe.js +0 -44
- package/dist/src/sensors/index.d.ts +0 -21
- package/dist/src/sensors/index.js +0 -49
- package/dist/src/spindles/index.d.ts +0 -20
- package/dist/src/spindles/index.js +0 -31
- package/dist/src/state/MachineStatus.d.ts +0 -17
- package/dist/src/state/MachineStatus.js +0 -21
- package/dist/src/state/MessageBox.d.ts +0 -26
- package/dist/src/state/MessageBox.js +0 -42
- package/dist/src/state/RestorePoint.d.ts +0 -12
- package/dist/src/state/RestorePoint.js +0 -22
- package/dist/src/state/index.d.ts +0 -60
- package/dist/src/state/index.js +0 -100
- package/dist/src/tools/index.d.ts +0 -26
- package/dist/src/tools/index.js +0 -37
- package/dist/src/userSessions/index.d.ts +0 -18
- package/dist/src/userSessions/index.js +0 -30
- package/dist/src/volumes/index.d.ts +0 -11
- package/dist/src/volumes/index.js +0 -21
- package/dist/state/MachineStatus.d.ts +0 -17
- package/dist/state/MachineStatus.js +0 -21
- package/dist/state/MessageBox.d.ts +0 -26
- package/dist/state/MessageBox.js +0 -39
- package/dist/state/RestorePoint.d.ts +0 -12
- package/dist/state/RestorePoint.js +0 -19
- package/dist/state/index.d.ts +0 -63
- package/dist/state/index.js +0 -100
- package/dist/tools/index.d.ts +0 -26
- package/dist/tools/index.js +0 -34
- package/dist/userSessions/index.d.ts +0 -18
- package/dist/userSessions/index.js +0 -27
- package/dist/volumes/index.d.ts +0 -11
- package/dist/volumes/index.js +0 -18
|
@@ -1,32 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.FilamentMonitorBase = exports.FilamentMonitorType = exports.FilamentMonitorStatus = void 0;
|
|
4
|
-
const ModelObject_1 = require("../../ModelObject");
|
|
5
|
-
var FilamentMonitorStatus;
|
|
6
|
-
(function (FilamentMonitorStatus) {
|
|
7
|
-
FilamentMonitorStatus["noMonitor"] = "noMonitor";
|
|
8
|
-
FilamentMonitorStatus["ok"] = "ok";
|
|
9
|
-
FilamentMonitorStatus["noDataReceived"] = "noDataReceived";
|
|
10
|
-
FilamentMonitorStatus["noFilament"] = "noFilament";
|
|
11
|
-
FilamentMonitorStatus["tooLittleMovement"] = "tooLittleMovement";
|
|
12
|
-
FilamentMonitorStatus["tooMuchMovement"] = "tooMuchMovement";
|
|
13
|
-
FilamentMonitorStatus["sensorError"] = "sensorError";
|
|
14
|
-
})(FilamentMonitorStatus = exports.FilamentMonitorStatus || (exports.FilamentMonitorStatus = {}));
|
|
15
|
-
var FilamentMonitorType;
|
|
16
|
-
(function (FilamentMonitorType) {
|
|
17
|
-
FilamentMonitorType["simple"] = "simple";
|
|
18
|
-
FilamentMonitorType["laser"] = "laser";
|
|
19
|
-
FilamentMonitorType["pulsed"] = "pulsed";
|
|
20
|
-
FilamentMonitorType["rotatingMagnet"] = "rotatingMagnet";
|
|
21
|
-
FilamentMonitorType["unknown"] = "unknown";
|
|
22
|
-
})(FilamentMonitorType = exports.FilamentMonitorType || (exports.FilamentMonitorType = {}));
|
|
23
|
-
class FilamentMonitorBase extends ModelObject_1.default {
|
|
24
|
-
constructor(type = FilamentMonitorType.unknown) {
|
|
25
|
-
super();
|
|
26
|
-
this.enabled = false;
|
|
27
|
-
this.status = FilamentMonitorStatus.noDataReceived;
|
|
28
|
-
this.type = type;
|
|
29
|
-
}
|
|
30
|
-
}
|
|
31
|
-
exports.FilamentMonitorBase = FilamentMonitorBase;
|
|
32
|
-
exports.default = FilamentMonitorBase;
|
|
@@ -1,22 +0,0 @@
|
|
|
1
|
-
import ModelObject, { IModelObject } from "../../ModelObject";
|
|
2
|
-
import FilamentMonitorBase from "./FilamentMonitorBase";
|
|
3
|
-
export declare class LaserFilamentMonitorCalibrated extends ModelObject {
|
|
4
|
-
calibrationFactor: number;
|
|
5
|
-
percentMax: number;
|
|
6
|
-
percentMin: number;
|
|
7
|
-
sensivity: number;
|
|
8
|
-
totalDistance: number;
|
|
9
|
-
}
|
|
10
|
-
export declare class LaserFilamentMonitorConfigured extends ModelObject {
|
|
11
|
-
allMoves: boolean;
|
|
12
|
-
percentMax: number;
|
|
13
|
-
percentMin: number;
|
|
14
|
-
sampleDistance: number;
|
|
15
|
-
}
|
|
16
|
-
export declare class LaserFilamentMonitor extends FilamentMonitorBase {
|
|
17
|
-
constructor();
|
|
18
|
-
calibrated: LaserFilamentMonitorCalibrated | null;
|
|
19
|
-
readonly configured: LaserFilamentMonitorConfigured;
|
|
20
|
-
update(jsonElement: any): IModelObject | null;
|
|
21
|
-
}
|
|
22
|
-
export default LaserFilamentMonitor;
|
|
@@ -1,46 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.LaserFilamentMonitor = exports.LaserFilamentMonitorConfigured = exports.LaserFilamentMonitorCalibrated = void 0;
|
|
4
|
-
const ModelObject_1 = require("../../ModelObject");
|
|
5
|
-
const FilamentMonitorBase_1 = require("./FilamentMonitorBase");
|
|
6
|
-
const index_1 = require("./index");
|
|
7
|
-
class LaserFilamentMonitorCalibrated extends ModelObject_1.default {
|
|
8
|
-
constructor() {
|
|
9
|
-
super(...arguments);
|
|
10
|
-
this.calibrationFactor = 0;
|
|
11
|
-
this.percentMax = 0;
|
|
12
|
-
this.percentMin = 0;
|
|
13
|
-
this.sensivity = 0;
|
|
14
|
-
this.totalDistance = 0;
|
|
15
|
-
}
|
|
16
|
-
}
|
|
17
|
-
exports.LaserFilamentMonitorCalibrated = LaserFilamentMonitorCalibrated;
|
|
18
|
-
class LaserFilamentMonitorConfigured extends ModelObject_1.default {
|
|
19
|
-
constructor() {
|
|
20
|
-
super(...arguments);
|
|
21
|
-
this.allMoves = false;
|
|
22
|
-
this.percentMax = 0;
|
|
23
|
-
this.percentMin = 0;
|
|
24
|
-
this.sampleDistance = 0;
|
|
25
|
-
}
|
|
26
|
-
}
|
|
27
|
-
exports.LaserFilamentMonitorConfigured = LaserFilamentMonitorConfigured;
|
|
28
|
-
class LaserFilamentMonitor extends FilamentMonitorBase_1.default {
|
|
29
|
-
constructor() {
|
|
30
|
-
super(FilamentMonitorBase_1.FilamentMonitorType.laser);
|
|
31
|
-
this.calibrated = new LaserFilamentMonitorCalibrated();
|
|
32
|
-
this.configured = new LaserFilamentMonitorConfigured();
|
|
33
|
-
ModelObject_1.default.wrapModelProperty(this, "calibrated", LaserFilamentMonitorCalibrated);
|
|
34
|
-
}
|
|
35
|
-
update(jsonElement) {
|
|
36
|
-
if (jsonElement === null) {
|
|
37
|
-
return null;
|
|
38
|
-
}
|
|
39
|
-
if (typeof jsonElement.type === "string" && jsonElement.type !== this.type) {
|
|
40
|
-
return (0, index_1.getFilamentMonitor)(jsonElement.type).update(jsonElement);
|
|
41
|
-
}
|
|
42
|
-
return super.update(jsonElement);
|
|
43
|
-
}
|
|
44
|
-
}
|
|
45
|
-
exports.LaserFilamentMonitor = LaserFilamentMonitor;
|
|
46
|
-
exports.default = LaserFilamentMonitor;
|
|
@@ -1,21 +0,0 @@
|
|
|
1
|
-
import ModelObject, { IModelObject } from "../../ModelObject";
|
|
2
|
-
import FilamentMonitorBase from "./FilamentMonitorBase";
|
|
3
|
-
export declare class PulsedFilamentMonitorCalibrated extends ModelObject {
|
|
4
|
-
mmPerPulse: number;
|
|
5
|
-
percentMax: number;
|
|
6
|
-
percentMin: number;
|
|
7
|
-
totalDistance: number;
|
|
8
|
-
}
|
|
9
|
-
export declare class PulsedFilamentMonitorConfigured extends ModelObject {
|
|
10
|
-
mmPerPulse: number;
|
|
11
|
-
percentMax: number;
|
|
12
|
-
percentMin: number;
|
|
13
|
-
sampleDistance: number;
|
|
14
|
-
}
|
|
15
|
-
export declare class PulsedFilamentMonitor extends FilamentMonitorBase {
|
|
16
|
-
constructor();
|
|
17
|
-
calibrated: PulsedFilamentMonitorCalibrated | null;
|
|
18
|
-
readonly configured: PulsedFilamentMonitorConfigured;
|
|
19
|
-
update(jsonElement: any): IModelObject | null;
|
|
20
|
-
}
|
|
21
|
-
export default PulsedFilamentMonitor;
|
|
@@ -1,45 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.PulsedFilamentMonitor = exports.PulsedFilamentMonitorConfigured = exports.PulsedFilamentMonitorCalibrated = void 0;
|
|
4
|
-
const ModelObject_1 = require("../../ModelObject");
|
|
5
|
-
const FilamentMonitorBase_1 = require("./FilamentMonitorBase");
|
|
6
|
-
const index_1 = require("./index");
|
|
7
|
-
class PulsedFilamentMonitorCalibrated extends ModelObject_1.default {
|
|
8
|
-
constructor() {
|
|
9
|
-
super(...arguments);
|
|
10
|
-
this.mmPerPulse = 0;
|
|
11
|
-
this.percentMax = 0;
|
|
12
|
-
this.percentMin = 0;
|
|
13
|
-
this.totalDistance = 0;
|
|
14
|
-
}
|
|
15
|
-
}
|
|
16
|
-
exports.PulsedFilamentMonitorCalibrated = PulsedFilamentMonitorCalibrated;
|
|
17
|
-
class PulsedFilamentMonitorConfigured extends ModelObject_1.default {
|
|
18
|
-
constructor() {
|
|
19
|
-
super(...arguments);
|
|
20
|
-
this.mmPerPulse = 0;
|
|
21
|
-
this.percentMax = 0;
|
|
22
|
-
this.percentMin = 0;
|
|
23
|
-
this.sampleDistance = 0;
|
|
24
|
-
}
|
|
25
|
-
}
|
|
26
|
-
exports.PulsedFilamentMonitorConfigured = PulsedFilamentMonitorConfigured;
|
|
27
|
-
class PulsedFilamentMonitor extends FilamentMonitorBase_1.default {
|
|
28
|
-
constructor() {
|
|
29
|
-
super(FilamentMonitorBase_1.FilamentMonitorType.pulsed);
|
|
30
|
-
this.calibrated = new PulsedFilamentMonitorCalibrated();
|
|
31
|
-
this.configured = new PulsedFilamentMonitorConfigured();
|
|
32
|
-
ModelObject_1.default.wrapModelProperty(this, "calibrated", PulsedFilamentMonitorCalibrated);
|
|
33
|
-
}
|
|
34
|
-
update(jsonElement) {
|
|
35
|
-
if (jsonElement === null) {
|
|
36
|
-
return null;
|
|
37
|
-
}
|
|
38
|
-
if (typeof jsonElement.type === "string" && jsonElement.type !== this.type) {
|
|
39
|
-
return (0, index_1.getFilamentMonitor)(jsonElement.type).update(jsonElement);
|
|
40
|
-
}
|
|
41
|
-
return super.update(jsonElement);
|
|
42
|
-
}
|
|
43
|
-
}
|
|
44
|
-
exports.PulsedFilamentMonitor = PulsedFilamentMonitor;
|
|
45
|
-
exports.default = PulsedFilamentMonitor;
|
|
@@ -1,22 +0,0 @@
|
|
|
1
|
-
import ModelObject, { IModelObject } from "../../ModelObject";
|
|
2
|
-
import FilamentMonitorBase from "./FilamentMonitorBase";
|
|
3
|
-
export declare class RotatingMagnetFilamentMonitorCalibrated extends ModelObject {
|
|
4
|
-
mmPerPulse: number;
|
|
5
|
-
percentMax: number;
|
|
6
|
-
percentMin: number;
|
|
7
|
-
totalDistance: number;
|
|
8
|
-
}
|
|
9
|
-
export declare class RotatingMagnetFilamentMonitorConfigured extends ModelObject {
|
|
10
|
-
allMoves: boolean;
|
|
11
|
-
mmPerRev: number;
|
|
12
|
-
percentMax: number;
|
|
13
|
-
percentMin: number;
|
|
14
|
-
sampleDistance: number;
|
|
15
|
-
}
|
|
16
|
-
export declare class RotatingMagnetFilamentMonitor extends FilamentMonitorBase {
|
|
17
|
-
constructor();
|
|
18
|
-
calibrated: RotatingMagnetFilamentMonitorCalibrated | null;
|
|
19
|
-
readonly configured: RotatingMagnetFilamentMonitorConfigured;
|
|
20
|
-
update(jsonElement: any): IModelObject | null;
|
|
21
|
-
}
|
|
22
|
-
export default RotatingMagnetFilamentMonitor;
|
|
@@ -1,46 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.RotatingMagnetFilamentMonitor = exports.RotatingMagnetFilamentMonitorConfigured = exports.RotatingMagnetFilamentMonitorCalibrated = void 0;
|
|
4
|
-
const ModelObject_1 = require("../../ModelObject");
|
|
5
|
-
const FilamentMonitorBase_1 = require("./FilamentMonitorBase");
|
|
6
|
-
const index_1 = require("./index");
|
|
7
|
-
class RotatingMagnetFilamentMonitorCalibrated extends ModelObject_1.default {
|
|
8
|
-
constructor() {
|
|
9
|
-
super(...arguments);
|
|
10
|
-
this.mmPerPulse = 0;
|
|
11
|
-
this.percentMax = 0;
|
|
12
|
-
this.percentMin = 0;
|
|
13
|
-
this.totalDistance = 0;
|
|
14
|
-
}
|
|
15
|
-
}
|
|
16
|
-
exports.RotatingMagnetFilamentMonitorCalibrated = RotatingMagnetFilamentMonitorCalibrated;
|
|
17
|
-
class RotatingMagnetFilamentMonitorConfigured extends ModelObject_1.default {
|
|
18
|
-
constructor() {
|
|
19
|
-
super(...arguments);
|
|
20
|
-
this.allMoves = false;
|
|
21
|
-
this.mmPerRev = 0;
|
|
22
|
-
this.percentMax = 0;
|
|
23
|
-
this.percentMin = 0;
|
|
24
|
-
this.sampleDistance = 0;
|
|
25
|
-
}
|
|
26
|
-
}
|
|
27
|
-
exports.RotatingMagnetFilamentMonitorConfigured = RotatingMagnetFilamentMonitorConfigured;
|
|
28
|
-
class RotatingMagnetFilamentMonitor extends FilamentMonitorBase_1.default {
|
|
29
|
-
constructor() {
|
|
30
|
-
super(FilamentMonitorBase_1.FilamentMonitorType.rotatingMagnet);
|
|
31
|
-
this.calibrated = new RotatingMagnetFilamentMonitorCalibrated();
|
|
32
|
-
this.configured = new RotatingMagnetFilamentMonitorConfigured();
|
|
33
|
-
ModelObject_1.default.wrapModelProperty(this, "calibrated", RotatingMagnetFilamentMonitorCalibrated);
|
|
34
|
-
}
|
|
35
|
-
update(jsonElement) {
|
|
36
|
-
if (jsonElement === null) {
|
|
37
|
-
return null;
|
|
38
|
-
}
|
|
39
|
-
if (typeof jsonElement.type === "string" && jsonElement.type !== this.type) {
|
|
40
|
-
return (0, index_1.getFilamentMonitor)(jsonElement.type).update(jsonElement);
|
|
41
|
-
}
|
|
42
|
-
return super.update(jsonElement);
|
|
43
|
-
}
|
|
44
|
-
}
|
|
45
|
-
exports.RotatingMagnetFilamentMonitor = RotatingMagnetFilamentMonitor;
|
|
46
|
-
exports.default = RotatingMagnetFilamentMonitor;
|
|
@@ -1,11 +0,0 @@
|
|
|
1
|
-
import { IModelObject } from "../../ModelObject";
|
|
2
|
-
import FilamentMonitorBase, { FilamentMonitorType } from "./FilamentMonitorBase";
|
|
3
|
-
export declare class FilamentMonitor extends FilamentMonitorBase {
|
|
4
|
-
update(jsonElement: any): IModelObject | null;
|
|
5
|
-
}
|
|
6
|
-
export default FilamentMonitor;
|
|
7
|
-
export declare function getFilamentMonitor(type: FilamentMonitorType): FilamentMonitorBase;
|
|
8
|
-
export * from "./FilamentMonitorBase";
|
|
9
|
-
export * from "./LaserFilamentMonitor";
|
|
10
|
-
export * from "./PulsedFilamentMonitor";
|
|
11
|
-
export * from "./RotatingMagnetFilamentMonitor";
|
|
@@ -1,51 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
-
if (k2 === undefined) k2 = k;
|
|
4
|
-
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
-
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
-
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
-
}
|
|
8
|
-
Object.defineProperty(o, k2, desc);
|
|
9
|
-
}) : (function(o, m, k, k2) {
|
|
10
|
-
if (k2 === undefined) k2 = k;
|
|
11
|
-
o[k2] = m[k];
|
|
12
|
-
}));
|
|
13
|
-
var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
14
|
-
for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
|
|
15
|
-
};
|
|
16
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
17
|
-
exports.getFilamentMonitor = exports.FilamentMonitor = void 0;
|
|
18
|
-
const FilamentMonitorBase_1 = require("./FilamentMonitorBase");
|
|
19
|
-
const LaserFilamentMonitor_1 = require("./LaserFilamentMonitor");
|
|
20
|
-
const PulsedFilamentMonitor_1 = require("./PulsedFilamentMonitor");
|
|
21
|
-
const RotatingMagnetFilamentMonitor_1 = require("./RotatingMagnetFilamentMonitor");
|
|
22
|
-
class FilamentMonitor extends FilamentMonitorBase_1.default {
|
|
23
|
-
update(jsonElement) {
|
|
24
|
-
if (jsonElement === null) {
|
|
25
|
-
return null;
|
|
26
|
-
}
|
|
27
|
-
if (typeof jsonElement.type === "string" && jsonElement.type !== this.type) {
|
|
28
|
-
return getFilamentMonitor(jsonElement.type).update(jsonElement);
|
|
29
|
-
}
|
|
30
|
-
return super.update(jsonElement);
|
|
31
|
-
}
|
|
32
|
-
}
|
|
33
|
-
exports.FilamentMonitor = FilamentMonitor;
|
|
34
|
-
exports.default = FilamentMonitor;
|
|
35
|
-
function getFilamentMonitor(type) {
|
|
36
|
-
switch (type) {
|
|
37
|
-
case FilamentMonitorBase_1.FilamentMonitorType.laser:
|
|
38
|
-
return new LaserFilamentMonitor_1.default();
|
|
39
|
-
case FilamentMonitorBase_1.FilamentMonitorType.pulsed:
|
|
40
|
-
return new PulsedFilamentMonitor_1.default();
|
|
41
|
-
case FilamentMonitorBase_1.FilamentMonitorType.rotatingMagnet:
|
|
42
|
-
return new RotatingMagnetFilamentMonitor_1.default();
|
|
43
|
-
default:
|
|
44
|
-
return new FilamentMonitor(type);
|
|
45
|
-
}
|
|
46
|
-
}
|
|
47
|
-
exports.getFilamentMonitor = getFilamentMonitor;
|
|
48
|
-
__exportStar(require("./FilamentMonitorBase"), exports);
|
|
49
|
-
__exportStar(require("./LaserFilamentMonitor"), exports);
|
|
50
|
-
__exportStar(require("./PulsedFilamentMonitor"), exports);
|
|
51
|
-
__exportStar(require("./RotatingMagnetFilamentMonitor"), exports);
|
package/dist/sensors/Probe.d.ts
DELETED
|
@@ -1,33 +0,0 @@
|
|
|
1
|
-
import ModelObject from "../ModelObject";
|
|
2
|
-
export declare enum ProbeType {
|
|
3
|
-
none = 0,
|
|
4
|
-
analog = 1,
|
|
5
|
-
dumbModulated = 2,
|
|
6
|
-
alternateAnalog = 3,
|
|
7
|
-
endstopSwitch_obsolete = 4,
|
|
8
|
-
digital = 5,
|
|
9
|
-
e1Switch_obsolete = 6,
|
|
10
|
-
zSwitch_obsolete = 7,
|
|
11
|
-
unfilteredDigital = 8,
|
|
12
|
-
blTouch = 9,
|
|
13
|
-
zMotorStall = 10
|
|
14
|
-
}
|
|
15
|
-
export declare class Probe extends ModelObject {
|
|
16
|
-
calibrationTemperature: number;
|
|
17
|
-
deployedByUser: boolean;
|
|
18
|
-
disablesHeaters: boolean;
|
|
19
|
-
diveHeight: number;
|
|
20
|
-
lastStopHeight: number;
|
|
21
|
-
maxProbeCount: number;
|
|
22
|
-
offsets: Array<number>;
|
|
23
|
-
recoveryTime: number;
|
|
24
|
-
speeds: Array<number>;
|
|
25
|
-
temperatureCoefficients: Array<number>;
|
|
26
|
-
threshold: number;
|
|
27
|
-
tolerance: number;
|
|
28
|
-
travelSpeed: number;
|
|
29
|
-
triggerHeight: number;
|
|
30
|
-
type: ProbeType;
|
|
31
|
-
value: Array<number>;
|
|
32
|
-
}
|
|
33
|
-
export default Probe;
|
package/dist/sensors/Probe.js
DELETED
|
@@ -1,41 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.Probe = exports.ProbeType = void 0;
|
|
4
|
-
const ModelObject_1 = require("../ModelObject");
|
|
5
|
-
var ProbeType;
|
|
6
|
-
(function (ProbeType) {
|
|
7
|
-
ProbeType[ProbeType["none"] = 0] = "none";
|
|
8
|
-
ProbeType[ProbeType["analog"] = 1] = "analog";
|
|
9
|
-
ProbeType[ProbeType["dumbModulated"] = 2] = "dumbModulated";
|
|
10
|
-
ProbeType[ProbeType["alternateAnalog"] = 3] = "alternateAnalog";
|
|
11
|
-
ProbeType[ProbeType["endstopSwitch_obsolete"] = 4] = "endstopSwitch_obsolete";
|
|
12
|
-
ProbeType[ProbeType["digital"] = 5] = "digital";
|
|
13
|
-
ProbeType[ProbeType["e1Switch_obsolete"] = 6] = "e1Switch_obsolete";
|
|
14
|
-
ProbeType[ProbeType["zSwitch_obsolete"] = 7] = "zSwitch_obsolete";
|
|
15
|
-
ProbeType[ProbeType["unfilteredDigital"] = 8] = "unfilteredDigital";
|
|
16
|
-
ProbeType[ProbeType["blTouch"] = 9] = "blTouch";
|
|
17
|
-
ProbeType[ProbeType["zMotorStall"] = 10] = "zMotorStall";
|
|
18
|
-
})(ProbeType = exports.ProbeType || (exports.ProbeType = {}));
|
|
19
|
-
class Probe extends ModelObject_1.default {
|
|
20
|
-
constructor() {
|
|
21
|
-
super(...arguments);
|
|
22
|
-
this.calibrationTemperature = 0;
|
|
23
|
-
this.deployedByUser = false;
|
|
24
|
-
this.disablesHeaters = false;
|
|
25
|
-
this.diveHeight = 5;
|
|
26
|
-
this.lastStopHeight = 0;
|
|
27
|
-
this.maxProbeCount = 1;
|
|
28
|
-
this.offsets = [0, 0];
|
|
29
|
-
this.recoveryTime = 0;
|
|
30
|
-
this.speeds = [2, 2];
|
|
31
|
-
this.temperatureCoefficients = [0, 0];
|
|
32
|
-
this.threshold = 500;
|
|
33
|
-
this.tolerance = 0.03;
|
|
34
|
-
this.travelSpeed = 6000;
|
|
35
|
-
this.triggerHeight = 0.7;
|
|
36
|
-
this.type = ProbeType.none;
|
|
37
|
-
this.value = [];
|
|
38
|
-
}
|
|
39
|
-
}
|
|
40
|
-
exports.Probe = Probe;
|
|
41
|
-
exports.default = Probe;
|
package/dist/sensors/index.d.ts
DELETED
|
@@ -1,21 +0,0 @@
|
|
|
1
|
-
import ModelObject from "../ModelObject";
|
|
2
|
-
import ModelCollection from "../ModelCollection";
|
|
3
|
-
import AnalogSensor from "./AnalogSensor";
|
|
4
|
-
import Endstop from "./Endstop";
|
|
5
|
-
import FilamentMonitor from "./FilamentMonitors";
|
|
6
|
-
import Probe from "./Probe";
|
|
7
|
-
export declare class GpInputPort extends ModelObject {
|
|
8
|
-
value: number;
|
|
9
|
-
}
|
|
10
|
-
export declare class Sensors extends ModelObject {
|
|
11
|
-
readonly analog: ModelCollection<AnalogSensor | null>;
|
|
12
|
-
readonly endstops: ModelCollection<Endstop | null>;
|
|
13
|
-
readonly filamentMonitors: ModelCollection<FilamentMonitor | null>;
|
|
14
|
-
readonly gpIn: ModelCollection<GpInputPort | null>;
|
|
15
|
-
readonly probes: ModelCollection<Probe | null>;
|
|
16
|
-
}
|
|
17
|
-
export default Sensors;
|
|
18
|
-
export * from "./FilamentMonitors";
|
|
19
|
-
export * from "./AnalogSensor";
|
|
20
|
-
export * from "./Endstop";
|
|
21
|
-
export * from "./Probe";
|
package/dist/sensors/index.js
DELETED
|
@@ -1,46 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
-
if (k2 === undefined) k2 = k;
|
|
4
|
-
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
-
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
-
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
-
}
|
|
8
|
-
Object.defineProperty(o, k2, desc);
|
|
9
|
-
}) : (function(o, m, k, k2) {
|
|
10
|
-
if (k2 === undefined) k2 = k;
|
|
11
|
-
o[k2] = m[k];
|
|
12
|
-
}));
|
|
13
|
-
var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
14
|
-
for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
|
|
15
|
-
};
|
|
16
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
17
|
-
exports.Sensors = exports.GpInputPort = void 0;
|
|
18
|
-
const ModelObject_1 = require("../ModelObject");
|
|
19
|
-
const ModelCollection_1 = require("../ModelCollection");
|
|
20
|
-
const AnalogSensor_1 = require("./AnalogSensor");
|
|
21
|
-
const Endstop_1 = require("./Endstop");
|
|
22
|
-
const FilamentMonitors_1 = require("./FilamentMonitors");
|
|
23
|
-
const Probe_1 = require("./Probe");
|
|
24
|
-
class GpInputPort extends ModelObject_1.default {
|
|
25
|
-
constructor() {
|
|
26
|
-
super(...arguments);
|
|
27
|
-
this.value = 0;
|
|
28
|
-
}
|
|
29
|
-
}
|
|
30
|
-
exports.GpInputPort = GpInputPort;
|
|
31
|
-
class Sensors extends ModelObject_1.default {
|
|
32
|
-
constructor() {
|
|
33
|
-
super(...arguments);
|
|
34
|
-
this.analog = new ModelCollection_1.default(AnalogSensor_1.default);
|
|
35
|
-
this.endstops = new ModelCollection_1.default(Endstop_1.default);
|
|
36
|
-
this.filamentMonitors = new ModelCollection_1.default(FilamentMonitors_1.default);
|
|
37
|
-
this.gpIn = new ModelCollection_1.default(GpInputPort);
|
|
38
|
-
this.probes = new ModelCollection_1.default(Probe_1.default);
|
|
39
|
-
}
|
|
40
|
-
}
|
|
41
|
-
exports.Sensors = Sensors;
|
|
42
|
-
exports.default = Sensors;
|
|
43
|
-
__exportStar(require("./FilamentMonitors"), exports);
|
|
44
|
-
__exportStar(require("./AnalogSensor"), exports);
|
|
45
|
-
__exportStar(require("./Endstop"), exports);
|
|
46
|
-
__exportStar(require("./Probe"), exports);
|
package/dist/spindles/index.d.ts
DELETED
|
@@ -1,20 +0,0 @@
|
|
|
1
|
-
import ModelObject from "../ModelObject";
|
|
2
|
-
export declare enum SpindleState {
|
|
3
|
-
unconfigured = "unconfigured",
|
|
4
|
-
stopped = "stopped",
|
|
5
|
-
forward = "forward",
|
|
6
|
-
reverse = "reverse"
|
|
7
|
-
}
|
|
8
|
-
export declare class Spindle extends ModelObject {
|
|
9
|
-
active: number;
|
|
10
|
-
canReverse: boolean;
|
|
11
|
-
current: number;
|
|
12
|
-
frequency: number;
|
|
13
|
-
idlePwm: number;
|
|
14
|
-
min: number;
|
|
15
|
-
minPwm: number;
|
|
16
|
-
max: number;
|
|
17
|
-
maxPwm: number;
|
|
18
|
-
state: SpindleState;
|
|
19
|
-
}
|
|
20
|
-
export default Spindle;
|
package/dist/spindles/index.js
DELETED
|
@@ -1,28 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.Spindle = exports.SpindleState = void 0;
|
|
4
|
-
const ModelObject_1 = require("../ModelObject");
|
|
5
|
-
var SpindleState;
|
|
6
|
-
(function (SpindleState) {
|
|
7
|
-
SpindleState["unconfigured"] = "unconfigured";
|
|
8
|
-
SpindleState["stopped"] = "stopped";
|
|
9
|
-
SpindleState["forward"] = "forward";
|
|
10
|
-
SpindleState["reverse"] = "reverse";
|
|
11
|
-
})(SpindleState = exports.SpindleState || (exports.SpindleState = {}));
|
|
12
|
-
class Spindle extends ModelObject_1.default {
|
|
13
|
-
constructor() {
|
|
14
|
-
super(...arguments);
|
|
15
|
-
this.active = 0;
|
|
16
|
-
this.canReverse = false;
|
|
17
|
-
this.current = 0;
|
|
18
|
-
this.frequency = 0;
|
|
19
|
-
this.idlePwm = 0;
|
|
20
|
-
this.min = 60;
|
|
21
|
-
this.minPwm = 0;
|
|
22
|
-
this.max = 10000;
|
|
23
|
-
this.maxPwm = 1;
|
|
24
|
-
this.state = SpindleState.unconfigured;
|
|
25
|
-
}
|
|
26
|
-
}
|
|
27
|
-
exports.Spindle = Spindle;
|
|
28
|
-
exports.default = Spindle;
|
|
@@ -1,37 +0,0 @@
|
|
|
1
|
-
import { IModelObject } from "./ModelObject";
|
|
2
|
-
/**
|
|
3
|
-
* Class for storing model object items in an array
|
|
4
|
-
*/
|
|
5
|
-
export declare class ModelCollection<T extends IModelObject | null> extends Array<T> implements IModelObject {
|
|
6
|
-
private readonly itemConstructor;
|
|
7
|
-
/**
|
|
8
|
-
* Constructor of this class
|
|
9
|
-
* @param itemConstructor Item constructor type that items must derive from
|
|
10
|
-
*/
|
|
11
|
-
constructor(itemConstructor: {
|
|
12
|
-
new (): T;
|
|
13
|
-
});
|
|
14
|
-
/**
|
|
15
|
-
* Overridden push method to perform better type checks
|
|
16
|
-
* @param items Items to add
|
|
17
|
-
*/
|
|
18
|
-
push(...items: T[]): number;
|
|
19
|
-
/**
|
|
20
|
-
* Update this instance from the given data
|
|
21
|
-
* @param jsonElement JSON data to upgrade this instance from
|
|
22
|
-
* @returns Updated instance
|
|
23
|
-
*/
|
|
24
|
-
update(jsonElement: any): IModelObject | null;
|
|
25
|
-
}
|
|
26
|
-
export default ModelCollection;
|
|
27
|
-
/**
|
|
28
|
-
* Initialize a model collection from the given data
|
|
29
|
-
* @param itemType Item type to create
|
|
30
|
-
* @param data Data to assign
|
|
31
|
-
* @returns Initialized model collection
|
|
32
|
-
*/
|
|
33
|
-
export declare function initCollection<T extends IModelObject>(itemType: {
|
|
34
|
-
new (): T;
|
|
35
|
-
}, data: Array<{
|
|
36
|
-
[Property in keyof T]?: T[Property];
|
|
37
|
-
}>): ModelCollection<T>;
|
|
@@ -1,103 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.initCollection = exports.ModelCollection = void 0;
|
|
4
|
-
const ModelObject_1 = require("./ModelObject");
|
|
5
|
-
const index_1 = require("./index");
|
|
6
|
-
/**
|
|
7
|
-
* Class for storing model object items in an array
|
|
8
|
-
*/
|
|
9
|
-
class ModelCollection extends Array {
|
|
10
|
-
/**
|
|
11
|
-
* Constructor of this class
|
|
12
|
-
* @param itemConstructor Item constructor type that items must derive from
|
|
13
|
-
*/
|
|
14
|
-
constructor(itemConstructor) {
|
|
15
|
-
super();
|
|
16
|
-
this.itemConstructor = itemConstructor;
|
|
17
|
-
Object.setPrototypeOf(this, ModelCollection.prototype);
|
|
18
|
-
}
|
|
19
|
-
// Unfortunately it isn't possible to override index operators in JS/TS
|
|
20
|
-
/**
|
|
21
|
-
* Overridden push method to perform better type checks
|
|
22
|
-
* @param items Items to add
|
|
23
|
-
*/
|
|
24
|
-
push(...items) {
|
|
25
|
-
for (const item of items) {
|
|
26
|
-
if (item === null || item instanceof this.itemConstructor) {
|
|
27
|
-
super.push(item);
|
|
28
|
-
}
|
|
29
|
-
else {
|
|
30
|
-
const newItem = new this.itemConstructor();
|
|
31
|
-
super.push(newItem.update(item));
|
|
32
|
-
}
|
|
33
|
-
}
|
|
34
|
-
return this.length;
|
|
35
|
-
}
|
|
36
|
-
/**
|
|
37
|
-
* Update this instance from the given data
|
|
38
|
-
* @param jsonElement JSON data to upgrade this instance from
|
|
39
|
-
* @returns Updated instance
|
|
40
|
-
*/
|
|
41
|
-
update(jsonElement) {
|
|
42
|
-
if (!(jsonElement instanceof Array)) {
|
|
43
|
-
throw new Error(`Invalid JSON element type for model collection ${typeof jsonElement}`);
|
|
44
|
-
}
|
|
45
|
-
// Remove deleted items
|
|
46
|
-
this.splice(jsonElement.length);
|
|
47
|
-
// Update existing items
|
|
48
|
-
for (let i = 0; i < Math.min(jsonElement.length, this.length); i++) {
|
|
49
|
-
const currentItem = this[i];
|
|
50
|
-
if (currentItem === null) {
|
|
51
|
-
const newItem = jsonElement[i];
|
|
52
|
-
if (newItem instanceof this.itemConstructor) {
|
|
53
|
-
(0, index_1.setArrayItem)(this, i, jsonElement[i]);
|
|
54
|
-
}
|
|
55
|
-
else {
|
|
56
|
-
const refItem = new this.itemConstructor();
|
|
57
|
-
(0, index_1.setArrayItem)(this, i, refItem.update(newItem));
|
|
58
|
-
}
|
|
59
|
-
}
|
|
60
|
-
else if ((0, ModelObject_1.isModelObject)(currentItem)) {
|
|
61
|
-
const newItem = currentItem.update(jsonElement[i]);
|
|
62
|
-
if (currentItem !== newItem) {
|
|
63
|
-
(0, index_1.setArrayItem)(this, i, newItem);
|
|
64
|
-
}
|
|
65
|
-
}
|
|
66
|
-
else {
|
|
67
|
-
const newItem = jsonElement[i];
|
|
68
|
-
if (currentItem !== newItem) {
|
|
69
|
-
(0, index_1.setArrayItem)(this, i, newItem);
|
|
70
|
-
}
|
|
71
|
-
}
|
|
72
|
-
}
|
|
73
|
-
// Add new items
|
|
74
|
-
for (let i = this.length; i < jsonElement.length; i++) {
|
|
75
|
-
const itemToAdd = jsonElement[i];
|
|
76
|
-
if (itemToAdd === null) {
|
|
77
|
-
super.push(itemToAdd);
|
|
78
|
-
}
|
|
79
|
-
else {
|
|
80
|
-
const newItem = new this.itemConstructor();
|
|
81
|
-
super.push(newItem.update(itemToAdd));
|
|
82
|
-
}
|
|
83
|
-
}
|
|
84
|
-
return this;
|
|
85
|
-
}
|
|
86
|
-
}
|
|
87
|
-
exports.ModelCollection = ModelCollection;
|
|
88
|
-
exports.default = ModelCollection;
|
|
89
|
-
/**
|
|
90
|
-
* Initialize a model collection from the given data
|
|
91
|
-
* @param itemType Item type to create
|
|
92
|
-
* @param data Data to assign
|
|
93
|
-
* @returns Initialized model collection
|
|
94
|
-
*/
|
|
95
|
-
function initCollection(itemType, data) {
|
|
96
|
-
const result = new ModelCollection(itemType);
|
|
97
|
-
for (let presetItem of data) {
|
|
98
|
-
const item = new itemType();
|
|
99
|
-
result.push(item.update(presetItem));
|
|
100
|
-
}
|
|
101
|
-
return result;
|
|
102
|
-
}
|
|
103
|
-
exports.initCollection = initCollection;
|