@atlaskit/link-datasource 1.16.5 → 1.17.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/CHANGELOG.md +19 -0
- package/dist/cjs/analytics/constants.js +1 -1
- package/dist/cjs/hooks/useAssetsClient.js +7 -4
- package/dist/cjs/hooks/useDatasourceTableState.js +83 -52
- package/dist/cjs/hooks/useValidateAqlText.js +5 -2
- package/dist/cjs/services/cmdbService.js +50 -35
- package/dist/cjs/ui/jira-issues-modal/basic-filters/ui/async-popup-select/index.js +58 -15
- package/dist/cjs/ui/jira-issues-modal/basic-filters/ui/async-popup-select/trigger.js +26 -3
- package/dist/cjs/ui/jira-issues-modal/basic-filters/ui/index.js +6 -3
- package/dist/es2019/analytics/constants.js +1 -1
- package/dist/es2019/hooks/useAssetsClient.js +8 -4
- package/dist/es2019/hooks/useDatasourceTableState.js +40 -12
- package/dist/es2019/hooks/useValidateAqlText.js +6 -2
- package/dist/es2019/services/cmdbService.js +27 -12
- package/dist/es2019/ui/jira-issues-modal/basic-filters/ui/async-popup-select/index.js +41 -16
- package/dist/es2019/ui/jira-issues-modal/basic-filters/ui/async-popup-select/trigger.js +23 -3
- package/dist/es2019/ui/jira-issues-modal/basic-filters/ui/index.js +5 -3
- package/dist/esm/analytics/constants.js +1 -1
- package/dist/esm/hooks/useAssetsClient.js +7 -4
- package/dist/esm/hooks/useDatasourceTableState.js +83 -52
- package/dist/esm/hooks/useValidateAqlText.js +5 -2
- package/dist/esm/services/cmdbService.js +50 -35
- package/dist/esm/ui/jira-issues-modal/basic-filters/ui/async-popup-select/index.js +59 -16
- package/dist/esm/ui/jira-issues-modal/basic-filters/ui/async-popup-select/trigger.js +26 -3
- package/dist/esm/ui/jira-issues-modal/basic-filters/ui/index.js +7 -4
- package/dist/types/analytics/generated/analytics.types.d.ts +41 -1
- package/dist/types/services/cmdbService.d.ts +8 -4
- package/dist/types/ui/jira-issues-modal/basic-filters/ui/async-popup-select/trigger.d.ts +2 -1
- package/dist/types-ts4.5/analytics/generated/analytics.types.d.ts +41 -1
- package/dist/types-ts4.5/services/cmdbService.d.ts +8 -4
- package/dist/types-ts4.5/ui/jira-issues-modal/basic-filters/ui/async-popup-select/trigger.d.ts +2 -1
- package/package.json +5 -4
package/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,24 @@
|
|
|
1
1
|
# @atlaskit/link-datasource
|
|
2
2
|
|
|
3
|
+
## 1.17.1
|
|
4
|
+
|
|
5
|
+
### Patch Changes
|
|
6
|
+
|
|
7
|
+
- [#43132](https://bitbucket.org/atlassian/atlassian-frontend/pull-requests/43132) [`3e2792d125e`](https://bitbucket.org/atlassian/atlassian-frontend/commits/3e2792d125e) - added operational events for Assets Config Modal
|
|
8
|
+
- Updated dependencies
|
|
9
|
+
|
|
10
|
+
## 1.17.0
|
|
11
|
+
|
|
12
|
+
### Minor Changes
|
|
13
|
+
|
|
14
|
+
- [#43023](https://bitbucket.org/atlassian/atlassian-frontend/pull-requests/43023) [`312be02e858`](https://bitbucket.org/atlassian/atlassian-frontend/commits/312be02e858) - [ux] Basic filter dropdown button label now includes first selected item's name. If multiple items are selected then a badge now indicates the remaining number of items. Selected options are also reordered to the top of the select list.
|
|
15
|
+
|
|
16
|
+
### Patch Changes
|
|
17
|
+
|
|
18
|
+
- [#42504](https://bitbucket.org/atlassian/atlassian-frontend/pull-requests/42504) [`8ee7afb2d85`](https://bitbucket.org/atlassian/atlassian-frontend/commits/8ee7afb2d85) - Added DatasourceDataSchema model.
|
|
19
|
+
Used fields in the request for applying schema.
|
|
20
|
+
- Updated dependencies
|
|
21
|
+
|
|
3
22
|
## 1.16.5
|
|
4
23
|
|
|
5
24
|
### Patch Changes
|
|
@@ -9,6 +9,7 @@ var _regenerator = _interopRequireDefault(require("@babel/runtime/regenerator"))
|
|
|
9
9
|
var _asyncToGenerator2 = _interopRequireDefault(require("@babel/runtime/helpers/asyncToGenerator"));
|
|
10
10
|
var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));
|
|
11
11
|
var _react = require("react");
|
|
12
|
+
var _analytics = require("../analytics");
|
|
12
13
|
var _cmdbService = require("../services/cmdbService");
|
|
13
14
|
var handleAssetsClientErrors = function handleAssetsClientErrors(errorSetter, error) {
|
|
14
15
|
if (error instanceof Error) {
|
|
@@ -50,6 +51,8 @@ var useAssetsClient = exports.useAssetsClient = function useAssetsClient(initial
|
|
|
50
51
|
_useState16 = (0, _slicedToArray2.default)(_useState15, 2),
|
|
51
52
|
objectSchemasError = _useState16[0],
|
|
52
53
|
setObjectSchemasError = _useState16[1];
|
|
54
|
+
var _useDatasourceAnalyti = (0, _analytics.useDatasourceAnalyticsEvents)(),
|
|
55
|
+
fireEvent = _useDatasourceAnalyti.fireEvent;
|
|
53
56
|
|
|
54
57
|
/*
|
|
55
58
|
* We wrap this in nested try/catch blocks because we want to handle
|
|
@@ -66,7 +69,7 @@ var useAssetsClient = exports.useAssetsClient = function useAssetsClient(initial
|
|
|
66
69
|
setWorkspaceError(undefined);
|
|
67
70
|
_context.prev = 2;
|
|
68
71
|
_context.next = 5;
|
|
69
|
-
return (0, _cmdbService.getWorkspaceId)();
|
|
72
|
+
return (0, _cmdbService.getWorkspaceId)(fireEvent);
|
|
70
73
|
case 5:
|
|
71
74
|
_workspaceId = _context.sent;
|
|
72
75
|
setWorkspaceId(_workspaceId);
|
|
@@ -77,7 +80,7 @@ var useAssetsClient = exports.useAssetsClient = function useAssetsClient(initial
|
|
|
77
80
|
}
|
|
78
81
|
_context.prev = 8;
|
|
79
82
|
_context.next = 11;
|
|
80
|
-
return (0, _cmdbService.fetchObjectSchema)(_workspaceId, initialParameters === null || initialParameters === void 0 ? void 0 : initialParameters.schemaId);
|
|
83
|
+
return (0, _cmdbService.fetchObjectSchema)(_workspaceId, initialParameters === null || initialParameters === void 0 ? void 0 : initialParameters.schemaId, fireEvent);
|
|
81
84
|
case 11:
|
|
82
85
|
fetchedObjectSchema = _context.sent;
|
|
83
86
|
setExistingObjectSchema(fetchedObjectSchema);
|
|
@@ -90,7 +93,7 @@ var useAssetsClient = exports.useAssetsClient = function useAssetsClient(initial
|
|
|
90
93
|
case 18:
|
|
91
94
|
_context.prev = 18;
|
|
92
95
|
_context.next = 21;
|
|
93
|
-
return (0, _cmdbService.fetchObjectSchemas)(_workspaceId);
|
|
96
|
+
return (0, _cmdbService.fetchObjectSchemas)(_workspaceId, undefined, fireEvent);
|
|
94
97
|
case 21:
|
|
95
98
|
fetchedObjectSchemasResponse = _context.sent;
|
|
96
99
|
setObjectSchemas(fetchedObjectSchemasResponse.values);
|
|
@@ -118,7 +121,7 @@ var useAssetsClient = exports.useAssetsClient = function useAssetsClient(initial
|
|
|
118
121
|
}
|
|
119
122
|
}, _callee, null, [[2, 31, 34, 37], [8, 15], [18, 26]]);
|
|
120
123
|
}))();
|
|
121
|
-
}, [initialParameters]);
|
|
124
|
+
}, [initialParameters, fireEvent]);
|
|
122
125
|
return {
|
|
123
126
|
workspaceId: workspaceId,
|
|
124
127
|
workspaceError: workspaceError,
|
|
@@ -20,6 +20,8 @@ var useDatasourceTableState = exports.useDatasourceTableState = function useData
|
|
|
20
20
|
fieldKeys = _ref$fieldKeys === void 0 ? [] : _ref$fieldKeys;
|
|
21
21
|
var _useDatasourceAnalyti = (0, _analytics.useDatasourceAnalyticsEvents)(),
|
|
22
22
|
fireEvent = _useDatasourceAnalyti.fireEvent;
|
|
23
|
+
var idFieldCount = 1;
|
|
24
|
+
var keyFieldCount = 1;
|
|
23
25
|
var _useState = (0, _react.useState)([]),
|
|
24
26
|
_useState2 = (0, _slicedToArray2.default)(_useState, 2),
|
|
25
27
|
defaultVisibleColumnKeys = _useState2[0],
|
|
@@ -28,42 +30,48 @@ var useDatasourceTableState = exports.useDatasourceTableState = function useData
|
|
|
28
30
|
_useState4 = (0, _slicedToArray2.default)(_useState3, 2),
|
|
29
31
|
lastRequestedFieldKeys = _useState4[0],
|
|
30
32
|
setLastRequestedFieldKeys = _useState4[1];
|
|
31
|
-
var _useState5 = (0, _react.useState)(
|
|
33
|
+
var _useState5 = (0, _react.useState)({
|
|
34
|
+
properties: []
|
|
35
|
+
}),
|
|
32
36
|
_useState6 = (0, _slicedToArray2.default)(_useState5, 2),
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
var _useState7 = (0, _react.useState)(
|
|
37
|
+
fullSchema = _useState6[0],
|
|
38
|
+
setFullSchema = _useState6[1];
|
|
39
|
+
var _useState7 = (0, _react.useState)('empty'),
|
|
36
40
|
_useState8 = (0, _slicedToArray2.default)(_useState7, 2),
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
var _useState9 = (0, _react.useState)(
|
|
41
|
+
status = _useState8[0],
|
|
42
|
+
setStatus = _useState8[1];
|
|
43
|
+
var _useState9 = (0, _react.useState)([]),
|
|
40
44
|
_useState10 = (0, _slicedToArray2.default)(_useState9, 2),
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
var _useState11 = (0, _react.useState)(
|
|
45
|
+
responseItems = _useState10[0],
|
|
46
|
+
setResponseItems = _useState10[1];
|
|
47
|
+
var _useState11 = (0, _react.useState)(true),
|
|
44
48
|
_useState12 = (0, _slicedToArray2.default)(_useState11, 2),
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
var _useState13 = (0, _react.useState)(
|
|
49
|
+
hasNextPage = _useState12[0],
|
|
50
|
+
setHasNextPage = _useState12[1];
|
|
51
|
+
var _useState13 = (0, _react.useState)(undefined),
|
|
48
52
|
_useState14 = (0, _slicedToArray2.default)(_useState13, 2),
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
var _useState15 = (0, _react.useState)(
|
|
53
|
+
nextCursor = _useState14[0],
|
|
54
|
+
setNextCursor = _useState14[1];
|
|
55
|
+
var _useState15 = (0, _react.useState)([]),
|
|
52
56
|
_useState16 = (0, _slicedToArray2.default)(_useState15, 2),
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
var _useState17 = (0, _react.useState)(
|
|
57
|
+
columns = _useState16[0],
|
|
58
|
+
setColumns = _useState16[1];
|
|
59
|
+
var _useState17 = (0, _react.useState)(undefined),
|
|
56
60
|
_useState18 = (0, _slicedToArray2.default)(_useState17, 2),
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
var _useState19 = (0, _react.useState)(
|
|
61
|
+
totalCount = _useState18[0],
|
|
62
|
+
setTotalCount = _useState18[1];
|
|
63
|
+
var _useState19 = (0, _react.useState)(false),
|
|
60
64
|
_useState20 = (0, _slicedToArray2.default)(_useState19, 2),
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
var _useState21 = (0, _react.useState)(),
|
|
65
|
+
shouldForceRequest = _useState20[0],
|
|
66
|
+
setShouldForceRequest = _useState20[1];
|
|
67
|
+
var _useState21 = (0, _react.useState)([]),
|
|
64
68
|
_useState22 = (0, _slicedToArray2.default)(_useState21, 2),
|
|
65
|
-
|
|
66
|
-
|
|
69
|
+
destinationObjectTypes = _useState22[0],
|
|
70
|
+
setDestinationObjectTypes = _useState22[1];
|
|
71
|
+
var _useState23 = (0, _react.useState)(),
|
|
72
|
+
_useState24 = (0, _slicedToArray2.default)(_useState23, 2),
|
|
73
|
+
extensionKey = _useState24[0],
|
|
74
|
+
setExtensionKey = _useState24[1];
|
|
67
75
|
var _useDatasourceClientE = (0, _linkClientExtension.useDatasourceClientExtension)(),
|
|
68
76
|
getDatasourceData = _useDatasourceClientE.getDatasourceData,
|
|
69
77
|
getDatasourceDetails = _useDatasourceClientE.getDatasourceDetails;
|
|
@@ -121,21 +129,39 @@ var useDatasourceTableState = exports.useDatasourceTableState = function useData
|
|
|
121
129
|
}
|
|
122
130
|
}, _callee, null, [[2, 17]]);
|
|
123
131
|
})), [columns, datasourceId, getDatasourceDetails, parameters]);
|
|
124
|
-
var applySchemaProperties = (0, _react.useCallback)(function (
|
|
125
|
-
|
|
126
|
-
|
|
132
|
+
var applySchemaProperties = (0, _react.useCallback)(function (schema, fieldKeys) {
|
|
133
|
+
var properties = schema.properties,
|
|
134
|
+
_schema$defaultProper = schema.defaultProperties,
|
|
135
|
+
defaultProperties = _schema$defaultProper === void 0 ? [] : _schema$defaultProper;
|
|
136
|
+
var propertiesToBeUsed = properties;
|
|
137
|
+
var propertyKeysToBeUsed = Array.isArray(fieldKeys) && fieldKeys.length > 0 ? fieldKeys : defaultProperties;
|
|
138
|
+
if (fieldKeys.length > 0 || defaultProperties.length > 0) {
|
|
139
|
+
propertiesToBeUsed = properties.filter(function (property) {
|
|
140
|
+
return propertyKeysToBeUsed.includes(property.key);
|
|
141
|
+
});
|
|
142
|
+
}
|
|
143
|
+
|
|
144
|
+
/*Jira adds identifier fields like id and key to all data responses
|
|
145
|
+
Since defaultProperties already send back the keyField, we are accounting only
|
|
146
|
+
for the idField when we are using defaulProperties
|
|
147
|
+
*/
|
|
148
|
+
if (properties.length > fieldKeys.length + idFieldCount + keyFieldCount && properties.length > defaultProperties.length + idFieldCount) {
|
|
149
|
+
setFullSchema(schema);
|
|
127
150
|
}
|
|
128
|
-
|
|
151
|
+
if (!(0, _isEqual.default)(columns, propertiesToBeUsed)) {
|
|
152
|
+
setColumns(propertiesToBeUsed);
|
|
153
|
+
}
|
|
154
|
+
var newProperties = propertiesToBeUsed.map(function (prop) {
|
|
129
155
|
return prop.key;
|
|
130
156
|
});
|
|
131
157
|
|
|
132
158
|
// when loading for the first time, we will need to set default visible props as /data does not give you that info
|
|
133
159
|
// also, since we dont pass any fields, we will need to set this info as lastRequestedFieldKeys
|
|
134
|
-
if (!(0, _isEqual.default)(defaultVisibleColumnKeys,
|
|
135
|
-
setDefaultVisibleColumnKeys(
|
|
160
|
+
if (!(0, _isEqual.default)(defaultVisibleColumnKeys, newProperties)) {
|
|
161
|
+
setDefaultVisibleColumnKeys(newProperties);
|
|
136
162
|
}
|
|
137
|
-
if (!(0, _isEqual.default)(lastRequestedFieldKeys,
|
|
138
|
-
setLastRequestedFieldKeys(
|
|
163
|
+
if (!(0, _isEqual.default)(lastRequestedFieldKeys, newProperties)) {
|
|
164
|
+
setLastRequestedFieldKeys(newProperties);
|
|
139
165
|
}
|
|
140
166
|
}, [columns, defaultVisibleColumnKeys, lastRequestedFieldKeys]);
|
|
141
167
|
var onNextPage = (0, _react.useCallback)( /*#__PURE__*/(0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee2() {
|
|
@@ -145,6 +171,7 @@ var useDatasourceTableState = exports.useDatasourceTableState = function useData
|
|
|
145
171
|
shouldRequestFirstPage,
|
|
146
172
|
_requestInfo$shouldFo,
|
|
147
173
|
shouldForceRequest,
|
|
174
|
+
isFullSchemaLoaded,
|
|
148
175
|
datasourceDataRequest,
|
|
149
176
|
_yield$getDatasourceD2,
|
|
150
177
|
_yield$getDatasourceD3,
|
|
@@ -171,18 +198,19 @@ var useDatasourceTableState = exports.useDatasourceTableState = function useData
|
|
|
171
198
|
return _context2.abrupt("return");
|
|
172
199
|
case 3:
|
|
173
200
|
_requestInfo$isSchema = requestInfo.isSchemaFromData, isSchemaFromData = _requestInfo$isSchema === void 0 ? true : _requestInfo$isSchema, shouldRequestFirstPage = requestInfo.shouldRequestFirstPage, _requestInfo$shouldFo = requestInfo.shouldForceRequest, shouldForceRequest = _requestInfo$shouldFo === void 0 ? false : _requestInfo$shouldFo;
|
|
201
|
+
isFullSchemaLoaded = fullSchema.properties.length > 0;
|
|
174
202
|
datasourceDataRequest = {
|
|
175
203
|
parameters: parameters,
|
|
176
204
|
pageSize: _linkClientExtension.DEFAULT_GET_DATASOURCE_DATA_PAGE_SIZE,
|
|
177
205
|
pageCursor: shouldRequestFirstPage ? undefined : nextCursor,
|
|
178
206
|
fields: fieldKeys,
|
|
179
|
-
includeSchema: isSchemaFromData
|
|
207
|
+
includeSchema: isFullSchemaLoaded ? false : isSchemaFromData
|
|
180
208
|
};
|
|
181
209
|
setStatus('loading');
|
|
182
|
-
_context2.prev =
|
|
183
|
-
_context2.next =
|
|
210
|
+
_context2.prev = 7;
|
|
211
|
+
_context2.next = 10;
|
|
184
212
|
return getDatasourceData(datasourceId, datasourceDataRequest, shouldForceRequest);
|
|
185
|
-
case
|
|
213
|
+
case 10:
|
|
186
214
|
_yield$getDatasourceD2 = _context2.sent;
|
|
187
215
|
_yield$getDatasourceD3 = _yield$getDatasourceD2.meta;
|
|
188
216
|
access = _yield$getDatasourceD3.access;
|
|
@@ -194,12 +222,12 @@ var useDatasourceTableState = exports.useDatasourceTableState = function useData
|
|
|
194
222
|
_totalCount = _yield$getDatasourceD4.totalCount;
|
|
195
223
|
schema = _yield$getDatasourceD4.schema;
|
|
196
224
|
if (!(access === 'forbidden' || access === 'unauthorized')) {
|
|
197
|
-
_context2.next =
|
|
225
|
+
_context2.next = 23;
|
|
198
226
|
break;
|
|
199
227
|
}
|
|
200
228
|
setStatus('unauthorized');
|
|
201
229
|
return _context2.abrupt("return");
|
|
202
|
-
case
|
|
230
|
+
case 23:
|
|
203
231
|
setExtensionKey(_extensionKey);
|
|
204
232
|
setDestinationObjectTypes(_destinationObjectTypes);
|
|
205
233
|
setTotalCount(_totalCount);
|
|
@@ -214,8 +242,8 @@ var useDatasourceTableState = exports.useDatasourceTableState = function useData
|
|
|
214
242
|
if (fieldKeys.length > 0) {
|
|
215
243
|
setLastRequestedFieldKeys(fieldKeys);
|
|
216
244
|
}
|
|
217
|
-
if (isSchemaFromData && schema && items.length > 0) {
|
|
218
|
-
applySchemaProperties(schema
|
|
245
|
+
if ((isSchemaFromData && schema || fullSchema.properties.length > 0) && items.length > 0) {
|
|
246
|
+
applySchemaProperties(schema || fullSchema, fieldKeys);
|
|
219
247
|
}
|
|
220
248
|
isUserLoadingNextPage = (responseItems === null || responseItems === void 0 ? void 0 : responseItems.length) !== 0 && !shouldRequestFirstPage;
|
|
221
249
|
if (isUserLoadingNextPage) {
|
|
@@ -228,25 +256,25 @@ var useDatasourceTableState = exports.useDatasourceTableState = function useData
|
|
|
228
256
|
});
|
|
229
257
|
}
|
|
230
258
|
setStatus('resolved');
|
|
231
|
-
_context2.next =
|
|
259
|
+
_context2.next = 42;
|
|
232
260
|
break;
|
|
233
|
-
case
|
|
234
|
-
_context2.prev =
|
|
235
|
-
_context2.t0 = _context2["catch"](
|
|
261
|
+
case 36:
|
|
262
|
+
_context2.prev = 36;
|
|
263
|
+
_context2.t0 = _context2["catch"](7);
|
|
236
264
|
if (!(_context2.t0 instanceof Response && (_context2.t0.status === 401 || _context2.t0.status === 403))) {
|
|
237
|
-
_context2.next =
|
|
265
|
+
_context2.next = 41;
|
|
238
266
|
break;
|
|
239
267
|
}
|
|
240
268
|
setStatus('unauthorized');
|
|
241
269
|
return _context2.abrupt("return");
|
|
242
|
-
case 40:
|
|
243
|
-
setStatus('rejected');
|
|
244
270
|
case 41:
|
|
271
|
+
setStatus('rejected');
|
|
272
|
+
case 42:
|
|
245
273
|
case "end":
|
|
246
274
|
return _context2.stop();
|
|
247
275
|
}
|
|
248
|
-
}, _callee2, null, [[
|
|
249
|
-
})), [parameters, fieldKeys, nextCursor, getDatasourceData, datasourceId, responseItems === null || responseItems === void 0 ? void 0 : responseItems.length, applySchemaProperties, fireEvent]);
|
|
276
|
+
}, _callee2, null, [[7, 36]]);
|
|
277
|
+
})), [parameters, fieldKeys, nextCursor, getDatasourceData, datasourceId, responseItems === null || responseItems === void 0 ? void 0 : responseItems.length, applySchemaProperties, fireEvent, fullSchema]);
|
|
250
278
|
var reset = (0, _react.useCallback)(function (options) {
|
|
251
279
|
setStatus('empty');
|
|
252
280
|
setResponseItems([]);
|
|
@@ -254,6 +282,9 @@ var useDatasourceTableState = exports.useDatasourceTableState = function useData
|
|
|
254
282
|
setNextCursor(undefined);
|
|
255
283
|
setTotalCount(undefined);
|
|
256
284
|
setLastRequestedFieldKeys([]);
|
|
285
|
+
setFullSchema({
|
|
286
|
+
properties: []
|
|
287
|
+
});
|
|
257
288
|
setShouldForceRequest((options === null || options === void 0 ? void 0 : options.shouldForceRequest) || false);
|
|
258
289
|
if (options !== null && options !== void 0 && options.shouldResetColumns) {
|
|
259
290
|
setColumns([]);
|
|
@@ -9,6 +9,7 @@ var _regenerator = _interopRequireDefault(require("@babel/runtime/regenerator"))
|
|
|
9
9
|
var _asyncToGenerator2 = _interopRequireDefault(require("@babel/runtime/helpers/asyncToGenerator"));
|
|
10
10
|
var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));
|
|
11
11
|
var _react = require("react");
|
|
12
|
+
var _analytics = require("../analytics");
|
|
12
13
|
var _cmdbService = require("../services/cmdbService");
|
|
13
14
|
var useValidateAqlText = exports.useValidateAqlText = function useValidateAqlText(workspaceId) {
|
|
14
15
|
var _useState = (0, _react.useState)(false),
|
|
@@ -23,6 +24,8 @@ var useValidateAqlText = exports.useValidateAqlText = function useValidateAqlTex
|
|
|
23
24
|
_useState6 = (0, _slicedToArray2.default)(_useState5, 2),
|
|
24
25
|
error = _useState6[0],
|
|
25
26
|
setError = _useState6[1];
|
|
27
|
+
var _useDatasourceAnalyti = (0, _analytics.useDatasourceAnalyticsEvents)(),
|
|
28
|
+
fireEvent = _useDatasourceAnalyti.fireEvent;
|
|
26
29
|
var validateAqlText = (0, _react.useCallback)( /*#__PURE__*/function () {
|
|
27
30
|
var _ref = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee(aql) {
|
|
28
31
|
var isValid, message, _validateAqlResponse$, validateAqlResponse;
|
|
@@ -37,7 +40,7 @@ var useValidateAqlText = exports.useValidateAqlText = function useValidateAqlTex
|
|
|
37
40
|
_context.next = 7;
|
|
38
41
|
return (0, _cmdbService.validateAql)(workspaceId, {
|
|
39
42
|
qlQuery: aql
|
|
40
|
-
});
|
|
43
|
+
}, fireEvent);
|
|
41
44
|
case 7:
|
|
42
45
|
validateAqlResponse = _context.sent;
|
|
43
46
|
setIsValidAqlText(validateAqlResponse.isValid);
|
|
@@ -71,7 +74,7 @@ var useValidateAqlText = exports.useValidateAqlText = function useValidateAqlTex
|
|
|
71
74
|
return function (_x) {
|
|
72
75
|
return _ref.apply(this, arguments);
|
|
73
76
|
};
|
|
74
|
-
}(), [workspaceId]);
|
|
77
|
+
}(), [workspaceId, fireEvent]);
|
|
75
78
|
return {
|
|
76
79
|
isValidAqlText: isValidAqlText,
|
|
77
80
|
validateAqlText: validateAqlText,
|
|
@@ -10,7 +10,7 @@ var _asyncToGenerator2 = _interopRequireDefault(require("@babel/runtime/helpers/
|
|
|
10
10
|
var _linkingCommon = require("@atlaskit/linking-common");
|
|
11
11
|
var _cmdbService = require("./cmdbService.utils");
|
|
12
12
|
var getWorkspaceId = exports.getWorkspaceId = /*#__PURE__*/function () {
|
|
13
|
-
var _ref = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee() {
|
|
13
|
+
var _ref = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee(fireEvent) {
|
|
14
14
|
var url, _workspaceDetailsResp, workspaceDetailsResponse, error;
|
|
15
15
|
return _regenerator.default.wrap(function _callee$(_context) {
|
|
16
16
|
while (1) switch (_context.prev = _context.next) {
|
|
@@ -27,32 +27,35 @@ var getWorkspaceId = exports.getWorkspaceId = /*#__PURE__*/function () {
|
|
|
27
27
|
}
|
|
28
28
|
throw new _cmdbService.PermissionError('No workspace results found');
|
|
29
29
|
case 7:
|
|
30
|
+
fireEvent && fireEvent('operational.getWorkspaceId.success', {});
|
|
30
31
|
return _context.abrupt("return", workspaceDetailsResponse.results[0].id);
|
|
31
|
-
case
|
|
32
|
-
_context.prev =
|
|
32
|
+
case 11:
|
|
33
|
+
_context.prev = 11;
|
|
33
34
|
_context.t0 = _context["catch"](1);
|
|
34
35
|
error = (0, _cmdbService.mapFetchErrors)(_context.t0);
|
|
35
36
|
if (error instanceof _cmdbService.FetchError) {
|
|
36
|
-
|
|
37
|
-
|
|
37
|
+
fireEvent && fireEvent('operational.getWorkspaceId.failed', {
|
|
38
|
+
statusCodeGroup: (0, _cmdbService.getStatusCodeGroup)(error)
|
|
39
|
+
});
|
|
40
|
+
// Only 429 and5xx errors will be treated as FetchErrors otherwise PermissionError
|
|
38
41
|
if ((0, _cmdbService.getStatusCodeGroup)(error) !== '5xx' && error.statusCode !== 429) {
|
|
39
42
|
error = new _cmdbService.PermissionError('Failed to fetch workspace');
|
|
40
43
|
}
|
|
41
44
|
}
|
|
42
45
|
throw error;
|
|
43
|
-
case
|
|
46
|
+
case 16:
|
|
44
47
|
case "end":
|
|
45
48
|
return _context.stop();
|
|
46
49
|
}
|
|
47
|
-
}, _callee, null, [[1,
|
|
50
|
+
}, _callee, null, [[1, 11]]);
|
|
48
51
|
}));
|
|
49
|
-
return function getWorkspaceId() {
|
|
52
|
+
return function getWorkspaceId(_x) {
|
|
50
53
|
return _ref.apply(this, arguments);
|
|
51
54
|
};
|
|
52
55
|
}();
|
|
53
56
|
var validateAql = exports.validateAql = /*#__PURE__*/function () {
|
|
54
|
-
var _ref2 = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee2(workspaceId, data) {
|
|
55
|
-
var url, error;
|
|
57
|
+
var _ref2 = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee2(workspaceId, data, fireEvent) {
|
|
58
|
+
var url, response, error;
|
|
56
59
|
return _regenerator.default.wrap(function _callee2$(_context2) {
|
|
57
60
|
while (1) switch (_context2.prev = _context2.next) {
|
|
58
61
|
case 0:
|
|
@@ -64,31 +67,35 @@ var validateAql = exports.validateAql = /*#__PURE__*/function () {
|
|
|
64
67
|
context: 'SMART_LINKS'
|
|
65
68
|
}, undefined, [200, 201, 202, 203, 204]);
|
|
66
69
|
case 4:
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
_context2.
|
|
70
|
+
response = _context2.sent;
|
|
71
|
+
fireEvent && fireEvent('operational.validateAql.success', {});
|
|
72
|
+
return _context2.abrupt("return", response);
|
|
73
|
+
case 9:
|
|
74
|
+
_context2.prev = 9;
|
|
70
75
|
_context2.t0 = _context2["catch"](1);
|
|
71
76
|
error = (0, _cmdbService.mapFetchErrors)(_context2.t0);
|
|
72
77
|
if (error instanceof _cmdbService.FetchError) {
|
|
73
|
-
|
|
78
|
+
fireEvent && fireEvent('operational.validateAql.failed', {
|
|
79
|
+
statusCodeGroup: (0, _cmdbService.getStatusCodeGroup)(error)
|
|
80
|
+
});
|
|
74
81
|
if (error.statusCode === 401 || error.statusCode === 403) {
|
|
75
82
|
error = new _cmdbService.PermissionError('Failed to fetch object schemas');
|
|
76
83
|
}
|
|
77
84
|
}
|
|
78
85
|
throw error;
|
|
79
|
-
case
|
|
86
|
+
case 14:
|
|
80
87
|
case "end":
|
|
81
88
|
return _context2.stop();
|
|
82
89
|
}
|
|
83
|
-
}, _callee2, null, [[1,
|
|
90
|
+
}, _callee2, null, [[1, 9]]);
|
|
84
91
|
}));
|
|
85
|
-
return function validateAql(
|
|
92
|
+
return function validateAql(_x2, _x3, _x4) {
|
|
86
93
|
return _ref2.apply(this, arguments);
|
|
87
94
|
};
|
|
88
95
|
}();
|
|
89
96
|
var fetchObjectSchema = exports.fetchObjectSchema = /*#__PURE__*/function () {
|
|
90
|
-
var _ref3 = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee3(workspaceId, schemaId) {
|
|
91
|
-
var url, error;
|
|
97
|
+
var _ref3 = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee3(workspaceId, schemaId, fireEvent) {
|
|
98
|
+
var url, response, error;
|
|
92
99
|
return _regenerator.default.wrap(function _callee3$(_context3) {
|
|
93
100
|
while (1) switch (_context3.prev = _context3.next) {
|
|
94
101
|
case 0:
|
|
@@ -97,31 +104,35 @@ var fetchObjectSchema = exports.fetchObjectSchema = /*#__PURE__*/function () {
|
|
|
97
104
|
_context3.next = 4;
|
|
98
105
|
return (0, _linkingCommon.request)('get', url, undefined, undefined, [200, 201, 202, 203, 204]);
|
|
99
106
|
case 4:
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
_context3.
|
|
107
|
+
response = _context3.sent;
|
|
108
|
+
fireEvent && fireEvent('operational.objectSchema.success', {});
|
|
109
|
+
return _context3.abrupt("return", response);
|
|
110
|
+
case 9:
|
|
111
|
+
_context3.prev = 9;
|
|
103
112
|
_context3.t0 = _context3["catch"](1);
|
|
104
113
|
error = (0, _cmdbService.mapFetchErrors)(_context3.t0);
|
|
105
114
|
if (error instanceof _cmdbService.FetchError) {
|
|
106
|
-
|
|
115
|
+
fireEvent && fireEvent('operational.objectSchema.failed', {
|
|
116
|
+
statusCodeGroup: (0, _cmdbService.getStatusCodeGroup)(error)
|
|
117
|
+
});
|
|
107
118
|
if (error.statusCode === 401 || error.statusCode === 403) {
|
|
108
119
|
error = new _cmdbService.PermissionError('Failed to fetch object schemas');
|
|
109
120
|
}
|
|
110
121
|
}
|
|
111
122
|
throw error;
|
|
112
|
-
case
|
|
123
|
+
case 14:
|
|
113
124
|
case "end":
|
|
114
125
|
return _context3.stop();
|
|
115
126
|
}
|
|
116
|
-
}, _callee3, null, [[1,
|
|
127
|
+
}, _callee3, null, [[1, 9]]);
|
|
117
128
|
}));
|
|
118
|
-
return function fetchObjectSchema(
|
|
129
|
+
return function fetchObjectSchema(_x5, _x6, _x7) {
|
|
119
130
|
return _ref3.apply(this, arguments);
|
|
120
131
|
};
|
|
121
132
|
}();
|
|
122
133
|
var fetchObjectSchemas = exports.fetchObjectSchemas = /*#__PURE__*/function () {
|
|
123
|
-
var _ref4 = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee4(workspaceId, query) {
|
|
124
|
-
var queryParams, url, error;
|
|
134
|
+
var _ref4 = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee4(workspaceId, query, fireEvent) {
|
|
135
|
+
var queryParams, url, response, error;
|
|
125
136
|
return _regenerator.default.wrap(function _callee4$(_context4) {
|
|
126
137
|
while (1) switch (_context4.prev = _context4.next) {
|
|
127
138
|
case 0:
|
|
@@ -134,25 +145,29 @@ var fetchObjectSchemas = exports.fetchObjectSchemas = /*#__PURE__*/function () {
|
|
|
134
145
|
_context4.next = 8;
|
|
135
146
|
return (0, _linkingCommon.request)('get', url, undefined, undefined, [200, 201, 202, 203, 204]);
|
|
136
147
|
case 8:
|
|
137
|
-
|
|
138
|
-
|
|
139
|
-
_context4.
|
|
148
|
+
response = _context4.sent;
|
|
149
|
+
fireEvent && fireEvent('operational.objectSchemas.success', {});
|
|
150
|
+
return _context4.abrupt("return", response);
|
|
151
|
+
case 13:
|
|
152
|
+
_context4.prev = 13;
|
|
140
153
|
_context4.t0 = _context4["catch"](5);
|
|
141
154
|
error = (0, _cmdbService.mapFetchErrors)(_context4.t0);
|
|
142
155
|
if (error instanceof _cmdbService.FetchError) {
|
|
143
|
-
|
|
156
|
+
fireEvent && fireEvent('operational.objectSchemas.failed', {
|
|
157
|
+
statusCodeGroup: (0, _cmdbService.getStatusCodeGroup)(error)
|
|
158
|
+
});
|
|
144
159
|
if (error.statusCode === 401 || error.statusCode === 403) {
|
|
145
160
|
error = new _cmdbService.PermissionError('Failed to fetch object schemas');
|
|
146
161
|
}
|
|
147
162
|
}
|
|
148
163
|
throw error;
|
|
149
|
-
case
|
|
164
|
+
case 18:
|
|
150
165
|
case "end":
|
|
151
166
|
return _context4.stop();
|
|
152
167
|
}
|
|
153
|
-
}, _callee4, null, [[5,
|
|
168
|
+
}, _callee4, null, [[5, 13]]);
|
|
154
169
|
}));
|
|
155
|
-
return function fetchObjectSchemas(
|
|
170
|
+
return function fetchObjectSchemas(_x8, _x9, _x10) {
|
|
156
171
|
return _ref4.apply(this, arguments);
|
|
157
172
|
};
|
|
158
173
|
}();
|