@esri/solution-creator 3.0.0 → 3.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (34) hide show
  1. package/dist/esm/createItemTemplate.d.ts +12 -1
  2. package/dist/esm/createItemTemplate.js +42 -3
  3. package/dist/esm/createItemTemplate.js.map +1 -1
  4. package/dist/esm/helpers/add-content-to-solution.js +5 -1
  5. package/dist/esm/helpers/add-content-to-solution.js.map +1 -1
  6. package/package.json +13 -13
  7. package/dist/node/createItemTemplate.d.ts +0 -97
  8. package/dist/node/createItemTemplate.js +0 -376
  9. package/dist/node/createItemTemplate.js.map +0 -1
  10. package/dist/node/creator.d.ts +0 -97
  11. package/dist/node/creator.js +0 -279
  12. package/dist/node/creator.js.map +0 -1
  13. package/dist/node/helpers/add-content-to-solution.d.ts +0 -126
  14. package/dist/node/helpers/add-content-to-solution.js +0 -461
  15. package/dist/node/helpers/add-content-to-solution.js.map +0 -1
  16. package/dist/node/helpers/template.d.ts +0 -30
  17. package/dist/node/helpers/template.js +0 -49
  18. package/dist/node/helpers/template.js.map +0 -1
  19. package/dist/node/index.d.ts +0 -23
  20. package/dist/node/index.js +0 -27
  21. package/dist/node/index.js.map +0 -1
  22. package/dist/node/module-map.d.ts +0 -23
  23. package/dist/node/module-map.js +0 -195
  24. package/dist/node/module-map.js.map +0 -1
  25. package/dist/umd/creator/src/createItemTemplate.d.ts +0 -97
  26. package/dist/umd/creator/src/creator.d.ts +0 -97
  27. package/dist/umd/creator/src/helpers/add-content-to-solution.d.ts +0 -126
  28. package/dist/umd/creator/src/helpers/template.d.ts +0 -30
  29. package/dist/umd/creator/src/index.d.ts +0 -23
  30. package/dist/umd/creator/src/module-map.d.ts +0 -23
  31. package/dist/umd/creator.umd.js +0 -1353
  32. package/dist/umd/creator.umd.js.map +0 -1
  33. package/dist/umd/creator.umd.min.js +0 -19
  34. package/dist/umd/creator.umd.min.js.map +0 -1
