bruce-models 0.7.5 → 0.7.6

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 (100) hide show
  1. package/dist/bruce-models.es5.js +176 -11
  2. package/dist/bruce-models.es5.js.map +1 -1
  3. package/dist/bruce-models.umd.js +173 -9
  4. package/dist/bruce-models.umd.js.map +1 -1
  5. package/dist/lib/account/account.js +244 -244
  6. package/dist/lib/ann-document/ann-document.js +116 -116
  7. package/dist/lib/api/abstract-api.js +267 -267
  8. package/dist/lib/api/api.js +85 -85
  9. package/dist/lib/api/bruce-api.js +228 -202
  10. package/dist/lib/api/bruce-api.js.map +1 -1
  11. package/dist/lib/api/cam-api.js +132 -132
  12. package/dist/lib/api/cam-api.js.map +1 -1
  13. package/dist/lib/api/global-api.js +131 -131
  14. package/dist/lib/api/global-api.js.map +1 -1
  15. package/dist/lib/api/idm-api.js +132 -132
  16. package/dist/lib/api/idm-api.js.map +1 -1
  17. package/dist/lib/bruce-models.js +84 -83
  18. package/dist/lib/bruce-models.js.map +1 -1
  19. package/dist/lib/calculator/calculator.js +158 -158
  20. package/dist/lib/client-file/client-file.js +188 -188
  21. package/dist/lib/common/bounds.js +2 -2
  22. package/dist/lib/common/bruce-event.js +48 -48
  23. package/dist/lib/common/bruce-variable.js +54 -54
  24. package/dist/lib/common/cache.js +86 -86
  25. package/dist/lib/common/camera.js +11 -11
  26. package/dist/lib/common/cartes.js +55 -55
  27. package/dist/lib/common/carto.js +60 -60
  28. package/dist/lib/common/color.js +86 -86
  29. package/dist/lib/common/delay-queue.js +60 -60
  30. package/dist/lib/common/dictionary.js +2 -2
  31. package/dist/lib/common/geometry.js +120 -120
  32. package/dist/lib/common/transform.js +2 -2
  33. package/dist/lib/common/utc.js +39 -39
  34. package/dist/lib/custom-form/custom-form.js +136 -136
  35. package/dist/lib/data-lab/data-lab.js +90 -90
  36. package/dist/lib/entity/entity-attachment-type.js +132 -132
  37. package/dist/lib/entity/entity-attachment.js +208 -208
  38. package/dist/lib/entity/entity-comment.js +132 -132
  39. package/dist/lib/entity/entity-coords.js +181 -181
  40. package/dist/lib/entity/entity-link.js +132 -132
  41. package/dist/lib/entity/entity-lod.js +189 -189
  42. package/dist/lib/entity/entity-relation-type.js +150 -150
  43. package/dist/lib/entity/entity-relation.js +189 -189
  44. package/dist/lib/entity/entity-source.js +176 -176
  45. package/dist/lib/entity/entity-tag.js +229 -229
  46. package/dist/lib/entity/entity-type.js +163 -163
  47. package/dist/lib/entity/entity.js +358 -358
  48. package/dist/lib/entity/getters/batched-data-getter.js +91 -91
  49. package/dist/lib/entity/getters/entity-filter-getter.js +344 -344
  50. package/dist/lib/entity/getters/entity-globe.js +135 -135
  51. package/dist/lib/entity/getters/view-monitor.js +2 -2
  52. package/dist/lib/import/import-cad.js +82 -82
  53. package/dist/lib/import/import-csv.js +51 -51
  54. package/dist/lib/import/import-json.js +51 -51
  55. package/dist/lib/import/import-kml.js +51 -51
  56. package/dist/lib/import/imported-file.js +121 -121
  57. package/dist/lib/markup/markup.js +40 -40
  58. package/dist/lib/program-key/program-key.js +152 -152
  59. package/dist/lib/project/menu-item.js +115 -115
  60. package/dist/lib/project/project-view-bookmark.js +183 -172
  61. package/dist/lib/project/project-view-bookmark.js.map +1 -1
  62. package/dist/lib/project/{project-view-tile-source.js → project-view-legacy-tile.js} +116 -116
  63. package/dist/lib/project/project-view-legacy-tile.js.map +1 -0
  64. package/dist/lib/project/project-view-tile.js +120 -0
  65. package/dist/lib/project/project-view-tile.js.map +1 -0
  66. package/dist/lib/project/project-view.js +177 -166
  67. package/dist/lib/project/project-view.js.map +1 -1
  68. package/dist/lib/project/zoom-control.js +17 -17
  69. package/dist/lib/server/pending-action.js +106 -106
  70. package/dist/lib/server/task.js +113 -113
  71. package/dist/lib/style/style.js +152 -152
  72. package/dist/lib/tileset/tileset-cad.js +2 -2
  73. package/dist/lib/tileset/tileset-entities-map-tiles.js +18 -18
  74. package/dist/lib/tileset/tileset-entities.js +2 -2
  75. package/dist/lib/tileset/tileset-ext-map-tiles.js +17 -17
  76. package/dist/lib/tileset/tileset-ext-terrain-tiles.js +2 -2
  77. package/dist/lib/tileset/tileset-map-tiles.js +2 -2
  78. package/dist/lib/tileset/tileset-pointcloud.js +2 -2
  79. package/dist/lib/tileset/tileset-terrain-tiles.js +2 -2
  80. package/dist/lib/tileset/tileset.js +403 -403
  81. package/dist/lib/user/permission.js +20 -20
  82. package/dist/lib/user/session.js +160 -160
  83. package/dist/lib/user/user-group.js +139 -139
  84. package/dist/lib/user/user.js +451 -451
  85. package/dist/lib/util/encrypt-utils.js +20 -20
  86. package/dist/lib/util/math-utils.js +41 -41
  87. package/dist/lib/util/object-utils.js +17 -17
  88. package/dist/lib/util/path-utils.js +61 -61
  89. package/dist/lib/util/url-utils.js +107 -107
  90. package/dist/types/api/bruce-api.d.ts +22 -2
  91. package/dist/types/api/cam-api.d.ts +1 -1
  92. package/dist/types/api/global-api.d.ts +1 -1
  93. package/dist/types/api/idm-api.d.ts +1 -1
  94. package/dist/types/bruce-models.d.ts +2 -1
  95. package/dist/types/project/project-view-bookmark.d.ts +85 -36
  96. package/dist/types/project/{project-view-tile-source.d.ts → project-view-legacy-tile.d.ts} +1 -1
  97. package/dist/types/project/project-view-tile.d.ts +68 -0
  98. package/dist/types/project/project-view.d.ts +64 -39
  99. package/package.json +1 -1
  100. package/dist/lib/project/project-view-tile-source.js.map +0 -1
