@duet3d/objectmodel 3.5.0-rc.1 → 3.5.0-rc.11

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.
@@ -39,6 +39,9 @@ class ModelCollection extends Array {
39
39
  * @returns Updated instance
40
40
  */
41
41
  update(jsonElement) {
42
+ if (jsonElement === null) {
43
+ return null;
44
+ }
42
45
  if (!(jsonElement instanceof Array)) {
43
46
  throw new Error(`Invalid JSON element type for model collection ${typeof jsonElement}`);
44
47
  }
@@ -24,6 +24,14 @@ export declare abstract class ModelObject implements IModelObject {
24
24
  * @returns Updated instance (may not equal the original instance)
25
25
  */
26
26
  update(jsonElement: any): IModelObject | null;
27
+ /**
28
+ * Wrap a nullable model object property so that type checks can be performed
29
+ * @param key Property key of the derived class
30
+ * @param constructor Constructor for creating new elements
31
+ */
32
+ static wrapModelCollectionProperty<S extends IModelObject, K extends keyof S, T extends IModelObject | null>(self: S, key: K, itemConstructor: {
33
+ new (): T;
34
+ }): void;
27
35
  /**
28
36
  * Wrap a nullable model object property so that type checks can be performed
29
37
  * @param key Property key of the derived class
@@ -169,6 +169,34 @@ class ModelObject {
169
169
  }
170
170
  return this;
171
171
  }
172
+ /**
173
+ * Wrap a nullable model object property so that type checks can be performed
174
+ * @param key Property key of the derived class
175
+ * @param constructor Constructor for creating new elements
176
+ */
177
+ static wrapModelCollectionProperty(self, key, itemConstructor) {
178
+ let propertyValue = self[key];
179
+ Object.defineProperty(self, key, {
180
+ get() { return propertyValue; },
181
+ set(newValue) {
182
+ if (newValue === null) {
183
+ propertyValue = null;
184
+ }
185
+ else if (propertyValue !== null) {
186
+ const newModel = propertyValue.update(newValue);
187
+ if (propertyValue !== newModel) {
188
+ propertyValue = newModel;
189
+ }
190
+ }
191
+ else {
192
+ const newModel = new index_1.ModelCollection(itemConstructor);
193
+ propertyValue = newModel.update(newValue);
194
+ }
195
+ },
196
+ configurable: true,
197
+ enumerable: true
198
+ });
199
+ }
172
200
  /**
173
201
  * Wrap a nullable model object property so that type checks can be performed
174
202
  * @param key Property key of the derived class
@@ -0,0 +1,18 @@
1
+ import { ModelObject } from "..";
2
+ export declare class BoardClosedLoopCurrentFraction extends ModelObject {
3
+ avg: number;
4
+ positionError: number;
5
+ }
6
+ export declare class BoardClosedLoopPositionError extends ModelObject {
7
+ max: number;
8
+ rms: number;
9
+ }
10
+ export declare class DriverClosedLoop extends ModelObject {
11
+ readonly currentFraction: BoardClosedLoopCurrentFraction;
12
+ readonly positionError: BoardClosedLoopPositionError;
13
+ }
14
+ export default class Driver extends ModelObject {
15
+ constructor();
16
+ closedLoop: DriverClosedLoop | null;
17
+ status: number;
18
+ }
@@ -0,0 +1,37 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.DriverClosedLoop = exports.BoardClosedLoopPositionError = exports.BoardClosedLoopCurrentFraction = void 0;
4
+ const __1 = require("..");
5
+ class BoardClosedLoopCurrentFraction extends __1.ModelObject {
6
+ constructor() {
7
+ super(...arguments);
8
+ this.avg = 0;
9
+ this.positionError = 0;
10
+ }
11
+ }
12
+ exports.BoardClosedLoopCurrentFraction = BoardClosedLoopCurrentFraction;
13
+ class BoardClosedLoopPositionError extends __1.ModelObject {
14
+ constructor() {
15
+ super(...arguments);
16
+ this.max = 0;
17
+ this.rms = 0;
18
+ }
19
+ }
20
+ exports.BoardClosedLoopPositionError = BoardClosedLoopPositionError;
21
+ class DriverClosedLoop extends __1.ModelObject {
22
+ constructor() {
23
+ super(...arguments);
24
+ this.currentFraction = new BoardClosedLoopCurrentFraction();
25
+ this.positionError = new BoardClosedLoopPositionError();
26
+ }
27
+ }
28
+ exports.DriverClosedLoop = DriverClosedLoop;
29
+ class Driver extends __1.ModelObject {
30
+ constructor() {
31
+ super();
32
+ this.closedLoop = null;
33
+ this.status = 0;
34
+ __1.ModelObject.wrapModelProperty(this, "closedLoop", DriverClosedLoop);
35
+ }
36
+ }
37
+ exports.default = Driver;
@@ -1,9 +1,15 @@
1
+ import ModelCollection from "../ModelCollection";
1
2
  import ModelObject from "../ModelObject";
2
3
  import DirectDisplay from "./directDisplay";
4
+ import Driver from "./Driver";
3
5
  export declare class Accelerometer extends ModelObject {
4
6
  points: number;
5
7
  runs: number;
6
8
  }
9
+ export declare class BoardClosedLoop extends ModelObject {
10
+ points: number;
11
+ runs: number;
12
+ }
7
13
  export declare enum BoardState {
8
14
  unknown = "unknown",
9
15
  flashing = "flashing",
@@ -11,10 +17,6 @@ export declare enum BoardState {
11
17
  resetting = "resetting",
12
18
  running = "running"
13
19
  }
14
- export declare class ClosedLoop extends ModelObject {
15
- points: number;
16
- runs: number;
17
- }
18
20
  export declare class MinMaxCurrent extends ModelObject {
19
21
  current: number;
20
22
  min: number;
@@ -25,12 +27,14 @@ export declare class Board extends ModelObject {
25
27
  accelerometer: Accelerometer | null;
26
28
  bootloaderFileName: string | null;
27
29
  canAddress: number | null;
28
- closedLoop: ClosedLoop | null;
30
+ closedLoop: BoardClosedLoop | null;
29
31
  directDisplay: DirectDisplay | null;
32
+ drivers: ModelCollection<Driver> | null;
30
33
  firmwareDate: string;
31
34
  firmwareFileName: string;
32
35
  firmwareName: string;
33
36
  firmwareVersion: string;
37
+ freeRam: number | null;
34
38
  iapFileNameSBC: string | null;
35
39
  iapFileNameSD: string | null;
36
40
  maxHeaters: number;
@@ -47,3 +51,4 @@ export declare class Board extends ModelObject {
47
51
  }
48
52
  export default Board;
49
53
  export * from "./directDisplay";
54
+ export * from "./Driver";
@@ -14,9 +14,10 @@ var __exportStar = (this && this.__exportStar) || function(m, exports) {
14
14
  for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
15
15
  };
16
16
  Object.defineProperty(exports, "__esModule", { value: true });
17
- exports.Board = exports.MinMaxCurrent = exports.ClosedLoop = exports.BoardState = exports.Accelerometer = void 0;
17
+ exports.Board = exports.MinMaxCurrent = exports.BoardState = exports.BoardClosedLoop = exports.Accelerometer = void 0;
18
18
  const ModelObject_1 = require("../ModelObject");
19
19
  const directDisplay_1 = require("./directDisplay");
20
+ const Driver_1 = require("./Driver");
20
21
  class Accelerometer extends ModelObject_1.default {
21
22
  constructor() {
22
23
  super(...arguments);
@@ -25,6 +26,14 @@ class Accelerometer extends ModelObject_1.default {
25
26
  }
26
27
  }
27
28
  exports.Accelerometer = Accelerometer;
29
+ class BoardClosedLoop extends ModelObject_1.default {
30
+ constructor() {
31
+ super(...arguments);
32
+ this.points = 0;
33
+ this.runs = 0;
34
+ }
35
+ }
36
+ exports.BoardClosedLoop = BoardClosedLoop;
28
37
  var BoardState;
29
38
  (function (BoardState) {
30
39
  BoardState["unknown"] = "unknown";
@@ -33,14 +42,6 @@ var BoardState;
33
42
  BoardState["resetting"] = "resetting";
34
43
  BoardState["running"] = "running";
35
44
  })(BoardState || (exports.BoardState = BoardState = {}));
36
- class ClosedLoop extends ModelObject_1.default {
37
- constructor() {
38
- super(...arguments);
39
- this.points = 0;
40
- this.runs = 0;
41
- }
42
- }
43
- exports.ClosedLoop = ClosedLoop;
44
45
  class MinMaxCurrent extends ModelObject_1.default {
45
46
  constructor() {
46
47
  super(...arguments);
@@ -58,10 +59,12 @@ class Board extends ModelObject_1.default {
58
59
  this.canAddress = null;
59
60
  this.closedLoop = null;
60
61
  this.directDisplay = null;
62
+ this.drivers = null;
61
63
  this.firmwareDate = "";
62
64
  this.firmwareFileName = "";
63
65
  this.firmwareName = "";
64
66
  this.firmwareVersion = "";
67
+ this.freeRam = null;
65
68
  this.iapFileNameSBC = null;
66
69
  this.iapFileNameSD = null;
67
70
  this.maxHeaters = 0;
@@ -76,8 +79,9 @@ class Board extends ModelObject_1.default {
76
79
  this.vIn = null;
77
80
  this.wifiFirmwareFileName = null;
78
81
  ModelObject_1.default.wrapModelProperty(this, "accelerometer", Accelerometer);
79
- ModelObject_1.default.wrapModelProperty(this, "closedLoop", ClosedLoop);
82
+ ModelObject_1.default.wrapModelProperty(this, "closedLoop", BoardClosedLoop);
80
83
  ModelObject_1.default.wrapModelProperty(this, "directDisplay", directDisplay_1.default);
84
+ ModelObject_1.default.wrapModelCollectionProperty(this, "drivers", Driver_1.default);
81
85
  ModelObject_1.default.wrapModelProperty(this, "mcuTemp", MinMaxCurrent);
82
86
  ModelObject_1.default.wrapModelProperty(this, "v12", MinMaxCurrent);
83
87
  ModelObject_1.default.wrapModelProperty(this, "vIn", MinMaxCurrent);
@@ -86,3 +90,4 @@ class Board extends ModelObject_1.default {
86
90
  exports.Board = Board;
87
91
  exports.default = Board;
88
92
  __exportStar(require("./directDisplay"), exports);
93
+ __exportStar(require("./Driver"), exports);
@@ -12,6 +12,7 @@ export declare enum InputChannelState {
12
12
  reading = "reading"
13
13
  }
14
14
  export declare class InputChannel extends ModelObject {
15
+ active: boolean;
15
16
  axesRelative: boolean;
16
17
  compatibility: Compatibility;
17
18
  distanceUnit: DistanceUnit;
@@ -19,6 +19,7 @@ var InputChannelState;
19
19
  class InputChannel extends ModelObject_1.default {
20
20
  constructor() {
21
21
  super(...arguments);
22
+ this.active = true;
22
23
  this.axesRelative = false;
23
24
  this.compatibility = Compatibility_1.default.RepRapFirmware;
24
25
  this.distanceUnit = DistanceUnit.mm;
@@ -14,7 +14,7 @@ export declare class InputShaping extends ModelObject {
14
14
  damping: number;
15
15
  durations: Array<number>;
16
16
  frequency: number;
17
- minAcceleration: number;
17
+ reductionLimit: number;
18
18
  type: InputShapingType;
19
19
  }
20
20
  export default InputShaping;
@@ -20,7 +20,7 @@ class InputShaping extends ModelObject_1.default {
20
20
  this.damping = 0.1;
21
21
  this.durations = [];
22
22
  this.frequency = 40;
23
- this.minAcceleration = 10;
23
+ this.reductionLimit = 10;
24
24
  this.type = InputShapingType.none;
25
25
  }
26
26
  }
@@ -6,5 +6,5 @@ export declare class KeepoutZoneCoordinates extends ModelObject {
6
6
  }
7
7
  export default class KeepoutZone extends ModelObject {
8
8
  active: boolean;
9
- coords: ModelCollection<KeepoutZoneCoordinates | null>;
9
+ readonly coords: ModelCollection<KeepoutZoneCoordinates | null>;
10
10
  }
@@ -52,8 +52,10 @@ export declare class PluginManifest extends ModelObject {
52
52
  sbcExecutable: string | null;
53
53
  sbcExecutableArguments: string | null;
54
54
  sbcExtraExecutables: Array<string>;
55
+ sbcAutoRestart: boolean;
55
56
  sbcOutputRedirected: boolean;
56
57
  sbcPermissions: ModelSet<SbcPermission>;
58
+ sbcConfigFiles: Array<string>;
57
59
  sbcPackageDependencies: Array<string>;
58
60
  sbcPluginDependencies: Array<string>;
59
61
  sbcPythonDependencies: Array<string>;
@@ -57,8 +57,10 @@ class PluginManifest extends ModelObject_1.default {
57
57
  this.sbcExecutable = null;
58
58
  this.sbcExecutableArguments = null;
59
59
  this.sbcExtraExecutables = [];
60
+ this.sbcAutoRestart = false;
60
61
  this.sbcOutputRedirected = true;
61
62
  this.sbcPermissions = new ModelSet_1.default();
63
+ this.sbcConfigFiles = [];
62
64
  this.sbcPackageDependencies = [];
63
65
  this.sbcPluginDependencies = [];
64
66
  this.sbcPythonDependencies = [];
@@ -2,12 +2,14 @@ import ModelCollection from "../../ModelCollection";
2
2
  import ModelObject from "../../ModelObject";
3
3
  import HttpEndpoint from "./HttpEndpoint";
4
4
  import UserSession from "./UserSession";
5
- export declare class SBC extends ModelObject {
5
+ export declare class DSF extends ModelObject {
6
+ buildDateTime: string;
6
7
  readonly httpEndpoints: ModelCollection<HttpEndpoint>;
8
+ is64Bit: boolean;
7
9
  pluginSupport: boolean;
8
10
  rootPluginSupport: boolean;
9
11
  readonly userSessions: ModelCollection<UserSession>;
10
12
  version: string;
11
13
  }
12
- export default SBC;
14
+ export default DSF;
13
15
  export * from "./HttpEndpoint";
@@ -14,21 +14,23 @@ var __exportStar = (this && this.__exportStar) || function(m, exports) {
14
14
  for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
15
15
  };
16
16
  Object.defineProperty(exports, "__esModule", { value: true });
17
- exports.SBC = void 0;
17
+ exports.DSF = void 0;
18
18
  const ModelCollection_1 = require("../../ModelCollection");
19
19
  const ModelObject_1 = require("../../ModelObject");
20
20
  const HttpEndpoint_1 = require("./HttpEndpoint");
21
21
  const UserSession_1 = require("./UserSession");
22
- class SBC extends ModelObject_1.default {
22
+ class DSF extends ModelObject_1.default {
23
23
  constructor() {
24
24
  super(...arguments);
25
+ this.buildDateTime = "";
25
26
  this.httpEndpoints = new ModelCollection_1.default(HttpEndpoint_1.default);
27
+ this.is64Bit = false;
26
28
  this.pluginSupport = false;
27
29
  this.rootPluginSupport = false;
28
30
  this.userSessions = new ModelCollection_1.default(UserSession_1.default);
29
31
  this.version = "";
30
32
  }
31
33
  }
32
- exports.SBC = SBC;
33
- exports.default = SBC;
34
+ exports.DSF = DSF;
35
+ exports.default = DSF;
34
36
  __exportStar(require("./HttpEndpoint"), exports);
@@ -0,0 +1,10 @@
1
+ import { FilamentMonitorBase, FilamentMonitorType } from "./FilamentMonitorBase";
2
+ export declare class Duet3DFilamentMonitor extends FilamentMonitorBase {
3
+ avgPercentage: number | null;
4
+ lastPercentage: number | null;
5
+ maxPercentage: number | null;
6
+ minPercentage: number | null;
7
+ totalExtrusion: number;
8
+ constructor(type?: FilamentMonitorType);
9
+ }
10
+ export default Duet3DFilamentMonitor;
@@ -0,0 +1,16 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.Duet3DFilamentMonitor = void 0;
4
+ const FilamentMonitorBase_1 = require("./FilamentMonitorBase");
5
+ class Duet3DFilamentMonitor extends FilamentMonitorBase_1.FilamentMonitorBase {
6
+ constructor(type = FilamentMonitorBase_1.FilamentMonitorType.unknown) {
7
+ super(type);
8
+ this.avgPercentage = null;
9
+ this.lastPercentage = null;
10
+ this.maxPercentage = null;
11
+ this.minPercentage = null;
12
+ this.totalExtrusion = 0;
13
+ }
14
+ }
15
+ exports.Duet3DFilamentMonitor = Duet3DFilamentMonitor;
16
+ exports.default = Duet3DFilamentMonitor;
@@ -1,5 +1,5 @@
1
1
  import ModelObject, { IModelObject } from "../../ModelObject";
2
- import FilamentMonitorBase from "./FilamentMonitorBase";
2
+ import { Duet3DFilamentMonitor } from "./Duet3DFilamentMonitor";
3
3
  export declare class LaserFilamentMonitorCalibrated extends ModelObject {
4
4
  calibrationFactor: number;
5
5
  percentMax: number;
@@ -13,7 +13,7 @@ export declare class LaserFilamentMonitorConfigured extends ModelObject {
13
13
  percentMin: number;
14
14
  sampleDistance: number;
15
15
  }
16
- export declare class LaserFilamentMonitor extends FilamentMonitorBase {
16
+ export declare class LaserFilamentMonitor extends Duet3DFilamentMonitor {
17
17
  constructor();
18
18
  calibrated: LaserFilamentMonitorCalibrated | null;
19
19
  readonly configured: LaserFilamentMonitorConfigured;
@@ -3,6 +3,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.LaserFilamentMonitor = exports.LaserFilamentMonitorConfigured = exports.LaserFilamentMonitorCalibrated = void 0;
4
4
  const ModelObject_1 = require("../../ModelObject");
5
5
  const FilamentMonitorBase_1 = require("./FilamentMonitorBase");
6
+ const Duet3DFilamentMonitor_1 = require("./Duet3DFilamentMonitor");
6
7
  const index_1 = require("./index");
7
8
  class LaserFilamentMonitorCalibrated extends ModelObject_1.default {
8
9
  constructor() {
@@ -25,7 +26,7 @@ class LaserFilamentMonitorConfigured extends ModelObject_1.default {
25
26
  }
26
27
  }
27
28
  exports.LaserFilamentMonitorConfigured = LaserFilamentMonitorConfigured;
28
- class LaserFilamentMonitor extends FilamentMonitorBase_1.default {
29
+ class LaserFilamentMonitor extends Duet3DFilamentMonitor_1.Duet3DFilamentMonitor {
29
30
  constructor() {
30
31
  super(FilamentMonitorBase_1.FilamentMonitorType.laser);
31
32
  this.calibrated = new LaserFilamentMonitorCalibrated();
@@ -1,5 +1,5 @@
1
1
  import ModelObject, { IModelObject } from "../../ModelObject";
2
- import FilamentMonitorBase from "./FilamentMonitorBase";
2
+ import { Duet3DFilamentMonitor } from "./Duet3DFilamentMonitor";
3
3
  export declare class RotatingMagnetFilamentMonitorCalibrated extends ModelObject {
4
4
  mmPerPulse: number;
5
5
  percentMax: number;
@@ -13,7 +13,7 @@ export declare class RotatingMagnetFilamentMonitorConfigured extends ModelObject
13
13
  percentMin: number;
14
14
  sampleDistance: number;
15
15
  }
16
- export declare class RotatingMagnetFilamentMonitor extends FilamentMonitorBase {
16
+ export declare class RotatingMagnetFilamentMonitor extends Duet3DFilamentMonitor {
17
17
  constructor();
18
18
  calibrated: RotatingMagnetFilamentMonitorCalibrated | null;
19
19
  readonly configured: RotatingMagnetFilamentMonitorConfigured;
@@ -3,6 +3,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.RotatingMagnetFilamentMonitor = exports.RotatingMagnetFilamentMonitorConfigured = exports.RotatingMagnetFilamentMonitorCalibrated = void 0;
4
4
  const ModelObject_1 = require("../../ModelObject");
5
5
  const FilamentMonitorBase_1 = require("./FilamentMonitorBase");
6
+ const Duet3DFilamentMonitor_1 = require("./Duet3DFilamentMonitor");
6
7
  const index_1 = require("./index");
7
8
  class RotatingMagnetFilamentMonitorCalibrated extends ModelObject_1.default {
8
9
  constructor() {
@@ -25,7 +26,7 @@ class RotatingMagnetFilamentMonitorConfigured extends ModelObject_1.default {
25
26
  }
26
27
  }
27
28
  exports.RotatingMagnetFilamentMonitorConfigured = RotatingMagnetFilamentMonitorConfigured;
28
- class RotatingMagnetFilamentMonitor extends FilamentMonitorBase_1.default {
29
+ class RotatingMagnetFilamentMonitor extends Duet3DFilamentMonitor_1.Duet3DFilamentMonitor {
29
30
  constructor() {
30
31
  super(FilamentMonitorBase_1.FilamentMonitorType.rotatingMagnet);
31
32
  this.calibrated = new RotatingMagnetFilamentMonitorCalibrated();
@@ -6,6 +6,7 @@ export declare class FilamentMonitor extends FilamentMonitorBase {
6
6
  export default FilamentMonitor;
7
7
  export declare function getFilamentMonitor(type: FilamentMonitorType): FilamentMonitorBase;
8
8
  export * from "./FilamentMonitorBase";
9
+ export * from "./Duet3DFilamentMonitor";
9
10
  export * from "./LaserFilamentMonitor";
10
11
  export * from "./PulsedFilamentMonitor";
11
12
  export * from "./RotatingMagnetFilamentMonitor";
@@ -46,6 +46,7 @@ function getFilamentMonitor(type) {
46
46
  }
47
47
  exports.getFilamentMonitor = getFilamentMonitor;
48
48
  __exportStar(require("./FilamentMonitorBase"), exports);
49
+ __exportStar(require("./Duet3DFilamentMonitor"), exports);
49
50
  __exportStar(require("./LaserFilamentMonitor"), exports);
50
51
  __exportStar(require("./PulsedFilamentMonitor"), exports);
51
52
  __exportStar(require("./RotatingMagnetFilamentMonitor"), exports);
@@ -10,7 +10,8 @@ export declare enum ProbeType {
10
10
  zSwitch_obsolete = 7,
11
11
  unfilteredDigital = 8,
12
12
  blTouch = 9,
13
- zMotorStall = 10
13
+ zMotorStall = 10,
14
+ scanningAnalog = 11
14
15
  }
15
16
  export declare class Probe extends ModelObject {
16
17
  calibA: number | null;
@@ -26,6 +27,7 @@ export declare class Probe extends ModelObject {
26
27
  isCalibrated: boolean | null;
27
28
  lastStopHeight: number;
28
29
  maxProbeCount: number;
30
+ measuredHeight: number | null;
29
31
  offsets: Array<number>;
30
32
  recoveryTime: number;
31
33
  scanCoefficients: Array<number> | null;
@@ -15,6 +15,7 @@ var ProbeType;
15
15
  ProbeType[ProbeType["unfilteredDigital"] = 8] = "unfilteredDigital";
16
16
  ProbeType[ProbeType["blTouch"] = 9] = "blTouch";
17
17
  ProbeType[ProbeType["zMotorStall"] = 10] = "zMotorStall";
18
+ ProbeType[ProbeType["scanningAnalog"] = 11] = "scanningAnalog";
18
19
  })(ProbeType || (exports.ProbeType = ProbeType = {}));
19
20
  class Probe extends ModelObject_1.default {
20
21
  constructor() {
@@ -32,10 +33,11 @@ class Probe extends ModelObject_1.default {
32
33
  this.isCalibrated = null;
33
34
  this.lastStopHeight = 0;
34
35
  this.maxProbeCount = 1;
36
+ this.measuredHeight = null;
35
37
  this.offsets = [0, 0];
36
38
  this.recoveryTime = 0;
37
39
  this.scanCoefficients = null;
38
- this.speeds = [2, 2];
40
+ this.speeds = [2, 2, 2];
39
41
  this.temperatureCoefficients = [0, 0];
40
42
  this.threshold = 500;
41
43
  this.tolerance = 0.03;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@duet3d/objectmodel",
3
- "version": "3.5.0-rc.1",
3
+ "version": "3.5.0-rc.11",
4
4
  "description": "TypeScript implementation of the Duet3D Object Model",
5
5
  "main": "dist/index.js",
6
6
  "types": "dist/index.d.ts",
@@ -21,10 +21,10 @@
21
21
  },
22
22
  "homepage": "https://github.com/Duet3D/ObjectModel#readme",
23
23
  "devDependencies": {
24
- "@types/jest": "^29.4.0",
25
- "jest": "^29.4.1",
26
- "ts-jest": "^29.0.5",
27
- "typescript": "^5.0.2"
24
+ "@types/jest": "^29.5.12",
25
+ "jest": "^29.7.0",
26
+ "ts-jest": "^29.1.2",
27
+ "typescript": "^5.3.3"
28
28
  },
29
29
  "files": [
30
30
  "/dist"