bruce-models 3.2.0 → 3.2.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (195) hide show
  1. package/dist/bruce-models.es5.js +2670 -838
  2. package/dist/bruce-models.es5.js.map +1 -1
  3. package/dist/bruce-models.umd.js +2606 -803
  4. package/dist/bruce-models.umd.js.map +1 -1
  5. package/dist/lib/account/account-invite.js +40 -1
  6. package/dist/lib/account/account-invite.js.map +1 -1
  7. package/dist/lib/account/account.js +60 -5
  8. package/dist/lib/account/account.js.map +1 -1
  9. package/dist/lib/ann-document/ann-document.js +36 -3
  10. package/dist/lib/ann-document/ann-document.js.map +1 -1
  11. package/dist/lib/api/abstract-api.js +78 -1
  12. package/dist/lib/api/abstract-api.js.map +1 -1
  13. package/dist/lib/api/api-getters.js +68 -94
  14. package/dist/lib/api/api-getters.js.map +1 -1
  15. package/dist/lib/api/api.js +20 -3
  16. package/dist/lib/api/api.js.map +1 -1
  17. package/dist/lib/api/bruce-api.js +68 -27
  18. package/dist/lib/api/bruce-api.js.map +1 -1
  19. package/dist/lib/api/global-api.js +46 -4
  20. package/dist/lib/api/global-api.js.map +1 -1
  21. package/dist/lib/api/guardian-api.js +42 -1
  22. package/dist/lib/api/guardian-api.js.map +1 -1
  23. package/dist/lib/bruce-models.js +1 -3
  24. package/dist/lib/bruce-models.js.map +1 -1
  25. package/dist/lib/calculator/calculator.js +42 -1
  26. package/dist/lib/calculator/calculator.js.map +1 -1
  27. package/dist/lib/client-file/client-file.js +71 -7
  28. package/dist/lib/client-file/client-file.js.map +1 -1
  29. package/dist/lib/common/bounds.js +1 -1
  30. package/dist/lib/common/bounds.js.map +1 -1
  31. package/dist/lib/common/bruce-event.js +19 -0
  32. package/dist/lib/common/bruce-event.js.map +1 -1
  33. package/dist/lib/common/bruce-variable.js +5 -0
  34. package/dist/lib/common/bruce-variable.js.map +1 -1
  35. package/dist/lib/common/color-css-defaults.js +157 -0
  36. package/dist/lib/common/color-css-defaults.js.map +1 -0
  37. package/dist/lib/common/color.js +18 -4
  38. package/dist/lib/common/color.js.map +1 -1
  39. package/dist/lib/common/delay-queue.js +7 -0
  40. package/dist/lib/common/delay-queue.js.map +1 -1
  41. package/dist/lib/common/geometry.js +5 -0
  42. package/dist/lib/common/geometry.js.map +1 -1
  43. package/dist/lib/common/lru-cache.js +14 -0
  44. package/dist/lib/common/lru-cache.js.map +1 -1
  45. package/dist/lib/custom-form/custom-form.js +49 -7
  46. package/dist/lib/custom-form/custom-form.js.map +1 -1
  47. package/dist/lib/data-lab/data-lab.js +10 -0
  48. package/dist/lib/data-lab/data-lab.js.map +1 -1
  49. package/dist/lib/data-source/data-source.js +41 -0
  50. package/dist/lib/data-source/data-source.js.map +1 -1
  51. package/dist/lib/entity/entity-attachment-type.js +37 -1
  52. package/dist/lib/entity/entity-attachment-type.js.map +1 -1
  53. package/dist/lib/entity/entity-attachment.js +65 -18
  54. package/dist/lib/entity/entity-attachment.js.map +1 -1
  55. package/dist/lib/entity/entity-attribute.js +17 -1
  56. package/dist/lib/entity/entity-attribute.js.map +1 -1
  57. package/dist/lib/entity/entity-comment.js +44 -7
  58. package/dist/lib/entity/entity-comment.js.map +1 -1
  59. package/dist/lib/entity/entity-coords.js +38 -0
  60. package/dist/lib/entity/entity-coords.js.map +1 -1
  61. package/dist/lib/entity/entity-link.js +45 -11
  62. package/dist/lib/entity/entity-link.js.map +1 -1
  63. package/dist/lib/entity/entity-lod-category.js +52 -9
  64. package/dist/lib/entity/entity-lod-category.js.map +1 -1
  65. package/dist/lib/entity/entity-lod.js +78 -16
  66. package/dist/lib/entity/entity-lod.js.map +1 -1
  67. package/dist/lib/entity/entity-relation-type.js +48 -10
  68. package/dist/lib/entity/entity-relation-type.js.map +1 -1
  69. package/dist/lib/entity/entity-relation.js +69 -16
  70. package/dist/lib/entity/entity-relation.js.map +1 -1
  71. package/dist/lib/entity/entity-source.js +56 -15
  72. package/dist/lib/entity/entity-source.js.map +1 -1
  73. package/dist/lib/entity/entity-tag.js +56 -10
  74. package/dist/lib/entity/entity-tag.js.map +1 -1
  75. package/dist/lib/entity/entity-type-visual-settings.js +4 -0
  76. package/dist/lib/entity/entity-type-visual-settings.js.map +1 -1
  77. package/dist/lib/entity/entity-type.js +45 -7
  78. package/dist/lib/entity/entity-type.js.map +1 -1
  79. package/dist/lib/entity/entity.js +122 -18
  80. package/dist/lib/entity/entity.js.map +1 -1
  81. package/dist/lib/environment.js +12 -0
  82. package/dist/lib/environment.js.map +1 -1
  83. package/dist/lib/import/imported-file.js +53 -0
  84. package/dist/lib/import/imported-file.js.map +1 -1
  85. package/dist/lib/internal/uploader.js +8 -0
  86. package/dist/lib/internal/uploader.js.map +1 -1
  87. package/dist/lib/markup/markup.js +1 -1
  88. package/dist/lib/markup/markup.js.map +1 -1
  89. package/dist/lib/plugin/plugin.js +51 -9
  90. package/dist/lib/plugin/plugin.js.map +1 -1
  91. package/dist/lib/program-key/program-key.js +55 -10
  92. package/dist/lib/program-key/program-key.js.map +1 -1
  93. package/dist/lib/project/menu-item.js +22 -0
  94. package/dist/lib/project/menu-item.js.map +1 -1
  95. package/dist/lib/project/project-view-bookmark.js +55 -11
  96. package/dist/lib/project/project-view-bookmark.js.map +1 -1
  97. package/dist/lib/project/project-view-tile.js +9 -0
  98. package/dist/lib/project/project-view-tile.js.map +1 -1
  99. package/dist/lib/project/project-view.js +45 -7
  100. package/dist/lib/project/project-view.js.map +1 -1
  101. package/dist/lib/project/zoom-control.js +7 -0
  102. package/dist/lib/project/zoom-control.js.map +1 -1
  103. package/dist/lib/server/hosting-location.js +30 -9
  104. package/dist/lib/server/hosting-location.js.map +1 -1
  105. package/dist/lib/server/message-broker.js +3 -0
  106. package/dist/lib/server/message-broker.js.map +1 -1
  107. package/dist/lib/server/pending-action.js +25 -4
  108. package/dist/lib/server/pending-action.js.map +1 -1
  109. package/dist/lib/server/task.js +17 -0
  110. package/dist/lib/server/task.js.map +1 -1
  111. package/dist/lib/style/style.js +56 -7
  112. package/dist/lib/style/style.js.map +1 -1
  113. package/dist/lib/tileset/tileset.js +128 -34
  114. package/dist/lib/tileset/tileset.js.map +1 -1
  115. package/dist/lib/user/permission.js +20 -0
  116. package/dist/lib/user/permission.js.map +1 -1
  117. package/dist/lib/user/session.js +46 -1
  118. package/dist/lib/user/session.js.map +1 -1
  119. package/dist/lib/user/user-group.js +49 -19
  120. package/dist/lib/user/user-group.js.map +1 -1
  121. package/dist/lib/user/user.js +134 -37
  122. package/dist/lib/user/user.js.map +1 -1
  123. package/dist/lib/util/path-utils.js +16 -1
  124. package/dist/lib/util/path-utils.js.map +1 -1
  125. package/dist/lib/util/url-utils.js +12 -85
  126. package/dist/lib/util/url-utils.js.map +1 -1
  127. package/dist/types/account/account-invite.d.ts +44 -8
  128. package/dist/types/account/account-settings.d.ts +3 -0
  129. package/dist/types/account/account.d.ts +68 -11
  130. package/dist/types/ann-document/ann-document.d.ts +43 -0
  131. package/dist/types/api/abstract-api.d.ts +76 -1
  132. package/dist/types/api/api-getters.d.ts +62 -24
  133. package/dist/types/api/api.d.ts +19 -4
  134. package/dist/types/api/bruce-api.d.ts +48 -4
  135. package/dist/types/api/global-api.d.ts +46 -8
  136. package/dist/types/api/guardian-api.d.ts +42 -5
  137. package/dist/types/bruce-models.d.ts +1 -3
  138. package/dist/types/calculator/calculator.d.ts +57 -1
  139. package/dist/types/client-file/client-file.d.ts +69 -6
  140. package/dist/types/common/bounds.d.ts +3 -3
  141. package/dist/types/common/bruce-event.d.ts +19 -0
  142. package/dist/types/common/color-css-defaults.d.ts +153 -0
  143. package/dist/types/common/color.d.ts +6 -1
  144. package/dist/types/common/delay-queue.d.ts +7 -0
  145. package/dist/types/common/geometry.d.ts +5 -0
  146. package/dist/types/common/lru-cache.d.ts +14 -0
  147. package/dist/types/custom-form/custom-form-content.d.ts +3 -0
  148. package/dist/types/custom-form/custom-form.d.ts +46 -1
  149. package/dist/types/data-lab/data-lab.d.ts +10 -0
  150. package/dist/types/data-source/data-source.d.ts +41 -0
  151. package/dist/types/entity/entity-attachment-type.d.ts +38 -1
  152. package/dist/types/entity/entity-attachment.d.ts +49 -2
  153. package/dist/types/entity/entity-attribute.d.ts +31 -12
  154. package/dist/types/entity/entity-comment.d.ts +41 -1
  155. package/dist/types/entity/entity-coords.d.ts +54 -1
  156. package/dist/types/entity/entity-link.d.ts +39 -2
  157. package/dist/types/entity/entity-lod-category.d.ts +46 -0
  158. package/dist/types/entity/entity-lod.d.ts +72 -1
  159. package/dist/types/entity/entity-relation-type.d.ts +42 -1
  160. package/dist/types/entity/entity-relation.d.ts +57 -1
  161. package/dist/types/entity/entity-source.d.ts +38 -4
  162. package/dist/types/entity/entity-tag.d.ts +48 -1
  163. package/dist/types/entity/entity-type-visual-settings.d.ts +4 -0
  164. package/dist/types/entity/entity-type.d.ts +45 -4
  165. package/dist/types/entity/entity.d.ts +89 -3
  166. package/dist/types/environment.d.ts +9 -0
  167. package/dist/types/import/imported-file.d.ts +64 -8
  168. package/dist/types/internal/uploader.d.ts +8 -0
  169. package/dist/types/markup/markup.d.ts +7 -1
  170. package/dist/types/plugin/plugin.d.ts +45 -0
  171. package/dist/types/program-key/program-key.d.ts +45 -1
  172. package/dist/types/project/menu-item.d.ts +73 -1
  173. package/dist/types/project/project-view-bookmark.d.ts +64 -2
  174. package/dist/types/project/project-view-tile.d.ts +30 -0
  175. package/dist/types/project/project-view.d.ts +52 -2
  176. package/dist/types/project/zoom-control.d.ts +7 -0
  177. package/dist/types/server/hosting-location.d.ts +24 -0
  178. package/dist/types/server/message-broker.d.ts +3 -0
  179. package/dist/types/server/pending-action.d.ts +28 -1
  180. package/dist/types/server/task.d.ts +20 -0
  181. package/dist/types/style/style.d.ts +69 -2
  182. package/dist/types/tileset/tileset.d.ts +92 -1
  183. package/dist/types/user/permission.d.ts +11 -0
  184. package/dist/types/user/session.d.ts +48 -5
  185. package/dist/types/user/user-group.d.ts +40 -8
  186. package/dist/types/user/user.d.ts +117 -17
  187. package/dist/types/util/path-utils.d.ts +16 -1
  188. package/dist/types/util/url-utils.d.ts +5 -22
  189. package/package.json +1 -1
  190. package/dist/lib/api/cam-api.js +0 -84
  191. package/dist/lib/api/cam-api.js.map +0 -1
  192. package/dist/lib/api/idm-api.js +0 -86
  193. package/dist/lib/api/idm-api.js.map +0 -1
  194. package/dist/types/api/cam-api.d.ts +0 -26
  195. package/dist/types/api/idm-api.d.ts +0 -28
