@atlaskit/link-datasource 1.17.4 → 1.17.6
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 +14 -0
- package/dist/cjs/analytics/constants.js +1 -1
- package/dist/cjs/ui/jira-issues-modal/basic-filters/hooks/useHydrateJqlQuery.js +65 -3
- package/dist/cjs/ui/jira-issues-modal/basic-filters/ui/async-popup-select/index.js +10 -0
- package/dist/es2019/analytics/constants.js +1 -1
- package/dist/es2019/ui/jira-issues-modal/basic-filters/hooks/useHydrateJqlQuery.js +35 -3
- package/dist/es2019/ui/jira-issues-modal/basic-filters/ui/async-popup-select/index.js +11 -0
- package/dist/esm/analytics/constants.js +1 -1
- package/dist/esm/ui/jira-issues-modal/basic-filters/hooks/useHydrateJqlQuery.js +64 -3
- package/dist/esm/ui/jira-issues-modal/basic-filters/ui/async-popup-select/index.js +10 -0
- package/dist/types/analytics/generated/analytics.types.d.ts +8 -1
- package/dist/types/ui/jira-issues-modal/basic-filters/hooks/useHydrateJqlQuery.d.ts +10 -3
- package/dist/types-ts4.5/analytics/generated/analytics.types.d.ts +8 -1
- package/dist/types-ts4.5/ui/jira-issues-modal/basic-filters/hooks/useHydrateJqlQuery.d.ts +10 -3
- package/package.json +4 -4
package/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,19 @@
|
|
|
1
1
|
# @atlaskit/link-datasource
|
|
2
2
|
|
|
3
|
+
## 1.17.6
|
|
4
|
+
|
|
5
|
+
### Patch Changes
|
|
6
|
+
|
|
7
|
+
- [#43358](https://bitbucket.org/atlassian/atlassian-frontend/pull-requests/43358) [`d275736284c`](https://bitbucket.org/atlassian/atlassian-frontend/commits/d275736284c) - Add analytics event when basic filter dropdown menu is opened.
|
|
8
|
+
- [#43379](https://bitbucket.org/atlassian/atlassian-frontend/pull-requests/43379) [`482c025520d`](https://bitbucket.org/atlassian/atlassian-frontend/commits/482c025520d) - ED-20763 Upgrade ADF schema version to 33.2.3 for MBE nodes.
|
|
9
|
+
|
|
10
|
+
## 1.17.5
|
|
11
|
+
|
|
12
|
+
### Patch Changes
|
|
13
|
+
|
|
14
|
+
- [#43340](https://bitbucket.org/atlassian/atlassian-frontend/pull-requests/43340) [`bb87fcf2e29`](https://bitbucket.org/atlassian/atlassian-frontend/commits/bb87fcf2e29) - Introduce new hook `useHydrateJqlQuery` that returns the JQL hydration state for each basic filter
|
|
15
|
+
- Updated dependencies
|
|
16
|
+
|
|
3
17
|
## 1.17.4
|
|
4
18
|
|
|
5
19
|
### Patch Changes
|
|
@@ -1,12 +1,74 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
|
+
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
3
4
|
Object.defineProperty(exports, "__esModule", {
|
|
4
5
|
value: true
|
|
5
6
|
});
|
|
6
7
|
exports.useHydrateJqlQuery = void 0;
|
|
7
|
-
var
|
|
8
|
+
var _regenerator = _interopRequireDefault(require("@babel/runtime/regenerator"));
|
|
9
|
+
var _asyncToGenerator2 = _interopRequireDefault(require("@babel/runtime/helpers/asyncToGenerator"));
|
|
10
|
+
var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));
|
|
11
|
+
var _react = require("react");
|
|
12
|
+
var _useBasicFilterAGG2 = require("../../../../services/useBasicFilterAGG");
|
|
13
|
+
var _transformers = require("../utils/transformers");
|
|
14
|
+
var useHydrateJqlQuery = exports.useHydrateJqlQuery = function useHydrateJqlQuery(cloudId, jql) {
|
|
15
|
+
var _useState = (0, _react.useState)({}),
|
|
16
|
+
_useState2 = (0, _slicedToArray2.default)(_useState, 2),
|
|
17
|
+
hydratedOptions = _useState2[0],
|
|
18
|
+
setHydratedOptions = _useState2[1];
|
|
19
|
+
var _useState3 = (0, _react.useState)('empty'),
|
|
20
|
+
_useState4 = (0, _slicedToArray2.default)(_useState3, 2),
|
|
21
|
+
status = _useState4[0],
|
|
22
|
+
setStatus = _useState4[1];
|
|
23
|
+
var _useState5 = (0, _react.useState)([]),
|
|
24
|
+
_useState6 = (0, _slicedToArray2.default)(_useState5, 2),
|
|
25
|
+
errors = _useState6[0],
|
|
26
|
+
setErrors = _useState6[1];
|
|
27
|
+
var _useBasicFilterAGG = (0, _useBasicFilterAGG2.useBasicFilterAGG)(),
|
|
28
|
+
getHydratedJQL = _useBasicFilterAGG.getHydratedJQL;
|
|
29
|
+
var fetchHydratedJqlOptions = (0, _react.useCallback)( /*#__PURE__*/(0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee() {
|
|
30
|
+
var response;
|
|
31
|
+
return _regenerator.default.wrap(function _callee$(_context) {
|
|
32
|
+
while (1) switch (_context.prev = _context.next) {
|
|
33
|
+
case 0:
|
|
34
|
+
_context.prev = 0;
|
|
35
|
+
setStatus('loading');
|
|
36
|
+
_context.next = 4;
|
|
37
|
+
return getHydratedJQL(cloudId, jql);
|
|
38
|
+
case 4:
|
|
39
|
+
response = _context.sent;
|
|
40
|
+
if (!(response.errors && response.errors.length > 0)) {
|
|
41
|
+
_context.next = 9;
|
|
42
|
+
break;
|
|
43
|
+
}
|
|
44
|
+
setStatus('rejected');
|
|
45
|
+
setErrors(response.errors);
|
|
46
|
+
return _context.abrupt("return");
|
|
47
|
+
case 9:
|
|
48
|
+
setHydratedOptions((0, _transformers.mapHydrateResponseData)(response));
|
|
49
|
+
setStatus('resolved');
|
|
50
|
+
_context.next = 17;
|
|
51
|
+
break;
|
|
52
|
+
case 13:
|
|
53
|
+
_context.prev = 13;
|
|
54
|
+
_context.t0 = _context["catch"](0);
|
|
55
|
+
setErrors([_context.t0]);
|
|
56
|
+
setStatus('rejected');
|
|
57
|
+
case 17:
|
|
58
|
+
case "end":
|
|
59
|
+
return _context.stop();
|
|
60
|
+
}
|
|
61
|
+
}, _callee, null, [[0, 13]]);
|
|
62
|
+
})), [cloudId, getHydratedJQL, jql]);
|
|
63
|
+
(0, _react.useEffect)(function () {
|
|
64
|
+
if (status !== 'rejected' && errors.length !== 0) {
|
|
65
|
+
setErrors([]);
|
|
66
|
+
}
|
|
67
|
+
}, [errors.length, status]);
|
|
8
68
|
return {
|
|
9
|
-
|
|
10
|
-
|
|
69
|
+
hydratedOptions: hydratedOptions,
|
|
70
|
+
fetchHydratedJqlOptions: fetchHydratedJqlOptions,
|
|
71
|
+
status: status,
|
|
72
|
+
errors: errors
|
|
11
73
|
};
|
|
12
74
|
};
|
|
@@ -17,6 +17,7 @@ var _isEqual = _interopRequireDefault(require("lodash/isEqual"));
|
|
|
17
17
|
var _reactIntlNext = require("react-intl-next");
|
|
18
18
|
var _useDebounce = require("use-debounce");
|
|
19
19
|
var _select = require("@atlaskit/select");
|
|
20
|
+
var _analytics = require("../../../../../analytics");
|
|
20
21
|
var _useFilterOptions2 = require("../../hooks/useFilterOptions");
|
|
21
22
|
var _menuList = _interopRequireDefault(require("../menu-list"));
|
|
22
23
|
var _control = _interopRequireDefault(require("./control"));
|
|
@@ -45,6 +46,8 @@ var AsyncPopupSelect = function AsyncPopupSelect(_ref) {
|
|
|
45
46
|
isDisabled = _ref$isDisabled === void 0 ? false : _ref$isDisabled;
|
|
46
47
|
var _useIntl = (0, _reactIntlNext.useIntl)(),
|
|
47
48
|
formatMessage = _useIntl.formatMessage;
|
|
49
|
+
var _useDatasourceAnalyti = (0, _analytics.useDatasourceAnalyticsEvents)(),
|
|
50
|
+
fireEvent = _useDatasourceAnalyti.fireEvent;
|
|
48
51
|
var _useState = (0, _react.useState)(''),
|
|
49
52
|
_useState2 = (0, _slicedToArray2.default)(_useState, 2),
|
|
50
53
|
searchTerm = _useState2[0],
|
|
@@ -161,6 +164,12 @@ var AsyncPopupSelect = function AsyncPopupSelect(_ref) {
|
|
|
161
164
|
sortOptionsOnPopupOpen();
|
|
162
165
|
}
|
|
163
166
|
}, [fetchFilterOptions, searchTerm, sortOptionsOnPopupOpen, status]);
|
|
167
|
+
var handleMenuOpen = (0, _react.useCallback)(function () {
|
|
168
|
+
fireEvent('ui.dropdown.opened.basicSearchDropdown', {
|
|
169
|
+
filterType: filterType,
|
|
170
|
+
selectionCount: selectedOptions.length
|
|
171
|
+
});
|
|
172
|
+
}, [filterType, fireEvent, selectedOptions.length]);
|
|
164
173
|
(0, _react.useEffect)(function () {
|
|
165
174
|
if (status === 'resolved') {
|
|
166
175
|
sortOptionsOnResolve();
|
|
@@ -235,6 +244,7 @@ var AsyncPopupSelect = function AsyncPopupSelect(_ref) {
|
|
|
235
244
|
formatOptionLabel: _formatOptionLabel.default,
|
|
236
245
|
onChange: handleOptionSelection,
|
|
237
246
|
onInputChange: handleInputChange,
|
|
247
|
+
onOpen: handleMenuOpen,
|
|
238
248
|
target: function target(_ref3) {
|
|
239
249
|
var isOpen = _ref3.isOpen,
|
|
240
250
|
triggerProps = (0, _objectWithoutProperties2.default)(_ref3, _excluded);
|
|
@@ -1,6 +1,38 @@
|
|
|
1
|
-
|
|
1
|
+
import { useCallback, useEffect, useState } from 'react';
|
|
2
|
+
import { useBasicFilterAGG } from '../../../../services/useBasicFilterAGG';
|
|
3
|
+
import { mapHydrateResponseData } from '../utils/transformers';
|
|
4
|
+
export const useHydrateJqlQuery = (cloudId, jql) => {
|
|
5
|
+
const [hydratedOptions, setHydratedOptions] = useState({});
|
|
6
|
+
const [status, setStatus] = useState('empty');
|
|
7
|
+
const [errors, setErrors] = useState([]);
|
|
8
|
+
const {
|
|
9
|
+
getHydratedJQL
|
|
10
|
+
} = useBasicFilterAGG();
|
|
11
|
+
const fetchHydratedJqlOptions = useCallback(async () => {
|
|
12
|
+
try {
|
|
13
|
+
setStatus('loading');
|
|
14
|
+
const response = await getHydratedJQL(cloudId, jql);
|
|
15
|
+
if (response.errors && response.errors.length > 0) {
|
|
16
|
+
setStatus('rejected');
|
|
17
|
+
setErrors(response.errors);
|
|
18
|
+
return;
|
|
19
|
+
}
|
|
20
|
+
setHydratedOptions(mapHydrateResponseData(response));
|
|
21
|
+
setStatus('resolved');
|
|
22
|
+
} catch (error) {
|
|
23
|
+
setErrors([error]);
|
|
24
|
+
setStatus('rejected');
|
|
25
|
+
}
|
|
26
|
+
}, [cloudId, getHydratedJQL, jql]);
|
|
27
|
+
useEffect(() => {
|
|
28
|
+
if (status !== 'rejected' && errors.length !== 0) {
|
|
29
|
+
setErrors([]);
|
|
30
|
+
}
|
|
31
|
+
}, [errors.length, status]);
|
|
2
32
|
return {
|
|
3
|
-
|
|
4
|
-
|
|
33
|
+
hydratedOptions,
|
|
34
|
+
fetchHydratedJqlOptions,
|
|
35
|
+
status,
|
|
36
|
+
errors
|
|
5
37
|
};
|
|
6
38
|
};
|
|
@@ -4,6 +4,7 @@ import isEqual from 'lodash/isEqual';
|
|
|
4
4
|
import { useIntl } from 'react-intl-next';
|
|
5
5
|
import { useDebouncedCallback } from 'use-debounce';
|
|
6
6
|
import { CheckboxOption, PopupSelect } from '@atlaskit/select';
|
|
7
|
+
import { useDatasourceAnalyticsEvents } from '../../../../../analytics';
|
|
7
8
|
import { useFilterOptions } from '../../hooks/useFilterOptions';
|
|
8
9
|
import CustomMenuList from '../menu-list';
|
|
9
10
|
import CustomControl from './control';
|
|
@@ -26,6 +27,9 @@ const AsyncPopupSelect = ({
|
|
|
26
27
|
const {
|
|
27
28
|
formatMessage
|
|
28
29
|
} = useIntl();
|
|
30
|
+
const {
|
|
31
|
+
fireEvent
|
|
32
|
+
} = useDatasourceAnalyticsEvents();
|
|
29
33
|
const [searchTerm, setSearchTerm] = useState('');
|
|
30
34
|
const [selectedOptions, setSelectedOptions] = useState(selection);
|
|
31
35
|
const [sortedOptions, setSortedOptions] = useState([]);
|
|
@@ -111,6 +115,12 @@ const AsyncPopupSelect = ({
|
|
|
111
115
|
sortOptionsOnPopupOpen();
|
|
112
116
|
}
|
|
113
117
|
}, [fetchFilterOptions, searchTerm, sortOptionsOnPopupOpen, status]);
|
|
118
|
+
const handleMenuOpen = useCallback(() => {
|
|
119
|
+
fireEvent('ui.dropdown.opened.basicSearchDropdown', {
|
|
120
|
+
filterType,
|
|
121
|
+
selectionCount: selectedOptions.length
|
|
122
|
+
});
|
|
123
|
+
}, [filterType, fireEvent, selectedOptions.length]);
|
|
114
124
|
useEffect(() => {
|
|
115
125
|
if (status === 'resolved') {
|
|
116
126
|
sortOptionsOnResolve();
|
|
@@ -185,6 +195,7 @@ const AsyncPopupSelect = ({
|
|
|
185
195
|
formatOptionLabel: formatOptionLabel,
|
|
186
196
|
onChange: handleOptionSelection,
|
|
187
197
|
onInputChange: handleInputChange,
|
|
198
|
+
onOpen: handleMenuOpen,
|
|
188
199
|
target: ({
|
|
189
200
|
isOpen,
|
|
190
201
|
...triggerProps
|
|
@@ -1,6 +1,67 @@
|
|
|
1
|
-
|
|
1
|
+
import _asyncToGenerator from "@babel/runtime/helpers/asyncToGenerator";
|
|
2
|
+
import _slicedToArray from "@babel/runtime/helpers/slicedToArray";
|
|
3
|
+
import _regeneratorRuntime from "@babel/runtime/regenerator";
|
|
4
|
+
import { useCallback, useEffect, useState } from 'react';
|
|
5
|
+
import { useBasicFilterAGG } from '../../../../services/useBasicFilterAGG';
|
|
6
|
+
import { mapHydrateResponseData } from '../utils/transformers';
|
|
7
|
+
export var useHydrateJqlQuery = function useHydrateJqlQuery(cloudId, jql) {
|
|
8
|
+
var _useState = useState({}),
|
|
9
|
+
_useState2 = _slicedToArray(_useState, 2),
|
|
10
|
+
hydratedOptions = _useState2[0],
|
|
11
|
+
setHydratedOptions = _useState2[1];
|
|
12
|
+
var _useState3 = useState('empty'),
|
|
13
|
+
_useState4 = _slicedToArray(_useState3, 2),
|
|
14
|
+
status = _useState4[0],
|
|
15
|
+
setStatus = _useState4[1];
|
|
16
|
+
var _useState5 = useState([]),
|
|
17
|
+
_useState6 = _slicedToArray(_useState5, 2),
|
|
18
|
+
errors = _useState6[0],
|
|
19
|
+
setErrors = _useState6[1];
|
|
20
|
+
var _useBasicFilterAGG = useBasicFilterAGG(),
|
|
21
|
+
getHydratedJQL = _useBasicFilterAGG.getHydratedJQL;
|
|
22
|
+
var fetchHydratedJqlOptions = useCallback( /*#__PURE__*/_asyncToGenerator( /*#__PURE__*/_regeneratorRuntime.mark(function _callee() {
|
|
23
|
+
var response;
|
|
24
|
+
return _regeneratorRuntime.wrap(function _callee$(_context) {
|
|
25
|
+
while (1) switch (_context.prev = _context.next) {
|
|
26
|
+
case 0:
|
|
27
|
+
_context.prev = 0;
|
|
28
|
+
setStatus('loading');
|
|
29
|
+
_context.next = 4;
|
|
30
|
+
return getHydratedJQL(cloudId, jql);
|
|
31
|
+
case 4:
|
|
32
|
+
response = _context.sent;
|
|
33
|
+
if (!(response.errors && response.errors.length > 0)) {
|
|
34
|
+
_context.next = 9;
|
|
35
|
+
break;
|
|
36
|
+
}
|
|
37
|
+
setStatus('rejected');
|
|
38
|
+
setErrors(response.errors);
|
|
39
|
+
return _context.abrupt("return");
|
|
40
|
+
case 9:
|
|
41
|
+
setHydratedOptions(mapHydrateResponseData(response));
|
|
42
|
+
setStatus('resolved');
|
|
43
|
+
_context.next = 17;
|
|
44
|
+
break;
|
|
45
|
+
case 13:
|
|
46
|
+
_context.prev = 13;
|
|
47
|
+
_context.t0 = _context["catch"](0);
|
|
48
|
+
setErrors([_context.t0]);
|
|
49
|
+
setStatus('rejected');
|
|
50
|
+
case 17:
|
|
51
|
+
case "end":
|
|
52
|
+
return _context.stop();
|
|
53
|
+
}
|
|
54
|
+
}, _callee, null, [[0, 13]]);
|
|
55
|
+
})), [cloudId, getHydratedJQL, jql]);
|
|
56
|
+
useEffect(function () {
|
|
57
|
+
if (status !== 'rejected' && errors.length !== 0) {
|
|
58
|
+
setErrors([]);
|
|
59
|
+
}
|
|
60
|
+
}, [errors.length, status]);
|
|
2
61
|
return {
|
|
3
|
-
|
|
4
|
-
|
|
62
|
+
hydratedOptions: hydratedOptions,
|
|
63
|
+
fetchHydratedJqlOptions: fetchHydratedJqlOptions,
|
|
64
|
+
status: status,
|
|
65
|
+
errors: errors
|
|
5
66
|
};
|
|
6
67
|
};
|
|
@@ -10,6 +10,7 @@ import isEqual from 'lodash/isEqual';
|
|
|
10
10
|
import { useIntl } from 'react-intl-next';
|
|
11
11
|
import { useDebouncedCallback } from 'use-debounce';
|
|
12
12
|
import { CheckboxOption, PopupSelect } from '@atlaskit/select';
|
|
13
|
+
import { useDatasourceAnalyticsEvents } from '../../../../../analytics';
|
|
13
14
|
import { useFilterOptions } from '../../hooks/useFilterOptions';
|
|
14
15
|
import CustomMenuList from '../menu-list';
|
|
15
16
|
import CustomControl from './control';
|
|
@@ -35,6 +36,8 @@ var AsyncPopupSelect = function AsyncPopupSelect(_ref) {
|
|
|
35
36
|
isDisabled = _ref$isDisabled === void 0 ? false : _ref$isDisabled;
|
|
36
37
|
var _useIntl = useIntl(),
|
|
37
38
|
formatMessage = _useIntl.formatMessage;
|
|
39
|
+
var _useDatasourceAnalyti = useDatasourceAnalyticsEvents(),
|
|
40
|
+
fireEvent = _useDatasourceAnalyti.fireEvent;
|
|
38
41
|
var _useState = useState(''),
|
|
39
42
|
_useState2 = _slicedToArray(_useState, 2),
|
|
40
43
|
searchTerm = _useState2[0],
|
|
@@ -151,6 +154,12 @@ var AsyncPopupSelect = function AsyncPopupSelect(_ref) {
|
|
|
151
154
|
sortOptionsOnPopupOpen();
|
|
152
155
|
}
|
|
153
156
|
}, [fetchFilterOptions, searchTerm, sortOptionsOnPopupOpen, status]);
|
|
157
|
+
var handleMenuOpen = useCallback(function () {
|
|
158
|
+
fireEvent('ui.dropdown.opened.basicSearchDropdown', {
|
|
159
|
+
filterType: filterType,
|
|
160
|
+
selectionCount: selectedOptions.length
|
|
161
|
+
});
|
|
162
|
+
}, [filterType, fireEvent, selectedOptions.length]);
|
|
154
163
|
useEffect(function () {
|
|
155
164
|
if (status === 'resolved') {
|
|
156
165
|
sortOptionsOnResolve();
|
|
@@ -225,6 +234,7 @@ var AsyncPopupSelect = function AsyncPopupSelect(_ref) {
|
|
|
225
234
|
formatOptionLabel: formatOptionLabel,
|
|
226
235
|
onChange: handleOptionSelection,
|
|
227
236
|
onInputChange: handleInputChange,
|
|
237
|
+
onOpen: handleMenuOpen,
|
|
228
238
|
target: function target(_ref3) {
|
|
229
239
|
var isOpen = _ref3.isOpen,
|
|
230
240
|
triggerProps = _objectWithoutProperties(_ref3, _excluded);
|
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
*
|
|
4
4
|
* Generates Typescript types for analytics events from analytics.spec.yaml
|
|
5
5
|
*
|
|
6
|
-
* @codegen <<SignedSource::
|
|
6
|
+
* @codegen <<SignedSource::f6b92bba98139798dca3a8fe75e32625>>
|
|
7
7
|
* @codegenCommand yarn workspace @atlassian/analytics-tooling run analytics:codegen link-datasource
|
|
8
8
|
*/
|
|
9
9
|
export type PackageMetaDataType = {
|
|
@@ -89,6 +89,10 @@ export type ErrorShownBasicSearchDropdownAttributesType = {
|
|
|
89
89
|
filterType: 'project' | 'assignee' | 'issuetype' | 'status';
|
|
90
90
|
reason: 'agg' | 'network' | 'unknown';
|
|
91
91
|
};
|
|
92
|
+
export type DropdownOpenedBasicSearchDropdownAttributesType = {
|
|
93
|
+
filterType: 'project' | 'assignee' | 'issuetype' | 'status';
|
|
94
|
+
selectionCount: number;
|
|
95
|
+
};
|
|
92
96
|
export type AqlEditorSearchedAttributesType = {};
|
|
93
97
|
export type GetWorkspaceIdSuccessAttributesType = {};
|
|
94
98
|
export type GetWorkspaceIdFailedAttributesType = {
|
|
@@ -161,6 +165,9 @@ export type AnalyticsEventAttributes = {
|
|
|
161
165
|
/**
|
|
162
166
|
* Fired when the basic filter search dropdown shows an error UI */
|
|
163
167
|
'ui.error.shown.basicSearchDropdown': ErrorShownBasicSearchDropdownAttributesType;
|
|
168
|
+
/**
|
|
169
|
+
* Fired when the basic filter dropdown is opened */
|
|
170
|
+
'ui.dropdown.opened.basicSearchDropdown': DropdownOpenedBasicSearchDropdownAttributesType;
|
|
164
171
|
/**
|
|
165
172
|
* Fired when search is initiated via the search icon or enter key press for aql editor input field. */
|
|
166
173
|
'ui.aqlEditor.searched': AqlEditorSearchedAttributesType;
|
|
@@ -1,3 +1,10 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
1
|
+
import { BasicFilterFieldType, SelectOption } from '../types';
|
|
2
|
+
export interface HydrateJqlState {
|
|
3
|
+
hydratedOptions: {
|
|
4
|
+
[key in BasicFilterFieldType]?: SelectOption[];
|
|
5
|
+
};
|
|
6
|
+
fetchHydratedJqlOptions: () => Promise<void>;
|
|
7
|
+
status: 'empty' | 'loading' | 'resolved' | 'rejected';
|
|
8
|
+
errors: unknown[];
|
|
9
|
+
}
|
|
10
|
+
export declare const useHydrateJqlQuery: (cloudId: string, jql: string) => HydrateJqlState;
|
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
*
|
|
4
4
|
* Generates Typescript types for analytics events from analytics.spec.yaml
|
|
5
5
|
*
|
|
6
|
-
* @codegen <<SignedSource::
|
|
6
|
+
* @codegen <<SignedSource::f6b92bba98139798dca3a8fe75e32625>>
|
|
7
7
|
* @codegenCommand yarn workspace @atlassian/analytics-tooling run analytics:codegen link-datasource
|
|
8
8
|
*/
|
|
9
9
|
export type PackageMetaDataType = {
|
|
@@ -89,6 +89,10 @@ export type ErrorShownBasicSearchDropdownAttributesType = {
|
|
|
89
89
|
filterType: 'project' | 'assignee' | 'issuetype' | 'status';
|
|
90
90
|
reason: 'agg' | 'network' | 'unknown';
|
|
91
91
|
};
|
|
92
|
+
export type DropdownOpenedBasicSearchDropdownAttributesType = {
|
|
93
|
+
filterType: 'project' | 'assignee' | 'issuetype' | 'status';
|
|
94
|
+
selectionCount: number;
|
|
95
|
+
};
|
|
92
96
|
export type AqlEditorSearchedAttributesType = {};
|
|
93
97
|
export type GetWorkspaceIdSuccessAttributesType = {};
|
|
94
98
|
export type GetWorkspaceIdFailedAttributesType = {
|
|
@@ -161,6 +165,9 @@ export type AnalyticsEventAttributes = {
|
|
|
161
165
|
/**
|
|
162
166
|
* Fired when the basic filter search dropdown shows an error UI */
|
|
163
167
|
'ui.error.shown.basicSearchDropdown': ErrorShownBasicSearchDropdownAttributesType;
|
|
168
|
+
/**
|
|
169
|
+
* Fired when the basic filter dropdown is opened */
|
|
170
|
+
'ui.dropdown.opened.basicSearchDropdown': DropdownOpenedBasicSearchDropdownAttributesType;
|
|
164
171
|
/**
|
|
165
172
|
* Fired when search is initiated via the search icon or enter key press for aql editor input field. */
|
|
166
173
|
'ui.aqlEditor.searched': AqlEditorSearchedAttributesType;
|
|
@@ -1,3 +1,10 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
1
|
+
import { BasicFilterFieldType, SelectOption } from '../types';
|
|
2
|
+
export interface HydrateJqlState {
|
|
3
|
+
hydratedOptions: {
|
|
4
|
+
[key in BasicFilterFieldType]?: SelectOption[];
|
|
5
|
+
};
|
|
6
|
+
fetchHydratedJqlOptions: () => Promise<void>;
|
|
7
|
+
status: 'empty' | 'loading' | 'resolved' | 'rejected';
|
|
8
|
+
errors: unknown[];
|
|
9
|
+
}
|
|
10
|
+
export declare const useHydrateJqlQuery: (cloudId: string, jql: string) => HydrateJqlState;
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@atlaskit/link-datasource",
|
|
3
|
-
"version": "1.17.
|
|
3
|
+
"version": "1.17.6",
|
|
4
4
|
"description": "UI Components to support linking platform dataset feature",
|
|
5
5
|
"publishConfig": {
|
|
6
6
|
"registry": "https://registry.npmjs.org/"
|
|
@@ -30,7 +30,7 @@
|
|
|
30
30
|
"analytics:codegen": "yarn workspace @atlassian/analytics-tooling run analytics:codegen link-datasource --output ./src/analytics/generated"
|
|
31
31
|
},
|
|
32
32
|
"dependencies": {
|
|
33
|
-
"@atlaskit/adf-schema": "^
|
|
33
|
+
"@atlaskit/adf-schema": "^33.2.3",
|
|
34
34
|
"@atlaskit/analytics-next": "^9.1.3",
|
|
35
35
|
"@atlaskit/avatar": "^21.4.0",
|
|
36
36
|
"@atlaskit/badge": "^15.1.16",
|
|
@@ -56,9 +56,9 @@
|
|
|
56
56
|
"@atlaskit/pragmatic-drag-and-drop-react-beautiful-dnd-autoscroll": "^0.6.0",
|
|
57
57
|
"@atlaskit/pragmatic-drag-and-drop-react-indicator": "^0.17.0",
|
|
58
58
|
"@atlaskit/primitives": "^1.10.0",
|
|
59
|
-
"@atlaskit/select": "^
|
|
59
|
+
"@atlaskit/select": "^17.0.0",
|
|
60
60
|
"@atlaskit/smart-card": "^26.42.0",
|
|
61
|
-
"@atlaskit/spinner": "^
|
|
61
|
+
"@atlaskit/spinner": "^16.0.0",
|
|
62
62
|
"@atlaskit/tag": "^12.0.0",
|
|
63
63
|
"@atlaskit/textfield": "5.6.8",
|
|
64
64
|
"@atlaskit/theme": "^12.6.0",
|