@esri/solution-velocity 1.1.4 → 1.3.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.
- package/dist/esm/helpers/velocity-helpers.d.ts +24 -4
- package/dist/esm/helpers/velocity-helpers.js +94 -36
- package/dist/esm/helpers/velocity-helpers.js.map +1 -1
- package/dist/esm/velocity-processor.d.ts +3 -2
- package/dist/esm/velocity-processor.js +17 -10
- package/dist/esm/velocity-processor.js.map +1 -1
- package/dist/node/helpers/velocity-helpers.d.ts +24 -4
- package/dist/node/helpers/velocity-helpers.js +97 -37
- package/dist/node/helpers/velocity-helpers.js.map +1 -1
- package/dist/node/index.js +2 -1
- package/dist/node/index.js.map +1 -1
- package/dist/node/velocity-processor.d.ts +3 -2
- package/dist/node/velocity-processor.js +16 -9
- package/dist/node/velocity-processor.js.map +1 -1
- package/dist/umd/helpers/velocity-helpers.d.ts +24 -4
- package/dist/umd/velocity-processor.d.ts +3 -2
- package/dist/umd/velocity.umd.js +116 -51
- package/dist/umd/velocity.umd.js.map +1 -1
- package/dist/umd/velocity.umd.min.js +4 -4
- package/dist/umd/velocity.umd.min.js.map +1 -1
- package/package.json +16 -17
|
@@ -13,7 +13,7 @@
|
|
|
13
13
|
* See the License for the specific language governing permissions and
|
|
14
14
|
* limitations under the License.
|
|
15
15
|
*/
|
|
16
|
-
import { IItemTemplate, UserSession } from "@esri/solution-common";
|
|
16
|
+
import { IItemTemplate, IVelocityTitle, UserSession } from "@esri/solution-common";
|
|
17
17
|
/**
|
|
18
18
|
* Common function to build urls for reading and interacting with the velocity api
|
|
19
19
|
*
|
|
@@ -54,7 +54,7 @@ export declare function postVelocityData(authentication: UserSession, template:
|
|
|
54
54
|
* @return a promise that will resolve a unique title
|
|
55
55
|
*
|
|
56
56
|
*/
|
|
57
|
-
export declare function getTitle(authentication: UserSession, label: string, url: string): Promise<
|
|
57
|
+
export declare function getTitle(authentication: UserSession, label: string, url: string): Promise<IVelocityTitle>;
|
|
58
58
|
/**
|
|
59
59
|
* Validate the data that will be used and handle any reported issues with the outputs.
|
|
60
60
|
* The output names must be unique across the organization.
|
|
@@ -65,12 +65,32 @@ export declare function getTitle(authentication: UserSession, label: string, url
|
|
|
65
65
|
* @param templateDictionary Hash of facts: folder id, org URL, adlib replacements
|
|
66
66
|
* @param type The type of velocity item
|
|
67
67
|
* @param data The data used to construct the velocity item
|
|
68
|
-
* @param
|
|
68
|
+
* @param titles The list of know titles that exist in the org
|
|
69
|
+
* @param dataOutputs The velocity items output objects
|
|
70
|
+
* @param feeds The velocity items feed objects
|
|
69
71
|
*
|
|
70
72
|
* @return a promise that will resolve the data object passed in with any necessary changes.
|
|
71
73
|
*
|
|
72
74
|
*/
|
|
73
|
-
export declare function _validateOutputs(authentication: UserSession, templateDictionary: any, type: string, data: any,
|
|
75
|
+
export declare function _validateOutputs(authentication: UserSession, templateDictionary: any, type: string, data: any, titles: any[], dataOutputs?: any[], feeds?: any[]): Promise<any>;
|
|
76
|
+
/**
|
|
77
|
+
* Check the validate results for any name conflicts and store the conflicting names.
|
|
78
|
+
*
|
|
79
|
+
* @param validateResults The results object to check for name conflict errors
|
|
80
|
+
*
|
|
81
|
+
* @return a list of names that already exist in the org
|
|
82
|
+
*
|
|
83
|
+
*/
|
|
84
|
+
export declare function _validateMessages(validateResults: any): string[];
|
|
85
|
+
/**
|
|
86
|
+
* Updates the feed object with a new name when validation fails.
|
|
87
|
+
*
|
|
88
|
+
* @param feeds The feed objects from the velocity item.
|
|
89
|
+
* @param data The full data object used for deploying the velocity item.
|
|
90
|
+
* @param names The names that failed due to duplicate error in validation.
|
|
91
|
+
*
|
|
92
|
+
*/
|
|
93
|
+
export declare function _updateFeed(feeds: any[], data: any, names: string[]): void;
|
|
74
94
|
/**
|
|
75
95
|
* Updates the data object with a new name when validation fails.
|
|
76
96
|
*
|
|
@@ -65,17 +65,24 @@ export function getVelocityUrl(authentication, templateDictionary, type, id = ""
|
|
|
65
65
|
export function postVelocityData(authentication, template, data, templateDictionary, autoStart = false) {
|
|
66
66
|
return getVelocityUrl(authentication, templateDictionary, template.type, undefined, true).then(url => {
|
|
67
67
|
if (url) {
|
|
68
|
-
return getTitle(authentication, data.label, url).then(
|
|
69
|
-
|
|
68
|
+
return getTitle(authentication, data.label, url).then((titleInfo) => {
|
|
69
|
+
const titles = titleInfo.titles;
|
|
70
|
+
data.label = titleInfo.label;
|
|
70
71
|
data.id = "";
|
|
71
72
|
const body = replaceInTemplate(data, templateDictionary);
|
|
72
|
-
const dataOutputs = (data.outputs
|
|
73
|
+
const dataOutputs = (data.outputs ? data.outputs : data.output ? [data.output] : []).map((o) => {
|
|
73
74
|
return {
|
|
74
75
|
id: o.id,
|
|
75
76
|
name: o.properties[`${o.name}.name`]
|
|
76
77
|
};
|
|
77
78
|
});
|
|
78
|
-
|
|
79
|
+
const feeds = (body.feeds ? body.feeds : body.feed ? [body.feed] : []).map((o) => {
|
|
80
|
+
return {
|
|
81
|
+
id: o.id ? o.id : o.properties[`${o.name}.portalItemId`] || "",
|
|
82
|
+
name: o.label ? o.label : data.label
|
|
83
|
+
};
|
|
84
|
+
});
|
|
85
|
+
return _validateOutputs(authentication, templateDictionary, template.type, body, titles, dataOutputs, feeds).then(updatedBody => {
|
|
79
86
|
return _fetch(authentication, url, "POST", updatedBody).then(rr => {
|
|
80
87
|
template.item.url = `${url}/${rr.id}`;
|
|
81
88
|
template.item.title = data.label;
|
|
@@ -124,7 +131,7 @@ export function getTitle(authentication, label, url) {
|
|
|
124
131
|
return { title: item.label };
|
|
125
132
|
})
|
|
126
133
|
: [];
|
|
127
|
-
return Promise.resolve(getUniqueTitle(label, { titles }, "titles"));
|
|
134
|
+
return Promise.resolve({ label: getUniqueTitle(label, { titles }, "titles"), titles: titles.map(t => t.title) });
|
|
128
135
|
});
|
|
129
136
|
}
|
|
130
137
|
/**
|
|
@@ -137,42 +144,27 @@ export function getTitle(authentication, label, url) {
|
|
|
137
144
|
* @param templateDictionary Hash of facts: folder id, org URL, adlib replacements
|
|
138
145
|
* @param type The type of velocity item
|
|
139
146
|
* @param data The data used to construct the velocity item
|
|
140
|
-
* @param
|
|
147
|
+
* @param titles The list of know titles that exist in the org
|
|
148
|
+
* @param dataOutputs The velocity items output objects
|
|
149
|
+
* @param feeds The velocity items feed objects
|
|
141
150
|
*
|
|
142
151
|
* @return a promise that will resolve the data object passed in with any necessary changes.
|
|
143
152
|
*
|
|
144
153
|
*/
|
|
145
|
-
export function _validateOutputs(authentication, templateDictionary, type, data, dataOutputs) {
|
|
146
|
-
if (dataOutputs.length > 0) {
|
|
154
|
+
export function _validateOutputs(authentication, templateDictionary, type, data, titles, dataOutputs = [], feeds = []) {
|
|
155
|
+
if (dataOutputs.length > 0 || feeds.length > 0) {
|
|
147
156
|
return validate(authentication, templateDictionary, type, "", data).then((validateResults) => {
|
|
148
|
-
|
|
149
|
-
const nodes = getProp(validateResults, "nodes");
|
|
150
|
-
/* istanbul ignore else */
|
|
151
|
-
if (nodes && Array.isArray(nodes)) {
|
|
152
|
-
nodes.forEach(node => {
|
|
153
|
-
messages = messages.concat(getProp(node, "validation.messages") || []);
|
|
154
|
-
});
|
|
155
|
-
}
|
|
156
|
-
let names = [];
|
|
157
|
-
/* istanbul ignore else */
|
|
158
|
-
if (messages && Array.isArray(messages)) {
|
|
159
|
-
messages.forEach(message => {
|
|
160
|
-
// I don't see a way to ask for all output names that exist
|
|
161
|
-
// velocityUrl + /outputs/ just gives you generic defaults not what currently exists
|
|
162
|
-
const nameErrors = [
|
|
163
|
-
"VALIDATION_ANALYTICS__MULTIPLE_CREATE_FEATURE_LAYER_OUTPUTS_REFERENCE_SAME_LAYER_NAME",
|
|
164
|
-
"ITEM_MANAGER__CREATE_ANALYTIC_FAILED_DUPLICATE_OUTPUT_NAMES_IN_ORGANIZATION_NOT_ALLOWED"
|
|
165
|
-
];
|
|
166
|
-
// The names returned here seem to replace " " with "_" so they do not match exactly
|
|
167
|
-
/* istanbul ignore else */
|
|
168
|
-
if (nameErrors.indexOf(message.key) > -1) {
|
|
169
|
-
names = names.concat(message.args);
|
|
170
|
-
}
|
|
171
|
-
});
|
|
172
|
-
}
|
|
157
|
+
const names = _validateMessages(validateResults);
|
|
173
158
|
if (names.length > 0) {
|
|
174
|
-
|
|
175
|
-
|
|
159
|
+
/* istanbul ignore else */
|
|
160
|
+
if (dataOutputs.length > 0) {
|
|
161
|
+
_updateDataOutput(dataOutputs, data, names);
|
|
162
|
+
}
|
|
163
|
+
/* istanbul ignore else */
|
|
164
|
+
if (feeds.length > 0) {
|
|
165
|
+
_updateFeed(feeds, data, names.concat(titles));
|
|
166
|
+
}
|
|
167
|
+
return _validateOutputs(authentication, templateDictionary, type, data, titles, dataOutputs, feeds);
|
|
176
168
|
}
|
|
177
169
|
else {
|
|
178
170
|
return Promise.resolve(data);
|
|
@@ -183,6 +175,64 @@ export function _validateOutputs(authentication, templateDictionary, type, data,
|
|
|
183
175
|
return Promise.resolve(data);
|
|
184
176
|
}
|
|
185
177
|
}
|
|
178
|
+
/**
|
|
179
|
+
* Check the validate results for any name conflicts and store the conflicting names.
|
|
180
|
+
*
|
|
181
|
+
* @param validateResults The results object to check for name conflict errors
|
|
182
|
+
*
|
|
183
|
+
* @return a list of names that already exist in the org
|
|
184
|
+
*
|
|
185
|
+
*/
|
|
186
|
+
export function _validateMessages(validateResults) {
|
|
187
|
+
let messages = getProp(validateResults, "validation.messages");
|
|
188
|
+
const nodes = getProp(validateResults, "nodes");
|
|
189
|
+
/* istanbul ignore else */
|
|
190
|
+
if (nodes && Array.isArray(nodes)) {
|
|
191
|
+
nodes.forEach(node => {
|
|
192
|
+
messages = messages.concat(getProp(node, "validation.messages") || []);
|
|
193
|
+
});
|
|
194
|
+
}
|
|
195
|
+
let names = [];
|
|
196
|
+
/* istanbul ignore else */
|
|
197
|
+
if (messages && Array.isArray(messages)) {
|
|
198
|
+
messages.forEach(message => {
|
|
199
|
+
// I don't see a way to ask for all output names that exist
|
|
200
|
+
// velocityUrl + /outputs/ just gives you generic defaults not what currently exists
|
|
201
|
+
const nameErrors = [
|
|
202
|
+
"VALIDATION_ANALYTICS__MULTIPLE_CREATE_FEATURE_LAYER_OUTPUTS_REFERENCE_SAME_LAYER_NAME",
|
|
203
|
+
"VALIDATION_ANALYTICS__MULTIPLE_CREATE_STREAM_LAYER_OUTPUTS_REFERENCE_SAME_LAYER_NAME",
|
|
204
|
+
"ITEM_MANAGER__CREATE_ANALYTIC_FAILED_DUPLICATE_OUTPUT_NAMES_IN_ORGANIZATION_NOT_ALLOWED",
|
|
205
|
+
"ITEM_MANAGER__CREATE_BIG_DATA_ANALYTIC_FAILED_DUPLICATE_NAMES_NOT_ALLOWED",
|
|
206
|
+
"ITEM_MANAGER__CREATE_REAL_TIME_ANALYTIC_FAILED_DUPLICATE_NAMES_NOT_ALLOWED",
|
|
207
|
+
"ITEM_MANAGER__CREATE_FEED_FAILED_DUPLICATE_NAME"
|
|
208
|
+
];
|
|
209
|
+
// The names returned here seem to replace " " with "_" so they do not match exactly
|
|
210
|
+
/* istanbul ignore else */
|
|
211
|
+
if (nameErrors.indexOf(message.key) > -1) {
|
|
212
|
+
names = names.concat(message.args);
|
|
213
|
+
}
|
|
214
|
+
});
|
|
215
|
+
}
|
|
216
|
+
return names;
|
|
217
|
+
}
|
|
218
|
+
/**
|
|
219
|
+
* Updates the feed object with a new name when validation fails.
|
|
220
|
+
*
|
|
221
|
+
* @param feeds The feed objects from the velocity item.
|
|
222
|
+
* @param data The full data object used for deploying the velocity item.
|
|
223
|
+
* @param names The names that failed due to duplicate error in validation.
|
|
224
|
+
*
|
|
225
|
+
*/
|
|
226
|
+
export function _updateFeed(feeds, data, names) {
|
|
227
|
+
feeds.forEach(f => {
|
|
228
|
+
const update = _getOutputLabel(names, f);
|
|
229
|
+
/* istanbul ignore else */
|
|
230
|
+
if (update) {
|
|
231
|
+
data.label = update.label;
|
|
232
|
+
f.name = update.label;
|
|
233
|
+
}
|
|
234
|
+
});
|
|
235
|
+
}
|
|
186
236
|
/**
|
|
187
237
|
* Updates the data object with a new name when validation fails.
|
|
188
238
|
*
|
|
@@ -197,7 +247,7 @@ export function _updateDataOutput(dataOutputs, data, names) {
|
|
|
197
247
|
const update = _getOutputLabel(names, dataOutput);
|
|
198
248
|
/* istanbul ignore else */
|
|
199
249
|
if (update) {
|
|
200
|
-
data.outputs
|
|
250
|
+
const _outputs = (data.outputs ? data.outputs : data.output ? [data.output] : []).map((_dataOutput) => {
|
|
201
251
|
/* istanbul ignore else */
|
|
202
252
|
if (_dataOutput.id === update.id) {
|
|
203
253
|
/* istanbul ignore else */
|
|
@@ -211,6 +261,14 @@ export function _updateDataOutput(dataOutputs, data, names) {
|
|
|
211
261
|
}
|
|
212
262
|
return _dataOutput;
|
|
213
263
|
});
|
|
264
|
+
/* istanbul ignore else */
|
|
265
|
+
if (data.outputs) {
|
|
266
|
+
data.outputs = _outputs;
|
|
267
|
+
}
|
|
268
|
+
/* istanbul ignore else */
|
|
269
|
+
if (data.output) {
|
|
270
|
+
data.output = _outputs[0];
|
|
271
|
+
}
|
|
214
272
|
}
|
|
215
273
|
});
|
|
216
274
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"velocity-helpers.js","sourceRoot":"","sources":["../../../src/helpers/velocity-helpers.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"velocity-helpers.js","sourceRoot":"","sources":["../../../src/helpers/velocity-helpers.ts"],"names":[],"mappings":"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"}
|
|
@@ -24,13 +24,14 @@ import { UserSession, IItemProgressCallback, IItemTemplate, ICreateItemFromTempl
|
|
|
24
24
|
*
|
|
25
25
|
* @param solutionItemId The solution to contain the item
|
|
26
26
|
* @param itemInfo The basic item info
|
|
27
|
-
* @param
|
|
27
|
+
* @param destAuthentication Credentials for requests to the destination organization
|
|
28
|
+
* @param srcAuthentication Credentials for requests to source items
|
|
28
29
|
* @param templateDictionary Hash of facts: folder id, org URL, adlib replacements
|
|
29
30
|
*
|
|
30
31
|
* @return a promise that will resolve the constructed IItemTemplate from the input itemInfo
|
|
31
32
|
*
|
|
32
33
|
*/
|
|
33
|
-
export declare function convertItemToTemplate(solutionItemId: string, itemInfo: any,
|
|
34
|
+
export declare function convertItemToTemplate(solutionItemId: string, itemInfo: any, destAuthentication: UserSession, srcAuthentication: UserSession, templateDictionary: any): Promise<IItemTemplate>;
|
|
34
35
|
/**
|
|
35
36
|
* Create Velocity analytics and feeds from a Template
|
|
36
37
|
*
|
|
@@ -18,7 +18,7 @@
|
|
|
18
18
|
*
|
|
19
19
|
* @module velocity
|
|
20
20
|
*/
|
|
21
|
-
import { EItemProgressStatus, generateEmptyCreationResponse, createInitializedItemTemplate, fail, removeItem, updateVelocityReferences } from "@esri/solution-common";
|
|
21
|
+
import { EItemProgressStatus, generateEmptyCreationResponse, createInitializedItemTemplate, fail, removeItem, updateVelocityReferences, updateItem } from "@esri/solution-common";
|
|
22
22
|
import { templatizeVelocity } from "./helpers/velocity-templatize";
|
|
23
23
|
import { getVelocityDependencies } from "./helpers/get-velocity-dependencies";
|
|
24
24
|
import { cleanDataSourcesAndFeeds, getVelocityUrl, postVelocityData } from "./helpers/velocity-helpers";
|
|
@@ -28,22 +28,23 @@ import { moveItem } from "@esri/arcgis-rest-portal";
|
|
|
28
28
|
*
|
|
29
29
|
* @param solutionItemId The solution to contain the item
|
|
30
30
|
* @param itemInfo The basic item info
|
|
31
|
-
* @param
|
|
31
|
+
* @param destAuthentication Credentials for requests to the destination organization
|
|
32
|
+
* @param srcAuthentication Credentials for requests to source items
|
|
32
33
|
* @param templateDictionary Hash of facts: folder id, org URL, adlib replacements
|
|
33
34
|
*
|
|
34
35
|
* @return a promise that will resolve the constructed IItemTemplate from the input itemInfo
|
|
35
36
|
*
|
|
36
37
|
*/
|
|
37
|
-
export function convertItemToTemplate(solutionItemId, itemInfo,
|
|
38
|
+
export function convertItemToTemplate(solutionItemId, itemInfo, destAuthentication, srcAuthentication, templateDictionary) {
|
|
38
39
|
const template = createInitializedItemTemplate(itemInfo);
|
|
39
|
-
return getVelocityUrl(
|
|
40
|
+
return getVelocityUrl(srcAuthentication, templateDictionary, itemInfo.type, itemInfo.id).then((url) => {
|
|
40
41
|
if (url) {
|
|
41
42
|
return fetch(url)
|
|
42
43
|
.then(data => data.json())
|
|
43
44
|
.then(data_json => {
|
|
44
45
|
template.item.title = data_json.label;
|
|
45
46
|
template.data = data_json;
|
|
46
|
-
return getVelocityDependencies(template,
|
|
47
|
+
return getVelocityDependencies(template, srcAuthentication).then(deps => {
|
|
47
48
|
template.dependencies = deps;
|
|
48
49
|
cleanDataSourcesAndFeeds(template, templateDictionary.velocityUrl);
|
|
49
50
|
templatizeVelocity(template);
|
|
@@ -113,11 +114,17 @@ export function createItemFromTemplate(template, templateDictionary, destination
|
|
|
113
114
|
* @returns Promise resolving to successfulness of update
|
|
114
115
|
*/
|
|
115
116
|
export function postProcess(itemId, type, itemInfos, template, templates, templateDictionary, authentication) {
|
|
116
|
-
|
|
117
|
-
|
|
118
|
-
|
|
119
|
-
|
|
120
|
-
|
|
117
|
+
const itemUpdate = itemInfos.filter(ii => ii.id === itemId);
|
|
118
|
+
const item = itemUpdate[0].item.item;
|
|
119
|
+
delete item.url;
|
|
120
|
+
delete item.origUrl;
|
|
121
|
+
return updateItem(item, authentication).then(() => {
|
|
122
|
+
return moveItem({
|
|
123
|
+
owner: authentication.username,
|
|
124
|
+
itemId,
|
|
125
|
+
folderId: templateDictionary.folderId,
|
|
126
|
+
authentication
|
|
127
|
+
});
|
|
121
128
|
});
|
|
122
129
|
}
|
|
123
130
|
//# sourceMappingURL=velocity-processor.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"velocity-processor.js","sourceRoot":"","sources":["../../src/velocity-processor.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAEH;;;;GAIG;AAEH,OAAO,EAKL,mBAAmB,EACnB,6BAA6B,EAC7B,6BAA6B,EAC7B,IAAI,EACJ,UAAU,EACV,wBAAwB,
|
|
1
|
+
{"version":3,"file":"velocity-processor.js","sourceRoot":"","sources":["../../src/velocity-processor.ts"],"names":[],"mappings":"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"}
|
|
@@ -13,7 +13,7 @@
|
|
|
13
13
|
* See the License for the specific language governing permissions and
|
|
14
14
|
* limitations under the License.
|
|
15
15
|
*/
|
|
16
|
-
import { IItemTemplate, UserSession } from "@esri/solution-common";
|
|
16
|
+
import { IItemTemplate, IVelocityTitle, UserSession } from "@esri/solution-common";
|
|
17
17
|
/**
|
|
18
18
|
* Common function to build urls for reading and interacting with the velocity api
|
|
19
19
|
*
|
|
@@ -54,7 +54,7 @@ export declare function postVelocityData(authentication: UserSession, template:
|
|
|
54
54
|
* @return a promise that will resolve a unique title
|
|
55
55
|
*
|
|
56
56
|
*/
|
|
57
|
-
export declare function getTitle(authentication: UserSession, label: string, url: string): Promise<
|
|
57
|
+
export declare function getTitle(authentication: UserSession, label: string, url: string): Promise<IVelocityTitle>;
|
|
58
58
|
/**
|
|
59
59
|
* Validate the data that will be used and handle any reported issues with the outputs.
|
|
60
60
|
* The output names must be unique across the organization.
|
|
@@ -65,12 +65,32 @@ export declare function getTitle(authentication: UserSession, label: string, url
|
|
|
65
65
|
* @param templateDictionary Hash of facts: folder id, org URL, adlib replacements
|
|
66
66
|
* @param type The type of velocity item
|
|
67
67
|
* @param data The data used to construct the velocity item
|
|
68
|
-
* @param
|
|
68
|
+
* @param titles The list of know titles that exist in the org
|
|
69
|
+
* @param dataOutputs The velocity items output objects
|
|
70
|
+
* @param feeds The velocity items feed objects
|
|
69
71
|
*
|
|
70
72
|
* @return a promise that will resolve the data object passed in with any necessary changes.
|
|
71
73
|
*
|
|
72
74
|
*/
|
|
73
|
-
export declare function _validateOutputs(authentication: UserSession, templateDictionary: any, type: string, data: any,
|
|
75
|
+
export declare function _validateOutputs(authentication: UserSession, templateDictionary: any, type: string, data: any, titles: any[], dataOutputs?: any[], feeds?: any[]): Promise<any>;
|
|
76
|
+
/**
|
|
77
|
+
* Check the validate results for any name conflicts and store the conflicting names.
|
|
78
|
+
*
|
|
79
|
+
* @param validateResults The results object to check for name conflict errors
|
|
80
|
+
*
|
|
81
|
+
* @return a list of names that already exist in the org
|
|
82
|
+
*
|
|
83
|
+
*/
|
|
84
|
+
export declare function _validateMessages(validateResults: any): string[];
|
|
85
|
+
/**
|
|
86
|
+
* Updates the feed object with a new name when validation fails.
|
|
87
|
+
*
|
|
88
|
+
* @param feeds The feed objects from the velocity item.
|
|
89
|
+
* @param data The full data object used for deploying the velocity item.
|
|
90
|
+
* @param names The names that failed due to duplicate error in validation.
|
|
91
|
+
*
|
|
92
|
+
*/
|
|
93
|
+
export declare function _updateFeed(feeds: any[], data: any, names: string[]): void;
|
|
74
94
|
/**
|
|
75
95
|
* Updates the data object with a new name when validation fails.
|
|
76
96
|
*
|
|
@@ -15,7 +15,7 @@
|
|
|
15
15
|
* limitations under the License.
|
|
16
16
|
*/
|
|
17
17
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
18
|
-
exports._updateName = exports._removeProp = exports._removeIdPropsAndSetName = exports._removeIdProps = exports.cleanDataSourcesAndFeeds = exports._fetch = exports._getRequestOpts = exports.start = exports.validate = exports._validateAndStart = exports.getUniqueTitle = exports._getOutputLabel = exports._updateDataOutput = exports._validateOutputs = exports.getTitle = exports.postVelocityData = exports.getVelocityUrl = void 0;
|
|
18
|
+
exports._updateName = exports._removeProp = exports._removeIdPropsAndSetName = exports._removeIdProps = exports.cleanDataSourcesAndFeeds = exports._fetch = exports._getRequestOpts = exports.start = exports.validate = exports._validateAndStart = exports.getUniqueTitle = exports._getOutputLabel = exports._updateDataOutput = exports._updateFeed = exports._validateMessages = exports._validateOutputs = exports.getTitle = exports.postVelocityData = exports.getVelocityUrl = void 0;
|
|
19
19
|
const solution_common_1 = require("@esri/solution-common");
|
|
20
20
|
/**
|
|
21
21
|
* Common function to build urls for reading and interacting with the velocity api
|
|
@@ -69,17 +69,24 @@ exports.getVelocityUrl = getVelocityUrl;
|
|
|
69
69
|
function postVelocityData(authentication, template, data, templateDictionary, autoStart = false) {
|
|
70
70
|
return getVelocityUrl(authentication, templateDictionary, template.type, undefined, true).then(url => {
|
|
71
71
|
if (url) {
|
|
72
|
-
return getTitle(authentication, data.label, url).then(
|
|
73
|
-
|
|
72
|
+
return getTitle(authentication, data.label, url).then((titleInfo) => {
|
|
73
|
+
const titles = titleInfo.titles;
|
|
74
|
+
data.label = titleInfo.label;
|
|
74
75
|
data.id = "";
|
|
75
76
|
const body = (0, solution_common_1.replaceInTemplate)(data, templateDictionary);
|
|
76
|
-
const dataOutputs = (data.outputs
|
|
77
|
+
const dataOutputs = (data.outputs ? data.outputs : data.output ? [data.output] : []).map((o) => {
|
|
77
78
|
return {
|
|
78
79
|
id: o.id,
|
|
79
80
|
name: o.properties[`${o.name}.name`]
|
|
80
81
|
};
|
|
81
82
|
});
|
|
82
|
-
|
|
83
|
+
const feeds = (body.feeds ? body.feeds : body.feed ? [body.feed] : []).map((o) => {
|
|
84
|
+
return {
|
|
85
|
+
id: o.id ? o.id : o.properties[`${o.name}.portalItemId`] || "",
|
|
86
|
+
name: o.label ? o.label : data.label
|
|
87
|
+
};
|
|
88
|
+
});
|
|
89
|
+
return _validateOutputs(authentication, templateDictionary, template.type, body, titles, dataOutputs, feeds).then(updatedBody => {
|
|
83
90
|
return _fetch(authentication, url, "POST", updatedBody).then(rr => {
|
|
84
91
|
template.item.url = `${url}/${rr.id}`;
|
|
85
92
|
template.item.title = data.label;
|
|
@@ -129,7 +136,7 @@ function getTitle(authentication, label, url) {
|
|
|
129
136
|
return { title: item.label };
|
|
130
137
|
})
|
|
131
138
|
: [];
|
|
132
|
-
return Promise.resolve(getUniqueTitle(label, { titles }, "titles"));
|
|
139
|
+
return Promise.resolve({ label: getUniqueTitle(label, { titles }, "titles"), titles: titles.map(t => t.title) });
|
|
133
140
|
});
|
|
134
141
|
}
|
|
135
142
|
exports.getTitle = getTitle;
|
|
@@ -143,42 +150,27 @@ exports.getTitle = getTitle;
|
|
|
143
150
|
* @param templateDictionary Hash of facts: folder id, org URL, adlib replacements
|
|
144
151
|
* @param type The type of velocity item
|
|
145
152
|
* @param data The data used to construct the velocity item
|
|
146
|
-
* @param
|
|
153
|
+
* @param titles The list of know titles that exist in the org
|
|
154
|
+
* @param dataOutputs The velocity items output objects
|
|
155
|
+
* @param feeds The velocity items feed objects
|
|
147
156
|
*
|
|
148
157
|
* @return a promise that will resolve the data object passed in with any necessary changes.
|
|
149
158
|
*
|
|
150
159
|
*/
|
|
151
|
-
function _validateOutputs(authentication, templateDictionary, type, data, dataOutputs) {
|
|
152
|
-
if (dataOutputs.length > 0) {
|
|
160
|
+
function _validateOutputs(authentication, templateDictionary, type, data, titles, dataOutputs = [], feeds = []) {
|
|
161
|
+
if (dataOutputs.length > 0 || feeds.length > 0) {
|
|
153
162
|
return validate(authentication, templateDictionary, type, "", data).then((validateResults) => {
|
|
154
|
-
|
|
155
|
-
const nodes = (0, solution_common_1.getProp)(validateResults, "nodes");
|
|
156
|
-
/* istanbul ignore else */
|
|
157
|
-
if (nodes && Array.isArray(nodes)) {
|
|
158
|
-
nodes.forEach(node => {
|
|
159
|
-
messages = messages.concat((0, solution_common_1.getProp)(node, "validation.messages") || []);
|
|
160
|
-
});
|
|
161
|
-
}
|
|
162
|
-
let names = [];
|
|
163
|
-
/* istanbul ignore else */
|
|
164
|
-
if (messages && Array.isArray(messages)) {
|
|
165
|
-
messages.forEach(message => {
|
|
166
|
-
// I don't see a way to ask for all output names that exist
|
|
167
|
-
// velocityUrl + /outputs/ just gives you generic defaults not what currently exists
|
|
168
|
-
const nameErrors = [
|
|
169
|
-
"VALIDATION_ANALYTICS__MULTIPLE_CREATE_FEATURE_LAYER_OUTPUTS_REFERENCE_SAME_LAYER_NAME",
|
|
170
|
-
"ITEM_MANAGER__CREATE_ANALYTIC_FAILED_DUPLICATE_OUTPUT_NAMES_IN_ORGANIZATION_NOT_ALLOWED"
|
|
171
|
-
];
|
|
172
|
-
// The names returned here seem to replace " " with "_" so they do not match exactly
|
|
173
|
-
/* istanbul ignore else */
|
|
174
|
-
if (nameErrors.indexOf(message.key) > -1) {
|
|
175
|
-
names = names.concat(message.args);
|
|
176
|
-
}
|
|
177
|
-
});
|
|
178
|
-
}
|
|
163
|
+
const names = _validateMessages(validateResults);
|
|
179
164
|
if (names.length > 0) {
|
|
180
|
-
|
|
181
|
-
|
|
165
|
+
/* istanbul ignore else */
|
|
166
|
+
if (dataOutputs.length > 0) {
|
|
167
|
+
_updateDataOutput(dataOutputs, data, names);
|
|
168
|
+
}
|
|
169
|
+
/* istanbul ignore else */
|
|
170
|
+
if (feeds.length > 0) {
|
|
171
|
+
_updateFeed(feeds, data, names.concat(titles));
|
|
172
|
+
}
|
|
173
|
+
return _validateOutputs(authentication, templateDictionary, type, data, titles, dataOutputs, feeds);
|
|
182
174
|
}
|
|
183
175
|
else {
|
|
184
176
|
return Promise.resolve(data);
|
|
@@ -190,6 +182,66 @@ function _validateOutputs(authentication, templateDictionary, type, data, dataOu
|
|
|
190
182
|
}
|
|
191
183
|
}
|
|
192
184
|
exports._validateOutputs = _validateOutputs;
|
|
185
|
+
/**
|
|
186
|
+
* Check the validate results for any name conflicts and store the conflicting names.
|
|
187
|
+
*
|
|
188
|
+
* @param validateResults The results object to check for name conflict errors
|
|
189
|
+
*
|
|
190
|
+
* @return a list of names that already exist in the org
|
|
191
|
+
*
|
|
192
|
+
*/
|
|
193
|
+
function _validateMessages(validateResults) {
|
|
194
|
+
let messages = (0, solution_common_1.getProp)(validateResults, "validation.messages");
|
|
195
|
+
const nodes = (0, solution_common_1.getProp)(validateResults, "nodes");
|
|
196
|
+
/* istanbul ignore else */
|
|
197
|
+
if (nodes && Array.isArray(nodes)) {
|
|
198
|
+
nodes.forEach(node => {
|
|
199
|
+
messages = messages.concat((0, solution_common_1.getProp)(node, "validation.messages") || []);
|
|
200
|
+
});
|
|
201
|
+
}
|
|
202
|
+
let names = [];
|
|
203
|
+
/* istanbul ignore else */
|
|
204
|
+
if (messages && Array.isArray(messages)) {
|
|
205
|
+
messages.forEach(message => {
|
|
206
|
+
// I don't see a way to ask for all output names that exist
|
|
207
|
+
// velocityUrl + /outputs/ just gives you generic defaults not what currently exists
|
|
208
|
+
const nameErrors = [
|
|
209
|
+
"VALIDATION_ANALYTICS__MULTIPLE_CREATE_FEATURE_LAYER_OUTPUTS_REFERENCE_SAME_LAYER_NAME",
|
|
210
|
+
"VALIDATION_ANALYTICS__MULTIPLE_CREATE_STREAM_LAYER_OUTPUTS_REFERENCE_SAME_LAYER_NAME",
|
|
211
|
+
"ITEM_MANAGER__CREATE_ANALYTIC_FAILED_DUPLICATE_OUTPUT_NAMES_IN_ORGANIZATION_NOT_ALLOWED",
|
|
212
|
+
"ITEM_MANAGER__CREATE_BIG_DATA_ANALYTIC_FAILED_DUPLICATE_NAMES_NOT_ALLOWED",
|
|
213
|
+
"ITEM_MANAGER__CREATE_REAL_TIME_ANALYTIC_FAILED_DUPLICATE_NAMES_NOT_ALLOWED",
|
|
214
|
+
"ITEM_MANAGER__CREATE_FEED_FAILED_DUPLICATE_NAME"
|
|
215
|
+
];
|
|
216
|
+
// The names returned here seem to replace " " with "_" so they do not match exactly
|
|
217
|
+
/* istanbul ignore else */
|
|
218
|
+
if (nameErrors.indexOf(message.key) > -1) {
|
|
219
|
+
names = names.concat(message.args);
|
|
220
|
+
}
|
|
221
|
+
});
|
|
222
|
+
}
|
|
223
|
+
return names;
|
|
224
|
+
}
|
|
225
|
+
exports._validateMessages = _validateMessages;
|
|
226
|
+
/**
|
|
227
|
+
* Updates the feed object with a new name when validation fails.
|
|
228
|
+
*
|
|
229
|
+
* @param feeds The feed objects from the velocity item.
|
|
230
|
+
* @param data The full data object used for deploying the velocity item.
|
|
231
|
+
* @param names The names that failed due to duplicate error in validation.
|
|
232
|
+
*
|
|
233
|
+
*/
|
|
234
|
+
function _updateFeed(feeds, data, names) {
|
|
235
|
+
feeds.forEach(f => {
|
|
236
|
+
const update = _getOutputLabel(names, f);
|
|
237
|
+
/* istanbul ignore else */
|
|
238
|
+
if (update) {
|
|
239
|
+
data.label = update.label;
|
|
240
|
+
f.name = update.label;
|
|
241
|
+
}
|
|
242
|
+
});
|
|
243
|
+
}
|
|
244
|
+
exports._updateFeed = _updateFeed;
|
|
193
245
|
/**
|
|
194
246
|
* Updates the data object with a new name when validation fails.
|
|
195
247
|
*
|
|
@@ -204,7 +256,7 @@ function _updateDataOutput(dataOutputs, data, names) {
|
|
|
204
256
|
const update = _getOutputLabel(names, dataOutput);
|
|
205
257
|
/* istanbul ignore else */
|
|
206
258
|
if (update) {
|
|
207
|
-
data.outputs
|
|
259
|
+
const _outputs = (data.outputs ? data.outputs : data.output ? [data.output] : []).map((_dataOutput) => {
|
|
208
260
|
/* istanbul ignore else */
|
|
209
261
|
if (_dataOutput.id === update.id) {
|
|
210
262
|
/* istanbul ignore else */
|
|
@@ -218,6 +270,14 @@ function _updateDataOutput(dataOutputs, data, names) {
|
|
|
218
270
|
}
|
|
219
271
|
return _dataOutput;
|
|
220
272
|
});
|
|
273
|
+
/* istanbul ignore else */
|
|
274
|
+
if (data.outputs) {
|
|
275
|
+
data.outputs = _outputs;
|
|
276
|
+
}
|
|
277
|
+
/* istanbul ignore else */
|
|
278
|
+
if (data.output) {
|
|
279
|
+
data.output = _outputs[0];
|
|
280
|
+
}
|
|
221
281
|
}
|
|
222
282
|
});
|
|
223
283
|
}
|