@@ -13,24 +13,50 @@ exports.EntityAttachmentType = void 0;
13
13
  const api_1 = require("../api/api");
14
14
  const environment_1 = require("../environment");
15
15
  /**
16
- * Describes the "Entity Attachment Type" concept within Bruce.
16
+ * Describes the "Entity Attachment Type" concept within Nextspace.
17
17
  * It is a record that describes the purpose of an attachment.
18
18
  */
19
19
  var EntityAttachmentType;
20
20
  (function (EntityAttachmentType) {
21
+ /**
22
+ * Returns cache identifier for an attachment type by ID.
23
+ * Example: {
24
+ * const api: BruceApi.Api = ...;
25
+ * const key = GetCacheKey("123");
26
+ * api.Cache.Remove(key);
27
+ * }
28
+ * @param id
29
+ * @returns
30
+ */
21
31
  function GetCacheKey(id) {
22
32
  return api_1.Api.ECacheKey.AttachmentType + api_1.Api.ECacheKey.Id + id;
23
33
  }
24
34
  EntityAttachmentType.GetCacheKey = GetCacheKey;
35
+ /**
36
+ * Returns cache identifier for a list of attachment types.
37
+ * Example: {
38
+ * const api: BruceApi.Api = ...;
39
+ * const key = GetListCacheKey();
40
+ * api.Cache.Remove(key);
41
+ * }
42
+ * @param typeId
43
+ * @returns
44
+ */
25
45
  function GetListCacheKey() {
26
46
  return api_1.Api.ECacheKey.AttachmentType;
27
47
  }
28
48
  EntityAttachmentType.GetListCacheKey = GetListCacheKey;
49
+ // Known attachment types.
29
50
  let EType;
30
51
  (function (EType) {
52
+ // Attachments with this type will appear in the media tab within the entity details.
31
53
  EType["Photo"] = "photo";
32
54
  EType["Document"] = "document";
33
55
  })(EType = EntityAttachmentType.EType || (EntityAttachmentType.EType = {}));
56
+ /**
57
+ * Deletes an attachment type.
58
+ * @param params
59
+ */
34
60
  function Delete(params) {
35
61
  return __awaiter(this, void 0, void 0, function* () {
36
62
  let { api, attachmentTypeId: id, req: reqParams } = params;
@@ -46,6 +72,11 @@ var EntityAttachmentType;
46
72
  });
47
73
  }
48
74
  EntityAttachmentType.Delete = Delete;
75
+ /**
76
+ * Creates or updates an attachment type.
77
+ * @param params
78
+ * @returns
79
+ */
49
80
  function Update(params) {
50
81
  return __awaiter(this, void 0, void 0, function* () {
51
82
  let { api, attachmentType: data, req: reqParams } = params;
@@ -64,6 +95,11 @@ var EntityAttachmentType;
64
95
  });
65
96
  }
66
97
  EntityAttachmentType.Update = Update;
98
+ /**
99
+ * Gets a list of all attachment types.
100
+ * @param params
101
+ * @returns
102
+ */
67
103
  function GetList(params) {
68
104
  return __awaiter(this, void 0, void 0, function* () {
69
105
  let { api, reqParams } = params;
@@ -1 +1 @@
1
- {"version":3,"file":"entity-attachment-type.js","sourceRoot":"","sources":["../../../src/entity/entity-attachment-type.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"entity-attachment-type.js","sourceRoot":"","sources":["../../../src/entity/entity-attachment-type.ts"],"names":[],"mappings":"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"}
@@ -13,30 +13,55 @@ exports.EntityAttachment = void 0;
13
13
  const api_1 = require("../api/api");
14
14
  const environment_1 = require("../environment");
15
15
  /**
16
- * Describes the "Entity Attachment" concept within Bruce.
16
+ * Describes the "Entity Attachment" concept within Nextspace.
17
17
  * An entity attachment is an arbitrary file record that is linked to an entity record.
18
18
  * The same file can be attached to multiple entities.
19
19
  */
20
20
  var EntityAttachment;
21
21
  (function (EntityAttachment) {
22
+ /**
23
+ * Returns cache identifier for an attachment by ID.
24
+ * Example: {
25
+ * const api: BruceApi.Api = ...;
26
+ * const key = GetCacheKey("123");
27
+ * api.Cache.Remove(key);
28
+ * }
29
+ * @param id
30
+ * @returns
31
+ */
22
32
  function GetCacheKey(id) {
23
33
  return api_1.Api.ECacheKey.Attachment + api_1.Api.ECacheKey.Id + id;
24
34
  }
25
35
  EntityAttachment.GetCacheKey = GetCacheKey;
36
+ /**
37
+ * Returns cache identifier for a list of attachments for an entity.
38
+ * Example: {
39
+ * const api: BruceApi.Api = ...;
40
+ * const key = GetListCacheKey("abc");
41
+ * api.Cache.Remove(key);
42
+ * }
43
+ * @param typeId
44
+ * @returns
45
+ */
26
46
  function GetListCacheKey(entityId) {
27
47
  return api_1.Api.ECacheKey.Attachment + api_1.Api.ECacheKey.Entity + api_1.Api.ECacheKey.Id + entityId;
28
48
  }
29
49
  EntityAttachment.GetListCacheKey = GetListCacheKey;
50
+ /**
51
+ * Updates one or many attachment records.
52
+ * @param params
53
+ * @returns
54
+ */
30
55
  function Update(params) {
31
56
  return __awaiter(this, void 0, void 0, function* () {
32
57
  let { api, attachments, req, entityId } = params;
33
- if (!api) {
34
- api = environment_1.ENVIRONMENT.Api().GetBruceApi();
35
- }
36
58
  if (!(attachments === null || attachments === void 0 ? void 0 : attachments.length)) {
37
- return {
59
+ return Promise.resolve({
38
60
  attachments: []
39
- };
61
+ });
62
+ }
63
+ if (!api) {
64
+ api = environment_1.ENVIRONMENT.Api().GetBruceApi();
40
65
  }
41
66
  const res = yield api.POST(`entity/${entityId}/attachments`, {
42
67
  attachments
@@ -53,15 +78,22 @@ var EntityAttachment;
53
78
  });
54
79
  }
55
80
  EntityAttachment.Update = Update;
81
+ /**
82
+ * Updates the display order of attachments.
83
+ * @param params
84
+ */
56
85
  function UpdateOrder(params) {
57
86
  return __awaiter(this, void 0, void 0, function* () {
58
87
  let { api, entityId, attachmentTypeId: typeId, attachments, req: reqParams } = params;
88
+ if (!entityId || !typeId) {
89
+ throw ("Entity ID and Type ID are required.");
90
+ }
91
+ if (!(attachments === null || attachments === void 0 ? void 0 : attachments.length)) {
92
+ return Promise.resolve();
93
+ }
59
94
  if (!api) {
60
95
  api = environment_1.ENVIRONMENT.Api().GetBruceApi();
61
96
  }
62
- if (!entityId || !typeId || !(attachments === null || attachments === void 0 ? void 0 : attachments.length)) {
63
- throw ("Entity ID, Type ID, and Attachments are required.");
64
- }
65
97
  const reqData = {
66
98
  "DisplayOrder.Start": 0,
67
99
  "ClientFile.ID": attachments.map(x => x["ClientFile.ID"])
@@ -74,30 +106,39 @@ var EntityAttachment;
74
106
  });
75
107
  }
76
108
  EntityAttachment.UpdateOrder = UpdateOrder;
109
+ /**
110
+ * Deletes an attachment record.
111
+ * @param params
112
+ */
77
113
  function Delete(params) {
78
114
  return __awaiter(this, void 0, void 0, function* () {
79
115
  let { api, attachmentId, entityId, req } = params;
80
- if (!api) {
81
- api = environment_1.ENVIRONMENT.Api().GetBruceApi();
82
- }
83
116
  if (!attachmentId || !entityId) {
84
117
  throw ("Entity id and attachment id.");
85
118
  }
119
+ if (!api) {
120
+ api = environment_1.ENVIRONMENT.Api().GetBruceApi();
121
+ }
86
122
  yield api.DELETE(`entity/${entityId}/attachments/${attachmentId}`, api_1.Api.PrepReqParams(req));
87
123
  yield api.Cache.Remove(GetCacheKey(attachmentId));
88
124
  yield api.Cache.Remove(GetListCacheKey(params.entityId));
89
125
  });
90
126
  }
91
127
  EntityAttachment.Delete = Delete;
128
+ /**
129
+ * Gets a list of attachments for an entity.
130
+ * @param params
131
+ * @returns
132
+ */
92
133
  function GetListByEntityId(params) {
93
134
  return __awaiter(this, void 0, void 0, function* () {
94
135
  let { api, entityId, req: reqParams } = params;
95
- if (!api) {
96
- api = environment_1.ENVIRONMENT.Api().GetBruceApi();
97
- }
98
136
  if (!entityId) {
99
137
  throw ("Entity ID is required.");
100
138
  }
139
+ if (!api) {
140
+ api = environment_1.ENVIRONMENT.Api().GetBruceApi();
141
+ }
101
142
  const cache = yield api.GetCacheItem(GetListCacheKey(entityId), reqParams);
102
143
  if (cache === null || cache === void 0 ? void 0 : cache.found) {
103
144
  return cache.data;
@@ -122,15 +163,21 @@ var EntityAttachment;
122
163
  });
123
164
  }
124
165
  EntityAttachment.GetListByEntityId = GetListByEntityId;
166
+ /**
167
+ * Uploads a file as an attachment to an entity.
168
+ * This will create a client file record for the file.
169
+ * @param params
170
+ * @returns
171
+ */
125
172
  function Upload(params) {
126
173
  return __awaiter(this, void 0, void 0, function* () {
127
174
  let { api, file, entityId, attachmentTypeId: typeId, req: reqParams } = params;
128
- if (!api) {
129
- api = environment_1.ENVIRONMENT.Api().GetBruceApi();
130
- }
131
175
  if (!entityId || !typeId || !file) {
132
176
  throw ("Entity ID, Type ID, and File are required.");
133
177
  }
178
+ if (!api) {
179
+ api = environment_1.ENVIRONMENT.Api().GetBruceApi();
180
+ }
134
181
  const url = `entity/${entityId}/attachment/${typeId}`;
135
182
  const res = yield api.UPLOAD(url, file, api_1.Api.PrepReqParams(reqParams));
136
183
  api.Cache.Remove(GetListCacheKey(entityId));
@@ -1 +1 @@
1
- {"version":3,"file":"entity-attachment.js","sourceRoot":"","sources":["../../../src/entity/entity-attachment.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"entity-attachment.js","sourceRoot":"","sources":["../../../src/entity/entity-attachment.ts"],"names":[],"mappings":"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"}
@@ -1,19 +1,35 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.EntityAttribute = void 0;
4
+ /**
5
+ * Describes an entity type schema attribute.
6
+ */
4
7
  var EntityAttribute;
5
8
  (function (EntityAttribute) {
6
9
  let EType;
7
10
  (function (EType) {
11
+ // Arbitrary text attribute.
8
12
  EType["String"] = "String";
13
+ // Floating point number attribute.
9
14
  EType["Double"] = "Double";
15
+ // Whole number attribute.
10
16
  EType["Integer"] = "Integer";
17
+ // iso8601 date time string.
11
18
  EType["Datetime"] = "Datetime";
19
+ // Group of attributes.
12
20
  EType["Structure"] = "Structure";
21
+ // Nextspace vector geometry.
13
22
  EType["Geometry"] = "Geometry";
14
- EType["Dictionary"] = "Dictionary";
23
+ // True/false attribute.
15
24
  EType["Boolean"] = "Boolean";
16
25
  })(EType = EntityAttribute.EType || (EntityAttribute.EType = {}));
26
+ /**
27
+ * Returns an attribute from a provided hierarchy of attributes.
28
+ * Eg: Use the path: ["Bruce", "ID"] to find the "ID" attribute.
29
+ * @param items
30
+ * @param path
31
+ * @returns
32
+ */
17
33
  function GetAttribute(items, path) {
18
34
  if (!items || !path || !path.length) {
19
35
  return null;
@@ -1 +1 @@
1
- {"version":3,"file":"entity-attribute.js","sourceRoot":"","sources":["../../../src/entity/entity-attribute.ts"],"names":[],"mappings":";;;AAAA,IAAiB,eAAe,CAsD/B;AAtDD,WAAiB,eAAe;IAC5B,IAAY,KASX;IATD,WAAY,KAAK;QACb,0BAAiB,CAAA;QACjB,0BAAiB,CAAA;QACjB,4BAAmB,CAAA;QACnB,8BAAqB,CAAA;QACrB,gCAAuB,CAAA;QACvB,8BAAqB,CAAA;QACrB,kCAAyB,CAAA;QACzB,4BAAmB,CAAA;IACvB,CAAC,EATW,KAAK,GAAL,qBAAK,KAAL,qBAAK,QAShB;IAiCD,SAAgB,YAAY,CAAC,KAAmB,EAAE,IAAc;QAC5D,IAAI,CAAC,KAAK,IAAI,CAAC,IAAI,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE;YACjC,OAAO,IAAI,CAAC;SACf;QACD,MAAM,GAAG,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC;QACpB,MAAM,IAAI,GAAG,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,GAAG,KAAK,GAAG,CAAC,CAAC;QAC9C,IAAI,CAAC,IAAI,IAAI,CAAC,IAAI,CAAC,SAAS,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE;YAC1C,OAAO,IAAI,CAAC;SACf;QACD,OAAO,YAAY,CAAC,IAAI,CAAC,SAAS,EAAE,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;IACvD,CAAC;IAVe,4BAAY,eAU3B,CAAA;AACL,CAAC,EAtDgB,eAAe,GAAf,uBAAe,KAAf,uBAAe,QAsD/B"}
1
+ {"version":3,"file":"entity-attribute.js","sourceRoot":"","sources":["../../../src/entity/entity-attribute.ts"],"names":[],"mappings":";;;AAAA;;GAEG;AACH,IAAiB,eAAe,CAyG/B;AAzGD,WAAiB,eAAe;IAC5B,IAAY,KAeX;IAfD,WAAY,KAAK;QACb,4BAA4B;QAC5B,0BAAiB,CAAA;QACjB,mCAAmC;QACnC,0BAAiB,CAAA;QACjB,0BAA0B;QAC1B,4BAAmB,CAAA;QACnB,4BAA4B;QAC5B,8BAAqB,CAAA;QACrB,uBAAuB;QACvB,gCAAuB,CAAA;QACvB,6BAA6B;QAC7B,8BAAqB,CAAA;QACrB,wBAAwB;QACxB,4BAAmB,CAAA;IACvB,CAAC,EAfW,KAAK,GAAL,qBAAK,KAAL,qBAAK,QAehB;IAuED;;;;;;OAMG;IACH,SAAgB,YAAY,CAAC,KAAmB,EAAE,IAAc;QAC5D,IAAI,CAAC,KAAK,IAAI,CAAC,IAAI,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE;YACjC,OAAO,IAAI,CAAC;SACf;QACD,MAAM,GAAG,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC;QACpB,MAAM,IAAI,GAAG,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,GAAG,KAAK,GAAG,CAAC,CAAC;QAC9C,IAAI,CAAC,IAAI,IAAI,CAAC,IAAI,CAAC,SAAS,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE;YAC1C,OAAO,IAAI,CAAC;SACf;QACD,OAAO,YAAY,CAAC,IAAI,CAAC,SAAS,EAAE,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;IACvD,CAAC;IAVe,4BAAY,eAU3B,CAAA;AACL,CAAC,EAzGgB,eAAe,GAAf,uBAAe,KAAf,uBAAe,QAyG/B"}
@@ -13,28 +13,56 @@ exports.EntityComment = void 0;
13
13
  const api_1 = require("../api/api");
14
14
  const environment_1 = require("../environment");
15
15
  /**
16
- * Describes the "Entity Comment" concept within Bruce.
16
+ * Describes the "Entity Comment" concept within Nextspace.
17
17
  * An entity comment is a user written message that is linked to an entity record.
18
+ *
19
+ * @deprecated: The Navigator now uses Entity records directly.
20
+ * a utility is being made to manage those records.
18
21
  */
19
22
  var EntityComment;
20
23
  (function (EntityComment) {
24
+ /**
25
+ * Returns cache identifier for a comment by ID.
26
+ * Example: {
27
+ * const api: BruceApi.Api = ...;
28
+ * const key = GetCacheKey("123");
29
+ * api.Cache.Remove(key);
30
+ * }
31
+ * @param id
32
+ * @returns
33
+ */
21
34
  function GetCacheKey(id) {
22
35
  return api_1.Api.ECacheKey.Comment + api_1.Api.ECacheKey.Id + id;
23
36
  }
24
37
  EntityComment.GetCacheKey = GetCacheKey;
38
+ /**
39
+ * Returns cache identifier for a list of comments for an entity.
40
+ * Example: {
41
+ * const api: BruceApi.Api = ...;
42
+ * const key = GetListCacheKey("abc");
43
+ * api.Cache.Remove(key);
44
+ * }
45
+ * @param entityId
46
+ * @returns
47
+ */
25
48
  function GetListCacheKey(entityId) {
26
49
  return api_1.Api.ECacheKey.Comment + api_1.Api.ECacheKey.Entity + api_1.Api.ECacheKey.Id + entityId;
27
50
  }
28
51
  EntityComment.GetListCacheKey = GetListCacheKey;
52
+ /**
53
+ * Creates or updates a comment.
54
+ * @param params
55
+ * @returns
56
+ */
29
57
  function Update(params) {
30
58
  return __awaiter(this, void 0, void 0, function* () {
31
59
  let { api, comment: data, req: reqParams } = params;
32
- if (!api) {
33
- api = environment_1.ENVIRONMENT.Api().GetBruceApi();
34
- }
35
60
  if (!(data === null || data === void 0 ? void 0 : data["TargetObject.ID"])) {
36
61
  throw ("TargetObject.ID (entity id) is required.");
37
62
  }
63
+ if (!api) {
64
+ api = environment_1.ENVIRONMENT.Api().GetBruceApi();
65
+ }
38
66
  const url = `entity/${data["TargetObject.ID"]}/comment` + (data.ID == null ? "" : "/" + data.ID);
39
67
  const res = yield api.POST(url, data, api_1.Api.PrepReqParams(reqParams));
40
68
  api.Cache.Remove(GetCacheKey(data.ID));
@@ -45,6 +73,10 @@ var EntityComment;
45
73
  });
46
74
  }
47
75
  EntityComment.Update = Update;
76
+ /**
77
+ * Deletes a comment.
78
+ * @param params
79
+ */
48
80
  function Delete(params) {
49
81
  return __awaiter(this, void 0, void 0, function* () {
50
82
  let { api, entityId, commentId, req: reqParams } = params;
@@ -60,15 +92,20 @@ var EntityComment;
60
92
  });
61
93
  }
62
94
  EntityComment.Delete = Delete;
95
+ /**
96
+ * Gets a list of comments for an entity.
97
+ * @param params
98
+ * @returns
99
+ */
63
100
  function GetListByEntityId(params) {
64
101
  return __awaiter(this, void 0, void 0, function* () {
65
102
  let { api, entityId, req: reqParams } = params;
66
- if (!api) {
67
- api = environment_1.ENVIRONMENT.Api().GetBruceApi();
68
- }
69
103
  if (!entityId) {
70
104
  throw ("Entity ID is required.");
71
105
  }
106
+ if (!api) {
107
+ api = environment_1.ENVIRONMENT.Api().GetBruceApi();
108
+ }
72
109
  const cache = yield api.GetCacheItem(GetListCacheKey(entityId), reqParams);
73
110
  if (cache === null || cache === void 0 ? void 0 : cache.found) {
74
111
  return cache.data;
@@ -1 +1 @@
1
- {"version":3,"file":"entity-comment.js","sourceRoot":"","sources":["../../../src/entity/entity-comment.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,oCAAiC;AAGjC,gDAA6C;AAE7C;;;GAGG;AACH,IAAiB,aAAa,CAoG7B;AApGD,WAAiB,aAAa;IAC1B,SAAgB,WAAW,CAAC,EAAU;QAClC,OAAO,SAAG,CAAC,SAAS,CAAC,OAAO,GAAG,SAAG,CAAC,SAAS,CAAC,EAAE,GAAG,EAAE,CAAC;IACzD,CAAC;IAFe,yBAAW,cAE1B,CAAA;IAED,SAAgB,eAAe,CAAC,QAAgB;QAC5C,OAAO,SAAG,CAAC,SAAS,CAAC,OAAO,GAAG,SAAG,CAAC,SAAS,CAAC,MAAM,GAAG,SAAG,CAAC,SAAS,CAAC,EAAE,GAAG,QAAQ,CAAC;IACtF,CAAC;IAFe,6BAAe,kBAE9B,CAAA;IAaD,SAAsB,MAAM,CAAC,MAI5B;;YAGG,IAAI,EAAE,GAAG,EAAE,OAAO,EAAE,IAAI,EAAE,GAAG,EAAE,SAAS,EAAE,GAAG,MAAM,CAAC;YACpD,IAAI,CAAC,GAAG,EAAE;gBACN,GAAG,GAAG,yBAAW,CAAC,GAAG,EAAE,CAAC,WAAW,EAAE,CAAC;aACzC;YAED,IAAI,CAAC,CAAA,IAAI,aAAJ,IAAI,uBAAJ,IAAI,CAAG,iBAAiB,CAAC,CAAA,EAAE;gBAC5B,MAAK,CAAC,0CAA0C,CAAC,CAAC;aACrD;YACD,MAAM,GAAG,GAAG,UAAU,IAAI,CAAC,iBAAiB,CAAC,UAAU,GAAG,CAAC,IAAI,CAAC,EAAE,IAAI,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,GAAG,GAAG,IAAI,CAAC,EAAE,CAAC,CAAC;YACjG,MAAM,GAAG,GAAG,MAAM,GAAG,CAAC,IAAI,CAAC,GAAG,EAAE,IAAI,EAAE,SAAG,CAAC,aAAa,CAAC,SAAS,CAAC,CAAC,CAAC;YACpE,GAAG,CAAC,KAAK,CAAC,MAAM,CAAC,WAAW,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC;YACvC,MAAM,GAAG,CAAC,KAAK,CAAC,kBAAkB,CAAC,SAAG,CAAC,SAAS,CAAC,OAAO,GAAG,SAAG,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC;YACjF,OAAO;gBACH,OAAO,EAAE,GAAG;aACf,CAAC;QACN,CAAC;KAAA;IAtBqB,oBAAM,SAsB3B,CAAA;IAED,SAAsB,MAAM,CAAC,MAK5B;;YACG,IAAI,EAAE,GAAG,EAAE,QAAQ,EAAE,SAAS,EAAE,GAAG,EAAE,SAAS,EAAE,GAAG,MAAM,CAAC;YAC1D,IAAI,CAAC,GAAG,EAAE;gBACN,GAAG,GAAG,yBAAW,CAAC,GAAG,EAAE,CAAC,WAAW,EAAE,CAAC;aACzC;YAED,IAAI,CAAC,SAAS,EAAE;gBACZ,MAAK,CAAC,yBAAyB,CAAC,CAAC;aACpC;YACD,MAAM,GAAG,CAAC,MAAM,CAAC,UAAU,QAAQ,YAAY,SAAS,EAAE,EAAE,SAAG,CAAC,aAAa,CAAC,SAAS,CAAC,CAAC,CAAC;YAC1F,GAAG,CAAC,KAAK,CAAC,MAAM,CAAC,WAAW,CAAC,SAAS,CAAC,CAAC,CAAC;YACzC,MAAM,GAAG,CAAC,KAAK,CAAC,kBAAkB,CAAC,SAAG,CAAC,SAAS,CAAC,OAAO,GAAG,SAAG,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC;QACrF,CAAC;KAAA;IAjBqB,oBAAM,SAiB3B,CAAA;IAED,SAAsB,iBAAiB,CAAC,MAIvC;;YAGG,IAAI,EAAE,GAAG,EAAE,QAAQ,EAAE,GAAG,EAAE,SAAS,EAAE,GAAG,MAAM,CAAC;YAC/C,IAAI,CAAC,GAAG,EAAE;gBACN,GAAG,GAAG,yBAAW,CAAC,GAAG,EAAE,CAAC,WAAW,EAAE,CAAC;aACzC;YAED,IAAI,CAAC,QAAQ,EAAE;gBACX,MAAK,CAAC,wBAAwB,CAAC,CAAC;aACnC;YACD,MAAM,KAAK,GAAG,MAAM,GAAG,CAAC,YAAY,CAAC,eAAe,CAAC,QAAQ,CAAC,EAAE,SAAS,CAAC,CAAC;YAC3E,IAAI,KAAK,aAAL,KAAK,uBAAL,KAAK,CAAE,KAAK,EAAE;gBACd,OAAO,KAAK,CAAC,IAAI,CAAC;aACrB;YACD,MAAM,GAAG,GAAiB,IAAI,OAAO,CAAC,CAAO,GAAG,EAAE,GAAG,EAAE,EAAE;gBACrD,IAAI;oBACA,MAAM,IAAI,GAAG,MAAM,GAAG,CAAC,GAAG,CAAC,UAAU,QAAQ,WAAW,EAAE,SAAG,CAAC,aAAa,CAAC,SAAS,CAAC,CAAC,CAAC;oBACxF,GAAG,CAAC;wBACA,QAAQ,EAAE,IAAI,CAAC,KAAK;qBACvB,CAAC,CAAC;iBACN;gBACD,OAAO,CAAC,EAAE;oBACN,GAAG,CAAC,CAAC,CAAC,CAAC;iBACV;YACL,CAAC,CAAA,CAAC,CAAC;YACH,MAAM,GAAG,CAAC,YAAY,CAAC;gBACnB,GAAG,EAAE,eAAe,CAAC,QAAQ,CAAC;gBAC9B,KAAK,EAAE,GAAG;gBACV,GAAG,EAAE,SAAS;aACjB,CAAC,CAAC;YACH,OAAO,GAAG,CAAC;QACf,CAAC;KAAA;IApCqB,+BAAiB,oBAoCtC,CAAA;AACL,CAAC,EApGgB,aAAa,GAAb,qBAAa,KAAb,qBAAa,QAoG7B"}
1
+ {"version":3,"file":"entity-comment.js","sourceRoot":"","sources":["../../../src/entity/entity-comment.ts"],"names":[],"mappings":"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"}
@@ -13,13 +13,31 @@ exports.EntityCoords = void 0;
13
13
  const api_1 = require("../api/api");
14
14
  const environment_1 = require("../environment");
15
15
  const math_utils_1 = require("../util/math-utils");
16
+ /**
17
+ * This is a utility to help calculate and manage UCS coordinates for entities.
18
+ */
16
19
  var EntityCoords;
17
20
  (function (EntityCoords) {
18
21
  EntityCoords.UCS_ENTITY_TYPE_ID = "Bruce_UCS_Type";
22
+ /**
23
+ * Returns cache identifier for a UCS by entity id.
24
+ * Example: {
25
+ * const api: BruceApi.Api = ...;
26
+ * const key = GetCacheKey("123");
27
+ * api.Cache.Remove(key);
28
+ * }
29
+ * @param entityId
30
+ * @returns
31
+ */
19
32
  function GetCacheKey(entityId) {
20
33
  return api_1.Api.ECacheKey.EntityCoords + api_1.Api.ECacheKey.Entity + api_1.Api.ECacheKey.Id + entityId;
21
34
  }
22
35
  EntityCoords.GetCacheKey = GetCacheKey;
36
+ /**
37
+ * Returns an entity's location with expanded UCS information.
38
+ * @param params
39
+ * @returns
40
+ */
23
41
  function GetEntityCoords(params) {
24
42
  return __awaiter(this, void 0, void 0, function* () {
25
43
  let { api, rootEntityId: entityId, req: reqParams } = params;
@@ -50,6 +68,11 @@ var EntityCoords;
50
68
  });
51
69
  }
52
70
  EntityCoords.GetEntityCoords = GetEntityCoords;
71
+ /**
72
+ * Returns coordinates for an entity when relative to a point.
73
+ * @param params
74
+ * @returns
75
+ */
53
76
  function EntityRelativeToPoint(params) {
54
77
  return __awaiter(this, void 0, void 0, function* () {
55
78
  let { api, rootEntityId: entityId, req: reqParams } = params;
@@ -89,6 +112,11 @@ var EntityCoords;
89
112
  });
90
113
  }
91
114
  EntityCoords.EntityRelativeToPoint = EntityRelativeToPoint;
115
+ /**
116
+ * Returns coordinates for an entity when relative to an EPSG.
117
+ * @param params
118
+ * @returns
119
+ */
92
120
  function EntityRelativeToEpsg(params) {
93
121
  var _a;
94
122
  return __awaiter(this, void 0, void 0, function* () {
@@ -127,6 +155,11 @@ var EntityCoords;
127
155
  });
128
156
  }
129
157
  EntityCoords.EntityRelativeToEpsg = EntityRelativeToEpsg;
158
+ /**
159
+ * Returns coordinates for an entity when relative to a UCS.
160
+ * @param params
161
+ * @returns
162
+ */
130
163
  function EntityRelativeToUcs(params) {
131
164
  return __awaiter(this, void 0, void 0, function* () {
132
165
  let { api, rootEntityId: entityId, req: reqParams } = params;
@@ -156,6 +189,11 @@ var EntityCoords;
156
189
  });
157
190
  }
158
191
  EntityCoords.EntityRelativeToUcs = EntityRelativeToUcs;
192
+ /**
193
+ * Unlinks UCS coordinates from an entity.
194
+ * @param params
195
+ * @returns
196
+ */
159
197
  function UnlinkCoords(params) {
160
198
  return __awaiter(this, void 0, void 0, function* () {
161
199
  let { api, rootEntityId: entityId, req: reqParams } = params;
@@ -1 +1 @@
1
- {"version":3,"file":"entity-coords.js","sourceRoot":"","sources":["../../../src/entity/entity-coords.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"entity-coords.js","sourceRoot":"","sources":["../../../src/entity/entity-coords.ts"],"names":[],"mappings":"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"}
@@ -13,28 +13,53 @@ exports.EntityLink = void 0;
13
13
  const api_1 = require("../api/api");
14
14
  const environment_1 = require("../environment");
15
15
  /**
16
- * Describes the "Entity Link" concept within Bruce.
17
- * An entity link is a URL linked to an entity record.
16
+ * Describes the "Entity Link" concept within Nextspace.
17
+ * An entity link is an external URL linked to an entity record.
18
18
  */
19
19
  var EntityLink;
20
20
  (function (EntityLink) {
21
+ /**
22
+ * Returns cache identifier for a link record.
23
+ * Example: {
24
+ * const api: BruceApi.Api = ...;
25
+ * const key = GetCacheKey(1);
26
+ * api.Cache.Remove(key);
27
+ * }
28
+ * @param id
29
+ * @returns
30
+ */
21
31
  function GetCacheKey(id) {
22
32
  return api_1.Api.ECacheKey.Link + api_1.Api.ECacheKey.Id + id;
23
33
  }
24
34
  EntityLink.GetCacheKey = GetCacheKey;
35
+ /**
36
+ * Returns cache identifier for a list of links for an entity.
37
+ * Example: {
38
+ * const api: BruceApi.Api = ...;
39
+ * const key = GetListCacheKey("abc");
40
+ * api.Cache.Remove(key);
41
+ * }
42
+ * @param entityId
43
+ * @returns
44
+ */
25
45
  function GetListCacheKey(entityId) {
26
46
  return api_1.Api.ECacheKey.Link + api_1.Api.ECacheKey.Entity + api_1.Api.ECacheKey.Id + entityId;
27
47
  }
28
48
  EntityLink.GetListCacheKey = GetListCacheKey;
49
+ /**
50
+ * Creates or updates a link record.
51
+ * @param params
52
+ * @returns
53
+ */
29
54
  function Update(params) {
30
55
  return __awaiter(this, void 0, void 0, function* () {
31
56
  let { api, link: data, req: reqParams } = params;
32
- if (!api) {
33
- api = environment_1.ENVIRONMENT.Api().GetBruceApi();
34
- }
35
57
  if (!(data === null || data === void 0 ? void 0 : data["Entity.ID"])) {
36
58
  throw ("Entity ID is required.");
37
59
  }
60
+ if (!api) {
61
+ api = environment_1.ENVIRONMENT.Api().GetBruceApi();
62
+ }
38
63
  const url = `entity/${data["Entity.ID"]}/link` + (data.ID == null ? "" : "/" + data.ID);
39
64
  const res = yield api.POST(url, data, api_1.Api.PrepReqParams(reqParams));
40
65
  api.Cache.Remove(GetCacheKey(data.ID));
@@ -45,30 +70,39 @@ var EntityLink;
45
70
  });
46
71
  }
47
72
  EntityLink.Update = Update;
73
+ /**
74
+ * Deletes a link record.
75
+ * @param params
76
+ */
48
77
  function Delete(params) {
49
78
  return __awaiter(this, void 0, void 0, function* () {
50
79
  let { api, entityId, linkId, req: reqParams } = params;
80
+ if (!linkId || !entityId) {
81
+ throw ("Link ID and Entity ID are required.");
82
+ }
51
83
  if (!api) {
52
84
  api = environment_1.ENVIRONMENT.Api().GetBruceApi();
53
85
  }
54
- if (!linkId) {
55
- throw ("Link ID is required.");
56
- }
57
86
  yield api.DELETE(`entity/${entityId}/link/${linkId}`, api_1.Api.PrepReqParams(reqParams));
58
87
  api.Cache.Remove(GetCacheKey(linkId));
59
88
  yield api.Cache.RemoveByStartsWith(api_1.Api.ECacheKey.Link + api_1.Api.ECacheKey.Entity);
60
89
  });
61
90
  }
62
91
  EntityLink.Delete = Delete;
92
+ /**
93
+ * Returns a list of links for an entity.
94
+ * @param params
95
+ * @returns
96
+ */
63
97
  function GetListByEntityId(params) {
64
98
  return __awaiter(this, void 0, void 0, function* () {
65
99
  let { api, entityId, req: reqParams } = params;
66
- if (!api) {
67
- api = environment_1.ENVIRONMENT.Api().GetBruceApi();
68
- }
69
100
  if (!entityId) {
70
101
  throw ("Entity ID is required.");
71
102
  }
103
+ if (!api) {
104
+ api = environment_1.ENVIRONMENT.Api().GetBruceApi();
105
+ }
72
106
  const cache = yield api.GetCacheItem(GetListCacheKey(entityId), reqParams);
73
107
  if (cache === null || cache === void 0 ? void 0 : cache.found) {
74
108
  return cache.data;