@@ -1,461 +0,0 @@
1
- "use strict";
2
- /** @license
3
- * Copyright 2020 Esri
4
- *
5
- * Licensed under the Apache License, Version 2.0 (the "License");
6
- * you may not use this file except in compliance with the License.
7
- * You may obtain a copy of the License at
8
- *
9
- * http://www.apache.org/licenses/LICENSE-2.0
10
- *
11
- * Unless required by applicable law or agreed to in writing, software
12
- * distributed under the License is distributed on an "AS IS" BASIS,
13
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14
- * See the License for the specific language governing permissions and
15
- * limitations under the License.
16
- */
17
- Object.defineProperty(exports, "__esModule", { value: true });
18
- exports._templatizeSolutionIds = exports._templatizeOrgUrl = exports._simplifyUrlsInItemDescriptions = exports._replaceRemainingIdsInString = exports._replaceRemainingIdsInObject = exports._replaceDictionaryItemsInObject = exports._postProcessIgnoredItems = exports._postProcessGroupDependencies = exports._getTemplateVariables = exports._getSolutionItemUrls = exports._getIdsOutOfTemplateVariables = exports._getDependencies = exports.addContentToSolution = void 0;
19
- const solution_common_1 = require("@esri/solution-common");
20
- const hub_common_1 = require("@esri/hub-common");
21
- const createItemTemplate_1 = require("../createItemTemplate");
22
- const template_1 = require("./template");
23
- /**
24
- * Adds a list of AGO item ids to a solution item.
25
- *
26
- * @param solutionItemId AGO id of solution to receive items
27
- * @param options Customizations for creating the solution
28
- * @param srcAuthentication Credentials for requests to source items
29
- * @param destAuthentication Credentials for the requests to destination solution
30
- * @returns A promise that resolves with the AGO id of the updated solution
31
- * @internal
32
- */
33
- function addContentToSolution(solutionItemId, options, srcAuthentication, destAuthentication) {
34
- return new Promise((resolve, reject) => {
35
- if (!options.itemIds || options.itemIds.length === 0) {
36
- resolve(solutionItemId);
37
- return;
38
- }
39
- // Prepare feedback mechanism
40
- let totalEstimatedCost = 2 * options.itemIds.length + 1; // solution items, plus avoid divide by 0
41
- let percentDone = 16; // allow for previous creation work
42
- let progressPercentStep = (95 - percentDone) / totalEstimatedCost; // leave some % for caller for wrapup
43
- const failedItemIds = [];
44
- let totalExpended = 0;
45
- let statusOK = true;
46
- const itemProgressCallback = (itemId, status, costUsed) => {
47
- // ---------------------------------------------------------------------------------------------------------------
48
- if (options.itemIds.indexOf(itemId) < 0) {
49
- // New item--a dependency that wasn't in the supplied list of itemIds; add it to the list
50
- // and recalculate the progress percent step based on how much progress remains to be done
51
- options.itemIds.push(itemId);
52
- totalEstimatedCost += 2;
53
- progressPercentStep =
54
- (95 - percentDone) / (totalEstimatedCost - totalExpended);
55
- }
56
- totalExpended += costUsed;
57
- percentDone += progressPercentStep * costUsed;
58
- if (options.progressCallback) {
59
- options.progressCallback(Math.round(percentDone), options.jobId);
60
- }
61
- /* istanbul ignore if */
62
- if (options.consoleProgress) {
63
- console.log(Date.now(), itemId, options.jobId ?? "", solution_common_1.SItemProgressStatus[status], percentDone.toFixed(0) + "%", costUsed);
64
- }
65
- if (status === solution_common_1.EItemProgressStatus.Failed) {
66
- let error = "";
67
- solutionTemplates.some(t => {
68
- /* istanbul ignore else */
69
- if (t.itemId === itemId) {
70
- /* istanbul ignore else */
71
- if ((0, hub_common_1.getProp)(t, "properties.error")) {
72
- error = t.properties.error;
73
- try {
74
- // parse for better console logging if we can
75
- error = JSON.parse(error);
76
- }
77
- catch (e) {
78
- /* istanbul ignore next */
79
- // do nothing and show the error as is
80
- }
81
- }
82
- return true;
83
- }
84
- });
85
- (0, solution_common_1.removeTemplate)(solutionTemplates, itemId);
86
- if (failedItemIds.indexOf(itemId) < 0) {
87
- failedItemIds.push(itemId);
88
- }
89
- statusOK = false;
90
- }
91
- else if (status === solution_common_1.EItemProgressStatus.Ignored) {
92
- (0, solution_common_1.removeTemplate)(solutionTemplates, itemId);
93
- }
94
- return statusOK;
95
- // ---------------------------------------------------------------------------------------------------------------
96
- };
97
- // Replacement dictionary and created templates
98
- const templateDictionary = options.templateDictionary ?? {};
99
- let solutionTemplates = [];
100
- // Handle a list of one or more AGO ids by stepping through the list
101
- // and calling this function recursively
102
- const getItemsPromise = [];
103
- options.itemIds.forEach(itemId => {
104
- const createDef = (0, createItemTemplate_1.createItemTemplate)(solutionItemId, itemId, templateDictionary, srcAuthentication, destAuthentication, solutionTemplates, itemProgressCallback);
105
- getItemsPromise.push(createDef);
106
- });
107
- // eslint-disable-next-line @typescript-eslint/no-floating-promises
108
- Promise.all(getItemsPromise).then((multipleResourceItemFiles) => {
109
- if (failedItemIds.length > 0) {
110
- reject((0, solution_common_1.failWithIds)(failedItemIds, "One or more items cannot be converted into templates"));
111
- }
112
- else {
113
- if (solutionTemplates.length > 0) {
114
- // Coalesce the resource file paths from the created templates
115
- let resourceItemFiles = multipleResourceItemFiles.reduce((accumulator, currentValue) => accumulator.concat(currentValue), []);
116
- // Extract resource data files from templates
117
- resourceItemFiles = resourceItemFiles.concat((0, template_1.getDataFilesFromTemplates)(solutionTemplates));
118
- // test for and update group dependencies and other post-processing
119
- solutionTemplates = _postProcessGroupDependencies(solutionTemplates);
120
- solutionTemplates = (0, solution_common_1.postProcessWorkforceTemplates)(solutionTemplates);
121
- // Filter out any resources from items that have been removed from the templates, such as
122
- // Living Atlas layers
123
- solutionTemplates = _postProcessIgnoredItems(solutionTemplates, templateDictionary);
124
- const templateIds = solutionTemplates.map(template => template.itemId);
125
- // Coalesce the resource file paths from the created templates
126
- resourceItemFiles = resourceItemFiles.filter(file => templateIds.includes(file.itemId));
127
- // Send the accumulated resources to the solution item
128
- // eslint-disable-next-line @typescript-eslint/no-floating-promises
129
- (0, solution_common_1.copyFilesToStorageItem)(resourceItemFiles, solutionItemId, destAuthentication).then(() => {
130
- // Remove data files from templates--no longer needed
131
- (0, template_1.removeDataFilesFromTemplates)(solutionTemplates);
132
- _templatizeSolutionIds(solutionTemplates);
133
- _simplifyUrlsInItemDescriptions(solutionTemplates);
134
- _replaceDictionaryItemsInObject(templateDictionary, solutionTemplates);
135
- _templatizeOrgUrl(solutionTemplates, destAuthentication).then(solutionTemplates2 => {
136
- // Update solution item with its data JSON
137
- const solutionData = {
138
- metadata: { version: solution_common_1.SolutionTemplateFormatVersion },
139
- templates: options.templatizeFields
140
- ? (0, createItemTemplate_1.postProcessFieldReferences)(solutionTemplates2)
141
- : solutionTemplates2
142
- };
143
- const itemInfo = {
144
- id: solutionItemId,
145
- text: solutionData
146
- };
147
- (0, solution_common_1.updateItem)(itemInfo, destAuthentication).then(() => {
148
- resolve(solutionItemId);
149
- }, reject);
150
- }, reject);
151
- });
152
- }
153
- else {
154
- resolve(solutionItemId);
155
- }
156
- }
157
- });
158
- });
159
- }
160
- exports.addContentToSolution = addContentToSolution;
161
- // ------------------------------------------------------------------------------------------------------------------ //
162
- /**
163
- * Gets the dependencies of an item by merging its dependencies list with item references in template variables.
164
- *
165
- * @param template Template to examine
166
- * @returns List of dependency ids
167
- * @private
168
- */
169
- function _getDependencies(template) {
170
- // Get all dependencies
171
- let deps = template.dependencies.concat(_getIdsOutOfTemplateVariables(_getTemplateVariables(JSON.stringify(template.data))));
172
- // Remove duplicates and self-references
173
- deps.sort();
174
- deps = deps.filter((elem, index, array) => {
175
- if (elem === template.itemId) {
176
- return false;
177
- }
178
- else if (index > 0) {
179
- return elem !== array[index - 1];
180
- }
181
- else {
182
- return true;
183
- }
184
- });
185
- return deps;
186
- }
187
- exports._getDependencies = _getDependencies;
188
- /**
189
- * Extracts AGO ids out of template variables.
190
- *
191
- * @param variables List of template variables to examine
192
- * @returns List of AGO ids referenced in `variables`
193
- * @private
194
- */
195
- function _getIdsOutOfTemplateVariables(variables) {
196
- return variables
197
- .map(variable => {
198
- const idList = variable.match(/[0-9A-F]{32}/i); // is it a guid?
199
- if (idList) {
200
- return idList[0];
201
- }
202
- else {
203
- return null;
204
- }
205
- })
206
- .filter(variable => !!variable);
207
- }
208
- exports._getIdsOutOfTemplateVariables = _getIdsOutOfTemplateVariables;
209
- /**
210
- * Creates a list of item URLs.
211
- *
212
- * @param templates Templates to check for URLs
213
- * @returns List of URLs
214
- * @private
215
- */
216
- function _getSolutionItemUrls(templates) {
217
- const solutionUrls = [];
218
- templates.forEach(template => {
219
- /* istanbul ignore else */
220
- if (template.item.origUrl) {
221
- solutionUrls.push([template.itemId, template.item.origUrl]);
222
- }
223
- });
224
- return solutionUrls;
225
- }
226
- exports._getSolutionItemUrls = _getSolutionItemUrls;
227
- /**
228
- * Extracts template variables out of a string.
229
- *
230
- * @param text String to examine
231
- * @returns List of template variables found in string
232
- * @private
233
- */
234
- function _getTemplateVariables(text) {
235
- return (text.match(/{{[a-z0-9.]*}}/gi) || []) // find variable
236
- .map(variable => variable.substring(2, variable.length - 2)); // remove "{{" & "}}"
237
- }
238
- exports._getTemplateVariables = _getTemplateVariables;
239
- /**
240
- * Update the items dependencies and groups arrays
241
- *
242
- * @param templates The array of templates to evaluate
243
- * @returns Updated version of the templates
244
- * @private
245
- */
246
- function _postProcessGroupDependencies(templates) {
247
- return templates.map((template) => {
248
- if (template.type === "Group") {
249
- const id = template.itemId;
250
- // remove group dependencies if we find a circular dependency with one of its items
251
- let removeDependencies = false;
252
- // before we remove update each dependants groups array
253
- template.dependencies.forEach(dependencyId => {
254
- const dependantTemplate = (0, solution_common_1.getTemplateById)(templates, dependencyId);
255
- // Not all items shared to the group will exist in the templates array
256
- // i.e. Hub Initiative items or any other unsupported types
257
- if (dependantTemplate) {
258
- // check if the group is in the dependantTemplate's list of dependencies
259
- const gIndex = (0, hub_common_1.getWithDefault)(dependantTemplate, "dependencies", []).indexOf(id);
260
- /* istanbul ignore else */
261
- if (gIndex > -1) {
262
- removeDependencies = true;
263
- }
264
- // if the dependant template does not have the group id
265
- // in it's groups array, add it
266
- const groups = (0, hub_common_1.getWithDefault)(dependantTemplate, "groups", []);
267
- if (groups.indexOf(id) === -1) {
268
- groups.push(id);
269
- dependantTemplate.groups = groups;
270
- }
271
- }
272
- });
273
- if (removeDependencies) {
274
- template.dependencies = [];
275
- }
276
- }
277
- return template;
278
- });
279
- }
280
- exports._postProcessGroupDependencies = _postProcessGroupDependencies;
281
- /**
282
- * Check for feature service items that have been flagged for invalid designations.
283
- * Remove templates that have invalid designations from the solution item and other item dependencies.
284
- * Clean up any references to items with invalid designations in the other templates.
285
- *
286
- * @param templates The array of templates to evaluate
287
- * @param templateDictionary Hash of key details used for variable replacement
288
- * @returns Updated version of the templates
289
- * @private
290
- */
291
- function _postProcessIgnoredItems(templates, templateDictionary) {
292
- // replace in template
293
- const updateDictionary = templates.reduce((result, template) => {
294
- const invalidDes = template.properties.hasInvalidDesignations;
295
- const unreachableVal = (0, hub_common_1.getProp)(templateDictionary, `${solution_common_1.UNREACHABLE}.${template.itemId}`);
296
- if (invalidDes && unreachableVal && Object.keys(template.data).length < 1) {
297
- template.data[template.itemId] = unreachableVal;
298
- }
299
- return invalidDes ? Object.assign(result, template.data) : result;
300
- }, {});
301
- Object.keys(updateDictionary).forEach(k => {
302
- (0, solution_common_1.removeTemplate)(templates, k);
303
- templates = templates.map(t => {
304
- t.dependencies = t.dependencies.filter(id => id !== k);
305
- return (0, solution_common_1.replaceInTemplate)(t, updateDictionary);
306
- });
307
- });
308
- return templates;
309
- }
310
- exports._postProcessIgnoredItems = _postProcessIgnoredItems;
311
- /**
312
- * Recursively runs through an object to find and replace any strings found in a dictionary.
313
- *
314
- * @param templateDictionary Hash of things to be replaced
315
- * @param obj Object to be examined
316
- * @private
317
- */
318
- function _replaceDictionaryItemsInObject(hash, obj) {
319
- /* istanbul ignore else */
320
- if (obj) {
321
- Object.keys(obj).forEach(prop => {
322
- const propObj = obj[prop];
323
- if (propObj) {
324
- if (typeof propObj === "object") {
325
- _replaceDictionaryItemsInObject(hash, propObj);
326
- }
327
- else if (typeof propObj === "string") {
328
- obj[prop] = hash[propObj] || propObj;
329
- }
330
- }
331
- });
332
- }
333
- return obj;
334
- }
335
- exports._replaceDictionaryItemsInObject = _replaceDictionaryItemsInObject;
336
- /**
337
- * Recursively runs through an object to find and templatize any remaining references to solution's items.
338
- *
339
- * @param ids Ids to be replaced in strings found in object
340
- * @param obj Object to be examined
341
- * @private
342
- */
343
- function _replaceRemainingIdsInObject(ids, obj) {
344
- /* istanbul ignore else */
345
- if (obj) {
346
- Object.keys(obj).forEach(prop => {
347
- const propObj = obj[prop];
348
- if (propObj) {
349
- if (typeof propObj === "object") {
350
- _replaceRemainingIdsInObject(ids, propObj);
351
- }
352
- else if (typeof propObj === "string") {
353
- obj[prop] = _replaceRemainingIdsInString(ids, propObj);
354
- }
355
- }
356
- });
357
- }
358
- return obj;
359
- }
360
- exports._replaceRemainingIdsInObject = _replaceRemainingIdsInObject;
361
- /**
362
- * Templatizes ids from a list in a string if they're not already templatized.
363
- *
364
- * @param ids Ids to be replaced in source string
365
- * @param str Source string to be examined
366
- * @returns A copy of the source string with any templatization changes
367
- * @private
368
- */
369
- function _replaceRemainingIdsInString(ids, str) {
370
- let updatedStr = str;
371
- const untemplatizedIds = (0, solution_common_1.getIDs)(str);
372
- if (untemplatizedIds.length > 0) {
373
- untemplatizedIds.forEach(id => {
374
- if (ids.includes(id)) {
375
- const re = new RegExp("({*)" + id, "gi");
376
- updatedStr = updatedStr.replace(re, match => match.indexOf("{{") < 0
377
- ? "{{" + id.replace("{", "") + ".itemId}}"
378
- : match);
379
- }
380
- });
381
- }
382
- return updatedStr;
383
- }
384
- exports._replaceRemainingIdsInString = _replaceRemainingIdsInString;
385
- /**
386
- * Finds and templatizes any URLs in solution items' descriptions.
387
- *
388
- * @param templates The array of templates to evaluate, modified in place
389
- * @private
390
- */
391
- function _simplifyUrlsInItemDescriptions(templates) {
392
- // Get the urls in the solution along with their item ids & convert the id into the form
393
- // "{{fcb2bf2837a6404ebb418a1f805f976a.url}}"
394
- const solutionUrls = _getSolutionItemUrls(templates).map(idUrl => [
395
- "{{" + idUrl[0] + ".url}}",
396
- idUrl[1]
397
- ]);
398
- /* istanbul ignore else */
399
- if (solutionUrls.length > 0) {
400
- // Make the replacements
401
- templates.forEach(template => {
402
- solutionUrls.forEach(
403
- // TypeScript for es2015 doesn't have a definition for `replaceAll`
404
- idUrl => {
405
- /* istanbul ignore else */
406
- if (template.item.description) {
407
- template.item.description = template.item
408
- .description.replaceAll(idUrl[1], idUrl[0]);
409
- }
410
- });
411
- });
412
- }
413
- }
414
- exports._simplifyUrlsInItemDescriptions = _simplifyUrlsInItemDescriptions;
415
- /**
416
- * Templatizes occurrences of the URL to the user's organization in the `item` and `data` template sections.
417
- *
418
- * @param templates The array of templates to evaluate; templates is modified in place
419
- * @param destAuthentication Credentials for request organization info
420
- * @returns Promise resolving with `templates`
421
- * @private
422
- */
423
- function _templatizeOrgUrl(templates, destAuthentication) {
424
- return new Promise((resolve, reject) => {
425
- // Get the org's URL
426
- (0, solution_common_1.getPortal)(null, destAuthentication).then(org => {
427
- const orgUrl = "https://" + org.urlKey + "." + org.customBaseUrl;
428
- const templatizedOrgUrl = "{{portalBaseUrl}}";
429
- // Cycle through each of the items in the template and scan the `item` and `data` sections of each for replacements
430
- templates.forEach((template) => {
431
- (0, solution_common_1.globalStringReplace)(template.item, new RegExp(orgUrl, "gi"), templatizedOrgUrl);
432
- (0, solution_common_1.globalStringReplace)(template.data, new RegExp(orgUrl, "gi"), templatizedOrgUrl);
433
- });
434
- resolve(templates);
435
- }, reject);
436
- });
437
- }
438
- exports._templatizeOrgUrl = _templatizeOrgUrl;
439
- /**
440
- * Finds and templatizes any references to solution's items.
441
- *
442
- * @param templates The array of templates to evaluate, modified in place
443
- * @private
444
- */
445
- function _templatizeSolutionIds(templates) {
446
- // Get the ids in the solution
447
- const solutionIds = templates.map((template) => template.itemId);
448
- // Cycle through each of the items in the template and
449
- // 1. templatize untemplatized ids in our solution in the `item` and `data` sections;
450
- // 2. update the `dependencies` section
451
- templates.forEach((template) => {
452
- _replaceRemainingIdsInObject(solutionIds, template.item);
453
- _replaceRemainingIdsInObject(solutionIds, template.data);
454
- /* istanbul ignore else */
455
- if (template.type !== "Group" && !(0, solution_common_1.isWorkforceProject)(template)) {
456
- template.dependencies = _getDependencies(template);
457
- }
458
- });
459
- }
460
- exports._templatizeSolutionIds = _templatizeSolutionIds;
461
- //# sourceMappingURL=add-content-to-solution.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"add-content-to-solution.js","sourceRoot":"","sources":["../../../src/helpers/add-content-to-solution.ts"],"names":[],"mappings":"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"}
@@ -1,30 +0,0 @@
1
- /** @license
2
- * Copyright 2022 Esri
3
- *
4
- * Licensed under the Apache License, Version 2.0 (the "License");
5
- * you may not use this file except in compliance with the License.
6
- * You may obtain a copy of the License at
7
- *
8
- * http://www.apache.org/licenses/LICENSE-2.0
9
- *
10
- * Unless required by applicable law or agreed to in writing, software
11
- * distributed under the License is distributed on an "AS IS" BASIS,
12
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13
- * See the License for the specific language governing permissions and
14
- * limitations under the License.
15
- */
16
- import { IItemTemplate, ISourceFile } from "@esri/solution-common";
17
- /**
18
- * Extracts resource data files from templates.
19
- *
20
- * @param templates List of templates to examine
21
- *
22
- * @return List of resource data files found in supplied templates
23
- */
24
- export declare function getDataFilesFromTemplates(templates: IItemTemplate[]): ISourceFile[];
25
- /**
26
- * Removes data files from templates.
27
- *
28
- * @param templates List of templates to modify
29
- */
30
- export declare function removeDataFilesFromTemplates(templates: IItemTemplate[]): void;
@@ -1,49 +0,0 @@
1
- "use strict";
2
- /** @license
3
- * Copyright 2022 Esri
4
- *
5
- * Licensed under the Apache License, Version 2.0 (the "License");
6
- * you may not use this file except in compliance with the License.
7
- * You may obtain a copy of the License at
8
- *
9
- * http://www.apache.org/licenses/LICENSE-2.0
10
- *
11
- * Unless required by applicable law or agreed to in writing, software
12
- * distributed under the License is distributed on an "AS IS" BASIS,
13
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14
- * See the License for the specific language governing permissions and
15
- * limitations under the License.
16
- */
17
- Object.defineProperty(exports, "__esModule", { value: true });
18
- exports.removeDataFilesFromTemplates = exports.getDataFilesFromTemplates = void 0;
19
- /**
20
- * Extracts resource data files from templates.
21
- *
22
- * @param templates List of templates to examine
23
- *
24
- * @return List of resource data files found in supplied templates
25
- */
26
- function getDataFilesFromTemplates(templates) {
27
- const resourceItemFiles = [];
28
- templates.forEach((template) => {
29
- if (template.dataFile) {
30
- resourceItemFiles.push(template.dataFile);
31
- }
32
- });
33
- return resourceItemFiles;
34
- }
35
- exports.getDataFilesFromTemplates = getDataFilesFromTemplates;
36
- /**
37
- * Removes data files from templates.
38
- *
39
- * @param templates List of templates to modify
40
- */
41
- function removeDataFilesFromTemplates(templates) {
42
- templates.forEach((template) => {
43
- if (template.dataFile) {
44
- delete template.dataFile;
45
- }
46
- });
47
- }
48
- exports.removeDataFilesFromTemplates = removeDataFilesFromTemplates;
49
- //# sourceMappingURL=template.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"template.js","sourceRoot":"","sources":["../../../src/helpers/template.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;GAcG;;;AAOH;;;;;;GAMG;AACH,SAAgB,yBAAyB,CACvC,SAA0B;IAE1B,MAAM,iBAAiB,GAAkB,EAAE,CAAC;IAE5C,SAAS,CAAC,OAAO,CACf,CAAC,QAAuB,EAAE,EAAE;QAC1B,IAAI,QAAQ,CAAC,QAAQ,EAAE;YACrB,iBAAiB,CAAC,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC;SAC3C;IACH,CAAC,CACF,CAAC;IAEF,OAAO,iBAAiB,CAAC;AAC3B,CAAC;AAdD,8DAcC;AAED;;;;GAIG;AACH,SAAgB,4BAA4B,CAC1C,SAA0B;IAE1B,SAAS,CAAC,OAAO,CACf,CAAC,QAAuB,EAAE,EAAE;QAC1B,IAAI,QAAQ,CAAC,QAAQ,EAAE;YACrB,OAAO,QAAQ,CAAC,QAAQ,CAAC;SAC1B;IACH,CAAC,CACF,CAAC;AACJ,CAAC;AAVD,oEAUC"}
@@ -1,23 +0,0 @@
1
- /** @license
2
- * Copyright 2018 Esri
3
- *
4
- * Licensed under the Apache License, Version 2.0 (the "License");
5
- * you may not use this file except in compliance with the License.
6
- * You may obtain a copy of the License at
7
- *
8
- * http://www.apache.org/licenses/LICENSE-2.0
9
- *
10
- * Unless required by applicable law or agreed to in writing, software
11
- * distributed under the License is distributed on an "AS IS" BASIS,
12
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13
- * See the License for the specific language governing permissions and
14
- * limitations under the License.
15
- */
16
- /**
17
- * Manages the creation of a Solution item.
18
- *
19
- * @module creator
20
- */
21
- export * from "./creator";
22
- export * from "./createItemTemplate";
23
- export * from "./module-map";
@@ -1,27 +0,0 @@
1
- "use strict";
2
- /** @license
3
- * Copyright 2018 Esri
4
- *
5
- * Licensed under the Apache License, Version 2.0 (the "License");
6
- * you may not use this file except in compliance with the License.
7
- * You may obtain a copy of the License at
8
- *
9
- * http://www.apache.org/licenses/LICENSE-2.0
10
- *
11
- * Unless required by applicable law or agreed to in writing, software
12
- * distributed under the License is distributed on an "AS IS" BASIS,
13
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14
- * See the License for the specific language governing permissions and
15
- * limitations under the License.
16
- */
17
- Object.defineProperty(exports, "__esModule", { value: true });
18
- const tslib_1 = require("tslib");
19
- /**
20
- * Manages the creation of a Solution item.
21
- *
22
- * @module creator
23
- */
24
- tslib_1.__exportStar(require("./creator"), exports);
25
- tslib_1.__exportStar(require("./createItemTemplate"), exports);
26
- tslib_1.__exportStar(require("./module-map"), exports);
27
- //# sourceMappingURL=index.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;GAcG;;;AAEH;;;;GAIG;AAEH,oDAA0B;AAC1B,+DAAqC;AACrC,uDAA6B"}
@@ -1,23 +0,0 @@
1
- /** @license
2
- * Copyright 2020 Esri
3
- *
4
- * Licensed under the Apache License, Version 2.0 (the "License");
5
- * you may not use this file except in compliance with the License.
6
- * You may obtain a copy of the License at
7
- *
8
- * http://www.apache.org/licenses/LICENSE-2.0
9
- *
10
- * Unless required by applicable law or agreed to in writing, software
11
- * distributed under the License is distributed on an "AS IS" BASIS,
12
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13
- * See the License for the specific language governing permissions and
14
- * limitations under the License.
15
- */
16
- import { moduleHandler, IItemTypeModuleMap } from "@esri/solution-common";
17
- export declare const UNSUPPORTED: moduleHandler;
18
- /**
19
- * Mapping from item type to module with type-specific template-handling code.
20
- * AGO types come from a blend of arcgis-portal-app\src\js\arcgisonline\pages\item\_Info.js and
21
- * arcgis-portal-app\src\js\arcgis-components\src\_utils\metadata\item\displayName.ts
22
- */
23
- export declare const moduleMap: IItemTypeModuleMap;