@esri/solution-deployer 1.1.2 → 1.1.3

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 (38) hide show
  1. package/dist/esm/deploySolutionFromTemplate.js +70 -66
  2. package/dist/esm/deploySolutionFromTemplate.js.map +1 -1
  3. package/dist/esm/deploySolutionItems.js +159 -166
  4. package/dist/esm/deploySolutionItems.js.map +1 -1
  5. package/dist/esm/deployer.js +13 -14
  6. package/dist/esm/deployer.js.map +1 -1
  7. package/dist/esm/deployerUtils.js +17 -22
  8. package/dist/esm/deployerUtils.js.map +1 -1
  9. package/dist/esm/helpers/post-process.js +12 -14
  10. package/dist/esm/helpers/post-process.js.map +1 -1
  11. package/dist/esm/helpers/share-templates-to-groups.js +29 -6
  12. package/dist/esm/helpers/share-templates-to-groups.js.map +1 -1
  13. package/dist/esm/helpers/sortTemplates.js +2 -4
  14. package/dist/esm/helpers/sortTemplates.js.map +1 -1
  15. package/dist/esm/module-map.js +2 -2
  16. package/dist/esm/module-map.js.map +1 -1
  17. package/dist/node/deploySolutionFromTemplate.js +76 -72
  18. package/dist/node/deploySolutionFromTemplate.js.map +1 -1
  19. package/dist/node/deploySolutionItems.js +161 -168
  20. package/dist/node/deploySolutionItems.js.map +1 -1
  21. package/dist/node/deployer.js +16 -17
  22. package/dist/node/deployer.js.map +1 -1
  23. package/dist/node/deployerUtils.js +18 -23
  24. package/dist/node/deployerUtils.js.map +1 -1
  25. package/dist/node/helpers/post-process.js +16 -18
  26. package/dist/node/helpers/post-process.js.map +1 -1
  27. package/dist/node/helpers/share-templates-to-groups.js +30 -7
  28. package/dist/node/helpers/share-templates-to-groups.js.map +1 -1
  29. package/dist/node/helpers/sortTemplates.js +2 -4
  30. package/dist/node/helpers/sortTemplates.js.map +1 -1
  31. package/dist/node/index.js +1 -1
  32. package/dist/node/module-map.js +9 -9
  33. package/dist/node/module-map.js.map +1 -1
  34. package/dist/umd/deployer.umd.js +1621 -1651
  35. package/dist/umd/deployer.umd.js.map +1 -1
  36. package/dist/umd/deployer.umd.min.js +3 -3
  37. package/dist/umd/deployer.umd.min.js.map +1 -1
  38. package/package.json +30 -30
@@ -13,39 +13,38 @@
13
13
  * See the License for the specific language governing permissions and
14
14
  * limitations under the License.
15
15
  */
16
- import { __assign, __read } from "tslib";
17
16
  import * as common from "@esri/solution-common";
18
17
  import * as deployItems from "./deploySolutionItems";
19
18
  import { getWithDefault } from "@esri/hub-common";
20
19
  import * as portal from "@esri/arcgis-rest-portal";
21
20
  import { postProcess } from "./helpers/post-process";
22
21
  import { sortTemplates } from "./helpers/sortTemplates";
22
+ import { setCreateProp } from "@esri/solution-common";
23
23
  // NOTE: Moved to separate file to allow stubbing in main deploySolution tests
