@ricado/api-client 2.4.2 → 2.5.1

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.
Files changed (33) hide show
  1. package/dist/ricado.api.client.js +1 -1
  2. package/lib/Controllers/Lab/Site/FruitProfileController.js +10 -8
  3. package/lib/Controllers/Lab/Site/LabController.js +5 -2
  4. package/lib/Controllers/Lab/Site/RackPositionController.js +2 -2
  5. package/lib/Controllers/Lab/Site/SampleController.js +7 -15
  6. package/lib/Controllers/Lab/Site/SampleResultController.js +29 -27
  7. package/lib/Controllers/Lab/Site/index.js +0 -3
  8. package/lib/Models/Lab/Site/FruitProfileModel.js +22 -4
  9. package/lib/Models/Lab/Site/LabModel.js +100 -11
  10. package/lib/Models/Lab/Site/RackPositionModel.js +67 -15
  11. package/lib/Models/Lab/Site/SampleModel.js +9 -75
  12. package/lib/Models/Lab/Site/SampleResultModel.js +45 -23
  13. package/lib/Models/Lab/Site/index.js +0 -3
  14. package/lib/PackageVersion.js +1 -1
  15. package/lib/index.d.ts +150 -315
  16. package/package.json +1 -1
  17. package/src/Controllers/Lab/Site/FruitProfileController.js +10 -8
  18. package/src/Controllers/Lab/Site/LabController.js +5 -2
  19. package/src/Controllers/Lab/Site/RackPositionController.js +2 -2
  20. package/src/Controllers/Lab/Site/SampleController.js +7 -15
  21. package/src/Controllers/Lab/Site/SampleResultController.js +29 -27
  22. package/src/Controllers/Lab/Site/index.js +0 -2
  23. package/src/Models/Lab/Site/FruitProfileModel.js +24 -4
  24. package/src/Models/Lab/Site/LabModel.js +132 -11
  25. package/src/Models/Lab/Site/RackPositionModel.js +87 -15
  26. package/src/Models/Lab/Site/SampleModel.js +9 -84
  27. package/src/Models/Lab/Site/SampleResultModel.js +48 -23
  28. package/src/Models/Lab/Site/index.js +0 -2
  29. package/src/PackageVersion.js +1 -1
  30. package/lib/Controllers/Lab/Site/SampleFailureReasonController.js +0 -193
  31. package/lib/Models/Lab/Site/SampleFailureReasonModel.js +0 -195
  32. package/src/Controllers/Lab/Site/SampleFailureReasonController.js +0 -170
  33. package/src/Models/Lab/Site/SampleFailureReasonModel.js +0 -170
@@ -180,10 +180,11 @@ var _default = FruitProfileController;
180
180
  * @property {string} description The Fruit Profile Description
181
181
  * @property {string} image The Fruit Profile Image Source
182
182
  * @property {number} nominalWarmUpDuration The Typical Warm Up Duration (in seconds) for a Sample to reach the Minimum Target Temperature
183
- * @property {number} minimumWithinTargetDuration The Minimum Duration (in seconds) that a Sample should be within the Min and Max Target Temperatures be Successful
184
- * @property {number} maximumTotalDuration The Maximum Duration (in seconds) that a Sample should be Dehydrated for before it Fails
185
- * @property {number} minimumTargetTemperature The Minimum Target Temperature for a Sample to be Successful
186
- * @property {number} maximumTargetTemperature The Maximum Target Temperature for a Sample to be Successful
183
+ * @property {number} minimumWithinTargetDuration The Minimum Duration (in seconds) that a Sample should be within the Min and Max Target Temperatures to be Compliant
184
+ * @property {number} minimumTotalDuration The Minimum Duration (in seconds) that a Sample must be Dehydrated for to be Compliant
185
+ * @property {number} maximumTotalDuration The Maximum Duration (in seconds) that a Sample can be Dehydrated for before it is Considered Non-Compliant
186
+ * @property {number} minimumTargetTemperature The Minimum Target Temperature for a Sample to be Compliant
187
+ * @property {number} maximumTargetTemperature The Maximum Target Temperature for a Sample to be Compliant
187
188
  * @memberof Controllers.Lab.Site
188
189
  */
189
190
 
@@ -195,10 +196,11 @@ var _default = FruitProfileController;
195
196
  * @property {string} [description] The Fruit Profile Description
196
197
  * @property {string} [image] The Fruit Profile Image Source
197
198
  * @property {number} [nominalWarmUpDuration] The Typical Warm Up Duration (in seconds) for a Sample to reach the Minimum Target Temperature
198
- * @property {number} [minimumWithinTargetDuration] The Minimum Duration (in seconds) that a Sample should be within the Min and Max Target Temperatures be Successful
199
- * @property {number} [maximumTotalDuration] The Maximum Duration (in seconds) that a Sample should be Dehydrated for before it Fails
200
- * @property {number} [minimumTargetTemperature] The Minimum Target Temperature for a Sample to be Successful
201
- * @property {number} [maximumTargetTemperature] The Maximum Target Temperature for a Sample to be Successful
199
+ * @property {number} [minimumWithinTargetDuration] The Minimum Duration (in seconds) that a Sample should be within the Min and Max Target Temperatures to be Compliant
200
+ * @property {number} [minimumTotalDuration] The Minimum Duration (in seconds) that a Sample must be Dehydrated for to be Compliant
201
+ * @property {number} [maximumTotalDuration] The Maximum Duration (in seconds) that a Sample can be Dehydrated for before it is Considered Non-Compliant
202
+ * @property {number} [minimumTargetTemperature] The Minimum Target Temperature for a Sample to be Compliant
203
+ * @property {number} [maximumTargetTemperature] The Maximum Target Temperature for a Sample to be Compliant
202
204
  * @memberof Controllers.Lab.Site
