bruce-models 1.9.8 → 1.9.9

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 (84) hide show
  1. package/dist/bruce-models.es5.js +20 -14
  2. package/dist/bruce-models.es5.js.map +1 -1
  3. package/dist/bruce-models.umd.js +20 -14
  4. package/dist/bruce-models.umd.js.map +1 -1
  5. package/dist/lib/account/account-settings.js +2 -2
  6. package/dist/lib/account/account.js +185 -185
  7. package/dist/lib/ann-document/ann-document.js +86 -86
  8. package/dist/lib/api/abstract-api.js +246 -246
  9. package/dist/lib/api/api-getters.js +134 -134
  10. package/dist/lib/api/api.js +93 -93
  11. package/dist/lib/api/bruce-api.js +216 -216
  12. package/dist/lib/api/cam-api.js +85 -82
  13. package/dist/lib/api/cam-api.js.map +1 -1
  14. package/dist/lib/api/global-api.js +81 -81
  15. package/dist/lib/api/idm-api.js +85 -82
  16. package/dist/lib/api/idm-api.js.map +1 -1
  17. package/dist/lib/bruce-models.js +86 -86
  18. package/dist/lib/calculator/calculator.js +341 -341
  19. package/dist/lib/client-file/client-file.js +245 -245
  20. package/dist/lib/common/bounds.js +61 -61
  21. package/dist/lib/common/bruce-event.js +46 -46
  22. package/dist/lib/common/bruce-variable.js +60 -60
  23. package/dist/lib/common/cache.js +165 -165
  24. package/dist/lib/common/camera.js +11 -11
  25. package/dist/lib/common/cartes.js +123 -123
  26. package/dist/lib/common/carto.js +60 -60
  27. package/dist/lib/common/color.js +86 -86
  28. package/dist/lib/common/delay-queue.js +56 -56
  29. package/dist/lib/common/dictionary.js +2 -2
  30. package/dist/lib/common/geometry.js +120 -120
  31. package/dist/lib/common/transform.js +2 -2
  32. package/dist/lib/common/utc.js +39 -39
  33. package/dist/lib/custom-form/custom-form-content.js +26 -26
  34. package/dist/lib/custom-form/custom-form.js +106 -106
  35. package/dist/lib/data-lab/data-lab.js +49 -49
  36. package/dist/lib/entity/entity-attachment-type.js +83 -83
  37. package/dist/lib/entity/entity-attachment.js +122 -122
  38. package/dist/lib/entity/entity-attribute.js +29 -29
  39. package/dist/lib/entity/entity-comment.js +82 -82
  40. package/dist/lib/entity/entity-coords.js +149 -149
  41. package/dist/lib/entity/entity-link.js +82 -82
  42. package/dist/lib/entity/entity-lod-category.js +100 -100
  43. package/dist/lib/entity/entity-lod.js +185 -185
  44. package/dist/lib/entity/entity-relation-type.js +109 -109
  45. package/dist/lib/entity/entity-relation.js +132 -132
  46. package/dist/lib/entity/entity-source.js +136 -136
  47. package/dist/lib/entity/entity-tag.js +149 -149
  48. package/dist/lib/entity/entity-type-visual-settings.js +13 -13
  49. package/dist/lib/entity/entity-type.js +113 -113
  50. package/dist/lib/entity/entity.js +319 -319
  51. package/dist/lib/entity/getters/batched-data-getter.js +84 -84
  52. package/dist/lib/entity/getters/entity-filter-getter.js +303 -303
  53. package/dist/lib/entity/getters/entity-globe.js +211 -211
  54. package/dist/lib/entity/getters/view-monitor.js +2 -2
  55. package/dist/lib/import/import-cad.js +53 -53
  56. package/dist/lib/import/import-csv.js +23 -23
  57. package/dist/lib/import/import-json.js +23 -23
  58. package/dist/lib/import/import-kml.js +23 -23
  59. package/dist/lib/import/imported-file.js +91 -91
  60. package/dist/lib/internal/uploader.js +76 -76
  61. package/dist/lib/markup/markup.js +185 -185
  62. package/dist/lib/plugin/plugin.js +83 -83
  63. package/dist/lib/program-key/program-key.js +111 -111
  64. package/dist/lib/project/menu-item.js +121 -121
  65. package/dist/lib/project/project-view-bookmark.js +147 -147
  66. package/dist/lib/project/project-view-legacy-tile.js +77 -77
  67. package/dist/lib/project/project-view-tile.js +125 -125
  68. package/dist/lib/project/project-view.js +133 -133
  69. package/dist/lib/project/zoom-control.js +17 -17
  70. package/dist/lib/server/message-broker.js +142 -142
  71. package/dist/lib/server/pending-action.js +71 -71
  72. package/dist/lib/server/task.js +63 -63
  73. package/dist/lib/style/style.js +117 -117
  74. package/dist/lib/tileset/tileset.js +415 -415
  75. package/dist/lib/user/permission.js +20 -20
  76. package/dist/lib/user/session.js +137 -137
  77. package/dist/lib/user/user-group.js +94 -94
  78. package/dist/lib/user/user.js +446 -446
  79. package/dist/lib/util/encrypt-utils.js +19 -19
  80. package/dist/lib/util/math-utils.js +40 -40
  81. package/dist/lib/util/object-utils.js +17 -17
  82. package/dist/lib/util/path-utils.js +61 -61
  83. package/dist/lib/util/url-utils.js +94 -94
  84. package/package.json +3 -2
