avvir 6.0.3 → 7.0.0

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 (252) hide show
  1. package/dist/avvir_api.node.js +739 -379
  2. package/dist/esm/api/index.d.ts +9 -7
  3. package/dist/esm/api/index.js +9 -7
  4. package/dist/esm/api/index.js.map +1 -1
  5. package/dist/esm/api/photo_area_api.d.ts +1 -1
  6. package/dist/esm/api/photo_area_api.js.map +1 -1
  7. package/dist/esm/api/project_api.d.ts +2 -4
  8. package/dist/esm/api/project_api.js.map +1 -1
  9. package/dist/esm/api/recipe_api.d.ts +5 -0
  10. package/dist/esm/api/recipe_api.js +20 -0
  11. package/dist/esm/api/recipe_api.js.map +1 -1
  12. package/dist/esm/api/scan_dataset_api.d.ts +3 -2
  13. package/dist/esm/api/scan_dataset_api.js +4 -0
  14. package/dist/esm/api/scan_dataset_api.js.map +1 -1
  15. package/dist/esm/api/trade_api.d.ts +12 -0
  16. package/dist/esm/api/trade_api.js +33 -0
  17. package/dist/esm/api/trade_api.js.map +1 -0
  18. package/dist/esm/api/work_package_api.d.ts +10 -0
  19. package/dist/esm/api/work_package_api.js +22 -0
  20. package/dist/esm/api/work_package_api.js.map +1 -0
  21. package/dist/esm/avvir_api.d.ts +4 -2
  22. package/dist/esm/avvir_api.js +4 -2
  23. package/dist/esm/avvir_api.js.map +1 -1
  24. package/dist/esm/converters/floor_file_deletion_mode_converter.d.ts +1 -1
  25. package/dist/esm/converters/floor_file_deletion_mode_converter.js +1 -1
  26. package/dist/esm/converters/floor_file_deletion_mode_converter.js.map +1 -1
  27. package/dist/esm/index.d.ts +4 -2
  28. package/dist/esm/models/api/api_action_payload.d.ts +2 -1
  29. package/dist/esm/models/api/api_action_payload.js +1 -0
  30. package/dist/esm/models/api/api_action_payload.js.map +1 -1
  31. package/dist/esm/models/api/api_argo_response.js.map +1 -1
  32. package/dist/esm/models/api/api_bcf_building_element.d.ts +4 -4
  33. package/dist/esm/models/api/api_bcf_building_element.js.map +1 -1
  34. package/dist/esm/models/api/api_bcf_issue.d.ts +2 -2
  35. package/dist/esm/models/api/api_bcf_issue.js.map +1 -1
  36. package/dist/esm/models/api/api_cloud_file.d.ts +5 -10
  37. package/dist/esm/models/api/api_cloud_file.js +1 -1
  38. package/dist/esm/models/api/api_cloud_file.js.map +1 -1
  39. package/dist/esm/models/api/api_cloud_file_location_3d.d.ts +2 -2
  40. package/dist/esm/models/api/api_cloud_file_location_3d.js.map +1 -1
  41. package/dist/esm/models/api/api_construction_grid.d.ts +3 -3
  42. package/dist/esm/models/api/api_construction_grid.js.map +1 -1
  43. package/dist/esm/models/api/api_detailed_element.d.ts +4 -3
  44. package/dist/esm/models/api/api_detailed_element.js +4 -3
  45. package/dist/esm/models/api/api_detailed_element.js.map +1 -1
  46. package/dist/esm/models/api/api_element_deviation.d.ts +8 -3
  47. package/dist/esm/models/api/api_element_deviation.js +1 -1
  48. package/dist/esm/models/api/api_element_deviation.js.map +1 -1
  49. package/dist/esm/models/api/api_floor.d.ts +6 -7
  50. package/dist/esm/models/api/api_floor.js +2 -6
  51. package/dist/esm/models/api/api_floor.js.map +1 -1
  52. package/dist/esm/models/api/api_grid_line.d.ts +1 -1
  53. package/dist/esm/models/api/api_grid_line.js.map +1 -1
  54. package/dist/esm/models/api/api_groups.js.map +1 -1
  55. package/dist/esm/models/api/api_inspect_report.d.ts +11 -4
  56. package/dist/esm/models/api/api_inspect_report.js +3 -1
  57. package/dist/esm/models/api/api_inspect_report.js.map +1 -1
  58. package/dist/esm/models/api/api_inspect_report_entry.d.ts +11 -5
  59. package/dist/esm/models/api/api_inspect_report_entry.js +5 -3
  60. package/dist/esm/models/api/api_inspect_report_entry.js.map +1 -1
  61. package/dist/esm/models/api/api_inspect_report_entry_element.d.ts +3 -8
  62. package/dist/esm/models/api/api_inspect_report_entry_element.js +2 -1
  63. package/dist/esm/models/api/api_inspect_report_entry_element.js.map +1 -1
  64. package/dist/esm/models/api/api_integration_credentials.d.ts +4 -4
  65. package/dist/esm/models/api/api_integration_credentials.js.map +1 -1
  66. package/dist/esm/models/api/api_integration_project.d.ts +3 -3
  67. package/dist/esm/models/api/api_integration_project.js.map +1 -1
  68. package/dist/esm/models/api/api_invitation.d.ts +1 -1
  69. package/dist/esm/models/api/api_masterformat_progress.d.ts +3 -2
  70. package/dist/esm/models/api/api_masterformat_progress.js +1 -0
  71. package/dist/esm/models/api/api_masterformat_progress.js.map +1 -1
  72. package/dist/esm/models/api/api_organization.d.ts +1 -1
  73. package/dist/esm/models/api/api_organization.js +0 -1
  74. package/dist/esm/models/api/api_organization.js.map +1 -1
  75. package/dist/esm/models/api/api_photo_location.d.ts +15 -15
  76. package/dist/esm/models/api/api_photo_location.js +4 -4
  77. package/dist/esm/models/api/api_photo_location.js.map +1 -1
  78. package/dist/esm/models/api/api_photo_location_3d.d.ts +3 -3
  79. package/dist/esm/models/api/api_photo_location_3d.js.map +1 -1
  80. package/dist/esm/models/api/api_photo_session.d.ts +3 -4
  81. package/dist/esm/models/api/api_photo_session.js +1 -1
  82. package/dist/esm/models/api/api_photo_session.js.map +1 -1
  83. package/dist/esm/models/api/api_pipeline.d.ts +4 -5
  84. package/dist/esm/models/api/api_pipeline.js +1 -1
  85. package/dist/esm/models/api/api_pipeline.js.map +1 -1
  86. package/dist/esm/models/api/api_planned_element.d.ts +3 -3
  87. package/dist/esm/models/api/api_planned_element.js.map +1 -1
  88. package/dist/esm/models/api/api_progress_category.d.ts +1 -1
  89. package/dist/esm/models/api/api_progress_scan_dataset.d.ts +1 -1
  90. package/dist/esm/models/api/api_project.d.ts +17 -17
  91. package/dist/esm/models/api/api_project.js +5 -14
  92. package/dist/esm/models/api/api_project.js.map +1 -1
  93. package/dist/esm/models/api/api_project_area.d.ts +1 -1
  94. package/dist/esm/models/api/api_project_area.js.map +1 -1
  95. package/dist/esm/models/api/api_project_area_work_package.js.map +1 -1
  96. package/dist/esm/models/api/api_project_cost_analysis_progress.d.ts +1 -1
  97. package/dist/esm/models/api/api_project_cost_analysis_progress.js.map +1 -1
  98. package/dist/esm/models/api/api_project_report.d.ts +6 -2
  99. package/dist/esm/models/api/api_project_report.js +2 -1
  100. package/dist/esm/models/api/api_project_report.js.map +1 -1
  101. package/dist/esm/models/api/api_project_report_version.d.ts +5 -1
  102. package/dist/esm/models/api/api_project_report_version.js +1 -3
  103. package/dist/esm/models/api/api_project_report_version.js.map +1 -1
  104. package/dist/esm/models/api/api_project_settings.d.ts +1 -0
  105. package/dist/esm/models/api/api_project_settings.js +1 -0
  106. package/dist/esm/models/api/api_project_settings.js.map +1 -1
  107. package/dist/esm/models/api/api_project_summary.d.ts +2 -2
  108. package/dist/esm/models/api/api_project_summary.js.map +1 -1
  109. package/dist/esm/models/api/api_project_work_package.d.ts +5 -1
  110. package/dist/esm/models/api/api_project_work_package.js +4 -0
  111. package/dist/esm/models/api/api_project_work_package.js.map +1 -1
  112. package/dist/esm/models/api/api_project_work_package_cost.d.ts +2 -8
  113. package/dist/esm/models/api/api_project_work_package_cost.js +1 -1
  114. package/dist/esm/models/api/api_project_work_package_cost.js.map +1 -1
  115. package/dist/esm/models/api/api_quaternion.d.ts +1 -1
  116. package/dist/esm/models/api/api_quaternion.js +1 -0
  117. package/dist/esm/models/api/api_quaternion.js.map +1 -1
  118. package/dist/esm/models/api/api_query_resource.d.ts +1 -0
  119. package/dist/esm/models/api/api_query_resource.js +1 -0
  120. package/dist/esm/models/api/api_query_resource.js.map +1 -1
  121. package/dist/esm/models/api/api_recipe.d.ts +7 -18
  122. package/dist/esm/models/api/api_recipe.js +3 -3
  123. package/dist/esm/models/api/api_recipe.js.map +1 -1
  124. package/dist/esm/models/api/api_running_process.d.ts +5 -6
  125. package/dist/esm/models/api/api_running_process.js +1 -1
  126. package/dist/esm/models/api/api_running_process.js.map +1 -1
  127. package/dist/esm/models/api/api_scan_dataset.d.ts +9 -10
  128. package/dist/esm/models/api/api_scan_dataset.js.map +1 -1
  129. package/dist/esm/models/api/api_scandataset_stats.d.ts +10 -19
  130. package/dist/esm/models/api/api_scandataset_stats.js +15 -14
  131. package/dist/esm/models/api/api_scandataset_stats.js.map +1 -1
  132. package/dist/esm/models/api/api_scanned_element.d.ts +4 -1
  133. package/dist/esm/models/api/api_scanned_element.js +3 -0
  134. package/dist/esm/models/api/api_scanned_element.js.map +1 -1
  135. package/dist/esm/models/api/api_team_member.d.ts +2 -1
  136. package/dist/esm/models/api/api_team_member.js +1 -0
  137. package/dist/esm/models/api/api_team_member.js.map +1 -1
  138. package/dist/esm/models/api/api_user.d.ts +1 -1
  139. package/dist/esm/models/api/api_user.js.map +1 -1
  140. package/dist/esm/models/api/api_user_action.d.ts +4 -4
  141. package/dist/esm/models/api/api_user_action.js.map +1 -1
  142. package/dist/esm/models/api/api_user_for_organization.d.ts +11 -6
  143. package/dist/esm/models/api/api_user_for_organization.js +4 -3
  144. package/dist/esm/models/api/api_user_for_organization.js.map +1 -1
  145. package/dist/esm/models/api/api_user_permission.d.ts +2 -2
  146. package/dist/esm/models/api/api_user_permission.js.map +1 -1
  147. package/dist/esm/models/api/api_view.d.ts +24 -18
  148. package/dist/esm/models/api/api_view.js +4 -7
  149. package/dist/esm/models/api/api_view.js.map +1 -1
  150. package/dist/esm/models/api/api_work_package.d.ts +9 -0
  151. package/dist/esm/models/api/api_work_package.js +9 -0
  152. package/dist/esm/models/api/api_work_package.js.map +1 -0
  153. package/dist/esm/models/api/deprecated_api_pipeline.d.ts +3 -0
  154. package/dist/esm/models/api/deprecated_api_pipeline.js +3 -0
  155. package/dist/esm/models/api/deprecated_api_pipeline.js.map +1 -1
  156. package/dist/esm/models/api/index.d.ts +62 -60
  157. package/dist/esm/models/api/index.js +59 -56
  158. package/dist/esm/models/api/index.js.map +1 -1
  159. package/dist/esm/models/api/trade/api_captured_trade_cost.d.ts +7 -0
  160. package/dist/esm/models/api/trade/api_captured_trade_cost.js +9 -0
  161. package/dist/esm/models/api/trade/api_captured_trade_cost.js.map +1 -0
  162. package/dist/esm/models/api/trade/api_planned_trade_cost.d.ts +9 -0
  163. package/dist/esm/models/api/trade/api_planned_trade_cost.js +11 -0
  164. package/dist/esm/models/api/trade/api_planned_trade_cost.js.map +1 -0
  165. package/dist/esm/models/api/trade/api_trade.d.ts +9 -0
  166. package/dist/esm/models/api/trade/api_trade.js +13 -0
  167. package/dist/esm/models/api/trade/api_trade.js.map +1 -0
  168. package/dist/esm/models/api/trade/api_trade_cost.d.ts +12 -0
  169. package/dist/esm/models/api/trade/api_trade_cost.js +14 -0
  170. package/dist/esm/models/api/trade/api_trade_cost.js.map +1 -0
  171. package/dist/esm/models/api/trade/index.d.ts +4 -0
  172. package/dist/esm/models/api/trade/index.js +5 -0
  173. package/dist/esm/models/api/trade/index.js.map +1 -0
  174. package/dist/esm/models/enums/api_floor_file_deletion_mode.d.ts +7 -0
  175. package/dist/esm/models/{api/ApiFloorFileDeletionMode.js → enums/api_floor_file_deletion_mode.js} +4 -1
  176. package/dist/esm/models/enums/api_floor_file_deletion_mode.js.map +1 -0
  177. package/dist/esm/models/enums/index.d.ts +9 -8
  178. package/dist/esm/models/enums/index.js +9 -8
  179. package/dist/esm/models/enums/index.js.map +1 -1
  180. package/package.json +1 -1
  181. package/source/api/index.ts +28 -24
  182. package/source/api/photo_area_api.ts +11 -8
  183. package/source/api/project_api.ts +3 -5
  184. package/source/api/recipe_api.ts +28 -3
  185. package/source/api/scan_dataset_api.ts +8 -3
  186. package/source/api/trade_api.ts +45 -0
  187. package/source/api/work_package_api.ts +28 -0
  188. package/source/avvir_api.ts +4 -2
  189. package/source/converters/floor_file_deletion_mode_converter.ts +9 -7
  190. package/source/models/api/api_action_payload.ts +5 -3
  191. package/source/models/api/api_argo_response.ts +11 -1
  192. package/source/models/api/api_bcf_building_element.ts +4 -4
  193. package/source/models/api/api_bcf_issue.ts +2 -2
  194. package/source/models/api/api_cloud_file.ts +7 -9
  195. package/source/models/api/api_cloud_file_location_3d.ts +2 -2
  196. package/source/models/api/api_construction_grid.ts +5 -4
  197. package/source/models/api/api_detailed_element.ts +22 -20
  198. package/source/models/api/api_element_deviation.ts +15 -6
  199. package/source/models/api/api_floor.ts +14 -12
  200. package/source/models/api/api_grid_line.ts +2 -1
  201. package/source/models/api/api_groups.ts +10 -9
  202. package/source/models/api/api_inspect_report.ts +27 -16
  203. package/source/models/api/api_inspect_report_entry.ts +54 -30
  204. package/source/models/api/api_inspect_report_entry_element.ts +26 -23
  205. package/source/models/api/api_integration_credentials.ts +6 -4
  206. package/source/models/api/api_integration_project.ts +5 -3
  207. package/source/models/api/api_invitation.ts +1 -1
  208. package/source/models/api/api_masterformat_progress.ts +5 -3
  209. package/source/models/api/api_organization.ts +1 -1
  210. package/source/models/api/api_photo_location.ts +21 -19
  211. package/source/models/api/api_photo_location_3d.ts +10 -7
  212. package/source/models/api/api_photo_session.ts +5 -5
  213. package/source/models/api/api_pipeline.ts +9 -7
  214. package/source/models/api/api_planned_element.ts +4 -3
  215. package/source/models/api/api_progress_category.ts +2 -2
  216. package/source/models/api/api_progress_scan_dataset.ts +2 -2
  217. package/source/models/api/api_project.ts +24 -27
  218. package/source/models/api/api_project_area.ts +2 -1
  219. package/source/models/api/api_project_area_work_package.ts +12 -1
  220. package/source/models/api/api_project_cost_analysis_progress.ts +2 -1
  221. package/source/models/api/api_project_report.ts +22 -16
  222. package/source/models/api/api_project_report_version.ts +18 -14
  223. package/source/models/api/api_project_settings.ts +2 -0
  224. package/source/models/api/api_project_summary.ts +2 -2
  225. package/source/models/api/api_project_work_package.ts +18 -13
  226. package/source/models/api/api_project_work_package_cost.ts +15 -14
  227. package/source/models/api/api_quaternion.ts +2 -0
  228. package/source/models/api/api_query_resource.ts +2 -0
  229. package/source/models/api/api_recipe.ts +41 -43
  230. package/source/models/api/api_running_process.ts +7 -6
  231. package/source/models/api/api_scan_dataset.ts +11 -10
  232. package/source/models/api/api_scandataset_stats.ts +57 -48
  233. package/source/models/api/api_scanned_element.ts +7 -3
  234. package/source/models/api/api_team_member.ts +9 -7
  235. package/source/models/api/api_user.ts +15 -15
  236. package/source/models/api/api_user_action.ts +7 -5
  237. package/source/models/api/api_user_for_organization.ts +47 -26
  238. package/source/models/api/api_user_permission.ts +14 -13
  239. package/source/models/api/api_view.ts +43 -31
  240. package/source/models/api/api_work_package.ts +17 -0
  241. package/source/models/api/deprecated_api_pipeline.ts +3 -0
  242. package/source/models/api/index.ts +62 -120
  243. package/source/models/api/trade/api_captured_trade_cost.ts +13 -0
  244. package/source/models/api/trade/api_planned_trade_cost.ts +23 -0
  245. package/source/models/api/trade/api_trade.ts +19 -0
  246. package/source/models/api/trade/api_trade_cost.ts +24 -0
  247. package/source/models/api/trade/index.ts +4 -0
  248. package/source/models/enums/api_floor_file_deletion_mode.ts +9 -0
  249. package/source/models/enums/index.ts +9 -8
  250. package/dist/esm/models/api/ApiFloorFileDeletionMode.d.ts +0 -4
  251. package/dist/esm/models/api/ApiFloorFileDeletionMode.js.map +0 -1
  252. package/source/models/api/ApiFloorFileDeletionMode.ts +0 -4
