avvir 6.0.2 → 6.0.4
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 +352 -28
- package/dist/esm/api/floor_api.d.ts +2 -1
- package/dist/esm/api/floor_api.js +10 -2
- package/dist/esm/api/floor_api.js.map +1 -1
- package/dist/esm/api/index.d.ts +8 -7
- package/dist/esm/api/index.js +8 -7
- package/dist/esm/api/index.js.map +1 -1
- package/dist/esm/api/recipe_api.d.ts +5 -0
- package/dist/esm/api/recipe_api.js +20 -0
- package/dist/esm/api/recipe_api.js.map +1 -1
- package/dist/esm/api/scan_dataset_api.d.ts +1 -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/api/trade_api.d.ts +12 -0
- package/dist/esm/api/trade_api.js +33 -0
- package/dist/esm/api/trade_api.js.map +1 -0
- package/dist/esm/api/work_package_api.d.ts +10 -0
- package/dist/esm/api/work_package_api.js +22 -0
- package/dist/esm/api/work_package_api.js.map +1 -0
- package/dist/esm/avvir_api.d.ts +1 -0
- package/dist/esm/avvir_api.js +1 -0
- package/dist/esm/avvir_api.js.map +1 -1
- package/dist/esm/converters/floor_file_deletion_mode_converter.d.ts +5 -0
- package/dist/esm/converters/floor_file_deletion_mode_converter.js +15 -0
- package/dist/esm/converters/floor_file_deletion_mode_converter.js.map +1 -0
- package/dist/esm/index.d.ts +1 -0
- package/dist/esm/models/api/ApiFloorFileDeletionMode.d.ts +4 -0
- package/dist/esm/models/api/ApiFloorFileDeletionMode.js +6 -0
- package/dist/esm/models/api/ApiFloorFileDeletionMode.js.map +1 -0
- package/dist/esm/models/api/api_work_package.d.ts +8 -0
- package/dist/esm/models/api/api_work_package.js +8 -0
- package/dist/esm/models/api/api_work_package.js.map +1 -0
- package/dist/esm/models/api/trade/api_captured_trade_cost.d.ts +6 -0
- package/dist/esm/models/api/trade/api_captured_trade_cost.js +8 -0
- package/dist/esm/models/api/trade/api_captured_trade_cost.js.map +1 -0
- package/dist/esm/models/api/trade/api_planned_trade_cost.d.ts +8 -0
- package/dist/esm/models/api/trade/api_planned_trade_cost.js +10 -0
- package/dist/esm/models/api/trade/api_planned_trade_cost.js.map +1 -0
- package/dist/esm/models/api/trade/api_trade.d.ts +8 -0
- package/dist/esm/models/api/trade/api_trade.js +12 -0
- package/dist/esm/models/api/trade/api_trade.js.map +1 -0
- package/dist/esm/models/api/trade/api_trade_cost.d.ts +11 -0
- package/dist/esm/models/api/trade/api_trade_cost.js +13 -0
- package/dist/esm/models/api/trade/api_trade_cost.js.map +1 -0
- package/package.json +1 -1
- package/source/api/floor_api.ts +9 -2
- package/source/api/index.ts +26 -24
- package/source/api/recipe_api.ts +28 -3
- package/source/api/scan_dataset_api.ts +5 -0
- package/source/api/trade_api.ts +45 -0
- package/source/api/work_package_api.ts +28 -0
- package/source/avvir_api.ts +1 -0
- package/source/converters/floor_file_deletion_mode_converter.ts +20 -0
- package/source/models/api/ApiFloorFileDeletionMode.ts +4 -0
- package/source/models/api/api_work_package.ts +14 -0
- package/source/models/api/trade/api_captured_trade_cost.ts +11 -0
- package/source/models/api/trade/api_planned_trade_cost.ts +21 -0
- package/source/models/api/trade/api_trade.ts +17 -0
- package/source/models/api/trade/api_trade_cost.ts +22 -0
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
import ApiWorkPackage from "../models/api/api_work_package";
|
|
2
|
+
import Http from "../utilities/http";
|
|
3
|
+
import { AssociationIds, User } from "../models";
|
|
4
|
+
import makeErrorsPretty from "../utilities/make_errors_pretty";
|
|
5
|
+
|
|
6
|
+
export default class WorkPackageApi {
|
|
7
|
+
static listWorkPackages({ projectId }: AssociationIds, user: User) {
|
|
8
|
+
const url = `${Http.baseUrl()}/projects/${projectId}/work-packages/list`;
|
|
9
|
+
return Http.get(url, user) as unknown as Promise<ApiWorkPackage[]>;
|
|
10
|
+
}
|
|
11
|
+
|
|
12
|
+
static createWorkPackage({ projectId }: AssociationIds, apiWorkPackage: ApiWorkPackage, user: User) {
|
|
13
|
+
const url = `${Http.baseUrl()}/projects/${projectId}/work-packages`;
|
|
14
|
+
return Http.post(url, user, apiWorkPackage) as unknown as Promise<ApiWorkPackage>;
|
|
15
|
+
}
|
|
16
|
+
|
|
17
|
+
static deleteWorkPackage({ projectId }: AssociationIds, workPackageId: number, user: User) {
|
|
18
|
+
const url = `${Http.baseUrl()}/projects/${projectId}/work-packages/${workPackageId}`;
|
|
19
|
+
return Http.delete(url, user) as unknown as Promise<void>;
|
|
20
|
+
}
|
|
21
|
+
|
|
22
|
+
static updateWorkPackage({ projectId }: AssociationIds, workPackageId: number, apiWorkPackage: ApiWorkPackage & { trades: string[] }, user: User) {
|
|
23
|
+
const url = `${Http.baseUrl()}/projects/${projectId}/work-packages/${workPackageId}`;
|
|
24
|
+
return (Http.patch(url, user, apiWorkPackage) as unknown as Promise<ApiWorkPackage>);
|
|
25
|
+
}
|
|
26
|
+
}
|
|
27
|
+
|
|
28
|
+
makeErrorsPretty(WorkPackageApi);
|
package/source/avvir_api.ts
CHANGED
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
import _ from "underscore";
|
|
2
|
+
import {ApiFloorFileDeletionMode} from "../models/api/ApiFloorFileDeletionMode";
|
|
3
|
+
|
|
4
|
+
const apiFloorFileDeletionModes = _.invert(ApiFloorFileDeletionMode);
|
|
5
|
+
|
|
6
|
+
type ApiFloorFileDeletionModeKeys = keyof typeof ApiFloorFileDeletionMode;
|
|
7
|
+
const apiFloorFileDeletionModeTypeKeys: ApiFloorFileDeletionModeKeys[] = Object.values(ApiFloorFileDeletionMode);
|
|
8
|
+
|
|
9
|
+
const isApiFloorFileDeletionMode = (type: any): type is ApiFloorFileDeletionMode => apiFloorFileDeletionModeTypeKeys.includes(type);
|
|
10
|
+
|
|
11
|
+
export class FloorFileDeletionModeConverter {
|
|
12
|
+
static toApiFloorFileDeletionMode(fileKey: ApiFloorFileDeletionMode): ApiFloorFileDeletionMode {
|
|
13
|
+
if (isApiFloorFileDeletionMode(fileKey)) {
|
|
14
|
+
return fileKey;
|
|
15
|
+
}
|
|
16
|
+
return apiFloorFileDeletionModes[fileKey];
|
|
17
|
+
}
|
|
18
|
+
}
|
|
19
|
+
|
|
20
|
+
export default FloorFileDeletionModeConverter;
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
import { addReadOnlyPropertiesToModel } from "../../mixins";
|
|
2
|
+
import { ProjectWorkPackageType } from "../enums";
|
|
3
|
+
|
|
4
|
+
export default class ApiWorkPackage {
|
|
5
|
+
constructor({ id, name, firebaseProjectId, type }: Partial<ApiWorkPackage> = {}) {
|
|
6
|
+
addReadOnlyPropertiesToModel(this, { id, firebaseProjectId, type });
|
|
7
|
+
this.name = name;
|
|
8
|
+
}
|
|
9
|
+
|
|
10
|
+
readonly id: number;
|
|
11
|
+
name: string;
|
|
12
|
+
readonly firebaseProjectId: string;
|
|
13
|
+
readonly type: ProjectWorkPackageType
|
|
14
|
+
}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
export default class ApiCapturedTradeCost {
|
|
2
|
+
constructor({ tradeCode, capturedQuantity, modeledQuantity }: Partial<ApiCapturedTradeCost> = {}) {
|
|
3
|
+
this.tradeCode = tradeCode;
|
|
4
|
+
this.capturedQuantity = capturedQuantity;
|
|
5
|
+
this.modeledQuantity = modeledQuantity;
|
|
6
|
+
}
|
|
7
|
+
|
|
8
|
+
readonly tradeCode: string;
|
|
9
|
+
capturedQuantity: number;
|
|
10
|
+
modeledQuantity: number;
|
|
11
|
+
}
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
export default class ApiPlannedTradeCost {
|
|
2
|
+
constructor({
|
|
3
|
+
tradeCode,
|
|
4
|
+
unitOfMeasure,
|
|
5
|
+
plannedUnitCost,
|
|
6
|
+
plannedTotalCost,
|
|
7
|
+
plannedQuantity
|
|
8
|
+
}: Partial<ApiPlannedTradeCost> = {}) {
|
|
9
|
+
this.tradeCode = tradeCode;
|
|
10
|
+
this.unitOfMeasure = unitOfMeasure;
|
|
11
|
+
this.plannedUnitCost = plannedUnitCost;
|
|
12
|
+
this.plannedTotalCost = plannedTotalCost;
|
|
13
|
+
this.plannedQuantity = plannedQuantity;
|
|
14
|
+
}
|
|
15
|
+
|
|
16
|
+
readonly tradeCode: string;
|
|
17
|
+
unitOfMeasure: string;
|
|
18
|
+
plannedUnitCost: number;
|
|
19
|
+
plannedTotalCost: number;
|
|
20
|
+
plannedQuantity: number;
|
|
21
|
+
}
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
export default class ApiTrade {
|
|
2
|
+
constructor({ code, parentCode, title, workPackageId, childCodes }: Partial<ApiTrade> = {}) {
|
|
3
|
+
this.code = code;
|
|
4
|
+
if (parentCode) {
|
|
5
|
+
this.parentCode = parentCode;
|
|
6
|
+
}
|
|
7
|
+
this.title = title;
|
|
8
|
+
this.workPackageId = workPackageId;
|
|
9
|
+
this.childCodes = childCodes || [];
|
|
10
|
+
}
|
|
11
|
+
|
|
12
|
+
readonly code: string;
|
|
13
|
+
parentCode: string;
|
|
14
|
+
title: string;
|
|
15
|
+
workPackageId: number;
|
|
16
|
+
childCodes: string[];
|
|
17
|
+
}
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
export default class ApiTradeCost {
|
|
2
|
+
constructor({ tradeCode, unitOfMeasure, plannedUnitCost, plannedTotalCost, plannedQuantity, capturedQuantity, modeledQuantity, reportedQuantity }: Partial<ApiTradeCost> = {}) {
|
|
3
|
+
this.tradeCode = tradeCode;
|
|
4
|
+
this.unitOfMeasure = unitOfMeasure;
|
|
5
|
+
this.plannedUnitCost = plannedUnitCost;
|
|
6
|
+
this.plannedTotalCost = plannedTotalCost;
|
|
7
|
+
this.plannedQuantity = plannedQuantity;
|
|
8
|
+
this.capturedQuantity = capturedQuantity;
|
|
9
|
+
this.modeledQuantity = modeledQuantity;
|
|
10
|
+
this.reportedQuantity = reportedQuantity;
|
|
11
|
+
}
|
|
12
|
+
|
|
13
|
+
readonly tradeCode: string;
|
|
14
|
+
unitOfMeasure: string;
|
|
15
|
+
plannedUnitCost: number;
|
|
16
|
+
plannedTotalCost: number;
|
|
17
|
+
plannedQuantity: number;
|
|
18
|
+
|
|
19
|
+
capturedQuantity: number;
|
|
20
|
+
modeledQuantity: number;
|
|
21
|
+
reportedQuantity: number;
|
|
22
|
+
}
|