@atlaskit/link-datasource 1.27.4 → 1.28.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 +12 -0
- package/dist/cjs/services/mocks.js +152 -1
- package/dist/cjs/services/useBasicFilterAGG.js +9 -2
- package/dist/cjs/services/utils.js +3 -2
- package/dist/cjs/ui/common/modal/popup-select/formatOptionLabel.js +6 -3
- package/dist/cjs/ui/common/modal/popup-select/index.js +2 -1
- package/dist/cjs/ui/common/modal/popup-select/trigger.js +1 -2
- package/dist/cjs/ui/confluence-search-modal/basic-filters/filters/date-range-picker/PopupComponent.js +19 -0
- package/dist/cjs/ui/confluence-search-modal/basic-filters/filters/date-range-picker/index.js +89 -0
- package/dist/cjs/ui/confluence-search-modal/basic-filters/filters/date-range-picker/messages.js +49 -0
- package/dist/cjs/ui/confluence-search-modal/basic-filters/filters/date-range-picker/styled.js +75 -0
- package/dist/cjs/ui/confluence-search-modal/basic-filters/filters/date-range-picker/trigger.js +32 -0
- package/dist/cjs/ui/confluence-search-modal/basic-filters/filters/edited-or-created-by/index.js +110 -0
- package/dist/cjs/ui/confluence-search-modal/basic-filters/filters/edited-or-created-by/messages.js +14 -0
- package/dist/cjs/ui/confluence-search-modal/basic-filters/hooks/useCurrentUserInfo.js +48 -0
- package/dist/cjs/ui/confluence-search-modal/basic-filters/hooks/useRecommendation.js +120 -0
- package/dist/cjs/ui/confluence-search-modal/basic-filters/index.js +14 -3
- package/dist/cjs/ui/confluence-search-modal/basic-filters/types.js +11 -0
- package/dist/cjs/ui/confluence-search-modal/confluence-search-container/index.js +25 -1
- package/dist/cjs/ui/confluence-search-modal/modal/index.js +41 -11
- package/dist/cjs/ui/datasource-table-view/datasourceTableView.js +1 -0
- package/dist/cjs/ui/table-footer/index.js +8 -2
- package/dist/cjs/ui/table-footer/messages.js +5 -0
- package/dist/cjs/ui/table-footer/powered-by-jsm-assets/index.js +53 -0
- package/dist/es2019/services/mocks.js +151 -0
- package/dist/es2019/services/useBasicFilterAGG.js +8 -3
- package/dist/es2019/services/utils.js +8 -0
- package/dist/es2019/ui/common/modal/popup-select/formatOptionLabel.js +6 -3
- package/dist/es2019/ui/common/modal/popup-select/index.js +1 -1
- package/dist/es2019/ui/common/modal/popup-select/trigger.js +1 -2
- package/dist/es2019/ui/confluence-search-modal/basic-filters/filters/date-range-picker/PopupComponent.js +7 -0
- package/dist/es2019/ui/confluence-search-modal/basic-filters/filters/date-range-picker/index.js +68 -0
- package/dist/es2019/ui/confluence-search-modal/basic-filters/filters/date-range-picker/messages.js +43 -0
- package/dist/es2019/ui/confluence-search-modal/basic-filters/filters/date-range-picker/styled.js +66 -0
- package/dist/es2019/ui/confluence-search-modal/basic-filters/filters/date-range-picker/trigger.js +26 -0
- package/dist/es2019/ui/confluence-search-modal/basic-filters/filters/edited-or-created-by/index.js +82 -0
- package/dist/es2019/ui/confluence-search-modal/basic-filters/filters/edited-or-created-by/messages.js +8 -0
- package/dist/es2019/ui/confluence-search-modal/basic-filters/hooks/useCurrentUserInfo.js +25 -0
- package/dist/es2019/ui/confluence-search-modal/basic-filters/hooks/useRecommendation.js +74 -0
- package/dist/es2019/ui/confluence-search-modal/basic-filters/index.js +17 -2
- package/dist/es2019/ui/confluence-search-modal/basic-filters/types.js +5 -0
- package/dist/es2019/ui/confluence-search-modal/confluence-search-container/index.js +20 -1
- package/dist/es2019/ui/confluence-search-modal/modal/index.js +27 -3
- package/dist/es2019/ui/datasource-table-view/datasourceTableView.js +1 -0
- package/dist/es2019/ui/table-footer/index.js +7 -1
- package/dist/es2019/ui/table-footer/messages.js +5 -0
- package/dist/es2019/ui/table-footer/powered-by-jsm-assets/index.js +45 -0
- package/dist/esm/services/mocks.js +151 -0
- package/dist/esm/services/useBasicFilterAGG.js +10 -3
- package/dist/esm/services/utils.js +2 -1
- package/dist/esm/ui/common/modal/popup-select/formatOptionLabel.js +6 -3
- package/dist/esm/ui/common/modal/popup-select/index.js +2 -1
- package/dist/esm/ui/common/modal/popup-select/trigger.js +1 -2
- package/dist/esm/ui/confluence-search-modal/basic-filters/filters/date-range-picker/PopupComponent.js +9 -0
- package/dist/esm/ui/confluence-search-modal/basic-filters/filters/date-range-picker/index.js +79 -0
- package/dist/esm/ui/confluence-search-modal/basic-filters/filters/date-range-picker/messages.js +43 -0
- package/dist/esm/ui/confluence-search-modal/basic-filters/filters/date-range-picker/styled.js +68 -0
- package/dist/esm/ui/confluence-search-modal/basic-filters/filters/date-range-picker/trigger.js +25 -0
- package/dist/esm/ui/confluence-search-modal/basic-filters/filters/edited-or-created-by/index.js +100 -0
- package/dist/esm/ui/confluence-search-modal/basic-filters/filters/edited-or-created-by/messages.js +8 -0
- package/dist/esm/ui/confluence-search-modal/basic-filters/hooks/useCurrentUserInfo.js +41 -0
- package/dist/esm/ui/confluence-search-modal/basic-filters/hooks/useRecommendation.js +113 -0
- package/dist/esm/ui/confluence-search-modal/basic-filters/index.js +14 -3
- package/dist/esm/ui/confluence-search-modal/basic-filters/types.js +5 -0
- package/dist/esm/ui/confluence-search-modal/confluence-search-container/index.js +25 -1
- package/dist/esm/ui/confluence-search-modal/modal/index.js +41 -11
- package/dist/esm/ui/datasource-table-view/datasourceTableView.js +1 -0
- package/dist/esm/ui/table-footer/index.js +8 -2
- package/dist/esm/ui/table-footer/messages.js +5 -0
- package/dist/esm/ui/table-footer/powered-by-jsm-assets/index.js +46 -0
- package/dist/types/analytics/generated/analytics.types.d.ts +7 -0
- package/dist/types/services/mocks.d.ts +51 -0
- package/dist/types/services/useBasicFilterAGG.d.ts +2 -0
- package/dist/types/services/utils.d.ts +1 -0
- package/dist/types/ui/common/modal/popup-select/index.d.ts +1 -1
- package/dist/types/ui/common/modal/popup-select/types.d.ts +6 -1
- package/dist/types/ui/confluence-search-modal/basic-filters/filters/date-range-picker/PopupComponent.d.ts +3 -0
- package/dist/types/ui/confluence-search-modal/basic-filters/filters/date-range-picker/index.d.ts +8 -0
- package/dist/types/ui/confluence-search-modal/basic-filters/filters/date-range-picker/messages.d.ts +42 -0
- package/dist/types/ui/confluence-search-modal/basic-filters/filters/date-range-picker/styled.d.ts +31 -0
- package/dist/types/ui/confluence-search-modal/basic-filters/filters/date-range-picker/trigger.d.ts +10 -0
- package/dist/types/ui/confluence-search-modal/basic-filters/filters/edited-or-created-by/index.d.ts +10 -0
- package/dist/types/ui/confluence-search-modal/basic-filters/filters/edited-or-created-by/messages.d.ts +7 -0
- package/dist/types/ui/confluence-search-modal/basic-filters/hooks/useCurrentUserInfo.d.ts +7 -0
- package/dist/types/ui/confluence-search-modal/basic-filters/hooks/useRecommendation.d.ts +16 -0
- package/dist/types/ui/confluence-search-modal/basic-filters/index.d.ts +6 -1
- package/dist/types/ui/confluence-search-modal/basic-filters/types.d.ts +20 -0
- package/dist/types/ui/confluence-search-modal/confluence-search-container/index.d.ts +2 -1
- package/dist/types/ui/confluence-search-modal/types.d.ts +2 -1
- package/dist/types/ui/table-footer/index.d.ts +2 -1
- package/dist/types/ui/table-footer/messages.d.ts +5 -0
- package/dist/types/ui/table-footer/powered-by-jsm-assets/index.d.ts +4 -0
- package/dist/types-ts4.5/analytics/generated/analytics.types.d.ts +7 -0
- package/dist/types-ts4.5/services/mocks.d.ts +51 -0
- package/dist/types-ts4.5/services/useBasicFilterAGG.d.ts +2 -0
- package/dist/types-ts4.5/services/utils.d.ts +1 -0
- package/dist/types-ts4.5/ui/common/modal/popup-select/index.d.ts +1 -1
- package/dist/types-ts4.5/ui/common/modal/popup-select/types.d.ts +6 -1
- package/dist/types-ts4.5/ui/confluence-search-modal/basic-filters/filters/date-range-picker/PopupComponent.d.ts +3 -0
- package/dist/types-ts4.5/ui/confluence-search-modal/basic-filters/filters/date-range-picker/index.d.ts +8 -0
- package/dist/types-ts4.5/ui/confluence-search-modal/basic-filters/filters/date-range-picker/messages.d.ts +42 -0
- package/dist/types-ts4.5/ui/confluence-search-modal/basic-filters/filters/date-range-picker/styled.d.ts +31 -0
- package/dist/types-ts4.5/ui/confluence-search-modal/basic-filters/filters/date-range-picker/trigger.d.ts +10 -0
- package/dist/types-ts4.5/ui/confluence-search-modal/basic-filters/filters/edited-or-created-by/index.d.ts +10 -0
- package/dist/types-ts4.5/ui/confluence-search-modal/basic-filters/filters/edited-or-created-by/messages.d.ts +7 -0
- package/dist/types-ts4.5/ui/confluence-search-modal/basic-filters/hooks/useCurrentUserInfo.d.ts +7 -0
- package/dist/types-ts4.5/ui/confluence-search-modal/basic-filters/hooks/useRecommendation.d.ts +16 -0
- package/dist/types-ts4.5/ui/confluence-search-modal/basic-filters/index.d.ts +6 -1
- package/dist/types-ts4.5/ui/confluence-search-modal/basic-filters/types.d.ts +20 -0
- package/dist/types-ts4.5/ui/confluence-search-modal/confluence-search-container/index.d.ts +2 -1
- package/dist/types-ts4.5/ui/confluence-search-modal/types.d.ts +2 -1
- package/dist/types-ts4.5/ui/table-footer/index.d.ts +2 -1
- package/dist/types-ts4.5/ui/table-footer/messages.d.ts +5 -0
- package/dist/types-ts4.5/ui/table-footer/powered-by-jsm-assets/index.d.ts +4 -0
- package/examples-helpers/buildAssetsIssuesTable.tsx +71 -0
- package/examples-helpers/useAssetsTableProps.tsx +57 -0
- package/package.json +8 -2
|
@@ -0,0 +1,48 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
4
|
+
Object.defineProperty(exports, "__esModule", {
|
|
5
|
+
value: true
|
|
6
|
+
});
|
|
7
|
+
exports.useCurrentUserInfo = void 0;
|
|
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 useCurrentUserInfo = exports.useCurrentUserInfo = function useCurrentUserInfo() {
|
|
14
|
+
var _useState = (0, _react.useState)(),
|
|
15
|
+
_useState2 = (0, _slicedToArray2.default)(_useState, 2),
|
|
16
|
+
user = _useState2[0],
|
|
17
|
+
setUser = _useState2[1];
|
|
18
|
+
var _useBasicFilterAGG = (0, _useBasicFilterAGG2.useBasicFilterAGG)(),
|
|
19
|
+
getCurrentUserInfoFromAGG = _useBasicFilterAGG.getCurrentUserInfo;
|
|
20
|
+
var getCurrentUserInfo = (0, _react.useCallback)( /*#__PURE__*/(0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee() {
|
|
21
|
+
var _user$data;
|
|
22
|
+
var user, _user$data2;
|
|
23
|
+
return _regenerator.default.wrap(function _callee$(_context) {
|
|
24
|
+
while (1) switch (_context.prev = _context.next) {
|
|
25
|
+
case 0:
|
|
26
|
+
_context.next = 2;
|
|
27
|
+
return getCurrentUserInfoFromAGG();
|
|
28
|
+
case 2:
|
|
29
|
+
user = _context.sent;
|
|
30
|
+
if (user !== null && user !== void 0 && (_user$data = user.data) !== null && _user$data !== void 0 && _user$data.me.user) {
|
|
31
|
+
setUser((_user$data2 = user.data) === null || _user$data2 === void 0 ? void 0 : _user$data2.me.user);
|
|
32
|
+
} else {
|
|
33
|
+
setUser(undefined);
|
|
34
|
+
}
|
|
35
|
+
case 4:
|
|
36
|
+
case "end":
|
|
37
|
+
return _context.stop();
|
|
38
|
+
}
|
|
39
|
+
}, _callee);
|
|
40
|
+
})), [getCurrentUserInfoFromAGG]);
|
|
41
|
+
(0, _react.useEffect)(function () {
|
|
42
|
+
getCurrentUserInfo();
|
|
43
|
+
}, [getCurrentUserInfo]);
|
|
44
|
+
return {
|
|
45
|
+
user: user,
|
|
46
|
+
getCurrentUserInfo: getCurrentUserInfo
|
|
47
|
+
};
|
|
48
|
+
};
|
|
@@ -0,0 +1,120 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
4
|
+
Object.defineProperty(exports, "__esModule", {
|
|
5
|
+
value: true
|
|
6
|
+
});
|
|
7
|
+
exports.default = void 0;
|
|
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 _reactIntlNext = require("react-intl-next");
|
|
13
|
+
var _smartUserPicker = require("@atlaskit/smart-user-picker");
|
|
14
|
+
var useRecommendation = function useRecommendation() {
|
|
15
|
+
var intl = (0, _reactIntlNext.useIntl)();
|
|
16
|
+
var _useState = (0, _react.useState)([]),
|
|
17
|
+
_useState2 = (0, _slicedToArray2.default)(_useState, 2),
|
|
18
|
+
filterOptions = _useState2[0],
|
|
19
|
+
setFilterOptions = _useState2[1];
|
|
20
|
+
var _useState3 = (0, _react.useState)('empty'),
|
|
21
|
+
_useState4 = (0, _slicedToArray2.default)(_useState3, 2),
|
|
22
|
+
status = _useState4[0],
|
|
23
|
+
setStatus = _useState4[1];
|
|
24
|
+
var _useState5 = (0, _react.useState)([]),
|
|
25
|
+
_useState6 = (0, _slicedToArray2.default)(_useState5, 2),
|
|
26
|
+
errors = _useState6[0],
|
|
27
|
+
setErrors = _useState6[1];
|
|
28
|
+
var initialData = (0, _react.useRef)();
|
|
29
|
+
var convertRecommendationsToFilterOptions = function convertRecommendationsToFilterOptions(recommendations) {
|
|
30
|
+
return recommendations.map(function (item) {
|
|
31
|
+
return {
|
|
32
|
+
optionType: 'avatarLabel',
|
|
33
|
+
label: item.name,
|
|
34
|
+
value: item.id,
|
|
35
|
+
avatar: item.avatarUrl
|
|
36
|
+
};
|
|
37
|
+
});
|
|
38
|
+
};
|
|
39
|
+
var fetchFilterOptions = (0, _react.useCallback)( /*#__PURE__*/function () {
|
|
40
|
+
var _ref2 = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee(_ref) {
|
|
41
|
+
var userId, cloudId, searchTerm, requestParams, initialResponseData, isRequestLikeInitialSearch, recommendations;
|
|
42
|
+
return _regenerator.default.wrap(function _callee$(_context) {
|
|
43
|
+
while (1) switch (_context.prev = _context.next) {
|
|
44
|
+
case 0:
|
|
45
|
+
userId = _ref.userId, cloudId = _ref.cloudId, searchTerm = _ref.searchTerm;
|
|
46
|
+
setStatus('loading');
|
|
47
|
+
requestParams = {
|
|
48
|
+
context: {
|
|
49
|
+
contextType: 'contributors',
|
|
50
|
+
principalId: userId || '',
|
|
51
|
+
productAttributes: {
|
|
52
|
+
isEntitledConfluenceExternalCollaborator: true
|
|
53
|
+
},
|
|
54
|
+
productKey: 'confluence',
|
|
55
|
+
siteId: cloudId
|
|
56
|
+
},
|
|
57
|
+
includeGroups: false,
|
|
58
|
+
includeTeams: false,
|
|
59
|
+
includeUsers: true,
|
|
60
|
+
maxNumberOfResults: 10,
|
|
61
|
+
performSearchQueryOnly: false,
|
|
62
|
+
query: searchTerm
|
|
63
|
+
};
|
|
64
|
+
initialResponseData = initialData.current;
|
|
65
|
+
isRequestLikeInitialSearch = !searchTerm;
|
|
66
|
+
_context.prev = 5;
|
|
67
|
+
if (!(isRequestLikeInitialSearch && initialResponseData)) {
|
|
68
|
+
_context.next = 10;
|
|
69
|
+
break;
|
|
70
|
+
}
|
|
71
|
+
_context.t0 = initialResponseData;
|
|
72
|
+
_context.next = 13;
|
|
73
|
+
break;
|
|
74
|
+
case 10:
|
|
75
|
+
_context.next = 12;
|
|
76
|
+
return (0, _smartUserPicker.getUserRecommendations)(requestParams, intl);
|
|
77
|
+
case 12:
|
|
78
|
+
_context.t0 = _context.sent;
|
|
79
|
+
case 13:
|
|
80
|
+
recommendations = _context.t0;
|
|
81
|
+
setFilterOptions(convertRecommendationsToFilterOptions(recommendations));
|
|
82
|
+
setStatus('resolved');
|
|
83
|
+
if (!searchTerm) {
|
|
84
|
+
/**
|
|
85
|
+
* The initial dataset is used in couple of paths, eg: when a user searches and clears the search text.
|
|
86
|
+
* During these times, we dont want to fetch data again and again, hence a mini cache setup to store and provide the initial dataset
|
|
87
|
+
*/
|
|
88
|
+
initialData.current = recommendations;
|
|
89
|
+
}
|
|
90
|
+
_context.next = 23;
|
|
91
|
+
break;
|
|
92
|
+
case 19:
|
|
93
|
+
_context.prev = 19;
|
|
94
|
+
_context.t1 = _context["catch"](5);
|
|
95
|
+
setStatus('rejected');
|
|
96
|
+
setErrors([_context.t1]);
|
|
97
|
+
case 23:
|
|
98
|
+
case "end":
|
|
99
|
+
return _context.stop();
|
|
100
|
+
}
|
|
101
|
+
}, _callee, null, [[5, 19]]);
|
|
102
|
+
}));
|
|
103
|
+
return function (_x) {
|
|
104
|
+
return _ref2.apply(this, arguments);
|
|
105
|
+
};
|
|
106
|
+
}(), [intl]);
|
|
107
|
+
var reset = (0, _react.useCallback)(function () {
|
|
108
|
+
setStatus('empty');
|
|
109
|
+
setFilterOptions([]);
|
|
110
|
+
setErrors([]);
|
|
111
|
+
}, []);
|
|
112
|
+
return {
|
|
113
|
+
status: status,
|
|
114
|
+
errors: errors,
|
|
115
|
+
filterOptions: filterOptions,
|
|
116
|
+
reset: reset,
|
|
117
|
+
fetchFilterOptions: fetchFilterOptions
|
|
118
|
+
};
|
|
119
|
+
};
|
|
120
|
+
var _default = exports.default = useRecommendation;
|
|
@@ -5,18 +5,29 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
5
5
|
value: true
|
|
6
6
|
});
|
|
7
7
|
exports.default = void 0;
|
|
8
|
-
var _objectDestructuringEmpty2 = _interopRequireDefault(require("@babel/runtime/helpers/objectDestructuringEmpty"));
|
|
9
8
|
var _react = _interopRequireDefault(require("react"));
|
|
10
9
|
var _primitives = require("@atlaskit/primitives");
|
|
10
|
+
var _dateRangePicker = require("./filters/date-range-picker");
|
|
11
|
+
var _editedOrCreatedBy = _interopRequireDefault(require("./filters/edited-or-created-by"));
|
|
11
12
|
var basicFilterContainerStyles = (0, _primitives.xcss)({
|
|
12
13
|
paddingLeft: 'space.100'
|
|
13
14
|
});
|
|
14
15
|
var BasicFilterContainer = function BasicFilterContainer(_ref) {
|
|
15
|
-
|
|
16
|
+
var cloudId = _ref.cloudId,
|
|
17
|
+
onChange = _ref.onChange,
|
|
18
|
+
_ref$selections = _ref.selections,
|
|
19
|
+
selections = _ref$selections === void 0 ? {} : _ref$selections;
|
|
20
|
+
var editedOrCreatedBy = selections.editedOrCreatedBy;
|
|
16
21
|
return /*#__PURE__*/_react.default.createElement(_primitives.Flex, {
|
|
17
22
|
xcss: basicFilterContainerStyles,
|
|
18
23
|
gap: "space.100",
|
|
19
24
|
testId: "clol-basic-filter-container"
|
|
20
|
-
}, /*#__PURE__*/_react.default.createElement(
|
|
25
|
+
}, /*#__PURE__*/_react.default.createElement(_editedOrCreatedBy.default, {
|
|
26
|
+
cloudId: cloudId,
|
|
27
|
+
onSelectionChange: onChange,
|
|
28
|
+
selection: editedOrCreatedBy || []
|
|
29
|
+
}), /*#__PURE__*/_react.default.createElement(_dateRangePicker.DateRangePicker, {
|
|
30
|
+
onSelectionChange: onChange
|
|
31
|
+
}));
|
|
21
32
|
};
|
|
22
33
|
var _default = exports.default = BasicFilterContainer;
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.CLOLBasicFilters = void 0;
|
|
7
|
+
var CLOLBasicFilters = exports.CLOLBasicFilters = /*#__PURE__*/function (CLOLBasicFilters) {
|
|
8
|
+
CLOLBasicFilters["editedOrCreatedBy"] = "editedOrCreatedBy";
|
|
9
|
+
CLOLBasicFilters["lastModified"] = "lastModified";
|
|
10
|
+
return CLOLBasicFilters;
|
|
11
|
+
}({});
|
|
@@ -6,15 +6,20 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
6
6
|
value: true
|
|
7
7
|
});
|
|
8
8
|
exports.default = void 0;
|
|
9
|
+
var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
|
|
9
10
|
var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));
|
|
10
11
|
var _react = _interopRequireWildcard(require("react"));
|
|
12
|
+
var _useDebounce = require("use-debounce");
|
|
11
13
|
var _platformFeatureFlags = require("@atlaskit/platform-feature-flags");
|
|
12
14
|
var _primitives = require("@atlaskit/primitives");
|
|
13
15
|
var _basicSearchInput = require("../../common/modal/basic-search-input");
|
|
16
|
+
var _constants = require("../../common/modal/popup-select/constants");
|
|
14
17
|
var _basicFilters = _interopRequireDefault(require("../basic-filters"));
|
|
15
18
|
var _messages = require("./messages");
|
|
16
19
|
function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(e) { return e ? t : r; })(e); }
|
|
17
20
|
function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != _typeof(e) && "function" != typeof e) return { default: e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && Object.prototype.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n.default = e, t && t.set(e, n), n; }
|
|
21
|
+
function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
|
|
22
|
+
function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { (0, _defineProperty2.default)(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
|
|
18
23
|
var basicSearchInputContainerStyles = (0, _primitives.xcss)({
|
|
19
24
|
flexGrow: 1
|
|
20
25
|
});
|
|
@@ -28,16 +33,31 @@ var ConfluenceSearchContainer = function ConfluenceSearchContainer(_ref) {
|
|
|
28
33
|
_useState2 = (0, _slicedToArray2.default)(_useState, 2),
|
|
29
34
|
searchBarSearchString = _useState2[0],
|
|
30
35
|
setSearchBarSearchString = _useState2[1];
|
|
36
|
+
var _useState3 = (0, _react.useState)({}),
|
|
37
|
+
_useState4 = (0, _slicedToArray2.default)(_useState3, 2),
|
|
38
|
+
filterSelections = _useState4[0],
|
|
39
|
+
setFilterSelections = _useState4[1];
|
|
31
40
|
var handleSearchChange = (0, _react.useCallback)(function (e) {
|
|
32
41
|
var rawSearch = e.currentTarget.value;
|
|
33
42
|
setSearchBarSearchString(rawSearch);
|
|
34
43
|
}, []);
|
|
44
|
+
var _useDebouncedCallback = (0, _useDebounce.useDebouncedCallback)(function (filterValues) {
|
|
45
|
+
onSearch(searchBarSearchString, filterValues);
|
|
46
|
+
}, _constants.FILTER_SELECTION_DEBOUNCE_MS),
|
|
47
|
+
_useDebouncedCallback2 = (0, _slicedToArray2.default)(_useDebouncedCallback, 1),
|
|
48
|
+
debouncedBasicFilterSelectionChange = _useDebouncedCallback2[0];
|
|
49
|
+
var handleBasicFilterSelectionChange = (0, _react.useCallback)(function (filterType, options) {
|
|
50
|
+
var updatedSelection = _objectSpread(_objectSpread({}, filterSelections), {}, (0, _defineProperty2.default)({}, filterType, options));
|
|
51
|
+
setFilterSelections(updatedSelection);
|
|
52
|
+
debouncedBasicFilterSelectionChange(updatedSelection);
|
|
53
|
+
}, [debouncedBasicFilterSelectionChange, filterSelections]);
|
|
35
54
|
|
|
36
55
|
// TODO: further refactoring in EDM-9573
|
|
37
56
|
// https://stash.atlassian.com/projects/ATLASSIAN/repos/atlassian-frontend-monorepo/pull-requests/82725/overview?commentId=6827913
|
|
38
57
|
(0, _react.useEffect)(function () {
|
|
39
58
|
if (currentCloudId.current !== cloudId) {
|
|
40
59
|
setSearchBarSearchString('');
|
|
60
|
+
setFilterSelections({});
|
|
41
61
|
currentCloudId.current = cloudId;
|
|
42
62
|
}
|
|
43
63
|
}, [cloudId]);
|
|
@@ -58,6 +78,10 @@ var ConfluenceSearchContainer = function ConfluenceSearchContainer(_ref) {
|
|
|
58
78
|
searchTerm: searchBarSearchString,
|
|
59
79
|
placeholder: _messages.searchMessages.searchLabel,
|
|
60
80
|
fullWidth: !showBasicFilters
|
|
61
|
-
}), showBasicFilters && /*#__PURE__*/_react.default.createElement(_basicFilters.default,
|
|
81
|
+
}), showBasicFilters && /*#__PURE__*/_react.default.createElement(_basicFilters.default, {
|
|
82
|
+
cloudId: cloudId,
|
|
83
|
+
selections: filterSelections,
|
|
84
|
+
onChange: handleBasicFilterSelectionChange
|
|
85
|
+
}));
|
|
62
86
|
};
|
|
63
87
|
var _default = exports.default = ConfluenceSearchContainer;
|
|
@@ -108,6 +108,14 @@ var PlainConfluenceSearchConfigModal = exports.PlainConfluenceSearchConfigModal
|
|
|
108
108
|
_useState10 = (0, _slicedToArray2.default)(_useState9, 2),
|
|
109
109
|
visibleColumnKeys = _useState10[0],
|
|
110
110
|
setVisibleColumnKeys = _useState10[1];
|
|
111
|
+
var _useState11 = (0, _react.useState)(initialParameters === null || initialParameters === void 0 ? void 0 : initialParameters.lastModified),
|
|
112
|
+
_useState12 = (0, _slicedToArray2.default)(_useState11, 2),
|
|
113
|
+
lastModified = _useState12[0],
|
|
114
|
+
setLastModified = _useState12[1];
|
|
115
|
+
var _useState13 = (0, _react.useState)((initialParameters === null || initialParameters === void 0 ? void 0 : initialParameters.contributorAccountIds) || []),
|
|
116
|
+
_useState14 = (0, _slicedToArray2.default)(_useState13, 2),
|
|
117
|
+
contributorAccountIds = _useState14[0],
|
|
118
|
+
setContributorAccountIds = _useState14[1];
|
|
111
119
|
|
|
112
120
|
// analytics related parameters
|
|
113
121
|
var searchCount = (0, _react.useRef)(0);
|
|
@@ -117,11 +125,15 @@ var PlainConfluenceSearchConfigModal = exports.PlainConfluenceSearchConfigModal
|
|
|
117
125
|
// TODO: further refactoring in EDM-9573
|
|
118
126
|
// https://stash.atlassian.com/projects/ATLASSIAN/repos/atlassian-frontend-monorepo/pull-requests/82725/overview?commentId=6829210
|
|
119
127
|
var parameters = (0, _react.useMemo)(function () {
|
|
120
|
-
return _objectSpread(_objectSpread({}, initialParameters), {}, {
|
|
128
|
+
return _objectSpread(_objectSpread(_objectSpread({}, initialParameters), {}, {
|
|
121
129
|
cloudId: cloudId,
|
|
122
130
|
searchString: searchString
|
|
131
|
+
}, ((initialParameters === null || initialParameters === void 0 ? void 0 : initialParameters.lastModified) || lastModified) && {
|
|
132
|
+
lastModified: lastModified
|
|
133
|
+
}), ((initialParameters === null || initialParameters === void 0 ? void 0 : initialParameters.contributorAccountIds) || (contributorAccountIds === null || contributorAccountIds === void 0 ? void 0 : contributorAccountIds.length) > 0) && {
|
|
134
|
+
contributorAccountIds: contributorAccountIds
|
|
123
135
|
});
|
|
124
|
-
}, [cloudId, initialParameters, searchString /** Add more parameters when more filters are added */]);
|
|
136
|
+
}, [cloudId, lastModified, contributorAccountIds, initialParameters, searchString /** Add more parameters when more filters are added */]);
|
|
125
137
|
var isParametersSet = (0, _react.useMemo)(function () {
|
|
126
138
|
return !!cloudId && Object.values(parameters !== null && parameters !== void 0 ? parameters : {}).filter(function (v) {
|
|
127
139
|
return v !== undefined;
|
|
@@ -185,6 +197,8 @@ var PlainConfluenceSearchConfigModal = exports.PlainConfluenceSearchConfigModal
|
|
|
185
197
|
var onSiteSelection = (0, _react.useCallback)(function (site) {
|
|
186
198
|
userInteractionActions.current.add(_types.DatasourceAction.INSTANCE_UPDATED);
|
|
187
199
|
setSearchString(undefined);
|
|
200
|
+
setLastModified(undefined);
|
|
201
|
+
setContributorAccountIds([]);
|
|
188
202
|
setCloudId(site.cloudId);
|
|
189
203
|
reset({
|
|
190
204
|
shouldForceRequest: true
|
|
@@ -227,17 +241,17 @@ var PlainConfluenceSearchConfigModal = exports.PlainConfluenceSearchConfigModal
|
|
|
227
241
|
setVisibleColumnKeys(newVisibleColumnKeys);
|
|
228
242
|
}, [initialVisibleColumnKeys, defaultVisibleColumnKeys]);
|
|
229
243
|
var siteSelectorLabel = availableSites && availableSites.length > 1 ? _messages.confluenceSearchModalMessages.insertIssuesTitleManySites : _messages.confluenceSearchModalMessages.insertIssuesTitle;
|
|
230
|
-
var
|
|
231
|
-
|
|
232
|
-
columnCustomSizes =
|
|
233
|
-
setColumnCustomSizes =
|
|
244
|
+
var _useState15 = (0, _react.useState)(initialColumnCustomSizes),
|
|
245
|
+
_useState16 = (0, _slicedToArray2.default)(_useState15, 2),
|
|
246
|
+
columnCustomSizes = _useState16[0],
|
|
247
|
+
setColumnCustomSizes = _useState16[1];
|
|
234
248
|
var onColumnResize = (0, _react.useCallback)(function (key, width) {
|
|
235
249
|
setColumnCustomSizes(_objectSpread(_objectSpread({}, columnCustomSizes), {}, (0, _defineProperty2.default)({}, key, width)));
|
|
236
250
|
}, [columnCustomSizes]);
|
|
237
|
-
var
|
|
238
|
-
|
|
239
|
-
wrappedColumnKeys =
|
|
240
|
-
setWrappedColumnKeys =
|
|
251
|
+
var _useState17 = (0, _react.useState)(initialWrappedColumnKeys),
|
|
252
|
+
_useState18 = (0, _slicedToArray2.default)(_useState17, 2),
|
|
253
|
+
wrappedColumnKeys = _useState18[0],
|
|
254
|
+
setWrappedColumnKeys = _useState18[1];
|
|
241
255
|
var onWrappedColumnChange = (0, _react.useCallback)(function (key, isWrapped) {
|
|
242
256
|
var set = new Set(wrappedColumnKeys);
|
|
243
257
|
if (isWrapped) {
|
|
@@ -416,9 +430,25 @@ var PlainConfluenceSearchConfigModal = exports.PlainConfluenceSearchConfigModal
|
|
|
416
430
|
userInteractionActions.current.add(_types.DatasourceAction.DISPLAY_VIEW_CHANGED);
|
|
417
431
|
setCurrentViewMode(selectedMode);
|
|
418
432
|
};
|
|
419
|
-
var onSearch = (0, _react.useCallback)(function (newSearchString) {
|
|
433
|
+
var onSearch = (0, _react.useCallback)(function (newSearchString, filters) {
|
|
420
434
|
searchCount.current++;
|
|
421
435
|
userInteractionActions.current.add(_types.DatasourceAction.QUERY_UPDATED);
|
|
436
|
+
if (filters) {
|
|
437
|
+
var editedOrCreatedBy = filters.editedOrCreatedBy,
|
|
438
|
+
_lastModified = filters.lastModified;
|
|
439
|
+
if (_lastModified) {
|
|
440
|
+
var lastModifiedValue = _lastModified.find(function (range) {
|
|
441
|
+
return range.value;
|
|
442
|
+
});
|
|
443
|
+
setLastModified(lastModifiedValue === null || lastModifiedValue === void 0 ? void 0 : lastModifiedValue.value);
|
|
444
|
+
}
|
|
445
|
+
if (editedOrCreatedBy) {
|
|
446
|
+
var accountIds = editedOrCreatedBy.map(function (user) {
|
|
447
|
+
return user.value;
|
|
448
|
+
});
|
|
449
|
+
setContributorAccountIds(accountIds);
|
|
450
|
+
}
|
|
451
|
+
}
|
|
422
452
|
setSearchString(newSearchString);
|
|
423
453
|
reset({
|
|
424
454
|
shouldForceRequest: true
|
|
@@ -178,6 +178,7 @@ var DatasourceTableViewWithoutAnalytics = function DatasourceTableViewWithoutAna
|
|
|
178
178
|
testId: "datasource-table-view-skeleton",
|
|
179
179
|
isCompact: true
|
|
180
180
|
}), (0, _react2.jsx)(_tableFooter.TableFooter, {
|
|
181
|
+
datasourceId: datasourceId,
|
|
181
182
|
itemCount: isDataReady ? totalCount : undefined,
|
|
182
183
|
onRefresh: onRefresh,
|
|
183
184
|
isLoading: !isDataReady || status === 'loading',
|
|
@@ -14,9 +14,12 @@ var _reactIntlNext = require("react-intl-next");
|
|
|
14
14
|
var _button = _interopRequireDefault(require("@atlaskit/button"));
|
|
15
15
|
var _heading = _interopRequireDefault(require("@atlaskit/heading"));
|
|
16
16
|
var _refresh = _interopRequireDefault(require("@atlaskit/icon/glyph/refresh"));
|
|
17
|
+
var _platformFeatureFlags = require("@atlaskit/platform-feature-flags");
|
|
17
18
|
var _linkUrl = _interopRequireDefault(require("@atlaskit/smart-card/link-url"));
|
|
18
19
|
var _colors = require("@atlaskit/theme/colors");
|
|
20
|
+
var _assetsModal = require("../assets-modal");
|
|
19
21
|
var _messages = require("./messages");
|
|
22
|
+
var _poweredByJsmAssets = require("./powered-by-jsm-assets");
|
|
20
23
|
var _syncInfo = require("./sync-info");
|
|
21
24
|
/** @jsx jsx */
|
|
22
25
|
|
|
@@ -49,7 +52,8 @@ var SyncTextWrapper = _styled.default.div({
|
|
|
49
52
|
fontSize: '12px'
|
|
50
53
|
});
|
|
51
54
|
var TableFooter = exports.TableFooter = function TableFooter(_ref) {
|
|
52
|
-
var
|
|
55
|
+
var datasourceId = _ref.datasourceId,
|
|
56
|
+
itemCount = _ref.itemCount,
|
|
53
57
|
onRefresh = _ref.onRefresh,
|
|
54
58
|
isLoading = _ref.isLoading,
|
|
55
59
|
url = _ref.url;
|
|
@@ -88,7 +92,9 @@ var TableFooter = exports.TableFooter = function TableFooter(_ref) {
|
|
|
88
92
|
values: {
|
|
89
93
|
itemCount: itemCount
|
|
90
94
|
}
|
|
91
|
-
}))))), (0,
|
|
95
|
+
}))))), (0, _platformFeatureFlags.getBooleanFF)('platform.linking-platform.datasource-assets_objects_add_jsm_promotional_tag') && datasourceId === _assetsModal.ASSETS_LIST_OF_LINKS_DATASOURCE_ID ? (0, _react2.jsx)(_poweredByJsmAssets.PoweredByJSMAssets, {
|
|
96
|
+
text: intl.formatMessage(_messages.footerMessages.powerByJSM)
|
|
97
|
+
}) : null, (0, _react2.jsx)(SyncWrapper, null, onRefresh && (0, _react2.jsx)(_react.Fragment, null, (0, _react2.jsx)(SyncTextWrapper, {
|
|
92
98
|
"data-testid": "sync-text"
|
|
93
99
|
}, isLoading ? (0, _react2.jsx)(_reactIntlNext.FormattedMessage, _messages.footerMessages.loadingText) : (0, _react2.jsx)(_syncInfo.SyncInfo, {
|
|
94
100
|
lastSyncTime: lastSyncTime
|
|
@@ -20,5 +20,10 @@ var footerMessages = exports.footerMessages = (0, _reactIntlNext.defineMessages)
|
|
|
20
20
|
id: 'linkDataSource.table-footer.refresh',
|
|
21
21
|
description: 'Label for refresh icon',
|
|
22
22
|
defaultMessage: 'Refresh'
|
|
23
|
+
},
|
|
24
|
+
powerByJSM: {
|
|
25
|
+
id: 'linkDataSource.table-footer.power-by-jsm',
|
|
26
|
+
description: 'Displayed on the issue like table footer to increase JSM Assets visibility',
|
|
27
|
+
defaultMessage: 'Powered by Assets in Jira Service Management'
|
|
23
28
|
}
|
|
24
29
|
});
|
|
@@ -0,0 +1,53 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
4
|
+
Object.defineProperty(exports, "__esModule", {
|
|
5
|
+
value: true
|
|
6
|
+
});
|
|
7
|
+
exports.PoweredByJSMAssets = void 0;
|
|
8
|
+
var _react = _interopRequireDefault(require("react"));
|
|
9
|
+
var _logo = require("@atlaskit/logo");
|
|
10
|
+
var _primitives = require("@atlaskit/primitives");
|
|
11
|
+
var _analytics = require("../../../analytics");
|
|
12
|
+
var jsmTextStyles = (0, _primitives.xcss)({
|
|
13
|
+
fontSize: 'small',
|
|
14
|
+
color: 'color.text.subtle',
|
|
15
|
+
marginLeft: "var(--ds-space-075, 6px)",
|
|
16
|
+
':hover': {
|
|
17
|
+
color: 'color.link.pressed'
|
|
18
|
+
}
|
|
19
|
+
});
|
|
20
|
+
var jsmContainerStyles = (0, _primitives.xcss)({
|
|
21
|
+
display: 'flex',
|
|
22
|
+
flexDirection: 'row-reverse'
|
|
23
|
+
});
|
|
24
|
+
var PoweredByJSMAssets = exports.PoweredByJSMAssets = function PoweredByJSMAssets(props) {
|
|
25
|
+
var ASSETS_LINK = '/jira/servicedesk/assets';
|
|
26
|
+
var _useDatasourceAnalyti = (0, _analytics.useDatasourceAnalyticsEvents)(),
|
|
27
|
+
fireEvent = _useDatasourceAnalyti.fireEvent;
|
|
28
|
+
return /*#__PURE__*/_react.default.createElement(_primitives.Box, {
|
|
29
|
+
xcss: jsmContainerStyles,
|
|
30
|
+
padding: "space.150"
|
|
31
|
+
}, /*#__PURE__*/_react.default.createElement("a", {
|
|
32
|
+
"data-testid": 'powered-by-jsm-assets-link',
|
|
33
|
+
onClick: function onClick() {
|
|
34
|
+
return fireEvent('ui.link.clicked.poweredBy', {
|
|
35
|
+
componentHierarchy: 'datasourceTable',
|
|
36
|
+
extensionKey: 'jsm-cmdb-gateway'
|
|
37
|
+
});
|
|
38
|
+
},
|
|
39
|
+
href: ASSETS_LINK,
|
|
40
|
+
rel: "noreferrer",
|
|
41
|
+
target: "_blank",
|
|
42
|
+
style: {
|
|
43
|
+
display: 'inline-flex',
|
|
44
|
+
alignItems: 'center'
|
|
45
|
+
}
|
|
46
|
+
}, /*#__PURE__*/_react.default.createElement(_logo.JiraServiceManagementIcon, {
|
|
47
|
+
size: "xsmall",
|
|
48
|
+
appearance: "brand",
|
|
49
|
+
label: props.text
|
|
50
|
+
}), /*#__PURE__*/_react.default.createElement(_primitives.Box, {
|
|
51
|
+
xcss: jsmTextStyles
|
|
52
|
+
}, props.text)));
|
|
53
|
+
};
|
|
@@ -125,4 +125,155 @@ export const mockFieldValuesResponse = {
|
|
|
125
125
|
}
|
|
126
126
|
}
|
|
127
127
|
}
|
|
128
|
+
};
|
|
129
|
+
export const mockUserRecommendationsResponse = {
|
|
130
|
+
recommendedUsers: [{
|
|
131
|
+
entityType: 'USER',
|
|
132
|
+
id: '5ffe1efc34847e0069446bf8',
|
|
133
|
+
name: 'Atlassian Assist (staging)',
|
|
134
|
+
avatarUrl: '',
|
|
135
|
+
nickname: 'Atlassian Assist (staging)',
|
|
136
|
+
matchPositions: {},
|
|
137
|
+
accessLevel: 'CONTAINER',
|
|
138
|
+
accountStatus: 'ACTIVE',
|
|
139
|
+
notMentionable: false,
|
|
140
|
+
userType: 'APP',
|
|
141
|
+
attributes: {
|
|
142
|
+
isConfluenceExternalCollaborator: false
|
|
143
|
+
}
|
|
144
|
+
}, {
|
|
145
|
+
entityType: 'USER',
|
|
146
|
+
id: '62df272c3aaeedcae755c533',
|
|
147
|
+
name: 'Atlas for Jira (staging)',
|
|
148
|
+
avatarUrl: '',
|
|
149
|
+
nickname: 'Atlas for Jira (staging)',
|
|
150
|
+
matchPositions: {},
|
|
151
|
+
accessLevel: 'CONTAINER',
|
|
152
|
+
accountStatus: 'ACTIVE',
|
|
153
|
+
notMentionable: false,
|
|
154
|
+
userType: 'APP',
|
|
155
|
+
attributes: {
|
|
156
|
+
isConfluenceExternalCollaborator: false
|
|
157
|
+
}
|
|
158
|
+
}, {
|
|
159
|
+
entityType: 'USER',
|
|
160
|
+
id: '6232be743eacc50071fe13ba',
|
|
161
|
+
name: 'Stephen',
|
|
162
|
+
email: 'sdemontfort+10@atlassian.com',
|
|
163
|
+
avatarUrl: '',
|
|
164
|
+
nickname: 'Stephen',
|
|
165
|
+
matchPositions: {},
|
|
166
|
+
accessLevel: 'CONTAINER',
|
|
167
|
+
accountStatus: 'ACTIVE',
|
|
168
|
+
notMentionable: false,
|
|
169
|
+
locale: 'en-GB',
|
|
170
|
+
userType: 'DEFAULT',
|
|
171
|
+
attributes: {
|
|
172
|
+
isConfluenceExternalCollaborator: false
|
|
173
|
+
}
|
|
174
|
+
}, {
|
|
175
|
+
entityType: 'USER',
|
|
176
|
+
id: '608b253e2911000071b6e6d6',
|
|
177
|
+
name: 'Pranay Test 1773',
|
|
178
|
+
email: 'pmarella+1773@atlassian.com',
|
|
179
|
+
avatarUrl: '',
|
|
180
|
+
nickname: 'Pranay Test 1773',
|
|
181
|
+
matchPositions: {},
|
|
182
|
+
accessLevel: 'CONTAINER',
|
|
183
|
+
accountStatus: 'ACTIVE',
|
|
184
|
+
notMentionable: false,
|
|
185
|
+
locale: 'en-US',
|
|
186
|
+
userType: 'DEFAULT',
|
|
187
|
+
attributes: {
|
|
188
|
+
isConfluenceExternalCollaborator: false
|
|
189
|
+
}
|
|
190
|
+
}, {
|
|
191
|
+
entityType: 'USER',
|
|
192
|
+
id: '6202a8cfc4e2c9006ae620b1',
|
|
193
|
+
name: 'Jacob Test3',
|
|
194
|
+
email: 'jbrunson+test3@atlassian.com',
|
|
195
|
+
avatarUrl: '',
|
|
196
|
+
nickname: 'Jacob Test3',
|
|
197
|
+
matchPositions: {},
|
|
198
|
+
accessLevel: 'CONTAINER',
|
|
199
|
+
accountStatus: 'ACTIVE',
|
|
200
|
+
notMentionable: false,
|
|
201
|
+
locale: 'en-US',
|
|
202
|
+
userType: 'DEFAULT',
|
|
203
|
+
attributes: {
|
|
204
|
+
isConfluenceExternalCollaborator: false
|
|
205
|
+
}
|
|
206
|
+
}, {
|
|
207
|
+
entityType: 'USER',
|
|
208
|
+
id: '61428180ff23ba00717b7d78',
|
|
209
|
+
name: 'Test Themes',
|
|
210
|
+
avatarUrl: '',
|
|
211
|
+
nickname: 'Test Themes',
|
|
212
|
+
matchPositions: {},
|
|
213
|
+
accessLevel: 'CONTAINER',
|
|
214
|
+
accountStatus: 'ACTIVE',
|
|
215
|
+
notMentionable: false,
|
|
216
|
+
userType: 'APP',
|
|
217
|
+
attributes: {
|
|
218
|
+
isConfluenceExternalCollaborator: false
|
|
219
|
+
}
|
|
220
|
+
}, {
|
|
221
|
+
entityType: 'USER',
|
|
222
|
+
id: '5d9e2c300d44fc0dca5428bb',
|
|
223
|
+
name: 'Confluence Connect Test - AP methods',
|
|
224
|
+
avatarUrl: '',
|
|
225
|
+
nickname: 'Confluence Connect Test - AP methods',
|
|
226
|
+
matchPositions: {},
|
|
227
|
+
accessLevel: 'CONTAINER',
|
|
228
|
+
accountStatus: 'ACTIVE',
|
|
229
|
+
notMentionable: false,
|
|
230
|
+
userType: 'APP',
|
|
231
|
+
attributes: {
|
|
232
|
+
isConfluenceExternalCollaborator: false
|
|
233
|
+
}
|
|
234
|
+
}, {
|
|
235
|
+
entityType: 'USER',
|
|
236
|
+
id: '655363:1276a696-f0d0-4f3a-a022-636723eb5148',
|
|
237
|
+
name: 'Confluence Google Drive',
|
|
238
|
+
avatarUrl: '',
|
|
239
|
+
nickname: 'Confluence Google Drive',
|
|
240
|
+
matchPositions: {},
|
|
241
|
+
accessLevel: 'CONTAINER',
|
|
242
|
+
accountStatus: 'ACTIVE',
|
|
243
|
+
notMentionable: false,
|
|
244
|
+
userType: 'APP',
|
|
245
|
+
attributes: {
|
|
246
|
+
isConfluenceExternalCollaborator: false
|
|
247
|
+
}
|
|
248
|
+
}, {
|
|
249
|
+
entityType: 'USER',
|
|
250
|
+
id: '712020:413e43c0-7202-4016-a318-a004892e7f8c',
|
|
251
|
+
name: 'arthur chen nth user',
|
|
252
|
+
avatarUrl: '',
|
|
253
|
+
nickname: 'arthur chen nth user',
|
|
254
|
+
matchPositions: {},
|
|
255
|
+
accessLevel: 'CONTAINER',
|
|
256
|
+
accountStatus: 'ACTIVE',
|
|
257
|
+
notMentionable: false,
|
|
258
|
+
locale: 'en-US',
|
|
259
|
+
userType: 'DEFAULT',
|
|
260
|
+
attributes: {
|
|
261
|
+
isConfluenceExternalCollaborator: false
|
|
262
|
+
}
|
|
263
|
+
}, {
|
|
264
|
+
entityType: 'USER',
|
|
265
|
+
id: '712020:9219bf5f-0358-4782-99dc-bc73258b2ddc',
|
|
266
|
+
name: 'jeff mellis',
|
|
267
|
+
avatarUrl: '',
|
|
268
|
+
nickname: 'jeff mellis',
|
|
269
|
+
matchPositions: {},
|
|
270
|
+
accessLevel: 'CONTAINER',
|
|
271
|
+
accountStatus: 'ACTIVE',
|
|
272
|
+
notMentionable: false,
|
|
273
|
+
locale: 'en-US',
|
|
274
|
+
userType: 'DEFAULT',
|
|
275
|
+
attributes: {
|
|
276
|
+
isConfluenceExternalCollaborator: false
|
|
277
|
+
}
|
|
278
|
+
}]
|
|
128
279
|
};
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { useCallback, useMemo } from 'react';
|
|
2
2
|
import { request } from '@atlaskit/linking-common';
|
|
3
|
-
import { fieldValuesQuery, hydrateJQLQuery } from './utils';
|
|
3
|
+
import { fieldValuesQuery, hydrateJQLQuery, userQuery } from './utils';
|
|
4
4
|
const AGG_BASE_URL = '/gateway/api/graphql';
|
|
5
5
|
export const useBasicFilterAGG = () => {
|
|
6
6
|
const requestCall = useCallback(async body => request('post', AGG_BASE_URL, body, {
|
|
@@ -32,8 +32,13 @@ export const useBasicFilterAGG = () => {
|
|
|
32
32
|
operationName: 'fieldValues',
|
|
33
33
|
query: fieldValuesQuery
|
|
34
34
|
}), [requestCall]);
|
|
35
|
+
const getCurrentUserInfo = useCallback(() => requestCall({
|
|
36
|
+
operationName: 'userQuery',
|
|
37
|
+
query: userQuery
|
|
38
|
+
}), [requestCall]);
|
|
35
39
|
return useMemo(() => ({
|
|
36
40
|
getHydratedJQL,
|
|
37
|
-
getFieldValues
|
|
38
|
-
|
|
41
|
+
getFieldValues,
|
|
42
|
+
getCurrentUserInfo
|
|
43
|
+
}), [getHydratedJQL, getFieldValues, getCurrentUserInfo]);
|
|
39
44
|
};
|