@atlaskit/link-datasource 3.13.16 → 3.13.18

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (69) hide show
  1. package/CHANGELOG.md +21 -0
  2. package/dist/cjs/hooks/useLoadOptions.js +20 -9
  3. package/dist/cjs/ui/confluence-search-modal/modal/index.js +8 -27
  4. package/dist/cjs/ui/issue-like-table/edit-type/icon/index.js +4 -1
  5. package/dist/cjs/ui/issue-like-table/edit-type/index.js +9 -4
  6. package/dist/cjs/ui/issue-like-table/edit-type/status/index.js +7 -1
  7. package/dist/cjs/ui/issue-like-table/edit-type/text/index.js +3 -1
  8. package/dist/cjs/ui/issue-like-table/edit-type/user/index.js +7 -1
  9. package/dist/cjs/ui/issue-like-table/index.js +6 -2
  10. package/dist/cjs/ui/issue-like-table/table-cell-content/index.js +5 -0
  11. package/dist/cjs/ui/issue-like-table/table-cell-content/inline-edit.js +31 -2
  12. package/dist/cjs/ui/issue-like-table/table-cell-content/messages.js +14 -0
  13. package/dist/cjs/ui/issue-like-table/utils.js +21 -1
  14. package/dist/cjs/ui/jira-issues-modal/modal/index.js +1 -18
  15. package/dist/es2019/hooks/useLoadOptions.js +15 -4
  16. package/dist/es2019/ui/confluence-search-modal/modal/index.js +12 -35
  17. package/dist/es2019/ui/issue-like-table/edit-type/icon/index.js +4 -1
  18. package/dist/es2019/ui/issue-like-table/edit-type/index.js +9 -4
  19. package/dist/es2019/ui/issue-like-table/edit-type/status/index.js +5 -1
  20. package/dist/es2019/ui/issue-like-table/edit-type/text/index.js +3 -1
  21. package/dist/es2019/ui/issue-like-table/edit-type/user/index.js +5 -1
  22. package/dist/es2019/ui/issue-like-table/index.js +7 -3
  23. package/dist/es2019/ui/issue-like-table/table-cell-content/index.js +5 -0
  24. package/dist/es2019/ui/issue-like-table/table-cell-content/inline-edit.js +33 -3
  25. package/dist/es2019/ui/issue-like-table/table-cell-content/messages.js +8 -0
  26. package/dist/es2019/ui/issue-like-table/utils.js +18 -1
  27. package/dist/es2019/ui/jira-issues-modal/modal/index.js +4 -25
  28. package/dist/esm/hooks/useLoadOptions.js +21 -10
  29. package/dist/esm/ui/confluence-search-modal/modal/index.js +9 -28
  30. package/dist/esm/ui/issue-like-table/edit-type/icon/index.js +4 -1
  31. package/dist/esm/ui/issue-like-table/edit-type/index.js +9 -4
  32. package/dist/esm/ui/issue-like-table/edit-type/status/index.js +7 -1
  33. package/dist/esm/ui/issue-like-table/edit-type/text/index.js +3 -1
  34. package/dist/esm/ui/issue-like-table/edit-type/user/index.js +7 -1
  35. package/dist/esm/ui/issue-like-table/index.js +7 -3
  36. package/dist/esm/ui/issue-like-table/table-cell-content/index.js +5 -0
  37. package/dist/esm/ui/issue-like-table/table-cell-content/inline-edit.js +32 -3
  38. package/dist/esm/ui/issue-like-table/table-cell-content/messages.js +8 -0
  39. package/dist/esm/ui/issue-like-table/utils.js +19 -0
  40. package/dist/esm/ui/jira-issues-modal/modal/index.js +4 -21
  41. package/dist/types/ui/issue-like-table/edit-type/icon/index.d.ts +1 -0
  42. package/dist/types/ui/issue-like-table/edit-type/index.d.ts +2 -1
  43. package/dist/types/ui/issue-like-table/edit-type/status/index.d.ts +1 -0
  44. package/dist/types/ui/issue-like-table/edit-type/text/index.d.ts +1 -0
  45. package/dist/types/ui/issue-like-table/edit-type/user/index.d.ts +1 -0
  46. package/dist/types/ui/issue-like-table/table-cell-content/index.d.ts +2 -1
  47. package/dist/types/ui/issue-like-table/table-cell-content/inline-edit.d.ts +2 -1
  48. package/dist/types/ui/issue-like-table/table-cell-content/messages.d.ts +7 -0
  49. package/dist/types/ui/issue-like-table/utils.d.ts +20 -0
  50. package/dist/types-ts4.5/ui/issue-like-table/edit-type/icon/index.d.ts +1 -0
  51. package/dist/types-ts4.5/ui/issue-like-table/edit-type/index.d.ts +2 -1
  52. package/dist/types-ts4.5/ui/issue-like-table/edit-type/status/index.d.ts +1 -0
  53. package/dist/types-ts4.5/ui/issue-like-table/edit-type/text/index.d.ts +1 -0
  54. package/dist/types-ts4.5/ui/issue-like-table/edit-type/user/index.d.ts +1 -0
  55. package/dist/types-ts4.5/ui/issue-like-table/table-cell-content/index.d.ts +2 -1
  56. package/dist/types-ts4.5/ui/issue-like-table/table-cell-content/inline-edit.d.ts +2 -1
  57. package/dist/types-ts4.5/ui/issue-like-table/table-cell-content/messages.d.ts +7 -0
  58. package/dist/types-ts4.5/ui/issue-like-table/utils.d.ts +20 -0
  59. package/package.json +3 -6
  60. package/dist/cjs/ui/confluence-search-modal/modal/ModalOld.js +0 -455
  61. package/dist/cjs/ui/jira-issues-modal/modal/ModalOld.js +0 -493
  62. package/dist/es2019/ui/confluence-search-modal/modal/ModalOld.js +0 -430
  63. package/dist/es2019/ui/jira-issues-modal/modal/ModalOld.js +0 -476
  64. package/dist/esm/ui/confluence-search-modal/modal/ModalOld.js +0 -451
  65. package/dist/esm/ui/jira-issues-modal/modal/ModalOld.js +0 -490
  66. package/dist/types/ui/confluence-search-modal/modal/ModalOld.d.ts +0 -3
  67. package/dist/types/ui/jira-issues-modal/modal/ModalOld.d.ts +0 -3
  68. package/dist/types-ts4.5/ui/confluence-search-modal/modal/ModalOld.d.ts +0 -3
  69. package/dist/types-ts4.5/ui/jira-issues-modal/modal/ModalOld.d.ts +0 -3