@@ -1,148 +1,148 @@
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.ProjectViewBookmark = void 0;
13
- const api_1 = require("../api/api");
14
- /**
15
- * Describe the "Project View Bookmark" concept within Bruce.
16
- * This is referred to as "slides" in older code.
17
- *
18
- * A bookmark is a snapshot of what should be displayed and how in a particular project view.
19
- */
20
- var ProjectViewBookmark;
21
- (function (ProjectViewBookmark) {
22
- function GetCacheKey(viewId, bookmarkId) {
23
- return `${api_1.Api.ECacheKey.ProjectViewBookmark}${api_1.Api.ECacheKey.Id}${viewId}${api_1.Api.ECacheKey.Id}${bookmarkId}`;
24
- }
25
- ProjectViewBookmark.GetCacheKey = GetCacheKey;
26
- function GetListCacheKey(viewId) {
27
- return `${api_1.Api.ECacheKey.ProjectViewBookmark}${api_1.Api.ECacheKey.Id}${viewId}`;
28
- }
29
- ProjectViewBookmark.GetListCacheKey = GetListCacheKey;
30
- // This is the expected default version for the DataVersion value.
31
- // This value should NOT be changed without looking at our API and seeing what the default value is.
32
- ProjectViewBookmark.DEFAULT_DATA_VERSION = 1;
33
- let LegacyNavigator;
34
- (function (LegacyNavigator) {
35
- LegacyNavigator.DATA_VERSION = 1;
36
- })(LegacyNavigator = ProjectViewBookmark.LegacyNavigator || (ProjectViewBookmark.LegacyNavigator = {}));
37
- let Navigator;
38
- (function (Navigator) {
39
- Navigator.DATA_VERSION = 2;
40
- })(Navigator = ProjectViewBookmark.Navigator || (ProjectViewBookmark.Navigator = {}));
41
- function Get(params) {
42
- return __awaiter(this, void 0, void 0, function* () {
43
- const { api, viewId, bookmarkId, req: reqParams } = params;
44
- if (!viewId || !bookmarkId) {
45
- throw ("View ID and Bookmark ID are required.");
46
- }
47
- const key = GetCacheKey(viewId, bookmarkId);
48
- const cacheData = api.GetCacheItem(key, reqParams);
49
- if (cacheData) {
50
- return cacheData;
51
- }
52
- const prom = new Promise((res, rej) => __awaiter(this, void 0, void 0, function* () {
53
- try {
54
- const data = yield api.GET(`ui.view/${viewId}/slide/${bookmarkId}`, api_1.Api.PrepReqParams(reqParams));
55
- res({
56
- bookmark: data
57
- });
58
- }
59
- catch (e) {
60
- rej(e);
61
- }
62
- }));
63
- api.Cache.Set(key, prom, api_1.Api.DEFAULT_CACHE_DURATION);
64
- return prom;
65
- });
66
- }
67
- ProjectViewBookmark.Get = Get;
68
- function Delete(params) {
69
- return __awaiter(this, void 0, void 0, function* () {
70
- const { api, viewId, bookmarkId, req: reqParams } = params;
71
- if (!viewId || !bookmarkId) {
72
- throw ("View ID and Bookmark ID are required.");
73
- }
74
- yield api.DELETE(`ui.view/${viewId}/slide/${bookmarkId}`, api_1.Api.PrepReqParams(reqParams));
75
- api.Cache.Remove(GetCacheKey(viewId, bookmarkId));
76
- api.Cache.Remove(GetListCacheKey(viewId));
77
- });
78
- }
79
- ProjectViewBookmark.Delete = Delete;
80
- function GetList(params) {
81
- return __awaiter(this, void 0, void 0, function* () {
82
- const { api, viewId, req: reqParams } = params;
83
- if (!viewId) {
84
- throw ("View ID is required.");
85
- }
86
- const cacheData = api.GetCacheItem(GetListCacheKey(viewId), reqParams);
87
- if (cacheData) {
88
- return cacheData;
89
- }
90
- const req = new Promise((res, rej) => __awaiter(this, void 0, void 0, function* () {
91
- try {
92
- const data = yield api.GET(`ui.view/${viewId}/slides`, api_1.Api.PrepReqParams(reqParams));
93
- ;
94
- const items = data.Items ? data.Items : [];
95
- // Cache individual items.
96
- // Maybe better to load list cache when getting 1 slide and seeing if it's in there.
97
- // WARNING: Right now the data matches, in the future the list may contain a shortened result.
98
- for (let i = 0; i < items.length; i++) {
99
- const item = items[i];
100
- const prom = new Promise((res) => {
101
- res({
102
- bookmark: item
103
- });
104
- });
105
- api.Cache.Set(GetCacheKey(viewId, item.ID), prom, api_1.Api.DEFAULT_CACHE_DURATION);
106
- }
107
- res({
108
- bookmarks: items
109
- });
110
- }
111
- catch (e) {
112
- rej(e);
113
- }
114
- }));
115
- api.Cache.Set(GetListCacheKey(viewId), req, api_1.Api.DEFAULT_CACHE_DURATION);
116
- return req;
117
- });
118
- }
119
- ProjectViewBookmark.GetList = GetList;
120
- function Update(params) {
121
- return __awaiter(this, void 0, void 0, function* () {
122
- const { api, viewId, bookmark: data, req: reqParams } = params;
123
- if (!(data === null || data === void 0 ? void 0 : data.Title)) {
124
- data.Title = data.ID;
125
- }
126
- const res = yield api.POST(`ui.view/${viewId}/slide/${data.ID ? data.ID : ""}`, data, api_1.Api.PrepReqParams(reqParams));
127
- api.Cache.Remove(GetCacheKey(viewId, data.ID));
128
- api.Cache.Remove(GetListCacheKey(viewId));
129
- return {
130
- bookmark: res
131
- };
132
- });
133
- }
134
- ProjectViewBookmark.Update = Update;
135
- function SetOrder(params) {
136
- return __awaiter(this, void 0, void 0, function* () {
137
- const { api, viewId, bookmarkIds, req: reqParams } = params;
138
- const reqData = {
139
- "UISlide.ID": bookmarkIds,
140
- "DisplayOrder.Start": 0
141
- };
142
- yield api.POST(`ui.view/${viewId}/slides/setOrder`, reqData, api_1.Api.PrepReqParams(reqParams));
143
- api.Cache.RemoveByStartsWith(GetListCacheKey(viewId));
144
- });
145
- }
146
- ProjectViewBookmark.SetOrder = SetOrder;
147
- })(ProjectViewBookmark = exports.ProjectViewBookmark || (exports.ProjectViewBookmark = {}));
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.ProjectViewBookmark = void 0;
13
+ const api_1 = require("../api/api");
14
+ /**
15
+ * Describe the "Project View Bookmark" concept within Bruce.
16
+ * This is referred to as "slides" in older code.
17
+ *
18
+ * A bookmark is a snapshot of what should be displayed and how in a particular project view.
19
+ */
20
+ var ProjectViewBookmark;
21
+ (function (ProjectViewBookmark) {
22
+ function GetCacheKey(viewId, bookmarkId) {
23
+ return `${api_1.Api.ECacheKey.ProjectViewBookmark}${api_1.Api.ECacheKey.Id}${viewId}${api_1.Api.ECacheKey.Id}${bookmarkId}`;
24
+ }
25
+ ProjectViewBookmark.GetCacheKey = GetCacheKey;
26
+ function GetListCacheKey(viewId) {
27
+ return `${api_1.Api.ECacheKey.ProjectViewBookmark}${api_1.Api.ECacheKey.Id}${viewId}`;
28
+ }
29
+ ProjectViewBookmark.GetListCacheKey = GetListCacheKey;
30
+ // This is the expected default version for the DataVersion value.
31
+ // This value should NOT be changed without looking at our API and seeing what the default value is.
32
+ ProjectViewBookmark.DEFAULT_DATA_VERSION = 1;
33
+ let LegacyNavigator;
34
+ (function (LegacyNavigator) {
35
+ LegacyNavigator.DATA_VERSION = 1;
36
+ })(LegacyNavigator = ProjectViewBookmark.LegacyNavigator || (ProjectViewBookmark.LegacyNavigator = {}));
37
+ let Navigator;
38
+ (function (Navigator) {
39
+ Navigator.DATA_VERSION = 2;
40
+ })(Navigator = ProjectViewBookmark.Navigator || (ProjectViewBookmark.Navigator = {}));
41
+ function Get(params) {
42
+ return __awaiter(this, void 0, void 0, function* () {
43
+ const { api, viewId, bookmarkId, req: reqParams } = params;
44
+ if (!viewId || !bookmarkId) {
45
+ throw ("View ID and Bookmark ID are required.");
46
+ }
47
+ const key = GetCacheKey(viewId, bookmarkId);
48
+ const cacheData = api.GetCacheItem(key, reqParams);
49
+ if (cacheData) {
50
+ return cacheData;
51
+ }
52
+ const prom = new Promise((res, rej) => __awaiter(this, void 0, void 0, function* () {
53
+ try {
54
+ const data = yield api.GET(`ui.view/${viewId}/slide/${bookmarkId}`, api_1.Api.PrepReqParams(reqParams));
55
+ res({
56
+ bookmark: data
57
+ });
58
+ }
59
+ catch (e) {
60
+ rej(e);
61
+ }
62
+ }));
63
+ api.Cache.Set(key, prom, api_1.Api.DEFAULT_CACHE_DURATION);
64
+ return prom;
65
+ });
66
+ }
67
+ ProjectViewBookmark.Get = Get;
68
+ function Delete(params) {
69
+ return __awaiter(this, void 0, void 0, function* () {
70
+ const { api, viewId, bookmarkId, req: reqParams } = params;
71
+ if (!viewId || !bookmarkId) {
72
+ throw ("View ID and Bookmark ID are required.");
73
+ }
74
+ yield api.DELETE(`ui.view/${viewId}/slide/${bookmarkId}`, api_1.Api.PrepReqParams(reqParams));
75
+ api.Cache.Remove(GetCacheKey(viewId, bookmarkId));
76
+ api.Cache.Remove(GetListCacheKey(viewId));
77
+ });
78
+ }
79
+ ProjectViewBookmark.Delete = Delete;
80
+ function GetList(params) {
81
+ return __awaiter(this, void 0, void 0, function* () {
82
+ const { api, viewId, req: reqParams } = params;
83
+ if (!viewId) {
84
+ throw ("View ID is required.");
85
+ }
86
+ const cacheData = api.GetCacheItem(GetListCacheKey(viewId), reqParams);
87
+ if (cacheData) {
88
+ return cacheData;
89
+ }
90
+ const req = new Promise((res, rej) => __awaiter(this, void 0, void 0, function* () {
91
+ try {
92
+ const data = yield api.GET(`ui.view/${viewId}/slides`, api_1.Api.PrepReqParams(reqParams));
93
+ ;
94
+ const items = data.Items ? data.Items : [];
95
+ // Cache individual items.
96
+ // Maybe better to load list cache when getting 1 slide and seeing if it's in there.
97
+ // WARNING: Right now the data matches, in the future the list may contain a shortened result.
98
+ for (let i = 0; i < items.length; i++) {
99
+ const item = items[i];
100
+ const prom = new Promise((res) => {
101
+ res({
102
+ bookmark: item
103
+ });
104
+ });
105
+ api.Cache.Set(GetCacheKey(viewId, item.ID), prom, api_1.Api.DEFAULT_CACHE_DURATION);
106
+ }
107
+ res({
108
+ bookmarks: items
109
+ });
110
+ }
111
+ catch (e) {
112
+ rej(e);
113
+ }
114
+ }));
115
+ api.Cache.Set(GetListCacheKey(viewId), req, api_1.Api.DEFAULT_CACHE_DURATION);
116
+ return req;
117
+ });
118
+ }
119
+ ProjectViewBookmark.GetList = GetList;
120
+ function Update(params) {
121
+ return __awaiter(this, void 0, void 0, function* () {
122
+ const { api, viewId, bookmark: data, req: reqParams } = params;
123
+ if (!(data === null || data === void 0 ? void 0 : data.Title)) {
124
+ data.Title = data.ID;
125
+ }
126
+ const res = yield api.POST(`ui.view/${viewId}/slide/${data.ID ? data.ID : ""}`, data, api_1.Api.PrepReqParams(reqParams));
127
+ api.Cache.Remove(GetCacheKey(viewId, data.ID));
128
+ api.Cache.Remove(GetListCacheKey(viewId));
129
+ return {
130
+ bookmark: res
131
+ };
132
+ });
133
+ }
134
+ ProjectViewBookmark.Update = Update;
135
+ function SetOrder(params) {
136
+ return __awaiter(this, void 0, void 0, function* () {
137
+ const { api, viewId, bookmarkIds, req: reqParams } = params;
138
+ const reqData = {
139
+ "UISlide.ID": bookmarkIds,
140
+ "DisplayOrder.Start": 0
141
+ };
142
+ yield api.POST(`ui.view/${viewId}/slides/setOrder`, reqData, api_1.Api.PrepReqParams(reqParams));
143
+ api.Cache.RemoveByStartsWith(GetListCacheKey(viewId));
144
+ });
145
+ }
146
+ ProjectViewBookmark.SetOrder = SetOrder;
147
+ })(ProjectViewBookmark = exports.ProjectViewBookmark || (exports.ProjectViewBookmark = {}));
148
148
  //# sourceMappingURL=project-view-bookmark.js.map
