bruce-models 1.9.8 → 2.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.
- package/dist/bruce-models.es5.js +317 -74
- package/dist/bruce-models.es5.js.map +1 -1
- package/dist/bruce-models.umd.js +317 -74
- package/dist/bruce-models.umd.js.map +1 -1
- package/dist/lib/account/account-settings.js +2 -2
- package/dist/lib/account/account.js +201 -185
- package/dist/lib/account/account.js.map +1 -1
- package/dist/lib/ann-document/ann-document.js +94 -86
- package/dist/lib/ann-document/ann-document.js.map +1 -1
- package/dist/lib/api/abstract-api.js +260 -246
- package/dist/lib/api/abstract-api.js.map +1 -1
- package/dist/lib/api/api-getters.js +134 -134
- package/dist/lib/api/api.js +93 -93
- package/dist/lib/api/bruce-api.js +216 -216
- package/dist/lib/api/cam-api.js +85 -82
- package/dist/lib/api/cam-api.js.map +1 -1
- package/dist/lib/api/global-api.js +81 -81
- package/dist/lib/api/idm-api.js +85 -82
- package/dist/lib/api/idm-api.js.map +1 -1
- package/dist/lib/bruce-models.js +86 -86
- package/dist/lib/calculator/calculator.js +341 -341
- package/dist/lib/client-file/client-file.js +249 -245
- package/dist/lib/client-file/client-file.js.map +1 -1
- package/dist/lib/common/bounds.js +61 -61
- package/dist/lib/common/bruce-event.js +46 -46
- package/dist/lib/common/bruce-variable.js +60 -60
- package/dist/lib/common/cache.js +165 -165
- package/dist/lib/common/camera.js +11 -11
- package/dist/lib/common/cartes.js +123 -123
- package/dist/lib/common/carto.js +60 -60
- package/dist/lib/common/color.js +86 -86
- package/dist/lib/common/delay-queue.js +56 -56
- package/dist/lib/common/dictionary.js +2 -2
- package/dist/lib/common/geometry.js +120 -120
- package/dist/lib/common/transform.js +2 -2
- package/dist/lib/common/utc.js +39 -39
- package/dist/lib/custom-form/custom-form-content.js +26 -26
- package/dist/lib/custom-form/custom-form.js +114 -106
- package/dist/lib/custom-form/custom-form.js.map +1 -1
- package/dist/lib/data-lab/data-lab.js +49 -49
- package/dist/lib/entity/entity-attachment-type.js +87 -83
- package/dist/lib/entity/entity-attachment-type.js.map +1 -1
- package/dist/lib/entity/entity-attachment.js +126 -122
- package/dist/lib/entity/entity-attachment.js.map +1 -1
- package/dist/lib/entity/entity-attribute.js +29 -29
- package/dist/lib/entity/entity-comment.js +86 -82
- package/dist/lib/entity/entity-comment.js.map +1 -1
- package/dist/lib/entity/entity-coords.js +153 -149
- package/dist/lib/entity/entity-coords.js.map +1 -1
- package/dist/lib/entity/entity-link.js +86 -82
- package/dist/lib/entity/entity-link.js.map +1 -1
- package/dist/lib/entity/entity-lod-category.js +108 -100
- package/dist/lib/entity/entity-lod-category.js.map +1 -1
- package/dist/lib/entity/entity-lod.js +197 -185
- package/dist/lib/entity/entity-lod.js.map +1 -1
- package/dist/lib/entity/entity-relation-type.js +117 -109
- package/dist/lib/entity/entity-relation-type.js.map +1 -1
- package/dist/lib/entity/entity-relation.js +140 -132
- package/dist/lib/entity/entity-relation.js.map +1 -1
- package/dist/lib/entity/entity-source.js +136 -136
- package/dist/lib/entity/entity-tag.js +157 -149
- package/dist/lib/entity/entity-tag.js.map +1 -1
- package/dist/lib/entity/entity-type-visual-settings.js +13 -13
- package/dist/lib/entity/entity-type.js +121 -113
- package/dist/lib/entity/entity-type.js.map +1 -1
- package/dist/lib/entity/entity.js +331 -319
- package/dist/lib/entity/entity.js.map +1 -1
- package/dist/lib/entity/getters/batched-data-getter.js +84 -84
- package/dist/lib/entity/getters/entity-filter-getter.js +306 -303
- package/dist/lib/entity/getters/entity-filter-getter.js.map +1 -1
- package/dist/lib/entity/getters/entity-globe.js +211 -211
- package/dist/lib/entity/getters/view-monitor.js +2 -2
- package/dist/lib/import/import-cad.js +53 -53
- package/dist/lib/import/import-csv.js +23 -23
- package/dist/lib/import/import-json.js +23 -23
- package/dist/lib/import/import-kml.js +23 -23
- package/dist/lib/import/imported-file.js +99 -91
- package/dist/lib/import/imported-file.js.map +1 -1
- package/dist/lib/internal/uploader.js +76 -76
- package/dist/lib/markup/markup.js +185 -185
- package/dist/lib/plugin/plugin.js +91 -83
- package/dist/lib/plugin/plugin.js.map +1 -1
- package/dist/lib/program-key/program-key.js +119 -111
- package/dist/lib/program-key/program-key.js.map +1 -1
- package/dist/lib/project/menu-item.js +121 -121
- package/dist/lib/project/project-view-bookmark.js +159 -147
- package/dist/lib/project/project-view-bookmark.js.map +1 -1
- package/dist/lib/project/project-view-legacy-tile.js +77 -77
- package/dist/lib/project/project-view-tile.js +125 -125
- package/dist/lib/project/project-view.js +141 -133
- package/dist/lib/project/project-view.js.map +1 -1
- package/dist/lib/project/zoom-control.js +17 -17
- package/dist/lib/server/message-broker.js +142 -142
- package/dist/lib/server/pending-action.js +71 -71
- package/dist/lib/server/task.js +63 -63
- package/dist/lib/style/style.js +125 -117
- package/dist/lib/style/style.js.map +1 -1
- package/dist/lib/tileset/tileset.js +431 -415
- package/dist/lib/tileset/tileset.js.map +1 -1
- package/dist/lib/user/permission.js +20 -20
- package/dist/lib/user/session.js +141 -137
- package/dist/lib/user/session.js.map +1 -1
- package/dist/lib/user/user-group.js +94 -94
- package/dist/lib/user/user.js +474 -446
- package/dist/lib/user/user.js.map +1 -1
- package/dist/lib/util/encrypt-utils.js +19 -19
- package/dist/lib/util/math-utils.js +40 -40
- package/dist/lib/util/object-utils.js +17 -17
- package/dist/lib/util/path-utils.js +61 -61
- package/dist/lib/util/url-utils.js +94 -94
- package/dist/types/api/abstract-api.d.ts +6 -0
- package/package.json +3 -2
|
@@ -1,123 +1,127 @@
|
|
|
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
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
12
|
-
exports.EntityAttachment = void 0;
|
|
13
|
-
const api_1 = require("../api/api");
|
|
14
|
-
/**
|
|
15
|
-
* Describes the "Entity Attachment" concept within Bruce.
|
|
16
|
-
* An entity attachment is an arbitrary file record that is linked to an entity record.
|
|
17
|
-
* The same file can be attached to multiple entities.
|
|
18
|
-
*/
|
|
19
|
-
var EntityAttachment;
|
|
20
|
-
(function (EntityAttachment) {
|
|
21
|
-
function GetCacheKey(id) {
|
|
22
|
-
return api_1.Api.ECacheKey.Attachment + api_1.Api.ECacheKey.Id + id;
|
|
23
|
-
}
|
|
24
|
-
EntityAttachment.GetCacheKey = GetCacheKey;
|
|
25
|
-
function GetListCacheKey(entityId) {
|
|
26
|
-
return api_1.Api.ECacheKey.Attachment + api_1.Api.ECacheKey.Entity + api_1.Api.ECacheKey.Id + entityId;
|
|
27
|
-
}
|
|
28
|
-
EntityAttachment.GetListCacheKey = GetListCacheKey;
|
|
29
|
-
function Update(params) {
|
|
30
|
-
return __awaiter(this, void 0, void 0, function* () {
|
|
31
|
-
const { api, attachments, req, entityId } = params;
|
|
32
|
-
if (!(attachments === null || attachments === void 0 ? void 0 : attachments.length)) {
|
|
33
|
-
return {
|
|
34
|
-
attachments: []
|
|
35
|
-
};
|
|
36
|
-
}
|
|
37
|
-
const res = yield api.POST(`entity/${entityId}/attachments`, {
|
|
38
|
-
attachments
|
|
39
|
-
}, api_1.Api.PrepReqParams(req));
|
|
40
|
-
for (let i = 0; i < attachments.length; i++) {
|
|
41
|
-
if (attachments[i].ID) {
|
|
42
|
-
api.Cache.Remove(GetCacheKey(attachments[i].ID));
|
|
43
|
-
}
|
|
44
|
-
}
|
|
45
|
-
api.Cache.Remove(GetListCacheKey(entityId));
|
|
46
|
-
return {
|
|
47
|
-
attachments: res.attachments
|
|
48
|
-
};
|
|
49
|
-
});
|
|
50
|
-
}
|
|
51
|
-
EntityAttachment.Update = Update;
|
|
52
|
-
function UpdateOrder(params) {
|
|
53
|
-
return __awaiter(this, void 0, void 0, function* () {
|
|
54
|
-
const { api, entityId, attachmentTypeId: typeId, attachments, req: reqParams } = params;
|
|
55
|
-
if (!entityId || !typeId || !(attachments === null || attachments === void 0 ? void 0 : attachments.length)) {
|
|
56
|
-
throw ("Entity ID, Type ID, and Attachments are required.");
|
|
57
|
-
}
|
|
58
|
-
const reqData = {
|
|
59
|
-
"DisplayOrder.Start": 0,
|
|
60
|
-
"ClientFile.ID": attachments.map(x => x["ClientFile.ID"])
|
|
61
|
-
};
|
|
62
|
-
yield api.POST(`entity/${entityId}/attachments/${typeId}/setOrder`, reqData, api_1.Api.PrepReqParams(reqParams));
|
|
63
|
-
for (let i = 0; i < attachments.length; i++) {
|
|
64
|
-
api.Cache.Remove(GetCacheKey(attachments[i].ID));
|
|
65
|
-
}
|
|
66
|
-
api.Cache.RemoveByStartsWith(GetListCacheKey(entityId));
|
|
67
|
-
});
|
|
68
|
-
}
|
|
69
|
-
EntityAttachment.UpdateOrder = UpdateOrder;
|
|
70
|
-
function Delete(params) {
|
|
71
|
-
return __awaiter(this, void 0, void 0, function* () {
|
|
72
|
-
const { api, attachmentId, entityId, req } = params;
|
|
73
|
-
if (!attachmentId || !entityId) {
|
|
74
|
-
throw ("Entity id and attachment id.");
|
|
75
|
-
}
|
|
76
|
-
yield api.DELETE(`entity/${entityId}/attachments/${attachmentId}`, api_1.Api.PrepReqParams(req));
|
|
77
|
-
api.Cache.Remove(GetCacheKey(attachmentId));
|
|
78
|
-
});
|
|
79
|
-
}
|
|
80
|
-
EntityAttachment.Delete = Delete;
|
|
81
|
-
function GetListByEntityId(params) {
|
|
82
|
-
return __awaiter(this, void 0, void 0, function* () {
|
|
83
|
-
const { api, entityId, req: reqParams } = params;
|
|
84
|
-
if (!entityId) {
|
|
85
|
-
throw ("Entity ID is required.");
|
|
86
|
-
}
|
|
87
|
-
const cacheData = api.GetCacheItem(GetListCacheKey(entityId), reqParams);
|
|
88
|
-
if (cacheData) {
|
|
89
|
-
return cacheData;
|
|
90
|
-
}
|
|
91
|
-
const req = new Promise((res, rej) => __awaiter(this, void 0, void 0, function* () {
|
|
92
|
-
try {
|
|
93
|
-
const data = yield api.GET(`entity/${entityId}/attachments`, api_1.Api.PrepReqParams(reqParams));
|
|
94
|
-
res({
|
|
95
|
-
attachments: (data.attachments ? data.attachments : data.Items)
|
|
96
|
-
});
|
|
97
|
-
}
|
|
98
|
-
catch (e) {
|
|
99
|
-
rej(e);
|
|
100
|
-
}
|
|
101
|
-
}));
|
|
102
|
-
api.
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
|
|
113
|
-
const
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
|
|
117
|
-
|
|
118
|
-
|
|
119
|
-
|
|
120
|
-
|
|
121
|
-
|
|
122
|
-
}
|
|
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
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
12
|
+
exports.EntityAttachment = void 0;
|
|
13
|
+
const api_1 = require("../api/api");
|
|
14
|
+
/**
|
|
15
|
+
* Describes the "Entity Attachment" concept within Bruce.
|
|
16
|
+
* An entity attachment is an arbitrary file record that is linked to an entity record.
|
|
17
|
+
* The same file can be attached to multiple entities.
|
|
18
|
+
*/
|
|
19
|
+
var EntityAttachment;
|
|
20
|
+
(function (EntityAttachment) {
|
|
21
|
+
function GetCacheKey(id) {
|
|
22
|
+
return api_1.Api.ECacheKey.Attachment + api_1.Api.ECacheKey.Id + id;
|
|
23
|
+
}
|
|
24
|
+
EntityAttachment.GetCacheKey = GetCacheKey;
|
|
25
|
+
function GetListCacheKey(entityId) {
|
|
26
|
+
return api_1.Api.ECacheKey.Attachment + api_1.Api.ECacheKey.Entity + api_1.Api.ECacheKey.Id + entityId;
|
|
27
|
+
}
|
|
28
|
+
EntityAttachment.GetListCacheKey = GetListCacheKey;
|
|
29
|
+
function Update(params) {
|
|
30
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
31
|
+
const { api, attachments, req, entityId } = params;
|
|
32
|
+
if (!(attachments === null || attachments === void 0 ? void 0 : attachments.length)) {
|
|
33
|
+
return {
|
|
34
|
+
attachments: []
|
|
35
|
+
};
|
|
36
|
+
}
|
|
37
|
+
const res = yield api.POST(`entity/${entityId}/attachments`, {
|
|
38
|
+
attachments
|
|
39
|
+
}, api_1.Api.PrepReqParams(req));
|
|
40
|
+
for (let i = 0; i < attachments.length; i++) {
|
|
41
|
+
if (attachments[i].ID) {
|
|
42
|
+
api.Cache.Remove(GetCacheKey(attachments[i].ID));
|
|
43
|
+
}
|
|
44
|
+
}
|
|
45
|
+
api.Cache.Remove(GetListCacheKey(entityId));
|
|
46
|
+
return {
|
|
47
|
+
attachments: res.attachments
|
|
48
|
+
};
|
|
49
|
+
});
|
|
50
|
+
}
|
|
51
|
+
EntityAttachment.Update = Update;
|
|
52
|
+
function UpdateOrder(params) {
|
|
53
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
54
|
+
const { api, entityId, attachmentTypeId: typeId, attachments, req: reqParams } = params;
|
|
55
|
+
if (!entityId || !typeId || !(attachments === null || attachments === void 0 ? void 0 : attachments.length)) {
|
|
56
|
+
throw ("Entity ID, Type ID, and Attachments are required.");
|
|
57
|
+
}
|
|
58
|
+
const reqData = {
|
|
59
|
+
"DisplayOrder.Start": 0,
|
|
60
|
+
"ClientFile.ID": attachments.map(x => x["ClientFile.ID"])
|
|
61
|
+
};
|
|
62
|
+
yield api.POST(`entity/${entityId}/attachments/${typeId}/setOrder`, reqData, api_1.Api.PrepReqParams(reqParams));
|
|
63
|
+
for (let i = 0; i < attachments.length; i++) {
|
|
64
|
+
api.Cache.Remove(GetCacheKey(attachments[i].ID));
|
|
65
|
+
}
|
|
66
|
+
api.Cache.RemoveByStartsWith(GetListCacheKey(entityId));
|
|
67
|
+
});
|
|
68
|
+
}
|
|
69
|
+
EntityAttachment.UpdateOrder = UpdateOrder;
|
|
70
|
+
function Delete(params) {
|
|
71
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
72
|
+
const { api, attachmentId, entityId, req } = params;
|
|
73
|
+
if (!attachmentId || !entityId) {
|
|
74
|
+
throw ("Entity id and attachment id.");
|
|
75
|
+
}
|
|
76
|
+
yield api.DELETE(`entity/${entityId}/attachments/${attachmentId}`, api_1.Api.PrepReqParams(req));
|
|
77
|
+
api.Cache.Remove(GetCacheKey(attachmentId));
|
|
78
|
+
});
|
|
79
|
+
}
|
|
80
|
+
EntityAttachment.Delete = Delete;
|
|
81
|
+
function GetListByEntityId(params) {
|
|
82
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
83
|
+
const { api, entityId, req: reqParams } = params;
|
|
84
|
+
if (!entityId) {
|
|
85
|
+
throw ("Entity ID is required.");
|
|
86
|
+
}
|
|
87
|
+
const cacheData = api.GetCacheItem(GetListCacheKey(entityId), reqParams);
|
|
88
|
+
if (cacheData) {
|
|
89
|
+
return cacheData;
|
|
90
|
+
}
|
|
91
|
+
const req = new Promise((res, rej) => __awaiter(this, void 0, void 0, function* () {
|
|
92
|
+
try {
|
|
93
|
+
const data = yield api.GET(`entity/${entityId}/attachments`, api_1.Api.PrepReqParams(reqParams));
|
|
94
|
+
res({
|
|
95
|
+
attachments: (data.attachments ? data.attachments : data.Items)
|
|
96
|
+
});
|
|
97
|
+
}
|
|
98
|
+
catch (e) {
|
|
99
|
+
rej(e);
|
|
100
|
+
}
|
|
101
|
+
}));
|
|
102
|
+
api.SetCacheItem({
|
|
103
|
+
key: GetListCacheKey(entityId),
|
|
104
|
+
value: req,
|
|
105
|
+
req: reqParams
|
|
106
|
+
});
|
|
107
|
+
return req;
|
|
108
|
+
});
|
|
109
|
+
}
|
|
110
|
+
EntityAttachment.GetListByEntityId = GetListByEntityId;
|
|
111
|
+
function Upload(params) {
|
|
112
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
113
|
+
const { api, file, entityId, attachmentTypeId: typeId, req: reqParams } = params;
|
|
114
|
+
if (!entityId || !typeId || !file) {
|
|
115
|
+
throw ("Entity ID, Type ID, and File are required.");
|
|
116
|
+
}
|
|
117
|
+
const url = `entity/${entityId}/attachment/${typeId}`;
|
|
118
|
+
const res = yield api.UPLOAD(url, file, api_1.Api.PrepReqParams(reqParams));
|
|
119
|
+
api.Cache.Remove(GetListCacheKey(entityId));
|
|
120
|
+
return {
|
|
121
|
+
attachment: res
|
|
122
|
+
};
|
|
123
|
+
});
|
|
124
|
+
}
|
|
125
|
+
EntityAttachment.Upload = Upload;
|
|
126
|
+
})(EntityAttachment = exports.EntityAttachment || (exports.EntityAttachment = {}));
|
|
123
127
|
//# sourceMappingURL=entity-attachment.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"entity-attachment.js","sourceRoot":"","sources":["../../../src/entity/entity-attachment.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,oCAAiC;AAOjC;;;;GAIG;AACH,IAAiB,gBAAgB,
|
|
1
|
+
{"version":3,"file":"entity-attachment.js","sourceRoot":"","sources":["../../../src/entity/entity-attachment.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,30 +1,30 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.EntityAttribute = void 0;
|
|
4
|
-
var EntityAttribute;
|
|
5
|
-
(function (EntityAttribute) {
|
|
6
|
-
let EType;
|
|
7
|
-
(function (EType) {
|
|
8
|
-
EType["String"] = "String";
|
|
9
|
-
EType["Double"] = "Double";
|
|
10
|
-
EType["Integer"] = "Integer";
|
|
11
|
-
EType["Datetime"] = "Datetime";
|
|
12
|
-
EType["Structure"] = "Structure";
|
|
13
|
-
EType["Geometry"] = "Geometry";
|
|
14
|
-
EType["Dictionary"] = "Dictionary";
|
|
15
|
-
EType["Boolean"] = "Boolean";
|
|
16
|
-
})(EType = EntityAttribute.EType || (EntityAttribute.EType = {}));
|
|
17
|
-
function GetAttribute(items, path) {
|
|
18
|
-
if (!items || !path || !path.length) {
|
|
19
|
-
return null;
|
|
20
|
-
}
|
|
21
|
-
const key = path[0];
|
|
22
|
-
const item = items.find((i) => i.Key === key);
|
|
23
|
-
if (!item || !item.Structure || !path.length) {
|
|
24
|
-
return item;
|
|
25
|
-
}
|
|
26
|
-
return GetAttribute(item.Structure, path.slice(1));
|
|
27
|
-
}
|
|
28
|
-
EntityAttribute.GetAttribute = GetAttribute;
|
|
29
|
-
})(EntityAttribute = exports.EntityAttribute || (exports.EntityAttribute = {}));
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.EntityAttribute = void 0;
|
|
4
|
+
var EntityAttribute;
|
|
5
|
+
(function (EntityAttribute) {
|
|
6
|
+
let EType;
|
|
7
|
+
(function (EType) {
|
|
8
|
+
EType["String"] = "String";
|
|
9
|
+
EType["Double"] = "Double";
|
|
10
|
+
EType["Integer"] = "Integer";
|
|
11
|
+
EType["Datetime"] = "Datetime";
|
|
12
|
+
EType["Structure"] = "Structure";
|
|
13
|
+
EType["Geometry"] = "Geometry";
|
|
14
|
+
EType["Dictionary"] = "Dictionary";
|
|
15
|
+
EType["Boolean"] = "Boolean";
|
|
16
|
+
})(EType = EntityAttribute.EType || (EntityAttribute.EType = {}));
|
|
17
|
+
function GetAttribute(items, path) {
|
|
18
|
+
if (!items || !path || !path.length) {
|
|
19
|
+
return null;
|
|
20
|
+
}
|
|
21
|
+
const key = path[0];
|
|
22
|
+
const item = items.find((i) => i.Key === key);
|
|
23
|
+
if (!item || !item.Structure || !path.length) {
|
|
24
|
+
return item;
|
|
25
|
+
}
|
|
26
|
+
return GetAttribute(item.Structure, path.slice(1));
|
|
27
|
+
}
|
|
28
|
+
EntityAttribute.GetAttribute = GetAttribute;
|
|
29
|
+
})(EntityAttribute = exports.EntityAttribute || (exports.EntityAttribute = {}));
|
|
30
30
|
//# sourceMappingURL=entity-attribute.js.map
|
|
@@ -1,83 +1,87 @@
|
|
|
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
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
12
|
-
exports.EntityComment = void 0;
|
|
13
|
-
const api_1 = require("../api/api");
|
|
14
|
-
/**
|
|
15
|
-
* Describes the "Entity Comment" concept within Bruce.
|
|
16
|
-
* An entity comment is a user written message that is linked to an entity record.
|
|
17
|
-
*/
|
|
18
|
-
var EntityComment;
|
|
19
|
-
(function (EntityComment) {
|
|
20
|
-
function GetCacheKey(id) {
|
|
21
|
-
return api_1.Api.ECacheKey.Comment + api_1.Api.ECacheKey.Id + id;
|
|
22
|
-
}
|
|
23
|
-
EntityComment.GetCacheKey = GetCacheKey;
|
|
24
|
-
function GetListCacheKey(entityId) {
|
|
25
|
-
return api_1.Api.ECacheKey.Comment + api_1.Api.ECacheKey.Entity + api_1.Api.ECacheKey.Id + entityId;
|
|
26
|
-
}
|
|
27
|
-
EntityComment.GetListCacheKey = GetListCacheKey;
|
|
28
|
-
function Update(params) {
|
|
29
|
-
return __awaiter(this, void 0, void 0, function* () {
|
|
30
|
-
const { api, comment: data, req: reqParams } = params;
|
|
31
|
-
if (!(data === null || data === void 0 ? void 0 : data["TargetObject.ID"])) {
|
|
32
|
-
throw ("TargetObject.ID (entity id) is required.");
|
|
33
|
-
}
|
|
34
|
-
const url = `entity/${data["TargetObject.ID"]}/comment` + (data.ID == null ? "" : "/" + data.ID);
|
|
35
|
-
const res = yield api.POST(url, data, api_1.Api.PrepReqParams(reqParams));
|
|
36
|
-
api.Cache.Remove(GetCacheKey(data.ID));
|
|
37
|
-
api.Cache.RemoveByStartsWith(api_1.Api.ECacheKey.Comment + api_1.Api.ECacheKey.Entity);
|
|
38
|
-
return {
|
|
39
|
-
comment: res
|
|
40
|
-
};
|
|
41
|
-
});
|
|
42
|
-
}
|
|
43
|
-
EntityComment.Update = Update;
|
|
44
|
-
function Delete(params) {
|
|
45
|
-
return __awaiter(this, void 0, void 0, function* () {
|
|
46
|
-
const { api, entityId, commentId, req: reqParams } = params;
|
|
47
|
-
if (!commentId) {
|
|
48
|
-
throw ("Comment ID is required.");
|
|
49
|
-
}
|
|
50
|
-
yield api.DELETE(`entity/${entityId}/comment/${commentId}`, api_1.Api.PrepReqParams(reqParams));
|
|
51
|
-
api.Cache.Remove(GetCacheKey(commentId));
|
|
52
|
-
api.Cache.RemoveByStartsWith(api_1.Api.ECacheKey.Comment + api_1.Api.ECacheKey.Entity);
|
|
53
|
-
});
|
|
54
|
-
}
|
|
55
|
-
EntityComment.Delete = Delete;
|
|
56
|
-
function GetListByEntityId(params) {
|
|
57
|
-
return __awaiter(this, void 0, void 0, function* () {
|
|
58
|
-
const { api, entityId, req: reqParams } = params;
|
|
59
|
-
if (!entityId) {
|
|
60
|
-
throw ("Entity ID is required.");
|
|
61
|
-
}
|
|
62
|
-
const cacheData = api.GetCacheItem(GetListCacheKey(entityId), reqParams);
|
|
63
|
-
if (cacheData) {
|
|
64
|
-
return cacheData;
|
|
65
|
-
}
|
|
66
|
-
const req = new Promise((res, rej) => __awaiter(this, void 0, void 0, function* () {
|
|
67
|
-
try {
|
|
68
|
-
const data = yield api.GET(`entity/${entityId}/comments`, api_1.Api.PrepReqParams(reqParams));
|
|
69
|
-
res({
|
|
70
|
-
comments: data.Items
|
|
71
|
-
});
|
|
72
|
-
}
|
|
73
|
-
catch (e) {
|
|
74
|
-
rej(e);
|
|
75
|
-
}
|
|
76
|
-
}));
|
|
77
|
-
api.
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
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
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
12
|
+
exports.EntityComment = void 0;
|
|
13
|
+
const api_1 = require("../api/api");
|
|
14
|
+
/**
|
|
15
|
+
* Describes the "Entity Comment" concept within Bruce.
|
|
16
|
+
* An entity comment is a user written message that is linked to an entity record.
|
|
17
|
+
*/
|
|
18
|
+
var EntityComment;
|
|
19
|
+
(function (EntityComment) {
|
|
20
|
+
function GetCacheKey(id) {
|
|
21
|
+
return api_1.Api.ECacheKey.Comment + api_1.Api.ECacheKey.Id + id;
|
|
22
|
+
}
|
|
23
|
+
EntityComment.GetCacheKey = GetCacheKey;
|
|
24
|
+
function GetListCacheKey(entityId) {
|
|
25
|
+
return api_1.Api.ECacheKey.Comment + api_1.Api.ECacheKey.Entity + api_1.Api.ECacheKey.Id + entityId;
|
|
26
|
+
}
|
|
27
|
+
EntityComment.GetListCacheKey = GetListCacheKey;
|
|
28
|
+
function Update(params) {
|
|
29
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
30
|
+
const { api, comment: data, req: reqParams } = params;
|
|
31
|
+
if (!(data === null || data === void 0 ? void 0 : data["TargetObject.ID"])) {
|
|
32
|
+
throw ("TargetObject.ID (entity id) is required.");
|
|
33
|
+
}
|
|
34
|
+
const url = `entity/${data["TargetObject.ID"]}/comment` + (data.ID == null ? "" : "/" + data.ID);
|
|
35
|
+
const res = yield api.POST(url, data, api_1.Api.PrepReqParams(reqParams));
|
|
36
|
+
api.Cache.Remove(GetCacheKey(data.ID));
|
|
37
|
+
api.Cache.RemoveByStartsWith(api_1.Api.ECacheKey.Comment + api_1.Api.ECacheKey.Entity);
|
|
38
|
+
return {
|
|
39
|
+
comment: res
|
|
40
|
+
};
|
|
41
|
+
});
|
|
42
|
+
}
|
|
43
|
+
EntityComment.Update = Update;
|
|
44
|
+
function Delete(params) {
|
|
45
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
46
|
+
const { api, entityId, commentId, req: reqParams } = params;
|
|
47
|
+
if (!commentId) {
|
|
48
|
+
throw ("Comment ID is required.");
|
|
49
|
+
}
|
|
50
|
+
yield api.DELETE(`entity/${entityId}/comment/${commentId}`, api_1.Api.PrepReqParams(reqParams));
|
|
51
|
+
api.Cache.Remove(GetCacheKey(commentId));
|
|
52
|
+
api.Cache.RemoveByStartsWith(api_1.Api.ECacheKey.Comment + api_1.Api.ECacheKey.Entity);
|
|
53
|
+
});
|
|
54
|
+
}
|
|
55
|
+
EntityComment.Delete = Delete;
|
|
56
|
+
function GetListByEntityId(params) {
|
|
57
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
58
|
+
const { api, entityId, req: reqParams } = params;
|
|
59
|
+
if (!entityId) {
|
|
60
|
+
throw ("Entity ID is required.");
|
|
61
|
+
}
|
|
62
|
+
const cacheData = api.GetCacheItem(GetListCacheKey(entityId), reqParams);
|
|
63
|
+
if (cacheData) {
|
|
64
|
+
return cacheData;
|
|
65
|
+
}
|
|
66
|
+
const req = new Promise((res, rej) => __awaiter(this, void 0, void 0, function* () {
|
|
67
|
+
try {
|
|
68
|
+
const data = yield api.GET(`entity/${entityId}/comments`, api_1.Api.PrepReqParams(reqParams));
|
|
69
|
+
res({
|
|
70
|
+
comments: data.Items
|
|
71
|
+
});
|
|
72
|
+
}
|
|
73
|
+
catch (e) {
|
|
74
|
+
rej(e);
|
|
75
|
+
}
|
|
76
|
+
}));
|
|
77
|
+
api.SetCacheItem({
|
|
78
|
+
key: GetListCacheKey(entityId),
|
|
79
|
+
value: req,
|
|
80
|
+
req: reqParams
|
|
81
|
+
});
|
|
82
|
+
return req;
|
|
83
|
+
});
|
|
84
|
+
}
|
|
85
|
+
EntityComment.GetListByEntityId = GetListByEntityId;
|
|
86
|
+
})(EntityComment = exports.EntityComment || (exports.EntityComment = {}));
|
|
83
87
|
//# sourceMappingURL=entity-comment.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"entity-comment.js","sourceRoot":"","sources":["../../../src/entity/entity-comment.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,oCAAiC;AAGjC;;;GAGG;AACH,IAAiB,aAAa,
|
|
1
|
+
{"version":3,"file":"entity-comment.js","sourceRoot":"","sources":["../../../src/entity/entity-comment.ts"],"names":[],"mappings":"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"}
|