avvir 2.0.0 → 2.0.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.
- package/dist/avvir_api.node.js +21 -3
- package/dist/esm/api/scan_dataset_api.d.ts +2 -0
- package/dist/esm/api/scan_dataset_api.js +4 -0
- package/dist/esm/api/scan_dataset_api.js.map +1 -1
- package/dist/esm/models/api/api_scan_dataset.d.ts +13 -3
- package/dist/esm/models/api/api_scan_dataset.js +15 -3
- package/dist/esm/models/api/api_scan_dataset.js.map +1 -1
- package/package.json +1 -1
- package/source/api/scan_dataset_api.ts +13 -0
- package/source/models/api/api_scan_dataset.ts +17 -4
package/dist/avvir_api.node.js
CHANGED
|
@@ -1280,6 +1280,11 @@ var ScanDatasetApi = /** @class */ (function () {
|
|
|
1280
1280
|
var url = _utilities_http__WEBPACK_IMPORTED_MODULE_0__["default"].baseUrl() + "/projects/" + projectId + "/floors/" + floorId + "/scan-datasets/" + scanDatasetId + "/photo-session/" + id;
|
|
1281
1281
|
return _utilities_http__WEBPACK_IMPORTED_MODULE_0__["default"].post(url, user, { sessionDate: sessionDate });
|
|
1282
1282
|
};
|
|
1283
|
+
ScanDatasetApi.updateQaState = function (_a, qaState, user) {
|
|
1284
|
+
var projectId = _a.projectId, floorId = _a.floorId, scanDatasetId = _a.scanDatasetId;
|
|
1285
|
+
var url = _utilities_http__WEBPACK_IMPORTED_MODULE_0__["default"].baseUrl() + "/projects/" + projectId + "/floors/" + floorId + "/scan-datasets/" + scanDatasetId + "/qa-state";
|
|
1286
|
+
return _utilities_http__WEBPACK_IMPORTED_MODULE_0__["default"].post(url, user, qaState);
|
|
1287
|
+
};
|
|
1283
1288
|
return ScanDatasetApi;
|
|
1284
1289
|
}());
|
|
1285
1290
|
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (ScanDatasetApi);
|
|
@@ -4616,6 +4621,7 @@ var ApiRunningProcess = /** @class */ (function () {
|
|
|
4616
4621
|
"use strict";
|
|
4617
4622
|
__webpack_require__.r(__webpack_exports__);
|
|
4618
4623
|
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
|
|
4624
|
+
/* harmony export */ "ApiScanDatasetQaState": () => (/* binding */ ApiScanDatasetQaState),
|
|
4619
4625
|
/* harmony export */ "ApiScanDataset": () => (/* binding */ ApiScanDataset),
|
|
4620
4626
|
/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__)
|
|
4621
4627
|
/* harmony export */ });
|
|
@@ -4628,9 +4634,15 @@ __webpack_require__.r(__webpack_exports__);
|
|
|
4628
4634
|
|
|
4629
4635
|
|
|
4630
4636
|
|
|
4637
|
+
var ApiScanDatasetQaState;
|
|
4638
|
+
(function (ApiScanDatasetQaState) {
|
|
4639
|
+
ApiScanDatasetQaState["NOT_STARTED"] = "NOT_STARTED";
|
|
4640
|
+
ApiScanDatasetQaState["STARTED"] = "STARTED";
|
|
4641
|
+
ApiScanDatasetQaState["COMPLETED"] = "COMPLETED";
|
|
4642
|
+
})(ApiScanDatasetQaState || (ApiScanDatasetQaState = {}));
|
|
4631
4643
|
var ApiScanDataset = /** @class */ (function () {
|
|
4632
4644
|
function ApiScanDataset(_a) {
|
|
4633
|
-
var id = _a.id, firebaseId = _a.firebaseId, firebaseFloorId = _a.firebaseFloorId, scanNumber = _a.scanNumber, dataPresences = _a.dataPresences, analysisCompleted = _a.analysisCompleted, manualQcPresent = _a.manualQcPresent, notes = _a.notes, name = _a.name, coarseAlignmentMatrix = _a.coarseAlignmentMatrix, fineAlignmentMatrix = _a.fineAlignmentMatrix, scanDate = _a.scanDate, scanDateString = _a.scanDateString, qaStarted = _a.qaStarted, qaComplete = _a.qaComplete;
|
|
4645
|
+
var id = _a.id, firebaseId = _a.firebaseId, firebaseFloorId = _a.firebaseFloorId, scanNumber = _a.scanNumber, dataPresences = _a.dataPresences, analysisCompleted = _a.analysisCompleted, manualQcPresent = _a.manualQcPresent, notes = _a.notes, name = _a.name, coarseAlignmentMatrix = _a.coarseAlignmentMatrix, fineAlignmentMatrix = _a.fineAlignmentMatrix, scanDate = _a.scanDate, scanDateString = _a.scanDateString, qaStarted = _a.qaStarted, qaComplete = _a.qaComplete, qaState = _a.qaState;
|
|
4634
4646
|
/**
|
|
4635
4647
|
* Date that the dataset was captured.
|
|
4636
4648
|
*/
|
|
@@ -4643,8 +4655,13 @@ var ApiScanDataset = /** @class */ (function () {
|
|
|
4643
4655
|
this.fineAlignmentMatrix = null;
|
|
4644
4656
|
this.notes = null;
|
|
4645
4657
|
this.name = null;
|
|
4646
|
-
this.qaComplete = null;
|
|
4647
4658
|
this.qaStarted = null;
|
|
4659
|
+
this.qaComplete = null;
|
|
4660
|
+
/**
|
|
4661
|
+
* current QA/QC state based on qaStarted/qaComplete, calculated by the
|
|
4662
|
+
* gateway so the frontend doesn't need to replicate business logic
|
|
4663
|
+
*/
|
|
4664
|
+
this.qaState = null;
|
|
4648
4665
|
(0,_mixins_add_instant_getter_and_setter_to_api_model__WEBPACK_IMPORTED_MODULE_1__["default"])(this, "scanDate");
|
|
4649
4666
|
(0,_mixins_add_read_only_properties_to_model__WEBPACK_IMPORTED_MODULE_3__["default"])(this, { id: id, firebaseId: firebaseId, firebaseFloorId: firebaseFloorId, scanNumber: scanNumber });
|
|
4650
4667
|
var coarseAlignmentMatrixVal, fineAlignmentMatrixVal;
|
|
@@ -4698,8 +4715,9 @@ var ApiScanDataset = /** @class */ (function () {
|
|
|
4698
4715
|
this.scanDateString = scanDateString;
|
|
4699
4716
|
this.analysisCompleted = analysisCompleted;
|
|
4700
4717
|
this.manualQcPresent = manualQcPresent;
|
|
4701
|
-
this.qaComplete = qaComplete;
|
|
4702
4718
|
this.qaStarted = qaStarted;
|
|
4719
|
+
this.qaComplete = qaComplete;
|
|
4720
|
+
this.qaState = qaState;
|
|
4703
4721
|
}
|
|
4704
4722
|
return ApiScanDataset;
|
|
4705
4723
|
}());
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import { User } from "../utilities/get_authorization_headers";
|
|
2
2
|
import { ApiBuiltStatus, ApiDetailedElement, ApiPhotoSession, ApiScanDataset, ApiScannedElementType, AssociationIds, DateLike } from "../models";
|
|
3
3
|
import ApiView, { ViewParameter } from "../models/api/api_view";
|
|
4
|
+
import { ApiScanDatasetQaState } from "../models/api/api_scan_dataset";
|
|
4
5
|
export default class ScanDatasetApi {
|
|
5
6
|
static listScanDatasetsForFloor({ projectId, floorId }: AssociationIds, user: User): Promise<ApiScanDataset[]>;
|
|
6
7
|
static mergeScanDataset({ projectId, floorId, scanDatasetId }: AssociationIds, scanDataset: ApiScanDataset, user: User): Promise<void>;
|
|
@@ -23,4 +24,5 @@ export default class ScanDatasetApi {
|
|
|
23
24
|
static getNewElementsForScanDataset({ projectId, floorId, scanDatasetId }: AssociationIds, user: User): Promise<string[]>;
|
|
24
25
|
static getOrCreatePhotoSession({ projectId, floorId, scanDatasetId }: AssociationIds, user: User): Promise<ApiPhotoSession>;
|
|
25
26
|
static updatePhotoSession({ projectId, floorId, scanDatasetId }: AssociationIds, { id, photoAreaId, sessionDate }: ApiPhotoSession, user: User): Promise<ApiPhotoSession>;
|
|
27
|
+
static updateQaState({ projectId, floorId, scanDatasetId }: AssociationIds, qaState: ApiScanDatasetQaState, user: User): Promise<ApiPhotoSession>;
|
|
26
28
|
}
|
|
@@ -71,6 +71,10 @@ export default class ScanDatasetApi {
|
|
|
71
71
|
const url = `${Http.baseUrl()}/projects/${projectId}/floors/${floorId}/scan-datasets/${scanDatasetId}/photo-session/${id}`;
|
|
72
72
|
return Http.post(url, user, { sessionDate });
|
|
73
73
|
}
|
|
74
|
+
static updateQaState({ projectId, floorId, scanDatasetId }, qaState, user) {
|
|
75
|
+
const url = `${Http.baseUrl()}/projects/${projectId}/floors/${floorId}/scan-datasets/${scanDatasetId}/qa-state`;
|
|
76
|
+
return Http.post(url, user, qaState);
|
|
77
|
+
}
|
|
74
78
|
}
|
|
75
79
|
makeErrorsPretty(ScanDatasetApi);
|
|
76
80
|
//# sourceMappingURL=scan_dataset_api.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"scan_dataset_api.js","sourceRoot":"","sources":["../../../source/api/scan_dataset_api.ts"],"names":[],"mappings":"AAEA,OAAO,IAAI,MAAM,mBAAmB,CAAC;AACrC,OAAO,gBAAgB,MAAM,iCAAiC,CAAC;AAE/D,OAAO,EAAE,aAAa,EAAE,MAAM,eAAe,CAAC;
|
|
1
|
+
{"version":3,"file":"scan_dataset_api.js","sourceRoot":"","sources":["../../../source/api/scan_dataset_api.ts"],"names":[],"mappings":"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"}
|
|
@@ -8,8 +8,13 @@ export interface ApiScanDatasetArgument extends Partial<Modify<ApiScanDataset, {
|
|
|
8
8
|
scanDateString?: string;
|
|
9
9
|
}>> {
|
|
10
10
|
}
|
|
11
|
+
export declare enum ApiScanDatasetQaState {
|
|
12
|
+
NOT_STARTED = "NOT_STARTED",
|
|
13
|
+
STARTED = "STARTED",
|
|
14
|
+
COMPLETED = "COMPLETED"
|
|
15
|
+
}
|
|
11
16
|
export declare class ApiScanDataset {
|
|
12
|
-
constructor({ id, firebaseId, firebaseFloorId, scanNumber, dataPresences, analysisCompleted, manualQcPresent, notes, name, coarseAlignmentMatrix, fineAlignmentMatrix, scanDate, scanDateString, qaStarted, qaComplete }: ApiScanDatasetArgument);
|
|
17
|
+
constructor({ id, firebaseId, firebaseFloorId, scanNumber, dataPresences, analysisCompleted, manualQcPresent, notes, name, coarseAlignmentMatrix, fineAlignmentMatrix, scanDate, scanDateString, qaStarted, qaComplete, qaState, }: ApiScanDatasetArgument);
|
|
13
18
|
/**
|
|
14
19
|
* Internal identifier, not used in URLs.
|
|
15
20
|
*/
|
|
@@ -43,7 +48,12 @@ export declare class ApiScanDataset {
|
|
|
43
48
|
};
|
|
44
49
|
notes: string | null;
|
|
45
50
|
name: string | null;
|
|
46
|
-
|
|
47
|
-
|
|
51
|
+
readonly qaStarted: Date | null;
|
|
52
|
+
readonly qaComplete: Date | null;
|
|
53
|
+
/**
|
|
54
|
+
* current QA/QC state based on qaStarted/qaComplete, calculated by the
|
|
55
|
+
* gateway so the frontend doesn't need to replicate business logic
|
|
56
|
+
*/
|
|
57
|
+
readonly qaState: ApiScanDatasetQaState;
|
|
48
58
|
}
|
|
49
59
|
export default ApiScanDataset;
|
|
@@ -2,8 +2,14 @@ import { Matrix4 } from "three";
|
|
|
2
2
|
import addInstantGetterAndSetterToApiModel from "../../mixins/add_instant_getter_and_setter_to_api_model";
|
|
3
3
|
import addReadOnlyPropertiesToModel from "../../mixins/add_read_only_properties_to_model";
|
|
4
4
|
import Matrix4Converter from "../../converters/matrix_4_converter";
|
|
5
|
+
export var ApiScanDatasetQaState;
|
|
6
|
+
(function (ApiScanDatasetQaState) {
|
|
7
|
+
ApiScanDatasetQaState["NOT_STARTED"] = "NOT_STARTED";
|
|
8
|
+
ApiScanDatasetQaState["STARTED"] = "STARTED";
|
|
9
|
+
ApiScanDatasetQaState["COMPLETED"] = "COMPLETED";
|
|
10
|
+
})(ApiScanDatasetQaState || (ApiScanDatasetQaState = {}));
|
|
5
11
|
export class ApiScanDataset {
|
|
6
|
-
constructor({ id, firebaseId, firebaseFloorId, scanNumber, dataPresences, analysisCompleted, manualQcPresent, notes, name, coarseAlignmentMatrix, fineAlignmentMatrix, scanDate, scanDateString, qaStarted, qaComplete }) {
|
|
12
|
+
constructor({ id, firebaseId, firebaseFloorId, scanNumber, dataPresences, analysisCompleted, manualQcPresent, notes, name, coarseAlignmentMatrix, fineAlignmentMatrix, scanDate, scanDateString, qaStarted, qaComplete, qaState, }) {
|
|
7
13
|
/**
|
|
8
14
|
* Date that the dataset was captured.
|
|
9
15
|
*/
|
|
@@ -16,8 +22,13 @@ export class ApiScanDataset {
|
|
|
16
22
|
this.fineAlignmentMatrix = null;
|
|
17
23
|
this.notes = null;
|
|
18
24
|
this.name = null;
|
|
19
|
-
this.qaComplete = null;
|
|
20
25
|
this.qaStarted = null;
|
|
26
|
+
this.qaComplete = null;
|
|
27
|
+
/**
|
|
28
|
+
* current QA/QC state based on qaStarted/qaComplete, calculated by the
|
|
29
|
+
* gateway so the frontend doesn't need to replicate business logic
|
|
30
|
+
*/
|
|
31
|
+
this.qaState = null;
|
|
21
32
|
addInstantGetterAndSetterToApiModel(this, "scanDate");
|
|
22
33
|
addReadOnlyPropertiesToModel(this, { id, firebaseId, firebaseFloorId, scanNumber });
|
|
23
34
|
let coarseAlignmentMatrixVal, fineAlignmentMatrixVal;
|
|
@@ -71,8 +82,9 @@ export class ApiScanDataset {
|
|
|
71
82
|
this.scanDateString = scanDateString;
|
|
72
83
|
this.analysisCompleted = analysisCompleted;
|
|
73
84
|
this.manualQcPresent = manualQcPresent;
|
|
74
|
-
this.qaComplete = qaComplete;
|
|
75
85
|
this.qaStarted = qaStarted;
|
|
86
|
+
this.qaComplete = qaComplete;
|
|
87
|
+
this.qaState = qaState;
|
|
76
88
|
}
|
|
77
89
|
}
|
|
78
90
|
export default ApiScanDataset;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"api_scan_dataset.js","sourceRoot":"","sources":["../../../../source/models/api/api_scan_dataset.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,OAAO,CAAC;AAChC,OAAO,mCAAmC,MAAM,yDAAyD,CAAC;AAC1G,OAAO,4BAA4B,MAAM,gDAAgD,CAAC;AAE1F,OAAO,gBAAgB,MAAM,qCAAqC,CAAC;AAUnE,MAAM,OAAO,cAAc;IACzB,YAAY,EACV,EAAE,EACF,UAAU,EACV,eAAe,EACf,UAAU,EACV,aAAa,EACb,iBAAiB,EACjB,eAAe,EACf,KAAK,EACL,IAAI,EACJ,qBAAqB,EACrB,mBAAmB,EACnB,QAAQ,EACR,cAAc,EACd,SAAS,EACT,UAAU,
|
|
1
|
+
{"version":3,"file":"api_scan_dataset.js","sourceRoot":"","sources":["../../../../source/models/api/api_scan_dataset.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -4,6 +4,7 @@ import Http from "../utilities/http";
|
|
|
4
4
|
import makeErrorsPretty from "../utilities/make_errors_pretty";
|
|
5
5
|
import ApiView, { ViewParameter } from "../models/api/api_view";
|
|
6
6
|
import { DateConverter } from "../converters";
|
|
7
|
+
import {ApiScanDatasetQaState} from "../models/api/api_scan_dataset";
|
|
7
8
|
|
|
8
9
|
export default class ScanDatasetApi {
|
|
9
10
|
static listScanDatasetsForFloor({ projectId, floorId }: AssociationIds, user: User): Promise<ApiScanDataset[]> {
|
|
@@ -143,6 +144,18 @@ export default class ScanDatasetApi {
|
|
|
143
144
|
const url = `${Http.baseUrl()}/projects/${projectId}/floors/${floorId}/scan-datasets/${scanDatasetId}/photo-session/${id}`;
|
|
144
145
|
return Http.post(url, user, { sessionDate }) as unknown as Promise<ApiPhotoSession>;
|
|
145
146
|
}
|
|
147
|
+
|
|
148
|
+
static updateQaState({
|
|
149
|
+
projectId,
|
|
150
|
+
floorId,
|
|
151
|
+
scanDatasetId
|
|
152
|
+
}: AssociationIds,
|
|
153
|
+
qaState: ApiScanDatasetQaState,
|
|
154
|
+
user: User): Promise<ApiPhotoSession> {
|
|
155
|
+
|
|
156
|
+
const url = `${Http.baseUrl()}/projects/${projectId}/floors/${floorId}/scan-datasets/${scanDatasetId}/qa-state`;
|
|
157
|
+
return Http.post(url, user, qaState) as unknown as Promise<ApiPhotoSession>;
|
|
158
|
+
}
|
|
146
159
|
}
|
|
147
160
|
|
|
148
161
|
makeErrorsPretty(ScanDatasetApi);
|
|
@@ -12,6 +12,12 @@ export interface ApiScanDatasetArgument extends Partial<Modify<ApiScanDataset, {
|
|
|
12
12
|
scanDateString?: string,
|
|
13
13
|
}>> {}
|
|
14
14
|
|
|
15
|
+
export enum ApiScanDatasetQaState {
|
|
16
|
+
NOT_STARTED = "NOT_STARTED",
|
|
17
|
+
STARTED = "STARTED",
|
|
18
|
+
COMPLETED = "COMPLETED",
|
|
19
|
+
}
|
|
20
|
+
|
|
15
21
|
export class ApiScanDataset {
|
|
16
22
|
constructor({
|
|
17
23
|
id,
|
|
@@ -28,7 +34,8 @@ export class ApiScanDataset {
|
|
|
28
34
|
scanDate,
|
|
29
35
|
scanDateString,
|
|
30
36
|
qaStarted,
|
|
31
|
-
qaComplete
|
|
37
|
+
qaComplete,
|
|
38
|
+
qaState,
|
|
32
39
|
}: ApiScanDatasetArgument) {
|
|
33
40
|
addInstantGetterAndSetterToApiModel(this, "scanDate");
|
|
34
41
|
addReadOnlyPropertiesToModel(this, { id, firebaseId, firebaseFloorId, scanNumber });
|
|
@@ -79,8 +86,9 @@ export class ApiScanDataset {
|
|
|
79
86
|
this.scanDateString = scanDateString;
|
|
80
87
|
this.analysisCompleted = analysisCompleted;
|
|
81
88
|
this.manualQcPresent = manualQcPresent;
|
|
82
|
-
this.qaComplete = qaComplete;
|
|
83
89
|
this.qaStarted = qaStarted;
|
|
90
|
+
this.qaComplete = qaComplete;
|
|
91
|
+
this.qaState = qaState;
|
|
84
92
|
}
|
|
85
93
|
|
|
86
94
|
/**
|
|
@@ -119,8 +127,13 @@ export class ApiScanDataset {
|
|
|
119
127
|
dataPresences?: { scanAnalysis?: boolean };
|
|
120
128
|
notes: string | null = null;
|
|
121
129
|
name: string | null = null;
|
|
122
|
-
|
|
123
|
-
|
|
130
|
+
readonly qaStarted: Date | null = null;
|
|
131
|
+
readonly qaComplete: Date | null = null;
|
|
132
|
+
/**
|
|
133
|
+
* current QA/QC state based on qaStarted/qaComplete, calculated by the
|
|
134
|
+
* gateway so the frontend doesn't need to replicate business logic
|
|
135
|
+
*/
|
|
136
|
+
readonly qaState: ApiScanDatasetQaState = null;
|
|
124
137
|
}
|
|
125
138
|
|
|
126
139
|
export default ApiScanDataset;
|