@@ -1,133 +1,133 @@
1
- "use strict";
2
- var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
3
- function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
4
- return new (P || (P = Promise))(function (resolve, reject) {
5
- function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
6
- function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
7
- function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
8
- step((generator = generator.apply(thisArg, _arguments || [])).next());
9
- });
10
- };
11
- var __generator = (this && this.__generator) || function (thisArg, body) {
12
- var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;
13
- return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;
14
- function verb(n) { return function (v) { return step([n, v]); }; }
15
- function step(op) {
16
- if (f) throw new TypeError("Generator is already executing.");
17
- while (_) try {
18
- if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;
19
- if (y = 0, t) op = [op[0] & 2, t.value];
20
- switch (op[0]) {
21
- case 0: case 1: t = op; break;
22
- case 4: _.label++; return { value: op[1], done: false };
23
- case 5: _.label++; y = op[1]; op = [0]; continue;
24
- case 7: op = _.ops.pop(); _.trys.pop(); continue;
25
- default:
26
- if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }
27
- if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }
28
- if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }
29
- if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }
30
- if (t[2]) _.ops.pop();
31
- _.trys.pop(); continue;
32
- }
33
- op = body.call(thisArg, _);
34
- } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }
35
- if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
36
- }
37
- };
38
- Object.defineProperty(exports, "__esModule", { value: true });
39
- exports.EntityLink = void 0;
40
- var api_1 = require("../api/api");
41
- /**
42
- * Describes the "Entity Link" concept within Bruce.
43
- * An entity link is a URL linked to an entity record.
44
- */
45
- var EntityLink;
46
- (function (EntityLink) {
47
- function GetCacheKey(id) {
48
- return api_1.Api.ECacheKey.Link + api_1.Api.ECacheKey.Id + id;
49
- }
50
- EntityLink.GetCacheKey = GetCacheKey;
51
- function GetListCacheKey(entityId) {
52
- return api_1.Api.ECacheKey.Link + api_1.Api.ECacheKey.Entity + api_1.Api.ECacheKey.Id + entityId;
53
- }
54
- EntityLink.GetListCacheKey = GetListCacheKey;
55
- function Update(api, data) {
56
- return __awaiter(this, void 0, void 0, function () {
57
- var url;
58
- return __generator(this, function (_a) {
59
- switch (_a.label) {
60
- case 0:
61
- if (!(data === null || data === void 0 ? void 0 : data["Entity.ID"])) {
62
- throw ("Entity ID is required.");
63
- }
64
- url = "entity/" + data["Entity.ID"] + "/link" + (data.ID == null ? "" : "/" + data.ID);
65
- return [4 /*yield*/, api.POST(url, data, api_1.Api.PrepReqParams())];
66
- case 1:
67
- data = _a.sent();
68
- api.Cache.Remove(GetCacheKey(data.ID));
69
- api.Cache.RemoveByStartsWith(api_1.Api.ECacheKey.Link + api_1.Api.ECacheKey.Entity);
70
- return [2 /*return*/, data];
71
- }
72
- });
73
- });
74
- }
75
- EntityLink.Update = Update;
76
- function Delete(api, entityId, linkId) {
77
- return __awaiter(this, void 0, void 0, function () {
78
- return __generator(this, function (_a) {
79
- switch (_a.label) {
80
- case 0:
81
- if (!linkId) {
82
- throw ("Link ID is required.");
83
- }
84
- return [4 /*yield*/, api.DELETE("entity/" + entityId + "/link/" + linkId, api_1.Api.PrepReqParams())];
85
- case 1:
86
- _a.sent();
87
- api.Cache.Remove(GetCacheKey(linkId));
88
- api.Cache.RemoveByStartsWith(api_1.Api.ECacheKey.Link + api_1.Api.ECacheKey.Entity);
89
- return [2 /*return*/];
90
- }
91
- });
92
- });
93
- }
94
- EntityLink.Delete = Delete;
95
- function GetListByEntityId(api, entityId) {
96
- return __awaiter(this, void 0, void 0, function () {
97
- var cacheData, req;
98
- var _this = this;
99
- return __generator(this, function (_a) {
100
- if (!entityId) {
101
- throw ("Entity ID is required.");
102
- }
103
- cacheData = api.Cache.Get(GetListCacheKey(entityId));
104
- if (cacheData) {
105
- return [2 /*return*/, cacheData];
106
- }
107
- req = new Promise(function (res, rej) { return __awaiter(_this, void 0, void 0, function () {
108
- var data, e_1;
109
- return __generator(this, function (_a) {
110
- switch (_a.label) {
111
- case 0:
112
- _a.trys.push([0, 2, , 3]);
113
- return [4 /*yield*/, api.GET("entity/" + entityId + "/links", api_1.Api.PrepReqParams())];
114
- case 1:
115
- data = _a.sent();
116
- res(data.Items);
117
- return [3 /*break*/, 3];
118
- case 2:
119
- e_1 = _a.sent();
120
- rej(e_1);
121
- return [3 /*break*/, 3];
122
- case 3: return [2 /*return*/];
123
- }
124
- });
125
- }); });
126
- api.Cache.Set(GetListCacheKey(entityId), req);
127
- return [2 /*return*/, req];
128
- });
129
- });
130
- }
131
- EntityLink.GetListByEntityId = GetListByEntityId;
132
- })(EntityLink = exports.EntityLink || (exports.EntityLink = {}));
1
+ "use strict";
2
+ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
3
+ function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
4
+ return new (P || (P = Promise))(function (resolve, reject) {
5
+ function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
6
+ function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
7
+ function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
8
+ step((generator = generator.apply(thisArg, _arguments || [])).next());
9
+ });
10
+ };
11
+ var __generator = (this && this.__generator) || function (thisArg, body) {
12
+ var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;
13
+ return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;
14
+ function verb(n) { return function (v) { return step([n, v]); }; }
15
+ function step(op) {
16
+ if (f) throw new TypeError("Generator is already executing.");
17
+ while (_) try {
18
+ if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;
19
+ if (y = 0, t) op = [op[0] & 2, t.value];
20
+ switch (op[0]) {
21
+ case 0: case 1: t = op; break;
22
+ case 4: _.label++; return { value: op[1], done: false };
23
+ case 5: _.label++; y = op[1]; op = [0]; continue;
24
+ case 7: op = _.ops.pop(); _.trys.pop(); continue;
25
+ default:
26
+ if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }
27
+ if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }
28
+ if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }
29
+ if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }
30
+ if (t[2]) _.ops.pop();
31
+ _.trys.pop(); continue;
32
+ }
33
+ op = body.call(thisArg, _);
34
+ } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }
35
+ if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
36
+ }
37
+ };
38
+ Object.defineProperty(exports, "__esModule", { value: true });
39
+ exports.EntityLink = void 0;
40
+ var api_1 = require("../api/api");
41
+ /**
42
+ * Describes the "Entity Link" concept within Bruce.
43
+ * An entity link is a URL linked to an entity record.
44
+ */
45
+ var EntityLink;
46
+ (function (EntityLink) {
47
+ function GetCacheKey(id) {
48
+ return api_1.Api.ECacheKey.Link + api_1.Api.ECacheKey.Id + id;
49
+ }
50
+ EntityLink.GetCacheKey = GetCacheKey;
51
+ function GetListCacheKey(entityId) {
52
+ return api_1.Api.ECacheKey.Link + api_1.Api.ECacheKey.Entity + api_1.Api.ECacheKey.Id + entityId;
53
+ }
54
+ EntityLink.GetListCacheKey = GetListCacheKey;
55
+ function Update(api, data) {
56
+ return __awaiter(this, void 0, void 0, function () {
57
+ var url;
58
+ return __generator(this, function (_a) {
59
+ switch (_a.label) {
60
+ case 0:
61
+ if (!(data === null || data === void 0 ? void 0 : data["Entity.ID"])) {
62
+ throw ("Entity ID is required.");
63
+ }
64
+ url = "entity/" + data["Entity.ID"] + "/link" + (data.ID == null ? "" : "/" + data.ID);
65
+ return [4 /*yield*/, api.POST(url, data, api_1.Api.PrepReqParams())];
66
+ case 1:
67
+ data = _a.sent();
68
+ api.Cache.Remove(GetCacheKey(data.ID));
69
+ api.Cache.RemoveByStartsWith(api_1.Api.ECacheKey.Link + api_1.Api.ECacheKey.Entity);
70
+ return [2 /*return*/, data];
71
+ }
72
+ });
73
+ });
74
+ }
75
+ EntityLink.Update = Update;
76
+ function Delete(api, entityId, linkId) {
77
+ return __awaiter(this, void 0, void 0, function () {
78
+ return __generator(this, function (_a) {
79
+ switch (_a.label) {
80
+ case 0:
81
+ if (!linkId) {
82
+ throw ("Link ID is required.");
83
+ }
84
+ return [4 /*yield*/, api.DELETE("entity/" + entityId + "/link/" + linkId, api_1.Api.PrepReqParams())];
85
+ case 1:
86
+ _a.sent();
87
+ api.Cache.Remove(GetCacheKey(linkId));
88
+ api.Cache.RemoveByStartsWith(api_1.Api.ECacheKey.Link + api_1.Api.ECacheKey.Entity);
89
+ return [2 /*return*/];
90
+ }
91
+ });
92
+ });
93
+ }
94
+ EntityLink.Delete = Delete;
95
+ function GetListByEntityId(api, entityId) {
96
+ return __awaiter(this, void 0, void 0, function () {
97
+ var cacheData, req;
98
+ var _this = this;
99
+ return __generator(this, function (_a) {
100
+ if (!entityId) {
101
+ throw ("Entity ID is required.");
102
+ }
103
+ cacheData = api.Cache.Get(GetListCacheKey(entityId));
104
+ if (cacheData) {
105
+ return [2 /*return*/, cacheData];
106
+ }
107
+ req = new Promise(function (res, rej) { return __awaiter(_this, void 0, void 0, function () {
108
+ var data, e_1;
109
+ return __generator(this, function (_a) {
110
+ switch (_a.label) {
111
+ case 0:
112
+ _a.trys.push([0, 2, , 3]);
113
+ return [4 /*yield*/, api.GET("entity/" + entityId + "/links", api_1.Api.PrepReqParams())];
114
+ case 1:
115
+ data = _a.sent();
116
+ res(data.Items);
117
+ return [3 /*break*/, 3];
118
+ case 2:
119
+ e_1 = _a.sent();
120
+ rej(e_1);
121
+ return [3 /*break*/, 3];
122
+ case 3: return [2 /*return*/];
123
+ }
124
+ });
125
+ }); });
126
+ api.Cache.Set(GetListCacheKey(entityId), req);
127
+ return [2 /*return*/, req];
128
+ });
129
+ });
130
+ }
131
+ EntityLink.GetListByEntityId = GetListByEntityId;
132
+ })(EntityLink = exports.EntityLink || (exports.EntityLink = {}));
133
133
  //# sourceMappingURL=entity-link.js.map