203
205
  */
204
206
 
@@ -213,9 +213,12 @@ var _default = LabController;
213
213
  * A **InspectIntegration** Type
214
214
  *
215
215
  * @typedef {Object} LabController.InspectIntegration
216
- * @property {Object} points The Points used for this Inspect Integration
216
+ * @property {{sqlServerCommunicationStatus: number, sampleCreationEnabled: number, sampleSchedulingEnabled: number, samplePublishingEnabled: number}} points The Points used for this Inspect Integration
217
217
  * @property {boolean} enabled Whether the Inspect Integration is Enabled on this Lab
218
- * @property {string} apiBaseUrl Base URL of the Inspect API
218
+ * @property {string} labName Name of the Lab referenced by Inspect
219
+ * @property {string} sqlServerHost Host of the Inspect SQL Server
220
+ * @property {string} sqlServerUsername Username for Authentication with the Inspect SQL Server
221
+ * @property {string} sqlServerPassword Password for Authentication with the Inspect SQL Server
219
222
  * @memberof Controllers.Lab.Site
220
223
  */
221
224
 
@@ -183,7 +183,7 @@ var _default = RackPositionController;
183
183
  * @typedef {Object} RackPositionController.CreateData
184
184
  * @property {?number} [rtuId] The RTU this Rack Position belongs to
185
185
  * @property {string} name The Name of this Rack Position
186
- * @property {{pushButton: number, indicatorLight: number, temperature: number, calibrationOffset: number, disabled: number, currentSampleId: number, currentSampleStatus: number, nextSampleId: number, startCurrentSampleRequest: number, finishCurrentSampleRequest: number, currentSampleTotalDuration: number, currentSampleWarmUpDuration: number, currentSampleWarmUpCompleted: number, currentSampleBelowTargetDuration: number, currentSampleAboveTargetDuration: number, currentSampleWithinTargetDuration: number, currentSampleSuccessCriteriaMet: number, currentSampleFailureCriteriaMet: number}} points The Points used by this Rack Position
186
+ * @property {{pushButton: number, indicatorLight: number, temperature: number, calibrationOffset: number, disabled: number, currentSampleId: number, currentSampleStatus: number, nextSampleId: number, loadCurrentSampleRequest: number, startCurrentSampleRequest: number, finishCurrentSampleRequest: number, unloadCurrentSampleRequest: number, currentSampleTotalDuration: number, currentSampleWarmUpDuration: number, currentSampleWarmUpRateOfChange: number, currentSampleWarmUpWarning: number, currentSampleWarmUpCompleted: number, currentSampleBelowTargetDuration: number, currentSampleAboveTargetDuration: number, currentSampleWithinTargetDuration: number, currentSampleFinishCriteriaMet: number, currentSampleLatestUnloadTimestamp: number}} points The Points used by this Rack Position
187
187
  * @property {string} labId The Lab that owns this Rack Position
188
188
  * @property {string} rackId The Rack associated with this Rack Position
189
189
  * @property {number} verticalLevelIndex The Index of the Vertical Level in the Rack where this Position resides
@@ -196,7 +196,7 @@ var _default = RackPositionController;
196
196
  *
197
197
  * @typedef {Object} RackPositionController.UpdateData
198
198
  * @property {string} [name] The Name of this Rack Position
199
- * @property {{pushButton: number, indicatorLight: number, temperature: number, calibrationOffset: number, disabled: number, currentSampleId: number, currentSampleStatus: number, nextSampleId: number, startCurrentSampleRequest: number, finishCurrentSampleRequest: number, currentSampleTotalDuration: number, currentSampleWarmUpDuration: number, currentSampleWarmUpCompleted: number, currentSampleBelowTargetDuration: number, currentSampleAboveTargetDuration: number, currentSampleWithinTargetDuration: number, currentSampleSuccessCriteriaMet: number, currentSampleFailureCriteriaMet: number}} [points] The Points used by this Rack Position
199
+ * @property {{pushButton: number, indicatorLight: number, temperature: number, calibrationOffset: number, disabled: number, currentSampleId: number, currentSampleStatus: number, nextSampleId: number, loadCurrentSampleRequest: number, startCurrentSampleRequest: number, finishCurrentSampleRequest: number, unloadCurrentSampleRequest: number, currentSampleTotalDuration: number, currentSampleWarmUpDuration: number, currentSampleWarmUpRateOfChange: number, currentSampleWarmUpWarning: number, currentSampleWarmUpCompleted: number, currentSampleBelowTargetDuration: number, currentSampleAboveTargetDuration: number, currentSampleWithinTargetDuration: number, currentSampleFinishCriteriaMet: number, currentSampleLatestUnloadTimestamp: number}} [points] The Points used by this Rack Position
200
200
  * @property {string} [labId] The Lab that owns this Rack Position