@@ -1,78 +1,78 @@
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.ProjectViewLegacyTile = void 0;
13
- const api_1 = require("../api/api");
14
- const project_view_1 = require("./project-view");
15
- function getTemplateSettings(apiGetter, reqParams) {
16
- var _a;
17
- return __awaiter(this, void 0, void 0, function* () {
18
- const { view } = yield project_view_1.ProjectView.Get({
19
- api: apiGetter.getApi(api_1.Api.TEMPLATE_ACCOUNT_ID),
20
- viewId: "default",
21
- req: reqParams
22
- });
23
- return (_a = view.Settings) !== null && _a !== void 0 ? _a : {};
24
- });
25
- }
26
- function checkSourceToTemplate(items, templateItem, addIfMissing) {
27
- const index = items.findIndex(x => x.Name === templateItem.Name);
28
- if (index > -1) {
29
- templateItem.IsDefault = true;
30
- templateItem.IsEnabled = items[index].IsEnabled;
31
- items[index] = templateItem;
32
- }
33
- else if (addIfMissing) {
34
- templateItem.IsDefault = true;
35
- items.push(templateItem);
36
- }
37
- }
38
- /**
39
- * Describes a terrain or map source that are found in project view records.
40
- * This is a concept we want to trash as we're moving towards storing tileset ids instead.
41
- * This will help at least understand and manage this dying concept.
42
- */
43
- var ProjectViewLegacyTile;
44
- (function (ProjectViewLegacyTile) {
45
- function MergeMapTemplateData(params) {
46
- var _a;
47
- return __awaiter(this, void 0, void 0, function* () {
48
- const { getter, sources: items, addIfMissing, req: reqParams } = params;
49
- const settings = yield getTemplateSettings(getter, reqParams);
50
- const maps = (_a = settings.CesiumMapSources) !== null && _a !== void 0 ? _a : [];
51
- for (let i = 0; i < maps.length; i++) {
52
- const mapSource = maps[i];
53
- checkSourceToTemplate(items, mapSource, addIfMissing);
54
- }
55
- return {
56
- sources: items
57
- };
58
- });
59
- }
60
- ProjectViewLegacyTile.MergeMapTemplateData = MergeMapTemplateData;
61
- function MergeTerrainTemplateData(params) {
62
- var _a;
63
- return __awaiter(this, void 0, void 0, function* () {
64
- const { getter, sources: items, addIfMissing, req: reqParams } = params;
65
- const settings = yield getTemplateSettings(getter, reqParams);
66
- const terrains = (_a = settings.CesiumTerrainSources) !== null && _a !== void 0 ? _a : [];
67
- for (let i = 0; i < terrains.length; i++) {
68
- const terrainSource = terrains[i];
69
- checkSourceToTemplate(items, terrainSource, addIfMissing);
70
- }
71
- return {
72
- sources: items
73
- };
74
- });
75
- }
76
- ProjectViewLegacyTile.MergeTerrainTemplateData = MergeTerrainTemplateData;
77
- })(ProjectViewLegacyTile = exports.ProjectViewLegacyTile || (exports.ProjectViewLegacyTile = {}));
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.ProjectViewLegacyTile = void 0;
13
+ const api_1 = require("../api/api");
14
+ const project_view_1 = require("./project-view");
15
+ function getTemplateSettings(apiGetter, reqParams) {
16
+ var _a;
17
+ return __awaiter(this, void 0, void 0, function* () {
18
+ const { view } = yield project_view_1.ProjectView.Get({
19
+ api: apiGetter.getApi(api_1.Api.TEMPLATE_ACCOUNT_ID),
20
+ viewId: "default",
21
+ req: reqParams
22
+ });
23
+ return (_a = view.Settings) !== null && _a !== void 0 ? _a : {};
24
+ });
25
+ }
26
+ function checkSourceToTemplate(items, templateItem, addIfMissing) {
27
+ const index = items.findIndex(x => x.Name === templateItem.Name);
28
+ if (index > -1) {
29
+ templateItem.IsDefault = true;
30
+ templateItem.IsEnabled = items[index].IsEnabled;
31
+ items[index] = templateItem;
32
+ }
33
+ else if (addIfMissing) {
34
+ templateItem.IsDefault = true;
35
+ items.push(templateItem);
36
+ }
37
+ }
38
+ /**
39
+ * Describes a terrain or map source that are found in project view records.
40
+ * This is a concept we want to trash as we're moving towards storing tileset ids instead.
41
+ * This will help at least understand and manage this dying concept.
42
+ */
43
+ var ProjectViewLegacyTile;
44
+ (function (ProjectViewLegacyTile) {
45
+ function MergeMapTemplateData(params) {
46
+ var _a;
47
+ return __awaiter(this, void 0, void 0, function* () {
48
+ const { getter, sources: items, addIfMissing, req: reqParams } = params;
49
+ const settings = yield getTemplateSettings(getter, reqParams);
50
+ const maps = (_a = settings.CesiumMapSources) !== null && _a !== void 0 ? _a : [];
51
+ for (let i = 0; i < maps.length; i++) {
52
+ const mapSource = maps[i];
53
+ checkSourceToTemplate(items, mapSource, addIfMissing);
54
+ }
55
+ return {
56
+ sources: items
57
+ };
58
+ });
59
+ }
60
+ ProjectViewLegacyTile.MergeMapTemplateData = MergeMapTemplateData;
61
+ function MergeTerrainTemplateData(params) {
62
+ var _a;
63
+ return __awaiter(this, void 0, void 0, function* () {
64
+ const { getter, sources: items, addIfMissing, req: reqParams } = params;
65
+ const settings = yield getTemplateSettings(getter, reqParams);
66
+ const terrains = (_a = settings.CesiumTerrainSources) !== null && _a !== void 0 ? _a : [];
67
+ for (let i = 0; i < terrains.length; i++) {
68
+ const terrainSource = terrains[i];
69
+ checkSourceToTemplate(items, terrainSource, addIfMissing);
70
+ }
71
+ return {
72
+ sources: items
73
+ };
74
+ });
75
+ }
76
+ ProjectViewLegacyTile.MergeTerrainTemplateData = MergeTerrainTemplateData;
77
+ })(ProjectViewLegacyTile = exports.ProjectViewLegacyTile || (exports.ProjectViewLegacyTile = {}));
78
78
  //# sourceMappingURL=project-view-legacy-tile.js.map