24
24
  export function deploySolutionFromTemplate(templateSolutionId, solutionTemplateBase, solutionTemplateData, authentication, options) {
25
25
  options.storageVersion = common.extractSolutionVersion(solutionTemplateData);
26
- return new Promise(function (resolve, reject) {
27
- var _a;
26
+ return new Promise((resolve, reject) => {
28
27
  // It is possible to provide a separate authentication for the source
29
- var storageAuthentication = options.storageAuthentication
28
+ const storageAuthentication = options.storageAuthentication
30
29
  ? options.storageAuthentication
31
30
  : authentication;
32
31
  // Replacement dictionary and high-level deployment ids for cleanup
33
32
  // TODO: Extract all templateDictionary prep into a separate function
34
- var templateDictionary = (_a = options.templateDictionary) !== null && _a !== void 0 ? _a : {};
35
- var deployedFolderId;
36
- var deployedSolutionId;
33
+ const templateDictionary = options.templateDictionary ?? {};
34
+ let deployedFolderId;
35
+ let deployedSolutionId;
37
36
  _applySourceToDeployOptions(options, solutionTemplateBase, templateDictionary, authentication);
38
37
  if (options.additionalTypeKeywords) {
39
38
  solutionTemplateBase.typeKeywords = [].concat(solutionTemplateBase.typeKeywords, options.additionalTypeKeywords);
40
39
  }
41
40
  // Get the thumbnail file
42
- var thumbFilename = "thumbnail";
43
- var thumbDef = Promise.resolve(null);
41
+ let thumbFilename = "thumbnail";
42
+ let thumbDef = Promise.resolve(null);
44
43
  if (!options.thumbnail && options.thumbnailurl) {
45
44
  // Figure out the thumbnail's filename
46
45
  thumbFilename =
47
46
  common.getFilenameFromUrl(options.thumbnailurl) || thumbFilename;
48
- var thumbnailurl = common.appendQueryParam(options.thumbnailurl, "w=400");
47
+ const thumbnailurl = common.appendQueryParam(options.thumbnailurl, "w=400");
49
48
  delete options.thumbnailurl;
50
49
  // Fetch the thumbnail
51
50
  thumbDef = common.getBlobAsFile(thumbnailurl, thumbFilename, storageAuthentication, [400]);
@@ -58,14 +57,14 @@ export function deploySolutionFromTemplate(templateSolutionId, solutionTemplateB
58
57
  common.getFoldersAndGroups(authentication),
59
58
  thumbDef
60
59
  ])
61
- .then(function (responses) {
62
- var _a = __read(responses, 4), portalResponse = _a[0], userResponse = _a[1], foldersAndGroupsResponse = _a[2], thumbnailFile = _a[3];
60
+ .then(responses => {
61
+ const [portalResponse, userResponse, foldersAndGroupsResponse, thumbnailFile] = responses;
63
62
  if (!options.thumbnail && thumbnailFile) {
64
63
  options.thumbnail = thumbnailFile;
65
64
  }
66
65
  // update template items with source-itemId type keyword
67
- solutionTemplateData.templates = solutionTemplateData.templates.map(function (template) {
68
- var sourceId = "source-" + template.itemId;
66
+ solutionTemplateData.templates = solutionTemplateData.templates.map((template) => {
67
+ const sourceId = "source-" + template.itemId;
69
68
  /* istanbul ignore else */
70
69
  if (template.item) {
71
70
  /* istanbul ignore else */
@@ -89,23 +88,24 @@ export function deploySolutionFromTemplate(templateSolutionId, solutionTemplateB
89
88
  templateDictionary.portalBaseUrl = _getPortalBaseUrl(portalResponse, authentication);
90
89
  templateDictionary.user = userResponse;
91
90
  templateDictionary.user.folders = foldersAndGroupsResponse.folders;
92
- templateDictionary.user.groups = foldersAndGroupsResponse.groups.filter(function (group) {
93
- return group.owner === templateDictionary.user.username;
94
- });
91
+ templateDictionary.user.groups = foldersAndGroupsResponse.groups.filter((group) => group.owner === templateDictionary.user.username);
92
+ // if we have tracking views and the user is not admin or the org doesn't support tracking an error is thrown
93
+ common.setLocationTrackingEnabled(portalResponse, userResponse, templateDictionary, solutionTemplateData.templates);
94
+ const trackingOwnerPromise = common.getTackingServiceOwner(templateDictionary, authentication);
95
95
  // Create a folder to hold the deployed solution. We use the solution name, appending a sequential
96
96
  // suffix if the folder exists, e.g.,
97
97
  // * Manage Right of Way Activities
98
98
  // * Manage Right of Way Activities 1
99
99
  // * Manage Right of Way Activities 2
100
- var folderPromise = common.createUniqueFolder(solutionTemplateBase.title, templateDictionary, authentication);
100
+ const folderPromise = common.createUniqueFolder(solutionTemplateBase.title, templateDictionary, authentication);
101
101
  // Apply the portal extents to the solution
102
- var portalExtent = portalResponse.defaultExtent;
103
- var extentsPromise = common.convertExtentWithFallback(portalExtent, undefined, { wkid: 4326 }, portalResponse.helperServices.geometry.url, authentication);
102
+ const portalExtent = portalResponse.defaultExtent;
103
+ const extentsPromise = common.convertExtentWithFallback(portalExtent, undefined, { wkid: 4326 }, portalResponse.helperServices.geometry.url, authentication);
104
104
  // Await completion of async actions: folder creation & extents conversion
105
- return Promise.all([folderPromise, extentsPromise]);
105
+ return Promise.all([folderPromise, extentsPromise, trackingOwnerPromise]);
106
106
  })
107
- .then(function (responses) {
108
- var _a = __read(responses, 2), folderResponse = _a[0], wgs84Extent = _a[1];
107
+ .then(responses => {
108
+ const [folderResponse, wgs84Extent, trackingOwnerResponse] = responses;
109
109
  deployedFolderId = folderResponse.folder.id;
110
110
  templateDictionary.folderId = deployedFolderId;
111
111
  templateDictionary.solutionItemExtent =
@@ -121,8 +121,18 @@ export function deploySolutionFromTemplate(templateSolutionId, solutionTemplateB
121
121
  [wgs84Extent.xmin, wgs84Extent.ymin],
122
122
  [wgs84Extent.xmax, wgs84Extent.ymax]
123
123
  ];
124
+ // update templateDictionary to indicate if the user owns the tracking service
125
+ // this will affect how we handle group sharing
126
+ /* istanbul ignore else */
127
+ if (templateDictionary.locationTrackingEnabled) {
128
+ setCreateProp(templateDictionary, "locationTracking.userIsOwner", trackingOwnerResponse);
129
+ }
124
130
  // Create a deployed Solution item
125
- var createSolutionItemBase = __assign(__assign({}, common.sanitizeJSONAndReportChanges(solutionTemplateBase)), { type: "Solution", typeKeywords: ["Solution"] });
131
+ const createSolutionItemBase = {
132
+ ...common.sanitizeJSONAndReportChanges(solutionTemplateBase),
133
+ type: "Solution",
134
+ typeKeywords: ["Solution"]
135
+ };
126
136
  if (options.additionalTypeKeywords) {
127
137
  createSolutionItemBase.typeKeywords = ["Solution"].concat(options.additionalTypeKeywords);
128
138
  }
@@ -130,16 +140,16 @@ export function deploySolutionFromTemplate(templateSolutionId, solutionTemplateB
130
140
  createSolutionItemBase.thumbnail = options.thumbnail;
131
141
  return common.createItemWithData(createSolutionItemBase, {}, authentication, deployedFolderId);
132
142
  })
133
- .then(function (createSolutionResponse) {
143
+ .then(createSolutionResponse => {
134
144
  deployedSolutionId = createSolutionResponse.id;
135
145
  // Protect the solution item
136
- var protectOptions = {
146
+ const protectOptions = {
137
147
  id: deployedSolutionId,
138
- authentication: authentication
148
+ authentication
139
149
  };
140
150
  return portal.protectItem(protectOptions);
141
151
  })
142
- .then(function () {
152
+ .then(() => {
143
153
  // TODO: Attach the whole solution model so we can
144
154
  // have stuff like `{{solution.item.title}}
145
155
  templateDictionary.solutionItemId = deployedSolutionId;
@@ -149,32 +159,28 @@ export function deploySolutionFromTemplate(templateSolutionId, solutionTemplateB
149
159
  // Handle the contained item templates
150
160
  return deployItems.deploySolutionItems(storageAuthentication.portal, templateSolutionId, solutionTemplateData.templates, storageAuthentication, templateDictionary, deployedSolutionId, authentication, options);
151
161
  })
152
- .then(function (clonedSolutionsResponse) {
153
- solutionTemplateData.templates = solutionTemplateData.templates.map(function (itemTemplate) {
162
+ .then((clonedSolutionsResponse) => {
163
+ solutionTemplateData.templates = solutionTemplateData.templates.map((itemTemplate) => {
154
164
  // Update ids present in template dictionary
155
- itemTemplate.itemId = common.getProp(templateDictionary, itemTemplate.itemId + ".itemId");
165
+ itemTemplate.itemId = common.getProp(templateDictionary, `${itemTemplate.itemId}.itemId`);
156
166
  // Update the dependencies hash to point to the new item ids
157
- itemTemplate.dependencies = itemTemplate.dependencies.map(function (id) {
158
- return getWithDefault(templateDictionary, id + ".itemId", id);
159
- });
167
+ itemTemplate.dependencies = itemTemplate.dependencies.map((id) => getWithDefault(templateDictionary, `${id}.itemId`, id));
160
168
  return itemTemplate;
161
169
  });
162
170
  // Sort the templates into build order, which is provided by clonedSolutionsResponse
163
- sortTemplates(solutionTemplateData.templates, clonedSolutionsResponse.map(function (response) { return response.id; }));
171
+ sortTemplates(solutionTemplateData.templates, clonedSolutionsResponse.map(response => response.id));
164
172
  // Wrap up with post-processing, in which we deal with groups and cycle remnants
165
173
  return postProcess(deployedSolutionId, solutionTemplateData.templates, clonedSolutionsResponse, authentication, templateDictionary);
166
174
  })
167
- .then(function () {
175
+ .then(() => {
168
176
  // Update solution item using internal representation & and the updated data JSON
169
177
  solutionTemplateBase.typeKeywords = [].concat(solutionTemplateBase.typeKeywords, ["Deployed"]);
170
- var iTemplateKeyword = solutionTemplateBase.typeKeywords.indexOf("Template");
178
+ const iTemplateKeyword = solutionTemplateBase.typeKeywords.indexOf("Template");
171
179
  /* istanbul ignore else */
172
180
  if (iTemplateKeyword >= 0) {
173
181
  solutionTemplateBase.typeKeywords.splice(iTemplateKeyword, 1);
174
182
  }
175
- solutionTemplateData.templates = solutionTemplateData.templates.map(function (itemTemplate) {
176
- return _purgeTemplateProperties(itemTemplate);
177
- });
183
+ solutionTemplateData.templates = solutionTemplateData.templates.map((itemTemplate) => _purgeTemplateProperties(itemTemplate));
178
184
  solutionTemplateData.templates = _updateGroupReferences(solutionTemplateData.templates, templateDictionary);
179
185
  // Update solution items data using template dictionary, and then update the
180
186
  // itemId & dependencies in each item template
@@ -186,7 +192,7 @@ export function deploySolutionFromTemplate(templateSolutionId, solutionTemplateB
186
192
  }
187
193
  return common.updateItem(solutionTemplateBase, authentication, deployedFolderId);
188
194
  })
189
- .then(function () { return resolve(solutionTemplateBase.id); }, reject);
195
+ .then(() => resolve(solutionTemplateBase.id), reject);
190
196
  });
191
197
  }
192
198
  /**
@@ -201,9 +207,8 @@ export function deploySolutionFromTemplate(templateSolutionId, solutionTemplateB
201
207
  export function _applySourceToDeployOptions(deployOptions, solutionTemplateBase, templateDictionary, authentication) {
202
208
  // Deploy a solution from the template's contents,
203
209
  // using the template's information as defaults for the deployed solution item
204
- ["title", "snippet", "description", "tags"].forEach(function (prop) {
205
- var _a;
206
- deployOptions[prop] = (_a = deployOptions[prop]) !== null && _a !== void 0 ? _a : solutionTemplateBase[prop];
210
+ ["title", "snippet", "description", "tags"].forEach(prop => {
211
+ deployOptions[prop] = deployOptions[prop] ?? solutionTemplateBase[prop];
207
212
  if (deployOptions[prop]) {
208
213
  solutionTemplateBase[prop] = deployOptions[prop];
209
214
  // carry these options forward on the templateDict
@@ -223,22 +228,22 @@ export function _replaceParamVariables(solutionTemplateData, templateDictionary)
223
228
  // for variable replacement
224
229
  // for spatial reference specifically we need to replace up front so the default extent
225
230
  // logic can execute as expected
226
- solutionTemplateData.templates = solutionTemplateData.templates.map(function (template) {
231
+ solutionTemplateData.templates = solutionTemplateData.templates.map((template) => {
227
232
  // can't do this as it causes other values that don't exist in the dict yet to revert to defaults they may have defined
228
233
  // return common.replaceInTemplate(template, templateDictionary);
229
234
  /* istanbul ignore else */
230
235
  if (template.type === "Feature Service") {
231
- var paramsLookup = "params.";
232
- var wkidItemPath = "item.spatialReference.wkid";
236
+ const paramsLookup = "params.";
237
+ const wkidItemPath = "item.spatialReference.wkid";
233
238
  template = _updateProp(template, wkidItemPath, paramsLookup, templateDictionary);
234
- var wkidServicePath = "properties.service.spatialReference.wkid";
239
+ const wkidServicePath = "properties.service.spatialReference.wkid";
235
240
  template = _updateProp(template, wkidServicePath, paramsLookup, templateDictionary);
236
241
  }
237
242
  return template;
238
243
  });
239
244
  }
240
245
  export function _updateProp(template, path, lookup, templateDictionary) {
241
- var wkid = common.getProp(template, path);
246
+ const wkid = common.getProp(template, path);
242
247
  /* istanbul ignore else */
243
248
  if (wkid && typeof wkid === "string" && wkid.indexOf(lookup) > -1) {
244
249
  common.setProp(template, path, common.replaceInTemplate(wkid, templateDictionary));
@@ -246,9 +251,9 @@ export function _updateProp(template, path, lookup, templateDictionary) {
246
251
  return template;
247
252
  }
248
253
  export function _checkedReplaceAll(template, oldValue, newValue) {
249
- var newTemplate;
254
+ let newTemplate;
250
255
  if (template && template.indexOf(oldValue) > -1) {
251
- var re = new RegExp(oldValue, "g");
256
+ const re = new RegExp(oldValue, "g");
252
257
  newTemplate = template.replace(re, newValue);
253
258
  }
254
259
  else {
@@ -259,36 +264,36 @@ export function _checkedReplaceAll(template, oldValue, newValue) {
259
264
  export function _getPortalBaseUrl(portalResponse, authentication) {
260
265
  // As of Spring 2020, only HTTPS (see
261
266
  // https://www.esri.com/arcgis-blog/products/product/administration/2019-arcgis-transport-security-improvements/)
262
- var scheme = "https"; // portalResponse.allSSL ? "https" : "http";
263
- var urlKey = common.getProp(portalResponse, "urlKey");
264
- var customBaseUrl = common.getProp(portalResponse, "customBaseUrl");
265
- var enterpriseBaseUrl = common.getProp(portalResponse, "portalHostname");
267
+ const scheme = "https"; // portalResponse.allSSL ? "https" : "http";
268
+ const urlKey = common.getProp(portalResponse, "urlKey");
269
+ const customBaseUrl = common.getProp(portalResponse, "customBaseUrl");
270
+ const enterpriseBaseUrl = common.getProp(portalResponse, "portalHostname");
266
271
  return urlKey && customBaseUrl
267
- ? scheme + "://" + urlKey + "." + customBaseUrl
272
+ ? `${scheme}://${urlKey}.${customBaseUrl}`
268
273
  : enterpriseBaseUrl
269
- ? scheme + "://" + enterpriseBaseUrl
274
+ ? `${scheme}://${enterpriseBaseUrl}`
270
275
  : authentication.portal.replace("/sharing/rest", "");
271
276
  }
272
277
  export function _updateGroupReferences(itemTemplates, templateDictionary) {
273
- var groupIds = itemTemplates.reduce(function (result, t) {
278
+ const groupIds = itemTemplates.reduce((result, t) => {
274
279
  if (t.type === "Group") {
275
280
  result.push(t.itemId);
276
281
  }
277
282
  return result;
278
283
  }, []);
279
- Object.keys(templateDictionary).forEach(function (k) {
280
- var newId = templateDictionary[k].itemId;
284
+ Object.keys(templateDictionary).forEach(k => {
285
+ const newId = templateDictionary[k].itemId;
281
286
  if (groupIds.indexOf(newId) > -1) {
282
- itemTemplates.forEach(function (t) {
283
- t.groups = t.groups.map(function (id) { return (id === k ? newId : id); });
287
+ itemTemplates.forEach(t => {
288
+ t.groups = t.groups.map((id) => (id === k ? newId : id));
284
289
  });
285
290
  }
286
291
  });
287
292
  return itemTemplates;
288
293
  }
289
294
  export function _purgeTemplateProperties(itemTemplate) {
290
- var retainProps = ["itemId", "type", "dependencies", "groups"];
291
- var deleteProps = Object.keys(itemTemplate).filter(function (k) { return retainProps.indexOf(k) < 0; });
295
+ const retainProps = ["itemId", "type", "dependencies", "groups"];
296
+ const deleteProps = Object.keys(itemTemplate).filter(k => retainProps.indexOf(k) < 0);
292
297
  common.deleteProps(itemTemplate, deleteProps);
293
298
  return itemTemplate;
294
299
  }
@@ -300,7 +305,6 @@ export function _purgeTemplateProperties(itemTemplate) {
300
305
  * @return Match in template dictionary or original id
301
306
  */
302
307
  export function _getNewItemId(id, templateDictionary) {
303
- var _a;
304
- return (_a = common.getProp(templateDictionary, id + ".itemId")) !== null && _a !== void 0 ? _a : id;
308
+ return common.getProp(templateDictionary, id + ".itemId") ?? id;
305
309
  }
306
310
  //# sourceMappingURL=deploySolutionFromTemplate.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"deploySolutionFromTemplate.js","sourceRoot":"","sources":["../../src/deploySolutionFromTemplate.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;;AAEH,OAAO,KAAK,MAAM,MAAM,uBAAuB,CAAC;AAChD,OAAO,KAAK,WAAW,MAAM,uBAAuB,CAAC;AACrD,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAClD,OAAO,KAAK,MAAM,MAAM,0BAA0B,CAAC;AACnD,OAAO,EAAE,WAAW,EAAE,MAAM,wBAAwB,CAAC;AACrD,OAAO,EAAE,aAAa,EAAE,MAAM,yBAAyB,CAAC;AAExD,8EAA8E;AAE9E,MAAM,UAAU,0BAA0B,CACxC,kBAA0B,EAC1B,oBAAyB,EACzB,oBAAyB,EACzB,cAAkC,EAClC,OAAsC;IAEtC,OAAO,CAAC,cAAc,GAAG,MAAM,CAAC,sBAAsB,CAAC,oBAAoB,CAAC,CAAC;IAE7E,OAAO,IAAI,OAAO,CAAC,UAAC,OAAO,EAAE,MAAM;;QACjC,qEAAqE;QACrE,IAAM,qBAAqB,GAAuB,OAAO,CAAC,qBAAqB;YAC7E,CAAC,CAAC,OAAO,CAAC,qBAAqB;YAC/B,CAAC,CAAC,cAAc,CAAC;QAEnB,mEAAmE;QAEnE,qEAAqE;QACrE,IAAM,kBAAkB,GAAG,MAAA,OAAO,CAAC,kBAAkB,mCAAI,EAAE,CAAC;QAC5D,IAAI,gBAAwB,CAAC;QAC7B,IAAI,kBAA0B,CAAC;QAE/B,2BAA2B,CACzB,OAAO,EACP,oBAAoB,EACpB,kBAAkB,EAClB,cAAc,CACf,CAAC;QAEF,IAAI,OAAO,CAAC,sBAAsB,EAAE;YAClC,oBAAoB,CAAC,YAAY,GAAG,EAAE,CAAC,MAAM,CAC3C,oBAAoB,CAAC,YAAY,EACjC,OAAO,CAAC,sBAAsB,CAC/B,CAAC;SACH;QAED,yBAAyB;QACzB,IAAI,aAAa,GAAG,WAAW,CAAC;QAChC,IAAI,QAAQ,GAAG,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;QACrC,IAAI,CAAC,OAAO,CAAC,SAAS,IAAI,OAAO,CAAC,YAAY,EAAE;YAC9C,sCAAsC;YACtC,aAAa;gBACX,MAAM,CAAC,kBAAkB,CAAC,OAAO,CAAC,YAAY,CAAC,IAAI,aAAa,CAAC;YACnE,IAAM,YAAY,GAAG,MAAM,CAAC,gBAAgB,CAC1C,OAAO,CAAC,YAAY,EACpB,OAAO,CACR,CAAC;YACF,OAAO,OAAO,CAAC,YAAY,CAAC;YAE5B,sBAAsB;YACtB,QAAQ,GAAG,MAAM,CAAC,aAAa,CAC7B,YAAY,EACZ,aAAa,EACb,qBAAqB,EACrB,CAAC,GAAG,CAAC,CACN,CAAC;SACH;QAED,sBAAsB,CAAC,oBAAoB,EAAE,kBAAkB,CAAC,CAAC;QAEjE,+CAA+C;QAC/C,OAAO,CAAC,GAAG,CAAC;YACV,MAAM,CAAC,SAAS,CAAC,EAAE,EAAE,cAAc,CAAC;YACpC,MAAM,CAAC,OAAO,CAAC,cAAc,CAAC;YAC9B,MAAM,CAAC,mBAAmB,CAAC,cAAc,CAAC;YAC1C,QAAQ;SACT,CAAC;aACC,IAAI,CAAC,UAAA,SAAS;YACP,IAAA,KAAA,OAKF,SAAS,IAAA,EAJX,cAAc,QAAA,EACd,YAAY,QAAA,EACZ,wBAAwB,QAAA,EACxB,aAAa,QACF,CAAC;YACd,IAAI,CAAC,OAAO,CAAC,SAAS,IAAI,aAAa,EAAE;gBACvC,OAAO,CAAC,SAAS,GAAG,aAAa,CAAC;aACnC;YAED,wDAAwD;YACxD,oBAAoB,CAAC,SAAS,GAAG,oBAAoB,CAAC,SAAS,CAAC,GAAG,CACjE,UAAC,QAAa;gBACZ,IAAM,QAAQ,GAAW,SAAS,GAAG,QAAQ,CAAC,MAAM,CAAC;gBACrD,0BAA0B;gBAC1B,IAAI,QAAQ,CAAC,IAAI,EAAE;oBACjB,0BAA0B;oBAC1B,IAAI,QAAQ,CAAC,IAAK,CAAC,YAAY,EAAE;wBAC/B,QAAQ,CAAC,IAAK,CAAC,YAAa,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;qBAC7C;oBACD,0BAA0B;oBAC1B,IACE,QAAQ,CAAC,IAAK,CAAC,IAAI;wBACnB,MAAM,CAAC,OAAO,CAAC,QAAQ,EAAE,WAAW,CAAC,KAAK,OAAO,EACjD;wBACA,QAAQ,CAAC,IAAK,CAAC,IAAK,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;qBACrC;iBACF;gBACD,OAAO,QAAQ,CAAC;YAClB,CAAC,CACF,CAAC;YAEF,kBAAkB,CAAC,QAAQ,GAAG,cAAc,CAAC,QAAQ,CAAC;YACtD,kBAAkB,CAAC,YAAY,GAAG,MAAM,CAAC,MAAM,CAC7C,kBAAkB,CAAC,YAAY,IAAI,EAAE,EACrC,cAAc,CACf,CAAC;YACF,0CAA0C;YAC1C,yBAAyB;YACzB,8CAA8C;YAC9C,mEAAmE;YAEnE,kBAAkB,CAAC,aAAa,GAAG,iBAAiB,CAClD,cAAc,EACd,cAAc,CACf,CAAC;YAEF,kBAAkB,CAAC,IAAI,GAAG,YAAY,CAAC;YACvC,kBAAkB,CAAC,IAAI,CAAC,OAAO,GAAG,wBAAwB,CAAC,OAAO,CAAC;YACnE,kBAAkB,CAAC,IAAI,CAAC,MAAM,GAAG,wBAAwB,CAAC,MAAM,CAAC,MAAM,CACrE,UAAC,KAAoB;gBACnB,OAAA,KAAK,CAAC,KAAK,KAAK,kBAAkB,CAAC,IAAI,CAAC,QAAQ;YAAhD,CAAgD,CACnD,CAAC;YAEF,kGAAkG;YAClG,qCAAqC;YACrC,oCAAoC;YACpC,sCAAsC;YACtC,sCAAsC;YACtC,IAAM,aAAa,GAAG,MAAM,CAAC,kBAAkB,CAC7C,oBAAoB,CAAC,KAAK,EAC1B,kBAAkB,EAClB,cAAc,CACf,CAAC;YAEF,2CAA2C;YAC3C,IAAM,YAAY,GAAQ,cAAc,CAAC,aAAa,CAAC;YACvD,IAAM,cAAc,GAAG,MAAM,CAAC,yBAAyB,CACrD,YAAY,EACZ,SAAS,EACT,EAAE,IAAI,EAAE,IAAI,EAAE,EACd,cAAc,CAAC,cAAc,CAAC,QAAQ,CAAC,GAAG,EAC1C,cAAc,CACf,CAAC;YAEF,0EAA0E;YAC1E,OAAO,OAAO,CAAC,GAAG,CAAC,CAAC,aAAa,EAAE,cAAc,CAAC,CAAC,CAAC;QACtD,CAAC,CAAC;aACD,IAAI,CAAC,UAAA,SAAS;YACP,IAAA,KAAA,OAAgC,SAAS,IAAA,EAAxC,cAAc,QAAA,EAAE,WAAW,QAAa,CAAC;YAChD,gBAAgB,GAAG,cAAc,CAAC,MAAM,CAAC,EAAE,CAAC;YAC5C,kBAAkB,CAAC,QAAQ,GAAG,gBAAgB,CAAC;YAC/C,kBAAkB,CAAC,kBAAkB;gBACnC,WAAW,CAAC,IAAI;oBAChB,GAAG;oBACH,WAAW,CAAC,IAAI;oBAChB,GAAG;oBACH,WAAW,CAAC,IAAI;oBAChB,GAAG;oBACH,WAAW,CAAC,IAAI,CAAC;YACnB,wFAAwF;YACxF,kBAAkB,CAAC,YAAY,CAAC,iBAAiB,GAAG;gBAClD,CAAC,WAAW,CAAC,IAAI,EAAE,WAAW,CAAC,IAAI,CAAC;gBACpC,CAAC,WAAW,CAAC,IAAI,EAAE,WAAW,CAAC,IAAI,CAAC;aACrC,CAAC;YACF,kCAAkC;YAClC,IAAM,sBAAsB,yBACvB,MAAM,CAAC,4BAA4B,CAAC,oBAAoB,CAAC,KAC5D,IAAI,EAAE,UAAU,EAChB,YAAY,EAAE,CAAC,UAAU,CAAC,GAC3B,CAAC;YAEF,IAAI,OAAO,CAAC,sBAAsB,EAAE;gBAClC,sBAAsB,CAAC,YAAY,GAAG,CAAC,UAAU,CAAC,CAAC,MAAM,CACvD,OAAO,CAAC,sBAAsB,CAC/B,CAAC;aACH;YAED,gCAAgC;YAChC,sBAAsB,CAAC,SAAS,GAAG,OAAO,CAAC,SAAS,CAAC;YACrD,OAAO,MAAM,CAAC,kBAAkB,CAC9B,sBAAsB,EACtB,EAAE,EACF,cAAc,EACd,gBAAgB,CACjB,CAAC;QACJ,CAAC,CAAC;aACD,IAAI,CAAC,UAAA,sBAAsB;YAC1B,kBAAkB,GAAG,sBAAsB,CAAC,EAAE,CAAC;YAE/C,4BAA4B;YAC5B,IAAM,cAAc,GAA4B;gBAC9C,EAAE,EAAE,kBAAkB;gBACtB,cAAc,gBAAA;aACf,CAAC;YACF,OAAO,MAAM,CAAC,WAAW,CAAC,cAAc,CAAC,CAAC;QAC5C,CAAC,CAAC;aACD,IAAI,CAAC;YACJ,kDAAkD;YAClD,2CAA2C;YAC3C,kBAAkB,CAAC,cAAc,GAAG,kBAAkB,CAAC;YACvD,oBAAoB,CAAC,EAAE,GAAG,kBAAkB,CAAC;YAE7C,oBAAoB,CAAC,QAAQ,GAAG,kBAAkB,CAChD,oBAAoB,CAAC,QAAQ,EAC7B,kBAAkB,EAClB,kBAAkB,CACnB,CAAC;YACF,oBAAoB,CAAC,GAAG,GAAG,kBAAkB,CAC3C,oBAAoB,CAAC,GAAG,EACxB,kBAAkB,EAClB,kBAAkB,CACnB,CAAC;YAEF,sCAAsC;YACtC,OAAO,WAAW,CAAC,mBAAmB,CACpC,qBAAqB,CAAC,MAAM,EAC5B,kBAAkB,EAClB,oBAAoB,CAAC,SAAS,EAC9B,qBAAqB,EACrB,kBAAkB,EAClB,kBAAkB,EAClB,cAAc,EACd,OAAO,CACR,CAAC;QACJ,CAAC,CAAC;aACD,IAAI,CACH,UAAC,uBAAiE;YAChE,oBAAoB,CAAC,SAAS,GAAG,oBAAoB,CAAC,SAAS,CAAC,GAAG,CACjE,UAAC,YAAkC;gBACjC,4CAA4C;gBAC5C,YAAY,CAAC,MAAM,GAAG,MAAM,CAAC,OAAO,CAClC,kBAAkB,EACf,YAAY,CAAC,MAAM,YAAS,CAChC,CAAC;gBAEF,4DAA4D;gBAC5D,YAAY,CAAC,YAAY,GAAG,YAAY,CAAC,YAAY,CAAC,GAAG,CACvD,UAAC,EAAU;oBACT,OAAA,cAAc,CAAC,kBAAkB,EAAK,EAAE,YAAS,EAAE,EAAE,CAAC;gBAAtD,CAAsD,CACzD,CAAC;gBACF,OAAO,YAAY,CAAC;YACtB,CAAC,CACF,CAAC;YAEF,oFAAoF;YACpF,aAAa,CACX,oBAAoB,CAAC,SAAS,EAC9B,uBAAuB,CAAC,GAAG,CAAC,UAAA,QAAQ,IAAI,OAAA,QAAQ,CAAC,EAAE,EAAX,CAAW,CAAC,CACrD,CAAC;YAEF,gFAAgF;YAChF,OAAO,WAAW,CAChB,kBAAkB,EAClB,oBAAoB,CAAC,SAAS,EAC9B,uBAAuB,EACvB,cAAc,EACd,kBAAkB,CACnB,CAAC;QACJ,CAAC,CACF;aACA,IAAI,CAAC;YACJ,iFAAiF;YACjF,oBAAoB,CAAC,YAAY,GAAG,EAAE,CAAC,MAAM,CAC3C,oBAAoB,CAAC,YAAY,EACjC,CAAC,UAAU,CAAC,CACb,CAAC;YACF,IAAM,gBAAgB,GAAG,oBAAoB,CAAC,YAAY,CAAC,OAAO,CAChE,UAAU,CACX,CAAC;YACF,0BAA0B;YAC1B,IAAI,gBAAgB,IAAI,CAAC,EAAE;gBACzB,oBAAoB,CAAC,YAAY,CAAC,MAAM,CAAC,gBAAgB,EAAE,CAAC,CAAC,CAAC;aAC/D;YAED,oBAAoB,CAAC,SAAS,GAAG,oBAAoB,CAAC,SAAS,CAAC,GAAG,CACjE,UAAC,YAAkC;gBACjC,OAAA,wBAAwB,CAAC,YAAY,CAAC;YAAtC,CAAsC,CACzC,CAAC;YAEF,oBAAoB,CAAC,SAAS,GAAG,sBAAsB,CACrD,oBAAoB,CAAC,SAAS,EAC9B,kBAAkB,CACnB,CAAC;YAEF,4EAA4E;YAC5E,8CAA8C;YAC9C,oBAAoB,CAAC,IAAI,GAAG,MAAM,CAAC,iBAAiB,CAClD,oBAAoB,EACpB,kBAAkB,CACnB,CAAC;YAEF,gDAAgD;YAChD,0BAA0B;YAC1B,IAAI,kBAAkB,CAAC,MAAM,EAAE;gBAC7B,oBAAoB,CAAC,IAAI,CAAC,MAAM,GAAG,kBAAkB,CAAC,MAAM,CAAC;aAC9D;YAED,OAAO,MAAM,CAAC,UAAU,CACtB,oBAAoB,EACpB,cAAc,EACd,gBAAgB,CACjB,CAAC;QACJ,CAAC,CAAC;aACD,IAAI,CAAC,cAAM,OAAA,OAAO,CAAC,oBAAoB,CAAC,EAAE,CAAC,EAAhC,CAAgC,EAAE,MAAM,CAAC,CAAC;IAC1D,CAAC,CAAC,CAAC;AACL,CAAC;AAED;;;;;;;;GAQG;AACH,MAAM,UAAU,2BAA2B,CACzC,aAA4C,EAC5C,oBAAyB,EACzB,kBAAuB,EACvB,cAAkC;IAElC,kDAAkD;IAClD,8EAA8E;IAC9E,CAAC,OAAO,EAAE,SAAS,EAAE,aAAa,EAAE,MAAM,CAAC,CAAC,OAAO,CAAC,UAAA,IAAI;;QACtD,aAAa,CAAC,IAAI,CAAC,GAAG,MAAA,aAAa,CAAC,IAAI,CAAC,mCAAI,oBAAoB,CAAC,IAAI,CAAC,CAAC;QACxE,IAAI,aAAa,CAAC,IAAI,CAAC,EAAE;YACvB,oBAAoB,CAAC,IAAI,CAAC,GAAG,aAAa,CAAC,IAAI,CAAC,CAAC;YACjD,kDAAkD;YAClD,kBAAkB,CAAC,IAAI,CAAC,GAAG,aAAa,CAAC,IAAI,CAAC,CAAC;SAChD;IACH,CAAC,CAAC,CAAC;IAEH,IAAI,CAAC,aAAa,CAAC,YAAY,IAAI,oBAAoB,CAAC,SAAS,EAAE;QACjE,qCAAqC;QACrC,aAAa,CAAC,YAAY,GAAG,MAAM,CAAC,0BAA0B,CAC5D,cAAc,CAAC,MAAM,EACrB,oBAAoB,CAAC,EAAE,EACvB,oBAAoB,CAAC,SAAS,CAC/B,CAAC;QACF,OAAO,oBAAoB,CAAC,SAAS,CAAC;KACvC;IAED,OAAO,aAAa,CAAC;AACvB,CAAC;AAED,MAAM,UAAU,sBAAsB,CACpC,oBAAyB,EACzB,kBAAuB;IAEvB,gFAAgF;IAChF,2EAA2E;IAC3E,2BAA2B;IAC3B,uFAAuF;IACvF,gCAAgC;IAChC,oBAAoB,CAAC,SAAS,GAAG,oBAAoB,CAAC,SAAS,CAAC,GAAG,CACjE,UAAC,QAA8B;QAC7B,uHAAuH;QACvH,iEAAiE;QACjE,0BAA0B;QAC1B,IAAI,QAAQ,CAAC,IAAI,KAAK,iBAAiB,EAAE;YACvC,IAAM,YAAY,GAAW,SAAS,CAAC;YAEvC,IAAM,YAAY,GAAW,4BAA4B,CAAC;YAC1D,QAAQ,GAAG,WAAW,CACpB,QAAQ,EACR,YAAY,EACZ,YAAY,EACZ,kBAAkB,CACnB,CAAC;YAEF,IAAM,eAAe,GACnB,0CAA0C,CAAC;YAC7C,QAAQ,GAAG,WAAW,CACpB,QAAQ,EACR,eAAe,EACf,YAAY,EACZ,kBAAkB,CACnB,CAAC;SACH;QACD,OAAO,QAAQ,CAAC;IAClB,CAAC,CACF,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,WAAW,CACzB,QAA8B,EAC9B,IAAY,EACZ,MAAc,EACd,kBAAuB;IAEvB,IAAM,IAAI,GAAQ,MAAM,CAAC,OAAO,CAAC,QAAQ,EAAE,IAAI,CAAC,CAAC;IACjD,0BAA0B;IAC1B,IAAI,IAAI,IAAI,OAAO,IAAI,KAAK,QAAQ,IAAI,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,EAAE;QACjE,MAAM,CAAC,OAAO,CACZ,QAAQ,EACR,IAAI,EACJ,MAAM,CAAC,iBAAiB,CAAC,IAAI,EAAE,kBAAkB,CAAC,CACnD,CAAC;KACH;IACD,OAAO,QAAQ,CAAC;AAClB,CAAC;AAED,MAAM,UAAU,kBAAkB,CAChC,QAAgB,EAChB,QAAgB,EAChB,QAAgB;IAEhB,IAAI,WAAW,CAAC;IAChB,IAAI,QAAQ,IAAI,QAAQ,CAAC,OAAO,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,EAAE;QAC/C,IAAM,EAAE,GAAG,IAAI,MAAM,CAAC,QAAQ,EAAE,GAAG,CAAC,CAAC;QACrC,WAAW,GAAG,QAAQ,CAAC,OAAO,CAAC,EAAE,EAAE,QAAQ,CAAC,CAAC;KAC9C;SAAM;QACL,WAAW,GAAG,QAAQ,CAAC;KACxB;IACD,OAAO,WAAW,CAAC;AACrB,CAAC;AAED,MAAM,UAAU,iBAAiB,CAC/B,cAA8B,EAC9B,cAAkC;IAElC,qCAAqC;IACrC,iHAAiH;IACjH,IAAM,MAAM,GAAW,OAAO,CAAC,CAAC,4CAA4C;IAC5E,IAAM,MAAM,GAAW,MAAM,CAAC,OAAO,CAAC,cAAc,EAAE,QAAQ,CAAC,CAAC;IAChE,IAAM,aAAa,GAAW,MAAM,CAAC,OAAO,CAAC,cAAc,EAAE,eAAe,CAAC,CAAC;IAC9E,IAAM,iBAAiB,GAAG,MAAM,CAAC,OAAO,CAAC,cAAc,EAAE,gBAAgB,CAAC,CAAC;IAE3E,OAAO,MAAM,IAAI,aAAa;QAC5B,CAAC,CAAI,MAAM,WAAM,MAAM,SAAI,aAAe;QAC1C,CAAC,CAAC,iBAAiB;YACnB,CAAC,CAAI,MAAM,WAAM,iBAAmB;YACpC,CAAC,CAAC,cAAc,CAAC,MAAM,CAAC,OAAO,CAAC,eAAe,EAAE,EAAE,CAAC,CAAC;AACzD,CAAC;AAED,MAAM,UAAU,sBAAsB,CACpC,aAAoB,EACpB,kBAAuB;IAEvB,IAAM,QAAQ,GAAG,aAAa,CAAC,MAAM,CACnC,UAAC,MAAgB,EAAE,CAAuB;QACxC,IAAI,CAAC,CAAC,IAAI,KAAK,OAAO,EAAE;YACtB,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC;SACvB;QACD,OAAO,MAAM,CAAC;IAChB,CAAC,EACD,EAAE,CACH,CAAC;IAEF,MAAM,CAAC,IAAI,CAAC,kBAAkB,CAAC,CAAC,OAAO,CAAC,UAAA,CAAC;QACvC,IAAM,KAAK,GAAW,kBAAkB,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC;QACnD,IAAI,QAAQ,CAAC,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,EAAE;YAChC,aAAa,CAAC,OAAO,CAAC,UAAA,CAAC;gBACrB,CAAC,CAAC,MAAM,GAAG,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,UAAC,EAAU,IAAK,OAAA,CAAC,EAAE,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,CAAC,EAAvB,CAAuB,CAAC,CAAC;YACnE,CAAC,CAAC,CAAC;SACJ;IACH,CAAC,CAAC,CAAC;IACH,OAAO,aAAa,CAAC;AACvB,CAAC;AAED,MAAM,UAAU,wBAAwB,CAAC,YAAiB;IACxD,IAAM,WAAW,GAAa,CAAC,QAAQ,EAAE,MAAM,EAAE,cAAc,EAAE,QAAQ,CAAC,CAAC;IAC3E,IAAM,WAAW,GAAa,MAAM,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC,MAAM,CAC5D,UAAA,CAAC,IAAI,OAAA,WAAW,CAAC,OAAO,CAAC,CAAC,CAAC,GAAG,CAAC,EAA1B,CAA0B,CAChC,CAAC;IACF,MAAM,CAAC,WAAW,CAAC,YAAY,EAAE,WAAW,CAAC,CAAC;IAC9C,OAAO,YAAY,CAAC;AACtB,CAAC;AAED;;;;;;GAMG;AACH,MAAM,UAAU,aAAa,CAAC,EAAU,EAAE,kBAAuB;;IAC/D,OAAO,MAAA,MAAM,CAAC,OAAO,CAAC,kBAAkB,EAAE,EAAE,GAAG,SAAS,CAAC,mCAAI,EAAE,CAAC;AAClE,CAAC"}
1
+ {"version":3,"file":"deploySolutionFromTemplate.js","sourceRoot":"","sources":["../../src/deploySolutionFromTemplate.ts"],"names":[],"mappings":"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"}