201
201
  * @property {string} [rackId] The Rack associated with this Rack Position
202
202
  * @property {number} [verticalLevelIndex] The Index of the Vertical Level in the Rack where this Position resides
@@ -915,15 +915,12 @@ var _default = SampleController;
915
915
  * @property {string} [labId] The Lab ID this Sample is associated with
916
916
  * @property {string} [sampleNumber] The Numeric Sample Number
917
917
  * @property {string} [createdSource] The Source that Created this Sample
918
- * @property {?string} [createdUserId] ID of the User who Created this Sample. Only applies if the `createdSource` is 'User'
919
- * @property {?string} [createdUserName] Name of the User who Created this Sample. Only applies if the `createdSource` is 'User'
920
- * @property {?string} [publishUserId] ID of the User who Published this Sample
918
+ * @property {?string} [createdUserName] Name of the User who Created this Sample
919
+ * @property {?string} [publishSource] The Source that Published this Sample
921
920
  * @property {?string} [publishUserName] Name of the User who Published this Sample
922
921
  * @property {string} [fruitProfileId] The Fruit Profile for this Sample
923
922
  * @property {string} [rackPositionId] The Rack Position used for this Sample
924
923
  * @property {string} [dehydratorId] The Dehydrator used for this Sample
925
- * @property {?string} [outcome] The Outcome of this Sample
926
- * @property {?string} [failureReasonId] A Sample Failure Reason ID if this Sample Failed
927
924
  * @property {?string} [resultId] The Sample Result ID asociated with this Sample
928
925
  * @property {Date} [createdTimestampBegin] Filter by the Timestamp when Samples were Created. Results Greater than or Equal to Timestamp
929
926
  * @property {Date} [createdTimestampEnd] Filter by the Timestamp when Samples were Created. Results Less than or Equal to Timestamp
@@ -941,6 +938,7 @@ var _default = SampleController;
941
938
  * @property {Date} [publishTimestampEnd] Filter by the Timestamp when Samples were Published. Results Less than or Equal to Timestamp
942
939
  * @property {Date} [updateTimestampBegin] Filter by the Timestamp when Samples were last Updated. Results Greater than or Equal to Timestamp
943
940
  * @property {Date} [updateTimestampEnd] Filter by the Timestamp when Samples were last Updated. Results Less than or Equal to Timestamp
941
+ * @property {boolean} [publishedState] Filter by Published State of a Sample. `true` = Published, `false` = Not Published
944
942
  * @memberof Controllers.Lab.Site
945
943
  */
946
944
 
@@ -952,21 +950,18 @@ var _default = SampleController;
952
950
  * @property {string} [sampleNumber] The Numeric Sample Number
953
951
  * @property {Date} [createdTimestamp] When this Sample was Created
954
952
  * @property {string} createdSource The Source that Created this Sample
955
- * @property {?string} [createdUserId] ID of the User who Created this Sample. Only applies if the `createdSource` is 'User'
956
- * @property {?string} [createdUserName] Name of the User who Created this Sample. Only applies if the `createdSource` is 'User'
953
+ * @property {?string} [createdUserName] Name of the User who Created this Sample
957
954
  * @property {?Date} [scheduledTimestamp] Optional Scheduled Timestamp when this Sample should Begin
958
955
  * @property {?Date} [loadedTimestamp] When this Sample was Loaded into the Dehydrator
959
956
  * @property {?Date} [startTimestamp] When this Sample was Started
960
957
  * @property {?Date} [finishTimestamp] When this Sample was Finished
961
958
  * @property {?Date} [unloadedTimestamp] When this Sample was Unloaded from the Dehydrator
962
959
  * @property {?Date} [publishTimestamp] When this Sample was Published
963
- * @property {?string} [publishUserId] ID of the User who Published this Sample
960
+ * @property {?string} [publishSource] The Source that Published this Sample
964
961
  * @property {?string} [publishUserName] Name of the User who Published this Sample
965
962
  * @property {string} fruitProfileId The Fruit Profile for this Sample
966
963
  * @property {string} rackPositionId The Rack Position used for this Sample
967
964
  * @property {string} dehydratorId The Dehydrator used for this Sample
968
- * @property {?string} [outcome] The Outcome of this Sample
969
- * @property {?string} [failureReasonId] A Sample Failure Reason ID if this Sample Failed
970
965
  * @property {?string} [resultId] The Sample Result ID asociated with this Sample
971
966
  * @memberof Controllers.Lab.Site
972
967
  */
@@ -978,21 +973,18 @@ var _default = SampleController;
978
973
  * @property {string} [labId] The Lab ID this Sample is associated with
979
974
  * @property {Date} [createdTimestamp] When this Sample was Created
980
975
  * @property {string} [createdSource] The Source that Created this Sample
981
- * @property {?string} [createdUserId] ID of the User who Created this Sample. Only applies if the `createdSource` is 'User'
982
- * @property {?string} [createdUserName] Name of the User who Created this Sample. Only applies if the `createdSource` is 'User'
976
+ * @property {?string} [createdUserName] Name of the User who Created this Sample
983
977
  * @property {?Date} [scheduledTimestamp] Optional Scheduled Timestamp when this Sample should Begin