@@ -1,190 +1,190 @@
1
- "use strict";
2
- var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
3
- function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
4
- return new (P || (P = Promise))(function (resolve, reject) {
5
- function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
6
- function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
7
- function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
8
- step((generator = generator.apply(thisArg, _arguments || [])).next());
9
- });
10
- };
11
- var __generator = (this && this.__generator) || function (thisArg, body) {
12
- var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;
13
- return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;
14
- function verb(n) { return function (v) { return step([n, v]); }; }
15
- function step(op) {
16
- if (f) throw new TypeError("Generator is already executing.");
17
- while (_) try {
18
- if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;
19
- if (y = 0, t) op = [op[0] & 2, t.value];
20
- switch (op[0]) {
21
- case 0: case 1: t = op; break;
22
- case 4: _.label++; return { value: op[1], done: false };
23
- case 5: _.label++; y = op[1]; op = [0]; continue;
24
- case 7: op = _.ops.pop(); _.trys.pop(); continue;
25
- default:
26
- if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }
27
- if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }
28
- if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }
29
- if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }
30
- if (t[2]) _.ops.pop();
31
- _.trys.pop(); continue;
32
- }
33
- op = body.call(thisArg, _);
34
- } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }
35
- if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
36
- }
37
- };
38
- Object.defineProperty(exports, "__esModule", { value: true });
39
- exports.EntityLod = void 0;
40
- var api_1 = require("../api/api");
41
- /**
42
- * Describes the "Entity LOD" concept within Bruce.
43
- * LOD stands for Level of Detail.
44
- * An lod record is a possible 2d/3d visualization of the entity record.
45
- * The most common kind is a GLB.
46
- */
47
- var EntityLod;
48
- (function (EntityLod) {
49
- function GetCacheKey(url) {
50
- return api_1.Api.ECacheKey.Lod + api_1.Api.ECacheKey.Id + url;
51
- }
52
- EntityLod.GetCacheKey = GetCacheKey;
53
- function GetTypeListKey(typeId, group) {
54
- return api_1.Api.ECacheKey.Lod + api_1.Api.ECacheKey.EntityType + typeId + api_1.Api.ECacheKey.Id + group;
55
- }
56
- EntityLod.GetTypeListKey = GetTypeListKey;
57
- function GetUrl(api, entityId, categoryId, level, strict) {
58
- if (!entityId) {
59
- throw ("Entity ID is required.");
60
- }
61
- if (!categoryId) {
62
- categoryId = "GLB";
63
- }
64
- if (!level) {
65
- level = 0;
66
- }
67
- var url = api.GetBaseUrl() + ("entity/" + entityId + "/lod/" + categoryId + "/" + level);
68
- if (strict) {
69
- url = url + "?strict=true";
70
- }
71
- return url;
72
- }
73
- EntityLod.GetUrl = GetUrl;
74
- function GetUrlFileId(api, url) {
75
- return __awaiter(this, void 0, void 0, function () {
76
- var cacheData, req;
77
- var _this = this;
78
- return __generator(this, function (_a) {
79
- if (!url) {
80
- throw ("Url is required.");
81
- }
82
- cacheData = api.Cache.Get(GetCacheKey(url));
83
- if (cacheData) {
84
- return [2 /*return*/, cacheData];
85
- }
86
- req = new Promise(function (res, rej) { return __awaiter(_this, void 0, void 0, function () {
87
- var record, e_1;
88
- return __generator(this, function (_a) {
89
- switch (_a.label) {
90
- case 0:
91
- _a.trys.push([0, 2, , 3]);
92
- return [4 /*yield*/, api.get(url, api_1.Api.PrepReqParams())];
93
- case 1:
94
- record = _a.sent();
95
- res(record["ClientFile.ID"]);
96
- return [3 /*break*/, 3];
97
- case 2:
98
- e_1 = _a.sent();
99
- rej(e_1);
100
- return [3 /*break*/, 3];
101
- case 3: return [2 /*return*/];
102
- }
103
- });
104
- }); });
105
- api.Cache.Set(GetCacheKey(url), req, api_1.Api.DEFAULT_CACHE_DURATION);
106
- return [2 /*return*/, req];
107
- });
108
- });
109
- }
110
- EntityLod.GetUrlFileId = GetUrlFileId;
111
- function GetLods(api, params) {
112
- var _a;
113
- return __awaiter(this, void 0, void 0, function () {
114
- var data;
115
- return __generator(this, function (_b) {
116
- switch (_b.label) {
117
- case 0:
118
- if (!((_a = params === null || params === void 0 ? void 0 : params.Items) === null || _a === void 0 ? void 0 : _a.length)) {
119
- throw ("Items are required.");
120
- }
121
- return [4 /*yield*/, api.POST("entity/getlods", params)];
122
- case 1:
123
- data = _b.sent();
124
- return [2 /*return*/, data.Items];
125
- }
126
- });
127
- });
128
- }
129
- EntityLod.GetLods = GetLods;
130
- /**
131
- * Returns lods for a specified entity type.
132
- * @param api
133
- * @param typeId
134
- * @param group default is "DEFAULT".
135
- */
136
- function GetTypeLods(api, typeId, group) {
137
- return __awaiter(this, void 0, void 0, function () {
138
- var cacheData, url, req, prom;
139
- var _this = this;
140
- return __generator(this, function (_a) {
141
- if (!group) {
142
- group = "DEFAULT";
143
- }
144
- cacheData = api.Cache.Get(GetTypeListKey(typeId, group));
145
- if (cacheData) {
146
- return [2 /*return*/, cacheData];
147
- }
148
- url = "entityType/" + typeId + "/lods?includeClientFiles=yes" + (group ? "&group=" + group : "");
149
- req = api.GET(url, api_1.Api.PrepReqParams());
150
- prom = new Promise(function (res, rej) { return __awaiter(_this, void 0, void 0, function () {
151
- var data, e_2;
152
- return __generator(this, function (_a) {
153
- switch (_a.label) {
154
- case 0:
155
- _a.trys.push([0, 2, , 3]);
156
- return [4 /*yield*/, req];
157
- case 1:
158
- data = _a.sent();
159
- res(data.Items);
160
- return [3 /*break*/, 3];
161
- case 2:
162
- e_2 = _a.sent();
163
- rej(e_2);
164
- return [3 /*break*/, 3];
165
- case 3: return [2 /*return*/];
166
- }
167
- });
168
- }); });
169
- api.Cache.Set(GetTypeListKey(typeId, group), prom, api_1.Api.DEFAULT_CACHE_DURATION);
170
- return [2 /*return*/, prom];
171
- });
172
- });
173
- }
174
- EntityLod.GetTypeLods = GetTypeLods;
175
- function Update(api, entityId, params) {
176
- return __awaiter(this, void 0, void 0, function () {
177
- return __generator(this, function (_a) {
178
- if (!params["ClientFile.ID"] || !params["LODCategory.Key"] || (!params.Level && params.Level !== 0)) {
179
- throw ("ClientFile.ID, LODCategory.Key and Level are required.");
180
- }
181
- return [2 /*return*/, api.POST("entity/" + entityId + "/lod/" + params["LODCategory.Key"] + "/" + params.Level, {
182
- "Level": 0,
183
- "ClientFile.ID": params["ClientFile.ID"]
184
- }, api_1.Api.PrepReqParams())];
185
- });
186
- });
187
- }
188
- EntityLod.Update = Update;
189
- })(EntityLod = exports.EntityLod || (exports.EntityLod = {}));
1
+ "use strict";
2
+ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
3
+ function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
4
+ return new (P || (P = Promise))(function (resolve, reject) {
5
+ function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
6
+ function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
7
+ function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
8
+ step((generator = generator.apply(thisArg, _arguments || [])).next());
9
+ });
10
+ };
11
+ var __generator = (this && this.__generator) || function (thisArg, body) {
12
+ var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;
13
+ return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;
14
+ function verb(n) { return function (v) { return step([n, v]); }; }
15
+ function step(op) {
16
+ if (f) throw new TypeError("Generator is already executing.");
17
+ while (_) try {
18
+ if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;
19
+ if (y = 0, t) op = [op[0] & 2, t.value];
20
+ switch (op[0]) {
21
+ case 0: case 1: t = op; break;
22
+ case 4: _.label++; return { value: op[1], done: false };
23
+ case 5: _.label++; y = op[1]; op = [0]; continue;
24
+ case 7: op = _.ops.pop(); _.trys.pop(); continue;
25
+ default:
26
+ if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }
27
+ if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }
28
+ if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }
29
+ if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }
30
+ if (t[2]) _.ops.pop();
31
+ _.trys.pop(); continue;
32
+ }
33
+ op = body.call(thisArg, _);
34
+ } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }
35
+ if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
36
+ }
37
+ };
38
+ Object.defineProperty(exports, "__esModule", { value: true });
39
+ exports.EntityLod = void 0;
40
+ var api_1 = require("../api/api");
41
+ /**
42
+ * Describes the "Entity LOD" concept within Bruce.
43
+ * LOD stands for Level of Detail.
44
+ * An lod record is a possible 2d/3d visualization of the entity record.
45
+ * The most common kind is a GLB.
46
+ */
47
+ var EntityLod;
48
+ (function (EntityLod) {
49
+ function GetCacheKey(url) {
50
+ return api_1.Api.ECacheKey.Lod + api_1.Api.ECacheKey.Id + url;
51
+ }
52
+ EntityLod.GetCacheKey = GetCacheKey;
53
+ function GetTypeListKey(typeId, group) {
54
+ return api_1.Api.ECacheKey.Lod + api_1.Api.ECacheKey.EntityType + typeId + api_1.Api.ECacheKey.Id + group;
55
+ }
56
+ EntityLod.GetTypeListKey = GetTypeListKey;
57
+ function GetUrl(api, entityId, categoryId, level, strict) {
58
+ if (!entityId) {
59
+ throw ("Entity ID is required.");
60
+ }
61
+ if (!categoryId) {
62
+ categoryId = "GLB";
63
+ }
64
+ if (!level) {
65
+ level = 0;
66
+ }
67
+ var url = api.GetBaseUrl() + ("entity/" + entityId + "/lod/" + categoryId + "/" + level);
68
+ if (strict) {
69
+ url = url + "?strict=true";
70
+ }
71
+ return url;
72
+ }
73
+ EntityLod.GetUrl = GetUrl;
74
+ function GetUrlFileId(api, url) {
75
+ return __awaiter(this, void 0, void 0, function () {
76
+ var cacheData, req;
77
+ var _this = this;
78
+ return __generator(this, function (_a) {
79
+ if (!url) {
80
+ throw ("Url is required.");
81
+ }
82
+ cacheData = api.Cache.Get(GetCacheKey(url));
83
+ if (cacheData) {
84
+ return [2 /*return*/, cacheData];
85
+ }
86
+ req = new Promise(function (res, rej) { return __awaiter(_this, void 0, void 0, function () {
87
+ var record, e_1;
88
+ return __generator(this, function (_a) {
89
+ switch (_a.label) {
90
+ case 0:
91
+ _a.trys.push([0, 2, , 3]);
92
+ return [4 /*yield*/, api.get(url, api_1.Api.PrepReqParams())];
93
+ case 1:
94
+ record = _a.sent();
95
+ res(record["ClientFile.ID"]);
96
+ return [3 /*break*/, 3];
97
+ case 2:
98
+ e_1 = _a.sent();
99
+ rej(e_1);
100
+ return [3 /*break*/, 3];
101
+ case 3: return [2 /*return*/];
102
+ }
103
+ });
104
+ }); });
105
+ api.Cache.Set(GetCacheKey(url), req, api_1.Api.DEFAULT_CACHE_DURATION);
106
+ return [2 /*return*/, req];
107
+ });
108
+ });
109
+ }
110
+ EntityLod.GetUrlFileId = GetUrlFileId;
111
+ function GetLods(api, params) {
112
+ var _a;
113
+ return __awaiter(this, void 0, void 0, function () {
114
+ var data;
115
+ return __generator(this, function (_b) {
116
+ switch (_b.label) {
117
+ case 0:
118
+ if (!((_a = params === null || params === void 0 ? void 0 : params.Items) === null || _a === void 0 ? void 0 : _a.length)) {
119
+ throw ("Items are required.");
120
+ }
121
+ return [4 /*yield*/, api.POST("entity/getlods", params)];
122
+ case 1:
123
+ data = _b.sent();
124
+ return [2 /*return*/, data.Items];
125
+ }
126
+ });
127
+ });
128
+ }
129
+ EntityLod.GetLods = GetLods;
130
+ /**
131
+ * Returns lods for a specified entity type.
132
+ * @param api
133
+ * @param typeId
134
+ * @param group default is "DEFAULT".
135
+ */
136
+ function GetTypeLods(api, typeId, group) {
137
+ return __awaiter(this, void 0, void 0, function () {
138
+ var cacheData, url, req, prom;
139
+ var _this = this;
140
+ return __generator(this, function (_a) {
141
+ if (!group) {
142
+ group = "DEFAULT";
143
+ }
144
+ cacheData = api.Cache.Get(GetTypeListKey(typeId, group));
145
+ if (cacheData) {
146
+ return [2 /*return*/, cacheData];
147
+ }
148
+ url = "entityType/" + typeId + "/lods?includeClientFiles=yes" + (group ? "&group=" + group : "");
149
+ req = api.GET(url, api_1.Api.PrepReqParams());
150
+ prom = new Promise(function (res, rej) { return __awaiter(_this, void 0, void 0, function () {
151
+ var data, e_2;
152
+ return __generator(this, function (_a) {
153
+ switch (_a.label) {
154
+ case 0:
155
+ _a.trys.push([0, 2, , 3]);
156
+ return [4 /*yield*/, req];
157
+ case 1:
158
+ data = _a.sent();
159
+ res(data.Items);
160
+ return [3 /*break*/, 3];
161
+ case 2:
162
+ e_2 = _a.sent();
163
+ rej(e_2);
164
+ return [3 /*break*/, 3];
165
+ case 3: return [2 /*return*/];
166
+ }
167
+ });
168
+ }); });
169
+ api.Cache.Set(GetTypeListKey(typeId, group), prom, api_1.Api.DEFAULT_CACHE_DURATION);
170
+ return [2 /*return*/, prom];
171
+ });
172
+ });
173
+ }
174
+ EntityLod.GetTypeLods = GetTypeLods;
175
+ function Update(api, entityId, params) {
176
+ return __awaiter(this, void 0, void 0, function () {
177
+ return __generator(this, function (_a) {
178
+ if (!params["ClientFile.ID"] || !params["LODCategory.Key"] || (!params.Level && params.Level !== 0)) {
179
+ throw ("ClientFile.ID, LODCategory.Key and Level are required.");
180
+ }
181
+ return [2 /*return*/, api.POST("entity/" + entityId + "/lod/" + params["LODCategory.Key"] + "/" + params.Level, {
182
+ "Level": 0,
183
+ "ClientFile.ID": params["ClientFile.ID"]
184
+ }, api_1.Api.PrepReqParams())];
185
+ });
186
+ });
187
+ }
188
+ EntityLod.Update = Update;
189
+ })(EntityLod = exports.EntityLod || (exports.EntityLod = {}));
190
190
  //# sourceMappingURL=entity-lod.js.map