@@ -1,55 +1,53 @@
1
- import { Modify } from "./type_aliases";
2
1
  import addReadOnlyPropertiesToModel from "../../mixins/add_read_only_properties_to_model";
3
2
 
4
- export interface ApiRecipeArgument extends Partial<Modify<ApiRecipe, {
5
- name?: string | null
6
- isEnabled?: boolean | null
7
- modeledCode?: string | null
8
- steps?: ApiRecipeStep[] | null
9
- }>> {
10
- }
3
+ import type { ModifyPartial } from "type_aliases";
11
4
 
12
- export class ApiRecipe {
13
- readonly id: number
14
- readonly projectFirebaseId?: string
15
- name: string
16
- isEnabled: boolean
17
- modeledCode?: string
18
- steps?: ApiRecipeStep[]
5
+ export type ApiRecipeArgument = ModifyPartial<ApiRecipe, {
6
+ steps?: Partial<ApiRecipeStep>[] | null
7
+ }>
19
8
 
20
- constructor({id, projectFirebaseId, name, isEnabled, modeledCode, steps}: ApiRecipeArgument) {
21
- addReadOnlyPropertiesToModel(this, {id, projectFirebaseId});
22
- this.name = name;
23
- this.isEnabled = isEnabled || false;
24
- this.modeledCode = modeledCode;
25
- this.steps = steps || [];
26
- }
27
- }
9
+ export class ApiRecipe {
10
+ readonly id: number;
11
+ readonly firebaseProjectId?: string;
12
+ name: string;
13
+ isEnabled: boolean;
14
+ modeledCode?: string;
15
+ steps?: ApiRecipeStep[];
28
16
 
29
- export interface ApiRecipeStepArgument extends Partial<Modify<ApiRecipeStep, {
30
- ordinal: number
31
- name?: string | null
32
- code?: string | null
33
- partialProgressPercent?: number | null
34
- }>> {
17
+ constructor({ id, firebaseProjectId, name, isEnabled, modeledCode, steps }: ApiRecipeArgument) {
18
+ addReadOnlyPropertiesToModel(this, { id, firebaseProjectId });
19
+ this.name = name;
20
+ this.isEnabled = isEnabled || false;
21
+ this.modeledCode = modeledCode;
22
+ this.steps = steps?.map(step => new ApiRecipeStep(step)) || [];
23
+ }
35
24
  }
36
25
 
37
26
  export class ApiRecipeStep {
38
- readonly id: number
39
- readonly recipeId: number
40
- readonly globalRecipeStepId: number
41
- name: string
42
- code: string
43
- ordinal: number
44
- partialProgressPercent: number
27
+ readonly id: number;
28
+ readonly recipeId: number;
29
+ readonly globalRecipeStepId: number;
30
+ name: string;
31
+ code: string;
32
+ ordinal: number;
33
+ partialProgressPercent: number;
45
34
 
46
- constructor({ id, recipeId, globalRecipeStepId, ordinal, name, code, partialProgressPercent }: ApiRecipeStepArgument) {
47
- addReadOnlyPropertiesToModel(this, { id, recipeId, globalRecipeStepId });
48
- this.ordinal = ordinal;
49
- this.name = name || null;
50
- this.code = code || null;
51
- this.partialProgressPercent = partialProgressPercent || 0.0;
52
- }
35
+ constructor({
36
+ id,
37
+ recipeId,
38
+ globalRecipeStepId,
39
+ ordinal,
40
+ name,
41
+ code,
42
+ partialProgressPercent
43
+ }: Partial<ApiRecipeStep>)
44
+ {
45
+ addReadOnlyPropertiesToModel(this, { id, recipeId, globalRecipeStepId });
46
+ this.ordinal = ordinal;
47
+ this.name = name || null;
48
+ this.code = code || null;
49
+ this.partialProgressPercent = partialProgressPercent || 0.0;
50
+ }
53
51
  }
54
52
 
55
53
  export default ApiRecipe;
@@ -1,20 +1,21 @@
1
- import ProcessStatus from "../enums/process_status";
2
- import {DateLike, ModifyPartial} from "./type_aliases";
3
1
  import addInstantGetterAndSetterToApiModel from "../../mixins/add_instant_getter_and_setter_to_api_model";
4
2
 
5
- export interface ApiRunningProcessArgs extends ModifyPartial<ApiRunningProcess, {
3
+ import type ProcessStatus from "../enums/process_status";
4
+ import type { DateLike, ModifyPartial } from "./type_aliases";
5
+
6
+ export type ApiRunningProcessArgument = ModifyPartial<ApiRunningProcess, {
6
7
  startDate?: DateLike
7
8
  endDate?: DateLike
8
- }> { }
9
+ }>
9
10
 
10
11
  export class ApiRunningProcess {
11
- constructor({id, name, status, startDate, endDate, message}: ApiRunningProcessArgs = {}) {
12
+ constructor({ id, name, status, startDate, endDate, message }: ApiRunningProcessArgument = {}) {
12
13
  this.id = id;
13
14
  this.name = name;
14
15
  this.status = status;
15
- this.message = message;
16
16
  addInstantGetterAndSetterToApiModel(this, "startDate", startDate);
17
17
  addInstantGetterAndSetterToApiModel(this, "endDate", endDate);
18
+ this.message = message;
18
19
  }
19
20
 
20
21
  id: number;
@@ -1,19 +1,20 @@
1
1
  import { Matrix4 } from "three";
2
+
2
3
  import addInstantGetterAndSetterToApiModel from "../../mixins/add_instant_getter_and_setter_to_api_model";
3
4
  import addReadOnlyPropertiesToModel from "../../mixins/add_read_only_properties_to_model";
4
- import ApiMatrix4 from "./api_matrix_4";
5
5
  import Matrix4Converter from "../../converters/matrix_4_converter";
6
- import { DateLike, ModifyPartial } from "type_aliases";
6
+
7
+ import type ApiMatrix4 from "./api_matrix_4";
8
+ import type { DateLike, ModifyPartial } from "type_aliases";
7
9
 
8
10
  export type ApiScanDatasetArgument = ModifyPartial<ApiScanDataset, {
9
- coarseAlignmentMatrix?: ApiMatrix4 | Matrix4 | string | null
10
- fineAlignmentMatrix?: ApiMatrix4 | Matrix4 | string | null
11
- scanDate?: DateLike,
12
- qaStarted?: DateLike,
13
- qaComplete?: DateLike,
14
- analysisCompleted?: DateLike,
15
- manualAnalysisSkipped?: DateLike,
16
- scanDateString?: string,
11
+ coarseAlignmentMatrix: ApiMatrix4 | Matrix4 | string | null
12
+ fineAlignmentMatrix: ApiMatrix4 | Matrix4 | string | null
13
+ scanDate: DateLike,
14
+ qaStarted: DateLike,
15
+ qaComplete: DateLike,
16
+ analysisCompleted: DateLike,
17
+ manualAnalysisSkipped: DateLike,
17
18
  }>
18
19
 
19
20
  export enum ApiScanDatasetQaState {
@@ -1,55 +1,64 @@
1
- import {addInstantGetterAndSetterToApiModel} from "../../mixins";
1
+ import { addInstantGetterAndSetterToApiModel } from "../../mixins";
2
2
 
3
- export class ApiScanDatasetStats {
4
- organizationName: string;
5
- scanDatasetId: number;
6
- projectName: string;
7
- floor: string;
8
- scanDatasetName: string;
9
- pipelineStartTime: Date;
10
- pipelineEndTime: Date;
11
- pipelineStatus: string;
12
- qaCompleteTime: Date;
13
- qaStartTime: Date;
14
- squareFootage: number;
3
+ import type { DateLike, ModifyPartial } from "type_aliases";
15
4
 
16
- realityCaptureName?: string;
17
- realityCaptureType?: string;
18
- realityCaptureUploadedOn?: Date;
5
+ export type ApiScanDatasetStatsArgument = ModifyPartial<ApiScanDatasetStats, {
6
+ pipelineStartTime: DateLike;
7
+ pipelineEndTime: DateLike;
8
+ qaCompleteTime: DateLike;
9
+ qaStartTime: DateLike;
10
+ realityCaptureUploadedOn: DateLike;
11
+ }>
19
12
 
20
- constructor(props: ApiScanDatasetStatsProps) {
21
- addInstantGetterAndSetterToApiModel(this, 'pipelineStartTime', props.pipelineStartTime);
22
- addInstantGetterAndSetterToApiModel(this, 'pipelineEndTime', props.pipelineEndTime);
23
- addInstantGetterAndSetterToApiModel(this, 'qaCompleteTime', props.qaCompleteTime);
24
- addInstantGetterAndSetterToApiModel(this, 'qaStartTime', props.qaStartTime);
25
- addInstantGetterAndSetterToApiModel(this, 'realityCaptureUploadedOn', props.realityCaptureUploadedOn);
26
- this.organizationName = props.organizationName;
27
- this.projectName = props.projectName;
28
- this.scanDatasetId = props.scanDatasetId;
29
- this.scanDatasetName = props.scanDatasetName;
30
- this.pipelineStatus = props.pipelineStatus;
31
- this.squareFootage = props.squareFootage;
32
13
 
33
- this.realityCaptureName = props.realityCaptureName;
34
- this.realityCaptureType = props.realityCaptureType;
35
- }
36
- }
14
+ export class ApiScanDatasetStats {
15
+ constructor({
16
+ pipelineStartTime,
17
+ pipelineEndTime,
18
+ qaCompleteTime,
19
+ qaStartTime,
20
+ realityCaptureUploadedOn,
21
+ organizationName,
22
+ projectName,
23
+ floor,
24
+ scanDatasetId,
25
+ scanDatasetName,
26
+ pipelineStatus,
27
+ squareFootage,
28
+ realityCaptureName,
29
+ realityCaptureType
30
+ }: ApiScanDatasetStatsArgument = {})
31
+ {
32
+ addInstantGetterAndSetterToApiModel(this, "pipelineStartTime", pipelineStartTime);
33
+ addInstantGetterAndSetterToApiModel(this, "pipelineEndTime", pipelineEndTime);
34
+ addInstantGetterAndSetterToApiModel(this, "qaCompleteTime", qaCompleteTime);
35
+ addInstantGetterAndSetterToApiModel(this, "qaStartTime", qaStartTime);
36
+ addInstantGetterAndSetterToApiModel(this, "realityCaptureUploadedOn", realityCaptureUploadedOn);
37
+ this.organizationName = organizationName;
38
+ this.projectName = projectName;
39
+ this.floor = floor;
40
+ this.scanDatasetId = scanDatasetId;
41
+ this.scanDatasetName = scanDatasetName;
42
+ this.pipelineStatus = pipelineStatus;
43
+ this.squareFootage = squareFootage;
37
44
 
45
+ this.realityCaptureName = realityCaptureName;
46
+ this.realityCaptureType = realityCaptureType;
47
+ }
38
48
 
39
- type ApiScanDatasetStatsProps = {
40
- organizationName: string;
41
- scanDatasetId: number;
42
- projectName: string;
43
- floor: string;
44
- scanDatasetName: string;
45
- pipelineStartTime: number;
46
- pipelineEndTime: number;
47
- pipelineStatus: string;
48
- qaCompleteTime: number;
49
- qaStartTime: number;
50
- squareFootage: number;
49
+ organizationName: string;
50
+ scanDatasetId: number;
51
+ projectName: string;
52
+ floor: string;
53
+ scanDatasetName: string;
54
+ pipelineStartTime: number;
55
+ pipelineEndTime: number;
56
+ pipelineStatus: string;
57
+ qaCompleteTime: number;
58
+ qaStartTime: number;
59
+ squareFootage: number;
51
60
 
52
- realityCaptureName?: string;
53
- realityCaptureType?: string;
54
- realityCaptureUploadedOn?: number;
55
- }
61
+ realityCaptureName?: string;
62
+ realityCaptureType?: string;
63
+ realityCaptureUploadedOn?: number;
64
+ }
@@ -1,8 +1,12 @@
1
- import {ApiBuiltStatus} from "../enums";
2
- import {ApiElementDeviation} from "./api_element_deviation";
1
+ import { ApiBuiltStatus } from "../enums";
3
2
 
3
+ import type ApiElementDeviation from "./api_element_deviation";
4
+
5
+ /**
6
+ * @deprecated This information is now all part of the {@link ApiPlannedElement}
7
+ */
4
8
  export class ApiScannedElement<Label extends ApiBuiltStatus> {
5
- constructor({globalId, scanLabel, deviation, detectedInScan}: Partial<ApiScannedElement<Label>> = {}) {
9
+ constructor({ globalId, scanLabel, deviation, detectedInScan }: Partial<ApiScannedElement<Label>> = {}) {
6
10
  this.globalId = globalId;
7
11
  this.scanLabel = scanLabel;
8
12
  this.deviation = deviation;
@@ -1,12 +1,12 @@
1
- import { ApiProjectWorkPackage } from "./api_project_work_package";
1
+ import type ApiProjectWorkPackage from "./api_project_work_package";
2
2
 
3
3
  export class ApiTeamMember {
4
- id?: number
5
- name: string
6
- userOrganization: string
7
- email: string
8
- role: string
9
- masterformats?: string[]
4
+ id?: number;
5
+ name: string;
6
+ userOrganization: string;
7
+ email: string;
8
+ role: string;
9
+ masterformats?: string[];
10
10
  vendor?: ApiProjectWorkPackage;
11
11
 
12
12
  constructor({ id, name, userOrganization, email, role, masterformats, vendor }: Partial<ApiTeamMember> = {}) {
@@ -19,3 +19,5 @@ export class ApiTeamMember {
19
19
  this.vendor = vendor;
20
20
  }
21
21
  }
22
+
23
+ export default ApiTeamMember;
@@ -1,21 +1,21 @@
1
- import UserRole from "../enums/user_role";
1
+ import type UserRole from "../enums/user_role";
2
2
 
3
3
  export class ApiUser {
4
- name: string
5
- userOrganization: string
6
- email: string
7
- role: UserRole
8
- projectId: string
9
- userId: number
4
+ name: string;
5
+ userOrganization: string;
6
+ email: string;
7
+ role: UserRole;
8
+ projectId: string;
9
+ userId: number;
10
10
 
11
- constructor({name, userOrganization, email, role, projectId, userId}: Partial<ApiUser> = {}) {
12
- this.name = name;
13
- this.userOrganization = userOrganization;
14
- this.email = email;
15
- this.role = role;
16
- this.projectId = projectId;
17
- this.userId = userId
18
- }
11
+ constructor({ name, userOrganization, email, role, projectId, userId }: Partial<ApiUser> = {}) {
12
+ this.name = name;
13
+ this.userOrganization = userOrganization;
14
+ this.email = email;
15
+ this.role = role;
16
+ this.projectId = projectId;
17
+ this.userId = userId;
18
+ }
19
19
  }
20
20
 
21
21
  export default ApiUser;
@@ -1,15 +1,17 @@
1
- import {ApiActionPayload} from "./api_action_payload";
2
- import UserActionType from "../enums/user_action_type";
3
- import ApiUser from "./api_user";
4
- import {DateLike} from "./type_aliases";
5
1
  import addInstantGetterAndSetterToApiModel from "../../mixins/add_instant_getter_and_setter_to_api_model";
6
2
 
3
+ import type ApiActionPayload from "./api_action_payload";
4
+ import type ApiUser from "./api_user";
5
+ import type UserActionType from "../enums/user_action_type";
6
+ import type { DateLike } from "type_aliases";
7
+
7
8
  export class ApiUserAction {
8
9
  constructor(user: ApiUser,
9
10
  userEmail: string,
10
11
  type: UserActionType,
11
12
  createdAt: DateLike,
12
- payload: ApiActionPayload[]) {
13
+ payload: ApiActionPayload[])
14
+ {
13
15
  this.user = user;
14
16
  this.userEmail = userEmail;
15
17
  this.type = type;
@@ -1,32 +1,53 @@
1
- import UserRole from "../enums/user_role";
2
- import {DateLike} from "./type_aliases";
1
+ import { addInstantGetterAndSetterToApiModel } from "../../mixins";
2
+
3
+ import type UserRole from "../enums/user_role";
4
+ import type { DateLike, ModifyPartial } from "type_aliases";
5
+
6
+ export type ApiUserForOrganizationArgument = ModifyPartial<ApiUserForOrganization, {
7
+ latestInvitationExpiry: DateLike
8
+ accountCreationTime: DateLike
9
+ accountAcceptedTime: DateLike
10
+ }>
3
11
 
4
12
  export class ApiUserForOrganization {
5
- id: number
6
- name: string
7
- email: string
8
- role: UserRole
9
- projects: string[]
10
- accessType: string
11
- inviteStatus: string
12
- masterformatCodes: string[]
13
- latestInvitationExpiry: DateLike
14
- accountCreationTime: DateLike
15
- accountAcceptedTime: DateLike
13
+ id: number;
14
+ name: string;
15
+ email: string;
16
+ role: UserRole;
17
+ projects: string[];
18
+ accessType: string;
19
+ inviteStatus: string;
20
+ masterformatCodes: string[];
21
+ latestInvitationExpiry: number;
22
+ accountCreationTime: number;
23
+ accountAcceptedTime: number;
16
24
 
17
- constructor({id, name, email, role, projects, accessType, inviteStatus, masterformatCodes, latestInvitationExpiry, accountCreationTime, accountAcceptedTime}: Partial<ApiUserForOrganization> = {}) {
18
- this.id = id;
19
- this.name = name;
20
- this.email = email;
21
- this.role = role;
22
- this.projects = projects;
23
- this.accessType = accessType;
24
- this.inviteStatus = inviteStatus;
25
- this.masterformatCodes = masterformatCodes;
26
- this.latestInvitationExpiry = latestInvitationExpiry;
27
- this.accountCreationTime = accountCreationTime;
28
- this.accountAcceptedTime = accountAcceptedTime;
29
- }
25
+ constructor({
26
+ id,
27
+ name,
28
+ email,
29
+ role,
30
+ projects,
31
+ accessType,
32
+ inviteStatus,
33
+ masterformatCodes,
34
+ latestInvitationExpiry,
35
+ accountCreationTime,
36
+ accountAcceptedTime
37
+ }: ApiUserForOrganizationArgument = {})
38
+ {
39
+ this.id = id;
40
+ this.name = name;
41
+ this.email = email;
42
+ this.role = role;
43
+ this.projects = projects;
44
+ this.accessType = accessType;
45
+ this.inviteStatus = inviteStatus;
46
+ this.masterformatCodes = masterformatCodes;
47
+ addInstantGetterAndSetterToApiModel(this, "latestInvitationExpiry", latestInvitationExpiry);
48
+ addInstantGetterAndSetterToApiModel(this, "accountCreationTime", accountCreationTime);
49
+ addInstantGetterAndSetterToApiModel(this, "accountAcceptedTime", accountAcceptedTime);
50
+ }
30
51
  }
31
52
 
32
53
  export default ApiUserForOrganization;
@@ -1,17 +1,17 @@
1
- import {UserPermissionType} from "../enums/user_permission_type";
2
- import {UserPermissionAction} from "../enums/user_permission_action"
1
+ import type UserPermissionAction from "../enums/user_permission_action";
2
+ import type UserPermissionType from "../enums/user_permission_type";
3
3
 
4
4
  export class ApiUserPermission {
5
- id: number
6
- userId: number
7
- projectFirebaseId: string
8
- organizationFirebaseId: string
9
- masterformatCode: string
10
- permissionType: UserPermissionType
11
- permissionAction: UserPermissionAction
12
- organizationName: string
13
- projectName: string
14
- workPackageId: number
5
+ id: number;
6
+ userId: number;
7
+ projectFirebaseId: string;
8
+ organizationFirebaseId: string;
9
+ masterformatCode: string;
10
+ permissionType: UserPermissionType;
11
+ permissionAction: UserPermissionAction;
12
+ organizationName: string;
13
+ projectName: string;
14
+ workPackageId: number;
15
15
 
16
16
  constructor({
17
17
  id,
@@ -24,7 +24,8 @@ export class ApiUserPermission {
24
24
  organizationName,
25
25
  projectName,
26
26
  workPackageId
27
- }: Partial<ApiUserPermission>) {
27
+ }: Partial<ApiUserPermission>)
28
+ {
28
29
  this.id = id;
29
30
  this.userId = userId;
30
31
  this.projectFirebaseId = projectFirebaseId;
@@ -1,13 +1,16 @@
1
- import {Vector3} from "three";
2
- import {DateLike, ModifyPartial, Vector3Like} from "./type_aliases";
1
+ import { Vector3 } from "three";
2
+
3
3
  import addDateGetterAndSetterToDomainModel from "../../mixins/add_date_getter_and_setter_to_domain_model";
4
- import {UniformatId} from "uniformat";
5
- import {ApiInspectionModes} from "../enums";
6
- import SystemOfMeasurement from "../enums/system_of_measurement";
4
+ import addReadOnlyPropertiesToModel from "../../mixins/add_read_only_properties_to_model";
5
+
6
+ import type SystemOfMeasurement from "../enums/system_of_measurement";
7
+ import type { ApiInspectionModes } from "../enums";
8
+ import type { DateLike, ModifyPartial, Vector3Like } from "./type_aliases";
9
+ import type { UniformatId } from "uniformat";
7
10
 
8
11
  export class PhotoViewerDetails {
9
12
  constructor(photoViewerDetails: Partial<PhotoViewerDetails> = {}) {
10
- const {photoSessionId, photoLocationId, photoSessionIds} = photoViewerDetails;
13
+ const { photoSessionId, photoLocationId, photoSessionIds } = photoViewerDetails;
11
14
  this.photoSessionId = photoSessionId;
12
15
  this.photoLocationId = photoLocationId;
13
16
  this.photoSessionIds = photoSessionIds || [];
@@ -20,29 +23,29 @@ export class PhotoViewerDetails {
20
23
 
21
24
  export class DeviationTolerance {
22
25
  constructor(tolerance: Partial<DeviationTolerance> = {}) {
23
- const {value, systemOfMeasurement} = tolerance;
26
+ const { value, systemOfMeasurement } = tolerance;
24
27
  this.value = value;
25
28
  this.systemOfMeasurement = systemOfMeasurement;
26
29
  }
27
30
 
28
31
  value: number;
29
- systemOfMeasurement: SystemOfMeasurement
32
+ systemOfMeasurement: SystemOfMeasurement;
30
33
  }
31
34
 
32
35
  export class ViewTrades {
33
36
  constructor(trades: Partial<ViewTrades> = {}) {
34
- const {shownUniformatCodes} = trades;
37
+ const { shownUniformatCodes } = trades;
35
38
  this.shownUniformatCodes = shownUniformatCodes;
36
39
  }
37
40
 
38
41
  shownUniformatCodes: UniformatId[];
39
42
  }
40
43
 
41
- export type ViewCameraParameter = ModifyPartial<ViewCamera, { position: Vector3Like, target: Vector3Like }>
44
+ export type ViewCameraArgument = ModifyPartial<ViewCamera, { position: Vector3Like, target: Vector3Like }>
42
45
 
43
46
  export class ViewCamera {
44
- constructor(camera: ViewCameraParameter = {}) {
45
- const {position, target} = camera;
47
+ constructor(camera: ViewCameraArgument = {}) {
48
+ const { position, target } = camera;
46
49
  this.position = new Vector3(position?.x, position?.y, position?.z);
47
50
  this.target = new Vector3(target?.x, target?.y, target?.z);
48
51
  }
@@ -51,9 +54,14 @@ export class ViewCamera {
51
54
  target: Vector3;
52
55
  }
53
56
 
57
+ export type ViewFiltersArgument = ModifyPartial<ViewFilters, {
58
+ trades: Partial<ViewTrades>,
59
+ deviationTolerance: Partial<DeviationTolerance>
60
+ }>
61
+
54
62
  export class ViewFilters {
55
- constructor(filters: Partial<ViewFilters> = {}) {
56
- const {trades, deviationTolerance, pointCloudVisible, sectionPointCloud} = filters;
63
+ constructor(filters: ViewFiltersArgument = {}) {
64
+ const { trades, deviationTolerance, pointCloudVisible, sectionPointCloud } = filters;
57
65
  this.trades = new ViewTrades(trades);
58
66
  this.deviationTolerance = new DeviationTolerance(deviationTolerance);
59
67
  this.pointCloudVisible = pointCloudVisible;
@@ -67,16 +75,20 @@ export class ViewFilters {
67
75
  }
68
76
 
69
77
  export type SelectedElements = string[]
70
- export type ViewAttributesParameter = ModifyPartial<ViewAttributes, { camera: ViewCameraParameter }>
78
+ export type ViewAttributesArgument = ModifyPartial<ViewAttributes, {
79
+ camera: ViewCameraArgument
80
+ filters: ViewFiltersArgument
81
+ photoViewerDetails: Partial<PhotoViewerDetails>
82
+ }>
71
83
 
72
84
  export class ViewAttributes {
73
- constructor(attributes: ViewAttributesParameter = {}) {
74
- const {camera, filters, selectedElements, inspectionMode, photoViewerDetails} = attributes;
85
+ constructor(attributes: ViewAttributesArgument = {}) {
86
+ const { camera, filters, selectedElements, inspectionMode, photoViewerDetails } = attributes;
75
87
  this.camera = new ViewCamera(camera);
76
88
  this.filters = new ViewFilters(filters);
77
- this.selectedElements = selectedElements;
89
+ this.selectedElements = selectedElements || [];
78
90
  this.inspectionMode = inspectionMode;
79
- this.photoViewerDetails = photoViewerDetails;
91
+ this.photoViewerDetails = new PhotoViewerDetails(photoViewerDetails);
80
92
  }
81
93
 
82
94
  camera: ViewCamera;
@@ -86,7 +98,10 @@ export class ViewAttributes {
86
98
  photoViewerDetails: PhotoViewerDetails;
87
99
  }
88
100
 
89
- export type ViewParameter = ModifyPartial<ApiView, { viewAttributes: ViewAttributesParameter, createdAt: DateLike }>
101
+ export type ApiViewArgument = ModifyPartial<ApiView, {
102
+ viewAttributes: ViewAttributesArgument,
103
+ createdAt: DateLike
104
+ }>
90
105
 
91
106
  export class ApiView {
92
107
  constructor({
@@ -98,23 +113,20 @@ export class ApiView {
98
113
  createdBy,
99
114
  createdAt,
100
115
  commentThreadIds
101
- }: ViewParameter) {
116
+ }: ApiViewArgument)
117
+ {
118
+ addReadOnlyPropertiesToModel(this, { id, firebaseProjectId, firebaseFloorId, firebaseScanDatasetId, createdBy });
102
119
  addDateGetterAndSetterToDomainModel(this, "createdAt", createdAt);
103
- this.id = id;
104
- this.firebaseProjectId = firebaseProjectId;
105
- this.firebaseFloorId = firebaseFloorId;
106
- this.firebaseScanDatasetId = firebaseScanDatasetId;
107
120
  this.viewAttributes = new ViewAttributes(viewAttributes);
108
- this.createdBy = createdBy;
109
121
  this.commentThreadIds = commentThreadIds;
110
122
  }
111
123
 
112
- id: number;
113
- firebaseProjectId: string;
114
- firebaseFloorId: string;
115
- firebaseScanDatasetId: string;
124
+ readonly id: number;
125
+ readonly firebaseProjectId: string;
126
+ readonly firebaseFloorId: string;
127
+ readonly firebaseScanDatasetId: string;
116
128
  viewAttributes: ViewAttributes;
117
- createdBy: string;
129
+ readonly createdBy: string;
118
130
  createdAt: Date;
119
131
  commentThreadIds: number[];
120
132
  }
@@ -0,0 +1,17 @@
1
+ import { addReadOnlyPropertiesToModel } from "../../mixins";
2
+
3
+ import type { ProjectWorkPackageType } from "../enums";
4
+
5
+ export class ApiWorkPackage {
6
+ constructor({ id, name, firebaseProjectId, type }: Partial<ApiWorkPackage> = {}) {
7
+ addReadOnlyPropertiesToModel(this, { id, firebaseProjectId, type });
8
+ this.name = name;
9
+ }
10
+
11
+ readonly id: number;
12
+ name: string;
13
+ readonly firebaseProjectId: string;
14
+ readonly type: ProjectWorkPackageType;
15
+ }
16
+
17
+ export default ApiWorkPackage;