984
978
  * @property {?Date} [loadedTimestamp] When this Sample was Loaded into the Dehydrator
985
979
  * @property {?Date} [startTimestamp] When this Sample was Started
986
980
  * @property {?Date} [finishTimestamp] When this Sample was Finished
987
981
  * @property {?Date} [unloadedTimestamp] When this Sample was Unloaded from the Dehydrator
988
982
  * @property {?Date} [publishTimestamp] When this Sample was Published
989
- * @property {?string} [publishUserId] ID of the User who Published this Sample
983
+ * @property {?string} [publishSource] The Source that Published this Sample
990
984
  * @property {?string} [publishUserName] Name of the User who Published this Sample
991
985
  * @property {string} [fruitProfileId] The Fruit Profile for this Sample
992
986
  * @property {string} [rackPositionId] The Rack Position used for this Sample
993
987
  * @property {string} [dehydratorId] The Dehydrator used for this Sample
994
- * @property {?string} [outcome] The Outcome of this Sample
995
- * @property {?string} [failureReasonId] A Sample Failure Reason ID if this Sample Failed
996
988
  * @property {?string} [resultId] The Sample Result ID asociated with this Sample
997
989
  * @memberof Controllers.Lab.Site
998
990
  */
@@ -20,7 +20,7 @@ function _defineProperties(target, props) { for (var i = 0; i < props.length; i+
20
20
  function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); Object.defineProperty(Constructor, "prototype", { writable: false }); return Constructor; }
21
21
 
22
22
  /**
23
- * Controller Class for Sample Resultss
23
+ * Controller Class for Sample Results
24
24
  *
25
25
  * @class
26
26
  */
@@ -33,12 +33,12 @@ var SampleResultController = /*#__PURE__*/function () {
33
33
  key: "getOne",
34
34
  value:
35
35
  /**
36
- * Retrieve a Sample Results [GET /lab/sites/{siteId}/sample-results/{id}]
36
+ * Retrieve a Sample Result [GET /lab/sites/{siteId}/sample-results/{id}]
37
37
  *
38
38
  * @static
39
39
  * @public
40
40
  * @param {number} siteId The Site ID
41
- * @param {string} id The Sample Results ID
41
+ * @param {string} id The Sample Result ID
42
42
  * @return {Promise<SampleResultModel>}
43
43
  */
44
44
  function getOne(siteId, id) {
@@ -55,13 +55,13 @@ var SampleResultController = /*#__PURE__*/function () {
55
55
  });
56
56
  }
57
57
  /**
58
- * Update a Sample Results [PATCH /lab/sites/{siteId}/sample-results/{id}]
58
+ * Update a Sample Result [PATCH /lab/sites/{siteId}/sample-results/{id}]
59
59
  *
60
60
  * @static
61
61
  * @public
62
62
  * @param {number} siteId The Site ID
63
- * @param {string} id The Sample Results ID
64
- * @param {SampleResultController.UpdateData} updateData The Sample Results Update Data
63
+ * @param {string} id The Sample Result ID
64
+ * @param {SampleResultController.UpdateData} updateData The Sample Result Update Data
65
65
  * @return {Promise<SampleResultModel>}
66
66
  */
67
67
 
@@ -81,12 +81,12 @@ var SampleResultController = /*#__PURE__*/function () {
81
81
  });
82
82
  }
83
83
  /**
84
- * Delete a Sample Results [DELETE /lab/sites/{siteId}/sample-results/{id}]
84
+ * Delete a Sample Result [DELETE /lab/sites/{siteId}/sample-results/{id}]
85
85
  *
86
86
  * @static
87
87
  * @public
88
88
  * @param {number} siteId The Site ID
89
- * @param {string} id The Sample Results ID
89
+ * @param {string} id The Sample Result ID
90
90
  * @return {Promise<boolean>}
91
91
  */
92
92
 