@@ -1,493 +0,0 @@
1
- "use strict";
2
-
3
- var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
- Object.defineProperty(exports, "__esModule", {
5
- value: true
6
- });
7
- exports.PlainJiraIssuesConfigModalOld = void 0;
8
- var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));
9
- var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
10
- var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));
11
- var _react = require("react");
12
- var _react2 = require("@emotion/react");
13
- var _reactIntlNext = require("react-intl-next");
14
- var _standardButton = _interopRequireDefault(require("@atlaskit/button/standard-button"));
15
- var _intlMessagesProvider = require("@atlaskit/intl-messages-provider");
16
- var _modalDialog = require("@atlaskit/modal-dialog");
17
- var _analytics = require("../../../analytics");
18
- var _types = require("../../../analytics/types");
19
- var _ufoExperiences = require("../../../analytics/ufoExperiences");
20
- var _useColumnPickerRenderedFailedUfoExperience = require("../../../analytics/ufoExperiences/hooks/useColumnPickerRenderedFailedUfoExperience");
21
- var _useDataRenderedUfoExperience = require("../../../analytics/ufoExperiences/hooks/useDataRenderedUfoExperience");
22
- var _utils = require("../../../analytics/utils");
23
- var _adf = require("../../../common/utils/adf");
24
- var _fetchMessagesForLocale = require("../../../common/utils/locale/fetch-messages-for-locale");
25
- var _datasourceExperienceId = require("../../../contexts/datasource-experience-id");
26
- var _userInteractions = require("../../../contexts/user-interactions");
27
- var _useDatasourceTableState = require("../../../hooks/useDatasourceTableState");
28
- var _en = _interopRequireDefault(require("../../../i18n/en"));
29
- var _useAvailableSites2 = require("../../../services/useAvailableSites");
30
- var _accessRequired = require("../../common/error-state/access-required");
31
- var _messages = require("../../common/error-state/messages");
32
- var _modalLoadingError = require("../../common/error-state/modal-loading-error");
33
- var _noInstances = require("../../common/error-state/no-instances");
34
- var _noResults = require("../../common/error-state/no-results");
35
- var _initialStateView = require("../../common/initial-state-view");
36
- var _messages2 = require("../../common/initial-state-view/messages");
37
- var _cancelButton = require("../../common/modal/cancel-button");
38
- var _contentContainer = require("../../common/modal/content-container");
39
- var _countViewSmartLink = require("../../common/modal/count-view-smart-link");
40
- var _datasourceModal = require("../../common/modal/datasource-modal");
41
- var _useColumnResize2 = require("../../common/modal/datasources-table-in-modal-preview/use-column-resize");
42
- var _useColumnWrapping2 = require("../../common/modal/datasources-table-in-modal-preview/use-column-wrapping");
43
- var _displayViewDropDown = require("../../common/modal/display-view-dropdown/display-view-drop-down");
44
- var _searchCount = _interopRequireDefault(require("../../common/modal/search-count"));
45
- var _siteSelector = require("../../common/modal/site-selector");
46
- var _issueLikeTable = require("../../issue-like-table");
47
- var _utils2 = require("../../issue-like-table/utils");
48
- var _ui = require("../basic-filters/ui");
49
- var _isQueryTooComplex = require("../basic-filters/utils/isQueryTooComplex");
50
- var _jiraSearchContainer = require("../jira-search-container");
51
- var _jiraIssuesInitialStateSvg = require("./jira-issues-initial-state-svg");
52
- var _messages3 = require("./messages");
53
- 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; }
54
- 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; } /* eslint-disable @atlaskit/platform/no-preconditioning */ /**
55
- * @jsxRuntime classic
56
- * @jsx jsx
57
- */ // eslint-disable-next-line @atlaskit/ui-styling-standard/use-compiled -- Ignored via go/DSP-18766
58
- var getDisplayValue = function getDisplayValue(currentViewMode, itemCount) {
59
- if (currentViewMode === 'table') {
60
- return _types.DatasourceDisplay.DATASOURCE_TABLE;
61
- }
62
- return itemCount === 1 ? _types.DatasourceDisplay.INLINE : _types.DatasourceDisplay.DATASOURCE_INLINE;
63
- };
64
- var jqlSupportDocumentLink = 'https://support.atlassian.com/jira-service-management-cloud/docs/use-advanced-search-with-jira-query-language-jql/';
65
- var PlainJiraIssuesConfigModalOld = exports.PlainJiraIssuesConfigModalOld = function PlainJiraIssuesConfigModalOld(props) {
66
- var datasourceId = props.datasourceId,
67
- initialColumnCustomSizes = props.columnCustomSizes,
68
- initialWrappedColumnKeys = props.wrappedColumnKeys,
69
- onCancel = props.onCancel,
70
- onInsert = props.onInsert,
71
- _props$viewMode = props.viewMode,
72
- viewMode = _props$viewMode === void 0 ? 'table' : _props$viewMode,
73
- initialParameters = props.parameters,
74
- urlBeingEdited = props.url,
75
- initialVisibleColumnKeys = props.visibleColumnKeys,
76
- _props$disableDisplay = props.disableDisplayDropdown,
77
- disableDisplayDropdown = _props$disableDisplay === void 0 ? false : _props$disableDisplay;
78
- var _useState = (0, _react.useState)(viewMode),
79
- _useState2 = (0, _slicedToArray2.default)(_useState, 2),
80
- currentViewMode = _useState2[0],
81
- setCurrentViewMode = _useState2[1];
82
- var _useState3 = (0, _react.useState)(initialParameters === null || initialParameters === void 0 ? void 0 : initialParameters.cloudId),
83
- _useState4 = (0, _slicedToArray2.default)(_useState3, 2),
84
- cloudId = _useState4[0],
85
- setCloudId = _useState4[1];
86
- var _useAvailableSites = (0, _useAvailableSites2.useAvailableSites)('jira', cloudId),
87
- availableSites = _useAvailableSites.availableSites,
88
- selectedJiraSite = _useAvailableSites.selectedSite;
89
- var _useState5 = (0, _react.useState)(initialParameters === null || initialParameters === void 0 ? void 0 : initialParameters.jql),
90
- _useState6 = (0, _slicedToArray2.default)(_useState5, 2),
91
- jql = _useState6[0],
92
- setJql = _useState6[1];
93
- var _useState7 = (0, _react.useState)(initialParameters === null || initialParameters === void 0 ? void 0 : initialParameters.jql),
94
- _useState8 = (0, _slicedToArray2.default)(_useState7, 2),
95
- searchBarJql = _useState8[0],
96
- setSearchBarJql = _useState8[1];
97
- var _useState9 = (0, _react.useState)(initialVisibleColumnKeys),
98
- _useState10 = (0, _slicedToArray2.default)(_useState9, 2),
99
- visibleColumnKeys = _useState10[0],
100
- setVisibleColumnKeys = _useState10[1];
101
-
102
- // analytics related parameters
103
- var searchCount = (0, _react.useRef)(0);
104
- var userInteractions = (0, _userInteractions.useUserInteractions)();
105
- var initialSearchMethod = !(0, _isQueryTooComplex.isQueryTooComplex)((initialParameters === null || initialParameters === void 0 ? void 0 : initialParameters.jql) || '') ? 'basic' : 'jql';
106
- var _useState11 = (0, _react.useState)(initialSearchMethod),
107
- _useState12 = (0, _slicedToArray2.default)(_useState11, 2),
108
- currentSearchMethod = _useState12[0],
109
- setCurrentSearchMethod = _useState12[1];
110
- var searchMethodSearchedWith = (0, _react.useRef)(null);
111
- var visibleColumnCount = (0, _react.useRef)((visibleColumnKeys === null || visibleColumnKeys === void 0 ? void 0 : visibleColumnKeys.length) || 0);
112
- var basicFilterSelectionsSearchedWith = (0, _react.useRef)({});
113
- var isSearchedWithComplexQuery = (0, _react.useRef)(false);
114
- var parameters = (0, _react.useMemo)(function () {
115
- return !!cloudId ? {
116
- cloudId: cloudId,
117
- jql: jql || ''
118
- } : undefined;
119
- }, [cloudId, jql]);
120
- var isParametersSet = !!(jql && cloudId);
121
- var _useColumnResize = (0, _useColumnResize2.useColumnResize)(initialColumnCustomSizes),
122
- columnCustomSizes = _useColumnResize.columnCustomSizes,
123
- onColumnResize = _useColumnResize.onColumnResize;
124
- var _useColumnWrapping = (0, _useColumnWrapping2.useColumnWrapping)(initialWrappedColumnKeys),
125
- wrappedColumnKeys = _useColumnWrapping.wrappedColumnKeys,
126
- onWrappedColumnChange = _useColumnWrapping.onWrappedColumnChange;
127
- var _useDatasourceTableSt = (0, _useDatasourceTableState.useDatasourceTableState)({
128
- datasourceId: datasourceId,
129
- parameters: isParametersSet ? parameters : undefined,
130
- fieldKeys: visibleColumnKeys
131
- }),
132
- reset = _useDatasourceTableSt.reset,
133
- status = _useDatasourceTableSt.status,
134
- onNextPage = _useDatasourceTableSt.onNextPage,
135
- responseItems = _useDatasourceTableSt.responseItems,
136
- responseItemIds = _useDatasourceTableSt.responseItemIds,
137
- hasNextPage = _useDatasourceTableSt.hasNextPage,
138
- columns = _useDatasourceTableSt.columns,
139
- defaultVisibleColumnKeys = _useDatasourceTableSt.defaultVisibleColumnKeys,
140
- loadDatasourceDetails = _useDatasourceTableSt.loadDatasourceDetails,
141
- totalCount = _useDatasourceTableSt.totalCount,
142
- _useDatasourceTableSt2 = _useDatasourceTableSt.extensionKey,
143
- extensionKey = _useDatasourceTableSt2 === void 0 ? null : _useDatasourceTableSt2,
144
- destinationObjectTypes = _useDatasourceTableSt.destinationObjectTypes;
145
- var _useDatasourceAnalyti = (0, _analytics.useDatasourceAnalyticsEvents)(),
146
- fireEvent = _useDatasourceAnalyti.fireEvent;
147
- var experienceId = (0, _datasourceExperienceId.useDatasourceExperienceId)();
148
- var analyticsPayload = (0, _react.useMemo)(function () {
149
- return {
150
- extensionKey: extensionKey,
151
- destinationObjectTypes: destinationObjectTypes
152
- };
153
- }, [destinationObjectTypes, extensionKey]);
154
- var resolvedWithNoResults = status === 'resolved' && !responseItems.length;
155
- var jqlUrl = selectedJiraSite && jql && "".concat(selectedJiraSite.url, "/issues/?jql=").concat(encodeURI(jql));
156
- var isInsertDisabled = !isParametersSet || status === 'rejected' || status === 'unauthorized' || status === 'loading';
157
- var shouldShowIssueCount = !!totalCount && totalCount !== 1 && currentViewMode === 'table';
158
- var isDataReady = (visibleColumnKeys || []).length > 0;
159
- var hasNoJiraSites = availableSites && availableSites.length === 0;
160
- (0, _react.useEffect)(function () {
161
- if (availableSites) {
162
- fireEvent('ui.modal.ready.datasource', {
163
- instancesCount: availableSites.length,
164
- schemasCount: null
165
- });
166
- }
167
- }, [fireEvent, availableSites]);
168
- (0, _react.useEffect)(function () {
169
- var shouldStartUfoExperience = status === 'loading';
170
- if (shouldStartUfoExperience) {
171
- (0, _ufoExperiences.startUfoExperience)({
172
- name: 'datasource-rendered'
173
- }, experienceId);
174
- }
175
- }, [experienceId, status]);
176
- (0, _useDataRenderedUfoExperience.useDataRenderedUfoExperience)({
177
- status: status,
178
- experienceId: experienceId,
179
- itemCount: responseItems.length,
180
- canBeLink: currentViewMode === 'inline',
181
- extensionKey: extensionKey
182
- });
183
- (0, _react.useEffect)(function () {
184
- var newVisibleColumnKeys = !initialVisibleColumnKeys || (initialVisibleColumnKeys || []).length === 0 ? defaultVisibleColumnKeys : initialVisibleColumnKeys;
185
- visibleColumnCount.current = newVisibleColumnKeys.length;
186
- setVisibleColumnKeys(newVisibleColumnKeys);
187
- }, [initialVisibleColumnKeys, defaultVisibleColumnKeys]);
188
- (0, _react.useEffect)(function () {
189
- if (selectedJiraSite && (!cloudId || cloudId !== selectedJiraSite.cloudId)) {
190
- setCloudId(selectedJiraSite.cloudId);
191
- }
192
- }, [cloudId, selectedJiraSite]);
193
- var fireSingleItemViewedEvent = (0, _react.useCallback)(function () {
194
- fireEvent('ui.link.viewed.singleItem', _objectSpread(_objectSpread({}, analyticsPayload), {}, {
195
- searchMethod: (0, _utils.mapSearchMethod)(searchMethodSearchedWith.current)
196
- }));
197
- }, [analyticsPayload, fireEvent]);
198
- var fireCountViewedEvent = (0, _react.useCallback)(function () {
199
- fireEvent('ui.link.viewed.count', _objectSpread(_objectSpread({}, analyticsPayload), {}, {
200
- searchMethod: (0, _utils.mapSearchMethod)(searchMethodSearchedWith.current),
201
- totalItemCount: totalCount || 0
202
- }));
203
- }, [analyticsPayload, fireEvent, totalCount]);
204
- var fireTableViewedEvent = (0, _react.useCallback)(function () {
205
- if (isDataReady) {
206
- fireEvent('ui.table.viewed.datasourceConfigModal', _objectSpread(_objectSpread({}, analyticsPayload), {}, {
207
- totalItemCount: totalCount || 0,
208
- searchMethod: (0, _utils.mapSearchMethod)(searchMethodSearchedWith.current),
209
- displayedColumnCount: visibleColumnCount.current
210
- }));
211
- }
212
- }, [analyticsPayload, fireEvent, totalCount, isDataReady]);
213
- var fireIssueViewAnalytics = (0, _react.useCallback)(function () {
214
- if (!totalCount) {
215
- return;
216
- }
217
- if (totalCount > 1) {
218
- fireTableViewedEvent();
219
- } else if (totalCount === 1) {
220
- fireSingleItemViewedEvent();
221
- }
222
- }, [fireSingleItemViewedEvent, fireTableViewedEvent, totalCount]);
223
- (0, _react.useEffect)(function () {
224
- var isResolved = status === 'resolved';
225
- var isIssueViewMode = currentViewMode === 'table';
226
- var isCountViewMode = currentViewMode === 'inline';
227
- if (!isResolved) {
228
- return;
229
- }
230
- if (isIssueViewMode) {
231
- fireIssueViewAnalytics();
232
- } else if (isCountViewMode) {
233
- fireCountViewedEvent();
234
- }
235
- }, [currentViewMode, status, fireIssueViewAnalytics, fireCountViewedEvent]);
236
- (0, _useColumnPickerRenderedFailedUfoExperience.useColumnPickerRenderedFailedUfoExperience)(status, experienceId);
237
- var onSearch = (0, _react.useCallback)(function (newParameters, _ref) {
238
- var searchMethod = _ref.searchMethod,
239
- basicFilterSelections = _ref.basicFilterSelections,
240
- isQueryComplex = _ref.isQueryComplex;
241
- searchCount.current++;
242
- searchMethodSearchedWith.current = searchMethod;
243
- basicFilterSelectionsSearchedWith.current = basicFilterSelections;
244
- isSearchedWithComplexQuery.current = isQueryComplex;
245
- if (jql !== newParameters.jql) {
246
- userInteractions.add(_types.DatasourceAction.QUERY_UPDATED);
247
- }
248
- setJql(newParameters.jql);
249
- reset({
250
- shouldForceRequest: true
251
- });
252
- }, [jql, reset, userInteractions]);
253
- var onSiteSelection = (0, _react.useCallback)(function (site) {
254
- userInteractions.add(_types.DatasourceAction.INSTANCE_UPDATED);
255
- setJql('');
256
- setCloudId(site.cloudId);
257
- reset({
258
- shouldForceRequest: true
259
- });
260
- }, [reset, userInteractions]);
261
- var retrieveUrlForSmartCardRender = (0, _react.useCallback)(function () {
262
- var _data$key;
263
- var _responseItems = (0, _slicedToArray2.default)(responseItems, 1),
264
- data = _responseItems[0];
265
- // agreement with BE that we will use `key` for rendering smartlink
266
- return data === null || data === void 0 || (_data$key = data.key) === null || _data$key === void 0 || (_data$key = _data$key.data) === null || _data$key === void 0 ? void 0 : _data$key.url;
267
- }, [responseItems]);
268
- var onInsertPressed = (0, _react.useCallback)(function (e, analyticsEvent) {
269
- var _insertButtonClickedE;
270
- if (!isParametersSet || !jql || !selectedJiraSite) {
271
- return;
272
- }
273
- var upToDateJqlUrl = selectedJiraSite && jql && "".concat(selectedJiraSite.url, "/issues/?jql=").concat(encodeURIComponent(jql));
274
- var filterSelectionCount = _ui.availableBasicFilterTypes.reduce(function (current, filter) {
275
- var _basicFilterSelection;
276
- return _objectSpread(_objectSpread({}, current), {}, (0, _defineProperty2.default)({}, "".concat(filter, "BasicFilterSelectionCount"), ((_basicFilterSelection = basicFilterSelectionsSearchedWith.current[filter]) === null || _basicFilterSelection === void 0 ? void 0 : _basicFilterSelection.length) || 0));
277
- }, {});
278
- var insertButtonClickedEvent = analyticsEvent.update({
279
- actionSubjectId: 'insert',
280
- attributes: _objectSpread(_objectSpread({}, analyticsPayload), {}, {
281
- totalItemCount: totalCount || 0,
282
- displayedColumnCount: visibleColumnCount.current,
283
- display: getDisplayValue(currentViewMode, totalCount || 0),
284
- searchCount: searchCount.current,
285
- searchMethod: (0, _utils.mapSearchMethod)(searchMethodSearchedWith.current),
286
- actions: userInteractions.get(),
287
- isQueryComplex: isSearchedWithComplexQuery.current
288
- }, searchMethodSearchedWith.current === 'basic' ? _objectSpread({}, filterSelectionCount) : {}),
289
- eventType: 'ui'
290
- });
291
-
292
- // additional event for tracking in confluence against JIM
293
- var macroInsertedEvent = analyticsEvent.clone();
294
- macroInsertedEvent === null || macroInsertedEvent === void 0 || macroInsertedEvent.update({
295
- eventType: 'track',
296
- action: 'inserted',
297
- actionSubject: 'macro',
298
- actionSubjectId: 'jlol',
299
- attributes: _objectSpread(_objectSpread({}, analyticsPayload), {}, {
300
- totalItemCount: totalCount || 0,
301
- displayedColumnCount: visibleColumnCount.current,
302
- display: getDisplayValue(currentViewMode, totalCount || 0),
303
- searchCount: searchCount.current,
304
- searchMethod: (0, _utils.mapSearchMethod)(searchMethodSearchedWith.current),
305
- actions: userInteractions.get()
306
- })
307
- });
308
- var consumerEvent = (_insertButtonClickedE = insertButtonClickedEvent.clone()) !== null && _insertButtonClickedE !== void 0 ? _insertButtonClickedE : undefined;
309
- insertButtonClickedEvent.fire(_analytics.EVENT_CHANNEL);
310
- var firstIssueUrl = retrieveUrlForSmartCardRender();
311
- if (currentViewMode === 'inline') {
312
- macroInsertedEvent === null || macroInsertedEvent === void 0 || macroInsertedEvent.fire(_analytics.EVENT_CHANNEL);
313
- var url = responseItems.length === 1 ? firstIssueUrl : upToDateJqlUrl;
314
- onInsert({
315
- type: 'inlineCard',
316
- attrs: {
317
- url: url
318
- }
319
- }, consumerEvent);
320
- } else {
321
- onInsert((0, _adf.buildDatasourceAdf)({
322
- id: datasourceId,
323
- parameters: {
324
- cloudId: cloudId,
325
- jql: jql
326
- },
327
- views: [{
328
- type: 'table',
329
- properties: {
330
- columns: (visibleColumnKeys || []).map(function (key) {
331
- var width = columnCustomSizes === null || columnCustomSizes === void 0 ? void 0 : columnCustomSizes[key];
332
- var isWrapped = wrappedColumnKeys === null || wrappedColumnKeys === void 0 ? void 0 : wrappedColumnKeys.includes(key);
333
- return _objectSpread(_objectSpread({
334
- key: key
335
- }, width ? {
336
- width: width
337
- } : {}), isWrapped ? {
338
- isWrapped: isWrapped
339
- } : {});
340
- })
341
- }
342
- }]
343
- }, upToDateJqlUrl), consumerEvent);
344
- }
345
- }, [isParametersSet, jql, selectedJiraSite, analyticsPayload, totalCount, currentViewMode, retrieveUrlForSmartCardRender, responseItems.length, onInsert, datasourceId, cloudId, visibleColumnKeys, columnCustomSizes, wrappedColumnKeys, userInteractions]);
346
- var handleViewModeChange = function handleViewModeChange(selectedMode) {
347
- userInteractions.add(_types.DatasourceAction.DISPLAY_VIEW_CHANGED);
348
- setCurrentViewMode(selectedMode);
349
- };
350
- var handleOnNextPage = (0, _react.useCallback)(function () {
351
- var onNextPageProps = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
352
- userInteractions.add(_types.DatasourceAction.NEXT_PAGE_SCROLLED);
353
- onNextPage(onNextPageProps);
354
- }, [onNextPage, userInteractions]);
355
- var handleVisibleColumnKeysChange = (0, _react.useCallback)(function () {
356
- var newVisibleColumnKeys = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : [];
357
- var columnAction = (0, _utils2.getColumnAction)(visibleColumnKeys || [], newVisibleColumnKeys);
358
- userInteractions.add(columnAction);
359
- visibleColumnCount.current = newVisibleColumnKeys.length;
360
- setVisibleColumnKeys(newVisibleColumnKeys);
361
- }, [visibleColumnKeys, userInteractions]);
362
- var issueLikeDataTableView = (0, _react.useMemo)(function () {
363
- return (0, _react2.jsx)(_contentContainer.ContentContainer, {
364
- withTableBorder: true
365
- }, (0, _react2.jsx)(_issueLikeTable.IssueLikeDataTableView, {
366
- testId: "jira-datasource-table",
367
- status: status,
368
- columns: columns,
369
- items: responseItems,
370
- itemIds: responseItemIds,
371
- hasNextPage: hasNextPage,
372
- visibleColumnKeys: visibleColumnKeys || defaultVisibleColumnKeys,
373
- onNextPage: handleOnNextPage,
374
- onLoadDatasourceDetails: loadDatasourceDetails,
375
- onVisibleColumnKeysChange: handleVisibleColumnKeysChange,
376
- extensionKey: extensionKey,
377
- columnCustomSizes: columnCustomSizes,
378
- onColumnResize: onColumnResize,
379
- wrappedColumnKeys: wrappedColumnKeys,
380
- onWrappedColumnChange: onWrappedColumnChange
381
- }));
382
- }, [status, columns, responseItems, responseItemIds, hasNextPage, visibleColumnKeys, defaultVisibleColumnKeys, handleOnNextPage, loadDatasourceDetails, handleVisibleColumnKeysChange, extensionKey, columnCustomSizes, onColumnResize, wrappedColumnKeys, onWrappedColumnChange]);
383
- var renderCountModeContent = (0, _react.useCallback)(function () {
384
- var selectedJiraSiteUrl = selectedJiraSite === null || selectedJiraSite === void 0 ? void 0 : selectedJiraSite.url;
385
- if (status === 'unauthorized') {
386
- return (0, _react2.jsx)(_accessRequired.AccessRequired, {
387
- url: selectedJiraSiteUrl || urlBeingEdited
388
- });
389
- } else if (status === 'empty' || !jql || !selectedJiraSiteUrl) {
390
- return (0, _react2.jsx)(_countViewSmartLink.SmartCardPlaceholder, {
391
- placeholderText: _messages3.modalMessages.issuesCountSmartCardPlaceholderText
392
- });
393
- } else {
394
- var url;
395
- if (responseItems.length === 1 && retrieveUrlForSmartCardRender()) {
396
- url = retrieveUrlForSmartCardRender();
397
- } else {
398
- url = "".concat(selectedJiraSiteUrl, "/issues/?jql=").concat(encodeURIComponent(jql));
399
- }
400
- return (0, _react2.jsx)(_countViewSmartLink.SmartLink, {
401
- url: url
402
- });
403
- }
404
- }, [jql, selectedJiraSite === null || selectedJiraSite === void 0 ? void 0 : selectedJiraSite.url, status, urlBeingEdited, responseItems, retrieveUrlForSmartCardRender]);
405
- var renderIssuesModeContent = (0, _react.useCallback)(function () {
406
- var selectedJiraSiteUrl = selectedJiraSite === null || selectedJiraSite === void 0 ? void 0 : selectedJiraSite.url;
407
- if (status === 'rejected' && jqlUrl) {
408
- return (0, _react2.jsx)(_modalLoadingError.ModalLoadingError, {
409
- errorMessage: jqlUrl ? (0, _react2.jsx)(_reactIntlNext.FormattedMessage, (0, _extends2.default)({}, _messages3.modalMessages.checkConnectionWithSource, {
410
- values: {
411
- a: function a(urlText) {
412
- return (0, _react2.jsx)("a", {
413
- href: jqlUrl
414
- }, urlText);
415
- }
416
- }
417
- })) : undefined
418
- });
419
- } else if (status === 'unauthorized') {
420
- return (0, _react2.jsx)(_accessRequired.AccessRequired, {
421
- url: selectedJiraSiteUrl || urlBeingEdited
422
- });
423
- } else if (resolvedWithNoResults || status === 'forbidden') {
424
- return (0, _react2.jsx)(_noResults.NoResults, null);
425
- } else if (status === 'empty' || !columns.length) {
426
- // persist the empty state when making the initial /data request which contains the columns
427
- return (0, _react2.jsx)(_contentContainer.ContentContainer, {
428
- withTableBorder: !!jql
429
- }, !!jql ? (0, _react2.jsx)(_issueLikeTable.EmptyState, {
430
- testId: "jira-datasource-modal--empty-state"
431
- }) : (0, _react2.jsx)(_initialStateView.InitialStateView, {
432
- icon: (0, _react2.jsx)(_jiraIssuesInitialStateSvg.JiraInitialStateSVG, null),
433
- title: _messages3.modalMessages.searchJiraTitle,
434
- description: currentSearchMethod === 'jql' ? _messages2.initialStateViewMessages.searchDescriptionForJQLSearch : _messages2.initialStateViewMessages.searchDescriptionForBasicSearch,
435
- learnMoreLink: currentSearchMethod === 'jql' ? {
436
- href: jqlSupportDocumentLink,
437
- text: _messages2.initialStateViewMessages.learnMoreLink
438
- } : undefined
439
- }));
440
- }
441
- return issueLikeDataTableView;
442
- }, [columns.length, currentSearchMethod, issueLikeDataTableView, jql, jqlUrl, resolvedWithNoResults, selectedJiraSite === null || selectedJiraSite === void 0 ? void 0 : selectedJiraSite.url, status, urlBeingEdited]);
443
- var siteSelectorLabel = availableSites && availableSites.length > 1 ? _messages3.modalMessages.insertIssuesTitleManySites : _messages3.modalMessages.insertIssuesTitle;
444
- var getCancelButtonAnalyticsPayload = (0, _react.useCallback)(function () {
445
- return _objectSpread(_objectSpread({}, analyticsPayload), {}, {
446
- searchCount: searchCount.current,
447
- actions: userInteractions.get()
448
- });
449
- }, [analyticsPayload, userInteractions]);
450
- return (0, _react2.jsx)(_intlMessagesProvider.IntlMessagesProvider, {
451
- defaultMessages: _en.default,
452
- loaderFn: _fetchMessagesForLocale.fetchMessagesForLocale
453
- }, (0, _react2.jsx)(_modalDialog.ModalTransition, null, (0, _react2.jsx)(_datasourceModal.DatasourceModal, {
454
- testId: "jira-datasource-modal",
455
- onClose: onCancel
456
- }, (0, _react2.jsx)(_modalDialog.ModalHeader, null, (0, _react2.jsx)(_modalDialog.ModalTitle, null, (0, _react2.jsx)(_siteSelector.SiteSelector, {
457
- availableSites: availableSites,
458
- onSiteSelection: onSiteSelection,
459
- selectedSite: selectedJiraSite,
460
- testId: "jira-datasource-modal--site-selector",
461
- label: siteSelectorLabel
462
- })), !hasNoJiraSites && !disableDisplayDropdown && (0, _react2.jsx)(_displayViewDropDown.DisplayViewDropDown, {
463
- onViewModeChange: handleViewModeChange,
464
- viewMode: currentViewMode
465
- })), (0, _react2.jsx)(_modalDialog.ModalBody, null, !hasNoJiraSites ? (0, _react2.jsx)(_react.Fragment, null, (0, _react2.jsx)(_jiraSearchContainer.JiraSearchContainer, {
466
- setSearchBarJql: setSearchBarJql,
467
- searchBarJql: searchBarJql,
468
- isSearching: status === 'loading',
469
- parameters: parameters,
470
- onSearch: onSearch,
471
- initialSearchMethod: initialSearchMethod,
472
- onSearchMethodChange: setCurrentSearchMethod,
473
- site: selectedJiraSite
474
- }), currentViewMode === 'inline' ? renderCountModeContent() : renderIssuesModeContent()) : (0, _react2.jsx)(_noInstances.NoInstancesView, {
475
- title: _messages.loadingErrorMessages.noAccessToJiraSitesTitle,
476
- description: _messages.loadingErrorMessages.noAccessToJiraSitesDescription,
477
- testId: "no-jira-instances-content"
478
- })), (0, _react2.jsx)(_modalDialog.ModalFooter, null, shouldShowIssueCount && (0, _react2.jsx)(_searchCount.default, {
479
- searchCount: totalCount,
480
- url: jqlUrl,
481
- prefixTextType: "issue",
482
- testId: "jira-datasource-modal-total-issues-count"
483
- }), (0, _react2.jsx)(_cancelButton.CancelButton, {
484
- onCancel: onCancel,
485
- getAnalyticsPayload: getCancelButtonAnalyticsPayload,
486
- testId: "jira-datasource-modal--cancel-button"
487
- }), !hasNoJiraSites && (0, _react2.jsx)(_standardButton.default, {
488
- appearance: "primary",
489
- onClick: onInsertPressed,
490
- isDisabled: isInsertDisabled,
491
- testId: "jira-datasource-modal--insert-button"
492
- }, (0, _react2.jsx)(_reactIntlNext.FormattedMessage, _messages3.modalMessages.insertIssuesButtonText))))));
493
- };