@@ -104,12 +104,12 @@ var SampleResultController = /*#__PURE__*/function () {
104
104
  /**
105
105
  * Retrieve Comments [GET /lab/sites/{siteId}/sample-results/{id}/comments]
106
106
  *
107
- * Retrieves Comments for a Sample Results
107
+ * Retrieves Comments for a Sample Result
108
108
  *
109
109
  * @static
110
110
  * @public
111
111
  * @param {number} siteId The Site ID
112
- * @param {string} id The Sample Results ID
112
+ * @param {string} id The Sample Result ID
113
113
  * @return {Promise<Array<SampleResultController.CommentItem>>}
114
114
  */
115
115
 
@@ -265,12 +265,12 @@ var SampleResultController = /*#__PURE__*/function () {
265
265
  /**
266
266
  * Create a Comment [POST /lab/sites/{siteId}/sample-results/{id}/comments]
267
267
  *
268
- * Create a Comment for a Sample Results
268
+ * Create a Comment for a Sample Result
269
269
  *
270
270
  * @static
271
271
  * @public
272
272
  * @param {number} siteId The Site ID
273
- * @param {string} id The Sample Results ID
273
+ * @param {string} id The Sample Result ID
274
274
  * @param {string} content The Content of the New Comment
275
275
  * @return {Promise<SampleResultController.CommentItem>}
276
276
  */
@@ -421,12 +421,12 @@ var SampleResultController = /*#__PURE__*/function () {
421
421
  /**
422
422
  * Retrieve a Comment [GET /lab/sites/{siteId}/sample-results/{id}/comments/{commentId}]
423
423
  *
424
- * Retrieves Comments for a Sample Results
424
+ * Retrieves Comments for a Sample Result
425
425
  *
426
426
  * @static
427
427
  * @public
428
428
  * @param {number} siteId The Site ID
429
- * @param {string} id The Sample Results ID
429
+ * @param {string} id The Sample Result ID
430
430
  * @param {string} commentId The Comment ID
431
431
  * @return {Promise<SampleResultController.CommentItem>}
432
432
  */
@@ -575,12 +575,12 @@ var SampleResultController = /*#__PURE__*/function () {
575
575
  /**
576
576
  * Update a Comment [PATCH /lab/sites/{siteId}/sample-results/{id}/comments/{commentId}]
577
577
  *
578
- * Update a Comment for a Sample Results
578
+ * Update a Comment for a Sample Result
579
579
  *
580
580
  * @static
581
581
  * @public
582
582
  * @param {number} siteId The Site ID
583
- * @param {string} id The Sample Results ID
583
+ * @param {string} id The Sample Result ID
584
584
  * @param {string} commentId The Comment ID
585
585
  * @param {string} content The Updated Content for the Comment
586
586
  * @return {Promise<SampleResultController.CommentItem>}
@@ -732,12 +732,12 @@ var SampleResultController = /*#__PURE__*/function () {
732
732
  /**
733
733
  * Delete a Comment [DELETE /lab/sites/{siteId}/sample-results/{id}/comments/{commentId}]
734
734
  *
735
- * Delete a Comment for a Sample Results
735
+ * Delete a Comment for a Sample Result
736
736
  *
737
737
  * @static
738
738
  * @public
739
739
  * @param {number} siteId The Site ID
740
- * @param {string} id The Sample Results ID
740
+ * @param {string} id The Sample Result ID
741
741
  * @param {string} commentId The Comment ID
742
742
  * @return {Promise<boolean>}
743
743
  */
@@ -754,7 +754,7 @@ var SampleResultController = /*#__PURE__*/function () {
754
754
  });
755
755
  }
756
756
  /**
757
- * List all Sample Resultss [GET /lab/sites/{siteId}/sample-results]
757
+ * List all Sample Results [GET /lab/sites/{siteId}/sample-results]
758
758
  *
759
759
  * @static
760
760
  * @public
@@ -788,12 +788,12 @@ var SampleResultController = /*#__PURE__*/function () {
788
788
  });
789
789
  }
790
790
  /**
791
- * Create a Sample Results [POST /lab/sites/{siteId}/sample-results]
791
+ * Create a Sample Result [POST /lab/sites/{siteId}/sample-results]
792
792
  *
793
793
  * @static
794
794
  * @public
795
795
  * @param {number} siteId The Site ID
796
- * @param {SampleResultController.CreateData} createData The Sample Results Create Data
796
+ * @param {SampleResultController.CreateData} createData The Sample Result Create Data
797
797
  * @return {Promise<SampleResultModel>}
798
798
  */
799
799
 
@@ -830,7 +830,7 @@ var _default = SampleResultController;
830
830
  */
831
831
 
832
832
  /**
833
- * The Create Data for a Sample Results
833
+ * The Create Data for a Sample Result
834
834
  *
835
835
  * @typedef {Object} SampleResultController.CreateData
836
836
  * @property {string} labId The Lab ID this Sample Result is associated with
@@ -842,9 +842,10 @@ var _default = SampleResultController;
842
842
  * @property {number} belowTargetDuration The Below Temperature Target Duration (in seconds) of the Sample
843
843
  * @property {number} aboveTargetDuration The Above Temperature Target Duration (in seconds) of the Sample
844
844
  * @property {number} withinTargetDuration The Within Temperature Target Duration (in seconds) of the Sample
845
- * @property {?Date} [successCriteriaMetTimestamp] Timestamp of when the Success Criteria was Met for the Sample - `null` if not Met
846
- * @property {?Date} [failureCriteriaMetTimestamp] Timestamp of when the Failure Criteria was Met for the Sample - `null` if not Met
845
+ * @property {?Date} [finishCriteriaMetTimestamp] Timestamp of when the Finish Criteria was Met for the Sample - `null` if not Met
846
+ * @property {?Date} [latestUnloadTimestamp] Latest Possible Timestamp of when the Sample should have been Unloaded to remain Compliant
847
847
  * @property {?number} [totalAverageTemperature] The Average Temperature for the Total Duration of the Sample
848
+ * @property {?number} [warmUpRateOfChangeTemperature] The Average Temperature Rate-of-Change seen during the Warm Up process for the Sample
848
849
  * @property {?number} [belowTargetMinimumTemperature] The Minimum Temperature seen Below the Temperature Target for the Sample
849
850
  * @property {?number} [belowTargetAverageTemperature] The Average Temperature seen Below the Temperature Target for the Sample
850
851
  * @property {?number} [aboveTargetMaximumTemperature] The Maximum Temperature seen Above the Temperature Target for the Sample
@@ -856,7 +857,7 @@ var _default = SampleResultController;
856
857
  */
857
858
 
858
859
  /**
859
- * The Update Data for a Sample Results
860
+ * The Update Data for a Sample Result
860
861
  *
861
862
  * @typedef {Object} SampleResultController.UpdateData
862
863
  * @property {string} [labId] The Lab ID this Sample Result is associated with
@@ -867,9 +868,10 @@ var _default = SampleResultController;
867
868
  * @property {number} [belowTargetDuration] The Below Temperature Target Duration (in seconds) of the Sample
868
869
  * @property {number} [aboveTargetDuration] The Above Temperature Target Duration (in seconds) of the Sample
869
870
  * @property {number} [withinTargetDuration] The Within Temperature Target Duration (in seconds) of the Sample
870
- * @property {?Date} [successCriteriaMetTimestamp] Timestamp of when the Success Criteria was Met for the Sample - `null` if not Met
871
- * @property {?Date} [failureCriteriaMetTimestamp] Timestamp of when the Failure Criteria was Met for the Sample - `null` if not Met
871
+ * @property {?Date} [finishCriteriaMetTimestamp] Timestamp of when the Finish Criteria was Met for the Sample - `null` if not Met
872
+ * @property {?Date} [latestUnloadTimestamp] Latest Possible Timestamp of when the Sample should have been Unloaded to remain Compliant
872
873
  * @property {?number} [totalAverageTemperature] The Average Temperature for the Total Duration of the Sample
874
+ * @property {?number} [warmUpRateOfChangeTemperature] The Average Temperature Rate-of-Change seen during the Warm Up process for the Sample
873
875
  * @property {?number} [belowTargetMinimumTemperature] The Minimum Temperature seen Below the Temperature Target for the Sample
874
876
  * @property {?number} [belowTargetAverageTemperature] The Average Temperature seen Below the Temperature Target for the Sample
875
877
  * @property {?number} [aboveTargetMaximumTemperature] The Maximum Temperature seen Above the Temperature Target for the Sample
@@ -19,8 +19,6 @@ var _RackPositionController = _interopRequireDefault(require("./RackPositionCont
19
19
 
20
20
  var _SampleController = _interopRequireDefault(require("./SampleController"));
21
21
 
22
- var _SampleFailureReasonController = _interopRequireDefault(require("./SampleFailureReasonController"));
23
-
24
22
  var _SampleResultController = _interopRequireDefault(require("./SampleResultController"));
25
23
 
26
24
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
@@ -42,7 +40,6 @@ var Site = {
42
40
  RackController: _RackController.default,
43
41
  RackPositionController: _RackPositionController.default,
44
42
  SampleController: _SampleController.default,
45
- SampleFailureReasonController: _SampleFailureReasonController.default,
46
43
  SampleResultController: _SampleResultController.default
47
44
  };
48
45
  var _default = Site;
@@ -96,7 +96,7 @@ var FruitProfileModel = /*#__PURE__*/function (_BaseModel) {
96
96
 
97
97
  _this.nominalWarmUpDuration = 0;
98
98
  /**
99
- * The Minimum Duration (in seconds) that a Sample should be within the Min and Max Target Temperatures be Successful
99
+ * The Minimum Duration (in seconds) that a Sample should be within the Min and Max Target Temperatures to be Compliant
100
100
  *
101
101
  * @type {number}
102
102
  * @public
@@ -104,7 +104,15 @@ var FruitProfileModel = /*#__PURE__*/function (_BaseModel) {
104
104
 
105
105
  _this.minimumWithinTargetDuration = 0;
106
106
  /**
107
- * The Maximum Duration (in seconds) that a Sample should be Dehydrated for before it Fails
107
+ * The Minimum Duration (in seconds) that a Sample must be Dehydrated for to be Compliant
108
+ *
109
+ * @type {number}
110
+ * @public
111
+ */
112
+
113
+ _this.minimumTotalDuration = 0;
114
+ /**
115
+ * The Maximum Duration (in seconds) that a Sample can be Dehydrated for before it is Considered Non-Compliant
108
116
  *
109
117
  * @type {number}
110
118
  * @public
@@ -112,7 +120,7 @@ var FruitProfileModel = /*#__PURE__*/function (_BaseModel) {
112
120
 
113
121
  _this.maximumTotalDuration = 0;
114
122
  /**
115
- * The Minimum Target Temperature for a Sample to be Successful
123
+ * The Minimum Target Temperature for a Sample to be Compliant
116
124
  *
117
125
  * @type {number}
118
126
  * @public
@@ -120,7 +128,7 @@ var FruitProfileModel = /*#__PURE__*/function (_BaseModel) {
120
128
 
121
129
  _this.minimumTargetTemperature = 0;
122
130
  /**
123
- * The Maximum Target Temperature for a Sample to be Successful
131
+ * The Maximum Target Temperature for a Sample to be Compliant
124
132
  *
125
133
  * @type {number}
126
134
  * @public
@@ -242,6 +250,16 @@ var FruitProfileModel = /*#__PURE__*/function (_BaseModel) {
242
250
  }();
243
251
  }
244
252
 
253
+ if ('minimumTotalDuration' in jsonObject) {
254
+ model.minimumTotalDuration = function () {
255
+ if (typeof jsonObject['minimumTotalDuration'] !== 'number') {
256
+ return Number.isInteger(Number(jsonObject['minimumTotalDuration'])) ? Number(jsonObject['minimumTotalDuration']) : Math.floor(Number(jsonObject['minimumTotalDuration']));
257
+ }
258
+
259
+ return Number.isInteger(jsonObject['minimumTotalDuration']) ? jsonObject['minimumTotalDuration'] : Math.floor(jsonObject['minimumTotalDuration']);
260
+ }();
261
+ }
262
+
245
263
  if ('maximumTotalDuration' in jsonObject) {
246
264
  model.maximumTotalDuration = function () {
247
265
  if (typeof jsonObject['maximumTotalDuration'] !== 'number') {
@@ -114,7 +114,7 @@ var LabModel = /*#__PURE__*/function (_BaseModel) {
114
114
  /**
115
115
  * The Inspect Integration Configuration for this Lab
116
116
  *
117
- * @type {?{points: Object, enabled: boolean, apiBaseUrl: string}}
117
+ * @type {?{points: {sqlServerCommunicationStatus: number, sampleCreationEnabled: number, sampleSchedulingEnabled: number, samplePublishingEnabled: number}, enabled: boolean, labName: string, sqlServerHost: string, sqlServerUsername: string, sqlServerPassword: string}}
118
118
  * @public
119
119
  */
120
120
 
@@ -296,14 +296,67 @@ var LabModel = /*#__PURE__*/function (_BaseModel) {
296
296
 
297
297
  if (_typeof(jsonObject['inspectIntegration']) === 'object' && 'points' in jsonObject['inspectIntegration']) {
298
298
  inspectIntegrationObject.points = function () {
299
- if (_typeof(jsonObject['inspectIntegration'].points) !== 'object') {
300
- return Object(jsonObject['inspectIntegration'].points);
299
+ var pointsObject = {};
300
+
301
+ if (_typeof(jsonObject['inspectIntegration'].points) === 'object' && 'sqlServerCommunicationStatus' in jsonObject['inspectIntegration'].points) {
302
+ pointsObject.sqlServerCommunicationStatus = function () {
303
+ if (typeof jsonObject['inspectIntegration'].points.sqlServerCommunicationStatus !== 'number') {
304
+ return Number.isInteger(Number(jsonObject['inspectIntegration'].points.sqlServerCommunicationStatus)) ? Number(jsonObject['inspectIntegration'].points.sqlServerCommunicationStatus) : Math.floor(Number(jsonObject['inspectIntegration'].points.sqlServerCommunicationStatus));
305
+ }
306
+
307
+ return Number.isInteger(jsonObject['inspectIntegration'].points.sqlServerCommunicationStatus) ? jsonObject['inspectIntegration'].points.sqlServerCommunicationStatus : Math.floor(jsonObject['inspectIntegration'].points.sqlServerCommunicationStatus);
308
+ }();
309
+ } else {
310
+ pointsObject.sqlServerCommunicationStatus = 0;
311
+ }
312
+
313
+ if (_typeof(jsonObject['inspectIntegration'].points) === 'object' && 'sampleCreationEnabled' in jsonObject['inspectIntegration'].points) {
314
+ pointsObject.sampleCreationEnabled = function () {
315
+ if (typeof jsonObject['inspectIntegration'].points.sampleCreationEnabled !== 'number') {
316
+ return Number.isInteger(Number(jsonObject['inspectIntegration'].points.sampleCreationEnabled)) ? Number(jsonObject['inspectIntegration'].points.sampleCreationEnabled) : Math.floor(Number(jsonObject['inspectIntegration'].points.sampleCreationEnabled));
317
+ }
318
+
319
+ return Number.isInteger(jsonObject['inspectIntegration'].points.sampleCreationEnabled) ? jsonObject['inspectIntegration'].points.sampleCreationEnabled : Math.floor(jsonObject['inspectIntegration'].points.sampleCreationEnabled);
320
+ }();
321
+ } else {
322
+ pointsObject.sampleCreationEnabled = 0;
301
323
  }
302
324
 
303
- return jsonObject['inspectIntegration'].points;
325
+ if (_typeof(jsonObject['inspectIntegration'].points) === 'object' && 'sampleSchedulingEnabled' in jsonObject['inspectIntegration'].points) {
326
+ pointsObject.sampleSchedulingEnabled = function () {
327
+ if (typeof jsonObject['inspectIntegration'].points.sampleSchedulingEnabled !== 'number') {
328
+ return Number.isInteger(Number(jsonObject['inspectIntegration'].points.sampleSchedulingEnabled)) ? Number(jsonObject['inspectIntegration'].points.sampleSchedulingEnabled) : Math.floor(Number(jsonObject['inspectIntegration'].points.sampleSchedulingEnabled));
329
+ }
330
+
331
+ return Number.isInteger(jsonObject['inspectIntegration'].points.sampleSchedulingEnabled) ? jsonObject['inspectIntegration'].points.sampleSchedulingEnabled : Math.floor(jsonObject['inspectIntegration'].points.sampleSchedulingEnabled);
332
+ }();
333
+ } else {
334
+ pointsObject.sampleSchedulingEnabled = 0;
335
+ }
336
+
337
+ if (_typeof(jsonObject['inspectIntegration'].points) === 'object' && 'samplePublishingEnabled' in jsonObject['inspectIntegration'].points) {
338
+ pointsObject.samplePublishingEnabled = function () {
339
+ if (typeof jsonObject['inspectIntegration'].points.samplePublishingEnabled !== 'number') {
340
+ return Number.isInteger(Number(jsonObject['inspectIntegration'].points.samplePublishingEnabled)) ? Number(jsonObject['inspectIntegration'].points.samplePublishingEnabled) : Math.floor(Number(jsonObject['inspectIntegration'].points.samplePublishingEnabled));
341
+ }
342
+
343
+ return Number.isInteger(jsonObject['inspectIntegration'].points.samplePublishingEnabled) ? jsonObject['inspectIntegration'].points.samplePublishingEnabled : Math.floor(jsonObject['inspectIntegration'].points.samplePublishingEnabled);
344
+ }();
345
+ } else {
346
+ pointsObject.samplePublishingEnabled = 0;
347
+ }
348
+
349
+ return pointsObject;
304
350
  }();
305
351
  } else {
306
- inspectIntegrationObject.points = {};
352
+ inspectIntegrationObject.points = function () {
353
+ var pointsDefaultValue = {};
354
+ pointsDefaultValue.sqlServerCommunicationStatus = 0;
355
+ pointsDefaultValue.sampleCreationEnabled = 0;
356
+ pointsDefaultValue.sampleSchedulingEnabled = 0;
357
+ pointsDefaultValue.samplePublishingEnabled = 0;
358
+ return pointsDefaultValue;
359
+ }();
307
360
  }
308
361
 
309
362
  if (_typeof(jsonObject['inspectIntegration']) === 'object' && 'enabled' in jsonObject['inspectIntegration']) {
@@ -318,16 +371,52 @@ var LabModel = /*#__PURE__*/function (_BaseModel) {
318
371
  inspectIntegrationObject.enabled = false;
319
372
  }
320
373
 
321
- if (_typeof(jsonObject['inspectIntegration']) === 'object' && 'apiBaseUrl' in jsonObject['inspectIntegration']) {
322
- inspectIntegrationObject.apiBaseUrl = function () {
323
- if (typeof jsonObject['inspectIntegration'].apiBaseUrl !== 'string') {
324
- return String(jsonObject['inspectIntegration'].apiBaseUrl);
374
+ if (_typeof(jsonObject['inspectIntegration']) === 'object' && 'labName' in jsonObject['inspectIntegration']) {
375
+ inspectIntegrationObject.labName = function () {
376
+ if (typeof jsonObject['inspectIntegration'].labName !== 'string') {
377
+ return String(jsonObject['inspectIntegration'].labName);
378
+ }
379
+
380
+ return jsonObject['inspectIntegration'].labName;
381
+ }();
382
+ } else {
383
+ inspectIntegrationObject.labName = "";
384
+ }
385
+
386
+ if (_typeof(jsonObject['inspectIntegration']) === 'object' && 'sqlServerHost' in jsonObject['inspectIntegration']) {
387
+ inspectIntegrationObject.sqlServerHost = function () {
388
+ if (typeof jsonObject['inspectIntegration'].sqlServerHost !== 'string') {
389
+ return String(jsonObject['inspectIntegration'].sqlServerHost);
390
+ }
391
+
392
+ return jsonObject['inspectIntegration'].sqlServerHost;
393
+ }();
394
+ } else {
395
+ inspectIntegrationObject.sqlServerHost = "";
396
+ }
397
+
398
+ if (_typeof(jsonObject['inspectIntegration']) === 'object' && 'sqlServerUsername' in jsonObject['inspectIntegration']) {
399
+ inspectIntegrationObject.sqlServerUsername = function () {
400
+ if (typeof jsonObject['inspectIntegration'].sqlServerUsername !== 'string') {
401
+ return String(jsonObject['inspectIntegration'].sqlServerUsername);
402
+ }
403
+
404
+ return jsonObject['inspectIntegration'].sqlServerUsername;
405
+ }();
406
+ } else {
407
+ inspectIntegrationObject.sqlServerUsername = "";
408
+ }
409
+
410
+ if (_typeof(jsonObject['inspectIntegration']) === 'object' && 'sqlServerPassword' in jsonObject['inspectIntegration']) {
411
+ inspectIntegrationObject.sqlServerPassword = function () {
412
+ if (typeof jsonObject['inspectIntegration'].sqlServerPassword !== 'string') {
413
+ return String(jsonObject['inspectIntegration'].sqlServerPassword);
325
414
  }
326
415
 
327
- return jsonObject['inspectIntegration'].apiBaseUrl;
416
+ return jsonObject['inspectIntegration'].sqlServerPassword;
328
417
  }();
329
418
  } else {
330
- inspectIntegrationObject.apiBaseUrl = "";
419
+ inspectIntegrationObject.sqlServerPassword = "";
331
420
  }
332
421
 
333
422
  return inspectIntegrationObject;